vc-error-handlers 0.5.1 → 0.5.3
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/configuration.mjs +2 -1
- package/esm2022/lib/shared/components/page-not-found/page-not-found.component.mjs +52 -42
- package/esm2022/lib/shared/components/server-error/server-error.component.mjs +2 -2
- package/esm2022/lib/shared/components/unauthorized/unauthorized.component.mjs +55 -26
- package/esm2022/lib/shared/constants/api-config.constants.mjs +8 -1
- package/esm2022/lib/shared/constants/error-handling.constants.mjs +5 -2
- package/esm2022/lib/shared/interceptors/http.interceptor.mjs +14 -21
- package/esm2022/lib/shared/services/global-error.service.mjs +9 -10
- package/esm2022/lib/shared/services/router.service.mjs +31 -2
- package/esm2022/lib/ui-kit/snack-bar/snack-bar/snack-bar.component.mjs +2 -2
- package/esm2022/lib/ui-kit/tooltip/tooltip.directive.mjs +156 -0
- package/esm2022/lib/ui-kit/tooltip/tooltip.module.mjs +18 -0
- package/esm2022/lib/vc-error-handlers.module.mjs +34 -13
- package/fesm2022/vc-error-handlers.mjs +396 -143
- package/fesm2022/vc-error-handlers.mjs.map +1 -1
- package/lib/configuration.d.ts +1 -0
- package/lib/shared/components/page-not-found/page-not-found.component.d.ts +5 -8
- package/lib/shared/components/unauthorized/unauthorized.component.d.ts +7 -1
- package/lib/shared/constants/error-handling.constants.d.ts +3 -0
- package/lib/shared/interceptors/http.interceptor.d.ts +1 -3
- package/lib/shared/services/router.service.d.ts +4 -0
- package/lib/ui-kit/tooltip/tooltip.directive.d.ts +27 -0
- package/lib/ui-kit/tooltip/tooltip.module.d.ts +8 -0
- package/lib/vc-error-handlers.module.d.ts +4 -3
- package/package.json +1 -1
|
@@ -4,8 +4,9 @@ import { CommonModule, NgOptimizedImage } from '@angular/common';
|
|
|
4
4
|
import { PageNotFoundComponent } from './shared/components/page-not-found/page-not-found.component';
|
|
5
5
|
import { VcErrorHandlersComponent } from './vc-error-handlers.component';
|
|
6
6
|
import { DialogModule } from './ui-kit/dialog/dialog.module';
|
|
7
|
-
import { SnackBarModule } from './ui-kit/snack-bar/snack-bar.module';
|
|
8
7
|
import { FeatureFlagModule } from './featureFlag/feature-flag.module';
|
|
8
|
+
import { SnackBarModule } from './ui-kit/snack-bar/snack-bar.module';
|
|
9
|
+
import { TooltipModule } from './ui-kit/tooltip/tooltip.module';
|
|
9
10
|
import { SentryErrorHandler } from './shared/errorhandler/sentry-error.handler';
|
|
10
11
|
import { Configurations } from './configuration';
|
|
11
12
|
import { UnauthorizedComponent } from './shared/components/unauthorized/unauthorized.component';
|
|
@@ -24,9 +25,20 @@ export class VcErrorHandlersModule {
|
|
|
24
25
|
// this.loadConfig.loadConfig();
|
|
25
26
|
}
|
|
26
27
|
static forRoot(environmentConfig) {
|
|
28
|
+
const providers = [
|
|
29
|
+
{ provide: Configurations, useValue: environmentConfig },
|
|
30
|
+
{ provide: ErrorHandler, useClass: SentryErrorHandler },
|
|
31
|
+
];
|
|
32
|
+
if (environmentConfig.isErrorInterceptorEnabled) {
|
|
33
|
+
providers.push({
|
|
34
|
+
provide: HTTP_INTERCEPTORS,
|
|
35
|
+
useClass: HttpReqInterceptor,
|
|
36
|
+
multi: true,
|
|
37
|
+
});
|
|
38
|
+
}
|
|
27
39
|
return {
|
|
28
40
|
ngModule: VcErrorHandlersModule,
|
|
29
|
-
providers:
|
|
41
|
+
providers: providers,
|
|
30
42
|
};
|
|
31
43
|
}
|
|
32
44
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: VcErrorHandlersModule, deps: [{ token: i1.FeatureFlagService }], target: i0.ɵɵFactoryTarget.NgModule }); }
|
|
@@ -37,7 +49,12 @@ export class VcErrorHandlersModule {
|
|
|
37
49
|
ChunkUnavailableComponent,
|
|
38
50
|
ServerErrorComponent,
|
|
39
51
|
ErrorModalComponent,
|
|
40
|
-
ComponentLevelServerErrorComponent], imports: [CommonModule,
|
|
52
|
+
ComponentLevelServerErrorComponent], imports: [CommonModule,
|
|
53
|
+
DialogModule,
|
|
54
|
+
FeatureFlagModule,
|
|
55
|
+
NgOptimizedImage,
|
|
56
|
+
SnackBarModule,
|
|
57
|
+
TooltipModule], exports: [VcErrorHandlersComponent,
|
|
41
58
|
PageNotFoundComponent,
|
|
42
59
|
UnauthorizedComponent,
|
|
43
60
|
SessionExpiredComponent,
|
|
@@ -45,10 +62,11 @@ export class VcErrorHandlersModule {
|
|
|
45
62
|
ServerErrorComponent,
|
|
46
63
|
ErrorModalComponent,
|
|
47
64
|
ComponentLevelServerErrorComponent] }); }
|
|
48
|
-
static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: VcErrorHandlersModule,
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
65
|
+
static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: VcErrorHandlersModule, imports: [CommonModule,
|
|
66
|
+
DialogModule,
|
|
67
|
+
FeatureFlagModule,
|
|
68
|
+
SnackBarModule,
|
|
69
|
+
TooltipModule] }); }
|
|
52
70
|
}
|
|
53
71
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: VcErrorHandlersModule, decorators: [{
|
|
54
72
|
type: NgModule,
|
|
@@ -63,7 +81,14 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
|
|
|
63
81
|
ErrorModalComponent,
|
|
64
82
|
ComponentLevelServerErrorComponent,
|
|
65
83
|
],
|
|
66
|
-
imports: [
|
|
84
|
+
imports: [
|
|
85
|
+
CommonModule,
|
|
86
|
+
DialogModule,
|
|
87
|
+
FeatureFlagModule,
|
|
88
|
+
NgOptimizedImage,
|
|
89
|
+
SnackBarModule,
|
|
90
|
+
TooltipModule,
|
|
91
|
+
],
|
|
67
92
|
exports: [
|
|
68
93
|
VcErrorHandlersComponent,
|
|
69
94
|
PageNotFoundComponent,
|
|
@@ -74,11 +99,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
|
|
|
74
99
|
ErrorModalComponent,
|
|
75
100
|
ComponentLevelServerErrorComponent,
|
|
76
101
|
],
|
|
77
|
-
providers: [
|
|
78
|
-
{ provide: ErrorHandler, useClass: SentryErrorHandler },
|
|
79
|
-
{ provide: HTTP_INTERCEPTORS, useClass: HttpReqInterceptor, multi: true },
|
|
80
|
-
],
|
|
81
102
|
bootstrap: [VcErrorHandlersComponent],
|
|
82
103
|
}]
|
|
83
104
|
}], ctorParameters: function () { return [{ type: i1.FeatureFlagService }]; } });
|
|
84
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
105
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidmMtZXJyb3ItaGFuZGxlcnMubW9kdWxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vcHJvamVjdHMvdmMtZXJyb3ItaGFuZGxlcnMvc3JjL2xpYi92Yy1lcnJvci1oYW5kbGVycy5tb2R1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNMLFlBQVksRUFDWixjQUFjLEVBRWQsUUFBUSxHQUNULE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBQ3pELE9BQU8sRUFBRSxZQUFZLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUVqRSxPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSw2REFBNkQsQ0FBQztBQUNwRyxPQUFPLEVBQUUsd0JBQXdCLEVBQUUsTUFBTSwrQkFBK0IsQ0FBQztBQUV6RSxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sK0JBQStCLENBQUM7QUFDN0QsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sbUNBQW1DLENBQUM7QUFDdEUsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLHFDQUFxQyxDQUFDO0FBQ3JFLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSxpQ0FBaUMsQ0FBQztBQU1oRSxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSw0Q0FBNEMsQ0FBQztBQUNoRixPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDakQsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0seURBQXlELENBQUM7QUFDaEcsT0FBTyxFQUFFLHVCQUF1QixFQUFFLE1BQU0sK0RBQStELENBQUM7QUFDeEcsT0FBTyxFQUFFLHlCQUF5QixFQUFFLE1BQU0sbUVBQW1FLENBQUM7QUFDOUcsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0seURBQXlELENBQUM7QUFFL0YsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sd0NBQXdDLENBQUM7QUFDNUUsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sdURBQXVELENBQUM7QUFDNUYsT0FBTyxFQUFFLGtDQUFrQyxFQUFFLE1BQU0seUZBQXlGLENBQUM7OztBQUU3SSxNQUFNLENBQUMsTUFBTSw2QkFBNkIsR0FBRyxJQUFJLGNBQWMsQ0FDN0Qsc0NBQXNDLENBQ3ZDLENBQUM7QUFpQ0YsTUFBTSxPQUFPLHFCQUFxQjtJQUNoQyxZQUFvQixVQUE4QjtRQUE5QixlQUFVLEdBQVYsVUFBVSxDQUFvQjtRQUNoRCxnQ0FBZ0M7SUFDbEMsQ0FBQztJQUVNLE1BQU0sQ0FBQyxPQUFPLENBQ25CLGlCQUFpQztRQUVqQyxNQUFNLFNBQVMsR0FBVTtZQUN2QixFQUFFLE9BQU8sRUFBRSxjQUFjLEVBQUUsUUFBUSxFQUFFLGlCQUFpQixFQUFFO1lBQ3hELEVBQUUsT0FBTyxFQUFFLFlBQVksRUFBRSxRQUFRLEVBQUUsa0JBQWtCLEVBQUU7U0FDeEQsQ0FBQztRQUVGLElBQUksaUJBQWlCLENBQUMseUJBQXlCLEVBQUU7WUFDL0MsU0FBUyxDQUFDLElBQUksQ0FBQztnQkFDYixPQUFPLEVBQUUsaUJBQWlCO2dCQUMxQixRQUFRLEVBQUUsa0JBQWtCO2dCQUM1QixLQUFLLEVBQUUsSUFBSTthQUNaLENBQUMsQ0FBQztTQUNKO1FBRUQsT0FBTztZQUNMLFFBQVEsRUFBRSxxQkFBcUI7WUFDL0IsU0FBUyxFQUFFLFNBQVM7U0FDckIsQ0FBQztJQUNKLENBQUM7K0dBekJVLHFCQUFxQjtnSEFBckIscUJBQXFCLGNBRnBCLHdCQUF3QixrQkEzQmxDLHdCQUF3QjtZQUN4QixxQkFBcUI7WUFDckIscUJBQXFCO1lBQ3JCLHVCQUF1QjtZQUN2Qix5QkFBeUI7WUFDekIsb0JBQW9CO1lBQ3BCLG1CQUFtQjtZQUNuQixrQ0FBa0MsYUFHbEMsWUFBWTtZQUNaLFlBQVk7WUFDWixpQkFBaUI7WUFDakIsZ0JBQWdCO1lBQ2hCLGNBQWM7WUFDZCxhQUFhLGFBR2Isd0JBQXdCO1lBQ3hCLHFCQUFxQjtZQUNyQixxQkFBcUI7WUFDckIsdUJBQXVCO1lBQ3ZCLHlCQUF5QjtZQUN6QixvQkFBb0I7WUFDcEIsbUJBQW1CO1lBQ25CLGtDQUFrQztnSEFJekIscUJBQXFCLFlBbkI5QixZQUFZO1lBQ1osWUFBWTtZQUNaLGlCQUFpQjtZQUVqQixjQUFjO1lBQ2QsYUFBYTs7NEZBY0oscUJBQXFCO2tCQS9CakMsUUFBUTttQkFBQztvQkFDUixZQUFZLEVBQUU7d0JBQ1osd0JBQXdCO3dCQUN4QixxQkFBcUI7d0JBQ3JCLHFCQUFxQjt3QkFDckIsdUJBQXVCO3dCQUN2Qix5QkFBeUI7d0JBQ3pCLG9CQUFvQjt3QkFDcEIsbUJBQW1CO3dCQUNuQixrQ0FBa0M7cUJBQ25DO29CQUNELE9BQU8sRUFBRTt3QkFDUCxZQUFZO3dCQUNaLFlBQVk7d0JBQ1osaUJBQWlCO3dCQUNqQixnQkFBZ0I7d0JBQ2hCLGNBQWM7d0JBQ2QsYUFBYTtxQkFDZDtvQkFDRCxPQUFPLEVBQUU7d0JBQ1Asd0JBQXdCO3dCQUN4QixxQkFBcUI7d0JBQ3JCLHFCQUFxQjt3QkFDckIsdUJBQXVCO3dCQUN2Qix5QkFBeUI7d0JBQ3pCLG9CQUFvQjt3QkFDcEIsbUJBQW1CO3dCQUNuQixrQ0FBa0M7cUJBQ25DO29CQUNELFNBQVMsRUFBRSxDQUFDLHdCQUF3QixDQUFDO2lCQUN0QyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIEVycm9ySGFuZGxlcixcbiAgSW5qZWN0aW9uVG9rZW4sXG4gIE1vZHVsZVdpdGhQcm92aWRlcnMsXG4gIE5nTW9kdWxlLFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEhUVFBfSU5URVJDRVBUT1JTIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uL2h0dHAnO1xuaW1wb3J0IHsgQ29tbW9uTW9kdWxlLCBOZ09wdGltaXplZEltYWdlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcblxuaW1wb3J0IHsgUGFnZU5vdEZvdW5kQ29tcG9uZW50IH0gZnJvbSAnLi9zaGFyZWQvY29tcG9uZW50cy9wYWdlLW5vdC1mb3VuZC9wYWdlLW5vdC1mb3VuZC5jb21wb25lbnQnO1xuaW1wb3J0IHsgVmNFcnJvckhhbmRsZXJzQ29tcG9uZW50IH0gZnJvbSAnLi92Yy1lcnJvci1oYW5kbGVycy5jb21wb25lbnQnO1xuXG5pbXBvcnQgeyBEaWFsb2dNb2R1bGUgfSBmcm9tICcuL3VpLWtpdC9kaWFsb2cvZGlhbG9nLm1vZHVsZSc7XG5pbXBvcnQgeyBGZWF0dXJlRmxhZ01vZHVsZSB9IGZyb20gJy4vZmVhdHVyZUZsYWcvZmVhdHVyZS1mbGFnLm1vZHVsZSc7XG5pbXBvcnQgeyBTbmFja0Jhck1vZHVsZSB9IGZyb20gJy4vdWkta2l0L3NuYWNrLWJhci9zbmFjay1iYXIubW9kdWxlJztcbmltcG9ydCB7IFRvb2x0aXBNb2R1bGUgfSBmcm9tICcuL3VpLWtpdC90b29sdGlwL3Rvb2x0aXAubW9kdWxlJztcblxuaW1wb3J0IHsgRmVhdHVyZUZsYWdTZXJ2aWNlIH0gZnJvbSAnLi9mZWF0dXJlRmxhZy9mZWF0dXJlLWZsYWcuc2VydmljZSc7XG5cbmltcG9ydCB7IEJyb3dzZXJPcHRpb25zIH0gZnJvbSAnQHNlbnRyeS9icm93c2VyJztcbmltcG9ydCB7IEdsb2JhbEVycm9ySGFuZGxlciB9IGZyb20gJy4vc2hhcmVkL2Vycm9yaGFuZGxlci9jaHVuay1lcnJvci5oYW5kbGVyJztcbmltcG9ydCB7IFNlbnRyeUVycm9ySGFuZGxlciB9IGZyb20gJy4vc2hhcmVkL2Vycm9yaGFuZGxlci9zZW50cnktZXJyb3IuaGFuZGxlcic7XG5pbXBvcnQgeyBDb25maWd1cmF0aW9ucyB9IGZyb20gJy4vY29uZmlndXJhdGlvbic7XG5pbXBvcnQgeyBVbmF1dGhvcml6ZWRDb21wb25lbnQgfSBmcm9tICcuL3NoYXJlZC9jb21wb25lbnRzL3VuYXV0aG9yaXplZC91bmF1dGhvcml6ZWQuY29tcG9uZW50JztcbmltcG9ydCB7IFNlc3Npb25FeHBpcmVkQ29tcG9uZW50IH0gZnJvbSAnLi9zaGFyZWQvY29tcG9uZW50cy9zZXNzaW9uLWV4cGlyZWQvc2Vzc2lvbi1leHBpcmVkLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBDaHVua1VuYXZhaWxhYmxlQ29tcG9uZW50IH0gZnJvbSAnLi9zaGFyZWQvY29tcG9uZW50cy9jaHVuay11bmF2YWlsYWJsZS9jaHVuay11bmF2YWlsYWJsZS5jb21wb25lbnQnO1xuaW1wb3J0IHsgU2VydmVyRXJyb3JDb21wb25lbnQgfSBmcm9tICcuL3NoYXJlZC9jb21wb25lbnRzL3NlcnZlci1lcnJvci9zZXJ2ZXItZXJyb3IuY29tcG9uZW50JztcblxuaW1wb3J0IHsgSHR0cFJlcUludGVyY2VwdG9yIH0gZnJvbSAnLi9zaGFyZWQvaW50ZXJjZXB0b3JzL2h0dHAuaW50ZXJjZXB0b3InO1xuaW1wb3J0IHsgRXJyb3JNb2RhbENvbXBvbmVudCB9IGZyb20gJy4vc2hhcmVkL2NvbXBvbmVudHMvZXJyb3ItbW9kYWwvZXJyb3ItbW9kYWwuY29tcG9uZW50JztcbmltcG9ydCB7IENvbXBvbmVudExldmVsU2VydmVyRXJyb3JDb21wb25lbnQgfSBmcm9tICcuL3NoYXJlZC9jb21wb25lbnRzL2NvbXBvbmVudC1sZXZlbC1zZXJ2ZXItZXJyb3IvY29tcG9uZW50LWxldmVsLXNlcnZlci1lcnJvci5jb21wb25lbnQnO1xuXG5leHBvcnQgY29uc3QgRk9SX1JPT1RfU0VOVFJZX09QVElPTlNfVE9LRU4gPSBuZXcgSW5qZWN0aW9uVG9rZW48QnJvd3Nlck9wdGlvbnM+KFxuICAnZm9yUm9vdCgpIFNlbnRyeUVycm9ySGFuZGxlciBvcHRpb25zJ1xuKTtcblxuQE5nTW9kdWxlKHtcbiAgZGVjbGFyYXRpb25zOiBbXG4gICAgVmNFcnJvckhhbmRsZXJzQ29tcG9uZW50LFxuICAgIFBhZ2VOb3RGb3VuZENvbXBvbmVudCxcbiAgICBVbmF1dGhvcml6ZWRDb21wb25lbnQsXG4gICAgU2Vzc2lvbkV4cGlyZWRDb21wb25lbnQsXG4gICAgQ2h1bmtVbmF2YWlsYWJsZUNvbXBvbmVudCxcbiAgICBTZXJ2ZXJFcnJvckNvbXBvbmVudCxcbiAgICBFcnJvck1vZGFsQ29tcG9uZW50LFxuICAgIENvbXBvbmVudExldmVsU2VydmVyRXJyb3JDb21wb25lbnQsXG4gIF0sXG4gIGltcG9ydHM6IFtcbiAgICBDb21tb25Nb2R1bGUsXG4gICAgRGlhbG9nTW9kdWxlLFxuICAgIEZlYXR1cmVGbGFnTW9kdWxlLFxuICAgIE5nT3B0aW1pemVkSW1hZ2UsXG4gICAgU25hY2tCYXJNb2R1bGUsXG4gICAgVG9vbHRpcE1vZHVsZSxcbiAgXSxcbiAgZXhwb3J0czogW1xuICAgIFZjRXJyb3JIYW5kbGVyc0NvbXBvbmVudCxcbiAgICBQYWdlTm90Rm91bmRDb21wb25lbnQsXG4gICAgVW5hdXRob3JpemVkQ29tcG9uZW50LFxuICAgIFNlc3Npb25FeHBpcmVkQ29tcG9uZW50LFxuICAgIENodW5rVW5hdmFpbGFibGVDb21wb25lbnQsXG4gICAgU2VydmVyRXJyb3JDb21wb25lbnQsXG4gICAgRXJyb3JNb2RhbENvbXBvbmVudCxcbiAgICBDb21wb25lbnRMZXZlbFNlcnZlckVycm9yQ29tcG9uZW50LFxuICBdLFxuICBib290c3RyYXA6IFtWY0Vycm9ySGFuZGxlcnNDb21wb25lbnRdLFxufSlcbmV4cG9ydCBjbGFzcyBWY0Vycm9ySGFuZGxlcnNNb2R1bGUge1xuICBjb25zdHJ1Y3Rvcihwcml2YXRlIGxvYWRDb25maWc6IEZlYXR1cmVGbGFnU2VydmljZSkge1xuICAgIC8vIHRoaXMubG9hZENvbmZpZy5sb2FkQ29uZmlnKCk7XG4gIH1cblxuICBwdWJsaWMgc3RhdGljIGZvclJvb3QoXG4gICAgZW52aXJvbm1lbnRDb25maWc6IENvbmZpZ3VyYXRpb25zXG4gICk6IE1vZHVsZVdpdGhQcm92aWRlcnM8VmNFcnJvckhhbmRsZXJzTW9kdWxlPiB7XG4gICAgY29uc3QgcHJvdmlkZXJzOiBhbnlbXSA9IFtcbiAgICAgIHsgcHJvdmlkZTogQ29uZmlndXJhdGlvbnMsIHVzZVZhbHVlOiBlbnZpcm9ubWVudENvbmZpZyB9LFxuICAgICAgeyBwcm92aWRlOiBFcnJvckhhbmRsZXIsIHVzZUNsYXNzOiBTZW50cnlFcnJvckhhbmRsZXIgfSxcbiAgICBdO1xuXG4gICAgaWYgKGVudmlyb25tZW50Q29uZmlnLmlzRXJyb3JJbnRlcmNlcHRvckVuYWJsZWQpIHtcbiAgICAgIHByb3ZpZGVycy5wdXNoKHtcbiAgICAgICAgcHJvdmlkZTogSFRUUF9JTlRFUkNFUFRPUlMsXG4gICAgICAgIHVzZUNsYXNzOiBIdHRwUmVxSW50ZXJjZXB0b3IsXG4gICAgICAgIG11bHRpOiB0cnVlLFxuICAgICAgfSk7XG4gICAgfVxuXG4gICAgcmV0dXJuIHtcbiAgICAgIG5nTW9kdWxlOiBWY0Vycm9ySGFuZGxlcnNNb2R1bGUsXG4gICAgICBwcm92aWRlcnM6IHByb3ZpZGVycyxcbiAgICB9O1xuICB9XG59XG4iXX0=
|