@acorex/components 18.8.5 → 18.8.6

Sign up to get free protection for your applications and to get access to all the features.
@@ -1 +1 @@
1
- {"version":3,"file":"acorex-components-color-palette.mjs","sources":["../../../../libs/components/color-palette/src/lib/color-palette.class.ts","../../../../libs/components/color-palette/src/lib/color-palette-input.component.ts","../../../../libs/components/color-palette/src/lib/color-palette-input.component.html","../../../../libs/components/color-palette/src/lib/color-palette-picker.component.ts","../../../../libs/components/color-palette/src/lib/color-palette-picker.component.html","../../../../libs/components/color-palette/src/lib/color-palette-preview.component.ts","../../../../libs/components/color-palette/src/lib/color-palette-swatches.component.ts","../../../../libs/components/color-palette/src/lib/color-palette.component.ts","../../../../libs/components/color-palette/src/lib/color-palette.component.html","../../../../libs/components/color-palette/src/lib/color-palette.module.ts","../../../../libs/components/color-palette/src/acorex-components-color-palette.ts"],"sourcesContent":["import { AXOptionChangedEvent, AXValueChangedEvent } from '@acorex/components/common';\nimport { EventEmitter, Injectable } from '@angular/core';\n\n/**\n * A token that specifies the display mode of datapager component.\n */\nexport type AXColorPaletteView = 'swatches' | 'gradient' | 'custom';\nexport interface AXColorChangedEvent {\n color: any;\n sender: any;\n}\n\n@Injectable()\nexport abstract class AXColorPaletteParentComponent {\n abstract readonly: boolean;\n abstract disabled: boolean;\n abstract get value(): string;\n abstract onValueChanged: EventEmitter<AXValueChangedEvent<string>>;\n abstract onOptionChanged: EventEmitter<AXOptionChangedEvent>;\n abstract commitValue(value: string, u?: boolean);\n}\n\n@Injectable()\nexport abstract class AXColorPaletteChildComponent {}\n\nexport const AXDefaultColorPalette = [\n { code: '#ffffff' },\n { code: '#000000' },\n { code: '#9E9E9E' },\n { code: '#FFC107' },\n { code: '#607D8B' },\n { code: '#2196F3' },\n { code: '#FF5722' },\n { code: '#4CAF50' },\n { code: '#9c27b0' },\n { code: '#3F51B5' },\n // Amber\n { code: '#fff8e1' },\n { code: '#ffecb3' },\n { code: '#ffe082' },\n { code: '#ffd54f' },\n { code: '#ffca28' },\n { code: '#ffc107' },\n { code: '#ffb300' },\n { code: '#ffa000' },\n { code: '#ff8f00' },\n { code: '#ff6f00' },\n // Blue Grey\n { code: '#ECEFF1' },\n { code: '#CFD8DC' },\n { code: '#B0BEC5' },\n { code: '#90A4AE' },\n { code: '#78909C' },\n { code: '#607D8B' },\n { code: '#546E7A' },\n { code: '#455A64' },\n { code: '#37474F' },\n { code: '#263238' },\n // Blue\n { code: '#E3F2FD' },\n { code: '#BBDEFB' },\n { code: '#90CAF9' },\n { code: '#64B5F6' },\n { code: '#42A5F5' },\n { code: '#2196F3' },\n { code: '#1E88E5' },\n { code: '#1976D2' },\n { code: '#1565C0' },\n { code: '#0D47A1' },\n // Brown\n { code: '#EFEBE9' },\n { code: '#D7CCC8' },\n { code: '#BCAAA4' },\n { code: '#A1887F' },\n { code: '#8D6E63' },\n { code: '#795548' },\n { code: '#6D4C41' },\n { code: '#5D4037' },\n { code: '#4E342E' },\n { code: '#3E2723' },\n // Cyan\n { code: '#E0F7FA' },\n { code: '#B2EBF2' },\n { code: '#80DEEA' },\n { code: '#4DD0E1' },\n { code: '#26C6DA' },\n { code: '#00BCD4' },\n { code: '#00ACC1' },\n { code: '#0097A7' },\n { code: '#00838F' },\n { code: '#006064' },\n // Deep Orange\n { code: '#FBE9E7' },\n { code: '#FFCCBC' },\n { code: '#FFAB91' },\n { code: '#FF8A65' },\n { code: '#FF7043' },\n { code: '#FF5722' },\n { code: '#F4511E' },\n { code: '#E64A19' },\n { code: '#D84315' },\n { code: '#BF360C' },\n // Deep Purple\n { code: '#EDE7F6' },\n { code: '#D1C4E9' },\n { code: '#B39DDB' },\n { code: '#9575CD' },\n { code: '#7E57C2' },\n { code: '#673AB7' },\n { code: '#5E35B1' },\n { code: '#512DA8' },\n { code: '#4527A0' },\n { code: '#311B92' },\n // Green\n { code: '#E8F5E9' },\n { code: '#C8E6C9' },\n { code: '#A5D6A7' },\n { code: '#81C784' },\n { code: '#66BB6A' },\n { code: '#4CAF50' },\n { code: '#43A047' },\n { code: '#388E3C' },\n { code: '#2E7D32' },\n { code: '#1B5E20' },\n\n // Grey\n { code: '#FAFAFA' },\n { code: '#F5F5F5' },\n { code: '#EEEEEE' },\n { code: '#E0E0E0' },\n { code: '#BDBDBD' },\n { code: '#9E9E9E' },\n { code: '#757575' },\n { code: '#616161' },\n { code: '#424242' },\n { code: '#212121' },\n\n // Indigo\n { code: '#E8EAF6' },\n { code: '#C5CAE9' },\n { code: '#9FA8DA' },\n { code: '#7986CB' },\n { code: '#5C6BC0' },\n { code: '#3F51B5' },\n { code: '#3949AB' },\n { code: '#303F9F' },\n { code: '#283593' },\n { code: '#1A237E' },\n // Light Blue\n { code: '#E1F5FE' },\n { code: '#B3E5FC' },\n { code: '#81D4FA' },\n { code: '#4FC3F7' },\n { code: '#29B6F6' },\n { code: '#03A9F4' },\n { code: '#039BE5' },\n { code: '#0288D1' },\n { code: '#0277BD' },\n { code: '#01579B' },\n // Light Green\n { code: '#F1F8E9' },\n { code: '#DCEDC8' },\n { code: '#C5E1A5' },\n { code: '#AED581' },\n { code: '#9CCC65' },\n { code: '#8BC34A' },\n { code: '#7CB342' },\n { code: '#689F38' },\n { code: '#558B2F' },\n { code: '#33691E' },\n // Lime\n { code: '#F9FBE7' },\n { code: '#F0F4C3' },\n { code: '#E6EE9C' },\n { code: '#DCE775' },\n { code: '#D4E157' },\n { code: '#CDDC39' },\n { code: '#C0CA33' },\n { code: '#AFB42B' },\n { code: '#9E9D24' },\n { code: '#827717' },\n // Orange\n { code: '#FFF3E0' },\n { code: '#FFE0B2' },\n { code: '#FFCC80' },\n { code: '#FFB74D' },\n { code: '#FFA726' },\n { code: '#FF9800' },\n { code: '#FB8C00' },\n { code: '#F57C00' },\n { code: '#EF6C00' },\n { code: '#E65100' },\n // Pink\n { code: '#FCE4EC' },\n { code: '#F8BBD0' },\n { code: '#F48FB1' },\n { code: '#F06292' },\n { code: '#EC407A' },\n { code: '#E91E63' },\n { code: '#D81B60' },\n { code: '#C2185B' },\n { code: '#AD1457' },\n { code: '#880E4F' },\n // Purple\n { code: '#F3E5F5' },\n { code: '#E1BEE7' },\n { code: '#CE93D8' },\n { code: '#BA68C8' },\n { code: '#AB47BC' },\n { code: '#9C27B0' },\n { code: '#8E24AA' },\n { code: '#7B1FA2' },\n { code: '#6A1B9A' },\n { code: '#4A148C' },\n // Red\n { code: '#FFEBEE' },\n { code: '#FFCDD2' },\n { code: '#EF9A9A' },\n { code: '#E57373' },\n { code: '#EF5350' },\n { code: '#F44336' },\n { code: '#E53935' },\n { code: '#D32F2F' },\n { code: '#C62828' },\n { code: '#B71C1C' },\n // Teal\n { code: '#E0F2F1' },\n { code: '#B2DFDB' },\n { code: '#80CBC4' },\n { code: '#4DB6AC' },\n { code: '#26A69A' },\n { code: '#009688' },\n { code: '#00897B' },\n { code: '#00796B' },\n { code: '#00695C' },\n { code: '#004D40' },\n // Yellow\n { code: '#FFFDE7' },\n { code: '#FFF9C4' },\n { code: '#FFF59D' },\n { code: '#FFF176' },\n { code: '#FFEE58' },\n { code: '#FFEB3B' },\n { code: '#FDD835' },\n { code: '#FBC02D' },\n { code: '#F9A825' },\n { code: '#F57F17' },\n];\n","import { AXValueChangedEvent, MXBaseComponent } from '@acorex/components/common';\nimport { AXMaskOptions } from '@acorex/components/text-box';\nimport { AXColorUtil, AXUnsubscriber } from '@acorex/core/utils';\nimport { AfterViewInit, ChangeDetectionStrategy, Component, HostBinding, Inject, ViewEncapsulation } from '@angular/core';\nimport { AXColorPaletteChildComponent, AXColorPaletteParentComponent } from './color-palette.class';\n\n/**\n * Component for selecting colors from a palette.\n * \n * @category Components\n */\n@Component({\n selector: 'ax-color-palette-input',\n templateUrl: './color-palette-input.component.html',\n styles: `\n .ax-bold {\n font-weight: bold;\n }\n `,\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush,\n providers: [\n {\n provide: AXColorPaletteChildComponent,\n useExisting: AXColorPaletteInputComponent,\n },\n AXUnsubscriber,\n ],\n})\nexport class AXColorPaletteInputComponent extends MXBaseComponent implements AfterViewInit {\n isValid = true;\n\n _rgba: any = {\n r: 0,\n g: 0,\n b: 0,\n a: 0,\n };\n\n _hex = '';\n\n /**\n * @ignore\n */\n protected _colorMode: 'hex' | 'rgba' = 'hex';\n\n /**\n * @ignore\n */\n protected _hexMaskOptions: AXMaskOptions = {\n mask: /^#[0-9a-f]{0,6}[0-9a-f]{0,2}$/i,\n prepare: (str, m, a) => {\n return m.typedValue?.startsWith('#') || str == '#' ? str.trim() : '#' + str.trim();\n },\n };\n\n /**\n * @ignore\n */\n constructor(\n @Inject(AXColorPaletteParentComponent)\n public _parent: AXColorPaletteParentComponent,\n private _unsubscriber: AXUnsubscriber,\n ) {\n super();\n _parent.onValueChanged.pipe(_unsubscriber.takeUntilDestroy).subscribe((e) => {\n this.applyParent(e.isUserInteraction);\n });\n _parent.onOptionChanged.pipe(_unsubscriber.takeUntilDestroy).subscribe((e) => {\n this.cdr.markForCheck();\n });\n }\n\n /**\n * @ignore\n */\n private applyParent(u: boolean = false) {\n const value = this._parent.value;\n if (!value) {\n this._hex = '';\n this._rgba = {\n r: null,\n g: null,\n b: null,\n a: null,\n };\n } else {\n Object.assign(this._rgba, AXColorUtil.to(value, 'rgba'));\n if (this._colorMode != 'hex' || !this._hex) {\n this._hex = AXColorUtil.toString(value, 'hex');\n }\n if (this._colorMode == 'hex') {\n this._hex = value;\n }\n if (!u && this._rgba.a != 1) {\n this._colorMode = 'rgba';\n }\n }\n this.checkValid();\n this.cdr.detectChanges();\n }\n\n /**\n * @ignore\n */\n ngAfterViewInit() {\n this.applyParent();\n }\n\n /**\n * @ignore\n */\n _handleChangeInputMode() {\n switch (this._colorMode) {\n case 'rgba':\n this._colorMode = 'hex';\n break;\n default:\n this._colorMode = 'rgba';\n break;\n }\n }\n\n /**\n * @ignore\n */\n _handleRGBAValueChanged(e: AXValueChangedEvent<number>) {\n if (e.isUserInteraction) {\n this._rgba[e.name] = e.value;\n const { r, g, b, a } = this._rgba;\n const _color = `rgba(${r},${g},${b},${a})`;\n this._parent.commitValue(AXColorUtil.toString(_color, 'rgba'), e.isUserInteraction);\n }\n }\n\n /**\n * @ignore\n */\n protected _handleHEXAValueChanged(e: AXValueChangedEvent<string>) {\n if (e.isUserInteraction && e.value?.trim() != this._hex?.trim()) {\n this._parent.commitValue(e.value, e.isUserInteraction);\n }\n }\n\n /**\n * @ignore\n */\n private checkValid() {\n this.isValid = AXColorUtil.isValid(this._hex);\n }\n\n /**\n * @ignore\n */\n @HostBinding('class')\n private get __hostClass(): string {\n return `ax-color-palette-input`;\n }\n}\n","<div class=\"palette-inputs\">\n @switch (_colorMode) {\n @case ('hex') {\n <div>\n <ax-text-box\n class=\"ax-sm\"\n [ngModel]=\"_hex\"\n [disabled]=\"_parent.disabled\"\n [readonly]=\"_parent.readonly\"\n [state]=\"isValid ? 'clear' : 'error'\"\n (onValueChanged)=\"_handleHEXAValueChanged($event)\"\n [mask-options]=\"_hexMaskOptions\"\n >\n </ax-text-box>\n <label>HEX</label>\n </div>\n }\n @case ('rgba') {\n <div>\n <ax-number-box\n class=\"ax-sm\"\n name=\"r\"\n [minValue]=\"0\"\n [maxValue]=\"255\"\n [ngModel]=\"_rgba.r\"\n [showSpinButtons]=\"false\"\n [disabled]=\"_parent.disabled\"\n [readonly]=\"_parent.readonly\"\n (onValueChanged)=\"_handleRGBAValueChanged($event)\"\n >\n </ax-number-box>\n <label>R</label>\n </div>\n <div>\n <ax-number-box\n class=\"ax-sm\"\n name=\"g\"\n [minValue]=\"0\"\n [maxValue]=\"255\"\n [ngModel]=\"_rgba.g\"\n [showSpinButtons]=\"false\"\n [disabled]=\"_parent.disabled\"\n [readonly]=\"_parent.readonly\"\n (onValueChanged)=\"_handleRGBAValueChanged($event)\"\n >\n </ax-number-box>\n <label>G</label>\n </div>\n <div>\n <ax-number-box\n class=\"ax-sm\"\n name=\"b\"\n [minValue]=\"0\"\n [maxValue]=\"255\"\n [ngModel]=\"_rgba.b\"\n [showSpinButtons]=\"false\"\n [disabled]=\"_parent.disabled\"\n [readonly]=\"_parent.readonly\"\n (onValueChanged)=\"_handleRGBAValueChanged($event)\"\n >\n </ax-number-box>\n <label>B</label>\n </div>\n <div>\n <ax-number-box\n class=\"ax-sm\"\n name=\"a\"\n [minValue]=\"0\"\n [maxValue]=\"1\"\n [ngModel]=\"_rgba.a\"\n [decimals]=\"2\"\n [step]=\"0.1\"\n [disabled]=\"_parent.disabled\"\n [readonly]=\"_parent.readonly\"\n [showSpinButtons]=\"false\"\n (onValueChanged)=\"_handleRGBAValueChanged($event)\"\n >\n </ax-number-box>\n <label>A</label>\n </div>\n }\n }\n</div>\n<button\n type=\"button\"\n class=\"ax-general-button ax-button-rounded ax-button-icon ax-sm\"\n (click)=\"_handleChangeInputMode()\"\n [disabled]=\"_parent.disabled\"\n>\n <span class=\"ax-icon ax-icon-unfold-more ax-bold\"></span>\n</button>\n","import { MXBaseComponent } from '@acorex/components/common';\nimport { AXColorUtil, AXUnsubscriber } from '@acorex/core/utils';\nimport { ChangeDetectionStrategy, Component, HostBinding, Inject, ViewEncapsulation } from '@angular/core';\nimport { AXColorPaletteChildComponent, AXColorPaletteParentComponent } from './color-palette.class';\n\n/**\n * Component for picking colors from a color palette.\n *\n * @category Components\n */\n@Component({\n selector: 'ax-color-palette-picker',\n templateUrl: './color-palette-picker.component.html',\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush,\n providers: [\n {\n provide: AXColorPaletteChildComponent,\n useExisting: AXColorPalettePickerComponent,\n },\n AXUnsubscriber,\n ],\n})\nexport class AXColorPalettePickerComponent extends MXBaseComponent {\n _rgba: { r: number; g: number; b: number; a: number } = {\n r: 0,\n g: 0,\n b: 0,\n a: 0,\n };\n\n /**\n * @ignore\n */\n protected _gradient: number = 0;\n\n /**\n * @ignore\n */\n protected _bgColor: string = '#F00';\n\n /**\n * @ignore\n */\n private readonly _gradientColors: any[] = [\n { color: 'rgb(255, 0, 0)', pos: 0 },\n { color: 'rgb(255, 255, 0)', pos: 0.17 },\n { color: 'rgb(0, 255, 0)', pos: 0.33 },\n { color: 'rgb(0, 255, 255)', pos: 0.5 },\n { color: 'rgb(0, 0, 255)', pos: 0.67 },\n { color: 'rgb(255, 0, 255)', pos: 0.83 },\n { color: 'rgb(255, 0, 0)', pos: 1 },\n ];\n\n /**\n * @ignore\n */\n private readonly _gradients = AXColorUtil.gradient(this._gradientColors);\n\n /**\n * @ignore\n */\n private readonly _colors = this._gradients.rgb(100);\n\n /**\n * @ignore\n */\n protected dragPosition = { x: 0, y: 0 };\n\n /**\n * @ignore\n */\n constructor(\n @Inject(AXColorPaletteParentComponent)\n public _parent: AXColorPaletteParentComponent,\n private _unsubscriber: AXUnsubscriber,\n ) {\n super();\n _parent.onValueChanged.pipe(_unsubscriber.takeUntilDestroy).subscribe((e) => {\n this._handleParentColorChanged();\n });\n _parent.onOptionChanged.pipe(_unsubscriber.takeUntilDestroy).subscribe((e) => {\n this.cdr.markForCheck();\n });\n }\n\n /**\n * @ignore\n */\n private setHSV() {\n const hsv = AXColorUtil.to(this._rgba, 'hsva') as any;\n const sortedH = this._colors.map((c) => c.toHsv().h);\n this._gradient = sortedH.findIndex((c) => {\n return Math.round(c) >= Math.round(hsv.h);\n });\n this._bgColor = AXColorUtil.toString({ h: hsv.h, s: 1, v: 1, a: this._rgba.a }, 'rgba');\n this.setPointerByPercent(hsv.s * 100, hsv.v * 100);\n }\n\n /**\n * @ignore\n */\n private _handleParentColorChanged() {\n const color = this._parent.value;\n if (!color) {\n this._rgba = {\n r: 0,\n g: 0,\n b: 0,\n a: 0,\n };\n } else {\n if (!AXColorUtil.equal(color, this._rgba)) {\n Object.assign(this._rgba, AXColorUtil.to(color, 'rgba'));\n }\n }\n this.setHSV();\n this.cdr.detectChanges();\n }\n\n /**\n * @ignore\n */\n protected _handleAlphaChanged(e: any) {\n if (e != this._rgba.a) {\n const { r, g, b } = this._rgba;\n const _color = `rgba(${r},${g},${b},${e})`;\n this._parent.commitValue(AXColorUtil.toString(_color, 'rgba'), true);\n }\n }\n\n /**\n * @ignore\n */\n protected _handleGradientChanged(e: any) {\n if (e != this._gradient) {\n const { s, v } = AXColorUtil.to(this._rgba, 'hsva') as any;\n const { h } = this._colors[e as number].toHsv();\n this._parent.commitValue(AXColorUtil.toString({ h, s, v, a: this._rgba.a }, 'rgba'), true);\n }\n }\n\n /**\n * @ignore\n */\n protected _handleSurfaceClick(e: MouseEvent) {\n if (this._parent.disabled || this._parent.readonly) {\n e.preventDefault();\n e.stopPropagation();\n return;\n }\n const surface = this.getHostElement().querySelector<HTMLDivElement>('.ax-color-box-overlay');\n const pointer = this.getHostElement().querySelector<HTMLDivElement>('.ax-color-box-pointer');\n let x = e.offsetX;\n let y = e.offsetY;\n this.setColorByXY(x, y);\n }\n\n /**\n * @ignore\n */\n protected _handleDrag() {\n if (this._parent.disabled || this._parent.readonly) {\n return;\n }\n const surface = this.getHostElement().querySelector<HTMLDivElement>('.ax-color-box-overlay');\n const sb = surface.getBoundingClientRect();\n const pointer = this.getHostElement().querySelector<HTMLDivElement>('.ax-color-box-pointer');\n const pb = pointer.getBoundingClientRect();\n const w = pb.width / 2;\n let x = pb.left - sb.left + w;\n let y = pb.top - sb.top + w;\n //\n x = x < 0 ? 0 : x;\n x = x > sb.width ? sb.width : x;\n //\n y = y < 0 ? 0 : y;\n y = y > sb.height ? sb.height : y;\n //\n this.setColorByXY(x, y);\n }\n\n /**\n * @ignore\n */\n private setColorByXY(x: number, y: number) {\n const surface = this.getHostElement().querySelector<HTMLDivElement>('.ax-color-box-overlay');\n const sb = surface.getBoundingClientRect();\n //\n const { h } = AXColorUtil.to(this._bgColor, 'hsva') as any;\n const hsv = {\n h,\n s: x / sb.width,\n v: (sb.height - y) / sb.height,\n };\n this._parent.commitValue(AXColorUtil.toString(hsv, 'rgba'), true);\n }\n\n /**\n * @ignore\n */\n private setPointerByPercent(x: number, y: number) {\n const surface = this.getHostElement().querySelector<HTMLDivElement>('.ax-color-box-overlay');\n if (!surface) return;\n const sb = surface?.getBoundingClientRect();\n const pointer = this.getHostElement().querySelector<HTMLDivElement>('.ax-color-box-pointer');\n const pb = pointer?.getBoundingClientRect();\n const w = pb.width / 2;\n const width = sb.width; //+ pb.width\n const height = sb.height; // + pb.width\n this.dragPosition = {\n x: (x * width) / 100 - w,\n y: height - (y * height) / 100 - w,\n };\n }\n\n /**\n * @ignore\n */\n @HostBinding('class')\n private get __hostClass(): string {\n return `ax-color-palette-picker`;\n }\n}\n","<div class=\"ax-color-box-overlay-trans\">\n <div class=\"ax-color-box-overlay\" [style.background-color]=\"_bgColor\">\n <div class=\"ax-color-box-overlay-g1\"></div>\n <div class=\"ax-color-box-overlay-g2\" (click)=\"_handleSurfaceClick($event)\"></div>\n <div\n class=\"ax-color-box-pointer\"\n cdkDrag\n cdkDragBoundary=\".ax-color-box-overlay\"\n [cdkDragFreeDragPosition]=\"dragPosition\"\n (cdkDragEnded)=\"_handleDrag()\"\n [cdkDragDisabled]=\"_parent.disabled || _parent.readonly\"\n ></div>\n </div>\n</div>\n\n<ax-range-slider\n class=\"ax-color-box-gradient\"\n [min]=\"0\"\n [max]=\"100\"\n [mode]=\"'single'\"\n [ngModel]=\"_gradient\"\n [disabled]=\"_parent.disabled\"\n [readonly]=\"_parent.readonly\"\n (ngModelChange)=\"_handleGradientChanged($event)\"\n>\n</ax-range-slider>\n<ax-range-slider\n class=\"ax-color-box-transparent\"\n [min]=\"0\"\n [max]=\"1\"\n [hasStep]=\"false\"\n [ngModel]=\"_rgba.a\"\n [disabled]=\"_parent.disabled\"\n [readonly]=\"_parent.readonly\"\n (ngModelChange)=\"_handleAlphaChanged($event)\"\n>\n</ax-range-slider>\n","import { MXBaseComponent } from '@acorex/components/common';\nimport { AXColorUtil, AXUnsubscriber } from '@acorex/core/utils';\nimport { AfterViewInit, ChangeDetectionStrategy, Component, HostBinding, Inject, NgZone, ViewEncapsulation } from '@angular/core';\nimport { AXColorPaletteChildComponent, AXColorPaletteParentComponent } from './color-palette.class';\n\n/**\n * Component that displays a preview of the selected color in the palette.\n *\n * @category Components\n */\n@Component({\n selector: 'ax-color-palette-preview',\n template: `<div class=\"palette-preview-overlay\" [class.ax-state-disabled]=\"_parent.disabled\"></div>`,\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush,\n providers: [\n {\n provide: AXColorPaletteChildComponent,\n useExisting: AXColorPalettePreviewComponent,\n },\n AXUnsubscriber,\n ],\n})\nexport class AXColorPalettePreviewComponent extends MXBaseComponent implements AfterViewInit {\n /**\n * @ignore\n */\n constructor(\n @Inject(AXColorPaletteParentComponent)\n public _parent: AXColorPaletteParentComponent,\n private _zone: NgZone,\n private _unsubscriber: AXUnsubscriber,\n ) {\n super();\n _parent.onValueChanged.pipe(_unsubscriber.takeUntilDestroy).subscribe((e) => {\n _zone.runOutsideAngular(this.applyParent.bind(this));\n });\n }\n\n /**\n * @ignore\n */\n ngAfterViewInit() {\n this.applyParent();\n }\n\n /**\n * @ignore\n */\n private applyParent() {\n const inner = this.getHostElement().firstElementChild as HTMLDivElement;\n inner.style.backgroundColor = this._parent.value;\n inner.innerText = AXColorUtil.toString(this._parent.value);\n const color = AXColorUtil.toString(this._parent.value, 'hex');\n const ratio = AXColorUtil.contrastToWhite(color);\n this.getHostElement().style.color = !(ratio > 2.0) ? '#000' : '#fff';\n }\n\n /**\n * @ignore\n */\n @HostBinding('classs')\n private get __hostClass(): string {\n return `ax-color-palette-preview`;\n }\n}\n","import { MXBaseComponent } from '@acorex/components/common';\nimport { AXColorUtil, AXUnsubscriber } from '@acorex/core/utils';\nimport { AfterViewInit, ChangeDetectionStrategy, Component, Inject, Input, OnInit, ViewEncapsulation } from '@angular/core';\nimport { distinctUntilChanged } from 'rxjs/operators';\nimport { AXColorPaletteChildComponent, AXColorPaletteParentComponent, AXDefaultColorPalette } from './color-palette.class';\n\n/**\n * Displays color swatches or favorites, allowing color selection.\n *\n * @category Components\n */\n@Component({\n selector: 'ax-color-palette-swatches, ax-color-palette-favorite',\n template: `\n @for (color of colors; track color.code) {\n <div\n [style.background-color]=\"color.code\"\n [attr.title]=\"color.code\"\n [class.ax-state-selected]=\"color.code === _selected\"\n (click)=\"_handleClick($event, color)\"\n ></div>\n }\n `,\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush,\n providers: [\n {\n provide: AXColorPaletteChildComponent,\n useExisting: AXColorPaletteSwatchesComponent,\n },\n AXUnsubscriber,\n ],\n})\nexport class AXColorPaletteSwatchesComponent extends MXBaseComponent implements OnInit, AfterViewInit {\n /**\n * @ignore\n */\n protected _selected: string;\n\n /**\n * List of color objects for display, each with a `code` property.\n * @defaultValue []\n */\n @Input()\n colors: { code: string }[] = [];\n\n /**\n * @ignore\n */\n constructor(\n @Inject(AXColorPaletteParentComponent)\n public _parent: AXColorPaletteParentComponent,\n private _unsubscriber: AXUnsubscriber,\n ) {\n super();\n _parent.onValueChanged\n .pipe(_unsubscriber.takeUntilDestroy)\n .pipe(distinctUntilChanged())\n .subscribe(() => {\n this.applyParent();\n });\n }\n\n /**\n * @ignore\n */\n private applyParent() {\n this._selected = AXColorUtil.toString(this._parent.value, 'hex').toLowerCase();\n this.cdr.detectChanges();\n }\n\n /**\n * @ignore\n */\n override ngOnInit(): void {\n super.ngOnInit();\n const isFav = this.getHostElement().tagName.toLowerCase() == 'ax-color-palette-favorite';\n if (!isFav && this.colors.length == 0) {\n this.colors = AXDefaultColorPalette.map((c) => this._format(c));\n }\n }\n\n /**\n * @ignore\n */\n ngAfterViewInit() {\n this.applyParent();\n }\n\n /**\n * @ignore\n */\n protected _handleClick(e: MouseEvent, color) {\n if (this._parent.disabled || this._parent.readonly) return;\n this._parent.commitValue(color.code, true);\n }\n\n /**\n * @ignore\n */\n private _format(color: { code: string }): { code: string } {\n return {\n code: color.code.toLowerCase(),\n };\n }\n}\n","import { AXValuableComponent, MXValueComponent } from '@acorex/components/common';\nimport { ChangeDetectionStrategy, Component, ContentChildren, HostBinding, QueryList, ViewEncapsulation, forwardRef } from '@angular/core';\nimport { NG_VALUE_ACCESSOR } from '@angular/forms';\nimport { AXColorPaletteChildComponent, AXColorPaletteParentComponent } from './color-palette.class';\n\n/**\n * A color palette component that allows for color selection and interaction.\n *\n * @category Components\n */\n@Component({\n selector: 'ax-color-palette',\n templateUrl: './color-palette.component.html',\n styleUrls: ['./color-palette.component.scss'],\n inputs: ['disabled', 'tabIndex', 'readonly', 'value', 'state', 'name', 'checked'],\n outputs: ['onBlur', 'onFocus', 'valueChange', 'stateChange', 'onValueChanged', 'readonlyChange', 'disabledChange'],\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush,\n providers: [\n { provide: AXValuableComponent, useExisting: AXColorPalleteComponent },\n {\n provide: NG_VALUE_ACCESSOR,\n useExisting: forwardRef(() => AXColorPalleteComponent),\n multi: true,\n },\n {\n provide: AXColorPaletteParentComponent,\n useExisting: AXColorPalleteComponent,\n },\n ],\n})\nexport class AXColorPalleteComponent extends MXValueComponent<string> {\n @ContentChildren(AXColorPaletteChildComponent)\n _children: QueryList<AXColorPaletteChildComponent>;\n\n /**\n * @ignore\n */\n @HostBinding('class.ax-state-disabled')\n private get __hostDisabled() {\n return this.disabled;\n }\n}\n","<ng-content select='ax-header'></ng-content>\n\n@if(_children?.length){\n<ng-container [ngTemplateOutlet]=\"custom\"></ng-container>\n} @else{\n<ng-container [ngTemplateOutlet]=\"default\"></ng-container>\n\n}\n<ng-template #custom>\n <ng-content select='ax-color-palette-preview'></ng-content>\n <ng-content select='ax-color-palette-picker'></ng-content>\n <ng-content select='ax-color-palette-swatches'></ng-content>\n <ng-content select='ax-color-palette-favorite'></ng-content>\n <ng-content select='ax-color-palette-input'></ng-content>\n</ng-template>\n<ng-template #default>\n <ax-color-palette-preview></ax-color-palette-preview>\n <ax-color-palette-picker></ax-color-palette-picker>\n <ax-color-palette-swatches></ax-color-palette-swatches>\n <ax-color-palette-input></ax-color-palette-input>\n</ng-template>\n<ng-content select='ax-footer'></ng-content>","import { AXButtonModule } from '@acorex/components/button';\nimport { AXDecoratorModule } from '@acorex/components/decorators';\nimport { AXLabelModule } from '@acorex/components/label';\nimport { AXNumberBoxModule } from '@acorex/components/number-box';\nimport { AXTextBoxModule } from '@acorex/components/text-box';\nimport { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\n\nimport { AXRangeSliderModule } from '@acorex/components/range-slider';\nimport { AXSliderModule } from '@acorex/components/slider';\nimport { DragDropModule } from '@angular/cdk/drag-drop';\nimport { FormsModule } from '@angular/forms';\nimport { AXColorPaletteInputComponent } from './color-palette-input.component';\nimport { AXColorPalettePickerComponent } from './color-palette-picker.component';\nimport { AXColorPalettePreviewComponent } from './color-palette-preview.component';\nimport { AXColorPaletteSwatchesComponent } from './color-palette-swatches.component';\nimport { AXColorPalleteComponent } from './color-palette.component';\n\nconst MODULES: any[] = [\n FormsModule,\n AXTextBoxModule,\n AXLabelModule,\n AXButtonModule,\n AXDecoratorModule,\n AXNumberBoxModule,\n AXRangeSliderModule,\n AXSliderModule,\n DragDropModule,\n];\nconst CONPONENTS: any[] = [\n AXColorPalleteComponent,\n AXColorPalettePreviewComponent,\n AXColorPaletteSwatchesComponent,\n AXColorPaletteInputComponent,\n AXColorPalettePickerComponent,\n];\n\n@NgModule({\n declarations: [...CONPONENTS],\n imports: [CommonModule, ...MODULES],\n exports: [...CONPONENTS],\n providers: [],\n})\nexport class AXColorPaletteModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["i3","i4","i1","i2.AXColorPalettePreviewComponent","i3.AXColorPaletteSwatchesComponent","i4.AXColorPaletteInputComponent","i5.AXColorPalettePickerComponent"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;MAasB,6BAA6B,CAAA;8GAA7B,6BAA6B,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,UAAA,EAAA,CAAA,CAAA,EAAA;kHAA7B,6BAA6B,EAAA,CAAA,CAAA,EAAA;;2FAA7B,6BAA6B,EAAA,UAAA,EAAA,CAAA;kBADlD,UAAU;;MAWW,4BAA4B,CAAA;8GAA5B,4BAA4B,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,UAAA,EAAA,CAAA,CAAA,EAAA;kHAA5B,4BAA4B,EAAA,CAAA,CAAA,EAAA;;2FAA5B,4BAA4B,EAAA,UAAA,EAAA,CAAA;kBADjD,UAAU;;AAGE,MAAA,qBAAqB,GAAG;IACnC,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;;IAEnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;;IAEnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;;IAEnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;;IAEnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;;IAEnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;;IAEnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;;IAEnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;;IAEnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;;IAGnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;;IAGnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;;IAEnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;;IAEnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;;IAEnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;;IAEnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;;IAEnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;;IAEnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;;IAEnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IA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"}
1
+ {"version":3,"file":"acorex-components-color-palette.mjs","sources":["../../../../libs/components/color-palette/src/lib/color-palette.class.ts","../../../../libs/components/color-palette/src/lib/color-palette-input.component.ts","../../../../libs/components/color-palette/src/lib/color-palette-input.component.html","../../../../libs/components/color-palette/src/lib/color-palette-picker.component.ts","../../../../libs/components/color-palette/src/lib/color-palette-picker.component.html","../../../../libs/components/color-palette/src/lib/color-palette-preview.component.ts","../../../../libs/components/color-palette/src/lib/color-palette-swatches.component.ts","../../../../libs/components/color-palette/src/lib/color-palette.component.ts","../../../../libs/components/color-palette/src/lib/color-palette.component.html","../../../../libs/components/color-palette/src/lib/color-palette.module.ts","../../../../libs/components/color-palette/src/acorex-components-color-palette.ts"],"sourcesContent":["import { AXOptionChangedEvent, AXValueChangedEvent } from '@acorex/components/common';\nimport { EventEmitter, Injectable } from '@angular/core';\n\n/**\n * A token that specifies the display mode of datapager component.\n */\nexport type AXColorPaletteView = 'swatches' | 'gradient' | 'custom';\nexport interface AXColorChangedEvent {\n color: any;\n sender: any;\n}\n\n@Injectable()\nexport abstract class AXColorPaletteParentComponent {\n abstract readonly: boolean;\n abstract disabled: boolean;\n abstract get value(): string;\n abstract onValueChanged: EventEmitter<AXValueChangedEvent<string>>;\n abstract onOptionChanged: EventEmitter<AXOptionChangedEvent>;\n abstract commitValue(value: string, u?: boolean);\n}\n\n@Injectable()\nexport abstract class AXColorPaletteChildComponent {}\n\nexport const AXDefaultColorPalette = [\n { code: '#ffffff' },\n { code: '#000000' },\n { code: '#9E9E9E' },\n { code: '#FFC107' },\n { code: '#607D8B' },\n { code: '#2196F3' },\n { code: '#FF5722' },\n { code: '#4CAF50' },\n { code: '#9c27b0' },\n { code: '#3F51B5' },\n // Amber\n { code: '#fff8e1' },\n { code: '#ffecb3' },\n { code: '#ffe082' },\n { code: '#ffd54f' },\n { code: '#ffca28' },\n { code: '#ffc107' },\n { code: '#ffb300' },\n { code: '#ffa000' },\n { code: '#ff8f00' },\n { code: '#ff6f00' },\n // Blue Grey\n { code: '#ECEFF1' },\n { code: '#CFD8DC' },\n { code: '#B0BEC5' },\n { code: '#90A4AE' },\n { code: '#78909C' },\n { code: '#607D8B' },\n { code: '#546E7A' },\n { code: '#455A64' },\n { code: '#37474F' },\n { code: '#263238' },\n // Blue\n { code: '#E3F2FD' },\n { code: '#BBDEFB' },\n { code: '#90CAF9' },\n { code: '#64B5F6' },\n { code: '#42A5F5' },\n { code: '#2196F3' },\n { code: '#1E88E5' },\n { code: '#1976D2' },\n { code: '#1565C0' },\n { code: '#0D47A1' },\n // Brown\n { code: '#EFEBE9' },\n { code: '#D7CCC8' },\n { code: '#BCAAA4' },\n { code: '#A1887F' },\n { code: '#8D6E63' },\n { code: '#795548' },\n { code: '#6D4C41' },\n { code: '#5D4037' },\n { code: '#4E342E' },\n { code: '#3E2723' },\n // Cyan\n { code: '#E0F7FA' },\n { code: '#B2EBF2' },\n { code: '#80DEEA' },\n { code: '#4DD0E1' },\n { code: '#26C6DA' },\n { code: '#00BCD4' },\n { code: '#00ACC1' },\n { code: '#0097A7' },\n { code: '#00838F' },\n { code: '#006064' },\n // Deep Orange\n { code: '#FBE9E7' },\n { code: '#FFCCBC' },\n { code: '#FFAB91' },\n { code: '#FF8A65' },\n { code: '#FF7043' },\n { code: '#FF5722' },\n { code: '#F4511E' },\n { code: '#E64A19' },\n { code: '#D84315' },\n { code: '#BF360C' },\n // Deep Purple\n { code: '#EDE7F6' },\n { code: '#D1C4E9' },\n { code: '#B39DDB' },\n { code: '#9575CD' },\n { code: '#7E57C2' },\n { code: '#673AB7' },\n { code: '#5E35B1' },\n { code: '#512DA8' },\n { code: '#4527A0' },\n { code: '#311B92' },\n // Green\n { code: '#E8F5E9' },\n { code: '#C8E6C9' },\n { code: '#A5D6A7' },\n { code: '#81C784' },\n { code: '#66BB6A' },\n { code: '#4CAF50' },\n { code: '#43A047' },\n { code: '#388E3C' },\n { code: '#2E7D32' },\n { code: '#1B5E20' },\n\n // Grey\n { code: '#FAFAFA' },\n { code: '#F5F5F5' },\n { code: '#EEEEEE' },\n { code: '#E0E0E0' },\n { code: '#BDBDBD' },\n { code: '#9E9E9E' },\n { code: '#757575' },\n { code: '#616161' },\n { code: '#424242' },\n { code: '#212121' },\n\n // Indigo\n { code: '#E8EAF6' },\n { code: '#C5CAE9' },\n { code: '#9FA8DA' },\n { code: '#7986CB' },\n { code: '#5C6BC0' },\n { code: '#3F51B5' },\n { code: '#3949AB' },\n { code: '#303F9F' },\n { code: '#283593' },\n { code: '#1A237E' },\n // Light Blue\n { code: '#E1F5FE' },\n { code: '#B3E5FC' },\n { code: '#81D4FA' },\n { code: '#4FC3F7' },\n { code: '#29B6F6' },\n { code: '#03A9F4' },\n { code: '#039BE5' },\n { code: '#0288D1' },\n { code: '#0277BD' },\n { code: '#01579B' },\n // Light Green\n { code: '#F1F8E9' },\n { code: '#DCEDC8' },\n { code: '#C5E1A5' },\n { code: '#AED581' },\n { code: '#9CCC65' },\n { code: '#8BC34A' },\n { code: '#7CB342' },\n { code: '#689F38' },\n { code: '#558B2F' },\n { code: '#33691E' },\n // Lime\n { code: '#F9FBE7' },\n { code: '#F0F4C3' },\n { code: '#E6EE9C' },\n { code: '#DCE775' },\n { code: '#D4E157' },\n { code: '#CDDC39' },\n { code: '#C0CA33' },\n { code: '#AFB42B' },\n { code: '#9E9D24' },\n { code: '#827717' },\n // Orange\n { code: '#FFF3E0' },\n { code: '#FFE0B2' },\n { code: '#FFCC80' },\n { code: '#FFB74D' },\n { code: '#FFA726' },\n { code: '#FF9800' },\n { code: '#FB8C00' },\n { code: '#F57C00' },\n { code: '#EF6C00' },\n { code: '#E65100' },\n // Pink\n { code: '#FCE4EC' },\n { code: '#F8BBD0' },\n { code: '#F48FB1' },\n { code: '#F06292' },\n { code: '#EC407A' },\n { code: '#E91E63' },\n { code: '#D81B60' },\n { code: '#C2185B' },\n { code: '#AD1457' },\n { code: '#880E4F' },\n // Purple\n { code: '#F3E5F5' },\n { code: '#E1BEE7' },\n { code: '#CE93D8' },\n { code: '#BA68C8' },\n { code: '#AB47BC' },\n { code: '#9C27B0' },\n { code: '#8E24AA' },\n { code: '#7B1FA2' },\n { code: '#6A1B9A' },\n { code: '#4A148C' },\n // Red\n { code: '#FFEBEE' },\n { code: '#FFCDD2' },\n { code: '#EF9A9A' },\n { code: '#E57373' },\n { code: '#EF5350' },\n { code: '#F44336' },\n { code: '#E53935' },\n { code: '#D32F2F' },\n { code: '#C62828' },\n { code: '#B71C1C' },\n // Teal\n { code: '#E0F2F1' },\n { code: '#B2DFDB' },\n { code: '#80CBC4' },\n { code: '#4DB6AC' },\n { code: '#26A69A' },\n { code: '#009688' },\n { code: '#00897B' },\n { code: '#00796B' },\n { code: '#00695C' },\n { code: '#004D40' },\n // Yellow\n { code: '#FFFDE7' },\n { code: '#FFF9C4' },\n { code: '#FFF59D' },\n { code: '#FFF176' },\n { code: '#FFEE58' },\n { code: '#FFEB3B' },\n { code: '#FDD835' },\n { code: '#FBC02D' },\n { code: '#F9A825' },\n { code: '#F57F17' },\n];\n","import { AXValueChangedEvent, MXBaseComponent } from '@acorex/components/common';\nimport { AXMaskOptions } from '@acorex/components/text-box';\nimport { AXColorUtil, AXUnsubscriber } from '@acorex/core/utils';\nimport { AfterViewInit, ChangeDetectionStrategy, Component, HostBinding, Inject, ViewEncapsulation } from '@angular/core';\nimport { AXColorPaletteChildComponent, AXColorPaletteParentComponent } from './color-palette.class';\n\n/**\n * Component for selecting colors from a palette.\n * \n * @category Components\n */\n@Component({\n selector: 'ax-color-palette-input',\n templateUrl: './color-palette-input.component.html',\n styles: `\n .ax-bold {\n font-weight: bold;\n }\n `,\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush,\n providers: [\n {\n provide: AXColorPaletteChildComponent,\n useExisting: AXColorPaletteInputComponent,\n },\n AXUnsubscriber,\n ],\n})\nexport class AXColorPaletteInputComponent extends MXBaseComponent implements AfterViewInit {\n isValid = true;\n\n _rgba: any = {\n r: 0,\n g: 0,\n b: 0,\n a: 0,\n };\n\n _hex = '';\n\n /**\n * @ignore\n */\n protected _colorMode: 'hex' | 'rgba' = 'hex';\n\n /**\n * @ignore\n */\n protected _hexMaskOptions: AXMaskOptions = {\n mask: /^#[0-9a-f]{0,6}[0-9a-f]{0,2}$/i,\n prepare: (str, m, a) => {\n return m.typedValue?.startsWith('#') || str == '#' ? str.trim() : '#' + str.trim();\n },\n };\n\n /**\n * @ignore\n */\n constructor(\n @Inject(AXColorPaletteParentComponent)\n public _parent: AXColorPaletteParentComponent,\n private _unsubscriber: AXUnsubscriber,\n ) {\n super();\n _parent.onValueChanged.pipe(_unsubscriber.takeUntilDestroy).subscribe((e) => {\n this.applyParent(e.isUserInteraction);\n });\n _parent.onOptionChanged.pipe(_unsubscriber.takeUntilDestroy).subscribe((e) => {\n this.cdr.markForCheck();\n });\n }\n\n /**\n * @ignore\n */\n private applyParent(u: boolean = false) {\n const value = this._parent.value;\n if (!value) {\n this._hex = '';\n this._rgba = {\n r: null,\n g: null,\n b: null,\n a: null,\n };\n } else {\n Object.assign(this._rgba, AXColorUtil.to(value, 'rgba'));\n if (this._colorMode != 'hex' || !this._hex) {\n this._hex = AXColorUtil.toString(value, 'hex');\n }\n if (this._colorMode == 'hex') {\n this._hex = value;\n }\n if (!u && this._rgba.a != 1) {\n this._colorMode = 'rgba';\n }\n }\n this.checkValid();\n this.cdr.detectChanges();\n }\n\n /**\n * @ignore\n */\n ngAfterViewInit() {\n this.applyParent();\n }\n\n /**\n * @ignore\n */\n _handleChangeInputMode() {\n switch (this._colorMode) {\n case 'rgba':\n this._colorMode = 'hex';\n break;\n default:\n this._colorMode = 'rgba';\n break;\n }\n }\n\n /**\n * @ignore\n */\n _handleRGBAValueChanged(e: AXValueChangedEvent<number>) {\n if (e.isUserInteraction) {\n this._rgba[e.name] = e.value;\n const { r, g, b, a } = this._rgba;\n const _color = `rgba(${r},${g},${b},${a})`;\n this._parent.commitValue(AXColorUtil.toString(_color, 'rgba'), e.isUserInteraction);\n }\n }\n\n /**\n * @ignore\n */\n protected _handleHEXAValueChanged(e: AXValueChangedEvent<string>) {\n if (e.isUserInteraction && e.value?.trim() != this._hex?.trim()) {\n this._parent.commitValue(e.value, e.isUserInteraction);\n }\n }\n\n /**\n * @ignore\n */\n private checkValid() {\n this.isValid = AXColorUtil.isValid(this._hex);\n }\n\n /**\n * @ignore\n */\n @HostBinding('class')\n private get __hostClass(): string {\n return `ax-color-palette-input`;\n }\n}\n","<div class=\"palette-inputs\">\n @switch (_colorMode) {\n @case ('hex') {\n <div>\n <ax-text-box\n class=\"ax-sm\"\n [ngModel]=\"_hex\"\n [disabled]=\"_parent.disabled\"\n [readonly]=\"_parent.readonly\"\n [state]=\"isValid ? 'clear' : 'error'\"\n (onValueChanged)=\"_handleHEXAValueChanged($event)\"\n [mask-options]=\"_hexMaskOptions\"\n >\n </ax-text-box>\n <label>HEX</label>\n </div>\n }\n @case ('rgba') {\n <div>\n <ax-number-box\n class=\"ax-sm\"\n name=\"r\"\n [minValue]=\"0\"\n [maxValue]=\"255\"\n [ngModel]=\"_rgba.r\"\n [showSpinButtons]=\"false\"\n [disabled]=\"_parent.disabled\"\n [readonly]=\"_parent.readonly\"\n (onValueChanged)=\"_handleRGBAValueChanged($event)\"\n >\n </ax-number-box>\n <label>R</label>\n </div>\n <div>\n <ax-number-box\n class=\"ax-sm\"\n name=\"g\"\n [minValue]=\"0\"\n [maxValue]=\"255\"\n [ngModel]=\"_rgba.g\"\n [showSpinButtons]=\"false\"\n [disabled]=\"_parent.disabled\"\n [readonly]=\"_parent.readonly\"\n (onValueChanged)=\"_handleRGBAValueChanged($event)\"\n >\n </ax-number-box>\n <label>G</label>\n </div>\n <div>\n <ax-number-box\n class=\"ax-sm\"\n name=\"b\"\n [minValue]=\"0\"\n [maxValue]=\"255\"\n [ngModel]=\"_rgba.b\"\n [showSpinButtons]=\"false\"\n [disabled]=\"_parent.disabled\"\n [readonly]=\"_parent.readonly\"\n (onValueChanged)=\"_handleRGBAValueChanged($event)\"\n >\n </ax-number-box>\n <label>B</label>\n </div>\n <div>\n <ax-number-box\n class=\"ax-sm\"\n name=\"a\"\n [minValue]=\"0\"\n [maxValue]=\"1\"\n [ngModel]=\"_rgba.a\"\n [decimals]=\"2\"\n [step]=\"0.1\"\n [disabled]=\"_parent.disabled\"\n [readonly]=\"_parent.readonly\"\n [showSpinButtons]=\"false\"\n (onValueChanged)=\"_handleRGBAValueChanged($event)\"\n >\n </ax-number-box>\n <label>A</label>\n </div>\n }\n }\n</div>\n<button\n type=\"button\"\n class=\"ax-general-button ax-button-rounded ax-button-icon ax-sm\"\n (click)=\"_handleChangeInputMode()\"\n [disabled]=\"_parent.disabled\"\n>\n <span class=\"ax-icon ax-icon-unfold-more ax-bold\"></span>\n</button>\n","import { MXBaseComponent } from '@acorex/components/common';\nimport { isBrowser } from '@acorex/core/platform';\nimport { AXColorUtil, AXUnsubscriber } from '@acorex/core/utils';\nimport { ChangeDetectionStrategy, Component, HostBinding, Inject, ViewEncapsulation } from '@angular/core';\nimport { AXColorPaletteChildComponent, AXColorPaletteParentComponent } from './color-palette.class';\n\n/**\n * Component for picking colors from a color palette.\n *\n * @category Components\n */\n@Component({\n selector: 'ax-color-palette-picker',\n templateUrl: './color-palette-picker.component.html',\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush,\n providers: [\n {\n provide: AXColorPaletteChildComponent,\n useExisting: AXColorPalettePickerComponent,\n },\n AXUnsubscriber,\n ],\n})\nexport class AXColorPalettePickerComponent extends MXBaseComponent {\n _rgba: { r: number; g: number; b: number; a: number } = {\n r: 0,\n g: 0,\n b: 0,\n a: 0,\n };\n\n /**\n * @ignore\n */\n protected _gradient: number = 0;\n\n /**\n * @ignore\n */\n protected _bgColor: string = '#F00';\n\n /**\n * @ignore\n */\n private readonly _gradientColors: any[] = [\n { color: 'rgb(255, 0, 0)', pos: 0 },\n { color: 'rgb(255, 255, 0)', pos: 0.17 },\n { color: 'rgb(0, 255, 0)', pos: 0.33 },\n { color: 'rgb(0, 255, 255)', pos: 0.5 },\n { color: 'rgb(0, 0, 255)', pos: 0.67 },\n { color: 'rgb(255, 0, 255)', pos: 0.83 },\n { color: 'rgb(255, 0, 0)', pos: 1 },\n ];\n\n /**\n * @ignore\n */\n private readonly _gradients = AXColorUtil.gradient(this._gradientColors);\n\n /**\n * @ignore\n */\n private readonly _colors = this._gradients.rgb(100);\n\n /**\n * @ignore\n */\n protected dragPosition = { x: 0, y: 0 };\n\n /**\n * @ignore\n */\n constructor(\n @Inject(AXColorPaletteParentComponent)\n public _parent: AXColorPaletteParentComponent,\n private _unsubscriber: AXUnsubscriber,\n ) {\n super();\n _parent.onValueChanged.pipe(_unsubscriber.takeUntilDestroy).subscribe((e) => {\n this._handleParentColorChanged();\n });\n _parent.onOptionChanged.pipe(_unsubscriber.takeUntilDestroy).subscribe((e) => {\n this.cdr.markForCheck();\n });\n }\n\n /**\n * @ignore\n */\n private setHSV() {\n const hsv = AXColorUtil.to(this._rgba, 'hsva') as any;\n const sortedH = this._colors.map((c) => c.toHsv().h);\n this._gradient = sortedH.findIndex((c) => {\n return Math.round(c) >= Math.round(hsv.h);\n });\n this._bgColor = AXColorUtil.toString({ h: hsv.h, s: 1, v: 1, a: this._rgba.a }, 'rgba');\n this.setPointerByPercent(hsv.s * 100, hsv.v * 100);\n }\n\n /**\n * @ignore\n */\n private _handleParentColorChanged() {\n const color = this._parent.value;\n if (!color) {\n this._rgba = {\n r: 0,\n g: 0,\n b: 0,\n a: 0,\n };\n } else {\n if (!AXColorUtil.equal(color, this._rgba)) {\n Object.assign(this._rgba, AXColorUtil.to(color, 'rgba'));\n }\n }\n this.setHSV();\n this.cdr.detectChanges();\n }\n\n /**\n * @ignore\n */\n protected _handleAlphaChanged(e: any) {\n if (e != this._rgba.a) {\n const { r, g, b } = this._rgba;\n const _color = `rgba(${r},${g},${b},${e})`;\n this._parent.commitValue(AXColorUtil.toString(_color, 'rgba'), true);\n }\n }\n\n /**\n * @ignore\n */\n protected _handleGradientChanged(e: any) {\n if (e != this._gradient) {\n const { s, v } = AXColorUtil.to(this._rgba, 'hsva') as any;\n const { h } = this._colors[e as number].toHsv();\n this._parent.commitValue(AXColorUtil.toString({ h, s, v, a: this._rgba.a }, 'rgba'), true);\n }\n }\n\n /**\n * @ignore\n */\n protected _handleSurfaceClick(e: MouseEvent) {\n if (this._parent.disabled || this._parent.readonly) {\n e.preventDefault();\n e.stopPropagation();\n return;\n }\n const surface = this.getHostElement().querySelector<HTMLDivElement>('.ax-color-box-overlay');\n const pointer = this.getHostElement().querySelector<HTMLDivElement>('.ax-color-box-pointer');\n let x = e.offsetX;\n let y = e.offsetY;\n this.setColorByXY(x, y);\n }\n\n /**\n * @ignore\n */\n protected _handleDrag() {\n if (this._parent.disabled || this._parent.readonly) {\n return;\n }\n const surface = this.getHostElement().querySelector<HTMLDivElement>('.ax-color-box-overlay');\n const sb = surface.getBoundingClientRect();\n const pointer = this.getHostElement().querySelector<HTMLDivElement>('.ax-color-box-pointer');\n const pb = pointer.getBoundingClientRect();\n const w = pb.width / 2;\n let x = pb.left - sb.left + w;\n let y = pb.top - sb.top + w;\n //\n x = x < 0 ? 0 : x;\n x = x > sb.width ? sb.width : x;\n //\n y = y < 0 ? 0 : y;\n y = y > sb.height ? sb.height : y;\n //\n this.setColorByXY(x, y);\n }\n\n /**\n * @ignore\n */\n private setColorByXY(x: number, y: number) {\n const surface = this.getHostElement().querySelector<HTMLDivElement>('.ax-color-box-overlay');\n const sb = surface.getBoundingClientRect();\n //\n const { h } = AXColorUtil.to(this._bgColor, 'hsva') as any;\n const hsv = {\n h,\n s: x / sb.width,\n v: (sb.height - y) / sb.height,\n };\n this._parent.commitValue(AXColorUtil.toString(hsv, 'rgba'), true);\n }\n\n /**\n * @ignore\n */\n private setPointerByPercent(x: number, y: number) {\n if (isBrowser()) {\n const surface = this.getHostElement().querySelector<HTMLDivElement>('.ax-color-box-overlay');\n if (!surface) return;\n const sb = surface?.getBoundingClientRect();\n const pointer = this.getHostElement().querySelector<HTMLDivElement>('.ax-color-box-pointer');\n const pb = pointer?.getBoundingClientRect();\n const w = pb.width / 2;\n const width = sb.width; //+ pb.width\n const height = sb.height; // + pb.width\n this.dragPosition = {\n x: (x * width) / 100 - w,\n y: height - (y * height) / 100 - w,\n };\n }\n }\n\n /**\n * @ignore\n */\n @HostBinding('class')\n private get __hostClass(): string {\n return `ax-color-palette-picker`;\n }\n}\n","<div class=\"ax-color-box-overlay-trans\">\n <div class=\"ax-color-box-overlay\" [style.background-color]=\"_bgColor\">\n <div class=\"ax-color-box-overlay-g1\"></div>\n <div class=\"ax-color-box-overlay-g2\" (click)=\"_handleSurfaceClick($event)\"></div>\n <div\n class=\"ax-color-box-pointer\"\n cdkDrag\n cdkDragBoundary=\".ax-color-box-overlay\"\n [cdkDragFreeDragPosition]=\"dragPosition\"\n (cdkDragEnded)=\"_handleDrag()\"\n [cdkDragDisabled]=\"_parent.disabled || _parent.readonly\"\n ></div>\n </div>\n</div>\n\n<ax-range-slider\n class=\"ax-color-box-gradient\"\n [min]=\"0\"\n [max]=\"100\"\n [mode]=\"'single'\"\n [ngModel]=\"_gradient\"\n [disabled]=\"_parent.disabled\"\n [readonly]=\"_parent.readonly\"\n (ngModelChange)=\"_handleGradientChanged($event)\"\n>\n</ax-range-slider>\n<ax-range-slider\n class=\"ax-color-box-transparent\"\n [min]=\"0\"\n [max]=\"1\"\n [hasStep]=\"false\"\n [ngModel]=\"_rgba.a\"\n [disabled]=\"_parent.disabled\"\n [readonly]=\"_parent.readonly\"\n (ngModelChange)=\"_handleAlphaChanged($event)\"\n>\n</ax-range-slider>\n","import { MXBaseComponent } from '@acorex/components/common';\nimport { AXColorUtil, AXUnsubscriber } from '@acorex/core/utils';\nimport { AfterViewInit, ChangeDetectionStrategy, Component, HostBinding, Inject, NgZone, ViewEncapsulation } from '@angular/core';\nimport { AXColorPaletteChildComponent, AXColorPaletteParentComponent } from './color-palette.class';\n\n/**\n * Component that displays a preview of the selected color in the palette.\n *\n * @category Components\n */\n@Component({\n selector: 'ax-color-palette-preview',\n template: `<div class=\"palette-preview-overlay\" [class.ax-state-disabled]=\"_parent.disabled\"></div>`,\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush,\n providers: [\n {\n provide: AXColorPaletteChildComponent,\n useExisting: AXColorPalettePreviewComponent,\n },\n AXUnsubscriber,\n ],\n})\nexport class AXColorPalettePreviewComponent extends MXBaseComponent implements AfterViewInit {\n /**\n * @ignore\n */\n constructor(\n @Inject(AXColorPaletteParentComponent)\n public _parent: AXColorPaletteParentComponent,\n private _zone: NgZone,\n private _unsubscriber: AXUnsubscriber,\n ) {\n super();\n _parent.onValueChanged.pipe(_unsubscriber.takeUntilDestroy).subscribe((e) => {\n _zone.runOutsideAngular(this.applyParent.bind(this));\n });\n }\n\n /**\n * @ignore\n */\n ngAfterViewInit() {\n this.applyParent();\n }\n\n /**\n * @ignore\n */\n private applyParent() {\n const inner = this.getHostElement().firstElementChild as HTMLDivElement;\n inner.style.backgroundColor = this._parent.value;\n inner.innerText = AXColorUtil.toString(this._parent.value);\n const color = AXColorUtil.toString(this._parent.value, 'hex');\n const ratio = AXColorUtil.contrastToWhite(color);\n this.getHostElement().style.color = !(ratio > 2.0) ? '#000' : '#fff';\n }\n\n /**\n * @ignore\n */\n @HostBinding('classs')\n private get __hostClass(): string {\n return `ax-color-palette-preview`;\n }\n}\n","import { MXBaseComponent } from '@acorex/components/common';\nimport { AXColorUtil, AXUnsubscriber } from '@acorex/core/utils';\nimport { AfterViewInit, ChangeDetectionStrategy, Component, Inject, Input, OnInit, ViewEncapsulation } from '@angular/core';\nimport { distinctUntilChanged } from 'rxjs/operators';\nimport { AXColorPaletteChildComponent, AXColorPaletteParentComponent, AXDefaultColorPalette } from './color-palette.class';\n\n/**\n * Displays color swatches or favorites, allowing color selection.\n *\n * @category Components\n */\n@Component({\n selector: 'ax-color-palette-swatches, ax-color-palette-favorite',\n template: `\n @for (color of colors; track $index) {\n <div\n [style.background-color]=\"color.code\"\n [attr.title]=\"color.code\"\n [class.ax-state-selected]=\"color.code === _selected\"\n (click)=\"_handleClick($event, color)\"\n ></div>\n }\n `,\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush,\n providers: [\n {\n provide: AXColorPaletteChildComponent,\n useExisting: AXColorPaletteSwatchesComponent,\n },\n AXUnsubscriber,\n ],\n})\nexport class AXColorPaletteSwatchesComponent extends MXBaseComponent implements OnInit, AfterViewInit {\n /**\n * @ignore\n */\n protected _selected: string;\n\n /**\n * List of color objects for display, each with a `code` property.\n * @defaultValue []\n */\n @Input()\n colors: { code: string }[] = [];\n\n /**\n * @ignore\n */\n constructor(\n @Inject(AXColorPaletteParentComponent)\n public _parent: AXColorPaletteParentComponent,\n private _unsubscriber: AXUnsubscriber,\n ) {\n super();\n _parent.onValueChanged\n .pipe(_unsubscriber.takeUntilDestroy)\n .pipe(distinctUntilChanged())\n .subscribe(() => {\n this.applyParent();\n });\n }\n\n /**\n * @ignore\n */\n private applyParent() {\n this._selected = AXColorUtil.toString(this._parent.value, 'hex').toLowerCase();\n this.cdr.detectChanges();\n }\n\n /**\n * @ignore\n */\n override ngOnInit(): void {\n super.ngOnInit();\n const isFav = this.getHostElement().tagName.toLowerCase() == 'ax-color-palette-favorite';\n if (!isFav && this.colors.length == 0) {\n this.colors = AXDefaultColorPalette.map((c) => this._format(c));\n }\n }\n\n /**\n * @ignore\n */\n ngAfterViewInit() {\n this.applyParent();\n }\n\n /**\n * @ignore\n */\n protected _handleClick(e: MouseEvent, color) {\n if (this._parent.disabled || this._parent.readonly) return;\n this._parent.commitValue(color.code, true);\n }\n\n /**\n * @ignore\n */\n private _format(color: { code: string }): { code: string } {\n return {\n code: color.code.toLowerCase(),\n };\n }\n}\n","import { AXValuableComponent, MXValueComponent } from '@acorex/components/common';\nimport { ChangeDetectionStrategy, Component, ContentChildren, HostBinding, QueryList, ViewEncapsulation, forwardRef } from '@angular/core';\nimport { NG_VALUE_ACCESSOR } from '@angular/forms';\nimport { AXColorPaletteChildComponent, AXColorPaletteParentComponent } from './color-palette.class';\n\n/**\n * A color palette component that allows for color selection and interaction.\n *\n * @category Components\n */\n@Component({\n selector: 'ax-color-palette',\n templateUrl: './color-palette.component.html',\n styleUrls: ['./color-palette.component.scss'],\n inputs: ['disabled', 'tabIndex', 'readonly', 'value', 'state', 'name', 'checked'],\n outputs: ['onBlur', 'onFocus', 'valueChange', 'stateChange', 'onValueChanged', 'readonlyChange', 'disabledChange'],\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush,\n providers: [\n { provide: AXValuableComponent, useExisting: AXColorPalleteComponent },\n {\n provide: NG_VALUE_ACCESSOR,\n useExisting: forwardRef(() => AXColorPalleteComponent),\n multi: true,\n },\n {\n provide: AXColorPaletteParentComponent,\n useExisting: AXColorPalleteComponent,\n },\n ],\n})\nexport class AXColorPalleteComponent extends MXValueComponent<string> {\n @ContentChildren(AXColorPaletteChildComponent)\n _children: QueryList<AXColorPaletteChildComponent>;\n\n /**\n * @ignore\n */\n @HostBinding('class.ax-state-disabled')\n private get __hostDisabled() {\n return this.disabled;\n }\n}\n","<ng-content select='ax-header'></ng-content>\n\n@if(_children?.length){\n<ng-container [ngTemplateOutlet]=\"custom\"></ng-container>\n} @else{\n<ng-container [ngTemplateOutlet]=\"default\"></ng-container>\n\n}\n<ng-template #custom>\n <ng-content select='ax-color-palette-preview'></ng-content>\n <ng-content select='ax-color-palette-picker'></ng-content>\n <ng-content select='ax-color-palette-swatches'></ng-content>\n <ng-content select='ax-color-palette-favorite'></ng-content>\n <ng-content select='ax-color-palette-input'></ng-content>\n</ng-template>\n<ng-template #default>\n <ax-color-palette-preview></ax-color-palette-preview>\n <ax-color-palette-picker></ax-color-palette-picker>\n <ax-color-palette-swatches></ax-color-palette-swatches>\n <ax-color-palette-input></ax-color-palette-input>\n</ng-template>\n<ng-content select='ax-footer'></ng-content>","import { AXButtonModule } from '@acorex/components/button';\nimport { AXDecoratorModule } from '@acorex/components/decorators';\nimport { AXLabelModule } from '@acorex/components/label';\nimport { AXNumberBoxModule } from '@acorex/components/number-box';\nimport { AXTextBoxModule } from '@acorex/components/text-box';\nimport { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\n\nimport { AXRangeSliderModule } from '@acorex/components/range-slider';\nimport { AXSliderModule } from '@acorex/components/slider';\nimport { DragDropModule } from '@angular/cdk/drag-drop';\nimport { FormsModule } from '@angular/forms';\nimport { AXColorPaletteInputComponent } from './color-palette-input.component';\nimport { AXColorPalettePickerComponent } from './color-palette-picker.component';\nimport { AXColorPalettePreviewComponent } from './color-palette-preview.component';\nimport { AXColorPaletteSwatchesComponent } from './color-palette-swatches.component';\nimport { AXColorPalleteComponent } from './color-palette.component';\n\nconst MODULES: any[] = [\n FormsModule,\n AXTextBoxModule,\n AXLabelModule,\n AXButtonModule,\n AXDecoratorModule,\n AXNumberBoxModule,\n AXRangeSliderModule,\n AXSliderModule,\n DragDropModule,\n];\nconst CONPONENTS: any[] = [\n AXColorPalleteComponent,\n AXColorPalettePreviewComponent,\n AXColorPaletteSwatchesComponent,\n AXColorPaletteInputComponent,\n AXColorPalettePickerComponent,\n];\n\n@NgModule({\n declarations: [...CONPONENTS],\n imports: [CommonModule, ...MODULES],\n exports: [...CONPONENTS],\n providers: [],\n})\nexport class AXColorPaletteModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["i3","i4","i1","i2.AXColorPalettePreviewComponent","i3.AXColorPaletteSwatchesComponent","i4.AXColorPaletteInputComponent","i5.AXColorPalettePickerComponent"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;MAasB,6BAA6B,CAAA;8GAA7B,6BAA6B,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,UAAA,EAAA,CAAA,CAAA,EAAA;kHAA7B,6BAA6B,EAAA,CAAA,CAAA,EAAA;;2FAA7B,6BAA6B,EAAA,UAAA,EAAA,CAAA;kBADlD,UAAU;;MAWW,4BAA4B,CAAA;8GAA5B,4BAA4B,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,UAAA,EAAA,CAAA,CAAA,EAAA;kHAA5B,4BAA4B,EAAA,CAAA,CAAA,EAAA;;2FAA5B,4BAA4B,EAAA,UAAA,EAAA,CAAA;kBADjD,UAAU;;AAGE,MAAA,qBAAqB,GAAG;IACnC,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;;IAEnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;;IAEnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;;IAEnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;;IAEnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;;IAEnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;;IAEnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;;IAEnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;;IAEnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;;IAGnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;;IAGnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;;IAEnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;;IAEnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;;IAEnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;;IAEnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;;IAEnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;;IAEnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;;IAEnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;IACnB,EAAE,IAAI,EAAE,SAAS,EAAE;I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"}