@acorex/components 22.0.1 → 22.0.3

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.
@@ -4,7 +4,7 @@ import * as i2 from '@acorex/core/format';
4
4
  import { AXFormatService, AXFormatModule } from '@acorex/core/format';
5
5
  import { AXUnsubscriber } from '@acorex/core/utils';
6
6
  import * as i0 from '@angular/core';
7
- import { inject, EventEmitter, Input, Output, Injectable, input, linkedSignal, computed, signal, effect, forwardRef, HostListener, HostBinding, ViewEncapsulation, Component, ViewChild, NgModule } from '@angular/core';
7
+ import { inject, EventEmitter, Input, Output, Injectable, input, linkedSignal, computed, signal, effect, forwardRef, HostListener, HostBinding, ChangeDetectionStrategy, ViewEncapsulation, Component, ViewChild, NgModule } from '@angular/core';
8
8
  import * as i1 from '@angular/forms';
9
9
  import { FormsModule, NG_VALUE_ACCESSOR } from '@angular/forms';
10
10
  import { classes } from 'polytype';
@@ -238,7 +238,7 @@ class AXCalendarComponent extends classes((MXValueComponent), MXInteractiveCompo
238
238
  * @ignore
239
239
  */
240
240
  _initValues() {
241
- this._today = this.calendarService.create(new Date(), this.calendar());
241
+ this._today = this.calendarService.create(new Date(), this.calendarSystem());
242
242
  }
243
243
  /**
244
244
  * Maps a date to a 1-based grid column using the active week layout.
@@ -294,6 +294,9 @@ class AXCalendarComponent extends classes((MXValueComponent), MXInteractiveCompo
294
294
  this.isRtl = this.localeService.isRtl;
295
295
  this.calendar = linkedSignal(() => this.localeService.activeProfile().calendar.system, /* @ts-ignore */
296
296
  ...(ngDevMode ? [{ debugName: "calendar" }] : /* istanbul ignore next */ []));
297
+ /** Explicit `type` input wins over the locale profile calendar. */
298
+ this.calendarSystem = computed(() => this.type || this.calendar(), /* @ts-ignore */
299
+ ...(ngDevMode ? [{ debugName: "calendarSystem" }] : /* istanbul ignore next */ []));
297
300
  /** Week column order from the active locale profile (0 = Sun … 6 = Sat). */
298
301
  this.weekLayout = computed(() => {
299
302
  const custom = this.weekdays();
@@ -307,7 +310,7 @@ class AXCalendarComponent extends classes((MXValueComponent), MXInteractiveCompo
307
310
  /**
308
311
  * @ignore
309
312
  */
310
- this._today = this.calendarService.create(new Date(), this.calendar());
313
+ this._today = this.calendarService.create(new Date(), this.calendarSystem());
311
314
  /**
312
315
  * @ignore
313
316
  */
@@ -388,7 +391,7 @@ class AXCalendarComponent extends classes((MXValueComponent), MXInteractiveCompo
388
391
  });
389
392
  this.minValueChange.subscribe((e) => {
390
393
  if (this._viewStartDate.isBefore(e)) {
391
- this._viewStartDate = this.calendarService.create(e, this.calendar());
394
+ this._viewStartDate = this.calendarService.create(e, this.calendarSystem());
392
395
  this.render();
393
396
  }
394
397
  });
@@ -407,7 +410,7 @@ class AXCalendarComponent extends classes((MXValueComponent), MXInteractiveCompo
407
410
  this.navTo(this.value);
408
411
  }
409
412
  else if (this.minValue) {
410
- const min = this.calendarService.create(this.minValue, this.calendar());
413
+ const min = this.calendarService.create(this.minValue, this.calendarSystem());
411
414
  this.navTo(this._today.isBefore(min) ? this.minValue : this._today);
412
415
  }
413
416
  else {
@@ -458,20 +461,18 @@ class AXCalendarComponent extends classes((MXValueComponent), MXInteractiveCompo
458
461
  _updateSelectOptions() {
459
462
  if (!this._viewStartDate)
460
463
  return;
461
- this._monthOptions = Array.from({ length: 12 }, (_, i) => {
462
- const date = this._viewStartDate.set('month', i + 1);
463
- return {
464
- id: i + 1,
465
- text: `@acorex:${this.getMonthName(date, 'short')}`,
466
- };
467
- });
464
+ const calendarName = this.calendarSystem();
465
+ this._monthOptions = Array.from({ length: 12 }, (_, i) => ({
466
+ id: i + 1,
467
+ text: this.monthLabel(calendarName, i),
468
+ }));
468
469
  const referenceYear = this._today.year;
469
470
  const { minYear, maxYear } = getCalendarYearBounds({
470
471
  referenceYear,
471
472
  yearRange: this.yearRange(),
472
473
  minValue: this.minValue,
473
474
  maxValue: this.maxValue,
474
- getYear: (date) => this.calendarService.create(date, this.calendar()).year,
475
+ getYear: (date) => this.calendarService.create(date, this.calendarSystem()).year,
475
476
  });
476
477
  this._yearOptions = [];
477
478
  for (let year = minYear; year <= maxYear; year++) {
@@ -481,7 +482,7 @@ class AXCalendarComponent extends classes((MXValueComponent), MXInteractiveCompo
481
482
  const yearId = this._viewStartDate.year;
482
483
  this._selectedMonthOption = this._monthOptions.find((month) => month.id === monthId) ?? {
483
484
  id: monthId,
484
- text: `@acorex:${this.getMonthName(this._viewStartDate, 'short')}`,
485
+ text: this.monthLabel(this.calendarSystem(), monthId - 1),
485
486
  };
486
487
  this._selectedYearOption = this._yearOptions.find((year) => year.id === yearId) ?? {
487
488
  id: yearId,
@@ -538,11 +539,11 @@ class AXCalendarComponent extends classes((MXValueComponent), MXInteractiveCompo
538
539
  year: min,
539
540
  month: 1,
540
541
  day: 1,
541
- }, this.calendar()), this.calendarService.create({
542
+ }, this.calendarSystem()), this.calendarService.create({
542
543
  year: max,
543
544
  month: 12,
544
545
  day: 28,
545
- }, this.calendar()));
546
+ }, this.calendarSystem()));
546
547
  }
547
548
  case 'month':
548
549
  return new AXDateTimeRange(current.startOf('year'), current.endOf('year').add('day', -1));
@@ -610,7 +611,7 @@ class AXCalendarComponent extends classes((MXValueComponent), MXInteractiveCompo
610
611
  });
611
612
  }
612
613
  }
613
- // ax-column-start-1 … ax-column-start-7 (first day of month grid offset)
614
+ // ax-col-start-1 ax-col-start-2 ax-col-start-3 ax-col-start-4 ax-col-start-5 ax-col-start-6 ax-col-start-7
614
615
  r.cssClass[`ax-column-start-${this._getWeekColumn(view.range.startTime)}`] = i == 0;
615
616
  if (this.cellClass)
616
617
  applyCellClass(r);
@@ -733,7 +734,7 @@ class AXCalendarComponent extends classes((MXValueComponent), MXInteractiveCompo
733
734
  }
734
735
  else if (this.activeView == 'month' && this.depth == 'day') {
735
736
  this.activeView = 'day';
736
- this._footPrint.month = this.calendarService.create(slot.date.date, this.calendar()).monthOfYear;
737
+ this._footPrint.month = this.calendarService.create(slot.date.date, this.calendarSystem()).monthOfYear;
737
738
  this.navTo(slot.date);
738
739
  }
