@acorex/components 7.0.27 → 7.0.29

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (127) hide show
  1. package/alert/src/alert.component.d.ts +2 -2
  2. package/badge/src/badge.component.d.ts +2 -2
  3. package/breadcrumbs/src/breadcrumbs-item.component.d.ts +6 -6
  4. package/button/src/button-group.component.d.ts +6 -6
  5. package/button/src/button-item.component.d.ts +6 -6
  6. package/color-palette/src/color-palette-input.component.d.ts +1 -0
  7. package/color-picker/src/color-picker.component.d.ts +21 -18
  8. package/common/src/services/overlay.service.d.ts +2 -0
  9. package/date-picker/src/datepicker.component.d.ts +14 -14
  10. package/decorators/src/text.component.d.ts +1 -1
  11. package/esm2020/alert/src/alert.component.mjs +2 -2
  12. package/esm2020/badge/src/badge.component.mjs +2 -2
  13. package/esm2020/calendar/src/calendar.component.mjs +9 -9
  14. package/esm2020/card/src/card.component.mjs +2 -2
  15. package/esm2020/color-palette/src/color-palette-input.component.mjs +22 -11
  16. package/esm2020/color-palette/src/color-palette-picker.component.mjs +3 -3
  17. package/esm2020/color-palette/src/color-palette-preview.component.mjs +2 -2
  18. package/esm2020/color-palette/src/color-palette-swatches.component.mjs +15 -9
  19. package/esm2020/color-palette/src/color-palette.component.mjs +14 -8
  20. package/esm2020/color-picker/src/color-picker.component.mjs +35 -14
  21. package/esm2020/common/src/services/overlay.service.mjs +32 -16
  22. package/esm2020/decorators/src/text.component.mjs +4 -4
  23. package/esm2020/decorators/src/title.component.mjs +2 -3
  24. package/esm2020/dialog/src/dialog.component.mjs +2 -2
  25. package/esm2020/mixin/src/value-mixin.class.mjs +2 -1
  26. package/esm2020/picker/public-api.mjs +2 -1
  27. package/esm2020/picker/src/picker-column.component.mjs +22 -0
  28. package/esm2020/picker/src/picker.component.mjs +3 -24
  29. package/esm2020/picker/src/picker.module.mjs +6 -5
  30. package/esm2020/popup/src/popup.component.mjs +4 -5
  31. package/esm2020/popup/src/popup.service.mjs +25 -10
  32. package/esm2020/progress-bar/src/progress-bar.component.mjs +2 -2
  33. package/esm2020/range-slider/src/range-slider.component.mjs +2 -2
  34. package/esm2020/select-box/src/selectbox.component.mjs +32 -17
  35. package/esm2020/switch/src/switch.component.mjs +2 -2
  36. package/esm2020/tabs/src/tabs.component.mjs +2 -2
  37. package/fesm2015/acorex-components-alert.mjs +2 -2
  38. package/fesm2015/acorex-components-alert.mjs.map +1 -1
  39. package/fesm2015/acorex-components-badge.mjs +2 -2
  40. package/fesm2015/acorex-components-badge.mjs.map +1 -1
  41. package/fesm2015/acorex-components-calendar.mjs +9 -8
  42. package/fesm2015/acorex-components-calendar.mjs.map +1 -1
  43. package/fesm2015/acorex-components-card.mjs +2 -2
  44. package/fesm2015/acorex-components-card.mjs.map +1 -1
  45. package/fesm2015/acorex-components-color-palette.mjs +50 -27
  46. package/fesm2015/acorex-components-color-palette.mjs.map +1 -1
  47. package/fesm2015/acorex-components-color-picker.mjs +33 -13
  48. package/fesm2015/acorex-components-color-picker.mjs.map +1 -1
  49. package/fesm2015/acorex-components-common.mjs +30 -14
  50. package/fesm2015/acorex-components-common.mjs.map +1 -1
  51. package/fesm2015/acorex-components-decorators.mjs +3 -4
  52. package/fesm2015/acorex-components-decorators.mjs.map +1 -1
  53. package/fesm2015/acorex-components-dialog.mjs +2 -2
  54. package/fesm2015/acorex-components-dialog.mjs.map +1 -1
  55. package/fesm2015/acorex-components-mixin.mjs +1 -0
  56. package/fesm2015/acorex-components-mixin.mjs.map +1 -1
  57. package/fesm2015/acorex-components-picker.mjs +27 -28
  58. package/fesm2015/acorex-components-picker.mjs.map +1 -1
  59. package/fesm2015/acorex-components-popup.mjs +25 -11
  60. package/fesm2015/acorex-components-popup.mjs.map +1 -1
  61. package/fesm2015/acorex-components-progress-bar.mjs +2 -2
  62. package/fesm2015/acorex-components-progress-bar.mjs.map +1 -1
  63. package/fesm2015/acorex-components-range-slider.mjs +2 -2
  64. package/fesm2015/acorex-components-range-slider.mjs.map +1 -1
  65. package/fesm2015/acorex-components-select-box.mjs +31 -17
  66. package/fesm2015/acorex-components-select-box.mjs.map +1 -1
  67. package/fesm2015/acorex-components-switch.mjs +2 -2
  68. package/fesm2015/acorex-components-switch.mjs.map +1 -1
  69. package/fesm2015/acorex-components-tabs.mjs +2 -3
  70. package/fesm2015/acorex-components-tabs.mjs.map +1 -1
  71. package/fesm2020/acorex-components-alert.mjs +2 -2
  72. package/fesm2020/acorex-components-alert.mjs.map +1 -1
  73. package/fesm2020/acorex-components-badge.mjs +2 -2
  74. package/fesm2020/acorex-components-badge.mjs.map +1 -1
  75. package/fesm2020/acorex-components-calendar.mjs +9 -8
  76. package/fesm2020/acorex-components-calendar.mjs.map +1 -1
  77. package/fesm2020/acorex-components-card.mjs +2 -2
  78. package/fesm2020/acorex-components-card.mjs.map +1 -1
  79. package/fesm2020/acorex-components-color-palette.mjs +50 -27
  80. package/fesm2020/acorex-components-color-palette.mjs.map +1 -1
  81. package/fesm2020/acorex-components-color-picker.mjs +33 -13
  82. package/fesm2020/acorex-components-color-picker.mjs.map +1 -1
  83. package/fesm2020/acorex-components-common.mjs +30 -14
  84. package/fesm2020/acorex-components-common.mjs.map +1 -1
  85. package/fesm2020/acorex-components-decorators.mjs +3 -4
  86. package/fesm2020/acorex-components-decorators.mjs.map +1 -1
  87. package/fesm2020/acorex-components-dialog.mjs +2 -2
  88. package/fesm2020/acorex-components-dialog.mjs.map +1 -1
  89. package/fesm2020/acorex-components-mixin.mjs +1 -0
  90. package/fesm2020/acorex-components-mixin.mjs.map +1 -1
  91. package/fesm2020/acorex-components-picker.mjs +27 -28
  92. package/fesm2020/acorex-components-picker.mjs.map +1 -1
  93. package/fesm2020/acorex-components-popup.mjs +25 -11
  94. package/fesm2020/acorex-components-popup.mjs.map +1 -1
  95. package/fesm2020/acorex-components-progress-bar.mjs +2 -2
  96. package/fesm2020/acorex-components-progress-bar.mjs.map +1 -1
  97. package/fesm2020/acorex-components-range-slider.mjs +2 -2
  98. package/fesm2020/acorex-components-range-slider.mjs.map +1 -1
  99. package/fesm2020/acorex-components-select-box.mjs +31 -17
  100. package/fesm2020/acorex-components-select-box.mjs.map +1 -1
  101. package/fesm2020/acorex-components-switch.mjs +2 -2
  102. package/fesm2020/acorex-components-switch.mjs.map +1 -1
  103. package/fesm2020/acorex-components-tabs.mjs +2 -3
  104. package/fesm2020/acorex-components-tabs.mjs.map +1 -1
  105. package/mixin/src/base-components.class.d.ts +2 -2
  106. package/mixin/src/base-menu-mixin.class.d.ts +5 -5
  107. package/mixin/src/button-mixin.class.d.ts +2 -2
  108. package/mixin/src/clickable-mixin.class.d.ts +2 -2
  109. package/mixin/src/color-look-mixing.class.d.ts +2 -2
  110. package/mixin/src/datalist-component.class.d.ts +10 -10
  111. package/mixin/src/dropdown-mixin.class.d.ts +2 -2
  112. package/mixin/src/interactive-mixin.class.d.ts +4 -4
  113. package/mixin/src/loading-mixin.class.d.ts +2 -2
  114. package/mixin/src/mixin.class.d.ts +61 -61
  115. package/mixin/src/page-component.class.d.ts +2 -2
  116. package/mixin/src/selection-component.class.d.ts +2 -2
  117. package/mixin/src/sizable-mixin.class.d.ts +2 -2
  118. package/mixin/src/textbox-mixin.class.d.ts +2 -2
  119. package/mixin/src/value-mixin.class.d.ts +8 -8
  120. package/package.json +1 -1
  121. package/picker/public-api.d.ts +1 -0
  122. package/picker/src/picker-column.component.d.ts +11 -0
  123. package/picker/src/picker.component.d.ts +2 -4
  124. package/picker/src/picker.module.d.ts +9 -8
  125. package/popup/src/popup.service.d.ts +19 -14
  126. package/select-box/src/selectbox.component.d.ts +1 -1
  127. package/tabs/src/tab-item.component.d.ts +2 -2
