diff --git a/dist/material-dual-listbox/README.md b/dist/material-dual-listbox/README.md index 9656037..b96fc8a 100644 --- a/dist/material-dual-listbox/README.md +++ b/dist/material-dual-listbox/README.md @@ -1,9 +1,12 @@ ![Build](https://github.com/rockaru/material-dual-listbox/workflows/Build/badge.svg) +![Demo](https://github.com/rockaru/material-dual-listbox/workflows/Demo/badge.svg) # MeaMaterialDualListbox Simple dual list box component to use with your Angular app, along with Angular Material. +[Demo](https://rockaru.github.io/material-dual-listbox/) + ## Dependencies You will need: @@ -58,7 +61,6 @@ Once the library is imported, you can use the component in your Angular applicat - **source** - The source array of objects - **destination** - The destination array of objects - **(destinationChange)** - An event triggered when the destination array changes. -- **key** - The unique identifier field of each object in the source and destination arrays, default is `_id`. - **display** - The field of each object in the source and destination arrays, default is `name`. - **width** - The width of the component, default is `360px` - **filter** - A boolean whether or not to display a filter for the lists, default is `true`. diff --git a/dist/material-dual-listbox/__ivy_ngcc__/fesm2015/material-dual-listbox.js b/dist/material-dual-listbox/__ivy_ngcc__/fesm2015/material-dual-listbox.js deleted file mode 100644 index d5e62f2..0000000 --- a/dist/material-dual-listbox/__ivy_ngcc__/fesm2015/material-dual-listbox.js +++ /dev/null @@ -1,346 +0,0 @@ -import { EventEmitter, Component, Input, Output, NgModule } from '@angular/core'; -import { moveItemInArray, transferArrayItem, DragDropModule } from '@angular/cdk/drag-drop'; -import { BrowserModule } from '@angular/platform-browser'; -import { MatInputModule } from '@angular/material/input'; -import { MatIconModule } from '@angular/material/icon'; -import { MatListModule } from '@angular/material/list'; -import { FormsModule } from '@angular/forms'; -import { MatFormFieldModule } from '@angular/material/form-field'; - -import * as ɵngcc0 from '@angular/core'; -import * as ɵngcc1 from '@angular/common'; -import * as ɵngcc2 from '@angular/cdk/drag-drop'; -import * as ɵngcc3 from '@angular/material/form-field'; -import * as ɵngcc4 from '@angular/material/input'; -import * as ɵngcc5 from '@angular/forms'; -import * as ɵngcc6 from '@angular/material/icon'; -import * as ɵngcc7 from '@angular/material/list'; - -function MaterialDualListboxComponent_h3_3_Template(rf, ctx) { if (rf & 1) { - ɵngcc0.ɵɵelementStart(0, "h3", 7); - ɵngcc0.ɵɵtext(1); - ɵngcc0.ɵɵelementEnd(); -} if (rf & 2) { - const ctx_r0 = ɵngcc0.ɵɵnextContext(); - ɵngcc0.ɵɵadvance(1); - ɵngcc0.ɵɵtextInterpolate(ctx_r0.itemsTitle); -} } -function MaterialDualListboxComponent_mat_form_field_4_Template(rf, ctx) { if (rf & 1) { - const _r7 = ɵngcc0.ɵɵgetCurrentView(); - ɵngcc0.ɵɵelementStart(0, "mat-form-field", 8); - ɵngcc0.ɵɵelementStart(1, "mat-label"); - ɵngcc0.ɵɵtext(2); - ɵngcc0.ɵɵelementEnd(); - ɵngcc0.ɵɵelementStart(3, "input", 9); - ɵngcc0.ɵɵlistener("ngModelChange", function MaterialDualListboxComponent_mat_form_field_4_Template_input_ngModelChange_3_listener($event) { ɵngcc0.ɵɵrestoreView(_r7); const ctx_r6 = ɵngcc0.ɵɵnextContext(); return ctx_r6.filterItems($event); }); - ɵngcc0.ɵɵelementEnd(); - ɵngcc0.ɵɵelementStart(4, "mat-placeholder"); - ɵngcc0.ɵɵtext(5); - ɵngcc0.ɵɵelementEnd(); - ɵngcc0.ɵɵelementEnd(); -} if (rf & 2) { - const ctx_r1 = ɵngcc0.ɵɵnextContext(); - ɵngcc0.ɵɵadvance(2); - ɵngcc0.ɵɵtextInterpolate2("", ctx_r1.searchPlaceholder, " ", ctx_r1.itemsTitle, ""); - ɵngcc0.ɵɵadvance(1); - ɵngcc0.ɵɵproperty("ngModel", ctx_r1.filterText); - ɵngcc0.ɵɵadvance(2); - ɵngcc0.ɵɵtextInterpolate2("", ctx_r1.searchPlaceholder, " ", ctx_r1.itemsTitle, ""); -} } -function MaterialDualListboxComponent_div_6_mat_icon_1_Template(rf, ctx) { if (rf & 1) { - ɵngcc0.ɵɵelementStart(0, "mat-icon", 12); - ɵngcc0.ɵɵtext(1); - ɵngcc0.ɵɵelementEnd(); -} if (rf & 2) { - const ctx_r9 = ɵngcc0.ɵɵnextContext(2); - ɵngcc0.ɵɵstyleProp("color", ctx_r9.addIconColor); - ɵngcc0.ɵɵadvance(1); - ɵngcc0.ɵɵtextInterpolate(ctx_r9.addIcon); -} } -function MaterialDualListboxComponent_div_6_Template(rf, ctx) { if (rf & 1) { - const _r11 = ɵngcc0.ɵɵgetCurrentView(); - ɵngcc0.ɵɵelementStart(0, "div", 10); - ɵngcc0.ɵɵlistener("click", function MaterialDualListboxComponent_div_6_Template_div_click_0_listener($event) { ɵngcc0.ɵɵrestoreView(_r11); const ctx_r10 = ɵngcc0.ɵɵnextContext(); return ctx_r10.clickedItem($event.target.innerText, "confirmedFiltered", "availableFiltered"); }); - ɵngcc0.ɵɵtemplate(1, MaterialDualListboxComponent_div_6_mat_icon_1_Template, 2, 3, "mat-icon", 11); - ɵngcc0.ɵɵtext(2); - ɵngcc0.ɵɵelementEnd(); -} if (rf & 2) { - const item_r8 = ctx.$implicit; - const ctx_r2 = ɵngcc0.ɵɵnextContext(); - ɵngcc0.ɵɵadvance(1); - ɵngcc0.ɵɵproperty("ngIf", ctx_r2.showIcons); - ɵngcc0.ɵɵadvance(1); - ɵngcc0.ɵɵtextInterpolate1(" ", item_r8[ctx_r2.display], ""); -} } -function MaterialDualListboxComponent_h3_8_Template(rf, ctx) { if (rf & 1) { - ɵngcc0.ɵɵelementStart(0, "h3", 7); - ɵngcc0.ɵɵtext(1); - ɵngcc0.ɵɵelementEnd(); -} if (rf & 2) { - const ctx_r3 = ɵngcc0.ɵɵnextContext(); - ɵngcc0.ɵɵadvance(1); - ɵngcc0.ɵɵtextInterpolate(ctx_r3.selectedItemsTitle); -} } -function MaterialDualListboxComponent_mat_form_field_9_Template(rf, ctx) { if (rf & 1) { - const _r13 = ɵngcc0.ɵɵgetCurrentView(); - ɵngcc0.ɵɵelementStart(0, "mat-form-field", 8); - ɵngcc0.ɵɵelementStart(1, "mat-label"); - ɵngcc0.ɵɵtext(2); - ɵngcc0.ɵɵelementEnd(); - ɵngcc0.ɵɵelementStart(3, "input", 9); - ɵngcc0.ɵɵlistener("ngModelChange", function MaterialDualListboxComponent_mat_form_field_9_Template_input_ngModelChange_3_listener($event) { ɵngcc0.ɵɵrestoreView(_r13); const ctx_r12 = ɵngcc0.ɵɵnextContext(); return ctx_r12.filterSelectedItems($event); }); - ɵngcc0.ɵɵelementEnd(); - ɵngcc0.ɵɵelementStart(4, "mat-placeholder"); - ɵngcc0.ɵɵtext(5); - ɵngcc0.ɵɵelementEnd(); - ɵngcc0.ɵɵelementEnd(); -} if (rf & 2) { - const ctx_r4 = ɵngcc0.ɵɵnextContext(); - ɵngcc0.ɵɵadvance(2); - ɵngcc0.ɵɵtextInterpolate2("", ctx_r4.searchPlaceholder, " ", ctx_r4.selectedItemsTitle, ""); - ɵngcc0.ɵɵadvance(1); - ɵngcc0.ɵɵproperty("ngModel", ctx_r4.filterSelectedText); - ɵngcc0.ɵɵadvance(2); - ɵngcc0.ɵɵtextInterpolate2("", ctx_r4.searchPlaceholder, " ", ctx_r4.itemsTitle, ""); -} } -function MaterialDualListboxComponent_div_11_mat_icon_1_Template(rf, ctx) { if (rf & 1) { - ɵngcc0.ɵɵelementStart(0, "mat-icon", 12); - ɵngcc0.ɵɵtext(1); - ɵngcc0.ɵɵelementEnd(); -} if (rf & 2) { - const ctx_r15 = ɵngcc0.ɵɵnextContext(2); - ɵngcc0.ɵɵstyleProp("color", ctx_r15.removeIconColor); - ɵngcc0.ɵɵadvance(1); - ɵngcc0.ɵɵtextInterpolate(ctx_r15.removeIcon); -} } -function MaterialDualListboxComponent_div_11_Template(rf, ctx) { if (rf & 1) { - const _r17 = ɵngcc0.ɵɵgetCurrentView(); - ɵngcc0.ɵɵelementStart(0, "div", 10); - ɵngcc0.ɵɵlistener("click", function MaterialDualListboxComponent_div_11_Template_div_click_0_listener($event) { ɵngcc0.ɵɵrestoreView(_r17); const ctx_r16 = ɵngcc0.ɵɵnextContext(); return ctx_r16.clickedItem($event.target.innerText, "availableFiltered", "confirmedFiltered"); }); - ɵngcc0.ɵɵtemplate(1, MaterialDualListboxComponent_div_11_mat_icon_1_Template, 2, 3, "mat-icon", 11); - ɵngcc0.ɵɵtext(2); - ɵngcc0.ɵɵelementEnd(); -} if (rf & 2) { - const item_r14 = ctx.$implicit; - const ctx_r5 = ɵngcc0.ɵɵnextContext(); - ɵngcc0.ɵɵadvance(1); - ɵngcc0.ɵɵproperty("ngIf", ctx_r5.showIcons); - ɵngcc0.ɵɵadvance(1); - ɵngcc0.ɵɵtextInterpolate1(" ", item_r14[ctx_r5.display], ""); -} } -const _c0 = function (a1, a2) { return { "max-height": "100%", "max-width": a1, "min-width": a2 }; }; -class MaterialDualListboxComponent { - constructor() { - this.key = '_id'; - this.display = 'name'; - this.width = '360px'; - this.filter = true; - this.searchPlaceholder = 'Filter'; - this.itemsTitle = 'Items'; - this.selectedItemsTitle = 'Selected Items'; - this.header = false; - this.showIcons = true; - this.addIcon = 'add'; - this.addIconColor = 'black'; - this.removeIcon = 'delete'; - this.removeIconColor = 'black'; - this.source = []; - this.destination = []; - this.destinationChange = new EventEmitter(); - this.availableFiltered = []; - this.confirmedFiltered = []; - this.filterText = null; - this.filterSelectedText = null; - } - ngOnInit() { - this.update(); - } - update() { - this.filterItems(this.filterText); - this.filterSelectedItems(this.filterSelectedText); - } - drop(event) { - if (event.previousContainer === event.container) { - moveItemInArray(event.container.data, event.previousIndex, event.currentIndex); - console.log(event); - } - else { - transferArrayItem(event.previousContainer.data, event.container.data, event.previousIndex, event.currentIndex); - this.destination = this.confirmedFiltered; - this.destinationChange.emit(this.destination); - } - } - clickedItem(item, ...targets) { - this[targets[0]] = [ - ...this[targets[1]].splice(this[targets[1]].indexOf(item), 1), - ...this[targets[0]] - ]; - this.destination = this.confirmedFiltered; - this.destinationChange.emit(this.destination); - } - filterItems(text) { - this.filterText = text; - if (!text) { - this.availableFiltered = this.source; - return; - } - this.availableFiltered = this.source - .filter(item => item[this.display].toLowerCase().includes(text.toLowerCase())); - } - filterSelectedItems(text) { - this.filterSelectedText = text; - if (!text) { - this.confirmedFiltered = this.destination; - return; - } - this.confirmedFiltered = this.destination.filter(item => item[this.display].toLowerCase().includes(text.toLowerCase())); - } -} -MaterialDualListboxComponent.ɵfac = function MaterialDualListboxComponent_Factory(t) { return new (t || MaterialDualListboxComponent)(); }; -MaterialDualListboxComponent.ɵcmp = ɵngcc0.ɵɵdefineComponent({ type: MaterialDualListboxComponent, selectors: [["material-dual-listbox"]], inputs: { key: "key", display: "display", width: "width", filter: "filter", searchPlaceholder: "searchPlaceholder", itemsTitle: "itemsTitle", selectedItemsTitle: "selectedItemsTitle", header: "header", showIcons: "showIcons", addIcon: "addIcon", addIconColor: "addIconColor", removeIcon: "removeIcon", removeIconColor: "removeIconColor", source: "source", destination: "destination" }, outputs: { destinationChange: "destinationChange" }, decls: 12, vars: 12, consts: [[3, "ngStyle"], ["cdkDropListGroup", "", 1, "rck-list-container"], [1, "rck-container"], ["class", "rck-title", 4, "ngIf"], ["appearance", "standard", 4, "ngIf"], ["cdkDropList", "", 1, "rck-list", 3, "cdkDropListData", "cdkDropListDropped"], ["class", "rck-box", "cdkDrag", "", 3, "click", 4, "ngFor", "ngForOf"], [1, "rck-title"], ["appearance", "standard"], ["matInput", "", "autocomplete", "off", 3, "ngModel", "ngModelChange"], ["cdkDrag", "", 1, "rck-box", 3, "click"], ["fxHide.xs", "", "mat-list-icon", "", 3, "color", 4, "ngIf"], ["fxHide.xs", "", "mat-list-icon", ""]], template: function MaterialDualListboxComponent_Template(rf, ctx) { if (rf & 1) { - ɵngcc0.ɵɵelementStart(0, "div", 0); - ɵngcc0.ɵɵelementStart(1, "div", 1); - ɵngcc0.ɵɵelementStart(2, "div", 2); - ɵngcc0.ɵɵtemplate(3, MaterialDualListboxComponent_h3_3_Template, 2, 1, "h3", 3); - ɵngcc0.ɵɵtemplate(4, MaterialDualListboxComponent_mat_form_field_4_Template, 6, 5, "mat-form-field", 4); - ɵngcc0.ɵɵelementStart(5, "div", 5); - ɵngcc0.ɵɵlistener("cdkDropListDropped", function MaterialDualListboxComponent_Template_div_cdkDropListDropped_5_listener($event) { return ctx.drop($event); }); - ɵngcc0.ɵɵtemplate(6, MaterialDualListboxComponent_div_6_Template, 3, 2, "div", 6); - ɵngcc0.ɵɵelementEnd(); - ɵngcc0.ɵɵelementEnd(); - ɵngcc0.ɵɵelementStart(7, "div", 2); - ɵngcc0.ɵɵtemplate(8, MaterialDualListboxComponent_h3_8_Template, 2, 1, "h3", 3); - ɵngcc0.ɵɵtemplate(9, MaterialDualListboxComponent_mat_form_field_9_Template, 6, 5, "mat-form-field", 4); - ɵngcc0.ɵɵelementStart(10, "div", 5); - ɵngcc0.ɵɵlistener("cdkDropListDropped", function MaterialDualListboxComponent_Template_div_cdkDropListDropped_10_listener($event) { return ctx.drop($event); }); - ɵngcc0.ɵɵtemplate(11, MaterialDualListboxComponent_div_11_Template, 3, 2, "div", 6); - ɵngcc0.ɵɵelementEnd(); - ɵngcc0.ɵɵelementEnd(); - ɵngcc0.ɵɵelementEnd(); - ɵngcc0.ɵɵelementEnd(); - } if (rf & 2) { - ɵngcc0.ɵɵproperty("ngStyle", ɵngcc0.ɵɵpureFunction2(9, _c0, ctx.width, ctx.width)); - ɵngcc0.ɵɵadvance(3); - ɵngcc0.ɵɵproperty("ngIf", ctx.header); - ɵngcc0.ɵɵadvance(1); - ɵngcc0.ɵɵproperty("ngIf", ctx.filter); - ɵngcc0.ɵɵadvance(1); - ɵngcc0.ɵɵproperty("cdkDropListData", ctx.availableFiltered); - ɵngcc0.ɵɵadvance(1); - ɵngcc0.ɵɵproperty("ngForOf", ctx.availableFiltered); - ɵngcc0.ɵɵadvance(2); - ɵngcc0.ɵɵproperty("ngIf", ctx.header); - ɵngcc0.ɵɵadvance(1); - ɵngcc0.ɵɵproperty("ngIf", ctx.filter); - ɵngcc0.ɵɵadvance(1); - ɵngcc0.ɵɵproperty("cdkDropListData", ctx.confirmedFiltered); - ɵngcc0.ɵɵadvance(1); - ɵngcc0.ɵɵproperty("ngForOf", ctx.confirmedFiltered); - } }, directives: [ɵngcc1.NgStyle, ɵngcc2.CdkDropListGroup, ɵngcc1.NgIf, ɵngcc2.CdkDropList, ɵngcc1.NgForOf, ɵngcc3.MatFormField, ɵngcc3.MatLabel, ɵngcc4.MatInput, ɵngcc5.DefaultValueAccessor, ɵngcc5.NgControlStatus, ɵngcc5.NgModel, ɵngcc3.MatPlaceholder, ɵngcc2.CdkDrag, ɵngcc6.MatIcon, ɵngcc7.MatListIconCssMatStyler], styles: ["./material-dual-listbox.component.scss", ".rck-title[_ngcontent-%COMP%]{\n margin-bottom: 0px;\n }\n .rck-list-container[_ngcontent-%COMP%]{\n display: flex;\n flex-wrap: nowrap;\n }\n .rck-container[_ngcontent-%COMP%] {\n width: 180px;\n max-width: 100%;\n margin: 5px 5px 5px 5px;\n display: inline-block;\n vertical-align: top;\n }\n\n .rck-container[_ngcontent-%COMP%]:last-child{\n margin-right: 25px;\n }\n\n .rck-list[_ngcontent-%COMP%] {\n border: solid 1px #ccc;\n min-height: 60px;\n background: white;\n border-radius: 4px;\n overflow: hidden;\n display: block;\n }\n\n .rck-box[_ngcontent-%COMP%] {\n padding: 20px 20px;\n border-bottom: solid 1px #ccc;\n color: rgba(0, 0, 0, 0.87);\n display: flex;\n flex-direction: row;\n align-items: center;\n justify-content: space-between;\n box-sizing: border-box;\n cursor: move;\n background: white;\n font-size: 14px;\n }\n\n .cdk-drag-preview[_ngcontent-%COMP%] {\n box-sizing: border-box;\n border-radius: 4px;\n box-shadow: 0 5px 5px -3px rgba(0, 0, 0, 0.2),\n 0 8px 10px 1px rgba(0, 0, 0, 0.14),\n 0 3px 14px 2px rgba(0, 0, 0, 0.12);\n }\n\n .cdk-drag-placeholder[_ngcontent-%COMP%] {\n opacity: 0;\n }\n\n .cdk-drag-animating[_ngcontent-%COMP%] {\n transition: transform 250ms cubic-bezier(0, 0, 0.2, 1);\n }\n\n .rck-box[_ngcontent-%COMP%]:last-child {\n border: none;\n }\n\n .rck-list.cdk-drop-list-dragging[_ngcontent-%COMP%] .rck-box[_ngcontent-%COMP%]:not(.cdk-drag-placeholder) {\n transition: transform 250ms cubic-bezier(0, 0, 0.2, 1);\n }"] }); -MaterialDualListboxComponent.ctorParameters = () => []; -MaterialDualListboxComponent.propDecorators = { - key: [{ type: Input }], - display: [{ type: Input }], - width: [{ type: Input }], - filter: [{ type: Input }], - searchPlaceholder: [{ type: Input }], - itemsTitle: [{ type: Input }], - selectedItemsTitle: [{ type: Input }], - header: [{ type: Input }], - showIcons: [{ type: Input }], - addIcon: [{ type: Input }], - addIconColor: [{ type: Input }], - removeIcon: [{ type: Input }], - removeIconColor: [{ type: Input }], - source: [{ type: Input }], - destination: [{ type: Input }], - destinationChange: [{ type: Output }] -}; -/*@__PURE__*/ (function () { ɵngcc0.ɵsetClassMetadata(MaterialDualListboxComponent, [{ - type: Component, - args: [{ - selector: 'material-dual-listbox', - template: "\r\n\r\n\r\n
\r\n\r\n
\r\n
\r\n

{{itemsTitle}}

\r\n \r\n {{searchPlaceholder}} {{itemsTitle}}\r\n \r\n {{searchPlaceholder}} {{itemsTitle}}\r\n\r\n \r\n
\r\n
{{addIcon}} {{item[display]}}
\r\n
\r\n\r\n
\r\n
\r\n

{{selectedItemsTitle}}

\r\n \r\n {{searchPlaceholder}} {{selectedItemsTitle}}\r\n \r\n {{searchPlaceholder}} {{itemsTitle}}\r\n \r\n
\r\n
{{removeIcon}} {{item[display]}}
\r\n
\r\n
\r\n \r\n
\r\n
", - styles: ['./material-dual-listbox.component.scss'] - }] - }], function () { return []; }, { key: [{ - type: Input - }], display: [{ - type: Input - }], width: [{ - type: Input - }], filter: [{ - type: Input - }], searchPlaceholder: [{ - type: Input - }], itemsTitle: [{ - type: Input - }], selectedItemsTitle: [{ - type: Input - }], header: [{ - type: Input - }], showIcons: [{ - type: Input - }], addIcon: [{ - type: Input - }], addIconColor: [{ - type: Input - }], removeIcon: [{ - type: Input - }], removeIconColor: [{ - type: Input - }], source: [{ - type: Input - }], destination: [{ - type: Input - }], destinationChange: [{ - type: Output - }] }); })(); - -class MaterialDualListboxModule { -} -MaterialDualListboxModule.ɵmod = ɵngcc0.ɵɵdefineNgModule({ type: MaterialDualListboxModule }); -MaterialDualListboxModule.ɵinj = ɵngcc0.ɵɵdefineInjector({ factory: function MaterialDualListboxModule_Factory(t) { return new (t || MaterialDualListboxModule)(); }, imports: [[ - BrowserModule, - MatIconModule, - MatInputModule, - MatListModule, - FormsModule, - MatFormFieldModule, - DragDropModule - ]] }); -(function () { (typeof ngJitMode === "undefined" || ngJitMode) && ɵngcc0.ɵɵsetNgModuleScope(MaterialDualListboxModule, { declarations: function () { return [MaterialDualListboxComponent]; }, imports: function () { return [BrowserModule, - MatIconModule, - MatInputModule, - MatListModule, - FormsModule, - MatFormFieldModule, - DragDropModule]; }, exports: function () { return [MaterialDualListboxComponent]; } }); })(); -/*@__PURE__*/ (function () { ɵngcc0.ɵsetClassMetadata(MaterialDualListboxModule, [{ - type: NgModule, - args: [{ - declarations: [MaterialDualListboxComponent], - imports: [ - BrowserModule, - MatIconModule, - MatInputModule, - MatListModule, - FormsModule, - MatFormFieldModule, - DragDropModule - ], - exports: [MaterialDualListboxComponent] - }] - }], null, null); })(); - -/* - * Public API Surface of material-dual-listbox - */ - -/** - * Generated bundle index. Do not edit. - */ - -export { MaterialDualListboxComponent, MaterialDualListboxModule }; - -//# sourceMappingURL=material-dual-listbox.js.map \ No newline at end of file diff --git a/dist/material-dual-listbox/__ivy_ngcc__/fesm2015/material-dual-listbox.js.map b/dist/material-dual-listbox/__ivy_ngcc__/fesm2015/material-dual-listbox.js.map deleted file mode 100644 index a443416..0000000 --- a/dist/material-dual-listbox/__ivy_ngcc__/fesm2015/material-dual-listbox.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"material-dual-listbox.js","sources":["../../../projects/material-dual-listbox/src/lib/material-dual-listbox.component.ts","../../../projects/material-dual-listbox/src/lib/material-dual-listbox.module.ts","../../../projects/material-dual-listbox/src/public-api.ts","../../../projects/material-dual-listbox/src/material-dual-listbox.ts"],"names":[],"mappings":"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","sourcesContent":["import { Component, Input, EventEmitter, IterableDiffers, Output, OnInit, OnChanges, ɵConsole } from '@angular/core';\r\nimport { CdkDragDrop, moveItemInArray, transferArrayItem } from '@angular/cdk/drag-drop';\r\n\r\n\r\n\r\n@Component({\r\n selector: 'material-dual-listbox',\r\n templateUrl: './material-dual-listbox.component.html',\r\n styles: ['./material-dual-listbox.component.scss']\r\n})\r\nexport class MaterialDualListboxComponent implements OnInit {\r\n\r\n @Input() key = '_id';\r\n @Input() display: any = 'name';\r\n @Input() width = '360px';\r\n @Input() filter = true;\r\n @Input() searchPlaceholder: string = 'Filter'\r\n @Input() itemsTitle: string = 'Items'\r\n @Input() selectedItemsTitle: string = 'Selected Items'\r\n @Input() header = false\r\n @Input() showIcons = true\r\n @Input() addIcon: string = 'add';\r\n @Input() addIconColor: string = 'black'\r\n @Input() removeIcon: string = 'delete';\r\n @Input() removeIconColor: string = 'black'\r\n @Input() source: Array = [];\r\n @Input() destination: Array = [];\r\n @Output() destinationChange = new EventEmitter();\r\n\r\n availableFiltered: Array = []\r\n confirmedFiltered: Array = []\r\n filterText: string = null\r\n filterSelectedText: string = null\r\n\r\n constructor() {}\r\n\r\n ngOnInit() {\r\n this.update()\r\n }\r\n\r\n update() {\r\n this.filterItems(this.filterText);\r\n this.filterSelectedItems(this.filterSelectedText);\r\n }\r\n\r\n drop(event: CdkDragDrop) {\r\n if (event.previousContainer === event.container) {\r\n moveItemInArray(event.container.data, event.previousIndex, event.currentIndex);\r\n console.log(event)\r\n } else {\r\n transferArrayItem(event.previousContainer.data, event.container.data, event.previousIndex, event.currentIndex);\r\n this.destination = this.confirmedFiltered\r\n this.destinationChange.emit(this.destination);\r\n }\r\n }\r\n\r\n clickedItem(item, ...targets: string[]) {\r\n this[targets[0]] = [\r\n ...this[targets[1]].splice(this[targets[1]].indexOf(item), 1),\r\n ...this[targets[0]]\r\n ]\r\n this.destination = this.confirmedFiltered\r\n this.destinationChange.emit(this.destination);\r\n }\r\n\r\n filterItems(text: string) {\r\n this.filterText = text;\r\n if (!text) {\r\n this.availableFiltered = this.source;\r\n return;\r\n }\r\n this.availableFiltered = this.source\r\n .filter(item => item[this.display].toLowerCase().includes(text.toLowerCase()));\r\n }\r\n\r\n filterSelectedItems(text: string) {\r\n this.filterSelectedText = text;\r\n if (!text) {\r\n this.confirmedFiltered = this.destination\r\n\r\n return;\r\n }\r\n this.confirmedFiltered = this.destination.filter(item => item[this.display].toLowerCase().includes(text.toLowerCase()));\r\n }\r\n\r\n}\r\n\r\n\r\n\r\n","import { NgModule } from '@angular/core';\r\nimport { BrowserModule } from '@angular/platform-browser';\r\nimport { MaterialDualListboxComponent } from './material-dual-listbox.component';\r\nimport { MatInputModule } from '@angular/material/input'\r\nimport { MatIconModule } from '@angular/material/icon';\r\nimport { MatListModule } from '@angular/material/list';\r\nimport { FormsModule } from '@angular/forms';\r\nimport { MatFormFieldModule } from '@angular/material/form-field'\r\nimport { DragDropModule } from '@angular/cdk/drag-drop';\r\n@NgModule({\r\n declarations: [MaterialDualListboxComponent],\r\n imports: [\r\n BrowserModule,\r\n MatIconModule,\r\n MatInputModule,\r\n MatListModule,\r\n FormsModule,\r\n MatFormFieldModule,\r\n DragDropModule\r\n ],\r\n exports: [MaterialDualListboxComponent]\r\n})\r\nexport class MaterialDualListboxModule { }\r\n","/*\r\n * Public API Surface of material-dual-listbox\r\n */\r\n\r\nexport * from './lib/material-dual-listbox.component';\r\nexport * from './lib/material-dual-listbox.module';\r\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"]} \ No newline at end of file diff --git a/dist/material-dual-listbox/bundles/material-dual-listbox.umd.js b/dist/material-dual-listbox/bundles/material-dual-listbox.umd.js index 18796f7..fe7422b 100644 --- a/dist/material-dual-listbox/bundles/material-dual-listbox.umd.js +++ b/dist/material-dual-listbox/bundles/material-dual-listbox.umd.js @@ -307,7 +307,6 @@ var MaterialDualListboxComponent = /** @class */ (function () { function MaterialDualListboxComponent() { - this.key = '_id'; this.display = 'name'; this.width = '360px'; this.filter = true; @@ -347,11 +346,12 @@ } }; MaterialDualListboxComponent.prototype.clickedItem = function (item) { + var _this = this; var targets = []; for (var _i = 1; _i < arguments.length; _i++) { targets[_i - 1] = arguments[_i]; } - this[targets[0]] = __spread(this[targets[1]].splice(this[targets[1]].indexOf(item), 1), this[targets[0]]); + this[targets[0]] = __spread(this[targets[1]].splice(this[targets[1]].findIndex(function (x) { return x[_this.display] == item; }), 1), this[targets[0]]); this.destination = this.confirmedFiltered; this.destinationChange.emit(this.destination); }; @@ -379,13 +379,12 @@ MaterialDualListboxComponent.decorators = [ { type: core.Component, args: [{ selector: 'material-dual-listbox', - template: "\r\n\r\n\r\n
\r\n\r\n
\r\n
\r\n

{{itemsTitle}}

\r\n \r\n {{searchPlaceholder}} {{itemsTitle}}\r\n \r\n {{searchPlaceholder}} {{itemsTitle}}\r\n\r\n \r\n
\r\n
{{addIcon}} {{item[display]}}
\r\n
\r\n\r\n
\r\n
\r\n

{{selectedItemsTitle}}

\r\n \r\n {{searchPlaceholder}} {{selectedItemsTitle}}\r\n \r\n {{searchPlaceholder}} {{itemsTitle}}\r\n \r\n
\r\n
{{removeIcon}} {{item[display]}}
\r\n
\r\n
\r\n \r\n
\r\n
", + template: "\r\n\r\n\r\n
\r\n\r\n
\r\n
\r\n

{{itemsTitle}}

\r\n \r\n {{searchPlaceholder}} {{itemsTitle}}\r\n \r\n {{searchPlaceholder}} {{itemsTitle}}\r\n\r\n \r\n
\r\n
{{addIcon}} {{item[display]}}
\r\n
\r\n\r\n
\r\n
\r\n

{{selectedItemsTitle}}

\r\n \r\n {{searchPlaceholder}} {{selectedItemsTitle}}\r\n \r\n {{searchPlaceholder}} {{itemsTitle}}\r\n \r\n
\r\n
{{removeIcon}} {{item[display]}}
\r\n
\r\n
\r\n \r\n
\r\n
", styles: ['./material-dual-listbox.component.scss'] },] } ]; MaterialDualListboxComponent.ctorParameters = function () { return []; }; MaterialDualListboxComponent.propDecorators = { - key: [{ type: core.Input }], display: [{ type: core.Input }], width: [{ type: core.Input }], filter: [{ type: core.Input }], diff --git a/dist/material-dual-listbox/bundles/material-dual-listbox.umd.js.map b/dist/material-dual-listbox/bundles/material-dual-listbox.umd.js.map index 79e8ce8..2976a8f 100644 --- a/dist/material-dual-listbox/bundles/material-dual-listbox.umd.js.map +++ b/dist/material-dual-listbox/bundles/material-dual-listbox.umd.js.map @@ -1 +1 @@ -{"version":3,"file":"material-dual-listbox.umd.js","sources":["../../../node_modules/tslib/tslib.es6.js","../../../projects/material-dual-listbox/src/lib/material-dual-listbox.component.ts","../../../projects/material-dual-listbox/src/lib/material-dual-listbox.module.ts","../../../projects/material-dual-listbox/src/public-api.ts","../../../projects/material-dual-listbox/src/material-dual-listbox.ts"],"sourcesContent":["/*! *****************************************************************************\r\nCopyright (c) Microsoft Corporation.\r\n\r\nPermission to use, copy, modify, and/or distribute this software for any\r\npurpose with or without fee is hereby granted.\r\n\r\nTHE SOFTWARE IS PROVIDED \"AS IS\" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH\r\nREGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY\r\nAND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,\r\nINDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM\r\nLOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR\r\nOTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR\r\nPERFORMANCE OF THIS SOFTWARE.\r\n***************************************************************************** */\r\n/* global Reflect, Promise */\r\n\r\nvar extendStatics = function(d, b) {\r\n extendStatics = Object.setPrototypeOf ||\r\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\r\n function (d, b) { for (var p in b) if (b.hasOwnProperty(p)) d[p] = b[p]; };\r\n return extendStatics(d, b);\r\n};\r\n\r\nexport function __extends(d, b) {\r\n extendStatics(d, b);\r\n function __() { this.constructor = d; }\r\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\r\n}\r\n\r\nexport var __assign = function() {\r\n __assign = Object.assign || function __assign(t) {\r\n for (var s, i = 1, n = arguments.length; i < n; i++) {\r\n s = arguments[i];\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];\r\n }\r\n return t;\r\n }\r\n return __assign.apply(this, arguments);\r\n}\r\n\r\nexport function __rest(s, e) {\r\n var t = {};\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)\r\n t[p] = s[p];\r\n if (s != null && typeof Object.getOwnPropertySymbols === \"function\")\r\n for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {\r\n if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))\r\n t[p[i]] = s[p[i]];\r\n }\r\n return t;\r\n}\r\n\r\nexport function __decorate(decorators, target, key, desc) {\r\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\r\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\r\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\r\n return c > 3 && r && Object.defineProperty(target, key, r), r;\r\n}\r\n\r\nexport function __param(paramIndex, decorator) {\r\n return function (target, key) { decorator(target, key, paramIndex); }\r\n}\r\n\r\nexport function __metadata(metadataKey, metadataValue) {\r\n if (typeof Reflect === \"object\" && typeof Reflect.metadata === \"function\") return Reflect.metadata(metadataKey, metadataValue);\r\n}\r\n\r\nexport function __awaiter(thisArg, _arguments, P, generator) {\r\n function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }\r\n return new (P || (P = Promise))(function (resolve, reject) {\r\n function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\r\n function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\r\n function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }\r\n step((generator = generator.apply(thisArg, _arguments || [])).next());\r\n });\r\n}\r\n\r\nexport function __generator(thisArg, body) {\r\n var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;\r\n return g = { next: verb(0), \"throw\": verb(1), \"return\": verb(2) }, typeof Symbol === \"function\" && (g[Symbol.iterator] = function() { return this; }), g;\r\n function verb(n) { return function (v) { return step([n, v]); }; }\r\n function step(op) {\r\n if (f) throw new TypeError(\"Generator is already executing.\");\r\n while (_) try {\r\n if (f = 1, y && (t = op[0] & 2 ? y[\"return\"] : op[0] ? y[\"throw\"] || ((t = y[\"return\"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;\r\n if (y = 0, t) op = [op[0] & 2, t.value];\r\n switch (op[0]) {\r\n case 0: case 1: t = op; break;\r\n case 4: _.label++; return { value: op[1], done: false };\r\n case 5: _.label++; y = op[1]; op = [0]; continue;\r\n case 7: op = _.ops.pop(); _.trys.pop(); continue;\r\n default:\r\n if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }\r\n if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }\r\n if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }\r\n if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }\r\n if (t[2]) _.ops.pop();\r\n _.trys.pop(); continue;\r\n }\r\n op = body.call(thisArg, _);\r\n } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }\r\n if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };\r\n }\r\n}\r\n\r\nexport var __createBinding = Object.create ? (function(o, m, k, k2) {\r\n if (k2 === undefined) k2 = k;\r\n Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });\r\n}) : (function(o, m, k, k2) {\r\n if (k2 === undefined) k2 = k;\r\n o[k2] = m[k];\r\n});\r\n\r\nexport function __exportStar(m, exports) {\r\n for (var p in m) if (p !== \"default\" && !exports.hasOwnProperty(p)) __createBinding(exports, m, p);\r\n}\r\n\r\nexport function __values(o) {\r\n var s = typeof Symbol === \"function\" && Symbol.iterator, m = s && o[s], i = 0;\r\n if (m) return m.call(o);\r\n if (o && typeof o.length === \"number\") return {\r\n next: function () {\r\n if (o && i >= o.length) o = void 0;\r\n return { value: o && o[i++], done: !o };\r\n }\r\n };\r\n throw new TypeError(s ? \"Object is not iterable.\" : \"Symbol.iterator is not defined.\");\r\n}\r\n\r\nexport function __read(o, n) {\r\n var m = typeof Symbol === \"function\" && o[Symbol.iterator];\r\n if (!m) return o;\r\n var i = m.call(o), r, ar = [], e;\r\n try {\r\n while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);\r\n }\r\n catch (error) { e = { error: error }; }\r\n finally {\r\n try {\r\n if (r && !r.done && (m = i[\"return\"])) m.call(i);\r\n }\r\n finally { if (e) throw e.error; }\r\n }\r\n return ar;\r\n}\r\n\r\nexport function __spread() {\r\n for (var ar = [], i = 0; i < arguments.length; i++)\r\n ar = ar.concat(__read(arguments[i]));\r\n return ar;\r\n}\r\n\r\nexport function __spreadArrays() {\r\n for (var s = 0, i = 0, il = arguments.length; i < il; i++) s += arguments[i].length;\r\n for (var r = Array(s), k = 0, i = 0; i < il; i++)\r\n for (var a = arguments[i], j = 0, jl = a.length; j < jl; j++, k++)\r\n r[k] = a[j];\r\n return r;\r\n};\r\n\r\nexport function __await(v) {\r\n return this instanceof __await ? (this.v = v, this) : new __await(v);\r\n}\r\n\r\nexport function __asyncGenerator(thisArg, _arguments, generator) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var g = generator.apply(thisArg, _arguments || []), i, q = [];\r\n return i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i;\r\n function verb(n) { if (g[n]) i[n] = function (v) { return new Promise(function (a, b) { q.push([n, v, a, b]) > 1 || resume(n, v); }); }; }\r\n function resume(n, v) { try { step(g[n](v)); } catch (e) { settle(q[0][3], e); } }\r\n function step(r) { r.value instanceof __await ? Promise.resolve(r.value.v).then(fulfill, reject) : settle(q[0][2], r); }\r\n function fulfill(value) { resume(\"next\", value); }\r\n function reject(value) { resume(\"throw\", value); }\r\n function settle(f, v) { if (f(v), q.shift(), q.length) resume(q[0][0], q[0][1]); }\r\n}\r\n\r\nexport function __asyncDelegator(o) {\r\n var i, p;\r\n return i = {}, verb(\"next\"), verb(\"throw\", function (e) { throw e; }), verb(\"return\"), i[Symbol.iterator] = function () { return this; }, i;\r\n function verb(n, f) { i[n] = o[n] ? function (v) { return (p = !p) ? { value: __await(o[n](v)), done: n === \"return\" } : f ? f(v) : v; } : f; }\r\n}\r\n\r\nexport function __asyncValues(o) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var m = o[Symbol.asyncIterator], i;\r\n return m ? m.call(o) : (o = typeof __values === \"function\" ? __values(o) : o[Symbol.iterator](), i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i);\r\n function verb(n) { i[n] = o[n] && function (v) { return new Promise(function (resolve, reject) { v = o[n](v), settle(resolve, reject, v.done, v.value); }); }; }\r\n function settle(resolve, reject, d, v) { Promise.resolve(v).then(function(v) { resolve({ value: v, done: d }); }, reject); }\r\n}\r\n\r\nexport function __makeTemplateObject(cooked, raw) {\r\n if (Object.defineProperty) { Object.defineProperty(cooked, \"raw\", { value: raw }); } else { cooked.raw = raw; }\r\n return cooked;\r\n};\r\n\r\nvar __setModuleDefault = Object.create ? (function(o, v) {\r\n Object.defineProperty(o, \"default\", { enumerable: true, value: v });\r\n}) : function(o, v) {\r\n o[\"default\"] = v;\r\n};\r\n\r\nexport function __importStar(mod) {\r\n if (mod && mod.__esModule) return mod;\r\n var result = {};\r\n if (mod != null) for (var k in mod) if (Object.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);\r\n __setModuleDefault(result, mod);\r\n return result;\r\n}\r\n\r\nexport function __importDefault(mod) {\r\n return (mod && mod.__esModule) ? mod : { default: mod };\r\n}\r\n\r\nexport function __classPrivateFieldGet(receiver, privateMap) {\r\n if (!privateMap.has(receiver)) {\r\n throw new TypeError(\"attempted to get private field on non-instance\");\r\n }\r\n return privateMap.get(receiver);\r\n}\r\n\r\nexport function __classPrivateFieldSet(receiver, privateMap, value) {\r\n if (!privateMap.has(receiver)) {\r\n throw new TypeError(\"attempted to set private field on non-instance\");\r\n }\r\n privateMap.set(receiver, value);\r\n return value;\r\n}\r\n","import { Component, Input, EventEmitter, IterableDiffers, Output, OnInit, OnChanges, ɵConsole } from '@angular/core';\r\nimport { CdkDragDrop, moveItemInArray, transferArrayItem } from '@angular/cdk/drag-drop';\r\n\r\n\r\n\r\n@Component({\r\n selector: 'material-dual-listbox',\r\n templateUrl: './material-dual-listbox.component.html',\r\n styles: ['./material-dual-listbox.component.scss']\r\n})\r\nexport class MaterialDualListboxComponent implements OnInit {\r\n\r\n @Input() key = '_id';\r\n @Input() display: any = 'name';\r\n @Input() width = '360px';\r\n @Input() filter = true;\r\n @Input() searchPlaceholder: string = 'Filter'\r\n @Input() itemsTitle: string = 'Items'\r\n @Input() selectedItemsTitle: string = 'Selected Items'\r\n @Input() header = false\r\n @Input() showIcons = true\r\n @Input() addIcon: string = 'add';\r\n @Input() addIconColor: string = 'black'\r\n @Input() removeIcon: string = 'delete';\r\n @Input() removeIconColor: string = 'black'\r\n @Input() source: Array = [];\r\n @Input() destination: Array = [];\r\n @Output() destinationChange = new EventEmitter();\r\n\r\n availableFiltered: Array = []\r\n confirmedFiltered: Array = []\r\n filterText: string = null\r\n filterSelectedText: string = null\r\n\r\n constructor() {}\r\n\r\n ngOnInit() {\r\n this.update()\r\n }\r\n\r\n update() {\r\n this.filterItems(this.filterText);\r\n this.filterSelectedItems(this.filterSelectedText);\r\n }\r\n\r\n drop(event: CdkDragDrop) {\r\n if (event.previousContainer === event.container) {\r\n moveItemInArray(event.container.data, event.previousIndex, event.currentIndex);\r\n console.log(event)\r\n } else {\r\n transferArrayItem(event.previousContainer.data, event.container.data, event.previousIndex, event.currentIndex);\r\n this.destination = this.confirmedFiltered\r\n this.destinationChange.emit(this.destination);\r\n }\r\n }\r\n\r\n clickedItem(item, ...targets: string[]) {\r\n this[targets[0]] = [\r\n ...this[targets[1]].splice(this[targets[1]].indexOf(item), 1),\r\n ...this[targets[0]]\r\n ]\r\n this.destination = this.confirmedFiltered\r\n this.destinationChange.emit(this.destination);\r\n }\r\n\r\n filterItems(text: string) {\r\n this.filterText = text;\r\n if (!text) {\r\n this.availableFiltered = this.source;\r\n return;\r\n }\r\n this.availableFiltered = this.source\r\n .filter(item => item[this.display].toLowerCase().includes(text.toLowerCase()));\r\n }\r\n\r\n filterSelectedItems(text: string) {\r\n this.filterSelectedText = text;\r\n if (!text) {\r\n this.confirmedFiltered = this.destination\r\n\r\n return;\r\n }\r\n this.confirmedFiltered = this.destination.filter(item => item[this.display].toLowerCase().includes(text.toLowerCase()));\r\n }\r\n\r\n}\r\n\r\n\r\n\r\n","import { NgModule } from '@angular/core';\r\nimport { BrowserModule } from '@angular/platform-browser';\r\nimport { MaterialDualListboxComponent } from './material-dual-listbox.component';\r\nimport { MatInputModule } from '@angular/material/input'\r\nimport { MatIconModule } from '@angular/material/icon';\r\nimport { MatListModule } from '@angular/material/list';\r\nimport { FormsModule } from '@angular/forms';\r\nimport { MatFormFieldModule } from '@angular/material/form-field'\r\nimport { DragDropModule } from '@angular/cdk/drag-drop';\r\n@NgModule({\r\n declarations: [MaterialDualListboxComponent],\r\n imports: [\r\n BrowserModule,\r\n MatIconModule,\r\n MatInputModule,\r\n MatListModule,\r\n FormsModule,\r\n MatFormFieldModule,\r\n DragDropModule\r\n ],\r\n exports: [MaterialDualListboxComponent]\r\n})\r\nexport class MaterialDualListboxModule { }\r\n","/*\r\n * Public API Surface of material-dual-listbox\r\n */\r\n\r\nexport * from './lib/material-dual-listbox.component';\r\nexport * from './lib/material-dual-listbox.module';\r\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":["EventEmitter","moveItemInArray","transferArrayItem","Component","Input","Output","NgModule","BrowserModule","MatIconModule","MatInputModule","MatListModule","FormsModule","MatFormFieldModule","DragDropModule"],"mappings":"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"} \ No newline at end of file +{"version":3,"file":"material-dual-listbox.umd.js","sources":["../../../node_modules/tslib/tslib.es6.js","../../../projects/material-dual-listbox/src/lib/material-dual-listbox.component.ts","../../../projects/material-dual-listbox/src/lib/material-dual-listbox.module.ts","../../../projects/material-dual-listbox/src/public-api.ts","../../../projects/material-dual-listbox/src/material-dual-listbox.ts"],"sourcesContent":["/*! *****************************************************************************\r\nCopyright (c) Microsoft Corporation.\r\n\r\nPermission to use, copy, modify, and/or distribute this software for any\r\npurpose with or without fee is hereby granted.\r\n\r\nTHE SOFTWARE IS PROVIDED \"AS IS\" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH\r\nREGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY\r\nAND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,\r\nINDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM\r\nLOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR\r\nOTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR\r\nPERFORMANCE OF THIS SOFTWARE.\r\n***************************************************************************** */\r\n/* global Reflect, Promise */\r\n\r\nvar extendStatics = function(d, b) {\r\n extendStatics = Object.setPrototypeOf ||\r\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\r\n function (d, b) { for (var p in b) if (b.hasOwnProperty(p)) d[p] = b[p]; };\r\n return extendStatics(d, b);\r\n};\r\n\r\nexport function __extends(d, b) {\r\n extendStatics(d, b);\r\n function __() { this.constructor = d; }\r\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\r\n}\r\n\r\nexport var __assign = function() {\r\n __assign = Object.assign || function __assign(t) {\r\n for (var s, i = 1, n = arguments.length; i < n; i++) {\r\n s = arguments[i];\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];\r\n }\r\n return t;\r\n }\r\n return __assign.apply(this, arguments);\r\n}\r\n\r\nexport function __rest(s, e) {\r\n var t = {};\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)\r\n t[p] = s[p];\r\n if (s != null && typeof Object.getOwnPropertySymbols === \"function\")\r\n for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {\r\n if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))\r\n t[p[i]] = s[p[i]];\r\n }\r\n return t;\r\n}\r\n\r\nexport function __decorate(decorators, target, key, desc) {\r\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\r\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\r\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\r\n return c > 3 && r && Object.defineProperty(target, key, r), r;\r\n}\r\n\r\nexport function __param(paramIndex, decorator) {\r\n return function (target, key) { decorator(target, key, paramIndex); }\r\n}\r\n\r\nexport function __metadata(metadataKey, metadataValue) {\r\n if (typeof Reflect === \"object\" && typeof Reflect.metadata === \"function\") return Reflect.metadata(metadataKey, metadataValue);\r\n}\r\n\r\nexport function __awaiter(thisArg, _arguments, P, generator) {\r\n function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }\r\n return new (P || (P = Promise))(function (resolve, reject) {\r\n function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\r\n function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\r\n function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }\r\n step((generator = generator.apply(thisArg, _arguments || [])).next());\r\n });\r\n}\r\n\r\nexport function __generator(thisArg, body) {\r\n var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;\r\n return g = { next: verb(0), \"throw\": verb(1), \"return\": verb(2) }, typeof Symbol === \"function\" && (g[Symbol.iterator] = function() { return this; }), g;\r\n function verb(n) { return function (v) { return step([n, v]); }; }\r\n function step(op) {\r\n if (f) throw new TypeError(\"Generator is already executing.\");\r\n while (_) try {\r\n if (f = 1, y && (t = op[0] & 2 ? y[\"return\"] : op[0] ? y[\"throw\"] || ((t = y[\"return\"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;\r\n if (y = 0, t) op = [op[0] & 2, t.value];\r\n switch (op[0]) {\r\n case 0: case 1: t = op; break;\r\n case 4: _.label++; return { value: op[1], done: false };\r\n case 5: _.label++; y = op[1]; op = [0]; continue;\r\n case 7: op = _.ops.pop(); _.trys.pop(); continue;\r\n default:\r\n if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }\r\n if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }\r\n if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }\r\n if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }\r\n if (t[2]) _.ops.pop();\r\n _.trys.pop(); continue;\r\n }\r\n op = body.call(thisArg, _);\r\n } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }\r\n if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };\r\n }\r\n}\r\n\r\nexport var __createBinding = Object.create ? (function(o, m, k, k2) {\r\n if (k2 === undefined) k2 = k;\r\n Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });\r\n}) : (function(o, m, k, k2) {\r\n if (k2 === undefined) k2 = k;\r\n o[k2] = m[k];\r\n});\r\n\r\nexport function __exportStar(m, exports) {\r\n for (var p in m) if (p !== \"default\" && !exports.hasOwnProperty(p)) __createBinding(exports, m, p);\r\n}\r\n\r\nexport function __values(o) {\r\n var s = typeof Symbol === \"function\" && Symbol.iterator, m = s && o[s], i = 0;\r\n if (m) return m.call(o);\r\n if (o && typeof o.length === \"number\") return {\r\n next: function () {\r\n if (o && i >= o.length) o = void 0;\r\n return { value: o && o[i++], done: !o };\r\n }\r\n };\r\n throw new TypeError(s ? \"Object is not iterable.\" : \"Symbol.iterator is not defined.\");\r\n}\r\n\r\nexport function __read(o, n) {\r\n var m = typeof Symbol === \"function\" && o[Symbol.iterator];\r\n if (!m) return o;\r\n var i = m.call(o), r, ar = [], e;\r\n try {\r\n while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);\r\n }\r\n catch (error) { e = { error: error }; }\r\n finally {\r\n try {\r\n if (r && !r.done && (m = i[\"return\"])) m.call(i);\r\n }\r\n finally { if (e) throw e.error; }\r\n }\r\n return ar;\r\n}\r\n\r\nexport function __spread() {\r\n for (var ar = [], i = 0; i < arguments.length; i++)\r\n ar = ar.concat(__read(arguments[i]));\r\n return ar;\r\n}\r\n\r\nexport function __spreadArrays() {\r\n for (var s = 0, i = 0, il = arguments.length; i < il; i++) s += arguments[i].length;\r\n for (var r = Array(s), k = 0, i = 0; i < il; i++)\r\n for (var a = arguments[i], j = 0, jl = a.length; j < jl; j++, k++)\r\n r[k] = a[j];\r\n return r;\r\n};\r\n\r\nexport function __await(v) {\r\n return this instanceof __await ? (this.v = v, this) : new __await(v);\r\n}\r\n\r\nexport function __asyncGenerator(thisArg, _arguments, generator) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var g = generator.apply(thisArg, _arguments || []), i, q = [];\r\n return i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i;\r\n function verb(n) { if (g[n]) i[n] = function (v) { return new Promise(function (a, b) { q.push([n, v, a, b]) > 1 || resume(n, v); }); }; }\r\n function resume(n, v) { try { step(g[n](v)); } catch (e) { settle(q[0][3], e); } }\r\n function step(r) { r.value instanceof __await ? Promise.resolve(r.value.v).then(fulfill, reject) : settle(q[0][2], r); }\r\n function fulfill(value) { resume(\"next\", value); }\r\n function reject(value) { resume(\"throw\", value); }\r\n function settle(f, v) { if (f(v), q.shift(), q.length) resume(q[0][0], q[0][1]); }\r\n}\r\n\r\nexport function __asyncDelegator(o) {\r\n var i, p;\r\n return i = {}, verb(\"next\"), verb(\"throw\", function (e) { throw e; }), verb(\"return\"), i[Symbol.iterator] = function () { return this; }, i;\r\n function verb(n, f) { i[n] = o[n] ? function (v) { return (p = !p) ? { value: __await(o[n](v)), done: n === \"return\" } : f ? f(v) : v; } : f; }\r\n}\r\n\r\nexport function __asyncValues(o) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var m = o[Symbol.asyncIterator], i;\r\n return m ? m.call(o) : (o = typeof __values === \"function\" ? __values(o) : o[Symbol.iterator](), i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i);\r\n function verb(n) { i[n] = o[n] && function (v) { return new Promise(function (resolve, reject) { v = o[n](v), settle(resolve, reject, v.done, v.value); }); }; }\r\n function settle(resolve, reject, d, v) { Promise.resolve(v).then(function(v) { resolve({ value: v, done: d }); }, reject); }\r\n}\r\n\r\nexport function __makeTemplateObject(cooked, raw) {\r\n if (Object.defineProperty) { Object.defineProperty(cooked, \"raw\", { value: raw }); } else { cooked.raw = raw; }\r\n return cooked;\r\n};\r\n\r\nvar __setModuleDefault = Object.create ? (function(o, v) {\r\n Object.defineProperty(o, \"default\", { enumerable: true, value: v });\r\n}) : function(o, v) {\r\n o[\"default\"] = v;\r\n};\r\n\r\nexport function __importStar(mod) {\r\n if (mod && mod.__esModule) return mod;\r\n var result = {};\r\n if (mod != null) for (var k in mod) if (Object.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);\r\n __setModuleDefault(result, mod);\r\n return result;\r\n}\r\n\r\nexport function __importDefault(mod) {\r\n return (mod && mod.__esModule) ? mod : { default: mod };\r\n}\r\n\r\nexport function __classPrivateFieldGet(receiver, privateMap) {\r\n if (!privateMap.has(receiver)) {\r\n throw new TypeError(\"attempted to get private field on non-instance\");\r\n }\r\n return privateMap.get(receiver);\r\n}\r\n\r\nexport function __classPrivateFieldSet(receiver, privateMap, value) {\r\n if (!privateMap.has(receiver)) {\r\n throw new TypeError(\"attempted to set private field on non-instance\");\r\n }\r\n privateMap.set(receiver, value);\r\n return value;\r\n}\r\n","import { Component, Input, EventEmitter, IterableDiffers, Output, OnInit, OnChanges, ɵConsole } from '@angular/core';\r\nimport { CdkDragDrop, moveItemInArray, transferArrayItem } from '@angular/cdk/drag-drop';\r\n\r\n\r\n\r\n@Component({\r\n selector: 'material-dual-listbox',\r\n templateUrl: './material-dual-listbox.component.html',\r\n styles: ['./material-dual-listbox.component.scss']\r\n})\r\nexport class MaterialDualListboxComponent implements OnInit {\r\n\r\n @Input() display: any = 'name';\r\n @Input() width = '360px';\r\n @Input() filter = true;\r\n @Input() searchPlaceholder: string = 'Filter'\r\n @Input() itemsTitle: string = 'Items'\r\n @Input() selectedItemsTitle: string = 'Selected Items'\r\n @Input() header = false\r\n @Input() showIcons = true\r\n @Input() addIcon: string = 'add';\r\n @Input() addIconColor: string = 'black'\r\n @Input() removeIcon: string = 'delete';\r\n @Input() removeIconColor: string = 'black'\r\n @Input() source: Array = [];\r\n @Input() destination: Array = [];\r\n @Output() destinationChange = new EventEmitter();\r\n\r\n availableFiltered: Array = []\r\n confirmedFiltered: Array = []\r\n filterText: string = null\r\n filterSelectedText: string = null\r\n\r\n constructor() {}\r\n\r\n ngOnInit() {\r\n this.update()\r\n }\r\n\r\n update() {\r\n this.filterItems(this.filterText);\r\n this.filterSelectedItems(this.filterSelectedText);\r\n }\r\n\r\n drop(event: CdkDragDrop) {\r\n if (event.previousContainer === event.container) {\r\n moveItemInArray(event.container.data, event.previousIndex, event.currentIndex);\r\n console.log(event)\r\n } else {\r\n transferArrayItem(event.previousContainer.data, event.container.data, event.previousIndex, event.currentIndex);\r\n this.destination = this.confirmedFiltered\r\n this.destinationChange.emit(this.destination);\r\n }\r\n }\r\n\r\n clickedItem(item: string[], ...targets: string[]) {\r\n \r\n this[targets[0]] = [\r\n ...this[targets[1]].splice(this[targets[1]].findIndex(x=>x[this.display]==item), 1),\r\n ...this[targets[0]]\r\n ]\r\n this.destination = this.confirmedFiltered\r\n this.destinationChange.emit(this.destination);\r\n }\r\n\r\n filterItems(text: string) {\r\n this.filterText = text;\r\n if (!text) {\r\n this.availableFiltered = this.source;\r\n return;\r\n }\r\n this.availableFiltered = this.source\r\n .filter(item => item[this.display].toLowerCase().includes(text.toLowerCase()));\r\n }\r\n\r\n filterSelectedItems(text: string) {\r\n this.filterSelectedText = text;\r\n if (!text) {\r\n this.confirmedFiltered = this.destination\r\n\r\n return;\r\n }\r\n this.confirmedFiltered = this.destination.filter(item => item[this.display].toLowerCase().includes(text.toLowerCase()));\r\n }\r\n\r\n}\r\n\r\n\r\n\r\n","import { NgModule } from '@angular/core';\r\nimport { BrowserModule } from '@angular/platform-browser';\r\nimport { MaterialDualListboxComponent } from './material-dual-listbox.component';\r\nimport { MatInputModule } from '@angular/material/input'\r\nimport { MatIconModule } from '@angular/material/icon';\r\nimport { MatListModule } from '@angular/material/list';\r\nimport { FormsModule } from '@angular/forms';\r\nimport { MatFormFieldModule } from '@angular/material/form-field'\r\nimport { DragDropModule } from '@angular/cdk/drag-drop';\r\n@NgModule({\r\n declarations: [MaterialDualListboxComponent],\r\n imports: [\r\n BrowserModule,\r\n MatIconModule,\r\n MatInputModule,\r\n MatListModule,\r\n FormsModule,\r\n MatFormFieldModule,\r\n DragDropModule\r\n ],\r\n exports: [MaterialDualListboxComponent]\r\n})\r\nexport class MaterialDualListboxModule { }\r\n","/*\r\n * Public API Surface of material-dual-listbox\r\n */\r\n\r\nexport * from './lib/material-dual-listbox.component';\r\nexport * from './lib/material-dual-listbox.module';\r\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":["EventEmitter","moveItemInArray","transferArrayItem","Component","Input","Output","NgModule","BrowserModule","MatIconModule","MatInputModule","MatListModule","FormsModule","MatFormFieldModule","DragDropModule"],"mappings":"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"} \ No newline at end of file diff --git a/dist/material-dual-listbox/bundles/material-dual-listbox.umd.min.js b/dist/material-dual-listbox/bundles/material-dual-listbox.umd.min.js index 35d6a73..8bee9ba 100644 --- a/dist/material-dual-listbox/bundles/material-dual-listbox.umd.min.js +++ b/dist/material-dual-listbox/bundles/material-dual-listbox.umd.min.js @@ -12,5 +12,5 @@ LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. - ***************************************************************************** */Object.create;function s(e,r){var t="function"==typeof Symbol&&e[Symbol.iterator];if(!t)return e;var n,i,a=t.call(e),o=[];try{for(;(void 0===r||r-- >0)&&!(n=a.next()).done;)o.push(n.value)}catch(e){i={error:e}}finally{try{n&&!n.done&&(t=a.return)&&t.call(a)}finally{if(i)throw i.error}}return o}function c(){for(var e=[],r=0;r\r\n .rck-title{\r\n margin-bottom: 0px;\r\n }\r\n .rck-list-container{\r\n display: flex;\r\n flex-wrap: nowrap;\r\n }\r\n .rck-container {\r\n width: 180px;\r\n max-width: 100%;\r\n margin: 5px 5px 5px 5px;\r\n display: inline-block;\r\n vertical-align: top;\r\n }\r\n\r\n .rck-container:last-child{\r\n margin-right: 25px;\r\n }\r\n\r\n .rck-list {\r\n border: solid 1px #ccc;\r\n min-height: 60px;\r\n background: white;\r\n border-radius: 4px;\r\n overflow: hidden;\r\n display: block;\r\n }\r\n\r\n .rck-box {\r\n padding: 20px 20px;\r\n border-bottom: solid 1px #ccc;\r\n color: rgba(0, 0, 0, 0.87);\r\n display: flex;\r\n flex-direction: row;\r\n align-items: center;\r\n justify-content: space-between;\r\n box-sizing: border-box;\r\n cursor: move;\r\n background: white;\r\n font-size: 14px;\r\n }\r\n\r\n .cdk-drag-preview {\r\n box-sizing: border-box;\r\n border-radius: 4px;\r\n box-shadow: 0 5px 5px -3px rgba(0, 0, 0, 0.2),\r\n 0 8px 10px 1px rgba(0, 0, 0, 0.14),\r\n 0 3px 14px 2px rgba(0, 0, 0, 0.12);\r\n }\r\n\r\n .cdk-drag-placeholder {\r\n opacity: 0;\r\n }\r\n\r\n .cdk-drag-animating {\r\n transition: transform 250ms cubic-bezier(0, 0, 0.2, 1);\r\n }\r\n\r\n .rck-box:last-child {\r\n border: none;\r\n }\r\n\r\n .rck-list.cdk-drop-list-dragging .rck-box:not(.cdk-drag-placeholder) {\r\n transition: transform 250ms cubic-bezier(0, 0, 0.2, 1);\r\n }\r\n\r\n\r\n\r\n
\r\n\r\n
\r\n
\r\n

{{itemsTitle}}

\r\n \r\n {{searchPlaceholder}} {{itemsTitle}}\r\n \r\n {{searchPlaceholder}} {{itemsTitle}}\r\n\r\n \r\n
\r\n
{{addIcon}} {{item[display]}}
\r\n
\r\n\r\n
\r\n
\r\n

{{selectedItemsTitle}}

\r\n \r\n {{searchPlaceholder}} {{selectedItemsTitle}}\r\n \r\n {{searchPlaceholder}} {{itemsTitle}}\r\n \r\n
\r\n
{{removeIcon}} {{item[display]}}
\r\n
\r\n
\r\n \r\n
\r\n
',styles:["./material-dual-listbox.component.scss"]}]}],p.ctorParameters=function(){return[]},p.propDecorators={key:[{type:r.Input}],display:[{type:r.Input}],width:[{type:r.Input}],filter:[{type:r.Input}],searchPlaceholder:[{type:r.Input}],itemsTitle:[{type:r.Input}],selectedItemsTitle:[{type:r.Input}],header:[{type:r.Input}],showIcons:[{type:r.Input}],addIcon:[{type:r.Input}],addIconColor:[{type:r.Input}],removeIcon:[{type:r.Input}],removeIconColor:[{type:r.Input}],source:[{type:r.Input}],destination:[{type:r.Input}],destinationChange:[{type:r.Output}]};var m=function(){};m.decorators=[{type:r.NgModule,args:[{declarations:[p],imports:[n.BrowserModule,a.MatIconModule,i.MatInputModule,o.MatListModule,l.FormsModule,d.MatFormFieldModule,t.DragDropModule],exports:[p]}]}],e.MaterialDualListboxComponent=p,e.MaterialDualListboxModule=m,Object.defineProperty(e,"__esModule",{value:!0})})); + ***************************************************************************** */Object.create;function s(e,r){var t="function"==typeof Symbol&&e[Symbol.iterator];if(!t)return e;var n,i,a=t.call(e),o=[];try{for(;(void 0===r||r-- >0)&&!(n=a.next()).done;)o.push(n.value)}catch(e){i={error:e}}finally{try{n&&!n.done&&(t=a.return)&&t.call(a)}finally{if(i)throw i.error}}return o}function c(){for(var e=[],r=0;r\r\n .rck-title{\r\n margin-bottom: 0px;\r\n }\r\n .rck-list-container{\r\n display: flex;\r\n flex-wrap: nowrap;\r\n }\r\n .rck-container {\r\n width: 180px;\r\n max-width: 100%;\r\n margin: 5px 5px 5px 5px;\r\n display: inline-block;\r\n vertical-align: top;\r\n }\r\n\r\n .rck-container:last-child{\r\n margin-right: 25px;\r\n }\r\n\r\n .rck-list {\r\n border: solid 1px #ccc;\r\n min-height: 60px;\r\n background: white;\r\n border-radius: 4px;\r\n overflow: hidden;\r\n display: block;\r\n }\r\n\r\n .rck-box {\r\n padding: 20px 20px;\r\n border-bottom: solid 1px #ccc;\r\n color: rgba(0, 0, 0, 0.87);\r\n display: flex;\r\n flex-direction: row;\r\n align-items: center;\r\n justify-content: space-between;\r\n box-sizing: border-box;\r\n cursor: move;\r\n background: white;\r\n font-size: 14px;\r\n }\r\n\r\n .cdk-drag-preview {\r\n box-sizing: border-box;\r\n border-radius: 4px;\r\n box-shadow: 0 5px 5px -3px rgba(0, 0, 0, 0.2),\r\n 0 8px 10px 1px rgba(0, 0, 0, 0.14),\r\n 0 3px 14px 2px rgba(0, 0, 0, 0.12);\r\n }\r\n\r\n .cdk-drag-placeholder {\r\n opacity: 0;\r\n }\r\n\r\n .cdk-drag-animating {\r\n transition: transform 250ms cubic-bezier(0, 0, 0.2, 1);\r\n }\r\n\r\n .rck-box:last-child {\r\n border: none;\r\n }\r\n\r\n .rck-list.cdk-drop-list-dragging .rck-box:not(.cdk-drag-placeholder) {\r\n transition: transform 250ms cubic-bezier(0, 0, 0.2, 1);\r\n }\r\n\r\n\r\n\r\n
\r\n\r\n
\r\n
\r\n

{{itemsTitle}}

\r\n \r\n {{searchPlaceholder}} {{itemsTitle}}\r\n \r\n {{searchPlaceholder}} {{itemsTitle}}\r\n\r\n \r\n
\r\n
{{addIcon}} {{item[display]}}
\r\n
\r\n\r\n
\r\n
\r\n

{{selectedItemsTitle}}

\r\n \r\n {{searchPlaceholder}} {{selectedItemsTitle}}\r\n \r\n {{searchPlaceholder}} {{itemsTitle}}\r\n \r\n
\r\n
{{removeIcon}} {{item[display]}}
\r\n
\r\n
\r\n \r\n
\r\n
',styles:["./material-dual-listbox.component.scss"]}]}],p.ctorParameters=function(){return[]},p.propDecorators={display:[{type:r.Input}],width:[{type:r.Input}],filter:[{type:r.Input}],searchPlaceholder:[{type:r.Input}],itemsTitle:[{type:r.Input}],selectedItemsTitle:[{type:r.Input}],header:[{type:r.Input}],showIcons:[{type:r.Input}],addIcon:[{type:r.Input}],addIconColor:[{type:r.Input}],removeIcon:[{type:r.Input}],removeIconColor:[{type:r.Input}],source:[{type:r.Input}],destination:[{type:r.Input}],destinationChange:[{type:r.Output}]};var m=function(){};m.decorators=[{type:r.NgModule,args:[{declarations:[p],imports:[n.BrowserModule,a.MatIconModule,i.MatInputModule,o.MatListModule,l.FormsModule,d.MatFormFieldModule,t.DragDropModule],exports:[p]}]}],e.MaterialDualListboxComponent=p,e.MaterialDualListboxModule=m,Object.defineProperty(e,"__esModule",{value:!0})})); //# sourceMappingURL=material-dual-listbox.umd.min.js.map \ No newline at end of file diff --git a/dist/material-dual-listbox/bundles/material-dual-listbox.umd.min.js.map b/dist/material-dual-listbox/bundles/material-dual-listbox.umd.min.js.map index 694a850..96eff17 100644 --- a/dist/material-dual-listbox/bundles/material-dual-listbox.umd.min.js.map +++ b/dist/material-dual-listbox/bundles/material-dual-listbox.umd.min.js.map @@ -1 +1 @@ -{"version":3,"sources":["../../../node_modules/tslib/tslib.es6.js","../../../projects/material-dual-listbox/src/lib/material-dual-listbox.component.ts","../../../projects/material-dual-listbox/src/lib/material-dual-listbox.module.ts"],"names":["Object","create","__read","o","n","m","Symbol","iterator","r","e","i","call","ar","next","done","push","value","error","__spread","arguments","length","concat","MaterialDualListboxComponent","this","key","display","width","filter","searchPlaceholder","itemsTitle","selectedItemsTitle","header","showIcons","addIcon","addIconColor","removeIcon","removeIconColor","source","destination","destinationChange","EventEmitter","availableFiltered","confirmedFiltered","filterText","filterSelectedText","prototype","ngOnInit","update","filterItems","filterSelectedItems","drop","event","previousContainer","container","moveItemInArray","data","previousIndex","currentIndex","console","log","transferArrayItem","emit","clickedItem","item","targets","_i","splice","indexOf","text","_this","toLowerCase","includes","Component","args","selector","template","Input","Output","NgModule","declarations","imports","BrowserModule","MatIconModule","MatInputModule","MatListModule","FormsModule","MatFormFieldModule","DragDropModule","exports"],"mappings":"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","sourcesContent":["/*! *****************************************************************************\r\nCopyright (c) Microsoft Corporation.\r\n\r\nPermission to use, copy, modify, and/or distribute this software for any\r\npurpose with or without fee is hereby granted.\r\n\r\nTHE SOFTWARE IS PROVIDED \"AS IS\" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH\r\nREGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY\r\nAND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,\r\nINDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM\r\nLOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR\r\nOTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR\r\nPERFORMANCE OF THIS SOFTWARE.\r\n***************************************************************************** */\r\n/* global Reflect, Promise */\r\n\r\nvar extendStatics = function(d, b) {\r\n extendStatics = Object.setPrototypeOf ||\r\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\r\n function (d, b) { for (var p in b) if (b.hasOwnProperty(p)) d[p] = b[p]; };\r\n return extendStatics(d, b);\r\n};\r\n\r\nexport function __extends(d, b) {\r\n extendStatics(d, b);\r\n function __() { this.constructor = d; }\r\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\r\n}\r\n\r\nexport var __assign = function() {\r\n __assign = Object.assign || function __assign(t) {\r\n for (var s, i = 1, n = arguments.length; i < n; i++) {\r\n s = arguments[i];\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];\r\n }\r\n return t;\r\n }\r\n return __assign.apply(this, arguments);\r\n}\r\n\r\nexport function __rest(s, e) {\r\n var t = {};\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)\r\n t[p] = s[p];\r\n if (s != null && typeof Object.getOwnPropertySymbols === \"function\")\r\n for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {\r\n if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))\r\n t[p[i]] = s[p[i]];\r\n }\r\n return t;\r\n}\r\n\r\nexport function __decorate(decorators, target, key, desc) {\r\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\r\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\r\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\r\n return c > 3 && r && Object.defineProperty(target, key, r), r;\r\n}\r\n\r\nexport function __param(paramIndex, decorator) {\r\n return function (target, key) { decorator(target, key, paramIndex); }\r\n}\r\n\r\nexport function __metadata(metadataKey, metadataValue) {\r\n if (typeof Reflect === \"object\" && typeof Reflect.metadata === \"function\") return Reflect.metadata(metadataKey, metadataValue);\r\n}\r\n\r\nexport function __awaiter(thisArg, _arguments, P, generator) {\r\n function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }\r\n return new (P || (P = Promise))(function (resolve, reject) {\r\n function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\r\n function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\r\n function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }\r\n step((generator = generator.apply(thisArg, _arguments || [])).next());\r\n });\r\n}\r\n\r\nexport function __generator(thisArg, body) {\r\n var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;\r\n return g = { next: verb(0), \"throw\": verb(1), \"return\": verb(2) }, typeof Symbol === \"function\" && (g[Symbol.iterator] = function() { return this; }), g;\r\n function verb(n) { return function (v) { return step([n, v]); }; }\r\n function step(op) {\r\n if (f) throw new TypeError(\"Generator is already executing.\");\r\n while (_) try {\r\n if (f = 1, y && (t = op[0] & 2 ? y[\"return\"] : op[0] ? y[\"throw\"] || ((t = y[\"return\"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;\r\n if (y = 0, t) op = [op[0] & 2, t.value];\r\n switch (op[0]) {\r\n case 0: case 1: t = op; break;\r\n case 4: _.label++; return { value: op[1], done: false };\r\n case 5: _.label++; y = op[1]; op = [0]; continue;\r\n case 7: op = _.ops.pop(); _.trys.pop(); continue;\r\n default:\r\n if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }\r\n if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }\r\n if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }\r\n if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }\r\n if (t[2]) _.ops.pop();\r\n _.trys.pop(); continue;\r\n }\r\n op = body.call(thisArg, _);\r\n } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }\r\n if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };\r\n }\r\n}\r\n\r\nexport var __createBinding = Object.create ? (function(o, m, k, k2) {\r\n if (k2 === undefined) k2 = k;\r\n Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });\r\n}) : (function(o, m, k, k2) {\r\n if (k2 === undefined) k2 = k;\r\n o[k2] = m[k];\r\n});\r\n\r\nexport function __exportStar(m, exports) {\r\n for (var p in m) if (p !== \"default\" && !exports.hasOwnProperty(p)) __createBinding(exports, m, p);\r\n}\r\n\r\nexport function __values(o) {\r\n var s = typeof Symbol === \"function\" && Symbol.iterator, m = s && o[s], i = 0;\r\n if (m) return m.call(o);\r\n if (o && typeof o.length === \"number\") return {\r\n next: function () {\r\n if (o && i >= o.length) o = void 0;\r\n return { value: o && o[i++], done: !o };\r\n }\r\n };\r\n throw new TypeError(s ? \"Object is not iterable.\" : \"Symbol.iterator is not defined.\");\r\n}\r\n\r\nexport function __read(o, n) {\r\n var m = typeof Symbol === \"function\" && o[Symbol.iterator];\r\n if (!m) return o;\r\n var i = m.call(o), r, ar = [], e;\r\n try {\r\n while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);\r\n }\r\n catch (error) { e = { error: error }; }\r\n finally {\r\n try {\r\n if (r && !r.done && (m = i[\"return\"])) m.call(i);\r\n }\r\n finally { if (e) throw e.error; }\r\n }\r\n return ar;\r\n}\r\n\r\nexport function __spread() {\r\n for (var ar = [], i = 0; i < arguments.length; i++)\r\n ar = ar.concat(__read(arguments[i]));\r\n return ar;\r\n}\r\n\r\nexport function __spreadArrays() {\r\n for (var s = 0, i = 0, il = arguments.length; i < il; i++) s += arguments[i].length;\r\n for (var r = Array(s), k = 0, i = 0; i < il; i++)\r\n for (var a = arguments[i], j = 0, jl = a.length; j < jl; j++, k++)\r\n r[k] = a[j];\r\n return r;\r\n};\r\n\r\nexport function __await(v) {\r\n return this instanceof __await ? (this.v = v, this) : new __await(v);\r\n}\r\n\r\nexport function __asyncGenerator(thisArg, _arguments, generator) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var g = generator.apply(thisArg, _arguments || []), i, q = [];\r\n return i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i;\r\n function verb(n) { if (g[n]) i[n] = function (v) { return new Promise(function (a, b) { q.push([n, v, a, b]) > 1 || resume(n, v); }); }; }\r\n function resume(n, v) { try { step(g[n](v)); } catch (e) { settle(q[0][3], e); } }\r\n function step(r) { r.value instanceof __await ? Promise.resolve(r.value.v).then(fulfill, reject) : settle(q[0][2], r); }\r\n function fulfill(value) { resume(\"next\", value); }\r\n function reject(value) { resume(\"throw\", value); }\r\n function settle(f, v) { if (f(v), q.shift(), q.length) resume(q[0][0], q[0][1]); }\r\n}\r\n\r\nexport function __asyncDelegator(o) {\r\n var i, p;\r\n return i = {}, verb(\"next\"), verb(\"throw\", function (e) { throw e; }), verb(\"return\"), i[Symbol.iterator] = function () { return this; }, i;\r\n function verb(n, f) { i[n] = o[n] ? function (v) { return (p = !p) ? { value: __await(o[n](v)), done: n === \"return\" } : f ? f(v) : v; } : f; }\r\n}\r\n\r\nexport function __asyncValues(o) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var m = o[Symbol.asyncIterator], i;\r\n return m ? m.call(o) : (o = typeof __values === \"function\" ? __values(o) : o[Symbol.iterator](), i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i);\r\n function verb(n) { i[n] = o[n] && function (v) { return new Promise(function (resolve, reject) { v = o[n](v), settle(resolve, reject, v.done, v.value); }); }; }\r\n function settle(resolve, reject, d, v) { Promise.resolve(v).then(function(v) { resolve({ value: v, done: d }); }, reject); }\r\n}\r\n\r\nexport function __makeTemplateObject(cooked, raw) {\r\n if (Object.defineProperty) { Object.defineProperty(cooked, \"raw\", { value: raw }); } else { cooked.raw = raw; }\r\n return cooked;\r\n};\r\n\r\nvar __setModuleDefault = Object.create ? (function(o, v) {\r\n Object.defineProperty(o, \"default\", { enumerable: true, value: v });\r\n}) : function(o, v) {\r\n o[\"default\"] = v;\r\n};\r\n\r\nexport function __importStar(mod) {\r\n if (mod && mod.__esModule) return mod;\r\n var result = {};\r\n if (mod != null) for (var k in mod) if (Object.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);\r\n __setModuleDefault(result, mod);\r\n return result;\r\n}\r\n\r\nexport function __importDefault(mod) {\r\n return (mod && mod.__esModule) ? mod : { default: mod };\r\n}\r\n\r\nexport function __classPrivateFieldGet(receiver, privateMap) {\r\n if (!privateMap.has(receiver)) {\r\n throw new TypeError(\"attempted to get private field on non-instance\");\r\n }\r\n return privateMap.get(receiver);\r\n}\r\n\r\nexport function __classPrivateFieldSet(receiver, privateMap, value) {\r\n if (!privateMap.has(receiver)) {\r\n throw new TypeError(\"attempted to set private field on non-instance\");\r\n }\r\n privateMap.set(receiver, value);\r\n return value;\r\n}\r\n","import { Component, Input, EventEmitter, IterableDiffers, Output, OnInit, OnChanges, ɵConsole } from '@angular/core';\r\nimport { CdkDragDrop, moveItemInArray, transferArrayItem } from '@angular/cdk/drag-drop';\r\n\r\n\r\n\r\n@Component({\r\n selector: 'material-dual-listbox',\r\n templateUrl: './material-dual-listbox.component.html',\r\n styles: ['./material-dual-listbox.component.scss']\r\n})\r\nexport class MaterialDualListboxComponent implements OnInit {\r\n\r\n @Input() key = '_id';\r\n @Input() display: any = 'name';\r\n @Input() width = '360px';\r\n @Input() filter = true;\r\n @Input() searchPlaceholder: string = 'Filter'\r\n @Input() itemsTitle: string = 'Items'\r\n @Input() selectedItemsTitle: string = 'Selected Items'\r\n @Input() header = false\r\n @Input() showIcons = true\r\n @Input() addIcon: string = 'add';\r\n @Input() addIconColor: string = 'black'\r\n @Input() removeIcon: string = 'delete';\r\n @Input() removeIconColor: string = 'black'\r\n @Input() source: Array = [];\r\n @Input() destination: Array = [];\r\n @Output() destinationChange = new EventEmitter();\r\n\r\n availableFiltered: Array = []\r\n confirmedFiltered: Array = []\r\n filterText: string = null\r\n filterSelectedText: string = null\r\n\r\n constructor() {}\r\n\r\n ngOnInit() {\r\n this.update()\r\n }\r\n\r\n update() {\r\n this.filterItems(this.filterText);\r\n this.filterSelectedItems(this.filterSelectedText);\r\n }\r\n\r\n drop(event: CdkDragDrop) {\r\n if (event.previousContainer === event.container) {\r\n moveItemInArray(event.container.data, event.previousIndex, event.currentIndex);\r\n console.log(event)\r\n } else {\r\n transferArrayItem(event.previousContainer.data, event.container.data, event.previousIndex, event.currentIndex);\r\n this.destination = this.confirmedFiltered\r\n this.destinationChange.emit(this.destination);\r\n }\r\n }\r\n\r\n clickedItem(item, ...targets: string[]) {\r\n this[targets[0]] = [\r\n ...this[targets[1]].splice(this[targets[1]].indexOf(item), 1),\r\n ...this[targets[0]]\r\n ]\r\n this.destination = this.confirmedFiltered\r\n this.destinationChange.emit(this.destination);\r\n }\r\n\r\n filterItems(text: string) {\r\n this.filterText = text;\r\n if (!text) {\r\n this.availableFiltered = this.source;\r\n return;\r\n }\r\n this.availableFiltered = this.source\r\n .filter(item => item[this.display].toLowerCase().includes(text.toLowerCase()));\r\n }\r\n\r\n filterSelectedItems(text: string) {\r\n this.filterSelectedText = text;\r\n if (!text) {\r\n this.confirmedFiltered = this.destination\r\n\r\n return;\r\n }\r\n this.confirmedFiltered = this.destination.filter(item => item[this.display].toLowerCase().includes(text.toLowerCase()));\r\n }\r\n\r\n}\r\n\r\n\r\n\r\n","import { NgModule } from '@angular/core';\r\nimport { BrowserModule } from '@angular/platform-browser';\r\nimport { MaterialDualListboxComponent } from './material-dual-listbox.component';\r\nimport { MatInputModule } from '@angular/material/input'\r\nimport { MatIconModule } from '@angular/material/icon';\r\nimport { MatListModule } from '@angular/material/list';\r\nimport { FormsModule } from '@angular/forms';\r\nimport { MatFormFieldModule } from '@angular/material/form-field'\r\nimport { DragDropModule } from '@angular/cdk/drag-drop';\r\n@NgModule({\r\n declarations: [MaterialDualListboxComponent],\r\n imports: [\r\n BrowserModule,\r\n MatIconModule,\r\n MatInputModule,\r\n MatListModule,\r\n FormsModule,\r\n MatFormFieldModule,\r\n DragDropModule\r\n ],\r\n exports: [MaterialDualListboxComponent]\r\n})\r\nexport class MaterialDualListboxModule { }\r\n"]} \ No newline at end of file +{"version":3,"sources":["../../../node_modules/tslib/tslib.es6.js","../../../projects/material-dual-listbox/src/lib/material-dual-listbox.component.ts","../../../projects/material-dual-listbox/src/lib/material-dual-listbox.module.ts"],"names":["Object","create","__read","o","n","m","Symbol","iterator","r","e","i","call","ar","next","done","push","value","error","__spread","arguments","length","concat","MaterialDualListboxComponent","this","display","width","filter","searchPlaceholder","itemsTitle","selectedItemsTitle","header","showIcons","addIcon","addIconColor","removeIcon","removeIconColor","source","destination","destinationChange","EventEmitter","availableFiltered","confirmedFiltered","filterText","filterSelectedText","prototype","ngOnInit","update","filterItems","filterSelectedItems","drop","event","previousContainer","container","moveItemInArray","data","previousIndex","currentIndex","console","log","transferArrayItem","emit","clickedItem","item","_this","targets","_i","splice","findIndex","x","text","toLowerCase","includes","Component","args","selector","template","Input","Output","NgModule","declarations","imports","BrowserModule","MatIconModule","MatInputModule","MatListModule","FormsModule","MatFormFieldModule","DragDropModule","exports"],"mappings":"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","sourcesContent":["/*! *****************************************************************************\r\nCopyright (c) Microsoft Corporation.\r\n\r\nPermission to use, copy, modify, and/or distribute this software for any\r\npurpose with or without fee is hereby granted.\r\n\r\nTHE SOFTWARE IS PROVIDED \"AS IS\" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH\r\nREGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY\r\nAND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,\r\nINDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM\r\nLOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR\r\nOTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR\r\nPERFORMANCE OF THIS SOFTWARE.\r\n***************************************************************************** */\r\n/* global Reflect, Promise */\r\n\r\nvar extendStatics = function(d, b) {\r\n extendStatics = Object.setPrototypeOf ||\r\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\r\n function (d, b) { for (var p in b) if (b.hasOwnProperty(p)) d[p] = b[p]; };\r\n return extendStatics(d, b);\r\n};\r\n\r\nexport function __extends(d, b) {\r\n extendStatics(d, b);\r\n function __() { this.constructor = d; }\r\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\r\n}\r\n\r\nexport var __assign = function() {\r\n __assign = Object.assign || function __assign(t) {\r\n for (var s, i = 1, n = arguments.length; i < n; i++) {\r\n s = arguments[i];\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];\r\n }\r\n return t;\r\n }\r\n return __assign.apply(this, arguments);\r\n}\r\n\r\nexport function __rest(s, e) {\r\n var t = {};\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)\r\n t[p] = s[p];\r\n if (s != null && typeof Object.getOwnPropertySymbols === \"function\")\r\n for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {\r\n if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))\r\n t[p[i]] = s[p[i]];\r\n }\r\n return t;\r\n}\r\n\r\nexport function __decorate(decorators, target, key, desc) {\r\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\r\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\r\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\r\n return c > 3 && r && Object.defineProperty(target, key, r), r;\r\n}\r\n\r\nexport function __param(paramIndex, decorator) {\r\n return function (target, key) { decorator(target, key, paramIndex); }\r\n}\r\n\r\nexport function __metadata(metadataKey, metadataValue) {\r\n if (typeof Reflect === \"object\" && typeof Reflect.metadata === \"function\") return Reflect.metadata(metadataKey, metadataValue);\r\n}\r\n\r\nexport function __awaiter(thisArg, _arguments, P, generator) {\r\n function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }\r\n return new (P || (P = Promise))(function (resolve, reject) {\r\n function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\r\n function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\r\n function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }\r\n step((generator = generator.apply(thisArg, _arguments || [])).next());\r\n });\r\n}\r\n\r\nexport function __generator(thisArg, body) {\r\n var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;\r\n return g = { next: verb(0), \"throw\": verb(1), \"return\": verb(2) }, typeof Symbol === \"function\" && (g[Symbol.iterator] = function() { return this; }), g;\r\n function verb(n) { return function (v) { return step([n, v]); }; }\r\n function step(op) {\r\n if (f) throw new TypeError(\"Generator is already executing.\");\r\n while (_) try {\r\n if (f = 1, y && (t = op[0] & 2 ? y[\"return\"] : op[0] ? y[\"throw\"] || ((t = y[\"return\"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;\r\n if (y = 0, t) op = [op[0] & 2, t.value];\r\n switch (op[0]) {\r\n case 0: case 1: t = op; break;\r\n case 4: _.label++; return { value: op[1], done: false };\r\n case 5: _.label++; y = op[1]; op = [0]; continue;\r\n case 7: op = _.ops.pop(); _.trys.pop(); continue;\r\n default:\r\n if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }\r\n if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }\r\n if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }\r\n if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }\r\n if (t[2]) _.ops.pop();\r\n _.trys.pop(); continue;\r\n }\r\n op = body.call(thisArg, _);\r\n } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }\r\n if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };\r\n }\r\n}\r\n\r\nexport var __createBinding = Object.create ? (function(o, m, k, k2) {\r\n if (k2 === undefined) k2 = k;\r\n Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });\r\n}) : (function(o, m, k, k2) {\r\n if (k2 === undefined) k2 = k;\r\n o[k2] = m[k];\r\n});\r\n\r\nexport function __exportStar(m, exports) {\r\n for (var p in m) if (p !== \"default\" && !exports.hasOwnProperty(p)) __createBinding(exports, m, p);\r\n}\r\n\r\nexport function __values(o) {\r\n var s = typeof Symbol === \"function\" && Symbol.iterator, m = s && o[s], i = 0;\r\n if (m) return m.call(o);\r\n if (o && typeof o.length === \"number\") return {\r\n next: function () {\r\n if (o && i >= o.length) o = void 0;\r\n return { value: o && o[i++], done: !o };\r\n }\r\n };\r\n throw new TypeError(s ? \"Object is not iterable.\" : \"Symbol.iterator is not defined.\");\r\n}\r\n\r\nexport function __read(o, n) {\r\n var m = typeof Symbol === \"function\" && o[Symbol.iterator];\r\n if (!m) return o;\r\n var i = m.call(o), r, ar = [], e;\r\n try {\r\n while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);\r\n }\r\n catch (error) { e = { error: error }; }\r\n finally {\r\n try {\r\n if (r && !r.done && (m = i[\"return\"])) m.call(i);\r\n }\r\n finally { if (e) throw e.error; }\r\n }\r\n return ar;\r\n}\r\n\r\nexport function __spread() {\r\n for (var ar = [], i = 0; i < arguments.length; i++)\r\n ar = ar.concat(__read(arguments[i]));\r\n return ar;\r\n}\r\n\r\nexport function __spreadArrays() {\r\n for (var s = 0, i = 0, il = arguments.length; i < il; i++) s += arguments[i].length;\r\n for (var r = Array(s), k = 0, i = 0; i < il; i++)\r\n for (var a = arguments[i], j = 0, jl = a.length; j < jl; j++, k++)\r\n r[k] = a[j];\r\n return r;\r\n};\r\n\r\nexport function __await(v) {\r\n return this instanceof __await ? (this.v = v, this) : new __await(v);\r\n}\r\n\r\nexport function __asyncGenerator(thisArg, _arguments, generator) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var g = generator.apply(thisArg, _arguments || []), i, q = [];\r\n return i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i;\r\n function verb(n) { if (g[n]) i[n] = function (v) { return new Promise(function (a, b) { q.push([n, v, a, b]) > 1 || resume(n, v); }); }; }\r\n function resume(n, v) { try { step(g[n](v)); } catch (e) { settle(q[0][3], e); } }\r\n function step(r) { r.value instanceof __await ? Promise.resolve(r.value.v).then(fulfill, reject) : settle(q[0][2], r); }\r\n function fulfill(value) { resume(\"next\", value); }\r\n function reject(value) { resume(\"throw\", value); }\r\n function settle(f, v) { if (f(v), q.shift(), q.length) resume(q[0][0], q[0][1]); }\r\n}\r\n\r\nexport function __asyncDelegator(o) {\r\n var i, p;\r\n return i = {}, verb(\"next\"), verb(\"throw\", function (e) { throw e; }), verb(\"return\"), i[Symbol.iterator] = function () { return this; }, i;\r\n function verb(n, f) { i[n] = o[n] ? function (v) { return (p = !p) ? { value: __await(o[n](v)), done: n === \"return\" } : f ? f(v) : v; } : f; }\r\n}\r\n\r\nexport function __asyncValues(o) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var m = o[Symbol.asyncIterator], i;\r\n return m ? m.call(o) : (o = typeof __values === \"function\" ? __values(o) : o[Symbol.iterator](), i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i);\r\n function verb(n) { i[n] = o[n] && function (v) { return new Promise(function (resolve, reject) { v = o[n](v), settle(resolve, reject, v.done, v.value); }); }; }\r\n function settle(resolve, reject, d, v) { Promise.resolve(v).then(function(v) { resolve({ value: v, done: d }); }, reject); }\r\n}\r\n\r\nexport function __makeTemplateObject(cooked, raw) {\r\n if (Object.defineProperty) { Object.defineProperty(cooked, \"raw\", { value: raw }); } else { cooked.raw = raw; }\r\n return cooked;\r\n};\r\n\r\nvar __setModuleDefault = Object.create ? (function(o, v) {\r\n Object.defineProperty(o, \"default\", { enumerable: true, value: v });\r\n}) : function(o, v) {\r\n o[\"default\"] = v;\r\n};\r\n\r\nexport function __importStar(mod) {\r\n if (mod && mod.__esModule) return mod;\r\n var result = {};\r\n if (mod != null) for (var k in mod) if (Object.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);\r\n __setModuleDefault(result, mod);\r\n return result;\r\n}\r\n\r\nexport function __importDefault(mod) {\r\n return (mod && mod.__esModule) ? mod : { default: mod };\r\n}\r\n\r\nexport function __classPrivateFieldGet(receiver, privateMap) {\r\n if (!privateMap.has(receiver)) {\r\n throw new TypeError(\"attempted to get private field on non-instance\");\r\n }\r\n return privateMap.get(receiver);\r\n}\r\n\r\nexport function __classPrivateFieldSet(receiver, privateMap, value) {\r\n if (!privateMap.has(receiver)) {\r\n throw new TypeError(\"attempted to set private field on non-instance\");\r\n }\r\n privateMap.set(receiver, value);\r\n return value;\r\n}\r\n","import { Component, Input, EventEmitter, IterableDiffers, Output, OnInit, OnChanges, ɵConsole } from '@angular/core';\r\nimport { CdkDragDrop, moveItemInArray, transferArrayItem } from '@angular/cdk/drag-drop';\r\n\r\n\r\n\r\n@Component({\r\n selector: 'material-dual-listbox',\r\n templateUrl: './material-dual-listbox.component.html',\r\n styles: ['./material-dual-listbox.component.scss']\r\n})\r\nexport class MaterialDualListboxComponent implements OnInit {\r\n\r\n @Input() display: any = 'name';\r\n @Input() width = '360px';\r\n @Input() filter = true;\r\n @Input() searchPlaceholder: string = 'Filter'\r\n @Input() itemsTitle: string = 'Items'\r\n @Input() selectedItemsTitle: string = 'Selected Items'\r\n @Input() header = false\r\n @Input() showIcons = true\r\n @Input() addIcon: string = 'add';\r\n @Input() addIconColor: string = 'black'\r\n @Input() removeIcon: string = 'delete';\r\n @Input() removeIconColor: string = 'black'\r\n @Input() source: Array = [];\r\n @Input() destination: Array = [];\r\n @Output() destinationChange = new EventEmitter();\r\n\r\n availableFiltered: Array = []\r\n confirmedFiltered: Array = []\r\n filterText: string = null\r\n filterSelectedText: string = null\r\n\r\n constructor() {}\r\n\r\n ngOnInit() {\r\n this.update()\r\n }\r\n\r\n update() {\r\n this.filterItems(this.filterText);\r\n this.filterSelectedItems(this.filterSelectedText);\r\n }\r\n\r\n drop(event: CdkDragDrop) {\r\n if (event.previousContainer === event.container) {\r\n moveItemInArray(event.container.data, event.previousIndex, event.currentIndex);\r\n console.log(event)\r\n } else {\r\n transferArrayItem(event.previousContainer.data, event.container.data, event.previousIndex, event.currentIndex);\r\n this.destination = this.confirmedFiltered\r\n this.destinationChange.emit(this.destination);\r\n }\r\n }\r\n\r\n clickedItem(item: string[], ...targets: string[]) {\r\n \r\n this[targets[0]] = [\r\n ...this[targets[1]].splice(this[targets[1]].findIndex(x=>x[this.display]==item), 1),\r\n ...this[targets[0]]\r\n ]\r\n this.destination = this.confirmedFiltered\r\n this.destinationChange.emit(this.destination);\r\n }\r\n\r\n filterItems(text: string) {\r\n this.filterText = text;\r\n if (!text) {\r\n this.availableFiltered = this.source;\r\n return;\r\n }\r\n this.availableFiltered = this.source\r\n .filter(item => item[this.display].toLowerCase().includes(text.toLowerCase()));\r\n }\r\n\r\n filterSelectedItems(text: string) {\r\n this.filterSelectedText = text;\r\n if (!text) {\r\n this.confirmedFiltered = this.destination\r\n\r\n return;\r\n }\r\n this.confirmedFiltered = this.destination.filter(item => item[this.display].toLowerCase().includes(text.toLowerCase()));\r\n }\r\n\r\n}\r\n\r\n\r\n\r\n","import { NgModule } from '@angular/core';\r\nimport { BrowserModule } from '@angular/platform-browser';\r\nimport { MaterialDualListboxComponent } from './material-dual-listbox.component';\r\nimport { MatInputModule } from '@angular/material/input'\r\nimport { MatIconModule } from '@angular/material/icon';\r\nimport { MatListModule } from '@angular/material/list';\r\nimport { FormsModule } from '@angular/forms';\r\nimport { MatFormFieldModule } from '@angular/material/form-field'\r\nimport { DragDropModule } from '@angular/cdk/drag-drop';\r\n@NgModule({\r\n declarations: [MaterialDualListboxComponent],\r\n imports: [\r\n BrowserModule,\r\n MatIconModule,\r\n MatInputModule,\r\n MatListModule,\r\n FormsModule,\r\n MatFormFieldModule,\r\n DragDropModule\r\n ],\r\n exports: [MaterialDualListboxComponent]\r\n})\r\nexport class MaterialDualListboxModule { }\r\n"]} \ No newline at end of file diff --git a/dist/material-dual-listbox/esm2015/lib/material-dual-listbox.component.js b/dist/material-dual-listbox/esm2015/lib/material-dual-listbox.component.js index e9a0023..49f250d 100644 --- a/dist/material-dual-listbox/esm2015/lib/material-dual-listbox.component.js +++ b/dist/material-dual-listbox/esm2015/lib/material-dual-listbox.component.js @@ -2,7 +2,6 @@ import { Component, Input, EventEmitter, Output } from '@angular/core'; import { moveItemInArray, transferArrayItem } from '@angular/cdk/drag-drop'; export class MaterialDualListboxComponent { constructor() { - this.key = '_id'; this.display = 'name'; this.width = '360px'; this.filter = true; @@ -43,7 +42,7 @@ export class MaterialDualListboxComponent { } clickedItem(item, ...targets) { this[targets[0]] = [ - ...this[targets[1]].splice(this[targets[1]].indexOf(item), 1), + ...this[targets[1]].splice(this[targets[1]].findIndex(x => x[this.display] == item), 1), ...this[targets[0]] ]; this.destination = this.confirmedFiltered; @@ -70,13 +69,12 @@ export class MaterialDualListboxComponent { MaterialDualListboxComponent.decorators = [ { type: Component, args: [{ selector: 'material-dual-listbox', - template: "\r\n\r\n\r\n
\r\n\r\n
\r\n
\r\n

{{itemsTitle}}

\r\n \r\n {{searchPlaceholder}} {{itemsTitle}}\r\n \r\n {{searchPlaceholder}} {{itemsTitle}}\r\n\r\n \r\n
\r\n
{{addIcon}} {{item[display]}}
\r\n
\r\n\r\n
\r\n
\r\n

{{selectedItemsTitle}}

\r\n \r\n {{searchPlaceholder}} {{selectedItemsTitle}}\r\n \r\n {{searchPlaceholder}} {{itemsTitle}}\r\n \r\n
\r\n
{{removeIcon}} {{item[display]}}
\r\n
\r\n
\r\n \r\n
\r\n
", + template: "\r\n\r\n\r\n
\r\n\r\n
\r\n
\r\n

{{itemsTitle}}

\r\n \r\n {{searchPlaceholder}} {{itemsTitle}}\r\n \r\n {{searchPlaceholder}} {{itemsTitle}}\r\n\r\n \r\n
\r\n
{{addIcon}} {{item[display]}}
\r\n
\r\n\r\n
\r\n
\r\n

{{selectedItemsTitle}}

\r\n \r\n {{searchPlaceholder}} {{selectedItemsTitle}}\r\n \r\n {{searchPlaceholder}} {{itemsTitle}}\r\n \r\n
\r\n
{{removeIcon}} {{item[display]}}
\r\n
\r\n
\r\n \r\n
\r\n
", styles: ['./material-dual-listbox.component.scss'] },] } ]; MaterialDualListboxComponent.ctorParameters = () => []; MaterialDualListboxComponent.propDecorators = { - key: [{ type: Input }], display: [{ type: Input }], width: [{ type: Input }], filter: [{ type: Input }], @@ -93,4 +91,4 @@ MaterialDualListboxComponent.propDecorators = { destination: [{ type: Input }], destinationChange: [{ type: Output }] }; -//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWF0ZXJpYWwtZHVhbC1saXN0Ym94LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3Byb2plY3RzL21hdGVyaWFsLWR1YWwtbGlzdGJveC9zcmMvbGliL21hdGVyaWFsLWR1YWwtbGlzdGJveC5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQUUsWUFBWSxFQUFtQixNQUFNLEVBQStCLE1BQU0sZUFBZSxDQUFDO0FBQ3JILE9BQU8sRUFBZSxlQUFlLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQVN6RixNQUFNLE9BQU8sNEJBQTRCO0lBd0J2QztRQXRCUyxRQUFHLEdBQUcsS0FBSyxDQUFDO1FBQ1osWUFBTyxHQUFRLE1BQU0sQ0FBQztRQUN0QixVQUFLLEdBQUcsT0FBTyxDQUFDO1FBQ2hCLFdBQU0sR0FBRyxJQUFJLENBQUM7UUFDZCxzQkFBaUIsR0FBVyxRQUFRLENBQUE7UUFDcEMsZUFBVSxHQUFXLE9BQU8sQ0FBQTtRQUM1Qix1QkFBa0IsR0FBVyxnQkFBZ0IsQ0FBQTtRQUM3QyxXQUFNLEdBQUcsS0FBSyxDQUFBO1FBQ2QsY0FBUyxHQUFHLElBQUksQ0FBQTtRQUNoQixZQUFPLEdBQVcsS0FBSyxDQUFDO1FBQ3hCLGlCQUFZLEdBQVcsT0FBTyxDQUFBO1FBQzlCLGVBQVUsR0FBVyxRQUFRLENBQUM7UUFDOUIsb0JBQWUsR0FBVyxPQUFPLENBQUE7UUFDakMsV0FBTSxHQUFlLEVBQUUsQ0FBQztRQUN4QixnQkFBVyxHQUFlLEVBQUUsQ0FBQztRQUM1QixzQkFBaUIsR0FBRyxJQUFJLFlBQVksRUFBRSxDQUFDO1FBRWpELHNCQUFpQixHQUFlLEVBQUUsQ0FBQTtRQUNsQyxzQkFBaUIsR0FBZSxFQUFFLENBQUE7UUFDbEMsZUFBVSxHQUFXLElBQUksQ0FBQTtRQUN6Qix1QkFBa0IsR0FBVyxJQUFJLENBQUE7SUFF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c0JBQ0wsS0FBSztvQkFDTCxLQUFLO3FCQUNMLEtBQUs7Z0NBQ0wsS0FBSzt5QkFDTCxLQUFLO2lDQUNMLEtBQUs7cUJBQ0wsS0FBSzt3QkFDTCxLQUFLO3NCQUNMLEtBQUs7MkJBQ0wsS0FBSzt5QkFDTCxLQUFLOzhCQUNMLEtBQUs7cUJBQ0wsS0FBSzswQkFDTCxLQUFLO2dDQUNMLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIElucHV0LCBFdmVudEVtaXR0ZXIsIEl0ZXJhYmxlRGlmZmVycywgT3V0cHV0LCBPbkluaXQsIE9uQ2hhbmdlcywgybVDb25zb2xlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IENka0RyYWdEcm9wLCBtb3ZlSXRlbUluQXJyYXksIHRyYW5zZmVyQXJyYXlJdGVtIH0gZnJvbSAnQGFuZ3VsYXIvY2RrL2RyYWctZHJvcCc7XHJcblxyXG5cclxuXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiAnbWF0ZXJpYWwtZHVhbC1saXN0Ym94JyxcclxuICB0ZW1wbGF0ZVVybDogJy4vbWF0ZXJpYWwtZHVhbC1saXN0Ym94LmNvbXBvbmVudC5odG1sJyxcclxuICBzdHlsZXM6IFsnLi9tYXRlcmlhbC1kdWFsLWxpc3Rib3guY29tcG9uZW50LnNjc3MnXVxyXG59KVxyXG5leHBvcnQgY2xhc3MgTWF0ZXJpYWxEdWFsTGlzdGJveENvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCB7XHJcblxyXG4gIEBJbnB1dCgpIGtleSA9ICdfaWQnO1xyXG4gIEBJbnB1dCgpIGRpc3BsYXk6IGFueSA9ICduYW1lJztcclxuICBASW5wdXQoKSB3aWR0aCA9ICczNjBweCc7XHJcbiAgQElucHV0KCkgZmlsdGVyID0gdHJ1ZTtcclxuICBASW5wdXQoKSBzZWFyY2hQbGFjZWhvbGRlcjogc3RyaW5nID0gJ0ZpbHRlcidcclxuICBASW5wdXQoKSBpdGVtc1RpdGxlOiBzdHJpbmcgPSAnSXRlbXMnXHJcbiAgQElucHV0KCkgc2VsZWN0ZWRJdGVtc1RpdGxlOiBzdHJpbmcgPSAnU2VsZWN0ZWQgSXRlbXMnXHJcbiAgQElucHV0KCkgaGVhZGVyID0gZmFsc2VcclxuICBASW5wdXQoKSBzaG93SWNvbnMgPSB0cnVlXHJcbiAgQElucHV0KCkgYWRkSWNvbjogc3RyaW5nID0gJ2FkZCc7XHJcbiAgQElucHV0KCkgYWRkSWNvbkNvbG9yOiBzdHJpbmcgPSAnYmxhY2snXHJcbiAgQElucHV0KCkgcmVtb3ZlSWNvbjogc3RyaW5nID0gJ2RlbGV0ZSc7XHJcbiAgQElucHV0KCkgcmVtb3ZlSWNvbkNvbG9yOiBzdHJpbmcgPSAnYmxhY2snXHJcbiAgQElucHV0KCkgc291cmNlOiBBcnJheTxhbnk+ID0gW107XHJcbiAgQElucHV0KCkgZGVzdGluYXRpb246IEFycmF5PGFueT4gPSBbXTtcclxuICBAT3V0cHV0KCkgZGVzdGluYXRpb25DaGFuZ2UgPSBuZXcgRXZlbnRFbWl0dGVyKCk7XHJcblxyXG4gIGF2YWlsYWJsZUZpbHRlcmVkOiBBcnJheTxhbnk+ID0gW11cclxuICBjb25maXJtZWRGaWx0ZXJlZDogQXJyYXk8YW55PiA9IFtdXHJcbiAgZmlsdGVyVGV4dDogc3RyaW5nID0gbnVsbFxyXG4gIGZpbHRlclNlbGVjdGVkVGV4dDogc3RyaW5nID0gbnVsbFxyXG5cclxuICBjb25zdHJ1Y3RvcigpIHt9XHJcblxyXG4gIG5nT25Jbml0KCkge1xyXG4gICAgdGhpcy51cGRhdGUoKVxyXG4gIH1cclxuXHJcbiAgdXBkYXRlKCkge1xyXG4gICAgdGhpcy5maWx0ZXJJdGVtcyh0aGlzLmZpbHRlclRleHQpO1xyXG4gICAgdGhpcy5maWx0ZXJTZWxlY3RlZEl0ZW1zKHRoaXMuZmlsdGVyU2VsZWN0ZWRUZXh0KTtcclxuICB9XHJcblxyXG4gIGRyb3AoZXZlbnQ6IENka0RyYWdEcm9wPHN0cmluZ1tdPikge1xyXG4gICAgaWYgKGV2ZW50LnByZXZpb3VzQ29udGFpbmVyID09PSBldmVudC5jb250YWluZXIpIHtcclxuICAgICAgbW92ZUl0ZW1JbkFycmF5KGV2ZW50LmNvbnRhaW5lci5kYXRhLCBldmVudC5wcmV2aW91c0luZGV4LCBldmVudC5jdXJyZW50SW5kZXgpO1xyXG4gICAgICBjb25zb2xlLmxvZyhldmVudClcclxuICAgIH0gZWxzZSB7XHJcbiAgICAgIHRyYW5zZmVyQXJyYXlJdGVtKGV2ZW50LnByZXZpb3VzQ29udGFpbmVyLmRhdGEsIGV2ZW50LmNvbnRhaW5lci5kYXRhLCBldmVudC5wcmV2aW91c0luZGV4LCBldmVudC5jdXJyZW50SW5kZXgpO1xyXG4gICAgICB0aGlzLmRlc3RpbmF0aW9uID0gdGhpcy5jb25maXJtZWRGaWx0ZXJlZFxyXG4gICAgICB0aGlzLmRlc3RpbmF0aW9uQ2hhbmdlLmVtaXQodGhpcy5kZXN0aW5hdGlvbik7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBjbGlja2VkSXRlbShpdGVtLCAuLi50YXJnZXRzOiBzdHJpbmdbXSkge1xyXG4gICAgdGhpc1t0YXJnZXRzWzBdXSA9IFtcclxuICAgICAgLi4udGhpc1t0YXJnZXRzWzFdXS5zcGxpY2UodGhpc1t0YXJnZXRzWzFdXS5pbmRleE9mKGl0ZW0pLCAxKSxcclxuICAgICAgLi4udGhpc1t0YXJnZXRzWzBdXVxyXG4gICAgXVxyXG4gICAgdGhpcy5kZXN0aW5hdGlvbiA9IHRoaXMuY29uZmlybWVkRmlsdGVyZWRcclxuICAgIHRoaXMuZGVzdGluYXRpb25DaGFuZ2UuZW1pdCh0aGlzLmRlc3RpbmF0aW9uKTtcclxuICB9XHJcblxyXG4gIGZpbHRlckl0ZW1zKHRleHQ6IHN0cmluZykge1xyXG4gICAgdGhpcy5maWx0ZXJUZXh0ID0gdGV4dDtcclxuICAgIGlmICghdGV4dCkge1xyXG4gICAgICB0aGlzLmF2YWlsYWJsZUZpbHRlcmVkID0gdGhpcy5zb3VyY2U7XHJcbiAgICAgIHJldHVybjtcclxuICAgIH1cclxuICAgIHRoaXMuYXZhaWxhYmxlRmlsdGVyZWQgPSB0aGlzLnNvdXJjZVxyXG4gICAgICAuZmlsdGVyKGl0ZW0gPT4gaXRlbVt0aGlzLmRpc3BsYXldLnRvTG93ZXJDYXNlKCkuaW5jbHVkZXModGV4dC50b0xvd2VyQ2FzZSgpKSk7XHJcbiAgfVxyXG5cclxuICBmaWx0ZXJTZWxlY3RlZEl0ZW1zKHRleHQ6IHN0cmluZykge1xyXG4gICAgdGhpcy5maWx0ZXJTZWxlY3RlZFRleHQgPSB0ZXh0O1xyXG4gICAgaWYgKCF0ZXh0KSB7XHJcbiAgICAgIHRoaXMuY29uZmlybWVkRmlsdGVyZWQgPSB0aGlzLmRlc3RpbmF0aW9uXHJcblxyXG4gICAgICByZXR1cm47XHJcbiAgICB9XHJcbiAgICB0aGlzLmNvbmZpcm1lZEZpbHRlcmVkID0gdGhpcy5kZXN0aW5hdGlvbi5maWx0ZXIoaXRlbSA9PiBpdGVtW3RoaXMuZGlzcGxheV0udG9Mb3dlckNhc2UoKS5pbmNsdWRlcyh0ZXh0LnRvTG93ZXJDYXNlKCkpKTtcclxuICB9XHJcblxyXG59XHJcblxyXG5cclxuXHJcbiJdfQ== \ No newline at end of file +//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWF0ZXJpYWwtZHVhbC1saXN0Ym94LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3Byb2plY3RzL21hdGVyaWFsLWR1YWwtbGlzdGJveC9zcmMvbGliL21hdGVyaWFsLWR1YWwtbGlzdGJveC5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQUUsWUFBWSxFQUFtQixNQUFNLEVBQStCLE1BQU0sZUFBZSxDQUFDO0FBQ3JILE9BQU8sRUFBZSxlQUFlLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQVN6RixNQUFNLE9BQU8sNEJBQTRCO0lBdUJ2QztRQXJCUyxZQUFPLEdBQVEsTUFBTSxDQUFDO1FBQ3RCLFVBQUssR0FBRyxPQUFPLENBQUM7UUFDaEIsV0FBTSxHQUFHLElBQUksQ0FBQztRQUNkLHNCQUFpQixHQUFXLFFBQVEsQ0FBQTtRQUNwQyxlQUFVLEdBQVcsT0FBTyxDQUFBO1FBQzVCLHVCQUFrQixHQUFXLGdCQUFnQixDQUFBO1FBQzdDLFdBQU0sR0FBRyxLQUFLLENBQUE7UUFDZCxjQUFTLEdBQUcsSUFBSSxDQUFBO1FBQ2hCLFlBQU8sR0FBVyxLQUFLLENBQUM7UUFDeEIsaUJBQVksR0FBVyxPQUFPLENBQUE7UUFDOUIsZUFBVSxHQUFXLFFBQVEsQ0FBQztRQUM5QixvQkFBZSxHQUFXLE9BQU8sQ0FBQTtRQUNqQyxXQUFNLEdBQWUsRUFBRSxDQUFDO1FBQ3hCLGdCQUFXLEdBQWUsRUFBRSxDQUFDO1FBQzVCLHNCQUFpQixHQUFHLElBQUksWUFBWSxFQUFFLENBQUM7UUFFakQsc0JBQWlCLEdBQWUsRUFBRSxDQUFBO1FBQ2xDLHNCQUFpQixHQUFlLEVBQUUsQ0FBQTtRQUNsQyxlQUFVLEdBQVcsSUFBSSxDQUFBO1FBQ3pCLHVCQUFrQixHQUFXLElBQUksQ0FBQTtJQUVsQixDQUFDO0lBRWhCLFFBQVE7UUFDTixJ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NUMsd0NBQXdDO2FBQ2xEOzs7O3NCQUdFLEtBQUs7b0JBQ0wsS0FBSztxQkFDTCxLQUFLO2dDQUNMLEtBQUs7eUJBQ0wsS0FBSztpQ0FDTCxLQUFLO3FCQUNMLEtBQUs7d0JBQ0wsS0FBSztzQkFDTCxLQUFLOzJCQUNMLEtBQUs7eUJBQ0wsS0FBSzs4QkFDTCxLQUFLO3FCQUNMLEtBQUs7MEJBQ0wsS0FBSztnQ0FDTCxNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBJbnB1dCwgRXZlbnRFbWl0dGVyLCBJdGVyYWJsZURpZmZlcnMsIE91dHB1dCwgT25Jbml0LCBPbkNoYW5nZXMsIMm1Q29uc29sZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBDZGtEcmFnRHJvcCwgbW92ZUl0ZW1JbkFycmF5LCB0cmFuc2ZlckFycmF5SXRlbSB9IGZyb20gJ0Bhbmd1bGFyL2Nkay9kcmFnLWRyb3AnO1xyXG5cclxuXHJcblxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogJ21hdGVyaWFsLWR1YWwtbGlzdGJveCcsXHJcbiAgdGVtcGxhdGVVcmw6ICcuL21hdGVyaWFsLWR1YWwtbGlzdGJveC5jb21wb25lbnQuaHRtbCcsXHJcbiAgc3R5bGVzOiBbJy4vbWF0ZXJpYWwtZHVhbC1saXN0Ym94LmNvbXBvbmVudC5zY3NzJ11cclxufSlcclxuZXhwb3J0IGNsYXNzIE1hdGVyaWFsRHVhbExpc3Rib3hDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQge1xyXG5cclxuICBASW5wdXQoKSBkaXNwbGF5OiBhbnkgPSAnbmFtZSc7XHJcbiAgQElucHV0KCkgd2lkdGggPSAnMzYwcHgnO1xyXG4gIEBJbnB1dCgpIGZpbHRlciA9IHRydWU7XHJcbiAgQElucHV0KCkgc2VhcmNoUGxhY2Vob2xkZXI6IHN0cmluZyA9ICdGaWx0ZXInXHJcbiAgQElucHV0KCkgaXRlbXNUaXRsZTogc3RyaW5nID0gJ0l0ZW1zJ1xyXG4gIEBJbnB1dCgpIHNlbGVjdGVkSXRlbXNUaXRsZTogc3RyaW5nID0gJ1NlbGVjdGVkIEl0ZW1zJ1xyXG4gIEBJbnB1dCgpIGhlYWRlciA9IGZhbHNlXHJcbiAgQElucHV0KCkgc2hvd0ljb25zID0gdHJ1ZVxyXG4gIEBJbnB1dCgpIGFkZEljb246IHN0cmluZyA9ICdhZGQnO1xyXG4gIEBJbnB1dCgpIGFkZEljb25Db2xvcjogc3RyaW5nID0gJ2JsYWNrJ1xyXG4gIEBJbnB1dCgpIHJlbW92ZUljb246IHN0cmluZyA9ICdkZWxldGUnO1xyXG4gIEBJbnB1dCgpIHJlbW92ZUljb25Db2xvcjogc3RyaW5nID0gJ2JsYWNrJ1xyXG4gIEBJbnB1dCgpIHNvdXJjZTogQXJyYXk8YW55PiA9IFtdO1xyXG4gIEBJbnB1dCgpIGRlc3RpbmF0aW9uOiBBcnJheTxhbnk+ID0gW107XHJcbiAgQE91dHB1dCgpIGRlc3RpbmF0aW9uQ2hhbmdlID0gbmV3IEV2ZW50RW1pdHRlcigpO1xyXG5cclxuICBhdmFpbGFibGVGaWx0ZXJlZDogQXJyYXk8YW55PiA9IFtdXHJcbiAgY29uZmlybWVkRmlsdGVyZWQ6IEFycmF5PGFueT4gPSBbXVxyXG4gIGZpbHRlclRleHQ6IHN0cmluZyA9IG51bGxcclxuICBmaWx0ZXJTZWxlY3RlZFRleHQ6IHN0cmluZyA9IG51bGxcclxuXHJcbiAgY29uc3RydWN0b3IoKSB7fVxyXG5cclxuICBuZ09uSW5pdCgpIHtcclxuICAgIHRoaXMudXBkYXRlKClcclxuICB9XHJcblxyXG4gIHVwZGF0ZSgpIHtcclxuICAgIHRoaXMuZmlsdGVySXRlbXModGhpcy5maWx0ZXJUZXh0KTtcclxuICAgIHRoaXMuZmlsdGVyU2VsZWN0ZWRJdGVtcyh0aGlzLmZpbHRlclNlbGVjdGVkVGV4dCk7XHJcbiAgfVxyXG5cclxuICBkcm9wKGV2ZW50OiBDZGtEcmFnRHJvcDxzdHJpbmdbXT4pIHtcclxuICAgIGlmIChldmVudC5wcmV2aW91c0NvbnRhaW5lciA9PT0gZXZlbnQuY29udGFpbmVyKSB7XHJcbiAgICAgIG1vdmVJdGVtSW5BcnJheShldmVudC5jb250YWluZXIuZGF0YSwgZXZlbnQucHJldmlvdXNJbmRleCwgZXZlbnQuY3VycmVudEluZGV4KTtcclxuICAgICAgY29uc29sZS5sb2coZXZlbnQpXHJcbiAgICB9IGVsc2Uge1xyXG4gICAgICB0cmFuc2ZlckFycmF5SXRlbShldmVudC5wcmV2aW91c0NvbnRhaW5lci5kYXRhLCBldmVudC5jb250YWluZXIuZGF0YSwgZXZlbnQucHJldmlvdXNJbmRleCwgZXZlbnQuY3VycmVudEluZGV4KTtcclxuICAgICAgdGhpcy5kZXN0aW5hdGlvbiA9IHRoaXMuY29uZmlybWVkRmlsdGVyZWRcclxuICAgICAgdGhpcy5kZXN0aW5hdGlvbkNoYW5nZS5lbWl0KHRoaXMuZGVzdGluYXRpb24pO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgY2xpY2tlZEl0ZW0oaXRlbTogc3RyaW5nW10sIC4uLnRhcmdldHM6IHN0cmluZ1tdKSB7XHJcbiAgICBcclxuICAgIHRoaXNbdGFyZ2V0c1swXV0gPSBbXHJcbiAgICAgIC4uLnRoaXNbdGFyZ2V0c1sxXV0uc3BsaWNlKHRoaXNbdGFyZ2V0c1sxXV0uZmluZEluZGV4KHg9PnhbdGhpcy5kaXNwbGF5XT09aXRlbSksIDEpLFxyXG4gICAgICAuLi50aGlzW3RhcmdldHNbMF1dXHJcbiAgICBdXHJcbiAgICB0aGlzLmRlc3RpbmF0aW9uID0gdGhpcy5jb25maXJtZWRGaWx0ZXJlZFxyXG4gICAgdGhpcy5kZXN0aW5hdGlvbkNoYW5nZS5lbWl0KHRoaXMuZGVzdGluYXRpb24pO1xyXG4gIH1cclxuXHJcbiAgZmlsdGVySXRlbXModGV4dDogc3RyaW5nKSB7XHJcbiAgICB0aGlzLmZpbHRlclRleHQgPSB0ZXh0O1xyXG4gICAgaWYgKCF0ZXh0KSB7XHJcbiAgICAgIHRoaXMuYXZhaWxhYmxlRmlsdGVyZWQgPSB0aGlzLnNvdXJjZTtcclxuICAgICAgcmV0dXJuO1xyXG4gICAgfVxyXG4gICAgdGhpcy5hdmFpbGFibGVGaWx0ZXJlZCA9IHRoaXMuc291cmNlXHJcbiAgICAgIC5maWx0ZXIoaXRlbSA9PiBpdGVtW3RoaXMuZGlzcGxheV0udG9Mb3dlckNhc2UoKS5pbmNsdWRlcyh0ZXh0LnRvTG93ZXJDYXNlKCkpKTtcclxuICB9XHJcblxyXG4gIGZpbHRlclNlbGVjdGVkSXRlbXModGV4dDogc3RyaW5nKSB7XHJcbiAgICB0aGlzLmZpbHRlclNlbGVjdGVkVGV4dCA9IHRleHQ7XHJcbiAgICBpZiAoIXRleHQpIHtcclxuICAgICAgdGhpcy5jb25maXJtZWRGaWx0ZXJlZCA9IHRoaXMuZGVzdGluYXRpb25cclxuXHJcbiAgICAgIHJldHVybjtcclxuICAgIH1cclxuICAgIHRoaXMuY29uZmlybWVkRmlsdGVyZWQgPSB0aGlzLmRlc3RpbmF0aW9uLmZpbHRlcihpdGVtID0+IGl0ZW1bdGhpcy5kaXNwbGF5XS50b0xvd2VyQ2FzZSgpLmluY2x1ZGVzKHRleHQudG9Mb3dlckNhc2UoKSkpO1xyXG4gIH1cclxuXHJcbn1cclxuXHJcblxyXG5cclxuIl19 \ No newline at end of file diff --git a/dist/material-dual-listbox/fesm2015/material-dual-listbox.js b/dist/material-dual-listbox/fesm2015/material-dual-listbox.js index 7795562..5c4c831 100644 --- a/dist/material-dual-listbox/fesm2015/material-dual-listbox.js +++ b/dist/material-dual-listbox/fesm2015/material-dual-listbox.js @@ -9,7 +9,6 @@ import { MatFormFieldModule } from '@angular/material/form-field'; class MaterialDualListboxComponent { constructor() { - this.key = '_id'; this.display = 'name'; this.width = '360px'; this.filter = true; @@ -50,7 +49,7 @@ class MaterialDualListboxComponent { } clickedItem(item, ...targets) { this[targets[0]] = [ - ...this[targets[1]].splice(this[targets[1]].indexOf(item), 1), + ...this[targets[1]].splice(this[targets[1]].findIndex(x => x[this.display] == item), 1), ...this[targets[0]] ]; this.destination = this.confirmedFiltered; @@ -77,13 +76,12 @@ class MaterialDualListboxComponent { MaterialDualListboxComponent.decorators = [ { type: Component, args: [{ selector: 'material-dual-listbox', - template: "\r\n\r\n\r\n
\r\n\r\n
\r\n
\r\n

{{itemsTitle}}

\r\n \r\n {{searchPlaceholder}} {{itemsTitle}}\r\n \r\n {{searchPlaceholder}} {{itemsTitle}}\r\n\r\n \r\n
\r\n
{{addIcon}} {{item[display]}}
\r\n
\r\n\r\n
\r\n
\r\n

{{selectedItemsTitle}}

\r\n \r\n {{searchPlaceholder}} {{selectedItemsTitle}}\r\n \r\n {{searchPlaceholder}} {{itemsTitle}}\r\n \r\n
\r\n
{{removeIcon}} {{item[display]}}
\r\n
\r\n
\r\n \r\n
\r\n
", + template: "\r\n\r\n\r\n
\r\n\r\n
\r\n
\r\n

{{itemsTitle}}

\r\n \r\n {{searchPlaceholder}} {{itemsTitle}}\r\n \r\n {{searchPlaceholder}} {{itemsTitle}}\r\n\r\n \r\n
\r\n
{{addIcon}} {{item[display]}}
\r\n
\r\n\r\n
\r\n
\r\n

{{selectedItemsTitle}}

\r\n \r\n {{searchPlaceholder}} {{selectedItemsTitle}}\r\n \r\n {{searchPlaceholder}} {{itemsTitle}}\r\n \r\n
\r\n
{{removeIcon}} {{item[display]}}
\r\n
\r\n
\r\n \r\n
\r\n
", styles: ['./material-dual-listbox.component.scss'] },] } ]; MaterialDualListboxComponent.ctorParameters = () => []; MaterialDualListboxComponent.propDecorators = { - key: [{ type: Input }], display: [{ type: Input }], width: [{ type: Input }], filter: [{ type: Input }], diff --git a/dist/material-dual-listbox/fesm2015/material-dual-listbox.js.map b/dist/material-dual-listbox/fesm2015/material-dual-listbox.js.map index ebaebcc..c2f1423 100644 --- a/dist/material-dual-listbox/fesm2015/material-dual-listbox.js.map +++ b/dist/material-dual-listbox/fesm2015/material-dual-listbox.js.map @@ -1 +1 @@ -{"version":3,"file":"material-dual-listbox.js","sources":["../../../projects/material-dual-listbox/src/lib/material-dual-listbox.component.ts","../../../projects/material-dual-listbox/src/lib/material-dual-listbox.module.ts","../../../projects/material-dual-listbox/src/public-api.ts","../../../projects/material-dual-listbox/src/material-dual-listbox.ts"],"sourcesContent":["import { Component, Input, EventEmitter, IterableDiffers, Output, OnInit, OnChanges, ɵConsole } from '@angular/core';\r\nimport { CdkDragDrop, moveItemInArray, transferArrayItem } from '@angular/cdk/drag-drop';\r\n\r\n\r\n\r\n@Component({\r\n selector: 'material-dual-listbox',\r\n templateUrl: './material-dual-listbox.component.html',\r\n styles: ['./material-dual-listbox.component.scss']\r\n})\r\nexport class MaterialDualListboxComponent implements OnInit {\r\n\r\n @Input() key = '_id';\r\n @Input() display: any = 'name';\r\n @Input() width = '360px';\r\n @Input() filter = true;\r\n @Input() searchPlaceholder: string = 'Filter'\r\n @Input() itemsTitle: string = 'Items'\r\n @Input() selectedItemsTitle: string = 'Selected Items'\r\n @Input() header = false\r\n @Input() showIcons = true\r\n @Input() addIcon: string = 'add';\r\n @Input() addIconColor: string = 'black'\r\n @Input() removeIcon: string = 'delete';\r\n @Input() removeIconColor: string = 'black'\r\n @Input() source: Array = [];\r\n @Input() destination: Array = [];\r\n @Output() destinationChange = new EventEmitter();\r\n\r\n availableFiltered: Array = []\r\n confirmedFiltered: Array = []\r\n filterText: string = null\r\n filterSelectedText: string = null\r\n\r\n constructor() {}\r\n\r\n ngOnInit() {\r\n this.update()\r\n }\r\n\r\n update() {\r\n this.filterItems(this.filterText);\r\n this.filterSelectedItems(this.filterSelectedText);\r\n }\r\n\r\n drop(event: CdkDragDrop) {\r\n if (event.previousContainer === event.container) {\r\n moveItemInArray(event.container.data, event.previousIndex, event.currentIndex);\r\n console.log(event)\r\n } else {\r\n transferArrayItem(event.previousContainer.data, event.container.data, event.previousIndex, event.currentIndex);\r\n this.destination = this.confirmedFiltered\r\n this.destinationChange.emit(this.destination);\r\n }\r\n }\r\n\r\n clickedItem(item, ...targets: string[]) {\r\n this[targets[0]] = [\r\n ...this[targets[1]].splice(this[targets[1]].indexOf(item), 1),\r\n ...this[targets[0]]\r\n ]\r\n this.destination = this.confirmedFiltered\r\n this.destinationChange.emit(this.destination);\r\n }\r\n\r\n filterItems(text: string) {\r\n this.filterText = text;\r\n if (!text) {\r\n this.availableFiltered = this.source;\r\n return;\r\n }\r\n this.availableFiltered = this.source\r\n .filter(item => item[this.display].toLowerCase().includes(text.toLowerCase()));\r\n }\r\n\r\n filterSelectedItems(text: string) {\r\n this.filterSelectedText = text;\r\n if (!text) {\r\n this.confirmedFiltered = this.destination\r\n\r\n return;\r\n }\r\n this.confirmedFiltered = this.destination.filter(item => item[this.display].toLowerCase().includes(text.toLowerCase()));\r\n }\r\n\r\n}\r\n\r\n\r\n\r\n","import { NgModule } from '@angular/core';\r\nimport { BrowserModule } from '@angular/platform-browser';\r\nimport { MaterialDualListboxComponent } from './material-dual-listbox.component';\r\nimport { MatInputModule } from '@angular/material/input'\r\nimport { MatIconModule } from '@angular/material/icon';\r\nimport { MatListModule } from '@angular/material/list';\r\nimport { FormsModule } from '@angular/forms';\r\nimport { MatFormFieldModule } from '@angular/material/form-field'\r\nimport { DragDropModule } from '@angular/cdk/drag-drop';\r\n@NgModule({\r\n declarations: [MaterialDualListboxComponent],\r\n imports: [\r\n BrowserModule,\r\n MatIconModule,\r\n MatInputModule,\r\n MatListModule,\r\n FormsModule,\r\n MatFormFieldModule,\r\n DragDropModule\r\n ],\r\n exports: [MaterialDualListboxComponent]\r\n})\r\nexport class MaterialDualListboxModule { }\r\n","/*\r\n * Public API Surface of material-dual-listbox\r\n */\r\n\r\nexport * from './lib/material-dual-listbox.component';\r\nexport * from './lib/material-dual-listbox.module';\r\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":"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"} \ No newline at end of file +{"version":3,"file":"material-dual-listbox.js","sources":["../../../projects/material-dual-listbox/src/lib/material-dual-listbox.component.ts","../../../projects/material-dual-listbox/src/lib/material-dual-listbox.module.ts","../../../projects/material-dual-listbox/src/public-api.ts","../../../projects/material-dual-listbox/src/material-dual-listbox.ts"],"sourcesContent":["import { Component, Input, EventEmitter, IterableDiffers, Output, OnInit, OnChanges, ɵConsole } from '@angular/core';\r\nimport { CdkDragDrop, moveItemInArray, transferArrayItem } from '@angular/cdk/drag-drop';\r\n\r\n\r\n\r\n@Component({\r\n selector: 'material-dual-listbox',\r\n templateUrl: './material-dual-listbox.component.html',\r\n styles: ['./material-dual-listbox.component.scss']\r\n})\r\nexport class MaterialDualListboxComponent implements OnInit {\r\n\r\n @Input() display: any = 'name';\r\n @Input() width = '360px';\r\n @Input() filter = true;\r\n @Input() searchPlaceholder: string = 'Filter'\r\n @Input() itemsTitle: string = 'Items'\r\n @Input() selectedItemsTitle: string = 'Selected Items'\r\n @Input() header = false\r\n @Input() showIcons = true\r\n @Input() addIcon: string = 'add';\r\n @Input() addIconColor: string = 'black'\r\n @Input() removeIcon: string = 'delete';\r\n @Input() removeIconColor: string = 'black'\r\n @Input() source: Array = [];\r\n @Input() destination: Array = [];\r\n @Output() destinationChange = new EventEmitter();\r\n\r\n availableFiltered: Array = []\r\n confirmedFiltered: Array = []\r\n filterText: string = null\r\n filterSelectedText: string = null\r\n\r\n constructor() {}\r\n\r\n ngOnInit() {\r\n this.update()\r\n }\r\n\r\n update() {\r\n this.filterItems(this.filterText);\r\n this.filterSelectedItems(this.filterSelectedText);\r\n }\r\n\r\n drop(event: CdkDragDrop) {\r\n if (event.previousContainer === event.container) {\r\n moveItemInArray(event.container.data, event.previousIndex, event.currentIndex);\r\n console.log(event)\r\n } else {\r\n transferArrayItem(event.previousContainer.data, event.container.data, event.previousIndex, event.currentIndex);\r\n this.destination = this.confirmedFiltered\r\n this.destinationChange.emit(this.destination);\r\n }\r\n }\r\n\r\n clickedItem(item: string[], ...targets: string[]) {\r\n \r\n this[targets[0]] = [\r\n ...this[targets[1]].splice(this[targets[1]].findIndex(x=>x[this.display]==item), 1),\r\n ...this[targets[0]]\r\n ]\r\n this.destination = this.confirmedFiltered\r\n this.destinationChange.emit(this.destination);\r\n }\r\n\r\n filterItems(text: string) {\r\n this.filterText = text;\r\n if (!text) {\r\n this.availableFiltered = this.source;\r\n return;\r\n }\r\n this.availableFiltered = this.source\r\n .filter(item => item[this.display].toLowerCase().includes(text.toLowerCase()));\r\n }\r\n\r\n filterSelectedItems(text: string) {\r\n this.filterSelectedText = text;\r\n if (!text) {\r\n this.confirmedFiltered = this.destination\r\n\r\n return;\r\n }\r\n this.confirmedFiltered = this.destination.filter(item => item[this.display].toLowerCase().includes(text.toLowerCase()));\r\n }\r\n\r\n}\r\n\r\n\r\n\r\n","import { NgModule } from '@angular/core';\r\nimport { BrowserModule } from '@angular/platform-browser';\r\nimport { MaterialDualListboxComponent } from './material-dual-listbox.component';\r\nimport { MatInputModule } from '@angular/material/input'\r\nimport { MatIconModule } from '@angular/material/icon';\r\nimport { MatListModule } from '@angular/material/list';\r\nimport { FormsModule } from '@angular/forms';\r\nimport { MatFormFieldModule } from '@angular/material/form-field'\r\nimport { DragDropModule } from '@angular/cdk/drag-drop';\r\n@NgModule({\r\n declarations: [MaterialDualListboxComponent],\r\n imports: [\r\n BrowserModule,\r\n MatIconModule,\r\n MatInputModule,\r\n MatListModule,\r\n FormsModule,\r\n MatFormFieldModule,\r\n DragDropModule\r\n ],\r\n exports: [MaterialDualListboxComponent]\r\n})\r\nexport class MaterialDualListboxModule { }\r\n","/*\r\n * Public API Surface of material-dual-listbox\r\n */\r\n\r\nexport * from './lib/material-dual-listbox.component';\r\nexport * from './lib/material-dual-listbox.module';\r\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/material-dual-listbox/lib/material-dual-listbox.component.d.ts b/dist/material-dual-listbox/lib/material-dual-listbox.component.d.ts index 47537b4..242f39a 100644 --- a/dist/material-dual-listbox/lib/material-dual-listbox.component.d.ts +++ b/dist/material-dual-listbox/lib/material-dual-listbox.component.d.ts @@ -1,8 +1,6 @@ import { EventEmitter, OnInit } from '@angular/core'; import { CdkDragDrop } from '@angular/cdk/drag-drop'; -import * as ɵngcc0 from '@angular/core'; export declare class MaterialDualListboxComponent implements OnInit { - key: string; display: any; width: string; filter: boolean; @@ -26,11 +24,7 @@ export declare class MaterialDualListboxComponent implements OnInit { ngOnInit(): void; update(): void; drop(event: CdkDragDrop): void; - clickedItem(item: any, ...targets: string[]): void; + clickedItem(item: string[], ...targets: string[]): void; filterItems(text: string): void; filterSelectedItems(text: string): void; - static ɵfac: ɵngcc0.ɵɵFactoryDef; - static ɵcmp: ɵngcc0.ɵɵComponentDefWithMeta; } - -//# sourceMappingURL=material-dual-listbox.component.d.ts.map \ No newline at end of file diff --git a/dist/material-dual-listbox/lib/material-dual-listbox.component.d.ts.__ivy_ngcc_bak b/dist/material-dual-listbox/lib/material-dual-listbox.component.d.ts.__ivy_ngcc_bak deleted file mode 100644 index 9a5b5f6..0000000 --- a/dist/material-dual-listbox/lib/material-dual-listbox.component.d.ts.__ivy_ngcc_bak +++ /dev/null @@ -1,31 +0,0 @@ -import { EventEmitter, OnInit } from '@angular/core'; -import { CdkDragDrop } from '@angular/cdk/drag-drop'; -export declare class MaterialDualListboxComponent implements OnInit { - key: string; - display: any; - width: string; - filter: boolean; - searchPlaceholder: string; - itemsTitle: string; - selectedItemsTitle: string; - header: boolean; - showIcons: boolean; - addIcon: string; - addIconColor: string; - removeIcon: string; - removeIconColor: string; - source: Array; - destination: Array; - destinationChange: EventEmitter; - availableFiltered: Array; - confirmedFiltered: Array; - filterText: string; - filterSelectedText: string; - constructor(); - ngOnInit(): void; - update(): void; - drop(event: CdkDragDrop): void; - clickedItem(item: any, ...targets: string[]): void; - filterItems(text: string): void; - filterSelectedItems(text: string): void; -} diff --git a/dist/material-dual-listbox/lib/material-dual-listbox.component.d.ts.map b/dist/material-dual-listbox/lib/material-dual-listbox.component.d.ts.map deleted file mode 100644 index 7d08022..0000000 --- a/dist/material-dual-listbox/lib/material-dual-listbox.component.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"material-dual-listbox.component.d.ts","sources":["material-dual-listbox.component.d.ts"],"names":[],"mappings":"AAAA;AACA;;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;AACA","sourcesContent":["import { EventEmitter, OnInit } from '@angular/core';\r\nimport { CdkDragDrop } from '@angular/cdk/drag-drop';\r\nexport declare class MaterialDualListboxComponent implements OnInit {\r\n key: string;\r\n display: any;\r\n width: string;\r\n filter: boolean;\r\n searchPlaceholder: string;\r\n itemsTitle: string;\r\n selectedItemsTitle: string;\r\n header: boolean;\r\n showIcons: boolean;\r\n addIcon: string;\r\n addIconColor: string;\r\n removeIcon: string;\r\n removeIconColor: string;\r\n source: Array;\r\n destination: Array;\r\n destinationChange: EventEmitter;\r\n availableFiltered: Array;\r\n confirmedFiltered: Array;\r\n filterText: string;\r\n filterSelectedText: string;\r\n constructor();\r\n ngOnInit(): void;\r\n update(): void;\r\n drop(event: CdkDragDrop): void;\r\n clickedItem(item: any, ...targets: string[]): void;\r\n filterItems(text: string): void;\r\n filterSelectedItems(text: string): void;\r\n}\r\n"]} \ No newline at end of file diff --git a/dist/material-dual-listbox/lib/material-dual-listbox.module.d.ts b/dist/material-dual-listbox/lib/material-dual-listbox.module.d.ts index 0b9b35f..afdf651 100644 --- a/dist/material-dual-listbox/lib/material-dual-listbox.module.d.ts +++ b/dist/material-dual-listbox/lib/material-dual-listbox.module.d.ts @@ -1,15 +1,2 @@ -import * as ɵngcc0 from '@angular/core'; -import * as ɵngcc1 from './material-dual-listbox.component'; -import * as ɵngcc2 from '@angular/platform-browser'; -import * as ɵngcc3 from '@angular/material/icon'; -import * as ɵngcc4 from '@angular/material/input'; -import * as ɵngcc5 from '@angular/material/list'; -import * as ɵngcc6 from '@angular/forms'; -import * as ɵngcc7 from '@angular/material/form-field'; -import * as ɵngcc8 from '@angular/cdk/drag-drop'; export declare class MaterialDualListboxModule { - static ɵmod: ɵngcc0.ɵɵNgModuleDefWithMeta; - static ɵinj: ɵngcc0.ɵɵInjectorDef; } - -//# sourceMappingURL=material-dual-listbox.module.d.ts.map \ No newline at end of file diff --git a/dist/material-dual-listbox/lib/material-dual-listbox.module.d.ts.__ivy_ngcc_bak b/dist/material-dual-listbox/lib/material-dual-listbox.module.d.ts.__ivy_ngcc_bak deleted file mode 100644 index afdf651..0000000 --- a/dist/material-dual-listbox/lib/material-dual-listbox.module.d.ts.__ivy_ngcc_bak +++ /dev/null @@ -1,2 +0,0 @@ -export declare class MaterialDualListboxModule { -} diff --git a/dist/material-dual-listbox/lib/material-dual-listbox.module.d.ts.map b/dist/material-dual-listbox/lib/material-dual-listbox.module.d.ts.map deleted file mode 100644 index 37d5687..0000000 --- a/dist/material-dual-listbox/lib/material-dual-listbox.module.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"material-dual-listbox.module.d.ts","sources":["material-dual-listbox.module.d.ts"],"names":[],"mappings":";;;;;;;;;AAAA;;;AACA","sourcesContent":["export declare class MaterialDualListboxModule {\r\n}\r\n"]} \ No newline at end of file diff --git a/dist/material-dual-listbox/material-dual-listbox.d.ts b/dist/material-dual-listbox/material-dual-listbox.d.ts index fb9ed81..e5daacf 100644 --- a/dist/material-dual-listbox/material-dual-listbox.d.ts +++ b/dist/material-dual-listbox/material-dual-listbox.d.ts @@ -2,5 +2,3 @@ * Generated bundle index. Do not edit. */ export * from './public-api'; - -//# sourceMappingURL=material-dual-listbox.d.ts.map \ No newline at end of file diff --git a/dist/material-dual-listbox/material-dual-listbox.d.ts.__ivy_ngcc_bak b/dist/material-dual-listbox/material-dual-listbox.d.ts.__ivy_ngcc_bak deleted file mode 100644 index e5daacf..0000000 --- a/dist/material-dual-listbox/material-dual-listbox.d.ts.__ivy_ngcc_bak +++ /dev/null @@ -1,4 +0,0 @@ -/** - * Generated bundle index. Do not edit. - */ -export * from './public-api'; diff --git a/dist/material-dual-listbox/material-dual-listbox.d.ts.map b/dist/material-dual-listbox/material-dual-listbox.d.ts.map deleted file mode 100644 index 477e064..0000000 --- a/dist/material-dual-listbox/material-dual-listbox.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"material-dual-listbox.d.ts","sources":["material-dual-listbox.d.ts"],"names":[],"mappings":"AAAA;AACA;AACA;AACA","sourcesContent":["/**\r\n * Generated bundle index. Do not edit.\r\n */\r\nexport * from './public-api';\r\n"]} \ No newline at end of file diff --git a/dist/material-dual-listbox/material-dual-listbox.metadata.json b/dist/material-dual-listbox/material-dual-listbox.metadata.json index b910b75..76dab76 100644 --- a/dist/material-dual-listbox/material-dual-listbox.metadata.json +++ b/dist/material-dual-listbox/material-dual-listbox.metadata.json @@ -1 +1 @@ -{"__symbolic":"module","version":4,"metadata":{"MaterialDualListboxComponent":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Component","line":5,"character":1},"arguments":[{"selector":"material-dual-listbox","styles":["./material-dual-listbox.component.scss"],"template":"\r\n\r\n\r\n
\r\n\r\n
\r\n
\r\n

{{itemsTitle}}

\r\n \r\n {{searchPlaceholder}} {{itemsTitle}}\r\n \r\n {{searchPlaceholder}} {{itemsTitle}}\r\n\r\n \r\n
\r\n
{{addIcon}} {{item[display]}}
\r\n
\r\n\r\n
\r\n
\r\n

{{selectedItemsTitle}}

\r\n \r\n {{searchPlaceholder}} {{selectedItemsTitle}}\r\n \r\n {{searchPlaceholder}} {{itemsTitle}}\r\n \r\n
\r\n
{{removeIcon}} {{item[display]}}
\r\n
\r\n
\r\n \r\n
\r\n
"}]}],"members":{"key":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":12,"character":3}}]}],"display":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":13,"character":3}}]}],"width":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":14,"character":3}}]}],"filter":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":15,"character":3}}]}],"searchPlaceholder":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":16,"character":3}}]}],"itemsTitle":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":17,"character":3}}]}],"selectedItemsTitle":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":18,"character":3}}]}],"header":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":19,"character":3}}]}],"showIcons":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":20,"character":3}}]}],"addIcon":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":21,"character":3}}]}],"addIconColor":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":22,"character":3}}]}],"removeIcon":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":23,"character":3}}]}],"removeIconColor":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":24,"character":3}}]}],"source":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":25,"character":3}}]}],"destination":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":26,"character":3}}]}],"destinationChange":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":27,"character":3}}]}],"__ctor__":[{"__symbolic":"constructor"}],"ngOnInit":[{"__symbolic":"method"}],"update":[{"__symbolic":"method"}],"drop":[{"__symbolic":"method"}],"clickedItem":[{"__symbolic":"method"}],"filterItems":[{"__symbolic":"method"}],"filterSelectedItems":[{"__symbolic":"method"}]}},"MaterialDualListboxModule":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"NgModule","line":9,"character":1},"arguments":[{"declarations":[{"__symbolic":"reference","name":"MaterialDualListboxComponent"}],"imports":[{"__symbolic":"reference","module":"@angular/platform-browser","name":"BrowserModule","line":12,"character":4},{"__symbolic":"reference","module":"@angular/material/icon","name":"MatIconModule","line":13,"character":4},{"__symbolic":"reference","module":"@angular/material/input","name":"MatInputModule","line":14,"character":4},{"__symbolic":"reference","module":"@angular/material/list","name":"MatListModule","line":15,"character":4},{"__symbolic":"reference","module":"@angular/forms","name":"FormsModule","line":16,"character":4},{"__symbolic":"reference","module":"@angular/material/form-field","name":"MatFormFieldModule","line":17,"character":4},{"__symbolic":"reference","module":"@angular/cdk/drag-drop","name":"DragDropModule","line":18,"character":4}],"exports":[{"__symbolic":"reference","name":"MaterialDualListboxComponent"}]}]}],"members":{}}},"origins":{"MaterialDualListboxComponent":"./lib/material-dual-listbox.component","MaterialDualListboxModule":"./lib/material-dual-listbox.module"},"importAs":"material-dual-listbox"} \ No newline at end of file +{"__symbolic":"module","version":4,"metadata":{"MaterialDualListboxComponent":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Component","line":5,"character":1},"arguments":[{"selector":"material-dual-listbox","styles":["./material-dual-listbox.component.scss"],"template":"\r\n\r\n\r\n
\r\n\r\n
\r\n
\r\n

{{itemsTitle}}

\r\n \r\n {{searchPlaceholder}} {{itemsTitle}}\r\n \r\n {{searchPlaceholder}} {{itemsTitle}}\r\n\r\n \r\n
\r\n
{{addIcon}} {{item[display]}}
\r\n
\r\n\r\n
\r\n
\r\n

{{selectedItemsTitle}}

\r\n \r\n {{searchPlaceholder}} {{selectedItemsTitle}}\r\n \r\n {{searchPlaceholder}} {{itemsTitle}}\r\n \r\n
\r\n
{{removeIcon}} {{item[display]}}
\r\n
\r\n
\r\n \r\n
\r\n
"}]}],"members":{"display":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":12,"character":3}}]}],"width":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":13,"character":3}}]}],"filter":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":14,"character":3}}]}],"searchPlaceholder":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":15,"character":3}}]}],"itemsTitle":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":16,"character":3}}]}],"selectedItemsTitle":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":17,"character":3}}]}],"header":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":18,"character":3}}]}],"showIcons":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":19,"character":3}}]}],"addIcon":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":20,"character":3}}]}],"addIconColor":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":21,"character":3}}]}],"removeIcon":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":22,"character":3}}]}],"removeIconColor":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":23,"character":3}}]}],"source":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":24,"character":3}}]}],"destination":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":25,"character":3}}]}],"destinationChange":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":26,"character":3}}]}],"__ctor__":[{"__symbolic":"constructor"}],"ngOnInit":[{"__symbolic":"method"}],"update":[{"__symbolic":"method"}],"drop":[{"__symbolic":"method"}],"clickedItem":[{"__symbolic":"method"}],"filterItems":[{"__symbolic":"method"}],"filterSelectedItems":[{"__symbolic":"method"}]}},"MaterialDualListboxModule":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"NgModule","line":9,"character":1},"arguments":[{"declarations":[{"__symbolic":"reference","name":"MaterialDualListboxComponent"}],"imports":[{"__symbolic":"reference","module":"@angular/platform-browser","name":"BrowserModule","line":12,"character":4},{"__symbolic":"reference","module":"@angular/material/icon","name":"MatIconModule","line":13,"character":4},{"__symbolic":"reference","module":"@angular/material/input","name":"MatInputModule","line":14,"character":4},{"__symbolic":"reference","module":"@angular/material/list","name":"MatListModule","line":15,"character":4},{"__symbolic":"reference","module":"@angular/forms","name":"FormsModule","line":16,"character":4},{"__symbolic":"reference","module":"@angular/material/form-field","name":"MatFormFieldModule","line":17,"character":4},{"__symbolic":"reference","module":"@angular/cdk/drag-drop","name":"DragDropModule","line":18,"character":4}],"exports":[{"__symbolic":"reference","name":"MaterialDualListboxComponent"}]}]}],"members":{}}},"origins":{"MaterialDualListboxComponent":"./lib/material-dual-listbox.component","MaterialDualListboxModule":"./lib/material-dual-listbox.module"},"importAs":"material-dual-listbox"} \ No newline at end of file diff --git a/dist/material-dual-listbox/package.json b/dist/material-dual-listbox/package.json index ee09aac..bb0d3b9 100644 --- a/dist/material-dual-listbox/package.json +++ b/dist/material-dual-listbox/package.json @@ -1,6 +1,6 @@ { "name": "material-dual-listbox", - "version": "2.0.11", + "version": "2.0.13", "description": "Simple dual listbox component to use with your Angular 10 App with Angular Material and CDK Drag and Drop.", "homepage": "https://github.com/rockaru/material-dual-listbox/blob/master/README.md", "bugs": { @@ -30,23 +30,11 @@ "angular material dual listbox" ], "main": "bundles/material-dual-listbox.umd.js", - "module_ivy_ngcc": "__ivy_ngcc__/fesm2015/material-dual-listbox.js", "module": "fesm2015/material-dual-listbox.js", - "es2015_ivy_ngcc": "__ivy_ngcc__/fesm2015/material-dual-listbox.js", "es2015": "fesm2015/material-dual-listbox.js", "esm2015": "esm2015/material-dual-listbox.js", - "fesm2015_ivy_ngcc": "__ivy_ngcc__/fesm2015/material-dual-listbox.js", "fesm2015": "fesm2015/material-dual-listbox.js", "typings": "material-dual-listbox.d.ts", "metadata": "material-dual-listbox.metadata.json", - "sideEffects": false, - "__processed_by_ivy_ngcc__": { - "es2015": "10.0.5", - "fesm2015": "10.0.5", - "module": "10.0.5", - "typings": "10.0.5" - }, - "scripts": { - "prepublishOnly": "node --eval \"console.error('ERROR: Trying to publish a package that has been compiled by NGCC. This is not allowed.\\nPlease delete and rebuild the package, without compiling with NGCC, before attempting to publish.\\nNote that NGCC may have been run by importing this package into another project that is being built with Ivy enabled.\\n')\" && exit 1" - } + "sideEffects": false } diff --git a/docs/index.html b/docs/index.html index b797d89..4149819 100644 --- a/docs/index.html +++ b/docs/index.html @@ -3,12 +3,12 @@ Demo - + - + diff --git a/docs/main.4dca70cad6e1334c1100.js b/docs/main.4dca70cad6e1334c1100.js deleted file mode 100644 index 4574b68..0000000 --- a/docs/main.4dca70cad6e1334c1100.js +++ /dev/null @@ -1 +0,0 @@ -(window.webpackJsonp=window.webpackJsonp||[]).push([[1],{0:function(t,e,n){t.exports=n("zUnb")},zUnb:function(t,e,n){"use strict";function i(t){return"function"==typeof t}n.r(e);let s=!1;const r={Promise:void 0,set useDeprecatedSynchronousErrorHandling(t){if(t){const t=new Error;console.warn("DEPRECATED! RxJS was set to use deprecated synchronous error handling behavior by code at: \n"+t.stack)}else s&&console.log("RxJS: Back to a better error behavior. Thank you. <3");s=t},get useDeprecatedSynchronousErrorHandling(){return s}};function o(t){setTimeout(()=>{throw t},0)}const a={closed:!0,next(t){},error(t){if(r.useDeprecatedSynchronousErrorHandling)throw t;o(t)},complete(){}},l=(()=>Array.isArray||(t=>t&&"number"==typeof t.length))();function c(t){return null!==t&&"object"==typeof t}const h=(()=>{function t(t){return Error.call(this),this.message=t?`${t.length} errors occurred during unsubscription:\n${t.map((t,e)=>`${e+1}) ${t.toString()}`).join("\n ")}`:"",this.name="UnsubscriptionError",this.errors=t,this}return t.prototype=Object.create(Error.prototype),t})();let u=(()=>{class t{constructor(t){this.closed=!1,this._parentOrParents=null,this._subscriptions=null,t&&(this._unsubscribe=t)}unsubscribe(){let e;if(this.closed)return;let{_parentOrParents:n,_unsubscribe:s,_subscriptions:r}=this;if(this.closed=!0,this._parentOrParents=null,this._subscriptions=null,n instanceof t)n.remove(this);else if(null!==n)for(let t=0;tt.concat(e instanceof h?e.errors:e),[])}const p=(()=>"function"==typeof Symbol?Symbol("rxSubscriber"):"@@rxSubscriber_"+Math.random())();class f extends u{constructor(t,e,n){switch(super(),this.syncErrorValue=null,this.syncErrorThrown=!1,this.syncErrorThrowable=!1,this.isStopped=!1,arguments.length){case 0:this.destination=a;break;case 1:if(!t){this.destination=a;break}if("object"==typeof t){t instanceof f?(this.syncErrorThrowable=t.syncErrorThrowable,this.destination=t,t.add(this)):(this.syncErrorThrowable=!0,this.destination=new m(this,t));break}default:this.syncErrorThrowable=!0,this.destination=new m(this,t,e,n)}}[p](){return this}static create(t,e,n){const i=new f(t,e,n);return i.syncErrorThrowable=!1,i}next(t){this.isStopped||this._next(t)}error(t){this.isStopped||(this.isStopped=!0,this._error(t))}complete(){this.isStopped||(this.isStopped=!0,this._complete())}unsubscribe(){this.closed||(this.isStopped=!0,super.unsubscribe())}_next(t){this.destination.next(t)}_error(t){this.destination.error(t),this.unsubscribe()}_complete(){this.destination.complete(),this.unsubscribe()}_unsubscribeAndRecycle(){const{_parentOrParents:t}=this;return this._parentOrParents=null,this.unsubscribe(),this.closed=!1,this.isStopped=!1,this._parentOrParents=t,this}}class m extends f{constructor(t,e,n,s){let r;super(),this._parentSubscriber=t;let o=this;i(e)?r=e:e&&(r=e.next,n=e.error,s=e.complete,e!==a&&(o=Object.create(e),i(o.unsubscribe)&&this.add(o.unsubscribe.bind(o)),o.unsubscribe=this.unsubscribe.bind(this))),this._context=o,this._next=r,this._error=n,this._complete=s}next(t){if(!this.isStopped&&this._next){const{_parentSubscriber:e}=this;r.useDeprecatedSynchronousErrorHandling&&e.syncErrorThrowable?this.__tryOrSetError(e,this._next,t)&&this.unsubscribe():this.__tryOrUnsub(this._next,t)}}error(t){if(!this.isStopped){const{_parentSubscriber:e}=this,{useDeprecatedSynchronousErrorHandling:n}=r;if(this._error)n&&e.syncErrorThrowable?(this.__tryOrSetError(e,this._error,t),this.unsubscribe()):(this.__tryOrUnsub(this._error,t),this.unsubscribe());else if(e.syncErrorThrowable)n?(e.syncErrorValue=t,e.syncErrorThrown=!0):o(t),this.unsubscribe();else{if(this.unsubscribe(),n)throw t;o(t)}}}complete(){if(!this.isStopped){const{_parentSubscriber:t}=this;if(this._complete){const e=()=>this._complete.call(this._context);r.useDeprecatedSynchronousErrorHandling&&t.syncErrorThrowable?(this.__tryOrSetError(t,e),this.unsubscribe()):(this.__tryOrUnsub(e),this.unsubscribe())}else this.unsubscribe()}}__tryOrUnsub(t,e){try{t.call(this._context,e)}catch(n){if(this.unsubscribe(),r.useDeprecatedSynchronousErrorHandling)throw n;o(n)}}__tryOrSetError(t,e,n){if(!r.useDeprecatedSynchronousErrorHandling)throw new Error("bad call");try{e.call(this._context,n)}catch(i){return r.useDeprecatedSynchronousErrorHandling?(t.syncErrorValue=i,t.syncErrorThrown=!0,!0):(o(i),!0)}return!1}_unsubscribe(){const{_parentSubscriber:t}=this;this._context=null,this._parentSubscriber=null,t.unsubscribe()}}const g=(()=>"function"==typeof Symbol&&Symbol.observable||"@@observable")();function _(t){return t}let y=(()=>{class t{constructor(t){this._isScalar=!1,t&&(this._subscribe=t)}lift(e){const n=new t;return n.source=this,n.operator=e,n}subscribe(t,e,n){const{operator:i}=this,s=function(t,e,n){if(t){if(t instanceof f)return t;if(t[p])return t[p]()}return t||e||n?new f(t,e,n):new f(a)}(t,e,n);if(s.add(i?i.call(s,this.source):this.source||r.useDeprecatedSynchronousErrorHandling&&!s.syncErrorThrowable?this._subscribe(s):this._trySubscribe(s)),r.useDeprecatedSynchronousErrorHandling&&s.syncErrorThrowable&&(s.syncErrorThrowable=!1,s.syncErrorThrown))throw s.syncErrorValue;return s}_trySubscribe(t){try{return this._subscribe(t)}catch(e){r.useDeprecatedSynchronousErrorHandling&&(t.syncErrorThrown=!0,t.syncErrorValue=e),function(t){for(;t;){const{closed:e,destination:n,isStopped:i}=t;if(e||i)return!1;t=n&&n instanceof f?n:null}return!0}(t)?t.error(e):console.warn(e)}}forEach(t,e){return new(e=b(e))((e,n)=>{let i;i=this.subscribe(e=>{try{t(e)}catch(s){n(s),i&&i.unsubscribe()}},n,e)})}_subscribe(t){const{source:e}=this;return e&&e.subscribe(t)}[g](){return this}pipe(...t){return 0===t.length?this:(0===(e=t).length?_:1===e.length?e[0]:function(t){return e.reduce((t,e)=>e(t),t)})(this);var e}toPromise(t){return new(t=b(t))((t,e)=>{let n;this.subscribe(t=>n=t,t=>e(t),()=>t(n))})}}return t.create=e=>new t(e),t})();function b(t){if(t||(t=r.Promise||Promise),!t)throw new Error("no Promise impl found");return t}const v=(()=>{function t(){return Error.call(this),this.message="object unsubscribed",this.name="ObjectUnsubscribedError",this}return t.prototype=Object.create(Error.prototype),t})();class w extends u{constructor(t,e){super(),this.subject=t,this.subscriber=e,this.closed=!1}unsubscribe(){if(this.closed)return;this.closed=!0;const t=this.subject,e=t.observers;if(this.subject=null,!e||0===e.length||t.isStopped||t.closed)return;const n=e.indexOf(this.subscriber);-1!==n&&e.splice(n,1)}}class C extends f{constructor(t){super(t),this.destination=t}}let E=(()=>{class t extends y{constructor(){super(),this.observers=[],this.closed=!1,this.isStopped=!1,this.hasError=!1,this.thrownError=null}[p](){return new C(this)}lift(t){const e=new S(this,this);return e.operator=t,e}next(t){if(this.closed)throw new v;if(!this.isStopped){const{observers:e}=this,n=e.length,i=e.slice();for(let s=0;snew S(t,e),t})();class S extends E{constructor(t,e){super(),this.destination=t,this.source=e}next(t){const{destination:e}=this;e&&e.next&&e.next(t)}error(t){const{destination:e}=this;e&&e.error&&this.destination.error(t)}complete(){const{destination:t}=this;t&&t.complete&&this.destination.complete()}_subscribe(t){const{source:e}=this;return e?this.source.subscribe(t):u.EMPTY}}function x(t){return t&&"function"==typeof t.schedule}class k extends f{constructor(t,e,n){super(),this.parent=t,this.outerValue=e,this.outerIndex=n,this.index=0}_next(t){this.parent.notifyNext(this.outerValue,t,this.outerIndex,this.index++,this)}_error(t){this.parent.notifyError(t,this),this.unsubscribe()}_complete(){this.parent.notifyComplete(this),this.unsubscribe()}}const T=t=>e=>{for(let n=0,i=t.length;nt&&"number"==typeof t.length&&"function"!=typeof t;function P(t){return!!t&&"function"!=typeof t.subscribe&&"function"==typeof t.then}const O=t=>{if(t&&"function"==typeof t[g])return i=t,t=>{const e=i[g]();if("function"!=typeof e.subscribe)throw new TypeError("Provided object does not correctly implement Symbol.observable");return e.subscribe(t)};if(A(t))return T(t);if(P(t))return n=t,t=>(n.then(e=>{t.closed||(t.next(e),t.complete())},e=>t.error(e)).then(null,o),t);if(t&&"function"==typeof t[D])return e=t,t=>{const n=e[D]();for(;;){const e=n.next();if(e.done){t.complete();break}if(t.next(e.value),t.closed)break}return"function"==typeof n.return&&t.add(()=>{n.return&&n.return()}),t};{const e=c(t)?"an invalid object":`'${t}'`;throw new TypeError(`You provided ${e} where a stream was expected. You can provide an Observable, Promise, Array, or Iterable.`)}var e,n,i};function R(t,e,n,i,s=new k(t,n,i)){if(!s.closed)return e instanceof y?e.subscribe(s):O(e)(s)}class N extends f{notifyNext(t,e,n,i,s){this.destination.next(e)}notifyError(t,e){this.destination.error(t)}notifyComplete(t){this.destination.complete()}}function F(t,e){return function(n){if("function"!=typeof t)throw new TypeError("argument is not a function. Are you looking for `mapTo()`?");return n.lift(new V(t,e))}}class V{constructor(t,e){this.project=t,this.thisArg=e}call(t,e){return e.subscribe(new M(t,this.project,this.thisArg))}}class M extends f{constructor(t,e,n){super(t),this.project=e,this.count=0,this.thisArg=n||this}_next(t){let e;try{e=this.project.call(this.thisArg,t,this.count++)}catch(n){return void this.destination.error(n)}this.destination.next(e)}}function L(t,e){return new y(n=>{const i=new u;let s=0;return i.add(e.schedule((function(){s!==t.length?(n.next(t[s++]),n.closed||i.add(this.schedule())):n.complete()}))),i})}function j(t,e){return e?function(t,e){if(null!=t){if(function(t){return t&&"function"==typeof t[g]}(t))return function(t,e){return new y(n=>{const i=new u;return i.add(e.schedule(()=>{const s=t[g]();i.add(s.subscribe({next(t){i.add(e.schedule(()=>n.next(t)))},error(t){i.add(e.schedule(()=>n.error(t)))},complete(){i.add(e.schedule(()=>n.complete()))}}))})),i})}(t,e);if(P(t))return function(t,e){return new y(n=>{const i=new u;return i.add(e.schedule(()=>t.then(t=>{i.add(e.schedule(()=>{n.next(t),i.add(e.schedule(()=>n.complete()))}))},t=>{i.add(e.schedule(()=>n.error(t)))}))),i})}(t,e);if(A(t))return L(t,e);if(function(t){return t&&"function"==typeof t[D]}(t)||"string"==typeof t)return function(t,e){if(!t)throw new Error("Iterable cannot be null");return new y(n=>{const i=new u;let s;return i.add(()=>{s&&"function"==typeof s.return&&s.return()}),i.add(e.schedule(()=>{s=t[D](),i.add(e.schedule((function(){if(n.closed)return;let t,e;try{const n=s.next();t=n.value,e=n.done}catch(i){return void n.error(i)}e?n.complete():(n.next(t),this.schedule())})))})),i})}(t,e)}throw new TypeError((null!==t&&typeof t||t)+" is not observable")}(t,e):t instanceof y?t:new y(O(t))}function B(t,e,n=Number.POSITIVE_INFINITY){return"function"==typeof e?i=>i.pipe(B((n,i)=>j(t(n,i)).pipe(F((t,s)=>e(n,t,i,s))),n)):("number"==typeof e&&(n=e),e=>e.lift(new H(t,n)))}class H{constructor(t,e=Number.POSITIVE_INFINITY){this.project=t,this.concurrent=e}call(t,e){return e.subscribe(new z(t,this.project,this.concurrent))}}class z extends N{constructor(t,e,n=Number.POSITIVE_INFINITY){super(t),this.project=e,this.concurrent=n,this.hasCompleted=!1,this.buffer=[],this.active=0,this.index=0}_next(t){this.active0?this._next(e.shift()):0===this.active&&this.hasCompleted&&this.destination.complete()}}function q(t=Number.POSITIVE_INFINITY){return B(_,t)}function $(t,e){return e?L(t,e):new y(T(t))}function U(...t){let e=Number.POSITIVE_INFINITY,n=null,i=t[t.length-1];return x(i)?(n=t.pop(),t.length>1&&"number"==typeof t[t.length-1]&&(e=t.pop())):"number"==typeof i&&(e=t.pop()),null===n&&1===t.length&&t[0]instanceof y?t[0]:q(e)($(t,n))}function G(){return function(t){return t.lift(new W(t))}}class W{constructor(t){this.connectable=t}call(t,e){const{connectable:n}=this;n._refCount++;const i=new Z(t,n),s=e.subscribe(i);return i.closed||(i.connection=n.connect()),s}}class Z extends f{constructor(t,e){super(t),this.connectable=e}_unsubscribe(){const{connectable:t}=this;if(!t)return void(this.connection=null);this.connectable=null;const e=t._refCount;if(e<=0)return void(this.connection=null);if(t._refCount=e-1,e>1)return void(this.connection=null);const{connection:n}=this,i=t._connection;this.connection=null,!i||n&&i!==n||i.unsubscribe()}}class Q extends y{constructor(t,e){super(),this.source=t,this.subjectFactory=e,this._refCount=0,this._isComplete=!1}_subscribe(t){return this.getSubject().subscribe(t)}getSubject(){const t=this._subject;return t&&!t.isStopped||(this._subject=this.subjectFactory()),this._subject}connect(){let t=this._connection;return t||(this._isComplete=!1,t=this._connection=new u,t.add(this.source.subscribe(new Y(this.getSubject(),this))),t.closed&&(this._connection=null,t=u.EMPTY)),t}refCount(){return G()(this)}}const K=(()=>{const t=Q.prototype;return{operator:{value:null},_refCount:{value:0,writable:!0},_subject:{value:null,writable:!0},_connection:{value:null,writable:!0},_subscribe:{value:t._subscribe},_isComplete:{value:t._isComplete,writable:!0},getSubject:{value:t.getSubject},connect:{value:t.connect},refCount:{value:t.refCount}}})();class Y extends C{constructor(t,e){super(t),this.connectable=e}_error(t){this._unsubscribe(),super._error(t)}_complete(){this.connectable._isComplete=!0,this._unsubscribe(),super._complete()}_unsubscribe(){const t=this.connectable;if(t){this.connectable=null;const e=t._connection;t._refCount=0,t._subject=null,t._connection=null,e&&e.unsubscribe()}}}function J(){return new E}function X(){return t=>{return G()((e=J,function(t){let n;n="function"==typeof e?e:function(){return e};const i=Object.create(t,K);return i.source=t,i.subjectFactory=n,i})(t));var e}}function tt(t){return{toString:t}.toString()}function et(t,e,n){return tt(()=>{const i=function(t){return function(...e){if(t){const n=t(...e);for(const t in n)this[t]=n[t]}}}(e);function s(...t){if(this instanceof s)return i.apply(this,t),this;const e=new s(...t);return n.annotation=e,n;function n(t,n,i){const s=t.hasOwnProperty("__parameters__")?t.__parameters__:Object.defineProperty(t,"__parameters__",{value:[]}).__parameters__;for(;s.length<=i;)s.push(null);return(s[i]=s[i]||[]).push(e),t}}return n&&(s.prototype=Object.create(n.prototype)),s.prototype.ngMetadataName=t,s.annotationCls=s,s})}const nt=et("Inject",t=>({token:t})),it=et("Optional"),st=et("Self"),rt=et("SkipSelf");var ot=function(t){return t[t.Default=0]="Default",t[t.Host=1]="Host",t[t.Self=2]="Self",t[t.SkipSelf=4]="SkipSelf",t[t.Optional=8]="Optional",t}({});function at(t){for(let e in t)if(t[e]===at)return e;throw Error("Could not find renamed property on target object.")}function lt(t,e){for(const n in e)e.hasOwnProperty(n)&&!t.hasOwnProperty(n)&&(t[n]=e[n])}function ct(t){return{token:t.token,providedIn:t.providedIn||null,factory:t.factory,value:void 0}}function ht(t){return{factory:t.factory,providers:t.providers||[],imports:t.imports||[]}}function ut(t){return dt(t,t[ft])||dt(t,t[_t])}function dt(t,e){return e&&e.token===t?e:null}function pt(t){return t&&(t.hasOwnProperty(mt)||t.hasOwnProperty(yt))?t[mt]:null}const ft=at({"\u0275prov":at}),mt=at({"\u0275inj":at}),gt=at({"\u0275provFallback":at}),_t=at({ngInjectableDef:at}),yt=at({ngInjectorDef:at});function bt(t){if("string"==typeof t)return t;if(Array.isArray(t))return"["+t.map(bt).join(", ")+"]";if(null==t)return""+t;if(t.overriddenName)return""+t.overriddenName;if(t.name)return""+t.name;const e=t.toString();if(null==e)return""+e;const n=e.indexOf("\n");return-1===n?e:e.substring(0,n)}function vt(t,e){return null==t||""===t?null===e?"":e:null==e||""===e?t:t+" "+e}const wt=at({__forward_ref__:at});function Ct(t){return t.__forward_ref__=Ct,t.toString=function(){return bt(this())},t}function Et(t){return St(t)?t():t}function St(t){return"function"==typeof t&&t.hasOwnProperty(wt)&&t.__forward_ref__===Ct}const xt="undefined"!=typeof globalThis&&globalThis,kt="undefined"!=typeof window&&window,Tt="undefined"!=typeof self&&"undefined"!=typeof WorkerGlobalScope&&self instanceof WorkerGlobalScope&&self,It="undefined"!=typeof global&&global,Dt=xt||It||kt||Tt,At=at({"\u0275cmp":at}),Pt=at({"\u0275dir":at}),Ot=at({"\u0275pipe":at}),Rt=at({"\u0275mod":at}),Nt=at({"\u0275loc":at}),Ft=at({"\u0275fac":at}),Vt=at({__NG_ELEMENT_ID__:at});class Mt{constructor(t,e){this._desc=t,this.ngMetadataName="InjectionToken",this.\u0275prov=void 0,"number"==typeof e?this.__NG_ELEMENT_ID__=e:void 0!==e&&(this.\u0275prov=ct({token:this,providedIn:e.providedIn||"root",factory:e.factory}))}toString(){return"InjectionToken "+this._desc}}const Lt=new Mt("INJECTOR",-1),jt={},Bt=/\n/gm,Ht=at({provide:String,useValue:at});let zt,qt=void 0;function $t(t){const e=qt;return qt=t,e}function Ut(t){const e=zt;return zt=t,e}function Gt(t,e=ot.Default){if(void 0===qt)throw new Error("inject() must be called from an injection context");return null===qt?Qt(t,void 0,e):qt.get(t,e&ot.Optional?null:void 0,e)}function Wt(t,e=ot.Default){return(zt||Gt)(Et(t),e)}const Zt=Wt;function Qt(t,e,n){const i=ut(t);if(i&&"root"==i.providedIn)return void 0===i.value?i.value=i.factory():i.value;if(n&ot.Optional)return null;if(void 0!==e)return e;throw new Error(`Injector: NOT_FOUND [${bt(t)}]`)}function Kt(t){const e=[];for(let n=0;nArray.isArray(t)?Xt(t,e):e(t))}function te(t,e,n){e>=t.length?t.push(n):t.splice(e,0,n)}function ee(t,e){return e>=t.length-1?t.pop():t.splice(e,1)[0]}function ne(t,e){const n=[];for(let i=0;i=0?t[1|i]=n:(i=~i,function(t,e,n,i){let s=t.length;if(s==e)t.push(n,i);else if(1===s)t.push(i,t[0]),t[0]=n;else{for(s--,t.push(t[s-1],t[s]);s>e;)t[s]=t[s-2],s--;t[e]=n,t[e+1]=i}}(t,i,e,n)),i}function se(t,e){const n=re(t,e);if(n>=0)return t[1|n]}function re(t,e){return function(t,e,n){let i=0,s=t.length>>1;for(;s!==i;){const n=i+(s-i>>1),r=t[n<<1];if(e===r)return n<<1;r>e?s=n:i=n+1}return~(s<<1)}(t,e)}var oe=function(t){return t[t.OnPush=0]="OnPush",t[t.Default=1]="Default",t}({}),ae=function(t){return t[t.Emulated=0]="Emulated",t[t.Native=1]="Native",t[t.None=2]="None",t[t.ShadowDom=3]="ShadowDom",t}({});const le={},ce=[];let he=0;function ue(t){return tt(()=>{const e={},n={type:t.type,providersResolver:null,decls:t.decls,vars:t.vars,factory:null,template:t.template||null,consts:t.consts||null,ngContentSelectors:t.ngContentSelectors,hostBindings:t.hostBindings||null,hostVars:t.hostVars||0,hostAttrs:t.hostAttrs||null,contentQueries:t.contentQueries||null,declaredInputs:e,inputs:null,outputs:null,exportAs:t.exportAs||null,onPush:t.changeDetection===oe.OnPush,directiveDefs:null,pipeDefs:null,selectors:t.selectors||ce,viewQuery:t.viewQuery||null,features:t.features||null,data:t.data||{},encapsulation:t.encapsulation||ae.Emulated,id:"c",styles:t.styles||ce,_:null,setInput:null,schemas:t.schemas||null,tView:null},i=t.directives,s=t.features,r=t.pipes;return n.id+=he++,n.inputs=ge(t.inputs,e),n.outputs=ge(t.outputs),s&&s.forEach(t=>t(n)),n.directiveDefs=i?()=>("function"==typeof i?i():i).map(de):null,n.pipeDefs=r?()=>("function"==typeof r?r():r).map(pe):null,n})}function de(t){return ye(t)||function(t){return t[Pt]||null}(t)}function pe(t){return function(t){return t[Ot]||null}(t)}const fe={};function me(t){const e={type:t.type,bootstrap:t.bootstrap||ce,declarations:t.declarations||ce,imports:t.imports||ce,exports:t.exports||ce,transitiveCompileScopes:null,schemas:t.schemas||null,id:t.id||null};return null!=t.id&&tt(()=>{fe[t.id]=t.type}),e}function ge(t,e){if(null==t)return le;const n={};for(const i in t)if(t.hasOwnProperty(i)){let s=t[i],r=s;Array.isArray(s)&&(r=s[1],s=s[0]),n[s]=i,e&&(e[s]=r)}return n}const _e=ue;function ye(t){return t[At]||null}function be(t,e){return t.hasOwnProperty(Ft)?t[Ft]:null}function ve(t,e){const n=t[Rt]||null;if(!n&&!0===e)throw new Error(`Type ${bt(t)} does not have '\u0275mod' property.`);return n}function we(t){return Array.isArray(t)&&"object"==typeof t[1]}function Ce(t){return Array.isArray(t)&&!0===t[1]}function Ee(t){return 0!=(8&t.flags)}function Se(t){return 2==(2&t.flags)}function xe(t){return 1==(1&t.flags)}function ke(t){return null!==t.template}function Te(t){return 0!=(512&t[2])}class Ie{constructor(t,e,n){this.previousValue=t,this.currentValue=e,this.firstChange=n}isFirstChange(){return this.firstChange}}function De(){return Ae}function Ae(t){return t.type.prototype.ngOnChanges&&(t.setInput=Oe),Pe}function Pe(){const t=Re(this),e=null==t?void 0:t.current;if(e){const n=t.previous;if(n===le)t.previous=e;else for(let t in e)n[t]=e[t];t.current=null,this.ngOnChanges(e)}}function Oe(t,e,n,i){const s=Re(t)||function(t,e){return t.__ngSimpleChanges__=e}(t,{previous:le,current:null}),r=s.current||(s.current={}),o=s.previous,a=this.declaredInputs[n],l=o[a];r[a]=new Ie(l&&l.currentValue,e,o===le),t[i]=e}function Re(t){return t.__ngSimpleChanges__||null}De.ngInherit=!0;let Ne=void 0;function Fe(t){return!!t.listen}const Ve={createRenderer:(t,e)=>void 0!==Ne?Ne:"undefined"!=typeof document?document:void 0};function Me(t){for(;Array.isArray(t);)t=t[0];return t}function Le(t,e){return Me(e[t+20])}function je(t,e){return Me(e[t.index])}function Be(t,e){return t.data[e+20]}function He(t,e){const n=e[t];return we(n)?n:n[0]}function ze(t){const e=function(t){return t.__ngContext__||null}(t);return e?Array.isArray(e)?e:e.lView:null}function qe(t){return 4==(4&t[2])}function $e(t){return 128==(128&t[2])}function Ue(t,e){return null===t||null==e?null:t[e]}function Ge(t){t[18]=0}function We(t,e){t[5]+=e;let n=t,i=t[3];for(;null!==i&&(1===e&&1===n[5]||-1===e&&0===n[5]);)i[5]+=e,n=i,i=i[3]}const Ze={lFrame:mn(null),bindingsEnabled:!0,checkNoChangesMode:!1};function Qe(){return Ze.bindingsEnabled}function Ke(){return Ze.lFrame.lView}function Ye(){return Ze.lFrame.tView}function Je(t){Ze.lFrame.contextLView=t}function Xe(){return Ze.lFrame.previousOrParentTNode}function tn(t,e){Ze.lFrame.previousOrParentTNode=t,Ze.lFrame.isParent=e}function en(){return Ze.lFrame.isParent}function nn(){Ze.lFrame.isParent=!1}function sn(){return Ze.checkNoChangesMode}function rn(t){Ze.checkNoChangesMode=t}function on(){return Ze.lFrame.bindingIndex++}function an(t){const e=Ze.lFrame,n=e.bindingIndex;return e.bindingIndex=e.bindingIndex+t,n}function ln(t,e){const n=Ze.lFrame;n.bindingIndex=n.bindingRootIndex=t,cn(e)}function cn(t){Ze.lFrame.currentDirectiveIndex=t}function hn(){return Ze.lFrame.currentQueryIndex}function un(t){Ze.lFrame.currentQueryIndex=t}function dn(t,e){const n=fn();Ze.lFrame=n,n.previousOrParentTNode=e,n.lView=t}function pn(t,e){const n=fn(),i=t[1];Ze.lFrame=n,n.previousOrParentTNode=e,n.lView=t,n.tView=i,n.contextLView=t,n.bindingIndex=i.bindingStartIndex}function fn(){const t=Ze.lFrame,e=null===t?null:t.child;return null===e?mn(t):e}function mn(t){const e={previousOrParentTNode:null,isParent:!0,lView:null,tView:null,selectedIndex:0,contextLView:null,elementDepthCount:0,currentNamespace:null,currentDirectiveIndex:-1,bindingRootIndex:-1,bindingIndex:-1,currentQueryIndex:0,parent:t,child:null};return null!==t&&(t.child=e),e}function gn(){const t=Ze.lFrame;return Ze.lFrame=t.parent,t.previousOrParentTNode=null,t.lView=null,t}const _n=gn;function yn(){const t=gn();t.isParent=!0,t.tView=null,t.selectedIndex=0,t.contextLView=null,t.elementDepthCount=0,t.currentDirectiveIndex=-1,t.currentNamespace=null,t.bindingRootIndex=-1,t.bindingIndex=-1,t.currentQueryIndex=0}function bn(){return Ze.lFrame.selectedIndex}function vn(t){Ze.lFrame.selectedIndex=t}function wn(){const t=Ze.lFrame;return Be(t.tView,t.selectedIndex)}function Cn(t,e){for(let n=e.directiveStart,i=e.directiveEnd;n=i)break}else e[o]<0&&(t[18]+=65536),(r>11>16&&(3&t[2])===e&&(t[2]+=2048,r.call(o)):r.call(o)}class In{constructor(t,e,n){this.factory=t,this.resolving=!1,this.canSeeViewProviders=e,this.injectImpl=n}}function Dn(t,e,n){const i=Fe(t);let s=0;for(;se){o=r-1;break}}}for(;r>16}function Mn(t,e){let n=Vn(t),i=e;for(;n>0;)i=i[15],n--;return i}function Ln(t){return"string"==typeof t?t:null==t?"":""+t}function jn(t){return"function"==typeof t?t.name||t.toString():"object"==typeof t&&null!=t&&"function"==typeof t.type?t.type.name||t.type.toString():Ln(t)}const Bn=(()=>("undefined"!=typeof requestAnimationFrame&&requestAnimationFrame||setTimeout).bind(Dt))();function Hn(t){return t instanceof Function?t():t}let zn=!0;function qn(t){const e=zn;return zn=t,e}let $n=0;function Un(t,e){const n=Wn(t,e);if(-1!==n)return n;const i=e[1];i.firstCreatePass&&(t.injectorIndex=e.length,Gn(i.data,t),Gn(e,null),Gn(i.blueprint,null));const s=Zn(t,e),r=t.injectorIndex;if(Nn(s)){const t=Fn(s),n=Mn(s,e),i=n[1].data;for(let s=0;s<8;s++)e[r+s]=n[t+s]|i[t+s]}return e[r+8]=s,r}function Gn(t,e){t.push(0,0,0,0,0,0,0,0,e)}function Wn(t,e){return-1===t.injectorIndex||t.parent&&t.parent.injectorIndex===t.injectorIndex||null==e[t.injectorIndex+8]?-1:t.injectorIndex}function Zn(t,e){if(t.parent&&-1!==t.parent.injectorIndex)return t.parent.injectorIndex;let n=e[6],i=1;for(;n&&-1===n.injectorIndex;)n=(e=e[15])?e[6]:null,i++;return n?n.injectorIndex|i<<16:-1}function Qn(t,e,n){!function(t,e,n){let i;"string"==typeof n?i=n.charCodeAt(0)||0:n.hasOwnProperty(Vt)&&(i=n[Vt]),null==i&&(i=n[Vt]=$n++);const s=255&i,r=1<0?255&e:e}(n);if("function"==typeof s){dn(e,t);try{const t=s();if(null!=t||i&ot.Optional)return t;throw new Error(`No provider for ${jn(n)}!`)}finally{_n()}}else if("number"==typeof s){if(-1===s)return new ii(t,e);let r=null,o=Wn(t,e),a=-1,l=i&ot.Host?e[16][6]:null;for((-1===o||i&ot.SkipSelf)&&(a=-1===o?Zn(t,e):e[o+8],ni(i,!1)?(r=e[1],o=Fn(a),e=Mn(a,e)):o=-1);-1!==o;){a=e[o+8];const t=e[1];if(ei(s,o,t.data)){const t=Jn(o,e,n,r,i,l);if(t!==Yn)return t}ni(i,e[1].data[o+8]===l)&&ei(s,o,e)?(r=t,o=Fn(a),e=Mn(a,e)):o=-1}}}if(i&ot.Optional&&void 0===s&&(s=null),0==(i&(ot.Self|ot.Host))){const t=e[9],r=Ut(void 0);try{return t?t.get(n,s,i&ot.Optional):Qt(n,s,i&ot.Optional)}finally{Ut(r)}}if(i&ot.Optional)return s;throw new Error(`NodeInjector: NOT_FOUND [${jn(n)}]`)}const Yn={};function Jn(t,e,n,i,s,r){const o=e[1],a=o.data[t+8],l=Xn(a,o,n,null==i?Se(a)&&zn:i!=o&&3===a.type,s&ot.Host&&r===a);return null!==l?ti(e,o,l,a):Yn}function Xn(t,e,n,i,s){const r=t.providerIndexes,o=e.data,a=1048575&r,l=t.directiveStart,c=r>>20,h=s?a+c:t.directiveEnd;for(let u=i?a:a+c;u=l&&t.type===n)return u}if(s){const t=o[l];if(t&&ke(t)&&t.type===n)return l}return null}function ti(t,e,n,i){let s=t[n];const r=e.data;if(s instanceof In){const o=s;if(o.resolving)throw new Error("Circular dep for "+jn(r[n]));const a=qn(o.canSeeViewProviders);let l;o.resolving=!0,o.injectImpl&&(l=Ut(o.injectImpl)),dn(t,i);try{s=t[n]=o.factory(void 0,r,t,i),e.firstCreatePass&&n>=i.directiveStart&&function(t,e,n){const{ngOnChanges:i,ngOnInit:s,ngDoCheck:r}=e.type.prototype;if(i){const i=Ae(e);(n.preOrderHooks||(n.preOrderHooks=[])).push(t,i),(n.preOrderCheckHooks||(n.preOrderCheckHooks=[])).push(t,i)}s&&(n.preOrderHooks||(n.preOrderHooks=[])).push(0-t,s),r&&((n.preOrderHooks||(n.preOrderHooks=[])).push(t,r),(n.preOrderCheckHooks||(n.preOrderCheckHooks=[])).push(t,r))}(n,r[n],e)}finally{o.injectImpl&&Ut(l),qn(a),o.resolving=!1,_n()}}return s}function ei(t,e,n){const i=64&t,s=32&t;let r;return r=128&t?i?s?n[e+7]:n[e+6]:s?n[e+5]:n[e+4]:i?s?n[e+3]:n[e+2]:s?n[e+1]:n[e],!!(r&1<{const t=si(Et(e));return t?t():null};let n=be(e);if(null===n){const t=pt(e);n=t&&t.factory}return n||null}function ri(t){return tt(()=>{const e=t.prototype.constructor,n=e[Ft]||si(e),i=Object.prototype;let s=Object.getPrototypeOf(t.prototype).constructor;for(;s&&s!==i;){const t=s[Ft]||si(s);if(t&&t!==n)return t;s=Object.getPrototypeOf(s)}return t=>new t})}function oi(t){return t.ngDebugContext}function ai(t){return t.ngOriginalError}function li(t,...e){t.error(...e)}class ci{constructor(){this._console=console}handleError(t){const e=this._findOriginalError(t),n=this._findContext(t),i=function(t){return t.ngErrorLogger||li}(t);i(this._console,"ERROR",t),e&&i(this._console,"ORIGINAL ERROR",e),n&&i(this._console,"ERROR CONTEXT",n)}_findContext(t){return t?oi(t)?oi(t):this._findContext(ai(t)):null}_findOriginalError(t){let e=ai(t);for(;e&&ai(e);)e=ai(e);return e}}class hi{constructor(t){this.changingThisBreaksApplicationSecurity=t}toString(){return"SafeValue must use [property]=binding: "+this.changingThisBreaksApplicationSecurity+" (see http://g.co/ng/security#xss)"}}class ui extends hi{getTypeName(){return"HTML"}}class di extends hi{getTypeName(){return"Style"}}class pi extends hi{getTypeName(){return"Script"}}class fi extends hi{getTypeName(){return"URL"}}class mi extends hi{getTypeName(){return"ResourceURL"}}function gi(t){return t instanceof hi?t.changingThisBreaksApplicationSecurity:t}function _i(t,e){const n=yi(t);if(null!=n&&n!==e){if("ResourceURL"===n&&"URL"===e)return!0;throw new Error(`Required a safe ${e}, got a ${n} (see http://g.co/ng/security#xss)`)}return n===e}function yi(t){return t instanceof hi&&t.getTypeName()||null}let bi=!0,vi=!1;function wi(){return vi=!0,bi}class Ci{getInertBodyElement(t){t=""+t+"";try{const e=(new window.DOMParser).parseFromString(t,"text/html").body;return e.removeChild(e.firstChild),e}catch(e){return null}}}class Ei{constructor(t){if(this.defaultDoc=t,this.inertDocument=this.defaultDoc.implementation.createHTMLDocument("sanitization-inert"),null==this.inertDocument.body){const t=this.inertDocument.createElement("html");this.inertDocument.appendChild(t);const e=this.inertDocument.createElement("body");t.appendChild(e)}}getInertBodyElement(t){const e=this.inertDocument.createElement("template");if("content"in e)return e.innerHTML=t,e;const n=this.inertDocument.createElement("body");return n.innerHTML=t,this.defaultDoc.documentMode&&this.stripCustomNsAttrs(n),n}stripCustomNsAttrs(t){const e=t.attributes;for(let i=e.length-1;0ki(t.trim())).join(", ")),this.buf.push(" ",e,'="',Hi(o),'"')}var i;return this.buf.push(">"),!0}endElement(t){const e=t.nodeName.toLowerCase();Ri.hasOwnProperty(e)&&!Di.hasOwnProperty(e)&&(this.buf.push(""))}chars(t){this.buf.push(Hi(t))}checkClobberedElement(t,e){if(e&&(t.compareDocumentPosition(e)&Node.DOCUMENT_POSITION_CONTAINED_BY)===Node.DOCUMENT_POSITION_CONTAINED_BY)throw new Error("Failed to sanitize html because the element is clobbered: "+t.outerHTML);return e}}const ji=/[\uD800-\uDBFF][\uDC00-\uDFFF]/g,Bi=/([^\#-~ |!])/g;function Hi(t){return t.replace(/&/g,"&").replace(ji,(function(t){return"&#"+(1024*(t.charCodeAt(0)-55296)+(t.charCodeAt(1)-56320)+65536)+";"})).replace(Bi,(function(t){return"&#"+t.charCodeAt(0)+";"})).replace(//g,">")}let zi;function qi(t){return"content"in t&&function(t){return t.nodeType===Node.ELEMENT_NODE&&"TEMPLATE"===t.nodeName}(t)?t.content:null}var $i=function(t){return t[t.NONE=0]="NONE",t[t.HTML=1]="HTML",t[t.STYLE=2]="STYLE",t[t.SCRIPT=3]="SCRIPT",t[t.URL=4]="URL",t[t.RESOURCE_URL=5]="RESOURCE_URL",t}({});function Ui(t,e){t.__ngContext__=e}function Gi(t){throw new Error("Multiple components match node with tagname "+t.tagName)}function Wi(){throw new Error("Cannot mix multi providers and regular providers")}function Zi(t,e,n){let i=t.length;for(;;){const s=t.indexOf(e,n);if(-1===s)return s;if(0===s||t.charCodeAt(s-1)<=32){const n=e.length;if(s+n===i||t.charCodeAt(s+n)<=32)return s}n=s+1}}function Qi(t,e,n){let i=0;for(;ir?"":s[h+1].toLowerCase();const e=8&i?t:null;if(e&&-1!==Zi(e,c,0)||2&i&&c!==t){if(Xi(i))return!1;o=!0}}}}else{if(!o&&!Xi(i)&&!Xi(l))return!1;if(o&&Xi(l))continue;o=!1,i=l|1&i}}return Xi(i)||o}function Xi(t){return 0==(1&t)}function ts(t,e,n,i){if(null===e)return-1;let s=0;if(i||!n){let n=!1;for(;s-1)for(n++;n0?'="'+e+'"':"")+"]"}else 8&i?s+="."+o:4&i&&(s+=" "+o);else""===s||Xi(o)||(e+=is(r,s),s=""),i=o,r=r||!Xi(i);n++}return""!==s&&(e+=is(r,s)),e}const rs={};function os(t){const e=t[3];return Ce(e)?e[3]:e}function as(t){return cs(t[13])}function ls(t){return cs(t[4])}function cs(t){for(;null!==t&&!Ce(t);)t=t[4];return t}function hs(t){us(Ye(),Ke(),bn()+t,sn())}function us(t,e,n,i){if(!i)if(3==(3&e[2])){const i=t.preOrderCheckHooks;null!==i&&En(e,i,n)}else{const i=t.preOrderHooks;null!==i&&Sn(e,i,0,n)}vn(n)}function ds(t,e){return t<<17|e<<2}function ps(t){return t>>17&32767}function fs(t){return 2|t}function ms(t){return(131068&t)>>2}function gs(t,e){return-131069&t|e<<2}function _s(t){return 1|t}function ys(t,e){const n=t.contentQueries;if(null!==n)for(let i=0;i20&&us(t,e,0,sn()),n(i,s)}finally{vn(r)}}function ks(t,e,n){if(Ee(e)){const i=e.directiveEnd;for(let s=e.directiveStart;s0&&function t(e){for(let i=as(e);null!==i;i=ls(i))for(let e=10;e0&&t(n)}const n=e[1].components;if(null!==n)for(let i=0;i0&&t(s)}}(n)}}function Qs(t,e){const n=He(e,t),i=n[1];!function(t,e){for(let n=e.length;nPromise.resolve(null))();function nr(t){return t[7]||(t[7]=[])}function ir(t,e){const n=t[9],i=n?n.get(ci,null):null;i&&i.handleError(e)}function sr(t,e,n,i,s){for(let r=0;r0&&(t[n-1][4]=i[4]);const r=ee(t,10+e);cr(i[1],i,!1,null);const o=r[19];null!==o&&o.detachView(r[1]),i[3]=null,i[4]=null,i[2]&=-129}return i}function dr(t,e){if(!(256&e[2])){const n=e[11];Fe(n)&&n.destroyNode&&Sr(t,e,n,3,null,null),function(t){let e=t[13];if(!e)return fr(t[1],t);for(;e;){let n=null;if(we(e))n=e[13];else{const t=e[10];t&&(n=t)}if(!n){for(;e&&!e[4]&&e!==t;)we(e)&&fr(e[1],e),e=pr(e,t);null===e&&(e=t),we(e)&&fr(e[1],e),n=e&&e[4]}e=n}}(e)}}function pr(t,e){let n;return we(t)&&(n=t[6])&&2===n.type?or(n,t):t[3]===e?null:t[3]}function fr(t,e){if(!(256&e[2])){e[2]&=-129,e[2]|=256,function(t,e){let n;if(null!=t&&null!=(n=t.destroyHooks))for(let i=0;i=0?t[a]():t[-a].unsubscribe(),i+=2}else n[i].call(t[n[i+1]]);e[7]=null}}(t,e);const n=e[6];n&&3===n.type&&Fe(e[11])&&e[11].destroy();const i=e[17];if(null!==i&&Ce(e[3])){i!==e[3]&&hr(i,e);const n=e[19];null!==n&&n.detachView(t)}}}function mr(t,e,n){let i=e.parent;for(;null!=i&&(4===i.type||5===i.type);)i=(e=i).parent;if(null==i){const t=n[6];return 2===t.type?ar(t,n):n[0]}if(e&&5===e.type&&4&e.flags)return je(e,n).parentNode;if(2&i.flags){const e=t.data,n=e[e[i.index].directiveStart].encapsulation;if(n!==ae.ShadowDom&&n!==ae.Native)return null}return je(i,n)}function gr(t,e,n,i){Fe(t)?t.insertBefore(e,n,i):e.insertBefore(n,i,!0)}function _r(t,e,n){Fe(t)?t.appendChild(e,n):e.appendChild(n)}function yr(t,e,n,i){null!==i?gr(t,e,n,i):_r(t,e,n)}function br(t,e){return Fe(t)?t.parentNode(e):e.parentNode}function vr(t,e){if(2===t.type){const n=or(t,e);return null===n?null:Cr(n.indexOf(e,10)-10,n)}return 4===t.type||5===t.type?je(t,e):null}function wr(t,e,n,i){const s=mr(t,i,e);if(null!=s){const t=e[11],r=vr(i.parent||e[6],e);if(Array.isArray(n))for(let e=0;e-1&&this._viewContainerRef.detach(t),this._viewContainerRef=null}dr(this._lView[1],this._lView)}onDestroy(t){Ps(this._lView[1],this._lView,null,t)}markForCheck(){Ys(this._cdRefInjectingView||this._lView)}detach(){this._lView[2]&=-129}reattach(){this._lView[2]|=128}detectChanges(){Js(this._lView[1],this._lView,this.context)}checkNoChanges(){!function(t,e,n){rn(!0);try{Js(t,e,n)}finally{rn(!1)}}(this._lView[1],this._lView,this.context)}attachToViewContainerRef(t){if(this._appRef)throw new Error("This view is already attached directly to the ApplicationRef!");this._viewContainerRef=t}detachFromAppRef(){var t;this._appRef=null,Sr(this._lView[1],t=this._lView,t[11],2,null,null)}attachToAppRef(t){if(this._viewContainerRef)throw new Error("This view is already attached to a ViewContainer!");this._appRef=t}}class Dr extends Ir{constructor(t){super(t),this._view=t}detectChanges(){Xs(this._view)}checkNoChanges(){!function(t){rn(!0);try{Xs(t)}finally{rn(!1)}}(this._view)}get context(){return null}}let Ar,Pr,Or;function Rr(t,e,n){return Ar||(Ar=class extends t{}),new Ar(je(e,n))}function Nr(t,e,n,i){return Pr||(Pr=class extends t{constructor(t,e,n){super(),this._declarationView=t,this._declarationTContainer=e,this.elementRef=n}createEmbeddedView(t){const e=this._declarationTContainer.tViews,n=vs(this._declarationView,e,t,16,null,e.node);n[17]=this._declarationView[this._declarationTContainer.index];const i=this._declarationView[19];return null!==i&&(n[19]=i.createEmbeddedView(e)),Cs(e,n,t),new Ir(n)}}),0===n.type?new Pr(i,n,Rr(e,n,i)):null}function Fr(t,e,n,i){let s;Or||(Or=class extends t{constructor(t,e,n){super(),this._lContainer=t,this._hostTNode=e,this._hostView=n}get element(){return Rr(e,this._hostTNode,this._hostView)}get injector(){return new ii(this._hostTNode,this._hostView)}get parentInjector(){const t=Zn(this._hostTNode,this._hostView),e=Mn(t,this._hostView),n=function(t,e,n){if(n.parent&&-1!==n.parent.injectorIndex){const t=n.parent.injectorIndex;let e=n.parent;for(;null!=e.parent&&t==e.parent.injectorIndex;)e=e.parent;return e}let i=Vn(t),s=e,r=e[6];for(;i>1;)s=s[15],r=s[6],i--;return r}(t,this._hostView,this._hostTNode);return Nn(t)&&null!=n?new ii(n,e):new ii(null,this._hostView)}clear(){for(;this.length>0;)this.remove(this.length-1)}get(t){return null!==this._lContainer[8]&&this._lContainer[8][t]||null}get length(){return this._lContainer.length-10}createEmbeddedView(t,e,n){const i=t.createEmbeddedView(e||{});return this.insert(i,n),i}createComponent(t,e,n,i,s){const r=n||this.parentInjector;if(!s&&null==t.ngModule&&r){const t=r.get(Jt,null);t&&(s=t)}const o=t.create(r,i,void 0,s);return this.insert(o.hostView,e),o}insert(t,e){const n=t._lView,i=n[1];if(t.destroyed)throw new Error("Cannot insert a destroyed View in a ViewContainer!");if(this.allocateContainerIfNeeded(),Ce(n[3])){const e=this.indexOf(t);if(-1!==e)this.detach(e);else{const e=n[3],i=new Or(e,e[6],e[3]);i.detach(i.indexOf(t))}}const s=this._adjustIndex(e);return function(t,e,n,i){const s=10+i,r=n.length;i>0&&(n[s-1][4]=e),i{class t{}return t.__NG_ELEMENT_ID__=()=>Mr(),t})();const Mr=function(t=!1){return function(t,e,n){if(!n&&Se(t)){const n=He(t.index,e);return new Ir(n,n)}return 3===t.type||0===t.type||4===t.type||5===t.type?new Ir(e[16],e):null}(Xe(),Ke(),t)},Lr=new Mt("Set Injector scope."),jr={},Br={},Hr=[];let zr=void 0;function qr(){return void 0===zr&&(zr=new Yt),zr}function $r(t,e=null,n=null,i){return new Ur(t,n,e||qr(),i)}class Ur{constructor(t,e,n,i=null){this.parent=n,this.records=new Map,this.injectorDefTypes=new Set,this.onDestroy=new Set,this._destroyed=!1;const s=[];e&&Xt(e,n=>this.processProvider(n,t,e)),Xt([t],t=>this.processInjectorType(t,[],s)),this.records.set(Lt,Zr(void 0,this));const r=this.records.get(Lr);this.scope=null!=r?r.value:null,this.source=i||("object"==typeof t?null:bt(t))}get destroyed(){return this._destroyed}destroy(){this.assertNotDestroyed(),this._destroyed=!0;try{this.onDestroy.forEach(t=>t.ngOnDestroy())}finally{this.records.clear(),this.onDestroy.clear(),this.injectorDefTypes.clear()}}get(t,e=jt,n=ot.Default){this.assertNotDestroyed();const i=$t(this);try{if(!(n&ot.SkipSelf)){let e=this.records.get(t);if(void 0===e){const n=("function"==typeof(s=t)||"object"==typeof s&&s instanceof Mt)&&ut(t);e=n&&this.injectableDefInScope(n)?Zr(Gr(t),jr):null,this.records.set(t,e)}if(null!=e)return this.hydrate(t,e)}return(n&ot.Self?qr():this.parent).get(t,e=n&ot.Optional&&e===jt?null:e)}catch(r){if("NullInjectorError"===r.name){if((r.ngTempTokenPath=r.ngTempTokenPath||[]).unshift(bt(t)),i)throw r;return function(t,e,n,i){const s=t.ngTempTokenPath;throw e.__source&&s.unshift(e.__source),t.message=function(t,e,n,i=null){t=t&&"\n"===t.charAt(0)&&"\u0275"==t.charAt(1)?t.substr(2):t;let s=bt(e);if(Array.isArray(e))s=e.map(bt).join(" -> ");else if("object"==typeof e){let t=[];for(let n in e)if(e.hasOwnProperty(n)){let i=e[n];t.push(n+":"+("string"==typeof i?JSON.stringify(i):bt(i)))}s=`{${t.join(", ")}}`}return`${n}${i?"("+i+")":""}[${s}]: ${t.replace(Bt,"\n ")}`}("\n"+t.message,s,n,i),t.ngTokenPath=s,t.ngTempTokenPath=null,t}(r,t,"R3InjectorError",this.source)}throw r}finally{$t(i)}var s}_resolveInjectorDefTypes(){this.injectorDefTypes.forEach(t=>this.get(t))}toString(){const t=[];return this.records.forEach((e,n)=>t.push(bt(n))),`R3Injector[${t.join(", ")}]`}assertNotDestroyed(){if(this._destroyed)throw new Error("Injector has already been destroyed.")}processInjectorType(t,e,n){if(!(t=Et(t)))return!1;let i=pt(t);const s=null==i&&t.ngModule||void 0,r=void 0===s?t:s,o=-1!==n.indexOf(r);if(void 0!==s&&(i=pt(s)),null==i)return!1;if(null!=i.imports&&!o){let t;n.push(r);try{Xt(i.imports,i=>{this.processInjectorType(i,e,n)&&(void 0===t&&(t=[]),t.push(i))})}finally{}if(void 0!==t)for(let e=0;ethis.processProvider(t,n,i||Hr))}}this.injectorDefTypes.add(r),this.records.set(r,Zr(i.factory,jr));const a=i.providers;if(null!=a&&!o){const e=t;Xt(a,t=>this.processProvider(t,e,a))}return void 0!==s&&void 0!==t.providers}processProvider(t,e,n){let i=Kr(t=Et(t))?t:Et(t&&t.provide);const s=function(t,e,n){return Qr(t)?Zr(void 0,t.useValue):Zr(Wr(t,e,n),jr)}(t,e,n);if(Kr(t)||!0!==t.multi){const t=this.records.get(i);t&&void 0!==t.multi&&Wi()}else{let e=this.records.get(i);e?void 0===e.multi&&Wi():(e=Zr(void 0,jr,!0),e.factory=()=>Kt(e.multi),this.records.set(i,e)),i=t,e.multi.push(t)}this.records.set(i,s)}hydrate(t,e){var n;return e.value===Br?function(t){throw new Error("Cannot instantiate cyclic dependency! "+t)}(bt(t)):e.value===jr&&(e.value=Br,e.value=e.factory()),"object"==typeof e.value&&e.value&&null!==(n=e.value)&&"object"==typeof n&&"function"==typeof n.ngOnDestroy&&this.onDestroy.add(e.value),e.value}injectableDefInScope(t){return!!t.providedIn&&("string"==typeof t.providedIn?"any"===t.providedIn||t.providedIn===this.scope:this.injectorDefTypes.has(t.providedIn))}}function Gr(t){const e=ut(t),n=null!==e?e.factory:be(t);if(null!==n)return n;const i=pt(t);if(null!==i)return i.factory;if(t instanceof Mt)throw new Error(`Token ${bt(t)} is missing a \u0275prov definition.`);if(t instanceof Function)return function(t){const e=t.length;if(e>0){const n=ne(e,"?");throw new Error(`Can't resolve all parameters for ${bt(t)}: (${n.join(", ")}).`)}const n=function(t){const e=t&&(t[ft]||t[_t]||t[gt]&&t[gt]());if(e){const n=function(t){if(t.hasOwnProperty("name"))return t.name;const e=(""+t).match(/^function\s*([^\s(]+)/);return null===e?"":e[1]}(t);return console.warn(`DEPRECATED: DI is instantiating a token "${n}" that inherits its @Injectable decorator but does not provide one itself.\nThis will become an error in a future version of Angular. Please add @Injectable() to the "${n}" class.`),e}return null}(t);return null!==n?()=>n.factory(t):()=>new t}(t);throw new Error("unreachable")}function Wr(t,e,n){let i=void 0;if(Kr(t)){const e=Et(t);return be(e)||Gr(e)}if(Qr(t))i=()=>Et(t.useValue);else if((s=t)&&s.useFactory)i=()=>t.useFactory(...Kt(t.deps||[]));else if(function(t){return!(!t||!t.useExisting)}(t))i=()=>Wt(Et(t.useExisting));else{const s=Et(t&&(t.useClass||t.provide));if(s||function(t,e,n){let i="";throw t&&e&&(i=` - only instances of Provider and Type are allowed, got: [${e.map(t=>t==n?"?"+n+"?":"...").join(", ")}]`),new Error(`Invalid provider for the NgModule '${bt(t)}'`+i)}(e,n,t),!function(t){return!!t.deps}(t))return be(s)||Gr(s);i=()=>new s(...Kt(t.deps))}var s;return i}function Zr(t,e,n=!1){return{factory:t,value:e,multi:n?[]:void 0}}function Qr(t){return null!==t&&"object"==typeof t&&Ht in t}function Kr(t){return"function"==typeof t}const Yr=function(t,e,n){return function(t,e=null,n=null,i){const s=$r(t,e,n,i);return s._resolveInjectorDefTypes(),s}({name:n},e,t,n)};let Jr=(()=>{class t{static create(t,e){return Array.isArray(t)?Yr(t,e,""):Yr(t.providers,t.parent,t.name||"")}}return t.THROW_IF_NOT_FOUND=jt,t.NULL=new Yt,t.\u0275prov=ct({token:t,providedIn:"any",factory:()=>Wt(Lt)}),t.__NG_ELEMENT_ID__=-1,t})();function Xr(t,e,n){let i=n?t.styles:null,s=n?t.classes:null,r=0;if(null!==e)for(let o=0;oa(Me(t[i.index])).target:i.index;if(Fe(n)){let o=null;if(!a&&l&&(o=function(t,e,n,i){const s=t.cleanup;if(null!=s)for(let r=0;rn?t[n]:null}"string"==typeof t&&(r+=2)}return null}(t,e,s,i.index)),null!==o)(o.__ngLastListenerFn__||o).__ngNextListenerFn__=r,o.__ngLastListenerFn__=r,u=!1;else{r=wo(i,e,r,!1);const t=n.listen(p.name||f,s,r);h.push(r,t),c&&c.push(s,g,m,m+1)}}else r=wo(i,e,r,!0),f.addEventListener(s,r,o),h.push(r),c&&c.push(s,g,m,o)}const d=i.outputs;let p;if(u&&null!==d&&(p=d[s])){const t=p.length;if(t)for(let n=0;n0;)e=e[15],t--;return e}(t,Ze.lFrame.contextLView))[8]}(t)}function Eo(t,e){let n=null;const i=function(t){const e=t.attrs;if(null!=e){const t=e.indexOf(5);if(0==(1&t))return e[t+1]}return null}(t);for(let s=0;s=0}function Do(t,e,n){return Po(t,e,n,!1),Do}function Ao(t,e){return Po(t,e,null,!0),Ao}function Po(t,e,n,i){const s=Ke(),r=Ye(),o=an(2);r.firstUpdatePass&&function(t,e,n,i){const s=t.data;if(null===s[n+1]){const r=s[bn()+20],o=function(t,e){return e>=t.expandoStartIndex}(t,n);(function(t,e){return 0!=(t.flags&(e?16:32))})(r,i)&&null===e&&!o&&(e=!1),e=function(t,e,n,i){const s=function(t){const e=Ze.lFrame.currentDirectiveIndex;return-1===e?null:t[e]}(t);let r=i?e.residualClasses:e.residualStyles;if(null===s)0===(i?e.classBindings:e.styleBindings)&&(n=Ro(n=Oo(null,t,e,n,i),e.attrs,i),r=null);else{const o=e.directiveStylingLast;if(-1===o||t[o]!==s)if(n=Oo(s,t,e,n,i),null===r){let n=function(t,e,n){const i=n?e.classBindings:e.styleBindings;if(0!==ms(i))return t[ps(i)]}(t,e,i);void 0!==n&&Array.isArray(n)&&(n=Oo(null,t,e,n[1],i),n=Ro(n,e.attrs,i),function(t,e,n,i){t[ps(n?e.classBindings:e.styleBindings)]=i}(t,e,i,n))}else r=function(t,e,n){let i=void 0;const s=e.directiveEnd;for(let r=1+e.directiveStylingLast;r0)&&(h=!0)}else c=n;if(s)if(0!==l){const e=ps(t[a+1]);t[i+1]=ds(e,a),0!==e&&(t[e+1]=gs(t[e+1],i)),t[a+1]=131071&t[a+1]|i<<17}else t[i+1]=ds(a,0),0!==a&&(t[a+1]=gs(t[a+1],i)),a=i;else t[i+1]=ds(l,0),0===a?a=i:t[l+1]=gs(t[l+1],i),l=i;h&&(t[i+1]=fs(t[i+1])),To(t,c,i,!0),To(t,c,i,!1),function(t,e,n,i,s){const r=s?t.residualClasses:t.residualStyles;null!=r&&"string"==typeof e&&re(r,e)>=0&&(n[i+1]=_s(n[i+1]))}(e,c,t,i,r),o=ds(a,l),r?e.classBindings=o:e.styleBindings=o}(s,r,e,n,o,i)}}(r,t,o,i),e!==rs&&so(s,o,e)&&function(t,e,n,i,s,r,o,a){if(3!==e.type)return;const l=t.data,c=l[a+1];Fo(1==(1&c)?No(l,e,n,s,ms(c),o):void 0)||(Fo(r)||function(t){return 2==(2&t)}(c)&&(r=No(l,null,n,s,a,o)),function(t,e,n,i,s){const r=Fe(t);if(e)s?r?t.addClass(n,i):n.classList.add(i):r?t.removeClass(n,i):n.classList.remove(i);else{const e=-1==i.indexOf("-")?void 0:2;null==s?r?t.removeStyle(n,i,e):n.style.removeProperty(i):r?t.setStyle(n,i,s,e):n.style.setProperty(i,s)}}(i,o,Le(bn(),n),s,r))}(r,r.data[bn()+20],s,s[11],t,s[o+1]=function(t,e){return null==t||("string"==typeof e?t+=e:"object"==typeof t&&(t=bt(gi(t)))),t}(e,n),i,o)}function Oo(t,e,n,i,s){let r=null;const o=n.directiveEnd;let a=n.directiveStylingLast;for(-1===a?a=n.directiveStart:a++;a0;){const e=t[s],r=Array.isArray(e),l=r?e[1]:e,c=null===l;let h=n[s+1];h===rs&&(h=c?ko:void 0);let u=c?se(h,i):l===i?h:void 0;if(r&&!Fo(u)&&(u=se(e,i)),Fo(u)&&(a=u,o))return a;const d=t[s+1];s=o?ps(d):ms(d)}if(null!==e){let t=r?e.residualClasses:e.residualStyles;null!=t&&(a=se(t,i))}return a}function Fo(t){return void 0!==t}function Vo(t,e=""){const n=Ke(),i=Ye(),s=t+20,r=i.firstCreatePass?ws(i,n[6],t,3,null,null):i.data[s],o=n[s]=function(t,e){return Fe(e)?e.createText(t):e.createTextNode(t)}(e,n[11]);wr(i,n,o,r),tn(r,!1)}function Mo(t){return Lo("",t,""),Mo}function Lo(t,e,n){const i=Ke(),s=function(t,e,n,i){return so(t,on(),n)?e+Ln(n)+i:rs}(i,t,e,n);return s!==rs&&rr(i,bn(),s),Lo}function jo(t,e,n,i,s){const r=Ke(),o=function(t,e,n,i,s,r){const o=ro(t,Ze.lFrame.bindingIndex,n,s);return an(2),o?e+Ln(n)+i+Ln(s)+r:rs}(r,t,e,n,i,s);return o!==rs&&rr(r,bn(),o),jo}function Bo(t,e,n){const i=Ke();return so(i,on(),e)&&Ns(Ye(),wn(),i,t,e,i[11],n,!0),Bo}function Ho(t,e){const n=ze(t)[1],i=n.data.length-1;Cn(n,{directiveStart:i,directiveEnd:i+1})}function zo(t){let e=Object.getPrototypeOf(t.type.prototype).constructor,n=!0;const i=[t];for(;e;){let s=void 0;if(ke(t))s=e.\u0275cmp||e.\u0275dir;else{if(e.\u0275cmp)throw new Error("Directives cannot inherit Components");s=e.\u0275dir}if(s){if(n){i.push(s);const e=t;e.inputs=qo(t.inputs),e.declaredInputs=qo(t.declaredInputs),e.outputs=qo(t.outputs);const n=s.hostBindings;n&&Go(t,n);const r=s.viewQuery,o=s.contentQueries;if(r&&$o(t,r),o&&Uo(t,o),lt(t.inputs,s.inputs),lt(t.declaredInputs,s.declaredInputs),lt(t.outputs,s.outputs),ke(s)&&s.data.animation){const e=t.data;e.animation=(e.animation||[]).concat(s.data.animation)}}const e=s.features;if(e)for(let i=0;i=0;i--){const s=t[i];s.hostVars=e+=s.hostVars,s.hostAttrs=On(s.hostAttrs,n=On(n,s.hostAttrs))}}(i)}function qo(t){return t===le?{}:t===ce?[]:t}function $o(t,e){const n=t.viewQuery;t.viewQuery=n?(t,i)=>{e(t,i),n(t,i)}:e}function Uo(t,e){const n=t.contentQueries;t.contentQueries=n?(t,i,s)=>{e(t,i,s),n(t,i,s)}:e}function Go(t,e){const n=t.hostBindings;t.hostBindings=n?(t,i)=>{e(t,i),n(t,i)}:e}function Wo(t,e,n,i,s){if(t=Et(t),Array.isArray(t))for(let r=0;r>20;if(Kr(t)||!t.multi){const i=new In(l,s,lo),p=Ko(a,e,s?h:h+d,u);-1===p?(Qn(Un(c,o),r,a),Zo(r,t,e.length),e.push(a),c.directiveStart++,c.directiveEnd++,s&&(c.providerIndexes+=1048576),n.push(i),o.push(i)):(n[p]=i,o[p]=i)}else{const p=Ko(a,e,h+d,u),f=Ko(a,e,h,h+d),m=p>=0&&n[p],g=f>=0&&n[f];if(s&&!g||!s&&!m){Qn(Un(c,o),r,a);const h=function(t,e,n,i,s){const r=new In(t,n,lo);return r.multi=[],r.index=e,r.componentProviders=0,Qo(r,s,i&&!n),r}(s?Jo:Yo,n.length,s,i,l);!s&&g&&(n[f].providerFactory=h),Zo(r,t,e.length,0),e.push(a),c.directiveStart++,c.directiveEnd++,s&&(c.providerIndexes+=1048576),n.push(h),o.push(h)}else Zo(r,t,p>-1?p:f,Qo(n[s?f:p],l,!s&&i));!s&&i&&g&&n[f].componentProviders++}}}function Zo(t,e,n,i){const s=Kr(e);if(s||e.useClass){const r=(e.useClass||e).prototype.ngOnDestroy;if(r){const o=t.destroyHooks||(t.destroyHooks=[]);if(!s&&e.multi){const t=o.indexOf(n);-1===t?o.push(n,[i,r]):o[t+1].push(i,r)}else o.push(n,r)}}}function Qo(t,e,n){return n&&t.componentProviders++,t.multi.push(e)-1}function Ko(t,e,n,i){for(let s=n;s{n.providersResolver=(n,i)=>function(t,e,n){const i=Ye();if(i.firstCreatePass){const s=ke(t);Wo(n,i.data,i.blueprint,s,!0),Wo(e,i.data,i.blueprint,s,!1)}}(n,i?i(t):t,e)}}class ea{}class na{resolveComponentFactory(t){throw function(t){const e=Error(`No component factory found for ${bt(t)}. Did you add it to @NgModule.entryComponents?`);return e.ngComponent=t,e}(t)}}let ia=(()=>{class t{}return t.NULL=new na,t})(),sa=(()=>{class t{constructor(t){this.nativeElement=t}}return t.__NG_ELEMENT_ID__=()=>ra(t),t})();const ra=function(t){return Rr(t,Xe(),Ke())};class oa{}var aa=function(t){return t[t.Important=1]="Important",t[t.DashCase=2]="DashCase",t}({});let la=(()=>{class t{}return t.__NG_ELEMENT_ID__=()=>ca(),t})();const ca=function(){const t=Ke(),e=He(Xe().index,t);return function(t){const e=t[11];if(Fe(e))return e;throw new Error("Cannot inject Renderer2 when the application uses Renderer3!")}(we(e)?e:t)};let ha=(()=>{class t{}return t.\u0275prov=ct({token:t,providedIn:"root",factory:()=>null}),t})();class ua{constructor(t){this.full=t,this.major=t.split(".")[0],this.minor=t.split(".")[1],this.patch=t.split(".").slice(2).join(".")}}const da=new ua("10.0.5");class pa{constructor(){}supports(t){return no(t)}create(t){return new ma(t)}}const fa=(t,e)=>e;class ma{constructor(t){this.length=0,this._linkedRecords=null,this._unlinkedRecords=null,this._previousItHead=null,this._itHead=null,this._itTail=null,this._additionsHead=null,this._additionsTail=null,this._movesHead=null,this._movesTail=null,this._removalsHead=null,this._removalsTail=null,this._identityChangesHead=null,this._identityChangesTail=null,this._trackByFn=t||fa}forEachItem(t){let e;for(e=this._itHead;null!==e;e=e._next)t(e)}forEachOperation(t){let e=this._itHead,n=this._removalsHead,i=0,s=null;for(;e||n;){const r=!n||e&&e.currentIndex{i=this._trackByFn(e,t),null!==s&&Object.is(s.trackById,i)?(r&&(s=this._verifyReinsertion(s,t,i,e)),Object.is(s.item,t)||this._addIdentityChange(s,t)):(s=this._mismatch(s,t,i,e),r=!0),s=s._next,e++}),this.length=e;return this._truncate(s),this.collection=t,this.isDirty}get isDirty(){return null!==this._additionsHead||null!==this._movesHead||null!==this._removalsHead||null!==this._identityChangesHead}_reset(){if(this.isDirty){let t,e;for(t=this._previousItHead=this._itHead;null!==t;t=t._next)t._nextPrevious=t._next;for(t=this._additionsHead;null!==t;t=t._nextAdded)t.previousIndex=t.currentIndex;for(this._additionsHead=this._additionsTail=null,t=this._movesHead;null!==t;t=e)t.previousIndex=t.currentIndex,e=t._nextMoved;this._movesHead=this._movesTail=null,this._removalsHead=this._removalsTail=null,this._identityChangesHead=this._identityChangesTail=null}}_mismatch(t,e,n,i){let s;return null===t?s=this._itTail:(s=t._prev,this._remove(t)),null!==(t=null===this._linkedRecords?null:this._linkedRecords.get(n,i))?(Object.is(t.item,e)||this._addIdentityChange(t,e),this._moveAfter(t,s,i)):null!==(t=null===this._unlinkedRecords?null:this._unlinkedRecords.get(n,null))?(Object.is(t.item,e)||this._addIdentityChange(t,e),this._reinsertAfter(t,s,i)):t=this._addAfter(new ga(e,n),s,i),t}_verifyReinsertion(t,e,n,i){let s=null===this._unlinkedRecords?null:this._unlinkedRecords.get(n,null);return null!==s?t=this._reinsertAfter(s,t._prev,i):t.currentIndex!=i&&(t.currentIndex=i,this._addToMoves(t,i)),t}_truncate(t){for(;null!==t;){const e=t._next;this._addToRemovals(this._unlink(t)),t=e}null!==this._unlinkedRecords&&this._unlinkedRecords.clear(),null!==this._additionsTail&&(this._additionsTail._nextAdded=null),null!==this._movesTail&&(this._movesTail._nextMoved=null),null!==this._itTail&&(this._itTail._next=null),null!==this._removalsTail&&(this._removalsTail._nextRemoved=null),null!==this._identityChangesTail&&(this._identityChangesTail._nextIdentityChange=null)}_reinsertAfter(t,e,n){null!==this._unlinkedRecords&&this._unlinkedRecords.remove(t);const i=t._prevRemoved,s=t._nextRemoved;return null===i?this._removalsHead=s:i._nextRemoved=s,null===s?this._removalsTail=i:s._prevRemoved=i,this._insertAfter(t,e,n),this._addToMoves(t,n),t}_moveAfter(t,e,n){return this._unlink(t),this._insertAfter(t,e,n),this._addToMoves(t,n),t}_addAfter(t,e,n){return this._insertAfter(t,e,n),this._additionsTail=null===this._additionsTail?this._additionsHead=t:this._additionsTail._nextAdded=t,t}_insertAfter(t,e,n){const i=null===e?this._itHead:e._next;return t._next=i,t._prev=e,null===i?this._itTail=t:i._prev=t,null===e?this._itHead=t:e._next=t,null===this._linkedRecords&&(this._linkedRecords=new ya),this._linkedRecords.put(t),t.currentIndex=n,t}_remove(t){return this._addToRemovals(this._unlink(t))}_unlink(t){null!==this._linkedRecords&&this._linkedRecords.remove(t);const e=t._prev,n=t._next;return null===e?this._itHead=n:e._next=n,null===n?this._itTail=e:n._prev=e,t}_addToMoves(t,e){return t.previousIndex===e||(this._movesTail=null===this._movesTail?this._movesHead=t:this._movesTail._nextMoved=t),t}_addToRemovals(t){return null===this._unlinkedRecords&&(this._unlinkedRecords=new ya),this._unlinkedRecords.put(t),t.currentIndex=null,t._nextRemoved=null,null===this._removalsTail?(this._removalsTail=this._removalsHead=t,t._prevRemoved=null):(t._prevRemoved=this._removalsTail,this._removalsTail=this._removalsTail._nextRemoved=t),t}_addIdentityChange(t,e){return t.item=e,this._identityChangesTail=null===this._identityChangesTail?this._identityChangesHead=t:this._identityChangesTail._nextIdentityChange=t,t}}class ga{constructor(t,e){this.item=t,this.trackById=e,this.currentIndex=null,this.previousIndex=null,this._nextPrevious=null,this._prev=null,this._next=null,this._prevDup=null,this._nextDup=null,this._prevRemoved=null,this._nextRemoved=null,this._nextAdded=null,this._nextMoved=null,this._nextIdentityChange=null}}class _a{constructor(){this._head=null,this._tail=null}add(t){null===this._head?(this._head=this._tail=t,t._nextDup=null,t._prevDup=null):(this._tail._nextDup=t,t._prevDup=this._tail,t._nextDup=null,this._tail=t)}get(t,e){let n;for(n=this._head;null!==n;n=n._nextDup)if((null===e||e<=n.currentIndex)&&Object.is(n.trackById,t))return n;return null}remove(t){const e=t._prevDup,n=t._nextDup;return null===e?this._head=n:e._nextDup=n,null===n?this._tail=e:n._prevDup=e,null===this._head}}class ya{constructor(){this.map=new Map}put(t){const e=t.trackById;let n=this.map.get(e);n||(n=new _a,this.map.set(e,n)),n.add(t)}get(t,e){const n=this.map.get(t);return n?n.get(t,e):null}remove(t){const e=t.trackById;return this.map.get(e).remove(t)&&this.map.delete(e),t}get isEmpty(){return 0===this.map.size}clear(){this.map.clear()}}function ba(t,e,n){const i=t.previousIndex;if(null===i)return i;let s=0;return n&&i{if(e&&e.key===n)this._maybeAddToChanges(e,t),this._appendAfter=e,e=e._next;else{const i=this._getOrCreateRecordForKey(n,t);e=this._insertBeforeOrAppend(e,i)}}),e){e._prev&&(e._prev._next=null),this._removalsHead=e;for(let t=e;null!==t;t=t._nextRemoved)t===this._mapHead&&(this._mapHead=null),this._records.delete(t.key),t._nextRemoved=t._next,t.previousValue=t.currentValue,t.currentValue=null,t._prev=null,t._next=null}return this._changesTail&&(this._changesTail._nextChanged=null),this._additionsTail&&(this._additionsTail._nextAdded=null),this.isDirty}_insertBeforeOrAppend(t,e){if(t){const n=t._prev;return e._next=t,e._prev=n,t._prev=e,n&&(n._next=e),t===this._mapHead&&(this._mapHead=e),this._appendAfter=t,t}return this._appendAfter?(this._appendAfter._next=e,e._prev=this._appendAfter):this._mapHead=e,this._appendAfter=e,null}_getOrCreateRecordForKey(t,e){if(this._records.has(t)){const n=this._records.get(t);this._maybeAddToChanges(n,e);const i=n._prev,s=n._next;return i&&(i._next=s),s&&(s._prev=i),n._next=null,n._prev=null,n}const n=new Ca(t);return this._records.set(t,n),n.currentValue=e,this._addToAdditions(n),n}_reset(){if(this.isDirty){let t;for(this._previousMapHead=this._mapHead,t=this._previousMapHead;null!==t;t=t._next)t._nextPrevious=t._next;for(t=this._changesHead;null!==t;t=t._nextChanged)t.previousValue=t.currentValue;for(t=this._additionsHead;null!=t;t=t._nextAdded)t.previousValue=t.currentValue;this._changesHead=this._changesTail=null,this._additionsHead=this._additionsTail=null,this._removalsHead=null}}_maybeAddToChanges(t,e){Object.is(e,t.currentValue)||(t.previousValue=t.currentValue,t.currentValue=e,this._addToChanges(t))}_addToAdditions(t){null===this._additionsHead?this._additionsHead=this._additionsTail=t:(this._additionsTail._nextAdded=t,this._additionsTail=t)}_addToChanges(t){null===this._changesHead?this._changesHead=this._changesTail=t:(this._changesTail._nextChanged=t,this._changesTail=t)}_forEach(t,e){t instanceof Map?t.forEach(e):Object.keys(t).forEach(n=>e(t[n],n))}}class Ca{constructor(t){this.key=t,this.previousValue=null,this.currentValue=null,this._nextPrevious=null,this._next=null,this._prev=null,this._nextAdded=null,this._nextRemoved=null,this._nextChanged=null}}let Ea=(()=>{class t{constructor(t){this.factories=t}static create(e,n){if(null!=n){const t=n.factories.slice();e=e.concat(t)}return new t(e)}static extend(e){return{provide:t,useFactory:n=>{if(!n)throw new Error("Cannot extend IterableDiffers without a parent injector");return t.create(e,n)},deps:[[t,new rt,new it]]}}find(t){const e=this.factories.find(e=>e.supports(t));if(null!=e)return e;throw new Error(`Cannot find a differ supporting object '${t}' of type '${n=t,n.name||typeof n}'`);var n}}return t.\u0275prov=ct({token:t,providedIn:"root",factory:()=>new t([new pa])}),t})(),Sa=(()=>{class t{constructor(t){this.factories=t}static create(e,n){if(n){const t=n.factories.slice();e=e.concat(t)}return new t(e)}static extend(e){return{provide:t,useFactory:n=>{if(!n)throw new Error("Cannot extend KeyValueDiffers without a parent injector");return t.create(e,n)},deps:[[t,new rt,new it]]}}find(t){const e=this.factories.find(e=>e.supports(t));if(e)return e;throw new Error(`Cannot find a differ supporting object '${t}'`)}}return t.\u0275prov=ct({token:t,providedIn:"root",factory:()=>new t([new va])}),t})();const xa=[new va],ka=new Ea([new pa]),Ta=new Sa(xa);let Ia=(()=>{class t{}return t.__NG_ELEMENT_ID__=()=>Da(t,sa),t})();const Da=function(t,e){return Nr(t,e,Xe(),Ke())};let Aa=(()=>{class t{}return t.__NG_ELEMENT_ID__=()=>Pa(t,sa),t})();const Pa=function(t,e){return Fr(t,e,Xe(),Ke())},Oa={};class Ra extends ia{constructor(t){super(),this.ngModule=t}resolveComponentFactory(t){const e=ye(t);return new Va(e,this.ngModule)}}function Na(t){const e=[];for(let n in t)t.hasOwnProperty(n)&&e.push({propName:t[n],templateName:n});return e}const Fa=new Mt("SCHEDULER_TOKEN",{providedIn:"root",factory:()=>Bn});class Va extends ea{constructor(t,e){super(),this.componentDef=t,this.ngModule=e,this.componentType=t.type,this.selector=t.selectors.map(ss).join(","),this.ngContentSelectors=t.ngContentSelectors?t.ngContentSelectors:[],this.isBoundToModule=!!e}get inputs(){return Na(this.componentDef.inputs)}get outputs(){return Na(this.componentDef.outputs)}create(t,e,n,i){const s=(i=i||this.ngModule)?function(t,e){return{get:(n,i,s)=>{const r=t.get(n,Oa,s);return r!==Oa||i===Oa?r:e.get(n,i,s)}}}(t,i.injector):t,r=s.get(oa,Ve),o=s.get(ha,null),a=r.createRenderer(null,this.componentDef),l=this.componentDef.selectors[0][0]||"div",c=n?function(t,e,n){if(Fe(t))return t.selectRootElement(e,n===ae.ShadowDom);let i="string"==typeof e?t.querySelector(e):e;return i.textContent="",i}(a,n,this.componentDef.encapsulation):bs(l,r.createRenderer(null,this.componentDef),function(t){const e=t.toLowerCase();return"svg"===e?"http://www.w3.org/2000/svg":"math"===e?"http://www.w3.org/1998/MathML/":null}(l)),h=this.componentDef.onPush?576:528,u={components:[],scheduler:Bn,clean:er,playerHandler:null,flags:0},d=As(0,-1,null,1,0,null,null,null,null,null),p=vs(null,d,u,h,null,null,r,a,o,s);let f,m;pn(p,null);try{const t=function(t,e,n,i,s,r){const o=n[1];n[20]=t;const a=ws(o,null,0,3,null,null),l=a.mergedAttrs=e.hostAttrs;null!==l&&(Xr(a,l,!0),null!==t&&(Dn(s,t,l),null!==a.classes&&Tr(s,t,a.classes),null!==a.styles&&kr(s,t,a.styles)));const c=i.createRenderer(t,e),h=vs(n,Ds(e),null,e.onPush?64:16,n[20],a,i,c,void 0);return o.firstCreatePass&&(Qn(Un(a,n),o,e.type),Bs(o,a),zs(a,n.length,1)),Ks(n,h),n[20]=h}(c,this.componentDef,p,r,a);if(c)if(n)Dn(a,c,["ng-version",da.full]);else{const{attrs:t,classes:e}=function(t){const e=[],n=[];let i=1,s=2;for(;i0&&Tr(a,c,e.join(" "))}if(m=Be(d,0),void 0!==e){const t=m.projection=[];for(let n=0;nt(o,e)),e.contentQueries&&e.contentQueries(1,o,n.length-1);const a=Xe();if(r.firstCreatePass&&(null!==e.hostBindings||null!==e.hostAttrs)){vn(a.index-20);const t=n[1];Vs(t,e),Ms(t,n,e.hostVars),Ls(e,o)}return o}(t,this.componentDef,p,u,[Ho]),Cs(d,p,null)}finally{yn()}const g=new Ma(this.componentType,f,Rr(sa,m,p),p,m);return d.node.child=m,g}}class Ma extends class{}{constructor(t,e,n,i,s){super(),this.location=n,this._rootLView=i,this._tNode=s,this.destroyCbs=[],this.instance=e,this.hostView=this.changeDetectorRef=new Dr(i),function(t,e,n,i){let s=t.node;null==s&&(t.node=s=Os(0,null,2,-1,null,null)),i[6]=s}(i[1],0,0,i),this.componentType=t}get injector(){return new ii(this._tNode,this._rootLView)}destroy(){this.destroyCbs&&(this.destroyCbs.forEach(t=>t()),this.destroyCbs=null,!this.hostView.destroyed&&this.hostView.destroy())}onDestroy(t){this.destroyCbs&&this.destroyCbs.push(t)}}const La=void 0;var ja=["en",[["a","p"],["AM","PM"],La],[["AM","PM"],La,La],[["S","M","T","W","T","F","S"],["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],["Su","Mo","Tu","We","Th","Fr","Sa"]],La,[["J","F","M","A","M","J","J","A","S","O","N","D"],["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],["January","February","March","April","May","June","July","August","September","October","November","December"]],La,[["B","A"],["BC","AD"],["Before Christ","Anno Domini"]],0,[6,0],["M/d/yy","MMM d, y","MMMM d, y","EEEE, MMMM d, y"],["h:mm a","h:mm:ss a","h:mm:ss a z","h:mm:ss a zzzz"],["{1}, {0}",La,"{1} 'at' {0}",La],[".",",",";","%","+","-","E","\xd7","\u2030","\u221e","NaN",":"],["#,##0.###","#,##0%","\xa4#,##0.00","#E0"],"USD","$","US Dollar",{},"ltr",function(t){let e=Math.floor(Math.abs(t)),n=t.toString().replace(/^[^.]*\.?/,"").length;return 1===e&&0===n?1:5}];let Ba={};function Ha(t){return t in Ba||(Ba[t]=Dt.ng&&Dt.ng.common&&Dt.ng.common.locales&&Dt.ng.common.locales[t]),Ba[t]}var za=function(t){return t[t.LocaleId=0]="LocaleId",t[t.DayPeriodsFormat=1]="DayPeriodsFormat",t[t.DayPeriodsStandalone=2]="DayPeriodsStandalone",t[t.DaysFormat=3]="DaysFormat",t[t.DaysStandalone=4]="DaysStandalone",t[t.MonthsFormat=5]="MonthsFormat",t[t.MonthsStandalone=6]="MonthsStandalone",t[t.Eras=7]="Eras",t[t.FirstDayOfWeek=8]="FirstDayOfWeek",t[t.WeekendRange=9]="WeekendRange",t[t.DateFormat=10]="DateFormat",t[t.TimeFormat=11]="TimeFormat",t[t.DateTimeFormat=12]="DateTimeFormat",t[t.NumberSymbols=13]="NumberSymbols",t[t.NumberFormats=14]="NumberFormats",t[t.CurrencyCode=15]="CurrencyCode",t[t.CurrencySymbol=16]="CurrencySymbol",t[t.CurrencyName=17]="CurrencyName",t[t.Currencies=18]="Currencies",t[t.Directionality=19]="Directionality",t[t.PluralCase=20]="PluralCase",t[t.ExtraData=21]="ExtraData",t}({});let qa="en-US";function $a(t){var e,n;n="Expected localeId to be defined",null==(e=t)&&function(t,e,n,i){throw new Error("ASSERTION ERROR: "+t+` [Expected=> null != ${e} <=Actual]`)}(n,e),"string"==typeof t&&(qa=t.toLowerCase().replace(/_/g,"-"))}const Ua=new Map;class Ga extends Jt{constructor(t,e){super(),this._parent=e,this._bootstrapComponents=[],this.injector=this,this.destroyCbs=[],this.componentFactoryResolver=new Ra(this);const n=ve(t),i=t[Nt]||null;i&&$a(i),this._bootstrapComponents=Hn(n.bootstrap),this._r3Injector=$r(t,e,[{provide:Jt,useValue:this},{provide:ia,useValue:this.componentFactoryResolver}],bt(t)),this._r3Injector._resolveInjectorDefTypes(),this.instance=this.get(t)}get(t,e=Jr.THROW_IF_NOT_FOUND,n=ot.Default){return t===Jr||t===Jt||t===Lt?this:this._r3Injector.get(t,e,n)}destroy(){const t=this._r3Injector;!t.destroyed&&t.destroy(),this.destroyCbs.forEach(t=>t()),this.destroyCbs=null}onDestroy(t){this.destroyCbs.push(t)}}class Wa extends class{}{constructor(t){super(),this.moduleType=t,null!==ve(t)&&function t(e){if(null!==e.\u0275mod.id){const t=e.\u0275mod.id;(function(t,e,n){if(e&&e!==n)throw new Error(`Duplicate module registered for ${t} - ${bt(e)} vs ${bt(e.name)}`)})(t,Ua.get(t),e),Ua.set(t,e)}let n=e.\u0275mod.imports;n instanceof Function&&(n=n()),n&&n.forEach(e=>t(e))}(t)}create(t){return new Ga(this.moduleType,t)}}const Za=class extends E{constructor(t=!1){super(),this.__isAsync=t}emit(t){super.next(t)}subscribe(t,e,n){let i,s=t=>null,r=()=>null;t&&"object"==typeof t?(i=this.__isAsync?e=>{setTimeout(()=>t.next(e))}:e=>{t.next(e)},t.error&&(s=this.__isAsync?e=>{setTimeout(()=>t.error(e))}:e=>{t.error(e)}),t.complete&&(r=this.__isAsync?()=>{setTimeout(()=>t.complete())}:()=>{t.complete()})):(i=this.__isAsync?e=>{setTimeout(()=>t(e))}:e=>{t(e)},e&&(s=this.__isAsync?t=>{setTimeout(()=>e(t))}:t=>{e(t)}),n&&(r=this.__isAsync?()=>{setTimeout(()=>n())}:()=>{n()}));const o=super.subscribe(i,s,r);return t instanceof u&&t.add(o),o}};function Qa(){return this._results[eo()]()}class Ka{constructor(){this.dirty=!0,this._results=[],this.changes=new Za,this.length=0;const t=eo(),e=Ka.prototype;e[t]||(e[t]=Qa)}map(t){return this._results.map(t)}filter(t){return this._results.filter(t)}find(t){return this._results.find(t)}reduce(t,e){return this._results.reduce(t,e)}forEach(t){this._results.forEach(t)}some(t){return this._results.some(t)}toArray(){return this._results.slice()}toString(){return this._results.toString()}reset(t){this._results=function t(e,n){void 0===n&&(n=e);for(let i=0;i0)s.push(a[e/2]);else{const r=o[e+1],a=n[-i];for(let e=10;e{class t{constructor(t){this.appInits=t,this.initialized=!1,this.done=!1,this.donePromise=new Promise((t,e)=>{this.resolve=t,this.reject=e})}runInitializers(){if(this.initialized)return;const t=[],e=()=>{this.done=!0,this.resolve()};if(this.appInits)for(let n=0;n{e()}).catch(t=>{this.reject(t)}),0===t.length&&e(),this.initialized=!0}}return t.\u0275fac=function(e){return new(e||t)(Wt(ml,8))},t.\u0275prov=ct({token:t,factory:t.\u0275fac}),t})();const _l=new Mt("AppId"),yl={provide:_l,useFactory:function(){return`${bl()}${bl()}${bl()}`},deps:[]};function bl(){return String.fromCharCode(97+Math.floor(25*Math.random()))}const vl=new Mt("Platform Initializer"),wl=new Mt("Platform ID"),Cl=new Mt("appBootstrapListener");let El=(()=>{class t{log(t){console.log(t)}warn(t){console.warn(t)}}return t.\u0275fac=function(e){return new(e||t)},t.\u0275prov=ct({token:t,factory:t.\u0275fac}),t})();const Sl=new Mt("LocaleId"),xl=new Mt("DefaultCurrencyCode");class kl{constructor(t,e){this.ngModuleFactory=t,this.componentFactories=e}}const Tl=function(t){return new Wa(t)},Il=Tl,Dl=function(t){return Promise.resolve(Tl(t))},Al=function(t){const e=Tl(t),n=Hn(ve(t).declarations).reduce((t,e)=>{const n=ye(e);return n&&t.push(new Va(n)),t},[]);return new kl(e,n)},Pl=Al,Ol=function(t){return Promise.resolve(Al(t))};let Rl=(()=>{class t{constructor(){this.compileModuleSync=Il,this.compileModuleAsync=Dl,this.compileModuleAndAllComponentsSync=Pl,this.compileModuleAndAllComponentsAsync=Ol}clearCache(){}clearCacheFor(t){}getModuleId(t){}}return t.\u0275fac=function(e){return new(e||t)},t.\u0275prov=ct({token:t,factory:t.\u0275fac}),t})();const Nl=(()=>Promise.resolve(0))();function Fl(t){"undefined"==typeof Zone?Nl.then(()=>{t&&t.apply(null,null)}):Zone.current.scheduleMicroTask("scheduleMicrotask",t)}class Vl{constructor({enableLongStackTrace:t=!1,shouldCoalesceEventChangeDetection:e=!1}){if(this.hasPendingMacrotasks=!1,this.hasPendingMicrotasks=!1,this.isStable=!0,this.onUnstable=new Za(!1),this.onMicrotaskEmpty=new Za(!1),this.onStable=new Za(!1),this.onError=new Za(!1),"undefined"==typeof Zone)throw new Error("In this configuration Angular requires Zone.js");Zone.assertZonePatched(),this._nesting=0,this._outer=this._inner=Zone.current,Zone.wtfZoneSpec&&(this._inner=this._inner.fork(Zone.wtfZoneSpec)),Zone.TaskTrackingZoneSpec&&(this._inner=this._inner.fork(new Zone.TaskTrackingZoneSpec)),t&&Zone.longStackTraceZoneSpec&&(this._inner=this._inner.fork(Zone.longStackTraceZoneSpec)),this.shouldCoalesceEventChangeDetection=e,this.lastRequestAnimationFrameId=-1,this.nativeRequestAnimationFrame=function(){let t=Dt.requestAnimationFrame,e=Dt.cancelAnimationFrame;if("undefined"!=typeof Zone&&t&&e){const n=t[Zone.__symbol__("OriginalDelegate")];n&&(t=n);const i=e[Zone.__symbol__("OriginalDelegate")];i&&(e=i)}return{nativeRequestAnimationFrame:t,nativeCancelAnimationFrame:e}}().nativeRequestAnimationFrame,function(t){const e=!!t.shouldCoalesceEventChangeDetection&&t.nativeRequestAnimationFrame&&(()=>{!function(t){-1===t.lastRequestAnimationFrameId&&(t.lastRequestAnimationFrameId=t.nativeRequestAnimationFrame.call(Dt,()=>{t.fakeTopEventTask||(t.fakeTopEventTask=Zone.root.scheduleEventTask("fakeTopEventTask",()=>{t.lastRequestAnimationFrameId=-1,Bl(t),jl(t)},void 0,()=>{},()=>{})),t.fakeTopEventTask.invoke()}),Bl(t))}(t)});t._inner=t._inner.fork({name:"angular",properties:{isAngularZone:!0,maybeDelayChangeDetection:e},onInvokeTask:(n,i,s,r,o,a)=>{try{return Hl(t),n.invokeTask(s,r,o,a)}finally{e&&"eventTask"===r.type&&e(),zl(t)}},onInvoke:(e,n,i,s,r,o,a)=>{try{return Hl(t),e.invoke(i,s,r,o,a)}finally{zl(t)}},onHasTask:(e,n,i,s)=>{e.hasTask(i,s),n===i&&("microTask"==s.change?(t._hasPendingMicrotasks=s.microTask,Bl(t),jl(t)):"macroTask"==s.change&&(t.hasPendingMacrotasks=s.macroTask))},onHandleError:(e,n,i,s)=>(e.handleError(i,s),t.runOutsideAngular(()=>t.onError.emit(s)),!1)})}(this)}static isInAngularZone(){return!0===Zone.current.get("isAngularZone")}static assertInAngularZone(){if(!Vl.isInAngularZone())throw new Error("Expected to be in Angular Zone, but it is not!")}static assertNotInAngularZone(){if(Vl.isInAngularZone())throw new Error("Expected to not be in Angular Zone, but it is!")}run(t,e,n){return this._inner.run(t,e,n)}runTask(t,e,n,i){const s=this._inner,r=s.scheduleEventTask("NgZoneEvent: "+i,t,Ll,Ml,Ml);try{return s.runTask(r,e,n)}finally{s.cancelTask(r)}}runGuarded(t,e,n){return this._inner.runGuarded(t,e,n)}runOutsideAngular(t){return this._outer.run(t)}}function Ml(){}const Ll={};function jl(t){if(0==t._nesting&&!t.hasPendingMicrotasks&&!t.isStable)try{t._nesting++,t.onMicrotaskEmpty.emit(null)}finally{if(t._nesting--,!t.hasPendingMicrotasks)try{t.runOutsideAngular(()=>t.onStable.emit(null))}finally{t.isStable=!0}}}function Bl(t){t.hasPendingMicrotasks=!!(t._hasPendingMicrotasks||t.shouldCoalesceEventChangeDetection&&-1!==t.lastRequestAnimationFrameId)}function Hl(t){t._nesting++,t.isStable&&(t.isStable=!1,t.onUnstable.emit(null))}function zl(t){t._nesting--,jl(t)}class ql{constructor(){this.hasPendingMicrotasks=!1,this.hasPendingMacrotasks=!1,this.isStable=!0,this.onUnstable=new Za,this.onMicrotaskEmpty=new Za,this.onStable=new Za,this.onError=new Za}run(t,e,n){return t.apply(e,n)}runGuarded(t,e,n){return t.apply(e,n)}runOutsideAngular(t){return t()}runTask(t,e,n,i){return t.apply(e,n)}}let $l=(()=>{class t{constructor(t){this._ngZone=t,this._pendingCount=0,this._isZoneStable=!0,this._didWork=!1,this._callbacks=[],this.taskTrackingZone=null,this._watchAngularEvents(),t.run(()=>{this.taskTrackingZone="undefined"==typeof Zone?null:Zone.current.get("TaskTrackingZone")})}_watchAngularEvents(){this._ngZone.onUnstable.subscribe({next:()=>{this._didWork=!0,this._isZoneStable=!1}}),this._ngZone.runOutsideAngular(()=>{this._ngZone.onStable.subscribe({next:()=>{Vl.assertNotInAngularZone(),Fl(()=>{this._isZoneStable=!0,this._runCallbacksIfReady()})}})})}increasePendingRequestCount(){return this._pendingCount+=1,this._didWork=!0,this._pendingCount}decreasePendingRequestCount(){if(this._pendingCount-=1,this._pendingCount<0)throw new Error("pending async requests below zero");return this._runCallbacksIfReady(),this._pendingCount}isStable(){return this._isZoneStable&&0===this._pendingCount&&!this._ngZone.hasPendingMacrotasks}_runCallbacksIfReady(){if(this.isStable())Fl(()=>{for(;0!==this._callbacks.length;){let t=this._callbacks.pop();clearTimeout(t.timeoutId),t.doneCb(this._didWork)}this._didWork=!1});else{let t=this.getPendingTasks();this._callbacks=this._callbacks.filter(e=>!e.updateCb||!e.updateCb(t)||(clearTimeout(e.timeoutId),!1)),this._didWork=!0}}getPendingTasks(){return this.taskTrackingZone?this.taskTrackingZone.macroTasks.map(t=>({source:t.source,creationLocation:t.creationLocation,data:t.data})):[]}addCallback(t,e,n){let i=-1;e&&e>0&&(i=setTimeout(()=>{this._callbacks=this._callbacks.filter(t=>t.timeoutId!==i),t(this._didWork,this.getPendingTasks())},e)),this._callbacks.push({doneCb:t,timeoutId:i,updateCb:n})}whenStable(t,e,n){if(n&&!this.taskTrackingZone)throw new Error('Task tracking zone is required when passing an update callback to whenStable(). Is "zone.js/dist/task-tracking.js" loaded?');this.addCallback(t,e,n),this._runCallbacksIfReady()}getPendingRequestCount(){return this._pendingCount}findProviders(t,e,n){return[]}}return t.\u0275fac=function(e){return new(e||t)(Wt(Vl))},t.\u0275prov=ct({token:t,factory:t.\u0275fac}),t})(),Ul=(()=>{class t{constructor(){this._applications=new Map,Zl.addToWindow(this)}registerApplication(t,e){this._applications.set(t,e)}unregisterApplication(t){this._applications.delete(t)}unregisterAllApplications(){this._applications.clear()}getTestability(t){return this._applications.get(t)||null}getAllTestabilities(){return Array.from(this._applications.values())}getAllRootElements(){return Array.from(this._applications.keys())}findTestabilityInTree(t,e=!0){return Zl.findTestabilityInTree(this,t,e)}}return t.\u0275fac=function(e){return new(e||t)},t.\u0275prov=ct({token:t,factory:t.\u0275fac}),t})();class Gl{addToWindow(t){}findTestabilityInTree(t,e,n){return null}}let Wl,Zl=new Gl;const Ql=new Mt("AllowMultipleToken");function Kl(t,e,n=[]){const i="Platform: "+e,s=new Mt(i);return(e=[])=>{let r=Yl();if(!r||r.injector.get(Ql,!1))if(t)t(n.concat(e).concat({provide:s,useValue:!0}));else{const t=n.concat(e).concat({provide:s,useValue:!0},{provide:Lr,useValue:"platform"});!function(t){if(Wl&&!Wl.destroyed&&!Wl.injector.get(Ql,!1))throw new Error("There can be only one platform. Destroy the previous one to create a new one.");Wl=t.get(Jl);const e=t.get(vl,null);e&&e.forEach(t=>t())}(Jr.create({providers:t,name:i}))}return function(t){const e=Yl();if(!e)throw new Error("No platform exists!");if(!e.injector.get(t,null))throw new Error("A platform with a different configuration has been created. Please destroy it first.");return e}(s)}}function Yl(){return Wl&&!Wl.destroyed?Wl:null}let Jl=(()=>{class t{constructor(t){this._injector=t,this._modules=[],this._destroyListeners=[],this._destroyed=!1}bootstrapModuleFactory(t,e){const n=function(t,e){let n;return n="noop"===t?new ql:("zone.js"===t?void 0:t)||new Vl({enableLongStackTrace:wi(),shouldCoalesceEventChangeDetection:e}),n}(e?e.ngZone:void 0,e&&e.ngZoneEventCoalescing||!1),i=[{provide:Vl,useValue:n}];return n.run(()=>{const e=Jr.create({providers:i,parent:this.injector,name:t.moduleType.name}),s=t.create(e),r=s.injector.get(ci,null);if(!r)throw new Error("No ErrorHandler. Is platform module (BrowserModule) included?");return s.onDestroy(()=>ec(this._modules,s)),n.runOutsideAngular(()=>n.onError.subscribe({next:t=>{r.handleError(t)}})),function(t,e,n){try{const i=n();return yo(i)?i.catch(n=>{throw e.runOutsideAngular(()=>t.handleError(n)),n}):i}catch(i){throw e.runOutsideAngular(()=>t.handleError(i)),i}}(r,n,()=>{const t=s.injector.get(gl);return t.runInitializers(),t.donePromise.then(()=>($a(s.injector.get(Sl,"en-US")||"en-US"),this._moduleDoBootstrap(s),s))})})}bootstrapModule(t,e=[]){const n=Xl({},e);return function(t,e,n){const i=new Wa(n);return Promise.resolve(i)}(0,0,t).then(t=>this.bootstrapModuleFactory(t,n))}_moduleDoBootstrap(t){const e=t.injector.get(tc);if(t._bootstrapComponents.length>0)t._bootstrapComponents.forEach(t=>e.bootstrap(t));else{if(!t.instance.ngDoBootstrap)throw new Error(`The module ${bt(t.instance.constructor)} was bootstrapped, but it does not declare "@NgModule.bootstrap" components nor a "ngDoBootstrap" method. Please define one of these.`);t.instance.ngDoBootstrap(e)}this._modules.push(t)}onDestroy(t){this._destroyListeners.push(t)}get injector(){return this._injector}destroy(){if(this._destroyed)throw new Error("The platform has already been destroyed!");this._modules.slice().forEach(t=>t.destroy()),this._destroyListeners.forEach(t=>t()),this._destroyed=!0}get destroyed(){return this._destroyed}}return t.\u0275fac=function(e){return new(e||t)(Wt(Jr))},t.\u0275prov=ct({token:t,factory:t.\u0275fac}),t})();function Xl(t,e){return Array.isArray(e)?e.reduce(Xl,t):Object.assign(Object.assign({},t),e)}let tc=(()=>{class t{constructor(t,e,n,i,s,r){this._zone=t,this._console=e,this._injector=n,this._exceptionHandler=i,this._componentFactoryResolver=s,this._initStatus=r,this._bootstrapListeners=[],this._views=[],this._runningTick=!1,this._enforceNoNewChanges=!1,this._stable=!0,this.componentTypes=[],this.components=[],this._enforceNoNewChanges=wi(),this._zone.onMicrotaskEmpty.subscribe({next:()=>{this._zone.run(()=>{this.tick()})}});const o=new y(t=>{this._stable=this._zone.isStable&&!this._zone.hasPendingMacrotasks&&!this._zone.hasPendingMicrotasks,this._zone.runOutsideAngular(()=>{t.next(this._stable),t.complete()})}),a=new y(t=>{let e;this._zone.runOutsideAngular(()=>{e=this._zone.onStable.subscribe(()=>{Vl.assertNotInAngularZone(),Fl(()=>{this._stable||this._zone.hasPendingMacrotasks||this._zone.hasPendingMicrotasks||(this._stable=!0,t.next(!0))})})});const n=this._zone.onUnstable.subscribe(()=>{Vl.assertInAngularZone(),this._stable&&(this._stable=!1,this._zone.runOutsideAngular(()=>{t.next(!1)}))});return()=>{e.unsubscribe(),n.unsubscribe()}});this.isStable=U(o,a.pipe(X()))}bootstrap(t,e){if(!this._initStatus.done)throw new Error("Cannot bootstrap as there are still asynchronous initializers running. Bootstrap components in the `ngDoBootstrap` method of the root module.");let n;n=t instanceof ea?t:this._componentFactoryResolver.resolveComponentFactory(t),this.componentTypes.push(n.componentType);const i=n.isBoundToModule?void 0:this._injector.get(Jt),s=n.create(Jr.NULL,[],e||n.selector,i);s.onDestroy(()=>{this._unloadComponent(s)});const r=s.injector.get($l,null);return r&&s.injector.get(Ul).registerApplication(s.location.nativeElement,r),this._loadComponent(s),wi()&&this._console.log("Angular is running in development mode. Call enableProdMode() to enable production mode."),s}tick(){if(this._runningTick)throw new Error("ApplicationRef.tick is called recursively");try{this._runningTick=!0;for(let t of this._views)t.detectChanges();if(this._enforceNoNewChanges)for(let t of this._views)t.checkNoChanges()}catch(t){this._zone.runOutsideAngular(()=>this._exceptionHandler.handleError(t))}finally{this._runningTick=!1}}attachView(t){const e=t;this._views.push(e),e.attachToAppRef(this)}detachView(t){const e=t;ec(this._views,e),e.detachFromAppRef()}_loadComponent(t){this.attachView(t.hostView),this.tick(),this.components.push(t),this._injector.get(Cl,[]).concat(this._bootstrapListeners).forEach(e=>e(t))}_unloadComponent(t){this.detachView(t.hostView),ec(this.components,t)}ngOnDestroy(){this._views.slice().forEach(t=>t.destroy())}get viewCount(){return this._views.length}}return t.\u0275fac=function(e){return new(e||t)(Wt(Vl),Wt(El),Wt(Jr),Wt(ci),Wt(ia),Wt(gl))},t.\u0275prov=ct({token:t,factory:t.\u0275fac}),t})();function ec(t,e){const n=t.indexOf(e);n>-1&&t.splice(n,1)}const nc=Kl(null,"core",[{provide:wl,useValue:"unknown"},{provide:Jl,deps:[Jr]},{provide:Ul,deps:[]},{provide:El,deps:[]}]),ic=[{provide:tc,useClass:tc,deps:[Vl,El,Jr,ci,ia,gl]},{provide:Fa,deps:[Vl],useFactory:function(t){let e=[];return t.onStable.subscribe(()=>{for(;e.length;)e.pop()()}),function(t){e.push(t)}}},{provide:gl,useClass:gl,deps:[[new it,ml]]},{provide:Rl,useClass:Rl,deps:[]},yl,{provide:Ea,useFactory:function(){return ka},deps:[]},{provide:Sa,useFactory:function(){return Ta},deps:[]},{provide:Sl,useFactory:function(t){return $a(t=t||"undefined"!=typeof $localize&&$localize.locale||"en-US"),t},deps:[[new nt(Sl),new it,new rt]]},{provide:xl,useValue:"USD"}];let sc=(()=>{class t{constructor(t){}}return t.\u0275mod=me({type:t}),t.\u0275inj=ht({factory:function(e){return new(e||t)(Wt(tc))},providers:ic}),t})(),rc=null;function oc(){return rc}const ac=new Mt("DocumentToken");var lc=function(t){return t[t.Zero=0]="Zero",t[t.One=1]="One",t[t.Two=2]="Two",t[t.Few=3]="Few",t[t.Many=4]="Many",t[t.Other=5]="Other",t}({});class cc{}let hc=(()=>{class t extends cc{constructor(t){super(),this.locale=t}getPluralCategory(t,e){switch(function(t){return function(t){const e=function(t){return t.toLowerCase().replace(/_/g,"-")}(t);let n=Ha(e);if(n)return n;const i=e.split("-")[0];if(n=Ha(i),n)return n;if("en"===i)return ja;throw new Error(`Missing locale data for the locale "${t}".`)}(t)[za.PluralCase]}(e||this.locale)(t)){case lc.Zero:return"zero";case lc.One:return"one";case lc.Two:return"two";case lc.Few:return"few";case lc.Many:return"many";default:return"other"}}}return t.\u0275fac=function(e){return new(e||t)(Wt(Sl))},t.\u0275prov=ct({token:t,factory:t.\u0275fac}),t})();class uc{constructor(t,e,n,i){this.$implicit=t,this.ngForOf=e,this.index=n,this.count=i}get first(){return 0===this.index}get last(){return this.index===this.count-1}get even(){return this.index%2==0}get odd(){return!this.even}}let dc=(()=>{class t{constructor(t,e,n){this._viewContainer=t,this._template=e,this._differs=n,this._ngForOf=null,this._ngForOfDirty=!0,this._differ=null}set ngForOf(t){this._ngForOf=t,this._ngForOfDirty=!0}set ngForTrackBy(t){wi()&&null!=t&&"function"!=typeof t&&console&&console.warn&&console.warn(`trackBy must be a function, but received ${JSON.stringify(t)}. See https://angular.io/api/common/NgForOf#change-propagation for more information.`),this._trackByFn=t}get ngForTrackBy(){return this._trackByFn}set ngForTemplate(t){t&&(this._template=t)}ngDoCheck(){if(this._ngForOfDirty){this._ngForOfDirty=!1;const n=this._ngForOf;if(!this._differ&&n)try{this._differ=this._differs.find(n).create(this.ngForTrackBy)}catch(e){throw new Error(`Cannot find a differ supporting object '${n}' of type '${t=n,t.name||typeof t}'. NgFor only supports binding to Iterables such as Arrays.`)}}var t;if(this._differ){const t=this._differ.diff(this._ngForOf);t&&this._applyChanges(t)}}_applyChanges(t){const e=[];t.forEachOperation((t,n,i)=>{if(null==t.previousIndex){const n=this._viewContainer.createEmbeddedView(this._template,new uc(null,this._ngForOf,-1,-1),null===i?void 0:i),s=new pc(t,n);e.push(s)}else if(null==i)this._viewContainer.remove(null===n?void 0:n);else if(null!==n){const s=this._viewContainer.get(n);this._viewContainer.move(s,i);const r=new pc(t,s);e.push(r)}});for(let n=0;n{this._viewContainer.get(t.currentIndex).context.$implicit=t.item})}_perViewChange(t,e){t.context.$implicit=e.item}static ngTemplateContextGuard(t,e){return!0}}return t.\u0275fac=function(e){return new(e||t)(lo(Aa),lo(Ia),lo(Ea))},t.\u0275dir=_e({type:t,selectors:[["","ngFor","","ngForOf",""]],inputs:{ngForOf:"ngForOf",ngForTrackBy:"ngForTrackBy",ngForTemplate:"ngForTemplate"}}),t})();class pc{constructor(t,e){this.record=t,this.view=e}}let fc=(()=>{class t{constructor(t,e){this._viewContainer=t,this._context=new mc,this._thenTemplateRef=null,this._elseTemplateRef=null,this._thenViewRef=null,this._elseViewRef=null,this._thenTemplateRef=e}set ngIf(t){this._context.$implicit=this._context.ngIf=t,this._updateView()}set ngIfThen(t){gc("ngIfThen",t),this._thenTemplateRef=t,this._thenViewRef=null,this._updateView()}set ngIfElse(t){gc("ngIfElse",t),this._elseTemplateRef=t,this._elseViewRef=null,this._updateView()}_updateView(){this._context.$implicit?this._thenViewRef||(this._viewContainer.clear(),this._elseViewRef=null,this._thenTemplateRef&&(this._thenViewRef=this._viewContainer.createEmbeddedView(this._thenTemplateRef,this._context))):this._elseViewRef||(this._viewContainer.clear(),this._thenViewRef=null,this._elseTemplateRef&&(this._elseViewRef=this._viewContainer.createEmbeddedView(this._elseTemplateRef,this._context)))}static ngTemplateContextGuard(t,e){return!0}}return t.\u0275fac=function(e){return new(e||t)(lo(Aa),lo(Ia))},t.\u0275dir=_e({type:t,selectors:[["","ngIf",""]],inputs:{ngIf:"ngIf",ngIfThen:"ngIfThen",ngIfElse:"ngIfElse"}}),t})();class mc{constructor(){this.$implicit=null,this.ngIf=null}}function gc(t,e){if(e&&!e.createEmbeddedView)throw new Error(`${t} must be a TemplateRef, but received '${bt(e)}'.`)}class _c{constructor(t,e){this._viewContainerRef=t,this._templateRef=e,this._created=!1}create(){this._created=!0,this._viewContainerRef.createEmbeddedView(this._templateRef)}destroy(){this._created=!1,this._viewContainerRef.clear()}enforceState(t){t&&!this._created?this.create():!t&&this._created&&this.destroy()}}let yc=(()=>{class t{constructor(){this._defaultUsed=!1,this._caseCount=0,this._lastCaseCheckIndex=0,this._lastCasesMatched=!1}set ngSwitch(t){this._ngSwitch=t,0===this._caseCount&&this._updateDefaultCases(!0)}_addCase(){return this._caseCount++}_addDefault(t){this._defaultViews||(this._defaultViews=[]),this._defaultViews.push(t)}_matchCase(t){const e=t==this._ngSwitch;return this._lastCasesMatched=this._lastCasesMatched||e,this._lastCaseCheckIndex++,this._lastCaseCheckIndex===this._caseCount&&(this._updateDefaultCases(!this._lastCasesMatched),this._lastCaseCheckIndex=0,this._lastCasesMatched=!1),e}_updateDefaultCases(t){if(this._defaultViews&&t!==this._defaultUsed){this._defaultUsed=t;for(let e=0;e{class t{constructor(t,e,n){this.ngSwitch=n,n._addCase(),this._view=new _c(t,e)}ngDoCheck(){this._view.enforceState(this.ngSwitch._matchCase(this.ngSwitchCase))}}return t.\u0275fac=function(e){return new(e||t)(lo(Aa),lo(Ia),lo(yc,1))},t.\u0275dir=_e({type:t,selectors:[["","ngSwitchCase",""]],inputs:{ngSwitchCase:"ngSwitchCase"}}),t})(),vc=(()=>{class t{constructor(t,e,n){this._ngEl=t,this._differs=e,this._renderer=n,this._ngStyle=null,this._differ=null}set ngStyle(t){this._ngStyle=t,!this._differ&&t&&(this._differ=this._differs.find(t).create())}ngDoCheck(){if(this._differ){const t=this._differ.diff(this._ngStyle);t&&this._applyChanges(t)}}_setStyle(t,e){const[n,i]=t.split(".");null!=(e=null!=e&&i?`${e}${i}`:e)?this._renderer.setStyle(this._ngEl.nativeElement,n,e):this._renderer.removeStyle(this._ngEl.nativeElement,n)}_applyChanges(t){t.forEachRemovedItem(t=>this._setStyle(t.key,null)),t.forEachAddedItem(t=>this._setStyle(t.key,t.currentValue)),t.forEachChangedItem(t=>this._setStyle(t.key,t.currentValue))}}return t.\u0275fac=function(e){return new(e||t)(lo(sa),lo(Sa),lo(la))},t.\u0275dir=_e({type:t,selectors:[["","ngStyle",""]],inputs:{ngStyle:"ngStyle"}}),t})(),wc=(()=>{class t{}return t.\u0275mod=me({type:t}),t.\u0275inj=ht({factory:function(e){return new(e||t)},providers:[{provide:cc,useClass:hc}]}),t})();class Cc extends class extends class{}{constructor(){super()}supportsDOMEvents(){return!0}}{static makeCurrent(){var t;t=new Cc,rc||(rc=t)}getProperty(t,e){return t[e]}log(t){window.console&&window.console.log&&window.console.log(t)}logGroup(t){window.console&&window.console.group&&window.console.group(t)}logGroupEnd(){window.console&&window.console.groupEnd&&window.console.groupEnd()}onAndCancel(t,e,n){return t.addEventListener(e,n,!1),()=>{t.removeEventListener(e,n,!1)}}dispatchEvent(t,e){t.dispatchEvent(e)}remove(t){return t.parentNode&&t.parentNode.removeChild(t),t}getValue(t){return t.value}createElement(t,e){return(e=e||this.getDefaultDocument()).createElement(t)}createHtmlDocument(){return document.implementation.createHTMLDocument("fakeTitle")}getDefaultDocument(){return document}isElementNode(t){return t.nodeType===Node.ELEMENT_NODE}isShadowRoot(t){return t instanceof DocumentFragment}getGlobalEventTarget(t,e){return"window"===e?window:"document"===e?t:"body"===e?t.body:null}getHistory(){return window.history}getLocation(){return window.location}getBaseHref(t){const e=Sc||(Sc=document.querySelector("base"),Sc)?Sc.getAttribute("href"):null;return null==e?null:(n=e,Ec||(Ec=document.createElement("a")),Ec.setAttribute("href",n),"/"===Ec.pathname.charAt(0)?Ec.pathname:"/"+Ec.pathname);var n}resetBaseElement(){Sc=null}getUserAgent(){return window.navigator.userAgent}performanceNow(){return window.performance&&window.performance.now?window.performance.now():(new Date).getTime()}supportsCookies(){return!0}getCookie(t){return function(t,e){e=encodeURIComponent(e);for(const n of t.split(";")){const t=n.indexOf("="),[i,s]=-1==t?[n,""]:[n.slice(0,t),n.slice(t+1)];if(i.trim()===e)return decodeURIComponent(s)}return null}(document.cookie,t)}}let Ec,Sc=null;const xc=new Mt("TRANSITION_ID"),kc=[{provide:ml,useFactory:function(t,e,n){return()=>{n.get(gl).donePromise.then(()=>{const n=oc();Array.prototype.slice.apply(e.querySelectorAll("style[ng-transition]")).filter(e=>e.getAttribute("ng-transition")===t).forEach(t=>n.remove(t))})}},deps:[xc,ac,Jr],multi:!0}];class Tc{static init(){var t;t=new Tc,Zl=t}addToWindow(t){Dt.getAngularTestability=(e,n=!0)=>{const i=t.findTestabilityInTree(e,n);if(null==i)throw new Error("Could not find testability for element.");return i},Dt.getAllAngularTestabilities=()=>t.getAllTestabilities(),Dt.getAllAngularRootElements=()=>t.getAllRootElements(),Dt.frameworkStabilizers||(Dt.frameworkStabilizers=[]),Dt.frameworkStabilizers.push(t=>{const e=Dt.getAllAngularTestabilities();let n=e.length,i=!1;const s=function(e){i=i||e,n--,0==n&&t(i)};e.forEach((function(t){t.whenStable(s)}))})}findTestabilityInTree(t,e,n){if(null==e)return null;const i=t.getTestability(e);return null!=i?i:n?oc().isShadowRoot(e)?this.findTestabilityInTree(t,e.host,!0):this.findTestabilityInTree(t,e.parentElement,!0):null}}const Ic=new Mt("EventManagerPlugins");let Dc=(()=>{class t{constructor(t,e){this._zone=e,this._eventNameToPlugin=new Map,t.forEach(t=>t.manager=this),this._plugins=t.slice().reverse()}addEventListener(t,e,n){return this._findPluginFor(e).addEventListener(t,e,n)}addGlobalEventListener(t,e,n){return this._findPluginFor(e).addGlobalEventListener(t,e,n)}getZone(){return this._zone}_findPluginFor(t){const e=this._eventNameToPlugin.get(t);if(e)return e;const n=this._plugins;for(let i=0;i{class t{constructor(){this._stylesSet=new Set}addStyles(t){const e=new Set;t.forEach(t=>{this._stylesSet.has(t)||(this._stylesSet.add(t),e.add(t))}),this.onStylesAdded(e)}onStylesAdded(t){}getAllStyles(){return Array.from(this._stylesSet)}}return t.\u0275fac=function(e){return new(e||t)},t.\u0275prov=ct({token:t,factory:t.\u0275fac}),t})(),Oc=(()=>{class t extends Pc{constructor(t){super(),this._doc=t,this._hostNodes=new Set,this._styleNodes=new Set,this._hostNodes.add(t.head)}_addStylesToHost(t,e){t.forEach(t=>{const n=this._doc.createElement("style");n.textContent=t,this._styleNodes.add(e.appendChild(n))})}addHost(t){this._addStylesToHost(this._stylesSet,t),this._hostNodes.add(t)}removeHost(t){this._hostNodes.delete(t)}onStylesAdded(t){this._hostNodes.forEach(e=>this._addStylesToHost(t,e))}ngOnDestroy(){this._styleNodes.forEach(t=>oc().remove(t))}}return t.\u0275fac=function(e){return new(e||t)(Wt(ac))},t.\u0275prov=ct({token:t,factory:t.\u0275fac}),t})();const Rc={svg:"http://www.w3.org/2000/svg",xhtml:"http://www.w3.org/1999/xhtml",xlink:"http://www.w3.org/1999/xlink",xml:"http://www.w3.org/XML/1998/namespace",xmlns:"http://www.w3.org/2000/xmlns/"},Nc=/%COMP%/g;function Fc(t,e,n){for(let i=0;i{if("__ngUnwrap__"===e)return t;!1===t(e)&&(e.preventDefault(),e.returnValue=!1)}}let Mc=(()=>{class t{constructor(t,e,n){this.eventManager=t,this.sharedStylesHost=e,this.appId=n,this.rendererByCompId=new Map,this.defaultRenderer=new Lc(t)}createRenderer(t,e){if(!t||!e)return this.defaultRenderer;switch(e.encapsulation){case ae.Emulated:{let n=this.rendererByCompId.get(e.id);return n||(n=new jc(this.eventManager,this.sharedStylesHost,e,this.appId),this.rendererByCompId.set(e.id,n)),n.applyToHost(t),n}case ae.Native:case ae.ShadowDom:return new Bc(this.eventManager,this.sharedStylesHost,t,e);default:if(!this.rendererByCompId.has(e.id)){const t=Fc(e.id,e.styles,[]);this.sharedStylesHost.addStyles(t),this.rendererByCompId.set(e.id,this.defaultRenderer)}return this.defaultRenderer}}begin(){}end(){}}return t.\u0275fac=function(e){return new(e||t)(Wt(Dc),Wt(Oc),Wt(_l))},t.\u0275prov=ct({token:t,factory:t.\u0275fac}),t})();class Lc{constructor(t){this.eventManager=t,this.data=Object.create(null)}destroy(){}createElement(t,e){return e?document.createElementNS(Rc[e]||e,t):document.createElement(t)}createComment(t){return document.createComment(t)}createText(t){return document.createTextNode(t)}appendChild(t,e){t.appendChild(e)}insertBefore(t,e,n){t&&t.insertBefore(e,n)}removeChild(t,e){t&&t.removeChild(e)}selectRootElement(t,e){let n="string"==typeof t?document.querySelector(t):t;if(!n)throw new Error(`The selector "${t}" did not match any elements`);return e||(n.textContent=""),n}parentNode(t){return t.parentNode}nextSibling(t){return t.nextSibling}setAttribute(t,e,n,i){if(i){e=i+":"+e;const s=Rc[i];s?t.setAttributeNS(s,e,n):t.setAttribute(e,n)}else t.setAttribute(e,n)}removeAttribute(t,e,n){if(n){const i=Rc[n];i?t.removeAttributeNS(i,e):t.removeAttribute(`${n}:${e}`)}else t.removeAttribute(e)}addClass(t,e){t.classList.add(e)}removeClass(t,e){t.classList.remove(e)}setStyle(t,e,n,i){i&aa.DashCase?t.style.setProperty(e,n,i&aa.Important?"important":""):t.style[e]=n}removeStyle(t,e,n){n&aa.DashCase?t.style.removeProperty(e):t.style[e]=""}setProperty(t,e,n){t[e]=n}setValue(t,e){t.nodeValue=e}listen(t,e,n){return"string"==typeof t?this.eventManager.addGlobalEventListener(t,e,Vc(n)):this.eventManager.addEventListener(t,e,Vc(n))}}class jc extends Lc{constructor(t,e,n,i){super(t),this.component=n;const s=Fc(i+"-"+n.id,n.styles,[]);e.addStyles(s),this.contentAttr="_ngcontent-%COMP%".replace(Nc,i+"-"+n.id),this.hostAttr=function(t){return"_nghost-%COMP%".replace(Nc,t)}(i+"-"+n.id)}applyToHost(t){super.setAttribute(t,this.hostAttr,"")}createElement(t,e){const n=super.createElement(t,e);return super.setAttribute(n,this.contentAttr,""),n}}class Bc extends Lc{constructor(t,e,n,i){super(t),this.sharedStylesHost=e,this.hostEl=n,this.component=i,this.shadowRoot=i.encapsulation===ae.ShadowDom?n.attachShadow({mode:"open"}):n.createShadowRoot(),this.sharedStylesHost.addHost(this.shadowRoot);const s=Fc(i.id,i.styles,[]);for(let r=0;r{class t extends Ac{constructor(t){super(t)}supports(t){return!0}addEventListener(t,e,n){return t.addEventListener(e,n,!1),()=>this.removeEventListener(t,e,n)}removeEventListener(t,e,n){return t.removeEventListener(e,n)}}return t.\u0275fac=function(e){return new(e||t)(Wt(ac))},t.\u0275prov=ct({token:t,factory:t.\u0275fac}),t})();const zc=["alt","control","meta","shift"],qc={"\b":"Backspace","\t":"Tab","\x7f":"Delete","\x1b":"Escape",Del:"Delete",Esc:"Escape",Left:"ArrowLeft",Right:"ArrowRight",Up:"ArrowUp",Down:"ArrowDown",Menu:"ContextMenu",Scroll:"ScrollLock",Win:"OS"},$c={A:"1",B:"2",C:"3",D:"4",E:"5",F:"6",G:"7",H:"8",I:"9",J:"*",K:"+",M:"-",N:".",O:"/","`":"0","\x90":"NumLock"},Uc={alt:t=>t.altKey,control:t=>t.ctrlKey,meta:t=>t.metaKey,shift:t=>t.shiftKey};let Gc=(()=>{class t extends Ac{constructor(t){super(t)}supports(e){return null!=t.parseEventName(e)}addEventListener(e,n,i){const s=t.parseEventName(n),r=t.eventCallback(s.fullKey,i,this.manager.getZone());return this.manager.getZone().runOutsideAngular(()=>oc().onAndCancel(e,s.domEventName,r))}static parseEventName(e){const n=e.toLowerCase().split("."),i=n.shift();if(0===n.length||"keydown"!==i&&"keyup"!==i)return null;const s=t._normalizeKey(n.pop());let r="";if(zc.forEach(t=>{const e=n.indexOf(t);e>-1&&(n.splice(e,1),r+=t+".")}),r+=s,0!=n.length||0===s.length)return null;const o={};return o.domEventName=i,o.fullKey=r,o}static getEventFullKey(t){let e="",n=function(t){let e=t.key;if(null==e){if(e=t.keyIdentifier,null==e)return"Unidentified";e.startsWith("U+")&&(e=String.fromCharCode(parseInt(e.substring(2),16)),3===t.location&&$c.hasOwnProperty(e)&&(e=$c[e]))}return qc[e]||e}(t);return n=n.toLowerCase()," "===n?n="space":"."===n&&(n="dot"),zc.forEach(i=>{i!=n&&(0,Uc[i])(t)&&(e+=i+".")}),e+=n,e}static eventCallback(e,n,i){return s=>{t.getEventFullKey(s)===e&&i.runGuarded(()=>n(s))}}static _normalizeKey(t){switch(t){case"esc":return"escape";default:return t}}}return t.\u0275fac=function(e){return new(e||t)(Wt(ac))},t.\u0275prov=ct({token:t,factory:t.\u0275fac}),t})(),Wc=(()=>{class t{}return t.\u0275fac=function(e){return new(e||t)},t.\u0275prov=ct({factory:function(){return Wt(Zc)},token:t,providedIn:"root"}),t})(),Zc=(()=>{class t extends Wc{constructor(t){super(),this._doc=t}sanitize(t,e){if(null==e)return null;switch(t){case $i.NONE:return e;case $i.HTML:return _i(e,"HTML")?gi(e):function(t,e){let n=null;try{zi=zi||function(t){return function(){try{return!!(new window.DOMParser).parseFromString("","text/html")}catch(t){return!1}}()?new Ci:new Ei(t)}(t);let i=e?String(e):"";n=zi.getInertBodyElement(i);let s=5,r=i;do{if(0===s)throw new Error("Failed to sanitize html because the input is unstable");s--,i=r,r=n.innerHTML,n=zi.getInertBodyElement(i)}while(i!==r);const o=new Li,a=o.sanitizeChildren(qi(n)||n);return wi()&&o.sanitizedSomething&&console.warn("WARNING: sanitizing HTML stripped some content, see http://g.co/ng/security#xss"),a}finally{if(n){const t=qi(n)||n;for(;t.firstChild;)t.removeChild(t.firstChild)}}}(this._doc,String(e));case $i.STYLE:return _i(e,"Style")?gi(e):e;case $i.SCRIPT:if(_i(e,"Script"))return gi(e);throw new Error("unsafe value used in a script context");case $i.URL:return yi(e),_i(e,"URL")?gi(e):ki(String(e));case $i.RESOURCE_URL:if(_i(e,"ResourceURL"))return gi(e);throw new Error("unsafe value used in a resource URL context (see http://g.co/ng/security#xss)");default:throw new Error(`Unexpected SecurityContext ${t} (see http://g.co/ng/security#xss)`)}}bypassSecurityTrustHtml(t){return new ui(t)}bypassSecurityTrustStyle(t){return new di(t)}bypassSecurityTrustScript(t){return new pi(t)}bypassSecurityTrustUrl(t){return new fi(t)}bypassSecurityTrustResourceUrl(t){return new mi(t)}}return t.\u0275fac=function(e){return new(e||t)(Wt(ac))},t.\u0275prov=ct({factory:function(){return t=Wt(Lt),new Zc(t.get(ac));var t},token:t,providedIn:"root"}),t})();const Qc=Kl(nc,"browser",[{provide:wl,useValue:"browser"},{provide:vl,useValue:function(){Cc.makeCurrent(),Tc.init()},multi:!0},{provide:ac,useFactory:function(){return function(t){Ne=t}(document),document},deps:[]}]),Kc=[[],{provide:Lr,useValue:"root"},{provide:ci,useFactory:function(){return new ci},deps:[]},{provide:Ic,useClass:Hc,multi:!0,deps:[ac,Vl,wl]},{provide:Ic,useClass:Gc,multi:!0,deps:[ac]},[],{provide:Mc,useClass:Mc,deps:[Dc,Oc,_l]},{provide:oa,useExisting:Mc},{provide:Pc,useExisting:Oc},{provide:Oc,useClass:Oc,deps:[ac]},{provide:$l,useClass:$l,deps:[Vl]},{provide:Dc,useClass:Dc,deps:[Ic,Vl]},[]];let Yc=(()=>{class t{constructor(t){if(t)throw new Error("BrowserModule has already been loaded. If you need access to common directives such as NgIf and NgFor from a lazy loaded module, import CommonModule instead.")}static withServerTransition(e){return{ngModule:t,providers:[{provide:_l,useValue:e.appId},{provide:xc,useExisting:_l},kc]}}}return t.\u0275mod=me({type:t}),t.\u0275inj=ht({factory:function(e){return new(e||t)(Wt(t,12))},providers:Kc,imports:[wc,sc]}),t})();function Jc(t){return null!=t&&""+t!="false"}function Xc(t,e=0){return function(t){return!isNaN(parseFloat(t))&&!isNaN(Number(t))}(t)?Number(t):e}function th(t){return t instanceof sa?t.nativeElement:t}function eh(...t){let e=t[t.length-1];return x(e)?(t.pop(),L(t,e)):$(t)}function nh(t,e,n,s){return i(n)&&(s=n,n=void 0),s?nh(t,e,n).pipe(F(t=>l(t)?s(...t):s(t))):new y(i=>{!function t(e,n,i,s,r){let o;if(function(t){return t&&"function"==typeof t.addEventListener&&"function"==typeof t.removeEventListener}(e)){const t=e;e.addEventListener(n,i,r),o=()=>t.removeEventListener(n,i,r)}else if(function(t){return t&&"function"==typeof t.on&&"function"==typeof t.off}(e)){const t=e;e.on(n,i),o=()=>t.off(n,i)}else if(function(t){return t&&"function"==typeof t.addListener&&"function"==typeof t.removeListener}(e)){const t=e;e.addListener(n,i),o=()=>t.removeListener(n,i)}else{if(!e||!e.length)throw new TypeError("Invalid event target");for(let o=0,a=e.length;o1?Array.prototype.slice.call(arguments):t)}),i,n)})}"undefined"!=typeof window&&window;class ih extends u{constructor(t,e){super()}schedule(t,e=0){return this}}class sh extends ih{constructor(t,e){super(t,e),this.scheduler=t,this.work=e,this.pending=!1}schedule(t,e=0){if(this.closed)return this;this.state=t;const n=this.id,i=this.scheduler;return null!=n&&(this.id=this.recycleAsyncId(i,n,e)),this.pending=!0,this.delay=e,this.id=this.id||this.requestAsyncId(i,this.id,e),this}requestAsyncId(t,e,n=0){return setInterval(t.flush.bind(t,this),n)}recycleAsyncId(t,e,n=0){if(null!==n&&this.delay===n&&!1===this.pending)return e;clearInterval(e)}execute(t,e){if(this.closed)return new Error("executing a cancelled action");this.pending=!1;const n=this._execute(t,e);if(n)return n;!1===this.pending&&null!=this.id&&(this.id=this.recycleAsyncId(this.scheduler,this.id,null))}_execute(t,e){let n=!1,i=void 0;try{this.work(t)}catch(s){n=!0,i=!!s&&s||new Error(s)}if(n)return this.unsubscribe(),i}_unsubscribe(){const t=this.id,e=this.scheduler,n=e.actions,i=n.indexOf(this);this.work=null,this.state=null,this.pending=!1,this.scheduler=null,-1!==i&&n.splice(i,1),null!=t&&(this.id=this.recycleAsyncId(e,t,null)),this.delay=null}}class rh extends sh{constructor(t,e){super(t,e),this.scheduler=t,this.work=e}requestAsyncId(t,e,n=0){return null!==n&&n>0?super.requestAsyncId(t,e,n):(t.actions.push(this),t.scheduled||(t.scheduled=requestAnimationFrame(()=>t.flush(null))))}recycleAsyncId(t,e,n=0){if(null!==n&&n>0||null===n&&this.delay>0)return super.recycleAsyncId(t,e,n);0===t.actions.length&&(cancelAnimationFrame(e),t.scheduled=void 0)}}let oh=(()=>{class t{constructor(e,n=t.now){this.SchedulerAction=e,this.now=n}schedule(t,e=0,n){return new this.SchedulerAction(this,t).schedule(n,e)}}return t.now=()=>Date.now(),t})();class ah extends oh{constructor(t,e=oh.now){super(t,()=>ah.delegate&&ah.delegate!==this?ah.delegate.now():e()),this.actions=[],this.active=!1,this.scheduled=void 0}schedule(t,e=0,n){return ah.delegate&&ah.delegate!==this?ah.delegate.schedule(t,e,n):super.schedule(t,e,n)}flush(t){const{actions:e}=this;if(this.active)return void e.push(t);let n;this.active=!0;do{if(n=t.execute(t.state,t.delay))break}while(t=e.shift());if(this.active=!1,n){for(;t=e.shift();)t.unsubscribe();throw n}}}class lh extends ah{flush(t){this.active=!0,this.scheduled=void 0;const{actions:e}=this;let n,i=-1,s=e.length;t=t||e.shift();do{if(n=t.execute(t.state,t.delay))break}while(++i=0}function fh(t){const{index:e,period:n,subscriber:i}=t;if(i.next(e),!i.closed){if(-1===n)return i.complete();t.index=e+1,this.schedule(t,n)}}function mh(t,e=hh){return n=()=>function(t=0,e,n){let i=-1;return ph(e)?i=Number(e)<1?1:Number(e):x(e)&&(n=e),x(n)||(n=hh),new y(e=>{const s=ph(t)?t:+t-n.now();return n.schedule(fh,s,{index:0,period:i,subscriber:e})})}(t,e),function(t){return t.lift(new uh(n))};var n}function gh(t,e){return function(n){return n.lift(new _h(t,e))}}class _h{constructor(t,e){this.predicate=t,this.thisArg=e}call(t,e){return e.subscribe(new yh(t,this.predicate,this.thisArg))}}class yh extends f{constructor(t,e,n){super(t),this.predicate=e,this.thisArg=n,this.count=0}_next(t){let e;try{e=this.predicate.call(this.thisArg,t,this.count++)}catch(n){return void this.destination.error(n)}e&&this.destination.next(t)}}function bh(t){return e=>e.lift(new vh(t))}class vh{constructor(t){this.notifier=t}call(t,e){const n=new wh(t),i=R(n,this.notifier);return i&&!n.seenValue?(n.add(i),e.subscribe(n)):n}}class wh extends N{constructor(t){super(t),this.seenValue=!1}notifyNext(t,e,n,i,s){this.seenValue=!0,this.complete()}notifyComplete(){}}function Ch(...t){return q(1)(eh(...t))}function Eh(...t){const e=t[t.length-1];return x(e)?(t.pop(),n=>Ch(t,n,e)):e=>Ch(t,e)}class Sh{constructor(t){this.project=t}call(t,e){return e.subscribe(new xh(t,this.project))}}class xh extends N{constructor(t,e){super(t),this.project=e,this.index=0}_next(t){let e;const n=this.index++;try{e=this.project(t,n)}catch(i){return void this.destination.error(i)}this._innerSub(e,t,n)}_innerSub(t,e,n){const i=this.innerSubscription;i&&i.unsubscribe();const s=new k(this,e,n),r=this.destination;r.add(s),this.innerSubscription=R(this,t,void 0,void 0,s),this.innerSubscription!==s&&r.add(this.innerSubscription)}_complete(){const{innerSubscription:t}=this;t&&!t.closed||super._complete(),this.unsubscribe()}_unsubscribe(){this.innerSubscription=null}notifyComplete(t){this.destination.remove(t),this.innerSubscription=null,this.isStopped&&super._complete()}notifyNext(t,e,n,i,s){this.destination.next(e)}}const kh=new y(t=>t.complete());let Th;try{Th="undefined"!=typeof Intl&&Intl.v8BreakIterator}catch(P_){Th=!1}let Ih,Dh=(()=>{class t{constructor(t){this._platformId=t,this.isBrowser=this._platformId?"browser"===this._platformId:"object"==typeof document&&!!document,this.EDGE=this.isBrowser&&/(edge)/i.test(navigator.userAgent),this.TRIDENT=this.isBrowser&&/(msie|trident)/i.test(navigator.userAgent),this.BLINK=this.isBrowser&&!(!window.chrome&&!Th)&&"undefined"!=typeof CSS&&!this.EDGE&&!this.TRIDENT,this.WEBKIT=this.isBrowser&&/AppleWebKit/i.test(navigator.userAgent)&&!this.BLINK&&!this.EDGE&&!this.TRIDENT,this.IOS=this.isBrowser&&/iPad|iPhone|iPod/.test(navigator.userAgent)&&!("MSStream"in window),this.FIREFOX=this.isBrowser&&/(firefox|minefield)/i.test(navigator.userAgent),this.ANDROID=this.isBrowser&&/android/i.test(navigator.userAgent)&&!this.TRIDENT,this.SAFARI=this.isBrowser&&/safari/i.test(navigator.userAgent)&&this.WEBKIT}}return t.\u0275fac=function(e){return new(e||t)(Wt(wl))},t.\u0275prov=ct({factory:function(){return new t(Wt(wl))},token:t,providedIn:"root"}),t})(),Ah=(()=>{class t{}return t.\u0275mod=me({type:t}),t.\u0275inj=ht({factory:function(e){return new(e||t)}}),t})();const Ph=["color","button","checkbox","date","datetime-local","email","file","hidden","image","month","number","password","radio","range","reset","search","submit","tel","text","time","url","week"];function Oh(){if(Ih)return Ih;if("object"!=typeof document||!document)return Ih=new Set(Ph),Ih;let t=document.createElement("input");return Ih=new Set(Ph.filter(e=>(t.setAttribute("type",e),t.type===e))),Ih}let Rh,Nh;function Fh(t){return function(){if(null==Rh&&"undefined"!=typeof window)try{window.addEventListener("test",null,Object.defineProperty({},"passive",{get:()=>Rh=!0}))}finally{Rh=Rh||!1}return Rh}()?t:!!t.capture}const Vh=new Mt("cdk-dir-doc",{providedIn:"root",factory:function(){return Zt(ac)}});let Mh=(()=>{class t{constructor(t){if(this.value="ltr",this.change=new Za,t){const e=t.documentElement?t.documentElement.dir:null,n=(t.body?t.body.dir:null)||e;this.value="ltr"===n||"rtl"===n?n:"ltr"}}ngOnDestroy(){this.change.complete()}}return t.\u0275fac=function(e){return new(e||t)(Wt(Vh,8))},t.\u0275prov=ct({factory:function(){return new t(Wt(Vh,8))},token:t,providedIn:"root"}),t})(),Lh=(()=>{class t{}return t.\u0275mod=me({type:t}),t.\u0275inj=ht({factory:function(e){return new(e||t)}}),t})(),jh=(()=>{class t{constructor(t,e,n){this._ngZone=t,this._platform=e,this._scrolled=new E,this._globalSubscription=null,this._scrolledCount=0,this.scrollContainers=new Map,this._document=n}register(t){this.scrollContainers.has(t)||this.scrollContainers.set(t,t.elementScrolled().subscribe(()=>this._scrolled.next(t)))}deregister(t){const e=this.scrollContainers.get(t);e&&(e.unsubscribe(),this.scrollContainers.delete(t))}scrolled(t=20){return this._platform.isBrowser?new y(e=>{this._globalSubscription||this._addGlobalListener();const n=t>0?this._scrolled.pipe(mh(t)).subscribe(e):this._scrolled.subscribe(e);return this._scrolledCount++,()=>{n.unsubscribe(),this._scrolledCount--,this._scrolledCount||this._removeGlobalListener()}}):eh()}ngOnDestroy(){this._removeGlobalListener(),this.scrollContainers.forEach((t,e)=>this.deregister(e)),this._scrolled.complete()}ancestorScrolled(t,e){const n=this.getAncestorScrollContainers(t);return this.scrolled(e).pipe(gh(t=>!t||n.indexOf(t)>-1))}getAncestorScrollContainers(t){const e=[];return this.scrollContainers.forEach((n,i)=>{this._scrollableContainsElement(i,t)&&e.push(i)}),e}_getDocument(){return this._document||document}_getWindow(){return this._getDocument().defaultView||window}_scrollableContainsElement(t,e){let n=e.nativeElement,i=t.getElementRef().nativeElement;do{if(n==i)return!0}while(n=n.parentElement);return!1}_addGlobalListener(){this._globalSubscription=this._ngZone.runOutsideAngular(()=>nh(this._getWindow().document,"scroll").subscribe(()=>this._scrolled.next()))}_removeGlobalListener(){this._globalSubscription&&(this._globalSubscription.unsubscribe(),this._globalSubscription=null)}}return t.\u0275fac=function(e){return new(e||t)(Wt(Vl),Wt(Dh),Wt(ac,8))},t.\u0275prov=ct({factory:function(){return new t(Wt(Vl),Wt(Dh),Wt(ac,8))},token:t,providedIn:"root"}),t})(),Bh=(()=>{class t{constructor(t,e,n){this._platform=t,this._document=n,e.runOutsideAngular(()=>{const e=this._getWindow();this._change=t.isBrowser?U(nh(e,"resize"),nh(e,"orientationchange")):eh(),this._invalidateCache=this.change().subscribe(()=>this._updateViewportSize())})}ngOnDestroy(){this._invalidateCache.unsubscribe()}getViewportSize(){this._viewportSize||this._updateViewportSize();const t={width:this._viewportSize.width,height:this._viewportSize.height};return this._platform.isBrowser||(this._viewportSize=null),t}getViewportRect(){const t=this.getViewportScrollPosition(),{width:e,height:n}=this.getViewportSize();return{top:t.top,left:t.left,bottom:t.top+n,right:t.left+e,height:n,width:e}}getViewportScrollPosition(){if(!this._platform.isBrowser)return{top:0,left:0};const t=this._getDocument(),e=this._getWindow(),n=t.documentElement,i=n.getBoundingClientRect();return{top:-i.top||t.body.scrollTop||e.scrollY||n.scrollTop||0,left:-i.left||t.body.scrollLeft||e.scrollX||n.scrollLeft||0}}change(t=20){return t>0?this._change.pipe(mh(t)):this._change}_getDocument(){return this._document||document}_getWindow(){return this._getDocument().defaultView||window}_updateViewportSize(){const t=this._getWindow();this._viewportSize=this._platform.isBrowser?{width:t.innerWidth,height:t.innerHeight}:{width:0,height:0}}}return t.\u0275fac=function(e){return new(e||t)(Wt(Dh),Wt(Vl),Wt(ac,8))},t.\u0275prov=ct({factory:function(){return new t(Wt(Dh),Wt(Vl),Wt(ac,8))},token:t,providedIn:"root"}),t})(),Hh=(()=>{class t{}return t.\u0275mod=me({type:t}),t.\u0275inj=ht({factory:function(e){return new(e||t)}}),t})();function zh(t){const{subscriber:e,counter:n,period:i}=t;e.next(n),this.schedule({subscriber:e,counter:n+1,period:i},i)}const qh=(()=>{function t(){return Error.call(this),this.message="argument out of range",this.name="ArgumentOutOfRangeError",this}return t.prototype=Object.create(Error.prototype),t})();function $h(t){return e=>0===t?kh:e.lift(new Uh(t))}class Uh{constructor(t){if(this.total=t,this.total<0)throw new qh}call(t,e){return e.subscribe(new Gh(t,this.total))}}class Gh extends f{constructor(t,e){super(t),this.total=e,this.count=0}_next(t){const e=this.total,n=++this.count;n<=e&&(this.destination.next(t),n===e&&(this.destination.complete(),this.unsubscribe()))}}function Wh(){}function Zh(t,e,n){return function(i){return i.lift(new Qh(t,e,n))}}class Qh{constructor(t,e,n){this.nextOrObserver=t,this.error=e,this.complete=n}call(t,e){return e.subscribe(new Kh(t,this.nextOrObserver,this.error,this.complete))}}class Kh extends f{constructor(t,e,n,s){super(t),this._tapNext=Wh,this._tapError=Wh,this._tapComplete=Wh,this._tapError=n||Wh,this._tapComplete=s||Wh,i(e)?(this._context=this,this._tapNext=e):e&&(this._context=e,this._tapNext=e.next||Wh,this._tapError=e.error||Wh,this._tapComplete=e.complete||Wh)}_next(t){try{this._tapNext.call(this._context,t)}catch(e){return void this.destination.error(e)}this.destination.next(t)}_error(t){try{this._tapError.call(this._context,t)}catch(t){return void this.destination.error(t)}this.destination.error(t)}_complete(){try{this._tapComplete.call(this._context)}catch(t){return void this.destination.error(t)}return this.destination.complete()}}function Yh(t,e){for(let n in e)e.hasOwnProperty(n)&&(t[n]=e[n]);return t}function Jh(t,e){const n=e?"":"none";Yh(t.style,{touchAction:e?"":"none",webkitUserDrag:e?"":"none",webkitTapHighlightColor:e?"":"transparent",userSelect:n,msUserSelect:n,webkitUserSelect:n,MozUserSelect:n})}function Xh(t){const e=t.toLowerCase().indexOf("ms")>-1?1:1e3;return parseFloat(t)*e}function tu(t,e){return t.getPropertyValue(e).split(",").map(t=>t.trim())}function eu(t){const e=t.getBoundingClientRect();return{top:e.top,right:e.right,bottom:e.bottom,left:e.left,width:e.width,height:e.height}}function nu(t,e,n){const{top:i,bottom:s,left:r,right:o}=t;return n>=i&&n<=s&&e>=r&&e<=o}function iu(t,e,n){t.top+=e,t.bottom=t.top+t.height,t.left+=n,t.right=t.left+t.width}function su(t,e,n,i){const{top:s,right:r,bottom:o,left:a,width:l,height:c}=t,h=l*e,u=c*e;return i>s-u&&ia-h&&n{this.positions.set(t,{scrollPosition:{top:t.scrollTop,left:t.scrollLeft},clientRect:eu(t)})})}handleScroll(t){const e=t.target,n=this.positions.get(e);if(!n)return null;const i=e===this._document?e.documentElement:e,s=n.scrollPosition;let r,o;if(e===this._document){const t=this._viewportRuler.getViewportScrollPosition();r=t.top,o=t.left}else r=e.scrollTop,o=e.scrollLeft;const a=s.top-r,l=s.left-o;return this.positions.forEach((t,n)=>{t.clientRect&&e!==n&&i.contains(n)&&iu(t.clientRect,a,l)}),s.top=r,s.left=o,{top:a,left:l}}}const ou=Fh({passive:!0}),au=Fh({passive:!1});class lu{constructor(t,e,n,i,s,r){this._config=e,this._document=n,this._ngZone=i,this._viewportRuler=s,this._dragDropRegistry=r,this._passiveTransform={x:0,y:0},this._activeTransform={x:0,y:0},this._moveEvents=new E,this._pointerMoveSubscription=u.EMPTY,this._pointerUpSubscription=u.EMPTY,this._scrollSubscription=u.EMPTY,this._resizeSubscription=u.EMPTY,this._boundaryElement=null,this._nativeInteractionsEnabled=!0,this._handles=[],this._disabledHandles=new Set,this._direction="ltr",this.dragStartDelay=0,this._disabled=!1,this.beforeStarted=new E,this.started=new E,this.released=new E,this.ended=new E,this.entered=new E,this.exited=new E,this.dropped=new E,this.moved=this._moveEvents.asObservable(),this._pointerDown=t=>{if(this.beforeStarted.next(),this._handles.length){const e=this._handles.find(e=>{const n=t.target;return!!n&&(n===e||e.contains(n))});!e||this._disabledHandles.has(e)||this.disabled||this._initializeDragSequence(e,t)}else this.disabled||this._initializeDragSequence(this._rootElement,t)},this._pointerMove=t=>{t.preventDefault();const e=this._getPointerPositionOnPage(t);if(!this._hasStartedDragging){if(Math.abs(e.x-this._pickupPositionOnPage.x)+Math.abs(e.y-this._pickupPositionOnPage.y)>=this._config.dragStartThreshold){if(!(Date.now()>=this._dragStartTime+this._getDragStartDelay(t)))return void this._endDragSequence(t);this._dropContainer&&this._dropContainer.isDragging()||(this._hasStartedDragging=!0,this._ngZone.run(()=>this._startDragSequence(t)))}return}this._boundaryElement&&(this._previewRect&&(this._previewRect.width||this._previewRect.height)||(this._previewRect=(this._preview||this._rootElement).getBoundingClientRect()));const n=this._getConstrainedPointerPosition(e);if(this._hasMoved=!0,this._lastKnownPointerPosition=e,this._updatePointerDirectionDelta(n),this._dropContainer)this._updateActiveDropContainer(n,e);else{const t=this._activeTransform;t.x=n.x-this._pickupPositionOnPage.x+this._passiveTransform.x,t.y=n.y-this._pickupPositionOnPage.y+this._passiveTransform.y,this._applyRootElementTransform(t.x,t.y),"undefined"!=typeof SVGElement&&this._rootElement instanceof SVGElement&&this._rootElement.setAttribute("transform",`translate(${t.x} ${t.y})`)}this._moveEvents.observers.length&&this._ngZone.run(()=>{this._moveEvents.next({source:this,pointerPosition:n,event:t,distance:this._getDragDistance(n),delta:this._pointerDirectionDelta})})},this._pointerUp=t=>{this._endDragSequence(t)},this.withRootElement(t),this._parentPositions=new ru(n,s),r.registerDragItem(this)}get disabled(){return this._disabled||!(!this._dropContainer||!this._dropContainer.disabled)}set disabled(t){const e=Jc(t);e!==this._disabled&&(this._disabled=e,this._toggleNativeDragInteractions())}getPlaceholderElement(){return this._placeholder}getRootElement(){return this._rootElement}getVisibleElement(){return this.isDragging()?this.getPlaceholderElement():this.getRootElement()}withHandles(t){return this._handles=t.map(t=>th(t)),this._handles.forEach(t=>Jh(t,!1)),this._toggleNativeDragInteractions(),this}withPreviewTemplate(t){return this._previewTemplate=t,this}withPlaceholderTemplate(t){return this._placeholderTemplate=t,this}withRootElement(t){const e=th(t);return e!==this._rootElement&&(this._rootElement&&this._removeRootElementListeners(this._rootElement),this._ngZone.runOutsideAngular(()=>{e.addEventListener("mousedown",this._pointerDown,au),e.addEventListener("touchstart",this._pointerDown,ou)}),this._initialTransform=void 0,this._rootElement=e),"undefined"!=typeof SVGElement&&this._rootElement instanceof SVGElement&&(this._ownerSVGElement=this._rootElement.ownerSVGElement),this}withBoundaryElement(t){return this._boundaryElement=t?th(t):null,this._resizeSubscription.unsubscribe(),t&&(this._resizeSubscription=this._viewportRuler.change(10).subscribe(()=>this._containInsideBoundaryOnResize())),this}dispose(){this._removeRootElementListeners(this._rootElement),this.isDragging()&&du(this._rootElement),du(this._anchor),this._destroyPreview(),this._destroyPlaceholder(),this._dragDropRegistry.removeDragItem(this),this._removeSubscriptions(),this.beforeStarted.complete(),this.started.complete(),this.released.complete(),this.ended.complete(),this.entered.complete(),this.exited.complete(),this.dropped.complete(),this._moveEvents.complete(),this._handles=[],this._disabledHandles.clear(),this._dropContainer=void 0,this._resizeSubscription.unsubscribe(),this._parentPositions.clear(),this._boundaryElement=this._rootElement=this._ownerSVGElement=this._placeholderTemplate=this._previewTemplate=this._anchor=null}isDragging(){return this._hasStartedDragging&&this._dragDropRegistry.isDragging(this)}reset(){this._rootElement.style.transform=this._initialTransform||"",this._activeTransform={x:0,y:0},this._passiveTransform={x:0,y:0}}disableHandle(t){this._handles.indexOf(t)>-1&&this._disabledHandles.add(t)}enableHandle(t){this._disabledHandles.delete(t)}withDirection(t){return this._direction=t,this}_withDropContainer(t){this._dropContainer=t}getFreeDragPosition(){const t=this.isDragging()?this._activeTransform:this._passiveTransform;return{x:t.x,y:t.y}}setFreeDragPosition(t){return this._activeTransform={x:0,y:0},this._passiveTransform.x=t.x,this._passiveTransform.y=t.y,this._dropContainer||this._applyRootElementTransform(t.x,t.y),this}_sortFromLastPointerPosition(){const t=this._lastKnownPointerPosition;t&&this._dropContainer&&this._updateActiveDropContainer(this._getConstrainedPointerPosition(t),t)}_removeSubscriptions(){this._pointerMoveSubscription.unsubscribe(),this._pointerUpSubscription.unsubscribe(),this._scrollSubscription.unsubscribe()}_destroyPreview(){this._preview&&du(this._preview),this._previewRef&&this._previewRef.destroy(),this._preview=this._previewRef=null}_destroyPlaceholder(){this._placeholder&&du(this._placeholder),this._placeholderRef&&this._placeholderRef.destroy(),this._placeholder=this._placeholderRef=null}_endDragSequence(t){this._dragDropRegistry.isDragging(this)&&(this._removeSubscriptions(),this._dragDropRegistry.stopDragging(this),this._toggleNativeDragInteractions(),this._handles&&(this._rootElement.style.webkitTapHighlightColor=this._rootElementTapHighlight),this._hasStartedDragging&&(this.released.next({source:this}),this._dropContainer?(this._dropContainer._stopScrolling(),this._animatePreviewToPlaceholder().then(()=>{this._cleanupDragArtifacts(t),this._cleanupCachedDimensions(),this._dragDropRegistry.stopDragging(this)})):(this._passiveTransform.x=this._activeTransform.x,this._passiveTransform.y=this._activeTransform.y,this._ngZone.run(()=>{this.ended.next({source:this,distance:this._getDragDistance(this._getPointerPositionOnPage(t))})}),this._cleanupCachedDimensions(),this._dragDropRegistry.stopDragging(this))))}_startDragSequence(t){pu(t)&&(this._lastTouchEventTime=Date.now()),this._toggleNativeDragInteractions();const e=this._dropContainer;if(e){const t=this._rootElement,i=t.parentNode,s=this._preview=this._createPreviewElement(),r=this._placeholder=this._createPlaceholderElement(),o=this._anchor=this._anchor||this._document.createComment("");i.insertBefore(o,t),t.style.display="none",this._document.body.appendChild(i.replaceChild(r,t)),(n=this._document,n.fullscreenElement||n.webkitFullscreenElement||n.mozFullScreenElement||n.msFullscreenElement||n.body).appendChild(s),this.started.next({source:this}),e.start(),this._initialContainer=e,this._initialIndex=e.getItemIndex(this)}else this.started.next({source:this}),this._initialContainer=this._initialIndex=void 0;var n;this._parentPositions.cache(e?e.getScrollableParents():[])}_initializeDragSequence(t,e){e.stopPropagation();const n=this.isDragging(),i=pu(e),s=!i&&0!==e.button,r=this._rootElement,o=!i&&this._lastTouchEventTime&&this._lastTouchEventTime+800>Date.now();if(e.target&&e.target.draggable&&"mousedown"===e.type&&e.preventDefault(),n||s||o)return;this._handles.length&&(this._rootElementTapHighlight=r.style.webkitTapHighlightColor||"",r.style.webkitTapHighlightColor="transparent"),this._hasStartedDragging=this._hasMoved=!1,this._removeSubscriptions(),this._pointerMoveSubscription=this._dragDropRegistry.pointerMove.subscribe(this._pointerMove),this._pointerUpSubscription=this._dragDropRegistry.pointerUp.subscribe(this._pointerUp),this._scrollSubscription=this._dragDropRegistry.scroll.subscribe(t=>{this._updateOnScroll(t)}),this._boundaryElement&&(this._boundaryRect=eu(this._boundaryElement));const a=this._previewTemplate;this._pickupPositionInElement=a&&a.template&&!a.matchSize?{x:0,y:0}:this._getPointerPositionInElement(t,e);const l=this._pickupPositionOnPage=this._lastKnownPointerPosition=this._getPointerPositionOnPage(e);this._pointerDirectionDelta={x:0,y:0},this._pointerPositionAtLastDirectionChange={x:l.x,y:l.y},this._dragStartTime=Date.now(),this._dragDropRegistry.startDragging(this,e)}_cleanupDragArtifacts(t){this._rootElement.style.display="",this._anchor.parentNode.replaceChild(this._rootElement,this._anchor),this._destroyPreview(),this._destroyPlaceholder(),this._boundaryRect=this._previewRect=void 0,this._ngZone.run(()=>{const e=this._dropContainer,n=e.getItemIndex(this),i=this._getPointerPositionOnPage(t),s=this._getDragDistance(this._getPointerPositionOnPage(t)),r=e._isOverContainer(i.x,i.y);this.ended.next({source:this,distance:s}),this.dropped.next({item:this,currentIndex:n,previousIndex:this._initialIndex,container:e,previousContainer:this._initialContainer,isPointerOverContainer:r,distance:s}),e.drop(this,n,this._initialContainer,r,s,this._initialIndex),this._dropContainer=this._initialContainer})}_updateActiveDropContainer({x:t,y:e},{x:n,y:i}){let s=this._initialContainer._getSiblingContainerFromPosition(this,t,e);!s&&this._dropContainer!==this._initialContainer&&this._initialContainer._isOverContainer(t,e)&&(s=this._initialContainer),s&&s!==this._dropContainer&&this._ngZone.run(()=>{this.exited.next({item:this,container:this._dropContainer}),this._dropContainer.exit(this),this._dropContainer=s,this._dropContainer.enter(this,t,e,s===this._initialContainer&&s.sortingDisabled?this._initialIndex:void 0),this.entered.next({item:this,container:s,currentIndex:s.getItemIndex(this)})}),this._dropContainer._startScrollingIfNecessary(n,i),this._dropContainer._sortItem(this,t,e,this._pointerDirectionDelta),this._preview.style.transform=cu(t-this._pickupPositionInElement.x,e-this._pickupPositionInElement.y)}_createPreviewElement(){const t=this._previewTemplate,e=this.previewClass,n=t?t.template:null;let i;if(n&&t){const e=t.matchSize?this._rootElement.getBoundingClientRect():null,s=t.viewContainer.createEmbeddedView(n,t.context);s.detectChanges(),i=fu(s,this._document),this._previewRef=s,t.matchSize?mu(i,e):i.style.transform=cu(this._pickupPositionOnPage.x,this._pickupPositionOnPage.y)}else{const t=this._rootElement;i=hu(t),mu(i,t.getBoundingClientRect())}return Yh(i.style,{pointerEvents:"none",margin:"0",position:"fixed",top:"0",left:"0",zIndex:""+(this._config.zIndex||1e3)}),Jh(i,!1),i.classList.add("cdk-drag-preview"),i.setAttribute("dir",this._direction),e&&(Array.isArray(e)?e.forEach(t=>i.classList.add(t)):i.classList.add(e)),i}_animatePreviewToPlaceholder(){if(!this._hasMoved)return Promise.resolve();const t=this._placeholder.getBoundingClientRect();this._preview.classList.add("cdk-drag-animating"),this._preview.style.transform=cu(t.left,t.top);const e=function(t){const e=getComputedStyle(t),n=tu(e,"transition-property"),i=n.find(t=>"transform"===t||"all"===t);if(!i)return 0;const s=n.indexOf(i),r=tu(e,"transition-duration"),o=tu(e,"transition-delay");return Xh(r[s])+Xh(o[s])}(this._preview);return 0===e?Promise.resolve():this._ngZone.runOutsideAngular(()=>new Promise(t=>{const n=e=>{(!e||e.target===this._preview&&"transform"===e.propertyName)&&(this._preview.removeEventListener("transitionend",n),t(),clearTimeout(i))},i=setTimeout(n,1.5*e);this._preview.addEventListener("transitionend",n)}))}_createPlaceholderElement(){const t=this._placeholderTemplate,e=t?t.template:null;let n;return e?(this._placeholderRef=t.viewContainer.createEmbeddedView(e,t.context),this._placeholderRef.detectChanges(),n=fu(this._placeholderRef,this._document)):n=hu(this._rootElement),n.classList.add("cdk-drag-placeholder"),n}_getPointerPositionInElement(t,e){const n=this._rootElement.getBoundingClientRect(),i=t===this._rootElement?null:t,s=i?i.getBoundingClientRect():n,r=pu(e)?e.targetTouches[0]:e,o=this._getViewportScrollPosition();return{x:s.left-n.left+(r.pageX-s.left-o.left),y:s.top-n.top+(r.pageY-s.top-o.top)}}_getPointerPositionOnPage(t){const e=this._getViewportScrollPosition(),n=pu(t)?t.touches[0]||t.changedTouches[0]||{pageX:0,pageY:0}:t,i=n.pageX-e.left,s=n.pageY-e.top;if(this._ownerSVGElement){const t=this._ownerSVGElement.getScreenCTM();if(t){const e=this._ownerSVGElement.createSVGPoint();return e.x=i,e.y=s,e.matrixTransform(t.inverse())}}return{x:i,y:s}}_getConstrainedPointerPosition(t){const e=this._dropContainer?this._dropContainer.lockAxis:null;let{x:n,y:i}=this.constrainPosition?this.constrainPosition(t,this):t;if("x"===this.lockAxis||"x"===e?i=this._pickupPositionOnPage.y:"y"!==this.lockAxis&&"y"!==e||(n=this._pickupPositionOnPage.x),this._boundaryRect){const{x:t,y:e}=this._pickupPositionInElement,s=this._boundaryRect,r=this._previewRect,o=s.top+e,a=s.bottom-(r.height-e);n=uu(n,s.left+t,s.right-(r.width-t)),i=uu(i,o,a)}return{x:n,y:i}}_updatePointerDirectionDelta(t){const{x:e,y:n}=t,i=this._pointerDirectionDelta,s=this._pointerPositionAtLastDirectionChange,r=Math.abs(e-s.x),o=Math.abs(n-s.y);return r>this._config.pointerDirectionChangeThreshold&&(i.x=e>s.x?1:-1,s.x=e),o>this._config.pointerDirectionChangeThreshold&&(i.y=n>s.y?1:-1,s.y=n),i}_toggleNativeDragInteractions(){if(!this._rootElement||!this._handles)return;const t=this._handles.length>0||!this.isDragging();t!==this._nativeInteractionsEnabled&&(this._nativeInteractionsEnabled=t,Jh(this._rootElement,t))}_removeRootElementListeners(t){t.removeEventListener("mousedown",this._pointerDown,au),t.removeEventListener("touchstart",this._pointerDown,ou)}_applyRootElementTransform(t,e){const n=cu(t,e);null==this._initialTransform&&(this._initialTransform=this._rootElement.style.transform||""),this._rootElement.style.transform=this._initialTransform?n+" "+this._initialTransform:n}_getDragDistance(t){const e=this._pickupPositionOnPage;return e?{x:t.x-e.x,y:t.y-e.y}:{x:0,y:0}}_cleanupCachedDimensions(){this._boundaryRect=this._previewRect=void 0,this._parentPositions.clear()}_containInsideBoundaryOnResize(){let{x:t,y:e}=this._passiveTransform;if(0===t&&0===e||this.isDragging()||!this._boundaryElement)return;const n=this._boundaryElement.getBoundingClientRect(),i=this._rootElement.getBoundingClientRect();if(0===n.width&&0===n.height||0===i.width&&0===i.height)return;const s=n.left-i.left,r=i.right-n.right,o=n.top-i.top,a=i.bottom-n.bottom;n.width>i.width?(s>0&&(t+=s),r>0&&(t-=r)):t=0,n.height>i.height?(o>0&&(e+=o),a>0&&(e-=a)):e=0,t===this._passiveTransform.x&&e===this._passiveTransform.y||this.setFreeDragPosition({y:e,x:t})}_getDragStartDelay(t){const e=this.dragStartDelay;return"number"==typeof e?e:pu(t)?e.touch:e?e.mouse:0}_updateOnScroll(t){const e=this._parentPositions.handleScroll(t);if(e){const n=t.target;this._boundaryRect&&(n===this._document||n!==this._boundaryElement&&n.contains(this._boundaryElement))&&iu(this._boundaryRect,e.top,e.left),this._pickupPositionOnPage.x+=e.left,this._pickupPositionOnPage.y+=e.top,this._dropContainer||(this._activeTransform.x-=e.left,this._activeTransform.y-=e.top,this._applyRootElementTransform(this._activeTransform.x,this._activeTransform.y))}}_getViewportScrollPosition(){const t=this._parentPositions.positions.get(this._document);return t?t.scrollPosition:this._viewportRuler.getViewportScrollPosition()}}function cu(t,e){return`translate3d(${Math.round(t)}px, ${Math.round(e)}px, 0)`}function hu(t){const e=t.cloneNode(!0),n=e.querySelectorAll("[id]"),i=t.querySelectorAll("canvas");e.removeAttribute("id");for(let s=0;si.appendChild(t)),i}function mu(t,e){t.style.width=e.width+"px",t.style.height=e.height+"px",t.style.transform=cu(e.left,e.top)}function gu(t,e,n){const i=_u(e,t.length-1),s=_u(n,t.length-1);if(i===s)return;const r=t[i],o=s!0,this.beforeStarted=new E,this.entered=new E,this.exited=new E,this.dropped=new E,this.sorted=new E,this._isDragging=!1,this._itemPositions=[],this._previousSwap={drag:null,delta:0,overlaps:!1},this._siblings=[],this._orientation="vertical",this._activeSiblings=new Set,this._direction="ltr",this._viewportScrollSubscription=u.EMPTY,this._verticalScrollDirection=0,this._horizontalScrollDirection=0,this._stopScrollTimers=new E,this._cachedShadowRoot=null,this._startScrollInterval=()=>{this._stopScrolling(),function(t=0,e=hh){return(!ph(t)||t<0)&&(t=0),e&&"function"==typeof e.schedule||(e=hh),new y(n=>(n.add(e.schedule(zh,t,{subscriber:n,counter:0,period:t})),n))}(0,ch).pipe(bh(this._stopScrollTimers)).subscribe(()=>{const t=this._scrollNode;1===this._verticalScrollDirection?vu(t,-2):2===this._verticalScrollDirection&&vu(t,2),1===this._horizontalScrollDirection?wu(t,-2):2===this._horizontalScrollDirection&&wu(t,2)})},this.element=th(t),this._document=n,this.withScrollableParents([this.element]),e.registerDropContainer(this),this._parentPositions=new ru(n,s)}dispose(){this._stopScrolling(),this._stopScrollTimers.complete(),this._viewportScrollSubscription.unsubscribe(),this.beforeStarted.complete(),this.entered.complete(),this.exited.complete(),this.dropped.complete(),this.sorted.complete(),this._activeSiblings.clear(),this._scrollNode=null,this._parentPositions.clear(),this._dragDropRegistry.removeDropContainer(this)}isDragging(){return this._isDragging}start(){const t=th(this.element).style;this.beforeStarted.next(),this._isDragging=!0,this._initialScrollSnap=t.msScrollSnapType||t.scrollSnapType||"",t.scrollSnapType=t.msScrollSnapType="none",this._cacheItems(),this._siblings.forEach(t=>t._startReceiving(this)),this._viewportScrollSubscription.unsubscribe(),this._listenToScrollEvents()}enter(t,e,n,i){let s;this.start(),null==i?(s=this.sortingDisabled?this._draggables.indexOf(t):-1,-1===s&&(s=this._getItemIndexFromPointerPosition(t,e,n))):s=i;const r=this._activeDraggables,o=r.indexOf(t),a=t.getPlaceholderElement();let l=r[s];if(l===t&&(l=r[s+1]),o>-1&&r.splice(o,1),l&&!this._dragDropRegistry.isDragging(l)){const e=l.getRootElement();e.parentElement.insertBefore(a,e),r.splice(s,0,t)}else if(this._shouldEnterAsFirstChild(e,n)){const e=r[0].getRootElement();e.parentNode.insertBefore(a,e),r.unshift(t)}else th(this.element).appendChild(a),r.push(t);a.style.transform="",this._cacheItemPositions(),this._cacheParentPositions(),this.entered.next({item:t,container:this,currentIndex:this.getItemIndex(t)})}exit(t){this._reset(),this.exited.next({item:t,container:this})}drop(t,e,n,i,s,r){this._reset(),null==r&&(r=n.getItemIndex(t)),this.dropped.next({item:t,currentIndex:e,previousIndex:r,container:this,previousContainer:n,isPointerOverContainer:i,distance:s})}withItems(t){const e=this._draggables;return this._draggables=t,t.forEach(t=>t._withDropContainer(this)),this.isDragging()&&(e.filter(t=>t.isDragging()).every(e=>-1===t.indexOf(e))?this._reset():this._cacheItems()),this}withDirection(t){return this._direction=t,this}connectedTo(t){return this._siblings=t.slice(),this}withOrientation(t){return this._orientation=t,this}withScrollableParents(t){const e=th(this.element);return this._scrollableElements=-1===t.indexOf(e)?[e,...t]:t.slice(),this}getScrollableParents(){return this._scrollableElements}getItemIndex(t){return this._isDragging?bu("horizontal"===this._orientation&&"rtl"===this._direction?this._itemPositions.slice().reverse():this._itemPositions,e=>e.drag===t):this._draggables.indexOf(t)}isReceiving(){return this._activeSiblings.size>0}_sortItem(t,e,n,i){if(this.sortingDisabled||!su(this._clientRect,.05,e,n))return;const s=this._itemPositions,r=this._getItemIndexFromPointerPosition(t,e,n,i);if(-1===r&&s.length>0)return;const o="horizontal"===this._orientation,a=bu(s,e=>e.drag===t),l=s[r],c=l.clientRect,h=a>r?1:-1,u=this._getItemOffsetPx(s[a].clientRect,c,h),d=this._getSiblingOffsetPx(a,s,h),p=s.slice();gu(s,a,r),this.sorted.next({previousIndex:a,currentIndex:r,container:this,item:t}),s.forEach((e,n)=>{if(p[n]===e)return;const i=e.drag===t,s=i?u:d,r=i?t.getPlaceholderElement():e.drag.getRootElement();e.offset+=s,o?(r.style.transform=`translate3d(${Math.round(e.offset)}px, 0, 0)`,iu(e.clientRect,0,s)):(r.style.transform=`translate3d(0, ${Math.round(e.offset)}px, 0)`,iu(e.clientRect,s,0))}),this._previousSwap.overlaps=nu(c,e,n),this._previousSwap.drag=l.drag,this._previousSwap.delta=o?i.x:i.y}_startScrollingIfNecessary(t,e){if(this.autoScrollDisabled)return;let n,i=0,s=0;if(this._parentPositions.positions.forEach((r,o)=>{o!==this._document&&r.clientRect&&!n&&su(r.clientRect,.05,t,e)&&([i,s]=function(t,e,n,i){const s=Cu(e,i),r=Eu(e,n);let o=0,a=0;if(s){const e=t.scrollTop;1===s?e>0&&(o=1):t.scrollHeight-e>t.clientHeight&&(o=2)}if(r){const e=t.scrollLeft;1===r?e>0&&(a=1):t.scrollWidth-e>t.clientWidth&&(a=2)}return[o,a]}(o,r.clientRect,t,e),(i||s)&&(n=o))}),!i&&!s){const{width:r,height:o}=this._viewportRuler.getViewportSize(),a={width:r,height:o,top:0,right:r,bottom:o,left:0};i=Cu(a,e),s=Eu(a,t),n=window}!n||i===this._verticalScrollDirection&&s===this._horizontalScrollDirection&&n===this._scrollNode||(this._verticalScrollDirection=i,this._horizontalScrollDirection=s,this._scrollNode=n,(i||s)&&n?this._ngZone.runOutsideAngular(this._startScrollInterval):this._stopScrolling())}_stopScrolling(){this._stopScrollTimers.next()}_cacheParentPositions(){const t=th(this.element);this._parentPositions.cache(this._scrollableElements),this._clientRect=this._parentPositions.positions.get(t).clientRect}_cacheItemPositions(){const t="horizontal"===this._orientation;this._itemPositions=this._activeDraggables.map(t=>{const e=t.getVisibleElement();return{drag:t,offset:0,clientRect:eu(e)}}).sort((e,n)=>t?e.clientRect.left-n.clientRect.left:e.clientRect.top-n.clientRect.top)}_reset(){this._isDragging=!1;const t=th(this.element).style;t.scrollSnapType=t.msScrollSnapType=this._initialScrollSnap,this._activeDraggables.forEach(t=>{const e=t.getRootElement();e&&(e.style.transform="")}),this._siblings.forEach(t=>t._stopReceiving(this)),this._activeDraggables=[],this._itemPositions=[],this._previousSwap.drag=null,this._previousSwap.delta=0,this._previousSwap.overlaps=!1,this._stopScrolling(),this._viewportScrollSubscription.unsubscribe(),this._parentPositions.clear()}_getSiblingOffsetPx(t,e,n){const i="horizontal"===this._orientation,s=e[t].clientRect,r=e[t+-1*n];let o=s[i?"width":"height"]*n;if(r){const t=i?"left":"top",e=i?"right":"bottom";-1===n?o-=r.clientRect[t]-s[e]:o+=s[t]-r.clientRect[e]}return o}_getItemOffsetPx(t,e,n){const i="horizontal"===this._orientation;let s=i?e.left-t.left:e.top-t.top;return-1===n&&(s+=i?e.width-t.width:e.height-t.height),s}_shouldEnterAsFirstChild(t,e){if(!this._activeDraggables.length)return!1;const n=this._itemPositions,i="horizontal"===this._orientation;if(n[0].drag!==this._activeDraggables[0]){const s=n[n.length-1].clientRect;return i?t>=s.right:e>=s.bottom}{const s=n[0].clientRect;return i?t<=s.left:e<=s.top}}_getItemIndexFromPointerPosition(t,e,n,i){const s="horizontal"===this._orientation;return bu(this._itemPositions,({drag:r,clientRect:o},a,l)=>{if(r===t)return l.length<2;if(i){const t=s?i.x:i.y;if(r===this._previousSwap.drag&&this._previousSwap.overlaps&&t===this._previousSwap.delta)return!1}return s?e>=Math.floor(o.left)&&e=Math.floor(o.top)&&ni._canReceive(t,e,n))}_canReceive(t,e,n){if(!nu(this._clientRect,e,n)||!this.enterPredicate(t,this))return!1;const i=this._getShadowRoot().elementFromPoint(e,n);if(!i)return!1;const s=th(this.element);return i===s||s.contains(i)}_startReceiving(t){const e=this._activeSiblings;e.has(t)||(e.add(t),this._cacheParentPositions(),this._listenToScrollEvents())}_stopReceiving(t){this._activeSiblings.delete(t),this._viewportScrollSubscription.unsubscribe()}_listenToScrollEvents(){this._viewportScrollSubscription=this._dragDropRegistry.scroll.subscribe(t=>{if(this.isDragging()){const e=this._parentPositions.handleScroll(t);e&&(this._itemPositions.forEach(({clientRect:t})=>{iu(t,e.top,e.left)}),this._itemPositions.forEach(({drag:t})=>{this._dragDropRegistry.isDragging(t)&&t._sortFromLastPointerPosition()}))}else this.isReceiving()&&this._cacheParentPositions()})}_getShadowRoot(){if(!this._cachedShadowRoot){const t=function(t){if(function(){if(null==Nh){const t="undefined"!=typeof document?document.head:null;Nh=!(!t||!t.createShadowRoot&&!t.attachShadow)}return Nh}()){const e=t.getRootNode?t.getRootNode():null;if("undefined"!=typeof ShadowRoot&&ShadowRoot&&e instanceof ShadowRoot)return e}return null}(th(this.element));this._cachedShadowRoot=t||this._document}return this._cachedShadowRoot}}function bu(t,e){for(let n=0;n=n-r&&e<=n+r?1:e>=i-r&&e<=i+r?2:0}function Eu(t,e){const{left:n,right:i,width:s}=t,r=.05*s;return e>=n-r&&e<=n+r?1:e>=i-r&&e<=i+r?2:0}const Su=Fh({passive:!1,capture:!0});let xu=(()=>{class t{constructor(t,e){this._ngZone=t,this._dropInstances=new Set,this._dragInstances=new Set,this._activeDragInstances=new Set,this._globalListeners=new Map,this.pointerMove=new E,this.pointerUp=new E,this.scroll=new E,this._preventDefaultWhileDragging=t=>{this._activeDragInstances.size&&t.preventDefault()},this._document=e}registerDropContainer(t){this._dropInstances.has(t)||this._dropInstances.add(t)}registerDragItem(t){this._dragInstances.add(t),1===this._dragInstances.size&&this._ngZone.runOutsideAngular(()=>{this._document.addEventListener("touchmove",this._preventDefaultWhileDragging,Su)})}removeDropContainer(t){this._dropInstances.delete(t)}removeDragItem(t){this._dragInstances.delete(t),this.stopDragging(t),0===this._dragInstances.size&&this._document.removeEventListener("touchmove",this._preventDefaultWhileDragging,Su)}startDragging(t,e){if(!this._activeDragInstances.has(t)&&(this._activeDragInstances.add(t),1===this._activeDragInstances.size)){const t=e.type.startsWith("touch"),n=t?"touchend":"mouseup";this._globalListeners.set(t?"touchmove":"mousemove",{handler:t=>this.pointerMove.next(t),options:Su}).set(n,{handler:t=>this.pointerUp.next(t),options:!0}).set("scroll",{handler:t=>this.scroll.next(t),options:!0}).set("selectstart",{handler:this._preventDefaultWhileDragging,options:Su}),this._ngZone.runOutsideAngular(()=>{this._globalListeners.forEach((t,e)=>{this._document.addEventListener(e,t.handler,t.options)})})}}stopDragging(t){this._activeDragInstances.delete(t),0===this._activeDragInstances.size&&this._clearGlobalListeners()}isDragging(t){return this._activeDragInstances.has(t)}ngOnDestroy(){this._dragInstances.forEach(t=>this.removeDragItem(t)),this._dropInstances.forEach(t=>this.removeDropContainer(t)),this._clearGlobalListeners(),this.pointerMove.complete(),this.pointerUp.complete()}_clearGlobalListeners(){this._globalListeners.forEach((t,e)=>{this._document.removeEventListener(e,t.handler,t.options)}),this._globalListeners.clear()}}return t.\u0275fac=function(e){return new(e||t)(Wt(Vl),Wt(ac))},t.\u0275prov=ct({factory:function(){return new t(Wt(Vl),Wt(ac))},token:t,providedIn:"root"}),t})();const ku={dragStartThreshold:5,pointerDirectionChangeThreshold:5};let Tu=(()=>{class t{constructor(t,e,n,i){this._document=t,this._ngZone=e,this._viewportRuler=n,this._dragDropRegistry=i}createDrag(t,e=ku){return new lu(t,e,this._document,this._ngZone,this._viewportRuler,this._dragDropRegistry)}createDropList(t){return new yu(t,this._dragDropRegistry,this._document,this._ngZone,this._viewportRuler)}}return t.\u0275fac=function(e){return new(e||t)(Wt(ac),Wt(Vl),Wt(Bh),Wt(xu))},t.\u0275prov=ct({factory:function(){return new t(Wt(ac),Wt(Vl),Wt(Bh),Wt(xu))},token:t,providedIn:"root"}),t})();const Iu=new Mt("CdkDropListGroup");let Du=(()=>{class t{constructor(){this._items=new Set,this._disabled=!1}get disabled(){return this._disabled}set disabled(t){this._disabled=Jc(t)}ngOnDestroy(){this._items.clear()}}return t.\u0275fac=function(e){return new(e||t)},t.\u0275dir=_e({type:t,selectors:[["","cdkDropListGroup",""]],inputs:{disabled:["cdkDropListGroupDisabled","disabled"]},exportAs:["cdkDropListGroup"],features:[ta([{provide:Iu,useExisting:t}])]}),t})();const Au=new Mt("CDK_DRAG_CONFIG");let Pu=0;const Ou=new Mt("CdkDropList");let Ru=(()=>{class t{constructor(e,n,i,s,r,o,a){this.element=e,this._changeDetectorRef=i,this._dir=s,this._group=r,this._scrollDispatcher=o,this._destroyed=new E,this.connectedTo=[],this.id="cdk-drop-list-"+Pu++,this.enterPredicate=()=>!0,this.dropped=new Za,this.entered=new Za,this.exited=new Za,this.sorted=new Za,this._unsortedItems=new Set,this._dropListRef=n.createDropList(e),this._dropListRef.data=this,a&&this._assignDefaults(a),this._dropListRef.enterPredicate=(t,e)=>this.enterPredicate(t.data,e.data),this._setupInputSyncSubscription(this._dropListRef),this._handleEvents(this._dropListRef),t._dropLists.push(this),r&&r._items.add(this)}get disabled(){return this._disabled||!!this._group&&this._group.disabled}set disabled(t){this._dropListRef.disabled=this._disabled=Jc(t)}addItem(t){this._unsortedItems.add(t),this._dropListRef.isDragging()&&this._syncItemsWithRef()}removeItem(t){this._unsortedItems.delete(t),this._dropListRef.isDragging()&&this._syncItemsWithRef()}getSortedItems(){return Array.from(this._unsortedItems).sort((t,e)=>t._dragRef.getVisibleElement().compareDocumentPosition(e._dragRef.getVisibleElement())&Node.DOCUMENT_POSITION_FOLLOWING?-1:1)}ngOnDestroy(){const e=t._dropLists.indexOf(this);e>-1&&t._dropLists.splice(e,1),this._group&&this._group._items.delete(this),this._unsortedItems.clear(),this._dropListRef.dispose(),this._destroyed.next(),this._destroyed.complete()}_setupInputSyncSubscription(e){this._dir&&this._dir.change.pipe(Eh(this._dir.value),bh(this._destroyed)).subscribe(t=>e.withDirection(t)),e.beforeStarted.subscribe(()=>{const n=(i=this.connectedTo,Array.isArray(i)?i:[i]).map(e=>"string"==typeof e?t._dropLists.find(t=>t.id===e):e);var i;if(this._group&&this._group._items.forEach(t=>{-1===n.indexOf(t)&&n.push(t)}),!this._scrollableParentsResolved&&this._scrollDispatcher){const t=this._scrollDispatcher.getAncestorScrollContainers(this.element).map(t=>t.getElementRef().nativeElement);this._dropListRef.withScrollableParents(t),this._scrollableParentsResolved=!0}e.disabled=this.disabled,e.lockAxis=this.lockAxis,e.sortingDisabled=Jc(this.sortingDisabled),e.autoScrollDisabled=Jc(this.autoScrollDisabled),e.connectedTo(n.filter(t=>t&&t!==this).map(t=>t._dropListRef)).withOrientation(this.orientation)})}_handleEvents(t){t.beforeStarted.subscribe(()=>{this._syncItemsWithRef(),this._changeDetectorRef.markForCheck()}),t.entered.subscribe(t=>{this.entered.emit({container:this,item:t.item.data,currentIndex:t.currentIndex})}),t.exited.subscribe(t=>{this.exited.emit({container:this,item:t.item.data}),this._changeDetectorRef.markForCheck()}),t.sorted.subscribe(t=>{this.sorted.emit({previousIndex:t.previousIndex,currentIndex:t.currentIndex,container:this,item:t.item.data})}),t.dropped.subscribe(t=>{this.dropped.emit({previousIndex:t.previousIndex,currentIndex:t.currentIndex,previousContainer:t.previousContainer.data,container:t.container.data,item:t.item.data,isPointerOverContainer:t.isPointerOverContainer,distance:t.distance}),this._changeDetectorRef.markForCheck()})}_assignDefaults(t){const{lockAxis:e,draggingDisabled:n,sortingDisabled:i,listAutoScrollDisabled:s,listOrientation:r}=t;this.disabled=null!=n&&n,this.sortingDisabled=null!=i&&i,this.autoScrollDisabled=null!=s&&s,this.orientation=r||"vertical",e&&(this.lockAxis=e)}_syncItemsWithRef(){this._dropListRef.withItems(this.getSortedItems().map(t=>t._dragRef))}}return t.\u0275fac=function(e){return new(e||t)(lo(sa),lo(Tu),lo(Vr),lo(Mh,8),lo(Iu,12),lo(jh),lo(Au,8))},t.\u0275dir=_e({type:t,selectors:[["","cdkDropList",""],["cdk-drop-list"]],hostAttrs:[1,"cdk-drop-list"],hostVars:7,hostBindings:function(t,e){2&t&&(Bo("id",e.id),Ao("cdk-drop-list-disabled",e.disabled)("cdk-drop-list-dragging",e._dropListRef.isDragging())("cdk-drop-list-receiving",e._dropListRef.isReceiving()))},inputs:{connectedTo:["cdkDropListConnectedTo","connectedTo"],id:"id",enterPredicate:["cdkDropListEnterPredicate","enterPredicate"],disabled:["cdkDropListDisabled","disabled"],sortingDisabled:["cdkDropListSortingDisabled","sortingDisabled"],autoScrollDisabled:["cdkDropListAutoScrollDisabled","autoScrollDisabled"],orientation:["cdkDropListOrientation","orientation"],lockAxis:["cdkDropListLockAxis","lockAxis"],data:["cdkDropListData","data"]},outputs:{dropped:"cdkDropListDropped",entered:"cdkDropListEntered",exited:"cdkDropListExited",sorted:"cdkDropListSorted"},exportAs:["cdkDropList"],features:[ta([{provide:Iu,useValue:void 0},{provide:Ou,useExisting:t}])]}),t._dropLists=[],t})();const Nu=new Mt("CDK_DRAG_PARENT"),Fu=new Mt("CdkDragHandle"),Vu=new Mt("CdkDragPlaceholder"),Mu=new Mt("CdkDragPreview");let Lu=(()=>{class t{constructor(t,e,n,i,s,r,o,a,l,c){this.element=t,this.dropContainer=e,this._document=n,this._ngZone=i,this._viewContainerRef=s,this._dir=o,this._changeDetectorRef=l,this._selfHandle=c,this._destroyed=new E,this.started=new Za,this.released=new Za,this.ended=new Za,this.entered=new Za,this.exited=new Za,this.dropped=new Za,this.moved=new y(t=>{const e=this._dragRef.moved.pipe(F(t=>({source:this,pointerPosition:t.pointerPosition,event:t.event,delta:t.delta,distance:t.distance}))).subscribe(t);return()=>{e.unsubscribe()}}),this._dragRef=a.createDrag(t,{dragStartThreshold:r&&null!=r.dragStartThreshold?r.dragStartThreshold:5,pointerDirectionChangeThreshold:r&&null!=r.pointerDirectionChangeThreshold?r.pointerDirectionChangeThreshold:5,zIndex:null==r?void 0:r.zIndex}),this._dragRef.data=this,r&&this._assignDefaults(r),e&&(this._dragRef._withDropContainer(e._dropListRef),e.addItem(this)),this._syncInputs(this._dragRef),this._handleEvents(this._dragRef)}get disabled(){return this._disabled||this.dropContainer&&this.dropContainer.disabled}set disabled(t){this._disabled=Jc(t),this._dragRef.disabled=this._disabled}getPlaceholderElement(){return this._dragRef.getPlaceholderElement()}getRootElement(){return this._dragRef.getRootElement()}reset(){this._dragRef.reset()}getFreeDragPosition(){return this._dragRef.getFreeDragPosition()}ngAfterViewInit(){this._ngZone.onStable.asObservable().pipe($h(1),bh(this._destroyed)).subscribe(()=>{this._updateRootElement(),this._handles.changes.pipe(Eh(this._handles),Zh(t=>{const e=t.filter(t=>t._parentDrag===this).map(t=>t.element);this._selfHandle&&this.rootElementSelector&&e.push(this.element),this._dragRef.withHandles(e)}),function t(e,n){return"function"==typeof n?i=>i.pipe(t((t,i)=>j(e(t,i)).pipe(F((e,s)=>n(t,e,i,s))))):t=>t.lift(new Sh(e))}(t=>U(...t.map(t=>t._stateChanges.pipe(Eh(t))))),bh(this._destroyed)).subscribe(t=>{const e=this._dragRef,n=t.element.nativeElement;t.disabled?e.disableHandle(n):e.enableHandle(n)}),this.freeDragPosition&&this._dragRef.setFreeDragPosition(this.freeDragPosition)})}ngOnChanges(t){const e=t.rootElementSelector,n=t.freeDragPosition;e&&!e.firstChange&&this._updateRootElement(),n&&!n.firstChange&&this.freeDragPosition&&this._dragRef.setFreeDragPosition(this.freeDragPosition)}ngOnDestroy(){this.dropContainer&&this.dropContainer.removeItem(this),this._destroyed.next(),this._destroyed.complete(),this._dragRef.dispose()}_updateRootElement(){const t=this.element.nativeElement,e=this.rootElementSelector?ju(t,this.rootElementSelector):t;if(e&&e.nodeType!==this._document.ELEMENT_NODE)throw Error(`cdkDrag must be attached to an element node. Currently attached to "${e.nodeName}".`);this._dragRef.withRootElement(e||t)}_getBoundaryElement(){const t=this.boundaryElement;if(!t)return null;if("string"==typeof t)return ju(this.element.nativeElement,t);const e=th(t);if(wi()&&!e.contains(this.element.nativeElement))throw Error("Draggable element is not inside of the node passed into cdkDragBoundary.");return e}_syncInputs(t){t.beforeStarted.subscribe(()=>{if(!t.isDragging()){const e=this._dir,n=this.dragStartDelay,i=this._placeholderTemplate?{template:this._placeholderTemplate.templateRef,context:this._placeholderTemplate.data,viewContainer:this._viewContainerRef}:null,s=this._previewTemplate?{template:this._previewTemplate.templateRef,context:this._previewTemplate.data,matchSize:this._previewTemplate.matchSize,viewContainer:this._viewContainerRef}:null;t.disabled=this.disabled,t.lockAxis=this.lockAxis,t.dragStartDelay="object"==typeof n&&n?n:Xc(n),t.constrainPosition=this.constrainPosition,t.previewClass=this.previewClass,t.withBoundaryElement(this._getBoundaryElement()).withPlaceholderTemplate(i).withPreviewTemplate(s),e&&t.withDirection(e.value)}})}_handleEvents(t){t.started.subscribe(()=>{this.started.emit({source:this}),this._changeDetectorRef.markForCheck()}),t.released.subscribe(()=>{this.released.emit({source:this})}),t.ended.subscribe(t=>{this.ended.emit({source:this,distance:t.distance}),this._changeDetectorRef.markForCheck()}),t.entered.subscribe(t=>{this.entered.emit({container:t.container.data,item:this,currentIndex:t.currentIndex})}),t.exited.subscribe(t=>{this.exited.emit({container:t.container.data,item:this})}),t.dropped.subscribe(t=>{this.dropped.emit({previousIndex:t.previousIndex,currentIndex:t.currentIndex,previousContainer:t.previousContainer.data,container:t.container.data,isPointerOverContainer:t.isPointerOverContainer,item:this,distance:t.distance})})}_assignDefaults(t){const{lockAxis:e,dragStartDelay:n,constrainPosition:i,previewClass:s,boundaryElement:r,draggingDisabled:o,rootElementSelector:a}=t;this.disabled=null!=o&&o,this.dragStartDelay=n||0,e&&(this.lockAxis=e),i&&(this.constrainPosition=i),s&&(this.previewClass=s),r&&(this.boundaryElement=r),a&&(this.rootElementSelector=a)}}return t.\u0275fac=function(e){return new(e||t)(lo(sa),lo(Ou,12),lo(ac),lo(Vl),lo(Aa),lo(Au,8),lo(Mh,8),lo(Tu),lo(Vr),lo(Fu,10))},t.\u0275dir=_e({type:t,selectors:[["","cdkDrag",""]],contentQueries:function(t,e,n){var i;1&t&&(ll(n,Mu,!0),ll(n,Vu,!0),ll(n,Fu,!0)),2&t&&(rl(i=ul())&&(e._previewTemplate=i.first),rl(i=ul())&&(e._placeholderTemplate=i.first),rl(i=ul())&&(e._handles=i))},hostAttrs:[1,"cdk-drag"],hostVars:4,hostBindings:function(t,e){2&t&&Ao("cdk-drag-disabled",e.disabled)("cdk-drag-dragging",e._dragRef.isDragging())},inputs:{disabled:["cdkDragDisabled","disabled"],dragStartDelay:["cdkDragStartDelay","dragStartDelay"],lockAxis:["cdkDragLockAxis","lockAxis"],constrainPosition:["cdkDragConstrainPosition","constrainPosition"],previewClass:["cdkDragPreviewClass","previewClass"],boundaryElement:["cdkDragBoundary","boundaryElement"],rootElementSelector:["cdkDragRootElement","rootElementSelector"],data:["cdkDragData","data"],freeDragPosition:["cdkDragFreeDragPosition","freeDragPosition"]},outputs:{started:"cdkDragStarted",released:"cdkDragReleased",ended:"cdkDragEnded",entered:"cdkDragEntered",exited:"cdkDragExited",dropped:"cdkDragDropped",moved:"cdkDragMoved"},exportAs:["cdkDrag"],features:[ta([{provide:Nu,useExisting:t}]),De]}),t})();function ju(t,e){let n=t.parentElement;for(;n;){if(n.matches?n.matches(e):n.msMatchesSelector(e))return n;n=n.parentElement}return null}let Bu=(()=>{class t{}return t.\u0275mod=me({type:t}),t.\u0275inj=ht({factory:function(e){return new(e||t)},providers:[Tu],imports:[Hh]}),t})();const Hu=Fh({passive:!0});let zu=(()=>{class t{constructor(t,e){this._platform=t,this._ngZone=e,this._monitoredElements=new Map}monitor(t){if(!this._platform.isBrowser)return kh;const e=th(t),n=this._monitoredElements.get(e);if(n)return n.subject.asObservable();const i=new E,s="cdk-text-field-autofilled",r=t=>{"cdk-text-field-autofill-start"!==t.animationName||e.classList.contains(s)?"cdk-text-field-autofill-end"===t.animationName&&e.classList.contains(s)&&(e.classList.remove(s),this._ngZone.run(()=>i.next({target:t.target,isAutofilled:!1}))):(e.classList.add(s),this._ngZone.run(()=>i.next({target:t.target,isAutofilled:!0})))};return this._ngZone.runOutsideAngular(()=>{e.addEventListener("animationstart",r,Hu),e.classList.add("cdk-text-field-autofill-monitored")}),this._monitoredElements.set(e,{subject:i,unlisten:()=>{e.removeEventListener("animationstart",r,Hu)}}),i.asObservable()}stopMonitoring(t){const e=th(t),n=this._monitoredElements.get(e);n&&(n.unlisten(),n.subject.complete(),e.classList.remove("cdk-text-field-autofill-monitored"),e.classList.remove("cdk-text-field-autofilled"),this._monitoredElements.delete(e))}ngOnDestroy(){this._monitoredElements.forEach((t,e)=>this.stopMonitoring(e))}}return t.\u0275fac=function(e){return new(e||t)(Wt(Dh),Wt(Vl))},t.\u0275prov=ct({factory:function(){return new t(Wt(Dh),Wt(Vl))},token:t,providedIn:"root"}),t})(),qu=(()=>{class t{}return t.\u0275mod=me({type:t}),t.\u0275inj=ht({factory:function(e){return new(e||t)},imports:[[Ah]]}),t})();class $u{constructor(t,e){this.dueTime=t,this.scheduler=e}call(t,e){return e.subscribe(new Uu(t,this.dueTime,this.scheduler))}}class Uu extends f{constructor(t,e,n){super(t),this.dueTime=e,this.scheduler=n,this.debouncedSubscription=null,this.lastValue=null,this.hasValue=!1}_next(t){this.clearDebounce(),this.lastValue=t,this.hasValue=!0,this.add(this.debouncedSubscription=this.scheduler.schedule(Gu,this.dueTime,this))}_complete(){this.debouncedNext(),this.destination.complete()}debouncedNext(){if(this.clearDebounce(),this.hasValue){const{lastValue:t}=this;this.lastValue=null,this.hasValue=!1,this.destination.next(t)}}clearDebounce(){const t=this.debouncedSubscription;null!==t&&(this.remove(t),t.unsubscribe(),this.debouncedSubscription=null)}}function Gu(t){t.debouncedNext()}let Wu=(()=>{class t{create(t){return"undefined"==typeof MutationObserver?null:new MutationObserver(t)}}return t.\u0275fac=function(e){return new(e||t)},t.\u0275prov=ct({factory:function(){return new t},token:t,providedIn:"root"}),t})(),Zu=(()=>{class t{constructor(t){this._mutationObserverFactory=t,this._observedElements=new Map}ngOnDestroy(){this._observedElements.forEach((t,e)=>this._cleanupObserver(e))}observe(t){const e=th(t);return new y(t=>{const n=this._observeElement(e).subscribe(t);return()=>{n.unsubscribe(),this._unobserveElement(e)}})}_observeElement(t){if(this._observedElements.has(t))this._observedElements.get(t).count++;else{const e=new E,n=this._mutationObserverFactory.create(t=>e.next(t));n&&n.observe(t,{characterData:!0,childList:!0,subtree:!0}),this._observedElements.set(t,{observer:n,stream:e,count:1})}return this._observedElements.get(t).stream}_unobserveElement(t){this._observedElements.has(t)&&(this._observedElements.get(t).count--,this._observedElements.get(t).count||this._cleanupObserver(t))}_cleanupObserver(t){if(this._observedElements.has(t)){const{observer:e,stream:n}=this._observedElements.get(t);e&&e.disconnect(),n.complete(),this._observedElements.delete(t)}}}return t.\u0275fac=function(e){return new(e||t)(Wt(Wu))},t.\u0275prov=ct({factory:function(){return new t(Wt(Wu))},token:t,providedIn:"root"}),t})(),Qu=(()=>{class t{constructor(t,e,n){this._contentObserver=t,this._elementRef=e,this._ngZone=n,this.event=new Za,this._disabled=!1,this._currentSubscription=null}get disabled(){return this._disabled}set disabled(t){this._disabled=Jc(t),this._disabled?this._unsubscribe():this._subscribe()}get debounce(){return this._debounce}set debounce(t){this._debounce=Xc(t),this._subscribe()}ngAfterContentInit(){this._currentSubscription||this.disabled||this._subscribe()}ngOnDestroy(){this._unsubscribe()}_subscribe(){this._unsubscribe();const t=this._contentObserver.observe(this._elementRef);this._ngZone.runOutsideAngular(()=>{this._currentSubscription=(this.debounce?t.pipe(function(t,e=hh){return n=>n.lift(new $u(t,e))}(this.debounce)):t).subscribe(this.event)})}_unsubscribe(){this._currentSubscription&&this._currentSubscription.unsubscribe()}}return t.\u0275fac=function(e){return new(e||t)(lo(Zu),lo(sa),lo(Vl))},t.\u0275dir=_e({type:t,selectors:[["","cdkObserveContent",""]],inputs:{disabled:["cdkObserveContentDisabled","disabled"],debounce:"debounce"},outputs:{event:"cdkObserveContent"},exportAs:["cdkObserveContent"]}),t})(),Ku=(()=>{class t{}return t.\u0275mod=me({type:t}),t.\u0275inj=ht({factory:function(e){return new(e||t)},providers:[Wu]}),t})();"undefined"!=typeof Element&∈let Yu=(()=>{class t{constructor(t,e){this._platform=t,this._document=e}getHighContrastMode(){if(!this._platform.isBrowser)return 0;const t=this._document.createElement("div");t.style.backgroundColor="rgb(1,2,3)",t.style.position="absolute",this._document.body.appendChild(t);const e=this._document.defaultView||window,n=e&&e.getComputedStyle?e.getComputedStyle(t):null,i=(n&&n.backgroundColor||"").replace(/ /g,"");switch(this._document.body.removeChild(t),i){case"rgb(0,0,0)":return 2;case"rgb(255,255,255)":return 1}return 0}_applyBodyHighContrastModeCssClasses(){if(this._platform.isBrowser&&this._document.body){const t=this._document.body.classList;t.remove("cdk-high-contrast-active"),t.remove("cdk-high-contrast-black-on-white"),t.remove("cdk-high-contrast-white-on-black");const e=this.getHighContrastMode();1===e?(t.add("cdk-high-contrast-active"),t.add("cdk-high-contrast-black-on-white")):2===e&&(t.add("cdk-high-contrast-active"),t.add("cdk-high-contrast-white-on-black"))}}}return t.\u0275fac=function(e){return new(e||t)(Wt(Dh),Wt(ac))},t.\u0275prov=ct({factory:function(){return new t(Wt(Dh),Wt(ac))},token:t,providedIn:"root"}),t})();const Ju=new ua("10.1.0");class Xu{}function td(t,e){return{type:7,name:t,definitions:e,options:{}}}function ed(t,e=null){return{type:4,styles:e,timings:t}}function nd(t,e=null){return{type:2,steps:t,options:e}}function id(t){return{type:6,styles:t,offset:null}}function sd(t,e,n){return{type:0,name:t,styles:e,options:n}}function rd(t,e,n=null){return{type:1,expr:t,animation:e,options:n}}function od(t){Promise.resolve(null).then(t)}class ad{constructor(t=0,e=0){this._onDoneFns=[],this._onStartFns=[],this._onDestroyFns=[],this._started=!1,this._destroyed=!1,this._finished=!1,this.parentPlayer=null,this.totalTime=t+e}_onFinish(){this._finished||(this._finished=!0,this._onDoneFns.forEach(t=>t()),this._onDoneFns=[])}onStart(t){this._onStartFns.push(t)}onDone(t){this._onDoneFns.push(t)}onDestroy(t){this._onDestroyFns.push(t)}hasStarted(){return this._started}init(){}play(){this.hasStarted()||(this._onStart(),this.triggerMicrotask()),this._started=!0}triggerMicrotask(){od(()=>this._onFinish())}_onStart(){this._onStartFns.forEach(t=>t()),this._onStartFns=[]}pause(){}restart(){}finish(){this._onFinish()}destroy(){this._destroyed||(this._destroyed=!0,this.hasStarted()||this._onStart(),this.finish(),this._onDestroyFns.forEach(t=>t()),this._onDestroyFns=[])}reset(){}setPosition(t){}getPosition(){return 0}triggerCallback(t){const e="start"==t?this._onStartFns:this._onDoneFns;e.forEach(t=>t()),e.length=0}}class ld{constructor(t){this._onDoneFns=[],this._onStartFns=[],this._finished=!1,this._started=!1,this._destroyed=!1,this._onDestroyFns=[],this.parentPlayer=null,this.totalTime=0,this.players=t;let e=0,n=0,i=0;const s=this.players.length;0==s?od(()=>this._onFinish()):this.players.forEach(t=>{t.onDone(()=>{++e==s&&this._onFinish()}),t.onDestroy(()=>{++n==s&&this._onDestroy()}),t.onStart(()=>{++i==s&&this._onStart()})}),this.totalTime=this.players.reduce((t,e)=>Math.max(t,e.totalTime),0)}_onFinish(){this._finished||(this._finished=!0,this._onDoneFns.forEach(t=>t()),this._onDoneFns=[])}init(){this.players.forEach(t=>t.init())}onStart(t){this._onStartFns.push(t)}_onStart(){this.hasStarted()||(this._started=!0,this._onStartFns.forEach(t=>t()),this._onStartFns=[])}onDone(t){this._onDoneFns.push(t)}onDestroy(t){this._onDestroyFns.push(t)}hasStarted(){return this._started}play(){this.parentPlayer||this.init(),this._onStart(),this.players.forEach(t=>t.play())}pause(){this.players.forEach(t=>t.pause())}restart(){this.players.forEach(t=>t.restart())}finish(){this._onFinish(),this.players.forEach(t=>t.finish())}destroy(){this._onDestroy()}_onDestroy(){this._destroyed||(this._destroyed=!0,this._onFinish(),this.players.forEach(t=>t.destroy()),this._onDestroyFns.forEach(t=>t()),this._onDestroyFns=[])}reset(){this.players.forEach(t=>t.reset()),this._destroyed=!1,this._finished=!1,this._started=!1}setPosition(t){const e=t*this.totalTime;this.players.forEach(t=>{const n=t.totalTime?Math.min(1,e/t.totalTime):1;t.setPosition(n)})}getPosition(){let t=0;return this.players.forEach(e=>{const n=e.getPosition();t=Math.min(n,t)}),t}beforeDestroy(){this.players.forEach(t=>{t.beforeDestroy&&t.beforeDestroy()})}triggerCallback(t){const e="start"==t?this._onStartFns:this._onDoneFns;e.forEach(t=>t()),e.length=0}}function cd(){return"undefined"!=typeof process&&"[object process]"==={}.toString.call(process)}function hd(t){switch(t.length){case 0:return new ad;case 1:return t[0];default:return new ld(t)}}function ud(t,e,n,i,s={},r={}){const o=[],a=[];let l=-1,c=null;if(i.forEach(t=>{const n=t.offset,i=n==l,h=i&&c||{};Object.keys(t).forEach(n=>{let i=n,a=t[n];if("offset"!==n)switch(i=e.normalizePropertyName(i,o),a){case"!":a=s[n];break;case"*":a=r[n];break;default:a=e.normalizeStyleValue(n,i,a,o)}h[i]=a}),i||a.push(h),c=h,l=n}),o.length){const t="\n - ";throw new Error(`Unable to animate due to the following errors:${t}${o.join(t)}`)}return a}function dd(t,e,n,i){switch(e){case"start":t.onStart(()=>i(n&&pd(n,"start",t)));break;case"done":t.onDone(()=>i(n&&pd(n,"done",t)));break;case"destroy":t.onDestroy(()=>i(n&&pd(n,"destroy",t)))}}function pd(t,e,n){const i=n.totalTime,s=fd(t.element,t.triggerName,t.fromState,t.toState,e||t.phaseName,null==i?t.totalTime:i,!!n.disabled),r=t._data;return null!=r&&(s._data=r),s}function fd(t,e,n,i,s="",r=0,o){return{element:t,triggerName:e,fromState:n,toState:i,phaseName:s,totalTime:r,disabled:!!o}}function md(t,e,n){let i;return t instanceof Map?(i=t.get(e),i||t.set(e,i=n)):(i=t[e],i||(i=t[e]=n)),i}function gd(t){const e=t.indexOf(":");return[t.substring(1,e),t.substr(e+1)]}let _d=(t,e)=>!1,yd=(t,e)=>!1,bd=(t,e,n)=>[];const vd=cd();(vd||"undefined"!=typeof Element)&&(_d=(t,e)=>t.contains(e),yd=(()=>{if(vd||Element.prototype.matches)return(t,e)=>t.matches(e);{const t=Element.prototype,e=t.matchesSelector||t.mozMatchesSelector||t.msMatchesSelector||t.oMatchesSelector||t.webkitMatchesSelector;return e?(t,n)=>e.apply(t,[n]):yd}})(),bd=(t,e,n)=>{let i=[];if(n)i.push(...t.querySelectorAll(e));else{const n=t.querySelector(e);n&&i.push(n)}return i});let wd=null,Cd=!1;function Ed(t){wd||(wd=("undefined"!=typeof document?document.body:null)||{},Cd=!!wd.style&&"WebkitAppearance"in wd.style);let e=!0;return wd.style&&!function(t){return"ebkit"==t.substring(1,6)}(t)&&(e=t in wd.style,!e&&Cd)&&(e="Webkit"+t.charAt(0).toUpperCase()+t.substr(1)in wd.style),e}const Sd=yd,xd=_d,kd=bd;function Td(t){const e={};return Object.keys(t).forEach(n=>{const i=n.replace(/([a-z])([A-Z])/g,"$1-$2");e[i]=t[n]}),e}let Id=(()=>{class t{validateStyleProperty(t){return Ed(t)}matchesElement(t,e){return Sd(t,e)}containsElement(t,e){return xd(t,e)}query(t,e,n){return kd(t,e,n)}computeStyle(t,e,n){return n||""}animate(t,e,n,i,s,r=[],o){return new ad(n,i)}}return t.\u0275fac=function(e){return new(e||t)},t.\u0275prov=ct({token:t,factory:t.\u0275fac}),t})(),Dd=(()=>{class t{}return t.NOOP=new Id,t})();function Ad(t){if("number"==typeof t)return t;const e=t.match(/^(-?[\.\d]+)(m?s)/);return!e||e.length<2?0:Pd(parseFloat(e[1]),e[2])}function Pd(t,e){switch(e){case"s":return 1e3*t;default:return t}}function Od(t,e,n){return t.hasOwnProperty("duration")?t:function(t,e,n){let i,s=0,r="";if("string"==typeof t){const n=t.match(/^(-?[\.\d]+)(m?s)(?:\s+(-?[\.\d]+)(m?s))?(?:\s+([-a-z]+(?:\(.+?\))?))?$/i);if(null===n)return e.push(`The provided timing value "${t}" is invalid.`),{duration:0,delay:0,easing:""};i=Pd(parseFloat(n[1]),n[2]);const o=n[3];null!=o&&(s=Pd(parseFloat(o),n[4]));const a=n[5];a&&(r=a)}else i=t;if(!n){let n=!1,r=e.length;i<0&&(e.push("Duration values below 0 are not allowed for this animation step."),n=!0),s<0&&(e.push("Delay values below 0 are not allowed for this animation step."),n=!0),n&&e.splice(r,0,`The provided timing value "${t}" is invalid.`)}return{duration:i,delay:s,easing:r}}(t,e,n)}function Rd(t,e={}){return Object.keys(t).forEach(n=>{e[n]=t[n]}),e}function Nd(t,e,n={}){if(e)for(let i in t)n[i]=t[i];else Rd(t,n);return n}function Fd(t,e,n){return n?e+":"+n+";":""}function Vd(t){let e="";for(let n=0;n{const s=Ud(i);n&&!n.hasOwnProperty(i)&&(n[i]=t.style[s]),t.style[s]=e[i]}),cd()&&Vd(t))}function Ld(t,e){t.style&&(Object.keys(e).forEach(e=>{const n=Ud(e);t.style[n]=""}),cd()&&Vd(t))}function jd(t){return Array.isArray(t)?1==t.length?t[0]:nd(t):t}const Bd=new RegExp("{{\\s*(.+?)\\s*}}","g");function Hd(t){let e=[];if("string"==typeof t){let n;for(;n=Bd.exec(t);)e.push(n[1]);Bd.lastIndex=0}return e}function zd(t,e,n){const i=t.toString(),s=i.replace(Bd,(t,i)=>{let s=e[i];return e.hasOwnProperty(i)||(n.push("Please provide a value for the animation param "+i),s=""),s.toString()});return s==i?t:s}function qd(t){const e=[];let n=t.next();for(;!n.done;)e.push(n.value),n=t.next();return e}const $d=/-+([a-z0-9])/g;function Ud(t){return t.replace($d,(...t)=>t[1].toUpperCase())}function Gd(t,e){return 0===t||0===e}function Wd(t,e,n){const i=Object.keys(n);if(i.length&&e.length){let r=e[0],o=[];if(i.forEach(t=>{r.hasOwnProperty(t)||o.push(t),r[t]=n[t]}),o.length)for(var s=1;sfunction(t,e,n){if(":"==t[0]){const i=function(t,e){switch(t){case":enter":return"void => *";case":leave":return"* => void";case":increment":return(t,e)=>parseFloat(e)>parseFloat(t);case":decrement":return(t,e)=>parseFloat(e) *"}}(t,n);if("function"==typeof i)return void e.push(i);t=i}const i=t.match(/^(\*|[-\w]+)\s*()\s*(\*|[-\w]+)$/);if(null==i||i.length<4)return n.push(`The provided transition expression "${t}" is not supported`),e;const s=i[1],r=i[2],o=i[3];e.push(Xd(s,o)),"<"!=r[0]||"*"==s&&"*"==o||e.push(Xd(o,s))}(t,n,e)):n.push(t),n}const Yd=new Set(["true","1"]),Jd=new Set(["false","0"]);function Xd(t,e){const n=Yd.has(t)||Jd.has(t),i=Yd.has(e)||Jd.has(e);return(s,r)=>{let o="*"==t||t==s,a="*"==e||e==r;return!o&&n&&"boolean"==typeof s&&(o=s?Yd.has(t):Jd.has(t)),!a&&i&&"boolean"==typeof r&&(a=r?Yd.has(e):Jd.has(e)),o&&a}}const tp=new RegExp("s*:selfs*,?","g");function ep(t,e,n){return new np(t).build(e,n)}class np{constructor(t){this._driver=t}build(t,e){const n=new ip(e);return this._resetContextStyleTimingState(n),Zd(this,jd(t),n)}_resetContextStyleTimingState(t){t.currentQuerySelector="",t.collectedStyles={},t.collectedStyles[""]={},t.currentTime=0}visitTrigger(t,e){let n=e.queryCount=0,i=e.depCount=0;const s=[],r=[];return"@"==t.name.charAt(0)&&e.errors.push("animation triggers cannot be prefixed with an `@` sign (e.g. trigger('@foo', [...]))"),t.definitions.forEach(t=>{if(this._resetContextStyleTimingState(e),0==t.type){const n=t,i=n.name;i.toString().split(/\s*,\s*/).forEach(t=>{n.name=t,s.push(this.visitState(n,e))}),n.name=i}else if(1==t.type){const s=this.visitTransition(t,e);n+=s.queryCount,i+=s.depCount,r.push(s)}else e.errors.push("only state() and transition() definitions can sit inside of a trigger()")}),{type:7,name:t.name,states:s,transitions:r,queryCount:n,depCount:i,options:null}}visitState(t,e){const n=this.visitStyle(t.styles,e),i=t.options&&t.options.params||null;if(n.containsDynamicStyles){const s=new Set,r=i||{};if(n.styles.forEach(t=>{if(sp(t)){const e=t;Object.keys(e).forEach(t=>{Hd(e[t]).forEach(t=>{r.hasOwnProperty(t)||s.add(t)})})}}),s.size){const n=qd(s.values());e.errors.push(`state("${t.name}", ...) must define default values for all the following style substitutions: ${n.join(", ")}`)}}return{type:0,name:t.name,style:n,options:i?{params:i}:null}}visitTransition(t,e){e.queryCount=0,e.depCount=0;const n=Zd(this,jd(t.animation),e);return{type:1,matchers:Kd(t.expr,e.errors),animation:n,queryCount:e.queryCount,depCount:e.depCount,options:rp(t.options)}}visitSequence(t,e){return{type:2,steps:t.steps.map(t=>Zd(this,t,e)),options:rp(t.options)}}visitGroup(t,e){const n=e.currentTime;let i=0;const s=t.steps.map(t=>{e.currentTime=n;const s=Zd(this,t,e);return i=Math.max(i,e.currentTime),s});return e.currentTime=i,{type:3,steps:s,options:rp(t.options)}}visitAnimate(t,e){const n=function(t,e){let n=null;if(t.hasOwnProperty("duration"))n=t;else if("number"==typeof t)return op(Od(t,e).duration,0,"");const i=t;if(i.split(/\s+/).some(t=>"{"==t.charAt(0)&&"{"==t.charAt(1))){const t=op(0,0,"");return t.dynamic=!0,t.strValue=i,t}return n=n||Od(i,e),op(n.duration,n.delay,n.easing)}(t.timings,e.errors);let i;e.currentAnimateTimings=n;let s=t.styles?t.styles:id({});if(5==s.type)i=this.visitKeyframes(s,e);else{let s=t.styles,r=!1;if(!s){r=!0;const t={};n.easing&&(t.easing=n.easing),s=id(t)}e.currentTime+=n.duration+n.delay;const o=this.visitStyle(s,e);o.isEmptyStep=r,i=o}return e.currentAnimateTimings=null,{type:4,timings:n,style:i,options:null}}visitStyle(t,e){const n=this._makeStyleAst(t,e);return this._validateStyleAst(n,e),n}_makeStyleAst(t,e){const n=[];Array.isArray(t.styles)?t.styles.forEach(t=>{"string"==typeof t?"*"==t?n.push(t):e.errors.push(`The provided style string value ${t} is not allowed.`):n.push(t)}):n.push(t.styles);let i=!1,s=null;return n.forEach(t=>{if(sp(t)){const e=t,n=e.easing;if(n&&(s=n,delete e.easing),!i)for(let t in e)if(e[t].toString().indexOf("{{")>=0){i=!0;break}}}),{type:6,styles:n,easing:s,offset:t.offset,containsDynamicStyles:i,options:null}}_validateStyleAst(t,e){const n=e.currentAnimateTimings;let i=e.currentTime,s=e.currentTime;n&&s>0&&(s-=n.duration+n.delay),t.styles.forEach(t=>{"string"!=typeof t&&Object.keys(t).forEach(n=>{if(!this._driver.validateStyleProperty(n))return void e.errors.push(`The provided animation property "${n}" is not a supported CSS property for animations`);const r=e.collectedStyles[e.currentQuerySelector],o=r[n];let a=!0;o&&(s!=i&&s>=o.startTime&&i<=o.endTime&&(e.errors.push(`The CSS property "${n}" that exists between the times of "${o.startTime}ms" and "${o.endTime}ms" is also being animated in a parallel animation between the times of "${s}ms" and "${i}ms"`),a=!1),s=o.startTime),a&&(r[n]={startTime:s,endTime:i}),e.options&&function(t,e,n){const i=e.params||{},s=Hd(t);s.length&&s.forEach(t=>{i.hasOwnProperty(t)||n.push(`Unable to resolve the local animation param ${t} in the given list of values`)})}(t[n],e.options,e.errors)})})}visitKeyframes(t,e){const n={type:5,styles:[],options:null};if(!e.currentAnimateTimings)return e.errors.push("keyframes() must be placed inside of a call to animate()"),n;let i=0;const s=[];let r=!1,o=!1,a=0;const l=t.steps.map(t=>{const n=this._makeStyleAst(t,e);let l=null!=n.offset?n.offset:function(t){if("string"==typeof t)return null;let e=null;if(Array.isArray(t))t.forEach(t=>{if(sp(t)&&t.hasOwnProperty("offset")){const n=t;e=parseFloat(n.offset),delete n.offset}});else if(sp(t)&&t.hasOwnProperty("offset")){const n=t;e=parseFloat(n.offset),delete n.offset}return e}(n.styles),c=0;return null!=l&&(i++,c=n.offset=l),o=o||c<0||c>1,r=r||c0&&i{const r=h>0?i==u?1:h*i:s[i],o=r*f;e.currentTime=d+p.delay+o,p.duration=o,this._validateStyleAst(t,e),t.offset=r,n.styles.push(t)}),n}visitReference(t,e){return{type:8,animation:Zd(this,jd(t.animation),e),options:rp(t.options)}}visitAnimateChild(t,e){return e.depCount++,{type:9,options:rp(t.options)}}visitAnimateRef(t,e){return{type:10,animation:this.visitReference(t.animation,e),options:rp(t.options)}}visitQuery(t,e){const n=e.currentQuerySelector,i=t.options||{};e.queryCount++,e.currentQuery=t;const[s,r]=function(t){const e=!!t.split(/\s*,\s*/).find(t=>":self"==t);return e&&(t=t.replace(tp,"")),[t=t.replace(/@\*/g,".ng-trigger").replace(/@\w+/g,t=>".ng-trigger-"+t.substr(1)).replace(/:animating/g,".ng-animating"),e]}(t.selector);e.currentQuerySelector=n.length?n+" "+s:s,md(e.collectedStyles,e.currentQuerySelector,{});const o=Zd(this,jd(t.animation),e);return e.currentQuery=null,e.currentQuerySelector=n,{type:11,selector:s,limit:i.limit||0,optional:!!i.optional,includeSelf:r,animation:o,originalSelector:t.selector,options:rp(t.options)}}visitStagger(t,e){e.currentQuery||e.errors.push("stagger() can only be used inside of query()");const n="full"===t.timings?{duration:0,delay:0,easing:"full"}:Od(t.timings,e.errors,!0);return{type:12,animation:Zd(this,jd(t.animation),e),timings:n,options:null}}}class ip{constructor(t){this.errors=t,this.queryCount=0,this.depCount=0,this.currentTransition=null,this.currentQuery=null,this.currentQuerySelector=null,this.currentAnimateTimings=null,this.currentTime=0,this.collectedStyles={},this.options=null}}function sp(t){return!Array.isArray(t)&&"object"==typeof t}function rp(t){var e;return t?(t=Rd(t)).params&&(t.params=(e=t.params)?Rd(e):null):t={},t}function op(t,e,n){return{duration:t,delay:e,easing:n}}function ap(t,e,n,i,s,r,o=null,a=!1){return{type:1,element:t,keyframes:e,preStyleProps:n,postStyleProps:i,duration:s,delay:r,totalTime:s+r,easing:o,subTimeline:a}}class lp{constructor(){this._map=new Map}consume(t){let e=this._map.get(t);return e?this._map.delete(t):e=[],e}append(t,e){let n=this._map.get(t);n||this._map.set(t,n=[]),n.push(...e)}has(t){return this._map.has(t)}clear(){this._map.clear()}}const cp=new RegExp(":enter","g"),hp=new RegExp(":leave","g");function up(t,e,n,i,s,r={},o={},a,l,c=[]){return(new dp).buildKeyframes(t,e,n,i,s,r,o,a,l,c)}class dp{buildKeyframes(t,e,n,i,s,r,o,a,l,c=[]){l=l||new lp;const h=new fp(t,e,l,i,s,c,[]);h.options=a,h.currentTimeline.setStyles([r],null,h.errors,a),Zd(this,n,h);const u=h.timelines.filter(t=>t.containsAnimation());if(u.length&&Object.keys(o).length){const t=u[u.length-1];t.allowOnlyTimelineStyles()||t.setStyles([o],null,h.errors,a)}return u.length?u.map(t=>t.buildKeyframes()):[ap(e,[],[],[],0,0,"",!1)]}visitTrigger(t,e){}visitState(t,e){}visitTransition(t,e){}visitAnimateChild(t,e){const n=e.subInstructions.consume(e.element);if(n){const i=e.createSubContext(t.options),s=e.currentTimeline.currentTime,r=this._visitSubInstructions(n,i,i.options);s!=r&&e.transformIntoNewTimeline(r)}e.previousNode=t}visitAnimateRef(t,e){const n=e.createSubContext(t.options);n.transformIntoNewTimeline(),this.visitReference(t.animation,n),e.transformIntoNewTimeline(n.currentTimeline.currentTime),e.previousNode=t}_visitSubInstructions(t,e,n){let i=e.currentTimeline.currentTime;const s=null!=n.duration?Ad(n.duration):null,r=null!=n.delay?Ad(n.delay):null;return 0!==s&&t.forEach(t=>{const n=e.appendInstructionToTimeline(t,s,r);i=Math.max(i,n.duration+n.delay)}),i}visitReference(t,e){e.updateOptions(t.options,!0),Zd(this,t.animation,e),e.previousNode=t}visitSequence(t,e){const n=e.subContextCount;let i=e;const s=t.options;if(s&&(s.params||s.delay)&&(i=e.createSubContext(s),i.transformIntoNewTimeline(),null!=s.delay)){6==i.previousNode.type&&(i.currentTimeline.snapshotCurrentStyles(),i.previousNode=pp);const t=Ad(s.delay);i.delayNextStep(t)}t.steps.length&&(t.steps.forEach(t=>Zd(this,t,i)),i.currentTimeline.applyStylesToKeyframe(),i.subContextCount>n&&i.transformIntoNewTimeline()),e.previousNode=t}visitGroup(t,e){const n=[];let i=e.currentTimeline.currentTime;const s=t.options&&t.options.delay?Ad(t.options.delay):0;t.steps.forEach(r=>{const o=e.createSubContext(t.options);s&&o.delayNextStep(s),Zd(this,r,o),i=Math.max(i,o.currentTimeline.currentTime),n.push(o.currentTimeline)}),n.forEach(t=>e.currentTimeline.mergeTimelineCollectedStyles(t)),e.transformIntoNewTimeline(i),e.previousNode=t}_visitTiming(t,e){if(t.dynamic){const n=t.strValue;return Od(e.params?zd(n,e.params,e.errors):n,e.errors)}return{duration:t.duration,delay:t.delay,easing:t.easing}}visitAnimate(t,e){const n=e.currentAnimateTimings=this._visitTiming(t.timings,e),i=e.currentTimeline;n.delay&&(e.incrementTime(n.delay),i.snapshotCurrentStyles());const s=t.style;5==s.type?this.visitKeyframes(s,e):(e.incrementTime(n.duration),this.visitStyle(s,e),i.applyStylesToKeyframe()),e.currentAnimateTimings=null,e.previousNode=t}visitStyle(t,e){const n=e.currentTimeline,i=e.currentAnimateTimings;!i&&n.getCurrentStyleProperties().length&&n.forwardFrame();const s=i&&i.easing||t.easing;t.isEmptyStep?n.applyEmptyStep(s):n.setStyles(t.styles,s,e.errors,e.options),e.previousNode=t}visitKeyframes(t,e){const n=e.currentAnimateTimings,i=e.currentTimeline.duration,s=n.duration,r=e.createSubContext().currentTimeline;r.easing=n.easing,t.styles.forEach(t=>{r.forwardTime((t.offset||0)*s),r.setStyles(t.styles,t.easing,e.errors,e.options),r.applyStylesToKeyframe()}),e.currentTimeline.mergeTimelineCollectedStyles(r),e.transformIntoNewTimeline(i+s),e.previousNode=t}visitQuery(t,e){const n=e.currentTimeline.currentTime,i=t.options||{},s=i.delay?Ad(i.delay):0;s&&(6===e.previousNode.type||0==n&&e.currentTimeline.getCurrentStyleProperties().length)&&(e.currentTimeline.snapshotCurrentStyles(),e.previousNode=pp);let r=n;const o=e.invokeQuery(t.selector,t.originalSelector,t.limit,t.includeSelf,!!i.optional,e.errors);e.currentQueryTotal=o.length;let a=null;o.forEach((n,i)=>{e.currentQueryIndex=i;const o=e.createSubContext(t.options,n);s&&o.delayNextStep(s),n===e.element&&(a=o.currentTimeline),Zd(this,t.animation,o),o.currentTimeline.applyStylesToKeyframe(),r=Math.max(r,o.currentTimeline.currentTime)}),e.currentQueryIndex=0,e.currentQueryTotal=0,e.transformIntoNewTimeline(r),a&&(e.currentTimeline.mergeTimelineCollectedStyles(a),e.currentTimeline.snapshotCurrentStyles()),e.previousNode=t}visitStagger(t,e){const n=e.parentContext,i=e.currentTimeline,s=t.timings,r=Math.abs(s.duration),o=r*(e.currentQueryTotal-1);let a=r*e.currentQueryIndex;switch(s.duration<0?"reverse":s.easing){case"reverse":a=o-a;break;case"full":a=n.currentStaggerTime}const l=e.currentTimeline;a&&l.delayNextStep(a);const c=l.currentTime;Zd(this,t.animation,e),e.previousNode=t,n.currentStaggerTime=i.currentTime-c+(i.startTime-n.currentTimeline.startTime)}}const pp={};class fp{constructor(t,e,n,i,s,r,o,a){this._driver=t,this.element=e,this.subInstructions=n,this._enterClassName=i,this._leaveClassName=s,this.errors=r,this.timelines=o,this.parentContext=null,this.currentAnimateTimings=null,this.previousNode=pp,this.subContextCount=0,this.options={},this.currentQueryIndex=0,this.currentQueryTotal=0,this.currentStaggerTime=0,this.currentTimeline=a||new mp(this._driver,e,0),o.push(this.currentTimeline)}get params(){return this.options.params}updateOptions(t,e){if(!t)return;const n=t;let i=this.options;null!=n.duration&&(i.duration=Ad(n.duration)),null!=n.delay&&(i.delay=Ad(n.delay));const s=n.params;if(s){let t=i.params;t||(t=this.options.params={}),Object.keys(s).forEach(n=>{e&&t.hasOwnProperty(n)||(t[n]=zd(s[n],t,this.errors))})}}_copyOptions(){const t={};if(this.options){const e=this.options.params;if(e){const n=t.params={};Object.keys(e).forEach(t=>{n[t]=e[t]})}}return t}createSubContext(t=null,e,n){const i=e||this.element,s=new fp(this._driver,i,this.subInstructions,this._enterClassName,this._leaveClassName,this.errors,this.timelines,this.currentTimeline.fork(i,n||0));return s.previousNode=this.previousNode,s.currentAnimateTimings=this.currentAnimateTimings,s.options=this._copyOptions(),s.updateOptions(t),s.currentQueryIndex=this.currentQueryIndex,s.currentQueryTotal=this.currentQueryTotal,s.parentContext=this,this.subContextCount++,s}transformIntoNewTimeline(t){return this.previousNode=pp,this.currentTimeline=this.currentTimeline.fork(this.element,t),this.timelines.push(this.currentTimeline),this.currentTimeline}appendInstructionToTimeline(t,e,n){const i={duration:null!=e?e:t.duration,delay:this.currentTimeline.currentTime+(null!=n?n:0)+t.delay,easing:""},s=new gp(this._driver,t.element,t.keyframes,t.preStyleProps,t.postStyleProps,i,t.stretchStartingKeyframe);return this.timelines.push(s),i}incrementTime(t){this.currentTimeline.forwardTime(this.currentTimeline.duration+t)}delayNextStep(t){t>0&&this.currentTimeline.delayNextStep(t)}invokeQuery(t,e,n,i,s,r){let o=[];if(i&&o.push(this.element),t.length>0){t=(t=t.replace(cp,"."+this._enterClassName)).replace(hp,"."+this._leaveClassName);let e=this._driver.query(this.element,t,1!=n);0!==n&&(e=n<0?e.slice(e.length+n,e.length):e.slice(0,n)),o.push(...e)}return s||0!=o.length||r.push(`\`query("${e}")\` returned zero elements. (Use \`query("${e}", { optional: true })\` if you wish to allow this.)`),o}}class mp{constructor(t,e,n,i){this._driver=t,this.element=e,this.startTime=n,this._elementTimelineStylesLookup=i,this.duration=0,this._previousKeyframe={},this._currentKeyframe={},this._keyframes=new Map,this._styleSummary={},this._pendingStyles={},this._backFill={},this._currentEmptyStepKeyframe=null,this._elementTimelineStylesLookup||(this._elementTimelineStylesLookup=new Map),this._localTimelineStyles=Object.create(this._backFill,{}),this._globalTimelineStyles=this._elementTimelineStylesLookup.get(e),this._globalTimelineStyles||(this._globalTimelineStyles=this._localTimelineStyles,this._elementTimelineStylesLookup.set(e,this._localTimelineStyles)),this._loadKeyframe()}containsAnimation(){switch(this._keyframes.size){case 0:return!1;case 1:return this.getCurrentStyleProperties().length>0;default:return!0}}getCurrentStyleProperties(){return Object.keys(this._currentKeyframe)}get currentTime(){return this.startTime+this.duration}delayNextStep(t){const e=1==this._keyframes.size&&Object.keys(this._pendingStyles).length;this.duration||e?(this.forwardTime(this.currentTime+t),e&&this.snapshotCurrentStyles()):this.startTime+=t}fork(t,e){return this.applyStylesToKeyframe(),new mp(this._driver,t,e||this.currentTime,this._elementTimelineStylesLookup)}_loadKeyframe(){this._currentKeyframe&&(this._previousKeyframe=this._currentKeyframe),this._currentKeyframe=this._keyframes.get(this.duration),this._currentKeyframe||(this._currentKeyframe=Object.create(this._backFill,{}),this._keyframes.set(this.duration,this._currentKeyframe))}forwardFrame(){this.duration+=1,this._loadKeyframe()}forwardTime(t){this.applyStylesToKeyframe(),this.duration=t,this._loadKeyframe()}_updateStyle(t,e){this._localTimelineStyles[t]=e,this._globalTimelineStyles[t]=e,this._styleSummary[t]={time:this.currentTime,value:e}}allowOnlyTimelineStyles(){return this._currentEmptyStepKeyframe!==this._currentKeyframe}applyEmptyStep(t){t&&(this._previousKeyframe.easing=t),Object.keys(this._globalTimelineStyles).forEach(t=>{this._backFill[t]=this._globalTimelineStyles[t]||"*",this._currentKeyframe[t]="*"}),this._currentEmptyStepKeyframe=this._currentKeyframe}setStyles(t,e,n,i){e&&(this._previousKeyframe.easing=e);const s=i&&i.params||{},r=function(t,e){const n={};let i;return t.forEach(t=>{"*"===t?(i=i||Object.keys(e),i.forEach(t=>{n[t]="*"})):Nd(t,!1,n)}),n}(t,this._globalTimelineStyles);Object.keys(r).forEach(t=>{const e=zd(r[t],s,n);this._pendingStyles[t]=e,this._localTimelineStyles.hasOwnProperty(t)||(this._backFill[t]=this._globalTimelineStyles.hasOwnProperty(t)?this._globalTimelineStyles[t]:"*"),this._updateStyle(t,e)})}applyStylesToKeyframe(){const t=this._pendingStyles,e=Object.keys(t);0!=e.length&&(this._pendingStyles={},e.forEach(e=>{this._currentKeyframe[e]=t[e]}),Object.keys(this._localTimelineStyles).forEach(t=>{this._currentKeyframe.hasOwnProperty(t)||(this._currentKeyframe[t]=this._localTimelineStyles[t])}))}snapshotCurrentStyles(){Object.keys(this._localTimelineStyles).forEach(t=>{const e=this._localTimelineStyles[t];this._pendingStyles[t]=e,this._updateStyle(t,e)})}getFinalKeyframe(){return this._keyframes.get(this.duration)}get properties(){const t=[];for(let e in this._currentKeyframe)t.push(e);return t}mergeTimelineCollectedStyles(t){Object.keys(t._styleSummary).forEach(e=>{const n=this._styleSummary[e],i=t._styleSummary[e];(!n||i.time>n.time)&&this._updateStyle(e,i.value)})}buildKeyframes(){this.applyStylesToKeyframe();const t=new Set,e=new Set,n=1===this._keyframes.size&&0===this.duration;let i=[];this._keyframes.forEach((s,r)=>{const o=Nd(s,!0);Object.keys(o).forEach(n=>{const i=o[n];"!"==i?t.add(n):"*"==i&&e.add(n)}),n||(o.offset=r/this.duration),i.push(o)});const s=t.size?qd(t.values()):[],r=e.size?qd(e.values()):[];if(n){const t=i[0],e=Rd(t);t.offset=0,e.offset=1,i=[t,e]}return ap(this.element,i,s,r,this.duration,this.startTime,this.easing,!1)}}class gp extends mp{constructor(t,e,n,i,s,r,o=!1){super(t,e,r.delay),this.element=e,this.keyframes=n,this.preStyleProps=i,this.postStyleProps=s,this._stretchStartingKeyframe=o,this.timings={duration:r.duration,delay:r.delay,easing:r.easing}}containsAnimation(){return this.keyframes.length>1}buildKeyframes(){let t=this.keyframes,{delay:e,duration:n,easing:i}=this.timings;if(this._stretchStartingKeyframe&&e){const s=[],r=n+e,o=e/r,a=Nd(t[0],!1);a.offset=0,s.push(a);const l=Nd(t[0],!1);l.offset=_p(o),s.push(l);const c=t.length-1;for(let i=1;i<=c;i++){let o=Nd(t[i],!1);o.offset=_p((e+o.offset*n)/r),s.push(o)}n=r,e=0,i="",t=s}return ap(this.element,t,this.preStyleProps,this.postStyleProps,n,e,i,!0)}}function _p(t,e=3){const n=Math.pow(10,e-1);return Math.round(t*n)/n}class yp{}class bp extends yp{normalizePropertyName(t,e){return Ud(t)}normalizeStyleValue(t,e,n,i){let s="";const r=n.toString().trim();if(vp[e]&&0!==n&&"0"!==n)if("number"==typeof n)s="px";else{const e=n.match(/^[+-]?[\d\.]+([a-z]*)$/);e&&0==e[1].length&&i.push(`Please provide a CSS unit value for ${t}:${n}`)}return r+s}}const vp=(()=>function(t){const e={};return t.forEach(t=>e[t]=!0),e}("width,height,minWidth,minHeight,maxWidth,maxHeight,left,top,bottom,right,fontSize,outlineWidth,outlineOffset,paddingTop,paddingLeft,paddingBottom,paddingRight,marginTop,marginLeft,marginBottom,marginRight,borderRadius,borderWidth,borderTopWidth,borderLeftWidth,borderRightWidth,borderBottomWidth,textIndent,perspective".split(",")))();function wp(t,e,n,i,s,r,o,a,l,c,h,u,d){return{type:0,element:t,triggerName:e,isRemovalTransition:s,fromState:n,fromStyles:r,toState:i,toStyles:o,timelines:a,queriedElements:l,preStyleProps:c,postStyleProps:h,totalTime:u,errors:d}}const Cp={};class Ep{constructor(t,e,n){this._triggerName=t,this.ast=e,this._stateStyles=n}match(t,e,n,i){return function(t,e,n,i,s){return t.some(t=>t(e,n,i,s))}(this.ast.matchers,t,e,n,i)}buildStyles(t,e,n){const i=this._stateStyles["*"],s=this._stateStyles[t],r=i?i.buildStyles(e,n):{};return s?s.buildStyles(e,n):r}build(t,e,n,i,s,r,o,a,l,c){const h=[],u=this.ast.options&&this.ast.options.params||Cp,d=this.buildStyles(n,o&&o.params||Cp,h),p=a&&a.params||Cp,f=this.buildStyles(i,p,h),m=new Set,g=new Map,_=new Map,y="void"===i,b={params:Object.assign(Object.assign({},u),p)},v=c?[]:up(t,e,this.ast.animation,s,r,d,f,b,l,h);let w=0;if(v.forEach(t=>{w=Math.max(t.duration+t.delay,w)}),h.length)return wp(e,this._triggerName,n,i,y,d,f,[],[],g,_,w,h);v.forEach(t=>{const n=t.element,i=md(g,n,{});t.preStyleProps.forEach(t=>i[t]=!0);const s=md(_,n,{});t.postStyleProps.forEach(t=>s[t]=!0),n!==e&&m.add(n)});const C=qd(m.values());return wp(e,this._triggerName,n,i,y,d,f,v,C,g,_,w)}}class Sp{constructor(t,e){this.styles=t,this.defaultParams=e}buildStyles(t,e){const n={},i=Rd(this.defaultParams);return Object.keys(t).forEach(e=>{const n=t[e];null!=n&&(i[e]=n)}),this.styles.styles.forEach(t=>{if("string"!=typeof t){const s=t;Object.keys(s).forEach(t=>{let r=s[t];r.length>1&&(r=zd(r,i,e)),n[t]=r})}}),n}}class xp{constructor(t,e){this.name=t,this.ast=e,this.transitionFactories=[],this.states={},e.states.forEach(t=>{this.states[t.name]=new Sp(t.style,t.options&&t.options.params||{})}),kp(this.states,"true","1"),kp(this.states,"false","0"),e.transitions.forEach(e=>{this.transitionFactories.push(new Ep(t,e,this.states))}),this.fallbackTransition=new Ep(t,{type:1,animation:{type:2,steps:[],options:null},matchers:[(t,e)=>!0],options:null,queryCount:0,depCount:0},this.states)}get containsQueries(){return this.ast.queryCount>0}matchTransition(t,e,n,i){return this.transitionFactories.find(s=>s.match(t,e,n,i))||null}matchStyles(t,e,n){return this.fallbackTransition.buildStyles(t,e,n)}}function kp(t,e,n){t.hasOwnProperty(e)?t.hasOwnProperty(n)||(t[n]=t[e]):t.hasOwnProperty(n)&&(t[e]=t[n])}const Tp=new lp;class Ip{constructor(t,e,n){this.bodyNode=t,this._driver=e,this._normalizer=n,this._animations={},this._playersById={},this.players=[]}register(t,e){const n=[],i=ep(this._driver,e,n);if(n.length)throw new Error("Unable to build the animation due to the following errors: "+n.join("\n"));this._animations[t]=i}_buildPlayer(t,e,n){const i=t.element,s=ud(0,this._normalizer,0,t.keyframes,e,n);return this._driver.animate(i,s,t.duration,t.delay,t.easing,[],!0)}create(t,e,n={}){const i=[],s=this._animations[t];let r;const o=new Map;if(s?(r=up(this._driver,e,s,"ng-enter","ng-leave",{},{},n,Tp,i),r.forEach(t=>{const e=md(o,t.element,{});t.postStyleProps.forEach(t=>e[t]=null)})):(i.push("The requested animation doesn't exist or has already been destroyed"),r=[]),i.length)throw new Error("Unable to create the animation due to the following errors: "+i.join("\n"));o.forEach((t,e)=>{Object.keys(t).forEach(n=>{t[n]=this._driver.computeStyle(e,n,"*")})});const a=hd(r.map(t=>{const e=o.get(t.element);return this._buildPlayer(t,{},e)}));return this._playersById[t]=a,a.onDestroy(()=>this.destroy(t)),this.players.push(a),a}destroy(t){const e=this._getPlayer(t);e.destroy(),delete this._playersById[t];const n=this.players.indexOf(e);n>=0&&this.players.splice(n,1)}_getPlayer(t){const e=this._playersById[t];if(!e)throw new Error("Unable to find the timeline player referenced by "+t);return e}listen(t,e,n,i){const s=fd(e,"","","");return dd(this._getPlayer(t),n,s,i),()=>{}}command(t,e,n,i){if("register"==n)return void this.register(t,i[0]);if("create"==n)return void this.create(t,e,i[0]||{});const s=this._getPlayer(t);switch(n){case"play":s.play();break;case"pause":s.pause();break;case"reset":s.reset();break;case"restart":s.restart();break;case"finish":s.finish();break;case"init":s.init();break;case"setPosition":s.setPosition(parseFloat(i[0]));break;case"destroy":this.destroy(t)}}}const Dp=[],Ap={namespaceId:"",setForRemoval:!1,setForMove:!1,hasAnimation:!1,removedBeforeQueried:!1},Pp={namespaceId:"",setForMove:!1,setForRemoval:!1,hasAnimation:!1,removedBeforeQueried:!0};class Op{constructor(t,e=""){this.namespaceId=e;const n=t&&t.hasOwnProperty("value");if(this.value=null!=(i=n?t.value:t)?i:null,n){const e=Rd(t);delete e.value,this.options=e}else this.options={};var i;this.options.params||(this.options.params={})}get params(){return this.options.params}absorbOptions(t){const e=t.params;if(e){const t=this.options.params;Object.keys(e).forEach(n=>{null==t[n]&&(t[n]=e[n])})}}}const Rp=new Op("void");class Np{constructor(t,e,n){this.id=t,this.hostElement=e,this._engine=n,this.players=[],this._triggers={},this._queue=[],this._elementListeners=new Map,this._hostClassName="ng-tns-"+t,Hp(e,this._hostClassName)}listen(t,e,n,i){if(!this._triggers.hasOwnProperty(e))throw new Error(`Unable to listen on the animation trigger event "${n}" because the animation trigger "${e}" doesn't exist!`);if(null==n||0==n.length)throw new Error(`Unable to listen on the animation trigger "${e}" because the provided event is undefined!`);if("start"!=(s=n)&&"done"!=s)throw new Error(`The provided animation trigger event "${n}" for the animation trigger "${e}" is not supported!`);var s;const r=md(this._elementListeners,t,[]),o={name:e,phase:n,callback:i};r.push(o);const a=md(this._engine.statesByElement,t,{});return a.hasOwnProperty(e)||(Hp(t,"ng-trigger"),Hp(t,"ng-trigger-"+e),a[e]=Rp),()=>{this._engine.afterFlush(()=>{const t=r.indexOf(o);t>=0&&r.splice(t,1),this._triggers[e]||delete a[e]})}}register(t,e){return!this._triggers[t]&&(this._triggers[t]=e,!0)}_getTrigger(t){const e=this._triggers[t];if(!e)throw new Error(`The provided animation trigger "${t}" has not been registered!`);return e}trigger(t,e,n,i=!0){const s=this._getTrigger(e),r=new Vp(this.id,e,t);let o=this._engine.statesByElement.get(t);o||(Hp(t,"ng-trigger"),Hp(t,"ng-trigger-"+e),this._engine.statesByElement.set(t,o={}));let a=o[e];const l=new Op(n,this.id);if(!(n&&n.hasOwnProperty("value"))&&a&&l.absorbOptions(a.options),o[e]=l,a||(a=Rp),"void"!==l.value&&a.value===l.value){if(!function(t,e){const n=Object.keys(t),i=Object.keys(e);if(n.length!=i.length)return!1;for(let s=0;s{Ld(t,n),Md(t,i)})}return}const c=md(this._engine.playersByElement,t,[]);c.forEach(t=>{t.namespaceId==this.id&&t.triggerName==e&&t.queued&&t.destroy()});let h=s.matchTransition(a.value,l.value,t,l.params),u=!1;if(!h){if(!i)return;h=s.fallbackTransition,u=!0}return this._engine.totalQueuedPlayers++,this._queue.push({element:t,triggerName:e,transition:h,fromState:a,toState:l,player:r,isFallbackTransition:u}),u||(Hp(t,"ng-animate-queued"),r.onStart(()=>{zp(t,"ng-animate-queued")})),r.onDone(()=>{let e=this.players.indexOf(r);e>=0&&this.players.splice(e,1);const n=this._engine.playersByElement.get(t);if(n){let t=n.indexOf(r);t>=0&&n.splice(t,1)}}),this.players.push(r),c.push(r),r}deregister(t){delete this._triggers[t],this._engine.statesByElement.forEach((e,n)=>{delete e[t]}),this._elementListeners.forEach((e,n)=>{this._elementListeners.set(n,e.filter(e=>e.name!=t))})}clearElementCache(t){this._engine.statesByElement.delete(t),this._elementListeners.delete(t);const e=this._engine.playersByElement.get(t);e&&(e.forEach(t=>t.destroy()),this._engine.playersByElement.delete(t))}_signalRemovalForInnerTriggers(t,e){const n=this._engine.driver.query(t,".ng-trigger",!0);n.forEach(t=>{if(t.__ng_removed)return;const n=this._engine.fetchNamespacesByElement(t);n.size?n.forEach(n=>n.triggerLeaveAnimation(t,e,!1,!0)):this.clearElementCache(t)}),this._engine.afterFlushAnimationsDone(()=>n.forEach(t=>this.clearElementCache(t)))}triggerLeaveAnimation(t,e,n,i){const s=this._engine.statesByElement.get(t);if(s){const r=[];if(Object.keys(s).forEach(e=>{if(this._triggers[e]){const n=this.trigger(t,e,"void",i);n&&r.push(n)}}),r.length)return this._engine.markElementAsRemoved(this.id,t,!0,e),n&&hd(r).onDone(()=>this._engine.processLeaveNode(t)),!0}return!1}prepareLeaveAnimationListeners(t){const e=this._elementListeners.get(t);if(e){const n=new Set;e.forEach(e=>{const i=e.name;if(n.has(i))return;n.add(i);const s=this._triggers[i].fallbackTransition,r=this._engine.statesByElement.get(t)[i]||Rp,o=new Op("void"),a=new Vp(this.id,i,t);this._engine.totalQueuedPlayers++,this._queue.push({element:t,triggerName:i,transition:s,fromState:r,toState:o,player:a,isFallbackTransition:!0})})}}removeNode(t,e){const n=this._engine;if(t.childElementCount&&this._signalRemovalForInnerTriggers(t,e),this.triggerLeaveAnimation(t,e,!0))return;let i=!1;if(n.totalAnimations){const e=n.players.length?n.playersByQueriedElement.get(t):[];if(e&&e.length)i=!0;else{let e=t;for(;e=e.parentNode;)if(n.statesByElement.get(e)){i=!0;break}}}if(this.prepareLeaveAnimationListeners(t),i)n.markElementAsRemoved(this.id,t,!1,e);else{const i=t.__ng_removed;i&&i!==Ap||(n.afterFlush(()=>this.clearElementCache(t)),n.destroyInnerAnimations(t),n._onRemovalComplete(t,e))}}insertNode(t,e){Hp(t,this._hostClassName)}drainQueuedTransitions(t){const e=[];return this._queue.forEach(n=>{const i=n.player;if(i.destroyed)return;const s=n.element,r=this._elementListeners.get(s);r&&r.forEach(e=>{if(e.name==n.triggerName){const i=fd(s,n.triggerName,n.fromState.value,n.toState.value);i._data=t,dd(n.player,e.phase,i,e.callback)}}),i.markedForDestroy?this._engine.afterFlush(()=>{i.destroy()}):e.push(n)}),this._queue=[],e.sort((t,e)=>{const n=t.transition.ast.depCount,i=e.transition.ast.depCount;return 0==n||0==i?n-i:this._engine.driver.containsElement(t.element,e.element)?1:-1})}destroy(t){this.players.forEach(t=>t.destroy()),this._signalRemovalForInnerTriggers(this.hostElement,t)}elementContainsData(t){let e=!1;return this._elementListeners.has(t)&&(e=!0),e=!!this._queue.find(e=>e.element===t)||e,e}}class Fp{constructor(t,e,n){this.bodyNode=t,this.driver=e,this._normalizer=n,this.players=[],this.newHostElements=new Map,this.playersByElement=new Map,this.playersByQueriedElement=new Map,this.statesByElement=new Map,this.disabledNodes=new Set,this.totalAnimations=0,this.totalQueuedPlayers=0,this._namespaceLookup={},this._namespaceList=[],this._flushFns=[],this._whenQuietFns=[],this.namespacesByHostElement=new Map,this.collectedEnterElements=[],this.collectedLeaveElements=[],this.onRemovalComplete=(t,e)=>{}}_onRemovalComplete(t,e){this.onRemovalComplete(t,e)}get queuedPlayers(){const t=[];return this._namespaceList.forEach(e=>{e.players.forEach(e=>{e.queued&&t.push(e)})}),t}createNamespace(t,e){const n=new Np(t,e,this);return e.parentNode?this._balanceNamespaceList(n,e):(this.newHostElements.set(e,n),this.collectEnterElement(e)),this._namespaceLookup[t]=n}_balanceNamespaceList(t,e){const n=this._namespaceList.length-1;if(n>=0){let i=!1;for(let s=n;s>=0;s--)if(this.driver.containsElement(this._namespaceList[s].hostElement,e)){this._namespaceList.splice(s+1,0,t),i=!0;break}i||this._namespaceList.splice(0,0,t)}else this._namespaceList.push(t);return this.namespacesByHostElement.set(e,t),t}register(t,e){let n=this._namespaceLookup[t];return n||(n=this.createNamespace(t,e)),n}registerTrigger(t,e,n){let i=this._namespaceLookup[t];i&&i.register(e,n)&&this.totalAnimations++}destroy(t,e){if(!t)return;const n=this._fetchNamespace(t);this.afterFlush(()=>{this.namespacesByHostElement.delete(n.hostElement),delete this._namespaceLookup[t];const e=this._namespaceList.indexOf(n);e>=0&&this._namespaceList.splice(e,1)}),this.afterFlushAnimationsDone(()=>n.destroy(e))}_fetchNamespace(t){return this._namespaceLookup[t]}fetchNamespacesByElement(t){const e=new Set,n=this.statesByElement.get(t);if(n){const t=Object.keys(n);for(let i=0;i=0&&this.collectedLeaveElements.splice(t,1)}if(t){const i=this._fetchNamespace(t);i&&i.insertNode(e,n)}i&&this.collectEnterElement(e)}collectEnterElement(t){this.collectedEnterElements.push(t)}markElementAsDisabled(t,e){e?this.disabledNodes.has(t)||(this.disabledNodes.add(t),Hp(t,"ng-animate-disabled")):this.disabledNodes.has(t)&&(this.disabledNodes.delete(t),zp(t,"ng-animate-disabled"))}removeNode(t,e,n,i){if(Mp(e)){const s=t?this._fetchNamespace(t):null;if(s?s.removeNode(e,i):this.markElementAsRemoved(t,e,!1,i),n){const n=this.namespacesByHostElement.get(e);n&&n.id!==t&&n.removeNode(e,i)}}else this._onRemovalComplete(e,i)}markElementAsRemoved(t,e,n,i){this.collectedLeaveElements.push(e),e.__ng_removed={namespaceId:t,setForRemoval:i,hasAnimation:n,removedBeforeQueried:!1}}listen(t,e,n,i,s){return Mp(e)?this._fetchNamespace(t).listen(e,n,i,s):()=>{}}_buildInstruction(t,e,n,i,s){return t.transition.build(this.driver,t.element,t.fromState.value,t.toState.value,n,i,t.fromState.options,t.toState.options,e,s)}destroyInnerAnimations(t){let e=this.driver.query(t,".ng-trigger",!0);e.forEach(t=>this.destroyActiveAnimationsForElement(t)),0!=this.playersByQueriedElement.size&&(e=this.driver.query(t,".ng-animating",!0),e.forEach(t=>this.finishActiveQueriedAnimationOnElement(t)))}destroyActiveAnimationsForElement(t){const e=this.playersByElement.get(t);e&&e.forEach(t=>{t.queued?t.markedForDestroy=!0:t.destroy()})}finishActiveQueriedAnimationOnElement(t){const e=this.playersByQueriedElement.get(t);e&&e.forEach(t=>t.finish())}whenRenderingDone(){return new Promise(t=>{if(this.players.length)return hd(this.players).onDone(()=>t());t()})}processLeaveNode(t){const e=t.__ng_removed;if(e&&e.setForRemoval){if(t.__ng_removed=Ap,e.namespaceId){this.destroyInnerAnimations(t);const n=this._fetchNamespace(e.namespaceId);n&&n.clearElementCache(t)}this._onRemovalComplete(t,e.setForRemoval)}this.driver.matchesElement(t,".ng-animate-disabled")&&this.markElementAsDisabled(t,!1),this.driver.query(t,".ng-animate-disabled",!0).forEach(t=>{this.markElementAsDisabled(t,!1)})}flush(t=-1){let e=[];if(this.newHostElements.size&&(this.newHostElements.forEach((t,e)=>this._balanceNamespaceList(t,e)),this.newHostElements.clear()),this.totalAnimations&&this.collectedEnterElements.length)for(let n=0;nt()),this._flushFns=[],this._whenQuietFns.length){const t=this._whenQuietFns;this._whenQuietFns=[],e.length?hd(e).onDone(()=>{t.forEach(t=>t())}):t.forEach(t=>t())}}reportError(t){throw new Error("Unable to process animations due to the following failed trigger transitions\n "+t.join("\n"))}_flushAnimations(t,e){const n=new lp,i=[],s=new Map,r=[],o=new Map,a=new Map,l=new Map,c=new Set;this.disabledNodes.forEach(t=>{c.add(t);const e=this.driver.query(t,".ng-animate-queued",!0);for(let n=0;n{const n="ng-enter"+f++;p.set(e,n),t.forEach(t=>Hp(t,n))});const m=[],g=new Set,_=new Set;for(let A=0;Ag.add(t)):_.add(t))}const y=new Map,b=Bp(u,Array.from(g));b.forEach((t,e)=>{const n="ng-leave"+f++;y.set(e,n),t.forEach(t=>Hp(t,n))}),t.push(()=>{d.forEach((t,e)=>{const n=p.get(e);t.forEach(t=>zp(t,n))}),b.forEach((t,e)=>{const n=y.get(e);t.forEach(t=>zp(t,n))}),m.forEach(t=>{this.processLeaveNode(t)})});const v=[],w=[];for(let A=this._namespaceList.length-1;A>=0;A--)this._namespaceList[A].drainQueuedTransitions(e).forEach(t=>{const e=t.player,s=t.element;if(v.push(e),this.collectedEnterElements.length){const t=s.__ng_removed;if(t&&t.setForMove)return void e.destroy()}const c=!h||!this.driver.containsElement(h,s),u=y.get(s),d=p.get(s),f=this._buildInstruction(t,n,d,u,c);if(f.errors&&f.errors.length)w.push(f);else{if(c)return e.onStart(()=>Ld(s,f.fromStyles)),e.onDestroy(()=>Md(s,f.toStyles)),void i.push(e);if(t.isFallbackTransition)return e.onStart(()=>Ld(s,f.fromStyles)),e.onDestroy(()=>Md(s,f.toStyles)),void i.push(e);f.timelines.forEach(t=>t.stretchStartingKeyframe=!0),n.append(s,f.timelines),r.push({instruction:f,player:e,element:s}),f.queriedElements.forEach(t=>md(o,t,[]).push(e)),f.preStyleProps.forEach((t,e)=>{const n=Object.keys(t);if(n.length){let t=a.get(e);t||a.set(e,t=new Set),n.forEach(e=>t.add(e))}}),f.postStyleProps.forEach((t,e)=>{const n=Object.keys(t);let i=l.get(e);i||l.set(e,i=new Set),n.forEach(t=>i.add(t))})}});if(w.length){const t=[];w.forEach(e=>{t.push(`@${e.triggerName} has failed due to:\n`),e.errors.forEach(e=>t.push(`- ${e}\n`))}),v.forEach(t=>t.destroy()),this.reportError(t)}const C=new Map,E=new Map;r.forEach(t=>{const e=t.element;n.has(e)&&(E.set(e,e),this._beforeAnimationBuild(t.player.namespaceId,t.instruction,C))}),i.forEach(t=>{const e=t.element;this._getPreviousPlayers(e,!1,t.namespaceId,t.triggerName,null).forEach(t=>{md(C,e,[]).push(t),t.destroy()})});const S=m.filter(t=>$p(t,a,l)),x=new Map;jp(x,this.driver,_,l,"*").forEach(t=>{$p(t,a,l)&&S.push(t)});const k=new Map;d.forEach((t,e)=>{jp(k,this.driver,new Set(t),a,"!")}),S.forEach(t=>{const e=x.get(t),n=k.get(t);x.set(t,Object.assign(Object.assign({},e),n))});const T=[],I=[],D={};r.forEach(t=>{const{element:e,player:r,instruction:o}=t;if(n.has(e)){if(c.has(e))return r.onDestroy(()=>Md(e,o.toStyles)),r.disabled=!0,r.overrideTotalTime(o.totalTime),void i.push(r);let t=D;if(E.size>1){let n=e;const i=[];for(;n=n.parentNode;){const e=E.get(n);if(e){t=e;break}i.push(n)}i.forEach(e=>E.set(e,t))}const n=this._buildAnimation(r.namespaceId,o,C,s,k,x);if(r.setRealPlayer(n),t===D)T.push(r);else{const e=this.playersByElement.get(t);e&&e.length&&(r.parentPlayer=hd(e)),i.push(r)}}else Ld(e,o.fromStyles),r.onDestroy(()=>Md(e,o.toStyles)),I.push(r),c.has(e)&&i.push(r)}),I.forEach(t=>{const e=s.get(t.element);if(e&&e.length){const n=hd(e);t.setRealPlayer(n)}}),i.forEach(t=>{t.parentPlayer?t.syncPlayerEvents(t.parentPlayer):t.destroy()});for(let A=0;A!t.destroyed);i.length?qp(this,t,i):this.processLeaveNode(t)}return m.length=0,T.forEach(t=>{this.players.push(t),t.onDone(()=>{t.destroy();const e=this.players.indexOf(t);this.players.splice(e,1)}),t.play()}),T}elementContainsData(t,e){let n=!1;const i=e.__ng_removed;return i&&i.setForRemoval&&(n=!0),this.playersByElement.has(e)&&(n=!0),this.playersByQueriedElement.has(e)&&(n=!0),this.statesByElement.has(e)&&(n=!0),this._fetchNamespace(t).elementContainsData(e)||n}afterFlush(t){this._flushFns.push(t)}afterFlushAnimationsDone(t){this._whenQuietFns.push(t)}_getPreviousPlayers(t,e,n,i,s){let r=[];if(e){const e=this.playersByQueriedElement.get(t);e&&(r=e)}else{const e=this.playersByElement.get(t);if(e){const t=!s||"void"==s;e.forEach(e=>{e.queued||(t||e.triggerName==i)&&r.push(e)})}}return(n||i)&&(r=r.filter(t=>!(n&&n!=t.namespaceId||i&&i!=t.triggerName))),r}_beforeAnimationBuild(t,e,n){const i=e.element,s=e.isRemovalTransition?void 0:t,r=e.isRemovalTransition?void 0:e.triggerName;for(const o of e.timelines){const t=o.element,a=t!==i,l=md(n,t,[]);this._getPreviousPlayers(t,a,s,r,e.toState).forEach(t=>{const e=t.getRealPlayer();e.beforeDestroy&&e.beforeDestroy(),t.destroy(),l.push(t)})}Ld(i,e.fromStyles)}_buildAnimation(t,e,n,i,s,r){const o=e.triggerName,a=e.element,l=[],c=new Set,h=new Set,u=e.timelines.map(e=>{const u=e.element;c.add(u);const d=u.__ng_removed;if(d&&d.removedBeforeQueried)return new ad(e.duration,e.delay);const p=u!==a,f=function(t){const e=[];return function t(e,n){for(let i=0;it.getRealPlayer())).filter(t=>!!t.element&&t.element===u),m=s.get(u),g=r.get(u),_=ud(0,this._normalizer,0,e.keyframes,m,g),y=this._buildPlayer(e,_,f);if(e.subTimeline&&i&&h.add(u),p){const e=new Vp(t,o,u);e.setRealPlayer(y),l.push(e)}return y});l.forEach(t=>{md(this.playersByQueriedElement,t.element,[]).push(t),t.onDone(()=>function(t,e,n){let i;if(t instanceof Map){if(i=t.get(e),i){if(i.length){const t=i.indexOf(n);i.splice(t,1)}0==i.length&&t.delete(e)}}else if(i=t[e],i){if(i.length){const t=i.indexOf(n);i.splice(t,1)}0==i.length&&delete t[e]}return i}(this.playersByQueriedElement,t.element,t))}),c.forEach(t=>Hp(t,"ng-animating"));const d=hd(u);return d.onDestroy(()=>{c.forEach(t=>zp(t,"ng-animating")),Md(a,e.toStyles)}),h.forEach(t=>{md(i,t,[]).push(d)}),d}_buildPlayer(t,e,n){return e.length>0?this.driver.animate(t.element,e,t.duration,t.delay,t.easing,n):new ad(t.duration,t.delay)}}class Vp{constructor(t,e,n){this.namespaceId=t,this.triggerName=e,this.element=n,this._player=new ad,this._containsRealPlayer=!1,this._queuedCallbacks={},this.destroyed=!1,this.markedForDestroy=!1,this.disabled=!1,this.queued=!0,this.totalTime=0}setRealPlayer(t){this._containsRealPlayer||(this._player=t,Object.keys(this._queuedCallbacks).forEach(e=>{this._queuedCallbacks[e].forEach(n=>dd(t,e,void 0,n))}),this._queuedCallbacks={},this._containsRealPlayer=!0,this.overrideTotalTime(t.totalTime),this.queued=!1)}getRealPlayer(){return this._player}overrideTotalTime(t){this.totalTime=t}syncPlayerEvents(t){const e=this._player;e.triggerCallback&&t.onStart(()=>e.triggerCallback("start")),t.onDone(()=>this.finish()),t.onDestroy(()=>this.destroy())}_queueEvent(t,e){md(this._queuedCallbacks,t,[]).push(e)}onDone(t){this.queued&&this._queueEvent("done",t),this._player.onDone(t)}onStart(t){this.queued&&this._queueEvent("start",t),this._player.onStart(t)}onDestroy(t){this.queued&&this._queueEvent("destroy",t),this._player.onDestroy(t)}init(){this._player.init()}hasStarted(){return!this.queued&&this._player.hasStarted()}play(){!this.queued&&this._player.play()}pause(){!this.queued&&this._player.pause()}restart(){!this.queued&&this._player.restart()}finish(){this._player.finish()}destroy(){this.destroyed=!0,this._player.destroy()}reset(){!this.queued&&this._player.reset()}setPosition(t){this.queued||this._player.setPosition(t)}getPosition(){return this.queued?0:this._player.getPosition()}triggerCallback(t){const e=this._player;e.triggerCallback&&e.triggerCallback(t)}}function Mp(t){return t&&1===t.nodeType}function Lp(t,e){const n=t.style.display;return t.style.display=null!=e?e:"none",n}function jp(t,e,n,i,s){const r=[];n.forEach(t=>r.push(Lp(t)));const o=[];i.forEach((n,i)=>{const r={};n.forEach(t=>{const n=r[t]=e.computeStyle(i,t,s);n&&0!=n.length||(i.__ng_removed=Pp,o.push(i))}),t.set(i,r)});let a=0;return n.forEach(t=>Lp(t,r[a++])),o}function Bp(t,e){const n=new Map;if(t.forEach(t=>n.set(t,[])),0==e.length)return n;const i=new Set(e),s=new Map;return e.forEach(t=>{const e=function t(e){if(!e)return 1;let r=s.get(e);if(r)return r;const o=e.parentNode;return r=n.has(o)?o:i.has(o)?1:t(o),s.set(e,r),r}(t);1!==e&&n.get(e).push(t)}),n}function Hp(t,e){if(t.classList)t.classList.add(e);else{let n=t.$$classes;n||(n=t.$$classes={}),n[e]=!0}}function zp(t,e){if(t.classList)t.classList.remove(e);else{let n=t.$$classes;n&&delete n[e]}}function qp(t,e,n){hd(n).onDone(()=>t.processLeaveNode(e))}function $p(t,e,n){const i=n.get(t);if(!i)return!1;let s=e.get(t);return s?i.forEach(t=>s.add(t)):e.set(t,i),n.delete(t),!0}class Up{constructor(t,e,n){this.bodyNode=t,this._driver=e,this._triggerCache={},this.onRemovalComplete=(t,e)=>{},this._transitionEngine=new Fp(t,e,n),this._timelineEngine=new Ip(t,e,n),this._transitionEngine.onRemovalComplete=(t,e)=>this.onRemovalComplete(t,e)}registerTrigger(t,e,n,i,s){const r=t+"-"+i;let o=this._triggerCache[r];if(!o){const t=[],e=ep(this._driver,s,t);if(t.length)throw new Error(`The animation trigger "${i}" has failed to build due to the following errors:\n - ${t.join("\n - ")}`);o=function(t,e){return new xp(t,e)}(i,e),this._triggerCache[r]=o}this._transitionEngine.registerTrigger(e,i,o)}register(t,e){this._transitionEngine.register(t,e)}destroy(t,e){this._transitionEngine.destroy(t,e)}onInsert(t,e,n,i){this._transitionEngine.insertNode(t,e,n,i)}onRemove(t,e,n,i){this._transitionEngine.removeNode(t,e,i||!1,n)}disableAnimations(t,e){this._transitionEngine.markElementAsDisabled(t,e)}process(t,e,n,i){if("@"==n.charAt(0)){const[t,s]=gd(n);this._timelineEngine.command(t,e,s,i)}else this._transitionEngine.trigger(t,e,n,i)}listen(t,e,n,i,s){if("@"==n.charAt(0)){const[t,i]=gd(n);return this._timelineEngine.listen(t,e,i,s)}return this._transitionEngine.listen(t,e,n,i,s)}flush(t=-1){this._transitionEngine.flush(t)}get players(){return this._transitionEngine.players.concat(this._timelineEngine.players)}whenRenderingDone(){return this._transitionEngine.whenRenderingDone()}}function Gp(t,e){let n=null,i=null;return Array.isArray(e)&&e.length?(n=Zp(e[0]),e.length>1&&(i=Zp(e[e.length-1]))):e&&(n=Zp(e)),n||i?new Wp(t,n,i):null}let Wp=(()=>{class t{constructor(e,n,i){this._element=e,this._startStyles=n,this._endStyles=i,this._state=0;let s=t.initialStylesByElement.get(e);s||t.initialStylesByElement.set(e,s={}),this._initialStyles=s}start(){this._state<1&&(this._startStyles&&Md(this._element,this._startStyles,this._initialStyles),this._state=1)}finish(){this.start(),this._state<2&&(Md(this._element,this._initialStyles),this._endStyles&&(Md(this._element,this._endStyles),this._endStyles=null),this._state=1)}destroy(){this.finish(),this._state<3&&(t.initialStylesByElement.delete(this._element),this._startStyles&&(Ld(this._element,this._startStyles),this._endStyles=null),this._endStyles&&(Ld(this._element,this._endStyles),this._endStyles=null),Md(this._element,this._initialStyles),this._state=3)}}return t.initialStylesByElement=new WeakMap,t})();function Zp(t){let e=null;const n=Object.keys(t);for(let i=0;ithis._handleCallback(t)}apply(){!function(t,e){const n=nf(t,"").trim();n.length&&(function(t,e){let n=0;for(let i=0;i=this._delay&&n>=this._duration&&this.finish()}finish(){this._finished||(this._finished=!0,this._onDoneFn(),tf(this._element,this._eventFn,!0))}destroy(){this._destroyed||(this._destroyed=!0,this.finish(),function(t,e){const n=nf(t,"").split(","),i=Xp(n,e);i>=0&&(n.splice(i,1),ef(t,"",n.join(",")))}(this._element,this._name))}}function Yp(t,e,n){ef(t,"PlayState",n,Jp(t,e))}function Jp(t,e){const n=nf(t,"");return n.indexOf(",")>0?Xp(n.split(","),e):Xp([n],e)}function Xp(t,e){for(let n=0;n=0)return n;return-1}function tf(t,e,n){n?t.removeEventListener("animationend",e):t.addEventListener("animationend",e)}function ef(t,e,n,i){const s="animation"+e;if(null!=i){const e=t.style[s];if(e.length){const t=e.split(",");t[i]=n,n=t.join(",")}}t.style[s]=n}function nf(t,e){return t.style["animation"+e]}class sf{constructor(t,e,n,i,s,r,o,a){this.element=t,this.keyframes=e,this.animationName=n,this._duration=i,this._delay=s,this._finalStyles=o,this._specialStyles=a,this._onDoneFns=[],this._onStartFns=[],this._onDestroyFns=[],this._started=!1,this.currentSnapshot={},this._state=0,this.easing=r||"linear",this.totalTime=i+s,this._buildStyler()}onStart(t){this._onStartFns.push(t)}onDone(t){this._onDoneFns.push(t)}onDestroy(t){this._onDestroyFns.push(t)}destroy(){this.init(),this._state>=4||(this._state=4,this._styler.destroy(),this._flushStartFns(),this._flushDoneFns(),this._specialStyles&&this._specialStyles.destroy(),this._onDestroyFns.forEach(t=>t()),this._onDestroyFns=[])}_flushDoneFns(){this._onDoneFns.forEach(t=>t()),this._onDoneFns=[]}_flushStartFns(){this._onStartFns.forEach(t=>t()),this._onStartFns=[]}finish(){this.init(),this._state>=3||(this._state=3,this._styler.finish(),this._flushStartFns(),this._specialStyles&&this._specialStyles.finish(),this._flushDoneFns())}setPosition(t){this._styler.setPosition(t)}getPosition(){return this._styler.getPosition()}hasStarted(){return this._state>=2}init(){this._state>=1||(this._state=1,this._styler.apply(),this._delay&&this._styler.pause())}play(){this.init(),this.hasStarted()||(this._flushStartFns(),this._state=2,this._specialStyles&&this._specialStyles.start()),this._styler.resume()}pause(){this.init(),this._styler.pause()}restart(){this.reset(),this.play()}reset(){this._styler.destroy(),this._buildStyler(),this._styler.apply()}_buildStyler(){this._styler=new Kp(this.element,this.animationName,this._duration,this._delay,this.easing,"forwards",()=>this.finish())}triggerCallback(t){const e="start"==t?this._onStartFns:this._onDoneFns;e.forEach(t=>t()),e.length=0}beforeDestroy(){this.init();const t={};if(this.hasStarted()){const e=this._state>=3;Object.keys(this._finalStyles).forEach(n=>{"offset"!=n&&(t[n]=e?this._finalStyles[n]:Qd(this.element,n))})}this.currentSnapshot=t}}class rf extends ad{constructor(t,e){super(),this.element=t,this._startingStyles={},this.__initialized=!1,this._styles=Td(e)}init(){!this.__initialized&&this._startingStyles&&(this.__initialized=!0,Object.keys(this._styles).forEach(t=>{this._startingStyles[t]=this.element.style[t]}),super.init())}play(){this._startingStyles&&(this.init(),Object.keys(this._styles).forEach(t=>this.element.style.setProperty(t,this._styles[t])),super.play())}destroy(){this._startingStyles&&(Object.keys(this._startingStyles).forEach(t=>{const e=this._startingStyles[t];e?this.element.style.setProperty(t,e):this.element.style.removeProperty(t)}),this._startingStyles=null,super.destroy())}}class of{constructor(){this._count=0,this._head=document.querySelector("head"),this._warningIssued=!1}validateStyleProperty(t){return Ed(t)}matchesElement(t,e){return Sd(t,e)}containsElement(t,e){return xd(t,e)}query(t,e,n){return kd(t,e,n)}computeStyle(t,e,n){return window.getComputedStyle(t)[e]}buildKeyframeElement(t,e,n){n=n.map(t=>Td(t));let i=`@keyframes ${e} {\n`,s="";n.forEach(t=>{s=" ";const e=parseFloat(t.offset);i+=`${s}${100*e}% {\n`,s+=" ",Object.keys(t).forEach(e=>{const n=t[e];switch(e){case"offset":return;case"easing":return void(n&&(i+=`${s}animation-timing-function: ${n};\n`));default:return void(i+=`${s}${e}: ${n};\n`)}}),i+=s+"}\n"}),i+="}\n";const r=document.createElement("style");return r.innerHTML=i,r}animate(t,e,n,i,s,r=[],o){o&&this._notifyFaultyScrubber();const a=r.filter(t=>t instanceof sf),l={};Gd(n,i)&&a.forEach(t=>{let e=t.currentSnapshot;Object.keys(e).forEach(t=>l[t]=e[t])});const c=function(t){let e={};return t&&(Array.isArray(t)?t:[t]).forEach(t=>{Object.keys(t).forEach(n=>{"offset"!=n&&"easing"!=n&&(e[n]=t[n])})}),e}(e=Wd(t,e,l));if(0==n)return new rf(t,c);const h="gen_css_kf_"+this._count++,u=this.buildKeyframeElement(t,h,e);document.querySelector("head").appendChild(u);const d=Gp(t,e),p=new sf(t,e,h,n,i,s,c,d);return p.onDestroy(()=>{var t;(t=u).parentNode.removeChild(t)}),p}_notifyFaultyScrubber(){this._warningIssued||(console.warn("@angular/animations: please load the web-animations.js polyfill to allow programmatic access...\n"," visit http://bit.ly/IWukam to learn more about using the web-animation-js polyfill."),this._warningIssued=!0)}}class af{constructor(t,e,n,i){this.element=t,this.keyframes=e,this.options=n,this._specialStyles=i,this._onDoneFns=[],this._onStartFns=[],this._onDestroyFns=[],this._initialized=!1,this._finished=!1,this._started=!1,this._destroyed=!1,this.time=0,this.parentPlayer=null,this.currentSnapshot={},this._duration=n.duration,this._delay=n.delay||0,this.time=this._duration+this._delay}_onFinish(){this._finished||(this._finished=!0,this._onDoneFns.forEach(t=>t()),this._onDoneFns=[])}init(){this._buildPlayer(),this._preparePlayerBeforeStart()}_buildPlayer(){if(this._initialized)return;this._initialized=!0;const t=this.keyframes;this.domPlayer=this._triggerWebAnimation(this.element,t,this.options),this._finalKeyframe=t.length?t[t.length-1]:{},this.domPlayer.addEventListener("finish",()=>this._onFinish())}_preparePlayerBeforeStart(){this._delay?this._resetDomPlayerState():this.domPlayer.pause()}_triggerWebAnimation(t,e,n){return t.animate(e,n)}onStart(t){this._onStartFns.push(t)}onDone(t){this._onDoneFns.push(t)}onDestroy(t){this._onDestroyFns.push(t)}play(){this._buildPlayer(),this.hasStarted()||(this._onStartFns.forEach(t=>t()),this._onStartFns=[],this._started=!0,this._specialStyles&&this._specialStyles.start()),this.domPlayer.play()}pause(){this.init(),this.domPlayer.pause()}finish(){this.init(),this._specialStyles&&this._specialStyles.finish(),this._onFinish(),this.domPlayer.finish()}reset(){this._resetDomPlayerState(),this._destroyed=!1,this._finished=!1,this._started=!1}_resetDomPlayerState(){this.domPlayer&&this.domPlayer.cancel()}restart(){this.reset(),this.play()}hasStarted(){return this._started}destroy(){this._destroyed||(this._destroyed=!0,this._resetDomPlayerState(),this._onFinish(),this._specialStyles&&this._specialStyles.destroy(),this._onDestroyFns.forEach(t=>t()),this._onDestroyFns=[])}setPosition(t){this.domPlayer.currentTime=t*this.time}getPosition(){return this.domPlayer.currentTime/this.time}get totalTime(){return this._delay+this._duration}beforeDestroy(){const t={};this.hasStarted()&&Object.keys(this._finalKeyframe).forEach(e=>{"offset"!=e&&(t[e]=this._finished?this._finalKeyframe[e]:Qd(this.element,e))}),this.currentSnapshot=t}triggerCallback(t){const e="start"==t?this._onStartFns:this._onDoneFns;e.forEach(t=>t()),e.length=0}}class lf{constructor(){this._isNativeImpl=/\{\s*\[native\s+code\]\s*\}/.test(cf().toString()),this._cssKeyframesDriver=new of}validateStyleProperty(t){return Ed(t)}matchesElement(t,e){return Sd(t,e)}containsElement(t,e){return xd(t,e)}query(t,e,n){return kd(t,e,n)}computeStyle(t,e,n){return window.getComputedStyle(t)[e]}overrideWebAnimationsSupport(t){this._isNativeImpl=t}animate(t,e,n,i,s,r=[],o){if(!o&&!this._isNativeImpl)return this._cssKeyframesDriver.animate(t,e,n,i,s,r);const a={duration:n,delay:i,fill:0==i?"both":"forwards"};s&&(a.easing=s);const l={},c=r.filter(t=>t instanceof af);Gd(n,i)&&c.forEach(t=>{let e=t.currentSnapshot;Object.keys(e).forEach(t=>l[t]=e[t])});const h=Gp(t,e=Wd(t,e=e.map(t=>Nd(t,!1)),l));return new af(t,e,a,h)}}function cf(){return"undefined"!=typeof window&&void 0!==window.document&&Element.prototype.animate||{}}let hf=(()=>{class t extends Xu{constructor(t,e){super(),this._nextAnimationId=0,this._renderer=t.createRenderer(e.body,{id:"0",encapsulation:ae.None,styles:[],data:{animation:[]}})}build(t){const e=this._nextAnimationId.toString();this._nextAnimationId++;const n=Array.isArray(t)?nd(t):t;return pf(this._renderer,null,e,"register",[n]),new uf(e,this._renderer)}}return t.\u0275fac=function(e){return new(e||t)(Wt(oa),Wt(ac))},t.\u0275prov=ct({token:t,factory:t.\u0275fac}),t})();class uf extends class{}{constructor(t,e){super(),this._id=t,this._renderer=e}create(t,e){return new df(this._id,t,e||{},this._renderer)}}class df{constructor(t,e,n,i){this.id=t,this.element=e,this._renderer=i,this.parentPlayer=null,this._started=!1,this.totalTime=0,this._command("create",n)}_listen(t,e){return this._renderer.listen(this.element,`@@${this.id}:${t}`,e)}_command(t,...e){return pf(this._renderer,this.element,this.id,t,e)}onDone(t){this._listen("done",t)}onStart(t){this._listen("start",t)}onDestroy(t){this._listen("destroy",t)}init(){this._command("init")}hasStarted(){return this._started}play(){this._command("play"),this._started=!0}pause(){this._command("pause")}restart(){this._command("restart")}finish(){this._command("finish")}destroy(){this._command("destroy")}reset(){this._command("reset")}setPosition(t){this._command("setPosition",t)}getPosition(){return 0}}function pf(t,e,n,i,s){return t.setProperty(e,`@@${n}:${i}`,s)}let ff=(()=>{class t{constructor(t,e,n){this.delegate=t,this.engine=e,this._zone=n,this._currentId=0,this._microtaskId=1,this._animationCallbacksBuffer=[],this._rendererCache=new Map,this._cdRecurDepth=0,this.promise=Promise.resolve(0),e.onRemovalComplete=(t,e)=>{e&&e.parentNode(t)&&e.removeChild(t.parentNode,t)}}createRenderer(t,e){const n=this.delegate.createRenderer(t,e);if(!(t&&e&&e.data&&e.data.animation)){let t=this._rendererCache.get(n);return t||(t=new mf("",n,this.engine),this._rendererCache.set(n,t)),t}const i=e.id,s=e.id+"-"+this._currentId;this._currentId++,this.engine.register(s,t);const r=e=>{Array.isArray(e)?e.forEach(r):this.engine.registerTrigger(i,s,t,e.name,e)};return e.data.animation.forEach(r),new gf(this,s,n,this.engine)}begin(){this._cdRecurDepth++,this.delegate.begin&&this.delegate.begin()}_scheduleCountTask(){this.promise.then(()=>{this._microtaskId++})}scheduleListenerCallback(t,e,n){t>=0&&te(n)):(0==this._animationCallbacksBuffer.length&&Promise.resolve(null).then(()=>{this._zone.run(()=>{this._animationCallbacksBuffer.forEach(t=>{const[e,n]=t;e(n)}),this._animationCallbacksBuffer=[]})}),this._animationCallbacksBuffer.push([e,n]))}end(){this._cdRecurDepth--,0==this._cdRecurDepth&&this._zone.runOutsideAngular(()=>{this._scheduleCountTask(),this.engine.flush(this._microtaskId)}),this.delegate.end&&this.delegate.end()}whenRenderingDone(){return this.engine.whenRenderingDone()}}return t.\u0275fac=function(e){return new(e||t)(Wt(oa),Wt(Up),Wt(Vl))},t.\u0275prov=ct({token:t,factory:t.\u0275fac}),t})();class mf{constructor(t,e,n){this.namespaceId=t,this.delegate=e,this.engine=n,this.destroyNode=this.delegate.destroyNode?t=>e.destroyNode(t):null}get data(){return this.delegate.data}destroy(){this.engine.destroy(this.namespaceId,this.delegate),this.delegate.destroy()}createElement(t,e){return this.delegate.createElement(t,e)}createComment(t){return this.delegate.createComment(t)}createText(t){return this.delegate.createText(t)}appendChild(t,e){this.delegate.appendChild(t,e),this.engine.onInsert(this.namespaceId,e,t,!1)}insertBefore(t,e,n){this.delegate.insertBefore(t,e,n),this.engine.onInsert(this.namespaceId,e,t,!0)}removeChild(t,e,n){this.engine.onRemove(this.namespaceId,e,this.delegate,n)}selectRootElement(t,e){return this.delegate.selectRootElement(t,e)}parentNode(t){return this.delegate.parentNode(t)}nextSibling(t){return this.delegate.nextSibling(t)}setAttribute(t,e,n,i){this.delegate.setAttribute(t,e,n,i)}removeAttribute(t,e,n){this.delegate.removeAttribute(t,e,n)}addClass(t,e){this.delegate.addClass(t,e)}removeClass(t,e){this.delegate.removeClass(t,e)}setStyle(t,e,n,i){this.delegate.setStyle(t,e,n,i)}removeStyle(t,e,n){this.delegate.removeStyle(t,e,n)}setProperty(t,e,n){"@"==e.charAt(0)&&"@.disabled"==e?this.disableAnimations(t,!!n):this.delegate.setProperty(t,e,n)}setValue(t,e){this.delegate.setValue(t,e)}listen(t,e,n){return this.delegate.listen(t,e,n)}disableAnimations(t,e){this.engine.disableAnimations(t,e)}}class gf extends mf{constructor(t,e,n,i){super(e,n,i),this.factory=t,this.namespaceId=e}setProperty(t,e,n){"@"==e.charAt(0)?"."==e.charAt(1)&&"@.disabled"==e?this.disableAnimations(t,n=void 0===n||!!n):this.engine.process(this.namespaceId,t,e.substr(1),n):this.delegate.setProperty(t,e,n)}listen(t,e,n){if("@"==e.charAt(0)){const i=function(t){switch(t){case"body":return document.body;case"document":return document;case"window":return window;default:return t}}(t);let s=e.substr(1),r="";return"@"!=s.charAt(0)&&([s,r]=function(t){const e=t.indexOf(".");return[t.substring(0,e),t.substr(e+1)]}(s)),this.engine.listen(this.namespaceId,i,s,r,t=>{this.factory.scheduleListenerCallback(t._data||-1,n,t)})}return this.delegate.listen(t,e,n)}}let _f=(()=>{class t extends Up{constructor(t,e,n){super(t.body,e,n)}}return t.\u0275fac=function(e){return new(e||t)(Wt(ac),Wt(Dd),Wt(yp))},t.\u0275prov=ct({token:t,factory:t.\u0275fac}),t})();const yf=new Mt("AnimationModuleType"),bf=[{provide:Dd,useFactory:function(){return"function"==typeof cf()?new lf:new of}},{provide:yf,useValue:"BrowserAnimations"},{provide:Xu,useClass:hf},{provide:yp,useFactory:function(){return new bp}},{provide:Up,useClass:_f},{provide:oa,useFactory:function(t,e,n){return new ff(t,e,n)},deps:[Mc,Up,Vl]}];let vf=(()=>{class t{}return t.\u0275mod=me({type:t}),t.\u0275inj=ht({factory:function(e){return new(e||t)},providers:bf,imports:[Yc]}),t})();const wf=new ua("10.1.0"),Cf=new Mt("mat-sanity-checks",{providedIn:"root",factory:function(){return!0}});let Ef,Sf=(()=>{class t{constructor(t,e,n){this._hasDoneGlobalChecks=!1,this._document=n,t._applyBodyHighContrastModeCssClasses(),this._sanityChecks=e,this._hasDoneGlobalChecks||(this._checkDoctypeIsDefined(),this._checkThemeIsPresent(),this._checkCdkVersionMatch(),this._hasDoneGlobalChecks=!0)}_getDocument(){const t=this._document||document;return"object"==typeof t&&t?t:null}_getWindow(){const t=this._getDocument(),e=(null==t?void 0:t.defaultView)||window;return"object"==typeof e&&e?e:null}_checksAreEnabled(){return wi()&&!this._isTestEnv()}_isTestEnv(){const t=this._getWindow();return t&&(t.__karma__||t.jasmine)}_checkDoctypeIsDefined(){const t=this._checksAreEnabled()&&(!0===this._sanityChecks||this._sanityChecks.doctype),e=this._getDocument();t&&e&&!e.doctype&&console.warn("Current document does not have a doctype. This may cause some Angular Material components not to behave as expected.")}_checkThemeIsPresent(){const t=!this._checksAreEnabled()||!1===this._sanityChecks||!this._sanityChecks.theme,e=this._getDocument();if(t||!e||!e.body||"function"!=typeof getComputedStyle)return;const n=e.createElement("div");n.classList.add("mat-theme-loaded-marker"),e.body.appendChild(n);const i=getComputedStyle(n);i&&"none"!==i.display&&console.warn("Could not find Angular Material core theme. Most Material components may not work as expected. For more info refer to the theming guide: https://material.angular.io/guide/theming"),e.body.removeChild(n)}_checkCdkVersionMatch(){this._checksAreEnabled()&&(!0===this._sanityChecks||this._sanityChecks.version)&&wf.full!==Ju.full&&console.warn("The Angular Material version ("+wf.full+") does not match the Angular CDK version ("+Ju.full+").\nPlease ensure the versions of these two packages exactly match.")}}return t.\u0275mod=me({type:t}),t.\u0275inj=ht({factory:function(e){return new(e||t)(Wt(Yu),Wt(Cf,8),Wt(ac,8))},imports:[[Lh],Lh]}),t})();function xf(t,e){return class extends t{constructor(...t){super(...t),this.color=e}get color(){return this._color}set color(t){const n=t||e;n!==this._color&&(this._color&&this._elementRef.nativeElement.classList.remove("mat-"+this._color),n&&this._elementRef.nativeElement.classList.add("mat-"+n),this._color=n)}}}function kf(t){return class extends t{constructor(...t){super(...t),this.errorState=!1,this.stateChanges=new E}updateErrorState(){const t=this.errorState,e=(this.errorStateMatcher||this._defaultErrorStateMatcher).isErrorState(this.ngControl?this.ngControl.control:null,this._parentFormGroup||this._parentForm);e!==t&&(this.errorState=e,this.stateChanges.next())}}}try{Ef="undefined"!=typeof Intl}catch(P_){Ef=!1}let Tf=(()=>{class t{isErrorState(t,e){return!!(t&&t.invalid&&(t.touched||e&&e.submitted))}}return t.\u0275fac=function(e){return new(e||t)},t.\u0275prov=ct({factory:function(){return new t},token:t,providedIn:"root"}),t})(),If=(()=>{class t{}return t.\u0275mod=me({type:t}),t.\u0275inj=ht({factory:function(e){return new(e||t)},imports:[[Sf],Sf]}),t})(),Df=(()=>{class t{}return t.\u0275mod=me({type:t}),t.\u0275inj=ht({factory:function(e){return new(e||t)},imports:[[Sf,Ah],Sf]}),t})(),Af=(()=>{class t{}return t.\u0275mod=me({type:t}),t.\u0275inj=ht({factory:function(e){return new(e||t)}}),t})();const Pf=new Mt("mat-label-global-options"),Of=["underline"],Rf=["connectionContainer"],Nf=["inputContainer"],Ff=["label"];function Vf(t,e){1&t&&(mo(0),uo(1,"div",14),fo(2,"div",15),fo(3,"div",16),fo(4,"div",17),po(),uo(5,"div",18),fo(6,"div",15),fo(7,"div",16),fo(8,"div",17),po(),go())}function Mf(t,e){1&t&&(uo(0,"div",19),xo(1,1),po())}function Lf(t,e){if(1&t&&(mo(0),xo(1,2),uo(2,"span"),Vo(3),po(),go()),2&t){const t=Co(2);hs(3),Mo(t._control.placeholder)}}function jf(t,e){1&t&&xo(0,3,["*ngSwitchCase","true"])}function Bf(t,e){1&t&&(uo(0,"span",23),Vo(1," *"),po())}function Hf(t,e){if(1&t){const t=_o();uo(0,"label",20,21),bo("cdkObserveContent",(function(){return Je(t),Co().updateOutlineGap()})),ao(2,Lf,4,1,"ng-container",12),ao(3,jf,1,0,"ng-content",12),ao(4,Bf,2,0,"span",22),po()}if(2&t){const t=Co();Ao("mat-empty",t._control.empty&&!t._shouldAlwaysFloat)("mat-form-field-empty",t._control.empty&&!t._shouldAlwaysFloat)("mat-accent","accent"==t.color)("mat-warn","warn"==t.color),co("cdkObserveContentDisabled","outline"!=t.appearance)("id",t._labelId)("ngSwitch",t._hasLabel()),oo("for",t._control.id)("aria-owns",t._control.id),hs(2),co("ngSwitchCase",!1),hs(1),co("ngSwitchCase",!0),hs(1),co("ngIf",!t.hideRequiredMarker&&t._control.required&&!t._control.disabled)}}function zf(t,e){1&t&&(uo(0,"div",24),xo(1,4),po())}function qf(t,e){if(1&t&&(uo(0,"div",25,26),fo(2,"span",27),po()),2&t){const t=Co();hs(2),Ao("mat-accent","accent"==t.color)("mat-warn","warn"==t.color)}}function $f(t,e){1&t&&(uo(0,"div"),xo(1,5),po()),2&t&&co("@transitionMessages",Co()._subscriptAnimationState)}function Uf(t,e){if(1&t&&(uo(0,"div",31),Vo(1),po()),2&t){const t=Co(2);co("id",t._hintLabelId),hs(1),Mo(t.hintLabel)}}function Gf(t,e){if(1&t&&(uo(0,"div",28),ao(1,Uf,2,2,"div",29),xo(2,6),fo(3,"div",30),xo(4,7),po()),2&t){const t=Co();co("@transitionMessages",t._subscriptAnimationState),hs(1),co("ngIf",t.hintLabel)}}const Wf=["*",[["","matPrefix",""]],[["mat-placeholder"]],[["mat-label"]],[["","matSuffix",""]],[["mat-error"]],[["mat-hint",3,"align","end"]],[["mat-hint","align","end"]]],Zf=["*","[matPrefix]","mat-placeholder","mat-label","[matSuffix]","mat-error","mat-hint:not([align='end'])","mat-hint[align='end']"],Qf=new Mt("MatError"),Kf={transitionMessages:td("transitionMessages",[sd("enter",id({opacity:1,transform:"translateY(0%)"})),rd("void => enter",[id({opacity:0,transform:"translateY(-100%)"}),ed("300ms cubic-bezier(0.55, 0, 0.55, 0.2)")])])};let Yf=(()=>{class t{}return t.\u0275fac=function(e){return new(e||t)},t.\u0275dir=_e({type:t}),t})();function Jf(t){return Error(`A hint was already declared for 'align="${t}"'.`)}const Xf=new Mt("MatHint");let tm=(()=>{class t{}return t.\u0275fac=function(e){return new(e||t)},t.\u0275dir=_e({type:t,selectors:[["mat-label"]]}),t})(),em=(()=>{class t{}return t.\u0275fac=function(e){return new(e||t)},t.\u0275dir=_e({type:t,selectors:[["mat-placeholder"]]}),t})();const nm=new Mt("MatPrefix"),im=new Mt("MatSuffix");let sm=0;class rm{constructor(t){this._elementRef=t}}const om=xf(rm,"primary"),am=new Mt("MAT_FORM_FIELD_DEFAULT_OPTIONS"),lm=new Mt("MatFormField");let cm=(()=>{class t extends om{constructor(t,e,n,i,s,r,o,a){super(t),this._elementRef=t,this._changeDetectorRef=e,this._dir=i,this._defaults=s,this._platform=r,this._ngZone=o,this._outlineGapCalculationNeededImmediately=!1,this._outlineGapCalculationNeededOnStable=!1,this._destroyed=new E,this._showAlwaysAnimate=!1,this._subscriptAnimationState="",this._hintLabel="",this._hintLabelId="mat-hint-"+sm++,this._labelId="mat-form-field-label-"+sm++,this._labelOptions=n||{},this.floatLabel=this._getDefaultFloatLabelState(),this._animationsEnabled="NoopAnimations"!==a,this.appearance=s&&s.appearance?s.appearance:"legacy",this._hideRequiredMarker=!(!s||null==s.hideRequiredMarker)&&s.hideRequiredMarker}get appearance(){return this._appearance}set appearance(t){const e=this._appearance;this._appearance=t||this._defaults&&this._defaults.appearance||"legacy","outline"===this._appearance&&e!==t&&(this._outlineGapCalculationNeededOnStable=!0)}get hideRequiredMarker(){return this._hideRequiredMarker}set hideRequiredMarker(t){this._hideRequiredMarker=Jc(t)}get _shouldAlwaysFloat(){return"always"===this.floatLabel&&!this._showAlwaysAnimate}get _canLabelFloat(){return"never"!==this.floatLabel}get hintLabel(){return this._hintLabel}set hintLabel(t){this._hintLabel=t,this._processHints()}get floatLabel(){return"legacy"!==this.appearance&&"never"===this._floatLabel?"auto":this._floatLabel}set floatLabel(t){t!==this._floatLabel&&(this._floatLabel=t||this._getDefaultFloatLabelState(),this._changeDetectorRef.markForCheck())}get _control(){return this._explicitFormFieldControl||this._controlNonStatic||this._controlStatic}set _control(t){this._explicitFormFieldControl=t}get _labelChild(){return this._labelChildNonStatic||this._labelChildStatic}getConnectedOverlayOrigin(){return this._connectionContainerRef||this._elementRef}ngAfterContentInit(){this._validateControlChild();const t=this._control;t.controlType&&this._elementRef.nativeElement.classList.add("mat-form-field-type-"+t.controlType),t.stateChanges.pipe(Eh(null)).subscribe(()=>{this._validatePlaceholders(),this._syncDescribedByIds(),this._changeDetectorRef.markForCheck()}),t.ngControl&&t.ngControl.valueChanges&&t.ngControl.valueChanges.pipe(bh(this._destroyed)).subscribe(()=>this._changeDetectorRef.markForCheck()),this._ngZone.runOutsideAngular(()=>{this._ngZone.onStable.asObservable().pipe(bh(this._destroyed)).subscribe(()=>{this._outlineGapCalculationNeededOnStable&&this.updateOutlineGap()})}),U(this._prefixChildren.changes,this._suffixChildren.changes).subscribe(()=>{this._outlineGapCalculationNeededOnStable=!0,this._changeDetectorRef.markForCheck()}),this._hintChildren.changes.pipe(Eh(null)).subscribe(()=>{this._processHints(),this._changeDetectorRef.markForCheck()}),this._errorChildren.changes.pipe(Eh(null)).subscribe(()=>{this._syncDescribedByIds(),this._changeDetectorRef.markForCheck()}),this._dir&&this._dir.change.pipe(bh(this._destroyed)).subscribe(()=>{"function"==typeof requestAnimationFrame?this._ngZone.runOutsideAngular(()=>{requestAnimationFrame(()=>this.updateOutlineGap())}):this.updateOutlineGap()})}ngAfterContentChecked(){this._validateControlChild(),this._outlineGapCalculationNeededImmediately&&this.updateOutlineGap()}ngAfterViewInit(){this._subscriptAnimationState="enter",this._changeDetectorRef.detectChanges()}ngOnDestroy(){this._destroyed.next(),this._destroyed.complete()}_shouldForward(t){const e=this._control?this._control.ngControl:null;return e&&e[t]}_hasPlaceholder(){return!!(this._control&&this._control.placeholder||this._placeholderChild)}_hasLabel(){return!!this._labelChild}_shouldLabelFloat(){return this._canLabelFloat&&(this._control&&this._control.shouldLabelFloat||this._shouldAlwaysFloat)}_hideControlPlaceholder(){return"legacy"===this.appearance&&!this._hasLabel()||this._hasLabel()&&!this._shouldLabelFloat()}_hasFloatingLabel(){return this._hasLabel()||"legacy"===this.appearance&&this._hasPlaceholder()}_getDisplayedMessages(){return this._errorChildren&&this._errorChildren.length>0&&this._control.errorState?"error":"hint"}_animateAndLockLabel(){this._hasFloatingLabel()&&this._canLabelFloat&&(this._animationsEnabled&&this._label&&(this._showAlwaysAnimate=!0,nh(this._label.nativeElement,"transitionend").pipe($h(1)).subscribe(()=>{this._showAlwaysAnimate=!1})),this.floatLabel="always",this._changeDetectorRef.markForCheck())}_validatePlaceholders(){if(this._control.placeholder&&this._placeholderChild)throw Error("Placeholder attribute and child element were both specified.")}_processHints(){this._validateHints(),this._syncDescribedByIds()}_validateHints(){if(this._hintChildren){let t,e;this._hintChildren.forEach(n=>{if("start"===n.align){if(t||this.hintLabel)throw Jf("start");t=n}else if("end"===n.align){if(e)throw Jf("end");e=n}})}}_getDefaultFloatLabelState(){return this._defaults&&this._defaults.floatLabel||this._labelOptions.float||"auto"}_syncDescribedByIds(){if(this._control){let t=[];if("hint"===this._getDisplayedMessages()){const e=this._hintChildren?this._hintChildren.find(t=>"start"===t.align):null,n=this._hintChildren?this._hintChildren.find(t=>"end"===t.align):null;e?t.push(e.id):this._hintLabel&&t.push(this._hintLabelId),n&&t.push(n.id)}else this._errorChildren&&(t=this._errorChildren.map(t=>t.id));this._control.setDescribedByIds(t)}}_validateControlChild(){if(!this._control)throw Error("mat-form-field must contain a MatFormFieldControl.")}updateOutlineGap(){const t=this._label?this._label.nativeElement:null;if("outline"!==this.appearance||!t||!t.children.length||!t.textContent.trim())return;if(!this._platform.isBrowser)return;if(!this._isAttachedToDOM())return void(this._outlineGapCalculationNeededImmediately=!0);let e=0,n=0;const i=this._connectionContainerRef.nativeElement,s=i.querySelectorAll(".mat-form-field-outline-start"),r=i.querySelectorAll(".mat-form-field-outline-gap");if(this._label&&this._label.nativeElement.children.length){const s=i.getBoundingClientRect();if(0===s.width&&0===s.height)return this._outlineGapCalculationNeededOnStable=!0,void(this._outlineGapCalculationNeededImmediately=!1);const r=this._getStartEnd(s),o=t.children,a=this._getStartEnd(o[0].getBoundingClientRect());let l=0;for(let t=0;t0?.75*l+10:0}for(let o=0;o{class t{}return t.\u0275mod=me({type:t}),t.\u0275inj=ht({factory:function(e){return new(e||t)},imports:[[wc,Sf,Ku],Sf]}),t})();function um(...t){if(1===t.length){const e=t[0];if(l(e))return dm(e,null);if(c(e)&&Object.getPrototypeOf(e)===Object.prototype){const t=Object.keys(e);return dm(t.map(t=>e[t]),t)}}if("function"==typeof t[t.length-1]){const e=t.pop();return dm(t=1===t.length&&l(t[0])?t[0]:t,null).pipe(F(t=>e(...t)))}return dm(t,null)}function dm(t,e){return new y(n=>{const i=t.length;if(0===i)return void n.complete();const s=new Array(i);let r=0,o=0;for(let a=0;a{c||(c=!0,o++),s[a]=t},error:t=>n.error(t),complete:()=>{r++,r!==i&&c||(o===i&&n.next(e?e.reduce((t,e,n)=>(t[e]=s[n],t),{}):s),n.complete())}}))}})}const pm=new Mt("NgValueAccessor"),fm={provide:pm,useExisting:Ct(()=>mm),multi:!0};let mm=(()=>{class t{constructor(t,e){this._renderer=t,this._elementRef=e,this.onChange=t=>{},this.onTouched=()=>{}}writeValue(t){this._renderer.setProperty(this._elementRef.nativeElement,"checked",t)}registerOnChange(t){this.onChange=t}registerOnTouched(t){this.onTouched=t}setDisabledState(t){this._renderer.setProperty(this._elementRef.nativeElement,"disabled",t)}}return t.\u0275fac=function(e){return new(e||t)(lo(la),lo(sa))},t.\u0275dir=_e({type:t,selectors:[["input","type","checkbox","formControlName",""],["input","type","checkbox","formControl",""],["input","type","checkbox","ngModel",""]],hostBindings:function(t,e){1&t&&bo("change",(function(t){return e.onChange(t.target.checked)}))("blur",(function(){return e.onTouched()}))},features:[ta([fm])]}),t})();const gm={provide:pm,useExisting:Ct(()=>ym),multi:!0},_m=new Mt("CompositionEventMode");let ym=(()=>{class t{constructor(t,e,n){this._renderer=t,this._elementRef=e,this._compositionMode=n,this.onChange=t=>{},this.onTouched=()=>{},this._composing=!1,null==this._compositionMode&&(this._compositionMode=!function(){const t=oc()?oc().getUserAgent():"";return/android (\d+)/.test(t.toLowerCase())}())}writeValue(t){this._renderer.setProperty(this._elementRef.nativeElement,"value",null==t?"":t)}registerOnChange(t){this.onChange=t}registerOnTouched(t){this.onTouched=t}setDisabledState(t){this._renderer.setProperty(this._elementRef.nativeElement,"disabled",t)}_handleInput(t){(!this._compositionMode||this._compositionMode&&!this._composing)&&this.onChange(t)}_compositionStart(){this._composing=!0}_compositionEnd(t){this._composing=!1,this._compositionMode&&this.onChange(t)}}return t.\u0275fac=function(e){return new(e||t)(lo(la),lo(sa),lo(_m,8))},t.\u0275dir=_e({type:t,selectors:[["input","formControlName","",3,"type","checkbox"],["textarea","formControlName",""],["input","formControl","",3,"type","checkbox"],["textarea","formControl",""],["input","ngModel","",3,"type","checkbox"],["textarea","ngModel",""],["","ngDefaultControl",""]],hostBindings:function(t,e){1&t&&bo("input",(function(t){return e._handleInput(t.target.value)}))("blur",(function(){return e.onTouched()}))("compositionstart",(function(){return e._compositionStart()}))("compositionend",(function(t){return e._compositionEnd(t.target.value)}))},features:[ta([gm])]}),t})(),bm=(()=>{class t{get value(){return this.control?this.control.value:null}get valid(){return this.control?this.control.valid:null}get invalid(){return this.control?this.control.invalid:null}get pending(){return this.control?this.control.pending:null}get disabled(){return this.control?this.control.disabled:null}get enabled(){return this.control?this.control.enabled:null}get errors(){return this.control?this.control.errors:null}get pristine(){return this.control?this.control.pristine:null}get dirty(){return this.control?this.control.dirty:null}get touched(){return this.control?this.control.touched:null}get status(){return this.control?this.control.status:null}get untouched(){return this.control?this.control.untouched:null}get statusChanges(){return this.control?this.control.statusChanges:null}get valueChanges(){return this.control?this.control.valueChanges:null}get path(){return null}reset(t){this.control&&this.control.reset(t)}hasError(t,e){return!!this.control&&this.control.hasError(t,e)}getError(t,e){return this.control?this.control.getError(t,e):null}}return t.\u0275fac=function(e){return new(e||t)},t.\u0275dir=_e({type:t}),t})(),vm=(()=>{class t extends bm{get formDirective(){return null}get path(){return null}}return t.\u0275fac=function(e){return wm(e||t)},t.\u0275dir=_e({type:t,features:[zo]}),t})();const wm=ri(vm);function Cm(){throw new Error("unimplemented")}class Em extends bm{constructor(){super(...arguments),this._parent=null,this.name=null,this.valueAccessor=null,this._rawValidators=[],this._rawAsyncValidators=[]}get validator(){return Cm()}get asyncValidator(){return Cm()}}let Sm=(()=>{class t extends class{constructor(t){this._cd=t}get ngClassUntouched(){return!!this._cd.control&&this._cd.control.untouched}get ngClassTouched(){return!!this._cd.control&&this._cd.control.touched}get ngClassPristine(){return!!this._cd.control&&this._cd.control.pristine}get ngClassDirty(){return!!this._cd.control&&this._cd.control.dirty}get ngClassValid(){return!!this._cd.control&&this._cd.control.valid}get ngClassInvalid(){return!!this._cd.control&&this._cd.control.invalid}get ngClassPending(){return!!this._cd.control&&this._cd.control.pending}}{constructor(t){super(t)}}return t.\u0275fac=function(e){return new(e||t)(lo(Em,2))},t.\u0275dir=_e({type:t,selectors:[["","formControlName",""],["","ngModel",""],["","formControl",""]],hostVars:14,hostBindings:function(t,e){2&t&&Ao("ng-untouched",e.ngClassUntouched)("ng-touched",e.ngClassTouched)("ng-pristine",e.ngClassPristine)("ng-dirty",e.ngClassDirty)("ng-valid",e.ngClassValid)("ng-invalid",e.ngClassInvalid)("ng-pending",e.ngClassPending)},features:[zo]}),t})();function xm(t){return null==t||0===t.length}function km(t){return null!=t&&"number"==typeof t.length}const Tm=new Mt("NgValidators"),Im=new Mt("NgAsyncValidators"),Dm=/^(?=.{1,254}$)(?=.{1,64}@)[a-zA-Z0-9!#$%&'*+/=?^_`{|}~-]+(?:\.[a-zA-Z0-9!#$%&'*+/=?^_`{|}~-]+)*@[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?(?:\.[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?)*$/;class Am{static min(t){return e=>{if(xm(e.value)||xm(t))return null;const n=parseFloat(e.value);return!isNaN(n)&&n{if(xm(e.value)||xm(t))return null;const n=parseFloat(e.value);return!isNaN(n)&&n>t?{max:{max:t,actual:e.value}}:null}}static required(t){return xm(t.value)?{required:!0}:null}static requiredTrue(t){return!0===t.value?null:{required:!0}}static email(t){return xm(t.value)||Dm.test(t.value)?null:{email:!0}}static minLength(t){return e=>xm(e.value)||!km(e.value)?null:e.value.lengthkm(e.value)&&e.value.length>t?{maxlength:{requiredLength:t,actualLength:e.value.length}}:null}static pattern(t){if(!t)return Am.nullValidator;let e,n;return"string"==typeof t?(n="","^"!==t.charAt(0)&&(n+="^"),n+=t,"$"!==t.charAt(t.length-1)&&(n+="$"),e=new RegExp(n)):(n=t.toString(),e=t),t=>{if(xm(t.value))return null;const i=t.value;return e.test(i)?null:{pattern:{requiredPattern:n,actualValue:i}}}}static nullValidator(t){return null}static compose(t){if(!t)return null;const e=t.filter(Pm);return 0==e.length?null:function(t){return Rm(function(t,e){return e.map(e=>e(t))}(t,e))}}static composeAsync(t){if(!t)return null;const e=t.filter(Pm);return 0==e.length?null:function(t){return um(function(t,e){return e.map(e=>e(t))}(t,e).map(Om)).pipe(F(Rm))}}}function Pm(t){return null!=t}function Om(t){const e=yo(t)?j(t):t;if(!(n=e)||"function"!=typeof n.subscribe)throw new Error("Expected validator to return Promise or Observable.");var n;return e}function Rm(t){let e={};return t.forEach(t=>{e=null!=t?Object.assign(Object.assign({},e),t):e}),0===Object.keys(e).length?null:e}function Nm(t){return t.validate?e=>t.validate(e):t}function Fm(t){return t.validate?e=>t.validate(e):t}const Vm={provide:pm,useExisting:Ct(()=>Mm),multi:!0};let Mm=(()=>{class t{constructor(t,e){this._renderer=t,this._elementRef=e,this.onChange=t=>{},this.onTouched=()=>{}}writeValue(t){this._renderer.setProperty(this._elementRef.nativeElement,"value",null==t?"":t)}registerOnChange(t){this.onChange=e=>{t(""==e?null:parseFloat(e))}}registerOnTouched(t){this.onTouched=t}setDisabledState(t){this._renderer.setProperty(this._elementRef.nativeElement,"disabled",t)}}return t.\u0275fac=function(e){return new(e||t)(lo(la),lo(sa))},t.\u0275dir=_e({type:t,selectors:[["input","type","number","formControlName",""],["input","type","number","formControl",""],["input","type","number","ngModel",""]],hostBindings:function(t,e){1&t&&bo("input",(function(t){return e.onChange(t.target.value)}))("blur",(function(){return e.onTouched()}))},features:[ta([Vm])]}),t})();const Lm={provide:pm,useExisting:Ct(()=>Bm),multi:!0};let jm=(()=>{class t{constructor(){this._accessors=[]}add(t,e){this._accessors.push([t,e])}remove(t){for(let e=this._accessors.length-1;e>=0;--e)if(this._accessors[e][1]===t)return void this._accessors.splice(e,1)}select(t){this._accessors.forEach(e=>{this._isSameGroup(e,t)&&e[1]!==t&&e[1].fireUncheck(t.value)})}_isSameGroup(t,e){return!!t[0].control&&t[0]._parent===e._control._parent&&t[1].name===e.name}}return t.\u0275fac=function(e){return new(e||t)},t.\u0275prov=ct({token:t,factory:t.\u0275fac}),t})(),Bm=(()=>{class t{constructor(t,e,n,i){this._renderer=t,this._elementRef=e,this._registry=n,this._injector=i,this.onChange=()=>{},this.onTouched=()=>{}}ngOnInit(){this._control=this._injector.get(Em),this._checkName(),this._registry.add(this._control,this)}ngOnDestroy(){this._registry.remove(this)}writeValue(t){this._state=t===this.value,this._renderer.setProperty(this._elementRef.nativeElement,"checked",this._state)}registerOnChange(t){this._fn=t,this.onChange=()=>{t(this.value),this._registry.select(this)}}fireUncheck(t){this.writeValue(t)}registerOnTouched(t){this.onTouched=t}setDisabledState(t){this._renderer.setProperty(this._elementRef.nativeElement,"disabled",t)}_checkName(){this.name&&this.formControlName&&this.name!==this.formControlName&&this._throwNameError(),!this.name&&this.formControlName&&(this.name=this.formControlName)}_throwNameError(){throw new Error('\n If you define both a name and a formControlName attribute on your radio button, their values\n must match. Ex: \n ')}}return t.\u0275fac=function(e){return new(e||t)(lo(la),lo(sa),lo(jm),lo(Jr))},t.\u0275dir=_e({type:t,selectors:[["input","type","radio","formControlName",""],["input","type","radio","formControl",""],["input","type","radio","ngModel",""]],hostBindings:function(t,e){1&t&&bo("change",(function(){return e.onChange()}))("blur",(function(){return e.onTouched()}))},inputs:{name:"name",formControlName:"formControlName",value:"value"},features:[ta([Lm])]}),t})();const Hm={provide:pm,useExisting:Ct(()=>zm),multi:!0};let zm=(()=>{class t{constructor(t,e){this._renderer=t,this._elementRef=e,this.onChange=t=>{},this.onTouched=()=>{}}writeValue(t){this._renderer.setProperty(this._elementRef.nativeElement,"value",parseFloat(t))}registerOnChange(t){this.onChange=e=>{t(""==e?null:parseFloat(e))}}registerOnTouched(t){this.onTouched=t}setDisabledState(t){this._renderer.setProperty(this._elementRef.nativeElement,"disabled",t)}}return t.\u0275fac=function(e){return new(e||t)(lo(la),lo(sa))},t.\u0275dir=_e({type:t,selectors:[["input","type","range","formControlName",""],["input","type","range","formControl",""],["input","type","range","ngModel",""]],hostBindings:function(t,e){1&t&&bo("change",(function(t){return e.onChange(t.target.value)}))("input",(function(t){return e.onChange(t.target.value)}))("blur",(function(){return e.onTouched()}))},features:[ta([Hm])]}),t})();const qm='\n
\n \n
\n\n In your class:\n\n this.myGroup = new FormGroup({\n firstName: new FormControl()\n });',$m='\n
\n
\n \n
\n
\n\n In your class:\n\n this.myGroup = new FormGroup({\n person: new FormGroup({ firstName: new FormControl() })\n });',Um='\n
\n
\n \n
\n
',Gm={provide:pm,useExisting:Ct(()=>Wm),multi:!0};let Wm=(()=>{class t{constructor(t,e){this._renderer=t,this._elementRef=e,this._optionMap=new Map,this._idCounter=0,this.onChange=t=>{},this.onTouched=()=>{},this._compareWith=Object.is}set compareWith(t){if("function"!=typeof t)throw new Error("compareWith must be a function, but received "+JSON.stringify(t));this._compareWith=t}writeValue(t){this.value=t;const e=this._getOptionId(t);null==e&&this._renderer.setProperty(this._elementRef.nativeElement,"selectedIndex",-1);const n=function(t,e){return null==t?""+e:(e&&"object"==typeof e&&(e="Object"),`${t}: ${e}`.slice(0,50))}(e,t);this._renderer.setProperty(this._elementRef.nativeElement,"value",n)}registerOnChange(t){this.onChange=e=>{this.value=this._getOptionValue(e),t(this.value)}}registerOnTouched(t){this.onTouched=t}setDisabledState(t){this._renderer.setProperty(this._elementRef.nativeElement,"disabled",t)}_registerOption(){return(this._idCounter++).toString()}_getOptionId(t){for(const e of Array.from(this._optionMap.keys()))if(this._compareWith(this._optionMap.get(e),t))return e;return null}_getOptionValue(t){const e=function(t){return t.split(":")[0]}(t);return this._optionMap.has(e)?this._optionMap.get(e):t}}return t.\u0275fac=function(e){return new(e||t)(lo(la),lo(sa))},t.\u0275dir=_e({type:t,selectors:[["select","formControlName","",3,"multiple",""],["select","formControl","",3,"multiple",""],["select","ngModel","",3,"multiple",""]],hostBindings:function(t,e){1&t&&bo("change",(function(t){return e.onChange(t.target.value)}))("blur",(function(){return e.onTouched()}))},inputs:{compareWith:"compareWith"},features:[ta([Gm])]}),t})();const Zm={provide:pm,useExisting:Ct(()=>Qm),multi:!0};let Qm=(()=>{class t{constructor(t,e){this._renderer=t,this._elementRef=e,this._optionMap=new Map,this._idCounter=0,this.onChange=t=>{},this.onTouched=()=>{},this._compareWith=Object.is}set compareWith(t){if("function"!=typeof t)throw new Error("compareWith must be a function, but received "+JSON.stringify(t));this._compareWith=t}writeValue(t){let e;if(this.value=t,Array.isArray(t)){const n=t.map(t=>this._getOptionId(t));e=(t,e)=>{t._setSelected(n.indexOf(e.toString())>-1)}}else e=(t,e)=>{t._setSelected(!1)};this._optionMap.forEach(e)}registerOnChange(t){this.onChange=e=>{const n=[];if(void 0!==e.selectedOptions){const t=e.selectedOptions;for(let e=0;e{t._pendingValue=n,t._pendingChange=!0,t._pendingDirty=!0,"change"===t.updateOn&&Jm(t,e)})}(t,e),function(t,e){t.registerOnChange((t,n)=>{e.valueAccessor.writeValue(t),n&&e.viewToModelUpdate(t)})}(t,e),function(t,e){e.valueAccessor.registerOnTouched(()=>{t._pendingTouched=!0,"blur"===t.updateOn&&t._pendingChange&&Jm(t,e),"submit"!==t.updateOn&&t.markAsTouched()})}(t,e),e.valueAccessor.setDisabledState&&t.registerOnDisabledChange(t=>{e.valueAccessor.setDisabledState(t)}),e._rawValidators.forEach(e=>{e.registerOnValidatorChange&&e.registerOnValidatorChange(()=>t.updateValueAndValidity())}),e._rawAsyncValidators.forEach(e=>{e.registerOnValidatorChange&&e.registerOnValidatorChange(()=>t.updateValueAndValidity())})}function Jm(t,e){t._pendingDirty&&t.markAsDirty(),t.setValue(t._pendingValue,{emitModelToViewChange:!1}),e.viewToModelUpdate(t._pendingValue),t._pendingChange=!1}function Xm(t,e){null==t&&eg(e,"Cannot find control with"),t.validator=Am.compose([t.validator,e.validator]),t.asyncValidator=Am.composeAsync([t.asyncValidator,e.asyncValidator])}function tg(t){return eg(t,"There is no FormControl instance attached to form control element with")}function eg(t,e){let n;throw n=t.path.length>1?`path: '${t.path.join(" -> ")}'`:t.path[0]?`name: '${t.path}'`:"unspecified name attribute",new Error(`${e} ${n}`)}function ng(t){return null!=t?Am.compose(t.map(Nm)):null}function ig(t){return null!=t?Am.composeAsync(t.map(Fm)):null}const sg=[mm,zm,Mm,Wm,Qm,Bm];function rg(t,e){t._syncPendingControls(),e.forEach(t=>{const e=t.control;"submit"===e.updateOn&&e._pendingChange&&(t.viewToModelUpdate(e._pendingValue),e._pendingChange=!1)})}function og(t,e){const n=t.indexOf(e);n>-1&&t.splice(n,1)}function ag(t){const e=cg(t)?t.validators:t;return Array.isArray(e)?ng(e):e||null}function lg(t,e){const n=cg(e)?e.asyncValidators:t;return Array.isArray(n)?ig(n):n||null}function cg(t){return null!=t&&!Array.isArray(t)&&"object"==typeof t}class hg{constructor(t,e){this.validator=t,this.asyncValidator=e,this._onCollectionChange=()=>{},this.pristine=!0,this.touched=!1,this._onDisabledChange=[]}get parent(){return this._parent}get valid(){return"VALID"===this.status}get invalid(){return"INVALID"===this.status}get pending(){return"PENDING"==this.status}get disabled(){return"DISABLED"===this.status}get enabled(){return"DISABLED"!==this.status}get dirty(){return!this.pristine}get untouched(){return!this.touched}get updateOn(){return this._updateOn?this._updateOn:this.parent?this.parent.updateOn:"change"}setValidators(t){this.validator=ag(t)}setAsyncValidators(t){this.asyncValidator=lg(t)}clearValidators(){this.validator=null}clearAsyncValidators(){this.asyncValidator=null}markAsTouched(t={}){this.touched=!0,this._parent&&!t.onlySelf&&this._parent.markAsTouched(t)}markAllAsTouched(){this.markAsTouched({onlySelf:!0}),this._forEachChild(t=>t.markAllAsTouched())}markAsUntouched(t={}){this.touched=!1,this._pendingTouched=!1,this._forEachChild(t=>{t.markAsUntouched({onlySelf:!0})}),this._parent&&!t.onlySelf&&this._parent._updateTouched(t)}markAsDirty(t={}){this.pristine=!1,this._parent&&!t.onlySelf&&this._parent.markAsDirty(t)}markAsPristine(t={}){this.pristine=!0,this._pendingDirty=!1,this._forEachChild(t=>{t.markAsPristine({onlySelf:!0})}),this._parent&&!t.onlySelf&&this._parent._updatePristine(t)}markAsPending(t={}){this.status="PENDING",!1!==t.emitEvent&&this.statusChanges.emit(this.status),this._parent&&!t.onlySelf&&this._parent.markAsPending(t)}disable(t={}){const e=this._parentMarkedDirty(t.onlySelf);this.status="DISABLED",this.errors=null,this._forEachChild(e=>{e.disable(Object.assign(Object.assign({},t),{onlySelf:!0}))}),this._updateValue(),!1!==t.emitEvent&&(this.valueChanges.emit(this.value),this.statusChanges.emit(this.status)),this._updateAncestors(Object.assign(Object.assign({},t),{skipPristineCheck:e})),this._onDisabledChange.forEach(t=>t(!0))}enable(t={}){const e=this._parentMarkedDirty(t.onlySelf);this.status="VALID",this._forEachChild(e=>{e.enable(Object.assign(Object.assign({},t),{onlySelf:!0}))}),this.updateValueAndValidity({onlySelf:!0,emitEvent:t.emitEvent}),this._updateAncestors(Object.assign(Object.assign({},t),{skipPristineCheck:e})),this._onDisabledChange.forEach(t=>t(!1))}_updateAncestors(t){this._parent&&!t.onlySelf&&(this._parent.updateValueAndValidity(t),t.skipPristineCheck||this._parent._updatePristine(),this._parent._updateTouched())}setParent(t){this._parent=t}updateValueAndValidity(t={}){this._setInitialStatus(),this._updateValue(),this.enabled&&(this._cancelExistingSubscription(),this.errors=this._runValidator(),this.status=this._calculateStatus(),"VALID"!==this.status&&"PENDING"!==this.status||this._runAsyncValidator(t.emitEvent)),!1!==t.emitEvent&&(this.valueChanges.emit(this.value),this.statusChanges.emit(this.status)),this._parent&&!t.onlySelf&&this._parent.updateValueAndValidity(t)}_updateTreeValidity(t={emitEvent:!0}){this._forEachChild(e=>e._updateTreeValidity(t)),this.updateValueAndValidity({onlySelf:!0,emitEvent:t.emitEvent})}_setInitialStatus(){this.status=this._allControlsDisabled()?"DISABLED":"VALID"}_runValidator(){return this.validator?this.validator(this):null}_runAsyncValidator(t){if(this.asyncValidator){this.status="PENDING";const e=Om(this.asyncValidator(this));this._asyncValidationSubscription=e.subscribe(e=>this.setErrors(e,{emitEvent:t}))}}_cancelExistingSubscription(){this._asyncValidationSubscription&&this._asyncValidationSubscription.unsubscribe()}setErrors(t,e={}){this.errors=t,this._updateControlsErrors(!1!==e.emitEvent)}get(t){return function(t,e,n){if(null==e)return null;if(Array.isArray(e)||(e=e.split(".")),Array.isArray(e)&&0===e.length)return null;let i=t;return e.forEach(t=>{i=i instanceof dg?i.controls.hasOwnProperty(t)?i.controls[t]:null:i instanceof pg&&i.at(t)||null}),i}(this,t)}getError(t,e){const n=e?this.get(e):this;return n&&n.errors?n.errors[t]:null}hasError(t,e){return!!this.getError(t,e)}get root(){let t=this;for(;t._parent;)t=t._parent;return t}_updateControlsErrors(t){this.status=this._calculateStatus(),t&&this.statusChanges.emit(this.status),this._parent&&this._parent._updateControlsErrors(t)}_initObservables(){this.valueChanges=new Za,this.statusChanges=new Za}_calculateStatus(){return this._allControlsDisabled()?"DISABLED":this.errors?"INVALID":this._anyControlsHaveStatus("PENDING")?"PENDING":this._anyControlsHaveStatus("INVALID")?"INVALID":"VALID"}_anyControlsHaveStatus(t){return this._anyControls(e=>e.status===t)}_anyControlsDirty(){return this._anyControls(t=>t.dirty)}_anyControlsTouched(){return this._anyControls(t=>t.touched)}_updatePristine(t={}){this.pristine=!this._anyControlsDirty(),this._parent&&!t.onlySelf&&this._parent._updatePristine(t)}_updateTouched(t={}){this.touched=this._anyControlsTouched(),this._parent&&!t.onlySelf&&this._parent._updateTouched(t)}_isBoxedValue(t){return"object"==typeof t&&null!==t&&2===Object.keys(t).length&&"value"in t&&"disabled"in t}_registerOnCollectionChange(t){this._onCollectionChange=t}_setUpdateStrategy(t){cg(t)&&null!=t.updateOn&&(this._updateOn=t.updateOn)}_parentMarkedDirty(t){return!t&&this._parent&&this._parent.dirty&&!this._parent._anyControlsDirty()}}class ug extends hg{constructor(t=null,e,n){super(ag(e),lg(n,e)),this._onChange=[],this._applyFormState(t),this._setUpdateStrategy(e),this.updateValueAndValidity({onlySelf:!0,emitEvent:!1}),this._initObservables()}setValue(t,e={}){this.value=this._pendingValue=t,this._onChange.length&&!1!==e.emitModelToViewChange&&this._onChange.forEach(t=>t(this.value,!1!==e.emitViewToModelChange)),this.updateValueAndValidity(e)}patchValue(t,e={}){this.setValue(t,e)}reset(t=null,e={}){this._applyFormState(t),this.markAsPristine(e),this.markAsUntouched(e),this.setValue(this.value,e),this._pendingChange=!1}_updateValue(){}_anyControls(t){return!1}_allControlsDisabled(){return this.disabled}registerOnChange(t){this._onChange.push(t)}_clearChangeFns(){this._onChange=[],this._onDisabledChange=[],this._onCollectionChange=()=>{}}registerOnDisabledChange(t){this._onDisabledChange.push(t)}_forEachChild(t){}_syncPendingControls(){return!("submit"!==this.updateOn||(this._pendingDirty&&this.markAsDirty(),this._pendingTouched&&this.markAsTouched(),!this._pendingChange)||(this.setValue(this._pendingValue,{onlySelf:!0,emitModelToViewChange:!1}),0))}_applyFormState(t){this._isBoxedValue(t)?(this.value=this._pendingValue=t.value,t.disabled?this.disable({onlySelf:!0,emitEvent:!1}):this.enable({onlySelf:!0,emitEvent:!1})):this.value=this._pendingValue=t}}class dg extends hg{constructor(t,e,n){super(ag(e),lg(n,e)),this.controls=t,this._initObservables(),this._setUpdateStrategy(e),this._setUpControls(),this.updateValueAndValidity({onlySelf:!0,emitEvent:!1})}registerControl(t,e){return this.controls[t]?this.controls[t]:(this.controls[t]=e,e.setParent(this),e._registerOnCollectionChange(this._onCollectionChange),e)}addControl(t,e){this.registerControl(t,e),this.updateValueAndValidity(),this._onCollectionChange()}removeControl(t){this.controls[t]&&this.controls[t]._registerOnCollectionChange(()=>{}),delete this.controls[t],this.updateValueAndValidity(),this._onCollectionChange()}setControl(t,e){this.controls[t]&&this.controls[t]._registerOnCollectionChange(()=>{}),delete this.controls[t],e&&this.registerControl(t,e),this.updateValueAndValidity(),this._onCollectionChange()}contains(t){return this.controls.hasOwnProperty(t)&&this.controls[t].enabled}setValue(t,e={}){this._checkAllValuesPresent(t),Object.keys(t).forEach(n=>{this._throwIfControlMissing(n),this.controls[n].setValue(t[n],{onlySelf:!0,emitEvent:e.emitEvent})}),this.updateValueAndValidity(e)}patchValue(t,e={}){Object.keys(t).forEach(n=>{this.controls[n]&&this.controls[n].patchValue(t[n],{onlySelf:!0,emitEvent:e.emitEvent})}),this.updateValueAndValidity(e)}reset(t={},e={}){this._forEachChild((n,i)=>{n.reset(t[i],{onlySelf:!0,emitEvent:e.emitEvent})}),this._updatePristine(e),this._updateTouched(e),this.updateValueAndValidity(e)}getRawValue(){return this._reduceChildren({},(t,e,n)=>(t[n]=e instanceof ug?e.value:e.getRawValue(),t))}_syncPendingControls(){let t=this._reduceChildren(!1,(t,e)=>!!e._syncPendingControls()||t);return t&&this.updateValueAndValidity({onlySelf:!0}),t}_throwIfControlMissing(t){if(!Object.keys(this.controls).length)throw new Error("\n There are no form controls registered with this group yet. If you're using ngModel,\n you may want to check next tick (e.g. use setTimeout).\n ");if(!this.controls[t])throw new Error(`Cannot find form control with name: ${t}.`)}_forEachChild(t){Object.keys(this.controls).forEach(e=>t(this.controls[e],e))}_setUpControls(){this._forEachChild(t=>{t.setParent(this),t._registerOnCollectionChange(this._onCollectionChange)})}_updateValue(){this.value=this._reduceValue()}_anyControls(t){for(const e of Object.keys(this.controls)){const n=this.controls[e];if(this.contains(e)&&t(n))return!0}return!1}_reduceValue(){return this._reduceChildren({},(t,e,n)=>((e.enabled||this.disabled)&&(t[n]=e.value),t))}_reduceChildren(t,e){let n=t;return this._forEachChild((t,i)=>{n=e(n,t,i)}),n}_allControlsDisabled(){for(const t of Object.keys(this.controls))if(this.controls[t].enabled)return!1;return Object.keys(this.controls).length>0||this.disabled}_checkAllValuesPresent(t){this._forEachChild((e,n)=>{if(void 0===t[n])throw new Error(`Must supply a value for form control with name: '${n}'.`)})}}class pg extends hg{constructor(t,e,n){super(ag(e),lg(n,e)),this.controls=t,this._initObservables(),this._setUpdateStrategy(e),this._setUpControls(),this.updateValueAndValidity({onlySelf:!0,emitEvent:!1})}at(t){return this.controls[t]}push(t){this.controls.push(t),this._registerControl(t),this.updateValueAndValidity(),this._onCollectionChange()}insert(t,e){this.controls.splice(t,0,e),this._registerControl(e),this.updateValueAndValidity()}removeAt(t){this.controls[t]&&this.controls[t]._registerOnCollectionChange(()=>{}),this.controls.splice(t,1),this.updateValueAndValidity()}setControl(t,e){this.controls[t]&&this.controls[t]._registerOnCollectionChange(()=>{}),this.controls.splice(t,1),e&&(this.controls.splice(t,0,e),this._registerControl(e)),this.updateValueAndValidity(),this._onCollectionChange()}get length(){return this.controls.length}setValue(t,e={}){this._checkAllValuesPresent(t),t.forEach((t,n)=>{this._throwIfControlMissing(n),this.at(n).setValue(t,{onlySelf:!0,emitEvent:e.emitEvent})}),this.updateValueAndValidity(e)}patchValue(t,e={}){t.forEach((t,n)=>{this.at(n)&&this.at(n).patchValue(t,{onlySelf:!0,emitEvent:e.emitEvent})}),this.updateValueAndValidity(e)}reset(t=[],e={}){this._forEachChild((n,i)=>{n.reset(t[i],{onlySelf:!0,emitEvent:e.emitEvent})}),this._updatePristine(e),this._updateTouched(e),this.updateValueAndValidity(e)}getRawValue(){return this.controls.map(t=>t instanceof ug?t.value:t.getRawValue())}clear(){this.controls.length<1||(this._forEachChild(t=>t._registerOnCollectionChange(()=>{})),this.controls.splice(0),this.updateValueAndValidity())}_syncPendingControls(){let t=this.controls.reduce((t,e)=>!!e._syncPendingControls()||t,!1);return t&&this.updateValueAndValidity({onlySelf:!0}),t}_throwIfControlMissing(t){if(!this.controls.length)throw new Error("\n There are no form controls registered with this array yet. If you're using ngModel,\n you may want to check next tick (e.g. use setTimeout).\n ");if(!this.at(t))throw new Error("Cannot find form control at index "+t)}_forEachChild(t){this.controls.forEach((e,n)=>{t(e,n)})}_updateValue(){this.value=this.controls.filter(t=>t.enabled||this.disabled).map(t=>t.value)}_anyControls(t){return this.controls.some(e=>e.enabled&&t(e))}_setUpControls(){this._forEachChild(t=>this._registerControl(t))}_checkAllValuesPresent(t){this._forEachChild((e,n)=>{if(void 0===t[n])throw new Error(`Must supply a value for form control at index: ${n}.`)})}_allControlsDisabled(){for(const t of this.controls)if(t.enabled)return!1;return this.controls.length>0||this.disabled}_registerControl(t){t.setParent(this),t._registerOnCollectionChange(this._onCollectionChange)}}const fg={provide:vm,useExisting:Ct(()=>gg)},mg=(()=>Promise.resolve(null))();let gg=(()=>{class t extends vm{constructor(t,e){super(),this.submitted=!1,this._directives=[],this.ngSubmit=new Za,this.form=new dg({},ng(t),ig(e))}ngAfterViewInit(){this._setUpdateStrategy()}get formDirective(){return this}get control(){return this.form}get path(){return[]}get controls(){return this.form.controls}addControl(t){mg.then(()=>{const e=this._findContainer(t.path);t.control=e.registerControl(t.name,t.control),Ym(t.control,t),t.control.updateValueAndValidity({emitEvent:!1}),this._directives.push(t)})}getControl(t){return this.form.get(t.path)}removeControl(t){mg.then(()=>{const e=this._findContainer(t.path);e&&e.removeControl(t.name),og(this._directives,t)})}addFormGroup(t){mg.then(()=>{const e=this._findContainer(t.path),n=new dg({});Xm(n,t),e.registerControl(t.name,n),n.updateValueAndValidity({emitEvent:!1})})}removeFormGroup(t){mg.then(()=>{const e=this._findContainer(t.path);e&&e.removeControl(t.name)})}getFormGroup(t){return this.form.get(t.path)}updateModel(t,e){mg.then(()=>{this.form.get(t.path).setValue(e)})}setValue(t){this.control.setValue(t)}onSubmit(t){return this.submitted=!0,rg(this.form,this._directives),this.ngSubmit.emit(t),!1}onReset(){this.resetForm()}resetForm(t){this.form.reset(t),this.submitted=!1}_setUpdateStrategy(){this.options&&null!=this.options.updateOn&&(this.form._updateOn=this.options.updateOn)}_findContainer(t){return t.pop(),t.length?this.form.get(t):this.form}}return t.\u0275fac=function(e){return new(e||t)(lo(Tm,10),lo(Im,10))},t.\u0275dir=_e({type:t,selectors:[["form",3,"ngNoForm","",3,"formGroup",""],["ng-form"],["","ngForm",""]],hostBindings:function(t,e){1&t&&bo("submit",(function(t){return e.onSubmit(t)}))("reset",(function(){return e.onReset()}))},inputs:{options:["ngFormOptions","options"]},outputs:{ngSubmit:"ngSubmit"},exportAs:["ngForm"],features:[ta([fg]),zo]}),t})(),_g=(()=>{class t extends vm{ngOnInit(){this._checkParentType(),this.formDirective.addFormGroup(this)}ngOnDestroy(){this.formDirective&&this.formDirective.removeFormGroup(this)}get control(){return this.formDirective.getFormGroup(this)}get path(){return Km(null==this.name?this.name:this.name.toString(),this._parent)}get formDirective(){return this._parent?this._parent.formDirective:null}get validator(){return ng(this._validators)}get asyncValidator(){return ig(this._asyncValidators)}_checkParentType(){}}return t.\u0275fac=function(e){return yg(e||t)},t.\u0275dir=_e({type:t,features:[zo]}),t})();const yg=ri(_g);class bg{static modelParentException(){throw new Error(`\n ngModel cannot be used to register form controls with a parent formGroup directive. Try using\n formGroup's partner directive "formControlName" instead. Example:\n\n ${qm}\n\n Or, if you'd like to avoid registering this form control, indicate that it's standalone in ngModelOptions:\n\n Example:\n\n \n
\n \n \n
\n `)}static formGroupNameException(){throw new Error(`\n ngModel cannot be used to register form controls with a parent formGroupName or formArrayName directive.\n\n Option 1: Use formControlName instead of ngModel (reactive strategy):\n\n ${$m}\n\n Option 2: Update ngModel's parent be ngModelGroup (template-driven strategy):\n\n ${Um}`)}static missingNameException(){throw new Error('If ngModel is used within a form tag, either the name attribute must be set or the form\n control must be defined as \'standalone\' in ngModelOptions.\n\n Example 1: \n Example 2: ')}static modelGroupParentException(){throw new Error(`\n ngModelGroup cannot be used with a parent formGroup directive.\n\n Option 1: Use formGroupName instead of ngModelGroup (reactive strategy):\n\n ${$m}\n\n Option 2: Use a regular form tag instead of the formGroup directive (template-driven strategy):\n\n ${Um}`)}}const vg={provide:vm,useExisting:Ct(()=>wg)};let wg=(()=>{class t extends _g{constructor(t,e,n){super(),this._parent=t,this._validators=e,this._asyncValidators=n}_checkParentType(){this._parent instanceof t||this._parent instanceof gg||bg.modelGroupParentException()}}return t.\u0275fac=function(e){return new(e||t)(lo(vm,5),lo(Tm,10),lo(Im,10))},t.\u0275dir=_e({type:t,selectors:[["","ngModelGroup",""]],inputs:{name:["ngModelGroup","name"]},exportAs:["ngModelGroup"],features:[ta([vg]),zo]}),t})();const Cg={provide:Em,useExisting:Ct(()=>Sg)},Eg=(()=>Promise.resolve(null))();let Sg=(()=>{class t extends Em{constructor(t,e,n,i){super(),this.control=new ug,this._registered=!1,this.update=new Za,this._parent=t,this._rawValidators=e||[],this._rawAsyncValidators=n||[],this.valueAccessor=function(t,e){if(!e)return null;Array.isArray(e)||eg(t,"Value accessor was not provided as an array for form control with");let n=void 0,i=void 0,s=void 0;return e.forEach(e=>{var r;e.constructor===ym?n=e:(r=e,sg.some(t=>r.constructor===t)?(i&&eg(t,"More than one built-in value accessor matches form control with"),i=e):(s&&eg(t,"More than one custom value accessor matches form control with"),s=e))}),s||i||n||(eg(t,"No valid value accessor for form control with"),null)}(this,i)}ngOnChanges(t){this._checkForErrors(),this._registered||this._setUpControl(),"isDisabled"in t&&this._updateDisabled(t),function(t,e){if(!t.hasOwnProperty("model"))return!1;const n=t.model;return!!n.isFirstChange()||!Object.is(e,n.currentValue)}(t,this.viewModel)&&(this._updateValue(this.model),this.viewModel=this.model)}ngOnDestroy(){this.formDirective&&this.formDirective.removeControl(this)}get path(){return this._parent?Km(this.name,this._parent):[this.name]}get formDirective(){return this._parent?this._parent.formDirective:null}get validator(){return ng(this._rawValidators)}get asyncValidator(){return ig(this._rawAsyncValidators)}viewToModelUpdate(t){this.viewModel=t,this.update.emit(t)}_setUpControl(){this._setUpdateStrategy(),this._isStandalone()?this._setUpStandalone():this.formDirective.addControl(this),this._registered=!0}_setUpdateStrategy(){this.options&&null!=this.options.updateOn&&(this.control._updateOn=this.options.updateOn)}_isStandalone(){return!this._parent||!(!this.options||!this.options.standalone)}_setUpStandalone(){Ym(this.control,this),this.control.updateValueAndValidity({emitEvent:!1})}_checkForErrors(){this._isStandalone()||this._checkParentType(),this._checkName()}_checkParentType(){!(this._parent instanceof wg)&&this._parent instanceof _g?bg.formGroupNameException():this._parent instanceof wg||this._parent instanceof gg||bg.modelParentException()}_checkName(){this.options&&this.options.name&&(this.name=this.options.name),this._isStandalone()||this.name||bg.missingNameException()}_updateValue(t){Eg.then(()=>{this.control.setValue(t,{emitViewToModelChange:!1})})}_updateDisabled(t){const e=t.isDisabled.currentValue,n=""===e||e&&"false"!==e;Eg.then(()=>{n&&!this.control.disabled?this.control.disable():!n&&this.control.disabled&&this.control.enable()})}}return t.\u0275fac=function(e){return new(e||t)(lo(vm,9),lo(Tm,10),lo(Im,10),lo(pm,10))},t.\u0275dir=_e({type:t,selectors:[["","ngModel","",3,"formControlName","",3,"formControl",""]],inputs:{name:"name",isDisabled:["disabled","isDisabled"],model:["ngModel","model"],options:["ngModelOptions","options"]},outputs:{update:"ngModelChange"},exportAs:["ngModel"],features:[ta([Cg]),zo,De]}),t})();const xg={provide:vm,useExisting:Ct(()=>kg)};let kg=(()=>{class t extends vm{constructor(t,e){super(),this._validators=t,this._asyncValidators=e,this.submitted=!1,this.directives=[],this.form=null,this.ngSubmit=new Za}ngOnChanges(t){this._checkFormPresent(),t.hasOwnProperty("form")&&(this._updateValidators(),this._updateDomValue(),this._updateRegistrations())}get formDirective(){return this}get control(){return this.form}get path(){return[]}addControl(t){const e=this.form.get(t.path);return Ym(e,t),e.updateValueAndValidity({emitEvent:!1}),this.directives.push(t),e}getControl(t){return this.form.get(t.path)}removeControl(t){og(this.directives,t)}addFormGroup(t){const e=this.form.get(t.path);Xm(e,t),e.updateValueAndValidity({emitEvent:!1})}removeFormGroup(t){}getFormGroup(t){return this.form.get(t.path)}addFormArray(t){const e=this.form.get(t.path);Xm(e,t),e.updateValueAndValidity({emitEvent:!1})}removeFormArray(t){}getFormArray(t){return this.form.get(t.path)}updateModel(t,e){this.form.get(t.path).setValue(e)}onSubmit(t){return this.submitted=!0,rg(this.form,this.directives),this.ngSubmit.emit(t),!1}onReset(){this.resetForm()}resetForm(t){this.form.reset(t),this.submitted=!1}_updateDomValue(){this.directives.forEach(t=>{const e=this.form.get(t.path);t.control!==e&&(function(t,e){e.valueAccessor.registerOnChange(()=>tg(e)),e.valueAccessor.registerOnTouched(()=>tg(e)),e._rawValidators.forEach(t=>{t.registerOnValidatorChange&&t.registerOnValidatorChange(null)}),e._rawAsyncValidators.forEach(t=>{t.registerOnValidatorChange&&t.registerOnValidatorChange(null)}),t&&t._clearChangeFns()}(t.control,t),e&&Ym(e,t),t.control=e)}),this.form._updateTreeValidity({emitEvent:!1})}_updateRegistrations(){this.form._registerOnCollectionChange(()=>this._updateDomValue()),this._oldForm&&this._oldForm._registerOnCollectionChange(()=>{}),this._oldForm=this.form}_updateValidators(){const t=ng(this._validators);this.form.validator=Am.compose([this.form.validator,t]);const e=ig(this._asyncValidators);this.form.asyncValidator=Am.composeAsync([this.form.asyncValidator,e])}_checkFormPresent(){this.form||class{static controlParentException(){throw new Error("formControlName must be used with a parent formGroup directive. You'll want to add a formGroup\n directive and pass it an existing FormGroup instance (you can create one in your class).\n\n Example:\n\n "+qm)}static ngModelGroupException(){throw new Error(`formControlName cannot be used with an ngModelGroup parent. It is only compatible with parents\n that also have a "form" prefix: formGroupName, formArrayName, or formGroup.\n\n Option 1: Update the parent to be formGroupName (reactive form strategy)\n\n ${$m}\n\n Option 2: Use ngModel instead of formControlName (template-driven strategy)\n\n ${Um}`)}static missingFormException(){throw new Error("formGroup expects a FormGroup instance. Please pass one in.\n\n Example:\n\n "+qm)}static groupParentException(){throw new Error("formGroupName must be used with a parent formGroup directive. You'll want to add a formGroup\n directive and pass it an existing FormGroup instance (you can create one in your class).\n\n Example:\n\n "+$m)}static arrayParentException(){throw new Error('formArrayName must be used with a parent formGroup directive. You\'ll want to add a formGroup\n directive and pass it an existing FormGroup instance (you can create one in your class).\n\n Example:\n\n \n
\n
\n
\n \n
\n
\n
\n\n In your class:\n\n this.cityArray = new FormArray([new FormControl(\'SF\')]);\n this.myGroup = new FormGroup({\n cities: this.cityArray\n });')}static disabledAttrWarning(){console.warn("\n It looks like you're using the disabled attribute with a reactive form directive. If you set disabled to true\n when you set up this control in your component class, the disabled attribute will actually be set in the DOM for\n you. We recommend using this approach to avoid 'changed after checked' errors.\n\n Example:\n form = new FormGroup({\n first: new FormControl({value: 'Nancy', disabled: true}, Validators.required),\n last: new FormControl('Drew', Validators.required)\n });\n ")}static ngModelWarning(t){console.warn(`\n It looks like you're using ngModel on the same form field as ${t}.\n Support for using the ngModel input property and ngModelChange event with\n reactive form directives has been deprecated in Angular v6 and will be removed\n in a future version of Angular.\n\n For more information on this, see our API docs here:\n https://angular.io/api/forms/${"formControl"===t?"FormControlDirective":"FormControlName"}#use-with-ngmodel\n `)}}.missingFormException()}}return t.\u0275fac=function(e){return new(e||t)(lo(Tm,10),lo(Im,10))},t.\u0275dir=_e({type:t,selectors:[["","formGroup",""]],hostBindings:function(t,e){1&t&&bo("submit",(function(t){return e.onSubmit(t)}))("reset",(function(){return e.onReset()}))},inputs:{form:["formGroup","form"]},outputs:{ngSubmit:"ngSubmit"},exportAs:["ngForm"],features:[ta([xg]),zo,De]}),t})(),Tg=(()=>{class t{}return t.\u0275mod=me({type:t}),t.\u0275inj=ht({factory:function(e){return new(e||t)}}),t})(),Ig=(()=>{class t{}return t.\u0275mod=me({type:t}),t.\u0275inj=ht({factory:function(e){return new(e||t)},providers:[jm],imports:[Tg]}),t})();const Dg=new Mt("MAT_INPUT_VALUE_ACCESSOR"),Ag=["button","checkbox","file","hidden","image","radio","range","reset","submit"];let Pg=0;class Og{constructor(t,e,n,i){this._defaultErrorStateMatcher=t,this._parentForm=e,this._parentFormGroup=n,this.ngControl=i}}const Rg=kf(Og);let Ng=(()=>{class t extends Rg{constructor(t,e,n,i,s,r,o,a,l,c){super(r,i,s,n),this._elementRef=t,this._platform=e,this.ngControl=n,this._autofillMonitor=a,this._formField=c,this._uid="mat-input-"+Pg++,this.focused=!1,this.stateChanges=new E,this.controlType="mat-input",this.autofilled=!1,this._disabled=!1,this._required=!1,this._type="text",this._readonly=!1,this._neverEmptyInputTypes=["date","datetime","datetime-local","month","time","week"].filter(t=>Oh().has(t));const h=this._elementRef.nativeElement,u=h.nodeName.toLowerCase();this._inputValueAccessor=o||h,this._previousNativeValue=this.value,this.id=this.id,e.IOS&&l.runOutsideAngular(()=>{t.nativeElement.addEventListener("keyup",t=>{let e=t.target;e.value||e.selectionStart||e.selectionEnd||(e.setSelectionRange(1,1),e.setSelectionRange(0,0))})}),this._isServer=!this._platform.isBrowser,this._isNativeSelect="select"===u,this._isTextarea="textarea"===u,this._isNativeSelect&&(this.controlType=h.multiple?"mat-native-select-multiple":"mat-native-select")}get disabled(){return this.ngControl&&null!==this.ngControl.disabled?this.ngControl.disabled:this._disabled}set disabled(t){this._disabled=Jc(t),this.focused&&(this.focused=!1,this.stateChanges.next())}get id(){return this._id}set id(t){this._id=t||this._uid}get required(){return this._required}set required(t){this._required=Jc(t)}get type(){return this._type}set type(t){this._type=t||"text",this._validateType(),!this._isTextarea&&Oh().has(this._type)&&(this._elementRef.nativeElement.type=this._type)}get value(){return this._inputValueAccessor.value}set value(t){t!==this.value&&(this._inputValueAccessor.value=t,this.stateChanges.next())}get readonly(){return this._readonly}set readonly(t){this._readonly=Jc(t)}ngAfterViewInit(){this._platform.isBrowser&&this._autofillMonitor.monitor(this._elementRef.nativeElement).subscribe(t=>{this.autofilled=t.isAutofilled,this.stateChanges.next()})}ngOnChanges(){this.stateChanges.next()}ngOnDestroy(){this.stateChanges.complete(),this._platform.isBrowser&&this._autofillMonitor.stopMonitoring(this._elementRef.nativeElement)}ngDoCheck(){this.ngControl&&this.updateErrorState(),this._dirtyCheckNativeValue(),this._dirtyCheckPlaceholder()}focus(t){this._elementRef.nativeElement.focus(t)}_focusChanged(t){t===this.focused||this.readonly&&t||(this.focused=t,this.stateChanges.next())}_onInput(){}_dirtyCheckPlaceholder(){const t=this._formField,e=t&&t._hideControlPlaceholder()?null:this.placeholder;if(e!==this._previousPlaceholder){const t=this._elementRef.nativeElement;this._previousPlaceholder=e,e?t.setAttribute("placeholder",e):t.removeAttribute("placeholder")}}_dirtyCheckNativeValue(){const t=this._elementRef.nativeElement.value;this._previousNativeValue!==t&&(this._previousNativeValue=t,this.stateChanges.next())}_validateType(){if(Ag.indexOf(this._type)>-1)throw Error(`Input type "${this._type}" isn't supported by matInput.`)}_isNeverEmpty(){return this._neverEmptyInputTypes.indexOf(this._type)>-1}_isBadInput(){let t=this._elementRef.nativeElement.validity;return t&&t.badInput}get empty(){return!(this._isNeverEmpty()||this._elementRef.nativeElement.value||this._isBadInput()||this.autofilled)}get shouldLabelFloat(){if(this._isNativeSelect){const t=this._elementRef.nativeElement,e=t.options[0];return this.focused||t.multiple||!this.empty||!!(t.selectedIndex>-1&&e&&e.label)}return this.focused||!this.empty}setDescribedByIds(t){this._ariaDescribedby=t.join(" ")}onContainerClick(){this.focused||this.focus()}}return t.\u0275fac=function(e){return new(e||t)(lo(sa),lo(Dh),lo(Em,10),lo(gg,8),lo(kg,8),lo(Tf),lo(Dg,10),lo(zu),lo(Vl),lo(cm,8))},t.\u0275dir=_e({type:t,selectors:[["input","matInput",""],["textarea","matInput",""],["select","matNativeControl",""],["input","matNativeControl",""],["textarea","matNativeControl",""]],hostAttrs:[1,"mat-input-element","mat-form-field-autofill-control"],hostVars:10,hostBindings:function(t,e){1&t&&bo("focus",(function(){return e._focusChanged(!0)}))("blur",(function(){return e._focusChanged(!1)}))("input",(function(){return e._onInput()})),2&t&&(Bo("disabled",e.disabled)("required",e.required),oo("id",e.id)("data-placeholder",e.placeholder)("readonly",e.readonly&&!e._isNativeSelect||null)("aria-describedby",e._ariaDescribedby||null)("aria-invalid",e.errorState)("aria-required",e.required.toString()),Ao("mat-input-server",e._isServer))},inputs:{id:"id",disabled:"disabled",required:"required",type:"type",value:"value",readonly:"readonly",placeholder:"placeholder",errorStateMatcher:"errorStateMatcher"},exportAs:["matInput"],features:[ta([{provide:Yf,useExisting:t}]),zo,De]}),t})(),Fg=(()=>{class t{}return t.\u0275mod=me({type:t}),t.\u0275inj=ht({factory:function(e){return new(e||t)},providers:[Tf],imports:[[qu,hm],qu,hm]}),t})();class Vg{constructor(t){this.selector=t}call(t,e){return e.subscribe(new Mg(t,this.selector,this.caught))}}class Mg extends N{constructor(t,e,n){super(t),this.selector=e,this.caught=n}error(t){if(!this.isStopped){let n;try{n=this.selector(t,this.caught)}catch(e){return void super.error(e)}this._unsubscribeAndRecycle();const i=new k(this,void 0,void 0);this.add(i);const s=R(this,n,void 0,void 0,i);s!==i&&this.add(s)}}}class Lg{constructor(t){this.callback=t}call(t,e){return e.subscribe(new jg(t,this.callback))}}class jg extends f{constructor(t,e){super(t),this.add(new u(e))}}class Bg{}class Hg{constructor(t){this.normalizedNames=new Map,this.lazyUpdate=null,t?this.lazyInit="string"==typeof t?()=>{this.headers=new Map,t.split("\n").forEach(t=>{const e=t.indexOf(":");if(e>0){const n=t.slice(0,e),i=n.toLowerCase(),s=t.slice(e+1).trim();this.maybeSetNormalizedName(n,i),this.headers.has(i)?this.headers.get(i).push(s):this.headers.set(i,[s])}})}:()=>{this.headers=new Map,Object.keys(t).forEach(e=>{let n=t[e];const i=e.toLowerCase();"string"==typeof n&&(n=[n]),n.length>0&&(this.headers.set(i,n),this.maybeSetNormalizedName(e,i))})}:this.headers=new Map}has(t){return this.init(),this.headers.has(t.toLowerCase())}get(t){this.init();const e=this.headers.get(t.toLowerCase());return e&&e.length>0?e[0]:null}keys(){return this.init(),Array.from(this.normalizedNames.values())}getAll(t){return this.init(),this.headers.get(t.toLowerCase())||null}append(t,e){return this.clone({name:t,value:e,op:"a"})}set(t,e){return this.clone({name:t,value:e,op:"s"})}delete(t,e){return this.clone({name:t,value:e,op:"d"})}maybeSetNormalizedName(t,e){this.normalizedNames.has(e)||this.normalizedNames.set(e,t)}init(){this.lazyInit&&(this.lazyInit instanceof Hg?this.copyFrom(this.lazyInit):this.lazyInit(),this.lazyInit=null,this.lazyUpdate&&(this.lazyUpdate.forEach(t=>this.applyUpdate(t)),this.lazyUpdate=null))}copyFrom(t){t.init(),Array.from(t.headers.keys()).forEach(e=>{this.headers.set(e,t.headers.get(e)),this.normalizedNames.set(e,t.normalizedNames.get(e))})}clone(t){const e=new Hg;return e.lazyInit=this.lazyInit&&this.lazyInit instanceof Hg?this.lazyInit:this,e.lazyUpdate=(this.lazyUpdate||[]).concat([t]),e}applyUpdate(t){const e=t.name.toLowerCase();switch(t.op){case"a":case"s":let n=t.value;if("string"==typeof n&&(n=[n]),0===n.length)return;this.maybeSetNormalizedName(t.name,e);const i=("a"===t.op?this.headers.get(e):void 0)||[];i.push(...n),this.headers.set(e,i);break;case"d":const s=t.value;if(s){let t=this.headers.get(e);if(!t)return;t=t.filter(t=>-1===s.indexOf(t)),0===t.length?(this.headers.delete(e),this.normalizedNames.delete(e)):this.headers.set(e,t)}else this.headers.delete(e),this.normalizedNames.delete(e)}}forEach(t){this.init(),Array.from(this.normalizedNames.keys()).forEach(e=>t(this.normalizedNames.get(e),this.headers.get(e)))}}class zg{encodeKey(t){return qg(t)}encodeValue(t){return qg(t)}decodeKey(t){return decodeURIComponent(t)}decodeValue(t){return decodeURIComponent(t)}}function qg(t){return encodeURIComponent(t).replace(/%40/gi,"@").replace(/%3A/gi,":").replace(/%24/gi,"$").replace(/%2C/gi,",").replace(/%3B/gi,";").replace(/%2B/gi,"+").replace(/%3D/gi,"=").replace(/%3F/gi,"?").replace(/%2F/gi,"/")}class $g{constructor(t={}){if(this.updates=null,this.cloneFrom=null,this.encoder=t.encoder||new zg,t.fromString){if(t.fromObject)throw new Error("Cannot specify both fromString and fromObject.");this.map=function(t,e){const n=new Map;return t.length>0&&t.split("&").forEach(t=>{const i=t.indexOf("="),[s,r]=-1==i?[e.decodeKey(t),""]:[e.decodeKey(t.slice(0,i)),e.decodeValue(t.slice(i+1))],o=n.get(s)||[];o.push(r),n.set(s,o)}),n}(t.fromString,this.encoder)}else t.fromObject?(this.map=new Map,Object.keys(t.fromObject).forEach(e=>{const n=t.fromObject[e];this.map.set(e,Array.isArray(n)?n:[n])})):this.map=null}has(t){return this.init(),this.map.has(t)}get(t){this.init();const e=this.map.get(t);return e?e[0]:null}getAll(t){return this.init(),this.map.get(t)||null}keys(){return this.init(),Array.from(this.map.keys())}append(t,e){return this.clone({param:t,value:e,op:"a"})}set(t,e){return this.clone({param:t,value:e,op:"s"})}delete(t,e){return this.clone({param:t,value:e,op:"d"})}toString(){return this.init(),this.keys().map(t=>{const e=this.encoder.encodeKey(t);return this.map.get(t).map(t=>e+"="+this.encoder.encodeValue(t)).join("&")}).filter(t=>""!==t).join("&")}clone(t){const e=new $g({encoder:this.encoder});return e.cloneFrom=this.cloneFrom||this,e.updates=(this.updates||[]).concat([t]),e}init(){null===this.map&&(this.map=new Map),null!==this.cloneFrom&&(this.cloneFrom.init(),this.cloneFrom.keys().forEach(t=>this.map.set(t,this.cloneFrom.map.get(t))),this.updates.forEach(t=>{switch(t.op){case"a":case"s":const e=("a"===t.op?this.map.get(t.param):void 0)||[];e.push(t.value),this.map.set(t.param,e);break;case"d":if(void 0===t.value){this.map.delete(t.param);break}{let e=this.map.get(t.param)||[];const n=e.indexOf(t.value);-1!==n&&e.splice(n,1),e.length>0?this.map.set(t.param,e):this.map.delete(t.param)}}}),this.cloneFrom=this.updates=null)}}function Ug(t){return"undefined"!=typeof ArrayBuffer&&t instanceof ArrayBuffer}function Gg(t){return"undefined"!=typeof Blob&&t instanceof Blob}function Wg(t){return"undefined"!=typeof FormData&&t instanceof FormData}class Zg{constructor(t,e,n,i){let s;if(this.url=e,this.body=null,this.reportProgress=!1,this.withCredentials=!1,this.responseType="json",this.method=t.toUpperCase(),function(t){switch(t){case"DELETE":case"GET":case"HEAD":case"OPTIONS":case"JSONP":return!1;default:return!0}}(this.method)||i?(this.body=void 0!==n?n:null,s=i):s=n,s&&(this.reportProgress=!!s.reportProgress,this.withCredentials=!!s.withCredentials,s.responseType&&(this.responseType=s.responseType),s.headers&&(this.headers=s.headers),s.params&&(this.params=s.params)),this.headers||(this.headers=new Hg),this.params){const t=this.params.toString();if(0===t.length)this.urlWithParams=e;else{const n=e.indexOf("?");this.urlWithParams=e+(-1===n?"?":ne.set(n,t.setHeaders[n]),a)),t.setParams&&(l=Object.keys(t.setParams).reduce((e,n)=>e.set(n,t.setParams[n]),l)),new Zg(e,n,s,{params:l,headers:a,reportProgress:o,responseType:i,withCredentials:r})}}var Qg=function(t){return t[t.Sent=0]="Sent",t[t.UploadProgress=1]="UploadProgress",t[t.ResponseHeader=2]="ResponseHeader",t[t.DownloadProgress=3]="DownloadProgress",t[t.Response=4]="Response",t[t.User=5]="User",t}({});class Kg extends class{constructor(t,e=200,n="OK"){this.headers=t.headers||new Hg,this.status=void 0!==t.status?t.status:e,this.statusText=t.statusText||n,this.url=t.url||null,this.ok=this.status>=200&&this.status<300}}{constructor(t={}){super(t),this.type=Qg.Response,this.body=void 0!==t.body?t.body:null}clone(t={}){return new Kg({body:void 0!==t.body?t.body:this.body,headers:t.headers||this.headers,status:void 0!==t.status?t.status:this.status,statusText:t.statusText||this.statusText,url:t.url||this.url||void 0})}}function Yg(t,e){return{body:e,headers:t.headers,observe:t.observe,params:t.params,reportProgress:t.reportProgress,responseType:t.responseType,withCredentials:t.withCredentials}}let Jg=(()=>{class t{constructor(t){this.handler=t}request(t,e,n={}){let i;if(t instanceof Zg)i=t;else{let s=void 0;s=n.headers instanceof Hg?n.headers:new Hg(n.headers);let r=void 0;n.params&&(r=n.params instanceof $g?n.params:new $g({fromObject:n.params})),i=new Zg(t,e,void 0!==n.body?n.body:null,{headers:s,params:r,reportProgress:n.reportProgress,responseType:n.responseType||"json",withCredentials:n.withCredentials})}const s=eh(i).pipe(B(t=>this.handler.handle(t),void 0,1));if(t instanceof Zg||"events"===n.observe)return s;const r=s.pipe(gh(t=>t instanceof Kg));switch(n.observe||"body"){case"body":switch(i.responseType){case"arraybuffer":return r.pipe(F(t=>{if(null!==t.body&&!(t.body instanceof ArrayBuffer))throw new Error("Response is not an ArrayBuffer.");return t.body}));case"blob":return r.pipe(F(t=>{if(null!==t.body&&!(t.body instanceof Blob))throw new Error("Response is not a Blob.");return t.body}));case"text":return r.pipe(F(t=>{if(null!==t.body&&"string"!=typeof t.body)throw new Error("Response is not a string.");return t.body}));case"json":default:return r.pipe(F(t=>t.body))}case"response":return r;default:throw new Error(`Unreachable: unhandled observe type ${n.observe}}`)}}delete(t,e={}){return this.request("DELETE",t,e)}get(t,e={}){return this.request("GET",t,e)}head(t,e={}){return this.request("HEAD",t,e)}jsonp(t,e){return this.request("JSONP",t,{params:(new $g).append(e,"JSONP_CALLBACK"),observe:"body",responseType:"json"})}options(t,e={}){return this.request("OPTIONS",t,e)}patch(t,e,n={}){return this.request("PATCH",t,Yg(n,e))}post(t,e,n={}){return this.request("POST",t,Yg(n,e))}put(t,e,n={}){return this.request("PUT",t,Yg(n,e))}}return t.\u0275fac=function(e){return new(e||t)(Wt(Bg))},t.\u0275prov=ct({token:t,factory:t.\u0275fac}),t})();const Xg=["*"];function t_(t){return Error(`Unable to find icon with the name "${t}"`)}function e_(t){return Error(`The URL provided to MatIconRegistry was not trusted as a resource URL via Angular's DomSanitizer. Attempted URL was "${t}".`)}function n_(t){return Error(`The literal provided to MatIconRegistry was not trusted as safe HTML by Angular's DomSanitizer. Attempted literal was "${t}".`)}class i_{constructor(t,e){this.options=e,t.nodeName?this.svgElement=t:this.url=t}}let s_=(()=>{class t{constructor(t,e,n,i){this._httpClient=t,this._sanitizer=e,this._errorHandler=i,this._svgIconConfigs=new Map,this._iconSetConfigs=new Map,this._cachedIconsByUrl=new Map,this._inProgressUrlFetches=new Map,this._fontCssClassesByAlias=new Map,this._defaultFontSetClass="material-icons",this._document=n}addSvgIcon(t,e,n){return this.addSvgIconInNamespace("",t,e,n)}addSvgIconLiteral(t,e,n){return this.addSvgIconLiteralInNamespace("",t,e,n)}addSvgIconInNamespace(t,e,n,i){return this._addSvgIconConfig(t,e,new i_(n,i))}addSvgIconLiteralInNamespace(t,e,n,i){const s=this._sanitizer.sanitize($i.HTML,n);if(!s)throw n_(n);const r=this._createSvgElementForSingleIcon(s,i);return this._addSvgIconConfig(t,e,new i_(r,i))}addSvgIconSet(t,e){return this.addSvgIconSetInNamespace("",t,e)}addSvgIconSetLiteral(t,e){return this.addSvgIconSetLiteralInNamespace("",t,e)}addSvgIconSetInNamespace(t,e,n){return this._addSvgIconSetConfig(t,new i_(e,n))}addSvgIconSetLiteralInNamespace(t,e,n){const i=this._sanitizer.sanitize($i.HTML,e);if(!i)throw n_(e);const s=this._svgElementFromString(i);return this._addSvgIconSetConfig(t,new i_(s,n))}registerFontClassAlias(t,e=t){return this._fontCssClassesByAlias.set(t,e),this}classNameForFontAlias(t){return this._fontCssClassesByAlias.get(t)||t}setDefaultFontSetClass(t){return this._defaultFontSetClass=t,this}getDefaultFontSetClass(){return this._defaultFontSetClass}getSvgIconFromUrl(t){const e=this._sanitizer.sanitize($i.RESOURCE_URL,t);if(!e)throw e_(t);const n=this._cachedIconsByUrl.get(e);return n?eh(r_(n)):this._loadSvgIconFromConfig(new i_(t)).pipe(Zh(t=>this._cachedIconsByUrl.set(e,t)),F(t=>r_(t)))}getNamedSvgIcon(t,e=""){const n=o_(e,t),i=this._svgIconConfigs.get(n);if(i)return this._getSvgFromConfig(i);const s=this._iconSetConfigs.get(e);return s?this._getSvgFromIconSetConfigs(t,s):(r=t_(n),new y(t=>t.error(r)));var r}ngOnDestroy(){this._svgIconConfigs.clear(),this._iconSetConfigs.clear(),this._cachedIconsByUrl.clear()}_getSvgFromConfig(t){return t.svgElement?eh(r_(t.svgElement)):this._loadSvgIconFromConfig(t).pipe(Zh(e=>t.svgElement=e),F(t=>r_(t)))}_getSvgFromIconSetConfigs(t,e){const n=this._extractIconWithNameFromAnySet(t,e);return n?eh(n):um(e.filter(t=>!t.svgElement).map(t=>{return this._loadSvgIconSetFromConfig(t).pipe((e=e=>{const n=this._sanitizer.sanitize($i.RESOURCE_URL,t.url);return this._errorHandler.handleError(new Error(`Loading icon set URL: ${n} failed: ${e.message}`)),eh(null)},function(t){const n=new Vg(e),i=t.lift(n);return n.caught=i}));var e})).pipe(F(()=>{const n=this._extractIconWithNameFromAnySet(t,e);if(!n)throw t_(t);return n}))}_extractIconWithNameFromAnySet(t,e){for(let n=e.length-1;n>=0;n--){const i=e[n];if(i.svgElement){const e=this._extractSvgIconFromSet(i.svgElement,t,i.options);if(e)return e}}return null}_loadSvgIconFromConfig(t){return this._fetchIcon(t).pipe(F(e=>this._createSvgElementForSingleIcon(e,t.options)))}_loadSvgIconSetFromConfig(t){return t.svgElement?eh(t.svgElement):this._fetchIcon(t).pipe(F(e=>(t.svgElement||(t.svgElement=this._svgElementFromString(e)),t.svgElement)))}_createSvgElementForSingleIcon(t,e){const n=this._svgElementFromString(t);return this._setSvgAttributes(n,e),n}_extractSvgIconFromSet(t,e,n){const i=t.querySelector(`[id="${e}"]`);if(!i)return null;const s=i.cloneNode(!0);if(s.removeAttribute("id"),"svg"===s.nodeName.toLowerCase())return this._setSvgAttributes(s,n);if("symbol"===s.nodeName.toLowerCase())return this._setSvgAttributes(this._toSvgElement(s),n);const r=this._svgElementFromString("");return r.appendChild(s),this._setSvgAttributes(r,n)}_svgElementFromString(t){const e=this._document.createElement("DIV");e.innerHTML=t;const n=e.querySelector("svg");if(!n)throw Error(" tag not found");return n}_toSvgElement(t){const e=this._svgElementFromString(""),n=t.attributes;for(let i=0;ithis._inProgressUrlFetches.delete(r),t=>t.lift(new Lg(l))),X());var l;return this._inProgressUrlFetches.set(r,a),a}_addSvgIconConfig(t,e,n){return this._svgIconConfigs.set(o_(t,e),n),this}_addSvgIconSetConfig(t,e){const n=this._iconSetConfigs.get(t);return n?n.push(e):this._iconSetConfigs.set(t,[e]),this}}return t.\u0275fac=function(e){return new(e||t)(Wt(Jg,8),Wt(Wc),Wt(ac,8),Wt(ci))},t.\u0275prov=ct({factory:function(){return new t(Wt(Jg,8),Wt(Wc),Wt(ac,8),Wt(ci))},token:t,providedIn:"root"}),t})();function r_(t){return t.cloneNode(!0)}function o_(t,e){return t+":"+e}class a_{constructor(t){this._elementRef=t}}const l_=xf(a_),c_=new Mt("mat-icon-location",{providedIn:"root",factory:function(){const t=Zt(ac),e=t?t.location:null;return{getPathname:()=>e?e.pathname+e.search:""}}}),h_=["clip-path","color-profile","src","cursor","fill","filter","marker","marker-start","marker-mid","marker-end","mask","stroke"],u_=h_.map(t=>`[${t}]`).join(", "),d_=/^url\(['"]?#(.*?)['"]?\)$/;let p_=(()=>{class t extends l_{constructor(t,e,n,i,s){super(t),this._iconRegistry=e,this._location=i,this._errorHandler=s,this._inline=!1,this._currentIconFetch=u.EMPTY,n||t.nativeElement.setAttribute("aria-hidden","true")}get inline(){return this._inline}set inline(t){this._inline=Jc(t)}get fontSet(){return this._fontSet}set fontSet(t){this._fontSet=this._cleanupFontValue(t)}get fontIcon(){return this._fontIcon}set fontIcon(t){this._fontIcon=this._cleanupFontValue(t)}_splitIconName(t){if(!t)return["",""];const e=t.split(":");switch(e.length){case 1:return["",e[0]];case 2:return e;default:throw Error(`Invalid icon name: "${t}"`)}}ngOnChanges(t){const e=t.svgIcon;if(e)if(this._currentIconFetch.unsubscribe(),this.svgIcon){const[t,e]=this._splitIconName(this.svgIcon);this._currentIconFetch=this._iconRegistry.getNamedSvgIcon(e,t).pipe($h(1)).subscribe(t=>this._setSvgElement(t),n=>{this._errorHandler.handleError(new Error(`Error retrieving icon ${t}:${e}! ${n.message}`))})}else e.previousValue&&this._clearSvgElement();this._usingFontIcon()&&this._updateFontIconClasses()}ngOnInit(){this._usingFontIcon()&&this._updateFontIconClasses()}ngAfterViewChecked(){const t=this._elementsWithExternalReferences;if(t&&t.size){const t=this._location.getPathname();t!==this._previousPath&&(this._previousPath=t,this._prependPathToReferences(t))}}ngOnDestroy(){this._currentIconFetch.unsubscribe(),this._elementsWithExternalReferences&&this._elementsWithExternalReferences.clear()}_usingFontIcon(){return!this.svgIcon}_setSvgElement(t){this._clearSvgElement();const e=t.querySelectorAll("style");for(let i=0;i{e.forEach(e=>{n.setAttribute(e.name,`url('${t}#${e.value}')`)})})}_cacheChildrenWithExternalReferences(t){const e=t.querySelectorAll(u_),n=this._elementsWithExternalReferences=this._elementsWithExternalReferences||new Map;for(let i=0;i{const s=e[i],r=s.getAttribute(t),o=r?r.match(d_):null;if(o){let e=n.get(s);e||(e=[],n.set(s,e)),e.push({name:t,value:o[1]})}})}}return t.\u0275fac=function(e){return new(e||t)(lo(sa),lo(s_),("aria-hidden",function(t,e){const n=t.attrs;if(n){const t=n.length;let e=0;for(;e{class t{}return t.\u0275mod=me({type:t}),t.\u0275inj=ht({factory:function(e){return new(e||t)},imports:[[Sf],Sf]}),t})(),m_=(()=>{class t{}return t.\u0275mod=me({type:t}),t.\u0275inj=ht({factory:function(e){return new(e||t)},imports:[[Sf],Sf]}),t})(),g_=(()=>{class t{}return t.\u0275fac=function(e){return new(e||t)},t.\u0275dir=_e({type:t,selectors:[["","mat-list-icon",""],["","matListIcon",""]],hostAttrs:[1,"mat-list-icon"]}),t})(),__=(()=>{class t{}return t.\u0275mod=me({type:t}),t.\u0275inj=ht({factory:function(e){return new(e||t)},imports:[[If,Df,Sf,Af,wc],If,Sf,Af,m_]}),t})();function y_(t,e){if(1&t&&(uo(0,"h3",7),Vo(1),po()),2&t){const t=Co();hs(1),Mo(t.itemsTitle)}}function b_(t,e){if(1&t){const t=_o();uo(0,"mat-form-field",8),uo(1,"mat-label"),Vo(2),po(),uo(3,"input",9),bo("ngModelChange",(function(e){return Je(t),Co().filterItems(e)})),po(),uo(4,"mat-placeholder"),Vo(5),po(),po()}if(2&t){const t=Co();hs(2),jo("",t.searchPlaceholder," ",t.itemsTitle,""),hs(1),co("ngModel",t.filterText),hs(2),jo("",t.searchPlaceholder," ",t.itemsTitle,"")}}function v_(t,e){if(1&t&&(uo(0,"mat-icon",12),Vo(1),po()),2&t){const t=Co(2);Do("color",t.addIconColor),hs(1),Mo(t.addIcon)}}function w_(t,e){if(1&t){const t=_o();uo(0,"div",10),bo("click",(function(e){return Je(t),Co().clickedItem(e.target.innerText,"confirmedFiltered","availableFiltered")})),ao(1,v_,2,3,"mat-icon",11),Vo(2),po()}if(2&t){const t=e.$implicit,n=Co();hs(1),co("ngIf",n.showIcons),hs(1),Lo(" ",t[n.display],"")}}function C_(t,e){if(1&t&&(uo(0,"h3",7),Vo(1),po()),2&t){const t=Co();hs(1),Mo(t.selectedItemsTitle)}}function E_(t,e){if(1&t){const t=_o();uo(0,"mat-form-field",8),uo(1,"mat-label"),Vo(2),po(),uo(3,"input",9),bo("ngModelChange",(function(e){return Je(t),Co().filterSelectedItems(e)})),po(),uo(4,"mat-placeholder"),Vo(5),po(),po()}if(2&t){const t=Co();hs(2),jo("",t.searchPlaceholder," ",t.selectedItemsTitle,""),hs(1),co("ngModel",t.filterSelectedText),hs(2),jo("",t.searchPlaceholder," ",t.itemsTitle,"")}}function S_(t,e){if(1&t&&(uo(0,"mat-icon",12),Vo(1),po()),2&t){const t=Co(2);Do("color",t.removeIconColor),hs(1),Mo(t.removeIcon)}}function x_(t,e){if(1&t){const t=_o();uo(0,"div",10),bo("click",(function(e){return Je(t),Co().clickedItem(e.target.innerText,"availableFiltered","confirmedFiltered")})),ao(1,S_,2,3,"mat-icon",11),Vo(2),po()}if(2&t){const t=e.$implicit,n=Co();hs(1),co("ngIf",n.showIcons),hs(1),Lo(" ",t[n.display],"")}}const k_=function(t,e){return{"max-height":"100%","max-width":t,"min-width":e}};let T_=(()=>{class t{constructor(){this.key="_id",this.display="name",this.width="360px",this.filter=!0,this.searchPlaceholder="Filter",this.itemsTitle="Items",this.selectedItemsTitle="Selected Items",this.header=!1,this.showIcons=!0,this.addIcon="add",this.addIconColor="black",this.removeIcon="delete",this.removeIconColor="black",this.source=[],this.destination=[],this.destinationChange=new Za,this.availableFiltered=[],this.confirmedFiltered=[],this.filterText=null,this.filterSelectedText=null}ngOnInit(){this.update()}update(){this.filterItems(this.filterText),this.filterSelectedItems(this.filterSelectedText)}drop(t){t.previousContainer===t.container?(gu(t.container.data,t.previousIndex,t.currentIndex),console.log(t)):(function(t,e,n,i){const s=_u(n,t.length-1),r=_u(i,e.length);t.length&&e.splice(r,0,t.splice(s,1)[0])}(t.previousContainer.data,t.container.data,t.previousIndex,t.currentIndex),this.destination=this.confirmedFiltered,this.destinationChange.emit(this.destination))}clickedItem(t,...e){this[e[0]]=[...this[e[1]].splice(this[e[1]].indexOf(t),1),...this[e[0]]],this.destination=this.confirmedFiltered,this.destinationChange.emit(this.destination)}filterItems(t){this.filterText=t,this.availableFiltered=t?this.source.filter(e=>e[this.display].toLowerCase().includes(t.toLowerCase())):this.source}filterSelectedItems(t){this.filterSelectedText=t,this.confirmedFiltered=t?this.destination.filter(e=>e[this.display].toLowerCase().includes(t.toLowerCase())):this.destination}}return t.\u0275fac=function(e){return new(e||t)},t.\u0275cmp=ue({type:t,selectors:[["material-dual-listbox"]],inputs:{key:"key",display:"display",width:"width",filter:"filter",searchPlaceholder:"searchPlaceholder",itemsTitle:"itemsTitle",selectedItemsTitle:"selectedItemsTitle",header:"header",showIcons:"showIcons",addIcon:"addIcon",addIconColor:"addIconColor",removeIcon:"removeIcon",removeIconColor:"removeIconColor",source:"source",destination:"destination"},outputs:{destinationChange:"destinationChange"},decls:12,vars:12,consts:[[3,"ngStyle"],["cdkDropListGroup","",1,"rck-list-container"],[1,"rck-container"],["class","rck-title",4,"ngIf"],["appearance","standard",4,"ngIf"],["cdkDropList","",1,"rck-list",3,"cdkDropListData","cdkDropListDropped"],["class","rck-box","cdkDrag","",3,"click",4,"ngFor","ngForOf"],[1,"rck-title"],["appearance","standard"],["matInput","","autocomplete","off",3,"ngModel","ngModelChange"],["cdkDrag","",1,"rck-box",3,"click"],["fxHide.xs","","mat-list-icon","",3,"color",4,"ngIf"],["fxHide.xs","","mat-list-icon",""]],template:function(t,e){var n,i,s,r,o;1&t&&(uo(0,"div",0),uo(1,"div",1),uo(2,"div",2),ao(3,y_,2,1,"h3",3),ao(4,b_,6,5,"mat-form-field",4),uo(5,"div",5),bo("cdkDropListDropped",(function(t){return e.drop(t)})),ao(6,w_,3,2,"div",6),po(),po(),uo(7,"div",2),ao(8,C_,2,1,"h3",3),ao(9,E_,6,5,"mat-form-field",4),uo(10,"div",5),bo("cdkDropListDropped",(function(t){return e.drop(t)})),ao(11,x_,3,2,"div",6),po(),po(),po(),po()),2&t&&(co("ngStyle",(n=9,i=k_,s=e.width,r=e.width,function(t,e,n,i,s,r,o){const a=e+n;return ro(t,a,s,r)?function(t,e,n){return t[e]=n}(t,a+2,o?i.call(o,s,r):i(s,r)):function(t,e){const n=t[e];return n===rs?void 0:n}(t,a+2)}(Ke(),function(){const t=Ze.lFrame;let e=t.bindingRootIndex;return-1===e&&(e=t.bindingRootIndex=t.tView.bindingStartIndex),e}(),n,i,s,r,o))),hs(3),co("ngIf",e.header),hs(1),co("ngIf",e.filter),hs(1),co("cdkDropListData",e.availableFiltered),hs(1),co("ngForOf",e.availableFiltered),hs(2),co("ngIf",e.header),hs(1),co("ngIf",e.filter),hs(1),co("cdkDropListData",e.confirmedFiltered),hs(1),co("ngForOf",e.confirmedFiltered))},directives:[vc,Du,fc,Ru,dc,cm,tm,Ng,ym,Sm,Sg,em,Lu,p_,g_],styles:["./material-dual-listbox.component.scss",".rck-title[_ngcontent-%COMP%]{\n margin-bottom: 0px;\n }\n .rck-list-container[_ngcontent-%COMP%]{\n display: flex;\n flex-wrap: nowrap;\n }\n .rck-container[_ngcontent-%COMP%] {\n width: 180px;\n max-width: 100%;\n margin: 5px 5px 5px 5px;\n display: inline-block;\n vertical-align: top;\n }\n\n .rck-container[_ngcontent-%COMP%]:last-child{\n margin-right: 25px;\n }\n\n .rck-list[_ngcontent-%COMP%] {\n border: solid 1px #ccc;\n min-height: 60px;\n background: white;\n border-radius: 4px;\n overflow: hidden;\n display: block;\n }\n\n .rck-box[_ngcontent-%COMP%] {\n padding: 20px 20px;\n border-bottom: solid 1px #ccc;\n color: rgba(0, 0, 0, 0.87);\n display: flex;\n flex-direction: row;\n align-items: center;\n justify-content: space-between;\n box-sizing: border-box;\n cursor: move;\n background: white;\n font-size: 14px;\n }\n\n .cdk-drag-preview[_ngcontent-%COMP%] {\n box-sizing: border-box;\n border-radius: 4px;\n box-shadow: 0 5px 5px -3px rgba(0, 0, 0, 0.2),\n 0 8px 10px 1px rgba(0, 0, 0, 0.14),\n 0 3px 14px 2px rgba(0, 0, 0, 0.12);\n }\n\n .cdk-drag-placeholder[_ngcontent-%COMP%] {\n opacity: 0;\n }\n\n .cdk-drag-animating[_ngcontent-%COMP%] {\n transition: transform 250ms cubic-bezier(0, 0, 0.2, 1);\n }\n\n .rck-box[_ngcontent-%COMP%]:last-child {\n border: none;\n }\n\n .rck-list.cdk-drop-list-dragging[_ngcontent-%COMP%] .rck-box[_ngcontent-%COMP%]:not(.cdk-drag-placeholder) {\n transition: transform 250ms cubic-bezier(0, 0, 0.2, 1);\n }"]}),t})(),I_=(()=>{class t{}return t.\u0275mod=me({type:t}),t.\u0275inj=ht({factory:function(e){return new(e||t)},imports:[[Yc,f_,Fg,__,Ig,hm,Bu]]}),t})(),D_=(()=>{class t{constructor(){this.title="demo",this.source=[],this.destination=[],this.source=[{name:"one"},{name:"two"},{name:"tree"},{name:"four"}]}}return t.\u0275fac=function(e){return new(e||t)},t.\u0275cmp=ue({type:t,selectors:[["app-root"]],decls:1,vars:3,consts:[[3,"source","filter","destination","destinationChange"]],template:function(t,e){1&t&&(uo(0,"material-dual-listbox",0),bo("destinationChange",(function(t){return e.destination=t})),po()),2&t&&co("source",e.source)("filter",!0)("destination",e.destination)},directives:[T_],styles:[""]}),t})(),A_=(()=>{class t{}return t.\u0275mod=me({type:t,bootstrap:[D_]}),t.\u0275inj=ht({factory:function(e){return new(e||t)},providers:[],imports:[[Yc,I_,vf]]}),t})();(function(){if(vi)throw new Error("Cannot enable prod mode after platform setup.");bi=!1})(),Qc().bootstrapModule(A_).catch(t=>console.error(t))},zn8P:function(t,e){function n(t){return Promise.resolve().then((function(){var e=new Error("Cannot find module '"+t+"'");throw e.code="MODULE_NOT_FOUND",e}))}n.keys=function(){return[]},n.resolve=n,t.exports=n,n.id="zn8P"}},[[0,0]]]); \ No newline at end of file diff --git a/docs/main.5f55592975ba9fe21a82.js b/docs/main.5f55592975ba9fe21a82.js new file mode 100644 index 0000000..4cbd1e4 --- /dev/null +++ b/docs/main.5f55592975ba9fe21a82.js @@ -0,0 +1 @@ +(window.webpackJsonp=window.webpackJsonp||[]).push([[1],{0:function(t,e,n){t.exports=n("zUnb")},zUnb:function(t,e,n){"use strict";function i(t){return"function"==typeof t}n.r(e);let s=!1;const r={Promise:void 0,set useDeprecatedSynchronousErrorHandling(t){if(t){const t=new Error;console.warn("DEPRECATED! RxJS was set to use deprecated synchronous error handling behavior by code at: \n"+t.stack)}else s&&console.log("RxJS: Back to a better error behavior. Thank you. <3");s=t},get useDeprecatedSynchronousErrorHandling(){return s}};function o(t){setTimeout(()=>{throw t},0)}const a={closed:!0,next(t){},error(t){if(r.useDeprecatedSynchronousErrorHandling)throw t;o(t)},complete(){}},l=(()=>Array.isArray||(t=>t&&"number"==typeof t.length))();function c(t){return null!==t&&"object"==typeof t}const h=(()=>{function t(t){return Error.call(this),this.message=t?`${t.length} errors occurred during unsubscription:\n${t.map((t,e)=>`${e+1}) ${t.toString()}`).join("\n ")}`:"",this.name="UnsubscriptionError",this.errors=t,this}return t.prototype=Object.create(Error.prototype),t})();let u=(()=>{class t{constructor(t){this.closed=!1,this._parentOrParents=null,this._subscriptions=null,t&&(this._unsubscribe=t)}unsubscribe(){let e;if(this.closed)return;let{_parentOrParents:n,_unsubscribe:s,_subscriptions:r}=this;if(this.closed=!0,this._parentOrParents=null,this._subscriptions=null,n instanceof t)n.remove(this);else if(null!==n)for(let t=0;tt.concat(e instanceof h?e.errors:e),[])}const p=(()=>"function"==typeof Symbol?Symbol("rxSubscriber"):"@@rxSubscriber_"+Math.random())();class f extends u{constructor(t,e,n){switch(super(),this.syncErrorValue=null,this.syncErrorThrown=!1,this.syncErrorThrowable=!1,this.isStopped=!1,arguments.length){case 0:this.destination=a;break;case 1:if(!t){this.destination=a;break}if("object"==typeof t){t instanceof f?(this.syncErrorThrowable=t.syncErrorThrowable,this.destination=t,t.add(this)):(this.syncErrorThrowable=!0,this.destination=new m(this,t));break}default:this.syncErrorThrowable=!0,this.destination=new m(this,t,e,n)}}[p](){return this}static create(t,e,n){const i=new f(t,e,n);return i.syncErrorThrowable=!1,i}next(t){this.isStopped||this._next(t)}error(t){this.isStopped||(this.isStopped=!0,this._error(t))}complete(){this.isStopped||(this.isStopped=!0,this._complete())}unsubscribe(){this.closed||(this.isStopped=!0,super.unsubscribe())}_next(t){this.destination.next(t)}_error(t){this.destination.error(t),this.unsubscribe()}_complete(){this.destination.complete(),this.unsubscribe()}_unsubscribeAndRecycle(){const{_parentOrParents:t}=this;return this._parentOrParents=null,this.unsubscribe(),this.closed=!1,this.isStopped=!1,this._parentOrParents=t,this}}class m extends f{constructor(t,e,n,s){let r;super(),this._parentSubscriber=t;let o=this;i(e)?r=e:e&&(r=e.next,n=e.error,s=e.complete,e!==a&&(o=Object.create(e),i(o.unsubscribe)&&this.add(o.unsubscribe.bind(o)),o.unsubscribe=this.unsubscribe.bind(this))),this._context=o,this._next=r,this._error=n,this._complete=s}next(t){if(!this.isStopped&&this._next){const{_parentSubscriber:e}=this;r.useDeprecatedSynchronousErrorHandling&&e.syncErrorThrowable?this.__tryOrSetError(e,this._next,t)&&this.unsubscribe():this.__tryOrUnsub(this._next,t)}}error(t){if(!this.isStopped){const{_parentSubscriber:e}=this,{useDeprecatedSynchronousErrorHandling:n}=r;if(this._error)n&&e.syncErrorThrowable?(this.__tryOrSetError(e,this._error,t),this.unsubscribe()):(this.__tryOrUnsub(this._error,t),this.unsubscribe());else if(e.syncErrorThrowable)n?(e.syncErrorValue=t,e.syncErrorThrown=!0):o(t),this.unsubscribe();else{if(this.unsubscribe(),n)throw t;o(t)}}}complete(){if(!this.isStopped){const{_parentSubscriber:t}=this;if(this._complete){const e=()=>this._complete.call(this._context);r.useDeprecatedSynchronousErrorHandling&&t.syncErrorThrowable?(this.__tryOrSetError(t,e),this.unsubscribe()):(this.__tryOrUnsub(e),this.unsubscribe())}else this.unsubscribe()}}__tryOrUnsub(t,e){try{t.call(this._context,e)}catch(n){if(this.unsubscribe(),r.useDeprecatedSynchronousErrorHandling)throw n;o(n)}}__tryOrSetError(t,e,n){if(!r.useDeprecatedSynchronousErrorHandling)throw new Error("bad call");try{e.call(this._context,n)}catch(i){return r.useDeprecatedSynchronousErrorHandling?(t.syncErrorValue=i,t.syncErrorThrown=!0,!0):(o(i),!0)}return!1}_unsubscribe(){const{_parentSubscriber:t}=this;this._context=null,this._parentSubscriber=null,t.unsubscribe()}}const g=(()=>"function"==typeof Symbol&&Symbol.observable||"@@observable")();function _(t){return t}let y=(()=>{class t{constructor(t){this._isScalar=!1,t&&(this._subscribe=t)}lift(e){const n=new t;return n.source=this,n.operator=e,n}subscribe(t,e,n){const{operator:i}=this,s=function(t,e,n){if(t){if(t instanceof f)return t;if(t[p])return t[p]()}return t||e||n?new f(t,e,n):new f(a)}(t,e,n);if(s.add(i?i.call(s,this.source):this.source||r.useDeprecatedSynchronousErrorHandling&&!s.syncErrorThrowable?this._subscribe(s):this._trySubscribe(s)),r.useDeprecatedSynchronousErrorHandling&&s.syncErrorThrowable&&(s.syncErrorThrowable=!1,s.syncErrorThrown))throw s.syncErrorValue;return s}_trySubscribe(t){try{return this._subscribe(t)}catch(e){r.useDeprecatedSynchronousErrorHandling&&(t.syncErrorThrown=!0,t.syncErrorValue=e),function(t){for(;t;){const{closed:e,destination:n,isStopped:i}=t;if(e||i)return!1;t=n&&n instanceof f?n:null}return!0}(t)?t.error(e):console.warn(e)}}forEach(t,e){return new(e=b(e))((e,n)=>{let i;i=this.subscribe(e=>{try{t(e)}catch(s){n(s),i&&i.unsubscribe()}},n,e)})}_subscribe(t){const{source:e}=this;return e&&e.subscribe(t)}[g](){return this}pipe(...t){return 0===t.length?this:(0===(e=t).length?_:1===e.length?e[0]:function(t){return e.reduce((t,e)=>e(t),t)})(this);var e}toPromise(t){return new(t=b(t))((t,e)=>{let n;this.subscribe(t=>n=t,t=>e(t),()=>t(n))})}}return t.create=e=>new t(e),t})();function b(t){if(t||(t=r.Promise||Promise),!t)throw new Error("no Promise impl found");return t}const v=(()=>{function t(){return Error.call(this),this.message="object unsubscribed",this.name="ObjectUnsubscribedError",this}return t.prototype=Object.create(Error.prototype),t})();class w extends u{constructor(t,e){super(),this.subject=t,this.subscriber=e,this.closed=!1}unsubscribe(){if(this.closed)return;this.closed=!0;const t=this.subject,e=t.observers;if(this.subject=null,!e||0===e.length||t.isStopped||t.closed)return;const n=e.indexOf(this.subscriber);-1!==n&&e.splice(n,1)}}class C extends f{constructor(t){super(t),this.destination=t}}let E=(()=>{class t extends y{constructor(){super(),this.observers=[],this.closed=!1,this.isStopped=!1,this.hasError=!1,this.thrownError=null}[p](){return new C(this)}lift(t){const e=new S(this,this);return e.operator=t,e}next(t){if(this.closed)throw new v;if(!this.isStopped){const{observers:e}=this,n=e.length,i=e.slice();for(let s=0;snew S(t,e),t})();class S extends E{constructor(t,e){super(),this.destination=t,this.source=e}next(t){const{destination:e}=this;e&&e.next&&e.next(t)}error(t){const{destination:e}=this;e&&e.error&&this.destination.error(t)}complete(){const{destination:t}=this;t&&t.complete&&this.destination.complete()}_subscribe(t){const{source:e}=this;return e?this.source.subscribe(t):u.EMPTY}}function x(t){return t&&"function"==typeof t.schedule}class k extends f{constructor(t,e,n){super(),this.parent=t,this.outerValue=e,this.outerIndex=n,this.index=0}_next(t){this.parent.notifyNext(this.outerValue,t,this.outerIndex,this.index++,this)}_error(t){this.parent.notifyError(t,this),this.unsubscribe()}_complete(){this.parent.notifyComplete(this),this.unsubscribe()}}const T=t=>e=>{for(let n=0,i=t.length;nt&&"number"==typeof t.length&&"function"!=typeof t;function P(t){return!!t&&"function"!=typeof t.subscribe&&"function"==typeof t.then}const O=t=>{if(t&&"function"==typeof t[g])return i=t,t=>{const e=i[g]();if("function"!=typeof e.subscribe)throw new TypeError("Provided object does not correctly implement Symbol.observable");return e.subscribe(t)};if(A(t))return T(t);if(P(t))return n=t,t=>(n.then(e=>{t.closed||(t.next(e),t.complete())},e=>t.error(e)).then(null,o),t);if(t&&"function"==typeof t[D])return e=t,t=>{const n=e[D]();for(;;){const e=n.next();if(e.done){t.complete();break}if(t.next(e.value),t.closed)break}return"function"==typeof n.return&&t.add(()=>{n.return&&n.return()}),t};{const e=c(t)?"an invalid object":`'${t}'`;throw new TypeError(`You provided ${e} where a stream was expected. You can provide an Observable, Promise, Array, or Iterable.`)}var e,n,i};function R(t,e,n,i,s=new k(t,n,i)){if(!s.closed)return e instanceof y?e.subscribe(s):O(e)(s)}class N extends f{notifyNext(t,e,n,i,s){this.destination.next(e)}notifyError(t,e){this.destination.error(t)}notifyComplete(t){this.destination.complete()}}function F(t,e){return function(n){if("function"!=typeof t)throw new TypeError("argument is not a function. Are you looking for `mapTo()`?");return n.lift(new V(t,e))}}class V{constructor(t,e){this.project=t,this.thisArg=e}call(t,e){return e.subscribe(new M(t,this.project,this.thisArg))}}class M extends f{constructor(t,e,n){super(t),this.project=e,this.count=0,this.thisArg=n||this}_next(t){let e;try{e=this.project.call(this.thisArg,t,this.count++)}catch(n){return void this.destination.error(n)}this.destination.next(e)}}function L(t,e){return new y(n=>{const i=new u;let s=0;return i.add(e.schedule((function(){s!==t.length?(n.next(t[s++]),n.closed||i.add(this.schedule())):n.complete()}))),i})}function j(t,e){return e?function(t,e){if(null!=t){if(function(t){return t&&"function"==typeof t[g]}(t))return function(t,e){return new y(n=>{const i=new u;return i.add(e.schedule(()=>{const s=t[g]();i.add(s.subscribe({next(t){i.add(e.schedule(()=>n.next(t)))},error(t){i.add(e.schedule(()=>n.error(t)))},complete(){i.add(e.schedule(()=>n.complete()))}}))})),i})}(t,e);if(P(t))return function(t,e){return new y(n=>{const i=new u;return i.add(e.schedule(()=>t.then(t=>{i.add(e.schedule(()=>{n.next(t),i.add(e.schedule(()=>n.complete()))}))},t=>{i.add(e.schedule(()=>n.error(t)))}))),i})}(t,e);if(A(t))return L(t,e);if(function(t){return t&&"function"==typeof t[D]}(t)||"string"==typeof t)return function(t,e){if(!t)throw new Error("Iterable cannot be null");return new y(n=>{const i=new u;let s;return i.add(()=>{s&&"function"==typeof s.return&&s.return()}),i.add(e.schedule(()=>{s=t[D](),i.add(e.schedule((function(){if(n.closed)return;let t,e;try{const n=s.next();t=n.value,e=n.done}catch(i){return void n.error(i)}e?n.complete():(n.next(t),this.schedule())})))})),i})}(t,e)}throw new TypeError((null!==t&&typeof t||t)+" is not observable")}(t,e):t instanceof y?t:new y(O(t))}function B(t,e,n=Number.POSITIVE_INFINITY){return"function"==typeof e?i=>i.pipe(B((n,i)=>j(t(n,i)).pipe(F((t,s)=>e(n,t,i,s))),n)):("number"==typeof e&&(n=e),e=>e.lift(new H(t,n)))}class H{constructor(t,e=Number.POSITIVE_INFINITY){this.project=t,this.concurrent=e}call(t,e){return e.subscribe(new z(t,this.project,this.concurrent))}}class z extends N{constructor(t,e,n=Number.POSITIVE_INFINITY){super(t),this.project=e,this.concurrent=n,this.hasCompleted=!1,this.buffer=[],this.active=0,this.index=0}_next(t){this.active0?this._next(e.shift()):0===this.active&&this.hasCompleted&&this.destination.complete()}}function q(t=Number.POSITIVE_INFINITY){return B(_,t)}function $(t,e){return e?L(t,e):new y(T(t))}function U(...t){let e=Number.POSITIVE_INFINITY,n=null,i=t[t.length-1];return x(i)?(n=t.pop(),t.length>1&&"number"==typeof t[t.length-1]&&(e=t.pop())):"number"==typeof i&&(e=t.pop()),null===n&&1===t.length&&t[0]instanceof y?t[0]:q(e)($(t,n))}function G(){return function(t){return t.lift(new W(t))}}class W{constructor(t){this.connectable=t}call(t,e){const{connectable:n}=this;n._refCount++;const i=new Z(t,n),s=e.subscribe(i);return i.closed||(i.connection=n.connect()),s}}class Z extends f{constructor(t,e){super(t),this.connectable=e}_unsubscribe(){const{connectable:t}=this;if(!t)return void(this.connection=null);this.connectable=null;const e=t._refCount;if(e<=0)return void(this.connection=null);if(t._refCount=e-1,e>1)return void(this.connection=null);const{connection:n}=this,i=t._connection;this.connection=null,!i||n&&i!==n||i.unsubscribe()}}class Q extends y{constructor(t,e){super(),this.source=t,this.subjectFactory=e,this._refCount=0,this._isComplete=!1}_subscribe(t){return this.getSubject().subscribe(t)}getSubject(){const t=this._subject;return t&&!t.isStopped||(this._subject=this.subjectFactory()),this._subject}connect(){let t=this._connection;return t||(this._isComplete=!1,t=this._connection=new u,t.add(this.source.subscribe(new Y(this.getSubject(),this))),t.closed&&(this._connection=null,t=u.EMPTY)),t}refCount(){return G()(this)}}const K=(()=>{const t=Q.prototype;return{operator:{value:null},_refCount:{value:0,writable:!0},_subject:{value:null,writable:!0},_connection:{value:null,writable:!0},_subscribe:{value:t._subscribe},_isComplete:{value:t._isComplete,writable:!0},getSubject:{value:t.getSubject},connect:{value:t.connect},refCount:{value:t.refCount}}})();class Y extends C{constructor(t,e){super(t),this.connectable=e}_error(t){this._unsubscribe(),super._error(t)}_complete(){this.connectable._isComplete=!0,this._unsubscribe(),super._complete()}_unsubscribe(){const t=this.connectable;if(t){this.connectable=null;const e=t._connection;t._refCount=0,t._subject=null,t._connection=null,e&&e.unsubscribe()}}}function J(){return new E}function X(){return t=>{return G()((e=J,function(t){let n;n="function"==typeof e?e:function(){return e};const i=Object.create(t,K);return i.source=t,i.subjectFactory=n,i})(t));var e}}function tt(t){return{toString:t}.toString()}function et(t,e,n){return tt(()=>{const i=function(t){return function(...e){if(t){const n=t(...e);for(const t in n)this[t]=n[t]}}}(e);function s(...t){if(this instanceof s)return i.apply(this,t),this;const e=new s(...t);return n.annotation=e,n;function n(t,n,i){const s=t.hasOwnProperty("__parameters__")?t.__parameters__:Object.defineProperty(t,"__parameters__",{value:[]}).__parameters__;for(;s.length<=i;)s.push(null);return(s[i]=s[i]||[]).push(e),t}}return n&&(s.prototype=Object.create(n.prototype)),s.prototype.ngMetadataName=t,s.annotationCls=s,s})}const nt=et("Inject",t=>({token:t})),it=et("Optional"),st=et("Self"),rt=et("SkipSelf");var ot=function(t){return t[t.Default=0]="Default",t[t.Host=1]="Host",t[t.Self=2]="Self",t[t.SkipSelf=4]="SkipSelf",t[t.Optional=8]="Optional",t}({});function at(t){for(let e in t)if(t[e]===at)return e;throw Error("Could not find renamed property on target object.")}function lt(t,e){for(const n in e)e.hasOwnProperty(n)&&!t.hasOwnProperty(n)&&(t[n]=e[n])}function ct(t){return{token:t.token,providedIn:t.providedIn||null,factory:t.factory,value:void 0}}function ht(t){return{factory:t.factory,providers:t.providers||[],imports:t.imports||[]}}function ut(t){return dt(t,t[ft])||dt(t,t[_t])}function dt(t,e){return e&&e.token===t?e:null}function pt(t){return t&&(t.hasOwnProperty(mt)||t.hasOwnProperty(yt))?t[mt]:null}const ft=at({"\u0275prov":at}),mt=at({"\u0275inj":at}),gt=at({"\u0275provFallback":at}),_t=at({ngInjectableDef:at}),yt=at({ngInjectorDef:at});function bt(t){if("string"==typeof t)return t;if(Array.isArray(t))return"["+t.map(bt).join(", ")+"]";if(null==t)return""+t;if(t.overriddenName)return""+t.overriddenName;if(t.name)return""+t.name;const e=t.toString();if(null==e)return""+e;const n=e.indexOf("\n");return-1===n?e:e.substring(0,n)}function vt(t,e){return null==t||""===t?null===e?"":e:null==e||""===e?t:t+" "+e}const wt=at({__forward_ref__:at});function Ct(t){return t.__forward_ref__=Ct,t.toString=function(){return bt(this())},t}function Et(t){return St(t)?t():t}function St(t){return"function"==typeof t&&t.hasOwnProperty(wt)&&t.__forward_ref__===Ct}const xt="undefined"!=typeof globalThis&&globalThis,kt="undefined"!=typeof window&&window,Tt="undefined"!=typeof self&&"undefined"!=typeof WorkerGlobalScope&&self instanceof WorkerGlobalScope&&self,It="undefined"!=typeof global&&global,Dt=xt||It||kt||Tt,At=at({"\u0275cmp":at}),Pt=at({"\u0275dir":at}),Ot=at({"\u0275pipe":at}),Rt=at({"\u0275mod":at}),Nt=at({"\u0275loc":at}),Ft=at({"\u0275fac":at}),Vt=at({__NG_ELEMENT_ID__:at});class Mt{constructor(t,e){this._desc=t,this.ngMetadataName="InjectionToken",this.\u0275prov=void 0,"number"==typeof e?this.__NG_ELEMENT_ID__=e:void 0!==e&&(this.\u0275prov=ct({token:this,providedIn:e.providedIn||"root",factory:e.factory}))}toString(){return"InjectionToken "+this._desc}}const Lt=new Mt("INJECTOR",-1),jt={},Bt=/\n/gm,Ht=at({provide:String,useValue:at});let zt,qt=void 0;function $t(t){const e=qt;return qt=t,e}function Ut(t){const e=zt;return zt=t,e}function Gt(t,e=ot.Default){if(void 0===qt)throw new Error("inject() must be called from an injection context");return null===qt?Qt(t,void 0,e):qt.get(t,e&ot.Optional?null:void 0,e)}function Wt(t,e=ot.Default){return(zt||Gt)(Et(t),e)}const Zt=Wt;function Qt(t,e,n){const i=ut(t);if(i&&"root"==i.providedIn)return void 0===i.value?i.value=i.factory():i.value;if(n&ot.Optional)return null;if(void 0!==e)return e;throw new Error(`Injector: NOT_FOUND [${bt(t)}]`)}function Kt(t){const e=[];for(let n=0;nArray.isArray(t)?Xt(t,e):e(t))}function te(t,e,n){e>=t.length?t.push(n):t.splice(e,0,n)}function ee(t,e){return e>=t.length-1?t.pop():t.splice(e,1)[0]}function ne(t,e){const n=[];for(let i=0;i=0?t[1|i]=n:(i=~i,function(t,e,n,i){let s=t.length;if(s==e)t.push(n,i);else if(1===s)t.push(i,t[0]),t[0]=n;else{for(s--,t.push(t[s-1],t[s]);s>e;)t[s]=t[s-2],s--;t[e]=n,t[e+1]=i}}(t,i,e,n)),i}function se(t,e){const n=re(t,e);if(n>=0)return t[1|n]}function re(t,e){return function(t,e,n){let i=0,s=t.length>>1;for(;s!==i;){const n=i+(s-i>>1),r=t[n<<1];if(e===r)return n<<1;r>e?s=n:i=n+1}return~(s<<1)}(t,e)}var oe=function(t){return t[t.OnPush=0]="OnPush",t[t.Default=1]="Default",t}({}),ae=function(t){return t[t.Emulated=0]="Emulated",t[t.Native=1]="Native",t[t.None=2]="None",t[t.ShadowDom=3]="ShadowDom",t}({});const le={},ce=[];let he=0;function ue(t){return tt(()=>{const e={},n={type:t.type,providersResolver:null,decls:t.decls,vars:t.vars,factory:null,template:t.template||null,consts:t.consts||null,ngContentSelectors:t.ngContentSelectors,hostBindings:t.hostBindings||null,hostVars:t.hostVars||0,hostAttrs:t.hostAttrs||null,contentQueries:t.contentQueries||null,declaredInputs:e,inputs:null,outputs:null,exportAs:t.exportAs||null,onPush:t.changeDetection===oe.OnPush,directiveDefs:null,pipeDefs:null,selectors:t.selectors||ce,viewQuery:t.viewQuery||null,features:t.features||null,data:t.data||{},encapsulation:t.encapsulation||ae.Emulated,id:"c",styles:t.styles||ce,_:null,setInput:null,schemas:t.schemas||null,tView:null},i=t.directives,s=t.features,r=t.pipes;return n.id+=he++,n.inputs=ge(t.inputs,e),n.outputs=ge(t.outputs),s&&s.forEach(t=>t(n)),n.directiveDefs=i?()=>("function"==typeof i?i():i).map(de):null,n.pipeDefs=r?()=>("function"==typeof r?r():r).map(pe):null,n})}function de(t){return ye(t)||function(t){return t[Pt]||null}(t)}function pe(t){return function(t){return t[Ot]||null}(t)}const fe={};function me(t){const e={type:t.type,bootstrap:t.bootstrap||ce,declarations:t.declarations||ce,imports:t.imports||ce,exports:t.exports||ce,transitiveCompileScopes:null,schemas:t.schemas||null,id:t.id||null};return null!=t.id&&tt(()=>{fe[t.id]=t.type}),e}function ge(t,e){if(null==t)return le;const n={};for(const i in t)if(t.hasOwnProperty(i)){let s=t[i],r=s;Array.isArray(s)&&(r=s[1],s=s[0]),n[s]=i,e&&(e[s]=r)}return n}const _e=ue;function ye(t){return t[At]||null}function be(t,e){return t.hasOwnProperty(Ft)?t[Ft]:null}function ve(t,e){const n=t[Rt]||null;if(!n&&!0===e)throw new Error(`Type ${bt(t)} does not have '\u0275mod' property.`);return n}function we(t){return Array.isArray(t)&&"object"==typeof t[1]}function Ce(t){return Array.isArray(t)&&!0===t[1]}function Ee(t){return 0!=(8&t.flags)}function Se(t){return 2==(2&t.flags)}function xe(t){return 1==(1&t.flags)}function ke(t){return null!==t.template}function Te(t){return 0!=(512&t[2])}class Ie{constructor(t,e,n){this.previousValue=t,this.currentValue=e,this.firstChange=n}isFirstChange(){return this.firstChange}}function De(){return Ae}function Ae(t){return t.type.prototype.ngOnChanges&&(t.setInput=Oe),Pe}function Pe(){const t=Re(this),e=null==t?void 0:t.current;if(e){const n=t.previous;if(n===le)t.previous=e;else for(let t in e)n[t]=e[t];t.current=null,this.ngOnChanges(e)}}function Oe(t,e,n,i){const s=Re(t)||function(t,e){return t.__ngSimpleChanges__=e}(t,{previous:le,current:null}),r=s.current||(s.current={}),o=s.previous,a=this.declaredInputs[n],l=o[a];r[a]=new Ie(l&&l.currentValue,e,o===le),t[i]=e}function Re(t){return t.__ngSimpleChanges__||null}De.ngInherit=!0;let Ne=void 0;function Fe(t){return!!t.listen}const Ve={createRenderer:(t,e)=>void 0!==Ne?Ne:"undefined"!=typeof document?document:void 0};function Me(t){for(;Array.isArray(t);)t=t[0];return t}function Le(t,e){return Me(e[t+20])}function je(t,e){return Me(e[t.index])}function Be(t,e){return t.data[e+20]}function He(t,e){const n=e[t];return we(n)?n:n[0]}function ze(t){const e=function(t){return t.__ngContext__||null}(t);return e?Array.isArray(e)?e:e.lView:null}function qe(t){return 4==(4&t[2])}function $e(t){return 128==(128&t[2])}function Ue(t,e){return null===t||null==e?null:t[e]}function Ge(t){t[18]=0}function We(t,e){t[5]+=e;let n=t,i=t[3];for(;null!==i&&(1===e&&1===n[5]||-1===e&&0===n[5]);)i[5]+=e,n=i,i=i[3]}const Ze={lFrame:mn(null),bindingsEnabled:!0,checkNoChangesMode:!1};function Qe(){return Ze.bindingsEnabled}function Ke(){return Ze.lFrame.lView}function Ye(){return Ze.lFrame.tView}function Je(t){Ze.lFrame.contextLView=t}function Xe(){return Ze.lFrame.previousOrParentTNode}function tn(t,e){Ze.lFrame.previousOrParentTNode=t,Ze.lFrame.isParent=e}function en(){return Ze.lFrame.isParent}function nn(){Ze.lFrame.isParent=!1}function sn(){return Ze.checkNoChangesMode}function rn(t){Ze.checkNoChangesMode=t}function on(){return Ze.lFrame.bindingIndex++}function an(t){const e=Ze.lFrame,n=e.bindingIndex;return e.bindingIndex=e.bindingIndex+t,n}function ln(t,e){const n=Ze.lFrame;n.bindingIndex=n.bindingRootIndex=t,cn(e)}function cn(t){Ze.lFrame.currentDirectiveIndex=t}function hn(){return Ze.lFrame.currentQueryIndex}function un(t){Ze.lFrame.currentQueryIndex=t}function dn(t,e){const n=fn();Ze.lFrame=n,n.previousOrParentTNode=e,n.lView=t}function pn(t,e){const n=fn(),i=t[1];Ze.lFrame=n,n.previousOrParentTNode=e,n.lView=t,n.tView=i,n.contextLView=t,n.bindingIndex=i.bindingStartIndex}function fn(){const t=Ze.lFrame,e=null===t?null:t.child;return null===e?mn(t):e}function mn(t){const e={previousOrParentTNode:null,isParent:!0,lView:null,tView:null,selectedIndex:0,contextLView:null,elementDepthCount:0,currentNamespace:null,currentDirectiveIndex:-1,bindingRootIndex:-1,bindingIndex:-1,currentQueryIndex:0,parent:t,child:null};return null!==t&&(t.child=e),e}function gn(){const t=Ze.lFrame;return Ze.lFrame=t.parent,t.previousOrParentTNode=null,t.lView=null,t}const _n=gn;function yn(){const t=gn();t.isParent=!0,t.tView=null,t.selectedIndex=0,t.contextLView=null,t.elementDepthCount=0,t.currentDirectiveIndex=-1,t.currentNamespace=null,t.bindingRootIndex=-1,t.bindingIndex=-1,t.currentQueryIndex=0}function bn(){return Ze.lFrame.selectedIndex}function vn(t){Ze.lFrame.selectedIndex=t}function wn(){const t=Ze.lFrame;return Be(t.tView,t.selectedIndex)}function Cn(t,e){for(let n=e.directiveStart,i=e.directiveEnd;n=i)break}else e[o]<0&&(t[18]+=65536),(r>11>16&&(3&t[2])===e&&(t[2]+=2048,r.call(o)):r.call(o)}class In{constructor(t,e,n){this.factory=t,this.resolving=!1,this.canSeeViewProviders=e,this.injectImpl=n}}function Dn(t,e,n){const i=Fe(t);let s=0;for(;se){o=r-1;break}}}for(;r>16}function Mn(t,e){let n=Vn(t),i=e;for(;n>0;)i=i[15],n--;return i}function Ln(t){return"string"==typeof t?t:null==t?"":""+t}function jn(t){return"function"==typeof t?t.name||t.toString():"object"==typeof t&&null!=t&&"function"==typeof t.type?t.type.name||t.type.toString():Ln(t)}const Bn=(()=>("undefined"!=typeof requestAnimationFrame&&requestAnimationFrame||setTimeout).bind(Dt))();function Hn(t){return t instanceof Function?t():t}let zn=!0;function qn(t){const e=zn;return zn=t,e}let $n=0;function Un(t,e){const n=Wn(t,e);if(-1!==n)return n;const i=e[1];i.firstCreatePass&&(t.injectorIndex=e.length,Gn(i.data,t),Gn(e,null),Gn(i.blueprint,null));const s=Zn(t,e),r=t.injectorIndex;if(Nn(s)){const t=Fn(s),n=Mn(s,e),i=n[1].data;for(let s=0;s<8;s++)e[r+s]=n[t+s]|i[t+s]}return e[r+8]=s,r}function Gn(t,e){t.push(0,0,0,0,0,0,0,0,e)}function Wn(t,e){return-1===t.injectorIndex||t.parent&&t.parent.injectorIndex===t.injectorIndex||null==e[t.injectorIndex+8]?-1:t.injectorIndex}function Zn(t,e){if(t.parent&&-1!==t.parent.injectorIndex)return t.parent.injectorIndex;let n=e[6],i=1;for(;n&&-1===n.injectorIndex;)n=(e=e[15])?e[6]:null,i++;return n?n.injectorIndex|i<<16:-1}function Qn(t,e,n){!function(t,e,n){let i;"string"==typeof n?i=n.charCodeAt(0)||0:n.hasOwnProperty(Vt)&&(i=n[Vt]),null==i&&(i=n[Vt]=$n++);const s=255&i,r=1<0?255&e:e}(n);if("function"==typeof s){dn(e,t);try{const t=s();if(null!=t||i&ot.Optional)return t;throw new Error(`No provider for ${jn(n)}!`)}finally{_n()}}else if("number"==typeof s){if(-1===s)return new ii(t,e);let r=null,o=Wn(t,e),a=-1,l=i&ot.Host?e[16][6]:null;for((-1===o||i&ot.SkipSelf)&&(a=-1===o?Zn(t,e):e[o+8],ni(i,!1)?(r=e[1],o=Fn(a),e=Mn(a,e)):o=-1);-1!==o;){a=e[o+8];const t=e[1];if(ei(s,o,t.data)){const t=Jn(o,e,n,r,i,l);if(t!==Yn)return t}ni(i,e[1].data[o+8]===l)&&ei(s,o,e)?(r=t,o=Fn(a),e=Mn(a,e)):o=-1}}}if(i&ot.Optional&&void 0===s&&(s=null),0==(i&(ot.Self|ot.Host))){const t=e[9],r=Ut(void 0);try{return t?t.get(n,s,i&ot.Optional):Qt(n,s,i&ot.Optional)}finally{Ut(r)}}if(i&ot.Optional)return s;throw new Error(`NodeInjector: NOT_FOUND [${jn(n)}]`)}const Yn={};function Jn(t,e,n,i,s,r){const o=e[1],a=o.data[t+8],l=Xn(a,o,n,null==i?Se(a)&&zn:i!=o&&3===a.type,s&ot.Host&&r===a);return null!==l?ti(e,o,l,a):Yn}function Xn(t,e,n,i,s){const r=t.providerIndexes,o=e.data,a=1048575&r,l=t.directiveStart,c=r>>20,h=s?a+c:t.directiveEnd;for(let u=i?a:a+c;u=l&&t.type===n)return u}if(s){const t=o[l];if(t&&ke(t)&&t.type===n)return l}return null}function ti(t,e,n,i){let s=t[n];const r=e.data;if(s instanceof In){const o=s;if(o.resolving)throw new Error("Circular dep for "+jn(r[n]));const a=qn(o.canSeeViewProviders);let l;o.resolving=!0,o.injectImpl&&(l=Ut(o.injectImpl)),dn(t,i);try{s=t[n]=o.factory(void 0,r,t,i),e.firstCreatePass&&n>=i.directiveStart&&function(t,e,n){const{ngOnChanges:i,ngOnInit:s,ngDoCheck:r}=e.type.prototype;if(i){const i=Ae(e);(n.preOrderHooks||(n.preOrderHooks=[])).push(t,i),(n.preOrderCheckHooks||(n.preOrderCheckHooks=[])).push(t,i)}s&&(n.preOrderHooks||(n.preOrderHooks=[])).push(0-t,s),r&&((n.preOrderHooks||(n.preOrderHooks=[])).push(t,r),(n.preOrderCheckHooks||(n.preOrderCheckHooks=[])).push(t,r))}(n,r[n],e)}finally{o.injectImpl&&Ut(l),qn(a),o.resolving=!1,_n()}}return s}function ei(t,e,n){const i=64&t,s=32&t;let r;return r=128&t?i?s?n[e+7]:n[e+6]:s?n[e+5]:n[e+4]:i?s?n[e+3]:n[e+2]:s?n[e+1]:n[e],!!(r&1<{const t=si(Et(e));return t?t():null};let n=be(e);if(null===n){const t=pt(e);n=t&&t.factory}return n||null}function ri(t){return tt(()=>{const e=t.prototype.constructor,n=e[Ft]||si(e),i=Object.prototype;let s=Object.getPrototypeOf(t.prototype).constructor;for(;s&&s!==i;){const t=s[Ft]||si(s);if(t&&t!==n)return t;s=Object.getPrototypeOf(s)}return t=>new t})}function oi(t){return t.ngDebugContext}function ai(t){return t.ngOriginalError}function li(t,...e){t.error(...e)}class ci{constructor(){this._console=console}handleError(t){const e=this._findOriginalError(t),n=this._findContext(t),i=function(t){return t.ngErrorLogger||li}(t);i(this._console,"ERROR",t),e&&i(this._console,"ORIGINAL ERROR",e),n&&i(this._console,"ERROR CONTEXT",n)}_findContext(t){return t?oi(t)?oi(t):this._findContext(ai(t)):null}_findOriginalError(t){let e=ai(t);for(;e&&ai(e);)e=ai(e);return e}}class hi{constructor(t){this.changingThisBreaksApplicationSecurity=t}toString(){return"SafeValue must use [property]=binding: "+this.changingThisBreaksApplicationSecurity+" (see http://g.co/ng/security#xss)"}}class ui extends hi{getTypeName(){return"HTML"}}class di extends hi{getTypeName(){return"Style"}}class pi extends hi{getTypeName(){return"Script"}}class fi extends hi{getTypeName(){return"URL"}}class mi extends hi{getTypeName(){return"ResourceURL"}}function gi(t){return t instanceof hi?t.changingThisBreaksApplicationSecurity:t}function _i(t,e){const n=yi(t);if(null!=n&&n!==e){if("ResourceURL"===n&&"URL"===e)return!0;throw new Error(`Required a safe ${e}, got a ${n} (see http://g.co/ng/security#xss)`)}return n===e}function yi(t){return t instanceof hi&&t.getTypeName()||null}let bi=!0,vi=!1;function wi(){return vi=!0,bi}class Ci{getInertBodyElement(t){t=""+t+"";try{const e=(new window.DOMParser).parseFromString(t,"text/html").body;return e.removeChild(e.firstChild),e}catch(e){return null}}}class Ei{constructor(t){if(this.defaultDoc=t,this.inertDocument=this.defaultDoc.implementation.createHTMLDocument("sanitization-inert"),null==this.inertDocument.body){const t=this.inertDocument.createElement("html");this.inertDocument.appendChild(t);const e=this.inertDocument.createElement("body");t.appendChild(e)}}getInertBodyElement(t){const e=this.inertDocument.createElement("template");if("content"in e)return e.innerHTML=t,e;const n=this.inertDocument.createElement("body");return n.innerHTML=t,this.defaultDoc.documentMode&&this.stripCustomNsAttrs(n),n}stripCustomNsAttrs(t){const e=t.attributes;for(let i=e.length-1;0ki(t.trim())).join(", ")),this.buf.push(" ",e,'="',Hi(o),'"')}var i;return this.buf.push(">"),!0}endElement(t){const e=t.nodeName.toLowerCase();Ri.hasOwnProperty(e)&&!Di.hasOwnProperty(e)&&(this.buf.push(""))}chars(t){this.buf.push(Hi(t))}checkClobberedElement(t,e){if(e&&(t.compareDocumentPosition(e)&Node.DOCUMENT_POSITION_CONTAINED_BY)===Node.DOCUMENT_POSITION_CONTAINED_BY)throw new Error("Failed to sanitize html because the element is clobbered: "+t.outerHTML);return e}}const ji=/[\uD800-\uDBFF][\uDC00-\uDFFF]/g,Bi=/([^\#-~ |!])/g;function Hi(t){return t.replace(/&/g,"&").replace(ji,(function(t){return"&#"+(1024*(t.charCodeAt(0)-55296)+(t.charCodeAt(1)-56320)+65536)+";"})).replace(Bi,(function(t){return"&#"+t.charCodeAt(0)+";"})).replace(//g,">")}let zi;function qi(t){return"content"in t&&function(t){return t.nodeType===Node.ELEMENT_NODE&&"TEMPLATE"===t.nodeName}(t)?t.content:null}var $i=function(t){return t[t.NONE=0]="NONE",t[t.HTML=1]="HTML",t[t.STYLE=2]="STYLE",t[t.SCRIPT=3]="SCRIPT",t[t.URL=4]="URL",t[t.RESOURCE_URL=5]="RESOURCE_URL",t}({});function Ui(t,e){t.__ngContext__=e}function Gi(t){throw new Error("Multiple components match node with tagname "+t.tagName)}function Wi(){throw new Error("Cannot mix multi providers and regular providers")}function Zi(t,e,n){let i=t.length;for(;;){const s=t.indexOf(e,n);if(-1===s)return s;if(0===s||t.charCodeAt(s-1)<=32){const n=e.length;if(s+n===i||t.charCodeAt(s+n)<=32)return s}n=s+1}}function Qi(t,e,n){let i=0;for(;ir?"":s[h+1].toLowerCase();const e=8&i?t:null;if(e&&-1!==Zi(e,c,0)||2&i&&c!==t){if(Xi(i))return!1;o=!0}}}}else{if(!o&&!Xi(i)&&!Xi(l))return!1;if(o&&Xi(l))continue;o=!1,i=l|1&i}}return Xi(i)||o}function Xi(t){return 0==(1&t)}function ts(t,e,n,i){if(null===e)return-1;let s=0;if(i||!n){let n=!1;for(;s-1)for(n++;n0?'="'+e+'"':"")+"]"}else 8&i?s+="."+o:4&i&&(s+=" "+o);else""===s||Xi(o)||(e+=is(r,s),s=""),i=o,r=r||!Xi(i);n++}return""!==s&&(e+=is(r,s)),e}const rs={};function os(t){const e=t[3];return Ce(e)?e[3]:e}function as(t){return cs(t[13])}function ls(t){return cs(t[4])}function cs(t){for(;null!==t&&!Ce(t);)t=t[4];return t}function hs(t){us(Ye(),Ke(),bn()+t,sn())}function us(t,e,n,i){if(!i)if(3==(3&e[2])){const i=t.preOrderCheckHooks;null!==i&&En(e,i,n)}else{const i=t.preOrderHooks;null!==i&&Sn(e,i,0,n)}vn(n)}function ds(t,e){return t<<17|e<<2}function ps(t){return t>>17&32767}function fs(t){return 2|t}function ms(t){return(131068&t)>>2}function gs(t,e){return-131069&t|e<<2}function _s(t){return 1|t}function ys(t,e){const n=t.contentQueries;if(null!==n)for(let i=0;i20&&us(t,e,0,sn()),n(i,s)}finally{vn(r)}}function ks(t,e,n){if(Ee(e)){const i=e.directiveEnd;for(let s=e.directiveStart;s0&&function t(e){for(let i=as(e);null!==i;i=ls(i))for(let e=10;e0&&t(n)}const n=e[1].components;if(null!==n)for(let i=0;i0&&t(s)}}(n)}}function Qs(t,e){const n=He(e,t),i=n[1];!function(t,e){for(let n=e.length;nPromise.resolve(null))();function nr(t){return t[7]||(t[7]=[])}function ir(t,e){const n=t[9],i=n?n.get(ci,null):null;i&&i.handleError(e)}function sr(t,e,n,i,s){for(let r=0;r0&&(t[n-1][4]=i[4]);const r=ee(t,10+e);cr(i[1],i,!1,null);const o=r[19];null!==o&&o.detachView(r[1]),i[3]=null,i[4]=null,i[2]&=-129}return i}function dr(t,e){if(!(256&e[2])){const n=e[11];Fe(n)&&n.destroyNode&&Sr(t,e,n,3,null,null),function(t){let e=t[13];if(!e)return fr(t[1],t);for(;e;){let n=null;if(we(e))n=e[13];else{const t=e[10];t&&(n=t)}if(!n){for(;e&&!e[4]&&e!==t;)we(e)&&fr(e[1],e),e=pr(e,t);null===e&&(e=t),we(e)&&fr(e[1],e),n=e&&e[4]}e=n}}(e)}}function pr(t,e){let n;return we(t)&&(n=t[6])&&2===n.type?or(n,t):t[3]===e?null:t[3]}function fr(t,e){if(!(256&e[2])){e[2]&=-129,e[2]|=256,function(t,e){let n;if(null!=t&&null!=(n=t.destroyHooks))for(let i=0;i=0?t[a]():t[-a].unsubscribe(),i+=2}else n[i].call(t[n[i+1]]);e[7]=null}}(t,e);const n=e[6];n&&3===n.type&&Fe(e[11])&&e[11].destroy();const i=e[17];if(null!==i&&Ce(e[3])){i!==e[3]&&hr(i,e);const n=e[19];null!==n&&n.detachView(t)}}}function mr(t,e,n){let i=e.parent;for(;null!=i&&(4===i.type||5===i.type);)i=(e=i).parent;if(null==i){const t=n[6];return 2===t.type?ar(t,n):n[0]}if(e&&5===e.type&&4&e.flags)return je(e,n).parentNode;if(2&i.flags){const e=t.data,n=e[e[i.index].directiveStart].encapsulation;if(n!==ae.ShadowDom&&n!==ae.Native)return null}return je(i,n)}function gr(t,e,n,i){Fe(t)?t.insertBefore(e,n,i):e.insertBefore(n,i,!0)}function _r(t,e,n){Fe(t)?t.appendChild(e,n):e.appendChild(n)}function yr(t,e,n,i){null!==i?gr(t,e,n,i):_r(t,e,n)}function br(t,e){return Fe(t)?t.parentNode(e):e.parentNode}function vr(t,e){if(2===t.type){const n=or(t,e);return null===n?null:Cr(n.indexOf(e,10)-10,n)}return 4===t.type||5===t.type?je(t,e):null}function wr(t,e,n,i){const s=mr(t,i,e);if(null!=s){const t=e[11],r=vr(i.parent||e[6],e);if(Array.isArray(n))for(let e=0;e-1&&this._viewContainerRef.detach(t),this._viewContainerRef=null}dr(this._lView[1],this._lView)}onDestroy(t){Ps(this._lView[1],this._lView,null,t)}markForCheck(){Ys(this._cdRefInjectingView||this._lView)}detach(){this._lView[2]&=-129}reattach(){this._lView[2]|=128}detectChanges(){Js(this._lView[1],this._lView,this.context)}checkNoChanges(){!function(t,e,n){rn(!0);try{Js(t,e,n)}finally{rn(!1)}}(this._lView[1],this._lView,this.context)}attachToViewContainerRef(t){if(this._appRef)throw new Error("This view is already attached directly to the ApplicationRef!");this._viewContainerRef=t}detachFromAppRef(){var t;this._appRef=null,Sr(this._lView[1],t=this._lView,t[11],2,null,null)}attachToAppRef(t){if(this._viewContainerRef)throw new Error("This view is already attached to a ViewContainer!");this._appRef=t}}class Dr extends Ir{constructor(t){super(t),this._view=t}detectChanges(){Xs(this._view)}checkNoChanges(){!function(t){rn(!0);try{Xs(t)}finally{rn(!1)}}(this._view)}get context(){return null}}let Ar,Pr,Or;function Rr(t,e,n){return Ar||(Ar=class extends t{}),new Ar(je(e,n))}function Nr(t,e,n,i){return Pr||(Pr=class extends t{constructor(t,e,n){super(),this._declarationView=t,this._declarationTContainer=e,this.elementRef=n}createEmbeddedView(t){const e=this._declarationTContainer.tViews,n=vs(this._declarationView,e,t,16,null,e.node);n[17]=this._declarationView[this._declarationTContainer.index];const i=this._declarationView[19];return null!==i&&(n[19]=i.createEmbeddedView(e)),Cs(e,n,t),new Ir(n)}}),0===n.type?new Pr(i,n,Rr(e,n,i)):null}function Fr(t,e,n,i){let s;Or||(Or=class extends t{constructor(t,e,n){super(),this._lContainer=t,this._hostTNode=e,this._hostView=n}get element(){return Rr(e,this._hostTNode,this._hostView)}get injector(){return new ii(this._hostTNode,this._hostView)}get parentInjector(){const t=Zn(this._hostTNode,this._hostView),e=Mn(t,this._hostView),n=function(t,e,n){if(n.parent&&-1!==n.parent.injectorIndex){const t=n.parent.injectorIndex;let e=n.parent;for(;null!=e.parent&&t==e.parent.injectorIndex;)e=e.parent;return e}let i=Vn(t),s=e,r=e[6];for(;i>1;)s=s[15],r=s[6],i--;return r}(t,this._hostView,this._hostTNode);return Nn(t)&&null!=n?new ii(n,e):new ii(null,this._hostView)}clear(){for(;this.length>0;)this.remove(this.length-1)}get(t){return null!==this._lContainer[8]&&this._lContainer[8][t]||null}get length(){return this._lContainer.length-10}createEmbeddedView(t,e,n){const i=t.createEmbeddedView(e||{});return this.insert(i,n),i}createComponent(t,e,n,i,s){const r=n||this.parentInjector;if(!s&&null==t.ngModule&&r){const t=r.get(Jt,null);t&&(s=t)}const o=t.create(r,i,void 0,s);return this.insert(o.hostView,e),o}insert(t,e){const n=t._lView,i=n[1];if(t.destroyed)throw new Error("Cannot insert a destroyed View in a ViewContainer!");if(this.allocateContainerIfNeeded(),Ce(n[3])){const e=this.indexOf(t);if(-1!==e)this.detach(e);else{const e=n[3],i=new Or(e,e[6],e[3]);i.detach(i.indexOf(t))}}const s=this._adjustIndex(e);return function(t,e,n,i){const s=10+i,r=n.length;i>0&&(n[s-1][4]=e),i{class t{}return t.__NG_ELEMENT_ID__=()=>Mr(),t})();const Mr=function(t=!1){return function(t,e,n){if(!n&&Se(t)){const n=He(t.index,e);return new Ir(n,n)}return 3===t.type||0===t.type||4===t.type||5===t.type?new Ir(e[16],e):null}(Xe(),Ke(),t)},Lr=new Mt("Set Injector scope."),jr={},Br={},Hr=[];let zr=void 0;function qr(){return void 0===zr&&(zr=new Yt),zr}function $r(t,e=null,n=null,i){return new Ur(t,n,e||qr(),i)}class Ur{constructor(t,e,n,i=null){this.parent=n,this.records=new Map,this.injectorDefTypes=new Set,this.onDestroy=new Set,this._destroyed=!1;const s=[];e&&Xt(e,n=>this.processProvider(n,t,e)),Xt([t],t=>this.processInjectorType(t,[],s)),this.records.set(Lt,Zr(void 0,this));const r=this.records.get(Lr);this.scope=null!=r?r.value:null,this.source=i||("object"==typeof t?null:bt(t))}get destroyed(){return this._destroyed}destroy(){this.assertNotDestroyed(),this._destroyed=!0;try{this.onDestroy.forEach(t=>t.ngOnDestroy())}finally{this.records.clear(),this.onDestroy.clear(),this.injectorDefTypes.clear()}}get(t,e=jt,n=ot.Default){this.assertNotDestroyed();const i=$t(this);try{if(!(n&ot.SkipSelf)){let e=this.records.get(t);if(void 0===e){const n=("function"==typeof(s=t)||"object"==typeof s&&s instanceof Mt)&&ut(t);e=n&&this.injectableDefInScope(n)?Zr(Gr(t),jr):null,this.records.set(t,e)}if(null!=e)return this.hydrate(t,e)}return(n&ot.Self?qr():this.parent).get(t,e=n&ot.Optional&&e===jt?null:e)}catch(r){if("NullInjectorError"===r.name){if((r.ngTempTokenPath=r.ngTempTokenPath||[]).unshift(bt(t)),i)throw r;return function(t,e,n,i){const s=t.ngTempTokenPath;throw e.__source&&s.unshift(e.__source),t.message=function(t,e,n,i=null){t=t&&"\n"===t.charAt(0)&&"\u0275"==t.charAt(1)?t.substr(2):t;let s=bt(e);if(Array.isArray(e))s=e.map(bt).join(" -> ");else if("object"==typeof e){let t=[];for(let n in e)if(e.hasOwnProperty(n)){let i=e[n];t.push(n+":"+("string"==typeof i?JSON.stringify(i):bt(i)))}s=`{${t.join(", ")}}`}return`${n}${i?"("+i+")":""}[${s}]: ${t.replace(Bt,"\n ")}`}("\n"+t.message,s,n,i),t.ngTokenPath=s,t.ngTempTokenPath=null,t}(r,t,"R3InjectorError",this.source)}throw r}finally{$t(i)}var s}_resolveInjectorDefTypes(){this.injectorDefTypes.forEach(t=>this.get(t))}toString(){const t=[];return this.records.forEach((e,n)=>t.push(bt(n))),`R3Injector[${t.join(", ")}]`}assertNotDestroyed(){if(this._destroyed)throw new Error("Injector has already been destroyed.")}processInjectorType(t,e,n){if(!(t=Et(t)))return!1;let i=pt(t);const s=null==i&&t.ngModule||void 0,r=void 0===s?t:s,o=-1!==n.indexOf(r);if(void 0!==s&&(i=pt(s)),null==i)return!1;if(null!=i.imports&&!o){let t;n.push(r);try{Xt(i.imports,i=>{this.processInjectorType(i,e,n)&&(void 0===t&&(t=[]),t.push(i))})}finally{}if(void 0!==t)for(let e=0;ethis.processProvider(t,n,i||Hr))}}this.injectorDefTypes.add(r),this.records.set(r,Zr(i.factory,jr));const a=i.providers;if(null!=a&&!o){const e=t;Xt(a,t=>this.processProvider(t,e,a))}return void 0!==s&&void 0!==t.providers}processProvider(t,e,n){let i=Kr(t=Et(t))?t:Et(t&&t.provide);const s=function(t,e,n){return Qr(t)?Zr(void 0,t.useValue):Zr(Wr(t,e,n),jr)}(t,e,n);if(Kr(t)||!0!==t.multi){const t=this.records.get(i);t&&void 0!==t.multi&&Wi()}else{let e=this.records.get(i);e?void 0===e.multi&&Wi():(e=Zr(void 0,jr,!0),e.factory=()=>Kt(e.multi),this.records.set(i,e)),i=t,e.multi.push(t)}this.records.set(i,s)}hydrate(t,e){var n;return e.value===Br?function(t){throw new Error("Cannot instantiate cyclic dependency! "+t)}(bt(t)):e.value===jr&&(e.value=Br,e.value=e.factory()),"object"==typeof e.value&&e.value&&null!==(n=e.value)&&"object"==typeof n&&"function"==typeof n.ngOnDestroy&&this.onDestroy.add(e.value),e.value}injectableDefInScope(t){return!!t.providedIn&&("string"==typeof t.providedIn?"any"===t.providedIn||t.providedIn===this.scope:this.injectorDefTypes.has(t.providedIn))}}function Gr(t){const e=ut(t),n=null!==e?e.factory:be(t);if(null!==n)return n;const i=pt(t);if(null!==i)return i.factory;if(t instanceof Mt)throw new Error(`Token ${bt(t)} is missing a \u0275prov definition.`);if(t instanceof Function)return function(t){const e=t.length;if(e>0){const n=ne(e,"?");throw new Error(`Can't resolve all parameters for ${bt(t)}: (${n.join(", ")}).`)}const n=function(t){const e=t&&(t[ft]||t[_t]||t[gt]&&t[gt]());if(e){const n=function(t){if(t.hasOwnProperty("name"))return t.name;const e=(""+t).match(/^function\s*([^\s(]+)/);return null===e?"":e[1]}(t);return console.warn(`DEPRECATED: DI is instantiating a token "${n}" that inherits its @Injectable decorator but does not provide one itself.\nThis will become an error in a future version of Angular. Please add @Injectable() to the "${n}" class.`),e}return null}(t);return null!==n?()=>n.factory(t):()=>new t}(t);throw new Error("unreachable")}function Wr(t,e,n){let i=void 0;if(Kr(t)){const e=Et(t);return be(e)||Gr(e)}if(Qr(t))i=()=>Et(t.useValue);else if((s=t)&&s.useFactory)i=()=>t.useFactory(...Kt(t.deps||[]));else if(function(t){return!(!t||!t.useExisting)}(t))i=()=>Wt(Et(t.useExisting));else{const s=Et(t&&(t.useClass||t.provide));if(s||function(t,e,n){let i="";throw t&&e&&(i=` - only instances of Provider and Type are allowed, got: [${e.map(t=>t==n?"?"+n+"?":"...").join(", ")}]`),new Error(`Invalid provider for the NgModule '${bt(t)}'`+i)}(e,n,t),!function(t){return!!t.deps}(t))return be(s)||Gr(s);i=()=>new s(...Kt(t.deps))}var s;return i}function Zr(t,e,n=!1){return{factory:t,value:e,multi:n?[]:void 0}}function Qr(t){return null!==t&&"object"==typeof t&&Ht in t}function Kr(t){return"function"==typeof t}const Yr=function(t,e,n){return function(t,e=null,n=null,i){const s=$r(t,e,n,i);return s._resolveInjectorDefTypes(),s}({name:n},e,t,n)};let Jr=(()=>{class t{static create(t,e){return Array.isArray(t)?Yr(t,e,""):Yr(t.providers,t.parent,t.name||"")}}return t.THROW_IF_NOT_FOUND=jt,t.NULL=new Yt,t.\u0275prov=ct({token:t,providedIn:"any",factory:()=>Wt(Lt)}),t.__NG_ELEMENT_ID__=-1,t})();function Xr(t,e,n){let i=n?t.styles:null,s=n?t.classes:null,r=0;if(null!==e)for(let o=0;oa(Me(t[i.index])).target:i.index;if(Fe(n)){let o=null;if(!a&&l&&(o=function(t,e,n,i){const s=t.cleanup;if(null!=s)for(let r=0;rn?t[n]:null}"string"==typeof t&&(r+=2)}return null}(t,e,s,i.index)),null!==o)(o.__ngLastListenerFn__||o).__ngNextListenerFn__=r,o.__ngLastListenerFn__=r,u=!1;else{r=wo(i,e,r,!1);const t=n.listen(p.name||f,s,r);h.push(r,t),c&&c.push(s,g,m,m+1)}}else r=wo(i,e,r,!0),f.addEventListener(s,r,o),h.push(r),c&&c.push(s,g,m,o)}const d=i.outputs;let p;if(u&&null!==d&&(p=d[s])){const t=p.length;if(t)for(let n=0;n0;)e=e[15],t--;return e}(t,Ze.lFrame.contextLView))[8]}(t)}function Eo(t,e){let n=null;const i=function(t){const e=t.attrs;if(null!=e){const t=e.indexOf(5);if(0==(1&t))return e[t+1]}return null}(t);for(let s=0;s=0}function Do(t,e,n){return Po(t,e,n,!1),Do}function Ao(t,e){return Po(t,e,null,!0),Ao}function Po(t,e,n,i){const s=Ke(),r=Ye(),o=an(2);r.firstUpdatePass&&function(t,e,n,i){const s=t.data;if(null===s[n+1]){const r=s[bn()+20],o=function(t,e){return e>=t.expandoStartIndex}(t,n);(function(t,e){return 0!=(t.flags&(e?16:32))})(r,i)&&null===e&&!o&&(e=!1),e=function(t,e,n,i){const s=function(t){const e=Ze.lFrame.currentDirectiveIndex;return-1===e?null:t[e]}(t);let r=i?e.residualClasses:e.residualStyles;if(null===s)0===(i?e.classBindings:e.styleBindings)&&(n=Ro(n=Oo(null,t,e,n,i),e.attrs,i),r=null);else{const o=e.directiveStylingLast;if(-1===o||t[o]!==s)if(n=Oo(s,t,e,n,i),null===r){let n=function(t,e,n){const i=n?e.classBindings:e.styleBindings;if(0!==ms(i))return t[ps(i)]}(t,e,i);void 0!==n&&Array.isArray(n)&&(n=Oo(null,t,e,n[1],i),n=Ro(n,e.attrs,i),function(t,e,n,i){t[ps(n?e.classBindings:e.styleBindings)]=i}(t,e,i,n))}else r=function(t,e,n){let i=void 0;const s=e.directiveEnd;for(let r=1+e.directiveStylingLast;r0)&&(h=!0)}else c=n;if(s)if(0!==l){const e=ps(t[a+1]);t[i+1]=ds(e,a),0!==e&&(t[e+1]=gs(t[e+1],i)),t[a+1]=131071&t[a+1]|i<<17}else t[i+1]=ds(a,0),0!==a&&(t[a+1]=gs(t[a+1],i)),a=i;else t[i+1]=ds(l,0),0===a?a=i:t[l+1]=gs(t[l+1],i),l=i;h&&(t[i+1]=fs(t[i+1])),To(t,c,i,!0),To(t,c,i,!1),function(t,e,n,i,s){const r=s?t.residualClasses:t.residualStyles;null!=r&&"string"==typeof e&&re(r,e)>=0&&(n[i+1]=_s(n[i+1]))}(e,c,t,i,r),o=ds(a,l),r?e.classBindings=o:e.styleBindings=o}(s,r,e,n,o,i)}}(r,t,o,i),e!==rs&&so(s,o,e)&&function(t,e,n,i,s,r,o,a){if(3!==e.type)return;const l=t.data,c=l[a+1];Fo(1==(1&c)?No(l,e,n,s,ms(c),o):void 0)||(Fo(r)||function(t){return 2==(2&t)}(c)&&(r=No(l,null,n,s,a,o)),function(t,e,n,i,s){const r=Fe(t);if(e)s?r?t.addClass(n,i):n.classList.add(i):r?t.removeClass(n,i):n.classList.remove(i);else{const e=-1==i.indexOf("-")?void 0:2;null==s?r?t.removeStyle(n,i,e):n.style.removeProperty(i):r?t.setStyle(n,i,s,e):n.style.setProperty(i,s)}}(i,o,Le(bn(),n),s,r))}(r,r.data[bn()+20],s,s[11],t,s[o+1]=function(t,e){return null==t||("string"==typeof e?t+=e:"object"==typeof t&&(t=bt(gi(t)))),t}(e,n),i,o)}function Oo(t,e,n,i,s){let r=null;const o=n.directiveEnd;let a=n.directiveStylingLast;for(-1===a?a=n.directiveStart:a++;a0;){const e=t[s],r=Array.isArray(e),l=r?e[1]:e,c=null===l;let h=n[s+1];h===rs&&(h=c?ko:void 0);let u=c?se(h,i):l===i?h:void 0;if(r&&!Fo(u)&&(u=se(e,i)),Fo(u)&&(a=u,o))return a;const d=t[s+1];s=o?ps(d):ms(d)}if(null!==e){let t=r?e.residualClasses:e.residualStyles;null!=t&&(a=se(t,i))}return a}function Fo(t){return void 0!==t}function Vo(t,e=""){const n=Ke(),i=Ye(),s=t+20,r=i.firstCreatePass?ws(i,n[6],t,3,null,null):i.data[s],o=n[s]=function(t,e){return Fe(e)?e.createText(t):e.createTextNode(t)}(e,n[11]);wr(i,n,o,r),tn(r,!1)}function Mo(t){return Lo("",t,""),Mo}function Lo(t,e,n){const i=Ke(),s=function(t,e,n,i){return so(t,on(),n)?e+Ln(n)+i:rs}(i,t,e,n);return s!==rs&&rr(i,bn(),s),Lo}function jo(t,e,n,i,s){const r=Ke(),o=function(t,e,n,i,s,r){const o=ro(t,Ze.lFrame.bindingIndex,n,s);return an(2),o?e+Ln(n)+i+Ln(s)+r:rs}(r,t,e,n,i,s);return o!==rs&&rr(r,bn(),o),jo}function Bo(t,e,n){const i=Ke();return so(i,on(),e)&&Ns(Ye(),wn(),i,t,e,i[11],n,!0),Bo}function Ho(t,e){const n=ze(t)[1],i=n.data.length-1;Cn(n,{directiveStart:i,directiveEnd:i+1})}function zo(t){let e=Object.getPrototypeOf(t.type.prototype).constructor,n=!0;const i=[t];for(;e;){let s=void 0;if(ke(t))s=e.\u0275cmp||e.\u0275dir;else{if(e.\u0275cmp)throw new Error("Directives cannot inherit Components");s=e.\u0275dir}if(s){if(n){i.push(s);const e=t;e.inputs=qo(t.inputs),e.declaredInputs=qo(t.declaredInputs),e.outputs=qo(t.outputs);const n=s.hostBindings;n&&Go(t,n);const r=s.viewQuery,o=s.contentQueries;if(r&&$o(t,r),o&&Uo(t,o),lt(t.inputs,s.inputs),lt(t.declaredInputs,s.declaredInputs),lt(t.outputs,s.outputs),ke(s)&&s.data.animation){const e=t.data;e.animation=(e.animation||[]).concat(s.data.animation)}}const e=s.features;if(e)for(let i=0;i=0;i--){const s=t[i];s.hostVars=e+=s.hostVars,s.hostAttrs=On(s.hostAttrs,n=On(n,s.hostAttrs))}}(i)}function qo(t){return t===le?{}:t===ce?[]:t}function $o(t,e){const n=t.viewQuery;t.viewQuery=n?(t,i)=>{e(t,i),n(t,i)}:e}function Uo(t,e){const n=t.contentQueries;t.contentQueries=n?(t,i,s)=>{e(t,i,s),n(t,i,s)}:e}function Go(t,e){const n=t.hostBindings;t.hostBindings=n?(t,i)=>{e(t,i),n(t,i)}:e}function Wo(t,e,n,i,s){if(t=Et(t),Array.isArray(t))for(let r=0;r>20;if(Kr(t)||!t.multi){const i=new In(l,s,lo),p=Ko(a,e,s?h:h+d,u);-1===p?(Qn(Un(c,o),r,a),Zo(r,t,e.length),e.push(a),c.directiveStart++,c.directiveEnd++,s&&(c.providerIndexes+=1048576),n.push(i),o.push(i)):(n[p]=i,o[p]=i)}else{const p=Ko(a,e,h+d,u),f=Ko(a,e,h,h+d),m=p>=0&&n[p],g=f>=0&&n[f];if(s&&!g||!s&&!m){Qn(Un(c,o),r,a);const h=function(t,e,n,i,s){const r=new In(t,n,lo);return r.multi=[],r.index=e,r.componentProviders=0,Qo(r,s,i&&!n),r}(s?Jo:Yo,n.length,s,i,l);!s&&g&&(n[f].providerFactory=h),Zo(r,t,e.length,0),e.push(a),c.directiveStart++,c.directiveEnd++,s&&(c.providerIndexes+=1048576),n.push(h),o.push(h)}else Zo(r,t,p>-1?p:f,Qo(n[s?f:p],l,!s&&i));!s&&i&&g&&n[f].componentProviders++}}}function Zo(t,e,n,i){const s=Kr(e);if(s||e.useClass){const r=(e.useClass||e).prototype.ngOnDestroy;if(r){const o=t.destroyHooks||(t.destroyHooks=[]);if(!s&&e.multi){const t=o.indexOf(n);-1===t?o.push(n,[i,r]):o[t+1].push(i,r)}else o.push(n,r)}}}function Qo(t,e,n){return n&&t.componentProviders++,t.multi.push(e)-1}function Ko(t,e,n,i){for(let s=n;s{n.providersResolver=(n,i)=>function(t,e,n){const i=Ye();if(i.firstCreatePass){const s=ke(t);Wo(n,i.data,i.blueprint,s,!0),Wo(e,i.data,i.blueprint,s,!1)}}(n,i?i(t):t,e)}}class ea{}class na{resolveComponentFactory(t){throw function(t){const e=Error(`No component factory found for ${bt(t)}. Did you add it to @NgModule.entryComponents?`);return e.ngComponent=t,e}(t)}}let ia=(()=>{class t{}return t.NULL=new na,t})(),sa=(()=>{class t{constructor(t){this.nativeElement=t}}return t.__NG_ELEMENT_ID__=()=>ra(t),t})();const ra=function(t){return Rr(t,Xe(),Ke())};class oa{}var aa=function(t){return t[t.Important=1]="Important",t[t.DashCase=2]="DashCase",t}({});let la=(()=>{class t{}return t.__NG_ELEMENT_ID__=()=>ca(),t})();const ca=function(){const t=Ke(),e=He(Xe().index,t);return function(t){const e=t[11];if(Fe(e))return e;throw new Error("Cannot inject Renderer2 when the application uses Renderer3!")}(we(e)?e:t)};let ha=(()=>{class t{}return t.\u0275prov=ct({token:t,providedIn:"root",factory:()=>null}),t})();class ua{constructor(t){this.full=t,this.major=t.split(".")[0],this.minor=t.split(".")[1],this.patch=t.split(".").slice(2).join(".")}}const da=new ua("10.0.5");class pa{constructor(){}supports(t){return no(t)}create(t){return new ma(t)}}const fa=(t,e)=>e;class ma{constructor(t){this.length=0,this._linkedRecords=null,this._unlinkedRecords=null,this._previousItHead=null,this._itHead=null,this._itTail=null,this._additionsHead=null,this._additionsTail=null,this._movesHead=null,this._movesTail=null,this._removalsHead=null,this._removalsTail=null,this._identityChangesHead=null,this._identityChangesTail=null,this._trackByFn=t||fa}forEachItem(t){let e;for(e=this._itHead;null!==e;e=e._next)t(e)}forEachOperation(t){let e=this._itHead,n=this._removalsHead,i=0,s=null;for(;e||n;){const r=!n||e&&e.currentIndex{i=this._trackByFn(e,t),null!==s&&Object.is(s.trackById,i)?(r&&(s=this._verifyReinsertion(s,t,i,e)),Object.is(s.item,t)||this._addIdentityChange(s,t)):(s=this._mismatch(s,t,i,e),r=!0),s=s._next,e++}),this.length=e;return this._truncate(s),this.collection=t,this.isDirty}get isDirty(){return null!==this._additionsHead||null!==this._movesHead||null!==this._removalsHead||null!==this._identityChangesHead}_reset(){if(this.isDirty){let t,e;for(t=this._previousItHead=this._itHead;null!==t;t=t._next)t._nextPrevious=t._next;for(t=this._additionsHead;null!==t;t=t._nextAdded)t.previousIndex=t.currentIndex;for(this._additionsHead=this._additionsTail=null,t=this._movesHead;null!==t;t=e)t.previousIndex=t.currentIndex,e=t._nextMoved;this._movesHead=this._movesTail=null,this._removalsHead=this._removalsTail=null,this._identityChangesHead=this._identityChangesTail=null}}_mismatch(t,e,n,i){let s;return null===t?s=this._itTail:(s=t._prev,this._remove(t)),null!==(t=null===this._linkedRecords?null:this._linkedRecords.get(n,i))?(Object.is(t.item,e)||this._addIdentityChange(t,e),this._moveAfter(t,s,i)):null!==(t=null===this._unlinkedRecords?null:this._unlinkedRecords.get(n,null))?(Object.is(t.item,e)||this._addIdentityChange(t,e),this._reinsertAfter(t,s,i)):t=this._addAfter(new ga(e,n),s,i),t}_verifyReinsertion(t,e,n,i){let s=null===this._unlinkedRecords?null:this._unlinkedRecords.get(n,null);return null!==s?t=this._reinsertAfter(s,t._prev,i):t.currentIndex!=i&&(t.currentIndex=i,this._addToMoves(t,i)),t}_truncate(t){for(;null!==t;){const e=t._next;this._addToRemovals(this._unlink(t)),t=e}null!==this._unlinkedRecords&&this._unlinkedRecords.clear(),null!==this._additionsTail&&(this._additionsTail._nextAdded=null),null!==this._movesTail&&(this._movesTail._nextMoved=null),null!==this._itTail&&(this._itTail._next=null),null!==this._removalsTail&&(this._removalsTail._nextRemoved=null),null!==this._identityChangesTail&&(this._identityChangesTail._nextIdentityChange=null)}_reinsertAfter(t,e,n){null!==this._unlinkedRecords&&this._unlinkedRecords.remove(t);const i=t._prevRemoved,s=t._nextRemoved;return null===i?this._removalsHead=s:i._nextRemoved=s,null===s?this._removalsTail=i:s._prevRemoved=i,this._insertAfter(t,e,n),this._addToMoves(t,n),t}_moveAfter(t,e,n){return this._unlink(t),this._insertAfter(t,e,n),this._addToMoves(t,n),t}_addAfter(t,e,n){return this._insertAfter(t,e,n),this._additionsTail=null===this._additionsTail?this._additionsHead=t:this._additionsTail._nextAdded=t,t}_insertAfter(t,e,n){const i=null===e?this._itHead:e._next;return t._next=i,t._prev=e,null===i?this._itTail=t:i._prev=t,null===e?this._itHead=t:e._next=t,null===this._linkedRecords&&(this._linkedRecords=new ya),this._linkedRecords.put(t),t.currentIndex=n,t}_remove(t){return this._addToRemovals(this._unlink(t))}_unlink(t){null!==this._linkedRecords&&this._linkedRecords.remove(t);const e=t._prev,n=t._next;return null===e?this._itHead=n:e._next=n,null===n?this._itTail=e:n._prev=e,t}_addToMoves(t,e){return t.previousIndex===e||(this._movesTail=null===this._movesTail?this._movesHead=t:this._movesTail._nextMoved=t),t}_addToRemovals(t){return null===this._unlinkedRecords&&(this._unlinkedRecords=new ya),this._unlinkedRecords.put(t),t.currentIndex=null,t._nextRemoved=null,null===this._removalsTail?(this._removalsTail=this._removalsHead=t,t._prevRemoved=null):(t._prevRemoved=this._removalsTail,this._removalsTail=this._removalsTail._nextRemoved=t),t}_addIdentityChange(t,e){return t.item=e,this._identityChangesTail=null===this._identityChangesTail?this._identityChangesHead=t:this._identityChangesTail._nextIdentityChange=t,t}}class ga{constructor(t,e){this.item=t,this.trackById=e,this.currentIndex=null,this.previousIndex=null,this._nextPrevious=null,this._prev=null,this._next=null,this._prevDup=null,this._nextDup=null,this._prevRemoved=null,this._nextRemoved=null,this._nextAdded=null,this._nextMoved=null,this._nextIdentityChange=null}}class _a{constructor(){this._head=null,this._tail=null}add(t){null===this._head?(this._head=this._tail=t,t._nextDup=null,t._prevDup=null):(this._tail._nextDup=t,t._prevDup=this._tail,t._nextDup=null,this._tail=t)}get(t,e){let n;for(n=this._head;null!==n;n=n._nextDup)if((null===e||e<=n.currentIndex)&&Object.is(n.trackById,t))return n;return null}remove(t){const e=t._prevDup,n=t._nextDup;return null===e?this._head=n:e._nextDup=n,null===n?this._tail=e:n._prevDup=e,null===this._head}}class ya{constructor(){this.map=new Map}put(t){const e=t.trackById;let n=this.map.get(e);n||(n=new _a,this.map.set(e,n)),n.add(t)}get(t,e){const n=this.map.get(t);return n?n.get(t,e):null}remove(t){const e=t.trackById;return this.map.get(e).remove(t)&&this.map.delete(e),t}get isEmpty(){return 0===this.map.size}clear(){this.map.clear()}}function ba(t,e,n){const i=t.previousIndex;if(null===i)return i;let s=0;return n&&i{if(e&&e.key===n)this._maybeAddToChanges(e,t),this._appendAfter=e,e=e._next;else{const i=this._getOrCreateRecordForKey(n,t);e=this._insertBeforeOrAppend(e,i)}}),e){e._prev&&(e._prev._next=null),this._removalsHead=e;for(let t=e;null!==t;t=t._nextRemoved)t===this._mapHead&&(this._mapHead=null),this._records.delete(t.key),t._nextRemoved=t._next,t.previousValue=t.currentValue,t.currentValue=null,t._prev=null,t._next=null}return this._changesTail&&(this._changesTail._nextChanged=null),this._additionsTail&&(this._additionsTail._nextAdded=null),this.isDirty}_insertBeforeOrAppend(t,e){if(t){const n=t._prev;return e._next=t,e._prev=n,t._prev=e,n&&(n._next=e),t===this._mapHead&&(this._mapHead=e),this._appendAfter=t,t}return this._appendAfter?(this._appendAfter._next=e,e._prev=this._appendAfter):this._mapHead=e,this._appendAfter=e,null}_getOrCreateRecordForKey(t,e){if(this._records.has(t)){const n=this._records.get(t);this._maybeAddToChanges(n,e);const i=n._prev,s=n._next;return i&&(i._next=s),s&&(s._prev=i),n._next=null,n._prev=null,n}const n=new Ca(t);return this._records.set(t,n),n.currentValue=e,this._addToAdditions(n),n}_reset(){if(this.isDirty){let t;for(this._previousMapHead=this._mapHead,t=this._previousMapHead;null!==t;t=t._next)t._nextPrevious=t._next;for(t=this._changesHead;null!==t;t=t._nextChanged)t.previousValue=t.currentValue;for(t=this._additionsHead;null!=t;t=t._nextAdded)t.previousValue=t.currentValue;this._changesHead=this._changesTail=null,this._additionsHead=this._additionsTail=null,this._removalsHead=null}}_maybeAddToChanges(t,e){Object.is(e,t.currentValue)||(t.previousValue=t.currentValue,t.currentValue=e,this._addToChanges(t))}_addToAdditions(t){null===this._additionsHead?this._additionsHead=this._additionsTail=t:(this._additionsTail._nextAdded=t,this._additionsTail=t)}_addToChanges(t){null===this._changesHead?this._changesHead=this._changesTail=t:(this._changesTail._nextChanged=t,this._changesTail=t)}_forEach(t,e){t instanceof Map?t.forEach(e):Object.keys(t).forEach(n=>e(t[n],n))}}class Ca{constructor(t){this.key=t,this.previousValue=null,this.currentValue=null,this._nextPrevious=null,this._next=null,this._prev=null,this._nextAdded=null,this._nextRemoved=null,this._nextChanged=null}}let Ea=(()=>{class t{constructor(t){this.factories=t}static create(e,n){if(null!=n){const t=n.factories.slice();e=e.concat(t)}return new t(e)}static extend(e){return{provide:t,useFactory:n=>{if(!n)throw new Error("Cannot extend IterableDiffers without a parent injector");return t.create(e,n)},deps:[[t,new rt,new it]]}}find(t){const e=this.factories.find(e=>e.supports(t));if(null!=e)return e;throw new Error(`Cannot find a differ supporting object '${t}' of type '${n=t,n.name||typeof n}'`);var n}}return t.\u0275prov=ct({token:t,providedIn:"root",factory:()=>new t([new pa])}),t})(),Sa=(()=>{class t{constructor(t){this.factories=t}static create(e,n){if(n){const t=n.factories.slice();e=e.concat(t)}return new t(e)}static extend(e){return{provide:t,useFactory:n=>{if(!n)throw new Error("Cannot extend KeyValueDiffers without a parent injector");return t.create(e,n)},deps:[[t,new rt,new it]]}}find(t){const e=this.factories.find(e=>e.supports(t));if(e)return e;throw new Error(`Cannot find a differ supporting object '${t}'`)}}return t.\u0275prov=ct({token:t,providedIn:"root",factory:()=>new t([new va])}),t})();const xa=[new va],ka=new Ea([new pa]),Ta=new Sa(xa);let Ia=(()=>{class t{}return t.__NG_ELEMENT_ID__=()=>Da(t,sa),t})();const Da=function(t,e){return Nr(t,e,Xe(),Ke())};let Aa=(()=>{class t{}return t.__NG_ELEMENT_ID__=()=>Pa(t,sa),t})();const Pa=function(t,e){return Fr(t,e,Xe(),Ke())},Oa={};class Ra extends ia{constructor(t){super(),this.ngModule=t}resolveComponentFactory(t){const e=ye(t);return new Va(e,this.ngModule)}}function Na(t){const e=[];for(let n in t)t.hasOwnProperty(n)&&e.push({propName:t[n],templateName:n});return e}const Fa=new Mt("SCHEDULER_TOKEN",{providedIn:"root",factory:()=>Bn});class Va extends ea{constructor(t,e){super(),this.componentDef=t,this.ngModule=e,this.componentType=t.type,this.selector=t.selectors.map(ss).join(","),this.ngContentSelectors=t.ngContentSelectors?t.ngContentSelectors:[],this.isBoundToModule=!!e}get inputs(){return Na(this.componentDef.inputs)}get outputs(){return Na(this.componentDef.outputs)}create(t,e,n,i){const s=(i=i||this.ngModule)?function(t,e){return{get:(n,i,s)=>{const r=t.get(n,Oa,s);return r!==Oa||i===Oa?r:e.get(n,i,s)}}}(t,i.injector):t,r=s.get(oa,Ve),o=s.get(ha,null),a=r.createRenderer(null,this.componentDef),l=this.componentDef.selectors[0][0]||"div",c=n?function(t,e,n){if(Fe(t))return t.selectRootElement(e,n===ae.ShadowDom);let i="string"==typeof e?t.querySelector(e):e;return i.textContent="",i}(a,n,this.componentDef.encapsulation):bs(l,r.createRenderer(null,this.componentDef),function(t){const e=t.toLowerCase();return"svg"===e?"http://www.w3.org/2000/svg":"math"===e?"http://www.w3.org/1998/MathML/":null}(l)),h=this.componentDef.onPush?576:528,u={components:[],scheduler:Bn,clean:er,playerHandler:null,flags:0},d=As(0,-1,null,1,0,null,null,null,null,null),p=vs(null,d,u,h,null,null,r,a,o,s);let f,m;pn(p,null);try{const t=function(t,e,n,i,s,r){const o=n[1];n[20]=t;const a=ws(o,null,0,3,null,null),l=a.mergedAttrs=e.hostAttrs;null!==l&&(Xr(a,l,!0),null!==t&&(Dn(s,t,l),null!==a.classes&&Tr(s,t,a.classes),null!==a.styles&&kr(s,t,a.styles)));const c=i.createRenderer(t,e),h=vs(n,Ds(e),null,e.onPush?64:16,n[20],a,i,c,void 0);return o.firstCreatePass&&(Qn(Un(a,n),o,e.type),Bs(o,a),zs(a,n.length,1)),Ks(n,h),n[20]=h}(c,this.componentDef,p,r,a);if(c)if(n)Dn(a,c,["ng-version",da.full]);else{const{attrs:t,classes:e}=function(t){const e=[],n=[];let i=1,s=2;for(;i0&&Tr(a,c,e.join(" "))}if(m=Be(d,0),void 0!==e){const t=m.projection=[];for(let n=0;nt(o,e)),e.contentQueries&&e.contentQueries(1,o,n.length-1);const a=Xe();if(r.firstCreatePass&&(null!==e.hostBindings||null!==e.hostAttrs)){vn(a.index-20);const t=n[1];Vs(t,e),Ms(t,n,e.hostVars),Ls(e,o)}return o}(t,this.componentDef,p,u,[Ho]),Cs(d,p,null)}finally{yn()}const g=new Ma(this.componentType,f,Rr(sa,m,p),p,m);return d.node.child=m,g}}class Ma extends class{}{constructor(t,e,n,i,s){super(),this.location=n,this._rootLView=i,this._tNode=s,this.destroyCbs=[],this.instance=e,this.hostView=this.changeDetectorRef=new Dr(i),function(t,e,n,i){let s=t.node;null==s&&(t.node=s=Os(0,null,2,-1,null,null)),i[6]=s}(i[1],0,0,i),this.componentType=t}get injector(){return new ii(this._tNode,this._rootLView)}destroy(){this.destroyCbs&&(this.destroyCbs.forEach(t=>t()),this.destroyCbs=null,!this.hostView.destroyed&&this.hostView.destroy())}onDestroy(t){this.destroyCbs&&this.destroyCbs.push(t)}}const La=void 0;var ja=["en",[["a","p"],["AM","PM"],La],[["AM","PM"],La,La],[["S","M","T","W","T","F","S"],["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],["Su","Mo","Tu","We","Th","Fr","Sa"]],La,[["J","F","M","A","M","J","J","A","S","O","N","D"],["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],["January","February","March","April","May","June","July","August","September","October","November","December"]],La,[["B","A"],["BC","AD"],["Before Christ","Anno Domini"]],0,[6,0],["M/d/yy","MMM d, y","MMMM d, y","EEEE, MMMM d, y"],["h:mm a","h:mm:ss a","h:mm:ss a z","h:mm:ss a zzzz"],["{1}, {0}",La,"{1} 'at' {0}",La],[".",",",";","%","+","-","E","\xd7","\u2030","\u221e","NaN",":"],["#,##0.###","#,##0%","\xa4#,##0.00","#E0"],"USD","$","US Dollar",{},"ltr",function(t){let e=Math.floor(Math.abs(t)),n=t.toString().replace(/^[^.]*\.?/,"").length;return 1===e&&0===n?1:5}];let Ba={};function Ha(t){return t in Ba||(Ba[t]=Dt.ng&&Dt.ng.common&&Dt.ng.common.locales&&Dt.ng.common.locales[t]),Ba[t]}var za=function(t){return t[t.LocaleId=0]="LocaleId",t[t.DayPeriodsFormat=1]="DayPeriodsFormat",t[t.DayPeriodsStandalone=2]="DayPeriodsStandalone",t[t.DaysFormat=3]="DaysFormat",t[t.DaysStandalone=4]="DaysStandalone",t[t.MonthsFormat=5]="MonthsFormat",t[t.MonthsStandalone=6]="MonthsStandalone",t[t.Eras=7]="Eras",t[t.FirstDayOfWeek=8]="FirstDayOfWeek",t[t.WeekendRange=9]="WeekendRange",t[t.DateFormat=10]="DateFormat",t[t.TimeFormat=11]="TimeFormat",t[t.DateTimeFormat=12]="DateTimeFormat",t[t.NumberSymbols=13]="NumberSymbols",t[t.NumberFormats=14]="NumberFormats",t[t.CurrencyCode=15]="CurrencyCode",t[t.CurrencySymbol=16]="CurrencySymbol",t[t.CurrencyName=17]="CurrencyName",t[t.Currencies=18]="Currencies",t[t.Directionality=19]="Directionality",t[t.PluralCase=20]="PluralCase",t[t.ExtraData=21]="ExtraData",t}({});let qa="en-US";function $a(t){var e,n;n="Expected localeId to be defined",null==(e=t)&&function(t,e,n,i){throw new Error("ASSERTION ERROR: "+t+` [Expected=> null != ${e} <=Actual]`)}(n,e),"string"==typeof t&&(qa=t.toLowerCase().replace(/_/g,"-"))}const Ua=new Map;class Ga extends Jt{constructor(t,e){super(),this._parent=e,this._bootstrapComponents=[],this.injector=this,this.destroyCbs=[],this.componentFactoryResolver=new Ra(this);const n=ve(t),i=t[Nt]||null;i&&$a(i),this._bootstrapComponents=Hn(n.bootstrap),this._r3Injector=$r(t,e,[{provide:Jt,useValue:this},{provide:ia,useValue:this.componentFactoryResolver}],bt(t)),this._r3Injector._resolveInjectorDefTypes(),this.instance=this.get(t)}get(t,e=Jr.THROW_IF_NOT_FOUND,n=ot.Default){return t===Jr||t===Jt||t===Lt?this:this._r3Injector.get(t,e,n)}destroy(){const t=this._r3Injector;!t.destroyed&&t.destroy(),this.destroyCbs.forEach(t=>t()),this.destroyCbs=null}onDestroy(t){this.destroyCbs.push(t)}}class Wa extends class{}{constructor(t){super(),this.moduleType=t,null!==ve(t)&&function t(e){if(null!==e.\u0275mod.id){const t=e.\u0275mod.id;(function(t,e,n){if(e&&e!==n)throw new Error(`Duplicate module registered for ${t} - ${bt(e)} vs ${bt(e.name)}`)})(t,Ua.get(t),e),Ua.set(t,e)}let n=e.\u0275mod.imports;n instanceof Function&&(n=n()),n&&n.forEach(e=>t(e))}(t)}create(t){return new Ga(this.moduleType,t)}}const Za=class extends E{constructor(t=!1){super(),this.__isAsync=t}emit(t){super.next(t)}subscribe(t,e,n){let i,s=t=>null,r=()=>null;t&&"object"==typeof t?(i=this.__isAsync?e=>{setTimeout(()=>t.next(e))}:e=>{t.next(e)},t.error&&(s=this.__isAsync?e=>{setTimeout(()=>t.error(e))}:e=>{t.error(e)}),t.complete&&(r=this.__isAsync?()=>{setTimeout(()=>t.complete())}:()=>{t.complete()})):(i=this.__isAsync?e=>{setTimeout(()=>t(e))}:e=>{t(e)},e&&(s=this.__isAsync?t=>{setTimeout(()=>e(t))}:t=>{e(t)}),n&&(r=this.__isAsync?()=>{setTimeout(()=>n())}:()=>{n()}));const o=super.subscribe(i,s,r);return t instanceof u&&t.add(o),o}};function Qa(){return this._results[eo()]()}class Ka{constructor(){this.dirty=!0,this._results=[],this.changes=new Za,this.length=0;const t=eo(),e=Ka.prototype;e[t]||(e[t]=Qa)}map(t){return this._results.map(t)}filter(t){return this._results.filter(t)}find(t){return this._results.find(t)}reduce(t,e){return this._results.reduce(t,e)}forEach(t){this._results.forEach(t)}some(t){return this._results.some(t)}toArray(){return this._results.slice()}toString(){return this._results.toString()}reset(t){this._results=function t(e,n){void 0===n&&(n=e);for(let i=0;i0)s.push(a[e/2]);else{const r=o[e+1],a=n[-i];for(let e=10;e{class t{constructor(t){this.appInits=t,this.initialized=!1,this.done=!1,this.donePromise=new Promise((t,e)=>{this.resolve=t,this.reject=e})}runInitializers(){if(this.initialized)return;const t=[],e=()=>{this.done=!0,this.resolve()};if(this.appInits)for(let n=0;n{e()}).catch(t=>{this.reject(t)}),0===t.length&&e(),this.initialized=!0}}return t.\u0275fac=function(e){return new(e||t)(Wt(ml,8))},t.\u0275prov=ct({token:t,factory:t.\u0275fac}),t})();const _l=new Mt("AppId"),yl={provide:_l,useFactory:function(){return`${bl()}${bl()}${bl()}`},deps:[]};function bl(){return String.fromCharCode(97+Math.floor(25*Math.random()))}const vl=new Mt("Platform Initializer"),wl=new Mt("Platform ID"),Cl=new Mt("appBootstrapListener");let El=(()=>{class t{log(t){console.log(t)}warn(t){console.warn(t)}}return t.\u0275fac=function(e){return new(e||t)},t.\u0275prov=ct({token:t,factory:t.\u0275fac}),t})();const Sl=new Mt("LocaleId"),xl=new Mt("DefaultCurrencyCode");class kl{constructor(t,e){this.ngModuleFactory=t,this.componentFactories=e}}const Tl=function(t){return new Wa(t)},Il=Tl,Dl=function(t){return Promise.resolve(Tl(t))},Al=function(t){const e=Tl(t),n=Hn(ve(t).declarations).reduce((t,e)=>{const n=ye(e);return n&&t.push(new Va(n)),t},[]);return new kl(e,n)},Pl=Al,Ol=function(t){return Promise.resolve(Al(t))};let Rl=(()=>{class t{constructor(){this.compileModuleSync=Il,this.compileModuleAsync=Dl,this.compileModuleAndAllComponentsSync=Pl,this.compileModuleAndAllComponentsAsync=Ol}clearCache(){}clearCacheFor(t){}getModuleId(t){}}return t.\u0275fac=function(e){return new(e||t)},t.\u0275prov=ct({token:t,factory:t.\u0275fac}),t})();const Nl=(()=>Promise.resolve(0))();function Fl(t){"undefined"==typeof Zone?Nl.then(()=>{t&&t.apply(null,null)}):Zone.current.scheduleMicroTask("scheduleMicrotask",t)}class Vl{constructor({enableLongStackTrace:t=!1,shouldCoalesceEventChangeDetection:e=!1}){if(this.hasPendingMacrotasks=!1,this.hasPendingMicrotasks=!1,this.isStable=!0,this.onUnstable=new Za(!1),this.onMicrotaskEmpty=new Za(!1),this.onStable=new Za(!1),this.onError=new Za(!1),"undefined"==typeof Zone)throw new Error("In this configuration Angular requires Zone.js");Zone.assertZonePatched(),this._nesting=0,this._outer=this._inner=Zone.current,Zone.wtfZoneSpec&&(this._inner=this._inner.fork(Zone.wtfZoneSpec)),Zone.TaskTrackingZoneSpec&&(this._inner=this._inner.fork(new Zone.TaskTrackingZoneSpec)),t&&Zone.longStackTraceZoneSpec&&(this._inner=this._inner.fork(Zone.longStackTraceZoneSpec)),this.shouldCoalesceEventChangeDetection=e,this.lastRequestAnimationFrameId=-1,this.nativeRequestAnimationFrame=function(){let t=Dt.requestAnimationFrame,e=Dt.cancelAnimationFrame;if("undefined"!=typeof Zone&&t&&e){const n=t[Zone.__symbol__("OriginalDelegate")];n&&(t=n);const i=e[Zone.__symbol__("OriginalDelegate")];i&&(e=i)}return{nativeRequestAnimationFrame:t,nativeCancelAnimationFrame:e}}().nativeRequestAnimationFrame,function(t){const e=!!t.shouldCoalesceEventChangeDetection&&t.nativeRequestAnimationFrame&&(()=>{!function(t){-1===t.lastRequestAnimationFrameId&&(t.lastRequestAnimationFrameId=t.nativeRequestAnimationFrame.call(Dt,()=>{t.fakeTopEventTask||(t.fakeTopEventTask=Zone.root.scheduleEventTask("fakeTopEventTask",()=>{t.lastRequestAnimationFrameId=-1,Bl(t),jl(t)},void 0,()=>{},()=>{})),t.fakeTopEventTask.invoke()}),Bl(t))}(t)});t._inner=t._inner.fork({name:"angular",properties:{isAngularZone:!0,maybeDelayChangeDetection:e},onInvokeTask:(n,i,s,r,o,a)=>{try{return Hl(t),n.invokeTask(s,r,o,a)}finally{e&&"eventTask"===r.type&&e(),zl(t)}},onInvoke:(e,n,i,s,r,o,a)=>{try{return Hl(t),e.invoke(i,s,r,o,a)}finally{zl(t)}},onHasTask:(e,n,i,s)=>{e.hasTask(i,s),n===i&&("microTask"==s.change?(t._hasPendingMicrotasks=s.microTask,Bl(t),jl(t)):"macroTask"==s.change&&(t.hasPendingMacrotasks=s.macroTask))},onHandleError:(e,n,i,s)=>(e.handleError(i,s),t.runOutsideAngular(()=>t.onError.emit(s)),!1)})}(this)}static isInAngularZone(){return!0===Zone.current.get("isAngularZone")}static assertInAngularZone(){if(!Vl.isInAngularZone())throw new Error("Expected to be in Angular Zone, but it is not!")}static assertNotInAngularZone(){if(Vl.isInAngularZone())throw new Error("Expected to not be in Angular Zone, but it is!")}run(t,e,n){return this._inner.run(t,e,n)}runTask(t,e,n,i){const s=this._inner,r=s.scheduleEventTask("NgZoneEvent: "+i,t,Ll,Ml,Ml);try{return s.runTask(r,e,n)}finally{s.cancelTask(r)}}runGuarded(t,e,n){return this._inner.runGuarded(t,e,n)}runOutsideAngular(t){return this._outer.run(t)}}function Ml(){}const Ll={};function jl(t){if(0==t._nesting&&!t.hasPendingMicrotasks&&!t.isStable)try{t._nesting++,t.onMicrotaskEmpty.emit(null)}finally{if(t._nesting--,!t.hasPendingMicrotasks)try{t.runOutsideAngular(()=>t.onStable.emit(null))}finally{t.isStable=!0}}}function Bl(t){t.hasPendingMicrotasks=!!(t._hasPendingMicrotasks||t.shouldCoalesceEventChangeDetection&&-1!==t.lastRequestAnimationFrameId)}function Hl(t){t._nesting++,t.isStable&&(t.isStable=!1,t.onUnstable.emit(null))}function zl(t){t._nesting--,jl(t)}class ql{constructor(){this.hasPendingMicrotasks=!1,this.hasPendingMacrotasks=!1,this.isStable=!0,this.onUnstable=new Za,this.onMicrotaskEmpty=new Za,this.onStable=new Za,this.onError=new Za}run(t,e,n){return t.apply(e,n)}runGuarded(t,e,n){return t.apply(e,n)}runOutsideAngular(t){return t()}runTask(t,e,n,i){return t.apply(e,n)}}let $l=(()=>{class t{constructor(t){this._ngZone=t,this._pendingCount=0,this._isZoneStable=!0,this._didWork=!1,this._callbacks=[],this.taskTrackingZone=null,this._watchAngularEvents(),t.run(()=>{this.taskTrackingZone="undefined"==typeof Zone?null:Zone.current.get("TaskTrackingZone")})}_watchAngularEvents(){this._ngZone.onUnstable.subscribe({next:()=>{this._didWork=!0,this._isZoneStable=!1}}),this._ngZone.runOutsideAngular(()=>{this._ngZone.onStable.subscribe({next:()=>{Vl.assertNotInAngularZone(),Fl(()=>{this._isZoneStable=!0,this._runCallbacksIfReady()})}})})}increasePendingRequestCount(){return this._pendingCount+=1,this._didWork=!0,this._pendingCount}decreasePendingRequestCount(){if(this._pendingCount-=1,this._pendingCount<0)throw new Error("pending async requests below zero");return this._runCallbacksIfReady(),this._pendingCount}isStable(){return this._isZoneStable&&0===this._pendingCount&&!this._ngZone.hasPendingMacrotasks}_runCallbacksIfReady(){if(this.isStable())Fl(()=>{for(;0!==this._callbacks.length;){let t=this._callbacks.pop();clearTimeout(t.timeoutId),t.doneCb(this._didWork)}this._didWork=!1});else{let t=this.getPendingTasks();this._callbacks=this._callbacks.filter(e=>!e.updateCb||!e.updateCb(t)||(clearTimeout(e.timeoutId),!1)),this._didWork=!0}}getPendingTasks(){return this.taskTrackingZone?this.taskTrackingZone.macroTasks.map(t=>({source:t.source,creationLocation:t.creationLocation,data:t.data})):[]}addCallback(t,e,n){let i=-1;e&&e>0&&(i=setTimeout(()=>{this._callbacks=this._callbacks.filter(t=>t.timeoutId!==i),t(this._didWork,this.getPendingTasks())},e)),this._callbacks.push({doneCb:t,timeoutId:i,updateCb:n})}whenStable(t,e,n){if(n&&!this.taskTrackingZone)throw new Error('Task tracking zone is required when passing an update callback to whenStable(). Is "zone.js/dist/task-tracking.js" loaded?');this.addCallback(t,e,n),this._runCallbacksIfReady()}getPendingRequestCount(){return this._pendingCount}findProviders(t,e,n){return[]}}return t.\u0275fac=function(e){return new(e||t)(Wt(Vl))},t.\u0275prov=ct({token:t,factory:t.\u0275fac}),t})(),Ul=(()=>{class t{constructor(){this._applications=new Map,Zl.addToWindow(this)}registerApplication(t,e){this._applications.set(t,e)}unregisterApplication(t){this._applications.delete(t)}unregisterAllApplications(){this._applications.clear()}getTestability(t){return this._applications.get(t)||null}getAllTestabilities(){return Array.from(this._applications.values())}getAllRootElements(){return Array.from(this._applications.keys())}findTestabilityInTree(t,e=!0){return Zl.findTestabilityInTree(this,t,e)}}return t.\u0275fac=function(e){return new(e||t)},t.\u0275prov=ct({token:t,factory:t.\u0275fac}),t})();class Gl{addToWindow(t){}findTestabilityInTree(t,e,n){return null}}let Wl,Zl=new Gl;const Ql=new Mt("AllowMultipleToken");function Kl(t,e,n=[]){const i="Platform: "+e,s=new Mt(i);return(e=[])=>{let r=Yl();if(!r||r.injector.get(Ql,!1))if(t)t(n.concat(e).concat({provide:s,useValue:!0}));else{const t=n.concat(e).concat({provide:s,useValue:!0},{provide:Lr,useValue:"platform"});!function(t){if(Wl&&!Wl.destroyed&&!Wl.injector.get(Ql,!1))throw new Error("There can be only one platform. Destroy the previous one to create a new one.");Wl=t.get(Jl);const e=t.get(vl,null);e&&e.forEach(t=>t())}(Jr.create({providers:t,name:i}))}return function(t){const e=Yl();if(!e)throw new Error("No platform exists!");if(!e.injector.get(t,null))throw new Error("A platform with a different configuration has been created. Please destroy it first.");return e}(s)}}function Yl(){return Wl&&!Wl.destroyed?Wl:null}let Jl=(()=>{class t{constructor(t){this._injector=t,this._modules=[],this._destroyListeners=[],this._destroyed=!1}bootstrapModuleFactory(t,e){const n=function(t,e){let n;return n="noop"===t?new ql:("zone.js"===t?void 0:t)||new Vl({enableLongStackTrace:wi(),shouldCoalesceEventChangeDetection:e}),n}(e?e.ngZone:void 0,e&&e.ngZoneEventCoalescing||!1),i=[{provide:Vl,useValue:n}];return n.run(()=>{const e=Jr.create({providers:i,parent:this.injector,name:t.moduleType.name}),s=t.create(e),r=s.injector.get(ci,null);if(!r)throw new Error("No ErrorHandler. Is platform module (BrowserModule) included?");return s.onDestroy(()=>ec(this._modules,s)),n.runOutsideAngular(()=>n.onError.subscribe({next:t=>{r.handleError(t)}})),function(t,e,n){try{const i=n();return yo(i)?i.catch(n=>{throw e.runOutsideAngular(()=>t.handleError(n)),n}):i}catch(i){throw e.runOutsideAngular(()=>t.handleError(i)),i}}(r,n,()=>{const t=s.injector.get(gl);return t.runInitializers(),t.donePromise.then(()=>($a(s.injector.get(Sl,"en-US")||"en-US"),this._moduleDoBootstrap(s),s))})})}bootstrapModule(t,e=[]){const n=Xl({},e);return function(t,e,n){const i=new Wa(n);return Promise.resolve(i)}(0,0,t).then(t=>this.bootstrapModuleFactory(t,n))}_moduleDoBootstrap(t){const e=t.injector.get(tc);if(t._bootstrapComponents.length>0)t._bootstrapComponents.forEach(t=>e.bootstrap(t));else{if(!t.instance.ngDoBootstrap)throw new Error(`The module ${bt(t.instance.constructor)} was bootstrapped, but it does not declare "@NgModule.bootstrap" components nor a "ngDoBootstrap" method. Please define one of these.`);t.instance.ngDoBootstrap(e)}this._modules.push(t)}onDestroy(t){this._destroyListeners.push(t)}get injector(){return this._injector}destroy(){if(this._destroyed)throw new Error("The platform has already been destroyed!");this._modules.slice().forEach(t=>t.destroy()),this._destroyListeners.forEach(t=>t()),this._destroyed=!0}get destroyed(){return this._destroyed}}return t.\u0275fac=function(e){return new(e||t)(Wt(Jr))},t.\u0275prov=ct({token:t,factory:t.\u0275fac}),t})();function Xl(t,e){return Array.isArray(e)?e.reduce(Xl,t):Object.assign(Object.assign({},t),e)}let tc=(()=>{class t{constructor(t,e,n,i,s,r){this._zone=t,this._console=e,this._injector=n,this._exceptionHandler=i,this._componentFactoryResolver=s,this._initStatus=r,this._bootstrapListeners=[],this._views=[],this._runningTick=!1,this._enforceNoNewChanges=!1,this._stable=!0,this.componentTypes=[],this.components=[],this._enforceNoNewChanges=wi(),this._zone.onMicrotaskEmpty.subscribe({next:()=>{this._zone.run(()=>{this.tick()})}});const o=new y(t=>{this._stable=this._zone.isStable&&!this._zone.hasPendingMacrotasks&&!this._zone.hasPendingMicrotasks,this._zone.runOutsideAngular(()=>{t.next(this._stable),t.complete()})}),a=new y(t=>{let e;this._zone.runOutsideAngular(()=>{e=this._zone.onStable.subscribe(()=>{Vl.assertNotInAngularZone(),Fl(()=>{this._stable||this._zone.hasPendingMacrotasks||this._zone.hasPendingMicrotasks||(this._stable=!0,t.next(!0))})})});const n=this._zone.onUnstable.subscribe(()=>{Vl.assertInAngularZone(),this._stable&&(this._stable=!1,this._zone.runOutsideAngular(()=>{t.next(!1)}))});return()=>{e.unsubscribe(),n.unsubscribe()}});this.isStable=U(o,a.pipe(X()))}bootstrap(t,e){if(!this._initStatus.done)throw new Error("Cannot bootstrap as there are still asynchronous initializers running. Bootstrap components in the `ngDoBootstrap` method of the root module.");let n;n=t instanceof ea?t:this._componentFactoryResolver.resolveComponentFactory(t),this.componentTypes.push(n.componentType);const i=n.isBoundToModule?void 0:this._injector.get(Jt),s=n.create(Jr.NULL,[],e||n.selector,i);s.onDestroy(()=>{this._unloadComponent(s)});const r=s.injector.get($l,null);return r&&s.injector.get(Ul).registerApplication(s.location.nativeElement,r),this._loadComponent(s),wi()&&this._console.log("Angular is running in development mode. Call enableProdMode() to enable production mode."),s}tick(){if(this._runningTick)throw new Error("ApplicationRef.tick is called recursively");try{this._runningTick=!0;for(let t of this._views)t.detectChanges();if(this._enforceNoNewChanges)for(let t of this._views)t.checkNoChanges()}catch(t){this._zone.runOutsideAngular(()=>this._exceptionHandler.handleError(t))}finally{this._runningTick=!1}}attachView(t){const e=t;this._views.push(e),e.attachToAppRef(this)}detachView(t){const e=t;ec(this._views,e),e.detachFromAppRef()}_loadComponent(t){this.attachView(t.hostView),this.tick(),this.components.push(t),this._injector.get(Cl,[]).concat(this._bootstrapListeners).forEach(e=>e(t))}_unloadComponent(t){this.detachView(t.hostView),ec(this.components,t)}ngOnDestroy(){this._views.slice().forEach(t=>t.destroy())}get viewCount(){return this._views.length}}return t.\u0275fac=function(e){return new(e||t)(Wt(Vl),Wt(El),Wt(Jr),Wt(ci),Wt(ia),Wt(gl))},t.\u0275prov=ct({token:t,factory:t.\u0275fac}),t})();function ec(t,e){const n=t.indexOf(e);n>-1&&t.splice(n,1)}const nc=Kl(null,"core",[{provide:wl,useValue:"unknown"},{provide:Jl,deps:[Jr]},{provide:Ul,deps:[]},{provide:El,deps:[]}]),ic=[{provide:tc,useClass:tc,deps:[Vl,El,Jr,ci,ia,gl]},{provide:Fa,deps:[Vl],useFactory:function(t){let e=[];return t.onStable.subscribe(()=>{for(;e.length;)e.pop()()}),function(t){e.push(t)}}},{provide:gl,useClass:gl,deps:[[new it,ml]]},{provide:Rl,useClass:Rl,deps:[]},yl,{provide:Ea,useFactory:function(){return ka},deps:[]},{provide:Sa,useFactory:function(){return Ta},deps:[]},{provide:Sl,useFactory:function(t){return $a(t=t||"undefined"!=typeof $localize&&$localize.locale||"en-US"),t},deps:[[new nt(Sl),new it,new rt]]},{provide:xl,useValue:"USD"}];let sc=(()=>{class t{constructor(t){}}return t.\u0275mod=me({type:t}),t.\u0275inj=ht({factory:function(e){return new(e||t)(Wt(tc))},providers:ic}),t})(),rc=null;function oc(){return rc}const ac=new Mt("DocumentToken");var lc=function(t){return t[t.Zero=0]="Zero",t[t.One=1]="One",t[t.Two=2]="Two",t[t.Few=3]="Few",t[t.Many=4]="Many",t[t.Other=5]="Other",t}({});class cc{}let hc=(()=>{class t extends cc{constructor(t){super(),this.locale=t}getPluralCategory(t,e){switch(function(t){return function(t){const e=function(t){return t.toLowerCase().replace(/_/g,"-")}(t);let n=Ha(e);if(n)return n;const i=e.split("-")[0];if(n=Ha(i),n)return n;if("en"===i)return ja;throw new Error(`Missing locale data for the locale "${t}".`)}(t)[za.PluralCase]}(e||this.locale)(t)){case lc.Zero:return"zero";case lc.One:return"one";case lc.Two:return"two";case lc.Few:return"few";case lc.Many:return"many";default:return"other"}}}return t.\u0275fac=function(e){return new(e||t)(Wt(Sl))},t.\u0275prov=ct({token:t,factory:t.\u0275fac}),t})();class uc{constructor(t,e,n,i){this.$implicit=t,this.ngForOf=e,this.index=n,this.count=i}get first(){return 0===this.index}get last(){return this.index===this.count-1}get even(){return this.index%2==0}get odd(){return!this.even}}let dc=(()=>{class t{constructor(t,e,n){this._viewContainer=t,this._template=e,this._differs=n,this._ngForOf=null,this._ngForOfDirty=!0,this._differ=null}set ngForOf(t){this._ngForOf=t,this._ngForOfDirty=!0}set ngForTrackBy(t){wi()&&null!=t&&"function"!=typeof t&&console&&console.warn&&console.warn(`trackBy must be a function, but received ${JSON.stringify(t)}. See https://angular.io/api/common/NgForOf#change-propagation for more information.`),this._trackByFn=t}get ngForTrackBy(){return this._trackByFn}set ngForTemplate(t){t&&(this._template=t)}ngDoCheck(){if(this._ngForOfDirty){this._ngForOfDirty=!1;const n=this._ngForOf;if(!this._differ&&n)try{this._differ=this._differs.find(n).create(this.ngForTrackBy)}catch(e){throw new Error(`Cannot find a differ supporting object '${n}' of type '${t=n,t.name||typeof t}'. NgFor only supports binding to Iterables such as Arrays.`)}}var t;if(this._differ){const t=this._differ.diff(this._ngForOf);t&&this._applyChanges(t)}}_applyChanges(t){const e=[];t.forEachOperation((t,n,i)=>{if(null==t.previousIndex){const n=this._viewContainer.createEmbeddedView(this._template,new uc(null,this._ngForOf,-1,-1),null===i?void 0:i),s=new pc(t,n);e.push(s)}else if(null==i)this._viewContainer.remove(null===n?void 0:n);else if(null!==n){const s=this._viewContainer.get(n);this._viewContainer.move(s,i);const r=new pc(t,s);e.push(r)}});for(let n=0;n{this._viewContainer.get(t.currentIndex).context.$implicit=t.item})}_perViewChange(t,e){t.context.$implicit=e.item}static ngTemplateContextGuard(t,e){return!0}}return t.\u0275fac=function(e){return new(e||t)(lo(Aa),lo(Ia),lo(Ea))},t.\u0275dir=_e({type:t,selectors:[["","ngFor","","ngForOf",""]],inputs:{ngForOf:"ngForOf",ngForTrackBy:"ngForTrackBy",ngForTemplate:"ngForTemplate"}}),t})();class pc{constructor(t,e){this.record=t,this.view=e}}let fc=(()=>{class t{constructor(t,e){this._viewContainer=t,this._context=new mc,this._thenTemplateRef=null,this._elseTemplateRef=null,this._thenViewRef=null,this._elseViewRef=null,this._thenTemplateRef=e}set ngIf(t){this._context.$implicit=this._context.ngIf=t,this._updateView()}set ngIfThen(t){gc("ngIfThen",t),this._thenTemplateRef=t,this._thenViewRef=null,this._updateView()}set ngIfElse(t){gc("ngIfElse",t),this._elseTemplateRef=t,this._elseViewRef=null,this._updateView()}_updateView(){this._context.$implicit?this._thenViewRef||(this._viewContainer.clear(),this._elseViewRef=null,this._thenTemplateRef&&(this._thenViewRef=this._viewContainer.createEmbeddedView(this._thenTemplateRef,this._context))):this._elseViewRef||(this._viewContainer.clear(),this._thenViewRef=null,this._elseTemplateRef&&(this._elseViewRef=this._viewContainer.createEmbeddedView(this._elseTemplateRef,this._context)))}static ngTemplateContextGuard(t,e){return!0}}return t.\u0275fac=function(e){return new(e||t)(lo(Aa),lo(Ia))},t.\u0275dir=_e({type:t,selectors:[["","ngIf",""]],inputs:{ngIf:"ngIf",ngIfThen:"ngIfThen",ngIfElse:"ngIfElse"}}),t})();class mc{constructor(){this.$implicit=null,this.ngIf=null}}function gc(t,e){if(e&&!e.createEmbeddedView)throw new Error(`${t} must be a TemplateRef, but received '${bt(e)}'.`)}class _c{constructor(t,e){this._viewContainerRef=t,this._templateRef=e,this._created=!1}create(){this._created=!0,this._viewContainerRef.createEmbeddedView(this._templateRef)}destroy(){this._created=!1,this._viewContainerRef.clear()}enforceState(t){t&&!this._created?this.create():!t&&this._created&&this.destroy()}}let yc=(()=>{class t{constructor(){this._defaultUsed=!1,this._caseCount=0,this._lastCaseCheckIndex=0,this._lastCasesMatched=!1}set ngSwitch(t){this._ngSwitch=t,0===this._caseCount&&this._updateDefaultCases(!0)}_addCase(){return this._caseCount++}_addDefault(t){this._defaultViews||(this._defaultViews=[]),this._defaultViews.push(t)}_matchCase(t){const e=t==this._ngSwitch;return this._lastCasesMatched=this._lastCasesMatched||e,this._lastCaseCheckIndex++,this._lastCaseCheckIndex===this._caseCount&&(this._updateDefaultCases(!this._lastCasesMatched),this._lastCaseCheckIndex=0,this._lastCasesMatched=!1),e}_updateDefaultCases(t){if(this._defaultViews&&t!==this._defaultUsed){this._defaultUsed=t;for(let e=0;e{class t{constructor(t,e,n){this.ngSwitch=n,n._addCase(),this._view=new _c(t,e)}ngDoCheck(){this._view.enforceState(this.ngSwitch._matchCase(this.ngSwitchCase))}}return t.\u0275fac=function(e){return new(e||t)(lo(Aa),lo(Ia),lo(yc,1))},t.\u0275dir=_e({type:t,selectors:[["","ngSwitchCase",""]],inputs:{ngSwitchCase:"ngSwitchCase"}}),t})(),vc=(()=>{class t{constructor(t,e,n){this._ngEl=t,this._differs=e,this._renderer=n,this._ngStyle=null,this._differ=null}set ngStyle(t){this._ngStyle=t,!this._differ&&t&&(this._differ=this._differs.find(t).create())}ngDoCheck(){if(this._differ){const t=this._differ.diff(this._ngStyle);t&&this._applyChanges(t)}}_setStyle(t,e){const[n,i]=t.split(".");null!=(e=null!=e&&i?`${e}${i}`:e)?this._renderer.setStyle(this._ngEl.nativeElement,n,e):this._renderer.removeStyle(this._ngEl.nativeElement,n)}_applyChanges(t){t.forEachRemovedItem(t=>this._setStyle(t.key,null)),t.forEachAddedItem(t=>this._setStyle(t.key,t.currentValue)),t.forEachChangedItem(t=>this._setStyle(t.key,t.currentValue))}}return t.\u0275fac=function(e){return new(e||t)(lo(sa),lo(Sa),lo(la))},t.\u0275dir=_e({type:t,selectors:[["","ngStyle",""]],inputs:{ngStyle:"ngStyle"}}),t})(),wc=(()=>{class t{}return t.\u0275mod=me({type:t}),t.\u0275inj=ht({factory:function(e){return new(e||t)},providers:[{provide:cc,useClass:hc}]}),t})();class Cc extends class extends class{}{constructor(){super()}supportsDOMEvents(){return!0}}{static makeCurrent(){var t;t=new Cc,rc||(rc=t)}getProperty(t,e){return t[e]}log(t){window.console&&window.console.log&&window.console.log(t)}logGroup(t){window.console&&window.console.group&&window.console.group(t)}logGroupEnd(){window.console&&window.console.groupEnd&&window.console.groupEnd()}onAndCancel(t,e,n){return t.addEventListener(e,n,!1),()=>{t.removeEventListener(e,n,!1)}}dispatchEvent(t,e){t.dispatchEvent(e)}remove(t){return t.parentNode&&t.parentNode.removeChild(t),t}getValue(t){return t.value}createElement(t,e){return(e=e||this.getDefaultDocument()).createElement(t)}createHtmlDocument(){return document.implementation.createHTMLDocument("fakeTitle")}getDefaultDocument(){return document}isElementNode(t){return t.nodeType===Node.ELEMENT_NODE}isShadowRoot(t){return t instanceof DocumentFragment}getGlobalEventTarget(t,e){return"window"===e?window:"document"===e?t:"body"===e?t.body:null}getHistory(){return window.history}getLocation(){return window.location}getBaseHref(t){const e=Sc||(Sc=document.querySelector("base"),Sc)?Sc.getAttribute("href"):null;return null==e?null:(n=e,Ec||(Ec=document.createElement("a")),Ec.setAttribute("href",n),"/"===Ec.pathname.charAt(0)?Ec.pathname:"/"+Ec.pathname);var n}resetBaseElement(){Sc=null}getUserAgent(){return window.navigator.userAgent}performanceNow(){return window.performance&&window.performance.now?window.performance.now():(new Date).getTime()}supportsCookies(){return!0}getCookie(t){return function(t,e){e=encodeURIComponent(e);for(const n of t.split(";")){const t=n.indexOf("="),[i,s]=-1==t?[n,""]:[n.slice(0,t),n.slice(t+1)];if(i.trim()===e)return decodeURIComponent(s)}return null}(document.cookie,t)}}let Ec,Sc=null;const xc=new Mt("TRANSITION_ID"),kc=[{provide:ml,useFactory:function(t,e,n){return()=>{n.get(gl).donePromise.then(()=>{const n=oc();Array.prototype.slice.apply(e.querySelectorAll("style[ng-transition]")).filter(e=>e.getAttribute("ng-transition")===t).forEach(t=>n.remove(t))})}},deps:[xc,ac,Jr],multi:!0}];class Tc{static init(){var t;t=new Tc,Zl=t}addToWindow(t){Dt.getAngularTestability=(e,n=!0)=>{const i=t.findTestabilityInTree(e,n);if(null==i)throw new Error("Could not find testability for element.");return i},Dt.getAllAngularTestabilities=()=>t.getAllTestabilities(),Dt.getAllAngularRootElements=()=>t.getAllRootElements(),Dt.frameworkStabilizers||(Dt.frameworkStabilizers=[]),Dt.frameworkStabilizers.push(t=>{const e=Dt.getAllAngularTestabilities();let n=e.length,i=!1;const s=function(e){i=i||e,n--,0==n&&t(i)};e.forEach((function(t){t.whenStable(s)}))})}findTestabilityInTree(t,e,n){if(null==e)return null;const i=t.getTestability(e);return null!=i?i:n?oc().isShadowRoot(e)?this.findTestabilityInTree(t,e.host,!0):this.findTestabilityInTree(t,e.parentElement,!0):null}}const Ic=new Mt("EventManagerPlugins");let Dc=(()=>{class t{constructor(t,e){this._zone=e,this._eventNameToPlugin=new Map,t.forEach(t=>t.manager=this),this._plugins=t.slice().reverse()}addEventListener(t,e,n){return this._findPluginFor(e).addEventListener(t,e,n)}addGlobalEventListener(t,e,n){return this._findPluginFor(e).addGlobalEventListener(t,e,n)}getZone(){return this._zone}_findPluginFor(t){const e=this._eventNameToPlugin.get(t);if(e)return e;const n=this._plugins;for(let i=0;i{class t{constructor(){this._stylesSet=new Set}addStyles(t){const e=new Set;t.forEach(t=>{this._stylesSet.has(t)||(this._stylesSet.add(t),e.add(t))}),this.onStylesAdded(e)}onStylesAdded(t){}getAllStyles(){return Array.from(this._stylesSet)}}return t.\u0275fac=function(e){return new(e||t)},t.\u0275prov=ct({token:t,factory:t.\u0275fac}),t})(),Oc=(()=>{class t extends Pc{constructor(t){super(),this._doc=t,this._hostNodes=new Set,this._styleNodes=new Set,this._hostNodes.add(t.head)}_addStylesToHost(t,e){t.forEach(t=>{const n=this._doc.createElement("style");n.textContent=t,this._styleNodes.add(e.appendChild(n))})}addHost(t){this._addStylesToHost(this._stylesSet,t),this._hostNodes.add(t)}removeHost(t){this._hostNodes.delete(t)}onStylesAdded(t){this._hostNodes.forEach(e=>this._addStylesToHost(t,e))}ngOnDestroy(){this._styleNodes.forEach(t=>oc().remove(t))}}return t.\u0275fac=function(e){return new(e||t)(Wt(ac))},t.\u0275prov=ct({token:t,factory:t.\u0275fac}),t})();const Rc={svg:"http://www.w3.org/2000/svg",xhtml:"http://www.w3.org/1999/xhtml",xlink:"http://www.w3.org/1999/xlink",xml:"http://www.w3.org/XML/1998/namespace",xmlns:"http://www.w3.org/2000/xmlns/"},Nc=/%COMP%/g;function Fc(t,e,n){for(let i=0;i{if("__ngUnwrap__"===e)return t;!1===t(e)&&(e.preventDefault(),e.returnValue=!1)}}let Mc=(()=>{class t{constructor(t,e,n){this.eventManager=t,this.sharedStylesHost=e,this.appId=n,this.rendererByCompId=new Map,this.defaultRenderer=new Lc(t)}createRenderer(t,e){if(!t||!e)return this.defaultRenderer;switch(e.encapsulation){case ae.Emulated:{let n=this.rendererByCompId.get(e.id);return n||(n=new jc(this.eventManager,this.sharedStylesHost,e,this.appId),this.rendererByCompId.set(e.id,n)),n.applyToHost(t),n}case ae.Native:case ae.ShadowDom:return new Bc(this.eventManager,this.sharedStylesHost,t,e);default:if(!this.rendererByCompId.has(e.id)){const t=Fc(e.id,e.styles,[]);this.sharedStylesHost.addStyles(t),this.rendererByCompId.set(e.id,this.defaultRenderer)}return this.defaultRenderer}}begin(){}end(){}}return t.\u0275fac=function(e){return new(e||t)(Wt(Dc),Wt(Oc),Wt(_l))},t.\u0275prov=ct({token:t,factory:t.\u0275fac}),t})();class Lc{constructor(t){this.eventManager=t,this.data=Object.create(null)}destroy(){}createElement(t,e){return e?document.createElementNS(Rc[e]||e,t):document.createElement(t)}createComment(t){return document.createComment(t)}createText(t){return document.createTextNode(t)}appendChild(t,e){t.appendChild(e)}insertBefore(t,e,n){t&&t.insertBefore(e,n)}removeChild(t,e){t&&t.removeChild(e)}selectRootElement(t,e){let n="string"==typeof t?document.querySelector(t):t;if(!n)throw new Error(`The selector "${t}" did not match any elements`);return e||(n.textContent=""),n}parentNode(t){return t.parentNode}nextSibling(t){return t.nextSibling}setAttribute(t,e,n,i){if(i){e=i+":"+e;const s=Rc[i];s?t.setAttributeNS(s,e,n):t.setAttribute(e,n)}else t.setAttribute(e,n)}removeAttribute(t,e,n){if(n){const i=Rc[n];i?t.removeAttributeNS(i,e):t.removeAttribute(`${n}:${e}`)}else t.removeAttribute(e)}addClass(t,e){t.classList.add(e)}removeClass(t,e){t.classList.remove(e)}setStyle(t,e,n,i){i&aa.DashCase?t.style.setProperty(e,n,i&aa.Important?"important":""):t.style[e]=n}removeStyle(t,e,n){n&aa.DashCase?t.style.removeProperty(e):t.style[e]=""}setProperty(t,e,n){t[e]=n}setValue(t,e){t.nodeValue=e}listen(t,e,n){return"string"==typeof t?this.eventManager.addGlobalEventListener(t,e,Vc(n)):this.eventManager.addEventListener(t,e,Vc(n))}}class jc extends Lc{constructor(t,e,n,i){super(t),this.component=n;const s=Fc(i+"-"+n.id,n.styles,[]);e.addStyles(s),this.contentAttr="_ngcontent-%COMP%".replace(Nc,i+"-"+n.id),this.hostAttr=function(t){return"_nghost-%COMP%".replace(Nc,t)}(i+"-"+n.id)}applyToHost(t){super.setAttribute(t,this.hostAttr,"")}createElement(t,e){const n=super.createElement(t,e);return super.setAttribute(n,this.contentAttr,""),n}}class Bc extends Lc{constructor(t,e,n,i){super(t),this.sharedStylesHost=e,this.hostEl=n,this.component=i,this.shadowRoot=i.encapsulation===ae.ShadowDom?n.attachShadow({mode:"open"}):n.createShadowRoot(),this.sharedStylesHost.addHost(this.shadowRoot);const s=Fc(i.id,i.styles,[]);for(let r=0;r{class t extends Ac{constructor(t){super(t)}supports(t){return!0}addEventListener(t,e,n){return t.addEventListener(e,n,!1),()=>this.removeEventListener(t,e,n)}removeEventListener(t,e,n){return t.removeEventListener(e,n)}}return t.\u0275fac=function(e){return new(e||t)(Wt(ac))},t.\u0275prov=ct({token:t,factory:t.\u0275fac}),t})();const zc=["alt","control","meta","shift"],qc={"\b":"Backspace","\t":"Tab","\x7f":"Delete","\x1b":"Escape",Del:"Delete",Esc:"Escape",Left:"ArrowLeft",Right:"ArrowRight",Up:"ArrowUp",Down:"ArrowDown",Menu:"ContextMenu",Scroll:"ScrollLock",Win:"OS"},$c={A:"1",B:"2",C:"3",D:"4",E:"5",F:"6",G:"7",H:"8",I:"9",J:"*",K:"+",M:"-",N:".",O:"/","`":"0","\x90":"NumLock"},Uc={alt:t=>t.altKey,control:t=>t.ctrlKey,meta:t=>t.metaKey,shift:t=>t.shiftKey};let Gc=(()=>{class t extends Ac{constructor(t){super(t)}supports(e){return null!=t.parseEventName(e)}addEventListener(e,n,i){const s=t.parseEventName(n),r=t.eventCallback(s.fullKey,i,this.manager.getZone());return this.manager.getZone().runOutsideAngular(()=>oc().onAndCancel(e,s.domEventName,r))}static parseEventName(e){const n=e.toLowerCase().split("."),i=n.shift();if(0===n.length||"keydown"!==i&&"keyup"!==i)return null;const s=t._normalizeKey(n.pop());let r="";if(zc.forEach(t=>{const e=n.indexOf(t);e>-1&&(n.splice(e,1),r+=t+".")}),r+=s,0!=n.length||0===s.length)return null;const o={};return o.domEventName=i,o.fullKey=r,o}static getEventFullKey(t){let e="",n=function(t){let e=t.key;if(null==e){if(e=t.keyIdentifier,null==e)return"Unidentified";e.startsWith("U+")&&(e=String.fromCharCode(parseInt(e.substring(2),16)),3===t.location&&$c.hasOwnProperty(e)&&(e=$c[e]))}return qc[e]||e}(t);return n=n.toLowerCase()," "===n?n="space":"."===n&&(n="dot"),zc.forEach(i=>{i!=n&&(0,Uc[i])(t)&&(e+=i+".")}),e+=n,e}static eventCallback(e,n,i){return s=>{t.getEventFullKey(s)===e&&i.runGuarded(()=>n(s))}}static _normalizeKey(t){switch(t){case"esc":return"escape";default:return t}}}return t.\u0275fac=function(e){return new(e||t)(Wt(ac))},t.\u0275prov=ct({token:t,factory:t.\u0275fac}),t})(),Wc=(()=>{class t{}return t.\u0275fac=function(e){return new(e||t)},t.\u0275prov=ct({factory:function(){return Wt(Zc)},token:t,providedIn:"root"}),t})(),Zc=(()=>{class t extends Wc{constructor(t){super(),this._doc=t}sanitize(t,e){if(null==e)return null;switch(t){case $i.NONE:return e;case $i.HTML:return _i(e,"HTML")?gi(e):function(t,e){let n=null;try{zi=zi||function(t){return function(){try{return!!(new window.DOMParser).parseFromString("","text/html")}catch(t){return!1}}()?new Ci:new Ei(t)}(t);let i=e?String(e):"";n=zi.getInertBodyElement(i);let s=5,r=i;do{if(0===s)throw new Error("Failed to sanitize html because the input is unstable");s--,i=r,r=n.innerHTML,n=zi.getInertBodyElement(i)}while(i!==r);const o=new Li,a=o.sanitizeChildren(qi(n)||n);return wi()&&o.sanitizedSomething&&console.warn("WARNING: sanitizing HTML stripped some content, see http://g.co/ng/security#xss"),a}finally{if(n){const t=qi(n)||n;for(;t.firstChild;)t.removeChild(t.firstChild)}}}(this._doc,String(e));case $i.STYLE:return _i(e,"Style")?gi(e):e;case $i.SCRIPT:if(_i(e,"Script"))return gi(e);throw new Error("unsafe value used in a script context");case $i.URL:return yi(e),_i(e,"URL")?gi(e):ki(String(e));case $i.RESOURCE_URL:if(_i(e,"ResourceURL"))return gi(e);throw new Error("unsafe value used in a resource URL context (see http://g.co/ng/security#xss)");default:throw new Error(`Unexpected SecurityContext ${t} (see http://g.co/ng/security#xss)`)}}bypassSecurityTrustHtml(t){return new ui(t)}bypassSecurityTrustStyle(t){return new di(t)}bypassSecurityTrustScript(t){return new pi(t)}bypassSecurityTrustUrl(t){return new fi(t)}bypassSecurityTrustResourceUrl(t){return new mi(t)}}return t.\u0275fac=function(e){return new(e||t)(Wt(ac))},t.\u0275prov=ct({factory:function(){return t=Wt(Lt),new Zc(t.get(ac));var t},token:t,providedIn:"root"}),t})();const Qc=Kl(nc,"browser",[{provide:wl,useValue:"browser"},{provide:vl,useValue:function(){Cc.makeCurrent(),Tc.init()},multi:!0},{provide:ac,useFactory:function(){return function(t){Ne=t}(document),document},deps:[]}]),Kc=[[],{provide:Lr,useValue:"root"},{provide:ci,useFactory:function(){return new ci},deps:[]},{provide:Ic,useClass:Hc,multi:!0,deps:[ac,Vl,wl]},{provide:Ic,useClass:Gc,multi:!0,deps:[ac]},[],{provide:Mc,useClass:Mc,deps:[Dc,Oc,_l]},{provide:oa,useExisting:Mc},{provide:Pc,useExisting:Oc},{provide:Oc,useClass:Oc,deps:[ac]},{provide:$l,useClass:$l,deps:[Vl]},{provide:Dc,useClass:Dc,deps:[Ic,Vl]},[]];let Yc,Jc=(()=>{class t{constructor(t){if(t)throw new Error("BrowserModule has already been loaded. If you need access to common directives such as NgIf and NgFor from a lazy loaded module, import CommonModule instead.")}static withServerTransition(e){return{ngModule:t,providers:[{provide:_l,useValue:e.appId},{provide:xc,useExisting:_l},kc]}}}return t.\u0275mod=me({type:t}),t.\u0275inj=ht({factory:function(e){return new(e||t)(Wt(t,12))},providers:Kc,imports:[wc,sc]}),t})();"undefined"!=typeof window&&window;try{Yc="undefined"!=typeof Intl&&Intl.v8BreakIterator}catch(P_){Yc=!1}let Xc,th=(()=>{class t{constructor(t){this._platformId=t,this.isBrowser=this._platformId?"browser"===this._platformId:"object"==typeof document&&!!document,this.EDGE=this.isBrowser&&/(edge)/i.test(navigator.userAgent),this.TRIDENT=this.isBrowser&&/(msie|trident)/i.test(navigator.userAgent),this.BLINK=this.isBrowser&&!(!window.chrome&&!Yc)&&"undefined"!=typeof CSS&&!this.EDGE&&!this.TRIDENT,this.WEBKIT=this.isBrowser&&/AppleWebKit/i.test(navigator.userAgent)&&!this.BLINK&&!this.EDGE&&!this.TRIDENT,this.IOS=this.isBrowser&&/iPad|iPhone|iPod/.test(navigator.userAgent)&&!("MSStream"in window),this.FIREFOX=this.isBrowser&&/(firefox|minefield)/i.test(navigator.userAgent),this.ANDROID=this.isBrowser&&/android/i.test(navigator.userAgent)&&!this.TRIDENT,this.SAFARI=this.isBrowser&&/safari/i.test(navigator.userAgent)&&this.WEBKIT}}return t.\u0275fac=function(e){return new(e||t)(Wt(wl))},t.\u0275prov=ct({factory:function(){return new t(Wt(wl))},token:t,providedIn:"root"}),t})(),eh=(()=>{class t{}return t.\u0275mod=me({type:t}),t.\u0275inj=ht({factory:function(e){return new(e||t)}}),t})();const nh=["color","button","checkbox","date","datetime-local","email","file","hidden","image","month","number","password","radio","range","reset","search","submit","tel","text","time","url","week"];function ih(){if(Xc)return Xc;if("object"!=typeof document||!document)return Xc=new Set(nh),Xc;let t=document.createElement("input");return Xc=new Set(nh.filter(e=>(t.setAttribute("type",e),t.type===e))),Xc}let sh,rh;function oh(t){return function(){if(null==sh&&"undefined"!=typeof window)try{window.addEventListener("test",null,Object.defineProperty({},"passive",{get:()=>sh=!0}))}finally{sh=sh||!1}return sh}()?t:!!t.capture}function ah(t){return null!=t&&""+t!="false"}function lh(t,e=0){return function(t){return!isNaN(parseFloat(t))&&!isNaN(Number(t))}(t)?Number(t):e}function ch(t){return t instanceof sa?t.nativeElement:t}const hh=new y(t=>t.complete());function uh(t,e,n,s){return i(n)&&(s=n,n=void 0),s?uh(t,e,n).pipe(F(t=>l(t)?s(...t):s(t))):new y(i=>{!function t(e,n,i,s,r){let o;if(function(t){return t&&"function"==typeof t.addEventListener&&"function"==typeof t.removeEventListener}(e)){const t=e;e.addEventListener(n,i,r),o=()=>t.removeEventListener(n,i,r)}else if(function(t){return t&&"function"==typeof t.on&&"function"==typeof t.off}(e)){const t=e;e.on(n,i),o=()=>t.off(n,i)}else if(function(t){return t&&"function"==typeof t.addListener&&"function"==typeof t.removeListener}(e)){const t=e;e.addListener(n,i),o=()=>t.removeListener(n,i)}else{if(!e||!e.length)throw new TypeError("Invalid event target");for(let o=0,a=e.length;o1?Array.prototype.slice.call(arguments):t)}),i,n)})}class dh extends u{constructor(t,e){super()}schedule(t,e=0){return this}}class ph extends dh{constructor(t,e){super(t,e),this.scheduler=t,this.work=e,this.pending=!1}schedule(t,e=0){if(this.closed)return this;this.state=t;const n=this.id,i=this.scheduler;return null!=n&&(this.id=this.recycleAsyncId(i,n,e)),this.pending=!0,this.delay=e,this.id=this.id||this.requestAsyncId(i,this.id,e),this}requestAsyncId(t,e,n=0){return setInterval(t.flush.bind(t,this),n)}recycleAsyncId(t,e,n=0){if(null!==n&&this.delay===n&&!1===this.pending)return e;clearInterval(e)}execute(t,e){if(this.closed)return new Error("executing a cancelled action");this.pending=!1;const n=this._execute(t,e);if(n)return n;!1===this.pending&&null!=this.id&&(this.id=this.recycleAsyncId(this.scheduler,this.id,null))}_execute(t,e){let n=!1,i=void 0;try{this.work(t)}catch(s){n=!0,i=!!s&&s||new Error(s)}if(n)return this.unsubscribe(),i}_unsubscribe(){const t=this.id,e=this.scheduler,n=e.actions,i=n.indexOf(this);this.work=null,this.state=null,this.pending=!1,this.scheduler=null,-1!==i&&n.splice(i,1),null!=t&&(this.id=this.recycleAsyncId(e,t,null)),this.delay=null}}let fh=(()=>{class t{constructor(e,n=t.now){this.SchedulerAction=e,this.now=n}schedule(t,e=0,n){return new this.SchedulerAction(this,t).schedule(n,e)}}return t.now=()=>Date.now(),t})();class mh extends fh{constructor(t,e=fh.now){super(t,()=>mh.delegate&&mh.delegate!==this?mh.delegate.now():e()),this.actions=[],this.active=!1,this.scheduled=void 0}schedule(t,e=0,n){return mh.delegate&&mh.delegate!==this?mh.delegate.schedule(t,e,n):super.schedule(t,e,n)}flush(t){const{actions:e}=this;if(this.active)return void e.push(t);let n;this.active=!0;do{if(n=t.execute(t.state,t.delay))break}while(t=e.shift());if(this.active=!1,n){for(;t=e.shift();)t.unsubscribe();throw n}}}const gh=new mh(ph);class _h{constructor(t){this.durationSelector=t}call(t,e){return e.subscribe(new yh(t,this.durationSelector))}}class yh extends N{constructor(t,e){super(t),this.durationSelector=e,this.hasValue=!1}_next(t){if(this.value=t,this.hasValue=!0,!this.throttled){let n;try{const{durationSelector:e}=this;n=e(t)}catch(e){return this.destination.error(e)}const i=R(this,n);!i||i.closed?this.clearThrottle():this.add(this.throttled=i)}}clearThrottle(){const{value:t,hasValue:e,throttled:n}=this;n&&(this.remove(n),this.throttled=null,n.unsubscribe()),e&&(this.value=null,this.hasValue=!1,this.destination.next(t))}notifyNext(t,e,n,i){this.clearThrottle()}notifyComplete(){this.clearThrottle()}}function bh(t){return!l(t)&&t-parseFloat(t)+1>=0}function vh(t){const{index:e,period:n,subscriber:i}=t;if(i.next(e),!i.closed){if(-1===n)return i.complete();t.index=e+1,this.schedule(t,n)}}function wh(t,e=gh){return n=()=>function(t=0,e,n){let i=-1;return bh(e)?i=Number(e)<1?1:Number(e):x(e)&&(n=e),x(n)||(n=gh),new y(e=>{const s=bh(t)?t:+t-n.now();return n.schedule(vh,s,{index:0,period:i,subscriber:e})})}(t,e),function(t){return t.lift(new _h(n))};var n}function Ch(t){return e=>e.lift(new Eh(t))}class Eh{constructor(t){this.notifier=t}call(t,e){const n=new Sh(t),i=R(n,this.notifier);return i&&!n.seenValue?(n.add(i),e.subscribe(n)):n}}class Sh extends N{constructor(t){super(t),this.seenValue=!1}notifyNext(t,e,n,i,s){this.seenValue=!0,this.complete()}notifyComplete(){}}const xh=oh({passive:!0});let kh=(()=>{class t{constructor(t,e){this._platform=t,this._ngZone=e,this._monitoredElements=new Map}monitor(t){if(!this._platform.isBrowser)return hh;const e=ch(t),n=this._monitoredElements.get(e);if(n)return n.subject.asObservable();const i=new E,s="cdk-text-field-autofilled",r=t=>{"cdk-text-field-autofill-start"!==t.animationName||e.classList.contains(s)?"cdk-text-field-autofill-end"===t.animationName&&e.classList.contains(s)&&(e.classList.remove(s),this._ngZone.run(()=>i.next({target:t.target,isAutofilled:!1}))):(e.classList.add(s),this._ngZone.run(()=>i.next({target:t.target,isAutofilled:!0})))};return this._ngZone.runOutsideAngular(()=>{e.addEventListener("animationstart",r,xh),e.classList.add("cdk-text-field-autofill-monitored")}),this._monitoredElements.set(e,{subject:i,unlisten:()=>{e.removeEventListener("animationstart",r,xh)}}),i.asObservable()}stopMonitoring(t){const e=ch(t),n=this._monitoredElements.get(e);n&&(n.unlisten(),n.subject.complete(),e.classList.remove("cdk-text-field-autofill-monitored"),e.classList.remove("cdk-text-field-autofilled"),this._monitoredElements.delete(e))}ngOnDestroy(){this._monitoredElements.forEach((t,e)=>this.stopMonitoring(e))}}return t.\u0275fac=function(e){return new(e||t)(Wt(th),Wt(Vl))},t.\u0275prov=ct({factory:function(){return new t(Wt(th),Wt(Vl))},token:t,providedIn:"root"}),t})(),Th=(()=>{class t{}return t.\u0275mod=me({type:t}),t.\u0275inj=ht({factory:function(e){return new(e||t)},imports:[[eh]]}),t})();function Ih(...t){let e=t[t.length-1];return x(e)?(t.pop(),L(t,e)):$(t)}function Dh(){}function Ah(t,e,n){return function(i){return i.lift(new Ph(t,e,n))}}class Ph{constructor(t,e,n){this.nextOrObserver=t,this.error=e,this.complete=n}call(t,e){return e.subscribe(new Oh(t,this.nextOrObserver,this.error,this.complete))}}class Oh extends f{constructor(t,e,n,s){super(t),this._tapNext=Dh,this._tapError=Dh,this._tapComplete=Dh,this._tapError=n||Dh,this._tapComplete=s||Dh,i(e)?(this._context=this,this._tapNext=e):e&&(this._context=e,this._tapNext=e.next||Dh,this._tapError=e.error||Dh,this._tapComplete=e.complete||Dh)}_next(t){try{this._tapNext.call(this._context,t)}catch(e){return void this.destination.error(e)}this.destination.next(t)}_error(t){try{this._tapError.call(this._context,t)}catch(t){return void this.destination.error(t)}this.destination.error(t)}_complete(){try{this._tapComplete.call(this._context)}catch(t){return void this.destination.error(t)}return this.destination.complete()}}class Rh{constructor(t,e){this.dueTime=t,this.scheduler=e}call(t,e){return e.subscribe(new Nh(t,this.dueTime,this.scheduler))}}class Nh extends f{constructor(t,e,n){super(t),this.dueTime=e,this.scheduler=n,this.debouncedSubscription=null,this.lastValue=null,this.hasValue=!1}_next(t){this.clearDebounce(),this.lastValue=t,this.hasValue=!0,this.add(this.debouncedSubscription=this.scheduler.schedule(Fh,this.dueTime,this))}_complete(){this.debouncedNext(),this.destination.complete()}debouncedNext(){if(this.clearDebounce(),this.hasValue){const{lastValue:t}=this;this.lastValue=null,this.hasValue=!1,this.destination.next(t)}}clearDebounce(){const t=this.debouncedSubscription;null!==t&&(this.remove(t),t.unsubscribe(),this.debouncedSubscription=null)}}function Fh(t){t.debouncedNext()}function Vh(t,e){return function(n){return n.lift(new Mh(t,e))}}class Mh{constructor(t,e){this.predicate=t,this.thisArg=e}call(t,e){return e.subscribe(new Lh(t,this.predicate,this.thisArg))}}class Lh extends f{constructor(t,e,n){super(t),this.predicate=e,this.thisArg=n,this.count=0}_next(t){let e;try{e=this.predicate.call(this.thisArg,t,this.count++)}catch(n){return void this.destination.error(n)}e&&this.destination.next(t)}}const jh=(()=>{function t(){return Error.call(this),this.message="argument out of range",this.name="ArgumentOutOfRangeError",this}return t.prototype=Object.create(Error.prototype),t})();function Bh(t){return e=>0===t?hh:e.lift(new Hh(t))}class Hh{constructor(t){if(this.total=t,this.total<0)throw new jh}call(t,e){return e.subscribe(new zh(t,this.total))}}class zh extends f{constructor(t,e){super(t),this.total=e,this.count=0}_next(t){const e=this.total,n=++this.count;n<=e&&(this.destination.next(t),n===e&&(this.destination.complete(),this.unsubscribe()))}}let qh=(()=>{class t{create(t){return"undefined"==typeof MutationObserver?null:new MutationObserver(t)}}return t.\u0275fac=function(e){return new(e||t)},t.\u0275prov=ct({factory:function(){return new t},token:t,providedIn:"root"}),t})(),$h=(()=>{class t{constructor(t){this._mutationObserverFactory=t,this._observedElements=new Map}ngOnDestroy(){this._observedElements.forEach((t,e)=>this._cleanupObserver(e))}observe(t){const e=ch(t);return new y(t=>{const n=this._observeElement(e).subscribe(t);return()=>{n.unsubscribe(),this._unobserveElement(e)}})}_observeElement(t){if(this._observedElements.has(t))this._observedElements.get(t).count++;else{const e=new E,n=this._mutationObserverFactory.create(t=>e.next(t));n&&n.observe(t,{characterData:!0,childList:!0,subtree:!0}),this._observedElements.set(t,{observer:n,stream:e,count:1})}return this._observedElements.get(t).stream}_unobserveElement(t){this._observedElements.has(t)&&(this._observedElements.get(t).count--,this._observedElements.get(t).count||this._cleanupObserver(t))}_cleanupObserver(t){if(this._observedElements.has(t)){const{observer:e,stream:n}=this._observedElements.get(t);e&&e.disconnect(),n.complete(),this._observedElements.delete(t)}}}return t.\u0275fac=function(e){return new(e||t)(Wt(qh))},t.\u0275prov=ct({factory:function(){return new t(Wt(qh))},token:t,providedIn:"root"}),t})(),Uh=(()=>{class t{constructor(t,e,n){this._contentObserver=t,this._elementRef=e,this._ngZone=n,this.event=new Za,this._disabled=!1,this._currentSubscription=null}get disabled(){return this._disabled}set disabled(t){this._disabled=ah(t),this._disabled?this._unsubscribe():this._subscribe()}get debounce(){return this._debounce}set debounce(t){this._debounce=lh(t),this._subscribe()}ngAfterContentInit(){this._currentSubscription||this.disabled||this._subscribe()}ngOnDestroy(){this._unsubscribe()}_subscribe(){this._unsubscribe();const t=this._contentObserver.observe(this._elementRef);this._ngZone.runOutsideAngular(()=>{this._currentSubscription=(this.debounce?t.pipe(function(t,e=gh){return n=>n.lift(new Rh(t,e))}(this.debounce)):t).subscribe(this.event)})}_unsubscribe(){this._currentSubscription&&this._currentSubscription.unsubscribe()}}return t.\u0275fac=function(e){return new(e||t)(lo($h),lo(sa),lo(Vl))},t.\u0275dir=_e({type:t,selectors:[["","cdkObserveContent",""]],inputs:{disabled:["cdkObserveContentDisabled","disabled"],debounce:"debounce"},outputs:{event:"cdkObserveContent"},exportAs:["cdkObserveContent"]}),t})(),Gh=(()=>{class t{}return t.\u0275mod=me({type:t}),t.\u0275inj=ht({factory:function(e){return new(e||t)},providers:[qh]}),t})();"undefined"!=typeof Element&∈let Wh=(()=>{class t{constructor(t,e){this._platform=t,this._document=e}getHighContrastMode(){if(!this._platform.isBrowser)return 0;const t=this._document.createElement("div");t.style.backgroundColor="rgb(1,2,3)",t.style.position="absolute",this._document.body.appendChild(t);const e=this._document.defaultView||window,n=e&&e.getComputedStyle?e.getComputedStyle(t):null,i=(n&&n.backgroundColor||"").replace(/ /g,"");switch(this._document.body.removeChild(t),i){case"rgb(0,0,0)":return 2;case"rgb(255,255,255)":return 1}return 0}_applyBodyHighContrastModeCssClasses(){if(this._platform.isBrowser&&this._document.body){const t=this._document.body.classList;t.remove("cdk-high-contrast-active"),t.remove("cdk-high-contrast-black-on-white"),t.remove("cdk-high-contrast-white-on-black");const e=this.getHighContrastMode();1===e?(t.add("cdk-high-contrast-active"),t.add("cdk-high-contrast-black-on-white")):2===e&&(t.add("cdk-high-contrast-active"),t.add("cdk-high-contrast-white-on-black"))}}}return t.\u0275fac=function(e){return new(e||t)(Wt(th),Wt(ac))},t.\u0275prov=ct({factory:function(){return new t(Wt(th),Wt(ac))},token:t,providedIn:"root"}),t})();const Zh=new Mt("cdk-dir-doc",{providedIn:"root",factory:function(){return Zt(ac)}});let Qh=(()=>{class t{constructor(t){if(this.value="ltr",this.change=new Za,t){const e=t.documentElement?t.documentElement.dir:null,n=(t.body?t.body.dir:null)||e;this.value="ltr"===n||"rtl"===n?n:"ltr"}}ngOnDestroy(){this.change.complete()}}return t.\u0275fac=function(e){return new(e||t)(Wt(Zh,8))},t.\u0275prov=ct({factory:function(){return new t(Wt(Zh,8))},token:t,providedIn:"root"}),t})(),Kh=(()=>{class t{}return t.\u0275mod=me({type:t}),t.\u0275inj=ht({factory:function(e){return new(e||t)}}),t})();const Yh=new ua("10.1.0");function Jh(...t){return q(1)(Ih(...t))}function Xh(...t){const e=t[t.length-1];return x(e)?(t.pop(),n=>Jh(t,n,e)):e=>Jh(t,e)}class tu{}function eu(t,e){return{type:7,name:t,definitions:e,options:{}}}function nu(t,e=null){return{type:4,styles:e,timings:t}}function iu(t,e=null){return{type:2,steps:t,options:e}}function su(t){return{type:6,styles:t,offset:null}}function ru(t,e,n){return{type:0,name:t,styles:e,options:n}}function ou(t,e,n=null){return{type:1,expr:t,animation:e,options:n}}function au(t){Promise.resolve(null).then(t)}class lu{constructor(t=0,e=0){this._onDoneFns=[],this._onStartFns=[],this._onDestroyFns=[],this._started=!1,this._destroyed=!1,this._finished=!1,this.parentPlayer=null,this.totalTime=t+e}_onFinish(){this._finished||(this._finished=!0,this._onDoneFns.forEach(t=>t()),this._onDoneFns=[])}onStart(t){this._onStartFns.push(t)}onDone(t){this._onDoneFns.push(t)}onDestroy(t){this._onDestroyFns.push(t)}hasStarted(){return this._started}init(){}play(){this.hasStarted()||(this._onStart(),this.triggerMicrotask()),this._started=!0}triggerMicrotask(){au(()=>this._onFinish())}_onStart(){this._onStartFns.forEach(t=>t()),this._onStartFns=[]}pause(){}restart(){}finish(){this._onFinish()}destroy(){this._destroyed||(this._destroyed=!0,this.hasStarted()||this._onStart(),this.finish(),this._onDestroyFns.forEach(t=>t()),this._onDestroyFns=[])}reset(){}setPosition(t){}getPosition(){return 0}triggerCallback(t){const e="start"==t?this._onStartFns:this._onDoneFns;e.forEach(t=>t()),e.length=0}}class cu{constructor(t){this._onDoneFns=[],this._onStartFns=[],this._finished=!1,this._started=!1,this._destroyed=!1,this._onDestroyFns=[],this.parentPlayer=null,this.totalTime=0,this.players=t;let e=0,n=0,i=0;const s=this.players.length;0==s?au(()=>this._onFinish()):this.players.forEach(t=>{t.onDone(()=>{++e==s&&this._onFinish()}),t.onDestroy(()=>{++n==s&&this._onDestroy()}),t.onStart(()=>{++i==s&&this._onStart()})}),this.totalTime=this.players.reduce((t,e)=>Math.max(t,e.totalTime),0)}_onFinish(){this._finished||(this._finished=!0,this._onDoneFns.forEach(t=>t()),this._onDoneFns=[])}init(){this.players.forEach(t=>t.init())}onStart(t){this._onStartFns.push(t)}_onStart(){this.hasStarted()||(this._started=!0,this._onStartFns.forEach(t=>t()),this._onStartFns=[])}onDone(t){this._onDoneFns.push(t)}onDestroy(t){this._onDestroyFns.push(t)}hasStarted(){return this._started}play(){this.parentPlayer||this.init(),this._onStart(),this.players.forEach(t=>t.play())}pause(){this.players.forEach(t=>t.pause())}restart(){this.players.forEach(t=>t.restart())}finish(){this._onFinish(),this.players.forEach(t=>t.finish())}destroy(){this._onDestroy()}_onDestroy(){this._destroyed||(this._destroyed=!0,this._onFinish(),this.players.forEach(t=>t.destroy()),this._onDestroyFns.forEach(t=>t()),this._onDestroyFns=[])}reset(){this.players.forEach(t=>t.reset()),this._destroyed=!1,this._finished=!1,this._started=!1}setPosition(t){const e=t*this.totalTime;this.players.forEach(t=>{const n=t.totalTime?Math.min(1,e/t.totalTime):1;t.setPosition(n)})}getPosition(){let t=0;return this.players.forEach(e=>{const n=e.getPosition();t=Math.min(n,t)}),t}beforeDestroy(){this.players.forEach(t=>{t.beforeDestroy&&t.beforeDestroy()})}triggerCallback(t){const e="start"==t?this._onStartFns:this._onDoneFns;e.forEach(t=>t()),e.length=0}}function hu(){return"undefined"!=typeof process&&"[object process]"==={}.toString.call(process)}function uu(t){switch(t.length){case 0:return new lu;case 1:return t[0];default:return new cu(t)}}function du(t,e,n,i,s={},r={}){const o=[],a=[];let l=-1,c=null;if(i.forEach(t=>{const n=t.offset,i=n==l,h=i&&c||{};Object.keys(t).forEach(n=>{let i=n,a=t[n];if("offset"!==n)switch(i=e.normalizePropertyName(i,o),a){case"!":a=s[n];break;case"*":a=r[n];break;default:a=e.normalizeStyleValue(n,i,a,o)}h[i]=a}),i||a.push(h),c=h,l=n}),o.length){const t="\n - ";throw new Error(`Unable to animate due to the following errors:${t}${o.join(t)}`)}return a}function pu(t,e,n,i){switch(e){case"start":t.onStart(()=>i(n&&fu(n,"start",t)));break;case"done":t.onDone(()=>i(n&&fu(n,"done",t)));break;case"destroy":t.onDestroy(()=>i(n&&fu(n,"destroy",t)))}}function fu(t,e,n){const i=n.totalTime,s=mu(t.element,t.triggerName,t.fromState,t.toState,e||t.phaseName,null==i?t.totalTime:i,!!n.disabled),r=t._data;return null!=r&&(s._data=r),s}function mu(t,e,n,i,s="",r=0,o){return{element:t,triggerName:e,fromState:n,toState:i,phaseName:s,totalTime:r,disabled:!!o}}function gu(t,e,n){let i;return t instanceof Map?(i=t.get(e),i||t.set(e,i=n)):(i=t[e],i||(i=t[e]=n)),i}function _u(t){const e=t.indexOf(":");return[t.substring(1,e),t.substr(e+1)]}let yu=(t,e)=>!1,bu=(t,e)=>!1,vu=(t,e,n)=>[];const wu=hu();(wu||"undefined"!=typeof Element)&&(yu=(t,e)=>t.contains(e),bu=(()=>{if(wu||Element.prototype.matches)return(t,e)=>t.matches(e);{const t=Element.prototype,e=t.matchesSelector||t.mozMatchesSelector||t.msMatchesSelector||t.oMatchesSelector||t.webkitMatchesSelector;return e?(t,n)=>e.apply(t,[n]):bu}})(),vu=(t,e,n)=>{let i=[];if(n)i.push(...t.querySelectorAll(e));else{const n=t.querySelector(e);n&&i.push(n)}return i});let Cu=null,Eu=!1;function Su(t){Cu||(Cu=("undefined"!=typeof document?document.body:null)||{},Eu=!!Cu.style&&"WebkitAppearance"in Cu.style);let e=!0;return Cu.style&&!function(t){return"ebkit"==t.substring(1,6)}(t)&&(e=t in Cu.style,!e&&Eu)&&(e="Webkit"+t.charAt(0).toUpperCase()+t.substr(1)in Cu.style),e}const xu=bu,ku=yu,Tu=vu;function Iu(t){const e={};return Object.keys(t).forEach(n=>{const i=n.replace(/([a-z])([A-Z])/g,"$1-$2");e[i]=t[n]}),e}let Du=(()=>{class t{validateStyleProperty(t){return Su(t)}matchesElement(t,e){return xu(t,e)}containsElement(t,e){return ku(t,e)}query(t,e,n){return Tu(t,e,n)}computeStyle(t,e,n){return n||""}animate(t,e,n,i,s,r=[],o){return new lu(n,i)}}return t.\u0275fac=function(e){return new(e||t)},t.\u0275prov=ct({token:t,factory:t.\u0275fac}),t})(),Au=(()=>{class t{}return t.NOOP=new Du,t})();function Pu(t){if("number"==typeof t)return t;const e=t.match(/^(-?[\.\d]+)(m?s)/);return!e||e.length<2?0:Ou(parseFloat(e[1]),e[2])}function Ou(t,e){switch(e){case"s":return 1e3*t;default:return t}}function Ru(t,e,n){return t.hasOwnProperty("duration")?t:function(t,e,n){let i,s=0,r="";if("string"==typeof t){const n=t.match(/^(-?[\.\d]+)(m?s)(?:\s+(-?[\.\d]+)(m?s))?(?:\s+([-a-z]+(?:\(.+?\))?))?$/i);if(null===n)return e.push(`The provided timing value "${t}" is invalid.`),{duration:0,delay:0,easing:""};i=Ou(parseFloat(n[1]),n[2]);const o=n[3];null!=o&&(s=Ou(parseFloat(o),n[4]));const a=n[5];a&&(r=a)}else i=t;if(!n){let n=!1,r=e.length;i<0&&(e.push("Duration values below 0 are not allowed for this animation step."),n=!0),s<0&&(e.push("Delay values below 0 are not allowed for this animation step."),n=!0),n&&e.splice(r,0,`The provided timing value "${t}" is invalid.`)}return{duration:i,delay:s,easing:r}}(t,e,n)}function Nu(t,e={}){return Object.keys(t).forEach(n=>{e[n]=t[n]}),e}function Fu(t,e,n={}){if(e)for(let i in t)n[i]=t[i];else Nu(t,n);return n}function Vu(t,e,n){return n?e+":"+n+";":""}function Mu(t){let e="";for(let n=0;n{const s=Gu(i);n&&!n.hasOwnProperty(i)&&(n[i]=t.style[s]),t.style[s]=e[i]}),hu()&&Mu(t))}function ju(t,e){t.style&&(Object.keys(e).forEach(e=>{const n=Gu(e);t.style[n]=""}),hu()&&Mu(t))}function Bu(t){return Array.isArray(t)?1==t.length?t[0]:iu(t):t}const Hu=new RegExp("{{\\s*(.+?)\\s*}}","g");function zu(t){let e=[];if("string"==typeof t){let n;for(;n=Hu.exec(t);)e.push(n[1]);Hu.lastIndex=0}return e}function qu(t,e,n){const i=t.toString(),s=i.replace(Hu,(t,i)=>{let s=e[i];return e.hasOwnProperty(i)||(n.push("Please provide a value for the animation param "+i),s=""),s.toString()});return s==i?t:s}function $u(t){const e=[];let n=t.next();for(;!n.done;)e.push(n.value),n=t.next();return e}const Uu=/-+([a-z0-9])/g;function Gu(t){return t.replace(Uu,(...t)=>t[1].toUpperCase())}function Wu(t,e){return 0===t||0===e}function Zu(t,e,n){const i=Object.keys(n);if(i.length&&e.length){let r=e[0],o=[];if(i.forEach(t=>{r.hasOwnProperty(t)||o.push(t),r[t]=n[t]}),o.length)for(var s=1;sfunction(t,e,n){if(":"==t[0]){const i=function(t,e){switch(t){case":enter":return"void => *";case":leave":return"* => void";case":increment":return(t,e)=>parseFloat(e)>parseFloat(t);case":decrement":return(t,e)=>parseFloat(e) *"}}(t,n);if("function"==typeof i)return void e.push(i);t=i}const i=t.match(/^(\*|[-\w]+)\s*()\s*(\*|[-\w]+)$/);if(null==i||i.length<4)return n.push(`The provided transition expression "${t}" is not supported`),e;const s=i[1],r=i[2],o=i[3];e.push(td(s,o)),"<"!=r[0]||"*"==s&&"*"==o||e.push(td(o,s))}(t,n,e)):n.push(t),n}const Ju=new Set(["true","1"]),Xu=new Set(["false","0"]);function td(t,e){const n=Ju.has(t)||Xu.has(t),i=Ju.has(e)||Xu.has(e);return(s,r)=>{let o="*"==t||t==s,a="*"==e||e==r;return!o&&n&&"boolean"==typeof s&&(o=s?Ju.has(t):Xu.has(t)),!a&&i&&"boolean"==typeof r&&(a=r?Ju.has(e):Xu.has(e)),o&&a}}const ed=new RegExp("s*:selfs*,?","g");function nd(t,e,n){return new id(t).build(e,n)}class id{constructor(t){this._driver=t}build(t,e){const n=new sd(e);return this._resetContextStyleTimingState(n),Qu(this,Bu(t),n)}_resetContextStyleTimingState(t){t.currentQuerySelector="",t.collectedStyles={},t.collectedStyles[""]={},t.currentTime=0}visitTrigger(t,e){let n=e.queryCount=0,i=e.depCount=0;const s=[],r=[];return"@"==t.name.charAt(0)&&e.errors.push("animation triggers cannot be prefixed with an `@` sign (e.g. trigger('@foo', [...]))"),t.definitions.forEach(t=>{if(this._resetContextStyleTimingState(e),0==t.type){const n=t,i=n.name;i.toString().split(/\s*,\s*/).forEach(t=>{n.name=t,s.push(this.visitState(n,e))}),n.name=i}else if(1==t.type){const s=this.visitTransition(t,e);n+=s.queryCount,i+=s.depCount,r.push(s)}else e.errors.push("only state() and transition() definitions can sit inside of a trigger()")}),{type:7,name:t.name,states:s,transitions:r,queryCount:n,depCount:i,options:null}}visitState(t,e){const n=this.visitStyle(t.styles,e),i=t.options&&t.options.params||null;if(n.containsDynamicStyles){const s=new Set,r=i||{};if(n.styles.forEach(t=>{if(rd(t)){const e=t;Object.keys(e).forEach(t=>{zu(e[t]).forEach(t=>{r.hasOwnProperty(t)||s.add(t)})})}}),s.size){const n=$u(s.values());e.errors.push(`state("${t.name}", ...) must define default values for all the following style substitutions: ${n.join(", ")}`)}}return{type:0,name:t.name,style:n,options:i?{params:i}:null}}visitTransition(t,e){e.queryCount=0,e.depCount=0;const n=Qu(this,Bu(t.animation),e);return{type:1,matchers:Yu(t.expr,e.errors),animation:n,queryCount:e.queryCount,depCount:e.depCount,options:od(t.options)}}visitSequence(t,e){return{type:2,steps:t.steps.map(t=>Qu(this,t,e)),options:od(t.options)}}visitGroup(t,e){const n=e.currentTime;let i=0;const s=t.steps.map(t=>{e.currentTime=n;const s=Qu(this,t,e);return i=Math.max(i,e.currentTime),s});return e.currentTime=i,{type:3,steps:s,options:od(t.options)}}visitAnimate(t,e){const n=function(t,e){let n=null;if(t.hasOwnProperty("duration"))n=t;else if("number"==typeof t)return ad(Ru(t,e).duration,0,"");const i=t;if(i.split(/\s+/).some(t=>"{"==t.charAt(0)&&"{"==t.charAt(1))){const t=ad(0,0,"");return t.dynamic=!0,t.strValue=i,t}return n=n||Ru(i,e),ad(n.duration,n.delay,n.easing)}(t.timings,e.errors);let i;e.currentAnimateTimings=n;let s=t.styles?t.styles:su({});if(5==s.type)i=this.visitKeyframes(s,e);else{let s=t.styles,r=!1;if(!s){r=!0;const t={};n.easing&&(t.easing=n.easing),s=su(t)}e.currentTime+=n.duration+n.delay;const o=this.visitStyle(s,e);o.isEmptyStep=r,i=o}return e.currentAnimateTimings=null,{type:4,timings:n,style:i,options:null}}visitStyle(t,e){const n=this._makeStyleAst(t,e);return this._validateStyleAst(n,e),n}_makeStyleAst(t,e){const n=[];Array.isArray(t.styles)?t.styles.forEach(t=>{"string"==typeof t?"*"==t?n.push(t):e.errors.push(`The provided style string value ${t} is not allowed.`):n.push(t)}):n.push(t.styles);let i=!1,s=null;return n.forEach(t=>{if(rd(t)){const e=t,n=e.easing;if(n&&(s=n,delete e.easing),!i)for(let t in e)if(e[t].toString().indexOf("{{")>=0){i=!0;break}}}),{type:6,styles:n,easing:s,offset:t.offset,containsDynamicStyles:i,options:null}}_validateStyleAst(t,e){const n=e.currentAnimateTimings;let i=e.currentTime,s=e.currentTime;n&&s>0&&(s-=n.duration+n.delay),t.styles.forEach(t=>{"string"!=typeof t&&Object.keys(t).forEach(n=>{if(!this._driver.validateStyleProperty(n))return void e.errors.push(`The provided animation property "${n}" is not a supported CSS property for animations`);const r=e.collectedStyles[e.currentQuerySelector],o=r[n];let a=!0;o&&(s!=i&&s>=o.startTime&&i<=o.endTime&&(e.errors.push(`The CSS property "${n}" that exists between the times of "${o.startTime}ms" and "${o.endTime}ms" is also being animated in a parallel animation between the times of "${s}ms" and "${i}ms"`),a=!1),s=o.startTime),a&&(r[n]={startTime:s,endTime:i}),e.options&&function(t,e,n){const i=e.params||{},s=zu(t);s.length&&s.forEach(t=>{i.hasOwnProperty(t)||n.push(`Unable to resolve the local animation param ${t} in the given list of values`)})}(t[n],e.options,e.errors)})})}visitKeyframes(t,e){const n={type:5,styles:[],options:null};if(!e.currentAnimateTimings)return e.errors.push("keyframes() must be placed inside of a call to animate()"),n;let i=0;const s=[];let r=!1,o=!1,a=0;const l=t.steps.map(t=>{const n=this._makeStyleAst(t,e);let l=null!=n.offset?n.offset:function(t){if("string"==typeof t)return null;let e=null;if(Array.isArray(t))t.forEach(t=>{if(rd(t)&&t.hasOwnProperty("offset")){const n=t;e=parseFloat(n.offset),delete n.offset}});else if(rd(t)&&t.hasOwnProperty("offset")){const n=t;e=parseFloat(n.offset),delete n.offset}return e}(n.styles),c=0;return null!=l&&(i++,c=n.offset=l),o=o||c<0||c>1,r=r||c0&&i{const r=h>0?i==u?1:h*i:s[i],o=r*f;e.currentTime=d+p.delay+o,p.duration=o,this._validateStyleAst(t,e),t.offset=r,n.styles.push(t)}),n}visitReference(t,e){return{type:8,animation:Qu(this,Bu(t.animation),e),options:od(t.options)}}visitAnimateChild(t,e){return e.depCount++,{type:9,options:od(t.options)}}visitAnimateRef(t,e){return{type:10,animation:this.visitReference(t.animation,e),options:od(t.options)}}visitQuery(t,e){const n=e.currentQuerySelector,i=t.options||{};e.queryCount++,e.currentQuery=t;const[s,r]=function(t){const e=!!t.split(/\s*,\s*/).find(t=>":self"==t);return e&&(t=t.replace(ed,"")),[t=t.replace(/@\*/g,".ng-trigger").replace(/@\w+/g,t=>".ng-trigger-"+t.substr(1)).replace(/:animating/g,".ng-animating"),e]}(t.selector);e.currentQuerySelector=n.length?n+" "+s:s,gu(e.collectedStyles,e.currentQuerySelector,{});const o=Qu(this,Bu(t.animation),e);return e.currentQuery=null,e.currentQuerySelector=n,{type:11,selector:s,limit:i.limit||0,optional:!!i.optional,includeSelf:r,animation:o,originalSelector:t.selector,options:od(t.options)}}visitStagger(t,e){e.currentQuery||e.errors.push("stagger() can only be used inside of query()");const n="full"===t.timings?{duration:0,delay:0,easing:"full"}:Ru(t.timings,e.errors,!0);return{type:12,animation:Qu(this,Bu(t.animation),e),timings:n,options:null}}}class sd{constructor(t){this.errors=t,this.queryCount=0,this.depCount=0,this.currentTransition=null,this.currentQuery=null,this.currentQuerySelector=null,this.currentAnimateTimings=null,this.currentTime=0,this.collectedStyles={},this.options=null}}function rd(t){return!Array.isArray(t)&&"object"==typeof t}function od(t){var e;return t?(t=Nu(t)).params&&(t.params=(e=t.params)?Nu(e):null):t={},t}function ad(t,e,n){return{duration:t,delay:e,easing:n}}function ld(t,e,n,i,s,r,o=null,a=!1){return{type:1,element:t,keyframes:e,preStyleProps:n,postStyleProps:i,duration:s,delay:r,totalTime:s+r,easing:o,subTimeline:a}}class cd{constructor(){this._map=new Map}consume(t){let e=this._map.get(t);return e?this._map.delete(t):e=[],e}append(t,e){let n=this._map.get(t);n||this._map.set(t,n=[]),n.push(...e)}has(t){return this._map.has(t)}clear(){this._map.clear()}}const hd=new RegExp(":enter","g"),ud=new RegExp(":leave","g");function dd(t,e,n,i,s,r={},o={},a,l,c=[]){return(new pd).buildKeyframes(t,e,n,i,s,r,o,a,l,c)}class pd{buildKeyframes(t,e,n,i,s,r,o,a,l,c=[]){l=l||new cd;const h=new md(t,e,l,i,s,c,[]);h.options=a,h.currentTimeline.setStyles([r],null,h.errors,a),Qu(this,n,h);const u=h.timelines.filter(t=>t.containsAnimation());if(u.length&&Object.keys(o).length){const t=u[u.length-1];t.allowOnlyTimelineStyles()||t.setStyles([o],null,h.errors,a)}return u.length?u.map(t=>t.buildKeyframes()):[ld(e,[],[],[],0,0,"",!1)]}visitTrigger(t,e){}visitState(t,e){}visitTransition(t,e){}visitAnimateChild(t,e){const n=e.subInstructions.consume(e.element);if(n){const i=e.createSubContext(t.options),s=e.currentTimeline.currentTime,r=this._visitSubInstructions(n,i,i.options);s!=r&&e.transformIntoNewTimeline(r)}e.previousNode=t}visitAnimateRef(t,e){const n=e.createSubContext(t.options);n.transformIntoNewTimeline(),this.visitReference(t.animation,n),e.transformIntoNewTimeline(n.currentTimeline.currentTime),e.previousNode=t}_visitSubInstructions(t,e,n){let i=e.currentTimeline.currentTime;const s=null!=n.duration?Pu(n.duration):null,r=null!=n.delay?Pu(n.delay):null;return 0!==s&&t.forEach(t=>{const n=e.appendInstructionToTimeline(t,s,r);i=Math.max(i,n.duration+n.delay)}),i}visitReference(t,e){e.updateOptions(t.options,!0),Qu(this,t.animation,e),e.previousNode=t}visitSequence(t,e){const n=e.subContextCount;let i=e;const s=t.options;if(s&&(s.params||s.delay)&&(i=e.createSubContext(s),i.transformIntoNewTimeline(),null!=s.delay)){6==i.previousNode.type&&(i.currentTimeline.snapshotCurrentStyles(),i.previousNode=fd);const t=Pu(s.delay);i.delayNextStep(t)}t.steps.length&&(t.steps.forEach(t=>Qu(this,t,i)),i.currentTimeline.applyStylesToKeyframe(),i.subContextCount>n&&i.transformIntoNewTimeline()),e.previousNode=t}visitGroup(t,e){const n=[];let i=e.currentTimeline.currentTime;const s=t.options&&t.options.delay?Pu(t.options.delay):0;t.steps.forEach(r=>{const o=e.createSubContext(t.options);s&&o.delayNextStep(s),Qu(this,r,o),i=Math.max(i,o.currentTimeline.currentTime),n.push(o.currentTimeline)}),n.forEach(t=>e.currentTimeline.mergeTimelineCollectedStyles(t)),e.transformIntoNewTimeline(i),e.previousNode=t}_visitTiming(t,e){if(t.dynamic){const n=t.strValue;return Ru(e.params?qu(n,e.params,e.errors):n,e.errors)}return{duration:t.duration,delay:t.delay,easing:t.easing}}visitAnimate(t,e){const n=e.currentAnimateTimings=this._visitTiming(t.timings,e),i=e.currentTimeline;n.delay&&(e.incrementTime(n.delay),i.snapshotCurrentStyles());const s=t.style;5==s.type?this.visitKeyframes(s,e):(e.incrementTime(n.duration),this.visitStyle(s,e),i.applyStylesToKeyframe()),e.currentAnimateTimings=null,e.previousNode=t}visitStyle(t,e){const n=e.currentTimeline,i=e.currentAnimateTimings;!i&&n.getCurrentStyleProperties().length&&n.forwardFrame();const s=i&&i.easing||t.easing;t.isEmptyStep?n.applyEmptyStep(s):n.setStyles(t.styles,s,e.errors,e.options),e.previousNode=t}visitKeyframes(t,e){const n=e.currentAnimateTimings,i=e.currentTimeline.duration,s=n.duration,r=e.createSubContext().currentTimeline;r.easing=n.easing,t.styles.forEach(t=>{r.forwardTime((t.offset||0)*s),r.setStyles(t.styles,t.easing,e.errors,e.options),r.applyStylesToKeyframe()}),e.currentTimeline.mergeTimelineCollectedStyles(r),e.transformIntoNewTimeline(i+s),e.previousNode=t}visitQuery(t,e){const n=e.currentTimeline.currentTime,i=t.options||{},s=i.delay?Pu(i.delay):0;s&&(6===e.previousNode.type||0==n&&e.currentTimeline.getCurrentStyleProperties().length)&&(e.currentTimeline.snapshotCurrentStyles(),e.previousNode=fd);let r=n;const o=e.invokeQuery(t.selector,t.originalSelector,t.limit,t.includeSelf,!!i.optional,e.errors);e.currentQueryTotal=o.length;let a=null;o.forEach((n,i)=>{e.currentQueryIndex=i;const o=e.createSubContext(t.options,n);s&&o.delayNextStep(s),n===e.element&&(a=o.currentTimeline),Qu(this,t.animation,o),o.currentTimeline.applyStylesToKeyframe(),r=Math.max(r,o.currentTimeline.currentTime)}),e.currentQueryIndex=0,e.currentQueryTotal=0,e.transformIntoNewTimeline(r),a&&(e.currentTimeline.mergeTimelineCollectedStyles(a),e.currentTimeline.snapshotCurrentStyles()),e.previousNode=t}visitStagger(t,e){const n=e.parentContext,i=e.currentTimeline,s=t.timings,r=Math.abs(s.duration),o=r*(e.currentQueryTotal-1);let a=r*e.currentQueryIndex;switch(s.duration<0?"reverse":s.easing){case"reverse":a=o-a;break;case"full":a=n.currentStaggerTime}const l=e.currentTimeline;a&&l.delayNextStep(a);const c=l.currentTime;Qu(this,t.animation,e),e.previousNode=t,n.currentStaggerTime=i.currentTime-c+(i.startTime-n.currentTimeline.startTime)}}const fd={};class md{constructor(t,e,n,i,s,r,o,a){this._driver=t,this.element=e,this.subInstructions=n,this._enterClassName=i,this._leaveClassName=s,this.errors=r,this.timelines=o,this.parentContext=null,this.currentAnimateTimings=null,this.previousNode=fd,this.subContextCount=0,this.options={},this.currentQueryIndex=0,this.currentQueryTotal=0,this.currentStaggerTime=0,this.currentTimeline=a||new gd(this._driver,e,0),o.push(this.currentTimeline)}get params(){return this.options.params}updateOptions(t,e){if(!t)return;const n=t;let i=this.options;null!=n.duration&&(i.duration=Pu(n.duration)),null!=n.delay&&(i.delay=Pu(n.delay));const s=n.params;if(s){let t=i.params;t||(t=this.options.params={}),Object.keys(s).forEach(n=>{e&&t.hasOwnProperty(n)||(t[n]=qu(s[n],t,this.errors))})}}_copyOptions(){const t={};if(this.options){const e=this.options.params;if(e){const n=t.params={};Object.keys(e).forEach(t=>{n[t]=e[t]})}}return t}createSubContext(t=null,e,n){const i=e||this.element,s=new md(this._driver,i,this.subInstructions,this._enterClassName,this._leaveClassName,this.errors,this.timelines,this.currentTimeline.fork(i,n||0));return s.previousNode=this.previousNode,s.currentAnimateTimings=this.currentAnimateTimings,s.options=this._copyOptions(),s.updateOptions(t),s.currentQueryIndex=this.currentQueryIndex,s.currentQueryTotal=this.currentQueryTotal,s.parentContext=this,this.subContextCount++,s}transformIntoNewTimeline(t){return this.previousNode=fd,this.currentTimeline=this.currentTimeline.fork(this.element,t),this.timelines.push(this.currentTimeline),this.currentTimeline}appendInstructionToTimeline(t,e,n){const i={duration:null!=e?e:t.duration,delay:this.currentTimeline.currentTime+(null!=n?n:0)+t.delay,easing:""},s=new _d(this._driver,t.element,t.keyframes,t.preStyleProps,t.postStyleProps,i,t.stretchStartingKeyframe);return this.timelines.push(s),i}incrementTime(t){this.currentTimeline.forwardTime(this.currentTimeline.duration+t)}delayNextStep(t){t>0&&this.currentTimeline.delayNextStep(t)}invokeQuery(t,e,n,i,s,r){let o=[];if(i&&o.push(this.element),t.length>0){t=(t=t.replace(hd,"."+this._enterClassName)).replace(ud,"."+this._leaveClassName);let e=this._driver.query(this.element,t,1!=n);0!==n&&(e=n<0?e.slice(e.length+n,e.length):e.slice(0,n)),o.push(...e)}return s||0!=o.length||r.push(`\`query("${e}")\` returned zero elements. (Use \`query("${e}", { optional: true })\` if you wish to allow this.)`),o}}class gd{constructor(t,e,n,i){this._driver=t,this.element=e,this.startTime=n,this._elementTimelineStylesLookup=i,this.duration=0,this._previousKeyframe={},this._currentKeyframe={},this._keyframes=new Map,this._styleSummary={},this._pendingStyles={},this._backFill={},this._currentEmptyStepKeyframe=null,this._elementTimelineStylesLookup||(this._elementTimelineStylesLookup=new Map),this._localTimelineStyles=Object.create(this._backFill,{}),this._globalTimelineStyles=this._elementTimelineStylesLookup.get(e),this._globalTimelineStyles||(this._globalTimelineStyles=this._localTimelineStyles,this._elementTimelineStylesLookup.set(e,this._localTimelineStyles)),this._loadKeyframe()}containsAnimation(){switch(this._keyframes.size){case 0:return!1;case 1:return this.getCurrentStyleProperties().length>0;default:return!0}}getCurrentStyleProperties(){return Object.keys(this._currentKeyframe)}get currentTime(){return this.startTime+this.duration}delayNextStep(t){const e=1==this._keyframes.size&&Object.keys(this._pendingStyles).length;this.duration||e?(this.forwardTime(this.currentTime+t),e&&this.snapshotCurrentStyles()):this.startTime+=t}fork(t,e){return this.applyStylesToKeyframe(),new gd(this._driver,t,e||this.currentTime,this._elementTimelineStylesLookup)}_loadKeyframe(){this._currentKeyframe&&(this._previousKeyframe=this._currentKeyframe),this._currentKeyframe=this._keyframes.get(this.duration),this._currentKeyframe||(this._currentKeyframe=Object.create(this._backFill,{}),this._keyframes.set(this.duration,this._currentKeyframe))}forwardFrame(){this.duration+=1,this._loadKeyframe()}forwardTime(t){this.applyStylesToKeyframe(),this.duration=t,this._loadKeyframe()}_updateStyle(t,e){this._localTimelineStyles[t]=e,this._globalTimelineStyles[t]=e,this._styleSummary[t]={time:this.currentTime,value:e}}allowOnlyTimelineStyles(){return this._currentEmptyStepKeyframe!==this._currentKeyframe}applyEmptyStep(t){t&&(this._previousKeyframe.easing=t),Object.keys(this._globalTimelineStyles).forEach(t=>{this._backFill[t]=this._globalTimelineStyles[t]||"*",this._currentKeyframe[t]="*"}),this._currentEmptyStepKeyframe=this._currentKeyframe}setStyles(t,e,n,i){e&&(this._previousKeyframe.easing=e);const s=i&&i.params||{},r=function(t,e){const n={};let i;return t.forEach(t=>{"*"===t?(i=i||Object.keys(e),i.forEach(t=>{n[t]="*"})):Fu(t,!1,n)}),n}(t,this._globalTimelineStyles);Object.keys(r).forEach(t=>{const e=qu(r[t],s,n);this._pendingStyles[t]=e,this._localTimelineStyles.hasOwnProperty(t)||(this._backFill[t]=this._globalTimelineStyles.hasOwnProperty(t)?this._globalTimelineStyles[t]:"*"),this._updateStyle(t,e)})}applyStylesToKeyframe(){const t=this._pendingStyles,e=Object.keys(t);0!=e.length&&(this._pendingStyles={},e.forEach(e=>{this._currentKeyframe[e]=t[e]}),Object.keys(this._localTimelineStyles).forEach(t=>{this._currentKeyframe.hasOwnProperty(t)||(this._currentKeyframe[t]=this._localTimelineStyles[t])}))}snapshotCurrentStyles(){Object.keys(this._localTimelineStyles).forEach(t=>{const e=this._localTimelineStyles[t];this._pendingStyles[t]=e,this._updateStyle(t,e)})}getFinalKeyframe(){return this._keyframes.get(this.duration)}get properties(){const t=[];for(let e in this._currentKeyframe)t.push(e);return t}mergeTimelineCollectedStyles(t){Object.keys(t._styleSummary).forEach(e=>{const n=this._styleSummary[e],i=t._styleSummary[e];(!n||i.time>n.time)&&this._updateStyle(e,i.value)})}buildKeyframes(){this.applyStylesToKeyframe();const t=new Set,e=new Set,n=1===this._keyframes.size&&0===this.duration;let i=[];this._keyframes.forEach((s,r)=>{const o=Fu(s,!0);Object.keys(o).forEach(n=>{const i=o[n];"!"==i?t.add(n):"*"==i&&e.add(n)}),n||(o.offset=r/this.duration),i.push(o)});const s=t.size?$u(t.values()):[],r=e.size?$u(e.values()):[];if(n){const t=i[0],e=Nu(t);t.offset=0,e.offset=1,i=[t,e]}return ld(this.element,i,s,r,this.duration,this.startTime,this.easing,!1)}}class _d extends gd{constructor(t,e,n,i,s,r,o=!1){super(t,e,r.delay),this.element=e,this.keyframes=n,this.preStyleProps=i,this.postStyleProps=s,this._stretchStartingKeyframe=o,this.timings={duration:r.duration,delay:r.delay,easing:r.easing}}containsAnimation(){return this.keyframes.length>1}buildKeyframes(){let t=this.keyframes,{delay:e,duration:n,easing:i}=this.timings;if(this._stretchStartingKeyframe&&e){const s=[],r=n+e,o=e/r,a=Fu(t[0],!1);a.offset=0,s.push(a);const l=Fu(t[0],!1);l.offset=yd(o),s.push(l);const c=t.length-1;for(let i=1;i<=c;i++){let o=Fu(t[i],!1);o.offset=yd((e+o.offset*n)/r),s.push(o)}n=r,e=0,i="",t=s}return ld(this.element,t,this.preStyleProps,this.postStyleProps,n,e,i,!0)}}function yd(t,e=3){const n=Math.pow(10,e-1);return Math.round(t*n)/n}class bd{}class vd extends bd{normalizePropertyName(t,e){return Gu(t)}normalizeStyleValue(t,e,n,i){let s="";const r=n.toString().trim();if(wd[e]&&0!==n&&"0"!==n)if("number"==typeof n)s="px";else{const e=n.match(/^[+-]?[\d\.]+([a-z]*)$/);e&&0==e[1].length&&i.push(`Please provide a CSS unit value for ${t}:${n}`)}return r+s}}const wd=(()=>function(t){const e={};return t.forEach(t=>e[t]=!0),e}("width,height,minWidth,minHeight,maxWidth,maxHeight,left,top,bottom,right,fontSize,outlineWidth,outlineOffset,paddingTop,paddingLeft,paddingBottom,paddingRight,marginTop,marginLeft,marginBottom,marginRight,borderRadius,borderWidth,borderTopWidth,borderLeftWidth,borderRightWidth,borderBottomWidth,textIndent,perspective".split(",")))();function Cd(t,e,n,i,s,r,o,a,l,c,h,u,d){return{type:0,element:t,triggerName:e,isRemovalTransition:s,fromState:n,fromStyles:r,toState:i,toStyles:o,timelines:a,queriedElements:l,preStyleProps:c,postStyleProps:h,totalTime:u,errors:d}}const Ed={};class Sd{constructor(t,e,n){this._triggerName=t,this.ast=e,this._stateStyles=n}match(t,e,n,i){return function(t,e,n,i,s){return t.some(t=>t(e,n,i,s))}(this.ast.matchers,t,e,n,i)}buildStyles(t,e,n){const i=this._stateStyles["*"],s=this._stateStyles[t],r=i?i.buildStyles(e,n):{};return s?s.buildStyles(e,n):r}build(t,e,n,i,s,r,o,a,l,c){const h=[],u=this.ast.options&&this.ast.options.params||Ed,d=this.buildStyles(n,o&&o.params||Ed,h),p=a&&a.params||Ed,f=this.buildStyles(i,p,h),m=new Set,g=new Map,_=new Map,y="void"===i,b={params:Object.assign(Object.assign({},u),p)},v=c?[]:dd(t,e,this.ast.animation,s,r,d,f,b,l,h);let w=0;if(v.forEach(t=>{w=Math.max(t.duration+t.delay,w)}),h.length)return Cd(e,this._triggerName,n,i,y,d,f,[],[],g,_,w,h);v.forEach(t=>{const n=t.element,i=gu(g,n,{});t.preStyleProps.forEach(t=>i[t]=!0);const s=gu(_,n,{});t.postStyleProps.forEach(t=>s[t]=!0),n!==e&&m.add(n)});const C=$u(m.values());return Cd(e,this._triggerName,n,i,y,d,f,v,C,g,_,w)}}class xd{constructor(t,e){this.styles=t,this.defaultParams=e}buildStyles(t,e){const n={},i=Nu(this.defaultParams);return Object.keys(t).forEach(e=>{const n=t[e];null!=n&&(i[e]=n)}),this.styles.styles.forEach(t=>{if("string"!=typeof t){const s=t;Object.keys(s).forEach(t=>{let r=s[t];r.length>1&&(r=qu(r,i,e)),n[t]=r})}}),n}}class kd{constructor(t,e){this.name=t,this.ast=e,this.transitionFactories=[],this.states={},e.states.forEach(t=>{this.states[t.name]=new xd(t.style,t.options&&t.options.params||{})}),Td(this.states,"true","1"),Td(this.states,"false","0"),e.transitions.forEach(e=>{this.transitionFactories.push(new Sd(t,e,this.states))}),this.fallbackTransition=new Sd(t,{type:1,animation:{type:2,steps:[],options:null},matchers:[(t,e)=>!0],options:null,queryCount:0,depCount:0},this.states)}get containsQueries(){return this.ast.queryCount>0}matchTransition(t,e,n,i){return this.transitionFactories.find(s=>s.match(t,e,n,i))||null}matchStyles(t,e,n){return this.fallbackTransition.buildStyles(t,e,n)}}function Td(t,e,n){t.hasOwnProperty(e)?t.hasOwnProperty(n)||(t[n]=t[e]):t.hasOwnProperty(n)&&(t[e]=t[n])}const Id=new cd;class Dd{constructor(t,e,n){this.bodyNode=t,this._driver=e,this._normalizer=n,this._animations={},this._playersById={},this.players=[]}register(t,e){const n=[],i=nd(this._driver,e,n);if(n.length)throw new Error("Unable to build the animation due to the following errors: "+n.join("\n"));this._animations[t]=i}_buildPlayer(t,e,n){const i=t.element,s=du(0,this._normalizer,0,t.keyframes,e,n);return this._driver.animate(i,s,t.duration,t.delay,t.easing,[],!0)}create(t,e,n={}){const i=[],s=this._animations[t];let r;const o=new Map;if(s?(r=dd(this._driver,e,s,"ng-enter","ng-leave",{},{},n,Id,i),r.forEach(t=>{const e=gu(o,t.element,{});t.postStyleProps.forEach(t=>e[t]=null)})):(i.push("The requested animation doesn't exist or has already been destroyed"),r=[]),i.length)throw new Error("Unable to create the animation due to the following errors: "+i.join("\n"));o.forEach((t,e)=>{Object.keys(t).forEach(n=>{t[n]=this._driver.computeStyle(e,n,"*")})});const a=uu(r.map(t=>{const e=o.get(t.element);return this._buildPlayer(t,{},e)}));return this._playersById[t]=a,a.onDestroy(()=>this.destroy(t)),this.players.push(a),a}destroy(t){const e=this._getPlayer(t);e.destroy(),delete this._playersById[t];const n=this.players.indexOf(e);n>=0&&this.players.splice(n,1)}_getPlayer(t){const e=this._playersById[t];if(!e)throw new Error("Unable to find the timeline player referenced by "+t);return e}listen(t,e,n,i){const s=mu(e,"","","");return pu(this._getPlayer(t),n,s,i),()=>{}}command(t,e,n,i){if("register"==n)return void this.register(t,i[0]);if("create"==n)return void this.create(t,e,i[0]||{});const s=this._getPlayer(t);switch(n){case"play":s.play();break;case"pause":s.pause();break;case"reset":s.reset();break;case"restart":s.restart();break;case"finish":s.finish();break;case"init":s.init();break;case"setPosition":s.setPosition(parseFloat(i[0]));break;case"destroy":this.destroy(t)}}}const Ad=[],Pd={namespaceId:"",setForRemoval:!1,setForMove:!1,hasAnimation:!1,removedBeforeQueried:!1},Od={namespaceId:"",setForMove:!1,setForRemoval:!1,hasAnimation:!1,removedBeforeQueried:!0};class Rd{constructor(t,e=""){this.namespaceId=e;const n=t&&t.hasOwnProperty("value");if(this.value=null!=(i=n?t.value:t)?i:null,n){const e=Nu(t);delete e.value,this.options=e}else this.options={};var i;this.options.params||(this.options.params={})}get params(){return this.options.params}absorbOptions(t){const e=t.params;if(e){const t=this.options.params;Object.keys(e).forEach(n=>{null==t[n]&&(t[n]=e[n])})}}}const Nd=new Rd("void");class Fd{constructor(t,e,n){this.id=t,this.hostElement=e,this._engine=n,this.players=[],this._triggers={},this._queue=[],this._elementListeners=new Map,this._hostClassName="ng-tns-"+t,zd(e,this._hostClassName)}listen(t,e,n,i){if(!this._triggers.hasOwnProperty(e))throw new Error(`Unable to listen on the animation trigger event "${n}" because the animation trigger "${e}" doesn't exist!`);if(null==n||0==n.length)throw new Error(`Unable to listen on the animation trigger "${e}" because the provided event is undefined!`);if("start"!=(s=n)&&"done"!=s)throw new Error(`The provided animation trigger event "${n}" for the animation trigger "${e}" is not supported!`);var s;const r=gu(this._elementListeners,t,[]),o={name:e,phase:n,callback:i};r.push(o);const a=gu(this._engine.statesByElement,t,{});return a.hasOwnProperty(e)||(zd(t,"ng-trigger"),zd(t,"ng-trigger-"+e),a[e]=Nd),()=>{this._engine.afterFlush(()=>{const t=r.indexOf(o);t>=0&&r.splice(t,1),this._triggers[e]||delete a[e]})}}register(t,e){return!this._triggers[t]&&(this._triggers[t]=e,!0)}_getTrigger(t){const e=this._triggers[t];if(!e)throw new Error(`The provided animation trigger "${t}" has not been registered!`);return e}trigger(t,e,n,i=!0){const s=this._getTrigger(e),r=new Md(this.id,e,t);let o=this._engine.statesByElement.get(t);o||(zd(t,"ng-trigger"),zd(t,"ng-trigger-"+e),this._engine.statesByElement.set(t,o={}));let a=o[e];const l=new Rd(n,this.id);if(!(n&&n.hasOwnProperty("value"))&&a&&l.absorbOptions(a.options),o[e]=l,a||(a=Nd),"void"!==l.value&&a.value===l.value){if(!function(t,e){const n=Object.keys(t),i=Object.keys(e);if(n.length!=i.length)return!1;for(let s=0;s{ju(t,n),Lu(t,i)})}return}const c=gu(this._engine.playersByElement,t,[]);c.forEach(t=>{t.namespaceId==this.id&&t.triggerName==e&&t.queued&&t.destroy()});let h=s.matchTransition(a.value,l.value,t,l.params),u=!1;if(!h){if(!i)return;h=s.fallbackTransition,u=!0}return this._engine.totalQueuedPlayers++,this._queue.push({element:t,triggerName:e,transition:h,fromState:a,toState:l,player:r,isFallbackTransition:u}),u||(zd(t,"ng-animate-queued"),r.onStart(()=>{qd(t,"ng-animate-queued")})),r.onDone(()=>{let e=this.players.indexOf(r);e>=0&&this.players.splice(e,1);const n=this._engine.playersByElement.get(t);if(n){let t=n.indexOf(r);t>=0&&n.splice(t,1)}}),this.players.push(r),c.push(r),r}deregister(t){delete this._triggers[t],this._engine.statesByElement.forEach((e,n)=>{delete e[t]}),this._elementListeners.forEach((e,n)=>{this._elementListeners.set(n,e.filter(e=>e.name!=t))})}clearElementCache(t){this._engine.statesByElement.delete(t),this._elementListeners.delete(t);const e=this._engine.playersByElement.get(t);e&&(e.forEach(t=>t.destroy()),this._engine.playersByElement.delete(t))}_signalRemovalForInnerTriggers(t,e){const n=this._engine.driver.query(t,".ng-trigger",!0);n.forEach(t=>{if(t.__ng_removed)return;const n=this._engine.fetchNamespacesByElement(t);n.size?n.forEach(n=>n.triggerLeaveAnimation(t,e,!1,!0)):this.clearElementCache(t)}),this._engine.afterFlushAnimationsDone(()=>n.forEach(t=>this.clearElementCache(t)))}triggerLeaveAnimation(t,e,n,i){const s=this._engine.statesByElement.get(t);if(s){const r=[];if(Object.keys(s).forEach(e=>{if(this._triggers[e]){const n=this.trigger(t,e,"void",i);n&&r.push(n)}}),r.length)return this._engine.markElementAsRemoved(this.id,t,!0,e),n&&uu(r).onDone(()=>this._engine.processLeaveNode(t)),!0}return!1}prepareLeaveAnimationListeners(t){const e=this._elementListeners.get(t);if(e){const n=new Set;e.forEach(e=>{const i=e.name;if(n.has(i))return;n.add(i);const s=this._triggers[i].fallbackTransition,r=this._engine.statesByElement.get(t)[i]||Nd,o=new Rd("void"),a=new Md(this.id,i,t);this._engine.totalQueuedPlayers++,this._queue.push({element:t,triggerName:i,transition:s,fromState:r,toState:o,player:a,isFallbackTransition:!0})})}}removeNode(t,e){const n=this._engine;if(t.childElementCount&&this._signalRemovalForInnerTriggers(t,e),this.triggerLeaveAnimation(t,e,!0))return;let i=!1;if(n.totalAnimations){const e=n.players.length?n.playersByQueriedElement.get(t):[];if(e&&e.length)i=!0;else{let e=t;for(;e=e.parentNode;)if(n.statesByElement.get(e)){i=!0;break}}}if(this.prepareLeaveAnimationListeners(t),i)n.markElementAsRemoved(this.id,t,!1,e);else{const i=t.__ng_removed;i&&i!==Pd||(n.afterFlush(()=>this.clearElementCache(t)),n.destroyInnerAnimations(t),n._onRemovalComplete(t,e))}}insertNode(t,e){zd(t,this._hostClassName)}drainQueuedTransitions(t){const e=[];return this._queue.forEach(n=>{const i=n.player;if(i.destroyed)return;const s=n.element,r=this._elementListeners.get(s);r&&r.forEach(e=>{if(e.name==n.triggerName){const i=mu(s,n.triggerName,n.fromState.value,n.toState.value);i._data=t,pu(n.player,e.phase,i,e.callback)}}),i.markedForDestroy?this._engine.afterFlush(()=>{i.destroy()}):e.push(n)}),this._queue=[],e.sort((t,e)=>{const n=t.transition.ast.depCount,i=e.transition.ast.depCount;return 0==n||0==i?n-i:this._engine.driver.containsElement(t.element,e.element)?1:-1})}destroy(t){this.players.forEach(t=>t.destroy()),this._signalRemovalForInnerTriggers(this.hostElement,t)}elementContainsData(t){let e=!1;return this._elementListeners.has(t)&&(e=!0),e=!!this._queue.find(e=>e.element===t)||e,e}}class Vd{constructor(t,e,n){this.bodyNode=t,this.driver=e,this._normalizer=n,this.players=[],this.newHostElements=new Map,this.playersByElement=new Map,this.playersByQueriedElement=new Map,this.statesByElement=new Map,this.disabledNodes=new Set,this.totalAnimations=0,this.totalQueuedPlayers=0,this._namespaceLookup={},this._namespaceList=[],this._flushFns=[],this._whenQuietFns=[],this.namespacesByHostElement=new Map,this.collectedEnterElements=[],this.collectedLeaveElements=[],this.onRemovalComplete=(t,e)=>{}}_onRemovalComplete(t,e){this.onRemovalComplete(t,e)}get queuedPlayers(){const t=[];return this._namespaceList.forEach(e=>{e.players.forEach(e=>{e.queued&&t.push(e)})}),t}createNamespace(t,e){const n=new Fd(t,e,this);return e.parentNode?this._balanceNamespaceList(n,e):(this.newHostElements.set(e,n),this.collectEnterElement(e)),this._namespaceLookup[t]=n}_balanceNamespaceList(t,e){const n=this._namespaceList.length-1;if(n>=0){let i=!1;for(let s=n;s>=0;s--)if(this.driver.containsElement(this._namespaceList[s].hostElement,e)){this._namespaceList.splice(s+1,0,t),i=!0;break}i||this._namespaceList.splice(0,0,t)}else this._namespaceList.push(t);return this.namespacesByHostElement.set(e,t),t}register(t,e){let n=this._namespaceLookup[t];return n||(n=this.createNamespace(t,e)),n}registerTrigger(t,e,n){let i=this._namespaceLookup[t];i&&i.register(e,n)&&this.totalAnimations++}destroy(t,e){if(!t)return;const n=this._fetchNamespace(t);this.afterFlush(()=>{this.namespacesByHostElement.delete(n.hostElement),delete this._namespaceLookup[t];const e=this._namespaceList.indexOf(n);e>=0&&this._namespaceList.splice(e,1)}),this.afterFlushAnimationsDone(()=>n.destroy(e))}_fetchNamespace(t){return this._namespaceLookup[t]}fetchNamespacesByElement(t){const e=new Set,n=this.statesByElement.get(t);if(n){const t=Object.keys(n);for(let i=0;i=0&&this.collectedLeaveElements.splice(t,1)}if(t){const i=this._fetchNamespace(t);i&&i.insertNode(e,n)}i&&this.collectEnterElement(e)}collectEnterElement(t){this.collectedEnterElements.push(t)}markElementAsDisabled(t,e){e?this.disabledNodes.has(t)||(this.disabledNodes.add(t),zd(t,"ng-animate-disabled")):this.disabledNodes.has(t)&&(this.disabledNodes.delete(t),qd(t,"ng-animate-disabled"))}removeNode(t,e,n,i){if(Ld(e)){const s=t?this._fetchNamespace(t):null;if(s?s.removeNode(e,i):this.markElementAsRemoved(t,e,!1,i),n){const n=this.namespacesByHostElement.get(e);n&&n.id!==t&&n.removeNode(e,i)}}else this._onRemovalComplete(e,i)}markElementAsRemoved(t,e,n,i){this.collectedLeaveElements.push(e),e.__ng_removed={namespaceId:t,setForRemoval:i,hasAnimation:n,removedBeforeQueried:!1}}listen(t,e,n,i,s){return Ld(e)?this._fetchNamespace(t).listen(e,n,i,s):()=>{}}_buildInstruction(t,e,n,i,s){return t.transition.build(this.driver,t.element,t.fromState.value,t.toState.value,n,i,t.fromState.options,t.toState.options,e,s)}destroyInnerAnimations(t){let e=this.driver.query(t,".ng-trigger",!0);e.forEach(t=>this.destroyActiveAnimationsForElement(t)),0!=this.playersByQueriedElement.size&&(e=this.driver.query(t,".ng-animating",!0),e.forEach(t=>this.finishActiveQueriedAnimationOnElement(t)))}destroyActiveAnimationsForElement(t){const e=this.playersByElement.get(t);e&&e.forEach(t=>{t.queued?t.markedForDestroy=!0:t.destroy()})}finishActiveQueriedAnimationOnElement(t){const e=this.playersByQueriedElement.get(t);e&&e.forEach(t=>t.finish())}whenRenderingDone(){return new Promise(t=>{if(this.players.length)return uu(this.players).onDone(()=>t());t()})}processLeaveNode(t){const e=t.__ng_removed;if(e&&e.setForRemoval){if(t.__ng_removed=Pd,e.namespaceId){this.destroyInnerAnimations(t);const n=this._fetchNamespace(e.namespaceId);n&&n.clearElementCache(t)}this._onRemovalComplete(t,e.setForRemoval)}this.driver.matchesElement(t,".ng-animate-disabled")&&this.markElementAsDisabled(t,!1),this.driver.query(t,".ng-animate-disabled",!0).forEach(t=>{this.markElementAsDisabled(t,!1)})}flush(t=-1){let e=[];if(this.newHostElements.size&&(this.newHostElements.forEach((t,e)=>this._balanceNamespaceList(t,e)),this.newHostElements.clear()),this.totalAnimations&&this.collectedEnterElements.length)for(let n=0;nt()),this._flushFns=[],this._whenQuietFns.length){const t=this._whenQuietFns;this._whenQuietFns=[],e.length?uu(e).onDone(()=>{t.forEach(t=>t())}):t.forEach(t=>t())}}reportError(t){throw new Error("Unable to process animations due to the following failed trigger transitions\n "+t.join("\n"))}_flushAnimations(t,e){const n=new cd,i=[],s=new Map,r=[],o=new Map,a=new Map,l=new Map,c=new Set;this.disabledNodes.forEach(t=>{c.add(t);const e=this.driver.query(t,".ng-animate-queued",!0);for(let n=0;n{const n="ng-enter"+f++;p.set(e,n),t.forEach(t=>zd(t,n))});const m=[],g=new Set,_=new Set;for(let A=0;Ag.add(t)):_.add(t))}const y=new Map,b=Hd(u,Array.from(g));b.forEach((t,e)=>{const n="ng-leave"+f++;y.set(e,n),t.forEach(t=>zd(t,n))}),t.push(()=>{d.forEach((t,e)=>{const n=p.get(e);t.forEach(t=>qd(t,n))}),b.forEach((t,e)=>{const n=y.get(e);t.forEach(t=>qd(t,n))}),m.forEach(t=>{this.processLeaveNode(t)})});const v=[],w=[];for(let A=this._namespaceList.length-1;A>=0;A--)this._namespaceList[A].drainQueuedTransitions(e).forEach(t=>{const e=t.player,s=t.element;if(v.push(e),this.collectedEnterElements.length){const t=s.__ng_removed;if(t&&t.setForMove)return void e.destroy()}const c=!h||!this.driver.containsElement(h,s),u=y.get(s),d=p.get(s),f=this._buildInstruction(t,n,d,u,c);if(f.errors&&f.errors.length)w.push(f);else{if(c)return e.onStart(()=>ju(s,f.fromStyles)),e.onDestroy(()=>Lu(s,f.toStyles)),void i.push(e);if(t.isFallbackTransition)return e.onStart(()=>ju(s,f.fromStyles)),e.onDestroy(()=>Lu(s,f.toStyles)),void i.push(e);f.timelines.forEach(t=>t.stretchStartingKeyframe=!0),n.append(s,f.timelines),r.push({instruction:f,player:e,element:s}),f.queriedElements.forEach(t=>gu(o,t,[]).push(e)),f.preStyleProps.forEach((t,e)=>{const n=Object.keys(t);if(n.length){let t=a.get(e);t||a.set(e,t=new Set),n.forEach(e=>t.add(e))}}),f.postStyleProps.forEach((t,e)=>{const n=Object.keys(t);let i=l.get(e);i||l.set(e,i=new Set),n.forEach(t=>i.add(t))})}});if(w.length){const t=[];w.forEach(e=>{t.push(`@${e.triggerName} has failed due to:\n`),e.errors.forEach(e=>t.push(`- ${e}\n`))}),v.forEach(t=>t.destroy()),this.reportError(t)}const C=new Map,E=new Map;r.forEach(t=>{const e=t.element;n.has(e)&&(E.set(e,e),this._beforeAnimationBuild(t.player.namespaceId,t.instruction,C))}),i.forEach(t=>{const e=t.element;this._getPreviousPlayers(e,!1,t.namespaceId,t.triggerName,null).forEach(t=>{gu(C,e,[]).push(t),t.destroy()})});const S=m.filter(t=>Ud(t,a,l)),x=new Map;Bd(x,this.driver,_,l,"*").forEach(t=>{Ud(t,a,l)&&S.push(t)});const k=new Map;d.forEach((t,e)=>{Bd(k,this.driver,new Set(t),a,"!")}),S.forEach(t=>{const e=x.get(t),n=k.get(t);x.set(t,Object.assign(Object.assign({},e),n))});const T=[],I=[],D={};r.forEach(t=>{const{element:e,player:r,instruction:o}=t;if(n.has(e)){if(c.has(e))return r.onDestroy(()=>Lu(e,o.toStyles)),r.disabled=!0,r.overrideTotalTime(o.totalTime),void i.push(r);let t=D;if(E.size>1){let n=e;const i=[];for(;n=n.parentNode;){const e=E.get(n);if(e){t=e;break}i.push(n)}i.forEach(e=>E.set(e,t))}const n=this._buildAnimation(r.namespaceId,o,C,s,k,x);if(r.setRealPlayer(n),t===D)T.push(r);else{const e=this.playersByElement.get(t);e&&e.length&&(r.parentPlayer=uu(e)),i.push(r)}}else ju(e,o.fromStyles),r.onDestroy(()=>Lu(e,o.toStyles)),I.push(r),c.has(e)&&i.push(r)}),I.forEach(t=>{const e=s.get(t.element);if(e&&e.length){const n=uu(e);t.setRealPlayer(n)}}),i.forEach(t=>{t.parentPlayer?t.syncPlayerEvents(t.parentPlayer):t.destroy()});for(let A=0;A!t.destroyed);i.length?$d(this,t,i):this.processLeaveNode(t)}return m.length=0,T.forEach(t=>{this.players.push(t),t.onDone(()=>{t.destroy();const e=this.players.indexOf(t);this.players.splice(e,1)}),t.play()}),T}elementContainsData(t,e){let n=!1;const i=e.__ng_removed;return i&&i.setForRemoval&&(n=!0),this.playersByElement.has(e)&&(n=!0),this.playersByQueriedElement.has(e)&&(n=!0),this.statesByElement.has(e)&&(n=!0),this._fetchNamespace(t).elementContainsData(e)||n}afterFlush(t){this._flushFns.push(t)}afterFlushAnimationsDone(t){this._whenQuietFns.push(t)}_getPreviousPlayers(t,e,n,i,s){let r=[];if(e){const e=this.playersByQueriedElement.get(t);e&&(r=e)}else{const e=this.playersByElement.get(t);if(e){const t=!s||"void"==s;e.forEach(e=>{e.queued||(t||e.triggerName==i)&&r.push(e)})}}return(n||i)&&(r=r.filter(t=>!(n&&n!=t.namespaceId||i&&i!=t.triggerName))),r}_beforeAnimationBuild(t,e,n){const i=e.element,s=e.isRemovalTransition?void 0:t,r=e.isRemovalTransition?void 0:e.triggerName;for(const o of e.timelines){const t=o.element,a=t!==i,l=gu(n,t,[]);this._getPreviousPlayers(t,a,s,r,e.toState).forEach(t=>{const e=t.getRealPlayer();e.beforeDestroy&&e.beforeDestroy(),t.destroy(),l.push(t)})}ju(i,e.fromStyles)}_buildAnimation(t,e,n,i,s,r){const o=e.triggerName,a=e.element,l=[],c=new Set,h=new Set,u=e.timelines.map(e=>{const u=e.element;c.add(u);const d=u.__ng_removed;if(d&&d.removedBeforeQueried)return new lu(e.duration,e.delay);const p=u!==a,f=function(t){const e=[];return function t(e,n){for(let i=0;it.getRealPlayer())).filter(t=>!!t.element&&t.element===u),m=s.get(u),g=r.get(u),_=du(0,this._normalizer,0,e.keyframes,m,g),y=this._buildPlayer(e,_,f);if(e.subTimeline&&i&&h.add(u),p){const e=new Md(t,o,u);e.setRealPlayer(y),l.push(e)}return y});l.forEach(t=>{gu(this.playersByQueriedElement,t.element,[]).push(t),t.onDone(()=>function(t,e,n){let i;if(t instanceof Map){if(i=t.get(e),i){if(i.length){const t=i.indexOf(n);i.splice(t,1)}0==i.length&&t.delete(e)}}else if(i=t[e],i){if(i.length){const t=i.indexOf(n);i.splice(t,1)}0==i.length&&delete t[e]}return i}(this.playersByQueriedElement,t.element,t))}),c.forEach(t=>zd(t,"ng-animating"));const d=uu(u);return d.onDestroy(()=>{c.forEach(t=>qd(t,"ng-animating")),Lu(a,e.toStyles)}),h.forEach(t=>{gu(i,t,[]).push(d)}),d}_buildPlayer(t,e,n){return e.length>0?this.driver.animate(t.element,e,t.duration,t.delay,t.easing,n):new lu(t.duration,t.delay)}}class Md{constructor(t,e,n){this.namespaceId=t,this.triggerName=e,this.element=n,this._player=new lu,this._containsRealPlayer=!1,this._queuedCallbacks={},this.destroyed=!1,this.markedForDestroy=!1,this.disabled=!1,this.queued=!0,this.totalTime=0}setRealPlayer(t){this._containsRealPlayer||(this._player=t,Object.keys(this._queuedCallbacks).forEach(e=>{this._queuedCallbacks[e].forEach(n=>pu(t,e,void 0,n))}),this._queuedCallbacks={},this._containsRealPlayer=!0,this.overrideTotalTime(t.totalTime),this.queued=!1)}getRealPlayer(){return this._player}overrideTotalTime(t){this.totalTime=t}syncPlayerEvents(t){const e=this._player;e.triggerCallback&&t.onStart(()=>e.triggerCallback("start")),t.onDone(()=>this.finish()),t.onDestroy(()=>this.destroy())}_queueEvent(t,e){gu(this._queuedCallbacks,t,[]).push(e)}onDone(t){this.queued&&this._queueEvent("done",t),this._player.onDone(t)}onStart(t){this.queued&&this._queueEvent("start",t),this._player.onStart(t)}onDestroy(t){this.queued&&this._queueEvent("destroy",t),this._player.onDestroy(t)}init(){this._player.init()}hasStarted(){return!this.queued&&this._player.hasStarted()}play(){!this.queued&&this._player.play()}pause(){!this.queued&&this._player.pause()}restart(){!this.queued&&this._player.restart()}finish(){this._player.finish()}destroy(){this.destroyed=!0,this._player.destroy()}reset(){!this.queued&&this._player.reset()}setPosition(t){this.queued||this._player.setPosition(t)}getPosition(){return this.queued?0:this._player.getPosition()}triggerCallback(t){const e=this._player;e.triggerCallback&&e.triggerCallback(t)}}function Ld(t){return t&&1===t.nodeType}function jd(t,e){const n=t.style.display;return t.style.display=null!=e?e:"none",n}function Bd(t,e,n,i,s){const r=[];n.forEach(t=>r.push(jd(t)));const o=[];i.forEach((n,i)=>{const r={};n.forEach(t=>{const n=r[t]=e.computeStyle(i,t,s);n&&0!=n.length||(i.__ng_removed=Od,o.push(i))}),t.set(i,r)});let a=0;return n.forEach(t=>jd(t,r[a++])),o}function Hd(t,e){const n=new Map;if(t.forEach(t=>n.set(t,[])),0==e.length)return n;const i=new Set(e),s=new Map;return e.forEach(t=>{const e=function t(e){if(!e)return 1;let r=s.get(e);if(r)return r;const o=e.parentNode;return r=n.has(o)?o:i.has(o)?1:t(o),s.set(e,r),r}(t);1!==e&&n.get(e).push(t)}),n}function zd(t,e){if(t.classList)t.classList.add(e);else{let n=t.$$classes;n||(n=t.$$classes={}),n[e]=!0}}function qd(t,e){if(t.classList)t.classList.remove(e);else{let n=t.$$classes;n&&delete n[e]}}function $d(t,e,n){uu(n).onDone(()=>t.processLeaveNode(e))}function Ud(t,e,n){const i=n.get(t);if(!i)return!1;let s=e.get(t);return s?i.forEach(t=>s.add(t)):e.set(t,i),n.delete(t),!0}class Gd{constructor(t,e,n){this.bodyNode=t,this._driver=e,this._triggerCache={},this.onRemovalComplete=(t,e)=>{},this._transitionEngine=new Vd(t,e,n),this._timelineEngine=new Dd(t,e,n),this._transitionEngine.onRemovalComplete=(t,e)=>this.onRemovalComplete(t,e)}registerTrigger(t,e,n,i,s){const r=t+"-"+i;let o=this._triggerCache[r];if(!o){const t=[],e=nd(this._driver,s,t);if(t.length)throw new Error(`The animation trigger "${i}" has failed to build due to the following errors:\n - ${t.join("\n - ")}`);o=function(t,e){return new kd(t,e)}(i,e),this._triggerCache[r]=o}this._transitionEngine.registerTrigger(e,i,o)}register(t,e){this._transitionEngine.register(t,e)}destroy(t,e){this._transitionEngine.destroy(t,e)}onInsert(t,e,n,i){this._transitionEngine.insertNode(t,e,n,i)}onRemove(t,e,n,i){this._transitionEngine.removeNode(t,e,i||!1,n)}disableAnimations(t,e){this._transitionEngine.markElementAsDisabled(t,e)}process(t,e,n,i){if("@"==n.charAt(0)){const[t,s]=_u(n);this._timelineEngine.command(t,e,s,i)}else this._transitionEngine.trigger(t,e,n,i)}listen(t,e,n,i,s){if("@"==n.charAt(0)){const[t,i]=_u(n);return this._timelineEngine.listen(t,e,i,s)}return this._transitionEngine.listen(t,e,n,i,s)}flush(t=-1){this._transitionEngine.flush(t)}get players(){return this._transitionEngine.players.concat(this._timelineEngine.players)}whenRenderingDone(){return this._transitionEngine.whenRenderingDone()}}function Wd(t,e){let n=null,i=null;return Array.isArray(e)&&e.length?(n=Qd(e[0]),e.length>1&&(i=Qd(e[e.length-1]))):e&&(n=Qd(e)),n||i?new Zd(t,n,i):null}let Zd=(()=>{class t{constructor(e,n,i){this._element=e,this._startStyles=n,this._endStyles=i,this._state=0;let s=t.initialStylesByElement.get(e);s||t.initialStylesByElement.set(e,s={}),this._initialStyles=s}start(){this._state<1&&(this._startStyles&&Lu(this._element,this._startStyles,this._initialStyles),this._state=1)}finish(){this.start(),this._state<2&&(Lu(this._element,this._initialStyles),this._endStyles&&(Lu(this._element,this._endStyles),this._endStyles=null),this._state=1)}destroy(){this.finish(),this._state<3&&(t.initialStylesByElement.delete(this._element),this._startStyles&&(ju(this._element,this._startStyles),this._endStyles=null),this._endStyles&&(ju(this._element,this._endStyles),this._endStyles=null),Lu(this._element,this._initialStyles),this._state=3)}}return t.initialStylesByElement=new WeakMap,t})();function Qd(t){let e=null;const n=Object.keys(t);for(let i=0;ithis._handleCallback(t)}apply(){!function(t,e){const n=ip(t,"").trim();n.length&&(function(t,e){let n=0;for(let i=0;i=this._delay&&n>=this._duration&&this.finish()}finish(){this._finished||(this._finished=!0,this._onDoneFn(),ep(this._element,this._eventFn,!0))}destroy(){this._destroyed||(this._destroyed=!0,this.finish(),function(t,e){const n=ip(t,"").split(","),i=tp(n,e);i>=0&&(n.splice(i,1),np(t,"",n.join(",")))}(this._element,this._name))}}function Jd(t,e,n){np(t,"PlayState",n,Xd(t,e))}function Xd(t,e){const n=ip(t,"");return n.indexOf(",")>0?tp(n.split(","),e):tp([n],e)}function tp(t,e){for(let n=0;n=0)return n;return-1}function ep(t,e,n){n?t.removeEventListener("animationend",e):t.addEventListener("animationend",e)}function np(t,e,n,i){const s="animation"+e;if(null!=i){const e=t.style[s];if(e.length){const t=e.split(",");t[i]=n,n=t.join(",")}}t.style[s]=n}function ip(t,e){return t.style["animation"+e]}class sp{constructor(t,e,n,i,s,r,o,a){this.element=t,this.keyframes=e,this.animationName=n,this._duration=i,this._delay=s,this._finalStyles=o,this._specialStyles=a,this._onDoneFns=[],this._onStartFns=[],this._onDestroyFns=[],this._started=!1,this.currentSnapshot={},this._state=0,this.easing=r||"linear",this.totalTime=i+s,this._buildStyler()}onStart(t){this._onStartFns.push(t)}onDone(t){this._onDoneFns.push(t)}onDestroy(t){this._onDestroyFns.push(t)}destroy(){this.init(),this._state>=4||(this._state=4,this._styler.destroy(),this._flushStartFns(),this._flushDoneFns(),this._specialStyles&&this._specialStyles.destroy(),this._onDestroyFns.forEach(t=>t()),this._onDestroyFns=[])}_flushDoneFns(){this._onDoneFns.forEach(t=>t()),this._onDoneFns=[]}_flushStartFns(){this._onStartFns.forEach(t=>t()),this._onStartFns=[]}finish(){this.init(),this._state>=3||(this._state=3,this._styler.finish(),this._flushStartFns(),this._specialStyles&&this._specialStyles.finish(),this._flushDoneFns())}setPosition(t){this._styler.setPosition(t)}getPosition(){return this._styler.getPosition()}hasStarted(){return this._state>=2}init(){this._state>=1||(this._state=1,this._styler.apply(),this._delay&&this._styler.pause())}play(){this.init(),this.hasStarted()||(this._flushStartFns(),this._state=2,this._specialStyles&&this._specialStyles.start()),this._styler.resume()}pause(){this.init(),this._styler.pause()}restart(){this.reset(),this.play()}reset(){this._styler.destroy(),this._buildStyler(),this._styler.apply()}_buildStyler(){this._styler=new Yd(this.element,this.animationName,this._duration,this._delay,this.easing,"forwards",()=>this.finish())}triggerCallback(t){const e="start"==t?this._onStartFns:this._onDoneFns;e.forEach(t=>t()),e.length=0}beforeDestroy(){this.init();const t={};if(this.hasStarted()){const e=this._state>=3;Object.keys(this._finalStyles).forEach(n=>{"offset"!=n&&(t[n]=e?this._finalStyles[n]:Ku(this.element,n))})}this.currentSnapshot=t}}class rp extends lu{constructor(t,e){super(),this.element=t,this._startingStyles={},this.__initialized=!1,this._styles=Iu(e)}init(){!this.__initialized&&this._startingStyles&&(this.__initialized=!0,Object.keys(this._styles).forEach(t=>{this._startingStyles[t]=this.element.style[t]}),super.init())}play(){this._startingStyles&&(this.init(),Object.keys(this._styles).forEach(t=>this.element.style.setProperty(t,this._styles[t])),super.play())}destroy(){this._startingStyles&&(Object.keys(this._startingStyles).forEach(t=>{const e=this._startingStyles[t];e?this.element.style.setProperty(t,e):this.element.style.removeProperty(t)}),this._startingStyles=null,super.destroy())}}class op{constructor(){this._count=0,this._head=document.querySelector("head"),this._warningIssued=!1}validateStyleProperty(t){return Su(t)}matchesElement(t,e){return xu(t,e)}containsElement(t,e){return ku(t,e)}query(t,e,n){return Tu(t,e,n)}computeStyle(t,e,n){return window.getComputedStyle(t)[e]}buildKeyframeElement(t,e,n){n=n.map(t=>Iu(t));let i=`@keyframes ${e} {\n`,s="";n.forEach(t=>{s=" ";const e=parseFloat(t.offset);i+=`${s}${100*e}% {\n`,s+=" ",Object.keys(t).forEach(e=>{const n=t[e];switch(e){case"offset":return;case"easing":return void(n&&(i+=`${s}animation-timing-function: ${n};\n`));default:return void(i+=`${s}${e}: ${n};\n`)}}),i+=s+"}\n"}),i+="}\n";const r=document.createElement("style");return r.innerHTML=i,r}animate(t,e,n,i,s,r=[],o){o&&this._notifyFaultyScrubber();const a=r.filter(t=>t instanceof sp),l={};Wu(n,i)&&a.forEach(t=>{let e=t.currentSnapshot;Object.keys(e).forEach(t=>l[t]=e[t])});const c=function(t){let e={};return t&&(Array.isArray(t)?t:[t]).forEach(t=>{Object.keys(t).forEach(n=>{"offset"!=n&&"easing"!=n&&(e[n]=t[n])})}),e}(e=Zu(t,e,l));if(0==n)return new rp(t,c);const h="gen_css_kf_"+this._count++,u=this.buildKeyframeElement(t,h,e);document.querySelector("head").appendChild(u);const d=Wd(t,e),p=new sp(t,e,h,n,i,s,c,d);return p.onDestroy(()=>{var t;(t=u).parentNode.removeChild(t)}),p}_notifyFaultyScrubber(){this._warningIssued||(console.warn("@angular/animations: please load the web-animations.js polyfill to allow programmatic access...\n"," visit http://bit.ly/IWukam to learn more about using the web-animation-js polyfill."),this._warningIssued=!0)}}class ap{constructor(t,e,n,i){this.element=t,this.keyframes=e,this.options=n,this._specialStyles=i,this._onDoneFns=[],this._onStartFns=[],this._onDestroyFns=[],this._initialized=!1,this._finished=!1,this._started=!1,this._destroyed=!1,this.time=0,this.parentPlayer=null,this.currentSnapshot={},this._duration=n.duration,this._delay=n.delay||0,this.time=this._duration+this._delay}_onFinish(){this._finished||(this._finished=!0,this._onDoneFns.forEach(t=>t()),this._onDoneFns=[])}init(){this._buildPlayer(),this._preparePlayerBeforeStart()}_buildPlayer(){if(this._initialized)return;this._initialized=!0;const t=this.keyframes;this.domPlayer=this._triggerWebAnimation(this.element,t,this.options),this._finalKeyframe=t.length?t[t.length-1]:{},this.domPlayer.addEventListener("finish",()=>this._onFinish())}_preparePlayerBeforeStart(){this._delay?this._resetDomPlayerState():this.domPlayer.pause()}_triggerWebAnimation(t,e,n){return t.animate(e,n)}onStart(t){this._onStartFns.push(t)}onDone(t){this._onDoneFns.push(t)}onDestroy(t){this._onDestroyFns.push(t)}play(){this._buildPlayer(),this.hasStarted()||(this._onStartFns.forEach(t=>t()),this._onStartFns=[],this._started=!0,this._specialStyles&&this._specialStyles.start()),this.domPlayer.play()}pause(){this.init(),this.domPlayer.pause()}finish(){this.init(),this._specialStyles&&this._specialStyles.finish(),this._onFinish(),this.domPlayer.finish()}reset(){this._resetDomPlayerState(),this._destroyed=!1,this._finished=!1,this._started=!1}_resetDomPlayerState(){this.domPlayer&&this.domPlayer.cancel()}restart(){this.reset(),this.play()}hasStarted(){return this._started}destroy(){this._destroyed||(this._destroyed=!0,this._resetDomPlayerState(),this._onFinish(),this._specialStyles&&this._specialStyles.destroy(),this._onDestroyFns.forEach(t=>t()),this._onDestroyFns=[])}setPosition(t){this.domPlayer.currentTime=t*this.time}getPosition(){return this.domPlayer.currentTime/this.time}get totalTime(){return this._delay+this._duration}beforeDestroy(){const t={};this.hasStarted()&&Object.keys(this._finalKeyframe).forEach(e=>{"offset"!=e&&(t[e]=this._finished?this._finalKeyframe[e]:Ku(this.element,e))}),this.currentSnapshot=t}triggerCallback(t){const e="start"==t?this._onStartFns:this._onDoneFns;e.forEach(t=>t()),e.length=0}}class lp{constructor(){this._isNativeImpl=/\{\s*\[native\s+code\]\s*\}/.test(cp().toString()),this._cssKeyframesDriver=new op}validateStyleProperty(t){return Su(t)}matchesElement(t,e){return xu(t,e)}containsElement(t,e){return ku(t,e)}query(t,e,n){return Tu(t,e,n)}computeStyle(t,e,n){return window.getComputedStyle(t)[e]}overrideWebAnimationsSupport(t){this._isNativeImpl=t}animate(t,e,n,i,s,r=[],o){if(!o&&!this._isNativeImpl)return this._cssKeyframesDriver.animate(t,e,n,i,s,r);const a={duration:n,delay:i,fill:0==i?"both":"forwards"};s&&(a.easing=s);const l={},c=r.filter(t=>t instanceof ap);Wu(n,i)&&c.forEach(t=>{let e=t.currentSnapshot;Object.keys(e).forEach(t=>l[t]=e[t])});const h=Wd(t,e=Zu(t,e=e.map(t=>Fu(t,!1)),l));return new ap(t,e,a,h)}}function cp(){return"undefined"!=typeof window&&void 0!==window.document&&Element.prototype.animate||{}}let hp=(()=>{class t extends tu{constructor(t,e){super(),this._nextAnimationId=0,this._renderer=t.createRenderer(e.body,{id:"0",encapsulation:ae.None,styles:[],data:{animation:[]}})}build(t){const e=this._nextAnimationId.toString();this._nextAnimationId++;const n=Array.isArray(t)?iu(t):t;return pp(this._renderer,null,e,"register",[n]),new up(e,this._renderer)}}return t.\u0275fac=function(e){return new(e||t)(Wt(oa),Wt(ac))},t.\u0275prov=ct({token:t,factory:t.\u0275fac}),t})();class up extends class{}{constructor(t,e){super(),this._id=t,this._renderer=e}create(t,e){return new dp(this._id,t,e||{},this._renderer)}}class dp{constructor(t,e,n,i){this.id=t,this.element=e,this._renderer=i,this.parentPlayer=null,this._started=!1,this.totalTime=0,this._command("create",n)}_listen(t,e){return this._renderer.listen(this.element,`@@${this.id}:${t}`,e)}_command(t,...e){return pp(this._renderer,this.element,this.id,t,e)}onDone(t){this._listen("done",t)}onStart(t){this._listen("start",t)}onDestroy(t){this._listen("destroy",t)}init(){this._command("init")}hasStarted(){return this._started}play(){this._command("play"),this._started=!0}pause(){this._command("pause")}restart(){this._command("restart")}finish(){this._command("finish")}destroy(){this._command("destroy")}reset(){this._command("reset")}setPosition(t){this._command("setPosition",t)}getPosition(){return 0}}function pp(t,e,n,i,s){return t.setProperty(e,`@@${n}:${i}`,s)}let fp=(()=>{class t{constructor(t,e,n){this.delegate=t,this.engine=e,this._zone=n,this._currentId=0,this._microtaskId=1,this._animationCallbacksBuffer=[],this._rendererCache=new Map,this._cdRecurDepth=0,this.promise=Promise.resolve(0),e.onRemovalComplete=(t,e)=>{e&&e.parentNode(t)&&e.removeChild(t.parentNode,t)}}createRenderer(t,e){const n=this.delegate.createRenderer(t,e);if(!(t&&e&&e.data&&e.data.animation)){let t=this._rendererCache.get(n);return t||(t=new mp("",n,this.engine),this._rendererCache.set(n,t)),t}const i=e.id,s=e.id+"-"+this._currentId;this._currentId++,this.engine.register(s,t);const r=e=>{Array.isArray(e)?e.forEach(r):this.engine.registerTrigger(i,s,t,e.name,e)};return e.data.animation.forEach(r),new gp(this,s,n,this.engine)}begin(){this._cdRecurDepth++,this.delegate.begin&&this.delegate.begin()}_scheduleCountTask(){this.promise.then(()=>{this._microtaskId++})}scheduleListenerCallback(t,e,n){t>=0&&te(n)):(0==this._animationCallbacksBuffer.length&&Promise.resolve(null).then(()=>{this._zone.run(()=>{this._animationCallbacksBuffer.forEach(t=>{const[e,n]=t;e(n)}),this._animationCallbacksBuffer=[]})}),this._animationCallbacksBuffer.push([e,n]))}end(){this._cdRecurDepth--,0==this._cdRecurDepth&&this._zone.runOutsideAngular(()=>{this._scheduleCountTask(),this.engine.flush(this._microtaskId)}),this.delegate.end&&this.delegate.end()}whenRenderingDone(){return this.engine.whenRenderingDone()}}return t.\u0275fac=function(e){return new(e||t)(Wt(oa),Wt(Gd),Wt(Vl))},t.\u0275prov=ct({token:t,factory:t.\u0275fac}),t})();class mp{constructor(t,e,n){this.namespaceId=t,this.delegate=e,this.engine=n,this.destroyNode=this.delegate.destroyNode?t=>e.destroyNode(t):null}get data(){return this.delegate.data}destroy(){this.engine.destroy(this.namespaceId,this.delegate),this.delegate.destroy()}createElement(t,e){return this.delegate.createElement(t,e)}createComment(t){return this.delegate.createComment(t)}createText(t){return this.delegate.createText(t)}appendChild(t,e){this.delegate.appendChild(t,e),this.engine.onInsert(this.namespaceId,e,t,!1)}insertBefore(t,e,n){this.delegate.insertBefore(t,e,n),this.engine.onInsert(this.namespaceId,e,t,!0)}removeChild(t,e,n){this.engine.onRemove(this.namespaceId,e,this.delegate,n)}selectRootElement(t,e){return this.delegate.selectRootElement(t,e)}parentNode(t){return this.delegate.parentNode(t)}nextSibling(t){return this.delegate.nextSibling(t)}setAttribute(t,e,n,i){this.delegate.setAttribute(t,e,n,i)}removeAttribute(t,e,n){this.delegate.removeAttribute(t,e,n)}addClass(t,e){this.delegate.addClass(t,e)}removeClass(t,e){this.delegate.removeClass(t,e)}setStyle(t,e,n,i){this.delegate.setStyle(t,e,n,i)}removeStyle(t,e,n){this.delegate.removeStyle(t,e,n)}setProperty(t,e,n){"@"==e.charAt(0)&&"@.disabled"==e?this.disableAnimations(t,!!n):this.delegate.setProperty(t,e,n)}setValue(t,e){this.delegate.setValue(t,e)}listen(t,e,n){return this.delegate.listen(t,e,n)}disableAnimations(t,e){this.engine.disableAnimations(t,e)}}class gp extends mp{constructor(t,e,n,i){super(e,n,i),this.factory=t,this.namespaceId=e}setProperty(t,e,n){"@"==e.charAt(0)?"."==e.charAt(1)&&"@.disabled"==e?this.disableAnimations(t,n=void 0===n||!!n):this.engine.process(this.namespaceId,t,e.substr(1),n):this.delegate.setProperty(t,e,n)}listen(t,e,n){if("@"==e.charAt(0)){const i=function(t){switch(t){case"body":return document.body;case"document":return document;case"window":return window;default:return t}}(t);let s=e.substr(1),r="";return"@"!=s.charAt(0)&&([s,r]=function(t){const e=t.indexOf(".");return[t.substring(0,e),t.substr(e+1)]}(s)),this.engine.listen(this.namespaceId,i,s,r,t=>{this.factory.scheduleListenerCallback(t._data||-1,n,t)})}return this.delegate.listen(t,e,n)}}let _p=(()=>{class t extends Gd{constructor(t,e,n){super(t.body,e,n)}}return t.\u0275fac=function(e){return new(e||t)(Wt(ac),Wt(Au),Wt(bd))},t.\u0275prov=ct({token:t,factory:t.\u0275fac}),t})();const yp=new Mt("AnimationModuleType"),bp=[{provide:Au,useFactory:function(){return"function"==typeof cp()?new lp:new op}},{provide:yp,useValue:"BrowserAnimations"},{provide:tu,useClass:hp},{provide:bd,useFactory:function(){return new vd}},{provide:Gd,useClass:_p},{provide:oa,useFactory:function(t,e,n){return new fp(t,e,n)},deps:[Mc,Gd,Vl]}];let vp=(()=>{class t{}return t.\u0275mod=me({type:t}),t.\u0275inj=ht({factory:function(e){return new(e||t)},providers:bp,imports:[Jc]}),t})();const wp=new ua("10.1.0"),Cp=new Mt("mat-sanity-checks",{providedIn:"root",factory:function(){return!0}});let Ep,Sp=(()=>{class t{constructor(t,e,n){this._hasDoneGlobalChecks=!1,this._document=n,t._applyBodyHighContrastModeCssClasses(),this._sanityChecks=e,this._hasDoneGlobalChecks||(this._checkDoctypeIsDefined(),this._checkThemeIsPresent(),this._checkCdkVersionMatch(),this._hasDoneGlobalChecks=!0)}_getDocument(){const t=this._document||document;return"object"==typeof t&&t?t:null}_getWindow(){const t=this._getDocument(),e=(null==t?void 0:t.defaultView)||window;return"object"==typeof e&&e?e:null}_checksAreEnabled(){return wi()&&!this._isTestEnv()}_isTestEnv(){const t=this._getWindow();return t&&(t.__karma__||t.jasmine)}_checkDoctypeIsDefined(){const t=this._checksAreEnabled()&&(!0===this._sanityChecks||this._sanityChecks.doctype),e=this._getDocument();t&&e&&!e.doctype&&console.warn("Current document does not have a doctype. This may cause some Angular Material components not to behave as expected.")}_checkThemeIsPresent(){const t=!this._checksAreEnabled()||!1===this._sanityChecks||!this._sanityChecks.theme,e=this._getDocument();if(t||!e||!e.body||"function"!=typeof getComputedStyle)return;const n=e.createElement("div");n.classList.add("mat-theme-loaded-marker"),e.body.appendChild(n);const i=getComputedStyle(n);i&&"none"!==i.display&&console.warn("Could not find Angular Material core theme. Most Material components may not work as expected. For more info refer to the theming guide: https://material.angular.io/guide/theming"),e.body.removeChild(n)}_checkCdkVersionMatch(){this._checksAreEnabled()&&(!0===this._sanityChecks||this._sanityChecks.version)&&wp.full!==Yh.full&&console.warn("The Angular Material version ("+wp.full+") does not match the Angular CDK version ("+Yh.full+").\nPlease ensure the versions of these two packages exactly match.")}}return t.\u0275mod=me({type:t}),t.\u0275inj=ht({factory:function(e){return new(e||t)(Wt(Wh),Wt(Cp,8),Wt(ac,8))},imports:[[Kh],Kh]}),t})();function xp(t,e){return class extends t{constructor(...t){super(...t),this.color=e}get color(){return this._color}set color(t){const n=t||e;n!==this._color&&(this._color&&this._elementRef.nativeElement.classList.remove("mat-"+this._color),n&&this._elementRef.nativeElement.classList.add("mat-"+n),this._color=n)}}}function kp(t){return class extends t{constructor(...t){super(...t),this.errorState=!1,this.stateChanges=new E}updateErrorState(){const t=this.errorState,e=(this.errorStateMatcher||this._defaultErrorStateMatcher).isErrorState(this.ngControl?this.ngControl.control:null,this._parentFormGroup||this._parentForm);e!==t&&(this.errorState=e,this.stateChanges.next())}}}try{Ep="undefined"!=typeof Intl}catch(P_){Ep=!1}let Tp=(()=>{class t{isErrorState(t,e){return!!(t&&t.invalid&&(t.touched||e&&e.submitted))}}return t.\u0275fac=function(e){return new(e||t)},t.\u0275prov=ct({factory:function(){return new t},token:t,providedIn:"root"}),t})(),Ip=(()=>{class t{}return t.\u0275mod=me({type:t}),t.\u0275inj=ht({factory:function(e){return new(e||t)},imports:[[Sp],Sp]}),t})(),Dp=(()=>{class t{}return t.\u0275mod=me({type:t}),t.\u0275inj=ht({factory:function(e){return new(e||t)},imports:[[Sp,eh],Sp]}),t})(),Ap=(()=>{class t{}return t.\u0275mod=me({type:t}),t.\u0275inj=ht({factory:function(e){return new(e||t)}}),t})();const Pp=new Mt("mat-label-global-options"),Op=["underline"],Rp=["connectionContainer"],Np=["inputContainer"],Fp=["label"];function Vp(t,e){1&t&&(mo(0),uo(1,"div",14),fo(2,"div",15),fo(3,"div",16),fo(4,"div",17),po(),uo(5,"div",18),fo(6,"div",15),fo(7,"div",16),fo(8,"div",17),po(),go())}function Mp(t,e){1&t&&(uo(0,"div",19),xo(1,1),po())}function Lp(t,e){if(1&t&&(mo(0),xo(1,2),uo(2,"span"),Vo(3),po(),go()),2&t){const t=Co(2);hs(3),Mo(t._control.placeholder)}}function jp(t,e){1&t&&xo(0,3,["*ngSwitchCase","true"])}function Bp(t,e){1&t&&(uo(0,"span",23),Vo(1," *"),po())}function Hp(t,e){if(1&t){const t=_o();uo(0,"label",20,21),bo("cdkObserveContent",(function(){return Je(t),Co().updateOutlineGap()})),ao(2,Lp,4,1,"ng-container",12),ao(3,jp,1,0,"ng-content",12),ao(4,Bp,2,0,"span",22),po()}if(2&t){const t=Co();Ao("mat-empty",t._control.empty&&!t._shouldAlwaysFloat)("mat-form-field-empty",t._control.empty&&!t._shouldAlwaysFloat)("mat-accent","accent"==t.color)("mat-warn","warn"==t.color),co("cdkObserveContentDisabled","outline"!=t.appearance)("id",t._labelId)("ngSwitch",t._hasLabel()),oo("for",t._control.id)("aria-owns",t._control.id),hs(2),co("ngSwitchCase",!1),hs(1),co("ngSwitchCase",!0),hs(1),co("ngIf",!t.hideRequiredMarker&&t._control.required&&!t._control.disabled)}}function zp(t,e){1&t&&(uo(0,"div",24),xo(1,4),po())}function qp(t,e){if(1&t&&(uo(0,"div",25,26),fo(2,"span",27),po()),2&t){const t=Co();hs(2),Ao("mat-accent","accent"==t.color)("mat-warn","warn"==t.color)}}function $p(t,e){1&t&&(uo(0,"div"),xo(1,5),po()),2&t&&co("@transitionMessages",Co()._subscriptAnimationState)}function Up(t,e){if(1&t&&(uo(0,"div",31),Vo(1),po()),2&t){const t=Co(2);co("id",t._hintLabelId),hs(1),Mo(t.hintLabel)}}function Gp(t,e){if(1&t&&(uo(0,"div",28),ao(1,Up,2,2,"div",29),xo(2,6),fo(3,"div",30),xo(4,7),po()),2&t){const t=Co();co("@transitionMessages",t._subscriptAnimationState),hs(1),co("ngIf",t.hintLabel)}}const Wp=["*",[["","matPrefix",""]],[["mat-placeholder"]],[["mat-label"]],[["","matSuffix",""]],[["mat-error"]],[["mat-hint",3,"align","end"]],[["mat-hint","align","end"]]],Zp=["*","[matPrefix]","mat-placeholder","mat-label","[matSuffix]","mat-error","mat-hint:not([align='end'])","mat-hint[align='end']"],Qp=new Mt("MatError"),Kp={transitionMessages:eu("transitionMessages",[ru("enter",su({opacity:1,transform:"translateY(0%)"})),ou("void => enter",[su({opacity:0,transform:"translateY(-100%)"}),nu("300ms cubic-bezier(0.55, 0, 0.55, 0.2)")])])};let Yp=(()=>{class t{}return t.\u0275fac=function(e){return new(e||t)},t.\u0275dir=_e({type:t}),t})();function Jp(t){return Error(`A hint was already declared for 'align="${t}"'.`)}const Xp=new Mt("MatHint");let tf=(()=>{class t{}return t.\u0275fac=function(e){return new(e||t)},t.\u0275dir=_e({type:t,selectors:[["mat-label"]]}),t})(),ef=(()=>{class t{}return t.\u0275fac=function(e){return new(e||t)},t.\u0275dir=_e({type:t,selectors:[["mat-placeholder"]]}),t})();const nf=new Mt("MatPrefix"),sf=new Mt("MatSuffix");let rf=0;class of{constructor(t){this._elementRef=t}}const af=xp(of,"primary"),lf=new Mt("MAT_FORM_FIELD_DEFAULT_OPTIONS"),cf=new Mt("MatFormField");let hf=(()=>{class t extends af{constructor(t,e,n,i,s,r,o,a){super(t),this._elementRef=t,this._changeDetectorRef=e,this._dir=i,this._defaults=s,this._platform=r,this._ngZone=o,this._outlineGapCalculationNeededImmediately=!1,this._outlineGapCalculationNeededOnStable=!1,this._destroyed=new E,this._showAlwaysAnimate=!1,this._subscriptAnimationState="",this._hintLabel="",this._hintLabelId="mat-hint-"+rf++,this._labelId="mat-form-field-label-"+rf++,this._labelOptions=n||{},this.floatLabel=this._getDefaultFloatLabelState(),this._animationsEnabled="NoopAnimations"!==a,this.appearance=s&&s.appearance?s.appearance:"legacy",this._hideRequiredMarker=!(!s||null==s.hideRequiredMarker)&&s.hideRequiredMarker}get appearance(){return this._appearance}set appearance(t){const e=this._appearance;this._appearance=t||this._defaults&&this._defaults.appearance||"legacy","outline"===this._appearance&&e!==t&&(this._outlineGapCalculationNeededOnStable=!0)}get hideRequiredMarker(){return this._hideRequiredMarker}set hideRequiredMarker(t){this._hideRequiredMarker=ah(t)}get _shouldAlwaysFloat(){return"always"===this.floatLabel&&!this._showAlwaysAnimate}get _canLabelFloat(){return"never"!==this.floatLabel}get hintLabel(){return this._hintLabel}set hintLabel(t){this._hintLabel=t,this._processHints()}get floatLabel(){return"legacy"!==this.appearance&&"never"===this._floatLabel?"auto":this._floatLabel}set floatLabel(t){t!==this._floatLabel&&(this._floatLabel=t||this._getDefaultFloatLabelState(),this._changeDetectorRef.markForCheck())}get _control(){return this._explicitFormFieldControl||this._controlNonStatic||this._controlStatic}set _control(t){this._explicitFormFieldControl=t}get _labelChild(){return this._labelChildNonStatic||this._labelChildStatic}getConnectedOverlayOrigin(){return this._connectionContainerRef||this._elementRef}ngAfterContentInit(){this._validateControlChild();const t=this._control;t.controlType&&this._elementRef.nativeElement.classList.add("mat-form-field-type-"+t.controlType),t.stateChanges.pipe(Xh(null)).subscribe(()=>{this._validatePlaceholders(),this._syncDescribedByIds(),this._changeDetectorRef.markForCheck()}),t.ngControl&&t.ngControl.valueChanges&&t.ngControl.valueChanges.pipe(Ch(this._destroyed)).subscribe(()=>this._changeDetectorRef.markForCheck()),this._ngZone.runOutsideAngular(()=>{this._ngZone.onStable.asObservable().pipe(Ch(this._destroyed)).subscribe(()=>{this._outlineGapCalculationNeededOnStable&&this.updateOutlineGap()})}),U(this._prefixChildren.changes,this._suffixChildren.changes).subscribe(()=>{this._outlineGapCalculationNeededOnStable=!0,this._changeDetectorRef.markForCheck()}),this._hintChildren.changes.pipe(Xh(null)).subscribe(()=>{this._processHints(),this._changeDetectorRef.markForCheck()}),this._errorChildren.changes.pipe(Xh(null)).subscribe(()=>{this._syncDescribedByIds(),this._changeDetectorRef.markForCheck()}),this._dir&&this._dir.change.pipe(Ch(this._destroyed)).subscribe(()=>{"function"==typeof requestAnimationFrame?this._ngZone.runOutsideAngular(()=>{requestAnimationFrame(()=>this.updateOutlineGap())}):this.updateOutlineGap()})}ngAfterContentChecked(){this._validateControlChild(),this._outlineGapCalculationNeededImmediately&&this.updateOutlineGap()}ngAfterViewInit(){this._subscriptAnimationState="enter",this._changeDetectorRef.detectChanges()}ngOnDestroy(){this._destroyed.next(),this._destroyed.complete()}_shouldForward(t){const e=this._control?this._control.ngControl:null;return e&&e[t]}_hasPlaceholder(){return!!(this._control&&this._control.placeholder||this._placeholderChild)}_hasLabel(){return!!this._labelChild}_shouldLabelFloat(){return this._canLabelFloat&&(this._control&&this._control.shouldLabelFloat||this._shouldAlwaysFloat)}_hideControlPlaceholder(){return"legacy"===this.appearance&&!this._hasLabel()||this._hasLabel()&&!this._shouldLabelFloat()}_hasFloatingLabel(){return this._hasLabel()||"legacy"===this.appearance&&this._hasPlaceholder()}_getDisplayedMessages(){return this._errorChildren&&this._errorChildren.length>0&&this._control.errorState?"error":"hint"}_animateAndLockLabel(){this._hasFloatingLabel()&&this._canLabelFloat&&(this._animationsEnabled&&this._label&&(this._showAlwaysAnimate=!0,uh(this._label.nativeElement,"transitionend").pipe(Bh(1)).subscribe(()=>{this._showAlwaysAnimate=!1})),this.floatLabel="always",this._changeDetectorRef.markForCheck())}_validatePlaceholders(){if(this._control.placeholder&&this._placeholderChild)throw Error("Placeholder attribute and child element were both specified.")}_processHints(){this._validateHints(),this._syncDescribedByIds()}_validateHints(){if(this._hintChildren){let t,e;this._hintChildren.forEach(n=>{if("start"===n.align){if(t||this.hintLabel)throw Jp("start");t=n}else if("end"===n.align){if(e)throw Jp("end");e=n}})}}_getDefaultFloatLabelState(){return this._defaults&&this._defaults.floatLabel||this._labelOptions.float||"auto"}_syncDescribedByIds(){if(this._control){let t=[];if("hint"===this._getDisplayedMessages()){const e=this._hintChildren?this._hintChildren.find(t=>"start"===t.align):null,n=this._hintChildren?this._hintChildren.find(t=>"end"===t.align):null;e?t.push(e.id):this._hintLabel&&t.push(this._hintLabelId),n&&t.push(n.id)}else this._errorChildren&&(t=this._errorChildren.map(t=>t.id));this._control.setDescribedByIds(t)}}_validateControlChild(){if(!this._control)throw Error("mat-form-field must contain a MatFormFieldControl.")}updateOutlineGap(){const t=this._label?this._label.nativeElement:null;if("outline"!==this.appearance||!t||!t.children.length||!t.textContent.trim())return;if(!this._platform.isBrowser)return;if(!this._isAttachedToDOM())return void(this._outlineGapCalculationNeededImmediately=!0);let e=0,n=0;const i=this._connectionContainerRef.nativeElement,s=i.querySelectorAll(".mat-form-field-outline-start"),r=i.querySelectorAll(".mat-form-field-outline-gap");if(this._label&&this._label.nativeElement.children.length){const s=i.getBoundingClientRect();if(0===s.width&&0===s.height)return this._outlineGapCalculationNeededOnStable=!0,void(this._outlineGapCalculationNeededImmediately=!1);const r=this._getStartEnd(s),o=t.children,a=this._getStartEnd(o[0].getBoundingClientRect());let l=0;for(let t=0;t0?.75*l+10:0}for(let o=0;o{class t{}return t.\u0275mod=me({type:t}),t.\u0275inj=ht({factory:function(e){return new(e||t)},imports:[[wc,Sp,Gh],Sp]}),t})();function df(...t){if(1===t.length){const e=t[0];if(l(e))return pf(e,null);if(c(e)&&Object.getPrototypeOf(e)===Object.prototype){const t=Object.keys(e);return pf(t.map(t=>e[t]),t)}}if("function"==typeof t[t.length-1]){const e=t.pop();return pf(t=1===t.length&&l(t[0])?t[0]:t,null).pipe(F(t=>e(...t)))}return pf(t,null)}function pf(t,e){return new y(n=>{const i=t.length;if(0===i)return void n.complete();const s=new Array(i);let r=0,o=0;for(let a=0;a{c||(c=!0,o++),s[a]=t},error:t=>n.error(t),complete:()=>{r++,r!==i&&c||(o===i&&n.next(e?e.reduce((t,e,n)=>(t[e]=s[n],t),{}):s),n.complete())}}))}})}const ff=new Mt("NgValueAccessor"),mf={provide:ff,useExisting:Ct(()=>gf),multi:!0};let gf=(()=>{class t{constructor(t,e){this._renderer=t,this._elementRef=e,this.onChange=t=>{},this.onTouched=()=>{}}writeValue(t){this._renderer.setProperty(this._elementRef.nativeElement,"checked",t)}registerOnChange(t){this.onChange=t}registerOnTouched(t){this.onTouched=t}setDisabledState(t){this._renderer.setProperty(this._elementRef.nativeElement,"disabled",t)}}return t.\u0275fac=function(e){return new(e||t)(lo(la),lo(sa))},t.\u0275dir=_e({type:t,selectors:[["input","type","checkbox","formControlName",""],["input","type","checkbox","formControl",""],["input","type","checkbox","ngModel",""]],hostBindings:function(t,e){1&t&&bo("change",(function(t){return e.onChange(t.target.checked)}))("blur",(function(){return e.onTouched()}))},features:[ta([mf])]}),t})();const _f={provide:ff,useExisting:Ct(()=>bf),multi:!0},yf=new Mt("CompositionEventMode");let bf=(()=>{class t{constructor(t,e,n){this._renderer=t,this._elementRef=e,this._compositionMode=n,this.onChange=t=>{},this.onTouched=()=>{},this._composing=!1,null==this._compositionMode&&(this._compositionMode=!function(){const t=oc()?oc().getUserAgent():"";return/android (\d+)/.test(t.toLowerCase())}())}writeValue(t){this._renderer.setProperty(this._elementRef.nativeElement,"value",null==t?"":t)}registerOnChange(t){this.onChange=t}registerOnTouched(t){this.onTouched=t}setDisabledState(t){this._renderer.setProperty(this._elementRef.nativeElement,"disabled",t)}_handleInput(t){(!this._compositionMode||this._compositionMode&&!this._composing)&&this.onChange(t)}_compositionStart(){this._composing=!0}_compositionEnd(t){this._composing=!1,this._compositionMode&&this.onChange(t)}}return t.\u0275fac=function(e){return new(e||t)(lo(la),lo(sa),lo(yf,8))},t.\u0275dir=_e({type:t,selectors:[["input","formControlName","",3,"type","checkbox"],["textarea","formControlName",""],["input","formControl","",3,"type","checkbox"],["textarea","formControl",""],["input","ngModel","",3,"type","checkbox"],["textarea","ngModel",""],["","ngDefaultControl",""]],hostBindings:function(t,e){1&t&&bo("input",(function(t){return e._handleInput(t.target.value)}))("blur",(function(){return e.onTouched()}))("compositionstart",(function(){return e._compositionStart()}))("compositionend",(function(t){return e._compositionEnd(t.target.value)}))},features:[ta([_f])]}),t})(),vf=(()=>{class t{get value(){return this.control?this.control.value:null}get valid(){return this.control?this.control.valid:null}get invalid(){return this.control?this.control.invalid:null}get pending(){return this.control?this.control.pending:null}get disabled(){return this.control?this.control.disabled:null}get enabled(){return this.control?this.control.enabled:null}get errors(){return this.control?this.control.errors:null}get pristine(){return this.control?this.control.pristine:null}get dirty(){return this.control?this.control.dirty:null}get touched(){return this.control?this.control.touched:null}get status(){return this.control?this.control.status:null}get untouched(){return this.control?this.control.untouched:null}get statusChanges(){return this.control?this.control.statusChanges:null}get valueChanges(){return this.control?this.control.valueChanges:null}get path(){return null}reset(t){this.control&&this.control.reset(t)}hasError(t,e){return!!this.control&&this.control.hasError(t,e)}getError(t,e){return this.control?this.control.getError(t,e):null}}return t.\u0275fac=function(e){return new(e||t)},t.\u0275dir=_e({type:t}),t})(),wf=(()=>{class t extends vf{get formDirective(){return null}get path(){return null}}return t.\u0275fac=function(e){return Cf(e||t)},t.\u0275dir=_e({type:t,features:[zo]}),t})();const Cf=ri(wf);function Ef(){throw new Error("unimplemented")}class Sf extends vf{constructor(){super(...arguments),this._parent=null,this.name=null,this.valueAccessor=null,this._rawValidators=[],this._rawAsyncValidators=[]}get validator(){return Ef()}get asyncValidator(){return Ef()}}let xf=(()=>{class t extends class{constructor(t){this._cd=t}get ngClassUntouched(){return!!this._cd.control&&this._cd.control.untouched}get ngClassTouched(){return!!this._cd.control&&this._cd.control.touched}get ngClassPristine(){return!!this._cd.control&&this._cd.control.pristine}get ngClassDirty(){return!!this._cd.control&&this._cd.control.dirty}get ngClassValid(){return!!this._cd.control&&this._cd.control.valid}get ngClassInvalid(){return!!this._cd.control&&this._cd.control.invalid}get ngClassPending(){return!!this._cd.control&&this._cd.control.pending}}{constructor(t){super(t)}}return t.\u0275fac=function(e){return new(e||t)(lo(Sf,2))},t.\u0275dir=_e({type:t,selectors:[["","formControlName",""],["","ngModel",""],["","formControl",""]],hostVars:14,hostBindings:function(t,e){2&t&&Ao("ng-untouched",e.ngClassUntouched)("ng-touched",e.ngClassTouched)("ng-pristine",e.ngClassPristine)("ng-dirty",e.ngClassDirty)("ng-valid",e.ngClassValid)("ng-invalid",e.ngClassInvalid)("ng-pending",e.ngClassPending)},features:[zo]}),t})();function kf(t){return null==t||0===t.length}function Tf(t){return null!=t&&"number"==typeof t.length}const If=new Mt("NgValidators"),Df=new Mt("NgAsyncValidators"),Af=/^(?=.{1,254}$)(?=.{1,64}@)[a-zA-Z0-9!#$%&'*+/=?^_`{|}~-]+(?:\.[a-zA-Z0-9!#$%&'*+/=?^_`{|}~-]+)*@[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?(?:\.[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?)*$/;class Pf{static min(t){return e=>{if(kf(e.value)||kf(t))return null;const n=parseFloat(e.value);return!isNaN(n)&&n{if(kf(e.value)||kf(t))return null;const n=parseFloat(e.value);return!isNaN(n)&&n>t?{max:{max:t,actual:e.value}}:null}}static required(t){return kf(t.value)?{required:!0}:null}static requiredTrue(t){return!0===t.value?null:{required:!0}}static email(t){return kf(t.value)||Af.test(t.value)?null:{email:!0}}static minLength(t){return e=>kf(e.value)||!Tf(e.value)?null:e.value.lengthTf(e.value)&&e.value.length>t?{maxlength:{requiredLength:t,actualLength:e.value.length}}:null}static pattern(t){if(!t)return Pf.nullValidator;let e,n;return"string"==typeof t?(n="","^"!==t.charAt(0)&&(n+="^"),n+=t,"$"!==t.charAt(t.length-1)&&(n+="$"),e=new RegExp(n)):(n=t.toString(),e=t),t=>{if(kf(t.value))return null;const i=t.value;return e.test(i)?null:{pattern:{requiredPattern:n,actualValue:i}}}}static nullValidator(t){return null}static compose(t){if(!t)return null;const e=t.filter(Of);return 0==e.length?null:function(t){return Nf(function(t,e){return e.map(e=>e(t))}(t,e))}}static composeAsync(t){if(!t)return null;const e=t.filter(Of);return 0==e.length?null:function(t){return df(function(t,e){return e.map(e=>e(t))}(t,e).map(Rf)).pipe(F(Nf))}}}function Of(t){return null!=t}function Rf(t){const e=yo(t)?j(t):t;if(!(n=e)||"function"!=typeof n.subscribe)throw new Error("Expected validator to return Promise or Observable.");var n;return e}function Nf(t){let e={};return t.forEach(t=>{e=null!=t?Object.assign(Object.assign({},e),t):e}),0===Object.keys(e).length?null:e}function Ff(t){return t.validate?e=>t.validate(e):t}function Vf(t){return t.validate?e=>t.validate(e):t}const Mf={provide:ff,useExisting:Ct(()=>Lf),multi:!0};let Lf=(()=>{class t{constructor(t,e){this._renderer=t,this._elementRef=e,this.onChange=t=>{},this.onTouched=()=>{}}writeValue(t){this._renderer.setProperty(this._elementRef.nativeElement,"value",null==t?"":t)}registerOnChange(t){this.onChange=e=>{t(""==e?null:parseFloat(e))}}registerOnTouched(t){this.onTouched=t}setDisabledState(t){this._renderer.setProperty(this._elementRef.nativeElement,"disabled",t)}}return t.\u0275fac=function(e){return new(e||t)(lo(la),lo(sa))},t.\u0275dir=_e({type:t,selectors:[["input","type","number","formControlName",""],["input","type","number","formControl",""],["input","type","number","ngModel",""]],hostBindings:function(t,e){1&t&&bo("input",(function(t){return e.onChange(t.target.value)}))("blur",(function(){return e.onTouched()}))},features:[ta([Mf])]}),t})();const jf={provide:ff,useExisting:Ct(()=>Hf),multi:!0};let Bf=(()=>{class t{constructor(){this._accessors=[]}add(t,e){this._accessors.push([t,e])}remove(t){for(let e=this._accessors.length-1;e>=0;--e)if(this._accessors[e][1]===t)return void this._accessors.splice(e,1)}select(t){this._accessors.forEach(e=>{this._isSameGroup(e,t)&&e[1]!==t&&e[1].fireUncheck(t.value)})}_isSameGroup(t,e){return!!t[0].control&&t[0]._parent===e._control._parent&&t[1].name===e.name}}return t.\u0275fac=function(e){return new(e||t)},t.\u0275prov=ct({token:t,factory:t.\u0275fac}),t})(),Hf=(()=>{class t{constructor(t,e,n,i){this._renderer=t,this._elementRef=e,this._registry=n,this._injector=i,this.onChange=()=>{},this.onTouched=()=>{}}ngOnInit(){this._control=this._injector.get(Sf),this._checkName(),this._registry.add(this._control,this)}ngOnDestroy(){this._registry.remove(this)}writeValue(t){this._state=t===this.value,this._renderer.setProperty(this._elementRef.nativeElement,"checked",this._state)}registerOnChange(t){this._fn=t,this.onChange=()=>{t(this.value),this._registry.select(this)}}fireUncheck(t){this.writeValue(t)}registerOnTouched(t){this.onTouched=t}setDisabledState(t){this._renderer.setProperty(this._elementRef.nativeElement,"disabled",t)}_checkName(){this.name&&this.formControlName&&this.name!==this.formControlName&&this._throwNameError(),!this.name&&this.formControlName&&(this.name=this.formControlName)}_throwNameError(){throw new Error('\n If you define both a name and a formControlName attribute on your radio button, their values\n must match. Ex: \n ')}}return t.\u0275fac=function(e){return new(e||t)(lo(la),lo(sa),lo(Bf),lo(Jr))},t.\u0275dir=_e({type:t,selectors:[["input","type","radio","formControlName",""],["input","type","radio","formControl",""],["input","type","radio","ngModel",""]],hostBindings:function(t,e){1&t&&bo("change",(function(){return e.onChange()}))("blur",(function(){return e.onTouched()}))},inputs:{name:"name",formControlName:"formControlName",value:"value"},features:[ta([jf])]}),t})();const zf={provide:ff,useExisting:Ct(()=>qf),multi:!0};let qf=(()=>{class t{constructor(t,e){this._renderer=t,this._elementRef=e,this.onChange=t=>{},this.onTouched=()=>{}}writeValue(t){this._renderer.setProperty(this._elementRef.nativeElement,"value",parseFloat(t))}registerOnChange(t){this.onChange=e=>{t(""==e?null:parseFloat(e))}}registerOnTouched(t){this.onTouched=t}setDisabledState(t){this._renderer.setProperty(this._elementRef.nativeElement,"disabled",t)}}return t.\u0275fac=function(e){return new(e||t)(lo(la),lo(sa))},t.\u0275dir=_e({type:t,selectors:[["input","type","range","formControlName",""],["input","type","range","formControl",""],["input","type","range","ngModel",""]],hostBindings:function(t,e){1&t&&bo("change",(function(t){return e.onChange(t.target.value)}))("input",(function(t){return e.onChange(t.target.value)}))("blur",(function(){return e.onTouched()}))},features:[ta([zf])]}),t})();const $f='\n
\n \n
\n\n In your class:\n\n this.myGroup = new FormGroup({\n firstName: new FormControl()\n });',Uf='\n
\n
\n \n
\n
\n\n In your class:\n\n this.myGroup = new FormGroup({\n person: new FormGroup({ firstName: new FormControl() })\n });',Gf='\n
\n
\n \n
\n
',Wf={provide:ff,useExisting:Ct(()=>Zf),multi:!0};let Zf=(()=>{class t{constructor(t,e){this._renderer=t,this._elementRef=e,this._optionMap=new Map,this._idCounter=0,this.onChange=t=>{},this.onTouched=()=>{},this._compareWith=Object.is}set compareWith(t){if("function"!=typeof t)throw new Error("compareWith must be a function, but received "+JSON.stringify(t));this._compareWith=t}writeValue(t){this.value=t;const e=this._getOptionId(t);null==e&&this._renderer.setProperty(this._elementRef.nativeElement,"selectedIndex",-1);const n=function(t,e){return null==t?""+e:(e&&"object"==typeof e&&(e="Object"),`${t}: ${e}`.slice(0,50))}(e,t);this._renderer.setProperty(this._elementRef.nativeElement,"value",n)}registerOnChange(t){this.onChange=e=>{this.value=this._getOptionValue(e),t(this.value)}}registerOnTouched(t){this.onTouched=t}setDisabledState(t){this._renderer.setProperty(this._elementRef.nativeElement,"disabled",t)}_registerOption(){return(this._idCounter++).toString()}_getOptionId(t){for(const e of Array.from(this._optionMap.keys()))if(this._compareWith(this._optionMap.get(e),t))return e;return null}_getOptionValue(t){const e=function(t){return t.split(":")[0]}(t);return this._optionMap.has(e)?this._optionMap.get(e):t}}return t.\u0275fac=function(e){return new(e||t)(lo(la),lo(sa))},t.\u0275dir=_e({type:t,selectors:[["select","formControlName","",3,"multiple",""],["select","formControl","",3,"multiple",""],["select","ngModel","",3,"multiple",""]],hostBindings:function(t,e){1&t&&bo("change",(function(t){return e.onChange(t.target.value)}))("blur",(function(){return e.onTouched()}))},inputs:{compareWith:"compareWith"},features:[ta([Wf])]}),t})();const Qf={provide:ff,useExisting:Ct(()=>Kf),multi:!0};let Kf=(()=>{class t{constructor(t,e){this._renderer=t,this._elementRef=e,this._optionMap=new Map,this._idCounter=0,this.onChange=t=>{},this.onTouched=()=>{},this._compareWith=Object.is}set compareWith(t){if("function"!=typeof t)throw new Error("compareWith must be a function, but received "+JSON.stringify(t));this._compareWith=t}writeValue(t){let e;if(this.value=t,Array.isArray(t)){const n=t.map(t=>this._getOptionId(t));e=(t,e)=>{t._setSelected(n.indexOf(e.toString())>-1)}}else e=(t,e)=>{t._setSelected(!1)};this._optionMap.forEach(e)}registerOnChange(t){this.onChange=e=>{const n=[];if(void 0!==e.selectedOptions){const t=e.selectedOptions;for(let e=0;e{t._pendingValue=n,t._pendingChange=!0,t._pendingDirty=!0,"change"===t.updateOn&&Xf(t,e)})}(t,e),function(t,e){t.registerOnChange((t,n)=>{e.valueAccessor.writeValue(t),n&&e.viewToModelUpdate(t)})}(t,e),function(t,e){e.valueAccessor.registerOnTouched(()=>{t._pendingTouched=!0,"blur"===t.updateOn&&t._pendingChange&&Xf(t,e),"submit"!==t.updateOn&&t.markAsTouched()})}(t,e),e.valueAccessor.setDisabledState&&t.registerOnDisabledChange(t=>{e.valueAccessor.setDisabledState(t)}),e._rawValidators.forEach(e=>{e.registerOnValidatorChange&&e.registerOnValidatorChange(()=>t.updateValueAndValidity())}),e._rawAsyncValidators.forEach(e=>{e.registerOnValidatorChange&&e.registerOnValidatorChange(()=>t.updateValueAndValidity())})}function Xf(t,e){t._pendingDirty&&t.markAsDirty(),t.setValue(t._pendingValue,{emitModelToViewChange:!1}),e.viewToModelUpdate(t._pendingValue),t._pendingChange=!1}function tm(t,e){null==t&&nm(e,"Cannot find control with"),t.validator=Pf.compose([t.validator,e.validator]),t.asyncValidator=Pf.composeAsync([t.asyncValidator,e.asyncValidator])}function em(t){return nm(t,"There is no FormControl instance attached to form control element with")}function nm(t,e){let n;throw n=t.path.length>1?`path: '${t.path.join(" -> ")}'`:t.path[0]?`name: '${t.path}'`:"unspecified name attribute",new Error(`${e} ${n}`)}function im(t){return null!=t?Pf.compose(t.map(Ff)):null}function sm(t){return null!=t?Pf.composeAsync(t.map(Vf)):null}const rm=[gf,qf,Lf,Zf,Kf,Hf];function om(t,e){t._syncPendingControls(),e.forEach(t=>{const e=t.control;"submit"===e.updateOn&&e._pendingChange&&(t.viewToModelUpdate(e._pendingValue),e._pendingChange=!1)})}function am(t,e){const n=t.indexOf(e);n>-1&&t.splice(n,1)}function lm(t){const e=hm(t)?t.validators:t;return Array.isArray(e)?im(e):e||null}function cm(t,e){const n=hm(e)?e.asyncValidators:t;return Array.isArray(n)?sm(n):n||null}function hm(t){return null!=t&&!Array.isArray(t)&&"object"==typeof t}class um{constructor(t,e){this.validator=t,this.asyncValidator=e,this._onCollectionChange=()=>{},this.pristine=!0,this.touched=!1,this._onDisabledChange=[]}get parent(){return this._parent}get valid(){return"VALID"===this.status}get invalid(){return"INVALID"===this.status}get pending(){return"PENDING"==this.status}get disabled(){return"DISABLED"===this.status}get enabled(){return"DISABLED"!==this.status}get dirty(){return!this.pristine}get untouched(){return!this.touched}get updateOn(){return this._updateOn?this._updateOn:this.parent?this.parent.updateOn:"change"}setValidators(t){this.validator=lm(t)}setAsyncValidators(t){this.asyncValidator=cm(t)}clearValidators(){this.validator=null}clearAsyncValidators(){this.asyncValidator=null}markAsTouched(t={}){this.touched=!0,this._parent&&!t.onlySelf&&this._parent.markAsTouched(t)}markAllAsTouched(){this.markAsTouched({onlySelf:!0}),this._forEachChild(t=>t.markAllAsTouched())}markAsUntouched(t={}){this.touched=!1,this._pendingTouched=!1,this._forEachChild(t=>{t.markAsUntouched({onlySelf:!0})}),this._parent&&!t.onlySelf&&this._parent._updateTouched(t)}markAsDirty(t={}){this.pristine=!1,this._parent&&!t.onlySelf&&this._parent.markAsDirty(t)}markAsPristine(t={}){this.pristine=!0,this._pendingDirty=!1,this._forEachChild(t=>{t.markAsPristine({onlySelf:!0})}),this._parent&&!t.onlySelf&&this._parent._updatePristine(t)}markAsPending(t={}){this.status="PENDING",!1!==t.emitEvent&&this.statusChanges.emit(this.status),this._parent&&!t.onlySelf&&this._parent.markAsPending(t)}disable(t={}){const e=this._parentMarkedDirty(t.onlySelf);this.status="DISABLED",this.errors=null,this._forEachChild(e=>{e.disable(Object.assign(Object.assign({},t),{onlySelf:!0}))}),this._updateValue(),!1!==t.emitEvent&&(this.valueChanges.emit(this.value),this.statusChanges.emit(this.status)),this._updateAncestors(Object.assign(Object.assign({},t),{skipPristineCheck:e})),this._onDisabledChange.forEach(t=>t(!0))}enable(t={}){const e=this._parentMarkedDirty(t.onlySelf);this.status="VALID",this._forEachChild(e=>{e.enable(Object.assign(Object.assign({},t),{onlySelf:!0}))}),this.updateValueAndValidity({onlySelf:!0,emitEvent:t.emitEvent}),this._updateAncestors(Object.assign(Object.assign({},t),{skipPristineCheck:e})),this._onDisabledChange.forEach(t=>t(!1))}_updateAncestors(t){this._parent&&!t.onlySelf&&(this._parent.updateValueAndValidity(t),t.skipPristineCheck||this._parent._updatePristine(),this._parent._updateTouched())}setParent(t){this._parent=t}updateValueAndValidity(t={}){this._setInitialStatus(),this._updateValue(),this.enabled&&(this._cancelExistingSubscription(),this.errors=this._runValidator(),this.status=this._calculateStatus(),"VALID"!==this.status&&"PENDING"!==this.status||this._runAsyncValidator(t.emitEvent)),!1!==t.emitEvent&&(this.valueChanges.emit(this.value),this.statusChanges.emit(this.status)),this._parent&&!t.onlySelf&&this._parent.updateValueAndValidity(t)}_updateTreeValidity(t={emitEvent:!0}){this._forEachChild(e=>e._updateTreeValidity(t)),this.updateValueAndValidity({onlySelf:!0,emitEvent:t.emitEvent})}_setInitialStatus(){this.status=this._allControlsDisabled()?"DISABLED":"VALID"}_runValidator(){return this.validator?this.validator(this):null}_runAsyncValidator(t){if(this.asyncValidator){this.status="PENDING";const e=Rf(this.asyncValidator(this));this._asyncValidationSubscription=e.subscribe(e=>this.setErrors(e,{emitEvent:t}))}}_cancelExistingSubscription(){this._asyncValidationSubscription&&this._asyncValidationSubscription.unsubscribe()}setErrors(t,e={}){this.errors=t,this._updateControlsErrors(!1!==e.emitEvent)}get(t){return function(t,e,n){if(null==e)return null;if(Array.isArray(e)||(e=e.split(".")),Array.isArray(e)&&0===e.length)return null;let i=t;return e.forEach(t=>{i=i instanceof pm?i.controls.hasOwnProperty(t)?i.controls[t]:null:i instanceof fm&&i.at(t)||null}),i}(this,t)}getError(t,e){const n=e?this.get(e):this;return n&&n.errors?n.errors[t]:null}hasError(t,e){return!!this.getError(t,e)}get root(){let t=this;for(;t._parent;)t=t._parent;return t}_updateControlsErrors(t){this.status=this._calculateStatus(),t&&this.statusChanges.emit(this.status),this._parent&&this._parent._updateControlsErrors(t)}_initObservables(){this.valueChanges=new Za,this.statusChanges=new Za}_calculateStatus(){return this._allControlsDisabled()?"DISABLED":this.errors?"INVALID":this._anyControlsHaveStatus("PENDING")?"PENDING":this._anyControlsHaveStatus("INVALID")?"INVALID":"VALID"}_anyControlsHaveStatus(t){return this._anyControls(e=>e.status===t)}_anyControlsDirty(){return this._anyControls(t=>t.dirty)}_anyControlsTouched(){return this._anyControls(t=>t.touched)}_updatePristine(t={}){this.pristine=!this._anyControlsDirty(),this._parent&&!t.onlySelf&&this._parent._updatePristine(t)}_updateTouched(t={}){this.touched=this._anyControlsTouched(),this._parent&&!t.onlySelf&&this._parent._updateTouched(t)}_isBoxedValue(t){return"object"==typeof t&&null!==t&&2===Object.keys(t).length&&"value"in t&&"disabled"in t}_registerOnCollectionChange(t){this._onCollectionChange=t}_setUpdateStrategy(t){hm(t)&&null!=t.updateOn&&(this._updateOn=t.updateOn)}_parentMarkedDirty(t){return!t&&this._parent&&this._parent.dirty&&!this._parent._anyControlsDirty()}}class dm extends um{constructor(t=null,e,n){super(lm(e),cm(n,e)),this._onChange=[],this._applyFormState(t),this._setUpdateStrategy(e),this.updateValueAndValidity({onlySelf:!0,emitEvent:!1}),this._initObservables()}setValue(t,e={}){this.value=this._pendingValue=t,this._onChange.length&&!1!==e.emitModelToViewChange&&this._onChange.forEach(t=>t(this.value,!1!==e.emitViewToModelChange)),this.updateValueAndValidity(e)}patchValue(t,e={}){this.setValue(t,e)}reset(t=null,e={}){this._applyFormState(t),this.markAsPristine(e),this.markAsUntouched(e),this.setValue(this.value,e),this._pendingChange=!1}_updateValue(){}_anyControls(t){return!1}_allControlsDisabled(){return this.disabled}registerOnChange(t){this._onChange.push(t)}_clearChangeFns(){this._onChange=[],this._onDisabledChange=[],this._onCollectionChange=()=>{}}registerOnDisabledChange(t){this._onDisabledChange.push(t)}_forEachChild(t){}_syncPendingControls(){return!("submit"!==this.updateOn||(this._pendingDirty&&this.markAsDirty(),this._pendingTouched&&this.markAsTouched(),!this._pendingChange)||(this.setValue(this._pendingValue,{onlySelf:!0,emitModelToViewChange:!1}),0))}_applyFormState(t){this._isBoxedValue(t)?(this.value=this._pendingValue=t.value,t.disabled?this.disable({onlySelf:!0,emitEvent:!1}):this.enable({onlySelf:!0,emitEvent:!1})):this.value=this._pendingValue=t}}class pm extends um{constructor(t,e,n){super(lm(e),cm(n,e)),this.controls=t,this._initObservables(),this._setUpdateStrategy(e),this._setUpControls(),this.updateValueAndValidity({onlySelf:!0,emitEvent:!1})}registerControl(t,e){return this.controls[t]?this.controls[t]:(this.controls[t]=e,e.setParent(this),e._registerOnCollectionChange(this._onCollectionChange),e)}addControl(t,e){this.registerControl(t,e),this.updateValueAndValidity(),this._onCollectionChange()}removeControl(t){this.controls[t]&&this.controls[t]._registerOnCollectionChange(()=>{}),delete this.controls[t],this.updateValueAndValidity(),this._onCollectionChange()}setControl(t,e){this.controls[t]&&this.controls[t]._registerOnCollectionChange(()=>{}),delete this.controls[t],e&&this.registerControl(t,e),this.updateValueAndValidity(),this._onCollectionChange()}contains(t){return this.controls.hasOwnProperty(t)&&this.controls[t].enabled}setValue(t,e={}){this._checkAllValuesPresent(t),Object.keys(t).forEach(n=>{this._throwIfControlMissing(n),this.controls[n].setValue(t[n],{onlySelf:!0,emitEvent:e.emitEvent})}),this.updateValueAndValidity(e)}patchValue(t,e={}){Object.keys(t).forEach(n=>{this.controls[n]&&this.controls[n].patchValue(t[n],{onlySelf:!0,emitEvent:e.emitEvent})}),this.updateValueAndValidity(e)}reset(t={},e={}){this._forEachChild((n,i)=>{n.reset(t[i],{onlySelf:!0,emitEvent:e.emitEvent})}),this._updatePristine(e),this._updateTouched(e),this.updateValueAndValidity(e)}getRawValue(){return this._reduceChildren({},(t,e,n)=>(t[n]=e instanceof dm?e.value:e.getRawValue(),t))}_syncPendingControls(){let t=this._reduceChildren(!1,(t,e)=>!!e._syncPendingControls()||t);return t&&this.updateValueAndValidity({onlySelf:!0}),t}_throwIfControlMissing(t){if(!Object.keys(this.controls).length)throw new Error("\n There are no form controls registered with this group yet. If you're using ngModel,\n you may want to check next tick (e.g. use setTimeout).\n ");if(!this.controls[t])throw new Error(`Cannot find form control with name: ${t}.`)}_forEachChild(t){Object.keys(this.controls).forEach(e=>t(this.controls[e],e))}_setUpControls(){this._forEachChild(t=>{t.setParent(this),t._registerOnCollectionChange(this._onCollectionChange)})}_updateValue(){this.value=this._reduceValue()}_anyControls(t){for(const e of Object.keys(this.controls)){const n=this.controls[e];if(this.contains(e)&&t(n))return!0}return!1}_reduceValue(){return this._reduceChildren({},(t,e,n)=>((e.enabled||this.disabled)&&(t[n]=e.value),t))}_reduceChildren(t,e){let n=t;return this._forEachChild((t,i)=>{n=e(n,t,i)}),n}_allControlsDisabled(){for(const t of Object.keys(this.controls))if(this.controls[t].enabled)return!1;return Object.keys(this.controls).length>0||this.disabled}_checkAllValuesPresent(t){this._forEachChild((e,n)=>{if(void 0===t[n])throw new Error(`Must supply a value for form control with name: '${n}'.`)})}}class fm extends um{constructor(t,e,n){super(lm(e),cm(n,e)),this.controls=t,this._initObservables(),this._setUpdateStrategy(e),this._setUpControls(),this.updateValueAndValidity({onlySelf:!0,emitEvent:!1})}at(t){return this.controls[t]}push(t){this.controls.push(t),this._registerControl(t),this.updateValueAndValidity(),this._onCollectionChange()}insert(t,e){this.controls.splice(t,0,e),this._registerControl(e),this.updateValueAndValidity()}removeAt(t){this.controls[t]&&this.controls[t]._registerOnCollectionChange(()=>{}),this.controls.splice(t,1),this.updateValueAndValidity()}setControl(t,e){this.controls[t]&&this.controls[t]._registerOnCollectionChange(()=>{}),this.controls.splice(t,1),e&&(this.controls.splice(t,0,e),this._registerControl(e)),this.updateValueAndValidity(),this._onCollectionChange()}get length(){return this.controls.length}setValue(t,e={}){this._checkAllValuesPresent(t),t.forEach((t,n)=>{this._throwIfControlMissing(n),this.at(n).setValue(t,{onlySelf:!0,emitEvent:e.emitEvent})}),this.updateValueAndValidity(e)}patchValue(t,e={}){t.forEach((t,n)=>{this.at(n)&&this.at(n).patchValue(t,{onlySelf:!0,emitEvent:e.emitEvent})}),this.updateValueAndValidity(e)}reset(t=[],e={}){this._forEachChild((n,i)=>{n.reset(t[i],{onlySelf:!0,emitEvent:e.emitEvent})}),this._updatePristine(e),this._updateTouched(e),this.updateValueAndValidity(e)}getRawValue(){return this.controls.map(t=>t instanceof dm?t.value:t.getRawValue())}clear(){this.controls.length<1||(this._forEachChild(t=>t._registerOnCollectionChange(()=>{})),this.controls.splice(0),this.updateValueAndValidity())}_syncPendingControls(){let t=this.controls.reduce((t,e)=>!!e._syncPendingControls()||t,!1);return t&&this.updateValueAndValidity({onlySelf:!0}),t}_throwIfControlMissing(t){if(!this.controls.length)throw new Error("\n There are no form controls registered with this array yet. If you're using ngModel,\n you may want to check next tick (e.g. use setTimeout).\n ");if(!this.at(t))throw new Error("Cannot find form control at index "+t)}_forEachChild(t){this.controls.forEach((e,n)=>{t(e,n)})}_updateValue(){this.value=this.controls.filter(t=>t.enabled||this.disabled).map(t=>t.value)}_anyControls(t){return this.controls.some(e=>e.enabled&&t(e))}_setUpControls(){this._forEachChild(t=>this._registerControl(t))}_checkAllValuesPresent(t){this._forEachChild((e,n)=>{if(void 0===t[n])throw new Error(`Must supply a value for form control at index: ${n}.`)})}_allControlsDisabled(){for(const t of this.controls)if(t.enabled)return!1;return this.controls.length>0||this.disabled}_registerControl(t){t.setParent(this),t._registerOnCollectionChange(this._onCollectionChange)}}const mm={provide:wf,useExisting:Ct(()=>_m)},gm=(()=>Promise.resolve(null))();let _m=(()=>{class t extends wf{constructor(t,e){super(),this.submitted=!1,this._directives=[],this.ngSubmit=new Za,this.form=new pm({},im(t),sm(e))}ngAfterViewInit(){this._setUpdateStrategy()}get formDirective(){return this}get control(){return this.form}get path(){return[]}get controls(){return this.form.controls}addControl(t){gm.then(()=>{const e=this._findContainer(t.path);t.control=e.registerControl(t.name,t.control),Jf(t.control,t),t.control.updateValueAndValidity({emitEvent:!1}),this._directives.push(t)})}getControl(t){return this.form.get(t.path)}removeControl(t){gm.then(()=>{const e=this._findContainer(t.path);e&&e.removeControl(t.name),am(this._directives,t)})}addFormGroup(t){gm.then(()=>{const e=this._findContainer(t.path),n=new pm({});tm(n,t),e.registerControl(t.name,n),n.updateValueAndValidity({emitEvent:!1})})}removeFormGroup(t){gm.then(()=>{const e=this._findContainer(t.path);e&&e.removeControl(t.name)})}getFormGroup(t){return this.form.get(t.path)}updateModel(t,e){gm.then(()=>{this.form.get(t.path).setValue(e)})}setValue(t){this.control.setValue(t)}onSubmit(t){return this.submitted=!0,om(this.form,this._directives),this.ngSubmit.emit(t),!1}onReset(){this.resetForm()}resetForm(t){this.form.reset(t),this.submitted=!1}_setUpdateStrategy(){this.options&&null!=this.options.updateOn&&(this.form._updateOn=this.options.updateOn)}_findContainer(t){return t.pop(),t.length?this.form.get(t):this.form}}return t.\u0275fac=function(e){return new(e||t)(lo(If,10),lo(Df,10))},t.\u0275dir=_e({type:t,selectors:[["form",3,"ngNoForm","",3,"formGroup",""],["ng-form"],["","ngForm",""]],hostBindings:function(t,e){1&t&&bo("submit",(function(t){return e.onSubmit(t)}))("reset",(function(){return e.onReset()}))},inputs:{options:["ngFormOptions","options"]},outputs:{ngSubmit:"ngSubmit"},exportAs:["ngForm"],features:[ta([mm]),zo]}),t})(),ym=(()=>{class t extends wf{ngOnInit(){this._checkParentType(),this.formDirective.addFormGroup(this)}ngOnDestroy(){this.formDirective&&this.formDirective.removeFormGroup(this)}get control(){return this.formDirective.getFormGroup(this)}get path(){return Yf(null==this.name?this.name:this.name.toString(),this._parent)}get formDirective(){return this._parent?this._parent.formDirective:null}get validator(){return im(this._validators)}get asyncValidator(){return sm(this._asyncValidators)}_checkParentType(){}}return t.\u0275fac=function(e){return bm(e||t)},t.\u0275dir=_e({type:t,features:[zo]}),t})();const bm=ri(ym);class vm{static modelParentException(){throw new Error(`\n ngModel cannot be used to register form controls with a parent formGroup directive. Try using\n formGroup's partner directive "formControlName" instead. Example:\n\n ${$f}\n\n Or, if you'd like to avoid registering this form control, indicate that it's standalone in ngModelOptions:\n\n Example:\n\n \n
\n \n \n
\n `)}static formGroupNameException(){throw new Error(`\n ngModel cannot be used to register form controls with a parent formGroupName or formArrayName directive.\n\n Option 1: Use formControlName instead of ngModel (reactive strategy):\n\n ${Uf}\n\n Option 2: Update ngModel's parent be ngModelGroup (template-driven strategy):\n\n ${Gf}`)}static missingNameException(){throw new Error('If ngModel is used within a form tag, either the name attribute must be set or the form\n control must be defined as \'standalone\' in ngModelOptions.\n\n Example 1: \n Example 2: ')}static modelGroupParentException(){throw new Error(`\n ngModelGroup cannot be used with a parent formGroup directive.\n\n Option 1: Use formGroupName instead of ngModelGroup (reactive strategy):\n\n ${Uf}\n\n Option 2: Use a regular form tag instead of the formGroup directive (template-driven strategy):\n\n ${Gf}`)}}const wm={provide:wf,useExisting:Ct(()=>Cm)};let Cm=(()=>{class t extends ym{constructor(t,e,n){super(),this._parent=t,this._validators=e,this._asyncValidators=n}_checkParentType(){this._parent instanceof t||this._parent instanceof _m||vm.modelGroupParentException()}}return t.\u0275fac=function(e){return new(e||t)(lo(wf,5),lo(If,10),lo(Df,10))},t.\u0275dir=_e({type:t,selectors:[["","ngModelGroup",""]],inputs:{name:["ngModelGroup","name"]},exportAs:["ngModelGroup"],features:[ta([wm]),zo]}),t})();const Em={provide:Sf,useExisting:Ct(()=>xm)},Sm=(()=>Promise.resolve(null))();let xm=(()=>{class t extends Sf{constructor(t,e,n,i){super(),this.control=new dm,this._registered=!1,this.update=new Za,this._parent=t,this._rawValidators=e||[],this._rawAsyncValidators=n||[],this.valueAccessor=function(t,e){if(!e)return null;Array.isArray(e)||nm(t,"Value accessor was not provided as an array for form control with");let n=void 0,i=void 0,s=void 0;return e.forEach(e=>{var r;e.constructor===bf?n=e:(r=e,rm.some(t=>r.constructor===t)?(i&&nm(t,"More than one built-in value accessor matches form control with"),i=e):(s&&nm(t,"More than one custom value accessor matches form control with"),s=e))}),s||i||n||(nm(t,"No valid value accessor for form control with"),null)}(this,i)}ngOnChanges(t){this._checkForErrors(),this._registered||this._setUpControl(),"isDisabled"in t&&this._updateDisabled(t),function(t,e){if(!t.hasOwnProperty("model"))return!1;const n=t.model;return!!n.isFirstChange()||!Object.is(e,n.currentValue)}(t,this.viewModel)&&(this._updateValue(this.model),this.viewModel=this.model)}ngOnDestroy(){this.formDirective&&this.formDirective.removeControl(this)}get path(){return this._parent?Yf(this.name,this._parent):[this.name]}get formDirective(){return this._parent?this._parent.formDirective:null}get validator(){return im(this._rawValidators)}get asyncValidator(){return sm(this._rawAsyncValidators)}viewToModelUpdate(t){this.viewModel=t,this.update.emit(t)}_setUpControl(){this._setUpdateStrategy(),this._isStandalone()?this._setUpStandalone():this.formDirective.addControl(this),this._registered=!0}_setUpdateStrategy(){this.options&&null!=this.options.updateOn&&(this.control._updateOn=this.options.updateOn)}_isStandalone(){return!this._parent||!(!this.options||!this.options.standalone)}_setUpStandalone(){Jf(this.control,this),this.control.updateValueAndValidity({emitEvent:!1})}_checkForErrors(){this._isStandalone()||this._checkParentType(),this._checkName()}_checkParentType(){!(this._parent instanceof Cm)&&this._parent instanceof ym?vm.formGroupNameException():this._parent instanceof Cm||this._parent instanceof _m||vm.modelParentException()}_checkName(){this.options&&this.options.name&&(this.name=this.options.name),this._isStandalone()||this.name||vm.missingNameException()}_updateValue(t){Sm.then(()=>{this.control.setValue(t,{emitViewToModelChange:!1})})}_updateDisabled(t){const e=t.isDisabled.currentValue,n=""===e||e&&"false"!==e;Sm.then(()=>{n&&!this.control.disabled?this.control.disable():!n&&this.control.disabled&&this.control.enable()})}}return t.\u0275fac=function(e){return new(e||t)(lo(wf,9),lo(If,10),lo(Df,10),lo(ff,10))},t.\u0275dir=_e({type:t,selectors:[["","ngModel","",3,"formControlName","",3,"formControl",""]],inputs:{name:"name",isDisabled:["disabled","isDisabled"],model:["ngModel","model"],options:["ngModelOptions","options"]},outputs:{update:"ngModelChange"},exportAs:["ngModel"],features:[ta([Em]),zo,De]}),t})();const km={provide:wf,useExisting:Ct(()=>Tm)};let Tm=(()=>{class t extends wf{constructor(t,e){super(),this._validators=t,this._asyncValidators=e,this.submitted=!1,this.directives=[],this.form=null,this.ngSubmit=new Za}ngOnChanges(t){this._checkFormPresent(),t.hasOwnProperty("form")&&(this._updateValidators(),this._updateDomValue(),this._updateRegistrations())}get formDirective(){return this}get control(){return this.form}get path(){return[]}addControl(t){const e=this.form.get(t.path);return Jf(e,t),e.updateValueAndValidity({emitEvent:!1}),this.directives.push(t),e}getControl(t){return this.form.get(t.path)}removeControl(t){am(this.directives,t)}addFormGroup(t){const e=this.form.get(t.path);tm(e,t),e.updateValueAndValidity({emitEvent:!1})}removeFormGroup(t){}getFormGroup(t){return this.form.get(t.path)}addFormArray(t){const e=this.form.get(t.path);tm(e,t),e.updateValueAndValidity({emitEvent:!1})}removeFormArray(t){}getFormArray(t){return this.form.get(t.path)}updateModel(t,e){this.form.get(t.path).setValue(e)}onSubmit(t){return this.submitted=!0,om(this.form,this.directives),this.ngSubmit.emit(t),!1}onReset(){this.resetForm()}resetForm(t){this.form.reset(t),this.submitted=!1}_updateDomValue(){this.directives.forEach(t=>{const e=this.form.get(t.path);t.control!==e&&(function(t,e){e.valueAccessor.registerOnChange(()=>em(e)),e.valueAccessor.registerOnTouched(()=>em(e)),e._rawValidators.forEach(t=>{t.registerOnValidatorChange&&t.registerOnValidatorChange(null)}),e._rawAsyncValidators.forEach(t=>{t.registerOnValidatorChange&&t.registerOnValidatorChange(null)}),t&&t._clearChangeFns()}(t.control,t),e&&Jf(e,t),t.control=e)}),this.form._updateTreeValidity({emitEvent:!1})}_updateRegistrations(){this.form._registerOnCollectionChange(()=>this._updateDomValue()),this._oldForm&&this._oldForm._registerOnCollectionChange(()=>{}),this._oldForm=this.form}_updateValidators(){const t=im(this._validators);this.form.validator=Pf.compose([this.form.validator,t]);const e=sm(this._asyncValidators);this.form.asyncValidator=Pf.composeAsync([this.form.asyncValidator,e])}_checkFormPresent(){this.form||class{static controlParentException(){throw new Error("formControlName must be used with a parent formGroup directive. You'll want to add a formGroup\n directive and pass it an existing FormGroup instance (you can create one in your class).\n\n Example:\n\n "+$f)}static ngModelGroupException(){throw new Error(`formControlName cannot be used with an ngModelGroup parent. It is only compatible with parents\n that also have a "form" prefix: formGroupName, formArrayName, or formGroup.\n\n Option 1: Update the parent to be formGroupName (reactive form strategy)\n\n ${Uf}\n\n Option 2: Use ngModel instead of formControlName (template-driven strategy)\n\n ${Gf}`)}static missingFormException(){throw new Error("formGroup expects a FormGroup instance. Please pass one in.\n\n Example:\n\n "+$f)}static groupParentException(){throw new Error("formGroupName must be used with a parent formGroup directive. You'll want to add a formGroup\n directive and pass it an existing FormGroup instance (you can create one in your class).\n\n Example:\n\n "+Uf)}static arrayParentException(){throw new Error('formArrayName must be used with a parent formGroup directive. You\'ll want to add a formGroup\n directive and pass it an existing FormGroup instance (you can create one in your class).\n\n Example:\n\n \n
\n
\n
\n \n
\n
\n
\n\n In your class:\n\n this.cityArray = new FormArray([new FormControl(\'SF\')]);\n this.myGroup = new FormGroup({\n cities: this.cityArray\n });')}static disabledAttrWarning(){console.warn("\n It looks like you're using the disabled attribute with a reactive form directive. If you set disabled to true\n when you set up this control in your component class, the disabled attribute will actually be set in the DOM for\n you. We recommend using this approach to avoid 'changed after checked' errors.\n\n Example:\n form = new FormGroup({\n first: new FormControl({value: 'Nancy', disabled: true}, Validators.required),\n last: new FormControl('Drew', Validators.required)\n });\n ")}static ngModelWarning(t){console.warn(`\n It looks like you're using ngModel on the same form field as ${t}.\n Support for using the ngModel input property and ngModelChange event with\n reactive form directives has been deprecated in Angular v6 and will be removed\n in a future version of Angular.\n\n For more information on this, see our API docs here:\n https://angular.io/api/forms/${"formControl"===t?"FormControlDirective":"FormControlName"}#use-with-ngmodel\n `)}}.missingFormException()}}return t.\u0275fac=function(e){return new(e||t)(lo(If,10),lo(Df,10))},t.\u0275dir=_e({type:t,selectors:[["","formGroup",""]],hostBindings:function(t,e){1&t&&bo("submit",(function(t){return e.onSubmit(t)}))("reset",(function(){return e.onReset()}))},inputs:{form:["formGroup","form"]},outputs:{ngSubmit:"ngSubmit"},exportAs:["ngForm"],features:[ta([km]),zo,De]}),t})(),Im=(()=>{class t{}return t.\u0275mod=me({type:t}),t.\u0275inj=ht({factory:function(e){return new(e||t)}}),t})(),Dm=(()=>{class t{}return t.\u0275mod=me({type:t}),t.\u0275inj=ht({factory:function(e){return new(e||t)},providers:[Bf],imports:[Im]}),t})();const Am=new Mt("MAT_INPUT_VALUE_ACCESSOR"),Pm=["button","checkbox","file","hidden","image","radio","range","reset","submit"];let Om=0;class Rm{constructor(t,e,n,i){this._defaultErrorStateMatcher=t,this._parentForm=e,this._parentFormGroup=n,this.ngControl=i}}const Nm=kp(Rm);let Fm=(()=>{class t extends Nm{constructor(t,e,n,i,s,r,o,a,l,c){super(r,i,s,n),this._elementRef=t,this._platform=e,this.ngControl=n,this._autofillMonitor=a,this._formField=c,this._uid="mat-input-"+Om++,this.focused=!1,this.stateChanges=new E,this.controlType="mat-input",this.autofilled=!1,this._disabled=!1,this._required=!1,this._type="text",this._readonly=!1,this._neverEmptyInputTypes=["date","datetime","datetime-local","month","time","week"].filter(t=>ih().has(t));const h=this._elementRef.nativeElement,u=h.nodeName.toLowerCase();this._inputValueAccessor=o||h,this._previousNativeValue=this.value,this.id=this.id,e.IOS&&l.runOutsideAngular(()=>{t.nativeElement.addEventListener("keyup",t=>{let e=t.target;e.value||e.selectionStart||e.selectionEnd||(e.setSelectionRange(1,1),e.setSelectionRange(0,0))})}),this._isServer=!this._platform.isBrowser,this._isNativeSelect="select"===u,this._isTextarea="textarea"===u,this._isNativeSelect&&(this.controlType=h.multiple?"mat-native-select-multiple":"mat-native-select")}get disabled(){return this.ngControl&&null!==this.ngControl.disabled?this.ngControl.disabled:this._disabled}set disabled(t){this._disabled=ah(t),this.focused&&(this.focused=!1,this.stateChanges.next())}get id(){return this._id}set id(t){this._id=t||this._uid}get required(){return this._required}set required(t){this._required=ah(t)}get type(){return this._type}set type(t){this._type=t||"text",this._validateType(),!this._isTextarea&&ih().has(this._type)&&(this._elementRef.nativeElement.type=this._type)}get value(){return this._inputValueAccessor.value}set value(t){t!==this.value&&(this._inputValueAccessor.value=t,this.stateChanges.next())}get readonly(){return this._readonly}set readonly(t){this._readonly=ah(t)}ngAfterViewInit(){this._platform.isBrowser&&this._autofillMonitor.monitor(this._elementRef.nativeElement).subscribe(t=>{this.autofilled=t.isAutofilled,this.stateChanges.next()})}ngOnChanges(){this.stateChanges.next()}ngOnDestroy(){this.stateChanges.complete(),this._platform.isBrowser&&this._autofillMonitor.stopMonitoring(this._elementRef.nativeElement)}ngDoCheck(){this.ngControl&&this.updateErrorState(),this._dirtyCheckNativeValue(),this._dirtyCheckPlaceholder()}focus(t){this._elementRef.nativeElement.focus(t)}_focusChanged(t){t===this.focused||this.readonly&&t||(this.focused=t,this.stateChanges.next())}_onInput(){}_dirtyCheckPlaceholder(){const t=this._formField,e=t&&t._hideControlPlaceholder()?null:this.placeholder;if(e!==this._previousPlaceholder){const t=this._elementRef.nativeElement;this._previousPlaceholder=e,e?t.setAttribute("placeholder",e):t.removeAttribute("placeholder")}}_dirtyCheckNativeValue(){const t=this._elementRef.nativeElement.value;this._previousNativeValue!==t&&(this._previousNativeValue=t,this.stateChanges.next())}_validateType(){if(Pm.indexOf(this._type)>-1)throw Error(`Input type "${this._type}" isn't supported by matInput.`)}_isNeverEmpty(){return this._neverEmptyInputTypes.indexOf(this._type)>-1}_isBadInput(){let t=this._elementRef.nativeElement.validity;return t&&t.badInput}get empty(){return!(this._isNeverEmpty()||this._elementRef.nativeElement.value||this._isBadInput()||this.autofilled)}get shouldLabelFloat(){if(this._isNativeSelect){const t=this._elementRef.nativeElement,e=t.options[0];return this.focused||t.multiple||!this.empty||!!(t.selectedIndex>-1&&e&&e.label)}return this.focused||!this.empty}setDescribedByIds(t){this._ariaDescribedby=t.join(" ")}onContainerClick(){this.focused||this.focus()}}return t.\u0275fac=function(e){return new(e||t)(lo(sa),lo(th),lo(Sf,10),lo(_m,8),lo(Tm,8),lo(Tp),lo(Am,10),lo(kh),lo(Vl),lo(hf,8))},t.\u0275dir=_e({type:t,selectors:[["input","matInput",""],["textarea","matInput",""],["select","matNativeControl",""],["input","matNativeControl",""],["textarea","matNativeControl",""]],hostAttrs:[1,"mat-input-element","mat-form-field-autofill-control"],hostVars:10,hostBindings:function(t,e){1&t&&bo("focus",(function(){return e._focusChanged(!0)}))("blur",(function(){return e._focusChanged(!1)}))("input",(function(){return e._onInput()})),2&t&&(Bo("disabled",e.disabled)("required",e.required),oo("id",e.id)("data-placeholder",e.placeholder)("readonly",e.readonly&&!e._isNativeSelect||null)("aria-describedby",e._ariaDescribedby||null)("aria-invalid",e.errorState)("aria-required",e.required.toString()),Ao("mat-input-server",e._isServer))},inputs:{id:"id",disabled:"disabled",required:"required",type:"type",value:"value",readonly:"readonly",placeholder:"placeholder",errorStateMatcher:"errorStateMatcher"},exportAs:["matInput"],features:[ta([{provide:Yp,useExisting:t}]),zo,De]}),t})(),Vm=(()=>{class t{}return t.\u0275mod=me({type:t}),t.\u0275inj=ht({factory:function(e){return new(e||t)},providers:[Tp],imports:[[Th,uf],Th,uf]}),t})();class Mm{constructor(t){this.selector=t}call(t,e){return e.subscribe(new Lm(t,this.selector,this.caught))}}class Lm extends N{constructor(t,e,n){super(t),this.selector=e,this.caught=n}error(t){if(!this.isStopped){let n;try{n=this.selector(t,this.caught)}catch(e){return void super.error(e)}this._unsubscribeAndRecycle();const i=new k(this,void 0,void 0);this.add(i);const s=R(this,n,void 0,void 0,i);s!==i&&this.add(s)}}}class jm{constructor(t){this.callback=t}call(t,e){return e.subscribe(new Bm(t,this.callback))}}class Bm extends f{constructor(t,e){super(t),this.add(new u(e))}}class Hm{}class zm{constructor(t){this.normalizedNames=new Map,this.lazyUpdate=null,t?this.lazyInit="string"==typeof t?()=>{this.headers=new Map,t.split("\n").forEach(t=>{const e=t.indexOf(":");if(e>0){const n=t.slice(0,e),i=n.toLowerCase(),s=t.slice(e+1).trim();this.maybeSetNormalizedName(n,i),this.headers.has(i)?this.headers.get(i).push(s):this.headers.set(i,[s])}})}:()=>{this.headers=new Map,Object.keys(t).forEach(e=>{let n=t[e];const i=e.toLowerCase();"string"==typeof n&&(n=[n]),n.length>0&&(this.headers.set(i,n),this.maybeSetNormalizedName(e,i))})}:this.headers=new Map}has(t){return this.init(),this.headers.has(t.toLowerCase())}get(t){this.init();const e=this.headers.get(t.toLowerCase());return e&&e.length>0?e[0]:null}keys(){return this.init(),Array.from(this.normalizedNames.values())}getAll(t){return this.init(),this.headers.get(t.toLowerCase())||null}append(t,e){return this.clone({name:t,value:e,op:"a"})}set(t,e){return this.clone({name:t,value:e,op:"s"})}delete(t,e){return this.clone({name:t,value:e,op:"d"})}maybeSetNormalizedName(t,e){this.normalizedNames.has(e)||this.normalizedNames.set(e,t)}init(){this.lazyInit&&(this.lazyInit instanceof zm?this.copyFrom(this.lazyInit):this.lazyInit(),this.lazyInit=null,this.lazyUpdate&&(this.lazyUpdate.forEach(t=>this.applyUpdate(t)),this.lazyUpdate=null))}copyFrom(t){t.init(),Array.from(t.headers.keys()).forEach(e=>{this.headers.set(e,t.headers.get(e)),this.normalizedNames.set(e,t.normalizedNames.get(e))})}clone(t){const e=new zm;return e.lazyInit=this.lazyInit&&this.lazyInit instanceof zm?this.lazyInit:this,e.lazyUpdate=(this.lazyUpdate||[]).concat([t]),e}applyUpdate(t){const e=t.name.toLowerCase();switch(t.op){case"a":case"s":let n=t.value;if("string"==typeof n&&(n=[n]),0===n.length)return;this.maybeSetNormalizedName(t.name,e);const i=("a"===t.op?this.headers.get(e):void 0)||[];i.push(...n),this.headers.set(e,i);break;case"d":const s=t.value;if(s){let t=this.headers.get(e);if(!t)return;t=t.filter(t=>-1===s.indexOf(t)),0===t.length?(this.headers.delete(e),this.normalizedNames.delete(e)):this.headers.set(e,t)}else this.headers.delete(e),this.normalizedNames.delete(e)}}forEach(t){this.init(),Array.from(this.normalizedNames.keys()).forEach(e=>t(this.normalizedNames.get(e),this.headers.get(e)))}}class qm{encodeKey(t){return $m(t)}encodeValue(t){return $m(t)}decodeKey(t){return decodeURIComponent(t)}decodeValue(t){return decodeURIComponent(t)}}function $m(t){return encodeURIComponent(t).replace(/%40/gi,"@").replace(/%3A/gi,":").replace(/%24/gi,"$").replace(/%2C/gi,",").replace(/%3B/gi,";").replace(/%2B/gi,"+").replace(/%3D/gi,"=").replace(/%3F/gi,"?").replace(/%2F/gi,"/")}class Um{constructor(t={}){if(this.updates=null,this.cloneFrom=null,this.encoder=t.encoder||new qm,t.fromString){if(t.fromObject)throw new Error("Cannot specify both fromString and fromObject.");this.map=function(t,e){const n=new Map;return t.length>0&&t.split("&").forEach(t=>{const i=t.indexOf("="),[s,r]=-1==i?[e.decodeKey(t),""]:[e.decodeKey(t.slice(0,i)),e.decodeValue(t.slice(i+1))],o=n.get(s)||[];o.push(r),n.set(s,o)}),n}(t.fromString,this.encoder)}else t.fromObject?(this.map=new Map,Object.keys(t.fromObject).forEach(e=>{const n=t.fromObject[e];this.map.set(e,Array.isArray(n)?n:[n])})):this.map=null}has(t){return this.init(),this.map.has(t)}get(t){this.init();const e=this.map.get(t);return e?e[0]:null}getAll(t){return this.init(),this.map.get(t)||null}keys(){return this.init(),Array.from(this.map.keys())}append(t,e){return this.clone({param:t,value:e,op:"a"})}set(t,e){return this.clone({param:t,value:e,op:"s"})}delete(t,e){return this.clone({param:t,value:e,op:"d"})}toString(){return this.init(),this.keys().map(t=>{const e=this.encoder.encodeKey(t);return this.map.get(t).map(t=>e+"="+this.encoder.encodeValue(t)).join("&")}).filter(t=>""!==t).join("&")}clone(t){const e=new Um({encoder:this.encoder});return e.cloneFrom=this.cloneFrom||this,e.updates=(this.updates||[]).concat([t]),e}init(){null===this.map&&(this.map=new Map),null!==this.cloneFrom&&(this.cloneFrom.init(),this.cloneFrom.keys().forEach(t=>this.map.set(t,this.cloneFrom.map.get(t))),this.updates.forEach(t=>{switch(t.op){case"a":case"s":const e=("a"===t.op?this.map.get(t.param):void 0)||[];e.push(t.value),this.map.set(t.param,e);break;case"d":if(void 0===t.value){this.map.delete(t.param);break}{let e=this.map.get(t.param)||[];const n=e.indexOf(t.value);-1!==n&&e.splice(n,1),e.length>0?this.map.set(t.param,e):this.map.delete(t.param)}}}),this.cloneFrom=this.updates=null)}}function Gm(t){return"undefined"!=typeof ArrayBuffer&&t instanceof ArrayBuffer}function Wm(t){return"undefined"!=typeof Blob&&t instanceof Blob}function Zm(t){return"undefined"!=typeof FormData&&t instanceof FormData}class Qm{constructor(t,e,n,i){let s;if(this.url=e,this.body=null,this.reportProgress=!1,this.withCredentials=!1,this.responseType="json",this.method=t.toUpperCase(),function(t){switch(t){case"DELETE":case"GET":case"HEAD":case"OPTIONS":case"JSONP":return!1;default:return!0}}(this.method)||i?(this.body=void 0!==n?n:null,s=i):s=n,s&&(this.reportProgress=!!s.reportProgress,this.withCredentials=!!s.withCredentials,s.responseType&&(this.responseType=s.responseType),s.headers&&(this.headers=s.headers),s.params&&(this.params=s.params)),this.headers||(this.headers=new zm),this.params){const t=this.params.toString();if(0===t.length)this.urlWithParams=e;else{const n=e.indexOf("?");this.urlWithParams=e+(-1===n?"?":ne.set(n,t.setHeaders[n]),a)),t.setParams&&(l=Object.keys(t.setParams).reduce((e,n)=>e.set(n,t.setParams[n]),l)),new Qm(e,n,s,{params:l,headers:a,reportProgress:o,responseType:i,withCredentials:r})}}var Km=function(t){return t[t.Sent=0]="Sent",t[t.UploadProgress=1]="UploadProgress",t[t.ResponseHeader=2]="ResponseHeader",t[t.DownloadProgress=3]="DownloadProgress",t[t.Response=4]="Response",t[t.User=5]="User",t}({});class Ym extends class{constructor(t,e=200,n="OK"){this.headers=t.headers||new zm,this.status=void 0!==t.status?t.status:e,this.statusText=t.statusText||n,this.url=t.url||null,this.ok=this.status>=200&&this.status<300}}{constructor(t={}){super(t),this.type=Km.Response,this.body=void 0!==t.body?t.body:null}clone(t={}){return new Ym({body:void 0!==t.body?t.body:this.body,headers:t.headers||this.headers,status:void 0!==t.status?t.status:this.status,statusText:t.statusText||this.statusText,url:t.url||this.url||void 0})}}function Jm(t,e){return{body:e,headers:t.headers,observe:t.observe,params:t.params,reportProgress:t.reportProgress,responseType:t.responseType,withCredentials:t.withCredentials}}let Xm=(()=>{class t{constructor(t){this.handler=t}request(t,e,n={}){let i;if(t instanceof Qm)i=t;else{let s=void 0;s=n.headers instanceof zm?n.headers:new zm(n.headers);let r=void 0;n.params&&(r=n.params instanceof Um?n.params:new Um({fromObject:n.params})),i=new Qm(t,e,void 0!==n.body?n.body:null,{headers:s,params:r,reportProgress:n.reportProgress,responseType:n.responseType||"json",withCredentials:n.withCredentials})}const s=Ih(i).pipe(B(t=>this.handler.handle(t),void 0,1));if(t instanceof Qm||"events"===n.observe)return s;const r=s.pipe(Vh(t=>t instanceof Ym));switch(n.observe||"body"){case"body":switch(i.responseType){case"arraybuffer":return r.pipe(F(t=>{if(null!==t.body&&!(t.body instanceof ArrayBuffer))throw new Error("Response is not an ArrayBuffer.");return t.body}));case"blob":return r.pipe(F(t=>{if(null!==t.body&&!(t.body instanceof Blob))throw new Error("Response is not a Blob.");return t.body}));case"text":return r.pipe(F(t=>{if(null!==t.body&&"string"!=typeof t.body)throw new Error("Response is not a string.");return t.body}));case"json":default:return r.pipe(F(t=>t.body))}case"response":return r;default:throw new Error(`Unreachable: unhandled observe type ${n.observe}}`)}}delete(t,e={}){return this.request("DELETE",t,e)}get(t,e={}){return this.request("GET",t,e)}head(t,e={}){return this.request("HEAD",t,e)}jsonp(t,e){return this.request("JSONP",t,{params:(new Um).append(e,"JSONP_CALLBACK"),observe:"body",responseType:"json"})}options(t,e={}){return this.request("OPTIONS",t,e)}patch(t,e,n={}){return this.request("PATCH",t,Jm(n,e))}post(t,e,n={}){return this.request("POST",t,Jm(n,e))}put(t,e,n={}){return this.request("PUT",t,Jm(n,e))}}return t.\u0275fac=function(e){return new(e||t)(Wt(Hm))},t.\u0275prov=ct({token:t,factory:t.\u0275fac}),t})();const tg=["*"];function eg(t){return Error(`Unable to find icon with the name "${t}"`)}function ng(t){return Error(`The URL provided to MatIconRegistry was not trusted as a resource URL via Angular's DomSanitizer. Attempted URL was "${t}".`)}function ig(t){return Error(`The literal provided to MatIconRegistry was not trusted as safe HTML by Angular's DomSanitizer. Attempted literal was "${t}".`)}class sg{constructor(t,e){this.options=e,t.nodeName?this.svgElement=t:this.url=t}}let rg=(()=>{class t{constructor(t,e,n,i){this._httpClient=t,this._sanitizer=e,this._errorHandler=i,this._svgIconConfigs=new Map,this._iconSetConfigs=new Map,this._cachedIconsByUrl=new Map,this._inProgressUrlFetches=new Map,this._fontCssClassesByAlias=new Map,this._defaultFontSetClass="material-icons",this._document=n}addSvgIcon(t,e,n){return this.addSvgIconInNamespace("",t,e,n)}addSvgIconLiteral(t,e,n){return this.addSvgIconLiteralInNamespace("",t,e,n)}addSvgIconInNamespace(t,e,n,i){return this._addSvgIconConfig(t,e,new sg(n,i))}addSvgIconLiteralInNamespace(t,e,n,i){const s=this._sanitizer.sanitize($i.HTML,n);if(!s)throw ig(n);const r=this._createSvgElementForSingleIcon(s,i);return this._addSvgIconConfig(t,e,new sg(r,i))}addSvgIconSet(t,e){return this.addSvgIconSetInNamespace("",t,e)}addSvgIconSetLiteral(t,e){return this.addSvgIconSetLiteralInNamespace("",t,e)}addSvgIconSetInNamespace(t,e,n){return this._addSvgIconSetConfig(t,new sg(e,n))}addSvgIconSetLiteralInNamespace(t,e,n){const i=this._sanitizer.sanitize($i.HTML,e);if(!i)throw ig(e);const s=this._svgElementFromString(i);return this._addSvgIconSetConfig(t,new sg(s,n))}registerFontClassAlias(t,e=t){return this._fontCssClassesByAlias.set(t,e),this}classNameForFontAlias(t){return this._fontCssClassesByAlias.get(t)||t}setDefaultFontSetClass(t){return this._defaultFontSetClass=t,this}getDefaultFontSetClass(){return this._defaultFontSetClass}getSvgIconFromUrl(t){const e=this._sanitizer.sanitize($i.RESOURCE_URL,t);if(!e)throw ng(t);const n=this._cachedIconsByUrl.get(e);return n?Ih(og(n)):this._loadSvgIconFromConfig(new sg(t)).pipe(Ah(t=>this._cachedIconsByUrl.set(e,t)),F(t=>og(t)))}getNamedSvgIcon(t,e=""){const n=ag(e,t),i=this._svgIconConfigs.get(n);if(i)return this._getSvgFromConfig(i);const s=this._iconSetConfigs.get(e);return s?this._getSvgFromIconSetConfigs(t,s):(r=eg(n),new y(t=>t.error(r)));var r}ngOnDestroy(){this._svgIconConfigs.clear(),this._iconSetConfigs.clear(),this._cachedIconsByUrl.clear()}_getSvgFromConfig(t){return t.svgElement?Ih(og(t.svgElement)):this._loadSvgIconFromConfig(t).pipe(Ah(e=>t.svgElement=e),F(t=>og(t)))}_getSvgFromIconSetConfigs(t,e){const n=this._extractIconWithNameFromAnySet(t,e);return n?Ih(n):df(e.filter(t=>!t.svgElement).map(t=>{return this._loadSvgIconSetFromConfig(t).pipe((e=e=>{const n=this._sanitizer.sanitize($i.RESOURCE_URL,t.url);return this._errorHandler.handleError(new Error(`Loading icon set URL: ${n} failed: ${e.message}`)),Ih(null)},function(t){const n=new Mm(e),i=t.lift(n);return n.caught=i}));var e})).pipe(F(()=>{const n=this._extractIconWithNameFromAnySet(t,e);if(!n)throw eg(t);return n}))}_extractIconWithNameFromAnySet(t,e){for(let n=e.length-1;n>=0;n--){const i=e[n];if(i.svgElement){const e=this._extractSvgIconFromSet(i.svgElement,t,i.options);if(e)return e}}return null}_loadSvgIconFromConfig(t){return this._fetchIcon(t).pipe(F(e=>this._createSvgElementForSingleIcon(e,t.options)))}_loadSvgIconSetFromConfig(t){return t.svgElement?Ih(t.svgElement):this._fetchIcon(t).pipe(F(e=>(t.svgElement||(t.svgElement=this._svgElementFromString(e)),t.svgElement)))}_createSvgElementForSingleIcon(t,e){const n=this._svgElementFromString(t);return this._setSvgAttributes(n,e),n}_extractSvgIconFromSet(t,e,n){const i=t.querySelector(`[id="${e}"]`);if(!i)return null;const s=i.cloneNode(!0);if(s.removeAttribute("id"),"svg"===s.nodeName.toLowerCase())return this._setSvgAttributes(s,n);if("symbol"===s.nodeName.toLowerCase())return this._setSvgAttributes(this._toSvgElement(s),n);const r=this._svgElementFromString("");return r.appendChild(s),this._setSvgAttributes(r,n)}_svgElementFromString(t){const e=this._document.createElement("DIV");e.innerHTML=t;const n=e.querySelector("svg");if(!n)throw Error(" tag not found");return n}_toSvgElement(t){const e=this._svgElementFromString(""),n=t.attributes;for(let i=0;ithis._inProgressUrlFetches.delete(r),t=>t.lift(new jm(l))),X());var l;return this._inProgressUrlFetches.set(r,a),a}_addSvgIconConfig(t,e,n){return this._svgIconConfigs.set(ag(t,e),n),this}_addSvgIconSetConfig(t,e){const n=this._iconSetConfigs.get(t);return n?n.push(e):this._iconSetConfigs.set(t,[e]),this}}return t.\u0275fac=function(e){return new(e||t)(Wt(Xm,8),Wt(Wc),Wt(ac,8),Wt(ci))},t.\u0275prov=ct({factory:function(){return new t(Wt(Xm,8),Wt(Wc),Wt(ac,8),Wt(ci))},token:t,providedIn:"root"}),t})();function og(t){return t.cloneNode(!0)}function ag(t,e){return t+":"+e}class lg{constructor(t){this._elementRef=t}}const cg=xp(lg),hg=new Mt("mat-icon-location",{providedIn:"root",factory:function(){const t=Zt(ac),e=t?t.location:null;return{getPathname:()=>e?e.pathname+e.search:""}}}),ug=["clip-path","color-profile","src","cursor","fill","filter","marker","marker-start","marker-mid","marker-end","mask","stroke"],dg=ug.map(t=>`[${t}]`).join(", "),pg=/^url\(['"]?#(.*?)['"]?\)$/;let fg=(()=>{class t extends cg{constructor(t,e,n,i,s){super(t),this._iconRegistry=e,this._location=i,this._errorHandler=s,this._inline=!1,this._currentIconFetch=u.EMPTY,n||t.nativeElement.setAttribute("aria-hidden","true")}get inline(){return this._inline}set inline(t){this._inline=ah(t)}get fontSet(){return this._fontSet}set fontSet(t){this._fontSet=this._cleanupFontValue(t)}get fontIcon(){return this._fontIcon}set fontIcon(t){this._fontIcon=this._cleanupFontValue(t)}_splitIconName(t){if(!t)return["",""];const e=t.split(":");switch(e.length){case 1:return["",e[0]];case 2:return e;default:throw Error(`Invalid icon name: "${t}"`)}}ngOnChanges(t){const e=t.svgIcon;if(e)if(this._currentIconFetch.unsubscribe(),this.svgIcon){const[t,e]=this._splitIconName(this.svgIcon);this._currentIconFetch=this._iconRegistry.getNamedSvgIcon(e,t).pipe(Bh(1)).subscribe(t=>this._setSvgElement(t),n=>{this._errorHandler.handleError(new Error(`Error retrieving icon ${t}:${e}! ${n.message}`))})}else e.previousValue&&this._clearSvgElement();this._usingFontIcon()&&this._updateFontIconClasses()}ngOnInit(){this._usingFontIcon()&&this._updateFontIconClasses()}ngAfterViewChecked(){const t=this._elementsWithExternalReferences;if(t&&t.size){const t=this._location.getPathname();t!==this._previousPath&&(this._previousPath=t,this._prependPathToReferences(t))}}ngOnDestroy(){this._currentIconFetch.unsubscribe(),this._elementsWithExternalReferences&&this._elementsWithExternalReferences.clear()}_usingFontIcon(){return!this.svgIcon}_setSvgElement(t){this._clearSvgElement();const e=t.querySelectorAll("style");for(let i=0;i{e.forEach(e=>{n.setAttribute(e.name,`url('${t}#${e.value}')`)})})}_cacheChildrenWithExternalReferences(t){const e=t.querySelectorAll(dg),n=this._elementsWithExternalReferences=this._elementsWithExternalReferences||new Map;for(let i=0;i{const s=e[i],r=s.getAttribute(t),o=r?r.match(pg):null;if(o){let e=n.get(s);e||(e=[],n.set(s,e)),e.push({name:t,value:o[1]})}})}}return t.\u0275fac=function(e){return new(e||t)(lo(sa),lo(rg),("aria-hidden",function(t,e){const n=t.attrs;if(n){const t=n.length;let e=0;for(;e{class t{}return t.\u0275mod=me({type:t}),t.\u0275inj=ht({factory:function(e){return new(e||t)},imports:[[Sp],Sp]}),t})(),gg=(()=>{class t{}return t.\u0275mod=me({type:t}),t.\u0275inj=ht({factory:function(e){return new(e||t)},imports:[[Sp],Sp]}),t})(),_g=(()=>{class t{}return t.\u0275fac=function(e){return new(e||t)},t.\u0275dir=_e({type:t,selectors:[["","mat-list-icon",""],["","matListIcon",""]],hostAttrs:[1,"mat-list-icon"]}),t})(),yg=(()=>{class t{}return t.\u0275mod=me({type:t}),t.\u0275inj=ht({factory:function(e){return new(e||t)},imports:[[Ip,Dp,Sp,Ap,wc],Ip,Sp,Ap,gg]}),t})();class bg extends ph{constructor(t,e){super(t,e),this.scheduler=t,this.work=e}requestAsyncId(t,e,n=0){return null!==n&&n>0?super.requestAsyncId(t,e,n):(t.actions.push(this),t.scheduled||(t.scheduled=requestAnimationFrame(()=>t.flush(null))))}recycleAsyncId(t,e,n=0){if(null!==n&&n>0||null===n&&this.delay>0)return super.recycleAsyncId(t,e,n);0===t.actions.length&&(cancelAnimationFrame(e),t.scheduled=void 0)}}class vg extends mh{flush(t){this.active=!0,this.scheduled=void 0;const{actions:e}=this;let n,i=-1,s=e.length;t=t||e.shift();do{if(n=t.execute(t.state,t.delay))break}while(++i{class t{constructor(t,e,n){this._ngZone=t,this._platform=e,this._scrolled=new E,this._globalSubscription=null,this._scrolledCount=0,this.scrollContainers=new Map,this._document=n}register(t){this.scrollContainers.has(t)||this.scrollContainers.set(t,t.elementScrolled().subscribe(()=>this._scrolled.next(t)))}deregister(t){const e=this.scrollContainers.get(t);e&&(e.unsubscribe(),this.scrollContainers.delete(t))}scrolled(t=20){return this._platform.isBrowser?new y(e=>{this._globalSubscription||this._addGlobalListener();const n=t>0?this._scrolled.pipe(wh(t)).subscribe(e):this._scrolled.subscribe(e);return this._scrolledCount++,()=>{n.unsubscribe(),this._scrolledCount--,this._scrolledCount||this._removeGlobalListener()}}):Ih()}ngOnDestroy(){this._removeGlobalListener(),this.scrollContainers.forEach((t,e)=>this.deregister(e)),this._scrolled.complete()}ancestorScrolled(t,e){const n=this.getAncestorScrollContainers(t);return this.scrolled(e).pipe(Vh(t=>!t||n.indexOf(t)>-1))}getAncestorScrollContainers(t){const e=[];return this.scrollContainers.forEach((n,i)=>{this._scrollableContainsElement(i,t)&&e.push(i)}),e}_getDocument(){return this._document||document}_getWindow(){return this._getDocument().defaultView||window}_scrollableContainsElement(t,e){let n=e.nativeElement,i=t.getElementRef().nativeElement;do{if(n==i)return!0}while(n=n.parentElement);return!1}_addGlobalListener(){this._globalSubscription=this._ngZone.runOutsideAngular(()=>uh(this._getWindow().document,"scroll").subscribe(()=>this._scrolled.next()))}_removeGlobalListener(){this._globalSubscription&&(this._globalSubscription.unsubscribe(),this._globalSubscription=null)}}return t.\u0275fac=function(e){return new(e||t)(Wt(Vl),Wt(th),Wt(ac,8))},t.\u0275prov=ct({factory:function(){return new t(Wt(Vl),Wt(th),Wt(ac,8))},token:t,providedIn:"root"}),t})(),xg=(()=>{class t{constructor(t,e,n){this._platform=t,this._document=n,e.runOutsideAngular(()=>{const e=this._getWindow();this._change=t.isBrowser?U(uh(e,"resize"),uh(e,"orientationchange")):Ih(),this._invalidateCache=this.change().subscribe(()=>this._updateViewportSize())})}ngOnDestroy(){this._invalidateCache.unsubscribe()}getViewportSize(){this._viewportSize||this._updateViewportSize();const t={width:this._viewportSize.width,height:this._viewportSize.height};return this._platform.isBrowser||(this._viewportSize=null),t}getViewportRect(){const t=this.getViewportScrollPosition(),{width:e,height:n}=this.getViewportSize();return{top:t.top,left:t.left,bottom:t.top+n,right:t.left+e,height:n,width:e}}getViewportScrollPosition(){if(!this._platform.isBrowser)return{top:0,left:0};const t=this._getDocument(),e=this._getWindow(),n=t.documentElement,i=n.getBoundingClientRect();return{top:-i.top||t.body.scrollTop||e.scrollY||n.scrollTop||0,left:-i.left||t.body.scrollLeft||e.scrollX||n.scrollLeft||0}}change(t=20){return t>0?this._change.pipe(wh(t)):this._change}_getDocument(){return this._document||document}_getWindow(){return this._getDocument().defaultView||window}_updateViewportSize(){const t=this._getWindow();this._viewportSize=this._platform.isBrowser?{width:t.innerWidth,height:t.innerHeight}:{width:0,height:0}}}return t.\u0275fac=function(e){return new(e||t)(Wt(th),Wt(Vl),Wt(ac,8))},t.\u0275prov=ct({factory:function(){return new t(Wt(th),Wt(Vl),Wt(ac,8))},token:t,providedIn:"root"}),t})(),kg=(()=>{class t{}return t.\u0275mod=me({type:t}),t.\u0275inj=ht({factory:function(e){return new(e||t)}}),t})();function Tg(t){const{subscriber:e,counter:n,period:i}=t;e.next(n),this.schedule({subscriber:e,counter:n+1,period:i},i)}function Ig(t,e){for(let n in e)e.hasOwnProperty(n)&&(t[n]=e[n]);return t}function Dg(t,e){const n=e?"":"none";Ig(t.style,{touchAction:e?"":"none",webkitUserDrag:e?"":"none",webkitTapHighlightColor:e?"":"transparent",userSelect:n,msUserSelect:n,webkitUserSelect:n,MozUserSelect:n})}function Ag(t){const e=t.toLowerCase().indexOf("ms")>-1?1:1e3;return parseFloat(t)*e}function Pg(t,e){return t.getPropertyValue(e).split(",").map(t=>t.trim())}function Og(t){const e=t.getBoundingClientRect();return{top:e.top,right:e.right,bottom:e.bottom,left:e.left,width:e.width,height:e.height}}function Rg(t,e,n){const{top:i,bottom:s,left:r,right:o}=t;return n>=i&&n<=s&&e>=r&&e<=o}function Ng(t,e,n){t.top+=e,t.bottom=t.top+t.height,t.left+=n,t.right=t.left+t.width}function Fg(t,e,n,i){const{top:s,right:r,bottom:o,left:a,width:l,height:c}=t,h=l*e,u=c*e;return i>s-u&&ia-h&&n{this.positions.set(t,{scrollPosition:{top:t.scrollTop,left:t.scrollLeft},clientRect:Og(t)})})}handleScroll(t){const e=t.target,n=this.positions.get(e);if(!n)return null;const i=e===this._document?e.documentElement:e,s=n.scrollPosition;let r,o;if(e===this._document){const t=this._viewportRuler.getViewportScrollPosition();r=t.top,o=t.left}else r=e.scrollTop,o=e.scrollLeft;const a=s.top-r,l=s.left-o;return this.positions.forEach((t,n)=>{t.clientRect&&e!==n&&i.contains(n)&&Ng(t.clientRect,a,l)}),s.top=r,s.left=o,{top:a,left:l}}}const Mg=oh({passive:!0}),Lg=oh({passive:!1});class jg{constructor(t,e,n,i,s,r){this._config=e,this._document=n,this._ngZone=i,this._viewportRuler=s,this._dragDropRegistry=r,this._passiveTransform={x:0,y:0},this._activeTransform={x:0,y:0},this._moveEvents=new E,this._pointerMoveSubscription=u.EMPTY,this._pointerUpSubscription=u.EMPTY,this._scrollSubscription=u.EMPTY,this._resizeSubscription=u.EMPTY,this._boundaryElement=null,this._nativeInteractionsEnabled=!0,this._handles=[],this._disabledHandles=new Set,this._direction="ltr",this.dragStartDelay=0,this._disabled=!1,this.beforeStarted=new E,this.started=new E,this.released=new E,this.ended=new E,this.entered=new E,this.exited=new E,this.dropped=new E,this.moved=this._moveEvents.asObservable(),this._pointerDown=t=>{if(this.beforeStarted.next(),this._handles.length){const e=this._handles.find(e=>{const n=t.target;return!!n&&(n===e||e.contains(n))});!e||this._disabledHandles.has(e)||this.disabled||this._initializeDragSequence(e,t)}else this.disabled||this._initializeDragSequence(this._rootElement,t)},this._pointerMove=t=>{t.preventDefault();const e=this._getPointerPositionOnPage(t);if(!this._hasStartedDragging){if(Math.abs(e.x-this._pickupPositionOnPage.x)+Math.abs(e.y-this._pickupPositionOnPage.y)>=this._config.dragStartThreshold){if(!(Date.now()>=this._dragStartTime+this._getDragStartDelay(t)))return void this._endDragSequence(t);this._dropContainer&&this._dropContainer.isDragging()||(this._hasStartedDragging=!0,this._ngZone.run(()=>this._startDragSequence(t)))}return}this._boundaryElement&&(this._previewRect&&(this._previewRect.width||this._previewRect.height)||(this._previewRect=(this._preview||this._rootElement).getBoundingClientRect()));const n=this._getConstrainedPointerPosition(e);if(this._hasMoved=!0,this._lastKnownPointerPosition=e,this._updatePointerDirectionDelta(n),this._dropContainer)this._updateActiveDropContainer(n,e);else{const t=this._activeTransform;t.x=n.x-this._pickupPositionOnPage.x+this._passiveTransform.x,t.y=n.y-this._pickupPositionOnPage.y+this._passiveTransform.y,this._applyRootElementTransform(t.x,t.y),"undefined"!=typeof SVGElement&&this._rootElement instanceof SVGElement&&this._rootElement.setAttribute("transform",`translate(${t.x} ${t.y})`)}this._moveEvents.observers.length&&this._ngZone.run(()=>{this._moveEvents.next({source:this,pointerPosition:n,event:t,distance:this._getDragDistance(n),delta:this._pointerDirectionDelta})})},this._pointerUp=t=>{this._endDragSequence(t)},this.withRootElement(t),this._parentPositions=new Vg(n,s),r.registerDragItem(this)}get disabled(){return this._disabled||!(!this._dropContainer||!this._dropContainer.disabled)}set disabled(t){const e=ah(t);e!==this._disabled&&(this._disabled=e,this._toggleNativeDragInteractions())}getPlaceholderElement(){return this._placeholder}getRootElement(){return this._rootElement}getVisibleElement(){return this.isDragging()?this.getPlaceholderElement():this.getRootElement()}withHandles(t){return this._handles=t.map(t=>ch(t)),this._handles.forEach(t=>Dg(t,!1)),this._toggleNativeDragInteractions(),this}withPreviewTemplate(t){return this._previewTemplate=t,this}withPlaceholderTemplate(t){return this._placeholderTemplate=t,this}withRootElement(t){const e=ch(t);return e!==this._rootElement&&(this._rootElement&&this._removeRootElementListeners(this._rootElement),this._ngZone.runOutsideAngular(()=>{e.addEventListener("mousedown",this._pointerDown,Lg),e.addEventListener("touchstart",this._pointerDown,Mg)}),this._initialTransform=void 0,this._rootElement=e),"undefined"!=typeof SVGElement&&this._rootElement instanceof SVGElement&&(this._ownerSVGElement=this._rootElement.ownerSVGElement),this}withBoundaryElement(t){return this._boundaryElement=t?ch(t):null,this._resizeSubscription.unsubscribe(),t&&(this._resizeSubscription=this._viewportRuler.change(10).subscribe(()=>this._containInsideBoundaryOnResize())),this}dispose(){this._removeRootElementListeners(this._rootElement),this.isDragging()&&qg(this._rootElement),qg(this._anchor),this._destroyPreview(),this._destroyPlaceholder(),this._dragDropRegistry.removeDragItem(this),this._removeSubscriptions(),this.beforeStarted.complete(),this.started.complete(),this.released.complete(),this.ended.complete(),this.entered.complete(),this.exited.complete(),this.dropped.complete(),this._moveEvents.complete(),this._handles=[],this._disabledHandles.clear(),this._dropContainer=void 0,this._resizeSubscription.unsubscribe(),this._parentPositions.clear(),this._boundaryElement=this._rootElement=this._ownerSVGElement=this._placeholderTemplate=this._previewTemplate=this._anchor=null}isDragging(){return this._hasStartedDragging&&this._dragDropRegistry.isDragging(this)}reset(){this._rootElement.style.transform=this._initialTransform||"",this._activeTransform={x:0,y:0},this._passiveTransform={x:0,y:0}}disableHandle(t){this._handles.indexOf(t)>-1&&this._disabledHandles.add(t)}enableHandle(t){this._disabledHandles.delete(t)}withDirection(t){return this._direction=t,this}_withDropContainer(t){this._dropContainer=t}getFreeDragPosition(){const t=this.isDragging()?this._activeTransform:this._passiveTransform;return{x:t.x,y:t.y}}setFreeDragPosition(t){return this._activeTransform={x:0,y:0},this._passiveTransform.x=t.x,this._passiveTransform.y=t.y,this._dropContainer||this._applyRootElementTransform(t.x,t.y),this}_sortFromLastPointerPosition(){const t=this._lastKnownPointerPosition;t&&this._dropContainer&&this._updateActiveDropContainer(this._getConstrainedPointerPosition(t),t)}_removeSubscriptions(){this._pointerMoveSubscription.unsubscribe(),this._pointerUpSubscription.unsubscribe(),this._scrollSubscription.unsubscribe()}_destroyPreview(){this._preview&&qg(this._preview),this._previewRef&&this._previewRef.destroy(),this._preview=this._previewRef=null}_destroyPlaceholder(){this._placeholder&&qg(this._placeholder),this._placeholderRef&&this._placeholderRef.destroy(),this._placeholder=this._placeholderRef=null}_endDragSequence(t){this._dragDropRegistry.isDragging(this)&&(this._removeSubscriptions(),this._dragDropRegistry.stopDragging(this),this._toggleNativeDragInteractions(),this._handles&&(this._rootElement.style.webkitTapHighlightColor=this._rootElementTapHighlight),this._hasStartedDragging&&(this.released.next({source:this}),this._dropContainer?(this._dropContainer._stopScrolling(),this._animatePreviewToPlaceholder().then(()=>{this._cleanupDragArtifacts(t),this._cleanupCachedDimensions(),this._dragDropRegistry.stopDragging(this)})):(this._passiveTransform.x=this._activeTransform.x,this._passiveTransform.y=this._activeTransform.y,this._ngZone.run(()=>{this.ended.next({source:this,distance:this._getDragDistance(this._getPointerPositionOnPage(t))})}),this._cleanupCachedDimensions(),this._dragDropRegistry.stopDragging(this))))}_startDragSequence(t){$g(t)&&(this._lastTouchEventTime=Date.now()),this._toggleNativeDragInteractions();const e=this._dropContainer;if(e){const t=this._rootElement,i=t.parentNode,s=this._preview=this._createPreviewElement(),r=this._placeholder=this._createPlaceholderElement(),o=this._anchor=this._anchor||this._document.createComment("");i.insertBefore(o,t),t.style.display="none",this._document.body.appendChild(i.replaceChild(r,t)),(n=this._document,n.fullscreenElement||n.webkitFullscreenElement||n.mozFullScreenElement||n.msFullscreenElement||n.body).appendChild(s),this.started.next({source:this}),e.start(),this._initialContainer=e,this._initialIndex=e.getItemIndex(this)}else this.started.next({source:this}),this._initialContainer=this._initialIndex=void 0;var n;this._parentPositions.cache(e?e.getScrollableParents():[])}_initializeDragSequence(t,e){e.stopPropagation();const n=this.isDragging(),i=$g(e),s=!i&&0!==e.button,r=this._rootElement,o=!i&&this._lastTouchEventTime&&this._lastTouchEventTime+800>Date.now();if(e.target&&e.target.draggable&&"mousedown"===e.type&&e.preventDefault(),n||s||o)return;this._handles.length&&(this._rootElementTapHighlight=r.style.webkitTapHighlightColor||"",r.style.webkitTapHighlightColor="transparent"),this._hasStartedDragging=this._hasMoved=!1,this._removeSubscriptions(),this._pointerMoveSubscription=this._dragDropRegistry.pointerMove.subscribe(this._pointerMove),this._pointerUpSubscription=this._dragDropRegistry.pointerUp.subscribe(this._pointerUp),this._scrollSubscription=this._dragDropRegistry.scroll.subscribe(t=>{this._updateOnScroll(t)}),this._boundaryElement&&(this._boundaryRect=Og(this._boundaryElement));const a=this._previewTemplate;this._pickupPositionInElement=a&&a.template&&!a.matchSize?{x:0,y:0}:this._getPointerPositionInElement(t,e);const l=this._pickupPositionOnPage=this._lastKnownPointerPosition=this._getPointerPositionOnPage(e);this._pointerDirectionDelta={x:0,y:0},this._pointerPositionAtLastDirectionChange={x:l.x,y:l.y},this._dragStartTime=Date.now(),this._dragDropRegistry.startDragging(this,e)}_cleanupDragArtifacts(t){this._rootElement.style.display="",this._anchor.parentNode.replaceChild(this._rootElement,this._anchor),this._destroyPreview(),this._destroyPlaceholder(),this._boundaryRect=this._previewRect=void 0,this._ngZone.run(()=>{const e=this._dropContainer,n=e.getItemIndex(this),i=this._getPointerPositionOnPage(t),s=this._getDragDistance(this._getPointerPositionOnPage(t)),r=e._isOverContainer(i.x,i.y);this.ended.next({source:this,distance:s}),this.dropped.next({item:this,currentIndex:n,previousIndex:this._initialIndex,container:e,previousContainer:this._initialContainer,isPointerOverContainer:r,distance:s}),e.drop(this,n,this._initialContainer,r,s,this._initialIndex),this._dropContainer=this._initialContainer})}_updateActiveDropContainer({x:t,y:e},{x:n,y:i}){let s=this._initialContainer._getSiblingContainerFromPosition(this,t,e);!s&&this._dropContainer!==this._initialContainer&&this._initialContainer._isOverContainer(t,e)&&(s=this._initialContainer),s&&s!==this._dropContainer&&this._ngZone.run(()=>{this.exited.next({item:this,container:this._dropContainer}),this._dropContainer.exit(this),this._dropContainer=s,this._dropContainer.enter(this,t,e,s===this._initialContainer&&s.sortingDisabled?this._initialIndex:void 0),this.entered.next({item:this,container:s,currentIndex:s.getItemIndex(this)})}),this._dropContainer._startScrollingIfNecessary(n,i),this._dropContainer._sortItem(this,t,e,this._pointerDirectionDelta),this._preview.style.transform=Bg(t-this._pickupPositionInElement.x,e-this._pickupPositionInElement.y)}_createPreviewElement(){const t=this._previewTemplate,e=this.previewClass,n=t?t.template:null;let i;if(n&&t){const e=t.matchSize?this._rootElement.getBoundingClientRect():null,s=t.viewContainer.createEmbeddedView(n,t.context);s.detectChanges(),i=Ug(s,this._document),this._previewRef=s,t.matchSize?Gg(i,e):i.style.transform=Bg(this._pickupPositionOnPage.x,this._pickupPositionOnPage.y)}else{const t=this._rootElement;i=Hg(t),Gg(i,t.getBoundingClientRect())}return Ig(i.style,{pointerEvents:"none",margin:"0",position:"fixed",top:"0",left:"0",zIndex:""+(this._config.zIndex||1e3)}),Dg(i,!1),i.classList.add("cdk-drag-preview"),i.setAttribute("dir",this._direction),e&&(Array.isArray(e)?e.forEach(t=>i.classList.add(t)):i.classList.add(e)),i}_animatePreviewToPlaceholder(){if(!this._hasMoved)return Promise.resolve();const t=this._placeholder.getBoundingClientRect();this._preview.classList.add("cdk-drag-animating"),this._preview.style.transform=Bg(t.left,t.top);const e=function(t){const e=getComputedStyle(t),n=Pg(e,"transition-property"),i=n.find(t=>"transform"===t||"all"===t);if(!i)return 0;const s=n.indexOf(i),r=Pg(e,"transition-duration"),o=Pg(e,"transition-delay");return Ag(r[s])+Ag(o[s])}(this._preview);return 0===e?Promise.resolve():this._ngZone.runOutsideAngular(()=>new Promise(t=>{const n=e=>{(!e||e.target===this._preview&&"transform"===e.propertyName)&&(this._preview.removeEventListener("transitionend",n),t(),clearTimeout(i))},i=setTimeout(n,1.5*e);this._preview.addEventListener("transitionend",n)}))}_createPlaceholderElement(){const t=this._placeholderTemplate,e=t?t.template:null;let n;return e?(this._placeholderRef=t.viewContainer.createEmbeddedView(e,t.context),this._placeholderRef.detectChanges(),n=Ug(this._placeholderRef,this._document)):n=Hg(this._rootElement),n.classList.add("cdk-drag-placeholder"),n}_getPointerPositionInElement(t,e){const n=this._rootElement.getBoundingClientRect(),i=t===this._rootElement?null:t,s=i?i.getBoundingClientRect():n,r=$g(e)?e.targetTouches[0]:e,o=this._getViewportScrollPosition();return{x:s.left-n.left+(r.pageX-s.left-o.left),y:s.top-n.top+(r.pageY-s.top-o.top)}}_getPointerPositionOnPage(t){const e=this._getViewportScrollPosition(),n=$g(t)?t.touches[0]||t.changedTouches[0]||{pageX:0,pageY:0}:t,i=n.pageX-e.left,s=n.pageY-e.top;if(this._ownerSVGElement){const t=this._ownerSVGElement.getScreenCTM();if(t){const e=this._ownerSVGElement.createSVGPoint();return e.x=i,e.y=s,e.matrixTransform(t.inverse())}}return{x:i,y:s}}_getConstrainedPointerPosition(t){const e=this._dropContainer?this._dropContainer.lockAxis:null;let{x:n,y:i}=this.constrainPosition?this.constrainPosition(t,this):t;if("x"===this.lockAxis||"x"===e?i=this._pickupPositionOnPage.y:"y"!==this.lockAxis&&"y"!==e||(n=this._pickupPositionOnPage.x),this._boundaryRect){const{x:t,y:e}=this._pickupPositionInElement,s=this._boundaryRect,r=this._previewRect,o=s.top+e,a=s.bottom-(r.height-e);n=zg(n,s.left+t,s.right-(r.width-t)),i=zg(i,o,a)}return{x:n,y:i}}_updatePointerDirectionDelta(t){const{x:e,y:n}=t,i=this._pointerDirectionDelta,s=this._pointerPositionAtLastDirectionChange,r=Math.abs(e-s.x),o=Math.abs(n-s.y);return r>this._config.pointerDirectionChangeThreshold&&(i.x=e>s.x?1:-1,s.x=e),o>this._config.pointerDirectionChangeThreshold&&(i.y=n>s.y?1:-1,s.y=n),i}_toggleNativeDragInteractions(){if(!this._rootElement||!this._handles)return;const t=this._handles.length>0||!this.isDragging();t!==this._nativeInteractionsEnabled&&(this._nativeInteractionsEnabled=t,Dg(this._rootElement,t))}_removeRootElementListeners(t){t.removeEventListener("mousedown",this._pointerDown,Lg),t.removeEventListener("touchstart",this._pointerDown,Mg)}_applyRootElementTransform(t,e){const n=Bg(t,e);null==this._initialTransform&&(this._initialTransform=this._rootElement.style.transform||""),this._rootElement.style.transform=this._initialTransform?n+" "+this._initialTransform:n}_getDragDistance(t){const e=this._pickupPositionOnPage;return e?{x:t.x-e.x,y:t.y-e.y}:{x:0,y:0}}_cleanupCachedDimensions(){this._boundaryRect=this._previewRect=void 0,this._parentPositions.clear()}_containInsideBoundaryOnResize(){let{x:t,y:e}=this._passiveTransform;if(0===t&&0===e||this.isDragging()||!this._boundaryElement)return;const n=this._boundaryElement.getBoundingClientRect(),i=this._rootElement.getBoundingClientRect();if(0===n.width&&0===n.height||0===i.width&&0===i.height)return;const s=n.left-i.left,r=i.right-n.right,o=n.top-i.top,a=i.bottom-n.bottom;n.width>i.width?(s>0&&(t+=s),r>0&&(t-=r)):t=0,n.height>i.height?(o>0&&(e+=o),a>0&&(e-=a)):e=0,t===this._passiveTransform.x&&e===this._passiveTransform.y||this.setFreeDragPosition({y:e,x:t})}_getDragStartDelay(t){const e=this.dragStartDelay;return"number"==typeof e?e:$g(t)?e.touch:e?e.mouse:0}_updateOnScroll(t){const e=this._parentPositions.handleScroll(t);if(e){const n=t.target;this._boundaryRect&&(n===this._document||n!==this._boundaryElement&&n.contains(this._boundaryElement))&&Ng(this._boundaryRect,e.top,e.left),this._pickupPositionOnPage.x+=e.left,this._pickupPositionOnPage.y+=e.top,this._dropContainer||(this._activeTransform.x-=e.left,this._activeTransform.y-=e.top,this._applyRootElementTransform(this._activeTransform.x,this._activeTransform.y))}}_getViewportScrollPosition(){const t=this._parentPositions.positions.get(this._document);return t?t.scrollPosition:this._viewportRuler.getViewportScrollPosition()}}function Bg(t,e){return`translate3d(${Math.round(t)}px, ${Math.round(e)}px, 0)`}function Hg(t){const e=t.cloneNode(!0),n=e.querySelectorAll("[id]"),i=t.querySelectorAll("canvas");e.removeAttribute("id");for(let s=0;si.appendChild(t)),i}function Gg(t,e){t.style.width=e.width+"px",t.style.height=e.height+"px",t.style.transform=Bg(e.left,e.top)}function Wg(t,e,n){const i=Zg(e,t.length-1),s=Zg(n,t.length-1);if(i===s)return;const r=t[i],o=s!0,this.beforeStarted=new E,this.entered=new E,this.exited=new E,this.dropped=new E,this.sorted=new E,this._isDragging=!1,this._itemPositions=[],this._previousSwap={drag:null,delta:0,overlaps:!1},this._siblings=[],this._orientation="vertical",this._activeSiblings=new Set,this._direction="ltr",this._viewportScrollSubscription=u.EMPTY,this._verticalScrollDirection=0,this._horizontalScrollDirection=0,this._stopScrollTimers=new E,this._cachedShadowRoot=null,this._startScrollInterval=()=>{this._stopScrolling(),function(t=0,e=gh){return(!bh(t)||t<0)&&(t=0),e&&"function"==typeof e.schedule||(e=gh),new y(n=>(n.add(e.schedule(Tg,t,{subscriber:n,counter:0,period:t})),n))}(0,wg).pipe(Ch(this._stopScrollTimers)).subscribe(()=>{const t=this._scrollNode;1===this._verticalScrollDirection?Yg(t,-2):2===this._verticalScrollDirection&&Yg(t,2),1===this._horizontalScrollDirection?Jg(t,-2):2===this._horizontalScrollDirection&&Jg(t,2)})},this.element=ch(t),this._document=n,this.withScrollableParents([this.element]),e.registerDropContainer(this),this._parentPositions=new Vg(n,s)}dispose(){this._stopScrolling(),this._stopScrollTimers.complete(),this._viewportScrollSubscription.unsubscribe(),this.beforeStarted.complete(),this.entered.complete(),this.exited.complete(),this.dropped.complete(),this.sorted.complete(),this._activeSiblings.clear(),this._scrollNode=null,this._parentPositions.clear(),this._dragDropRegistry.removeDropContainer(this)}isDragging(){return this._isDragging}start(){const t=ch(this.element).style;this.beforeStarted.next(),this._isDragging=!0,this._initialScrollSnap=t.msScrollSnapType||t.scrollSnapType||"",t.scrollSnapType=t.msScrollSnapType="none",this._cacheItems(),this._siblings.forEach(t=>t._startReceiving(this)),this._viewportScrollSubscription.unsubscribe(),this._listenToScrollEvents()}enter(t,e,n,i){let s;this.start(),null==i?(s=this.sortingDisabled?this._draggables.indexOf(t):-1,-1===s&&(s=this._getItemIndexFromPointerPosition(t,e,n))):s=i;const r=this._activeDraggables,o=r.indexOf(t),a=t.getPlaceholderElement();let l=r[s];if(l===t&&(l=r[s+1]),o>-1&&r.splice(o,1),l&&!this._dragDropRegistry.isDragging(l)){const e=l.getRootElement();e.parentElement.insertBefore(a,e),r.splice(s,0,t)}else if(this._shouldEnterAsFirstChild(e,n)){const e=r[0].getRootElement();e.parentNode.insertBefore(a,e),r.unshift(t)}else ch(this.element).appendChild(a),r.push(t);a.style.transform="",this._cacheItemPositions(),this._cacheParentPositions(),this.entered.next({item:t,container:this,currentIndex:this.getItemIndex(t)})}exit(t){this._reset(),this.exited.next({item:t,container:this})}drop(t,e,n,i,s,r){this._reset(),null==r&&(r=n.getItemIndex(t)),this.dropped.next({item:t,currentIndex:e,previousIndex:r,container:this,previousContainer:n,isPointerOverContainer:i,distance:s})}withItems(t){const e=this._draggables;return this._draggables=t,t.forEach(t=>t._withDropContainer(this)),this.isDragging()&&(e.filter(t=>t.isDragging()).every(e=>-1===t.indexOf(e))?this._reset():this._cacheItems()),this}withDirection(t){return this._direction=t,this}connectedTo(t){return this._siblings=t.slice(),this}withOrientation(t){return this._orientation=t,this}withScrollableParents(t){const e=ch(this.element);return this._scrollableElements=-1===t.indexOf(e)?[e,...t]:t.slice(),this}getScrollableParents(){return this._scrollableElements}getItemIndex(t){return this._isDragging?Kg("horizontal"===this._orientation&&"rtl"===this._direction?this._itemPositions.slice().reverse():this._itemPositions,e=>e.drag===t):this._draggables.indexOf(t)}isReceiving(){return this._activeSiblings.size>0}_sortItem(t,e,n,i){if(this.sortingDisabled||!Fg(this._clientRect,.05,e,n))return;const s=this._itemPositions,r=this._getItemIndexFromPointerPosition(t,e,n,i);if(-1===r&&s.length>0)return;const o="horizontal"===this._orientation,a=Kg(s,e=>e.drag===t),l=s[r],c=l.clientRect,h=a>r?1:-1,u=this._getItemOffsetPx(s[a].clientRect,c,h),d=this._getSiblingOffsetPx(a,s,h),p=s.slice();Wg(s,a,r),this.sorted.next({previousIndex:a,currentIndex:r,container:this,item:t}),s.forEach((e,n)=>{if(p[n]===e)return;const i=e.drag===t,s=i?u:d,r=i?t.getPlaceholderElement():e.drag.getRootElement();e.offset+=s,o?(r.style.transform=`translate3d(${Math.round(e.offset)}px, 0, 0)`,Ng(e.clientRect,0,s)):(r.style.transform=`translate3d(0, ${Math.round(e.offset)}px, 0)`,Ng(e.clientRect,s,0))}),this._previousSwap.overlaps=Rg(c,e,n),this._previousSwap.drag=l.drag,this._previousSwap.delta=o?i.x:i.y}_startScrollingIfNecessary(t,e){if(this.autoScrollDisabled)return;let n,i=0,s=0;if(this._parentPositions.positions.forEach((r,o)=>{o!==this._document&&r.clientRect&&!n&&Fg(r.clientRect,.05,t,e)&&([i,s]=function(t,e,n,i){const s=Xg(e,i),r=t_(e,n);let o=0,a=0;if(s){const e=t.scrollTop;1===s?e>0&&(o=1):t.scrollHeight-e>t.clientHeight&&(o=2)}if(r){const e=t.scrollLeft;1===r?e>0&&(a=1):t.scrollWidth-e>t.clientWidth&&(a=2)}return[o,a]}(o,r.clientRect,t,e),(i||s)&&(n=o))}),!i&&!s){const{width:r,height:o}=this._viewportRuler.getViewportSize(),a={width:r,height:o,top:0,right:r,bottom:o,left:0};i=Xg(a,e),s=t_(a,t),n=window}!n||i===this._verticalScrollDirection&&s===this._horizontalScrollDirection&&n===this._scrollNode||(this._verticalScrollDirection=i,this._horizontalScrollDirection=s,this._scrollNode=n,(i||s)&&n?this._ngZone.runOutsideAngular(this._startScrollInterval):this._stopScrolling())}_stopScrolling(){this._stopScrollTimers.next()}_cacheParentPositions(){const t=ch(this.element);this._parentPositions.cache(this._scrollableElements),this._clientRect=this._parentPositions.positions.get(t).clientRect}_cacheItemPositions(){const t="horizontal"===this._orientation;this._itemPositions=this._activeDraggables.map(t=>{const e=t.getVisibleElement();return{drag:t,offset:0,clientRect:Og(e)}}).sort((e,n)=>t?e.clientRect.left-n.clientRect.left:e.clientRect.top-n.clientRect.top)}_reset(){this._isDragging=!1;const t=ch(this.element).style;t.scrollSnapType=t.msScrollSnapType=this._initialScrollSnap,this._activeDraggables.forEach(t=>{const e=t.getRootElement();e&&(e.style.transform="")}),this._siblings.forEach(t=>t._stopReceiving(this)),this._activeDraggables=[],this._itemPositions=[],this._previousSwap.drag=null,this._previousSwap.delta=0,this._previousSwap.overlaps=!1,this._stopScrolling(),this._viewportScrollSubscription.unsubscribe(),this._parentPositions.clear()}_getSiblingOffsetPx(t,e,n){const i="horizontal"===this._orientation,s=e[t].clientRect,r=e[t+-1*n];let o=s[i?"width":"height"]*n;if(r){const t=i?"left":"top",e=i?"right":"bottom";-1===n?o-=r.clientRect[t]-s[e]:o+=s[t]-r.clientRect[e]}return o}_getItemOffsetPx(t,e,n){const i="horizontal"===this._orientation;let s=i?e.left-t.left:e.top-t.top;return-1===n&&(s+=i?e.width-t.width:e.height-t.height),s}_shouldEnterAsFirstChild(t,e){if(!this._activeDraggables.length)return!1;const n=this._itemPositions,i="horizontal"===this._orientation;if(n[0].drag!==this._activeDraggables[0]){const s=n[n.length-1].clientRect;return i?t>=s.right:e>=s.bottom}{const s=n[0].clientRect;return i?t<=s.left:e<=s.top}}_getItemIndexFromPointerPosition(t,e,n,i){const s="horizontal"===this._orientation;return Kg(this._itemPositions,({drag:r,clientRect:o},a,l)=>{if(r===t)return l.length<2;if(i){const t=s?i.x:i.y;if(r===this._previousSwap.drag&&this._previousSwap.overlaps&&t===this._previousSwap.delta)return!1}return s?e>=Math.floor(o.left)&&e=Math.floor(o.top)&&ni._canReceive(t,e,n))}_canReceive(t,e,n){if(!Rg(this._clientRect,e,n)||!this.enterPredicate(t,this))return!1;const i=this._getShadowRoot().elementFromPoint(e,n);if(!i)return!1;const s=ch(this.element);return i===s||s.contains(i)}_startReceiving(t){const e=this._activeSiblings;e.has(t)||(e.add(t),this._cacheParentPositions(),this._listenToScrollEvents())}_stopReceiving(t){this._activeSiblings.delete(t),this._viewportScrollSubscription.unsubscribe()}_listenToScrollEvents(){this._viewportScrollSubscription=this._dragDropRegistry.scroll.subscribe(t=>{if(this.isDragging()){const e=this._parentPositions.handleScroll(t);e&&(this._itemPositions.forEach(({clientRect:t})=>{Ng(t,e.top,e.left)}),this._itemPositions.forEach(({drag:t})=>{this._dragDropRegistry.isDragging(t)&&t._sortFromLastPointerPosition()}))}else this.isReceiving()&&this._cacheParentPositions()})}_getShadowRoot(){if(!this._cachedShadowRoot){const t=function(t){if(function(){if(null==rh){const t="undefined"!=typeof document?document.head:null;rh=!(!t||!t.createShadowRoot&&!t.attachShadow)}return rh}()){const e=t.getRootNode?t.getRootNode():null;if("undefined"!=typeof ShadowRoot&&ShadowRoot&&e instanceof ShadowRoot)return e}return null}(ch(this.element));this._cachedShadowRoot=t||this._document}return this._cachedShadowRoot}}function Kg(t,e){for(let n=0;n=n-r&&e<=n+r?1:e>=i-r&&e<=i+r?2:0}function t_(t,e){const{left:n,right:i,width:s}=t,r=.05*s;return e>=n-r&&e<=n+r?1:e>=i-r&&e<=i+r?2:0}const e_=oh({passive:!1,capture:!0});let n_=(()=>{class t{constructor(t,e){this._ngZone=t,this._dropInstances=new Set,this._dragInstances=new Set,this._activeDragInstances=new Set,this._globalListeners=new Map,this.pointerMove=new E,this.pointerUp=new E,this.scroll=new E,this._preventDefaultWhileDragging=t=>{this._activeDragInstances.size&&t.preventDefault()},this._document=e}registerDropContainer(t){this._dropInstances.has(t)||this._dropInstances.add(t)}registerDragItem(t){this._dragInstances.add(t),1===this._dragInstances.size&&this._ngZone.runOutsideAngular(()=>{this._document.addEventListener("touchmove",this._preventDefaultWhileDragging,e_)})}removeDropContainer(t){this._dropInstances.delete(t)}removeDragItem(t){this._dragInstances.delete(t),this.stopDragging(t),0===this._dragInstances.size&&this._document.removeEventListener("touchmove",this._preventDefaultWhileDragging,e_)}startDragging(t,e){if(!this._activeDragInstances.has(t)&&(this._activeDragInstances.add(t),1===this._activeDragInstances.size)){const t=e.type.startsWith("touch"),n=t?"touchend":"mouseup";this._globalListeners.set(t?"touchmove":"mousemove",{handler:t=>this.pointerMove.next(t),options:e_}).set(n,{handler:t=>this.pointerUp.next(t),options:!0}).set("scroll",{handler:t=>this.scroll.next(t),options:!0}).set("selectstart",{handler:this._preventDefaultWhileDragging,options:e_}),this._ngZone.runOutsideAngular(()=>{this._globalListeners.forEach((t,e)=>{this._document.addEventListener(e,t.handler,t.options)})})}}stopDragging(t){this._activeDragInstances.delete(t),0===this._activeDragInstances.size&&this._clearGlobalListeners()}isDragging(t){return this._activeDragInstances.has(t)}ngOnDestroy(){this._dragInstances.forEach(t=>this.removeDragItem(t)),this._dropInstances.forEach(t=>this.removeDropContainer(t)),this._clearGlobalListeners(),this.pointerMove.complete(),this.pointerUp.complete()}_clearGlobalListeners(){this._globalListeners.forEach((t,e)=>{this._document.removeEventListener(e,t.handler,t.options)}),this._globalListeners.clear()}}return t.\u0275fac=function(e){return new(e||t)(Wt(Vl),Wt(ac))},t.\u0275prov=ct({factory:function(){return new t(Wt(Vl),Wt(ac))},token:t,providedIn:"root"}),t})();const i_={dragStartThreshold:5,pointerDirectionChangeThreshold:5};let s_=(()=>{class t{constructor(t,e,n,i){this._document=t,this._ngZone=e,this._viewportRuler=n,this._dragDropRegistry=i}createDrag(t,e=i_){return new jg(t,e,this._document,this._ngZone,this._viewportRuler,this._dragDropRegistry)}createDropList(t){return new Qg(t,this._dragDropRegistry,this._document,this._ngZone,this._viewportRuler)}}return t.\u0275fac=function(e){return new(e||t)(Wt(ac),Wt(Vl),Wt(xg),Wt(n_))},t.\u0275prov=ct({factory:function(){return new t(Wt(ac),Wt(Vl),Wt(xg),Wt(n_))},token:t,providedIn:"root"}),t})();const r_=new Mt("CdkDropListGroup");let o_=(()=>{class t{constructor(){this._items=new Set,this._disabled=!1}get disabled(){return this._disabled}set disabled(t){this._disabled=ah(t)}ngOnDestroy(){this._items.clear()}}return t.\u0275fac=function(e){return new(e||t)},t.\u0275dir=_e({type:t,selectors:[["","cdkDropListGroup",""]],inputs:{disabled:["cdkDropListGroupDisabled","disabled"]},exportAs:["cdkDropListGroup"],features:[ta([{provide:r_,useExisting:t}])]}),t})();const a_=new Mt("CDK_DRAG_CONFIG");let l_=0;const c_=new Mt("CdkDropList");let h_=(()=>{class t{constructor(e,n,i,s,r,o,a){this.element=e,this._changeDetectorRef=i,this._dir=s,this._group=r,this._scrollDispatcher=o,this._destroyed=new E,this.connectedTo=[],this.id="cdk-drop-list-"+l_++,this.enterPredicate=()=>!0,this.dropped=new Za,this.entered=new Za,this.exited=new Za,this.sorted=new Za,this._unsortedItems=new Set,this._dropListRef=n.createDropList(e),this._dropListRef.data=this,a&&this._assignDefaults(a),this._dropListRef.enterPredicate=(t,e)=>this.enterPredicate(t.data,e.data),this._setupInputSyncSubscription(this._dropListRef),this._handleEvents(this._dropListRef),t._dropLists.push(this),r&&r._items.add(this)}get disabled(){return this._disabled||!!this._group&&this._group.disabled}set disabled(t){this._dropListRef.disabled=this._disabled=ah(t)}addItem(t){this._unsortedItems.add(t),this._dropListRef.isDragging()&&this._syncItemsWithRef()}removeItem(t){this._unsortedItems.delete(t),this._dropListRef.isDragging()&&this._syncItemsWithRef()}getSortedItems(){return Array.from(this._unsortedItems).sort((t,e)=>t._dragRef.getVisibleElement().compareDocumentPosition(e._dragRef.getVisibleElement())&Node.DOCUMENT_POSITION_FOLLOWING?-1:1)}ngOnDestroy(){const e=t._dropLists.indexOf(this);e>-1&&t._dropLists.splice(e,1),this._group&&this._group._items.delete(this),this._unsortedItems.clear(),this._dropListRef.dispose(),this._destroyed.next(),this._destroyed.complete()}_setupInputSyncSubscription(e){this._dir&&this._dir.change.pipe(Xh(this._dir.value),Ch(this._destroyed)).subscribe(t=>e.withDirection(t)),e.beforeStarted.subscribe(()=>{const n=(i=this.connectedTo,Array.isArray(i)?i:[i]).map(e=>"string"==typeof e?t._dropLists.find(t=>t.id===e):e);var i;if(this._group&&this._group._items.forEach(t=>{-1===n.indexOf(t)&&n.push(t)}),!this._scrollableParentsResolved&&this._scrollDispatcher){const t=this._scrollDispatcher.getAncestorScrollContainers(this.element).map(t=>t.getElementRef().nativeElement);this._dropListRef.withScrollableParents(t),this._scrollableParentsResolved=!0}e.disabled=this.disabled,e.lockAxis=this.lockAxis,e.sortingDisabled=ah(this.sortingDisabled),e.autoScrollDisabled=ah(this.autoScrollDisabled),e.connectedTo(n.filter(t=>t&&t!==this).map(t=>t._dropListRef)).withOrientation(this.orientation)})}_handleEvents(t){t.beforeStarted.subscribe(()=>{this._syncItemsWithRef(),this._changeDetectorRef.markForCheck()}),t.entered.subscribe(t=>{this.entered.emit({container:this,item:t.item.data,currentIndex:t.currentIndex})}),t.exited.subscribe(t=>{this.exited.emit({container:this,item:t.item.data}),this._changeDetectorRef.markForCheck()}),t.sorted.subscribe(t=>{this.sorted.emit({previousIndex:t.previousIndex,currentIndex:t.currentIndex,container:this,item:t.item.data})}),t.dropped.subscribe(t=>{this.dropped.emit({previousIndex:t.previousIndex,currentIndex:t.currentIndex,previousContainer:t.previousContainer.data,container:t.container.data,item:t.item.data,isPointerOverContainer:t.isPointerOverContainer,distance:t.distance}),this._changeDetectorRef.markForCheck()})}_assignDefaults(t){const{lockAxis:e,draggingDisabled:n,sortingDisabled:i,listAutoScrollDisabled:s,listOrientation:r}=t;this.disabled=null!=n&&n,this.sortingDisabled=null!=i&&i,this.autoScrollDisabled=null!=s&&s,this.orientation=r||"vertical",e&&(this.lockAxis=e)}_syncItemsWithRef(){this._dropListRef.withItems(this.getSortedItems().map(t=>t._dragRef))}}return t.\u0275fac=function(e){return new(e||t)(lo(sa),lo(s_),lo(Vr),lo(Qh,8),lo(r_,12),lo(Sg),lo(a_,8))},t.\u0275dir=_e({type:t,selectors:[["","cdkDropList",""],["cdk-drop-list"]],hostAttrs:[1,"cdk-drop-list"],hostVars:7,hostBindings:function(t,e){2&t&&(Bo("id",e.id),Ao("cdk-drop-list-disabled",e.disabled)("cdk-drop-list-dragging",e._dropListRef.isDragging())("cdk-drop-list-receiving",e._dropListRef.isReceiving()))},inputs:{connectedTo:["cdkDropListConnectedTo","connectedTo"],id:"id",enterPredicate:["cdkDropListEnterPredicate","enterPredicate"],disabled:["cdkDropListDisabled","disabled"],sortingDisabled:["cdkDropListSortingDisabled","sortingDisabled"],autoScrollDisabled:["cdkDropListAutoScrollDisabled","autoScrollDisabled"],orientation:["cdkDropListOrientation","orientation"],lockAxis:["cdkDropListLockAxis","lockAxis"],data:["cdkDropListData","data"]},outputs:{dropped:"cdkDropListDropped",entered:"cdkDropListEntered",exited:"cdkDropListExited",sorted:"cdkDropListSorted"},exportAs:["cdkDropList"],features:[ta([{provide:r_,useValue:void 0},{provide:c_,useExisting:t}])]}),t._dropLists=[],t})();const u_=new Mt("CDK_DRAG_PARENT"),d_=new Mt("CdkDragHandle"),p_=new Mt("CdkDragPlaceholder"),f_=new Mt("CdkDragPreview");let m_=(()=>{class t{constructor(t,e,n,i,s,r,o,a,l,c){this.element=t,this.dropContainer=e,this._document=n,this._ngZone=i,this._viewContainerRef=s,this._dir=o,this._changeDetectorRef=l,this._selfHandle=c,this._destroyed=new E,this.started=new Za,this.released=new Za,this.ended=new Za,this.entered=new Za,this.exited=new Za,this.dropped=new Za,this.moved=new y(t=>{const e=this._dragRef.moved.pipe(F(t=>({source:this,pointerPosition:t.pointerPosition,event:t.event,delta:t.delta,distance:t.distance}))).subscribe(t);return()=>{e.unsubscribe()}}),this._dragRef=a.createDrag(t,{dragStartThreshold:r&&null!=r.dragStartThreshold?r.dragStartThreshold:5,pointerDirectionChangeThreshold:r&&null!=r.pointerDirectionChangeThreshold?r.pointerDirectionChangeThreshold:5,zIndex:null==r?void 0:r.zIndex}),this._dragRef.data=this,r&&this._assignDefaults(r),e&&(this._dragRef._withDropContainer(e._dropListRef),e.addItem(this)),this._syncInputs(this._dragRef),this._handleEvents(this._dragRef)}get disabled(){return this._disabled||this.dropContainer&&this.dropContainer.disabled}set disabled(t){this._disabled=ah(t),this._dragRef.disabled=this._disabled}getPlaceholderElement(){return this._dragRef.getPlaceholderElement()}getRootElement(){return this._dragRef.getRootElement()}reset(){this._dragRef.reset()}getFreeDragPosition(){return this._dragRef.getFreeDragPosition()}ngAfterViewInit(){this._ngZone.onStable.asObservable().pipe(Bh(1),Ch(this._destroyed)).subscribe(()=>{this._updateRootElement(),this._handles.changes.pipe(Xh(this._handles),Ah(t=>{const e=t.filter(t=>t._parentDrag===this).map(t=>t.element);this._selfHandle&&this.rootElementSelector&&e.push(this.element),this._dragRef.withHandles(e)}),function t(e,n){return"function"==typeof n?i=>i.pipe(t((t,i)=>j(e(t,i)).pipe(F((e,s)=>n(t,e,i,s))))):t=>t.lift(new Cg(e))}(t=>U(...t.map(t=>t._stateChanges.pipe(Xh(t))))),Ch(this._destroyed)).subscribe(t=>{const e=this._dragRef,n=t.element.nativeElement;t.disabled?e.disableHandle(n):e.enableHandle(n)}),this.freeDragPosition&&this._dragRef.setFreeDragPosition(this.freeDragPosition)})}ngOnChanges(t){const e=t.rootElementSelector,n=t.freeDragPosition;e&&!e.firstChange&&this._updateRootElement(),n&&!n.firstChange&&this.freeDragPosition&&this._dragRef.setFreeDragPosition(this.freeDragPosition)}ngOnDestroy(){this.dropContainer&&this.dropContainer.removeItem(this),this._destroyed.next(),this._destroyed.complete(),this._dragRef.dispose()}_updateRootElement(){const t=this.element.nativeElement,e=this.rootElementSelector?g_(t,this.rootElementSelector):t;if(e&&e.nodeType!==this._document.ELEMENT_NODE)throw Error(`cdkDrag must be attached to an element node. Currently attached to "${e.nodeName}".`);this._dragRef.withRootElement(e||t)}_getBoundaryElement(){const t=this.boundaryElement;if(!t)return null;if("string"==typeof t)return g_(this.element.nativeElement,t);const e=ch(t);if(wi()&&!e.contains(this.element.nativeElement))throw Error("Draggable element is not inside of the node passed into cdkDragBoundary.");return e}_syncInputs(t){t.beforeStarted.subscribe(()=>{if(!t.isDragging()){const e=this._dir,n=this.dragStartDelay,i=this._placeholderTemplate?{template:this._placeholderTemplate.templateRef,context:this._placeholderTemplate.data,viewContainer:this._viewContainerRef}:null,s=this._previewTemplate?{template:this._previewTemplate.templateRef,context:this._previewTemplate.data,matchSize:this._previewTemplate.matchSize,viewContainer:this._viewContainerRef}:null;t.disabled=this.disabled,t.lockAxis=this.lockAxis,t.dragStartDelay="object"==typeof n&&n?n:lh(n),t.constrainPosition=this.constrainPosition,t.previewClass=this.previewClass,t.withBoundaryElement(this._getBoundaryElement()).withPlaceholderTemplate(i).withPreviewTemplate(s),e&&t.withDirection(e.value)}})}_handleEvents(t){t.started.subscribe(()=>{this.started.emit({source:this}),this._changeDetectorRef.markForCheck()}),t.released.subscribe(()=>{this.released.emit({source:this})}),t.ended.subscribe(t=>{this.ended.emit({source:this,distance:t.distance}),this._changeDetectorRef.markForCheck()}),t.entered.subscribe(t=>{this.entered.emit({container:t.container.data,item:this,currentIndex:t.currentIndex})}),t.exited.subscribe(t=>{this.exited.emit({container:t.container.data,item:this})}),t.dropped.subscribe(t=>{this.dropped.emit({previousIndex:t.previousIndex,currentIndex:t.currentIndex,previousContainer:t.previousContainer.data,container:t.container.data,isPointerOverContainer:t.isPointerOverContainer,item:this,distance:t.distance})})}_assignDefaults(t){const{lockAxis:e,dragStartDelay:n,constrainPosition:i,previewClass:s,boundaryElement:r,draggingDisabled:o,rootElementSelector:a}=t;this.disabled=null!=o&&o,this.dragStartDelay=n||0,e&&(this.lockAxis=e),i&&(this.constrainPosition=i),s&&(this.previewClass=s),r&&(this.boundaryElement=r),a&&(this.rootElementSelector=a)}}return t.\u0275fac=function(e){return new(e||t)(lo(sa),lo(c_,12),lo(ac),lo(Vl),lo(Aa),lo(a_,8),lo(Qh,8),lo(s_),lo(Vr),lo(d_,10))},t.\u0275dir=_e({type:t,selectors:[["","cdkDrag",""]],contentQueries:function(t,e,n){var i;1&t&&(ll(n,f_,!0),ll(n,p_,!0),ll(n,d_,!0)),2&t&&(rl(i=ul())&&(e._previewTemplate=i.first),rl(i=ul())&&(e._placeholderTemplate=i.first),rl(i=ul())&&(e._handles=i))},hostAttrs:[1,"cdk-drag"],hostVars:4,hostBindings:function(t,e){2&t&&Ao("cdk-drag-disabled",e.disabled)("cdk-drag-dragging",e._dragRef.isDragging())},inputs:{disabled:["cdkDragDisabled","disabled"],dragStartDelay:["cdkDragStartDelay","dragStartDelay"],lockAxis:["cdkDragLockAxis","lockAxis"],constrainPosition:["cdkDragConstrainPosition","constrainPosition"],previewClass:["cdkDragPreviewClass","previewClass"],boundaryElement:["cdkDragBoundary","boundaryElement"],rootElementSelector:["cdkDragRootElement","rootElementSelector"],data:["cdkDragData","data"],freeDragPosition:["cdkDragFreeDragPosition","freeDragPosition"]},outputs:{started:"cdkDragStarted",released:"cdkDragReleased",ended:"cdkDragEnded",entered:"cdkDragEntered",exited:"cdkDragExited",dropped:"cdkDragDropped",moved:"cdkDragMoved"},exportAs:["cdkDrag"],features:[ta([{provide:u_,useExisting:t}]),De]}),t})();function g_(t,e){let n=t.parentElement;for(;n;){if(n.matches?n.matches(e):n.msMatchesSelector(e))return n;n=n.parentElement}return null}let __=(()=>{class t{}return t.\u0275mod=me({type:t}),t.\u0275inj=ht({factory:function(e){return new(e||t)},providers:[s_],imports:[kg]}),t})(),y_=(()=>{class t{}return t.\u0275mod=me({type:t}),t.\u0275inj=ht({factory:function(e){return new(e||t)},imports:[[Jc,mg,Vm,yg,Dm,uf,__]]}),t})();function b_(t,e){if(1&t&&(uo(0,"h3",7),Vo(1),po()),2&t){const t=Co();hs(1),Mo(t.itemsTitle)}}function v_(t,e){if(1&t){const t=_o();uo(0,"mat-form-field",8),uo(1,"mat-label"),Vo(2),po(),uo(3,"input",9),bo("ngModelChange",(function(e){return Je(t),Co().filterItems(e)})),po(),uo(4,"mat-placeholder"),Vo(5),po(),po()}if(2&t){const t=Co();hs(2),jo("",t.searchPlaceholder," ",t.itemsTitle,""),hs(1),co("ngModel",t.filterText),hs(2),jo("",t.searchPlaceholder," ",t.itemsTitle,"")}}function w_(t,e){if(1&t&&(uo(0,"mat-icon",12),Vo(1),po()),2&t){const t=Co(2);Do("color",t.addIconColor),hs(1),Mo(t.addIcon)}}function C_(t,e){if(1&t){const t=_o();uo(0,"div",10),bo("click",(function(){Je(t);const n=e.$implicit,i=Co();return i.clickedItem(n[i.display],"confirmedFiltered","availableFiltered")})),ao(1,w_,2,3,"mat-icon",11),Vo(2),po()}if(2&t){const t=e.$implicit,n=Co();hs(1),co("ngIf",n.showIcons),hs(1),Lo(" ",t[n.display],"")}}function E_(t,e){if(1&t&&(uo(0,"h3",7),Vo(1),po()),2&t){const t=Co();hs(1),Mo(t.selectedItemsTitle)}}function S_(t,e){if(1&t){const t=_o();uo(0,"mat-form-field",8),uo(1,"mat-label"),Vo(2),po(),uo(3,"input",9),bo("ngModelChange",(function(e){return Je(t),Co().filterSelectedItems(e)})),po(),uo(4,"mat-placeholder"),Vo(5),po(),po()}if(2&t){const t=Co();hs(2),jo("",t.searchPlaceholder," ",t.selectedItemsTitle,""),hs(1),co("ngModel",t.filterSelectedText),hs(2),jo("",t.searchPlaceholder," ",t.itemsTitle,"")}}function x_(t,e){if(1&t&&(uo(0,"mat-icon",12),Vo(1),po()),2&t){const t=Co(2);Do("color",t.removeIconColor),hs(1),Mo(t.removeIcon)}}function k_(t,e){if(1&t){const t=_o();uo(0,"div",10),bo("click",(function(){Je(t);const n=e.$implicit,i=Co();return i.clickedItem(n[i.display],"availableFiltered","confirmedFiltered")})),ao(1,x_,2,3,"mat-icon",11),Vo(2),po()}if(2&t){const t=e.$implicit,n=Co();hs(1),co("ngIf",n.showIcons),hs(1),Lo(" ",t[n.display],"")}}const T_=function(t,e){return{"max-height":"100%","max-width":t,"min-width":e}};let I_=(()=>{class t{constructor(){this.display="name",this.width="360px",this.filter=!0,this.searchPlaceholder="Filter",this.itemsTitle="Items",this.selectedItemsTitle="Selected Items",this.header=!1,this.showIcons=!0,this.addIcon="add",this.addIconColor="black",this.removeIcon="delete",this.removeIconColor="black",this.source=[],this.destination=[],this.destinationChange=new Za,this.availableFiltered=[],this.confirmedFiltered=[],this.filterText=null,this.filterSelectedText=null}ngOnInit(){this.update()}update(){this.filterItems(this.filterText),this.filterSelectedItems(this.filterSelectedText)}drop(t){t.previousContainer===t.container?(Wg(t.container.data,t.previousIndex,t.currentIndex),console.log(t)):(function(t,e,n,i){const s=Zg(n,t.length-1),r=Zg(i,e.length);t.length&&e.splice(r,0,t.splice(s,1)[0])}(t.previousContainer.data,t.container.data,t.previousIndex,t.currentIndex),this.destination=this.confirmedFiltered,this.destinationChange.emit(this.destination))}clickedItem(t,...e){this[e[0]]=[...this[e[1]].splice(this[e[1]].findIndex(e=>e[this.display]==t),1),...this[e[0]]],this.destination=this.confirmedFiltered,this.destinationChange.emit(this.destination)}filterItems(t){this.filterText=t,this.availableFiltered=t?this.source.filter(e=>e[this.display].toLowerCase().includes(t.toLowerCase())):this.source}filterSelectedItems(t){this.filterSelectedText=t,this.confirmedFiltered=t?this.destination.filter(e=>e[this.display].toLowerCase().includes(t.toLowerCase())):this.destination}}return t.\u0275fac=function(e){return new(e||t)},t.\u0275cmp=ue({type:t,selectors:[["material-dual-listbox"]],inputs:{display:"display",width:"width",filter:"filter",searchPlaceholder:"searchPlaceholder",itemsTitle:"itemsTitle",selectedItemsTitle:"selectedItemsTitle",header:"header",showIcons:"showIcons",addIcon:"addIcon",addIconColor:"addIconColor",removeIcon:"removeIcon",removeIconColor:"removeIconColor",source:"source",destination:"destination"},outputs:{destinationChange:"destinationChange"},decls:12,vars:12,consts:[[3,"ngStyle"],["cdkDropListGroup","",1,"rck-list-container"],[1,"rck-container"],["class","rck-title",4,"ngIf"],["appearance","standard",4,"ngIf"],["cdkDropList","",1,"rck-list",3,"cdkDropListData","cdkDropListDropped"],["class","rck-box","cdkDrag","",3,"click",4,"ngFor","ngForOf"],[1,"rck-title"],["appearance","standard"],["matInput","","autocomplete","off",3,"ngModel","ngModelChange"],["cdkDrag","",1,"rck-box",3,"click"],["fxHide.xs","","mat-list-icon","",3,"color",4,"ngIf"],["fxHide.xs","","mat-list-icon",""]],template:function(t,e){var n,i,s,r,o;1&t&&(uo(0,"div",0),uo(1,"div",1),uo(2,"div",2),ao(3,b_,2,1,"h3",3),ao(4,v_,6,5,"mat-form-field",4),uo(5,"div",5),bo("cdkDropListDropped",(function(t){return e.drop(t)})),ao(6,C_,3,2,"div",6),po(),po(),uo(7,"div",2),ao(8,E_,2,1,"h3",3),ao(9,S_,6,5,"mat-form-field",4),uo(10,"div",5),bo("cdkDropListDropped",(function(t){return e.drop(t)})),ao(11,k_,3,2,"div",6),po(),po(),po(),po()),2&t&&(co("ngStyle",(n=9,i=T_,s=e.width,r=e.width,function(t,e,n,i,s,r,o){const a=e+n;return ro(t,a,s,r)?function(t,e,n){return t[e]=n}(t,a+2,o?i.call(o,s,r):i(s,r)):function(t,e){const n=t[e];return n===rs?void 0:n}(t,a+2)}(Ke(),function(){const t=Ze.lFrame;let e=t.bindingRootIndex;return-1===e&&(e=t.bindingRootIndex=t.tView.bindingStartIndex),e}(),n,i,s,r,o))),hs(3),co("ngIf",e.header),hs(1),co("ngIf",e.filter),hs(1),co("cdkDropListData",e.availableFiltered),hs(1),co("ngForOf",e.availableFiltered),hs(2),co("ngIf",e.header),hs(1),co("ngIf",e.filter),hs(1),co("cdkDropListData",e.confirmedFiltered),hs(1),co("ngForOf",e.confirmedFiltered))},directives:[vc,o_,fc,h_,dc,hf,tf,Fm,bf,xf,xm,ef,m_,fg,_g],styles:["./material-dual-listbox.component.scss",".rck-title[_ngcontent-%COMP%]{\n margin-bottom: 0px;\n }\n .rck-list-container[_ngcontent-%COMP%]{\n display: flex;\n flex-wrap: nowrap;\n }\n .rck-container[_ngcontent-%COMP%] {\n width: 180px;\n max-width: 100%;\n margin: 5px 5px 5px 5px;\n display: inline-block;\n vertical-align: top;\n }\n\n .rck-container[_ngcontent-%COMP%]:last-child{\n margin-right: 25px;\n }\n\n .rck-list[_ngcontent-%COMP%] {\n border: solid 1px #ccc;\n min-height: 60px;\n background: white;\n border-radius: 4px;\n overflow: hidden;\n display: block;\n }\n\n .rck-box[_ngcontent-%COMP%] {\n padding: 20px 20px;\n border-bottom: solid 1px #ccc;\n color: rgba(0, 0, 0, 0.87);\n display: flex;\n flex-direction: row;\n align-items: center;\n justify-content: space-between;\n box-sizing: border-box;\n cursor: move;\n background: white;\n font-size: 14px;\n }\n\n .cdk-drag-preview[_ngcontent-%COMP%] {\n box-sizing: border-box;\n border-radius: 4px;\n box-shadow: 0 5px 5px -3px rgba(0, 0, 0, 0.2),\n 0 8px 10px 1px rgba(0, 0, 0, 0.14),\n 0 3px 14px 2px rgba(0, 0, 0, 0.12);\n }\n\n .cdk-drag-placeholder[_ngcontent-%COMP%] {\n opacity: 0;\n }\n\n .cdk-drag-animating[_ngcontent-%COMP%] {\n transition: transform 250ms cubic-bezier(0, 0, 0.2, 1);\n }\n\n .rck-box[_ngcontent-%COMP%]:last-child {\n border: none;\n }\n\n .rck-list.cdk-drop-list-dragging[_ngcontent-%COMP%] .rck-box[_ngcontent-%COMP%]:not(.cdk-drag-placeholder) {\n transition: transform 250ms cubic-bezier(0, 0, 0.2, 1);\n }"]}),t})(),D_=(()=>{class t{constructor(){this.title="demo",this.source=[],this.destination=[],this.source=[{name:"one"},{name:"two"},{name:"tree"},{name:"four"}]}}return t.\u0275fac=function(e){return new(e||t)},t.\u0275cmp=ue({type:t,selectors:[["app-root"]],decls:1,vars:3,consts:[[3,"source","filter","destination","destinationChange"]],template:function(t,e){1&t&&(uo(0,"material-dual-listbox",0),bo("destinationChange",(function(t){return e.destination=t})),po()),2&t&&co("source",e.source)("filter",!0)("destination",e.destination)},directives:[I_],styles:[""]}),t})(),A_=(()=>{class t{}return t.\u0275mod=me({type:t,bootstrap:[D_]}),t.\u0275inj=ht({factory:function(e){return new(e||t)},providers:[],imports:[[Jc,y_,vp]]}),t})();(function(){if(vi)throw new Error("Cannot enable prod mode after platform setup.");bi=!1})(),Qc().bootstrapModule(A_).catch(t=>console.error(t))},zn8P:function(t,e){function n(t){return Promise.resolve().then((function(){var e=new Error("Cannot find module '"+t+"'");throw e.code="MODULE_NOT_FOUND",e}))}n.keys=function(){return[]},n.resolve=n,t.exports=n,n.id="zn8P"}},[[0,0]]]); \ No newline at end of file diff --git a/projects/demo/src/app/app.module.ts b/projects/demo/src/app/app.module.ts index 1f7f255..c411827 100644 --- a/projects/demo/src/app/app.module.ts +++ b/projects/demo/src/app/app.module.ts @@ -1,6 +1,6 @@ import { BrowserModule } from '@angular/platform-browser'; import { NgModule } from '@angular/core'; -import { MaterialDualListboxModule } from 'material-dual-listbox'; +import { MaterialDualListboxModule } from '../../../material-dual-listbox/src/lib/material-dual-listbox.module'; import { AppComponent } from './app.component'; import { BrowserAnimationsModule } from '@angular/platform-browser/animations'; diff --git a/projects/material-dual-listbox/package.json b/projects/material-dual-listbox/package.json index d9a1098..d428680 100644 --- a/projects/material-dual-listbox/package.json +++ b/projects/material-dual-listbox/package.json @@ -1,6 +1,6 @@ { "name": "material-dual-listbox", - "version": "2.0.10", + "version": "2.0.13", "description": "Simple dual listbox component to use with your Angular 10 App with Angular Material and CDK Drag and Drop.", "homepage": "https://github.com/rockaru/material-dual-listbox/blob/master/README.md", "bugs": { diff --git a/projects/material-dual-listbox/src/lib/material-dual-listbox.component.html b/projects/material-dual-listbox/src/lib/material-dual-listbox.component.html index b9ab2a5..2b508c4 100644 --- a/projects/material-dual-listbox/src/lib/material-dual-listbox.component.html +++ b/projects/material-dual-listbox/src/lib/material-dual-listbox.component.html @@ -81,7 +81,7 @@

{{itemsTitle}}

-
{{addIcon}} {{item[display]}}
+
{{addIcon}} {{item[display]}}
@@ -96,7 +96,7 @@

{{selectedItemsTitle}}

-
{{removeIcon}} {{item[display]}}
+
{{removeIcon}} {{item[display]}}
diff --git a/projects/material-dual-listbox/src/lib/material-dual-listbox.component.ts b/projects/material-dual-listbox/src/lib/material-dual-listbox.component.ts index 71b26b0..38aa013 100644 --- a/projects/material-dual-listbox/src/lib/material-dual-listbox.component.ts +++ b/projects/material-dual-listbox/src/lib/material-dual-listbox.component.ts @@ -53,9 +53,10 @@ export class MaterialDualListboxComponent implements OnInit { } } - clickedItem(item, ...targets: string[]) { + clickedItem(item: string[], ...targets: string[]) { + this[targets[0]] = [ - ...this[targets[1]].splice(this[targets[1]].indexOf(item), 1), + ...this[targets[1]].splice(this[targets[1]].findIndex(x=>x[this.display]==item), 1), ...this[targets[0]] ] this.destination = this.confirmedFiltered