UNPKG

@netgrif/components

Version:

Netgrif Application Engine frontend Angular components

341 lines 64.8 kB
import { NgModule } from '@angular/core'; import { CommonModule } from '@angular/common'; import { FlexLayoutModule } from '@ngbracket/ngx-layout'; import { CovalentModule, CurrencyModule, CustomDateAdapter, FrontActionModule, MaterialModule, TranslateLibModule } from '@netgrif/components-core'; import { AngularResizeEventModule } from 'angular-resize-event'; import { HttpClientModule } from '@angular/common/http'; import { ReactiveFormsModule } from '@angular/forms'; import { NgxMatDatetimePickerModule } from '@angular-material-components/datetime-picker'; import { NgxMatMomentModule } from '@angular-material-components/moment-adapter'; import { BooleanFieldComponent } from './boolean-field/boolean-field.component'; import { ButtonFieldComponent } from './button-field/button-field.component'; import { DateAdapter } from '@angular/material/core'; import { DataFieldTemplateComponent } from './data-field-template/data-field-template.component'; import { DateFieldComponent } from './date-field/date-field.component'; import { DateTimeFieldComponent } from './date-time-field/date-time-field.component'; import { EnumerationFieldComponent } from './enumeration-field/enumeration-field.component'; import { EnumerationAutocompleteSelectFieldComponent } from './enumeration-field/enumeration-autocomplete-select-field/enumeration-autocomplete-select-field.component'; import { EnumerationSelectFieldComponent } from './enumeration-field/enumeration-select-field/enumeration-select-field.component'; import { EnumerationListFieldComponent } from './enumeration-field/enumeration-list-field/enumeration-list-field.component'; import { FileFieldComponent } from './file-field/file-field.component'; import { FileListFieldComponent } from './file-list-field/file-list-field.component'; import { MultichoiceFieldComponent } from './multichoice-field/multichoice-field.component'; import { MultichoiceSelectFieldComponent } from './multichoice-field/multichoice-select-field/multichoice-select-field.component'; import { MultichoiceListFieldComponent } from './multichoice-field/multichoice-list-field/multichoice-list-field.component'; import { NumberFieldComponent } from './number-field/number-field.component'; import { TextFieldComponent } from './text-field/text-field.component'; import { TextareaFieldComponent } from './text-field/textarea-field/textarea-field.component'; import { RichTextareaFieldComponent } from './text-field/rich-textarea-field/rich-textarea-field.component'; import { SimpleTextFieldComponent } from './text-field/simple-text-field/simple-text-field.component'; import { UserFieldComponent } from './user-field/user-field.component'; import { RequiredLabelComponent } from './required-label/required-label.component'; import { HtmlTextareaFieldComponent } from './text-field/html-textarea-field/html-textarea-field.component'; import { QuillModule } from 'ngx-quill'; import { NumberCurrencyFieldComponent } from './number-field/number-currency-field/number-currency-field.component'; import { NumberDefaultFieldComponent } from './number-field/number-default-field/number-default-field.component'; import { PasswordTextFieldComponent } from './text-field/password-text-field/password-text-field.component'; import { PreviewDialogComponent } from './file-field/preview-dialog/preview-dialog.component'; import { MatDialogModule } from '@angular/material/dialog'; import { EnumerationStepperFieldComponent } from './enumeration-field/enumeration-stepper-field/enumeration-stepper-field.component'; import { EnumerationIconFieldComponent } from './enumeration-field/enumeration-icon-field/enumeration-icon-field.component'; import { EnumerationAutocompleteDynamicFieldComponent } from './enumeration-field/enumeration-autocomplete-dynamic-field/enumeration-autocomplete-dynamic-field.component'; import { MatProgressSpinnerModule } from '@angular/material/progress-spinner'; import { FilterFieldComponent } from './filter-field/filter-field.component'; import { FilterFieldContentComponent } from './filter-field/filter-field-content/filter-field-content.component'; import { AdvancedSearchComponentModule } from '../search/advanced-search/advanced-search.module'; import { SideMenuUserAssignComponentModule } from '../side-menu/content-components/user-assign/side-menu-user-assign-component.module'; import { I18nFieldComponent } from './i18n-field/i18n-field.component'; import { I18nDividerFieldComponent } from './i18n-field/i18n-divider-field/i18n-divider-field.component'; import { I18nTextFieldComponent } from './i18n-field/i18n-text-field/i18n-text-field.component'; import { EasymdeWrapperComponent } from './text-field/rich-textarea-field/easymde-wrapper/easymde-wrapper.component'; import { BrowserModule } from '@angular/platform-browser'; import { BrowserAnimationsModule } from '@angular/platform-browser/animations'; import { MultichoiceAutocompleteFieldComponent } from './multichoice-field/multichoice-autocomplete-field/multichoice-autocomplete-field.component'; import { UserListFieldComponent } from './user-list-field/user-list-field.component'; import { SideMenuMultiUserAssignComponentModule } from "../side-menu/content-components/multi-user-assign/side-menu-multi-user-assign-component.module"; import { NumberDecimalFieldComponent } from './number-field/number-decimal-field/number-decimal-field.component'; import { TaskRefFieldComponent } from './task-ref-field/task-ref-field.component'; import { TaskRefDashboardTileComponent } from './task-ref-field/task-ref-dashboard-field/task-ref-dashboard-tile/task-ref-dashboard-tile.component'; import { DashboardLineChartTextFieldComponent } from './text-field/dashboard-line-chart-text-field/dashboard-line-chart-text-field.component'; import { DashboardComponentModule } from '../dashboard/dashboard.module'; import { DashboardPieChartTextFieldComponent } from './text-field/dashboard-pie-chart-text-field/dashboard-pie-chart-text-field.component'; import { DashboardPortalTextFieldComponent } from './text-field/dashboard-portal-text-field/dashboard-portal-text-field.component'; import { DashboardBarChartTextFieldComponent } from './text-field/dashboard-bar-chart-text-field/dashboard-bar-chart-text-field.component'; import { DashboardIframeTextFieldComponent } from './text-field/dashboard-iframe-text-field/dashboard-iframe-text-field.component'; import { RouterModule } from '@angular/router'; import { FilterFieldTabViewContentComponent } from './filter-field/tab-view-filter-field/filter-field-tab-view-content.component'; import { BooleanDefaultFieldComponent } from './boolean-field/boolean-default-field/boolean-default-field.component'; import { ButtonDefaultFieldComponent } from './button-field/button-default-field/button-default-field.component'; import { DateDefaultFieldComponent } from './date-field/date-default-field/date-default-field.component'; import { DateTimeDefaultFieldComponent } from './date-time-field/date-time-default-field/date-time-default-field.component'; import { FileDefaultFieldComponent } from './file-field/file-default-field/file-default-field.component'; import { FileListDefaultFieldComponent } from './file-list-field/file-list-default-field/file-list-default-field.component'; import { FilterDefaultFieldComponent } from './filter-field/filter-default-field/filter-default-field.component'; import { UserDefaultFieldComponent } from './user-field/user-default-field/user-default-field.component'; import { UserListDefaultFieldComponent } from './user-list-field/user-list-default-field/user-list-default-field.component'; import { TaskRefDashboardFieldComponent } from "./task-ref-field/task-ref-dashboard-field/task-ref-dashboard-field.component"; import { TaskRefListFieldComponent } from './task-ref-field/task-ref-list-field/task-ref-list-field.component'; import { CaseRefDefaultComponent } from './case-ref-field/case-ref-default/case-ref-default.component'; import { MultichoiceCaserefFieldComponent } from './multichoice-field/multichoice-caseref-field/multichoice-caseref-field.component'; import { EnumerationCaserefFieldComponent } from './enumeration-field/enumeration-caseref-field/enumeration-caseref-field.component'; import { SignaturePadFieldComponent } from './text-field/signature-pad-field/signature-pad-field.component'; import { StringCollectionDefaultFieldComponent } from './string-collection-field/string-collection-default-field/string-collection-default-field.component'; import { ComponentPortal } from "@angular/cdk/portal"; import * as i0 from "@angular/core"; import * as i1 from "@netgrif/components-core"; import * as i2 from "ngx-quill"; export class DataFieldsComponentModule { constructor(registry) { registry.register("boolean-default", (injector) => new ComponentPortal(BooleanDefaultFieldComponent, null, injector)); registry.register("button-default", (injector) => new ComponentPortal(ButtonDefaultFieldComponent, null, injector)); registry.register("date-default", (injector) => new ComponentPortal(DateDefaultFieldComponent, null, injector)); registry.register("date-time-default", (injector) => new ComponentPortal(DateTimeDefaultFieldComponent, null, injector)); registry.register("enumeration-default", (injector) => new ComponentPortal(EnumerationSelectFieldComponent, null, injector)); registry.register("enumeration-autocomplete_dynamic", (injector) => new ComponentPortal(EnumerationAutocompleteDynamicFieldComponent, null, injector)); registry.register("enumeration-autocomplete", (injector) => new ComponentPortal(EnumerationAutocompleteSelectFieldComponent, null, injector)); registry.register("enumeration-list", (injector) => new ComponentPortal(EnumerationListFieldComponent, null, injector)); registry.register("enumeration-stepper", (injector) => new ComponentPortal(EnumerationStepperFieldComponent, null, injector)); registry.register("enumeration-icon", (injector) => new ComponentPortal(EnumerationIconFieldComponent, null, injector)); registry.register("enumeration-caseref", (injector) => new ComponentPortal(EnumerationCaserefFieldComponent, null, injector)); registry.register("file-default", (injector) => new ComponentPortal(FileDefaultFieldComponent, null, injector)); registry.register("file-preview", (injector) => new ComponentPortal(FileDefaultFieldComponent, null, injector)); registry.register("file-list-default", (injector) => new ComponentPortal(FileListDefaultFieldComponent, null, injector)); registry.register("filter-default", (injector) => new ComponentPortal(FilterDefaultFieldComponent, null, injector)); registry.register("filter-filter-tab-view", (injector) => new ComponentPortal(FilterDefaultFieldComponent, null, injector)); registry.register("i18n-divider", (injector) => new ComponentPortal(I18nDividerFieldComponent, null, injector)); registry.register("i18n-text", (injector) => new ComponentPortal(I18nTextFieldComponent, null, injector)); registry.register("i18n-default", (injector) => new ComponentPortal(I18nTextFieldComponent, null, injector)); registry.register("multichoice-default", (injector) => new ComponentPortal(MultichoiceSelectFieldComponent, null, injector)); registry.register("multichoice-list", (injector) => new ComponentPortal(MultichoiceListFieldComponent, null, injector)); registry.register("multichoice-caseref", (injector) => new ComponentPortal(MultichoiceCaserefFieldComponent, null, injector)); registry.register("multichoice-autocomplete", (injector) => new ComponentPortal(MultichoiceAutocompleteFieldComponent, null, injector)); registry.register("number-default", (injector) => new ComponentPortal(NumberDefaultFieldComponent, null, injector)); registry.register("number-currency", (injector) => new ComponentPortal(NumberCurrencyFieldComponent, null, injector)); registry.register("number-decimal", (injector) => new ComponentPortal(NumberDecimalFieldComponent, null, injector)); registry.register("text-default", (injector) => new ComponentPortal(SimpleTextFieldComponent, null, injector)); registry.register("text-password", (injector) => new ComponentPortal(PasswordTextFieldComponent, null, injector)); registry.register("text-textarea", (injector) => new ComponentPortal(TextareaFieldComponent, null, injector)); registry.register("text-richtextarea", (injector) => new ComponentPortal(RichTextareaFieldComponent, null, injector)); registry.register("text-htmltextarea", (injector) => new ComponentPortal(HtmlTextareaFieldComponent, null, injector)); registry.register("text-signature", (injector) => new ComponentPortal(SignaturePadFieldComponent, null, injector)); registry.register("text-dashboard_line_chart", (injector) => new ComponentPortal(DashboardLineChartTextFieldComponent, null, injector)); registry.register("text-dashboard_pie_chart", (injector) => new ComponentPortal(DashboardPieChartTextFieldComponent, null, injector)); registry.register("text-dashboard_bar_chart", (injector) => new ComponentPortal(DashboardBarChartTextFieldComponent, null, injector)); registry.register("text-dashboard_iframe", (injector) => new ComponentPortal(DashboardIframeTextFieldComponent, null, injector)); registry.register("text-dashboard_portal", (injector) => new ComponentPortal(DashboardPortalTextFieldComponent, null, injector)); registry.register("task-ref-dashboard", (injector) => new ComponentPortal(TaskRefDashboardFieldComponent, null, injector)); registry.register("task-ref-task-list", (injector) => new ComponentPortal(TaskRefListFieldComponent, null, injector)); registry.register("case-ref-default", (injector) => new ComponentPortal(CaseRefDefaultComponent, null, injector)); registry.register("user-default", (injector) => new ComponentPortal(UserDefaultFieldComponent, null, injector)); registry.register("user-list-default", (injector) => new ComponentPortal(UserListDefaultFieldComponent, null, injector)); registry.register("string-collection-default", (injector) => new ComponentPortal(StringCollectionDefaultFieldComponent, null, injector)); } static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: DataFieldsComponentModule, deps: [{ token: i1.ComponentRegistryService }], target: i0.ɵɵFactoryTarget.NgModule }); static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "17.3.12", ngImport: i0, type: DataFieldsComponentModule, declarations: [BooleanFieldComponent, ButtonFieldComponent, DataFieldTemplateComponent, DateFieldComponent, DateTimeFieldComponent, EnumerationFieldComponent, EnumerationAutocompleteSelectFieldComponent, EnumerationSelectFieldComponent, EnumerationListFieldComponent, FileFieldComponent, FileListFieldComponent, MultichoiceFieldComponent, MultichoiceSelectFieldComponent, MultichoiceListFieldComponent, MultichoiceAutocompleteFieldComponent, NumberFieldComponent, TextFieldComponent, TextareaFieldComponent, RichTextareaFieldComponent, SimpleTextFieldComponent, UserFieldComponent, RequiredLabelComponent, HtmlTextareaFieldComponent, PasswordTextFieldComponent, NumberCurrencyFieldComponent, NumberDefaultFieldComponent, PreviewDialogComponent, NumberDefaultFieldComponent, EnumerationStepperFieldComponent, EnumerationIconFieldComponent, EnumerationAutocompleteDynamicFieldComponent, FilterFieldComponent, FilterFieldContentComponent, I18nFieldComponent, I18nDividerFieldComponent, I18nTextFieldComponent, EasymdeWrapperComponent, UserListFieldComponent, TaskRefFieldComponent, TaskRefDashboardTileComponent, DashboardLineChartTextFieldComponent, DashboardPieChartTextFieldComponent, DashboardPortalTextFieldComponent, DashboardBarChartTextFieldComponent, DashboardIframeTextFieldComponent, FilterFieldTabViewContentComponent, BooleanDefaultFieldComponent, ButtonDefaultFieldComponent, DateDefaultFieldComponent, DateTimeDefaultFieldComponent, FileDefaultFieldComponent, FileListDefaultFieldComponent, FilterDefaultFieldComponent, UserDefaultFieldComponent, UserListDefaultFieldComponent, TaskRefDashboardFieldComponent, TaskRefListFieldComponent, CaseRefDefaultComponent, MultichoiceCaserefFieldComponent, EnumerationCaserefFieldComponent, StringCollectionDefaultFieldComponent, SignaturePadFieldComponent, NumberDecimalFieldComponent], imports: [CommonModule, FlexLayoutModule, MaterialModule, CovalentModule, AngularResizeEventModule, HttpClientModule, ReactiveFormsModule, NgxMatDatetimePickerModule, NgxMatMomentModule, TranslateLibModule, SideMenuUserAssignComponentModule, SideMenuMultiUserAssignComponentModule, i2.QuillModule, MatDialogModule, AdvancedSearchComponentModule, MatProgressSpinnerModule, CurrencyModule, BrowserModule, BrowserAnimationsModule, DashboardComponentModule, RouterModule, FrontActionModule], exports: [DataFieldTemplateComponent] }); static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: DataFieldsComponentModule, providers: [ { provide: DateAdapter, useClass: CustomDateAdapter } ], imports: [CommonModule, FlexLayoutModule, MaterialModule, CovalentModule, AngularResizeEventModule, HttpClientModule, ReactiveFormsModule, NgxMatDatetimePickerModule, NgxMatMomentModule, TranslateLibModule, SideMenuUserAssignComponentModule, SideMenuMultiUserAssignComponentModule, QuillModule.forRoot(), MatDialogModule, AdvancedSearchComponentModule, MatProgressSpinnerModule, CurrencyModule, BrowserModule, BrowserAnimationsModule, DashboardComponentModule, RouterModule, FrontActionModule] }); } i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: DataFieldsComponentModule, decorators: [{ type: NgModule, args: [{ declarations: [ BooleanFieldComponent, ButtonFieldComponent, DataFieldTemplateComponent, DateFieldComponent, DateTimeFieldComponent, EnumerationFieldComponent, EnumerationAutocompleteSelectFieldComponent, EnumerationSelectFieldComponent, EnumerationListFieldComponent, FileFieldComponent, FileListFieldComponent, MultichoiceFieldComponent, MultichoiceSelectFieldComponent, MultichoiceListFieldComponent, MultichoiceAutocompleteFieldComponent, NumberFieldComponent, TextFieldComponent, TextareaFieldComponent, RichTextareaFieldComponent, SimpleTextFieldComponent, UserFieldComponent, RequiredLabelComponent, HtmlTextareaFieldComponent, PasswordTextFieldComponent, NumberCurrencyFieldComponent, NumberDefaultFieldComponent, PreviewDialogComponent, NumberDefaultFieldComponent, EnumerationStepperFieldComponent, EnumerationIconFieldComponent, EnumerationAutocompleteDynamicFieldComponent, FilterFieldComponent, FilterFieldContentComponent, I18nFieldComponent, I18nDividerFieldComponent, I18nTextFieldComponent, EasymdeWrapperComponent, UserListFieldComponent, TaskRefFieldComponent, TaskRefDashboardTileComponent, DashboardLineChartTextFieldComponent, DashboardPieChartTextFieldComponent, DashboardPortalTextFieldComponent, DashboardBarChartTextFieldComponent, DashboardIframeTextFieldComponent, FilterFieldTabViewContentComponent, BooleanDefaultFieldComponent, ButtonDefaultFieldComponent, DateDefaultFieldComponent, DateTimeDefaultFieldComponent, FileDefaultFieldComponent, FileListDefaultFieldComponent, FilterDefaultFieldComponent, UserDefaultFieldComponent, UserListDefaultFieldComponent, TaskRefDashboardFieldComponent, TaskRefListFieldComponent, CaseRefDefaultComponent, MultichoiceCaserefFieldComponent, EnumerationCaserefFieldComponent, StringCollectionDefaultFieldComponent, SignaturePadFieldComponent, NumberDecimalFieldComponent ], exports: [ DataFieldTemplateComponent ], imports: [ CommonModule, FlexLayoutModule, MaterialModule, CovalentModule, AngularResizeEventModule, HttpClientModule, ReactiveFormsModule, NgxMatDatetimePickerModule, NgxMatMomentModule, TranslateLibModule, SideMenuUserAssignComponentModule, SideMenuMultiUserAssignComponentModule, QuillModule.forRoot(), MatDialogModule, AdvancedSearchComponentModule, MatProgressSpinnerModule, CurrencyModule, BrowserModule, BrowserAnimationsModule, DashboardComponentModule, RouterModule, FrontActionModule ], providers: [ { provide: DateAdapter, useClass: CustomDateAdapter } ] }] }], ctorParameters: () => [{ type: i1.ComponentRegistryService }] }); //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF0YS1maWVsZHMubW9kdWxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmV0Z3JpZi1jb21wb25lbnRzL3NyYy9saWIvZGF0YS1maWVsZHMvZGF0YS1maWVsZHMubW9kdWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBVyxRQUFRLEVBQUMsTUFBTSxlQUFlLENBQUM7QUFDakQsT0FBTyxFQUFDLFlBQVksRUFBQyxNQUFNLGlCQUFpQixDQUFDO0FBQzdDLE9BQU8sRUFBQyxnQkFBZ0IsRUFBQyxNQUFNLHVCQUF1QixDQUFDO0FBQ3ZELE9BQU8sRUFDSCxjQUFjLEVBQ2QsY0FBYyxFQUNkLGlCQUFpQixFQUFFLGlCQUFpQixFQUNwQyxjQUFjLEVBQ2Qsa0JBQWtCLEVBRXJCLE1BQU0sMEJBQTBCLENBQUM7QUFDbEMsT0FBTyxFQUFDLHdCQUF3QixFQUFDLE1BQU0sc0JBQXNCLENBQUM7QUFDOUQsT0FBTyxFQUFDLGdCQUFnQixFQUFDLE1BQU0sc0JBQXNCLENBQUM7QUFDdEQsT0FBTyxFQUFDLG1CQUFtQixFQUFDLE1BQU0sZ0JBQWdCLENBQUM7QUFDbkQsT0FBTyxFQUFDLDBCQUEwQixFQUFDLE1BQU0sOENBQThDLENBQUM7QUFDeEYsT0FBTyxFQUFDLGtCQUFrQixFQUFDLE1BQU0sNkNBQTZDLENBQUM7QUFDL0UsT0FBTyxFQUFDLHFCQUFxQixFQUFDLE1BQU0seUNBQXlDLENBQUM7QUFDOUUsT0FBTyxFQUFDLG9CQUFvQixFQUFDLE1BQU0sdUNBQXVDLENBQUM7QUFDM0UsT0FBTyxFQUFDLFdBQVcsRUFBQyxNQUFNLHdCQUF3QixDQUFDO0FBQ25ELE9BQU8sRUFBQywwQkFBMEIsRUFBQyxNQUFNLHFEQUFxRCxDQUFDO0FBQy9GLE9BQU8sRUFBQyxrQkFBa0IsRUFBQyxNQUFNLG1DQUFtQyxDQUFDO0FBQ3JFLE9BQU8sRUFBQyxzQkFBc0IsRUFBQyxNQUFNLDZDQUE2QyxD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QixjQUFjO3dCQUNkLGNBQWM7d0JBQ2Qsd0JBQXdCO3dCQUN4QixnQkFBZ0I7d0JBQ2hCLG1CQUFtQjt3QkFDbkIsMEJBQTBCO3dCQUMxQixrQkFBa0I7d0JBQ2xCLGtCQUFrQjt3QkFDbEIsaUNBQWlDO3dCQUNqQyxzQ0FBc0M7d0JBQ3RDLFdBQVcsQ0FBQyxPQUFPLEVBQUU7d0JBQ3JCLGVBQWU7d0JBQ2YsNkJBQTZCO3dCQUM3Qix3QkFBd0I7d0JBQ3hCLGNBQWM7d0JBQ2QsYUFBYTt3QkFDYix1QkFBdUI7d0JBQ3ZCLHdCQUF3Qjt3QkFDeEIsWUFBWTt3QkFDWixpQkFBaUI7cUJBQ3BCO29CQUNELFNBQVMsRUFBRTt3QkFDUCxFQUFDLE9BQU8sRUFBRSxXQUFXLEVBQUUsUUFBUSxFQUFFLGlCQUFpQixFQUFDO3FCQUN0RDtpQkFDSiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7SW5qZWN0b3IsIE5nTW9kdWxlfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7Q29tbW9uTW9kdWxlfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHtGbGV4TGF5b3V0TW9kdWxlfSBmcm9tICdAbmdicmFja2V0L25neC1sYXlvdXQnO1xuaW1wb3J0IHtcbiAgICBDb3ZhbGVudE1vZHVsZSxcbiAgICBDdXJyZW5jeU1vZHVsZSxcbiAgICBDdXN0b21EYXRlQWRhcHRlciwgRnJvbnRBY3Rpb25Nb2R1bGUsXG4gICAgTWF0ZXJpYWxNb2R1bGUsXG4gICAgVHJhbnNsYXRlTGliTW9kdWxlLFxuICAgIENvbXBvbmVudFJlZ2lzdHJ5U2VydmljZVxufSBmcm9tICdAbmV0Z3JpZi9jb21wb25lbnRzLWNvcmUnO1xuaW1wb3J0IHtBbmd1bGFyUmVzaXplRXZlbnRNb2R1bGV9IGZyb20gJ2FuZ3VsYXItcmVzaXplLWV2ZW50JztcbmltcG9ydCB7SHR0cENsaWVudE1vZHVsZX0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uL2h0dHAnO1xuaW1wb3J0IHtSZWFjdGl2ZUZvcm1zTW9kdWxlfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5pbXBvcnQge05neE1hdERhdGV0aW1lUGlja2VyTW9kdWxlfSBmcm9tICdAYW5ndWxhci1tYXRlcmlhbC1jb21wb25lbnRzL2RhdGV0aW1lLXBpY2tlcic7XG5pbXBvcnQge05neE1hdE1vbWVudE1vZHVsZX0gZnJvbSAnQGFuZ3VsYXItbWF0ZXJpYWwtY29tcG9uZW50cy9tb21lbnQtYWRhcHRlcic7XG5pbXBvcnQge0Jvb2xlYW5GaWVsZENvbXBvbmVudH0gZnJvbSAnLi9ib29sZWFuLWZpZWxkL2Jvb2xlYW4tZmllbGQuY29tcG9uZW50JztcbmltcG9ydCB7QnV0dG9uRmllbGRDb21wb25lbnR9IGZyb20gJy4vYnV0dG9uLWZpZWxkL2J1dHRvbi1maWVsZC5jb21wb25lbnQnO1xuaW1wb3J0IHtEYXRlQWRhcHRlcn0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvY29yZSc7XG5pbXBvcnQge0RhdGFGaWVsZFRlbXBsYXRlQ29tcG9uZW50fSBmcm9tICcuL2RhdGEtZmllbGQtdGVtcGxhdGUvZGF0YS1maWVsZC10ZW1wbGF0ZS5jb21wb25lbnQnO1xuaW1wb3J0IHtEYXRlRmllbGRDb21wb25lbnR9IGZyb20gJy4vZGF0ZS1maWVsZC9kYXRlLWZpZWxkLmNvbXBvbmVudCc7XG5pbXBvcnQge0RhdGVUaW1lRmllbGRDb21wb25lbnR9IGZyb20gJy4vZGF0ZS10aW1lLWZpZWxkL2RhdGUtdGltZS1maWVsZC5jb21wb25lbnQnO1xuaW1wb3J0IHtFbnVtZXJhdGlvbkZpZWxkQ29tcG9uZW50fSBmcm9tICcuL2VudW1lcmF0aW9uLWZpZWxkL2VudW1lcmF0aW9uLWZpZWxkLmNvbXBvbmVudCc7XG5pbXBvcnQge1xuICAgIEVudW1lcmF0aW9uQXV0b2NvbXBsZXRlU2VsZWN0RmllbGRDb21wb25lbnRcbn0gZnJvbSAnLi9lbnVtZXJhdGlvbi1maWVsZC9lbnVtZXJhdGlvbi1hdXRvY29tcGxldGUtc2VsZWN0LWZpZWxkL2VudW1lcmF0aW9uLWF1dG9jb21wbGV0ZS1zZWxlY3QtZmllbGQuY29tcG9uZW50JztcbmltcG9ydCB7XG4gICAgRW51bWVyYXRpb25TZWxlY3RGaWVsZENvbXBvbmVudFxufSBmcm9tICcuL2VudW1lcmF0aW9uLWZpZWxkL2VudW1lcmF0aW9uLXNlbGVjdC1maWVsZC9lbnVtZXJhdGlvbi1zZWxlY3QtZmllbGQuY29tcG9uZW50JztcbmltcG9ydCB7XG4gICAgRW51bWVyYXRpb25MaXN0RmllbGRDb21wb25lbnRcbn0gZnJvbSAnLi9lbnVtZXJhdGlvbi1maWVsZC9lbnVtZXJhdGlvbi1saXN0LWZpZWxkL2VudW1lcmF0aW9uLWxpc3QtZmllbGQuY29tcG9uZW50JztcbmltcG9ydCB7RmlsZUZpZWxkQ29tcG9uZW50fSBmcm9tICcuL2ZpbGUtZmllbGQvZmlsZS1maWVsZC5jb21wb25lbnQnO1xuaW1wb3J0IHtGaWxlTGlzdEZpZWxkQ29tcG9uZW50fSBmcm9tICcuL2ZpbGUtbGlzdC1maWVsZC9maWxlLWxpc3QtZmllbGQuY29tcG9uZW50JztcbmltcG9ydCB7TXVsdGljaG9pY2VGaWVsZENvbXBvbmVudH0gZnJvbSAnLi9tdWx0aWNob2ljZS1maWVsZC9tdWx0aWNob2ljZS1maWVsZC5jb21wb25lbnQnO1xuaW1wb3J0IHtcbiAgICBNdWx0aWNob2ljZVNlbGVjdEZpZWxkQ29tcG9uZW50XG59IGZyb20gJy4vbXVsdGljaG9pY2UtZmllbGQvbXVsdGljaG9pY2Utc2VsZWN0LWZpZWxkL211bHRpY2hvaWNlLXNlbGVjdC1maWVsZC5jb21wb25lbnQnO1xuaW1wb3J0IHtcbiAgICBNdWx0aWNob2ljZUxpc3RGaWVsZENvbXBvbmVudFxufSBmcm9tICcuL211bHRpY2hvaWNlLWZpZWxkL211bHRpY2hvaWNlLWxpc3QtZmllbGQvbXVsdGljaG9pY2UtbGlzdC1maWVsZC5jb21wb25lbnQnO1xuaW1wb3J0IHtOdW1iZXJGaWVsZENvbXBvbmVudH0gZnJvbSAnLi9udW1iZXItZmllbGQvbnVtYmVyLWZpZWxkLmNvbXBvbmVudCc7XG5pbXBvcnQge1RleHRGaWVsZENvbXBvbmVudH0gZnJvbSAnLi90ZXh0LWZpZWxkL3RleHQtZmllbGQuY29tcG9uZW50JztcbmltcG9ydCB7VGV4dGFyZWFGaWVsZENvbXBvbmVudH0gZnJvbSAnLi90ZXh0LWZpZWxkL3RleHRhcmVhLWZpZWxkL3RleHRhcmVhLWZpZWxkLmNvbXBvbmVudCc7XG5pbXBvcnQge1JpY2hUZXh0YXJlYUZpZWxkQ29tcG9uZW50fSBmcm9tICcuL3RleHQtZmllbGQvcmljaC10ZXh0YXJlYS1maWVsZC9yaWNoLXRleHRhcmVhLWZpZWxkLmNvbXBvbmVudCc7XG5pbXBvcnQge1NpbXBsZVRleHRGaWVsZENvbXBvbmVudH0gZnJvbSAnLi90ZXh0LWZpZWxkL3NpbXBsZS10ZXh0LWZpZWxkL3NpbXBsZS10ZXh0LWZpZWxkLmNvbXBvbmVudCc7XG5pbXBvcnQge1VzZXJGaWVsZENvbXBvbmVudH0gZnJvbSAnLi91c2VyLWZpZWxkL3VzZXItZmllbGQuY29tcG9uZW50JztcbmltcG9ydCB7UmVxdWlyZWRMYWJlbENvbXBvbmVudH0gZnJvbSAnLi9yZXF1aXJlZC1sYWJlbC9yZXF1aXJlZC1sYWJlbC5jb21wb25lbnQnO1xuaW1wb3J0IHtIdG1sVGV4dGFyZWFGaWVsZENvbXBvbmVudH0gZnJvbSAnLi90ZXh0LWZpZWxkL2h0bWwtdGV4dGFyZWEtZmllbGQvaHRtbC10ZXh0YXJlYS1maWVsZC5jb21wb25lbnQnO1xuaW1wb3J0IHtRdWlsbE1vZHVsZX0gZnJvbSAnbmd4LXF1aWxsJztcbmltcG9ydCB7TnVtYmVyQ3VycmVuY3lGaWVsZENvbXBvbmVudH0gZnJvbSAnLi9udW1iZXItZmllbGQvbnVtYmVyLWN1cnJlbmN5LWZpZWxkL251bWJlci1jdXJyZW5jeS1maWVsZC5jb21wb25lbnQnO1xuaW1wb3J0IHtOdW1iZXJEZWZhdWx0RmllbGRDb21wb25lbnR9IGZyb20gJy4vbnVtYmVyLWZpZWxkL251bWJlci1kZWZhdWx0LWZpZWxkL251bWJlci1kZWZhdWx0LWZpZWxkLmNvbXBvbmVudCc7XG5pbXBvcnQge1Bhc3N3b3JkVGV4dEZpZWxkQ29tcG9uZW50fSBmcm9tICcuL3RleHQtZmllbGQvcGFzc3dvcmQtdGV4dC1maWVsZC9wYXNzd29yZC10ZXh0LWZpZWxkLmNvbXBvbmVudCc7XG5pbXBvcnQge1ByZXZpZXdEaWFsb2dDb21wb25lbnR9IGZyb20gJy4vZmlsZS1maWVsZC9wcmV2aWV3LWRpYWxvZy9wcmV2aWV3LWRpYWxvZy5jb21wb25lbnQnO1xuaW1wb3J0IHtNYXREaWFsb2dNb2R1bGV9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2RpYWxvZyc7XG5pbXBvcnQge1xuICAgIEVudW1lcmF0aW9uU3RlcHBlckZpZWxkQ29tcG9uZW50XG59IGZyb20gJy4vZW51bWVyYXRpb24tZmllbGQvZW51bWVyYXRpb24tc3RlcHBlci1maWVsZC9lbnVtZXJhdGlvbi1zdGVwcGVyLWZpZWxkLmNvbXBvbmVudCc7XG5pbXBvcnQge1xuICAgIEVudW1lcmF0aW9uSWNvbkZpZWxkQ29tcG9uZW50XG59IGZyb20gJy4vZW51bWVyYXRpb24tZmllbGQvZW51bWVyYXRpb24taWNvbi1maWVsZC9lbnVtZXJhdGlvbi1pY29uLWZpZWxkLmNvbXBvbmVudCc7XG5pbXBvcnQge1xuICAgIEVudW1lcmF0aW9uQXV0b2NvbXBsZXRlRHluYW1pY0ZpZWxkQ29tcG9uZW50XG59IGZyb20gJy4vZW51bWVyYXRpb24tZmllbGQvZW51bWVyYXRpb24tYXV0b2NvbXBsZXRlLWR5bmFtaWMtZmllbGQvZW51bWVyYXRpb24tYXV0b2NvbXBsZXRlLWR5bmFtaWMtZmllbGQuY29tcG9uZW50JztcbmltcG9ydCB7TWF0UHJvZ3Jlc3NTcGlubmVyTW9kdWxlfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9wcm9ncmVzcy1zcGlubmVyJztcblxuaW1wb3J0IHtGaWx0ZXJGaWVsZENvbXBvbmVudH0gZnJvbSAnLi9maWx0ZXItZmllbGQvZmlsdGVyLWZpZWxkLmNvbXBvbmVudCc7XG5pbXBvcnQge0ZpbHRlckZpZWxkQ29udGVudENvbXBvbmVudH0gZnJvbSAnLi9maWx0ZXItZmllbGQvZmlsdGVyLWZpZWxkLWNvbnRlbnQvZmlsdGVyLWZpZWxkLWNvbnRlbnQuY29tcG9uZW50JztcbmltcG9ydCB7QWR2YW5jZWRTZWFyY2hDb21wb25lbnRNb2R1bGV9IGZyb20gJy4uL3NlYXJjaC9hZHZhbmNlZC1zZWFyY2gvYWR2YW5jZWQtc2VhcmNoLm1vZHVsZSc7XG5pbXBvcnQge1xuICAgIFNpZGVNZW51VXNlckFzc2lnbkNvbXBvbmVudE1vZHVsZVxufSBmcm9tICcuLi9zaWRlLW1lbnUvY29udGVudC1jb21wb25lbnRzL3VzZXItYXNzaWduL3NpZGUtbWVudS11c2VyLWFzc2lnbi1jb21wb25lbnQubW9kdWxlJztcbmltcG9ydCB7STE4bkZpZWxkQ29tcG9uZW50fSBmcm9tICcuL2kxOG4tZmllbGQvaTE4bi1maWVsZC5jb21wb25lbnQnO1xuaW1wb3J0IHtJMThuRGl2aWRlckZpZWxkQ29tcG9uZW50fSBmcm9tICcuL2kxOG4tZmllbGQvaTE4bi1kaXZpZGVyLWZpZWxkL2kxOG4tZGl2aWRlci1maWVsZC5jb21wb25lbnQnO1xuaW1wb3J0IHtJMThuVGV4dEZpZWxkQ29tcG9uZW50fSBmcm9tICcuL2kxOG4tZmllbGQvaTE4bi10ZXh0LWZpZWxkL2kxOG4tdGV4dC1maWVsZC5jb21wb25lbnQnO1xuaW1wb3J0IHtFYXN5bWRlV3JhcHBlckNvbXBvbmVudH0gZnJvbSAnLi90ZXh0LWZpZWxkL3JpY2gtdGV4dGFyZWEtZmllbGQvZWFzeW1kZS13cmFwcGVyL2Vhc3ltZGUtd3JhcHBlci5jb21wb25lbnQnO1xuaW1wb3J0IHtCcm93c2VyTW9kdWxlfSBmcm9tICdAYW5ndWxhci9wbGF0Zm9ybS1icm93c2VyJztcbmltcG9ydCB7QnJvd3NlckFuaW1hdGlvbnNNb2R1bGV9IGZyb20gJ0Bhbmd1bGFyL3BsYXRmb3JtLWJyb3dzZXIvYW5pbWF0aW9ucyc7XG5pbXBvcnQge1xuICAgIE11bHRpY2hvaWNlQXV0b2NvbXBsZXRlRmllbGRDb21wb25lbnRcbn0gZnJvbSAnLi9tdWx0aWNob2ljZS1maWVsZC9tdWx0aWNob2ljZS1hdXRvY29tcGxldGUtZmllbGQvbXVsdGljaG9pY2UtYXV0b2NvbXBsZXRlLWZpZWxkLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBVc2VyTGlzdEZpZWxkQ29tcG9uZW50IH0gZnJvbSAnLi91c2VyLWxpc3QtZmllbGQvdXNlci1saXN0LWZpZWxkLmNvbXBvbmVudCc7XG5pbXBvcnQge1xuICAgIFNpZGVNZW51TXVsdGlVc2VyQXNzaWduQ29tcG9uZW50TW9kdWxlXG59IGZyb20gXCIuLi9zaWRlLW1lbnUvY29udGVudC1jb21wb25lbnRzL211bHRpLXVzZXItYXNzaWduL3NpZGUtbWVudS1tdWx0aS11c2VyLWFzc2lnbi1jb21wb25lbnQubW9kdWxlXCI7XG5pbXBvcnQgeyBOdW1iZXJEZWNpbWFsRmllbGRDb21wb25lbnQgfSBmcm9tICcuL251bWJlci1maWVsZC9udW1iZXItZGVjaW1hbC1maWVsZC9udW1iZXItZGVjaW1hbC1maWVsZC5jb21wb25lbnQnO1xuaW1wb3J0IHtUYXNrUmVmRmllbGRDb21wb25lbnR9IGZyb20gJy4vdGFzay1yZWYtZmllbGQvdGFzay1yZWYtZmllbGQuY29tcG9uZW50JztcbmltcG9ydCB7XG4gICAgVGFza1JlZkRhc2hib2FyZFRpbGVDb21wb25lbnRcbn0gZnJvbSAnLi90YXNrLXJlZi1maWVsZC90YXNrLXJlZi1kYXNoYm9hcmQtZmllbGQvdGFzay1yZWYtZGFzaGJvYXJkLXRpbGUvdGFzay1yZWYtZGFzaGJvYXJkLXRpbGUuY29tcG9uZW50JztcbmltcG9ydCB7XG4gICAgRGFzaGJvYXJkTGluZUNoYXJ0VGV4dEZpZWxkQ29tcG9uZW50XG59IGZyb20gJy4vdGV4dC1maWVsZC9kYXNoYm9hcmQtbGluZS1jaGFydC10ZXh0LWZpZWxkL2Rhc2hib2FyZC1saW5lLWNoYXJ0LXRleHQtZmllbGQuY29tcG9uZW50JztcbmltcG9ydCB7RGFzaGJvYXJkQ29tcG9uZW50TW9kdWxlfSBmcm9tICcuLi9kYXNoYm9hcmQvZGFzaGJvYXJkLm1vZHVsZSc7XG5pbXBvcnQge1xuICAgIERhc2hib2FyZFBpZUNoYXJ0VGV4dEZpZWxkQ29tcG9uZW50XG59IGZyb20gJy4vdGV4dC1maWVsZC9kYXNoYm9hcmQtcGllLWNoYXJ0LXRleHQtZmllbGQvZGFzaGJvYXJkLXBpZS1jaGFydC10ZXh0LWZpZWxkLmNvbXBvbmVudCc7XG5pbXBvcnQge1xuICAgIERhc2hib2FyZFBvcnRhbFRleHRGaWVsZENvbXBvbmVudFxufSBmcm9tICcuL3RleHQtZmllbGQvZGFzaGJvYXJkLXBvcnRhbC10ZXh0LWZpZWxkL2Rhc2hib2FyZC1wb3J0YWwtdGV4dC1maWVsZC5jb21wb25lbnQnO1xuaW1wb3J0IHtcbiAgICBEYXNoYm9hcmRCYXJDaGFydFRleHRGaWVsZENvbXBvbmVudFxufSBmcm9tICcuL3RleHQtZmllbGQvZGFzaGJvYXJkLWJhci1jaGFydC10ZXh0LWZpZWxkL2Rhc2hib2FyZC1iYXItY2hhcnQtdGV4dC1maWVsZC5jb21wb25lbnQnO1xuaW1wb3J0IHtcbiAgICBEYXNoYm9hcmRJZnJhbWVUZXh0RmllbGRDb21wb25lbnRcbn0gZnJvbSAnLi90ZXh0LWZpZWxkL2Rhc2hib2FyZC1pZnJhbWUtdGV4dC1maWVsZC9kYXNoYm9hcmQtaWZyYW1lLXRleHQtZmllbGQuY29tcG9uZW50JztcbmltcG9ydCB7IFJvdXRlck1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL3JvdXRlcic7XG5pbXBvcnQgeyBGaWx0ZXJGaWVsZFRhYlZpZXdDb250ZW50Q29tcG9uZW50IH0gZnJvbSAnLi9maWx0ZXItZmllbGQvdGFiLXZpZXctZmlsdGVyLWZpZWxkL2ZpbHRlci1maWVsZC10YWItdmlldy1jb250ZW50LmNvbXBvbmVudCc7XG5pbXBvcnQgeyBCb29sZWFuRGVmYXVsdEZpZWxkQ29tcG9uZW50IH0gZnJvbSAnLi9ib29sZWFuLWZpZWxkL2Jvb2xlYW4tZGVmYXVsdC1maWVsZC9ib29sZWFuLWRlZmF1bHQtZmllbGQuY29tcG9uZW50JztcbmltcG9ydCB7IEJ1dHRvbkRlZmF1bHRGaWVsZENvbXBvbmVudCB9IGZyb20gJy4vYnV0dG9uLWZpZWxkL2J1dHRvbi1kZWZhdWx0LWZpZWxkL2J1dHRvbi1kZWZhdWx0LWZpZWxkLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBEYXRlRGVmYXVsdEZpZWxkQ29tcG9uZW50IH0gZnJvbSAnLi9kYXRlLWZpZWxkL2RhdGUtZGVmYXVsdC1maWVsZC9kYXRlLWRlZmF1bHQtZmllbGQuY29tcG9uZW50JztcbmltcG9ydCB7IERhdGVUaW1lRGVmYXVsdEZpZWxkQ29tcG9uZW50IH0gZnJvbSAnLi9kYXRlLXRpbWUtZmllbGQvZGF0ZS10aW1lLWRlZmF1bHQtZmllbGQvZGF0ZS10aW1lLWRlZmF1bHQtZmllbGQuY29tcG9uZW50JztcbmltcG9ydCB7IEZpbGVEZWZhdWx0RmllbGRDb21wb25lbnQgfSBmcm9tICcuL2ZpbGUtZmllbGQvZmlsZS1kZWZhdWx0LWZpZWxkL2ZpbGUtZGVmYXVsdC1maWVsZC5jb21wb25lbnQnO1xuaW1wb3J0IHsgRmlsZUxpc3REZWZhdWx0RmllbGRDb21wb25lbnQgfSBmcm9tICcuL2ZpbGUtbGlzdC1maWVsZC9maWxlLWxpc3QtZGVmYXVsdC1maWVsZC9maWxlLWxpc3QtZGVmYXVsdC1maWVsZC5jb21wb25lbnQnO1xuaW1wb3J0IHsgRmlsdGVyRGVmYXVsdEZpZWxkQ2