@acorex/components 21.0.1-next.3 → 21.0.1-next.30
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/accordion/index.d.ts +0 -1
- package/action-sheet/index.d.ts +116 -34
- package/button-group/index.d.ts +6 -4
- package/chips/index.d.ts +3 -8
- package/collapse/index.d.ts +4 -6
- package/command/index.d.ts +8 -1
- package/conversation2/README.md +71 -31
- package/conversation2/index.d.ts +36 -35
- package/data-table/index.d.ts +4 -253
- package/datetime-picker/index.d.ts +1 -1
- package/dialog/index.d.ts +18 -14
- package/dropdown/index.d.ts +3 -8
- package/fesm2022/acorex-components-accordion.mjs +16 -21
- package/fesm2022/acorex-components-accordion.mjs.map +1 -1
- package/fesm2022/acorex-components-action-sheet.mjs +284 -118
- package/fesm2022/acorex-components-action-sheet.mjs.map +1 -1
- package/fesm2022/acorex-components-alert.mjs +13 -13
- package/fesm2022/acorex-components-alert.mjs.map +1 -1
- package/fesm2022/acorex-components-aspect-ratio.mjs +3 -3
- package/fesm2022/acorex-components-aspect-ratio.mjs.map +1 -1
- package/fesm2022/acorex-components-audio-wave.mjs +11 -10
- package/fesm2022/acorex-components-audio-wave.mjs.map +1 -1
- package/fesm2022/acorex-components-autocomplete.mjs +7 -7
- package/fesm2022/acorex-components-autocomplete.mjs.map +1 -1
- package/fesm2022/acorex-components-avatar.mjs +12 -12
- package/fesm2022/acorex-components-avatar.mjs.map +1 -1
- package/fesm2022/acorex-components-badge.mjs +9 -9
- package/fesm2022/acorex-components-badge.mjs.map +1 -1
- package/fesm2022/acorex-components-bottom-navigation.mjs +11 -11
- package/fesm2022/acorex-components-bottom-navigation.mjs.map +1 -1
- package/fesm2022/acorex-components-breadcrumbs.mjs +11 -11
- package/fesm2022/acorex-components-breadcrumbs.mjs.map +1 -1
- package/fesm2022/acorex-components-button-group.mjs +23 -19
- package/fesm2022/acorex-components-button-group.mjs.map +1 -1
- package/fesm2022/acorex-components-button.mjs +18 -18
- package/fesm2022/acorex-components-button.mjs.map +1 -1
- package/fesm2022/acorex-components-calendar.mjs +17 -17
- package/fesm2022/acorex-components-calendar.mjs.map +1 -1
- package/fesm2022/acorex-components-check-box.mjs +10 -10
- package/fesm2022/acorex-components-check-box.mjs.map +1 -1
- package/fesm2022/acorex-components-chips.mjs +12 -14
- package/fesm2022/acorex-components-chips.mjs.map +1 -1
- package/fesm2022/acorex-components-circular-progress.mjs +12 -10
- package/fesm2022/acorex-components-circular-progress.mjs.map +1 -1
- package/fesm2022/acorex-components-code-editor.mjs +10 -10
- package/fesm2022/acorex-components-code-editor.mjs.map +1 -1
- package/fesm2022/acorex-components-collapse.mjs +22 -19
- package/fesm2022/acorex-components-collapse.mjs.map +1 -1
- package/fesm2022/acorex-components-color-box.mjs +9 -9
- package/fesm2022/acorex-components-color-box.mjs.map +1 -1
- package/fesm2022/acorex-components-color-palette.mjs +30 -30
- package/fesm2022/acorex-components-color-palette.mjs.map +1 -1
- package/fesm2022/acorex-components-command.mjs +17 -11
- package/fesm2022/acorex-components-command.mjs.map +1 -1
- package/fesm2022/acorex-components-comment.mjs +32 -32
- package/fesm2022/acorex-components-comment.mjs.map +1 -1
- package/fesm2022/acorex-components-conversation.mjs +51 -51
- package/fesm2022/acorex-components-conversation.mjs.map +1 -1
- package/fesm2022/acorex-components-conversation2.mjs +309 -303
- package/fesm2022/acorex-components-conversation2.mjs.map +1 -1
- package/fesm2022/acorex-components-cron-job.mjs +46 -46
- package/fesm2022/acorex-components-cron-job.mjs.map +1 -1
- package/fesm2022/acorex-components-data-list.mjs +3 -3
- package/fesm2022/acorex-components-data-list.mjs.map +1 -1
- package/fesm2022/acorex-components-data-pager.mjs +33 -33
- package/fesm2022/acorex-components-data-pager.mjs.map +1 -1
- package/fesm2022/acorex-components-data-table.mjs +50 -486
- package/fesm2022/acorex-components-data-table.mjs.map +1 -1
- package/fesm2022/acorex-components-datetime-box.mjs +9 -9
- package/fesm2022/acorex-components-datetime-box.mjs.map +1 -1
- package/fesm2022/acorex-components-datetime-input.mjs +9 -9
- package/fesm2022/acorex-components-datetime-input.mjs.map +1 -1
- package/fesm2022/acorex-components-datetime-picker.mjs +40 -38
- package/fesm2022/acorex-components-datetime-picker.mjs.map +1 -1
- package/fesm2022/acorex-components-decorators.mjs +43 -36
- package/fesm2022/acorex-components-decorators.mjs.map +1 -1
- package/fesm2022/acorex-components-dialog.mjs +75 -54
- package/fesm2022/acorex-components-dialog.mjs.map +1 -1
- package/fesm2022/acorex-components-drawer-legacy.mjs +13 -13
- package/fesm2022/acorex-components-drawer-legacy.mjs.map +1 -1
- package/fesm2022/acorex-components-drawer.mjs +15 -16
- package/fesm2022/acorex-components-drawer.mjs.map +1 -1
- package/fesm2022/acorex-components-dropdown-button.mjs +9 -9
- package/fesm2022/acorex-components-dropdown-button.mjs.map +1 -1
- package/fesm2022/acorex-components-dropdown.mjs +25 -28
- package/fesm2022/acorex-components-dropdown.mjs.map +1 -1
- package/fesm2022/acorex-components-editor.mjs +11 -11
- package/fesm2022/acorex-components-editor.mjs.map +1 -1
- package/fesm2022/acorex-components-file-explorer.mjs +25 -25
- package/fesm2022/acorex-components-file-explorer.mjs.map +1 -1
- package/fesm2022/acorex-components-flow-chart.mjs +16 -16
- package/fesm2022/acorex-components-flow-chart.mjs.map +1 -1
- package/fesm2022/acorex-components-form.mjs +48 -42
- package/fesm2022/acorex-components-form.mjs.map +1 -1
- package/fesm2022/acorex-components-grid-layout-builder.mjs +13 -14
- package/fesm2022/acorex-components-grid-layout-builder.mjs.map +1 -1
- package/fesm2022/acorex-components-image-editor.mjs +44 -44
- package/fesm2022/acorex-components-image-editor.mjs.map +1 -1
- package/fesm2022/acorex-components-image.mjs +9 -9
- package/fesm2022/acorex-components-image.mjs.map +1 -1
- package/fesm2022/acorex-components-json-viewer.mjs +8 -8
- package/fesm2022/acorex-components-json-viewer.mjs.map +1 -1
- package/fesm2022/acorex-components-kanban.mjs +140 -13
- package/fesm2022/acorex-components-kanban.mjs.map +1 -1
- package/fesm2022/acorex-components-kbd.mjs +29 -11
- package/fesm2022/acorex-components-kbd.mjs.map +1 -1
- package/fesm2022/acorex-components-label.mjs +9 -9
- package/fesm2022/acorex-components-label.mjs.map +1 -1
- package/fesm2022/acorex-components-list.mjs +9 -9
- package/fesm2022/acorex-components-list.mjs.map +1 -1
- package/fesm2022/acorex-components-loading-dialog.mjs +82 -45
- package/fesm2022/acorex-components-loading-dialog.mjs.map +1 -1
- package/fesm2022/acorex-components-loading.mjs +23 -23
- package/fesm2022/acorex-components-loading.mjs.map +1 -1
- package/fesm2022/acorex-components-map.mjs +14 -14
- package/fesm2022/acorex-components-map.mjs.map +1 -1
- package/fesm2022/acorex-components-media-viewer.mjs +72 -54
- package/fesm2022/acorex-components-media-viewer.mjs.map +1 -1
- package/fesm2022/acorex-components-menu.mjs +43 -22
- package/fesm2022/acorex-components-menu.mjs.map +1 -1
- package/fesm2022/{acorex-components-modal-acorex-components-modal-CXXcFToK.mjs → acorex-components-modal-acorex-components-modal-BajlPo_n.mjs} +47 -23
- package/fesm2022/acorex-components-modal-acorex-components-modal-BajlPo_n.mjs.map +1 -0
- package/fesm2022/{acorex-components-modal-modal-content.component-B4rhHeEz.mjs → acorex-components-modal-modal-content.component-BVrBX4Qf.mjs} +9 -7
- package/fesm2022/acorex-components-modal-modal-content.component-BVrBX4Qf.mjs.map +1 -0
- package/fesm2022/acorex-components-modal.mjs +1 -1
- package/fesm2022/acorex-components-navbar.mjs +9 -9
- package/fesm2022/acorex-components-navbar.mjs.map +1 -1
- package/fesm2022/acorex-components-notification.mjs +381 -260
- package/fesm2022/acorex-components-notification.mjs.map +1 -1
- package/fesm2022/acorex-components-number-box-legacy.mjs +9 -9
- package/fesm2022/acorex-components-number-box-legacy.mjs.map +1 -1
- package/fesm2022/acorex-components-number-box.mjs +9 -9
- package/fesm2022/acorex-components-number-box.mjs.map +1 -1
- package/fesm2022/acorex-components-otp.mjs +9 -9
- package/fesm2022/acorex-components-otp.mjs.map +1 -1
- package/fesm2022/acorex-components-page.mjs +10 -10
- package/fesm2022/acorex-components-page.mjs.map +1 -1
- package/fesm2022/acorex-components-paint.mjs +34 -39
- package/fesm2022/acorex-components-paint.mjs.map +1 -1
- package/fesm2022/acorex-components-password-box.mjs +13 -13
- package/fesm2022/acorex-components-password-box.mjs.map +1 -1
- package/fesm2022/acorex-components-pdf-reader.mjs +8 -8
- package/fesm2022/acorex-components-pdf-reader.mjs.map +1 -1
- package/fesm2022/acorex-components-phone-box.mjs +88 -47
- package/fesm2022/acorex-components-phone-box.mjs.map +1 -1
- package/fesm2022/acorex-components-picker.mjs +19 -18
- package/fesm2022/acorex-components-picker.mjs.map +1 -1
- package/fesm2022/acorex-components-popover.mjs +213 -197
- package/fesm2022/acorex-components-popover.mjs.map +1 -1
- package/fesm2022/acorex-components-popup.mjs +308 -113
- package/fesm2022/acorex-components-popup.mjs.map +1 -1
- package/fesm2022/acorex-components-progress-bar.mjs +11 -9
- package/fesm2022/acorex-components-progress-bar.mjs.map +1 -1
- package/fesm2022/acorex-components-qrcode.mjs +9 -9
- package/fesm2022/acorex-components-qrcode.mjs.map +1 -1
- package/fesm2022/acorex-components-query-builder.mjs +8 -8
- package/fesm2022/acorex-components-query-builder.mjs.map +1 -1
- package/fesm2022/acorex-components-radio.mjs +9 -9
- package/fesm2022/acorex-components-radio.mjs.map +1 -1
- package/fesm2022/acorex-components-rail-navigation.mjs +38 -36
- package/fesm2022/acorex-components-rail-navigation.mjs.map +1 -1
- package/fesm2022/acorex-components-range-slider.mjs +10 -10
- package/fesm2022/acorex-components-range-slider.mjs.map +1 -1
- package/fesm2022/acorex-components-rate-picker.mjs +20 -35
- package/fesm2022/acorex-components-rate-picker.mjs.map +1 -1
- package/fesm2022/acorex-components-rest-api-generator.mjs +22 -22
- package/fesm2022/acorex-components-rest-api-generator.mjs.map +1 -1
- package/fesm2022/acorex-components-result.mjs +8 -8
- package/fesm2022/acorex-components-result.mjs.map +1 -1
- package/fesm2022/acorex-components-routing-progress.mjs +8 -8
- package/fesm2022/acorex-components-routing-progress.mjs.map +1 -1
- package/fesm2022/acorex-components-rrule.mjs +9 -9
- package/fesm2022/acorex-components-rrule.mjs.map +1 -1
- package/fesm2022/acorex-components-scheduler-picker.mjs +56 -56
- package/fesm2022/acorex-components-scheduler-picker.mjs.map +1 -1
- package/fesm2022/acorex-components-scheduler.mjs +43 -43
- package/fesm2022/acorex-components-scheduler.mjs.map +1 -1
- package/fesm2022/acorex-components-scss.mjs +4 -4
- package/fesm2022/acorex-components-scss.mjs.map +1 -1
- package/fesm2022/acorex-components-search-box.mjs +16 -10
- package/fesm2022/acorex-components-search-box.mjs.map +1 -1
- package/fesm2022/acorex-components-select-box.mjs +11 -9
- package/fesm2022/acorex-components-select-box.mjs.map +1 -1
- package/fesm2022/acorex-components-selection-list-2.mjs +11 -11
- package/fesm2022/acorex-components-selection-list-2.mjs.map +1 -1
- package/fesm2022/acorex-components-selection-list.mjs +9 -9
- package/fesm2022/acorex-components-selection-list.mjs.map +1 -1
- package/fesm2022/acorex-components-side-menu.mjs +74 -25
- package/fesm2022/acorex-components-side-menu.mjs.map +1 -1
- package/fesm2022/acorex-components-skeleton.mjs +8 -8
- package/fesm2022/acorex-components-skeleton.mjs.map +1 -1
- package/fesm2022/acorex-components-slider.mjs +12 -12
- package/fesm2022/acorex-components-slider.mjs.map +1 -1
- package/fesm2022/acorex-components-sliding-item.mjs +14 -14
- package/fesm2022/acorex-components-sliding-item.mjs.map +1 -1
- package/fesm2022/acorex-components-step-wizard.mjs +14 -14
- package/fesm2022/acorex-components-step-wizard.mjs.map +1 -1
- package/fesm2022/acorex-components-switch.mjs +14 -14
- package/fesm2022/acorex-components-switch.mjs.map +1 -1
- package/fesm2022/acorex-components-tabs.mjs +15 -15
- package/fesm2022/acorex-components-tabs.mjs.map +1 -1
- package/fesm2022/acorex-components-tag-box.mjs +9 -9
- package/fesm2022/acorex-components-tag-box.mjs.map +1 -1
- package/fesm2022/acorex-components-tag.mjs +9 -9
- package/fesm2022/acorex-components-tag.mjs.map +1 -1
- package/fesm2022/acorex-components-text-area.mjs +9 -9
- package/fesm2022/acorex-components-text-area.mjs.map +1 -1
- package/fesm2022/acorex-components-text-box.mjs +14 -12
- package/fesm2022/acorex-components-text-box.mjs.map +1 -1
- package/fesm2022/acorex-components-time-duration.mjs +18 -20
- package/fesm2022/acorex-components-time-duration.mjs.map +1 -1
- package/fesm2022/acorex-components-time-line.mjs +12 -12
- package/fesm2022/acorex-components-time-line.mjs.map +1 -1
- package/fesm2022/acorex-components-toast.mjs +239 -131
- package/fesm2022/acorex-components-toast.mjs.map +1 -1
- package/fesm2022/acorex-components-toolbar.mjs +8 -8
- package/fesm2022/acorex-components-toolbar.mjs.map +1 -1
- package/fesm2022/acorex-components-tooltip.mjs +67 -67
- package/fesm2022/acorex-components-tooltip.mjs.map +1 -1
- package/fesm2022/acorex-components-tree-view-legacy.mjs +16 -12
- package/fesm2022/acorex-components-tree-view-legacy.mjs.map +1 -1
- package/fesm2022/acorex-components-tree-view.mjs +26 -11
- package/fesm2022/acorex-components-tree-view.mjs.map +1 -1
- package/fesm2022/acorex-components-uploader.mjs +16 -16
- package/fesm2022/acorex-components-uploader.mjs.map +1 -1
- package/fesm2022/acorex-components-video-player.mjs +8 -8
- package/fesm2022/acorex-components-video-player.mjs.map +1 -1
- package/fesm2022/acorex-components-wysiwyg.mjs +42 -42
- package/fesm2022/acorex-components-wysiwyg.mjs.map +1 -1
- package/fesm2022/acorex-components.mjs.map +1 -1
- package/form/index.d.ts +2 -1
- package/grid-layout-builder/index.d.ts +1 -2
- package/kanban/index.d.ts +62 -4
- package/kbd/index.d.ts +13 -7
- package/loading/index.d.ts +1 -1
- package/loading-dialog/index.d.ts +31 -15
- package/media-viewer/index.d.ts +2 -1
- package/menu/index.d.ts +4 -0
- package/modal/index.d.ts +7 -0
- package/notification/index.d.ts +47 -32
- package/package.json +3 -3
- package/paint/index.d.ts +1 -6
- package/phone-box/index.d.ts +12 -7
- package/popover/index.d.ts +32 -30
- package/popup/index.d.ts +100 -27
- package/rate-picker/index.d.ts +5 -15
- package/side-menu/index.d.ts +9 -2
- package/slider/index.d.ts +2 -2
- package/time-duration/index.d.ts +0 -1
- package/toast/index.d.ts +24 -18
- package/tooltip/index.d.ts +4 -9
- package/tree-view/index.d.ts +11 -0
- package/tree-view-legacy/index.d.ts +1 -0
- package/fesm2022/acorex-components-modal-acorex-components-modal-CXXcFToK.mjs.map +0 -1
- package/fesm2022/acorex-components-modal-modal-content.component-B4rhHeEz.mjs.map +0 -1
|
@@ -1,12 +1,11 @@
|
|
|
1
1
|
import { MXBaseComponent, convertToPlacement, AXFocusableComponent, AXComponent } from '@acorex/cdk/common';
|
|
2
|
+
import { AXOverlayService } from '@acorex/cdk/overlay';
|
|
2
3
|
import { AXPlatform } from '@acorex/core/platform';
|
|
3
|
-
import {
|
|
4
|
-
import { Overlay } from '@angular/cdk/overlay';
|
|
5
|
-
import { TemplatePortal, ComponentPortal } from '@angular/cdk/portal';
|
|
4
|
+
import { AXTranslationService } from '@acorex/core/translation';
|
|
6
5
|
import { isPlatformBrowser, CommonModule } from '@angular/common';
|
|
7
6
|
import * as i0 from '@angular/core';
|
|
8
|
-
import { inject, DOCUMENT, PLATFORM_ID,
|
|
9
|
-
import { Subject, fromEvent, delay
|
|
7
|
+
import { inject, DOCUMENT, PLATFORM_ID, input, afterNextRender, EventEmitter, ElementRef, TemplateRef, Output, Input, ViewChild, ChangeDetectionStrategy, ViewEncapsulation, Component, NgModule } from '@angular/core';
|
|
8
|
+
import { Subject, fromEvent, delay } from 'rxjs';
|
|
10
9
|
|
|
11
10
|
/**
|
|
12
11
|
* @category Components
|
|
@@ -15,45 +14,62 @@ import { Subject, fromEvent, delay, debounceTime } from 'rxjs';
|
|
|
15
14
|
class AXPopoverComponent extends MXBaseComponent {
|
|
16
15
|
constructor() {
|
|
17
16
|
super(...arguments);
|
|
18
|
-
this
|
|
17
|
+
this.platform = inject(AXPlatform);
|
|
19
18
|
this.document = inject(DOCUMENT);
|
|
20
19
|
this.platformID = inject(PLATFORM_ID);
|
|
21
|
-
this.
|
|
22
|
-
this.
|
|
20
|
+
this.overlayService = inject(AXOverlayService);
|
|
21
|
+
this.onKeyDownHandler = null;
|
|
23
22
|
/** @ignore */
|
|
24
|
-
this.
|
|
23
|
+
this._overlayRef = null;
|
|
25
24
|
/** @ignore */
|
|
26
|
-
this.
|
|
27
|
-
/** @ignore */
|
|
28
|
-
this._isMouseOverButton = false;
|
|
29
|
-
/** @ignore */
|
|
30
|
-
this._isMouseOverTooltip = false;
|
|
25
|
+
this._lastActiveElement = null;
|
|
31
26
|
/** @ignore */
|
|
32
27
|
this._targetEvents = {};
|
|
33
28
|
/** @ignore */
|
|
34
|
-
this.
|
|
29
|
+
this._outsideClickHandler = null;
|
|
30
|
+
/** @ignore */
|
|
31
|
+
this.resizeObserver = null;
|
|
35
32
|
/** @ignore */
|
|
36
33
|
this.resize$ = new Subject();
|
|
37
|
-
//
|
|
38
34
|
/** @ignore */
|
|
39
35
|
this._disabled = false;
|
|
40
|
-
this.width = input('
|
|
36
|
+
this.width = input('fit-content', ...(ngDevMode ? [{ debugName: "width" }] : []));
|
|
37
|
+
this.translateService = inject(AXTranslationService);
|
|
38
|
+
this.#init = afterNextRender(() => {
|
|
39
|
+
const lang = this.translateService.getActiveLang();
|
|
40
|
+
let defaultPlacementDirection;
|
|
41
|
+
if (lang === 'en-US') {
|
|
42
|
+
defaultPlacementDirection = 'bottom-start';
|
|
43
|
+
}
|
|
44
|
+
else {
|
|
45
|
+
defaultPlacementDirection = 'bottom-end';
|
|
46
|
+
}
|
|
47
|
+
if (!this.placement)
|
|
48
|
+
this.placement = defaultPlacementDirection;
|
|
49
|
+
const converted = this.placement
|
|
50
|
+
? convertToPlacement(this.placement)
|
|
51
|
+
: convertToPlacement(defaultPlacementDirection);
|
|
52
|
+
this._placements = converted;
|
|
53
|
+
this.resize$.subscribe(() => {
|
|
54
|
+
if (this.isOpen) {
|
|
55
|
+
this.updatePosition();
|
|
56
|
+
}
|
|
57
|
+
});
|
|
58
|
+
});
|
|
41
59
|
/** @ignore */
|
|
42
60
|
this._offsetX = 0;
|
|
43
|
-
//
|
|
44
61
|
/** @ignore */
|
|
45
62
|
this._offsetY = 0;
|
|
46
63
|
/** @ignore */
|
|
47
|
-
this.
|
|
64
|
+
this._placements = [];
|
|
48
65
|
/** @ignore */
|
|
49
|
-
this.
|
|
66
|
+
this._placement = null;
|
|
50
67
|
/** @ignore */
|
|
51
|
-
this.
|
|
68
|
+
this._componentRef = null;
|
|
52
69
|
/** @ignore */
|
|
53
70
|
this._openOn = 'toggle';
|
|
54
71
|
/** @ignore */
|
|
55
72
|
this._closeOn = 'clickOut';
|
|
56
|
-
//
|
|
57
73
|
/**
|
|
58
74
|
* Determines if a backdrop should be displayed behind the popover.
|
|
59
75
|
*/
|
|
@@ -61,16 +77,15 @@ class AXPopoverComponent extends MXBaseComponent {
|
|
|
61
77
|
/**
|
|
62
78
|
* Delay in milliseconds before the popover opens after a trigger event.
|
|
63
79
|
*/
|
|
64
|
-
this.
|
|
80
|
+
this._openAfter = 200;
|
|
65
81
|
/**
|
|
66
82
|
* Delay in milliseconds before the popover closes after a trigger event.
|
|
67
83
|
*/
|
|
68
|
-
this.
|
|
84
|
+
this._closeAfter = 200;
|
|
69
85
|
/**
|
|
70
86
|
* Enables or disables adaptivity.
|
|
71
87
|
*/
|
|
72
88
|
this.adaptivityEnabled = false;
|
|
73
|
-
//
|
|
74
89
|
/**
|
|
75
90
|
* Emits when the component is opened.
|
|
76
91
|
* @event
|
|
@@ -82,7 +97,7 @@ class AXPopoverComponent extends MXBaseComponent {
|
|
|
82
97
|
*/
|
|
83
98
|
this.onClosed = new EventEmitter();
|
|
84
99
|
}
|
|
85
|
-
#
|
|
100
|
+
#init;
|
|
86
101
|
/**
|
|
87
102
|
* Gets or sets whether the popover is disabled.
|
|
88
103
|
* When disabled, the popover will not open and will close if already open.
|
|
@@ -149,7 +164,6 @@ class AXPopoverComponent extends MXBaseComponent {
|
|
|
149
164
|
this._target = v.nativeElement;
|
|
150
165
|
else if (typeof v?.getHostElement == 'function')
|
|
151
166
|
this._target = v.getHostElement();
|
|
152
|
-
//
|
|
153
167
|
this.bindTargetEvents();
|
|
154
168
|
}
|
|
155
169
|
/**
|
|
@@ -166,10 +180,14 @@ class AXPopoverComponent extends MXBaseComponent {
|
|
|
166
180
|
name: 'placement',
|
|
167
181
|
value: v,
|
|
168
182
|
afterCallback: (o, n) => {
|
|
183
|
+
if (!n)
|
|
184
|
+
return;
|
|
169
185
|
const converted = convertToPlacement(n);
|
|
170
|
-
this._placements = converted
|
|
186
|
+
this._placements = converted;
|
|
171
187
|
this.updateOffset();
|
|
172
|
-
this.
|
|
188
|
+
if (this._overlayRef) {
|
|
189
|
+
this._overlayRef.updatePosition();
|
|
190
|
+
}
|
|
173
191
|
},
|
|
174
192
|
});
|
|
175
193
|
}
|
|
@@ -205,7 +223,6 @@ class AXPopoverComponent extends MXBaseComponent {
|
|
|
205
223
|
}
|
|
206
224
|
/**
|
|
207
225
|
* Sets the trigger for closing the popover and rebinds target events.
|
|
208
|
-
* @param v
|
|
209
226
|
*/
|
|
210
227
|
set closeOn(v) {
|
|
211
228
|
this.setOption({
|
|
@@ -216,6 +233,20 @@ class AXPopoverComponent extends MXBaseComponent {
|
|
|
216
233
|
},
|
|
217
234
|
});
|
|
218
235
|
}
|
|
236
|
+
get openAfter() {
|
|
237
|
+
return this._openAfter;
|
|
238
|
+
}
|
|
239
|
+
set openAfter(value) {
|
|
240
|
+
this._openAfter = value;
|
|
241
|
+
this.bindTargetEvents();
|
|
242
|
+
}
|
|
243
|
+
get closeAfter() {
|
|
244
|
+
return this._closeAfter;
|
|
245
|
+
}
|
|
246
|
+
set closeAfter(value) {
|
|
247
|
+
this._closeAfter = value;
|
|
248
|
+
this.bindTargetEvents();
|
|
249
|
+
}
|
|
219
250
|
/** @ignore */
|
|
220
251
|
_emitOnOpenedEvent() {
|
|
221
252
|
this.onOpened.emit({
|
|
@@ -230,25 +261,12 @@ class AXPopoverComponent extends MXBaseComponent {
|
|
|
230
261
|
htmlElement: this.getHostElement(),
|
|
231
262
|
});
|
|
232
263
|
}
|
|
233
|
-
//
|
|
234
|
-
/** @ignore */
|
|
235
|
-
_handleMouseEnter(e) {
|
|
236
|
-
this._isMouseOverTooltip = true;
|
|
237
|
-
}
|
|
238
|
-
/** @ignore */
|
|
239
|
-
_handleMouseLeave(e) {
|
|
240
|
-
this._isMouseOverTooltip = false;
|
|
241
|
-
setTimeout(() => {
|
|
242
|
-
if (!this._isMouseOverButton && this.closeOn == 'leave') {
|
|
243
|
-
this.close();
|
|
244
|
-
}
|
|
245
|
-
}, 250);
|
|
246
|
-
}
|
|
247
264
|
/** @ignore */
|
|
248
265
|
removeTargetEvents() {
|
|
249
266
|
Object.entries(this._targetEvents).forEach((e) => {
|
|
250
|
-
e[1]
|
|
267
|
+
e[1]?.unsubscribe();
|
|
251
268
|
});
|
|
269
|
+
this._targetEvents = {};
|
|
252
270
|
}
|
|
253
271
|
/** @ignore */
|
|
254
272
|
bindTargetEvents() {
|
|
@@ -257,84 +275,93 @@ class AXPopoverComponent extends MXBaseComponent {
|
|
|
257
275
|
return;
|
|
258
276
|
const targetMouseEnter$ = fromEvent(this._target, 'mouseenter');
|
|
259
277
|
const targetMouseLeave$ = fromEvent(this._target, 'mouseleave');
|
|
260
|
-
if (this.openOn
|
|
278
|
+
if (this.openOn === 'hover') {
|
|
261
279
|
this._targetEvents.mouseenter = targetMouseEnter$.pipe(delay(this.openAfter)).subscribe(() => {
|
|
262
|
-
this._isMouseOverButton = true;
|
|
263
280
|
this.open();
|
|
264
281
|
});
|
|
265
282
|
}
|
|
266
|
-
if (this.closeOn
|
|
283
|
+
if (this.closeOn === 'leave') {
|
|
267
284
|
this._targetEvents.mouseleave = targetMouseLeave$.pipe(delay(this.closeAfter)).subscribe(() => {
|
|
268
|
-
this.
|
|
269
|
-
if (!this._isMouseOverTooltip) {
|
|
270
|
-
this.close();
|
|
271
|
-
}
|
|
285
|
+
this.close();
|
|
272
286
|
});
|
|
273
287
|
}
|
|
274
288
|
if (this.openOn === 'click' || this.openOn === 'toggle') {
|
|
275
289
|
const click$ = fromEvent(this._target, 'click');
|
|
276
|
-
this._targetEvents.click = click$.subscribe((
|
|
277
|
-
this.openOn
|
|
290
|
+
this._targetEvents.click = click$.subscribe(() => {
|
|
291
|
+
this.openOn === 'toggle' ? this.toggle() : this.open();
|
|
278
292
|
});
|
|
279
293
|
}
|
|
280
294
|
}
|
|
281
|
-
//
|
|
282
295
|
/** @ignore */
|
|
283
296
|
bindOverlayEvents() {
|
|
284
|
-
this.
|
|
285
|
-
|
|
286
|
-
|
|
287
|
-
|
|
288
|
-
|
|
289
|
-
|
|
290
|
-
|
|
291
|
-
this._overlayRef?.overlayElement?.addEventListener('mouseleave', this._handleMouseLeave.bind(this));
|
|
292
|
-
}
|
|
293
|
-
//
|
|
294
|
-
this._overlayEvents.outside = this._overlayRef._outsidePointerEvents.subscribe((e) => {
|
|
297
|
+
const overlayElement = this._overlayRef?.overlayElement;
|
|
298
|
+
if (!overlayElement)
|
|
299
|
+
return;
|
|
300
|
+
overlayElement.style.pointerEvents = 'none';
|
|
301
|
+
// Outside click handler
|
|
302
|
+
if (this.closeOn === 'clickOut') {
|
|
303
|
+
this._outsideClickHandler = (e) => {
|
|
295
304
|
const el = e.target;
|
|
296
|
-
if (this.
|
|
297
|
-
|
|
298
|
-
|
|
299
|
-
|
|
300
|
-
this.close();
|
|
301
|
-
}
|
|
302
|
-
});
|
|
303
|
-
//
|
|
304
|
-
this._overlayEvents.scroll = this._platform.scroll.subscribe((c) => {
|
|
305
|
-
//__axContext__
|
|
306
|
-
const el = c.nativeEvent.target;
|
|
307
|
-
if (!this.isActionsheetStyle && isPlatformBrowser(this.platformID)) {
|
|
308
|
-
if (el == this.document) {
|
|
309
|
-
this.close();
|
|
305
|
+
if (this.isOpen && !this._target?.contains(el) && !overlayElement?.contains(el)) {
|
|
306
|
+
// Check if the click is inside a child overlay (e.g., selectbox dropdown)
|
|
307
|
+
// Child overlays have a higher z-index than this popover
|
|
308
|
+
if (this.isClickInsideChildOverlay(el)) {
|
|
310
309
|
return;
|
|
311
310
|
}
|
|
312
|
-
|
|
313
|
-
!el.closest('.ax-overlay-pane') &&
|
|
314
|
-
!this._target.contains(el) &&
|
|
315
|
-
!this._overlayRef?.overlayElement?.contains(el)) {
|
|
316
|
-
this.close();
|
|
317
|
-
}
|
|
311
|
+
this.close();
|
|
318
312
|
}
|
|
319
|
-
}
|
|
320
|
-
|
|
313
|
+
};
|
|
314
|
+
this.document.addEventListener('mousedown', this._outsideClickHandler);
|
|
315
|
+
}
|
|
316
|
+
// Resize observer
|
|
317
|
+
this.initializeResizeObserver();
|
|
318
|
+
setTimeout(() => {
|
|
319
|
+
overlayElement.style.pointerEvents = 'auto';
|
|
320
|
+
}, this.openAfter);
|
|
321
321
|
}
|
|
322
322
|
/** @ignore */
|
|
323
323
|
removeOverlayEvents() {
|
|
324
|
-
|
|
325
|
-
|
|
326
|
-
|
|
327
|
-
|
|
328
|
-
|
|
324
|
+
if (this._outsideClickHandler) {
|
|
325
|
+
this.document.removeEventListener('mousedown', this._outsideClickHandler);
|
|
326
|
+
this._outsideClickHandler = null;
|
|
327
|
+
}
|
|
328
|
+
}
|
|
329
|
+
/**
|
|
330
|
+
* Checks if the clicked element is inside a child overlay (e.g., selectbox dropdown).
|
|
331
|
+
* Child overlays are identified by having a higher z-index than this popover's overlay.
|
|
332
|
+
* @ignore
|
|
333
|
+
*/
|
|
334
|
+
isClickInsideChildOverlay(element) {
|
|
335
|
+
const overlayElement = this._overlayRef?.overlayElement;
|
|
336
|
+
if (!overlayElement)
|
|
337
|
+
return false;
|
|
338
|
+
// Find if the clicked element is inside any overlay container
|
|
339
|
+
const clickedOverlay = element.closest('.ax-overlay-container');
|
|
340
|
+
if (!clickedOverlay)
|
|
341
|
+
return false;
|
|
342
|
+
// Get z-index values
|
|
343
|
+
const popoverZIndex = parseInt(overlayElement.style.zIndex || '0', 10);
|
|
344
|
+
const clickedZIndex = parseInt(clickedOverlay.style.zIndex || '0', 10);
|
|
345
|
+
// If the clicked overlay has a higher z-index, it's a child overlay
|
|
346
|
+
return clickedZIndex > popoverZIndex;
|
|
347
|
+
}
|
|
348
|
+
/** @ignore */
|
|
349
|
+
handleOverlayDisposed() {
|
|
350
|
+
// Called when overlay is disposed externally (e.g., by scroll)
|
|
351
|
+
this.disconnectResizeObserver();
|
|
352
|
+
this.removeOverlayEvents();
|
|
353
|
+
this.removeKeyDownListener();
|
|
354
|
+
this._overlayRef = null;
|
|
355
|
+
this._componentRef = null;
|
|
356
|
+
this.restoreFocus();
|
|
357
|
+
this._emitOnClosedEvent();
|
|
329
358
|
}
|
|
330
|
-
//
|
|
331
359
|
/**
|
|
332
360
|
* Toggles the component's open state.
|
|
333
361
|
*/
|
|
334
362
|
toggle() {
|
|
335
363
|
this.isOpen ? this.close() : this.open();
|
|
336
364
|
}
|
|
337
|
-
//
|
|
338
365
|
/**
|
|
339
366
|
* Closes the component if it's open, detaches the overlay, restores focus, and emits the closed event.
|
|
340
367
|
*/
|
|
@@ -343,29 +370,45 @@ class AXPopoverComponent extends MXBaseComponent {
|
|
|
343
370
|
return;
|
|
344
371
|
}
|
|
345
372
|
this.disconnectResizeObserver();
|
|
346
|
-
this.
|
|
373
|
+
this.removeOverlayEvents();
|
|
374
|
+
this.removeKeyDownListener();
|
|
375
|
+
if (this._overlayRef) {
|
|
376
|
+
this._overlayRef.dispose();
|
|
377
|
+
this._overlayRef = null;
|
|
378
|
+
}
|
|
379
|
+
this._componentRef = null;
|
|
347
380
|
this.restoreFocus();
|
|
348
381
|
this._emitOnClosedEvent();
|
|
349
|
-
this.onKeyDownListenerFn();
|
|
350
382
|
}
|
|
351
|
-
//
|
|
352
383
|
/**
|
|
353
384
|
* Opens the component if it's not already open, saves focus, opens the overlay, and emits the opened event.
|
|
354
385
|
*/
|
|
355
|
-
open() {
|
|
386
|
+
async open() {
|
|
356
387
|
if (this.isOpen || this.disabled) {
|
|
357
388
|
return;
|
|
358
389
|
}
|
|
390
|
+
this.addKeyDownListener();
|
|
391
|
+
this.saveFocus();
|
|
392
|
+
await this.openOverlayInternal();
|
|
393
|
+
this._emitOnOpenedEvent();
|
|
394
|
+
}
|
|
395
|
+
/** @ignore */
|
|
396
|
+
addKeyDownListener() {
|
|
359
397
|
if (isPlatformBrowser(this.platformID)) {
|
|
360
|
-
this.
|
|
361
|
-
if (e.key
|
|
398
|
+
this.onKeyDownHandler = (e) => {
|
|
399
|
+
if (e.key === 'Escape') {
|
|
362
400
|
this.close();
|
|
363
401
|
}
|
|
364
|
-
}
|
|
402
|
+
};
|
|
403
|
+
this.document.addEventListener('keydown', this.onKeyDownHandler);
|
|
404
|
+
}
|
|
405
|
+
}
|
|
406
|
+
/** @ignore */
|
|
407
|
+
removeKeyDownListener() {
|
|
408
|
+
if (this.onKeyDownHandler) {
|
|
409
|
+
this.document.removeEventListener('keydown', this.onKeyDownHandler);
|
|
410
|
+
this.onKeyDownHandler = null;
|
|
365
411
|
}
|
|
366
|
-
this.saveFocus();
|
|
367
|
-
this.openOverlayInternal();
|
|
368
|
-
this._emitOnOpenedEvent();
|
|
369
412
|
}
|
|
370
413
|
/** @ignore */
|
|
371
414
|
saveFocus() {
|
|
@@ -376,105 +419,81 @@ class AXPopoverComponent extends MXBaseComponent {
|
|
|
376
419
|
/** @ignore */
|
|
377
420
|
restoreFocus() {
|
|
378
421
|
if (this._lastActiveElement instanceof HTMLElement) {
|
|
379
|
-
|
|
380
|
-
this._lastActiveElement.focus();
|
|
381
|
-
}
|
|
422
|
+
this._lastActiveElement?.focus?.();
|
|
382
423
|
}
|
|
383
424
|
}
|
|
384
425
|
/** @ignore */
|
|
385
|
-
openOverlayInternal() {
|
|
426
|
+
async openOverlayInternal() {
|
|
386
427
|
const targetRef = this._target;
|
|
387
428
|
if (!targetRef)
|
|
388
429
|
return;
|
|
389
|
-
//
|
|
390
|
-
|
|
391
|
-
|
|
392
|
-
|
|
393
|
-
disposeOnNavigation: true,
|
|
394
|
-
scrollStrategy: this._overlay.scrollStrategies.block(),
|
|
395
|
-
panelClass: [
|
|
396
|
-
'ax-actionsheet-base',
|
|
397
|
-
'ax-animate-slideInUp',
|
|
398
|
-
'ax-animate-faster',
|
|
399
|
-
this.panelClass ? this.panelClass : this.#platform.isDark() ? 'ax-dark' : '',
|
|
400
|
-
],
|
|
401
|
-
hasBackdrop: true,
|
|
402
|
-
width: '100%',
|
|
403
|
-
});
|
|
430
|
+
// Build panel classes
|
|
431
|
+
const panelClasses = ['ax-animate-fadeIn', 'ax-animate-faster'];
|
|
432
|
+
if (this.platform.isDark()) {
|
|
433
|
+
panelClasses.push('ax-dark');
|
|
404
434
|
}
|
|
405
|
-
|
|
406
|
-
|
|
407
|
-
positionStrategy: this._overlay.position().flexibleConnectedTo(targetRef).withPositions(this._placements),
|
|
408
|
-
scrollStrategy: this._overlay.scrollStrategies.noop(),
|
|
409
|
-
disposeOnNavigation: true,
|
|
410
|
-
panelClass: ['ax-animate-fadeIn', 'ax-animate-faster', this.#platform.isDark() ? 'ax-dark' : ''],
|
|
411
|
-
maxHeight: 'unset',
|
|
412
|
-
hasBackdrop: this.hasBackdrop,
|
|
413
|
-
backdropClass: [this.backdropClass || 'cdk-overlay-transparent-backdrop'],
|
|
414
|
-
direction: AXHtmlUtil.isRtl(this.getHostElement()) ? 'rtl' : 'ltr',
|
|
415
|
-
width: this.width(),
|
|
416
|
-
});
|
|
417
|
-
// this._overlayRef.setDirection()
|
|
435
|
+
if (this.panelClass) {
|
|
436
|
+
panelClasses.push(this.panelClass);
|
|
418
437
|
}
|
|
419
|
-
//
|
|
420
|
-
|
|
421
|
-
|
|
422
|
-
//
|
|
438
|
+
// Determine content to display
|
|
439
|
+
let contentToRender;
|
|
440
|
+
let inputs;
|
|
423
441
|
if (this.content instanceof TemplateRef) {
|
|
424
|
-
|
|
425
|
-
$implicit: this.context,
|
|
426
|
-
ref: this,
|
|
427
|
-
});
|
|
428
|
-
this._overlayRef?.attach(this._portal);
|
|
442
|
+
contentToRender = this.content;
|
|
429
443
|
}
|
|
430
444
|
else if (typeof this.content === 'function') {
|
|
431
|
-
|
|
432
|
-
|
|
433
|
-
Object.assign(this._componentRef.instance, this.context);
|
|
445
|
+
contentToRender = this.content;
|
|
446
|
+
inputs = this.context;
|
|
434
447
|
}
|
|
435
448
|
else {
|
|
436
|
-
|
|
437
|
-
|
|
438
|
-
|
|
439
|
-
|
|
440
|
-
|
|
449
|
+
contentToRender = this._baseTemplate;
|
|
450
|
+
}
|
|
451
|
+
// Create the overlay
|
|
452
|
+
this._overlayRef = await this.overlayService.create(contentToRender, {
|
|
453
|
+
inputs,
|
|
454
|
+
anchorOptions: {
|
|
455
|
+
anchor: targetRef,
|
|
456
|
+
placement: this._placement,
|
|
457
|
+
offsetX: this._offsetX,
|
|
458
|
+
offsetY: this._offsetY,
|
|
459
|
+
autoFlip: true,
|
|
460
|
+
},
|
|
461
|
+
panelClass: panelClasses,
|
|
462
|
+
width: this.width(),
|
|
463
|
+
onDispose: () => this.handleOverlayDisposed(),
|
|
464
|
+
actionSheetStyle: this.isActionsheetStyle,
|
|
465
|
+
});
|
|
466
|
+
// Store component ref if it's a component
|
|
467
|
+
if (this._overlayRef.instance && 'instance' in this._overlayRef.instance) {
|
|
468
|
+
this._componentRef = this._overlayRef.instance;
|
|
469
|
+
if (this.context && this._componentRef.instance) {
|
|
470
|
+
Object.assign(this._componentRef.instance, this.context);
|
|
471
|
+
}
|
|
441
472
|
}
|
|
473
|
+
// Bind overlay events
|
|
474
|
+
this.bindOverlayEvents();
|
|
442
475
|
}
|
|
443
476
|
/**
|
|
444
477
|
* Checks if the overlay is currently open.
|
|
445
478
|
* @returns {boolean}
|
|
446
479
|
*/
|
|
447
480
|
get isOpen() {
|
|
448
|
-
return this._overlayRef
|
|
481
|
+
return this._overlayRef !== null;
|
|
449
482
|
}
|
|
450
483
|
/**
|
|
451
484
|
* Determines if the actionsheet style should be applied.
|
|
452
485
|
* @returns {boolean}
|
|
453
486
|
*/
|
|
454
487
|
get isActionsheetStyle() {
|
|
455
|
-
return this.
|
|
456
|
-
}
|
|
457
|
-
/** @ignore */
|
|
458
|
-
updatePositionStrategy() {
|
|
459
|
-
const targetRef = this._target;
|
|
460
|
-
if (!targetRef)
|
|
461
|
-
return;
|
|
462
|
-
let strategy;
|
|
463
|
-
if (this.isActionsheetStyle) {
|
|
464
|
-
strategy = this._overlay.position().global().bottom().centerHorizontally();
|
|
465
|
-
}
|
|
466
|
-
else {
|
|
467
|
-
strategy = this._overlay.position().flexibleConnectedTo(targetRef).withPositions(this._placements);
|
|
468
|
-
}
|
|
469
|
-
this._overlayRef?.updatePositionStrategy(strategy);
|
|
488
|
+
return this.platform.is('SM');
|
|
470
489
|
}
|
|
471
490
|
/** @ignore */
|
|
472
491
|
updateOffset() {
|
|
473
492
|
this._placements?.forEach((p) => {
|
|
474
|
-
if (this.
|
|
475
|
-
p.offsetY = this.
|
|
476
|
-
if (this.
|
|
477
|
-
p.offsetX = this.
|
|
493
|
+
if (this._offsetY != null)
|
|
494
|
+
p.offsetY = this._offsetY;
|
|
495
|
+
if (this._offsetX != null)
|
|
496
|
+
p.offsetX = this._offsetX;
|
|
478
497
|
});
|
|
479
498
|
}
|
|
480
499
|
/**
|
|
@@ -488,7 +507,13 @@ class AXPopoverComponent extends MXBaseComponent {
|
|
|
488
507
|
* Focuses the overlay element.
|
|
489
508
|
*/
|
|
490
509
|
focus() {
|
|
491
|
-
//
|
|
510
|
+
// Optional focus behavior
|
|
511
|
+
}
|
|
512
|
+
/**
|
|
513
|
+
* Brings this popover to the front of all other overlays.
|
|
514
|
+
*/
|
|
515
|
+
bringToFront() {
|
|
516
|
+
this._overlayRef?.bringToFront();
|
|
492
517
|
}
|
|
493
518
|
/** @ignore */
|
|
494
519
|
initializeResizeObserver() {
|
|
@@ -499,7 +524,7 @@ class AXPopoverComponent extends MXBaseComponent {
|
|
|
499
524
|
this.resizeObserver = new ResizeObserver(() => {
|
|
500
525
|
this.resize$.next();
|
|
501
526
|
});
|
|
502
|
-
this.resizeObserver.observe(this._overlayRef
|
|
527
|
+
this.resizeObserver.observe(this._overlayRef.overlayElement);
|
|
503
528
|
}
|
|
504
529
|
/** @ignore */
|
|
505
530
|
disconnectResizeObserver() {
|
|
@@ -508,34 +533,25 @@ class AXPopoverComponent extends MXBaseComponent {
|
|
|
508
533
|
this.resizeObserver = null;
|
|
509
534
|
}
|
|
510
535
|
}
|
|
511
|
-
//
|
|
512
|
-
ngOnInit() {
|
|
513
|
-
super.ngOnInit();
|
|
514
|
-
// this.platformService.directionChange.subscribe((c) => {
|
|
515
|
-
// this.isRtl = c.data == 'rtl';
|
|
516
|
-
// });
|
|
517
|
-
this.resize$.pipe(debounceTime(50)).subscribe(() => {
|
|
518
|
-
if (this.isOpen) {
|
|
519
|
-
this.updatePosition();
|
|
520
|
-
}
|
|
521
|
-
});
|
|
522
|
-
}
|
|
523
536
|
/** @ignore */
|
|
524
537
|
ngOnDestroy() {
|
|
525
538
|
this.disconnectResizeObserver();
|
|
526
539
|
this.resize$.complete();
|
|
527
540
|
this.removeTargetEvents();
|
|
528
541
|
this.removeOverlayEvents();
|
|
529
|
-
this.
|
|
530
|
-
this._overlayRef
|
|
542
|
+
this.removeKeyDownListener();
|
|
543
|
+
if (this._overlayRef) {
|
|
544
|
+
this._overlayRef.dispose();
|
|
545
|
+
this._overlayRef = null;
|
|
546
|
+
}
|
|
531
547
|
}
|
|
532
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.
|
|
533
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "20.3.
|
|
548
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.16", ngImport: i0, type: AXPopoverComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
|
|
549
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "20.3.16", type: AXPopoverComponent, isStandalone: true, selector: "ax-popover", inputs: { width: { classPropertyName: "width", publicName: "width", isSignal: true, isRequired: false, transformFunction: null }, disabled: { classPropertyName: "disabled", publicName: "disabled", isSignal: false, isRequired: false, transformFunction: null }, offsetX: { classPropertyName: "offsetX", publicName: "offsetX", isSignal: false, isRequired: false, transformFunction: null }, offsetY: { classPropertyName: "offsetY", publicName: "offsetY", isSignal: false, isRequired: false, transformFunction: null }, target: { classPropertyName: "target", publicName: "target", isSignal: false, isRequired: false, transformFunction: null }, placement: { classPropertyName: "placement", publicName: "placement", isSignal: false, isRequired: false, transformFunction: null }, content: { classPropertyName: "content", publicName: "content", isSignal: false, isRequired: false, transformFunction: null }, openOn: { classPropertyName: "openOn", publicName: "openOn", isSignal: false, isRequired: false, transformFunction: null }, closeOn: { classPropertyName: "closeOn", publicName: "closeOn", isSignal: false, isRequired: false, transformFunction: null }, hasBackdrop: { classPropertyName: "hasBackdrop", publicName: "hasBackdrop", isSignal: false, isRequired: false, transformFunction: null }, openAfter: { classPropertyName: "openAfter", publicName: "openAfter", isSignal: false, isRequired: false, transformFunction: null }, closeAfter: { classPropertyName: "closeAfter", publicName: "closeAfter", isSignal: false, isRequired: false, transformFunction: null }, backdropClass: { classPropertyName: "backdropClass", publicName: "backdropClass", isSignal: false, isRequired: false, transformFunction: null }, panelClass: { classPropertyName: "panelClass", publicName: "panelClass", isSignal: false, isRequired: false, transformFunction: null }, adaptivityEnabled: { classPropertyName: "adaptivityEnabled", publicName: "adaptivityEnabled", isSignal: false, isRequired: false, transformFunction: null } }, outputs: { onOpened: "onOpened", onClosed: "onClosed" }, providers: [
|
|
534
550
|
{ provide: AXFocusableComponent, useExisting: AXPopoverComponent },
|
|
535
551
|
{ provide: AXComponent, useExisting: AXPopoverComponent },
|
|
536
552
|
], viewQueries: [{ propertyName: "_baseTemplate", first: true, predicate: ["baseTemplate"], descendants: true, static: true }], usesInheritance: true, ngImport: i0, template: "<ng-template #baseTemplate>\n <ng-content></ng-content>\n</ng-template>\n", changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
|
|
537
553
|
}
|
|
538
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.
|
|
554
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.16", ngImport: i0, type: AXPopoverComponent, decorators: [{
|
|
539
555
|
type: Component,
|
|
540
556
|
args: [{ selector: 'ax-popover', encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, providers: [
|
|
541
557
|
{ provide: AXFocusableComponent, useExisting: AXPopoverComponent },
|
|
@@ -579,11 +595,11 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImpo
|
|
|
579
595
|
}] } });
|
|
580
596
|
|
|
581
597
|
class AXPopoverModule {
|
|
582
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.
|
|
583
|
-
static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "20.3.
|
|
584
|
-
static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "20.3.
|
|
598
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.16", ngImport: i0, type: AXPopoverModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
|
|
599
|
+
static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "20.3.16", ngImport: i0, type: AXPopoverModule, imports: [CommonModule, AXPopoverComponent], exports: [AXPopoverComponent] }); }
|
|
600
|
+
static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "20.3.16", ngImport: i0, type: AXPopoverModule, imports: [CommonModule] }); }
|
|
585
601
|
}
|
|
586
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.
|
|
602
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.16", ngImport: i0, type: AXPopoverModule, decorators: [{
|
|
587
603
|
type: NgModule,
|
|
588
604
|
args: [{
|
|
589
605
|
imports: [CommonModule, AXPopoverComponent],
|