@@ -1 +1 @@
1
- {"version":3,"file":"acorex-components-calendar.mjs","sources":["../../../../projects/acorex/components/calendar/src/calendar.class.ts","../../../../projects/acorex/components/calendar/src/calendar.component.ts","../../../../projects/acorex/components/calendar/src/calendar.component.html","../../../../projects/acorex/components/calendar/src/calendar.module.ts","../../../../projects/acorex/components/calendar/acorex-components-calendar.ts"],"sourcesContent":["import { AXConfig } from \"@acorex/core/config\";\r\nimport { ChangeDetectorRef, ElementRef, EventEmitter, Injectable, Input, Output } from \"@angular/core\";\r\nimport { AXItemClickEvent, AXRangeChangedEvent } from \"@acorex/components/common\";\r\nimport { AXBaseComponent } from \"@acorex/components/mixin\";\r\n\r\nexport type AXCalendarViewType = 'years' | 'months' | 'days';\r\nexport type AXCalendarViewDepth = AXCalendarViewType;\r\nexport type AXCalendarDisabledDates = Date[] | ((date: Date) => boolean);\r\nexport type AXCalendarHolidayDates = Date[] | ((date: Date) => boolean);\r\n\r\n\r\n/**\r\n* Contains native event\r\n* @category Events\r\n*/\r\nexport class AXCalendarNavigateEvent extends AXRangeChangedEvent<Date> {\r\n\r\n}\r\n\r\n@Injectable()\r\nexport class AXCalendarBaseComponent extends AXBaseComponent {\r\n\r\n\r\n constructor(elementRef: ElementRef, cdr: ChangeDetectorRef) {\r\n super(elementRef, cdr);\r\n }\r\n\r\n @Output()\r\n onSlotClick: EventEmitter<AXItemClickEvent<Date>> = new EventEmitter<AXItemClickEvent<Date>>();\r\n \r\n @Output()\r\n onNavigate: EventEmitter<AXCalendarNavigateEvent> = new EventEmitter<AXCalendarNavigateEvent>();\r\n\r\n @Output()\r\n activeViewChange: EventEmitter<AXCalendarViewType> = new EventEmitter<AXCalendarViewType>();\r\n\r\n private _activeView: AXCalendarViewType = 'days';\r\n @Input()\r\n public get activeView(): AXCalendarViewType {\r\n return this._activeView;\r\n }\r\n public set activeView(v: AXCalendarViewType) {\r\n this._setOption({ name: 'activeView', value: v });\r\n }\r\n\r\n\r\n @Output()\r\n public typeChange: EventEmitter<string> = new EventEmitter<string>();\r\n \r\n private _type: string = AXConfig.get(`dateTime.calendar`);\r\n \r\n @Input()\r\n public get type(): string {\r\n return this._type || AXConfig.get(`dateTime.calendar`);\r\n }\r\n public set type(v: string) {\r\n this._setOption({\r\n name: 'type',\r\n value: v\r\n })\r\n }\r\n\r\n\r\n @Output()\r\n depthChange: EventEmitter<AXCalendarViewDepth> = new EventEmitter<AXCalendarViewDepth>();\r\n\r\n private _depth: AXCalendarViewDepth = 'days';\r\n @Input()\r\n public get depth(): AXCalendarViewDepth {\r\n return this._depth;\r\n }\r\n public set depth(v: AXCalendarViewDepth) {\r\n this._setOption({\r\n name: 'depth', \r\n value: v, \r\n beforeCallback: () => {\r\n this._activeView = v;\r\n }\r\n });\r\n }\r\n\r\n @Output()\r\n minChange: EventEmitter<Date> = new EventEmitter<Date>();\r\n\r\n private _min: Date;\r\n @Input()\r\n public get min(): Date {\r\n return this._min;\r\n }\r\n public set min(v: Date) {\r\n this._setOption({ name: 'min', value: v });\r\n }\r\n\r\n\r\n @Output()\r\n maxChange: EventEmitter<Date> = new EventEmitter<Date>();\r\n\r\n private _max: Date;\r\n @Input()\r\n public get max(): Date {\r\n return this._max;\r\n }\r\n public set max(v: Date) {\r\n this._setOption({ name: 'max', value: v });\r\n }\r\n\r\n @Output()\r\n disabledDatesChange: EventEmitter<AXCalendarDisabledDates> = new EventEmitter<AXCalendarDisabledDates>();\r\n\r\n private _disabledDates: AXCalendarDisabledDates;\r\n @Input()\r\n public get disabledDates(): AXCalendarDisabledDates {\r\n return this._disabledDates;\r\n }\r\n public set disabledDates(v: AXCalendarDisabledDates) {\r\n this._setOption({ name: 'disabledDates', value: v });\r\n }\r\n\r\n @Output()\r\n holidayDatesChange: EventEmitter<AXCalendarHolidayDates> = new EventEmitter<AXCalendarHolidayDates>();\r\n\r\n private _holidayDates: AXCalendarHolidayDates;\r\n @Input()\r\n public get holidayDates(): AXCalendarHolidayDates {\r\n return this._holidayDates;\r\n }\r\n public set holidayDates(v: AXCalendarHolidayDates) {\r\n this._setOption({ name: 'holidayDates', value: v });\r\n }\r\n}\r\n\r\n\r\n\r\nexport const CALENDAR_INPUTS = [\r\n 'depth',\r\n 'activeView',\r\n 'min',\r\n 'max',\r\n 'disabledDates',\r\n 'type',\r\n 'holidayDates',\r\n];\r\nexport const CALENDAR_OUTPUTS = ['depthChange','typeChange','disabledDatesChange','holidayDatesChange','onNavigate'];\r\n","import { range } from 'lodash-es';\r\nimport {\r\n Component,\r\n ViewEncapsulation,\r\n ChangeDetectionStrategy,\r\n ElementRef,\r\n ChangeDetectorRef,\r\n HostBinding,\r\n Input,\r\n} from '@angular/core';\r\nimport { AXDateTime, AXDateTimeRange } from '@acorex/core/dateTime';\r\nimport { AXClickEvent } from '@acorex/components/common';\r\n\r\nimport { AXCalendarBaseComponent } from './calendar.class';\r\nimport {\r\n AXComponentOptionChanged,\r\n _ClickableComponenetMixin,\r\n _InteractiveComponenetMixin,\r\n _ValueComponenetMixin,\r\n} from '@acorex/components/mixin';\r\nimport { AXConfig } from '@acorex/core/config';\r\nimport { AXTranslator } from '@acorex/core/translation';\r\n\r\nexport const AXCalendarComponentMixin = _ClickableComponenetMixin(\r\n _InteractiveComponenetMixin(\r\n _ValueComponenetMixin<any>(AXCalendarBaseComponent)\r\n )\r\n);\r\n\r\n@Component({\r\n selector: 'ax-calendar',\r\n templateUrl: './calendar.component.html',\r\n styleUrls: ['./calendar.component.scss'],\r\n inputs: [\r\n 'rtl',\r\n 'readonly',\r\n 'allowNull',\r\n 'value',\r\n 'name',\r\n 'checked',\r\n 'disabled',\r\n 'tabIndex',\r\n 'depth',\r\n 'activeView',\r\n 'min',\r\n 'max',\r\n 'disabledDates',\r\n 'type',\r\n 'holidayDates',\r\n ],\r\n outputs: [\r\n 'valueChange',\r\n 'onValueChanged',\r\n 'onBlur',\r\n 'onFocus',\r\n 'depthChange',\r\n 'typeChange',\r\n 'disabledDatesChange',\r\n 'holidayDatesChange',\r\n 'onNavigate',\r\n ],\r\n encapsulation: ViewEncapsulation.None,\r\n changeDetection: ChangeDetectionStrategy.OnPush,\r\n})\r\nexport class AXCalendarComponent extends AXCalendarComponentMixin {\r\n @Input()\r\n interface: 'calendar' | 'picker' = 'calendar';\r\n\r\n\r\n private get _viewRange(): AXDateTimeRange {\r\n const current = this._viewStartDate || this._today;\r\n switch (this.activeView) {\r\n case 'years':\r\n let y = current.startOf('year').year;\r\n let min = y - (y % 10) - 1;\r\n let max = min + 11;\r\n return new AXDateTimeRange(\r\n AXDateTime.from({\r\n year: min,\r\n month: 1,\r\n date: 1,\r\n calendar: this._viewStartDate.calendar.name(),\r\n }),\r\n AXDateTime.from({\r\n year: max,\r\n month: 12,\r\n date: 28,\r\n calendar: this._viewStartDate.calendar.name(),\r\n })\r\n );\r\n case 'months':\r\n return new AXDateTimeRange(\r\n current.startOf('year'),\r\n current.endOf('year').add('day', -1)\r\n );\r\n default:\r\n return new AXDateTimeRange(\r\n current.startOf('month'),\r\n current.endOf('month')\r\n );\r\n }\r\n }\r\n\r\n protected _today = new AXDateTime(new Date(), this.type);\r\n private _viewStartDate!: AXDateTime;\r\n\r\n protected _navText: string = '';\r\n protected _todayText: string = '';\r\n\r\n protected _slots: any[] = [];\r\n protected _dayNames: string[] = [];\r\n\r\n private _isUserInteraction: boolean = false;\r\n\r\n constructor(elementRef: ElementRef, private cdr: ChangeDetectorRef) {\r\n super(elementRef, cdr);\r\n }\r\n\r\n private _initValues() {\r\n this._today = new AXDateTime(new Date(), this.type);\r\n this._dayNames = this._today.calendar.dayShortNames;\r\n }\r\n\r\n private _refresh() {\r\n this._initValues();\r\n this.navTo(this.value || this._today);\r\n }\r\n\r\n protected onInit() {\r\n this._initValues();\r\n if (!this.value) this.goToday();\r\n }\r\n\r\n private _genearteSlots() {\r\n if (!this._viewStartDate) return;\r\n const vr = this._viewRange;\r\n // just for tailwind\r\n //'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'\r\n // year view\r\n if (this.activeView == 'years') {\r\n const a = vr.enumurate('year');\r\n this._slots = a.map((d, i) => {\r\n const r: any = {};\r\n r.date = d.date;\r\n r.text = d.format('YYYY');\r\n r.disabled =\r\n (this.min && d.compare(this.min, 'year') == -1) ||\r\n (this.max && d.compare(this.max, 'year') == 1);\r\n if (r.disabled) {\r\n r.cssClass = {\r\n 'ax-state-disabled': r.disabled,\r\n };\r\n } else {\r\n r.cssClass = {\r\n 'ax-state-today': d.equal(this._today, 'year'),\r\n 'ax-state-selected':\r\n this.value &&\r\n this.depth == 'years' &&\r\n d.equal(this.value, 'year'),\r\n };\r\n }\r\n // r.cssClass[`ax-col-start-2`] = i == 0;\r\n return r;\r\n });\r\n\r\n this._navText = `${vr.startTime.year} - ${vr.endTime.year}`;\r\n this._todayText = this._today.format('YYYY');\r\n }\r\n // month view\r\n else if (this.activeView == 'months') {\r\n const a = vr.enumurate('month');\r\n this._slots = a.map((d, i) => {\r\n const r: any = {};\r\n r.date = d.date;\r\n r.text = d.format('MMM');\r\n r.tooltip = d.format('MMMM YYYY');\r\n r.disabled =\r\n (this.min && d.compare(this.min, 'month') == -1) ||\r\n (this.max && d.compare(this.max, 'month') == 1);\r\n if (r.disabled) {\r\n r.cssClass = {\r\n 'ax-state-disabled': r.disabled,\r\n };\r\n } else {\r\n r.cssClass = {\r\n 'ax-state-today': d.equal(this._today, 'month'),\r\n 'ax-state-selected':\r\n this.value &&\r\n this.depth == 'months' &&\r\n d.equal(this.value, 'month'),\r\n 'ax-state-other': d.year != this._viewStartDate.year,\r\n };\r\n }\r\n return r;\r\n });\r\n this._navText = this._viewStartDate.format('YYYY');\r\n this._todayText = this._today.format('MMMM YYYY');\r\n }\r\n // day view\r\n else {\r\n const a = vr.enumurate('day');\r\n this._slots = a.map((d, i) => {\r\n const r: any = {};\r\n r.date = d.date;\r\n r.text = d.dayOfMonth;\r\n r.tooltip = d.format();\r\n r.disabled =\r\n (this.min && d.compare(this.min, 'day') == -1) ||\r\n (this.max && d.compare(this.max, 'day') == 1) ||\r\n this.isDisabled(d);\r\n if (r.disabled) {\r\n r.cssClass = {\r\n 'ax-state-disabled': true,\r\n };\r\n } else {\r\n r.cssClass = {\r\n 'ax-state-today': d.equal(this._today, 'day'),\r\n 'ax-state-selected': this.value && d.equal(this.value, 'day'),\r\n 'ax-state-holiday': this.isHoliday(d) || this.isWeekend(d),\r\n // 'ax-state-event-danger': d.dayOfMonth == 12,\r\n // 'ax-state-event': d.dayOfMonth == 12,\r\n };\r\n }\r\n\r\n r.cssClass[`ax-col-start-${vr.startTime.dayOfWeek}`] = i == 0;\r\n return r;\r\n });\r\n this._navText = this._viewStartDate.format('MMMM YYYY');\r\n this._todayText = this._today.format();\r\n }\r\n }\r\n\r\n protected _handlePrevClick() {\r\n this._isUserInteraction = true;\r\n this.prev();\r\n this._isUserInteraction = false;\r\n }\r\n\r\n protected _handleNextClick() {\r\n this._isUserInteraction = true;\r\n this.next();\r\n this._isUserInteraction = false;\r\n }\r\n\r\n protected _handleSlotClick(e: MouseEvent, slot) {\r\n if (slot.disabled || this.disabled) return;\r\n if (this.activeView == 'days') {\r\n this._setDate(slot.date);\r\n } else if (this.activeView == 'months' && this.depth == 'days') {\r\n this.activeView = 'days';\r\n this.navTo(slot.date);\r\n } else if (this.activeView == 'months' && this.depth == 'months') {\r\n this._setDate(slot.date);\r\n } else if (\r\n this.activeView == 'years' &&\r\n (this.depth == 'days' || this.depth == 'months')\r\n ) {\r\n this.activeView = 'months';\r\n this.navTo(slot.date);\r\n } else if (this.activeView == 'years' && this.depth == 'years') {\r\n this._setDate(slot.date);\r\n }\r\n this.onSlotClick.emit({\r\n component: this,\r\n item: slot.date,\r\n isUserInteraction: true,\r\n nativeEvent: e,\r\n });\r\n }\r\n\r\n protected _handleNavClick(e: AXClickEvent | any) {\r\n this._isUserInteraction = true;\r\n if (this.activeView == 'days') this.activeView = 'months';\r\n else if (this.activeView == 'months') this.activeView = 'years';\r\n this._isUserInteraction = false;\r\n }\r\n\r\n protected _onOptionChanged(option: AXComponentOptionChanged) {\r\n if (\r\n option.name == 'depth' ||\r\n option.name == 'activeView' ||\r\n option.name == 'disabledDates' ||\r\n option.name == 'holidayDates'\r\n ) {\r\n this._genearteSlots();\r\n }\r\n if (option.name == 'type') {\r\n this._refresh();\r\n }\r\n }\r\n\r\n protected _onValueChanged(oldValue, newValue) {\r\n this._viewStartDate = new AXDateTime(newValue, this.type);\r\n this._genearteSlots();\r\n }\r\n\r\n protected _handleGoToday() {\r\n this._isUserInteraction = true;\r\n this._setDate(this._today.date);\r\n this.goToday();\r\n this._isUserInteraction = false;\r\n }\r\n\r\n next() {\r\n this._navNextPrev(false);\r\n }\r\n\r\n prev() {\r\n this._navNextPrev(true);\r\n }\r\n\r\n focus() {\r\n const func = (s: string) =>\r\n (this._getHostElement() as HTMLDivElement).querySelector<HTMLDivElement>(\r\n s\r\n );\r\n const div =\r\n func('.ax-calendar-slots>div.ax-state-selected') ||\r\n func('.ax-calendar-slots>div');\r\n div?.focus();\r\n }\r\n\r\n private _navNextPrev(prev: boolean) {\r\n const sign = prev ? -1 : 1;\r\n if (this.activeView == 'days')\r\n this.navTo(this._viewStartDate.add('month', sign * 1));\r\n else if (this.activeView == 'months')\r\n this.navTo(this._viewStartDate.add('year', sign * 1));\r\n else this.navTo(this._viewStartDate.add('year', sign * 10));\r\n }\r\n\r\n goToday() {\r\n this.navTo(this._today);\r\n }\r\n\r\n navTo(date: Date | AXDateTime) {\r\n this._viewStartDate = AXDateTime.convert(\r\n date,\r\n this._today.calendar.name()\r\n ).startOf();\r\n const vr = this._viewRange;\r\n this.onNavigate.emit({\r\n component: this,\r\n isUserInteraction: this._isUserInteraction,\r\n start: vr.startTime?.date,\r\n end: vr.endTime?.date,\r\n htmlElement: this._getHostElement(),\r\n });\r\n if (this.interface == 'calendar') this._genearteSlots();\r\n else {\r\n this._generatePickerItems('year');\r\n this._generatePickerItems('month');\r\n }\r\n setTimeout(() => {\r\n this.focus();\r\n }, 50);\r\n }\r\n\r\n @HostBinding('class')\r\n private get __hostClass(): string {\r\n const _classes = {\r\n 'ax-state-disabled': this.disabled,\r\n };\r\n return Object.entries(_classes)\r\n .filter((c) => c[1])\r\n .map((c) => c[0])\r\n .join(' ');\r\n }\r\n\r\n private _setDate(value: Date) {\r\n this.value = AXDateTime.convert(\r\n value,\r\n this._today.calendar.name()\r\n ).startOf().date;\r\n }\r\n\r\n protected isDisabled(date: AXDateTime): boolean {\r\n if (Array.isArray(this.disabledDates) && this.disabledDates.length != 0) {\r\n return this.disabledDates.some((d) => date.equal(d, 'day'));\r\n } else if (typeof this.disabledDates == 'function') {\r\n return this.disabledDates(date.date);\r\n }\r\n return false;\r\n }\r\n\r\n protected isHoliday(date: AXDateTime): boolean {\r\n if (Array.isArray(this.holidayDates) && this.holidayDates.length != 0) {\r\n return this.holidayDates.some((d) => date.equal(d, 'day'));\r\n } else if (typeof this.holidayDates == 'function') {\r\n return this.holidayDates(date.date);\r\n }\r\n return false;\r\n }\r\n\r\n protected isWeekend(date: AXDateTime): boolean {\r\n //return date.dayOfWeek == 7 || date.dayOfWeek == 1;\r\n const weekend = AXConfig.get(\r\n `dateTime.calendars.${this.type}.weekend`\r\n ) as number[];\r\n return weekend.includes(date.dayOfWeek);\r\n }\r\n\r\n protected _pickerDays: number[] = [];\r\n protected _pickerMonths: { text: string; value: number }[] = [];\r\n protected _pickerYears: number[] = [];\r\n\r\n private _generatePickerItems(view) {\r\n switch (view) {\r\n case 'year':\r\n this._pickerYears = range(2000, 2050, 1);\r\n break;\r\n case 'month':\r\n this._pickerMonths = new AXDateTimeRange(\r\n this._viewRange.startTime.startOf('year'),\r\n this._viewRange.startTime.endOf('year')\r\n )\r\n .enumurate('month')\r\n .map((c) => ({\r\n text: c.format('MMM'),\r\n value: c.monthOfYear,\r\n }));\r\n break;\r\n default:\r\n this._pickerDays = new AXDateTimeRange(\r\n this._viewRange.startTime.startOf('month'),\r\n this._viewRange.startTime.endOf('month')\r\n )\r\n .enumurate('day')\r\n .map((c) => c.dayOfMonth);\r\n this.cdr.detectChanges();\r\n break;\r\n }\r\n }\r\n\r\n protected _handlePickerChange(item: any, view) {\r\n if (!item) return;\r\n const date = this._viewRange.startTime;\r\n switch (view) {\r\n case 'year':\r\n this._setDate(date.set('year', item.value).date);\r\n break;\r\n case 'month':\r\n this._setDate(date.set('month', item.value.value).date);\r\n this._generatePickerItems('day');\r\n break;\r\n default:\r\n this._setDate(date.set('day', item.value).date);\r\n break;\r\n }\r\n }\r\n}\r\n","<ng-container *ngIf=\"interface === 'calendar'; else pickerTemplate\">\r\n <div class=\"ax-calendar-header\">\r\n <div class=\"ax-calendar-header-info\">\r\n <ng-container *ngIf=\"activeView == 'days'; else elseTemplate\">\r\n <button\r\n [attr.disabled]=\"disabled ? '' : null\"\r\n class=\"ax-general-button\"\r\n (click)=\"_handleNavClick($event)\">\r\n {{ _navText.split(' ')[1] }}\r\n </button>\r\n <button\r\n [attr.disabled]=\"disabled ? '' : null\"\r\n class=\"ax-general-button\"\r\n (click)=\"_handleNavClick($event)\">\r\n {{ _navText.split(' ')[0] }}\r\n </button>\r\n </ng-container>\r\n <ng-template #elseTemplate>\r\n <button\r\n [attr.disabled]=\"disabled ? '' : null\"\r\n class=\"ax-general-button\"\r\n (click)=\"_handleNavClick($event)\">\r\n {{ _navText }}\r\n </button>\r\n </ng-template>\r\n </div>\r\n <div class=\"ax-calendar-header-buttons\">\r\n <button\r\n [attr.disabled]=\"disabled ? '' : null\"\r\n class=\"ax-general-button ax-button-icon\"\r\n (click)=\"_handlePrevClick()\">\r\n <i\r\n class=\"ax-icon\"\r\n [ngClass]=\"{\r\n 'ax-icon-chevron-left': !rtl,\r\n 'ax-icon-chevron-right': rtl\r\n }\"></i>\r\n </button>\r\n\r\n <button\r\n [attr.disabled]=\"disabled ? '' : null\"\r\n class=\"ax-general-button ax-button-icon\"\r\n (click)=\"_handleNextClick()\">\r\n <i\r\n class=\"ax-icon\"\r\n [ngClass]=\"{\r\n 'ax-icon-chevron-left': rtl,\r\n 'ax-icon-chevron-right': !rtl\r\n }\"></i>\r\n </button>\r\n </div>\r\n </div>\r\n <div class=\"ax-calendar-body\">\r\n <div [ngSwitch]=\"activeView\">\r\n <ng-container *ngSwitchCase=\"'years'\">\r\n <div class=\"ax-calendar-slots ax-calendar-slots-year\">\r\n <div\r\n tabindex=\"0\"\r\n *ngFor=\"let slot of _slots\"\r\n [ngClass]=\"slot.cssClass\"\r\n (click)=\"_handleSlotClick($event, slot)\">\r\n {{ slot.text }}\r\n </div>\r\n </div>\r\n </ng-container>\r\n <ng-container *ngSwitchCase=\"'months'\">\r\n <div class=\"ax-calendar-slots ax-calendar-slots-month\">\r\n <div\r\n tabindex=\"0\"\r\n *ngFor=\"let slot of _slots\"\r\n [title]=\"slot.tooltip\"\r\n [ngClass]=\"slot.cssClass\"\r\n (click)=\"_handleSlotClick($event, slot)\">\r\n {{ slot.text }}\r\n </div>\r\n </div>\r\n </ng-container>\r\n <ng-container *ngSwitchDefault>\r\n <div class=\"ax-calendar-week\">\r\n <div *ngFor=\"let d of _dayNames\">{{ d }}</div>\r\n </div>\r\n <div class=\"ax-calendar-slots ax-calendar-slots-day\">\r\n <div\r\n tabindex=\"0\"\r\n *ngFor=\"let slot of _slots\"\r\n [title]=\"slot.tooltip\"\r\n [ngClass]=\"slot.cssClass\"\r\n (click)=\"_handleSlotClick($event, slot)\">\r\n {{ slot.text }}\r\n </div>\r\n </div>\r\n </ng-container>\r\n </div>\r\n </div>\r\n\r\n <div class=\"ax-calendar-footer\">\r\n <button\r\n class=\"ax-today-button\"\r\n tabindex=\"-1\"\r\n [class.ax-state-disabled]=\"disabled\"\r\n [attr.disabled]=\"disabled || isDisabled(_today)\"\r\n (click)=\"_handleGoToday()\"\r\n *ngIf=\"activeView == 'days'\">\r\n {{ _todayText }}\r\n </button>\r\n </div>\r\n</ng-container>\r\n<ng-template #pickerTemplate>\r\n <div class=\"ax-calendar-picker\">//TODO: picker</div>\r\n</ng-template>\r\n","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { AXDateTimeModule } from '@acorex/core/dateTime';\r\nimport { AXCalendarComponent } from './calendar.component';\r\n\r\nconst COMPONENT = [AXCalendarComponent];\r\nconst MODULES = [CommonModule, AXDateTimeModule];\r\n\r\n@NgModule({\r\n declarations: [...COMPONENT],\r\n imports: [...MODULES],\r\n exports: [...COMPONENT],\r\n providers: [],\r\n})\r\nexport class AXCalendarModule { }\r\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"acorex-components-calendar.mjs","sources":["../../../../projects/acorex/components/calendar/src/calendar.class.ts","../../../../projects/acorex/components/calendar/src/calendar.component.ts","../../../../projects/acorex/components/calendar/src/calendar.component.html","../../../../projects/acorex/components/calendar/src/calendar.module.ts","../../../../projects/acorex/components/calendar/acorex-components-calendar.ts"],"sourcesContent":["import { AXConfig } from \"@acorex/core/config\";\r\nimport { ChangeDetectorRef, ElementRef, EventEmitter, Injectable, Input, Output } from \"@angular/core\";\r\nimport { AXItemClickEvent, AXRangeChangedEvent } from \"@acorex/components/common\";\r\nimport { AXBaseComponent } from \"@acorex/components/mixin\";\r\n\r\nexport type AXCalendarViewType = 'years' | 'months' | 'days';\r\nexport type AXCalendarViewDepth = AXCalendarViewType;\r\nexport type AXCalendarDisabledDates = Date[] | ((date: Date) => boolean);\r\nexport type AXCalendarHolidayDates = Date[] | ((date: Date) => boolean);\r\n\r\n\r\n/**\r\n* Contains native event\r\n* @category Events\r\n*/\r\nexport class AXCalendarNavigateEvent extends AXRangeChangedEvent<Date> {\r\n\r\n}\r\n\r\n@Injectable()\r\nexport class AXCalendarBaseComponent extends AXBaseComponent {\r\n\r\n\r\n constructor(elementRef: ElementRef, cdr: ChangeDetectorRef) {\r\n super(elementRef, cdr);\r\n }\r\n\r\n @Output()\r\n onSlotClick: EventEmitter<AXItemClickEvent<Date>> = new EventEmitter<AXItemClickEvent<Date>>();\r\n \r\n @Output()\r\n onNavigate: EventEmitter<AXCalendarNavigateEvent> = new EventEmitter<AXCalendarNavigateEvent>();\r\n\r\n @Output()\r\n activeViewChange: EventEmitter<AXCalendarViewType> = new EventEmitter<AXCalendarViewType>();\r\n\r\n private _activeView: AXCalendarViewType = 'days';\r\n @Input()\r\n public get activeView(): AXCalendarViewType {\r\n return this._activeView;\r\n }\r\n public set activeView(v: AXCalendarViewType) {\r\n this._setOption({ name: 'activeView', value: v });\r\n }\r\n\r\n\r\n @Output()\r\n public typeChange: EventEmitter<string> = new EventEmitter<string>();\r\n \r\n private _type: string = AXConfig.get(`dateTime.calendar`);\r\n \r\n @Input()\r\n public get type(): string {\r\n return this._type || AXConfig.get(`dateTime.calendar`);\r\n }\r\n public set type(v: string) {\r\n this._setOption({\r\n name: 'type',\r\n value: v\r\n })\r\n }\r\n\r\n\r\n @Output()\r\n depthChange: EventEmitter<AXCalendarViewDepth> = new EventEmitter<AXCalendarViewDepth>();\r\n\r\n private _depth: AXCalendarViewDepth = 'days';\r\n @Input()\r\n public get depth(): AXCalendarViewDepth {\r\n return this._depth;\r\n }\r\n public set depth(v: AXCalendarViewDepth) {\r\n this._setOption({\r\n name: 'depth', \r\n value: v, \r\n beforeCallback: () => {\r\n this._activeView = v;\r\n }\r\n });\r\n }\r\n\r\n @Output()\r\n minChange: EventEmitter<Date> = new EventEmitter<Date>();\r\n\r\n private _min: Date;\r\n @Input()\r\n public get min(): Date {\r\n return this._min;\r\n }\r\n public set min(v: Date) {\r\n this._setOption({ name: 'min', value: v });\r\n }\r\n\r\n\r\n @Output()\r\n maxChange: EventEmitter<Date> = new EventEmitter<Date>();\r\n\r\n private _max: Date;\r\n @Input()\r\n public get max(): Date {\r\n return this._max;\r\n }\r\n public set max(v: Date) {\r\n this._setOption({ name: 'max', value: v });\r\n }\r\n\r\n @Output()\r\n disabledDatesChange: EventEmitter<AXCalendarDisabledDates> = new EventEmitter<AXCalendarDisabledDates>();\r\n\r\n private _disabledDates: AXCalendarDisabledDates;\r\n @Input()\r\n public get disabledDates(): AXCalendarDisabledDates {\r\n return this._disabledDates;\r\n }\r\n public set disabledDates(v: AXCalendarDisabledDates) {\r\n this._setOption({ name: 'disabledDates', value: v });\r\n }\r\n\r\n @Output()\r\n holidayDatesChange: EventEmitter<AXCalendarHolidayDates> = new EventEmitter<AXCalendarHolidayDates>();\r\n\r\n private _holidayDates: AXCalendarHolidayDates;\r\n @Input()\r\n public get holidayDates(): AXCalendarHolidayDates {\r\n return this._holidayDates;\r\n }\r\n public set holidayDates(v: AXCalendarHolidayDates) {\r\n this._setOption({ name: 'holidayDates', value: v });\r\n }\r\n}\r\n\r\n\r\n\r\nexport const CALENDAR_INPUTS = [\r\n 'depth',\r\n 'activeView',\r\n 'min',\r\n 'max',\r\n 'disabledDates',\r\n 'type',\r\n 'holidayDates',\r\n];\r\nexport const CALENDAR_OUTPUTS = ['depthChange','typeChange','disabledDatesChange','holidayDatesChange','onNavigate'];\r\n","import { range } from 'lodash-es';\r\nimport {\r\n Component,\r\n ViewEncapsulation,\r\n ChangeDetectionStrategy,\r\n ElementRef,\r\n ChangeDetectorRef,\r\n HostBinding,\r\n Input,\r\n} from '@angular/core';\r\nimport { AXDateTime, AXDateTimeRange } from '@acorex/core/dateTime';\r\nimport { AXClickEvent } from '@acorex/components/common';\r\n\r\nimport { AXCalendarBaseComponent } from './calendar.class';\r\nimport {\r\n AXComponentOptionChanged,\r\n _ClickableComponenetMixin,\r\n _InteractiveComponenetMixin,\r\n _ValueComponenetMixin,\r\n} from '@acorex/components/mixin';\r\nimport { AXConfig } from '@acorex/core/config';\r\nimport { AXTranslator } from '@acorex/core/translation';\r\n\r\nexport const AXCalendarComponentMixin = _ClickableComponenetMixin(\r\n _InteractiveComponenetMixin(\r\n _ValueComponenetMixin<any>(AXCalendarBaseComponent)\r\n )\r\n);\r\n\r\n@Component({\r\n selector: 'ax-calendar',\r\n templateUrl: './calendar.component.html',\r\n styleUrls: ['./calendar.component.scss'],\r\n inputs: [\r\n 'rtl',\r\n 'readonly',\r\n 'allowNull',\r\n 'value',\r\n 'name',\r\n 'checked',\r\n 'disabled',\r\n 'tabIndex',\r\n 'depth',\r\n 'activeView',\r\n 'min',\r\n 'max',\r\n 'disabledDates',\r\n 'type',\r\n 'holidayDates',\r\n ],\r\n outputs: [\r\n 'valueChange',\r\n 'onValueChanged',\r\n 'onBlur',\r\n 'onFocus',\r\n 'depthChange',\r\n 'typeChange',\r\n 'disabledDatesChange',\r\n 'holidayDatesChange',\r\n 'onNavigate',\r\n ],\r\n encapsulation: ViewEncapsulation.None,\r\n changeDetection: ChangeDetectionStrategy.OnPush,\r\n})\r\nexport class AXCalendarComponent extends AXCalendarComponentMixin {\r\n @Input()\r\n interface: 'calendar' | 'picker' = 'calendar';\r\n\r\n private get _viewRange(): AXDateTimeRange {\r\n const current = this._viewStartDate || this._today;\r\n switch (this.activeView) {\r\n case 'years':\r\n let y = current.startOf('year').year;\r\n let min = y - (y % 10) - 1;\r\n let max = min + 11;\r\n return new AXDateTimeRange(\r\n AXDateTime.from({\r\n year: min,\r\n month: 1,\r\n date: 1,\r\n calendar: this._viewStartDate.calendar.name(),\r\n }),\r\n AXDateTime.from({\r\n year: max,\r\n month: 12,\r\n date: 28,\r\n calendar: this._viewStartDate.calendar.name(),\r\n })\r\n );\r\n case 'months':\r\n return new AXDateTimeRange(\r\n current.startOf('year'),\r\n current.endOf('year').add('day', -1)\r\n );\r\n default:\r\n return new AXDateTimeRange(\r\n current.startOf('month'),\r\n current.endOf('month')\r\n );\r\n }\r\n }\r\n\r\n protected _today = new AXDateTime(new Date(), this.type);\r\n private _viewStartDate!: AXDateTime;\r\n\r\n protected _navText: string = '';\r\n protected _todayText: string = '';\r\n\r\n protected _slots: any[] = [];\r\n protected _dayNames: string[] = [];\r\n\r\n private _isUserInteraction: boolean = false;\r\n\r\n constructor(elementRef: ElementRef, private cdr: ChangeDetectorRef) {\r\n super(elementRef, cdr);\r\n }\r\n\r\n private _initValues() {\r\n this._today = new AXDateTime(new Date(), this.type);\r\n this._dayNames = this._today.calendar.dayShortNames;\r\n }\r\n\r\n private _refresh() {\r\n this._initValues();\r\n this.navTo(this.value || this._today);\r\n }\r\n\r\n protected onInit() {\r\n this._initValues();\r\n if (!this.value) this.goToday();\r\n }\r\n\r\n private _genearteSlots() {\r\n if (!this._viewStartDate) return;\r\n const vr = this._viewRange;\r\n // just for tailwind\r\n //'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'\r\n // year view\r\n if (this.activeView == 'years') {\r\n const a = vr.enumurate('year');\r\n this._slots = a.map((d, i) => {\r\n const r: any = {};\r\n r.date = d.date;\r\n r.text = d.format('YYYY');\r\n r.disabled =\r\n (this.min && d.compare(this.min, 'year') == -1) ||\r\n (this.max && d.compare(this.max, 'year') == 1);\r\n if (r.disabled) {\r\n r.cssClass = {\r\n 'ax-state-disabled': r.disabled,\r\n };\r\n } else {\r\n r.cssClass = {\r\n 'ax-state-today': d.equal(this._today, 'year'),\r\n 'ax-state-selected':\r\n this.value &&\r\n this.depth == 'years' &&\r\n d.equal(this.value, 'year'),\r\n };\r\n }\r\n // r.cssClass[`ax-col-start-2`] = i == 0;\r\n return r;\r\n });\r\n\r\n this._navText = `${vr.startTime.year} - ${vr.endTime.year}`;\r\n this._todayText = this._today.format('YYYY');\r\n }\r\n // month view\r\n else if (this.activeView == 'months') {\r\n const a = vr.enumurate('month');\r\n this._slots = a.map((d, i) => {\r\n const r: any = {};\r\n r.date = d.date;\r\n r.text = d.format('MMM');\r\n r.tooltip = d.format('MMMM YYYY');\r\n r.disabled =\r\n (this.min && d.compare(this.min, 'month') == -1) ||\r\n (this.max && d.compare(this.max, 'month') == 1);\r\n if (r.disabled) {\r\n r.cssClass = {\r\n 'ax-state-disabled': r.disabled,\r\n };\r\n } else {\r\n r.cssClass = {\r\n 'ax-state-today': d.equal(this._today, 'month'),\r\n 'ax-state-selected':\r\n this.value &&\r\n this.depth == 'months' &&\r\n d.equal(this.value, 'month'),\r\n 'ax-state-other': d.year != this._viewStartDate.year,\r\n };\r\n }\r\n return r;\r\n });\r\n this._navText = this._viewStartDate.format('YYYY');\r\n this._todayText = this._today.format('MMMM YYYY');\r\n }\r\n // day view\r\n else {\r\n const a = vr.enumurate('day');\r\n this._slots = a.map((d, i) => {\r\n const r: any = {};\r\n r.date = d.date;\r\n r.text = d.dayOfMonth;\r\n r.tooltip = d.format();\r\n r.disabled =\r\n (this.min && d.compare(this.min, 'day') == -1) ||\r\n (this.max && d.compare(this.max, 'day') == 1) ||\r\n this.isDisabled(d);\r\n if (r.disabled) {\r\n r.cssClass = {\r\n 'ax-state-disabled': true,\r\n };\r\n } else {\r\n r.cssClass = {\r\n 'ax-state-today': d.equal(this._today, 'day'),\r\n 'ax-state-selected': this.value && d.equal(this.value, 'day'),\r\n 'ax-state-holiday': this.isHoliday(d) || this.isWeekend(d),\r\n // 'ax-state-event-danger': d.dayOfMonth == 12,\r\n // 'ax-state-event': d.dayOfMonth == 12,\r\n };\r\n }\r\n\r\n r.cssClass[`ax-col-start-${vr.startTime.dayOfWeek}`] = i == 0;\r\n return r;\r\n });\r\n this._navText = this._viewStartDate.format('MMMM YYYY');\r\n this._todayText = this._today.format();\r\n }\r\n }\r\n\r\n protected _handlePrevClick() {\r\n this._isUserInteraction = true;\r\n this.prev();\r\n this._isUserInteraction = false;\r\n }\r\n\r\n protected _handleNextClick() {\r\n this._isUserInteraction = true;\r\n this.next();\r\n this._isUserInteraction = false;\r\n }\r\n\r\n protected _handleSlotClick(e: MouseEvent, slot) {\r\n if (slot.disabled || this.disabled) return;\r\n if (this.activeView == 'days') {\r\n this._setDate(slot.date);\r\n } else if (this.activeView == 'months' && this.depth == 'days') {\r\n this.activeView = 'days';\r\n this.navTo(slot.date);\r\n } else if (this.activeView == 'months' && this.depth == 'months') {\r\n this._setDate(slot.date);\r\n } else if (\r\n this.activeView == 'years' &&\r\n (this.depth == 'days' || this.depth == 'months')\r\n ) {\r\n this.activeView = 'months';\r\n this.navTo(slot.date);\r\n } else if (this.activeView == 'years' && this.depth == 'years') {\r\n this._setDate(slot.date);\r\n }\r\n this.onSlotClick.emit({\r\n component: this,\r\n item: slot.date,\r\n isUserInteraction: true,\r\n nativeEvent: e,\r\n });\r\n }\r\n\r\n protected _handleNavClick(e: AXClickEvent | any) {\r\n this._isUserInteraction = true;\r\n if (this.activeView == 'days') this.activeView = 'months';\r\n else if (this.activeView == 'months') this.activeView = 'years';\r\n this._isUserInteraction = false;\r\n }\r\n\r\n protected _onOptionChanged(option: AXComponentOptionChanged) {\r\n if (\r\n option.name == 'depth' ||\r\n option.name == 'activeView' ||\r\n option.name == 'disabledDates' ||\r\n option.name == 'holidayDates'\r\n ) {\r\n this._genearteSlots();\r\n }\r\n if (option.name == 'type') {\r\n this._refresh();\r\n }\r\n }\r\n\r\n protected _onValueChanged(oldValue, newValue) {\r\n this._viewStartDate = new AXDateTime(newValue, this.type);\r\n this._genearteSlots();\r\n }\r\n\r\n protected _handleGoToday() {\r\n this._isUserInteraction = true;\r\n this._setDate(this._today.date);\r\n this.goToday();\r\n this._isUserInteraction = false;\r\n }\r\n\r\n next() {\r\n this._navNextPrev(false);\r\n }\r\n\r\n prev() {\r\n this._navNextPrev(true);\r\n }\r\n\r\n focus() {\r\n const func = (s: string) =>\r\n (this._getHostElement() as HTMLDivElement).querySelector<HTMLDivElement>(\r\n s\r\n );\r\n const div =\r\n func('.ax-calendar-slots>div.ax-state-selected') ||\r\n func('.ax-calendar-slots>div');\r\n div?.focus();\r\n }\r\n\r\n private _navNextPrev(prev: boolean) {\r\n const sign = prev ? -1 : 1;\r\n if (this.activeView == 'days')\r\n this.navTo(this._viewStartDate.add('month', sign * 1));\r\n else if (this.activeView == 'months')\r\n this.navTo(this._viewStartDate.add('year', sign * 1));\r\n else this.navTo(this._viewStartDate.add('year', sign * 10));\r\n }\r\n\r\n goToday() {\r\n this.navTo(this._today);\r\n }\r\n\r\n navTo(date: Date | AXDateTime) {\r\n this._viewStartDate = AXDateTime.convert(\r\n date,\r\n this._today.calendar.name()\r\n ).startOf();\r\n const vr = this._viewRange;\r\n this.onNavigate.emit({\r\n component: this,\r\n isUserInteraction: this._isUserInteraction,\r\n start: vr.startTime?.date,\r\n end: vr.endTime?.date,\r\n htmlElement: this._getHostElement(),\r\n });\r\n if (this.interface == 'calendar') this._genearteSlots();\r\n else {\r\n this._generatePickerItems('year');\r\n this._generatePickerItems('month');\r\n }\r\n setTimeout(() => {\r\n this.focus();\r\n }, 50);\r\n }\r\n\r\n @HostBinding('class')\r\n private get __hostClass(): string {\r\n const _classes = {\r\n 'ax-state-disabled': this.disabled,\r\n };\r\n return Object.entries(_classes)\r\n .filter(c => c[1])\r\n .map(c => c[0])\r\n .join(' ');\r\n }\r\n\r\n private _setDate(value: Date) {\r\n this.value = AXDateTime.convert(\r\n value,\r\n this._today.calendar.name()\r\n ).startOf().date;\r\n }\r\n\r\n protected isDisabled(date: AXDateTime): boolean {\r\n if (Array.isArray(this.disabledDates) && this.disabledDates.length != 0) {\r\n return this.disabledDates.some(d => date.equal(d, 'day'));\r\n } else if (typeof this.disabledDates == 'function') {\r\n return this.disabledDates(date.date);\r\n }\r\n return false;\r\n }\r\n\r\n protected isHoliday(date: AXDateTime): boolean {\r\n if (Array.isArray(this.holidayDates) && this.holidayDates.length != 0) {\r\n return this.holidayDates.some(d => date.equal(d, 'day'));\r\n } else if (typeof this.holidayDates == 'function') {\r\n return this.holidayDates(date.date);\r\n }\r\n return false;\r\n }\r\n\r\n protected isWeekend(date: AXDateTime): boolean {\r\n //return date.dayOfWeek == 7 || date.dayOfWeek == 1;\r\n const weekend = AXConfig.get(\r\n `dateTime.calendars.${this.type}.weekend`\r\n ) as number[];\r\n return weekend.includes(date.dayOfWeek);\r\n }\r\n\r\n protected _pickerDays: number[] = [];\r\n protected _pickerMonths: { text: string; value: number }[] = [];\r\n protected _pickerYears: number[] = [];\r\n\r\n private _generatePickerItems(view) {\r\n switch (view) {\r\n case 'year':\r\n this._pickerYears = range(2000, 2050, 1);\r\n break;\r\n case 'month':\r\n this._pickerMonths = new AXDateTimeRange(\r\n this._viewRange.startTime.startOf('year'),\r\n this._viewRange.startTime.endOf('year')\r\n )\r\n .enumurate('month')\r\n .map(c => ({\r\n text: c.format('MMM'),\r\n value: c.monthOfYear,\r\n }));\r\n break;\r\n default:\r\n this._pickerDays = new AXDateTimeRange(\r\n this._viewRange.startTime.startOf('month'),\r\n this._viewRange.startTime.endOf('month')\r\n )\r\n .enumurate('day')\r\n .map(c => c.dayOfMonth);\r\n this.cdr.detectChanges();\r\n break;\r\n }\r\n }\r\n\r\n protected _handlePickerChange(item: any, view) {\r\n if (!item) return;\r\n const date = this._viewRange.startTime;\r\n switch (view) {\r\n case 'year':\r\n this._setDate(date.set('year', item.value).date);\r\n break;\r\n case 'month':\r\n this._setDate(date.set('month', item.value.value).date);\r\n this._generatePickerItems('day');\r\n break;\r\n default:\r\n this._setDate(date.set('day', item.value).date);\r\n break;\r\n }\r\n }\r\n}\r\n","<ng-container *ngIf=\"interface === 'calendar'; else pickerTemplate\">\r\n <div class=\"ax-calendar-header\">\r\n <div class=\"ax-calendar-header-info\">\r\n <ng-container *ngIf=\"activeView == 'days'; else elseTemplate\">\r\n <button\r\n [attr.disabled]=\"disabled ? '' : null\"\r\n class=\"ax-general-button\"\r\n (click)=\"_handleNavClick($event)\">\r\n {{ _navText.split(' ')[1] }}\r\n </button>\r\n <button\r\n [attr.disabled]=\"disabled ? '' : null\"\r\n class=\"ax-general-button\"\r\n (click)=\"_handleNavClick($event)\">\r\n {{ _navText.split(' ')[0] }}\r\n </button>\r\n </ng-container>\r\n <ng-template #elseTemplate>\r\n <button\r\n [attr.disabled]=\"disabled ? '' : null\"\r\n class=\"ax-general-button\"\r\n (click)=\"_handleNavClick($event)\">\r\n {{ _navText }}\r\n </button>\r\n </ng-template>\r\n </div>\r\n <div class=\"ax-calendar-header-buttons\">\r\n <button\r\n [attr.disabled]=\"disabled ? '' : null\"\r\n class=\"ax-general-button ax-button-icon\"\r\n (click)=\"_handlePrevClick()\">\r\n <i\r\n class=\"ax-icon\"\r\n [ngClass]=\"{\r\n 'ax-icon-chevron-left': !rtl,\r\n 'ax-icon-chevron-right': rtl\r\n }\"></i>\r\n </button>\r\n\r\n <button\r\n [attr.disabled]=\"disabled ? '' : null\"\r\n class=\"ax-general-button ax-button-icon\"\r\n (click)=\"_handleNextClick()\">\r\n <i\r\n class=\"ax-icon\"\r\n [ngClass]=\"{\r\n 'ax-icon-chevron-left': rtl,\r\n 'ax-icon-chevron-right': !rtl\r\n }\"></i>\r\n </button>\r\n </div>\r\n </div>\r\n <div class=\"ax-calendar-body\">\r\n <div [ngSwitch]=\"activeView\">\r\n <ng-container *ngSwitchCase=\"'years'\">\r\n <div class=\"ax-calendar-slots ax-calendar-slots-year\">\r\n <div\r\n tabindex=\"0\"\r\n *ngFor=\"let slot of _slots\"\r\n [ngClass]=\"slot.cssClass\"\r\n (click)=\"_handleSlotClick($event, slot)\">\r\n {{ slot.text }}\r\n </div>\r\n </div>\r\n </ng-container>\r\n <ng-container *ngSwitchCase=\"'months'\">\r\n <div class=\"ax-calendar-slots ax-calendar-slots-month\">\r\n <div\r\n tabindex=\"0\"\r\n *ngFor=\"let slot of _slots\"\r\n [title]=\"slot.tooltip\"\r\n [ngClass]=\"slot.cssClass\"\r\n (click)=\"_handleSlotClick($event, slot)\">\r\n {{ slot.text }}\r\n </div>\r\n </div>\r\n </ng-container>\r\n <ng-container *ngSwitchDefault>\r\n <div class=\"ax-calendar-week\">\r\n <div *ngFor=\"let d of _dayNames\">{{ d }}</div>\r\n </div>\r\n <div class=\"ax-calendar-slots ax-calendar-slots-day\">\r\n <div\r\n tabindex=\"0\"\r\n *ngFor=\"let slot of _slots\"\r\n [title]=\"slot.tooltip\"\r\n [ngClass]=\"slot.cssClass\"\r\n (click)=\"_handleSlotClick($event, slot)\">\r\n {{ slot.text }}\r\n </div>\r\n </div>\r\n </ng-container>\r\n </div>\r\n </div>\r\n\r\n <div class=\"ax-calendar-footer\">\r\n <button\r\n class=\"ax-today-button\"\r\n tabindex=\"-1\"\r\n [class.ax-state-disabled]=\"disabled\"\r\n [attr.disabled]=\"(disabled || isDisabled(_today)?true:null)\"\r\n (click)=\"_handleGoToday()\"\r\n *ngIf=\"activeView == 'days'\">\r\n {{ _todayText }}\r\n </button>\r\n </div>\r\n</ng-container>\r\n<ng-template #pickerTemplate>\r\n <div class=\"ax-calendar-picker\">//TODO: picker</div>\r\n</ng-template>\r\n","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { AXDateTimeModule } from '@acorex/core/dateTime';\r\nimport { AXCalendarComponent } from './calendar.component';\r\n\r\nconst COMPONENT = [AXCalendarComponent];\r\nconst MODULES = [CommonModule, AXDateTimeModule];\r\n\r\n@NgModule({\r\n declarations: [...COMPONENT],\r\n imports: [...MODULES],\r\n exports: [...COMPONENT],\r\n providers: [],\r\n})\r\nexport class AXCalendarModule { }\r\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":"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"}
@@ -11,10 +11,10 @@ class AXCardComponent extends AXBaseComponent {
11
11
  ngOnInit() { }
12
12
  }
13
13
  AXCardComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.1.4", ngImport: i0, type: AXCardComponent, deps: [{ token: i0.ElementRef }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component });
14
- AXCardComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.1.4", type: AXCardComponent, selector: "ax-card", usesInheritance: true, ngImport: i0, template: "<ng-content select=\"ax-image,img\"></ng-content>\r\n<div class=\"ax-card-content\">\r\n <ng-content select=\"ax-title\"></ng-content>\r\n <ng-content select=\"ax-content\"></ng-content>\r\n</div>\r\n", styles: ["ax-card{width:100%;height:100%;display:block;background:rgb(var(--ax-color-surface));border:1px solid;border-color:rgb(var(--ax-color-border-default));box-shadow:0 1px 3px #0000001a,0 1px 2px #0000000f;border-radius:var(--ax-rounded-border-default);overflow:hidden}ax-card .ax-card-content{padding:1.5rem;display:flex;flex-direction:column;gap:.5rem}ax-card .ax-card-content .ax-title{font-size:1.375rem;font-weight:400}ax-card .ax-card-content .ax-content{font-size:1rem}\n"], encapsulation: i0.ViewEncapsulation.None });
14
+ AXCardComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.1.4", type: AXCardComponent, selector: "ax-card", usesInheritance: true, ngImport: i0, template: "<ng-content select=\"ax-image,img\"></ng-content>\r\n<div class=\"ax-card-content\">\r\n <ng-content select=\"ax-title\"></ng-content>\r\n <ng-content select=\"ax-content\"></ng-content>\r\n</div>\r\n", styles: ["ax-card{width:100%;height:100%;display:block;background:rgb(var(--ax-color-surface));border:1px solid;border-color:rgb(var(--ax-color-border-default));box-shadow:0 1px 3px #0000001a,0 1px 2px #0000000f;border-radius:var(--ax-rounded-border-default);overflow:hidden}ax-card .ax-card-content{padding:1.5rem;display:flex;flex-direction:column;gap:.5rem}ax-card .ax-card-content ax-title{font-size:1.375rem;font-weight:400}ax-card .ax-card-content .ax-content{font-size:1rem}\n"], encapsulation: i0.ViewEncapsulation.None });
15
15
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.1.4", ngImport: i0, type: AXCardComponent, decorators: [{
16
16
  type: Component,
