@muziehdesign/components 18.3.0-beta.2385 → 19.2.0-beta.2377
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/esm2022/lib/alert/alert.component.mjs +46 -0
- package/esm2022/lib/button.directive.mjs +86 -0
- package/esm2022/lib/components.module.mjs +130 -0
- package/esm2022/lib/date-display/date-display-config.mjs +12 -0
- package/esm2022/lib/date-display/date-display.pipe.mjs +35 -0
- package/esm2022/lib/date-display/date.pipe.mjs +41 -0
- package/esm2022/lib/date-time/date-time.component.mjs +139 -0
- package/esm2022/lib/date-time/time-value.mjs +2 -0
- package/esm2022/lib/dialog/container/drawer-container.component.mjs +57 -0
- package/esm2022/lib/dialog/dialog-config.mjs +50 -0
- package/esm2022/lib/dialog/dialog-injectors.mjs +5 -0
- package/esm2022/lib/dialog/dialog-ref.mjs +57 -0
- package/esm2022/lib/dialog/dialog.module.mjs +25 -0
- package/esm2022/lib/dialog/mz-dialog.service.mjs +108 -0
- package/esm2022/lib/dropdown/dropdown-item.directive.mjs +28 -0
- package/esm2022/lib/dropdown/dropdown.component.mjs +27 -0
- package/esm2022/lib/dropdown/dropdown.module.mjs +17 -0
- package/esm2022/lib/enum-display/enum-display.pipe.mjs +48 -0
- package/esm2022/lib/filter/filter-option.model.mjs +2 -0
- package/esm2022/lib/filter/filter.component.mjs +42 -0
- package/esm2022/lib/guard-deactivate.mjs +14 -0
- package/esm2022/lib/infinite-scroll/infinite-scroll.component.mjs +45 -0
- package/esm2022/lib/inline-edit/inline-edit.component.mjs +65 -0
- package/esm2022/lib/models/loading-state.mjs +2 -0
- package/esm2022/lib/models/page-event.mjs +2 -0
- package/esm2022/lib/models/result-table-options.mjs +2 -0
- package/esm2022/lib/models/sort-event.mjs +2 -0
- package/esm2022/lib/models/subject.mjs +2 -0
- package/esm2022/lib/models/wizard-step-link.mjs +2 -0
- package/esm2022/lib/options-filter/options-filter.component.mjs +66 -0
- package/esm2022/lib/page-header/page-header.component.mjs +27 -0
- package/esm2022/lib/page-loading-indicator/page-loading-indicator.component.mjs +32 -0
- package/esm2022/lib/pagination/pagination-default-options.mjs +2 -0
- package/esm2022/lib/pagination/pagination-default-options.token.mjs +3 -0
- package/esm2022/lib/pagination/pagination.component.mjs +90 -0
- package/esm2022/lib/phone-number/phone-number.pipe.mjs +24 -0
- package/esm2022/lib/result-table/result-table.component.mjs +65 -0
- package/esm2022/lib/result-table/result-table.model.mjs +2 -0
- package/esm2022/lib/sort-key.directive.mjs +91 -0
- package/esm2022/lib/sort.directive.mjs +34 -0
- package/esm2022/lib/spinner/spinner.component.mjs +21 -0
- package/esm2022/lib/subject-display/subject-display.pipe.mjs +20 -0
- package/esm2022/lib/svg-icon/svg-icon-config.mjs +10 -0
- package/esm2022/lib/svg-icon/svg-icon.component.mjs +39 -0
- package/esm2022/lib/testing/muzieh-component-harness.mjs +3 -0
- package/esm2022/lib/testing/result-table-harness.mjs +66 -0
- package/esm2022/lib/time-value-accessor.directive.mjs +57 -0
- package/esm2022/lib/time-value-validator.directive.mjs +37 -0
- package/esm2022/lib/wizard-progress-tracker/wizard-progress-tracker.component.mjs +32 -0
- package/esm2022/muziehdesign-components.mjs +5 -0
- package/esm2022/public-api.mjs +53 -0
- package/fesm2022/muziehdesign-components.mjs +108 -108
- package/fesm2022/muziehdesign-components.mjs.map +1 -1
- package/lib/dialog/dialog-injectors.d.ts +1 -1
- package/package.json +6 -4
|
@@ -0,0 +1,57 @@
|
|
|
1
|
+
import { CdkDialogContainer } from '@angular/cdk/dialog';
|
|
2
|
+
import { CdkPortalOutlet } from '@angular/cdk/portal';
|
|
3
|
+
import { Component, ElementRef, HostListener, Inject, NgZone, Optional } from '@angular/core';
|
|
4
|
+
import { DOCUMENT } from '@angular/common';
|
|
5
|
+
import { OverlayRef } from '@angular/cdk/overlay';
|
|
6
|
+
import { FocusTrapFactory, InteractivityChecker } from '@angular/cdk/a11y';
|
|
7
|
+
import { MzDialogConfig } from '../dialog-config';
|
|
8
|
+
import * as i0 from "@angular/core";
|
|
9
|
+
import * as i1 from "@angular/cdk/a11y";
|
|
10
|
+
import * as i2 from "../dialog-config";
|
|
11
|
+
import * as i3 from "@angular/cdk/overlay";
|
|
12
|
+
export class DrawerContainerComponent extends CdkDialogContainer {
|
|
13
|
+
constructor(elementRef, focusTrapFactory, dialogConfig, interactivityChecker, ngZone, overlayRef, _document) {
|
|
14
|
+
super(elementRef, focusTrapFactory, _document, dialogConfig, interactivityChecker, ngZone, overlayRef);
|
|
15
|
+
this.dialogConfig = dialogConfig;
|
|
16
|
+
this.interactivityChecker = interactivityChecker;
|
|
17
|
+
this.ngZone = ngZone;
|
|
18
|
+
this.overlayRef = overlayRef;
|
|
19
|
+
this.open = false;
|
|
20
|
+
}
|
|
21
|
+
associateDialogRef(dialogRef) {
|
|
22
|
+
this.dialogRef = dialogRef;
|
|
23
|
+
}
|
|
24
|
+
tryClose(e) {
|
|
25
|
+
this.dialogRef?.tryClose(undefined, { focusOrigin: e.detail === 0 ? 'keyboard' : 'mouse' });
|
|
26
|
+
}
|
|
27
|
+
onBeforeUnload(event) {
|
|
28
|
+
if (!this.dialogRef?.confirmDeactivation()) {
|
|
29
|
+
event.preventDefault();
|
|
30
|
+
event.returnValue = '';
|
|
31
|
+
}
|
|
32
|
+
}
|
|
33
|
+
/**
|
|
34
|
+
* Marks state of container for animation purposes.
|
|
35
|
+
*/
|
|
36
|
+
enter() {
|
|
37
|
+
this.open = true;
|
|
38
|
+
}
|
|
39
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.1.1", ngImport: i0, type: DrawerContainerComponent, deps: [{ token: i0.ElementRef }, { token: i1.FocusTrapFactory }, { token: i2.MzDialogConfig }, { token: i1.InteractivityChecker }, { token: i0.NgZone }, { token: i3.OverlayRef }, { token: DOCUMENT, optional: true }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
40
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.1.1", type: DrawerContainerComponent, isStandalone: true, selector: "mz-drawer-container", host: { listeners: { "window:beforeunload": "onBeforeUnload($event)" }, properties: { "class.open": "open" }, classAttribute: "mz-dialog-container" }, usesInheritance: true, ngImport: i0, template: "<article class=\"mz-dialog\">\n <ng-template cdkPortalOutlet />\n\n @if(!dialogConfig.disableClose) {\n <button class=\"button-close\" (click)=\"tryClose($event)\">\n <svg xmlns=\"http://www.w3.org/2000/svg\" fill=\"none\" viewBox=\"0 0 24 24\" stroke-width=\"1.5\" stroke=\"currentColor\">\n <path stroke-linecap=\"round\" stroke-linejoin=\"round\" d=\"M6 18 18 6M6 6l12 12\" />\n </svg>\n </button>\n }\n</article>\n", styles: [":host(.mz-dialog-container){background-color:var(--surface-bg);width:500px;max-width:90%;position:absolute;right:0;top:0;height:100vh;transition:translate .3s ease-out;translate:100%}:host(.mz-dialog-container).open{translate:0%}.button-close{height:1.5rem;width:1.5rem;display:inline-block;position:absolute;top:1rem;right:1.5rem;z-index:10}.mz-dialog{height:100%;position:relative;overflow:auto}\n"], dependencies: [{ kind: "directive", type: CdkPortalOutlet, selector: "[cdkPortalOutlet]", inputs: ["cdkPortalOutlet"], outputs: ["attached"], exportAs: ["cdkPortalOutlet"] }] }); }
|
|
41
|
+
}
|
|
42
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.1.1", ngImport: i0, type: DrawerContainerComponent, decorators: [{
|
|
43
|
+
type: Component,
|
|
44
|
+
args: [{ selector: 'mz-drawer-container', standalone: true, imports: [CdkPortalOutlet], host: {
|
|
45
|
+
'class': 'mz-dialog-container',
|
|
46
|
+
'[class.open]': 'open'
|
|
47
|
+
}, template: "<article class=\"mz-dialog\">\n <ng-template cdkPortalOutlet />\n\n @if(!dialogConfig.disableClose) {\n <button class=\"button-close\" (click)=\"tryClose($event)\">\n <svg xmlns=\"http://www.w3.org/2000/svg\" fill=\"none\" viewBox=\"0 0 24 24\" stroke-width=\"1.5\" stroke=\"currentColor\">\n <path stroke-linecap=\"round\" stroke-linejoin=\"round\" d=\"M6 18 18 6M6 6l12 12\" />\n </svg>\n </button>\n }\n</article>\n", styles: [":host(.mz-dialog-container){background-color:var(--surface-bg);width:500px;max-width:90%;position:absolute;right:0;top:0;height:100vh;transition:translate .3s ease-out;translate:100%}:host(.mz-dialog-container).open{translate:0%}.button-close{height:1.5rem;width:1.5rem;display:inline-block;position:absolute;top:1rem;right:1.5rem;z-index:10}.mz-dialog{height:100%;position:relative;overflow:auto}\n"] }]
|
|
48
|
+
}], ctorParameters: () => [{ type: i0.ElementRef }, { type: i1.FocusTrapFactory }, { type: i2.MzDialogConfig }, { type: i1.InteractivityChecker }, { type: i0.NgZone }, { type: i3.OverlayRef }, { type: undefined, decorators: [{
|
|
49
|
+
type: Optional
|
|
50
|
+
}, {
|
|
51
|
+
type: Inject,
|
|
52
|
+
args: [DOCUMENT]
|
|
53
|
+
}] }], propDecorators: { onBeforeUnload: [{
|
|
54
|
+
type: HostListener,
|
|
55
|
+
args: ['window:beforeunload', ['$event']]
|
|
56
|
+
}] } });
|
|
57
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZHJhd2VyLWNvbnRhaW5lci5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb21wb25lbnRzL3NyYy9saWIvZGlhbG9nL2NvbnRhaW5lci9kcmF3ZXItY29udGFpbmVyLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NvbXBvbmVudHMvc3JjL2xpYi9kaWFsb2cvY29udGFpbmVyL2RyYXdlci1jb250YWluZXIuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0scUJBQXFCLENBQUM7QUFDekQsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBQ3RELE9BQU8sRUFBRSxTQUFTLEVBQUUsVUFBVSxFQUFFLFlBQVksRUFBRSxNQUFNLEVBQUUsTUFBTSxFQUFFLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUM5RixPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDM0MsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBQ2xELE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxvQkFBb0IsRUFBRSxNQUFNLG1CQUFtQixDQUFDO0FBQzNFLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQzs7Ozs7QUFjbEQsTUFBTSxPQUFPLHdCQUF5QixTQUFRLGtCQUFrQztJQUs1RSxZQUFZLFVBQXNCLEVBQUUsZ0JBQWtDLEVBQVcsWUFBNEIsRUFBWSxvQkFBMEMsRUFBWSxNQUFjLEVBQVksVUFBc0IsRUFBZ0MsU0FBYztRQUN6USxLQUFLLENBQUMsVUFBVSxFQUFFLGdCQUFnQixFQUFFLFNBQVMsRUFBRSxZQUFZLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSxFQUFFLFVBQVUsQ0FBQyxDQUFDO1FBRDFCLGlCQUFZLEdBQVosWUFBWSxDQUFnQjtRQUFZLHlCQUFvQixHQUFwQixvQkFBb0IsQ0FBc0I7UUFBWSxXQUFNLEdBQU4sTUFBTSxDQUFRO1FBQVksZUFBVSxHQUFWLFVBQVUsQ0FBWTtRQUZyTixTQUFJLEdBQUcsS0FBSyxDQUFDO0lBSXZCLENBQUM7SUFFRCxrQkFBa0IsQ0FBQyxTQUEyQjtRQUMxQyxJQUFJLENBQUMsU0FBUyxHQUFHLFNBQVMsQ0FBQztJQUMvQixDQUFDO0lBRVMsUUFBUSxDQUFDLENBQVU7UUFDekIsSUFBSSxDQUFDLFNBQVMsRUFBRSxRQUFRLENBQUMsU0FBUyxFQUFFLEVBQUUsV0FBVyxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQyxVQUFVLENBQUMsQ0FBQyxDQUFDLE9BQU8sRUFBRSxDQUFDLENBQUM7SUFDaEcsQ0FBQztJQUdELGNBQWMsQ0FBQyxLQUF3QjtRQUNuQyxJQUFJLENBQUMsSUFBSSxDQUFDLFNBQVMsRUFBRSxtQkFBbUIsRUFBRSxFQUFFLENBQUM7WUFDekMsS0FBSyxDQUFDLGNBQWMsRUFBRSxDQUFDO1lBQ3ZCLEtBQUssQ0FBQyxXQUFXLEdBQUcsRUFBRSxDQUFDO1FBQzNCLENBQUM7SUFDTCxDQUFDO0lBRUQ7O09BRUc7SUFDSCxLQUFLO1FBQ0QsSUFBSSxDQUFDLElBQUksR0FBRyxJQUFJLENBQUM7SUFDckIsQ0FBQzs4R0E5QlEsd0JBQXdCLDhMQUtvTixRQUFRO2tHQUxwUCx3QkFBd0IsNlBDcEJyQyw0Y0FXQSx5Y0RDYyxlQUFlOzsyRkFRaEIsd0JBQXdCO2tCQVhwQyxTQUFTOytCQUNJLHFCQUFxQixjQUNuQixJQUFJLFdBQ1AsQ0FBQyxlQUFlLENBQUMsUUFHcEI7d0JBQ0YsT0FBTyxFQUFFLHFCQUFxQjt3QkFDOUIsY0FBYyxFQUFFLE1BQU07cUJBQ3pCOzswQkFPaU8sUUFBUTs7MEJBQUksTUFBTTsyQkFBQyxRQUFRO3lDQWE3UCxjQUFjO3NCQURiLFlBQVk7dUJBQUMscUJBQXFCLEVBQUUsQ0FBQyxRQUFRLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDZGtEaWFsb2dDb250YWluZXIgfSBmcm9tICdAYW5ndWxhci9jZGsvZGlhbG9nJztcbmltcG9ydCB7IENka1BvcnRhbE91dGxldCB9IGZyb20gJ0Bhbmd1bGFyL2Nkay9wb3J0YWwnO1xuaW1wb3J0IHsgQ29tcG9uZW50LCBFbGVtZW50UmVmLCBIb3N0TGlzdGVuZXIsIEluamVjdCwgTmdab25lLCBPcHRpb25hbCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgRE9DVU1FTlQgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHsgT3ZlcmxheVJlZiB9IGZyb20gJ0Bhbmd1bGFyL2Nkay9vdmVybGF5JztcbmltcG9ydCB7IEZvY3VzVHJhcEZhY3RvcnksIEludGVyYWN0aXZpdHlDaGVja2VyIH0gZnJvbSAnQGFuZ3VsYXIvY2RrL2ExMXknO1xuaW1wb3J0IHsgTXpEaWFsb2dDb25maWcgfSBmcm9tICcuLi9kaWFsb2ctY29uZmlnJztcbmltcG9ydCB7IE16RGlhbG9nUmVmIH0gZnJvbSAnLi4vZGlhbG9nLXJlZic7XG5cbkBDb21wb25lbnQoe1xuICAgIHNlbGVjdG9yOiAnbXotZHJhd2VyLWNvbnRhaW5lcicsXG4gICAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgICBpbXBvcnRzOiBbQ2RrUG9ydGFsT3V0bGV0XSxcbiAgICB0ZW1wbGF0ZVVybDogJy4vZHJhd2VyLWNvbnRhaW5lci5jb21wb25lbnQuaHRtbCcsXG4gICAgc3R5bGVVcmw6ICcuL2RyYXdlci1jb250YWluZXIuY29tcG9uZW50LnNjc3MnLFxuICAgIGhvc3Q6IHtcbiAgICAgICAgJ2NsYXNzJzogJ216LWRpYWxvZy1jb250YWluZXInLFxuICAgICAgICAnW2NsYXNzLm9wZW5dJzogJ29wZW4nXG4gICAgfVxufSlcbmV4cG9ydCBjbGFzcyBEcmF3ZXJDb250YWluZXJDb21wb25lbnQgZXh0ZW5kcyBDZGtEaWFsb2dDb250YWluZXI8TXpEaWFsb2dDb25maWc+IHtcblxuICAgIHByaXZhdGUgZGlhbG9nUmVmPzogTXpEaWFsb2dSZWY8YW55PjtcbiAgICBwcm90ZWN0ZWQgb3BlbiA9IGZhbHNlO1xuXG4gICAgY29uc3RydWN0b3IoZWxlbWVudFJlZjogRWxlbWVudFJlZiwgZm9jdXNUcmFwRmFjdG9yeTogRm9jdXNUcmFwRmFjdG9yeSwgcmVhZG9ubHkgZGlhbG9nQ29uZmlnOiBNekRpYWxvZ0NvbmZpZywgcHJvdGVjdGVkIGludGVyYWN0aXZpdHlDaGVja2VyOiBJbnRlcmFjdGl2aXR5Q2hlY2tlciwgcHJvdGVjdGVkIG5nWm9uZTogTmdab25lLCBwcm90ZWN0ZWQgb3ZlcmxheVJlZjogT3ZlcmxheVJlZiwgQE9wdGlvbmFsKCkgQEluamVjdChET0NVTUVOVCkgX2RvY3VtZW50OiBhbnkpIHtcbiAgICAgICAgc3VwZXIoZWxlbWVudFJlZiwgZm9jdXNUcmFwRmFjdG9yeSwgX2RvY3VtZW50LCBkaWFsb2dDb25maWcsIGludGVyYWN0aXZpdHlDaGVja2VyLCBuZ1pvbmUsIG92ZXJsYXlSZWYpO1xuICAgIH1cblxuICAgIGFzc29jaWF0ZURpYWxvZ1JlZihkaWFsb2dSZWY6IE16RGlhbG9nUmVmPGFueT4pOiB2b2lkIHtcbiAgICAgICAgdGhpcy5kaWFsb2dSZWYgPSBkaWFsb2dSZWY7XG4gICAgfVxuXG4gICAgcHJvdGVjdGVkIHRyeUNsb3NlKGU6IFVJRXZlbnQpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5kaWFsb2dSZWY/LnRyeUNsb3NlKHVuZGVmaW5lZCwgeyBmb2N1c09yaWdpbjogZS5kZXRhaWwgPT09IDAgPyAna2V5Ym9hcmQnIDogJ21vdXNlJyB9KTtcbiAgICB9XG5cbiAgICBASG9zdExpc3RlbmVyKCd3aW5kb3c6YmVmb3JldW5sb2FkJywgWyckZXZlbnQnXSlcbiAgICBvbkJlZm9yZVVubG9hZChldmVudDogQmVmb3JlVW5sb2FkRXZlbnQpIHtcbiAgICAgICAgaWYgKCF0aGlzLmRpYWxvZ1JlZj8uY29uZmlybURlYWN0aXZhdGlvbigpKSB7XG4gICAgICAgICAgICBldmVudC5wcmV2ZW50RGVmYXVsdCgpO1xuICAgICAgICAgICAgZXZlbnQucmV0dXJuVmFsdWUgPSAnJztcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC8qKlxuICAgICAqIE1hcmtzIHN0YXRlIG9mIGNvbnRhaW5lciBmb3IgYW5pbWF0aW9uIHB1cnBvc2VzLlxuICAgICAqL1xuICAgIGVudGVyKCkge1xuICAgICAgICB0aGlzLm9wZW4gPSB0cnVlO1xuICAgIH1cbn1cbiIsIjxhcnRpY2xlIGNsYXNzPVwibXotZGlhbG9nXCI+XG4gICAgPG5nLXRlbXBsYXRlIGNka1BvcnRhbE91dGxldCAvPlxuXG4gICAgQGlmKCFkaWFsb2dDb25maWcuZGlzYWJsZUNsb3NlKSB7XG4gICAgPGJ1dHRvbiBjbGFzcz1cImJ1dHRvbi1jbG9zZVwiIChjbGljayk9XCJ0cnlDbG9zZSgkZXZlbnQpXCI+XG4gICAgICAgIDxzdmcgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiIGZpbGw9XCJub25lXCIgdmlld0JveD1cIjAgMCAyNCAyNFwiIHN0cm9rZS13aWR0aD1cIjEuNVwiIHN0cm9rZT1cImN1cnJlbnRDb2xvclwiPlxuICAgICAgICAgICAgPHBhdGggc3Ryb2tlLWxpbmVjYXA9XCJyb3VuZFwiIHN0cm9rZS1saW5lam9pbj1cInJvdW5kXCIgZD1cIk02IDE4IDE4IDZNNiA2bDEyIDEyXCIgLz5cbiAgICAgICAgPC9zdmc+XG4gICAgPC9idXR0b24+XG4gICAgfVxuPC9hcnRpY2xlPlxuIl19
|
|
@@ -0,0 +1,50 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Configuration opening a modal dialog with the MzDialog service. Properties here are exposes what's available in @angular/cdk DialogConfig
|
|
3
|
+
* and with a few additional properties for MzDialog.
|
|
4
|
+
* See https://material.angular.io/cdk/dialog/api#DialogConfig
|
|
5
|
+
*/
|
|
6
|
+
export class MzDialogConfig {
|
|
7
|
+
constructor() {
|
|
8
|
+
this.size = 'md';
|
|
9
|
+
/** The ARIA role of the dialog element. */
|
|
10
|
+
this.role = 'dialog';
|
|
11
|
+
/** Optional CSS class or classes applied to the overlay panel. */
|
|
12
|
+
this.panelClass = '';
|
|
13
|
+
/** Whether the dialog has a backdrop. */
|
|
14
|
+
this.hasBackdrop = true;
|
|
15
|
+
/** Optional CSS class or classes applied to the overlay backdrop. */
|
|
16
|
+
this.backdropClass = '';
|
|
17
|
+
/** Whether the dialog closes with the escape key or pointer events outside the panel element. */
|
|
18
|
+
this.disableClose = false;
|
|
19
|
+
/** Width of the dialog. */
|
|
20
|
+
this.width = '';
|
|
21
|
+
/** Height of the dialog. */
|
|
22
|
+
this.height = '';
|
|
23
|
+
/** Data being injected into the child component. */
|
|
24
|
+
this.data = null;
|
|
25
|
+
/** ID of the element that describes the dialog. */
|
|
26
|
+
this.ariaDescribedBy = null;
|
|
27
|
+
/** ID of the element that labels the dialog. */
|
|
28
|
+
this.ariaLabelledBy = null;
|
|
29
|
+
/** Dialog label applied via `aria-label` */
|
|
30
|
+
this.ariaLabel = null;
|
|
31
|
+
/** Whether this is a modal dialog. Used to set the `aria-modal` attribute. */
|
|
32
|
+
this.ariaModal = true;
|
|
33
|
+
/**
|
|
34
|
+
* Where the dialog should focus on open.
|
|
35
|
+
* @breaking-change 14.0.0 Remove boolean option from autoFocus. Use string or
|
|
36
|
+
* AutoFocusTarget instead.
|
|
37
|
+
*/
|
|
38
|
+
this.autoFocus = 'first-tabbable';
|
|
39
|
+
/**
|
|
40
|
+
* Whether the dialog should restore focus to the previously-focused element upon closing.
|
|
41
|
+
* Has the following behavior based on the type that is passed in:
|
|
42
|
+
* - `boolean` - when true, will return focus to the element that was focused before the dialog
|
|
43
|
+
* was opened, otherwise won't restore focus at all.
|
|
44
|
+
* - `string` - focus will be restored to the first element that matches the CSS selector.
|
|
45
|
+
* - `HTMLElement` - focus will be restored to the specific element.
|
|
46
|
+
*/
|
|
47
|
+
this.restoreFocus = true;
|
|
48
|
+
}
|
|
49
|
+
}
|
|
50
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGlhbG9nLWNvbmZpZy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NvbXBvbmVudHMvc3JjL2xpYi9kaWFsb2cvZGlhbG9nLWNvbmZpZy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFNQTs7OztHQUlHO0FBQ0gsTUFBTSxPQUFPLGNBQWM7SUFBM0I7UUFDSSxTQUFJLEdBQStCLElBQUksQ0FBQztRQW1CeEMsMkNBQTJDO1FBQzNDLFNBQUksR0FBZ0IsUUFBUSxDQUFDO1FBRTdCLGtFQUFrRTtRQUNsRSxlQUFVLEdBQXVCLEVBQUUsQ0FBQztRQUVwQyx5Q0FBeUM7UUFDekMsZ0JBQVcsR0FBYSxJQUFJLENBQUM7UUFFN0IscUVBQXFFO1FBQ3JFLGtCQUFhLEdBQXVCLEVBQUUsQ0FBQztRQUV2QyxpR0FBaUc7UUFDakcsaUJBQVksR0FBYSxLQUFLLENBQUM7UUFFL0IsMkJBQTJCO1FBQzNCLFVBQUssR0FBWSxFQUFFLENBQUM7UUFFcEIsNEJBQTRCO1FBQzVCLFdBQU0sR0FBWSxFQUFFLENBQUM7UUFpQnJCLG9EQUFvRDtRQUNwRCxTQUFJLEdBQWMsSUFBSSxDQUFDO1FBS3ZCLG1EQUFtRDtRQUNuRCxvQkFBZSxHQUFtQixJQUFJLENBQUM7UUFFdkMsZ0RBQWdEO1FBQ2hELG1CQUFjLEdBQW1CLElBQUksQ0FBQztRQUV0Qyw0Q0FBNEM7UUFDNUMsY0FBUyxHQUFtQixJQUFJLENBQUM7UUFFakMsOEVBQThFO1FBQzlFLGNBQVMsR0FBYSxJQUFJLENBQUM7UUFFM0I7Ozs7V0FJRztRQUNILGNBQVMsR0FBd0MsZ0JBQWdCLENBQUM7UUFFbEU7Ozs7Ozs7V0FPRztRQUNILGlCQUFZLEdBQW9DLElBQUksQ0FBQztJQW1CekQsQ0FBQztDQUFBIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRGlyZWN0aW9uIH0gZnJvbSBcIkBhbmd1bGFyL2Nkay9iaWRpXCI7XG5pbXBvcnQgeyBBdXRvRm9jdXNUYXJnZXQsIERpYWxvZ1JvbGUgfSBmcm9tIFwiQGFuZ3VsYXIvY2RrL2RpYWxvZ1wiO1xuaW1wb3J0IHsgUG9zaXRpb25TdHJhdGVneSwgU2Nyb2xsU3RyYXRlZ3kgfSBmcm9tIFwiQGFuZ3VsYXIvY2RrL292ZXJsYXlcIjtcbmltcG9ydCB7IEJhc2VQb3J0YWxPdXRsZXQgfSBmcm9tIFwiQGFuZ3VsYXIvY2RrL3BvcnRhbFwiO1xuaW1wb3J0IHsgSW5qZWN0b3IsIFR5cGUsIFZpZXdDb250YWluZXJSZWYgfSBmcm9tIFwiQGFuZ3VsYXIvY29yZVwiO1xuXG4vKipcbiAqIENvbmZpZ3VyYXRpb24gb3BlbmluZyBhIG1vZGFsIGRpYWxvZyB3aXRoIHRoZSBNekRpYWxvZyBzZXJ2aWNlLiBQcm9wZXJ0aWVzIGhlcmUgYXJlIGV4cG9zZXMgd2hhdCdzIGF2YWlsYWJsZSBpbiBAYW5ndWxhci9jZGsgRGlhbG9nQ29uZmlnXG4gKiBhbmQgd2l0aCBhIGZldyBhZGRpdGlvbmFsIHByb3BlcnRpZXMgZm9yIE16RGlhbG9nLlxuICogU2VlIGh0dHBzOi8vbWF0ZXJpYWwuYW5ndWxhci5pby9jZGsvZGlhbG9nL2FwaSNEaWFsb2dDb25maWdcbiAqL1xuZXhwb3J0IGNsYXNzIE16RGlhbG9nQ29uZmlnPEQgPSBhbnksIEMgZXh0ZW5kcyBCYXNlUG9ydGFsT3V0bGV0ID0gQmFzZVBvcnRhbE91dGxldD4ge1xuICAgIHNpemU/OiAnc20nIHwgJ21kJyB8ICdsZycgfCAneGwnID0gJ21kJztcblxuICAgIC8qKlxuICAgICAqIFdoZXJlIHRoZSBhdHRhY2hlZCBjb21wb25lbnQgc2hvdWxkIGxpdmUgaW4gQW5ndWxhcidzICpsb2dpY2FsKiBjb21wb25lbnQgdHJlZS5cbiAgICAgKiBUaGlzIGFmZmVjdHMgd2hhdCBpcyBhdmFpbGFibGUgZm9yIGluamVjdGlvbiBhbmQgdGhlIGNoYW5nZSBkZXRlY3Rpb24gb3JkZXIgZm9yIHRoZVxuICAgICAqIGNvbXBvbmVudCBpbnN0YW50aWF0ZWQgaW5zaWRlIG9mIHRoZSBkaWFsb2cuIFRoaXMgZG9lcyBub3QgYWZmZWN0IHdoZXJlIHRoZSBkaWFsb2dcbiAgICAgKiBjb250ZW50IHdpbGwgYmUgcmVuZGVyZWQuXG4gICAgICovXG4gICAgdmlld0NvbnRhaW5lclJlZj86IFZpZXdDb250YWluZXJSZWY7XG5cbiAgICAvKipcbiAgICAgKiBJbmplY3RvciB1c2VkIGZvciB0aGUgaW5zdGFudGlhdGlvbiBvZiB0aGUgY29tcG9uZW50IHRvIGJlIGF0dGFjaGVkLiBJZiBwcm92aWRlZCxcbiAgICAgKiB0YWtlcyBwcmVjZWRlbmNlIG92ZXIgdGhlIGluamVjdG9yIGluZGlyZWN0bHkgcHJvdmlkZWQgYnkgYFZpZXdDb250YWluZXJSZWZgLlxuICAgICAqL1xuICAgIGluamVjdG9yPzogSW5qZWN0b3I7XG5cbiAgICAvKiogSUQgZm9yIHRoZSBkaWFsb2cuIElmIG9taXR0ZWQsIGEgdW5pcXVlIG9uZSB3aWxsIGJlIGdlbmVyYXRlZC4gKi9cbiAgICBpZD86IHN0cmluZztcblxuICAgIC8qKiBUaGUgQVJJQSByb2xlIG9mIHRoZSBkaWFsb2cgZWxlbWVudC4gKi9cbiAgICByb2xlPzogRGlhbG9nUm9sZSA9ICdkaWFsb2cnO1xuXG4gICAgLyoqIE9wdGlvbmFsIENTUyBjbGFzcyBvciBjbGFzc2VzIGFwcGxpZWQgdG8gdGhlIG92ZXJsYXkgcGFuZWwuICovXG4gICAgcGFuZWxDbGFzcz86IHN0cmluZyB8IHN0cmluZ1tdID0gJyc7XG5cbiAgICAvKiogV2hldGhlciB0aGUgZGlhbG9nIGhhcyBhIGJhY2tkcm9wLiAqL1xuICAgIGhhc0JhY2tkcm9wPzogYm9vbGVhbiA9IHRydWU7XG5cbiAgICAvKiogT3B0aW9uYWwgQ1NTIGNsYXNzIG9yIGNsYXNzZXMgYXBwbGllZCB0byB0aGUgb3ZlcmxheSBiYWNrZHJvcC4gKi9cbiAgICBiYWNrZHJvcENsYXNzPzogc3RyaW5nIHwgc3RyaW5nW10gPSAnJztcblxuICAgIC8qKiBXaGV0aGVyIHRoZSBkaWFsb2cgY2xvc2VzIHdpdGggdGhlIGVzY2FwZSBrZXkgb3IgcG9pbnRlciBldmVudHMgb3V0c2lkZSB0aGUgcGFuZWwgZWxlbWVudC4gKi9cbiAgICBkaXNhYmxlQ2xvc2U/OiBib29sZWFuID0gZmFsc2U7XG5cbiAgICAvKiogV2lkdGggb2YgdGhlIGRpYWxvZy4gKi9cbiAgICB3aWR0aD86IHN0cmluZyA9ICcnO1xuXG4gICAgLyoqIEhlaWdodCBvZiB0aGUgZGlhbG9nLiAqL1xuICAgIGhlaWdodD86IHN0cmluZyA9ICcnO1xuXG4gICAgLyoqIE1pbi13aWR0aCBvZiB0aGUgZGlhbG9nLiBJZiBhIG51bWJlciBpcyBwcm92aWRlZCwgYXNzdW1lcyBwaXhlbCB1bml0cy4gKi9cbiAgICBtaW5XaWR0aD86IG51bWJlciB8IHN0cmluZztcblxuICAgIC8qKiBNaW4taGVpZ2h0IG9mIHRoZSBkaWFsb2cuIElmIGEgbnVtYmVyIGlzIHByb3ZpZGVkLCBhc3N1bWVzIHBpeGVsIHVuaXRzLiAqL1xuICAgIG1pbkhlaWdodD86IG51bWJlciB8IHN0cmluZztcblxuICAgIC8qKiBNYXgtd2lkdGggb2YgdGhlIGRpYWxvZy4gSWYgYSBudW1iZXIgaXMgcHJvdmlkZWQsIGFzc3VtZXMgcGl4ZWwgdW5pdHMuIERlZmF1bHRzIHRvIDgwdncuICovXG4gICAgbWF4V2lkdGg/OiBudW1iZXIgfCBzdHJpbmc7XG5cbiAgICAvKiogTWF4LWhlaWdodCBvZiB0aGUgZGlhbG9nLiBJZiBhIG51bWJlciBpcyBwcm92aWRlZCwgYXNzdW1lcyBwaXhlbCB1bml0cy4gKi9cbiAgICBtYXhIZWlnaHQ/OiBudW1iZXIgfCBzdHJpbmc7XG5cbiAgICAvKiogU3RyYXRlZ3kgdG8gdXNlIHdoZW4gcG9zaXRpb25pbmcgdGhlIGRpYWxvZy4gRGVmYXVsdHMgdG8gY2VudGVyaW5nIGl0IG9uIHRoZSBwYWdlLiAqL1xuICAgIHBvc2l0aW9uU3RyYXRlZ3k/OiBQb3NpdGlvblN0cmF0ZWd5O1xuXG4gICAgLyoqIERhdGEgYmVpbmcgaW5qZWN0ZWQgaW50byB0aGUgY2hpbGQgY29tcG9uZW50LiAqL1xuICAgIGRhdGE/OiBEIHwgbnVsbCA9IG51bGw7XG5cbiAgICAvKiogTGF5b3V0IGRpcmVjdGlvbiBmb3IgdGhlIGRpYWxvZydzIGNvbnRlbnQuICovXG4gICAgZGlyZWN0aW9uPzogRGlyZWN0aW9uO1xuXG4gICAgLyoqIElEIG9mIHRoZSBlbGVtZW50IHRoYXQgZGVzY3JpYmVzIHRoZSBkaWFsb2cuICovXG4gICAgYXJpYURlc2NyaWJlZEJ5Pzogc3RyaW5nIHwgbnVsbCA9IG51bGw7XG5cbiAgICAvKiogSUQgb2YgdGhlIGVsZW1lbnQgdGhhdCBsYWJlbHMgdGhlIGRpYWxvZy4gKi9cbiAgICBhcmlhTGFiZWxsZWRCeT86IHN0cmluZyB8IG51bGwgPSBudWxsO1xuXG4gICAgLyoqIERpYWxvZyBsYWJlbCBhcHBsaWVkIHZpYSBgYXJpYS1sYWJlbGAgKi9cbiAgICBhcmlhTGFiZWw/OiBzdHJpbmcgfCBudWxsID0gbnVsbDtcblxuICAgIC8qKiBXaGV0aGVyIHRoaXMgaXMgYSBtb2RhbCBkaWFsb2cuIFVzZWQgdG8gc2V0IHRoZSBgYXJpYS1tb2RhbGAgYXR0cmlidXRlLiAqL1xuICAgIGFyaWFNb2RhbD86IGJvb2xlYW4gPSB0cnVlO1xuXG4gICAgLyoqXG4gICAgICogV2hlcmUgdGhlIGRpYWxvZyBzaG91bGQgZm9jdXMgb24gb3Blbi5cbiAgICAgKiBAYnJlYWtpbmctY2hhbmdlIDE0LjAuMCBSZW1vdmUgYm9vbGVhbiBvcHRpb24gZnJvbSBhdXRvRm9jdXMuIFVzZSBzdHJpbmcgb3JcbiAgICAgKiBBdXRvRm9jdXNUYXJnZXQgaW5zdGVhZC5cbiAgICAgKi9cbiAgICBhdXRvRm9jdXM/OiBBdXRvRm9jdXNUYXJnZXQgfCBzdHJpbmcgfCBib29sZWFuID0gJ2ZpcnN0LXRhYmJhYmxlJztcblxuICAgIC8qKlxuICAgICAqIFdoZXRoZXIgdGhlIGRpYWxvZyBzaG91bGQgcmVzdG9yZSBmb2N1cyB0byB0aGUgcHJldmlvdXNseS1mb2N1c2VkIGVsZW1lbnQgdXBvbiBjbG9zaW5nLlxuICAgICAqIEhhcyB0aGUgZm9sbG93aW5nIGJlaGF2aW9yIGJhc2VkIG9uIHRoZSB0eXBlIHRoYXQgaXMgcGFzc2VkIGluOlxuICAgICAqIC0gYGJvb2xlYW5gIC0gd2hlbiB0cnVlLCB3aWxsIHJldHVybiBmb2N1cyB0byB0aGUgZWxlbWVudCB0aGF0IHdhcyBmb2N1c2VkIGJlZm9yZSB0aGUgZGlhbG9nXG4gICAgICogICAgd2FzIG9wZW5lZCwgb3RoZXJ3aXNlIHdvbid0IHJlc3RvcmUgZm9jdXMgYXQgYWxsLlxuICAgICAqIC0gYHN0cmluZ2AgLSBmb2N1cyB3aWxsIGJlIHJlc3RvcmVkIHRvIHRoZSBmaXJzdCBlbGVtZW50IHRoYXQgbWF0Y2hlcyB0aGUgQ1NTIHNlbGVjdG9yLlxuICAgICAqIC0gYEhUTUxFbGVtZW50YCAtIGZvY3VzIHdpbGwgYmUgcmVzdG9yZWQgdG8gdGhlIHNwZWNpZmljIGVsZW1lbnQuXG4gICAgICovXG4gICAgcmVzdG9yZUZvY3VzPzogYm9vbGVhbiB8IHN0cmluZyB8IEhUTUxFbGVtZW50ID0gdHJ1ZTtcblxuICAgIC8qKlxuICAgICAqIFNjcm9sbCBzdHJhdGVneSB0byBiZSB1c2VkIGZvciB0aGUgZGlhbG9nLiBUaGlzIGRldGVybWluZXMgaG93XG4gICAgICogdGhlIGRpYWxvZyByZXNwb25kcyB0byBzY3JvbGxpbmcgdW5kZXJuZWF0aCB0aGUgcGFuZWwgZWxlbWVudC5cbiAgICAgKi9cbiAgICBzY3JvbGxTdHJhdGVneT86IFNjcm9sbFN0cmF0ZWd5O1xuXG4gICAgLyoqXG4gICAgICogV2hldGhlciB0aGUgZGlhbG9nIHNob3VsZCBjbG9zZSB3aGVuIHRoZSB1c2VyIGdvZXMgYmFja3dhcmRzL2ZvcndhcmRzIGluIGhpc3RvcnkuXG4gICAgICovXG4gICAgY2xvc2VPbk5hdmlnYXRpb24/OiBib29sZWFuO1xuXG4gICAgLyoqXG4gICAgICogQ29tcG9uZW50IGludG8gd2hpY2ggdGhlIGRpYWxvZyBjb250ZW50IHdpbGwgYmUgcmVuZGVyZWQuIERlZmF1bHRzIHRvIGBDZGtEaWFsb2dDb250YWluZXJgLlxuICAgICAqIEEgY29uZmlndXJhdGlvbiBvYmplY3QgY2FuIGJlIHBhc3NlZCBpbiB0byBjdXN0b21pemUgdGhlIHByb3ZpZGVycyB0aGF0IHdpbGwgYmUgZXhwb3NlZFxuICAgICAqIHRvIHRoZSBkaWFsb2cgY29udGFpbmVyLlxuICAgICAqL1xuICAgIGNvbnRhaW5lcj86IFR5cGU8Qz47XG59Il19
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
import { InjectionToken } from "@angular/core";
|
|
2
|
+
/** Injection token that can be used to provide default options for the dialog module. */
|
|
3
|
+
export const DEFAULT_MZ_DIALOG_CONFIG = new InjectionToken('DefaultMzDialogConfig');
|
|
4
|
+
export const MZ_DIALOG_DATA = new InjectionToken('MzDialogData');
|
|
5
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGlhbG9nLWluamVjdG9ycy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NvbXBvbmVudHMvc3JjL2xpYi9kaWFsb2cvZGlhbG9nLWluamVjdG9ycy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRy9DLHlGQUF5RjtBQUN6RixNQUFNLENBQUMsTUFBTSx3QkFBd0IsR0FBRyxJQUFJLGNBQWMsQ0FBaUIsdUJBQXVCLENBQUMsQ0FBQztBQUVwRyxNQUFNLENBQUMsTUFBTSxjQUFjLEdBQUcsSUFBSSxjQUFjLENBQU0sY0FBYyxDQUFDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3Rpb25Ub2tlbiB9IGZyb20gXCJAYW5ndWxhci9jb3JlXCI7XG5pbXBvcnQgeyBNekRpYWxvZ0NvbmZpZyB9IGZyb20gXCIuL2RpYWxvZy1jb25maWdcIjtcblxuLyoqIEluamVjdGlvbiB0b2tlbiB0aGF0IGNhbiBiZSB1c2VkIHRvIHByb3ZpZGUgZGVmYXVsdCBvcHRpb25zIGZvciB0aGUgZGlhbG9nIG1vZHVsZS4gKi9cbmV4cG9ydCBjb25zdCBERUZBVUxUX01aX0RJQUxPR19DT05GSUcgPSBuZXcgSW5qZWN0aW9uVG9rZW48TXpEaWFsb2dDb25maWc+KCdEZWZhdWx0TXpEaWFsb2dDb25maWcnKTtcblxuZXhwb3J0IGNvbnN0IE1aX0RJQUxPR19EQVRBID0gbmV3IEluamVjdGlvblRva2VuPGFueT4oJ016RGlhbG9nRGF0YScpO1xuIl19
|
|
@@ -0,0 +1,57 @@
|
|
|
1
|
+
import { filter, merge } from "rxjs";
|
|
2
|
+
import { hasImplementation } from "../guard-deactivate";
|
|
3
|
+
export class MzDialogRef {
|
|
4
|
+
constructor(cdkRef, config, containerInstance) {
|
|
5
|
+
this.cdkRef = cdkRef;
|
|
6
|
+
this.config = config;
|
|
7
|
+
this.containerInstance = containerInstance;
|
|
8
|
+
this.disableClose = config.disableClose;
|
|
9
|
+
this.id = cdkRef.id;
|
|
10
|
+
merge(this.cdkRef.backdropClick, this.cdkRef.keydownEvents.pipe(filter((event) => !this.disableClose && event.code === 'Escape' && !event.getModifierState(event.key)))).subscribe((event) => {
|
|
11
|
+
if (!this.disableClose) {
|
|
12
|
+
event.preventDefault();
|
|
13
|
+
this.tryClose(undefined, { focusOrigin: event.type === 'keydown' ? 'keyboard' : 'mouse' });
|
|
14
|
+
}
|
|
15
|
+
});
|
|
16
|
+
}
|
|
17
|
+
get componentInstance() {
|
|
18
|
+
return this.cdkRef.componentInstance;
|
|
19
|
+
}
|
|
20
|
+
get closed() {
|
|
21
|
+
return this.cdkRef.closed;
|
|
22
|
+
}
|
|
23
|
+
/**
|
|
24
|
+
* Confirms the component's deactivation then closes the dialog.
|
|
25
|
+
* @param result
|
|
26
|
+
* @param options
|
|
27
|
+
* @returns
|
|
28
|
+
*/
|
|
29
|
+
tryClose(result, options) {
|
|
30
|
+
if (this.canDeactivate() || this.confirmDeactivation()) {
|
|
31
|
+
this.cdkRef.close(result, options);
|
|
32
|
+
return true;
|
|
33
|
+
}
|
|
34
|
+
return false;
|
|
35
|
+
}
|
|
36
|
+
/**
|
|
37
|
+
* Closes the dialog without confirmation.
|
|
38
|
+
* @param result
|
|
39
|
+
* @param options
|
|
40
|
+
*/
|
|
41
|
+
close(result, options) {
|
|
42
|
+
this.cdkRef.close(result, options);
|
|
43
|
+
}
|
|
44
|
+
confirmDeactivation() {
|
|
45
|
+
if (hasImplementation(this.cdkRef.componentInstance, 'canDeactivate') && !this.cdkRef.componentInstance.canDeactivate()) {
|
|
46
|
+
return this.cdkRef.componentInstance.confirmDeactivation();
|
|
47
|
+
}
|
|
48
|
+
return true;
|
|
49
|
+
}
|
|
50
|
+
canDeactivate() {
|
|
51
|
+
if (hasImplementation(this.cdkRef.componentInstance, 'canDeactivate')) {
|
|
52
|
+
return this.cdkRef.componentInstance.canDeactivate();
|
|
53
|
+
}
|
|
54
|
+
return true;
|
|
55
|
+
}
|
|
56
|
+
}
|
|
57
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGlhbG9nLXJlZi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NvbXBvbmVudHMvc3JjL2xpYi9kaWFsb2cvZGlhbG9nLXJlZi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFHQSxPQUFPLEVBQWMsTUFBTSxFQUFFLEtBQUssRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUNqRCxPQUFPLEVBQTBCLGlCQUFpQixFQUFFLE1BQU0scUJBQXFCLENBQUM7QUFFaEYsTUFBTSxPQUFPLFdBQVc7SUFLcEIsWUFBcUIsTUFBdUIsRUFBVyxNQUFzQixFQUFXLGlCQUFtQztRQUF0RyxXQUFNLEdBQU4sTUFBTSxDQUFpQjtRQUFXLFdBQU0sR0FBTixNQUFNLENBQWdCO1FBQVcsc0JBQWlCLEdBQWpCLGlCQUFpQixDQUFrQjtRQUN2SCxJQUFJLENBQUMsWUFBWSxHQUFHLE1BQU0sQ0FBQyxZQUFZLENBQUM7UUFDeEMsSUFBSSxDQUFDLEVBQUUsR0FBRyxNQUFNLENBQUMsRUFBRSxDQUFDO1FBQ3BCLEtBQUssQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLGFBQWEsRUFBRSxJQUFJLENBQUMsTUFBTSxDQUFDLGFBQWEsQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLENBQUMsS0FBSyxFQUFFLEVBQUUsQ0FBQyxDQUFDLElBQUksQ0FBQyxZQUFZLElBQUksS0FBSyxDQUFDLElBQUksS0FBSyxRQUFRLElBQUksQ0FBQyxLQUFLLENBQUMsZ0JBQWdCLENBQUMsS0FBSyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLFNBQVMsQ0FBQyxDQUFDLEtBQUssRUFBRSxFQUFFO1lBQ3pMLElBQUksQ0FBQyxJQUFJLENBQUMsWUFBWSxFQUFFLENBQUM7Z0JBQ3JCLEtBQUssQ0FBQyxjQUFjLEVBQUUsQ0FBQztnQkFDdkIsSUFBSSxDQUFDLFFBQVEsQ0FBQyxTQUFTLEVBQUUsRUFBRSxXQUFXLEVBQUUsS0FBSyxDQUFDLElBQUksS0FBSyxTQUFTLENBQUMsQ0FBQyxDQUFDLFVBQVUsQ0FBQyxDQUFDLENBQUMsT0FBTyxFQUFFLENBQUMsQ0FBQztZQUMvRixDQUFDO1FBQ0wsQ0FBQyxDQUFDLENBQUM7SUFDUCxDQUFDO0lBRUQsSUFBSSxpQkFBaUI7UUFDakIsT0FBTyxJQUFJLENBQUMsTUFBTSxDQUFDLGlCQUFpQixDQUFDO0lBQ3pDLENBQUM7SUFFRCxJQUFJLE1BQU07UUFDTixPQUFPLElBQUksQ0FBQyxNQUFNLENBQUMsTUFBTSxDQUFDO0lBQzlCLENBQUM7SUFFRDs7Ozs7T0FLRztJQUNILFFBQVEsQ0FBQyxNQUFVLEVBQUUsT0FBNEI7UUFDN0MsSUFBSSxJQUFJLENBQUMsYUFBYSxFQUFFLElBQUksSUFBSSxDQUFDLG1CQUFtQixFQUFFLEVBQUUsQ0FBQztZQUNyRCxJQUFJLENBQUMsTUFBTSxDQUFDLEtBQUssQ0FBQyxNQUFNLEVBQUUsT0FBTyxDQUFDLENBQUM7WUFDbkMsT0FBTyxJQUFJLENBQUM7UUFDaEIsQ0FBQztRQUVELE9BQU8sS0FBSyxDQUFDO0lBQ2pCLENBQUM7SUFFRDs7OztPQUlHO0lBQ0gsS0FBSyxDQUFDLE1BQVUsRUFBRSxPQUE0QjtRQUMxQyxJQUFJLENBQUMsTUFBTSxDQUFDLEtBQUssQ0FBQyxNQUFNLEVBQUUsT0FBTyxDQUFDLENBQUM7SUFDdkMsQ0FBQztJQUVELG1CQUFtQjtRQUNmLElBQUksaUJBQWlCLENBQXlCLElBQUksQ0FBQyxNQUFNLENBQUMsaUJBQWlCLEVBQUUsZUFBZSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLGlCQUFpQixDQUFDLGFBQWEsRUFBRSxFQUFFLENBQUM7WUFDOUksT0FBTyxJQUFJLENBQUMsTUFBTSxDQUFDLGlCQUFpQixDQUFDLG1CQUFtQixFQUFFLENBQUM7UUFDL0QsQ0FBQztRQUVELE9BQU8sSUFBSSxDQUFDO0lBQ2hCLENBQUM7SUFFRCxhQUFhO1FBQ1QsSUFBSSxpQkFBaUIsQ0FBeUIsSUFBSSxDQUFDLE1BQU0sQ0FBQyxpQkFBaUIsRUFBRSxlQUFlLENBQUMsRUFBRSxDQUFDO1lBQzVGLE9BQU8sSUFBSSxDQUFDLE1BQU0sQ0FBQyxpQkFBaUIsQ0FBQyxhQUFhLEVBQUUsQ0FBQztRQUN6RCxDQUFDO1FBRUQsT0FBTyxJQUFJLENBQUM7SUFDaEIsQ0FBQztDQUNKIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRGlhbG9nQ2xvc2VPcHRpb25zLCBEaWFsb2dSZWYgfSBmcm9tIFwiQGFuZ3VsYXIvY2RrL2RpYWxvZ1wiO1xuaW1wb3J0IHsgTXpEaWFsb2dDb25maWcgfSBmcm9tIFwiLi9kaWFsb2ctY29uZmlnXCI7XG5pbXBvcnQgeyBCYXNlUG9ydGFsT3V0bGV0IH0gZnJvbSBcIkBhbmd1bGFyL2Nkay9wb3J0YWxcIjtcbmltcG9ydCB7IE9ic2VydmFibGUsIGZpbHRlciwgbWVyZ2UgfSBmcm9tIFwicnhqc1wiO1xuaW1wb3J0IHsgQ2FuRGVhY3RpdmF0ZUNvbXBvbmVudCwgaGFzSW1wbGVtZW50YXRpb24gfSBmcm9tIFwiLi4vZ3VhcmQtZGVhY3RpdmF0ZVwiO1xuXG5leHBvcnQgY2xhc3MgTXpEaWFsb2dSZWY8UiwgQyA9IGFueT4ge1xuICAgIC8qKiBXaGV0aGVyIHRoZSB1c2VyIGlzIGFsbG93ZWQgdG8gY2xvc2UgdGhlIGRpYWxvZy4gKi9cbiAgICByZWFkb25seSBkaXNhYmxlQ2xvc2U6IGJvb2xlYW4gfCB1bmRlZmluZWQ7XG4gICAgcmVhZG9ubHkgaWQ6IHN0cmluZztcblxuICAgIGNvbnN0cnVjdG9yKHJlYWRvbmx5IGNka1JlZjogRGlhbG9nUmVmPFIsIEM+LCByZWFkb25seSBjb25maWc6IE16RGlhbG9nQ29uZmlnLCByZWFkb25seSBjb250YWluZXJJbnN0YW5jZTogQmFzZVBvcnRhbE91dGxldCkge1xuICAgICAgICB0aGlzLmRpc2FibGVDbG9zZSA9IGNvbmZpZy5kaXNhYmxlQ2xvc2U7XG4gICAgICAgIHRoaXMuaWQgPSBjZGtSZWYuaWQ7XG4gICAgICAgIG1lcmdlKHRoaXMuY2RrUmVmLmJhY2tkcm9wQ2xpY2ssIHRoaXMuY2RrUmVmLmtleWRvd25FdmVudHMucGlwZShmaWx0ZXIoKGV2ZW50KSA9PiAhdGhpcy5kaXNhYmxlQ2xvc2UgJiYgZXZlbnQuY29kZSA9PT0gJ0VzY2FwZScgJiYgIWV2ZW50LmdldE1vZGlmaWVyU3RhdGUoZXZlbnQua2V5KSkpKS5zdWJzY3JpYmUoKGV2ZW50KSA9PiB7XG4gICAgICAgICAgICBpZiAoIXRoaXMuZGlzYWJsZUNsb3NlKSB7XG4gICAgICAgICAgICAgICAgZXZlbnQucHJldmVudERlZmF1bHQoKTtcbiAgICAgICAgICAgICAgICB0aGlzLnRyeUNsb3NlKHVuZGVmaW5lZCwgeyBmb2N1c09yaWdpbjogZXZlbnQudHlwZSA9PT0gJ2tleWRvd24nID8gJ2tleWJvYXJkJyA6ICdtb3VzZScgfSk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH0pO1xuICAgIH1cblxuICAgIGdldCBjb21wb25lbnRJbnN0YW5jZSgpOiBDIHwgbnVsbCB7XG4gICAgICAgIHJldHVybiB0aGlzLmNka1JlZi5jb21wb25lbnRJbnN0YW5jZTtcbiAgICB9XG5cbiAgICBnZXQgY2xvc2VkKCk6IE9ic2VydmFibGU8UiB8IHVuZGVmaW5lZD4ge1xuICAgICAgICByZXR1cm4gdGhpcy5jZGtSZWYuY2xvc2VkO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIENvbmZpcm1zIHRoZSBjb21wb25lbnQncyBkZWFjdGl2YXRpb24gdGhlbiBjbG9zZXMgdGhlIGRpYWxvZy5cbiAgICAgKiBAcGFyYW0gcmVzdWx0XG4gICAgICogQHBhcmFtIG9wdGlvbnNcbiAgICAgKiBAcmV0dXJuc1xuICAgICAqL1xuICAgIHRyeUNsb3NlKHJlc3VsdD86IFIsIG9wdGlvbnM/OiBEaWFsb2dDbG9zZU9wdGlvbnMpOiBib29sZWFuIHtcbiAgICAgICAgaWYgKHRoaXMuY2FuRGVhY3RpdmF0ZSgpIHx8IHRoaXMuY29uZmlybURlYWN0aXZhdGlvbigpKSB7XG4gICAgICAgICAgICB0aGlzLmNka1JlZi5jbG9zZShyZXN1bHQsIG9wdGlvbnMpO1xuICAgICAgICAgICAgcmV0dXJuIHRydWU7XG4gICAgICAgIH1cblxuICAgICAgICByZXR1cm4gZmFsc2U7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogQ2xvc2VzIHRoZSBkaWFsb2cgd2l0aG91dCBjb25maXJtYXRpb24uXG4gICAgICogQHBhcmFtIHJlc3VsdFxuICAgICAqIEBwYXJhbSBvcHRpb25zXG4gICAgICovXG4gICAgY2xvc2UocmVzdWx0PzogUiwgb3B0aW9ucz86IERpYWxvZ0Nsb3NlT3B0aW9ucyk6IHZvaWQge1xuICAgICAgICB0aGlzLmNka1JlZi5jbG9zZShyZXN1bHQsIG9wdGlvbnMpO1xuICAgIH1cblxuICAgIGNvbmZpcm1EZWFjdGl2YXRpb24oKTogYm9vbGVhbiB7XG4gICAgICAgIGlmIChoYXNJbXBsZW1lbnRhdGlvbjxDYW5EZWFjdGl2YXRlQ29tcG9uZW50Pih0aGlzLmNka1JlZi5jb21wb25lbnRJbnN0YW5jZSwgJ2NhbkRlYWN0aXZhdGUnKSAmJiAhdGhpcy5jZGtSZWYuY29tcG9uZW50SW5zdGFuY2UuY2FuRGVhY3RpdmF0ZSgpKSB7XG4gICAgICAgICAgICByZXR1cm4gdGhpcy5jZGtSZWYuY29tcG9uZW50SW5zdGFuY2UuY29uZmlybURlYWN0aXZhdGlvbigpO1xuICAgICAgICB9XG5cbiAgICAgICAgcmV0dXJuIHRydWU7XG4gICAgfVxuXG4gICAgY2FuRGVhY3RpdmF0ZSgpOiBib29sZWFuIHtcbiAgICAgICAgaWYgKGhhc0ltcGxlbWVudGF0aW9uPENhbkRlYWN0aXZhdGVDb21wb25lbnQ+KHRoaXMuY2RrUmVmLmNvbXBvbmVudEluc3RhbmNlLCAnY2FuRGVhY3RpdmF0ZScpKSB7XG4gICAgICAgICAgICByZXR1cm4gdGhpcy5jZGtSZWYuY29tcG9uZW50SW5zdGFuY2UuY2FuRGVhY3RpdmF0ZSgpO1xuICAgICAgICB9XG5cbiAgICAgICAgcmV0dXJuIHRydWU7XG4gICAgfVxufVxuIl19
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
import { DialogModule } from "@angular/cdk/dialog";
|
|
2
|
+
import { NgModule } from "@angular/core";
|
|
3
|
+
import { OverlayModule } from "@angular/cdk/overlay";
|
|
4
|
+
import { PortalModule } from "@angular/cdk/portal";
|
|
5
|
+
import { MzDialog } from "./mz-dialog.service";
|
|
6
|
+
import { DrawerContainerComponent } from "./container/drawer-container.component";
|
|
7
|
+
import * as i0 from "@angular/core";
|
|
8
|
+
export class MzDialogModule {
|
|
9
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.1.1", ngImport: i0, type: MzDialogModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
|
|
10
|
+
static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "18.1.1", ngImport: i0, type: MzDialogModule, imports: [DialogModule, OverlayModule, PortalModule, DrawerContainerComponent], exports: [DialogModule,
|
|
11
|
+
DrawerContainerComponent] }); }
|
|
12
|
+
static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "18.1.1", ngImport: i0, type: MzDialogModule, providers: [MzDialog], imports: [DialogModule, OverlayModule, PortalModule, DialogModule] }); }
|
|
13
|
+
}
|
|
14
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.1.1", ngImport: i0, type: MzDialogModule, decorators: [{
|
|
15
|
+
type: NgModule,
|
|
16
|
+
args: [{
|
|
17
|
+
imports: [DialogModule, OverlayModule, PortalModule, DrawerContainerComponent],
|
|
18
|
+
exports: [
|
|
19
|
+
DialogModule,
|
|
20
|
+
DrawerContainerComponent
|
|
21
|
+
],
|
|
22
|
+
providers: [MzDialog]
|
|
23
|
+
}]
|
|
24
|
+
}] });
|
|
25
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGlhbG9nLm1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NvbXBvbmVudHMvc3JjL2xpYi9kaWFsb2cvZGlhbG9nLm1vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0scUJBQXFCLENBQUM7QUFDbkQsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN6QyxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFDckQsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBQ25ELE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUMvQyxPQUFPLEVBQUUsd0JBQXdCLEVBQUUsTUFBTSx3Q0FBd0MsQ0FBQzs7QUFVbEYsTUFBTSxPQUFPLGNBQWM7OEdBQWQsY0FBYzsrR0FBZCxjQUFjLFlBUGIsWUFBWSxFQUFFLGFBQWEsRUFBRSxZQUFZLEVBQUUsd0JBQXdCLGFBRXpFLFlBQVk7WUFDWix3QkFBd0I7K0dBSW5CLGNBQWMsYUFGWixDQUFDLFFBQVEsQ0FBQyxZQUxYLFlBQVksRUFBRSxhQUFhLEVBQUUsWUFBWSxFQUUvQyxZQUFZOzsyRkFLUCxjQUFjO2tCQVIxQixRQUFRO21CQUFDO29CQUNOLE9BQU8sRUFBRSxDQUFDLFlBQVksRUFBRSxhQUFhLEVBQUUsWUFBWSxFQUFFLHdCQUF3QixDQUFDO29CQUM5RSxPQUFPLEVBQUU7d0JBQ0wsWUFBWTt3QkFDWix3QkFBd0I7cUJBQzNCO29CQUNELFNBQVMsRUFBRSxDQUFDLFFBQVEsQ0FBQztpQkFDeEIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBEaWFsb2dNb2R1bGUgfSBmcm9tIFwiQGFuZ3VsYXIvY2RrL2RpYWxvZ1wiO1xuaW1wb3J0IHsgTmdNb2R1bGUgfSBmcm9tIFwiQGFuZ3VsYXIvY29yZVwiO1xuaW1wb3J0IHsgT3ZlcmxheU1vZHVsZSB9IGZyb20gXCJAYW5ndWxhci9jZGsvb3ZlcmxheVwiO1xuaW1wb3J0IHsgUG9ydGFsTW9kdWxlIH0gZnJvbSBcIkBhbmd1bGFyL2Nkay9wb3J0YWxcIjtcbmltcG9ydCB7IE16RGlhbG9nIH0gZnJvbSBcIi4vbXotZGlhbG9nLnNlcnZpY2VcIjtcbmltcG9ydCB7IERyYXdlckNvbnRhaW5lckNvbXBvbmVudCB9IGZyb20gXCIuL2NvbnRhaW5lci9kcmF3ZXItY29udGFpbmVyLmNvbXBvbmVudFwiO1xuXG5ATmdNb2R1bGUoe1xuICAgIGltcG9ydHM6IFtEaWFsb2dNb2R1bGUsIE92ZXJsYXlNb2R1bGUsIFBvcnRhbE1vZHVsZSwgRHJhd2VyQ29udGFpbmVyQ29tcG9uZW50XSxcbiAgICBleHBvcnRzOiBbXG4gICAgICAgIERpYWxvZ01vZHVsZSxcbiAgICAgICAgRHJhd2VyQ29udGFpbmVyQ29tcG9uZW50XG4gICAgXSxcbiAgICBwcm92aWRlcnM6IFtNekRpYWxvZ11cbn0pXG5leHBvcnQgY2xhc3MgTXpEaWFsb2dNb2R1bGUge30iXX0=
|
|
@@ -0,0 +1,108 @@
|
|
|
1
|
+
import { Dialog, DialogConfig } from '@angular/cdk/dialog';
|
|
2
|
+
import { Overlay } from '@angular/cdk/overlay';
|
|
3
|
+
import { Inject, Injectable, Injector, Optional } from '@angular/core';
|
|
4
|
+
import { take } from 'rxjs';
|
|
5
|
+
import { DEFAULT_MZ_DIALOG_CONFIG, MZ_DIALOG_DATA } from './dialog-injectors';
|
|
6
|
+
import { DrawerContainerComponent } from './container/drawer-container.component';
|
|
7
|
+
import { MzDialogConfig } from './dialog-config';
|
|
8
|
+
import { MzDialogRef } from './dialog-ref';
|
|
9
|
+
import * as i0 from "@angular/core";
|
|
10
|
+
import * as i1 from "@angular/cdk/overlay";
|
|
11
|
+
import * as i2 from "./dialog-config";
|
|
12
|
+
export class MzDialog {
|
|
13
|
+
constructor(injector, overlay, configuredOptions, viewContainerRef) {
|
|
14
|
+
this.injector = injector;
|
|
15
|
+
this.overlay = overlay;
|
|
16
|
+
this.configuredOptions = configuredOptions;
|
|
17
|
+
this.viewContainerRef = viewContainerRef;
|
|
18
|
+
this.openDialogs = [];
|
|
19
|
+
this.cdkDialog = injector.get(Dialog);
|
|
20
|
+
}
|
|
21
|
+
open(componentOrTemplateRef, config) {
|
|
22
|
+
const defaultOptions = new MzDialogConfig();
|
|
23
|
+
const options = { ...(this.configuredOptions || defaultOptions), ...config };
|
|
24
|
+
// compute closeOnNavigation if left undefined. dialogs need to be destroyed either via navigation or component destruction
|
|
25
|
+
if (options.closeOnNavigation === undefined) {
|
|
26
|
+
options.closeOnNavigation = options.viewContainerRef === undefined && (this.viewContainerRef === undefined || this.viewContainerRef === null);
|
|
27
|
+
}
|
|
28
|
+
let dialogRef;
|
|
29
|
+
const cdkRef = this.cdkDialog.open(componentOrTemplateRef, {
|
|
30
|
+
...options,
|
|
31
|
+
injector: options.injector,
|
|
32
|
+
viewContainerRef: options.viewContainerRef || this.viewContainerRef || undefined,
|
|
33
|
+
// Disable closing because we want full control of closing behavior, such as animation and confirmation.
|
|
34
|
+
disableClose: true,
|
|
35
|
+
// Disable closing on destroy, because this service cleans up its open dialogs as well.
|
|
36
|
+
closeOnDestroy: true,
|
|
37
|
+
closeOnOverlayDetachments: false,
|
|
38
|
+
closeOnNavigation: options.closeOnNavigation,
|
|
39
|
+
container: {
|
|
40
|
+
type: options.container || DrawerContainerComponent,
|
|
41
|
+
providers: () => [
|
|
42
|
+
{ provide: MzDialogConfig, useValue: options },
|
|
43
|
+
{ provide: DialogConfig, useValue: options },
|
|
44
|
+
],
|
|
45
|
+
},
|
|
46
|
+
templateContext: () => ({ dialogRef }),
|
|
47
|
+
providers: (ref, cdkConfig, dialogContainer) => {
|
|
48
|
+
dialogRef = new MzDialogRef(ref, options, dialogContainer);
|
|
49
|
+
return [
|
|
50
|
+
{ provide: MZ_DIALOG_DATA, useValue: cdkConfig.data },
|
|
51
|
+
{ provide: MzDialogRef, useValue: dialogRef },
|
|
52
|
+
];
|
|
53
|
+
},
|
|
54
|
+
});
|
|
55
|
+
this.openDialogs.push(dialogRef);
|
|
56
|
+
dialogRef.closed.pipe(take(1)).subscribe(() => {
|
|
57
|
+
const i = this.openDialogs.indexOf(dialogRef);
|
|
58
|
+
this.openDialogs.splice(i, 1);
|
|
59
|
+
});
|
|
60
|
+
if (cdkRef.containerInstance instanceof DrawerContainerComponent) {
|
|
61
|
+
cdkRef.containerInstance.enter();
|
|
62
|
+
cdkRef.containerInstance.associateDialogRef(dialogRef);
|
|
63
|
+
}
|
|
64
|
+
return dialogRef;
|
|
65
|
+
}
|
|
66
|
+
/**
|
|
67
|
+
* Gets an array of currently opened dialogs that were opened with this instance of service.
|
|
68
|
+
*/
|
|
69
|
+
getDialogs() {
|
|
70
|
+
return this.openDialogs;
|
|
71
|
+
}
|
|
72
|
+
confirmDeactivation() {
|
|
73
|
+
// We assume all dialogs belong to the same component tree, so we can just check the first one/last opened
|
|
74
|
+
const i = this.openDialogs.findLastIndex((ref) => !ref.canDeactivate());
|
|
75
|
+
if (i > -1) {
|
|
76
|
+
return this.openDialogs[i].confirmDeactivation();
|
|
77
|
+
}
|
|
78
|
+
return true;
|
|
79
|
+
}
|
|
80
|
+
closeAll() {
|
|
81
|
+
this.closeDialogs(this.openDialogs);
|
|
82
|
+
}
|
|
83
|
+
ngOnDestroy() {
|
|
84
|
+
this.closeDialogs(this.openDialogs);
|
|
85
|
+
}
|
|
86
|
+
closeDialogs(dialogs) {
|
|
87
|
+
let i = dialogs.length;
|
|
88
|
+
while (i--) {
|
|
89
|
+
dialogs[i].close();
|
|
90
|
+
}
|
|
91
|
+
}
|
|
92
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.1.1", ngImport: i0, type: MzDialog, deps: [{ token: i0.Injector }, { token: i1.Overlay }, { token: DEFAULT_MZ_DIALOG_CONFIG, optional: true }, { token: i0.ViewContainerRef, optional: true }], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
93
|
+
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.1.1", ngImport: i0, type: MzDialog, providedIn: 'root' }); }
|
|
94
|
+
}
|
|
95
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.1.1", ngImport: i0, type: MzDialog, decorators: [{
|
|
96
|
+
type: Injectable,
|
|
97
|
+
args: [{
|
|
98
|
+
providedIn: 'root',
|
|
99
|
+
}]
|
|
100
|
+
}], ctorParameters: () => [{ type: i0.Injector }, { type: i1.Overlay }, { type: i2.MzDialogConfig, decorators: [{
|
|
101
|
+
type: Optional
|
|
102
|
+
}, {
|
|
103
|
+
type: Inject,
|
|
104
|
+
args: [DEFAULT_MZ_DIALOG_CONFIG]
|
|
105
|
+
}] }, { type: i0.ViewContainerRef, decorators: [{
|
|
106
|
+
type: Optional
|
|
107
|
+
}] }] });
|
|
108
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibXotZGlhbG9nLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb21wb25lbnRzL3NyYy9saWIvZGlhbG9nL216LWRpYWxvZy5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxNQUFNLEVBQUUsWUFBWSxFQUFFLE1BQU0scUJBQXFCLENBQUM7QUFDM0QsT0FBTyxFQUFpQixPQUFPLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQztBQUM5RCxPQUFPLEVBQUUsTUFBTSxFQUFFLFVBQVUsRUFBRSxRQUFRLEVBQWEsUUFBUSxFQUFpQyxNQUFNLGVBQWUsQ0FBQztBQUNqSCxPQUFPLEVBQUUsSUFBSSxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQzVCLE9BQU8sRUFBRSx3QkFBd0IsRUFBRSxjQUFjLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQztBQUM5RSxPQUFPLEVBQUUsd0JBQXdCLEVBQUUsTUFBTSx3Q0FBd0MsQ0FBQztBQUNsRixPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDakQsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLGNBQWMsQ0FBQzs7OztBQUszQyxNQUFNLE9BQU8sUUFBUTtJQUlqQixZQUFvQixRQUFrQixFQUFVLE9BQWdCLEVBQXdELGlCQUFpQyxFQUFzQixnQkFBMEM7UUFBck0sYUFBUSxHQUFSLFFBQVEsQ0FBVTtRQUFVLFlBQU8sR0FBUCxPQUFPLENBQVM7UUFBd0Qsc0JBQWlCLEdBQWpCLGlCQUFpQixDQUFnQjtRQUFzQixxQkFBZ0IsR0FBaEIsZ0JBQWdCLENBQTBCO1FBRmpOLGdCQUFXLEdBQXVCLEVBQUUsQ0FBQztRQUd6QyxJQUFJLENBQUMsU0FBUyxHQUFHLFFBQVEsQ0FBQyxHQUFHLENBQUMsTUFBTSxDQUFDLENBQUM7SUFDMUMsQ0FBQztJQWlCRCxJQUFJLENBQTRCLHNCQUF5RCxFQUFFLE1BQTBCO1FBRWpILE1BQU0sY0FBYyxHQUFHLElBQUksY0FBYyxFQUFLLENBQUM7UUFDL0MsTUFBTSxPQUFPLEdBQUcsRUFBRSxHQUFHLENBQUMsSUFBSSxDQUFDLGlCQUFpQixJQUFJLGNBQWMsQ0FBQyxFQUFFLEdBQUcsTUFBTSxFQUFFLENBQUM7UUFFN0UsMkhBQTJIO1FBQzNILElBQUksT0FBTyxDQUFDLGlCQUFpQixLQUFLLFNBQVMsRUFBRSxDQUFDO1lBQzFDLE9BQU8sQ0FBQyxpQkFBaUIsR0FBRyxPQUFPLENBQUMsZ0JBQWdCLEtBQUssU0FBUyxJQUFJLENBQUMsSUFBSSxDQUFDLGdCQUFnQixLQUFLLFNBQVMsSUFBSSxJQUFJLENBQUMsZ0JBQWdCLEtBQUssSUFBSSxDQUFDLENBQUM7UUFDbEosQ0FBQztRQUVELElBQUksU0FBNEIsQ0FBQztRQUNqQyxNQUFNLE1BQU0sR0FBRyxJQUFJLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBVSxzQkFBc0IsRUFBRTtZQUNoRSxHQUFHLE9BQU87WUFDVixRQUFRLEVBQUUsT0FBTyxDQUFDLFFBQVE7WUFDMUIsZ0JBQWdCLEVBQUUsT0FBTyxDQUFDLGdCQUFnQixJQUFJLElBQUksQ0FBQyxnQkFBZ0IsSUFBSSxTQUFTO1lBQ2hGLHdHQUF3RztZQUN4RyxZQUFZLEVBQUUsSUFBSTtZQUNsQix1RkFBdUY7WUFDdkYsY0FBYyxFQUFFLElBQUk7WUFDcEIseUJBQXlCLEVBQUUsS0FBSztZQUNoQyxpQkFBaUIsRUFBRSxPQUFPLENBQUMsaUJBQWlCO1lBQzVDLFNBQVMsRUFBRTtnQkFDUCxJQUFJLEVBQUUsT0FBTyxDQUFDLFNBQVMsSUFBSSx3QkFBd0I7Z0JBQ25ELFNBQVMsRUFBRSxHQUFHLEVBQUUsQ0FBQztvQkFDYixFQUFFLE9BQU8sRUFBRSxjQUFjLEVBQUUsUUFBUSxFQUFFLE9BQU8sRUFBRTtvQkFDOUMsRUFBRSxPQUFPLEVBQUUsWUFBWSxFQUFFLFFBQVEsRUFBRSxPQUFPLEVBQUU7aUJBQy9DO2FBQ0o7WUFDRCxlQUFlLEVBQUUsR0FBRyxFQUFFLENBQUMsQ0FBQyxFQUFFLFNBQVMsRUFBRSxDQUFDO1lBQ3RDLFNBQVMsRUFBRSxDQUFDLEdBQUcsRUFBRSxTQUFTLEVBQUUsZUFBZSxFQUFFLEVBQUU7Z0JBQzNDLFNBQVMsR0FBRyxJQUFJLFdBQVcsQ0FBQyxHQUFHLEVBQUUsT0FBTyxFQUFFLGVBQWUsQ0FBQyxDQUFDO2dCQUMzRCxPQUFPO29CQUNILEVBQUUsT0FBTyxFQUFFLGNBQWMsRUFBRSxRQUFRLEVBQUUsU0FBUyxDQUFDLElBQUksRUFBRTtvQkFDckQsRUFBRSxPQUFPLEVBQUUsV0FBVyxFQUFFLFFBQVEsRUFBRSxTQUFTLEVBQUU7aUJBQ2hELENBQUM7WUFDTixDQUFDO1NBQ0osQ0FBQyxDQUFDO1FBQ0gsSUFBSSxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMsU0FBVSxDQUFDLENBQUM7UUFDbEMsU0FBVSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsU0FBUyxDQUFDLEdBQUcsRUFBRTtZQUMzQyxNQUFNLENBQUMsR0FBRyxJQUFJLENBQUMsV0FBVyxDQUFDLE9BQU8sQ0FBQyxTQUFTLENBQUMsQ0FBQztZQUM5QyxJQUFJLENBQUMsV0FBVyxDQUFDLE1BQU0sQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUM7UUFDbEMsQ0FBQyxDQUFDLENBQUM7UUFFSCxJQUFJLE1BQU0sQ0FBQyxpQkFBaUIsWUFBWSx3QkFBd0IsRUFBRSxDQUFDO1lBQy9ELE1BQU0sQ0FBQyxpQkFBaUIsQ0FBQyxLQUFLLEVBQUUsQ0FBQztZQUNqQyxNQUFNLENBQUMsaUJBQWlCLENBQUMsa0JBQWtCLENBQUMsU0FBVSxDQUFDLENBQUM7UUFDNUQsQ0FBQztRQUVELE9BQU8sU0FBVSxDQUFDO0lBQ3RCLENBQUM7SUFFRDs7T0FFRztJQUNILFVBQVU7UUFDTixPQUFPLElBQUksQ0FBQyxXQUFXLENBQUM7SUFDNUIsQ0FBQztJQUVELG1CQUFtQjtRQUNmLDBHQUEwRztRQUMxRyxNQUFNLENBQUMsR0FBRyxJQUFJLENBQUMsV0FBVyxDQUFDLGFBQWEsQ0FBQyxDQUFDLEdBQUcsRUFBRSxFQUFFLENBQUMsQ0FBQyxHQUFHLENBQUMsYUFBYSxFQUFFLENBQUMsQ0FBQztRQUV4RSxJQUFJLENBQUMsR0FBRyxDQUFDLENBQUMsRUFBRSxDQUFDO1lBQ1QsT0FBTyxJQUFJLENBQUMsV0FBVyxDQUFDLENBQUMsQ0FBQyxDQUFDLG1CQUFtQixFQUFFLENBQUM7UUFDckQsQ0FBQztRQUVELE9BQU8sSUFBSSxDQUFDO0lBQ2hCLENBQUM7SUFFRCxRQUFRO1FBQ0osSUFBSSxDQUFDLFlBQVksQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDLENBQUM7SUFDeEMsQ0FBQztJQUVELFdBQVc7UUFDUCxJQUFJLENBQUMsWUFBWSxDQUFDLElBQUksQ0FBQyxXQUFXLENBQUMsQ0FBQztJQUN4QyxDQUFDO0lBRU8sWUFBWSxDQUFDLE9BQTJCO1FBQzVDLElBQUksQ0FBQyxHQUFHLE9BQU8sQ0FBQyxNQUFNLENBQUM7UUFFdkIsT0FBTyxDQUFDLEVBQUUsRUFBRSxDQUFDO1lBQ1QsT0FBTyxDQUFDLENBQUMsQ0FBQyxDQUFDLEtBQUssRUFBRSxDQUFDO1FBQ3ZCLENBQUM7SUFDTCxDQUFDOzhHQTFHUSxRQUFRLGlFQUlxRSx3QkFBd0I7a0hBSnJHLFFBQVEsY0FGTCxNQUFNOzsyRkFFVCxRQUFRO2tCQUhwQixVQUFVO21CQUFDO29CQUNSLFVBQVUsRUFBRSxNQUFNO2lCQUNyQjs7MEJBS3NFLFFBQVE7OzBCQUFJLE1BQU07MkJBQUMsd0JBQXdCOzswQkFBOEMsUUFBUSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IERpYWxvZywgRGlhbG9nQ29uZmlnIH0gZnJvbSAnQGFuZ3VsYXIvY2RrL2RpYWxvZyc7XG5pbXBvcnQgeyBDb21wb25lbnRUeXBlLCBPdmVybGF5IH0gZnJvbSAnQGFuZ3VsYXIvY2RrL292ZXJsYXknO1xuaW1wb3J0IHsgSW5qZWN0LCBJbmplY3RhYmxlLCBJbmplY3RvciwgT25EZXN0cm95LCBPcHRpb25hbCwgVGVtcGxhdGVSZWYsIFZpZXdDb250YWluZXJSZWYgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IHRha2UgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IERFRkFVTFRfTVpfRElBTE9HX0NPTkZJRywgTVpfRElBTE9HX0RBVEEgfSBmcm9tICcuL2RpYWxvZy1pbmplY3RvcnMnO1xuaW1wb3J0IHsgRHJhd2VyQ29udGFpbmVyQ29tcG9uZW50IH0gZnJvbSAnLi9jb250YWluZXIvZHJhd2VyLWNvbnRhaW5lci5jb21wb25lbnQnO1xuaW1wb3J0IHsgTXpEaWFsb2dDb25maWcgfSBmcm9tICcuL2RpYWxvZy1jb25maWcnO1xuaW1wb3J0IHsgTXpEaWFsb2dSZWYgfSBmcm9tICcuL2RpYWxvZy1yZWYnO1xuXG5ASW5qZWN0YWJsZSh7XG4gICAgcHJvdmlkZWRJbjogJ3Jvb3QnLFxufSlcbmV4cG9ydCBjbGFzcyBNekRpYWxvZyBpbXBsZW1lbnRzIE9uRGVzdHJveSB7XG4gICAgcHJpdmF0ZSBjZGtEaWFsb2c6IERpYWxvZztcbiAgICBwcml2YXRlIG9wZW5EaWFsb2dzOiBNekRpYWxvZ1JlZjxhbnk+W10gPSBbXTtcblxuICAgIGNvbnN0cnVjdG9yKHByaXZhdGUgaW5qZWN0b3I6IEluamVjdG9yLCBwcml2YXRlIG92ZXJsYXk6IE92ZXJsYXksIEBPcHRpb25hbCgpIEBJbmplY3QoREVGQVVMVF9NWl9ESUFMT0dfQ09ORklHKSBwcml2YXRlIGNvbmZpZ3VyZWRPcHRpb25zOiBNekRpYWxvZ0NvbmZpZywgQE9wdGlvbmFsKCkgcHJpdmF0ZSB2aWV3Q29udGFpbmVyUmVmPzogVmlld0NvbnRhaW5lclJlZiB8IG51bGwpIHtcbiAgICAgICAgdGhpcy5jZGtEaWFsb2cgPSBpbmplY3Rvci5nZXQoRGlhbG9nKTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBPcGVucyBhIG1vZGFsIGRpYWxvZyBjb250YWluaW5nIHRoZSBnaXZlbiBjb21wb25lbnQuXG4gICAgICogQHBhcmFtIGNvbXBvbmVudCBUeXBlIG9mIHRoZSBjb21wb25lbnQgdG8gbG9hZCBpbnRvIHRoZSBkaWFsb2cuXG4gICAgICogQHBhcmFtIGNvbmZpZyBFeHRyYSBjb25maWd1cmF0aW9uIG9wdGlvbnMuXG4gICAgICogQHJldHVybnMgUmVmZXJlbmNlIHRvIHRoZSBuZXdseS1vcGVuZWQgZGlhbG9nLlxuICAgICAqL1xuICAgIG9wZW48UiA9IGFueSwgRCA9IGFueSwgVCA9IGFueT4oY29tcG9uZW50OiBDb21wb25lbnRUeXBlPFQ+LCBjb25maWc/OiBNekRpYWxvZ0NvbmZpZzxEPik6IE16RGlhbG9nUmVmPFIsIFQ+O1xuICAgIC8qKlxuICAgICAqIE9wZW5zIGEgbW9kYWwgZGlhbG9nIGNvbnRhaW5pbmcgdGhlIGdpdmVuIHRlbXBsYXRlLlxuICAgICAqIEBwYXJhbSB0ZW1wbGF0ZSBUZW1wbGF0ZVJlZiB0byBpbnN0YW50aWF0ZSBhcyB0aGUgZGlhbG9nIGNvbnRlbnQuXG4gICAgICogQHBhcmFtIGNvbmZpZyBFeHRyYSBjb25maWd1cmF0aW9uIG9wdGlvbnMuXG4gICAgICogQHJldHVybnMgUmVmZXJlbmNlIHRvIHRoZSBuZXdseS1vcGVuZWQgZGlhbG9nLlxuICAgICAqL1xuICAgIG9wZW48UiA9IGFueSwgRCA9IGFueSwgVCA9IGFueT4odGVtcGxhdGU6IFRlbXBsYXRlUmVmPFQ+LCBjb25maWc/OiBNekRpYWxvZ0NvbmZpZzxEPik6IE16RGlhbG9nUmVmPFIsIFQ+O1xuICAgIG9wZW48UiA9IGFueSwgRCA9IGFueSwgVCA9IGFueT4oY29tcG9uZW50T3JUZW1wbGF0ZVJlZjogQ29tcG9uZW50VHlwZTxUPiB8IFRlbXBsYXRlUmVmPFQ+LCBjb25maWc/OiBNekRpYWxvZ0NvbmZpZzxEPik6IE16RGlhbG9nUmVmPFIsIFQ+O1xuICAgIG9wZW48UiA9IGFueSwgRCA9IGFueSwgVCA9IGFueT4oY29tcG9uZW50T3JUZW1wbGF0ZVJlZjogQ29tcG9uZW50VHlwZTxUPiB8IFRlbXBsYXRlUmVmPFQ+LCBjb25maWc/OiBNekRpYWxvZ0NvbmZpZzxEPik6IE16RGlhbG9nUmVmPFIsIFQ+IHtcblxuICAgICAgICBjb25zdCBkZWZhdWx0T3B0aW9ucyA9IG5ldyBNekRpYWxvZ0NvbmZpZzxEPigpO1xuICAgICAgICBjb25zdCBvcHRpb25zID0geyAuLi4odGhpcy5jb25maWd1cmVkT3B0aW9ucyB8fCBkZWZhdWx0T3B0aW9ucyksIC4uLmNvbmZpZyB9O1xuXG4gICAgICAgIC8vIGNvbXB1dGUgY2xvc2VPbk5hdmlnYXRpb24gaWYgbGVmdCB1bmRlZmluZWQuIGRpYWxvZ3MgbmVlZCB0byBiZSBkZXN0cm95ZWQgZWl0aGVyIHZpYSBuYXZpZ2F0aW9uIG9yIGNvbXBvbmVudCBkZXN0cnVjdGlvblxuICAgICAgICBpZiAob3B0aW9ucy5jbG9zZU9uTmF2aWdhdGlvbiA9PT0gdW5kZWZpbmVkKSB7XG4gICAgICAgICAgICBvcHRpb25zLmNsb3NlT25OYXZpZ2F0aW9uID0gb3B0aW9ucy52aWV3Q29udGFpbmVyUmVmID09PSB1bmRlZmluZWQgJiYgKHRoaXMudmlld0NvbnRhaW5lclJlZiA9PT0gdW5kZWZpbmVkIHx8IHRoaXMudmlld0NvbnRhaW5lclJlZiA9PT0gbnVsbCk7XG4gICAgICAgIH1cblxuICAgICAgICBsZXQgZGlhbG9nUmVmOiBNekRpYWxvZ1JlZjxSLCBUPjtcbiAgICAgICAgY29uc3QgY2RrUmVmID0gdGhpcy5jZGtEaWFsb2cub3BlbjxSLCBELCBUPihjb21wb25lbnRPclRlbXBsYXRlUmVmLCB7XG4gICAgICAgICAgICAuLi5vcHRpb25zLFxuICAgICAgICAgICAgaW5qZWN0b3I6IG9wdGlvbnMuaW5qZWN0b3IsXG4gICAgICAgICAgICB2aWV3Q29udGFpbmVyUmVmOiBvcHRpb25zLnZpZXdDb250YWluZXJSZWYgfHwgdGhpcy52aWV3Q29udGFpbmVyUmVmIHx8IHVuZGVmaW5lZCxcbiAgICAgICAgICAgIC8vIERpc2FibGUgY2xvc2luZyBiZWNhdXNlIHdlIHdhbnQgZnVsbCBjb250cm9sIG9mIGNsb3NpbmcgYmVoYXZpb3IsIHN1Y2ggYXMgYW5pbWF0aW9uIGFuZCBjb25maXJtYXRpb24uXG4gICAgICAgICAgICBkaXNhYmxlQ2xvc2U6IHRydWUsXG4gICAgICAgICAgICAvLyBEaXNhYmxlIGNsb3Npbmcgb24gZGVzdHJveSwgYmVjYXVzZSB0aGlzIHNlcnZpY2UgY2xlYW5zIHVwIGl0cyBvcGVuIGRpYWxvZ3MgYXMgd2VsbC5cbiAgICAgICAgICAgIGNsb3NlT25EZXN0cm95OiB0cnVlLFxuICAgICAgICAgICAgY2xvc2VPbk92ZXJsYXlEZXRhY2htZW50czogZmFsc2UsXG4gICAgICAgICAgICBjbG9zZU9uTmF2aWdhdGlvbjogb3B0aW9ucy5jbG9zZU9uTmF2aWdhdGlvbixcbiAgICAgICAgICAgIGNvbnRhaW5lcjoge1xuICAgICAgICAgICAgICAgIHR5cGU6IG9wdGlvbnMuY29udGFpbmVyIHx8IERyYXdlckNvbnRhaW5lckNvbXBvbmVudCxcbiAgICAgICAgICAgICAgICBwcm92aWRlcnM6ICgpID0+IFtcbiAgICAgICAgICAgICAgICAgICAgeyBwcm92aWRlOiBNekRpYWxvZ0NvbmZpZywgdXNlVmFsdWU6IG9wdGlvbnMgfSxcbiAgICAgICAgICAgICAgICAgICAgeyBwcm92aWRlOiBEaWFsb2dDb25maWcsIHVzZVZhbHVlOiBvcHRpb25zIH0sXG4gICAgICAgICAgICAgICAgXSxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICB0ZW1wbGF0ZUNvbnRleHQ6ICgpID0+ICh7IGRpYWxvZ1JlZiB9KSxcbiAgICAgICAgICAgIHByb3ZpZGVyczogKHJlZiwgY2RrQ29uZmlnLCBkaWFsb2dDb250YWluZXIpID0+IHtcbiAgICAgICAgICAgICAgICBkaWFsb2dSZWYgPSBuZXcgTXpEaWFsb2dSZWYocmVmLCBvcHRpb25zLCBkaWFsb2dDb250YWluZXIpO1xuICAgICAgICAgICAgICAgIHJldHVybiBbXG4gICAgICAgICAgICAgICAgICAgIHsgcHJvdmlkZTogTVpfRElBTE9HX0RBVEEsIHVzZVZhbHVlOiBjZGtDb25maWcuZGF0YSB9LFxuICAgICAgICAgICAgICAgICAgICB7IHByb3ZpZGU6IE16RGlhbG9nUmVmLCB1c2VWYWx1ZTogZGlhbG9nUmVmIH0sXG4gICAgICAgICAgICAgICAgXTtcbiAgICAgICAgICAgIH0sXG4gICAgICAgIH0pO1xuICAgICAgICB0aGlzLm9wZW5EaWFsb2dzLnB1c2goZGlhbG9nUmVmISk7XG4gICAgICAgIGRpYWxvZ1JlZiEuY2xvc2VkLnBpcGUodGFrZSgxKSkuc3Vic2NyaWJlKCgpID0+IHtcbiAgICAgICAgICAgIGNvbnN0IGkgPSB0aGlzLm9wZW5EaWFsb2dzLmluZGV4T2YoZGlhbG9nUmVmKTtcbiAgICAgICAgICAgIHRoaXMub3BlbkRpYWxvZ3Muc3BsaWNlKGksIDEpO1xuICAgICAgICB9KTtcblxuICAgICAgICBpZiAoY2RrUmVmLmNvbnRhaW5lckluc3RhbmNlIGluc3RhbmNlb2YgRHJhd2VyQ29udGFpbmVyQ29tcG9uZW50KSB7XG4gICAgICAgICAgICBjZGtSZWYuY29udGFpbmVySW5zdGFuY2UuZW50ZXIoKTtcbiAgICAgICAgICAgIGNka1JlZi5jb250YWluZXJJbnN0YW5jZS5hc3NvY2lhdGVEaWFsb2dSZWYoZGlhbG9nUmVmISk7XG4gICAgICAgIH1cblxuICAgICAgICByZXR1cm4gZGlhbG9nUmVmITtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBHZXRzIGFuIGFycmF5IG9mIGN1cnJlbnRseSBvcGVuZWQgZGlhbG9ncyB0aGF0IHdlcmUgb3BlbmVkIHdpdGggdGhpcyBpbnN0YW5jZSBvZiBzZXJ2aWNlLlxuICAgICAqL1xuICAgIGdldERpYWxvZ3MoKTogTXpEaWFsb2dSZWY8YW55PltdIHtcbiAgICAgICAgcmV0dXJuIHRoaXMub3BlbkRpYWxvZ3M7XG4gICAgfVxuXG4gICAgY29uZmlybURlYWN0aXZhdGlvbigpOiBib29sZWFuIHtcbiAgICAgICAgLy8gV2UgYXNzdW1lIGFsbCBkaWFsb2dzIGJlbG9uZyB0byB0aGUgc2FtZSBjb21wb25lbnQgdHJlZSwgc28gd2UgY2FuIGp1c3QgY2hlY2sgdGhlIGZpcnN0IG9uZS9sYXN0IG9wZW5lZFxuICAgICAgICBjb25zdCBpID0gdGhpcy5vcGVuRGlhbG9ncy5maW5kTGFzdEluZGV4KChyZWYpID0+ICFyZWYuY2FuRGVhY3RpdmF0ZSgpKTtcblxuICAgICAgICBpZiAoaSA+IC0xKSB7XG4gICAgICAgICAgICByZXR1cm4gdGhpcy5vcGVuRGlhbG9nc1tpXS5jb25maXJtRGVhY3RpdmF0aW9uKCk7XG4gICAgICAgIH1cblxuICAgICAgICByZXR1cm4gdHJ1ZTtcbiAgICB9XG5cbiAgICBjbG9zZUFsbCgpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5jbG9zZURpYWxvZ3ModGhpcy5vcGVuRGlhbG9ncyk7XG4gICAgfVxuXG4gICAgbmdPbkRlc3Ryb3koKTogdm9pZCB7XG4gICAgICAgIHRoaXMuY2xvc2VEaWFsb2dzKHRoaXMub3BlbkRpYWxvZ3MpO1xuICAgIH1cblxuICAgIHByaXZhdGUgY2xvc2VEaWFsb2dzKGRpYWxvZ3M6IE16RGlhbG9nUmVmPGFueT5bXSkge1xuICAgICAgICBsZXQgaSA9IGRpYWxvZ3MubGVuZ3RoO1xuXG4gICAgICAgIHdoaWxlIChpLS0pIHtcbiAgICAgICAgICAgIGRpYWxvZ3NbaV0uY2xvc2UoKTtcbiAgICAgICAgfVxuICAgIH1cbn0iXX0=
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
import { Directive, Host } from '@angular/core';
|
|
2
|
+
import { MzDropdownComponent } from './dropdown.component';
|
|
3
|
+
import * as i0 from "@angular/core";
|
|
4
|
+
import * as i1 from "./dropdown.component";
|
|
5
|
+
export class MzDropdownItemDirective {
|
|
6
|
+
constructor(dropdown) {
|
|
7
|
+
this.dropdown = dropdown;
|
|
8
|
+
}
|
|
9
|
+
close() {
|
|
10
|
+
this.dropdown.collapse();
|
|
11
|
+
}
|
|
12
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.1.1", ngImport: i0, type: MzDropdownItemDirective, deps: [{ token: i1.MzDropdownComponent, host: true }], target: i0.ɵɵFactoryTarget.Directive }); }
|
|
13
|
+
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "18.1.1", type: MzDropdownItemDirective, isStandalone: true, selector: "[mzDropdownItem]", host: { listeners: { "click": "close()" }, classAttribute: "mz-dropdown-item" }, ngImport: i0 }); }
|
|
14
|
+
}
|
|
15
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.1.1", ngImport: i0, type: MzDropdownItemDirective, decorators: [{
|
|
16
|
+
type: Directive,
|
|
17
|
+
args: [{
|
|
18
|
+
selector: '[mzDropdownItem]',
|
|
19
|
+
standalone: true,
|
|
20
|
+
host: {
|
|
21
|
+
'class': 'mz-dropdown-item',
|
|
22
|
+
'(click)': 'close()'
|
|
23
|
+
}
|
|
24
|
+
}]
|
|
25
|
+
}], ctorParameters: () => [{ type: i1.MzDropdownComponent, decorators: [{
|
|
26
|
+
type: Host
|
|
27
|
+
}] }] });
|
|
28
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZHJvcGRvd24taXRlbS5kaXJlY3RpdmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb21wb25lbnRzL3NyYy9saWIvZHJvcGRvd24vZHJvcGRvd24taXRlbS5kaXJlY3RpdmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxJQUFJLEVBQXFCLE1BQU0sZUFBZSxDQUFDO0FBQ25FLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLHNCQUFzQixDQUFDOzs7QUFVM0QsTUFBTSxPQUFPLHVCQUF1QjtJQUVsQyxZQUE0QixRQUE2QjtRQUE3QixhQUFRLEdBQVIsUUFBUSxDQUFxQjtJQUFJLENBQUM7SUFFOUQsS0FBSztRQUNILElBQUksQ0FBQyxRQUFRLENBQUMsUUFBUSxFQUFFLENBQUM7SUFDM0IsQ0FBQzs4R0FOVSx1QkFBdUI7a0dBQXZCLHVCQUF1Qjs7MkZBQXZCLHVCQUF1QjtrQkFSbkMsU0FBUzttQkFBQztvQkFDVCxRQUFRLEVBQUUsa0JBQWtCO29CQUM1QixVQUFVLEVBQUUsSUFBSTtvQkFDaEIsSUFBSSxFQUFFO3dCQUNKLE9BQU8sRUFBRSxrQkFBa0I7d0JBQzNCLFNBQVMsRUFBRSxTQUFTO3FCQUNyQjtpQkFDRjs7MEJBR2MsSUFBSSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IERpcmVjdGl2ZSwgSG9zdCwgT25Jbml0LCBSZW5kZXJlcjIgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IE16RHJvcGRvd25Db21wb25lbnQgfSBmcm9tICcuL2Ryb3Bkb3duLmNvbXBvbmVudCc7XG5cbkBEaXJlY3RpdmUoe1xuICBzZWxlY3RvcjogJ1ttekRyb3Bkb3duSXRlbV0nLFxuICBzdGFuZGFsb25lOiB0cnVlLFxuICBob3N0OiB7XG4gICAgJ2NsYXNzJzogJ216LWRyb3Bkb3duLWl0ZW0nLFxuICAgICcoY2xpY2spJzogJ2Nsb3NlKCknXG4gIH1cbn0pXG5leHBvcnQgY2xhc3MgTXpEcm9wZG93bkl0ZW1EaXJlY3RpdmV7XG5cbiAgY29uc3RydWN0b3IoQEhvc3QoKSBwcml2YXRlIGRyb3Bkb3duOiBNekRyb3Bkb3duQ29tcG9uZW50KSB7IH1cblxuICBjbG9zZSgpIHtcbiAgICB0aGlzLmRyb3Bkb3duLmNvbGxhcHNlKCk7XG4gIH1cbn1cbiJdfQ==
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
import { CdkTrapFocus } from '@angular/cdk/a11y';
|
|
2
|
+
import { CdkConnectedOverlay, CdkOverlayOrigin } from '@angular/cdk/overlay';
|
|
3
|
+
import { Component, Input, ViewEncapsulation } from '@angular/core';
|
|
4
|
+
import * as i0 from "@angular/core";
|
|
5
|
+
export class MzDropdownComponent {
|
|
6
|
+
constructor() {
|
|
7
|
+
this.label = '';
|
|
8
|
+
this.open = false;
|
|
9
|
+
}
|
|
10
|
+
toggle() {
|
|
11
|
+
this.open = !this.open;
|
|
12
|
+
}
|
|
13
|
+
collapse() {
|
|
14
|
+
this.open = false;
|
|
15
|
+
}
|
|
16
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.1.1", ngImport: i0, type: MzDropdownComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
17
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.1.1", type: MzDropdownComponent, isStandalone: true, selector: "mz-dropdown", inputs: { label: "label", open: "open" }, ngImport: i0, template: "<button cdkOverlayOrigin #trigger=\"cdkOverlayOrigin\" (click)=\"toggle()\" class=\"button button-secondary\" [class.active]=\"open\">\n {{ label }}\n\n <svg xmlns=\"http://www.w3.org/2000/svg\" fill=\"none\" viewBox=\"0 0 24 24\" stroke=\"currentColor\" stroke-width=\"2\" class=\"mz-dropdown-icon\">\n <path stroke-linecap=\"round\" stroke-linejoin=\"round\" d=\"M19 9l-7 7-7-7\" />\n </svg>\n</button>\n<ng-template \n cdkConnectedOverlay [cdkConnectedOverlayOrigin]=\"trigger\" [cdkConnectedOverlayOpen]=\"open\" (overlayOutsideClick)=\"collapse()\" (detach)=\"collapse()\">\n <div cdkTrapFocus [cdkTrapFocusAutoCapture]=\"true\" class=\"mz-dropdown-body\">\n <ng-content></ng-content>\n </div>\n</ng-template>", styles: [".mz-dropdown-icon{height:1.5rem;width:1.5rem;display:inline-block;padding-left:.5rem}.mz-dropdown-body{background-color:var(--surface-bg);min-width:5rem;margin-top:.25rem;padding:.75rem;border-radius:var(--surface-border-radius);--tw-shadow: 0 1px 3px 0 rgb(0 0 0 / .1), 0 1px 2px -1px rgb(0 0 0 / .1) !important;--tw-shadow-colored: 0 1px 3px 0 var(--tw-shadow-color), 0 1px 2px -1px var(--tw-shadow-color) !important;box-shadow:var(--tw-ring-offset-shadow, 0 0 rgba(0, 0, 0, 0)),var(--tw-ring-shadow, 0 0 rgba(0, 0, 0, 0)),var(--tw-shadow)!important}.mz-dropdown-item{display:block;width:100%;padding:.5rem;font-size:.875rem;line-height:1.25rem;text-align:left;border-radius:var(--button-border-radius)}.mz-dropdown-item:hover{background-color:var(--color-neutral-200)}\n"], dependencies: [{ kind: "directive", type: CdkOverlayOrigin, selector: "[cdk-overlay-origin], [overlay-origin], [cdkOverlayOrigin]", exportAs: ["cdkOverlayOrigin"] }, { kind: "directive", type: CdkConnectedOverlay, selector: "[cdk-connected-overlay], [connected-overlay], [cdkConnectedOverlay]", inputs: ["cdkConnectedOverlayOrigin", "cdkConnectedOverlayPositions", "cdkConnectedOverlayPositionStrategy", "cdkConnectedOverlayOffsetX", "cdkConnectedOverlayOffsetY", "cdkConnectedOverlayWidth", "cdkConnectedOverlayHeight", "cdkConnectedOverlayMinWidth", "cdkConnectedOverlayMinHeight", "cdkConnectedOverlayBackdropClass", "cdkConnectedOverlayPanelClass", "cdkConnectedOverlayViewportMargin", "cdkConnectedOverlayScrollStrategy", "cdkConnectedOverlayOpen", "cdkConnectedOverlayDisableClose", "cdkConnectedOverlayTransformOriginOn", "cdkConnectedOverlayHasBackdrop", "cdkConnectedOverlayLockPosition", "cdkConnectedOverlayFlexibleDimensions", "cdkConnectedOverlayGrowAfterOpen", "cdkConnectedOverlayPush", "cdkConnectedOverlayDisposeOnNavigation"], outputs: ["backdropClick", "positionChange", "attach", "detach", "overlayKeydown", "overlayOutsideClick"], exportAs: ["cdkConnectedOverlay"] }, { kind: "directive", type: CdkTrapFocus, selector: "[cdkTrapFocus]", inputs: ["cdkTrapFocus", "cdkTrapFocusAutoCapture"], exportAs: ["cdkTrapFocus"] }], encapsulation: i0.ViewEncapsulation.None }); }
|
|
18
|
+
}
|
|
19
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.1.1", ngImport: i0, type: MzDropdownComponent, decorators: [{
|
|
20
|
+
type: Component,
|
|
21
|
+
args: [{ selector: 'mz-dropdown', standalone: true, imports: [CdkOverlayOrigin, CdkConnectedOverlay, CdkTrapFocus], encapsulation: ViewEncapsulation.None, template: "<button cdkOverlayOrigin #trigger=\"cdkOverlayOrigin\" (click)=\"toggle()\" class=\"button button-secondary\" [class.active]=\"open\">\n {{ label }}\n\n <svg xmlns=\"http://www.w3.org/2000/svg\" fill=\"none\" viewBox=\"0 0 24 24\" stroke=\"currentColor\" stroke-width=\"2\" class=\"mz-dropdown-icon\">\n <path stroke-linecap=\"round\" stroke-linejoin=\"round\" d=\"M19 9l-7 7-7-7\" />\n </svg>\n</button>\n<ng-template \n cdkConnectedOverlay [cdkConnectedOverlayOrigin]=\"trigger\" [cdkConnectedOverlayOpen]=\"open\" (overlayOutsideClick)=\"collapse()\" (detach)=\"collapse()\">\n <div cdkTrapFocus [cdkTrapFocusAutoCapture]=\"true\" class=\"mz-dropdown-body\">\n <ng-content></ng-content>\n </div>\n</ng-template>", styles: [".mz-dropdown-icon{height:1.5rem;width:1.5rem;display:inline-block;padding-left:.5rem}.mz-dropdown-body{background-color:var(--surface-bg);min-width:5rem;margin-top:.25rem;padding:.75rem;border-radius:var(--surface-border-radius);--tw-shadow: 0 1px 3px 0 rgb(0 0 0 / .1), 0 1px 2px -1px rgb(0 0 0 / .1) !important;--tw-shadow-colored: 0 1px 3px 0 var(--tw-shadow-color), 0 1px 2px -1px var(--tw-shadow-color) !important;box-shadow:var(--tw-ring-offset-shadow, 0 0 rgba(0, 0, 0, 0)),var(--tw-ring-shadow, 0 0 rgba(0, 0, 0, 0)),var(--tw-shadow)!important}.mz-dropdown-item{display:block;width:100%;padding:.5rem;font-size:.875rem;line-height:1.25rem;text-align:left;border-radius:var(--button-border-radius)}.mz-dropdown-item:hover{background-color:var(--color-neutral-200)}\n"] }]
|
|
22
|
+
}], propDecorators: { label: [{
|
|
23
|
+
type: Input
|
|
24
|
+
}], open: [{
|
|
25
|
+
type: Input
|
|
26
|
+
}] } });
|
|
27
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZHJvcGRvd24uY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY29tcG9uZW50cy9zcmMvbGliL2Ryb3Bkb3duL2Ryb3Bkb3duLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NvbXBvbmVudHMvc3JjL2xpYi9kcm9wZG93bi9kcm9wZG93bi5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sbUJBQW1CLENBQUM7QUFDakQsT0FBTyxFQUFFLG1CQUFtQixFQUFFLGdCQUFnQixFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFDN0UsT0FBTyxFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxlQUFlLENBQUM7O0FBVXBFLE1BQU0sT0FBTyxtQkFBbUI7SUFSaEM7UUFTYSxVQUFLLEdBQVcsRUFBRSxDQUFDO1FBQ25CLFNBQUksR0FBRyxLQUFLLENBQUM7S0FTekI7SUFQRyxNQUFNO1FBQ0osSUFBSSxDQUFDLElBQUksR0FBRyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUM7SUFDekIsQ0FBQztJQUVELFFBQVE7UUFDSixJQUFJLENBQUMsSUFBSSxHQUFHLEtBQUssQ0FBQztJQUN0QixDQUFDOzhHQVZRLG1CQUFtQjtrR0FBbkIsbUJBQW1CLGlIQ1poQyw0dUJBWWMsK3pCRExBLGdCQUFnQix1SUFBRSxtQkFBbUIsNCtCQUFFLFlBQVk7OzJGQUtwRCxtQkFBbUI7a0JBUi9CLFNBQVM7K0JBQ0ksYUFBYSxjQUNYLElBQUksV0FDUCxDQUFDLGdCQUFnQixFQUFFLG1CQUFtQixFQUFFLFlBQVksQ0FBQyxpQkFHL0MsaUJBQWlCLENBQUMsSUFBSTs4QkFHNUIsS0FBSztzQkFBYixLQUFLO2dCQUNHLElBQUk7c0JBQVosS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENka1RyYXBGb2N1cyB9IGZyb20gJ0Bhbmd1bGFyL2Nkay9hMTF5JztcbmltcG9ydCB7IENka0Nvbm5lY3RlZE92ZXJsYXksIENka092ZXJsYXlPcmlnaW4gfSBmcm9tICdAYW5ndWxhci9jZGsvb3ZlcmxheSc7XG5pbXBvcnQgeyBDb21wb25lbnQsIElucHV0LCBWaWV3RW5jYXBzdWxhdGlvbiB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5AQ29tcG9uZW50KHtcbiAgICBzZWxlY3RvcjogJ216LWRyb3Bkb3duJyxcbiAgICBzdGFuZGFsb25lOiB0cnVlLFxuICAgIGltcG9ydHM6IFtDZGtPdmVybGF5T3JpZ2luLCBDZGtDb25uZWN0ZWRPdmVybGF5LCBDZGtUcmFwRm9jdXNdLFxuICAgIHRlbXBsYXRlVXJsOiAnLi9kcm9wZG93bi5jb21wb25lbnQuaHRtbCcsXG4gICAgc3R5bGVVcmw6ICcuL2Ryb3Bkb3duLmNvbXBvbmVudC5zY3NzJyxcbiAgICBlbmNhcHN1bGF0aW9uOiBWaWV3RW5jYXBzdWxhdGlvbi5Ob25lLFxufSlcbmV4cG9ydCBjbGFzcyBNekRyb3Bkb3duQ29tcG9uZW50IHtcbiAgICBASW5wdXQoKSBsYWJlbDogc3RyaW5nID0gJyc7XG4gICAgQElucHV0KCkgb3BlbiA9IGZhbHNlO1xuXG4gICAgdG9nZ2xlKCkge1xuICAgICAgdGhpcy5vcGVuID0gIXRoaXMub3BlbjtcbiAgICB9XG5cbiAgICBjb2xsYXBzZSgpIHtcbiAgICAgICAgdGhpcy5vcGVuID0gZmFsc2U7XG4gICAgfVxufVxuIiwiPGJ1dHRvbiBjZGtPdmVybGF5T3JpZ2luICN0cmlnZ2VyPVwiY2RrT3ZlcmxheU9yaWdpblwiIChjbGljayk9XCJ0b2dnbGUoKVwiIGNsYXNzPVwiYnV0dG9uIGJ1dHRvbi1zZWNvbmRhcnlcIiBbY2xhc3MuYWN0aXZlXT1cIm9wZW5cIj5cbiAgICB7eyBsYWJlbCB9fVxuXG4gICAgPHN2ZyB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCIgZmlsbD1cIm5vbmVcIiB2aWV3Qm94PVwiMCAwIDI0IDI0XCIgc3Ryb2tlPVwiY3VycmVudENvbG9yXCIgc3Ryb2tlLXdpZHRoPVwiMlwiIGNsYXNzPVwibXotZHJvcGRvd24taWNvblwiPlxuICAgICAgICA8cGF0aCBzdHJva2UtbGluZWNhcD1cInJvdW5kXCIgc3Ryb2tlLWxpbmVqb2luPVwicm91bmRcIiBkPVwiTTE5IDlsLTcgNy03LTdcIiAvPlxuICAgIDwvc3ZnPlxuPC9idXR0b24+XG48bmctdGVtcGxhdGUgXG4gICAgY2RrQ29ubmVjdGVkT3ZlcmxheSBbY2RrQ29ubmVjdGVkT3ZlcmxheU9yaWdpbl09XCJ0cmlnZ2VyXCIgW2Nka0Nvbm5lY3RlZE92ZXJsYXlPcGVuXT1cIm9wZW5cIiAob3ZlcmxheU91dHNpZGVDbGljayk9XCJjb2xsYXBzZSgpXCIgKGRldGFjaCk9XCJjb2xsYXBzZSgpXCI+XG4gICAgPGRpdiBjZGtUcmFwRm9jdXMgW2Nka1RyYXBGb2N1c0F1dG9DYXB0dXJlXT1cInRydWVcIiBjbGFzcz1cIm16LWRyb3Bkb3duLWJvZHlcIj5cbiAgICAgICAgPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PlxuICAgIDwvZGl2PlxuPC9uZy10ZW1wbGF0ZT4iXX0=
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import { NgModule } from "@angular/core";
|
|
2
|
+
import { MzDropdownComponent } from "./dropdown.component";
|
|
3
|
+
import { MzDropdownItemDirective } from "./dropdown-item.directive";
|
|
4
|
+
import * as i0 from "@angular/core";
|
|
5
|
+
export class MzDropdownModule {
|
|
6
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.1.1", ngImport: i0, type: MzDropdownModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
|
|
7
|
+
static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "18.1.1", ngImport: i0, type: MzDropdownModule, imports: [MzDropdownComponent, MzDropdownItemDirective], exports: [MzDropdownComponent, MzDropdownItemDirective] }); }
|
|
8
|
+
static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "18.1.1", ngImport: i0, type: MzDropdownModule }); }
|
|
9
|
+
}
|
|
10
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.1.1", ngImport: i0, type: MzDropdownModule, decorators: [{
|
|
11
|
+
type: NgModule,
|
|
12
|
+
args: [{
|
|
13
|
+
imports: [MzDropdownComponent, MzDropdownItemDirective],
|
|
14
|
+
exports: [MzDropdownComponent, MzDropdownItemDirective]
|
|
15
|
+
}]
|
|
16
|
+
}] });
|
|
17
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZHJvcGRvd24ubW9kdWxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY29tcG9uZW50cy9zcmMvbGliL2Ryb3Bkb3duL2Ryb3Bkb3duLm1vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3pDLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBQzNELE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxNQUFNLDJCQUEyQixDQUFDOztBQU1wRSxNQUFNLE9BQU8sZ0JBQWdCOzhHQUFoQixnQkFBZ0I7K0dBQWhCLGdCQUFnQixZQUhmLG1CQUFtQixFQUFFLHVCQUF1QixhQUM1QyxtQkFBbUIsRUFBRSx1QkFBdUI7K0dBRTdDLGdCQUFnQjs7MkZBQWhCLGdCQUFnQjtrQkFKNUIsUUFBUTttQkFBQztvQkFDTixPQUFPLEVBQUUsQ0FBQyxtQkFBbUIsRUFBRSx1QkFBdUIsQ0FBQztvQkFDdkQsT0FBTyxFQUFFLENBQUMsbUJBQW1CLEVBQUUsdUJBQXVCLENBQUM7aUJBQzFEIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgTmdNb2R1bGUgfSBmcm9tIFwiQGFuZ3VsYXIvY29yZVwiO1xuaW1wb3J0IHsgTXpEcm9wZG93bkNvbXBvbmVudCB9IGZyb20gXCIuL2Ryb3Bkb3duLmNvbXBvbmVudFwiO1xuaW1wb3J0IHsgTXpEcm9wZG93bkl0ZW1EaXJlY3RpdmUgfSBmcm9tIFwiLi9kcm9wZG93bi1pdGVtLmRpcmVjdGl2ZVwiO1xuXG5ATmdNb2R1bGUoe1xuICAgIGltcG9ydHM6IFtNekRyb3Bkb3duQ29tcG9uZW50LCBNekRyb3Bkb3duSXRlbURpcmVjdGl2ZV0sXG4gICAgZXhwb3J0czogW016RHJvcGRvd25Db21wb25lbnQsIE16RHJvcGRvd25JdGVtRGlyZWN0aXZlXVxufSlcbmV4cG9ydCBjbGFzcyBNekRyb3Bkb3duTW9kdWxlIHt9Il19
|
|
@@ -0,0 +1,48 @@
|
|
|
1
|
+
import { Pipe } from '@angular/core';
|
|
2
|
+
import * as i0 from "@angular/core";
|
|
3
|
+
export class EnumDisplayPipe {
|
|
4
|
+
transform(value) {
|
|
5
|
+
return this.transformValue(value).join(' ');
|
|
6
|
+
}
|
|
7
|
+
transformValue(value) {
|
|
8
|
+
if (!value) {
|
|
9
|
+
return [];
|
|
10
|
+
}
|
|
11
|
+
let wordIndex = 0;
|
|
12
|
+
const words = [];
|
|
13
|
+
for (let i = 0; i < value.length; i++) {
|
|
14
|
+
if (value[i] !== value[i].toLowerCase() && i !== 0) {
|
|
15
|
+
// includes the index -1
|
|
16
|
+
// for example helloGoodbye => .substring(0, 5) => hello
|
|
17
|
+
// and the index is reset to 5 (G)
|
|
18
|
+
const word = value.substring(wordIndex, i);
|
|
19
|
+
words.push(words.length === 0 ? this.firstLetterToUppercase(word) : word.toLowerCase());
|
|
20
|
+
wordIndex = i;
|
|
21
|
+
}
|
|
22
|
+
}
|
|
23
|
+
if (wordIndex !== value.length) {
|
|
24
|
+
// continuing the example, we take it from the last index matched
|
|
25
|
+
// (meaning the rest of the word that wasn't considered because no uppercase
|
|
26
|
+
// values existed at the end of the sentence after the last index matched)
|
|
27
|
+
// so it is converterd like this: helloGoodbye => .sustring(5) => goodbye
|
|
28
|
+
const remainingString = value.substring(wordIndex);
|
|
29
|
+
words.push(words.length === 0 ? this.firstLetterToUppercase(remainingString) : remainingString.toLowerCase());
|
|
30
|
+
}
|
|
31
|
+
return words;
|
|
32
|
+
}
|
|
33
|
+
// at this point we assume the string is at least > 0 length
|
|
34
|
+
// just a converter method from: hello to Hello
|
|
35
|
+
firstLetterToUppercase(value) {
|
|
36
|
+
return value.length > 1 ? `${value.substring(0, 1).toUpperCase()}${value.substring(1)}` : value.toUpperCase();
|
|
37
|
+
}
|
|
38
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.1.1", ngImport: i0, type: EnumDisplayPipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe }); }
|
|
39
|
+
static { this.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "18.1.1", ngImport: i0, type: EnumDisplayPipe, isStandalone: true, name: "mzEnumDisplay" }); }
|
|
40
|
+
}
|
|
41
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.1.1", ngImport: i0, type: EnumDisplayPipe, decorators: [{
|
|
42
|
+
type: Pipe,
|
|
43
|
+
args: [{
|
|
44
|
+
name: 'mzEnumDisplay',
|
|
45
|
+
standalone: true,
|
|
46
|
+
}]
|
|
47
|
+
}] });
|
|
48
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZW51bS1kaXNwbGF5LnBpcGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb21wb25lbnRzL3NyYy9saWIvZW51bS1kaXNwbGF5L2VudW0tZGlzcGxheS5waXBlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxJQUFJLEVBQWlCLE1BQU0sZUFBZSxDQUFDOztBQU1wRCxNQUFNLE9BQU8sZUFBZTtJQUd4QixTQUFTLENBQUMsS0FBYztRQUNwQixPQUFPLElBQUksQ0FBQyxjQUFjLENBQUMsS0FBSyxDQUFDLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDO0lBQ2hELENBQUM7SUFFTyxjQUFjLENBQUMsS0FBYztRQUNqQyxJQUFJLENBQUMsS0FBSyxFQUFFLENBQUM7WUFDVCxPQUFPLEVBQUUsQ0FBQztRQUNkLENBQUM7UUFFRCxJQUFJLFNBQVMsR0FBRyxDQUFDLENBQUM7UUFDbEIsTUFBTSxLQUFLLEdBQWEsRUFBRSxDQUFDO1FBQzNCLEtBQUssSUFBSSxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsR0FBRyxLQUFLLENBQUMsTUFBTSxFQUFFLENBQUMsRUFBRSxFQUFFLENBQUM7WUFDcEMsSUFBSSxLQUFLLENBQUMsQ0FBQyxDQUFDLEtBQUssS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDLFdBQVcsRUFBRSxJQUFJLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQztnQkFDakQsd0JBQXdCO2dCQUN4Qix3REFBd0Q7Z0JBQ3hELGtDQUFrQztnQkFDbEMsTUFBTSxJQUFJLEdBQUcsS0FBSyxDQUFDLFNBQVMsQ0FBQyxTQUFTLEVBQUUsQ0FBQyxDQUFDLENBQUM7Z0JBQzNDLEtBQUssQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLE1BQU0sS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxzQkFBc0IsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLFdBQVcsRUFBRSxDQUFDLENBQUM7Z0JBQ3hGLFNBQVMsR0FBRyxDQUFDLENBQUM7WUFDbEIsQ0FBQztRQUNMLENBQUM7UUFDRCxJQUFJLFNBQVMsS0FBSyxLQUFLLENBQUMsTUFBTSxFQUFFLENBQUM7WUFDN0IsaUVBQWlFO1lBQ2pFLDRFQUE0RTtZQUM1RSwwRUFBMEU7WUFDMUUseUVBQXlFO1lBQ3pFLE1BQU0sZUFBZSxHQUFHLEtBQUssQ0FBQyxTQUFTLENBQUMsU0FBUyxDQUFDLENBQUM7WUFDbkQsS0FBSyxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsTUFBTSxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLHNCQUFzQixDQUFDLGVBQWUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxlQUFlLENBQUMsV0FBVyxFQUFFLENBQUMsQ0FBQztRQUNsSCxDQUFDO1FBQ0QsT0FBTyxLQUFLLENBQUM7SUFDakIsQ0FBQztJQUVELDREQUE0RDtJQUM1RCwrQ0FBK0M7SUFDdkMsc0JBQXNCLENBQUMsS0FBYTtRQUN4QyxPQUFPLEtBQUssQ0FBQyxNQUFNLEdBQUcsQ0FBQyxDQUFDLENBQUMsQ0FBQyxHQUFHLEtBQUssQ0FBQyxTQUFTLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLFdBQVcsRUFBRSxHQUFHLEtBQUssQ0FBQyxTQUFTLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsS0FBSyxDQUFDLFdBQVcsRUFBRSxDQUFDO0lBQ2xILENBQUM7OEdBdkNRLGVBQWU7NEdBQWYsZUFBZTs7MkZBQWYsZUFBZTtrQkFKM0IsSUFBSTttQkFBQztvQkFDRixJQUFJLEVBQUUsZUFBZTtvQkFDckIsVUFBVSxFQUFFLElBQUk7aUJBQ25CIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgUGlwZSwgUGlwZVRyYW5zZm9ybSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5AUGlwZSh7XG4gICAgbmFtZTogJ216RW51bURpc3BsYXknLFxuICAgIHN0YW5kYWxvbmU6IHRydWUsXG59KVxuZXhwb3J0IGNsYXNzIEVudW1EaXNwbGF5UGlwZSBpbXBsZW1lbnRzIFBpcGVUcmFuc2Zvcm0ge1xuXG4gICAgXG4gICAgdHJhbnNmb3JtKHZhbHVlPzogc3RyaW5nKTogc3RyaW5nIHtcbiAgICAgICAgcmV0dXJuIHRoaXMudHJhbnNmb3JtVmFsdWUodmFsdWUpLmpvaW4oJyAnKTtcbiAgICB9XG5cbiAgICBwcml2YXRlIHRyYW5zZm9ybVZhbHVlKHZhbHVlPzogc3RyaW5nKTogc3RyaW5nW10ge1xuICAgICAgICBpZiAoIXZhbHVlKSB7XG4gICAgICAgICAgICByZXR1cm4gW107XG4gICAgICAgIH1cblxuICAgICAgICBsZXQgd29yZEluZGV4ID0gMDtcbiAgICAgICAgY29uc3Qgd29yZHM6IHN0cmluZ1tdID0gW107XG4gICAgICAgIGZvciAobGV0IGkgPSAwOyBpIDwgdmFsdWUubGVuZ3RoOyBpKyspIHtcbiAgICAgICAgICAgIGlmICh2YWx1ZVtpXSAhPT0gdmFsdWVbaV0udG9Mb3dlckNhc2UoKSAmJiBpICE9PSAwKSB7XG4gICAgICAgICAgICAgICAgLy8gaW5jbHVkZXMgdGhlIGluZGV4IC0xXG4gICAgICAgICAgICAgICAgLy8gZm9yIGV4YW1wbGUgaGVsbG9Hb29kYnllID0+IC5zdWJzdHJpbmcoMCwgNSkgPT4gaGVsbG9cbiAgICAgICAgICAgICAgICAvLyBhbmQgdGhlIGluZGV4IGlzIHJlc2V0IHRvIDUgKEcpXG4gICAgICAgICAgICAgICAgY29uc3Qgd29yZCA9IHZhbHVlLnN1YnN0cmluZyh3b3JkSW5kZXgsIGkpO1xuICAgICAgICAgICAgICAgIHdvcmRzLnB1c2god29yZHMubGVuZ3RoID09PSAwID8gdGhpcy5maXJzdExldHRlclRvVXBwZXJjYXNlKHdvcmQpIDogd29yZC50b0xvd2VyQ2FzZSgpKTtcbiAgICAgICAgICAgICAgICB3b3JkSW5kZXggPSBpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIGlmICh3b3JkSW5kZXggIT09IHZhbHVlLmxlbmd0aCkge1xuICAgICAgICAgICAgLy8gY29udGludWluZyB0aGUgZXhhbXBsZSwgd2UgdGFrZSBpdCBmcm9tIHRoZSBsYXN0IGluZGV4IG1hdGNoZWRcbiAgICAgICAgICAgIC8vIChtZWFuaW5nIHRoZSByZXN0IG9mIHRoZSB3b3JkIHRoYXQgd2Fzbid0IGNvbnNpZGVyZWQgYmVjYXVzZSBubyB1cHBlcmNhc2VcbiAgICAgICAgICAgIC8vIHZhbHVlcyBleGlzdGVkIGF0IHRoZSBlbmQgb2YgdGhlIHNlbnRlbmNlIGFmdGVyIHRoZSBsYXN0IGluZGV4IG1hdGNoZWQpXG4gICAgICAgICAgICAvLyBzbyBpdCBpcyBjb252ZXJ0ZXJkIGxpa2UgdGhpczogaGVsbG9Hb29kYnllID0+IC5zdXN0cmluZyg1KSA9PiBnb29kYnllXG4gICAgICAgICAgICBjb25zdCByZW1haW5pbmdTdHJpbmcgPSB2YWx1ZS5zdWJzdHJpbmcod29yZEluZGV4KTtcbiAgICAgICAgICAgIHdvcmRzLnB1c2god29yZHMubGVuZ3RoID09PSAwID8gdGhpcy5maXJzdExldHRlclRvVXBwZXJjYXNlKHJlbWFpbmluZ1N0cmluZykgOiByZW1haW5pbmdTdHJpbmcudG9Mb3dlckNhc2UoKSk7XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIHdvcmRzO1xuICAgIH1cblxuICAgIC8vIGF0IHRoaXMgcG9pbnQgd2UgYXNzdW1lIHRoZSBzdHJpbmcgaXMgYXQgbGVhc3QgPiAwIGxlbmd0aFxuICAgIC8vIGp1c3QgYSBjb252ZXJ0ZXIgbWV0aG9kIGZyb206IGhlbGxvIHRvIEhlbGxvXG4gICAgcHJpdmF0ZSBmaXJzdExldHRlclRvVXBwZXJjYXNlKHZhbHVlOiBzdHJpbmcpOiBzdHJpbmcge1xuICAgICAgICByZXR1cm4gdmFsdWUubGVuZ3RoID4gMSA/IGAke3ZhbHVlLnN1YnN0cmluZygwLCAxKS50b1VwcGVyQ2FzZSgpfSR7dmFsdWUuc3Vic3RyaW5nKDEpfWAgOiB2YWx1ZS50b1VwcGVyQ2FzZSgpO1xuICAgIH1cbn1cbiJdfQ==
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
export {};
|
|
2
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmlsdGVyLW9wdGlvbi5tb2RlbC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NvbXBvbmVudHMvc3JjL2xpYi9maWx0ZXIvZmlsdGVyLW9wdGlvbi5tb2RlbC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IGludGVyZmFjZSBGaWx0ZXJPcHRpb25Nb2RlbDxUPiB7XG4gICAgbGFiZWw6IHN0cmluZztcbiAgICBzZWxlY3RlZDogYm9vbGVhbjtcbiAgICB2YWx1ZTogVDtcbn0iXX0=
|
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
import { CdkConnectedOverlay, CdkOverlayOrigin } from '@angular/cdk/overlay';
|
|
2
|
+
import { CommonModule } from '@angular/common';
|
|
3
|
+
import { Component, ContentChild, Input } from '@angular/core';
|
|
4
|
+
import { FormsModule, NgForm } from '@angular/forms';
|
|
5
|
+
import * as i0 from "@angular/core";
|
|
6
|
+
export class FilterComponent {
|
|
7
|
+
constructor() {
|
|
8
|
+
this.label = 'Filter';
|
|
9
|
+
this.open = false;
|
|
10
|
+
}
|
|
11
|
+
ngAfterContentInit() {
|
|
12
|
+
this.initialValues = this.menuForm.value;
|
|
13
|
+
}
|
|
14
|
+
toggleOverlay() {
|
|
15
|
+
this.open = !this.open;
|
|
16
|
+
}
|
|
17
|
+
dismiss() {
|
|
18
|
+
this.open = false;
|
|
19
|
+
if (this.menuForm.options.updateOn === 'submit') {
|
|
20
|
+
this.menuForm.resetForm(this.initialValues);
|
|
21
|
+
}
|
|
22
|
+
}
|
|
23
|
+
clear() {
|
|
24
|
+
this.open = false;
|
|
25
|
+
}
|
|
26
|
+
apply() {
|
|
27
|
+
this.open = false;
|
|
28
|
+
console.log('applied', this.menuForm.value);
|
|
29
|
+
}
|
|
30
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.1.1", ngImport: i0, type: FilterComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
31
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.1.1", type: FilterComponent, isStandalone: true, selector: "mz-filter", inputs: { label: "label" }, queries: [{ propertyName: "menuForm", first: true, predicate: NgForm, descendants: true }], ngImport: i0, template: "<button cdkOverlayOrigin #trigger=\"cdkOverlayOrigin\" (click)=\"toggleOverlay()\" class=\"button button-secondary\" [class.active]=\"open\">\n {{ label }}\n <span class=\"dropdown-icon\">\n <svg xmlns=\"http://www.w3.org/2000/svg\" fill=\"none\" viewBox=\"0 0 24 24\" stroke=\"currentColor\" stroke-width=\"2\" class=\"dropdown-icon\">\n <path stroke-linecap=\"round\" stroke-linejoin=\"round\" d=\"M19 9l-7 7-7-7\" />\n </svg>\n </span>\n</button>\n<ng-template \n cdkConnectedOverlay [cdkConnectedOverlayOrigin]=\"trigger\" [cdkConnectedOverlayOpen]=\"open\" [cdkConnectedOverlayPanelClass]=\"'dropdown-body'\" (overlayOutsideClick)=\"dismiss()\">\n <div>\n <ng-content></ng-content>\n\n <div class=\"dropdown-buttons\">\n @if(menuForm.options.updateOn === 'submit') {\n <button type=\"button\" class=\"button button-primary\" (click)=\"apply()\">Apply</button>\n }\n <button type=\"button\" class=\"button button-tertiary\" (click)=\"clear()\">Clear</button>\n </div>\n </div>\n</ng-template>\n", styles: [".dropdown-body{background-color:var(--surface-bg, white);min-width:5rem;margin-top:.25rem;padding:.75rem}.dropdown-buttons{display:flex;margin-top:.25rem}.dropdown-icon{height:1.5rem;width:1.5rem;display:inline-block}\n"], dependencies: [{ kind: "directive", type: CdkOverlayOrigin, selector: "[cdk-overlay-origin], [overlay-origin], [cdkOverlayOrigin]", exportAs: ["cdkOverlayOrigin"] }, { kind: "directive", type: CdkConnectedOverlay, selector: "[cdk-connected-overlay], [connected-overlay], [cdkConnectedOverlay]", inputs: ["cdkConnectedOverlayOrigin", "cdkConnectedOverlayPositions", "cdkConnectedOverlayPositionStrategy", "cdkConnectedOverlayOffsetX", "cdkConnectedOverlayOffsetY", "cdkConnectedOverlayWidth", "cdkConnectedOverlayHeight", "cdkConnectedOverlayMinWidth", "cdkConnectedOverlayMinHeight", "cdkConnectedOverlayBackdropClass", "cdkConnectedOverlayPanelClass", "cdkConnectedOverlayViewportMargin", "cdkConnectedOverlayScrollStrategy", "cdkConnectedOverlayOpen", "cdkConnectedOverlayDisableClose", "cdkConnectedOverlayTransformOriginOn", "cdkConnectedOverlayHasBackdrop", "cdkConnectedOverlayLockPosition", "cdkConnectedOverlayFlexibleDimensions", "cdkConnectedOverlayGrowAfterOpen", "cdkConnectedOverlayPush", "cdkConnectedOverlayDisposeOnNavigation"], outputs: ["backdropClick", "positionChange", "attach", "detach", "overlayKeydown", "overlayOutsideClick"], exportAs: ["cdkConnectedOverlay"] }, { kind: "ngmodule", type: FormsModule }, { kind: "ngmodule", type: CommonModule }] }); }
|
|
32
|
+
}
|
|
33
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.1.1", ngImport: i0, type: FilterComponent, decorators: [{
|
|
34
|
+
type: Component,
|
|
35
|
+
args: [{ selector: 'mz-filter', standalone: true, imports: [CdkOverlayOrigin, CdkConnectedOverlay, FormsModule, CommonModule], template: "<button cdkOverlayOrigin #trigger=\"cdkOverlayOrigin\" (click)=\"toggleOverlay()\" class=\"button button-secondary\" [class.active]=\"open\">\n {{ label }}\n <span class=\"dropdown-icon\">\n <svg xmlns=\"http://www.w3.org/2000/svg\" fill=\"none\" viewBox=\"0 0 24 24\" stroke=\"currentColor\" stroke-width=\"2\" class=\"dropdown-icon\">\n <path stroke-linecap=\"round\" stroke-linejoin=\"round\" d=\"M19 9l-7 7-7-7\" />\n </svg>\n </span>\n</button>\n<ng-template \n cdkConnectedOverlay [cdkConnectedOverlayOrigin]=\"trigger\" [cdkConnectedOverlayOpen]=\"open\" [cdkConnectedOverlayPanelClass]=\"'dropdown-body'\" (overlayOutsideClick)=\"dismiss()\">\n <div>\n <ng-content></ng-content>\n\n <div class=\"dropdown-buttons\">\n @if(menuForm.options.updateOn === 'submit') {\n <button type=\"button\" class=\"button button-primary\" (click)=\"apply()\">Apply</button>\n }\n <button type=\"button\" class=\"button button-tertiary\" (click)=\"clear()\">Clear</button>\n </div>\n </div>\n</ng-template>\n", styles: [".dropdown-body{background-color:var(--surface-bg, white);min-width:5rem;margin-top:.25rem;padding:.75rem}.dropdown-buttons{display:flex;margin-top:.25rem}.dropdown-icon{height:1.5rem;width:1.5rem;display:inline-block}\n"] }]
|
|
36
|
+
}], propDecorators: { label: [{
|
|
37
|
+
type: Input
|
|
38
|
+
}], menuForm: [{
|
|
39
|
+
type: ContentChild,
|
|
40
|
+
args: [NgForm]
|
|
41
|
+
}] } });
|
|
42
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmlsdGVyLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NvbXBvbmVudHMvc3JjL2xpYi9maWx0ZXIvZmlsdGVyLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NvbXBvbmVudHMvc3JjL2xpYi9maWx0ZXIvZmlsdGVyLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBQzdFLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMvQyxPQUFPLEVBQW9CLFNBQVMsRUFBRSxZQUFZLEVBQUUsS0FBSyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ2pGLE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7O0FBU3JELE1BQU0sT0FBTyxlQUFlO0lBUDVCO1FBUWEsVUFBSyxHQUFHLFFBQVEsQ0FBQztRQUVoQixTQUFJLEdBQUcsS0FBSyxDQUFDO0tBMEIxQjtJQXZCRyxrQkFBa0I7UUFDaEIsSUFBSSxDQUFDLGFBQWEsR0FBRyxJQUFJLENBQUMsUUFBUSxDQUFDLEtBQUssQ0FBQztJQUMzQyxDQUFDO0lBRUQsYUFBYTtRQUNULElBQUksQ0FBQyxJQUFJLEdBQUcsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDO0lBQzNCLENBQUM7SUFFRCxPQUFPO1FBQ0gsSUFBSSxDQUFDLElBQUksR0FBRyxLQUFLLENBQUM7UUFDbEIsSUFBRyxJQUFJLENBQUMsUUFBUSxDQUFDLE9BQU8sQ0FBQyxRQUFRLEtBQUssUUFBUSxFQUFFLENBQUM7WUFDL0MsSUFBSSxDQUFDLFFBQVEsQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLGFBQWEsQ0FBQyxDQUFDO1FBQzlDLENBQUM7SUFDTCxDQUFDO0lBRUQsS0FBSztRQUNILElBQUksQ0FBQyxJQUFJLEdBQUcsS0FBSyxDQUFDO0lBQ3BCLENBQUM7SUFFRCxLQUFLO1FBQ0gsSUFBSSxDQUFDLElBQUksR0FBRyxLQUFLLENBQUM7UUFDbEIsT0FBTyxDQUFDLEdBQUcsQ0FBQyxTQUFTLEVBQUUsSUFBSSxDQUFDLFFBQVEsQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUM5QyxDQUFDOzhHQTVCUSxlQUFlO2tHQUFmLGVBQWUsdUlBRVYsTUFBTSxnRENkeEIsd2xDQXFCQSxxUkRiYyxnQkFBZ0IsdUlBQUUsbUJBQW1CLDIrQkFBRSxXQUFXLDhCQUFFLFlBQVk7OzJGQUlqRSxlQUFlO2tCQVAzQixTQUFTOytCQUNJLFdBQVcsY0FDVCxJQUFJLFdBQ1AsQ0FBQyxnQkFBZ0IsRUFBRSxtQkFBbUIsRUFBRSxXQUFXLEVBQUUsWUFBWSxDQUFDOzhCQUtsRSxLQUFLO3NCQUFiLEtBQUs7Z0JBQ2dCLFFBQVE7c0JBQTdCLFlBQVk7dUJBQUMsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENka0Nvbm5lY3RlZE92ZXJsYXksIENka092ZXJsYXlPcmlnaW4gfSBmcm9tICdAYW5ndWxhci9jZGsvb3ZlcmxheSc7XG5pbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHsgQWZ0ZXJDb250ZW50SW5pdCwgQ29tcG9uZW50LCBDb250ZW50Q2hpbGQsIElucHV0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBGb3Jtc01vZHVsZSwgTmdGb3JtIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuXG5AQ29tcG9uZW50KHtcbiAgICBzZWxlY3RvcjogJ216LWZpbHRlcicsXG4gICAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgICBpbXBvcnRzOiBbQ2RrT3ZlcmxheU9yaWdpbiwgQ2RrQ29ubmVjdGVkT3ZlcmxheSwgRm9ybXNNb2R1bGUsIENvbW1vbk1vZHVsZV0sXG4gICAgdGVtcGxhdGVVcmw6ICcuL2ZpbHRlci5jb21wb25lbnQuaHRtbCcsXG4gICAgc3R5bGVVcmw6ICcuL2ZpbHRlci5jb21wb25lbnQuc2NzcycsXG59KVxuZXhwb3J0IGNsYXNzIEZpbHRlckNvbXBvbmVudCBpbXBsZW1lbnRzIEFmdGVyQ29udGVudEluaXQge1xuICAgIEBJbnB1dCgpIGxhYmVsID0gJ0ZpbHRlcic7XG4gICAgQENvbnRlbnRDaGlsZChOZ0Zvcm0pIG1lbnVGb3JtITogTmdGb3JtO1xuICAgIHByb3RlY3RlZCBvcGVuID0gZmFsc2U7XG4gICAgcHJpdmF0ZSBpbml0aWFsVmFsdWVzOiBhbnk7XG5cbiAgICBuZ0FmdGVyQ29udGVudEluaXQoKTogdm9pZCB7XG4gICAgICB0aGlzLmluaXRpYWxWYWx1ZXMgPSB0aGlzLm1lbnVGb3JtLnZhbHVlO1xuICAgIH1cblxuICAgIHRvZ2dsZU92ZXJsYXkoKSB7XG4gICAgICAgIHRoaXMub3BlbiA9ICF0aGlzLm9wZW47XG4gICAgfVxuXG4gICAgZGlzbWlzcygpIHtcbiAgICAgICAgdGhpcy5vcGVuID0gZmFsc2U7XG4gICAgICAgIGlmKHRoaXMubWVudUZvcm0ub3B0aW9ucy51cGRhdGVPbiA9PT0gJ3N1Ym1pdCcpIHtcbiAgICAgICAgICB0aGlzLm1lbnVGb3JtLnJlc2V0Rm9ybSh0aGlzLmluaXRpYWxWYWx1ZXMpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgY2xlYXIoKSB7XG4gICAgICB0aGlzLm9wZW4gPSBmYWxzZTtcbiAgICB9XG5cbiAgICBhcHBseSgpIHtcbiAgICAgIHRoaXMub3BlbiA9IGZhbHNlO1xuICAgICAgY29uc29sZS5sb2coJ2FwcGxpZWQnLCB0aGlzLm1lbnVGb3JtLnZhbHVlKTtcbiAgICB9XG59XG4iLCI8YnV0dG9uIGNka092ZXJsYXlPcmlnaW4gI3RyaWdnZXI9XCJjZGtPdmVybGF5T3JpZ2luXCIgKGNsaWNrKT1cInRvZ2dsZU92ZXJsYXkoKVwiIGNsYXNzPVwiYnV0dG9uIGJ1dHRvbi1zZWNvbmRhcnlcIiBbY2xhc3MuYWN0aXZlXT1cIm9wZW5cIj5cbiAgICB7eyBsYWJlbCB9fVxuICAgIDxzcGFuIGNsYXNzPVwiZHJvcGRvd24taWNvblwiPlxuICAgICAgICA8c3ZnIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIiBmaWxsPVwibm9uZVwiIHZpZXdCb3g9XCIwIDAgMjQgMjRcIiBzdHJva2U9XCJjdXJyZW50Q29sb3JcIiBzdHJva2Utd2lkdGg9XCIyXCIgY2xhc3M9XCJkcm9wZG93bi1pY29uXCI+XG4gICAgICAgICAgICA8cGF0aCBzdHJva2UtbGluZWNhcD1cInJvdW5kXCIgc3Ryb2tlLWxpbmVqb2luPVwicm91bmRcIiBkPVwiTTE5IDlsLTcgNy03LTdcIiAvPlxuICAgICAgICA8L3N2Zz5cbiAgICA8L3NwYW4+XG48L2J1dHRvbj5cbjxuZy10ZW1wbGF0ZSBcbiAgICBjZGtDb25uZWN0ZWRPdmVybGF5IFtjZGtDb25uZWN0ZWRPdmVybGF5T3JpZ2luXT1cInRyaWdnZXJcIiBbY2RrQ29ubmVjdGVkT3ZlcmxheU9wZW5dPVwib3BlblwiIFtjZGtDb25uZWN0ZWRPdmVybGF5UGFuZWxDbGFzc109XCInZHJvcGRvd24tYm9keSdcIiAob3ZlcmxheU91dHNpZGVDbGljayk9XCJkaXNtaXNzKClcIj5cbiAgICA8ZGl2PlxuICAgICAgICA8bmctY29udGVudD48L25nLWNvbnRlbnQ+XG5cbiAgICAgICAgPGRpdiBjbGFzcz1cImRyb3Bkb3duLWJ1dHRvbnNcIj5cbiAgICAgICAgICAgIEBpZihtZW51Rm9ybS5vcHRpb25zLnVwZGF0ZU9uID09PSAnc3VibWl0Jykge1xuICAgICAgICAgICAgICAgIDxidXR0b24gdHlwZT1cImJ1dHRvblwiIGNsYXNzPVwiYnV0dG9uIGJ1dHRvbi1wcmltYXJ5XCIgKGNsaWNrKT1cImFwcGx5KClcIj5BcHBseTwvYnV0dG9uPlxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgPGJ1dHRvbiB0eXBlPVwiYnV0dG9uXCIgY2xhc3M9XCJidXR0b24gYnV0dG9uLXRlcnRpYXJ5XCIgKGNsaWNrKT1cImNsZWFyKClcIj5DbGVhcjwvYnV0dG9uPlxuICAgICAgICA8L2Rpdj5cbiAgICA8L2Rpdj5cbjwvbmctdGVtcGxhdGU+XG4iXX0=
|