@acorex/components 6.0.16 → 6.0.17
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/alert/src/alert.component.d.ts +1 -1
- package/avatar/src/avatar.component.d.ts +6 -9
- package/badge/src/badge.component.d.ts +1 -1
- package/breadcrumbs/src/breadcrumbs-item.component.d.ts +4 -4
- package/button/src/button-group.component.d.ts +4 -4
- package/button/src/button-item.component.d.ts +4 -4
- package/color-picker/src/color-picker.component.d.ts +14 -14
- package/common/src/auto-focus.directive.d.ts +2 -1
- package/common/src/events.class.d.ts +1 -1
- package/date-picker/src/datepicker.component.d.ts +11 -11
- package/decorators/public-api.d.ts +1 -0
- package/decorators/src/decorators.module.d.ts +3 -2
- package/decorators/src/text.component.d.ts +9 -0
- package/dialog/src/dialog.service.d.ts +3 -1
- package/dropdown/src/dropdown-panel.component.d.ts +1 -0
- package/dropdown/src/dropdown.module.d.ts +7 -5
- package/esm2020/avatar/src/avatar.component.mjs +14 -21
- package/esm2020/badge/src/badge.component.mjs +3 -3
- package/esm2020/button/src/button-item.component.mjs +3 -3
- package/esm2020/calendar/src/calendar.component.mjs +5 -2
- package/esm2020/collapse/src/collapse.component.mjs +3 -3
- package/esm2020/common/src/auto-focus.directive.mjs +7 -3
- package/esm2020/common/src/events.class.mjs +1 -1
- package/esm2020/decorators/public-api.mjs +2 -1
- package/esm2020/decorators/src/decorators.module.mjs +8 -4
- package/esm2020/decorators/src/icon.component.mjs +3 -2
- package/esm2020/decorators/src/text.component.mjs +21 -0
- package/esm2020/dialog/src/dialog.class.mjs +1 -1
- package/esm2020/dialog/src/dialog.component.mjs +1 -1
- package/esm2020/dialog/src/dialog.service.mjs +11 -7
- package/esm2020/dropdown/src/dropdown-panel.component.mjs +14 -3
- package/esm2020/dropdown/src/dropdown.module.mjs +6 -4
- package/esm2020/image/src/image.component.mjs +36 -9
- package/esm2020/menu/src/menu.component.mjs +5 -3
- package/esm2020/number-box/src/number-box.component.mjs +10 -4
- package/esm2020/password-box/src/password-box.component.mjs +11 -5
- package/esm2020/popover/src/popover.component.mjs +9 -18
- package/esm2020/popup/src/popup.component.mjs +14 -6
- package/esm2020/popup/src/popup.module.mjs +4 -3
- package/esm2020/popup/src/popup.service.mjs +8 -4
- package/esm2020/textarea/src/textarea.component.mjs +11 -5
- package/esm2020/textbox/src/textbox.component.mjs +31 -9
- package/esm2020/time-box/src/time-box.component.mjs +10 -4
- package/esm2020/uploader/src/uploader.component.mjs +17 -4
- package/fesm2015/acorex-components-avatar.mjs +13 -20
- package/fesm2015/acorex-components-avatar.mjs.map +1 -1
- package/fesm2015/acorex-components-badge.mjs +2 -2
- package/fesm2015/acorex-components-badge.mjs.map +1 -1
- package/fesm2015/acorex-components-button.mjs +2 -2
- package/fesm2015/acorex-components-button.mjs.map +1 -1
- package/fesm2015/acorex-components-calendar.mjs +3 -1
- package/fesm2015/acorex-components-calendar.mjs.map +1 -1
- package/fesm2015/acorex-components-collapse.mjs +2 -2
- package/fesm2015/acorex-components-collapse.mjs.map +1 -1
- package/fesm2015/acorex-components-common.mjs +6 -2
- package/fesm2015/acorex-components-common.mjs.map +1 -1
- package/fesm2015/acorex-components-decorators.mjs +27 -5
- package/fesm2015/acorex-components-decorators.mjs.map +1 -1
- package/fesm2015/acorex-components-dialog.mjs +11 -7
- package/fesm2015/acorex-components-dialog.mjs.map +1 -1
- package/fesm2015/acorex-components-dropdown.mjs +18 -5
- package/fesm2015/acorex-components-dropdown.mjs.map +1 -1
- package/fesm2015/acorex-components-image.mjs +35 -8
- package/fesm2015/acorex-components-image.mjs.map +1 -1
- package/fesm2015/acorex-components-menu.mjs +5 -3
- package/fesm2015/acorex-components-menu.mjs.map +1 -1
- package/fesm2015/acorex-components-number-box.mjs +10 -4
- package/fesm2015/acorex-components-number-box.mjs.map +1 -1
- package/fesm2015/acorex-components-password-box.mjs +10 -4
- package/fesm2015/acorex-components-password-box.mjs.map +1 -1
- package/fesm2015/acorex-components-popover.mjs +9 -18
- package/fesm2015/acorex-components-popover.mjs.map +1 -1
- package/fesm2015/acorex-components-popup.mjs +23 -11
- package/fesm2015/acorex-components-popup.mjs.map +1 -1
- package/fesm2015/acorex-components-textarea.mjs +10 -4
- package/fesm2015/acorex-components-textarea.mjs.map +1 -1
- package/fesm2015/acorex-components-textbox.mjs +30 -8
- package/fesm2015/acorex-components-textbox.mjs.map +1 -1
- package/fesm2015/acorex-components-time-box.mjs +10 -4
- package/fesm2015/acorex-components-time-box.mjs.map +1 -1
- package/fesm2015/acorex-components-uploader.mjs +16 -3
- package/fesm2015/acorex-components-uploader.mjs.map +1 -1
- package/fesm2020/acorex-components-avatar.mjs +13 -20
- package/fesm2020/acorex-components-avatar.mjs.map +1 -1
- package/fesm2020/acorex-components-badge.mjs +2 -2
- package/fesm2020/acorex-components-badge.mjs.map +1 -1
- package/fesm2020/acorex-components-button.mjs +2 -2
- package/fesm2020/acorex-components-button.mjs.map +1 -1
- package/fesm2020/acorex-components-calendar.mjs +3 -1
- package/fesm2020/acorex-components-calendar.mjs.map +1 -1
- package/fesm2020/acorex-components-collapse.mjs +2 -2
- package/fesm2020/acorex-components-collapse.mjs.map +1 -1
- package/fesm2020/acorex-components-common.mjs +6 -2
- package/fesm2020/acorex-components-common.mjs.map +1 -1
- package/fesm2020/acorex-components-decorators.mjs +27 -5
- package/fesm2020/acorex-components-decorators.mjs.map +1 -1
- package/fesm2020/acorex-components-dialog.mjs +11 -7
- package/fesm2020/acorex-components-dialog.mjs.map +1 -1
- package/fesm2020/acorex-components-dropdown.mjs +18 -5
- package/fesm2020/acorex-components-dropdown.mjs.map +1 -1
- package/fesm2020/acorex-components-image.mjs +35 -8
- package/fesm2020/acorex-components-image.mjs.map +1 -1
- package/fesm2020/acorex-components-menu.mjs +5 -3
- package/fesm2020/acorex-components-menu.mjs.map +1 -1
- package/fesm2020/acorex-components-number-box.mjs +10 -4
- package/fesm2020/acorex-components-number-box.mjs.map +1 -1
- package/fesm2020/acorex-components-password-box.mjs +10 -4
- package/fesm2020/acorex-components-password-box.mjs.map +1 -1
- package/fesm2020/acorex-components-popover.mjs +8 -17
- package/fesm2020/acorex-components-popover.mjs.map +1 -1
- package/fesm2020/acorex-components-popup.mjs +23 -11
- package/fesm2020/acorex-components-popup.mjs.map +1 -1
- package/fesm2020/acorex-components-textarea.mjs +10 -4
- package/fesm2020/acorex-components-textarea.mjs.map +1 -1
- package/fesm2020/acorex-components-textbox.mjs +30 -8
- package/fesm2020/acorex-components-textbox.mjs.map +1 -1
- package/fesm2020/acorex-components-time-box.mjs +10 -4
- package/fesm2020/acorex-components-time-box.mjs.map +1 -1
- package/fesm2020/acorex-components-uploader.mjs +16 -3
- package/fesm2020/acorex-components-uploader.mjs.map +1 -1
- package/image/src/image.component.d.ts +16 -7
- package/menu/src/menu.component.d.ts +1 -0
- package/mixin/src/base-components.class.d.ts +1 -1
- package/mixin/src/base-menu-mixin.class.d.ts +4 -4
- package/mixin/src/button-mixin.class.d.ts +1 -1
- package/mixin/src/clickable-mixin.class.d.ts +1 -1
- package/mixin/src/color-look-mixing.class.d.ts +1 -1
- package/mixin/src/datalist-component.class.d.ts +9 -9
- package/mixin/src/dropdown-mixin.class.d.ts +1 -1
- package/mixin/src/interactive-mixin.class.d.ts +3 -3
- package/mixin/src/loading-mixin.class.d.ts +1 -1
- package/mixin/src/mixin.class.d.ts +42 -42
- package/mixin/src/page-component.class.d.ts +1 -1
- package/mixin/src/selection-component.class.d.ts +1 -1
- package/mixin/src/sizable-mixin.class.d.ts +1 -1
- package/mixin/src/textbox-mixin.class.d.ts +3 -3
- package/mixin/src/value-mixin.class.d.ts +7 -7
- package/number-box/src/number-box.component.d.ts +2 -0
- package/package.json +1 -1
- package/password-box/src/password-box.component.d.ts +2 -0
- package/popover/src/popover.component.d.ts +2 -2
- package/popup/src/popup.module.d.ts +7 -6
- package/tabs/src/tab-item.component.d.ts +1 -1
- package/textarea/src/textarea.component.d.ts +2 -0
- package/textbox/src/textbox.component.d.ts +2 -0
- package/time-box/src/time-box.component.d.ts +2 -0
- package/uploader/src/uploader.component.d.ts +4 -0
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"acorex-components-dialog.mjs","sources":["../../../../projects/acorex/components/dialog/src/dialog.component.ts","../../../../projects/acorex/components/dialog/src/dialog.component.html","../../../../projects/acorex/components/dialog/src/dialog.module.ts","../../../../projects/acorex/components/dialog/src/dialog.service.ts","../../../../projects/acorex/components/dialog/acorex-components-dialog.ts"],"sourcesContent":["import {\r\n Component,\r\n ViewEncapsulation,\r\n ChangeDetectionStrategy,\r\n ElementRef,\r\n ChangeDetectorRef,\r\n} from '@angular/core';\r\nimport { AXButtonItem } from '@acorex/components/button';\r\nimport { AXDialogOptions } from './dialog.class';\r\nimport { AXBaseComponentMixin } from '@acorex/components/mixin';\r\n\r\n@Component({\r\n selector: 'ax-dialog',\r\n templateUrl: './dialog.component.html',\r\n changeDetection: ChangeDetectionStrategy.OnPush,\r\n encapsulation: ViewEncapsulation.None,\r\n})\r\nexport class AXDialogComponent extends AXBaseComponentMixin {\r\n constructor(elementRef: ElementRef, cdr: ChangeDetectorRef) {\r\n super(elementRef, cdr);\r\n }\r\n\r\n options: AXDialogOptions | any;\r\n _icon: string;\r\n close: () => void;\r\n\r\n onInit() {\r\n switch (this.options.type) {\r\n case 'success':\r\n this._icon = 'ax-ic ax-ic-check';\r\n break;\r\n case 'danger':\r\n this._icon = 'ax-ic ax-ic-error-filled';\r\n break;\r\n case 'warning':\r\n this._icon = 'ax-ic ax-ic-warning-filled';\r\n break;\r\n default:\r\n this._icon = 'ax-ic ax-ic-info-filled';\r\n break;\r\n }\r\n }\r\n\r\n _handleButtonClick(button: AXButtonItem) {\r\n if (button.onClick) {\r\n button.onClick();\r\n }\r\n }\r\n\r\n _hasAutoFocus(button: AXButtonItem) {\r\n const result =\r\n button.autofocus ||\r\n this.options.buttons.length == 1 ||\r\n ((button.type == 'submit' || button.type == 'cancel') &&\r\n !this.options.buttons.some((c) => c.autofocus));\r\n if (result) {\r\n button.autofocus = true;\r\n }\r\n return result;\r\n }\r\n}\r\n","<div class=\"ax-popup-wrapper\" aria-modal=\"true\" [cdkTrapFocus]=\"true\">\r\n <div class=\"ax-dialog ax-{{options.type}}-default\" cdkDrag role=\"alert\" cdkDragHandle>\r\n <div class=\"ax-dialog-icon-side\">\r\n <i class=\"ax-dialog-icon {{_icon}}\"></i>\r\n </div>\r\n <div class=\"ax-dialog-content-side\">\r\n <div class=\"ax-dialog-title\">{{options.title}}</div>\r\n <div class=\"ax-dialog-content\">{{options.content}}</div>\r\n </div>\r\n <div class=\"ax-dialog-dismiss-icon\">\r\n <i class=\"ax-ic ax-ic-close\" *ngIf=\"options.dismissible\" (click)=\"close()\"></i>\r\n </div>\r\n <ax-footer>\r\n <ng-container *ngFor=\"let button of options.buttons;let i=index\">\r\n <ax-button [text]=\"button.text\" [axAutoFocus]=\"_hasAutoFocus(button)\" [hotkey]=\"button.hotkey\"\r\n (onClick)=\"_handleButtonClick(button)\" [class]=\"button.cssClass\" [look]=\"button.look\"\r\n [color]=\"button.color\"></ax-button>\r\n </ng-container>\r\n </ax-footer>\r\n </div>\r\n</div>","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { A11yModule } from '@angular/cdk/a11y';\r\nimport { DragDropModule } from '@angular/cdk/drag-drop';\r\nimport { AXButtonModule } from '@acorex/components/button';\r\nimport { AXPageModule } from '@acorex/components/page';\r\nimport { AXDecoratorModule } from '@acorex/components/decorators';\r\nimport { AXCommonModule } from '@acorex/components/common';\r\nimport { AXDialogComponent } from './dialog.component';\r\n\r\nconst COMPONENT = [AXDialogComponent];\r\nconst MODULES = [CommonModule,AXCommonModule, DragDropModule, A11yModule, AXButtonModule, AXPageModule, AXDecoratorModule];\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 AXDialogModule { }\r\n","import { AXTranslator } from '@acorex/core/translation';\r\nimport { Overlay, ScrollStrategyOptions } from '@angular/cdk/overlay';\r\nimport { ComponentPortal } from '@angular/cdk/portal';\r\nimport { Injectable, Injector } from '@angular/core';\r\nimport { AXStyleColorType } from '@acorex/components/common';\r\nimport {\r\n AXDialogOptions,\r\n AXDialogRef,\r\n} from './dialog.class';\r\nimport { AXDialogComponent } from './dialog.component';\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@Injectable({ providedIn: 'root' })\r\nexport class AXDialogService {\r\n\r\n /**\r\n * @ignore\r\n */\r\n constructor(\r\n private overlayService: Overlay,\r\n private parentInjector: Injector,\r\n private sso: ScrollStrategyOptions\r\n ) { }\r\n\r\n /**\r\n * Show an alert box with 'Okay' button.\r\n */\r\n alert(title: string, content: string, type: AXStyleColorType = 'primary'): Promise<void> {\r\n return new Promise((resolve) => {\r\n const popup = this.open({\r\n title,\r\n type: type,\r\n content,\r\n buttons: [\r\n {\r\n name: 'confirm',\r\n text: AXTranslator.get('common.okay'),\r\n color: type,\r\n onClick: () => {\r\n popup.close();\r\n if (resolve) {\r\n resolve();\r\n }\r\n },\r\n },\r\n ],\r\n });\r\n });\r\n }\r\n\r\n /**\r\n * Show a confirm box with 'Okay' & 'Cancel' buttons.\r\n */\r\n confirm(title: string, content: string, type: AXStyleColorType = 'primary'): Promise<void> {\r\n return new Promise((resolve, reject) => {\r\n const popup = this.open({\r\n title,\r\n content,\r\n type,\r\n buttons: [\r\n {\r\n name: 'confirm',\r\n text: AXTranslator.get('common.okay'),\r\n color: type,\r\n onClick: () => {\r\n popup.close();\r\n if (resolve) {\r\n resolve();\r\n }\r\n },\r\n type: 'submit',\r\n },\r\n {\r\n name: 'cancel',\r\n text: AXTranslator.get('common.cancel'),\r\n color: `light`,\r\n onClick: () => {\r\n popup.close();\r\n if (reject) {\r\n reject();\r\n }\r\n },\r\n hotkey: {\r\n \"Escape\": () => {\r\n popup.close();\r\n if (reject) {\r\n reject();\r\n }\r\n }\r\n },\r\n type: 'cancel',\r\n },\r\n ],\r\n });\r\n });\r\n }\r\n\r\n /**\r\n * Show a custom dialog box.\r\n */\r\n show(options: AXDialogOptions): Promise<{ name: string }> {\r\n return new Promise((resolve) => {\r\n const popup = this.open(options);\r\n options.buttons?.forEach((b) => {\r\n const orginalClick = b.onClick;\r\n b.onClick = () => {\r\n popup.close();\r\n if (orginalClick) {\r\n orginalClick();\r\n }\r\n if (resolve) {\r\n resolve({ name: b.name! });\r\n }\r\n };\r\n });\r\n });\r\n }\r\n\r\n private open(options: AXDialogOptions): AXDialogRef {\r\n let positionStrategy = this.overlayService\r\n .position()\r\n .global()\r\n .centerHorizontally()\r\n .centerVertically();\r\n const overlayRef = this.overlayService.create({\r\n positionStrategy,\r\n hasBackdrop: true,\r\n scrollStrategy: this.sso.block(),\r\n panelClass: ['ax-animate-bounceIn', 'ax-animate-faster'],\r\n });\r\n const dialogPortal = new ComponentPortal(\r\n AXDialogComponent,\r\n null,\r\n this.parentInjector\r\n );\r\n const host = overlayRef.attach(dialogPortal);\r\n if (host.instance) {\r\n Object.assign(host.instance, {\r\n options: options,\r\n close: () => {\r\n overlayRef.dispose();\r\n },\r\n });\r\n setTimeout(() => {\r\n host.changeDetectorRef.detectChanges();\r\n }, 0);\r\n }\r\n\r\n return {\r\n close: () => {\r\n host.instance.close();\r\n },\r\n };\r\n }\r\n}\r\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":["i1"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"acorex-components-dialog.mjs","sources":["../../../../projects/acorex/components/dialog/src/dialog.component.ts","../../../../projects/acorex/components/dialog/src/dialog.component.html","../../../../projects/acorex/components/dialog/src/dialog.module.ts","../../../../projects/acorex/components/dialog/src/dialog.service.ts","../../../../projects/acorex/components/dialog/acorex-components-dialog.ts"],"sourcesContent":["import {\r\n Component,\r\n ViewEncapsulation,\r\n ChangeDetectionStrategy,\r\n ElementRef,\r\n ChangeDetectorRef,\r\n} from '@angular/core';\r\nimport { AXButtonItem } from '@acorex/components/button';\r\nimport { AXDialogOptions } from './dialog.class';\r\nimport { AXBaseComponentMixin } from '@acorex/components/mixin';\r\n\r\n@Component({\r\n selector: 'ax-dialog',\r\n templateUrl: './dialog.component.html',\r\n changeDetection: ChangeDetectionStrategy.OnPush,\r\n encapsulation: ViewEncapsulation.None,\r\n})\r\nexport class AXDialogComponent extends AXBaseComponentMixin {\r\n constructor(elementRef: ElementRef, cdr: ChangeDetectorRef) {\r\n super(elementRef, cdr);\r\n }\r\n\r\n options: AXDialogOptions | any;\r\n _icon: string;\r\n close: () => void;\r\n\r\n onInit() {\r\n switch (this.options.type) {\r\n case 'success':\r\n this._icon = 'ax-ic ax-ic-check';\r\n break;\r\n case 'danger':\r\n this._icon = 'ax-ic ax-ic-error-filled';\r\n break;\r\n case 'warning':\r\n this._icon = 'ax-ic ax-ic-warning-filled';\r\n break;\r\n default:\r\n this._icon = 'ax-ic ax-ic-info-filled';\r\n break;\r\n }\r\n }\r\n\r\n _handleButtonClick(button: AXButtonItem) {\r\n if (button.onClick) {\r\n button.onClick();\r\n }\r\n }\r\n\r\n _hasAutoFocus(button: AXButtonItem) {\r\n const result =\r\n button.autofocus ||\r\n this.options.buttons.length == 1 ||\r\n ((button.type == 'submit' || button.type == 'cancel') &&\r\n !this.options.buttons.some((c) => c.autofocus));\r\n if (result) {\r\n button.autofocus = true;\r\n }\r\n return result;\r\n }\r\n}\r\n","<div class=\"ax-popup-wrapper\" aria-modal=\"true\" [cdkTrapFocus]=\"true\">\r\n <div class=\"ax-dialog ax-{{options.type}}-default\" cdkDrag role=\"alert\" cdkDragHandle>\r\n <div class=\"ax-dialog-icon-side\">\r\n <i class=\"ax-dialog-icon {{_icon}}\"></i>\r\n </div>\r\n <div class=\"ax-dialog-content-side\">\r\n <div class=\"ax-dialog-title\">{{options.title}}</div>\r\n <div class=\"ax-dialog-content\">{{options.content}}</div>\r\n </div>\r\n <div class=\"ax-dialog-dismiss-icon\">\r\n <i class=\"ax-ic ax-ic-close\" *ngIf=\"options.dismissible\" (click)=\"close()\"></i>\r\n </div>\r\n <ax-footer>\r\n <ng-container *ngFor=\"let button of options.buttons;let i=index\">\r\n <ax-button [text]=\"button.text\" [axAutoFocus]=\"_hasAutoFocus(button)\" [hotkey]=\"button.hotkey\"\r\n (onClick)=\"_handleButtonClick(button)\" [class]=\"button.cssClass\" [look]=\"button.look\"\r\n [color]=\"button.color\"></ax-button>\r\n </ng-container>\r\n </ax-footer>\r\n </div>\r\n</div>","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { A11yModule } from '@angular/cdk/a11y';\r\nimport { DragDropModule } from '@angular/cdk/drag-drop';\r\nimport { AXButtonModule } from '@acorex/components/button';\r\nimport { AXPageModule } from '@acorex/components/page';\r\nimport { AXDecoratorModule } from '@acorex/components/decorators';\r\nimport { AXCommonModule } from '@acorex/components/common';\r\nimport { AXDialogComponent } from './dialog.component';\r\n\r\nconst COMPONENT = [AXDialogComponent];\r\nconst MODULES = [CommonModule,AXCommonModule, DragDropModule, A11yModule, AXButtonModule, AXPageModule, AXDecoratorModule];\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 AXDialogModule { }\r\n","import { AXTranslator } from '@acorex/core/translation';\r\nimport { Overlay, ScrollStrategyOptions } from '@angular/cdk/overlay';\r\nimport { ComponentPortal } from '@angular/cdk/portal';\r\nimport { Injectable, Injector } from '@angular/core';\r\nimport { AXStyleColorType } from '@acorex/components/common';\r\nimport {\r\n AXDialogOptions,\r\n AXDialogRef,\r\n} from './dialog.class';\r\nimport { AXDialogComponent } from './dialog.component';\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@Injectable({ providedIn: 'root' })\r\nexport class AXDialogService {\r\n\r\n /**\r\n * @ignore\r\n */\r\n constructor(\r\n private overlayService: Overlay,\r\n private parentInjector: Injector,\r\n private sso: ScrollStrategyOptions\r\n ) { }\r\n\r\n /**\r\n * Show an alert box with 'Okay' button.\r\n */\r\n alert(title: string, content: string, type: AXStyleColorType = 'primary'): Promise<void> {\r\n return new Promise((resolve) => {\r\n const popup = this.open({\r\n title,\r\n type: type,\r\n content,\r\n buttons: [\r\n {\r\n name: 'confirm',\r\n text: AXTranslator.get('common.okay'),\r\n color: type,\r\n onClick: () => {\r\n popup.close();\r\n if (resolve) {\r\n resolve();\r\n }\r\n },\r\n },\r\n ],\r\n });\r\n });\r\n }\r\n\r\n /**\r\n * Show a confirm box with 'Okay' & 'Cancel' buttons.\r\n */\r\n confirm(title: string, content: string, type: AXStyleColorType = 'primary'): Promise<{ result: boolean }> {\r\n return new Promise<{ result: boolean }>((resolve) => {\r\n const popup = this.open({\r\n title,\r\n content,\r\n type,\r\n buttons: [\r\n {\r\n name: 'confirm',\r\n text: AXTranslator.get('common.okay'),\r\n color: type,\r\n onClick: () => {\r\n popup.close();\r\n if (resolve) {\r\n resolve({ result: true });\r\n }\r\n },\r\n type: 'submit',\r\n },\r\n {\r\n name: 'cancel',\r\n text: AXTranslator.get('common.cancel'),\r\n color: `light`,\r\n onClick: () => {\r\n popup.close();\r\n if (resolve) {\r\n resolve({ result: false });\r\n }\r\n },\r\n hotkey: {\r\n \"Escape\": () => {\r\n popup.close();\r\n if (resolve) {\r\n resolve({ result: false });\r\n }\r\n }\r\n },\r\n type: 'cancel',\r\n },\r\n ],\r\n });\r\n });\r\n }\r\n\r\n /**\r\n * Show a custom dialog box.\r\n */\r\n show(options: AXDialogOptions): Promise<{ name: string }> {\r\n return new Promise((resolve) => {\r\n const popup = this.open(options);\r\n options.buttons?.forEach((b) => {\r\n const orginalClick = b.onClick;\r\n b.onClick = () => {\r\n popup.close();\r\n if (orginalClick) {\r\n orginalClick();\r\n }\r\n if (resolve) {\r\n resolve({ name: b.name! });\r\n }\r\n };\r\n });\r\n });\r\n }\r\n\r\n private open(options: AXDialogOptions): AXDialogRef {\r\n let positionStrategy = this.overlayService\r\n .position()\r\n .global()\r\n .centerHorizontally()\r\n .centerVertically();\r\n\r\n const lastActiveElement = document.activeElement as HTMLElement;\r\n const overlayRef = this.overlayService.create({\r\n positionStrategy,\r\n hasBackdrop: true,\r\n scrollStrategy: this.sso.block(),\r\n panelClass: ['ax-animate-bounceIn', 'ax-animate-faster'],\r\n });\r\n const dialogPortal = new ComponentPortal(\r\n AXDialogComponent,\r\n null,\r\n this.parentInjector\r\n );\r\n const host = overlayRef.attach(dialogPortal);\r\n if (host.instance) {\r\n Object.assign(host.instance, {\r\n options: options,\r\n close: () => {\r\n overlayRef.dispose();\r\n if (lastActiveElement?.focus) {\r\n lastActiveElement.focus();\r\n }\r\n },\r\n });\r\n setTimeout(() => {\r\n host.changeDetectorRef.detectChanges();\r\n }, 0);\r\n }\r\n\r\n return {\r\n close: () => {\r\n host.instance.close();\r\n },\r\n };\r\n }\r\n}\r\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":["i1"],"mappings":";;;;;;;;;;;;;;;;;;;;AAiBM,MAAO,iBAAkB,SAAQ,oBAAoB,CAAA;IACzD,WAAY,CAAA,UAAsB,EAAE,GAAsB,EAAA;AACxD,QAAA,KAAK,CAAC,UAAU,EAAE,GAAG,CAAC,CAAC;KACxB;IAMD,MAAM,GAAA;AACJ,QAAA,QAAQ,IAAI,CAAC,OAAO,CAAC,IAAI;AACvB,YAAA,KAAK,SAAS;AACZ,gBAAA,IAAI,CAAC,KAAK,GAAG,mBAAmB,CAAC;gBACjC,MAAM;AACR,YAAA,KAAK,QAAQ;AACX,gBAAA,IAAI,CAAC,KAAK,GAAG,0BAA0B,CAAC;gBACxC,MAAM;AACR,YAAA,KAAK,SAAS;AACZ,gBAAA,IAAI,CAAC,KAAK,GAAG,4BAA4B,CAAC;gBAC1C,MAAM;AACR,YAAA;AACE,gBAAA,IAAI,CAAC,KAAK,GAAG,yBAAyB,CAAC;gBACvC,MAAM;AACT,SAAA;KACF;AAED,IAAA,kBAAkB,CAAC,MAAoB,EAAA;QACrC,IAAI,MAAM,CAAC,OAAO,EAAE;YAClB,MAAM,CAAC,OAAO,EAAE,CAAC;AAClB,SAAA;KACF;AAED,IAAA,aAAa,CAAC,MAAoB,EAAA;AAChC,QAAA,MAAM,MAAM,GACV,MAAM,CAAC,SAAS;AAChB,YAAA,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,MAAM,IAAI,CAAC;AAChC,aAAC,CAAC,MAAM,CAAC,IAAI,IAAI,QAAQ,IAAI,MAAM,CAAC,IAAI,IAAI,QAAQ;AAClD,gBAAA,CAAC,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC;AACpD,QAAA,IAAI,MAAM,EAAE;AACV,YAAA,MAAM,CAAC,SAAS,GAAG,IAAI,CAAC;AACzB,SAAA;AACD,QAAA,OAAO,MAAM,CAAC;KACf;;8GA1CU,iBAAiB,EAAA,IAAA,EAAA,CAAA,EAAA,KAAA,EAAA,EAAA,CAAA,UAAA,EAAA,EAAA,EAAA,KAAA,EAAA,EAAA,CAAA,iBAAA,EAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;AAAjB,iBAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,iBAAiB,wECjB9B,0oCAoBM,EAAA,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,OAAA,EAAA,QAAA,EAAA,kBAAA,EAAA,MAAA,EAAA,CAAA,SAAA,EAAA,cAAA,EAAA,eAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,IAAA,EAAA,QAAA,EAAA,QAAA,EAAA,MAAA,EAAA,CAAA,MAAA,EAAA,UAAA,EAAA,UAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,oBAAA,EAAA,QAAA,EAAA,eAAA,EAAA,MAAA,EAAA,CAAA,aAAA,EAAA,YAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,iBAAA,EAAA,QAAA,EAAA,UAAA,EAAA,MAAA,EAAA,CAAA,QAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,OAAA,EAAA,QAAA,EAAA,WAAA,EAAA,MAAA,EAAA,CAAA,aAAA,EAAA,iBAAA,EAAA,oBAAA,EAAA,iBAAA,EAAA,mBAAA,EAAA,yBAAA,EAAA,iBAAA,EAAA,0BAAA,EAAA,qBAAA,EAAA,yBAAA,CAAA,EAAA,OAAA,EAAA,CAAA,gBAAA,EAAA,iBAAA,EAAA,cAAA,EAAA,gBAAA,EAAA,eAAA,EAAA,gBAAA,EAAA,cAAA,CAAA,EAAA,QAAA,EAAA,CAAA,SAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,aAAA,EAAA,QAAA,EAAA,iBAAA,EAAA,MAAA,EAAA,CAAA,uBAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,YAAA,EAAA,QAAA,EAAA,gBAAA,EAAA,MAAA,EAAA,CAAA,cAAA,EAAA,yBAAA,CAAA,EAAA,QAAA,EAAA,CAAA,cAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,iBAAA,EAAA,QAAA,EAAA,WAAA,EAAA,MAAA,EAAA,CAAA,UAAA,EAAA,MAAA,EAAA,UAAA,EAAA,OAAA,EAAA,MAAA,EAAA,MAAA,EAAA,YAAA,EAAA,UAAA,CAAA,EAAA,OAAA,EAAA,CAAA,QAAA,EAAA,SAAA,EAAA,SAAA,EAAA,gBAAA,EAAA,kBAAA,EAAA,YAAA,EAAA,aAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,0BAAA,EAAA,QAAA,EAAA,WAAA,EAAA,CAAA,EAAA,eAAA,EAAA,EAAA,CAAA,uBAAA,CAAA,MAAA,EAAA,aAAA,EAAA,EAAA,CAAA,iBAAA,CAAA,IAAA,EAAA,CAAA,CAAA;2FDHO,iBAAiB,EAAA,UAAA,EAAA,CAAA;kBAN7B,SAAS;AACE,YAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,WAAW,mBAEJ,uBAAuB,CAAC,MAAM,EAChC,aAAA,EAAA,iBAAiB,CAAC,IAAI,EAAA,QAAA,EAAA,0oCAAA,EAAA,CAAA;;;AELvC,MAAM,SAAS,GAAG,CAAC,iBAAiB,CAAC,CAAC;AACtC,MAAM,OAAO,GAAG,CAAC,YAAY,EAAC,cAAc,EAAE,cAAc,EAAE,UAAU,EAAE,cAAc,EAAE,YAAY,EAAE,iBAAiB,CAAC,CAAC;MAQ9G,cAAc,CAAA;;2GAAd,cAAc,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,QAAA,EAAA,CAAA,CAAA;AAAd,cAAA,CAAA,IAAA,GAAA,EAAA,CAAA,mBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,cAAc,iBATR,iBAAiB,CAAA,EAAA,OAAA,EAAA,CACnB,YAAY,EAAC,cAAc,EAAE,cAAc,EAAE,UAAU,EAAE,cAAc,EAAE,YAAY,EAAE,iBAAiB,aADtG,iBAAiB,CAAA,EAAA,CAAA,CAAA;AASvB,cAAA,CAAA,IAAA,GAAA,EAAA,CAAA,mBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,cAAc,YAJV,OAAO,CAAA,EAAA,CAAA,CAAA;2FAIX,cAAc,EAAA,UAAA,EAAA,CAAA;kBAN1B,QAAQ;AAAC,YAAA,IAAA,EAAA,CAAA;AACN,oBAAA,YAAY,EAAE,CAAC,GAAG,SAAS,CAAC;AAC5B,oBAAA,OAAO,EAAE,CAAC,GAAG,OAAO,CAAC;AACrB,oBAAA,OAAO,EAAE,CAAC,GAAG,SAAS,CAAC;AACvB,oBAAA,SAAS,EAAE,EAAE;AAChB,iBAAA,CAAA;;;ACPD;;;;AAIG;MAEU,eAAe,CAAA;AAE1B;;AAEE;AACF,IAAA,WAAA,CACU,cAAuB,EACvB,cAAwB,EACxB,GAA0B,EAAA;QAF1B,IAAc,CAAA,cAAA,GAAd,cAAc,CAAS;QACvB,IAAc,CAAA,cAAA,GAAd,cAAc,CAAU;QACxB,IAAG,CAAA,GAAA,GAAH,GAAG,CAAuB;KAC/B;AAEL;;AAEE;AACF,IAAA,KAAK,CAAC,KAAa,EAAE,OAAe,EAAE,OAAyB,SAAS,EAAA;AACtE,QAAA,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,KAAI;AAC7B,YAAA,MAAM,KAAK,GAAG,IAAI,CAAC,IAAI,CAAC;gBACtB,KAAK;AACL,gBAAA,IAAI,EAAE,IAAI;gBACV,OAAO;AACP,gBAAA,OAAO,EAAE;AACP,oBAAA;AACE,wBAAA,IAAI,EAAE,SAAS;AACf,wBAAA,IAAI,EAAE,YAAY,CAAC,GAAG,CAAC,aAAa,CAAC;AACrC,wBAAA,KAAK,EAAE,IAAI;wBACX,OAAO,EAAE,MAAK;4BACZ,KAAK,CAAC,KAAK,EAAE,CAAC;AACd,4BAAA,IAAI,OAAO,EAAE;AACX,gCAAA,OAAO,EAAE,CAAC;AACX,6BAAA;yBACF;AACF,qBAAA;AACF,iBAAA;AACF,aAAA,CAAC,CAAC;AACL,SAAC,CAAC,CAAC;KACJ;AAED;;AAEE;AACF,IAAA,OAAO,CAAC,KAAa,EAAE,OAAe,EAAE,OAAyB,SAAS,EAAA;AACxE,QAAA,OAAO,IAAI,OAAO,CAAsB,CAAC,OAAO,KAAI;AAClD,YAAA,MAAM,KAAK,GAAG,IAAI,CAAC,IAAI,CAAC;gBACtB,KAAK;gBACL,OAAO;gBACP,IAAI;AACJ,gBAAA,OAAO,EAAE;AACP,oBAAA;AACE,wBAAA,IAAI,EAAE,SAAS;AACf,wBAAA,IAAI,EAAE,YAAY,CAAC,GAAG,CAAC,aAAa,CAAC;AACrC,wBAAA,KAAK,EAAE,IAAI;wBACX,OAAO,EAAE,MAAK;4BACZ,KAAK,CAAC,KAAK,EAAE,CAAC;AACd,4BAAA,IAAI,OAAO,EAAE;AACX,gCAAA,OAAO,CAAC,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC;AAC3B,6BAAA;yBACF;AACD,wBAAA,IAAI,EAAE,QAAQ;AACf,qBAAA;AACD,oBAAA;AACE,wBAAA,IAAI,EAAE,QAAQ;AACd,wBAAA,IAAI,EAAE,YAAY,CAAC,GAAG,CAAC,eAAe,CAAC;AACvC,wBAAA,KAAK,EAAE,CAAO,KAAA,CAAA;wBACd,OAAO,EAAE,MAAK;4BACZ,KAAK,CAAC,KAAK,EAAE,CAAC;AACd,4BAAA,IAAI,OAAO,EAAE;AACX,gCAAA,OAAO,CAAC,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC,CAAC;AAC5B,6BAAA;yBACF;AACD,wBAAA,MAAM,EAAE;4BACN,QAAQ,EAAE,MAAK;gCACb,KAAK,CAAC,KAAK,EAAE,CAAC;AACd,gCAAA,IAAI,OAAO,EAAE;AACX,oCAAA,OAAO,CAAC,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC,CAAC;AAC5B,iCAAA;6BACF;AACF,yBAAA;AACD,wBAAA,IAAI,EAAE,QAAQ;AACf,qBAAA;AACF,iBAAA;AACF,aAAA,CAAC,CAAC;AACL,SAAC,CAAC,CAAC;KACJ;AAED;;AAEE;AACF,IAAA,IAAI,CAAC,OAAwB,EAAA;AAC3B,QAAA,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,KAAI;YAC7B,MAAM,KAAK,GAAG,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;YACjC,OAAO,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC,CAAC,KAAI;AAC7B,gBAAA,MAAM,YAAY,GAAG,CAAC,CAAC,OAAO,CAAC;AAC/B,gBAAA,CAAC,CAAC,OAAO,GAAG,MAAK;oBACf,KAAK,CAAC,KAAK,EAAE,CAAC;AACd,oBAAA,IAAI,YAAY,EAAE;AAChB,wBAAA,YAAY,EAAE,CAAC;AAChB,qBAAA;AACD,oBAAA,IAAI,OAAO,EAAE;wBACX,OAAO,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC,IAAK,EAAE,CAAC,CAAC;AAC5B,qBAAA;AACH,iBAAC,CAAC;AACJ,aAAC,CAAC,CAAC;AACL,SAAC,CAAC,CAAC;KACJ;AAEO,IAAA,IAAI,CAAC,OAAwB,EAAA;AACnC,QAAA,IAAI,gBAAgB,GAAG,IAAI,CAAC,cAAc;AACvC,aAAA,QAAQ,EAAE;AACV,aAAA,MAAM,EAAE;AACR,aAAA,kBAAkB,EAAE;AACpB,aAAA,gBAAgB,EAAE,CAAC;AAEtB,QAAA,MAAM,iBAAiB,GAAG,QAAQ,CAAC,aAA4B,CAAC;AAChE,QAAA,MAAM,UAAU,GAAG,IAAI,CAAC,cAAc,CAAC,MAAM,CAAC;YAC5C,gBAAgB;AAChB,YAAA,WAAW,EAAE,IAAI;AACjB,YAAA,cAAc,EAAE,IAAI,CAAC,GAAG,CAAC,KAAK,EAAE;AAChC,YAAA,UAAU,EAAE,CAAC,qBAAqB,EAAE,mBAAmB,CAAC;AACzD,SAAA,CAAC,CAAC;AACH,QAAA,MAAM,YAAY,GAAG,IAAI,eAAe,CACtC,iBAAiB,EACjB,IAAI,EACJ,IAAI,CAAC,cAAc,CACpB,CAAC;QACF,MAAM,IAAI,GAAG,UAAU,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC;QAC7C,IAAI,IAAI,CAAC,QAAQ,EAAE;AACjB,YAAA,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,QAAQ,EAAE;AAC3B,gBAAA,OAAO,EAAE,OAAO;gBAChB,KAAK,EAAE,MAAK;oBACV,UAAU,CAAC,OAAO,EAAE,CAAC;oBACrB,IAAI,iBAAiB,EAAE,KAAK,EAAE;wBAC5B,iBAAiB,CAAC,KAAK,EAAE,CAAC;AAC3B,qBAAA;iBACF;AACF,aAAA,CAAC,CAAC;YACH,UAAU,CAAC,MAAK;AACd,gBAAA,IAAI,CAAC,iBAAiB,CAAC,aAAa,EAAE,CAAC;aACxC,EAAE,CAAC,CAAC,CAAC;AACP,SAAA;QAED,OAAO;YACL,KAAK,EAAE,MAAK;AACV,gBAAA,IAAI,CAAC,QAAQ,CAAC,KAAK,EAAE,CAAC;aACvB;SACF,CAAC;KACH;;4GAjJU,eAAe,EAAA,IAAA,EAAA,CAAA,EAAA,KAAA,EAAAA,IAAA,CAAA,OAAA,EAAA,EAAA,EAAA,KAAA,EAAA,EAAA,CAAA,QAAA,EAAA,EAAA,EAAA,KAAA,EAAAA,IAAA,CAAA,qBAAA,EAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,UAAA,EAAA,CAAA,CAAA;AAAf,eAAA,CAAA,KAAA,GAAA,EAAA,CAAA,qBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,eAAe,cADF,MAAM,EAAA,CAAA,CAAA;2FACnB,eAAe,EAAA,UAAA,EAAA,CAAA;kBAD3B,UAAU;mBAAC,EAAE,UAAU,EAAE,MAAM,EAAE,CAAA;;;AChBlC;;AAEG;;;;"}
|
|
@@ -8,6 +8,8 @@ import { AXBaseDropdownMixin } from '@acorex/components/mixin';
|
|
|
8
8
|
import { OverlayModule } from '@angular/cdk/overlay';
|
|
9
9
|
import { CommonModule } from '@angular/common';
|
|
10
10
|
import { AXDecoratorModule } from '@acorex/components/decorators';
|
|
11
|
+
import { A11yModule } from '@angular/cdk/a11y';
|
|
12
|
+
import { AXCommonModule } from '@acorex/components/common';
|
|
11
13
|
|
|
12
14
|
class AXDropdownPanelComponent extends AXBaseDropdownMixin {
|
|
13
15
|
constructor(elementRef, cdr, _parent) {
|
|
@@ -24,6 +26,17 @@ class AXDropdownPanelComponent extends AXBaseDropdownMixin {
|
|
|
24
26
|
set target(v) {
|
|
25
27
|
this._target = v;
|
|
26
28
|
}
|
|
29
|
+
onViewInit() {
|
|
30
|
+
super.onViewInit();
|
|
31
|
+
[this.target, this._getHostElement()].forEach(el => {
|
|
32
|
+
el.addEventListener('keydown', (e) => {
|
|
33
|
+
if (e.code == 'Escape' && this.isOpen) {
|
|
34
|
+
e.stopPropagation();
|
|
35
|
+
this.close();
|
|
36
|
+
}
|
|
37
|
+
});
|
|
38
|
+
});
|
|
39
|
+
}
|
|
27
40
|
ngAfterContentInit() {
|
|
28
41
|
this._initContents();
|
|
29
42
|
this._contentButtons.changes.subscribe(() => {
|
|
@@ -74,10 +87,10 @@ class AXDropdownPanelComponent extends AXBaseDropdownMixin {
|
|
|
74
87
|
}
|
|
75
88
|
}
|
|
76
89
|
AXDropdownPanelComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.2", ngImport: i0, type: AXDropdownPanelComponent, deps: [{ token: i0.ElementRef }, { token: i0.ChangeDetectorRef }, { token: i1.AXButtonComponent, optional: true }], target: i0.ɵɵFactoryTarget.Component });
|
|
77
|
-
AXDropdownPanelComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.0.2", type: AXDropdownPanelComponent, selector: "ax-dropdown-panel", inputs: { isOpen: "isOpen", fitParent: "fitParent", dropdownWidth: "dropdownWidth", position: "position", target: "target" }, outputs: { onOpened: "onOpened", onClosed: "onClosed", onItemClick: "onItemClick" }, host: { classAttribute: "ax-dropdown-panel" }, queries: [{ propertyName: "_contentButtons", predicate: AXButtonItemComponent }], viewQueries: [{ propertyName: "popover", first: true, predicate: AXPopoverComponent, descendants: true, static: true }], usesInheritance: true, ngImport: i0, template: "<ax-popover [target]=\"target\" [position]=\"position\" [openTrigger]=\"'toggle'\" [closeTrigger]=\"'clickout'\" [adaptivityEnabled]=\"false\">\r\n <div class=\"ax-overlay-pane\" [class.ax-dropdown-list]=\"_needBorder\" >\r\n <ng-content select=\"[panel],ax-button-item\">\r\n </ng-content>\r\n </div>\r\n</ax-popover>", dependencies: [{ kind: "component", type: i2.AXPopoverComponent, selector: "ax-popover", inputs: ["target", "position", "openTrigger", "closeTrigger", "hasBackdrop", "backdropClass", "adaptivityEnabled"], outputs: ["onOpened", "onClosed"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
|
|
90
|
+
AXDropdownPanelComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.0.2", type: AXDropdownPanelComponent, selector: "ax-dropdown-panel", inputs: { isOpen: "isOpen", fitParent: "fitParent", dropdownWidth: "dropdownWidth", position: "position", target: "target" }, outputs: { onOpened: "onOpened", onClosed: "onClosed", onItemClick: "onItemClick" }, host: { classAttribute: "ax-dropdown-panel" }, queries: [{ propertyName: "_contentButtons", predicate: AXButtonItemComponent }], viewQueries: [{ propertyName: "popover", first: true, predicate: AXPopoverComponent, descendants: true, static: true }], usesInheritance: true, ngImport: i0, template: "<ax-popover [target]=\"target\" [position]=\"position\" [openTrigger]=\"'toggle'\" [closeTrigger]=\"'clickout'\" [adaptivityEnabled]=\"false\" >\r\n <div class=\"ax-overlay-pane\" [class.ax-dropdown-list]=\"_needBorder\" >\r\n <ng-content select=\"[panel],ax-button-item\">\r\n </ng-content>\r\n </div>\r\n</ax-popover>", dependencies: [{ kind: "component", type: i2.AXPopoverComponent, selector: "ax-popover", inputs: ["target", "position", "openTrigger", "closeTrigger", "hasBackdrop", "backdropClass", "adaptivityEnabled"], outputs: ["onOpened", "onClosed"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
|
|
78
91
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.2", ngImport: i0, type: AXDropdownPanelComponent, decorators: [{
|
|
79
92
|
type: Component,
|
|
80
|
-
args: [{ selector: 'ax-dropdown-panel', inputs: ['isOpen', 'fitParent', 'dropdownWidth', 'position'], outputs: ['onOpened', 'onClosed'], host: { class: 'ax-dropdown-panel' }, changeDetection: ChangeDetectionStrategy.OnPush, encapsulation: ViewEncapsulation.None, template: "<ax-popover [target]=\"target\" [position]=\"position\" [openTrigger]=\"'toggle'\" [closeTrigger]=\"'clickout'\" [adaptivityEnabled]=\"false\">\r\n <div class=\"ax-overlay-pane\" [class.ax-dropdown-list]=\"_needBorder\" >\r\n <ng-content select=\"[panel],ax-button-item\">\r\n </ng-content>\r\n </div>\r\n</ax-popover>" }]
|
|
93
|
+
args: [{ selector: 'ax-dropdown-panel', inputs: ['isOpen', 'fitParent', 'dropdownWidth', 'position'], outputs: ['onOpened', 'onClosed'], host: { class: 'ax-dropdown-panel' }, changeDetection: ChangeDetectionStrategy.OnPush, encapsulation: ViewEncapsulation.None, template: "<ax-popover [target]=\"target\" [position]=\"position\" [openTrigger]=\"'toggle'\" [closeTrigger]=\"'clickout'\" [adaptivityEnabled]=\"false\" >\r\n <div class=\"ax-overlay-pane\" [class.ax-dropdown-list]=\"_needBorder\" >\r\n <ng-content select=\"[panel],ax-button-item\">\r\n </ng-content>\r\n </div>\r\n</ax-popover>" }]
|
|
81
94
|
}], ctorParameters: function () { return [{ type: i0.ElementRef }, { type: i0.ChangeDetectorRef }, { type: i1.AXButtonComponent, decorators: [{
|
|
82
95
|
type: Optional
|
|
83
96
|
}] }]; }, propDecorators: { _contentButtons: [{
|
|
@@ -95,12 +108,12 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.2", ngImpor
|
|
|
95
108
|
class AXDropdownModule {
|
|
96
109
|
}
|
|
97
110
|
AXDropdownModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.2", ngImport: i0, type: AXDropdownModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
|
98
|
-
AXDropdownModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "14.0.2", ngImport: i0, type: AXDropdownModule, declarations: [AXDropdownPanelComponent], imports: [CommonModule, AXButtonModule, OverlayModule, AXDecoratorModule, AXPopoverModule], exports: [AXDropdownPanelComponent] });
|
|
99
|
-
AXDropdownModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "14.0.2", ngImport: i0, type: AXDropdownModule, imports: [CommonModule, AXButtonModule, OverlayModule, AXDecoratorModule, AXPopoverModule] });
|
|
111
|
+
AXDropdownModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "14.0.2", ngImport: i0, type: AXDropdownModule, declarations: [AXDropdownPanelComponent], imports: [CommonModule, AXCommonModule, A11yModule, AXButtonModule, OverlayModule, AXDecoratorModule, AXPopoverModule], exports: [AXDropdownPanelComponent] });
|
|
112
|
+
AXDropdownModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "14.0.2", ngImport: i0, type: AXDropdownModule, imports: [CommonModule, AXCommonModule, A11yModule, AXButtonModule, OverlayModule, AXDecoratorModule, AXPopoverModule] });
|
|
100
113
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.2", ngImport: i0, type: AXDropdownModule, decorators: [{
|
|
101
114
|
type: NgModule,
|
|
102
115
|
args: [{
|
|
103
|
-
imports: [CommonModule, AXButtonModule, OverlayModule, AXDecoratorModule, AXPopoverModule],
|
|
116
|
+
imports: [CommonModule, AXCommonModule, A11yModule, AXButtonModule, OverlayModule, AXDecoratorModule, AXPopoverModule],
|
|
104
117
|
exports: [AXDropdownPanelComponent],
|
|
105
118
|
declarations: [AXDropdownPanelComponent],
|
|
106
119
|
providers: [],
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"acorex-components-dropdown.mjs","sources":["../../../../projects/acorex/components/dropdown/src/dropdown-panel.component.ts","../../../../projects/acorex/components/dropdown/src/dropdown-panel.component.html","../../../../projects/acorex/components/dropdown/src/dropdown.module.ts","../../../../projects/acorex/components/dropdown/acorex-components-dropdown.ts"],"sourcesContent":["import {\r\n Component,\r\n ViewEncapsulation,\r\n ChangeDetectionStrategy,\r\n ElementRef,\r\n ChangeDetectorRef,\r\n ContentChildren,\r\n QueryList,\r\n EventEmitter,\r\n Output,\r\n ViewChild,\r\n Optional,\r\n Input,\r\n} from '@angular/core';\r\nimport { Subscription } from 'rxjs';\r\n\r\nimport { AXButtonClickEvent, AXClickEvent } from '@acorex/components/common';\r\nimport {\r\n AXButtonComponent,\r\n AXButtonItemComponent,\r\n} from '@acorex/components/button';\r\nimport { AXPopoverComponent } from '@acorex/components/popover';\r\nimport { AXBaseDropdownMixin } from '@acorex/components/mixin';\r\n\r\n\r\n@Component({\r\n selector: 'ax-dropdown-panel',\r\n templateUrl: './dropdown-panel.component.html',\r\n inputs: ['isOpen', 'fitParent', 'dropdownWidth', 'position'],\r\n outputs: ['onOpened', 'onClosed'],\r\n host: { class: 'ax-dropdown-panel' },\r\n changeDetection: ChangeDetectionStrategy.OnPush,\r\n encapsulation: ViewEncapsulation.None,\r\n})\r\nexport class AXDropdownPanelComponent extends AXBaseDropdownMixin {\r\n constructor(\r\n elementRef: ElementRef,\r\n cdr: ChangeDetectorRef,\r\n @Optional()\r\n public _parent?: AXButtonComponent\r\n ) {\r\n super(elementRef, cdr);\r\n this._target = this._parent?._getHostElement();\r\n }\r\n\r\n @ContentChildren(AXButtonItemComponent)\r\n _contentButtons: QueryList<AXButtonItemComponent>;\r\n\r\n @Output()\r\n onItemClick: EventEmitter<AXButtonClickEvent> = new EventEmitter<AXButtonClickEvent>();\r\n\r\n @ViewChild(AXPopoverComponent, { static: true })\r\n popover: AXPopoverComponent;\r\n\r\n _needBorder: boolean = false;\r\n _subs: Subscription[] = [];\r\n\r\n\r\n private _target: HTMLElement;\r\n @Input()\r\n public get target(): HTMLElement {\r\n return this._target;\r\n }\r\n public set target(v: HTMLElement) {\r\n this._target = v;\r\n }\r\n\r\n\r\n\r\n ngAfterContentInit() {\r\n this._initContents();\r\n this._contentButtons.changes.subscribe(() => {\r\n this._initContents();\r\n });\r\n }\r\n\r\n private _initContents() {\r\n this._needBorder = this._contentButtons.length > 0;\r\n this._bindEvents();\r\n this._bindProps();\r\n this._cdr.markForCheck();\r\n }\r\n\r\n private _bindEvents() {\r\n this._contentButtons?.forEach((b) => {\r\n if (!b.onClick.length)\r\n b.onClick.subscribe((c) => {\r\n this._handleOnItemClick(c);\r\n });\r\n });\r\n }\r\n\r\n private _bindProps() {\r\n this._contentButtons?.forEach((b) => {\r\n //b.look = this.look ?? this.look;\r\n b.disabled = b.disabled ?? this.disabled;\r\n //b.toggleable = false;\r\n });\r\n }\r\n\r\n onOptionChanged(options) {\r\n this._bindProps();\r\n }\r\n\r\n onDestroy(): void {\r\n this._subs.forEach((s) => {\r\n s?.unsubscribe();\r\n });\r\n }\r\n\r\n _emitOnItemClickEvent(e: AXClickEvent, item: AXButtonItemComponent): void {\r\n this.onItemClick.emit({\r\n component: this,\r\n htmlElement: this._getHostElement(),\r\n nativeEvent: e.nativeEvent,\r\n name: item.name,\r\n data: item.data,\r\n });\r\n }\r\n\r\n private _handleOnItemClick(e: AXClickEvent) {\r\n this.close();\r\n this._emitOnItemClickEvent(e, e.component);\r\n }\r\n}\r\n","<ax-popover [target]=\"target\" [position]=\"position\" [openTrigger]=\"'toggle'\" [closeTrigger]=\"'clickout'\" [adaptivityEnabled]=\"false\">\r\n <div class=\"ax-overlay-pane\" [class.ax-dropdown-list]=\"_needBorder\" >\r\n <ng-content select=\"[panel],ax-button-item\">\r\n </ng-content>\r\n </div>\r\n</ax-popover>","import { OverlayModule } from '@angular/cdk/overlay';\r\nimport { CommonModule } from '@angular/common';\r\nimport { NgModule } from '@angular/core';\r\nimport { AXButtonModule } from '@acorex/components/button';\r\nimport { AXDecoratorModule } from '@acorex/components/decorators';\r\nimport { AXPopoverModule } from '@acorex/components/popover';\r\nimport { AXDropdownPanelComponent } from './dropdown-panel.component';\r\n\r\n@NgModule({\r\n imports: [CommonModule, AXButtonModule, OverlayModule, AXDecoratorModule, AXPopoverModule],\r\n exports: [ AXDropdownPanelComponent],\r\n declarations: [ AXDropdownPanelComponent],\r\n providers: [],\r\n})\r\nexport class AXDropdownModule { }\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-dropdown.mjs","sources":["../../../../projects/acorex/components/dropdown/src/dropdown-panel.component.ts","../../../../projects/acorex/components/dropdown/src/dropdown-panel.component.html","../../../../projects/acorex/components/dropdown/src/dropdown.module.ts","../../../../projects/acorex/components/dropdown/acorex-components-dropdown.ts"],"sourcesContent":["import {\r\n Component,\r\n ViewEncapsulation,\r\n ChangeDetectionStrategy,\r\n ElementRef,\r\n ChangeDetectorRef,\r\n ContentChildren,\r\n QueryList,\r\n EventEmitter,\r\n Output,\r\n ViewChild,\r\n Optional,\r\n Input,\r\n HostListener,\r\n} from '@angular/core';\r\nimport { Subscription } from 'rxjs';\r\n\r\nimport { AXButtonClickEvent, AXClickEvent } from '@acorex/components/common';\r\nimport {\r\n AXButtonComponent,\r\n AXButtonItemComponent,\r\n} from '@acorex/components/button';\r\nimport { AXPopoverComponent } from '@acorex/components/popover';\r\nimport { AXBaseDropdownMixin } from '@acorex/components/mixin';\r\n\r\n\r\n@Component({\r\n selector: 'ax-dropdown-panel',\r\n templateUrl: './dropdown-panel.component.html',\r\n inputs: ['isOpen', 'fitParent', 'dropdownWidth', 'position'],\r\n outputs: ['onOpened', 'onClosed'],\r\n host: { class: 'ax-dropdown-panel' },\r\n changeDetection: ChangeDetectionStrategy.OnPush,\r\n encapsulation: ViewEncapsulation.None,\r\n})\r\nexport class AXDropdownPanelComponent extends AXBaseDropdownMixin {\r\n constructor(\r\n elementRef: ElementRef,\r\n cdr: ChangeDetectorRef,\r\n @Optional()\r\n public _parent?: AXButtonComponent\r\n ) {\r\n super(elementRef, cdr);\r\n this._target = this._parent?._getHostElement(); \r\n }\r\n\r\n @ContentChildren(AXButtonItemComponent)\r\n _contentButtons: QueryList<AXButtonItemComponent>;\r\n\r\n @Output()\r\n onItemClick: EventEmitter<AXButtonClickEvent> = new EventEmitter<AXButtonClickEvent>();\r\n\r\n @ViewChild(AXPopoverComponent, { static: true })\r\n popover: AXPopoverComponent;\r\n\r\n _needBorder: boolean = false;\r\n _subs: Subscription[] = [];\r\n\r\n\r\n private _target: HTMLElement;\r\n @Input()\r\n public get target(): HTMLElement {\r\n return this._target;\r\n }\r\n public set target(v: HTMLElement) {\r\n this._target = v;\r\n }\r\n\r\n \r\n onViewInit(): void {\r\n super.onViewInit();\r\n [this.target, this._getHostElement()].forEach(el => {\r\n el.addEventListener('keydown', (e) => {\r\n if (e.code == 'Escape' && this.isOpen) {\r\n e.stopPropagation();\r\n this.close();\r\n }\r\n });\r\n }); \r\n }\r\n\r\n ngAfterContentInit() {\r\n this._initContents();\r\n this._contentButtons.changes.subscribe(() => {\r\n this._initContents();\r\n });\r\n }\r\n\r\n private _initContents() {\r\n this._needBorder = this._contentButtons.length > 0;\r\n this._bindEvents();\r\n this._bindProps();\r\n this._cdr.markForCheck();\r\n }\r\n\r\n private _bindEvents() {\r\n this._contentButtons?.forEach((b) => {\r\n if (!b.onClick.length)\r\n b.onClick.subscribe((c) => {\r\n this._handleOnItemClick(c);\r\n });\r\n });\r\n }\r\n\r\n private _bindProps() {\r\n this._contentButtons?.forEach((b) => {\r\n //b.look = this.look ?? this.look;\r\n b.disabled = b.disabled ?? this.disabled;\r\n //b.toggleable = false;\r\n });\r\n }\r\n\r\n onOptionChanged(options) {\r\n this._bindProps();\r\n }\r\n\r\n onDestroy(): void {\r\n this._subs.forEach((s) => {\r\n s?.unsubscribe();\r\n });\r\n }\r\n\r\n _emitOnItemClickEvent(e: AXClickEvent, item: AXButtonItemComponent): void {\r\n this.onItemClick.emit({\r\n component: this,\r\n htmlElement: this._getHostElement(),\r\n nativeEvent: e.nativeEvent,\r\n name: item.name,\r\n data: item.data,\r\n });\r\n }\r\n\r\n private _handleOnItemClick(e: AXClickEvent) {\r\n this.close();\r\n this._emitOnItemClickEvent(e, e.component);\r\n }\r\n}\r\n","<ax-popover [target]=\"target\" [position]=\"position\" [openTrigger]=\"'toggle'\" [closeTrigger]=\"'clickout'\" [adaptivityEnabled]=\"false\" >\r\n <div class=\"ax-overlay-pane\" [class.ax-dropdown-list]=\"_needBorder\" >\r\n <ng-content select=\"[panel],ax-button-item\">\r\n </ng-content>\r\n </div>\r\n</ax-popover>","import { OverlayModule } from '@angular/cdk/overlay';\r\nimport { CommonModule } from '@angular/common';\r\nimport { NgModule } from '@angular/core';\r\nimport { AXButtonModule } from '@acorex/components/button';\r\nimport { AXDecoratorModule } from '@acorex/components/decorators';\r\nimport { AXPopoverModule } from '@acorex/components/popover';\r\nimport { AXDropdownPanelComponent } from './dropdown-panel.component';\r\nimport { A11yModule } from '@angular/cdk/a11y';\r\nimport { AXCommonModule } from '@acorex/components/common';\r\n\r\n@NgModule({\r\n imports: [CommonModule,AXCommonModule, A11yModule, AXButtonModule, OverlayModule, AXDecoratorModule, AXPopoverModule],\r\n exports: [AXDropdownPanelComponent],\r\n declarations: [AXDropdownPanelComponent],\r\n providers: [],\r\n})\r\nexport class AXDropdownModule { }\r\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":"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"}
|
|
@@ -1,27 +1,48 @@
|
|
|
1
|
+
import { AXBaseComponent } from '@acorex/components/mixin';
|
|
1
2
|
import * as i0 from '@angular/core';
|
|
2
|
-
import { Component, ViewEncapsulation, Input, HostBinding, NgModule } from '@angular/core';
|
|
3
|
+
import { EventEmitter, Component, ViewEncapsulation, ChangeDetectionStrategy, Input, Output, HostBinding, NgModule } from '@angular/core';
|
|
3
4
|
import * as i1 from '@angular/common';
|
|
4
5
|
import { CommonModule } from '@angular/common';
|
|
5
6
|
|
|
6
|
-
class AXImageComponent {
|
|
7
|
-
|
|
7
|
+
class AXImageComponent extends AXBaseComponent {
|
|
8
|
+
/**
|
|
9
|
+
* @ignore
|
|
10
|
+
*/
|
|
11
|
+
constructor(elementRef, cdr) {
|
|
12
|
+
super(elementRef, cdr);
|
|
13
|
+
this.cdr = cdr;
|
|
14
|
+
this.priority = 'auto';
|
|
8
15
|
this.lazy = false;
|
|
16
|
+
this.onLoad = new EventEmitter();
|
|
17
|
+
this.onError = new EventEmitter();
|
|
9
18
|
this._hasError = false;
|
|
10
19
|
this._isLoaded = false;
|
|
11
20
|
this._isLoading = false;
|
|
12
21
|
}
|
|
13
|
-
|
|
22
|
+
onInit() {
|
|
14
23
|
this._isLoading = this.src != null;
|
|
15
24
|
}
|
|
16
25
|
_handleLoadImage(e) {
|
|
17
26
|
this._isLoaded = true;
|
|
18
27
|
this._hasError = false;
|
|
19
28
|
this._isLoading = false;
|
|
29
|
+
this.onLoad.emit({
|
|
30
|
+
component: this,
|
|
31
|
+
htmlElement: this._getHostElement(),
|
|
32
|
+
isUserInteraction: false,
|
|
33
|
+
nativeEvent: e
|
|
34
|
+
});
|
|
20
35
|
}
|
|
21
36
|
_handleErrorImage(e) {
|
|
22
37
|
this._hasError = true;
|
|
23
38
|
this._isLoaded = false;
|
|
24
39
|
this._isLoading = false;
|
|
40
|
+
this.onError.emit({
|
|
41
|
+
component: this,
|
|
42
|
+
htmlElement: this._getHostElement(),
|
|
43
|
+
isUserInteraction: false,
|
|
44
|
+
nativeEvent: e
|
|
45
|
+
});
|
|
25
46
|
}
|
|
26
47
|
get __stateError() {
|
|
27
48
|
return this._hasError || !this.src;
|
|
@@ -30,17 +51,23 @@ class AXImageComponent {
|
|
|
30
51
|
return this._isLoading;
|
|
31
52
|
}
|
|
32
53
|
}
|
|
33
|
-
AXImageComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.2", ngImport: i0, type: AXImageComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
34
|
-
AXImageComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.0.2", type: AXImageComponent, selector: "ax-image", inputs: { src: "src", alt: "alt", lazy: "lazy" }, host: { properties: { "class.ax-state-empty": "this.__stateError", "class.ax-state-loading": "this.__stateLoading" } }, ngImport: i0, template: "<img class=\"ax-hidden\" *ngIf=\"src\" [class.!ax-block]=\"_isLoaded\" [src]=\"src\" [alt]=\"alt\"\r\n [attr.loading]=\"lazy ? 'lazy' : 'eager'\" (load)=\"_handleLoadImage($event)\" (error)=\"_handleErrorImage($event)\">\r\n<ng-content select=\"ax-overlay\"></ng-content>\r\n<ng-container *ngIf=\"!src || _hasError\">\r\n <ng-content select=\"ax-placeholder\"></ng-content>\r\n</ng-container>\r\n<ng-container *ngIf=\"_isLoading\">\r\n <ng-content select=\"ax-loading\"></ng-content>\r\n</ng-container>", dependencies: [{ kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }], encapsulation: i0.ViewEncapsulation.None });
|
|
54
|
+
AXImageComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.2", ngImport: i0, type: AXImageComponent, deps: [{ token: i0.ElementRef }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component });
|
|
55
|
+
AXImageComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.0.2", type: AXImageComponent, selector: "ax-image", inputs: { src: "src", alt: "alt", priority: "priority", lazy: "lazy" }, outputs: { onLoad: "onLoad", onError: "onError" }, host: { properties: { "class.ax-state-empty": "this.__stateError", "class.ax-state-loading": "this.__stateLoading" } }, providers: [{ provide: 'ax-image', useValue: AXImageComponent }], usesInheritance: true, ngImport: i0, template: "<img class=\"ax-hidden\" *ngIf=\"src\" [class.!ax-block]=\"_isLoaded\" [src]=\"src\" [alt]=\"alt\" [attr.fetchpriority]=\"priority\"\r\n [attr.loading]=\"lazy ? 'lazy' : 'eager'\" (load)=\"_handleLoadImage($event)\" (error)=\"_handleErrorImage($event)\">\r\n<ng-content select=\"ax-overlay\"></ng-content>\r\n<ng-container *ngIf=\"!src || _hasError\">\r\n <ng-content select=\"ax-placeholder\"></ng-content>\r\n</ng-container>\r\n<ng-container *ngIf=\"_isLoading\">\r\n <ng-content select=\"ax-loading\"></ng-content>\r\n</ng-container>", dependencies: [{ kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
|
|
35
56
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.2", ngImport: i0, type: AXImageComponent, decorators: [{
|
|
36
57
|
type: Component,
|
|
37
|
-
args: [{ selector: 'ax-image', encapsulation: ViewEncapsulation.None, template: "<img class=\"ax-hidden\" *ngIf=\"src\" [class.!ax-block]=\"_isLoaded\" [src]=\"src\" [alt]=\"alt\"\r\n [attr.loading]=\"lazy ? 'lazy' : 'eager'\" (load)=\"_handleLoadImage($event)\" (error)=\"_handleErrorImage($event)\">\r\n<ng-content select=\"ax-overlay\"></ng-content>\r\n<ng-container *ngIf=\"!src || _hasError\">\r\n <ng-content select=\"ax-placeholder\"></ng-content>\r\n</ng-container>\r\n<ng-container *ngIf=\"_isLoading\">\r\n <ng-content select=\"ax-loading\"></ng-content>\r\n</ng-container>" }]
|
|
38
|
-
}], ctorParameters: function () { return []; }, propDecorators: { src: [{
|
|
58
|
+
args: [{ selector: 'ax-image', encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, providers: [{ provide: 'ax-image', useValue: AXImageComponent }], template: "<img class=\"ax-hidden\" *ngIf=\"src\" [class.!ax-block]=\"_isLoaded\" [src]=\"src\" [alt]=\"alt\" [attr.fetchpriority]=\"priority\"\r\n [attr.loading]=\"lazy ? 'lazy' : 'eager'\" (load)=\"_handleLoadImage($event)\" (error)=\"_handleErrorImage($event)\">\r\n<ng-content select=\"ax-overlay\"></ng-content>\r\n<ng-container *ngIf=\"!src || _hasError\">\r\n <ng-content select=\"ax-placeholder\"></ng-content>\r\n</ng-container>\r\n<ng-container *ngIf=\"_isLoading\">\r\n <ng-content select=\"ax-loading\"></ng-content>\r\n</ng-container>" }]
|
|
59
|
+
}], ctorParameters: function () { return [{ type: i0.ElementRef }, { type: i0.ChangeDetectorRef }]; }, propDecorators: { src: [{
|
|
39
60
|
type: Input
|
|
40
61
|
}], alt: [{
|
|
41
62
|
type: Input
|
|
63
|
+
}], priority: [{
|
|
64
|
+
type: Input
|
|
42
65
|
}], lazy: [{
|
|
43
66
|
type: Input
|
|
67
|
+
}], onLoad: [{
|
|
68
|
+
type: Output
|
|
69
|
+
}], onError: [{
|
|
70
|
+
type: Output
|
|
44
71
|
}], __stateError: [{
|
|
45
72
|
type: HostBinding,
|
|
46
73
|
args: ['class.ax-state-empty']
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"acorex-components-image.mjs","sources":["../../../../projects/acorex/components/image/src/image.component.ts","../../../../projects/acorex/components/image/src/image.component.html","../../../../projects/acorex/components/image/src/image.module.ts","../../../../projects/acorex/components/image/acorex-components-image.ts"],"sourcesContent":["import {\r\n Component,\r\n HostBinding,\r\n Input,\r\n
|
|
1
|
+
{"version":3,"file":"acorex-components-image.mjs","sources":["../../../../projects/acorex/components/image/src/image.component.ts","../../../../projects/acorex/components/image/src/image.component.html","../../../../projects/acorex/components/image/src/image.module.ts","../../../../projects/acorex/components/image/acorex-components-image.ts"],"sourcesContent":["import { AXHtmlEvent } from '@acorex/components/common';\r\nimport { AXBaseComponent } from '@acorex/components/mixin';\r\nimport {\r\n ChangeDetectionStrategy,\r\n ChangeDetectorRef,\r\n Component,\r\n ElementRef,\r\n EventEmitter,\r\n HostBinding,\r\n Input,\r\n Output,\r\n ViewEncapsulation,\r\n} from '@angular/core';\r\n\r\n@Component({\r\n selector: 'ax-image',\r\n templateUrl: './image.component.html',\r\n encapsulation: ViewEncapsulation.None,\r\n changeDetection: ChangeDetectionStrategy.OnPush,\r\n providers: [{ provide: 'ax-image', useValue: AXImageComponent }],\r\n})\r\nexport class AXImageComponent extends AXBaseComponent {\r\n\r\n\r\n /**\r\n * @ignore\r\n */\r\n constructor(\r\n elementRef: ElementRef,\r\n private cdr: ChangeDetectorRef\r\n ) {\r\n super(elementRef, cdr);\r\n }\r\n\r\n @Input()\r\n src?: string | null;\r\n\r\n @Input()\r\n alt?: string | null;\r\n\r\n @Input()\r\n priority: 'low' | 'auto' | 'high' = 'auto';\r\n\r\n @Input()\r\n lazy: boolean = false;\r\n\r\n\r\n @Output()\r\n onLoad: EventEmitter<AXHtmlEvent> = new EventEmitter<AXHtmlEvent>();\r\n\r\n @Output()\r\n onError: EventEmitter<AXHtmlEvent<ErrorEvent>> = new EventEmitter<AXHtmlEvent<ErrorEvent>>();\r\n\r\n _hasError = false;\r\n _isLoaded = false;\r\n _isLoading = false;\r\n\r\n\r\n\r\n onInit(): void {\r\n this._isLoading = this.src != null;\r\n }\r\n\r\n _handleLoadImage(e: Event) {\r\n this._isLoaded = true;\r\n this._hasError = false;\r\n this._isLoading = false;\r\n this.onLoad.emit({\r\n component: this,\r\n htmlElement: this._getHostElement(),\r\n isUserInteraction: false,\r\n nativeEvent: e\r\n });\r\n }\r\n\r\n _handleErrorImage(e: ErrorEvent) {\r\n this._hasError = true;\r\n this._isLoaded = false;\r\n this._isLoading = false;\r\n this.onError.emit({\r\n component: this,\r\n htmlElement: this._getHostElement(),\r\n isUserInteraction: false,\r\n nativeEvent: e\r\n });\r\n }\r\n\r\n @HostBinding('class.ax-state-empty')\r\n get __stateError() {\r\n return this._hasError || !this.src;\r\n }\r\n\r\n @HostBinding('class.ax-state-loading')\r\n get __stateLoading() {\r\n return this._isLoading;\r\n }\r\n\r\n}\r\n","<img class=\"ax-hidden\" *ngIf=\"src\" [class.!ax-block]=\"_isLoaded\" [src]=\"src\" [alt]=\"alt\" [attr.fetchpriority]=\"priority\"\r\n [attr.loading]=\"lazy ? 'lazy' : 'eager'\" (load)=\"_handleLoadImage($event)\" (error)=\"_handleErrorImage($event)\">\r\n<ng-content select=\"ax-overlay\"></ng-content>\r\n<ng-container *ngIf=\"!src || _hasError\">\r\n <ng-content select=\"ax-placeholder\"></ng-content>\r\n</ng-container>\r\n<ng-container *ngIf=\"_isLoading\">\r\n <ng-content select=\"ax-loading\"></ng-content>\r\n</ng-container>","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { AXImageComponent } from './image.component';\r\n\r\n@NgModule({\r\n declarations: [AXImageComponent],\r\n imports: [CommonModule],\r\n exports: [AXImageComponent],\r\n providers: [],\r\n})\r\nexport class AXImageModule {}\r\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":"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"}
|
|
@@ -2,9 +2,10 @@ import { ComponentPortal } from '@angular/cdk/portal';
|
|
|
2
2
|
import * as i0 from '@angular/core';
|
|
3
3
|
import { Component, ChangeDetectionStrategy, ViewEncapsulation, ContentChild, NgModule } from '@angular/core';
|
|
4
4
|
import { AXBaseMenuMixin } from '@acorex/components/mixin';
|
|
5
|
+
import * as i2 from '@acorex/core/platform';
|
|
6
|
+
import { AXPlatform } from '@acorex/core/platform';
|
|
5
7
|
import * as i1 from '@angular/cdk/overlay';
|
|
6
8
|
import { OverlayModule } from '@angular/cdk/overlay';
|
|
7
|
-
import * as i2 from '@acorex/core/platform';
|
|
8
9
|
import * as i3 from '@angular/common';
|
|
9
10
|
import { CommonModule } from '@angular/common';
|
|
10
11
|
import * as i4 from '@acorex/components/decorators';
|
|
@@ -26,6 +27,7 @@ class AXMenuComponent extends AXBaseMenuMixin {
|
|
|
26
27
|
this.cdr = cdr;
|
|
27
28
|
this._overlay = _overlay;
|
|
28
29
|
this._platform = _platform;
|
|
30
|
+
this.rtl = new AXPlatform().isRtl();
|
|
29
31
|
this._levelCount = 0;
|
|
30
32
|
}
|
|
31
33
|
get emptyTemplate() {
|
|
@@ -314,7 +316,7 @@ class AXMenuComponent extends AXBaseMenuMixin {
|
|
|
314
316
|
}
|
|
315
317
|
}
|
|
316
318
|
AXMenuComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.2", ngImport: i0, type: AXMenuComponent, deps: [{ token: i0.ElementRef }, { token: i0.ChangeDetectorRef }, { token: i1.Overlay }, { token: i2.AXPlatform }], target: i0.ɵɵFactoryTarget.Component });
|
|
317
|
-
AXMenuComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.0.2", type: AXMenuComponent, selector: "ax-menu", inputs: { disabled: "disabled", tabIndex: "tabIndex", textField: "textField", valueField: "valueField", items: "items", parentId: "parentId", iconField: "iconField", tooltip: "tooltip", isOpen: "isOpen", isActive: "isActive", visibleField: "visibleField", disableField: "disableField", hasChildField: "hasChildField", dividerField: "dividerField", openMode: "openMode", orientation: "orientation", showModal: "showModal" }, outputs: { onBlur: "onBlur", onFocus: "onFocus", onMenuItemClick: "onMenuItemClick" }, host: { classAttribute: "ax-menu" }, queries: [{ propertyName: "_contentEmptyTemplate", first: true, predicate: ["emptyTemplate"], descendants: true }, { propertyName: "_contentItemTemplate", first: true, predicate: ["itemTemplate"], descendants: true }], usesInheritance: true, ngImport: i0, template: "<ng-container *ngIf=\"displayItems.length; else tmpEmpty\">\r\n <ul [ngClass]=\"_getDirection()\">\r\n <ng-container *ngTemplateOutlet=\"recursiveListTmpl; context:{ list: displayItems }\"></ng-container>\r\n </ul>\r\n <ng-template #recursiveListTmpl let-list=\"list\">\r\n <ng-container *ngFor=\"let item of list\">\r\n <li *ngIf=\"item[visibleField] !=false\" [class.ax-state-disabled]=\"item[disableField]\"\r\n (click)=\"_onMenuClick($event,item)\" (mouseenter)=\"_onMenuMouseEnter($event,item)\"\r\n [ngClass]=\"{'ax-state-active ': item.isActive}\">\r\n <div class=\"ax-menu-item\" *ngIf=\"itemTemplate == null else tmpItem\">\r\n <div class=\"ax-menu-item-prefix\">\r\n <ax-icon *ngIf=\"item[iconField]\" [class]=\"item[iconField]\"></ax-icon>\r\n <span>{{_getItemDisplayTextTemplte(item)}}</span>\r\n </div>\r\n <div class=\"ax-menu-item-suffix\">\r\n <ax-icon *ngIf=\"!item.isLoading\"\r\n [ngClass]=\"{'ax-ic-chevron':item?.children?.length > 0,'ax-menu-active-icon': item.isOpen}\">\r\n </ax-icon>\r\n <ax-loading *ngIf=\"item.isLoading\">\r\n </ax-loading>\r\n </div>\r\n </div>\r\n <!--------------- check for custom item template --------------->\r\n <ng-template #tmpItem>\r\n <ng-container *ngIf=\"!isLoading\">\r\n <ng-container *ngTemplateOutlet=\"itemTemplate;context: { $implicit: item }\">\r\n </ng-container>\r\n </ng-container>\r\n </ng-template>\r\n <ul *ngIf=\"item?.children?.length > 0 && item.isOpen &&!_overlayRef\"\r\n [class.ax-state-disabled]=\"item[disableField]\">\r\n <ng-container *ngTemplateOutlet=\"recursiveListTmpl; context:{ list: item.children }\">\r\n </ng-container>\r\n </ul>\r\n </li>\r\n <li class=\"ax-divider\" *ngIf=\"item[this.dividerField]\"></li>\r\n </ng-container>\r\n </ng-template>\r\n</ng-container>\r\n<ng-container *ngIf=\"isLoading\">\r\n <ng-template>\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\r\n<ng-template #tmpEmpty>\r\n <ng-container *ngIf=\"!isLoading\">\r\n <!--------------- check for custom template --------------->\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-list-item\">\r\n {{ 'common.no-result-found' | trans }}\r\n </div>\r\n </ng-template>\r\n </ng-container>\r\n</ng-template>", dependencies: [{ kind: "directive", type: i3.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i3.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i3.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: i4.AXDecoratorIconComponent, selector: "ax-icon", inputs: ["icon"] }, { kind: "component", type: i5.AXLoadingComponent, selector: "ax-loading", inputs: ["visible", "type", "text"], outputs: ["visibleChange"] }, { kind: "pipe", type: i6.AXTranslatorPipe, name: "trans" }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
|
|
319
|
+
AXMenuComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.0.2", type: AXMenuComponent, selector: "ax-menu", inputs: { disabled: "disabled", tabIndex: "tabIndex", textField: "textField", valueField: "valueField", items: "items", parentId: "parentId", iconField: "iconField", tooltip: "tooltip", isOpen: "isOpen", isActive: "isActive", visibleField: "visibleField", disableField: "disableField", hasChildField: "hasChildField", dividerField: "dividerField", openMode: "openMode", orientation: "orientation", showModal: "showModal" }, outputs: { onBlur: "onBlur", onFocus: "onFocus", onMenuItemClick: "onMenuItemClick" }, host: { classAttribute: "ax-menu" }, queries: [{ propertyName: "_contentEmptyTemplate", first: true, predicate: ["emptyTemplate"], descendants: true }, { propertyName: "_contentItemTemplate", first: true, predicate: ["itemTemplate"], descendants: true }], usesInheritance: true, ngImport: i0, template: "<ng-container *ngIf=\"displayItems.length; else tmpEmpty\">\r\n <ul [ngClass]=\"_getDirection()\" [class.ax-rtl]=\"rtl\">\r\n <ng-container *ngTemplateOutlet=\"recursiveListTmpl; context:{ list: displayItems }\"></ng-container>\r\n </ul>\r\n <ng-template #recursiveListTmpl let-list=\"list\">\r\n <ng-container *ngFor=\"let item of list\">\r\n <li *ngIf=\"item[visibleField] !=false\" [class.ax-state-disabled]=\"item[disableField]\"\r\n (click)=\"_onMenuClick($event,item)\" (mouseenter)=\"_onMenuMouseEnter($event,item)\"\r\n [ngClass]=\"{'ax-state-active ': item.isActive}\">\r\n <div class=\"ax-menu-item\" *ngIf=\"itemTemplate == null else tmpItem\">\r\n <div class=\"ax-menu-item-prefix\">\r\n <ax-icon *ngIf=\"item[iconField]\" [class]=\"item[iconField]\"></ax-icon>\r\n <span>{{_getItemDisplayTextTemplte(item)}}</span>\r\n </div>\r\n <div class=\"ax-menu-item-suffix\">\r\n <ax-icon *ngIf=\"!item.isLoading\"\r\n [ngClass]=\"{'ax-ic-chevron':item?.children?.length > 0,'ax-menu-active-icon': item.isOpen}\">\r\n </ax-icon>\r\n <ax-loading *ngIf=\"item.isLoading\">\r\n </ax-loading>\r\n </div>\r\n </div>\r\n <!--------------- check for custom item template --------------->\r\n <ng-template #tmpItem>\r\n <ng-container *ngIf=\"!isLoading\">\r\n <ng-container *ngTemplateOutlet=\"itemTemplate;context: { $implicit: item }\">\r\n </ng-container>\r\n </ng-container>\r\n </ng-template>\r\n <ul *ngIf=\"item?.children?.length > 0 && item.isOpen &&!_overlayRef\"\r\n [class.ax-state-disabled]=\"item[disableField]\">\r\n <ng-container *ngTemplateOutlet=\"recursiveListTmpl; context:{ list: item.children }\">\r\n </ng-container>\r\n </ul>\r\n </li>\r\n <li class=\"ax-divider\" *ngIf=\"item[this.dividerField]\"></li>\r\n </ng-container>\r\n </ng-template>\r\n</ng-container>\r\n<ng-container *ngIf=\"isLoading\">\r\n <ng-template>\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\r\n<ng-template #tmpEmpty>\r\n <ng-container *ngIf=\"!isLoading\">\r\n <!--------------- check for custom template --------------->\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-list-item\">\r\n {{ 'common.no-result-found' | trans }}\r\n </div>\r\n </ng-template>\r\n </ng-container>\r\n</ng-template>", dependencies: [{ kind: "directive", type: i3.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i3.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i3.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: i4.AXDecoratorIconComponent, selector: "ax-icon", inputs: ["icon"] }, { kind: "component", type: i5.AXLoadingComponent, selector: "ax-loading", inputs: ["visible", "type", "text"], outputs: ["visibleChange"] }, { kind: "pipe", type: i6.AXTranslatorPipe, name: "trans" }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
|
|
318
320
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.2", ngImport: i0, type: AXMenuComponent, decorators: [{
|
|
319
321
|
type: Component,
|
|
320
322
|
args: [{ selector: 'ax-menu', inputs: [
|
|
@@ -335,7 +337,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.2", ngImpor
|
|
|
335
337
|
'openMode',
|
|
336
338
|
'orientation',
|
|
337
339
|
'showModal',
|
|
338
|
-
], outputs: ['onBlur', 'onFocus', 'onMenuItemClick'], changeDetection: ChangeDetectionStrategy.OnPush, encapsulation: ViewEncapsulation.None, host: { class: 'ax-menu' }, template: "<ng-container *ngIf=\"displayItems.length; else tmpEmpty\">\r\n <ul [ngClass]=\"_getDirection()\">\r\n <ng-container *ngTemplateOutlet=\"recursiveListTmpl; context:{ list: displayItems }\"></ng-container>\r\n </ul>\r\n <ng-template #recursiveListTmpl let-list=\"list\">\r\n <ng-container *ngFor=\"let item of list\">\r\n <li *ngIf=\"item[visibleField] !=false\" [class.ax-state-disabled]=\"item[disableField]\"\r\n (click)=\"_onMenuClick($event,item)\" (mouseenter)=\"_onMenuMouseEnter($event,item)\"\r\n [ngClass]=\"{'ax-state-active ': item.isActive}\">\r\n <div class=\"ax-menu-item\" *ngIf=\"itemTemplate == null else tmpItem\">\r\n <div class=\"ax-menu-item-prefix\">\r\n <ax-icon *ngIf=\"item[iconField]\" [class]=\"item[iconField]\"></ax-icon>\r\n <span>{{_getItemDisplayTextTemplte(item)}}</span>\r\n </div>\r\n <div class=\"ax-menu-item-suffix\">\r\n <ax-icon *ngIf=\"!item.isLoading\"\r\n [ngClass]=\"{'ax-ic-chevron':item?.children?.length > 0,'ax-menu-active-icon': item.isOpen}\">\r\n </ax-icon>\r\n <ax-loading *ngIf=\"item.isLoading\">\r\n </ax-loading>\r\n </div>\r\n </div>\r\n <!--------------- check for custom item template --------------->\r\n <ng-template #tmpItem>\r\n <ng-container *ngIf=\"!isLoading\">\r\n <ng-container *ngTemplateOutlet=\"itemTemplate;context: { $implicit: item }\">\r\n </ng-container>\r\n </ng-container>\r\n </ng-template>\r\n <ul *ngIf=\"item?.children?.length > 0 && item.isOpen &&!_overlayRef\"\r\n [class.ax-state-disabled]=\"item[disableField]\">\r\n <ng-container *ngTemplateOutlet=\"recursiveListTmpl; context:{ list: item.children }\">\r\n </ng-container>\r\n </ul>\r\n </li>\r\n <li class=\"ax-divider\" *ngIf=\"item[this.dividerField]\"></li>\r\n </ng-container>\r\n </ng-template>\r\n</ng-container>\r\n<ng-container *ngIf=\"isLoading\">\r\n <ng-template>\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\r\n<ng-template #tmpEmpty>\r\n <ng-container *ngIf=\"!isLoading\">\r\n <!--------------- check for custom template --------------->\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-list-item\">\r\n {{ 'common.no-result-found' | trans }}\r\n </div>\r\n </ng-template>\r\n </ng-container>\r\n</ng-template>" }]
|
|
340
|
+
], outputs: ['onBlur', 'onFocus', 'onMenuItemClick'], changeDetection: ChangeDetectionStrategy.OnPush, encapsulation: ViewEncapsulation.None, host: { class: 'ax-menu' }, template: "<ng-container *ngIf=\"displayItems.length; else tmpEmpty\">\r\n <ul [ngClass]=\"_getDirection()\" [class.ax-rtl]=\"rtl\">\r\n <ng-container *ngTemplateOutlet=\"recursiveListTmpl; context:{ list: displayItems }\"></ng-container>\r\n </ul>\r\n <ng-template #recursiveListTmpl let-list=\"list\">\r\n <ng-container *ngFor=\"let item of list\">\r\n <li *ngIf=\"item[visibleField] !=false\" [class.ax-state-disabled]=\"item[disableField]\"\r\n (click)=\"_onMenuClick($event,item)\" (mouseenter)=\"_onMenuMouseEnter($event,item)\"\r\n [ngClass]=\"{'ax-state-active ': item.isActive}\">\r\n <div class=\"ax-menu-item\" *ngIf=\"itemTemplate == null else tmpItem\">\r\n <div class=\"ax-menu-item-prefix\">\r\n <ax-icon *ngIf=\"item[iconField]\" [class]=\"item[iconField]\"></ax-icon>\r\n <span>{{_getItemDisplayTextTemplte(item)}}</span>\r\n </div>\r\n <div class=\"ax-menu-item-suffix\">\r\n <ax-icon *ngIf=\"!item.isLoading\"\r\n [ngClass]=\"{'ax-ic-chevron':item?.children?.length > 0,'ax-menu-active-icon': item.isOpen}\">\r\n </ax-icon>\r\n <ax-loading *ngIf=\"item.isLoading\">\r\n </ax-loading>\r\n </div>\r\n </div>\r\n <!--------------- check for custom item template --------------->\r\n <ng-template #tmpItem>\r\n <ng-container *ngIf=\"!isLoading\">\r\n <ng-container *ngTemplateOutlet=\"itemTemplate;context: { $implicit: item }\">\r\n </ng-container>\r\n </ng-container>\r\n </ng-template>\r\n <ul *ngIf=\"item?.children?.length > 0 && item.isOpen &&!_overlayRef\"\r\n [class.ax-state-disabled]=\"item[disableField]\">\r\n <ng-container *ngTemplateOutlet=\"recursiveListTmpl; context:{ list: item.children }\">\r\n </ng-container>\r\n </ul>\r\n </li>\r\n <li class=\"ax-divider\" *ngIf=\"item[this.dividerField]\"></li>\r\n </ng-container>\r\n </ng-template>\r\n</ng-container>\r\n<ng-container *ngIf=\"isLoading\">\r\n <ng-template>\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\r\n<ng-template #tmpEmpty>\r\n <ng-container *ngIf=\"!isLoading\">\r\n <!--------------- check for custom template --------------->\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-list-item\">\r\n {{ 'common.no-result-found' | trans }}\r\n </div>\r\n </ng-template>\r\n </ng-container>\r\n</ng-template>" }]
|
|
339
341
|
}], ctorParameters: function () { return [{ type: i0.ElementRef }, { type: i0.ChangeDetectorRef }, { type: i1.Overlay }, { type: i2.AXPlatform }]; }, propDecorators: { _contentEmptyTemplate: [{
|
|
340
342
|
type: ContentChild,
|
|
341
343
|
args: ['emptyTemplate']
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"acorex-components-menu.mjs","sources":["../../../../projects/acorex/components/menu/src/menu.component.ts","../../../../projects/acorex/components/menu/src/menu.component.html","../../../../projects/acorex/components/menu/src/menu.module.ts","../../../../projects/acorex/components/menu/acorex-components-menu.ts"],"sourcesContent":["import { OverlayRef, Overlay } from '@angular/cdk/overlay';\r\nimport { ComponentPortal } from '@angular/cdk/portal';\r\n\r\nimport {\r\n Component,\r\n ChangeDetectionStrategy,\r\n ViewEncapsulation,\r\n OnInit,\r\n ContentChild,\r\n TemplateRef,\r\n ElementRef,\r\n ChangeDetectorRef,\r\n} from '@angular/core';\r\nimport { AXBaseMenuMixin } from '@acorex/components/mixin';\r\nimport { AXPlatform } from '@acorex/core/platform';\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-menu',\r\n templateUrl: './menu.component.html',\r\n inputs: [\r\n 'disabled',\r\n 'tabIndex',\r\n 'textField',\r\n 'valueField',\r\n 'items',\r\n 'parentId',\r\n 'iconField',\r\n 'tooltip',\r\n 'isOpen',\r\n 'isActive',\r\n 'visibleField',\r\n 'disableField',\r\n 'hasChildField',\r\n 'dividerField',\r\n 'openMode',\r\n 'orientation',\r\n 'showModal',\r\n ],\r\n outputs: ['onBlur', 'onFocus', 'onMenuItemClick'],\r\n changeDetection: ChangeDetectionStrategy.OnPush,\r\n encapsulation: ViewEncapsulation.None,\r\n host: { class: 'ax-menu' },\r\n})\r\nexport class AXMenuComponent extends AXBaseMenuMixin implements OnInit {\r\n @ContentChild('emptyTemplate')\r\n private _contentEmptyTemplate: TemplateRef<any>;\r\n\r\n @ContentChild('itemTemplate')\r\n private _contentItemTemplate: TemplateRef<any>;\r\n\r\n public _overlayRef: OverlayRef;\r\n\r\n get emptyTemplate(): TemplateRef<any> {\r\n return this._contentEmptyTemplate;\r\n }\r\n\r\n get itemTemplate(): TemplateRef<any> {\r\n return this._contentItemTemplate;\r\n }\r\n\r\n private _levelCount: number = 0;\r\n\r\n private _oldItem: any;\r\n\r\n constructor(\r\n private _elementRef: ElementRef,\r\n private cdr: ChangeDetectorRef,\r\n private _overlay: Overlay,\r\n private _platform: AXPlatform\r\n ) {\r\n super(_elementRef, cdr);\r\n }\r\n\r\n onInit(): void {\r\n super.onInit();\r\n }\r\n\r\n ngAfterViewInit(): void {\r\n super.onViewInit();\r\n }\r\n\r\n _onMenuMouseEnter(e: MouseEvent, item: any): void {\r\n const targetElement = e.target as HTMLDivElement;\r\n\r\n if (this.isLoading || targetElement.tagName === 'UL') {\r\n return;\r\n }\r\n\r\n if (this.openMode === 'hover') {\r\n this._handelMenuLogic(e, item);\r\n }\r\n\r\n e.stopPropagation();\r\n e.preventDefault();\r\n }\r\n\r\n _onMenuClick(e: MouseEvent, item: any): void {\r\n const targetElement = e.target as HTMLDivElement;\r\n\r\n if (this.isLoading || targetElement.tagName === 'UL') {\r\n return;\r\n }\r\n\r\n if (this.openMode === 'click') {\r\n this._handelMenuLogic(e, item);\r\n }\r\n\r\n this.onMenuItemClick.emit({\r\n component: this,\r\n item: item,\r\n nativeEvent: e,\r\n });\r\n\r\n e.stopPropagation();\r\n e.preventDefault();\r\n }\r\n\r\n _getDirection(): string {\r\n if (this.orientation === 'horizontal' && this._levelCount === 0) {\r\n return 'ax-horizontal';\r\n } else if (this._levelCount > 0) {\r\n return 'ax-vertical ax-submenu-ul';\r\n } else if (this.orientation === 'sidemenu') {\r\n return 'ax-side-menu';\r\n } else {\r\n return 'ax-vertical';\r\n }\r\n }\r\n\r\n private _removeActive(items: any): void {\r\n items.forEach((element) => {\r\n element.isActive = false;\r\n if (element?.children?.length > 0) {\r\n this._removeActive(element.children);\r\n }\r\n });\r\n }\r\n\r\n private _closeOpenChild(items: any): void {\r\n items.forEach((element) => {\r\n element.isOpen = false;\r\n if (element?.children?.length > 0) {\r\n this._closeOpenChild(element.children);\r\n }\r\n });\r\n }\r\n\r\n private _initParent(items: any, parentId: any): void {\r\n items.forEach((element) => {\r\n element.parentId = parentId;\r\n });\r\n }\r\n\r\n private _handelMenuLogic(e: MouseEvent, item: any): void {\r\n if (!item[this.disableField] || item[this.dividerField] === false) {\r\n const targetElement = e.target as HTMLDivElement;\r\n if (\r\n (targetElement.closest('li') && this.openMode === 'click') ||\r\n (targetElement.closest('li') && this.openMode === 'hover')\r\n ) {\r\n if (this._overlayRef && this._oldItem !== item) {\r\n this._overlayRef.detach();\r\n }\r\n if (this.orientation === 'horizontal') {\r\n this.displayItems.forEach((element) => {\r\n if (\r\n !item.parentId &&\r\n item[this.valueField] !== element[this.valueField]\r\n ) {\r\n element.isOpen = false;\r\n }\r\n });\r\n }\r\n if (item?.children?.length > 0) {\r\n if (this.orientation === 'horizontal') {\r\n this._initParent(item.children, item[this.valueField]);\r\n }\r\n if (\r\n this.orientation === 'horizontal' ||\r\n this.orientation === 'vertical'\r\n ) {\r\n if (this._oldItem !== item) {\r\n this._openAsOverlay(targetElement.closest('li'), item.children);\r\n }\r\n }\r\n this._closeOpenChild(item.children);\r\n\r\n if (\r\n this.orientation === 'horizontal' ||\r\n this.orientation === 'vertical'\r\n ) {\r\n item.isOpen = true;\r\n } else {\r\n item.isOpen = !item.isOpen;\r\n }\r\n }\r\n\r\n this._removeActive(this.displayItems);\r\n\r\n item.isActive = !item.isActive;\r\n\r\n if (\r\n this.orientation === 'horizontal' ||\r\n this.orientation === 'vertical'\r\n ) {\r\n if (\r\n this._oldItem &&\r\n this._oldItem?.isOpen &&\r\n item[this.valueField] !== this._oldItem[this.valueField]\r\n ) {\r\n this._oldItem.isOpen = false;\r\n }\r\n this._oldItem = item;\r\n }\r\n }\r\n }\r\n }\r\n\r\n private _openAsOverlay(targetRef, overlayItems: any[]): void {\r\n let positions = [];\r\n if (this.orientation === 'vertical') {\r\n if (this._levelCount >= 1) {\r\n positions = [\r\n {\r\n originX: 'end',\r\n originY: 'center',\r\n overlayX: 'start',\r\n overlayY: 'top',\r\n },\r\n {\r\n originX: 'end',\r\n originY: 'center',\r\n overlayX: 'start',\r\n overlayY: 'bottom',\r\n },\r\n {\r\n originX: 'center',\r\n originY: 'center',\r\n overlayX: 'center',\r\n overlayY: 'center',\r\n },\r\n ];\r\n } else {\r\n positions = [\r\n {\r\n originX: 'end',\r\n originY: 'center',\r\n overlayX: 'start',\r\n overlayY: 'top',\r\n },\r\n {\r\n originX: 'end',\r\n originY: 'top',\r\n overlayX: 'start',\r\n overlayY: 'bottom',\r\n },\r\n {\r\n originX: 'center',\r\n originY: 'center',\r\n overlayX: 'center',\r\n overlayY: 'center',\r\n },\r\n ];\r\n }\r\n } else {\r\n if (this._levelCount >= 1) {\r\n positions = [\r\n {\r\n originX: 'end',\r\n originY: 'center',\r\n overlayX: 'start',\r\n overlayY: 'top',\r\n },\r\n {\r\n originX: 'end',\r\n originY: 'center',\r\n overlayX: 'start',\r\n overlayY: 'bottom',\r\n },\r\n {\r\n originX: 'end',\r\n originY: 'top',\r\n overlayX: 'center',\r\n overlayY: 'top',\r\n },\r\n {\r\n originX: 'center',\r\n originY: 'top',\r\n overlayX: 'center',\r\n overlayY: 'top',\r\n },\r\n ];\r\n } else {\r\n positions = [\r\n {\r\n originX: 'start',\r\n originY: 'bottom',\r\n overlayX: 'start',\r\n overlayY: 'top',\r\n },\r\n {\r\n originX: 'end',\r\n originY: 'center',\r\n overlayX: 'start',\r\n overlayY: 'bottom',\r\n },\r\n {\r\n originX: 'end',\r\n originY: 'top',\r\n overlayX: 'center',\r\n overlayY: 'top',\r\n },\r\n {\r\n originX: 'center',\r\n originY: 'top',\r\n overlayX: 'center',\r\n overlayY: 'top',\r\n },\r\n ];\r\n }\r\n }\r\n\r\n this._overlayRef = this._overlay.create({\r\n scrollStrategy: this._overlay.scrollStrategies.close(),\r\n positionStrategy: this._overlay\r\n .position()\r\n .flexibleConnectedTo(targetRef)\r\n .withPositions([...positions])\r\n .withPush(false),\r\n direction: this._platform.isRtl() ? 'rtl' : 'ltr',\r\n disposeOnNavigation: true,\r\n panelClass: ['ax-animate-fadeIn', 'ax-animate-faster', 'ax-overlay-menu'],\r\n maxHeight: 'unset',\r\n hasBackdrop: false,\r\n backdropClass: ['cdk-overlay-transparent-backdrop'],\r\n });\r\n\r\n const ref = this._overlayRef.attach(new ComponentPortal(AXMenuComponent));\r\n\r\n ref.instance.items = overlayItems;\r\n\r\n ref.instance.orientation = this.orientation;\r\n\r\n ref.instance.openMode = 'hover';\r\n\r\n ref.instance._levelCount = this._levelCount + 1;\r\n\r\n ref.instance.disableField = this.disableField;\r\n\r\n ref.instance.visibleField = this.visibleField;\r\n\r\n ref.instance.iconField = this.iconField;\r\n\r\n ref.instance.dividerField = this.dividerField;\r\n\r\n ref.onDestroy(() => {\r\n ref.instance?._overlayRef?.dispose();\r\n });\r\n\r\n this._overlayRef.outsidePointerEvents().subscribe((e) => {\r\n if (this._overlayRef && this.openMode === 'click') {\r\n this._close();\r\n e.stopPropagation();\r\n }\r\n });\r\n\r\n this._platform.scroll.subscribe(() => {\r\n if (this._overlayRef) {\r\n this._close();\r\n }\r\n });\r\n\r\n this._platform.resize.subscribe(() => {\r\n if (this._overlayRef) {\r\n this._close();\r\n }\r\n });\r\n }\r\n\r\n private _close() {\r\n this._overlayRef.detach();\r\n this._oldItem = null;\r\n this.displayItems.forEach((element) => {\r\n element.isOpen = false;\r\n element.isActive = false;\r\n });\r\n this.cdr.detectChanges();\r\n }\r\n\r\n onDestroy(): void {\r\n this._overlayRef?.detach();\r\n }\r\n}\r\n","<ng-container *ngIf=\"displayItems.length; else tmpEmpty\">\r\n <ul [ngClass]=\"_getDirection()\">\r\n <ng-container *ngTemplateOutlet=\"recursiveListTmpl; context:{ list: displayItems }\"></ng-container>\r\n </ul>\r\n <ng-template #recursiveListTmpl let-list=\"list\">\r\n <ng-container *ngFor=\"let item of list\">\r\n <li *ngIf=\"item[visibleField] !=false\" [class.ax-state-disabled]=\"item[disableField]\"\r\n (click)=\"_onMenuClick($event,item)\" (mouseenter)=\"_onMenuMouseEnter($event,item)\"\r\n [ngClass]=\"{'ax-state-active ': item.isActive}\">\r\n <div class=\"ax-menu-item\" *ngIf=\"itemTemplate == null else tmpItem\">\r\n <div class=\"ax-menu-item-prefix\">\r\n <ax-icon *ngIf=\"item[iconField]\" [class]=\"item[iconField]\"></ax-icon>\r\n <span>{{_getItemDisplayTextTemplte(item)}}</span>\r\n </div>\r\n <div class=\"ax-menu-item-suffix\">\r\n <ax-icon *ngIf=\"!item.isLoading\"\r\n [ngClass]=\"{'ax-ic-chevron':item?.children?.length > 0,'ax-menu-active-icon': item.isOpen}\">\r\n </ax-icon>\r\n <ax-loading *ngIf=\"item.isLoading\">\r\n </ax-loading>\r\n </div>\r\n </div>\r\n <!--------------- check for custom item template --------------->\r\n <ng-template #tmpItem>\r\n <ng-container *ngIf=\"!isLoading\">\r\n <ng-container *ngTemplateOutlet=\"itemTemplate;context: { $implicit: item }\">\r\n </ng-container>\r\n </ng-container>\r\n </ng-template>\r\n <ul *ngIf=\"item?.children?.length > 0 && item.isOpen &&!_overlayRef\"\r\n [class.ax-state-disabled]=\"item[disableField]\">\r\n <ng-container *ngTemplateOutlet=\"recursiveListTmpl; context:{ list: item.children }\">\r\n </ng-container>\r\n </ul>\r\n </li>\r\n <li class=\"ax-divider\" *ngIf=\"item[this.dividerField]\"></li>\r\n </ng-container>\r\n </ng-template>\r\n</ng-container>\r\n<ng-container *ngIf=\"isLoading\">\r\n <ng-template>\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\r\n<ng-template #tmpEmpty>\r\n <ng-container *ngIf=\"!isLoading\">\r\n <!--------------- check for custom template --------------->\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-list-item\">\r\n {{ 'common.no-result-found' | trans }}\r\n </div>\r\n </ng-template>\r\n </ng-container>\r\n</ng-template>","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { AXMenuComponent } from './menu.component';\r\nimport { AXLoadingModule } from '@acorex/components/loading';\r\nimport { AXTranslationModule } from '@acorex/core/translation';\r\nimport { AXDecoratorModule } from '@acorex/components/decorators';\r\nimport { OverlayModule } from '@angular/cdk/overlay';\r\n\r\nconst COMPONENT = [AXMenuComponent];\r\nconst MODULES = [\r\n AXDecoratorModule,\r\n AXLoadingModule,\r\n AXTranslationModule,\r\n OverlayModule,\r\n];\r\n\r\n@NgModule({\r\n declarations: [...COMPONENT],\r\n imports: [CommonModule, ...MODULES],\r\n exports: [...COMPONENT],\r\n providers: [],\r\n})\r\nexport class AXMenuModule {}\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-menu.mjs","sources":["../../../../projects/acorex/components/menu/src/menu.component.ts","../../../../projects/acorex/components/menu/src/menu.component.html","../../../../projects/acorex/components/menu/src/menu.module.ts","../../../../projects/acorex/components/menu/acorex-components-menu.ts"],"sourcesContent":["import { OverlayRef, Overlay } from '@angular/cdk/overlay';\r\nimport { ComponentPortal } from '@angular/cdk/portal';\r\n\r\nimport {\r\n Component,\r\n ChangeDetectionStrategy,\r\n ViewEncapsulation,\r\n OnInit,\r\n ContentChild,\r\n TemplateRef,\r\n ElementRef,\r\n ChangeDetectorRef,\r\n} from '@angular/core';\r\nimport { AXBaseMenuMixin } from '@acorex/components/mixin';\r\nimport { AXPlatform } from '@acorex/core/platform';\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-menu',\r\n templateUrl: './menu.component.html',\r\n inputs: [\r\n 'disabled',\r\n 'tabIndex',\r\n 'textField',\r\n 'valueField',\r\n 'items',\r\n 'parentId',\r\n 'iconField',\r\n 'tooltip',\r\n 'isOpen',\r\n 'isActive',\r\n 'visibleField',\r\n 'disableField',\r\n 'hasChildField',\r\n 'dividerField',\r\n 'openMode',\r\n 'orientation',\r\n 'showModal',\r\n ],\r\n outputs: ['onBlur', 'onFocus', 'onMenuItemClick'],\r\n changeDetection: ChangeDetectionStrategy.OnPush,\r\n encapsulation: ViewEncapsulation.None,\r\n host: { class: 'ax-menu' },\r\n})\r\nexport class AXMenuComponent extends AXBaseMenuMixin implements OnInit {\r\n @ContentChild('emptyTemplate')\r\n private _contentEmptyTemplate: TemplateRef<any>;\r\n\r\n @ContentChild('itemTemplate')\r\n private _contentItemTemplate: TemplateRef<any>;\r\n\r\n public _overlayRef: OverlayRef;\r\n\r\n get emptyTemplate(): TemplateRef<any> {\r\n return this._contentEmptyTemplate;\r\n }\r\n\r\n get itemTemplate(): TemplateRef<any> {\r\n return this._contentItemTemplate;\r\n }\r\n\r\n rtl: boolean = new AXPlatform().isRtl();\r\n\r\n private _levelCount: number = 0;\r\n\r\n private _oldItem: any;\r\n\r\n constructor(\r\n private _elementRef: ElementRef,\r\n private cdr: ChangeDetectorRef,\r\n private _overlay: Overlay,\r\n private _platform: AXPlatform\r\n ) {\r\n super(_elementRef, cdr);\r\n }\r\n\r\n onInit(): void {\r\n super.onInit();\r\n }\r\n\r\n ngAfterViewInit(): void {\r\n super.onViewInit();\r\n }\r\n\r\n _onMenuMouseEnter(e: MouseEvent, item: any): void {\r\n const targetElement = e.target as HTMLDivElement;\r\n\r\n if (this.isLoading || targetElement.tagName === 'UL') {\r\n return;\r\n }\r\n\r\n if (this.openMode === 'hover') {\r\n this._handelMenuLogic(e, item);\r\n }\r\n\r\n e.stopPropagation();\r\n e.preventDefault();\r\n }\r\n\r\n _onMenuClick(e: MouseEvent, item: any): void {\r\n const targetElement = e.target as HTMLDivElement;\r\n\r\n if (this.isLoading || targetElement.tagName === 'UL') {\r\n return;\r\n }\r\n\r\n if (this.openMode === 'click') {\r\n this._handelMenuLogic(e, item);\r\n }\r\n\r\n this.onMenuItemClick.emit({\r\n component: this,\r\n item: item,\r\n nativeEvent: e,\r\n });\r\n\r\n e.stopPropagation();\r\n e.preventDefault();\r\n }\r\n\r\n _getDirection(): string {\r\n if (this.orientation === 'horizontal' && this._levelCount === 0) {\r\n return 'ax-horizontal';\r\n } else if (this._levelCount > 0) {\r\n return 'ax-vertical ax-submenu-ul';\r\n } else if (this.orientation === 'sidemenu') {\r\n return 'ax-side-menu';\r\n } else {\r\n return 'ax-vertical';\r\n }\r\n }\r\n\r\n private _removeActive(items: any): void {\r\n items.forEach((element) => {\r\n element.isActive = false;\r\n if (element?.children?.length > 0) {\r\n this._removeActive(element.children);\r\n }\r\n });\r\n }\r\n\r\n private _closeOpenChild(items: any): void {\r\n items.forEach((element) => {\r\n element.isOpen = false;\r\n if (element?.children?.length > 0) {\r\n this._closeOpenChild(element.children);\r\n }\r\n });\r\n }\r\n\r\n private _initParent(items: any, parentId: any): void {\r\n items.forEach((element) => {\r\n element.parentId = parentId;\r\n });\r\n }\r\n\r\n private _handelMenuLogic(e: MouseEvent, item: any): void {\r\n if (!item[this.disableField] || item[this.dividerField] === false) {\r\n const targetElement = e.target as HTMLDivElement;\r\n if (\r\n (targetElement.closest('li') && this.openMode === 'click') ||\r\n (targetElement.closest('li') && this.openMode === 'hover')\r\n ) {\r\n if (this._overlayRef && this._oldItem !== item) {\r\n this._overlayRef.detach();\r\n }\r\n if (this.orientation === 'horizontal') {\r\n this.displayItems.forEach((element) => {\r\n if (\r\n !item.parentId &&\r\n item[this.valueField] !== element[this.valueField]\r\n ) {\r\n element.isOpen = false;\r\n }\r\n });\r\n }\r\n if (item?.children?.length > 0) {\r\n if (this.orientation === 'horizontal') {\r\n this._initParent(item.children, item[this.valueField]);\r\n }\r\n if (\r\n this.orientation === 'horizontal' ||\r\n this.orientation === 'vertical'\r\n ) {\r\n if (this._oldItem !== item) {\r\n this._openAsOverlay(targetElement.closest('li'), item.children);\r\n }\r\n }\r\n this._closeOpenChild(item.children);\r\n\r\n if (\r\n this.orientation === 'horizontal' ||\r\n this.orientation === 'vertical'\r\n ) {\r\n item.isOpen = true;\r\n } else {\r\n item.isOpen = !item.isOpen;\r\n }\r\n }\r\n\r\n this._removeActive(this.displayItems);\r\n\r\n item.isActive = !item.isActive;\r\n\r\n if (\r\n this.orientation === 'horizontal' ||\r\n this.orientation === 'vertical'\r\n ) {\r\n if (\r\n this._oldItem &&\r\n this._oldItem?.isOpen &&\r\n item[this.valueField] !== this._oldItem[this.valueField]\r\n ) {\r\n this._oldItem.isOpen = false;\r\n }\r\n this._oldItem = item;\r\n }\r\n }\r\n }\r\n }\r\n\r\n private _openAsOverlay(targetRef, overlayItems: any[]): void {\r\n let positions = [];\r\n if (this.orientation === 'vertical') {\r\n if (this._levelCount >= 1) {\r\n positions = [\r\n {\r\n originX: 'end',\r\n originY: 'center',\r\n overlayX: 'start',\r\n overlayY: 'top',\r\n },\r\n {\r\n originX: 'end',\r\n originY: 'center',\r\n overlayX: 'start',\r\n overlayY: 'bottom',\r\n },\r\n {\r\n originX: 'center',\r\n originY: 'center',\r\n overlayX: 'center',\r\n overlayY: 'center',\r\n },\r\n ];\r\n } else {\r\n positions = [\r\n {\r\n originX: 'end',\r\n originY: 'center',\r\n overlayX: 'start',\r\n overlayY: 'top',\r\n },\r\n {\r\n originX: 'end',\r\n originY: 'top',\r\n overlayX: 'start',\r\n overlayY: 'bottom',\r\n },\r\n {\r\n originX: 'center',\r\n originY: 'center',\r\n overlayX: 'center',\r\n overlayY: 'center',\r\n },\r\n ];\r\n }\r\n } else {\r\n if (this._levelCount >= 1) {\r\n positions = [\r\n {\r\n originX: 'end',\r\n originY: 'center',\r\n overlayX: 'start',\r\n overlayY: 'top',\r\n },\r\n {\r\n originX: 'end',\r\n originY: 'center',\r\n overlayX: 'start',\r\n overlayY: 'bottom',\r\n },\r\n {\r\n originX: 'end',\r\n originY: 'top',\r\n overlayX: 'center',\r\n overlayY: 'top',\r\n },\r\n {\r\n originX: 'center',\r\n originY: 'top',\r\n overlayX: 'center',\r\n overlayY: 'top',\r\n },\r\n ];\r\n } else {\r\n positions = [\r\n {\r\n originX: 'start',\r\n originY: 'bottom',\r\n overlayX: 'start',\r\n overlayY: 'top',\r\n },\r\n {\r\n originX: 'end',\r\n originY: 'center',\r\n overlayX: 'start',\r\n overlayY: 'bottom',\r\n },\r\n {\r\n originX: 'end',\r\n originY: 'top',\r\n overlayX: 'center',\r\n overlayY: 'top',\r\n },\r\n {\r\n originX: 'center',\r\n originY: 'top',\r\n overlayX: 'center',\r\n overlayY: 'top',\r\n },\r\n ];\r\n }\r\n }\r\n\r\n this._overlayRef = this._overlay.create({\r\n scrollStrategy: this._overlay.scrollStrategies.close(),\r\n positionStrategy: this._overlay\r\n .position()\r\n .flexibleConnectedTo(targetRef)\r\n .withPositions([...positions])\r\n .withPush(false),\r\n direction: this._platform.isRtl() ? 'rtl' : 'ltr',\r\n disposeOnNavigation: true,\r\n panelClass: ['ax-animate-fadeIn', 'ax-animate-faster', 'ax-overlay-menu'],\r\n maxHeight: 'unset',\r\n hasBackdrop: false,\r\n backdropClass: ['cdk-overlay-transparent-backdrop'],\r\n });\r\n\r\n const ref = this._overlayRef.attach(new ComponentPortal(AXMenuComponent));\r\n\r\n ref.instance.items = overlayItems;\r\n\r\n ref.instance.orientation = this.orientation;\r\n\r\n ref.instance.openMode = 'hover';\r\n\r\n ref.instance._levelCount = this._levelCount + 1;\r\n\r\n ref.instance.disableField = this.disableField;\r\n\r\n ref.instance.visibleField = this.visibleField;\r\n\r\n ref.instance.iconField = this.iconField;\r\n\r\n ref.instance.dividerField = this.dividerField;\r\n\r\n ref.onDestroy(() => {\r\n ref.instance?._overlayRef?.dispose();\r\n });\r\n\r\n this._overlayRef.outsidePointerEvents().subscribe((e) => {\r\n if (this._overlayRef && this.openMode === 'click') {\r\n this._close();\r\n e.stopPropagation();\r\n }\r\n });\r\n\r\n this._platform.scroll.subscribe(() => {\r\n if (this._overlayRef) {\r\n this._close();\r\n }\r\n });\r\n\r\n this._platform.resize.subscribe(() => {\r\n if (this._overlayRef) {\r\n this._close();\r\n }\r\n });\r\n }\r\n\r\n private _close() {\r\n this._overlayRef.detach();\r\n this._oldItem = null;\r\n this.displayItems.forEach((element) => {\r\n element.isOpen = false;\r\n element.isActive = false;\r\n });\r\n this.cdr.detectChanges();\r\n }\r\n\r\n onDestroy(): void {\r\n this._overlayRef?.detach();\r\n }\r\n}\r\n","<ng-container *ngIf=\"displayItems.length; else tmpEmpty\">\r\n <ul [ngClass]=\"_getDirection()\" [class.ax-rtl]=\"rtl\">\r\n <ng-container *ngTemplateOutlet=\"recursiveListTmpl; context:{ list: displayItems }\"></ng-container>\r\n </ul>\r\n <ng-template #recursiveListTmpl let-list=\"list\">\r\n <ng-container *ngFor=\"let item of list\">\r\n <li *ngIf=\"item[visibleField] !=false\" [class.ax-state-disabled]=\"item[disableField]\"\r\n (click)=\"_onMenuClick($event,item)\" (mouseenter)=\"_onMenuMouseEnter($event,item)\"\r\n [ngClass]=\"{'ax-state-active ': item.isActive}\">\r\n <div class=\"ax-menu-item\" *ngIf=\"itemTemplate == null else tmpItem\">\r\n <div class=\"ax-menu-item-prefix\">\r\n <ax-icon *ngIf=\"item[iconField]\" [class]=\"item[iconField]\"></ax-icon>\r\n <span>{{_getItemDisplayTextTemplte(item)}}</span>\r\n </div>\r\n <div class=\"ax-menu-item-suffix\">\r\n <ax-icon *ngIf=\"!item.isLoading\"\r\n [ngClass]=\"{'ax-ic-chevron':item?.children?.length > 0,'ax-menu-active-icon': item.isOpen}\">\r\n </ax-icon>\r\n <ax-loading *ngIf=\"item.isLoading\">\r\n </ax-loading>\r\n </div>\r\n </div>\r\n <!--------------- check for custom item template --------------->\r\n <ng-template #tmpItem>\r\n <ng-container *ngIf=\"!isLoading\">\r\n <ng-container *ngTemplateOutlet=\"itemTemplate;context: { $implicit: item }\">\r\n </ng-container>\r\n </ng-container>\r\n </ng-template>\r\n <ul *ngIf=\"item?.children?.length > 0 && item.isOpen &&!_overlayRef\"\r\n [class.ax-state-disabled]=\"item[disableField]\">\r\n <ng-container *ngTemplateOutlet=\"recursiveListTmpl; context:{ list: item.children }\">\r\n </ng-container>\r\n </ul>\r\n </li>\r\n <li class=\"ax-divider\" *ngIf=\"item[this.dividerField]\"></li>\r\n </ng-container>\r\n </ng-template>\r\n</ng-container>\r\n<ng-container *ngIf=\"isLoading\">\r\n <ng-template>\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\r\n<ng-template #tmpEmpty>\r\n <ng-container *ngIf=\"!isLoading\">\r\n <!--------------- check for custom template --------------->\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-list-item\">\r\n {{ 'common.no-result-found' | trans }}\r\n </div>\r\n </ng-template>\r\n </ng-container>\r\n</ng-template>","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { AXMenuComponent } from './menu.component';\r\nimport { AXLoadingModule } from '@acorex/components/loading';\r\nimport { AXTranslationModule } from '@acorex/core/translation';\r\nimport { AXDecoratorModule } from '@acorex/components/decorators';\r\nimport { OverlayModule } from '@angular/cdk/overlay';\r\n\r\nconst COMPONENT = [AXMenuComponent];\r\nconst MODULES = [\r\n AXDecoratorModule,\r\n AXLoadingModule,\r\n AXTranslationModule,\r\n OverlayModule,\r\n];\r\n\r\n@NgModule({\r\n declarations: [...COMPONENT],\r\n imports: [CommonModule, ...MODULES],\r\n exports: [...COMPONENT],\r\n providers: [],\r\n})\r\nexport class AXMenuModule {}\r\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":"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"}
|