17
- args: [{ selector: 'ax-card', encapsulation: ViewEncapsulation.None, template: "<ng-content select=\"ax-image,img\"></ng-content>\r\n<div class=\"ax-card-content\">\r\n <ng-content select=\"ax-title\"></ng-content>\r\n <ng-content select=\"ax-content\"></ng-content>\r\n</div>\r\n", styles: ["ax-card{width:100%;height:100%;display:block;background:rgb(var(--ax-color-surface));border:1px solid;border-color:rgb(var(--ax-color-border-default));box-shadow:0 1px 3px #0000001a,0 1px 2px #0000000f;border-radius:var(--ax-rounded-border-default);overflow:hidden}ax-card .ax-card-content{padding:1.5rem;display:flex;flex-direction:column;gap:.5rem}ax-card .ax-card-content .ax-title{font-size:1.375rem;font-weight:400}ax-card .ax-card-content .ax-content{font-size:1rem}\n"] }]
17
+ args: [{ selector: 'ax-card', encapsulation: ViewEncapsulation.None, template: "<ng-content select=\"ax-image,img\"></ng-content>\r\n<div class=\"ax-card-content\">\r\n <ng-content select=\"ax-title\"></ng-content>\r\n <ng-content select=\"ax-content\"></ng-content>\r\n</div>\r\n", styles: ["ax-card{width:100%;height:100%;display:block;background:rgb(var(--ax-color-surface));border:1px solid;border-color:rgb(var(--ax-color-border-default));box-shadow:0 1px 3px #0000001a,0 1px 2px #0000000f;border-radius:var(--ax-rounded-border-default);overflow:hidden}ax-card .ax-card-content{padding:1.5rem;display:flex;flex-direction:column;gap:.5rem}ax-card .ax-card-content ax-title{font-size:1.375rem;font-weight:400}ax-card .ax-card-content .ax-content{font-size:1rem}\n"] }]
18
18
  }], ctorParameters: function () { return [{ type: i0.ElementRef }, { type: i0.ChangeDetectorRef }]; } });