739
740
  else if (this.activeView == 'month' && this.depth == 'month') {
@@ -741,7 +742,7 @@ class AXCalendarComponent extends classes((MXValueComponent), MXInteractiveCompo
741
742
  }
742
743
  else if (this.activeView == 'year' && (this.depth == 'day' || this.depth == 'month')) {
743
744
  this.activeView = 'month';
744
- this._footPrint.year = this.calendarService.create(slot.date.date, this.calendar()).year;
745
+ this._footPrint.year = this.calendarService.create(slot.date.date, this.calendarSystem()).year;
745
746
  this.navTo(slot.date);
746
747
  }
747
748
  else if (this.activeView == 'year' && this.depth == 'year') {
@@ -786,7 +787,7 @@ class AXCalendarComponent extends classes((MXValueComponent), MXInteractiveCompo
786
787
  if (!value || !this.calendarService.isValidDate(value)) {
787
788
  return null;
788
789
  }
789
- const v = this.calendarService.convert(value, this.calendar());
790
+ const v = this.calendarService.convert(value, this.calendarSystem());
790
791
  if (this.isDisabled(v)) {
791
792
  return null;
792
793
  }
@@ -802,13 +803,13 @@ class AXCalendarComponent extends classes((MXValueComponent), MXInteractiveCompo
802
803
  * @ignore
803
804
  */
804
805
  internalValueChanged(value) {
805
- const val = this.calendarService.create(value, this.calendar());
806
+ const val = this.calendarService.create(value, this.calendarSystem());
806
807
  if (!this._viewStartDate ||
807
808
  val.compare(this.displayRange?.startTime, this.activeView) == -1 ||
808
809
  val.compare(this.displayRange?.endTime, this.activeView) == 1) {
809
- this._viewStartDate = this.calendarService.create(value, this.calendar());
810
+ this._viewStartDate = this.calendarService.create(value, this.calendarSystem());
810
811
  if (this.minValue && this._viewStartDate.isBefore(this.minValue)) {
811
- this._viewStartDate = this.calendarService.create(this.minValue, this.calendar());
812
+ this._viewStartDate = this.calendarService.create(this.minValue, this.calendarSystem());
812
813
  }
813
814
  }
814
815
  this._footPrint.year = val.year;
@@ -830,7 +831,7 @@ class AXCalendarComponent extends classes((MXValueComponent), MXInteractiveCompo
830
831
  }
831
832
  });
832
833
  }
833
- const oldVal = this.oldValue() ? this.calendarService.create(this.oldValue(), this.calendar()) : null;
834
+ const oldVal = this.oldValue() ? this.calendarService.create(this.oldValue(), this.calendarSystem()) : null;
834
835
  if (!oldVal || oldVal.monthOfYear !== val.monthOfYear || oldVal.year !== val.year) {
835
836
  this.render();
836
837
  }
@@ -908,7 +909,7 @@ class AXCalendarComponent extends classes((MXValueComponent), MXInteractiveCompo
908
909
  * @returns void
909
910
  */
910
911
  navTo(date) {
911
- const val = this.calendarService.convert(date, this.calendar());
912
+ const val = this.calendarService.convert(date, this.calendarSystem());
912
913
  this._viewStartDate = val.startOf();
913
914
  this.render();
914
915
  //to make sure its rendred and displayRange is not null
@@ -943,7 +944,7 @@ class AXCalendarComponent extends classes((MXValueComponent), MXInteractiveCompo
943
944
  _setDate(value) {
944
945
  if (this.readonly || this.disabled)
945
946
  return;
946
- this.commitValue(this.calendarService.convert(value, this.calendar()).startOf().date, true);
947
+ this.commitValue(this.calendarService.convert(value, this.calendarSystem()).startOf().date, true);
947
948
  }
948
949
  /**
949
950
  * @ignore
@@ -987,7 +988,7 @@ class AXCalendarComponent extends classes((MXValueComponent), MXInteractiveCompo
987
988
  if (this.weekend().length) {
988
989
  return this.weekend().includes(date.weekdayIndex);
989
990
  }
990
- const weekend = this.calendarService.resolveCalendar(this.calendar()).weekend;
991
+ const weekend = this.calendarService.resolveCalendar(this.calendarSystem()).weekend;
991
992
  return weekend.includes(date.weekdayIndex);
992
993
  }
993
994
  /**
@@ -1022,7 +1023,33 @@ class AXCalendarComponent extends classes((MXValueComponent), MXInteractiveCompo
1022
1023
  * @ignore
1023
1024
  */
1024
1025
  getMonthName(date, style) {
1025
- return `dateTime.months.${date.calendar.name()}.${style}.${date.monthOfYear - 1}`;
1026
+ const system = this.calendarSystem();
1027
+ const monthIndex = this.calendarService.create(date.date, system).monthOfYear - 1;
1028
+ return this.monthLabel(system, monthIndex, style);
1029
+ }
1030
+ monthLabel(system, monthIndex0, style = 'short') {
1031
+ const key = `dateTime.months.${system}.${style}.${monthIndex0}`;
1032
+ const translated = this.translateService.translateSync(key);
1033
+ if (translated && translated !== key && !translated.startsWith('dateTime.months.')) {
1034
+ return translated;
1035
+ }
1036
+ return this.fallbackMonthName(system, monthIndex0, style);
1037
+ }
1038
+ fallbackMonthName(system, monthIndex0, style) {
1039
+ try {
1040
+ const locale = this.localeService.activeProfile().localeInfo.code;
1041
+ const intlCalendar = system === 'solar-hijri' ? 'persian' : 'gregory';
1042
+ const date = system === 'solar-hijri'
1043
+ ? this.calendarService.create({ year: 1400, month: monthIndex0 + 1, day: 15 }, system).date
1044
+ : new Date(2000, monthIndex0, 15);
1045
+ return new Intl.DateTimeFormat(locale, {
1046
+ month: style,
1047
+ calendar: intlCalendar,
1048
+ }).format(date);
1049
+ }
1050
+ catch {
1051
+ return String(monthIndex0 + 1);
1052
+ }
1026
1053
  }
1027
1054
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.0.8", ngImport: i0, type: AXCalendarComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
1028
1055
  static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "22.0.8", type: AXCalendarComponent, isStandalone: true, selector: "ax-calendar", inputs: { rtl: { classPropertyName: "rtl", publicName: "rtl", isSignal: false, isRequired: false, transformFunction: null }, readonly: { classPropertyName: "readonly", publicName: "readonly", isSignal: false, isRequired: false, transformFunction: null }, value: { classPropertyName: "value", publicName: "value", isSignal: false, isRequired: false, transformFunction: null }, name: { classPropertyName: "name", publicName: "name", isSignal: false, isRequired: false, transformFunction: null }, disabled: { classPropertyName: "disabled", publicName: "disabled", isSignal: false, isRequired: false, transformFunction: null }, depth: { classPropertyName: "depth", publicName: "depth", isSignal: false, isRequired: false, transformFunction: null }, activeView: { classPropertyName: "activeView", publicName: "activeView", isSignal: false, isRequired: false, transformFunction: null }, minValue: { classPropertyName: "minValue", publicName: "minValue", isSignal: false, isRequired: false, transformFunction: null }, maxValue: { classPropertyName: "maxValue", publicName: "maxValue", isSignal: false, isRequired: false, transformFunction: null }, disabledDates: { classPropertyName: "disabledDates", publicName: "disabledDates", isSignal: false, isRequired: false, transformFunction: null }, holidayDates: { classPropertyName: "holidayDates", publicName: "holidayDates", isSignal: false, isRequired: false, transformFunction: null }, type: { classPropertyName: "type", publicName: "type", isSignal: false, isRequired: false, transformFunction: null }, dayCellTemplate: { classPropertyName: "dayCellTemplate", publicName: "dayCellTemplate", isSignal: false, isRequired: false, transformFunction: null }, monthCellTemplate: { classPropertyName: "monthCellTemplate", publicName: "monthCellTemplate", isSignal: false, isRequired: false, transformFunction: null }, yearCellTemplate: { classPropertyName: "yearCellTemplate", publicName: "yearCellTemplate", isSignal: false, isRequired: false, transformFunction: null }, cellClass: { classPropertyName: "cellClass", publicName: "cellClass", isSignal: false, isRequired: false, transformFunction: null }, showNavigation: { classPropertyName: "showNavigation", publicName: "showNavigation", isSignal: false, isRequired: false, transformFunction: null }, count: { classPropertyName: "count", publicName: "count", isSignal: false, isRequired: false, transformFunction: null }, id: { classPropertyName: "id", publicName: "id", isSignal: false, isRequired: false, transformFunction: null }, weekend: { classPropertyName: "weekend", publicName: "weekend", isSignal: true, isRequired: false, transformFunction: null }, weekdays: { classPropertyName: "weekdays", publicName: "weekdays", isSignal: true, isRequired: false, transformFunction: null }, look: { classPropertyName: "look", publicName: "look", isSignal: true, isRequired: false, transformFunction: null }, yearRange: { classPropertyName: "yearRange", publicName: "yearRange", isSignal: true, isRequired: false, transformFunction: null }, holidays: { classPropertyName: "holidays", publicName: "holidays", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { onOptionChanged: "onOptionChanged", valueChange: "valueChange", onValueChanged: "onValueChanged", minValueChange: "minValueChange", maxValueChange: "maxValueChange", onBlur: "onBlur", onFocus: "onFocus", depthChange: "depthChange", typeChange: "typeChange", activeViewChange: "activeViewChange", disabledDatesChange: "disabledDatesChange", holidayDatesChange: "holidayDatesChange", onNavigate: "onNavigate", onSlotClick: "onSlotClick", countChange: "countChange" }, host: { listeners: { "keydown": "_handleOnKeydownEvent($event)" }, properties: { "class": "this.__hostClass" } }, providers: [
@@ -1037,11 +1064,11 @@ class AXCalendarComponent extends classes((MXValueComponent), MXInteractiveCompo
1037
1064
  },
1038
1065
  AXUnsubscriber,
1039
1066
  { provide: AXComponent, useExisting: AXCalendarComponent },
1040
- ], usesInheritance: true, ngImport: i0, template: "<ng-content select=\"ax-header\"></ng-content>\n<div class=\"ax-calendar-body\">\n @for (v of views; let i = $index, first = $first, last = $last; track i) {\n @switch (activeView) {\n @case ('year') {\n @if (showNavigation) {\n <div class=\"ax-calendar-view-header\">\n <div class=\"ax-calendar-header-info\">\n <button\n type=\"button\"\n [attr.disabled]=\"disabled ? '' : null\"\n [attr.readonly]=\"readonly ? '' : null\"\n class=\"ax-general-button ax-button-rounded ax-state-disabled\"\n (click)=\"_handleNavClick($event, 'year')\"\n >\n {{ v.range.startTime | format: 'date' : { calendar: calendar(), format: 'YYYY' } | async }} -\n {{ v.range.endTime | format: 'date' : { calendar: calendar(), format: 'YYYY' } | async }}\n </button>\n </div>\n @if (last) {\n <div class=\"ax-calendar-header-buttons\">\n <button\n type=\"button\"\n [attr.disabled]=\"disabled ? '' : null\"\n [attr.readonly]=\"readonly ? '' : null\"\n class=\"ax-general-button-icon ax-button-rounded ax-button-icon ax-next\"\n (click)=\"_handlePrevClick()\"\n [title]=\"'@acorex:common.actions.prev' | translate | async\"\n >\n <i class=\"ax-icon ax-icon-chevron-left\"></i>\n </button>\n <button\n type=\"button\"\n [attr.disabled]=\"disabled ? '' : null\"\n [attr.readonly]=\"readonly ? '' : null\"\n class=\"ax-general-button-icon ax-button-rounded ax-button-icon\"\n (click)=\"_handleNextClick()\"\n [title]=\"'@acorex:common.actions.next' | translate | async\"\n >\n <i class=\"ax-icon ax-icon-chevron-right\"></i>\n </button>\n </div>\n }\n </div>\n }\n <div class=\"ax-calendar-slots ax-calendar-slots-year\" [ngClass]=\"{ 'ax-default': !yearCellTemplate }\">\n @for (slot of v.slots; track slot.date.date.getTime()) {\n <button\n tabindex=\"0\"\n class=\"ax-calendar-slot\"\n [class.ax-state-disabled]=\"disabled\"\n [ngClass]=\"slot.cssClass\"\n (click)=\"_handleSlotClick($event, slot)\"\n >\n @if (yearCellTemplate) {\n <div>\n <ng-container\n [ngTemplateOutlet]=\"yearCellTemplate\"\n [ngTemplateOutletContext]=\"{ $implicit: { slot: slot } }\"\n >\n </ng-container>\n </div>\n } @else {\n <div>\n {{ slot.text }}\n </div>\n }\n </button>\n }\n </div>\n }\n @case ('month') {\n @if (showNavigation) {\n <div class=\"ax-calendar-view-header\">\n <div class=\"ax-calendar-header-info\">\n <button\n type=\"button\"\n [attr.disabled]=\"disabled ? '' : null\"\n [attr.readonly]=\"readonly ? '' : null\"\n class=\"ax-general-button ax-button-rounded\"\n (click)=\"_handleNavClick($event, 'year')\"\n >\n {{ v.range.startTime | format: 'date' : { calendar: calendar(), format: 'YYYY' } | async }}\n </button>\n </div>\n @if (last) {\n <div class=\"ax-calendar-header-buttons\">\n <button\n type=\"button\"\n [attr.disabled]=\"disabled ? '' : null\"\n [attr.readonly]=\"readonly ? '' : null\"\n class=\"ax-general-button-icon ax-button-rounded ax-button-icon\"\n (click)=\"_handlePrevClick()\"\n [title]=\"'@acorex:common.actions.prev' | translate | async\"\n >\n <i class=\"ax-icon ax-icon-chevron-left\"></i>\n </button>\n <button\n type=\"button\"\n [attr.disabled]=\"disabled ? '' : null\"\n [attr.readonly]=\"readonly ? '' : null\"\n class=\"ax-general-button-icon ax-button-rounded ax-button-icon\"\n (click)=\"_handleNextClick()\"\n [title]=\"'@acorex:common.actions.next' | translate | async\"\n >\n <i class=\"ax-icon ax-icon-chevron-right\"></i>\n </button>\n </div>\n }\n </div>\n }\n\n <div class=\"ax-calendar-slots ax-calendar-slots-month\" [ngClass]=\"{ 'ax-default': !monthCellTemplate }\">\n @for (slot of v.slots; track slot.date.date.getTime()) {\n <button\n tabindex=\"0\"\n class=\"ax-calendar-slot\"\n [class.ax-state-disabled]=\"disabled\"\n [ngClass]=\"slot.cssClass\"\n (click)=\"_handleSlotClick($event, slot)\"\n >\n @if (monthCellTemplate) {\n <div>\n <ng-container\n [ngTemplateOutlet]=\"monthCellTemplate\"\n [ngTemplateOutletContext]=\"{ $implicit: { slot: slot } }\"\n >\n </ng-container>\n </div>\n } @else {\n <div [title]=\"slot.date | format: 'date' : { calendar: calendar(), format: 'MMMM YYYY' } | async\">\n {{ `@acorex:${getMonthName(slot.date, 'short')}` | translate | async }}\n </div>\n }\n </button>\n }\n </div>\n }\n @default {\n @if (showNavigation && look() === 'select' && last) {\n <div class=\"ax-calendar-view-header ax-calendar-day-nav\">\n <button\n type=\"button\"\n [attr.disabled]=\"disabled ? '' : null\"\n [attr.readonly]=\"readonly ? '' : null\"\n class=\"ax-general-button ax-button-rounded ax-button-icon ax-calendar-day-nav-prev\"\n (click)=\"_handlePrevClick()\"\n [title]=\"'@acorex:common.actions.prev' | translate | async\"\n >\n <i\n class=\"ax-icon\"\n [ngClass]=\"{\n 'ax-icon-chevron-left': !isRtl(),\n 'ax-icon-chevron-right': isRtl(),\n }\"\n ></i>\n </button>\n <div class=\"ax-calendar-day-nav-center\">\n <ax-select-box\n class=\"ax-calendar-month-select ax-sm\"\n look=\"none\"\n [disabled]=\"disabled\"\n [readonly]=\"readonly\"\n [dataSource]=\"_monthOptions\"\n textField=\"text\"\n valueField=\"id\"\n [ngModel]=\"_selectedMonthOption\"\n [isItemTruncated]=\"false\"\n dropdownWidth=\"110\"\n [maxVisibleItems]=\"12\"\n [itemHeight]=\"32\"\n (onValueChanged)=\"_handleMonthSelectChanged($event)\"\n (click)=\"$event.stopPropagation()\"\n ></ax-select-box>\n <ax-select-box\n class=\"ax-calendar-year-select ax-sm\"\n look=\"none\"\n [disabled]=\"disabled\"\n [readonly]=\"readonly\"\n [dataSource]=\"_yearOptions\"\n textField=\"text\"\n valueField=\"id\"\n [ngModel]=\"_selectedYearOption\"\n [isItemTruncated]=\"false\"\n dropdownWidth=\"72\"\n [maxVisibleItems]=\"10\"\n [itemHeight]=\"32\"\n (onValueChanged)=\"_handleYearSelectChanged($event)\"\n (click)=\"$event.stopPropagation()\"\n ></ax-select-box>\n </div>\n <button\n type=\"button\"\n [attr.disabled]=\"disabled ? '' : null\"\n [attr.readonly]=\"readonly ? '' : null\"\n class=\"ax-general-button ax-button-rounded ax-button-icon ax-calendar-day-nav-next\"\n (click)=\"_handleNextClick()\"\n [title]=\"'@acorex:common.actions.next' | translate | async\"\n >\n <i\n class=\"ax-icon\"\n [ngClass]=\"{\n 'ax-icon-chevron-right': !isRtl(),\n 'ax-icon-chevron-left': isRtl(),\n }\"\n ></i>\n </button>\n </div>\n }\n @if (showNavigation && look() === 'classic') {\n <div class=\"ax-calendar-view-header\">\n <div class=\"ax-calendar-header-info\">\n <button\n type=\"button\"\n [attr.disabled]=\"disabled ? '' : null\"\n [attr.readonly]=\"readonly ? '' : null\"\n class=\"ax-general-button ax-button-rounded\"\n (click)=\"_handleNavClick($event, 'year')\"\n >\n {{ v.range.startTime | format: 'date' : { calendar: calendar(), format: 'YYYY' } | async }}\n </button>\n <button\n type=\"button\"\n [attr.disabled]=\"disabled ? '' : null\"\n [attr.readonly]=\"readonly ? '' : null\"\n class=\"ax-general-button ax-button-rounded\"\n (click)=\"_handleNavClick($event, 'month')\"\n >\n {{ v.range.startTime | format: 'date' : { calendar: calendar(), format: 'MMMM' } | async }}\n </button>\n </div>\n @if (last) {\n <div class=\"ax-calendar-header-buttons\">\n <button\n type=\"button\"\n [attr.disabled]=\"disabled ? '' : null\"\n [attr.readonly]=\"readonly ? '' : null\"\n class=\"ax-general-button-icon ax-button-rounded ax-button-icon\"\n (click)=\"_handlePrevClick()\"\n [title]=\"'@acorex:common.actions.prev' | translate | async\"\n >\n <i class=\"ax-icon ax-icon-chevron-left\"></i>\n </button>\n <button\n type=\"button\"\n [attr.disabled]=\"disabled ? '' : null\"\n [attr.readonly]=\"readonly ? '' : null\"\n class=\"ax-general-button-icon ax-button-rounded ax-button-icon\"\n (click)=\"_handleNextClick()\"\n [title]=\"'@acorex:common.actions.next' | translate | async\"\n >\n <i class=\"ax-icon ax-icon-chevron-right\"></i>\n </button>\n </div>\n }\n </div>\n }\n <div class=\"ax-calendar-week\">\n @for (d of weekLayout(); track d) {\n <div>{{ '@acorex:dateTime.weekdays.short.' + d | translate | async }}</div>\n }\n </div>\n\n <div class=\"ax-calendar-slots ax-calendar-slots-day\" [ngClass]=\"{ 'ax-default': !dayCellTemplate }\">\n @for (slot of v.slots; track slot.date.date.getTime()) {\n <button\n tabindex=\"0\"\n class=\"ax-calendar-slot\"\n [ngClass]=\"slot.cssClass\"\n [class.ax-state-disabled]=\"disabled\"\n [class.ax-has-holiday-color]=\"!!slot.holidayColor\"\n [style.--ax-calendar-holiday-color]=\"slot.holidayColor ?? null\"\n (click)=\"_handleSlotClick($event, slot)\"\n [disabled]=\"disabled\"\n [axRipple]\n [axTooltip]=\"slot.tooltip ?? ''\"\n [axTooltipDisabled]=\"!slot.tooltip\"\n [title]=\"\n !slot.tooltip ? (slot.date | format: 'date' : { calendar: calendar(), format: 'long' } | async) : ''\n \"\n >\n @if (dayCellTemplate) {\n <div>\n <ng-container\n [ngTemplateOutlet]=\"dayCellTemplate\"\n [ngTemplateOutletContext]=\"{ $implicit: { slot: slot } }\"\n >\n </ng-container>\n </div>\n } @else {\n <div class=\"ax-calendar-day-slot-content\">\n {{ slot.text }}\n </div>\n }\n </button>\n }\n </div>\n }\n }\n }\n</div>\n<ng-content select=\"ax-footer\"></ng-content>\n", styles: ["@layer properties;html[dir=rtl] ax-calendar .ax-calendar-header-buttons .ax-icon{-moz-transform:scale(-1,1);-o-transform:scale(-1,1);-webkit-transform:scale(-1,1);transform:scaleX(-1)}@layer components{ax-calendar{display:block;width:100%;background-color:var(--color-lightest);color:var(--color-on-lightest);border-color:var(--color-border-lightest)}ax-calendar ax-popover{display:none}ax-calendar.ax-state-disabled .ax-calendar-slots{cursor:not-allowed;opacity:50%}ax-calendar.ax-state-readonly .ax-calendar-slots{cursor:text}ax-calendar .ax-calendar-header{display:flex;justify-content:space-between;padding-inline:calc(var(--spacing, .25rem) * 1);padding-top:calc(var(--spacing, .25rem) * 1)}ax-calendar .ax-calendar-header .ax-calendar-header-info{--tw-font-weight: var(--font-weight-medium, 500);font-weight:var(--font-weight-medium, 500)}ax-calendar .ax-calendar-header .ax-calendar-header-buttons{display:flex;align-items:center}ax-calendar .ax-calendar-body{display:flex;flex-direction:column;align-items:center;justify-content:center}@media(min-width:48rem){ax-calendar .ax-calendar-body{flex-direction:column}}ax-calendar .ax-calendar-body>div{width:100%;flex:1}@media(min-width:48rem){ax-calendar .ax-calendar-body>div{width:calc(var(--spacing, .25rem) * 80)}}ax-calendar .ax-calendar-body .ax-calendar-view-header{display:flex;justify-content:space-between;border-bottom-style:var(--tw-border-style);border-bottom-width:1px;border-color:rgba(var(--ax-sys-color-border-lightest-surface));padding:calc(var(--spacing, .25rem) * 4)}ax-calendar .ax-calendar-body .ax-calendar-view-header .ax-calendar-header-info{--tw-font-weight: var(--font-weight-medium, 500);font-weight:var(--font-weight-medium, 500)}ax-calendar .ax-calendar-body .ax-calendar-view-header .ax-calendar-header-buttons{display:flex;align-items:center}ax-calendar .ax-calendar-body .ax-calendar-slots{display:grid;gap:calc(var(--spacing, .25rem) * 1);padding:calc(var(--spacing, .25rem) * 4)}ax-calendar .ax-calendar-body .ax-calendar-slots .ax-calendar-slot{position:relative;display:flex;cursor:pointer;align-items:center;justify-content:center;border-radius:var(--ax-sys-border-radius);text-align:center;font-size:var(--text-sm, .875rem);line-height:var(--tw-leading, var(--text-sm--line-height, calc(1.25 / .875)));transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to;transition-timing-function:var(--tw-ease, var(--default-transition-timing-function, cubic-bezier(.4, 0, .2, 1)));transition-duration:var(--tw-duration, var(--default-transition-duration, .15s))}ax-calendar .ax-calendar-body .ax-calendar-slots .ax-calendar-slot:before{content:\"\";float:left;padding-top:100%}ax-calendar .ax-calendar-body .ax-calendar-slots .ax-calendar-slot:after{content:\"\";clear:both;display:block}ax-calendar .ax-calendar-body .ax-calendar-slots .ax-calendar-slot:hover:not(ax-calendar .ax-calendar-body .ax-calendar-slots .ax-calendar-slot:hover.ax-state-disabled,ax-calendar .ax-calendar-body .ax-calendar-slots .ax-calendar-slot:hover.ax-state-selected,ax-calendar .ax-calendar-body .ax-calendar-slots .ax-calendar-slot:hover.ax-state-holiday){background-color:rgba(var(--ax-sys-color-primary-surface));color:rgba(var(--ax-sys-color-on-primary-surface))}ax-calendar .ax-calendar-body .ax-calendar-slots .ax-calendar-slot:focus-visible:not(ax-calendar .ax-calendar-body .ax-calendar-slots .ax-calendar-slot:focus-visible.ax-state-disabled){--tw-ring-shadow: var(--tw-ring-inset,) 0 0 0 calc(3px + var(--tw-ring-offset-width)) var(--tw-ring-color, currentcolor);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow);--tw-ring-color: rgba(var(--ax-sys-color-primary-surface));--tw-outline-style: none;outline-style:none}@supports (color: color-mix(in lab,red,red)){ax-calendar .ax-calendar-body .ax-calendar-slots .ax-calendar-slot:focus-visible:not(ax-calendar .ax-calendar-body .ax-calendar-slots .ax-calendar-slot:focus-visible.ax-state-disabled){--tw-ring-color: color-mix(in oklab, rgba(var(--ax-sys-color-primary-surface)) 50%, transparent)}}ax-calendar .ax-calendar-body .ax-calendar-slots .ax-calendar-slot:focus-visible.ax-state-disabled{--tw-ring-shadow: var(--tw-ring-inset,) 0 0 0 calc(3px + var(--tw-ring-offset-width)) var(--tw-ring-color, currentcolor);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow);--tw-ring-color: color-mix(in srgb, #000 30%, transparent)}@supports (color: color-mix(in lab,red,red)){ax-calendar .ax-calendar-body .ax-calendar-slots .ax-calendar-slot:focus-visible.ax-state-disabled{--tw-ring-color: color-mix(in oklab, var(--color-black, #000) 30%, transparent)}}ax-calendar .ax-calendar-body .ax-calendar-slots .ax-calendar-slot:focus-visible.ax-state-disabled:where(.ax-dark,.ax-dark *):not(:where(.ax-light,.ax-light *)){--tw-ring-color: color-mix(in srgb, #fff 30%, transparent)}@supports (color: color-mix(in lab,red,red)){ax-calendar .ax-calendar-body .ax-calendar-slots .ax-calendar-slot:focus-visible.ax-state-disabled:where(.ax-dark,.ax-dark *):not(:where(.ax-light,.ax-light *)){--tw-ring-color: color-mix(in oklab, var(--color-white, #fff) 30%, transparent)}}ax-calendar .ax-calendar-body .ax-calendar-slots .ax-calendar-slot.ax-state-disabled{cursor:not-allowed;opacity:50%}ax-calendar .ax-calendar-body .ax-calendar-slots .ax-calendar-slot.ax-state-readonly{cursor:text;opacity:70%}ax-calendar .ax-calendar-body .ax-calendar-slots .ax-calendar-slot.ax-column-start-1{grid-column-start:1}ax-calendar .ax-calendar-body .ax-calendar-slots .ax-calendar-slot.ax-column-start-2{grid-column-start:2}ax-calendar .ax-calendar-body .ax-calendar-slots .ax-calendar-slot.ax-column-start-3{grid-column-start:3}ax-calendar .ax-calendar-body .ax-calendar-slots .ax-calendar-slot.ax-column-start-4{grid-column-start:4}ax-calendar .ax-calendar-body .ax-calendar-slots .ax-calendar-slot.ax-column-start-5{grid-column-start:5}ax-calendar .ax-calendar-body .ax-calendar-slots .ax-calendar-slot.ax-column-start-6{grid-column-start:6}ax-calendar .ax-calendar-body .ax-calendar-slots .ax-calendar-slot.ax-column-start-7{grid-column-start:7}ax-calendar .ax-calendar-body .ax-calendar-slots .ax-calendar-slot.ax-state-other{opacity:5%}ax-calendar .ax-calendar-body .ax-calendar-slots .ax-calendar-slot .ax-ripple{background-color:rgba(var(--ax-sys-color-primary-surface))}@supports (color: color-mix(in lab,red,red)){ax-calendar .ax-calendar-body .ax-calendar-slots .ax-calendar-slot .ax-ripple{background-color:color-mix(in oklab,rgba(var(--ax-sys-color-primary-surface)) 30%,transparent)}}ax-calendar .ax-calendar-body .ax-calendar-slots .ax-calendar-slot.ax-state-today{--tw-inset-ring-shadow: inset 0 0 0 2px var(--tw-inset-ring-color, currentcolor);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow);--tw-inset-ring-color: rgba(var(--ax-sys-color-primary-surface))}ax-calendar .ax-calendar-body .ax-calendar-slots .ax-calendar-slot.ax-state-today.ax-state-holiday:not(.ax-has-holiday-color){border-color:rgba(var(--ax-sys-color-danger-600))!important;--tw-inset-ring-color: rgba(var(--ax-sys-color-danger-600)) !important}ax-calendar .ax-calendar-body .ax-calendar-slots .ax-calendar-slot.ax-state-today.ax-state-holiday.ax-has-holiday-color{border-color:var(--ax-calendar-holiday-color)!important;--tw-inset-ring-color: var(--ax-calendar-holiday-color) !important}ax-calendar .ax-calendar-body .ax-calendar-slots .ax-calendar-slot.ax-state-today.ax-state-holiday.ax-has-holiday-color:not(.ax-state-selected){color:var(--ax-calendar-holiday-color)!important}ax-calendar .ax-calendar-body .ax-calendar-slots .ax-calendar-slot.ax-state-focused{border-style:var(--tw-border-style);border-width:1px;border-color:rgba(var(--ax-sys-color-border-lightest-surface))}ax-calendar .ax-calendar-body .ax-calendar-slots .ax-calendar-slot.ax-state-selected{background-color:var(--color-primary);color:var(--color-on-primary);border-color:var(--color-border-primary)}ax-calendar .ax-calendar-body .ax-calendar-slots .ax-calendar-slot.ax-state-selected.ax-state-holiday:not(.ax-has-holiday-color){background-color:var(--color-danger)!important;color:var(--color-on-danger)!important;border-color:var(--color-border-danger)!important}ax-calendar .ax-calendar-body .ax-calendar-slots .ax-calendar-slot.ax-state-holiday:not(.ax-has-holiday-color){color:rgba(var(--ax-sys-color-danger-600))}ax-calendar .ax-calendar-body .ax-calendar-slots .ax-calendar-slot.ax-state-holiday:not(.ax-has-holiday-color):hover:not(.ax-state-disabled,.ax-state-selected){background-color:var(--color-danger);color:var(--color-on-danger);border-color:var(--color-border-danger)}ax-calendar .ax-calendar-body .ax-calendar-slots .ax-calendar-slot.ax-state-holiday:not(.ax-has-holiday-color) .ax-ripple{background-color:rgba(var(--ax-sys-color-on-danger-surface))}@supports (color: color-mix(in lab,red,red)){ax-calendar .ax-calendar-body .ax-calendar-slots .ax-calendar-slot.ax-state-holiday:not(.ax-has-holiday-color) .ax-ripple{background-color:color-mix(in oklab,rgba(var(--ax-sys-color-on-danger-surface)) 30%,transparent)}}ax-calendar .ax-calendar-body .ax-calendar-slots .ax-calendar-slot.ax-state-holiday.ax-has-holiday-color{color:var(--ax-calendar-holiday-color)!important}ax-calendar .ax-calendar-body .ax-calendar-slots .ax-calendar-slot.ax-state-holiday.ax-has-holiday-color:hover:not(.ax-state-disabled){color:var(--ax-calendar-holiday-color)!important;background-color:var(--ax-calendar-holiday-color)!important;border-color:var(--ax-calendar-holiday-color)!important}@supports (color: color-mix(in lab,red,red)){ax-calendar .ax-calendar-body .ax-calendar-slots .ax-calendar-slot.ax-state-holiday.ax-has-holiday-color:hover:not(.ax-state-disabled){background-color:color-mix(in srgb,var(--ax-calendar-holiday-color) 14%,transparent)!important}}ax-calendar .ax-calendar-body .ax-calendar-slots .ax-calendar-slot.ax-state-holiday.ax-has-holiday-color.ax-state-selected{color:rgba(var(--ax-comp-calendar-slot-holiday-selected-text-color))!important;background-color:var(--ax-calendar-holiday-color)!important;border-color:var(--ax-calendar-holiday-color)!important}ax-calendar .ax-calendar-body .ax-calendar-slots .ax-calendar-slot.ax-state-holiday.ax-has-holiday-color.ax-state-selected:hover:not(.ax-state-disabled){color:rgba(var(--ax-comp-calendar-slot-holiday-selected-text-color))!important;background-color:var(--ax-calendar-holiday-color)!important;border-color:var(--ax-calendar-holiday-color)!important}@supports (color: color-mix(in lab,red,red)){ax-calendar .ax-calendar-body .ax-calendar-slots .ax-calendar-slot.ax-state-holiday.ax-has-holiday-color.ax-state-selected:hover:not(.ax-state-disabled){background-color:color-mix(in srgb,var(--ax-calendar-holiday-color) 82%,black)!important}}@supports (color: color-mix(in lab,red,red)){ax-calendar .ax-calendar-body .ax-calendar-slots .ax-calendar-slot.ax-state-holiday.ax-has-holiday-color.ax-state-selected:hover:not(.ax-state-disabled){border-color:color-mix(in srgb,var(--ax-calendar-holiday-color) 82%,black)!important}}ax-calendar .ax-calendar-body .ax-calendar-slots .ax-calendar-slot.ax-state-holiday.ax-has-holiday-color .ax-ripple{background-color:var(--ax-calendar-holiday-color)!important}@supports (color: color-mix(in lab,red,red)){ax-calendar .ax-calendar-body .ax-calendar-slots .ax-calendar-slot.ax-state-holiday.ax-has-holiday-color .ax-ripple{background-color:color-mix(in srgb,var(--ax-calendar-holiday-color) 30%,transparent)!important}}ax-calendar .ax-calendar-body .ax-calendar-slots .ax-calendar-slot.ax-state-holiday.ax-has-holiday-color .ax-calendar-day-slot-content{max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}ax-calendar .ax-calendar-body .ax-calendar-slots.ax-calendar-slots-day{grid-template-columns:repeat(7,minmax(0,1fr))}ax-calendar .ax-calendar-body .ax-calendar-slots.ax-calendar-slots-year,ax-calendar .ax-calendar-body .ax-calendar-slots.ax-calendar-slots-month{grid-template-columns:repeat(4,minmax(0,1fr))}ax-calendar .ax-calendar-body .ax-calendar-week{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));padding-top:var(--ax-comp-calendar-week-padding-t, .75rem);padding-left:var(--ax-comp-calendar-week-padding-x, .5rem);padding-right:var(--ax-comp-calendar-week-padding-x, .5rem)}ax-calendar .ax-calendar-body .ax-calendar-week>div{position:relative;display:flex;cursor:pointer;align-items:center;justify-content:center;text-align:center;font-size:var(--text-sm, .875rem);line-height:var(--tw-leading, var(--text-sm--line-height, calc(1.25 / .875)))}ax-calendar.ax-look-select .ax-calendar-view-header.ax-calendar-day-nav{display:grid;align-items:center;gap:calc(var(--spacing, .25rem) * 1);grid-template-columns:auto 1fr auto}ax-calendar.ax-look-select .ax-calendar-view-header.ax-calendar-day-nav .ax-icon{font-size:.875rem}ax-calendar.ax-look-select .ax-calendar-view-header.ax-calendar-day-nav .ax-calendar-day-nav-prev{justify-self:start}ax-calendar.ax-look-select .ax-calendar-view-header.ax-calendar-day-nav .ax-calendar-day-nav-center{display:flex;align-items:center;justify-content:center;gap:calc(var(--spacing, .25rem) * 1)}ax-calendar.ax-look-select .ax-calendar-view-header.ax-calendar-day-nav .ax-calendar-day-nav-next{justify-self:end}ax-calendar.ax-look-select .ax-calendar-view-header.ax-calendar-day-nav ax-select-box.ax-calendar-month-select,ax-calendar.ax-look-select .ax-calendar-view-header.ax-calendar-day-nav ax-select-box.ax-calendar-year-select{display:inline-block;width:auto;flex-shrink:0;flex-grow:0;flex-basis:auto}:is(ax-calendar.ax-look-select .ax-calendar-view-header.ax-calendar-day-nav ax-select-box.ax-calendar-month-select,ax-calendar.ax-look-select .ax-calendar-view-header.ax-calendar-day-nav ax-select-box.ax-calendar-year-select) .ax-icon{font-size:.75rem}:is(ax-calendar.ax-look-select .ax-calendar-view-header.ax-calendar-day-nav ax-select-box.ax-calendar-month-select,ax-calendar.ax-look-select .ax-calendar-view-header.ax-calendar-day-nav ax-select-box.ax-calendar-year-select) .ax-editor-container{gap:0}:is(ax-calendar.ax-look-select .ax-calendar-view-header.ax-calendar-day-nav ax-select-box.ax-calendar-month-select,ax-calendar.ax-look-select .ax-calendar-view-header.ax-calendar-day-nav ax-select-box.ax-calendar-year-select) ax-dropdown-box.ax-editor-container{width:auto;justify-content:flex-start}:is(ax-calendar.ax-look-select .ax-calendar-view-header.ax-calendar-day-nav ax-select-box.ax-calendar-month-select,ax-calendar.ax-look-select .ax-calendar-view-header.ax-calendar-day-nav ax-select-box.ax-calendar-year-select) .ax-chips-container{width:auto;flex-shrink:0;flex-grow:0;flex-basis:auto}:is(ax-calendar.ax-look-select .ax-calendar-view-header.ax-calendar-day-nav ax-select-box.ax-calendar-month-select,ax-calendar.ax-look-select .ax-calendar-view-header.ax-calendar-day-nav ax-select-box.ax-calendar-year-select) .ax-chips-container .ax-chips{overflow:visible;text-overflow:unset}ax-calendar .ax-calendar-footer{display:flex;align-items:center;justify-content:center;margin-top:var(--ax-comp-calendar-footer-margin-t)}ax-calendar .ax-calendar-footer .ax-today-button{display:block;width:100%;cursor:pointer;text-align:center;font-size:var(--text-sm, .875rem);line-height:var(--tw-leading, var(--text-sm--line-height, calc(1.25 / .875)));padding-left:var(--ax-comp-calendar-footer-today-button-padding-x);padding-right:var(--ax-comp-calendar-footer-today-button-padding-x);height:var(--ax-comp-calendar-footer-today-button-height);border-radius:var(--ax-comp-calendar-footer-today-button-border-radius, var(--ax-sys-border-radius));color:rgba(var(--ax-comp-calendar-footer-today-button-text-color));background-color:rgba(var(--ax-comp-calendar-footer-today-button-bg-color))}ax-calendar .ax-calendar-footer .ax-today-button.ax-state-disabled{cursor:not-allowed;opacity:var(--ax-comp-calendar-slot-disabled-opacity)}ax-calendar .ax-calendar-footer .ax-today-button.ax-state-readonly{cursor:text;opacity:var(--ax-comp-calendar-slot-readonly-opacity)}ax-calendar .ax-calendar-footer .ax-today-button:is(ax-calendar .ax-calendar-footer .ax-today-button:hover):not(.ax-state-disabled){background-color:rgba(var(--ax-comp-calendar-footer-today-button-hover-bg-color))}ax-calendar .ax-calendar-footer .ax-today-button:is(ax-calendar .ax-calendar-footer .ax-today-button:focus,ax-calendar .ax-calendar-footer .ax-today-button:focus-visible):not(.ax-state-disabled){outline-color:rgba(var(--ax-comp-calendar-footer-today-button-focused-outline-color))}}.ax-calendar-picker{display:flex;width:100%}.ax-calendar-picker ax-picker{flex:1}.ax-overlay-pane ax-calendar{--tw-border-style: none;border-style:none}@property --tw-font-weight{syntax: \"*\"; inherits: false;}@property --tw-border-style{syntax: \"*\"; inherits: false; initial-value: solid;}@property --tw-shadow{syntax: \"*\"; inherits: false; initial-value: 0 0 #0000;}@property --tw-shadow-color{syntax: \"*\"; inherits: false;}@property --tw-shadow-alpha{syntax: \"<percentage>\"; inherits: false; initial-value: 100%;}@property --tw-inset-shadow{syntax: \"*\"; inherits: false; initial-value: 0 0 #0000;}@property --tw-inset-shadow-color{syntax: \"*\"; inherits: false;}@property --tw-inset-shadow-alpha{syntax: \"<percentage>\"; inherits: false; initial-value: 100%;}@property --tw-ring-color{syntax: \"*\"; inherits: false;}@property --tw-ring-shadow{syntax: \"*\"; inherits: false; initial-value: 0 0 #0000;}@property --tw-inset-ring-color{syntax: \"*\"; inherits: false;}@property --tw-inset-ring-shadow{syntax: \"*\"; inherits: false; initial-value: 0 0 #0000;}@property --tw-ring-inset{syntax: \"*\"; inherits: false;}@property --tw-ring-offset-width{syntax: \"<length>\"; inherits: false; initial-value: 0px;}@property --tw-ring-offset-color{syntax: \"*\"; inherits: false; initial-value: #fff;}@property --tw-ring-offset-shadow{syntax: \"*\"; inherits: false; initial-value: 0 0 #0000;}@layer properties{@supports ((-webkit-hyphens: none) and (not (margin-trim: inline))) or ((-moz-orient: inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-font-weight: initial;--tw-border-style: solid;--tw-shadow: 0 0 #0000;--tw-shadow-color: initial;--tw-shadow-alpha: 100%;--tw-inset-shadow: 0 0 #0000;--tw-inset-shadow-color: initial;--tw-inset-shadow-alpha: 100%;--tw-ring-color: initial;--tw-ring-shadow: 0 0 #0000;--tw-inset-ring-color: initial;--tw-inset-ring-shadow: 0 0 #0000;--tw-ring-inset: initial;--tw-ring-offset-width: 0px;--tw-ring-offset-color: #fff;--tw-ring-offset-shadow: 0 0 #0000}}}\n/*! tailwindcss v4.1.16 | MIT License | https://tailwindcss.com */\n"], dependencies: [{ kind: "directive", type: NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: AXRippleDirective, selector: "[axRipple]", inputs: ["axRipple", "axRippleColor"] }, { kind: "ngmodule", type: AXFormatModule }, { kind: "ngmodule", type: AXDateTimeModule }, { kind: "component", type: AXSelectBoxComponent, selector: "ax-select-box", inputs: ["disabled", "readonly", "tabIndex", "placeholder", "minValue", "maxValue", "value", "state", "name", "id", "type", "look", "multiple", "valueField", "textField", "disabledField", "textTemplate", "selectedItems", "isItemTruncated", "showItemTooltip", "itemHeight", "maxVisibleItems", "dataSource", "minRecordsForSearch", "caption", "itemTemplate", "selectedTemplate", "emptyTemplate", "loadingTemplate", "dropdownWidth", "searchBoxAutoFocus"], outputs: ["valueChange", "stateChange", "onValueChanged", "onBlur", "onFocus", "readonlyChange", "disabledChange", "onOpened", "onClosed", "onItemSelected", "onItemClick"] }, { 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: AXTooltipDirective, selector: "[axTooltip]", inputs: ["axTooltipDisabled", "axTooltip", "axTooltipContext", "axTooltipPlacement", "axTooltipOffsetX", "axTooltipOffsetY", "axTooltipOpenAfter", "axTooltipCloseAfter"] }, { kind: "pipe", type: AsyncPipe, name: "async" }, { kind: "pipe", type: AXTranslatorPipe, name: "translate" }, { kind: "pipe", type: i2.AXFormatPipe, name: "format" }], encapsulation: i0.ViewEncapsulation.None }); }
1067
+ ], usesInheritance: true, ngImport: i0, template: "<ng-content select=\"ax-header\"></ng-content>\n<div class=\"ax-calendar-body\">\n @for (v of views; let i = $index, first = $first, last = $last; track i) {\n @switch (activeView) {\n @case ('year') {\n @if (showNavigation) {\n <div class=\"ax-calendar-view-header\">\n <div class=\"ax-calendar-header-info\">\n <button\n type=\"button\"\n [attr.disabled]=\"disabled ? '' : null\"\n [attr.readonly]=\"readonly ? '' : null\"\n class=\"ax-general-button ax-button-rounded ax-state-disabled\"\n (click)=\"_handleNavClick($event, 'year')\"\n >\n {{ v.range.startTime | format: 'date' : { calendar: calendarSystem(), format: 'YYYY' } | async }} -\n {{ v.range.endTime | format: 'date' : { calendar: calendarSystem(), format: 'YYYY' } | async }}\n </button>\n </div>\n @if (last) {\n <div class=\"ax-calendar-header-buttons\">\n <button\n type=\"button\"\n [attr.disabled]=\"disabled ? '' : null\"\n [attr.readonly]=\"readonly ? '' : null\"\n class=\"ax-general-button-icon ax-button-rounded ax-button-icon ax-next\"\n (click)=\"_handlePrevClick()\"\n [title]=\"'@acorex:common.actions.prev' | translate | async\"\n >\n <i class=\"ax-icon ax-icon-chevron-left\"></i>\n </button>\n <button\n type=\"button\"\n [attr.disabled]=\"disabled ? '' : null\"\n [attr.readonly]=\"readonly ? '' : null\"\n class=\"ax-general-button-icon ax-button-rounded ax-button-icon\"\n (click)=\"_handleNextClick()\"\n [title]=\"'@acorex:common.actions.next' | translate | async\"\n >\n <i class=\"ax-icon ax-icon-chevron-right\"></i>\n </button>\n </div>\n }\n </div>\n }\n <div class=\"ax-calendar-slots ax-calendar-slots-year\" [ngClass]=\"{ 'ax-default': !yearCellTemplate }\">\n @for (slot of v.slots; track slot.date.date.getTime()) {\n <button\n tabindex=\"0\"\n class=\"ax-calendar-slot\"\n [class.ax-state-disabled]=\"disabled\"\n [ngClass]=\"slot.cssClass\"\n (click)=\"_handleSlotClick($event, slot)\"\n >\n @if (yearCellTemplate) {\n <div>\n <ng-container\n [ngTemplateOutlet]=\"yearCellTemplate\"\n [ngTemplateOutletContext]=\"{ $implicit: { slot: slot } }\"\n >\n </ng-container>\n </div>\n } @else {\n <div>\n {{ slot.text }}\n </div>\n }\n </button>\n }\n </div>\n }\n @case ('month') {\n @if (showNavigation) {\n <div class=\"ax-calendar-view-header\">\n <div class=\"ax-calendar-header-info\">\n <button\n type=\"button\"\n [attr.disabled]=\"disabled ? '' : null\"\n [attr.readonly]=\"readonly ? '' : null\"\n class=\"ax-general-button ax-button-rounded\"\n (click)=\"_handleNavClick($event, 'year')\"\n >\n {{ v.range.startTime | format: 'date' : { calendar: calendarSystem(), format: 'YYYY' } | async }}\n </button>\n </div>\n @if (last) {\n <div class=\"ax-calendar-header-buttons\">\n <button\n type=\"button\"\n [attr.disabled]=\"disabled ? '' : null\"\n [attr.readonly]=\"readonly ? '' : null\"\n class=\"ax-general-button-icon ax-button-rounded ax-button-icon\"\n (click)=\"_handlePrevClick()\"\n [title]=\"'@acorex:common.actions.prev' | translate | async\"\n >\n <i class=\"ax-icon ax-icon-chevron-left\"></i>\n </button>\n <button\n type=\"button\"\n [attr.disabled]=\"disabled ? '' : null\"\n [attr.readonly]=\"readonly ? '' : null\"\n class=\"ax-general-button-icon ax-button-rounded ax-button-icon\"\n (click)=\"_handleNextClick()\"\n [title]=\"'@acorex:common.actions.next' | translate | async\"\n >\n <i class=\"ax-icon ax-icon-chevron-right\"></i>\n </button>\n </div>\n }\n </div>\n }\n\n <div class=\"ax-calendar-slots ax-calendar-slots-month\" [ngClass]=\"{ 'ax-default': !monthCellTemplate }\">\n @for (slot of v.slots; track slot.date.date.getTime()) {\n <button\n tabindex=\"0\"\n class=\"ax-calendar-slot\"\n [class.ax-state-disabled]=\"disabled\"\n [ngClass]=\"slot.cssClass\"\n (click)=\"_handleSlotClick($event, slot)\"\n >\n @if (monthCellTemplate) {\n <div>\n <ng-container\n [ngTemplateOutlet]=\"monthCellTemplate\"\n [ngTemplateOutletContext]=\"{ $implicit: { slot: slot } }\"\n >\n </ng-container>\n </div>\n } @else {\n <div [title]=\"slot.date | format: 'date' : { calendar: calendarSystem(), format: 'MMMM YYYY' } | async\">\n {{ getMonthName(slot.date, 'short') }}\n </div>\n }\n </button>\n }\n </div>\n }\n @default {\n @if (showNavigation && look() === 'select' && last) {\n <div class=\"ax-calendar-view-header ax-calendar-day-nav\">\n <button\n type=\"button\"\n [attr.disabled]=\"disabled ? '' : null\"\n [attr.readonly]=\"readonly ? '' : null\"\n class=\"ax-general-button ax-button-rounded ax-button-icon ax-calendar-day-nav-prev\"\n (click)=\"_handlePrevClick()\"\n [title]=\"'@acorex:common.actions.prev' | translate | async\"\n >\n <i\n class=\"ax-icon\"\n [ngClass]=\"{\n 'ax-icon-chevron-left': !isRtl(),\n 'ax-icon-chevron-right': isRtl(),\n }\"\n ></i>\n </button>\n <div class=\"ax-calendar-day-nav-center\">\n <ax-select-box\n class=\"ax-calendar-month-select ax-sm\"\n look=\"none\"\n [disabled]=\"disabled\"\n [readonly]=\"readonly\"\n [dataSource]=\"_monthOptions\"\n textField=\"text\"\n valueField=\"id\"\n [ngModel]=\"_selectedMonthOption\"\n [isItemTruncated]=\"false\"\n dropdownWidth=\"110\"\n [maxVisibleItems]=\"12\"\n [itemHeight]=\"32\"\n (onValueChanged)=\"_handleMonthSelectChanged($event)\"\n (click)=\"$event.stopPropagation()\"\n ></ax-select-box>\n <ax-select-box\n class=\"ax-calendar-year-select ax-sm\"\n look=\"none\"\n [disabled]=\"disabled\"\n [readonly]=\"readonly\"\n [dataSource]=\"_yearOptions\"\n textField=\"text\"\n valueField=\"id\"\n [ngModel]=\"_selectedYearOption\"\n [isItemTruncated]=\"false\"\n dropdownWidth=\"72\"\n [maxVisibleItems]=\"10\"\n [itemHeight]=\"32\"\n (onValueChanged)=\"_handleYearSelectChanged($event)\"\n (click)=\"$event.stopPropagation()\"\n ></ax-select-box>\n </div>\n <button\n type=\"button\"\n [attr.disabled]=\"disabled ? '' : null\"\n [attr.readonly]=\"readonly ? '' : null\"\n class=\"ax-general-button ax-button-rounded ax-button-icon ax-calendar-day-nav-next\"\n (click)=\"_handleNextClick()\"\n [title]=\"'@acorex:common.actions.next' | translate | async\"\n >\n <i\n class=\"ax-icon\"\n [ngClass]=\"{\n 'ax-icon-chevron-right': !isRtl(),\n 'ax-icon-chevron-left': isRtl(),\n }\"\n ></i>\n </button>\n </div>\n }\n @if (showNavigation && look() === 'classic') {\n <div class=\"ax-calendar-view-header\">\n <div class=\"ax-calendar-header-info\">\n <button\n type=\"button\"\n [attr.disabled]=\"disabled ? '' : null\"\n [attr.readonly]=\"readonly ? '' : null\"\n class=\"ax-general-button ax-button-rounded\"\n (click)=\"_handleNavClick($event, 'year')\"\n >\n {{ v.range.startTime | format: 'date' : { calendar: calendarSystem(), format: 'YYYY' } | async }}\n </button>\n <button\n type=\"button\"\n [attr.disabled]=\"disabled ? '' : null\"\n [attr.readonly]=\"readonly ? '' : null\"\n class=\"ax-general-button ax-button-rounded\"\n (click)=\"_handleNavClick($event, 'month')\"\n >\n {{ v.range.startTime | format: 'date' : { calendar: calendarSystem(), format: 'MMMM' } | async }}\n </button>\n </div>\n @if (last) {\n <div class=\"ax-calendar-header-buttons\">\n <button\n type=\"button\"\n [attr.disabled]=\"disabled ? '' : null\"\n [attr.readonly]=\"readonly ? '' : null\"\n class=\"ax-general-button-icon ax-button-rounded ax-button-icon\"\n (click)=\"_handlePrevClick()\"\n [title]=\"'@acorex:common.actions.prev' | translate | async\"\n >\n <i class=\"ax-icon ax-icon-chevron-left\"></i>\n </button>\n <button\n type=\"button\"\n [attr.disabled]=\"disabled ? '' : null\"\n [attr.readonly]=\"readonly ? '' : null\"\n class=\"ax-general-button-icon ax-button-rounded ax-button-icon\"\n (click)=\"_handleNextClick()\"\n [title]=\"'@acorex:common.actions.next' | translate | async\"\n >\n <i class=\"ax-icon ax-icon-chevron-right\"></i>\n </button>\n </div>\n }\n </div>\n }\n <div class=\"ax-calendar-week\">\n @for (d of weekLayout(); track d) {\n <div>{{ '@acorex:dateTime.weekdays.short.' + d | translate | async }}</div>\n }\n </div>\n\n <div class=\"ax-calendar-slots ax-calendar-slots-day\" [ngClass]=\"{ 'ax-default': !dayCellTemplate }\">\n @for (slot of v.slots; track slot.date.date.getTime()) {\n <button\n tabindex=\"0\"\n class=\"ax-calendar-slot\"\n [ngClass]=\"slot.cssClass\"\n [class.ax-state-disabled]=\"disabled\"\n [class.ax-has-holiday-color]=\"!!slot.holidayColor\"\n [style.--ax-calendar-holiday-color]=\"slot.holidayColor ?? null\"\n (click)=\"_handleSlotClick($event, slot)\"\n [disabled]=\"disabled\"\n [axRipple]\n [axTooltip]=\"slot.tooltip ?? ''\"\n [axTooltipDisabled]=\"!slot.tooltip\"\n [title]=\"\n !slot.tooltip ? (slot.date | format: 'date' : { calendar: calendarSystem(), format: 'long' } | async) : ''\n \"\n >\n @if (dayCellTemplate) {\n <div>\n <ng-container\n [ngTemplateOutlet]=\"dayCellTemplate\"\n [ngTemplateOutletContext]=\"{ $implicit: { slot: slot } }\"\n >\n </ng-container>\n </div>\n } @else {\n <div class=\"ax-calendar-day-slot-content\">\n {{ slot.text }}\n </div>\n }\n </button>\n }\n </div>\n }\n }\n }\n</div>\n<ng-content select=\"ax-footer\"></ng-content>\n", styles: ["@layer properties;html[dir=rtl] ax-calendar .ax-calendar-header-buttons .ax-icon{-moz-transform:scale(-1,1);-o-transform:scale(-1,1);-webkit-transform:scale(-1,1);transform:scaleX(-1)}@layer components{ax-calendar{display:block;width:100%;background-color:var(--color-lightest);color:var(--color-on-lightest);border-color:var(--color-border-lightest)}ax-calendar ax-popover{display:none}ax-calendar.ax-state-disabled .ax-calendar-slots{cursor:not-allowed;opacity:50%}ax-calendar.ax-state-readonly .ax-calendar-slots{cursor:text}ax-calendar .ax-calendar-header{display:flex;justify-content:space-between;padding-inline:calc(var(--spacing, .25rem) * 1);padding-top:calc(var(--spacing, .25rem) * 1)}ax-calendar .ax-calendar-header .ax-calendar-header-info{--tw-font-weight: var(--font-weight-medium, 500);font-weight:var(--font-weight-medium, 500)}ax-calendar .ax-calendar-header .ax-calendar-header-buttons{display:flex;align-items:center}ax-calendar .ax-calendar-body{display:flex;flex-direction:column;align-items:center;justify-content:center}@media(min-width:48rem){ax-calendar .ax-calendar-body{flex-direction:column}}ax-calendar .ax-calendar-body>div{width:100%;flex:1}@media(min-width:48rem){ax-calendar .ax-calendar-body>div{width:calc(var(--spacing, .25rem) * 80)}}ax-calendar .ax-calendar-body .ax-calendar-view-header{display:flex;justify-content:space-between;border-bottom-style:var(--tw-border-style);border-bottom-width:1px;border-color:rgba(var(--ax-sys-color-border-lightest-surface));padding:calc(var(--spacing, .25rem) * 4)}ax-calendar .ax-calendar-body .ax-calendar-view-header .ax-calendar-header-info{--tw-font-weight: var(--font-weight-medium, 500);font-weight:var(--font-weight-medium, 500)}ax-calendar .ax-calendar-body .ax-calendar-view-header .ax-calendar-header-buttons{display:flex;align-items:center}ax-calendar .ax-calendar-body .ax-calendar-slots{display:grid;gap:calc(var(--spacing, .25rem) * 1);padding:calc(var(--spacing, .25rem) * 4)}ax-calendar .ax-calendar-body .ax-calendar-slots .ax-calendar-slot{position:relative;display:flex;cursor:pointer;align-items:center;justify-content:center;border-radius:var(--ax-sys-border-radius);text-align:center;font-size:var(--text-sm, .875rem);line-height:var(--tw-leading, var(--text-sm--line-height, calc(1.25 / .875)));transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to;transition-timing-function:var(--tw-ease, var(--default-transition-timing-function, cubic-bezier(.4, 0, .2, 1)));transition-duration:var(--tw-duration, var(--default-transition-duration, .15s))}ax-calendar .ax-calendar-body .ax-calendar-slots .ax-calendar-slot:before{content:\"\";float:left;padding-top:100%}ax-calendar .ax-calendar-body .ax-calendar-slots .ax-calendar-slot:after{content:\"\";clear:both;display:block}ax-calendar .ax-calendar-body .ax-calendar-slots .ax-calendar-slot:hover:not(ax-calendar .ax-calendar-body .ax-calendar-slots .ax-calendar-slot:hover.ax-state-disabled,ax-calendar .ax-calendar-body .ax-calendar-slots .ax-calendar-slot:hover.ax-state-selected,ax-calendar .ax-calendar-body .ax-calendar-slots .ax-calendar-slot:hover.ax-state-holiday){background-color:rgba(var(--ax-sys-color-primary-surface));color:rgba(var(--ax-sys-color-on-primary-surface))}ax-calendar .ax-calendar-body .ax-calendar-slots .ax-calendar-slot:focus-visible:not(ax-calendar .ax-calendar-body .ax-calendar-slots .ax-calendar-slot:focus-visible.ax-state-disabled){--tw-ring-shadow: var(--tw-ring-inset,) 0 0 0 calc(3px + var(--tw-ring-offset-width)) var(--tw-ring-color, currentcolor);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow);--tw-ring-color: rgba(var(--ax-sys-color-primary-surface));--tw-outline-style: none;outline-style:none}@supports (color: color-mix(in lab,red,red)){ax-calendar .ax-calendar-body .ax-calendar-slots .ax-calendar-slot:focus-visible:not(ax-calendar .ax-calendar-body .ax-calendar-slots .ax-calendar-slot:focus-visible.ax-state-disabled){--tw-ring-color: color-mix(in oklab, rgba(var(--ax-sys-color-primary-surface)) 50%, transparent)}}ax-calendar .ax-calendar-body .ax-calendar-slots .ax-calendar-slot:focus-visible.ax-state-disabled{--tw-ring-shadow: var(--tw-ring-inset,) 0 0 0 calc(3px + var(--tw-ring-offset-width)) var(--tw-ring-color, currentcolor);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow);--tw-ring-color: color-mix(in srgb, #000 30%, transparent)}@supports (color: color-mix(in lab,red,red)){ax-calendar .ax-calendar-body .ax-calendar-slots .ax-calendar-slot:focus-visible.ax-state-disabled{--tw-ring-color: color-mix(in oklab, var(--color-black, #000) 30%, transparent)}}ax-calendar .ax-calendar-body .ax-calendar-slots .ax-calendar-slot:focus-visible.ax-state-disabled:where(.ax-dark,.ax-dark *):not(:where(.ax-light,.ax-light *)){--tw-ring-color: color-mix(in srgb, #fff 30%, transparent)}@supports (color: color-mix(in lab,red,red)){ax-calendar .ax-calendar-body .ax-calendar-slots .ax-calendar-slot:focus-visible.ax-state-disabled:where(.ax-dark,.ax-dark *):not(:where(.ax-light,.ax-light *)){--tw-ring-color: color-mix(in oklab, var(--color-white, #fff) 30%, transparent)}}ax-calendar .ax-calendar-body .ax-calendar-slots .ax-calendar-slot.ax-state-disabled{cursor:not-allowed;opacity:50%}ax-calendar .ax-calendar-body .ax-calendar-slots .ax-calendar-slot.ax-state-readonly{cursor:text;opacity:70%}ax-calendar .ax-calendar-body .ax-calendar-slots .ax-calendar-slot.ax-column-start-1{grid-column-start:1}ax-calendar .ax-calendar-body .ax-calendar-slots .ax-calendar-slot.ax-column-start-2{grid-column-start:2}ax-calendar .ax-calendar-body .ax-calendar-slots .ax-calendar-slot.ax-column-start-3{grid-column-start:3}ax-calendar .ax-calendar-body .ax-calendar-slots .ax-calendar-slot.ax-column-start-4{grid-column-start:4}ax-calendar .ax-calendar-body .ax-calendar-slots .ax-calendar-slot.ax-column-start-5{grid-column-start:5}ax-calendar .ax-calendar-body .ax-calendar-slots .ax-calendar-slot.ax-column-start-6{grid-column-start:6}ax-calendar .ax-calendar-body .ax-calendar-slots .ax-calendar-slot.ax-column-start-7{grid-column-start:7}ax-calendar .ax-calendar-body .ax-calendar-slots .ax-calendar-slot.ax-state-other{opacity:5%}ax-calendar .ax-calendar-body .ax-calendar-slots .ax-calendar-slot .ax-ripple{background-color:rgba(var(--ax-sys-color-primary-surface))}@supports (color: color-mix(in lab,red,red)){ax-calendar .ax-calendar-body .ax-calendar-slots .ax-calendar-slot .ax-ripple{background-color:color-mix(in oklab,rgba(var(--ax-sys-color-primary-surface)) 30%,transparent)}}ax-calendar .ax-calendar-body .ax-calendar-slots .ax-calendar-slot.ax-state-today{--tw-inset-ring-shadow: inset 0 0 0 2px var(--tw-inset-ring-color, currentcolor);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow);--tw-inset-ring-color: rgba(var(--ax-sys-color-primary-surface))}ax-calendar .ax-calendar-body .ax-calendar-slots .ax-calendar-slot.ax-state-today.ax-state-holiday:not(.ax-has-holiday-color){border-color:rgba(var(--ax-sys-color-danger-600))!important;--tw-inset-ring-color: rgba(var(--ax-sys-color-danger-600)) !important}ax-calendar .ax-calendar-body .ax-calendar-slots .ax-calendar-slot.ax-state-today.ax-state-holiday.ax-has-holiday-color{border-color:var(--ax-calendar-holiday-color)!important;--tw-inset-ring-color: var(--ax-calendar-holiday-color) !important}ax-calendar .ax-calendar-body .ax-calendar-slots .ax-calendar-slot.ax-state-today.ax-state-holiday.ax-has-holiday-color:not(.ax-state-selected){color:var(--ax-calendar-holiday-color)!important}ax-calendar .ax-calendar-body .ax-calendar-slots .ax-calendar-slot.ax-state-focused{border-style:var(--tw-border-style);border-width:1px;border-color:rgba(var(--ax-sys-color-border-lightest-surface))}ax-calendar .ax-calendar-body .ax-calendar-slots .ax-calendar-slot.ax-state-selected{background-color:var(--color-primary);color:var(--color-on-primary);border-color:var(--color-border-primary)}ax-calendar .ax-calendar-body .ax-calendar-slots .ax-calendar-slot.ax-state-selected.ax-state-holiday:not(.ax-has-holiday-color){background-color:var(--color-danger)!important;color:var(--color-on-danger)!important;border-color:var(--color-border-danger)!important}ax-calendar .ax-calendar-body .ax-calendar-slots .ax-calendar-slot.ax-state-holiday:not(.ax-has-holiday-color){color:rgba(var(--ax-sys-color-danger-600))}ax-calendar .ax-calendar-body .ax-calendar-slots .ax-calendar-slot.ax-state-holiday:not(.ax-has-holiday-color):hover:not(.ax-state-disabled,.ax-state-selected){background-color:var(--color-danger);color:var(--color-on-danger);border-color:var(--color-border-danger)}ax-calendar .ax-calendar-body .ax-calendar-slots .ax-calendar-slot.ax-state-holiday:not(.ax-has-holiday-color) .ax-ripple{background-color:rgba(var(--ax-sys-color-on-danger-surface))}@supports (color: color-mix(in lab,red,red)){ax-calendar .ax-calendar-body .ax-calendar-slots .ax-calendar-slot.ax-state-holiday:not(.ax-has-holiday-color) .ax-ripple{background-color:color-mix(in oklab,rgba(var(--ax-sys-color-on-danger-surface)) 30%,transparent)}}ax-calendar .ax-calendar-body .ax-calendar-slots .ax-calendar-slot.ax-state-holiday.ax-has-holiday-color{color:var(--ax-calendar-holiday-color)!important}ax-calendar .ax-calendar-body .ax-calendar-slots .ax-calendar-slot.ax-state-holiday.ax-has-holiday-color:hover:not(.ax-state-disabled){color:var(--ax-calendar-holiday-color)!important;background-color:var(--ax-calendar-holiday-color)!important;border-color:var(--ax-calendar-holiday-color)!important}@supports (color: color-mix(in lab,red,red)){ax-calendar .ax-calendar-body .ax-calendar-slots .ax-calendar-slot.ax-state-holiday.ax-has-holiday-color:hover:not(.ax-state-disabled){background-color:color-mix(in srgb,var(--ax-calendar-holiday-color) 14%,transparent)!important}}ax-calendar .ax-calendar-body .ax-calendar-slots .ax-calendar-slot.ax-state-holiday.ax-has-holiday-color.ax-state-selected{color:rgba(var(--ax-comp-calendar-slot-holiday-selected-text-color))!important;background-color:var(--ax-calendar-holiday-color)!important;border-color:var(--ax-calendar-holiday-color)!important}ax-calendar .ax-calendar-body .ax-calendar-slots .ax-calendar-slot.ax-state-holiday.ax-has-holiday-color.ax-state-selected:hover:not(.ax-state-disabled){color:rgba(var(--ax-comp-calendar-slot-holiday-selected-text-color))!important;background-color:var(--ax-calendar-holiday-color)!important;border-color:var(--ax-calendar-holiday-color)!important}@supports (color: color-mix(in lab,red,red)){ax-calendar .ax-calendar-body .ax-calendar-slots .ax-calendar-slot.ax-state-holiday.ax-has-holiday-color.ax-state-selected:hover:not(.ax-state-disabled){background-color:color-mix(in srgb,var(--ax-calendar-holiday-color) 82%,black)!important}}@supports (color: color-mix(in lab,red,red)){ax-calendar .ax-calendar-body .ax-calendar-slots .ax-calendar-slot.ax-state-holiday.ax-has-holiday-color.ax-state-selected:hover:not(.ax-state-disabled){border-color:color-mix(in srgb,var(--ax-calendar-holiday-color) 82%,black)!important}}ax-calendar .ax-calendar-body .ax-calendar-slots .ax-calendar-slot.ax-state-holiday.ax-has-holiday-color .ax-ripple{background-color:var(--ax-calendar-holiday-color)!important}@supports (color: color-mix(in lab,red,red)){ax-calendar .ax-calendar-body .ax-calendar-slots .ax-calendar-slot.ax-state-holiday.ax-has-holiday-color .ax-ripple{background-color:color-mix(in srgb,var(--ax-calendar-holiday-color) 30%,transparent)!important}}ax-calendar .ax-calendar-body .ax-calendar-slots .ax-calendar-slot.ax-state-holiday.ax-has-holiday-color .ax-calendar-day-slot-content{max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}ax-calendar .ax-calendar-body .ax-calendar-slots.ax-calendar-slots-day{grid-template-columns:repeat(7,minmax(0,1fr))}ax-calendar .ax-calendar-body .ax-calendar-slots.ax-calendar-slots-year,ax-calendar .ax-calendar-body .ax-calendar-slots.ax-calendar-slots-month{grid-template-columns:repeat(4,minmax(0,1fr))}ax-calendar .ax-calendar-body .ax-calendar-week{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));padding-top:var(--ax-comp-calendar-week-padding-t, .75rem);padding-left:var(--ax-comp-calendar-week-padding-x, .5rem);padding-right:var(--ax-comp-calendar-week-padding-x, .5rem)}ax-calendar .ax-calendar-body .ax-calendar-week>div{position:relative;display:flex;cursor:pointer;align-items:center;justify-content:center;text-align:center;font-size:var(--text-sm, .875rem);line-height:var(--tw-leading, var(--text-sm--line-height, calc(1.25 / .875)))}ax-calendar.ax-look-select .ax-calendar-view-header.ax-calendar-day-nav{display:grid;align-items:center;gap:calc(var(--spacing, .25rem) * 1);grid-template-columns:auto 1fr auto}ax-calendar.ax-look-select .ax-calendar-view-header.ax-calendar-day-nav .ax-icon{font-size:.875rem}ax-calendar.ax-look-select .ax-calendar-view-header.ax-calendar-day-nav .ax-calendar-day-nav-prev{justify-self:start}ax-calendar.ax-look-select .ax-calendar-view-header.ax-calendar-day-nav .ax-calendar-day-nav-center{display:flex;align-items:center;justify-content:center;gap:calc(var(--spacing, .25rem) * 1)}ax-calendar.ax-look-select .ax-calendar-view-header.ax-calendar-day-nav .ax-calendar-day-nav-next{justify-self:end}ax-calendar.ax-look-select .ax-calendar-view-header.ax-calendar-day-nav ax-select-box.ax-calendar-month-select,ax-calendar.ax-look-select .ax-calendar-view-header.ax-calendar-day-nav ax-select-box.ax-calendar-year-select{display:inline-block;width:auto;flex-shrink:0;flex-grow:0;flex-basis:auto}:is(ax-calendar.ax-look-select .ax-calendar-view-header.ax-calendar-day-nav ax-select-box.ax-calendar-month-select,ax-calendar.ax-look-select .ax-calendar-view-header.ax-calendar-day-nav ax-select-box.ax-calendar-year-select) .ax-icon{font-size:.75rem}:is(ax-calendar.ax-look-select .ax-calendar-view-header.ax-calendar-day-nav ax-select-box.ax-calendar-month-select,ax-calendar.ax-look-select .ax-calendar-view-header.ax-calendar-day-nav ax-select-box.ax-calendar-year-select) .ax-editor-container{gap:0}:is(ax-calendar.ax-look-select .ax-calendar-view-header.ax-calendar-day-nav ax-select-box.ax-calendar-month-select,ax-calendar.ax-look-select .ax-calendar-view-header.ax-calendar-day-nav ax-select-box.ax-calendar-year-select) ax-dropdown-box.ax-editor-container{width:auto;justify-content:flex-start}:is(ax-calendar.ax-look-select .ax-calendar-view-header.ax-calendar-day-nav ax-select-box.ax-calendar-month-select,ax-calendar.ax-look-select .ax-calendar-view-header.ax-calendar-day-nav ax-select-box.ax-calendar-year-select) .ax-chips-container{width:auto;flex-shrink:0;flex-grow:0;flex-basis:auto}:is(ax-calendar.ax-look-select .ax-calendar-view-header.ax-calendar-day-nav ax-select-box.ax-calendar-month-select,ax-calendar.ax-look-select .ax-calendar-view-header.ax-calendar-day-nav ax-select-box.ax-calendar-year-select) .ax-chips-container .ax-chips{overflow:visible;text-overflow:unset}ax-calendar .ax-calendar-footer{display:flex;align-items:center;justify-content:center;margin-top:var(--ax-comp-calendar-footer-margin-t)}ax-calendar .ax-calendar-footer .ax-today-button{display:block;width:100%;cursor:pointer;text-align:center;font-size:var(--text-sm, .875rem);line-height:var(--tw-leading, var(--text-sm--line-height, calc(1.25 / .875)));padding-left:var(--ax-comp-calendar-footer-today-button-padding-x);padding-right:var(--ax-comp-calendar-footer-today-button-padding-x);height:var(--ax-comp-calendar-footer-today-button-height);border-radius:var(--ax-comp-calendar-footer-today-button-border-radius, var(--ax-sys-border-radius));color:rgba(var(--ax-comp-calendar-footer-today-button-text-color));background-color:rgba(var(--ax-comp-calendar-footer-today-button-bg-color))}ax-calendar .ax-calendar-footer .ax-today-button.ax-state-disabled{cursor:not-allowed;opacity:var(--ax-comp-calendar-slot-disabled-opacity)}ax-calendar .ax-calendar-footer .ax-today-button.ax-state-readonly{cursor:text;opacity:var(--ax-comp-calendar-slot-readonly-opacity)}ax-calendar .ax-calendar-footer .ax-today-button:is(ax-calendar .ax-calendar-footer .ax-today-button:hover):not(.ax-state-disabled){background-color:rgba(var(--ax-comp-calendar-footer-today-button-hover-bg-color))}ax-calendar .ax-calendar-footer .ax-today-button:is(ax-calendar .ax-calendar-footer .ax-today-button:focus,ax-calendar .ax-calendar-footer .ax-today-button:focus-visible):not(.ax-state-disabled){outline-color:rgba(var(--ax-comp-calendar-footer-today-button-focused-outline-color))}}.ax-calendar-picker{display:flex;width:100%}.ax-calendar-picker ax-picker{flex:1}.ax-overlay-pane ax-calendar{--tw-border-style: none;border-style:none}@property --tw-font-weight{syntax: \"*\"; inherits: false;}@property --tw-border-style{syntax: \"*\"; inherits: false; initial-value: solid;}@property --tw-shadow{syntax: \"*\"; inherits: false; initial-value: 0 0 #0000;}@property --tw-shadow-color{syntax: \"*\"; inherits: false;}@property --tw-shadow-alpha{syntax: \"<percentage>\"; inherits: false; initial-value: 100%;}@property --tw-inset-shadow{syntax: \"*\"; inherits: false; initial-value: 0 0 #0000;}@property --tw-inset-shadow-color{syntax: \"*\"; inherits: false;}@property --tw-inset-shadow-alpha{syntax: \"<percentage>\"; inherits: false; initial-value: 100%;}@property --tw-ring-color{syntax: \"*\"; inherits: false;}@property --tw-ring-shadow{syntax: \"*\"; inherits: false; initial-value: 0 0 #0000;}@property --tw-inset-ring-color{syntax: \"*\"; inherits: false;}@property --tw-inset-ring-shadow{syntax: \"*\"; inherits: false; initial-value: 0 0 #0000;}@property --tw-ring-inset{syntax: \"*\"; inherits: false;}@property --tw-ring-offset-width{syntax: \"<length>\"; inherits: false; initial-value: 0px;}@property --tw-ring-offset-color{syntax: \"*\"; inherits: false; initial-value: #fff;}@property --tw-ring-offset-shadow{syntax: \"*\"; inherits: false; initial-value: 0 0 #0000;}@layer properties{@supports ((-webkit-hyphens: none) and (not (margin-trim: inline))) or ((-moz-orient: inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-font-weight: initial;--tw-border-style: solid;--tw-shadow: 0 0 #0000;--tw-shadow-color: initial;--tw-shadow-alpha: 100%;--tw-inset-shadow: 0 0 #0000;--tw-inset-shadow-color: initial;--tw-inset-shadow-alpha: 100%;--tw-ring-color: initial;--tw-ring-shadow: 0 0 #0000;--tw-inset-ring-color: initial;--tw-inset-ring-shadow: 0 0 #0000;--tw-ring-inset: initial;--tw-ring-offset-width: 0px;--tw-ring-offset-color: #fff;--tw-ring-offset-shadow: 0 0 #0000}}}\n/*! tailwindcss v4.1.16 | MIT License | https://tailwindcss.com */\n"], dependencies: [{ kind: "directive", type: NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: AXRippleDirective, selector: "[axRipple]", inputs: ["axRipple", "axRippleColor"] }, { kind: "ngmodule", type: AXFormatModule }, { kind: "ngmodule", type: AXDateTimeModule }, { kind: "component", type: AXSelectBoxComponent, selector: "ax-select-box", inputs: ["disabled", "readonly", "tabIndex", "placeholder", "minValue", "maxValue", "value", "state", "name", "id", "type", "look", "multiple", "valueField", "textField", "disabledField", "textTemplate", "selectedItems", "isItemTruncated", "showItemTooltip", "itemHeight", "maxVisibleItems", "dataSource", "minRecordsForSearch", "caption", "itemTemplate", "selectedTemplate", "emptyTemplate", "loadingTemplate", "dropdownWidth", "searchBoxAutoFocus"], outputs: ["valueChange", "stateChange", "onValueChanged", "onBlur", "onFocus", "readonlyChange", "disabledChange", "onOpened", "onClosed", "onItemSelected", "onItemClick"] }, { 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: AXTooltipDirective, selector: "[axTooltip]", inputs: ["axTooltipDisabled", "axTooltip", "axTooltipContext", "axTooltipPlacement", "axTooltipOffsetX", "axTooltipOffsetY", "axTooltipOpenAfter", "axTooltipCloseAfter"] }, { kind: "pipe", type: AsyncPipe, name: "async" }, { kind: "pipe", type: AXTranslatorPipe, name: "translate" }, { kind: "pipe", type: i2.AXFormatPipe, name: "format" }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
1041
1068
  }
1042
1069
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.0.8", ngImport: i0, type: AXCalendarComponent, decorators: [{
1043
1070
  type: Component,
1044
- args: [{ selector: 'ax-calendar', encapsulation: ViewEncapsulation.None, inputs: [
1071
+ args: [{ selector: 'ax-calendar', encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, inputs: [
1045
1072
  'rtl',
1046
1073
  'readonly',
1047
1074
  'value',
@@ -1101,7 +1128,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.0.8", ngImpor
1101
1128
  AXSelectBoxComponent,
1102
1129
  FormsModule,
1103
1130
  AXTooltipDirective,
1104
- ], template: "<ng-content select=\"ax-header\"></ng-content>\n<div class=\"ax-calendar-body\">\n @for (v of views; let i = $index, first = $first, last = $last; track i) {\n @switch (activeView) {\n @case ('year') {\n @if (showNavigation) {\n <div class=\"ax-calendar-view-header\">\n <div class=\"ax-calendar-header-info\">\n <button\n type=\"button\"\n [attr.disabled]=\"disabled ? '' : null\"\n [attr.readonly]=\"readonly ? '' : null\"\n class=\"ax-general-button ax-button-rounded ax-state-disabled\"\n (click)=\"_handleNavClick($event, 'year')\"\n >\n {{ v.range.startTime | format: 'date' : { calendar: calendar(), format: 'YYYY' } | async }} -\n {{ v.range.endTime | format: 'date' : { calendar: calendar(), format: 'YYYY' } | async }}\n </button>\n </div>\n @if (last) {\n <div class=\"ax-calendar-header-buttons\">\n <button\n type=\"button\"\n [attr.disabled]=\"disabled ? '' : null\"\n [attr.readonly]=\"readonly ? '' : null\"\n class=\"ax-general-button-icon ax-button-rounded ax-button-icon ax-next\"\n (click)=\"_handlePrevClick()\"\n [title]=\"'@acorex:common.actions.prev' | translate | async\"\n >\n <i class=\"ax-icon ax-icon-chevron-left\"></i>\n </button>\n <button\n type=\"button\"\n [attr.disabled]=\"disabled ? '' : null\"\n [attr.readonly]=\"readonly ? '' : null\"\n class=\"ax-general-button-icon ax-button-rounded ax-button-icon\"\n (click)=\"_handleNextClick()\"\n [title]=\"'@acorex:common.actions.next' | translate | async\"\n >\n <i class=\"ax-icon ax-icon-chevron-right\"></i>\n </button>\n </div>\n }\n </div>\n }\n <div class=\"ax-calendar-slots ax-calendar-slots-year\" [ngClass]=\"{ 'ax-default': !yearCellTemplate }\">\n @for (slot of v.slots; track slot.date.date.getTime()) {\n <button\n tabindex=\"0\"\n class=\"ax-calendar-slot\"\n [class.ax-state-disabled]=\"disabled\"\n [ngClass]=\"slot.cssClass\"\n (click)=\"_handleSlotClick($event, slot)\"\n >\n @if (yearCellTemplate) {\n <div>\n <ng-container\n [ngTemplateOutlet]=\"yearCellTemplate\"\n [ngTemplateOutletContext]=\"{ $implicit: { slot: slot } }\"\n >\n </ng-container>\n </div>\n } @else {\n <div>\n {{ slot.text }}\n </div>\n }\n </button>\n }\n </div>\n }\n @case ('month') {\n @if (showNavigation) {\n <div class=\"ax-calendar-view-header\">\n <div class=\"ax-calendar-header-info\">\n <button\n type=\"button\"\n [attr.disabled]=\"disabled ? '' : null\"\n [attr.readonly]=\"readonly ? '' : null\"\n class=\"ax-general-button ax-button-rounded\"\n (click)=\"_handleNavClick($event, 'year')\"\n >\n {{ v.range.startTime | format: 'date' : { calendar: calendar(), format: 'YYYY' } | async }}\n </button>\n </div>\n @if (last) {\n <div class=\"ax-calendar-header-buttons\">\n <button\n type=\"button\"\n [attr.disabled]=\"disabled ? '' : null\"\n [attr.readonly]=\"readonly ? '' : null\"\n class=\"ax-general-button-icon ax-button-rounded ax-button-icon\"\n (click)=\"_handlePrevClick()\"\n [title]=\"'@acorex:common.actions.prev' | translate | async\"\n >\n <i class=\"ax-icon ax-icon-chevron-left\"></i>\n </button>\n <button\n type=\"button\"\n [attr.disabled]=\"disabled ? '' : null\"\n [attr.readonly]=\"readonly ? '' : null\"\n class=\"ax-general-button-icon ax-button-rounded ax-button-icon\"\n (click)=\"_handleNextClick()\"\n [title]=\"'@acorex:common.actions.next' | translate | async\"\n >\n <i class=\"ax-icon ax-icon-chevron-right\"></i>\n </button>\n </div>\n }\n </div>\n }\n\n <div class=\"ax-calendar-slots ax-calendar-slots-month\" [ngClass]=\"{ 'ax-default': !monthCellTemplate }\">\n @for (slot of v.slots; track slot.date.date.getTime()) {\n <button\n tabindex=\"0\"\n class=\"ax-calendar-slot\"\n [class.ax-state-disabled]=\"disabled\"\n [ngClass]=\"slot.cssClass\"\n (click)=\"_handleSlotClick($event, slot)\"\n >\n @if (monthCellTemplate) {\n <div>\n <ng-container\n [ngTemplateOutlet]=\"monthCellTemplate\"\n [ngTemplateOutletContext]=\"{ $implicit: { slot: slot } }\"\n >\n </ng-container>\n </div>\n } @else {\n <div [title]=\"slot.date | format: 'date' : { calendar: calendar(), format: 'MMMM YYYY' } | async\">\n {{ `@acorex:${getMonthName(slot.date, 'short')}` | translate | async }}\n </div>\n }\n </button>\n }\n </div>\n }\n @default {\n @if (showNavigation && look() === 'select' && last) {\n <div class=\"ax-calendar-view-header ax-calendar-day-nav\">\n <button\n type=\"button\"\n [attr.disabled]=\"disabled ? '' : null\"\n [attr.readonly]=\"readonly ? '' : null\"\n class=\"ax-general-button ax-button-rounded ax-button-icon ax-calendar-day-nav-prev\"\n (click)=\"_handlePrevClick()\"\n [title]=\"'@acorex:common.actions.prev' | translate | async\"\n >\n <i\n class=\"ax-icon\"\n [ngClass]=\"{\n 'ax-icon-chevron-left': !isRtl(),\n 'ax-icon-chevron-right': isRtl(),\n }\"\n ></i>\n </button>\n <div class=\"ax-calendar-day-nav-center\">\n <ax-select-box\n class=\"ax-calendar-month-select ax-sm\"\n look=\"none\"\n [disabled]=\"disabled\"\n [readonly]=\"readonly\"\n [dataSource]=\"_monthOptions\"\n textField=\"text\"\n valueField=\"id\"\n [ngModel]=\"_selectedMonthOption\"\n [isItemTruncated]=\"false\"\n dropdownWidth=\"110\"\n [maxVisibleItems]=\"12\"\n [itemHeight]=\"32\"\n (onValueChanged)=\"_handleMonthSelectChanged($event)\"\n (click)=\"$event.stopPropagation()\"\n ></ax-select-box>\n <ax-select-box\n class=\"ax-calendar-year-select ax-sm\"\n look=\"none\"\n [disabled]=\"disabled\"\n [readonly]=\"readonly\"\n [dataSource]=\"_yearOptions\"\n textField=\"text\"\n valueField=\"id\"\n [ngModel]=\"_selectedYearOption\"\n [isItemTruncated]=\"false\"\n dropdownWidth=\"72\"\n [maxVisibleItems]=\"10\"\n [itemHeight]=\"32\"\n (onValueChanged)=\"_handleYearSelectChanged($event)\"\n (click)=\"$event.stopPropagation()\"\n ></ax-select-box>\n </div>\n <button\n type=\"button\"\n [attr.disabled]=\"disabled ? '' : null\"\n [attr.readonly]=\"readonly ? '' : null\"\n class=\"ax-general-button ax-button-rounded ax-button-icon ax-calendar-day-nav-next\"\n (click)=\"_handleNextClick()\"\n [title]=\"'@acorex:common.actions.next' | translate | async\"\n >\n <i\n class=\"ax-icon\"\n [ngClass]=\"{\n 'ax-icon-chevron-right': !isRtl(),\n 'ax-icon-chevron-left': isRtl(),\n }\"\n ></i>\n </button>\n </div>\n }\n @if (showNavigation && look() === 'classic') {\n <div class=\"ax-calendar-view-header\">\n <div class=\"ax-calendar-header-info\">\n <button\n type=\"button\"\n [attr.disabled]=\"disabled ? '' : null\"\n [attr.readonly]=\"readonly ? '' : null\"\n class=\"ax-general-button ax-button-rounded\"\n (click)=\"_handleNavClick($event, 'year')\"\n >\n {{ v.range.startTime | format: 'date' : { calendar: calendar(), format: 'YYYY' } | async }}\n </button>\n <button\n type=\"button\"\n [attr.disabled]=\"disabled ? '' : null\"\n [attr.readonly]=\"readonly ? '' : null\"\n class=\"ax-general-button ax-button-rounded\"\n (click)=\"_handleNavClick($event, 'month')\"\n >\n {{ v.range.startTime | format: 'date' : { calendar: calendar(), format: 'MMMM' } | async }}\n </button>\n </div>\n @if (last) {\n <div class=\"ax-calendar-header-buttons\">\n <button\n type=\"button\"\n [attr.disabled]=\"disabled ? '' : null\"\n [attr.readonly]=\"readonly ? '' : null\"\n class=\"ax-general-button-icon ax-button-rounded ax-button-icon\"\n (click)=\"_handlePrevClick()\"\n [title]=\"'@acorex:common.actions.prev' | translate | async\"\n >\n <i class=\"ax-icon ax-icon-chevron-left\"></i>\n </button>\n <button\n type=\"button\"\n [attr.disabled]=\"disabled ? '' : null\"\n [attr.readonly]=\"readonly ? '' : null\"\n class=\"ax-general-button-icon ax-button-rounded ax-button-icon\"\n (click)=\"_handleNextClick()\"\n [title]=\"'@acorex:common.actions.next' | translate | async\"\n >\n <i class=\"ax-icon ax-icon-chevron-right\"></i>\n </button>\n </div>\n }\n </div>\n }\n <div class=\"ax-calendar-week\">\n @for (d of weekLayout(); track d) {\n <div>{{ '@acorex:dateTime.weekdays.short.' + d | translate | async }}</div>\n }\n </div>\n\n <div class=\"ax-calendar-slots ax-calendar-slots-day\" [ngClass]=\"{ 'ax-default': !dayCellTemplate }\">\n @for (slot of v.slots; track slot.date.date.getTime()) {\n <button\n tabindex=\"0\"\n class=\"ax-calendar-slot\"\n [ngClass]=\"slot.cssClass\"\n [class.ax-state-disabled]=\"disabled\"\n [class.ax-has-holiday-color]=\"!!slot.holidayColor\"\n [style.--ax-calendar-holiday-color]=\"slot.holidayColor ?? null\"\n (click)=\"_handleSlotClick($event, slot)\"\n [disabled]=\"disabled\"\n [axRipple]\n [axTooltip]=\"slot.tooltip ?? ''\"\n [axTooltipDisabled]=\"!slot.tooltip\"\n [title]=\"\n !slot.tooltip ? (slot.date | format: 'date' : { calendar: calendar(), format: 'long' } | async) : ''\n \"\n >\n @if (dayCellTemplate) {\n <div>\n <ng-container\n [ngTemplateOutlet]=\"dayCellTemplate\"\n [ngTemplateOutletContext]=\"{ $implicit: { slot: slot } }\"\n >\n </ng-container>\n </div>\n } @else {\n <div class=\"ax-calendar-day-slot-content\">\n {{ slot.text }}\n </div>\n }\n </button>\n }\n </div>\n }\n }\n }\n</div>\n<ng-content select=\"ax-footer\"></ng-content>\n", styles: ["@layer properties;html[dir=rtl] ax-calendar .ax-calendar-header-buttons .ax-icon{-moz-transform:scale(-1,1);-o-transform:scale(-1,1);-webkit-transform:scale(-1,1);transform:scaleX(-1)}@layer components{ax-calendar{display:block;width:100%;background-color:var(--color-lightest);color:var(--color-on-lightest);border-color:var(--color-border-lightest)}ax-calendar ax-popover{display:none}ax-calendar.ax-state-disabled .ax-calendar-slots{cursor:not-allowed;opacity:50%}ax-calendar.ax-state-readonly .ax-calendar-slots{cursor:text}ax-calendar .ax-calendar-header{display:flex;justify-content:space-between;padding-inline:calc(var(--spacing, .25rem) * 1);padding-top:calc(var(--spacing, .25rem) * 1)}ax-calendar .ax-calendar-header .ax-calendar-header-info{--tw-font-weight: var(--font-weight-medium, 500);font-weight:var(--font-weight-medium, 500)}ax-calendar .ax-calendar-header .ax-calendar-header-buttons{display:flex;align-items:center}ax-calendar .ax-calendar-body{display:flex;flex-direction:column;align-items:center;justify-content:center}@media(min-width:48rem){ax-calendar .ax-calendar-body{flex-direction:column}}ax-calendar .ax-calendar-body>div{width:100%;flex:1}@media(min-width:48rem){ax-calendar .ax-calendar-body>div{width:calc(var(--spacing, .25rem) * 80)}}ax-calendar .ax-calendar-body .ax-calendar-view-header{display:flex;justify-content:space-between;border-bottom-style:var(--tw-border-style);border-bottom-width:1px;border-color:rgba(var(--ax-sys-color-border-lightest-surface));padding:calc(var(--spacing, .25rem) * 4)}ax-calendar .ax-calendar-body .ax-calendar-view-header .ax-calendar-header-info{--tw-font-weight: var(--font-weight-medium, 500);font-weight:var(--font-weight-medium, 500)}ax-calendar .ax-calendar-body .ax-calendar-view-header .ax-calendar-header-buttons{display:flex;align-items:center}ax-calendar .ax-calendar-body .ax-calendar-slots{display:grid;gap:calc(var(--spacing, .25rem) * 1);padding:calc(var(--spacing, .25rem) * 4)}ax-calendar .ax-calendar-body .ax-calendar-slots .ax-calendar-slot{position:relative;display:flex;cursor:pointer;align-items:center;justify-content:center;border-radius:var(--ax-sys-border-radius);text-align:center;font-size:var(--text-sm, .875rem);line-height:var(--tw-leading, var(--text-sm--line-height, calc(1.25 / .875)));transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to;transition-timing-function:var(--tw-ease, var(--default-transition-timing-function, cubic-bezier(.4, 0, .2, 1)));transition-duration:var(--tw-duration, var(--default-transition-duration, .15s))}ax-calendar .ax-calendar-body .ax-calendar-slots .ax-calendar-slot:before{content:\"\";float:left;padding-top:100%}ax-calendar .ax-calendar-body .ax-calendar-slots .ax-calendar-slot:after{content:\"\";clear:both;display:block}ax-calendar .ax-calendar-body .ax-calendar-slots .ax-calendar-slot:hover:not(ax-calendar .ax-calendar-body .ax-calendar-slots .ax-calendar-slot:hover.ax-state-disabled,ax-calendar .ax-calendar-body .ax-calendar-slots .ax-calendar-slot:hover.ax-state-selected,ax-calendar .ax-calendar-body .ax-calendar-slots .ax-calendar-slot:hover.ax-state-holiday){background-color:rgba(var(--ax-sys-color-primary-surface));color:rgba(var(--ax-sys-color-on-primary-surface))}ax-calendar .ax-calendar-body .ax-calendar-slots .ax-calendar-slot:focus-visible:not(ax-calendar .ax-calendar-body .ax-calendar-slots .ax-calendar-slot:focus-visible.ax-state-disabled){--tw-ring-shadow: var(--tw-ring-inset,) 0 0 0 calc(3px + var(--tw-ring-offset-width)) var(--tw-ring-color, currentcolor);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow);--tw-ring-color: rgba(var(--ax-sys-color-primary-surface));--tw-outline-style: none;outline-style:none}@supports (color: color-mix(in lab,red,red)){ax-calendar .ax-calendar-body .ax-calendar-slots .ax-calendar-slot:focus-visible:not(ax-calendar .ax-calendar-body .ax-calendar-slots .ax-calendar-slot:focus-visible.ax-state-disabled){--tw-ring-color: color-mix(in oklab, rgba(var(--ax-sys-color-primary-surface)) 50%, transparent)}}ax-calendar .ax-calendar-body .ax-calendar-slots .ax-calendar-slot:focus-visible.ax-state-disabled{--tw-ring-shadow: var(--tw-ring-inset,) 0 0 0 calc(3px + var(--tw-ring-offset-width)) var(--tw-ring-color, currentcolor);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow);--tw-ring-color: color-mix(in srgb, #000 30%, transparent)}@supports (color: color-mix(in lab,red,red)){ax-calendar .ax-calendar-body .ax-calendar-slots .ax-calendar-slot:focus-visible.ax-state-disabled{--tw-ring-color: color-mix(in oklab, var(--color-black, #000) 30%, transparent)}}ax-calendar .ax-calendar-body .ax-calendar-slots .ax-calendar-slot:focus-visible.ax-state-disabled:where(.ax-dark,.ax-dark *):not(:where(.ax-light,.ax-light *)){--tw-ring-color: color-mix(in srgb, #fff 30%, transparent)}@supports (color: color-mix(in lab,red,red)){ax-calendar .ax-calendar-body .ax-calendar-slots .ax-calendar-slot:focus-visible.ax-state-disabled:where(.ax-dark,.ax-dark *):not(:where(.ax-light,.ax-light *)){--tw-ring-color: color-mix(in oklab, var(--color-white, #fff) 30%, transparent)}}ax-calendar .ax-calendar-body .ax-calendar-slots .ax-calendar-slot.ax-state-disabled{cursor:not-allowed;opacity:50%}ax-calendar .ax-calendar-body .ax-calendar-slots .ax-calendar-slot.ax-state-readonly{cursor:text;opacity:70%}ax-calendar .ax-calendar-body .ax-calendar-slots .ax-calendar-slot.ax-column-start-1{grid-column-start:1}ax-calendar .ax-calendar-body .ax-calendar-slots .ax-calendar-slot.ax-column-start-2{grid-column-start:2}ax-calendar .ax-calendar-body .ax-calendar-slots .ax-calendar-slot.ax-column-start-3{grid-column-start:3}ax-calendar .ax-calendar-body .ax-calendar-slots .ax-calendar-slot.ax-column-start-4{grid-column-start:4}ax-calendar .ax-calendar-body .ax-calendar-slots .ax-calendar-slot.ax-column-start-5{grid-column-start:5}ax-calendar .ax-calendar-body .ax-calendar-slots .ax-calendar-slot.ax-column-start-6{grid-column-start:6}ax-calendar .ax-calendar-body .ax-calendar-slots .ax-calendar-slot.ax-column-start-7{grid-column-start:7}ax-calendar .ax-calendar-body .ax-calendar-slots .ax-calendar-slot.ax-state-other{opacity:5%}ax-calendar .ax-calendar-body .ax-calendar-slots .ax-calendar-slot .ax-ripple{background-color:rgba(var(--ax-sys-color-primary-surface))}@supports (color: color-mix(in lab,red,red)){ax-calendar .ax-calendar-body .ax-calendar-slots .ax-calendar-slot .ax-ripple{background-color:color-mix(in oklab,rgba(var(--ax-sys-color-primary-surface)) 30%,transparent)}}ax-calendar .ax-calendar-body .ax-calendar-slots .ax-calendar-slot.ax-state-today{--tw-inset-ring-shadow: inset 0 0 0 2px var(--tw-inset-ring-color, currentcolor);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow);--tw-inset-ring-color: rgba(var(--ax-sys-color-primary-surface))}ax-calendar .ax-calendar-body .ax-calendar-slots .ax-calendar-slot.ax-state-today.ax-state-holiday:not(.ax-has-holiday-color){border-color:rgba(var(--ax-sys-color-danger-600))!important;--tw-inset-ring-color: rgba(var(--ax-sys-color-danger-600)) !important}ax-calendar .ax-calendar-body .ax-calendar-slots .ax-calendar-slot.ax-state-today.ax-state-holiday.ax-has-holiday-color{border-color:var(--ax-calendar-holiday-color)!important;--tw-inset-ring-color: var(--ax-calendar-holiday-color) !important}ax-calendar .ax-calendar-body .ax-calendar-slots .ax-calendar-slot.ax-state-today.ax-state-holiday.ax-has-holiday-color:not(.ax-state-selected){color:var(--ax-calendar-holiday-color)!important}ax-calendar .ax-calendar-body .ax-calendar-slots .ax-calendar-slot.ax-state-focused{border-style:var(--tw-border-style);border-width:1px;border-color:rgba(var(--ax-sys-color-border-lightest-surface))}ax-calendar .ax-calendar-body .ax-calendar-slots .ax-calendar-slot.ax-state-selected{background-color:var(--color-primary);color:var(--color-on-primary);border-color:var(--color-border-primary)}ax-calendar .ax-calendar-body .ax-calendar-slots .ax-calendar-slot.ax-state-selected.ax-state-holiday:not(.ax-has-holiday-color){background-color:var(--color-danger)!important;color:var(--color-on-danger)!important;border-color:var(--color-border-danger)!important}ax-calendar .ax-calendar-body .ax-calendar-slots .ax-calendar-slot.ax-state-holiday:not(.ax-has-holiday-color){color:rgba(var(--ax-sys-color-danger-600))}ax-calendar .ax-calendar-body .ax-calendar-slots .ax-calendar-slot.ax-state-holiday:not(.ax-has-holiday-color):hover:not(.ax-state-disabled,.ax-state-selected){background-color:var(--color-danger);color:var(--color-on-danger);border-color:var(--color-border-danger)}ax-calendar .ax-calendar-body .ax-calendar-slots .ax-calendar-slot.ax-state-holiday:not(.ax-has-holiday-color) .ax-ripple{background-color:rgba(var(--ax-sys-color-on-danger-surface))}@supports (color: color-mix(in lab,red,red)){ax-calendar .ax-calendar-body .ax-calendar-slots .ax-calendar-slot.ax-state-holiday:not(.ax-has-holiday-color) .ax-ripple{background-color:color-mix(in oklab,rgba(var(--ax-sys-color-on-danger-surface)) 30%,transparent)}}ax-calendar .ax-calendar-body .ax-calendar-slots .ax-calendar-slot.ax-state-holiday.ax-has-holiday-color{color:var(--ax-calendar-holiday-color)!important}ax-calendar .ax-calendar-body .ax-calendar-slots .ax-calendar-slot.ax-state-holiday.ax-has-holiday-color:hover:not(.ax-state-disabled){color:var(--ax-calendar-holiday-color)!important;background-color:var(--ax-calendar-holiday-color)!important;border-color:var(--ax-calendar-holiday-color)!important}@supports (color: color-mix(in lab,red,red)){ax-calendar .ax-calendar-body .ax-calendar-slots .ax-calendar-slot.ax-state-holiday.ax-has-holiday-color:hover:not(.ax-state-disabled){background-color:color-mix(in srgb,var(--ax-calendar-holiday-color) 14%,transparent)!important}}ax-calendar .ax-calendar-body .ax-calendar-slots .ax-calendar-slot.ax-state-holiday.ax-has-holiday-color.ax-state-selected{color:rgba(var(--ax-comp-calendar-slot-holiday-selected-text-color))!important;background-color:var(--ax-calendar-holiday-color)!important;border-color:var(--ax-calendar-holiday-color)!important}ax-calendar .ax-calendar-body .ax-calendar-slots .ax-calendar-slot.ax-state-holiday.ax-has-holiday-color.ax-state-selected:hover:not(.ax-state-disabled){color:rgba(var(--ax-comp-calendar-slot-holiday-selected-text-color))!important;background-color:var(--ax-calendar-holiday-color)!important;border-color:var(--ax-calendar-holiday-color)!important}@supports (color: color-mix(in lab,red,red)){ax-calendar .ax-calendar-body .ax-calendar-slots .ax-calendar-slot.ax-state-holiday.ax-has-holiday-color.ax-state-selected:hover:not(.ax-state-disabled){background-color:color-mix(in srgb,var(--ax-calendar-holiday-color) 82%,black)!important}}@supports (color: color-mix(in lab,red,red)){ax-calendar .ax-calendar-body .ax-calendar-slots .ax-calendar-slot.ax-state-holiday.ax-has-holiday-color.ax-state-selected:hover:not(.ax-state-disabled){border-color:color-mix(in srgb,var(--ax-calendar-holiday-color) 82%,black)!important}}ax-calendar .ax-calendar-body .ax-calendar-slots .ax-calendar-slot.ax-state-holiday.ax-has-holiday-color .ax-ripple{background-color:var(--ax-calendar-holiday-color)!important}@supports (color: color-mix(in lab,red,red)){ax-calendar .ax-calendar-body .ax-calendar-slots .ax-calendar-slot.ax-state-holiday.ax-has-holiday-color .ax-ripple{background-color:color-mix(in srgb,var(--ax-calendar-holiday-color) 30%,transparent)!important}}ax-calendar .ax-calendar-body .ax-calendar-slots .ax-calendar-slot.ax-state-holiday.ax-has-holiday-color .ax-calendar-day-slot-content{max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}ax-calendar .ax-calendar-body .ax-calendar-slots.ax-calendar-slots-day{grid-template-columns:repeat(7,minmax(0,1fr))}ax-calendar .ax-calendar-body .ax-calendar-slots.ax-calendar-slots-year,ax-calendar .ax-calendar-body .ax-calendar-slots.ax-calendar-slots-month{grid-template-columns:repeat(4,minmax(0,1fr))}ax-calendar .ax-calendar-body .ax-calendar-week{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));padding-top:var(--ax-comp-calendar-week-padding-t, .75rem);padding-left:var(--ax-comp-calendar-week-padding-x, .5rem);padding-right:var(--ax-comp-calendar-week-padding-x, .5rem)}ax-calendar .ax-calendar-body .ax-calendar-week>div{position:relative;display:flex;cursor:pointer;align-items:center;justify-content:center;text-align:center;font-size:var(--text-sm, .875rem);line-height:var(--tw-leading, var(--text-sm--line-height, calc(1.25 / .875)))}ax-calendar.ax-look-select .ax-calendar-view-header.ax-calendar-day-nav{display:grid;align-items:center;gap:calc(var(--spacing, .25rem) * 1);grid-template-columns:auto 1fr auto}ax-calendar.ax-look-select .ax-calendar-view-header.ax-calendar-day-nav .ax-icon{font-size:.875rem}ax-calendar.ax-look-select .ax-calendar-view-header.ax-calendar-day-nav .ax-calendar-day-nav-prev{justify-self:start}ax-calendar.ax-look-select .ax-calendar-view-header.ax-calendar-day-nav .ax-calendar-day-nav-center{display:flex;align-items:center;justify-content:center;gap:calc(var(--spacing, .25rem) * 1)}ax-calendar.ax-look-select .ax-calendar-view-header.ax-calendar-day-nav .ax-calendar-day-nav-next{justify-self:end}ax-calendar.ax-look-select .ax-calendar-view-header.ax-calendar-day-nav ax-select-box.ax-calendar-month-select,ax-calendar.ax-look-select .ax-calendar-view-header.ax-calendar-day-nav ax-select-box.ax-calendar-year-select{display:inline-block;width:auto;flex-shrink:0;flex-grow:0;flex-basis:auto}:is(ax-calendar.ax-look-select .ax-calendar-view-header.ax-calendar-day-nav ax-select-box.ax-calendar-month-select,ax-calendar.ax-look-select .ax-calendar-view-header.ax-calendar-day-nav ax-select-box.ax-calendar-year-select) .ax-icon{font-size:.75rem}:is(ax-calendar.ax-look-select .ax-calendar-view-header.ax-calendar-day-nav ax-select-box.ax-calendar-month-select,ax-calendar.ax-look-select .ax-calendar-view-header.ax-calendar-day-nav ax-select-box.ax-calendar-year-select) .ax-editor-container{gap:0}:is(ax-calendar.ax-look-select .ax-calendar-view-header.ax-calendar-day-nav ax-select-box.ax-calendar-month-select,ax-calendar.ax-look-select .ax-calendar-view-header.ax-calendar-day-nav ax-select-box.ax-calendar-year-select) ax-dropdown-box.ax-editor-container{width:auto;justify-content:flex-start}:is(ax-calendar.ax-look-select .ax-calendar-view-header.ax-calendar-day-nav ax-select-box.ax-calendar-month-select,ax-calendar.ax-look-select .ax-calendar-view-header.ax-calendar-day-nav ax-select-box.ax-calendar-year-select) .ax-chips-container{width:auto;flex-shrink:0;flex-grow:0;flex-basis:auto}:is(ax-calendar.ax-look-select .ax-calendar-view-header.ax-calendar-day-nav ax-select-box.ax-calendar-month-select,ax-calendar.ax-look-select .ax-calendar-view-header.ax-calendar-day-nav ax-select-box.ax-calendar-year-select) .ax-chips-container .ax-chips{overflow:visible;text-overflow:unset}ax-calendar .ax-calendar-footer{display:flex;align-items:center;justify-content:center;margin-top:var(--ax-comp-calendar-footer-margin-t)}ax-calendar .ax-calendar-footer .ax-today-button{display:block;width:100%;cursor:pointer;text-align:center;font-size:var(--text-sm, .875rem);line-height:var(--tw-leading, var(--text-sm--line-height, calc(1.25 / .875)));padding-left:var(--ax-comp-calendar-footer-today-button-padding-x);padding-right:var(--ax-comp-calendar-footer-today-button-padding-x);height:var(--ax-comp-calendar-footer-today-button-height);border-radius:var(--ax-comp-calendar-footer-today-button-border-radius, var(--ax-sys-border-radius));color:rgba(var(--ax-comp-calendar-footer-today-button-text-color));background-color:rgba(var(--ax-comp-calendar-footer-today-button-bg-color))}ax-calendar .ax-calendar-footer .ax-today-button.ax-state-disabled{cursor:not-allowed;opacity:var(--ax-comp-calendar-slot-disabled-opacity)}ax-calendar .ax-calendar-footer .ax-today-button.ax-state-readonly{cursor:text;opacity:var(--ax-comp-calendar-slot-readonly-opacity)}ax-calendar .ax-calendar-footer .ax-today-button:is(ax-calendar .ax-calendar-footer .ax-today-button:hover):not(.ax-state-disabled){background-color:rgba(var(--ax-comp-calendar-footer-today-button-hover-bg-color))}ax-calendar .ax-calendar-footer .ax-today-button:is(ax-calendar .ax-calendar-footer .ax-today-button:focus,ax-calendar .ax-calendar-footer .ax-today-button:focus-visible):not(.ax-state-disabled){outline-color:rgba(var(--ax-comp-calendar-footer-today-button-focused-outline-color))}}.ax-calendar-picker{display:flex;width:100%}.ax-calendar-picker ax-picker{flex:1}.ax-overlay-pane ax-calendar{--tw-border-style: none;border-style:none}@property --tw-font-weight{syntax: \"*\"; inherits: false;}@property --tw-border-style{syntax: \"*\"; inherits: false; initial-value: solid;}@property --tw-shadow{syntax: \"*\"; inherits: false; initial-value: 0 0 #0000;}@property --tw-shadow-color{syntax: \"*\"; inherits: false;}@property --tw-shadow-alpha{syntax: \"<percentage>\"; inherits: false; initial-value: 100%;}@property --tw-inset-shadow{syntax: \"*\"; inherits: false; initial-value: 0 0 #0000;}@property --tw-inset-shadow-color{syntax: \"*\"; inherits: false;}@property --tw-inset-shadow-alpha{syntax: \"<percentage>\"; inherits: false; initial-value: 100%;}@property --tw-ring-color{syntax: \"*\"; inherits: false;}@property --tw-ring-shadow{syntax: \"*\"; inherits: false; initial-value: 0 0 #0000;}@property --tw-inset-ring-color{syntax: \"*\"; inherits: false;}@property --tw-inset-ring-shadow{syntax: \"*\"; inherits: false; initial-value: 0 0 #0000;}@property --tw-ring-inset{syntax: \"*\"; inherits: false;}@property --tw-ring-offset-width{syntax: \"<length>\"; inherits: false; initial-value: 0px;}@property --tw-ring-offset-color{syntax: \"*\"; inherits: false; initial-value: #fff;}@property --tw-ring-offset-shadow{syntax: \"*\"; inherits: false; initial-value: 0 0 #0000;}@layer properties{@supports ((-webkit-hyphens: none) and (not (margin-trim: inline))) or ((-moz-orient: inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-font-weight: initial;--tw-border-style: solid;--tw-shadow: 0 0 #0000;--tw-shadow-color: initial;--tw-shadow-alpha: 100%;--tw-inset-shadow: 0 0 #0000;--tw-inset-shadow-color: initial;--tw-inset-shadow-alpha: 100%;--tw-ring-color: initial;--tw-ring-shadow: 0 0 #0000;--tw-inset-ring-color: initial;--tw-inset-ring-shadow: 0 0 #0000;--tw-ring-inset: initial;--tw-ring-offset-width: 0px;--tw-ring-offset-color: #fff;--tw-ring-offset-shadow: 0 0 #0000}}}\n/*! tailwindcss v4.1.16 | MIT License | https://tailwindcss.com */\n"] }]
1131
+ ], template: "<ng-content select=\"ax-header\"></ng-content>\n<div class=\"ax-calendar-body\">\n @for (v of views; let i = $index, first = $first, last = $last; track i) {\n @switch (activeView) {\n @case ('year') {\n @if (showNavigation) {\n <div class=\"ax-calendar-view-header\">\n <div class=\"ax-calendar-header-info\">\n <button\n type=\"button\"\n [attr.disabled]=\"disabled ? '' : null\"\n [attr.readonly]=\"readonly ? '' : null\"\n class=\"ax-general-button ax-button-rounded ax-state-disabled\"\n (click)=\"_handleNavClick($event, 'year')\"\n >\n {{ v.range.startTime | format: 'date' : { calendar: calendarSystem(), format: 'YYYY' } | async }} -\n {{ v.range.endTime | format: 'date' : { calendar: calendarSystem(), format: 'YYYY' } | async }}\n </button>\n </div>\n @if (last) {\n <div class=\"ax-calendar-header-buttons\">\n <button\n type=\"button\"\n [attr.disabled]=\"disabled ? '' : null\"\n [attr.readonly]=\"readonly ? '' : null\"\n class=\"ax-general-button-icon ax-button-rounded ax-button-icon ax-next\"\n (click)=\"_handlePrevClick()\"\n [title]=\"'@acorex:common.actions.prev' | translate | async\"\n >\n <i class=\"ax-icon ax-icon-chevron-left\"></i>\n </button>\n <button\n type=\"button\"\n [attr.disabled]=\"disabled ? '' : null\"\n [attr.readonly]=\"readonly ? '' : null\"\n class=\"ax-general-button-icon ax-button-rounded ax-button-icon\"\n (click)=\"_handleNextClick()\"\n [title]=\"'@acorex:common.actions.next' | translate | async\"\n >\n <i class=\"ax-icon ax-icon-chevron-right\"></i>\n </button>\n </div>\n }\n </div>\n }\n <div class=\"ax-calendar-slots ax-calendar-slots-year\" [ngClass]=\"{ 'ax-default': !yearCellTemplate }\">\n @for (slot of v.slots; track slot.date.date.getTime()) {\n <button\n tabindex=\"0\"\n class=\"ax-calendar-slot\"\n [class.ax-state-disabled]=\"disabled\"\n [ngClass]=\"slot.cssClass\"\n (click)=\"_handleSlotClick($event, slot)\"\n >\n @if (yearCellTemplate) {\n <div>\n <ng-container\n [ngTemplateOutlet]=\"yearCellTemplate\"\n [ngTemplateOutletContext]=\"{ $implicit: { slot: slot } }\"\n >\n </ng-container>\n </div>\n } @else {\n <div>\n {{ slot.text }}\n </div>\n }\n </button>\n }\n </div>\n }\n @case ('month') {\n @if (showNavigation) {\n <div class=\"ax-calendar-view-header\">\n <div class=\"ax-calendar-header-info\">\n <button\n type=\"button\"\n [attr.disabled]=\"disabled ? '' : null\"\n [attr.readonly]=\"readonly ? '' : null\"\n class=\"ax-general-button ax-button-rounded\"\n (click)=\"_handleNavClick($event, 'year')\"\n >\n {{ v.range.startTime | format: 'date' : { calendar: calendarSystem(), format: 'YYYY' } | async }}\n </button>\n </div>\n @if (last) {\n <div class=\"ax-calendar-header-buttons\">\n <button\n type=\"button\"\n [attr.disabled]=\"disabled ? '' : null\"\n [attr.readonly]=\"readonly ? '' : null\"\n class=\"ax-general-button-icon ax-button-rounded ax-button-icon\"\n (click)=\"_handlePrevClick()\"\n [title]=\"'@acorex:common.actions.prev' | translate | async\"\n >\n <i class=\"ax-icon ax-icon-chevron-left\"></i>\n </button>\n <button\n type=\"button\"\n [attr.disabled]=\"disabled ? '' : null\"\n [attr.readonly]=\"readonly ? '' : null\"\n class=\"ax-general-button-icon ax-button-rounded ax-button-icon\"\n (click)=\"_handleNextClick()\"\n [title]=\"'@acorex:common.actions.next' | translate | async\"\n >\n <i class=\"ax-icon ax-icon-chevron-right\"></i>\n </button>\n </div>\n }\n </div>\n }\n\n <div class=\"ax-calendar-slots ax-calendar-slots-month\" [ngClass]=\"{ 'ax-default': !monthCellTemplate }\">\n @for (slot of v.slots; track slot.date.date.getTime()) {\n <button\n tabindex=\"0\"\n class=\"ax-calendar-slot\"\n [class.ax-state-disabled]=\"disabled\"\n [ngClass]=\"slot.cssClass\"\n (click)=\"_handleSlotClick($event, slot)\"\n >\n @if (monthCellTemplate) {\n <div>\n <ng-container\n [ngTemplateOutlet]=\"monthCellTemplate\"\n [ngTemplateOutletContext]=\"{ $implicit: { slot: slot } }\"\n >\n </ng-container>\n </div>\n } @else {\n <div [title]=\"slot.date | format: 'date' : { calendar: calendarSystem(), format: 'MMMM YYYY' } | async\">\n {{ getMonthName(slot.date, 'short') }}\n </div>\n }\n </button>\n }\n </div>\n }\n @default {\n @if (showNavigation && look() === 'select' && last) {\n <div class=\"ax-calendar-view-header ax-calendar-day-nav\">\n <button\n type=\"button\"\n [attr.disabled]=\"disabled ? '' : null\"\n [attr.readonly]=\"readonly ? '' : null\"\n class=\"ax-general-button ax-button-rounded ax-button-icon ax-calendar-day-nav-prev\"\n (click)=\"_handlePrevClick()\"\n [title]=\"'@acorex:common.actions.prev' | translate | async\"\n >\n <i\n class=\"ax-icon\"\n [ngClass]=\"{\n 'ax-icon-chevron-left': !isRtl(),\n 'ax-icon-chevron-right': isRtl(),\n }\"\n ></i>\n </button>\n <div class=\"ax-calendar-day-nav-center\">\n <ax-select-box\n class=\"ax-calendar-month-select ax-sm\"\n look=\"none\"\n [disabled]=\"disabled\"\n [readonly]=\"readonly\"\n [dataSource]=\"_monthOptions\"\n textField=\"text\"\n valueField=\"id\"\n [ngModel]=\"_selectedMonthOption\"\n [isItemTruncated]=\"false\"\n dropdownWidth=\"110\"\n [maxVisibleItems]=\"12\"\n [itemHeight]=\"32\"\n (onValueChanged)=\"_handleMonthSelectChanged($event)\"\n (click)=\"$event.stopPropagation()\"\n ></ax-select-box>\n <ax-select-box\n class=\"ax-calendar-year-select ax-sm\"\n look=\"none\"\n [disabled]=\"disabled\"\n [readonly]=\"readonly\"\n [dataSource]=\"_yearOptions\"\n textField=\"text\"\n valueField=\"id\"\n [ngModel]=\"_selectedYearOption\"\n [isItemTruncated]=\"false\"\n dropdownWidth=\"72\"\n [maxVisibleItems]=\"10\"\n [itemHeight]=\"32\"\n (onValueChanged)=\"_handleYearSelectChanged($event)\"\n (click)=\"$event.stopPropagation()\"\n ></ax-select-box>\n </div>\n <button\n type=\"button\"\n [attr.disabled]=\"disabled ? '' : null\"\n [attr.readonly]=\"readonly ? '' : null\"\n class=\"ax-general-button ax-button-rounded ax-button-icon ax-calendar-day-nav-next\"\n (click)=\"_handleNextClick()\"\n [title]=\"'@acorex:common.actions.next' | translate | async\"\n >\n <i\n class=\"ax-icon\"\n [ngClass]=\"{\n 'ax-icon-chevron-right': !isRtl(),\n 'ax-icon-chevron-left': isRtl(),\n }\"\n ></i>\n </button>\n </div>\n }\n @if (showNavigation && look() === 'classic') {\n <div class=\"ax-calendar-view-header\">\n <div class=\"ax-calendar-header-info\">\n <button\n type=\"button\"\n [attr.disabled]=\"disabled ? '' : null\"\n [attr.readonly]=\"readonly ? '' : null\"\n class=\"ax-general-button ax-button-rounded\"\n (click)=\"_handleNavClick($event, 'year')\"\n >\n {{ v.range.startTime | format: 'date' : { calendar: calendarSystem(), format: 'YYYY' } | async }}\n </button>\n <button\n type=\"button\"\n [attr.disabled]=\"disabled ? '' : null\"\n [attr.readonly]=\"readonly ? '' : null\"\n class=\"ax-general-button ax-button-rounded\"\n (click)=\"_handleNavClick($event, 'month')\"\n >\n {{ v.range.startTime | format: 'date' : { calendar: calendarSystem(), format: 'MMMM' } | async }}\n </button>\n </div>\n @if (last) {\n <div class=\"ax-calendar-header-buttons\">\n <button\n type=\"button\"\n [attr.disabled]=\"disabled ? '' : null\"\n [attr.readonly]=\"readonly ? '' : null\"\n class=\"ax-general-button-icon ax-button-rounded ax-button-icon\"\n (click)=\"_handlePrevClick()\"\n [title]=\"'@acorex:common.actions.prev' | translate | async\"\n >\n <i class=\"ax-icon ax-icon-chevron-left\"></i>\n </button>\n <button\n type=\"button\"\n [attr.disabled]=\"disabled ? '' : null\"\n [attr.readonly]=\"readonly ? '' : null\"\n class=\"ax-general-button-icon ax-button-rounded ax-button-icon\"\n (click)=\"_handleNextClick()\"\n [title]=\"'@acorex:common.actions.next' | translate | async\"\n >\n <i class=\"ax-icon ax-icon-chevron-right\"></i>\n </button>\n </div>\n }\n </div>\n }\n <div class=\"ax-calendar-week\">\n @for (d of weekLayout(); track d) {\n <div>{{ '@acorex:dateTime.weekdays.short.' + d | translate | async }}</div>\n }\n </div>\n\n <div class=\"ax-calendar-slots ax-calendar-slots-day\" [ngClass]=\"{ 'ax-default': !dayCellTemplate }\">\n @for (slot of v.slots; track slot.date.date.getTime()) {\n <button\n tabindex=\"0\"\n class=\"ax-calendar-slot\"\n [ngClass]=\"slot.cssClass\"\n [class.ax-state-disabled]=\"disabled\"\n [class.ax-has-holiday-color]=\"!!slot.holidayColor\"\n [style.--ax-calendar-holiday-color]=\"slot.holidayColor ?? null\"\n (click)=\"_handleSlotClick($event, slot)\"\n [disabled]=\"disabled\"\n [axRipple]\n [axTooltip]=\"slot.tooltip ?? ''\"\n [axTooltipDisabled]=\"!slot.tooltip\"\n [title]=\"\n !slot.tooltip ? (slot.date | format: 'date' : { calendar: calendarSystem(), format: 'long' } | async) : ''\n \"\n >\n @if (dayCellTemplate) {\n <div>\n <ng-container\n [ngTemplateOutlet]=\"dayCellTemplate\"\n [ngTemplateOutletContext]=\"{ $implicit: { slot: slot } }\"\n >\n </ng-container>\n </div>\n } @else {\n <div class=\"ax-calendar-day-slot-content\">\n {{ slot.text }}\n </div>\n }\n </button>\n }\n </div>\n }\n }\n }\n</div>\n<ng-content select=\"ax-footer\"></ng-content>\n", styles: ["@layer properties;html[dir=rtl] ax-calendar .ax-calendar-header-buttons .ax-icon{-moz-transform:scale(-1,1);-o-transform:scale(-1,1);-webkit-transform:scale(-1,1);transform:scaleX(-1)}@layer components{ax-calendar{display:block;width:100%;background-color:var(--color-lightest);color:var(--color-on-lightest);border-color:var(--color-border-lightest)}ax-calendar ax-popover{display:none}ax-calendar.ax-state-disabled .ax-calendar-slots{cursor:not-allowed;opacity:50%}ax-calendar.ax-state-readonly .ax-calendar-slots{cursor:text}ax-calendar .ax-calendar-header{display:flex;justify-content:space-between;padding-inline:calc(var(--spacing, .25rem) * 1);padding-top:calc(var(--spacing, .25rem) * 1)}ax-calendar .ax-calendar-header .ax-calendar-header-info{--tw-font-weight: var(--font-weight-medium, 500);font-weight:var(--font-weight-medium, 500)}ax-calendar .ax-calendar-header .ax-calendar-header-buttons{display:flex;align-items:center}ax-calendar .ax-calendar-body{display:flex;flex-direction:column;align-items:center;justify-content:center}@media(min-width:48rem){ax-calendar .ax-calendar-body{flex-direction:column}}ax-calendar .ax-calendar-body>div{width:100%;flex:1}@media(min-width:48rem){ax-calendar .ax-calendar-body>div{width:calc(var(--spacing, .25rem) * 80)}}ax-calendar .ax-calendar-body .ax-calendar-view-header{display:flex;justify-content:space-between;border-bottom-style:var(--tw-border-style);border-bottom-width:1px;border-color:rgba(var(--ax-sys-color-border-lightest-surface));padding:calc(var(--spacing, .25rem) * 4)}ax-calendar .ax-calendar-body .ax-calendar-view-header .ax-calendar-header-info{--tw-font-weight: var(--font-weight-medium, 500);font-weight:var(--font-weight-medium, 500)}ax-calendar .ax-calendar-body .ax-calendar-view-header .ax-calendar-header-buttons{display:flex;align-items:center}ax-calendar .ax-calendar-body .ax-calendar-slots{display:grid;gap:calc(var(--spacing, .25rem) * 1);padding:calc(var(--spacing, .25rem) * 4)}ax-calendar .ax-calendar-body .ax-calendar-slots .ax-calendar-slot{position:relative;display:flex;cursor:pointer;align-items:center;justify-content:center;border-radius:var(--ax-sys-border-radius);text-align:center;font-size:var(--text-sm, .875rem);line-height:var(--tw-leading, var(--text-sm--line-height, calc(1.25 / .875)));transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to;transition-timing-function:var(--tw-ease, var(--default-transition-timing-function, cubic-bezier(.4, 0, .2, 1)));transition-duration:var(--tw-duration, var(--default-transition-duration, .15s))}ax-calendar .ax-calendar-body .ax-calendar-slots .ax-calendar-slot:before{content:\"\";float:left;padding-top:100%}ax-calendar .ax-calendar-body .ax-calendar-slots .ax-calendar-slot:after{content:\"\";clear:both;display:block}ax-calendar .ax-calendar-body .ax-calendar-slots .ax-calendar-slot:hover:not(ax-calendar .ax-calendar-body .ax-calendar-slots .ax-calendar-slot:hover.ax-state-disabled,ax-calendar .ax-calendar-body .ax-calendar-slots .ax-calendar-slot:hover.ax-state-selected,ax-calendar .ax-calendar-body .ax-calendar-slots .ax-calendar-slot:hover.ax-state-holiday){background-color:rgba(var(--ax-sys-color-primary-surface));color:rgba(var(--ax-sys-color-on-primary-surface))}ax-calendar .ax-calendar-body .ax-calendar-slots .ax-calendar-slot:focus-visible:not(ax-calendar .ax-calendar-body .ax-calendar-slots .ax-calendar-slot:focus-visible.ax-state-disabled){--tw-ring-shadow: var(--tw-ring-inset,) 0 0 0 calc(3px + var(--tw-ring-offset-width)) var(--tw-ring-color, currentcolor);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow);--tw-ring-color: rgba(var(--ax-sys-color-primary-surface));--tw-outline-style: none;outline-style:none}@supports (color: color-mix(in lab,red,red)){ax-calendar .ax-calendar-body .ax-calendar-slots .ax-calendar-slot:focus-visible:not(ax-calendar .ax-calendar-body .ax-calendar-slots .ax-calendar-slot:focus-visible.ax-state-disabled){--tw-ring-color: color-mix(in oklab, rgba(var(--ax-sys-color-primary-surface)) 50%, transparent)}}ax-calendar .ax-calendar-body .ax-calendar-slots .ax-calendar-slot:focus-visible.ax-state-disabled{--tw-ring-shadow: var(--tw-ring-inset,) 0 0 0 calc(3px + var(--tw-ring-offset-width)) var(--tw-ring-color, currentcolor);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow);--tw-ring-color: color-mix(in srgb, #000 30%, transparent)}@supports (color: color-mix(in lab,red,red)){ax-calendar .ax-calendar-body .ax-calendar-slots .ax-calendar-slot:focus-visible.ax-state-disabled{--tw-ring-color: color-mix(in oklab, var(--color-black, #000) 30%, transparent)}}ax-calendar .ax-calendar-body .ax-calendar-slots .ax-calendar-slot:focus-visible.ax-state-disabled:where(.ax-dark,.ax-dark *):not(:where(.ax-light,.ax-light *)){--tw-ring-color: color-mix(in srgb, #fff 30%, transparent)}@supports (color: color-mix(in lab,red,red)){ax-calendar .ax-calendar-body .ax-calendar-slots .ax-calendar-slot:focus-visible.ax-state-disabled:where(.ax-dark,.ax-dark *):not(:where(.ax-light,.ax-light *)){--tw-ring-color: color-mix(in oklab, var(--color-white, #fff) 30%, transparent)}}ax-calendar .ax-calendar-body .ax-calendar-slots .ax-calendar-slot.ax-state-disabled{cursor:not-allowed;opacity:50%}ax-calendar .ax-calendar-body .ax-calendar-slots .ax-calendar-slot.ax-state-readonly{cursor:text;opacity:70%}ax-calendar .ax-calendar-body .ax-calendar-slots .ax-calendar-slot.ax-column-start-1{grid-column-start:1}ax-calendar .ax-calendar-body .ax-calendar-slots .ax-calendar-slot.ax-column-start-2{grid-column-start:2}ax-calendar .ax-calendar-body .ax-calendar-slots .ax-calendar-slot.ax-column-start-3{grid-column-start:3}ax-calendar .ax-calendar-body .ax-calendar-slots .ax-calendar-slot.ax-column-start-4{grid-column-start:4}ax-calendar .ax-calendar-body .ax-calendar-slots .ax-calendar-slot.ax-column-start-5{grid-column-start:5}ax-calendar .ax-calendar-body .ax-calendar-slots .ax-calendar-slot.ax-column-start-6{grid-column-start:6}ax-calendar .ax-calendar-body .ax-calendar-slots .ax-calendar-slot.ax-column-start-7{grid-column-start:7}ax-calendar .ax-calendar-body .ax-calendar-slots .ax-calendar-slot.ax-state-other{opacity:5%}ax-calendar .ax-calendar-body .ax-calendar-slots .ax-calendar-slot .ax-ripple{background-color:rgba(var(--ax-sys-color-primary-surface))}@supports (color: color-mix(in lab,red,red)){ax-calendar .ax-calendar-body .ax-calendar-slots .ax-calendar-slot .ax-ripple{background-color:color-mix(in oklab,rgba(var(--ax-sys-color-primary-surface)) 30%,transparent)}}ax-calendar .ax-calendar-body .ax-calendar-slots .ax-calendar-slot.ax-state-today{--tw-inset-ring-shadow: inset 0 0 0 2px var(--tw-inset-ring-color, currentcolor);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow);--tw-inset-ring-color: rgba(var(--ax-sys-color-primary-surface))}ax-calendar .ax-calendar-body .ax-calendar-slots .ax-calendar-slot.ax-state-today.ax-state-holiday:not(.ax-has-holiday-color){border-color:rgba(var(--ax-sys-color-danger-600))!important;--tw-inset-ring-color: rgba(var(--ax-sys-color-danger-600)) !important}ax-calendar .ax-calendar-body .ax-calendar-slots .ax-calendar-slot.ax-state-today.ax-state-holiday.ax-has-holiday-color{border-color:var(--ax-calendar-holiday-color)!important;--tw-inset-ring-color: var(--ax-calendar-holiday-color) !important}ax-calendar .ax-calendar-body .ax-calendar-slots .ax-calendar-slot.ax-state-today.ax-state-holiday.ax-has-holiday-color:not(.ax-state-selected){color:var(--ax-calendar-holiday-color)!important}ax-calendar .ax-calendar-body .ax-calendar-slots .ax-calendar-slot.ax-state-focused{border-style:var(--tw-border-style);border-width:1px;border-color:rgba(var(--ax-sys-color-border-lightest-surface))}ax-calendar .ax-calendar-body .ax-calendar-slots .ax-calendar-slot.ax-state-selected{background-color:var(--color-primary);color:var(--color-on-primary);border-color:var(--color-border-primary)}ax-calendar .ax-calendar-body .ax-calendar-slots .ax-calendar-slot.ax-state-selected.ax-state-holiday:not(.ax-has-holiday-color){background-color:var(--color-danger)!important;color:var(--color-on-danger)!important;border-color:var(--color-border-danger)!important}ax-calendar .ax-calendar-body .ax-calendar-slots .ax-calendar-slot.ax-state-holiday:not(.ax-has-holiday-color){color:rgba(var(--ax-sys-color-danger-600))}ax-calendar .ax-calendar-body .ax-calendar-slots .ax-calendar-slot.ax-state-holiday:not(.ax-has-holiday-color):hover:not(.ax-state-disabled,.ax-state-selected){background-color:var(--color-danger);color:var(--color-on-danger);border-color:var(--color-border-danger)}ax-calendar .ax-calendar-body .ax-calendar-slots .ax-calendar-slot.ax-state-holiday:not(.ax-has-holiday-color) .ax-ripple{background-color:rgba(var(--ax-sys-color-on-danger-surface))}@supports (color: color-mix(in lab,red,red)){ax-calendar .ax-calendar-body .ax-calendar-slots .ax-calendar-slot.ax-state-holiday:not(.ax-has-holiday-color) .ax-ripple{background-color:color-mix(in oklab,rgba(var(--ax-sys-color-on-danger-surface)) 30%,transparent)}}ax-calendar .ax-calendar-body .ax-calendar-slots .ax-calendar-slot.ax-state-holiday.ax-has-holiday-color{color:var(--ax-calendar-holiday-color)!important}ax-calendar .ax-calendar-body .ax-calendar-slots .ax-calendar-slot.ax-state-holiday.ax-has-holiday-color:hover:not(.ax-state-disabled){color:var(--ax-calendar-holiday-color)!important;background-color:var(--ax-calendar-holiday-color)!important;border-color:var(--ax-calendar-holiday-color)!important}@supports (color: color-mix(in lab,red,red)){ax-calendar .ax-calendar-body .ax-calendar-slots .ax-calendar-slot.ax-state-holiday.ax-has-holiday-color:hover:not(.ax-state-disabled){background-color:color-mix(in srgb,var(--ax-calendar-holiday-color) 14%,transparent)!important}}ax-calendar .ax-calendar-body .ax-calendar-slots .ax-calendar-slot.ax-state-holiday.ax-has-holiday-color.ax-state-selected{color:rgba(var(--ax-comp-calendar-slot-holiday-selected-text-color))!important;background-color:var(--ax-calendar-holiday-color)!important;border-color:var(--ax-calendar-holiday-color)!important}ax-calendar .ax-calendar-body .ax-calendar-slots .ax-calendar-slot.ax-state-holiday.ax-has-holiday-color.ax-state-selected:hover:not(.ax-state-disabled){color:rgba(var(--ax-comp-calendar-slot-holiday-selected-text-color))!important;background-color:var(--ax-calendar-holiday-color)!important;border-color:var(--ax-calendar-holiday-color)!important}@supports (color: color-mix(in lab,red,red)){ax-calendar .ax-calendar-body .ax-calendar-slots .ax-calendar-slot.ax-state-holiday.ax-has-holiday-color.ax-state-selected:hover:not(.ax-state-disabled){background-color:color-mix(in srgb,var(--ax-calendar-holiday-color) 82%,black)!important}}@supports (color: color-mix(in lab,red,red)){ax-calendar .ax-calendar-body .ax-calendar-slots .ax-calendar-slot.ax-state-holiday.ax-has-holiday-color.ax-state-selected:hover:not(.ax-state-disabled){border-color:color-mix(in srgb,var(--ax-calendar-holiday-color) 82%,black)!important}}ax-calendar .ax-calendar-body .ax-calendar-slots .ax-calendar-slot.ax-state-holiday.ax-has-holiday-color .ax-ripple{background-color:var(--ax-calendar-holiday-color)!important}@supports (color: color-mix(in lab,red,red)){ax-calendar .ax-calendar-body .ax-calendar-slots .ax-calendar-slot.ax-state-holiday.ax-has-holiday-color .ax-ripple{background-color:color-mix(in srgb,var(--ax-calendar-holiday-color) 30%,transparent)!important}}ax-calendar .ax-calendar-body .ax-calendar-slots .ax-calendar-slot.ax-state-holiday.ax-has-holiday-color .ax-calendar-day-slot-content{max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}ax-calendar .ax-calendar-body .ax-calendar-slots.ax-calendar-slots-day{grid-template-columns:repeat(7,minmax(0,1fr))}ax-calendar .ax-calendar-body .ax-calendar-slots.ax-calendar-slots-year,ax-calendar .ax-calendar-body .ax-calendar-slots.ax-calendar-slots-month{grid-template-columns:repeat(4,minmax(0,1fr))}ax-calendar .ax-calendar-body .ax-calendar-week{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));padding-top:var(--ax-comp-calendar-week-padding-t, .75rem);padding-left:var(--ax-comp-calendar-week-padding-x, .5rem);padding-right:var(--ax-comp-calendar-week-padding-x, .5rem)}ax-calendar .ax-calendar-body .ax-calendar-week>div{position:relative;display:flex;cursor:pointer;align-items:center;justify-content:center;text-align:center;font-size:var(--text-sm, .875rem);line-height:var(--tw-leading, var(--text-sm--line-height, calc(1.25 / .875)))}ax-calendar.ax-look-select .ax-calendar-view-header.ax-calendar-day-nav{display:grid;align-items:center;gap:calc(var(--spacing, .25rem) * 1);grid-template-columns:auto 1fr auto}ax-calendar.ax-look-select .ax-calendar-view-header.ax-calendar-day-nav .ax-icon{font-size:.875rem}ax-calendar.ax-look-select .ax-calendar-view-header.ax-calendar-day-nav .ax-calendar-day-nav-prev{justify-self:start}ax-calendar.ax-look-select .ax-calendar-view-header.ax-calendar-day-nav .ax-calendar-day-nav-center{display:flex;align-items:center;justify-content:center;gap:calc(var(--spacing, .25rem) * 1)}ax-calendar.ax-look-select .ax-calendar-view-header.ax-calendar-day-nav .ax-calendar-day-nav-next{justify-self:end}ax-calendar.ax-look-select .ax-calendar-view-header.ax-calendar-day-nav ax-select-box.ax-calendar-month-select,ax-calendar.ax-look-select .ax-calendar-view-header.ax-calendar-day-nav ax-select-box.ax-calendar-year-select{display:inline-block;width:auto;flex-shrink:0;flex-grow:0;flex-basis:auto}:is(ax-calendar.ax-look-select .ax-calendar-view-header.ax-calendar-day-nav ax-select-box.ax-calendar-month-select,ax-calendar.ax-look-select .ax-calendar-view-header.ax-calendar-day-nav ax-select-box.ax-calendar-year-select) .ax-icon{font-size:.75rem}:is(ax-calendar.ax-look-select .ax-calendar-view-header.ax-calendar-day-nav ax-select-box.ax-calendar-month-select,ax-calendar.ax-look-select .ax-calendar-view-header.ax-calendar-day-nav ax-select-box.ax-calendar-year-select) .ax-editor-container{gap:0}:is(ax-calendar.ax-look-select .ax-calendar-view-header.ax-calendar-day-nav ax-select-box.ax-calendar-month-select,ax-calendar.ax-look-select .ax-calendar-view-header.ax-calendar-day-nav ax-select-box.ax-calendar-year-select) ax-dropdown-box.ax-editor-container{width:auto;justify-content:flex-start}:is(ax-calendar.ax-look-select .ax-calendar-view-header.ax-calendar-day-nav ax-select-box.ax-calendar-month-select,ax-calendar.ax-look-select .ax-calendar-view-header.ax-calendar-day-nav ax-select-box.ax-calendar-year-select) .ax-chips-container{width:auto;flex-shrink:0;flex-grow:0;flex-basis:auto}:is(ax-calendar.ax-look-select .ax-calendar-view-header.ax-calendar-day-nav ax-select-box.ax-calendar-month-select,ax-calendar.ax-look-select .ax-calendar-view-header.ax-calendar-day-nav ax-select-box.ax-calendar-year-select) .ax-chips-container .ax-chips{overflow:visible;text-overflow:unset}ax-calendar .ax-calendar-footer{display:flex;align-items:center;justify-content:center;margin-top:var(--ax-comp-calendar-footer-margin-t)}ax-calendar .ax-calendar-footer .ax-today-button{display:block;width:100%;cursor:pointer;text-align:center;font-size:var(--text-sm, .875rem);line-height:var(--tw-leading, var(--text-sm--line-height, calc(1.25 / .875)));padding-left:var(--ax-comp-calendar-footer-today-button-padding-x);padding-right:var(--ax-comp-calendar-footer-today-button-padding-x);height:var(--ax-comp-calendar-footer-today-button-height);border-radius:var(--ax-comp-calendar-footer-today-button-border-radius, var(--ax-sys-border-radius));color:rgba(var(--ax-comp-calendar-footer-today-button-text-color));background-color:rgba(var(--ax-comp-calendar-footer-today-button-bg-color))}ax-calendar .ax-calendar-footer .ax-today-button.ax-state-disabled{cursor:not-allowed;opacity:var(--ax-comp-calendar-slot-disabled-opacity)}ax-calendar .ax-calendar-footer .ax-today-button.ax-state-readonly{cursor:text;opacity:var(--ax-comp-calendar-slot-readonly-opacity)}ax-calendar .ax-calendar-footer .ax-today-button:is(ax-calendar .ax-calendar-footer .ax-today-button:hover):not(.ax-state-disabled){background-color:rgba(var(--ax-comp-calendar-footer-today-button-hover-bg-color))}ax-calendar .ax-calendar-footer .ax-today-button:is(ax-calendar .ax-calendar-footer .ax-today-button:focus,ax-calendar .ax-calendar-footer .ax-today-button:focus-visible):not(.ax-state-disabled){outline-color:rgba(var(--ax-comp-calendar-footer-today-button-focused-outline-color))}}.ax-calendar-picker{display:flex;width:100%}.ax-calendar-picker ax-picker{flex:1}.ax-overlay-pane ax-calendar{--tw-border-style: none;border-style:none}@property --tw-font-weight{syntax: \"*\"; inherits: false;}@property --tw-border-style{syntax: \"*\"; inherits: false; initial-value: solid;}@property --tw-shadow{syntax: \"*\"; inherits: false; initial-value: 0 0 #0000;}@property --tw-shadow-color{syntax: \"*\"; inherits: false;}@property --tw-shadow-alpha{syntax: \"<percentage>\"; inherits: false; initial-value: 100%;}@property --tw-inset-shadow{syntax: \"*\"; inherits: false; initial-value: 0 0 #0000;}@property --tw-inset-shadow-color{syntax: \"*\"; inherits: false;}@property --tw-inset-shadow-alpha{syntax: \"<percentage>\"; inherits: false; initial-value: 100%;}@property --tw-ring-color{syntax: \"*\"; inherits: false;}@property --tw-ring-shadow{syntax: \"*\"; inherits: false; initial-value: 0 0 #0000;}@property --tw-inset-ring-color{syntax: \"*\"; inherits: false;}@property --tw-inset-ring-shadow{syntax: \"*\"; inherits: false; initial-value: 0 0 #0000;}@property --tw-ring-inset{syntax: \"*\"; inherits: false;}@property --tw-ring-offset-width{syntax: \"<length>\"; inherits: false; initial-value: 0px;}@property --tw-ring-offset-color{syntax: \"*\"; inherits: false; initial-value: #fff;}@property --tw-ring-offset-shadow{syntax: \"*\"; inherits: false; initial-value: 0 0 #0000;}@layer properties{@supports ((-webkit-hyphens: none) and (not (margin-trim: inline))) or ((-moz-orient: inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-font-weight: initial;--tw-border-style: solid;--tw-shadow: 0 0 #0000;--tw-shadow-color: initial;--tw-shadow-alpha: 100%;--tw-inset-shadow: 0 0 #0000;--tw-inset-shadow-color: initial;--tw-inset-shadow-alpha: 100%;--tw-ring-color: initial;--tw-ring-shadow: 0 0 #0000;--tw-inset-ring-color: initial;--tw-inset-ring-shadow: 0 0 #0000;--tw-ring-inset: initial;--tw-ring-offset-width: 0px;--tw-ring-offset-color: #fff;--tw-ring-offset-shadow: 0 0 #0000}}}\n/*! tailwindcss v4.1.16 | MIT License | https://tailwindcss.com */\n"] }]
1105
1132
  }], ctorParameters: () => [], propDecorators: { weekend: [{ type: i0.Input, args: [{ isSignal: true, alias: "weekend", required: false }] }], weekdays: [{ type: i0.Input, args: [{ isSignal: true, alias: "weekdays", required: false }] }], look: [{ type: i0.Input, args: [{ isSignal: true, alias: "look", required: false }] }], yearRange: [{ type: i0.Input, args: [{ isSignal: true, alias: "yearRange", required: false }] }], holidays: [{ type: i0.Input, args: [{ isSignal: true, alias: "holidays", required: false }] }], __hostClass: [{
1106
1133
  type: HostBinding,
1107
1134
  args: ['class']