@onemrvapublic/design-system 18.2.10-develop.1 → 18.2.10

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 (30) hide show
  1. package/assets/i18n/de.json +10 -4
  2. package/assets/i18n/en.json +10 -4
  3. package/assets/i18n/fr.json +10 -4
  4. package/assets/i18n/nl.json +10 -4
  5. package/esm2022/layout/src/components/layout/layout.component.mjs +3 -3
  6. package/esm2022/layout/src/components/layout-route/layout-route.component.mjs +3 -3
  7. package/esm2022/layout/src/components/layout-subroute/layout-subroute.component.mjs +1 -1
  8. package/esm2022/mat-carousel/src/onemrva-mat-carousel.component.mjs +4 -1
  9. package/esm2022/mat-input-bank-account/index.mjs +2 -2
  10. package/esm2022/mat-input-bank-account/src/onemrva-mat-input-iban.component.mjs +288 -0
  11. package/esm2022/shared/src/lib/services/country-cdn.service.mjs +5 -2
  12. package/fesm2022/onemrvapublic-design-system-layout.mjs +4 -4
  13. package/fesm2022/onemrvapublic-design-system-layout.mjs.map +1 -1
  14. package/fesm2022/onemrvapublic-design-system-mat-carousel.mjs +3 -0
  15. package/fesm2022/onemrvapublic-design-system-mat-carousel.mjs.map +1 -1
  16. package/fesm2022/onemrvapublic-design-system-mat-input-bank-account.mjs +173 -160
  17. package/fesm2022/onemrvapublic-design-system-mat-input-bank-account.mjs.map +1 -1
  18. package/fesm2022/onemrvapublic-design-system-shared.mjs +4 -1
  19. package/fesm2022/onemrvapublic-design-system-shared.mjs.map +1 -1
  20. package/layout/src/components/layout/layout.component.scss +11 -0
  21. package/mat-input-bank-account/index.d.ts +1 -1
  22. package/mat-input-bank-account/src/{bank-account.component.d.ts → onemrva-mat-input-iban.component.d.ts} +41 -28
  23. package/mat-input-bank-account/src/onemrva-mat-input-iban.component.scss +10 -0
  24. package/package.json +1 -1
  25. package/shared/src/lib/services/country-cdn.service.d.ts +5 -65
  26. package/esm2022/mat-input-bank-account/src/bank-account.component.mjs +0 -223
  27. package/esm2022/mat-input-bank-account/src/onemrva-mat-input-bank-account.component.mjs +0 -66
  28. package/mat-input-bank-account/src/bank-account.component.scss +0 -42
  29. package/mat-input-bank-account/src/onemrva-mat-input-bank-account.component.d.ts +0 -15
  30. package/mat-input-bank-account/src/onemrva-mat-input-bank-account.component.scss +0 -14
@@ -18,72 +18,12 @@ export declare class OnemRvaCDNCountryService {
18
18
  private cdnService;
19
19
  private translateService;
20
20
  constructor(cdnService: OnemRvaCDNService, translateService: TranslateService);
21
- getCountries(): import("rxjs").Observable<{
22
- name: string;
23
- code: string;
24
- dial_code: string;
25
- zone: string;
26
- pattern: string;
27
- placeholder: string;
28
- translations: {
29
- fr: string;
30
- nl: string;
31
- de: string;
32
- };
33
- }[]>;
34
- getCountriesByZone(zone: string): import("rxjs").Observable<{
35
- name: string;
36
- code: string;
37
- dial_code: string;
38
- zone: string;
39
- pattern: string;
40
- placeholder: string;
41
- translations: {
42
- fr: string;
43
- nl: string;
44
- de: string;
45
- };
46
- }[]>;
21
+ getCountries(): import("rxjs").Observable<OnemrvaMaterialCountry[]>;
22
+ getCountriesByZone(zone: string): import("rxjs").Observable<OnemrvaMaterialCountry[]>;
47
23
  getTranslatedCountryName(country: OnemrvaMaterialCountry, languageCode?: string): string;
48
- findCountryFromCode(code: any): import("rxjs").Observable<{
49
- name: string;
50
- code: string;
51
- dial_code: string;
52
- zone: string;
53
- pattern: string;
54
- placeholder: string;
55
- translations: {
56
- fr: string;
57
- nl: string;
58
- de: string;
59
- };
60
- } | undefined>;
61
- findCountryFromVIESCode(code: any): import("rxjs").Observable<{
62
- name: string;
63
- code: string;
64
- dial_code: string;
65
- zone: string;
66
- pattern: string;
67
- placeholder: string;
68
- translations: {
69
- fr: string;
70
- nl: string;
71
- de: string;
72
- };
73
- } | undefined>;
74
- findCountryFromPrefix(number: any): import("rxjs").Observable<{
75
- name: string;
76
- code: string;
77
- dial_code: string;
78
- zone: string;
79
- pattern: string;
80
- placeholder: string;
81
- translations: {
82
- fr: string;
83
- nl: string;
84
- de: string;
85
- };
86
- } | undefined>;
24
+ findCountryFromCode(code: any): import("rxjs").Observable<OnemrvaMaterialCountry | undefined>;
25
+ findCountryFromVIESCode(code: any): import("rxjs").Observable<OnemrvaMaterialCountry | undefined>;
26
+ findCountryFromPrefix(number: any): import("rxjs").Observable<OnemrvaMaterialCountry | undefined>;
87
27
  static ɵfac: i0.ɵɵFactoryDeclaration<OnemRvaCDNCountryService, never>;
88
28
  static ɵprov: i0.ɵɵInjectableDeclaration<OnemRvaCDNCountryService>;
89
29
  }