19
19
 
20
20
  class AXCardModule {
@@ -1 +1 @@
1
- {"version":3,"file":"acorex-components-card.mjs","sources":["../../../../projects/acorex/components/card/src/card.component.ts","../../../../projects/acorex/components/card/src/card.component.html","../../../../projects/acorex/components/card/src/card.module.ts","../../../../projects/acorex/components/card/acorex-components-card.ts"],"sourcesContent":["import { AXBaseComponent } from '@acorex/components/mixin';\r\nimport {\r\n ChangeDetectorRef,\r\n Component,\r\n ElementRef,\r\n Input,\r\n ViewEncapsulation,\r\n} from '@angular/core';\r\n\r\n@Component({\r\n selector: 'ax-card',\r\n templateUrl: './card.component.html',\r\n styleUrls: ['./card.component.scss'],\r\n encapsulation: ViewEncapsulation.None,\r\n})\r\nexport class AXCardComponent extends AXBaseComponent {\r\n constructor(elementRef: ElementRef, private cdr: ChangeDetectorRef) {\r\n super(elementRef, cdr);\r\n }\r\n\r\n ngOnInit(): void {}\r\n}\r\n","<ng-content select=\"ax-image,img\"></ng-content>\r\n<div class=\"ax-card-content\">\r\n <ng-content select=\"ax-title\"></ng-content>\r\n <ng-content select=\"ax-content\"></ng-content>\r\n</div>\r\n","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { AXCardComponent } from './card.component';\r\n\r\n@NgModule({\r\n declarations: [AXCardComponent],\r\n imports: [CommonModule],\r\n exports: [AXCardComponent],\r\n providers: [],\r\n})\r\nexport class AXCardModule {}\r\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":";;;;;AAeM,MAAO,eAAgB,SAAQ,eAAe,CAAA;IAClD,WAAY,CAAA,UAAsB,EAAU,GAAsB,EAAA;AAChE,QAAA,KAAK,CAAC,UAAU,EAAE,GAAG,CAAC,CAAC;QADmB,IAAG,CAAA,GAAA,GAAH,GAAG,CAAmB;KAEjE;AAED,IAAA,QAAQ,MAAW;;4GALR,eAAe,EAAA,IAAA,EAAA,CAAA,EAAA,KAAA,EAAA,EAAA,CAAA,UAAA,EAAA,EAAA,EAAA,KAAA,EAAA,EAAA,CAAA,iBAAA,EAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;AAAf,eAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,eAAe,sECf5B,4MAKA,EAAA,MAAA,EAAA,CAAA,4dAAA,CAAA,EAAA,aAAA,EAAA,EAAA,CAAA,iBAAA,CAAA,IAAA,EAAA,CAAA,CAAA;2FDUa,eAAe,EAAA,UAAA,EAAA,CAAA;kBAN3B,SAAS;+BACE,SAAS,EAAA,aAAA,EAGJ,iBAAiB,CAAC,IAAI,EAAA,QAAA,EAAA,4MAAA,EAAA,MAAA,EAAA,CAAA,4dAAA,CAAA,EAAA,CAAA;;;MEH1B,YAAY,CAAA;;yGAAZ,YAAY,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,QAAA,EAAA,CAAA,CAAA;AAAZ,YAAA,CAAA,IAAA,GAAA,EAAA,CAAA,mBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,YAAY,EALR,YAAA,EAAA,CAAA,eAAe,CACpB,EAAA,OAAA,EAAA,CAAA,YAAY,aACZ,eAAe,CAAA,EAAA,CAAA,CAAA;AAGd,YAAA,CAAA,IAAA,GAAA,EAAA,CAAA,mBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,YAAY,YAJb,YAAY,CAAA,EAAA,CAAA,CAAA;2FAIX,YAAY,EAAA,UAAA,EAAA,CAAA;kBANxB,QAAQ;AAAC,YAAA,IAAA,EAAA,CAAA;oBACR,YAAY,EAAE,CAAC,eAAe,CAAC;oBAC/B,OAAO,EAAE,CAAC,YAAY,CAAC;oBACvB,OAAO,EAAE,CAAC,eAAe,CAAC;AAC1B,oBAAA,SAAS,EAAE,EAAE;AACd,iBAAA,CAAA;;;ACTD;;AAEG;;;;"}
1
+ {"version":3,"file":"acorex-components-card.mjs","sources":["../../../../projects/acorex/components/card/src/card.component.ts","../../../../projects/acorex/components/card/src/card.component.html","../../../../projects/acorex/components/card/src/card.module.ts","../../../../projects/acorex/components/card/acorex-components-card.ts"],"sourcesContent":["import { AXBaseComponent } from '@acorex/components/mixin';\r\nimport {\r\n ChangeDetectorRef,\r\n Component,\r\n ElementRef,\r\n Input,\r\n ViewEncapsulation,\r\n} from '@angular/core';\r\n\r\n@Component({\r\n selector: 'ax-card',\r\n templateUrl: './card.component.html',\r\n styleUrls: ['./card.component.scss'],\r\n encapsulation: ViewEncapsulation.None,\r\n})\r\nexport class AXCardComponent extends AXBaseComponent {\r\n constructor(elementRef: ElementRef, private cdr: ChangeDetectorRef) {\r\n super(elementRef, cdr);\r\n }\r\n\r\n ngOnInit(): void {}\r\n}\r\n","<ng-content select=\"ax-image,img\"></ng-content>\r\n<div class=\"ax-card-content\">\r\n <ng-content select=\"ax-title\"></ng-content>\r\n <ng-content select=\"ax-content\"></ng-content>\r\n</div>\r\n","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { AXCardComponent } from './card.component';\r\n\r\n@NgModule({\r\n declarations: [AXCardComponent],\r\n imports: [CommonModule],\r\n exports: [AXCardComponent],\r\n providers: [],\r\n})\r\nexport class AXCardModule {}\r\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":";;;;;AAeM,MAAO,eAAgB,SAAQ,eAAe,CAAA;IAClD,WAAY,CAAA,UAAsB,EAAU,GAAsB,EAAA;AAChE,QAAA,KAAK,CAAC,UAAU,EAAE,GAAG,CAAC,CAAC;QADmB,IAAG,CAAA,GAAA,GAAH,GAAG,CAAmB;KAEjE;AAED,IAAA,QAAQ,MAAW;;4GALR,eAAe,EAAA,IAAA,EAAA,CAAA,EAAA,KAAA,EAAA,EAAA,CAAA,UAAA,EAAA,EAAA,EAAA,KAAA,EAAA,EAAA,CAAA,iBAAA,EAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;AAAf,eAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,eAAe,sECf5B,4MAKA,EAAA,MAAA,EAAA,CAAA,2dAAA,CAAA,EAAA,aAAA,EAAA,EAAA,CAAA,iBAAA,CAAA,IAAA,EAAA,CAAA,CAAA;2FDUa,eAAe,EAAA,UAAA,EAAA,CAAA;kBAN3B,SAAS;+BACE,SAAS,EAAA,aAAA,EAGJ,iBAAiB,CAAC,IAAI,EAAA,QAAA,EAAA,4MAAA,EAAA,MAAA,EAAA,CAAA,2dAAA,CAAA,EAAA,CAAA;;;MEH1B,YAAY,CAAA;;yGAAZ,YAAY,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,QAAA,EAAA,CAAA,CAAA;AAAZ,YAAA,CAAA,IAAA,GAAA,EAAA,CAAA,mBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,YAAY,EALR,YAAA,EAAA,CAAA,eAAe,CACpB,EAAA,OAAA,EAAA,CAAA,YAAY,aACZ,eAAe,CAAA,EAAA,CAAA,CAAA;AAGd,YAAA,CAAA,IAAA,GAAA,EAAA,CAAA,mBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,YAAY,YAJb,YAAY,CAAA,EAAA,CAAA,CAAA;2FAIX,YAAY,EAAA,UAAA,EAAA,CAAA;kBANxB,QAAQ;AAAC,YAAA,IAAA,EAAA,CAAA;oBACR,YAAY,EAAE,CAAC,eAAe,CAAC;oBAC/B,OAAO,EAAE,CAAC,YAAY,CAAC;oBACvB,OAAO,EAAE,CAAC,eAAe,CAAC;AAC1B,oBAAA,SAAS,EAAE,EAAE;AACd,iBAAA,CAAA;;;ACTD;;AAEG;;;;"}
@@ -35,6 +35,7 @@ class AXColorPaletteInputComponent extends AXBaseComponent {
35
35
  constructor(_elementRef, _cdr, _parent) {
36
36
  super(_elementRef, _cdr);
37
37
  this._parent = _parent;
38
+ this._isTouched = false;
38
39
  this._rgba = {
39
40
  r: 0,
40
41
  g: 0,
@@ -44,7 +45,7 @@ class AXColorPaletteInputComponent extends AXBaseComponent {
44
45
  this._hex = '';
45
46
  _parent._onInternalColorChanged$
46
47
  .pipe(distinctUntilChanged())
47
- .subscribe((e) => {
48
+ .subscribe(e => {
48
49
  if (!e.color) {
49
50
  this._hex = '';
50
51
  this._rgba = {
@@ -56,14 +57,18 @@ class AXColorPaletteInputComponent extends AXBaseComponent {
56
57
  }
57
58
  else {
58
59
  if (!AXColorUtil.equal(e.color, this._rgba)) {
59
- this._hex = AXColorUtil.toHexSting(e.color);
60
60
  Object.assign(this._rgba, AXColorUtil.to(e.color, 'rgba'));
61
+ this._hex = AXColorUtil.toString(e.color, 'hex');
62
+ if (this._rgba.a != 1 && !this._isTouched) {
63
+ this._parent.colorMode = 'rgba';
64
+ }
61
65
  }
62
66
  }
63
67
  _cdr.detectChanges();
64
68
  });
65
69
  }
66
70
  _handleChangeInputMode() {
71
+ this._isTouched = true;
67
72
  switch (this._parent.colorMode) {
68
73
  case 'rgba':
69
74
  this._parent.colorMode = 'hex';
@@ -78,20 +83,26 @@ class AXColorPaletteInputComponent extends AXBaseComponent {
78
83
  return;
79
84
  const { r, g, b, a } = this._rgba;
80
85
  const _color = `rgba(${r},${g},${b},${a})`;
81
- this._parent._setUserInteraction();
86
+ if (e.isUserInteraction) {
87
+ this._parent._setUserInteraction();
88
+ this._isTouched = true;
89
+ }
82
90
  this._parent._onInternalColorChanged$.next({
83
91
  color: AXColorUtil.toString(_color, 'rgba'),
84
92
  mode: 'rgba',
85
93
  });
86
94
  }
87
95
  _handleHEXAValueChanged(e) {
88
- if (e.value != null) {
96
+ if (e.value == null || (e.value == '' && !e.oldValue))
97
+ return;
98
+ if (e.isUserInteraction) {
89
99
  this._parent._setUserInteraction();
90
- this._parent._onInternalColorChanged$.next({
91
- color: AXColorUtil.toString(e.value, 'hex'),
92
- mode: 'hex',
93
- });
100
+ this._isTouched = true;
94
101
  }
102
+ this._parent._onInternalColorChanged$.next({
103
+ color: AXColorUtil.toString(e.value, 'hex'),
104
+ mode: 'hex',
105
+ });
95
106
  }
96
107
  }
97
108
  AXColorPaletteInputComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.1.4", ngImport: i0, type: AXColorPaletteInputComponent, deps: [{ token: i0.ElementRef }, { token: i0.ChangeDetectorRef }, { token: AXColorComponent, optional: true }], target: i0.ɵɵFactoryTarget.Component });
@@ -100,7 +111,7 @@ AXColorPaletteInputComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14
100
111
  provide: AXColorPaletteChildComponent,
101
112
  useExisting: AXColorPaletteInputComponent,
102
113
  },
103
- ], usesInheritance: true, ngImport: i0, template: "<ng-container [ngSwitch]=\"_parent.colorMode\">\r\n <div class=\"palette-inputs\">\r\n <ng-container *ngSwitchCase=\"'hex'\">\r\n <div>\r\n <ax-text-box [value]=\"_hex\" [disabled]=\"_parent.disabled\" [readonly]=\"_parent.readonly\" (onValueChanged)=\"_handleHEXAValueChanged($event)\">\r\n </ax-text-box>\r\n <label>HEX</label>\r\n </div>\r\n </ng-container>\r\n <ng-container *ngSwitchCase=\"'rgba'\">\r\n <div>\r\n <ax-number-box [minValue]=\"0\" [maxValue]=\"255\" [(value)]=\"_rgba.r\" [showSpinButtons]=\"false\" [disabled]=\"_parent.disabled\" [readonly]=\"_parent.readonly\"\r\n (onValueChanged)=\"_handleRGBAValueChanged($event)\">\r\n </ax-number-box>\r\n <label>R</label>\r\n </div>\r\n <div>\r\n <ax-number-box [minValue]=\"0\" [maxValue]=\"255\" [(value)]=\"_rgba.g\" [showSpinButtons]=\"false\" [disabled]=\"_parent.disabled\" [readonly]=\"_parent.readonly\"\r\n (onValueChanged)=\"_handleRGBAValueChanged($event)\">\r\n </ax-number-box>\r\n <label>G</label>\r\n </div>\r\n <div>\r\n <ax-number-box [minValue]=\"0\" [maxValue]=\"255\" [(value)]=\"_rgba.b\" [showSpinButtons]=\"false\" [disabled]=\"_parent.disabled\" [readonly]=\"_parent.readonly\"\r\n (onValueChanged)=\"_handleRGBAValueChanged($event)\">\r\n </ax-number-box>\r\n <label>B</label>\r\n </div>\r\n <div>\r\n <ax-number-box [minValue]=\"0\" [maxValue]=\"1\" [(value)]=\"_rgba.a\" [decimals]=\"2\" [step]=\"0.1\" [disabled]=\"_parent.disabled\" [readonly]=\"_parent.readonly\"\r\n [showSpinButtons]=\"false\" (onValueChanged)=\"_handleRGBAValueChanged($event)\">\r\n </ax-number-box>\r\n <label>A</label>\r\n </div>\r\n </ng-container>\r\n </div>\r\n <button class=\"ax-general-button ax-button-icon\" (click)=\"_handleChangeInputMode()\" [disabled]=\"_parent.disabled\">\r\n <span class=\"ax-icon ax-icon-unfold-more\"></span>\r\n </button>\r\n</ng-container>", dependencies: [{ kind: "directive", type: i1.NgSwitch, selector: "[ngSwitch]", inputs: ["ngSwitch"] }, { kind: "directive", type: i1.NgSwitchCase, selector: "[ngSwitchCase]", inputs: ["ngSwitchCase"] }, { kind: "component", type: i2.AXTextBoxComponent, selector: "ax-text-box", inputs: ["disabled", "tabIndex", "readonly", "value", "name", "placeholder", "maxLength", "allowNull", "type", "autoComplete", "mask-options"], outputs: ["onBlur", "onFocus", "valueChange", "onValueChanged"] }, { kind: "component", type: i3.AXNumberBoxComponent, selector: "ax-number-box", inputs: ["disabled", "readonly", "tabIndex", "size", "value", "placeholder", "maxLength", "allowNull", "type", "autoComplete", "name", "checked", "thousandsSeparator", "padDecimalZeros", "step", "decimals", "decimalStep", "showSpinButtons", "minValue", "maxValue"], outputs: ["valueChange", "onValueChanged", "onBlur", "onFocus"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
114
+ ], usesInheritance: true, ngImport: i0, template: "<ng-container [ngSwitch]=\"_parent.colorMode\">\r\n <div class=\"palette-inputs\">\r\n <ng-container *ngSwitchCase=\"'hex'\">\r\n <div>\r\n <ax-text-box\r\n class=\"ax-sm\"\r\n [value]=\"_hex\"\r\n [disabled]=\"_parent.disabled\"\r\n [readonly]=\"_parent.readonly\"\r\n (onValueChanged)=\"_handleHEXAValueChanged($event)\">\r\n </ax-text-box>\r\n <label>HEX</label>\r\n </div>\r\n </ng-container>\r\n <ng-container *ngSwitchCase=\"'rgba'\">\r\n <div>\r\n <ax-number-box\r\n class=\"ax-sm\"\r\n [minValue]=\"0\"\r\n [maxValue]=\"255\"\r\n [(value)]=\"_rgba.r\"\r\n [showSpinButtons]=\"false\"\r\n [disabled]=\"_parent.disabled\"\r\n [readonly]=\"_parent.readonly\"\r\n (onValueChanged)=\"_handleRGBAValueChanged($event)\">\r\n </ax-number-box>\r\n <label>R</label>\r\n </div>\r\n <div>\r\n <ax-number-box\r\n class=\"ax-sm\"\r\n [minValue]=\"0\"\r\n [maxValue]=\"255\"\r\n [(value)]=\"_rgba.g\"\r\n [showSpinButtons]=\"false\"\r\n [disabled]=\"_parent.disabled\"\r\n [readonly]=\"_parent.readonly\"\r\n (onValueChanged)=\"_handleRGBAValueChanged($event)\">\r\n </ax-number-box>\r\n <label>G</label>\r\n </div>\r\n <div>\r\n <ax-number-box\r\n class=\"ax-sm\"\r\n [minValue]=\"0\"\r\n [maxValue]=\"255\"\r\n [(value)]=\"_rgba.b\"\r\n [showSpinButtons]=\"false\"\r\n [disabled]=\"_parent.disabled\"\r\n [readonly]=\"_parent.readonly\"\r\n (onValueChanged)=\"_handleRGBAValueChanged($event)\">\r\n </ax-number-box>\r\n <label>B</label>\r\n </div>\r\n <div>\r\n <ax-number-box\r\n class=\"ax-sm\"\r\n [minValue]=\"0\"\r\n [maxValue]=\"1\"\r\n [(value)]=\"_rgba.a\"\r\n [decimals]=\"2\"\r\n [step]=\"0.1\"\r\n [disabled]=\"_parent.disabled\"\r\n [readonly]=\"_parent.readonly\"\r\n [showSpinButtons]=\"false\"\r\n (onValueChanged)=\"_handleRGBAValueChanged($event)\">\r\n </ax-number-box>\r\n <label>A</label>\r\n </div>\r\n </ng-container>\r\n </div>\r\n <button\r\n class=\"ax-general-button ax-button-icon ax-sm\"\r\n (click)=\"_handleChangeInputMode()\"\r\n [disabled]=\"_parent.disabled\">\r\n <span class=\"ax-icon ax-icon-unfold-more\"></span>\r\n </button>\r\n</ng-container>\r\n", dependencies: [{ kind: "directive", type: i1.NgSwitch, selector: "[ngSwitch]", inputs: ["ngSwitch"] }, { kind: "directive", type: i1.NgSwitchCase, selector: "[ngSwitchCase]", inputs: ["ngSwitchCase"] }, { kind: "component", type: i2.AXTextBoxComponent, selector: "ax-text-box", inputs: ["disabled", "tabIndex", "readonly", "value", "name", "placeholder", "maxLength", "allowNull", "type", "autoComplete", "mask-options"], outputs: ["onBlur", "onFocus", "valueChange", "onValueChanged"] }, { kind: "component", type: i3.AXNumberBoxComponent, selector: "ax-number-box", inputs: ["disabled", "readonly", "tabIndex", "size", "value", "placeholder", "maxLength", "allowNull", "type", "autoComplete", "name", "checked", "thousandsSeparator", "padDecimalZeros", "step", "decimals", "decimalStep", "showSpinButtons", "minValue", "maxValue"], outputs: ["valueChange", "onValueChanged", "onBlur", "onFocus"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
104
115
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.1.4", ngImport: i0, type: AXColorPaletteInputComponent, decorators: [{
105
116
  type: Component,
106
117
  args: [{ selector: 'ax-color-palette-input', host: { class: 'ax-color-palette-input' }, encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, providers: [
@@ -108,7 +119,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.1.4", ngImpor
108
119
  provide: AXColorPaletteChildComponent,
109
120
  useExisting: AXColorPaletteInputComponent,
110
121
  },
111
- ], template: "<ng-container [ngSwitch]=\"_parent.colorMode\">\r\n <div class=\"palette-inputs\">\r\n <ng-container *ngSwitchCase=\"'hex'\">\r\n <div>\r\n <ax-text-box [value]=\"_hex\" [disabled]=\"_parent.disabled\" [readonly]=\"_parent.readonly\" (onValueChanged)=\"_handleHEXAValueChanged($event)\">\r\n </ax-text-box>\r\n <label>HEX</label>\r\n </div>\r\n </ng-container>\r\n <ng-container *ngSwitchCase=\"'rgba'\">\r\n <div>\r\n <ax-number-box [minValue]=\"0\" [maxValue]=\"255\" [(value)]=\"_rgba.r\" [showSpinButtons]=\"false\" [disabled]=\"_parent.disabled\" [readonly]=\"_parent.readonly\"\r\n (onValueChanged)=\"_handleRGBAValueChanged($event)\">\r\n </ax-number-box>\r\n <label>R</label>\r\n </div>\r\n <div>\r\n <ax-number-box [minValue]=\"0\" [maxValue]=\"255\" [(value)]=\"_rgba.g\" [showSpinButtons]=\"false\" [disabled]=\"_parent.disabled\" [readonly]=\"_parent.readonly\"\r\n (onValueChanged)=\"_handleRGBAValueChanged($event)\">\r\n </ax-number-box>\r\n <label>G</label>\r\n </div>\r\n <div>\r\n <ax-number-box [minValue]=\"0\" [maxValue]=\"255\" [(value)]=\"_rgba.b\" [showSpinButtons]=\"false\" [disabled]=\"_parent.disabled\" [readonly]=\"_parent.readonly\"\r\n (onValueChanged)=\"_handleRGBAValueChanged($event)\">\r\n </ax-number-box>\r\n <label>B</label>\r\n </div>\r\n <div>\r\n <ax-number-box [minValue]=\"0\" [maxValue]=\"1\" [(value)]=\"_rgba.a\" [decimals]=\"2\" [step]=\"0.1\" [disabled]=\"_parent.disabled\" [readonly]=\"_parent.readonly\"\r\n [showSpinButtons]=\"false\" (onValueChanged)=\"_handleRGBAValueChanged($event)\">\r\n </ax-number-box>\r\n <label>A</label>\r\n </div>\r\n </ng-container>\r\n </div>\r\n <button class=\"ax-general-button ax-button-icon\" (click)=\"_handleChangeInputMode()\" [disabled]=\"_parent.disabled\">\r\n <span class=\"ax-icon ax-icon-unfold-more\"></span>\r\n </button>\r\n</ng-container>" }]
122
+ ], template: "<ng-container [ngSwitch]=\"_parent.colorMode\">\r\n <div class=\"palette-inputs\">\r\n <ng-container *ngSwitchCase=\"'hex'\">\r\n <div>\r\n <ax-text-box\r\n class=\"ax-sm\"\r\n [value]=\"_hex\"\r\n [disabled]=\"_parent.disabled\"\r\n [readonly]=\"_parent.readonly\"\r\n (onValueChanged)=\"_handleHEXAValueChanged($event)\">\r\n </ax-text-box>\r\n <label>HEX</label>\r\n </div>\r\n </ng-container>\r\n <ng-container *ngSwitchCase=\"'rgba'\">\r\n <div>\r\n <ax-number-box\r\n class=\"ax-sm\"\r\n [minValue]=\"0\"\r\n [maxValue]=\"255\"\r\n [(value)]=\"_rgba.r\"\r\n [showSpinButtons]=\"false\"\r\n [disabled]=\"_parent.disabled\"\r\n [readonly]=\"_parent.readonly\"\r\n (onValueChanged)=\"_handleRGBAValueChanged($event)\">\r\n </ax-number-box>\r\n <label>R</label>\r\n </div>\r\n <div>\r\n <ax-number-box\r\n class=\"ax-sm\"\r\n [minValue]=\"0\"\r\n [maxValue]=\"255\"\r\n [(value)]=\"_rgba.g\"\r\n [showSpinButtons]=\"false\"\r\n [disabled]=\"_parent.disabled\"\r\n [readonly]=\"_parent.readonly\"\r\n (onValueChanged)=\"_handleRGBAValueChanged($event)\">\r\n </ax-number-box>\r\n <label>G</label>\r\n </div>\r\n <div>\r\n <ax-number-box\r\n class=\"ax-sm\"\r\n [minValue]=\"0\"\r\n [maxValue]=\"255\"\r\n [(value)]=\"_rgba.b\"\r\n [showSpinButtons]=\"false\"\r\n [disabled]=\"_parent.disabled\"\r\n [readonly]=\"_parent.readonly\"\r\n (onValueChanged)=\"_handleRGBAValueChanged($event)\">\r\n </ax-number-box>\r\n <label>B</label>\r\n </div>\r\n <div>\r\n <ax-number-box\r\n class=\"ax-sm\"\r\n [minValue]=\"0\"\r\n [maxValue]=\"1\"\r\n [(value)]=\"_rgba.a\"\r\n [decimals]=\"2\"\r\n [step]=\"0.1\"\r\n [disabled]=\"_parent.disabled\"\r\n [readonly]=\"_parent.readonly\"\r\n [showSpinButtons]=\"false\"\r\n (onValueChanged)=\"_handleRGBAValueChanged($event)\">\r\n </ax-number-box>\r\n <label>A</label>\r\n </div>\r\n </ng-container>\r\n </div>\r\n <button\r\n class=\"ax-general-button ax-button-icon ax-sm\"\r\n (click)=\"_handleChangeInputMode()\"\r\n [disabled]=\"_parent.disabled\">\r\n <span class=\"ax-icon ax-icon-unfold-more\"></span>\r\n </button>\r\n</ng-container>\r\n" }]
112
123
  }], ctorParameters: function () { return [{ type: i0.ElementRef }, { type: i0.ChangeDetectorRef }, { type: AXColorComponent, decorators: [{
113
124
  type: Optional
114
125
  }, {
@@ -159,11 +170,10 @@ class AXColorPalettePickerComponent extends AXBaseComponent {
159
170
  }
160
171
  _handleAlphaChanged(e) {
161
172
  if (e.value != null && e.value != this._rgba.a) {
162
- this._parent._setUserInteraction();
163
173
  const { r, g, b } = this._rgba;
164
174
  const _color = `rgba(${r},${g},${b},${e.value})`;
165
- this._parent._setUserInteraction();
166
175
  this._parent.colorMode = 'rgba';
176
+ this._parent._setUserInteraction();
167
177
  this._parent._onInternalColorChanged$.next({
168
178
  color: AXColorUtil.toString(_color, 'rgba'),
169
179
  mode: 'rgba',
@@ -175,6 +185,7 @@ class AXColorPalettePickerComponent extends AXBaseComponent {
175
185
  const gradient = AXColorUtil.gradient(this._gradientColors);
176
186
  const colors = gradient.rgb(100);
177
187
  let color = colors[e.value].toRgbString();
188
+ this._parent._setUserInteraction();
178
189
  this._parent._onInternalColorChanged$.next({
179
190
  color: AXColorUtil.toString(color, 'rgba'),
180
191
  mode: this._parent.colorMode,
@@ -217,7 +228,7 @@ class AXColorPalettePreviewComponent extends AXBaseComponent {
217
228
  this._getInnerElement().innerText = e.color
218
229
  ? AXColorUtil.toString(e.color, e.mode)
219
230
  : '';
220
- const color = AXColorUtil.toHexSting(e.color);
231
+ const color = AXColorUtil.toString(e.color, 'hex');
221
232
  const ratio = AXColorUtil.contrastToWhite(color);
222
233
  this._getHostElement().style.color = !(ratio > 2.0) ? '#000' : '#fff';
223
234
  });
@@ -265,8 +276,16 @@ class AXColorPaletteSwatchesComponent extends AXBaseComponent {
265
276
  this._parent = _parent;
266
277
  this.colors = [];
267
278
  this._defaultPalette = [
268
- { code: '#000000' },
269
279
  { code: '#ffffff' },
280
+ { code: '#000000' },
281
+ { code: '#9E9E9E' },
282
+ { code: '#FFC107' },
283
+ { code: '#607D8B' },
284
+ { code: '#2196F3' },
285
+ { code: '#FF5722' },
286
+ { code: '#4CAF50' },
287
+ { code: '#9c27b0' },
288
+ { code: '#3F51B5' },
270
289
  // Amber
271
290
  { code: '#fff8e1' },
272
291
  { code: '#ffecb3' },
@@ -479,13 +498,13 @@ class AXColorPaletteSwatchesComponent extends AXBaseComponent {
479
498
  ];
480
499
  _parent?._onInternalColorChanged$
481
500
  .pipe(distinctUntilChanged())
482
- .subscribe((e) => {
483
- this._selected = AXColorUtil.toHexSting(e.color).toLowerCase();
501
+ .subscribe(e => {
502
+ this._selected = AXColorUtil.toString(e.color, 'hex').toLowerCase();
484
503
  this._cdr.detectChanges();
485
504
  });
486
505
  if (this._getHostElement().tagName.toLowerCase() !=
487
506
  'ax-color-palette-favorite') {
488
- this.colors = this._defaultPalette.map((c) => this._format(c));
507
+ this.colors = this._defaultPalette.map(c => this._format(c));
489
508
  }
490
509
  }
491
510
  _handleClick(e, color) {
@@ -514,8 +533,7 @@ AXColorPaletteSwatchesComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion:
514
533
  [style.background-color]="color.code"
515
534
  [attr.title]="color.code"
516
535
  [class.ax-state-selected]="color.code == _selected"
517
- (click)="_handleClick($event, color)"
518
- ></div>`, isInline: true, dependencies: [{ kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
536
+ (click)="_handleClick($event, color)"></div>`, isInline: true, dependencies: [{ kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
519
537
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.1.4", ngImport: i0, type: AXColorPaletteSwatchesComponent, decorators: [{
520
538
  type: Component,
521
539
  args: [{
@@ -525,8 +543,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.1.4", ngImpor
525
543
  [style.background-color]="color.code"
526
544
  [attr.title]="color.code"
527
545
  [class.ax-state-selected]="color.code == _selected"
528
- (click)="_handleClick($event, color)"
529
- ></div>`,
546
+ (click)="_handleClick($event, color)"></div>`,
530
547
  encapsulation: ViewEncapsulation.None,
531
548
  changeDetection: ChangeDetectionStrategy.OnPush,
532
549
  providers: [
@@ -552,9 +569,7 @@ class AXColorPalleteComponent extends AXBaseValueComponentMixin {
552
569
  this.colorModeChange = new EventEmitter();
553
570
  this._colorMode = 'hex';
554
571
  //
555
- this._onInternalColorChanged$
556
- .pipe(distinctUntilChanged())
557
- .subscribe((e) => {
572
+ this._onInternalColorChanged$.pipe(distinctUntilChanged()).subscribe(e => {
558
573
  if (this.disabled || this.readonly)
559
574
  return;
560
575
  this.value = e.color;
@@ -601,12 +616,20 @@ class AXColorPalleteComponent extends AXBaseValueComponentMixin {
601
616
  AXColorPalleteComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.1.4", ngImport: i0, type: AXColorPalleteComponent, deps: [{ token: i0.ElementRef }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component });
602
617
  AXColorPalleteComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.1.4", type: AXColorPalleteComponent, selector: "ax-color-palette", inputs: { disabled: "disabled", tabIndex: "tabIndex", readonly: "readonly", allowNull: "allowNull", value: "value", name: "name", checked: "checked", colorMode: "colorMode" }, outputs: { onBlur: "onBlur", onFocus: "onFocus", valueChange: "valueChange", onValueChanged: "onValueChanged", colorModeChange: "colorModeChange" }, host: { properties: { "class.ax-state-disabled": "this.__hostDisabled" } }, providers: [
603
618
  { provide: AXColorComponent, useExisting: AXColorPalleteComponent },
604
- ], queries: [{ propertyName: "_children", predicate: AXColorPaletteChildComponent }], usesInheritance: true, ngImport: i0, template: "<ng-content select='ax-header'></ng-content>\r\n\r\n<ng-container [ngTemplateOutlet]=\"default\" *ngIf=\"!_children.length\"></ng-container>\r\n<ng-container [ngTemplateOutlet]=\"custom\" *ngIf=\"_children.length\"></ng-container>\r\n\r\n<ng-template #custom>\r\n <ng-content select='ax-color-palette-preview'></ng-content>\r\n <ng-content select='ax-color-palette-picker'></ng-content>\r\n <ng-content select='ax-color-palette-swatches'></ng-content>\r\n <ng-content select='ax-color-palette-favorite'></ng-content>\r\n <ng-content select='ax-color-palette-input'></ng-content>\r\n</ng-template>\r\n<ng-template #default>\r\n <ax-color-palette-preview></ax-color-palette-preview>\r\n <ax-color-palette-swatches></ax-color-palette-swatches>\r\n <ax-color-palette-input></ax-color-palette-input>\r\n</ng-template>\r\n\r\n<ng-content select='ax-footer'></ng-content>\r\n\r\n\r\n", styles: ["ax-color-palette{width:16rem;display:flex;flex-direction:column;border:1px solid;background-color:rgb(var(--ax-color-surface));border-color:rgb(var(--ax-color-border-default));border-radius:var(--ax-rounded-border-default);gap:.5rem}ax-color-palette.ax-state-disabled{opacity:.5;cursor:not-allowed}ax-color-palette.ax-state-disabled ax-color-palette-swatches div:hover,ax-color-palette.ax-state-disabled ax-color-palette-swatches div.ax-state-selected,ax-color-palette.ax-state-disabled ax-color-palette-favorite div:hover,ax-color-palette.ax-state-disabled ax-color-palette-favorite div.ax-state-selected{opacity:.5;cursor:not-allowed}ax-color-palette ax-header,ax-color-palette ax-footer{padding:.75rem;border-top-width:1px;display:flex}ax-color-palette ax-color-palette-preview{position:relative;width:100%;height:5rem;border-top-left-radius:var(--ax-rounded-border-default);border-top-right-radius:var(--ax-rounded-border-default);background:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAAXNSR0IArs4c6QAAADFJREFUOE9jZGBgEGHAD97gk2YcNYBhmIQBgWSAP52AwoAQwJvQRg1gACckQoC2gQgAIF8IscwEtKYAAAAASUVORK5CYII=) left center}ax-color-palette ax-color-palette-preview .palette-preview-overlay{position:absolute;left:0;width:100%;height:100%;display:flex;align-items:center;justify-content:center}ax-color-palette ax-color-palette-favorite{display:block;border-top:1px solid;border-color:rgb(var(--ax-color-border-default))}ax-color-palette ax-color-palette-swatches,ax-color-palette ax-color-palette-favorite{display:grid;gap:.125rem;padding:.5rem;grid-template-columns:repeat(8,minmax(0,1fr));max-height:9rem;overflow-x:hidden}ax-color-palette ax-color-palette-swatches div,ax-color-palette ax-color-palette-favorite div{position:relative;display:flex;align-items:center;justify-content:center;cursor:pointer;margin:.125rem;border-radius:var(--ax-rounded-border-default);border:1px solid rgb(var(--ax-color-border-default))}ax-color-palette ax-color-palette-swatches div:before,ax-color-palette ax-color-palette-favorite div:before{content:\"\";padding-top:100%;float:left}ax-color-palette ax-color-palette-swatches div:after,ax-color-palette ax-color-palette-favorite div:after{content:\"\";display:block;clear:both}ax-color-palette ax-color-palette-swatches div:hover,ax-color-palette ax-color-palette-swatches div.ax-state-selected,ax-color-palette ax-color-palette-favorite div:hover,ax-color-palette ax-color-palette-favorite div.ax-state-selected{outline-offset:2px;outline-width:2px;outline-style:solid;outline-color:rgba(var(--ax-color-ghost),.08)}ax-color-palette ax-color-palette-input{display:flex;gap:.5rem;padding:.5rem}ax-color-palette ax-color-palette-input .palette-inputs{display:flex;flex:1 1 0%;gap:.5rem}ax-color-palette ax-color-palette-input .palette-inputs div{width:100%;text-align:center}ax-color-palette ax-color-palette-input .palette-inputs div label{margin-top:.75rem;font-size:.875rem;line-height:1.25rem}ax-color-palette ax-color-palette-picker{display:flex;flex-direction:column;gap:.5rem;padding:.5rem}ax-color-palette ax-color-palette-picker .ax-color-picker-overlay{display:block;width:100%;height:8rem;position:relative}ax-color-palette ax-color-palette-picker .ax-color-picker-overlay .ax-color-picker-pointer{width:.75rem;height:.75rem;border-radius:999rem;background-color:transparent;border:1px solid rgb(var(--ax-color-background-default))}ax-color-palette ax-color-palette-picker .ax-color-picker-overlay .ax-color-picker-overlay-color,ax-color-palette ax-color-palette-picker .ax-color-picker-overlay .ax-color-picker-overlay-gradient{height:100%;width:100%;position:absolute;inset:0}ax-color-palette ax-color-palette-picker .ax-color-picker-overlay .ax-color-picker-overlay-color{background:linear-gradient(to right,rgb(255,255,255),rgba(255,255,255,0))}ax-color-palette ax-color-palette-picker .ax-color-picker-overlay .ax-color-picker-overlay-gradient{background:linear-gradient(to top,rgb(0,0,0),rgba(0,0,0,0))}ax-color-palette ax-color-palette-picker .ax-range-slider.ax-color-picker-gradient input{background:linear-gradient(to right,rgb(255,0,0) 0%,rgb(255,255,0) 17%,rgb(0,255,0) 33%,rgb(0,255,255) 50%,rgb(0,0,255) 67%,rgb(255,0,255) 83%,rgb(255,0,0) 100%)}ax-color-palette ax-color-palette-picker .ax-range-slider.ax-color-picker-transparent input{background-image:linear-gradient(to right,rgba(245,246,252,0),rgb(0,0,0)),url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAAXNSR0IArs4c6QAAADFJREFUOE9jZGBgEGHAD97gk2YcNYBhmIQBgWSAP52AwoAQwJvQRg1gACckQoC2gQgAIF8IscwEtKYAAAAASUVORK5CYII=)}\n"], dependencies: [{ kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: AXColorPalettePreviewComponent, selector: "ax-color-palette-preview" }, { kind: "component", type: AXColorPaletteSwatchesComponent, selector: "ax-color-palette-swatches, ax-color-palette-favorite", inputs: ["colors"] }, { kind: "component", type: AXColorPaletteInputComponent, selector: "ax-color-palette-input" }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
619
+ ], queries: [{ propertyName: "_children", predicate: AXColorPaletteChildComponent }], usesInheritance: true, ngImport: i0, template: "<ng-content select='ax-header'></ng-content>\r\n\r\n<ng-container [ngTemplateOutlet]=\"default\" *ngIf=\"!_children.length\"></ng-container>\r\n<ng-container [ngTemplateOutlet]=\"custom\" *ngIf=\"_children.length\"></ng-container>\r\n\r\n<ng-template #custom>\r\n <ng-content select='ax-color-palette-preview'></ng-content>\r\n <ng-content select='ax-color-palette-picker'></ng-content>\r\n <ng-content select='ax-color-palette-swatches'></ng-content>\r\n <ng-content select='ax-color-palette-favorite'></ng-content>\r\n <ng-content select='ax-color-palette-input'></ng-content>\r\n</ng-template>\r\n<ng-template #default>\r\n <ax-color-palette-preview></ax-color-palette-preview>\r\n <ax-color-palette-swatches></ax-color-palette-swatches>\r\n <ax-color-palette-input></ax-color-palette-input>\r\n</ng-template>\r\n\r\n<ng-content select='ax-footer'></ng-content>\r\n\r\n\r\n", styles: ["ax-color-palette{display:flex;flex-direction:column;border:1px solid;background-color:rgb(var(--ax-color-surface));border-color:rgb(var(--ax-color-border-default));border-radius:var(--ax-rounded-border-default);width:18rem}@media (min-width: 600px){ax-color-palette{width:20rem!important}}@media (min-width: 1200px){ax-color-palette{width:18rem!important}}@media (max-width: 599px){ax-color-palette{width:100%!important}}ax-color-palette.ax-state-disabled{opacity:.5;cursor:not-allowed}ax-color-palette.ax-state-disabled ax-color-palette-swatches div:hover,ax-color-palette.ax-state-disabled ax-color-palette-swatches div.ax-state-selected,ax-color-palette.ax-state-disabled ax-color-palette-favorite div:hover,ax-color-palette.ax-state-disabled ax-color-palette-favorite div.ax-state-selected{opacity:.5;cursor:not-allowed}ax-color-palette ax-header,ax-color-palette ax-footer{padding:.75rem;border-top-width:1px;display:flex}ax-color-palette ax-color-palette-preview{position:relative;width:100%;height:6rem;gap:.5;border-top-left-radius:var(--ax-rounded-border-default);border-top-right-radius:var(--ax-rounded-border-default);background:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAAXNSR0IArs4c6QAAADFJREFUOE9jZGBgEGHAD97gk2YcNYBhmIQBgWSAP52AwoAQwJvQRg1gACckQoC2gQgAIF8IscwEtKYAAAAASUVORK5CYII=) left center}ax-color-palette ax-color-palette-preview .palette-preview-overlay{position:absolute;left:0;width:100%;height:100%;display:flex;align-items:center;text-transform:uppercase;justify-content:center;border-bottom:1px solid;border-color:rgba(var(--ax-color-border-default));box-shadow:0 1px 8px #00000029;text-shadow:0px 0px 14px rgba(0,0,0,.5)}ax-color-palette ax-color-palette-favorite{display:block;border-top:1px solid;border-color:rgb(var(--ax-color-border-default))}ax-color-palette ax-color-palette-swatches,ax-color-palette ax-color-palette-favorite{display:grid;padding:.5rem;grid-template-columns:repeat(10,minmax(0,1fr));max-height:9rem;overflow-x:hidden;gap:.5rem}ax-color-palette ax-color-palette-swatches div,ax-color-palette ax-color-palette-favorite div{position:relative;display:flex;align-items:center;justify-content:center;cursor:pointer;border-radius:99rem;border:1px solid rgb(var(--ax-color-border-default))}ax-color-palette ax-color-palette-swatches div:before,ax-color-palette ax-color-palette-favorite div:before{content:\"\";padding-top:100%;float:left}ax-color-palette ax-color-palette-swatches div:after,ax-color-palette ax-color-palette-favorite div:after{content:\"\";display:block;clear:both}ax-color-palette ax-color-palette-swatches div:hover,ax-color-palette ax-color-palette-swatches div.ax-state-selected,ax-color-palette ax-color-palette-favorite div:hover,ax-color-palette ax-color-palette-favorite div.ax-state-selected{outline-offset:2px;outline-width:1px;outline-style:solid;outline-color:rgba(var(--ax-color-ghost),.86)}ax-color-palette ax-color-palette-input{display:flex;gap:.5rem;padding:.5rem}ax-color-palette ax-color-palette-input .palette-inputs{display:flex;flex:1 1 0%;gap:.5rem}ax-color-palette ax-color-palette-input .palette-inputs div{width:100%;text-align:center}ax-color-palette ax-color-palette-input .palette-inputs div label{margin-top:.75rem;font-size:.75rem;line-height:1.25rem}ax-color-palette ax-color-palette-picker{display:flex;flex-direction:column;gap:.5rem;padding:.5rem}ax-color-palette ax-color-palette-picker .ax-color-picker-overlay{display:block;width:100%;height:8rem;position:relative}ax-color-palette ax-color-palette-picker .ax-color-picker-overlay .ax-color-picker-pointer{width:.75rem;height:.75rem;border-radius:99rem;background-color:transparent;border:1px solid rgb(var(--ax-color-background-default))}ax-color-palette ax-color-palette-picker .ax-color-picker-overlay .ax-color-picker-overlay-color,ax-color-palette ax-color-palette-picker .ax-color-picker-overlay .ax-color-picker-overlay-gradient{height:100%;width:100%;position:absolute;inset:0}ax-color-palette ax-color-palette-picker .ax-color-picker-overlay .ax-color-picker-overlay-color{background:linear-gradient(to right,rgb(255,255,255),rgba(255,255,255,0))}ax-color-palette ax-color-palette-picker .ax-color-picker-overlay .ax-color-picker-overlay-gradient{background:linear-gradient(to top,rgb(0,0,0),rgba(0,0,0,0))}ax-color-palette ax-color-palette-picker .ax-range-slider.ax-color-picker-gradient input{background:linear-gradient(to right,rgb(255,0,0) 0%,rgb(255,255,0) 17%,rgb(0,255,0) 33%,rgb(0,255,255) 50%,rgb(0,0,255) 67%,rgb(255,0,255) 83%,rgb(255,0,0) 100%)}ax-color-palette ax-color-palette-picker .ax-range-slider.ax-color-picker-transparent input{background-image:linear-gradient(to right,rgba(245,246,252,0),rgb(0,0,0)),url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAAXNSR0IArs4c6QAAADFJREFUOE9jZGBgEGHAD97gk2YcNYBhmIQBgWSAP52AwoAQwJvQRg1gACckQoC2gQgAIF8IscwEtKYAAAAASUVORK5CYII=)}\n"], dependencies: [{ kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: AXColorPalettePreviewComponent, selector: "ax-color-palette-preview" }, { kind: "component", type: AXColorPaletteSwatchesComponent, selector: "ax-color-palette-swatches, ax-color-palette-favorite", inputs: ["colors"] }, { kind: "component", type: AXColorPaletteInputComponent, selector: "ax-color-palette-input" }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
605
620
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.1.4", ngImport: i0, type: AXColorPalleteComponent, decorators: [{
606
621
  type: Component,
607
- args: [{ selector: 'ax-color-palette', inputs: ['disabled', 'tabIndex', 'readonly', 'allowNull', 'value', 'name', 'checked'], outputs: ['onBlur', 'onFocus', 'valueChange', 'onValueChanged'], encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, providers: [
622
+ args: [{ selector: 'ax-color-palette', inputs: [
623
+ 'disabled',
624
+ 'tabIndex',
625
+ 'readonly',
626
+ 'allowNull',
627
+ 'value',
628
+ 'name',
629
+ 'checked',
630
+ ], outputs: ['onBlur', 'onFocus', 'valueChange', 'onValueChanged'], encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, providers: [
608
631
  { provide: AXColorComponent, useExisting: AXColorPalleteComponent },
609
- ], template: "<ng-content select='ax-header'></ng-content>\r\n\r\n<ng-container [ngTemplateOutlet]=\"default\" *ngIf=\"!_children.length\"></ng-container>\r\n<ng-container [ngTemplateOutlet]=\"custom\" *ngIf=\"_children.length\"></ng-container>\r\n\r\n<ng-template #custom>\r\n <ng-content select='ax-color-palette-preview'></ng-content>\r\n <ng-content select='ax-color-palette-picker'></ng-content>\r\n <ng-content select='ax-color-palette-swatches'></ng-content>\r\n <ng-content select='ax-color-palette-favorite'></ng-content>\r\n <ng-content select='ax-color-palette-input'></ng-content>\r\n</ng-template>\r\n<ng-template #default>\r\n <ax-color-palette-preview></ax-color-palette-preview>\r\n <ax-color-palette-swatches></ax-color-palette-swatches>\r\n <ax-color-palette-input></ax-color-palette-input>\r\n</ng-template>\r\n\r\n<ng-content select='ax-footer'></ng-content>\r\n\r\n\r\n", styles: ["ax-color-palette{width:16rem;display:flex;flex-direction:column;border:1px solid;background-color:rgb(var(--ax-color-surface));border-color:rgb(var(--ax-color-border-default));border-radius:var(--ax-rounded-border-default);gap:.5rem}ax-color-palette.ax-state-disabled{opacity:.5;cursor:not-allowed}ax-color-palette.ax-state-disabled ax-color-palette-swatches div:hover,ax-color-palette.ax-state-disabled ax-color-palette-swatches div.ax-state-selected,ax-color-palette.ax-state-disabled ax-color-palette-favorite div:hover,ax-color-palette.ax-state-disabled ax-color-palette-favorite div.ax-state-selected{opacity:.5;cursor:not-allowed}ax-color-palette ax-header,ax-color-palette ax-footer{padding:.75rem;border-top-width:1px;display:flex}ax-color-palette ax-color-palette-preview{position:relative;width:100%;height:5rem;border-top-left-radius:var(--ax-rounded-border-default);border-top-right-radius:var(--ax-rounded-border-default);background:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAAXNSR0IArs4c6QAAADFJREFUOE9jZGBgEGHAD97gk2YcNYBhmIQBgWSAP52AwoAQwJvQRg1gACckQoC2gQgAIF8IscwEtKYAAAAASUVORK5CYII=) left center}ax-color-palette ax-color-palette-preview .palette-preview-overlay{position:absolute;left:0;width:100%;height:100%;display:flex;align-items:center;justify-content:center}ax-color-palette ax-color-palette-favorite{display:block;border-top:1px solid;border-color:rgb(var(--ax-color-border-default))}ax-color-palette ax-color-palette-swatches,ax-color-palette ax-color-palette-favorite{display:grid;gap:.125rem;padding:.5rem;grid-template-columns:repeat(8,minmax(0,1fr));max-height:9rem;overflow-x:hidden}ax-color-palette ax-color-palette-swatches div,ax-color-palette ax-color-palette-favorite div{position:relative;display:flex;align-items:center;justify-content:center;cursor:pointer;margin:.125rem;border-radius:var(--ax-rounded-border-default);border:1px solid rgb(var(--ax-color-border-default))}ax-color-palette ax-color-palette-swatches div:before,ax-color-palette ax-color-palette-favorite div:before{content:\"\";padding-top:100%;float:left}ax-color-palette ax-color-palette-swatches div:after,ax-color-palette ax-color-palette-favorite div:after{content:\"\";display:block;clear:both}ax-color-palette ax-color-palette-swatches div:hover,ax-color-palette ax-color-palette-swatches div.ax-state-selected,ax-color-palette ax-color-palette-favorite div:hover,ax-color-palette ax-color-palette-favorite div.ax-state-selected{outline-offset:2px;outline-width:2px;outline-style:solid;outline-color:rgba(var(--ax-color-ghost),.08)}ax-color-palette ax-color-palette-input{display:flex;gap:.5rem;padding:.5rem}ax-color-palette ax-color-palette-input .palette-inputs{display:flex;flex:1 1 0%;gap:.5rem}ax-color-palette ax-color-palette-input .palette-inputs div{width:100%;text-align:center}ax-color-palette ax-color-palette-input .palette-inputs div label{margin-top:.75rem;font-size:.875rem;line-height:1.25rem}ax-color-palette ax-color-palette-picker{display:flex;flex-direction:column;gap:.5rem;padding:.5rem}ax-color-palette ax-color-palette-picker .ax-color-picker-overlay{display:block;width:100%;height:8rem;position:relative}ax-color-palette ax-color-palette-picker .ax-color-picker-overlay .ax-color-picker-pointer{width:.75rem;height:.75rem;border-radius:999rem;background-color:transparent;border:1px solid rgb(var(--ax-color-background-default))}ax-color-palette ax-color-palette-picker .ax-color-picker-overlay .ax-color-picker-overlay-color,ax-color-palette ax-color-palette-picker .ax-color-picker-overlay .ax-color-picker-overlay-gradient{height:100%;width:100%;position:absolute;inset:0}ax-color-palette ax-color-palette-picker .ax-color-picker-overlay .ax-color-picker-overlay-color{background:linear-gradient(to right,rgb(255,255,255),rgba(255,255,255,0))}ax-color-palette ax-color-palette-picker .ax-color-picker-overlay .ax-color-picker-overlay-gradient{background:linear-gradient(to top,rgb(0,0,0),rgba(0,0,0,0))}ax-color-palette ax-color-palette-picker .ax-range-slider.ax-color-picker-gradient input{background:linear-gradient(to right,rgb(255,0,0) 0%,rgb(255,255,0) 17%,rgb(0,255,0) 33%,rgb(0,255,255) 50%,rgb(0,0,255) 67%,rgb(255,0,255) 83%,rgb(255,0,0) 100%)}ax-color-palette ax-color-palette-picker .ax-range-slider.ax-color-picker-transparent input{background-image:linear-gradient(to right,rgba(245,246,252,0),rgb(0,0,0)),url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAAXNSR0IArs4c6QAAADFJREFUOE9jZGBgEGHAD97gk2YcNYBhmIQBgWSAP52AwoAQwJvQRg1gACckQoC2gQgAIF8IscwEtKYAAAAASUVORK5CYII=)}\n"] }]
632
+ ], template: "<ng-content select='ax-header'></ng-content>\r\n\r\n<ng-container [ngTemplateOutlet]=\"default\" *ngIf=\"!_children.length\"></ng-container>\r\n<ng-container [ngTemplateOutlet]=\"custom\" *ngIf=\"_children.length\"></ng-container>\r\n\r\n<ng-template #custom>\r\n <ng-content select='ax-color-palette-preview'></ng-content>\r\n <ng-content select='ax-color-palette-picker'></ng-content>\r\n <ng-content select='ax-color-palette-swatches'></ng-content>\r\n <ng-content select='ax-color-palette-favorite'></ng-content>\r\n <ng-content select='ax-color-palette-input'></ng-content>\r\n</ng-template>\r\n<ng-template #default>\r\n <ax-color-palette-preview></ax-color-palette-preview>\r\n <ax-color-palette-swatches></ax-color-palette-swatches>\r\n <ax-color-palette-input></ax-color-palette-input>\r\n</ng-template>\r\n\r\n<ng-content select='ax-footer'></ng-content>\r\n\r\n\r\n", styles: ["ax-color-palette{display:flex;flex-direction:column;border:1px solid;background-color:rgb(var(--ax-color-surface));border-color:rgb(var(--ax-color-border-default));border-radius:var(--ax-rounded-border-default);width:18rem}@media (min-width: 600px){ax-color-palette{width:20rem!important}}@media (min-width: 1200px){ax-color-palette{width:18rem!important}}@media (max-width: 599px){ax-color-palette{width:100%!important}}ax-color-palette.ax-state-disabled{opacity:.5;cursor:not-allowed}ax-color-palette.ax-state-disabled ax-color-palette-swatches div:hover,ax-color-palette.ax-state-disabled ax-color-palette-swatches div.ax-state-selected,ax-color-palette.ax-state-disabled ax-color-palette-favorite div:hover,ax-color-palette.ax-state-disabled ax-color-palette-favorite div.ax-state-selected{opacity:.5;cursor:not-allowed}ax-color-palette ax-header,ax-color-palette ax-footer{padding:.75rem;border-top-width:1px;display:flex}ax-color-palette ax-color-palette-preview{position:relative;width:100%;height:6rem;gap:.5;border-top-left-radius:var(--ax-rounded-border-default);border-top-right-radius:var(--ax-rounded-border-default);background:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAAXNSR0IArs4c6QAAADFJREFUOE9jZGBgEGHAD97gk2YcNYBhmIQBgWSAP52AwoAQwJvQRg1gACckQoC2gQgAIF8IscwEtKYAAAAASUVORK5CYII=) left center}ax-color-palette ax-color-palette-preview .palette-preview-overlay{position:absolute;left:0;width:100%;height:100%;display:flex;align-items:center;text-transform:uppercase;justify-content:center;border-bottom:1px solid;border-color:rgba(var(--ax-color-border-default));box-shadow:0 1px 8px #00000029;text-shadow:0px 0px 14px rgba(0,0,0,.5)}ax-color-palette ax-color-palette-favorite{display:block;border-top:1px solid;border-color:rgb(var(--ax-color-border-default))}ax-color-palette ax-color-palette-swatches,ax-color-palette ax-color-palette-favorite{display:grid;padding:.5rem;grid-template-columns:repeat(10,minmax(0,1fr));max-height:9rem;overflow-x:hidden;gap:.5rem}ax-color-palette ax-color-palette-swatches div,ax-color-palette ax-color-palette-favorite div{position:relative;display:flex;align-items:center;justify-content:center;cursor:pointer;border-radius:99rem;border:1px solid rgb(var(--ax-color-border-default))}ax-color-palette ax-color-palette-swatches div:before,ax-color-palette ax-color-palette-favorite div:before{content:\"\";padding-top:100%;float:left}ax-color-palette ax-color-palette-swatches div:after,ax-color-palette ax-color-palette-favorite div:after{content:\"\";display:block;clear:both}ax-color-palette ax-color-palette-swatches div:hover,ax-color-palette ax-color-palette-swatches div.ax-state-selected,ax-color-palette ax-color-palette-favorite div:hover,ax-color-palette ax-color-palette-favorite div.ax-state-selected{outline-offset:2px;outline-width:1px;outline-style:solid;outline-color:rgba(var(--ax-color-ghost),.86)}ax-color-palette ax-color-palette-input{display:flex;gap:.5rem;padding:.5rem}ax-color-palette ax-color-palette-input .palette-inputs{display:flex;flex:1 1 0%;gap:.5rem}ax-color-palette ax-color-palette-input .palette-inputs div{width:100%;text-align:center}ax-color-palette ax-color-palette-input .palette-inputs div label{margin-top:.75rem;font-size:.75rem;line-height:1.25rem}ax-color-palette ax-color-palette-picker{display:flex;flex-direction:column;gap:.5rem;padding:.5rem}ax-color-palette ax-color-palette-picker .ax-color-picker-overlay{display:block;width:100%;height:8rem;position:relative}ax-color-palette ax-color-palette-picker .ax-color-picker-overlay .ax-color-picker-pointer{width:.75rem;height:.75rem;border-radius:99rem;background-color:transparent;border:1px solid rgb(var(--ax-color-background-default))}ax-color-palette ax-color-palette-picker .ax-color-picker-overlay .ax-color-picker-overlay-color,ax-color-palette ax-color-palette-picker .ax-color-picker-overlay .ax-color-picker-overlay-gradient{height:100%;width:100%;position:absolute;inset:0}ax-color-palette ax-color-palette-picker .ax-color-picker-overlay .ax-color-picker-overlay-color{background:linear-gradient(to right,rgb(255,255,255),rgba(255,255,255,0))}ax-color-palette ax-color-palette-picker .ax-color-picker-overlay .ax-color-picker-overlay-gradient{background:linear-gradient(to top,rgb(0,0,0),rgba(0,0,0,0))}ax-color-palette ax-color-palette-picker .ax-range-slider.ax-color-picker-gradient input{background:linear-gradient(to right,rgb(255,0,0) 0%,rgb(255,255,0) 17%,rgb(0,255,0) 33%,rgb(0,255,255) 50%,rgb(0,0,255) 67%,rgb(255,0,255) 83%,rgb(255,0,0) 100%)}ax-color-palette ax-color-palette-picker .ax-range-slider.ax-color-picker-transparent input{background-image:linear-gradient(to right,rgba(245,246,252,0),rgb(0,0,0)),url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAAXNSR0IArs4c6QAAADFJREFUOE9jZGBgEGHAD97gk2YcNYBhmIQBgWSAP52AwoAQwJvQRg1gACckQoC2gQgAIF8IscwEtKYAAAAASUVORK5CYII=)}\n"] }]
610
633
  }], ctorParameters: function () { return [{ type: i0.ElementRef }, { type: i0.ChangeDetectorRef }]; }, propDecorators: { _children: [{
611
634
  type: ContentChildren,
612
635
  args: [AXColorPaletteChildComponent]