@acorex/components 7.0.10 → 7.0.11

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 (47) hide show
  1. package/esm2020/button/src/button.component.mjs +2 -2
  2. package/esm2020/collapse/src/collapse.component.mjs +3 -3
  3. package/esm2020/data-pager/src/data-pager-numeric-selector.component.mjs +3 -3
  4. package/esm2020/notification/acorex-components-notification.mjs +5 -0
  5. package/esm2020/notification/public-api.mjs +5 -0
  6. package/esm2020/notification/src/notification.class.mjs +2 -0
  7. package/esm2020/notification/src/notification.component.mjs +63 -0
  8. package/esm2020/notification/src/notification.module.mjs +21 -0
  9. package/esm2020/notification/src/notification.service.mjs +136 -0
  10. package/esm2020/number-box/src/number-box.component.mjs +3 -3
  11. package/esm2020/select-box/src/selectbox.component.mjs +3 -3
  12. package/esm2020/toast/src/toast.component.mjs +2 -2
  13. package/fesm2015/acorex-components-button.mjs +2 -2
  14. package/fesm2015/acorex-components-button.mjs.map +1 -1
  15. package/fesm2015/acorex-components-collapse.mjs +2 -2
  16. package/fesm2015/acorex-components-collapse.mjs.map +1 -1
  17. package/fesm2015/acorex-components-data-pager.mjs +2 -2
  18. package/fesm2015/acorex-components-data-pager.mjs.map +1 -1
  19. package/fesm2015/acorex-components-notification.mjs +221 -0
  20. package/fesm2015/acorex-components-notification.mjs.map +1 -0
  21. package/fesm2015/acorex-components-number-box.mjs +2 -2
  22. package/fesm2015/acorex-components-number-box.mjs.map +1 -1
  23. package/fesm2015/acorex-components-select-box.mjs +2 -2
  24. package/fesm2015/acorex-components-select-box.mjs.map +1 -1
  25. package/fesm2015/acorex-components-toast.mjs +2 -2
  26. package/fesm2015/acorex-components-toast.mjs.map +1 -1
  27. package/fesm2020/acorex-components-button.mjs +2 -2
  28. package/fesm2020/acorex-components-button.mjs.map +1 -1
  29. package/fesm2020/acorex-components-collapse.mjs +2 -2
  30. package/fesm2020/acorex-components-collapse.mjs.map +1 -1
  31. package/fesm2020/acorex-components-data-pager.mjs +2 -2
  32. package/fesm2020/acorex-components-data-pager.mjs.map +1 -1
  33. package/fesm2020/acorex-components-notification.mjs +221 -0
  34. package/fesm2020/acorex-components-notification.mjs.map +1 -0
  35. package/fesm2020/acorex-components-number-box.mjs +2 -2
  36. package/fesm2020/acorex-components-number-box.mjs.map +1 -1
  37. package/fesm2020/acorex-components-select-box.mjs +2 -2
  38. package/fesm2020/acorex-components-select-box.mjs.map +1 -1
  39. package/fesm2020/acorex-components-toast.mjs +2 -2
  40. package/fesm2020/acorex-components-toast.mjs.map +1 -1
  41. package/notification/index.d.ts +5 -0
  42. package/notification/public-api.d.ts +4 -0
  43. package/notification/src/notification.class.d.ts +16 -0
  44. package/notification/src/notification.component.d.ts +25 -0
  45. package/notification/src/notification.module.d.ts +8 -0
  46. package/notification/src/notification.service.d.ts +21 -0
  47. package/package.json +9 -1
