mapa-library-ui 0.1.1 → 0.3.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (76) hide show
  1. package/esm2020/src/lib/components/capability/capability.mjs +2 -2
  2. package/esm2020/src/lib/components/capability/lib/components/capability/public-api.mjs +7 -1
  3. package/esm2020/src/lib/components/capability/lib/components/capability/src/capability-comparative/capability-comparative.component.mjs +39 -0
  4. package/esm2020/src/lib/components/capability/lib/components/capability/src/capability-comparative/capability-comparative.module.mjs +32 -0
  5. package/esm2020/src/lib/components/capability/lib/components/capability/src/capability-comparative-chart/capability-comparative-chart.component.mjs +21 -0
  6. package/esm2020/src/lib/components/capability/lib/components/capability/src/capability-comparative-chart/capability-comparative-chart.module.mjs +19 -0
  7. package/esm2020/src/lib/components/capability/lib/components/capability/src/capability-comparative-header/capability-comparative-header.component.mjs +20 -0
  8. package/esm2020/src/lib/components/capability/lib/components/capability/src/capability-comparative-header/capability-comparative-header.module.mjs +19 -0
  9. package/esm2020/src/lib/components/capability/lib/components/capability/src/capability-comparative-indicator/capability-comparative-indicator.component.mjs +19 -0
  10. package/esm2020/src/lib/components/capability/lib/components/capability/src/capability-comparative-indicator/capability-comparative-indicator.module.mjs +18 -0
  11. package/esm2020/src/lib/components/capability/lib/components/capability/src/capability-detail/capability-detail.component.mjs +2 -2
  12. package/esm2020/src/lib/components/capability/lib/components/capability/src/capability-dot/capability-dot.component.mjs +2 -2
  13. package/esm2020/src/lib/components/capability/lib/components/capability/src/capability-indicator/capability-indicator.component.mjs +3 -3
  14. package/esm2020/src/lib/components/capability/lib/components/capability/src/capability-indicator-chart/capability-indicator-chart.component.mjs +2 -2
  15. package/esm2020/src/lib/components/capability/lib/components/capability/src/capability-indicator-list/capability-indicator-list.component.mjs +2 -2
  16. package/esm2020/src/lib/components/capability/lib/components/capability/src/essentials/interfaces/capability-comparative.interface.mjs +2 -0
  17. package/esm2020/src/lib/components/capability/lib/components/dropdown/public-api.mjs +6 -0
  18. package/esm2020/src/lib/components/capability/lib/components/dropdown/src/dropdown.component.mjs +103 -0
  19. package/esm2020/src/lib/components/capability/lib/components/dropdown/src/dropdown.module.mjs +63 -0
  20. package/esm2020/src/lib/components/capability/lib/core/directives/custom-paginator-legacy.directive.mjs +227 -0
  21. package/esm2020/src/lib/components/capability/lib/core/directives/mat-input-autosize.directive.mjs +96 -0
  22. package/esm2020/src/lib/components/capability/lib/core/elements/dropdown.mjs +8 -0
  23. package/esm2020/src/lib/components/capability/lib/core/elements/element-base.mjs +26 -0
  24. package/esm2020/src/lib/components/capability/lib/core/elements/element-search.mjs +2 -0
  25. package/esm2020/src/lib/components/capability/lib/core/elements/errors.mjs +2 -0
  26. package/esm2020/src/lib/components/capability/lib/core/elements/input-text.mjs +8 -0
  27. package/esm2020/src/lib/components/capability/lib/core/elements/radio-button.mjs +8 -0
  28. package/esm2020/src/lib/components/capability/lib/core/elements/textarea.mjs +8 -0
  29. package/esm2020/src/lib/components/capability/lib/core/interfaces/button-icon.interface.mjs +2 -0
  30. package/esm2020/src/lib/components/capability/lib/core/interfaces/chart-options.interface.mjs +2 -0
  31. package/esm2020/src/lib/components/capability/lib/core/interfaces/dialog-data.interface.mjs +2 -0
  32. package/esm2020/src/lib/components/capability/lib/core/interfaces/option.interface.mjs +2 -0
  33. package/esm2020/src/lib/components/capability/public-api.mjs +16 -0
  34. package/esm2020/src/lib/components/table/lib/components/table/src/group-report-interface.mjs +2 -0
  35. package/esm2020/src/lib/components/table/lib/components/table/src/table.component.mjs +91 -5
  36. package/fesm2015/mapa-library-ui-src-lib-components-capability.mjs +413 -100
  37. package/fesm2015/mapa-library-ui-src-lib-components-capability.mjs.map +1 -1
  38. package/fesm2015/mapa-library-ui-src-lib-components-table.mjs +90 -4
  39. package/fesm2015/mapa-library-ui-src-lib-components-table.mjs.map +1 -1
  40. package/fesm2020/mapa-library-ui-src-lib-components-capability.mjs +411 -100
  41. package/fesm2020/mapa-library-ui-src-lib-components-capability.mjs.map +1 -1
  42. package/fesm2020/mapa-library-ui-src-lib-components-table.mjs +90 -4
  43. package/fesm2020/mapa-library-ui-src-lib-components-table.mjs.map +1 -1
  44. package/mapa-library-ui-0.3.0.tgz +0 -0
  45. package/package.json +1 -1
  46. package/src/lib/components/capability/capability.d.ts +1 -1
  47. package/src/lib/components/capability/lib/components/capability/public-api.d.ts +6 -0
  48. package/src/lib/components/capability/lib/components/capability/src/capability-comparative/capability-comparative.component.d.ts +16 -0
  49. package/src/lib/components/capability/lib/components/capability/src/capability-comparative/capability-comparative.module.d.ts +11 -0
  50. package/src/lib/components/capability/lib/components/capability/src/capability-comparative-chart/capability-comparative-chart.component.d.ts +9 -0
  51. package/src/lib/components/capability/lib/components/capability/src/capability-comparative-chart/capability-comparative-chart.module.d.ts +9 -0
  52. package/src/lib/components/capability/lib/components/capability/src/capability-comparative-header/capability-comparative-header.component.d.ts +9 -0
  53. package/src/lib/components/capability/lib/components/capability/src/capability-comparative-header/capability-comparative-header.module.d.ts +9 -0
  54. package/src/lib/components/capability/lib/components/capability/src/capability-comparative-indicator/capability-comparative-indicator.component.d.ts +9 -0
  55. package/src/lib/components/capability/lib/components/capability/src/capability-comparative-indicator/capability-comparative-indicator.module.d.ts +8 -0
  56. package/src/lib/components/capability/lib/components/capability/src/essentials/interfaces/capability-comparative.interface.d.ts +10 -0
  57. package/src/lib/components/capability/lib/components/dropdown/public-api.d.ts +2 -0
  58. package/src/lib/components/capability/lib/components/dropdown/src/dropdown.component.d.ts +30 -0
  59. package/src/lib/components/capability/lib/components/dropdown/src/dropdown.module.d.ts +13 -0
  60. package/src/lib/components/capability/lib/core/directives/custom-paginator-legacy.directive.d.ts +27 -0
  61. package/src/lib/components/capability/lib/core/directives/mat-input-autosize.directive.d.ts +26 -0
  62. package/src/lib/components/capability/lib/core/elements/dropdown.d.ts +4 -0
  63. package/src/lib/components/capability/lib/core/elements/element-base.d.ts +49 -0
  64. package/src/lib/components/capability/lib/core/elements/element-search.d.ts +6 -0
  65. package/src/lib/components/capability/lib/core/elements/errors.d.ts +7 -0
  66. package/src/lib/components/capability/lib/core/elements/input-text.d.ts +4 -0
  67. package/src/lib/components/capability/lib/core/elements/radio-button.d.ts +4 -0
  68. package/src/lib/components/capability/lib/core/elements/textarea.d.ts +4 -0
  69. package/src/lib/components/capability/lib/core/interfaces/button-icon.interface.d.ts +7 -0
  70. package/src/lib/components/capability/lib/core/interfaces/chart-options.interface.d.ts +19 -0
  71. package/src/lib/components/capability/lib/core/interfaces/dialog-data.interface.d.ts +9 -0
  72. package/src/lib/components/capability/lib/core/interfaces/option.interface.d.ts +4 -0
  73. package/src/lib/components/capability/public-api.d.ts +12 -0
  74. package/src/lib/components/table/lib/components/table/src/group-report-interface.d.ts +22 -0
  75. package/src/lib/components/table/lib/components/table/src/table.component.d.ts +16 -3
  76. package/mapa-library-ui-0.1.1.tgz +0 -0
