@acorex/components 7.4.7 → 7.5.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/button/lib/button.module.d.ts +2 -1
- package/common/lib/classes/datalist.class.d.ts +3 -3
- package/common/lib/components/selection-base.component.class.d.ts +3 -9
- package/datetime-box/lib/datetime-box.component.d.ts +2 -1
- package/dialog/lib/dialog.class.d.ts +4 -2
- package/dialog/lib/dialog.service.d.ts +3 -2
- package/dropdown/lib/dropdown-box.component.d.ts +1 -0
- package/esm2022/action-sheet/lib/action-sheet.component.mjs +2 -2
- package/esm2022/alert/lib/alert.component.mjs +12 -12
- package/esm2022/avatar/lib/avatar.component.mjs +2 -2
- package/esm2022/button/lib/button.component.mjs +2 -2
- package/esm2022/button/lib/button.module.mjs +4 -3
- package/esm2022/common/lib/classes/datalist.class.mjs +52 -1
- package/esm2022/common/lib/components/selection-base.component.class.mjs +13 -36
- package/esm2022/common/lib/components/value-component.class.mjs +3 -3
- package/esm2022/datetime-box/lib/datetime-box.component.mjs +8 -6
- package/esm2022/decorators/lib/components/generic-content.component.mjs +21 -21
- package/esm2022/decorators/lib/components/icon.component.mjs +3 -3
- package/esm2022/dialog/lib/dialog.class.mjs +1 -1
- package/esm2022/dialog/lib/dialog.component.mjs +3 -17
- package/esm2022/dialog/lib/dialog.service.mjs +47 -24
- package/esm2022/dropdown/lib/dropdown-box.component.mjs +8 -5
- package/esm2022/dropdown/lib/dropdown-panel.component.mjs +3 -3
- package/esm2022/form/lib/form-field.component.mjs +2 -2
- package/esm2022/label/lib/label.component.mjs +2 -2
- package/esm2022/list/acorex-components-list.mjs +5 -0
- package/esm2022/list/index.mjs +3 -0
- package/esm2022/list/lib/list.component.mjs +221 -0
- package/esm2022/list/lib/list.module.mjs +22 -0
- package/esm2022/loading/lib/loading.module.mjs +22 -8
- package/esm2022/loading/lib/loading.service.mjs +9 -13
- package/esm2022/menu/index.mjs +4 -1
- package/esm2022/menu/lib/class/root-menu.class.mjs +3 -0
- package/esm2022/menu/lib/menu-item/menu-item.component.mjs +96 -0
- package/esm2022/menu/lib/menu.component.mjs +4 -4
- package/esm2022/menu/lib/menu.module.mjs +11 -16
- package/esm2022/menu/lib/menu2.component.mjs +45 -0
- package/esm2022/mixin/lib/datalist.class.mjs +46 -2
- package/esm2022/notification/lib/notification.component.mjs +7 -7
- package/esm2022/popover/lib/popover.component.mjs +8 -5
- package/esm2022/popup/lib/popup.component.mjs +1 -2
- package/esm2022/popup/lib/popup.service.mjs +1 -2
- package/esm2022/progress-bar/lib/progress-bar.component.mjs +2 -2
- package/esm2022/result/lib/result.component.mjs +2 -2
- package/esm2022/select-box/index.mjs +2 -1
- package/esm2022/select-box/lib/select-box.component.mjs +3 -3
- package/esm2022/select-box/lib/select-box.module.mjs +15 -6
- package/esm2022/select-box/lib/select-box2.component.mjs +97 -0
- package/esm2022/selection-list/lib/selection-list.component.mjs +22 -7
- package/esm2022/tabs/lib/tabs.component.mjs +2 -2
- package/esm2022/text-area/lib/text-area.component.mjs +14 -6
- package/esm2022/toast/lib/toast.component.mjs +5 -5
- package/fesm2022/acorex-components-action-sheet.mjs +2 -2
- package/fesm2022/acorex-components-action-sheet.mjs.map +1 -1
- package/fesm2022/acorex-components-alert.mjs +11 -11
- package/fesm2022/acorex-components-alert.mjs.map +1 -1
- package/fesm2022/acorex-components-avatar.mjs +2 -2
- package/fesm2022/acorex-components-button.mjs +5 -4
- package/fesm2022/acorex-components-button.mjs.map +1 -1
- package/fesm2022/acorex-components-common.mjs +65 -37
- package/fesm2022/acorex-components-common.mjs.map +1 -1
- package/fesm2022/acorex-components-datetime-box.mjs +7 -5
- package/fesm2022/acorex-components-datetime-box.mjs.map +1 -1
- package/fesm2022/acorex-components-decorators.mjs +22 -22
- package/fesm2022/acorex-components-decorators.mjs.map +1 -1
- package/fesm2022/acorex-components-dialog.mjs +47 -38
- package/fesm2022/acorex-components-dialog.mjs.map +1 -1
- package/fesm2022/acorex-components-dropdown.mjs +9 -7
- package/fesm2022/acorex-components-dropdown.mjs.map +1 -1
- package/fesm2022/acorex-components-form.mjs +2 -2
- package/fesm2022/acorex-components-form.mjs.map +1 -1
- package/fesm2022/acorex-components-label.mjs +2 -2
- package/fesm2022/acorex-components-label.mjs.map +1 -1
- package/fesm2022/acorex-components-list.mjs +246 -0
- package/fesm2022/acorex-components-list.mjs.map +1 -0
- package/fesm2022/acorex-components-loading.mjs +23 -15
- package/fesm2022/acorex-components-loading.mjs.map +1 -1
- package/fesm2022/acorex-components-menu.mjs +148 -21
- package/fesm2022/acorex-components-menu.mjs.map +1 -1
- package/fesm2022/acorex-components-mixin.mjs +46 -1
- package/fesm2022/acorex-components-mixin.mjs.map +1 -1
- package/fesm2022/acorex-components-notification.mjs +7 -7
- package/fesm2022/acorex-components-notification.mjs.map +1 -1
- package/fesm2022/acorex-components-popover.mjs +7 -4
- package/fesm2022/acorex-components-popover.mjs.map +1 -1
- package/fesm2022/acorex-components-popup.mjs +0 -2
- package/fesm2022/acorex-components-popup.mjs.map +1 -1
- package/fesm2022/acorex-components-progress-bar.mjs +2 -2
- package/fesm2022/acorex-components-progress-bar.mjs.map +1 -1
- package/fesm2022/acorex-components-result.mjs +2 -2
- package/fesm2022/acorex-components-select-box.mjs +116 -18
- package/fesm2022/acorex-components-select-box.mjs.map +1 -1
- package/fesm2022/acorex-components-selection-list.mjs +21 -6
- package/fesm2022/acorex-components-selection-list.mjs.map +1 -1
- package/fesm2022/acorex-components-tabs.mjs +2 -2
- package/fesm2022/acorex-components-tabs.mjs.map +1 -1
- package/fesm2022/acorex-components-text-area.mjs +13 -5
- package/fesm2022/acorex-components-text-area.mjs.map +1 -1
- package/fesm2022/acorex-components-toast.mjs +3 -3
- package/fesm2022/acorex-components-toast.mjs.map +1 -1
- package/list/README.md +3 -0
- package/list/index.d.ts +2 -0
- package/list/lib/list.component.d.ts +59 -0
- package/list/lib/list.module.d.ts +9 -0
- package/loading/lib/loading.module.d.ts +3 -2
- package/menu/index.d.ts +3 -0
- package/menu/lib/class/root-menu.class.d.ts +4 -0
- package/menu/lib/menu-item/menu-item.component.d.ts +22 -0
- package/menu/lib/menu.component.d.ts +3 -3
- package/menu/lib/menu.module.d.ts +10 -7
- package/menu/lib/menu2.component.d.ts +12 -0
- package/mixin/lib/base-components.class.d.ts +2 -2
- package/mixin/lib/base-menu-mixin.class.d.ts +5 -5
- package/mixin/lib/button-mixin.class.d.ts +2 -2
- package/mixin/lib/clickable-mixin.class.d.ts +2 -2
- package/mixin/lib/color-look-mixing.class.d.ts +2 -2
- package/mixin/lib/datalist-component.class.d.ts +10 -10
- package/mixin/lib/datalist.class.d.ts +38 -0
- package/mixin/lib/dropdown-mixin.class.d.ts +2 -2
- package/mixin/lib/interactive-mixin.class.d.ts +4 -4
- package/mixin/lib/mixin.class.d.ts +61 -61
- package/mixin/lib/page-component.class.d.ts +2 -2
- package/mixin/lib/selection-component.class.d.ts +2 -2
- package/mixin/lib/sizable-mixin.class.d.ts +2 -2
- package/mixin/lib/textbox-mixin.class.d.ts +2 -2
- package/mixin/lib/value-mixin.class.d.ts +8 -8
- package/notification/lib/notification.component.d.ts +3 -3
- package/package.json +7 -1
- package/popover/lib/popover.component.d.ts +2 -1
- package/select-box/index.d.ts +1 -0
- package/select-box/lib/select-box.module.d.ts +15 -12
- package/select-box/lib/select-box2.component.d.ts +25 -0
- package/selection-list/lib/selection-list.component.d.ts +5 -1
- package/text-area/lib/text-area.component.d.ts +10 -3
- package/toast/lib/toast.component.d.ts +3 -3
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"acorex-components-dropdown.mjs","sources":["../../../../libs/components/dropdown/src/lib/dropdown-box.class.ts","../../../../libs/components/dropdown/src/lib/dropdown-box.component.ts","../../../../libs/components/dropdown/src/lib/dropdown-box.component.html","../../../../libs/components/dropdown/src/lib/dropdown-panel.component.ts","../../../../libs/components/dropdown/src/lib/dropdown-panel.component.html","../../../../libs/components/dropdown/src/lib/dropdown.module.ts","../../../../libs/components/dropdown/src/acorex-components-dropdown.ts"],"sourcesContent":["import { AXEvent, MXInteractiveComponent } from '@acorex/components/common';\nimport { EventEmitter, Injectable } from '@angular/core';\nimport { AXDropdownBoxComponent } from './dropdown-box.component';\n\n\n\n@Injectable()\nexport abstract class MXDropdownBoxBaseComponent extends MXInteractiveComponent {\n\n onOpened: EventEmitter<AXEvent> = new EventEmitter<AXEvent>();\n onClosed: EventEmitter<AXEvent> = new EventEmitter<AXEvent>();\n\n protected abstract dropdown: AXDropdownBoxComponent;\n\n toggle() {\n if (this.disabled !== true) {\n this.dropdown.toggle();\n }\n }\n\n close() {\n if (!this.isOpen || this.disabled) {\n return;\n }\n this.dropdown.close();\n this.focus();\n }\n\n open() {\n if (this.isOpen || this.disabled) {\n return;\n }\n this.dropdown.open();\n this.dropdown.focus();\n }\n\n get isOpen(): boolean {\n return this.dropdown?.isOpen;\n }\n}\n","import {\n AXEvent,\n MXAppearanceComponent,\n MXInteractiveComponent,\n convertToPlacement,\n} from '@acorex/components/common';\nimport { AXPopoverComponent } from '@acorex/components/popover';\nimport { AXPlatform } from '@acorex/core/platform';\nimport {\n Component,\n EventEmitter,\n HostBinding,\n HostListener,\n OnInit,\n Output,\n ViewChild,\n inject,\n} from '@angular/core';\nimport { classes } from 'polytype';\n\n@Component({\n selector: 'ax-dropdown-box',\n templateUrl: 'dropdown-box.component.html',\n inputs: ['disabled', 'appearance'],\n outputs: ['disabledChange', 'onBlur', 'onFocus', 'onClick'],\n})\nexport class AXDropdownBoxComponent\n extends classes(MXInteractiveComponent, MXAppearanceComponent)\n implements OnInit\n{\n private _platform: AXPlatform = inject(AXPlatform);\n protected _isMobile = false;\n protected _target: HTMLDivElement;\n protected _popoverTitle: string;\n protected _placement = convertToPlacement('bottom-start');\n\n @ViewChild(AXPopoverComponent)\n protected _popover: AXPopoverComponent;\n\n @Output()\n onOpened: EventEmitter<AXEvent> = new EventEmitter<AXEvent>();\n @Output()\n onClosed: EventEmitter<AXEvent> = new EventEmitter<AXEvent>();\n\n ngOnInit() {\n super.ngOnInit();\n this._target = this.getHostElement();\n this._isMobile = this._platform.is('SM');\n this._platform.resize.subscribe(() => {\n this._isMobile = this._platform.is('SM');\n this._popover.close();\n });\n }\n\n protected _handlePopupOnOpened(e: AXEvent) {\n this._popover?.focus();\n this.onOpened.emit({\n component: this,\n isUserInteraction: e.isUserInteraction,\n });\n }\n\n protected _handlePopupOnClosed(e: AXEvent) {\n this.focus();\n this.onClosed.emit({\n component: this,\n isUserInteraction: e.isUserInteraction,\n });\n }\n\n @HostListener('keydown', ['$event'])\n protected _handleKeydown(e: KeyboardEvent) {\n if (e.ctrlKey && e.code === 'ArrowDown') {\n this.open();\n e.preventDefault();\n }\n if (e.code === 'Escape') {\n this.close();\n e.preventDefault();\n }\n }\n\n toggle() {\n if (this.disabled !== true) {\n this._popover.toggle();\n }\n }\n\n close() {\n if (!this.isOpen || this.disabled) {\n return;\n }\n this._popover.close();\n this.focus();\n }\n\n open() {\n if (this.isOpen || this.disabled) {\n return;\n }\n this._popover.open();\n this._popover.focus();\n }\n\n get isOpen(): boolean {\n return this._popover?.isOpen;\n }\n\n @HostBinding('class')\n private get __hostClass(): string {\n return `ax-editor-container ax-appearance-${this.appearance}`;\n }\n}\n","<ng-content select=\"[input]\">\n</ng-content>\n<ax-popover [target]=\"_target\" [placement]=\"_placement\" [openOn]=\"'manual'\" [closeOn]=\"'clickout'\"\n [adaptivityEnabled]=\"true\" (onOpened)=\"_handlePopupOnOpened($event)\" (onClosed)=\"_handlePopupOnClosed($event)\">\n <div class=\"ax-overlay-pane\" [class.ax-w-full]=\"_isMobile\" tabindex=\"0\" aria-modal=\"true\" cdkTrapFocus\n (keydown)=\"_handleKeydown($event)\" [class.ax-overlay-actionsheet]=\"_isMobile\">\n <ng-content select=\"[panel]\">\n </ng-content>\n </div>\n</ax-popover>","import {\n AfterContentInit,\n AfterViewInit,\n ChangeDetectionStrategy,\n Component,\n ContentChildren,\n EventEmitter,\n HostBinding,\n HostListener,\n Input,\n OnInit,\n Output,\n QueryList,\n ViewChild,\n ViewEncapsulation,\n inject,\n} from '@angular/core';\n\nimport { AXButtonItemComponent } from '@acorex/components/button';\nimport {\n AXButtonClickEvent,\n AXClickEvent,\n AXEvent,\n MXComponentOptionChanged,\n MXInteractiveComponent,\n convertToPlacement,\n} from '@acorex/components/common';\nimport { AXPopoverComponent } from '@acorex/components/popover';\nimport { AXPlatform } from '@acorex/core/platform';\nimport { Subscription, startWith } from 'rxjs';\n\n@Component({\n selector: 'ax-dropdown-panel',\n templateUrl: './dropdown-panel.component.html',\n styleUrls: ['./dropdown-panel.component.scss'],\n inputs: ['isOpen', 'fitParent', 'dropdownWidth', 'position'],\n outputs: ['onOpened', 'onClosed'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None,\n})\nexport class AXDropdownPanelComponent extends MXInteractiveComponent implements OnInit, AfterViewInit, AfterContentInit {\n private _platform: AXPlatform = inject(AXPlatform);\n protected _isMobile = false;\n protected _target: HTMLDivElement;\n protected _popoverTitle: string;\n protected _placement = convertToPlacement('bottom-start');\n\n private _parent?: AXButtonItemComponent = inject(AXButtonItemComponent);\n protected _needBorder = false;\n _subs: Subscription[] = [];\n\n @ContentChildren(AXButtonItemComponent)\n protected _contentButtons: QueryList<AXButtonItemComponent>;\n\n @ViewChild(AXPopoverComponent)\n protected _popover: AXPopoverComponent;\n\n @Output()\n onOpened: EventEmitter<AXEvent> = new EventEmitter<AXEvent>();\n @Output()\n onClosed: EventEmitter<AXEvent> = new EventEmitter<AXEvent>();\n\n @Input()\n adaptivityEnabled = false;\n\n @Output()\n onItemClick: EventEmitter<AXButtonClickEvent> = new EventEmitter<AXButtonClickEvent>();\n\n ngOnInit() {\n super.ngOnInit();\n this._target = this._parent.getHostElement();\n this._platform.resize\n .pipe(startWith(null))\n .subscribe(() => {\n this._isMobile = this._platform.is('SM');\n this._popover?.close();\n });\n }\n\n\n ngAfterViewInit(): void {\n [this._target, this.getHostElement()].forEach((el) => {\n el.addEventListener('keydown', (e) => {\n if (e.code == 'Escape' && this.isOpen) {\n e.stopPropagation();\n this.close();\n }\n });\n });\n }\n\n ngAfterContentInit() {\n this._initContents();\n this._contentButtons.changes.subscribe(() => {\n this._initContents();\n });\n }\n\n private _initContents() {\n this._needBorder = this._contentButtons.length > 0;\n this._bindEvents();\n this._bindProps();\n this.cdr.markForCheck();\n }\n\n private _bindEvents() {\n this._contentButtons?.forEach((b) => {\n if (!b.onClick.length)\n b.onClick.subscribe((c) => {\n this._handleOnItemClick(c);\n });\n });\n }\n\n private _bindProps() {\n this._contentButtons?.forEach((b) => {\n //b.look = this.look ?? this.look;\n b.disabled = b.disabled ?? this.disabled;\n //b.toggleable = false;\n });\n }\n\n protected override internalOptionChanged(option: MXComponentOptionChanged<any>): void {\n this._bindProps();\n }\n\n ngOnDestroy(): void {\n this._subs.forEach((s) => {\n s?.unsubscribe();\n });\n }\n\n _emitOnItemClickEvent(e: AXClickEvent, item: AXButtonItemComponent): void {\n this.onItemClick.emit({\n component: this,\n htmlElement: this.getHostElement(),\n nativeEvent: e.nativeEvent,\n name: item.name,\n data: item.data,\n });\n }\n\n private _handleOnItemClick(e: AXClickEvent) {\n this.close();\n this._emitOnItemClickEvent(e, e.component);\n }\n\n protected _handlePopupOnOpened(e: AXEvent) {\n this._popover?.focus();\n this.onOpened.emit({\n component: this,\n isUserInteraction: e.isUserInteraction,\n });\n }\n\n protected _handlePopupOnClosed(e: AXEvent) {\n this._target.focus();\n this.onClosed.emit({\n component: this,\n isUserInteraction: e.isUserInteraction,\n });\n }\n\n\n\n toggle() {\n if (this.disabled !== true) {\n this._popover.toggle();\n }\n }\n\n close() {\n if (!this.isOpen || this.disabled) {\n return;\n }\n this._popover.close();\n this.focus();\n }\n\n open() {\n if (this.isOpen || this.disabled) {\n return;\n }\n this._popover.open();\n this._popover.focus();\n }\n\n get isOpen(): boolean {\n return this._popover?.isOpen;\n }\n\n @HostBinding('class')\n private get __hostClass(): string[] {\n return ['ax-dropdown-panel'];\n }\n\n // constructor(\n // elementRef: ElementRef,\n // cdr: ChangeDetectorRef,\n // @Optional()\n // public _parent?: AXButtonItemComponent,\n // ) {\n // super(elementRef, cdr);\n // this._target = this._parent?.getHostElement();\n // }\n\n // @ContentChildren(AXButtonItemComponent)\n // _contentButtons: QueryList<AXButtonItemComponent>;\n\n // @ViewChild(AXPopoverComponent, { static: true })\n // override popover: AXPopoverComponent = null;\n\n // @Input()\n // adaptivityEnabled = false;\n\n // _needBorder: boolean = false;\n // _subs: Subscription[] = [];\n\n // private _target: HTMLElement;\n // @Input()\n // public get target(): HTMLElement {\n // return this._target;\n // }\n // public set target(v: HTMLElement) {\n // this._target = v;\n // }\n\n // override onViewInit(): void {\n // super.onViewInit();\n // [this.target, this._getHostElement()].forEach((el) => {\n // el.addEventListener('keydown', (e) => {\n // if (e.code == 'Escape' && this.isOpen) {\n // e.stopPropagation();\n // this.close();\n // }\n // });\n // });\n // }\n\n // ngAfterContentInit() {\n // this._initContents();\n // this._contentButtons.changes.subscribe(() => {\n // this._initContents();\n // });\n // }\n\n // private _initContents() {\n // this._needBorder = this._contentButtons.length > 0;\n // this._bindEvents();\n // this._bindProps();\n // this._cdr.markForCheck();\n // }\n\n // private _bindEvents() {\n // this._contentButtons?.forEach((b) => {\n // if (!b.onClick.length)\n // b.onClick.subscribe((c) => {\n // this._handleOnItemClick(c);\n // });\n // });\n // }\n\n // private _bindProps() {\n // this._contentButtons?.forEach((b) => {\n // //b.look = this.look ?? this.look;\n // b.disabled = b.disabled ?? this.disabled;\n // //b.toggleable = false;\n // });\n // }\n\n // onOptionChanged(options) {\n // this._bindProps();\n // }\n\n // override onDestroy(): void {\n // this._subs.forEach((s) => {\n // s?.unsubscribe();\n // });\n // }\n\n // _emitOnItemClickEvent(e: AXClickEvent, item: AXButtonItemComponent): void {\n // this.onItemClick.emit({\n // component: this,\n // htmlElement: this._getHostElement(),\n // nativeEvent: e.nativeEvent,\n // name: item.name,\n // data: item.data,\n // });\n // }\n\n // private _handleOnItemClick(e: AXClickEvent) {\n // this.close();\n // this._emitOnItemClickEvent(e, e.component);\n // }\n}\n","<ax-popover [target]=\"_target\" [placement]=\"_placement\" [openOn]=\"'toggle'\" [closeOn]=\"'clickout'\"\n [adaptivityEnabled]=\"adaptivityEnabled\" (onOpened)=\"_handlePopupOnOpened($event)\"\n (onClosed)=\"_handlePopupOnClosed($event)\">\n <div class=\"ax-overlay-pane\" [class.ax-dropdown-list]=\"_needBorder\">\n <ng-content select=\"[panel],ax-button-item\"> </ng-content>\n </div>\n</ax-popover>","import { OverlayModule } from '@angular/cdk/overlay';\nimport { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\nimport { AXButtonModule } from '@acorex/components/button';\nimport { AXDecoratorModule } from '@acorex/components/decorators';\nimport { AXPopoverModule } from '@acorex/components/popover';\nimport { AXDropdownPanelComponent } from './dropdown-panel.component';\nimport { A11yModule } from '@angular/cdk/a11y';\nimport { AXCommonModule } from '@acorex/components/common';\nimport { AXDropdownBoxComponent } from './dropdown-box.component';\n\n@NgModule({\n imports: [CommonModule, AXCommonModule, A11yModule, AXButtonModule, OverlayModule, AXDecoratorModule, AXPopoverModule],\n exports: [AXDropdownPanelComponent, AXDropdownBoxComponent],\n declarations: [AXDropdownPanelComponent, AXDropdownBoxComponent],\n providers: [],\n})\nexport class AXDropdownModule { }\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["i1"],"mappings":"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"}
|
1
|
+
{"version":3,"file":"acorex-components-dropdown.mjs","sources":["../../../../libs/components/dropdown/src/lib/dropdown-box.class.ts","../../../../libs/components/dropdown/src/lib/dropdown-box.component.ts","../../../../libs/components/dropdown/src/lib/dropdown-box.component.html","../../../../libs/components/dropdown/src/lib/dropdown-panel.component.ts","../../../../libs/components/dropdown/src/lib/dropdown-panel.component.html","../../../../libs/components/dropdown/src/lib/dropdown.module.ts","../../../../libs/components/dropdown/src/acorex-components-dropdown.ts"],"sourcesContent":["import { AXEvent, MXInteractiveComponent } from '@acorex/components/common';\nimport { EventEmitter, Injectable } from '@angular/core';\nimport { AXDropdownBoxComponent } from './dropdown-box.component';\n\n\n\n@Injectable()\nexport abstract class MXDropdownBoxBaseComponent extends MXInteractiveComponent {\n\n onOpened: EventEmitter<AXEvent> = new EventEmitter<AXEvent>();\n onClosed: EventEmitter<AXEvent> = new EventEmitter<AXEvent>();\n\n protected abstract dropdown: AXDropdownBoxComponent;\n\n toggle() {\n if (this.disabled !== true) {\n this.dropdown.toggle();\n }\n }\n\n close() {\n if (!this.isOpen || this.disabled) {\n return;\n }\n this.dropdown.close();\n this.focus();\n }\n\n open() {\n if (this.isOpen || this.disabled) {\n return;\n }\n this.dropdown.open();\n this.dropdown.focus();\n }\n\n get isOpen(): boolean {\n return this.dropdown?.isOpen;\n }\n}\n","import {\n AXEvent,\n MXAppearanceComponent,\n MXInteractiveComponent,\n convertToPlacement,\n} from '@acorex/components/common';\nimport { AXPopoverComponent } from '@acorex/components/popover';\nimport { AXPlatform } from '@acorex/core/platform';\nimport {\n Component,\n EventEmitter,\n HostBinding,\n HostListener,\n OnInit,\n Output,\n ViewChild,\n inject,\n} from '@angular/core';\nimport { classes } from 'polytype';\nimport { startWith } from 'rxjs';\n\n@Component({\n selector: 'ax-dropdown-box',\n templateUrl: 'dropdown-box.component.html',\n inputs: ['disabled', 'appearance'],\n outputs: ['disabledChange', 'onBlur', 'onFocus', 'onClick'],\n})\nexport class AXDropdownBoxComponent\n extends classes(MXInteractiveComponent, MXAppearanceComponent)\n implements OnInit {\n private _platform: AXPlatform = inject(AXPlatform);\n protected _isMobile = false;\n protected _target: HTMLDivElement;\n protected _popoverTitle: string;\n protected _popoverWidth = '180px';\n protected _placement = convertToPlacement('bottom-start');\n\n @ViewChild(AXPopoverComponent)\n protected _popover: AXPopoverComponent;\n\n @Output()\n onOpened: EventEmitter<AXEvent> = new EventEmitter<AXEvent>();\n @Output()\n onClosed: EventEmitter<AXEvent> = new EventEmitter<AXEvent>();\n\n ngOnInit() {\n super.ngOnInit();\n this._target = this.getHostElement();\n this._platform.resize\n .pipe(startWith())\n .subscribe(() => {\n this._isMobile = this._platform.is('SM');\n this._popover.close();\n });\n\n }\n\n protected _handlePopupOnOpened(e: AXEvent) {\n this._popover?.focus();\n this.onOpened.emit({\n component: this,\n isUserInteraction: e.isUserInteraction,\n });\n }\n\n protected _handlePopupOnClosed(e: AXEvent) {\n this.focus();\n this.onClosed.emit({\n component: this,\n isUserInteraction: e.isUserInteraction,\n });\n }\n\n @HostListener('keydown', ['$event'])\n protected _handleKeydown(e: KeyboardEvent) {\n if (e.ctrlKey && e.code === 'ArrowDown') {\n this.open();\n e.preventDefault();\n }\n if (e.code === 'Escape') {\n this.close();\n e.preventDefault();\n }\n }\n\n toggle() {\n if (this.disabled !== true) {\n this._popover.toggle();\n }\n }\n\n close() {\n if (!this.isOpen || this.disabled) {\n return;\n }\n this._popover.close();\n this.focus();\n }\n\n open() {\n if (this.isOpen || this.disabled) {\n return;\n }\n this._popover.open();\n this._popover.focus();\n }\n\n get isOpen(): boolean {\n return this._popover?.isOpen;\n }\n\n @HostBinding('class')\n private get __hostClass(): string {\n return `ax-editor-container ax-appearance-${this.appearance}`;\n }\n}\n","<ng-content select=\"[input]\"> </ng-content>\n<ax-popover [target]=\"_target\" [placement]=\"_placement\" [openOn]=\"'manual'\" [closeOn]=\"'clickOut'\"\n [adaptivityEnabled]=\"true\" (onOpened)=\"_handlePopupOnOpened($event)\" (onClosed)=\"_handlePopupOnClosed($event)\"\n #popover>\n <div class=\"ax-overlay-pane\" [class.ax-w-full]=\"_isMobile\" tabindex=\"0\" aria-modal=\"true\" cdkTrapFocus\n (keydown)=\"_handleKeydown($event)\" [class.ax-overlay-actionsheet]=\"popover.isActionsheetStyle\">\n <ng-content select=\"[panel]\"> </ng-content>\n </div>\n</ax-popover>","import {\n AfterContentInit,\n AfterViewInit,\n ChangeDetectionStrategy,\n Component,\n ContentChildren,\n EventEmitter,\n HostBinding,\n HostListener,\n Input,\n OnInit,\n Output,\n QueryList,\n ViewChild,\n ViewEncapsulation,\n inject,\n} from '@angular/core';\n\nimport { AXButtonItemComponent } from '@acorex/components/button';\nimport {\n AXButtonClickEvent,\n AXClickEvent,\n AXEvent,\n MXComponentOptionChanged,\n MXInteractiveComponent,\n convertToPlacement,\n} from '@acorex/components/common';\nimport { AXPopoverComponent } from '@acorex/components/popover';\nimport { AXPlatform } from '@acorex/core/platform';\nimport { Subscription, startWith } from 'rxjs';\n\n@Component({\n selector: 'ax-dropdown-panel',\n templateUrl: './dropdown-panel.component.html',\n styleUrls: ['./dropdown-panel.component.scss'],\n inputs: ['isOpen', 'fitParent', 'dropdownWidth', 'position'],\n outputs: ['onOpened', 'onClosed'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None,\n})\nexport class AXDropdownPanelComponent extends MXInteractiveComponent implements OnInit, AfterViewInit, AfterContentInit {\n private _platform: AXPlatform = inject(AXPlatform);\n protected _isMobile = false;\n protected _target: HTMLDivElement;\n protected _popoverTitle: string;\n protected _placement = convertToPlacement('bottom-start');\n\n private _parent?: AXButtonItemComponent = inject(AXButtonItemComponent);\n protected _needBorder = false;\n _subs: Subscription[] = [];\n\n @ContentChildren(AXButtonItemComponent)\n protected _contentButtons: QueryList<AXButtonItemComponent>;\n\n @ViewChild(AXPopoverComponent)\n protected _popover: AXPopoverComponent;\n\n @Output()\n onOpened: EventEmitter<AXEvent> = new EventEmitter<AXEvent>();\n @Output()\n onClosed: EventEmitter<AXEvent> = new EventEmitter<AXEvent>();\n\n @Input()\n adaptivityEnabled = false;\n\n @Output()\n onItemClick: EventEmitter<AXButtonClickEvent> = new EventEmitter<AXButtonClickEvent>();\n\n ngOnInit() {\n super.ngOnInit();\n this._target = this._parent.getHostElement();\n this._platform.resize\n .pipe(startWith(null))\n .subscribe(() => {\n this._isMobile = this._platform.is('SM');\n this._popover?.close();\n });\n }\n\n\n ngAfterViewInit(): void {\n [this._target, this.getHostElement()].forEach((el) => {\n el.addEventListener('keydown', (e) => {\n if (e.code == 'Escape' && this.isOpen) {\n e.stopPropagation();\n this.close();\n }\n });\n });\n }\n\n ngAfterContentInit() {\n this._initContents();\n this._contentButtons.changes.subscribe(() => {\n this._initContents();\n });\n }\n\n private _initContents() {\n this._needBorder = this._contentButtons.length > 0;\n this._bindEvents();\n this._bindProps();\n this.cdr.markForCheck();\n }\n\n private _bindEvents() {\n this._contentButtons?.forEach((b) => {\n if (!b.onClick.length)\n b.onClick.subscribe((c) => {\n this._handleOnItemClick(c);\n });\n });\n }\n\n private _bindProps() {\n this._contentButtons?.forEach((b) => {\n //b.look = this.look ?? this.look;\n b.disabled = b.disabled ?? this.disabled;\n //b.toggleable = false;\n });\n }\n\n protected override internalOptionChanged(option: MXComponentOptionChanged<any>): void {\n this._bindProps();\n }\n\n ngOnDestroy(): void {\n this._subs.forEach((s) => {\n s?.unsubscribe();\n });\n }\n\n _emitOnItemClickEvent(e: AXClickEvent, item: AXButtonItemComponent): void {\n this.onItemClick.emit({\n component: this,\n htmlElement: this.getHostElement(),\n nativeEvent: e.nativeEvent,\n name: item.name,\n data: item.data,\n });\n }\n\n private _handleOnItemClick(e: AXClickEvent) {\n this.close();\n this._emitOnItemClickEvent(e, e.component);\n }\n\n protected _handlePopupOnOpened(e: AXEvent) {\n this._popover?.focus();\n this.onOpened.emit({\n component: this,\n isUserInteraction: e.isUserInteraction,\n });\n }\n\n protected _handlePopupOnClosed(e: AXEvent) {\n this._target.focus();\n this.onClosed.emit({\n component: this,\n isUserInteraction: e.isUserInteraction,\n });\n }\n\n\n\n toggle() {\n if (this.disabled !== true) {\n this._popover.toggle();\n }\n }\n\n close() {\n if (!this.isOpen || this.disabled) {\n return;\n }\n this._popover.close();\n this.focus();\n }\n\n open() {\n if (this.isOpen || this.disabled) {\n return;\n }\n this._popover.open();\n this._popover.focus();\n }\n\n get isOpen(): boolean {\n return this._popover?.isOpen;\n }\n\n @HostBinding('class')\n private get __hostClass(): string[] {\n return ['ax-dropdown-panel'];\n }\n\n // constructor(\n // elementRef: ElementRef,\n // cdr: ChangeDetectorRef,\n // @Optional()\n // public _parent?: AXButtonItemComponent,\n // ) {\n // super(elementRef, cdr);\n // this._target = this._parent?.getHostElement();\n // }\n\n // @ContentChildren(AXButtonItemComponent)\n // _contentButtons: QueryList<AXButtonItemComponent>;\n\n // @ViewChild(AXPopoverComponent, { static: true })\n // override popover: AXPopoverComponent = null;\n\n // @Input()\n // adaptivityEnabled = false;\n\n // _needBorder: boolean = false;\n // _subs: Subscription[] = [];\n\n // private _target: HTMLElement;\n // @Input()\n // public get target(): HTMLElement {\n // return this._target;\n // }\n // public set target(v: HTMLElement) {\n // this._target = v;\n // }\n\n // override onViewInit(): void {\n // super.onViewInit();\n // [this.target, this._getHostElement()].forEach((el) => {\n // el.addEventListener('keydown', (e) => {\n // if (e.code == 'Escape' && this.isOpen) {\n // e.stopPropagation();\n // this.close();\n // }\n // });\n // });\n // }\n\n // ngAfterContentInit() {\n // this._initContents();\n // this._contentButtons.changes.subscribe(() => {\n // this._initContents();\n // });\n // }\n\n // private _initContents() {\n // this._needBorder = this._contentButtons.length > 0;\n // this._bindEvents();\n // this._bindProps();\n // this._cdr.markForCheck();\n // }\n\n // private _bindEvents() {\n // this._contentButtons?.forEach((b) => {\n // if (!b.onClick.length)\n // b.onClick.subscribe((c) => {\n // this._handleOnItemClick(c);\n // });\n // });\n // }\n\n // private _bindProps() {\n // this._contentButtons?.forEach((b) => {\n // //b.look = this.look ?? this.look;\n // b.disabled = b.disabled ?? this.disabled;\n // //b.toggleable = false;\n // });\n // }\n\n // onOptionChanged(options) {\n // this._bindProps();\n // }\n\n // override onDestroy(): void {\n // this._subs.forEach((s) => {\n // s?.unsubscribe();\n // });\n // }\n\n // _emitOnItemClickEvent(e: AXClickEvent, item: AXButtonItemComponent): void {\n // this.onItemClick.emit({\n // component: this,\n // htmlElement: this._getHostElement(),\n // nativeEvent: e.nativeEvent,\n // name: item.name,\n // data: item.data,\n // });\n // }\n\n // private _handleOnItemClick(e: AXClickEvent) {\n // this.close();\n // this._emitOnItemClickEvent(e, e.component);\n // }\n}\n","<ax-popover\n [target]=\"_target\"\n [placement]=\"_placement\"\n [openOn]=\"'toggle'\"\n [closeOn]=\"'clickOut'\"\n [adaptivityEnabled]=\"adaptivityEnabled\"\n (onOpened)=\"_handlePopupOnOpened($event)\"\n (onClosed)=\"_handlePopupOnClosed($event)\"\n>\n <div class=\"ax-overlay-pane\" [class.ax-dropdown-list]=\"_needBorder\">\n <ng-content select=\"[panel],ax-button-item\"> </ng-content>\n </div>\n</ax-popover>\n","import { OverlayModule } from '@angular/cdk/overlay';\nimport { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\nimport { AXButtonModule } from '@acorex/components/button';\nimport { AXDecoratorModule } from '@acorex/components/decorators';\nimport { AXPopoverModule } from '@acorex/components/popover';\nimport { AXDropdownPanelComponent } from './dropdown-panel.component';\nimport { A11yModule } from '@angular/cdk/a11y';\nimport { AXCommonModule } from '@acorex/components/common';\nimport { AXDropdownBoxComponent } from './dropdown-box.component';\n\n@NgModule({\n imports: [CommonModule, AXCommonModule, A11yModule, AXButtonModule, OverlayModule, AXDecoratorModule, AXPopoverModule],\n exports: [AXDropdownPanelComponent, AXDropdownBoxComponent],\n declarations: [AXDropdownPanelComponent, AXDropdownBoxComponent],\n providers: [],\n})\nexport class AXDropdownModule { }\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["i1"],"mappings":"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"}
|
@@ -49,11 +49,11 @@ function formConfig(config = {}) {
|
|
49
49
|
|
50
50
|
class AXFormFieldComponent extends MXBaseComponent {
|
51
51
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.1.9", ngImport: i0, type: AXFormFieldComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
|
52
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.1.9", type: AXFormFieldComponent, selector: "ax-form-field", usesInheritance: true, ngImport: i0, template: `<ng-content></ng-content>`, isInline: true, styles: [".ax-dark ax-form.ax-form-normal .ax-error-message{background:rgba(var(--ax-color-danger-900));border-color:rgba(var(--ax-color-danger-700));color:rgba(var(--ax-color-danger-100))}.ax-dark ax-form.ax-form-normal .ax-error-message:before,.ax-dark ax-form.ax-form-normal .ax-error-message:after{border-bottom-color:rgba(var(--ax-color-danger-900))}.ax-dark ax-form.ax-form-normal .ax-error-message:before{border-bottom-color:rgba(var(--ax-color-danger-700))}.ax-dark ax-form form.ax-float-error .ax-error-message{background:rgba(var(--ax-color-danger-800));color:rgba(var(--ax-color-danger-fore));border-color:rgba(var(--ax-color-danger-950))}.ax-dark ax-form form.ax-float-error .ax-error-message:before,.ax-dark ax-form form.ax-float-error .ax-error-message:after{border-bottom-color:rgba(var(--ax-color-danger-800))}.ax-dark ax-form form.ax-float-error .ax-error-message:before{border-bottom-color:rgba(var(--ax-color-danger-800))}ax-form-field{position:relative}ax-form-field .ax-error-message{font-size:.75rem}form.ax-bottom-error .ax-error-message{color:rgba(var(--ax-color-danger-500))}form.ax-float-error .ax-error-message{position:absolute;display:block;border:1px solid;background:rgba(var(--ax-color-danger-100));color:rgba(var(--ax-color-danger-700));border-radius:.375rem;border-color:rgba(var(--ax-color-danger-200));z-index:10;padding:.25rem .5rem;bottom:-2.25rem;font-weight:400;width:-moz-fit-content;width:fit-content}form.ax-float-error .ax-error-message:before,form.ax-float-error .ax-error-message:after{position:absolute;bottom:100%;inset-inline-start:10px;z-index:15;width:0;height:0;pointer-events:none;content:\" \";border:solid transparent;border-bottom-color:rgba(var(--ax-color-danger-100))}form.ax-float-error .ax-error-message:before{margin-inline-start:-1px;border-width:.375rem;border-bottom-color:rgba(var(--ax-color-danger-200))}form.ax-float-error .ax-error-message:after{border-width:5px}\n"], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
|
52
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.1.9", type: AXFormFieldComponent, selector: "ax-form-field", usesInheritance: true, ngImport: i0, template: `<ng-content></ng-content>`, isInline: true, styles: [".ax-dark ax-form.ax-form-normal .ax-error-message{background:rgba(var(--ax-color-danger-900));border-color:rgba(var(--ax-color-danger-700));color:rgba(var(--ax-color-danger-100))}.ax-dark ax-form.ax-form-normal .ax-error-message:before,.ax-dark ax-form.ax-form-normal .ax-error-message:after{border-bottom-color:rgba(var(--ax-color-danger-900))}.ax-dark ax-form.ax-form-normal .ax-error-message:before{border-bottom-color:rgba(var(--ax-color-danger-700))}.ax-dark ax-form form.ax-float-error .ax-error-message{background:rgba(var(--ax-color-danger-800));color:rgba(var(--ax-color-danger-fore));border-color:rgba(var(--ax-color-danger-950))}.ax-dark ax-form form.ax-float-error .ax-error-message:before,.ax-dark ax-form form.ax-float-error .ax-error-message:after{border-bottom-color:rgba(var(--ax-color-danger-800))}.ax-dark ax-form form.ax-float-error .ax-error-message:before{border-bottom-color:rgba(var(--ax-color-danger-800))}ax-form-field{position:relative;display:block}ax-form-field .ax-error-message{display:block;font-size:.75rem;margin:.25rem 0}form.ax-bottom-error .ax-error-message{color:rgba(var(--ax-color-danger-500))}form.ax-float-error .ax-error-message{position:absolute;display:block;border:1px solid;background:rgba(var(--ax-color-danger-100));color:rgba(var(--ax-color-danger-700));border-radius:.375rem;border-color:rgba(var(--ax-color-danger-200));z-index:10;padding:.25rem .5rem;bottom:-2.25rem;font-weight:400;width:-moz-fit-content;width:fit-content}form.ax-float-error .ax-error-message:before,form.ax-float-error .ax-error-message:after{position:absolute;bottom:100%;inset-inline-start:10px;z-index:15;width:0;height:0;pointer-events:none;content:\" \";border:solid transparent;border-bottom-color:rgba(var(--ax-color-danger-100))}form.ax-float-error .ax-error-message:before{margin-inline-start:-1px;border-width:.375rem;border-bottom-color:rgba(var(--ax-color-danger-200))}form.ax-float-error .ax-error-message:after{border-width:5px}\n"], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
|
53
53
|
}
|
54
54
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.9", ngImport: i0, type: AXFormFieldComponent, decorators: [{
|
55
55
|
type: Component,
|
56
|
-
args: [{ selector: 'ax-form-field', template: `<ng-content></ng-content>`, encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, styles: [".ax-dark ax-form.ax-form-normal .ax-error-message{background:rgba(var(--ax-color-danger-900));border-color:rgba(var(--ax-color-danger-700));color:rgba(var(--ax-color-danger-100))}.ax-dark ax-form.ax-form-normal .ax-error-message:before,.ax-dark ax-form.ax-form-normal .ax-error-message:after{border-bottom-color:rgba(var(--ax-color-danger-900))}.ax-dark ax-form.ax-form-normal .ax-error-message:before{border-bottom-color:rgba(var(--ax-color-danger-700))}.ax-dark ax-form form.ax-float-error .ax-error-message{background:rgba(var(--ax-color-danger-800));color:rgba(var(--ax-color-danger-fore));border-color:rgba(var(--ax-color-danger-950))}.ax-dark ax-form form.ax-float-error .ax-error-message:before,.ax-dark ax-form form.ax-float-error .ax-error-message:after{border-bottom-color:rgba(var(--ax-color-danger-800))}.ax-dark ax-form form.ax-float-error .ax-error-message:before{border-bottom-color:rgba(var(--ax-color-danger-800))}ax-form-field{position:relative}ax-form-field .ax-error-message{font-size:.75rem}form.ax-bottom-error .ax-error-message{color:rgba(var(--ax-color-danger-500))}form.ax-float-error .ax-error-message{position:absolute;display:block;border:1px solid;background:rgba(var(--ax-color-danger-100));color:rgba(var(--ax-color-danger-700));border-radius:.375rem;border-color:rgba(var(--ax-color-danger-200));z-index:10;padding:.25rem .5rem;bottom:-2.25rem;font-weight:400;width:-moz-fit-content;width:fit-content}form.ax-float-error .ax-error-message:before,form.ax-float-error .ax-error-message:after{position:absolute;bottom:100%;inset-inline-start:10px;z-index:15;width:0;height:0;pointer-events:none;content:\" \";border:solid transparent;border-bottom-color:rgba(var(--ax-color-danger-100))}form.ax-float-error .ax-error-message:before{margin-inline-start:-1px;border-width:.375rem;border-bottom-color:rgba(var(--ax-color-danger-200))}form.ax-float-error .ax-error-message:after{border-width:5px}\n"] }]
|
56
|
+
args: [{ selector: 'ax-form-field', template: `<ng-content></ng-content>`, encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, styles: [".ax-dark ax-form.ax-form-normal .ax-error-message{background:rgba(var(--ax-color-danger-900));border-color:rgba(var(--ax-color-danger-700));color:rgba(var(--ax-color-danger-100))}.ax-dark ax-form.ax-form-normal .ax-error-message:before,.ax-dark ax-form.ax-form-normal .ax-error-message:after{border-bottom-color:rgba(var(--ax-color-danger-900))}.ax-dark ax-form.ax-form-normal .ax-error-message:before{border-bottom-color:rgba(var(--ax-color-danger-700))}.ax-dark ax-form form.ax-float-error .ax-error-message{background:rgba(var(--ax-color-danger-800));color:rgba(var(--ax-color-danger-fore));border-color:rgba(var(--ax-color-danger-950))}.ax-dark ax-form form.ax-float-error .ax-error-message:before,.ax-dark ax-form form.ax-float-error .ax-error-message:after{border-bottom-color:rgba(var(--ax-color-danger-800))}.ax-dark ax-form form.ax-float-error .ax-error-message:before{border-bottom-color:rgba(var(--ax-color-danger-800))}ax-form-field{position:relative;display:block}ax-form-field .ax-error-message{display:block;font-size:.75rem;margin:.25rem 0}form.ax-bottom-error .ax-error-message{color:rgba(var(--ax-color-danger-500))}form.ax-float-error .ax-error-message{position:absolute;display:block;border:1px solid;background:rgba(var(--ax-color-danger-100));color:rgba(var(--ax-color-danger-700));border-radius:.375rem;border-color:rgba(var(--ax-color-danger-200));z-index:10;padding:.25rem .5rem;bottom:-2.25rem;font-weight:400;width:-moz-fit-content;width:fit-content}form.ax-float-error .ax-error-message:before,form.ax-float-error .ax-error-message:after{position:absolute;bottom:100%;inset-inline-start:10px;z-index:15;width:0;height:0;pointer-events:none;content:\" \";border:solid transparent;border-bottom-color:rgba(var(--ax-color-danger-100))}form.ax-float-error .ax-error-message:before{margin-inline-start:-1px;border-width:.375rem;border-bottom-color:rgba(var(--ax-color-danger-200))}form.ax-float-error .ax-error-message:after{border-width:5px}\n"] }]
|
57
57
|
}] });
|
58
58
|
|
59
59
|
/**
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"acorex-components-form.mjs","sources":["../../../../libs/components/form/src/lib/form.config.ts","../../../../libs/components/form/src/lib/form-field.component.ts","../../../../libs/components/form/src/lib/form.component.ts","../../../../libs/components/form/src/lib/validation-rule.widget.ts","../../../../libs/components/form/src/lib/validation-summary.component.ts","../../../../libs/components/form/src/lib/form.module.ts","../../../../libs/components/form/src/acorex-components-form.ts"],"sourcesContent":["import { InjectionToken, inject } from '@angular/core';\nimport { AX_GLOBAL_CONFIG } from '@acorex/core/config';\nimport { set } from 'lodash-es';\nimport { AXValidationRuleTypes } from './validation.class';\nimport { AXTranslator } from '@acorex/core/translation';\n\n\nexport interface AXFormConfig {\n validation: {\n rules: {\n [key: string]: {\n rule: AXValidationRuleTypes,\n value: unknown,\n message: string\n }\n }\n },\n\n}\n\nexport const AX_FORM_CONFIG = new InjectionToken<AXFormConfig>(\n 'AX_FORM_CONFIG',\n {\n providedIn: 'root',\n factory: () => {\n const global = inject(AX_GLOBAL_CONFIG);\n set(global, \"form\", AX_FORM_CONFIG);\n return AXFormDefaultConfig;\n },\n }\n);\n\n\nexport const AXFormDefaultConfig: AXFormConfig = {\n validation: {\n rules: {\n email: {\n rule: 'regex',\n value:\n /^(([^<>()[\\]\\\\.,;:\\s@\"]+(\\.[^<>()[\\]\\\\.,;:\\s@\"]+)*)|(\".+\"))@((\\[[0-9]{1,3}\\.[0-9]{1,3}\\.[0-9]{1,3}\\.[0-9]{1,3}\\])|(([a-zA-Z\\-0-9]+\\.)+[a-zA-Z]{2,}))$/,\n message: AXTranslator.get('validation.messages.email'),\n },\n phone: {\n rule: 'regex',\n value: /^[+]*[(]{0,1}[0-9]{1,4}[)]{0,1}[-\\s\\./0-9]*$/,\n message: AXTranslator.get('validation.messages.phone'),\n },\n }\n }\n};\n\n\nexport type PartialFormConfig = Partial<AXFormConfig>;\n\nexport function formConfig(config: PartialFormConfig = {}): AXFormConfig {\n const result = {\n ...AXFormDefaultConfig,\n ...config,\n };\n return result\n}","import { MXBaseComponent } from '@acorex/components/common';\nimport {\n ChangeDetectionStrategy,\n Component,\n ViewEncapsulation,\n} from '@angular/core';\n\n@Component({\n selector: 'ax-form-field',\n template: `<ng-content></ng-content>`,\n styleUrls: ['./form-field.component.scss'],\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class AXFormFieldComponent extends MXBaseComponent {\n}\n","import { AXEvent, AXValueChangedEvent, MXBaseComponent } from '@acorex/components/common';\nimport {\n ChangeDetectionStrategy,\n Component,\n EventEmitter,\n Input,\n Output,\n ViewEncapsulation,\n} from '@angular/core';\nimport { Subscription } from 'rxjs';\nimport { AXFormValidationResult } from './validation.class';\n\n/**\n * Contains native event\n * @category Events\n */\nexport class AXFormValidationEvent extends AXEvent {\n result: AXFormValidationResult;\n}\n\n/**\n * Contains native event\n * @category Events\n */\nexport type AXFormUpdateOn = 'change' | 'blur' | 'submit';\nexport type AXFormMessageStyle = 'bottom' | 'float';\n\n/**\n * The Button is a component which detects user interaction and triggers a corresponding event\n *\n * @category Components\n */\n@Component({\n selector: 'ax-form',\n template:\n '<form (submit)=\"_handleSubmit($event)\" (reset)=\"_handleReset()\" class=\"ax-{{messageStyle}}-error\"><ng-content></ng-content></form>',\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class AXFormComponent extends MXBaseComponent {\n @Input()\n messageStyle: AXFormMessageStyle = 'bottom';\n\n @Output()\n onValidate: EventEmitter<AXFormValidationEvent> = new EventEmitter<AXFormValidationEvent>();\n\n @Output()\n updateOnChange: EventEmitter<AXFormUpdateOn> = new EventEmitter<AXFormUpdateOn>();\n\n private _updateOn: AXFormUpdateOn = 'blur';\n @Input()\n public get updateOn(): AXFormUpdateOn {\n return this._updateOn;\n }\n public set updateOn(v: AXFormUpdateOn) {\n this.setOption({\n name: 'updateOn',\n value: v,\n afterCallback: (oldValue?, newValue?) => {\n this._bindEvents();\n },\n });\n }\n\n @Input()\n validateInitValues = false;\n\n private _observer?: MutationObserver;\n private _subs: Subscription[] = [];\n\n protected _handleSubmit(e: SubmitEvent) {\n e.preventDefault();\n this.validate();\n }\n\n protected _handleReset() {\n this.clear();\n }\n\n private _getComponenets() {\n return Array.from(this.getHostElement()\n .querySelectorAll('[ax-form-input=\"true\"]'))\n .map((c) => (c as any).__axContext__)\n .filter((c) => c != null);\n }\n\n ngAfterViewInit(): void {\n if (this.validateInitValues) {\n this._validateInitValues();\n }\n this._bindEvents();\n\n // const config = { attributes: false, childList: true, subtree: true };\n // const callback = (mutationList, observer) => {\n // this._bindEvents();\n // };\n\n // // Create an observer instance linked to the callback function\n // if (typeof MutationObserver !== 'undefined') {\n // this._observer = new MutationObserver(callback);\n // }\n\n // this._observer.observe(this.getHostElement(), config);\n }\n\n private _bindEvents() {\n this._clearSubs();\n const widgets = this._getComponenets();\n //\n widgets.forEach((w) => {\n if (this.updateOn == 'change') {\n this._subs.push(\n w.onValueChanged?.subscribe((v: AXValueChangedEvent) => {\n if (v.isUserInteraction) w.validate();\n }),\n );\n } else if (this.updateOn == 'blur') {\n this._subs.push(\n w.onBlur?.subscribe((v) => {\n w.validate();\n }),\n );\n }\n });\n }\n\n private _clearSubs() {\n this._subs.forEach((c) => c?.unsubscribe());\n this._subs = [];\n }\n\n private _validateInitValues() {\n this._getComponenets()\n .filter((c) => c['value'])\n .forEach((c) => c.validate());\n }\n\n validate(...args: string[]): Promise<AXFormValidationResult> {\n const widgets = this._getComponenets();\n if (widgets.length === 0) {\n this._emitOnValidateEvent({ result: true });\n return Promise.resolve({ result: true });\n }\n //\n return new Promise<AXFormValidationResult>((resolve) => {\n Promise.all(\n widgets\n .filter((c) => args == null || args.length == 0 || args.includes(c.name))\n .map((c) => c.validate()),\n ).then((rules: any) => {\n const failed = rules.filter((c: any) => !c.result);\n if (failed.length) {\n this._emitOnValidateEvent({\n result: false,\n items: failed,\n });\n resolve({\n result: false,\n items: failed,\n });\n } else {\n this._emitOnValidateEvent({ result: true });\n resolve({ result: true });\n }\n });\n });\n }\n\n private _emitOnValidateEvent(e: AXFormValidationResult) {\n this.onValidate.emit({\n component: this,\n result: e,\n htmlElement: this.getHostElement(),\n });\n }\n\n clear() {\n const widgets = this._getComponenets();\n widgets.forEach((w) => {\n if (typeof w?.clear === 'function') w.clear(false);\n });\n }\n\n ngOnDestroy(): void {\n this._observer?.disconnect();\n this._clearSubs();\n }\n}\n","import { AXValuableComponent, MXBaseComponent } from '@acorex/components/common';\nimport { AXTranslator } from '@acorex/core/translation';\nimport {\n ChangeDetectionStrategy,\n Component,\n Inject,\n Input,\n OnInit,\n Optional,\n ViewEncapsulation,\n inject,\n} from '@angular/core';\nimport { AX_FORM_CONFIG } from './form.config';\nimport { AXValidationRule, AXValidationRuleResult, AXValidationRuleTypes } from './validation.class';\n\n@Component({\n selector: 'ax-validation-rule',\n template: '',\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None,\n})\nexport class AXValidationRuleComponent extends MXBaseComponent implements AXValidationRule, OnInit {\n private _config = inject(AX_FORM_CONFIG);\n\n @Input()\n rule: AXValidationRuleTypes = 'required';\n\n @Input()\n message: string;\n\n @Input()\n showMessage = true;\n\n @Input()\n value: any;\n\n @Input()\n enabled = true;\n\n ngOnInit() {\n super.ngOnInit();\n (this.getHostElement() as any).validate = this.validate.bind(this);\n }\n\n /**\n * @ignore\n */\n constructor(\n @Optional()\n @Inject(AXValuableComponent)\n private control: AXValuableComponent,\n ) {\n super();\n }\n\n validate(value: any): Promise<AXValidationRuleResult> {\n if (this.enabled === false) {\n return Promise.resolve({ result: true });\n }\n if (this.rule == 'custom') {\n const regRule = this._config.validation.rules[this.value];\n if (regRule) {\n return this._internalValidate(regRule.rule, value, this.message || regRule.message, regRule.value);\n }\n }\n return this._internalValidate(this.rule, value, this.message, this.value);\n }\n\n private _internalValidate(\n type: string,\n value?: any,\n message?: string,\n ruleValue?: any,\n ): Promise<AXValidationRuleResult> {\n return new Promise<AXValidationRuleResult>((resolve) => {\n switch (type) {\n case 'required':\n resolve({\n message: this.showMessage\n ? message || AXTranslator.get('validation.messages.required', { name: this.control?.name })\n : '',\n result: !this._isNullOrEmpty(value),\n });\n break;\n case 'regex':\n const ex = new RegExp(ruleValue);\n resolve({\n message: this.showMessage ? message || AXTranslator.get('validation.messages.regex') : '',\n result: ex.test(value),\n });\n break;\n case 'callback':\n if (typeof ruleValue === 'function') {\n const res: any = {};\n res.message = this.showMessage ? message : null;\n const val = ruleValue({ value, message });\n if (val instanceof Promise) {\n val\n .then((c) => {\n res.result = c;\n })\n .catch((c) => {\n res.result = false;\n })\n .finally(() => {\n resolve(res);\n });\n } else {\n res.result = val;\n resolve(res);\n }\n } else {\n resolve({\n message: AXTranslator.get('validation.messages.invalid-rull-fn'),\n result: false,\n });\n }\n break;\n default:\n resolve({\n message: AXTranslator.get('validation.messages.invalid-rull-name'),\n result: false,\n });\n }\n });\n }\n\n private _isNullOrEmpty(value: any): boolean {\n return (\n value === undefined ||\n value === null ||\n Number.isNaN(value) ||\n (Array.isArray(value) && value.length == 0) ||\n (typeof value === 'string' && value.trim().length === 0)\n );\n }\n}\n","import { AXTranslator } from \"@acorex/core/translation\";\nimport { ChangeDetectionStrategy, ChangeDetectorRef, Component, ElementRef, Inject, Input, Optional, ViewEncapsulation } from \"@angular/core\";\nimport { AXEvent, MXBaseComponent } from \"@acorex/components/common\";\nimport { AXToastService } from \"@acorex/components/toast\";\nimport { AXFormComponent } from \"./form.component\";\n\n\nexport type AXValidationSummaryDisplayMode = 'toast' | 'alert'\n\n@Component({\n selector: 'ax-validation-summary',\n template: `\n <ax-alert color=\"danger\" *ngIf=\"displayMode=='alert' && _content\" [timeOut]=\"_timeOut\" #a (onClosed)=\"_handleOnDismissed($event)\">\n <ax-icon></ax-icon>\n <ax-title>{{title}}</ax-title>\n <ax-content>\n <div [innerHTML]=\"_content\">\n </div>\n </ax-content>\n <ax-footer>\n <ax-suffix>\n <ax-button text=\"Dismiss\" (onClick)=\"a.close()\"></ax-button>\n </ax-suffix>\n </ax-footer>\n </ax-alert>\n `,\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None\n})\nexport class AXValidationSummaryComponent extends MXBaseComponent {\n\n protected _content?: string = '';\n\n private _title: string = AXTranslator.get('validation.messages.title');\n\n @Input()\n public get title(): string {\n return this._title;\n }\n public set title(v: string) {\n this._title = v;\n }\n\n\n @Input()\n displayMode: AXValidationSummaryDisplayMode = 'toast';\n\n @Input()\n timeOut?: number;\n\n @Input()\n autoHide = false;\n\n protected _timeOut: number;\n\n constructor(\n private _tosatService: AXToastService,\n @Optional()\n @Inject(AXFormComponent)\n private _parent: AXFormComponent\n ) {\n super();\n //\n _parent.onValidate.subscribe((c: any) => {\n if (!c.result.result) {\n this._content = `<ul>${c.result.items.map(c => `<li>${c.message}</li>`).join('')}</ul>`;\n this._timeOut = this.autoHide ? (this.timeOut ?? Math.max(c.result.items.length * 1500, 2000)) : 0;\n //\n if (this.displayMode == 'toast') {\n this._tosatService.show({\n color: 'danger',\n closeButton: true,\n timeOut: this._timeOut,\n content: this._content,\n title: this.title,\n location: \"bottom-center\"\n });\n }\n }\n else {\n this._content = '';\n }\n this.cdr.markForCheck();\n });\n }\n\n protected _handleOnDismissed(e: AXEvent) {\n this._content = '';\n }\n}","import { AXAlertModule } from '@acorex/components/alert';\nimport { AXButtonModule } from '@acorex/components/button';\nimport { AXDecoratorModule } from '@acorex/components/decorators';\nimport { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\nimport { AXFormFieldComponent } from './form-field.component';\nimport { AXFormComponent } from './form.component';\nimport { AXValidationRuleComponent } from './validation-rule.widget';\nimport { AXValidationSummaryComponent } from './validation-summary.component';\n\n@NgModule({\n declarations: [\n AXFormFieldComponent,\n AXFormComponent,\n AXValidationRuleComponent,\n AXValidationSummaryComponent,\n ],\n imports: [CommonModule, AXDecoratorModule, AXAlertModule, AXButtonModule],\n exports: [\n AXFormFieldComponent,\n AXFormComponent,\n AXValidationRuleComponent,\n AXValidationSummaryComponent,\n ],\n providers: [],\n})\nexport class AXFormModule {\n\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
|
1
|
+
{"version":3,"file":"acorex-components-form.mjs","sources":["../../../../libs/components/form/src/lib/form.config.ts","../../../../libs/components/form/src/lib/form-field.component.ts","../../../../libs/components/form/src/lib/form.component.ts","../../../../libs/components/form/src/lib/validation-rule.widget.ts","../../../../libs/components/form/src/lib/validation-summary.component.ts","../../../../libs/components/form/src/lib/form.module.ts","../../../../libs/components/form/src/acorex-components-form.ts"],"sourcesContent":["import { InjectionToken, inject } from '@angular/core';\nimport { AX_GLOBAL_CONFIG } from '@acorex/core/config';\nimport { set } from 'lodash-es';\nimport { AXValidationRuleTypes } from './validation.class';\nimport { AXTranslator } from '@acorex/core/translation';\n\n\nexport interface AXFormConfig {\n validation: {\n rules: {\n [key: string]: {\n rule: AXValidationRuleTypes,\n value: unknown,\n message: string\n }\n }\n },\n\n}\n\nexport const AX_FORM_CONFIG = new InjectionToken<AXFormConfig>(\n 'AX_FORM_CONFIG',\n {\n providedIn: 'root',\n factory: () => {\n const global = inject(AX_GLOBAL_CONFIG);\n set(global, \"form\", AX_FORM_CONFIG);\n return AXFormDefaultConfig;\n },\n }\n);\n\n\nexport const AXFormDefaultConfig: AXFormConfig = {\n validation: {\n rules: {\n email: {\n rule: 'regex',\n value:\n /^(([^<>()[\\]\\\\.,;:\\s@\"]+(\\.[^<>()[\\]\\\\.,;:\\s@\"]+)*)|(\".+\"))@((\\[[0-9]{1,3}\\.[0-9]{1,3}\\.[0-9]{1,3}\\.[0-9]{1,3}\\])|(([a-zA-Z\\-0-9]+\\.)+[a-zA-Z]{2,}))$/,\n message: AXTranslator.get('validation.messages.email'),\n },\n phone: {\n rule: 'regex',\n value: /^[+]*[(]{0,1}[0-9]{1,4}[)]{0,1}[-\\s\\./0-9]*$/,\n message: AXTranslator.get('validation.messages.phone'),\n },\n }\n }\n};\n\n\nexport type PartialFormConfig = Partial<AXFormConfig>;\n\nexport function formConfig(config: PartialFormConfig = {}): AXFormConfig {\n const result = {\n ...AXFormDefaultConfig,\n ...config,\n };\n return result\n}","import { MXBaseComponent } from '@acorex/components/common';\nimport {\n ChangeDetectionStrategy,\n Component,\n ViewEncapsulation,\n} from '@angular/core';\n\n@Component({\n selector: 'ax-form-field',\n template: `<ng-content></ng-content>`,\n styleUrls: ['./form-field.component.scss'],\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class AXFormFieldComponent extends MXBaseComponent {\n}\n","import { AXEvent, AXValueChangedEvent, MXBaseComponent } from '@acorex/components/common';\nimport {\n ChangeDetectionStrategy,\n Component,\n EventEmitter,\n Input,\n Output,\n ViewEncapsulation,\n} from '@angular/core';\nimport { Subscription } from 'rxjs';\nimport { AXFormValidationResult } from './validation.class';\n\n/**\n * Contains native event\n * @category Events\n */\nexport class AXFormValidationEvent extends AXEvent {\n result: AXFormValidationResult;\n}\n\n/**\n * Contains native event\n * @category Events\n */\nexport type AXFormUpdateOn = 'change' | 'blur' | 'submit';\nexport type AXFormMessageStyle = 'bottom' | 'float';\n\n/**\n * The Button is a component which detects user interaction and triggers a corresponding event\n *\n * @category Components\n */\n@Component({\n selector: 'ax-form',\n template:\n '<form (submit)=\"_handleSubmit($event)\" (reset)=\"_handleReset()\" class=\"ax-{{messageStyle}}-error\"><ng-content></ng-content></form>',\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class AXFormComponent extends MXBaseComponent {\n @Input()\n messageStyle: AXFormMessageStyle = 'bottom';\n\n @Output()\n onValidate: EventEmitter<AXFormValidationEvent> = new EventEmitter<AXFormValidationEvent>();\n\n @Output()\n updateOnChange: EventEmitter<AXFormUpdateOn> = new EventEmitter<AXFormUpdateOn>();\n\n private _updateOn: AXFormUpdateOn = 'blur';\n @Input()\n public get updateOn(): AXFormUpdateOn {\n return this._updateOn;\n }\n public set updateOn(v: AXFormUpdateOn) {\n this.setOption({\n name: 'updateOn',\n value: v,\n afterCallback: (oldValue?, newValue?) => {\n this._bindEvents();\n },\n });\n }\n\n @Input()\n validateInitValues = false;\n\n private _observer?: MutationObserver;\n private _subs: Subscription[] = [];\n\n protected _handleSubmit(e: SubmitEvent) {\n e.preventDefault();\n this.validate();\n }\n\n protected _handleReset() {\n this.clear();\n }\n\n private _getComponenets() {\n return Array.from(this.getHostElement()\n .querySelectorAll('[ax-form-input=\"true\"]'))\n .map((c) => (c as any).__axContext__)\n .filter((c) => c != null);\n }\n\n ngAfterViewInit(): void {\n if (this.validateInitValues) {\n this._validateInitValues();\n }\n this._bindEvents();\n\n // const config = { attributes: false, childList: true, subtree: true };\n // const callback = (mutationList, observer) => {\n // this._bindEvents();\n // };\n\n // // Create an observer instance linked to the callback function\n // if (typeof MutationObserver !== 'undefined') {\n // this._observer = new MutationObserver(callback);\n // }\n\n // this._observer.observe(this.getHostElement(), config);\n }\n\n private _bindEvents() {\n this._clearSubs();\n const widgets = this._getComponenets();\n //\n widgets.forEach((w) => {\n if (this.updateOn == 'change') {\n this._subs.push(\n w.onValueChanged?.subscribe((v: AXValueChangedEvent) => {\n if (v.isUserInteraction) w.validate();\n }),\n );\n } else if (this.updateOn == 'blur') {\n this._subs.push(\n w.onBlur?.subscribe((v) => {\n w.validate();\n }),\n );\n }\n });\n }\n\n private _clearSubs() {\n this._subs.forEach((c) => c?.unsubscribe());\n this._subs = [];\n }\n\n private _validateInitValues() {\n this._getComponenets()\n .filter((c) => c['value'])\n .forEach((c) => c.validate());\n }\n\n validate(...args: string[]): Promise<AXFormValidationResult> {\n const widgets = this._getComponenets();\n if (widgets.length === 0) {\n this._emitOnValidateEvent({ result: true });\n return Promise.resolve({ result: true });\n }\n //\n return new Promise<AXFormValidationResult>((resolve) => {\n Promise.all(\n widgets\n .filter((c) => args == null || args.length == 0 || args.includes(c.name))\n .map((c) => c.validate()),\n ).then((rules: any) => {\n const failed = rules.filter((c: any) => !c.result);\n if (failed.length) {\n this._emitOnValidateEvent({\n result: false,\n items: failed,\n });\n resolve({\n result: false,\n items: failed,\n });\n } else {\n this._emitOnValidateEvent({ result: true });\n resolve({ result: true });\n }\n });\n });\n }\n\n private _emitOnValidateEvent(e: AXFormValidationResult) {\n this.onValidate.emit({\n component: this,\n result: e,\n htmlElement: this.getHostElement(),\n });\n }\n\n clear() {\n const widgets = this._getComponenets();\n widgets.forEach((w) => {\n if (typeof w?.clear === 'function') w.clear(false);\n });\n }\n\n ngOnDestroy(): void {\n this._observer?.disconnect();\n this._clearSubs();\n }\n}\n","import { AXValuableComponent, MXBaseComponent } from '@acorex/components/common';\nimport { AXTranslator } from '@acorex/core/translation';\nimport {\n ChangeDetectionStrategy,\n Component,\n Inject,\n Input,\n OnInit,\n Optional,\n ViewEncapsulation,\n inject,\n} from '@angular/core';\nimport { AX_FORM_CONFIG } from './form.config';\nimport { AXValidationRule, AXValidationRuleResult, AXValidationRuleTypes } from './validation.class';\n\n@Component({\n selector: 'ax-validation-rule',\n template: '',\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None,\n})\nexport class AXValidationRuleComponent extends MXBaseComponent implements AXValidationRule, OnInit {\n private _config = inject(AX_FORM_CONFIG);\n\n @Input()\n rule: AXValidationRuleTypes = 'required';\n\n @Input()\n message: string;\n\n @Input()\n showMessage = true;\n\n @Input()\n value: any;\n\n @Input()\n enabled = true;\n\n ngOnInit() {\n super.ngOnInit();\n (this.getHostElement() as any).validate = this.validate.bind(this);\n }\n\n /**\n * @ignore\n */\n constructor(\n @Optional()\n @Inject(AXValuableComponent)\n private control: AXValuableComponent,\n ) {\n super();\n }\n\n validate(value: any): Promise<AXValidationRuleResult> {\n if (this.enabled === false) {\n return Promise.resolve({ result: true });\n }\n if (this.rule == 'custom') {\n const regRule = this._config.validation.rules[this.value];\n if (regRule) {\n return this._internalValidate(regRule.rule, value, this.message || regRule.message, regRule.value);\n }\n }\n return this._internalValidate(this.rule, value, this.message, this.value);\n }\n\n private _internalValidate(\n type: string,\n value?: any,\n message?: string,\n ruleValue?: any,\n ): Promise<AXValidationRuleResult> {\n return new Promise<AXValidationRuleResult>((resolve) => {\n switch (type) {\n case 'required':\n resolve({\n message: this.showMessage\n ? message || AXTranslator.get('validation.messages.required', { name: this.control?.name })\n : '',\n result: !this._isNullOrEmpty(value),\n });\n break;\n case 'regex':\n const ex = new RegExp(ruleValue);\n resolve({\n message: this.showMessage ? message || AXTranslator.get('validation.messages.regex') : '',\n result: ex.test(value),\n });\n break;\n case 'callback':\n if (typeof ruleValue === 'function') {\n const res: any = {};\n res.message = this.showMessage ? message : null;\n const val = ruleValue({ value, message });\n if (val instanceof Promise) {\n val\n .then((c) => {\n res.result = c;\n })\n .catch((c) => {\n res.result = false;\n })\n .finally(() => {\n resolve(res);\n });\n } else {\n res.result = val;\n resolve(res);\n }\n } else {\n resolve({\n message: AXTranslator.get('validation.messages.invalid-rull-fn'),\n result: false,\n });\n }\n break;\n default:\n resolve({\n message: AXTranslator.get('validation.messages.invalid-rull-name'),\n result: false,\n });\n }\n });\n }\n\n private _isNullOrEmpty(value: any): boolean {\n return (\n value === undefined ||\n value === null ||\n Number.isNaN(value) ||\n (Array.isArray(value) && value.length == 0) ||\n (typeof value === 'string' && value.trim().length === 0)\n );\n }\n}\n","import { AXTranslator } from \"@acorex/core/translation\";\nimport { ChangeDetectionStrategy, ChangeDetectorRef, Component, ElementRef, Inject, Input, Optional, ViewEncapsulation } from \"@angular/core\";\nimport { AXEvent, MXBaseComponent } from \"@acorex/components/common\";\nimport { AXToastService } from \"@acorex/components/toast\";\nimport { AXFormComponent } from \"./form.component\";\n\n\nexport type AXValidationSummaryDisplayMode = 'toast' | 'alert'\n\n@Component({\n selector: 'ax-validation-summary',\n template: `\n <ax-alert color=\"danger\" *ngIf=\"displayMode=='alert' && _content\" [timeOut]=\"_timeOut\" #a (onClosed)=\"_handleOnDismissed($event)\">\n <ax-icon></ax-icon>\n <ax-title>{{title}}</ax-title>\n <ax-content>\n <div [innerHTML]=\"_content\">\n </div>\n </ax-content>\n <ax-footer>\n <ax-suffix>\n <ax-button text=\"Dismiss\" (onClick)=\"a.close()\"></ax-button>\n </ax-suffix>\n </ax-footer>\n </ax-alert>\n `,\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None\n})\nexport class AXValidationSummaryComponent extends MXBaseComponent {\n\n protected _content?: string = '';\n\n private _title: string = AXTranslator.get('validation.messages.title');\n\n @Input()\n public get title(): string {\n return this._title;\n }\n public set title(v: string) {\n this._title = v;\n }\n\n\n @Input()\n displayMode: AXValidationSummaryDisplayMode = 'toast';\n\n @Input()\n timeOut?: number;\n\n @Input()\n autoHide = false;\n\n protected _timeOut: number;\n\n constructor(\n private _tosatService: AXToastService,\n @Optional()\n @Inject(AXFormComponent)\n private _parent: AXFormComponent\n ) {\n super();\n //\n _parent.onValidate.subscribe((c: any) => {\n if (!c.result.result) {\n this._content = `<ul>${c.result.items.map(c => `<li>${c.message}</li>`).join('')}</ul>`;\n this._timeOut = this.autoHide ? (this.timeOut ?? Math.max(c.result.items.length * 1500, 2000)) : 0;\n //\n if (this.displayMode == 'toast') {\n this._tosatService.show({\n color: 'danger',\n closeButton: true,\n timeOut: this._timeOut,\n content: this._content,\n title: this.title,\n location: \"bottom-center\"\n });\n }\n }\n else {\n this._content = '';\n }\n this.cdr.markForCheck();\n });\n }\n\n protected _handleOnDismissed(e: AXEvent) {\n this._content = '';\n }\n}","import { AXAlertModule } from '@acorex/components/alert';\nimport { AXButtonModule } from '@acorex/components/button';\nimport { AXDecoratorModule } from '@acorex/components/decorators';\nimport { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\nimport { AXFormFieldComponent } from './form-field.component';\nimport { AXFormComponent } from './form.component';\nimport { AXValidationRuleComponent } from './validation-rule.widget';\nimport { AXValidationSummaryComponent } from './validation-summary.component';\n\n@NgModule({\n declarations: [\n AXFormFieldComponent,\n AXFormComponent,\n AXValidationRuleComponent,\n AXValidationSummaryComponent,\n ],\n imports: [CommonModule, AXDecoratorModule, AXAlertModule, AXButtonModule],\n exports: [\n AXFormFieldComponent,\n AXFormComponent,\n AXValidationRuleComponent,\n AXValidationSummaryComponent,\n ],\n providers: [],\n})\nexport class AXFormModule {\n\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
|
@@ -32,13 +32,13 @@ class AXLabelComponent extends MXBaseComponent {
|
|
32
32
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.1.9", ngImport: i0, type: AXLabelComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
|
33
33
|
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.1.9", type: AXLabelComponent, selector: "ax-label", inputs: { required: "required" }, outputs: { requiredChange: "requiredChange" }, providers: [
|
34
34
|
{ provide: MXBaseComponent, useExisting: AXLabelComponent }
|
35
|
-
], usesInheritance: true, ngImport: i0, template: "<label [attr.for]=\"target\">\n <ng-content></ng-content>\n <span class=\"ax-state-required\" *ngIf=\"required\"> *</span>\n</label>", styles: ["ax-label label{display:block;font-weight:500;font-size:.875rem;cursor:inherit;margin-bottom:.
|
35
|
+
], usesInheritance: true, ngImport: i0, template: "<label [attr.for]=\"target\">\n <ng-content></ng-content>\n <span class=\"ax-state-required\" *ngIf=\"required\"> *</span>\n</label>", styles: ["ax-label label{display:block;font-weight:500;font-size:.875rem;cursor:inherit;margin-bottom:.5rem;color:rgba(var(--ax-color-text-default))}ax-label label .ax-state-required{color:rgba(var(--ax-color-danger-500))}\n"], dependencies: [{ kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
|
36
36
|
}
|
37
37
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.9", ngImport: i0, type: AXLabelComponent, decorators: [{
|
38
38
|
type: Component,
|
39
39
|
args: [{ selector: 'ax-label', changeDetection: ChangeDetectionStrategy.OnPush, encapsulation: ViewEncapsulation.None, providers: [
|
40
40
|
{ provide: MXBaseComponent, useExisting: AXLabelComponent }
|
41
|
-
], template: "<label [attr.for]=\"target\">\n <ng-content></ng-content>\n <span class=\"ax-state-required\" *ngIf=\"required\"> *</span>\n</label>", styles: ["ax-label label{display:block;font-weight:500;font-size:.875rem;cursor:inherit;margin-bottom:.
|
41
|
+
], template: "<label [attr.for]=\"target\">\n <ng-content></ng-content>\n <span class=\"ax-state-required\" *ngIf=\"required\"> *</span>\n</label>", styles: ["ax-label label{display:block;font-weight:500;font-size:.875rem;cursor:inherit;margin-bottom:.5rem;color:rgba(var(--ax-color-text-default))}ax-label label .ax-state-required{color:rgba(var(--ax-color-danger-500))}\n"] }]
|
42
42
|
}], propDecorators: { requiredChange: [{
|
43
43
|
type: Output
|
44
44
|
}], required: [{
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"acorex-components-label.mjs","sources":["../../../../libs/components/label/src/lib/label.component.ts","../../../../libs/components/label/src/lib/label.component.html","../../../../libs/components/label/src/lib/label.module.ts","../../../../libs/components/label/src/acorex-components-label.ts"],"sourcesContent":["import { MXBaseComponent } from '@acorex/components/common';\nimport {\n Component,\n ViewEncapsulation,\n ChangeDetectionStrategy,\n Input,\n Output,\n EventEmitter,\n} from '@angular/core';\n\n@Component({\n selector: 'ax-label',\n templateUrl: './label.component.html',\n styleUrls: ['./label.component.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None,\n providers: [\n { provide: MXBaseComponent, useExisting: AXLabelComponent }\n ]\n})\nexport class AXLabelComponent extends MXBaseComponent {\n\n @Output()\n requiredChange = new EventEmitter<boolean>();\n\n private _required: boolean = false;\n @Input()\n public get required(): boolean {\n return this._required;\n }\n public set required(v: boolean) {\n this.setOption({\n name: 'required',\n value: v,\n afterCallback: () => {\n this.cdr.markForCheck();\n },\n });\n }\n\n private _target: string;\n public get target(): string {\n return this._target;\n }\n public set target(v: string) {\n this._target = v;\n this.cdr.markForCheck();\n }\n}\n","<label [attr.for]=\"target\">\n <ng-content></ng-content>\n <span class=\"ax-state-required\" *ngIf=\"required\"> *</span>\n</label>","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { AXLabelComponent } from './label.component';\n\nconst COMPONENT = [AXLabelComponent];\nconst MODULES = [CommonModule];\n\n@NgModule({\n declarations: [...COMPONENT],\n imports: [...MODULES],\n exports: [...COMPONENT],\n providers: [],\n})\nexport class AXLabelModule { }","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":";;;;;;AAoBM,MAAO,gBAAiB,SAAQ,eAAe,CAAA;AAVrD,IAAA,WAAA,GAAA;;AAaE,QAAA,IAAA,CAAA,cAAc,GAAG,IAAI,YAAY,EAAW,CAAC;QAErC,IAAS,CAAA,SAAA,GAAY,KAAK,CAAC;AAuBpC,KAAA;AAtBC,IAAA,IACW,QAAQ,GAAA;QACjB,OAAO,IAAI,CAAC,SAAS,CAAC;KACvB;IACD,IAAW,QAAQ,CAAC,CAAU,EAAA;QAC5B,IAAI,CAAC,SAAS,CAAC;AACb,YAAA,IAAI,EAAE,UAAU;AAChB,YAAA,KAAK,EAAE,CAAC;YACR,aAAa,EAAE,MAAK;AAClB,gBAAA,IAAI,CAAC,GAAG,CAAC,YAAY,EAAE,CAAC;aACzB;AACF,SAAA,CAAC,CAAC;KACJ;AAGD,IAAA,IAAW,MAAM,GAAA;QACf,OAAO,IAAI,CAAC,OAAO,CAAC;KACrB;IACD,IAAW,MAAM,CAAC,CAAS,EAAA;AACzB,QAAA,IAAI,CAAC,OAAO,GAAG,CAAC,CAAC;AACjB,QAAA,IAAI,CAAC,GAAG,CAAC,YAAY,EAAE,CAAC;KACzB;8GA3BU,gBAAgB,EAAA,IAAA,EAAA,IAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA,EAAA;AAAhB,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,gBAAgB,EAJhB,QAAA,EAAA,UAAA,EAAA,MAAA,EAAA,EAAA,QAAA,EAAA,UAAA,EAAA,EAAA,OAAA,EAAA,EAAA,cAAA,EAAA,gBAAA,EAAA,EAAA,SAAA,EAAA;AACT,YAAA,EAAE,OAAO,EAAE,eAAe,EAAE,WAAW,EAAE,gBAAgB,EAAE;AAC5D,SAAA,EAAA,eAAA,EAAA,IAAA,EAAA,QAAA,EAAA,EAAA,EAAA,QAAA,EClBH,6IAGQ,EAAA,MAAA,EAAA,CAAA,
|
1
|
+
{"version":3,"file":"acorex-components-label.mjs","sources":["../../../../libs/components/label/src/lib/label.component.ts","../../../../libs/components/label/src/lib/label.component.html","../../../../libs/components/label/src/lib/label.module.ts","../../../../libs/components/label/src/acorex-components-label.ts"],"sourcesContent":["import { MXBaseComponent } from '@acorex/components/common';\nimport {\n Component,\n ViewEncapsulation,\n ChangeDetectionStrategy,\n Input,\n Output,\n EventEmitter,\n} from '@angular/core';\n\n@Component({\n selector: 'ax-label',\n templateUrl: './label.component.html',\n styleUrls: ['./label.component.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None,\n providers: [\n { provide: MXBaseComponent, useExisting: AXLabelComponent }\n ]\n})\nexport class AXLabelComponent extends MXBaseComponent {\n\n @Output()\n requiredChange = new EventEmitter<boolean>();\n\n private _required: boolean = false;\n @Input()\n public get required(): boolean {\n return this._required;\n }\n public set required(v: boolean) {\n this.setOption({\n name: 'required',\n value: v,\n afterCallback: () => {\n this.cdr.markForCheck();\n },\n });\n }\n\n private _target: string;\n public get target(): string {\n return this._target;\n }\n public set target(v: string) {\n this._target = v;\n this.cdr.markForCheck();\n }\n}\n","<label [attr.for]=\"target\">\n <ng-content></ng-content>\n <span class=\"ax-state-required\" *ngIf=\"required\"> *</span>\n</label>","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { AXLabelComponent } from './label.component';\n\nconst COMPONENT = [AXLabelComponent];\nconst MODULES = [CommonModule];\n\n@NgModule({\n declarations: [...COMPONENT],\n imports: [...MODULES],\n exports: [...COMPONENT],\n providers: [],\n})\nexport class AXLabelModule { }","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
|