@@ -1 +1 @@
1
- {"version":3,"file":"acorex-components-number-box.mjs","sources":["../../../../projects/acorex/components/number-box/src/number-box.component.ts","../../../../projects/acorex/components/number-box/src/number-box.component.html","../../../../projects/acorex/components/number-box/src/number-box.module.ts","../../../../projects/acorex/components/number-box/acorex-components-number-box.ts"],"sourcesContent":["import IMask from 'imask';\r\nimport { IMaskDirective } from 'angular-imask';\r\nimport {\r\n Component,\r\n ViewEncapsulation,\r\n ChangeDetectionStrategy,\r\n ElementRef,\r\n ChangeDetectorRef,\r\n Input,\r\n ViewChild,\r\n} from '@angular/core';\r\n\r\n\r\nimport { toNumber } from 'lodash-es';\r\nimport {\r\n AXBaseTextBoxMixin,\r\n AXComponentOptionChanged,\r\n} from '@acorex/components/mixin';\r\n\r\n/**\r\n * The NumberBox is a component which detects user interaction and triggers a corresponding event\r\n *\r\n * @category Components\r\n */\r\n@Component({\r\n selector: 'ax-number-box',\r\n templateUrl: './number-box.component.html',\r\n styleUrls: ['./number-box.component.scss'],\r\n inputs: [\r\n 'disabled',\r\n 'readonly',\r\n 'tabIndex',\r\n 'size',\r\n 'value',\r\n 'placeholder',\r\n 'maxLength',\r\n 'allowNull',\r\n 'type',\r\n 'autoComplete',\r\n 'readonly',\r\n 'allowNull',\r\n 'value',\r\n 'name',\r\n 'checked',\r\n ],\r\n outputs: [\r\n 'valueChange',\r\n 'onValueChanged',\r\n 'onBlur',\r\n 'onFocus'\r\n ],\r\n changeDetection: ChangeDetectionStrategy.OnPush,\r\n encapsulation: ViewEncapsulation.None,\r\n host: { class: 'ax-editor-container' },\r\n})\r\nexport class AXNumberBoxComponent extends AXBaseTextBoxMixin {\r\n @ViewChild('input') input: ElementRef<HTMLInputElement>;\r\n\r\n private _thousandsSeparator: string;\r\n /**\r\n * A character value that specifies the separator character.\r\n */\r\n @Input()\r\n public get thousandsSeparator(): string {\r\n return this._thousandsSeparator;\r\n }\r\n public set thousandsSeparator(v: string) {\r\n this._setOption({\r\n name: 'thousandsSeparator',\r\n value: v ?? '',\r\n });\r\n }\r\n\r\n private _padDecimalZeros: boolean = false;\r\n /**\r\n * A character value that specifies the separator character.\r\n */\r\n @Input()\r\n public get padDecimalZeros(): boolean {\r\n return this._padDecimalZeros;\r\n }\r\n public set padDecimalZeros(v: boolean) {\r\n this._setOption({\r\n name: 'padDecimalZeros',\r\n value: v,\r\n });\r\n }\r\n\r\n /**\r\n * Specifies the value that is used to increment or decrement the **Integer** part of number\r\n */\r\n @Input()\r\n step: number = 1;\r\n\r\n private _decimals: number = 0;\r\n /**\r\n * Specifies the number of decimals that the user can enter\r\n */\r\n @Input()\r\n public get decimals(): number {\r\n return this._decimals;\r\n }\r\n public set decimals(v: number) {\r\n this._setOption({\r\n name: 'decimals',\r\n value: v ?? 0,\r\n });\r\n }\r\n\r\n /**\r\n * Specifies the value that is used to increment or decrement the **Deciaml** part of number\r\n */\r\n @Input()\r\n decimalStep: number | 'auto' = 'auto';\r\n\r\n /**\r\n * Specifies whether the Up and Down spin buttons will be rendered or not\r\n */\r\n @Input()\r\n showSpinButtons: boolean = true;\r\n\r\n private _minValue: number = Number.MIN_SAFE_INTEGER;\r\n /**\r\n * Specifies the smallest value that is valid\r\n */\r\n @Input()\r\n public get minValue(): number {\r\n return this._minValue;\r\n }\r\n public set minValue(v: number) {\r\n this._setOption({\r\n name: 'minValue',\r\n value: v != null ? Number(v) : Number.MIN_SAFE_INTEGER,\r\n });\r\n }\r\n\r\n private _maxValue: number = Number.MAX_SAFE_INTEGER;\r\n /**\r\n * Specifies the greatest value that is valid\r\n */\r\n @Input()\r\n public get maxValue(): number {\r\n return this._maxValue;\r\n }\r\n public set maxValue(v: number) {\r\n this._setOption({\r\n name: 'maxValue',\r\n value: v != null ? Number(v) : Number.MAX_SAFE_INTEGER,\r\n });\r\n }\r\n\r\n /**\r\n * @ignore\r\n */\r\n _maskObj: IMask.MaskedNumber;\r\n\r\n @ViewChild(IMaskDirective)\r\n private _maskDirective: IMaskDirective<IMask.MaskedNumber>;\r\n\r\n /**\r\n * @ignore\r\n */\r\n constructor(elementRef: ElementRef, private cdr: ChangeDetectorRef) {\r\n super(elementRef, cdr);\r\n }\r\n\r\n onViewInit(): void {\r\n super.onViewInit();\r\n this._updateMask();\r\n }\r\n\r\n _onOptionChanged(option: AXComponentOptionChanged): void {\r\n super._onOptionChanged(option);\r\n this._updateMask();\r\n }\r\n\r\n focus(): void {\r\n this.input.nativeElement.focus()\r\n }\r\n\r\n private _updateMask() {\r\n if (!this._maskObj) {\r\n this._maskObj = IMask.createMask({\r\n mask: Number,\r\n min: this.minValue,\r\n max: this.maxValue,\r\n thousandsSeparator: this.thousandsSeparator || '',\r\n scale: this.decimals,\r\n radix: '.',\r\n padFractionalZeros: this.decimals > 0 && this.padDecimalZeros,\r\n });\r\n } else {\r\n this._maskObj.updateOptions({\r\n min: this.minValue,\r\n max: this.maxValue,\r\n thousandsSeparator: this.thousandsSeparator || '',\r\n scale: this.decimals,\r\n radix: '.',\r\n padFractionalZeros: this.decimals > 0 && this.padDecimalZeros,\r\n });\r\n }\r\n this._maskDirective?.maskRef?.updateValue();\r\n this._maskDirective?.maskRef?.updateControl();\r\n }\r\n\r\n _handleOnKeydownEvent(e: KeyboardEvent) {\r\n if (this.disabled || this.readonly) return;\r\n const ignore = () => {\r\n e.preventDefault();\r\n e.stopPropagation();\r\n };\r\n this._setUserInteraction();\r\n const input = e.target as HTMLInputElement;\r\n const valStr = input.value;\r\n const decimalPointIndex = valStr.indexOf('.');\r\n const _cursorPos = input.selectionStart!;\r\n\r\n if (e.key === 'ArrowUp' || e.key === 'ArrowDown') {\r\n if (\r\n decimalPointIndex > 0 &&\r\n _cursorPos > decimalPointIndex &&\r\n this.decimals > 0\r\n ) {\r\n e.key === 'ArrowDown' ? this.decimalStepDown() : this.decimalStepUp();\r\n } else {\r\n e.key === 'ArrowDown' ? this.stepDown() : this.stepUp();\r\n }\r\n ignore();\r\n setTimeout(() => {\r\n input.setSelectionRange(_cursorPos, _cursorPos);\r\n }, 5);\r\n }\r\n super._emitOnKeydownEvent(e);\r\n }\r\n\r\n _handleUpDownClick(v: -1 | 1) {\r\n if (this.disabled || this.readonly) return;\r\n this._setUserInteraction();\r\n v == 1 ? this.stepUp() : this.stepDown();\r\n }\r\n\r\n _setValue(value: any) {\r\n if ((value == null || (value == 0 && !this._maskObj.value)) && this.allowNull) {\r\n return null;\r\n }\r\n const v = toNumber(value);\r\n if (v < this.minValue) return this.minValue;\r\n if (v > this.maxValue) return this.maxValue;\r\n return v;\r\n }\r\n\r\n stepUp() {\r\n if (!this.value) {\r\n this.value = Math.max(this.minValue, 0);\r\n }\r\n this.value += toNumber(this.step);\r\n }\r\n\r\n stepDown() {\r\n if (!this.value) {\r\n this.value = Math.max(this.minValue, 0);\r\n }\r\n this.value -= toNumber(this.step);\r\n }\r\n\r\n decimalStepUp() {\r\n if (!this.value) {\r\n this.value = Math.max(this.minValue, 0);\r\n }\r\n this.value += toNumber(\r\n this.decimalStep == 'auto'\r\n ? 1 / Math.pow(10, this.decimals)\r\n : this.decimalStep\r\n );\r\n }\r\n\r\n decimalStepDown() {\r\n if (!this.value) {\r\n this.value = Math.max(this.minValue, 0);\r\n }\r\n this.value -= toNumber(\r\n this.decimalStep == 'auto'\r\n ? 1 / Math.pow(10, this.decimals)\r\n : this.decimalStep\r\n );\r\n }\r\n}\r\n","<ng-content select=\"ax-prefix\">\r\n</ng-content>\r\n<input #input class=\"ax-input\" type=\"text\" [attr.placeholder]=\"placeholder\" [attr.autocomplete]=\"autoComplete\"\r\n [imask]=\"_maskObj\" [unmask]=\"'typed'\" [attr.min]=\"minValue\" [attr.max]=\"maxValue\"\r\n [class.ax-state-disabled]=\"disabled\" [class.ax-state-readonly]=\"readonly\" [disabled]=\"disabled\"\r\n [readonly]=\"readonly\" [tabindex]=\"tabIndex\" [(ngModel)]=\"value\" (keydown)=\"_handleOnKeydownEvent($event)\"\r\n (keyup)=\"_emitOnKeyupEvent($event)\" (keypress)=\"_emitOnKeypressEvent($event)\" (focus)=\"_emitOnFocusEvent($event)\"\r\n (blur)=\"_emitOnBlurEvent($event)\">\r\n\r\n<div class=\"ax-number-box-control\" *ngIf=\"showSpinButtons\">\r\n <button class=\"ax-general-button ax-button-icon\" (click)=\"_handleUpDownClick(1)\">\r\n <span class=\"ax-icon ax-icon-arrow-up\"></span>\r\n </button>\r\n <button class=\"ax-general-button ax-button-icon\" (click)=\"_handleUpDownClick(-1)\">\r\n <span class=\"ax-icon ax-icon-arrow-down\"></span>\r\n </button>\r\n</div>\r\n\r\n<!-- <div class=\"ax-number-box-arrows\" *ngIf=\"showSpinButtons && !(disabled || readonly)\">\r\n <ax-button color=\"light\" look=\"blank\" (onClick)=\"_handleUpDownClick($event,1)\" [tabIndex]=\"-1\">\r\n <ax-prefix>\r\n <ax-icon class=\"ax-icon-arrow-fill ax-rotate-90\">\r\n </ax-icon>\r\n </ax-prefix>\r\n </ax-button>\r\n <ax-button color=\"light\" look=\"blank\" (onClick)=\"_handleUpDownClick($event,-1)\" [tabIndex]=\"-1\">\r\n <ax-prefix>\r\n <ax-icon class=\"ax-icon-arrow-fill -ax-rotate-90\">\r\n </ax-icon>\r\n </ax-prefix>\r\n </ax-button>\r\n</div> -->\r\n<ng-content select=\"ax-suffix\">\r\n</ng-content>\r\n<ng-content select=\"ax-validation-rule\">\r\n</ng-content>","import { NgModule } from '@angular/core';\r\nimport { FormsModule } from '@angular/forms';\r\nimport { CommonModule } from '@angular/common';\r\nimport {IMaskModule} from 'angular-imask';\r\nimport { AXButtonModule } from '@acorex/components/button';\r\nimport { AXDecoratorModule } from '@acorex/components/decorators';\r\nimport { AXNumberBoxComponent } from './number-box.component';\r\n\r\nconst COMPONENT = [AXNumberBoxComponent];\r\nconst MODULES = [\r\n CommonModule,\r\n FormsModule,\r\n AXButtonModule,\r\n AXDecoratorModule,\r\n IMaskModule\r\n];\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 AXNumberBoxModule { }\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-number-box.mjs","sources":["../../../../projects/acorex/components/number-box/src/number-box.component.ts","../../../../projects/acorex/components/number-box/src/number-box.component.html","../../../../projects/acorex/components/number-box/src/number-box.module.ts","../../../../projects/acorex/components/number-box/acorex-components-number-box.ts"],"sourcesContent":["import IMask from 'imask';\r\nimport { IMaskDirective } from 'angular-imask';\r\nimport {\r\n Component,\r\n ViewEncapsulation,\r\n ChangeDetectionStrategy,\r\n ElementRef,\r\n ChangeDetectorRef,\r\n Input,\r\n ViewChild,\r\n} from '@angular/core';\r\n\r\n\r\nimport { toNumber } from 'lodash-es';\r\nimport {\r\n AXBaseTextBoxMixin,\r\n AXComponentOptionChanged,\r\n} from '@acorex/components/mixin';\r\n\r\n/**\r\n * The NumberBox is a component which detects user interaction and triggers a corresponding event\r\n *\r\n * @category Components\r\n */\r\n@Component({\r\n selector: 'ax-number-box',\r\n templateUrl: './number-box.component.html',\r\n styleUrls: ['./number-box.component.scss'],\r\n inputs: [\r\n 'disabled',\r\n 'readonly',\r\n 'tabIndex',\r\n 'size',\r\n 'value',\r\n 'placeholder',\r\n 'maxLength',\r\n 'allowNull',\r\n 'type',\r\n 'autoComplete',\r\n 'readonly',\r\n 'allowNull',\r\n 'value',\r\n 'name',\r\n 'checked',\r\n ],\r\n outputs: [\r\n 'valueChange',\r\n 'onValueChanged',\r\n 'onBlur',\r\n 'onFocus'\r\n ],\r\n changeDetection: ChangeDetectionStrategy.OnPush,\r\n encapsulation: ViewEncapsulation.None,\r\n host: { class: 'ax-editor-container' },\r\n})\r\nexport class AXNumberBoxComponent extends AXBaseTextBoxMixin {\r\n @ViewChild('input') input: ElementRef<HTMLInputElement>;\r\n\r\n private _thousandsSeparator: string;\r\n /**\r\n * A character value that specifies the separator character.\r\n */\r\n @Input()\r\n public get thousandsSeparator(): string {\r\n return this._thousandsSeparator;\r\n }\r\n public set thousandsSeparator(v: string) {\r\n this._setOption({\r\n name: 'thousandsSeparator',\r\n value: v ?? '',\r\n });\r\n }\r\n\r\n private _padDecimalZeros: boolean = false;\r\n /**\r\n * A character value that specifies the separator character.\r\n */\r\n @Input()\r\n public get padDecimalZeros(): boolean {\r\n return this._padDecimalZeros;\r\n }\r\n public set padDecimalZeros(v: boolean) {\r\n this._setOption({\r\n name: 'padDecimalZeros',\r\n value: v,\r\n });\r\n }\r\n\r\n /**\r\n * Specifies the value that is used to increment or decrement the **Integer** part of number\r\n */\r\n @Input()\r\n step: number = 1;\r\n\r\n private _decimals: number = 0;\r\n /**\r\n * Specifies the number of decimals that the user can enter\r\n */\r\n @Input()\r\n public get decimals(): number {\r\n return this._decimals;\r\n }\r\n public set decimals(v: number) {\r\n this._setOption({\r\n name: 'decimals',\r\n value: v ?? 0,\r\n });\r\n }\r\n\r\n /**\r\n * Specifies the value that is used to increment or decrement the **Deciaml** part of number\r\n */\r\n @Input()\r\n decimalStep: number | 'auto' = 'auto';\r\n\r\n /**\r\n * Specifies whether the Up and Down spin buttons will be rendered or not\r\n */\r\n @Input()\r\n showSpinButtons: boolean = true;\r\n\r\n private _minValue: number = Number.MIN_SAFE_INTEGER;\r\n /**\r\n * Specifies the smallest value that is valid\r\n */\r\n @Input()\r\n public get minValue(): number {\r\n return this._minValue;\r\n }\r\n public set minValue(v: number) {\r\n this._setOption({\r\n name: 'minValue',\r\n value: v != null ? Number(v) : Number.MIN_SAFE_INTEGER,\r\n });\r\n }\r\n\r\n private _maxValue: number = Number.MAX_SAFE_INTEGER;\r\n /**\r\n * Specifies the greatest value that is valid\r\n */\r\n @Input()\r\n public get maxValue(): number {\r\n return this._maxValue;\r\n }\r\n public set maxValue(v: number) {\r\n this._setOption({\r\n name: 'maxValue',\r\n value: v != null ? Number(v) : Number.MAX_SAFE_INTEGER,\r\n });\r\n }\r\n\r\n /**\r\n * @ignore\r\n */\r\n _maskObj: IMask.MaskedNumber;\r\n\r\n @ViewChild(IMaskDirective)\r\n private _maskDirective: IMaskDirective<IMask.MaskedNumber>;\r\n\r\n /**\r\n * @ignore\r\n */\r\n constructor(elementRef: ElementRef, private cdr: ChangeDetectorRef) {\r\n super(elementRef, cdr);\r\n }\r\n\r\n onViewInit(): void {\r\n super.onViewInit();\r\n this._updateMask();\r\n }\r\n\r\n _onOptionChanged(option: AXComponentOptionChanged): void {\r\n super._onOptionChanged(option);\r\n this._updateMask();\r\n }\r\n\r\n focus(): void {\r\n this.input.nativeElement.focus()\r\n }\r\n\r\n private _updateMask() {\r\n if (!this._maskObj) {\r\n this._maskObj = IMask.createMask({\r\n mask: Number,\r\n min: this.minValue,\r\n max: this.maxValue,\r\n thousandsSeparator: this.thousandsSeparator || '',\r\n scale: this.decimals,\r\n radix: '.',\r\n padFractionalZeros: this.decimals > 0 && this.padDecimalZeros,\r\n });\r\n } else {\r\n this._maskObj.updateOptions({\r\n min: this.minValue,\r\n max: this.maxValue,\r\n thousandsSeparator: this.thousandsSeparator || '',\r\n scale: this.decimals,\r\n radix: '.',\r\n padFractionalZeros: this.decimals > 0 && this.padDecimalZeros,\r\n });\r\n }\r\n this._maskDirective?.maskRef?.updateValue();\r\n this._maskDirective?.maskRef?.updateControl();\r\n }\r\n\r\n _handleOnKeydownEvent(e: KeyboardEvent) {\r\n if (this.disabled || this.readonly) return;\r\n const ignore = () => {\r\n e.preventDefault();\r\n e.stopPropagation();\r\n };\r\n this._setUserInteraction();\r\n const input = e.target as HTMLInputElement;\r\n const valStr = input.value;\r\n const decimalPointIndex = valStr.indexOf('.');\r\n const _cursorPos = input.selectionStart!;\r\n\r\n if (e.key === 'ArrowUp' || e.key === 'ArrowDown') {\r\n if (\r\n decimalPointIndex > 0 &&\r\n _cursorPos > decimalPointIndex &&\r\n this.decimals > 0\r\n ) {\r\n e.key === 'ArrowDown' ? this.decimalStepDown() : this.decimalStepUp();\r\n } else {\r\n e.key === 'ArrowDown' ? this.stepDown() : this.stepUp();\r\n }\r\n ignore();\r\n setTimeout(() => {\r\n input.setSelectionRange(_cursorPos, _cursorPos);\r\n }, 5);\r\n }\r\n super._emitOnKeydownEvent(e);\r\n }\r\n\r\n _handleUpDownClick(v: -1 | 1) {\r\n if (this.disabled || this.readonly) return;\r\n this._setUserInteraction();\r\n v == 1 ? this.stepUp() : this.stepDown();\r\n }\r\n\r\n _setValue(value: any) {\r\n if ((value == null || (value == 0 && !this._maskObj.value)) && this.allowNull) {\r\n return null;\r\n }\r\n const v = toNumber(value);\r\n if (v < this.minValue) return this.minValue;\r\n if (v > this.maxValue) return this.maxValue;\r\n return v;\r\n }\r\n\r\n stepUp() {\r\n if (!this.value) {\r\n this.value = Math.max(this.minValue, 0);\r\n }\r\n this.value += toNumber(this.step);\r\n }\r\n\r\n stepDown() {\r\n if (!this.value) {\r\n this.value = Math.max(this.minValue, 0);\r\n }\r\n this.value -= toNumber(this.step);\r\n }\r\n\r\n decimalStepUp() {\r\n if (!this.value) {\r\n this.value = Math.max(this.minValue, 0);\r\n }\r\n this.value += toNumber(\r\n this.decimalStep == 'auto'\r\n ? 1 / Math.pow(10, this.decimals)\r\n : this.decimalStep\r\n );\r\n }\r\n\r\n decimalStepDown() {\r\n if (!this.value) {\r\n this.value = Math.max(this.minValue, 0);\r\n }\r\n this.value -= toNumber(\r\n this.decimalStep == 'auto'\r\n ? 1 / Math.pow(10, this.decimals)\r\n : this.decimalStep\r\n );\r\n }\r\n}\r\n","<ng-content select=\"ax-prefix\">\r\n</ng-content>\r\n<input #input class=\"ax-input\" type=\"text\" [attr.placeholder]=\"placeholder\" [attr.autocomplete]=\"autoComplete\"\r\n [imask]=\"_maskObj\" [unmask]=\"'typed'\" [attr.min]=\"minValue\" [attr.max]=\"maxValue\"\r\n [class.ax-state-disabled]=\"disabled\" [class.ax-state-readonly]=\"readonly\" [disabled]=\"disabled\"\r\n [readonly]=\"readonly\" [tabindex]=\"tabIndex\" [(ngModel)]=\"value\" (keydown)=\"_handleOnKeydownEvent($event)\"\r\n (keyup)=\"_emitOnKeyupEvent($event)\" (keypress)=\"_emitOnKeypressEvent($event)\" (focus)=\"_emitOnFocusEvent($event)\"\r\n (blur)=\"_emitOnBlurEvent($event)\">\r\n\r\n<div class=\"ax-number-box-control\" *ngIf=\"showSpinButtons\">\r\n <button class=\"ax-general-button ax-button-icon\" (click)=\"_handleUpDownClick(1)\">\r\n <span class=\"ax-icon ax-icon-arrow-up\"></span>\r\n </button>\r\n <button class=\"ax-general-button ax-button-icon\" (click)=\"_handleUpDownClick(-1)\">\r\n <span class=\"ax-icon ax-icon-arrow-down\"></span>\r\n </button>\r\n</div>\r\n\r\n<!-- <div class=\"ax-number-box-arrows\" *ngIf=\"showSpinButtons && !(disabled || readonly)\">\r\n <ax-button color=\"light\" look=\"blank\" (onClick)=\"_handleUpDownClick($event,1)\" [tabIndex]=\"-1\">\r\n <ax-prefix>\r\n <ax-icon class=\"ax-icon-arrow-fill ax-rotation-90\">\r\n </ax-icon>\r\n </ax-prefix>\r\n </ax-button>\r\n <ax-button color=\"light\" look=\"blank\" (onClick)=\"_handleUpDownClick($event,-1)\" [tabIndex]=\"-1\">\r\n <ax-prefix>\r\n <ax-icon class=\"ax-icon-arrow-fill -ax-rotation-90\">\r\n </ax-icon>\r\n </ax-prefix>\r\n </ax-button>\r\n</div> -->\r\n<ng-content select=\"ax-suffix\">\r\n</ng-content>\r\n<ng-content select=\"ax-validation-rule\">\r\n</ng-content>","import { NgModule } from '@angular/core';\r\nimport { FormsModule } from '@angular/forms';\r\nimport { CommonModule } from '@angular/common';\r\nimport {IMaskModule} from 'angular-imask';\r\nimport { AXButtonModule } from '@acorex/components/button';\r\nimport { AXDecoratorModule } from '@acorex/components/decorators';\r\nimport { AXNumberBoxComponent } from './number-box.component';\r\n\r\nconst COMPONENT = [AXNumberBoxComponent];\r\nconst MODULES = [\r\n CommonModule,\r\n FormsModule,\r\n AXButtonModule,\r\n AXDecoratorModule,\r\n IMaskModule\r\n];\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 AXNumberBoxModule { }\r\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":"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"}
@@ -328,7 +328,7 @@ AXSelectBoxComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", ver
328
328
  AXSelectBoxComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.0.4", type: AXSelectBoxComponent, selector: "ax-select-box", inputs: { isOpen: "isOpen", fitParent: "fitParent", dropdownWidth: "dropdownWidth", position: "position", disabled: "disabled", tabIndex: "tabIndex", readonly: "readonly", allowNull: "allowNull", value: "value", name: "name", checked: "checked", placeholder: "placeholder", maxLength: "maxLength", type: "type", autoComplete: "autoComplete", pageSize: "pageSize", valueField: "valueField", textField: "textField", items: "items", disabledField: "disabledField", disabledCallback: "disabledCallback", multiple: "multiple", selectionMode: "selectionMode", clearButton: "clearButton", checkbox: "checkbox" }, outputs: { onOpened: "onOpened", onClosed: "onClosed", onBlur: "onBlur", onFocus: "onFocus", valueChange: "valueChange", onValueChanged: "onValueChanged", valueChanged: "valueChanged" }, host: { listeners: { "keydown": "_handleKeydown($event)" }, classAttribute: "ax-editor-container ax-drop-down" }, providers: [
329
329
  { provide: AXClosbaleComponent, useExisting: AXSelectBoxComponent },
330
330
  { provide: AXSearchableComponent, useExisting: AXSelectBoxComponent },
331
- ], queries: [{ propertyName: "_searchBox", first: true, predicate: AXSearchBoxComponent, descendants: true, static: true }, { propertyName: "_contentEmptyTemplate", first: true, predicate: ["emptyTemplate"], descendants: true }], viewQueries: [{ propertyName: "popover", first: true, predicate: AXPopoverComponent, descendants: true, static: true }, { propertyName: "listContainer", first: true, predicate: ["listContainer"], descendants: true, static: true }], usesInheritance: true, ngImport: i0, template: "<ng-content select=\"ax-prefix\">\r\n</ng-content>\r\n<div class=\"ax-dropdown-content\" [class.ax-state-disabled]=\"disabled\" (click)=\"_handleInputClickEvent($event)\">\r\n <div class=\"ax-select-box-selection\" [tabindex]=\"tabIndex\" (focus)=\"_emitOnFocusEvent($event)\"\r\n (blur)=\"_emitOnBlurEvent($event)\">\r\n <ng-container *ngIf=\"selectedItems && selectedItems.length; else showPlaceholder\">\r\n <ng-container *ngIf=\"!multiple; then singleSelectedTemplate; else multipleSelectedTemplate\"></ng-container>\r\n <ng-template #singleSelectedTemplate>\r\n <ng-container *ngFor=\"let item of selectedItems\">\r\n <span> {{ _getItemDisplayTextTemplte(item) }}</span>\r\n </ng-container>\r\n </ng-template>\r\n <ng-template #multipleSelectedTemplate>\r\n <ng-container *ngFor=\"let item of selectedItems\">\r\n <div class=\"ax-select-multi-item\">\r\n {{_getItemDisplayTextTemplte(item)}}\r\n <span class=\"ax-icon ax-icon-close\" (click)=\"_handleBadgeRemove($event,item)\">\r\n </span>\r\n </div>\r\n </ng-container>\r\n </ng-template>\r\n </ng-container>\r\n <ng-template #showPlaceholder>\r\n <div class=\"ax-placeholder\" role=\"textbox\" area-readonly=\"true\"> {{placeholder}}</div>\r\n </ng-template>\r\n </div>\r\n</div>\r\n<ax-button color=\"light\" look=\"blank\" (onClick)=\"clear()\" [tabIndex]=\"-1\"\r\n *ngIf=\"value && clearButton && !(disabled || readonly)\">\r\n <ax-icon icon=\"ax-icon ax-icon-close\"></ax-icon>\r\n</ax-button>\r\n<button [disabled]=\"disabled\" [tabIndex]=\"-1\" class=\"ax-editor-control\"\r\n (click)=\"_handleArrowClickEvent($event)\">\r\n <ng-container *ngIf=\"isLoading && !this.popover.isOpen; else iconTemplate\">\r\n <ax-loading type=\"spinner\"></ax-loading>\r\n </ng-container>\r\n <ng-template #iconTemplate>\r\n <span class=\"ax-icon ax-icon-chevron-left ax-transition-all\" [ngClass]=\"{'-ax-rotate-90': !isOpen, 'ax-rotate-90':isOpen}\"></span>\r\n </ng-template>\r\n</button>\r\n<ng-content select=\"ax-validation-rule\">\r\n</ng-content>\r\n<ng-content select=\"ax-suffix\">\r\n</ng-content>\r\n<ax-popover [target]=\"_target\" [position]=\"position\" [openTrigger]=\"'manual'\" [closeTrigger]=\"'clickout'\"\r\n [adaptivityEnabled]=\"true\" (onOpened)=\"_handlePopupOnOpened($event)\" (onClosed)=\"_handlePopupOnClosed($event)\">\r\n <div class=\"ax-overlay-pane\" (keydown)=\"_handlePopoverKeydown($event)\" tabindex=\"0\" aria-modal=\"true\" cdkTrapFocus\r\n [class.ax-overlay-actionsheet]=\"_isMobile\" [class.ax-full]=\"_searchBox || isLazy\"\r\n [style.min-width.px]=\"_popoverWidth\">\r\n <div class=\"ax-list\">\r\n <ax-header *ngIf=\"_isMobile && placeholder\">\r\n <ax-title [text]=\"_popoverTitle\"></ax-title>\r\n <ax-close-button class=\"ax-icon\" [icon]=\"multiple?'ax-icon-done !ax-text-primary-500':'ax-icon-close'\"></ax-close-button>\r\n </ax-header>\r\n <div class=\"ax-search-box-container\" [class.ax-state-hidden]=\"!_searchBox\" [cdkTrapFocus]=\"_searchBox!=null\">\r\n <ng-content select=\"ax-search-box\"></ng-content>\r\n </div>\r\n <div class=\"ax-content ax-list-items-container ax-default\" (scroll)=\"_handleListScroll($event)\"\r\n #listContainer>\r\n <ng-container *ngIf=\"displayItems.length; else tmpEmpty\">\r\n <ul>\r\n <ng-container *ngTemplateOutlet=\"tmpTree; context:{ list: displayItems }\">\r\n </ng-container>\r\n <ng-template #tmpTree let-list=\"list\">\r\n <ng-container *ngFor=\"let item of list;let i = index;trackBy : _trackByFunction\">\r\n <ng-container *ngIf=\"itemTemplate; else defualtTemplate\">\r\n <li class=\"ax-list-item\" (click)=\"_handleOnItemClick($event,item)\"\r\n [attr.data-id]=\"item[this.valueField]\">\r\n <ng-container\r\n *ngTemplateOutlet=\"itemTemplate; context: { $implicit: item,direction:direction}\">\r\n </ng-container>\r\n </li>\r\n </ng-container>\r\n <ng-template #defualtTemplate>\r\n <ng-container *ngIf=\"item.children?.length > 0;else tmpItem\">\r\n <li class=\"ax-list-item-group\" [attr.data-id]=\"item[this.valueField]\">\r\n <span> {{ _getItemDisplayTextTemplte(item) }}</span>\r\n <ul *ngIf=\"item.children?.length > 0\">\r\n <ng-container\r\n *ngTemplateOutlet=\"tmpTree; context:{ list: item.children }\">\r\n </ng-container>\r\n </ul>\r\n </li>\r\n </ng-container>\r\n <ng-template #tmpItem>\r\n <ng-container *ngIf=\"!multiple; else multipleTemplate\">\r\n <li class=\"ax-list-item\" [class.ax-state-selected]=\"isItemSelected(item)\"\r\n [class.ax-state-disabled]=\"isItemDisabled(item)\" [attr.tabindex]=\"i\"\r\n (click)=\"_handleOnItemClick($event,item)\"\r\n [attr.data-id]=\"item[this.valueField]\">\r\n <span> {{ _getItemDisplayTextTemplte(item) }}</span>\r\n </li>\r\n </ng-container>\r\n <ng-template #multipleTemplate>\r\n <li class=\"ax-list-item\" [class.ax-state-selected]=\"isItemSelected(item)\"\r\n [class.ax-state-disabled]=\"isItemDisabled(item)\"\r\n [class.ax-check-box]=\"checkbox\" [attr.tabindex]=\"i\"\r\n (click)=\"_handleOnItemClick($event,item)\"\r\n [attr.data-id]=\"item[this.valueField]\">\r\n <input class=\"ax-checkbox\" type=\"checkbox\"\r\n [class.ax-state-disabled]=\"isItemDisabled(item)\" *ngIf=\"checkbox\"\r\n [checked]=\"isItemSelected(item)\" [disabled]=\"isItemDisabled(item)\">\r\n <span class=\"ax-ms-2\"> {{ _getItemDisplayTextTemplte(item) }}</span>\r\n </li>\r\n </ng-template>\r\n </ng-template>\r\n </ng-template>\r\n </ng-container>\r\n </ng-template>\r\n </ul>\r\n </ng-container>\r\n <ng-container *ngIf=\"isLoading\">\r\n <ng-container *ngIf=\"loadingTemplate; else elseLoadingTemplate\">\r\n <ng-container *ngTemplateOutlet=\"loadingTemplate\">\r\n </ng-container>\r\n </ng-container>\r\n <ng-template #elseLoadingTemplate>\r\n <div class=\"ax-flex ax-items-center ax-justify-center ax-p-4\">\r\n <ax-loading text=\"{{ 'layout.loading.text' | trans }}\"></ax-loading>\r\n </div>\r\n </ng-template>\r\n </ng-container>\r\n <ng-template #tmpEmpty>\r\n <ng-container *ngIf=\"!isLoading\">\r\n <ng-container *ngIf=\"emptyTemplate; else elseEmptyTemplate\">\r\n <ng-container *ngTemplateOutlet=\"emptyTemplate\">\r\n </ng-container>\r\n </ng-container>\r\n <ng-template #elseEmptyTemplate>\r\n <div class=\"ax-flex ax-items-center ax-justify-center ax-p-4\"\r\n [innerHTML]=\"'common.no-result-for' | trans:{exp:this._searchBox? this._searchBox.searchExp :''}\">\r\n </div>\r\n </ng-template>\r\n </ng-container>\r\n </ng-template>\r\n\r\n </div>\r\n <!-- <div class=\"ax-list-items-container ax-vertical ax-default\" [class.ax-full]=\"_isMobile\"\r\n >\r\n \r\n </div> -->\r\n <!-- <div class=\"ax-footer\">footer</div> -->\r\n </div>\r\n </div>\r\n</ax-popover>", styles: ["ax-select-box .ax-select-multi-item{display:flex;align-items:center;padding:.25rem .5rem;background-color:rgb(var(--ax-color-ghost),.05);border-radius:var(--ax-rounded-border-default);margin-inline-end:.5rem}ax-select-box .ax-select-multi-item .ax-icon-close{cursor:pointer;margin-inline-start:.5rem}ax-select-box .ax-select-box-selection{display:flex;justify-content:center;align-items:center;outline-color:transparent;padding:0 .5rem}ax-select-box .ax-select-box-selection .ax-selectbox-input{opacity:0;width:0}\n"], dependencies: [{ kind: "directive", type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: i3.AXDecoratorHeaderComponent, selector: "ax-header" }, { kind: "component", type: i3.AXDecoratorIconComponent, selector: "ax-icon", inputs: ["icon"] }, { kind: "component", type: i3.AXDecoratorTitleComponent, selector: "ax-title", inputs: ["text"] }, { kind: "component", type: i3.AXDecoratorCloseButtonComponent, selector: "ax-close-button", inputs: ["icon"] }, { kind: "component", type: i4.AXPopoverComponent, selector: "ax-popover", inputs: ["target", "position", "openTrigger", "closeTrigger", "hasBackdrop", "backdropClass", "adaptivityEnabled"], outputs: ["onOpened", "onClosed"] }, { kind: "component", type: i5.AXButtonComponent, selector: "ax-button", inputs: ["disabled", "size", "tabIndex", "color", "look", "text", "toggleable", "selected", "type"], outputs: ["onBlur", "onFocus", "onClick", "selectedChange", "toggleableChange", "lookChange", "colorChange"] }, { kind: "component", type: i6.AXLoadingComponent, selector: "ax-loading", inputs: ["visible", "type", "text"], outputs: ["visibleChange"] }, { kind: "directive", type: i7.CdkTrapFocus, selector: "[cdkTrapFocus]", inputs: ["cdkTrapFocus", "cdkTrapFocusAutoCapture"], exportAs: ["cdkTrapFocus"] }, { kind: "pipe", type: i8.AXTranslatorPipe, name: "trans" }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
331
+ ], queries: [{ propertyName: "_searchBox", first: true, predicate: AXSearchBoxComponent, descendants: true, static: true }, { propertyName: "_contentEmptyTemplate", first: true, predicate: ["emptyTemplate"], descendants: true }], viewQueries: [{ propertyName: "popover", first: true, predicate: AXPopoverComponent, descendants: true, static: true }, { propertyName: "listContainer", first: true, predicate: ["listContainer"], descendants: true, static: true }], usesInheritance: true, ngImport: i0, template: "<ng-content select=\"ax-prefix\">\r\n</ng-content>\r\n<div class=\"ax-dropdown-content\" [class.ax-state-disabled]=\"disabled\" (click)=\"_handleInputClickEvent($event)\">\r\n <div class=\"ax-select-box-selection\" [tabindex]=\"tabIndex\" (focus)=\"_emitOnFocusEvent($event)\"\r\n (blur)=\"_emitOnBlurEvent($event)\">\r\n <ng-container *ngIf=\"selectedItems && selectedItems.length; else showPlaceholder\">\r\n <ng-container *ngIf=\"!multiple; then singleSelectedTemplate; else multipleSelectedTemplate\"></ng-container>\r\n <ng-template #singleSelectedTemplate>\r\n <ng-container *ngFor=\"let item of selectedItems\">\r\n <span> {{ _getItemDisplayTextTemplte(item) }}</span>\r\n </ng-container>\r\n </ng-template>\r\n <ng-template #multipleSelectedTemplate>\r\n <ng-container *ngFor=\"let item of selectedItems\">\r\n <div class=\"ax-select-multi-item\">\r\n {{_getItemDisplayTextTemplte(item)}}\r\n <span class=\"ax-icon ax-icon-close\" (click)=\"_handleBadgeRemove($event,item)\">\r\n </span>\r\n </div>\r\n </ng-container>\r\n </ng-template>\r\n </ng-container>\r\n <ng-template #showPlaceholder>\r\n <div class=\"ax-placeholder\" role=\"textbox\" area-readonly=\"true\"> {{placeholder}}</div>\r\n </ng-template>\r\n </div>\r\n</div>\r\n<ax-button color=\"light\" look=\"blank\" (onClick)=\"clear()\" [tabIndex]=\"-1\"\r\n *ngIf=\"value && clearButton && !(disabled || readonly)\">\r\n <ax-icon icon=\"ax-icon ax-icon-close\"></ax-icon>\r\n</ax-button>\r\n<button [disabled]=\"disabled\" [tabIndex]=\"-1\" class=\"ax-editor-control\"\r\n (click)=\"_handleArrowClickEvent($event)\">\r\n <ng-container *ngIf=\"isLoading && !this.popover.isOpen; else iconTemplate\">\r\n <ax-loading type=\"spinner\"></ax-loading>\r\n </ng-container>\r\n <ng-template #iconTemplate>\r\n <span class=\"ax-icon ax-icon-chevron-left ax-transition-all\" [ngClass]=\"{'-ax-rotation-90': !isOpen, 'ax-rotation-90':isOpen}\"></span>\r\n </ng-template>\r\n</button>\r\n<ng-content select=\"ax-validation-rule\">\r\n</ng-content>\r\n<ng-content select=\"ax-suffix\">\r\n</ng-content>\r\n<ax-popover [target]=\"_target\" [position]=\"position\" [openTrigger]=\"'manual'\" [closeTrigger]=\"'clickout'\"\r\n [adaptivityEnabled]=\"true\" (onOpened)=\"_handlePopupOnOpened($event)\" (onClosed)=\"_handlePopupOnClosed($event)\">\r\n <div class=\"ax-overlay-pane\" (keydown)=\"_handlePopoverKeydown($event)\" tabindex=\"0\" aria-modal=\"true\" cdkTrapFocus\r\n [class.ax-overlay-actionsheet]=\"_isMobile\" [class.ax-full]=\"_searchBox || isLazy\"\r\n [style.min-width.px]=\"_popoverWidth\">\r\n <div class=\"ax-list\">\r\n <ax-header *ngIf=\"_isMobile && placeholder\">\r\n <ax-title [text]=\"_popoverTitle\"></ax-title>\r\n <ax-close-button class=\"ax-icon\" [icon]=\"multiple?'ax-icon-done !ax-text-primary-500':'ax-icon-close'\"></ax-close-button>\r\n </ax-header>\r\n <div class=\"ax-search-box-container\" [class.ax-state-hidden]=\"!_searchBox\" [cdkTrapFocus]=\"_searchBox!=null\">\r\n <ng-content select=\"ax-search-box\"></ng-content>\r\n </div>\r\n <div class=\"ax-content ax-list-items-container ax-default\" (scroll)=\"_handleListScroll($event)\"\r\n #listContainer>\r\n <ng-container *ngIf=\"displayItems.length; else tmpEmpty\">\r\n <ul>\r\n <ng-container *ngTemplateOutlet=\"tmpTree; context:{ list: displayItems }\">\r\n </ng-container>\r\n <ng-template #tmpTree let-list=\"list\">\r\n <ng-container *ngFor=\"let item of list;let i = index;trackBy : _trackByFunction\">\r\n <ng-container *ngIf=\"itemTemplate; else defualtTemplate\">\r\n <li class=\"ax-list-item\" (click)=\"_handleOnItemClick($event,item)\"\r\n [attr.data-id]=\"item[this.valueField]\">\r\n <ng-container\r\n *ngTemplateOutlet=\"itemTemplate; context: { $implicit: item,direction:direction}\">\r\n </ng-container>\r\n </li>\r\n </ng-container>\r\n <ng-template #defualtTemplate>\r\n <ng-container *ngIf=\"item.children?.length > 0;else tmpItem\">\r\n <li class=\"ax-list-item-group\" [attr.data-id]=\"item[this.valueField]\">\r\n <span> {{ _getItemDisplayTextTemplte(item) }}</span>\r\n <ul *ngIf=\"item.children?.length > 0\">\r\n <ng-container\r\n *ngTemplateOutlet=\"tmpTree; context:{ list: item.children }\">\r\n </ng-container>\r\n </ul>\r\n </li>\r\n </ng-container>\r\n <ng-template #tmpItem>\r\n <ng-container *ngIf=\"!multiple; else multipleTemplate\">\r\n <li class=\"ax-list-item\" [class.ax-state-selected]=\"isItemSelected(item)\"\r\n [class.ax-state-disabled]=\"isItemDisabled(item)\" [attr.tabindex]=\"i\"\r\n (click)=\"_handleOnItemClick($event,item)\"\r\n [attr.data-id]=\"item[this.valueField]\">\r\n <span> {{ _getItemDisplayTextTemplte(item) }}</span>\r\n </li>\r\n </ng-container>\r\n <ng-template #multipleTemplate>\r\n <li class=\"ax-list-item\" [class.ax-state-selected]=\"isItemSelected(item)\"\r\n [class.ax-state-disabled]=\"isItemDisabled(item)\"\r\n [class.ax-check-box]=\"checkbox\" [attr.tabindex]=\"i\"\r\n (click)=\"_handleOnItemClick($event,item)\"\r\n [attr.data-id]=\"item[this.valueField]\">\r\n <input class=\"ax-checkbox\" type=\"checkbox\"\r\n [class.ax-state-disabled]=\"isItemDisabled(item)\" *ngIf=\"checkbox\"\r\n [checked]=\"isItemSelected(item)\" [disabled]=\"isItemDisabled(item)\">\r\n <span class=\"ax-ms-2\"> {{ _getItemDisplayTextTemplte(item) }}</span>\r\n </li>\r\n </ng-template>\r\n </ng-template>\r\n </ng-template>\r\n </ng-container>\r\n </ng-template>\r\n </ul>\r\n </ng-container>\r\n <ng-container *ngIf=\"isLoading\">\r\n <ng-container *ngIf=\"loadingTemplate; else elseLoadingTemplate\">\r\n <ng-container *ngTemplateOutlet=\"loadingTemplate\">\r\n </ng-container>\r\n </ng-container>\r\n <ng-template #elseLoadingTemplate>\r\n <div class=\"ax-flex ax-items-center ax-justify-center ax-p-4\">\r\n <ax-loading text=\"{{ 'layout.loading.text' | trans }}\"></ax-loading>\r\n </div>\r\n </ng-template>\r\n </ng-container>\r\n <ng-template #tmpEmpty>\r\n <ng-container *ngIf=\"!isLoading\">\r\n <ng-container *ngIf=\"emptyTemplate; else elseEmptyTemplate\">\r\n <ng-container *ngTemplateOutlet=\"emptyTemplate\">\r\n </ng-container>\r\n </ng-container>\r\n <ng-template #elseEmptyTemplate>\r\n <div class=\"ax-flex ax-items-center ax-justify-center ax-p-4\"\r\n [innerHTML]=\"'common.no-result-for' | trans:{exp:this._searchBox? this._searchBox.searchExp :''}\">\r\n </div>\r\n </ng-template>\r\n </ng-container>\r\n </ng-template>\r\n\r\n </div>\r\n <!-- <div class=\"ax-list-items-container ax-vertical ax-default\" [class.ax-full]=\"_isMobile\"\r\n >\r\n \r\n </div> -->\r\n <!-- <div class=\"ax-footer\">footer</div> -->\r\n </div>\r\n </div>\r\n</ax-popover>", styles: ["ax-select-box .ax-select-multi-item{display:flex;align-items:center;padding:.25rem .5rem;background-color:rgb(var(--ax-color-ghost),.05);border-radius:var(--ax-rounded-border-default);margin-inline-end:.5rem}ax-select-box .ax-select-multi-item .ax-icon-close{cursor:pointer;margin-inline-start:.5rem}ax-select-box .ax-select-box-selection{display:flex;justify-content:center;align-items:center;outline-color:transparent;padding:0 .5rem}ax-select-box .ax-select-box-selection .ax-selectbox-input{opacity:0;width:0}\n"], dependencies: [{ kind: "directive", type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: i3.AXDecoratorHeaderComponent, selector: "ax-header" }, { kind: "component", type: i3.AXDecoratorIconComponent, selector: "ax-icon", inputs: ["icon"] }, { kind: "component", type: i3.AXDecoratorTitleComponent, selector: "ax-title", inputs: ["text"] }, { kind: "component", type: i3.AXDecoratorCloseButtonComponent, selector: "ax-close-button", inputs: ["icon"] }, { kind: "component", type: i4.AXPopoverComponent, selector: "ax-popover", inputs: ["target", "position", "openTrigger", "closeTrigger", "hasBackdrop", "backdropClass", "adaptivityEnabled"], outputs: ["onOpened", "onClosed"] }, { kind: "component", type: i5.AXButtonComponent, selector: "ax-button", inputs: ["disabled", "size", "tabIndex", "color", "look", "text", "toggleable", "selected", "type"], outputs: ["onBlur", "onFocus", "onClick", "selectedChange", "toggleableChange", "lookChange", "colorChange"] }, { kind: "component", type: i6.AXLoadingComponent, selector: "ax-loading", inputs: ["visible", "type", "text"], outputs: ["visibleChange"] }, { kind: "directive", type: i7.CdkTrapFocus, selector: "[cdkTrapFocus]", inputs: ["cdkTrapFocus", "cdkTrapFocusAutoCapture"], exportAs: ["cdkTrapFocus"] }, { kind: "pipe", type: i8.AXTranslatorPipe, name: "trans" }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
332
332
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.4", ngImport: i0, type: AXSelectBoxComponent, decorators: [{
333
333
  type: Component,
334
334
  args: [{ selector: 'ax-select-box', inputs: [
@@ -352,7 +352,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.4", ngImpor
352
352
  ], encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, providers: [
353
353
  { provide: AXClosbaleComponent, useExisting: AXSelectBoxComponent },
354
354
  { provide: AXSearchableComponent, useExisting: AXSelectBoxComponent },
355
- ], host: { class: 'ax-editor-container ax-drop-down' }, template: "<ng-content select=\"ax-prefix\">\r\n</ng-content>\r\n<div class=\"ax-dropdown-content\" [class.ax-state-disabled]=\"disabled\" (click)=\"_handleInputClickEvent($event)\">\r\n <div class=\"ax-select-box-selection\" [tabindex]=\"tabIndex\" (focus)=\"_emitOnFocusEvent($event)\"\r\n (blur)=\"_emitOnBlurEvent($event)\">\r\n <ng-container *ngIf=\"selectedItems && selectedItems.length; else showPlaceholder\">\r\n <ng-container *ngIf=\"!multiple; then singleSelectedTemplate; else multipleSelectedTemplate\"></ng-container>\r\n <ng-template #singleSelectedTemplate>\r\n <ng-container *ngFor=\"let item of selectedItems\">\r\n <span> {{ _getItemDisplayTextTemplte(item) }}</span>\r\n </ng-container>\r\n </ng-template>\r\n <ng-template #multipleSelectedTemplate>\r\n <ng-container *ngFor=\"let item of selectedItems\">\r\n <div class=\"ax-select-multi-item\">\r\n {{_getItemDisplayTextTemplte(item)}}\r\n <span class=\"ax-icon ax-icon-close\" (click)=\"_handleBadgeRemove($event,item)\">\r\n </span>\r\n </div>\r\n </ng-container>\r\n </ng-template>\r\n </ng-container>\r\n <ng-template #showPlaceholder>\r\n <div class=\"ax-placeholder\" role=\"textbox\" area-readonly=\"true\"> {{placeholder}}</div>\r\n </ng-template>\r\n </div>\r\n</div>\r\n<ax-button color=\"light\" look=\"blank\" (onClick)=\"clear()\" [tabIndex]=\"-1\"\r\n *ngIf=\"value && clearButton && !(disabled || readonly)\">\r\n <ax-icon icon=\"ax-icon ax-icon-close\"></ax-icon>\r\n</ax-button>\r\n<button [disabled]=\"disabled\" [tabIndex]=\"-1\" class=\"ax-editor-control\"\r\n (click)=\"_handleArrowClickEvent($event)\">\r\n <ng-container *ngIf=\"isLoading && !this.popover.isOpen; else iconTemplate\">\r\n <ax-loading type=\"spinner\"></ax-loading>\r\n </ng-container>\r\n <ng-template #iconTemplate>\r\n <span class=\"ax-icon ax-icon-chevron-left ax-transition-all\" [ngClass]=\"{'-ax-rotate-90': !isOpen, 'ax-rotate-90':isOpen}\"></span>\r\n </ng-template>\r\n</button>\r\n<ng-content select=\"ax-validation-rule\">\r\n</ng-content>\r\n<ng-content select=\"ax-suffix\">\r\n</ng-content>\r\n<ax-popover [target]=\"_target\" [position]=\"position\" [openTrigger]=\"'manual'\" [closeTrigger]=\"'clickout'\"\r\n [adaptivityEnabled]=\"true\" (onOpened)=\"_handlePopupOnOpened($event)\" (onClosed)=\"_handlePopupOnClosed($event)\">\r\n <div class=\"ax-overlay-pane\" (keydown)=\"_handlePopoverKeydown($event)\" tabindex=\"0\" aria-modal=\"true\" cdkTrapFocus\r\n [class.ax-overlay-actionsheet]=\"_isMobile\" [class.ax-full]=\"_searchBox || isLazy\"\r\n [style.min-width.px]=\"_popoverWidth\">\r\n <div class=\"ax-list\">\r\n <ax-header *ngIf=\"_isMobile && placeholder\">\r\n <ax-title [text]=\"_popoverTitle\"></ax-title>\r\n <ax-close-button class=\"ax-icon\" [icon]=\"multiple?'ax-icon-done !ax-text-primary-500':'ax-icon-close'\"></ax-close-button>\r\n </ax-header>\r\n <div class=\"ax-search-box-container\" [class.ax-state-hidden]=\"!_searchBox\" [cdkTrapFocus]=\"_searchBox!=null\">\r\n <ng-content select=\"ax-search-box\"></ng-content>\r\n </div>\r\n <div class=\"ax-content ax-list-items-container ax-default\" (scroll)=\"_handleListScroll($event)\"\r\n #listContainer>\r\n <ng-container *ngIf=\"displayItems.length; else tmpEmpty\">\r\n <ul>\r\n <ng-container *ngTemplateOutlet=\"tmpTree; context:{ list: displayItems }\">\r\n </ng-container>\r\n <ng-template #tmpTree let-list=\"list\">\r\n <ng-container *ngFor=\"let item of list;let i = index;trackBy : _trackByFunction\">\r\n <ng-container *ngIf=\"itemTemplate; else defualtTemplate\">\r\n <li class=\"ax-list-item\" (click)=\"_handleOnItemClick($event,item)\"\r\n [attr.data-id]=\"item[this.valueField]\">\r\n <ng-container\r\n *ngTemplateOutlet=\"itemTemplate; context: { $implicit: item,direction:direction}\">\r\n </ng-container>\r\n </li>\r\n </ng-container>\r\n <ng-template #defualtTemplate>\r\n <ng-container *ngIf=\"item.children?.length > 0;else tmpItem\">\r\n <li class=\"ax-list-item-group\" [attr.data-id]=\"item[this.valueField]\">\r\n <span> {{ _getItemDisplayTextTemplte(item) }}</span>\r\n <ul *ngIf=\"item.children?.length > 0\">\r\n <ng-container\r\n *ngTemplateOutlet=\"tmpTree; context:{ list: item.children }\">\r\n </ng-container>\r\n </ul>\r\n </li>\r\n </ng-container>\r\n <ng-template #tmpItem>\r\n <ng-container *ngIf=\"!multiple; else multipleTemplate\">\r\n <li class=\"ax-list-item\" [class.ax-state-selected]=\"isItemSelected(item)\"\r\n [class.ax-state-disabled]=\"isItemDisabled(item)\" [attr.tabindex]=\"i\"\r\n (click)=\"_handleOnItemClick($event,item)\"\r\n [attr.data-id]=\"item[this.valueField]\">\r\n <span> {{ _getItemDisplayTextTemplte(item) }}</span>\r\n </li>\r\n </ng-container>\r\n <ng-template #multipleTemplate>\r\n <li class=\"ax-list-item\" [class.ax-state-selected]=\"isItemSelected(item)\"\r\n [class.ax-state-disabled]=\"isItemDisabled(item)\"\r\n [class.ax-check-box]=\"checkbox\" [attr.tabindex]=\"i\"\r\n (click)=\"_handleOnItemClick($event,item)\"\r\n [attr.data-id]=\"item[this.valueField]\">\r\n <input class=\"ax-checkbox\" type=\"checkbox\"\r\n [class.ax-state-disabled]=\"isItemDisabled(item)\" *ngIf=\"checkbox\"\r\n [checked]=\"isItemSelected(item)\" [disabled]=\"isItemDisabled(item)\">\r\n <span class=\"ax-ms-2\"> {{ _getItemDisplayTextTemplte(item) }}</span>\r\n </li>\r\n </ng-template>\r\n </ng-template>\r\n </ng-template>\r\n </ng-container>\r\n </ng-template>\r\n </ul>\r\n </ng-container>\r\n <ng-container *ngIf=\"isLoading\">\r\n <ng-container *ngIf=\"loadingTemplate; else elseLoadingTemplate\">\r\n <ng-container *ngTemplateOutlet=\"loadingTemplate\">\r\n </ng-container>\r\n </ng-container>\r\n <ng-template #elseLoadingTemplate>\r\n <div class=\"ax-flex ax-items-center ax-justify-center ax-p-4\">\r\n <ax-loading text=\"{{ 'layout.loading.text' | trans }}\"></ax-loading>\r\n </div>\r\n </ng-template>\r\n </ng-container>\r\n <ng-template #tmpEmpty>\r\n <ng-container *ngIf=\"!isLoading\">\r\n <ng-container *ngIf=\"emptyTemplate; else elseEmptyTemplate\">\r\n <ng-container *ngTemplateOutlet=\"emptyTemplate\">\r\n </ng-container>\r\n </ng-container>\r\n <ng-template #elseEmptyTemplate>\r\n <div class=\"ax-flex ax-items-center ax-justify-center ax-p-4\"\r\n [innerHTML]=\"'common.no-result-for' | trans:{exp:this._searchBox? this._searchBox.searchExp :''}\">\r\n </div>\r\n </ng-template>\r\n </ng-container>\r\n </ng-template>\r\n\r\n </div>\r\n <!-- <div class=\"ax-list-items-container ax-vertical ax-default\" [class.ax-full]=\"_isMobile\"\r\n >\r\n \r\n </div> -->\r\n <!-- <div class=\"ax-footer\">footer</div> -->\r\n </div>\r\n </div>\r\n</ax-popover>", styles: ["ax-select-box .ax-select-multi-item{display:flex;align-items:center;padding:.25rem .5rem;background-color:rgb(var(--ax-color-ghost),.05);border-radius:var(--ax-rounded-border-default);margin-inline-end:.5rem}ax-select-box .ax-select-multi-item .ax-icon-close{cursor:pointer;margin-inline-start:.5rem}ax-select-box .ax-select-box-selection{display:flex;justify-content:center;align-items:center;outline-color:transparent;padding:0 .5rem}ax-select-box .ax-select-box-selection .ax-selectbox-input{opacity:0;width:0}\n"] }]
355
+ ], host: { class: 'ax-editor-container ax-drop-down' }, template: "<ng-content select=\"ax-prefix\">\r\n</ng-content>\r\n<div class=\"ax-dropdown-content\" [class.ax-state-disabled]=\"disabled\" (click)=\"_handleInputClickEvent($event)\">\r\n <div class=\"ax-select-box-selection\" [tabindex]=\"tabIndex\" (focus)=\"_emitOnFocusEvent($event)\"\r\n (blur)=\"_emitOnBlurEvent($event)\">\r\n <ng-container *ngIf=\"selectedItems && selectedItems.length; else showPlaceholder\">\r\n <ng-container *ngIf=\"!multiple; then singleSelectedTemplate; else multipleSelectedTemplate\"></ng-container>\r\n <ng-template #singleSelectedTemplate>\r\n <ng-container *ngFor=\"let item of selectedItems\">\r\n <span> {{ _getItemDisplayTextTemplte(item) }}</span>\r\n </ng-container>\r\n </ng-template>\r\n <ng-template #multipleSelectedTemplate>\r\n <ng-container *ngFor=\"let item of selectedItems\">\r\n <div class=\"ax-select-multi-item\">\r\n {{_getItemDisplayTextTemplte(item)}}\r\n <span class=\"ax-icon ax-icon-close\" (click)=\"_handleBadgeRemove($event,item)\">\r\n </span>\r\n </div>\r\n </ng-container>\r\n </ng-template>\r\n </ng-container>\r\n <ng-template #showPlaceholder>\r\n <div class=\"ax-placeholder\" role=\"textbox\" area-readonly=\"true\"> {{placeholder}}</div>\r\n </ng-template>\r\n </div>\r\n</div>\r\n<ax-button color=\"light\" look=\"blank\" (onClick)=\"clear()\" [tabIndex]=\"-1\"\r\n *ngIf=\"value && clearButton && !(disabled || readonly)\">\r\n <ax-icon icon=\"ax-icon ax-icon-close\"></ax-icon>\r\n</ax-button>\r\n<button [disabled]=\"disabled\" [tabIndex]=\"-1\" class=\"ax-editor-control\"\r\n (click)=\"_handleArrowClickEvent($event)\">\r\n <ng-container *ngIf=\"isLoading && !this.popover.isOpen; else iconTemplate\">\r\n <ax-loading type=\"spinner\"></ax-loading>\r\n </ng-container>\r\n <ng-template #iconTemplate>\r\n <span class=\"ax-icon ax-icon-chevron-left ax-transition-all\" [ngClass]=\"{'-ax-rotation-90': !isOpen, 'ax-rotation-90':isOpen}\"></span>\r\n </ng-template>\r\n</button>\r\n<ng-content select=\"ax-validation-rule\">\r\n</ng-content>\r\n<ng-content select=\"ax-suffix\">\r\n</ng-content>\r\n<ax-popover [target]=\"_target\" [position]=\"position\" [openTrigger]=\"'manual'\" [closeTrigger]=\"'clickout'\"\r\n [adaptivityEnabled]=\"true\" (onOpened)=\"_handlePopupOnOpened($event)\" (onClosed)=\"_handlePopupOnClosed($event)\">\r\n <div class=\"ax-overlay-pane\" (keydown)=\"_handlePopoverKeydown($event)\" tabindex=\"0\" aria-modal=\"true\" cdkTrapFocus\r\n [class.ax-overlay-actionsheet]=\"_isMobile\" [class.ax-full]=\"_searchBox || isLazy\"\r\n [style.min-width.px]=\"_popoverWidth\">\r\n <div class=\"ax-list\">\r\n <ax-header *ngIf=\"_isMobile && placeholder\">\r\n <ax-title [text]=\"_popoverTitle\"></ax-title>\r\n <ax-close-button class=\"ax-icon\" [icon]=\"multiple?'ax-icon-done !ax-text-primary-500':'ax-icon-close'\"></ax-close-button>\r\n </ax-header>\r\n <div class=\"ax-search-box-container\" [class.ax-state-hidden]=\"!_searchBox\" [cdkTrapFocus]=\"_searchBox!=null\">\r\n <ng-content select=\"ax-search-box\"></ng-content>\r\n </div>\r\n <div class=\"ax-content ax-list-items-container ax-default\" (scroll)=\"_handleListScroll($event)\"\r\n #listContainer>\r\n <ng-container *ngIf=\"displayItems.length; else tmpEmpty\">\r\n <ul>\r\n <ng-container *ngTemplateOutlet=\"tmpTree; context:{ list: displayItems }\">\r\n </ng-container>\r\n <ng-template #tmpTree let-list=\"list\">\r\n <ng-container *ngFor=\"let item of list;let i = index;trackBy : _trackByFunction\">\r\n <ng-container *ngIf=\"itemTemplate; else defualtTemplate\">\r\n <li class=\"ax-list-item\" (click)=\"_handleOnItemClick($event,item)\"\r\n [attr.data-id]=\"item[this.valueField]\">\r\n <ng-container\r\n *ngTemplateOutlet=\"itemTemplate; context: { $implicit: item,direction:direction}\">\r\n </ng-container>\r\n </li>\r\n </ng-container>\r\n <ng-template #defualtTemplate>\r\n <ng-container *ngIf=\"item.children?.length > 0;else tmpItem\">\r\n <li class=\"ax-list-item-group\" [attr.data-id]=\"item[this.valueField]\">\r\n <span> {{ _getItemDisplayTextTemplte(item) }}</span>\r\n <ul *ngIf=\"item.children?.length > 0\">\r\n <ng-container\r\n *ngTemplateOutlet=\"tmpTree; context:{ list: item.children }\">\r\n </ng-container>\r\n </ul>\r\n </li>\r\n </ng-container>\r\n <ng-template #tmpItem>\r\n <ng-container *ngIf=\"!multiple; else multipleTemplate\">\r\n <li class=\"ax-list-item\" [class.ax-state-selected]=\"isItemSelected(item)\"\r\n [class.ax-state-disabled]=\"isItemDisabled(item)\" [attr.tabindex]=\"i\"\r\n (click)=\"_handleOnItemClick($event,item)\"\r\n [attr.data-id]=\"item[this.valueField]\">\r\n <span> {{ _getItemDisplayTextTemplte(item) }}</span>\r\n </li>\r\n </ng-container>\r\n <ng-template #multipleTemplate>\r\n <li class=\"ax-list-item\" [class.ax-state-selected]=\"isItemSelected(item)\"\r\n [class.ax-state-disabled]=\"isItemDisabled(item)\"\r\n [class.ax-check-box]=\"checkbox\" [attr.tabindex]=\"i\"\r\n (click)=\"_handleOnItemClick($event,item)\"\r\n [attr.data-id]=\"item[this.valueField]\">\r\n <input class=\"ax-checkbox\" type=\"checkbox\"\r\n [class.ax-state-disabled]=\"isItemDisabled(item)\" *ngIf=\"checkbox\"\r\n [checked]=\"isItemSelected(item)\" [disabled]=\"isItemDisabled(item)\">\r\n <span class=\"ax-ms-2\"> {{ _getItemDisplayTextTemplte(item) }}</span>\r\n </li>\r\n </ng-template>\r\n </ng-template>\r\n </ng-template>\r\n </ng-container>\r\n </ng-template>\r\n </ul>\r\n </ng-container>\r\n <ng-container *ngIf=\"isLoading\">\r\n <ng-container *ngIf=\"loadingTemplate; else elseLoadingTemplate\">\r\n <ng-container *ngTemplateOutlet=\"loadingTemplate\">\r\n </ng-container>\r\n </ng-container>\r\n <ng-template #elseLoadingTemplate>\r\n <div class=\"ax-flex ax-items-center ax-justify-center ax-p-4\">\r\n <ax-loading text=\"{{ 'layout.loading.text' | trans }}\"></ax-loading>\r\n </div>\r\n </ng-template>\r\n </ng-container>\r\n <ng-template #tmpEmpty>\r\n <ng-container *ngIf=\"!isLoading\">\r\n <ng-container *ngIf=\"emptyTemplate; else elseEmptyTemplate\">\r\n <ng-container *ngTemplateOutlet=\"emptyTemplate\">\r\n </ng-container>\r\n </ng-container>\r\n <ng-template #elseEmptyTemplate>\r\n <div class=\"ax-flex ax-items-center ax-justify-center ax-p-4\"\r\n [innerHTML]=\"'common.no-result-for' | trans:{exp:this._searchBox? this._searchBox.searchExp :''}\">\r\n </div>\r\n </ng-template>\r\n </ng-container>\r\n </ng-template>\r\n\r\n </div>\r\n <!-- <div class=\"ax-list-items-container ax-vertical ax-default\" [class.ax-full]=\"_isMobile\"\r\n >\r\n \r\n </div> -->\r\n <!-- <div class=\"ax-footer\">footer</div> -->\r\n </div>\r\n </div>\r\n</ax-popover>", styles: ["ax-select-box .ax-select-multi-item{display:flex;align-items:center;padding:.25rem .5rem;background-color:rgb(var(--ax-color-ghost),.05);border-radius:var(--ax-rounded-border-default);margin-inline-end:.5rem}ax-select-box .ax-select-multi-item .ax-icon-close{cursor:pointer;margin-inline-start:.5rem}ax-select-box .ax-select-box-selection{display:flex;justify-content:center;align-items:center;outline-color:transparent;padding:0 .5rem}ax-select-box .ax-select-box-selection .ax-selectbox-input{opacity:0;width:0}\n"] }]
356
356
  }], ctorParameters: function () { return [{ type: i0.ElementRef }, { type: i0.ChangeDetectorRef }, { type: i0.NgZone }, { type: i1.AXPlatform }]; }, propDecorators: { popover: [{
357
357
  type: ViewChild,
358
358
  args: [AXPopoverComponent, { static: true }]
@@ -1 +1 @@
1
- {"version":3,"file":"acorex-components-select-box.mjs","sources":["../../../../projects/acorex/components/select-box/src/selectbox.component.ts","../../../../projects/acorex/components/select-box/src/selectbox.component.html","../../../../projects/acorex/components/select-box/src/selectbox.module.ts","../../../../projects/acorex/components/select-box/acorex-components-select-box.ts"],"sourcesContent":["import { AXPlatform } from '@acorex/core/platform';\r\nimport { AXTranslator } from '@acorex/core/translation';\r\nimport {\r\n ChangeDetectionStrategy,\r\n ChangeDetectorRef,\r\n Component,\r\n ContentChild,\r\n ElementRef,\r\n HostListener,\r\n Input,\r\n NgZone,\r\n TemplateRef,\r\n ViewChild,\r\n ViewEncapsulation,\r\n} from '@angular/core';\r\nimport { findLast, findLastIndex, first, last, nth } from 'lodash-es';\r\nimport {\r\n\r\n AXClickEvent,\r\n AXClosbaleComponent,\r\n AXSearchableComponent,\r\n} from '@acorex/components/common';\r\n\r\n\r\nimport { AXPopoverComponent } from '@acorex/components/popover';\r\nimport { AXSearchBoxComponent } from '@acorex/components/search-box';\r\nimport { AXBaseSelectionDropdownMixin } from '@acorex/components/mixin';\r\n\r\n\r\n/**\r\n * The Button is a component which detects user interaction and triggers a corresponding event\r\n *\r\n * @category Components\r\n */\r\n@Component({\r\n selector: 'ax-select-box',\r\n templateUrl: './selectbox.component.html',\r\n styleUrls: ['./selectbox.component.scss'],\r\n inputs: [\r\n 'isOpen', 'fitParent', 'dropdownWidth', 'position',\r\n 'disabled', 'tabIndex',\r\n 'readonly', 'allowNull', 'value', 'name', 'checked',\r\n 'placeholder', 'maxLength', 'allowNull', 'type', 'autoComplete', 'readonly', 'allowNull', 'value', 'name', 'checked',\r\n 'pageSize', 'valueField', 'textField', 'items',\r\n 'valueField',\r\n 'textField',\r\n 'disabledField',\r\n 'disabledCallback',\r\n 'multiple',\r\n 'selectionMode',\r\n ],\r\n outputs: [\r\n 'onOpened', 'onClosed',\r\n 'onBlur', 'onFocus',\r\n 'valueChange', 'onValueChanged',\r\n 'valueChange', 'onValueChanged',\r\n 'onValueChanged', 'valueChanged',\r\n ],\r\n encapsulation: ViewEncapsulation.None,\r\n changeDetection: ChangeDetectionStrategy.OnPush,\r\n providers: [\r\n { provide: AXClosbaleComponent, useExisting: AXSelectBoxComponent },\r\n { provide: AXSearchableComponent, useExisting: AXSelectBoxComponent },\r\n ],\r\n host: { class: 'ax-editor-container ax-drop-down' },\r\n})\r\nexport class AXSelectBoxComponent extends AXBaseSelectionDropdownMixin {\r\n @ViewChild(AXPopoverComponent, { static: true })\r\n popover: AXPopoverComponent;\r\n\r\n @ContentChild(AXSearchBoxComponent, { static: true })\r\n _searchBox: AXSearchBoxComponent;\r\n\r\n _target: HTMLDivElement;\r\n _popoverTitle: string;\r\n _popoverWidth: number;\r\n\r\n /**\r\n * Defines the clearButton.\r\n */\r\n @Input()\r\n clearButton: boolean = false;\r\n\r\n /**\r\n * Defines the checkbox.\r\n */\r\n @Input()\r\n checkbox: boolean = false;\r\n\r\n @ViewChild('listContainer', { static: true })\r\n private listContainer: ElementRef<HTMLDivElement>;\r\n\r\n @ContentChild('emptyTemplate')\r\n private _contentEmptyTemplate: TemplateRef<any>;\r\n\r\n get emptyTemplate(): TemplateRef<any> {\r\n return this._contentEmptyTemplate;\r\n }\r\n\r\n _isMobile: boolean = false;\r\n _forceFocus: boolean = false;\r\n /**\r\n * @ignore\r\n */\r\n constructor(\r\n private _elementRef: ElementRef<HTMLDivElement>,\r\n private _cdr: ChangeDetectorRef,\r\n private _zone: NgZone,\r\n private _platform: AXPlatform\r\n ) {\r\n super(_elementRef, _cdr);\r\n this._isMobile = this._platform.is('Mobile');\r\n this._platform.resize.subscribe(() => {\r\n this._isMobile = this._platform.is('Mobile');\r\n this.popover.dispose();\r\n this._detectPopupSize();\r\n });\r\n }\r\n\r\n _handleArrowClickEvent(e: MouseEvent) {\r\n e.stopPropagation()\r\n // e.nativeEvent.stopPropagation();\r\n this.toggle();\r\n }\r\n\r\n _handleInputClickEvent(e: MouseEvent) {\r\n e.stopPropagation();\r\n this.toggle();\r\n }\r\n\r\n onInit() {\r\n super.onInit();\r\n this._target = this._elementRef.nativeElement;\r\n\r\n this._updatePopupTitle();\r\n }\r\n\r\n onViewInit() {\r\n super.onViewInit();\r\n this._detectPopupSize();\r\n }\r\n\r\n refresh() {\r\n this.value = null;\r\n super.refresh();\r\n }\r\n\r\n private _updatePopupTitle() {\r\n // const count =this.selectedItems?.length;\r\n // this._popoverTitle = count > 1 ? `(${count}) items selected`: this.placeholder || AXTranslator.get('selectbox.popover.title')\r\n this._popoverTitle =\r\n this.placeholder || AXTranslator.get('selectbox.popover.title');\r\n }\r\n\r\n\r\n private _detectPopupSize() {\r\n this._popoverWidth = this._isMobile ? 0 : this._target.offsetWidth;\r\n }\r\n\r\n _handleOnItemClick(e: MouseEvent, item: any) {\r\n if (this.isItemDisabled(item)) {\r\n return;\r\n }\r\n if (!this.multiple) this.close();\r\n this.toggleSelect(item);\r\n this._cdr.detectChanges();\r\n }\r\n\r\n _handleListScroll(e: Event) {\r\n const list = e.target as HTMLDivElement;\r\n if (list.scrollTop < list.scrollHeight - list.clientHeight) {\r\n return;\r\n }\r\n this._fetchData();\r\n }\r\n\r\n private _checkForLoadData() {\r\n const list: any = this.listContainer.nativeElement;\r\n if (\r\n this.loadedCount < this.totalCount &&\r\n list.scrollHeight < list.parentElement.clientHeight * 1.5\r\n ) {\r\n this._fetchData();\r\n }\r\n }\r\n\r\n _onDataLoaded() {\r\n if (this.popover.isOpen) {\r\n setTimeout(() => {\r\n this._checkForLoadData();\r\n this.popover.updatePosition();\r\n if (this._forceFocus) {\r\n this._focusSelectedItem();\r\n this._forceFocus = false;\r\n }\r\n this._focusSearchBox();\r\n }, 100);\r\n }\r\n }\r\n\r\n _onValueChanged(oldValue: any, newValue: any) {\r\n super._onValueChanged(oldValue, newValue);\r\n }\r\n\r\n _handleOnRemoveItemClick(e: MouseEvent, item: any) {\r\n this.unselectItems(item);\r\n e.stopPropagation();\r\n }\r\n\r\n _handleBadgeRemove(e: MouseEvent, item) {\r\n this.unselectItems(item);\r\n e.stopPropagation();\r\n this.close();\r\n }\r\n\r\n @HostListener('keydown', ['$event'])\r\n _handleKeydown(e: KeyboardEvent) {\r\n const isLetter = new RegExp(/[a-zA-Z0-9\\-]/).test(\r\n String.fromCharCode(e.keyCode)\r\n );\r\n if (\r\n e.code === 'Backspace' &&\r\n e.type === 'keydown' &&\r\n ((this.allowNull === true && this.selectedItems.length > 0) ||\r\n (this.allowNull !== true && this.selectedItems.length > 1))\r\n ) {\r\n this.isUserInput = true;\r\n this.unselectItems(this.selectedItems.pop());\r\n e.preventDefault();\r\n return;\r\n } else if (\r\n (e.code === 'ArrowDown' || e.code === 'ArrowUp' || e.code === 'Space') &&\r\n !this.popover.isOpen &&\r\n e.type === 'keydown'\r\n ) {\r\n if (this.multiple) {\r\n this.open();\r\n } else {\r\n this.isUserInput = true;\r\n if (e.ctrlKey || e.code === 'Space') {\r\n this.open();\r\n } else {\r\n this._selectedItemByNav(e.key === 'ArrowDown' ? 1 : -1);\r\n }\r\n }\r\n e.preventDefault();\r\n return;\r\n } else if (isLetter) {\r\n this.text = e.key;\r\n this.open();\r\n e.preventDefault();\r\n return;\r\n }\r\n }\r\n\r\n _handlePopoverKeydown(e: KeyboardEvent) {\r\n if (\r\n (e.target as HTMLElement).tagName == 'INPUT' &&\r\n ['Space', 'Backspace'].includes(e.code)\r\n )\r\n return;\r\n if (\r\n (e.key === 'ArrowDown' || e.key === 'ArrowUp') &&\r\n this.displayItems.length > 0\r\n ) {\r\n this.isUserInput = true;\r\n this._focusItemByNav(e.key === 'ArrowDown' ? 1 : -1);\r\n e.preventDefault();\r\n } else if (\r\n e.code === 'Backspace' &&\r\n ((this.allowNull === true && this.selectedItems.length > 0) ||\r\n (this.allowNull !== true && this.selectedItems.length > 1))\r\n ) {\r\n this.isUserInput = true;\r\n this.unselectItems(this.selectedItems.pop());\r\n e.preventDefault();\r\n } else if (e.code === 'Space' || e.code === 'Enter') {\r\n e.preventDefault();\r\n const focusedItemId =\r\n this.listContainer.nativeElement.querySelector<HTMLElement>(\r\n '.ax-state-focus'\r\n )?.dataset?.id;\r\n const focusedItem = findLast(this.flatItems, [\r\n this.valueField,\r\n focusedItemId,\r\n ]);\r\n if (focusedItem) {\r\n if (this.isItemDisabled(focusedItem)) {\r\n return;\r\n }\r\n if (this.multiple) {\r\n this.isUserInput = true;\r\n this.toggleSelect(focusedItem);\r\n } else {\r\n this.isUserInput = true;\r\n this.selectItems(focusedItem);\r\n this.close();\r\n }\r\n }\r\n } else if (e.code === 'Tab') {\r\n this.close();\r\n e.preventDefault();\r\n e.stopPropagation();\r\n } else if (e.key === 'Escape') {\r\n this.close();\r\n e.preventDefault();\r\n e.stopPropagation();\r\n }\r\n }\r\n\r\n async _handlePopupOnOpened(e) {\r\n this._detectPopupSize();\r\n this.popover.focus();\r\n if (this.displayItems.length == 0) {\r\n this._forceFocus = true;\r\n this._fetchData();\r\n } else {\r\n this._focusSelectedItem();\r\n }\r\n this._focusSearchBox();\r\n }\r\n\r\n _handlePopupOnClosed(e) {\r\n this.focus();\r\n }\r\n\r\n private _focusSearchBox() {\r\n if (this._searchBox && (!this._isMobile || this._searchBox.searchExp)) {\r\n this._searchBox.focus();\r\n }\r\n }\r\n\r\n private _focusItemByNav(sign: -1 | 1): void {\r\n const list = this.listContainer.nativeElement;\r\n const fn = (s) => list.querySelector<HTMLElement>(s);\r\n const itemDiv: any =\r\n fn(`.ax-list-item.ax-state-focus`) ||\r\n fn(`.ax-list-item.ax-state-selected`) ||\r\n fn(`.ax-list-item`);\r\n let next = (\r\n sign == 1 ? itemDiv.nextElementSibling : itemDiv.previousElementSibling\r\n ) as HTMLElement;\r\n if (next) {\r\n this._focusItemElement(next);\r\n } else {\r\n const parent = itemDiv.closest('.ax-list-item-group');\r\n if (parent) {\r\n const lis = (\r\n sign == 1 ? parent.nextElementSibling : parent.previousElementSibling\r\n )?.querySelectorAll('li');\r\n const a = sign == 1 ? first(lis) : last(lis);\r\n if (a) {\r\n this._focusItemElement(a as any);\r\n }\r\n }\r\n }\r\n }\r\n\r\n private _focusSelectedItem() {\r\n this._zone.runOutsideAngular(() => {\r\n const list = this.listContainer.nativeElement;\r\n const fn = (s) => list.querySelector<HTMLElement>(s);\r\n const itemDiv =\r\n fn(`.ax-list-item.ax-state-selected`) || fn(`.ax-list-item`);\r\n if (itemDiv) {\r\n this._focusItemElement(itemDiv);\r\n }\r\n });\r\n }\r\n\r\n private _focusItemElement(el: HTMLElement) {\r\n this._zone.runOutsideAngular(() => {\r\n const list = this.listContainer.nativeElement;\r\n list.querySelectorAll('.ax-list-item').forEach((c) => {\r\n if (c == el) {\r\n c.classList.add('ax-state-focus');\r\n el.scrollIntoView({ behavior: 'auto' });\r\n } else {\r\n c.classList.remove('ax-state-focus');\r\n }\r\n });\r\n if (!this._isMobile && this._searchBox) this._searchBox.focus();\r\n else el.focus();\r\n });\r\n }\r\n\r\n private _selectedItemByNav(sign: -1 | 1): void {\r\n const _last: any = last(this.selectedItems);\r\n let i = 0;\r\n if (_last) {\r\n i = findLastIndex(this.flatItems, [\r\n this.valueField,\r\n _last[this.valueField],\r\n ]);\r\n }\r\n i += sign;\r\n let next = nth<any>(this.flatItems, i);\r\n while (next?.children && next?.children.length) {\r\n i += sign;\r\n next = nth<any>(this.flatItems, i);\r\n }\r\n if (next) {\r\n this.selectItems(next);\r\n } else if (next == null && sign == 1) {\r\n this._fetchData();\r\n }\r\n }\r\n\r\n search(exp: string) {\r\n this.empty();\r\n this._forceFocus = true;\r\n this._fetchData();\r\n }\r\n\r\n _fetchData() {\r\n super._fetchData({ searchQuery: this._searchBox?.searchExp });\r\n }\r\n}\r\n","<ng-content select=\"ax-prefix\">\r\n</ng-content>\r\n<div class=\"ax-dropdown-content\" [class.ax-state-disabled]=\"disabled\" (click)=\"_handleInputClickEvent($event)\">\r\n <div class=\"ax-select-box-selection\" [tabindex]=\"tabIndex\" (focus)=\"_emitOnFocusEvent($event)\"\r\n (blur)=\"_emitOnBlurEvent($event)\">\r\n <ng-container *ngIf=\"selectedItems && selectedItems.length; else showPlaceholder\">\r\n <ng-container *ngIf=\"!multiple; then singleSelectedTemplate; else multipleSelectedTemplate\"></ng-container>\r\n <ng-template #singleSelectedTemplate>\r\n <ng-container *ngFor=\"let item of selectedItems\">\r\n <span> {{ _getItemDisplayTextTemplte(item) }}</span>\r\n </ng-container>\r\n </ng-template>\r\n <ng-template #multipleSelectedTemplate>\r\n <ng-container *ngFor=\"let item of selectedItems\">\r\n <div class=\"ax-select-multi-item\">\r\n {{_getItemDisplayTextTemplte(item)}}\r\n <span class=\"ax-icon ax-icon-close\" (click)=\"_handleBadgeRemove($event,item)\">\r\n </span>\r\n </div>\r\n </ng-container>\r\n </ng-template>\r\n </ng-container>\r\n <ng-template #showPlaceholder>\r\n <div class=\"ax-placeholder\" role=\"textbox\" area-readonly=\"true\"> {{placeholder}}</div>\r\n </ng-template>\r\n </div>\r\n</div>\r\n<ax-button color=\"light\" look=\"blank\" (onClick)=\"clear()\" [tabIndex]=\"-1\"\r\n *ngIf=\"value && clearButton && !(disabled || readonly)\">\r\n <ax-icon icon=\"ax-icon ax-icon-close\"></ax-icon>\r\n</ax-button>\r\n<button [disabled]=\"disabled\" [tabIndex]=\"-1\" class=\"ax-editor-control\"\r\n (click)=\"_handleArrowClickEvent($event)\">\r\n <ng-container *ngIf=\"isLoading && !this.popover.isOpen; else iconTemplate\">\r\n <ax-loading type=\"spinner\"></ax-loading>\r\n </ng-container>\r\n <ng-template #iconTemplate>\r\n <span class=\"ax-icon ax-icon-chevron-left ax-transition-all\" [ngClass]=\"{'-ax-rotate-90': !isOpen, 'ax-rotate-90':isOpen}\"></span>\r\n </ng-template>\r\n</button>\r\n<ng-content select=\"ax-validation-rule\">\r\n</ng-content>\r\n<ng-content select=\"ax-suffix\">\r\n</ng-content>\r\n<ax-popover [target]=\"_target\" [position]=\"position\" [openTrigger]=\"'manual'\" [closeTrigger]=\"'clickout'\"\r\n [adaptivityEnabled]=\"true\" (onOpened)=\"_handlePopupOnOpened($event)\" (onClosed)=\"_handlePopupOnClosed($event)\">\r\n <div class=\"ax-overlay-pane\" (keydown)=\"_handlePopoverKeydown($event)\" tabindex=\"0\" aria-modal=\"true\" cdkTrapFocus\r\n [class.ax-overlay-actionsheet]=\"_isMobile\" [class.ax-full]=\"_searchBox || isLazy\"\r\n [style.min-width.px]=\"_popoverWidth\">\r\n <div class=\"ax-list\">\r\n <ax-header *ngIf=\"_isMobile && placeholder\">\r\n <ax-title [text]=\"_popoverTitle\"></ax-title>\r\n <ax-close-button class=\"ax-icon\" [icon]=\"multiple?'ax-icon-done !ax-text-primary-500':'ax-icon-close'\"></ax-close-button>\r\n </ax-header>\r\n <div class=\"ax-search-box-container\" [class.ax-state-hidden]=\"!_searchBox\" [cdkTrapFocus]=\"_searchBox!=null\">\r\n <ng-content select=\"ax-search-box\"></ng-content>\r\n </div>\r\n <div class=\"ax-content ax-list-items-container ax-default\" (scroll)=\"_handleListScroll($event)\"\r\n #listContainer>\r\n <ng-container *ngIf=\"displayItems.length; else tmpEmpty\">\r\n <ul>\r\n <ng-container *ngTemplateOutlet=\"tmpTree; context:{ list: displayItems }\">\r\n </ng-container>\r\n <ng-template #tmpTree let-list=\"list\">\r\n <ng-container *ngFor=\"let item of list;let i = index;trackBy : _trackByFunction\">\r\n <ng-container *ngIf=\"itemTemplate; else defualtTemplate\">\r\n <li class=\"ax-list-item\" (click)=\"_handleOnItemClick($event,item)\"\r\n [attr.data-id]=\"item[this.valueField]\">\r\n <ng-container\r\n *ngTemplateOutlet=\"itemTemplate; context: { $implicit: item,direction:direction}\">\r\n </ng-container>\r\n </li>\r\n </ng-container>\r\n <ng-template #defualtTemplate>\r\n <ng-container *ngIf=\"item.children?.length > 0;else tmpItem\">\r\n <li class=\"ax-list-item-group\" [attr.data-id]=\"item[this.valueField]\">\r\n <span> {{ _getItemDisplayTextTemplte(item) }}</span>\r\n <ul *ngIf=\"item.children?.length > 0\">\r\n <ng-container\r\n *ngTemplateOutlet=\"tmpTree; context:{ list: item.children }\">\r\n </ng-container>\r\n </ul>\r\n </li>\r\n </ng-container>\r\n <ng-template #tmpItem>\r\n <ng-container *ngIf=\"!multiple; else multipleTemplate\">\r\n <li class=\"ax-list-item\" [class.ax-state-selected]=\"isItemSelected(item)\"\r\n [class.ax-state-disabled]=\"isItemDisabled(item)\" [attr.tabindex]=\"i\"\r\n (click)=\"_handleOnItemClick($event,item)\"\r\n [attr.data-id]=\"item[this.valueField]\">\r\n <span> {{ _getItemDisplayTextTemplte(item) }}</span>\r\n </li>\r\n </ng-container>\r\n <ng-template #multipleTemplate>\r\n <li class=\"ax-list-item\" [class.ax-state-selected]=\"isItemSelected(item)\"\r\n [class.ax-state-disabled]=\"isItemDisabled(item)\"\r\n [class.ax-check-box]=\"checkbox\" [attr.tabindex]=\"i\"\r\n (click)=\"_handleOnItemClick($event,item)\"\r\n [attr.data-id]=\"item[this.valueField]\">\r\n <input class=\"ax-checkbox\" type=\"checkbox\"\r\n [class.ax-state-disabled]=\"isItemDisabled(item)\" *ngIf=\"checkbox\"\r\n [checked]=\"isItemSelected(item)\" [disabled]=\"isItemDisabled(item)\">\r\n <span class=\"ax-ms-2\"> {{ _getItemDisplayTextTemplte(item) }}</span>\r\n </li>\r\n </ng-template>\r\n </ng-template>\r\n </ng-template>\r\n </ng-container>\r\n </ng-template>\r\n </ul>\r\n </ng-container>\r\n <ng-container *ngIf=\"isLoading\">\r\n <ng-container *ngIf=\"loadingTemplate; else elseLoadingTemplate\">\r\n <ng-container *ngTemplateOutlet=\"loadingTemplate\">\r\n </ng-container>\r\n </ng-container>\r\n <ng-template #elseLoadingTemplate>\r\n <div class=\"ax-flex ax-items-center ax-justify-center ax-p-4\">\r\n <ax-loading text=\"{{ 'layout.loading.text' | trans }}\"></ax-loading>\r\n </div>\r\n </ng-template>\r\n </ng-container>\r\n <ng-template #tmpEmpty>\r\n <ng-container *ngIf=\"!isLoading\">\r\n <ng-container *ngIf=\"emptyTemplate; else elseEmptyTemplate\">\r\n <ng-container *ngTemplateOutlet=\"emptyTemplate\">\r\n </ng-container>\r\n </ng-container>\r\n <ng-template #elseEmptyTemplate>\r\n <div class=\"ax-flex ax-items-center ax-justify-center ax-p-4\"\r\n [innerHTML]=\"'common.no-result-for' | trans:{exp:this._searchBox? this._searchBox.searchExp :''}\">\r\n </div>\r\n </ng-template>\r\n </ng-container>\r\n </ng-template>\r\n\r\n </div>\r\n <!-- <div class=\"ax-list-items-container ax-vertical ax-default\" [class.ax-full]=\"_isMobile\"\r\n >\r\n \r\n </div> -->\r\n <!-- <div class=\"ax-footer\">footer</div> -->\r\n </div>\r\n </div>\r\n</ax-popover>","import { AXTranslationModule } from '@acorex/core/translation';\r\nimport { CommonModule } from '@angular/common';\r\nimport { NgModule } from '@angular/core';\r\nimport { FormsModule } from '@angular/forms';\r\nimport { AXBadgeModule } from '@acorex/components/badge';\r\nimport { AXButtonModule } from '@acorex/components/button';\r\nimport { AXCheckBoxModule } from '@acorex/components/checkbox';\r\nimport { AXDecoratorModule } from '@acorex/components/decorators';\r\nimport { AXLoadingModule } from '@acorex/components/loading';\r\nimport { AXPopoverModule } from '@acorex/components/popover';\r\nimport { A11yModule } from '@angular/cdk/a11y';\r\n\r\nimport { AXSelectBoxComponent } from './selectbox.component';\r\nimport { AXTextBoxModule } from '@acorex/components/textbox';\r\nimport { AXCommonModule } from '@acorex/components/common';\r\n\r\n@NgModule({\r\n imports: [CommonModule,\r\n AXCommonModule,\r\n FormsModule,\r\n AXCheckBoxModule,\r\n AXBadgeModule,\r\n AXDecoratorModule,\r\n AXTranslationModule,\r\n AXPopoverModule,\r\n AXButtonModule,\r\n AXLoadingModule,\r\n A11yModule,\r\n AXTextBoxModule\r\n ],\r\n exports: [AXSelectBoxComponent],\r\n declarations: [AXSelectBoxComponent],\r\n providers: [],\r\n})\r\nexport class AXSelectBoxModule { }\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-select-box.mjs","sources":["../../../../projects/acorex/components/select-box/src/selectbox.component.ts","../../../../projects/acorex/components/select-box/src/selectbox.component.html","../../../../projects/acorex/components/select-box/src/selectbox.module.ts","../../../../projects/acorex/components/select-box/acorex-components-select-box.ts"],"sourcesContent":["import { AXPlatform } from '@acorex/core/platform';\r\nimport { AXTranslator } from '@acorex/core/translation';\r\nimport {\r\n ChangeDetectionStrategy,\r\n ChangeDetectorRef,\r\n Component,\r\n ContentChild,\r\n ElementRef,\r\n HostListener,\r\n Input,\r\n NgZone,\r\n TemplateRef,\r\n ViewChild,\r\n ViewEncapsulation,\r\n} from '@angular/core';\r\nimport { findLast, findLastIndex, first, last, nth } from 'lodash-es';\r\nimport {\r\n\r\n AXClickEvent,\r\n AXClosbaleComponent,\r\n AXSearchableComponent,\r\n} from '@acorex/components/common';\r\n\r\n\r\nimport { AXPopoverComponent } from '@acorex/components/popover';\r\nimport { AXSearchBoxComponent } from '@acorex/components/search-box';\r\nimport { AXBaseSelectionDropdownMixin } from '@acorex/components/mixin';\r\n\r\n\r\n/**\r\n * The Button is a component which detects user interaction and triggers a corresponding event\r\n *\r\n * @category Components\r\n */\r\n@Component({\r\n selector: 'ax-select-box',\r\n templateUrl: './selectbox.component.html',\r\n styleUrls: ['./selectbox.component.scss'],\r\n inputs: [\r\n 'isOpen', 'fitParent', 'dropdownWidth', 'position',\r\n 'disabled', 'tabIndex',\r\n 'readonly', 'allowNull', 'value', 'name', 'checked',\r\n 'placeholder', 'maxLength', 'allowNull', 'type', 'autoComplete', 'readonly', 'allowNull', 'value', 'name', 'checked',\r\n 'pageSize', 'valueField', 'textField', 'items',\r\n 'valueField',\r\n 'textField',\r\n 'disabledField',\r\n 'disabledCallback',\r\n 'multiple',\r\n 'selectionMode',\r\n ],\r\n outputs: [\r\n 'onOpened', 'onClosed',\r\n 'onBlur', 'onFocus',\r\n 'valueChange', 'onValueChanged',\r\n 'valueChange', 'onValueChanged',\r\n 'onValueChanged', 'valueChanged',\r\n ],\r\n encapsulation: ViewEncapsulation.None,\r\n changeDetection: ChangeDetectionStrategy.OnPush,\r\n providers: [\r\n { provide: AXClosbaleComponent, useExisting: AXSelectBoxComponent },\r\n { provide: AXSearchableComponent, useExisting: AXSelectBoxComponent },\r\n ],\r\n host: { class: 'ax-editor-container ax-drop-down' },\r\n})\r\nexport class AXSelectBoxComponent extends AXBaseSelectionDropdownMixin {\r\n @ViewChild(AXPopoverComponent, { static: true })\r\n popover: AXPopoverComponent;\r\n\r\n @ContentChild(AXSearchBoxComponent, { static: true })\r\n _searchBox: AXSearchBoxComponent;\r\n\r\n _target: HTMLDivElement;\r\n _popoverTitle: string;\r\n _popoverWidth: number;\r\n\r\n /**\r\n * Defines the clearButton.\r\n */\r\n @Input()\r\n clearButton: boolean = false;\r\n\r\n /**\r\n * Defines the checkbox.\r\n */\r\n @Input()\r\n checkbox: boolean = false;\r\n\r\n @ViewChild('listContainer', { static: true })\r\n private listContainer: ElementRef<HTMLDivElement>;\r\n\r\n @ContentChild('emptyTemplate')\r\n private _contentEmptyTemplate: TemplateRef<any>;\r\n\r\n get emptyTemplate(): TemplateRef<any> {\r\n return this._contentEmptyTemplate;\r\n }\r\n\r\n _isMobile: boolean = false;\r\n _forceFocus: boolean = false;\r\n /**\r\n * @ignore\r\n */\r\n constructor(\r\n private _elementRef: ElementRef<HTMLDivElement>,\r\n private _cdr: ChangeDetectorRef,\r\n private _zone: NgZone,\r\n private _platform: AXPlatform\r\n ) {\r\n super(_elementRef, _cdr);\r\n this._isMobile = this._platform.is('Mobile');\r\n this._platform.resize.subscribe(() => {\r\n this._isMobile = this._platform.is('Mobile');\r\n this.popover.dispose();\r\n this._detectPopupSize();\r\n });\r\n }\r\n\r\n _handleArrowClickEvent(e: MouseEvent) {\r\n e.stopPropagation()\r\n // e.nativeEvent.stopPropagation();\r\n this.toggle();\r\n }\r\n\r\n _handleInputClickEvent(e: MouseEvent) {\r\n e.stopPropagation();\r\n this.toggle();\r\n }\r\n\r\n onInit() {\r\n super.onInit();\r\n this._target = this._elementRef.nativeElement;\r\n\r\n this._updatePopupTitle();\r\n }\r\n\r\n onViewInit() {\r\n super.onViewInit();\r\n this._detectPopupSize();\r\n }\r\n\r\n refresh() {\r\n this.value = null;\r\n super.refresh();\r\n }\r\n\r\n private _updatePopupTitle() {\r\n // const count =this.selectedItems?.length;\r\n // this._popoverTitle = count > 1 ? `(${count}) items selected`: this.placeholder || AXTranslator.get('selectbox.popover.title')\r\n this._popoverTitle =\r\n this.placeholder || AXTranslator.get('selectbox.popover.title');\r\n }\r\n\r\n\r\n private _detectPopupSize() {\r\n this._popoverWidth = this._isMobile ? 0 : this._target.offsetWidth;\r\n }\r\n\r\n _handleOnItemClick(e: MouseEvent, item: any) {\r\n if (this.isItemDisabled(item)) {\r\n return;\r\n }\r\n if (!this.multiple) this.close();\r\n this.toggleSelect(item);\r\n this._cdr.detectChanges();\r\n }\r\n\r\n _handleListScroll(e: Event) {\r\n const list = e.target as HTMLDivElement;\r\n if (list.scrollTop < list.scrollHeight - list.clientHeight) {\r\n return;\r\n }\r\n this._fetchData();\r\n }\r\n\r\n private _checkForLoadData() {\r\n const list: any = this.listContainer.nativeElement;\r\n if (\r\n this.loadedCount < this.totalCount &&\r\n list.scrollHeight < list.parentElement.clientHeight * 1.5\r\n ) {\r\n this._fetchData();\r\n }\r\n }\r\n\r\n _onDataLoaded() {\r\n if (this.popover.isOpen) {\r\n setTimeout(() => {\r\n this._checkForLoadData();\r\n this.popover.updatePosition();\r\n if (this._forceFocus) {\r\n this._focusSelectedItem();\r\n this._forceFocus = false;\r\n }\r\n this._focusSearchBox();\r\n }, 100);\r\n }\r\n }\r\n\r\n _onValueChanged(oldValue: any, newValue: any) {\r\n super._onValueChanged(oldValue, newValue);\r\n }\r\n\r\n _handleOnRemoveItemClick(e: MouseEvent, item: any) {\r\n this.unselectItems(item);\r\n e.stopPropagation();\r\n }\r\n\r\n _handleBadgeRemove(e: MouseEvent, item) {\r\n this.unselectItems(item);\r\n e.stopPropagation();\r\n this.close();\r\n }\r\n\r\n @HostListener('keydown', ['$event'])\r\n _handleKeydown(e: KeyboardEvent) {\r\n const isLetter = new RegExp(/[a-zA-Z0-9\\-]/).test(\r\n String.fromCharCode(e.keyCode)\r\n );\r\n if (\r\n e.code === 'Backspace' &&\r\n e.type === 'keydown' &&\r\n ((this.allowNull === true && this.selectedItems.length > 0) ||\r\n (this.allowNull !== true && this.selectedItems.length > 1))\r\n ) {\r\n this.isUserInput = true;\r\n this.unselectItems(this.selectedItems.pop());\r\n e.preventDefault();\r\n return;\r\n } else if (\r\n (e.code === 'ArrowDown' || e.code === 'ArrowUp' || e.code === 'Space') &&\r\n !this.popover.isOpen &&\r\n e.type === 'keydown'\r\n ) {\r\n if (this.multiple) {\r\n this.open();\r\n } else {\r\n this.isUserInput = true;\r\n if (e.ctrlKey || e.code === 'Space') {\r\n this.open();\r\n } else {\r\n this._selectedItemByNav(e.key === 'ArrowDown' ? 1 : -1);\r\n }\r\n }\r\n e.preventDefault();\r\n return;\r\n } else if (isLetter) {\r\n this.text = e.key;\r\n this.open();\r\n e.preventDefault();\r\n return;\r\n }\r\n }\r\n\r\n _handlePopoverKeydown(e: KeyboardEvent) {\r\n if (\r\n (e.target as HTMLElement).tagName == 'INPUT' &&\r\n ['Space', 'Backspace'].includes(e.code)\r\n )\r\n return;\r\n if (\r\n (e.key === 'ArrowDown' || e.key === 'ArrowUp') &&\r\n this.displayItems.length > 0\r\n ) {\r\n this.isUserInput = true;\r\n this._focusItemByNav(e.key === 'ArrowDown' ? 1 : -1);\r\n e.preventDefault();\r\n } else if (\r\n e.code === 'Backspace' &&\r\n ((this.allowNull === true && this.selectedItems.length > 0) ||\r\n (this.allowNull !== true && this.selectedItems.length > 1))\r\n ) {\r\n this.isUserInput = true;\r\n this.unselectItems(this.selectedItems.pop());\r\n e.preventDefault();\r\n } else if (e.code === 'Space' || e.code === 'Enter') {\r\n e.preventDefault();\r\n const focusedItemId =\r\n this.listContainer.nativeElement.querySelector<HTMLElement>(\r\n '.ax-state-focus'\r\n )?.dataset?.id;\r\n const focusedItem = findLast(this.flatItems, [\r\n this.valueField,\r\n focusedItemId,\r\n ]);\r\n if (focusedItem) {\r\n if (this.isItemDisabled(focusedItem)) {\r\n return;\r\n }\r\n if (this.multiple) {\r\n this.isUserInput = true;\r\n this.toggleSelect(focusedItem);\r\n } else {\r\n this.isUserInput = true;\r\n this.selectItems(focusedItem);\r\n this.close();\r\n }\r\n }\r\n } else if (e.code === 'Tab') {\r\n this.close();\r\n e.preventDefault();\r\n e.stopPropagation();\r\n } else if (e.key === 'Escape') {\r\n this.close();\r\n e.preventDefault();\r\n e.stopPropagation();\r\n }\r\n }\r\n\r\n async _handlePopupOnOpened(e) {\r\n this._detectPopupSize();\r\n this.popover.focus();\r\n if (this.displayItems.length == 0) {\r\n this._forceFocus = true;\r\n this._fetchData();\r\n } else {\r\n this._focusSelectedItem();\r\n }\r\n this._focusSearchBox();\r\n }\r\n\r\n _handlePopupOnClosed(e) {\r\n this.focus();\r\n }\r\n\r\n private _focusSearchBox() {\r\n if (this._searchBox && (!this._isMobile || this._searchBox.searchExp)) {\r\n this._searchBox.focus();\r\n }\r\n }\r\n\r\n private _focusItemByNav(sign: -1 | 1): void {\r\n const list = this.listContainer.nativeElement;\r\n const fn = (s) => list.querySelector<HTMLElement>(s);\r\n const itemDiv: any =\r\n fn(`.ax-list-item.ax-state-focus`) ||\r\n fn(`.ax-list-item.ax-state-selected`) ||\r\n fn(`.ax-list-item`);\r\n let next = (\r\n sign == 1 ? itemDiv.nextElementSibling : itemDiv.previousElementSibling\r\n ) as HTMLElement;\r\n if (next) {\r\n this._focusItemElement(next);\r\n } else {\r\n const parent = itemDiv.closest('.ax-list-item-group');\r\n if (parent) {\r\n const lis = (\r\n sign == 1 ? parent.nextElementSibling : parent.previousElementSibling\r\n )?.querySelectorAll('li');\r\n const a = sign == 1 ? first(lis) : last(lis);\r\n if (a) {\r\n this._focusItemElement(a as any);\r\n }\r\n }\r\n }\r\n }\r\n\r\n private _focusSelectedItem() {\r\n this._zone.runOutsideAngular(() => {\r\n const list = this.listContainer.nativeElement;\r\n const fn = (s) => list.querySelector<HTMLElement>(s);\r\n const itemDiv =\r\n fn(`.ax-list-item.ax-state-selected`) || fn(`.ax-list-item`);\r\n if (itemDiv) {\r\n this._focusItemElement(itemDiv);\r\n }\r\n });\r\n }\r\n\r\n private _focusItemElement(el: HTMLElement) {\r\n this._zone.runOutsideAngular(() => {\r\n const list = this.listContainer.nativeElement;\r\n list.querySelectorAll('.ax-list-item').forEach((c) => {\r\n if (c == el) {\r\n c.classList.add('ax-state-focus');\r\n el.scrollIntoView({ behavior: 'auto' });\r\n } else {\r\n c.classList.remove('ax-state-focus');\r\n }\r\n });\r\n if (!this._isMobile && this._searchBox) this._searchBox.focus();\r\n else el.focus();\r\n });\r\n }\r\n\r\n private _selectedItemByNav(sign: -1 | 1): void {\r\n const _last: any = last(this.selectedItems);\r\n let i = 0;\r\n if (_last) {\r\n i = findLastIndex(this.flatItems, [\r\n this.valueField,\r\n _last[this.valueField],\r\n ]);\r\n }\r\n i += sign;\r\n let next = nth<any>(this.flatItems, i);\r\n while (next?.children && next?.children.length) {\r\n i += sign;\r\n next = nth<any>(this.flatItems, i);\r\n }\r\n if (next) {\r\n this.selectItems(next);\r\n } else if (next == null && sign == 1) {\r\n this._fetchData();\r\n }\r\n }\r\n\r\n search(exp: string) {\r\n this.empty();\r\n this._forceFocus = true;\r\n this._fetchData();\r\n }\r\n\r\n _fetchData() {\r\n super._fetchData({ searchQuery: this._searchBox?.searchExp });\r\n }\r\n}\r\n","<ng-content select=\"ax-prefix\">\r\n</ng-content>\r\n<div class=\"ax-dropdown-content\" [class.ax-state-disabled]=\"disabled\" (click)=\"_handleInputClickEvent($event)\">\r\n <div class=\"ax-select-box-selection\" [tabindex]=\"tabIndex\" (focus)=\"_emitOnFocusEvent($event)\"\r\n (blur)=\"_emitOnBlurEvent($event)\">\r\n <ng-container *ngIf=\"selectedItems && selectedItems.length; else showPlaceholder\">\r\n <ng-container *ngIf=\"!multiple; then singleSelectedTemplate; else multipleSelectedTemplate\"></ng-container>\r\n <ng-template #singleSelectedTemplate>\r\n <ng-container *ngFor=\"let item of selectedItems\">\r\n <span> {{ _getItemDisplayTextTemplte(item) }}</span>\r\n </ng-container>\r\n </ng-template>\r\n <ng-template #multipleSelectedTemplate>\r\n <ng-container *ngFor=\"let item of selectedItems\">\r\n <div class=\"ax-select-multi-item\">\r\n {{_getItemDisplayTextTemplte(item)}}\r\n <span class=\"ax-icon ax-icon-close\" (click)=\"_handleBadgeRemove($event,item)\">\r\n </span>\r\n </div>\r\n </ng-container>\r\n </ng-template>\r\n </ng-container>\r\n <ng-template #showPlaceholder>\r\n <div class=\"ax-placeholder\" role=\"textbox\" area-readonly=\"true\"> {{placeholder}}</div>\r\n </ng-template>\r\n </div>\r\n</div>\r\n<ax-button color=\"light\" look=\"blank\" (onClick)=\"clear()\" [tabIndex]=\"-1\"\r\n *ngIf=\"value && clearButton && !(disabled || readonly)\">\r\n <ax-icon icon=\"ax-icon ax-icon-close\"></ax-icon>\r\n</ax-button>\r\n<button [disabled]=\"disabled\" [tabIndex]=\"-1\" class=\"ax-editor-control\"\r\n (click)=\"_handleArrowClickEvent($event)\">\r\n <ng-container *ngIf=\"isLoading && !this.popover.isOpen; else iconTemplate\">\r\n <ax-loading type=\"spinner\"></ax-loading>\r\n </ng-container>\r\n <ng-template #iconTemplate>\r\n <span class=\"ax-icon ax-icon-chevron-left ax-transition-all\" [ngClass]=\"{'-ax-rotation-90': !isOpen, 'ax-rotation-90':isOpen}\"></span>\r\n </ng-template>\r\n</button>\r\n<ng-content select=\"ax-validation-rule\">\r\n</ng-content>\r\n<ng-content select=\"ax-suffix\">\r\n</ng-content>\r\n<ax-popover [target]=\"_target\" [position]=\"position\" [openTrigger]=\"'manual'\" [closeTrigger]=\"'clickout'\"\r\n [adaptivityEnabled]=\"true\" (onOpened)=\"_handlePopupOnOpened($event)\" (onClosed)=\"_handlePopupOnClosed($event)\">\r\n <div class=\"ax-overlay-pane\" (keydown)=\"_handlePopoverKeydown($event)\" tabindex=\"0\" aria-modal=\"true\" cdkTrapFocus\r\n [class.ax-overlay-actionsheet]=\"_isMobile\" [class.ax-full]=\"_searchBox || isLazy\"\r\n [style.min-width.px]=\"_popoverWidth\">\r\n <div class=\"ax-list\">\r\n <ax-header *ngIf=\"_isMobile && placeholder\">\r\n <ax-title [text]=\"_popoverTitle\"></ax-title>\r\n <ax-close-button class=\"ax-icon\" [icon]=\"multiple?'ax-icon-done !ax-text-primary-500':'ax-icon-close'\"></ax-close-button>\r\n </ax-header>\r\n <div class=\"ax-search-box-container\" [class.ax-state-hidden]=\"!_searchBox\" [cdkTrapFocus]=\"_searchBox!=null\">\r\n <ng-content select=\"ax-search-box\"></ng-content>\r\n </div>\r\n <div class=\"ax-content ax-list-items-container ax-default\" (scroll)=\"_handleListScroll($event)\"\r\n #listContainer>\r\n <ng-container *ngIf=\"displayItems.length; else tmpEmpty\">\r\n <ul>\r\n <ng-container *ngTemplateOutlet=\"tmpTree; context:{ list: displayItems }\">\r\n </ng-container>\r\n <ng-template #tmpTree let-list=\"list\">\r\n <ng-container *ngFor=\"let item of list;let i = index;trackBy : _trackByFunction\">\r\n <ng-container *ngIf=\"itemTemplate; else defualtTemplate\">\r\n <li class=\"ax-list-item\" (click)=\"_handleOnItemClick($event,item)\"\r\n [attr.data-id]=\"item[this.valueField]\">\r\n <ng-container\r\n *ngTemplateOutlet=\"itemTemplate; context: { $implicit: item,direction:direction}\">\r\n </ng-container>\r\n </li>\r\n </ng-container>\r\n <ng-template #defualtTemplate>\r\n <ng-container *ngIf=\"item.children?.length > 0;else tmpItem\">\r\n <li class=\"ax-list-item-group\" [attr.data-id]=\"item[this.valueField]\">\r\n <span> {{ _getItemDisplayTextTemplte(item) }}</span>\r\n <ul *ngIf=\"item.children?.length > 0\">\r\n <ng-container\r\n *ngTemplateOutlet=\"tmpTree; context:{ list: item.children }\">\r\n </ng-container>\r\n </ul>\r\n </li>\r\n </ng-container>\r\n <ng-template #tmpItem>\r\n <ng-container *ngIf=\"!multiple; else multipleTemplate\">\r\n <li class=\"ax-list-item\" [class.ax-state-selected]=\"isItemSelected(item)\"\r\n [class.ax-state-disabled]=\"isItemDisabled(item)\" [attr.tabindex]=\"i\"\r\n (click)=\"_handleOnItemClick($event,item)\"\r\n [attr.data-id]=\"item[this.valueField]\">\r\n <span> {{ _getItemDisplayTextTemplte(item) }}</span>\r\n </li>\r\n </ng-container>\r\n <ng-template #multipleTemplate>\r\n <li class=\"ax-list-item\" [class.ax-state-selected]=\"isItemSelected(item)\"\r\n [class.ax-state-disabled]=\"isItemDisabled(item)\"\r\n [class.ax-check-box]=\"checkbox\" [attr.tabindex]=\"i\"\r\n (click)=\"_handleOnItemClick($event,item)\"\r\n [attr.data-id]=\"item[this.valueField]\">\r\n <input class=\"ax-checkbox\" type=\"checkbox\"\r\n [class.ax-state-disabled]=\"isItemDisabled(item)\" *ngIf=\"checkbox\"\r\n [checked]=\"isItemSelected(item)\" [disabled]=\"isItemDisabled(item)\">\r\n <span class=\"ax-ms-2\"> {{ _getItemDisplayTextTemplte(item) }}</span>\r\n </li>\r\n </ng-template>\r\n </ng-template>\r\n </ng-template>\r\n </ng-container>\r\n </ng-template>\r\n </ul>\r\n </ng-container>\r\n <ng-container *ngIf=\"isLoading\">\r\n <ng-container *ngIf=\"loadingTemplate; else elseLoadingTemplate\">\r\n <ng-container *ngTemplateOutlet=\"loadingTemplate\">\r\n </ng-container>\r\n </ng-container>\r\n <ng-template #elseLoadingTemplate>\r\n <div class=\"ax-flex ax-items-center ax-justify-center ax-p-4\">\r\n <ax-loading text=\"{{ 'layout.loading.text' | trans }}\"></ax-loading>\r\n </div>\r\n </ng-template>\r\n </ng-container>\r\n <ng-template #tmpEmpty>\r\n <ng-container *ngIf=\"!isLoading\">\r\n <ng-container *ngIf=\"emptyTemplate; else elseEmptyTemplate\">\r\n <ng-container *ngTemplateOutlet=\"emptyTemplate\">\r\n </ng-container>\r\n </ng-container>\r\n <ng-template #elseEmptyTemplate>\r\n <div class=\"ax-flex ax-items-center ax-justify-center ax-p-4\"\r\n [innerHTML]=\"'common.no-result-for' | trans:{exp:this._searchBox? this._searchBox.searchExp :''}\">\r\n </div>\r\n </ng-template>\r\n </ng-container>\r\n </ng-template>\r\n\r\n </div>\r\n <!-- <div class=\"ax-list-items-container ax-vertical ax-default\" [class.ax-full]=\"_isMobile\"\r\n >\r\n \r\n </div> -->\r\n <!-- <div class=\"ax-footer\">footer</div> -->\r\n </div>\r\n </div>\r\n</ax-popover>","import { AXTranslationModule } from '@acorex/core/translation';\r\nimport { CommonModule } from '@angular/common';\r\nimport { NgModule } from '@angular/core';\r\nimport { FormsModule } from '@angular/forms';\r\nimport { AXBadgeModule } from '@acorex/components/badge';\r\nimport { AXButtonModule } from '@acorex/components/button';\r\nimport { AXCheckBoxModule } from '@acorex/components/checkbox';\r\nimport { AXDecoratorModule } from '@acorex/components/decorators';\r\nimport { AXLoadingModule } from '@acorex/components/loading';\r\nimport { AXPopoverModule } from '@acorex/components/popover';\r\nimport { A11yModule } from '@angular/cdk/a11y';\r\n\r\nimport { AXSelectBoxComponent } from './selectbox.component';\r\nimport { AXTextBoxModule } from '@acorex/components/textbox';\r\nimport { AXCommonModule } from '@acorex/components/common';\r\n\r\n@NgModule({\r\n imports: [CommonModule,\r\n AXCommonModule,\r\n FormsModule,\r\n AXCheckBoxModule,\r\n AXBadgeModule,\r\n AXDecoratorModule,\r\n AXTranslationModule,\r\n AXPopoverModule,\r\n AXButtonModule,\r\n AXLoadingModule,\r\n A11yModule,\r\n AXTextBoxModule\r\n ],\r\n exports: [AXSelectBoxComponent],\r\n declarations: [AXSelectBoxComponent],\r\n providers: [],\r\n})\r\nexport class AXSelectBoxModule { }\r\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":"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"}
@@ -57,10 +57,10 @@ class AXToastComponent extends AXBaseComponentMixin {
57
57
  }
58
58
  }
59
59
  AXToastComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.4", ngImport: i0, type: AXToastComponent, deps: [{ token: i0.ElementRef }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component });
60
- AXToastComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.0.4", type: AXToastComponent, selector: "ax-toast", host: { properties: { "class": "this.__hostClass" } }, providers: [{ provide: AXClosbaleComponent, useExisting: AXToastComponent }], usesInheritance: true, ngImport: i0, template: "<!-- <ax-alert [color]=\"options.color\" [timeOut]=\"options.timeOut\">\r\n <ax-icon *ngIf=\"_icon\" [icon]=\"_icon\"></ax-icon>\r\n <ax-title [text]=\"options.title\"></ax-title>\r\n <ax-close-button *ngIf=\"options.closeable\"></ax-close-button>\r\n <ax-content *ngIf=\"options.content\">\r\n <div [innerHTML]=\"options.content\"></div>\r\n </ax-content>\r\n <ax-footer *ngIf=\"options?.buttons?.length\">\r\n <ax-button *ngFor=\"let button of options.buttons\" [text]=\"button.text\" class=\"ax-sm\"\r\n (onClick)=\"_handleButtonClick(button)\" [color]=\"options.color\" [look]=\"'default'\"></ax-button>\r\n </ax-footer>\r\n</ax-alert> -->\r\n<span [class]=\"'ax-toast-icon '+ _icon \"></span>\r\n<div class=\"ax-toast-content\">\r\n <div class=\"ax-toast-title\">{{options.title}}</div>\r\n <div [innerHTML]=\"options.content\"></div>\r\n <div class=\"ax-toast-buttons\" *ngIf=\"options?.buttons?.length\">\r\n <button *ngFor=\"let button of options.buttons\" (click)=\"_handleButtonClick(button)\">\r\n {{button.text}}\r\n </button>\r\n </div>\r\n</div>\r\n<span class=\"ax-icon ax-icon-close\" (click)=\"close()\"></span>\r\n<div class=\"ax-toast-progress\" [style.animation-duration.ms]=\"options.timeOut\" *ngIf=\"options.timeOut\"></div>", styles: ["ax-toast{width:max(20vw,380px);display:flex;padding:.75rem 1rem;border-radius:var(--ax-rounded-border-default);font-size:.875rem;border:1px solid;background-color:rgb(var(--ax-color-surface));border-color:rgba(var(--ax-color-border-default));position:relative;overflow:hidden}ax-toast.ax-primary{background-color:rgb(var(--ax-color-primary-50));color:rgb(var(--ax-color-primary-700));border-color:rgb(var(--ax-color-primary-500))}ax-toast.ax-primary .ax-toast-title{color:rgb(var(--ax-color-primary-800))}ax-toast.ax-primary .ax-toast-progress{background-color:rgb(var(--ax-color-primary-500))}ax-toast.ax-secondary{background-color:rgb(var(--ax-color-secondary-50));color:rgb(var(--ax-color-secondary-700));border-color:rgb(var(--ax-color-secondary-500))}ax-toast.ax-secondary .ax-toast-title{color:rgb(var(--ax-color-secondary-800))}ax-toast.ax-secondary .ax-toast-progress{background-color:rgb(var(--ax-color-secondary-500))}ax-toast.ax-success{background-color:rgb(var(--ax-color-success-50));color:rgb(var(--ax-color-success-700));border-color:rgb(var(--ax-color-success-500))}ax-toast.ax-success .ax-toast-title{color:rgb(var(--ax-color-success-800))}ax-toast.ax-success .ax-toast-progress{background-color:rgb(var(--ax-color-success-500))}ax-toast.ax-warning{background-color:rgb(var(--ax-color-warning-50));color:rgb(var(--ax-color-warning-700));border-color:rgb(var(--ax-color-warning-500))}ax-toast.ax-warning .ax-toast-title{color:rgb(var(--ax-color-warning-800))}ax-toast.ax-warning .ax-toast-progress{background-color:rgb(var(--ax-color-warning-500))}ax-toast.ax-danger{background-color:rgb(var(--ax-color-danger-50));color:rgb(var(--ax-color-danger-700));border-color:rgb(var(--ax-color-danger-500))}ax-toast.ax-danger .ax-toast-title{color:rgb(var(--ax-color-danger-800))}ax-toast.ax-danger .ax-toast-progress{background-color:rgb(var(--ax-color-danger-500))}@media (max-width: 599px){ax-toast{width:98vw}}ax-toast .ax-toast-icon,ax-toast .ax-icon-close{font-size:1.25rem}ax-toast .ax-toast-icon{padding-inline-end:.75rem}ax-toast .ax-toast-content{display:flex;flex-direction:column;flex:1;gap:.5rem}ax-toast .ax-toast-content .ax-toast-title{font-weight:500}ax-toast .ax-toast-content .ax-toast-buttons{margin-top:.25rem}ax-toast .ax-toast-content .ax-toast-buttons button{font-weight:700}ax-toast .ax-toast-content .ax-toast-buttons button:hover{opacity:.6}ax-toast .ax-icon-close{cursor:pointer;height:-moz-fit-content;height:fit-content}ax-toast .ax-icon-close:hover{opacity:.6}ax-toast .ax-toast-progress{position:absolute;right:0;left:0;bottom:0;height:.25rem;width:100%;animation-duration:4s;animation-timing-function:linear;animation-name:progressBar;background-color:rgba(var(--ax-color-border-default))}@keyframes progressBar{0%{width:100%}to{width:0%}}\n"], dependencies: [{ kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
60
+ AXToastComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.0.4", type: AXToastComponent, selector: "ax-toast", host: { properties: { "class": "this.__hostClass" } }, providers: [{ provide: AXClosbaleComponent, useExisting: AXToastComponent }], usesInheritance: true, ngImport: i0, template: "<!-- <ax-alert [color]=\"options.color\" [timeOut]=\"options.timeOut\">\r\n <ax-icon *ngIf=\"_icon\" [icon]=\"_icon\"></ax-icon>\r\n <ax-title [text]=\"options.title\"></ax-title>\r\n <ax-close-button *ngIf=\"options.closeable\"></ax-close-button>\r\n <ax-content *ngIf=\"options.content\">\r\n <div [innerHTML]=\"options.content\"></div>\r\n </ax-content>\r\n <ax-footer *ngIf=\"options?.buttons?.length\">\r\n <ax-button *ngFor=\"let button of options.buttons\" [text]=\"button.text\" class=\"ax-sm\"\r\n (onClick)=\"_handleButtonClick(button)\" [color]=\"options.color\" [look]=\"'default'\"></ax-button>\r\n </ax-footer>\r\n</ax-alert> -->\r\n<span [class]=\"'ax-toast-icon '+ _icon \"></span>\r\n<div class=\"ax-toast-content\">\r\n <div class=\"ax-toast-title\">{{options.title}}</div>\r\n <div [innerHTML]=\"options.content\"></div>\r\n <div class=\"ax-toast-buttons\" *ngIf=\"options?.buttons?.length\">\r\n <button *ngFor=\"let button of options.buttons\" (click)=\"_handleButtonClick(button)\">\r\n {{button.text}}\r\n </button>\r\n </div>\r\n</div>\r\n<span class=\"ax-icon ax-icon-close\" (click)=\"close()\"></span>\r\n<div class=\"ax-toast-progress\" [style.animation-duration.ms]=\"options.timeOut\" *ngIf=\"options.timeOut\"></div>", styles: ["ax-toast{width:max(20vw,380px);display:flex;padding:.75rem 1rem;border-radius:var(--ax-rounded-border-default);font-size:.875rem;border:1px solid;background-color:rgb(var(--ax-color-surface));border-color:rgba(var(--ax-color-border-default));position:relative;overflow:hidden}ax-toast.ax-primary{background-color:rgb(var(--ax-color-primary-50));color:rgb(var(--ax-color-primary-700));border-color:rgb(var(--ax-color-primary-500))}ax-toast.ax-primary .ax-toast-title{color:rgb(var(--ax-color-primary-800))}ax-toast.ax-primary .ax-toast-progress{background-color:rgb(var(--ax-color-primary-500))}ax-toast.ax-secondary{background-color:rgb(var(--ax-color-secondary-50));color:rgb(var(--ax-color-secondary-700));border-color:rgb(var(--ax-color-secondary-500))}ax-toast.ax-secondary .ax-toast-title{color:rgb(var(--ax-color-secondary-800))}ax-toast.ax-secondary .ax-toast-progress{background-color:rgb(var(--ax-color-secondary-500))}ax-toast.ax-success{background-color:rgb(var(--ax-color-success-50));color:rgb(var(--ax-color-success-700));border-color:rgb(var(--ax-color-success-500))}ax-toast.ax-success .ax-toast-title{color:rgb(var(--ax-color-success-800))}ax-toast.ax-success .ax-toast-progress{background-color:rgb(var(--ax-color-success-500))}ax-toast.ax-warning{background-color:rgb(var(--ax-color-warning-50));color:rgb(var(--ax-color-warning-700));border-color:rgb(var(--ax-color-warning-500))}ax-toast.ax-warning .ax-toast-title{color:rgb(var(--ax-color-warning-800))}ax-toast.ax-warning .ax-toast-progress{background-color:rgb(var(--ax-color-warning-500))}ax-toast.ax-danger{background-color:rgb(var(--ax-color-danger-50));color:rgb(var(--ax-color-danger-700));border-color:rgb(var(--ax-color-danger-500))}ax-toast.ax-danger .ax-toast-title{color:rgb(var(--ax-color-danger-800))}ax-toast.ax-danger .ax-toast-progress{background-color:rgb(var(--ax-color-danger-500))}@media (max-width: 599px){ax-toast{width:98vw}}ax-toast .ax-toast-icon,ax-toast .ax-icon-close{font-size:1.25rem}ax-toast .ax-toast-icon{padding-inline-end:.75rem}ax-toast .ax-toast-content{display:flex;flex-direction:column;flex:1;gap:.5rem}ax-toast .ax-toast-content .ax-toast-title{font-weight:500;margin-bottom:.5rem}ax-toast .ax-toast-content .ax-toast-buttons{margin-top:.25rem}ax-toast .ax-toast-content .ax-toast-buttons button{font-weight:700}ax-toast .ax-toast-content .ax-toast-buttons button:hover{opacity:.6}ax-toast .ax-icon-close{cursor:pointer;height:-moz-fit-content;height:fit-content}ax-toast .ax-icon-close:hover{opacity:.6}ax-toast .ax-toast-progress{position:absolute;right:0;left:0;bottom:0;height:.25rem;width:100%;animation-duration:4s;animation-timing-function:linear;animation-name:progressBar;background-color:rgba(var(--ax-color-border-default))}@keyframes progressBar{0%{width:100%}to{width:0%}}\n"], dependencies: [{ kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
61
61
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.4", ngImport: i0, type: AXToastComponent, decorators: [{
62
62
  type: Component,
63
- args: [{ selector: 'ax-toast', changeDetection: ChangeDetectionStrategy.OnPush, encapsulation: ViewEncapsulation.None, providers: [{ provide: AXClosbaleComponent, useExisting: AXToastComponent }], template: "<!-- <ax-alert [color]=\"options.color\" [timeOut]=\"options.timeOut\">\r\n <ax-icon *ngIf=\"_icon\" [icon]=\"_icon\"></ax-icon>\r\n <ax-title [text]=\"options.title\"></ax-title>\r\n <ax-close-button *ngIf=\"options.closeable\"></ax-close-button>\r\n <ax-content *ngIf=\"options.content\">\r\n <div [innerHTML]=\"options.content\"></div>\r\n </ax-content>\r\n <ax-footer *ngIf=\"options?.buttons?.length\">\r\n <ax-button *ngFor=\"let button of options.buttons\" [text]=\"button.text\" class=\"ax-sm\"\r\n (onClick)=\"_handleButtonClick(button)\" [color]=\"options.color\" [look]=\"'default'\"></ax-button>\r\n </ax-footer>\r\n</ax-alert> -->\r\n<span [class]=\"'ax-toast-icon '+ _icon \"></span>\r\n<div class=\"ax-toast-content\">\r\n <div class=\"ax-toast-title\">{{options.title}}</div>\r\n <div [innerHTML]=\"options.content\"></div>\r\n <div class=\"ax-toast-buttons\" *ngIf=\"options?.buttons?.length\">\r\n <button *ngFor=\"let button of options.buttons\" (click)=\"_handleButtonClick(button)\">\r\n {{button.text}}\r\n </button>\r\n </div>\r\n</div>\r\n<span class=\"ax-icon ax-icon-close\" (click)=\"close()\"></span>\r\n<div class=\"ax-toast-progress\" [style.animation-duration.ms]=\"options.timeOut\" *ngIf=\"options.timeOut\"></div>", styles: ["ax-toast{width:max(20vw,380px);display:flex;padding:.75rem 1rem;border-radius:var(--ax-rounded-border-default);font-size:.875rem;border:1px solid;background-color:rgb(var(--ax-color-surface));border-color:rgba(var(--ax-color-border-default));position:relative;overflow:hidden}ax-toast.ax-primary{background-color:rgb(var(--ax-color-primary-50));color:rgb(var(--ax-color-primary-700));border-color:rgb(var(--ax-color-primary-500))}ax-toast.ax-primary .ax-toast-title{color:rgb(var(--ax-color-primary-800))}ax-toast.ax-primary .ax-toast-progress{background-color:rgb(var(--ax-color-primary-500))}ax-toast.ax-secondary{background-color:rgb(var(--ax-color-secondary-50));color:rgb(var(--ax-color-secondary-700));border-color:rgb(var(--ax-color-secondary-500))}ax-toast.ax-secondary .ax-toast-title{color:rgb(var(--ax-color-secondary-800))}ax-toast.ax-secondary .ax-toast-progress{background-color:rgb(var(--ax-color-secondary-500))}ax-toast.ax-success{background-color:rgb(var(--ax-color-success-50));color:rgb(var(--ax-color-success-700));border-color:rgb(var(--ax-color-success-500))}ax-toast.ax-success .ax-toast-title{color:rgb(var(--ax-color-success-800))}ax-toast.ax-success .ax-toast-progress{background-color:rgb(var(--ax-color-success-500))}ax-toast.ax-warning{background-color:rgb(var(--ax-color-warning-50));color:rgb(var(--ax-color-warning-700));border-color:rgb(var(--ax-color-warning-500))}ax-toast.ax-warning .ax-toast-title{color:rgb(var(--ax-color-warning-800))}ax-toast.ax-warning .ax-toast-progress{background-color:rgb(var(--ax-color-warning-500))}ax-toast.ax-danger{background-color:rgb(var(--ax-color-danger-50));color:rgb(var(--ax-color-danger-700));border-color:rgb(var(--ax-color-danger-500))}ax-toast.ax-danger .ax-toast-title{color:rgb(var(--ax-color-danger-800))}ax-toast.ax-danger .ax-toast-progress{background-color:rgb(var(--ax-color-danger-500))}@media (max-width: 599px){ax-toast{width:98vw}}ax-toast .ax-toast-icon,ax-toast .ax-icon-close{font-size:1.25rem}ax-toast .ax-toast-icon{padding-inline-end:.75rem}ax-toast .ax-toast-content{display:flex;flex-direction:column;flex:1;gap:.5rem}ax-toast .ax-toast-content .ax-toast-title{font-weight:500}ax-toast .ax-toast-content .ax-toast-buttons{margin-top:.25rem}ax-toast .ax-toast-content .ax-toast-buttons button{font-weight:700}ax-toast .ax-toast-content .ax-toast-buttons button:hover{opacity:.6}ax-toast .ax-icon-close{cursor:pointer;height:-moz-fit-content;height:fit-content}ax-toast .ax-icon-close:hover{opacity:.6}ax-toast .ax-toast-progress{position:absolute;right:0;left:0;bottom:0;height:.25rem;width:100%;animation-duration:4s;animation-timing-function:linear;animation-name:progressBar;background-color:rgba(var(--ax-color-border-default))}@keyframes progressBar{0%{width:100%}to{width:0%}}\n"] }]
63
+ args: [{ selector: 'ax-toast', changeDetection: ChangeDetectionStrategy.OnPush, encapsulation: ViewEncapsulation.None, providers: [{ provide: AXClosbaleComponent, useExisting: AXToastComponent }], template: "<!-- <ax-alert [color]=\"options.color\" [timeOut]=\"options.timeOut\">\r\n <ax-icon *ngIf=\"_icon\" [icon]=\"_icon\"></ax-icon>\r\n <ax-title [text]=\"options.title\"></ax-title>\r\n <ax-close-button *ngIf=\"options.closeable\"></ax-close-button>\r\n <ax-content *ngIf=\"options.content\">\r\n <div [innerHTML]=\"options.content\"></div>\r\n </ax-content>\r\n <ax-footer *ngIf=\"options?.buttons?.length\">\r\n <ax-button *ngFor=\"let button of options.buttons\" [text]=\"button.text\" class=\"ax-sm\"\r\n (onClick)=\"_handleButtonClick(button)\" [color]=\"options.color\" [look]=\"'default'\"></ax-button>\r\n </ax-footer>\r\n</ax-alert> -->\r\n<span [class]=\"'ax-toast-icon '+ _icon \"></span>\r\n<div class=\"ax-toast-content\">\r\n <div class=\"ax-toast-title\">{{options.title}}</div>\r\n <div [innerHTML]=\"options.content\"></div>\r\n <div class=\"ax-toast-buttons\" *ngIf=\"options?.buttons?.length\">\r\n <button *ngFor=\"let button of options.buttons\" (click)=\"_handleButtonClick(button)\">\r\n {{button.text}}\r\n </button>\r\n </div>\r\n</div>\r\n<span class=\"ax-icon ax-icon-close\" (click)=\"close()\"></span>\r\n<div class=\"ax-toast-progress\" [style.animation-duration.ms]=\"options.timeOut\" *ngIf=\"options.timeOut\"></div>", styles: ["ax-toast{width:max(20vw,380px);display:flex;padding:.75rem 1rem;border-radius:var(--ax-rounded-border-default);font-size:.875rem;border:1px solid;background-color:rgb(var(--ax-color-surface));border-color:rgba(var(--ax-color-border-default));position:relative;overflow:hidden}ax-toast.ax-primary{background-color:rgb(var(--ax-color-primary-50));color:rgb(var(--ax-color-primary-700));border-color:rgb(var(--ax-color-primary-500))}ax-toast.ax-primary .ax-toast-title{color:rgb(var(--ax-color-primary-800))}ax-toast.ax-primary .ax-toast-progress{background-color:rgb(var(--ax-color-primary-500))}ax-toast.ax-secondary{background-color:rgb(var(--ax-color-secondary-50));color:rgb(var(--ax-color-secondary-700));border-color:rgb(var(--ax-color-secondary-500))}ax-toast.ax-secondary .ax-toast-title{color:rgb(var(--ax-color-secondary-800))}ax-toast.ax-secondary .ax-toast-progress{background-color:rgb(var(--ax-color-secondary-500))}ax-toast.ax-success{background-color:rgb(var(--ax-color-success-50));color:rgb(var(--ax-color-success-700));border-color:rgb(var(--ax-color-success-500))}ax-toast.ax-success .ax-toast-title{color:rgb(var(--ax-color-success-800))}ax-toast.ax-success .ax-toast-progress{background-color:rgb(var(--ax-color-success-500))}ax-toast.ax-warning{background-color:rgb(var(--ax-color-warning-50));color:rgb(var(--ax-color-warning-700));border-color:rgb(var(--ax-color-warning-500))}ax-toast.ax-warning .ax-toast-title{color:rgb(var(--ax-color-warning-800))}ax-toast.ax-warning .ax-toast-progress{background-color:rgb(var(--ax-color-warning-500))}ax-toast.ax-danger{background-color:rgb(var(--ax-color-danger-50));color:rgb(var(--ax-color-danger-700));border-color:rgb(var(--ax-color-danger-500))}ax-toast.ax-danger .ax-toast-title{color:rgb(var(--ax-color-danger-800))}ax-toast.ax-danger .ax-toast-progress{background-color:rgb(var(--ax-color-danger-500))}@media (max-width: 599px){ax-toast{width:98vw}}ax-toast .ax-toast-icon,ax-toast .ax-icon-close{font-size:1.25rem}ax-toast .ax-toast-icon{padding-inline-end:.75rem}ax-toast .ax-toast-content{display:flex;flex-direction:column;flex:1;gap:.5rem}ax-toast .ax-toast-content .ax-toast-title{font-weight:500;margin-bottom:.5rem}ax-toast .ax-toast-content .ax-toast-buttons{margin-top:.25rem}ax-toast .ax-toast-content .ax-toast-buttons button{font-weight:700}ax-toast .ax-toast-content .ax-toast-buttons button:hover{opacity:.6}ax-toast .ax-icon-close{cursor:pointer;height:-moz-fit-content;height:fit-content}ax-toast .ax-icon-close:hover{opacity:.6}ax-toast .ax-toast-progress{position:absolute;right:0;left:0;bottom:0;height:.25rem;width:100%;animation-duration:4s;animation-timing-function:linear;animation-name:progressBar;background-color:rgba(var(--ax-color-border-default))}@keyframes progressBar{0%{width:100%}to{width:0%}}\n"] }]
64
64
  }], ctorParameters: function () { return [{ type: i0.ElementRef }, { type: i0.ChangeDetectorRef }]; }, propDecorators: { __hostClass: [{
65
65
  type: HostBinding,
66
66
  args: ['class']