@kephas/ngx-oidc
Version:
Provides the integration of the OIDC API with Kephas and Angular 12+.
82 lines • 13.6 kB
JavaScript
import { Injectable } from '@angular/core';
import { AppIdProvider } from './appIdProvider.service';
import * as i0 from "@angular/core";
import * as i1 from "./appIdProvider.service";
export const ReturnUrlType = 'returnUrl';
export const QueryParameterNames = {
ReturnUrl: ReturnUrlType,
Message: 'message'
};
export const LogoutActions = {
LogoutCallback: 'logout-callback',
Logout: 'logout',
LoggedOut: 'logged-out'
};
export const LoginActions = {
Login: 'login',
LoginCallback: 'login-callback',
LoginFailed: 'login-failed',
Profile: 'profile',
Register: 'register'
};
export class AuthenticationSettingsProvider {
/**
* Creates an instance of AuthenticationSettingsProvider.
* @param {AppIdProvider} appIdProvider The application ID provider.
* @memberof AuthenticationSettingsProvider
*/
constructor(appIdProvider) {
this.settings = this.getSettings(appIdProvider.getIdentityAppId());
}
getSettings(identityAppId) {
let applicationPaths = {
DefaultLoginRedirectPath: '/',
ApiAuthorizationClientConfigurationUrl: `/_configuration/${identityAppId}`,
Login: `authentication/${LoginActions.Login}`,
LoginFailed: `authentication/${LoginActions.LoginFailed}`,
LoginCallback: `authentication/${LoginActions.LoginCallback}`,
Register: `authentication/${LoginActions.Register}`,
Profile: `authentication/${LoginActions.Profile}`,
LogOut: `authentication/${LogoutActions.Logout}`,
LoggedOut: `authentication/${LogoutActions.LoggedOut}`,
LogOutCallback: `authentication/${LogoutActions.LogoutCallback}`,
LoginPathComponents: [],
LoginFailedPathComponents: [],
LoginCallbackPathComponents: [],
RegisterPathComponents: [],
ProfilePathComponents: [],
LogOutPathComponents: [],
LoggedOutPathComponents: [],
LogOutCallbackPathComponents: [],
IdentityRegisterPath: '/Identity/Account/Register',
IdentityManagePath: '/Identity/Account/Manage'
};
applicationPaths = {
...applicationPaths,
LoginPathComponents: applicationPaths.Login.split('/'),
LoginFailedPathComponents: applicationPaths.LoginFailed.split('/'),
RegisterPathComponents: applicationPaths.Register.split('/'),
ProfilePathComponents: applicationPaths.Profile.split('/'),
LogOutPathComponents: applicationPaths.LogOut.split('/'),
LoggedOutPathComponents: applicationPaths.LoggedOut.split('/'),
LogOutCallbackPathComponents: applicationPaths.LogOutCallback.split('/')
};
let activity = {};
return {
identityAppId: identityAppId,
returnUrl: ReturnUrlType,
applicationPaths: applicationPaths,
activity: activity,
// By default pop ups are disabled because they don't work properly on Edge.
// If you want to enable pop up authentication simply set this flag to false.
popUpDisabled: true,
};
}
}
AuthenticationSettingsProvider.instance = new AuthenticationSettingsProvider(new AppIdProvider());
AuthenticationSettingsProvider.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.0", ngImport: i0, type: AuthenticationSettingsProvider, deps: [{ token: i1.AppIdProvider }], target: i0.ɵɵFactoryTarget.Injectable });
AuthenticationSettingsProvider.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "13.1.0", ngImport: i0, type: AuthenticationSettingsProvider });
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.0", ngImport: i0, type: AuthenticationSettingsProvider, decorators: [{
type: Injectable
}], ctorParameters: function () { return [{ type: i1.AppIdProvider }]; } });
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXV0aGVudGljYXRpb24uc2V0dGluZ3MuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9rZXBoYXMvbmd4LW9pZGMvc3JjL2xpYi9hdXRoZW50aWNhdGlvbi5zZXR0aW5ncy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzNDLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQzs7O0FBRXhELE1BQU0sQ0FBQyxNQUFNLGFBQWEsR0FBRyxXQUFXLENBQUM7QUFFekMsTUFBTSxDQUFDLE1BQU0sbUJBQW1CLEdBQUc7SUFDakMsU0FBUyxFQUFFLGFBQWE7SUFDeEIsT0FBTyxFQUFFLFNBQVM7Q0FDbkIsQ0FBQztBQUVGLE1BQU0sQ0FBQyxNQUFNLGFBQWEsR0FBRztJQUMzQixjQUFjLEVBQUUsaUJBQWlCO0lBQ2pDLE1BQU0sRUFBRSxRQUFRO0lBQ2hCLFNBQVMsRUFBRSxZQUFZO0NBQ3hCLENBQUM7QUFFRixNQUFNLENBQUMsTUFBTSxZQUFZLEdBQUc7SUFDMUIsS0FBSyxFQUFFLE9BQU87SUFDZCxhQUFhLEVBQUUsZ0JBQWdCO0lBQy9CLFdBQVcsRUFBRSxjQUFjO0lBQzNCLE9BQU8sRUFBRSxTQUFTO0lBQ2xCLFFBQVEsRUFBRSxVQUFVO0NBQ3JCLENBQUM7QUE2Q0YsTUFBTSxPQUFPLDhCQUE4QjtJQUt6Qzs7OztPQUlHO0lBQ0gsWUFBWSxhQUE0QjtRQUN0QyxJQUFJLENBQUMsUUFBUSxHQUFHLElBQUksQ0FBQyxXQUFXLENBQUMsYUFBYSxDQUFDLGdCQUFnQixFQUFFLENBQUMsQ0FBQTtJQUNwRSxDQUFDO0lBRVMsV0FBVyxDQUFDLGFBQXFCO1FBQ3pDLElBQUksZ0JBQWdCLEdBQXlCO1lBQzNDLHdCQUF3QixFQUFFLEdBQUc7WUFDN0Isc0NBQXNDLEVBQUUsbUJBQW1CLGFBQWEsRUFBRTtZQUMxRSxLQUFLLEVBQUUsa0JBQWtCLFlBQVksQ0FBQyxLQUFLLEVBQUU7WUFDN0MsV0FBVyxFQUFFLGtCQUFrQixZQUFZLENBQUMsV0FBVyxFQUFFO1lBQ3pELGFBQWEsRUFBRSxrQkFBa0IsWUFBWSxDQUFDLGFBQWEsRUFBRTtZQUM3RCxRQUFRLEVBQUUsa0JBQWtCLFlBQVksQ0FBQyxRQUFRLEVBQUU7WUFDbkQsT0FBTyxFQUFFLGtCQUFrQixZQUFZLENBQUMsT0FBTyxFQUFFO1lBQ2pELE1BQU0sRUFBRSxrQkFBa0IsYUFBYSxDQUFDLE1BQU0sRUFBRTtZQUNoRCxTQUFTLEVBQUUsa0JBQWtCLGFBQWEsQ0FBQyxTQUFTLEVBQUU7WUFDdEQsY0FBYyxFQUFFLGtCQUFrQixhQUFhLENBQUMsY0FBYyxFQUFFO1lBQ2hFLG1CQUFtQixFQUFFLEVBQUU7WUFDdkIseUJBQXlCLEVBQUUsRUFBRTtZQUM3QiwyQkFBMkIsRUFBRSxFQUFFO1lBQy9CLHNCQUFzQixFQUFFLEVBQUU7WUFDMUIscUJBQXFCLEVBQUUsRUFBRTtZQUN6QixvQkFBb0IsRUFBRSxFQUFFO1lBQ3hCLHVCQUF1QixFQUFFLEVBQUU7WUFDM0IsNEJBQTRCLEVBQUUsRUFBRTtZQUNoQyxvQkFBb0IsRUFBRSw0QkFBNEI7WUFDbEQsa0JBQWtCLEVBQUUsMEJBQTBCO1NBQy9DLENBQUM7UUFFRixnQkFBZ0IsR0FBRztZQUNqQixHQUFHLGdCQUFnQjtZQUNuQixtQkFBbUIsRUFBRSxnQkFBZ0IsQ0FBQyxLQUFLLENBQUMsS0FBSyxDQUFDLEdBQUcsQ0FBQztZQUN0RCx5QkFBeUIsRUFBRSxnQkFBZ0IsQ0FBQyxXQUFXLENBQUMsS0FBSyxDQUFDLEdBQUcsQ0FBQztZQUNsRSxzQkFBc0IsRUFBRSxnQkFBZ0IsQ0FBQyxRQUFRLENBQUMsS0FBSyxDQUFDLEdBQUcsQ0FBQztZQUM1RCxxQkFBcUIsRUFBRSxnQkFBZ0IsQ0FBQyxPQUFPLENBQUMsS0FBSyxDQUFDLEdBQUcsQ0FBQztZQUMxRCxvQkFBb0IsRUFBRSxnQkFBZ0IsQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDLEdBQUcsQ0FBQztZQUN4RCx1QkFBdUIsRUFBRSxnQkFBZ0IsQ0FBQyxTQUFTLENBQUMsS0FBSyxDQUFDLEdBQUcsQ0FBQztZQUM5RCw0QkFBNEIsRUFBRSxnQkFBZ0IsQ0FBQyxjQUFjLENBQUMsS0FBSyxDQUFDLEdBQUcsQ0FBQztTQUN6RSxDQUFDO1FBRUYsSUFBSSxRQUFRLEdBQXlCLEVBQ3BDLENBQUM7UUFFRixPQUFPO1lBQ0wsYUFBYSxFQUFFLGFBQWE7WUFDNUIsU0FBUyxFQUFFLGFBQWE7WUFDeEIsZ0JBQWdCLEVBQUUsZ0JBQWdCO1lBQ2xDLFFBQVEsRUFBRSxRQUFRO1lBQ2xCLDRFQUE0RTtZQUM1RSw2RUFBNkU7WUFDN0UsYUFBYSxFQUFFLElBQUk7U0FDcEIsQ0FBQTtJQUNILENBQUM7O0FBNURzQix1Q0FBUSxHQUFHLElBQUksOEJBQThCLENBQUMsSUFBSSxhQUFhLEVBQUUsQ0FBRSxDQUFBOzJIQUQvRSw4QkFBOEI7K0hBQTlCLDhCQUE4QjsyRkFBOUIsOEJBQThCO2tCQUQxQyxVQUFVIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBBcHBJZFByb3ZpZGVyIH0gZnJvbSAnLi9hcHBJZFByb3ZpZGVyLnNlcnZpY2UnO1xyXG5cclxuZXhwb3J0IGNvbnN0IFJldHVyblVybFR5cGUgPSAncmV0dXJuVXJsJztcclxuXHJcbmV4cG9ydCBjb25zdCBRdWVyeVBhcmFtZXRlck5hbWVzID0ge1xyXG4gIFJldHVyblVybDogUmV0dXJuVXJsVHlwZSxcclxuICBNZXNzYWdlOiAnbWVzc2FnZSdcclxufTtcclxuXHJcbmV4cG9ydCBjb25zdCBMb2dvdXRBY3Rpb25zID0ge1xyXG4gIExvZ291dENhbGxiYWNrOiAnbG9nb3V0LWNhbGxiYWNrJyxcclxuICBMb2dvdXQ6ICdsb2dvdXQnLFxyXG4gIExvZ2dlZE91dDogJ2xvZ2dlZC1vdXQnXHJcbn07XHJcblxyXG5leHBvcnQgY29uc3QgTG9naW5BY3Rpb25zID0ge1xyXG4gIExvZ2luOiAnbG9naW4nLFxyXG4gIExvZ2luQ2FsbGJhY2s6ICdsb2dpbi1jYWxsYmFjaycsXHJcbiAgTG9naW5GYWlsZWQ6ICdsb2dpbi1mYWlsZWQnLFxyXG4gIFByb2ZpbGU6ICdwcm9maWxlJyxcclxuICBSZWdpc3RlcjogJ3JlZ2lzdGVyJ1xyXG59O1xyXG5cclxuZXhwb3J0IGludGVyZmFjZSBBcHBsaWNhdGlvblBhdGhzVHlwZSB7XHJcbiAgcmVhZG9ubHkgRGVmYXVsdExvZ2luUmVkaXJlY3RQYXRoOiBzdHJpbmc7XHJcbiAgcmVhZG9ubHkgQXBpQXV0aG9yaXphdGlvbkNsaWVudENvbmZpZ3VyYXRpb25Vcmw6IHN0cmluZztcclxuICByZWFkb25seSBMb2dpbjogc3RyaW5nO1xyXG4gIHJlYWRvbmx5IExvZ2luRmFpbGVkOiBzdHJpbmc7XHJcbiAgcmVhZG9ubHkgTG9naW5DYWxsYmFjazogc3RyaW5nO1xyXG4gIHJlYWRvbmx5IFJlZ2lzdGVyOiBzdHJpbmc7XHJcbiAgcmVhZG9ubHkgUHJvZmlsZTogc3RyaW5nO1xyXG4gIHJlYWRvbmx5IExvZ091dDogc3RyaW5nO1xyXG4gIHJlYWRvbmx5IExvZ2dlZE91dDogc3RyaW5nO1xyXG4gIHJlYWRvbmx5IExvZ091dENhbGxiYWNrOiBzdHJpbmc7XHJcbiAgcmVhZG9ubHkgTG9naW5QYXRoQ29tcG9uZW50czogc3RyaW5nIFtdO1xyXG4gIHJlYWRvbmx5IExvZ2luRmFpbGVkUGF0aENvbXBvbmVudHM6IHN0cmluZyBbXTtcclxuICByZWFkb25seSBMb2dpbkNhbGxiYWNrUGF0aENvbXBvbmVudHM6IHN0cmluZyBbXTtcclxuICByZWFkb25seSBSZWdpc3RlclBhdGhDb21wb25lbnRzOiBzdHJpbmcgW107XHJcbiAgcmVhZG9ubHkgUHJvZmlsZVBhdGhDb21wb25lbnRzOiBzdHJpbmcgW107XHJcbiAgcmVhZG9ubHkgTG9nT3V0UGF0aENvbXBvbmVudHM6IHN0cmluZyBbXTtcclxuICByZWFkb25seSBMb2dnZWRPdXRQYXRoQ29tcG9uZW50czogc3RyaW5nIFtdO1xyXG4gIHJlYWRvbmx5IExvZ091dENhbGxiYWNrUGF0aENvbXBvbmVudHM6IHN0cmluZyBbXTtcclxuICByZWFkb25seSBJZGVudGl0eVJlZ2lzdGVyUGF0aDogc3RyaW5nO1xyXG4gIHJlYWRvbmx5IElkZW50aXR5TWFuYWdlUGF0aDogc3RyaW5nO1xyXG59XHJcblxyXG5leHBvcnQgaW50ZXJmYWNlIEFjdGl2aXR5U2V0dGluZ3NUeXBlIHtcclxuICAvKipcclxuICAgKiBUaGUgbWF4aW11bSBpZGxlIHRpbWUgKHNlY29uZHMpIHVudGlsIGFuIGF1dG9tYXRpYyBkaXNjb25uZWN0IGhhcHBlbnMuXHJcbiAgICogRG8gbm90IHNldCBpZiB0aGUgYXV0b21hdGljIGRpc2Nvbm5lY3Qgc2hvdWxkIG5vdCBiZSB0cmlnZ2VyZWQuXHJcbiAgICpcclxuICAgKiBAdHlwZSB7bnVtYmVyfVxyXG4gICAqIEBtZW1iZXJvZiBBY3Rpdml0eVNldHRpbmdzVHlwZVxyXG4gICAqL1xyXG4gIHJlYWRvbmx5IE1heElkbGVTZWNvbmRzPzogbnVtYmVyO1xyXG59XHJcblxyXG5leHBvcnQgaW50ZXJmYWNlIEF1dGhlbnRpY2F0aW9uU2V0dGluZ3Mge1xyXG4gIHJlYWRvbmx5IGlkZW50aXR5QXBwSWQ6IHN0cmluZztcclxuICByZWFkb25seSByZXR1cm5Vcmw6IHN0cmluZztcclxuICByZWFkb25seSBhcHBsaWNhdGlvblBhdGhzOiBBcHBsaWNhdGlvblBhdGhzVHlwZTtcclxuICByZWFkb25seSBhY3Rpdml0eTogQWN0aXZpdHlTZXR0aW5nc1R5cGU7XHJcbiAgcG9wVXBEaXNhYmxlZDogYm9vbGVhbjtcclxufVxyXG5cclxuQEluamVjdGFibGUoKVxyXG5leHBvcnQgY2xhc3MgQXV0aGVudGljYXRpb25TZXR0aW5nc1Byb3ZpZGVyIHtcclxuICBwdWJsaWMgc3RhdGljIHJlYWRvbmx5IGluc3RhbmNlID0gbmV3IEF1dGhlbnRpY2F0aW9uU2V0dGluZ3NQcm92aWRlcihuZXcgQXBwSWRQcm92aWRlcigpKTtcclxuXHJcbiAgcmVhZG9ubHkgc2V0dGluZ3M6IEF1dGhlbnRpY2F0aW9uU2V0dGluZ3M7XHJcblxyXG4gIC8qKlxyXG4gICAqIENyZWF0ZXMgYW4gaW5zdGFuY2Ugb2YgQXV0aGVudGljYXRpb25TZXR0aW5nc1Byb3ZpZGVyLlxyXG4gICAqIEBwYXJhbSB7QXBwSWRQcm92aWRlcn0gYXBwSWRQcm92aWRlciBUaGUgYXBwbGljYXRpb24gSUQgcHJvdmlkZXIuXHJcbiAgICogQG1lbWJlcm9mIEF1dGhlbnRpY2F0aW9uU2V0dGluZ3NQcm92aWRlclxyXG4gICAqL1xyXG4gIGNvbnN0cnVjdG9yKGFwcElkUHJvdmlkZXI6IEFwcElkUHJvdmlkZXIpIHtcclxuICAgIHRoaXMuc2V0dGluZ3MgPSB0aGlzLmdldFNldHRpbmdzKGFwcElkUHJvdmlkZXIuZ2V0SWRlbnRpdHlBcHBJZCgpKVxyXG4gIH1cclxuXHJcbiAgcHJvdGVjdGVkIGdldFNldHRpbmdzKGlkZW50aXR5QXBwSWQ6IHN0cmluZyk6IEF1dGhlbnRpY2F0aW9uU2V0dGluZ3Mge1xyXG4gICAgbGV0IGFwcGxpY2F0aW9uUGF0aHM6IEFwcGxpY2F0aW9uUGF0aHNUeXBlID0ge1xyXG4gICAgICBEZWZhdWx0TG9naW5SZWRpcmVjdFBhdGg6ICcvJyxcclxuICAgICAgQXBpQXV0aG9yaXphdGlvbkNsaWVudENvbmZpZ3VyYXRpb25Vcmw6IGAvX2NvbmZpZ3VyYXRpb24vJHtpZGVudGl0eUFwcElkfWAsXHJcbiAgICAgIExvZ2luOiBgYXV0aGVudGljYXRpb24vJHtMb2dpbkFjdGlvbnMuTG9naW59YCxcclxuICAgICAgTG9naW5GYWlsZWQ6IGBhdXRoZW50aWNhdGlvbi8ke0xvZ2luQWN0aW9ucy5Mb2dpbkZhaWxlZH1gLFxyXG4gICAgICBMb2dpbkNhbGxiYWNrOiBgYXV0aGVudGljYXRpb24vJHtMb2dpbkFjdGlvbnMuTG9naW5DYWxsYmFja31gLFxyXG4gICAgICBSZWdpc3RlcjogYGF1dGhlbnRpY2F0aW9uLyR7TG9naW5BY3Rpb25zLlJlZ2lzdGVyfWAsXHJcbiAgICAgIFByb2ZpbGU6IGBhdXRoZW50aWNhdGlvbi8ke0xvZ2luQWN0aW9ucy5Qcm9maWxlfWAsXHJcbiAgICAgIExvZ091dDogYGF1dGhlbnRpY2F0aW9uLyR7TG9nb3V0QWN0aW9ucy5Mb2dvdXR9YCxcclxuICAgICAgTG9nZ2VkT3V0OiBgYXV0aGVudGljYXRpb24vJHtMb2dvdXRBY3Rpb25zLkxvZ2dlZE91dH1gLFxyXG4gICAgICBMb2dPdXRDYWxsYmFjazogYGF1dGhlbnRpY2F0aW9uLyR7TG9nb3V0QWN0aW9ucy5Mb2dvdXRDYWxsYmFja31gLFxyXG4gICAgICBMb2dpblBhdGhDb21wb25lbnRzOiBbXSxcclxuICAgICAgTG9naW5GYWlsZWRQYXRoQ29tcG9uZW50czogW10sXHJcbiAgICAgIExvZ2luQ2FsbGJhY2tQYXRoQ29tcG9uZW50czogW10sXHJcbiAgICAgIFJlZ2lzdGVyUGF0aENvbXBvbmVudHM6IFtdLFxyXG4gICAgICBQcm9maWxlUGF0aENvbXBvbmVudHM6IFtdLFxyXG4gICAgICBMb2dPdXRQYXRoQ29tcG9uZW50czogW10sXHJcbiAgICAgIExvZ2dlZE91dFBhdGhDb21wb25lbnRzOiBbXSxcclxuICAgICAgTG9nT3V0Q2FsbGJhY2tQYXRoQ29tcG9uZW50czogW10sXHJcbiAgICAgIElkZW50aXR5UmVnaXN0ZXJQYXRoOiAnL0lkZW50aXR5L0FjY291bnQvUmVnaXN0ZXInLFxyXG4gICAgICBJZGVudGl0eU1hbmFnZVBhdGg6ICcvSWRlbnRpdHkvQWNjb3VudC9NYW5hZ2UnXHJcbiAgICB9O1xyXG5cclxuICAgIGFwcGxpY2F0aW9uUGF0aHMgPSB7XHJcbiAgICAgIC4uLmFwcGxpY2F0aW9uUGF0aHMsXHJcbiAgICAgIExvZ2luUGF0aENvbXBvbmVudHM6IGFwcGxpY2F0aW9uUGF0aHMuTG9naW4uc3BsaXQoJy8nKSxcclxuICAgICAgTG9naW5GYWlsZWRQYXRoQ29tcG9uZW50czogYXBwbGljYXRpb25QYXRocy5Mb2dpbkZhaWxlZC5zcGxpdCgnLycpLFxyXG4gICAgICBSZWdpc3RlclBhdGhDb21wb25lbnRzOiBhcHBsaWNhdGlvblBhdGhzLlJlZ2lzdGVyLnNwbGl0KCcvJyksXHJcbiAgICAgIFByb2ZpbGVQYXRoQ29tcG9uZW50czogYXBwbGljYXRpb25QYXRocy5Qcm9maWxlLnNwbGl0KCcvJyksXHJcbiAgICAgIExvZ091dFBhdGhDb21wb25lbnRzOiBhcHBsaWNhdGlvblBhdGhzLkxvZ091dC5zcGxpdCgnLycpLFxyXG4gICAgICBMb2dnZWRPdXRQYXRoQ29tcG9uZW50czogYXBwbGljYXRpb25QYXRocy5Mb2dnZWRPdXQuc3BsaXQoJy8nKSxcclxuICAgICAgTG9nT3V0Q2FsbGJhY2tQYXRoQ29tcG9uZW50czogYXBwbGljYXRpb25QYXRocy5Mb2dPdXRDYWxsYmFjay5zcGxpdCgnLycpXHJcbiAgICB9O1xyXG5cclxuICAgIGxldCBhY3Rpdml0eTogQWN0aXZpdHlTZXR0aW5nc1R5cGUgPSB7XHJcbiAgICB9O1xyXG5cclxuICAgIHJldHVybiB7XHJcbiAgICAgIGlkZW50aXR5QXBwSWQ6IGlkZW50aXR5QXBwSWQsXHJcbiAgICAgIHJldHVyblVybDogUmV0dXJuVXJsVHlwZSxcclxuICAgICAgYXBwbGljYXRpb25QYXRoczogYXBwbGljYXRpb25QYXRocyxcclxuICAgICAgYWN0aXZpdHk6IGFjdGl2aXR5LFxyXG4gICAgICAvLyBCeSBkZWZhdWx0IHBvcCB1cHMgYXJlIGRpc2FibGVkIGJlY2F1c2UgdGhleSBkb24ndCB3b3JrIHByb3Blcmx5IG9uIEVkZ2UuXHJcbiAgICAgIC8vIElmIHlvdSB3YW50IHRvIGVuYWJsZSBwb3AgdXAgYXV0aGVudGljYXRpb24gc2ltcGx5IHNldCB0aGlzIGZsYWcgdG8gZmFsc2UuXHJcbiAgICAgIHBvcFVwRGlzYWJsZWQ6IHRydWUsXHJcbiAgICB9XHJcbiAgfVxyXG59XHJcbiJdfQ==