@lucca-front/ng 21.3.0-rc.5 → 22.0.0-rc.2
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/fesm2022/lucca-front-ng-a11y.mjs +3 -3
- package/fesm2022/lucca-front-ng-activity-feed.mjs +12 -17
- package/fesm2022/lucca-front-ng-activity-feed.mjs.map +1 -1
- package/fesm2022/lucca-front-ng-api.mjs +122 -202
- package/fesm2022/lucca-front-ng-api.mjs.map +1 -1
- package/fesm2022/lucca-front-ng-app-layout.mjs +3 -3
- package/fesm2022/lucca-front-ng-box.mjs +3 -3
- package/fesm2022/lucca-front-ng-breadcrumbs.mjs +6 -6
- package/fesm2022/lucca-front-ng-bubble-icon.mjs +4 -10
- package/fesm2022/lucca-front-ng-bubble-icon.mjs.map +1 -1
- package/fesm2022/lucca-front-ng-bubble-illustration.mjs +5 -10
- package/fesm2022/lucca-front-ng-bubble-illustration.mjs.map +1 -1
- package/fesm2022/lucca-front-ng-callout.mjs +36 -36
- package/fesm2022/lucca-front-ng-callout.mjs.map +1 -1
- package/fesm2022/lucca-front-ng-chip.mjs +4 -10
- package/fesm2022/lucca-front-ng-chip.mjs.map +1 -1
- package/fesm2022/lucca-front-ng-clear.mjs +9 -15
- package/fesm2022/lucca-front-ng-clear.mjs.map +1 -1
- package/fesm2022/lucca-front-ng-code.mjs +4 -4
- package/fesm2022/lucca-front-ng-code.mjs.map +1 -1
- package/fesm2022/lucca-front-ng-color.mjs +4 -9
- package/fesm2022/lucca-front-ng-color.mjs.map +1 -1
- package/fesm2022/lucca-front-ng-comment.mjs +12 -17
- package/fesm2022/lucca-front-ng-comment.mjs.map +1 -1
- package/fesm2022/lucca-front-ng-container.mjs +4 -9
- package/fesm2022/lucca-front-ng-container.mjs.map +1 -1
- package/fesm2022/lucca-front-ng-core-select-api.mjs +29 -45
- package/fesm2022/lucca-front-ng-core-select-api.mjs.map +1 -1
- package/fesm2022/lucca-front-ng-core-select-department.mjs +13 -11
- package/fesm2022/lucca-front-ng-core-select-department.mjs.map +1 -1
- package/fesm2022/lucca-front-ng-core-select-establishment.mjs +9 -9
- package/fesm2022/lucca-front-ng-core-select-establishment.mjs.map +1 -1
- package/fesm2022/lucca-front-ng-core-select-job-qualification.mjs +6 -6
- package/fesm2022/lucca-front-ng-core-select-job-qualification.mjs.map +1 -1
- package/fesm2022/lucca-front-ng-core-select-occupation-category.mjs +3 -3
- package/fesm2022/lucca-front-ng-core-select-occupation-category.mjs.map +1 -1
- package/fesm2022/lucca-front-ng-core-select-user.mjs +42 -42
- package/fesm2022/lucca-front-ng-core-select-user.mjs.map +1 -1
- package/fesm2022/lucca-front-ng-core-select.mjs +204 -270
- package/fesm2022/lucca-front-ng-core-select.mjs.map +1 -1
- package/fesm2022/lucca-front-ng-core.mjs +37 -21
- package/fesm2022/lucca-front-ng-core.mjs.map +1 -1
- package/fesm2022/lucca-front-ng-data-table.mjs +61 -60
- package/fesm2022/lucca-front-ng-data-table.mjs.map +1 -1
- package/fesm2022/lucca-front-ng-date.mjs +144 -164
- package/fesm2022/lucca-front-ng-date.mjs.map +1 -1
- package/fesm2022/lucca-front-ng-date2.mjs +147 -150
- package/fesm2022/lucca-front-ng-date2.mjs.map +1 -1
- package/fesm2022/lucca-front-ng-department.mjs +26 -24
- package/fesm2022/lucca-front-ng-department.mjs.map +1 -1
- package/fesm2022/lucca-front-ng-dialog.mjs +92 -68
- package/fesm2022/lucca-front-ng-dialog.mjs.map +1 -1
- package/fesm2022/lucca-front-ng-divider.mjs +7 -14
- package/fesm2022/lucca-front-ng-divider.mjs.map +1 -1
- package/fesm2022/lucca-front-ng-dropdown.mjs +69 -72
- package/fesm2022/lucca-front-ng-dropdown.mjs.map +1 -1
- package/fesm2022/lucca-front-ng-empty-state.mjs +15 -20
- package/fesm2022/lucca-front-ng-empty-state.mjs.map +1 -1
- package/fesm2022/lucca-front-ng-error-page.mjs +4 -9
- package/fesm2022/lucca-front-ng-error-page.mjs.map +1 -1
- package/fesm2022/lucca-front-ng-establishment.mjs +81 -115
- package/fesm2022/lucca-front-ng-establishment.mjs.map +1 -1
- package/fesm2022/lucca-front-ng-fancy-box.mjs +5 -10
- package/fesm2022/lucca-front-ng-fancy-box.mjs.map +1 -1
- package/fesm2022/lucca-front-ng-file-upload.mjs +33 -52
- package/fesm2022/lucca-front-ng-file-upload.mjs.map +1 -1
- package/fesm2022/lucca-front-ng-filter-pills.mjs +41 -24
- package/fesm2022/lucca-front-ng-filter-pills.mjs.map +1 -1
- package/fesm2022/lucca-front-ng-footer.mjs +4 -10
- package/fesm2022/lucca-front-ng-footer.mjs.map +1 -1
- package/fesm2022/lucca-front-ng-form-field.mjs +43 -64
- package/fesm2022/lucca-front-ng-form-field.mjs.map +1 -1
- package/fesm2022/lucca-front-ng-form-header.mjs +4 -9
- package/fesm2022/lucca-front-ng-form-header.mjs.map +1 -1
- package/fesm2022/lucca-front-ng-form-label.mjs +4 -9
- package/fesm2022/lucca-front-ng-form-label.mjs.map +1 -1
- package/fesm2022/lucca-front-ng-form.mjs +6 -9
- package/fesm2022/lucca-front-ng-form.mjs.map +1 -1
- package/fesm2022/lucca-front-ng-formly.mjs +60 -59
- package/fesm2022/lucca-front-ng-formly.mjs.map +1 -1
- package/fesm2022/lucca-front-ng-forms-phone-number-input.mjs +53 -53
- package/fesm2022/lucca-front-ng-forms-phone-number-input.mjs.map +1 -1
- package/fesm2022/lucca-front-ng-forms-rich-text-input-formatters-html.mjs +18 -16
- package/fesm2022/lucca-front-ng-forms-rich-text-input-formatters-html.mjs.map +1 -1
- package/fesm2022/lucca-front-ng-forms-rich-text-input-formatters-markdown.mjs +9 -8
- package/fesm2022/lucca-front-ng-forms-rich-text-input-formatters-markdown.mjs.map +1 -1
- package/fesm2022/lucca-front-ng-forms-rich-text-input-formatters-plain-text.mjs +8 -6
- package/fesm2022/lucca-front-ng-forms-rich-text-input-formatters-plain-text.mjs.map +1 -1
- package/fesm2022/lucca-front-ng-forms-rich-text-input.mjs +64 -57
- package/fesm2022/lucca-front-ng-forms-rich-text-input.mjs.map +1 -1
- package/fesm2022/lucca-front-ng-forms.mjs +51 -109
- package/fesm2022/lucca-front-ng-forms.mjs.map +1 -1
- package/fesm2022/lucca-front-ng-gauge.mjs +3 -3
- package/fesm2022/lucca-front-ng-grid.mjs +9 -21
- package/fesm2022/lucca-front-ng-grid.mjs.map +1 -1
- package/fesm2022/lucca-front-ng-highlight-data.mjs +5 -27
- package/fesm2022/lucca-front-ng-highlight-data.mjs.map +1 -1
- package/fesm2022/lucca-front-ng-horizontal-navigation.mjs +15 -160
- package/fesm2022/lucca-front-ng-horizontal-navigation.mjs.map +1 -1
- package/fesm2022/lucca-front-ng-index-table.mjs +38 -44
- package/fesm2022/lucca-front-ng-index-table.mjs.map +1 -1
- package/fesm2022/lucca-front-ng-inline-message.mjs +4 -11
- package/fesm2022/lucca-front-ng-inline-message.mjs.map +1 -1
- package/fesm2022/lucca-front-ng-input.mjs +28 -26
- package/fesm2022/lucca-front-ng-input.mjs.map +1 -1
- package/fesm2022/lucca-front-ng-link.mjs +6 -6
- package/fesm2022/lucca-front-ng-link.mjs.map +1 -1
- package/fesm2022/lucca-front-ng-listbox.mjs +10 -15
- package/fesm2022/lucca-front-ng-listbox.mjs.map +1 -1
- package/fesm2022/lucca-front-ng-listing.mjs +8 -8
- package/fesm2022/lucca-front-ng-listing.mjs.map +1 -1
- package/fesm2022/lucca-front-ng-loading.mjs +4 -9
- package/fesm2022/lucca-front-ng-loading.mjs.map +1 -1
- package/fesm2022/lucca-front-ng-main-layout.mjs +6 -6
- package/fesm2022/lucca-front-ng-mobile-push.mjs +4 -4
- package/fesm2022/lucca-front-ng-mobile-push.mjs.map +1 -1
- package/fesm2022/lucca-front-ng-modal.mjs +36 -40
- package/fesm2022/lucca-front-ng-modal.mjs.map +1 -1
- package/fesm2022/lucca-front-ng-multi-select.mjs +174 -203
- package/fesm2022/lucca-front-ng-multi-select.mjs.map +1 -1
- package/fesm2022/lucca-front-ng-new-badge.mjs +3 -3
- package/fesm2022/lucca-front-ng-number-format.mjs +22 -25
- package/fesm2022/lucca-front-ng-number-format.mjs.map +1 -1
- package/fesm2022/lucca-front-ng-number.mjs +7 -7
- package/fesm2022/lucca-front-ng-numeric-badge.mjs +4 -9
- package/fesm2022/lucca-front-ng-numeric-badge.mjs.map +1 -1
- package/fesm2022/lucca-front-ng-option.mjs +159 -162
- package/fesm2022/lucca-front-ng-option.mjs.map +1 -1
- package/fesm2022/lucca-front-ng-page-header.mjs +3 -3
- package/fesm2022/lucca-front-ng-page-header.mjs.map +1 -1
- package/fesm2022/lucca-front-ng-pagination.mjs +5 -10
- package/fesm2022/lucca-front-ng-pagination.mjs.map +1 -1
- package/fesm2022/lucca-front-ng-plg-push.mjs +5 -5
- package/fesm2022/lucca-front-ng-plg-push.mjs.map +1 -1
- package/fesm2022/lucca-front-ng-popover.mjs +144 -255
- package/fesm2022/lucca-front-ng-popover.mjs.map +1 -1
- package/fesm2022/lucca-front-ng-popover2.mjs +41 -69
- package/fesm2022/lucca-front-ng-popover2.mjs.map +1 -1
- package/fesm2022/lucca-front-ng-popup.mjs +11 -11
- package/fesm2022/lucca-front-ng-popup.mjs.map +1 -1
- package/fesm2022/lucca-front-ng-progress-bar.mjs +4 -9
- package/fesm2022/lucca-front-ng-progress-bar.mjs.map +1 -1
- package/fesm2022/lucca-front-ng-progress-stepper.mjs +7 -12
- package/fesm2022/lucca-front-ng-progress-stepper.mjs.map +1 -1
- package/fesm2022/lucca-front-ng-read-more.mjs +5 -10
- package/fesm2022/lucca-front-ng-read-more.mjs.map +1 -1
- package/fesm2022/lucca-front-ng-resource-card.mjs +13 -19
- package/fesm2022/lucca-front-ng-resource-card.mjs.map +1 -1
- package/fesm2022/lucca-front-ng-safe-content.mjs +10 -10
- package/fesm2022/lucca-front-ng-scroll-box.mjs +3 -3
- package/fesm2022/lucca-front-ng-scroll-box.mjs.map +1 -1
- package/fesm2022/lucca-front-ng-scroll.mjs +7 -7
- package/fesm2022/lucca-front-ng-scroll.mjs.map +1 -1
- package/fesm2022/lucca-front-ng-segmented-control-tabs.mjs +8 -14
- package/fesm2022/lucca-front-ng-segmented-control-tabs.mjs.map +1 -1
- package/fesm2022/lucca-front-ng-segmented-control.mjs +6 -6
- package/fesm2022/lucca-front-ng-select.mjs +92 -138
- package/fesm2022/lucca-front-ng-select.mjs.map +1 -1
- package/fesm2022/lucca-front-ng-sidepanel.mjs +7 -7
- package/fesm2022/lucca-front-ng-sidepanel.mjs.map +1 -1
- package/fesm2022/lucca-front-ng-simple-select.mjs +43 -41
- package/fesm2022/lucca-front-ng-simple-select.mjs.map +1 -1
- package/fesm2022/lucca-front-ng-skeleton.mjs +28 -50
- package/fesm2022/lucca-front-ng-skeleton.mjs.map +1 -1
- package/fesm2022/lucca-front-ng-software-icon-wrapper.mjs +6 -6
- package/fesm2022/lucca-front-ng-software-icon.mjs +25 -29
- package/fesm2022/lucca-front-ng-software-icon.mjs.map +1 -1
- package/fesm2022/lucca-front-ng-sortable-list.mjs +6 -6
- package/fesm2022/lucca-front-ng-sortable-list.mjs.map +1 -1
- package/fesm2022/lucca-front-ng-status-badge.mjs +4 -9
- package/fesm2022/lucca-front-ng-status-badge.mjs.map +1 -1
- package/fesm2022/lucca-front-ng-table-of-content.mjs +6 -6
- package/fesm2022/lucca-front-ng-tag.mjs +5 -10
- package/fesm2022/lucca-front-ng-tag.mjs.map +1 -1
- package/fesm2022/lucca-front-ng-text-flow.mjs +4 -4
- package/fesm2022/lucca-front-ng-text-flow.mjs.map +1 -1
- package/fesm2022/lucca-front-ng-time.mjs +68 -316
- package/fesm2022/lucca-front-ng-time.mjs.map +1 -1
- package/fesm2022/lucca-front-ng-title.mjs +10 -10
- package/fesm2022/lucca-front-ng-title.mjs.map +1 -1
- package/fesm2022/lucca-front-ng-toast.mjs +11 -11
- package/fesm2022/lucca-front-ng-toast.mjs.map +1 -1
- package/fesm2022/lucca-front-ng-tooltip.mjs +17 -17
- package/fesm2022/lucca-front-ng-tree-select.mjs +17 -16
- package/fesm2022/lucca-front-ng-tree-select.mjs.map +1 -1
- package/fesm2022/lucca-front-ng-user-popover.mjs +27 -32
- package/fesm2022/lucca-front-ng-user-popover.mjs.map +1 -1
- package/fesm2022/lucca-front-ng-user.mjs +139 -195
- package/fesm2022/lucca-front-ng-user.mjs.map +1 -1
- package/fesm2022/lucca-front-ng-vertical-navigation.mjs +12 -12
- package/package.json +5 -13
- package/schematics/lib/local-deps/package-lock.json +79 -17
- package/schematics/lib/local-deps/package.json +1 -1
- package/schematics/palettes/index.js +1 -12
- package/src/components/_picker.scss +1 -2
- package/types/lucca-front-ng-activity-feed.d.ts +1 -8
- package/types/lucca-front-ng-api.d.ts +75 -81
- package/types/lucca-front-ng-bubble-icon.d.ts +1 -10
- package/types/lucca-front-ng-bubble-illustration.d.ts +4 -10
- package/types/lucca-front-ng-callout.d.ts +12 -20
- package/types/lucca-front-ng-chip.d.ts +1 -10
- package/types/lucca-front-ng-clear.d.ts +6 -11
- package/types/lucca-front-ng-color.d.ts +1 -8
- package/types/lucca-front-ng-comment.d.ts +1 -8
- package/types/lucca-front-ng-container.d.ts +1 -8
- package/types/lucca-front-ng-core-select-api.d.ts +28 -28
- package/types/lucca-front-ng-core-select-department.d.ts +10 -10
- package/types/lucca-front-ng-core-select-establishment.d.ts +12 -12
- package/types/lucca-front-ng-core-select-job-qualification.d.ts +6 -6
- package/types/lucca-front-ng-core-select-occupation-category.d.ts +6 -6
- package/types/lucca-front-ng-core-select-user.d.ts +20 -21
- package/types/lucca-front-ng-core-select.d.ts +186 -185
- package/types/lucca-front-ng-core.d.ts +16 -10
- package/types/lucca-front-ng-data-table.d.ts +41 -52
- package/types/lucca-front-ng-date.d.ts +30 -28
- package/types/lucca-front-ng-date2.d.ts +98 -106
- package/types/lucca-front-ng-department.d.ts +2 -2
- package/types/lucca-front-ng-dialog.d.ts +13 -13
- package/types/lucca-front-ng-divider.d.ts +2 -9
- package/types/lucca-front-ng-dropdown.d.ts +5 -4
- package/types/lucca-front-ng-empty-state.d.ts +7 -15
- package/types/lucca-front-ng-error-page.d.ts +4 -9
- package/types/lucca-front-ng-establishment.d.ts +26 -27
- package/types/lucca-front-ng-fancy-box.d.ts +1 -8
- package/types/lucca-front-ng-file-upload.d.ts +24 -39
- package/types/lucca-front-ng-filter-pills.d.ts +37 -32
- package/types/lucca-front-ng-footer.d.ts +2 -11
- package/types/lucca-front-ng-form-field.d.ts +27 -45
- package/types/lucca-front-ng-form-header.d.ts +1 -8
- package/types/lucca-front-ng-form-label.d.ts +1 -8
- package/types/lucca-front-ng-form.d.ts +0 -2
- package/types/lucca-front-ng-forms-phone-number-input.d.ts +19 -26
- package/types/lucca-front-ng-forms-rich-text-input.d.ts +15 -14
- package/types/lucca-front-ng-forms.d.ts +54 -95
- package/types/lucca-front-ng-grid.d.ts +8 -23
- package/types/lucca-front-ng-highlight-data.d.ts +1 -16
- package/types/lucca-front-ng-horizontal-navigation.d.ts +3 -40
- package/types/lucca-front-ng-index-table.d.ts +40 -49
- package/types/lucca-front-ng-inline-message.d.ts +4 -11
- package/types/lucca-front-ng-input.d.ts +8 -8
- package/types/lucca-front-ng-link.d.ts +4 -4
- package/types/lucca-front-ng-listbox.d.ts +1 -8
- package/types/lucca-front-ng-loading.d.ts +1 -8
- package/types/lucca-front-ng-mobile-push.d.ts +1 -1
- package/types/lucca-front-ng-modal.d.ts +12 -12
- package/types/lucca-front-ng-multi-select.d.ts +55 -58
- package/types/lucca-front-ng-number-format.d.ts +2 -2
- package/types/lucca-front-ng-numeric-badge.d.ts +1 -8
- package/types/lucca-front-ng-option.d.ts +26 -26
- package/types/lucca-front-ng-page-header.d.ts +1 -1
- package/types/lucca-front-ng-pagination.d.ts +1 -8
- package/types/lucca-front-ng-popover.d.ts +53 -47
- package/types/lucca-front-ng-popover2.d.ts +33 -31
- package/types/lucca-front-ng-popup.d.ts +8 -8
- package/types/lucca-front-ng-progress-bar.d.ts +1 -8
- package/types/lucca-front-ng-progress-stepper.d.ts +1 -8
- package/types/lucca-front-ng-read-more.d.ts +7 -14
- package/types/lucca-front-ng-resource-card.d.ts +1 -10
- package/types/lucca-front-ng-scroll-box.d.ts +3 -3
- package/types/lucca-front-ng-segmented-control-tabs.d.ts +1 -3
- package/types/lucca-front-ng-segmented-control.d.ts +2 -4
- package/types/lucca-front-ng-select.d.ts +34 -32
- package/types/lucca-front-ng-sidepanel.d.ts +1 -1
- package/types/lucca-front-ng-simple-select.d.ts +16 -17
- package/types/lucca-front-ng-skeleton.d.ts +10 -26
- package/types/lucca-front-ng-software-icon.d.ts +5 -10
- package/types/lucca-front-ng-sortable-list.d.ts +8 -8
- package/types/lucca-front-ng-status-badge.d.ts +1 -8
- package/types/lucca-front-ng-tag.d.ts +1 -8
- package/types/lucca-front-ng-time.d.ts +25 -103
- package/types/lucca-front-ng-title.d.ts +5 -5
- package/types/lucca-front-ng-toast.d.ts +1 -1
- package/types/lucca-front-ng-tree-select.d.ts +11 -11
- package/types/lucca-front-ng-user-popover.d.ts +10 -9
- package/types/lucca-front-ng-user.d.ts +31 -45
- package/fesm2022/lucca-front-ng-highlight-text.mjs +0 -26
- package/fesm2022/lucca-front-ng-highlight-text.mjs.map +0 -1
- package/fesm2022/lucca-front-ng-impersonation.mjs +0 -119
- package/fesm2022/lucca-front-ng-impersonation.mjs.map +0 -1
- package/schematics/package.json +0 -3
- package/types/lucca-front-ng-highlight-text.d.ts +0 -12
- package/types/lucca-front-ng-impersonation.d.ts +0 -33
|
@@ -5,9 +5,10 @@ import * as i1$1 from '@angular/cdk/overlay';
|
|
|
5
5
|
import { OverlayModule, OverlayConfig } from '@angular/cdk/overlay';
|
|
6
6
|
import { NgTemplateOutlet } from '@angular/common';
|
|
7
7
|
import * as i0 from '@angular/core';
|
|
8
|
-
import {
|
|
8
|
+
import { input, EventEmitter, viewChild, TemplateRef, ChangeDetectionStrategy, Component, NgModule, Directive } from '@angular/core';
|
|
9
|
+
import { outputFromObservable } from '@angular/core/rxjs-interop';
|
|
10
|
+
import { syncInputSignal, ɵeffectWithDeps as _effectWithDeps, isNotNil, generateId } from '@lucca-front/ng/core';
|
|
9
11
|
import { TemplatePortal } from '@angular/cdk/portal';
|
|
10
|
-
import { generateId } from '@lucca-front/ng/core';
|
|
11
12
|
import { timer, Subject, Subscription } from 'rxjs';
|
|
12
13
|
import { distinctUntilChanged, debounce, map } from 'rxjs/operators';
|
|
13
14
|
|
|
@@ -147,69 +148,63 @@ class ALuPopoverPanel {
|
|
|
147
148
|
|
|
148
149
|
// import { standardPopoverTemplate } from './popover.template';
|
|
149
150
|
class LuPopoverPanelComponent extends ALuPopoverPanel {
|
|
150
|
-
/** Template to Use for the popover */
|
|
151
|
-
get template() {
|
|
152
|
-
return this._template;
|
|
153
|
-
}
|
|
154
|
-
set template(value) {
|
|
155
|
-
this._template = value;
|
|
156
|
-
}
|
|
157
|
-
/** Template context to use for the popover when created using a template */
|
|
158
|
-
get templateContext() {
|
|
159
|
-
return this._templateContext;
|
|
160
|
-
}
|
|
161
|
-
set templateContext(value) {
|
|
162
|
-
this._templateContext = value;
|
|
163
|
-
}
|
|
164
|
-
/**
|
|
165
|
-
* Popover container close on click
|
|
166
|
-
* default: false
|
|
167
|
-
*/
|
|
168
|
-
set inputCloseOnClick(v) {
|
|
169
|
-
this.closeOnClick = v;
|
|
170
|
-
}
|
|
171
|
-
/**
|
|
172
|
-
* Popover focus trap using cdkTrapFocus
|
|
173
|
-
* default: false
|
|
174
|
-
*/
|
|
175
|
-
set inputTrapFocus(v) {
|
|
176
|
-
this.trapFocus = v;
|
|
177
|
-
}
|
|
178
|
-
/**
|
|
179
|
-
* Popover scrollStrategy
|
|
180
|
-
* default: reposition
|
|
181
|
-
*/
|
|
182
|
-
set inputScrollStrategy(v) {
|
|
183
|
-
this.scrollStrategy = v;
|
|
184
|
-
}
|
|
185
|
-
/**
|
|
186
|
-
* This method takes classes set on the host lu-popover element and applies them on the
|
|
187
|
-
* popover template that displays in the overlay container. Otherwise, it's difficult
|
|
188
|
-
* to style the containing popover from outside the component.
|
|
189
|
-
* @param classes list of class names
|
|
190
|
-
*/
|
|
191
|
-
set inputPanelClasses(classes) {
|
|
192
|
-
this.panelClasses = classes;
|
|
193
|
-
}
|
|
194
|
-
/**
|
|
195
|
-
* This method takes classes set on the host lu-popover element and applies them on the
|
|
196
|
-
* popover template that displays in the overlay container. Otherwise, it's difficult
|
|
197
|
-
* to style the containing popover from outside the component.
|
|
198
|
-
* @param classes list of class names
|
|
199
|
-
*/
|
|
200
|
-
set inputContentClasses(classes) {
|
|
201
|
-
this.contentClasses = classes;
|
|
202
|
-
}
|
|
203
|
-
set vcTemplateRef(tr) {
|
|
204
|
-
this.templateRef = tr;
|
|
205
|
-
}
|
|
206
151
|
constructor() {
|
|
207
152
|
super();
|
|
208
|
-
/**
|
|
209
|
-
|
|
153
|
+
/** Template to Use for the popover */
|
|
154
|
+
this.template = input(...(ngDevMode ? [undefined, { debugName: "template" }] : /* istanbul ignore next */ []));
|
|
155
|
+
/** Template context to use for the popover when created using a template */
|
|
156
|
+
this.templateContext = input(undefined, { ...(ngDevMode ? { debugName: "templateContext" } : /* istanbul ignore next */ {}), alias: 'template-context' });
|
|
157
|
+
/**
|
|
158
|
+
* Popover container close on click
|
|
159
|
+
* default: false
|
|
160
|
+
*/
|
|
161
|
+
this.inputCloseOnClick = input(false, { ...(ngDevMode ? { debugName: "inputCloseOnClick" } : /* istanbul ignore next */ {}), alias: 'close-on-click' });
|
|
162
|
+
/**
|
|
163
|
+
* Popover focus trap using cdkTrapFocus
|
|
164
|
+
* default: false
|
|
165
|
+
*/
|
|
166
|
+
this.inputTrapFocus = input(false, { ...(ngDevMode ? { debugName: "inputTrapFocus" } : /* istanbul ignore next */ {}), alias: 'trap-focus' });
|
|
167
|
+
/**
|
|
168
|
+
* Popover scrollStrategy
|
|
169
|
+
* default: reposition
|
|
170
|
+
*/
|
|
171
|
+
this.inputScrollStrategy = input('reposition', { ...(ngDevMode ? { debugName: "inputScrollStrategy" } : /* istanbul ignore next */ {}), alias: 'scroll-strategy' });
|
|
172
|
+
/**
|
|
173
|
+
* This method takes classes set on the host lu-popover element and applies them on the
|
|
174
|
+
* popover template that displays in the overlay container. Otherwise, it's difficult
|
|
175
|
+
* to style the containing popover from outside the component.
|
|
176
|
+
* @param classes list of class names
|
|
177
|
+
*/
|
|
178
|
+
this.inputPanelClasses = input('', { ...(ngDevMode ? { debugName: "inputPanelClasses" } : /* istanbul ignore next */ {}), alias: 'panel-classes' });
|
|
179
|
+
/**
|
|
180
|
+
* This method takes classes set on the host lu-popover element and applies them on the
|
|
181
|
+
* popover template that displays in the overlay container. Otherwise, it's difficult
|
|
182
|
+
* to style the containing popover from outside the component.
|
|
183
|
+
* @param classes list of class names
|
|
184
|
+
*/
|
|
185
|
+
this.inputContentClasses = input('', { ...(ngDevMode ? { debugName: "inputContentClasses" } : /* istanbul ignore next */ {}), alias: 'content-classes' });
|
|
210
186
|
this.close = new EventEmitter();
|
|
211
187
|
this.open = new EventEmitter();
|
|
212
188
|
this.hovered = new EventEmitter();
|
|
189
|
+
/** Event emitted when the popover is closed. */
|
|
190
|
+
this.closeOutput = outputFromObservable(this.close, { alias: 'close' });
|
|
191
|
+
/** Event emitted when the popover is open. */
|
|
192
|
+
this.openOutput = outputFromObservable(this.open, { alias: 'open' });
|
|
193
|
+
/** Event emitted when the popover is hovered. */
|
|
194
|
+
this.hoveredOutput = outputFromObservable(this.hovered, { alias: 'hovered' });
|
|
195
|
+
this.vcTemplateRef = viewChild(TemplateRef, ...(ngDevMode ? [{ debugName: "vcTemplateRef" }] : /* istanbul ignore next */ []));
|
|
196
|
+
syncInputSignal(this.template, (template) => (this._template = template));
|
|
197
|
+
syncInputSignal(this.templateContext, (templateContext) => (this._templateContext = templateContext));
|
|
198
|
+
syncInputSignal(this.inputCloseOnClick, (closeOnClick) => (this.closeOnClick = closeOnClick));
|
|
199
|
+
syncInputSignal(this.inputTrapFocus, (trapFocus) => (this.trapFocus = trapFocus));
|
|
200
|
+
syncInputSignal(this.inputScrollStrategy, (scrollStrategy) => (this.scrollStrategy = scrollStrategy));
|
|
201
|
+
syncInputSignal(this.inputPanelClasses, (panelClasses) => (this.panelClasses = panelClasses));
|
|
202
|
+
syncInputSignal(this.inputContentClasses, (contentClasses) => (this.contentClasses = contentClasses));
|
|
203
|
+
_effectWithDeps([this.vcTemplateRef], (vcTemplateRef) => {
|
|
204
|
+
if (isNotNil(vcTemplateRef)) {
|
|
205
|
+
this.templateRef = vcTemplateRef;
|
|
206
|
+
}
|
|
207
|
+
});
|
|
213
208
|
}
|
|
214
209
|
ngOnDestroy() {
|
|
215
210
|
this.onClose();
|
|
@@ -224,52 +219,23 @@ class LuPopoverPanelComponent extends ALuPopoverPanel {
|
|
|
224
219
|
_emitHoveredEvent(hovered) {
|
|
225
220
|
this.hovered.emit(hovered);
|
|
226
221
|
}
|
|
227
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.
|
|
228
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "
|
|
222
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.14", ngImport: i0, type: LuPopoverPanelComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
223
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.2.0", version: "21.2.14", type: LuPopoverPanelComponent, isStandalone: true, selector: "lu-popover", inputs: { template: { classPropertyName: "template", publicName: "template", isSignal: true, isRequired: false, transformFunction: null }, templateContext: { classPropertyName: "templateContext", publicName: "template-context", isSignal: true, isRequired: false, transformFunction: null }, inputCloseOnClick: { classPropertyName: "inputCloseOnClick", publicName: "close-on-click", isSignal: true, isRequired: false, transformFunction: null }, inputTrapFocus: { classPropertyName: "inputTrapFocus", publicName: "trap-focus", isSignal: true, isRequired: false, transformFunction: null }, inputScrollStrategy: { classPropertyName: "inputScrollStrategy", publicName: "scroll-strategy", isSignal: true, isRequired: false, transformFunction: null }, inputPanelClasses: { classPropertyName: "inputPanelClasses", publicName: "panel-classes", isSignal: true, isRequired: false, transformFunction: null }, inputContentClasses: { classPropertyName: "inputContentClasses", publicName: "content-classes", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { closeOutput: "close", openOutput: "open", hoveredOutput: "hovered" }, viewQueries: [{ propertyName: "vcTemplateRef", first: true, predicate: TemplateRef, descendants: true, isSignal: true }], exportAs: ["LuPopoverPanel"], usesInheritance: true, ngImport: i0, template: "<ng-template>\n\t<div\n\t\tclass=\"lu-popover-panel\"\n\t\t[class]=\"panelClassesMap\"\n\t\t(keydown)=\"_handleKeydown($event)\"\n\t\t(click)=\"onClick()\"\n\t\t(mouseover)=\"onMouseOver()\"\n\t\t(mouseleave)=\"onMouseLeave()\"\n\t\t(mousedown)=\"onMouseDown()\"\n\t\t[attr.id]=\"panelId\"\n\t\t[attr.aria-labelledby]=\"triggerId\"\n\t\t[@transformPopover]=\"'enter'\"\n\t>\n\t\t<div class=\"lu-popover-content\" [class]=\"contentClassesMap\" [cdkTrapFocus]=\"trapFocus\">\n\t\t\t<ng-content /><ng-container *ngTemplateOutlet=\"template(); context: templateContext()\" />\n\t\t</div>\n\t</div>\n</ng-template>\n", dependencies: [{ kind: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "ngmodule", type: OverlayModule }, { kind: "ngmodule", type: A11yModule }, { kind: "directive", type: i1.CdkTrapFocus, selector: "[cdkTrapFocus]", inputs: ["cdkTrapFocus", "cdkTrapFocusAutoCapture"], exportAs: ["cdkTrapFocus"] }], animations: [luTransformPopover], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
229
224
|
}
|
|
230
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.
|
|
225
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.14", ngImport: i0, type: LuPopoverPanelComponent, decorators: [{
|
|
231
226
|
type: Component,
|
|
232
|
-
args: [{ selector: 'lu-popover', changeDetection: ChangeDetectionStrategy.OnPush, animations: [luTransformPopover], imports: [NgTemplateOutlet, OverlayModule, A11yModule], exportAs: 'LuPopoverPanel', template: "<ng-template>\n\t<div\n\t\tclass=\"lu-popover-panel\"\n\t\t[class]=\"panelClassesMap\"\n\t\t(keydown)=\"_handleKeydown($event)\"\n\t\t(click)=\"onClick()\"\n\t\t(mouseover)=\"onMouseOver()\"\n\t\t(mouseleave)=\"onMouseLeave()\"\n\t\t(mousedown)=\"onMouseDown()\"\n\t\t[attr.id]=\"panelId\"\n\t\t[attr.aria-labelledby]=\"triggerId\"\n\t\t[@transformPopover]=\"'enter'\"\n\t>\n\t\t<div class=\"lu-popover-content\" [class]=\"contentClassesMap\" [cdkTrapFocus]=\"trapFocus\">\n\t\t\t<ng-content /><ng-container *ngTemplateOutlet=\"template; context: templateContext\" />\n\t\t</div>\n\t</div>\n</ng-template>\n" }]
|
|
233
|
-
}], ctorParameters: () => [], propDecorators: { template: [{
|
|
234
|
-
type: Input
|
|
235
|
-
}], templateContext: [{
|
|
236
|
-
type: Input,
|
|
237
|
-
args: ['template-context']
|
|
238
|
-
}], inputCloseOnClick: [{
|
|
239
|
-
type: Input,
|
|
240
|
-
args: ['close-on-click']
|
|
241
|
-
}], inputTrapFocus: [{
|
|
242
|
-
type: Input,
|
|
243
|
-
args: ['trap-focus']
|
|
244
|
-
}], inputScrollStrategy: [{
|
|
245
|
-
type: Input,
|
|
246
|
-
args: ['scroll-strategy']
|
|
247
|
-
}], inputPanelClasses: [{
|
|
248
|
-
type: Input,
|
|
249
|
-
args: ['panel-classes']
|
|
250
|
-
}], inputContentClasses: [{
|
|
251
|
-
type: Input,
|
|
252
|
-
args: ['content-classes']
|
|
253
|
-
}], close: [{
|
|
254
|
-
type: Output
|
|
255
|
-
}], open: [{
|
|
256
|
-
type: Output
|
|
257
|
-
}], hovered: [{
|
|
258
|
-
type: Output
|
|
259
|
-
}], vcTemplateRef: [{
|
|
260
|
-
type: ViewChild,
|
|
261
|
-
args: [TemplateRef, { static: true }]
|
|
262
|
-
}] } });
|
|
227
|
+
args: [{ selector: 'lu-popover', changeDetection: ChangeDetectionStrategy.OnPush, animations: [luTransformPopover], imports: [NgTemplateOutlet, OverlayModule, A11yModule], exportAs: 'LuPopoverPanel', template: "<ng-template>\n\t<div\n\t\tclass=\"lu-popover-panel\"\n\t\t[class]=\"panelClassesMap\"\n\t\t(keydown)=\"_handleKeydown($event)\"\n\t\t(click)=\"onClick()\"\n\t\t(mouseover)=\"onMouseOver()\"\n\t\t(mouseleave)=\"onMouseLeave()\"\n\t\t(mousedown)=\"onMouseDown()\"\n\t\t[attr.id]=\"panelId\"\n\t\t[attr.aria-labelledby]=\"triggerId\"\n\t\t[@transformPopover]=\"'enter'\"\n\t>\n\t\t<div class=\"lu-popover-content\" [class]=\"contentClassesMap\" [cdkTrapFocus]=\"trapFocus\">\n\t\t\t<ng-content /><ng-container *ngTemplateOutlet=\"template(); context: templateContext()\" />\n\t\t</div>\n\t</div>\n</ng-template>\n" }]
|
|
228
|
+
}], ctorParameters: () => [], propDecorators: { template: [{ type: i0.Input, args: [{ isSignal: true, alias: "template", required: false }] }], templateContext: [{ type: i0.Input, args: [{ isSignal: true, alias: "template-context", required: false }] }], inputCloseOnClick: [{ type: i0.Input, args: [{ isSignal: true, alias: "close-on-click", required: false }] }], inputTrapFocus: [{ type: i0.Input, args: [{ isSignal: true, alias: "trap-focus", required: false }] }], inputScrollStrategy: [{ type: i0.Input, args: [{ isSignal: true, alias: "scroll-strategy", required: false }] }], inputPanelClasses: [{ type: i0.Input, args: [{ isSignal: true, alias: "panel-classes", required: false }] }], inputContentClasses: [{ type: i0.Input, args: [{ isSignal: true, alias: "content-classes", required: false }] }], closeOutput: [{ type: i0.Output, args: ["close"] }], openOutput: [{ type: i0.Output, args: ["open"] }], hoveredOutput: [{ type: i0.Output, args: ["hovered"] }], vcTemplateRef: [{ type: i0.ViewChild, args: [i0.forwardRef(() => TemplateRef), { isSignal: true }] }] } });
|
|
263
229
|
|
|
264
230
|
/**
|
|
265
231
|
* @deprecated use `LuPopoverPanelComponent` instead
|
|
266
232
|
*/
|
|
267
233
|
class LuPopoverPanelModule {
|
|
268
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.
|
|
269
|
-
static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "21.2.
|
|
270
|
-
static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "21.2.
|
|
234
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.14", ngImport: i0, type: LuPopoverPanelModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
|
|
235
|
+
static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "21.2.14", ngImport: i0, type: LuPopoverPanelModule, imports: [LuPopoverPanelComponent], exports: [LuPopoverPanelComponent] }); }
|
|
236
|
+
static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "21.2.14", ngImport: i0, type: LuPopoverPanelModule, imports: [LuPopoverPanelComponent] }); }
|
|
271
237
|
}
|
|
272
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.
|
|
238
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.14", ngImport: i0, type: LuPopoverPanelModule, decorators: [{
|
|
273
239
|
type: NgModule,
|
|
274
240
|
args: [{
|
|
275
241
|
imports: [LuPopoverPanelComponent],
|
|
@@ -345,51 +311,31 @@ class LuPopoverTarget extends ALuPopoverTarget {
|
|
|
345
311
|
class LuPopoverTargetDirective extends ALuPopoverTarget {
|
|
346
312
|
constructor(ref) {
|
|
347
313
|
super();
|
|
314
|
+
/** how you want to position the panel relative to the target, allowed values: above, below, before, after */
|
|
315
|
+
this.inputPosition = input(undefined, { ...(ngDevMode ? { debugName: "inputPosition" } : /* istanbul ignore next */ {}), alias: 'luPopoverPosition' });
|
|
316
|
+
/** how the panel will be align with the target, allowed values: top, bottom, left, right */
|
|
317
|
+
this.inputAlignment = input(undefined, { ...(ngDevMode ? { debugName: "inputAlignment" } : /* istanbul ignore next */ {}), alias: 'luPopoverAlignment' });
|
|
318
|
+
/** set to true if you want the panel to appear on top of the target */
|
|
319
|
+
this.inputOverlap = input(undefined, { ...(ngDevMode ? { debugName: "inputOverlap" } : /* istanbul ignore next */ {}), alias: 'luPopoverOverlap' });
|
|
320
|
+
this.inputOffsetX = input(undefined, { ...(ngDevMode ? { debugName: "inputOffsetX" } : /* istanbul ignore next */ {}), alias: 'luPopoverOffsetX' });
|
|
321
|
+
this.inputOffsetY = input(undefined, { ...(ngDevMode ? { debugName: "inputOffsetY" } : /* istanbul ignore next */ {}), alias: 'luPopoverOffsetY' });
|
|
348
322
|
this.elementRef = ref;
|
|
349
|
-
|
|
350
|
-
|
|
351
|
-
|
|
352
|
-
this.
|
|
353
|
-
|
|
354
|
-
|
|
355
|
-
|
|
356
|
-
|
|
357
|
-
}
|
|
358
|
-
/** set to true if you want the panel to appear on top of the target */
|
|
359
|
-
set inputOverlap(ov) {
|
|
360
|
-
this.overlap = ov;
|
|
361
|
-
}
|
|
362
|
-
set inputOffsetX(ox) {
|
|
363
|
-
this.offsetX = ox;
|
|
364
|
-
}
|
|
365
|
-
set inputOffsetY(oy) {
|
|
366
|
-
this.offsetY = oy;
|
|
367
|
-
}
|
|
368
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.15", ngImport: i0, type: LuPopoverTargetDirective, deps: [{ token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Directive }); }
|
|
369
|
-
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "21.2.15", type: LuPopoverTargetDirective, isStandalone: true, selector: "[luPopoverTarget]", inputs: { inputPosition: ["luPopoverPosition", "inputPosition"], inputAlignment: ["luPopoverAlignment", "inputAlignment"], inputOverlap: ["luPopoverOverlap", "inputOverlap"], inputOffsetX: ["luPopoverOffsetX", "inputOffsetX"], inputOffsetY: ["luPopoverOffsetY", "inputOffsetY"] }, exportAs: ["LuPopoverTarget"], usesInheritance: true, ngImport: i0 }); }
|
|
323
|
+
syncInputSignal(this.inputPosition, (inputPosition) => (this.position = inputPosition));
|
|
324
|
+
syncInputSignal(this.inputAlignment, (inputAlignment) => (this.alignment = inputAlignment));
|
|
325
|
+
syncInputSignal(this.inputOverlap, (inputOverlap) => (this.overlap = inputOverlap));
|
|
326
|
+
syncInputSignal(this.inputOffsetX, (inputOffsetX) => (this.offsetX = inputOffsetX));
|
|
327
|
+
syncInputSignal(this.inputOffsetY, (inputOffsetY) => (this.offsetY = inputOffsetY));
|
|
328
|
+
}
|
|
329
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.14", ngImport: i0, type: LuPopoverTargetDirective, deps: [{ token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Directive }); }
|
|
330
|
+
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.1.0", version: "21.2.14", type: LuPopoverTargetDirective, isStandalone: true, selector: "[luPopoverTarget]", inputs: { inputPosition: { classPropertyName: "inputPosition", publicName: "luPopoverPosition", isSignal: true, isRequired: false, transformFunction: null }, inputAlignment: { classPropertyName: "inputAlignment", publicName: "luPopoverAlignment", isSignal: true, isRequired: false, transformFunction: null }, inputOverlap: { classPropertyName: "inputOverlap", publicName: "luPopoverOverlap", isSignal: true, isRequired: false, transformFunction: null }, inputOffsetX: { classPropertyName: "inputOffsetX", publicName: "luPopoverOffsetX", isSignal: true, isRequired: false, transformFunction: null }, inputOffsetY: { classPropertyName: "inputOffsetY", publicName: "luPopoverOffsetY", isSignal: true, isRequired: false, transformFunction: null } }, exportAs: ["LuPopoverTarget"], usesInheritance: true, ngImport: i0 }); }
|
|
370
331
|
}
|
|
371
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.
|
|
332
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.14", ngImport: i0, type: LuPopoverTargetDirective, decorators: [{
|
|
372
333
|
type: Directive,
|
|
373
334
|
args: [{
|
|
374
335
|
selector: '[luPopoverTarget]',
|
|
375
336
|
exportAs: 'LuPopoverTarget',
|
|
376
337
|
}]
|
|
377
|
-
}], ctorParameters: () => [{ type: i0.ElementRef }], propDecorators: { inputPosition: [{
|
|
378
|
-
type: Input,
|
|
379
|
-
args: ['luPopoverPosition']
|
|
380
|
-
}], inputAlignment: [{
|
|
381
|
-
type: Input,
|
|
382
|
-
args: ['luPopoverAlignment']
|
|
383
|
-
}], inputOverlap: [{
|
|
384
|
-
type: Input,
|
|
385
|
-
args: ['luPopoverOverlap']
|
|
386
|
-
}], inputOffsetX: [{
|
|
387
|
-
type: Input,
|
|
388
|
-
args: ['luPopoverOffsetX']
|
|
389
|
-
}], inputOffsetY: [{
|
|
390
|
-
type: Input,
|
|
391
|
-
args: ['luPopoverOffsetY']
|
|
392
|
-
}] } });
|
|
338
|
+
}], ctorParameters: () => [{ type: i0.ElementRef }], propDecorators: { inputPosition: [{ type: i0.Input, args: [{ isSignal: true, alias: "luPopoverPosition", required: false }] }], inputAlignment: [{ type: i0.Input, args: [{ isSignal: true, alias: "luPopoverAlignment", required: false }] }], inputOverlap: [{ type: i0.Input, args: [{ isSignal: true, alias: "luPopoverOverlap", required: false }] }], inputOffsetX: [{ type: i0.Input, args: [{ isSignal: true, alias: "luPopoverOffsetX", required: false }] }], inputOffsetY: [{ type: i0.Input, args: [{ isSignal: true, alias: "luPopoverOffsetY", required: false }] }] } });
|
|
393
339
|
|
|
394
340
|
// tslint:disable-next-line: max-line-length
|
|
395
341
|
class ALuPopoverTrigger {
|
|
@@ -554,7 +500,9 @@ class ALuPopoverTrigger {
|
|
|
554
500
|
return position === 'below' || position === 'above';
|
|
555
501
|
}
|
|
556
502
|
_attachPortalToOverlay() {
|
|
557
|
-
this._overlayRef
|
|
503
|
+
if (this._overlayRef) {
|
|
504
|
+
this._overlayRef.attach(this._portal);
|
|
505
|
+
}
|
|
558
506
|
}
|
|
559
507
|
_getPanelScrollStrategy() {
|
|
560
508
|
return this.panel.scrollStrategy;
|
|
@@ -610,7 +558,9 @@ class ALuPopoverTrigger {
|
|
|
610
558
|
this._setIsPopoverOpen(true);
|
|
611
559
|
this.panel.panelId = this._panelId;
|
|
612
560
|
this.panel.triggerId = this._triggerId;
|
|
613
|
-
|
|
561
|
+
if (this._overlayRef) {
|
|
562
|
+
this.panel.keydownEvents$ = this._overlayRef.keydownEvents();
|
|
563
|
+
}
|
|
614
564
|
this._subscribeToPanelEvents();
|
|
615
565
|
}
|
|
616
566
|
/**
|
|
@@ -861,48 +811,6 @@ class ALuPopoverTrigger {
|
|
|
861
811
|
}
|
|
862
812
|
|
|
863
813
|
class LuPopoverTriggerDirective extends ALuPopoverTrigger {
|
|
864
|
-
/** References the popover instance that the trigger is associated with. */
|
|
865
|
-
set inputPanel(p) {
|
|
866
|
-
this.panel = p;
|
|
867
|
-
}
|
|
868
|
-
/** References the popover target instance that the trigger is associated with. */
|
|
869
|
-
set inputTarget(t) {
|
|
870
|
-
this.target = t;
|
|
871
|
-
}
|
|
872
|
-
/** References the popover target instance that the trigger is associated with. */
|
|
873
|
-
set inputTriggerEvent(te) {
|
|
874
|
-
this.triggerEvent = te;
|
|
875
|
-
}
|
|
876
|
-
/** how you want to position the panel relative to the target, allowed values: above, below, before, after */
|
|
877
|
-
set inputPosition(pos) {
|
|
878
|
-
this.target.position = pos;
|
|
879
|
-
}
|
|
880
|
-
/** how the panel will be align with the target, allowed values: top, bottom, left, right */
|
|
881
|
-
set inputAlignment(al) {
|
|
882
|
-
this.target.alignment = al;
|
|
883
|
-
}
|
|
884
|
-
/** when trigger = hover, delay before the popover panel appears */
|
|
885
|
-
set inputEnterDelay(d) {
|
|
886
|
-
this.enterDelay = d;
|
|
887
|
-
}
|
|
888
|
-
/** when trigger = hover, delay before the popover panel disappears */
|
|
889
|
-
set inputLeaveDelay(d) {
|
|
890
|
-
this.leaveDelay = d;
|
|
891
|
-
}
|
|
892
|
-
/** disable popover apparition */
|
|
893
|
-
set inputDisabled(d) {
|
|
894
|
-
this.disabled = d;
|
|
895
|
-
}
|
|
896
|
-
/** set to true if you want the panel to appear on top of the target */
|
|
897
|
-
set inputOverlap(ov) {
|
|
898
|
-
this.target.overlap = ov;
|
|
899
|
-
}
|
|
900
|
-
set inputOffsetX(ox) {
|
|
901
|
-
this.target.offsetX = ox;
|
|
902
|
-
}
|
|
903
|
-
set inputOffsetY(oy) {
|
|
904
|
-
this.target.offsetY = oy;
|
|
905
|
-
}
|
|
906
814
|
/** accessibility attribute - dont override */
|
|
907
815
|
get _attrAriaExpanded() {
|
|
908
816
|
return this._popoverOpen;
|
|
@@ -920,15 +828,49 @@ class LuPopoverTriggerDirective extends ALuPopoverTrigger {
|
|
|
920
828
|
this._overlay = _overlay;
|
|
921
829
|
this._elementRef = _elementRef;
|
|
922
830
|
this._viewContainerRef = _viewContainerRef;
|
|
923
|
-
/**
|
|
924
|
-
|
|
831
|
+
/** References the popover instance that the trigger is associated with. */
|
|
832
|
+
this.inputPanel = input(undefined, { ...(ngDevMode ? { debugName: "inputPanel" } : /* istanbul ignore next */ {}), alias: 'luPopover' });
|
|
833
|
+
/** References the popover target instance that the trigger is associated with. */
|
|
834
|
+
this.inputTarget = input(undefined, { ...(ngDevMode ? { debugName: "inputTarget" } : /* istanbul ignore next */ {}), alias: 'luPopoverTarget' });
|
|
835
|
+
/** References the popover target instance that the trigger is associated with. */
|
|
836
|
+
this.inputTriggerEvent = input(undefined, { ...(ngDevMode ? { debugName: "inputTriggerEvent" } : /* istanbul ignore next */ {}), alias: 'luPopoverTrigger' });
|
|
925
837
|
this.onOpen = new EventEmitter();
|
|
926
|
-
/** Event emitted when the associated popover is closed. */
|
|
927
|
-
// eslint-disable-next-line @angular-eslint/no-output-on-prefix
|
|
928
838
|
this.onClose = new EventEmitter();
|
|
839
|
+
/** Event emitted when the associated popover is closed. */
|
|
840
|
+
this.onCloseOutput = outputFromObservable(this.onClose, { alias: 'luPopoverOnClose' });
|
|
841
|
+
/** Event emitted when the associated popover is opened. */
|
|
842
|
+
this.onOpenOutput = outputFromObservable(this.onOpen, { alias: 'luPopoverOnOpen' });
|
|
843
|
+
/** how you want to position the panel relative to the target, allowed values: above, below, before, after */
|
|
844
|
+
this.inputPosition = input(undefined, { ...(ngDevMode ? { debugName: "inputPosition" } : /* istanbul ignore next */ {}), alias: 'luPopoverPosition' });
|
|
845
|
+
/** how the panel will be align with the target, allowed values: top, bottom, left, right */
|
|
846
|
+
this.inputAlignment = input(undefined, { ...(ngDevMode ? { debugName: "inputAlignment" } : /* istanbul ignore next */ {}), alias: 'luPopoverAlignment' });
|
|
847
|
+
/** when trigger = hover, delay before the popover panel appears */
|
|
848
|
+
this.inputEnterDelay = input(undefined, { ...(ngDevMode ? { debugName: "inputEnterDelay" } : /* istanbul ignore next */ {}), alias: 'luPopoverEnterDelay' });
|
|
849
|
+
/** when trigger = hover, delay before the popover panel disappears */
|
|
850
|
+
this.inputLeaveDelay = input(undefined, { ...(ngDevMode ? { debugName: "inputLeaveDelay" } : /* istanbul ignore next */ {}), alias: 'luPopoverLeaveDelay' });
|
|
851
|
+
/** disable popover apparition */
|
|
852
|
+
this.inputDisabled = input(undefined, { ...(ngDevMode ? { debugName: "inputDisabled" } : /* istanbul ignore next */ {}), alias: 'luPopoverDisabled' });
|
|
853
|
+
/** set to true if you want the panel to appear on top of the target */
|
|
854
|
+
this.inputOverlap = input(undefined, { ...(ngDevMode ? { debugName: "inputOverlap" } : /* istanbul ignore next */ {}), alias: 'luPopoverOverlap' });
|
|
855
|
+
this.inputOffsetX = input(undefined, { ...(ngDevMode ? { debugName: "inputOffsetX" } : /* istanbul ignore next */ {}), alias: 'luPopoverOffsetX' });
|
|
856
|
+
this.inputOffsetY = input(undefined, { ...(ngDevMode ? { debugName: "inputOffsetY" } : /* istanbul ignore next */ {}), alias: 'luPopoverOffsetY' });
|
|
929
857
|
this.target = new LuPopoverTarget();
|
|
930
858
|
this.target.elementRef = this._elementRef;
|
|
931
859
|
this._triggerId = this._elementRef.nativeElement.getAttribute('id') || this._triggerId;
|
|
860
|
+
this.#initTarget();
|
|
861
|
+
syncInputSignal(this.inputPanel, (inputPanel) => (this.panel = inputPanel));
|
|
862
|
+
syncInputSignal(this.inputTriggerEvent, (inputTriggerEvent) => (this.triggerEvent = inputTriggerEvent));
|
|
863
|
+
syncInputSignal(this.inputEnterDelay, (inputEnterDelay) => (this.enterDelay = inputEnterDelay));
|
|
864
|
+
syncInputSignal(this.inputLeaveDelay, (inputLeaveDelay) => (this.leaveDelay = inputLeaveDelay));
|
|
865
|
+
syncInputSignal(this.inputDisabled, (inputDisabled) => (this.disabled = inputDisabled));
|
|
866
|
+
}
|
|
867
|
+
#initTarget() {
|
|
868
|
+
syncInputSignal(this.inputTarget, (inputTarget) => (this.target = inputTarget));
|
|
869
|
+
syncInputSignal(this.inputPosition, (inputPosition) => (this.target.position = inputPosition));
|
|
870
|
+
syncInputSignal(this.inputAlignment, (inputAlignment) => (this.target.alignment = inputAlignment));
|
|
871
|
+
syncInputSignal(this.inputOverlap, (inputOverlap) => (this.target.overlap = inputOverlap));
|
|
872
|
+
syncInputSignal(this.inputOffsetX, (inputOffsetX) => (this.target.offsetX = inputOffsetX));
|
|
873
|
+
syncInputSignal(this.inputOffsetY, (inputOffsetY) => (this.target.offsetY = inputOffsetY));
|
|
932
874
|
}
|
|
933
875
|
onClick() {
|
|
934
876
|
super.onClick();
|
|
@@ -962,89 +904,36 @@ class LuPopoverTriggerDirective extends ALuPopoverTrigger {
|
|
|
962
904
|
_emitClose() {
|
|
963
905
|
this.onClose.emit();
|
|
964
906
|
}
|
|
965
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.
|
|
966
|
-
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "
|
|
907
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.14", ngImport: i0, type: LuPopoverTriggerDirective, deps: [{ token: i1$1.Overlay }, { token: i0.ElementRef }, { token: i0.ViewContainerRef }], target: i0.ɵɵFactoryTarget.Directive }); }
|
|
908
|
+
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.1.0", version: "21.2.14", type: LuPopoverTriggerDirective, isStandalone: true, selector: "[luPopover]", inputs: { inputPanel: { classPropertyName: "inputPanel", publicName: "luPopover", isSignal: true, isRequired: false, transformFunction: null }, inputTarget: { classPropertyName: "inputTarget", publicName: "luPopoverTarget", isSignal: true, isRequired: false, transformFunction: null }, inputTriggerEvent: { classPropertyName: "inputTriggerEvent", publicName: "luPopoverTrigger", isSignal: true, isRequired: false, transformFunction: null }, inputPosition: { classPropertyName: "inputPosition", publicName: "luPopoverPosition", isSignal: true, isRequired: false, transformFunction: null }, inputAlignment: { classPropertyName: "inputAlignment", publicName: "luPopoverAlignment", isSignal: true, isRequired: false, transformFunction: null }, inputEnterDelay: { classPropertyName: "inputEnterDelay", publicName: "luPopoverEnterDelay", isSignal: true, isRequired: false, transformFunction: null }, inputLeaveDelay: { classPropertyName: "inputLeaveDelay", publicName: "luPopoverLeaveDelay", isSignal: true, isRequired: false, transformFunction: null }, inputDisabled: { classPropertyName: "inputDisabled", publicName: "luPopoverDisabled", isSignal: true, isRequired: false, transformFunction: null }, inputOverlap: { classPropertyName: "inputOverlap", publicName: "luPopoverOverlap", isSignal: true, isRequired: false, transformFunction: null }, inputOffsetX: { classPropertyName: "inputOffsetX", publicName: "luPopoverOffsetX", isSignal: true, isRequired: false, transformFunction: null }, inputOffsetY: { classPropertyName: "inputOffsetY", publicName: "luPopoverOffsetY", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { onCloseOutput: "luPopoverOnClose", onOpenOutput: "luPopoverOnOpen" }, host: { listeners: { "click": "onClick()", "mouseenter": "onMouseEnter()", "mouseleave": "onMouseLeave()", "focus": "onFocus()", "blur": "onBlur()" }, properties: { "attr.aria-expanded": "_attrAriaExpanded", "attr.id": "_attrId", "attr.aria-controls": "_attrAriaControls" } }, exportAs: ["LuPopoverTrigger"], usesInheritance: true, ngImport: i0 }); }
|
|
967
909
|
}
|
|
968
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.
|
|
910
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.14", ngImport: i0, type: LuPopoverTriggerDirective, decorators: [{
|
|
969
911
|
type: Directive,
|
|
970
912
|
args: [{
|
|
971
913
|
selector: '[luPopover]',
|
|
972
914
|
exportAs: 'LuPopoverTrigger',
|
|
915
|
+
host: {
|
|
916
|
+
'[attr.aria-expanded]': '_attrAriaExpanded',
|
|
917
|
+
'[attr.id]': '_attrId',
|
|
918
|
+
'[attr.aria-controls]': '_attrAriaControls',
|
|
919
|
+
'(click)': 'onClick()',
|
|
920
|
+
'(mouseenter)': 'onMouseEnter()',
|
|
921
|
+
'(mouseleave)': 'onMouseLeave()',
|
|
922
|
+
'(focus)': 'onFocus()',
|
|
923
|
+
'(blur)': 'onBlur()',
|
|
924
|
+
},
|
|
973
925
|
}]
|
|
974
|
-
}], ctorParameters: () => [{ type: i1$1.Overlay }, { type: i0.ElementRef }, { type: i0.ViewContainerRef }], propDecorators: { inputPanel: [{
|
|
975
|
-
type: Input,
|
|
976
|
-
args: ['luPopover']
|
|
977
|
-
}], inputTarget: [{
|
|
978
|
-
type: Input,
|
|
979
|
-
args: ['luPopoverTarget']
|
|
980
|
-
}], inputTriggerEvent: [{
|
|
981
|
-
type: Input,
|
|
982
|
-
args: ['luPopoverTrigger']
|
|
983
|
-
}], onOpen: [{
|
|
984
|
-
type: Output,
|
|
985
|
-
args: ['luPopoverOnOpen']
|
|
986
|
-
}], onClose: [{
|
|
987
|
-
type: Output,
|
|
988
|
-
args: ['luPopoverOnClose']
|
|
989
|
-
}], inputPosition: [{
|
|
990
|
-
type: Input,
|
|
991
|
-
args: ['luPopoverPosition']
|
|
992
|
-
}], inputAlignment: [{
|
|
993
|
-
type: Input,
|
|
994
|
-
args: ['luPopoverAlignment']
|
|
995
|
-
}], inputEnterDelay: [{
|
|
996
|
-
type: Input,
|
|
997
|
-
args: ['luPopoverEnterDelay']
|
|
998
|
-
}], inputLeaveDelay: [{
|
|
999
|
-
type: Input,
|
|
1000
|
-
args: ['luPopoverLeaveDelay']
|
|
1001
|
-
}], inputDisabled: [{
|
|
1002
|
-
type: Input,
|
|
1003
|
-
args: ['luPopoverDisabled']
|
|
1004
|
-
}], inputOverlap: [{
|
|
1005
|
-
type: Input,
|
|
1006
|
-
args: ['luPopoverOverlap']
|
|
1007
|
-
}], inputOffsetX: [{
|
|
1008
|
-
type: Input,
|
|
1009
|
-
args: ['luPopoverOffsetX']
|
|
1010
|
-
}], inputOffsetY: [{
|
|
1011
|
-
type: Input,
|
|
1012
|
-
args: ['luPopoverOffsetY']
|
|
1013
|
-
}], _attrAriaExpanded: [{
|
|
1014
|
-
type: HostBinding,
|
|
1015
|
-
args: ['attr.aria-expanded']
|
|
1016
|
-
}], _attrId: [{
|
|
1017
|
-
type: HostBinding,
|
|
1018
|
-
args: ['attr.id']
|
|
1019
|
-
}], _attrAriaControls: [{
|
|
1020
|
-
type: HostBinding,
|
|
1021
|
-
args: ['attr.aria-controls']
|
|
1022
|
-
}], onClick: [{
|
|
1023
|
-
type: HostListener,
|
|
1024
|
-
args: ['click']
|
|
1025
|
-
}], onMouseEnter: [{
|
|
1026
|
-
type: HostListener,
|
|
1027
|
-
args: ['mouseenter']
|
|
1028
|
-
}], onMouseLeave: [{
|
|
1029
|
-
type: HostListener,
|
|
1030
|
-
args: ['mouseleave']
|
|
1031
|
-
}], onFocus: [{
|
|
1032
|
-
type: HostListener,
|
|
1033
|
-
args: ['focus']
|
|
1034
|
-
}], onBlur: [{
|
|
1035
|
-
type: HostListener,
|
|
1036
|
-
args: ['blur']
|
|
1037
|
-
}] } });
|
|
926
|
+
}], ctorParameters: () => [{ type: i1$1.Overlay }, { type: i0.ElementRef }, { type: i0.ViewContainerRef }], propDecorators: { inputPanel: [{ type: i0.Input, args: [{ isSignal: true, alias: "luPopover", required: false }] }], inputTarget: [{ type: i0.Input, args: [{ isSignal: true, alias: "luPopoverTarget", required: false }] }], inputTriggerEvent: [{ type: i0.Input, args: [{ isSignal: true, alias: "luPopoverTrigger", required: false }] }], onCloseOutput: [{ type: i0.Output, args: ["luPopoverOnClose"] }], onOpenOutput: [{ type: i0.Output, args: ["luPopoverOnOpen"] }], inputPosition: [{ type: i0.Input, args: [{ isSignal: true, alias: "luPopoverPosition", required: false }] }], inputAlignment: [{ type: i0.Input, args: [{ isSignal: true, alias: "luPopoverAlignment", required: false }] }], inputEnterDelay: [{ type: i0.Input, args: [{ isSignal: true, alias: "luPopoverEnterDelay", required: false }] }], inputLeaveDelay: [{ type: i0.Input, args: [{ isSignal: true, alias: "luPopoverLeaveDelay", required: false }] }], inputDisabled: [{ type: i0.Input, args: [{ isSignal: true, alias: "luPopoverDisabled", required: false }] }], inputOverlap: [{ type: i0.Input, args: [{ isSignal: true, alias: "luPopoverOverlap", required: false }] }], inputOffsetX: [{ type: i0.Input, args: [{ isSignal: true, alias: "luPopoverOffsetX", required: false }] }], inputOffsetY: [{ type: i0.Input, args: [{ isSignal: true, alias: "luPopoverOffsetY", required: false }] }] } });
|
|
1038
927
|
|
|
1039
928
|
/**
|
|
1040
929
|
* @deprecated use `LuPopoverPanelComponent, LuPopoverTargetDirective, LuPopoverTriggerDirective` instead
|
|
1041
930
|
*/
|
|
1042
931
|
class LuPopoverModule {
|
|
1043
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.
|
|
1044
|
-
static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "21.2.
|
|
1045
|
-
static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "21.2.
|
|
932
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.14", ngImport: i0, type: LuPopoverModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
|
|
933
|
+
static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "21.2.14", ngImport: i0, type: LuPopoverModule, imports: [LuPopoverPanelComponent, LuPopoverTargetDirective, LuPopoverTriggerDirective], exports: [LuPopoverPanelComponent, LuPopoverTargetDirective, LuPopoverTriggerDirective] }); }
|
|
934
|
+
static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "21.2.14", ngImport: i0, type: LuPopoverModule, imports: [LuPopoverPanelComponent] }); }
|
|
1046
935
|
}
|
|
1047
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.
|
|
936
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.14", ngImport: i0, type: LuPopoverModule, decorators: [{
|
|
1048
937
|
type: NgModule,
|
|
1049
938
|
args: [{
|
|
1050
939
|
imports: [LuPopoverPanelComponent, LuPopoverTargetDirective, LuPopoverTriggerDirective],
|