@apipass/inputs 0.2.15 → 1.0.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.
- package/ace-editor/component.d.ts +52 -52
- package/ace-editor/directive.d.ts +39 -39
- package/assets/css/buttons.scss +118 -118
- package/assets/css/colors.scss +34 -34
- package/assets/css/fonts.scss +24 -24
- package/assets/css/inputs.scss +197 -197
- package/assets/css/pt_sans.scss +143 -143
- package/assets/css/spacing.scss +28 -28
- package/assets/css/texts.scss +18 -18
- package/custom-select/custom-select-item.d.ts +5 -5
- package/custom-select/custom-select.component.d.ts +51 -51
- package/debounce-model-directive/debouceInput.directive.d.ts +14 -14
- package/{esm2015/ace-editor/component.js → esm2020/ace-editor/component.mjs} +199 -204
- package/{esm2015/ace-editor/directive.js → esm2020/ace-editor/directive.mjs} +150 -150
- package/{esm2015/apipass-inputs.js → esm2020/apipass-inputs.mjs} +4 -4
- package/{esm2015/custom-select/custom-select-item.js → esm2020/custom-select/custom-select-item.mjs} +7 -7
- package/esm2020/custom-select/custom-select.component.mjs +204 -0
- package/esm2020/debounce-model-directive/debouceInput.directive.mjs +31 -0
- package/esm2020/field/field.component.mjs +51 -0
- package/esm2020/input-avatar/input-avatar.component.mjs +92 -0
- package/esm2020/input-boolean/input-boolean.component.mjs +56 -0
- package/esm2020/input-file/input-file.component.mjs +82 -0
- package/esm2020/input-number/input-number.component.mjs +62 -0
- package/esm2020/input-password/input-password.component.mjs +96 -0
- package/esm2020/input-text/input-text.component.mjs +62 -0
- package/esm2020/inputs.module.mjs +149 -0
- package/{esm2015/public-api.js → esm2020/public-api.mjs} +17 -17
- package/{esm2015/select-box/mat-select-infinite-scroll.directive.js → esm2020/select-box/mat-select-infinite-scroll.directive.mjs} +86 -86
- package/esm2020/select-box/select-box.component.mjs +220 -0
- package/esm2020/select-enum/select-enum.component.mjs +48 -0
- package/esm2020/select-interpolation/select-interpolation.component.mjs +169 -0
- package/{esm2015/value-acessor-base.js → esm2020/value-acessor-base.mjs} +31 -31
- package/fesm2015/apipass-inputs.mjs +1704 -0
- package/fesm2015/apipass-inputs.mjs.map +1 -0
- package/fesm2020/apipass-inputs.mjs +1697 -0
- package/fesm2020/apipass-inputs.mjs.map +1 -0
- package/field/field.component.d.ts +15 -15
- package/{apipass-inputs.d.ts → index.d.ts} +5 -5
- package/input-avatar/input-avatar.component.d.ts +29 -29
- package/input-boolean/input-boolean.component.d.ts +15 -15
- package/input-file/input-file.component.d.ts +31 -31
- package/input-number/input-number.component.d.ts +17 -17
- package/input-password/input-password.component.d.ts +29 -29
- package/input-text/input-text.component.d.ts +17 -17
- package/inputs.module.d.ts +36 -36
- package/package.json +38 -29
- package/public-api.d.ts +16 -16
- package/select-box/mat-select-infinite-scroll.directive.d.ts +26 -26
- package/select-box/select-box.component.d.ts +57 -57
- package/select-enum/select-enum.component.d.ts +12 -12
- package/select-interpolation/select-interpolation.component.d.ts +44 -44
- package/value-acessor-base.d.ts +13 -13
- package/bundles/apipass-inputs.umd.js +0 -3060
- package/bundles/apipass-inputs.umd.js.map +0 -1
- package/bundles/apipass-inputs.umd.min.js +0 -16
- package/bundles/apipass-inputs.umd.min.js.map +0 -1
- package/esm2015/custom-select/custom-select.component.js +0 -310
- package/esm2015/debounce-model-directive/debouceInput.directive.js +0 -31
- package/esm2015/field/field.component.js +0 -92
- package/esm2015/input-avatar/input-avatar.component.js +0 -167
- package/esm2015/input-boolean/input-boolean.component.js +0 -77
- package/esm2015/input-file/input-file.component.js +0 -133
- package/esm2015/input-number/input-number.component.js +0 -118
- package/esm2015/input-password/input-password.component.js +0 -159
- package/esm2015/input-text/input-text.component.js +0 -118
- package/esm2015/inputs.module.js +0 -155
- package/esm2015/select-box/select-box.component.js +0 -367
- package/esm2015/select-enum/select-enum.component.js +0 -95
- package/esm2015/select-interpolation/select-interpolation.component.js +0 -248
- package/fesm2015/apipass-inputs.js +0 -2434
- package/fesm2015/apipass-inputs.js.map +0 -1
|
@@ -0,0 +1,48 @@
|
|
|
1
|
+
import { Component, forwardRef, Input, ViewEncapsulation } from '@angular/core';
|
|
2
|
+
import { NG_VALUE_ACCESSOR } from '@angular/forms';
|
|
3
|
+
import { ValueAccessorBase } from '../value-acessor-base';
|
|
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 "@apipass/pipes";
|
|
11
|
+
export class SelectEnumComponent extends ValueAccessorBase {
|
|
12
|
+
constructor() {
|
|
13
|
+
super(...arguments);
|
|
14
|
+
this.placeholder = 'Selecione';
|
|
15
|
+
this.enabledSearch = true;
|
|
16
|
+
this.disabled = false;
|
|
17
|
+
this.search = '';
|
|
18
|
+
}
|
|
19
|
+
onKeyDown(event) {
|
|
20
|
+
if (event.which === 32) {
|
|
21
|
+
event.target.value += ' ';
|
|
22
|
+
}
|
|
23
|
+
event.stopPropagation();
|
|
24
|
+
}
|
|
25
|
+
}
|
|
26
|
+
SelectEnumComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.3", ngImport: i0, type: SelectEnumComponent, deps: null, target: i0.ɵɵFactoryTarget.Component });
|
|
27
|
+
SelectEnumComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.0.3", type: SelectEnumComponent, selector: "select-enum", inputs: { placeholder: "placeholder", enabledSearch: "enabledSearch", data: "data", disabled: "disabled" }, providers: [{
|
|
28
|
+
provide: NG_VALUE_ACCESSOR,
|
|
29
|
+
useExisting: forwardRef(() => SelectEnumComponent),
|
|
30
|
+
multi: true
|
|
31
|
+
}], usesInheritance: true, ngImport: i0, template: "<mat-form-field class=\"apipass-select apipass-select-enum\" appearance=\"fill\">\r\n <mat-select [(ngModel)]=\"value\" [disabled]=\"disabled\" (click)=\"search = ''\" [placeholder]=\"placeholder\">\r\n <mat-option class=\"mat-select-input\" *ngIf=\"enabledSearch\" (keydown)=\"onKeyDown($event)\" disabled=\"disabled\">\r\n <input class=\"form-control\" type=\"text\" [(ngModel)]=\"search\" autocomplete=\"off\" />\r\n </mat-option>\r\n <mat-option *ngFor=\"let enumData of data | enum | selectEnumFilter: search\" [value]=\"enumData.key\">{{ enumData.value }}</mat-option>\r\n </mat-select>\r\n</mat-form-field>\r\n", styles: [":root{--color-primary: #222D57;--color-primary-hover: #18203D;--color-primary-active: #29376A;--color-secondary: #D3D921;--color-secondary-hover: #B3B81C;--color-secondary-active: #DCE13F;--color-tertiary: #EFEFEF;--color-tertiary-hover: #CBCBCB;--color-tertiary-active: #F1F1F1;--color-fonts-tertiary: #777777;--color-body-light: #FFF;--color-red: rgb(255, 0, 0);--limit-plan-color: #ff6c00;--color_disabled: #E0E0E0;--color_components_light: #FFF;--color-inputs-border: #DDD;--color-inputs-background: #FFF;--color_icon_remove: var(--color-red);--color_icon_success: #070;--color_graph_primary: #1643EF;--color_graph_primary_hover: #0A2692;--color_graph_error: #EB5757;--color_graph_error_hover: #C91717}@font-face{font-family:PT Sans;font-style:italic;font-weight:400;font-display:swap;src:local(\"PT Sans Italic\"),local(\"PTSans-Italic\"),url(https://fonts.gstatic.com/s/ptsans/v11/jizYRExUiTo99u79D0e0ysmIEDQ.woff2) format(\"woff2\");unicode-range:U+0460-052F,U+1C80-1C88,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:PT Sans;font-style:italic;font-weight:400;font-display:swap;src:local(\"PT Sans Italic\"),local(\"PTSans-Italic\"),url(https://fonts.gstatic.com/s/ptsans/v11/jizYRExUiTo99u79D0e0w8mIEDQ.woff2) format(\"woff2\");unicode-range:U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:PT Sans;font-style:italic;font-weight:400;font-display:swap;src:local(\"PT Sans Italic\"),local(\"PTSans-Italic\"),url(https://fonts.gstatic.com/s/ptsans/v11/jizYRExUiTo99u79D0e0ycmIEDQ.woff2) format(\"woff2\");unicode-range:U+0100-024F,U+0259,U+1E00-1EFF,U+2020,U+20A0-20AB,U+20AD-20CF,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:PT Sans;font-style:italic;font-weight:400;font-display:swap;src:local(\"PT Sans Italic\"),local(\"PTSans-Italic\"),url(https://fonts.gstatic.com/s/ptsans/v11/jizYRExUiTo99u79D0e0x8mI.woff2) format(\"woff2\");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+2000-206F,U+2074,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:PT Sans;font-style:italic;font-weight:700;font-display:swap;src:local(\"PT Sans Bold Italic\"),local(\"PTSans-BoldItalic\"),url(https://fonts.gstatic.com/s/ptsans/v11/jizdRExUiTo99u79D0e8fOydIhUdwzM.woff2) format(\"woff2\");unicode-range:U+0460-052F,U+1C80-1C88,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:PT Sans;font-style:italic;font-weight:700;font-display:swap;src:local(\"PT Sans Bold Italic\"),local(\"PTSans-BoldItalic\"),url(https://fonts.gstatic.com/s/ptsans/v11/jizdRExUiTo99u79D0e8fOydKxUdwzM.woff2) format(\"woff2\");unicode-range:U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:PT Sans;font-style:italic;font-weight:700;font-display:swap;src:local(\"PT Sans Bold Italic\"),local(\"PTSans-BoldItalic\"),url(https://fonts.gstatic.com/s/ptsans/v11/jizdRExUiTo99u79D0e8fOydIRUdwzM.woff2) format(\"woff2\");unicode-range:U+0100-024F,U+0259,U+1E00-1EFF,U+2020,U+20A0-20AB,U+20AD-20CF,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:PT Sans;font-style:italic;font-weight:700;font-display:swap;src:local(\"PT Sans Bold Italic\"),local(\"PTSans-BoldItalic\"),url(https://fonts.gstatic.com/s/ptsans/v11/jizdRExUiTo99u79D0e8fOydLxUd.woff2) format(\"woff2\");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+2000-206F,U+2074,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:PT Sans;font-style:normal;font-weight:400;font-display:swap;src:local(\"PT Sans\"),local(\"PTSans-Regular\"),url(https://fonts.gstatic.com/s/ptsans/v11/jizaRExUiTo99u79D0-ExdGM.woff2) format(\"woff2\");unicode-range:U+0460-052F,U+1C80-1C88,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:PT Sans;font-style:normal;font-weight:400;font-display:swap;src:local(\"PT Sans\"),local(\"PTSans-Regular\"),url(https://fonts.gstatic.com/s/ptsans/v11/jizaRExUiTo99u79D0aExdGM.woff2) format(\"woff2\");unicode-range:U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:PT Sans;font-style:normal;font-weight:400;font-display:swap;src:local(\"PT Sans\"),local(\"PTSans-Regular\"),url(https://fonts.gstatic.com/s/ptsans/v11/jizaRExUiTo99u79D0yExdGM.woff2) format(\"woff2\");unicode-range:U+0100-024F,U+0259,U+1E00-1EFF,U+2020,U+20A0-20AB,U+20AD-20CF,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:PT Sans;font-style:normal;font-weight:400;font-display:swap;src:local(\"PT Sans\"),local(\"PTSans-Regular\"),url(https://fonts.gstatic.com/s/ptsans/v11/jizaRExUiTo99u79D0KExQ.woff2) format(\"woff2\");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+2000-206F,U+2074,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:PT Sans;font-style:normal;font-weight:700;font-display:swap;src:local(\"PT Sans Bold\"),local(\"PTSans-Bold\"),url(https://fonts.gstatic.com/s/ptsans/v11/jizfRExUiTo99u79B_mh0OOtLQ0Z.woff2) format(\"woff2\");unicode-range:U+0460-052F,U+1C80-1C88,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:PT Sans;font-style:normal;font-weight:700;font-display:swap;src:local(\"PT Sans Bold\"),local(\"PTSans-Bold\"),url(https://fonts.gstatic.com/s/ptsans/v11/jizfRExUiTo99u79B_mh0OqtLQ0Z.woff2) format(\"woff2\");unicode-range:U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:PT Sans;font-style:normal;font-weight:700;font-display:swap;src:local(\"PT Sans Bold\"),local(\"PTSans-Bold\"),url(https://fonts.gstatic.com/s/ptsans/v11/jizfRExUiTo99u79B_mh0OCtLQ0Z.woff2) format(\"woff2\");unicode-range:U+0100-024F,U+0259,U+1E00-1EFF,U+2020,U+20A0-20AB,U+20AD-20CF,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:PT Sans;font-style:normal;font-weight:700;font-display:swap;src:local(\"PT Sans Bold\"),local(\"PTSans-Bold\"),url(https://fonts.gstatic.com/s/ptsans/v11/jizfRExUiTo99u79B_mh0O6tLQ.woff2) format(\"woff2\");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+2000-206F,U+2074,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}.text-primary{color:var(--color-primary)!important}.text-secondary{color:var(--color-secondary)!important}.text-tertiary{color:var(--color-fonts-tertiary)!important}.text-weight-bold{font-weight:700!important}.text-weight-normal{font-weight:400!important}.mat-input-underline,.mat-form-field-underline{display:none}.mat-form-field-appearance-fill .mat-form-field-flex{display:flex!important;align-items:center!important;border:1px solid var(--color-inputs-border)!important;background:var(--color-inputs-background)!important;border-radius:6px!important}.mat-form-field-infix{padding:0!important;display:flex!important;align-items:center!important;border-top:none!important}.mat-select-arrow-wrapper{display:flex!important}.mat-icon-button{width:auto!important}.no-border .mat-form-field-flex{border:none!important}.no-border .mat-form-field-flex input{padding:1px}.mat-form-field-label-wrapper{top:-10px}.mat-form-field-should-float .mat-form-field-label-wrapper{font-size:14px}.placeholder-primary .mat-form-field-label-wrapper,.placeholder-primary .mat-form-field-label-wrapper label{color:var(--color-primary)!important}.placeholder-primary ::ng-deep .mat-form-field-placeholder,.placeholder-primary .mat-form-field-placeholder{color:var(--color-primary)!important}.placeholder-primary ::ng-deep .mat-focused .mat-form-field-placeholder,.placeholder-primary .mat-focused .mat-form-field-placeholder{color:var(--color-primary)!important}.placeholder-primary input ::placeholder{color:var(--color-primary)!important}.placeholder-bold .mat-form-field-label-wrapper,.placeholder-bold .mat-form-field-label-wrapper label{font-weight:700!important}.placeholder-bold ::ng-deep .mat-form-field-placeholder,.placeholder-bold .mat-form-field-placeholder{font-weight:700!important}.placeholder-bold ::ng-deep .mat-focused .mat-form-field-placeholder,.placeholder-bold .mat-focused .mat-form-field-placeholder{font-weight:700!important}.placeholder-bold input ::placeholder{font-weight:700!important}.apipass-input-text{width:100%}.apipass-input-text .mat-form-field-flex{padding:10px!important}.apipass-input-text .mat-form-field-wrapper,.apipass-search-input-text .mat-form-field-wrapper,.custom-select-component .mat-form-field-wrapper,.apipass-select .mat-form-field-wrapper,.apipass-date-filter .mat-form-field-wrapper{padding:0!important}.apipass-input-text .mat-icon-button,.apipass-search-input-text .mat-icon-button,.custom-select-component .mat-icon-button,.apipass-select .mat-icon-button,.apipass-date-filter .mat-icon-button{width:auto!important;height:auto!important}.apipass-input-text.label-input .mat-form-field-label-wrapper,.apipass-search-input-text.label-input .mat-form-field-label-wrapper,.custom-select-component.label-input .mat-form-field-label-wrapper,.apipass-select.label-input .mat-form-field-label-wrapper,.apipass-date-filter.label-input .mat-form-field-label-wrapper{padding-top:0;top:auto!important}.apipass-input-text.label-input input,.apipass-search-input-text.label-input input,.custom-select-component.label-input input,.apipass-select.label-input input,.apipass-date-filter.label-input input{padding-top:10px!important;padding-bottom:5px!important}.apipass-input-text.mat-form-field-should-float .mat-form-field-label-wrapper,.apipass-search-input-text.mat-form-field-should-float .mat-form-field-label-wrapper,.custom-select-component.mat-form-field-should-float .mat-form-field-label-wrapper,.apipass-select.mat-form-field-should-float .mat-form-field-label-wrapper,.apipass-date-filter.mat-form-field-should-float .mat-form-field-label-wrapper{padding-top:0!important;margin-top:-10px!important}.apipass-search-input-text{width:100%}.apipass-search-input-text.small-text{font-size:12px}.apipass-search-input-text .mat-form-field-flex{padding:2px 5px 2px 2px!important;border-top:none!important;border-left:none!important;border-right:none!important;border-radius:0!important}.apipass-search-input-text .search-icon{margin-top:-5px!important}.custom-select-component{width:100%}.custom-select-component .mat-form-field-flex{padding:1px 10px!important}.apipass-select{width:100%}.apipass-select .mat-form-field-flex{padding:10px 5px 10px 10px!important}.apipass-select.label-input .mat-form-field-infix{padding-top:7px!important;padding-bottom:7px!important}.apipass-date-filter{width:100%}.apipass-date-filter .mat-form-field-flex{padding:7px 10px!important}.apipass-date-filter .mat-form-field-suffix span{cursor:pointer;color:#777}.apipass-date-filter .mat-form-field-wrapper{padding-bottom:0!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.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i2.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "component", type: i3.MatFormField, selector: "mat-form-field", inputs: ["hideRequiredMarker", "color", "floatLabel", "appearance", "subscriptSizing", "hintLabel"], 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: "pipe", type: i6.SelectEnumFilterPipe, name: "selectEnumFilter" }, { kind: "pipe", type: i6.EnumPipe, name: "enum" }], encapsulation: i0.ViewEncapsulation.None });
|
|
32
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.3", ngImport: i0, type: SelectEnumComponent, decorators: [{
|
|
33
|
+
type: Component,
|
|
34
|
+
args: [{ selector: 'select-enum', providers: [{
|
|
35
|
+
provide: NG_VALUE_ACCESSOR,
|
|
36
|
+
useExisting: forwardRef(() => SelectEnumComponent),
|
|
37
|
+
multi: true
|
|
38
|
+
}], encapsulation: ViewEncapsulation.None, template: "<mat-form-field class=\"apipass-select apipass-select-enum\" appearance=\"fill\">\r\n <mat-select [(ngModel)]=\"value\" [disabled]=\"disabled\" (click)=\"search = ''\" [placeholder]=\"placeholder\">\r\n <mat-option class=\"mat-select-input\" *ngIf=\"enabledSearch\" (keydown)=\"onKeyDown($event)\" disabled=\"disabled\">\r\n <input class=\"form-control\" type=\"text\" [(ngModel)]=\"search\" autocomplete=\"off\" />\r\n </mat-option>\r\n <mat-option *ngFor=\"let enumData of data | enum | selectEnumFilter: search\" [value]=\"enumData.key\">{{ enumData.value }}</mat-option>\r\n </mat-select>\r\n</mat-form-field>\r\n", styles: [":root{--color-primary: #222D57;--color-primary-hover: #18203D;--color-primary-active: #29376A;--color-secondary: #D3D921;--color-secondary-hover: #B3B81C;--color-secondary-active: #DCE13F;--color-tertiary: #EFEFEF;--color-tertiary-hover: #CBCBCB;--color-tertiary-active: #F1F1F1;--color-fonts-tertiary: #777777;--color-body-light: #FFF;--color-red: rgb(255, 0, 0);--limit-plan-color: #ff6c00;--color_disabled: #E0E0E0;--color_components_light: #FFF;--color-inputs-border: #DDD;--color-inputs-background: #FFF;--color_icon_remove: var(--color-red);--color_icon_success: #070;--color_graph_primary: #1643EF;--color_graph_primary_hover: #0A2692;--color_graph_error: #EB5757;--color_graph_error_hover: #C91717}@font-face{font-family:PT Sans;font-style:italic;font-weight:400;font-display:swap;src:local(\"PT Sans Italic\"),local(\"PTSans-Italic\"),url(https://fonts.gstatic.com/s/ptsans/v11/jizYRExUiTo99u79D0e0ysmIEDQ.woff2) format(\"woff2\");unicode-range:U+0460-052F,U+1C80-1C88,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:PT Sans;font-style:italic;font-weight:400;font-display:swap;src:local(\"PT Sans Italic\"),local(\"PTSans-Italic\"),url(https://fonts.gstatic.com/s/ptsans/v11/jizYRExUiTo99u79D0e0w8mIEDQ.woff2) format(\"woff2\");unicode-range:U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:PT Sans;font-style:italic;font-weight:400;font-display:swap;src:local(\"PT Sans Italic\"),local(\"PTSans-Italic\"),url(https://fonts.gstatic.com/s/ptsans/v11/jizYRExUiTo99u79D0e0ycmIEDQ.woff2) format(\"woff2\");unicode-range:U+0100-024F,U+0259,U+1E00-1EFF,U+2020,U+20A0-20AB,U+20AD-20CF,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:PT Sans;font-style:italic;font-weight:400;font-display:swap;src:local(\"PT Sans Italic\"),local(\"PTSans-Italic\"),url(https://fonts.gstatic.com/s/ptsans/v11/jizYRExUiTo99u79D0e0x8mI.woff2) format(\"woff2\");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+2000-206F,U+2074,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:PT Sans;font-style:italic;font-weight:700;font-display:swap;src:local(\"PT Sans Bold Italic\"),local(\"PTSans-BoldItalic\"),url(https://fonts.gstatic.com/s/ptsans/v11/jizdRExUiTo99u79D0e8fOydIhUdwzM.woff2) format(\"woff2\");unicode-range:U+0460-052F,U+1C80-1C88,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:PT Sans;font-style:italic;font-weight:700;font-display:swap;src:local(\"PT Sans Bold Italic\"),local(\"PTSans-BoldItalic\"),url(https://fonts.gstatic.com/s/ptsans/v11/jizdRExUiTo99u79D0e8fOydKxUdwzM.woff2) format(\"woff2\");unicode-range:U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:PT Sans;font-style:italic;font-weight:700;font-display:swap;src:local(\"PT Sans Bold Italic\"),local(\"PTSans-BoldItalic\"),url(https://fonts.gstatic.com/s/ptsans/v11/jizdRExUiTo99u79D0e8fOydIRUdwzM.woff2) format(\"woff2\");unicode-range:U+0100-024F,U+0259,U+1E00-1EFF,U+2020,U+20A0-20AB,U+20AD-20CF,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:PT Sans;font-style:italic;font-weight:700;font-display:swap;src:local(\"PT Sans Bold Italic\"),local(\"PTSans-BoldItalic\"),url(https://fonts.gstatic.com/s/ptsans/v11/jizdRExUiTo99u79D0e8fOydLxUd.woff2) format(\"woff2\");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+2000-206F,U+2074,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:PT Sans;font-style:normal;font-weight:400;font-display:swap;src:local(\"PT Sans\"),local(\"PTSans-Regular\"),url(https://fonts.gstatic.com/s/ptsans/v11/jizaRExUiTo99u79D0-ExdGM.woff2) format(\"woff2\");unicode-range:U+0460-052F,U+1C80-1C88,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:PT Sans;font-style:normal;font-weight:400;font-display:swap;src:local(\"PT Sans\"),local(\"PTSans-Regular\"),url(https://fonts.gstatic.com/s/ptsans/v11/jizaRExUiTo99u79D0aExdGM.woff2) format(\"woff2\");unicode-range:U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:PT Sans;font-style:normal;font-weight:400;font-display:swap;src:local(\"PT Sans\"),local(\"PTSans-Regular\"),url(https://fonts.gstatic.com/s/ptsans/v11/jizaRExUiTo99u79D0yExdGM.woff2) format(\"woff2\");unicode-range:U+0100-024F,U+0259,U+1E00-1EFF,U+2020,U+20A0-20AB,U+20AD-20CF,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:PT Sans;font-style:normal;font-weight:400;font-display:swap;src:local(\"PT Sans\"),local(\"PTSans-Regular\"),url(https://fonts.gstatic.com/s/ptsans/v11/jizaRExUiTo99u79D0KExQ.woff2) format(\"woff2\");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+2000-206F,U+2074,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:PT Sans;font-style:normal;font-weight:700;font-display:swap;src:local(\"PT Sans Bold\"),local(\"PTSans-Bold\"),url(https://fonts.gstatic.com/s/ptsans/v11/jizfRExUiTo99u79B_mh0OOtLQ0Z.woff2) format(\"woff2\");unicode-range:U+0460-052F,U+1C80-1C88,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:PT Sans;font-style:normal;font-weight:700;font-display:swap;src:local(\"PT Sans Bold\"),local(\"PTSans-Bold\"),url(https://fonts.gstatic.com/s/ptsans/v11/jizfRExUiTo99u79B_mh0OqtLQ0Z.woff2) format(\"woff2\");unicode-range:U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:PT Sans;font-style:normal;font-weight:700;font-display:swap;src:local(\"PT Sans Bold\"),local(\"PTSans-Bold\"),url(https://fonts.gstatic.com/s/ptsans/v11/jizfRExUiTo99u79B_mh0OCtLQ0Z.woff2) format(\"woff2\");unicode-range:U+0100-024F,U+0259,U+1E00-1EFF,U+2020,U+20A0-20AB,U+20AD-20CF,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:PT Sans;font-style:normal;font-weight:700;font-display:swap;src:local(\"PT Sans Bold\"),local(\"PTSans-Bold\"),url(https://fonts.gstatic.com/s/ptsans/v11/jizfRExUiTo99u79B_mh0O6tLQ.woff2) format(\"woff2\");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+2000-206F,U+2074,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}.text-primary{color:var(--color-primary)!important}.text-secondary{color:var(--color-secondary)!important}.text-tertiary{color:var(--color-fonts-tertiary)!important}.text-weight-bold{font-weight:700!important}.text-weight-normal{font-weight:400!important}.mat-input-underline,.mat-form-field-underline{display:none}.mat-form-field-appearance-fill .mat-form-field-flex{display:flex!important;align-items:center!important;border:1px solid var(--color-inputs-border)!important;background:var(--color-inputs-background)!important;border-radius:6px!important}.mat-form-field-infix{padding:0!important;display:flex!important;align-items:center!important;border-top:none!important}.mat-select-arrow-wrapper{display:flex!important}.mat-icon-button{width:auto!important}.no-border .mat-form-field-flex{border:none!important}.no-border .mat-form-field-flex input{padding:1px}.mat-form-field-label-wrapper{top:-10px}.mat-form-field-should-float .mat-form-field-label-wrapper{font-size:14px}.placeholder-primary .mat-form-field-label-wrapper,.placeholder-primary .mat-form-field-label-wrapper label{color:var(--color-primary)!important}.placeholder-primary ::ng-deep .mat-form-field-placeholder,.placeholder-primary .mat-form-field-placeholder{color:var(--color-primary)!important}.placeholder-primary ::ng-deep .mat-focused .mat-form-field-placeholder,.placeholder-primary .mat-focused .mat-form-field-placeholder{color:var(--color-primary)!important}.placeholder-primary input ::placeholder{color:var(--color-primary)!important}.placeholder-bold .mat-form-field-label-wrapper,.placeholder-bold .mat-form-field-label-wrapper label{font-weight:700!important}.placeholder-bold ::ng-deep .mat-form-field-placeholder,.placeholder-bold .mat-form-field-placeholder{font-weight:700!important}.placeholder-bold ::ng-deep .mat-focused .mat-form-field-placeholder,.placeholder-bold .mat-focused .mat-form-field-placeholder{font-weight:700!important}.placeholder-bold input ::placeholder{font-weight:700!important}.apipass-input-text{width:100%}.apipass-input-text .mat-form-field-flex{padding:10px!important}.apipass-input-text .mat-form-field-wrapper,.apipass-search-input-text .mat-form-field-wrapper,.custom-select-component .mat-form-field-wrapper,.apipass-select .mat-form-field-wrapper,.apipass-date-filter .mat-form-field-wrapper{padding:0!important}.apipass-input-text .mat-icon-button,.apipass-search-input-text .mat-icon-button,.custom-select-component .mat-icon-button,.apipass-select .mat-icon-button,.apipass-date-filter .mat-icon-button{width:auto!important;height:auto!important}.apipass-input-text.label-input .mat-form-field-label-wrapper,.apipass-search-input-text.label-input .mat-form-field-label-wrapper,.custom-select-component.label-input .mat-form-field-label-wrapper,.apipass-select.label-input .mat-form-field-label-wrapper,.apipass-date-filter.label-input .mat-form-field-label-wrapper{padding-top:0;top:auto!important}.apipass-input-text.label-input input,.apipass-search-input-text.label-input input,.custom-select-component.label-input input,.apipass-select.label-input input,.apipass-date-filter.label-input input{padding-top:10px!important;padding-bottom:5px!important}.apipass-input-text.mat-form-field-should-float .mat-form-field-label-wrapper,.apipass-search-input-text.mat-form-field-should-float .mat-form-field-label-wrapper,.custom-select-component.mat-form-field-should-float .mat-form-field-label-wrapper,.apipass-select.mat-form-field-should-float .mat-form-field-label-wrapper,.apipass-date-filter.mat-form-field-should-float .mat-form-field-label-wrapper{padding-top:0!important;margin-top:-10px!important}.apipass-search-input-text{width:100%}.apipass-search-input-text.small-text{font-size:12px}.apipass-search-input-text .mat-form-field-flex{padding:2px 5px 2px 2px!important;border-top:none!important;border-left:none!important;border-right:none!important;border-radius:0!important}.apipass-search-input-text .search-icon{margin-top:-5px!important}.custom-select-component{width:100%}.custom-select-component .mat-form-field-flex{padding:1px 10px!important}.apipass-select{width:100%}.apipass-select .mat-form-field-flex{padding:10px 5px 10px 10px!important}.apipass-select.label-input .mat-form-field-infix{padding-top:7px!important;padding-bottom:7px!important}.apipass-date-filter{width:100%}.apipass-date-filter .mat-form-field-flex{padding:7px 10px!important}.apipass-date-filter .mat-form-field-suffix span{cursor:pointer;color:#777}.apipass-date-filter .mat-form-field-wrapper{padding-bottom:0!important}\n"] }]
|
|
39
|
+
}], propDecorators: { placeholder: [{
|
|
40
|
+
type: Input
|
|
41
|
+
}], enabledSearch: [{
|
|
42
|
+
type: Input
|
|
43
|
+
}], data: [{
|
|
44
|
+
type: Input
|
|
45
|
+
}], disabled: [{
|
|
46
|
+
type: Input
|
|
47
|
+
}] } });
|
|
48
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VsZWN0LWVudW0uY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vcHJvamVjdHMvaW5wdXRzL3NyYy9zZWxlY3QtZW51bS9zZWxlY3QtZW51bS5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi9wcm9qZWN0cy9pbnB1dHMvc3JjL3NlbGVjdC1lbnVtL3NlbGVjdC1lbnVtLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBQyxTQUFTLEVBQUUsVUFBVSxFQUFFLEtBQUssRUFBRSxpQkFBaUIsRUFBQyxNQUFNLGVBQWUsQ0FBQztBQUM5RSxPQUFPLEVBQUMsaUJBQWlCLEVBQUMsTUFBTSxnQkFBZ0IsQ0FBQztBQUNqRCxPQUFPLEVBQUMsaUJBQWlCLEVBQUMsTUFBTSx1QkFBdUIsQ0FBQzs7Ozs7Ozs7QUFheEQsTUFBTSxPQUFPLG1CQUFvQixTQUFRLGlCQUF5QjtJQVhsRTs7UUFha0IsZ0JBQVcsR0FBRyxXQUFXLENBQUM7UUFDMUIsa0JBQWEsR0FBRyxJQUFJLENBQUM7UUFFckIsYUFBUSxHQUFHLEtBQUssQ0FBQztRQUUxQixXQUFNLEdBQUcsRUFBRSxDQUFDO0tBT3BCO0lBTEMsU0FBUyxDQUFDLEtBQVU7UUFDbEIsSUFBSSxLQUFLLENBQUMsS0FBSyxLQUFLLEVBQUUsRUFBRTtZQUFDLEtBQUssQ0FBQyxNQUFNLENBQUMsS0FBSyxJQUFJLEdBQUcsQ0FBQztTQUFFO1FBQ3JELEtBQUssQ0FBQyxlQUFlLEVBQUUsQ0FBQztJQUMxQixDQUFDOztnSEFaVSxtQkFBbUI7b0dBQW5CLG1CQUFtQixrSkFQbkIsQ0FBQztZQUNWLE9BQU8sRUFBRSxpQkFBaUI7WUFDMUIsV0FBVyxFQUFFLFVBQVUsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxtQkFBbUIsQ0FBQztZQUNsRCxLQUFLLEVBQUUsSUFBSTtTQUNaLENBQUMsaURDWkosMm5CQVFBOzJGRE9hLG1CQUFtQjtrQkFYL0IsU0FBUzsrQkFDRSxhQUFhLGFBR1osQ0FBQzs0QkFDVixPQUFPLEVBQUUsaUJBQWlCOzRCQUMxQixXQUFXLEVBQUUsVUFBVSxDQUFDLEdBQUcsRUFBRSxvQkFBb0IsQ0FBQzs0QkFDbEQsS0FBSyxFQUFFLElBQUk7eUJBQ1osQ0FBQyxpQkFDYSxpQkFBaUIsQ0FBQyxJQUFJOzhCQUlyQixXQUFXO3NCQUExQixLQUFLO2dCQUNVLGFBQWE7c0JBQTVCLEtBQUs7Z0JBQ1UsSUFBSTtzQkFBbkIsS0FBSztnQkFDVSxRQUFRO3NCQUF2QixLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtDb21wb25lbnQsIGZvcndhcmRSZWYsIElucHV0LCBWaWV3RW5jYXBzdWxhdGlvbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7TkdfVkFMVUVfQUNDRVNTT1J9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcclxuaW1wb3J0IHtWYWx1ZUFjY2Vzc29yQmFzZX0gZnJvbSAnLi4vdmFsdWUtYWNlc3Nvci1iYXNlJztcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiAnc2VsZWN0LWVudW0nLFxyXG4gIHRlbXBsYXRlVXJsOiAnc2VsZWN0LWVudW0uY29tcG9uZW50Lmh0bWwnLFxyXG4gIHN0eWxlVXJsczogWydzZWxlY3QtZW51bS5jb21wb25lbnQuc2NzcyddLFxyXG4gIHByb3ZpZGVyczogW3tcclxuICAgIHByb3ZpZGU6IE5HX1ZBTFVFX0FDQ0VTU09SLFxyXG4gICAgdXNlRXhpc3Rpbmc6IGZvcndhcmRSZWYoKCkgPT4gU2VsZWN0RW51bUNvbXBvbmVudCksXHJcbiAgICBtdWx0aTogdHJ1ZVxyXG4gIH1dLFxyXG4gIGVuY2Fwc3VsYXRpb246IFZpZXdFbmNhcHN1bGF0aW9uLk5vbmVcclxufSlcclxuZXhwb3J0IGNsYXNzIFNlbGVjdEVudW1Db21wb25lbnQgZXh0ZW5kcyBWYWx1ZUFjY2Vzc29yQmFzZTxzdHJpbmc+ICB7XHJcblxyXG4gIEBJbnB1dCgpIHB1YmxpYyBwbGFjZWhvbGRlciA9ICdTZWxlY2lvbmUnO1xyXG4gIEBJbnB1dCgpIHB1YmxpYyBlbmFibGVkU2VhcmNoID0gdHJ1ZTtcclxuICBASW5wdXQoKSBwdWJsaWMgZGF0YTogYW55O1xyXG4gIEBJbnB1dCgpIHB1YmxpYyBkaXNhYmxlZCA9IGZhbHNlO1xyXG5cclxuICBwdWJsaWMgc2VhcmNoID0gJyc7XHJcblxyXG4gIG9uS2V5RG93bihldmVudDogYW55KTogdm9pZCB7XHJcbiAgICBpZiAoZXZlbnQud2hpY2ggPT09IDMyKSB7ZXZlbnQudGFyZ2V0LnZhbHVlICs9ICcgJzsgfVxyXG4gICAgZXZlbnQuc3RvcFByb3BhZ2F0aW9uKCk7XHJcbiAgfVxyXG5cclxufVxyXG4iLCI8bWF0LWZvcm0tZmllbGQgY2xhc3M9XCJhcGlwYXNzLXNlbGVjdCBhcGlwYXNzLXNlbGVjdC1lbnVtXCIgYXBwZWFyYW5jZT1cImZpbGxcIj5cclxuICA8bWF0LXNlbGVjdCBbKG5nTW9kZWwpXT1cInZhbHVlXCIgW2Rpc2FibGVkXT1cImRpc2FibGVkXCIgKGNsaWNrKT1cInNlYXJjaCA9ICcnXCIgW3BsYWNlaG9sZGVyXT1cInBsYWNlaG9sZGVyXCI+XHJcbiAgICA8bWF0LW9wdGlvbiBjbGFzcz1cIm1hdC1zZWxlY3QtaW5wdXRcIiAqbmdJZj1cImVuYWJsZWRTZWFyY2hcIiAoa2V5ZG93bik9XCJvbktleURvd24oJGV2ZW50KVwiIGRpc2FibGVkPVwiZGlzYWJsZWRcIj5cclxuICAgICAgPGlucHV0IGNsYXNzPVwiZm9ybS1jb250cm9sXCIgdHlwZT1cInRleHRcIiBbKG5nTW9kZWwpXT1cInNlYXJjaFwiIGF1dG9jb21wbGV0ZT1cIm9mZlwiIC8+XHJcbiAgICA8L21hdC1vcHRpb24+XHJcbiAgICA8bWF0LW9wdGlvbiAqbmdGb3I9XCJsZXQgZW51bURhdGEgb2YgZGF0YSB8IGVudW0gfCBzZWxlY3RFbnVtRmlsdGVyOiBzZWFyY2hcIiBbdmFsdWVdPVwiZW51bURhdGEua2V5XCI+e3sgZW51bURhdGEudmFsdWUgfX08L21hdC1vcHRpb24+XHJcbiAgPC9tYXQtc2VsZWN0PlxyXG48L21hdC1mb3JtLWZpZWxkPlxyXG4iXX0=
|
|
@@ -0,0 +1,169 @@
|
|
|
1
|
+
import { Component, ElementRef, EventEmitter, forwardRef, HostBinding, HostListener, Input, Output, ViewChild } from '@angular/core';
|
|
2
|
+
import { NG_VALUE_ACCESSOR } from '@angular/forms';
|
|
3
|
+
import { CustomSelectItem } from '../custom-select/custom-select-item';
|
|
4
|
+
import { ScrollStrategyOptions } from '@angular/cdk/overlay';
|
|
5
|
+
import * as i0 from "@angular/core";
|
|
6
|
+
import * as i1 from "@angular/cdk/overlay";
|
|
7
|
+
import * as i2 from "@angular/common";
|
|
8
|
+
import * as i3 from "@angular/forms";
|
|
9
|
+
import * as i4 from "@angular/material/form-field";
|
|
10
|
+
import * as i5 from "@angular/material/input";
|
|
11
|
+
import * as i6 from "ngx-drag-drop";
|
|
12
|
+
import * as i7 from "@apipass/pipes";
|
|
13
|
+
export class SelectInterpolationComponent {
|
|
14
|
+
constructor(sso) {
|
|
15
|
+
this.sso = sso;
|
|
16
|
+
this.edited = false;
|
|
17
|
+
this.selectedItemLabel = '';
|
|
18
|
+
this.searchText = '';
|
|
19
|
+
this.opened = false;
|
|
20
|
+
this.disabled = false;
|
|
21
|
+
this.items = [];
|
|
22
|
+
this.placeHolder = 'Select';
|
|
23
|
+
this.findPlaceHolder = 'Find item';
|
|
24
|
+
this.onSelect = new EventEmitter();
|
|
25
|
+
this.tabindex = '0';
|
|
26
|
+
this.onTouchedCallback = () => {
|
|
27
|
+
};
|
|
28
|
+
this.onChangeCallback = () => {
|
|
29
|
+
};
|
|
30
|
+
this.scrollStrategy = this.sso.block();
|
|
31
|
+
}
|
|
32
|
+
onBlur(target) {
|
|
33
|
+
if (this.selectedItemLabel) {
|
|
34
|
+
if (this.edited) {
|
|
35
|
+
this.writeValue(this.selectedItemLabel);
|
|
36
|
+
this.selectedItem = new CustomSelectItem(this.selectedItemLabel, this.selectedItemLabel);
|
|
37
|
+
this.onSelect.next(this.selectedItem);
|
|
38
|
+
}
|
|
39
|
+
}
|
|
40
|
+
else {
|
|
41
|
+
this.writeValue(undefined);
|
|
42
|
+
this.onSelect.next(undefined);
|
|
43
|
+
}
|
|
44
|
+
if (target && target.relatedTarget && target.relatedTarget.classList.contains('search-input-item')) {
|
|
45
|
+
return;
|
|
46
|
+
}
|
|
47
|
+
this.setTriggerRect();
|
|
48
|
+
this.opened = false;
|
|
49
|
+
}
|
|
50
|
+
ngAfterViewInit() {
|
|
51
|
+
setTimeout(() => {
|
|
52
|
+
this.setInitialState();
|
|
53
|
+
this.setTriggerRect();
|
|
54
|
+
}, 300);
|
|
55
|
+
}
|
|
56
|
+
setInitialState() {
|
|
57
|
+
setTimeout(() => {
|
|
58
|
+
if (this.value && this.items) {
|
|
59
|
+
const selectedItem = this.items.find(item => item.id === this.value);
|
|
60
|
+
this.selectedItemLabel = selectedItem?.text || this.value;
|
|
61
|
+
}
|
|
62
|
+
});
|
|
63
|
+
}
|
|
64
|
+
setTriggerRect() {
|
|
65
|
+
setTimeout(() => {
|
|
66
|
+
this._triggerRect = this.trigger?.nativeElement.getBoundingClientRect();
|
|
67
|
+
});
|
|
68
|
+
}
|
|
69
|
+
selectItem(item) {
|
|
70
|
+
this.opened = false;
|
|
71
|
+
this.edited = false;
|
|
72
|
+
this.selectedItem = item;
|
|
73
|
+
this.value = item.id;
|
|
74
|
+
this.selectedItemLabel = item.text;
|
|
75
|
+
this.searchText = '';
|
|
76
|
+
this.onSelect.next(item);
|
|
77
|
+
}
|
|
78
|
+
keyPress() {
|
|
79
|
+
this.setTriggerRect();
|
|
80
|
+
this.opened = false;
|
|
81
|
+
this.edited = true;
|
|
82
|
+
this.searchText = '';
|
|
83
|
+
}
|
|
84
|
+
clicked() {
|
|
85
|
+
this.setTriggerRect();
|
|
86
|
+
this.opened = true;
|
|
87
|
+
this.searchText = '';
|
|
88
|
+
}
|
|
89
|
+
get value() {
|
|
90
|
+
return this.innerValue;
|
|
91
|
+
}
|
|
92
|
+
set value(value) {
|
|
93
|
+
this.innerValue = value;
|
|
94
|
+
this.onChangeCallback(value);
|
|
95
|
+
}
|
|
96
|
+
writeValue(value) {
|
|
97
|
+
if (value !== this.value) {
|
|
98
|
+
this.value = value;
|
|
99
|
+
}
|
|
100
|
+
}
|
|
101
|
+
registerOnChange(fn) {
|
|
102
|
+
this.onChangeCallback = fn;
|
|
103
|
+
}
|
|
104
|
+
registerOnTouched(fn) {
|
|
105
|
+
this.onTouchedCallback = fn;
|
|
106
|
+
}
|
|
107
|
+
setDisabledState(isDisabled) {
|
|
108
|
+
this.disabled = isDisabled;
|
|
109
|
+
}
|
|
110
|
+
arrowClick(event) {
|
|
111
|
+
event.stopPropagation();
|
|
112
|
+
this.setTriggerRect();
|
|
113
|
+
if (this.opened) {
|
|
114
|
+
this.opened = false;
|
|
115
|
+
}
|
|
116
|
+
else {
|
|
117
|
+
this.opened = true;
|
|
118
|
+
this.searchText = '';
|
|
119
|
+
this.input?.nativeElement.focus();
|
|
120
|
+
}
|
|
121
|
+
}
|
|
122
|
+
onDrop($event) {
|
|
123
|
+
this.searchText = '';
|
|
124
|
+
if (!this.value) {
|
|
125
|
+
this.value = '';
|
|
126
|
+
}
|
|
127
|
+
this.edited = true;
|
|
128
|
+
this.value += `{{${$event.data}}}`;
|
|
129
|
+
this.selectedItemLabel = this.value;
|
|
130
|
+
this.onBlur(undefined);
|
|
131
|
+
}
|
|
132
|
+
}
|
|
133
|
+
SelectInterpolationComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.3", ngImport: i0, type: SelectInterpolationComponent, deps: [{ token: i1.ScrollStrategyOptions }], target: i0.ɵɵFactoryTarget.Component });
|
|
134
|
+
SelectInterpolationComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.0.3", type: SelectInterpolationComponent, selector: "select-interpolation", inputs: { disabled: "disabled", items: "items", placeHolder: "placeHolder", findPlaceHolder: "findPlaceHolder" }, outputs: { onSelect: "onSelect" }, host: { listeners: { "blur": "onBlur($event.target)" }, properties: { "attr.tabindex": "this.tabindex" } }, providers: [{
|
|
135
|
+
provide: NG_VALUE_ACCESSOR,
|
|
136
|
+
useExisting: forwardRef(() => SelectInterpolationComponent),
|
|
137
|
+
multi: true
|
|
138
|
+
}], viewQueries: [{ propertyName: "trigger", first: true, predicate: ["trigger"], descendants: true }, { propertyName: "input", first: true, predicate: ["input"], descendants: true, read: ElementRef }], ngImport: i0, template: "<div class=\"custom-select-input\" #trigger>\r\n <mat-form-field cdkOverlayOrigin #origin=\"cdkOverlayOrigin\" class=\"custom-select-component\" [ngClass]=\"{'select-open' : opened}\" appearance=\"fill\" autocomplete=\"off\">\r\n <input matInput #input\r\n [placeholder]=\"placeHolder\"\r\n (focus)=\"opened = true\"\r\n (blur)=\"onBlur($event)\"\r\n [(ngModel)]=\"selectedItemLabel\"\r\n [ngModelOptions]=\"{standalone: true}\"\r\n [disabled]=\"disabled\"\r\n (keyup)=keyPress()\r\n (click)=\"clicked()\"\r\n dndDropzone\r\n (dndDrop)=\"onDrop($event)\"\r\n autocomplete=\"off\"\r\n />\r\n <span class=\"open-icon\" (click)=\"arrowClick($event)\">\r\n <i class=\"fas\" [ngClass]=\"{'fa-caret-down' : !opened, 'fa-caret-up' : opened}\"></i>\r\n </span>\r\n </mat-form-field>\r\n</div>\r\n<div class=\"custom-select-component\">\r\n\r\n <ng-template cdkConnectedOverlay\r\n [cdkConnectedOverlayPanelClass]=\"'custom-select-overlay-panel'\"\r\n [cdkConnectedOverlayScrollStrategy]=\"scrollStrategy\"\r\n [cdkConnectedOverlayOrigin]=\"origin\"\r\n [cdkConnectedOverlayOpen]=\"opened\"\r\n [cdkConnectedOverlayMinWidth]=\"_triggerRect?.width!\">\r\n <ul class=\"ul-ac\">\r\n <li class=\"li-search search-input-item\">\r\n <mat-form-field class=\"apipass-input-text search-input-item\" appearance=\"fill\">\r\n <input matInput class=\"search-input-item\"\r\n [placeholder]=\"findPlaceHolder\"\r\n [(ngModel)]=\"searchText\"\r\n (blur)=\"onBlur($event)\"\r\n aria-autocomplete=\"none\"\r\n autocomplete=\"off\"\r\n />\r\n </mat-form-field>\r\n </li>\r\n\r\n <li class=\"clickable\" *ngFor=\"let i of items | selectFilter:searchText:'text'\"\r\n (click)=\"selectItem(i)\"\r\n (mousedown)=\"selectItem(i)\">\r\n {{i.text}}\r\n </li>\r\n\r\n </ul>\r\n </ng-template>\r\n</div>\r\n", styles: ["::ng-deep .custom-select-overlay-panel,.custom-select-input,.custom-select-component{cursor:pointer}::ng-deep .custom-select-overlay-panel input,.custom-select-input input,.custom-select-component input{background:#FFF!important;height:48px}::ng-deep .custom-select-overlay-panel .ul-ac,.custom-select-input .ul-ac,.custom-select-component .ul-ac{max-height:16rem;overflow:auto;background:#fff;border:1px solid #ccc;box-sizing:border-box;list-style:none;padding:0;width:100%;position:relative;margin-top:-1px}::ng-deep .custom-select-overlay-panel .ul-ac li,.custom-select-input .ul-ac li,.custom-select-component .ul-ac li{text-align:left;cursor:pointer;overflow:hidden;white-space:nowrap;text-overflow:ellipsis;padding:10px;font-size:12px}::ng-deep .custom-select-overlay-panel .ul-ac li:hover,.custom-select-input .ul-ac li:hover,.custom-select-component .ul-ac li:hover{background:#bbbcbc}::ng-deep .custom-select-overlay-panel .ul-ac li .mat-form-field-flex,.custom-select-input .ul-ac li .mat-form-field-flex,.custom-select-component .ul-ac li .mat-form-field-flex{height:37px!important}::ng-deep .custom-select-overlay-panel .ul-ac li .mat-form-field-flex input,.custom-select-input .ul-ac li .mat-form-field-flex input,.custom-select-component .ul-ac li .mat-form-field-flex input{height:auto}::ng-deep .custom-select-overlay-panel .selected,.custom-select-input .selected,.custom-select-component .selected{background-color:#898a8a!important}::ng-deep .custom-select-overlay-panel .selected .fa,.custom-select-input .selected .fa,.custom-select-component .selected .fa{color:#fff!important}::ng-deep .custom-select-overlay-panel .remove-icon i,.custom-select-input .remove-icon i,.custom-select-component .remove-icon i{color:red;margin-right:10px}::ng-deep .custom-select-overlay-panel .open-icon,.custom-select-input .open-icon,.custom-select-component .open-icon{cursor:pointer}::ng-deep .custom-select-overlay-panel .open-icon i,.custom-select-input .open-icon i,.custom-select-component .open-icon i{color:#0000008a}::ng-deep .custom-select-overlay-panel .li-search,.custom-select-input .li-search,.custom-select-component .li-search{cursor:default!important;border-bottom:1px solid #CCC!important}::ng-deep .custom-select-overlay-panel .li-search:hover,.custom-select-input .li-search:hover,.custom-select-component .li-search:hover{background:#FFF!important}::ng-deep .custom-select-overlay-panel .select-open .mat-form-field-flex,.custom-select-input .select-open .mat-form-field-flex,.custom-select-component .select-open .mat-form-field-flex{border-radius:6px 6px 0 0!important}\n"], dependencies: [{ kind: "directive", type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i3.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i3.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i3.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "component", type: i4.MatFormField, selector: "mat-form-field", inputs: ["hideRequiredMarker", "color", "floatLabel", "appearance", "subscriptSizing", "hintLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: i5.MatInput, selector: "input[matInput], textarea[matInput], select[matNativeControl], input[matNativeControl], textarea[matNativeControl]", inputs: ["disabled", "id", "placeholder", "name", "required", "type", "errorStateMatcher", "aria-describedby", "value", "readonly"], exportAs: ["matInput"] }, { kind: "directive", type: i6.DndDropzoneDirective, selector: "[dndDropzone]", inputs: ["dndDropzone", "dndEffectAllowed", "dndAllowExternal", "dndHorizontal", "dndDragoverClass", "dndDropzoneDisabledClass", "dndDisableIf", "dndDisableDropIf"], outputs: ["dndDragover", "dndDrop"] }, { kind: "directive", type: i1.CdkConnectedOverlay, selector: "[cdk-connected-overlay], [connected-overlay], [cdkConnectedOverlay]", inputs: ["cdkConnectedOverlayOrigin", "cdkConnectedOverlayPositions", "cdkConnectedOverlayPositionStrategy", "cdkConnectedOverlayOffsetX", "cdkConnectedOverlayOffsetY", "cdkConnectedOverlayWidth", "cdkConnectedOverlayHeight", "cdkConnectedOverlayMinWidth", "cdkConnectedOverlayMinHeight", "cdkConnectedOverlayBackdropClass", "cdkConnectedOverlayPanelClass", "cdkConnectedOverlayViewportMargin", "cdkConnectedOverlayScrollStrategy", "cdkConnectedOverlayOpen", "cdkConnectedOverlayDisableClose", "cdkConnectedOverlayTransformOriginOn", "cdkConnectedOverlayHasBackdrop", "cdkConnectedOverlayLockPosition", "cdkConnectedOverlayFlexibleDimensions", "cdkConnectedOverlayGrowAfterOpen", "cdkConnectedOverlayPush"], outputs: ["backdropClick", "positionChange", "attach", "detach", "overlayKeydown", "overlayOutsideClick"], exportAs: ["cdkConnectedOverlay"] }, { kind: "directive", type: i1.CdkOverlayOrigin, selector: "[cdk-overlay-origin], [overlay-origin], [cdkOverlayOrigin]", exportAs: ["cdkOverlayOrigin"] }, { kind: "pipe", type: i7.SelectFilterPipe, name: "selectFilter" }] });
|
|
139
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.3", ngImport: i0, type: SelectInterpolationComponent, decorators: [{
|
|
140
|
+
type: Component,
|
|
141
|
+
args: [{ selector: 'select-interpolation', providers: [{
|
|
142
|
+
provide: NG_VALUE_ACCESSOR,
|
|
143
|
+
useExisting: forwardRef(() => SelectInterpolationComponent),
|
|
144
|
+
multi: true
|
|
145
|
+
}], template: "<div class=\"custom-select-input\" #trigger>\r\n <mat-form-field cdkOverlayOrigin #origin=\"cdkOverlayOrigin\" class=\"custom-select-component\" [ngClass]=\"{'select-open' : opened}\" appearance=\"fill\" autocomplete=\"off\">\r\n <input matInput #input\r\n [placeholder]=\"placeHolder\"\r\n (focus)=\"opened = true\"\r\n (blur)=\"onBlur($event)\"\r\n [(ngModel)]=\"selectedItemLabel\"\r\n [ngModelOptions]=\"{standalone: true}\"\r\n [disabled]=\"disabled\"\r\n (keyup)=keyPress()\r\n (click)=\"clicked()\"\r\n dndDropzone\r\n (dndDrop)=\"onDrop($event)\"\r\n autocomplete=\"off\"\r\n />\r\n <span class=\"open-icon\" (click)=\"arrowClick($event)\">\r\n <i class=\"fas\" [ngClass]=\"{'fa-caret-down' : !opened, 'fa-caret-up' : opened}\"></i>\r\n </span>\r\n </mat-form-field>\r\n</div>\r\n<div class=\"custom-select-component\">\r\n\r\n <ng-template cdkConnectedOverlay\r\n [cdkConnectedOverlayPanelClass]=\"'custom-select-overlay-panel'\"\r\n [cdkConnectedOverlayScrollStrategy]=\"scrollStrategy\"\r\n [cdkConnectedOverlayOrigin]=\"origin\"\r\n [cdkConnectedOverlayOpen]=\"opened\"\r\n [cdkConnectedOverlayMinWidth]=\"_triggerRect?.width!\">\r\n <ul class=\"ul-ac\">\r\n <li class=\"li-search search-input-item\">\r\n <mat-form-field class=\"apipass-input-text search-input-item\" appearance=\"fill\">\r\n <input matInput class=\"search-input-item\"\r\n [placeholder]=\"findPlaceHolder\"\r\n [(ngModel)]=\"searchText\"\r\n (blur)=\"onBlur($event)\"\r\n aria-autocomplete=\"none\"\r\n autocomplete=\"off\"\r\n />\r\n </mat-form-field>\r\n </li>\r\n\r\n <li class=\"clickable\" *ngFor=\"let i of items | selectFilter:searchText:'text'\"\r\n (click)=\"selectItem(i)\"\r\n (mousedown)=\"selectItem(i)\">\r\n {{i.text}}\r\n </li>\r\n\r\n </ul>\r\n </ng-template>\r\n</div>\r\n", styles: ["::ng-deep .custom-select-overlay-panel,.custom-select-input,.custom-select-component{cursor:pointer}::ng-deep .custom-select-overlay-panel input,.custom-select-input input,.custom-select-component input{background:#FFF!important;height:48px}::ng-deep .custom-select-overlay-panel .ul-ac,.custom-select-input .ul-ac,.custom-select-component .ul-ac{max-height:16rem;overflow:auto;background:#fff;border:1px solid #ccc;box-sizing:border-box;list-style:none;padding:0;width:100%;position:relative;margin-top:-1px}::ng-deep .custom-select-overlay-panel .ul-ac li,.custom-select-input .ul-ac li,.custom-select-component .ul-ac li{text-align:left;cursor:pointer;overflow:hidden;white-space:nowrap;text-overflow:ellipsis;padding:10px;font-size:12px}::ng-deep .custom-select-overlay-panel .ul-ac li:hover,.custom-select-input .ul-ac li:hover,.custom-select-component .ul-ac li:hover{background:#bbbcbc}::ng-deep .custom-select-overlay-panel .ul-ac li .mat-form-field-flex,.custom-select-input .ul-ac li .mat-form-field-flex,.custom-select-component .ul-ac li .mat-form-field-flex{height:37px!important}::ng-deep .custom-select-overlay-panel .ul-ac li .mat-form-field-flex input,.custom-select-input .ul-ac li .mat-form-field-flex input,.custom-select-component .ul-ac li .mat-form-field-flex input{height:auto}::ng-deep .custom-select-overlay-panel .selected,.custom-select-input .selected,.custom-select-component .selected{background-color:#898a8a!important}::ng-deep .custom-select-overlay-panel .selected .fa,.custom-select-input .selected .fa,.custom-select-component .selected .fa{color:#fff!important}::ng-deep .custom-select-overlay-panel .remove-icon i,.custom-select-input .remove-icon i,.custom-select-component .remove-icon i{color:red;margin-right:10px}::ng-deep .custom-select-overlay-panel .open-icon,.custom-select-input .open-icon,.custom-select-component .open-icon{cursor:pointer}::ng-deep .custom-select-overlay-panel .open-icon i,.custom-select-input .open-icon i,.custom-select-component .open-icon i{color:#0000008a}::ng-deep .custom-select-overlay-panel .li-search,.custom-select-input .li-search,.custom-select-component .li-search{cursor:default!important;border-bottom:1px solid #CCC!important}::ng-deep .custom-select-overlay-panel .li-search:hover,.custom-select-input .li-search:hover,.custom-select-component .li-search:hover{background:#FFF!important}::ng-deep .custom-select-overlay-panel .select-open .mat-form-field-flex,.custom-select-input .select-open .mat-form-field-flex,.custom-select-component .select-open .mat-form-field-flex{border-radius:6px 6px 0 0!important}\n"] }]
|
|
146
|
+
}], ctorParameters: function () { return [{ type: i1.ScrollStrategyOptions }]; }, propDecorators: { disabled: [{
|
|
147
|
+
type: Input
|
|
148
|
+
}], items: [{
|
|
149
|
+
type: Input
|
|
150
|
+
}], placeHolder: [{
|
|
151
|
+
type: Input
|
|
152
|
+
}], findPlaceHolder: [{
|
|
153
|
+
type: Input
|
|
154
|
+
}], onSelect: [{
|
|
155
|
+
type: Output
|
|
156
|
+
}], trigger: [{
|
|
157
|
+
type: ViewChild,
|
|
158
|
+
args: ['trigger']
|
|
159
|
+
}], input: [{
|
|
160
|
+
type: ViewChild,
|
|
161
|
+
args: ['input', { read: ElementRef }]
|
|
162
|
+
}], tabindex: [{
|
|
163
|
+
type: HostBinding,
|
|
164
|
+
args: ['attr.tabindex']
|
|
165
|
+
}], onBlur: [{
|
|
166
|
+
type: HostListener,
|
|
167
|
+
args: ['blur', ['$event.target']]
|
|
168
|
+
}] } });
|
|
169
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VsZWN0LWludGVycG9sYXRpb24uY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vcHJvamVjdHMvaW5wdXRzL3NyYy9zZWxlY3QtaW50ZXJwb2xhdGlvbi9zZWxlY3QtaW50ZXJwb2xhdGlvbi5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi9wcm9qZWN0cy9pbnB1dHMvc3JjL3NlbGVjdC1pbnRlcnBvbGF0aW9uL3NlbGVjdC1pbnRlcnBvbGF0aW9uLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFFTCxTQUFTLEVBQ1QsVUFBVSxFQUNWLFlBQVksRUFDWixVQUFVLEVBQ1YsV0FBVyxFQUNYLFlBQVksRUFDWixLQUFLLEVBQ0wsTUFBTSxFQUNOLFNBQVMsRUFDVixNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQXVCLGlCQUFpQixFQUFDLE1BQU0sZ0JBQWdCLENBQUM7QUFDdkUsT0FBTyxFQUFDLGdCQUFnQixFQUFDLE1BQU0scUNBQXFDLENBQUM7QUFDckUsT0FBTyxFQUFpQixxQkFBcUIsRUFBQyxNQUFNLHNCQUFzQixDQUFDOzs7Ozs7Ozs7QUFZM0UsTUFBTSxPQUFPLDRCQUE0QjtJQXlCdkMsWUFBNkIsR0FBMEI7UUFBMUIsUUFBRyxHQUFILEdBQUcsQ0FBdUI7UUF0Qi9DLFdBQU0sR0FBRyxLQUFLLENBQUM7UUFLaEIsc0JBQWlCLEdBQUcsRUFBRSxDQUFDO1FBQ3ZCLGVBQVUsR0FBRyxFQUFFLENBQUM7UUFDaEIsV0FBTSxHQUFHLEtBQUssQ0FBQztRQUVOLGFBQVEsR0FBRyxLQUFLLENBQUM7UUFDakIsVUFBSyxHQUF1QixFQUFFLENBQUM7UUFDL0IsZ0JBQVcsR0FBRyxRQUFRLENBQUM7UUFDdkIsb0JBQWUsR0FBRyxXQUFXLENBQUM7UUFFN0IsYUFBUSxHQUFtQyxJQUFJLFlBQVksRUFBRSxDQUFDO1FBWWpELGFBQVEsR0FBRyxHQUFHLENBQUM7UUFn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Z0JBT1YsUUFBUTtzQkFBckMsV0FBVzt1QkFBQyxlQUFlO2dCQUNhLE1BQU07c0JBQTlDLFlBQVk7dUJBQUMsTUFBTSxFQUFFLENBQUMsZUFBZSxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcclxuICBBZnRlclZpZXdJbml0LFxyXG4gIENvbXBvbmVudCxcclxuICBFbGVtZW50UmVmLFxyXG4gIEV2ZW50RW1pdHRlcixcclxuICBmb3J3YXJkUmVmLFxyXG4gIEhvc3RCaW5kaW5nLFxyXG4gIEhvc3RMaXN0ZW5lcixcclxuICBJbnB1dCxcclxuICBPdXRwdXQsXHJcbiAgVmlld0NoaWxkXHJcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7Q29udHJvbFZhbHVlQWNjZXNzb3IsIE5HX1ZBTFVFX0FDQ0VTU09SfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XHJcbmltcG9ydCB7Q3VzdG9tU2VsZWN0SXRlbX0gZnJvbSAnLi4vY3VzdG9tLXNlbGVjdC9jdXN0b20tc2VsZWN0LWl0ZW0nO1xyXG5pbXBvcnQge1Njcm9sbFN0cmF0ZWd5LCBTY3JvbGxTdHJhdGVneU9wdGlvbnN9IGZyb20gJ0Bhbmd1bGFyL2Nkay9vdmVybGF5JztcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiAnc2VsZWN0LWludGVycG9sYXRpb24nLFxyXG4gIHRlbXBsYXRlVXJsOiAnc2VsZWN0LWludGVycG9sYXRpb24uY29tcG9uZW50Lmh0bWwnLFxyXG4gIHN0eWxlVXJsczogWydzZWxlY3QtaW50ZXJwb2xhdGlvbi5jb21wb25lbnQuc2NzcyddLFxyXG4gIHByb3ZpZGVyczogW3tcclxuICAgIHByb3ZpZGU6IE5HX1ZBTFVFX0FDQ0VTU09SLFxyXG4gICAgdXNlRXhpc3Rpbmc6IGZvcndhcmRSZWYoKCkgPT4gU2VsZWN0SW50ZXJwb2xhdGlvbkNvbXBvbmVudCksXHJcbiAgICBtdWx0aTogdHJ1ZVxyXG4gIH1dXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBTZWxlY3RJbnRlcnBvbGF0aW9uQ29tcG9uZW50IGltcGxlbWVudHMgQ29udHJvbFZhbHVlQWNjZXNzb3IsIEFmdGVyVmlld0luaXQge1xyXG5cclxuICBwcml2YXRlIGlubmVyVmFsdWU6IGFueTtcclxuICBwcml2YXRlIGVkaXRlZCA9IGZhbHNlO1xyXG5cclxuICBwdWJsaWMgc2Nyb2xsU3RyYXRlZ3k6IFNjcm9sbFN0cmF0ZWd5O1xyXG4gIHB1YmxpYyBfdHJpZ2dlclJlY3Q6IENsaWVudFJlY3QgfCB1bmRlZmluZWQ7XHJcbiAgcHVibGljIHNlbGVjdGVkSXRlbTogQ3VzdG9tU2VsZWN0SXRlbSB8IHVuZGVmaW5lZDtcclxuICBwdWJsaWMgc2VsZWN0ZWRJdGVtTGFiZWwgPSAnJztcclxuICBwdWJsaWMgc2VhcmNoVGV4dCA9ICcnO1xyXG4gIHB1YmxpYyBvcGVuZWQgPSBmYWxzZTtcclxuXHJcbiAgQElucHV0KCkgcHVibGljIGRpc2FibGVkID0gZmFsc2U7XHJcbiAgQElucHV0KCkgcHVibGljIGl0ZW1zOiBDdXN0b21TZWxlY3RJdGVtW10gPSBbXTtcclxuICBASW5wdXQoKSBwdWJsaWMgcGxhY2VIb2xkZXIgPSAnU2VsZWN0JztcclxuICBASW5wdXQoKSBwdWJsaWMgZmluZFBsYWNlSG9sZGVyID0gJ0ZpbmQgaXRlbSc7XHJcblxyXG4gIEBPdXRwdXQoKSBwdWJsaWMgb25TZWxlY3Q6IEV2ZW50RW1pdHRlcjxDdXN0b21TZWxlY3RJdGVtPiA9IG5ldyBFdmVudEVtaXR0ZXIoKTtcclxuXHJcbiAgQFZpZXdDaGlsZCgndHJpZ2dlcicpXHJcbiAgcHVibGljIHRyaWdnZXI6IEVsZW1lbnRSZWYgfCB1bmRlZmluZWQ7XHJcblxyXG4gIEBWaWV3Q2hpbGQoJ2lucHV0JywgeyByZWFkOiBFbGVtZW50UmVmIH0pXHJcbiAgcHVibGljIGlucHV0OiBFbGVtZW50UmVmIHwgdW5kZWZpbmVkO1xyXG5cclxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIHJlYWRvbmx5IHNzbzogU2Nyb2xsU3RyYXRlZ3lPcHRpb25zKSB7XHJcbiAgICB0aGlzLnNjcm9sbFN0cmF0ZWd5ID0gdGhpcy5zc28uYmxvY2soKTtcclxuICB9XHJcblxyXG4gIEBIb3N0QmluZGluZygnYXR0ci50YWJpbmRleCcpIHRhYmluZGV4ID0gJzAnO1xyXG4gIEBIb3N0TGlzdGVuZXIoJ2JsdXInLCBbJyRldmVudC50YXJnZXQnXSkgb25CbHVyKHRhcmdldDogYW55KTogdm9pZCB7XHJcbiAgICBpZiAodGhpcy5zZWxlY3RlZEl0ZW1MYWJlbCkge1xyXG4gICAgICBpZiAodGhpcy5lZGl0ZWQpIHtcclxuICAgICAgICB0aGlzLndyaXRlVmFsdWUodGhpcy5zZWxlY3RlZEl0ZW1MYWJlbCk7XHJcbiAgICAgICAgdGhpcy5zZWxlY3RlZEl0ZW0gPSBuZXcgQ3VzdG9tU2VsZWN0SXRlbSh0aGlzLnNlbGVjdGVkSXRlbUxhYmVsLCB0aGlzLnNlbGVjdGVkSXRlbUxhYmVsKTtcclxuICAgICAgICB0aGlzLm9uU2VsZWN0Lm5leHQodGhpcy5zZWxlY3RlZEl0ZW0pO1xyXG4gICAgICB9XHJcbiAgICB9IGVsc2Uge1xyXG4gICAgICB0aGlzLndyaXRlVmFsdWUodW5kZWZpbmVkKTtcclxuICAgICAgdGhpcy5vblNlbGVjdC5uZXh0KHVuZGVmaW5lZCk7XHJcbiAgICB9XHJcbiAgICBpZiAodGFyZ2V0ICYmIHRhcmdldC5yZWxhdGVkVGFyZ2V0ICYmIHRhcmdldC5yZWxhdGVkVGFyZ2V0LmNsYXNzTGlzdC5jb250YWlucygnc2VhcmNoLWlucHV0LWl0ZW0nKSkge1xyXG4gICAgICByZXR1cm47XHJcbiAgICB9XHJcbiAgICB0aGlzLnNldFRyaWdnZXJSZWN0KCk7XHJcbiAgICB0aGlzLm9wZW5lZCA9IGZhbHNlO1xyXG4gIH1cclxuXHJcbiAgbmdBZnRlclZpZXdJbml0KCk6IHZvaWQge1xyXG4gICAgc2V0VGltZW91dCgoKSA9PiB7XHJcbiAgICAgIHRoaXMuc2V0SW5pdGlhbFN0YXRlKCk7XHJcbiAgICAgIHRoaXMuc2V0VHJpZ2dlclJlY3QoKTtcclxuICAgIH0sIDMwMCk7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgc2V0SW5pdGlhbFN0YXRlKCk6IHZvaWQge1xyXG4gICAgc2V0VGltZW91dCgoKSA9PiB7XHJcbiAgICAgIGlmICh0aGlzLnZhbHVlICYmIHRoaXMuaXRlbXMpIHtcclxuICAgICAgICBjb25zdCBzZWxlY3RlZEl0ZW0gPSB0aGlzLml0ZW1zLmZpbmQoaXRlbSA9PiBpdGVtLmlkID09PSB0aGlzLnZhbHVlKTtcclxuICAgICAgICB0aGlzLnNlbGVjdGVkSXRlbUxhYmVsID0gc2VsZWN0ZWRJdGVtPy50ZXh0IHx8IHRoaXMudmFsdWU7XHJcbiAgICAgIH1cclxuICAgIH0pO1xyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBzZXRUcmlnZ2VyUmVjdCgpOiB2b2lkIHtcclxuICAgIHNldFRpbWVvdXQoKCkgPT4ge1xyXG4gICAgICB0aGlzLl90cmlnZ2VyUmVjdCA9IHRoaXMudHJpZ2dlcj8ubmF0aXZlRWxlbWVudC5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKTtcclxuICAgIH0pO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIHNlbGVjdEl0ZW0oaXRlbTogQ3VzdG9tU2VsZWN0SXRlbSk6IHZvaWQge1xyXG4gICAgdGhpcy5vcGVuZWQgPSBmYWxzZTtcclxuICAgIHRoaXMuZWRpdGVkID0gZmFsc2U7XHJcbiAgICB0aGlzLnNlbGVjdGVkSXRlbSA9IGl0ZW07XHJcbiAgICB0aGlzLnZhbHVlID0gaXRlbS5pZDtcclxuICAgIHRoaXMuc2VsZWN0ZWRJdGVtTGFiZWwgPSBpdGVtLnRleHQ7XHJcbiAgICB0aGlzLnNlYXJjaFRleHQgPSAnJztcclxuICAgIHRoaXMub25TZWxlY3QubmV4dChpdGVtKTtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBrZXlQcmVzcygpOiBhbnkge1xyXG4gICAgdGhpcy5zZXRUcmlnZ2VyUmVjdCgpO1xyXG4gICAgdGhpcy5vcGVuZWQgPSBmYWxzZTtcclxuICAgIHRoaXMuZWRpdGVkID0gdHJ1ZTtcclxuICAgIHRoaXMuc2VhcmNoVGV4dCA9ICcnO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIGNsaWNrZWQoKTogdm9pZCB7XHJcbiAgICB0aGlzLnNldFRyaWdnZXJSZWN0KCk7XHJcbiAgICB0aGlzLm9wZW5lZCA9IHRydWU7XHJcbiAgICB0aGlzLnNlYXJjaFRleHQgPSAnJztcclxuICB9XHJcblxyXG4gIHByaXZhdGUgb25Ub3VjaGVkQ2FsbGJhY2s6ICgpID0+IHZvaWQgPSAoKSA9PiB7XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIG9uQ2hhbmdlQ2FsbGJhY2s6IChfOiBhbnkpID0+IHZvaWQgPSAoKSA9PiB7XHJcbiAgfVxyXG5cclxuICBnZXQgdmFsdWUoKTogYW55IHtcclxuICAgIHJldHVybiB0aGlzLmlubmVyVmFsdWU7XHJcbiAgfVxyXG5cclxuICBzZXQgdmFsdWUodmFsdWU6IGFueSkge1xyXG4gICAgdGhpcy5pbm5lclZhbHVlID0gdmFsdWU7XHJcbiAgICB0aGlzLm9uQ2hhbmdlQ2FsbGJhY2sodmFsdWUpO1xyXG4gIH1cclxuXHJcbiAgd3JpdGVWYWx1ZSh2YWx1ZTogYW55KTogdm9pZCB7XHJcbiAgICBpZiAodmFsdWUgIT09IHRoaXMudmFsdWUpIHtcclxuICAgICAgdGhpcy52YWx1ZSA9IHZhbHVlO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgcmVnaXN0ZXJPbkNoYW5nZShmbjogYW55KTogdm9pZCB7XHJcbiAgICB0aGlzLm9uQ2hhbmdlQ2FsbGJhY2sgPSBmbjtcclxuICB9XHJcblxyXG4gIHJlZ2lzdGVyT25Ub3VjaGVkKGZuOiBhbnkpOiB2b2lkIHtcclxuICAgIHRoaXMub25Ub3VjaGVkQ2FsbGJhY2sgPSBmbjtcclxuICB9XHJcblxyXG4gIHNldERpc2FibGVkU3RhdGUoaXNEaXNhYmxlZDogYm9vbGVhbik6IHZvaWQge1xyXG4gICAgdGhpcy5kaXNhYmxlZCA9IGlzRGlzYWJsZWQ7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgYXJyb3dDbGljayhldmVudDogYW55KTogdm9pZCB7XHJcbiAgICBldmVudC5zdG9wUHJvcGFnYXRpb24oKTtcclxuICAgIHRoaXMuc2V0VHJpZ2dlclJlY3QoKTtcclxuICAgIGlmICh0aGlzLm9wZW5lZCkge1xyXG4gICAgICB0aGlzLm9wZW5lZCA9IGZhbHNlO1xyXG4gICAgfSBlbHNlIHtcclxuICAgICAgdGhpcy5vcGVuZWQgPSB0cnVlO1xyXG4gICAgICB0aGlzLnNlYXJjaFRleHQgPSAnJztcclxuICAgICAgdGhpcy5pbnB1dD8ubmF0aXZlRWxlbWVudC5mb2N1cygpO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgcHVibGljIG9uRHJvcCgkZXZlbnQ6IGFueSk6IHZvaWQge1xyXG4gICAgdGhpcy5zZWFyY2hUZXh0ID0gJyc7XHJcbiAgICBpZiAoIXRoaXMudmFsdWUpIHtcclxuICAgICAgdGhpcy52YWx1ZSA9ICcnO1xyXG4gICAgfVxyXG4gICAgdGhpcy5lZGl0ZWQgPSB0cnVlO1xyXG4gICAgdGhpcy52YWx1ZSArPSBge3skeyRldmVudC5kYXRhfX19YDtcclxuICAgIHRoaXMuc2VsZWN0ZWRJdGVtTGFiZWwgPSB0aGlzLnZhbHVlO1xyXG4gICAgdGhpcy5vbkJsdXIodW5kZWZpbmVkKTtcclxuICB9XHJcblxyXG59XHJcbiIsIjxkaXYgY2xhc3M9XCJjdXN0b20tc2VsZWN0LWlucHV0XCIgI3RyaWdnZXI+XHJcbiAgPG1hdC1mb3JtLWZpZWxkIGNka092ZXJsYXlPcmlnaW4gI29yaWdpbj1cImNka092ZXJsYXlPcmlnaW5cIiBjbGFzcz1cImN1c3RvbS1zZWxlY3QtY29tcG9uZW50XCIgW25nQ2xhc3NdPVwieydzZWxlY3Qtb3BlbicgOiBvcGVuZWR9XCIgYXBwZWFyYW5jZT1cImZpbGxcIiBhdXRvY29tcGxldGU9XCJvZmZcIj5cclxuICAgIDxpbnB1dCBtYXRJbnB1dCAjaW5wdXRcclxuICAgICAgICAgICBbcGxhY2Vob2xkZXJdPVwicGxhY2VIb2xkZXJcIlxyXG4gICAgICAgICAgIChmb2N1cyk9XCJvcGVuZWQgPSB0cnVlXCJcclxuICAgICAgICAgICAoYmx1cik9XCJvbkJsdXIoJGV2ZW50KVwiXHJcbiAgICAgICAgICAgWyhuZ01vZGVsKV09XCJzZWxlY3RlZEl0ZW1MYWJlbFwiXHJcbiAgICAgICAgICAgW25nTW9kZWxPcHRpb25zXT1cIntzdGFuZGFsb25lOiB0cnVlfVwiXHJcbiAgICAgICAgICAgW2Rpc2FibGVkXT1cImRpc2FibGVkXCJcclxuICAgICAgICAgICAoa2V5dXApPWtleVByZXNzKClcclxuICAgICAgICAgICAoY2xpY2spPVwiY2xpY2tlZCgpXCJcclxuICAgICAgICAgICBkbmREcm9wem9uZVxyXG4gICAgICAgICAgIChkbmREcm9wKT1cIm9uRHJvcCgkZXZlbnQpXCJcclxuICAgICAgICAgICBhdXRvY29tcGxldGU9XCJvZmZcIlxyXG4gICAgLz5cclxuICAgIDxzcGFuIGNsYXNzPVwib3Blbi1pY29uXCIgKGNsaWNrKT1cImFycm93Q2xpY2soJGV2ZW50KVwiPlxyXG4gICAgICAgIDxpIGNsYXNzPVwiZmFzXCIgW25nQ2xhc3NdPVwieydmYS1jYXJldC1kb3duJyA6ICFvcGVuZWQsICdmYS1jYXJldC11cCcgOiBvcGVuZWR9XCI+PC9pPlxyXG4gICAgPC9zcGFuPlxyXG4gIDwvbWF0LWZvcm0tZmllbGQ+XHJcbjwvZGl2PlxyXG48ZGl2IGNsYXNzPVwiY3VzdG9tLXNlbGVjdC1jb21wb25lbnRcIj5cclxuXHJcbiAgPG5nLXRlbXBsYXRlIGNka0Nvbm5lY3RlZE92ZXJsYXlcclxuICAgICAgICAgICAgICAgW2Nka0Nvbm5lY3RlZE92ZXJsYXlQYW5lbENsYXNzXT1cIidjdXN0b20tc2VsZWN0LW92ZXJsYXktcGFuZWwnXCJcclxuICAgICAgICAgICAgICAgW2Nka0Nvbm5lY3RlZE92ZXJsYXlTY3JvbGxTdHJhdGVneV09XCJzY3JvbGxTdHJhdGVneVwiXHJcbiAgICAgICAgICAgICAgIFtjZGtDb25uZWN0ZWRPdmVybGF5T3JpZ2luXT1cIm9yaWdpblwiXHJcbiAgICAgICAgICAgICAgIFtjZGtDb25uZWN0ZWRPdmVybGF5T3Blbl09XCJvcGVuZWRcIlxyXG4gICAgICAgICAgICAgICBbY2RrQ29ubmVjdGVkT3ZlcmxheU1pbldpZHRoXT1cIl90cmlnZ2VyUmVjdD8ud2lkdGghXCI+XHJcbiAgICA8dWwgY2xhc3M9XCJ1bC1hY1wiPlxyXG4gICAgICA8bGkgY2xhc3M9XCJsaS1zZWFyY2ggc2VhcmNoLWlucHV0LWl0ZW1cIj5cclxuICAgICAgICA8bWF0LWZvcm0tZmllbGQgY2xhc3M9XCJhcGlwYXNzLWlucHV0LXRleHQgc2VhcmNoLWlucHV0LWl0ZW1cIiBhcHBlYXJhbmNlPVwiZmlsbFwiPlxyXG4gICAgICAgICAgPGlucHV0IG1hdElucHV0IGNsYXNzPVwic2VhcmNoLWlucHV0LWl0ZW1cIlxyXG4gICAgICAgICAgICAgICAgIFtwbGFjZWhvbGRlcl09XCJmaW5kUGxhY2VIb2xkZXJcIlxyXG4gICAgICAgICAgICAgICAgIFsobmdNb2RlbCldPVwic2VhcmNoVGV4dFwiXHJcbiAgICAgICAgICAgICAgICAgKGJsdXIpPVwib25CbHVyKCRldmVudClcIlxyXG4gICAgICAgICAgICAgICAgIGFyaWEtYXV0b2NvbXBsZXRlPVwibm9uZVwiXHJcbiAgICAgICAgICAgICAgICAgYXV0b2NvbXBsZXRlPVwib2ZmXCJcclxuICAgICAgICAgIC8+XHJcbiAgICAgICAgPC9tYXQtZm9ybS1maWVsZD5cclxuICAgICAgPC9saT5cclxuXHJcbiAgICAgIDxsaSBjbGFzcz1cImNsaWNrYWJsZVwiICpuZ0Zvcj1cImxldCBpIG9mIGl0ZW1zIHwgc2VsZWN0RmlsdGVyOnNlYXJjaFRleHQ6J3RleHQnXCJcclxuICAgICAgICAgIChjbGljayk9XCJzZWxlY3RJdGVtKGkpXCJcclxuICAgICAgICAgIChtb3VzZWRvd24pPVwic2VsZWN0SXRlbShpKVwiPlxyXG4gICAgICAgIHt7aS50ZXh0fX1cclxuICAgICAgPC9saT5cclxuXHJcbiAgICA8L3VsPlxyXG4gIDwvbmctdGVtcGxhdGU+XHJcbjwvZGl2PlxyXG4iXX0=
|
|
@@ -1,31 +1,31 @@
|
|
|
1
|
-
export class ValueAccessorBase {
|
|
2
|
-
constructor() {
|
|
3
|
-
this.onChange = () => { };
|
|
4
|
-
this.onTouched = () => { };
|
|
5
|
-
}
|
|
6
|
-
get value() {
|
|
7
|
-
return this.innerValue;
|
|
8
|
-
}
|
|
9
|
-
set value(value) {
|
|
10
|
-
value = this.changeValue(value);
|
|
11
|
-
this.innerValue = value;
|
|
12
|
-
this.onChange(value);
|
|
13
|
-
this.onTouched();
|
|
14
|
-
}
|
|
15
|
-
changeValue(value) {
|
|
16
|
-
return value;
|
|
17
|
-
}
|
|
18
|
-
writeValue(value) {
|
|
19
|
-
this.innerValue = value;
|
|
20
|
-
}
|
|
21
|
-
registerOnChange(fn) {
|
|
22
|
-
this.onChange = fn;
|
|
23
|
-
}
|
|
24
|
-
registerOnTouched(fn) {
|
|
25
|
-
this.onTouched = fn;
|
|
26
|
-
}
|
|
27
|
-
touch() {
|
|
28
|
-
this.onTouched.forEach((f) => f());
|
|
29
|
-
}
|
|
30
|
-
}
|
|
31
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
1
|
+
export class ValueAccessorBase {
|
|
2
|
+
constructor() {
|
|
3
|
+
this.onChange = () => { };
|
|
4
|
+
this.onTouched = () => { };
|
|
5
|
+
}
|
|
6
|
+
get value() {
|
|
7
|
+
return this.innerValue;
|
|
8
|
+
}
|
|
9
|
+
set value(value) {
|
|
10
|
+
value = this.changeValue(value);
|
|
11
|
+
this.innerValue = value;
|
|
12
|
+
this.onChange(value);
|
|
13
|
+
this.onTouched();
|
|
14
|
+
}
|
|
15
|
+
changeValue(value) {
|
|
16
|
+
return value;
|
|
17
|
+
}
|
|
18
|
+
writeValue(value) {
|
|
19
|
+
this.innerValue = value;
|
|
20
|
+
}
|
|
21
|
+
registerOnChange(fn) {
|
|
22
|
+
this.onChange = fn;
|
|
23
|
+
}
|
|
24
|
+
registerOnTouched(fn) {
|
|
25
|
+
this.onTouched = fn;
|
|
26
|
+
}
|
|
27
|
+
touch() {
|
|
28
|
+
this.onTouched.forEach((f) => f());
|
|
29
|
+
}
|
|
30
|
+
}
|
|
31
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidmFsdWUtYWNlc3Nvci1iYXNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vcHJvamVjdHMvaW5wdXRzL3NyYy92YWx1ZS1hY2Vzc29yLWJhc2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBRUEsTUFBTSxPQUFnQixpQkFBaUI7SUFBdkM7UUFJUyxhQUFRLEdBQVEsR0FBRyxFQUFFLEdBQUUsQ0FBQyxDQUFDO1FBQ3pCLGNBQVMsR0FBUSxHQUFHLEVBQUUsR0FBRSxDQUFDLENBQUM7SUFpQ25DLENBQUM7SUEvQkMsSUFBSSxLQUFLO1FBQ1AsT0FBTyxJQUFJLENBQUMsVUFBVSxDQUFDO0lBQ3pCLENBQUM7SUFFRCxJQUFJLEtBQUssQ0FBQyxLQUFRO1FBQ2hCLEtBQUssR0FBRyxJQUFJLENBQUMsV0FBVyxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBQ2hDLElBQUksQ0FBQyxVQUFVLEdBQUcsS0FBSyxDQUFDO1FBQ3hCLElBQUksQ0FBQyxRQUFRLENBQUMsS0FBSyxDQUFDLENBQUM7UUFDckIsSUFBSSxDQUFDLFNBQVMsRUFBRSxDQUFDO0lBQ25CLENBQUM7SUFFUyxXQUFXLENBQUMsS0FBUTtRQUM1QixPQUFPLEtBQUssQ0FBQztJQUNmLENBQUM7SUFFRCxVQUFVLENBQUMsS0FBUTtRQUNqQixJQUFJLENBQUMsVUFBVSxHQUFHLEtBQUssQ0FBQztJQUMxQixDQUFDO0lBRUQsZ0JBQWdCLENBQUMsRUFBTztRQUN0QixJQUFJLENBQUMsUUFBUSxHQUFHLEVBQUUsQ0FBQztJQUNyQixDQUFDO0lBRUQsaUJBQWlCLENBQUMsRUFBTztRQUN2QixJQUFJLENBQUMsU0FBUyxHQUFHLEVBQUUsQ0FBQztJQUN0QixDQUFDO0lBRUQsS0FBSztRQUNILElBQUksQ0FBQyxTQUFTLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBWSxFQUFFLEVBQUUsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDO0lBQ2hELENBQUM7Q0FFRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7Q29udHJvbFZhbHVlQWNjZXNzb3J9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcclxuXHJcbmV4cG9ydCBhYnN0cmFjdCBjbGFzcyBWYWx1ZUFjY2Vzc29yQmFzZTxUPiBpbXBsZW1lbnRzIENvbnRyb2xWYWx1ZUFjY2Vzc29yIHtcclxuXHJcbiAgcHJpdmF0ZSBpbm5lclZhbHVlOiBhbnk7XHJcblxyXG4gIHB1YmxpYyBvbkNoYW5nZTogYW55ID0gKCkgPT4ge307XHJcbiAgcHVibGljIG9uVG91Y2hlZDogYW55ID0gKCkgPT4ge307XHJcblxyXG4gIGdldCB2YWx1ZSgpOiBUIHtcclxuICAgIHJldHVybiB0aGlzLmlubmVyVmFsdWU7XHJcbiAgfVxyXG5cclxuICBzZXQgdmFsdWUodmFsdWU6IFQpIHtcclxuICAgIHZhbHVlID0gdGhpcy5jaGFuZ2VWYWx1ZSh2YWx1ZSk7XHJcbiAgICB0aGlzLmlubmVyVmFsdWUgPSB2YWx1ZTtcclxuICAgIHRoaXMub25DaGFuZ2UodmFsdWUpO1xyXG4gICAgdGhpcy5vblRvdWNoZWQoKTtcclxuICB9XHJcblxyXG4gIHByb3RlY3RlZCBjaGFuZ2VWYWx1ZSh2YWx1ZTogVCk6IFQge1xyXG4gICAgcmV0dXJuIHZhbHVlO1xyXG4gIH1cclxuXHJcbiAgd3JpdGVWYWx1ZSh2YWx1ZTogVCk6IHZvaWQge1xyXG4gICAgdGhpcy5pbm5lclZhbHVlID0gdmFsdWU7XHJcbiAgfVxyXG5cclxuICByZWdpc3Rlck9uQ2hhbmdlKGZuOiBhbnkpOiB2b2lkIHtcclxuICAgIHRoaXMub25DaGFuZ2UgPSBmbjtcclxuICB9XHJcblxyXG4gIHJlZ2lzdGVyT25Ub3VjaGVkKGZuOiBhbnkpOiB2b2lkIHtcclxuICAgIHRoaXMub25Ub3VjaGVkID0gZm47XHJcbiAgfVxyXG5cclxuICB0b3VjaCgpOiB2b2lkIHtcclxuICAgIHRoaXMub25Ub3VjaGVkLmZvckVhY2goKGY6ICgpID0+IGFueSkgPT4gZigpKTtcclxuICB9XHJcblxyXG59XHJcbiJdfQ==
|