barsa-novin-ray-core 2.0.121 → 2.0.122
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/esm2022/lib/barsa-novin-ray-core.module.mjs +15 -9
- package/esm2022/lib/directives/index.mjs +2 -1
- package/esm2022/lib/directives/load-external-files.directive.mjs +37 -0
- package/esm2022/lib/pipes/hide-columns-inmobile.pipe.mjs +22 -0
- package/esm2022/lib/pipes/index.mjs +2 -1
- package/esm2022/lib/root-portal/root-portal.component.mjs +69 -91
- package/esm2022/lib/services/portal.service.mjs +4 -1
- package/fesm2022/barsa-novin-ray-core.mjs +136 -97
- package/fesm2022/barsa-novin-ray-core.mjs.map +1 -1
- package/lib/barsa-novin-ray-core.module.d.ts +36 -34
- package/lib/directives/index.d.ts +1 -0
- package/lib/directives/load-external-files.directive.d.ts +8 -0
- package/lib/pipes/hide-columns-inmobile.pipe.d.ts +8 -0
- package/lib/pipes/index.d.ts +1 -0
- package/package.json +1 -1
|
@@ -25,8 +25,8 @@ import { FormPageComponent } from './abstract-classes/form-page.component';
|
|
|
25
25
|
import { FormFieldReportPageComponent } from './abstract-classes';
|
|
26
26
|
import { PortalPageSidebarComponent } from './portal-page/portal-sidebar.component';
|
|
27
27
|
import { BreadcrumbService, UploadService, ApiService, LogService, BarsaDialogService, PortalService, UiService, LayoutService, DynamicComponentService, NetworkStatusService, AudioRecordingService, VideoRecordingService, PromptUpdateService, BarsaStorageService, LocalStorageService, IndexedDbService, NotificationService, ServiceWorkerNotificationService, ServiceWorkerCommuncationService, SaveScrollPositionService } from './services';
|
|
28
|
-
import { DynamicCommandDirective, ItemsRendererDirective, NumbersOnlyInputDirective, PlaceHolderDirective, RenderUlvPaginDirective, ImageLazyDirective, UntilInViewDirective, IntersectionObserverDirective, EllipsifyDirective, TableResizerDirective, ColumnResizerDirective, AttrRtlDirective, RenderUlvViewerDirective, UlvCommandDirective, WorfkflowwChoiceCommandDirective, CopyDirective, EllapsisTextDirective, FillEmptySpaceDirective, FormCloseDirective, MobileDirective, BodyClickDirective, CountDownDirective, RouteFormChangeDirective, DynamicStyleDirective, NowraptextDirective, LabelmandatoryDirective, AbsoluteDivBodyDirective } from './directives';
|
|
29
|
-
import { NumeralPipe, CanUploadFilePipe, RemoveNewlinePipe, ConvertToStylePipe, FilterPipe, FilterTabPipe, FilterStringPipe, FioriIconPipe, SortPipe, GroupByPipe, MultipleGroupByPipe, MoValuePipe, MoReportValuePipe, HeaderFacetValuePipe, PictureFieldSourcePipe, TlbButtonsPipe, SeperatorFixPipe, MoReportValueConcatPipe, ContextMenuPipe, BbbTranslatePipe, BarsaIconDictPipe, FileInfoCountPipe, ControlUiPipe, VisibleValuePipe, DateTimeToCaptionPipe, FilterToolbarControlPipe, ListCountPipe, TotalSummaryPipe, MergeFieldsToColumnsPipe, FindColumnByDbNamePipe, FilterColumnsByDetailsPipe, MoInfoUlvMoListPipe, MoInfoUlvPagingPipe, ReversePipe, ColumnCustomUiPipe, SanitizeTextPipe, ColumnCustomComponentPipe, ColumnIconPipe, ColumnValuePipe, RowNumberPipe, ComboRowImagePipe, IsExpandedNodePipe, ThImageOrIconePipe, FindPreviewColumnPipe, ReplacePipe, FilterWorkflowInMobilePipe } from './pipes';
|
|
28
|
+
import { DynamicCommandDirective, ItemsRendererDirective, NumbersOnlyInputDirective, PlaceHolderDirective, RenderUlvPaginDirective, ImageLazyDirective, UntilInViewDirective, IntersectionObserverDirective, EllipsifyDirective, TableResizerDirective, ColumnResizerDirective, AttrRtlDirective, RenderUlvViewerDirective, UlvCommandDirective, WorfkflowwChoiceCommandDirective, CopyDirective, EllapsisTextDirective, FillEmptySpaceDirective, FormCloseDirective, MobileDirective, BodyClickDirective, CountDownDirective, RouteFormChangeDirective, DynamicStyleDirective, NowraptextDirective, LabelmandatoryDirective, AbsoluteDivBodyDirective, LoadExternalFilesDirective } from './directives';
|
|
29
|
+
import { NumeralPipe, CanUploadFilePipe, RemoveNewlinePipe, ConvertToStylePipe, FilterPipe, FilterTabPipe, FilterStringPipe, FioriIconPipe, SortPipe, GroupByPipe, MultipleGroupByPipe, MoValuePipe, MoReportValuePipe, HeaderFacetValuePipe, PictureFieldSourcePipe, TlbButtonsPipe, SeperatorFixPipe, MoReportValueConcatPipe, ContextMenuPipe, BbbTranslatePipe, BarsaIconDictPipe, FileInfoCountPipe, ControlUiPipe, VisibleValuePipe, DateTimeToCaptionPipe, FilterToolbarControlPipe, ListCountPipe, TotalSummaryPipe, MergeFieldsToColumnsPipe, FindColumnByDbNamePipe, FilterColumnsByDetailsPipe, MoInfoUlvMoListPipe, MoInfoUlvPagingPipe, ReversePipe, ColumnCustomUiPipe, SanitizeTextPipe, ColumnCustomComponentPipe, ColumnIconPipe, ColumnValuePipe, RowNumberPipe, ComboRowImagePipe, IsExpandedNodePipe, ThImageOrIconePipe, FindPreviewColumnPipe, ReplacePipe, FilterWorkflowInMobilePipe, HideColumnsInmobilePipe } from './pipes';
|
|
30
30
|
import { BarsaSapUiFormPageModule } from './form-page-routing';
|
|
31
31
|
import { ResizableModule } from './resizable-module/resizable.module';
|
|
32
32
|
import { Title } from '@angular/platform-browser';
|
|
@@ -84,7 +84,8 @@ const directives = [
|
|
|
84
84
|
DynamicStyleDirective,
|
|
85
85
|
NowraptextDirective,
|
|
86
86
|
LabelmandatoryDirective,
|
|
87
|
-
AbsoluteDivBodyDirective
|
|
87
|
+
AbsoluteDivBodyDirective,
|
|
88
|
+
LoadExternalFilesDirective
|
|
88
89
|
];
|
|
89
90
|
const pipes = [
|
|
90
91
|
NumeralPipe,
|
|
@@ -132,7 +133,8 @@ const pipes = [
|
|
|
132
133
|
ThImageOrIconePipe,
|
|
133
134
|
FindPreviewColumnPipe,
|
|
134
135
|
ReplacePipe,
|
|
135
|
-
FilterWorkflowInMobilePipe
|
|
136
|
+
FilterWorkflowInMobilePipe,
|
|
137
|
+
HideColumnsInmobilePipe
|
|
136
138
|
];
|
|
137
139
|
const functionL1 = function () {
|
|
138
140
|
if (BarsaApi.LoginFormData.Culture === 'fa-IR') {
|
|
@@ -313,7 +315,8 @@ export class BarsaNovinRayCoreModule extends BaseModule {
|
|
|
313
315
|
ThImageOrIconePipe,
|
|
314
316
|
FindPreviewColumnPipe,
|
|
315
317
|
ReplacePipe,
|
|
316
|
-
FilterWorkflowInMobilePipe,
|
|
318
|
+
FilterWorkflowInMobilePipe,
|
|
319
|
+
HideColumnsInmobilePipe, PlaceHolderDirective,
|
|
317
320
|
NumbersOnlyInputDirective,
|
|
318
321
|
RenderUlvViewerDirective,
|
|
319
322
|
RenderUlvPaginDirective,
|
|
@@ -340,7 +343,8 @@ export class BarsaNovinRayCoreModule extends BaseModule {
|
|
|
340
343
|
DynamicStyleDirective,
|
|
341
344
|
NowraptextDirective,
|
|
342
345
|
LabelmandatoryDirective,
|
|
343
|
-
AbsoluteDivBodyDirective
|
|
346
|
+
AbsoluteDivBodyDirective,
|
|
347
|
+
LoadExternalFilesDirective], imports: [CommonModule,
|
|
344
348
|
HttpClientModule,
|
|
345
349
|
BarsaNovinRayCoreRoutingModule,
|
|
346
350
|
BarsaSapUiFormPageModule,
|
|
@@ -408,7 +412,8 @@ export class BarsaNovinRayCoreModule extends BaseModule {
|
|
|
408
412
|
ThImageOrIconePipe,
|
|
409
413
|
FindPreviewColumnPipe,
|
|
410
414
|
ReplacePipe,
|
|
411
|
-
FilterWorkflowInMobilePipe,
|
|
415
|
+
FilterWorkflowInMobilePipe,
|
|
416
|
+
HideColumnsInmobilePipe, PlaceHolderDirective,
|
|
412
417
|
NumbersOnlyInputDirective,
|
|
413
418
|
RenderUlvViewerDirective,
|
|
414
419
|
RenderUlvPaginDirective,
|
|
@@ -435,7 +440,8 @@ export class BarsaNovinRayCoreModule extends BaseModule {
|
|
|
435
440
|
DynamicStyleDirective,
|
|
436
441
|
NowraptextDirective,
|
|
437
442
|
LabelmandatoryDirective,
|
|
438
|
-
AbsoluteDivBodyDirective
|
|
443
|
+
AbsoluteDivBodyDirective,
|
|
444
|
+
LoadExternalFilesDirective] }); }
|
|
439
445
|
static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "17.3.5", ngImport: i0, type: BarsaNovinRayCoreModule, imports: [CommonModule,
|
|
440
446
|
HttpClientModule,
|
|
441
447
|
BarsaNovinRayCoreRoutingModule,
|
|
@@ -457,4 +463,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.5", ngImpor
|
|
|
457
463
|
schemas: [NO_ERRORS_SCHEMA]
|
|
458
464
|
}]
|
|
459
465
|
}], ctorParameters: () => [{ type: i1.DynamicComponentService }, { type: i0.ComponentFactoryResolver }] });
|
|
460
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmFyc2Etbm92aW4tcmF5LWNvcmUubW9kdWxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vcHJvamVjdHMvYmFyc2Etbm92aW4tcmF5LWNvcmUvc3JjL2xpYi9iYXJzYS1ub3Zpbi1yYXktY29yZS5tb2R1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNILGVBQWUsRUFFZixZQUFZLEVBRVosUUFBUSxFQUNSLGdCQUFnQixFQUNuQixNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDL0MsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFFeEQsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLHVCQUF1QixDQUFDO0FBQ3RELE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLCtCQUErQixDQUFDO0FBRWpFLE9BQU8sRUFBRSx3QkFBd0IsRUFBRSxNQUFNLCtDQUErQyxDQUFDO0FBQ3pGLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLHNDQUFzQyxDQUFDO0FBQzdFLE9BQU8sRUFBRSw4QkFBOEIsRUFBRSxNQUFNLHVDQUF1QyxDQUFDO0FBQ3ZGLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBQzVELE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLCtCQUErQixDQUFDO0FBQ2pFLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLHFDQUFxQyxDQUFDO0FBQzFFLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxjQUFjLENBQUM7QUFFekMsT0FBTyxFQUNILG9CQUFvQixFQUNwQixvQkFBb0IsRUFDcEIsb0JBQW9CLEVBQ3BCLCtCQUErQixFQUMvQixzQkFBc0IsRUFDekIsTUFBTSxxQkFBcUIsQ0FBQztBQUM3QixPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQUMxRCxPQUFP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bnRGYWN0b3J5UmVzb2x2ZXIsXG4gICAgRXJyb3JIYW5kbGVyLFxuICAgIE1vZHVsZVdpdGhQcm92aWRlcnMsXG4gICAgTmdNb2R1bGUsXG4gICAgTk9fRVJST1JTX1NDSEVNQVxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQgeyBIdHRwQ2xpZW50TW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uL2h0dHAnO1xuXG5pbXBvcnQgeyBGb3JtQ29tcG9uZW50IH0gZnJvbSAnLi9mb3JtL2Zvcm0uY29tcG9uZW50JztcbmltcG9ydCB7IEZpZWxkVWlDb21wb25lbnQgfSBmcm9tICcuL2ZpZWxkLXVpL2ZpZWxkLXVpLmNvbXBvbmVudCc7XG5cbmltcG9ydCB7IFJlcG9ydENvbnRhaW5lckNvbXBvbmVudCB9IGZyb20gJy4vcmVwb3J0LWNvbnRhaW5lci9yZXBvcnQtY29udGFpbmVyLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBBbmNob3JTY3JvbGxEaXJlY3RpdmUgfSBmcm9tICcuL2RpcmVjdGl2ZXMvYW5jaG9yLXNjcm9sbC5kaXJlY3RpdmUnO1xuaW1wb3J0IHsgQmFyc2FOb3ZpblJheUNvcmVSb3V0aW5nTW9kdWxlIH0gZnJvbSAnLi9iYXJzYS1ub3Zpbi1yYXktY29yZS1yb3V0aW5nLm1vZHVsZSc7XG5pbXBvcnQgeyBNb2RhbFJvb3RDb21wb25lbnQgfSBmcm9tICcuL21vZGFsLXJvb3QuY29tcG9uZW50JztcbmltcG9ydCB7IEZvcm1OZXdDb21wb25lbnQgfSBmcm9tICcuL2Zvcm0tbmV3L2Zvcm0tbmV3LmNvbXBvbmVudCc7XG5pbXBvcnQgeyBSb290UG9ydGFsQ29tcG9uZW50IH0gZnJvbSAnLi9yb290LXBvcnRhbC9yb290LXBvcnRhbC5jb21wb25lbnQnO1xuaW1wb3J0IHsgQXV0aEd1YXJkIH0gZnJvbSAnLi9hdXRoLWd1YXJkJztcblxuaW1wb3J0IHtcbiAgICBEeW5hbWljRm9ybUNvbXBvbmVudCxcbiAgICBEeW5hbWljSXRlbUNvbXBvbmVudCxcbiAgICBCYXNlRHluYW1pY0NvbXBvbmVudCxcbiAgICBEeW5hbWljRm9ybVRvb2xiYXJpdGVtQ29tcG9uZW50LFxuICAgIER5bmFtaWNMYXlvdXRDb21wb25lbnRcbn0gZnJvbSAnLi9keW5hbWljLWNvbXBvbmVudCc7XG5pbXBvcnQgeyBSZWRpcmVjdEhvbWVHdWFyZCB9IGZyb20gJy4vcmVkaXJlY3QtaG9tZS1ndWFyZCc7XG5pbXBvcnQgeyBOb3RGb3VuZENvbXBvbmVudCB9IGZyb20gJy4vbm90LWZvdW5kL25vdC1mb3VuZC5jb21wb25lbnQnO1xuaW1wb3J0IHsgUm9vdFBhZ2VDb21wb25lbnQgfSBmcm9tICcuL3Jvb3QtcGFnZS9yb290LXBhZ2UuY29tcG9uZW50JztcbmltcG9ydCB7IEJhc2VNb2R1bGUgfSBmcm9tICcuL2Jhc2UubW9kdWxlJztcbmltcG9ydCB7IFBvcnRhbFBhZ2VDb21wb25lbnQgfSBmcm9tICcuL3BvcnRhbC1wYWdlL3BvcnRhbC1wYWdlLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBHbG9iYWxFcnJvckhhbmRsZXIgfSBmcm9tICcuL2dsb2JhbC1lcnJvci1oYW5kbGVyJztcblxuaW1wb3J0IHsgUmVkaXJlY3RSZXBvcnROYXZpZ2F0b3JDb21tYW5kQ29tcG9uZW50IH0gZnJvbSAnLi9yZWRpcmVjdC1yZXBvcnQtbmF2aWdhdG9yLWNvbW1hbmQvcmVkaXJlY3QtcmVwb3J0LW5hdmlnYXRvci1jb21tYW5kLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBFbXB0eVBhZ2VXaXRoUm91dGVyQW5kUm91dGVyT3V0bGV0Q29tcG9uZW50IH0gZnJvbSAnLi9lbXB0eS1wYWdlLXdpdGgtcm91dGVyLWFuZC1yb3V0ZXItb3V0bGV0L2VtcHR5LXBhZ2Utd2l0aC1yb3V0ZXItYW5kLXJvdXRlci1vdXRsZXQuY29tcG9uZW50JztcbmltcG9ydCB7IEVtcHR5UGFnZUNvbXBvbmVudCB9IGZyb20gJy4vZW1wdHktcGFnZS9lbXB0eS1wYWdlLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBCYXJzYUFwaSB9IGZyb20gJy4vYWJzdHJhY3QtY2xhc3Nlcy9iYXJzYS1hcGknO1xuaW1wb3J0IHsgRm9ybVBhZ2VDb21wb25lbnQgfSBmcm9tICcuL2Fic3RyYWN0LWNsYXNzZXMvZm9ybS1wYWdlLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBGb3JtRmllbGRSZXBvcnRQYWdlQ29tcG9uZW50IH0gZnJvbSAnLi9hYnN0cmFjdC1jbGFzc2VzJztcbmltcG9ydCB7IFBvcnRhbFBhZ2VTaWRlYmFyQ29tcG9uZW50IH0gZnJvbSAnLi9wb3J0YWwtcGFnZS9wb3J0YWwtc2lkZWJhci5jb21wb25lbnQnO1xuXG5pbXBvcnQge1xuICAgIEJyZWFkY3J1bWJTZXJ2aWNlLFxuICAgIFVwbG9hZFNlcnZpY2UsXG4gICAgQXBpU2VydmljZSxcbiAgICBMb2dTZXJ2aWNlLFxuICAgIEJhcnNhRGlhbG9nU2VydmljZSxcbiAgICBQb3J0YWxTZXJ2aWNlLFxuICAgIFVpU2VydmljZSxcbiAgICBMYXlvdXRTZXJ2aWNlLFxuICAgIER5bmFtaWNDb21wb25lbnRTZXJ2aWNlLFxuICAgIE5ldHdvcmtTdGF0dXNTZXJ2aWNlLFxuICAgIEF1ZGlvUmVjb3JkaW5nU2VydmljZSxcbiAgICBWaWRlb1JlY29yZGluZ1NlcnZpY2UsXG4gICAgUHJvbXB0VXBkYXRlU2VydmljZSxcbiAgICBCYXJzYVN0b3JhZ2VTZXJ2aWNlLFxuICAgIExvY2FsU3RvcmFnZVNlcnZpY2UsXG4gICAgSW5kZXhlZERiU2VydmljZSxcbiAgICBOb3RpZmljYXRpb25TZXJ2aWNlLFxuICAgIFNlcnZpY2VXb3JrZXJOb3RpZmljYXRpb25TZXJ2aWNlLFxuICAgIFNlcnZpY2VXb3JrZXJDb21tdW5jYXRpb25TZXJ2aWNlLFxuICAgIFNhdmVTY3JvbGxQb3NpdGlvblNlcnZpY2Vcbn0gZnJvbSAnLi9zZXJ2aWNlcyc7XG5pbXBvcnQge1xuICAgIER5bmFtaWNDb21tYW5kRGlyZWN0aXZlLFxuICAgIEl0ZW1zUmVuZGVyZXJEaXJlY3RpdmUsXG4gICAgTnVtYmVyc09ubHlJbnB1dERpcmVjdGl2ZSxcbiAgICBQbGFjZUhvbGRlckRpcmVjdGl2ZSxcbiAgICBSZW5kZXJVbHZQYWdpbkRpcmVjdGl2ZSxcbiAgICBJbWFnZUxhenlEaXJlY3RpdmUsXG4gICAgVW50aWxJblZpZXdEaXJlY3RpdmUsXG4gICAgSW50ZXJzZWN0aW9uT2JzZXJ2ZXJEaXJlY3RpdmUsXG4gICAgRWxsaXBzaWZ5RGlyZWN0aXZlLFxuICAgIFRhYmxlUmVzaXplckRpcmVjdGl2ZSxcbiAgICBDb2x1bW5SZXNpemVyRGlyZWN0aXZlLFxuICAgIEF0dHJSdGxEaXJlY3RpdmUsXG4gICAgUmVuZGVyVWx2Vmlld2VyRGlyZWN0aXZlLFxuICAgIFVsdkNvbW1hbmREaXJlY3RpdmUsXG4gICAgV29yZmtmbG93d0Nob2ljZUNvbW1hbmREaXJlY3RpdmUsXG4gICAgQ29weURpcmVjdGl2ZSxcbiAgICBFbGxhcHNpc1RleHREaXJlY3RpdmUsXG4gICAgRmlsbEVtcHR5U3BhY2VEaXJlY3RpdmUsXG4gICAgRm9ybUNsb3NlRGlyZWN0aXZlLFxuICAgIE1vYmlsZURpcmVjdGl2ZSxcbiAgICBCb2R5Q2xpY2tEaXJlY3RpdmUsXG4gICAgQ291bnREb3duRGlyZWN0aXZlLFxuICAgIFJvdXRlRm9ybUNoYW5nZURpcmVjdGl2ZSxcbiAgICBEeW5hbWljU3R5bGVEaXJlY3RpdmUsXG4gICAgTm93cmFwdGV4dERpcmVjdGl2ZSxcbiAgICBMYWJlbG1hbmRhdG9yeURpcmVjdGl2ZSxcbiAgICBBYnNvbHV0ZURpdkJvZHlEaXJlY3RpdmVcbn0gZnJvbSAnLi9kaXJlY3RpdmVzJztcbmltcG9ydCB7XG4gICAgTnVtZXJhbFBpcGUsXG4gICAgQ2FuVXBsb2FkRmlsZVBpcGUsXG4gICAgUmVtb3ZlTmV3bGluZVBpcGUsXG4gICAgQ29udmVydFRvU3R5bGVQaXBlLFxuICAgIEZpbHRlclBpcGUsXG4gICAgRmlsdGVyVGFiUGlwZSxcbiAgICBGaWx0ZXJTdHJpbmdQaXBlLFxuICAgIEZpb3JpSWNvblBpcGUsXG4gICAgU29ydFBpcGUsXG4gICAgR3JvdXBCeVBpcGUsXG4gICAgTXVsdGlwbGVHcm91cEJ5UGlwZSxcbiAgICBNb1ZhbHVlUGlwZSxcbiAgICBNb1JlcG9ydFZhbHVlUGlwZSxcbiAgICBIZWFkZXJGYWNldFZhbHVlUGlwZSxcbiAgICBQaWN0dXJlRmllbGRTb3VyY2VQaXBlLFxuICAgIFRsYkJ1dHRvbnNQaXBlLFxuICAgIFNlcGVyYXRvckZpeFBpcGUsXG4gICAgTW9SZXBvcnRWYWx1ZUNvbmNhdFBpcGUsXG4gICAgQ29udGV4dE1lbnVQaXBlLFxuICAgIEJiYlRyYW5zbGF0ZVBpcGUsXG4gICAgQmFyc2FJY29uRGljdFBpcGUsXG4gICAgRmlsZUluZm9Db3VudFBpcGUsXG4gICAgQ29udHJvbFVpUGlwZSxcbiAgICBWaXNpYmxlVmFsdWVQaXBlLFxuICAgIERhdGVUaW1lVG9DYXB0aW9uUGlwZSxcbiAgICBGaWx0ZXJUb29sYmFyQ29udHJvbFBpcGUsXG4gICAgTGlzdENvdW50UGlwZSxcbiAgICBUb3RhbFN1bW1hcnlQaXBlLFxuICAgIE1lcmdlRmllbGRzVG9Db2x1bW5zUGlwZSxcbiAgICBGaW5kQ29sdW1uQnlEYk5hbWVQaXBlLFxuICAgIEZpbHRlckNvbHVtbnNCeURldGFpbHNQaXBlLFxuICAgIE1vSW5mb1Vsdk1vTGlzdFBpcGUsXG4gICAgTW9JbmZvVWx2UGFnaW5nUGlwZSxcbiAgICBSZXZlcnNlUGlwZSxcbiAgICBDb2x1bW5DdXN0b21VaVBpcGUsXG4gICAgU2FuaXRpemVUZXh0UGlwZSxcbiAgICBDb2x1bW5DdXN0b21Db21wb25lbnRQaXBlLFxuICAgIENvbHVtbkljb25QaXBlLFxuICAgIENvbHVtblZhbHVlUGlwZSxcbiAgICBSb3dOdW1iZXJQaXBlLFxuICAgIENvbWJvUm93SW1hZ2VQaXBlLFxuICAgIElzRXhwYW5kZWROb2RlUGlwZSxcbiAgICBUaEltYWdlT3JJY29uZVBpcGUsXG4gICAgRmluZFByZXZpZXdDb2x1bW5QaXBlLFxuICAgIFJlcGxhY2VQaXBlLFxuICAgIEZpbHRlcldvcmtmbG93SW5Nb2JpbGVQaXBlXG59IGZyb20gJy4vcGlwZXMnO1xuaW1wb3J0IHsgQmFyc2FTYXBVaUZvcm1QYWdlTW9kdWxlIH0gZnJvbSAnLi9mb3JtLXBhZ2Utcm91dGluZyc7XG5pbXBvcnQgeyBSZXNpemFibGVNb2R1bGUgfSBmcm9tICcuL3Jlc2l6YWJsZS1tb2R1bGUvcmVzaXphYmxlLm1vZHVsZSc7XG5pbXBvcnQgeyBUaXRsZSB9IGZyb20gJ0Bhbmd1bGFyL3BsYXRmb3JtLWJyb3dzZXInO1xuaW1wb3J0IHsgaXNJbkxvY2FsTW9kZSB9IGZyb20gJy4vY29uc3RhbnRzJztcbmltcG9ydCB7IFJvdXRlciB9IGZyb20gJ0Bhbmd1bGFyL3JvdXRlcic7XG5cbi8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBuby12YXJcbmRlY2xhcmUgdmFyIEJCQjogYW55O1xuXG5jb25zdCBjb21wb25lbnRzID0gW1xuICAgIEZvcm1Db21wb25lbnQsXG4gICAgRmllbGRVaUNvbXBvbmVudCxcbiAgICBOb3RGb3VuZENvbXBvbmVudCxcbiAgICBSb290UGFnZUNvbXBvbmVudCxcbiAgICBSb290UG9ydGFsQ29tcG9uZW50LFxuICAgIFJlcG9ydENvbnRhaW5lckNvbXBvbmVudCxcbiAgICBGb3JtTmV3Q29tcG9uZW50LFxuICAgIE1vZGFsUm9vdENvbXBvbmVudCxcbiAgICBQb3J0YWxQYWdlQ29tcG9uZW50LFxuICAgIFBvcnRhbFBhZ2VTaWRlYmFyQ29tcG9uZW50LFxuICAgIFJlZGlyZWN0UmVwb3J0TmF2aWdhdG9yQ29tbWFuZENvbXBvbmVudCxcbiAgICBFbXB0eVBhZ2VXaXRoUm91dGVyQW5kUm91dGVyT3V0bGV0Q29tcG9uZW50LFxuICAgIER5bmFtaWNJdGVtQ29tcG9uZW50LFxuICAgIER5bmFtaWNGb3JtQ29tcG9uZW50LFxuICAgIEJhc2VEeW5hbWljQ29tcG9uZW50LFxuICAgIER5bmFtaWNGb3JtVG9vbGJhcml0ZW1Db21wb25lbnQsXG4gICAgRHluYW1pY0xheW91dENvbXBvbmVudCxcbiAgICBFbXB0eVBhZ2VDb21wb25lbnQsXG4gICAgRm9ybVBhZ2VDb21wb25lbnQsXG4gICAgRm9ybUZpZWxkUmVwb3J0UGFnZUNvbXBvbmVudFxuXTtcbmNvbnN0IGRpcmVjdGl2ZXMgPSBbXG4gICAgUGxhY2VIb2xkZXJEaXJlY3RpdmUsXG4gICAgTnVtYmVyc09ubHlJbnB1dERpcmVjdGl2ZSxcbiAgICBSZW5kZXJVbHZWaWV3ZXJEaXJlY3RpdmUsXG4gICAgUmVuZGVyVWx2UGFnaW5EaXJlY3RpdmUsXG4gICAgQW5jaG9yU2Nyb2xsRGlyZWN0aXZlLFxuICAgIEl0ZW1zUmVuZGVyZXJEaXJlY3RpdmUsXG4gICAgVWx2Q29tbWFuZERpcmVjdGl2ZSxcbiAgICBEeW5hbWljQ29tbWFuZERpcmVjdGl2ZSxcbiAgICBXb3Jma2Zsb3d3Q2hvaWNlQ29tbWFuZERpcmVjdGl2ZSxcbiAgICBJbWFnZUxhenlEaXJlY3RpdmUsXG4gICAgVW50aWxJblZpZXdEaXJlY3RpdmUsXG4gICAgSW50ZXJzZWN0aW9uT2JzZXJ2ZXJEaXJlY3RpdmUsXG4gICAgRWxsaXBzaWZ5RGlyZWN0aXZlLFxuICAgIFRhYmxlUmVzaXplckRpcmVjdGl2ZSxcbiAgICBDb2x1bW5SZXNpemVyRGlyZWN0aXZlLFxuICAgIEF0dHJSdGxEaXJlY3RpdmUsXG4gICAgQ29weURpcmVjdGl2ZSxcbiAgICBFbGxhcHNpc1RleHREaXJlY3RpdmUsXG4gICAgRmlsbEVtcHR5U3BhY2VEaXJlY3RpdmUsXG4gICAgRm9ybUNsb3NlRGlyZWN0aXZlLFxuICAgIE1vYmlsZURpcmVjdGl2ZSxcbiAgICBCb2R5Q2xpY2tEaXJlY3RpdmUsXG4gICAgQ291bnREb3duRGlyZWN0aXZlLFxuICAgIFJvdXRlRm9ybUNoYW5nZURpcmVjdGl2ZSxcbiAgICBEeW5hbWljU3R5bGVEaXJlY3RpdmUsXG4gICAgTm93cmFwdGV4dERpcmVjdGl2ZSxcbiAgICBMYWJlbG1hbmRhdG9yeURpcmVjdGl2ZSxcbiAgICBBYnNvbHV0ZURpdkJvZHlEaXJlY3RpdmVcbl07XG5jb25zdCBwaXBlcyA9IFtcbiAgICBOdW1lcmFsUGlwZSxcbiAgICBDYW5VcGxvYWRGaWxlUGlwZSxcbiAgICBSZW1vdmVOZXdsaW5lUGlwZSxcbiAgICBDb252ZXJ0VG9TdHlsZVBpcGUsXG4gICAgRmlsdGVyUGlwZSxcbiAgICBGaWx0ZXJUYWJQaXBlLFxuICAgIEZpbHRlclN0cmluZ1BpcGUsXG4gICAgRmlvcmlJY29uUGlwZSxcbiAgICBTb3J0UGlwZSxcbiAgICBHcm91cEJ5UGlwZSxcbiAgICBNdWx0aXBsZUdyb3VwQnlQaXBlLFxuICAgIE1vVmFsdWVQaXBlLFxuICAgIE1vUmVwb3J0VmFsdWVQaXBlLFxuICAgIEhlYWRlckZhY2V0VmFsdWVQaXBlLFxuICAgIFBpY3R1cmVGaWVsZFNvdXJjZVBpcGUsXG4gICAgVGxiQnV0dG9uc1BpcGUsXG4gICAgU2VwZXJhdG9yRml4UGlwZSxcbiAgICBNb1JlcG9ydFZhbHVlQ29uY2F0UGlwZSxcbiAgICBDb250ZXh0TWVudVBpcGUsXG4gICAgQmJiVHJhbnNsYXRlUGlwZSxcbiAgICBCYXJzYUljb25EaWN0UGlwZSxcbiAgICBGaWxlSW5mb0NvdW50UGlwZSxcbiAgICBDb250cm9sVWlQaXBlLFxuICAgIFZpc2libGVWYWx1ZVBpcGUsXG4gICAgRGF0ZVRpbWVUb0NhcHRpb25QaXBlLFxuICAgIEZpbHRlclRvb2xiYXJDb250cm9sUGlwZSxcbiAgICBMaXN0Q291bnRQaXBlLFxuICAgIFRvdGFsU3VtbWFyeVBpcGUsXG4gICAgTWVyZ2VGaWVsZHNUb0NvbHVtbnNQaXBlLFxuICAgIEZpbmRDb2x1bW5CeURiTmFtZVBpcGUsXG4gICAgRmlsdGVyQ29sdW1uc0J5RGV0YWlsc1BpcGUsXG4gICAgTW9JbmZvVWx2TW9MaXN0UGlwZSxcbiAgICBNb0luZm9VbHZQYWdpbmdQaXBlLFxuICAgIFJldmVyc2VQaXBlLFxuICAgIENvbHVtbkN1c3RvbVVpUGlwZSxcbiAgICBTYW5pdGl6ZVRleHRQaXBlLFxuICAgIENvbHVtbkN1c3RvbUNvbXBvbmVudFBpcGUsXG4gICAgQ29sdW1uSWNvblBpcGUsXG4gICAgQ29sdW1uVmFsdWVQaXBlLFxuICAgIFJvd051bWJlclBpcGUsXG4gICAgQ29tYm9Sb3dJbWFnZVBpcGUsXG4gICAgSXNFeHBhbmRlZE5vZGVQaXBlLFxuICAgIFRoSW1hZ2VPckljb25lUGlwZSxcbiAgICBGaW5kUHJldmlld0NvbHVtblBpcGUsXG4gICAgUmVwbGFjZVBpcGUsXG4gICAgRmlsdGVyV29ya2Zsb3dJbk1vYmlsZVBpcGVcbl07XG5jb25zdCBmdW5jdGlvbkwxID0gZnVuY3Rpb24gKCk6IFByb21pc2U8dm9pZD4ge1xuICAgIGlmIChCYXJzYUFwaS5Mb2dpbkZvcm1EYXRhLkN1bHR1cmUgPT09ICdmYS1JUicpIHtcbiAgICAgICAgcmV0dXJuIFByb21pc2UucmVzb2x2ZSgpO1xuICAgIH1cbiAgICByZXR1cm4gZmV0Y2goYC9Mb2NhbGl6YXRpb24vVHJhbnNsYXRpb24vZGF0YV8ke0JhcnNhQXBpLkxvZ2luRm9ybURhdGEuQ3VsdHVyZX0uanNvbmApXG4gICAgICAgIC50aGVuKGZ1bmN0aW9uIChyZXMpIHtcbiAgICAgICAgICAgIHJldHVybiByZXMuanNvbigpO1xuICAgICAgICB9KVxuICAgICAgICAudGhlbihmdW5jdGlvbiAocmVzKSB7XG4gICAgICAgICAgICBpZiAoQkJCKSB7XG4gICAgICAgICAgICAgICAgLy8gZXNsaW50LWRpc2FibGVcbiAgICAgICAgICAgICAgICBCQkIgPSB7IC4uLkJhcnNhQXBpLkJCQiwgLi4ucmVzIH07XG4gICAgICAgICAgICB9XG4gICAgICAgIH0pO1xufTtcbmNvbnN0IGZ1bmN0aW9uTDIgPSBmdW5jdGlvbiAocG9ydGFsU2VydmljZTogUG9ydGFsU2VydmljZSwgdGl0bGVTZXJ2aWNlOiBUaXRsZSk6IFByb21pc2U8YW55PiB7XG4gICAgcG9ydGFsU2VydmljZS5sb2FkVXNlclBvcnRhbFNldHRpbmcoKTtcbiAgICBwb3J0YWxTZXJ2aWNlLmxvYWRQb3J0YWxEYXRhU3luYygpO1xuICAgIGlmIChwb3J0YWxTZXJ2aWNlLnBvcnRhbERhdGE/LlRpdGxlKSB7XG4gICAgICAgIHRpdGxlU2VydmljZS5zZXRUaXRsZShwb3J0YWxTZXJ2aWNlLnBvcnRhbERhdGE/LlRpdGxlKTtcbiAgICB9XG4gICAgaWYgKEJhcnNhQXBpLkxvZ2luRm9ybURhdGEuSXNBbm9ueW1vdXMgJiYgIUJhcnNhQXBpLkxvZ2luRm9ybURhdGEuSXNTZXJ2aWNlRGVzaykge1xuICAgICAgICByZXR1cm4gcG9ydGFsU2VydmljZS5sb2FkU3lzdGVtKEJhcnNhQXBpLkxvZ2luRm9ybURhdGEuUG9ydGFsU3lzdGVtSWQpOyAvLyBsb2dpbiBmb3JtIG5lZWQganVzdCBwb3J0YWwgc3lzdGVtXG4gICAgfSBlbHNlIHtcbiAgICAgICAgcmV0dXJuIHBvcnRhbFNlcnZpY2UubG9hZFN5c3RlbSgpOyAvLyBsb2FkIGFsbCBzeXN0ZW1zIGlmIHVzZXIgaXMgbG9nZ2VkIGluXG4gICAgfVxufTtcbkBOZ01vZHVsZSh7XG4gICAgZGVjbGFyYXRpb25zOiBbLi4uY29tcG9uZW50cywgLi4ucGlwZXMsIC4uLmRpcmVjdGl2ZXNdLFxuICAgIGltcG9ydHM6IFtcbiAgICAgICAgQ29tbW9uTW9kdWxlLFxuICAgICAgICBIdHRwQ2xpZW50TW9kdWxlLFxuICAgICAgICBCYXJzYU5vdmluUmF5Q29yZVJvdXRpbmdNb2R1bGUsXG4gICAgICAgIEJhcnNhU2FwVWlGb3JtUGFnZU1vZHVsZSxcbiAgICAgICAgUmVzaXphYmxlTW9kdWxlXG4gICAgXSxcbiAgICBleHBvcnRzOiBbLi4uY29tcG9uZW50cywgLi4ucGlwZXMsIC4uLmRpcmVjdGl2ZXNdLFxuICAgIHNjaGVtYXM6IFtOT19FUlJPUlNfU0NIRU1BXVxufSlcbmV4cG9ydCBjbGFzcyBCYXJzYU5vdmluUmF5Q29yZU1vZHVsZSBleHRlbmRzIEJhc2VNb2R1bGUge1xuICAgIHByb3RlY3RlZCBkeW5hbWljQ29tcG9uZW50cyA9IFsuLi5jb21wb25lbnRzXTtcbiAgICBjb25zdHJ1Y3Rvcihwcm90ZWN0ZWQgZGNtOiBEeW5hbWljQ29tcG9uZW50U2VydmljZSwgcHJvdGVjdGVkIGNvbXBvbmVudEZhY3RvcnlSZXNvbHZlcjogQ29tcG9uZW50RmFjdG9yeVJlc29sdmVyKSB7XG4gICAgICAgIHN1cGVyKGRjbSwgY29tcG9uZW50RmFjdG9yeVJlc29sdmVyLCAnQmFyc2FOb3ZpblJheUNvcmVNb2R1bGUnKTtcbiAgICB9XG4gICAgc3RhdGljIGZvclJvb3QoKTogTW9kdWxlV2l0aFByb3ZpZGVyczxCYXJzYU5vdmluUmF5Q29yZU1vZHVsZT4ge1xuICAgICAgICByZXR1cm4ge1xuICAgICAgICAgICAgbmdNb2R1bGU6IEJhcnNhTm92aW5SYXlDb3JlTW9kdWxlLFxuICAgICAgICAgICAgcHJvdmlkZXJzOiBbXG4gICAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgICAgICBwcm92aWRlOiBBUFBfSU5JVElBTElaRVIsXG4gICAgICAgICAgICAgICAgICAgIHVzZUZhY3Rvcnk6XG4gICAgICAgICAgICAgICAgICAgICAgICAoXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcG9ydGFsU2VydmljZTogUG9ydGFsU2VydmljZSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB0aXRsZVNlcnZpY2U6IFRpdGxlLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHByb21wdFVwZGF0ZVNlcnZpY2U6IFByb21wdFVwZGF0ZVNlcnZpY2UsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgYmFyc2FTdG9yYWdlU2VydmljZTogQmFyc2FTdG9yYWdlU2VydmljZSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBzd0NvbW11bmljYXRpb246IFNlcnZpY2VXb3JrZXJDb21tdW5jYXRpb25TZXJ2aWNlLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIG5ldHdvcmtTdGF0dXNTZXJ2aWNlOiBOZXR3b3JrU3RhdHVzU2VydmljZSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICByb3V0ZXI6IFJvdXRlclxuICAgICAgICAgICAgICAgICAgICAgICAgKSA9PlxuICAgICAgICAgICAgICAgICAgICAgICAgKCkgPT4ge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IGluTG9jYWxNb2RlID0gaXNJbkxvY2FsTW9kZSgpO1xuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIHBvcnRhbFNlcnZpY2VcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLmxvYWRTZXJ2ZXJTdGFydHVwRGF0YSgpXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC50aGVuKCgpID0+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBQcm9taXNlLmFsbChbZnVuY3Rpb25MMSgpLCBmdW5jdGlvbkwyKHBvcnRhbFNlcnZpY2UsIHRpdGxlU2VydmljZSldKS5maW5hbGx5KCgpID0+IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBwcm9tcHRVcGRhdGVTZXJ2aWNlLmNoZWNrRm9yVXBkYXRlKCk7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYmFyc2FTdG9yYWdlU2VydmljZS5pbml0KCk7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3dDb21tdW5pY2F0aW9uLmluaXQoKTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0pXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIClcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLmNhdGNoKChlKSA9PiB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpZiAoIWluTG9jYWxNb2RlICYmICFuYXZpZ2F0b3Iub25MaW5lKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc29sZS5sb2coJ25vLWludGVybmV0Jyk7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcm91dGVyLm5hdmlnYXRlKFsnbm8taW50ZXJuZXQnXSk7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJvdXRlci5uYXZpZ2F0ZShbJ3NlcnZlci1jb25uZWN0aW9uLWVycm9yJ10pO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIFByb21pc2UucmVzb2x2ZSgpO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgICAgIGRlcHM6IFtcbiAgICAgICAgICAgICAgICAgICAgICAgIFBvcnRhbFNlcnZpY2UsXG4gICAgICAgICAgICAgICAgICAgICAgICBUaXRsZSxcbiAgICAgICAgICAgICAgICAgICAgICAgIFByb21wdFVwZGF0ZVNlcnZpY2UsXG4gICAgICAgICAgICAgICAgICAgICAgICBCYXJzYVN0b3JhZ2VTZXJ2aWNlLFxuICAgICAgICAgICAgICAgICAgICAgICAgU2VydmljZVdvcmtlckNvbW11bmNhdGlvblNlcnZpY2UsXG4gICAgICAgICAgICAgICAgICAgICAgICBOZXR3b3JrU3RhdHVzU2VydmljZSxcbiAgICAgICAgICAgICAgICAgICAgICAgIFJvdXRlclxuICAgICAgICAgICAgICAgICAgICBdLFxuICAgICAgICAgICAgICAgICAgICBtdWx0aTogdHJ1ZVxuICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgICAgICBwcm92aWRlOiBFcnJvckhhbmRsZXIsXG4gICAgICAgICAgICAgICAgICAgIHVzZUNsYXNzOiBHbG9iYWxFcnJvckhhbmRsZXJcbiAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgICAgcHJvdmlkZTogQVBQX0lOSVRJQUxJWkVSLFxuICAgICAgICAgICAgICAgICAgICB1c2VGYWN0b3J5OiAobm90aWZpY2F0aW9uU2VydmljZTogTm90aWZpY2F0aW9uU2VydmljZSkgPT4gKCkgPT4ge1xuICAgICAgICAgICAgICAgICAgICAgICAgQmFyc2FBcGkuVWwuTm90aWZpY2F0aW9uTWFuYWdlci5vbih7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgU2hvd1BvcHVwOiBub3RpZmljYXRpb25TZXJ2aWNlLmFkZE5vdGlmaWNhdGlvbi5iaW5kKG5vdGlmaWNhdGlvblNlcnZpY2UpLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIFB1Ymxpc2hFdmVudDogbm90aWZpY2F0aW9uU2VydmljZS5oYW5kbGVUb3BpYy5iaW5kKG5vdGlmaWNhdGlvblNlcnZpY2UpXG4gICAgICAgICAgICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgICAgZGVwczogW05vdGlmaWNhdGlvblNlcnZpY2VdLFxuICAgICAgICAgICAgICAgICAgICBtdWx0aTogdHJ1ZVxuICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgLi4ucGlwZXMsXG4gICAgICAgICAgICAgICAgUG9ydGFsU2VydmljZSxcbiAgICAgICAgICAgICAgICBVcGxvYWRTZXJ2aWNlLFxuICAgICAgICAgICAgICAgIEFwaVNlcnZpY2UsXG4gICAgICAgICAgICAgICAgTG9nU2VydmljZSxcbiAgICAgICAgICAgICAgICBCYXJzYURpYWxvZ1NlcnZpY2UsXG4gICAgICAgICAgICAgICAgVWlTZXJ2aWNlLFxuICAgICAgICAgICAgICAgIExheW91dFNlcnZpY2UsXG4gICAgICAgICAgICAgICAgRHluYW1pY0NvbXBvbmVudFNlcnZpY2UsXG4gICAgICAgICAgICAgICAgQnJlYWRjcnVtYlNlcnZpY2UsXG4gICAgICAgICAgICAgICAgQXV0aEd1YXJkLFxuICAgICAgICAgICAgICAgIE5ldHdvcmtTdGF0dXNTZXJ2aWNlLFxuICAgICAgICAgICAgICAgIEF1ZGlvUmVjb3JkaW5nU2VydmljZSxcbiAgICAgICAgICAgICAgICBWaWRlb1JlY29yZGluZ1NlcnZpY2UsXG4gICAgICAgICAgICAgICAgUmVkaXJlY3RIb21lR3VhcmQsXG4gICAgICAgICAgICAgICAgUHJvbXB0VXBkYXRlU2VydmljZSxcbiAgICAgICAgICAgICAgICBOb3RpZmljYXRpb25TZXJ2aWNlLFxuICAgICAgICAgICAgICAgIFNlcnZpY2VXb3JrZXJOb3RpZmljYXRpb25TZXJ2aWNlLFxuICAgICAgICAgICAgICAgIFNhdmVTY3JvbGxQb3NpdGlvblNlcnZpY2UsXG4gICAgICAgICAgICAgICAgTG9jYWxTdG9yYWdlU2VydmljZSxcbiAgICAgICAgICAgICAgICBJbmRleGVkRGJTZXJ2aWNlLFxuICAgICAgICAgICAgICAgIEJiYlRyYW5zbGF0ZVBpcGUsXG4gICAgICAgICAgICAgICAgQmFyc2FTdG9yYWdlU2VydmljZSxcbiAgICAgICAgICAgICAgICBTZXJ2aWNlV29ya2VyQ29tbXVuY2F0aW9uU2VydmljZVxuICAgICAgICAgICAgXVxuICAgICAgICB9O1xuICAgIH1cbn1cbiJdfQ==
|
|
466
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmFyc2Etbm92aW4tcmF5LWNvcmUubW9kdWxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vcHJvamVjdHMvYmFyc2Etbm92aW4tcmF5LWNvcmUvc3JjL2xpYi9iYXJzYS1ub3Zpbi1yYXktY29yZS5tb2R1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNILGVBQWUsRUFFZixZQUFZLEVBRVosUUFBUSxFQUNSLGdCQUFnQixFQUNuQixNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDL0MsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFFeEQsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLHVCQUF1QixDQUFDO0FBQ3RELE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLCtCQUErQixDQUFDO0FBRWpFLE9BQU8sRUFBRSx3QkFBd0IsRUFBRSxNQUFNLCtDQUErQyxDQUFDO0FBQ3pGLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLHNDQUFzQyxDQUFDO0FBQzdFLE9BQU8sRUFBRSw4QkFBOEIsRUFBRSxNQUFNLHVDQUF1QyxDQUFDO0FBQ3ZGLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBQzVELE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLCtCQUErQixDQUFDO0FBQ2pFLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLHFDQUFxQyxDQUFDO0FBQzFFLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxjQUFjLENBQUM7QUFFekMsT0FBTyxFQUNILG9CQUFvQixFQUNwQixvQkFBb0IsRUFDcEIsb0JBQW9CLEVBQ3BCLCtCQUErQixFQUMvQixzQkFBc0IsRUFDekIsTUFBTSxxQkFBcUIsQ0FBQztBQUM3QixPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQUMxRCxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxpQ0FBaUMsQ0FBQztBQUNwRSxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxpQ0FBaUMsQ0FBQztBQUNwRSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzNDLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLHFDQUFxQyxDQUFDO0FBQzFFLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBRTVELE9BQU8sRUFBRSx1Q0FBdUMsRUFBRSxNQUFNLGlGQUFpRixDQUFDO0FBQzFJLE9BQU8sRUFBRSwyQ0FBMkMsRUFBRSxNQUFNLCtGQUErRixDQUFDO0FBQzVKLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLG1DQUFtQyxDQUFDO0FBQ3ZFLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSw4QkFBOEIsQ0FBQztBQUN4RCxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSx3Q0FBd0MsQ0FBQztBQUMzRSxPQUFPLEVBQUUsNEJBQTRCLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQztBQUNsRSxPQUFPLEVBQUUsMEJBQTBCLEVBQUUsTUFBTSx3Q0FBd0MsQ0FBQztBQUVwRixPQUFPLEVBQ0gsaUJBQWlCLEVBQ2pCLGFBQWEsRUFDYixVQUFVLEVBQ1YsVUFBVSxFQUNWLGtCQUFrQixFQUNsQixhQUFhLEVBQ2IsU0FBUyxFQUNULGFBQWEsRUFDYix1QkFBdUIsRUFDdkIsb0JBQW9CLEVBQ3BCLHFCQUFxQixFQUNyQixxQkFBcUIsRUFDckIsbUJBQW1CLEVBQ25CLG1CQUFtQixFQUNuQixtQkFBbUIsRUFDbkIsZ0JBQWdCLEVBQ2hCLG1CQUFtQixFQUNuQixnQ0FBZ0MsRUFDaEMsZ0NBQWdDLEVBQ2hDLHlCQUF5QixFQUM1QixNQUFNLFlBQVksQ0FBQztBQUNwQixPQUFPLEVBQ0gsdUJBQXVCLEVBQ3ZCLHNCQUFzQixFQUN0Qix5QkFBeUIsRUFDekIsb0JBQW9CLEVBQ3BCLHVCQUF1QixFQUN2QixrQkFBa0IsRUFDbEIsb0JBQW9CLEVBQ3BCLDZCQUE2QixFQUM3QixrQkFBa0IsRUFDbEIscUJBQXFCLEVBQ3JCLHNCQUFzQixFQUN0QixnQkFBZ0IsRUFDaEIsd0JBQXdCLEVBQ3hCLG1CQUFtQixFQUNuQixnQ0FBZ0MsRUFDaEMsYUFBYSxFQUNiLHFCQUFxQixFQUNyQix1QkFBdUIsRUFDdkIsa0JBQWtCLEVBQ2xCLGVBQWUsRUFDZixrQkFBa0IsRUFDbEIsa0JBQWtCLEVBQ2xCLHdCQUF3QixFQUN4QixxQkFBcUIsRUFDckIsbUJBQW1CLEVBQ25CLHVCQUF1QixFQUN2Qix3QkFBd0IsRUFDeEIsMEJBQTBCLEVBQzdCLE1BQU0sY0FBYyxDQUFDO0FBQ3RCLE9BQU8sRUFDSCxXQUFXLEVBQ1gsaUJBQWlCLEVBQ2pCLGlCQUFpQixFQUNqQixrQkFBa0IsRUFDbEIsVUFBVSxFQUNWLGFBQWEsRUFDYixnQkFBZ0IsRUFDaEIsYUFBYSxFQUNiLFFBQVEsRUFDUixXQUFXLEVBQ1gsbUJBQW1CLEVBQ25CLFdBQVcsRUFDWCxpQkFBaUIsRUFDakIsb0JBQW9CLEVBQ3BCLHNCQUFzQixFQUN0QixjQUFjLEVBQ2QsZ0JBQWdCLEVBQ2hCLHVCQUF1QixFQUN2QixlQUFlLEVBQ2YsZ0JBQWdCLEVBQ2hCLGlCQUFpQixFQUNqQixpQkFBaUIsRUFDakIsYUFBYSxFQUNiLGdCQUFnQixFQUNoQixxQkFBcUIsRUFDckIsd0JBQXdCLEVBQ3hCLGFBQWEsRUFDYixnQkFBZ0IsRUFDaEIsd0JBQXdCLEVBQ3hCLHNCQUFzQixFQUN0QiwwQkFBMEIsRUFDMUIsbUJBQW1CLEVBQ25CLG1CQUFtQixFQUNuQixXQUFXLEVBQ1gsa0JBQWtCLEVBQ2xCLGdCQUFnQixFQUNoQix5QkFBeUIsRUFDekIsY0FBYyxFQUNkLGVBQWUsRUFDZixhQUFhLEVBQ2IsaUJBQWlCLEVBQ2pCLGtCQUFrQixFQUNsQixrQkFBa0IsRUFDbEIscUJBQXFCLEVBQ3JCLFdBQVcsRUFDWCwwQkFBMEIsRUFDMUIsdUJBQXVCLEVBQzFCLE1BQU0sU0FBUyxDQUFDO0FBQ2pCLE9BQU8sRUFBRSx3QkFBd0IsRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBQy9ELE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxxQ0FBcUMsQ0FBQztBQUN0RSxPQUFPLEVBQUUsS0FBSyxFQUFFLE1BQU0sMkJBQTJCLENBQUM7QUFDbEQsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLGFBQWEsQ0FBQztBQUM1QyxPQUFPLEVBQUUsTUFBTSxFQUFFLE1BQU0saUJBQWlCLENBQUM7OztBQUt6QyxNQUFNLFVBQVUsR0FBRztJQUNmLGFBQWE7SUFDYixnQkFBZ0I7SUFDaEIsaUJBQWlCO0lBQ2pCLGlCQUFpQjtJQUNqQixtQkFBbUI7SUFDbkIsd0JBQXdCO0lBQ3hCLGdCQUFnQjtJQUNoQixrQkFBa0I7SUFDbEIsbUJBQW1CO0lBQ25CLDBCQUEwQjtJQUMxQix1Q0FBdUM7SUFDdkMsMkNBQTJDO0lBQzNDLG9CQUFvQjtJQUNwQixvQkFBb0I7SUFDcEIsb0JBQW9CO0lBQ3BCLCtCQUErQjtJQUMvQixzQkFBc0I7SUFDdEIsa0JBQWtCO0lBQ2xCLGlCQUFpQjtJQUNqQiw0QkFBNEI7Q0FDL0IsQ0FBQztBQUNGLE1BQU0sVUFBVSxHQUFHO0lBQ2Ysb0JBQW9CO0lBQ3BCLHlCQUF5QjtJQUN6Qix3QkFBd0I7SUFDeEIsdUJBQXVCO0lBQ3ZCLHFCQUFxQjtJQUNyQixzQkFBc0I7SUFDdEIsbUJBQW1CO0lBQ25CLHVCQUF1QjtJQUN2QixnQ0FBZ0M7SUFDaEMsa0JBQWtCO0lBQ2xCLG9CQUFvQjtJQUNwQiw2QkFBNkI7SUFDN0Isa0JBQWtCO0lBQ2xCLHFCQUFxQjtJQUNyQixzQkFBc0I7SUFDdEIsZ0JBQWdCO0lBQ2hCLGFBQWE7SUFDYixxQkFBcUI7SUFDckIsdUJBQXVCO0lBQ3ZCLGtCQUFrQjtJQUNsQixlQUFlO0lBQ2Ysa0JBQWtCO0lBQ2xCLGtCQUFrQjtJQUNsQix3QkFBd0I7SUFDeEIscUJBQXFCO0lBQ3JCLG1CQUFtQjtJQUNuQix1QkFBdUI7SUFDdkIsd0JBQXdCO0lBQ3hCLDBCQUEwQjtDQUM3QixDQUFDO0FBQ0YsTUFBTSxLQUFLLEdBQUc7SUFDVixXQUFXO0lBQ1gsaUJBQWlCO0lBQ2pCLGlCQUFpQjtJQUNqQixrQkFBa0I7SUFDbEIsVUFBVTtJQUNWLGFBQWE7SUFDYixnQkFBZ0I7SUFDaEIsYUFBYTtJQUNiLFFBQVE7SUFDUixXQUFXO0lBQ1gsbUJBQW1CO0lBQ25CLFdBQVc7SUFDWCxpQkFBaUI7SUFDakIsb0JBQW9CO0lBQ3BCLHNCQUFzQjtJQUN0QixjQUFjO0lBQ2QsZ0JBQWdCO0lBQ2hCLHVCQUF1QjtJQUN2QixlQUFlO0lBQ2YsZ0JBQWdCO0lBQ2hCLGlCQUFpQjtJQUNqQixpQkFBaUI7SUFDakIsYUFBYTtJQUNiLGdCQUFnQjtJQUNoQixxQkFBcUI7SUFDckIsd0JBQXdCO0lBQ3hCLGFBQWE7SUFDYixnQkFBZ0I7SUFDaEIsd0JBQXdCO0lBQ3hCLHNCQUFzQjtJQUN0QiwwQkFBMEI7SUFDMUIsbUJBQW1CO0lBQ25CLG1CQUFtQjtJQUNuQixXQUFXO0lBQ1gsa0JBQWtCO0lBQ2xCLGdCQUFnQjtJQUNoQix5QkFBeUI7SUFDekIsY0FBYztJQUNkLGVBQWU7SUFDZixhQUFhO0lBQ2IsaUJBQWlCO0lBQ2pCLGtCQUFrQjtJQUNsQixrQkFBa0I7SUFDbEIscUJBQXFCO0lBQ3JCLFdBQVc7SUFDWCwwQkFBMEI7SUFDMUIsdUJBQXVCO0NBQzFCLENBQUM7QUFDRixNQUFNLFVBQVUsR0FBRztJQUNmLElBQUksUUFBUSxDQUFDLGFBQWEsQ0FBQyxPQUFPLEtBQUssT0FBTyxFQUFFLENBQUM7UUFDN0MsT0FBTyxPQUFPLENBQUMsT0FBTyxFQUFFLENBQUM7SUFDN0IsQ0FBQztJQUNELE9BQU8sS0FBSyxDQUFDLGtDQUFrQyxRQUFRLENBQUMsYUFBYSxDQUFDLE9BQU8sT0FBTyxDQUFDO1NBQ2hGLElBQUksQ0FBQyxVQUFVLEdBQUc7UUFDZixPQUFPLEdBQUcsQ0FBQyxJQUFJLEVBQUUsQ0FBQztJQUN0QixDQUFDLENBQUM7U0FDRCxJQUFJLENBQUMsVUFBVSxHQUFHO1FBQ2YsSUFBSSxHQUFHLEVBQUUsQ0FBQztZQUNOLGlCQUFpQjtZQUNqQixHQUFHLEdBQUcsRUFBRSxHQUFHLFFBQVEsQ0FBQyxHQUFHLEVBQUUsR0FBRyxHQUFHLEVBQUUsQ0FBQztRQUN0QyxDQUFDO0lBQ0wsQ0FBQyxDQUFDLENBQUM7QUFDWCxDQUFDLENBQUM7QUFDRixNQUFNLFVBQVUsR0FBRyxVQUFVLGFBQTRCLEVBQUUsWUFBbUI7SUFDMUUsYUFBYSxDQUFDLHFCQUFxQixFQUFFLENBQUM7SUFDdEMsYUFBYSxDQUFDLGtCQUFrQixFQUFFLENBQUM7SUFDbkMsSUFBSSxhQUFhLENBQUMsVUFBVSxFQUFFLEtBQUssRUFBRSxDQUFDO1FBQ2xDLFlBQVksQ0FBQyxRQUFRLENBQUMsYUFBYSxDQUFDLFVBQVUsRUFBRSxLQUFLLENBQUMsQ0FBQztJQUMzRCxDQUFDO0lBQ0QsSUFBSSxRQUFRLENBQUMsYUFBYSxDQUFDLFdBQVcsSUFBSSxDQUFDLFFBQVEsQ0FBQyxhQUFhLENBQUMsYUFBYSxFQUFFLENBQUM7UUFDOUUsT0FBTyxhQUFhLENBQUMsVUFBVSxDQUFDLFFBQVEsQ0FBQyxhQUFhLENBQUMsY0FBYyxDQUFDLENBQUMsQ0FBQyxxQ0FBcUM7SUFDakgsQ0FBQztTQUFNLENBQUM7UUFDSixPQUFPLGFBQWEsQ0FBQyxVQUFVLEVBQUUsQ0FBQyxDQUFDLHdDQUF3QztJQUMvRSxDQUFDO0FBQ0wsQ0FBQyxDQUFDO0FBYUYsTUFBTSxPQUFPLHVCQUF3QixTQUFRLFVBQVU7SUFFbkQsWUFBc0IsR0FBNEIsRUFBWSx3QkFBa0Q7UUFDNUcsS0FBSyxDQUFDLEdBQUcsRUFBRSx3QkFBd0IsRUFBRSx5QkFBeUIsQ0FBQyxDQUFDO1FBRDlDLFFBQUcsR0FBSCxHQUFHLENBQXlCO1FBQVksNkJBQXdCLEdBQXhCLHdCQUF3QixDQUEwQjtRQUR0RyxzQkFBaUIsR0FBRyxDQUFDLEdBQUcsVUFBVSxDQUFDLENBQUM7SUFHOUMsQ0FBQztJQUNELE1BQU0sQ0FBQyxPQUFPO1FBQ1YsT0FBTztZQUNILFFBQVEsRUFBRSx1QkFBdUI7WUFDakMsU0FBUyxFQUFFO2dCQUNQO29CQUNJLE9BQU8sRUFBRSxlQUFlO29CQUN4QixVQUFVLEVBQ04sQ0FDSSxhQUE0QixFQUM1QixZQUFtQixFQUNuQixtQkFBd0MsRUFDeEMsbUJBQXdDLEVBQ3hDLGVBQWlELEVBQ2pELG9CQUEwQyxFQUMxQyxNQUFjLEVBQ2hCLEVBQUUsQ0FDSixHQUFHLEVBQUU7d0JBQ0QsTUFBTSxXQUFXLEdBQUcsYUFBYSxFQUFFLENBQUM7d0JBRXBDLE9BQU8sYUFBYTs2QkFDZixxQkFBcUIsRUFBRTs2QkFDdkIsSUFBSSxDQUFDLEdBQUcsRUFBRSxDQUNQLE9BQU8sQ0FBQyxHQUFHLENBQUMsQ0FBQyxVQUFVLEVBQUUsRUFBRSxVQUFVLENBQUMsYUFBYSxFQUFFLFlBQVksQ0FBQyxDQUFDLENBQUMsQ0FBQyxPQUFPLENBQUMsR0FBRyxFQUFFOzRCQUM5RSxtQkFBbUIsQ0FBQyxjQUFjLEVBQUUsQ0FBQzs0QkFDckMsbUJBQW1CLENBQUMsSUFBSSxFQUFFLENBQUM7NEJBQzNCLGVBQWUsQ0FBQyxJQUFJLEVBQUUsQ0FBQzt3QkFDM0IsQ0FBQyxDQUFDLENBQ0w7NkJBQ0EsS0FBSyxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUU7NEJBQ1QsSUFBSSxDQUFDLFdBQVcsSUFBSSxDQUFDLFNBQVMsQ0FBQyxNQUFNLEVBQUUsQ0FBQztnQ0FDcEMsT0FBTyxDQUFDLEdBQUcsQ0FBQyxhQUFhLENBQUMsQ0FBQztnQ0FDM0IsTUFBTSxDQUFDLFFBQVEsQ0FBQyxDQUFDLGFBQWEsQ0FBQyxDQUFDLENBQUM7NEJBQ3JDLENBQUM7aUNBQU0sQ0FBQztnQ0FDSixNQUFNLENBQUMsUUFBUSxDQUFDLENBQUMseUJBQXlCLENBQUMsQ0FBQyxDQUFDOzRCQUNqRCxDQUFDOzRCQUNELE9BQU8sT0FBTyxDQUFDLE9BQU8sRUFBRSxDQUFDO3dCQUM3QixDQUFDLENBQUMsQ0FBQztvQkFDWCxDQUFDO29CQUNMLElBQUksRUFBRTt3QkFDRixhQUFhO3dCQUNiLEtBQUs7d0JBQ0wsbUJBQW1CO3dCQUNuQixtQkFBbUI7d0JBQ25CLGdDQUFnQzt3QkFDaEMsb0JBQW9CO3dCQUNwQixNQUFNO3FCQUNUO29CQUNELEtBQUssRUFBRSxJQUFJO2lCQUNkO2dCQUNEO29CQUNJLE9BQU8sRUFBRSxZQUFZO29CQUNyQixRQUFRLEVBQUUsa0JBQWtCO2lCQUMvQjtnQkFDRDtvQkFDSSxPQUFPLEVBQUUsZUFBZTtvQkFDeEIsVUFBVSxFQUFFLENBQUMsbUJBQXdDLEVBQUUsRUFBRSxDQUFDLEdBQUcsRUFBRTt3QkFDM0QsUUFBUSxDQUFDLEVBQUUsQ0FBQyxtQkFBbUIsQ0FBQyxFQUFFLENBQUM7NEJBQy9CLFNBQVMsRUFBRSxtQkFBbUIsQ0FBQyxlQUFlLENBQUMsSUFBSSxDQUFDLG1CQUFtQixDQUFDOzRCQUN4RSxZQUFZLEVBQUUsbUJBQW1CLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQyxtQkFBbUIsQ0FBQzt5QkFDMUUsQ0FBQyxDQUFDO29CQUNQLENBQUM7b0JBQ0QsSUFBSSxFQUFFLENBQUMsbUJBQW1CLENBQUM7b0JBQzNCLEtBQUssRUFBRSxJQUFJO2lCQUNkO2dCQUNELEdBQUcsS0FBSztnQkFDUixhQUFhO2dCQUNiLGFBQWE7Z0JBQ2IsVUFBVTtnQkFDVixVQUFVO2dCQUNWLGtCQUFrQjtnQkFDbEIsU0FBUztnQkFDVCxhQUFhO2dCQUNiLHVCQUF1QjtnQkFDdkIsaUJBQWlCO2dCQUNqQixTQUFTO2dCQUNULG9CQUFvQjtnQkFDcEIscUJBQXFCO2dCQUNyQixxQkFBcUI7Z0JBQ3JCLGlCQUFpQjtnQkFDakIsbUJBQW1CO2dCQUNuQixtQkFBbUI7Z0JBQ25CLGdDQUFnQztnQkFDaEMseUJBQXlCO2dCQUN6QixtQkFBbUI7Z0JBQ25CLGdCQUFnQjtnQkFDaEIsZ0JBQWdCO2dCQUNoQixtQkFBbUI7Z0JBQ25CLGdDQUFnQzthQUNuQztTQUNKLENBQUM7SUFDTixDQUFDOzhHQS9GUSx1QkFBdUI7K0dBQXZCLHVCQUF1QixpQkE1SWhDLGFBQWE7WUFDYixnQkFBZ0I7WUFDaEIsaUJBQWlCO1lBQ2pCLGlCQUFpQjtZQUNqQixtQkFBbUI7WUFDbkIsd0JBQXdCO1lBQ3hCLGdCQUFnQjtZQUNoQixrQkFBa0I7WUFDbEIsbUJBQW1CO1lBQ25CLDBCQUEwQjtZQUMxQix1Q0FBdUM7WUFDdkMsMkNBQTJDO1lBQzNDLG9CQUFvQjtZQUNwQixvQkFBb0I7WUFDcEIsb0JBQW9CO1lBQ3BCLCtCQUErQjtZQUMvQixzQkFBc0I7WUFDdEIsa0JBQWtCO1lBQ2xCLGlCQUFpQjtZQUNqQiw0QkFBNEIsRUFrQzVCLFdBQVc7WUFDWCxpQkFBaUI7WUFDakIsaUJBQWlCO1lBQ2pCLGtCQUFrQjtZQUNsQixVQUFVO1lBQ1YsYUFBYTtZQUNiLGdCQUFnQjtZQUNoQixhQUFhO1lBQ2IsUUFBUTtZQUNSLFdBQVc7WUFDWCxtQkFBbUI7WUFDbkIsV0FBVztZQUNYLGlCQUFpQjtZQUNqQixvQkFBb0I7WUFDcEIsc0JBQXNCO1lBQ3RCLGNBQWM7WUFDZCxnQkFBZ0I7WUFDaEIsdUJBQXVCO1lBQ3ZCLGVBQWU7WUFDZixnQkFBZ0I7WUFDaEIsaUJBQWlCO1lBQ2pCLGlCQUFpQjtZQUNqQixhQUFhO1lBQ2IsZ0JBQWdCO1lBQ2hCLHFCQUFxQjtZQUNyQix3QkFBd0I7WUFDeEIsYUFBYTtZQUNiLGdCQUFnQjtZQUNoQix3QkFBd0I7WUFDeEIsc0JBQXNCO1lBQ3RCLDBCQUEwQjtZQUMxQixtQkFBbUI7WUFDbkIsbUJBQW1CO1lBQ25CLFdBQVc7WUFDWCxrQkFBa0I7WUFDbEIsZ0JBQWdCO1lBQ2hCLHlCQUF5QjtZQUN6QixjQUFjO1lBQ2QsZUFBZTtZQUNmLGFBQWE7WUFDYixpQkFBaUI7WUFDakIsa0JBQWtCO1lBQ2xCLGtCQUFrQjtZQUNsQixxQkFBcUI7WUFDckIsV0FBVztZQUNYLDBCQUEwQjtZQUMxQix1QkFBdUIsRUE3RXZCLG9CQUFvQjtZQUNwQix5QkFBeUI7WUFDekIsd0JBQXdCO1lBQ3hCLHVCQUF1QjtZQUN2QixxQkFBcUI7WUFDckIsc0JBQXNCO1lBQ3RCLG1CQUFtQjtZQUNuQix1QkFBdUI7WUFDdkIsZ0NBQWdDO1lBQ2hDLGtCQUFrQjtZQUNsQixvQkFBb0I7WUFDcEIsNkJBQTZCO1lBQzdCLGtCQUFrQjtZQUNsQixxQkFBcUI7WUFDckIsc0JBQXNCO1lBQ3RCLGdCQUFnQjtZQUNoQixhQUFhO1lBQ2IscUJBQXFCO1lBQ3JCLHVCQUF1QjtZQUN2QixrQkFBa0I7WUFDbEIsZUFBZTtZQUNmLGtCQUFrQjtZQUNsQixrQkFBa0I7WUFDbEIsd0JBQXdCO1lBQ3hCLHFCQUFxQjtZQUNyQixtQkFBbUI7WUFDbkIsdUJBQXVCO1lBQ3ZCLHdCQUF3QjtZQUN4QiwwQkFBMEIsYUFpRnRCLFlBQVk7WUFDWixnQkFBZ0I7WUFDaEIsOEJBQThCO1lBQzlCLHdCQUF3QjtZQUN4QixlQUFlLGFBdkluQixhQUFhO1lBQ2IsZ0JBQWdCO1lBQ2hCLGlCQUFpQjtZQUNqQixpQkFBaUI7WUFDakIsbUJBQW1CO1lBQ25CLHdCQUF3QjtZQUN4QixnQkFBZ0I7WUFDaEIsa0JBQWtCO1lBQ2xCLG1CQUFtQjtZQUNuQiwwQkFBMEI7WUFDMUIsdUNBQXVDO1lBQ3ZDLDJDQUEyQztZQUMzQyxvQkFBb0I7WUFDcEIsb0JBQW9CO1lBQ3BCLG9CQUFvQjtZQUNwQiwrQkFBK0I7WUFDL0Isc0JBQXNCO1lBQ3RCLGtCQUFrQjtZQUNsQixpQkFBaUI7WUFDakIsNEJBQTRCLEVBa0M1QixXQUFXO1lBQ1gsaUJBQWlCO1lBQ2pCLGlCQUFpQjtZQUNqQixrQkFBa0I7WUFDbEIsVUFBVTtZQUNWLGFBQWE7WUFDYixnQkFBZ0I7WUFDaEIsYUFBYTtZQUNiLFFBQVE7WUFDUixXQUFXO1lBQ1gsbUJBQW1CO1lBQ25CLFdBQVc7WUFDWCxpQkFBaUI7WUFDakIsb0JBQW9CO1lBQ3BCLHNCQUFzQjtZQUN0QixjQUFjO1lBQ2QsZ0JBQWdCO1lBQ2hCLHVCQUF1QjtZQUN2QixlQUFlO1lBQ2YsZ0JBQWdCO1lBQ2hCLGlCQUFpQjtZQUNqQixpQkFBaUI7WUFDakIsYUFBYTtZQUNiLGdCQUFnQjtZQUNoQixxQkFBcUI7WUFDckIsd0JBQXdCO1lBQ3hCLGFBQWE7WUFDYixnQkFBZ0I7WUFDaEIsd0JBQXdCO1lBQ3hCLHNCQUFzQjtZQUN0QiwwQkFBMEI7WUFDMUIsbUJBQW1CO1lBQ25CLG1CQUFtQjtZQUNuQixXQUFXO1lBQ1gsa0JBQWtCO1lBQ2xCLGdCQUFnQjtZQUNoQix5QkFBeUI7WUFDekIsY0FBYztZQUNkLGVBQWU7WUFDZixhQUFhO1lBQ2IsaUJBQWlCO1lBQ2pCLGtCQUFrQjtZQUNsQixrQkFBa0I7WUFDbEIscUJBQXFCO1lBQ3JCLFdBQVc7WUFDWCwwQkFBMEI7WUFDMUIsdUJBQXVCLEVBN0V2QixvQkFBb0I7WUFDcEIseUJBQXlCO1lBQ3pCLHdCQUF3QjtZQUN4Qix1QkFBdUI7WUFDdkIscUJBQXFCO1lBQ3JCLHNCQUFzQjtZQUN0QixtQkFBbUI7WUFDbkIsdUJBQXVCO1lBQ3ZCLGdDQUFnQztZQUNoQyxrQkFBa0I7WUFDbEIsb0JBQW9CO1lBQ3BCLDZCQUE2QjtZQUM3QixrQkFBa0I7WUFDbEIscUJBQXFCO1lBQ3JCLHNCQUFzQjtZQUN0QixnQkFBZ0I7WUFDaEIsYUFBYTtZQUNiLHFCQUFxQjtZQUNyQix1QkFBdUI7WUFDdkIsa0JBQWtCO1lBQ2xCLGVBQWU7WUFDZixrQkFBa0I7WUFDbEIsa0JBQWtCO1lBQ2xCLHdCQUF3QjtZQUN4QixxQkFBcUI7WUFDckIsbUJBQW1CO1lBQ25CLHVCQUF1QjtZQUN2Qix3QkFBd0I7WUFDeEIsMEJBQTBCOytHQTBGakIsdUJBQXVCLFlBVDVCLFlBQVk7WUFDWixnQkFBZ0I7WUFDaEIsOEJBQThCO1lBQzlCLHdCQUF3QjtZQUN4QixlQUFlOzsyRkFLVix1QkFBdUI7a0JBWm5DLFFBQVE7bUJBQUM7b0JBQ04sWUFBWSxFQUFFLENBQUMsR0FBRyxVQUFVLEVBQUUsR0FBRyxLQUFLLEVBQUUsR0FBRyxVQUFVLENBQUM7b0JBQ3RELE9BQU8sRUFBRTt3QkFDTCxZQUFZO3dCQUNaLGdCQUFnQjt3QkFDaEIsOEJBQThCO3dCQUM5Qix3QkFBd0I7d0JBQ3hCLGVBQWU7cUJBQ2xCO29CQUNELE9BQU8sRUFBRSxDQUFDLEdBQUcsVUFBVSxFQUFFLEdBQUcsS0FBSyxFQUFFLEdBQUcsVUFBVSxDQUFDO29CQUNqRCxPQUFPLEVBQUUsQ0FBQyxnQkFBZ0IsQ0FBQztpQkFDOUIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICAgIEFQUF9JTklUSUFMSVpFUixcbiAgICBDb21wb25lbnRGYWN0b3J5UmVzb2x2ZXIsXG4gICAgRXJyb3JIYW5kbGVyLFxuICAgIE1vZHVsZVdpdGhQcm92aWRlcnMsXG4gICAgTmdNb2R1bGUsXG4gICAgTk9fRVJST1JTX1NDSEVNQVxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQgeyBIdHRwQ2xpZW50TW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uL2h0dHAnO1xuXG5pbXBvcnQgeyBGb3JtQ29tcG9uZW50IH0gZnJvbSAnLi9mb3JtL2Zvcm0uY29tcG9uZW50JztcbmltcG9ydCB7IEZpZWxkVWlDb21wb25lbnQgfSBmcm9tICcuL2ZpZWxkLXVpL2ZpZWxkLXVpLmNvbXBvbmVudCc7XG5cbmltcG9ydCB7IFJlcG9ydENvbnRhaW5lckNvbXBvbmVudCB9IGZyb20gJy4vcmVwb3J0LWNvbnRhaW5lci9yZXBvcnQtY29udGFpbmVyLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBBbmNob3JTY3JvbGxEaXJlY3RpdmUgfSBmcm9tICcuL2RpcmVjdGl2ZXMvYW5jaG9yLXNjcm9sbC5kaXJlY3RpdmUnO1xuaW1wb3J0IHsgQmFyc2FOb3ZpblJheUNvcmVSb3V0aW5nTW9kdWxlIH0gZnJvbSAnLi9iYXJzYS1ub3Zpbi1yYXktY29yZS1yb3V0aW5nLm1vZHVsZSc7XG5pbXBvcnQgeyBNb2RhbFJvb3RDb21wb25lbnQgfSBmcm9tICcuL21vZGFsLXJvb3QuY29tcG9uZW50JztcbmltcG9ydCB7IEZvcm1OZXdDb21wb25lbnQgfSBmcm9tICcuL2Zvcm0tbmV3L2Zvcm0tbmV3LmNvbXBvbmVudCc7XG5pbXBvcnQgeyBSb290UG9ydGFsQ29tcG9uZW50IH0gZnJvbSAnLi9yb290LXBvcnRhbC9yb290LXBvcnRhbC5jb21wb25lbnQnO1xuaW1wb3J0IHsgQXV0aEd1YXJkIH0gZnJvbSAnLi9hdXRoLWd1YXJkJztcblxuaW1wb3J0IHtcbiAgICBEeW5hbWljRm9ybUNvbXBvbmVudCxcbiAgICBEeW5hbWljSXRlbUNvbXBvbmVudCxcbiAgICBCYXNlRHluYW1pY0NvbXBvbmVudCxcbiAgICBEeW5hbWljRm9ybVRvb2xiYXJpdGVtQ29tcG9uZW50LFxuICAgIER5bmFtaWNMYXlvdXRDb21wb25lbnRcbn0gZnJvbSAnLi9keW5hbWljLWNvbXBvbmVudCc7XG5pbXBvcnQgeyBSZWRpcmVjdEhvbWVHdWFyZCB9IGZyb20gJy4vcmVkaXJlY3QtaG9tZS1ndWFyZCc7XG5pbXBvcnQgeyBOb3RGb3VuZENvbXBvbmVudCB9IGZyb20gJy4vbm90LWZvdW5kL25vdC1mb3VuZC5jb21wb25lbnQnO1xuaW1wb3J0IHsgUm9vdFBhZ2VDb21wb25lbnQgfSBmcm9tICcuL3Jvb3QtcGFnZS9yb290LXBhZ2UuY29tcG9uZW50JztcbmltcG9ydCB7IEJhc2VNb2R1bGUgfSBmcm9tICcuL2Jhc2UubW9kdWxlJztcbmltcG9ydCB7IFBvcnRhbFBhZ2VDb21wb25lbnQgfSBmcm9tICcuL3BvcnRhbC1wYWdlL3BvcnRhbC1wYWdlLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBHbG9iYWxFcnJvckhhbmRsZXIgfSBmcm9tICcuL2dsb2JhbC1lcnJvci1oYW5kbGVyJztcblxuaW1wb3J0IHsgUmVkaXJlY3RSZXBvcnROYXZpZ2F0b3JDb21tYW5kQ29tcG9uZW50IH0gZnJvbSAnLi9yZWRpcmVjdC1yZXBvcnQtbmF2aWdhdG9yLWNvbW1hbmQvcmVkaXJlY3QtcmVwb3J0LW5hdmlnYXRvci1jb21tYW5kLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBFbXB0eVBhZ2VXaXRoUm91dGVyQW5kUm91dGVyT3V0bGV0Q29tcG9uZW50IH0gZnJvbSAnLi9lbXB0eS1wYWdlLXdpdGgtcm91dGVyLWFuZC1yb3V0ZXItb3V0bGV0L2VtcHR5LXBhZ2Utd2l0aC1yb3V0ZXItYW5kLXJvdXRlci1vdXRsZXQuY29tcG9uZW50JztcbmltcG9ydCB7IEVtcHR5UGFnZUNvbXBvbmVudCB9IGZyb20gJy4vZW1wdHktcGFnZS9lbXB0eS1wYWdlLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBCYXJzYUFwaSB9IGZyb20gJy4vYWJzdHJhY3QtY2xhc3Nlcy9iYXJzYS1hcGknO1xuaW1wb3J0IHsgRm9ybVBhZ2VDb21wb25lbnQgfSBmcm9tICcuL2Fic3RyYWN0LWNsYXNzZXMvZm9ybS1wYWdlLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBGb3JtRmllbGRSZXBvcnRQYWdlQ29tcG9uZW50IH0gZnJvbSAnLi9hYnN0cmFjdC1jbGFzc2VzJztcbmltcG9ydCB7IFBvcnRhbFBhZ2VTaWRlYmFyQ29tcG9uZW50IH0gZnJvbSAnLi9wb3J0YWwtcGFnZS9wb3J0YWwtc2lkZWJhci5jb21wb25lbnQnO1xuXG5pbXBvcnQge1xuICAgIEJyZWFkY3J1bWJTZXJ2aWNlLFxuICAgIFVwbG9hZFNlcnZpY2UsXG4gICAgQXBpU2VydmljZSxcbiAgICBMb2dTZXJ2aWNlLFxuICAgIEJhcnNhRGlhbG9nU2VydmljZSxcbiAgICBQb3J0YWxTZXJ2aWNlLFxuICAgIFVpU2VydmljZSxcbiAgICBMYXlvdXRTZXJ2aWNlLFxuICAgIER5bmFtaWNDb21wb25lbnRTZXJ2aWNlLFxuICAgIE5ldHdvcmtTdGF0dXNTZXJ2aWNlLFxuICAgIEF1ZGlvUmVjb3JkaW5nU2VydmljZSxcbiAgICBWaWRlb1JlY29yZGluZ1NlcnZpY2UsXG4gICAgUHJvbXB0VXBkYXRlU2VydmljZSxcbiAgICBCYXJzYVN0b3JhZ2VTZXJ2aWNlLFxuICAgIExvY2FsU3RvcmFnZVNlcnZpY2UsXG4gICAgSW5kZXhlZERiU2VydmljZSxcbiAgICBOb3RpZmljYXRpb25TZXJ2aWNlLFxuICAgIFNlcnZpY2VXb3JrZXJOb3RpZmljYXRpb25TZXJ2aWNlLFxuICAgIFNlcnZpY2VXb3JrZXJDb21tdW5jYXRpb25TZXJ2aWNlLFxuICAgIFNhdmVTY3JvbGxQb3NpdGlvblNlcnZpY2Vcbn0gZnJvbSAnLi9zZXJ2aWNlcyc7XG5pbXBvcnQge1xuICAgIER5bmFtaWNDb21tYW5kRGlyZWN0aXZlLFxuICAgIEl0ZW1zUmVuZGVyZXJEaXJlY3RpdmUsXG4gICAgTnVtYmVyc09ubHlJbnB1dERpcmVjdGl2ZSxcbiAgICBQbGFjZUhvbGRlckRpcmVjdGl2ZSxcbiAgICBSZW5kZXJVbHZQYWdpbkRpcmVjdGl2ZSxcbiAgICBJbWFnZUxhenlEaXJlY3RpdmUsXG4gICAgVW50aWxJblZpZXdEaXJlY3RpdmUsXG4gICAgSW50ZXJzZWN0aW9uT2JzZXJ2ZXJEaXJlY3RpdmUsXG4gICAgRWxsaXBzaWZ5RGlyZWN0aXZlLFxuICAgIFRhYmxlUmVzaXplckRpcmVjdGl2ZSxcbiAgICBDb2x1bW5SZXNpemVyRGlyZWN0aXZlLFxuICAgIEF0dHJSdGxEaXJlY3RpdmUsXG4gICAgUmVuZGVyVWx2Vmlld2VyRGlyZWN0aXZlLFxuICAgIFVsdkNvbW1hbmREaXJlY3RpdmUsXG4gICAgV29yZmtmbG93d0Nob2ljZUNvbW1hbmREaXJlY3RpdmUsXG4gICAgQ29weURpcmVjdGl2ZSxcbiAgICBFbGxhcHNpc1RleHREaXJlY3RpdmUsXG4gICAgRmlsbEVtcHR5U3BhY2VEaXJlY3RpdmUsXG4gICAgRm9ybUNsb3NlRGlyZWN0aXZlLFxuICAgIE1vYmlsZURpcmVjdGl2ZSxcbiAgICBCb2R5Q2xpY2tEaXJlY3RpdmUsXG4gICAgQ291bnREb3duRGlyZWN0aXZlLFxuICAgIFJvdXRlRm9ybUNoYW5nZURpcmVjdGl2ZSxcbiAgICBEeW5hbWljU3R5bGVEaXJlY3RpdmUsXG4gICAgTm93cmFwdGV4dERpcmVjdGl2ZSxcbiAgICBMYWJlbG1hbmRhdG9yeURpcmVjdGl2ZSxcbiAgICBBYnNvbHV0ZURpdkJvZHlEaXJlY3RpdmUsXG4gICAgTG9hZEV4dGVybmFsRmlsZXNEaXJlY3RpdmVcbn0gZnJvbSAnLi9kaXJlY3RpdmVzJztcbmltcG9ydCB7XG4gICAgTnVtZXJhbFBpcGUsXG4gICAgQ2FuVXBsb2FkRmlsZVBpcGUsXG4gICAgUmVtb3ZlTmV3bGluZVBpcGUsXG4gICAgQ29udmVydFRvU3R5bGVQaXBlLFxuICAgIEZpbHRlclBpcGUsXG4gICAgRmlsdGVyVGFiUGlwZSxcbiAgICBGaWx0ZXJTdHJpbmdQaXBlLFxuICAgIEZpb3JpSWNvblBpcGUsXG4gICAgU29ydFBpcGUsXG4gICAgR3JvdXBCeVBpcGUsXG4gICAgTXVsdGlwbGVHcm91cEJ5UGlwZSxcbiAgICBNb1ZhbHVlUGlwZSxcbiAgICBNb1JlcG9ydFZhbHVlUGlwZSxcbiAgICBIZWFkZXJGYWNldFZhbHVlUGlwZSxcbiAgICBQaWN0dXJlRmllbGRTb3VyY2VQaXBlLFxuICAgIFRsYkJ1dHRvbnNQaXBlLFxuICAgIFNlcGVyYXRvckZpeFBpcGUsXG4gICAgTW9SZXBvcnRWYWx1ZUNvbmNhdFBpcGUsXG4gICAgQ29udGV4dE1lbnVQaXBlLFxuICAgIEJiYlRyYW5zbGF0ZVBpcGUsXG4gICAgQmFyc2FJY29uRGljdFBpcGUsXG4gICAgRmlsZUluZm9Db3VudFBpcGUsXG4gICAgQ29udHJvbFVpUGlwZSxcbiAgICBWaXNpYmxlVmFsdWVQaXBlLFxuICAgIERhdGVUaW1lVG9DYXB0aW9uUGlwZSxcbiAgICBGaWx0ZXJUb29sYmFyQ29udHJvbFBpcGUsXG4gICAgTGlzdENvdW50UGlwZSxcbiAgICBUb3RhbFN1bW1hcnlQaXBlLFxuICAgIE1lcmdlRmllbGRzVG9Db2x1bW5zUGlwZSxcbiAgICBGaW5kQ29sdW1uQnlEYk5hbWVQaXBlLFxuICAgIEZpbHRlckNvbHVtbnNCeURldGFpbHNQaXBlLFxuICAgIE1vSW5mb1Vsdk1vTGlzdFBpcGUsXG4gICAgTW9JbmZvVWx2UGFnaW5nUGlwZSxcbiAgICBSZXZlcnNlUGlwZSxcbiAgICBDb2x1bW5DdXN0b21VaVBpcGUsXG4gICAgU2FuaXRpemVUZXh0UGlwZSxcbiAgICBDb2x1bW5DdXN0b21Db21wb25lbnRQaXBlLFxuICAgIENvbHVtbkljb25QaXBlLFxuICAgIENvbHVtblZhbHVlUGlwZSxcbiAgICBSb3dOdW1iZXJQaXBlLFxuICAgIENvbWJvUm93SW1hZ2VQaXBlLFxuICAgIElzRXhwYW5kZWROb2RlUGlwZSxcbiAgICBUaEltYWdlT3JJY29uZVBpcGUsXG4gICAgRmluZFByZXZpZXdDb2x1bW5QaXBlLFxuICAgIFJlcGxhY2VQaXBlLFxuICAgIEZpbHRlcldvcmtmbG93SW5Nb2JpbGVQaXBlLFxuICAgIEhpZGVDb2x1bW5zSW5tb2JpbGVQaXBlXG59IGZyb20gJy4vcGlwZXMnO1xuaW1wb3J0IHsgQmFyc2FTYXBVaUZvcm1QYWdlTW9kdWxlIH0gZnJvbSAnLi9mb3JtLXBhZ2Utcm91dGluZyc7XG5pbXBvcnQgeyBSZXNpemFibGVNb2R1bGUgfSBmcm9tICcuL3Jlc2l6YWJsZS1tb2R1bGUvcmVzaXphYmxlLm1vZHVsZSc7XG5pbXBvcnQgeyBUaXRsZSB9IGZyb20gJ0Bhbmd1bGFyL3BsYXRmb3JtLWJyb3dzZXInO1xuaW1wb3J0IHsgaXNJbkxvY2FsTW9kZSB9IGZyb20gJy4vY29uc3RhbnRzJztcbmltcG9ydCB7IFJvdXRlciB9IGZyb20gJ0Bhbmd1bGFyL3JvdXRlcic7XG5cbi8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBuby12YXJcbmRlY2xhcmUgdmFyIEJCQjogYW55O1xuXG5jb25zdCBjb21wb25lbnRzID0gW1xuICAgIEZvcm1Db21wb25lbnQsXG4gICAgRmllbGRVaUNvbXBvbmVudCxcbiAgICBOb3RGb3VuZENvbXBvbmVudCxcbiAgICBSb290UGFnZUNvbXBvbmVudCxcbiAgICBSb290UG9ydGFsQ29tcG9uZW50LFxuICAgIFJlcG9ydENvbnRhaW5lckNvbXBvbmVudCxcbiAgICBGb3JtTmV3Q29tcG9uZW50LFxuICAgIE1vZGFsUm9vdENvbXBvbmVudCxcbiAgICBQb3J0YWxQYWdlQ29tcG9uZW50LFxuICAgIFBvcnRhbFBhZ2VTaWRlYmFyQ29tcG9uZW50LFxuICAgIFJlZGlyZWN0UmVwb3J0TmF2aWdhdG9yQ29tbWFuZENvbXBvbmVudCxcbiAgICBFbXB0eVBhZ2VXaXRoUm91dGVyQW5kUm91dGVyT3V0bGV0Q29tcG9uZW50LFxuICAgIER5bmFtaWNJdGVtQ29tcG9uZW50LFxuICAgIER5bmFtaWNGb3JtQ29tcG9uZW50LFxuICAgIEJhc2VEeW5hbWljQ29tcG9uZW50LFxuICAgIER5bmFtaWNGb3JtVG9vbGJhcml0ZW1Db21wb25lbnQsXG4gICAgRHluYW1pY0xheW91dENvbXBvbmVudCxcbiAgICBFbXB0eVBhZ2VDb21wb25lbnQsXG4gICAgRm9ybVBhZ2VDb21wb25lbnQsXG4gICAgRm9ybUZpZWxkUmVwb3J0UGFnZUNvbXBvbmVudFxuXTtcbmNvbnN0IGRpcmVjdGl2ZXMgPSBbXG4gICAgUGxhY2VIb2xkZXJEaXJlY3RpdmUsXG4gICAgTnVtYmVyc09ubHlJbnB1dERpcmVjdGl2ZSxcbiAgICBSZW5kZXJVbHZWaWV3ZXJEaXJlY3RpdmUsXG4gICAgUmVuZGVyVWx2UGFnaW5EaXJlY3RpdmUsXG4gICAgQW5jaG9yU2Nyb2xsRGlyZWN0aXZlLFxuICAgIEl0ZW1zUmVuZGVyZXJEaXJlY3RpdmUsXG4gICAgVWx2Q29tbWFuZERpcmVjdGl2ZSxcbiAgICBEeW5hbWljQ29tbWFuZERpcmVjdGl2ZSxcbiAgICBXb3Jma2Zsb3d3Q2hvaWNlQ29tbWFuZERpcmVjdGl2ZSxcbiAgICBJbWFnZUxhenlEaXJlY3RpdmUsXG4gICAgVW50aWxJblZpZXdEaXJlY3RpdmUsXG4gICAgSW50ZXJzZWN0aW9uT2JzZXJ2ZXJEaXJlY3RpdmUsXG4gICAgRWxsaXBzaWZ5RGlyZWN0aXZlLFxuICAgIFRhYmxlUmVzaXplckRpcmVjdGl2ZSxcbiAgICBDb2x1bW5SZXNpemVyRGlyZWN0aXZlLFxuICAgIEF0dHJSdGxEaXJlY3RpdmUsXG4gICAgQ29weURpcmVjdGl2ZSxcbiAgICBFbGxhcHNpc1RleHREaXJlY3RpdmUsXG4gICAgRmlsbEVtcHR5U3BhY2VEaXJlY3RpdmUsXG4gICAgRm9ybUNsb3NlRGlyZWN0aXZlLFxuICAgIE1vYmlsZURpcmVjdGl2ZSxcbiAgICBCb2R5Q2xpY2tEaXJlY3RpdmUsXG4gICAgQ291bnREb3duRGlyZWN0aXZlLFxuICAgIFJvdXRlRm9ybUNoYW5nZURpcmVjdGl2ZSxcbiAgICBEeW5hbWljU3R5bGVEaXJlY3RpdmUsXG4gICAgTm93cmFwdGV4dERpcmVjdGl2ZSxcbiAgICBMYWJlbG1hbmRhdG9yeURpcmVjdGl2ZSxcbiAgICBBYnNvbHV0ZURpdkJvZHlEaXJlY3RpdmUsXG4gICAgTG9hZEV4dGVybmFsRmlsZXNEaXJlY3RpdmVcbl07XG5jb25zdCBwaXBlcyA9IFtcbiAgICBOdW1lcmFsUGlwZSxcbiAgICBDYW5VcGxvYWRGaWxlUGlwZSxcbiAgICBSZW1vdmVOZXdsaW5lUGlwZSxcbiAgICBDb252ZXJ0VG9TdHlsZVBpcGUsXG4gICAgRmlsdGVyUGlwZSxcbiAgICBGaWx0ZXJUYWJQaXBlLFxuICAgIEZpbHRlclN0cmluZ1BpcGUsXG4gICAgRmlvcmlJY29uUGlwZSxcbiAgICBTb3J0UGlwZSxcbiAgICBHcm91cEJ5UGlwZSxcbiAgICBNdWx0aXBsZUdyb3VwQnlQaXBlLFxuICAgIE1vVmFsdWVQaXBlLFxuICAgIE1vUmVwb3J0VmFsdWVQaXBlLFxuICAgIEhlYWRlckZhY2V0VmFsdWVQaXBlLFxuICAgIFBpY3R1cmVGaWVsZFNvdXJjZVBpcGUsXG4gICAgVGxiQnV0dG9uc1BpcGUsXG4gICAgU2VwZXJhdG9yRml4UGlwZSxcbiAgICBNb1JlcG9ydFZhbHVlQ29uY2F0UGlwZSxcbiAgICBDb250ZXh0TWVudVBpcGUsXG4gICAgQmJiVHJhbnNsYXRlUGlwZSxcbiAgICBCYXJzYUljb25EaWN0UGlwZSxcbiAgICBGaWxlSW5mb0NvdW50UGlwZSxcbiAgICBDb250cm9sVWlQaXBlLFxuICAgIFZpc2libGVWYWx1ZVBpcGUsXG4gICAgRGF0ZVRpbWVUb0NhcHRpb25QaXBlLFxuICAgIEZpbHRlclRvb2xiYXJDb250cm9sUGlwZSxcbiAgICBMaXN0Q291bnRQaXBlLFxuICAgIFRvdGFsU3VtbWFyeVBpcGUsXG4gICAgTWVyZ2VGaWVsZHNUb0NvbHVtbnNQaXBlLFxuICAgIEZpbmRDb2x1bW5CeURiTmFtZVBpcGUsXG4gICAgRmlsdGVyQ29sdW1uc0J5RGV0YWlsc1BpcGUsXG4gICAgTW9JbmZvVWx2TW9MaXN0UGlwZSxcbiAgICBNb0luZm9VbHZQYWdpbmdQaXBlLFxuICAgIFJldmVyc2VQaXBlLFxuICAgIENvbHVtbkN1c3RvbVVpUGlwZSxcbiAgICBTYW5pdGl6ZVRleHRQaXBlLFxuICAgIENvbHVtbkN1c3RvbUNvbXBvbmVudFBpcGUsXG4gICAgQ29sdW1uSWNvblBpcGUsXG4gICAgQ29sdW1uVmFsdWVQaXBlLFxuICAgIFJvd051bWJlclBpcGUsXG4gICAgQ29tYm9Sb3dJbWFnZVBpcGUsXG4gICAgSXNFeHBhbmRlZE5vZGVQaXBlLFxuICAgIFRoSW1hZ2VPckljb25lUGlwZSxcbiAgICBGaW5kUHJldmlld0NvbHVtblBpcGUsXG4gICAgUmVwbGFjZVBpcGUsXG4gICAgRmlsdGVyV29ya2Zsb3dJbk1vYmlsZVBpcGUsXG4gICAgSGlkZUNvbHVtbnNJbm1vYmlsZVBpcGVcbl07XG5jb25zdCBmdW5jdGlvbkwxID0gZnVuY3Rpb24gKCk6IFByb21pc2U8dm9pZD4ge1xuICAgIGlmIChCYXJzYUFwaS5Mb2dpbkZvcm1EYXRhLkN1bHR1cmUgPT09ICdmYS1JUicpIHtcbiAgICAgICAgcmV0dXJuIFByb21pc2UucmVzb2x2ZSgpO1xuICAgIH1cbiAgICByZXR1cm4gZmV0Y2goYC9Mb2NhbGl6YXRpb24vVHJhbnNsYXRpb24vZGF0YV8ke0JhcnNhQXBpLkxvZ2luRm9ybURhdGEuQ3VsdHVyZX0uanNvbmApXG4gICAgICAgIC50aGVuKGZ1bmN0aW9uIChyZXMpIHtcbiAgICAgICAgICAgIHJldHVybiByZXMuanNvbigpO1xuICAgICAgICB9KVxuICAgICAgICAudGhlbihmdW5jdGlvbiAocmVzKSB7XG4gICAgICAgICAgICBpZiAoQkJCKSB7XG4gICAgICAgICAgICAgICAgLy8gZXNsaW50LWRpc2FibGVcbiAgICAgICAgICAgICAgICBCQkIgPSB7IC4uLkJhcnNhQXBpLkJCQiwgLi4ucmVzIH07XG4gICAgICAgICAgICB9XG4gICAgICAgIH0pO1xufTtcbmNvbnN0IGZ1bmN0aW9uTDIgPSBmdW5jdGlvbiAocG9ydGFsU2VydmljZTogUG9ydGFsU2VydmljZSwgdGl0bGVTZXJ2aWNlOiBUaXRsZSk6IFByb21pc2U8YW55PiB7XG4gICAgcG9ydGFsU2VydmljZS5sb2FkVXNlclBvcnRhbFNldHRpbmcoKTtcbiAgICBwb3J0YWxTZXJ2aWNlLmxvYWRQb3J0YWxEYXRhU3luYygpO1xuICAgIGlmIChwb3J0YWxTZXJ2aWNlLnBvcnRhbERhdGE/LlRpdGxlKSB7XG4gICAgICAgIHRpdGxlU2VydmljZS5zZXRUaXRsZShwb3J0YWxTZXJ2aWNlLnBvcnRhbERhdGE/LlRpdGxlKTtcbiAgICB9XG4gICAgaWYgKEJhcnNhQXBpLkxvZ2luRm9ybURhdGEuSXNBbm9ueW1vdXMgJiYgIUJhcnNhQXBpLkxvZ2luRm9ybURhdGEuSXNTZXJ2aWNlRGVzaykge1xuICAgICAgICByZXR1cm4gcG9ydGFsU2VydmljZS5sb2FkU3lzdGVtKEJhcnNhQXBpLkxvZ2luRm9ybURhdGEuUG9ydGFsU3lzdGVtSWQpOyAvLyBsb2dpbiBmb3JtIG5lZWQganVzdCBwb3J0YWwgc3lzdGVtXG4gICAgfSBlbHNlIHtcbiAgICAgICAgcmV0dXJuIHBvcnRhbFNlcnZpY2UubG9hZFN5c3RlbSgpOyAvLyBsb2FkIGFsbCBzeXN0ZW1zIGlmIHVzZXIgaXMgbG9nZ2VkIGluXG4gICAgfVxufTtcbkBOZ01vZHVsZSh7XG4gICAgZGVjbGFyYXRpb25zOiBbLi4uY29tcG9uZW50cywgLi4ucGlwZXMsIC4uLmRpcmVjdGl2ZXNdLFxuICAgIGltcG9ydHM6IFtcbiAgICAgICAgQ29tbW9uTW9kdWxlLFxuICAgICAgICBIdHRwQ2xpZW50TW9kdWxlLFxuICAgICAgICBCYXJzYU5vdmluUmF5Q29yZVJvdXRpbmdNb2R1bGUsXG4gICAgICAgIEJhcnNhU2FwVWlGb3JtUGFnZU1vZHVsZSxcbiAgICAgICAgUmVzaXphYmxlTW9kdWxlXG4gICAgXSxcbiAgICBleHBvcnRzOiBbLi4uY29tcG9uZW50cywgLi4ucGlwZXMsIC4uLmRpcmVjdGl2ZXNdLFxuICAgIHNjaGVtYXM6IFtOT19FUlJPUlNfU0NIRU1BXVxufSlcbmV4cG9ydCBjbGFzcyBCYXJzYU5vdmluUmF5Q29yZU1vZHVsZSBleHRlbmRzIEJhc2VNb2R1bGUge1xuICAgIHByb3RlY3RlZCBkeW5hbWljQ29tcG9uZW50cyA9IFsuLi5jb21wb25lbnRzXTtcbiAgICBjb25zdHJ1Y3Rvcihwcm90ZWN0ZWQgZGNtOiBEeW5hbWljQ29tcG9uZW50U2VydmljZSwgcHJvdGVjdGVkIGNvbXBvbmVudEZhY3RvcnlSZXNvbHZlcjogQ29tcG9uZW50RmFjdG9yeVJlc29sdmVyKSB7XG4gICAgICAgIHN1cGVyKGRjbSwgY29tcG9uZW50RmFjdG9yeVJlc29sdmVyLCAnQmFyc2FOb3ZpblJheUNvcmVNb2R1bGUnKTtcbiAgICB9XG4gICAgc3RhdGljIGZvclJvb3QoKTogTW9kdWxlV2l0aFByb3ZpZGVyczxCYXJzYU5vdmluUmF5Q29yZU1vZHVsZT4ge1xuICAgICAgICByZXR1cm4ge1xuICAgICAgICAgICAgbmdNb2R1bGU6IEJhcnNhTm92aW5SYXlDb3JlTW9kdWxlLFxuICAgICAgICAgICAgcHJvdmlkZXJzOiBbXG4gICAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgICAgICBwcm92aWRlOiBBUFBfSU5JVElBTElaRVIsXG4gICAgICAgICAgICAgICAgICAgIHVzZUZhY3Rvcnk6XG4gICAgICAgICAgICAgICAgICAgICAgICAoXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcG9ydGFsU2VydmljZTogUG9ydGFsU2VydmljZSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB0aXRsZVNlcnZpY2U6IFRpdGxlLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHByb21wdFVwZGF0ZVNlcnZpY2U6IFByb21wdFVwZGF0ZVNlcnZpY2UsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgYmFyc2FTdG9yYWdlU2VydmljZTogQmFyc2FTdG9yYWdlU2VydmljZSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBzd0NvbW11bmljYXRpb246IFNlcnZpY2VXb3JrZXJDb21tdW5jYXRpb25TZXJ2aWNlLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIG5ldHdvcmtTdGF0dXNTZXJ2aWNlOiBOZXR3b3JrU3RhdHVzU2VydmljZSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICByb3V0ZXI6IFJvdXRlclxuICAgICAgICAgICAgICAgICAgICAgICAgKSA9PlxuICAgICAgICAgICAgICAgICAgICAgICAgKCkgPT4ge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IGluTG9jYWxNb2RlID0gaXNJbkxvY2FsTW9kZSgpO1xuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIHBvcnRhbFNlcnZpY2VcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLmxvYWRTZXJ2ZXJTdGFydHVwRGF0YSgpXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC50aGVuKCgpID0+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBQcm9taXNlLmFsbChbZnVuY3Rpb25MMSgpLCBmdW5jdGlvbkwyKHBvcnRhbFNlcnZpY2UsIHRpdGxlU2VydmljZSldKS5maW5hbGx5KCgpID0+IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBwcm9tcHRVcGRhdGVTZXJ2aWNlLmNoZWNrRm9yVXBkYXRlKCk7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYmFyc2FTdG9yYWdlU2VydmljZS5pbml0KCk7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3dDb21tdW5pY2F0aW9uLmluaXQoKTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0pXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIClcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLmNhdGNoKChlKSA9PiB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpZiAoIWluTG9jYWxNb2RlICYmICFuYXZpZ2F0b3Iub25MaW5lKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc29sZS5sb2coJ25vLWludGVybmV0Jyk7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcm91dGVyLm5hdmlnYXRlKFsnbm8taW50ZXJuZXQnXSk7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJvdXRlci5uYXZpZ2F0ZShbJ3NlcnZlci1jb25uZWN0aW9uLWVycm9yJ10pO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIFByb21pc2UucmVzb2x2ZSgpO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgICAgIGRlcHM6IFtcbiAgICAgICAgICAgICAgICAgICAgICAgIFBvcnRhbFNlcnZpY2UsXG4gICAgICAgICAgICAgICAgICAgICAgICBUaXRsZSxcbiAgICAgICAgICAgICAgICAgICAgICAgIFByb21wdFVwZGF0ZVNlcnZpY2UsXG4gICAgICAgICAgICAgICAgICAgICAgICBCYXJzYVN0b3JhZ2VTZXJ2aWNlLFxuICAgICAgICAgICAgICAgICAgICAgICAgU2VydmljZVdvcmtlckNvbW11bmNhdGlvblNlcnZpY2UsXG4gICAgICAgICAgICAgICAgICAgICAgICBOZXR3b3JrU3RhdHVzU2VydmljZSxcbiAgICAgICAgICAgICAgICAgICAgICAgIFJvdXRlclxuICAgICAgICAgICAgICAgICAgICBdLFxuICAgICAgICAgICAgICAgICAgICBtdWx0aTogdHJ1ZVxuICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgICAgICBwcm92aWRlOiBFcnJvckhhbmRsZXIsXG4gICAgICAgICAgICAgICAgICAgIHVzZUNsYXNzOiBHbG9iYWxFcnJvckhhbmRsZXJcbiAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgICAgcHJvdmlkZTogQVBQX0lOSVRJQUxJWkVSLFxuICAgICAgICAgICAgICAgICAgICB1c2VGYWN0b3J5OiAobm90aWZpY2F0aW9uU2VydmljZTogTm90aWZpY2F0aW9uU2VydmljZSkgPT4gKCkgPT4ge1xuICAgICAgICAgICAgICAgICAgICAgICAgQmFyc2FBcGkuVWwuTm90aWZpY2F0aW9uTWFuYWdlci5vbih7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgU2hvd1BvcHVwOiBub3RpZmljYXRpb25TZXJ2aWNlLmFkZE5vdGlmaWNhdGlvbi5iaW5kKG5vdGlmaWNhdGlvblNlcnZpY2UpLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIFB1Ymxpc2hFdmVudDogbm90aWZpY2F0aW9uU2VydmljZS5oYW5kbGVUb3BpYy5iaW5kKG5vdGlmaWNhdGlvblNlcnZpY2UpXG4gICAgICAgICAgICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgICAgZGVwczogW05vdGlmaWNhdGlvblNlcnZpY2VdLFxuICAgICAgICAgICAgICAgICAgICBtdWx0aTogdHJ1ZVxuICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgLi4ucGlwZXMsXG4gICAgICAgICAgICAgICAgUG9ydGFsU2VydmljZSxcbiAgICAgICAgICAgICAgICBVcGxvYWRTZXJ2aWNlLFxuICAgICAgICAgICAgICAgIEFwaVNlcnZpY2UsXG4gICAgICAgICAgICAgICAgTG9nU2VydmljZSxcbiAgICAgICAgICAgICAgICBCYXJzYURpYWxvZ1NlcnZpY2UsXG4gICAgICAgICAgICAgICAgVWlTZXJ2aWNlLFxuICAgICAgICAgICAgICAgIExheW91dFNlcnZpY2UsXG4gICAgICAgICAgICAgICAgRHluYW1pY0NvbXBvbmVudFNlcnZpY2UsXG4gICAgICAgICAgICAgICAgQnJlYWRjcnVtYlNlcnZpY2UsXG4gICAgICAgICAgICAgICAgQXV0aEd1YXJkLFxuICAgICAgICAgICAgICAgIE5ldHdvcmtTdGF0dXNTZXJ2aWNlLFxuICAgICAgICAgICAgICAgIEF1ZGlvUmVjb3JkaW5nU2VydmljZSxcbiAgICAgICAgICAgICAgICBWaWRlb1JlY29yZGluZ1NlcnZpY2UsXG4gICAgICAgICAgICAgICAgUmVkaXJlY3RIb21lR3VhcmQsXG4gICAgICAgICAgICAgICAgUHJvbXB0VXBkYXRlU2VydmljZSxcbiAgICAgICAgICAgICAgICBOb3RpZmljYXRpb25TZXJ2aWNlLFxuICAgICAgICAgICAgICAgIFNlcnZpY2VXb3JrZXJOb3RpZmljYXRpb25TZXJ2aWNlLFxuICAgICAgICAgICAgICAgIFNhdmVTY3JvbGxQb3NpdGlvblNlcnZpY2UsXG4gICAgICAgICAgICAgICAgTG9jYWxTdG9yYWdlU2VydmljZSxcbiAgICAgICAgICAgICAgICBJbmRleGVkRGJTZXJ2aWNlLFxuICAgICAgICAgICAgICAgIEJiYlRyYW5zbGF0ZVBpcGUsXG4gICAgICAgICAgICAgICAgQmFyc2FTdG9yYWdlU2VydmljZSxcbiAgICAgICAgICAgICAgICBTZXJ2aWNlV29ya2VyQ29tbXVuY2F0aW9uU2VydmljZVxuICAgICAgICAgICAgXVxuICAgICAgICB9O1xuICAgIH1cbn1cbiJdfQ==
|
|
@@ -31,4 +31,5 @@ export * from './dynamic-style.directive';
|
|
|
31
31
|
export * from './nowraptext.directive';
|
|
32
32
|
export * from './label-mandatory.directive';
|
|
33
33
|
export * from './absolute-div-body.directive';
|
|
34
|
-
|
|
34
|
+
export * from './load-external-files.directive';
|
|
35
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9iYXJzYS1ub3Zpbi1yYXktY29yZS9zcmMvbGliL2RpcmVjdGl2ZXMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsY0FBYywyQkFBMkIsQ0FBQztBQUMxQyxjQUFjLHNCQUFzQixDQUFDO0FBQ3JDLGNBQWMsa0JBQWtCLENBQUM7QUFDakMsY0FBYyw0QkFBNEIsQ0FBQztBQUMzQyxjQUFjLDZCQUE2QixDQUFDO0FBQzVDLGNBQWMsdUJBQXVCLENBQUM7QUFDdEMsY0FBYywyQkFBMkIsQ0FBQztBQUMxQyxjQUFjLHNCQUFzQixDQUFDO0FBQ3JDLGNBQWMsbUNBQW1DLENBQUM7QUFDbEQsY0FBYyw0QkFBNEIsQ0FBQztBQUMzQyxjQUFjLGdDQUFnQyxDQUFDO0FBQy9DLGNBQWMseUJBQXlCLENBQUM7QUFDeEMsY0FBYywrQkFBK0IsQ0FBQztBQUM5QyxjQUFjLCtCQUErQixDQUFDO0FBQzlDLGNBQWMsK0JBQStCLENBQUM7QUFDOUMsY0FBYywyQkFBMkIsQ0FBQztBQUMxQyxjQUFjLHlCQUF5QixDQUFDO0FBQ3hDLGNBQWMsMEJBQTBCLENBQUM7QUFDekMsY0FBYyxxQ0FBcUMsQ0FBQztBQUNwRCxjQUFjLGtCQUFrQixDQUFDO0FBQ2pDLGNBQWMsMkJBQTJCLENBQUM7QUFDMUMsY0FBYyxvQkFBb0IsQ0FBQztBQUNuQyxjQUFjLHdCQUF3QixDQUFDO0FBQ3ZDLGNBQWMsb0JBQW9CLENBQUM7QUFDbkMsY0FBYyx3QkFBd0IsQ0FBQztBQUN2QyxjQUFjLDZCQUE2QixDQUFDO0FBQzVDLGNBQWMsOEJBQThCLENBQUM7QUFDN0MsY0FBYyx3QkFBd0IsQ0FBQztBQUN2QyxjQUFjLCtCQUErQixDQUFDO0FBQzlDLGNBQWMsMkJBQTJCLENBQUM7QUFDMUMsY0FBYyx3QkFBd0IsQ0FBQztBQUN2QyxjQUFjLDZCQUE2QixDQUFDO0FBQzVDLGNBQWMsK0JBQStCLENBQUM7QUFDOUMsY0FBYyxpQ0FBaUMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCAqIGZyb20gJy4vYW5jaG9yLXNjcm9sbC5kaXJlY3RpdmUnO1xuZXhwb3J0ICogZnJvbSAnLi9hdHRyLXJ0bC5kaXJlY3RpdmUnO1xuZXhwb3J0ICogZnJvbSAnLi9iYXNlLmRpcmVjdGl2ZSc7XG5leHBvcnQgKiBmcm9tICcuL2NvbHVtbi1yZXNpemVyLmRpcmVjdGl2ZSc7XG5leHBvcnQgKiBmcm9tICcuL2R5bmFtaWMtY29tbWFuZC5kaXJlY3RpdmUnO1xuZXhwb3J0ICogZnJvbSAnLi9lbGxpcHNpZnkuZGlyZWN0aXZlJztcbmV4cG9ydCAqIGZyb20gJy4vZmllbGQtYmluZGluZy5kaXJlY3RpdmUnO1xuZXhwb3J0ICogZnJvbSAnLi9pbWctbGF6eS5kaXJlY3RpdmUnO1xuZXhwb3J0ICogZnJvbSAnLi9pbnRlcnNlY3Rpb24tb2JzZXJ2ZXIuZGlyZWN0aXZlJztcbmV4cG9ydCAqIGZyb20gJy4vaXRlbXMtcmVuZGVyZXIuZGlyZWN0aXZlJztcbmV4cG9ydCAqIGZyb20gJy4vbnVtYmVycy1vbmx5LWlucHV0LmRpcmVjdGl2ZSc7XG5leHBvcnQgKiBmcm9tICcuL3BsYWNlSG9sZGVyLmRpcmVjdGl2ZSc7XG5leHBvcnQgKiBmcm9tICcuL3JlbmRlci11bHYtdmlld2VyLmRpcmVjdGl2ZSc7XG5leHBvcnQgKiBmcm9tICcuL3JlbmRlci11bHYtcGFnaW5nLmRpcmVjdGl2ZSc7XG5leHBvcnQgKiBmcm9tICcuL3JlbmRlci11bHYtdmlld2VyLmRpcmVjdGl2ZSc7XG5leHBvcnQgKiBmcm9tICcuL3RhYmxlLXJlc2l6ZXIuZGlyZWN0aXZlJztcbmV4cG9ydCAqIGZyb20gJy4vdWx2LWNvbW1hbmQuZGlyZWN0aXZlJztcbmV4cG9ydCAqIGZyb20gJy4vdW50aWwtaW52aWV3LmRpcmVjdGl2ZSc7XG5leHBvcnQgKiBmcm9tICcuL3dvcmtmbG93LWNob2ljZS1jb21tYW5kLmRpcmVjdGl2ZSc7XG5leHBvcnQgKiBmcm9tICcuL2NvcHkuZGlyZWN0aXZlJztcbmV4cG9ydCAqIGZyb20gJy4vZWxsYXBzaXMtdGV4dC5kaXJlY3RpdmUnO1xuZXhwb3J0ICogZnJvbSAnLi9maWxsLWVtcHR5LXNwYWNlJztcbmV4cG9ydCAqIGZyb20gJy4vZm9ybS1jbG9zZS5kaXJlY3RpdmUnO1xuZXhwb3J0ICogZnJvbSAnLi9tb2JpbGUuZGlyZWN0aXZlJztcbmV4cG9ydCAqIGZyb20gJy4vYm9keS1jbGljay5kaXJlY3RpdmUnO1xuZXhwb3J0ICogZnJvbSAnLi9wcmV2ZW50LWRlZmF1bHQuZGlyZWN0aXZlJztcbmV4cG9ydCAqIGZyb20gJy4vc3RvcC1wcm9wYWdhdGlvbi5kaXJlY3RpdmUnO1xuZXhwb3J0ICogZnJvbSAnLi9jb3VudC1kb3duLmRpcmVjdGl2ZSc7XG5leHBvcnQgKiBmcm9tICcuL3JvdXRlLWZvcm0tY2hhbmdlLmRpcmVjdGl2ZSc7XG5leHBvcnQgKiBmcm9tICcuL2R5bmFtaWMtc3R5bGUuZGlyZWN0aXZlJztcbmV4cG9ydCAqIGZyb20gJy4vbm93cmFwdGV4dC5kaXJlY3RpdmUnO1xuZXhwb3J0ICogZnJvbSAnLi9sYWJlbC1tYW5kYXRvcnkuZGlyZWN0aXZlJztcbmV4cG9ydCAqIGZyb20gJy4vYWJzb2x1dGUtZGl2LWJvZHkuZGlyZWN0aXZlJztcbmV4cG9ydCAqIGZyb20gJy4vbG9hZC1leHRlcm5hbC1maWxlcy5kaXJlY3RpdmUnO1xuIl19
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
import { Directive, Renderer2, inject } from '@angular/core';
|
|
2
|
+
import { BarsaApi } from '../abstract-classes';
|
|
3
|
+
import * as i0 from "@angular/core";
|
|
4
|
+
export class LoadExternalFilesDirective {
|
|
5
|
+
constructor() {
|
|
6
|
+
this._renderer2 = inject(Renderer2);
|
|
7
|
+
}
|
|
8
|
+
ngOnInit() {
|
|
9
|
+
const jsfiles = [];
|
|
10
|
+
const cssfiles = [];
|
|
11
|
+
Object.keys(BarsaApi.LoginFormData).forEach((key) => {
|
|
12
|
+
if (key.startsWith('JSFile')) {
|
|
13
|
+
jsfiles.push(BarsaApi.LoginFormData[key]);
|
|
14
|
+
}
|
|
15
|
+
if (key.startsWith('CSSFile')) {
|
|
16
|
+
cssfiles.push(BarsaApi.LoginFormData[key]);
|
|
17
|
+
}
|
|
18
|
+
});
|
|
19
|
+
if (jsfiles.length > 0) {
|
|
20
|
+
head.load(jsfiles);
|
|
21
|
+
}
|
|
22
|
+
if (cssfiles.length > 0) {
|
|
23
|
+
cssfiles.forEach((c) => {
|
|
24
|
+
document.head.insertAdjacentHTML('beforeend', ` <link href="${c}" rel="stylesheet" noportal />`);
|
|
25
|
+
});
|
|
26
|
+
}
|
|
27
|
+
}
|
|
28
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.5", ngImport: i0, type: LoadExternalFilesDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
|
|
29
|
+
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "17.3.5", type: LoadExternalFilesDirective, selector: "[loadExternalFiles]", ngImport: i0 }); }
|
|
30
|
+
}
|
|
31
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.5", ngImport: i0, type: LoadExternalFilesDirective, decorators: [{
|
|
32
|
+
type: Directive,
|
|
33
|
+
args: [{
|
|
34
|
+
selector: '[loadExternalFiles]'
|
|
35
|
+
}]
|
|
36
|
+
}] });
|
|
37
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibG9hZC1leHRlcm5hbC1maWxlcy5kaXJlY3RpdmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9iYXJzYS1ub3Zpbi1yYXktY29yZS9zcmMvbGliL2RpcmVjdGl2ZXMvbG9hZC1leHRlcm5hbC1maWxlcy5kaXJlY3RpdmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBVSxTQUFTLEVBQUUsTUFBTSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3JFLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQzs7QUFLL0MsTUFBTSxPQUFPLDBCQUEwQjtJQUh2QztRQUlJLGVBQVUsR0FBRyxNQUFNLENBQUMsU0FBUyxDQUFDLENBQUM7S0FxQmxDO0lBcEJHLFFBQVE7UUFDSixNQUFNLE9BQU8sR0FBYSxFQUFFLENBQUM7UUFDN0IsTUFBTSxRQUFRLEdBQWEsRUFBRSxDQUFDO1FBQzlCLE1BQU0sQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLGFBQWEsQ0FBQyxDQUFDLE9BQU8sQ0FBQyxDQUFDLEdBQUcsRUFBRSxFQUFFO1lBQ2hELElBQUksR0FBRyxDQUFDLFVBQVUsQ0FBQyxRQUFRLENBQUMsRUFBRSxDQUFDO2dCQUMzQixPQUFPLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxhQUFhLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQztZQUM5QyxDQUFDO1lBQ0QsSUFBSSxHQUFHLENBQUMsVUFBVSxDQUFDLFNBQVMsQ0FBQyxFQUFFLENBQUM7Z0JBQzVCLFFBQVEsQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLGFBQWEsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDO1lBQy9DLENBQUM7UUFDTCxDQUFDLENBQUMsQ0FBQztRQUNILElBQUksT0FBTyxDQUFDLE1BQU0sR0FBRyxDQUFDLEVBQUUsQ0FBQztZQUNyQixJQUFJLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxDQUFDO1FBQ3ZCLENBQUM7UUFDRCxJQUFJLFFBQVEsQ0FBQyxNQUFNLEdBQUcsQ0FBQyxFQUFFLENBQUM7WUFDdEIsUUFBUSxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFO2dCQUNuQixRQUFRLENBQUMsSUFBSSxDQUFDLGtCQUFrQixDQUFDLFdBQVcsRUFBRSxnQkFBZ0IsQ0FBQyxnQ0FBZ0MsQ0FBQyxDQUFDO1lBQ3JHLENBQUMsQ0FBQyxDQUFDO1FBQ1AsQ0FBQztJQUNMLENBQUM7OEdBckJRLDBCQUEwQjtrR0FBMUIsMEJBQTBCOzsyRkFBMUIsMEJBQTBCO2tCQUh0QyxTQUFTO21CQUFDO29CQUNQLFFBQVEsRUFBRSxxQkFBcUI7aUJBQ2xDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRGlyZWN0aXZlLCBPbkluaXQsIFJlbmRlcmVyMiwgaW5qZWN0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBCYXJzYUFwaSB9IGZyb20gJy4uL2Fic3RyYWN0LWNsYXNzZXMnO1xuZGVjbGFyZSBjb25zdCBoZWFkOiBhbnk7XG5ARGlyZWN0aXZlKHtcbiAgICBzZWxlY3RvcjogJ1tsb2FkRXh0ZXJuYWxGaWxlc10nXG59KVxuZXhwb3J0IGNsYXNzIExvYWRFeHRlcm5hbEZpbGVzRGlyZWN0aXZlIGltcGxlbWVudHMgT25Jbml0IHtcbiAgICBfcmVuZGVyZXIyID0gaW5qZWN0KFJlbmRlcmVyMik7XG4gICAgbmdPbkluaXQoKTogdm9pZCB7XG4gICAgICAgIGNvbnN0IGpzZmlsZXM6IHN0cmluZ1tdID0gW107XG4gICAgICAgIGNvbnN0IGNzc2ZpbGVzOiBzdHJpbmdbXSA9IFtdO1xuICAgICAgICBPYmplY3Qua2V5cyhCYXJzYUFwaS5Mb2dpbkZvcm1EYXRhKS5mb3JFYWNoKChrZXkpID0+IHtcbiAgICAgICAgICAgIGlmIChrZXkuc3RhcnRzV2l0aCgnSlNGaWxlJykpIHtcbiAgICAgICAgICAgICAgICBqc2ZpbGVzLnB1c2goQmFyc2FBcGkuTG9naW5Gb3JtRGF0YVtrZXldKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGlmIChrZXkuc3RhcnRzV2l0aCgnQ1NTRmlsZScpKSB7XG4gICAgICAgICAgICAgICAgY3NzZmlsZXMucHVzaChCYXJzYUFwaS5Mb2dpbkZvcm1EYXRhW2tleV0pO1xuICAgICAgICAgICAgfVxuICAgICAgICB9KTtcbiAgICAgICAgaWYgKGpzZmlsZXMubGVuZ3RoID4gMCkge1xuICAgICAgICAgICAgaGVhZC5sb2FkKGpzZmlsZXMpO1xuICAgICAgICB9XG4gICAgICAgIGlmIChjc3NmaWxlcy5sZW5ndGggPiAwKSB7XG4gICAgICAgICAgICBjc3NmaWxlcy5mb3JFYWNoKChjKSA9PiB7XG4gICAgICAgICAgICAgICAgZG9jdW1lbnQuaGVhZC5pbnNlcnRBZGphY2VudEhUTUwoJ2JlZm9yZWVuZCcsIGAgPGxpbmsgaHJlZj1cIiR7Y31cIiByZWw9XCJzdHlsZXNoZWV0XCIgbm9wb3J0YWwgLz5gKTtcbiAgICAgICAgICAgIH0pO1xuICAgICAgICB9XG4gICAgfVxufVxuIl19
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
import { Pipe } from '@angular/core';
|
|
2
|
+
import { getDeviceIsMobile } from '../constants';
|
|
3
|
+
import * as i0 from "@angular/core";
|
|
4
|
+
export class HideColumnsInmobilePipe {
|
|
5
|
+
transform(columns, hideColumnsInMobile) {
|
|
6
|
+
if (!columns?.length || !hideColumnsInMobile || !getDeviceIsMobile()) {
|
|
7
|
+
return columns;
|
|
8
|
+
}
|
|
9
|
+
const arrOfColumns = hideColumnsInMobile.split(',');
|
|
10
|
+
const x = columns.filter((column, i) => arrOfColumns.indexOf(column.Caption) === -1 && arrOfColumns.indexOf(column.Name) === -1);
|
|
11
|
+
return x;
|
|
12
|
+
}
|
|
13
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.5", ngImport: i0, type: HideColumnsInmobilePipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe }); }
|
|
14
|
+
static { this.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "17.3.5", ngImport: i0, type: HideColumnsInmobilePipe, name: "hideColumnsInmobile" }); }
|
|
15
|
+
}
|
|
16
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.5", ngImport: i0, type: HideColumnsInmobilePipe, decorators: [{
|
|
17
|
+
type: Pipe,
|
|
18
|
+
args: [{
|
|
19
|
+
name: 'hideColumnsInmobile'
|
|
20
|
+
}]
|
|
21
|
+
}] });
|
|
22
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaGlkZS1jb2x1bW5zLWlubW9iaWxlLnBpcGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9iYXJzYS1ub3Zpbi1yYXktY29yZS9zcmMvbGliL3BpcGVzL2hpZGUtY29sdW1ucy1pbm1vYmlsZS5waXBlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBaUIsSUFBSSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRXBELE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLGNBQWMsQ0FBQzs7QUFLakQsTUFBTSxPQUFPLHVCQUF1QjtJQUNoQyxTQUFTLENBQUMsT0FBMkIsRUFBRSxtQkFBMkI7UUFDOUQsSUFBSSxDQUFDLE9BQU8sRUFBRSxNQUFNLElBQUksQ0FBQyxtQkFBbUIsSUFBSSxDQUFDLGlCQUFpQixFQUFFLEVBQUUsQ0FBQztZQUNuRSxPQUFPLE9BQU8sQ0FBQztRQUNuQixDQUFDO1FBQ0QsTUFBTSxZQUFZLEdBQUcsbUJBQW1CLENBQUMsS0FBSyxDQUFDLEdBQUcsQ0FBQyxDQUFDO1FBQ3BELE1BQU0sQ0FBQyxHQUFHLE9BQU8sQ0FBQyxNQUFNLENBQ3BCLENBQUMsTUFBTSxFQUFFLENBQUMsRUFBRSxFQUFFLENBQUMsWUFBWSxDQUFDLE9BQU8sQ0FBQyxNQUFNLENBQUMsT0FBTyxDQUFDLEtBQUssQ0FBQyxDQUFDLElBQUksWUFBWSxDQUFDLE9BQU8sQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQ3pHLENBQUM7UUFFRixPQUFPLENBQUMsQ0FBQztJQUNiLENBQUM7OEdBWFEsdUJBQXVCOzRHQUF2Qix1QkFBdUI7OzJGQUF2Qix1QkFBdUI7a0JBSG5DLElBQUk7bUJBQUM7b0JBQ0YsSUFBSSxFQUFFLHFCQUFxQjtpQkFDOUIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBQaXBlVHJhbnNmb3JtLCBQaXBlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBSZXBvcnRWaWV3Q29sdW1uIH0gZnJvbSAnLi4vYWJzdHJhY3QtY2xhc3Nlcyc7XG5pbXBvcnQgeyBnZXREZXZpY2VJc01vYmlsZSB9IGZyb20gJy4uL2NvbnN0YW50cyc7XG5cbkBQaXBlKHtcbiAgICBuYW1lOiAnaGlkZUNvbHVtbnNJbm1vYmlsZSdcbn0pXG5leHBvcnQgY2xhc3MgSGlkZUNvbHVtbnNJbm1vYmlsZVBpcGUgaW1wbGVtZW50cyBQaXBlVHJhbnNmb3JtIHtcbiAgICB0cmFuc2Zvcm0oY29sdW1uczogUmVwb3J0Vmlld0NvbHVtbltdLCBoaWRlQ29sdW1uc0luTW9iaWxlOiBzdHJpbmcpOiBSZXBvcnRWaWV3Q29sdW1uW10ge1xuICAgICAgICBpZiAoIWNvbHVtbnM/Lmxlbmd0aCB8fCAhaGlkZUNvbHVtbnNJbk1vYmlsZSB8fCAhZ2V0RGV2aWNlSXNNb2JpbGUoKSkge1xuICAgICAgICAgICAgcmV0dXJuIGNvbHVtbnM7XG4gICAgICAgIH1cbiAgICAgICAgY29uc3QgYXJyT2ZDb2x1bW5zID0gaGlkZUNvbHVtbnNJbk1vYmlsZS5zcGxpdCgnLCcpO1xuICAgICAgICBjb25zdCB4ID0gY29sdW1ucy5maWx0ZXIoXG4gICAgICAgICAgICAoY29sdW1uLCBpKSA9PiBhcnJPZkNvbHVtbnMuaW5kZXhPZihjb2x1bW4uQ2FwdGlvbikgPT09IC0xICYmIGFyck9mQ29sdW1ucy5pbmRleE9mKGNvbHVtbi5OYW1lKSA9PT0gLTFcbiAgICAgICAgKTtcblxuICAgICAgICByZXR1cm4geDtcbiAgICB9XG59XG4iXX0=
|
|
@@ -44,4 +44,5 @@ export * from './th-image-icon.pipe';
|
|
|
44
44
|
export * from './find-preview-column.pipe';
|
|
45
45
|
export * from './replace.pipe';
|
|
46
46
|
export * from './filter-workflow-mobile.pipe';
|
|
47
|
-
|
|
47
|
+
export * from './hide-columns-inmobile.pipe';
|
|
48
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9iYXJzYS1ub3Zpbi1yYXktY29yZS9zcmMvbGliL3BpcGVzL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLGNBQWMsd0JBQXdCLENBQUM7QUFDdkMsY0FBYyxnQkFBZ0IsQ0FBQztBQUMvQixjQUFjLGdCQUFnQixDQUFDO0FBQy9CLGNBQWMscUJBQXFCLENBQUM7QUFDcEMsY0FBYywyQkFBMkIsQ0FBQztBQUMxQyxjQUFjLHNCQUFzQixDQUFDO0FBQ3JDLGNBQWMseUJBQXlCLENBQUM7QUFDeEMsY0FBYyxtQkFBbUIsQ0FBQztBQUNsQyxjQUFjLHVCQUF1QixDQUFDO0FBQ3RDLGNBQWMsaUJBQWlCLENBQUM7QUFDaEMsY0FBYyxlQUFlLENBQUM7QUFDOUIsY0FBYyxtQkFBbUIsQ0FBQztBQUNsQyxjQUFjLCtCQUErQixDQUFDO0FBQzlDLGNBQWMsc0JBQXNCLENBQUM7QUFDckMsY0FBYyxhQUFhLENBQUM7QUFDNUIsY0FBYyxzQkFBc0IsQ0FBQztBQUNyQyxjQUFjLHdCQUF3QixDQUFDO0FBQ3ZDLGNBQWMsdUJBQXVCLENBQUM7QUFDdEMsY0FBYyxtQkFBbUIsQ0FBQztBQUNsQyxjQUFjLHNCQUFzQixDQUFDO0FBQ3JDLGNBQWMsNkJBQTZCLENBQUM7QUFDNUMsY0FBYywrQkFBK0IsQ0FBQztBQUM5QyxjQUFjLHlCQUF5QixDQUFDO0FBQ3hDLGNBQWMsNkJBQTZCLENBQUM7QUFDNUMsY0FBYyxtQkFBbUIsQ0FBQztBQUNsQyxjQUFjLG1CQUFtQixDQUFDO0FBQ2xDLGNBQWMsbUJBQW1CLENBQUM7QUFDbEMsY0FBYyxzQkFBc0IsQ0FBQztBQUNyQyxjQUFjLGdDQUFnQyxDQUFDO0FBQy9DLGNBQWMsK0JBQStCLENBQUM7QUFDOUMsY0FBYyxrQ0FBa0MsQ0FBQztBQUNqRCxjQUFjLHlCQUF5QixDQUFDO0FBQ3hDLGNBQWMsZ0JBQWdCLENBQUM7QUFDL0IsY0FBYyx3QkFBd0IsQ0FBQztBQUN2QyxjQUFjLHNCQUFzQixDQUFDO0FBQ3JDLGNBQWMsMkJBQTJCLENBQUM7QUFDMUMsY0FBYyxnQ0FBZ0MsQ0FBQztBQUMvQyxjQUFjLHFCQUFxQixDQUFDO0FBQ3BDLGNBQWMsb0JBQW9CLENBQUM7QUFDbkMsY0FBYyxrQkFBa0IsQ0FBQztBQUNqQyxjQUFjLHNCQUFzQixDQUFDO0FBQ3JDLGNBQWMsNkJBQTZCLENBQUM7QUFDNUMsY0FBYyxzQkFBc0IsQ0FBQztBQUNyQyxjQUFjLDRCQUE0QixDQUFDO0FBQzNDLGNBQWMsZ0JBQWdCLENBQUM7QUFDL0IsY0FBYywrQkFBK0IsQ0FBQztBQUM5QyxjQUFjLDhCQUE4QixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0ICogZnJvbSAnLi9tby1yZXBvcnQtdmFsdWUucGlwZSc7XG5leHBvcnQgKiBmcm9tICcuL251bWVyYWwucGlwZSc7XG5leHBvcnQgKiBmcm9tICcuL2dyb3VwYnkucGlwZSc7XG5leHBvcnQgKiBmcm9tICcuL2NvbnRleHQtbWVudS5waXBlJztcbmV4cG9ydCAqIGZyb20gJy4vaGVhZGVyLWZhY2V0LXZhbHVlLnBpcGUnO1xuZXhwb3J0ICogZnJvbSAnLi9zZXBlcmF0b3ItZml4LnBpcGUnO1xuZXhwb3J0ICogZnJvbSAnLi9jb252ZXJ0LXRvLXN0eWxlLnBpcGUnO1xuZXhwb3J0ICogZnJvbSAnLi90bGJCdXR0b25zLnBpcGUnO1xuZXhwb3J0ICogZnJvbSAnLi9yZW1vdmUtbmV3bGluZS5waXBlJztcbmV4cG9ydCAqIGZyb20gJy4vbW8tdmFsdWUucGlwZSc7XG5leHBvcnQgKiBmcm9tICcuL2ZpbHRlci5waXBlJztcbmV4cG9ydCAqIGZyb20gJy4vZmlsdGVyLXRhYi5waXBlJztcbmV4cG9ydCAqIGZyb20gJy4vbW8tcmVwb3J0LXZhbHVlLWNvbmNhdC5waXBlJztcbmV4cG9ydCAqIGZyb20gJy4vZmlsdGVyLXN0cmluZy5waXBlJztcbmV4cG9ydCAqIGZyb20gJy4vc29ydC5waXBlJztcbmV4cG9ydCAqIGZyb20gJy4vYmJiLXRyYW5zbGF0ZS5waXBlJztcbmV4cG9ydCAqIGZyb20gJy4vYmFyc2EtaWNvbi1kaWN0LnBpcGUnO1xuZXhwb3J0ICogZnJvbSAnLi9maWxlaW5mby1jb3VudC5waXBlJztcbmV4cG9ydCAqIGZyb20gJy4vY29udHJvbC11aS5waXBlJztcbmV4cG9ydCAqIGZyb20gJy4vdmlzaWJsZS12YWx1ZS5waXBlJztcbmV4cG9ydCAqIGZyb20gJy4vZGF0ZS10aW1lLXRvLWNhcHRpb24ucGlwZSc7XG5leHBvcnQgKiBmcm9tICcuL2ZpbHRlci10b29sYmFyLWNvbnRyb2wucGlwZSc7XG5leHBvcnQgKiBmcm9tICcuL211bHRpcGxlLWdyb3VwYnkucGlwZSc7XG5leHBvcnQgKiBmcm9tICcuL3BpY3R1cmUtZmllbGQtc291cmNlLnBpcGUnO1xuZXhwb3J0ICogZnJvbSAnLi9maW9yaS1pY29uLnBpcGUnO1xuZXhwb3J0ICogZnJvbSAnLi9jYW4tdXBsb2FkLnBpcGUnO1xuZXhwb3J0ICogZnJvbSAnLi9saXN0LWNvdW50LnBpcGUnO1xuZXhwb3J0ICogZnJvbSAnLi90b3RhbC1zdW1tYXJ5LnBpcGUnO1xuZXhwb3J0ICogZnJvbSAnLi9tZXJnZS1maWVsZHMtdG8tY29sdW1ucy5waXBlJztcbmV4cG9ydCAqIGZyb20gJy4vZmluZC1jb2x1bW4tYnktZGItbmFtZS5waXBlJztcbmV4cG9ydCAqIGZyb20gJy4vZmlsdGVyLWNvbHVtbnMtYnktZGV0YWlscy5waXBlJztcbmV4cG9ydCAqIGZyb20gJy4vbW8taW5mby11bHYtZGF0YS5waXBlJztcbmV4cG9ydCAqIGZyb20gJy4vcmV2ZXJzZS5waXBlJztcbmV4cG9ydCAqIGZyb20gJy4vY29sdW1uLWN1c3RvbXVpLnBpcGUnO1xuZXhwb3J0ICogZnJvbSAnLi9zYW5pdGl6ZS10ZXh0LnBpcGUnO1xuZXhwb3J0ICogZnJvbSAnLi9tby1pbmZvLXVsdi1wYWdpbmcucGlwZSc7XG5leHBvcnQgKiBmcm9tICcuL2NvbHVtbi1jdXN0b20tY29tcG9uZW50LnBpcGUnO1xuZXhwb3J0ICogZnJvbSAnLi9jb2x1bW4tdmFsdWUucGlwZSc7XG5leHBvcnQgKiBmcm9tICcuL2NvbHVtbi1pY29uLnBpcGUnO1xuZXhwb3J0ICogZnJvbSAnLi9yb3dudW1iZXIucGlwZSc7XG5leHBvcnQgKiBmcm9tICcuL2NvbWJvLXJvdy1pbWcucGlwZSc7XG5leHBvcnQgKiBmcm9tICcuL3RyZWUtaXRlbS1pc2V4cGFuZGVkLnBpcGUnO1xuZXhwb3J0ICogZnJvbSAnLi90aC1pbWFnZS1pY29uLnBpcGUnO1xuZXhwb3J0ICogZnJvbSAnLi9maW5kLXByZXZpZXctY29sdW1uLnBpcGUnO1xuZXhwb3J0ICogZnJvbSAnLi9yZXBsYWNlLnBpcGUnO1xuZXhwb3J0ICogZnJvbSAnLi9maWx0ZXItd29ya2Zsb3ctbW9iaWxlLnBpcGUnO1xuZXhwb3J0ICogZnJvbSAnLi9oaWRlLWNvbHVtbnMtaW5tb2JpbGUucGlwZSc7XG4iXX0=
|
|
@@ -5,6 +5,7 @@ import { BarsaApi, PageBaseComponent } from '../abstract-classes';
|
|
|
5
5
|
import { isInLocalMode } from '../constants';
|
|
6
6
|
import * as i0 from "@angular/core";
|
|
7
7
|
import * as i1 from "@angular/router";
|
|
8
|
+
import * as i2 from "../directives/load-external-files.directive";
|
|
8
9
|
export class RootPortalComponent extends PageBaseComponent {
|
|
9
10
|
constructor() {
|
|
10
11
|
super(...arguments);
|
|
@@ -69,110 +70,87 @@ export class RootPortalComponent extends PageBaseComponent {
|
|
|
69
70
|
renderPlaceHolders(pageData) {
|
|
70
71
|
super.renderPlaceHolders(pageData);
|
|
71
72
|
this.addFooter(pageData);
|
|
72
|
-
const jsfiles = [];
|
|
73
|
-
const cssfiles = [];
|
|
74
|
-
Object.keys(BarsaApi.LoginFormData).forEach((key) => {
|
|
75
|
-
if (key.startsWith('JSFile')) {
|
|
76
|
-
jsfiles.push(BarsaApi.LoginFormData[key]);
|
|
77
|
-
}
|
|
78
|
-
if (key.startsWith('CSSFile')) {
|
|
79
|
-
cssfiles.push(BarsaApi.LoginFormData[key]);
|
|
80
|
-
}
|
|
81
|
-
});
|
|
82
73
|
BigNumber.prototype.subtract = BigNumber.prototype.minus;
|
|
83
74
|
BigNumber.prototype.add = BigNumber.prototype.plus;
|
|
84
|
-
if (jsfiles.length > 0) {
|
|
85
|
-
head.load(jsfiles);
|
|
86
|
-
}
|
|
87
|
-
if (cssfiles.length > 0) {
|
|
88
|
-
cssfiles.forEach((c) => {
|
|
89
|
-
document.head.insertAdjacentHTML('beforeend', ` <link href="${c}" rel="stylesheet" noportal />`);
|
|
90
|
-
});
|
|
91
|
-
}
|
|
92
75
|
const { BackgroundId } = this.pageData;
|
|
93
76
|
if (BackgroundId) {
|
|
94
77
|
this._renderer2.addClass(this._el.nativeElement, 'root-custom-background');
|
|
95
78
|
this.imageUrl = `/IH.ashx?ty=ID&moId=&id=${BackgroundId}&si=1920&sih=1080`;
|
|
96
|
-
// this._renderer2.setStyle(
|
|
97
|
-
// this._el.nativeElement,
|
|
98
|
-
// 'background',
|
|
99
|
-
// );
|
|
100
|
-
// this._renderer2.setStyle(this._el.nativeElement, 'background-size', `cover`);
|
|
101
79
|
}
|
|
102
80
|
}
|
|
103
81
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.5", ngImport: i0, type: RootPortalComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
|
|
104
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.3.5", type: RootPortalComponent, selector: "bnrc-root-portal", viewQueries: [{ propertyName: "sectionRef", first: true, predicate: ["sectionRef"], descendants: true }, { propertyName: "footerRefVcr", first: true, predicate: ["footerRef"], descendants: true, read: ViewContainerRef }], usesInheritance: true, ngImport: i0, template: `
|
|
105
|
-
@if(inLocalMode){
|
|
106
|
-
<div class="fd-toolbar" style="flex-wrap:wrap;padding:0.5rem;height:auto">
|
|
107
|
-
<button class="fd-button fd-button--attention is-compact" (click)="onRemoveOfflineData()">
|
|
108
|
-
حذف اطلاعات آفلاین
|
|
109
|
-
</button>
|
|
110
|
-
<button class="fd-button fd-button--negative is-compact" (click)="onRemoveOfflineDataAndReturnToOnline()">
|
|
111
|
-
حذف اطلاعات آفلاین و برگشت به حالت آنلاین
|
|
112
|
-
</button>
|
|
113
|
-
<button class="fd-button fd-button--positive is-compact" (click)="onSendOfflineDataToServer()">
|
|
114
|
-
ارسال اطلاعات آفلاین به سرور
|
|
115
|
-
</button>
|
|
116
|
-
</div>
|
|
117
|
-
} @if (imageUrl) {
|
|
118
|
-
<div id="headerSpaceHolder" #headerSpaceHolder>
|
|
119
|
-
<div id="bgOuterHolder" #bgOuterHolder>
|
|
120
|
-
<div id="bgInnerHolder" style="height: 100vh">
|
|
121
|
-
<div class="backgroundImage" id="backgroundImage">
|
|
122
|
-
<img class="picture" [src]="imageUrl" loading="lazy" />
|
|
123
|
-
<span id="backgroundImageOverlay" class="overlay"></span>
|
|
124
|
-
</div>
|
|
125
|
-
</div>
|
|
126
|
-
</div>
|
|
127
|
-
</div>
|
|
128
|
-
}
|
|
129
|
-
<section class="section" id="mainpage" #sectionRef>
|
|
130
|
-
<div #containerRef></div>
|
|
131
|
-
</section>
|
|
132
|
-
<div class="page-wrapper">
|
|
133
|
-
<router-outlet></router-outlet>
|
|
134
|
-
</div>
|
|
135
|
-
<!-- <footer #footerRef></footer> -->
|
|
136
|
-
<ng-container #footerRef></ng-container>
|
|
137
|
-
`, isInline: true, dependencies: [{ kind: "directive", type: i1.RouterOutlet, selector: "router-outlet", inputs: ["name"], outputs: ["activate", "deactivate", "attach", "detach"], exportAs: ["outlet"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
82
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.3.5", type: RootPortalComponent, selector: "bnrc-root-portal", viewQueries: [{ propertyName: "sectionRef", first: true, predicate: ["sectionRef"], descendants: true }, { propertyName: "footerRefVcr", first: true, predicate: ["footerRef"], descendants: true, read: ViewContainerRef }], usesInheritance: true, ngImport: i0, template: `
|
|
83
|
+
@if(inLocalMode){
|
|
84
|
+
<div class="fd-toolbar" style="flex-wrap:wrap;padding:0.5rem;height:auto">
|
|
85
|
+
<button class="fd-button fd-button--attention is-compact" (click)="onRemoveOfflineData()">
|
|
86
|
+
حذف اطلاعات آفلاین
|
|
87
|
+
</button>
|
|
88
|
+
<button class="fd-button fd-button--negative is-compact" (click)="onRemoveOfflineDataAndReturnToOnline()">
|
|
89
|
+
حذف اطلاعات آفلاین و برگشت به حالت آنلاین
|
|
90
|
+
</button>
|
|
91
|
+
<button class="fd-button fd-button--positive is-compact" (click)="onSendOfflineDataToServer()">
|
|
92
|
+
ارسال اطلاعات آفلاین به سرور
|
|
93
|
+
</button>
|
|
94
|
+
</div>
|
|
95
|
+
} @if (imageUrl) {
|
|
96
|
+
<div id="headerSpaceHolder" #headerSpaceHolder>
|
|
97
|
+
<div id="bgOuterHolder" #bgOuterHolder>
|
|
98
|
+
<div id="bgInnerHolder" style="height: 100vh">
|
|
99
|
+
<div class="backgroundImage" id="backgroundImage">
|
|
100
|
+
<img class="picture" [src]="imageUrl" loading="lazy" />
|
|
101
|
+
<span id="backgroundImageOverlay" class="overlay"></span>
|
|
102
|
+
</div>
|
|
103
|
+
</div>
|
|
104
|
+
</div>
|
|
105
|
+
</div>
|
|
106
|
+
}
|
|
107
|
+
<section loadExternalFiles class="section" id="mainpage" #sectionRef>
|
|
108
|
+
<div #containerRef></div>
|
|
109
|
+
</section>
|
|
110
|
+
<div class="page-wrapper">
|
|
111
|
+
<router-outlet></router-outlet>
|
|
112
|
+
</div>
|
|
113
|
+
<!-- <footer #footerRef></footer> -->
|
|
114
|
+
<ng-container #footerRef></ng-container>
|
|
115
|
+
`, isInline: true, dependencies: [{ kind: "directive", type: i1.RouterOutlet, selector: "router-outlet", inputs: ["name"], outputs: ["activate", "deactivate", "attach", "detach"], exportAs: ["outlet"] }, { kind: "directive", type: i2.LoadExternalFilesDirective, selector: "[loadExternalFiles]" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
138
116
|
}
|
|
139
117
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.5", ngImport: i0, type: RootPortalComponent, decorators: [{
|
|
140
118
|
type: Component,
|
|
141
119
|
args: [{
|
|
142
120
|
selector: 'bnrc-root-portal',
|
|
143
|
-
template: `
|
|
144
|
-
@if(inLocalMode){
|
|
145
|
-
<div class="fd-toolbar" style="flex-wrap:wrap;padding:0.5rem;height:auto">
|
|
146
|
-
<button class="fd-button fd-button--attention is-compact" (click)="onRemoveOfflineData()">
|
|
147
|
-
حذف اطلاعات آفلاین
|
|
148
|
-
</button>
|
|
149
|
-
<button class="fd-button fd-button--negative is-compact" (click)="onRemoveOfflineDataAndReturnToOnline()">
|
|
150
|
-
حذف اطلاعات آفلاین و برگشت به حالت آنلاین
|
|
151
|
-
</button>
|
|
152
|
-
<button class="fd-button fd-button--positive is-compact" (click)="onSendOfflineDataToServer()">
|
|
153
|
-
ارسال اطلاعات آفلاین به سرور
|
|
154
|
-
</button>
|
|
155
|
-
</div>
|
|
156
|
-
} @if (imageUrl) {
|
|
157
|
-
<div id="headerSpaceHolder" #headerSpaceHolder>
|
|
158
|
-
<div id="bgOuterHolder" #bgOuterHolder>
|
|
159
|
-
<div id="bgInnerHolder" style="height: 100vh">
|
|
160
|
-
<div class="backgroundImage" id="backgroundImage">
|
|
161
|
-
<img class="picture" [src]="imageUrl" loading="lazy" />
|
|
162
|
-
<span id="backgroundImageOverlay" class="overlay"></span>
|
|
163
|
-
</div>
|
|
164
|
-
</div>
|
|
165
|
-
</div>
|
|
166
|
-
</div>
|
|
167
|
-
}
|
|
168
|
-
<section class="section" id="mainpage" #sectionRef>
|
|
169
|
-
<div #containerRef></div>
|
|
170
|
-
</section>
|
|
171
|
-
<div class="page-wrapper">
|
|
172
|
-
<router-outlet></router-outlet>
|
|
173
|
-
</div>
|
|
174
|
-
<!-- <footer #footerRef></footer> -->
|
|
175
|
-
<ng-container #footerRef></ng-container>
|
|
121
|
+
template: `
|
|
122
|
+
@if(inLocalMode){
|
|
123
|
+
<div class="fd-toolbar" style="flex-wrap:wrap;padding:0.5rem;height:auto">
|
|
124
|
+
<button class="fd-button fd-button--attention is-compact" (click)="onRemoveOfflineData()">
|
|
125
|
+
حذف اطلاعات آفلاین
|
|
126
|
+
</button>
|
|
127
|
+
<button class="fd-button fd-button--negative is-compact" (click)="onRemoveOfflineDataAndReturnToOnline()">
|
|
128
|
+
حذف اطلاعات آفلاین و برگشت به حالت آنلاین
|
|
129
|
+
</button>
|
|
130
|
+
<button class="fd-button fd-button--positive is-compact" (click)="onSendOfflineDataToServer()">
|
|
131
|
+
ارسال اطلاعات آفلاین به سرور
|
|
132
|
+
</button>
|
|
133
|
+
</div>
|
|
134
|
+
} @if (imageUrl) {
|
|
135
|
+
<div id="headerSpaceHolder" #headerSpaceHolder>
|
|
136
|
+
<div id="bgOuterHolder" #bgOuterHolder>
|
|
137
|
+
<div id="bgInnerHolder" style="height: 100vh">
|
|
138
|
+
<div class="backgroundImage" id="backgroundImage">
|
|
139
|
+
<img class="picture" [src]="imageUrl" loading="lazy" />
|
|
140
|
+
<span id="backgroundImageOverlay" class="overlay"></span>
|
|
141
|
+
</div>
|
|
142
|
+
</div>
|
|
143
|
+
</div>
|
|
144
|
+
</div>
|
|
145
|
+
}
|
|
146
|
+
<section loadExternalFiles class="section" id="mainpage" #sectionRef>
|
|
147
|
+
<div #containerRef></div>
|
|
148
|
+
</section>
|
|
149
|
+
<div class="page-wrapper">
|
|
150
|
+
<router-outlet></router-outlet>
|
|
151
|
+
</div>
|
|
152
|
+
<!-- <footer #footerRef></footer> -->
|
|
153
|
+
<ng-container #footerRef></ng-container>
|
|
176
154
|
`,
|
|
177
155
|
changeDetection: ChangeDetectionStrategy.OnPush
|
|
178
156
|
}]
|
|
@@ -183,4 +161,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.5", ngImpor
|
|
|
183
161
|
type: ViewChild,
|
|
184
162
|
args: ['footerRef', { read: ViewContainerRef }]
|
|
185
163
|
}] } });
|
|
186
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicm9vdC1wb3J0YWwuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYmFyc2Etbm92aW4tcmF5LWNvcmUvc3JjL2xpYi9yb290LXBvcnRhbC9yb290LXBvcnRhbC5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLHVCQUF1QixFQUFFLFNBQVMsRUFBc0IsU0FBUyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRXBILE9BQU8sRUFBRSxhQUFhLEVBQUUsZUFBZSxFQUFFLFdBQVcsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQzlFLE9BQU8sRUFBYyxTQUFTLEVBQUUsR0FBRyxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBRWxELE9BQU8sRUFBRSxRQUFRLEVBQUUsaUJBQWlCLEVBQWlCLE1BQU0scUJBQXFCLENBQUM7QUFDakYsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLGNBQWMsQ0FBQzs7O0FBMEM3QyxNQUFNLE9BQU8sbUJBQW9CLFNBQVEsaUJBQWlCO0lBdEMxRDs7UUEyQ0ksV0FBTSxHQUFHLElBQUksQ0FBQztRQUNkLGdCQUFXLEdBQUcsSUFBSSxDQUFDO0tBaUd0QjtJQS9GRyxRQUFRO1FBQ0osS0FBSyxDQUFDLFFBQVEsRUFBRSxDQUFDO1FBQ2pCLElBQUksQ0FBQyxXQUFXLEdBQUcsYUFBYSxFQUFFLENBQUM7UUFDbkMsMkJBQTJCO1FBRTNCLElBQUksQ0FBQyxPQUFPLENBQUMsTUFBTSxDQUFDLFNBQVMsQ0FBQyxDQUFDLEtBQUssRUFBRSxFQUFFO1lBQ3BDLElBQUksS0FBSyxZQUFZLGVBQWUsSUFBSSxLQUFLLFlBQVksV0FBVyxFQUFFLENBQUM7Z0JBQ25FLElBQUksQ0FBQyxjQUFjLENBQUMsY0FBYyxDQUFDLEtBQUssQ0FBQyxDQUFDO1lBQzlDLENBQUM7WUFDRCxJQUFJLEtBQUssWUFBWSxhQUFhLElBQUksS0FBSyxZQUFZ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QUM7UUFDUCxDQUFDO1FBQ0QsTUFBTSxFQUFFLFlBQVksRUFBRSxHQUFHLElBQUksQ0FBQyxRQUFlLENBQUM7UUFDOUMsSUFBSSxZQUFZLEVBQUUsQ0FBQztZQUNmLElBQUksQ0FBQyxVQUFVLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsYUFBYSxFQUFFLHdCQUF3QixDQUFDLENBQUM7WUFDM0UsSUFBSSxDQUFDLFFBQVEsR0FBRywyQkFBMkIsWUFBWSxtQkFBbUIsQ0FBQztZQUMzRSw0QkFBNEI7WUFDNUIsOEJBQThCO1lBQzlCLG9CQUFvQjtZQUVwQixLQUFLO1lBQ0wsZ0ZBQWdGO1FBQ3BGLENBQUM7SUFDTCxDQUFDOzhHQXRHUSxtQkFBbUI7a0dBQW5CLG1CQUFtQix5T0FFSSxnQkFBZ0Isb0RBdEN0Qzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0tBaUNUOzsyRkFHUSxtQkFBbUI7a0JBdEMvQixTQUFTO21CQUFDO29CQUNQLFFBQVEsRUFBRSxrQkFBa0I7b0JBQzVCLFFBQVEsRUFBRTs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0tBaUNUO29CQUNELGVBQWUsRUFBRSx1QkFBdUIsQ0FBQyxNQUFNO2lCQUNsRDs4QkFFNEIsVUFBVTtzQkFBbEMsU0FBUzt1QkFBQyxZQUFZO2dCQUM2QixZQUFZO3NCQUEvRCxTQUFTO3VCQUFDLFdBQVcsRUFBRSxFQUFFLElBQUksRUFBRSxnQkFBZ0IsRUFBRSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENoYW5nZURldGVjdGlvblN0cmF0ZWd5LCBDb21wb25lbnQsIEVsZW1lbnRSZWYsIE9uSW5pdCwgVmlld0NoaWxkLCBWaWV3Q29udGFpbmVyUmVmIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcblxyXG5pbXBvcnQgeyBOYXZpZ2F0aW9uRW5kLCBOYXZpZ2F0aW9uU3RhcnQsIFJvdXRlckV2ZW50IH0gZnJvbSAnQGFuZ3VsYXIvcm91dGVyJztcclxuaW1wb3J0IHsgT2JzZXJ2YWJsZSwgdGFrZVVudGlsLCB0YXAgfSBmcm9tICdyeGpzJztcclxuXHJcbmltcG9ydCB7IEJhcnNhQXBpLCBQYWdlQmFzZUNvbXBvbmVudCwgUGFnZURhdGFNb2RlbCB9IGZyb20gJy4uL2Fic3RyYWN0LWNsYXNzZXMnO1xyXG5pbXBvcnQgeyBpc0luTG9jYWxNb2RlIH0gZnJvbSAnLi4vY29uc3RhbnRzJztcclxuZGVjbGFyZSBjb25zdCBoZWFkOiBhbnk7XHJcbmRlY2xhcmUgY29uc3QgQmlnTnVtYmVyOiBhbnk7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICAgIHNlbGVjdG9yOiAnYm5yYy1yb290LXBvcnRhbCcsXHJcbiAgICB0ZW1wbGF0ZTogYFxyXG4gICAgICAgIEBpZihpbkxvY2FsTW9kZSl7XHJcbiAgICAgICAgPGRpdiBjbGFzcz1cImZkLXRvb2xiYXJcIiBzdHlsZT1cImZsZXgtd3JhcDp3cmFwO3BhZGRpbmc6MC41cmVtO2hlaWdodDphdXRvXCI+XHJcbiAgICAgICAgICAgIDxidXR0b24gY2xhc3M9XCJmZC1idXR0b24gZmQtYnV0dG9uLS1hdHRlbnRpb24gaXMtY29tcGFjdFwiIChjbGljayk9XCJvblJlbW92ZU9mZmxpbmVEYXRhKClcIj5cclxuICAgICAgICAgICAgICAgINit2LDZgSDYp9i32YTYp9i52KfYqiDYotmB2YTYp9uM2YZcclxuICAgICAgICAgICAgPC9idXR0b24+XHJcbiAgICAgICAgICAgIDxidXR0b24gY2xhc3M9XCJmZC1idXR0b24gZmQtYnV0dG9uLS1uZWdhdGl2ZSBpcy1jb21wYWN0XCIgKGNsaWNrKT1cIm9uUmVtb3ZlT2ZmbGluZURhdGFBbmRSZXR1cm5Ub09ubGluZSgpXCI+XHJcbiAgICAgICAgICAgICAgICDYrdiw2YEg2KfYt9mE2KfYudin2Kog2KLZgdmE2KfbjNmGINmIINio2LHar9i02Kog2KjZhyDYrdin2YTYqiDYotmG2YTYp9uM2YZcclxuICAgICAgICAgICAgPC9idXR0b24+XHJcbiAgICAgICAgICAgIDxidXR0b24gY2xhc3M9XCJmZC1idXR0b24gZmQtYnV0dG9uLS1wb3NpdGl2ZSBpcy1jb21wYWN0XCIgKGNsaWNrKT1cIm9uU2VuZE9mZmxpbmVEYXRhVG9TZXJ2ZXIoKVwiPlxyXG4gICAgICAgICAgICAgICAg2KfYsdiz2KfZhCDYp9i32YTYp9i52KfYqiDYotmB2YTYp9uM2YYg2KjZhyDYs9ix2YjYsVxyXG4gICAgICAgICAgICA8L2J1dHRvbj5cclxuICAgICAgICA8L2Rpdj5cclxuICAgICAgICB9IEBpZiAoaW1hZ2VVcmwpIHtcclxuICAgICAgICA8ZGl2IGlkPVwiaGVhZGVyU3BhY2VIb2xkZXJcIiAjaGVhZGVyU3BhY2VIb2xkZXI+XHJcbiAgICAgICAgICAgIDxkaXYgaWQ9XCJiZ091dGVySG9sZGVyXCIgI2JnT3V0ZXJIb2xkZXI+XHJcbiAgICAgICAgICAgICAgICA8ZGl2IGlkPVwiYmdJbm5lckhvbGRlclwiIHN0eWxlPVwiaGVpZ2h0OiAxMDB2aFwiPlxyXG4gICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJiYWNrZ3JvdW5kSW1hZ2VcIiBpZD1cImJhY2tncm91bmRJbWFnZVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8aW1nIGNsYXNzPVwicGljdHVyZVwiIFtzcmNdPVwiaW1hZ2VVcmxcIiBsb2FkaW5nPVwibGF6eVwiIC8+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGlkPVwiYmFja2dyb3VuZEltYWdlT3ZlcmxheVwiIGNsYXNzPVwib3ZlcmxheVwiPjwvc3Bhbj5cclxuICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICA8L2Rpdj5cclxuICAgICAgICB9XHJcbiAgICAgICAgPHNlY3Rpb24gY2xhc3M9XCJzZWN0aW9uXCIgaWQ9XCJtYWlucGFnZVwiICNzZWN0aW9uUmVmPlxyXG4gICAgICAgICAgICA8ZGl2ICNjb250YWluZXJSZWY+PC9kaXY+XHJcbiAgICAgICAgPC9zZWN0aW9uPlxyXG4gICAgICAgIDxkaXYgY2xhc3M9XCJwYWdlLXdyYXBwZXJcIj5cclxuICAgICAgICAgICAgPHJvdXRlci1vdXRsZXQ+PC9yb3V0ZXItb3V0bGV0PlxyXG4gICAgICAgIDwvZGl2PlxyXG4gICAgICAgIDwhLS0gPGZvb3RlciAjZm9vdGVyUmVmPjwvZm9vdGVyPiAtLT5cclxuICAgICAgICA8bmctY29udGFpbmVyICNmb290ZXJSZWY+PC9uZy1jb250YWluZXI+XHJcbiAgICBgLFxyXG4gICAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2hcclxufSlcclxuZXhwb3J0IGNsYXNzIFJvb3RQb3J0YWxDb21wb25lbnQgZXh0ZW5kcyBQYWdlQmFzZUNvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCB7XHJcbiAgICBAVmlld0NoaWxkKCdzZWN0aW9uUmVmJykgc2VjdGlvblJlZjogRWxlbWVudFJlZjtcclxuICAgIEBWaWV3Q2hpbGQoJ2Zvb3RlclJlZicsIHsgcmVhZDogVmlld0NvbnRhaW5lclJlZiB9KSBmb290ZXJSZWZWY3I6IFZpZXdDb250YWluZXJSZWY7XHJcbiAgICBwb3J0YWxMb2FkaW5nJDogT2JzZXJ2YWJsZTxib29sZWFuPjtcclxuICAgIG1vZHVsZXM6IGFueTtcclxuICAgIGlzUm9vdCA9IHRydWU7XHJcbiAgICBpbkxvY2FsTW9kZSA9IHRydWU7XHJcbiAgICBpbWFnZVVybDogc3RyaW5nO1xyXG4gICAgbmdPbkluaXQoKTogdm9pZCB7XHJcbiAgICAgICAgc3VwZXIubmdPbkluaXQoKTtcclxuICAgICAgICB0aGlzLmluTG9jYWxNb2RlID0gaXNJbkxvY2FsTW9kZSgpO1xyXG4gICAgICAgIC8vIHRoaXMuaW5Mb2NhbE1vZGUgPSB0cnVlO1xyXG5cclxuICAgICAgICB0aGlzLl9yb3V0ZXIuZXZlbnRzLnN1YnNjcmliZSgoZXZlbnQpID0+IHtcclxuICAgICAgICAgICAgaWYgKGV2ZW50IGluc3RhbmNlb2YgTmF2aWdhdGlvblN0YXJ0ICYmIGV2ZW50IGluc3RhbmNlb2YgUm91dGVyRXZlbnQpIHtcclxuICAgICAgICAgICAgICAgIHRoaXMuX3BvcnRhbFNlcnZpY2UubmF2aWF0aW9uU3RhcnQoZXZlbnQpO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIGlmIChldmVudCBpbnN0YW5jZW9mIE5hdmlnYXRpb25FbmQgJiYgZXZlbnQgaW5zdGFuY2VvZiBSb3V0ZXJFdmVudCkge1xyXG4gICAgICAgICAgICAgICAgdGhpcy5fcG9ydGFsU2VydmljZS5uYXZpYXRpb25FbmQoZXZlbnQpO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfSk7XHJcbiAgICB9XHJcbiAgICBwcm90ZWN0ZWQgb25TZW5kT2ZmbGluZURhdGFUb1NlcnZlcigpOiB2b2lkIHtcclxuICAgICAgICBCYXJzYUFwaS5Cdy5Nc2cuWWVzTm8oQmFyc2FBcGkuQkJCLk9mZmxpbmVHb09ubGluZSwgQmFyc2FBcGkuQkJCLkRlbGV0ZSwgZnVuY3Rpb24gKGJ1dHRvbklkKSB7XHJcbiAgICAgICAgICAgIGlmIChidXR0b25JZCA9PT0gJ3llcycpIHtcclxuICAgICAgICAgICAgICAgIEJhcnNhQXBpLkJ3Lk1zZy5XYWl0KDAsIEJhcnNhQXBpLkJCQi5Mb2FkaW5nTWFza01zZywgJ3dhaXQnKTtcclxuICAgICAgICAgICAgICAgIEJhcnNhQXBpLk9mZmxpbmUuR29PbmxpbmUoZnVuY3Rpb24gKCkge1xyXG4gICAgICAgICAgICAgICAgICAgIHdpbmRvdy5sb2NhdGlvbi5yZWxvYWQoKTtcclxuICAgICAgICAgICAgICAgIH0pO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfSk7XHJcbiAgICB9XHJcbiAgICBwcm90ZWN0ZWQgb25SZW1vdmVPZmZsaW5lRGF0YUFuZFJldHVyblRvT25saW5lKCk6IHZvaWQge1xyXG4gICAgICAgIEJhcnNhQXBpLkJ3Lk1zZy5ZZXNObyhCYXJzYUFwaS5CQkIuT2ZmbGluZUNsZWFyQWxsLCBCYXJzYUFwaS5CQkIuRGVsZXRlLCBmdW5jdGlvbiAoYnV0dG9uSWQpIHtcclxuICAgICAgICAgICAgaWYgKGJ1dHRvbklkID09PSAneWVzJykge1xyXG4gICAgICAgICAgICAgICAgQmFyc2FBcGkuT2ZmbGluZS5DbGVhckFsbCgpO1xyXG4gICAgICAgICAgICAgICAgd2luZG93LmxvY2F0aW9uLnJlbG9hZCgpO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfSk7XHJcbiAgICB9XHJcbiAgICBwcm90ZWN0ZWQgb25SZW1vdmVPZmZsaW5lRGF0YSgpOiB2b2lkIHtcclxuICAgICAgICBCYXJzYUFwaS5Cdy5Nc2cuWWVzTm8oQmFyc2FBcGkuQkJCLk9mZmxpbmVDbGVhclVuc2F2ZWREYXRhLCBCYXJzYUFwaS5CQkIuRGVsZXRlLCBmdW5jdGlvbiAoYnV0dG9uSWQpIHtcclxuICAgICAgICAgICAgaWYgKGJ1dHRvbklkID09PSAneWVzJykge1xyXG4gICAgICAgICAgICAgICAgQmFyc2FBcGkuT2ZmbGluZS5DYWNoZWREYXRhLlVuc2F2ZWREYXRhID0ge307XHJcbiAgICAgICAgICAgICAgICBCYXJzYUFwaS5PZmZsaW5lLkNhY2hlZERhdGEuc2F2ZSgpO1xyXG4gICAgICAgICAgICAgICAgQmFyc2FBcGkuQncuVG9hc3QuU3VjY2VzcyhCYXJzYUFwaS5CQkIuQWN0aW9uICsgQmFyc2FBcGkuQkJCLkpvYkNvbXBsZXRlZCk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9KTtcclxuICAgIH1cclxuICAgIHByb3RlY3RlZCBhZGRGb290ZXIocGFnZURhdGE6IFBhZ2VEYXRhTW9kZWwgfCBudWxsKTogdm9pZCB7XHJcbiAgICAgICAgaWYgKCFwYWdlRGF0YT8uRm9vdGVyKSB7XHJcbiAgICAgICAgICAgIHJldHVybjtcclxuICAgICAgICB9XHJcbiAgICAgICAgY29uc3QgZm9vdGVyQ29tcG9uZW50ID0gcGFnZURhdGEuRm9vdGVyLkNvbXBvbmVudDtcclxuICAgICAgICB0aGlzLmdldENvbXBvbmVudEZhY3RvcnkoZm9vdGVyQ29tcG9uZW50KVxyXG4gICAgICAgICAgICAucGlwZShcclxuICAgICAgICAgICAgICAgIHRha2VVbnRpbCh0aGlzLl9vbkRlc3Ryb3kkKSxcclxuICAgICAgICAgICAgICAgIHRhcCgoY29udHJvbFVpKSA9PiB7XHJcbiAgICAgICAgICAgICAgICAgICAgY29udHJvbFVpLmluc3RhbmNlLnNldHRpbmdzID0gZm9vdGVyQ29tcG9uZW50LlNldHRpbmdzO1xyXG4gICAgICAgICAgICAgICAgICAgIGNvbnRyb2xVaS5pbnN0YW5jZS5hY3RpdmF0ZWRSb3V0ZSA9IHRoaXMuX2FjdGl2YXRlZFJvdXRlO1xyXG4gICAgICAgICAgICAgICAgICAgIGlmICh0aGlzLmZvb3RlclJlZlZjcikge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB0aGlzLmZvb3RlclJlZlZjci5pbnNlcnQoY29udHJvbFVpLmhvc3RWaWV3KTtcclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICB9KVxyXG4gICAgICAgICAgICApXHJcbiAgICAgICAgICAgIC5zdWJzY3JpYmUoKTtcclxuICAgIH1cclxuICAgIHByb3RlY3RlZCByZW5kZXJQbGFjZUhvbGRlcnMocGFnZURhdGE6IFBhZ2VEYXRhTW9kZWwgfCBudWxsKTogdm9pZCB7XHJcbiAgICAgICAgc3VwZXIucmVuZGVyUGxhY2VIb2xkZXJzKHBhZ2VEYXRhKTtcclxuICAgICAgICB0aGlzLmFkZEZvb3RlcihwYWdlRGF0YSk7XHJcblxyXG4gICAgICAgIGNvbnN0IGpzZmlsZXM6IHN0cmluZ1tdID0gW107XHJcbiAgICAgICAgY29uc3QgY3NzZmlsZXM6IHN0cmluZ1tdID0gW107XHJcbiAgICAgICAgT2JqZWN0LmtleXMoQmFyc2FBcGkuTG9naW5Gb3JtRGF0YSkuZm9yRWFjaCgoa2V5KSA9PiB7XHJcbiAgICAgICAgICAgIGlmIChrZXkuc3RhcnRzV2l0aCgnSlNGaWxlJykpIHtcclxuICAgICAgICAgICAgICAgIGpzZmlsZXMucHVzaChCYXJzYUFwaS5Mb2dpbkZvcm1EYXRhW2tleV0pO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIGlmIChrZXkuc3RhcnRzV2l0aCgnQ1NTRmlsZScpKSB7XHJcbiAgICAgICAgICAgICAgICBjc3NmaWxlcy5wdXNoKEJhcnNhQXBpLkxvZ2luRm9ybURhdGFba2V5XSk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9KTtcclxuICAgICAgICBCaWdOdW1iZXIucHJvdG90eXBlLnN1YnRyYWN0ID0gQmlnTnVtYmVyLnByb3RvdHlwZS5taW51cztcclxuICAgICAgICBCaWdOdW1iZXIucHJvdG90eXBlLmFkZCA9IEJpZ051bWJlci5wcm90b3R5cGUucGx1cztcclxuICAgICAgICBpZiAoanNmaWxlcy5sZW5ndGggPiAwKSB7XHJcbiAgICAgICAgICAgIGhlYWQubG9hZChqc2ZpbGVzKTtcclxuICAgICAgICB9XHJcbiAgICAgICAgaWYgKGNzc2ZpbGVzLmxlbmd0aCA+IDApIHtcclxuICAgICAgICAgICAgY3NzZmlsZXMuZm9yRWFjaCgoYykgPT4ge1xyXG4gICAgICAgICAgICAgICAgZG9jdW1lbnQuaGVhZC5pbnNlcnRBZGphY2VudEhUTUwoJ2JlZm9yZWVuZCcsIGAgPGxpbmsgaHJlZj1cIiR7Y31cIiByZWw9XCJzdHlsZXNoZWV0XCIgbm9wb3J0YWwgLz5gKTtcclxuICAgICAgICAgICAgfSk7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIGNvbnN0IHsgQmFja2dyb3VuZElkIH0gPSB0aGlzLnBhZ2VEYXRhIGFzIGFueTtcclxuICAgICAgICBpZiAoQmFja2dyb3VuZElkKSB7XHJcbiAgICAgICAgICAgIHRoaXMuX3JlbmRlcmVyMi5hZGRDbGFzcyh0aGlzLl9lbC5uYXRpdmVFbGVtZW50LCAncm9vdC1jdXN0b20tYmFja2dyb3VuZCcpO1xyXG4gICAgICAgICAgICB0aGlzLmltYWdlVXJsID0gYC9JSC5hc2h4P3R5PUlEJm1vSWQ9JmlkPSR7QmFja2dyb3VuZElkfSZzaT0xOTIwJnNpaD0xMDgwYDtcclxuICAgICAgICAgICAgLy8gdGhpcy5fcmVuZGVyZXIyLnNldFN0eWxlKFxyXG4gICAgICAgICAgICAvLyAgICAgdGhpcy5fZWwubmF0aXZlRWxlbWVudCxcclxuICAgICAgICAgICAgLy8gICAgICdiYWNrZ3JvdW5kJyxcclxuXHJcbiAgICAgICAgICAgIC8vICk7XHJcbiAgICAgICAgICAgIC8vIHRoaXMuX3JlbmRlcmVyMi5zZXRTdHlsZSh0aGlzLl9lbC5uYXRpdmVFbGVtZW50LCAnYmFja2dyb3VuZC1zaXplJywgYGNvdmVyYCk7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcbiJdfQ==
|
|
164
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicm9vdC1wb3J0YWwuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYmFyc2Etbm92aW4tcmF5LWNvcmUvc3JjL2xpYi9yb290LXBvcnRhbC9yb290LXBvcnRhbC5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLHVCQUF1QixFQUFFLFNBQVMsRUFBc0IsU0FBUyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRXBILE9BQU8sRUFBRSxhQUFhLEVBQUUsZUFBZSxFQUFFLFdBQVcsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQzlFLE9BQU8sRUFBYyxTQUFTLEVBQUUsR0FBRyxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBRWxELE9BQU8sRUFBRSxRQUFRLEVBQUUsaUJBQWlCLEVBQWlCLE1BQU0scUJBQXFCLENBQUM7QUFDakYsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLGNBQWMsQ0FBQzs7OztBQXlDN0MsTUFBTSxPQUFPLG1CQUFvQixTQUFRLGlCQUFpQjtJQXRDMUQ7O1FBMkNJLFdBQU0sR0FBRyxJQUFJLENBQUM7UUFDZCxnQkFBVyxHQUFHLElBQUksQ0FBQztLQXlFdEI7SUF2RUcsUUFBUTtRQUNKLEtBQUssQ0FBQyxRQUFRLEVBQUUsQ0FBQztRQUNqQixJQUFJLENBQUMsV0FBVyxHQUFHLGFBQWEsRUFBRSxDQUFDO1FBQ25DLDJCQUEyQjtRQUUzQixJQUFJLENBQUMsT0FBTyxDQUFDLE1BQU0sQ0FBQyxTQUFTLENBQUMsQ0FBQyxLQUFLLEVBQUUsRUFBRTtZQUNwQyxJQUFJLEtBQUssWUFBWSxlQUFlLElBQUksS0FBSyxZQUFZLFdBQVcsRUFBRSxDQUFDO2dCQUNuRSxJQUFJLENBQUMsY0FBYyxDQUFDLGNBQWMsQ0FBQyxLQUFLLENBQUMsQ0FBQztZQUM5QyxDQUFDO1lBQ0QsSUFBSSxLQUFLLFlBQVksYUFBYSxJQUFJLEtBQUssWUFB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QWtCLENBQUMsUUFBUSxDQUFDLENBQUM7UUFDbkMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxRQUFRLENBQUMsQ0FBQztRQUV6QixTQUFTLENBQUMsU0FBUyxDQUFDLFFBQVEsR0FBRyxTQUFTLENBQUMsU0FBUyxDQUFDLEtBQUssQ0FBQztRQUN6RCxTQUFTLENBQUMsU0FBUyxDQUFDLEdBQUcsR0FBRyxTQUFTLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQztRQUNuRCxNQUFNLEVBQUUsWUFBWSxFQUFFLEdBQUcsSUFBSSxDQUFDLFFBQWUsQ0FBQztRQUM5QyxJQUFJLFlBQVksRUFBRSxDQUFDO1lBQ2YsSUFBSSxDQUFDLFVBQVUsQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxhQUFhLEVBQUUsd0JBQXdCLENBQUMsQ0FBQztZQUMzRSxJQUFJLENBQUMsUUFBUSxHQUFHLDJCQUEyQixZQUFZLG1CQUFtQixDQUFDO1FBQy9FLENBQUM7SUFDTCxDQUFDOzhHQTlFUSxtQkFBbUI7a0dBQW5CLG1CQUFtQix5T0FFSSxnQkFBZ0Isb0RBdEN0Qzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0tBaUNUOzsyRkFHUSxtQkFBbUI7a0JBdEMvQixTQUFTO21CQUFDO29CQUNQLFFBQVEsRUFBRSxrQkFBa0I7b0JBQzVCLFFBQVEsRUFBRTs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0tBaUNUO29CQUNELGVBQWUsRUFBRSx1QkFBdUIsQ0FBQyxNQUFNO2lCQUNsRDs4QkFFNEIsVUFBVTtzQkFBbEMsU0FBUzt1QkFBQyxZQUFZO2dCQUM2QixZQUFZO3NCQUEvRCxTQUFTO3VCQUFDLFdBQVcsRUFBRSxFQUFFLElBQUksRUFBRSxnQkFBZ0IsRUFBRSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENoYW5nZURldGVjdGlvblN0cmF0ZWd5LCBDb21wb25lbnQsIEVsZW1lbnRSZWYsIE9uSW5pdCwgVmlld0NoaWxkLCBWaWV3Q29udGFpbmVyUmVmIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbmltcG9ydCB7IE5hdmlnYXRpb25FbmQsIE5hdmlnYXRpb25TdGFydCwgUm91dGVyRXZlbnQgfSBmcm9tICdAYW5ndWxhci9yb3V0ZXInO1xuaW1wb3J0IHsgT2JzZXJ2YWJsZSwgdGFrZVVudGlsLCB0YXAgfSBmcm9tICdyeGpzJztcblxuaW1wb3J0IHsgQmFyc2FBcGksIFBhZ2VCYXNlQ29tcG9uZW50LCBQYWdlRGF0YU1vZGVsIH0gZnJvbSAnLi4vYWJzdHJhY3QtY2xhc3Nlcyc7XG5pbXBvcnQgeyBpc0luTG9jYWxNb2RlIH0gZnJvbSAnLi4vY29uc3RhbnRzJztcbmRlY2xhcmUgY29uc3QgQmlnTnVtYmVyOiBhbnk7XG5cbkBDb21wb25lbnQoe1xuICAgIHNlbGVjdG9yOiAnYm5yYy1yb290LXBvcnRhbCcsXG4gICAgdGVtcGxhdGU6IGBcbiAgICAgICAgQGlmKGluTG9jYWxNb2RlKXtcbiAgICAgICAgPGRpdiBjbGFzcz1cImZkLXRvb2xiYXJcIiBzdHlsZT1cImZsZXgtd3JhcDp3cmFwO3BhZGRpbmc6MC41cmVtO2hlaWdodDphdXRvXCI+XG4gICAgICAgICAgICA8YnV0dG9uIGNsYXNzPVwiZmQtYnV0dG9uIGZkLWJ1dHRvbi0tYXR0ZW50aW9uIGlzLWNvbXBhY3RcIiAoY2xpY2spPVwib25SZW1vdmVPZmZsaW5lRGF0YSgpXCI+XG4gICAgICAgICAgICAgICAg2K3YsNmBINin2LfZhNin2LnYp9iqINii2YHZhNin24zZhlxuICAgICAgICAgICAgPC9idXR0b24+XG4gICAgICAgICAgICA8YnV0dG9uIGNsYXNzPVwiZmQtYnV0dG9uIGZkLWJ1dHRvbi0tbmVnYXRpdmUgaXMtY29tcGFjdFwiIChjbGljayk9XCJvblJlbW92ZU9mZmxpbmVEYXRhQW5kUmV0dXJuVG9PbmxpbmUoKVwiPlxuICAgICAgICAgICAgICAgINit2LDZgSDYp9i32YTYp9i52KfYqiDYotmB2YTYp9uM2YYg2Ygg2KjYsdqv2LTYqiDYqNmHINit2KfZhNiqINii2YbZhNin24zZhlxuICAgICAgICAgICAgPC9idXR0b24+XG4gICAgICAgICAgICA8YnV0dG9uIGNsYXNzPVwiZmQtYnV0dG9uIGZkLWJ1dHRvbi0tcG9zaXRpdmUgaXMtY29tcGFjdFwiIChjbGljayk9XCJvblNlbmRPZmZsaW5lRGF0YVRvU2VydmVyKClcIj5cbiAgICAgICAgICAgICAgICDYp9ix2LPYp9mEINin2LfZhNin2LnYp9iqINii2YHZhNin24zZhiDYqNmHINiz2LHZiNixXG4gICAgICAgICAgICA8L2J1dHRvbj5cbiAgICAgICAgPC9kaXY+XG4gICAgICAgIH0gQGlmIChpbWFnZVVybCkge1xuICAgICAgICA8ZGl2IGlkPVwiaGVhZGVyU3BhY2VIb2xkZXJcIiAjaGVhZGVyU3BhY2VIb2xkZXI+XG4gICAgICAgICAgICA8ZGl2IGlkPVwiYmdPdXRlckhvbGRlclwiICNiZ091dGVySG9sZGVyPlxuICAgICAgICAgICAgICAgIDxkaXYgaWQ9XCJiZ0lubmVySG9sZGVyXCIgc3R5bGU9XCJoZWlnaHQ6IDEwMHZoXCI+XG4gICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJiYWNrZ3JvdW5kSW1hZ2VcIiBpZD1cImJhY2tncm91bmRJbWFnZVwiPlxuICAgICAgICAgICAgICAgICAgICAgICAgPGltZyBjbGFzcz1cInBpY3R1cmVcIiBbc3JjXT1cImltYWdlVXJsXCIgbG9hZGluZz1cImxhenlcIiAvPlxuICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gaWQ9XCJiYWNrZ3JvdW5kSW1hZ2VPdmVybGF5XCIgY2xhc3M9XCJvdmVybGF5XCI+PC9zcGFuPlxuICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICA8L2Rpdj5cbiAgICAgICAgfVxuICAgICAgICA8c2VjdGlvbiBsb2FkRXh0ZXJuYWxGaWxlcyBjbGFzcz1cInNlY3Rpb25cIiBpZD1cIm1haW5wYWdlXCIgI3NlY3Rpb25SZWY+XG4gICAgICAgICAgICA8ZGl2ICNjb250YWluZXJSZWY+PC9kaXY+XG4gICAgICAgIDwvc2VjdGlvbj5cbiAgICAgICAgPGRpdiBjbGFzcz1cInBhZ2Utd3JhcHBlclwiPlxuICAgICAgICAgICAgPHJvdXRlci1vdXRsZXQ+PC9yb3V0ZXItb3V0bGV0PlxuICAgICAgICA8L2Rpdj5cbiAgICAgICAgPCEtLSA8Zm9vdGVyICNmb290ZXJSZWY+PC9mb290ZXI+IC0tPlxuICAgICAgICA8bmctY29udGFpbmVyICNmb290ZXJSZWY+PC9uZy1jb250YWluZXI+XG4gICAgYCxcbiAgICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaFxufSlcbmV4cG9ydCBjbGFzcyBSb290UG9ydGFsQ29tcG9uZW50IGV4dGVuZHMgUGFnZUJhc2VDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQge1xuICAgIEBWaWV3Q2hpbGQoJ3NlY3Rpb25SZWYnKSBzZWN0aW9uUmVmOiBFbGVtZW50UmVmO1xuICAgIEBWaWV3Q2hpbGQoJ2Zvb3RlclJlZicsIHsgcmVhZDogVmlld0NvbnRhaW5lclJlZiB9KSBmb290ZXJSZWZWY3I6IFZpZXdDb250YWluZXJSZWY7XG4gICAgcG9ydGFsTG9hZGluZyQ6IE9ic2VydmFibGU8Ym9vbGVhbj47XG4gICAgbW9kdWxlczogYW55O1xuICAgIGlzUm9vdCA9IHRydWU7XG4gICAgaW5Mb2NhbE1vZGUgPSB0cnVlO1xuICAgIGltYWdlVXJsOiBzdHJpbmc7XG4gICAgbmdPbkluaXQoKTogdm9pZCB7XG4gICAgICAgIHN1cGVyLm5nT25Jbml0KCk7XG4gICAgICAgIHRoaXMuaW5Mb2NhbE1vZGUgPSBpc0luTG9jYWxNb2RlKCk7XG4gICAgICAgIC8vIHRoaXMuaW5Mb2NhbE1vZGUgPSB0cnVlO1xuXG4gICAgICAgIHRoaXMuX3JvdXRlci5ldmVudHMuc3Vic2NyaWJlKChldmVudCkgPT4ge1xuICAgICAgICAgICAgaWYgKGV2ZW50IGluc3RhbmNlb2YgTmF2aWdhdGlvblN0YXJ0ICYmIGV2ZW50IGluc3RhbmNlb2YgUm91dGVyRXZlbnQpIHtcbiAgICAgICAgICAgICAgICB0aGlzLl9wb3J0YWxTZXJ2aWNlLm5hdmlhdGlvblN0YXJ0KGV2ZW50KTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGlmIChldmVudCBpbnN0YW5jZW9mIE5hdmlnYXRpb25FbmQgJiYgZXZlbnQgaW5zdGFuY2VvZiBSb3V0ZXJFdmVudCkge1xuICAgICAgICAgICAgICAgIHRoaXMuX3BvcnRhbFNlcnZpY2UubmF2aWF0aW9uRW5kKGV2ZW50KTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfSk7XG4gICAgfVxuICAgIHByb3RlY3RlZCBvblNlbmRPZmZsaW5lRGF0YVRvU2VydmVyKCk6IHZvaWQge1xuICAgICAgICBCYXJzYUFwaS5Cdy5Nc2cuWWVzTm8oQmFyc2FBcGkuQkJCLk9mZmxpbmVHb09ubGluZSwgQmFyc2FBcGkuQkJCLkRlbGV0ZSwgZnVuY3Rpb24gKGJ1dHRvbklkKSB7XG4gICAgICAgICAgICBpZiAoYnV0dG9uSWQgPT09ICd5ZXMnKSB7XG4gICAgICAgICAgICAgICAgQmFyc2FBcGkuQncuTXNnLldhaXQoMCwgQmFyc2FBcGkuQkJCLkxvYWRpbmdNYXNrTXNnLCAnd2FpdCcpO1xuICAgICAgICAgICAgICAgIEJhcnNhQXBpLk9mZmxpbmUuR29PbmxpbmUoZnVuY3Rpb24gKCkge1xuICAgICAgICAgICAgICAgICAgICB3aW5kb3cubG9jYXRpb24ucmVsb2FkKCk7XG4gICAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH0pO1xuICAgIH1cbiAgICBwcm90ZWN0ZWQgb25SZW1vdmVPZmZsaW5lRGF0YUFuZFJldHVyblRvT25saW5lKCk6IHZvaWQge1xuICAgICAgICBCYXJzYUFwaS5Cdy5Nc2cuWWVzTm8oQmFyc2FBcGkuQkJCLk9mZmxpbmVDbGVhckFsbCwgQmFyc2FBcGkuQkJCLkRlbGV0ZSwgZnVuY3Rpb24gKGJ1dHRvbklkKSB7XG4gICAgICAgICAgICBpZiAoYnV0dG9uSWQgPT09ICd5ZXMnKSB7XG4gICAgICAgICAgICAgICAgQmFyc2FBcGkuT2ZmbGluZS5DbGVhckFsbCgpO1xuICAgICAgICAgICAgICAgIHdpbmRvdy5sb2NhdGlvbi5yZWxvYWQoKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfSk7XG4gICAgfVxuICAgIHByb3RlY3RlZCBvblJlbW92ZU9mZmxpbmVEYXRhKCk6IHZvaWQge1xuICAgICAgICBCYXJzYUFwaS5Cdy5Nc2cuWWVzTm8oQmFyc2FBcGkuQkJCLk9mZmxpbmVDbGVhclVuc2F2ZWREYXRhLCBCYXJzYUFwaS5CQkIuRGVsZXRlLCBmdW5jdGlvbiAoYnV0dG9uSWQpIHtcbiAgICAgICAgICAgIGlmIChidXR0b25JZCA9PT0gJ3llcycpIHtcbiAgICAgICAgICAgICAgICBCYXJzYUFwaS5PZmZsaW5lLkNhY2hlZERhdGEuVW5zYXZlZERhdGEgPSB7fTtcbiAgICAgICAgICAgICAgICBCYXJzYUFwaS5PZmZsaW5lLkNhY2hlZERhdGEuc2F2ZSgpO1xuICAgICAgICAgICAgICAgIEJhcnNhQXBpLkJ3LlRvYXN0LlN1Y2Nlc3MoQmFyc2FBcGkuQkJCLkFjdGlvbiArIEJhcnNhQXBpLkJCQi5Kb2JDb21wbGV0ZWQpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9KTtcbiAgICB9XG4gICAgcHJvdGVjdGVkIGFkZEZvb3RlcihwYWdlRGF0YTogUGFnZURhdGFNb2RlbCB8IG51bGwpOiB2b2lkIHtcbiAgICAgICAgaWYgKCFwYWdlRGF0YT8uRm9vdGVyKSB7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cbiAgICAgICAgY29uc3QgZm9vdGVyQ29tcG9uZW50ID0gcGFnZURhdGEuRm9vdGVyLkNvbXBvbmVudDtcbiAgICAgICAgdGhpcy5nZXRDb21wb25lbnRGYWN0b3J5KGZvb3RlckNvbXBvbmVudClcbiAgICAgICAgICAgIC5waXBlKFxuICAgICAgICAgICAgICAgIHRha2VVbnRpbCh0aGlzLl9vbkRlc3Ryb3kkKSxcbiAgICAgICAgICAgICAgICB0YXAoKGNvbnRyb2xVaSkgPT4ge1xuICAgICAgICAgICAgICAgICAgICBjb250cm9sVWkuaW5zdGFuY2Uuc2V0dGluZ3MgPSBmb290ZXJDb21wb25lbnQuU2V0dGluZ3M7XG4gICAgICAgICAgICAgICAgICAgIGNvbnRyb2xVaS5pbnN0YW5jZS5hY3RpdmF0ZWRSb3V0ZSA9IHRoaXMuX2FjdGl2YXRlZFJvdXRlO1xuICAgICAgICAgICAgICAgICAgICBpZiAodGhpcy5mb290ZXJSZWZWY3IpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMuZm9vdGVyUmVmVmNyLmluc2VydChjb250cm9sVWkuaG9zdFZpZXcpO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfSlcbiAgICAgICAgICAgIClcbiAgICAgICAgICAgIC5zdWJzY3JpYmUoKTtcbiAgICB9XG4gICAgcHJvdGVjdGVkIHJlbmRlclBsYWNlSG9sZGVycyhwYWdlRGF0YTogUGFnZURhdGFNb2RlbCB8IG51bGwpOiB2b2lkIHtcbiAgICAgICAgc3VwZXIucmVuZGVyUGxhY2VIb2xkZXJzKHBhZ2VEYXRhKTtcbiAgICAgICAgdGhpcy5hZGRGb290ZXIocGFnZURhdGEpO1xuXG4gICAgICAgIEJpZ051bWJlci5wcm90b3R5cGUuc3VidHJhY3QgPSBCaWdOdW1iZXIucHJvdG90eXBlLm1pbnVzO1xuICAgICAgICBCaWdOdW1iZXIucHJvdG90eXBlLmFkZCA9IEJpZ051bWJlci5wcm90b3R5cGUucGx1cztcbiAgICAgICAgY29uc3QgeyBCYWNrZ3JvdW5kSWQgfSA9IHRoaXMucGFnZURhdGEgYXMgYW55O1xuICAgICAgICBpZiAoQmFja2dyb3VuZElkKSB7XG4gICAgICAgICAgICB0aGlzLl9yZW5kZXJlcjIuYWRkQ2xhc3ModGhpcy5fZWwubmF0aXZlRWxlbWVudCwgJ3Jvb3QtY3VzdG9tLWJhY2tncm91bmQnKTtcbiAgICAgICAgICAgIHRoaXMuaW1hZ2VVcmwgPSBgL0lILmFzaHg/dHk9SUQmbW9JZD0maWQ9JHtCYWNrZ3JvdW5kSWR9JnNpPTE5MjAmc2loPTEwODBgO1xuICAgICAgICB9XG4gICAgfVxufVxuIl19
|