@netgrif/components
Version:
Netgrif Application Engine frontend Angular components
341 lines • 64.8 kB
JavaScript
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