@qbs-origin/origin-form 0.5.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/README.md +24 -0
- package/esm2022/lib/action-step-handler.mjs +163 -0
- package/esm2022/lib/auth-client.service.mjs +69 -0
- package/esm2022/lib/enums/label.keys.mjs +721 -0
- package/esm2022/lib/form-css.helper.mjs +367 -0
- package/esm2022/lib/formly/baseFormlyControlComponent.mjs +52 -0
- package/esm2022/lib/formly/baseFormlyStepComponent.mjs +59 -0
- package/esm2022/lib/formly/custom-section-separator.component.mjs +32 -0
- package/esm2022/lib/formly/form-section-separator.component.mjs +36 -0
- package/esm2022/lib/formly/formly-action.mjs +56 -0
- package/esm2022/lib/formly/formly-checkbox/formly-checkbox.component.mjs +52 -0
- package/esm2022/lib/formly/formly-dictionary-dropdown-tree/formly-dictionary-dropdown-tree.component.mjs +261 -0
- package/esm2022/lib/formly/formly-download-documents/formly-download-documents.component.mjs +126 -0
- package/esm2022/lib/formly/formly-enrol-card/formly-enrol-card.component.mjs +120 -0
- package/esm2022/lib/formly/formly-field-stepper/formly-field-stepper.component.mjs +762 -0
- package/esm2022/lib/formly/formly-generate-documents/formly-generate-documents.component.mjs +57 -0
- package/esm2022/lib/formly/formly-identification.component.mjs +84 -0
- package/esm2022/lib/formly/formly-open-banking/formly-open-banking.component.mjs +590 -0
- package/esm2022/lib/formly/formly-paragraph/formly-paragraph.component.mjs +35 -0
- package/esm2022/lib/formly/formly-radio/formly-radio-component.mjs +49 -0
- package/esm2022/lib/formly/formly-row-fille.mjs +12 -0
- package/esm2022/lib/formly/formly-scan-id/formly-scan-id.component.mjs +284 -0
- package/esm2022/lib/formly/formly-sign/formly-sign.component.mjs +173 -0
- package/esm2022/lib/formly/formly-upload-documents/formly-upload-documents.component.mjs +198 -0
- package/esm2022/lib/formly/formly-validate-contact-info/formly-validate-contact-info.component.mjs +124 -0
- package/esm2022/lib/formly/formly-view-documents/formly-view-documents.component.mjs +245 -0
- package/esm2022/lib/formly/formly-view-offers/formly-view-offers.component.mjs +160 -0
- package/esm2022/lib/model-population.helper.mjs +265 -0
- package/esm2022/lib/models/application-type.model.mjs +12 -0
- package/esm2022/lib/models/application.model.mjs +30 -0
- package/esm2022/lib/models/auth/users.model.mjs +2 -0
- package/esm2022/lib/models/dictionary.model.mjs +20 -0
- package/esm2022/lib/models/flux.model.mjs +105 -0
- package/esm2022/lib/models/forms.model.mjs +572 -0
- package/esm2022/lib/models/label-info.model.mjs +2 -0
- package/esm2022/lib/models/label.model.mjs +2 -0
- package/esm2022/lib/models/language.model.mjs +3 -0
- package/esm2022/lib/models/list.model.mjs +2 -0
- package/esm2022/lib/models/partner.model.mjs +3 -0
- package/esm2022/lib/models/treeview.model.mjs +15 -0
- package/esm2022/lib/origin-form-auth.service.mjs +40 -0
- package/esm2022/lib/origin-form-config.model.mjs +2 -0
- package/esm2022/lib/origin-form-token.interceptor.mjs +35 -0
- package/esm2022/lib/origin-form.component.mjs +2391 -0
- package/esm2022/lib/origin-form.module.mjs +479 -0
- package/esm2022/lib/origin-form.service.mjs +14 -0
- package/esm2022/lib/others/check-list.database.mjs +55 -0
- package/esm2022/lib/others/config-service.mjs +42 -0
- package/esm2022/lib/others/dictionary-label-info.mjs +3 -0
- package/esm2022/lib/others/environment-type.mjs +21 -0
- package/esm2022/lib/others/external-link.directive.mjs +49 -0
- package/esm2022/lib/others/flux-helper.mjs +1397 -0
- package/esm2022/lib/others/picker.component.mjs +119 -0
- package/esm2022/lib/others/translation.pipe.mjs +21 -0
- package/esm2022/lib/others/translations-helper.mjs +258 -0
- package/esm2022/lib/others/utils.mjs +272 -0
- package/esm2022/lib/services/applicationData.service.mjs +145 -0
- package/esm2022/lib/services/auth-http.service.mjs +80 -0
- package/esm2022/lib/services/dialog.service.mjs +56 -0
- package/esm2022/lib/services/dictionary.service.mjs +198 -0
- package/esm2022/lib/services/forms.service.mjs +47 -0
- package/esm2022/lib/services/labels.service.mjs +29 -0
- package/esm2022/lib/services/language.service.mjs +24 -0
- package/esm2022/lib/services/open-banking.service.mjs +194 -0
- package/esm2022/lib/services/origin-form-signalr-handler.service.mjs +107 -0
- package/esm2022/lib/services/origin-form-signalr.service.mjs +105 -0
- package/esm2022/lib/services/otp.service.mjs +28 -0
- package/esm2022/lib/services/proxy.service.mjs +79 -0
- package/esm2022/lib/services/scroll-to-error.service.mjs +369 -0
- package/esm2022/lib/services/translation.service.mjs +27 -0
- package/esm2022/lib/shared-components/confirmation.component.mjs +34 -0
- package/esm2022/lib/shared-components/dictionaries-tree.component.mjs +301 -0
- package/esm2022/lib/shared-components/grid.component.mjs +241 -0
- package/esm2022/lib/shared-components/treeview/treeview.component.mjs +224 -0
- package/esm2022/lib/theme-css.mjs +2254 -0
- package/esm2022/lib/theme-injector.service.mjs +26 -0
- package/esm2022/public-api.mjs +4 -0
- package/esm2022/qbs-origin-origin-form.mjs +5 -0
- package/fesm2022/qbs-origin-origin-form.mjs +15215 -0
- package/fesm2022/qbs-origin-origin-form.mjs.map +1 -0
- package/index.d.ts +5 -0
- package/lib/action-step-handler.d.ts +49 -0
- package/lib/auth-client.service.d.ts +17 -0
- package/lib/enums/label.keys.d.ts +720 -0
- package/lib/form-css.helper.d.ts +28 -0
- package/lib/formly/baseFormlyControlComponent.d.ts +25 -0
- package/lib/formly/baseFormlyStepComponent.d.ts +29 -0
- package/lib/formly/custom-section-separator.component.d.ts +6 -0
- package/lib/formly/form-section-separator.component.d.ts +10 -0
- package/lib/formly/formly-action.d.ts +13 -0
- package/lib/formly/formly-checkbox/formly-checkbox.component.d.ts +15 -0
- package/lib/formly/formly-dictionary-dropdown-tree/formly-dictionary-dropdown-tree.component.d.ts +45 -0
- package/lib/formly/formly-download-documents/formly-download-documents.component.d.ts +22 -0
- package/lib/formly/formly-enrol-card/formly-enrol-card.component.d.ts +114 -0
- package/lib/formly/formly-field-stepper/formly-field-stepper.component.d.ts +79 -0
- package/lib/formly/formly-generate-documents/formly-generate-documents.component.d.ts +17 -0
- package/lib/formly/formly-identification.component.d.ts +19 -0
- package/lib/formly/formly-open-banking/formly-open-banking.component.d.ts +119 -0
- package/lib/formly/formly-paragraph/formly-paragraph.component.d.ts +10 -0
- package/lib/formly/formly-radio/formly-radio-component.d.ts +15 -0
- package/lib/formly/formly-row-fille.d.ts +6 -0
- package/lib/formly/formly-scan-id/formly-scan-id.component.d.ts +41 -0
- package/lib/formly/formly-sign/formly-sign.component.d.ts +36 -0
- package/lib/formly/formly-upload-documents/formly-upload-documents.component.d.ts +25 -0
- package/lib/formly/formly-validate-contact-info/formly-validate-contact-info.component.d.ts +79 -0
- package/lib/formly/formly-view-documents/formly-view-documents.component.d.ts +33 -0
- package/lib/formly/formly-view-offers/formly-view-offers.component.d.ts +23 -0
- package/lib/model-population.helper.d.ts +8 -0
- package/lib/models/application-type.model.d.ts +27 -0
- package/lib/models/application.model.d.ts +107 -0
- package/lib/models/auth/users.model.d.ts +20 -0
- package/lib/models/dictionary.model.d.ts +77 -0
- package/lib/models/flux.model.d.ts +101 -0
- package/lib/models/forms.model.d.ts +504 -0
- package/lib/models/label-info.model.d.ts +10 -0
- package/lib/models/label.model.d.ts +4 -0
- package/lib/models/language.model.d.ts +5 -0
- package/lib/models/list.model.d.ts +8 -0
- package/lib/models/partner.model.d.ts +12 -0
- package/lib/models/treeview.model.d.ts +17 -0
- package/lib/origin-form-auth.service.d.ts +15 -0
- package/lib/origin-form-config.model.d.ts +12 -0
- package/lib/origin-form-token.interceptor.d.ts +12 -0
- package/lib/origin-form.component.d.ts +231 -0
- package/lib/origin-form.module.d.ts +84 -0
- package/lib/origin-form.service.d.ts +6 -0
- package/lib/others/check-list.database.d.ts +16 -0
- package/lib/others/config-service.d.ts +22 -0
- package/lib/others/dictionary-label-info.d.ts +6 -0
- package/lib/others/environment-type.d.ts +8 -0
- package/lib/others/external-link.directive.d.ts +12 -0
- package/lib/others/flux-helper.d.ts +115 -0
- package/lib/others/picker.component.d.ts +36 -0
- package/lib/others/translation.pipe.d.ts +10 -0
- package/lib/others/translations-helper.d.ts +31 -0
- package/lib/others/utils.d.ts +37 -0
- package/lib/services/applicationData.service.d.ts +35 -0
- package/lib/services/auth-http.service.d.ts +21 -0
- package/lib/services/dialog.service.d.ts +20 -0
- package/lib/services/dictionary.service.d.ts +89 -0
- package/lib/services/forms.service.d.ts +17 -0
- package/lib/services/labels.service.d.ts +13 -0
- package/lib/services/language.service.d.ts +14 -0
- package/lib/services/open-banking.service.d.ts +137 -0
- package/lib/services/origin-form-signalr-handler.service.d.ts +29 -0
- package/lib/services/origin-form-signalr.service.d.ts +24 -0
- package/lib/services/otp.service.d.ts +22 -0
- package/lib/services/proxy.service.d.ts +29 -0
- package/lib/services/scroll-to-error.service.d.ts +54 -0
- package/lib/services/translation.service.d.ts +10 -0
- package/lib/shared-components/confirmation.component.d.ts +77 -0
- package/lib/shared-components/dictionaries-tree.component.d.ts +51 -0
- package/lib/shared-components/grid.component.d.ts +138 -0
- package/lib/shared-components/treeview/treeview.component.d.ts +121 -0
- package/lib/theme-css.d.ts +2 -0
- package/lib/theme-injector.service.d.ts +8 -0
- package/package.json +42 -0
- package/public-api.d.ts +3 -0
- package/schematics-compiled/collection.json +10 -0
- package/schematics-compiled/ng-add/index.d.ts +2 -0
- package/schematics-compiled/ng-add/index.js +67 -0
- package/schematics-compiled/ng-add/index.js.map +1 -0
- package/schematics-compiled/ng-add/schema.json +8 -0
- package/src/lib/assets/fonts/Figtree-Bold.ttf +0 -0
- package/src/lib/assets/fonts/Figtree-Light.ttf +0 -0
- package/src/lib/assets/fonts/Figtree-Regular.ttf +0 -0
- package/src/lib/assets/fonts/Sora-ExtraBold.ttf +0 -0
- package/src/lib/assets/fonts/Sora-Light.ttf +0 -0
- package/src/lib/assets/fonts/Sora-Regular.ttf +0 -0
- package/src/lib/assets/fonts/ttrounds-bold-webfont.woff +0 -0
- package/src/lib/assets/fonts/ttrounds-bold-webfont.woff2 +0 -0
- package/src/lib/assets/fonts/ttrounds-regular-webfont.woff +0 -0
- package/src/lib/assets/fonts/ttrounds-regular-webfont.woff2 +0 -0
- package/src/lib/assets/fonts/ttrounds-thin-webfont.woff +0 -0
- package/src/lib/assets/fonts/ttrounds-thin-webfont.woff2 +0 -0
- package/src/lib/assets/images/flag/icon-flag-de.svg +10 -0
- package/src/lib/assets/images/flag/icon-flag-en.svg +1 -0
- package/src/lib/assets/images/flag/icon-flag-es.svg +11 -0
- package/src/lib/assets/images/flag/icon-flag-fr.svg +1 -0
- package/src/lib/assets/images/flag/icon-flag-ro.svg +11 -0
- package/src/lib/assets/images/flag/origin-form/new-id-card.png +0 -0
- package/src/lib/assets/images/flag/origin-form/old-id-card.png +0 -0
|
@@ -0,0 +1,479 @@
|
|
|
1
|
+
import { CUSTOM_ELEMENTS_SCHEMA, NgModule } from '@angular/core';
|
|
2
|
+
import { CommonModule } from '@angular/common';
|
|
3
|
+
import { CustomSectionComponent } from './formly/custom-section-separator.component';
|
|
4
|
+
import { FormSectionSeparatorComponent } from './formly/form-section-separator.component';
|
|
5
|
+
import { FormlyActionComponent } from './formly/formly-action';
|
|
6
|
+
import { FormlyCheckboxComponent } from './formly/formly-checkbox/formly-checkbox.component';
|
|
7
|
+
import { FormlyDictionaryDropdownTreeComponent } from './formly/formly-dictionary-dropdown-tree/formly-dictionary-dropdown-tree.component';
|
|
8
|
+
import { FormlyDownloadDocumentsComponent } from './formly/formly-download-documents/formly-download-documents.component';
|
|
9
|
+
import { FormlyFieldStepperComponent } from './formly/formly-field-stepper/formly-field-stepper.component';
|
|
10
|
+
import { FormlyGenerateDocumentsComponent } from './formly/formly-generate-documents/formly-generate-documents.component';
|
|
11
|
+
import { FormlyFieldIdentificationComponent } from './formly/formly-identification.component';
|
|
12
|
+
import { FormlyParagraphComponent } from './formly/formly-paragraph/formly-paragraph.component';
|
|
13
|
+
import { FormlyRadioComponent } from './formly/formly-radio/formly-radio-component';
|
|
14
|
+
import { RowFillerComponent } from './formly/formly-row-fille';
|
|
15
|
+
import { FormlyScanIdComponent } from './formly/formly-scan-id/formly-scan-id.component';
|
|
16
|
+
import { FormlySignComponent } from './formly/formly-sign/formly-sign.component';
|
|
17
|
+
import { FormlyUploadDocumentsComponent } from './formly/formly-upload-documents/formly-upload-documents.component';
|
|
18
|
+
import { FormlyValidateContactInfoComponent } from './formly/formly-validate-contact-info/formly-validate-contact-info.component';
|
|
19
|
+
import { FormlyViewOffersComponent } from './formly/formly-view-offers/formly-view-offers.component';
|
|
20
|
+
import { CollectorFormComponent } from './origin-form.component';
|
|
21
|
+
import { OriginFormService } from './origin-form.service';
|
|
22
|
+
import { PickerComponent } from './others/picker.component';
|
|
23
|
+
import { ApplicationDataService } from './services/applicationData.service';
|
|
24
|
+
import { DialogService } from './services/dialog.service';
|
|
25
|
+
import { LabelService } from './services/labels.service';
|
|
26
|
+
import { ProxyService } from './services/proxy.service';
|
|
27
|
+
import { DictionariesTreeComponent } from './shared-components/dictionaries-tree.component';
|
|
28
|
+
import { GridComponent } from './shared-components/grid.component';
|
|
29
|
+
import { ReactiveFormsModule, FormsModule } from '@angular/forms';
|
|
30
|
+
import { FormlyModule } from '@ngx-formly/core';
|
|
31
|
+
import { SignLibModule } from 'sign-lib';
|
|
32
|
+
import { FormlyMaterialModule } from '@ngx-formly/material';
|
|
33
|
+
import { FormlyMatDatepickerModule } from '@ngx-formly/material/datepicker';
|
|
34
|
+
import { FormlyMatTextAreaModule } from '@ngx-formly/material/textarea';
|
|
35
|
+
import { TranslateModule } from '@ngx-translate/core';
|
|
36
|
+
// Material Form Controls
|
|
37
|
+
import { MatAutocompleteModule } from '@angular/material/autocomplete';
|
|
38
|
+
import { MatCheckboxModule } from '@angular/material/checkbox';
|
|
39
|
+
import { MatDatepickerModule } from '@angular/material/datepicker';
|
|
40
|
+
import { MatFormFieldModule } from '@angular/material/form-field';
|
|
41
|
+
import { MatInputModule } from '@angular/material/input';
|
|
42
|
+
import { MatRadioModule } from '@angular/material/radio';
|
|
43
|
+
import { MatSelectModule } from '@angular/material/select';
|
|
44
|
+
import { MatSliderModule } from '@angular/material/slider';
|
|
45
|
+
import { MatSlideToggleModule } from '@angular/material/slide-toggle';
|
|
46
|
+
// Material Navigation
|
|
47
|
+
import { MatMenuModule } from '@angular/material/menu';
|
|
48
|
+
import { MatSidenavModule } from '@angular/material/sidenav';
|
|
49
|
+
import { MatToolbarModule } from '@angular/material/toolbar';
|
|
50
|
+
// Material Layout
|
|
51
|
+
import { MatCardModule } from '@angular/material/card';
|
|
52
|
+
import { MatDividerModule } from '@angular/material/divider';
|
|
53
|
+
import { MatExpansionModule } from '@angular/material/expansion';
|
|
54
|
+
import { MatGridListModule } from '@angular/material/grid-list';
|
|
55
|
+
import { MatListModule } from '@angular/material/list';
|
|
56
|
+
import { MatStepperModule } from '@angular/material/stepper';
|
|
57
|
+
import { MatTabsModule } from '@angular/material/tabs';
|
|
58
|
+
import { MatTreeModule } from '@angular/material/tree';
|
|
59
|
+
// Material Buttons & Indicators
|
|
60
|
+
import { MatButtonModule } from '@angular/material/button';
|
|
61
|
+
import { MatButtonToggleModule } from '@angular/material/button-toggle';
|
|
62
|
+
import { MatBadgeModule } from '@angular/material/badge';
|
|
63
|
+
import { MatChipsModule } from '@angular/material/chips';
|
|
64
|
+
import { MatIconModule } from '@angular/material/icon';
|
|
65
|
+
import { MatProgressSpinnerModule } from '@angular/material/progress-spinner';
|
|
66
|
+
import { MatProgressBarModule } from '@angular/material/progress-bar';
|
|
67
|
+
import { MatNativeDateModule, MatRippleModule } from '@angular/material/core';
|
|
68
|
+
// Material Popups & Modals
|
|
69
|
+
import { MatBottomSheetModule } from '@angular/material/bottom-sheet';
|
|
70
|
+
import { MatDialogModule } from '@angular/material/dialog';
|
|
71
|
+
import { MatSnackBarModule } from '@angular/material/snack-bar';
|
|
72
|
+
import { MatTooltipModule } from '@angular/material/tooltip';
|
|
73
|
+
// Material Data tables
|
|
74
|
+
import { MatPaginatorModule } from '@angular/material/paginator';
|
|
75
|
+
import { MatSortModule } from '@angular/material/sort';
|
|
76
|
+
import { MatTableModule } from '@angular/material/table';
|
|
77
|
+
import { NgScrollbarModule } from 'ngx-scrollbar';
|
|
78
|
+
import { MarkdownModule } from 'ngx-markdown';
|
|
79
|
+
import { AppTreeviewComponent } from './shared-components/treeview/treeview.component';
|
|
80
|
+
import { HTTP_INTERCEPTORS, provideHttpClient, withInterceptorsFromDi, } from '@angular/common/http';
|
|
81
|
+
import { OriginFormTokenInterceptor } from './origin-form-token.interceptor';
|
|
82
|
+
import { DictionaryService } from './services/dictionary.service';
|
|
83
|
+
import { FormsService } from './services/forms.service';
|
|
84
|
+
import { OtpService } from './services/otp.service';
|
|
85
|
+
import { defineCustomElements, } from '@ekyc_qoobiss/qbs-ect-cmp/dist/loader';
|
|
86
|
+
import { RouterModule } from '@angular/router';
|
|
87
|
+
//Enrol card
|
|
88
|
+
import { FormlyEnrolCardComponent } from './formly/formly-enrol-card/formly-enrol-card.component';
|
|
89
|
+
import { FormlyViewDocumentsComponent } from './formly/formly-view-documents/formly-view-documents.component';
|
|
90
|
+
import { PdfViewerModule } from 'ng2-pdf-viewer';
|
|
91
|
+
import { TranslationService } from './services/translation.service';
|
|
92
|
+
import { TranslatePipe } from './others/translation.pipe';
|
|
93
|
+
import { ExternalLinkDirective } from './others/external-link.directive';
|
|
94
|
+
import { ConfirmationComponent } from './shared-components/confirmation.component';
|
|
95
|
+
import { FormlyOpenBankingComponent } from './formly/formly-open-banking/formly-open-banking.component';
|
|
96
|
+
import * as i0 from "@angular/core";
|
|
97
|
+
import * as i1 from "./theme-injector.service";
|
|
98
|
+
import * as i2 from "ngx-markdown";
|
|
99
|
+
import * as i3 from "@angular/router";
|
|
100
|
+
import * as i4 from "@ngx-formly/core";
|
|
101
|
+
defineCustomElements(window);
|
|
102
|
+
export class OriginFormModule {
|
|
103
|
+
constructor(themeInjector) {
|
|
104
|
+
this.themeInjector = themeInjector;
|
|
105
|
+
}
|
|
106
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: OriginFormModule, deps: [{ token: i1.ThemeInjectorService }], target: i0.ɵɵFactoryTarget.NgModule }); }
|
|
107
|
+
static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "18.2.13", ngImport: i0, type: OriginFormModule, declarations: [TranslatePipe,
|
|
108
|
+
CustomSectionComponent,
|
|
109
|
+
FormSectionSeparatorComponent,
|
|
110
|
+
FormlyActionComponent,
|
|
111
|
+
FormlyCheckboxComponent,
|
|
112
|
+
FormlyDictionaryDropdownTreeComponent,
|
|
113
|
+
FormlyDownloadDocumentsComponent,
|
|
114
|
+
FormlyViewDocumentsComponent,
|
|
115
|
+
FormlyFieldStepperComponent,
|
|
116
|
+
FormlyGenerateDocumentsComponent,
|
|
117
|
+
FormlyFieldIdentificationComponent,
|
|
118
|
+
FormlyParagraphComponent,
|
|
119
|
+
FormlyRadioComponent,
|
|
120
|
+
RowFillerComponent,
|
|
121
|
+
FormlyScanIdComponent,
|
|
122
|
+
FormlySignComponent,
|
|
123
|
+
FormlyUploadDocumentsComponent,
|
|
124
|
+
FormlyValidateContactInfoComponent,
|
|
125
|
+
FormlyViewOffersComponent,
|
|
126
|
+
FormlyOpenBankingComponent,
|
|
127
|
+
PickerComponent,
|
|
128
|
+
AppTreeviewComponent,
|
|
129
|
+
DictionariesTreeComponent,
|
|
130
|
+
ConfirmationComponent,
|
|
131
|
+
GridComponent,
|
|
132
|
+
CollectorFormComponent,
|
|
133
|
+
FormlyEnrolCardComponent,
|
|
134
|
+
ExternalLinkDirective], imports: [CommonModule,
|
|
135
|
+
ReactiveFormsModule,
|
|
136
|
+
FormsModule,
|
|
137
|
+
NgScrollbarModule,
|
|
138
|
+
SignLibModule,
|
|
139
|
+
PdfViewerModule, i2.MarkdownModule, i3.RouterModule, TranslateModule,
|
|
140
|
+
MatInputModule,
|
|
141
|
+
MatFormFieldModule,
|
|
142
|
+
MatAutocompleteModule,
|
|
143
|
+
MatCheckboxModule,
|
|
144
|
+
MatDatepickerModule,
|
|
145
|
+
MatNativeDateModule,
|
|
146
|
+
MatFormFieldModule,
|
|
147
|
+
MatInputModule,
|
|
148
|
+
MatRadioModule,
|
|
149
|
+
MatSelectModule,
|
|
150
|
+
MatSliderModule,
|
|
151
|
+
MatSlideToggleModule,
|
|
152
|
+
MatMenuModule,
|
|
153
|
+
MatSidenavModule,
|
|
154
|
+
MatToolbarModule,
|
|
155
|
+
MatCardModule,
|
|
156
|
+
MatDividerModule,
|
|
157
|
+
MatExpansionModule,
|
|
158
|
+
MatGridListModule,
|
|
159
|
+
MatListModule,
|
|
160
|
+
MatStepperModule,
|
|
161
|
+
MatTabsModule,
|
|
162
|
+
MatTreeModule,
|
|
163
|
+
MatButtonModule,
|
|
164
|
+
MatButtonToggleModule,
|
|
165
|
+
MatBadgeModule,
|
|
166
|
+
MatChipsModule,
|
|
167
|
+
MatIconModule,
|
|
168
|
+
MatProgressSpinnerModule,
|
|
169
|
+
MatProgressBarModule,
|
|
170
|
+
MatRippleModule,
|
|
171
|
+
MatBottomSheetModule,
|
|
172
|
+
MatDialogModule,
|
|
173
|
+
MatSnackBarModule,
|
|
174
|
+
MatTooltipModule,
|
|
175
|
+
MatPaginatorModule,
|
|
176
|
+
MatSortModule,
|
|
177
|
+
MatTableModule, i4.FormlyModule, FormlyMaterialModule,
|
|
178
|
+
FormlyMatTextAreaModule,
|
|
179
|
+
FormlyMatDatepickerModule], exports: [CollectorFormComponent] }); }
|
|
180
|
+
static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: OriginFormModule, providers: [OriginFormService,
|
|
181
|
+
DictionaryService,
|
|
182
|
+
FormsService,
|
|
183
|
+
OtpService,
|
|
184
|
+
ApplicationDataService,
|
|
185
|
+
DialogService,
|
|
186
|
+
LabelService,
|
|
187
|
+
ProxyService,
|
|
188
|
+
TranslationService,
|
|
189
|
+
TranslatePipe,
|
|
190
|
+
provideHttpClient(withInterceptorsFromDi()),
|
|
191
|
+
{
|
|
192
|
+
provide: HTTP_INTERCEPTORS,
|
|
193
|
+
useClass: OriginFormTokenInterceptor,
|
|
194
|
+
multi: true,
|
|
195
|
+
},
|
|
196
|
+
], imports: [CommonModule,
|
|
197
|
+
ReactiveFormsModule,
|
|
198
|
+
FormsModule,
|
|
199
|
+
NgScrollbarModule,
|
|
200
|
+
SignLibModule,
|
|
201
|
+
PdfViewerModule,
|
|
202
|
+
MarkdownModule.forRoot({
|
|
203
|
+
markedOptions: {
|
|
204
|
+
provide: 'MARKED_OPTIONS',
|
|
205
|
+
useValue: {
|
|
206
|
+
gfm: true,
|
|
207
|
+
breaks: false,
|
|
208
|
+
pedantic: false,
|
|
209
|
+
smartLists: true,
|
|
210
|
+
smartypants: false,
|
|
211
|
+
},
|
|
212
|
+
},
|
|
213
|
+
}),
|
|
214
|
+
RouterModule.forRoot([]),
|
|
215
|
+
TranslateModule,
|
|
216
|
+
MatInputModule,
|
|
217
|
+
MatFormFieldModule,
|
|
218
|
+
MatAutocompleteModule,
|
|
219
|
+
MatCheckboxModule,
|
|
220
|
+
MatDatepickerModule,
|
|
221
|
+
MatNativeDateModule,
|
|
222
|
+
MatFormFieldModule,
|
|
223
|
+
MatInputModule,
|
|
224
|
+
MatRadioModule,
|
|
225
|
+
MatSelectModule,
|
|
226
|
+
MatSliderModule,
|
|
227
|
+
MatSlideToggleModule,
|
|
228
|
+
MatMenuModule,
|
|
229
|
+
MatSidenavModule,
|
|
230
|
+
MatToolbarModule,
|
|
231
|
+
MatCardModule,
|
|
232
|
+
MatDividerModule,
|
|
233
|
+
MatExpansionModule,
|
|
234
|
+
MatGridListModule,
|
|
235
|
+
MatListModule,
|
|
236
|
+
MatStepperModule,
|
|
237
|
+
MatTabsModule,
|
|
238
|
+
MatTreeModule,
|
|
239
|
+
MatButtonModule,
|
|
240
|
+
MatButtonToggleModule,
|
|
241
|
+
MatBadgeModule,
|
|
242
|
+
MatChipsModule,
|
|
243
|
+
MatIconModule,
|
|
244
|
+
MatProgressSpinnerModule,
|
|
245
|
+
MatProgressBarModule,
|
|
246
|
+
MatRippleModule,
|
|
247
|
+
MatBottomSheetModule,
|
|
248
|
+
MatDialogModule,
|
|
249
|
+
MatSnackBarModule,
|
|
250
|
+
MatTooltipModule,
|
|
251
|
+
MatPaginatorModule,
|
|
252
|
+
MatSortModule,
|
|
253
|
+
MatTableModule,
|
|
254
|
+
FormlyModule.forRoot({
|
|
255
|
+
types: [
|
|
256
|
+
{ name: 'stepper', component: FormlyFieldStepperComponent },
|
|
257
|
+
{ name: 'separator', component: FormSectionSeparatorComponent },
|
|
258
|
+
{ name: 'custom-section', component: CustomSectionComponent },
|
|
259
|
+
{ name: 'row-filler', component: RowFillerComponent },
|
|
260
|
+
{
|
|
261
|
+
name: 'formly-identification-component',
|
|
262
|
+
component: FormlyFieldIdentificationComponent,
|
|
263
|
+
},
|
|
264
|
+
{ name: 'formly-sign-component', component: FormlySignComponent },
|
|
265
|
+
{
|
|
266
|
+
name: 'formly-upload-documents-component',
|
|
267
|
+
component: FormlyUploadDocumentsComponent,
|
|
268
|
+
},
|
|
269
|
+
{
|
|
270
|
+
name: 'formly-download-documents-component',
|
|
271
|
+
component: FormlyDownloadDocumentsComponent,
|
|
272
|
+
},
|
|
273
|
+
{
|
|
274
|
+
name: 'formly-view-documents-component',
|
|
275
|
+
component: FormlyViewDocumentsComponent,
|
|
276
|
+
},
|
|
277
|
+
{
|
|
278
|
+
name: 'formly-generate-documents-component',
|
|
279
|
+
component: FormlyGenerateDocumentsComponent,
|
|
280
|
+
},
|
|
281
|
+
{
|
|
282
|
+
name: 'formly-dictionary-dropdown-tree',
|
|
283
|
+
component: FormlyDictionaryDropdownTreeComponent,
|
|
284
|
+
},
|
|
285
|
+
{ name: 'formly-checkbox', component: FormlyCheckboxComponent },
|
|
286
|
+
{
|
|
287
|
+
name: 'formly-paragraph',
|
|
288
|
+
component: FormlyParagraphComponent,
|
|
289
|
+
},
|
|
290
|
+
{ name: 'formly-radio', component: FormlyRadioComponent },
|
|
291
|
+
{
|
|
292
|
+
name: 'formly-validate-contact-info',
|
|
293
|
+
component: FormlyValidateContactInfoComponent,
|
|
294
|
+
},
|
|
295
|
+
{ name: 'formly-scan-id', component: FormlyScanIdComponent },
|
|
296
|
+
{ name: 'formly-action-component', component: FormlyActionComponent },
|
|
297
|
+
{ name: 'formly-view-offers', component: FormlyViewOffersComponent },
|
|
298
|
+
{
|
|
299
|
+
name: 'formly-enrol-card-component',
|
|
300
|
+
component: FormlyEnrolCardComponent
|
|
301
|
+
},
|
|
302
|
+
{ name: 'formly-open-banking', component: FormlyOpenBankingComponent },
|
|
303
|
+
],
|
|
304
|
+
}),
|
|
305
|
+
FormlyMaterialModule,
|
|
306
|
+
FormlyMatTextAreaModule,
|
|
307
|
+
FormlyMatDatepickerModule] }); }
|
|
308
|
+
}
|
|
309
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: OriginFormModule, decorators: [{
|
|
310
|
+
type: NgModule,
|
|
311
|
+
args: [{
|
|
312
|
+
declarations: [
|
|
313
|
+
TranslatePipe,
|
|
314
|
+
CustomSectionComponent,
|
|
315
|
+
FormSectionSeparatorComponent,
|
|
316
|
+
FormlyActionComponent,
|
|
317
|
+
FormlyCheckboxComponent,
|
|
318
|
+
FormlyDictionaryDropdownTreeComponent,
|
|
319
|
+
FormlyDownloadDocumentsComponent,
|
|
320
|
+
FormlyViewDocumentsComponent,
|
|
321
|
+
FormlyFieldStepperComponent,
|
|
322
|
+
FormlyGenerateDocumentsComponent,
|
|
323
|
+
FormlyFieldIdentificationComponent,
|
|
324
|
+
FormlyParagraphComponent,
|
|
325
|
+
FormlyRadioComponent,
|
|
326
|
+
RowFillerComponent,
|
|
327
|
+
FormlyScanIdComponent,
|
|
328
|
+
FormlySignComponent,
|
|
329
|
+
FormlyUploadDocumentsComponent,
|
|
330
|
+
FormlyValidateContactInfoComponent,
|
|
331
|
+
FormlyViewOffersComponent,
|
|
332
|
+
FormlyOpenBankingComponent,
|
|
333
|
+
PickerComponent,
|
|
334
|
+
AppTreeviewComponent,
|
|
335
|
+
DictionariesTreeComponent,
|
|
336
|
+
ConfirmationComponent,
|
|
337
|
+
GridComponent,
|
|
338
|
+
CollectorFormComponent,
|
|
339
|
+
FormlyEnrolCardComponent,
|
|
340
|
+
ExternalLinkDirective
|
|
341
|
+
],
|
|
342
|
+
imports: [
|
|
343
|
+
CommonModule,
|
|
344
|
+
ReactiveFormsModule,
|
|
345
|
+
FormsModule,
|
|
346
|
+
NgScrollbarModule,
|
|
347
|
+
SignLibModule,
|
|
348
|
+
PdfViewerModule,
|
|
349
|
+
MarkdownModule.forRoot({
|
|
350
|
+
markedOptions: {
|
|
351
|
+
provide: 'MARKED_OPTIONS',
|
|
352
|
+
useValue: {
|
|
353
|
+
gfm: true,
|
|
354
|
+
breaks: false,
|
|
355
|
+
pedantic: false,
|
|
356
|
+
smartLists: true,
|
|
357
|
+
smartypants: false,
|
|
358
|
+
},
|
|
359
|
+
},
|
|
360
|
+
}),
|
|
361
|
+
RouterModule.forRoot([]),
|
|
362
|
+
TranslateModule,
|
|
363
|
+
MatInputModule,
|
|
364
|
+
MatFormFieldModule,
|
|
365
|
+
MatAutocompleteModule,
|
|
366
|
+
MatCheckboxModule,
|
|
367
|
+
MatDatepickerModule,
|
|
368
|
+
MatNativeDateModule,
|
|
369
|
+
MatFormFieldModule,
|
|
370
|
+
MatInputModule,
|
|
371
|
+
MatRadioModule,
|
|
372
|
+
MatSelectModule,
|
|
373
|
+
MatSliderModule,
|
|
374
|
+
MatSlideToggleModule,
|
|
375
|
+
MatMenuModule,
|
|
376
|
+
MatSidenavModule,
|
|
377
|
+
MatToolbarModule,
|
|
378
|
+
MatCardModule,
|
|
379
|
+
MatDividerModule,
|
|
380
|
+
MatExpansionModule,
|
|
381
|
+
MatGridListModule,
|
|
382
|
+
MatListModule,
|
|
383
|
+
MatStepperModule,
|
|
384
|
+
MatTabsModule,
|
|
385
|
+
MatTreeModule,
|
|
386
|
+
MatButtonModule,
|
|
387
|
+
MatButtonToggleModule,
|
|
388
|
+
MatBadgeModule,
|
|
389
|
+
MatChipsModule,
|
|
390
|
+
MatIconModule,
|
|
391
|
+
MatProgressSpinnerModule,
|
|
392
|
+
MatProgressBarModule,
|
|
393
|
+
MatRippleModule,
|
|
394
|
+
MatBottomSheetModule,
|
|
395
|
+
MatDialogModule,
|
|
396
|
+
MatSnackBarModule,
|
|
397
|
+
MatTooltipModule,
|
|
398
|
+
MatPaginatorModule,
|
|
399
|
+
MatSortModule,
|
|
400
|
+
MatTableModule,
|
|
401
|
+
FormlyModule.forRoot({
|
|
402
|
+
types: [
|
|
403
|
+
{ name: 'stepper', component: FormlyFieldStepperComponent },
|
|
404
|
+
{ name: 'separator', component: FormSectionSeparatorComponent },
|
|
405
|
+
{ name: 'custom-section', component: CustomSectionComponent },
|
|
406
|
+
{ name: 'row-filler', component: RowFillerComponent },
|
|
407
|
+
{
|
|
408
|
+
name: 'formly-identification-component',
|
|
409
|
+
component: FormlyFieldIdentificationComponent,
|
|
410
|
+
},
|
|
411
|
+
{ name: 'formly-sign-component', component: FormlySignComponent },
|
|
412
|
+
{
|
|
413
|
+
name: 'formly-upload-documents-component',
|
|
414
|
+
component: FormlyUploadDocumentsComponent,
|
|
415
|
+
},
|
|
416
|
+
{
|
|
417
|
+
name: 'formly-download-documents-component',
|
|
418
|
+
component: FormlyDownloadDocumentsComponent,
|
|
419
|
+
},
|
|
420
|
+
{
|
|
421
|
+
name: 'formly-view-documents-component',
|
|
422
|
+
component: FormlyViewDocumentsComponent,
|
|
423
|
+
},
|
|
424
|
+
{
|
|
425
|
+
name: 'formly-generate-documents-component',
|
|
426
|
+
component: FormlyGenerateDocumentsComponent,
|
|
427
|
+
},
|
|
428
|
+
{
|
|
429
|
+
name: 'formly-dictionary-dropdown-tree',
|
|
430
|
+
component: FormlyDictionaryDropdownTreeComponent,
|
|
431
|
+
},
|
|
432
|
+
{ name: 'formly-checkbox', component: FormlyCheckboxComponent },
|
|
433
|
+
{
|
|
434
|
+
name: 'formly-paragraph',
|
|
435
|
+
component: FormlyParagraphComponent,
|
|
436
|
+
},
|
|
437
|
+
{ name: 'formly-radio', component: FormlyRadioComponent },
|
|
438
|
+
{
|
|
439
|
+
name: 'formly-validate-contact-info',
|
|
440
|
+
component: FormlyValidateContactInfoComponent,
|
|
441
|
+
},
|
|
442
|
+
{ name: 'formly-scan-id', component: FormlyScanIdComponent },
|
|
443
|
+
{ name: 'formly-action-component', component: FormlyActionComponent },
|
|
444
|
+
{ name: 'formly-view-offers', component: FormlyViewOffersComponent },
|
|
445
|
+
{
|
|
446
|
+
name: 'formly-enrol-card-component',
|
|
447
|
+
component: FormlyEnrolCardComponent
|
|
448
|
+
},
|
|
449
|
+
{ name: 'formly-open-banking', component: FormlyOpenBankingComponent },
|
|
450
|
+
],
|
|
451
|
+
}),
|
|
452
|
+
FormlyMaterialModule,
|
|
453
|
+
FormlyMatTextAreaModule,
|
|
454
|
+
FormlyMatDatepickerModule,
|
|
455
|
+
],
|
|
456
|
+
schemas: [CUSTOM_ELEMENTS_SCHEMA],
|
|
457
|
+
exports: [
|
|
458
|
+
CollectorFormComponent
|
|
459
|
+
],
|
|
460
|
+
providers: [OriginFormService,
|
|
461
|
+
DictionaryService,
|
|
462
|
+
FormsService,
|
|
463
|
+
OtpService,
|
|
464
|
+
ApplicationDataService,
|
|
465
|
+
DialogService,
|
|
466
|
+
LabelService,
|
|
467
|
+
ProxyService,
|
|
468
|
+
TranslationService,
|
|
469
|
+
TranslatePipe,
|
|
470
|
+
provideHttpClient(withInterceptorsFromDi()),
|
|
471
|
+
{
|
|
472
|
+
provide: HTTP_INTERCEPTORS,
|
|
473
|
+
useClass: OriginFormTokenInterceptor,
|
|
474
|
+
multi: true,
|
|
475
|
+
},
|
|
476
|
+
]
|
|
477
|
+
}]
|
|
478
|
+
}], ctorParameters: () => [{ type: i1.ThemeInjectorService }] });
|
|
479
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoib3JpZ2luLWZvcm0ubW9kdWxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vcHJvamVjdHMvb3JpZ2luLWZvcm0vc3JjL2xpYi9vcmlnaW4tZm9ybS5tb2R1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLHNCQUFzQixFQUFFLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNqRSxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDL0MsT0FBTyxFQUFFLHNCQUFzQixFQUFFLE1BQU0sNkNBQTZDLENBQUM7QUFDckYsT0FBTyxFQUFFLDZCQUE2QixFQUFFLE1BQU0sMkNBQTJDLENBQUM7QUFDMUYsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFDL0QsT0FBTyxFQUFFLHVCQUF1QixFQUFFLE1BQU0sb0RBQW9ELENBQUM7QUFDN0YsT0FBTyxFQUFFLHFDQUFxQyxFQUFFLE1BQU0sb0ZBQW9GLENBQUM7QUFDM0ksT0FBTyxFQUFFLGdDQUFnQyxFQUFFLE1BQU0sd0VBQXdFLENBQUM7QUFDMUgsT0FBTyxFQUFFLDJCQUEyQixFQUFFLE1BQU0sOERBQThELENBQUM7QUFDM0csT0FBTyxFQUFFLGdDQUFnQyxFQUFFLE1BQU0sd0VBQXdFLENBQUM7QUFDMUgsT0FBTyxFQUFFLGtDQUFrQyxFQUFFLE1BQU0sMENBQTBDLENBQUM7QUFDOUYsT0FBTyxFQUFFLHdCQUF3QixFQUFFLE1BQU0sc0RBQXNELENBQUM7QUFDaEcsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sOENBQThDLENBQUM7QUFDcEYsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sMkJBQTJCLENBQUM7QUFDL0QsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sa0RBQWtELENBQUM7QUFDekYsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sNENBQTRDLENBQUM7QUFDakYsT0FBTyxFQUFF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b0NBQ25DLFNBQVMsRUFBRSx3QkFBd0I7aUNBQ3BDO2dDQUNELEVBQUUsSUFBSSxFQUFFLHFCQUFxQixFQUFFLFNBQVMsRUFBRSwwQkFBMEIsRUFBRTs2QkFDdkU7eUJBQ0YsQ0FBQzt3QkFDSixvQkFBb0I7d0JBQ3BCLHVCQUF1Qjt3QkFDdkIseUJBQXlCO3FCQUM1QjtvQkFDQyxPQUFPLEVBQUUsQ0FBQyxzQkFBc0IsQ0FBQztvQkFFbkMsT0FBTyxFQUFFO3dCQUNQLHNCQUFzQjtxQkFDdkI7b0JBQ0QsU0FBUyxFQUFFLENBQUMsaUJBQWlCO3dCQUMzQixpQkFBaUI7d0JBQ2pCLFlBQVk7d0JBQ1osVUFBVTt3QkFDVixzQkFBc0I7d0JBQ3RCLGFBQWE7d0JBQ2IsWUFBWTt3QkFDWixZQUFZO3dCQUNaLGtCQUFrQjt3QkFDbEIsYUFBYTt3QkFDYixpQkFBaUIsQ0FBQyxzQkFBc0IsRUFBRSxDQUFDO3dCQUMzQzs0QkFDRSxPQUFPLEVBQUUsaUJBQWlCOzRCQUMxQixRQUFRLEVBQUUsMEJBQTBCOzRCQUNwQyxLQUFLLEVBQUUsSUFBSTt5QkFDWjtxQkFDRjtpQkFDRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENVU1RPTV9FTEVNRU5UU19TQ0hFTUEsIE5nTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHsgQ3VzdG9tU2VjdGlvbkNvbXBvbmVudCB9IGZyb20gJy4vZm9ybWx5L2N1c3RvbS1zZWN0aW9uLXNlcGFyYXRvci5jb21wb25lbnQnO1xuaW1wb3J0IHsgRm9ybVNlY3Rpb25TZXBhcmF0b3JDb21wb25lbnQgfSBmcm9tICcuL2Zvcm1seS9mb3JtLXNlY3Rpb24tc2VwYXJhdG9yLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBGb3JtbHlBY3Rpb25Db21wb25lbnQgfSBmcm9tICcuL2Zvcm1seS9mb3JtbHktYWN0aW9uJztcbmltcG9ydCB7IEZvcm1seUNoZWNrYm94Q29tcG9uZW50IH0gZnJvbSAnLi9mb3JtbHkvZm9ybWx5LWNoZWNrYm94L2Zvcm1seS1jaGVja2JveC5jb21wb25lbnQnO1xuaW1wb3J0IHsgRm9ybWx5RGljdGlvbmFyeURyb3Bkb3duVHJlZUNvbXBvbmVudCB9IGZyb20gJy4vZm9ybWx5L2Zvcm1seS1kaWN0aW9uYXJ5LWRyb3Bkb3duLXRyZWUvZm9ybWx5LWRpY3Rpb25hcnktZHJvcGRvd24tdHJlZS5jb21wb25lbnQnO1xuaW1wb3J0IHsgRm9ybWx5RG93bmxvYWREb2N1bWVudHNDb21wb25lbnQgfSBmcm9tICcuL2Zvcm1seS9mb3JtbHktZG93bmxvYWQtZG9jdW1lbnRzL2Zvcm1seS1kb3dubG9hZC1kb2N1bWVudHMuY29tcG9uZW50JztcbmltcG9ydCB7IEZvcm1seUZpZWxkU3RlcHBlckNvbXBvbmVudCB9IGZyb20gJy4vZm9ybWx5L2Zvcm1seS1maWVsZC1zdGVwcGVyL2Zvcm1seS1maWVsZC1zdGVwcGVyLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBGb3JtbHlHZW5lcmF0ZURvY3VtZW50c0NvbXBvbmVudCB9IGZyb20gJy4vZm9ybWx5L2Zvcm1seS1nZW5lcmF0ZS1kb2N1bWVudHMvZm9ybWx5LWdlbmVyYXRlLWRvY3VtZW50cy5jb21wb25lbnQnO1xuaW1wb3J0IHsgRm9ybWx5RmllbGRJZGVudGlmaWNhdGlvbkNvbXBvbmVudCB9IGZyb20gJy4vZm9ybWx5L2Zvcm1seS1pZGVudGlmaWNhdGlvbi5jb21wb25lbnQnO1xuaW1wb3J0IHsgRm9ybWx5UGFyYWdyYXBoQ29tcG9uZW50IH0gZnJvbSAnLi9mb3JtbHkvZm9ybWx5LXBhcmFncmFwaC9mb3JtbHktcGFyYWdyYXBoLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBGb3JtbHlSYWRpb0NvbXBvbmVudCB9IGZyb20gJy4vZm9ybWx5L2Zvcm1seS1yYWRpby9mb3JtbHktcmFkaW8tY29tcG9uZW50JztcbmltcG9ydCB7IFJvd0ZpbGxlckNvbXBvbmVudCB9IGZyb20gJy4vZm9ybWx5L2Zvcm1seS1yb3ctZmlsbGUnO1xuaW1wb3J0IHsgRm9ybWx5U2NhbklkQ29tcG9uZW50IH0gZnJvbSAnLi9mb3JtbHkvZm9ybWx5LXNjYW4taWQvZm9ybWx5LXNjYW4taWQuY29tcG9uZW50JztcbmltcG9ydCB7IEZvcm1seVNpZ25Db21wb25lbnQgfSBmcm9tICcuL2Zvcm1seS9mb3JtbHktc2lnbi9mb3JtbHktc2lnbi5jb21wb25lbnQnO1xuaW1wb3J0IHsgRm9ybWx5VXBsb2FkRG9jdW1lbnRzQ29tcG9uZW50IH0gZnJvbSAnLi9mb3JtbHkvZm9ybWx5LXVwbG9hZC1kb2N1bWVudHMvZm9ybWx5LXVwbG9hZC1kb2N1bWVudHMuY29tcG9uZW50JztcbmltcG9ydCB7IEZvcm1seVZhbGlkYXRlQ29udGFjdEluZm9Db21wb25lbnQgfSBmcm9tICcuL2Zvcm1seS9mb3JtbHktdmFsaWRhdGUtY29udGFjdC1pbmZvL2Zvcm1seS12YWxpZGF0ZS1jb250YWN0LWluZm8uY29tcG9uZW50JztcbmltcG9ydCB7IEZvcm1seVZpZXdPZmZlcnNDb21wb25lbnQgfSBmcm9tICcuL2Zvcm1seS9mb3JtbHktdmlldy1vZmZlcnMvZm9ybWx5LXZpZXctb2ZmZXJzLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBDb2xsZWN0b3JGb3JtQ29tcG9uZW50IH0gZnJvbSAnLi9vcmlnaW4tZm9ybS5jb21wb25lbnQnO1xuaW1wb3J0IHsgT3JpZ2luRm9ybVNlcnZpY2UgfSBmcm9tICcuL29yaWdpbi1mb3JtLnNlcnZpY2UnO1xuaW1wb3J0IHsgUGlja2VyQ29tcG9uZW50IH0gZnJvbSAnLi9vdGhlcnMvcGlja2VyLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBBcHBsaWNhdGlvbkRhdGFTZXJ2aWNlIH0gZnJvbSAnLi9zZXJ2aWNlcy9hcHBsaWNhdGlvbkRhdGEuc2VydmljZSc7XG5pbXBvcnQgeyBEaWFsb2dTZXJ2aWNlIH0gZnJvbSAnLi9zZXJ2aWNlcy9kaWFsb2cuc2VydmljZSc7XG5pbXBvcnQgeyBMYWJlbFNlcnZpY2UgfSBmcm9tICcuL3NlcnZpY2VzL2xhYmVscy5zZXJ2aWNlJztcbmltcG9ydCB7IFByb3h5U2VydmljZSB9IGZyb20gJy4vc2VydmljZXMvcHJveHkuc2VydmljZSc7XG5pbXBvcnQgeyBEaWN0aW9uYXJpZXNUcmVlQ29tcG9uZW50IH0gZnJvbSAnLi9zaGFyZWQtY29tcG9uZW50cy9kaWN0aW9uYXJpZXMtdHJlZS5jb21wb25lbnQnO1xuaW1wb3J0IHsgR3JpZENvbXBvbmVudCB9IGZyb20gJy4vc2hhcmVkLWNvbXBvbmVudHMvZ3JpZC5jb21wb25lbnQnO1xuaW1wb3J0IHsgUmVhY3RpdmVGb3Jtc01vZHVsZSwgRm9ybXNNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5pbXBvcnQgeyBGb3JtbHlNb2R1bGUgfSBmcm9tICdAbmd4LWZvcm1seS9jb3JlJztcbmltcG9ydCB7IFNpZ25MaWJNb2R1bGUgfSBmcm9tICdzaWduLWxpYic7XG5pbXBvcnQgeyBGb3JtbHlNYXRlcmlhbE1vZHVsZSB9IGZyb20gJ0BuZ3gtZm9ybWx5L21hdGVyaWFsJztcbmltcG9ydCB7IEZvcm1seU1hdERhdGVwaWNrZXJNb2R1bGUgfSBmcm9tICdAbmd4LWZvcm1seS9tYXRlcmlhbC9kYXRlcGlja2VyJztcbmltcG9ydCB7IEZvcm1seU1hdFRleHRBcmVhTW9kdWxlIH0gZnJvbSAnQG5neC1mb3JtbHkvbWF0ZXJpYWwvdGV4dGFyZWEnO1xuaW1wb3J0IHsgVHJhbnNsYXRlTW9kdWxlIH0gZnJvbSAnQG5neC10cmFuc2xhdGUvY29yZSc7XG4vLyBNYXRlcmlhbCBGb3JtIENvbnRyb2xzXG5pbXBvcnQgeyBNYXRBdXRvY29tcGxldGVNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9hdXRvY29tcGxldGUnO1xuaW1wb3J0IHsgTWF0Q2hlY2tib3hNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9jaGVja2JveCc7XG5pbXBvcnQgeyBNYXREYXRlcGlja2VyTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvZGF0ZXBpY2tlcic7XG5pbXBvcnQgeyBNYXRGb3JtRmllbGRNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9mb3JtLWZpZWxkJztcbmltcG9ydCB7IE1hdElucHV0TW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvaW5wdXQnO1xuaW1wb3J0IHsgTWF0UmFkaW9Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9yYWRpbyc7XG5pbXBvcnQgeyBNYXRTZWxlY3RNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9zZWxlY3QnO1xuaW1wb3J0IHsgTWF0U2xpZGVyTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvc2xpZGVyJztcbmltcG9ydCB7IE1hdFNsaWRlVG9nZ2xlTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvc2xpZGUtdG9nZ2xlJztcbi8vIE1hdGVyaWFsIE5hdmlnYXRpb25cbmltcG9ydCB7IE1hdE1lbnVNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9tZW51JztcbmltcG9ydCB7IE1hdFNpZGVuYXZNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9zaWRlbmF2JztcbmltcG9ydCB7IE1hdFRvb2xiYXJNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC90b29sYmFyJztcbi8vIE1hdGVyaWFsIExheW91dFxuaW1wb3J0IHsgTWF0Q2FyZE1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2NhcmQnO1xuaW1wb3J0IHsgTWF0RGl2aWRlck1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2RpdmlkZXInO1xuaW1wb3J0IHsgTWF0RXhwYW5zaW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvZXhwYW5zaW9uJztcbmltcG9ydCB7IE1hdEdyaWRMaXN0TW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvZ3JpZC1saXN0JztcbmltcG9ydCB7IE1hdExpc3RNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9saXN0JztcbmltcG9ydCB7IE1hdFN0ZXBwZXJNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9zdGVwcGVyJztcbmltcG9ydCB7IE1hdFRhYnNNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC90YWJzJztcbmltcG9ydCB7IE1hdFRyZWVNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC90cmVlJztcbi8vIE1hdGVyaWFsIEJ1dHRvbnMgJiBJbmRpY2F0b3JzXG5pbXBvcnQgeyBNYXRCdXR0b25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9idXR0b24nO1xuaW1wb3J0IHsgTWF0QnV0dG9uVG9nZ2xlTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvYnV0dG9uLXRvZ2dsZSc7XG5pbXBvcnQgeyBNYXRCYWRnZU1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2JhZGdlJztcbmltcG9ydCB7IE1hdENoaXBzTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvY2hpcHMnO1xuaW1wb3J0IHsgTWF0SWNvbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2ljb24nO1xuaW1wb3J0IHsgTWF0UHJvZ3Jlc3NTcGlubmVyTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvcHJvZ3Jlc3Mtc3Bpbm5lcic7XG5pbXBvcnQgeyBNYXRQcm9ncmVzc0Jhck1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL3Byb2dyZXNzLWJhcic7XG5pbXBvcnQgeyBNYXROYXRpdmVEYXRlTW9kdWxlLCBNYXRSaXBwbGVNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9jb3JlJztcbi8vIE1hdGVyaWFsIFBvcHVwcyAmIE1vZGFsc1xuaW1wb3J0IHsgTWF0Qm90dG9tU2hlZXRNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9ib3R0b20tc2hlZXQnO1xuaW1wb3J0IHsgTWF0RGlhbG9nTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvZGlhbG9nJztcbmltcG9ydCB7IE1hdFNuYWNrQmFyTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvc25hY2stYmFyJztcbmltcG9ydCB7IE1hdFRvb2x0aXBNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC90b29sdGlwJztcbi8vIE1hdGVyaWFsIERhdGEgdGFibGVzXG5pbXBvcnQgeyBNYXRQYWdpbmF0b3JNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9wYWdpbmF0b3InO1xuaW1wb3J0IHsgTWF0U29ydE1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL3NvcnQnO1xuaW1wb3J0IHsgTWF0VGFibGVNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC90YWJsZSc7XG5pbXBvcnQgeyBOZ1Njcm9sbGJhck1vZHVsZSB9IGZyb20gJ25neC1zY3JvbGxiYXInO1xuaW1wb3J0IHsgTWFya2Rvd25Nb2R1bGUgfSBmcm9tICduZ3gtbWFya2Rvd24nO1xuaW1wb3J0IHsgQXBwVHJlZXZpZXdDb21wb25lbnQgfSBmcm9tICcuL3NoYXJlZC1jb21wb25lbnRzL3RyZWV2aWV3L3RyZWV2aWV3LmNvbXBvbmVudCc7XG5pbXBvcnQge1xuICBIVFRQX0lOVEVSQ0VQVE9SUyxcbiAgcHJvdmlkZUh0dHBDbGllbnQsXG4gIHdpdGhJbnRlcmNlcHRvcnNGcm9tRGksXG59IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbi9odHRwJztcbmltcG9ydCB7IE9yaWdpbkZvcm1Ub2tlbkludGVyY2VwdG9yIH0gZnJvbSAnLi9vcmlnaW4tZm9ybS10b2tlbi5pbnRlcmNlcHRvcic7XG5pbXBvcnQgeyBEaWN0aW9uYXJ5U2VydmljZSB9IGZyb20gJy4vc2VydmljZXMvZGljdGlvbmFyeS5zZXJ2aWNlJztcbmltcG9ydCB7IEZvcm1zU2VydmljZSB9IGZyb20gJy4vc2VydmljZXMvZm9ybXMuc2VydmljZSc7XG5pbXBvcnQgeyBPdHBTZXJ2aWNlIH0gZnJvbSAnLi9zZXJ2aWNlcy9vdHAuc2VydmljZSc7XG5pbXBvcnQge1xuICBkZWZpbmVDdXN0b21FbGVtZW50cyxcbn0gZnJvbSAnQGVreWNfcW9vYmlzcy9xYnMtZWN0LWNtcC9kaXN0L2xvYWRlcic7XG5pbXBvcnQgeyBUaGVtZUluamVjdG9yU2VydmljZSB9IGZyb20gJy4vdGhlbWUtaW5qZWN0b3Iuc2VydmljZSc7XG5pbXBvcnQgeyBSb3V0ZXJNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9yb3V0ZXInO1xuLy9FbnJvbCBjYXJkXG5pbXBvcnQgeyBGb3JtbHlFbnJvbENhcmRDb21wb25lbnQgfSBmcm9tICcuL2Zvcm1seS9mb3JtbHktZW5yb2wtY2FyZC9mb3JtbHktZW5yb2wtY2FyZC5jb21wb25lbnQnO1xuaW1wb3J0IHsgRm9ybWx5Vmlld0RvY3VtZW50c0NvbXBvbmVudCB9IGZyb20gJy4vZm9ybWx5L2Zvcm1seS12aWV3LWRvY3VtZW50cy9mb3JtbHktdmlldy1kb2N1bWVudHMuY29tcG9uZW50JztcbmltcG9ydCB7IFBkZlZpZXdlck1vZHVsZSB9IGZyb20gJ25nMi1wZGYtdmlld2VyJztcbmltcG9ydCB7IFRyYW5zbGF0aW9uU2VydmljZSB9IGZyb20gJy4vc2VydmljZXMvdHJhbnNsYXRpb24uc2VydmljZSc7XG5pbXBvcnQgeyBUcmFuc2xhdGVQaXBlIH0gZnJvbSAnLi9vdGhlcnMvdHJhbnNsYXRpb24ucGlwZSc7XG5pbXBvcnQgeyBFeHRlcm5hbExpbmtEaXJlY3RpdmUgfSBmcm9tICcuL290aGVycy9leHRlcm5hbC1saW5rLmRpcmVjdGl2ZSc7XG5pbXBvcnQgeyBDb25maXJtYXRpb25Db21wb25lbnQgfSBmcm9tICcuL3NoYXJlZC1jb21wb25lbnRzL2NvbmZpcm1hdGlvbi5jb21wb25lbnQnO1xuaW1wb3J0IHsgRm9ybWx5T3BlbkJhbmtpbmdDb21wb25lbnQgfSBmcm9tICcuL2Zvcm1seS9mb3JtbHktb3Blbi1iYW5raW5nL2Zvcm1seS1vcGVuLWJhbmtpbmcuY29tcG9uZW50JztcblxuXG4gIGRlZmluZUN1c3RvbUVsZW1lbnRzKHdpbmRvdyk7XG5cbiAgQE5nTW9kdWxlKHtcbiAgICBkZWNsYXJhdGlvbnM6IFtcbiAgICAgIFRyYW5zbGF0ZVBpcGUsXG4gICAgICBDdXN0b21TZWN0aW9uQ29tcG9uZW50LFxuICAgICAgRm9ybVNlY3Rpb25TZXBhcmF0b3JDb21wb25lbnQsXG4gICAgICBGb3JtbHlBY3Rpb25Db21wb25lbnQsXG4gICAgICBGb3JtbHlDaGVja2JveENvbXBvbmVudCxcbiAgICAgIEZvcm1seURpY3Rpb25hcnlEcm9wZG93blRyZWVDb21wb25lbnQsXG4gICAgICBGb3JtbHlEb3dubG9hZERvY3VtZW50c0NvbXBvbmVudCxcbiAgICAgIEZvcm1seVZpZXdEb2N1bWVudHNDb21wb25lbnQsXG4gICAgICBGb3JtbHlGaWVsZFN0ZXBwZXJDb21wb25lbnQsXG4gICAgICBGb3JtbHlHZW5lcmF0ZURvY3VtZW50c0NvbXBvbmVudCxcbiAgICAgIEZvcm1seUZpZWxkSWRlbnRpZmljYXRpb25Db21wb25lbnQsXG4gICAgICBGb3JtbHlQYXJhZ3JhcGhDb21wb25lbnQsXG4gICAgICBGb3JtbHlSYWRpb0NvbXBvbmVudCxcbiAgICAgIFJvd0ZpbGxlckNvbXBvbmVudCxcbiAgICAgIEZvcm1seVNjYW5JZENvbXBvbmVudCxcbiAgICAgIEZvcm1seVNpZ25Db21wb25lbnQsXG4gICAgICBGb3JtbHlVcGxvYWREb2N1bWVudHNDb21wb25lbnQsXG4gICAgICBGb3JtbHlWYWxpZGF0ZUNvbnRhY3RJbmZvQ29tcG9uZW50LFxuICAgICAgRm9ybWx5Vmlld09mZmVyc0NvbXBvbmVudCxcbiAgICAgIEZvcm1seU9wZW5CYW5raW5nQ29tcG9uZW50LFxuICAgICAgUGlja2VyQ29tcG9uZW50LFxuICAgICAgXG4gICAgICBBcHBUcmVldmlld0NvbXBvbmVudCxcbiAgICAgIERpY3Rpb25hcmllc1RyZWVDb21wb25lbnQsXG4gICAgICBDb25maXJtYXRpb25Db21wb25lbnQsXG4gICAgICBHcmlkQ29tcG9uZW50LFxuICAgICAgQ29sbGVjdG9yRm9ybUNvbXBvbmVudCxcbiAgICAgIEZvcm1seUVucm9sQ2FyZENvbXBvbmVudCxcbiAgICAgIEV4dGVybmFsTGlua0RpcmVjdGl2ZVxuICAgIF0sXG4gICAgaW1wb3J0czogW1xuICAgICAgQ29tbW9uTW9kdWxlLFxuICAgICAgUmVhY3RpdmVGb3Jtc01vZHVsZSxcbiAgICAgIEZvcm1zTW9kdWxlLFxuICAgICAgTmdTY3JvbGxiYXJNb2R1bGUsXG4gICAgICBTaWduTGliTW9kdWxlLFxuICAgICAgUGRmVmlld2VyTW9kdWxlLFxuICAgICAgTWFya2Rvd25Nb2R1bGUuZm9yUm9vdCh7XG4gICAgICAgIG1hcmtlZE9wdGlvbnM6IHtcbiAgICAgICAgICBwcm92aWRlOiAnTUFSS0VEX09QVElPTlMnLFxuICAgICAgICAgIHVzZVZhbHVlOiB7XG4gICAgICAgICAgICBnZm06IHRydWUsXG4gICAgICAgICAgICBicmVha3M6IGZhbHNlLFxuICAgICAgICAgICAgcGVkYW50aWM6IGZhbHNlLFxuICAgICAgICAgICAgc21hcnRMaXN0czogdHJ1ZSxcbiAgICAgICAgICAgIHNtYXJ0eXBhbnRzOiBmYWxzZSxcbiAgICAgICAgICB9LFxuICAgICAgICB9LFxuICAgICAgfSksXG4gICAgICBSb3V0ZXJNb2R1bGUuZm9yUm9vdChbXSksXG4gICAgICBUcmFuc2xhdGVNb2R1bGUsXG4gIFxuICBcbiAgICAgIE1hdElucHV0TW9kdWxlLFxuICAgICAgTWF0Rm9ybUZpZWxkTW9kdWxlLFxuICAgICAgTWF0QXV0b2NvbXBsZXRlTW9kdWxlLFxuICAgICAgICAgIE1hdENoZWNrYm94TW9kdWxlLFxuICAgICAgICAgIE1hdERhdGVwaWNrZXJNb2R1bGUsXG4gICAgICAgICAgTWF0TmF0aXZlRGF0ZU1vZHVsZSxcbiAgICAgICAgICBNYXRGb3JtRmllbGRNb2R1bGUsXG4gICAgICAgICAgTWF0SW5wdXRNb2R1bGUsXG4gICAgICAgICAgTWF0UmFkaW9Nb2R1bGUsXG4gICAgICAgICAgTWF0U2VsZWN0TW9kdWxlLFxuICAgICAgICAgIE1hdFNsaWRlck1vZHVsZSxcbiAgICAgICAgICBNYXRTbGlkZVRvZ2dsZU1vZHVsZSxcbiAgICAgICAgICBNYXRNZW51TW9kdWxlLFxuICAgICAgICAgIE1hdFNpZGVuYXZNb2R1bGUsXG4gICAgICAgICAgTWF0VG9vbGJhck1vZHVsZSxcbiAgICAgICAgICBNYXRDYXJkTW9kdWxlLFxuICAgICAgICAgIE1hdERpdmlkZXJNb2R1bGUsXG4gICAgICAgICAgTWF0RXhwYW5zaW9uTW9kdWxlLFxuICAgICAgICAgIE1hdEdyaWRMaXN0TW9kdWxlLFxuICAgICAgICAgIE1hdExpc3RNb2R1bGUsXG4gICAgICAgICAgTWF0U3RlcHBlck1vZHVsZSxcbiAgICAgICAgICBNYXRUYWJzTW9kdWxlLFxuICAgICAgICAgIE1hdFRyZWVNb2R1bGUsXG4gICAgICAgICAgTWF0QnV0dG9uTW9kdWxlLFxuICAgICAgICAgIE1hdEJ1dHRvblRvZ2dsZU1vZHVsZSxcbiAgICAgICAgICBNYXRCYWRnZU1vZHVsZSxcbiAgICAgICAgICBNYXRDaGlwc01vZHVsZSxcbiAgICAgICAgICBNYXRJY29uTW9kdWxlLFxuICAgICAgICAgIE1hdFByb2dyZXNzU3Bpbm5lck1vZHVsZSxcbiAgICAgICAgICBNYXRQcm9ncmVzc0Jhck1vZHVsZSxcbiAgICAgICAgICBNYXRSaXBwbGVNb2R1bGUsXG4gICAgICAgICAgTWF0Qm90dG9tU2hlZXRNb2R1bGUsXG4gICAgICAgICAgTWF0RGlhbG9nTW9kdWxlLFxuICAgICAgICAgIE1hdFNuYWNrQmFyTW9kdWxlLFxuICAgICAgICAgIE1hdFRvb2x0aXBNb2R1bGUsXG4gICAgICAgICAgTWF0UGFnaW5hdG9yTW9kdWxlLFxuICAgICAgICAgIE1hdFNvcnRNb2R1bGUsXG4gICAgICAgICAgTWF0VGFibGVNb2R1bGUsXG4gICAgICAgICAgRm9ybWx5TW9kdWxlLmZvclJvb3Qoe1xuICAgICAgICAgICAgdHlwZXM6IFtcbiAgICAgICAgICAgICAgeyBuYW1lOiAnc3RlcHBlcicsIGNvbXBvbmVudDogRm9ybWx5RmllbGRTdGVwcGVyQ29tcG9uZW50IH0sXG4gICAgICAgICAgICAgIHsgbmFtZTogJ3NlcGFyYXRvcicsIGNvbXBvbmVudDogRm9ybVNlY3Rpb25TZXBhcmF0b3JDb21wb25lbnQgfSxcbiAgICAgICAgICAgICAgeyBuYW1lOiAnY3VzdG9tLXNlY3Rpb24nLCBjb21wb25lbnQ6IEN1c3RvbVNlY3Rpb25Db21wb25lbnQgfSxcbiAgICAgICAgICAgICAgeyBuYW1lOiAncm93LWZpbGxlcicsIGNvbXBvbmVudDogUm93RmlsbGVyQ29tcG9uZW50IH0sXG4gICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICBuYW1lOiAnZm9ybWx5LWlkZW50aWZpY2F0aW9uLWNvbXBvbmVudCcsXG4gICAgICAgICAgICAgICAgY29tcG9uZW50OiBGb3JtbHlGaWVsZElkZW50aWZpY2F0aW9uQ29tcG9uZW50LFxuICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICB7IG5hbWU6ICdmb3JtbHktc2lnbi1jb21wb25lbnQnLCBjb21wb25lbnQ6IEZvcm1seVNpZ25Db21wb25lbnQgfSxcbiAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgIG5hbWU6ICdmb3JtbHktdXBsb2FkLWRvY3VtZW50cy1jb21wb25lbnQnLFxuICAgICAgICAgICAgICAgIGNvbXBvbmVudDogRm9ybWx5VXBsb2FkRG9jdW1lbnRzQ29tcG9uZW50LFxuICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgbmFtZTogJ2Zvcm1seS1kb3dubG9hZC1kb2N1bWVudHMtY29tcG9uZW50JyxcbiAgICAgICAgICAgICAgICBjb21wb25lbnQ6IEZvcm1seURvd25sb2FkRG9jdW1lbnRzQ29tcG9uZW50LFxuICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgbmFtZTogJ2Zvcm1seS12aWV3LWRvY3VtZW50cy1jb21wb25lbnQnLFxuICAgICAgICAgICAgICAgIGNvbXBvbmVudDogRm9ybWx5Vmlld0RvY3VtZW50c0NvbXBvbmVudCxcbiAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgIG5hbWU6ICdmb3JtbHktZ2VuZXJhdGUtZG9jdW1lbnRzLWNvbXBvbmVudCcsXG4gICAgICAgICAgICAgICAgY29tcG9uZW50OiBGb3JtbHlHZW5lcmF0ZURvY3VtZW50c0NvbXBvbmVudCxcbiAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgIG5hbWU6ICdmb3JtbHktZGljdGlvbmFyeS1kcm9wZG93bi10cmVlJyxcbiAgICAgICAgICAgICAgICBjb21wb25lbnQ6IEZvcm1seURpY3Rpb25hcnlEcm9wZG93blRyZWVDb21wb25lbnQsXG4gICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgIHsgbmFtZTogJ2Zvcm1seS1jaGVja2JveCcsIGNvbXBvbmVudDogRm9ybWx5Q2hlY2tib3hDb21wb25lbnQgfSxcbiAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgIG5hbWU6ICdmb3JtbHktcGFyYWdyYXBoJyxcbiAgICAgICAgICAgICAgICBjb21wb25lbnQ6IEZvcm1seVBhcmFncmFwaENvbXBvbmVudCxcbiAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgeyBuYW1lOiAnZm9ybWx5LXJhZGlvJywgY29tcG9uZW50OiBGb3JtbHlSYWRpb0NvbXBvbmVudCB9LFxuICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgbmFtZTogJ2Zvcm1seS12YWxpZGF0ZS1jb250YWN0LWluZm8nLFxuICAgICAgICAgICAgICAgIGNvbXBvbmVudDogRm9ybWx5VmFsaWRhdGVDb250YWN0SW5mb0NvbXBvbmVudCxcbiAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgeyBuYW1lOiAnZm9ybWx5LXNjYW4taWQnLCBjb21wb25lbnQ6IEZvcm1seVNjYW5JZENvbXBvbmVudCB9LFxuICAgICAgICAgICAgICB7IG5hbWU6ICdmb3JtbHktYWN0aW9uLWNvbXBvbmVudCcsIGNvbXBvbmVudDogRm9ybWx5QWN0aW9uQ29tcG9uZW50IH0sXG4gICAgICAgICAgICAgIHsgbmFtZTogJ2Zvcm1seS12aWV3LW9mZmVycycsIGNvbXBvbmVudDogRm9ybWx5Vmlld09mZmVyc0NvbXBvbmVudCB9LFxuICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgbmFtZTogJ2Zvcm1seS1lbnJvbC1jYXJkLWNvbXBvbmVudCcsXG4gICAgICAgICAgICAgICAgY29tcG9uZW50OiBGb3JtbHlFbnJvbENhcmRDb21wb25lbnRcbiAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgeyBuYW1lOiAnZm9ybWx5LW9wZW4tYmFua2luZycsIGNvbXBvbmVudDogRm9ybWx5T3BlbkJhbmtpbmdDb21wb25lbnQgfSxcbiAgICAgICAgICAgIF0sXG4gICAgICAgICAgfSksXG4gICAgICAgIEZvcm1seU1hdGVyaWFsTW9kdWxlLFxuICAgICAgICBGb3JtbHlNYXRUZXh0QXJlYU1vZHVsZSxcbiAgICAgICAgRm9ybWx5TWF0RGF0ZXBpY2tlck1vZHVsZSxcbiAgICBdLFxuICAgICAgc2NoZW1hczogW0NVU1RPTV9FTEVNRU5UU19TQ0hFTUFdLFxuICAgIFxuICAgIGV4cG9ydHM6IFtcbiAgICAgIENvbGxlY3RvckZvcm1Db21wb25lbnRcbiAgICBdLFxuICAgIHByb3ZpZGVyczogW09yaWdpbkZvcm1TZXJ2aWNlLFxuICAgICAgRGljdGlvbmFyeVNlcnZpY2UsXG4gICAgICBGb3Jtc1NlcnZpY2UsXG4gICAgICBPdHBTZXJ2aWNlLFxuICAgICAgQXBwbGljYXRpb25EYXRhU2VydmljZSxcbiAgICAgIERpYWxvZ1NlcnZpY2UsXG4gICAgICBMYWJlbFNlcnZpY2UsXG4gICAgICBQcm94eVNlcnZpY2UsXG4gICAgICBUcmFuc2xhdGlvblNlcnZpY2UsXG4gICAgICBUcmFuc2xhdGVQaXBlLFxuICAgICAgcHJvdmlkZUh0dHBDbGllbnQod2l0aEludGVyY2VwdG9yc0Zyb21EaSgpKSxcbiAgICAgIHtcbiAgICAgICAgcHJvdmlkZTogSFRUUF9JTlRFUkNFUFRPUlMsXG4gICAgICAgIHVzZUNsYXNzOiBPcmlnaW5Gb3JtVG9rZW5JbnRlcmNlcHRvcixcbiAgICAgICAgbXVsdGk6IHRydWUsXG4gICAgICB9LFxuICAgIF1cbiAgfSlcbmV4cG9ydCBjbGFzcyBPcmlnaW5Gb3JtTW9kdWxlIHtcbiAgY29uc3RydWN0b3IocHJpdmF0ZSB0aGVtZUluamVjdG9yOiBUaGVtZUluamVjdG9yU2VydmljZSkge31cbn1cbiJdfQ==
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import { Injectable } from '@angular/core';
|
|
2
|
+
import * as i0 from "@angular/core";
|
|
3
|
+
export class OriginFormService {
|
|
4
|
+
constructor() { }
|
|
5
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: OriginFormService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
6
|
+
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: OriginFormService, providedIn: 'root' }); }
|
|
7
|
+
}
|
|
8
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: OriginFormService, decorators: [{
|
|
9
|
+
type: Injectable,
|
|
10
|
+
args: [{
|
|
11
|
+
providedIn: 'root'
|
|
12
|
+
}]
|
|
13
|
+
}], ctorParameters: () => [] });
|
|
14
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoib3JpZ2luLWZvcm0uc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3Byb2plY3RzL29yaWdpbi1mb3JtL3NyYy9saWIvb3JpZ2luLWZvcm0uc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDOztBQUszQyxNQUFNLE9BQU8saUJBQWlCO0lBRTVCLGdCQUFnQixDQUFDOytHQUZOLGlCQUFpQjttSEFBakIsaUJBQWlCLGNBRmhCLE1BQU07OzRGQUVQLGlCQUFpQjtrQkFIN0IsVUFBVTttQkFBQztvQkFDVixVQUFVLEVBQUUsTUFBTTtpQkFDbkIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbkBJbmplY3RhYmxlKHtcbiAgcHJvdmlkZWRJbjogJ3Jvb3QnXG59KVxuZXhwb3J0IGNsYXNzIE9yaWdpbkZvcm1TZXJ2aWNlIHtcblxuICBjb25zdHJ1Y3RvcigpIHsgfVxufVxuIl19
|
|
@@ -0,0 +1,55 @@
|
|
|
1
|
+
import { Injectable } from "@angular/core";
|
|
2
|
+
import { BehaviorSubject } from "rxjs";
|
|
3
|
+
import { cloneDeep } from "lodash";
|
|
4
|
+
import * as i0 from "@angular/core";
|
|
5
|
+
export class ChecklistDatabase {
|
|
6
|
+
get data() {
|
|
7
|
+
return this.dataChange.value;
|
|
8
|
+
}
|
|
9
|
+
constructor() {
|
|
10
|
+
this.dataChange = new BehaviorSubject([]);
|
|
11
|
+
}
|
|
12
|
+
initialize(inputData) {
|
|
13
|
+
this.initialData = inputData;
|
|
14
|
+
this.dataChange.next(inputData);
|
|
15
|
+
}
|
|
16
|
+
insertItem(parent, name) {
|
|
17
|
+
if (parent.children) {
|
|
18
|
+
parent.children.push({ name: name });
|
|
19
|
+
this.dataChange.next(this.data);
|
|
20
|
+
}
|
|
21
|
+
}
|
|
22
|
+
updateItem(node, name) {
|
|
23
|
+
node.name = name;
|
|
24
|
+
this.dataChange.next(this.data);
|
|
25
|
+
}
|
|
26
|
+
filterData(array, text) {
|
|
27
|
+
const getChildren = (result, object) => {
|
|
28
|
+
if (object.name.toLowerCase().indexOf(text.toLowerCase()) >= 0) {
|
|
29
|
+
result.push(object);
|
|
30
|
+
return result;
|
|
31
|
+
}
|
|
32
|
+
if (Array.isArray(object.children)) {
|
|
33
|
+
const children = object.children.reduce(getChildren, []);
|
|
34
|
+
if (children.length) {
|
|
35
|
+
result.push({ ...object, children });
|
|
36
|
+
}
|
|
37
|
+
}
|
|
38
|
+
return result;
|
|
39
|
+
};
|
|
40
|
+
return array.reduce(getChildren, []);
|
|
41
|
+
}
|
|
42
|
+
filter(filterText) {
|
|
43
|
+
let filteredTreeData = cloneDeep(this.initialData);
|
|
44
|
+
if (filterText) {
|
|
45
|
+
filteredTreeData = this.filterData(filteredTreeData, filterText);
|
|
46
|
+
}
|
|
47
|
+
this.dataChange.next(filteredTreeData);
|
|
48
|
+
}
|
|
49
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: ChecklistDatabase, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
50
|
+
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: ChecklistDatabase }); }
|
|
51
|
+
}
|
|
52
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: ChecklistDatabase, decorators: [{
|
|
53
|
+
type: Injectable
|
|
54
|
+
}], ctorParameters: () => [] });
|
|
55
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2hlY2stbGlzdC5kYXRhYmFzZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL29yaWdpbi1mb3JtL3NyYy9saWIvb3RoZXJzL2NoZWNrLWxpc3QuZGF0YWJhc2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUMzQyxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQ3ZDLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxRQUFRLENBQUM7O0FBSW5DLE1BQU0sT0FBTyxpQkFBaUI7SUFJNUIsSUFBSSxJQUFJO1FBQ04sT0FBTyxJQUFJLENBQUMsVUFBVSxDQUFDLEtBQUssQ0FBQztJQUMvQixDQUFDO0lBRUQ7UUFQQSxlQUFVLEdBQUcsSUFBSSxlQUFlLENBQWEsRUFBRSxDQUFDLENBQUM7SUFRakQsQ0FBQztJQUVELFVBQVUsQ0FBQyxTQUFxQjtRQUM5QixJQUFJLENBQUMsV0FBVyxHQUFHLFNBQVMsQ0FBQztRQUM3QixJQUFJLENBQUMsVUFBVSxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsQ0FBQztJQUNsQyxDQUFDO0lBRUQsVUFBVSxDQUFDLE1BQWdCLEVBQUUsSUFBWTtRQUN2QyxJQUFJLE1BQU0sQ0FBQyxRQUFRLEVBQUUsQ0FBQztZQUNwQixNQUFNLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxFQUFFLElBQUksRUFBRSxJQUFJLEVBQWMsQ0FBQyxDQUFDO1lBQ2pELElBQUksQ0FBQyxVQUFVLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUNsQyxDQUFDO0lBQ0gsQ0FBQztJQUVELFVBQVUsQ0FBQyxJQUFjLEVBQUUsSUFBWTtRQUNyQyxJQUFJLENBQUMsSUFBSSxHQUFHLElBQUksQ0FBQztRQUNqQixJQUFJLENBQUMsVUFBVSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUM7SUFDbEMsQ0FBQztJQUdPLFVBQVUsQ0FBQyxLQUFpQixFQUFFLElBQVk7UUFDaEQsTUFBTSxXQUFXLEdBQUcsQ0FBQyxNQUFrQixFQUFFLE1BQWdCLEVBQUUsRUFBRTtZQUMzRCxJQUFJLE1BQU0sQ0FBQyxJQUFJLENBQUMsV0FBVyxFQUFFLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxXQUFXLEVBQUUsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDO2dCQUMvRCxNQUFNLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxDQUFDO2dCQUNwQixPQUFPLE1BQU0sQ0FBQztZQUNoQixDQUFDO1lBQ0QsSUFBSSxLQUFLLENBQUMsT0FBTyxDQUFDLE1BQU0sQ0FBQyxRQUFRLENBQUMsRUFBRSxDQUFDO2dCQUNuQyxNQUFNLFFBQVEsR0FBRyxNQUFNLENBQUMsUUFBUSxDQUFDLE1BQU0sQ0FBQyxXQUFXLEVBQUUsRUFBRSxDQUFDLENBQUM7Z0JBQ3pELElBQUksUUFBUSxDQUFDLE1BQU0sRUFBRSxDQUFDO29CQUNwQixNQUFNLENBQUMsSUFBSSxDQUFDLEVBQUUsR0FBRyxNQUFNLEVBQUUsUUFBUSxFQUFFLENBQUMsQ0FBQztnQkFDdkMsQ0FBQztZQUNILENBQUM7WUFDRCxPQUFPLE1BQU0sQ0FBQztRQUNoQixDQUFDLENBQUM7UUFFRixPQUFPLEtBQUssQ0FBQyxNQUFNLENBQUMsV0FBVyxFQUFFLEVBQUUsQ0FBQyxDQUFDO0lBQ3ZDLENBQUM7SUFFTSxNQUFNLENBQUMsVUFBa0I7UUFDOUIsSUFBSSxnQkFBZ0IsR0FBRyxTQUFTLENBQUMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxDQUFDO1FBQ25ELElBQUksVUFBVSxFQUFFLENBQUM7WUFDZixnQkFBZ0IsR0FBRyxJQUFJLENBQUMsVUFBVSxDQUFDLGdCQUFnQixFQUFFLFVBQVUsQ0FBQyxDQUFDO1FBQ25FLENBQUM7UUFDRCxJQUFJLENBQUMsVUFBVSxDQUFDLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxDQUFDO0lBQ3pDLENBQUM7K0dBckRVLGlCQUFpQjttSEFBakIsaUJBQWlCOzs0RkFBakIsaUJBQWlCO2tCQUQ3QixVQUFVIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gXCJAYW5ndWxhci9jb3JlXCI7XG5pbXBvcnQgeyBCZWhhdmlvclN1YmplY3QgfSBmcm9tIFwicnhqc1wiO1xuaW1wb3J0IHsgY2xvbmVEZWVwIH0gZnJvbSBcImxvZGFzaFwiO1xuaW1wb3J0IHsgSXRlbU5vZGUgfSBmcm9tIFwiLi4vbW9kZWxzL3RyZWV2aWV3Lm1vZGVsXCI7XG5cbkBJbmplY3RhYmxlKClcbmV4cG9ydCBjbGFzcyBDaGVja2xpc3REYXRhYmFzZSB7XG4gIGRhdGFDaGFuZ2UgPSBuZXcgQmVoYXZpb3JTdWJqZWN0PEl0ZW1Ob2RlW10+KFtdKTtcbiAgaW5pdGlhbERhdGEhOiBJdGVtTm9kZVtdO1xuXG4gIGdldCBkYXRhKCk6IEl0ZW1Ob2RlW10ge1xuICAgIHJldHVybiB0aGlzLmRhdGFDaGFuZ2UudmFsdWU7XG4gIH1cblxuICBjb25zdHJ1Y3RvcigpIHtcbiAgfVxuXG4gIGluaXRpYWxpemUoaW5wdXREYXRhOiBJdGVtTm9kZVtdKSB7XG4gICAgdGhpcy5pbml0aWFsRGF0YSA9IGlucHV0RGF0YTtcbiAgICB0aGlzLmRhdGFDaGFuZ2UubmV4dChpbnB1dERhdGEpO1xuICB9XG5cbiAgaW5zZXJ0SXRlbShwYXJlbnQ6IEl0ZW1Ob2RlLCBuYW1lOiBzdHJpbmcpIHtcbiAgICBpZiAocGFyZW50LmNoaWxkcmVuKSB7XG4gICAgICBwYXJlbnQuY2hpbGRyZW4ucHVzaCh7IG5hbWU6IG5hbWUgfSBhcyBJdGVtTm9kZSk7XG4gICAgICB0aGlzLmRhdGFDaGFuZ2UubmV4dCh0aGlzLmRhdGEpO1xuICAgIH1cbiAgfVxuXG4gIHVwZGF0ZUl0ZW0obm9kZTogSXRlbU5vZGUsIG5hbWU6IHN0cmluZykge1xuICAgIG5vZGUubmFtZSA9IG5hbWU7XG4gICAgdGhpcy5kYXRhQ2hhbmdlLm5leHQodGhpcy5kYXRhKTtcbiAgfVxuXG5cbiAgcHJpdmF0ZSBmaWx0ZXJEYXRhKGFycmF5OiBJdGVtTm9kZVtdLCB0ZXh0OiBzdHJpbmcpIHtcbiAgICBjb25zdCBnZXRDaGlsZHJlbiA9IChyZXN1bHQ6IEl0ZW1Ob2RlW10sIG9iamVjdDogSXRlbU5vZGUpID0+IHtcbiAgICAgIGlmIChvYmplY3QubmFtZS50b0xvd2VyQ2FzZSgpLmluZGV4T2YodGV4dC50b0xvd2VyQ2FzZSgpKSA+PSAwKSB7XG4gICAgICAgIHJlc3VsdC5wdXNoKG9iamVjdCk7XG4gICAgICAgIHJldHVybiByZXN1bHQ7XG4gICAgICB9XG4gICAgICBpZiAoQXJyYXkuaXNBcnJheShvYmplY3QuY2hpbGRyZW4pKSB7XG4gICAgICAgIGNvbnN0IGNoaWxkcmVuID0gb2JqZWN0LmNoaWxkcmVuLnJlZHVjZShnZXRDaGlsZHJlbiwgW10pO1xuICAgICAgICBpZiAoY2hpbGRyZW4ubGVuZ3RoKSB7XG4gICAgICAgICAgcmVzdWx0LnB1c2goeyAuLi5vYmplY3QsIGNoaWxkcmVuIH0pO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgICByZXR1cm4gcmVzdWx0O1xuICAgIH07XG5cbiAgICByZXR1cm4gYXJyYXkucmVkdWNlKGdldENoaWxkcmVuLCBbXSk7XG4gIH0gXG5cbiAgcHVibGljIGZpbHRlcihmaWx0ZXJUZXh0OiBzdHJpbmcpIHtcbiAgICBsZXQgZmlsdGVyZWRUcmVlRGF0YSA9IGNsb25lRGVlcCh0aGlzLmluaXRpYWxEYXRhKTtcbiAgICBpZiAoZmlsdGVyVGV4dCkge1xuICAgICAgZmlsdGVyZWRUcmVlRGF0YSA9IHRoaXMuZmlsdGVyRGF0YShmaWx0ZXJlZFRyZWVEYXRhLCBmaWx0ZXJUZXh0KTtcbiAgICB9XG4gICAgdGhpcy5kYXRhQ2hhbmdlLm5leHQoZmlsdGVyZWRUcmVlRGF0YSk7XG4gIH1cbn1cbiJdfQ==
|