@@ -0,0 +1,103 @@
1
+ import { Component, Input, ViewChild, ViewEncapsulation, } from "@angular/core";
2
+ import { ReplaySubject } from "rxjs/internal/ReplaySubject";
3
+ import { Subject } from "rxjs/internal/Subject";
4
+ import * as i0 from "@angular/core";
5
+ import * as i1 from "@angular/common";
6
+ import * as i2 from "@angular/forms";
7
+ import * as i3 from "@angular/material/form-field";
8
+ import * as i4 from "@angular/material/select";
9
+ import * as i5 from "@angular/material/core";
10
+ import * as i6 from "ngx-mat-select-search";
11
+ export class MapaDropdownComponent {
12
+ constructor() {
13
+ this.filteredOptions = new ReplaySubject(1);
14
+ this.filteredOptionsCache = [];
15
+ this._onDestroy = new Subject();
16
+ this.isIndeterminate = false;
17
+ this.isChecked = false;
18
+ }
19
+ ngOnInit() {
20
+ this.filteredOptionsCache = this.element.options.slice();
21
+ this.filteredOptions.next(this.filteredOptionsCache);
22
+ if (this.element.search) {
23
+ this.element.search.formControl?.valueChanges
24
+ //.pipe(takeUntil(this._onDestroy))
25
+ .subscribe(() => {
26
+ this.filterOptions();
27
+ this.setToggleAllCheckboxState();
28
+ });
29
+ }
30
+ }
31
+ ngAfterViewInit() {
32
+ this.setInitialValue();
33
+ }
34
+ ngOnDestroy() {
35
+ this._onDestroy.next();
36
+ this._onDestroy.complete();
37
+ }
38
+ filterOptions() {
39
+ if (!this.element.options) {
40
+ return;
41
+ }
42
+ // get the search keyword
43
+ let search = this.element.search?.formControl?.value;
44
+ if (!search) {
45
+ this.filteredOptionsCache = this.element.options.slice();
46
+ this.filteredOptions.next(this.filteredOptionsCache);
47
+ return;
48
+ }
49
+ // filter the options
50
+ this.filteredOptionsCache = this.element.options.filter((option) => option.value.toLowerCase().indexOf(search) > -1);
51
+ this.filteredOptions.next(this.filteredOptionsCache);
52
+ }
53
+ setInitialValue() {
54
+ this.filteredOptions
55
+ //.pipe(take(1), takeUntil(this._onDestroy))
56
+ .subscribe(() => {
57
+ this.dropdown.compareWith = (a, b) => a && b && a.id === b.id;
58
+ });
59
+ }
60
+ setToggleAllCheckboxState() {
61
+ let filteredLength = 0;
62
+ let search = this.element.search?.formControl?.value;
63
+ if (search && search.value) {
64
+ this.filteredOptionsCache.forEach(el => {
65
+ if (search.value.toLowerCase().indexOf(el) > -1) {
66
+ filteredLength++;
67
+ }
68
+ });
69
+ this.isIndeterminate = filteredLength > 0 && filteredLength < this.filteredOptionsCache.length;
70
+ this.isChecked = filteredLength > 0 && filteredLength === this.filteredOptionsCache.length;
71
+ }
72
+ }
73
+ toggleSelectAll(selectAllValue) {
74
+ this.filteredOptions
75
+ //.pipe(take(1), takeUntil(this._onDestroy))
76
+ .subscribe((options) => {
77
+ if (selectAllValue) {
78
+ this.formControl?.patchValue(options);
79
+ }
80
+ else {
81
+ this.formControl?.patchValue([]);
82
+ }
83
+ });
84
+ }
85
+ }
86
+ MapaDropdownComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: MapaDropdownComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
87
+ MapaDropdownComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.10", type: MapaDropdownComponent, selector: "mapa-dropdown", inputs: { formControl: "formControl", formControlSearch: "formControlSearch", element: "element", border: "border" }, viewQueries: [{ propertyName: "dropdown", first: true, predicate: ["dropdown"], descendants: true, static: true }], ngImport: i0, template: "<label *ngIf=\"element.label\" class=\"mapa-dropdown__label\">\n {{ element.label }}\n</label>\n<mat-form-field\n appearance=\"outline\"\n class=\"mapa-dropdown\"\n [class.mapa-dropdown--highlight]=\"border === 'highlight'\"\n [class.mapa-dropdown--soft-border]=\"border === 'soft'\"\n [class.mapa-dropdown--tag]=\"border === 'tag'\"\n [class.mapa-dropdown--labeled]=\"!!element.label\">\n <mat-select\n #dropdown\n [formControl]=\"formControl\"\n [multiple]=\"element.multiple\"\n [placeholder]=\"element.placeholder || ''\"\n >\n <mat-option *ngIf=\"element.search\" class=\"mapa-dropdown__search\">\n <ngx-mat-select-search\n *ngIf=\"element.search.formControl\"\n [showToggleAllCheckbox]=\"true\"\n [formControl]=\"element.search.formControl\"\n [placeholderLabel]=\"element.search.placeholder || ''\"\n i18n-placeholderLabel\n [noEntriesFoundLabel]=\"element.search.noEntriesFoundLabel || ''\"\n [toggleAllCheckboxIndeterminate]=\"isIndeterminate\"\n [toggleAllCheckboxChecked]=\"isChecked\"\n (toggleAll)=\"toggleSelectAll($event)\"\n ></ngx-mat-select-search>\n </mat-option>\n\n <mat-option *ngFor=\"let option of filteredOptions | async\" [value]=\"option\">\n {{ option.value }}\n </mat-option>\n </mat-select>\n <mat-error\n *ngIf=\"formControl?.hasError('required')\">\n {{ element.errors?.required }}\n </mat-error>\n <mat-error\n *ngIf=\"formControl?.hasError('minlength')\">\n {{ element.errors?.minlength }}\n </mat-error>\n <mat-error\n *ngIf=\"formControl?.hasError('cpf')\">\n {{ element.errors?.cpf }}\n </mat-error>\n <mat-error\n *ngIf=\"formControl?.hasError('cnpj')\">\n {{ element.errors?.cnpj }}\n </mat-error>\n <mat-error\n *ngIf=\"formControl?.hasError('email')\">\n {{ element.errors?.email }}\n </mat-error>\n</mat-form-field>\n", styles: [".mapa-dropdown{max-width:min-content;min-width:235px}.mapa-dropdown .mat-select{font-family:SF-Pro!important}.mapa-dropdown .mat-icon{display:flex;justify-content:center;align-items:center}.mapa-dropdown__label{display:block;font-size:12px;font-style:normal;font-weight:600;line-height:16px;text-transform:uppercase;margin-bottom:16px}.mapa-dropdown--highlight .mat-form-field-outline{border-radius:16px!important}.mapa-dropdown--highlight .mat-form-field-outline .mat-form-field-outline-start,.mapa-dropdown--highlight .mat-form-field-outline .mat-form-field-outline-end{border-width:2px!important;border-color:#eedb2a}.mapa-dropdown--highlight .mat-form-field-outline .mat-form-field-outline-start{display:none!important}.mapa-dropdown--highlight .mat-form-field-outline .mat-form-field-outline-end{border-radius:16px!important;border-left-style:solid!important}.mapa-dropdown--soft-border .mat-form-field-outline .mat-form-field-outline-start,.mapa-dropdown--soft-border .mat-form-field-outline .mat-form-field-outline-end{border-width:1px!important}.mapa-dropdown--tag .mat-form-field-outline{border-radius:16px!important}.mapa-dropdown--tag .mat-form-field-outline .mat-form-field-outline-start,.mapa-dropdown--tag .mat-form-field-outline .mat-form-field-outline-end{border-width:1px!important;border-color:#cdcdcd}.mapa-dropdown--tag .mat-form-field-outline .mat-form-field-outline-start{display:none!important}.mapa-dropdown--tag .mat-form-field-outline .mat-form-field-outline-end{border-radius:16px!important;border-left-style:solid!important}.mapa-dropdown .mat-form-field-outline{background-color:#fff;border-radius:8px}.mapa-dropdown .mat-form-field-outline .mat-form-field-outline-start,.mapa-dropdown .mat-form-field-outline .mat-form-field-outline-end{border-width:2px}.mapa-dropdown .mat-form-field-flex{display:flex;align-items:center;height:48px}.mapa-dropdown .mat-form-field-infix{border-top:unset!important;padding:unset!important}.mapa-dropdown .mat-select-trigger{min-width:50px;padding-top:.3em;height:unset!important}.mapa-dropdown .mat-select-value-text{display:block;width:90%}.mapa-dropdown .mat-select-arrow-wrapper{transform:none!important}.mapa-dropdown .mat-select-arrow{border:unset}.mapa-dropdown .mat-select-arrow:before,.mapa-dropdown .mat-select-arrow:after{content:\"\";display:block;margin-top:-4px;position:absolute;right:10px;top:50%;width:0;border:solid black;border-width:0 2px 2px 0;padding:3px;transform:rotate(45deg);-webkit-transform:rotate(45deg)}.mapa-dropdown [aria-expanded=true] .mat-select-arrow{margin:6px 0 0}.mapa-dropdown [aria-expanded=true] .mat-select-arrow:before,.mapa-dropdown [aria-expanded=true] .mat-select-arrow:after{transform:rotate(-135deg)!important;-webkit-transform:rotate(-135deg)!important}.mapa-overlay-dropdown{transform:translate(-16px) translateY(36px)!important}.mapa-overlay-dropdown .mat-select-panel{border-radius:8px;min-width:calc(100% + 24px)!important}.mapa-overlay-dropdown .mat-select-panel .mat-option,.mapa-overlay-dropdown .mat-select-panel .mat-option-text{font-family:SF-Pro!important;font-size:16px;font-style:normal;font-weight:400;line-height:2em;height:2em;color:#50575e}.mapa-overlay-dropdown .mapa-dropdown__search.mat-option{display:flex;padding:16px 8px!important;flex-direction:column;justify-content:center;align-items:center;gap:10px;align-self:stretch;background:#f6f7f7;height:unset!important}.mapa-overlay-dropdown .mapa-dropdown__search.mat-option .mat-select-search-inside-mat-option{height:unset!important;line-height:unset!important}.mapa-overlay-dropdown .mapa-dropdown__search.mat-option .mat-select-search-clear{top:-3px!important}.mapa-overlay-dropdown .mapa-dropdown__search.mat-option .mat-select-search-inner{top:8px;border:2px solid #a7aaad;border-radius:8px!important;width:100%!important}.mapa-overlay-dropdown .mapa-dropdown__search.mat-option .mat-select-search-toggle-all-checkbox{padding-left:8px!important}.mapa-overlay-dropdown .mapa-dropdown__search.mat-option .mat-select-search-input{padding:8px 8px 8px 6px!important;height:unset!important;line-height:unset!important}.mapa-overlay-dropdown .mapa-dropdown__search.mat-option .mat-select-search-input::placeholder{color:#c3c4c7!important}.mapa-overlay-dropdown .mapa-dropdown__search .mat-option-text{width:100%}.mapa-overlay-dropdown .mat-pseudo-checkbox{color:#c3c4c7!important}.mapa-overlay-dropdown .mat-checkbox-frame{border-color:#c3c4c7!important}\n"], dependencies: [{ kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i2.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { kind: "directive", type: i3.MatError, selector: "mat-error", inputs: ["id"] }, { kind: "component", type: i3.MatFormField, selector: "mat-form-field", inputs: ["color", "appearance", "hideRequiredMarker", "hintLabel", "floatLabel"], exportAs: ["matFormField"] }, { kind: "component", type: i4.MatSelect, selector: "mat-select", inputs: ["disabled", "disableRipple", "tabIndex"], exportAs: ["matSelect"] }, { kind: "component", type: i5.MatOption, selector: "mat-option", exportAs: ["matOption"] }, { kind: "component", type: i6.MatSelectSearchComponent, selector: "ngx-mat-select-search", inputs: ["placeholderLabel", "type", "closeIcon", "closeSvgIcon", "noEntriesFoundLabel", "clearSearchInput", "searching", "disableInitialFocus", "enableClearOnEscapePressed", "preventHomeEndKeyPropagation", "disableScrollToActiveOnOptionsChanged", "ariaLabel", "showToggleAllCheckbox", "toggleAllCheckboxChecked", "toggleAllCheckboxIndeterminate", "toggleAllCheckboxTooltipMessage", "toggleAllCheckboxTooltipPosition", "hideClearSearchButton", "alwaysRestoreSelectedOptionsMulti"], outputs: ["toggleAll"] }, { kind: "pipe", type: i1.AsyncPipe, name: "async" }], encapsulation: i0.ViewEncapsulation.None });
88
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: MapaDropdownComponent, decorators: [{
89
+ type: Component,
90
+ args: [{ selector: "mapa-dropdown", encapsulation: ViewEncapsulation.None, template: "<label *ngIf=\"element.label\" class=\"mapa-dropdown__label\">\n {{ element.label }}\n</label>\n<mat-form-field\n appearance=\"outline\"\n class=\"mapa-dropdown\"\n [class.mapa-dropdown--highlight]=\"border === 'highlight'\"\n [class.mapa-dropdown--soft-border]=\"border === 'soft'\"\n [class.mapa-dropdown--tag]=\"border === 'tag'\"\n [class.mapa-dropdown--labeled]=\"!!element.label\">\n <mat-select\n #dropdown\n [formControl]=\"formControl\"\n [multiple]=\"element.multiple\"\n [placeholder]=\"element.placeholder || ''\"\n >\n <mat-option *ngIf=\"element.search\" class=\"mapa-dropdown__search\">\n <ngx-mat-select-search\n *ngIf=\"element.search.formControl\"\n [showToggleAllCheckbox]=\"true\"\n [formControl]=\"element.search.formControl\"\n [placeholderLabel]=\"element.search.placeholder || ''\"\n i18n-placeholderLabel\n [noEntriesFoundLabel]=\"element.search.noEntriesFoundLabel || ''\"\n [toggleAllCheckboxIndeterminate]=\"isIndeterminate\"\n [toggleAllCheckboxChecked]=\"isChecked\"\n (toggleAll)=\"toggleSelectAll($event)\"\n ></ngx-mat-select-search>\n </mat-option>\n\n <mat-option *ngFor=\"let option of filteredOptions | async\" [value]=\"option\">\n {{ option.value }}\n </mat-option>\n </mat-select>\n <mat-error\n *ngIf=\"formControl?.hasError('required')\">\n {{ element.errors?.required }}\n </mat-error>\n <mat-error\n *ngIf=\"formControl?.hasError('minlength')\">\n {{ element.errors?.minlength }}\n </mat-error>\n <mat-error\n *ngIf=\"formControl?.hasError('cpf')\">\n {{ element.errors?.cpf }}\n </mat-error>\n <mat-error\n *ngIf=\"formControl?.hasError('cnpj')\">\n {{ element.errors?.cnpj }}\n </mat-error>\n <mat-error\n *ngIf=\"formControl?.hasError('email')\">\n {{ element.errors?.email }}\n </mat-error>\n</mat-form-field>\n", styles: [".mapa-dropdown{max-width:min-content;min-width:235px}.mapa-dropdown .mat-select{font-family:SF-Pro!important}.mapa-dropdown .mat-icon{display:flex;justify-content:center;align-items:center}.mapa-dropdown__label{display:block;font-size:12px;font-style:normal;font-weight:600;line-height:16px;text-transform:uppercase;margin-bottom:16px}.mapa-dropdown--highlight .mat-form-field-outline{border-radius:16px!important}.mapa-dropdown--highlight .mat-form-field-outline .mat-form-field-outline-start,.mapa-dropdown--highlight .mat-form-field-outline .mat-form-field-outline-end{border-width:2px!important;border-color:#eedb2a}.mapa-dropdown--highlight .mat-form-field-outline .mat-form-field-outline-start{display:none!important}.mapa-dropdown--highlight .mat-form-field-outline .mat-form-field-outline-end{border-radius:16px!important;border-left-style:solid!important}.mapa-dropdown--soft-border .mat-form-field-outline .mat-form-field-outline-start,.mapa-dropdown--soft-border .mat-form-field-outline .mat-form-field-outline-end{border-width:1px!important}.mapa-dropdown--tag .mat-form-field-outline{border-radius:16px!important}.mapa-dropdown--tag .mat-form-field-outline .mat-form-field-outline-start,.mapa-dropdown--tag .mat-form-field-outline .mat-form-field-outline-end{border-width:1px!important;border-color:#cdcdcd}.mapa-dropdown--tag .mat-form-field-outline .mat-form-field-outline-start{display:none!important}.mapa-dropdown--tag .mat-form-field-outline .mat-form-field-outline-end{border-radius:16px!important;border-left-style:solid!important}.mapa-dropdown .mat-form-field-outline{background-color:#fff;border-radius:8px}.mapa-dropdown .mat-form-field-outline .mat-form-field-outline-start,.mapa-dropdown .mat-form-field-outline .mat-form-field-outline-end{border-width:2px}.mapa-dropdown .mat-form-field-flex{display:flex;align-items:center;height:48px}.mapa-dropdown .mat-form-field-infix{border-top:unset!important;padding:unset!important}.mapa-dropdown .mat-select-trigger{min-width:50px;padding-top:.3em;height:unset!important}.mapa-dropdown .mat-select-value-text{display:block;width:90%}.mapa-dropdown .mat-select-arrow-wrapper{transform:none!important}.mapa-dropdown .mat-select-arrow{border:unset}.mapa-dropdown .mat-select-arrow:before,.mapa-dropdown .mat-select-arrow:after{content:\"\";display:block;margin-top:-4px;position:absolute;right:10px;top:50%;width:0;border:solid black;border-width:0 2px 2px 0;padding:3px;transform:rotate(45deg);-webkit-transform:rotate(45deg)}.mapa-dropdown [aria-expanded=true] .mat-select-arrow{margin:6px 0 0}.mapa-dropdown [aria-expanded=true] .mat-select-arrow:before,.mapa-dropdown [aria-expanded=true] .mat-select-arrow:after{transform:rotate(-135deg)!important;-webkit-transform:rotate(-135deg)!important}.mapa-overlay-dropdown{transform:translate(-16px) translateY(36px)!important}.mapa-overlay-dropdown .mat-select-panel{border-radius:8px;min-width:calc(100% + 24px)!important}.mapa-overlay-dropdown .mat-select-panel .mat-option,.mapa-overlay-dropdown .mat-select-panel .mat-option-text{font-family:SF-Pro!important;font-size:16px;font-style:normal;font-weight:400;line-height:2em;height:2em;color:#50575e}.mapa-overlay-dropdown .mapa-dropdown__search.mat-option{display:flex;padding:16px 8px!important;flex-direction:column;justify-content:center;align-items:center;gap:10px;align-self:stretch;background:#f6f7f7;height:unset!important}.mapa-overlay-dropdown .mapa-dropdown__search.mat-option .mat-select-search-inside-mat-option{height:unset!important;line-height:unset!important}.mapa-overlay-dropdown .mapa-dropdown__search.mat-option .mat-select-search-clear{top:-3px!important}.mapa-overlay-dropdown .mapa-dropdown__search.mat-option .mat-select-search-inner{top:8px;border:2px solid #a7aaad;border-radius:8px!important;width:100%!important}.mapa-overlay-dropdown .mapa-dropdown__search.mat-option .mat-select-search-toggle-all-checkbox{padding-left:8px!important}.mapa-overlay-dropdown .mapa-dropdown__search.mat-option .mat-select-search-input{padding:8px 8px 8px 6px!important;height:unset!important;line-height:unset!important}.mapa-overlay-dropdown .mapa-dropdown__search.mat-option .mat-select-search-input::placeholder{color:#c3c4c7!important}.mapa-overlay-dropdown .mapa-dropdown__search .mat-option-text{width:100%}.mapa-overlay-dropdown .mat-pseudo-checkbox{color:#c3c4c7!important}.mapa-overlay-dropdown .mat-checkbox-frame{border-color:#c3c4c7!important}\n"] }]
91
+ }], ctorParameters: function () { return []; }, propDecorators: { formControl: [{
92
+ type: Input
93
+ }], formControlSearch: [{
94
+ type: Input
95
+ }], element: [{
96
+ type: Input
97
+ }], border: [{
98
+ type: Input
99
+ }], dropdown: [{
100
+ type: ViewChild,
101
+ args: ["dropdown", { static: true }]
102
+ }] } });
103
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZHJvcGRvd24uY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbWFwYS1saWJyYXJ5LXVpL3NyYy9saWIvY29tcG9uZW50cy9kcm9wZG93bi9zcmMvZHJvcGRvd24uY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbWFwYS1saWJyYXJ5LXVpL3NyYy9saWIvY29tcG9uZW50cy9kcm9wZG93bi9zcmMvZHJvcGRvd24uY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUVMLFNBQVMsRUFDVCxLQUFLLEVBR0wsU0FBUyxFQUNULGlCQUFpQixHQUNsQixNQUFNLGVBQWUsQ0FBQztBQUt2QixPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sNkJBQTZCLENBQUM7QUFDNUQsT0FBTyxFQUFFLE9BQU8sRUFBRSxNQUFNLHVCQUF1QixDQUFDOzs7Ozs7OztBQVloRCxNQUFNLE9BQU8scUJBQXFCO0lBaUJoQztRQVRPLG9CQUFlLEdBQW1DLElBQUksYUFBYSxDQUV4RSxDQUFDLENBQUMsQ0FBQztRQUNLLHlCQUFvQixHQUFvQixFQUFFLENBQUM7UUFDM0MsZUFBVSxHQUFHLElBQUksT0FBTyxFQUFRLENBQUM7UUFFM0Msb0JBQWUsR0FBRyxLQUFLLENBQUM7UUFDeEIsY0FBUyxHQUFHLEtBQUssQ0FBQztJQUVILENBQUM7SUFFaEIsUUFBUTtRQUNOLElBQUksQ0FBQyxvQkFBb0IsR0FBRyxJQUFJLENBQUMsT0FBTyxDQUFDLE9BQU8sQ0FBQyxLQUFLLEVBQUUsQ0FBQztRQUN6RCxJQUFJLENBQUMsZUFBZSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsb0JBQW9CLENBQUMsQ0FBQztRQUVyRCxJQUFJLElBQUksQ0FBQyxPQUFPLENBQUMsTUFBTSxFQUFFO1lBQ3ZCLElBQUksQ0FBQyxP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RTtnQkFDbEIsSUFBSSxDQUFDLFdBQVcsRUFBRSxVQUFVLENBQUMsT0FBTyxDQUFDLENBQUM7YUFDdkM7aUJBQU07Z0JBQ0wsSUFBSSxDQUFDLFdBQVcsRUFBRSxVQUFVLENBQUMsRUFBRSxDQUFDLENBQUM7YUFDbEM7UUFDSCxDQUFDLENBQUMsQ0FBQztJQUNQLENBQUM7O21IQTlGVSxxQkFBcUI7dUdBQXJCLHFCQUFxQiwrUkMxQmxDLHkzREF1REE7NEZEN0JhLHFCQUFxQjtrQkFOakMsU0FBUzsrQkFDRSxlQUFlLGlCQUdWLGlCQUFpQixDQUFDLElBQUk7MEVBRzVCLFdBQVc7c0JBQW5CLEtBQUs7Z0JBQ0csaUJBQWlCO3NCQUF6QixLQUFLO2dCQUNHLE9BQU87c0JBQWYsS0FBSztnQkFDRyxNQUFNO3NCQUFkLEtBQUs7Z0JBRW1DLFFBQVE7c0JBQWhELFNBQVM7dUJBQUMsVUFBVSxFQUFFLEVBQUUsTUFBTSxFQUFFLElBQUksRUFBRSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIEFmdGVyVmlld0luaXQsXG4gIENvbXBvbmVudCxcbiAgSW5wdXQsXG4gIE9uRGVzdHJveSxcbiAgT25Jbml0LFxuICBWaWV3Q2hpbGQsXG4gIFZpZXdFbmNhcHN1bGF0aW9uLFxufSBmcm9tIFwiQGFuZ3VsYXIvY29yZVwiO1xuaW1wb3J0IHsgRm9ybUNvbnRyb2wgfSBmcm9tIFwiQGFuZ3VsYXIvZm9ybXNcIjtcblxuaW1wb3J0IHsgTWF0U2VsZWN0IH0gZnJvbSBcIkBhbmd1bGFyL21hdGVyaWFsL3NlbGVjdFwiO1xuXG5pbXBvcnQgeyBSZXBsYXlTdWJqZWN0IH0gZnJvbSBcInJ4anMvaW50ZXJuYWwvUmVwbGF5U3ViamVjdFwiO1xuaW1wb3J0IHsgU3ViamVjdCB9IGZyb20gXCJyeGpzL2ludGVybmFsL1N1YmplY3RcIjtcbi8vaW1wb3J0IHsgdGFrZSwgdGFrZVVudGlsIH0gZnJvbSBcInJ4anMvb3BlcmF0b3JzXCI7XG5cbmltcG9ydCB7IEVsZW1lbnRPcHRpb24gfSBmcm9tIFwiLi4vLi4vLi4vY29yZS9pbnRlcmZhY2VzL29wdGlvbi5pbnRlcmZhY2VcIjtcbmltcG9ydCB7IERyb3Bkb3duIH0gZnJvbSBcIi4uLy4uLy4uL2NvcmUvZWxlbWVudHMvZHJvcGRvd25cIjtcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiBcIm1hcGEtZHJvcGRvd25cIixcbiAgdGVtcGxhdGVVcmw6IFwiLi9kcm9wZG93bi5jb21wb25lbnQuaHRtbFwiLFxuICBzdHlsZVVybHM6IFtcIi4vZHJvcGRvd24uY29tcG9uZW50LnNjc3NcIl0sXG4gIGVuY2Fwc3VsYXRpb246IFZpZXdFbmNhcHN1bGF0aW9uLk5vbmUsXG59KVxuZXhwb3J0IGNsYXNzIE1hcGFEcm9wZG93bkNvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCwgQWZ0ZXJWaWV3SW5pdCwgT25EZXN0cm95IHtcbiAgQElucHV0KCkgZm9ybUNvbnRyb2whOiBGb3JtQ29udHJvbDtcbiAgQElucHV0KCkgZm9ybUNvbnRyb2xTZWFyY2ghOiBGb3JtQ29udHJvbDtcbiAgQElucHV0KCkgZWxlbWVudCE6IERyb3Bkb3duO1xuICBASW5wdXQoKSBib3JkZXI6IFwic29mdFwiIHwgXCJ0YWdcIiB8IFwiaGlnaGxpZ2h0XCIgfCBudWxsIHwgdW5kZWZpbmVkO1xuXG4gIEBWaWV3Q2hpbGQoXCJkcm9wZG93blwiLCB7IHN0YXRpYzogdHJ1ZSB9KSBkcm9wZG93biE6IE1hdFNlbGVjdDtcblxuICBwdWJsaWMgZmlsdGVyZWRPcHRpb25zOiBSZXBsYXlTdWJqZWN0PEVsZW1lbnRPcHRpb25bXT4gPSBuZXcgUmVwbGF5U3ViamVjdDxcbiAgICBFbGVtZW50T3B0aW9uW11cbiAgPigxKTtcbiAgcHJvdGVjdGVkIGZpbHRlcmVkT3B0aW9uc0NhY2hlOiBFbGVtZW50T3B0aW9uW10gPSBbXTtcbiAgcHJvdGVjdGVkIF9vbkRlc3Ryb3kgPSBuZXcgU3ViamVjdDx2b2lkPigpO1xuICBcbiAgaXNJbmRldGVybWluYXRlID0gZmFsc2U7XG4gIGlzQ2hlY2tlZCA9IGZhbHNlO1xuXG4gIGNvbnN0cnVjdG9yKCkge31cblxuICBuZ09uSW5pdCgpIHtcbiAgICB0aGlzLmZpbHRlcmVkT3B0aW9uc0NhY2hlID0gdGhpcy5lbGVtZW50Lm9wdGlvbnMuc2xpY2UoKTtcbiAgICB0aGlzLmZpbHRlcmVkT3B0aW9ucy5uZXh0KHRoaXMuZmlsdGVyZWRPcHRpb25zQ2FjaGUpO1xuXG4gICAgaWYgKHRoaXMuZWxlbWVudC5zZWFyY2gpIHtcbiAgICAgIHRoaXMuZWxlbWVudC5zZWFyY2guZm9ybUNvbnRyb2w/LnZhbHVlQ2hhbmdlc1xuICAgICAgICAvLy5waXBlKHRha2VVbnRpbCh0aGlzLl9vbkRlc3Ryb3kpKVxuICAgICAgICAuc3Vic2NyaWJlKCgpID0+IHtcbiAgICAgICAgICB0aGlzLmZpbHRlck9wdGlvbnMoKTtcbiAgICAgICAgICB0aGlzLnNldFRvZ2dsZUFsbENoZWNrYm94U3RhdGUoKTtcbiAgICAgICAgfSk7XG4gICAgfVxuICB9XG5cbiAgbmdBZnRlclZpZXdJbml0KCkge1xuICAgIHRoaXMuc2V0SW5pdGlhbFZhbHVlKCk7XG4gIH1cblxuICBuZ09uRGVzdHJveSgpIHtcbiAgICB0aGlzLl9vbkRlc3Ryb3kubmV4dCgpO1xuICAgIHRoaXMuX29uRGVzdHJveS5jb21wbGV0ZSgpO1xuICB9XG5cbiAgcHJvdGVjdGVkIGZpbHRlck9wdGlvbnMoKSB7XG4gICAgaWYgKCF0aGlzLmVsZW1lbnQub3B0aW9ucykge1xuICAgICAgcmV0dXJuO1xuICAgIH1cbiAgICAvLyBnZXQgdGhlIHNlYXJjaCBrZXl3b3JkXG4gICAgbGV0IHNlYXJjaCA9IHRoaXMuZWxlbWVudC5zZWFyY2g/LmZvcm1Db250cm9sPy52YWx1ZTtcbiAgICBpZiAoIXNlYXJjaCkge1xuICAgICAgdGhpcy5maWx0ZXJlZE9wdGlvbnNDYWNoZSA9IHRoaXMuZWxlbWVudC5vcHRpb25zLnNsaWNlKCk7XG4gICAgICB0aGlzLmZpbHRlcmVkT3B0aW9ucy5uZXh0KHRoaXMuZmlsdGVyZWRPcHRpb25zQ2FjaGUpO1xuICAgICAgcmV0dXJuO1xuICAgIH1cbiAgICAvLyBmaWx0ZXIgdGhlIG9wdGlvbnNcbiAgICB0aGlzLmZpbHRlcmVkT3B0aW9uc0NhY2hlID0gdGhpcy5lbGVtZW50Lm9wdGlvbnMuZmlsdGVyKFxuICAgICAgKG9wdGlvbjogRWxlbWVudE9wdGlvbikgPT5cbiAgICAgICAgb3B0aW9uLnZhbHVlLnRvTG93ZXJDYXNlKCkuaW5kZXhPZihzZWFyY2gpID4gLTFcbiAgICApO1xuICAgIHRoaXMuZmlsdGVyZWRPcHRpb25zLm5leHQodGhpcy5maWx0ZXJlZE9wdGlvbnNDYWNoZSk7XG4gIH1cblxuICBwcm90ZWN0ZWQgc2V0SW5pdGlhbFZhbHVlKCkge1xuICAgIHRoaXMuZmlsdGVyZWRPcHRpb25zXG4gICAgICAvLy5waXBlKHRha2UoMSksIHRha2VVbnRpbCh0aGlzLl9vbkRlc3Ryb3kpKVxuICAgICAgLnN1YnNjcmliZSgoKSA9PiB7XG4gICAgICAgIHRoaXMuZHJvcGRvd24uY29tcGFyZVdpdGggPSAoYTogRWxlbWVudCwgYjogRWxlbWVudCkgPT4gYSAmJiBiICYmIGEuaWQgPT09IGIuaWQ7XG4gICAgICB9KTtcbiAgfVxuXG4gIHByb3RlY3RlZCBzZXRUb2dnbGVBbGxDaGVja2JveFN0YXRlKCkge1xuICAgIGxldCBmaWx0ZXJlZExlbmd0aCA9IDA7XG4gICAgbGV0IHNlYXJjaCA9IHRoaXMuZWxlbWVudC5zZWFyY2g/LmZvcm1Db250cm9sPy52YWx1ZTtcblxuICAgIGlmIChzZWFyY2ggJiYgc2VhcmNoLnZhbHVlKSB7XG4gICAgICB0aGlzLmZpbHRlcmVkT3B0aW9uc0NhY2hlLmZvckVhY2goZWwgPT4ge1xuICAgICAgICBpZiAoc2VhcmNoLnZhbHVlLnRvTG93ZXJDYXNlKCkuaW5kZXhPZihlbCkgPiAtMSkge1xuICAgICAgICAgIGZpbHRlcmVkTGVuZ3RoKys7XG4gICAgICAgIH1cbiAgICAgIH0pO1xuICAgICAgdGhpcy5pc0luZGV0ZXJtaW5hdGUgPSBmaWx0ZXJlZExlbmd0aCA+IDAgJiYgZmlsdGVyZWRMZW5ndGggPCB0aGlzLmZpbHRlcmVkT3B0aW9uc0NhY2hlLmxlbmd0aDtcbiAgICAgIHRoaXMuaXNDaGVja2VkID0gZmlsdGVyZWRMZW5ndGggPiAwICYmIGZpbHRlcmVkTGVuZ3RoID09PSB0aGlzLmZpbHRlcmVkT3B0aW9uc0NhY2hlLmxlbmd0aDtcbiAgICB9XG4gIH1cblxuICB0b2dnbGVTZWxlY3RBbGwoc2VsZWN0QWxsVmFsdWU6IGJvb2xlYW4pIHtcbiAgICB0aGlzLmZpbHRlcmVkT3B0aW9uc1xuICAgICAgLy8ucGlwZSh0YWtlKDEpLCB0YWtlVW50aWwodGhpcy5fb25EZXN0cm95KSlcbiAgICAgIC5zdWJzY3JpYmUoKG9wdGlvbnM6IEVsZW1lbnRPcHRpb25bXSkgPT4ge1xuICAgICAgICBpZiAoc2VsZWN0QWxsVmFsdWUpIHtcbiAgICAgICAgICB0aGlzLmZvcm1Db250cm9sPy5wYXRjaFZhbHVlKG9wdGlvbnMpO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgIHRoaXMuZm9ybUNvbnRyb2w/LnBhdGNoVmFsdWUoW10pO1xuICAgICAgICB9XG4gICAgICB9KTtcbiAgfVxufVxuIiwiPGxhYmVsICpuZ0lmPVwiZWxlbWVudC5sYWJlbFwiIGNsYXNzPVwibWFwYS1kcm9wZG93bl9fbGFiZWxcIj5cbiAge3sgZWxlbWVudC5sYWJlbCB9fVxuPC9sYWJlbD5cbjxtYXQtZm9ybS1maWVsZFxuICBhcHBlYXJhbmNlPVwib3V0bGluZVwiXG4gIGNsYXNzPVwibWFwYS1kcm9wZG93blwiXG4gIFtjbGFzcy5tYXBhLWRyb3Bkb3duLS1oaWdobGlnaHRdPVwiYm9yZGVyID09PSAnaGlnaGxpZ2h0J1wiXG4gIFtjbGFzcy5tYXBhLWRyb3Bkb3duLS1zb2Z0LWJvcmRlcl09XCJib3JkZXIgPT09ICdzb2Z0J1wiXG4gIFtjbGFzcy5tYXBhLWRyb3Bkb3duLS10YWddPVwiYm9yZGVyID09PSAndGFnJ1wiXG4gIFtjbGFzcy5tYXBhLWRyb3Bkb3duLS1sYWJlbGVkXT1cIiEhZWxlbWVudC5sYWJlbFwiPlxuICA8bWF0LXNlbGVjdFxuICAgICNkcm9wZG93blxuICAgIFtmb3JtQ29udHJvbF09XCJmb3JtQ29udHJvbFwiXG4gICAgW211bHRpcGxlXT1cImVsZW1lbnQubXVsdGlwbGVcIlxuICAgIFtwbGFjZWhvbGRlcl09XCJlbGVtZW50LnBsYWNlaG9sZGVyIHx8ICcnXCJcbiAgPlxuICAgIDxtYXQtb3B0aW9uICpuZ0lmPVwiZWxlbWVudC5zZWFyY2hcIiBjbGFzcz1cIm1hcGEtZHJvcGRvd25fX3NlYXJjaFwiPlxuICAgICAgPG5neC1tYXQtc2VsZWN0LXNlYXJjaFxuICAgICAgICAqbmdJZj1cImVsZW1lbnQuc2VhcmNoLmZvcm1Db250cm9sXCJcbiAgICAgICAgW3Nob3dUb2dnbGVBbGxDaGVja2JveF09XCJ0cnVlXCJcbiAgICAgICAgW2Zvcm1Db250cm9sXT1cImVsZW1lbnQuc2VhcmNoLmZvcm1Db250cm9sXCJcbiAgICAgICAgW3BsYWNlaG9sZGVyTGFiZWxdPVwiZWxlbWVudC5zZWFyY2gucGxhY2Vob2xkZXIgfHwgJydcIlxuICAgICAgICBpMThuLXBsYWNlaG9sZGVyTGFiZWxcbiAgICAgICAgW25vRW50cmllc0ZvdW5kTGFiZWxdPVwiZWxlbWVudC5zZWFyY2gubm9FbnRyaWVzRm91bmRMYWJlbCB8fCAnJ1wiXG4gICAgICAgIFt0b2dnbGVBbGxDaGVja2JveEluZGV0ZXJtaW5hdGVdPVwiaXNJbmRldGVybWluYXRlXCJcbiAgICAgICAgW3RvZ2dsZUFsbENoZWNrYm94Q2hlY2tlZF09XCJpc0NoZWNrZWRcIlxuICAgICAgICAodG9nZ2xlQWxsKT1cInRvZ2dsZVNlbGVjdEFsbCgkZXZlbnQpXCJcbiAgICAgID48L25neC1tYXQtc2VsZWN0LXNlYXJjaD5cbiAgICA8L21hdC1vcHRpb24+XG5cbiAgICA8bWF0LW9wdGlvbiAqbmdGb3I9XCJsZXQgb3B0aW9uIG9mIGZpbHRlcmVkT3B0aW9ucyB8IGFzeW5jXCIgW3ZhbHVlXT1cIm9wdGlvblwiPlxuICAgICAge3sgb3B0aW9uLnZhbHVlIH19XG4gICAgPC9tYXQtb3B0aW9uPlxuICA8L21hdC1zZWxlY3Q+XG4gIDxtYXQtZXJyb3JcbiAgICAqbmdJZj1cImZvcm1Db250cm9sPy5oYXNFcnJvcigncmVxdWlyZWQnKVwiPlxuICAgIHt7IGVsZW1lbnQuZXJyb3JzPy5yZXF1aXJlZCB9fVxuICA8L21hdC1lcnJvcj5cbiAgPG1hdC1lcnJvclxuICAgICpuZ0lmPVwiZm9ybUNvbnRyb2w/Lmhhc0Vycm9yKCdtaW5sZW5ndGgnKVwiPlxuICAgIHt7IGVsZW1lbnQuZXJyb3JzPy5taW5sZW5ndGggfX1cbiAgPC9tYXQtZXJyb3I+XG4gIDxtYXQtZXJyb3JcbiAgICAqbmdJZj1cImZvcm1Db250cm9sPy5oYXNFcnJvcignY3BmJylcIj5cbiAgICB7eyBlbGVtZW50LmVycm9ycz8uY3BmIH19XG4gIDwvbWF0LWVycm9yPlxuICA8bWF0LWVycm9yXG4gICAgKm5nSWY9XCJmb3JtQ29udHJvbD8uaGFzRXJyb3IoJ2NucGonKVwiPlxuICAgIHt7IGVsZW1lbnQuZXJyb3JzPy5jbnBqIH19XG4gIDwvbWF0LWVycm9yPlxuICA8bWF0LWVycm9yXG4gICAgKm5nSWY9XCJmb3JtQ29udHJvbD8uaGFzRXJyb3IoJ2VtYWlsJylcIj5cbiAgICB7eyBlbGVtZW50LmVycm9ycz8uZW1haWwgfX1cbiAgPC9tYXQtZXJyb3I+XG48L21hdC1mb3JtLWZpZWxkPlxuIl19
@@ -0,0 +1,63 @@
1
+ import { NgModule } from "@angular/core";
2
+ import { CommonModule } from "@angular/common";
3
+ import { FormsModule, ReactiveFormsModule } from "@angular/forms";
4
+ import { MatListModule } from "@angular/material/list";
5
+ import { MatIconModule } from "@angular/material/icon";
6
+ import { MapaDropdownComponent } from "./dropdown.component";
7
+ import { MAT_SELECT_CONFIG, MatSelectModule } from "@angular/material/select";
8
+ import { NgxMatSelectSearchModule } from "ngx-mat-select-search";
9
+ import { MAT_FORM_FIELD_DEFAULT_OPTIONS } from "@angular/material/form-field";
10
+ import * as i0 from "@angular/core";
11
+ export class MapaDropdownModule {
12
+ }
13
+ MapaDropdownModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: MapaDropdownModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
14
+ MapaDropdownModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "15.2.10", ngImport: i0, type: MapaDropdownModule, declarations: [MapaDropdownComponent], imports: [CommonModule,
15
+ FormsModule,
16
+ ReactiveFormsModule,
17
+ MatListModule,
18
+ MatIconModule,
19
+ MatSelectModule,
20
+ NgxMatSelectSearchModule], exports: [MapaDropdownComponent] });
21
+ MapaDropdownModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: MapaDropdownModule, providers: [
22
+ {
23
+ provide: MAT_SELECT_CONFIG,
24
+ useValue: { overlayPanelClass: "mapa-overlay-dropdown" },
25
+ },
26
+ {
27
+ provide: MAT_FORM_FIELD_DEFAULT_OPTIONS,
28
+ useValue: { appearance: "outline" },
29
+ },
30
+ ], imports: [CommonModule,
31
+ FormsModule,
32
+ ReactiveFormsModule,
33
+ MatListModule,
34
+ MatIconModule,
35
+ MatSelectModule,
36
+ NgxMatSelectSearchModule] });
37
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: MapaDropdownModule, decorators: [{
38
+ type: NgModule,
39
+ args: [{
40
+ declarations: [MapaDropdownComponent],
41
+ exports: [MapaDropdownComponent],
42
+ imports: [
43
+ CommonModule,
44
+ FormsModule,
45
+ ReactiveFormsModule,
46
+ MatListModule,
47
+ MatIconModule,
48
+ MatSelectModule,
49
+ NgxMatSelectSearchModule,
50
+ ],
51
+ providers: [
52
+ {
53
+ provide: MAT_SELECT_CONFIG,
54
+ useValue: { overlayPanelClass: "mapa-overlay-dropdown" },
55
+ },
56
+ {
57
+ provide: MAT_FORM_FIELD_DEFAULT_OPTIONS,
58
+ useValue: { appearance: "outline" },
59
+ },
60
+ ],
61
+ }]
62
+ }] });
63
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZHJvcGRvd24ubW9kdWxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbWFwYS1saWJyYXJ5LXVpL3NyYy9saWIvY29tcG9uZW50cy9kcm9wZG93bi9zcmMvZHJvcGRvd24ubW9kdWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDekMsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBRS9DLE9BQU8sRUFBRSxXQUFXLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUVsRSxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFDdkQsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBRXZELE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBQzdELE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxlQUFlLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUM5RSxPQUFPLEVBQUUsd0JBQXdCLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQUNqRSxPQUFPLEVBQUUsOEJBQThCLEVBQUUsTUFBTSw4QkFBOEIsQ0FBQzs7QUF5QjlFLE1BQU0sT0FBTyxrQkFBa0I7O2dIQUFsQixrQkFBa0I7aUhBQWxCLGtCQUFrQixpQkF0QmQscUJBQXFCLGFBR2xDLFlBQVk7UUFDWixXQUFXO1FBQ1gsbUJBQW1CO1FBQ25CLGFBQWE7UUFDYixhQUFhO1FBQ2IsZUFBZTtRQUNmLHdCQUF3QixhQVJoQixxQkFBcUI7aUhBcUJwQixrQkFBa0IsYUFYbEI7UUFDVDtZQUNFLE9BQU8sRUFBRSxpQkFBaUI7WUFDMUIsUUFBUSxFQUFFLEVBQUUsaUJBQWlCLEVBQUUsdUJBQXVCLEVBQUU7U0FDekQ7UUFDRDtZQUNFLE9BQU8sRUFBRSw4QkFBOEI7WUFDdkMsUUFBUSxFQUFFLEVBQUUsVUFBVSxFQUFFLFNBQVMsRUFBRTtTQUNwQztLQUNGLFlBakJDLFlBQVk7UUFDWixXQUFXO1FBQ1gsbUJBQW1CO1FBQ25CLGFBQWE7UUFDYixhQUFhO1FBQ2IsZUFBZTtRQUNmLHdCQUF3Qjs0RkFhZixrQkFBa0I7a0JBdkI5QixRQUFRO21CQUFDO29CQUNSLFlBQVksRUFBRSxDQUFDLHFCQUFxQixDQUFDO29CQUNyQyxPQUFPLEVBQUUsQ0FBQyxxQkFBcUIsQ0FBQztvQkFDaEMsT0FBTyxFQUFFO3dCQUNQLFlBQVk7d0JBQ1osV0FBVzt3QkFDWCxtQkFBbUI7d0JBQ25CLGFBQWE7d0JBQ2IsYUFBYTt3QkFDYixlQUFlO3dCQUNmLHdCQUF3QjtxQkFDekI7b0JBQ0QsU0FBUyxFQUFFO3dCQUNUOzRCQUNFLE9BQU8sRUFBRSxpQkFBaUI7NEJBQzFCLFFBQVEsRUFBRSxFQUFFLGlCQUFpQixFQUFFLHVCQUF1QixFQUFFO3lCQUN6RDt3QkFDRDs0QkFDRSxPQUFPLEVBQUUsOEJBQThCOzRCQUN2QyxRQUFRLEVBQUUsRUFBRSxVQUFVLEVBQUUsU0FBUyxFQUFFO3lCQUNwQztxQkFDRjtpQkFDRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IE5nTW9kdWxlIH0gZnJvbSBcIkBhbmd1bGFyL2NvcmVcIjtcbmltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gXCJAYW5ndWxhci9jb21tb25cIjtcblxuaW1wb3J0IHsgRm9ybXNNb2R1bGUsIFJlYWN0aXZlRm9ybXNNb2R1bGUgfSBmcm9tIFwiQGFuZ3VsYXIvZm9ybXNcIjtcblxuaW1wb3J0IHsgTWF0TGlzdE1vZHVsZSB9IGZyb20gXCJAYW5ndWxhci9tYXRlcmlhbC9saXN0XCI7XG5pbXBvcnQgeyBNYXRJY29uTW9kdWxlIH0gZnJvbSBcIkBhbmd1bGFyL21hdGVyaWFsL2ljb25cIjtcblxuaW1wb3J0IHsgTWFwYURyb3Bkb3duQ29tcG9uZW50IH0gZnJvbSBcIi4vZHJvcGRvd24uY29tcG9uZW50XCI7XG5pbXBvcnQgeyBNQVRfU0VMRUNUX0NPTkZJRywgTWF0U2VsZWN0TW9kdWxlIH0gZnJvbSBcIkBhbmd1bGFyL21hdGVyaWFsL3NlbGVjdFwiO1xuaW1wb3J0IHsgTmd4TWF0U2VsZWN0U2VhcmNoTW9kdWxlIH0gZnJvbSBcIm5neC1tYXQtc2VsZWN0LXNlYXJjaFwiO1xuaW1wb3J0IHsgTUFUX0ZPUk1fRklFTERfREVGQVVMVF9PUFRJT05TIH0gZnJvbSBcIkBhbmd1bGFyL21hdGVyaWFsL2Zvcm0tZmllbGRcIjtcblxuQE5nTW9kdWxlKHtcbiAgZGVjbGFyYXRpb25zOiBbTWFwYURyb3Bkb3duQ29tcG9uZW50XSxcbiAgZXhwb3J0czogW01hcGFEcm9wZG93bkNvbXBvbmVudF0sXG4gIGltcG9ydHM6IFtcbiAgICBDb21tb25Nb2R1bGUsXG4gICAgRm9ybXNNb2R1bGUsXG4gICAgUmVhY3RpdmVGb3Jtc01vZHVsZSxcbiAgICBNYXRMaXN0TW9kdWxlLFxuICAgIE1hdEljb25Nb2R1bGUsXG4gICAgTWF0U2VsZWN0TW9kdWxlLFxuICAgIE5neE1hdFNlbGVjdFNlYXJjaE1vZHVsZSxcbiAgXSxcbiAgcHJvdmlkZXJzOiBbXG4gICAge1xuICAgICAgcHJvdmlkZTogTUFUX1NFTEVDVF9DT05GSUcsXG4gICAgICB1c2VWYWx1ZTogeyBvdmVybGF5UGFuZWxDbGFzczogXCJtYXBhLW92ZXJsYXktZHJvcGRvd25cIiB9LFxuICAgIH0sXG4gICAge1xuICAgICAgcHJvdmlkZTogTUFUX0ZPUk1fRklFTERfREVGQVVMVF9PUFRJT05TLFxuICAgICAgdXNlVmFsdWU6IHsgYXBwZWFyYW5jZTogXCJvdXRsaW5lXCIgfSxcbiAgICB9LFxuICBdLFxufSlcbmV4cG9ydCBjbGFzcyBNYXBhRHJvcGRvd25Nb2R1bGUge31cbiJdfQ==
@@ -0,0 +1,227 @@
1
+ import { Directive, Host, Optional, Self, } from '@angular/core';
2
+ import * as i0 from "@angular/core";
3
+ import * as i1 from "@angular/material/paginator";
4
+ export class PaginatorLegacyDirective {
5
+ constructor(matPag, ViewContainer, renderer) {
6
+ this.matPag = matPag;
7
+ this.ViewContainer = ViewContainer;
8
+ this.renderer = renderer;
9
+ this.buttons = [];
10
+ this.buildPageNumbers = () => {
11
+ let dots;
12
+ let page;
13
+ let pageDifference;
14
+ let startIndex;
15
+ let totalPages;
16
+ totalPages = this.matPag.getNumberOfPages();
17
+ // Container div with paginator elements
18
+ const actionContainer = this.ViewContainer.element.nativeElement.querySelector('div.mat-paginator-range-actions');
19
+ // Button that triggers the next page action
20
+ const nextPageNode = this.ViewContainer.element.nativeElement.querySelector('button.mat-paginator-navigation-next');
21
+ // Label showing the page range
22
+ const pageRange = this.ViewContainer.element.nativeElement.querySelector('div.mat-paginator-range-label');
23
+ let prevButtonCount = this.buttons.length;
24
+ // Remove buttons before creating new ones
25
+ if (prevButtonCount > 0) {
26
+ this.buttons.forEach((button) => {
27
+ this.renderer.removeChild(actionContainer, button);
28
+ });
29
+ // Empty state array
30
+ prevButtonCount = 0;
31
+ }
32
+ this.renderer.addClass(pageRange, 'custom-paginator-counter');
33
+ this.renderer.addClass(actionContainer, 'custom-paginator-container');
34
+ // Initialize next page and last page buttons
35
+ if (prevButtonCount === 0) {
36
+ const nodeArray = actionContainer.childNodes;
37
+ setTimeout(() => {
38
+ for (const node of nodeArray) {
39
+ if (node.nodeName === 'BUTTON') {
40
+ // Next Button styles
41
+ if (node.innerHTML.length > 100 && node.disabled) {
42
+ this.renderer.addClass(node, 'custom-paginator-arrow-disabled');
43
+ this.renderer.removeClass(node, 'custom-paginator-arrow-enabled');
44
+ }
45
+ else if (node.innerHTML.length > 100 && !node.disabled) {
46
+ this.renderer.addClass(node, 'custom-paginator-arrow-enabled');
47
+ this.renderer.removeClass(node, 'custom-paginator-arrow-disabled');
48
+ }
49
+ }
50
+ }
51
+ });
52
+ }
53
+ dots = [false, false];
54
+ if (totalPages > 0) {
55
+ this.renderer.insertBefore(actionContainer, this.createButton('0', this.matPag.pageIndex), nextPageNode);
56
+ }
57
+ page = this.showTotalPages + 2;
58
+ pageDifference = totalPages - page;
59
+ startIndex = Math.max(this.currentPage - this.showTotalPages - 2, 1);
60
+ for (let index = startIndex; index < totalPages - 1; index = index + 1) {
61
+ if ((index < page && this.currentPage <= this.showTotalPages) ||
62
+ (index >= this.rangeStart && index <= this.rangeEnd) ||
63
+ (this.currentPage > pageDifference && index >= pageDifference) ||
64
+ totalPages < this.showTotalPages + page) {
65
+ this.renderer.insertBefore(actionContainer, this.createButton(`${index}`, this.matPag.pageIndex), nextPageNode);
66
+ }
67
+ else {
68
+ if (index > this.rangeEnd && !dots[0]) {
69
+ this.renderer.insertBefore(actionContainer, this.createButton(this.pageGapTxt[0], this.matPag.pageIndex), nextPageNode);
70
+ dots[0] = true;
71
+ break;
72
+ }
73
+ if (index < this.rangeEnd && !dots[1]) {
74
+ this.renderer.insertBefore(actionContainer, this.createButton(this.pageGapTxt[1], this.matPag.pageIndex), nextPageNode);
75
+ dots[1] = true;
76
+ }
77
+ }
78
+ }
79
+ if (totalPages > 1) {
80
+ this.renderer.insertBefore(actionContainer, this.createButton(`${totalPages - 1}`, this.matPag.pageIndex), nextPageNode);
81
+ }
82
+ };
83
+ this.currentPage = 1;
84
+ this.pageGapTxt = ['•••', '---'];
85
+ this.showTotalPages = 2;
86
+ this.checkPage = [0, 0, 0];
87
+ // Display custom range label text
88
+ this.matPag._intl.getRangeLabel = (page, pageSize, length) => {
89
+ const startIndex = page * pageSize;
90
+ const endIndex = startIndex < length
91
+ ? Math.min(startIndex + pageSize, length)
92
+ : startIndex + pageSize;
93
+ if (length === 0) {
94
+ return 'Mostrando 0 – 0 de 0 item';
95
+ }
96
+ if (length === 1) {
97
+ return ('Mostrando ' +
98
+ (startIndex + 1) +
99
+ ' – ' +
100
+ endIndex +
101
+ ' de ' +
102
+ length +
103
+ ' item');
104
+ }
105
+ else {
106
+ return ('Mostrando ' +
107
+ (startIndex + 1) +
108
+ ' – ' +
109
+ endIndex +
110
+ ' de ' +
111
+ length +
112
+ ' itens');
113
+ }
114
+ };
115
+ // Subscribe to rerender buttons when next page and last page button is used
116
+ this.matPag.page.subscribe((paginator) => {
117
+ this.currentPage = paginator.pageIndex;
118
+ this.matPag.pageIndex = paginator.pageIndex;
119
+ this.initPageRange();
120
+ });
121
+ this.matPag._intl.itemsPerPageLabel = 'Itens por página';
122
+ const paginatorIntl = this.matPag._intl;
123
+ paginatorIntl.nextPageLabel = '';
124
+ paginatorIntl.previousPageLabel = '';
125
+ }
126
+ ngDoCheck() {
127
+ // Reset paginator if the pageSize, pageIndex, length changes
128
+ if (this.matPag?.length !== this.checkPage[0] ||
129
+ this.matPag?.pageSize !== this.checkPage[1] ||
130
+ this.matPag?.pageIndex !== this.checkPage[2]) {
131
+ const pageCount = this.matPag.getNumberOfPages();
132
+ if (this.currentPage > pageCount && pageCount !== 0) {
133
+ this.currentPage = 1;
134
+ this.matPag.pageIndex = 0;
135
+ }
136
+ this.currentPage = this.matPag.pageIndex;
137
+ this.initPageRange();
138
+ this.checkPage = [
139
+ this.matPag.length,
140
+ this.matPag.pageSize,
141
+ this.matPag.pageIndex,
142
+ ];
143
+ }
144
+ }
145
+ createButton(index, pageIndex) {
146
+ const linkBtn = this.renderer.createElement('button');
147
+ this.renderer.setAttribute(linkBtn, 'class', 'custom-paginator-page');
148
+ this.renderer.addClass(linkBtn, 'custom-paginator-page-enabled');
149
+ if (index === this.pageGapTxt[0] || index === this.pageGapTxt[1]) {
150
+ this.renderer.addClass(linkBtn, 'custom-paginator-arrow-enabled');
151
+ }
152
+ const pagingTxt = isNaN(+index) ? this.pageGapTxt[0] : +index + 1;
153
+ const text = this.renderer.createText(pagingTxt + '');
154
+ this.renderer.addClass(linkBtn, 'mat-custom-page');
155
+ switch (index) {
156
+ case `${pageIndex}`:
157
+ this.renderer.setAttribute(linkBtn, 'disabled', 'disabled');
158
+ this.renderer.removeClass(linkBtn, 'custom-paginator-page-enabled');
159
+ this.renderer.addClass(linkBtn, 'custom-paginator-page-disabled');
160
+ break;
161
+ case this.pageGapTxt[0]:
162
+ this.renderer.listen(linkBtn, 'click', () => {
163
+ this.switchPage(this.currentPage < this.showTotalPages + 1
164
+ ? this.showTotalPages + 2
165
+ : this.currentPage + this.showTotalPages - 1);
166
+ });
167
+ break;
168
+ case this.pageGapTxt[1]:
169
+ this.renderer.listen(linkBtn, 'click', () => {
170
+ this.switchPage(this.currentPage >
171
+ this.matPag.getNumberOfPages() - this.showTotalPages - 2
172
+ ? this.matPag.getNumberOfPages() - this.showTotalPages - 3
173
+ : this.currentPage - this.showTotalPages + 1);
174
+ });
175
+ break;
176
+ default:
177
+ this.renderer.listen(linkBtn, 'click', () => {
178
+ this.switchPage(+index);
179
+ });
180
+ break;
181
+ }
182
+ this.renderer.appendChild(linkBtn, text);
183
+ // Add button to private array for state
184
+ this.buttons.push(linkBtn);
185
+ return linkBtn;
186
+ }
187
+ /**
188
+ * @description calculates the button range based on class input parameters and based on current page index value.
189
+ */
190
+ initPageRange() {
191
+ this.rangeStart = this.currentPage - this.showTotalPages / 2;
192
+ this.rangeEnd = this.currentPage + this.showTotalPages / 2;
193
+ this.buildPageNumbers();
194
+ }
195
+ switchPage(index) {
196
+ this.matPag.pageIndex = index;
197
+ this.matPag.page.emit({
198
+ previousPageIndex: this.currentPage,
199
+ pageIndex: index,
200
+ pageSize: this.matPag.pageSize,
201
+ length: this.matPag.length,
202
+ });
203
+ this.currentPage = index;
204
+ this.initPageRange();
205
+ }
206
+ ngAfterViewInit() {
207
+ this.rangeStart = 0;
208
+ this.rangeEnd = this.showTotalPages - 1;
209
+ this.initPageRange();
210
+ }
211
+ }
212
+ PaginatorLegacyDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: PaginatorLegacyDirective, deps: [{ token: i1.MatPaginator, host: true, optional: true, self: true }, { token: i0.ViewContainerRef }, { token: i0.Renderer2 }], target: i0.ɵɵFactoryTarget.Directive });
213
+ PaginatorLegacyDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "15.2.10", type: PaginatorLegacyDirective, isStandalone: true, selector: "[appStylePaginatorMv]", ngImport: i0 });
214
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: PaginatorLegacyDirective, decorators: [{
215
+ type: Directive,
216
+ args: [{
217
+ selector: '[appStylePaginatorMv]',
218
+ standalone: true
219
+ }]
220
+ }], ctorParameters: function () { return [{ type: i1.MatPaginator, decorators: [{
221
+ type: Host
222
+ }, {
223
+ type: Self
224
+ }, {
225
+ type: Optional
226
+ }] }, { type: i0.ViewContainerRef }, { type: i0.Renderer2 }]; } });
227
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY3VzdG9tLXBhZ2luYXRvci1sZWdhY3kuZGlyZWN0aXZlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbWFwYS1saWJyYXJ5LXVpL3NyYy9saWIvY29yZS9kaXJlY3RpdmVzL2N1c3RvbS1wYWdpbmF0b3ItbGVnYWN5LmRpcmVjdGl2ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBRUwsU0FBUyxFQUVULElBQUksRUFDSixRQUFRLEVBRVIsSUFBSSxHQUVMLE1BQU0sZUFBZSxDQUFDOzs7QUFRdkIsTUFBTSxPQUFPLHdCQUF3QjtJQVNuQyxZQUMrQyxNQUFvQixFQUNoRCxhQUErQixFQUMvQixRQUFtQjtRQUZTLFdBQU0sR0FBTixNQUFNLENBQWM7UUFDaEQsa0JBQWEsR0FBYixhQUFhLENBQWtCO1FBQy9CLGFBQVEsR0FBUixRQUFRLENBQVc7UUFQOUIsWUFBTyxHQUFnQixFQUFFLENBQUM7UUFtRjFCLHFCQUFnQixHQUFHLEdBQUcsRUFBRTtZQUM5QixJQUFJLElBQWUsQ0FBQztZQUNwQixJQUFJLElBQVksQ0FBQztZQUNqQixJQUFJLGNBQXNCLENBQUM7WUFDM0IsSUFBSSxVQUFrQixDQUFDO1lBQ3ZCLElBQUksVUFBa0IsQ0FBQztZQUN2QixVQUFVLEdBQUcsSUFBSSxDQUFDLE1BQU0sQ0FBQyxnQkFBZ0IsRUFBRSxDQUFDO1lBQzVDLHdDQUF3QztZQUN4QyxNQUFNLGVBQWUsR0FDbkIsSUFBSSxDQUFDLGFBQWEsQ0FBQyxPQUFPLENBQUMsYUFBYSxDQUFDLGFBQWEsQ0FDcEQsaUNBQWlDLENBQ2xDLENBQUM7WUFDSiw0Q0FBNEM7WUFDNUMsTUFBTSxZQUFZLEdBQUcsSUFBSSxDQUFDLGFBQWEsQ0FBQyxPQUFPLENBQUMsYUFBYSxDQUFDLGFBQWEsQ0FDekUsc0NBQXNDLENBQ3ZDLENBQUM7WUFDRiwrQkFBK0I7WUFDL0IsTUFBTSxTQUFTLEdBQUcs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LFdBQVcsR0FBRyxLQUFLLENBQUM7UUFDekIsSUFBSSxDQUFDLGFBQWEsRUFBRSxDQUFDO0lBQ3ZCLENBQUM7SUFFTSxlQUFlO1FBQ3BCLElBQUksQ0FBQyxVQUFVLEdBQUcsQ0FBQyxDQUFDO1FBQ3BCLElBQUksQ0FBQyxRQUFRLEdBQUcsSUFBSSxDQUFDLGNBQWMsR0FBRyxDQUFDLENBQUM7UUFDeEMsSUFBSSxDQUFDLGFBQWEsRUFBRSxDQUFDO0lBQ3ZCLENBQUM7O3NIQWpSVSx3QkFBd0I7MEdBQXhCLHdCQUF3Qjs0RkFBeEIsd0JBQXdCO2tCQUpwQyxTQUFTO21CQUFDO29CQUNULFFBQVEsRUFBRSx1QkFBdUI7b0JBQ2pDLFVBQVUsRUFBRSxJQUFJO2lCQUNqQjs7MEJBV0ksSUFBSTs7MEJBQUksSUFBSTs7MEJBQUksUUFBUSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIEFmdGVyVmlld0luaXQsXG4gIERpcmVjdGl2ZSxcbiAgRG9DaGVjayxcbiAgSG9zdCxcbiAgT3B0aW9uYWwsXG4gIFJlbmRlcmVyMixcbiAgU2VsZixcbiAgVmlld0NvbnRhaW5lclJlZixcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBNYXRQYWdpbmF0b3IsIFBhZ2VFdmVudCB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL3BhZ2luYXRvcic7XG5pbXBvcnQgeyBNYXRCdXR0b24gfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9idXR0b24nO1xuXG5ARGlyZWN0aXZlKHtcbiAgc2VsZWN0b3I6ICdbYXBwU3R5bGVQYWdpbmF0b3JNdl0nLFxuICBzdGFuZGFsb25lOiB0cnVlXG59KVxuZXhwb3J0IGNsYXNzIFBhZ2luYXRvckxlZ2FjeURpcmVjdGl2ZSBpbXBsZW1lbnRzIERvQ2hlY2ssIEFmdGVyVmlld0luaXQge1xuICBwcml2YXRlIGN1cnJlbnRQYWdlOiBudW1iZXI7XG4gIHByaXZhdGUgcGFnZUdhcFR4dDogc3RyaW5nW107XG4gIHByaXZhdGUgcmFuZ2VTdGFydCE6IG51bWJlcjtcbiAgcHJpdmF0ZSByYW5nZUVuZCE6IG51bWJlcjtcbiAgcHJpdmF0ZSBidXR0b25zOiBNYXRCdXR0b25bXSA9IFtdO1xuICBwcml2YXRlIHNob3dUb3RhbFBhZ2VzOiBudW1iZXI7XG4gIHByaXZhdGUgY2hlY2tQYWdlOiBudW1iZXJbXTtcblxuICBjb25zdHJ1Y3RvcihcbiAgICBASG9zdCgpIEBTZWxmKCkgQE9wdGlvbmFsKCkgcHJpdmF0ZSByZWFkb25seSBtYXRQYWc6IE1hdFBhZ2luYXRvcixcbiAgICBwcml2YXRlIHJlYWRvbmx5IFZpZXdDb250YWluZXI6IFZpZXdDb250YWluZXJSZWYsXG4gICAgcHJpdmF0ZSByZWFkb25seSByZW5kZXJlcjogUmVuZGVyZXIyXG4gICkge1xuICAgIHRoaXMuY3VycmVudFBhZ2UgPSAxO1xuICAgIHRoaXMucGFnZUdhcFR4dCA9IFsn4oCi4oCi4oCiJywgJy0tLSddO1xuICAgIHRoaXMuc2hvd1RvdGFsUGFnZXMgPSAyO1xuICAgIHRoaXMuY2hlY2tQYWdlID0gWzAsIDAsIDBdO1xuICAgIC8vIERpc3BsYXkgY3VzdG9tIHJhbmdlIGxhYmVsIHRleHRcbiAgICB0aGlzLm1hdFBhZy5faW50bC5nZXRSYW5nZUxhYmVsID0gKFxuICAgICAgcGFnZTogbnVtYmVyLFxuICAgICAgcGFnZVNpemU6IG51bWJlcixcbiAgICAgIGxlbmd0aDogbnVtYmVyXG4gICAgKTogc3RyaW5nID0+IHtcbiAgICAgIGNvbnN0IHN0YXJ0SW5kZXggPSBwYWdlICogcGFnZVNpemU7XG4gICAgICBjb25zdCBlbmRJbmRleCA9XG4gICAgICAgIHN0YXJ0SW5kZXggPCBsZW5ndGhcbiAgICAgICAgICA/IE1hdGgubWluKHN0YXJ0SW5kZXggKyBwYWdlU2l6ZSwgbGVuZ3RoKVxuICAgICAgICAgIDogc3RhcnRJbmRleCArIHBhZ2VTaXplO1xuICAgICAgaWYgKGxlbmd0aCA9PT0gMCkge1xuICAgICAgICByZXR1cm4gJ01vc3RyYW5kbyAwIOKAkyAwIGRlIDAgaXRlbSc7XG4gICAgICB9XG4gICAgICBpZiAobGVuZ3RoID09PSAxKSB7XG4gICAgICAgIHJldHVybiAoXG4gICAgICAgICAgJ01vc3RyYW5kbyAnICtcbiAgICAgICAgICAoc3RhcnRJbmRleCArIDEpICtcbiAgICAgICAgICAnIOKAkyAnICtcbiAgICAgICAgICBlbmRJbmRleCArXG4gICAgICAgICAgJyBkZSAnICtcbiAgICAgICAgICBsZW5ndGggK1xuICAgICAgICAgICcgaXRlbSdcbiAgICAgICAgKTtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIHJldHVybiAoXG4gICAgICAgICAgJ01vc3RyYW5kbyAnICtcbiAgICAgICAgICAoc3RhcnRJbmRleCArIDEpICtcbiAgICAgICAgICAnIOKAkyAnICtcbiAgICAgICAgICBlbmRJbmRleCArXG4gICAgICAgICAgJyBkZSAnICtcbiAgICAgICAgICBsZW5ndGggK1xuICAgICAgICAgICcgaXRlbnMnXG4gICAgICAgICk7XG4gICAgICB9XG4gICAgfTtcbiAgICAvLyBTdWJzY3JpYmUgdG8gcmVyZW5kZXIgYnV0dG9ucyB3aGVuIG5leHQgcGFnZSBhbmQgbGFzdCBwYWdlIGJ1dHRvbiBpcyB1c2VkXG4gICAgdGhpcy5tYXRQYWcucGFnZS5zdWJzY3JpYmUoKHBhZ2luYXRvcjogUGFnZUV2ZW50KSA9PiB7XG4gICAgICB0aGlzLmN1cnJlbnRQYWdlID0gcGFnaW5hdG9yLnBhZ2VJbmRleDtcbiAgICAgIHRoaXMubWF0UGFnLnBhZ2VJbmRleCA9IHBhZ2luYXRvci5wYWdlSW5kZXg7XG4gICAgICB0aGlzLmluaXRQYWdlUmFuZ2UoKTtcbiAgICB9KTtcbiAgICB0aGlzLm1hdFBhZy5faW50bC5pdGVtc1BlclBhZ2VMYWJlbCA9ICdJdGVucyBwb3IgcMOhZ2luYSc7XG4gICAgY29uc3QgcGFnaW5hdG9ySW50bCA9IHRoaXMubWF0UGFnLl9pbnRsO1xuICAgIHBhZ2luYXRvckludGwubmV4dFBhZ2VMYWJlbCA9ICcnO1xuICAgIHBhZ2luYXRvckludGwucHJldmlvdXNQYWdlTGFiZWwgPSAnJztcbiAgfVxuXG4gIG5nRG9DaGVjaygpOiB2b2lkIHtcbiAgICAvLyBSZXNldCBwYWdpbmF0b3IgaWYgdGhlIHBhZ2VTaXplLCBwYWdlSW5kZXgsIGxlbmd0aCBjaGFuZ2VzXG4gICAgaWYgKFxuICAgICAgdGhpcy5tYXRQYWc/Lmxlbmd0aCAhPT0gdGhpcy5jaGVja1BhZ2VbMF0gfHxcbiAgICAgIHRoaXMubWF0UGFnPy5wYWdlU2l6ZSAhPT0gdGhpcy5jaGVja1BhZ2VbMV0gfHxcbiAgICAgIHRoaXMubWF0UGFnPy5wYWdlSW5kZXggIT09IHRoaXMuY2hlY2tQYWdlWzJdXG4gICAgKSB7XG4gICAgICBjb25zdCBwYWdlQ291bnQgPSB0aGlzLm1hdFBhZy5nZXROdW1iZXJPZlBhZ2VzKCk7XG4gICAgICBpZiAodGhpcy5jdXJyZW50UGFnZSA+IHBhZ2VDb3VudCAmJiBwYWdlQ291bnQgIT09IDApIHtcbiAgICAgICAgdGhpcy5jdXJyZW50UGFnZSA9IDE7XG4gICAgICAgIHRoaXMubWF0UGFnLnBhZ2VJbmRleCA9IDA7XG4gICAgICB9XG4gICAgICB0aGlzLmN1cnJlbnRQYWdlID0gdGhpcy5tYXRQYWcucGFnZUluZGV4O1xuICAgICAgdGhpcy5pbml0UGFnZVJhbmdlKCk7XG4gICAgICB0aGlzLmNoZWNrUGFnZSA9IFtcbiAgICAgICAgdGhpcy5tYXRQYWcubGVuZ3RoLFxuICAgICAgICB0aGlzLm1hdFBhZy5wYWdlU2l6ZSxcbiAgICAgICAgdGhpcy5tYXRQYWcucGFnZUluZGV4LFxuICAgICAgXTtcbiAgICB9XG4gIH1cblxuICBwcml2YXRlIGJ1aWxkUGFnZU51bWJlcnMgPSAoKSA9PiB7XG4gICAgbGV0IGRvdHM6IGJvb2xlYW5bXTtcbiAgICBsZXQgcGFnZTogbnVtYmVyO1xuICAgIGxldCBwYWdlRGlmZmVyZW5jZTogbnVtYmVyO1xuICAgIGxldCBzdGFydEluZGV4OiBudW1iZXI7XG4gICAgbGV0IHRvdGFsUGFnZXM6IG51bWJlcjtcbiAgICB0b3RhbFBhZ2VzID0gdGhpcy5tYXRQYWcuZ2V0TnVtYmVyT2ZQYWdlcygpO1xuICAgIC8vIENvbnRhaW5lciBkaXYgd2l0aCBwYWdpbmF0b3IgZWxlbWVudHNcbiAgICBjb25zdCBhY3Rpb25Db250YWluZXIgPVxuICAgICAgdGhpcy5WaWV3Q29udGFpbmVyLmVsZW1lbnQubmF0aXZlRWxlbWVudC5xdWVyeVNlbGVjdG9yKFxuICAgICAgICAnZGl2Lm1hdC1wYWdpbmF0b3ItcmFuZ2UtYWN0aW9ucydcbiAgICAgICk7XG4gICAgLy8gQnV0dG9uIHRoYXQgdHJpZ2dlcnMgdGhlIG5leHQgcGFnZSBhY3Rpb25cbiAgICBjb25zdCBuZXh0UGFnZU5vZGUgPSB0aGlzLlZpZXdDb250YWluZXIuZWxlbWVudC5uYXRpdmVFbGVtZW50LnF1ZXJ5U2VsZWN0b3IoXG4gICAgICAnYnV0dG9uLm1hdC1wYWdpbmF0b3ItbmF2aWdhdGlvbi1uZXh0J1xuICAgICk7XG4gICAgLy8gTGFiZWwgc2hvd2luZyB0aGUgcGFnZSByYW5nZVxuICAgIGNvbnN0IHBhZ2VSYW5nZSA9IHRoaXMuVmlld0NvbnRhaW5lci5lbGVtZW50Lm5hdGl2ZUVsZW1lbnQucXVlcnlTZWxlY3RvcihcbiAgICAgICdkaXYubWF0LXBhZ2luYXRvci1yYW5nZS1sYWJlbCdcbiAgICApO1xuXG4gICAgbGV0IHByZXZCdXR0b25Db3VudCA9IHRoaXMuYnV0dG9ucy5sZW5ndGg7XG5cbiAgICAvLyBSZW1vdmUgYnV0dG9ucyBiZWZvcmUgY3JlYXRpbmcgbmV3IG9uZXNcbiAgICBpZiAocHJldkJ1dHRvbkNvdW50ID4gMCkge1xuICAgICAgdGhpcy5idXR0b25zLmZvckVhY2goKGJ1dHRvbikgPT4ge1xuICAgICAgICB0aGlzLnJlbmRlcmVyLnJlbW92ZUNoaWxkKGFjdGlvbkNvbnRhaW5lciwgYnV0dG9uKTtcbiAgICAgIH0pO1xuICAgICAgLy8gRW1wdHkgc3RhdGUgYXJyYXlcbiAgICAgIHByZXZCdXR0b25Db3VudCA9IDA7XG4gICAgfVxuXG4gICAgdGhpcy5yZW5kZXJlci5hZGRDbGFzcyhwYWdlUmFuZ2UsICdjdXN0b20tcGFnaW5hdG9yLWNvdW50ZXInKTtcbiAgICB0aGlzLnJlbmRlcmVyLmFkZENsYXNzKGFjdGlvbkNvbnRhaW5lciwgJ2N1c3RvbS1wYWdpbmF0b3ItY29udGFpbmVyJyk7XG5cbiAgICAvLyBJbml0aWFsaXplIG5leHQgcGFnZSBhbmQgbGFzdCBwYWdlIGJ1dHRvbnNcbiAgICBpZiAocHJldkJ1dHRvbkNvdW50ID09PSAwKSB7XG4gICAgICBjb25zdCBub2RlQXJyYXkgPSBhY3Rpb25Db250YWluZXIuY2hpbGROb2RlcztcbiAgICAgIHNldFRpbWVvdXQoKCkgPT4ge1xuICAgICAgICBmb3IgKGNvbnN0IG5vZGUgb2Ygbm9kZUFycmF5KSB7XG4gICAgICAgICAgaWYgKG5vZGUubm9kZU5hbWUgPT09ICdCVVRUT04nKSB7XG4gICAgICAgICAgICAvLyBOZXh0IEJ1dHRvbiBzdHlsZXNcbiAgICAgICAgICAgIGlmIChub2RlLmlubmVySFRNTC5sZW5ndGggPiAxMDAgJiYgbm9kZS5kaXNhYmxlZCkge1xuICAgICAgICAgICAgICB0aGlzLnJlbmRlcmVyLmFkZENsYXNzKG5vZGUsICdjdXN0b20tcGFnaW5hdG9yLWFycm93LWRpc2FibGVkJyk7XG4gICAgICAgICAgICAgIHRoaXMucmVuZGVyZXIucmVtb3ZlQ2xhc3Mobm9kZSwgJ2N1c3RvbS1wYWdpbmF0b3ItYXJyb3ctZW5hYmxlZCcpO1xuICAgICAgICAgICAgfSBlbHNlIGlmIChub2RlLmlubmVySFRNTC5sZW5ndGggPiAxMDAgJiYgIW5vZGUuZGlzYWJsZWQpIHtcbiAgICAgICAgICAgICAgdGhpcy5yZW5kZXJlci5hZGRDbGFzcyhub2RlLCAnY3VzdG9tLXBhZ2luYXRvci1hcnJvdy1lbmFibGVkJyk7XG4gICAgICAgICAgICAgIHRoaXMucmVuZGVyZXIucmVtb3ZlQ2xhc3MoXG4gICAgICAgICAgICAgICAgbm9kZSxcbiAgICAgICAgICAgICAgICAnY3VzdG9tLXBhZ2luYXRvci1hcnJvdy1kaXNhYmxlZCdcbiAgICAgICAgICAgICAgKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH0pO1xuICAgIH1cblxuICAgIGRvdHMgPSBbZmFsc2UsIGZhbHNlXTtcblxuICAgIGlmICh0b3RhbFBhZ2VzID4gMCkge1xuICAgICAgdGhpcy5yZW5kZXJlci5pbnNlcnRCZWZvcmUoXG4gICAgICAgIGFjdGlvbkNvbnRhaW5lcixcbiAgICAgICAgdGhpcy5jcmVhdGVCdXR0b24oJzAnLCB0aGlzLm1hdFBhZy5wYWdlSW5kZXgpLFxuICAgICAgICBuZXh0UGFnZU5vZGVcbiAgICAgICk7XG4gICAgfVxuXG4gICAgcGFnZSA9IHRoaXMuc2hvd1RvdGFsUGFnZXMgKyAyO1xuICAgIHBhZ2VEaWZmZXJlbmNlID0gdG90YWxQYWdlcyAtIHBhZ2U7XG4gICAgc3RhcnRJbmRleCA9IE1hdGgubWF4KHRoaXMuY3VycmVudFBhZ2UgLSB0aGlzLnNob3dUb3RhbFBhZ2VzIC0gMiwgMSk7XG5cbiAgICBmb3IgKGxldCBpbmRleCA9IHN0YXJ0SW5kZXg7IGluZGV4IDwgdG90YWxQYWdlcyAtIDE7IGluZGV4ID0gaW5kZXggKyAxKSB7XG4gICAgICBpZiAoXG4gICAgICAgIChpbmRleCA8IHBhZ2UgJiYgdGhpcy5jdXJyZW50UGFnZSA8PSB0aGlzLnNob3dUb3RhbFBhZ2VzKSB8fFxuICAgICAgICAoaW5kZXggPj0gdGhpcy5yYW5nZVN0YXJ0ICYmIGluZGV4IDw9IHRoaXMucmFuZ2VFbmQpIHx8XG4gICAgICAgICh0aGlzLmN1cnJlbnRQYWdlID4gcGFnZURpZmZlcmVuY2UgJiYgaW5kZXggPj0gcGFnZURpZmZlcmVuY2UpIHx8XG4gICAgICAgIHRvdGFsUGFnZXMgPCB0aGlzLnNob3dUb3RhbFBhZ2VzICsgcGFnZVxuICAgICAgKSB7XG4gICAgICAgIHRoaXMucmVuZGVyZXIuaW5zZXJ0QmVmb3JlKFxuICAgICAgICAgIGFjdGlvbkNvbnRhaW5lcixcbiAgICAgICAgICB0aGlzLmNyZWF0ZUJ1dHRvbihgJHtpbmRleH1gLCB0aGlzLm1hdFBhZy5wYWdlSW5kZXgpLFxuICAgICAgICAgIG5leHRQYWdlTm9kZVxuICAgICAgICApO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgaWYgKGluZGV4ID4gdGhpcy5yYW5nZUVuZCAmJiAhZG90c1swXSkge1xuICAgICAgICAgIHRoaXMucmVuZGVyZXIuaW5zZXJ0QmVmb3JlKFxuICAgICAgICAgICAgYWN0aW9uQ29udGFpbmVyLFxuICAgICAgICAgICAgdGhpcy5jcmVhdGVCdXR0b24odGhpcy5wYWdlR2FwVHh0WzBdLCB0aGlzLm1hdFBhZy5wYWdlSW5kZXgpLFxuICAgICAgICAgICAgbmV4dFBhZ2VOb2RlXG4gICAgICAgICAgKTtcbiAgICAgICAgICBkb3RzWzBdID0gdHJ1ZTtcbiAgICAgICAgICBicmVhaztcbiAgICAgICAgfVxuICAgICAgICBpZiAoaW5kZXggPCB0aGlzLnJhbmdlRW5kICYmICFkb3RzWzFdKSB7XG4gICAgICAgICAgdGhpcy5yZW5kZXJlci5pbnNlcnRCZWZvcmUoXG4gICAgICAgICAgICBhY3Rpb25Db250YWluZXIsXG4gICAgICAgICAgICB0aGlzLmNyZWF0ZUJ1dHRvbih0aGlzLnBhZ2VHYXBUeHRbMV0sIHRoaXMubWF0UGFnLnBhZ2VJbmRleCksXG4gICAgICAgICAgICBuZXh0UGFnZU5vZGVcbiAgICAgICAgICApO1xuICAgICAgICAgIGRvdHNbMV0gPSB0cnVlO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgaWYgKHRvdGFsUGFnZXMgPiAxKSB7XG4gICAgICB0aGlzLnJlbmRlcmVyLmluc2VydEJlZm9yZShcbiAgICAgICAgYWN0aW9uQ29udGFpbmVyLFxuICAgICAgICB0aGlzLmNyZWF0ZUJ1dHRvbihgJHt0b3RhbFBhZ2VzIC0gMX1gLCB0aGlzLm1hdFBhZy5wYWdlSW5kZXgpLFxuICAgICAgICBuZXh0UGFnZU5vZGVcbiAgICAgICk7XG4gICAgfVxuICB9O1xuXG4gIHByaXZhdGUgY3JlYXRlQnV0dG9uKGluZGV4OiBzdHJpbmcsIHBhZ2VJbmRleDogbnVtYmVyKTogTWF0QnV0dG9uIHtcbiAgICBjb25zdCBsaW5rQnRuOiBNYXRCdXR0b24gPSB0aGlzLnJlbmRlcmVyLmNyZWF0ZUVsZW1lbnQoJ2J1dHRvbicpO1xuICAgIHRoaXMucmVuZGVyZXIuc2V0QXR0cmlidXRlKGxpbmtCdG4sICdjbGFzcycsICdjdXN0b20tcGFnaW5hdG9yLXBhZ2UnKTtcbiAgICB0aGlzLnJlbmRlcmVyLmFkZENsYXNzKGxpbmtCdG4sICdjdXN0b20tcGFnaW5hdG9yLXBhZ2UtZW5hYmxlZCcpO1xuICAgIGlmIChpbmRleCA9PT0gdGhpcy5wYWdlR2FwVHh0WzBdIHx8IGluZGV4ID09PSB0aGlzLnBhZ2VHYXBUeHRbMV0pIHtcbiAgICAgIHRoaXMucmVuZGVyZXIuYWRkQ2xhc3MobGlua0J0biwgJ2N1c3RvbS1wYWdpbmF0b3ItYXJyb3ctZW5hYmxlZCcpO1xuICAgIH1cbiAgICBjb25zdCBwYWdpbmdUeHQgPSBpc05hTigraW5kZXgpID8gdGhpcy5wYWdlR2FwVHh0WzBdIDogK2luZGV4ICsgMTtcbiAgICBjb25zdCB0ZXh0ID0gdGhpcy5yZW5kZXJlci5jcmVhdGVUZXh0KHBhZ2luZ1R4dCArICcnKTtcbiAgICB0aGlzLnJlbmRlcmVyLmFkZENsYXNzKGxpbmtCdG4sICdtYXQtY3VzdG9tLXBhZ2UnKTtcbiAgICBzd2l0Y2ggKGluZGV4KSB7XG4gICAgICBjYXNlIGAke3BhZ2VJbmRleH1gOlxuICAgICAgICB0aGlzLnJlbmRlcmVyLnNldEF0dHJpYnV0ZShsaW5rQnRuLCAnZGlzYWJsZWQnLCAnZGlzYWJsZWQnKTtcbiAgICAgICAgdGhpcy5yZW5kZXJlci5yZW1vdmVDbGFzcyhsaW5rQnRuLCAnY3VzdG9tLXBhZ2luYXRvci1wYWdlLWVuYWJsZWQnKTtcbiAgICAgICAgdGhpcy5yZW5kZXJlci5hZGRDbGFzcyhsaW5rQnRuLCAnY3VzdG9tLXBhZ2luYXRvci1wYWdlLWRpc2FibGVkJyk7XG4gICAgICAgIGJyZWFrO1xuICAgICAgY2FzZSB0aGlzLnBhZ2VHYXBUeHRbMF06XG4gICAgICAgIHRoaXMucmVuZGVyZXIubGlzdGVuKGxpbmtCdG4sICdjbGljaycsICgpID0+IHtcbiAgICAgICAgICB0aGlzLnN3aXRjaFBhZ2UoXG4gICAgICAgICAgICB0aGlzLmN1cnJlbnRQYWdlIDwgdGhpcy5zaG93VG90YWxQYWdlcyArIDFcbiAgICAgICAgICAgICAgPyB0aGlzLnNob3dUb3RhbFBhZ2VzICsgMlxuICAgICAgICAgICAgICA6IHRoaXMuY3VycmVudFBhZ2UgKyB0aGlzLnNob3dUb3RhbFBhZ2VzIC0gMVxuICAgICAgICAgICk7XG4gICAgICAgIH0pO1xuICAgICAgICBicmVhaztcbiAgICAgIGNhc2UgdGhpcy5wYWdlR2FwVHh0WzFdOlxuICAgICAgICB0aGlzLnJlbmRlcmVyLmxpc3RlbihsaW5rQnRuLCAnY2xpY2snLCAoKSA9PiB7XG4gICAgICAgICAgdGhpcy5zd2l0Y2hQYWdlKFxuICAgICAgICAgICAgdGhpcy5jdXJyZW50UGFnZSA+XG4gICAgICAgICAgICAgIHRoaXMubWF0UGFnLmdldE51bWJlck9mUGFnZXMoKSAtIHRoaXMuc2hvd1RvdGFsUGFnZXMgLSAyXG4gICAgICAgICAgICAgID8gdGhpcy5tYXRQYWcuZ2V0TnVtYmVyT2ZQYWdlcygpIC0gdGhpcy5zaG93VG90YWxQYWdlcyAtIDNcbiAgICAgICAgICAgICAgOiB0aGlzLmN1cnJlbnRQYWdlIC0gdGhpcy5zaG93VG90YWxQYWdlcyArIDFcbiAgICAgICAgICApO1xuICAgICAgICB9KTtcbiAgICAgICAgYnJlYWs7XG4gICAgICBkZWZhdWx0OlxuICAgICAgICB0aGlzLnJlbmRlcmVyLmxpc3RlbihsaW5rQnRuLCAnY2xpY2snLCAoKSA9PiB7XG4gICAgICAgICAgdGhpcy5zd2l0Y2hQYWdlKCtpbmRleCk7XG4gICAgICAgIH0pO1xuICAgICAgICBicmVhaztcbiAgICB9XG4gICAgdGhpcy5yZW5kZXJlci5hcHBlbmRDaGlsZChsaW5rQnRuLCB0ZXh0KTtcbiAgICAvLyBBZGQgYnV0dG9uIHRvIHByaXZhdGUgYXJyYXkgZm9yIHN0YXRlXG4gICAgdGhpcy5idXR0b25zLnB1c2gobGlua0J0bik7XG4gICAgcmV0dXJuIGxpbmtCdG47XG4gIH1cblxuICAvKipcbiAgICogQGRlc2NyaXB0aW9uIGNhbGN1bGF0ZXMgdGhlIGJ1dHRvbiByYW5nZSBiYXNlZCBvbiBjbGFzcyBpbnB1dCBwYXJhbWV0ZXJzIGFuZCBiYXNlZCBvbiBjdXJyZW50IHBhZ2UgaW5kZXggdmFsdWUuXG4gICAqL1xuICBwcml2YXRlIGluaXRQYWdlUmFuZ2UoKTogdm9pZCB7XG4gICAgdGhpcy5yYW5nZVN0YXJ0ID0gdGhpcy5jdXJyZW50UGFnZSAtIHRoaXMuc2hvd1RvdGFsUGFnZXMgLyAyO1xuICAgIHRoaXMucmFuZ2VFbmQgPSB0aGlzLmN1cnJlbnRQYWdlICsgdGhpcy5zaG93VG90YWxQYWdlcyAvIDI7XG4gICAgdGhpcy5idWlsZFBhZ2VOdW1iZXJzKCk7XG4gIH1cblxuICBwcml2YXRlIHN3aXRjaFBhZ2UoaW5kZXg6IG51bWJlcik6IHZvaWQge1xuICAgIHRoaXMubWF0UGFnLnBhZ2VJbmRleCA9IGluZGV4O1xuICAgIHRoaXMubWF0UGFnLnBhZ2UuZW1pdCh7XG4gICAgICBwcmV2aW91c1BhZ2VJbmRleDogdGhpcy5jdXJyZW50UGFnZSxcbiAgICAgIHBhZ2VJbmRleDogaW5kZXgsXG4gICAgICBwYWdlU2l6ZTogdGhpcy5tYXRQYWcucGFnZVNpemUsXG4gICAgICBsZW5ndGg6IHRoaXMubWF0UGFnLmxlbmd0aCxcbiAgICB9KTtcbiAgICB0aGlzLmN1cnJlbnRQYWdlID0gaW5kZXg7XG4gICAgdGhpcy5pbml0UGFnZVJhbmdlKCk7XG4gIH1cblxuICBwdWJsaWMgbmdBZnRlclZpZXdJbml0KCk6IHZvaWQge1xuICAgIHRoaXMucmFuZ2VTdGFydCA9IDA7XG4gICAgdGhpcy5yYW5nZUVuZCA9IHRoaXMuc2hvd1RvdGFsUGFnZXMgLSAxO1xuICAgIHRoaXMuaW5pdFBhZ2VSYW5nZSgpO1xuICB9XG59XG4iXX0=
@@ -0,0 +1,96 @@
1
+ /*
2
+ * Originally from: https://github.com/anotherkitten/mat-input-autosize
3
+ * @author: Ellie Larson (anotherkitten)
4
+ */
5
+ import { Directive, Input, Optional, Self, } from '@angular/core';
6
+ import * as i0 from "@angular/core";
7
+ import * as i1 from "@angular/material/input";
8
+ import * as i2 from "@angular/forms";
9
+ export class MatInputAutosizeDirective {
10
+ constructor(el, childMatInput, childNgModel) {
11
+ this.childMatInput = childMatInput;
12
+ this.childNgModel = childNgModel;
13
+ this.matInputAutosizeMinWidth = '120px';
14
+ this.changeHiddenText = (newValue) => {
15
+ if (this.hiddenText) {
16
+ this.hiddenText.data = newValue + ' ';
17
+ }
18
+ };
19
+ this.inputElement = el.nativeElement;
20
+ }
21
+ ngAfterViewInit() {
22
+ this.checkErrors();
23
+ this.overwriteParentWidth();
24
+ this.createHiddenTextContainer();
25
+ this.setOwnStyles();
26
+ this.subscribeToChanges();
27
+ }
28
+ ngOnDestroy() {
29
+ if (this.changeDetectSub) {
30
+ this.changeDetectSub.unsubscribe();
31
+ }
32
+ }
33
+ checkErrors() {
34
+ if (!(this.inputElement instanceof HTMLInputElement)) {
35
+ throw new Error('matInputAutosize directive must be on an input element');
36
+ }
37
+ if (!this.childMatInput) {
38
+ throw new Error('Element with matInputAutosize directive must also have the matInput directive');
39
+ }
40
+ }
41
+ overwriteParentWidth() {
42
+ Object.assign(this.inputElement.parentNode.style, {
43
+ width: '100%',
44
+ });
45
+ }
46
+ createHiddenTextContainer() {
47
+ const textContainer = document.createElement('div');
48
+ Object.assign(textContainer.style, {
49
+ display: 'inline-block',
50
+ 'max-width': this.matInputAutosizeMaxWidth || null,
51
+ 'min-width': this.matInputAutosizeMinWidth,
52
+ font: this.matInputAutosizeFontStyle || null,
53
+ visibility: 'hidden',
54
+ 'white-space': 'pre',
55
+ });
56
+ this.inputElement.parentNode?.appendChild(textContainer);
57
+ this.hiddenText = document.createTextNode(' ');
58
+ textContainer.appendChild(this.hiddenText);
59
+ }
60
+ setOwnStyles() {
61
+ Object.assign(this.inputElement.style, {
62
+ position: 'absolute',
63
+ left: '0',
64
+ });
65
+ }
66
+ subscribeToChanges() {
67
+ if (this.childNgModel) {
68
+ this.changeDetectSub = this.childNgModel.control.valueChanges.subscribe(this.changeHiddenText);
69
+ }
70
+ else {
71
+ this.inputElement.addEventListener('input', () => this.changeHiddenText(this.inputElement.value));
72
+ }
73
+ }
74
+ }
75
+ MatInputAutosizeDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: MatInputAutosizeDirective, deps: [{ token: i0.ElementRef }, { token: i1.MatInput, self: true }, { token: i2.NgModel, optional: true, self: true }], target: i0.ɵɵFactoryTarget.Directive });
76
+ MatInputAutosizeDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "15.2.10", type: MatInputAutosizeDirective, isStandalone: true, selector: "[matInputAutosize]", inputs: { matInputAutosizeMaxWidth: "matInputAutosizeMaxWidth", matInputAutosizeMinWidth: "matInputAutosizeMinWidth", matInputAutosizeFontStyle: "matInputAutosizeFontStyle" }, ngImport: i0 });
77
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: MatInputAutosizeDirective, decorators: [{
78
+ type: Directive,
79
+ args: [{
80
+ selector: '[matInputAutosize]',
81
+ standalone: true,
82
+ }]
83
+ }], ctorParameters: function () { return [{ type: i0.ElementRef }, { type: i1.MatInput, decorators: [{
84
+ type: Self
85
+ }] }, { type: i2.NgModel, decorators: [{
86
+ type: Optional
87
+ }, {
88
+ type: Self
89
+ }] }]; }, propDecorators: { matInputAutosizeMaxWidth: [{
90
+ type: Input
91
+ }], matInputAutosizeMinWidth: [{
92
+ type: Input
93
+ }], matInputAutosizeFontStyle: [{
94
+ type: Input
95
+ }] } });
96
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWF0LWlucHV0LWF1dG9zaXplLmRpcmVjdGl2ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL21hcGEtbGlicmFyeS11aS9zcmMvbGliL2NvcmUvZGlyZWN0aXZlcy9tYXQtaW5wdXQtYXV0b3NpemUuZGlyZWN0aXZlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOzs7RUFHRTtBQUVGLE9BQU8sRUFFTCxTQUFTLEVBRVQsS0FBSyxFQUVMLFFBQVEsRUFDUixJQUFJLEdBQ0wsTUFBTSxlQUFlLENBQUM7Ozs7QUFTdkIsTUFBTSxPQUFPLHlCQUF5QjtJQVNwQyxZQUNFLEVBQWdDLEVBQ2hCLGFBQXVCLEVBQ1gsWUFBcUI7UUFEakMsa0JBQWEsR0FBYixhQUFhLENBQVU7UUFDWCxpQkFBWSxHQUFaLFlBQVksQ0FBUztRQU4xQyw2QkFBd0IsR0FBRyxPQUFPLENBQUM7UUE4RTVDLHFCQUFnQixHQUFHLENBQUMsUUFBZ0IsRUFBUSxFQUFFO1lBQzVDLElBQUksSUFBSSxDQUFDLFVBQVUsRUFBRTtnQkFDbkIsSUFBSSxDQUFDLFVBQVUsQ0FBQyxJQUFJLEdBQUcsUUFBUSxHQUFHLEdBQUcsQ0FBQzthQUN2QztRQUNILENBQUMsQ0FBQztRQTFFQSxJQUFJLENBQUMsWUFBWSxHQUFHLEVBQUUsQ0FBQyxhQUFhLENBQUM7SUFDdkMsQ0FBQztJQUVELGVBQWU7UUFDYixJQUFJLENBQUMsV0FBVyxFQUFFLENBQUM7UUFDbkIsSUFBSSxDQUFDLG9CQUFvQixFQUFFLENBQUM7UUFDNUIsSUFBSSxDQUFDLHlCQUF5QixFQUFFLENBQUM7UUFDakMsSUFBSSxDQUFDLFlBQVksRUFBRSxDQUFDO1FBQ3BCLElBQUksQ0FBQyxrQkFBa0IsRUFBRSxDQUFDO0lBQzVCLENBQUM7SUFFRCxXQUFXO1FBQ1QsSUFBSSxJQUFJLENBQUMsZUFBZSxFQUFFO1lBQ3hCLElBQUksQ0FBQyxlQUFlLENBQUMsV0FBVyxFQUFFLENBQUM7U0FDcEM7SUFDSCxDQUFDO0lBRUQsV0FBVztRQUNULElBQUksQ0FBQyxDQUFDLElBQUksQ0FBQyxZQUFZLFlBQVksZ0JBQWdCLENBQUMsRUFBRTtZQUNwRCxNQUFNLElBQUksS0FBSyxDQUFDLHdEQUF3RCxDQUFDLENBQUM7U0FDM0U7UUFFRCxJQUFJLENBQUMsSUFBSSxDQUFDLGFBQWEsRUFBRTtZQUN2QixNQUFNLElBQUksS0FBSyxDQUNiLCtFQUErRSxDQUNoRixDQUFDO1NBQ0g7SUFDSCxDQUFDO0lBRUQsb0JBQW9CO1FBQ2xCLE1BQU0sQ0FBQyxNQUFNLENBQUUsSUFBSSxDQUFDLFlBQVksQ0FBQyxVQUEwQixDQUFDLEtBQUssRUFBRTtZQUNqRSxLQUFLLEVBQUUsTUFBTTtTQUNkLENBQUMsQ0FBQztJQUNMLENBQUM7SUFFRCx5QkFBeUI7UUFDdkIsTUFBTSxhQUFhLEdBQUcsUUFBUSxDQUFDLGFBQWEsQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUNwRCxNQUFNLENBQUMsTUFBTSxDQUFDLGFBQWEsQ0FBQyxLQUFLLEVBQUU7WUFDakMsT0FBTyxFQUFFLGNBQWM7WUFDdkIsV0FBVyxFQUFFLElBQUksQ0FBQyx3QkFBd0IsSUFBSSxJQUFJO1lBQ2xELFdBQVcsRUFBRSxJQUFJLENBQUMsd0JBQXdCO1lBQzFDLElBQUksRUFBRSxJQUFJLENBQUMseUJBQXlCLElBQUksSUFBSTtZQUM1QyxVQUFVLEVBQUUsUUFBUTtZQUNwQixhQUFhLEVBQUUsS0FBSztTQUNyQixDQUFDLENBQUM7UUFDSCxJQUFJLENBQUMsWUFBWSxDQUFDLFVBQVUsRUFBRSxXQUFXLENBQUMsYUFBYSxDQUFDLENBQUM7UUFFekQsSUFBSSxDQUFDLFVBQVUsR0FBRyxRQUFRLENBQUMsY0FBYyxDQUFDLEdBQUcsQ0FBQyxDQUFDO1FBQy9DLGFBQWEsQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxDQUFDO0lBQzdDLENBQUM7SUFFRCxZQUFZO1FBQ1YsTUFBTSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsWUFBWSxDQUFDLEtBQUssRUFBRTtZQUNyQyxRQUFRLEVBQUUsVUFBVTtZQUNwQixJQUFJLEVBQUUsR0FBRztTQUNWLENBQUMsQ0FBQztJQUNMLENBQUM7SUFFRCxrQkFBa0I7UUFDaEIsSUFBSSxJQUFJLENBQUMsWUFBWSxFQUFFO1lBQ3JCLElBQUksQ0FBQyxlQUFlLEdBQUcsSUFBSSxDQUFDLFlBQVksQ0FBQyxPQUFPLENBQUMsWUFBWSxDQUFDLFNBQVMsQ0FDckUsSUFBSSxDQUFDLGdCQUFnQixDQUN0QixDQUFDO1NBQ0g7YUFBTTtZQUNMLElBQUksQ0FBQyxZQUFZLENBQUMsZ0JBQWdCLENBQUMsT0FBTyxFQUFFLEdBQUcsRUFBRSxDQUMvQyxJQUFJLENBQUMsZ0JBQWdCLENBQUMsSUFBSSxDQUFDLFlBQVksQ0FBQyxLQUFLLENBQUMsQ0FDL0MsQ0FBQztTQUNIO0lBQ0gsQ0FBQzs7dUhBbEZVLHlCQUF5QjsyR0FBekIseUJBQXlCOzRGQUF6Qix5QkFBeUI7a0JBSnJDLFNBQVM7bUJBQUM7b0JBQ1QsUUFBUSxFQUFFLG9CQUFvQjtvQkFDOUIsVUFBVSxFQUFFLElBQUk7aUJBQ2pCOzswQkFZSSxJQUFJOzswQkFDSixRQUFROzswQkFBSSxJQUFJOzRDQVBWLHdCQUF3QjtzQkFBaEMsS0FBSztnQkFDRyx3QkFBd0I7c0JBQWhDLEtBQUs7Z0JBQ0cseUJBQXlCO3NCQUFqQyxLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiLypcbiogT3JpZ2luYWxseSBmcm9tOiBodHRwczovL2dpdGh1Yi5jb20vYW5vdGhlcmtpdHRlbi9tYXQtaW5wdXQtYXV0b3NpemVcbiogQGF1dGhvcjogRWxsaWUgTGFyc29uIChhbm90aGVya2l0dGVuKVxuKi9cblxuaW1wb3J0IHtcbiAgQWZ0ZXJWaWV3SW5pdCxcbiAgRGlyZWN0aXZlLFxuICBFbGVtZW50UmVmLFxuICBJbnB1dCxcbiAgT25EZXN0cm95LFxuICBPcHRpb25hbCxcbiAgU2VsZixcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBOZ01vZGVsIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuaW1wb3J0IHsgTWF0SW5wdXQgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9pbnB1dCc7XG5pbXBvcnQgeyBTdWJzY3JpcHRpb24gfSBmcm9tICdyeGpzJztcblxuQERpcmVjdGl2ZSh7XG4gIHNlbGVjdG9yOiAnW21hdElucHV0QXV0b3NpemVdJyxcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbn0pXG5leHBvcnQgY2xhc3MgTWF0SW5wdXRBdXRvc2l6ZURpcmVjdGl2ZSBpbXBsZW1lbnRzIEFmdGVyVmlld0luaXQsIE9uRGVzdHJveSB7XG4gIGlucHV0RWxlbWVudDogSFRNTElucHV0RWxlbWVudDtcbiAgaGlkZGVuVGV4dCE6IFRleHQ7XG4gIGNoYW5nZURldGVjdFN1YiE6IFN1YnNjcmlwdGlvbjtcblxuICBASW5wdXQoKSBtYXRJbnB1dEF1dG9zaXplTWF4V2lkdGg6IGFueTtcbiAgQElucHV0KCkgbWF0SW5wdXRBdXRvc2l6ZU1pbldpZHRoID0gJzEyMHB4JztcbiAgQElucHV0KCkgbWF0SW5wdXRBdXRvc2l6ZUZvbnRTdHlsZTogYW55O1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIGVsOiBFbGVtZW50UmVmPEhUTUxJbnB1dEVsZW1lbnQ+LFxuICAgIEBTZWxmKCkgcHJpdmF0ZSBjaGlsZE1hdElucHV0OiBNYXRJbnB1dCxcbiAgICBAT3B0aW9uYWwoKSBAU2VsZigpIHByaXZhdGUgY2hpbGROZ01vZGVsOiBOZ01vZGVsXG4gICkge1xuICAgIHRoaXMuaW5wdXRFbGVtZW50ID0gZWwubmF0aXZlRWxlbWVudDtcbiAgfVxuXG4gIG5nQWZ0ZXJWaWV3SW5pdCgpOiB2b2lkIHtcbiAgICB0aGlzLmNoZWNrRXJyb3JzKCk7XG4gICAgdGhpcy5vdmVyd3JpdGVQYXJlbnRXaWR0aCgpO1xuICAgIHRoaXMuY3JlYXRlSGlkZGVuVGV4dENvbnRhaW5lcigpO1xuICAgIHRoaXMuc2V0T3duU3R5bGVzKCk7XG4gICAgdGhpcy5zdWJzY3JpYmVUb0NoYW5nZXMoKTtcbiAgfVxuXG4gIG5nT25EZXN0cm95KCk6IHZvaWQge1xuICAgIGlmICh0aGlzLmNoYW5nZURldGVjdFN1Yikge1xuICAgICAgdGhpcy5jaGFuZ2VEZXRlY3RTdWIudW5zdWJzY3JpYmUoKTtcbiAgICB9XG4gIH1cblxuICBjaGVja0Vycm9ycygpOiB2b2lkIHtcbiAgICBpZiAoISh0aGlzLmlucHV0RWxlbWVudCBpbnN0YW5jZW9mIEhUTUxJbnB1dEVsZW1lbnQpKSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoJ21hdElucHV0QXV0b3NpemUgZGlyZWN0aXZlIG11c3QgYmUgb24gYW4gaW5wdXQgZWxlbWVudCcpO1xuICAgIH1cblxuICAgIGlmICghdGhpcy5jaGlsZE1hdElucHV0KSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoXG4gICAgICAgICdFbGVtZW50IHdpdGggbWF0SW5wdXRBdXRvc2l6ZSBkaXJlY3RpdmUgbXVzdCBhbHNvIGhhdmUgdGhlIG1hdElucHV0IGRpcmVjdGl2ZSdcbiAgICAgICk7XG4gICAgfVxuICB9XG5cbiAgb3ZlcndyaXRlUGFyZW50V2lkdGgoKTogdm9pZCB7XG4gICAgT2JqZWN0LmFzc2lnbigodGhpcy5pbnB1dEVsZW1lbnQucGFyZW50Tm9kZSBhcyBIVE1MRWxlbWVudCkuc3R5bGUsIHtcbiAgICAgIHdpZHRoOiAnMTAwJScsXG4gICAgfSk7XG4gIH1cblxuICBjcmVhdGVIaWRkZW5UZXh0Q29udGFpbmVyKCk6IHZvaWQge1xuICAgIGNvbnN0IHRleHRDb250YWluZXIgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCdkaXYnKTtcbiAgICBPYmplY3QuYXNzaWduKHRleHRDb250YWluZXIuc3R5bGUsIHtcbiAgICAgIGRpc3BsYXk6ICdpbmxpbmUtYmxvY2snLFxuICAgICAgJ21heC13aWR0aCc6IHRoaXMubWF0SW5wdXRBdXRvc2l6ZU1heFdpZHRoIHx8IG51bGwsXG4gICAgICAnbWluLXdpZHRoJzogdGhpcy5tYXRJbnB1dEF1dG9zaXplTWluV2lkdGgsXG4gICAgICBmb250OiB0aGlzLm1hdElucHV0QXV0b3NpemVGb250U3R5bGUgfHwgbnVsbCxcbiAgICAgIHZpc2liaWxpdHk6ICdoaWRkZW4nLFxuICAgICAgJ3doaXRlLXNwYWNlJzogJ3ByZScsXG4gICAgfSk7XG4gICAgdGhpcy5pbnB1dEVsZW1lbnQucGFyZW50Tm9kZT8uYXBwZW5kQ2hpbGQodGV4dENvbnRhaW5lcik7XG5cbiAgICB0aGlzLmhpZGRlblRleHQgPSBkb2N1bWVudC5jcmVhdGVUZXh0Tm9kZSgnICcpO1xuICAgIHRleHRDb250YWluZXIuYXBwZW5kQ2hpbGQodGhpcy5oaWRkZW5UZXh0KTtcbiAgfVxuXG4gIHNldE93blN0eWxlcygpOiB2b2lkIHtcbiAgICBPYmplY3QuYXNzaWduKHRoaXMuaW5wdXRFbGVtZW50LnN0eWxlLCB7XG4gICAgICBwb3NpdGlvbjogJ2Fic29sdXRlJyxcbiAgICAgIGxlZnQ6ICcwJyxcbiAgICB9KTtcbiAgfVxuXG4gIHN1YnNjcmliZVRvQ2hhbmdlcygpOiB2b2lkIHtcbiAgICBpZiAodGhpcy5jaGlsZE5nTW9kZWwpIHtcbiAgICAgIHRoaXMuY2hhbmdlRGV0ZWN0U3ViID0gdGhpcy5jaGlsZE5nTW9kZWwuY29udHJvbC52YWx1ZUNoYW5nZXMuc3Vic2NyaWJlKFxuICAgICAgICB0aGlzLmNoYW5nZUhpZGRlblRleHRcbiAgICAgICk7XG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMuaW5wdXRFbGVtZW50LmFkZEV2ZW50TGlzdGVuZXIoJ2lucHV0JywgKCkgPT5cbiAgICAgICAgdGhpcy5jaGFuZ2VIaWRkZW5UZXh0KHRoaXMuaW5wdXRFbGVtZW50LnZhbHVlKVxuICAgICAgKTtcbiAgICB9XG4gIH1cblxuICBjaGFuZ2VIaWRkZW5UZXh0ID0gKG5ld1ZhbHVlOiBzdHJpbmcpOiB2b2lkID0+IHtcbiAgICBpZiAodGhpcy5oaWRkZW5UZXh0KSB7XG4gICAgICB0aGlzLmhpZGRlblRleHQuZGF0YSA9IG5ld1ZhbHVlICsgJyAnO1xuICAgIH1cbiAgfTtcbn1cbiJdfQ==
@@ -0,0 +1,8 @@
1
+ import { ElementBase } from './element-base';
2
+ export class Dropdown extends ElementBase {
3
+ constructor() {
4
+ super(...arguments);
5
+ this.controlType = 'dropdown';
6
+ }
7
+ }
8
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZHJvcGRvd24uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9tYXBhLWxpYnJhcnktdWkvc3JjL2xpYi9jb3JlL2VsZW1lbnRzL2Ryb3Bkb3duLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUU3QyxNQUFNLE9BQU8sUUFBUyxTQUFRLFdBQVc7SUFBekM7O1FBQ1csZ0JBQVcsR0FBRyxVQUFVLENBQUM7SUFDcEMsQ0FBQztDQUFBIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRWxlbWVudEJhc2UgfSBmcm9tICcuL2VsZW1lbnQtYmFzZSc7XG5cbmV4cG9ydCBjbGFzcyBEcm9wZG93biBleHRlbmRzIEVsZW1lbnRCYXNlIHtcbiAgb3ZlcnJpZGUgY29udHJvbFR5cGUgPSAnZHJvcGRvd24nO1xufVxuIl19