@@ -1,223 +0,0 @@
1
- import { coerceBooleanProperty } from '@angular/cdk/coercion';
2
- import { Component, Inject, Input, Optional, Self, ViewChild, } from '@angular/core';
3
- import { FormControl, FormsModule, ReactiveFormsModule, Validators, } from '@angular/forms';
4
- import { MAT_FORM_FIELD, MatFormFieldControl, } from '@angular/material/form-field';
5
- import { combineLatestWith, distinctUntilChanged, map, of, pairwise, startWith, Subject, takeUntil, } from 'rxjs';
6
- import { MatSelectModule } from '@angular/material/select';
7
- import { MatSelectSearchModule } from '@onemrvapublic/design-system/mat-select-search';
8
- import { bankAccountValidator, IBAN_SUPPORTED_COUNTRIES, } from '@onemrvapublic/design-system/shared';
9
- import { CommonModule } from '@angular/common';
10
- import { extractIBAN, friendlyFormatIBAN } from 'ibantools';
11
- import * as i0 from "@angular/core";
12
- import * as i1 from "@angular/forms";
13
- import * as i2 from "@angular/cdk/a11y";
14
- import * as i3 from "@angular/common";
15
- import * as i4 from "@angular/material/form-field";
16
- import * as i5 from "@angular/material/select";
17
- import * as i6 from "@angular/material/core";
18
- import * as i7 from "@onemrvapublic/design-system/mat-select-search";
19
- /** Custom `MatFormFieldControl` for bank account number input. */
20
- export class BankAccountComponent {
21
- static { this.nextId = 0; }
22
- get empty() {
23
- const { value: { countryCode, bban }, } = this.parts;
24
- return !countryCode && !bban;
25
- }
26
- get shouldLabelFloat() {
27
- return this.focused || !this.empty;
28
- }
29
- get placeholder() {
30
- return this._placeholder;
31
- }
32
- set placeholder(value) {
33
- this._placeholder = value;
34
- this.stateChanges.next();
35
- }
36
- get required() {
37
- return this._required;
38
- }
39
- set required(value) {
40
- this._required = coerceBooleanProperty(value);
41
- this.stateChanges.next();
42
- }
43
- get disabled() {
44
- return this._disabled;
45
- }
46
- set disabled(value) {
47
- this._disabled = coerceBooleanProperty(value);
48
- // eslint-disable-next-line @typescript-eslint/no-unused-expressions
49
- this._disabled ? this.parts.disable() : this.parts.enable();
50
- this.stateChanges.next();
51
- }
52
- get value() {
53
- const { value: { countryCode, bban }, } = this.parts;
54
- return `${countryCode ?? ''}${bban ?? ''}`;
55
- }
56
- set value(iban) {
57
- const { countryCode, bban } = extractIBAN(iban || '');
58
- this.parts.setValue({
59
- countryCode: countryCode || null,
60
- bban: bban || null,
61
- });
62
- this.stateChanges.next();
63
- }
64
- get errorState() {
65
- return this.parts.invalid && this.touched;
66
- }
67
- constructor(formBuilder, _focusMonitor, _elementRef, _cd, _formField, ngControl) {
68
- this._focusMonitor = _focusMonitor;
69
- this._elementRef = _elementRef;
70
- this._cd = _cd;
71
- this._formField = _formField;
72
- this.ngControl = ngControl;
73
- this.filterCtrl = new FormControl('');
74
- this.countryCodes$ = of([]);
75
- this.stateChanges = new Subject();
76
- this.destroyNotifier$ = new Subject();
77
- this.focused = false;
78
- this.touched = false;
79
- this.controlType = 'bank-account-input';
80
- this.id = `bank-account-input-${BankAccountComponent.nextId++}`;
81
- this.onChange = (_) => {
82
- //
83
- };
84
- this.onTouched = () => {
85
- //
86
- };
87
- this._placeholder = '';
88
- this._required = false;
89
- this._disabled = false;
90
- if (this.ngControl != null) {
91
- this.ngControl.valueAccessor = this;
92
- }
93
- this.parts = formBuilder.group({
94
- countryCode: ['', [Validators.maxLength(2)]],
95
- bban: ['', [Validators.required]],
96
- }, {
97
- validators: [bankAccountValidator()],
98
- });
99
- }
100
- ngOnInit() {
101
- this.countryCodes$ = this.getCountryCodes();
102
- this.parts.valueChanges
103
- .pipe(startWith({ countryCode: '', bban: '' }), pairwise(), distinctUntilChanged(), takeUntil(this.destroyNotifier$))
104
- .subscribe(([_prevIban, { countryCode, bban }]) => {
105
- this.touched = true;
106
- if (!bban || bban.length <= 2) {
107
- return;
108
- }
109
- const potentialCountryCode = bban?.substring(0, 2);
110
- if (potentialCountryCode?.match(/^[A-Za-z]{2}/)) {
111
- const restOfTheBankNumber = bban?.substring(2);
112
- return this.parts.setValue({
113
- countryCode: potentialCountryCode,
114
- ...getBban(potentialCountryCode, restOfTheBankNumber),
115
- });
116
- }
117
- return this.parts.patchValue({
118
- ...getBban(countryCode, bban),
119
- }, { emitEvent: false });
120
- });
121
- }
122
- ngOnDestroy() {
123
- this.destroyNotifier$.next();
124
- this.destroyNotifier$.complete();
125
- this.stateChanges.complete();
126
- this._focusMonitor.stopMonitoring(this._elementRef);
127
- }
128
- getCountryCodes() {
129
- return this.filterCtrl.valueChanges.pipe(startWith(''), combineLatestWith(of(IBAN_SUPPORTED_COUNTRIES)), map(([filterVal, countryCodes]) => {
130
- return countryCodes.filter(code => {
131
- if (!filterVal) {
132
- return true;
133
- }
134
- return code.toLowerCase().includes(filterVal.toLowerCase());
135
- });
136
- }));
137
- }
138
- autoFocusNext(control, nextElement) {
139
- if (!control.errors && nextElement) {
140
- this._focusMonitor.focusVia(nextElement, 'program');
141
- }
142
- }
143
- //
144
- // autoFocusPrev(control: AbstractControl, prevElement: HTMLInputElement): void {
145
- // if (control.value.length < 1) {
146
- // this._focusMonitor.focusVia(prevElement, 'program');
147
- // }
148
- // }
149
- setDescribedByIds(ids) {
150
- const controlElement = this._elementRef.nativeElement.querySelector('.bank-account-input-group');
151
- controlElement.setAttribute('aria-describedby', ids.join(' '));
152
- }
153
- onContainerClick() {
154
- //
155
- }
156
- writeValue(iban) {
157
- this.value = iban;
158
- }
159
- registerOnChange(fn) {
160
- this.onChange = fn;
161
- }
162
- registerOnTouched(fn) {
163
- this.onTouched = fn;
164
- }
165
- setDisabledState(isDisabled) {
166
- this.disabled = isDisabled;
167
- }
168
- _handleInput(control, nextElement) {
169
- this.autoFocusNext(control, nextElement);
170
- this.onChange(this.value);
171
- }
172
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.6", ngImport: i0, type: BankAccountComponent, deps: [{ token: i1.FormBuilder }, { token: i2.FocusMonitor }, { token: i0.ElementRef }, { token: i0.ChangeDetectorRef }, { token: MAT_FORM_FIELD, optional: true }, { token: i1.NgControl, optional: true, self: true }], target: i0.ɵɵFactoryTarget.Component }); }
173
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.6", type: BankAccountComponent, isStandalone: true, selector: "bank-account", inputs: { userAriaDescribedBy: ["aria-describedby", "userAriaDescribedBy"], placeholder: "placeholder", required: "required", disabled: "disabled", value: "value" }, host: { properties: { "class.example-floating": "shouldLabelFloat", "id": "id" } }, providers: [
174
- { provide: MatFormFieldControl, useExisting: BankAccountComponent },
175
- ], viewQueries: [{ propertyName: "countryCode", first: true, predicate: ["countryCode "], descendants: true }, { propertyName: "bban", first: true, predicate: ["bban"], descendants: true }], ngImport: i0, template: "<div\n role=\"group\"\n class=\"bank-account-input-group\"\n [formGroup]=\"parts\"\n [attr.aria-labelledby]=\"_formField.getLabelId()\"\n>\n <mat-select\n class=\"country-code-select\"\n matTextPrefix\n formControlName=\"countryCode\"\n placeholder=\"XX\"\n (selectionChange)=\"_handleInput(parts.controls.countryCode)\"\n #countryCode\n >\n <mat-option>\n <mat-select-search\n [formControl]=\"filterCtrl\"\n noEntriesFoundLabel=\"no-entries-label\"\n placeholderLabel=\"placeholderLabel\"\n ></mat-select-search>\n </mat-option>\n\n <mat-option *ngFor=\"let country of countryCodes$ | async\" [value]=\"country\">\n <span>{{ country }}</span>\n </mat-option>\n </mat-select>\n\n <input\n id=\"bban-input\"\n name=\"bban-input\"\n class=\"bban-input\"\n formControlName=\"bban\"\n (input)=\"_handleInput(parts.controls.bban)\"\n #bban\n />\n</div>\n", styles: [".bank-account-input-group{display:flex;width:100%}.bank-account-input-group .country-code-input,.bank-account-input-group .bban-input{border:none;background:none;padding:0;outline:none;font:inherit;text-align:left;color:currentcolor}.bank-account-input-group .bban-input{padding-left:4px}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i3.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "pipe", type: i3.AsyncPipe, name: "async" }, { kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i1.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: i1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "ngmodule", type: ReactiveFormsModule }, { kind: "directive", type: i1.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { kind: "directive", type: i1.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i1.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }, { kind: "ngmodule", type: MatSelectModule }, { kind: "directive", type: i4.MatPrefix, selector: "[matPrefix], [matIconPrefix], [matTextPrefix]", inputs: ["matTextPrefix"] }, { kind: "component", type: i5.MatSelect, selector: "mat-select", inputs: ["aria-describedby", "panelClass", "disabled", "disableRipple", "tabIndex", "hideSingleSelectionIndicator", "placeholder", "required", "multiple", "disableOptionCentering", "compareWith", "value", "aria-label", "aria-labelledby", "errorStateMatcher", "typeaheadDebounceInterval", "sortComparator", "id", "panelWidth"], outputs: ["openedChange", "opened", "closed", "selectionChange", "valueChange"], exportAs: ["matSelect"] }, { kind: "component", type: i6.MatOption, selector: "mat-option", inputs: ["value", "id", "disabled"], outputs: ["onSelectionChange"], exportAs: ["matOption"] }, { kind: "ngmodule", type: MatSelectSearchModule }, { kind: "component", type: i7.MatSelectSearchComponent, selector: "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"] }] }); }
176
- }
177
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.6", ngImport: i0, type: BankAccountComponent, decorators: [{
178
- type: Component,
179
- args: [{ selector: 'bank-account', providers: [
180
- { provide: MatFormFieldControl, useExisting: BankAccountComponent },
181
- ], host: {
182
- '[class.example-floating]': 'shouldLabelFloat',
183
- '[id]': 'id',
184
- }, standalone: true, imports: [
185
- CommonModule,
186
- FormsModule,
187
- ReactiveFormsModule,
188
- MatSelectModule,
189
- MatSelectSearchModule,
190
- ], template: "<div\n role=\"group\"\n class=\"bank-account-input-group\"\n [formGroup]=\"parts\"\n [attr.aria-labelledby]=\"_formField.getLabelId()\"\n>\n <mat-select\n class=\"country-code-select\"\n matTextPrefix\n formControlName=\"countryCode\"\n placeholder=\"XX\"\n (selectionChange)=\"_handleInput(parts.controls.countryCode)\"\n #countryCode\n >\n <mat-option>\n <mat-select-search\n [formControl]=\"filterCtrl\"\n noEntriesFoundLabel=\"no-entries-label\"\n placeholderLabel=\"placeholderLabel\"\n ></mat-select-search>\n </mat-option>\n\n <mat-option *ngFor=\"let country of countryCodes$ | async\" [value]=\"country\">\n <span>{{ country }}</span>\n </mat-option>\n </mat-select>\n\n <input\n id=\"bban-input\"\n name=\"bban-input\"\n class=\"bban-input\"\n formControlName=\"bban\"\n (input)=\"_handleInput(parts.controls.bban)\"\n #bban\n />\n</div>\n", styles: [".bank-account-input-group{display:flex;width:100%}.bank-account-input-group .country-code-input,.bank-account-input-group .bban-input{border:none;background:none;padding:0;outline:none;font:inherit;text-align:left;color:currentcolor}.bank-account-input-group .bban-input{padding-left:4px}\n"] }]
191
- }], ctorParameters: () => [{ type: i1.FormBuilder }, { type: i2.FocusMonitor }, { type: i0.ElementRef }, { type: i0.ChangeDetectorRef }, { type: i4.MatFormField, decorators: [{
192
- type: Optional
193
- }, {
194
- type: Inject,
195
- args: [MAT_FORM_FIELD]
196
- }] }, { type: i1.NgControl, decorators: [{
197
- type: Optional
198
- }, {
199
- type: Self
200
- }] }], propDecorators: { countryCode: [{
201
- type: ViewChild,
202
- args: ['countryCode ']
203
- }], bban: [{
204
- type: ViewChild,
205
- args: ['bban']
206
- }], userAriaDescribedBy: [{
207
- type: Input,
208
- args: ['aria-describedby']
209
- }], placeholder: [{
210
- type: Input
211
- }], required: [{
212
- type: Input
213
- }], disabled: [{
214
- type: Input
215
- }], value: [{
216
- type: Input
217
- }] } });
218
- const getBban = (countryCode = '', bban) => {
219
- return {
220
- bban: friendlyFormatIBAN(`${countryCode}${bban}`)?.substring(2) || null,
221
- };
222
- };
223
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmFuay1hY2NvdW50LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL29uZW1ydmEvZGVzaWduLXN5c3RlbS9tYXQtaW5wdXQtYmFuay1hY2NvdW50L3NyYy9iYW5rLWFjY291bnQuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvb25lbXJ2YS9kZXNpZ24tc3lzdGVtL21hdC1pbnB1dC1iYW5rLWFjY291bnQvc3JjL2JhbmstYWNjb3VudC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFDQSxPQUFPLEVBQWdCLHFCQUFxQixFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUFDNUUsT0FBTyxFQUVMLFNBQVMsRUFFVCxNQUFNLEVBQ04sS0FBSyxFQUdMLFFBQVEsRUFDUixJQUFJLEVBQ0osU0FBUyxHQUNWLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFHTCxXQUFXLEVBR1gsV0FBVyxFQUNYLG1CQUFtQixFQUVuQixVQUFVLEdBQ1gsTUFBTSxnQkFBZ0IsQ0FBQztBQUN4QixPQUFPLEVBQ0wsY0FBYyxFQUVkLG1CQUFtQixHQUNwQixNQUFNLDhCQUE4QixDQUFDO0FBQ3RDLE9BQU8sRUFDTCxpQkFBaUIsRUFDakIsb0JBQW9CLEVBQ3BCLEdBQUcsRUFFSCxFQUFFLEVBQ0YsUUFBUSxFQUNSLFNBQVMsRUFDVCxPQUFPLEVBQ1AsU0FBUyxHQUNWLE1BQU0sTUFBTSxDQUFDO0FBQ2QsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBQzNELE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLGdEQUFnRCxDQUFDO0FBQ3ZGLE9BQU8sRUFDTCxvQkFBb0IsRUFDcEIsd0JBQXdCLEdBQ3pCLE1BQU0scUNBQXFDLENBQUM7QUFDN0MsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQy9DLE9BQU8sRUFBRSxX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V0FBVzt3QkFDWCxtQkFBbUI7d0JBQ25CLGVBQWU7d0JBQ2YscUJBQXFCO3FCQUN0Qjs7MEJBbUhFLFFBQVE7OzBCQUFJLE1BQU07MkJBQUMsY0FBYzs7MEJBQ2pDLFFBQVE7OzBCQUFJLElBQUk7eUNBekdRLFdBQVc7c0JBQXJDLFNBQVM7dUJBQUMsY0FBYztnQkFDTixJQUFJO3NCQUF0QixTQUFTO3VCQUFDLE1BQU07Z0JBb0NVLG1CQUFtQjtzQkFBN0MsS0FBSzt1QkFBQyxrQkFBa0I7Z0JBR3JCLFdBQVc7c0JBRGQsS0FBSztnQkFhRixRQUFRO3NCQURYLEtBQUs7Z0JBYUYsUUFBUTtzQkFEWCxLQUFLO2dCQWVGLEtBQUs7c0JBRFIsS0FBSzs7QUF3SlIsTUFBTSxPQUFPLEdBQUcsQ0FBQyxjQUF5QyxFQUFFLEVBQUUsSUFBWSxFQUFFLEVBQUU7SUFDNUUsT0FBTztRQUNMLElBQUksRUFBRSxrQkFBa0IsQ0FBQyxHQUFHLFdBQVcsR0FBRyxJQUFJLEVBQUUsQ0FBQyxFQUFFLFNBQVMsQ0FBQyxDQUFDLENBQUMsSUFBSSxJQUFJO0tBQ3hFLENBQUM7QUFDSixDQUFDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBGb2N1c01vbml0b3IgfSBmcm9tICdAYW5ndWxhci9jZGsvYTExeSc7XG5pbXBvcnQgeyBCb29sZWFuSW5wdXQsIGNvZXJjZUJvb2xlYW5Qcm9wZXJ0eSB9IGZyb20gJ0Bhbmd1bGFyL2Nkay9jb2VyY2lvbic7XG5pbXBvcnQge1xuICBDaGFuZ2VEZXRlY3RvclJlZixcbiAgQ29tcG9uZW50LFxuICBFbGVtZW50UmVmLFxuICBJbmplY3QsXG4gIElucHV0LFxuICBPbkRlc3Ryb3ksXG4gIE9uSW5pdCxcbiAgT3B0aW9uYWwsXG4gIFNlbGYsXG4gIFZpZXdDaGlsZCxcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge1xuICBDb250cm9sVmFsdWVBY2Nlc3NvcixcbiAgRm9ybUJ1aWxkZXIsXG4gIEZvcm1Db250cm9sLFxuICBGb3JtR3JvdXAsXG4gIE5nQ29udHJvbCxcbiAgRm9ybXNNb2R1bGUsXG4gIFJlYWN0aXZlRm9ybXNNb2R1bGUsXG4gIEFic3RyYWN0Q29udHJvbCxcbiAgVmFsaWRhdG9ycyxcbn0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuaW1wb3J0IHtcbiAgTUFUX0ZPUk1fRklFTEQsXG4gIE1hdEZvcm1GaWVsZCxcbiAgTWF0Rm9ybUZpZWxkQ29udHJvbCxcbn0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvZm9ybS1maWVsZCc7XG5pbXBvcnQge1xuICBjb21iaW5lTGF0ZXN0V2l0aCxcbiAgZGlzdGluY3RVbnRpbENoYW5nZWQsXG4gIG1hcCxcbiAgT2JzZXJ2YWJsZSxcbiAgb2YsXG4gIHBhaXJ3aXNlLFxuICBzdGFydFdpdGgsXG4gIFN1YmplY3QsXG4gIHRha2VVbnRpbCxcbn0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBNYXRTZWxlY3RNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9zZWxlY3QnO1xuaW1wb3J0IHsgTWF0U2VsZWN0U2VhcmNoTW9kdWxlIH0gZnJvbSAnQG9uZW1ydmFwdWJsaWMvZGVzaWduLXN5c3RlbS9tYXQtc2VsZWN0LXNlYXJjaCc7XG5pbXBvcnQge1xuICBiYW5rQWNjb3VudFZhbGlkYXRvcixcbiAgSUJBTl9TVVBQT1JURURfQ09VTlRSSUVTLFxufSBmcm9tICdAb25lbXJ2YXB1YmxpYy9kZXNpZ24tc3lzdGVtL3NoYXJlZCc7XG5pbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHsgZXh0cmFjdElCQU4sIGZyaWVuZGx5Rm9ybWF0SUJBTiB9IGZyb20gJ2liYW50b29scyc7XG5cbi8qKiBDdXN0b20gYE1hdEZvcm1GaWVsZENvbnRyb2xgIGZvciBiYW5rIGFjY291bnQgbnVtYmVyIGlucHV0LiAqL1xuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnYmFuay1hY2NvdW50JyxcbiAgdGVtcGxhdGVVcmw6ICdiYW5rLWFjY291bnQuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybDogJ2JhbmstYWNjb3VudC5jb21wb25lbnQuc2NzcycsXG4gIHByb3ZpZGVyczogW1xuICAgIHsgcHJvdmlkZTogTWF0Rm9ybUZpZWxkQ29udHJvbCwgdXNlRXhpc3Rpbmc6IEJhbmtBY2NvdW50Q29tcG9uZW50IH0sXG4gIF0sXG5cbiAgaG9zdDoge1xuICAgICdbY2xhc3MuZXhhbXBsZS1mbG9hdGluZ10nOiAnc2hvdWxkTGFiZWxGbG9hdCcsXG4gICAgJ1tpZF0nOiAnaWQnLFxuICB9LFxuICBzdGFuZGFsb25lOiB0cnVlLFxuICBpbXBvcnRzOiBbXG4gICAgQ29tbW9uTW9kdWxlLFxuICAgIEZvcm1zTW9kdWxlLFxuICAgIFJlYWN0aXZlRm9ybXNNb2R1bGUsXG4gICAgTWF0U2VsZWN0TW9kdWxlLFxuICAgIE1hdFNlbGVjdFNlYXJjaE1vZHVsZSxcbiAgXSxcbn0pXG5leHBvcnQgY2xhc3MgQmFua0FjY291bnRDb21wb25lbnRcbiAgaW1wbGVtZW50c1xuICAgIENvbnRyb2xWYWx1ZUFjY2Vzc29yLFxuICAgIE1hdEZvcm1GaWVsZENvbnRyb2w8c3RyaW5nPixcbiAgICBPbkRlc3Ryb3ksXG4gICAgT25Jbml0XG57XG4gIHN0YXRpYyBuZXh0SWQgPSAwO1xuXG4gIEBWaWV3Q2hpbGQoJ2NvdW50cnlDb2RlICcpIGNvdW50cnlDb2RlITogSFRNTElucHV0RWxlbWVudDtcbiAgQFZpZXdDaGlsZCgnYmJhbicpIGJiYW4hOiBIVE1MSW5wdXRFbGVtZW50O1xuXG4gIGZpbHRlckN0cmw6IEZvcm1Db250cm9sPHN0cmluZyB8IG51bGw+ID0gbmV3IEZvcm1Db250cm9sPHN0cmluZz4oJycpO1xuICBwYXJ0czogRm9ybUdyb3VwPHtcbiAgICBjb3VudHJ5Q29kZTogRm9ybUNvbnRyb2w8c3RyaW5nIHwgbnVsbD47XG4gICAgYmJhbjogRm9ybUNvbnRyb2w8c3RyaW5nIHwgbnVsbD47XG4gIH0+O1xuXG4gIGNvdW50cnlDb2RlcyQ6IE9ic2VydmFibGU8YW55PiA9IG9mKFtdKTtcbiAgc3RhdGVDaGFuZ2VzID0gbmV3IFN1YmplY3Q8dm9pZD4oKTtcbiAgZGVzdHJveU5vdGlmaWVyJCA9IG5ldyBTdWJqZWN0PHZvaWQ+KCk7XG4gIGZvY3VzZWQgPSBmYWxzZTtcbiAgdG91Y2hlZCA9IGZhbHNlO1xuICBjb250cm9sVHlwZSA9ICdiYW5rLWFjY291bnQtaW5wdXQnO1xuICBpZCA9IGBiYW5rLWFjY291bnQtaW5wdXQtJHtCYW5rQWNjb3VudENvbXBvbmVudC5uZXh0SWQrK31gO1xuICBvbkNoYW5nZSA9IChfOiBhbnkpID0+IHtcbiAgICAvL1xuICB9O1xuICBvblRvdWNoZWQgPSAoKSA9PiB7XG4gICAgLy9cbiAgfTtcblxuICBnZXQgZW1wdHkoKSB7XG4gICAgY29uc3Qge1xuICAgICAgdmFsdWU6IHsgY291bnRyeUNvZGUsIGJiYW4gfSxcbiAgICB9ID0gdGhpcy5wYXJ0cztcblxuICAgIHJldHVybiAhY291bnRyeUNvZGUgJiYgIWJiYW47XG4gIH1cblxuICBnZXQgc2hvdWxkTGFiZWxGbG9hdCgpIHtcbiAgICByZXR1cm4gdGhpcy5mb2N1c2VkIHx8ICF0aGlzLmVtcHR5O1xuICB9XG5cbiAgLy8gQHRzLWV4cGVjdC1lcnJvciB0ZXN0XG4gIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZVxuICBASW5wdXQoJ2FyaWEtZGVzY3JpYmVkYnknKSB1c2VyQXJpYURlc2NyaWJlZEJ5OiBzdHJpbmc7XG5cbiAgQElucHV0KClcbiAgZ2V0IHBsYWNlaG9sZGVyKCk6IHN0cmluZyB7XG4gICAgcmV0dXJuIHRoaXMuX3BsYWNlaG9sZGVyO1xuICB9XG5cbiAgc2V0IHBsYWNlaG9sZGVyKHZhbHVlOiBzdHJpbmcpIHtcbiAgICB0aGlzLl9wbGFjZWhvbGRlciA9IHZhbHVlO1xuICAgIHRoaXMuc3RhdGVDaGFuZ2VzLm5leHQoKTtcbiAgfVxuXG4gIHByaXZhdGUgX3BsYWNlaG9sZGVyID0gJyc7XG5cbiAgQElucHV0KClcbiAgZ2V0IHJlcXVpcmVkKCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiB0aGlzLl9yZXF1aXJlZDtcbiAgfVxuXG4gIHNldCByZXF1aXJlZCh2YWx1ZTogQm9vbGVhbklucHV0KSB7XG4gICAgdGhpcy5fcmVxdWlyZWQgPSBjb2VyY2VCb29sZWFuUHJvcGVydHkodmFsdWUpO1xuICAgIHRoaXMuc3RhdGVDaGFuZ2VzLm5leHQoKTtcbiAgfVxuXG4gIHByaXZhdGUgX3JlcXVpcmVkID0gZmFsc2U7XG5cbiAgQElucHV0KClcbiAgZ2V0IGRpc2FibGVkKCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiB0aGlzLl9kaXNhYmxlZDtcbiAgfVxuXG4gIHNldCBkaXNhYmxlZCh2YWx1ZTogQm9vbGVhbklucHV0KSB7XG4gICAgdGhpcy5fZGlzYWJsZWQgPSBjb2VyY2VCb29sZWFuUHJvcGVydHkodmFsdWUpO1xuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAdHlwZXNjcmlwdC1lc2xpbnQvbm8tdW51c2VkLWV4cHJlc3Npb25zXG4gICAgdGhpcy5fZGlzYWJsZWQgPyB0aGlzLnBhcnRzLmRpc2FibGUoKSA6IHRoaXMucGFydHMuZW5hYmxlKCk7XG4gICAgdGhpcy5zdGF0ZUNoYW5nZXMubmV4dCgpO1xuICB9XG5cbiAgcHJpdmF0ZSBfZGlzYWJsZWQgPSBmYWxzZTtcblxuICBASW5wdXQoKVxuICBnZXQgdmFsdWUoKTogc3RyaW5nIHtcbiAgICBjb25zdCB7XG4gICAgICB2YWx1ZTogeyBjb3VudHJ5Q29kZSwgYmJhbiB9LFxuICAgIH0gPSB0aGlzLnBhcnRzO1xuICAgIHJldHVybiBgJHtjb3VudHJ5Q29kZSA/PyAnJ30ke2JiYW4gPz8gJyd9YDtcbiAgfVxuXG4gIHNldCB2YWx1ZShpYmFuOiBzdHJpbmcgfCBudWxsKSB7XG4gICAgY29uc3QgeyBjb3VudHJ5Q29kZSwgYmJhbiB9ID0gZXh0cmFjdElCQU4oaWJhbiB8fCAnJyk7XG5cbiAgICB0aGlzLnBhcnRzLnNldFZhbHVlKHtcbiAgICAgIGNvdW50cnlDb2RlOiBjb3VudHJ5Q29kZSB8fCBudWxsLFxuICAgICAgYmJhbjogYmJhbiB8fCBudWxsLFxuICAgIH0pO1xuICAgIHRoaXMuc3RhdGVDaGFuZ2VzLm5leHQoKTtcbiAgfVxuXG4gIGdldCBlcnJvclN0YXRlKCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiB0aGlzLnBhcnRzLmludmFsaWQgJiYgdGhpcy50b3VjaGVkO1xuICB9XG5cbiAgY29uc3RydWN0b3IoXG4gICAgZm9ybUJ1aWxkZXI6IEZvcm1CdWlsZGVyLFxuICAgIHByaXZhdGUgX2ZvY3VzTW9uaXRvcjogRm9jdXNNb25pdG9yLFxuICAgIHByaXZhdGUgX2VsZW1lbnRSZWY6IEVsZW1lbnRSZWY8SFRNTEVsZW1lbnQ+LFxuICAgIHByaXZhdGUgX2NkOiBDaGFuZ2VEZXRlY3RvclJlZixcbiAgICBAT3B0aW9uYWwoKSBASW5qZWN0KE1BVF9GT1JNX0ZJRUxEKSBwdWJsaWMgX2Zvcm1GaWVsZDogTWF0Rm9ybUZpZWxkLFxuICAgIEBPcHRpb25hbCgpIEBTZWxmKCkgcHVibGljIG5nQ29udHJvbDogTmdDb250cm9sLFxuICApIHtcbiAgICBpZiAodGhpcy5uZ0NvbnRyb2wgIT0gbnVsbCkge1xuICAgICAgdGhpcy5uZ0NvbnRyb2wudmFsdWVBY2Nlc3NvciA9IHRoaXM7XG4gICAgfVxuXG4gICAgdGhpcy5wYXJ0cyA9IGZvcm1CdWlsZGVyLmdyb3VwKFxuICAgICAge1xuICAgICAgICBjb3VudHJ5Q29kZTogWycnLCBbVmFsaWRhdG9ycy5tYXhMZW5ndGgoMildXSxcbiAgICAgICAgYmJhbjogWycnLCBbVmFsaWRhdG9ycy5yZXF1aXJlZF1dLFxuICAgICAgfSxcbiAgICAgIHtcbiAgICAgICAgdmFsaWRhdG9yczogW2JhbmtBY2NvdW50VmFsaWRhdG9yKCldLFxuICAgICAgfSxcbiAgICApO1xuICB9XG5cbiAgbmdPbkluaXQoKSB7XG4gICAgdGhpcy5jb3VudHJ5Q29kZXMkID0gdGhpcy5nZXRDb3VudHJ5Q29kZXMoKTtcblxuICAgIHRoaXMucGFydHMudmFsdWVDaGFuZ2VzXG4gICAgICAucGlwZShcbiAgICAgICAgc3RhcnRXaXRoKHsgY291bnRyeUNvZGU6ICcnLCBiYmFuOiAnJyB9KSxcbiAgICAgICAgcGFpcndpc2UoKSxcbiAgICAgICAgZGlzdGluY3RVbnRpbENoYW5nZWQoKSxcbiAgICAgICAgdGFrZVVudGlsKHRoaXMuZGVzdHJveU5vdGlmaWVyJCksXG4gICAgICApXG4gICAgICAuc3Vic2NyaWJlKChbX3ByZXZJYmFuLCB7IGNvdW50cnlDb2RlLCBiYmFuIH1dKSA9PiB7XG4gICAgICAgIHRoaXMudG91Y2hlZCA9IHRydWU7XG4gICAgICAgIGlmICghYmJhbiB8fCBiYmFuLmxlbmd0aCA8PSAyKSB7XG4gICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG5cbiAgICAgICAgY29uc3QgcG90ZW50aWFsQ291bnRyeUNvZGUgPSBiYmFuPy5zdWJzdHJpbmcoMCwgMik7XG5cbiAgICAgICAgaWYgKHBvdGVudGlhbENvdW50cnlDb2RlPy5tYXRjaCgvXltBLVphLXpdezJ9LykpIHtcbiAgICAgICAgICBjb25zdCByZXN0T2ZUaGVCYW5rTnVtYmVyID0gYmJhbj8uc3Vic3RyaW5nKDIpO1xuICAgICAgICAgIHJldHVybiB0aGlzLnBhcnRzLnNldFZhbHVlKHtcbiAgICAgICAgICAgIGNvdW50cnlDb2RlOiBwb3RlbnRpYWxDb3VudHJ5Q29kZSxcbiAgICAgICAgICAgIC4uLmdldEJiYW4ocG90ZW50aWFsQ291bnRyeUNvZGUsIHJlc3RPZlRoZUJhbmtOdW1iZXIpLFxuICAgICAgICAgIH0pO1xuICAgICAgICB9XG5cbiAgICAgICAgcmV0dXJuIHRoaXMucGFydHMucGF0Y2hWYWx1ZShcbiAgICAgICAgICB7XG4gICAgICAgICAgICAuLi5nZXRCYmFuKGNvdW50cnlDb2RlLCBiYmFuKSxcbiAgICAgICAgICB9LFxuICAgICAgICAgIHsgZW1pdEV2ZW50OiBmYWxzZSB9LFxuICAgICAgICApO1xuICAgICAgfSk7XG4gIH1cblxuICBuZ09uRGVzdHJveSgpIHtcbiAgICB0aGlzLmRlc3Ryb3lOb3RpZmllciQubmV4dCgpO1xuICAgIHRoaXMuZGVzdHJveU5vdGlmaWVyJC5jb21wbGV0ZSgpO1xuICAgIHRoaXMuc3RhdGVDaGFuZ2VzLmNvbXBsZXRlKCk7XG4gICAgdGhpcy5fZm9jdXNNb25pdG9yLnN0b3BNb25pdG9yaW5nKHRoaXMuX2VsZW1lbnRSZWYpO1xuICB9XG5cbiAgZ2V0Q291bnRyeUNvZGVzKCkge1xuICAgIHJldHVybiB0aGlzLmZpbHRlckN0cmwudmFsdWVDaGFuZ2VzLnBpcGUoXG4gICAgICBzdGFydFdpdGgoJycpLFxuICAgICAgY29tYmluZUxhdGVzdFdpdGgob2YoSUJBTl9TVVBQT1JURURfQ09VTlRSSUVTKSksXG4gICAgICBtYXAoKFtmaWx0ZXJWYWwsIGNvdW50cnlDb2Rlc10pID0+IHtcbiAgICAgICAgcmV0dXJuIGNvdW50cnlDb2Rlcy5maWx0ZXIoY29kZSA9PiB7XG4gICAgICAgICAgaWYgKCFmaWx0ZXJWYWwpIHtcbiAgICAgICAgICAgIHJldHVybiB0cnVlO1xuICAgICAgICAgIH1cblxuICAgICAgICAgIHJldHVybiBjb2RlLnRvTG93ZXJDYXNlKCkuaW5jbHVkZXMoZmlsdGVyVmFsLnRvTG93ZXJDYXNlKCkpO1xuICAgICAgICB9KTtcbiAgICAgIH0pLFxuICAgICk7XG4gIH1cblxuICBhdXRvRm9jdXNOZXh0KFxuICAgIGNvbnRyb2w6IEFic3RyYWN0Q29udHJvbCxcbiAgICBuZXh0RWxlbWVudD86IEhUTUxJbnB1dEVsZW1lbnQsXG4gICk6IHZvaWQge1xuICAgIGlmICghY29udHJvbC5lcnJvcnMgJiYgbmV4dEVsZW1lbnQpIHtcbiAgICAgIHRoaXMuX2ZvY3VzTW9uaXRvci5mb2N1c1ZpYShuZXh0RWxlbWVudCwgJ3Byb2dyYW0nKTtcbiAgICB9XG4gIH1cblxuICAvL1xuICAvLyBhdXRvRm9jdXNQcmV2KGNvbnRyb2w6IEFic3RyYWN0Q29udHJvbCwgcHJldkVsZW1lbnQ6IEhUTUxJbnB1dEVsZW1lbnQpOiB2b2lkIHtcbiAgLy8gICBpZiAoY29udHJvbC52YWx1ZS5sZW5ndGggPCAxKSB7XG4gIC8vICAgICB0aGlzLl9mb2N1c01vbml0b3IuZm9jdXNWaWEocHJldkVsZW1lbnQsICdwcm9ncmFtJyk7XG4gIC8vICAgfVxuICAvLyB9XG5cbiAgc2V0RGVzY3JpYmVkQnlJZHMoaWRzOiBzdHJpbmdbXSkge1xuICAgIGNvbnN0IGNvbnRyb2xFbGVtZW50ID0gdGhpcy5fZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50LnF1ZXJ5U2VsZWN0b3IoXG4gICAgICAnLmJhbmstYWNjb3VudC1pbnB1dC1ncm91cCcsXG4gICAgKSE7XG4gICAgY29udHJvbEVsZW1lbnQuc2V0QXR0cmlidXRlKCdhcmlhLWRlc2NyaWJlZGJ5JywgaWRzLmpvaW4oJyAnKSk7XG4gIH1cblxuICBvbkNvbnRhaW5lckNsaWNrKCkge1xuICAgIC8vXG4gIH1cblxuICB3cml0ZVZhbHVlKGliYW46IHN0cmluZyB8IG51bGwpOiB2b2lkIHtcbiAgICB0aGlzLnZhbHVlID0gaWJhbjtcbiAgfVxuXG4gIHJlZ2lzdGVyT25DaGFuZ2UoZm46IGFueSk6IHZvaWQge1xuICAgIHRoaXMub25DaGFuZ2UgPSBmbjtcbiAgfVxuXG4gIHJlZ2lzdGVyT25Ub3VjaGVkKGZuOiBhbnkpOiB2b2lkIHtcbiAgICB0aGlzLm9uVG91Y2hlZCA9IGZuO1xuICB9XG5cbiAgc2V0RGlzYWJsZWRTdGF0ZShpc0Rpc2FibGVkOiBib29sZWFuKTogdm9pZCB7XG4gICAgdGhpcy5kaXNhYmxlZCA9IGlzRGlzYWJsZWQ7XG4gIH1cblxuICBfaGFuZGxlSW5wdXQoY29udHJvbDogQWJzdHJhY3RDb250cm9sLCBuZXh0RWxlbWVudD86IEhUTUxJbnB1dEVsZW1lbnQpOiB2b2lkIHtcbiAgICB0aGlzLmF1dG9Gb2N1c05leHQoY29udHJvbCwgbmV4dEVsZW1lbnQpO1xuICAgIHRoaXMub25DaGFuZ2UodGhpcy52YWx1ZSk7XG4gIH1cbn1cblxuY29uc3QgZ2V0QmJhbiA9IChjb3VudHJ5Q29kZTogc3RyaW5nIHwgbnVsbCB8IHVuZGVmaW5lZCA9ICcnLCBiYmFuOiBzdHJpbmcpID0+IHtcbiAgcmV0dXJuIHtcbiAgICBiYmFuOiBmcmllbmRseUZvcm1hdElCQU4oYCR7Y291bnRyeUNvZGV9JHtiYmFufWApPy5zdWJzdHJpbmcoMikgfHwgbnVsbCxcbiAgfTtcbn07XG4iLCI8ZGl2XG4gIHJvbGU9XCJncm91cFwiXG4gIGNsYXNzPVwiYmFuay1hY2NvdW50LWlucHV0LWdyb3VwXCJcbiAgW2Zvcm1Hcm91cF09XCJwYXJ0c1wiXG4gIFthdHRyLmFyaWEtbGFiZWxsZWRieV09XCJfZm9ybUZpZWxkLmdldExhYmVsSWQoKVwiXG4+XG4gIDxtYXQtc2VsZWN0XG4gICAgY2xhc3M9XCJjb3VudHJ5LWNvZGUtc2VsZWN0XCJcbiAgICBtYXRUZXh0UHJlZml4XG4gICAgZm9ybUNvbnRyb2xOYW1lPVwiY291bnRyeUNvZGVcIlxuICAgIHBsYWNlaG9sZGVyPVwiWFhcIlxuICAgIChzZWxlY3Rpb25DaGFuZ2UpPVwiX2hhbmRsZUlucHV0KHBhcnRzLmNvbnRyb2xzLmNvdW50cnlDb2RlKVwiXG4gICAgI2NvdW50cnlDb2RlXG4gID5cbiAgICA8bWF0LW9wdGlvbj5cbiAgICAgIDxtYXQtc2VsZWN0LXNlYXJjaFxuICAgICAgICBbZm9ybUNvbnRyb2xdPVwiZmlsdGVyQ3RybFwiXG4gICAgICAgIG5vRW50cmllc0ZvdW5kTGFiZWw9XCJuby1lbnRyaWVzLWxhYmVsXCJcbiAgICAgICAgcGxhY2Vob2xkZXJMYWJlbD1cInBsYWNlaG9sZGVyTGFiZWxcIlxuICAgICAgPjwvbWF0LXNlbGVjdC1zZWFyY2g+XG4gICAgPC9tYXQtb3B0aW9uPlxuXG4gICAgPG1hdC1vcHRpb24gKm5nRm9yPVwibGV0IGNvdW50cnkgb2YgY291bnRyeUNvZGVzJCB8IGFzeW5jXCIgW3ZhbHVlXT1cImNvdW50cnlcIj5cbiAgICAgIDxzcGFuPnt7IGNvdW50cnkgfX08L3NwYW4+XG4gICAgPC9tYXQtb3B0aW9uPlxuICA8L21hdC1zZWxlY3Q+XG5cbiAgPGlucHV0XG4gICAgaWQ9XCJiYmFuLWlucHV0XCJcbiAgICBuYW1lPVwiYmJhbi1pbnB1dFwiXG4gICAgY2xhc3M9XCJiYmFuLWlucHV0XCJcbiAgICBmb3JtQ29udHJvbE5hbWU9XCJiYmFuXCJcbiAgICAoaW5wdXQpPVwiX2hhbmRsZUlucHV0KHBhcnRzLmNvbnRyb2xzLmJiYW4pXCJcbiAgICAjYmJhblxuICAvPlxuPC9kaXY+XG4iXX0=
@@ -1,66 +0,0 @@
1
- import { CommonModule } from '@angular/common';
2
- import { Component, Input, ViewEncapsulation, } from '@angular/core';
3
- import { ReactiveFormsModule } from '@angular/forms';
4
- import { MatFormFieldModule } from '@angular/material/form-field';
5
- import { MatInputModule } from '@angular/material/input';
6
- import { MatSelectModule } from '@angular/material/select';
7
- import { TranslateModule } from '@ngx-translate/core';
8
- import { Subject } from 'rxjs';
9
- import { MatSelectSearchModule } from '@onemrvapublic/design-system/mat-select-search';
10
- import { BankAccountComponent } from './bank-account.component';
11
- import { bankAccountValidator } from '@onemrvapublic/design-system/shared';
12
- import { ValidationErrorsIBAN } from 'ibantools';
13
- import * as i0 from "@angular/core";
14
- import * as i1 from "@angular/common";
15
- import * as i2 from "@angular/material/form-field";
16
- import * as i3 from "@angular/forms";
17
- import * as i4 from "@ngx-translate/core";
18
- export class OnemrvaMatInputBankAccountComponent {
19
- constructor() {
20
- this.key = 'accountNumber';
21
- this.hint = '';
22
- this.destroyNotifier$ = new Subject();
23
- }
24
- ngOnInit() {
25
- this.accountNumber.addValidators([bankAccountValidator]);
26
- }
27
- errors() {
28
- const bankNumberErrors = this.accountNumber.errors;
29
- if (!bankNumberErrors) {
30
- return '';
31
- }
32
- if (bankNumberErrors[ValidationErrorsIBAN[ValidationErrorsIBAN.WrongBBANLength]]) {
33
- return 'input.bank.length';
34
- }
35
- if (bankNumberErrors[ValidationErrorsIBAN[ValidationErrorsIBAN.WrongIBANChecksum]]) {
36
- return 'input.bank.checksum';
37
- }
38
- return 'input.bank.invalid';
39
- }
40
- ngOnDestroy() {
41
- this.destroyNotifier$.next();
42
- this.destroyNotifier$.complete();
43
- }
44
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.6", ngImport: i0, type: OnemrvaMatInputBankAccountComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
45
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.6", type: OnemrvaMatInputBankAccountComponent, isStandalone: true, selector: "onemrva-mat-input-bank-account", inputs: { accountNumber: "accountNumber", key: "key", hint: "hint" }, ngImport: i0, template: "<mat-form-field class=\"onemrva-bank-account-input\">\n <mat-label>{{ key | translate }}</mat-label>\n\n <bank-account [formControl]=\"accountNumber\" />\n\n <mat-hint *ngIf=\"hint !== ''\">{{ hint }}</mat-hint>\n\n <mat-error>\n {{ errors() | translate }}\n </mat-error>\n</mat-form-field>\n", styles: [".onemrva-bank-account-input .mat-mdc-select-arrow-wrapper{margin-left:4px}.onemrva-bank-account-input .mat-mdc-form-field-infix{min-width:320px!important}.onemrva-bank-account-input .mat-mdc-form-field-infix .onemrva-bank-account-text{padding-left:4px;vertical-align:middle}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "ngmodule", type: MatInputModule }, { kind: "component", type: i2.MatFormField, selector: "mat-form-field", inputs: ["hideRequiredMarker", "color", "floatLabel", "appearance", "subscriptSizing", "hintLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: i2.MatLabel, selector: "mat-label" }, { kind: "directive", type: i2.MatHint, selector: "mat-hint", inputs: ["align", "id"] }, { kind: "directive", type: i2.MatError, selector: "mat-error, [matError]", inputs: ["id"] }, { kind: "ngmodule", type: MatFormFieldModule }, { kind: "ngmodule", type: MatSelectModule }, { kind: "ngmodule", type: ReactiveFormsModule }, { kind: "directive", type: i3.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i3.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { kind: "ngmodule", type: TranslateModule }, { kind: "pipe", type: i4.TranslatePipe, name: "translate" }, { kind: "ngmodule", type: MatSelectSearchModule }, { kind: "component", type: BankAccountComponent, selector: "bank-account", inputs: ["aria-describedby", "placeholder", "required", "disabled", "value"] }], encapsulation: i0.ViewEncapsulation.None }); }
46
- }
47
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.6", ngImport: i0, type: OnemrvaMatInputBankAccountComponent, decorators: [{
48
- type: Component,
49
- args: [{ selector: 'onemrva-mat-input-bank-account', standalone: true, imports: [
50
- CommonModule,
51
- MatInputModule,
52
- MatFormFieldModule,
53
- MatSelectModule,
54
- ReactiveFormsModule,
55
- TranslateModule,
56
- MatSelectSearchModule,
57
- BankAccountComponent,
58
- ], encapsulation: ViewEncapsulation.None, template: "<mat-form-field class=\"onemrva-bank-account-input\">\n <mat-label>{{ key | translate }}</mat-label>\n\n <bank-account [formControl]=\"accountNumber\" />\n\n <mat-hint *ngIf=\"hint !== ''\">{{ hint }}</mat-hint>\n\n <mat-error>\n {{ errors() | translate }}\n </mat-error>\n</mat-form-field>\n", styles: [".onemrva-bank-account-input .mat-mdc-select-arrow-wrapper{margin-left:4px}.onemrva-bank-account-input .mat-mdc-form-field-infix{min-width:320px!important}.onemrva-bank-account-input .mat-mdc-form-field-infix .onemrva-bank-account-text{padding-left:4px;vertical-align:middle}\n"] }]
59
- }], propDecorators: { accountNumber: [{
60
- type: Input
61
- }], key: [{
62
- type: Input
63
- }], hint: [{
64
- type: Input
65
- }] } });
66
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoib25lbXJ2YS1tYXQtaW5wdXQtYmFuay1hY2NvdW50LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL29uZW1ydmEvZGVzaWduLXN5c3RlbS9tYXQtaW5wdXQtYmFuay1hY2NvdW50L3NyYy9vbmVtcnZhLW1hdC1pbnB1dC1iYW5rLWFjY291bnQuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvb25lbXJ2YS9kZXNpZ24tc3lzdGVtL21hdC1pbnB1dC1iYW5rLWFjY291bnQvc3JjL29uZW1ydmEtbWF0LWlucHV0LWJhbmstYWNjb3VudC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDL0MsT0FBTyxFQUNMLFNBQVMsRUFDVCxLQUFLLEVBR0wsaUJBQWlCLEdBQ2xCLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBZSxtQkFBbUIsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQ2xFLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLDhCQUE4QixDQUFDO0FBQ2xFLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQztBQUN6RCxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sMEJBQTBCLENBQUM7QUFDM0QsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBRXRELE9BQU8sRUFBRSxPQUFPLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFFL0IsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sZ0RBQWdELENBQUM7QUFDdkYsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sMEJBQTBCLENBQUM7QUFDaEUsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0scUNBQXFDLENBQUM7QUFDM0UsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sV0FBVyxDQUFDOzs7Ozs7QUFtQmpELE1BQU0sT0FBTyxtQ0FBbUM7SUFqQmhEO1FBbUJXLFFBQUcsR0FBRyxlQUFlLENBQUM7UUFDdEIsU0FBSSxHQUFHLEVBQUUsQ0FBQztRQUVuQixxQkFBZ0IsR0FBRyxJQUFJLE9BQU8sRUFBUSxDQUFDO0tBb0N4QztJQWxDQyxRQUFRO1FBQ04sSUFBSSxDQUFDLGFBQWEsQ0FBQyxhQUFhLENBQUMsQ0FBQyxvQkFBb0IsQ0FBQyxDQUFDLENBQUM7SUFDM0QsQ0FBQztJQUVELE1BQU07UUFDSixNQUFNLGdCQUFnQixHQUFHLElBQUksQ0FBQyxhQUFhLENBQUMsTUFBTSxDQUFDO1FBRW5ELElBQUksQ0FBQyxnQkFBZ0IsRUFBRSxDQUFDO1lBQ3RCLE9BQU8sRUFBRSxDQUFDO1FBQ1osQ0FBQztRQUVELElBQ0UsZ0JBQWdCLENBQ2Qsb0JBQW9CLENBQUMsb0JBQW9CLENBQUMsZUFBZSxDQUFDLENBQzNELEVBQ0QsQ0FBQztZQUNELE9BQU8sbUJBQW1CLENBQUM7UUFDN0IsQ0FBQztRQUVELElBQ0UsZ0JBQWdCLENBQ2Qsb0JBQW9CLENBQUMsb0JBQW9CLENBQUMsaUJBQWlCLENBQUMsQ0FDN0QsRUFDRCxDQUFDO1lBQ0QsT0FBTyxxQkFBcUIsQ0FBQztRQUMvQixDQUFDO1FBRUQsT0FBTyxvQkFBb0IsQ0FBQztJQUM5QixDQUFDO0lBRUQsV0FBVztRQUNULElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxJQUFJLEVBQUUsQ0FBQztRQUM3QixJQUFJLENBQUMsZ0JBQWdCLENBQUMsUUFBUSxFQUFFLENBQUM7SUFDbkMsQ0FBQzs4R0F4Q1UsbUNBQW1DO2tHQUFuQyxtQ0FBbUMsZ0tDdENoRCw4U0FXQSw2VURnQkksWUFBWSxrSUFDWixjQUFjLCtkQUNkLGtCQUFrQiw4QkFDbEIsZUFBZSw4QkFDZixtQkFBbUIseVRBQ25CLGVBQWUsMkZBQ2YscUJBQXFCLCtCQUNyQixvQkFBb0I7OzJGQUlYLG1DQUFtQztrQkFqQi9DLFNBQVM7K0JBQ0UsZ0NBQWdDLGNBRzlCLElBQUksV0FDUDt3QkFDUCxZQUFZO3dCQUNaLGNBQWM7d0JBQ2Qsa0JBQWtCO3dCQUNsQixlQUFlO3dCQUNmLG1CQUFtQjt3QkFDbkIsZUFBZTt3QkFDZixxQkFBcUI7d0JBQ3JCLG9CQUFvQjtxQkFDckIsaUJBQ2MsaUJBQWlCLENBQUMsSUFBSTs4QkFHNUIsYUFBYTtzQkFBckIsS0FBSztnQkFDRyxHQUFHO3NCQUFYLEtBQUs7Z0JBQ0csSUFBSTtzQkFBWixLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7XG4gIENvbXBvbmVudCxcbiAgSW5wdXQsXG4gIE9uRGVzdHJveSxcbiAgT25Jbml0LFxuICBWaWV3RW5jYXBzdWxhdGlvbixcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBGb3JtQ29udHJvbCwgUmVhY3RpdmVGb3Jtc01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcbmltcG9ydCB7IE1hdEZvcm1GaWVsZE1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2Zvcm0tZmllbGQnO1xuaW1wb3J0IHsgTWF0SW5wdXRNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9pbnB1dCc7XG5pbXBvcnQgeyBNYXRTZWxlY3RNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9zZWxlY3QnO1xuaW1wb3J0IHsgVHJhbnNsYXRlTW9kdWxlIH0gZnJvbSAnQG5neC10cmFuc2xhdGUvY29yZSc7XG5cbmltcG9ydCB7IFN1YmplY3QgfSBmcm9tICdyeGpzJztcblxuaW1wb3J0IHsgTWF0U2VsZWN0U2VhcmNoTW9kdWxlIH0gZnJvbSAnQG9uZW1ydmFwdWJsaWMvZGVzaWduLXN5c3RlbS9tYXQtc2VsZWN0LXNlYXJjaCc7XG5pbXBvcnQgeyBCYW5rQWNjb3VudENvbXBvbmVudCB9IGZyb20gJy4vYmFuay1hY2NvdW50LmNvbXBvbmVudCc7XG5pbXBvcnQgeyBiYW5rQWNjb3VudFZhbGlkYXRvciB9IGZyb20gJ0BvbmVtcnZhcHVibGljL2Rlc2lnbi1zeXN0ZW0vc2hhcmVkJztcbmltcG9ydCB7IFZhbGlkYXRpb25FcnJvcnNJQkFOIH0gZnJvbSAnaWJhbnRvb2xzJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnb25lbXJ2YS1tYXQtaW5wdXQtYmFuay1hY2NvdW50JyxcbiAgc3R5bGVVcmxzOiBbJ29uZW1ydmEtbWF0LWlucHV0LWJhbmstYWNjb3VudC5jb21wb25lbnQuc2NzcyddLFxuICB0ZW1wbGF0ZVVybDogJ29uZW1ydmEtbWF0LWlucHV0LWJhbmstYWNjb3VudC5jb21wb25lbnQuaHRtbCcsXG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gIGltcG9ydHM6IFtcbiAgICBDb21tb25Nb2R1bGUsXG4gICAgTWF0SW5wdXRNb2R1bGUsXG4gICAgTWF0Rm9ybUZpZWxkTW9kdWxlLFxuICAgIE1hdFNlbGVjdE1vZHVsZSxcbiAgICBSZWFjdGl2ZUZvcm1zTW9kdWxlLFxuICAgIFRyYW5zbGF0ZU1vZHVsZSxcbiAgICBNYXRTZWxlY3RTZWFyY2hNb2R1bGUsXG4gICAgQmFua0FjY291bnRDb21wb25lbnQsXG4gIF0sXG4gIGVuY2Fwc3VsYXRpb246IFZpZXdFbmNhcHN1bGF0aW9uLk5vbmUsXG59KVxuZXhwb3J0IGNsYXNzIE9uZW1ydmFNYXRJbnB1dEJhbmtBY2NvdW50Q29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0LCBPbkRlc3Ryb3kge1xuICBASW5wdXQoKSBhY2NvdW50TnVtYmVyITogRm9ybUNvbnRyb2w8c3RyaW5nIHwgbnVsbD47XG4gIEBJbnB1dCgpIGtleSA9ICdhY2NvdW50TnVtYmVyJztcbiAgQElucHV0KCkgaGludCA9ICcnO1xuXG4gIGRlc3Ryb3lOb3RpZmllciQgPSBuZXcgU3ViamVjdDx2b2lkPigpO1xuXG4gIG5nT25Jbml0KCkge1xuICAgIHRoaXMuYWNjb3VudE51bWJlci5hZGRWYWxpZGF0b3JzKFtiYW5rQWNjb3VudFZhbGlkYXRvcl0pO1xuICB9XG5cbiAgZXJyb3JzKCkge1xuICAgIGNvbnN0IGJhbmtOdW1iZXJFcnJvcnMgPSB0aGlzLmFjY291bnROdW1iZXIuZXJyb3JzO1xuXG4gICAgaWYgKCFiYW5rTnVtYmVyRXJyb3JzKSB7XG4gICAgICByZXR1cm4gJyc7XG4gICAgfVxuXG4gICAgaWYgKFxuICAgICAgYmFua051bWJlckVycm9yc1tcbiAgICAgICAgVmFsaWRhdGlvbkVycm9yc0lCQU5bVmFsaWRhdGlvbkVycm9yc0lCQU4uV3JvbmdCQkFOTGVuZ3RoXVxuICAgICAgXVxuICAgICkge1xuICAgICAgcmV0dXJuICdpbnB1dC5iYW5rLmxlbmd0aCc7XG4gICAgfVxuXG4gICAgaWYgKFxuICAgICAgYmFua051bWJlckVycm9yc1tcbiAgICAgICAgVmFsaWRhdGlvbkVycm9yc0lCQU5bVmFsaWRhdGlvbkVycm9yc0lCQU4uV3JvbmdJQkFOQ2hlY2tzdW1dXG4gICAgICBdXG4gICAgKSB7XG4gICAgICByZXR1cm4gJ2lucHV0LmJhbmsuY2hlY2tzdW0nO1xuICAgIH1cblxuICAgIHJldHVybiAnaW5wdXQuYmFuay5pbnZhbGlkJztcbiAgfVxuXG4gIG5nT25EZXN0cm95KCkge1xuICAgIHRoaXMuZGVzdHJveU5vdGlmaWVyJC5uZXh0KCk7XG4gICAgdGhpcy5kZXN0cm95Tm90aWZpZXIkLmNvbXBsZXRlKCk7XG4gIH1cbn1cbiIsIjxtYXQtZm9ybS1maWVsZCBjbGFzcz1cIm9uZW1ydmEtYmFuay1hY2NvdW50LWlucHV0XCI+XG4gIDxtYXQtbGFiZWw+e3sga2V5IHwgdHJhbnNsYXRlIH19PC9tYXQtbGFiZWw+XG5cbiAgPGJhbmstYWNjb3VudCBbZm9ybUNvbnRyb2xdPVwiYWNjb3VudE51bWJlclwiIC8+XG5cbiAgPG1hdC1oaW50ICpuZ0lmPVwiaGludCAhPT0gJydcIj57eyBoaW50IH19PC9tYXQtaGludD5cblxuICA8bWF0LWVycm9yPlxuICAgIHt7IGVycm9ycygpIHwgdHJhbnNsYXRlIH19XG4gIDwvbWF0LWVycm9yPlxuPC9tYXQtZm9ybS1maWVsZD5cbiJdfQ==
@@ -1,42 +0,0 @@
1
- .bank-account-input-group {
2
- display: flex;
3
- width: 100%;
4
-
5
- .country-code-input,
6
- .bban-input {
7
- border: none;
8
- background: none;
9
- padding: 0;
10
- outline: none;
11
- font: inherit;
12
- text-align: left;
13
- color: currentcolor;
14
- }
15
-
16
- .bban-input {
17
- padding-left: 4px;
18
- }
19
- }
20
-
21
- //.example-tel-input-container {
22
- // display: flex;
23
- //}
24
- //
25
- //.example-tel-input-element {
26
- // border: none;
27
- // background: none;
28
- // padding: 0;
29
- // outline: none;
30
- // font: inherit;
31
- // text-align: center;
32
- // color: currentcolor;
33
- //}
34
- //
35
- //.example-tel-input-spacer {
36
- // opacity: 0;
37
- // transition: opacity 200ms;
38
- //}
39
-
40
- //:host.example-floating .example-tel-input-spacer {
41
- // opacity: 1;
42
- //}
@@ -1,15 +0,0 @@
1
- import { OnDestroy, OnInit } from '@angular/core';
2
- import { FormControl } from '@angular/forms';
3
- import { Subject } from 'rxjs';
4
- import * as i0 from "@angular/core";
5
- export declare class OnemrvaMatInputBankAccountComponent implements OnInit, OnDestroy {
6
- accountNumber: FormControl<string | null>;
7
- key: string;
8
- hint: string;
9
- destroyNotifier$: Subject<void>;
10
- ngOnInit(): void;
11
- errors(): "" | "input.bank.length" | "input.bank.checksum" | "input.bank.invalid";
12
- ngOnDestroy(): void;
13
- static ɵfac: i0.ɵɵFactoryDeclaration<OnemrvaMatInputBankAccountComponent, never>;
14
- static ɵcmp: i0.ɵɵComponentDeclaration<OnemrvaMatInputBankAccountComponent, "onemrva-mat-input-bank-account", never, { "accountNumber": { "alias": "accountNumber"; "required": false; }; "key": { "alias": "key"; "required": false; }; "hint": { "alias": "hint"; "required": false; }; }, {}, never, never, true, never>;
15
- }
@@ -1,14 +0,0 @@
1
- .onemrva-bank-account-input {
2
- .mat-mdc-select-arrow-wrapper {
3
- margin-left: 4px;
4
- }
5
-
6
- .mat-mdc-form-field-infix {
7
- min-width: 320px !important;
8
-
9
- .onemrva-bank-account-text {
10
- padding-left: 4px;
11
- vertical-align: middle;
12
- }
13
- }
14
- }