Join our webinar on Wednesday, June 26, at 1pm EDTHow Chia Mitigates Risk in the Crypto Industry.Register
Socket
Socket
Sign inDemoInstall

angular-auth-oidc-client

Package Overview
Dependencies
427
Maintainers
3
Versions
177
Alerts
File Explorer

Advanced tools

Install Socket

Detect and block malicious and high-risk dependencies

Install

Comparing version 12.0.2 to 12.0.3

esm2015/lib/storage/default-sessionstorage.service.js

4

esm2015/lib/angular-auth-oidc-client.js

@@ -16,4 +16,4 @@ // Public classes.

export * from './login/login-response';
export * from './login/popup/popup-login.service';
export * from './login/popup/popup-options';
export * from './login/popup/popup.service';
export * from './oidc.security.service';

@@ -30,2 +30,2 @@ export * from './public-events/event-types';

export * from './validation/validation-result';
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYW5ndWxhci1hdXRoLW9pZGMtY2xpZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vcHJvamVjdHMvYW5ndWxhci1hdXRoLW9pZGMtY2xpZW50L3NyYy9saWIvYW5ndWxhci1hdXRoLW9pZGMtY2xpZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLGtCQUFrQjtBQUVsQixjQUFjLGdCQUFnQixDQUFDO0FBQy9CLGNBQWMsMEJBQTBCLENBQUM7QUFDekMsY0FBYyx5QkFBeUIsQ0FBQztBQUN4QyxjQUFjLGVBQWUsQ0FBQztBQUM5QixjQUFjLDBDQUEwQyxDQUFDO0FBQ3pELGNBQWMsOENBQThDLENBQUM7QUFDN0QsY0FBYyxvREFBb0QsQ0FBQztBQUNuRSxjQUFjLHlCQUF5QixDQUFDO0FBQ3hDLGNBQWMsK0JBQStCLENBQUM7QUFDOUMsY0FBYywrQkFBK0IsQ0FBQztBQUM5QyxjQUFjLGdDQUFnQyxDQUFDO0FBQy9DLGNBQWMscUJBQXFCLENBQUM7QUFDcEMsY0FBYywwQkFBMEIsQ0FBQztBQUN6QyxjQUFjLHdCQUF3QixDQUFDO0FBQ3ZDLGNBQWMsbUNBQW1DLENBQUM7QUFDbEQsY0FBYyw2QkFBNkIsQ0FBQztBQUM1QyxjQUFjLHlCQUF5QixDQUFDO0FBQ3hDLGNBQWMsNkJBQTZCLENBQUM7QUFDNUMsY0FBYyw4QkFBOEIsQ0FBQztBQUM3QyxjQUFjLHVDQUF1QyxDQUFDO0FBQ3RELGNBQWMscUNBQXFDLENBQUM7QUFDcEQsY0FBYyw2QkFBNkIsQ0FBQztBQUM1QyxjQUFjLDBDQUEwQyxDQUFDO0FBQ3pELGNBQWMsc0JBQXNCLENBQUM7QUFDckMsY0FBYyxzQ0FBc0MsQ0FBQztBQUNyRCxjQUFjLHVDQUF1QyxDQUFDO0FBQ3RELGNBQWMsZ0NBQWdDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvLyBQdWJsaWMgY2xhc3Nlcy5cblxuZXhwb3J0ICogZnJvbSAnLi9hdXRoLW9wdGlvbnMnO1xuZXhwb3J0ICogZnJvbSAnLi9hdXRoLXN0YXRlL2F1dGgtcmVzdWx0JztcbmV4cG9ydCAqIGZyb20gJy4vYXV0aC1zdGF0ZS9hdXRoLXN0YXRlJztcbmV4cG9ydCAqIGZyb20gJy4vYXV0aC5tb2R1bGUnO1xuZXhwb3J0ICogZnJvbSAnLi9hdXRvLWxvZ2luL2F1dG8tbG9naW4tYWxsLXJvdXRlcy5ndWFyZCc7XG5leHBvcnQgKiBmcm9tICcuL2F1dG8tbG9naW4vYXV0by1sb2dpbi1wYXJ0aWFsLXJvdXRlcy5ndWFyZCc7XG5leHBvcnQgKiBmcm9tICcuL2NvbmZpZy9hdXRoLXdlbGwta25vd24vYXV0aC13ZWxsLWtub3duLWVuZHBvaW50cyc7XG5leHBvcnQgKiBmcm9tICcuL2NvbmZpZy9jb25maWcuc2VydmljZSc7XG5leHBvcnQgKiBmcm9tICcuL2NvbmZpZy9sb2FkZXIvY29uZmlnLWxvYWRlcic7XG5leHBvcnQgKiBmcm9tICcuL2NvbmZpZy9vcGVuaWQtY29uZmlndXJhdGlvbic7XG5leHBvcnQgKiBmcm9tICcuL2ludGVyY2VwdG9yL2F1dGguaW50ZXJjZXB0b3InO1xuZXhwb3J0ICogZnJvbSAnLi9sb2dnaW5nL2xvZy1sZXZlbCc7XG5leHBvcnQgKiBmcm9tICcuL2xvZ2dpbmcvbG9nZ2VyLnNlcnZpY2UnO1xuZXhwb3J0ICogZnJvbSAnLi9sb2dpbi9sb2dpbi1yZXNwb25zZSc7XG5leHBvcnQgKiBmcm9tICcuL2xvZ2luL3BvcHVwL3BvcHVwLWxvZ2luLnNlcnZpY2UnO1xuZXhwb3J0ICogZnJvbSAnLi9sb2dpbi9wb3B1cC9wb3B1cC1vcHRpb25zJztcbmV4cG9ydCAqIGZyb20gJy4vb2lkYy5zZWN1cml0eS5zZXJ2aWNlJztcbmV4cG9ydCAqIGZyb20gJy4vcHVibGljLWV2ZW50cy9ldmVudC10eXBlcyc7XG5leHBvcnQgKiBmcm9tICcuL3B1YmxpYy1ldmVudHMvbm90aWZpY2F0aW9uJztcbmV4cG9ydCAqIGZyb20gJy4vcHVibGljLWV2ZW50cy9wdWJsaWMtZXZlbnRzLnNlcnZpY2UnO1xuZXhwb3J0ICogZnJvbSAnLi9zdG9yYWdlL2Fic3RyYWN0LXNlY3VyaXR5LXN0b3JhZ2UnO1xuZXhwb3J0ICogZnJvbSAnLi91c2VyLWRhdGEvdXNlcmRhdGEtcmVzdWx0JztcbmV4cG9ydCAqIGZyb20gJy4vdXRpbHMvdG9rZW5IZWxwZXIvdG9rZW4taGVscGVyLnNlcnZpY2UnO1xuZXhwb3J0ICogZnJvbSAnLi92YWxpZGF0aW9uL2p3dGtleXMnO1xuZXhwb3J0ICogZnJvbSAnLi92YWxpZGF0aW9uL3N0YXRlLXZhbGlkYXRpb24tcmVzdWx0JztcbmV4cG9ydCAqIGZyb20gJy4vdmFsaWRhdGlvbi90b2tlbi12YWxpZGF0aW9uLnNlcnZpY2UnO1xuZXhwb3J0ICogZnJvbSAnLi92YWxpZGF0aW9uL3ZhbGlkYXRpb24tcmVzdWx0JztcbiJdfQ==
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYW5ndWxhci1hdXRoLW9pZGMtY2xpZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vcHJvamVjdHMvYW5ndWxhci1hdXRoLW9pZGMtY2xpZW50L3NyYy9saWIvYW5ndWxhci1hdXRoLW9pZGMtY2xpZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLGtCQUFrQjtBQUVsQixjQUFjLGdCQUFnQixDQUFDO0FBQy9CLGNBQWMsMEJBQTBCLENBQUM7QUFDekMsY0FBYyx5QkFBeUIsQ0FBQztBQUN4QyxjQUFjLGVBQWUsQ0FBQztBQUM5QixjQUFjLDBDQUEwQyxDQUFDO0FBQ3pELGNBQWMsOENBQThDLENBQUM7QUFDN0QsY0FBYyxvREFBb0QsQ0FBQztBQUNuRSxjQUFjLHlCQUF5QixDQUFDO0FBQ3hDLGNBQWMsK0JBQStCLENBQUM7QUFDOUMsY0FBYywrQkFBK0IsQ0FBQztBQUM5QyxjQUFjLGdDQUFnQyxDQUFDO0FBQy9DLGNBQWMscUJBQXFCLENBQUM7QUFDcEMsY0FBYywwQkFBMEIsQ0FBQztBQUN6QyxjQUFjLHdCQUF3QixDQUFDO0FBQ3ZDLGNBQWMsNkJBQTZCLENBQUM7QUFDNUMsY0FBYyw2QkFBNkIsQ0FBQztBQUM1QyxjQUFjLHlCQUF5QixDQUFDO0FBQ3hDLGNBQWMsNkJBQTZCLENBQUM7QUFDNUMsY0FBYyw4QkFBOEIsQ0FBQztBQUM3QyxjQUFjLHVDQUF1QyxDQUFDO0FBQ3RELGNBQWMscUNBQXFDLENBQUM7QUFDcEQsY0FBYyw2QkFBNkIsQ0FBQztBQUM1QyxjQUFjLDBDQUEwQyxDQUFDO0FBQ3pELGNBQWMsc0JBQXNCLENBQUM7QUFDckMsY0FBYyxzQ0FBc0MsQ0FBQztBQUNyRCxjQUFjLHVDQUF1QyxDQUFDO0FBQ3RELGNBQWMsZ0NBQWdDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvLyBQdWJsaWMgY2xhc3Nlcy5cblxuZXhwb3J0ICogZnJvbSAnLi9hdXRoLW9wdGlvbnMnO1xuZXhwb3J0ICogZnJvbSAnLi9hdXRoLXN0YXRlL2F1dGgtcmVzdWx0JztcbmV4cG9ydCAqIGZyb20gJy4vYXV0aC1zdGF0ZS9hdXRoLXN0YXRlJztcbmV4cG9ydCAqIGZyb20gJy4vYXV0aC5tb2R1bGUnO1xuZXhwb3J0ICogZnJvbSAnLi9hdXRvLWxvZ2luL2F1dG8tbG9naW4tYWxsLXJvdXRlcy5ndWFyZCc7XG5leHBvcnQgKiBmcm9tICcuL2F1dG8tbG9naW4vYXV0by1sb2dpbi1wYXJ0aWFsLXJvdXRlcy5ndWFyZCc7XG5leHBvcnQgKiBmcm9tICcuL2NvbmZpZy9hdXRoLXdlbGwta25vd24vYXV0aC13ZWxsLWtub3duLWVuZHBvaW50cyc7XG5leHBvcnQgKiBmcm9tICcuL2NvbmZpZy9jb25maWcuc2VydmljZSc7XG5leHBvcnQgKiBmcm9tICcuL2NvbmZpZy9sb2FkZXIvY29uZmlnLWxvYWRlcic7XG5leHBvcnQgKiBmcm9tICcuL2NvbmZpZy9vcGVuaWQtY29uZmlndXJhdGlvbic7XG5leHBvcnQgKiBmcm9tICcuL2ludGVyY2VwdG9yL2F1dGguaW50ZXJjZXB0b3InO1xuZXhwb3J0ICogZnJvbSAnLi9sb2dnaW5nL2xvZy1sZXZlbCc7XG5leHBvcnQgKiBmcm9tICcuL2xvZ2dpbmcvbG9nZ2VyLnNlcnZpY2UnO1xuZXhwb3J0ICogZnJvbSAnLi9sb2dpbi9sb2dpbi1yZXNwb25zZSc7XG5leHBvcnQgKiBmcm9tICcuL2xvZ2luL3BvcHVwL3BvcHVwLW9wdGlvbnMnO1xuZXhwb3J0ICogZnJvbSAnLi9sb2dpbi9wb3B1cC9wb3B1cC5zZXJ2aWNlJztcbmV4cG9ydCAqIGZyb20gJy4vb2lkYy5zZWN1cml0eS5zZXJ2aWNlJztcbmV4cG9ydCAqIGZyb20gJy4vcHVibGljLWV2ZW50cy9ldmVudC10eXBlcyc7XG5leHBvcnQgKiBmcm9tICcuL3B1YmxpYy1ldmVudHMvbm90aWZpY2F0aW9uJztcbmV4cG9ydCAqIGZyb20gJy4vcHVibGljLWV2ZW50cy9wdWJsaWMtZXZlbnRzLnNlcnZpY2UnO1xuZXhwb3J0ICogZnJvbSAnLi9zdG9yYWdlL2Fic3RyYWN0LXNlY3VyaXR5LXN0b3JhZ2UnO1xuZXhwb3J0ICogZnJvbSAnLi91c2VyLWRhdGEvdXNlcmRhdGEtcmVzdWx0JztcbmV4cG9ydCAqIGZyb20gJy4vdXRpbHMvdG9rZW5IZWxwZXIvdG9rZW4taGVscGVyLnNlcnZpY2UnO1xuZXhwb3J0ICogZnJvbSAnLi92YWxpZGF0aW9uL2p3dGtleXMnO1xuZXhwb3J0ICogZnJvbSAnLi92YWxpZGF0aW9uL3N0YXRlLXZhbGlkYXRpb24tcmVzdWx0JztcbmV4cG9ydCAqIGZyb20gJy4vdmFsaWRhdGlvbi90b2tlbi12YWxpZGF0aW9uLnNlcnZpY2UnO1xuZXhwb3J0ICogZnJvbSAnLi92YWxpZGF0aW9uL3ZhbGlkYXRpb24tcmVzdWx0JztcbiJdfQ==

@@ -42,4 +42,4 @@ import { CommonModule } from '@angular/common';

import { PublicEventsService } from './public-events/public-events.service';
import { AbstractSecurityStorage } from './storage/abstract-security-storage';
import { BrowserStorageService } from './storage/browser-storage.service';
import { DefaultSessionStorageService } from './storage/default-sessionstorage.service';
import { StoragePersistenceService } from './storage/storage-persistence.service';

@@ -84,6 +84,2 @@ import { UserService } from './user-data/user.service';

},
{
provide: AbstractSecurityStorage,
useClass: (passedConfig === null || passedConfig === void 0 ? void 0 : passedConfig.storage) || BrowserStorageService,
},
OidcConfigService,

@@ -137,2 +133,4 @@ PublicEventsService,

ClosestMatchingRouteService,
DefaultSessionStorageService,
BrowserStorageService,
],

@@ -153,2 +151,2 @@ };

}] });
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXV0aC5tb2R1bGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wcm9qZWN0cy9hbmd1bGFyLWF1dGgtb2lkYy1jbGllbnQvc3JjL2xpYi9hdXRoLm1vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDL0MsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFDeEQsT0FBTyxFQUFFLGVBQWUsRUFBRSxjQUFjLEVBQXVCLFFBQVEsRUFBWSxNQUFNLGVBQWUsQ0FBQztBQUN6RyxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sb0JBQW9CLENBQUM7QUFDakQsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLHlCQUF5QixDQUFDO0FBQzFELE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLGlDQUFpQyxDQUFDO0FBQ25FLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLGlDQUFpQyxDQUFDO0FBQ25FLE9BQU8sRUFBRSwyQkFBMkIsRUFBRSxNQUFNLDJDQUEyQyxDQUFDO0FBQ3hGLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBQ3hELE9BQU8sRUFBRSx3QkFBd0IsRUFBRSxNQUFNLHVEQUF1RCxDQUFDO0FBQ2pHLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLGtEQUFrRCxDQUFDO0FBQ3hGLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLHlCQUF5QixDQUFDO0FBQzVELE9BQU8sRUFBRSxlQUFlLEVBQUUscUJBQXFCLEVBQUUsTUFBTSwrQkFBK0IsQ0FBQztBQUV2RixPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSxtQ0FBbUMsQ0FBQztBQUMxRSxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsTUFBTSwrQ0FBK0MsQ0FBQztBQUN4RixPQUFPLEVBQUUsOEJBQThCLEVBQUUsTUFBTSw4REFBOEQsQ0FBQztB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cG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQgeyBIdHRwQ2xpZW50TW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uL2h0dHAnO1xuaW1wb3J0IHsgQVBQX0lOSVRJQUxJWkVSLCBJbmplY3Rpb25Ub2tlbiwgTW9kdWxlV2l0aFByb3ZpZGVycywgTmdNb2R1bGUsIFByb3ZpZGVyIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBEYXRhU2VydmljZSB9IGZyb20gJy4vYXBpL2RhdGEuc2VydmljZSc7XG5pbXBvcnQgeyBIdHRwQmFzZVNlcnZpY2UgfSBmcm9tICcuL2FwaS9odHRwLWJhc2Uuc2VydmljZSc7XG5pbXBvcnQgeyBBdXRoU3RhdGVTZXJ2aWNlIH0gZnJvbSAnLi9hdXRoLXN0YXRlL2F1dGgtc3RhdGUuc2VydmljZSc7XG5pbXBvcnQgeyBBdXRvTG9naW5TZXJ2aWNlIH0gZnJvbSAnLi9hdXRvLWxvZ2luL2F1dG8tbG9naW4uc2VydmljZSc7XG5pbXBvcnQgeyBJbXBsaWNpdEZsb3dDYWxsYmFja1NlcnZpY2UgfSBmcm9tICcuL2NhbGxiYWNrL2ltcGxpY2l0LWZsb3ctY2FsbGJhY2suc2VydmljZSc7XG5pbXBvcnQgeyBDaGVja0F1dGhTZXJ2aWNlIH0gZnJvbSAnLi9jaGVjay1hdXRoLnNlcnZpY2UnO1xuaW1wb3J0IHsgQXV0aFdlbGxLbm93bkRhdGFTZXJ2aWNlIH0gZnJvbSAnLi9jb25maWcvYXV0aC13ZWxsLWtub3duL2F1dGgtd2VsbC1rbm93bi1kYXRhLnNlcnZpY2UnO1xuaW1wb3J0IHsgQXV0aFdlbGxLbm93blNlcnZpY2UgfSBmcm9tICcuL2NvbmZpZy9hdXRoLXdlbGwta25vd24vYXV0aC13ZWxsLWtub3duLnNlcnZpY2UnO1xuaW1wb3J0IHsgT2lkY0NvbmZpZ1NlcnZpY2UgfSBmcm9tICcuL2NvbmZpZy9jb25maWcuc2VydmljZSc7XG5pbXBvcnQgeyBTdHNDb25maWdMb2FkZXIsIFN0c0NvbmZpZ1N0YXRpY0xvYWRlciB9IGZyb20gJy4vY29uZmlnL2xvYWRlci9jb25maWctbG9hZGVyJztcbmltcG9ydCB7IE9wZW5JZENvbmZpZ3VyYXRpb24gfSBmcm9tICcuL2NvbmZpZy9vcGVuaWQtY29uZmlndXJhdGlvbic7XG5pbXBvcnQgeyBDb25maWd1cmF0aW9uUHJvdmlkZXIgfSBmcm9tICcuL2NvbmZpZy9wcm92aWRlci9jb25maWcucHJvdmlkZXInO1xuaW1wb3J0IHsgQ29uZmlnVmFsaWRhdGlvblNlcnZpY2UgfSBmcm9tICcuL2NvbmZpZy92YWxpZGF0aW9uL2NvbmZpZy12YWxpZGF0aW9uLnNlcnZpY2UnO1xuaW1wb3J0IHsgQ29kZUZsb3dDYWxsYmFja0hhbmRsZXJTZXJ2aWNlIH0gZnJvbSAnLi9mbG93cy9jYWxsYmFjay1oYW5kbGluZy9jb2RlLWZsb3ctY2FsbGJhY2staGFuZGxlci5zZXJ2aWNlJztcbmltcG9ydCB7IEhpc3RvcnlKd3RLZXlzQ2FsbGJhY2tIYW5kbGVyU2VydmljZSB9IGZyb20gJy4vZmxvd3MvY2FsbGJhY2staGFuZGxpbmcvaGlzdG9yeS1qd3Qta2V5cy1jYWxsYmFjay1oYW5kbGVyLnNlcnZpY2UnO1xuaW1wb3J0IHsgSW1wbGljaXRGbG93Q2FsbGJhY2tIYW5kbGVyU2VydmljZSB9IGZyb20gJy4vZmxvd3MvY2FsbGJhY2staGFuZGxpbmcvaW1wbGljaXQtZmxvdy1jYWxsYmFjay1oYW5kbGVyLnNlcnZpY2UnO1xuaW1wb3J0IHsgUmVmcmVzaFNlc3Npb25DYWxsYmFja0hhbmRsZXJTZXJ2aWNlIH0gZnJvbSAnLi9mbG93cy9jYWxsYmFjay1oYW5kbGluZy9yZWZyZXNoLXNlc3Npb24tY2FsbGJhY2staGFuZGxlci5zZXJ2aWNlJztcbmltcG9ydCB7IFJlZnJlc2hUb2tlbkNhbGxiYWNrSGFuZGxlclNlcnZpY2UgfSBmcm9tICcuL2Zsb3dzL2NhbGxiYWNrLWhhbmRsaW5nL3JlZnJlc2gtdG9rZW4tY2FsbGJhY2staGFuZGxlci5zZXJ2aWNlJztcbmltcG9ydCB7IFN0YXRlVmFsaWRhdGlvbkNhbGxiYWNrSGFuZGxlclNlcnZpY2UgfSBmcm9tICcuL2Zsb3dzL2NhbGxiYWNrLWhhbmRsaW5nL3N0YXRlLXZhbGlkYXRpb24tY2FsbGJhY2staGFuZGxlci5zZXJ2aWNlJztcbmltcG9ydCB7IFVzZXJDYWxsYmFja0hhbmRsZXJTZXJ2aWNlIH0gZnJvbSAnLi9mbG93cy9jYWxsYmFjay1oYW5kbGluZy91c2VyLWNhbGxiYWNrLWhhbmRsZXIuc2VydmljZSc7XG5pbXBvcnQgeyBGbG93c0RhdGFTZXJ2aWNlIH0gZnJvbSAnLi9mbG93cy9mbG93cy1kYXRhLnNlcnZpY2UnO1xuaW1wb3J0IHsgRmxvd3NTZXJ2aWNlIH0gZnJvbSAnLi9mbG93cy9mbG93cy5zZXJ2aWNlJztcbmltcG9ydCB7IFJhbmRvbVNlcnZpY2UgfSBmcm9tICcuL2Zsb3dzL3JhbmRvbS9yYW5kb20uc2VydmljZSc7XG5pbXBvcnQgeyBSZXNldEF1dGhEYXRhU2VydmljZSB9IGZyb20gJy4vZmxvd3MvcmVzZXQtYXV0aC1kYXRhLnNlcnZpY2UnO1xuaW1wb3J0IHsgU2lnbmluS2V5RGF0YVNlcnZpY2UgfSBmcm9tICcuL2Zsb3dzL3NpZ25pbi1rZXktZGF0YS5zZXJ2aWNlJztcbmltcG9ydCB7IENoZWNrU2Vzc2lvblNlcnZpY2UgfSBmcm9tICcuL2lmcmFtZS9jaGVjay1zZXNzaW9uLnNlcnZpY2UnO1xuaW1wb3J0IHsgSUZyYW1lU2VydmljZSB9IGZyb20gJy4vaWZyYW1lL2V4aXN0aW5nLWlmcmFtZS5zZXJ2aWNlJztcbmltcG9ydCB7IFNpbGVudFJlbmV3U2VydmljZSB9IGZyb20gJy4vaWZyYW1lL3NpbGVudC1yZW5ldy5zZXJ2aWNlJztcbmltcG9ydCB7IENsb3Nlc3RNYXRjaGluZ1JvdXRlU2VydmljZSB9IGZyb20gJy4vaW50ZXJjZXB0b3IvY2xvc2VzdC1tYXRjaGluZy1yb3V0ZS5zZXJ2aWNlJztcbmltcG9ydCB7IExvZ2dlclNlcnZpY2UgfSBmcm9tICcuL2xvZ2dpbmcvbG9nZ2VyLnNlcnZpY2UnO1xuaW1wb3J0IHsgTG9naW5TZXJ2aWNlIH0gZnJvbSAnLi9sb2dpbi9sb2dpbi5zZXJ2aWNlJztcbmltcG9ydCB7IFBhckxvZ2luU2VydmljZSB9IGZyb20gJy4vbG9naW4vcGFyL3Bhci1sb2dpbi5zZXJ2aWNlJztcbmltcG9ydCB7IFBhclNlcnZpY2UgfSBmcm9tICcuL2xvZ2luL3Bhci9wYXIuc2VydmljZSc7XG5pbXBvcnQgeyBQb3BVcExvZ2luU2VydmljZSB9IGZyb20gJy4vbG9naW4vcG9wdXAvcG9wdXAtbG9naW4uc2VydmljZSc7XG5pbXBvcnQgeyBSZXNwb25zZVR5cGVWYWxpZGF0aW9uU2VydmljZSB9IGZyb20gJy4vbG9naW4vcmVzcG9uc2UtdHlwZS12YWxpZGF0aW9uL3Jlc3BvbnNlLXR5cGUtdmFsaWRhdGlvbi5zZXJ2aWNlJztcbmltcG9ydCB7IFN0YW5kYXJkTG9naW5TZXJ2aWNlIH0gZnJvbSAnLi9sb2dpbi9zdGFuZGFyZC9zdGFuZGFyZC1sb2dpbi5zZXJ2aWNlJztcbmltcG9ydCB7IExvZ29mZlJldm9jYXRpb25TZXJ2aWNlIH0gZnJvbSAnLi9sb2dvZmYtcmV2b2tlL2xvZ29mZi1yZXZvY2F0aW9uLnNlcnZpY2UnO1xuaW1wb3J0IHsgT2lkY1NlY3VyaXR5U2VydmljZSB9IGZyb20gJy4vb2lkYy5zZWN1cml0eS5zZXJ2aWNlJztcbmltcG9ydCB7IFB1YmxpY0V2ZW50c1NlcnZpY2UgfSBmcm9tICcuL3B1YmxpYy1ldmVudHMvcHVibGljLWV2ZW50cy5zZXJ2aWNlJztcbmltcG9ydCB7IEFic3RyYWN0U2VjdXJpdHlTdG9yYWdlIH0gZnJvbSAnLi9zdG9yYWdlL2Fic3RyYWN0LXNlY3VyaXR5LXN0b3JhZ2UnO1xuaW1wb3J0IHsgQnJvd3NlclN0b3JhZ2VTZXJ2aWNlIH0gZnJvbSAnLi9zdG9yYWdlL2Jyb3dzZXItc3RvcmFnZS5zZXJ2aWNlJztcbmltcG9ydCB7IFN0b3JhZ2VQZXJzaXN0ZW5jZVNlcnZpY2UgfSBmcm9tICcuL3N0b3JhZ2Uvc3RvcmFnZS1wZXJzaXN0ZW5jZS5zZXJ2aWNlJztcbmltcG9ydCB7IFVzZXJTZXJ2aWNlIH0gZnJvbSAnLi91c2VyLWRhdGEvdXNlci5zZXJ2aWNlJztcbmltcG9ydCB7IEVxdWFsaXR5U2VydmljZSB9IGZyb20gJy4vdXRpbHMvZXF1YWxpdHkvZXF1YWxpdHkuc2VydmljZSc7XG5pbXBvcnQgeyBGbG93SGVscGVyIH0gZnJvbSAnLi91dGlscy9mbG93SGVscGVyL2Zsb3ctaGVscGVyLnNlcnZpY2UnO1xuaW1wb3J0IHsgUGxhdGZvcm1Qcm92aWRlciB9IGZyb20gJy4vdXRpbHMvcGxhdGZvcm0tcHJvdmlkZXIvcGxhdGZvcm0ucHJvdmlkZXInO1xuaW1wb3J0IHsgVG9rZW5IZWxwZXJTZXJ2aWNlIH0gZnJvbSAnLi91dGlscy90b2tlbkhlbHBlci90b2tlbi1oZWxwZXIuc2VydmljZSc7XG5pbXBvcnQgeyBDdXJyZW50VXJsU2VydmljZSB9IGZyb20gJy4vdXRpbHMvdXJsL2N1cnJlbnQtdXJsLnNlcnZpY2UnO1xuaW1wb3J0IHsgVXJsU2VydmljZSB9IGZyb20gJy4vdXRpbHMvdXJsL3VybC5zZXJ2aWNlJztcbmltcG9ydCB7IEpzcnNBc2lnblJlZHVjZWRTZXJ2aWNlIH0gZnJvbSAnLi92YWxpZGF0aW9uL2pzcnNhc2lnbi1yZWR1Y2VkLnNlcnZpY2UnO1xuaW1wb3J0IHsgU3RhdGVWYWxpZGF0aW9uU2VydmljZSB9IGZyb20gJy4vdmFsaWRhdGlvbi9zdGF0ZS12YWxpZGF0aW9uLnNlcnZpY2UnO1xuaW1wb3J0IHsgVG9rZW5WYWxpZGF0aW9uU2VydmljZSB9IGZyb20gJy4vdmFsaWRhdGlvbi90b2tlbi12YWxpZGF0aW9uLnNlcnZpY2UnO1xuXG5leHBvcnQgaW50ZXJmYWNlIFBhc3NlZEluaXRpYWxDb25maWcge1xuICBjb25maWc/OiBPcGVuSWRDb25maWd1cmF0aW9uIHwgT3BlbklkQ29uZmlndXJhdGlvbltdO1xuICBsb2FkZXI/OiBQcm92aWRlcjtcbiAgc3RvcmFnZT86IGFueTtcbn1cblxuLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEB0eXBlc2NyaXB0LWVzbGludC9leHBsaWNpdC1mdW5jdGlvbi1yZXR1cm4tdHlwZVxuZXhwb3J0IGZ1bmN0aW9uIGNyZWF0ZVN0YXRpY0xvYWRlcihwYXNzZWRDb25maWc6IFBhc3NlZEluaXRpYWxDb25maWcpIHtcbiAgcmV0dXJuIG5ldyBTdHNDb25maWdTdGF0aWNMb2FkZXIocGFzc2VkQ29uZmlnLmNvbmZpZyk7XG59XG5cbi8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAdHlwZXNjcmlwdC1lc2xpbnQvZXhwbGljaXQtZnVuY3Rpb24tcmV0dXJuLXR5cGVcbmV4cG9ydCBmdW5jdGlvbiBjb25maWd1cmF0aW9uUHJvdmlkZXJGYWN0b3J5KG9pZGNDb25maWdTZXJ2aWNlOiBPaWRjQ29uZmlnU2VydmljZSwgbG9hZGVyOiBTdHNDb25maWdMb2FkZXIpIHtcbiAgY29uc3QgYWxsTG9hZFByb21pc2VzID0gUHJvbWlzZS5hbGwobG9hZGVyLmxvYWRDb25maWdzKCkpO1xuICBjb25zdCBmbjogKCkgPT4gUHJvbWlzZTxPcGVuSWRDb25maWd1cmF0aW9uW10+ID0gKCkgPT4gYWxsTG9hZFByb21pc2VzLnRoZW4oKGNvbmZpZ3MpID0+IG9pZGNDb25maWdTZXJ2aWNlLndpdGhDb25maWdzKGNvbmZpZ3MpKTtcblxuICByZXR1cm4gZm47XG59XG5cbmV4cG9ydCBjb25zdCBQQVNTRURfQ09ORklHID0gbmV3IEluamVjdGlvblRva2VuPFBhc3NlZEluaXRpYWxDb25maWc+KCdQQVNTRURfQ09ORklHJyk7XG5cbkBOZ01vZHVsZSh7XG4gIGltcG9ydHM6IFtDb21tb25Nb2R1bGUsIEh0dHBDbGllbnRNb2R1bGVdLFxuICBkZWNsYXJhdGlvbnM6IFtdLFxuICBleHBvcnRzOiBbXSxcbn0pXG5leHBvcnQgY2xhc3MgQXV0aE1vZHVsZSB7XG4gIHN0YXRpYyBmb3JSb290KHBhc3NlZENvbmZpZzogUGFzc2VkSW5pdGlhbENvbmZpZyk6IE1vZHVsZVdpdGhQcm92aWRlcnM8QXV0aE1vZHVsZT4ge1xuICAgIHJldHVybiB7XG4gICAgICBuZ01vZHVsZTogQXV0aE1vZHVsZSxcbiAgICAgIHByb3ZpZGVyczogW1xuICAgICAgICAvLyBNYWtlIHRoZSBQQVNTRURfQ09ORklHIGF2YWlsYWJsZSB0aHJvdWdoIGluamVjdGlvblxuICAgICAgICB7IHByb3ZpZGU6IFBBU1NFRF9DT05GSUcsIHVzZVZhbHVlOiBwYXNzZWRDb25maWcgfSxcblxuICAgICAgICAvLyBDcmVhdGUgdGhlIGxvYWRlcjogRWl0aGVyIHRoZSBvbmUgZ2V0dGluZyBwYXNzZWQgb3IgYSBzdGF0aWMgb25lXG4gICAgICAgIHBhc3NlZENvbmZpZz8ubG9hZGVyIHx8IHsgcHJvdmlkZTogU3RzQ29uZmlnTG9hZGVyLCB1c2VGYWN0b3J5OiBjcmVhdGVTdGF0aWNMb2FkZXIsIGRlcHM6IFtQQVNTRURfQ09ORklHXSB9LFxuXG4gICAgICAgIC8vIExvYWQgdGhlIGNvbmZpZyB3aGVuIHRoZSBhcHAgc3RhcnRzXG4gICAgICAgIHtcbiAgICAgICAgICBwcm92aWRlOiBBUFBfSU5JVElBTElaRVIsXG4gICAgICAgICAgbXVsdGk6IHRydWUsXG4gICAgICAgICAgZGVwczogW09pZGNDb25maWdTZXJ2aWNlLCBTdHNDb25maWdMb2FkZXIsIFBBU1NFRF9DT05GSUddLFxuICAgICAgICAgIHVzZUZhY3Rvcnk6IGNvbmZpZ3VyYXRpb25Qcm92aWRlckZhY3RvcnksXG4gICAgICAgIH0sXG5cbiAgICAgICAge1xuICAgICAgICAgIHByb3ZpZGU6IEFic3RyYWN0U2VjdXJpdHlTdG9yYWdlLFxuICAgICAgICAgIHVzZUNsYXNzOiBwYXNzZWRDb25maWc/LnN0b3JhZ2UgfHwgQnJvd3NlclN0b3JhZ2VTZXJ2aWNlLFxuICAgICAgICB9LFxuICAgICAgICBPaWRjQ29uZmlnU2VydmljZSxcbiAgICAgICAgUHVibGljRXZlbnRzU2VydmljZSxcbiAgICAgICAgRmxvd0hlbHBlcixcbiAgICAgICAgQ29uZmlndXJhdGlvblByb3ZpZGVyLFxuICAgICAgICBPaWRjU2VjdXJpdHlTZXJ2aWNlLFxuICAgICAgICBUb2tlblZhbGlkYXRpb25TZXJ2aWNlLFxuICAgICAgICBQbGF0Zm9ybVByb3ZpZGVyLFxuICAgICAgICBDaGVja1Nlc3Npb25TZXJ2aWNlLFxuICAgICAgICBGbG93c0RhdGFTZXJ2aWNlLFxuICAgICAgICBGbG93c1NlcnZpY2UsXG4gICAgICAgIFNpbGVudFJlbmV3U2VydmljZSxcbiAgICAgICAgTG9nb2ZmUmV2b2NhdGlvblNlcnZpY2UsXG4gICAgICAgIFVzZXJTZXJ2aWNlLFxuICAgICAgICBSYW5kb21TZXJ2aWNlLFxuICAgICAgICBIdHRwQmFzZVNlcnZpY2UsXG4gICAgICAgIFVybFNlcnZpY2UsXG4gICAgICAgIEF1dGhTdGF0ZVNlcnZpY2UsXG4gICAgICAgIFNpZ25pbktleURhdGFTZXJ2aWNlLFxuICAgICAgICBTdG9yYWdlUGVyc2lzdGVuY2VTZXJ2aWNlLFxuICAgICAgICBUb2tlbkhlbHBlclNlcnZpY2UsXG4gICAgICAgIExvZ2dlclNlcnZpY2UsXG4gICAgICAgIElGcmFtZVNlcnZpY2UsXG4gICAgICAgIEVxdWFsaXR5U2VydmljZSxcbiAgICAgICAgTG9naW5TZXJ2aWNlLFxuICAgICAgICBQYXJTZXJ2aWNlLFxuICAgICAgICBBdXRoV2VsbEtub3duRGF0YVNlcnZpY2UsXG4gICAgICAgIEF1dGhXZWxsS25vd25TZXJ2aWNlLFxuICAgICAgICBEYXRhU2VydmljZSxcbiAgICAgICAgU3RhdGVWYWxpZGF0aW9uU2VydmljZSxcbiAgICAgICAgQ29uZmlnVmFsaWRhdGlvblNlcnZpY2UsXG4gICAgICAgIENoZWNrQXV0aFNlcnZpY2UsXG4gICAgICAgIFJlc2V0QXV0aERhdGFTZXJ2aWNlLFxuICAgICAgICBJbXBsaWNpdEZsb3dDYWxsYmFja1NlcnZpY2UsXG4gICAgICAgIEhpc3RvcnlKd3RLZXlzQ2FsbGJhY2tIYW5kbGVyU2VydmljZSxcbiAgICAgICAgUmVzcG9uc2VUeXBlVmFsaWRhdGlvblNlcnZpY2UsXG4gICAgICAgIFVzZXJDYWxsYmFja0hhbmRsZXJTZXJ2aWNlLFxuICAgICAgICBTdGF0ZVZhbGlkYXRpb25DYWxsYmFja0hhbmRsZXJTZXJ2aWNlLFxuICAgICAgICBSZWZyZXNoU2Vzc2lvbkNhbGxiYWNrSGFuZGxlclNlcnZpY2UsXG4gICAgICAgIFJlZnJlc2hUb2tlbkNhbGxiYWNrSGFuZGxlclNlcnZpY2UsXG4gICAgICAgIENvZGVGbG93Q2FsbGJhY2tIYW5kbGVyU2VydmljZSxcbiAgICAgICAgSW1wbGljaXRGbG93Q2FsbGJhY2tIYW5kbGVyU2VydmljZSxcbiAgICAgICAgUGFyTG9naW5TZXJ2aWNlLFxuICAgICAgICBQb3BVcExvZ2luU2VydmljZSxcbiAgICAgICAgU3RhbmRhcmRMb2dpblNlcnZpY2UsXG4gICAgICAgIEF1dG9Mb2dpblNlcnZpY2UsXG4gICAgICAgIEpzcnNBc2lnblJlZHVjZWRTZXJ2aWNlLFxuICAgICAgICBDdXJyZW50VXJsU2VydmljZSxcbiAgICAgICAgQ2xvc2VzdE1hdGNoaW5nUm91dGVTZXJ2aWNlLFxuICAgICAgXSxcbiAgICB9O1xuICB9XG59XG4iXX0=
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXV0aC5tb2R1bGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wcm9qZWN0cy9hbmd1bGFyLWF1dGgtb2lkYy1jbGllbnQvc3JjL2xpYi9hdXRoLm1vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDL0MsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFDeEQsT0FBTyxFQUFFLGVBQWUsRUFBRSxjQUFjLEVBQXVCLFFBQVEsRUFBWSxNQUFNLGVBQWUsQ0FBQztBQUN6RyxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sb0JBQW9CLENBQUM7QUFDakQsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLHlCQUF5QixDQUFDO0FBQzFELE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLGlDQUFpQyxDQUFDO0FBQ25FLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLGlDQUFpQyxDQUFDO0FBQ25FLE9BQU8sRUFBRSwyQkFBMkIsRUFBRSxNQUFNLDJDQUEyQyxDQUFDO0FBQ3hGLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBQ3hELE9BQU8sRUFBRSx3QkFBd0IsRUFBRSxNQUFNLHVEQUF1RCxDQUFDO0FBQ2pHLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLGtEQUFrRCxDQUFDO0FBQ3hGLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLHlCQUF5QixDQUFDO0FBQzVELE9BQU8sRUFBRSxlQUFlLEVBQUUscUJBQXFCLEVBQUUsTUFBTSwrQkFBK0IsQ0FBQztBQUV2RixPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSxtQ0FBbUMsQ0FBQztBQUMxRSxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsTUFBTSwrQ0FBK0MsQ0FBQztBQUN4RixPQUFPLEVBQUUsOEJBQThCLEVBQUUsTUFBTSw4REFBOEQsQ0FBQztB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QixtQkFBbUI7Z0JBQ25CLGdCQUFnQjtnQkFDaEIsWUFBWTtnQkFDWixrQkFBa0I7Z0JBQ2xCLHVCQUF1QjtnQkFDdkIsV0FBVztnQkFDWCxhQUFhO2dCQUNiLGVBQWU7Z0JBQ2YsVUFBVTtnQkFDVixnQkFBZ0I7Z0JBQ2hCLG9CQUFvQjtnQkFDcEIseUJBQXlCO2dCQUN6QixrQkFBa0I7Z0JBQ2xCLGFBQWE7Z0JBQ2IsYUFBYTtnQkFDYixlQUFlO2dCQUNmLFlBQVk7Z0JBQ1osVUFBVTtnQkFDVix3QkFBd0I7Z0JBQ3hCLG9CQUFvQjtnQkFDcEIsV0FBVztnQkFDWCxzQkFBc0I7Z0JBQ3RCLHVCQUF1QjtnQkFDdkIsZ0JBQWdCO2dCQUNoQixvQkFBb0I7Z0JBQ3BCLDJCQUEyQjtnQkFDM0Isb0NBQW9DO2dCQUNwQyw2QkFBNkI7Z0JBQzdCLDBCQUEwQjtnQkFDMUIscUNBQXFDO2dCQUNyQyxvQ0FBb0M7Z0JBQ3BDLGtDQUFrQztnQkFDbEMsOEJBQThCO2dCQUM5QixrQ0FBa0M7Z0JBQ2xDLGVBQWU7Z0JBQ2YsaUJBQWlCO2dCQUNqQixvQkFBb0I7Z0JBQ3BCLGdCQUFnQjtnQkFDaEIsdUJBQXVCO2dCQUN2QixpQkFBaUI7Z0JBQ2pCLDJCQUEyQjtnQkFDM0IsNEJBQTRCO2dCQUM1QixxQkFBcUI7YUFDdEI7U0FDRixDQUFDO0lBQ0osQ0FBQzs7dUdBdEVVLFVBQVU7d0dBQVYsVUFBVSxZQUpYLFlBQVksRUFBRSxnQkFBZ0I7d0dBSTdCLFVBQVUsWUFKWixDQUFDLFlBQVksRUFBRSxnQkFBZ0IsQ0FBQzsyRkFJOUIsVUFBVTtrQkFMdEIsUUFBUTttQkFBQztvQkFDUixPQUFPLEVBQUUsQ0FBQyxZQUFZLEVBQUUsZ0JBQWdCLENBQUM7b0JBQ3pDLFlBQVksRUFBRSxFQUFFO29CQUNoQixPQUFPLEVBQUUsRUFBRTtpQkFDWiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQgeyBIdHRwQ2xpZW50TW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uL2h0dHAnO1xuaW1wb3J0IHsgQVBQX0lOSVRJQUxJWkVSLCBJbmplY3Rpb25Ub2tlbiwgTW9kdWxlV2l0aFByb3ZpZGVycywgTmdNb2R1bGUsIFByb3ZpZGVyIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBEYXRhU2VydmljZSB9IGZyb20gJy4vYXBpL2RhdGEuc2VydmljZSc7XG5pbXBvcnQgeyBIdHRwQmFzZVNlcnZpY2UgfSBmcm9tICcuL2FwaS9odHRwLWJhc2Uuc2VydmljZSc7XG5pbXBvcnQgeyBBdXRoU3RhdGVTZXJ2aWNlIH0gZnJvbSAnLi9hdXRoLXN0YXRlL2F1dGgtc3RhdGUuc2VydmljZSc7XG5pbXBvcnQgeyBBdXRvTG9naW5TZXJ2aWNlIH0gZnJvbSAnLi9hdXRvLWxvZ2luL2F1dG8tbG9naW4uc2VydmljZSc7XG5pbXBvcnQgeyBJbXBsaWNpdEZsb3dDYWxsYmFja1NlcnZpY2UgfSBmcm9tICcuL2NhbGxiYWNrL2ltcGxpY2l0LWZsb3ctY2FsbGJhY2suc2VydmljZSc7XG5pbXBvcnQgeyBDaGVja0F1dGhTZXJ2aWNlIH0gZnJvbSAnLi9jaGVjay1hdXRoLnNlcnZpY2UnO1xuaW1wb3J0IHsgQXV0aFdlbGxLbm93bkRhdGFTZXJ2aWNlIH0gZnJvbSAnLi9jb25maWcvYXV0aC13ZWxsLWtub3duL2F1dGgtd2VsbC1rbm93bi1kYXRhLnNlcnZpY2UnO1xuaW1wb3J0IHsgQXV0aFdlbGxLbm93blNlcnZpY2UgfSBmcm9tICcuL2NvbmZpZy9hdXRoLXdlbGwta25vd24vYXV0aC13ZWxsLWtub3duLnNlcnZpY2UnO1xuaW1wb3J0IHsgT2lkY0NvbmZpZ1NlcnZpY2UgfSBmcm9tICcuL2NvbmZpZy9jb25maWcuc2VydmljZSc7XG5pbXBvcnQgeyBTdHNDb25maWdMb2FkZXIsIFN0c0NvbmZpZ1N0YXRpY0xvYWRlciB9IGZyb20gJy4vY29uZmlnL2xvYWRlci9jb25maWctbG9hZGVyJztcbmltcG9ydCB7IE9wZW5JZENvbmZpZ3VyYXRpb24gfSBmcm9tICcuL2NvbmZpZy9vcGVuaWQtY29uZmlndXJhdGlvbic7XG5pbXBvcnQgeyBDb25maWd1cmF0aW9uUHJvdmlkZXIgfSBmcm9tICcuL2NvbmZpZy9wcm92aWRlci9jb25maWcucHJvdmlkZXInO1xuaW1wb3J0IHsgQ29uZmlnVmFsaWRhdGlvblNlcnZpY2UgfSBmcm9tICcuL2NvbmZpZy92YWxpZGF0aW9uL2NvbmZpZy12YWxpZGF0aW9uLnNlcnZpY2UnO1xuaW1wb3J0IHsgQ29kZUZsb3dDYWxsYmFja0hhbmRsZXJTZXJ2aWNlIH0gZnJvbSAnLi9mbG93cy9jYWxsYmFjay1oYW5kbGluZy9jb2RlLWZsb3ctY2FsbGJhY2staGFuZGxlci5zZXJ2aWNlJztcbmltcG9ydCB7IEhpc3RvcnlKd3RLZXlzQ2FsbGJhY2tIYW5kbGVyU2VydmljZSB9IGZyb20gJy4vZmxvd3MvY2FsbGJhY2staGFuZGxpbmcvaGlzdG9yeS1qd3Qta2V5cy1jYWxsYmFjay1oYW5kbGVyLnNlcnZpY2UnO1xuaW1wb3J0IHsgSW1wbGljaXRGbG93Q2FsbGJhY2tIYW5kbGVyU2VydmljZSB9IGZyb20gJy4vZmxvd3MvY2FsbGJhY2staGFuZGxpbmcvaW1wbGljaXQtZmxvdy1jYWxsYmFjay1oYW5kbGVyLnNlcnZpY2UnO1xuaW1wb3J0IHsgUmVmcmVzaFNlc3Npb25DYWxsYmFja0hhbmRsZXJTZXJ2aWNlIH0gZnJvbSAnLi9mbG93cy9jYWxsYmFjay1oYW5kbGluZy9yZWZyZXNoLXNlc3Npb24tY2FsbGJhY2staGFuZGxlci5zZXJ2aWNlJztcbmltcG9ydCB7IFJlZnJlc2hUb2tlbkNhbGxiYWNrSGFuZGxlclNlcnZpY2UgfSBmcm9tICcuL2Zsb3dzL2NhbGxiYWNrLWhhbmRsaW5nL3JlZnJlc2gtdG9rZW4tY2FsbGJhY2staGFuZGxlci5zZXJ2aWNlJztcbmltcG9ydCB7IFN0YXRlVmFsaWRhdGlvbkNhbGxiYWNrSGFuZGxlclNlcnZpY2UgfSBmcm9tICcuL2Zsb3dzL2NhbGxiYWNrLWhhbmRsaW5nL3N0YXRlLXZhbGlkYXRpb24tY2FsbGJhY2staGFuZGxlci5zZXJ2aWNlJztcbmltcG9ydCB7IFVzZXJDYWxsYmFja0hhbmRsZXJTZXJ2aWNlIH0gZnJvbSAnLi9mbG93cy9jYWxsYmFjay1oYW5kbGluZy91c2VyLWNhbGxiYWNrLWhhbmRsZXIuc2VydmljZSc7XG5pbXBvcnQgeyBGbG93c0RhdGFTZXJ2aWNlIH0gZnJvbSAnLi9mbG93cy9mbG93cy1kYXRhLnNlcnZpY2UnO1xuaW1wb3J0IHsgRmxvd3NTZXJ2aWNlIH0gZnJvbSAnLi9mbG93cy9mbG93cy5zZXJ2aWNlJztcbmltcG9ydCB7IFJhbmRvbVNlcnZpY2UgfSBmcm9tICcuL2Zsb3dzL3JhbmRvbS9yYW5kb20uc2VydmljZSc7XG5pbXBvcnQgeyBSZXNldEF1dGhEYXRhU2VydmljZSB9IGZyb20gJy4vZmxvd3MvcmVzZXQtYXV0aC1kYXRhLnNlcnZpY2UnO1xuaW1wb3J0IHsgU2lnbmluS2V5RGF0YVNlcnZpY2UgfSBmcm9tICcuL2Zsb3dzL3NpZ25pbi1rZXktZGF0YS5zZXJ2aWNlJztcbmltcG9ydCB7IENoZWNrU2Vzc2lvblNlcnZpY2UgfSBmcm9tICcuL2lmcmFtZS9jaGVjay1zZXNzaW9uLnNlcnZpY2UnO1xuaW1wb3J0IHsgSUZyYW1lU2VydmljZSB9IGZyb20gJy4vaWZyYW1lL2V4aXN0aW5nLWlmcmFtZS5zZXJ2aWNlJztcbmltcG9ydCB7IFNpbGVudFJlbmV3U2VydmljZSB9IGZyb20gJy4vaWZyYW1lL3NpbGVudC1yZW5ldy5zZXJ2aWNlJztcbmltcG9ydCB7IENsb3Nlc3RNYXRjaGluZ1JvdXRlU2VydmljZSB9IGZyb20gJy4vaW50ZXJjZXB0b3IvY2xvc2VzdC1tYXRjaGluZy1yb3V0ZS5zZXJ2aWNlJztcbmltcG9ydCB7IExvZ2dlclNlcnZpY2UgfSBmcm9tICcuL2xvZ2dpbmcvbG9nZ2VyLnNlcnZpY2UnO1xuaW1wb3J0IHsgTG9naW5TZXJ2aWNlIH0gZnJvbSAnLi9sb2dpbi9sb2dpbi5zZXJ2aWNlJztcbmltcG9ydCB7IFBhckxvZ2luU2VydmljZSB9IGZyb20gJy4vbG9naW4vcGFyL3Bhci1sb2dpbi5zZXJ2aWNlJztcbmltcG9ydCB7IFBhclNlcnZpY2UgfSBmcm9tICcuL2xvZ2luL3Bhci9wYXIuc2VydmljZSc7XG5pbXBvcnQgeyBQb3BVcExvZ2luU2VydmljZSB9IGZyb20gJy4vbG9naW4vcG9wdXAvcG9wdXAtbG9naW4uc2VydmljZSc7XG5pbXBvcnQgeyBSZXNwb25zZVR5cGVWYWxpZGF0aW9uU2VydmljZSB9IGZyb20gJy4vbG9naW4vcmVzcG9uc2UtdHlwZS12YWxpZGF0aW9uL3Jlc3BvbnNlLXR5cGUtdmFsaWRhdGlvbi5zZXJ2aWNlJztcbmltcG9ydCB7IFN0YW5kYXJkTG9naW5TZXJ2aWNlIH0gZnJvbSAnLi9sb2dpbi9zdGFuZGFyZC9zdGFuZGFyZC1sb2dpbi5zZXJ2aWNlJztcbmltcG9ydCB7IExvZ29mZlJldm9jYXRpb25TZXJ2aWNlIH0gZnJvbSAnLi9sb2dvZmYtcmV2b2tlL2xvZ29mZi1yZXZvY2F0aW9uLnNlcnZpY2UnO1xuaW1wb3J0IHsgT2lkY1NlY3VyaXR5U2VydmljZSB9IGZyb20gJy4vb2lkYy5zZWN1cml0eS5zZXJ2aWNlJztcbmltcG9ydCB7IFB1YmxpY0V2ZW50c1NlcnZpY2UgfSBmcm9tICcuL3B1YmxpYy1ldmVudHMvcHVibGljLWV2ZW50cy5zZXJ2aWNlJztcbmltcG9ydCB7IEJyb3dzZXJTdG9yYWdlU2VydmljZSB9IGZyb20gJy4vc3RvcmFnZS9icm93c2VyLXN0b3JhZ2Uuc2VydmljZSc7XG5pbXBvcnQgeyBEZWZhdWx0U2Vzc2lvblN0b3JhZ2VTZXJ2aWNlIH0gZnJvbSAnLi9zdG9yYWdlL2RlZmF1bHQtc2Vzc2lvbnN0b3JhZ2Uuc2VydmljZSc7XG5pbXBvcnQgeyBTdG9yYWdlUGVyc2lzdGVuY2VTZXJ2aWNlIH0gZnJvbSAnLi9zdG9yYWdlL3N0b3JhZ2UtcGVyc2lzdGVuY2Uuc2VydmljZSc7XG5pbXBvcnQgeyBVc2VyU2VydmljZSB9IGZyb20gJy4vdXNlci1kYXRhL3VzZXIuc2VydmljZSc7XG5pbXBvcnQgeyBFcXVhbGl0eVNlcnZpY2UgfSBmcm9tICcuL3V0aWxzL2VxdWFsaXR5L2VxdWFsaXR5LnNlcnZpY2UnO1xuaW1wb3J0IHsgRmxvd0hlbHBlciB9IGZyb20gJy4vdXRpbHMvZmxvd0hlbHBlci9mbG93LWhlbHBlci5zZXJ2aWNlJztcbmltcG9ydCB7IFBsYXRmb3JtUHJvdmlkZXIgfSBmcm9tICcuL3V0aWxzL3BsYXRmb3JtLXByb3ZpZGVyL3BsYXRmb3JtLnByb3ZpZGVyJztcbmltcG9ydCB7IFRva2VuSGVscGVyU2VydmljZSB9IGZyb20gJy4vdXRpbHMvdG9rZW5IZWxwZXIvdG9rZW4taGVscGVyLnNlcnZpY2UnO1xuaW1wb3J0IHsgQ3VycmVudFVybFNlcnZpY2UgfSBmcm9tICcuL3V0aWxzL3VybC9jdXJyZW50LXVybC5zZXJ2aWNlJztcbmltcG9ydCB7IFVybFNlcnZpY2UgfSBmcm9tICcuL3V0aWxzL3VybC91cmwuc2VydmljZSc7XG5pbXBvcnQgeyBKc3JzQXNpZ25SZWR1Y2VkU2VydmljZSB9IGZyb20gJy4vdmFsaWRhdGlvbi9qc3JzYXNpZ24tcmVkdWNlZC5zZXJ2aWNlJztcbmltcG9ydCB7IFN0YXRlVmFsaWRhdGlvblNlcnZpY2UgfSBmcm9tICcuL3ZhbGlkYXRpb24vc3RhdGUtdmFsaWRhdGlvbi5zZXJ2aWNlJztcbmltcG9ydCB7IFRva2VuVmFsaWRhdGlvblNlcnZpY2UgfSBmcm9tICcuL3ZhbGlkYXRpb24vdG9rZW4tdmFsaWRhdGlvbi5zZXJ2aWNlJztcblxuZXhwb3J0IGludGVyZmFjZSBQYXNzZWRJbml0aWFsQ29uZmlnIHtcbiAgY29uZmlnPzogT3BlbklkQ29uZmlndXJhdGlvbiB8IE9wZW5JZENvbmZpZ3VyYXRpb25bXTtcbiAgbG9hZGVyPzogUHJvdmlkZXI7XG4gIHN0b3JhZ2U/OiBhbnk7XG59XG5cbi8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAdHlwZXNjcmlwdC1lc2xpbnQvZXhwbGljaXQtZnVuY3Rpb24tcmV0dXJuLXR5cGVcbmV4cG9ydCBmdW5jdGlvbiBjcmVhdGVTdGF0aWNMb2FkZXIocGFzc2VkQ29uZmlnOiBQYXNzZWRJbml0aWFsQ29uZmlnKSB7XG4gIHJldHVybiBuZXcgU3RzQ29uZmlnU3RhdGljTG9hZGVyKHBhc3NlZENvbmZpZy5jb25maWcpO1xufVxuXG4vLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQHR5cGVzY3JpcHQtZXNsaW50L2V4cGxpY2l0LWZ1bmN0aW9uLXJldHVybi10eXBlXG5leHBvcnQgZnVuY3Rpb24gY29uZmlndXJhdGlvblByb3ZpZGVyRmFjdG9yeShvaWRjQ29uZmlnU2VydmljZTogT2lkY0NvbmZpZ1NlcnZpY2UsIGxvYWRlcjogU3RzQ29uZmlnTG9hZGVyKSB7XG4gIGNvbnN0IGFsbExvYWRQcm9taXNlcyA9IFByb21pc2UuYWxsKGxvYWRlci5sb2FkQ29uZmlncygpKTtcbiAgY29uc3QgZm46ICgpID0+IFByb21pc2U8T3BlbklkQ29uZmlndXJhdGlvbltdPiA9ICgpID0+IGFsbExvYWRQcm9taXNlcy50aGVuKChjb25maWdzKSA9PiBvaWRjQ29uZmlnU2VydmljZS53aXRoQ29uZmlncyhjb25maWdzKSk7XG5cbiAgcmV0dXJuIGZuO1xufVxuXG5leHBvcnQgY29uc3QgUEFTU0VEX0NPTkZJRyA9IG5ldyBJbmplY3Rpb25Ub2tlbjxQYXNzZWRJbml0aWFsQ29uZmlnPignUEFTU0VEX0NPTkZJRycpO1xuXG5ATmdNb2R1bGUoe1xuICBpbXBvcnRzOiBbQ29tbW9uTW9kdWxlLCBIdHRwQ2xpZW50TW9kdWxlXSxcbiAgZGVjbGFyYXRpb25zOiBbXSxcbiAgZXhwb3J0czogW10sXG59KVxuZXhwb3J0IGNsYXNzIEF1dGhNb2R1bGUge1xuICBzdGF0aWMgZm9yUm9vdChwYXNzZWRDb25maWc6IFBhc3NlZEluaXRpYWxDb25maWcpOiBNb2R1bGVXaXRoUHJvdmlkZXJzPEF1dGhNb2R1bGU+IHtcbiAgICByZXR1cm4ge1xuICAgICAgbmdNb2R1bGU6IEF1dGhNb2R1bGUsXG4gICAgICBwcm92aWRlcnM6IFtcbiAgICAgICAgLy8gTWFrZSB0aGUgUEFTU0VEX0NPTkZJRyBhdmFpbGFibGUgdGhyb3VnaCBpbmplY3Rpb25cbiAgICAgICAgeyBwcm92aWRlOiBQQVNTRURfQ09ORklHLCB1c2VWYWx1ZTogcGFzc2VkQ29uZmlnIH0sXG5cbiAgICAgICAgLy8gQ3JlYXRlIHRoZSBsb2FkZXI6IEVpdGhlciB0aGUgb25lIGdldHRpbmcgcGFzc2VkIG9yIGEgc3RhdGljIG9uZVxuICAgICAgICBwYXNzZWRDb25maWc/LmxvYWRlciB8fCB7IHByb3ZpZGU6IFN0c0NvbmZpZ0xvYWRlciwgdXNlRmFjdG9yeTogY3JlYXRlU3RhdGljTG9hZGVyLCBkZXBzOiBbUEFTU0VEX0NPTkZJR10gfSxcblxuICAgICAgICAvLyBMb2FkIHRoZSBjb25maWcgd2hlbiB0aGUgYXBwIHN0YXJ0c1xuICAgICAgICB7XG4gICAgICAgICAgcHJvdmlkZTogQVBQX0lOSVRJQUxJWkVSLFxuICAgICAgICAgIG11bHRpOiB0cnVlLFxuICAgICAgICAgIGRlcHM6IFtPaWRjQ29uZmlnU2VydmljZSwgU3RzQ29uZmlnTG9hZGVyLCBQQVNTRURfQ09ORklHXSxcbiAgICAgICAgICB1c2VGYWN0b3J5OiBjb25maWd1cmF0aW9uUHJvdmlkZXJGYWN0b3J5LFxuICAgICAgICB9LFxuICAgICAgICBPaWRjQ29uZmlnU2VydmljZSxcbiAgICAgICAgUHVibGljRXZlbnRzU2VydmljZSxcbiAgICAgICAgRmxvd0hlbHBlcixcbiAgICAgICAgQ29uZmlndXJhdGlvblByb3ZpZGVyLFxuICAgICAgICBPaWRjU2VjdXJpdHlTZXJ2aWNlLFxuICAgICAgICBUb2tlblZhbGlkYXRpb25TZXJ2aWNlLFxuICAgICAgICBQbGF0Zm9ybVByb3ZpZGVyLFxuICAgICAgICBDaGVja1Nlc3Npb25TZXJ2aWNlLFxuICAgICAgICBGbG93c0RhdGFTZXJ2aWNlLFxuICAgICAgICBGbG93c1NlcnZpY2UsXG4gICAgICAgIFNpbGVudFJlbmV3U2VydmljZSxcbiAgICAgICAgTG9nb2ZmUmV2b2NhdGlvblNlcnZpY2UsXG4gICAgICAgIFVzZXJTZXJ2aWNlLFxuICAgICAgICBSYW5kb21TZXJ2aWNlLFxuICAgICAgICBIdHRwQmFzZVNlcnZpY2UsXG4gICAgICAgIFVybFNlcnZpY2UsXG4gICAgICAgIEF1dGhTdGF0ZVNlcnZpY2UsXG4gICAgICAgIFNpZ25pbktleURhdGFTZXJ2aWNlLFxuICAgICAgICBTdG9yYWdlUGVyc2lzdGVuY2VTZXJ2aWNlLFxuICAgICAgICBUb2tlbkhlbHBlclNlcnZpY2UsXG4gICAgICAgIExvZ2dlclNlcnZpY2UsXG4gICAgICAgIElGcmFtZVNlcnZpY2UsXG4gICAgICAgIEVxdWFsaXR5U2VydmljZSxcbiAgICAgICAgTG9naW5TZXJ2aWNlLFxuICAgICAgICBQYXJTZXJ2aWNlLFxuICAgICAgICBBdXRoV2VsbEtub3duRGF0YVNlcnZpY2UsXG4gICAgICAgIEF1dGhXZWxsS25vd25TZXJ2aWNlLFxuICAgICAgICBEYXRhU2VydmljZSxcbiAgICAgICAgU3RhdGVWYWxpZGF0aW9uU2VydmljZSxcbiAgICAgICAgQ29uZmlnVmFsaWRhdGlvblNlcnZpY2UsXG4gICAgICAgIENoZWNrQXV0aFNlcnZpY2UsXG4gICAgICAgIFJlc2V0QXV0aERhdGFTZXJ2aWNlLFxuICAgICAgICBJbXBsaWNpdEZsb3dDYWxsYmFja1NlcnZpY2UsXG4gICAgICAgIEhpc3RvcnlKd3RLZXlzQ2FsbGJhY2tIYW5kbGVyU2VydmljZSxcbiAgICAgICAgUmVzcG9uc2VUeXBlVmFsaWRhdGlvblNlcnZpY2UsXG4gICAgICAgIFVzZXJDYWxsYmFja0hhbmRsZXJTZXJ2aWNlLFxuICAgICAgICBTdGF0ZVZhbGlkYXRpb25DYWxsYmFja0hhbmRsZXJTZXJ2aWNlLFxuICAgICAgICBSZWZyZXNoU2Vzc2lvbkNhbGxiYWNrSGFuZGxlclNlcnZpY2UsXG4gICAgICAgIFJlZnJlc2hUb2tlbkNhbGxiYWNrSGFuZGxlclNlcnZpY2UsXG4gICAgICAgIENvZGVGbG93Q2FsbGJhY2tIYW5kbGVyU2VydmljZSxcbiAgICAgICAgSW1wbGljaXRGbG93Q2FsbGJhY2tIYW5kbGVyU2VydmljZSxcbiAgICAgICAgUGFyTG9naW5TZXJ2aWNlLFxuICAgICAgICBQb3BVcExvZ2luU2VydmljZSxcbiAgICAgICAgU3RhbmRhcmRMb2dpblNlcnZpY2UsXG4gICAgICAgIEF1dG9Mb2dpblNlcnZpY2UsXG4gICAgICAgIEpzcnNBc2lnblJlZHVjZWRTZXJ2aWNlLFxuICAgICAgICBDdXJyZW50VXJsU2VydmljZSxcbiAgICAgICAgQ2xvc2VzdE1hdGNoaW5nUm91dGVTZXJ2aWNlLFxuICAgICAgICBEZWZhdWx0U2Vzc2lvblN0b3JhZ2VTZXJ2aWNlLFxuICAgICAgICBCcm93c2VyU3RvcmFnZVNlcnZpY2UsXG4gICAgICBdLFxuICAgIH07XG4gIH1cbn1cbiJdfQ==

@@ -19,5 +19,5 @@ import { Injectable } from '@angular/core';

/**
* Saves the redirect url to storage.
* Saves the redirect URL to storage.
*
* @param url The redirect url to save.
* @param url The redirect URL to save.
*/

@@ -28,3 +28,3 @@ saveRedirectRoute(configId, url) {

/**
* Gets the stored redirect route from storage.
* Gets the stored redirect URL from storage.
*/

@@ -35,3 +35,3 @@ getStoredRedirectRoute(configId) {

/**
* Removes the redirect url from storage.
* Removes the redirect URL from storage.
*/

@@ -47,2 +47,2 @@ deleteStoredRedirectRoute(configId) {

}], ctorParameters: function () { return [{ type: i1.StoragePersistenceService }, { type: i2.Router }]; } });
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXV0by1sb2dpbi5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYW5ndWxhci1hdXRoLW9pZGMtY2xpZW50L3NyYy9saWIvYXV0by1sb2dpbi9hdXRvLWxvZ2luLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQzs7OztBQUkzQyxNQUFNLFdBQVcsR0FBRyxVQUFVLENBQUM7QUFHL0IsTUFBTSxPQUFPLGdCQUFnQjtJQUMzQixZQUE2QixjQUF5QyxFQUFtQixNQUFjO1FBQTFFLG1CQUFjLEdBQWQsY0FBYyxDQUEyQjtRQUFtQixXQUFNLEdBQU4sTUFBTSxDQUFRO0lBQUcsQ0FBQztJQUUzRyxrQ0FBa0MsQ0FBQyxRQUFnQjtRQUNqRCxNQUFNLHFCQUFxQixHQUFHLElBQUksQ0FBQyxzQkFBc0IsQ0FBQyxRQUFRLENBQUMsQ0FBQztRQUVwRSxJQUFJLHFCQUFxQixFQUFFO1lBQ3pCLElBQUksQ0FBQyx5QkFBeUIsQ0FBQyxRQUFRLENBQUMsQ0FBQztZQUN6QyxJQUFJLENBQUMsTUFBTSxDQUFDLGFBQWEsQ0FBQyxxQkFBcUIsQ0FBQyxDQUFDO1NBQ2xEO0lBQ0gsQ0FBQztJQUVEOzs7O09BSUc7SUFDSCxpQkFBaUIsQ0FBQyxRQUFnQixFQUFFLEdBQVc7UUFDN0MsSUFBSSxDQUFDLGNBQWMsQ0FBQyxLQUFLLENBQUMsV0FBVyxFQUFFLEdBQUcsRUFBRSxRQUFRLENBQUMsQ0FBQztJQUN4RCxDQUFDO0lBRUQ7O09BRUc7SUFDSyxzQkFBc0IsQ0FBQyxRQUFnQjtRQUM3QyxPQUFPLElBQUksQ0FBQyxjQUFjLENBQUMsSUFBSSxDQUFDLFdBQVcsRUFBRSxRQUFRLENBQUMsQ0FBQztJQUN6RCxDQUFDO0lBRUQ7O09BRUc7SUFDSyx5QkFBeUIsQ0FBQyxRQUFnQjtRQUNoRCxJQUFJLENBQUMsY0FBYyxDQUFDLE1BQU0sQ0FBQyxXQUFXLEVBQUUsUUFBUSxDQUFDLENBQUM7SUFDcEQsQ0FBQzs7NkdBakNVLGdCQUFnQjtpSEFBaEIsZ0JBQWdCOzJGQUFoQixnQkFBZ0I7a0JBRDVCLFVBQVUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBSb3V0ZXIgfSBmcm9tICdAYW5ndWxhci9yb3V0ZXInO1xuaW1wb3J0IHsgU3RvcmFnZVBlcnNpc3RlbmNlU2VydmljZSB9IGZyb20gJy4uL3N0b3JhZ2Uvc3RvcmFnZS1wZXJzaXN0ZW5jZS5zZXJ2aWNlJztcblxuY29uc3QgU1RPUkFHRV9LRVkgPSAncmVkaXJlY3QnO1xuXG5ASW5qZWN0YWJsZSgpXG5leHBvcnQgY2xhc3MgQXV0b0xvZ2luU2VydmljZSB7XG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgcmVhZG9ubHkgc3RvcmFnZVNlcnZpY2U6IFN0b3JhZ2VQZXJzaXN0ZW5jZVNlcnZpY2UsIHByaXZhdGUgcmVhZG9ubHkgcm91dGVyOiBSb3V0ZXIpIHt9XG5cbiAgY2hlY2tTYXZlZFJlZGlyZWN0Um91dGVBbmROYXZpZ2F0ZShjb25maWdJZDogc3RyaW5nKTogdm9pZCB7XG4gICAgY29uc3Qgc2F2ZWRSb3V0ZUZvclJlZGlyZWN0ID0gdGhpcy5nZXRTdG9yZWRSZWRpcmVjdFJvdXRlKGNvbmZpZ0lkKTtcblxuICAgIGlmIChzYXZlZFJvdXRlRm9yUmVkaXJlY3QpIHtcbiAgICAgIHRoaXMuZGVsZXRlU3RvcmVkUmVkaXJlY3RSb3V0ZShjb25maWdJZCk7XG4gICAgICB0aGlzLnJvdXRlci5uYXZpZ2F0ZUJ5VXJsKHNhdmVkUm91dGVGb3JSZWRpcmVjdCk7XG4gICAgfVxuICB9XG5cbiAgLyoqXG4gICAqIFNhdmVzIHRoZSByZWRpcmVjdCB1cmwgdG8gc3RvcmFnZS5cbiAgICpcbiAgICogQHBhcmFtIHVybCBUaGUgcmVkaXJlY3QgdXJsIHRvIHNhdmUuXG4gICAqL1xuICBzYXZlUmVkaXJlY3RSb3V0ZShjb25maWdJZDogc3RyaW5nLCB1cmw6IHN0cmluZyk6IHZvaWQge1xuICAgIHRoaXMuc3RvcmFnZVNlcnZpY2Uud3JpdGUoU1RPUkFHRV9LRVksIHVybCwgY29uZmlnSWQpO1xuICB9XG5cbiAgLyoqXG4gICAqIEdldHMgdGhlIHN0b3JlZCByZWRpcmVjdCByb3V0ZSBmcm9tIHN0b3JhZ2UuXG4gICAqL1xuICBwcml2YXRlIGdldFN0b3JlZFJlZGlyZWN0Um91dGUoY29uZmlnSWQ6IHN0cmluZyk6IHN0cmluZyB7XG4gICAgcmV0dXJuIHRoaXMuc3RvcmFnZVNlcnZpY2UucmVhZChTVE9SQUdFX0tFWSwgY29uZmlnSWQpO1xuICB9XG5cbiAgLyoqXG4gICAqIFJlbW92ZXMgdGhlIHJlZGlyZWN0IHVybCBmcm9tIHN0b3JhZ2UuXG4gICAqL1xuICBwcml2YXRlIGRlbGV0ZVN0b3JlZFJlZGlyZWN0Um91dGUoY29uZmlnSWQ6IHN0cmluZyk6IHZvaWQge1xuICAgIHRoaXMuc3RvcmFnZVNlcnZpY2UucmVtb3ZlKFNUT1JBR0VfS0VZLCBjb25maWdJZCk7XG4gIH1cbn1cbiJdfQ==
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXV0by1sb2dpbi5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYW5ndWxhci1hdXRoLW9pZGMtY2xpZW50L3NyYy9saWIvYXV0by1sb2dpbi9hdXRvLWxvZ2luLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQzs7OztBQUkzQyxNQUFNLFdBQVcsR0FBRyxVQUFVLENBQUM7QUFHL0IsTUFBTSxPQUFPLGdCQUFnQjtJQUMzQixZQUE2QixjQUF5QyxFQUFtQixNQUFjO1FBQTFFLG1CQUFjLEdBQWQsY0FBYyxDQUEyQjtRQUFtQixXQUFNLEdBQU4sTUFBTSxDQUFRO0lBQUcsQ0FBQztJQUUzRyxrQ0FBa0MsQ0FBQyxRQUFnQjtRQUNqRCxNQUFNLHFCQUFxQixHQUFHLElBQUksQ0FBQyxzQkFBc0IsQ0FBQyxRQUFRLENBQUMsQ0FBQztRQUVwRSxJQUFJLHFCQUFxQixFQUFFO1lBQ3pCLElBQUksQ0FBQyx5QkFBeUIsQ0FBQyxRQUFRLENBQUMsQ0FBQztZQUN6QyxJQUFJLENBQUMsTUFBTSxDQUFDLGFBQWEsQ0FBQyxxQkFBcUIsQ0FBQyxDQUFDO1NBQ2xEO0lBQ0gsQ0FBQztJQUVEOzs7O09BSUc7SUFDSCxpQkFBaUIsQ0FBQyxRQUFnQixFQUFFLEdBQVc7UUFDN0MsSUFBSSxDQUFDLGNBQWMsQ0FBQyxLQUFLLENBQUMsV0FBVyxFQUFFLEdBQUcsRUFBRSxRQUFRLENBQUMsQ0FBQztJQUN4RCxDQUFDO0lBRUQ7O09BRUc7SUFDSyxzQkFBc0IsQ0FBQyxRQUFnQjtRQUM3QyxPQUFPLElBQUksQ0FBQyxjQUFjLENBQUMsSUFBSSxDQUFDLFdBQVcsRUFBRSxRQUFRLENBQUMsQ0FBQztJQUN6RCxDQUFDO0lBRUQ7O09BRUc7SUFDSyx5QkFBeUIsQ0FBQyxRQUFnQjtRQUNoRCxJQUFJLENBQUMsY0FBYyxDQUFDLE1BQU0sQ0FBQyxXQUFXLEVBQUUsUUFBUSxDQUFDLENBQUM7SUFDcEQsQ0FBQzs7NkdBakNVLGdCQUFnQjtpSEFBaEIsZ0JBQWdCOzJGQUFoQixnQkFBZ0I7a0JBRDVCLFVBQVUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBSb3V0ZXIgfSBmcm9tICdAYW5ndWxhci9yb3V0ZXInO1xuaW1wb3J0IHsgU3RvcmFnZVBlcnNpc3RlbmNlU2VydmljZSB9IGZyb20gJy4uL3N0b3JhZ2Uvc3RvcmFnZS1wZXJzaXN0ZW5jZS5zZXJ2aWNlJztcblxuY29uc3QgU1RPUkFHRV9LRVkgPSAncmVkaXJlY3QnO1xuXG5ASW5qZWN0YWJsZSgpXG5leHBvcnQgY2xhc3MgQXV0b0xvZ2luU2VydmljZSB7XG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgcmVhZG9ubHkgc3RvcmFnZVNlcnZpY2U6IFN0b3JhZ2VQZXJzaXN0ZW5jZVNlcnZpY2UsIHByaXZhdGUgcmVhZG9ubHkgcm91dGVyOiBSb3V0ZXIpIHt9XG5cbiAgY2hlY2tTYXZlZFJlZGlyZWN0Um91dGVBbmROYXZpZ2F0ZShjb25maWdJZDogc3RyaW5nKTogdm9pZCB7XG4gICAgY29uc3Qgc2F2ZWRSb3V0ZUZvclJlZGlyZWN0ID0gdGhpcy5nZXRTdG9yZWRSZWRpcmVjdFJvdXRlKGNvbmZpZ0lkKTtcblxuICAgIGlmIChzYXZlZFJvdXRlRm9yUmVkaXJlY3QpIHtcbiAgICAgIHRoaXMuZGVsZXRlU3RvcmVkUmVkaXJlY3RSb3V0ZShjb25maWdJZCk7XG4gICAgICB0aGlzLnJvdXRlci5uYXZpZ2F0ZUJ5VXJsKHNhdmVkUm91dGVGb3JSZWRpcmVjdCk7XG4gICAgfVxuICB9XG5cbiAgLyoqXG4gICAqIFNhdmVzIHRoZSByZWRpcmVjdCBVUkwgdG8gc3RvcmFnZS5cbiAgICpcbiAgICogQHBhcmFtIHVybCBUaGUgcmVkaXJlY3QgVVJMIHRvIHNhdmUuXG4gICAqL1xuICBzYXZlUmVkaXJlY3RSb3V0ZShjb25maWdJZDogc3RyaW5nLCB1cmw6IHN0cmluZyk6IHZvaWQge1xuICAgIHRoaXMuc3RvcmFnZVNlcnZpY2Uud3JpdGUoU1RPUkFHRV9LRVksIHVybCwgY29uZmlnSWQpO1xuICB9XG5cbiAgLyoqXG4gICAqIEdldHMgdGhlIHN0b3JlZCByZWRpcmVjdCBVUkwgZnJvbSBzdG9yYWdlLlxuICAgKi9cbiAgcHJpdmF0ZSBnZXRTdG9yZWRSZWRpcmVjdFJvdXRlKGNvbmZpZ0lkOiBzdHJpbmcpOiBzdHJpbmcge1xuICAgIHJldHVybiB0aGlzLnN0b3JhZ2VTZXJ2aWNlLnJlYWQoU1RPUkFHRV9LRVksIGNvbmZpZ0lkKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBSZW1vdmVzIHRoZSByZWRpcmVjdCBVUkwgZnJvbSBzdG9yYWdlLlxuICAgKi9cbiAgcHJpdmF0ZSBkZWxldGVTdG9yZWRSZWRpcmVjdFJvdXRlKGNvbmZpZ0lkOiBzdHJpbmcpOiB2b2lkIHtcbiAgICB0aGlzLnN0b3JhZ2VTZXJ2aWNlLnJlbW92ZShTVE9SQUdFX0tFWSwgY29uZmlnSWQpO1xuICB9XG59XG4iXX0=

@@ -14,4 +14,5 @@ import { Injectable } from '@angular/core';

import * as i7 from "../utils/platform-provider/platform.provider";
import * as i8 from "./../storage/default-sessionstorage.service";
export class OidcConfigService {
constructor(loggerService, publicEventsService, configurationProvider, authWellKnownService, storagePersistenceService, configValidationService, platformProvider) {
constructor(loggerService, publicEventsService, configurationProvider, authWellKnownService, storagePersistenceService, configValidationService, platformProvider, defaultSessionStorageService) {
this.loggerService = loggerService;

@@ -24,2 +25,3 @@ this.publicEventsService = publicEventsService;

this.platformProvider = platformProvider;
this.defaultSessionStorageService = defaultSessionStorageService;
}

@@ -89,2 +91,3 @@ withConfigs(passedConfigs) {

this.setSpecialCases(openIdConfigurationInternal);
this.setStorage(openIdConfigurationInternal);
return openIdConfigurationInternal;

@@ -100,8 +103,22 @@ }

}
setStorage(currentConfig) {
if (currentConfig.storage) {
return;
}
if (this.hasBrowserStorage()) {
currentConfig.storage = this.defaultSessionStorageService;
}
else {
currentConfig.storage = null;
}
}
hasBrowserStorage() {
return typeof navigator !== 'undefined' && navigator.cookieEnabled && typeof Storage !== 'undefined';
}
}
OidcConfigService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.0.4", ngImport: i0, type: OidcConfigService, deps: [{ token: i1.LoggerService }, { token: i2.PublicEventsService }, { token: i3.ConfigurationProvider }, { token: i4.AuthWellKnownService }, { token: i5.StoragePersistenceService }, { token: i6.ConfigValidationService }, { token: i7.PlatformProvider }], target: i0.ɵɵFactoryTarget.Injectable });
OidcConfigService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.0.4", ngImport: i0, type: OidcConfigService, deps: [{ token: i1.LoggerService }, { token: i2.PublicEventsService }, { token: i3.ConfigurationProvider }, { token: i4.AuthWellKnownService }, { token: i5.StoragePersistenceService }, { token: i6.ConfigValidationService }, { token: i7.PlatformProvider }, { token: i8.DefaultSessionStorageService }], target: i0.ɵɵFactoryTarget.Injectable });
OidcConfigService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.0.4", ngImport: i0, type: OidcConfigService });
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.0.4", ngImport: i0, type: OidcConfigService, decorators: [{
type: Injectable
}], ctorParameters: function () { return [{ type: i1.LoggerService }, { type: i2.PublicEventsService }, { type: i3.ConfigurationProvider }, { type: i4.AuthWellKnownService }, { type: i5.StoragePersistenceService }, { type: i6.ConfigValidationService }, { type: i7.PlatformProvider }]; } });
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29uZmlnLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9hbmd1bGFyLWF1dGgtb2lkYy1jbGllbnQvc3JjL2xpYi9jb25maWcvY29uZmlnLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUMzQyxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQ2xDLE9BQU8sRUFBRSxVQUFVLEVBQUUsR0FBRyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFFakQsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLDhCQUE4QixDQUFDO0FBSzFELE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQzs7Ozs7Ozs7O0FBTWxELE1BQU0sT0FBTyxpQkFBaUI7SUFDNUIsWUFDVSxhQUE0QixFQUM1QixtQkFBd0MsRUFDeEMscUJBQTRDLEVBQzVDLG9CQUEwQyxFQUMxQyx5QkFBb0QsRUFDcEQsdUJBQWdELEVBQ2hELGdCQUFrQztRQU5sQyxrQkFBYSxHQUFiLGFBQWEsQ0FBZTtRQUM1Qix3QkFBbUIsR0FBbkIsbUJBQW1CLENBQXFCO1FBQ3hDLDBCQUFxQixHQUFyQixxQkFBcUIsQ0FBdUI7UUFDNUMseUJBQW9CLEdBQXBCLG9CQUFvQixDQUFzQjtRQUMxQyw4QkFBeUIsR0FBekIseUJBQXlCLENBQTJCO1FBQ3BELDRCQUF1QixHQUF2Qix1QkFBdUIsQ0FBeUI7UUFDaEQscUJBQWdCLEdBQWhCLGdCQUFnQixDQUFrQjtJQUN6QyxDQUFDO0lBRUosV0FBVyxDQUFDLGFBQW9DO1FBQzlDLElBQUksQ0FBQyxJQUFJLENBQUMsdUJBQXVCLENBQUMsZUFBZSxDQUFDLGFBQWEsQ0FBQyxFQUFFO1lBQ2hFLE9BQU8sT0FBTyxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsQ0FBQztTQUM5QjtRQUVELElBQUksQ0FB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JztcbmltcG9ydCB7IHRocm93RXJyb3IgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IGNhdGNoRXJyb3IsIHRhcCB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcbmltcG9ydCB7IExvZ2dlclNlcnZpY2UgfSBmcm9tICcuLi9sb2dnaW5nL2xvZ2dlci5zZXJ2aWNlJztcbmltcG9ydCB7IEV2ZW50VHlwZXMgfSBmcm9tICcuLi9wdWJsaWMtZXZlbnRzL2V2ZW50LXR5cGVzJztcbmltcG9ydCB7IFB1YmxpY0V2ZW50c1NlcnZpY2UgfSBmcm9tICcuLi9wdWJsaWMtZXZlbnRzL3B1YmxpYy1ldmVudHMuc2VydmljZSc7XG5pbXBvcnQgeyBTdG9yYWdlUGVyc2lzdGVuY2VTZXJ2aWNlIH0gZnJvbSAnLi4vc3RvcmFnZS9zdG9yYWdlLXBlcnNpc3RlbmNlLnNlcnZpY2UnO1xuaW1wb3J0IHsgUGxhdGZvcm1Qcm92aWRlciB9IGZyb20gJy4uL3V0aWxzL3BsYXRmb3JtLXByb3ZpZGVyL3BsYXRmb3JtLnByb3ZpZGVyJztcbmltcG9ydCB7IEF1dGhXZWxsS25vd25TZXJ2aWNlIH0gZnJvbSAnLi9hdXRoLXdlbGwta25vd24vYXV0aC13ZWxsLWtub3duLnNlcnZpY2UnO1xuaW1wb3J0IHsgREVGQVVMVF9DT05GSUcgfSBmcm9tICcuL2RlZmF1bHQtY29uZmlnJztcbmltcG9ydCB7IE9wZW5JZENvbmZpZ3VyYXRpb24gfSBmcm9tICcuL29wZW5pZC1jb25maWd1cmF0aW9uJztcbmltcG9ydCB7IENvbmZpZ3VyYXRpb25Qcm92aWRlciB9IGZyb20gJy4vcHJvdmlkZXIvY29uZmlnLnByb3ZpZGVyJztcbmltcG9ydCB7IENvbmZpZ1ZhbGlkYXRpb25TZXJ2aWNlIH0gZnJvbSAnLi92YWxpZGF0aW9uL2NvbmZpZy12YWxpZGF0aW9uLnNlcnZpY2UnO1xuXG5ASW5qZWN0YWJsZSgpXG5leHBvcnQgY2xhc3MgT2lkY0NvbmZpZ1NlcnZpY2Uge1xuICBjb25zdHJ1Y3RvcihcbiAgICBwcml2YXRlIGxvZ2dlclNlcnZpY2U6IExvZ2dlclNlcnZpY2UsXG4gICAgcHJpdmF0ZSBwdWJsaWNFdmVudHNTZXJ2aWNlOiBQdWJsaWNFdmVudHNTZXJ2aWNlLFxuICAgIHByaXZhdGUgY29uZmlndXJhdGlvblByb3ZpZGVyOiBDb25maWd1cmF0aW9uUHJvdmlkZXIsXG4gICAgcHJpdmF0ZSBhdXRoV2VsbEtub3duU2VydmljZTogQXV0aFdlbGxLbm93blNlcnZpY2UsXG4gICAgcHJpdmF0ZSBzdG9yYWdlUGVyc2lzdGVuY2VTZXJ2aWNlOiBTdG9yYWdlUGVyc2lzdGVuY2VTZXJ2aWNlLFxuICAgIHByaXZhdGUgY29uZmlnVmFsaWRhdGlvblNlcnZpY2U6IENvbmZpZ1ZhbGlkYXRpb25TZXJ2aWNlLFxuICAgIHByaXZhdGUgcGxhdGZvcm1Qcm92aWRlcjogUGxhdGZvcm1Qcm92aWRlclxuICApIHt9XG5cbiAgd2l0aENvbmZpZ3MocGFzc2VkQ29uZmlnczogT3BlbklkQ29uZmlndXJhdGlvbltdKTogUHJvbWlzZTxPcGVuSWRDb25maWd1cmF0aW9uW10+IHtcbiAgICBpZiAoIXRoaXMuY29uZmlnVmFsaWRhdGlvblNlcnZpY2UudmFsaWRhdGVDb25maWdzKHBhc3NlZENvbmZpZ3MpKSB7XG4gICAgICByZXR1cm4gUHJvbWlzZS5yZXNvbHZlKG51bGwpO1xuICAgIH1cblxuICAgIHRoaXMuY3JlYXRlVW5pcXVlSWRzKHBhc3NlZENvbmZpZ3MpO1xuICAgIGNvbnN0IGFsbEhhbmRsZUNvbmZpZ1Byb21pc2VzID0gcGFzc2VkQ29uZmlncy5tYXAoKHgpID0+IHRoaXMuaGFuZGxlQ29uZmlnKHgpKTtcblxuICAgIHJldHVybiBQcm9taXNlLmFsbChhbGxIYW5kbGVDb25maWdQcm9taXNlcyk7XG4gIH1cblxuICBwcml2YXRlIGNyZWF0ZVVuaXF1ZUlkcyhwYXNzZWRDb25maWdzOiBPcGVuSWRDb25maWd1cmF0aW9uW10pOiB2b2lkIHtcbiAgICBwYXNzZWRDb25maWdzLmZvckVhY2goKGNvbmZpZywgaW5kZXgpID0+IHtcbiAgICAgIGlmICghY29uZmlnLmNvbmZpZ0lkKSB7XG4gICAgICAgIGNvbmZpZy5jb25maWdJZCA9IGAke2luZGV4fS0ke2NvbmZpZy5jbGllbnRJZH1gO1xuICAgICAgfVxuICAgIH0pO1xuICB9XG5cbiAgcHJpdmF0ZSBoYW5kbGVDb25maWcocGFzc2VkQ29uZmlnOiBPcGVuSWRDb25maWd1cmF0aW9uKTogUHJvbWlzZTxPcGVuSWRDb25maWd1cmF0aW9uPiB7XG4gICAgcmV0dXJuIG5ldyBQcm9taXNlKChyZXNvbHZlLCByZWplY3QpID0+IHtcbiAgICAgIGlmICghdGhpcy5jb25maWdWYWxpZGF0aW9uU2VydmljZS52YWxpZGF0ZUNvbmZpZyhwYXNzZWRDb25maWcpKSB7XG4gICAgICAgIHRoaXMubG9nZ2VyU2VydmljZS5sb2dFcnJvcihwYXNzZWRDb25maWcuY29uZmlnSWQsICdWYWxpZGF0aW9uIG9mIGNvbmZpZyByZWplY3RlZCB3aXRoIGVycm9ycy4gQ29uZmlnIGlzIE5PVCBzZXQuJyk7XG4gICAgICAgIHJlc29sdmUobnVsbCk7XG5cbiAgICAgICAgcmV0dXJuO1xuICAgICAgfVxuXG4gICAgICBpZiAoIXBhc3NlZENvbmZpZy5hdXRoV2VsbGtub3duRW5kcG9pbnRVcmwpIHtcbiAgICAgICAgcGFzc2VkQ29uZmlnLmF1dGhXZWxsa25vd25FbmRwb2ludFVybCA9IHBhc3NlZENvbmZpZy5hdXRob3JpdHk7XG4gICAgICB9XG5cbiAgICAgIGNvbnN0IHVzZWRDb25maWcgPSB0aGlzLnByZXBhcmVDb25maWcocGFzc2VkQ29uZmlnKTtcbiAgICAgIHRoaXMuY29uZmlndXJhdGlvblByb3ZpZGVyLnNldENvbmZpZyh1c2VkQ29uZmlnKTtcblxuICAgICAgY29uc3QgYWxyZWFkeUV4aXN0aW5nQXV0aFdlbGxLbm93bkVuZHBvaW50cyA9IHRoaXMuc3RvcmFnZVBlcnNpc3RlbmNlU2VydmljZS5yZWFkKCdhdXRoV2VsbEtub3duRW5kUG9pbnRzJywgdXNlZENvbmZpZy5jb25maWdJZCk7XG4gICAgICBpZiAoISFhbHJlYWR5RXhpc3RpbmdBdXRoV2VsbEtub3duRW5kcG9pbnRzKSB7XG4gICAgICAgIHVzZWRDb25maWcuYXV0aFdlbGxrbm93bkVuZHBvaW50cyA9IGFscmVhZHlFeGlzdGluZ0F1dGhXZWxsS25vd25FbmRwb2ludHM7XG4gICAgICAgIHRoaXMucHVibGljRXZlbnRzU2VydmljZS5maXJlRXZlbnQ8T3BlbklkQ29uZmlndXJhdGlvbj4oRXZlbnRUeXBlcy5Db25maWdMb2FkZWQsIHVzZWRDb25maWcpO1xuXG4gICAgICAgIHJlc29sdmUodXNlZENvbmZpZyk7XG5cbiAgICAgICAgcmV0dXJuO1xuICAgICAgfVxuXG4gICAgICBjb25zdCBwYXNzZWRBdXRoV2VsbEtub3duRW5kcG9pbnRzID0gdXNlZENvbmZpZy5hdXRoV2VsbGtub3duRW5kcG9pbnRzO1xuXG4gICAgICBpZiAoISFwYXNzZWRBdXRoV2VsbEtub3duRW5kcG9pbnRzKSB7XG4gICAgICAgIHRoaXMuYXV0aFdlbGxLbm93blNlcnZpY2Uuc3RvcmVXZWxsS25vd25FbmRwb2ludHModXNlZENvbmZpZy5jb25maWdJZCwgcGFzc2VkQXV0aFdlbGxLbm93bkVuZHBvaW50cyk7XG4gICAgICAgIHVzZWRDb25maWcuYXV0aFdlbGxrbm93bkVuZHBvaW50cyA9IHBhc3NlZEF1dGhXZWxsS25vd25FbmRwb2ludHM7XG4gICAgICAgIHRoaXMucHVibGljRXZlbnRzU2VydmljZS5maXJlRXZlbnQ8T3BlbklkQ29uZmlndXJhdGlvbj4oRXZlbnRUeXBlcy5Db25maWdMb2FkZWQsIHVzZWRDb25maWcpO1xuXG4gICAgICAgIHJlc29sdmUodXNlZENvbmZpZyk7XG5cbiAgICAgICAgcmV0dXJuO1xuICAgICAgfVxuXG4gICAgICBpZiAodXNlZENvbmZpZy5lYWdlckxvYWRBdXRoV2VsbEtub3duRW5kcG9pbnRzKSB7XG4gICAgICAgIHRoaXMuYXV0aFdlbGxLbm93blNlcnZpY2VcbiAgICAgICAgICAuZ2V0QXV0aFdlbGxLbm93bkVuZFBvaW50cyh1c2VkQ29uZmlnLmF1dGhXZWxsa25vd25FbmRwb2ludFVybCwgdXNlZENvbmZpZy5jb25maWdJZClcbiAgICAgICAgICAucGlwZShcbiAgICAgICAgICAgIGNhdGNoRXJyb3IoKGVycm9yKSA9PiB7XG4gICAgICAgICAgICAgIHRoaXMubG9nZ2VyU2VydmljZS5sb2dFcnJvcih1c2VkQ29uZmlnLmNvbmZpZ0lkLCAnR2V0dGluZyBhdXRoIHdlbGwga25vd24gZW5kcG9pbnRzIGZhaWxlZCBvbiBzdGFydCcsIGVycm9yKTtcblxuICAgICAgICAgICAgICByZXR1cm4gdGhyb3dFcnJvcihlcnJvcik7XG4gICAgICAgICAgICB9KSxcbiAgICAgICAgICAgIHRhcCgod2VsbGtub3duRW5kUG9pbnRzKSA9PiB7XG4gICAgICAgICAgICAgIHVzZWRDb25maWcuYXV0aFdlbGxrbm93bkVuZHBvaW50cyA9IHdlbGxrbm93bkVuZFBvaW50cztcbiAgICAgICAgICAgICAgdGhpcy5wdWJsaWNFdmVudHNTZXJ2aWNlLmZpcmVFdmVudDxPcGVuSWRDb25maWd1cmF0aW9uPihFdmVudFR5cGVzLkNvbmZpZ0xvYWRlZCwgdXNlZENvbmZpZyk7XG4gICAgICAgICAgICB9KVxuICAgICAgICAgIClcbiAgICAgICAgICAuc3Vic2NyaWJlKFxuICAgICAgICAgICAgKCkgPT4gcmVzb2x2ZSh1c2VkQ29uZmlnKSxcblxuICAgICAgICAgICAgKCkgPT4gcmVqZWN0KClcbiAgICAgICAgICApO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgdGhpcy5wdWJsaWNFdmVudHNTZXJ2aWNlLmZpcmVFdmVudDxPcGVuSWRDb25maWd1cmF0aW9uPihFdmVudFR5cGVzLkNvbmZpZ0xvYWRlZCwgdXNlZENvbmZpZyk7XG4gICAgICAgIHJlc29sdmUodXNlZENvbmZpZyk7XG4gICAgICB9XG4gICAgfSk7XG4gIH1cblxuICBwcml2YXRlIHByZXBhcmVDb25maWcoY29uZmlndXJhdGlvbjogT3BlbklkQ29uZmlndXJhdGlvbik6IE9wZW5JZENvbmZpZ3VyYXRpb24ge1xuICAgIGNvbnN0IG9wZW5JZENvbmZpZ3VyYXRpb25JbnRlcm5hbCA9IHsgLi4uREVGQVVMVF9DT05GSUcsIC4uLmNvbmZpZ3VyYXRpb24gfTtcbiAgICB0aGlzLnNldFNwZWNpYWxDYXNlcyhvcGVuSWRDb25maWd1cmF0aW9uSW50ZXJuYWwpO1xuXG4gICAgcmV0dXJuIG9wZW5JZENvbmZpZ3VyYXRpb25JbnRlcm5hbDtcbiAgfVxuXG4gIHByaXZhdGUgc2V0U3BlY2lhbENhc2VzKGN1cnJlbnRDb25maWc6IE9wZW5JZENvbmZpZ3VyYXRpb24pOiB2b2lkIHtcbiAgICBpZiAoIXRoaXMucGxhdGZvcm1Qcm92aWRlci5pc0Jyb3dzZXIpIHtcbiAgICAgIGN1cnJlbnRDb25maWcuc3RhcnRDaGVja1Nlc3Npb24gPSBmYWxzZTtcbiAgICAgIGN1cnJlbnRDb25maWcuc2lsZW50UmVuZXcgPSBmYWxzZTtcbiAgICAgIGN1cnJlbnRDb25maWcudXNlUmVmcmVzaFRva2VuID0gZmFsc2U7XG4gICAgICBjdXJyZW50Q29uZmlnLnVzZVB1c2hlZEF1dGhvcmlzYXRpb25SZXF1ZXN0cyA9IGZhbHNlO1xuICAgIH1cbiAgfVxufVxuIl19
}], ctorParameters: function () { return [{ type: i1.LoggerService }, { type: i2.PublicEventsService }, { type: i3.ConfigurationProvider }, { type: i4.AuthWellKnownService }, { type: i5.StoragePersistenceService }, { type: i6.ConfigValidationService }, { type: i7.PlatformProvider }, { type: i8.DefaultSessionStorageService }]; } });
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29uZmlnLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9hbmd1bGFyLWF1dGgtb2lkYy1jbGllbnQvc3JjL2xpYi9jb25maWcvY29uZmlnLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUMzQyxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQ2xDLE9BQU8sRUFBRSxVQUFVLEVBQUUsR0FBRyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFFakQsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLDhCQUE4QixDQUFDO0FBTTFELE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQzs7Ozs7Ozs7OztBQU1sRCxNQUFNLE9BQU8saUJBQWlCO0lBQzVCLFlBQ1UsYUFBNEIsRUFDNUIsbUJBQXdDLEVBQ3hDLHFCQUE0QyxFQUM1QyxvQkFBMEMsRUFDMUMseUJBQW9ELEVBQ3BELHVCQUFnRCxFQUNoRCxnQkFBa0MsRUFDbEMsNEJBQTBEO1FBUDFELGtCQUFhLEdBQWIsYUFBYSxDQUFlO1FBQzVCLHdCQUFtQixHQUFuQixtQkFBbUIsQ0FBcUI7UUFDeEMsMEJBQXFCLEdBQXJCLHFCQUFxQixDQUF1QjtRQUM1Qyx5QkFBb0IsR0FBcEIsb0JBQW9CLENBQXNCO1FBQzFDLDhCQUF5QixHQUF6Qix5QkFBeUIsQ0FBMkI7UUFDcEQsNEJBQXVCLEdBQXZCLHVCQUF1QixDQUF5QjtRQUNoRCxxQkFBZ0IsR0FBaEIsZ0JBQWdCLENBQWtCO1FBQ2xDLGlDQUE0QixHQUE1Qiw0QkFBNEIsQ0FBOEI7SUFDakUsQ0FBQztJQUVKLFdBQVcsQ0FBQyxhQUFvQztRQUM5QyxJQUFJLENBQUMsSUFBSSxDQUFDLHVCQUF1QixDQUFDLGVBQWUsQ0FBQyxhQUFhLENBQUMsRUFBRTtZQUNoRSxPQUFPLE9BQU8sQ0FB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SUFBSSxhQUFhLENBQUMsT0FBTyxFQUFFO1lBQ3pCLE9BQU87U0FDUjtRQUVELElBQUksSUFBSSxDQUFDLGlCQUFpQixFQUFFLEVBQUU7WUFDNUIsYUFBYSxDQUFDLE9BQU8sR0FBRyxJQUFJLENBQUMsNEJBQTRCLENBQUM7U0FDM0Q7YUFBTTtZQUNMLGFBQWEsQ0FBQyxPQUFPLEdBQUcsSUFBSSxDQUFDO1NBQzlCO0lBQ0gsQ0FBQztJQUVPLGlCQUFpQjtRQUN2QixPQUFPLE9BQU8sU0FBUyxLQUFLLFdBQVcsSUFBSSxTQUFTLENBQUMsYUFBYSxJQUFJLE9BQU8sT0FBTyxLQUFLLFdBQVcsQ0FBQztJQUN2RyxDQUFDOzs4R0E5SFUsaUJBQWlCO2tIQUFqQixpQkFBaUI7MkZBQWpCLGlCQUFpQjtrQkFEN0IsVUFBVSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IHRocm93RXJyb3IgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IGNhdGNoRXJyb3IsIHRhcCB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcbmltcG9ydCB7IExvZ2dlclNlcnZpY2UgfSBmcm9tICcuLi9sb2dnaW5nL2xvZ2dlci5zZXJ2aWNlJztcbmltcG9ydCB7IEV2ZW50VHlwZXMgfSBmcm9tICcuLi9wdWJsaWMtZXZlbnRzL2V2ZW50LXR5cGVzJztcbmltcG9ydCB7IFB1YmxpY0V2ZW50c1NlcnZpY2UgfSBmcm9tICcuLi9wdWJsaWMtZXZlbnRzL3B1YmxpYy1ldmVudHMuc2VydmljZSc7XG5pbXBvcnQgeyBTdG9yYWdlUGVyc2lzdGVuY2VTZXJ2aWNlIH0gZnJvbSAnLi4vc3RvcmFnZS9zdG9yYWdlLXBlcnNpc3RlbmNlLnNlcnZpY2UnO1xuaW1wb3J0IHsgUGxhdGZvcm1Qcm92aWRlciB9IGZyb20gJy4uL3V0aWxzL3BsYXRmb3JtLXByb3ZpZGVyL3BsYXRmb3JtLnByb3ZpZGVyJztcbmltcG9ydCB7IERlZmF1bHRTZXNzaW9uU3RvcmFnZVNlcnZpY2UgfSBmcm9tICcuLy4uL3N0b3JhZ2UvZGVmYXVsdC1zZXNzaW9uc3RvcmFnZS5zZXJ2aWNlJztcbmltcG9ydCB7IEF1dGhXZWxsS25vd25TZXJ2aWNlIH0gZnJvbSAnLi9hdXRoLXdlbGwta25vd24vYXV0aC13ZWxsLWtub3duLnNlcnZpY2UnO1xuaW1wb3J0IHsgREVGQVVMVF9DT05GSUcgfSBmcm9tICcuL2RlZmF1bHQtY29uZmlnJztcbmltcG9ydCB7IE9wZW5JZENvbmZpZ3VyYXRpb24gfSBmcm9tICcuL29wZW5pZC1jb25maWd1cmF0aW9uJztcbmltcG9ydCB7IENvbmZpZ3VyYXRpb25Qcm92aWRlciB9IGZyb20gJy4vcHJvdmlkZXIvY29uZmlnLnByb3ZpZGVyJztcbmltcG9ydCB7IENvbmZpZ1ZhbGlkYXRpb25TZXJ2aWNlIH0gZnJvbSAnLi92YWxpZGF0aW9uL2NvbmZpZy12YWxpZGF0aW9uLnNlcnZpY2UnO1xuXG5ASW5qZWN0YWJsZSgpXG5leHBvcnQgY2xhc3MgT2lkY0NvbmZpZ1NlcnZpY2Uge1xuICBjb25zdHJ1Y3RvcihcbiAgICBwcml2YXRlIGxvZ2dlclNlcnZpY2U6IExvZ2dlclNlcnZpY2UsXG4gICAgcHJpdmF0ZSBwdWJsaWNFdmVudHNTZXJ2aWNlOiBQdWJsaWNFdmVudHNTZXJ2aWNlLFxuICAgIHByaXZhdGUgY29uZmlndXJhdGlvblByb3ZpZGVyOiBDb25maWd1cmF0aW9uUHJvdmlkZXIsXG4gICAgcHJpdmF0ZSBhdXRoV2VsbEtub3duU2VydmljZTogQXV0aFdlbGxLbm93blNlcnZpY2UsXG4gICAgcHJpdmF0ZSBzdG9yYWdlUGVyc2lzdGVuY2VTZXJ2aWNlOiBTdG9yYWdlUGVyc2lzdGVuY2VTZXJ2aWNlLFxuICAgIHByaXZhdGUgY29uZmlnVmFsaWRhdGlvblNlcnZpY2U6IENvbmZpZ1ZhbGlkYXRpb25TZXJ2aWNlLFxuICAgIHByaXZhdGUgcGxhdGZvcm1Qcm92aWRlcjogUGxhdGZvcm1Qcm92aWRlcixcbiAgICBwcml2YXRlIGRlZmF1bHRTZXNzaW9uU3RvcmFnZVNlcnZpY2U6IERlZmF1bHRTZXNzaW9uU3RvcmFnZVNlcnZpY2VcbiAgKSB7fVxuXG4gIHdpdGhDb25maWdzKHBhc3NlZENvbmZpZ3M6IE9wZW5JZENvbmZpZ3VyYXRpb25bXSk6IFByb21pc2U8T3BlbklkQ29uZmlndXJhdGlvbltdPiB7XG4gICAgaWYgKCF0aGlzLmNvbmZpZ1ZhbGlkYXRpb25TZXJ2aWNlLnZhbGlkYXRlQ29uZmlncyhwYXNzZWRDb25maWdzKSkge1xuICAgICAgcmV0dXJuIFByb21pc2UucmVzb2x2ZShudWxsKTtcbiAgICB9XG5cbiAgICB0aGlzLmNyZWF0ZVVuaXF1ZUlkcyhwYXNzZWRDb25maWdzKTtcbiAgICBjb25zdCBhbGxIYW5kbGVDb25maWdQcm9taXNlcyA9IHBhc3NlZENvbmZpZ3MubWFwKCh4KSA9PiB0aGlzLmhhbmRsZUNvbmZpZyh4KSk7XG5cbiAgICByZXR1cm4gUHJvbWlzZS5hbGwoYWxsSGFuZGxlQ29uZmlnUHJvbWlzZXMpO1xuICB9XG5cbiAgcHJpdmF0ZSBjcmVhdGVVbmlxdWVJZHMocGFzc2VkQ29uZmlnczogT3BlbklkQ29uZmlndXJhdGlvbltdKTogdm9pZCB7XG4gICAgcGFzc2VkQ29uZmlncy5mb3JFYWNoKChjb25maWcsIGluZGV4KSA9PiB7XG4gICAgICBpZiAoIWNvbmZpZy5jb25maWdJZCkge1xuICAgICAgICBjb25maWcuY29uZmlnSWQgPSBgJHtpbmRleH0tJHtjb25maWcuY2xpZW50SWR9YDtcbiAgICAgIH1cbiAgICB9KTtcbiAgfVxuXG4gIHByaXZhdGUgaGFuZGxlQ29uZmlnKHBhc3NlZENvbmZpZzogT3BlbklkQ29uZmlndXJhdGlvbik6IFByb21pc2U8T3BlbklkQ29uZmlndXJhdGlvbj4ge1xuICAgIHJldHVybiBuZXcgUHJvbWlzZSgocmVzb2x2ZSwgcmVqZWN0KSA9PiB7XG4gICAgICBpZiAoIXRoaXMuY29uZmlnVmFsaWRhdGlvblNlcnZpY2UudmFsaWRhdGVDb25maWcocGFzc2VkQ29uZmlnKSkge1xuICAgICAgICB0aGlzLmxvZ2dlclNlcnZpY2UubG9nRXJyb3IocGFzc2VkQ29uZmlnLmNvbmZpZ0lkLCAnVmFsaWRhdGlvbiBvZiBjb25maWcgcmVqZWN0ZWQgd2l0aCBlcnJvcnMuIENvbmZpZyBpcyBOT1Qgc2V0LicpO1xuICAgICAgICByZXNvbHZlKG51bGwpO1xuXG4gICAgICAgIHJldHVybjtcbiAgICAgIH1cblxuICAgICAgaWYgKCFwYXNzZWRDb25maWcuYXV0aFdlbGxrbm93bkVuZHBvaW50VXJsKSB7XG4gICAgICAgIHBhc3NlZENvbmZpZy5hdXRoV2VsbGtub3duRW5kcG9pbnRVcmwgPSBwYXNzZWRDb25maWcuYXV0aG9yaXR5O1xuICAgICAgfVxuXG4gICAgICBjb25zdCB1c2VkQ29uZmlnID0gdGhpcy5wcmVwYXJlQ29uZmlnKHBhc3NlZENvbmZpZyk7XG4gICAgICB0aGlzLmNvbmZpZ3VyYXRpb25Qcm92aWRlci5zZXRDb25maWcodXNlZENvbmZpZyk7XG5cbiAgICAgIGNvbnN0IGFscmVhZHlFeGlzdGluZ0F1dGhXZWxsS25vd25FbmRwb2ludHMgPSB0aGlzLnN0b3JhZ2VQZXJzaXN0ZW5jZVNlcnZpY2UucmVhZCgnYXV0aFdlbGxLbm93bkVuZFBvaW50cycsIHVzZWRDb25maWcuY29uZmlnSWQpO1xuICAgICAgaWYgKCEhYWxyZWFkeUV4aXN0aW5nQXV0aFdlbGxLbm93bkVuZHBvaW50cykge1xuICAgICAgICB1c2VkQ29uZmlnLmF1dGhXZWxsa25vd25FbmRwb2ludHMgPSBhbHJlYWR5RXhpc3RpbmdBdXRoV2VsbEtub3duRW5kcG9pbnRzO1xuICAgICAgICB0aGlzLnB1YmxpY0V2ZW50c1NlcnZpY2UuZmlyZUV2ZW50PE9wZW5JZENvbmZpZ3VyYXRpb24+KEV2ZW50VHlwZXMuQ29uZmlnTG9hZGVkLCB1c2VkQ29uZmlnKTtcblxuICAgICAgICByZXNvbHZlKHVzZWRDb25maWcpO1xuXG4gICAgICAgIHJldHVybjtcbiAgICAgIH1cblxuICAgICAgY29uc3QgcGFzc2VkQXV0aFdlbGxLbm93bkVuZHBvaW50cyA9IHVzZWRDb25maWcuYXV0aFdlbGxrbm93bkVuZHBvaW50cztcblxuICAgICAgaWYgKCEhcGFzc2VkQXV0aFdlbGxLbm93bkVuZHBvaW50cykge1xuICAgICAgICB0aGlzLmF1dGhXZWxsS25vd25TZXJ2aWNlLnN0b3JlV2VsbEtub3duRW5kcG9pbnRzKHVzZWRDb25maWcuY29uZmlnSWQsIHBhc3NlZEF1dGhXZWxsS25vd25FbmRwb2ludHMpO1xuICAgICAgICB1c2VkQ29uZmlnLmF1dGhXZWxsa25vd25FbmRwb2ludHMgPSBwYXNzZWRBdXRoV2VsbEtub3duRW5kcG9pbnRzO1xuICAgICAgICB0aGlzLnB1YmxpY0V2ZW50c1NlcnZpY2UuZmlyZUV2ZW50PE9wZW5JZENvbmZpZ3VyYXRpb24+KEV2ZW50VHlwZXMuQ29uZmlnTG9hZGVkLCB1c2VkQ29uZmlnKTtcblxuICAgICAgICByZXNvbHZlKHVzZWRDb25maWcpO1xuXG4gICAgICAgIHJldHVybjtcbiAgICAgIH1cblxuICAgICAgaWYgKHVzZWRDb25maWcuZWFnZXJMb2FkQXV0aFdlbGxLbm93bkVuZHBvaW50cykge1xuICAgICAgICB0aGlzLmF1dGhXZWxsS25vd25TZXJ2aWNlXG4gICAgICAgICAgLmdldEF1dGhXZWxsS25vd25FbmRQb2ludHModXNlZENvbmZpZy5hdXRoV2VsbGtub3duRW5kcG9pbnRVcmwsIHVzZWRDb25maWcuY29uZmlnSWQpXG4gICAgICAgICAgLnBpcGUoXG4gICAgICAgICAgICBjYXRjaEVycm9yKChlcnJvcikgPT4ge1xuICAgICAgICAgICAgICB0aGlzLmxvZ2dlclNlcnZpY2UubG9nRXJyb3IodXNlZENvbmZpZy5jb25maWdJZCwgJ0dldHRpbmcgYXV0aCB3ZWxsIGtub3duIGVuZHBvaW50cyBmYWlsZWQgb24gc3RhcnQnLCBlcnJvcik7XG5cbiAgICAgICAgICAgICAgcmV0dXJuIHRocm93RXJyb3IoZXJyb3IpO1xuICAgICAgICAgICAgfSksXG4gICAgICAgICAgICB0YXAoKHdlbGxrbm93bkVuZFBvaW50cykgPT4ge1xuICAgICAgICAgICAgICB1c2VkQ29uZmlnLmF1dGhXZWxsa25vd25FbmRwb2ludHMgPSB3ZWxsa25vd25FbmRQb2ludHM7XG4gICAgICAgICAgICAgIHRoaXMucHVibGljRXZlbnRzU2VydmljZS5maXJlRXZlbnQ8T3BlbklkQ29uZmlndXJhdGlvbj4oRXZlbnRUeXBlcy5Db25maWdMb2FkZWQsIHVzZWRDb25maWcpO1xuICAgICAgICAgICAgfSlcbiAgICAgICAgICApXG4gICAgICAgICAgLnN1YnNjcmliZShcbiAgICAgICAgICAgICgpID0+IHJlc29sdmUodXNlZENvbmZpZyksXG5cbiAgICAgICAgICAgICgpID0+IHJlamVjdCgpXG4gICAgICAgICAgKTtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIHRoaXMucHVibGljRXZlbnRzU2VydmljZS5maXJlRXZlbnQ8T3BlbklkQ29uZmlndXJhdGlvbj4oRXZlbnRUeXBlcy5Db25maWdMb2FkZWQsIHVzZWRDb25maWcpO1xuICAgICAgICByZXNvbHZlKHVzZWRDb25maWcpO1xuICAgICAgfVxuICAgIH0pO1xuICB9XG5cbiAgcHJpdmF0ZSBwcmVwYXJlQ29uZmlnKGNvbmZpZ3VyYXRpb246IE9wZW5JZENvbmZpZ3VyYXRpb24pOiBPcGVuSWRDb25maWd1cmF0aW9uIHtcbiAgICBjb25zdCBvcGVuSWRDb25maWd1cmF0aW9uSW50ZXJuYWwgPSB7IC4uLkRFRkFVTFRfQ09ORklHLCAuLi5jb25maWd1cmF0aW9uIH07XG4gICAgdGhpcy5zZXRTcGVjaWFsQ2FzZXMob3BlbklkQ29uZmlndXJhdGlvbkludGVybmFsKTtcbiAgICB0aGlzLnNldFN0b3JhZ2Uob3BlbklkQ29uZmlndXJhdGlvbkludGVybmFsKTtcblxuICAgIHJldHVybiBvcGVuSWRDb25maWd1cmF0aW9uSW50ZXJuYWw7XG4gIH1cblxuICBwcml2YXRlIHNldFNwZWNpYWxDYXNlcyhjdXJyZW50Q29uZmlnOiBPcGVuSWRDb25maWd1cmF0aW9uKTogdm9pZCB7XG4gICAgaWYgKCF0aGlzLnBsYXRmb3JtUHJvdmlkZXIuaXNCcm93c2VyKSB7XG4gICAgICBjdXJyZW50Q29uZmlnLnN0YXJ0Q2hlY2tTZXNzaW9uID0gZmFsc2U7XG4gICAgICBjdXJyZW50Q29uZmlnLnNpbGVudFJlbmV3ID0gZmFsc2U7XG4gICAgICBjdXJyZW50Q29uZmlnLnVzZVJlZnJlc2hUb2tlbiA9IGZhbHNlO1xuICAgICAgY3VycmVudENvbmZpZy51c2VQdXNoZWRBdXRob3Jpc2F0aW9uUmVxdWVzdHMgPSBmYWxzZTtcbiAgICB9XG4gIH1cblxuICBwcml2YXRlIHNldFN0b3JhZ2UoY3VycmVudENvbmZpZzogT3BlbklkQ29uZmlndXJhdGlvbik6IHZvaWQge1xuICAgIGlmIChjdXJyZW50Q29uZmlnLnN0b3JhZ2UpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICBpZiAodGhpcy5oYXNCcm93c2VyU3RvcmFnZSgpKSB7XG4gICAgICBjdXJyZW50Q29uZmlnLnN0b3JhZ2UgPSB0aGlzLmRlZmF1bHRTZXNzaW9uU3RvcmFnZVNlcnZpY2U7XG4gICAgfSBlbHNlIHtcbiAgICAgIGN1cnJlbnRDb25maWcuc3RvcmFnZSA9IG51bGw7XG4gICAgfVxuICB9XG5cbiAgcHJpdmF0ZSBoYXNCcm93c2VyU3RvcmFnZSgpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdHlwZW9mIG5hdmlnYXRvciAhPT0gJ3VuZGVmaW5lZCcgJiYgbmF2aWdhdG9yLmNvb2tpZUVuYWJsZWQgJiYgdHlwZW9mIFN0b3JhZ2UgIT09ICd1bmRlZmluZWQnO1xuICB9XG59XG4iXX0=

@@ -31,3 +31,3 @@ import { LogLevel } from '../logging/log-level';

disableIatOffsetValidation: false,
storage: typeof navigator !== 'undefined' && navigator.cookieEnabled && typeof Storage !== 'undefined' ? sessionStorage : null,
storage: null,
customParamsAuthRequest: {},

@@ -44,2 +44,2 @@ customParamsRefreshTokenRequest: {},

};
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGVmYXVsdC1jb25maWcuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9hbmd1bGFyLWF1dGgtb2lkYy1jbGllbnQvc3JjL2xpYi9jb25maWcvZGVmYXVsdC1jb25maWcudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBR2hELE1BQU0sQ0FBQyxNQUFNLGNBQWMsR0FBd0I7SUFDakQsU0FBUyxFQUFFLG9CQUFvQjtJQUMvQix3QkFBd0IsRUFBRSxFQUFFO0lBQzVCLHNCQUFzQixFQUFFLElBQUk7SUFDNUIsV0FBVyxFQUFFLG9CQUFvQjtJQUNqQyxRQUFRLEVBQUUsWUFBWTtJQUN0QixZQUFZLEVBQUUsTUFBTTtJQUNwQixLQUFLLEVBQUUsc0JBQXNCO0lBQzdCLE9BQU8sRUFBRSxFQUFFO0lBQ1gscUJBQXFCLEVBQUUsb0JBQW9CO0lBQzNDLGlCQUFpQixFQUFFLEtBQUs7SUFDeEIsV0FBVyxFQUFFLEtBQUs7SUFDbEIsY0FBYyxFQUFFLG9CQUFvQjtJQUNwQywyQkFBMkIsRUFBRSxFQUFFO0lBQy9CLG9DQUFvQyxFQUFFLENBQUM7SUFDdkMsZUFBZSxFQUFFLEtBQUs7SUFDdEIsOEJBQThCLEVBQUUsS0FBSztJQUNyQyx1QkFBdUIsRUFBRSxLQUFLO0lBQzlCLGNBQWMsRUFBRSxHQUFHO0lBQ25CLGNBQWMsRUFBRSxZQUFZO0lBQzVCLGlCQUFpQixFQUFFLGVBQWU7SUFDbEMsWUFBWSxFQUFFLElBQUk7SUFDbEIsaUNBQWlDLEVBQUUsSUFBSTtJQUN2QywrQkFBK0IsRUFBRSxLQUFLO0lBQ3RDLFFBQVEsRUFBRSxRQUFRLENBQUMsSUFBSTtJQUN2QixnQkFBZ0IsRUFBRSxLQUFLO0lBQ3ZCLGlCQUFpQixFQUFFLEtBQUs7SUFDeEIsbUNBQW1DLEVBQUUsR0FBRztJQUN4QywwQkFBMEIsRUFBRSxLQUFLO0lBQ2pDLE9BQU8sRUFBRSxPQUFPLFNBQVMsS0FBSyxXQUFXLElBQUksU0FBUyxDQUFDLGFBQWEsSUFBSSxPQUFPLE9BQU8sS0FBSyxXQUFXLENBQUMsQ0FBQyxDQUFDLGNBQWMsQ0FBQyxDQUFDLENBQUMsSUFBSTtJQUM5SCx1QkFBdUIsRUFBRSxFQUFFO0lBQzNCLCtCQUErQixFQUFFLEVBQUU7SUFDbkMsNkJBQTZCLEVBQUUsRUFBRTtJQUNqQyx1QkFBdUIsRUFBRSxFQUFFO0lBQzNCLCtCQUErQixFQUFFLElBQUk7SUFDckMsdUNBQXVDLEVBQUUsS0FBSztJQUM5QyxxQ0FBcUMsRUFBRSxJQUFJO0lBQzNDLHFCQUFxQixFQUFFLENBQUM7SUFDeEIsMEJBQTBCLEVBQUUsQ0FBQztJQUM3QixVQUFVLEVBQUUsS0FBSztDQUNsQixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgTG9nTGV2ZWwgfSBmcm9tICcuLi9sb2dnaW5nL2xvZy1sZXZlbCc7XG5pbXBvcnQgeyBPcGVuSWRDb25maWd1cmF0aW9uIH0gZnJvbSAnLi9vcGVuaWQtY29uZmlndXJhdGlvbic7XG5cbmV4cG9ydCBjb25zdCBERUZBVUxUX0NPTkZJRzogT3BlbklkQ29uZmlndXJhdGlvbiA9IHtcbiAgYXV0aG9yaXR5OiAnaHR0cHM6Ly9wbGVhc2Vfc2V0JyxcbiAgYXV0aFdlbGxrbm93bkVuZHBvaW50VXJsOiAnJyxcbiAgYXV0aFdlbGxrbm93bkVuZHBvaW50czogbnVsbCxcbiAgcmVkaXJlY3RVcmw6ICdodHRwczovL3BsZWFzZV9zZXQnLFxuICBjbGllbnRJZDogJ3BsZWFzZV9zZXQnLFxuICByZXNwb25zZVR5cGU6ICdjb2RlJyxcbiAgc2NvcGU6ICdvcGVuaWQgZW1haWwgcHJvZmlsZScsXG4gIGhkUGFyYW06ICcnLFxuICBwb3N0TG9nb3V0UmVkaXJlY3RVcmk6ICdodHRwczovL3BsZWFzZV9zZXQnLFxuICBzdGFydENoZWNrU2Vzc2lvbjogZmFsc2UsXG4gIHNpbGVudFJlbmV3OiBmYWxzZSxcbiAgc2lsZW50UmVuZXdVcmw6ICdodHRwczovL3BsZWFzZV9zZXQnLFxuICBzaWxlbnRSZW5ld1RpbWVvdXRJblNlY29uZHM6IDIwLFxuICByZW5ld1RpbWVCZWZvcmVUb2tlbkV4cGlyZXNJblNlY29uZHM6IDAsXG4gIHVzZVJlZnJlc2hUb2tlbjogZmFsc2UsXG4gIHVzZVB1c2hlZEF1dGhvcmlzYXRpb25SZXF1ZXN0czogZmFsc2UsXG4gIGlnbm9yZU5vbmNlQWZ0ZXJSZWZyZXNoOiBmYWxzZSxcbiAgcG9zdExvZ2luUm91dGU6ICcvJyxcbiAgZm9yYmlkZGVuUm91dGU6ICcvZm9yYmlkZGVuJyxcbiAgdW5hdXRob3JpemVkUm91dGU6ICcvdW5hdXRob3JpemVkJyxcbiAgYXV0b1VzZXJJbmZvOiB0cnVlLFxuICBhdXRvQ2xlYW5TdGF0ZUFmdGVyQXV0aGVudGljYXRpb246IHRydWUsXG4gIHRyaWdnZXJBdXRob3JpemF0aW9uUmVzdWx0RXZlbnQ6IGZhbHNlLFxuICBsb2dMZXZlbDogTG9nTGV2ZWwuV2FybixcbiAgaXNzVmFsaWRhdGlvbk9mZjogZmFsc2UsXG4gIGhpc3RvcnlDbGVhbnVwT2ZmOiBmYWxzZSxcbiAgbWF4SWRUb2tlbklhdE9mZnNldEFsbG93ZWRJblNlY29uZHM6IDEyMCxcbiAgZGlzYWJsZUlhdE9mZnNldFZhbGlkYXRpb246IGZhbHNlLFxuICBzdG9yYWdlOiB0eXBlb2YgbmF2aWdhdG9yICE9PSAndW5kZWZpbmVkJyAmJiBuYXZpZ2F0b3IuY29va2llRW5hYmxlZCAmJiB0eXBlb2YgU3RvcmFnZSAhPT0gJ3VuZGVmaW5lZCcgPyBzZXNzaW9uU3RvcmFnZSA6IG51bGwsXG4gIGN1c3RvbVBhcmFtc0F1dGhSZXF1ZXN0OiB7fSxcbiAgY3VzdG9tUGFyYW1zUmVmcmVzaFRva2VuUmVxdWVzdDoge30sXG4gIGN1c3RvbVBhcmFtc0VuZFNlc3Npb25SZXF1ZXN0OiB7fSxcbiAgY3VzdG9tUGFyYW1zQ29kZVJlcXVlc3Q6IHt9LFxuICBlYWdlckxvYWRBdXRoV2VsbEtub3duRW5kcG9pbnRzOiB0cnVlLFxuICBkaXNhYmxlUmVmcmVzaElkVG9rZW5BdXRoVGltZVZhbGlkYXRpb246IGZhbHNlLFxuICBlbmFibGVJZFRva2VuRXhwaXJlZFZhbGlkYXRpb25JblJlbmV3OiB0cnVlLFxuICB0b2tlblJlZnJlc2hJblNlY29uZHM6IDQsXG4gIHJlZnJlc2hUb2tlblJldHJ5SW5TZWNvbmRzOiAzLFxuICBuZ3N3QnlwYXNzOiBmYWxzZSxcbn07XG4iXX0=
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGVmYXVsdC1jb25maWcuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9hbmd1bGFyLWF1dGgtb2lkYy1jbGllbnQvc3JjL2xpYi9jb25maWcvZGVmYXVsdC1jb25maWcudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBR2hELE1BQU0sQ0FBQyxNQUFNLGNBQWMsR0FBd0I7SUFDakQsU0FBUyxFQUFFLG9CQUFvQjtJQUMvQix3QkFBd0IsRUFBRSxFQUFFO0lBQzVCLHNCQUFzQixFQUFFLElBQUk7SUFDNUIsV0FBVyxFQUFFLG9CQUFvQjtJQUNqQyxRQUFRLEVBQUUsWUFBWTtJQUN0QixZQUFZLEVBQUUsTUFBTTtJQUNwQixLQUFLLEVBQUUsc0JBQXNCO0lBQzdCLE9BQU8sRUFBRSxFQUFFO0lBQ1gscUJBQXFCLEVBQUUsb0JBQW9CO0lBQzNDLGlCQUFpQixFQUFFLEtBQUs7SUFDeEIsV0FBVyxFQUFFLEtBQUs7SUFDbEIsY0FBYyxFQUFFLG9CQUFvQjtJQUNwQywyQkFBMkIsRUFBRSxFQUFFO0lBQy9CLG9DQUFvQyxFQUFFLENBQUM7SUFDdkMsZUFBZSxFQUFFLEtBQUs7SUFDdEIsOEJBQThCLEVBQUUsS0FBSztJQUNyQyx1QkFBdUIsRUFBRSxLQUFLO0lBQzlCLGNBQWMsRUFBRSxHQUFHO0lBQ25CLGNBQWMsRUFBRSxZQUFZO0lBQzVCLGlCQUFpQixFQUFFLGVBQWU7SUFDbEMsWUFBWSxFQUFFLElBQUk7SUFDbEIsaUNBQWlDLEVBQUUsSUFBSTtJQUN2QywrQkFBK0IsRUFBRSxLQUFLO0lBQ3RDLFFBQVEsRUFBRSxRQUFRLENBQUMsSUFBSTtJQUN2QixnQkFBZ0IsRUFBRSxLQUFLO0lBQ3ZCLGlCQUFpQixFQUFFLEtBQUs7SUFDeEIsbUNBQW1DLEVBQUUsR0FBRztJQUN4QywwQkFBMEIsRUFBRSxLQUFLO0lBQ2pDLE9BQU8sRUFBRSxJQUFJO0lBQ2IsdUJBQXVCLEVBQUUsRUFBRTtJQUMzQiwrQkFBK0IsRUFBRSxFQUFFO0lBQ25DLDZCQUE2QixFQUFFLEVBQUU7SUFDakMsdUJBQXVCLEVBQUUsRUFBRTtJQUMzQiwrQkFBK0IsRUFBRSxJQUFJO0lBQ3JDLHVDQUF1QyxFQUFFLEtBQUs7SUFDOUMscUNBQXFDLEVBQUUsSUFBSTtJQUMzQyxxQkFBcUIsRUFBRSxDQUFDO0lBQ3hCLDBCQUEwQixFQUFFLENBQUM7SUFDN0IsVUFBVSxFQUFFLEtBQUs7Q0FDbEIsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IExvZ0xldmVsIH0gZnJvbSAnLi4vbG9nZ2luZy9sb2ctbGV2ZWwnO1xuaW1wb3J0IHsgT3BlbklkQ29uZmlndXJhdGlvbiB9IGZyb20gJy4vb3BlbmlkLWNvbmZpZ3VyYXRpb24nO1xuXG5leHBvcnQgY29uc3QgREVGQVVMVF9DT05GSUc6IE9wZW5JZENvbmZpZ3VyYXRpb24gPSB7XG4gIGF1dGhvcml0eTogJ2h0dHBzOi8vcGxlYXNlX3NldCcsXG4gIGF1dGhXZWxsa25vd25FbmRwb2ludFVybDogJycsXG4gIGF1dGhXZWxsa25vd25FbmRwb2ludHM6IG51bGwsXG4gIHJlZGlyZWN0VXJsOiAnaHR0cHM6Ly9wbGVhc2Vfc2V0JyxcbiAgY2xpZW50SWQ6ICdwbGVhc2Vfc2V0JyxcbiAgcmVzcG9uc2VUeXBlOiAnY29kZScsXG4gIHNjb3BlOiAnb3BlbmlkIGVtYWlsIHByb2ZpbGUnLFxuICBoZFBhcmFtOiAnJyxcbiAgcG9zdExvZ291dFJlZGlyZWN0VXJpOiAnaHR0cHM6Ly9wbGVhc2Vfc2V0JyxcbiAgc3RhcnRDaGVja1Nlc3Npb246IGZhbHNlLFxuICBzaWxlbnRSZW5ldzogZmFsc2UsXG4gIHNpbGVudFJlbmV3VXJsOiAnaHR0cHM6Ly9wbGVhc2Vfc2V0JyxcbiAgc2lsZW50UmVuZXdUaW1lb3V0SW5TZWNvbmRzOiAyMCxcbiAgcmVuZXdUaW1lQmVmb3JlVG9rZW5FeHBpcmVzSW5TZWNvbmRzOiAwLFxuICB1c2VSZWZyZXNoVG9rZW46IGZhbHNlLFxuICB1c2VQdXNoZWRBdXRob3Jpc2F0aW9uUmVxdWVzdHM6IGZhbHNlLFxuICBpZ25vcmVOb25jZUFmdGVyUmVmcmVzaDogZmFsc2UsXG4gIHBvc3RMb2dpblJvdXRlOiAnLycsXG4gIGZvcmJpZGRlblJvdXRlOiAnL2ZvcmJpZGRlbicsXG4gIHVuYXV0aG9yaXplZFJvdXRlOiAnL3VuYXV0aG9yaXplZCcsXG4gIGF1dG9Vc2VySW5mbzogdHJ1ZSxcbiAgYXV0b0NsZWFuU3RhdGVBZnRlckF1dGhlbnRpY2F0aW9uOiB0cnVlLFxuICB0cmlnZ2VyQXV0aG9yaXphdGlvblJlc3VsdEV2ZW50OiBmYWxzZSxcbiAgbG9nTGV2ZWw6IExvZ0xldmVsLldhcm4sXG4gIGlzc1ZhbGlkYXRpb25PZmY6IGZhbHNlLFxuICBoaXN0b3J5Q2xlYW51cE9mZjogZmFsc2UsXG4gIG1heElkVG9rZW5JYXRPZmZzZXRBbGxvd2VkSW5TZWNvbmRzOiAxMjAsXG4gIGRpc2FibGVJYXRPZmZzZXRWYWxpZGF0aW9uOiBmYWxzZSxcbiAgc3RvcmFnZTogbnVsbCxcbiAgY3VzdG9tUGFyYW1zQXV0aFJlcXVlc3Q6IHt9LFxuICBjdXN0b21QYXJhbXNSZWZyZXNoVG9rZW5SZXF1ZXN0OiB7fSxcbiAgY3VzdG9tUGFyYW1zRW5kU2Vzc2lvblJlcXVlc3Q6IHt9LFxuICBjdXN0b21QYXJhbXNDb2RlUmVxdWVzdDoge30sXG4gIGVhZ2VyTG9hZEF1dGhXZWxsS25vd25FbmRwb2ludHM6IHRydWUsXG4gIGRpc2FibGVSZWZyZXNoSWRUb2tlbkF1dGhUaW1lVmFsaWRhdGlvbjogZmFsc2UsXG4gIGVuYWJsZUlkVG9rZW5FeHBpcmVkVmFsaWRhdGlvbkluUmVuZXc6IHRydWUsXG4gIHRva2VuUmVmcmVzaEluU2Vjb25kczogNCxcbiAgcmVmcmVzaFRva2VuUmV0cnlJblNlY29uZHM6IDMsXG4gIG5nc3dCeXBhc3M6IGZhbHNlLFxufTtcbiJdfQ==
export {};
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoib3BlbmlkLWNvbmZpZ3VyYXRpb24uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9hbmd1bGFyLWF1dGgtb2lkYy1jbGllbnQvc3JjL2xpYi9jb25maWcvb3BlbmlkLWNvbmZpZ3VyYXRpb24udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IExvZ0xldmVsIH0gZnJvbSAnLi4vbG9nZ2luZy9sb2ctbGV2ZWwnO1xuaW1wb3J0IHsgQXV0aFdlbGxLbm93bkVuZHBvaW50cyB9IGZyb20gJy4vYXV0aC13ZWxsLWtub3duL2F1dGgtd2VsbC1rbm93bi1lbmRwb2ludHMnO1xuXG5leHBvcnQgaW50ZXJmYWNlIE9wZW5JZENvbmZpZ3VyYXRpb24ge1xuICBjb25maWdJZD86IHN0cmluZztcbiAgLyoqXG4gICAqIFRoZSB1cmwgdG8gdGhlIHNlY3VyZSB0b2tlbiBzZXJ2ZXIgKFNUUykgc2VydmVyLiBUaGUgYXV0aG9yaXR5IGlzc3VlcyB0b2tlbnNcbiAgICogVGhpcyBmaWVsZCBpcyByZXF1aXJlZC5cbiAgICovXG4gIGF1dGhvcml0eT86IHN0cmluZztcbiAgLyoqIE92ZXJyaWRlIHRoZSBkZWZhdWx0IHNlY3VyZSB0b2tlbiBzZXJ2ZXIgd2VsbGtub3duIGVuZHBvaW50IHBvc3RmaXguICovXG4gIGF1dGhXZWxsa25vd25FbmRwb2ludFVybD86IHN0cmluZztcbiAgYXV0aFdlbGxrbm93bkVuZHBvaW50cz86IEF1dGhXZWxsS25vd25FbmRwb2ludHM7XG5cbiAgLyoqIFRoZSByZWRpcmVjdCBVUkwgZGVmaW5lZCBvbiB0aGUgc2VjdXJlIHRva2VuIHNlcnZlci4gKi9cbiAgcmVkaXJlY3RVcmw/OiBzdHJpbmc7XG4gIC8qKlxuICAgKiBUaGUgQ2xpZW50IE1VU1QgdmFsaWRhdGUgdGhhdCB0aGUgYXVkIChhdWRpZW5jZSkgQ2xhaW0gY29udGFpbnMgaXRzIGNsaWVudF9pZCB2YWx1ZVxuICAgKiByZWdpc3RlcmVkIGF0IHRoZSBJc3N1ZXIgaWRlbnRpZmllZCBieSB0aGUgaXNzIChpc3N1ZXIpIENsYWltIGFzIGFuIGF1ZGllbmNlLlxuICAgKiBUaGUgSUQgVG9rZW4gTVVTVCBiZSByZWplY3RlZCBpZiB0aGUgSUQgVG9rZW4gZG9lcyBub3QgbGlzdCB0aGUgQ2xpZW50IGFzIGEgdmFsaWQgYXVkaWVuY2UsXG4gICAqIG9yIGlmIGl0IGNvbnRhaW5zIGFkZGl0aW9uYWwgYXVkaWVuY2VzIG5vdCB0cnVzdGVkIGJ5IHRoZSBDbGllbnQuXG4gICAqL1xuICBjbGllbnRJZD86IHN0cmluZztcbiAgLyoqXG4gICAqICdjb2RlJywgJ2lkX3Rva2VuIHRva2VuJyBvciAnaWRfdG9rZW4nIE5hbWUgb2YgdGhlIGZsb3cgd2hpY2ggY2FuIGJlIGNvbmZpZ3VyZWQuXG4gICAqIFlvdSBtdXN0IHVzZSB0aGUgJ2lkX3Rva2VuIHRva2VuJyBmbG93LCBpZiB5b3Ugd2FudCB0byBhY2Nlc3MgYW4gQVBJIG9yIGdldCB1c2VyIGRhdGEgZnJvbSB0aGUgc2VydmVyLlxuICAgKiBUaGUgYWNjZXNzX3Rva2VuIGlzIHJlcXVpcmVkIGZvciB0aGlzLCBhbmQgb25seSByZXR1cm5lZCB3aXRoIHRoaXMgZmxvdy5cbiAgICovXG4gIHJlc3BvbnNlVHlwZT86IHN0cmluZztcbiAgLyoqXG4gICAqIFRoaXMgaXMgdGhpcyBzY29wZXMgd2hpY2ggYXJlIHJlcXVlc3RlZCBmcm9tIHRoZSBzZXJ2ZXIgZnJvbSB0aGlzIGNsaWVudC5cbiAgICogVGhpcyBtdXN0IG1hdGNoIHRoZSBzZWN1cmUgdG9rZW4gc2VydmVyIGNvbmZpZ3VyYXRpb24uXG4gICAqIFRoZSAnb3BlbmlkJyBzY29wZSBpcyByZXF1aXJlZC4gVGhlICdvZmZsaW5lX2FjY2Vzcycgc2NvcGUgY2FuIGJlIHJlcXVlc3RlZCB3aGVuIHVzaW5nIHJlZnJlc2ggdG9rZW5zXG4gICAqIGJ1dCB0aGlzIGlzIG9wdGlvbmFsIGFuZCBzb21lIHNlY3VyZSB0b2tlbiBzZXJ2ZXIgZG8gbm90IHN1cHBvcnQgdGhpcyBvciByZWNvbW1lbmQgbm90IHJlcXVlc3RpbmcgdGhpcyBldmVuIHdoZW4gdXNpbmdcbiAgICogcmVmcmVzaCB0b2tlbnMgaW4gdGhlIGJyb3dzZXIuXG4gICAqL1xuICBzY29wZT86IHN0cmluZztcbiAgLyoqXG4gICAqIE9wdGlvbmFsIGhkIHBhcmFtZXRlciBmb3IgR29vZ2xlIEF1dGggd2l0aCBwYXJ0aWN1bGFyIEcgU3VpdGUgZG9tYWluLFxuICAgKiBzZWUgaHR0cHM6Ly9kZXZlbG9wZXJzLmdvb2dsZS5jb20vaWRlbnRpdHkvcHJvdG9jb2xzL09wZW5JRENvbm5lY3QjaGQtcGFyYW1cbiAgICovXG4gIGhkUGFyYW0/OiBzdHJpbmc7XG4gIC8qKiBVUkwgYWZ0ZXIgYSBzZXJ2ZXIgbG9nb3V0IGlmIHVzaW5nIHRoZSBlbmQgc2Vzc2lvbiBBUEkuICovXG4gIHBvc3RMb2dvdXRSZWRpcmVjdFVyaT86IHN0cmluZztcbiAgLyoqXHRTdGFydHMgdGhlIE9wZW5JRCBzZXNzaW9uIG1hbmFnZW1lbnQgZm9yIHRoaXMgY2xpZW50LiAqL1xuICBzdGFydENoZWNrU2Vzc2lvbj86IGJvb2xlYW47XG4gIC8qKiBSZW5ld3MgdGhlIGNsaWVudCB0b2tlbnMsIG9uY2UgdGhlIHRva2VuX2lkIGV4cGlyZXMuIENhbiB1c2UgdGhlIGlmcmFtZXMsIG9yIHRoZSByZWZyZXNoIHRva2VucyAqL1xuICBzaWxlbnRSZW5ldz86IGJvb2xlYW47XG4gIC8qKiBBbiBvcHRpb25hbCBVUkwgdG8gaGFuZGxlIHNpbGVudCByZW5ldyBjYWxsYmFja3MgKi9cbiAgc2lsZW50UmVuZXdVcmw/OiBzdHJpbmc7XG4gIC8qKlxuICAgKiBTZXRzIHRoZSBtYXhpbXVtIHdhaXRpbmcgdGltZSBmb3Igc2lsZW50IHJlbmV3IHByb2Nlc3MuIElmIHRoaXMgdGltZSBpcyBleGNlZWRlZCwgdGhlIHNpbGVudCByZW5ldyBzdGF0ZSB3aWxsXG4gICAqIGJlIHJlc2V0LiBEZWZhdWx0ID0gMjAuXG4gICAqICovXG4gIHNpbGVudFJlbmV3VGltZW91dEluU2Vjb25kcz86IG51bWJlcjtcbiAgLyoqXG4gICAqIE1ha2VzIGl0IHBvc3NpYmxlIHRvIGFkZCBhbiBvZmZzZXQgdG8gdGhlIHNpbGVudCByZW5ldyBjaGVjayBpbiBzZWNvbmRzLlxuICAgKiBCeSBlbnRlcmluZyBhIHZhbHVlLCB5b3UgY2FuIHJlbmV3IHRoZSB0b2tlbnMsIGJlZm9yZSB0aGUgdG9rZW5zIGV4cGlyZS5cbiAgICovXG4gIHJlbmV3VGltZUJlZm9yZVRva2VuRXhwaXJlc0luU2Vjb25kcz86IG51bWJlcjtcbiAgLyoqXG4gICAqIFdoZW4gc2V0IHRvIHRydWUsIHJlZnJlc2ggdG9rZW5zIGFyZSB1c2VkIHRvIHJlbmV3IHRoZSB1c2VyIHNlc3Npb24uXG4gICAqIFdoZW4gc2V0IHRvIGZhbHNlLCBzdGFuZGFyZCBzaWxlbnQgcmVuZXcgaXMgdXNlZC5cbiAgICogRGVmYXVsdCB2YWx1ZSBpcyBmYWxzZS5cbiAgICovXG4gIHVzZVJlZnJlc2hUb2tlbj86IGJvb2xlYW47XG4gIC8qKlxuICAgKiBBY3RpdmF0ZXMgUHVzaGVkIEF1dGhvcmlzYXRpb24gUmVxdWVzdHMgZm9yIGxvZ2luIGFuZCBwb3B1cCBsb2dpbi5cbiAgICogTm90IGNvbXBhdGlibGUgd2l0aCBJZnJhbWUgcmVuZXcuXG4gICAqL1xuICB1c2VQdXNoZWRBdXRob3Jpc2F0aW9uUmVxdWVzdHM/OiBib29sZWFuO1xuICAvKipcbiAgICogQSB0b2tlbiBvYnRhaW5lZCBieSB1c2luZyBhIHJlZnJlc2ggdG9rZW4gbm9ybWFsbHkgZG9lc24ndCBjb250YWluIGEgbm9uY2UgdmFsdWUuXG4gICAqIEhvd2V2ZXIsIHNvbWUgT0lEQyBlbmRwb2ludCBpbXBsZW1lbnRhdGlvbnMgZG8gc2VuZCBvbmUuIFRoZSBsaWJyYXJ5IGNoZWNrcyB0byBzZWUgaWYgdGhlIG5vbmNlIGlzIHByZXNlbnQuXG4gICAqIE5vdGUgdGhhdCBpZiB0aGUgbm9uY2UgdmFsdWUgaXMgcHJlc2VudCwgaXQgd2lsbCBub3QgYmUgdmVyaWZpZWQuXG4gICAqIFRoaXMgaXMgbm90IHJlY29tbWVuZGVkLCBpZiB0aGUgc2VjdXJlIHRva2VuIHNlcnZlciByZXR1cm5zIGEgbm9uY2UgaW4gdGhlIHJlZnJlc2guXG4gICAqIERlZmF1bHQgdmFsdWUgaXMgZmFsc2VcbiAgICovXG4gIGlnbm9yZU5vbmNlQWZ0ZXJSZWZyZXNoPzogYm9vbGVhbjtcbiAgLyoqXG4gICAqIFRoZSBkZWZhdWx0IEFuZ3VsYXIgcm91dGUgd2hpY2ggaXMgdXNlZCBhZnRlciBhIHN1Y2Nlc3NmdWwgbG9naW4sIGlmIG5vdCB1c2luZyB0aGVcbiAgICogdHJpZ2dlcl9hdXRob3JpemF0aW9uX3Jlc3VsdF9ldmVudFxuICAgKi9cbiAgcG9zdExvZ2luUm91dGU/OiBzdHJpbmc7XG4gIC8qKiBSb3V0ZSwgaWYgdGhlIHNlcnZlciByZXR1cm5zIGEgNDAzLiBUaGlzIGlzIGFuIEFuZ3VsYXIgcm91dGUuIEhUVFAgNDAzICovXG4gIGZvcmJpZGRlblJvdXRlPzogc3RyaW5nO1xuICAvKiogUm91dGUsIGlmIHRoZSBzZXJ2ZXIgcmV0dXJucyBhIDQwMS4gVGhpcyBpcyBhbiBBbmd1bGFyIHJvdXRlLiBIVFRQIDQwMSAqL1xuICB1bmF1dGhvcml6ZWRSb3V0ZT86IHN0cmluZztcbiAgLyoqIFdoZW4gc2V0IHRvIHRydWUsIGxpYnJhcnkgYXV0b21hdGljYWxseSBnZXRzIHVzZXIgaW5mbyBhZnRlciBhdXRoZW50aWNhdGlvbiAqL1xuICBhdXRvVXNlckluZm8/OiBib29sZWFuO1xuICAvKiogV2hlbiBzZXQgdG8gdHJ1ZSwgbGlicmFyeSBhdXRvbWF0aWNhbGx5IGdldHMgdXNlciBpbmZvIGFmdGVyIHRva2VuIHJlbmV3ICovXG4gIHJlbmV3VXNlckluZm9BZnRlclRva2VuUmVuZXc/OiBib29sZWFuO1xuICAvKiogVXNlZCBmb3IgY3VzdG9tIHN0YXRlIGxvZ2ljIGhhbmRsaW5nLiBUaGUgc3RhdGUgaXMgbm90IGF1dG9tYXRpY2FsbHkgcmVzZXQgd2hlbiBzZXQgdG8gZmFsc2UgKi9cbiAgYXV0b0NsZWFuU3RhdGVBZnRlckF1dGhlbnRpY2F0aW9uPzogYm9vbGVhbjtcbiAgLyoqXG4gICAqIFRoaXMgY2FuIGJlIHNldCB0byB0cnVlIHdoaWNoIGVtaXRzIGFuIGV2ZW50IGluc3RlYWQgb2YgYW4gYW5ndWxhciByb3V0ZSBjaGFuZ2UuXG4gICAqIEluc3RlYWQgb2YgZm9yY2luZyB0aGUgYXBwbGljYXRpb24gY29uc3VtaW5nIHRoaXMgbGlicmFyeSB0byBhdXRvbWF0aWNhbGx5IHJlZGlyZWN0IHRvIG9uZSBvZiB0aGUgM1xuICAgKiBoYXJkLWNvbmZpZ3VyZWQgcm91dGVzIChzdGFydCwgdW5hdXRob3JpemVkLCBmb3JiaWRkZW4pLCB0aGlzIG1vZGlmaWNhdGlvbiB3aWxsIGFkZCBhbiBleHRyYVxuICAgKiBjb25maWd1cmF0aW9uIG9wdGlvbiB0byBvdmVycmlkZSBzdWNoIGJlaGF2aW9yIGFuZCB0cmlnZ2VyIGFuIGV2ZW50IHRoYXQgd2lsbCBhbGxvdyB0byBzdWJzY3JpYmUgdG9cbiAgICogaXQgYW5kIGxldCB0aGUgYXBwbGljYXRpb24gcGVyZm9ybSBvdGhlciBhY3Rpb25zLiBUaGlzIHdvdWxkIGJlIHVzZWZ1bCB0byBhbGxvdyB0aGUgYXBwbGljYXRpb24gdG9cbiAgICogc2F2ZSBhbiBpbml0aWFsIHJldHVybiB1cmwgc28gdGhhdCB0aGUgdXNlciBpcyByZWRpcmVjdGVkIHRvIGl0IGFmdGVyIGEgc3VjY2Vzc2Z1bCBsb2dpbiBvbiB0aGUgc2VjdXJlIHRva2VuIHNlcnZlclxuICAgKiAoaWU6IHNhdmluZyB0aGUgcmV0dXJuIHVybCBwcmV2aW91c2x5IG9uIHNlc3Npb25TdG9yYWdlIGFuZCB0aGVuIHJldHJpZXZpbmcgaXQgZHVyaW5nIHRoZSB0cmlnZ2VyaW5nIG9mIHRoZSBldmVudCkuXG4gICAqL1xuICB0cmlnZ2VyQXV0aG9yaXphdGlvblJlc3VsdEV2ZW50PzogYm9vbGVhbjtcbiAgLyoqIDAsIDEsIDIgY2FuIGJlIHVzZWQgdG8gc2V0IHRoZSBsb2cgbGV2ZWwgZGlzcGxheWVkIGluIHRoZSBjb25zb2xlLiAqL1xuICBsb2dMZXZlbD86IExvZ0xldmVsO1xuICAvKiogXHRNYWtlIGl0IHBvc3NpYmxlIHRvIHR1cm4gdGhlIGlzcyB2YWxpZGF0aW9uIG9mZiBwZXIgY29uZmlndXJhdGlvbi4gWW91IHNob3VsZCBub3QgdHVybiB0aGlzIG9mZiEgKi9cbiAgaXNzVmFsaWRhdGlvbk9mZj86IGJvb2xlYW47XG4gIC8qKlxuICAgKiBJZiB0aGlzIGlzIGFjdGl2ZSwgdGhlIGhpc3RvcnkgaXMgbm90IGNsZWFuZWQgdXAgb24gYW4gYXV0aG9yaXplIGNhbGxiYWNrLlxuICAgKiBUaGlzIGNhbiBiZSB1c2VkLCB3aGVuIHRoZSBhcHBsaWNhdGlvbiBuZWVkcyB0byBwcmVzZXJ2ZSB0aGUgaGlzdG9yeS5cbiAgICovXG4gIGhpc3RvcnlDbGVhbnVwT2ZmPzogYm9vbGVhbjtcbiAgLyoqXG4gICAqIEFtb3VudCBvZiBvZmZzZXQgYWxsb3dlZCBiZXR3ZWVuIHRoZSBzZXJ2ZXIgY3JlYXRpbmcgdGhlIHRva2VuLCBhbmQgdGhlIGNsaWVudCBhcHAgcmVjZWl2aW5nIHRoZSBpZF90b2tlbi5cbiAgICogVGhlIGRpZmYgaW4gdGltZSBiZXR3ZWVuIHRoZSBzZXJ2ZXIgdGltZSBhbmQgY2xpZW50IHRpbWUgaXMgYWxzbyBpbXBvcnRhbnQgaW4gdmFsaWRhdGluZyB0aGlzIHZhbHVlLlxuICAgKiBBbGwgdGltZXMgYXJlIGluIFVUQy5cbiAgICovXG4gIG1heElkVG9rZW5JYXRPZmZzZXRBbGxvd2VkSW5TZWNvbmRzPzogbnVtYmVyO1xuICAvKipcbiAgICogVGhpcyBhbGxvd3MgdGhlIGFwcGxpY2F0aW9uIHRvIGRpc2FibGUgdGhlIGlhdCBvZmZzZXQgdmFsaWRhdGlvbiBjaGVjay5cbiAgICogVGhlIGlhdCBDbGFpbSBjYW4gYmUgdXNlZCB0byByZWplY3QgdG9rZW5zIHRoYXQgd2VyZSBpc3N1ZWQgdG9vIGZhciBhd2F5IGZyb20gdGhlIGN1cnJlbnQgdGltZSxcbiAgICogbGltaXRpbmcgdGhlIGFtb3VudCBvZiB0aW1lIHRoYXQgbm9uY2VzIG5lZWQgdG8gYmUgc3RvcmVkIHRvIHByZXZlbnQgYXR0YWNrcy5cbiAgICogVGhlIGFjY2VwdGFibGUgcmFuZ2UgaXMgY2xpZW50IHNwZWNpZmljLlxuICAgKi9cbiAgZGlzYWJsZUlhdE9mZnNldFZhbGlkYXRpb24/OiBib29sZWFuO1xuICAvKiogVGhlIHN0b3JhZ2UgbWVjaGFuaXNtIHRvIHVzZSAqL1xuICBzdG9yYWdlPzogYW55O1xuICAvKiogRXh0cmEgcGFyYW1ldGVycyB0byBhZGQgdG8gdGhlIGF1dGhvcml6YXRpb24gVVJMIHJlcXVlc3QgKi9cbiAgY3VzdG9tUGFyYW1zQXV0aFJlcXVlc3Q/OiB7IFtrZXk6IHN0cmluZ106IHN0cmluZyB8IG51bWJlciB8IGJvb2xlYW4gfTtcblxuICAvKiogRXh0cmEgcGFyYW1ldGVycyB0byBhZGQgdG8gdGhlIHJlZnJlc2ggdG9rZW4gcmVxdWVzdCBib2R5ICovXG4gIGN1c3RvbVBhcmFtc1JlZnJlc2hUb2tlblJlcXVlc3Q/OiB7IFtrZXk6IHN0cmluZ106IHN0cmluZyB8IG51bWJlciB8IGJvb2xlYW4gfTtcblxuICAvKiogRXh0cmEgcGFyYW1ldGVycyB0byBhZGQgdG8gdGhlIGF1dGhvcml6YXRpb24gRW5kU2Vzc2lvbiByZXF1ZXN0ICovXG4gIGN1c3RvbVBhcmFtc0VuZFNlc3Npb25SZXF1ZXN0PzogeyBba2V5OiBzdHJpbmddOiBzdHJpbmcgfCBudW1iZXIgfCBib29sZWFuIH07XG5cbiAgLyoqIEV4dHJhIHBhcmFtZXRlcnMgdG8gYWRkIHRvIHRoZSB0b2tlbiBVUkwgcmVxdWVzdCAqL1xuICBjdXN0b21QYXJhbXNDb2RlUmVxdWVzdD86IHsgW2tleTogc3RyaW5nXTogc3RyaW5nIHwgbnVtYmVyIHwgYm9vbGVhbiB9O1xuXG4gIC8qKiBEZW5vdGVzIGlmIHRoZSBBdXRoV2VsbEtub3duRW5kcG9pbnRzIHNob3VsZCBiZSBsb2FkZWQgYXQgc3RhcnR1cCBvciB3aGVuIHRoZSB1c2VyIGNhbGxzIHRoZSBhdXRob3JpemUgbWV0aG9kLiAqL1xuICBlYWdlckxvYWRBdXRoV2VsbEtub3duRW5kcG9pbnRzPzogYm9vbGVhbjtcblxuICAvLyBBenVyZSBCMkMgaGF2ZSBpbXBsZW1lbnRlZCB0aGlzIGluY29ycmVjdGx5LiBBZGQgc3VwcG9ydCBmb3IgdG8gZGlzYWJsZSB0aGlzIHVudGlsIGZpeGVkLlxuICAvKiogZGlzYWJsZXMgdGhlIGF1dGhfdGltZSB2YWxpZGF0aW9uIGZvciBpZF90b2tlbnMgaW4gYSByZWZyZXNoIGR1ZSB0byBBenVyZSdzIGluY29ycmVjdCBpbXBsZW1lbnRhdGlvbiAqL1xuICBkaXNhYmxlUmVmcmVzaElkVG9rZW5BdXRoVGltZVZhbGlkYXRpb24/OiBib29sZWFuO1xuXG4gIC8qKiBlbmFibGVzIHRoZSBpZF90b2tlbiB2YWxpZGF0aW9uLCBkZWZhdWx0IHZhbHVlIGlzIHRydWUuIFlvdSBjYW4gZGlzYWJsZSB0aGlzIHZhbGlkYXRpb24gaWYgeW91IHdvdWxkIGxpa2UgdG8gaWdub3JlIHRoZSBleHBpcmVkIHZhbHVlIGluIHRoZSByZW5ldyBwcm9jZXNzLiBJZiBubyBpZF90b2tlbiBpcyByZXR1cm5lZCBpbiB1c2luZyByZWZyZXNoIHRva2Vucywgc2V0IHRoaXMgdG8gZmFsc2UuICovXG4gIGVuYWJsZUlkVG9rZW5FeHBpcmVkVmFsaWRhdGlvbkluUmVuZXc/OiBib29sZWFuO1xuXG4gIC8qKiBDb250cm9scyB0aGUgcGVyaW9kaWMgY2hlY2sgdGltZSBpbnRlcnZhbCBpbiBzZWN0aW9ucy5cbiAgICogRGVmYXVsdCB2YWx1ZSBpcyAzXG4gICAqL1xuICB0b2tlblJlZnJlc2hJblNlY29uZHM/OiBudW1iZXI7XG4gIC8qKlxuICAgKiBBcnJheSBvZiBzZWN1cmUgdXJscyBvbiB3aGljaCB0aGUgdG9rZW4gc2hvdWxkIGJlIHNlbmQgaWYgdGhlIGludGVyY2VwdG9yIGlzIGFkZGVkIHRvIHRoZSBIVFRQX0lOVEVSQ0VQVE9SU1xuICAgKi9cbiAgc2VjdXJlUm91dGVzPzogc3RyaW5nW107XG4gIC8qKlxuICAgKiBDb250cm9scyB0aGUgcGVyaW9kaWMgcmV0cnkgdGltZSBpbnRlcnZhbCBmb3IgcmV0cmlldmluZyBuZXcgdG9rZW5zIGluIHNlY29uZHMuLlxuICAgKiBzaWxlbnRSZW5ld1RpbWVvdXRJblNlY29uZHMgYW5kIHRva2VuUmVmcmVzaEluU2Vjb25kcyBhcmUgdXBwZXIgYm91bmRzIGZvciB0aGlzIHZhbHVlLlxuICAgKiBEZWZhdWx0IHZhbHVlIGlzIDNcbiAgICovXG4gIHJlZnJlc2hUb2tlblJldHJ5SW5TZWNvbmRzPzogbnVtYmVyO1xuICAvKiogQWRkcyB0aGUgbmdzdy1ieXBhc3MgcGFyYW0gdG8gYWxsIHJlcXVlc3RzICovXG4gIG5nc3dCeXBhc3M/OiBib29sZWFuO1xufVxuIl19
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoib3BlbmlkLWNvbmZpZ3VyYXRpb24uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9hbmd1bGFyLWF1dGgtb2lkYy1jbGllbnQvc3JjL2xpYi9jb25maWcvb3BlbmlkLWNvbmZpZ3VyYXRpb24udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IExvZ0xldmVsIH0gZnJvbSAnLi4vbG9nZ2luZy9sb2ctbGV2ZWwnO1xuaW1wb3J0IHsgQXV0aFdlbGxLbm93bkVuZHBvaW50cyB9IGZyb20gJy4vYXV0aC13ZWxsLWtub3duL2F1dGgtd2VsbC1rbm93bi1lbmRwb2ludHMnO1xuXG5leHBvcnQgaW50ZXJmYWNlIE9wZW5JZENvbmZpZ3VyYXRpb24ge1xuICAvKipcbiAgICogVG8gaWRlbnRpZnkgYSBjb25maWd1cmF0aW9uIHRoZSBgY29uZmlnSWRgIHBhcmFtZXRlciB3YXMgaW50cm9kdWNlZC5cbiAgICogSWYgeW91IGRvIG5vdCBleHBsaWNpdGx5IHNldCB0aGlzIHZhbHVlLCB0aGUgbGlicmFyeSB3aWxsIGdlbmVyYXRlXG4gICAqIGFuZCBhc3NpZ24gdGhlIHZhbHVlIGZvciB5b3UuIElmIHNldCwgdGhlIGNvbmZpZ3VyZWQgdmFsdWUgaXMgdXNlZC5cbiAgICogVGhlIHZhbHVlIGlzIG9wdGlvbmFsLlxuICAgKi9cbiAgY29uZmlnSWQ/OiBzdHJpbmc7XG4gIC8qKlxuICAgKiBUaGUgdXJsIHRvIHRoZSBTZWN1cml0eSBUb2tlbiBTZXJ2aWNlIChTVFMpLiBUaGUgYXV0aG9yaXR5IGlzc3VlcyB0b2tlbnMuXG4gICAqIFRoaXMgZmllbGQgaXMgcmVxdWlyZWQuXG4gICAqL1xuICBhdXRob3JpdHk/OiBzdHJpbmc7XG4gIC8qKiBPdmVycmlkZSB0aGUgZGVmYXVsdCBTZWN1cml0eSBUb2tlbiBTZXJ2aWNlIHdlbGxrbm93biBlbmRwb2ludCBwb3N0Zml4LiAqL1xuICBhdXRoV2VsbGtub3duRW5kcG9pbnRVcmw/OiBzdHJpbmc7XG4gIGF1dGhXZWxsa25vd25FbmRwb2ludHM/OiBBdXRoV2VsbEtub3duRW5kcG9pbnRzO1xuXG4gIC8qKiBUaGUgcmVkaXJlY3QgVVJMIGRlZmluZWQgb24gdGhlIFNlY3VyaXR5IFRva2VuIFNlcnZpY2UuICovXG4gIHJlZGlyZWN0VXJsPzogc3RyaW5nO1xuICAvKipcbiAgICogVGhlIENsaWVudCBNVVNUIHZhbGlkYXRlIHRoYXQgdGhlIGF1ZCAoYXVkaWVuY2UpIENsYWltIGNvbnRhaW5zIGl0cyBgY2xpZW50X2lkYCB2YWx1ZVxuICAgKiByZWdpc3RlcmVkIGF0IHRoZSBJc3N1ZXIgaWRlbnRpZmllZCBieSB0aGUgaXNzIChpc3N1ZXIpIENsYWltIGFzIGFuIGF1ZGllbmNlLlxuICAgKiBUaGUgSUQgVG9rZW4gTVVTVCBiZSByZWplY3RlZCBpZiB0aGUgSUQgVG9rZW4gZG9lcyBub3QgbGlzdCB0aGUgQ2xpZW50IGFzIGEgdmFsaWQgYXVkaWVuY2UsXG4gICAqIG9yIGlmIGl0IGNvbnRhaW5zIGFkZGl0aW9uYWwgYXVkaWVuY2VzIG5vdCB0cnVzdGVkIGJ5IHRoZSBDbGllbnQuXG4gICAqL1xuICBjbGllbnRJZD86IHN0cmluZztcbiAgLyoqXG4gICAqIGBjb2RlYCwgYGlkX3Rva2VuIHRva2VuYCBvciBgaWRfdG9rZW5gLlxuICAgKiBOYW1lIG9mIHRoZSBmbG93IHdoaWNoIGNhbiBiZSBjb25maWd1cmVkLlxuICAgKiBZb3UgbXVzdCB1c2UgdGhlIGBpZF90b2tlbiB0b2tlbmAgZmxvdywgaWYgeW91IHdhbnQgdG8gYWNjZXNzIGFuIEFQSVxuICAgKiBvciBnZXQgdXNlciBkYXRhIGZyb20gdGhlIHNlcnZlci4gVGhlIGBhY2Nlc3NfdG9rZW5gIGlzIHJlcXVpcmVkIGZvciB0aGlzLFxuICAgKiBhbmQgb25seSByZXR1cm5lZCB3aXRoIHRoaXMgZmxvdy5cbiAgICovXG4gIHJlc3BvbnNlVHlwZT86IHN0cmluZztcbiAgLyoqXG4gICAqIExpc3Qgb2Ygc2NvcGVzIHdoaWNoIGFyZSByZXF1ZXN0ZWQgZnJvbSB0aGUgc2VydmVyIGZyb20gdGhpcyBjbGllbnQuXG4gICAqIFRoaXMgbXVzdCBtYXRjaCB0aGUgU2VjdXJpdHkgVG9rZW4gU2VydmljZSBjb25maWd1cmF0aW9uIGZvciB0aGUgY2xpZW50IHlvdSB1c2UuXG4gICAqIFRoZSBgb3BlbmlkYCBzY29wZSBpcyByZXF1aXJlZC4gVGhlIGBvZmZsaW5lX2FjY2Vzc2Agc2NvcGUgY2FuIGJlIHJlcXVlc3RlZCB3aGVuIHVzaW5nIHJlZnJlc2ggdG9rZW5zXG4gICAqIGJ1dCB0aGlzIGlzIG9wdGlvbmFsIGFuZCBzb21lIFNlY3VyaXR5IFRva2VuIFNlcnZpY2UgZG8gbm90IHN1cHBvcnQgdGhpcyBvciByZWNvbW1lbmQgbm90IHJlcXVlc3RpbmcgdGhpcyBldmVuIHdoZW4gdXNpbmdcbiAgICogcmVmcmVzaCB0b2tlbnMgaW4gdGhlIGJyb3dzZXIuXG4gICAqL1xuICBzY29wZT86IHN0cmluZztcbiAgLyoqXG4gICAqIE9wdGlvbmFsIGhkIHBhcmFtZXRlciBmb3IgR29vZ2xlIEF1dGggd2l0aCBwYXJ0aWN1bGFyIEcgU3VpdGUgZG9tYWluLFxuICAgKiBzZWUgaHR0cHM6Ly9kZXZlbG9wZXJzLmdvb2dsZS5jb20vaWRlbnRpdHkvcHJvdG9jb2xzL09wZW5JRENvbm5lY3QjaGQtcGFyYW1cbiAgICovXG4gIGhkUGFyYW0/OiBzdHJpbmc7XG4gIC8qKiBVUkwgdG8gcmVkaXJlY3QgdG8gYWZ0ZXIgYSBzZXJ2ZXIgbG9nb3V0IGlmIHVzaW5nIHRoZSBlbmQgc2Vzc2lvbiBBUEkuICovXG4gIHBvc3RMb2dvdXRSZWRpcmVjdFVyaT86IHN0cmluZztcbiAgLyoqXHRTdGFydHMgdGhlIE9wZW5JRCBzZXNzaW9uIG1hbmFnZW1lbnQgZm9yIHRoaXMgY2xpZW50LiAqL1xuICBzdGFydENoZWNrU2Vzc2lvbj86IGJvb2xlYW47XG4gIC8qKiBSZW5ld3MgdGhlIGNsaWVudCB0b2tlbnMsIG9uY2UgdGhlIGlkX3Rva2VuIGV4cGlyZXMuIENhbiB1c2UgaWZyYW1lcyBvciByZWZyZXNoIHRva2Vucy4gKi9cbiAgc2lsZW50UmVuZXc/OiBib29sZWFuO1xuICAvKiogQW4gb3B0aW9uYWwgVVJMIHRvIGhhbmRsZSBzaWxlbnQgcmVuZXcgY2FsbGJhY2tzICovXG4gIHNpbGVudFJlbmV3VXJsPzogc3RyaW5nO1xuICAvKipcbiAgICogU2V0cyB0aGUgbWF4aW11bSB3YWl0aW5nIHRpbWUgZm9yIHNpbGVudCByZW5ldyBwcm9jZXNzLiBJZiB0aGlzIHRpbWUgaXMgZXhjZWVkZWQsIHRoZSBzaWxlbnQgcmVuZXcgc3RhdGUgd2lsbFxuICAgKiBiZSByZXNldC4gRGVmYXVsdCA9IDIwLlxuICAgKiAqL1xuICBzaWxlbnRSZW5ld1RpbWVvdXRJblNlY29uZHM/OiBudW1iZXI7XG4gIC8qKlxuICAgKiBNYWtlcyBpdCBwb3NzaWJsZSB0byBhZGQgYW4gb2Zmc2V0IHRvIHRoZSBzaWxlbnQgcmVuZXcgY2hlY2sgaW4gc2Vjb25kcy5cbiAgICogQnkgZW50ZXJpbmcgYSB2YWx1ZSwgeW91IGNhbiByZW5ldyB0aGUgdG9rZW5zIGJlZm9yZSB0aGUgdG9rZW5zIGV4cGlyZS5cbiAgICovXG4gIHJlbmV3VGltZUJlZm9yZVRva2VuRXhwaXJlc0luU2Vjb25kcz86IG51bWJlcjtcbiAgLyoqXG4gICAqIFdoZW4gc2V0IHRvIHRydWUsIHJlZnJlc2ggdG9rZW5zIGFyZSB1c2VkIHRvIHJlbmV3IHRoZSB1c2VyIHNlc3Npb24uXG4gICAqIFdoZW4gc2V0IHRvIGZhbHNlLCBzdGFuZGFyZCBzaWxlbnQgcmVuZXcgaXMgdXNlZC5cbiAgICogRGVmYXVsdCB2YWx1ZSBpcyBmYWxzZS5cbiAgICovXG4gIHVzZVJlZnJlc2hUb2tlbj86IGJvb2xlYW47XG4gIC8qKlxuICAgKiBBY3RpdmF0ZXMgUHVzaGVkIEF1dGhvcmlzYXRpb24gUmVxdWVzdHMgZm9yIGxvZ2luIGFuZCBwb3B1cCBsb2dpbi5cbiAgICogTm90IGNvbXBhdGlibGUgd2l0aCBpZnJhbWUgcmVuZXcuXG4gICAqL1xuICB1c2VQdXNoZWRBdXRob3Jpc2F0aW9uUmVxdWVzdHM/OiBib29sZWFuO1xuICAvKipcbiAgICogQSB0b2tlbiBvYnRhaW5lZCBieSB1c2luZyBhIHJlZnJlc2ggdG9rZW4gbm9ybWFsbHkgZG9lc24ndCBjb250YWluIGEgbm9uY2UgdmFsdWUuXG4gICAqIFRoZSBsaWJyYXJ5IGNoZWNrcyBpdCBpcyBub3QgdGhlcmUuIEhvd2V2ZXIsIHNvbWUgT0lEQyBlbmRwb2ludCBpbXBsZW1lbnRhdGlvbnMgZG8gc2VuZCBvbmUuXG4gICAqIFNldHRpbmcgYGlnbm9yZU5vbmNlQWZ0ZXJSZWZyZXNoYCB0byBgdHJ1ZWAgZGlzYWJsZXMgdGhlIGNoZWNrIGlmIGEgbm9uY2UgaXMgcHJlc2VudC5cbiAgICogUGxlYXNlIG5vdGUgdGhhdCB0aGUgbm9uY2UgdmFsdWUsIGlmIHByZXNlbnQsIHdpbGwgbm90IGJlIHZlcmlmaWVkLiBEZWZhdWx0IGlzIGBmYWxzZWAuXG4gICAqL1xuICBpZ25vcmVOb25jZUFmdGVyUmVmcmVzaD86IGJvb2xlYW47XG4gIC8qKlxuICAgKiBUaGUgZGVmYXVsdCBBbmd1bGFyIHJvdXRlIHdoaWNoIGlzIHVzZWQgYWZ0ZXIgYSBzdWNjZXNzZnVsIGxvZ2luLCBpZiBub3QgdXNpbmcgdGhlXG4gICAqIGB0cmlnZ2VyQXV0aG9yaXphdGlvblJlc3VsdEV2ZW50YFxuICAgKi9cbiAgcG9zdExvZ2luUm91dGU/OiBzdHJpbmc7XG4gIC8qKiBSb3V0ZSB0byByZWRpcmVjdCB0byBpZiB0aGUgc2VydmVyIHJldHVybnMgYSA0MDMgZXJyb3IuIFRoaXMgaGFzIHRvIGJlIGFuIEFuZ3VsYXIgcm91dGUuIEhUVFAgNDAzLiAqL1xuICBmb3JiaWRkZW5Sb3V0ZT86IHN0cmluZztcbiAgLyoqIFJvdXRlIHRvIHJlZGlyZWN0IHRvIGlmIHRoZSBzZXJ2ZXIgcmV0dXJucyBhIDQwMSBlcnJvci4gVGhpcyBoYXMgdG8gYmUgYW4gQW5ndWxhciByb3V0ZS4gSFRUUCA0MDEuICovXG4gIHVuYXV0aG9yaXplZFJvdXRlPzogc3RyaW5nO1xuICAvKiogV2hlbiBzZXQgdG8gdHJ1ZSwgdGhlIGxpYnJhcnkgYXV0b21hdGljYWxseSBnZXRzIHVzZXIgaW5mbyBhZnRlciBhdXRoZW50aWNhdGlvbiAqL1xuICBhdXRvVXNlckluZm8/OiBib29sZWFuO1xuICAvKiogV2hlbiBzZXQgdG8gdHJ1ZSwgdGhlIGxpYnJhcnkgYXV0b21hdGljYWxseSBnZXRzIHVzZXIgaW5mbyBhZnRlciB0b2tlbiByZW5ldyAqL1xuICByZW5ld1VzZXJJbmZvQWZ0ZXJUb2tlblJlbmV3PzogYm9vbGVhbjtcbiAgLyoqIFVzZWQgZm9yIGN1c3RvbSBzdGF0ZSBsb2dpYyBoYW5kbGluZy4gVGhlIHN0YXRlIGlzIG5vdCBhdXRvbWF0aWNhbGx5IHJlc2V0IHdoZW4gc2V0IHRvIGZhbHNlICovXG4gIGF1dG9DbGVhblN0YXRlQWZ0ZXJBdXRoZW50aWNhdGlvbj86IGJvb2xlYW47XG4gIC8qKlxuICAgKiBUaGlzIGNhbiBiZSBzZXQgdG8gdHJ1ZSB3aGljaCBlbWl0cyBhbiBldmVudCBpbnN0ZWFkIG9mIGFuIEFuZ3VsYXIgcm91dGUgY2hhbmdlLlxuICAgKiBJbnN0ZWFkIG9mIGZvcmNpbmcgdGhlIGFwcGxpY2F0aW9uIGNvbnN1bWluZyB0aGlzIGxpYnJhcnkgdG8gYXV0b21hdGljYWxseSByZWRpcmVjdCB0byBvbmUgb2YgdGhlIDNcbiAgICogaGFyZC1jb25maWd1cmVkIHJvdXRlcyAoc3RhcnQsIHVuYXV0aG9yaXplZCwgZm9yYmlkZGVuKSwgdGhpcyBtb2RpZmljYXRpb24gd2lsbCBhZGQgYW4gZXh0cmFcbiAgICogY29uZmlndXJhdGlvbiBvcHRpb24gdG8gb3ZlcnJpZGUgc3VjaCBiZWhhdmlvciBhbmQgdHJpZ2dlciBhbiBldmVudCB0aGF0IHdpbGwgYWxsb3cgdG8gc3Vic2NyaWJlIHRvXG4gICAqIGl0IGFuZCBsZXQgdGhlIGFwcGxpY2F0aW9uIHBlcmZvcm0gb3RoZXIgYWN0aW9ucy4gVGhpcyB3b3VsZCBiZSB1c2VmdWwgdG8gYWxsb3cgdGhlIGFwcGxpY2F0aW9uIHRvXG4gICAqIHNhdmUgYW4gaW5pdGlhbCByZXR1cm4gVVJMIHNvIHRoYXQgdGhlIHVzZXIgaXMgcmVkaXJlY3RlZCB0byBpdCBhZnRlciBhIHN1Y2Nlc3NmdWwgbG9naW4gb24gdGhlIFNlY3VyaXR5IFRva2VuIFNlcnZpY2VcbiAgICogKGkuZS4gc2F2aW5nIHRoZSByZXR1cm4gVVJMIHByZXZpb3VzbHkgb24gc2Vzc2lvblN0b3JhZ2UgYW5kIHRoZW4gcmV0cmlldmluZyBpdCBkdXJpbmcgdGhlIHRyaWdnZXJpbmcgb2YgdGhlIGV2ZW50KS5cbiAgICovXG4gIHRyaWdnZXJBdXRob3JpemF0aW9uUmVzdWx0RXZlbnQ/OiBib29sZWFuO1xuICAvKiogMCwgMSwgMiBjYW4gYmUgdXNlZCB0byBzZXQgdGhlIGxvZyBsZXZlbCBkaXNwbGF5ZWQgaW4gdGhlIGNvbnNvbGUuICovXG4gIGxvZ0xldmVsPzogTG9nTGV2ZWw7XG4gIC8qKiBNYWtlIGl0IHBvc3NpYmxlIHRvIHR1cm4gb2ZmIHRoZSBpc3MgdmFsaWRhdGlvbiBwZXIgY29uZmlndXJhdGlvbi4gKipZb3Ugc2hvdWxkIG5vdCB0dXJuIHRoaXMgb2ZmISoqICovXG4gIGlzc1ZhbGlkYXRpb25PZmY/OiBib29sZWFuO1xuICAvKipcbiAgICogSWYgdGhpcyBpcyBhY3RpdmUsIHRoZSBoaXN0b3J5IGlzIG5vdCBjbGVhbmVkIHVwIG9uIGFuIGF1dGhvcml6ZSBjYWxsYmFjay5cbiAgICogVGhpcyBjYW4gYmUgdXNlZCB3aGVuIHRoZSBhcHBsaWNhdGlvbiBuZWVkcyB0byBwcmVzZXJ2ZSB0aGUgaGlzdG9yeS5cbiAgICovXG4gIGhpc3RvcnlDbGVhbnVwT2ZmPzogYm9vbGVhbjtcbiAgLyoqXG4gICAqIEFtb3VudCBvZiBvZmZzZXQgYWxsb3dlZCBiZXR3ZWVuIHRoZSBzZXJ2ZXIgY3JlYXRpbmcgdGhlIHRva2VuIGFuZCB0aGUgY2xpZW50IGFwcCByZWNlaXZpbmcgdGhlIGlkX3Rva2VuLlxuICAgKiBUaGUgZGlmZiBpbiB0aW1lIGJldHdlZW4gdGhlIHNlcnZlciB0aW1lIGFuZCBjbGllbnQgdGltZSBpcyBhbHNvIGltcG9ydGFudCBpbiB2YWxpZGF0aW5nIHRoaXMgdmFsdWUuXG4gICAqIEFsbCB0aW1lcyBhcmUgaW4gVVRDLlxuICAgKi9cbiAgbWF4SWRUb2tlbklhdE9mZnNldEFsbG93ZWRJblNlY29uZHM/OiBudW1iZXI7XG4gIC8qKlxuICAgKiBUaGlzIGFsbG93cyB0aGUgYXBwbGljYXRpb24gdG8gZGlzYWJsZSB0aGUgaWF0IG9mZnNldCB2YWxpZGF0aW9uIGNoZWNrLlxuICAgKiBUaGUgaWF0IENsYWltIGNhbiBiZSB1c2VkIHRvIHJlamVjdCB0b2tlbnMgdGhhdCB3ZXJlIGlzc3VlZCB0b28gZmFyIGF3YXkgZnJvbSB0aGUgY3VycmVudCB0aW1lLFxuICAgKiBsaW1pdGluZyB0aGUgYW1vdW50IG9mIHRpbWUgdGhhdCBub25jZXMgbmVlZCB0byBiZSBzdG9yZWQgdG8gcHJldmVudCBhdHRhY2tzLlxuICAgKiBUaGUgYWNjZXB0YWJsZSByYW5nZSBpcyBjbGllbnQgc3BlY2lmaWMuXG4gICAqL1xuICBkaXNhYmxlSWF0T2Zmc2V0VmFsaWRhdGlvbj86IGJvb2xlYW47XG4gIC8qKiBUaGUgc3RvcmFnZSBtZWNoYW5pc20gdG8gdXNlICovXG4gIHN0b3JhZ2U/OiBhbnk7XG4gIC8qKiBFeHRyYSBwYXJhbWV0ZXJzIHRvIGFkZCB0byB0aGUgYXV0aG9yaXphdGlvbiBVUkwgcmVxdWVzdCAqL1xuICBjdXN0b21QYXJhbXNBdXRoUmVxdWVzdD86IHsgW2tleTogc3RyaW5nXTogc3RyaW5nIHwgbnVtYmVyIHwgYm9vbGVhbiB9O1xuXG4gIC8qKiBFeHRyYSBwYXJhbWV0ZXJzIHRvIGFkZCB0byB0aGUgcmVmcmVzaCB0b2tlbiByZXF1ZXN0IGJvZHkgKi9cbiAgY3VzdG9tUGFyYW1zUmVmcmVzaFRva2VuUmVxdWVzdD86IHsgW2tleTogc3RyaW5nXTogc3RyaW5nIHwgbnVtYmVyIHwgYm9vbGVhbiB9O1xuXG4gIC8qKiBFeHRyYSBwYXJhbWV0ZXJzIHRvIGFkZCB0byB0aGUgYXV0aG9yaXphdGlvbiBFbmRTZXNzaW9uIHJlcXVlc3QgKi9cbiAgY3VzdG9tUGFyYW1zRW5kU2Vzc2lvblJlcXVlc3Q/OiB7IFtrZXk6IHN0cmluZ106IHN0cmluZyB8IG51bWJlciB8IGJvb2xlYW4gfTtcblxuICAvKiogRXh0cmEgcGFyYW1ldGVycyB0byBhZGQgdG8gdGhlIHRva2VuIFVSTCByZXF1ZXN0ICovXG4gIGN1c3RvbVBhcmFtc0NvZGVSZXF1ZXN0PzogeyBba2V5OiBzdHJpbmddOiBzdHJpbmcgfCBudW1iZXIgfCBib29sZWFuIH07XG5cbiAgLyoqIFRlbGxzIGlmIHRoZSBgQXV0aFdlbGxLbm93bkVuZHBvaW50c2Agc2hvdWxkIGJlIGxvYWRlZCBhdCBzdGFydHVwIG9yIHdoZW4gdGhlIHVzZXIgY2FsbHMgdGhlIGF1dGhvcml6ZSBtZXRob2QuICovXG4gIGVhZ2VyTG9hZEF1dGhXZWxsS25vd25FbmRwb2ludHM/OiBib29sZWFuO1xuXG4gIC8vIEF6dXJlIEIyQyBoYXZlIGltcGxlbWVudGVkIHRoaXMgaW5jb3JyZWN0bHkuIEFkZCBzdXBwb3J0IGZvciB0byBkaXNhYmxlIHRoaXMgdW50aWwgZml4ZWQuXG4gIC8qKiBEaXNhYmxlcyB0aGUgYXV0aF90aW1lIHZhbGlkYXRpb24gZm9yIGlkX3Rva2VucyBpbiBhIHJlZnJlc2ggZHVlIHRvIEF6dXJlJ3MgaW5jb3JyZWN0IGltcGxlbWVudGF0aW9uLiAqL1xuICBkaXNhYmxlUmVmcmVzaElkVG9rZW5BdXRoVGltZVZhbGlkYXRpb24/OiBib29sZWFuO1xuXG4gIC8qKlxuICAgKiBFbmFibGVzIHRoZSBpZF90b2tlbiB2YWxpZGF0aW9uLCBkZWZhdWx0IHZhbHVlIGlzIGB0cnVlYC5cbiAgICogWW91IGNhbiBkaXNhYmxlIHRoaXMgdmFsaWRhdGlvbiBpZiB5b3UgbGlrZSB0byBpZ25vcmUgdGhlIGV4cGlyZWQgdmFsdWUgaW4gdGhlIHJlbmV3IHByb2Nlc3MuXG4gICAqIElmIG5vIGlkX3Rva2VuIGlzIHJldHVybmVkIGluIHVzaW5nIHJlZnJlc2ggdG9rZW5zLCBzZXQgdGhpcyB0byBgZmFsc2VgLlxuICAgKi9cbiAgZW5hYmxlSWRUb2tlbkV4cGlyZWRWYWxpZGF0aW9uSW5SZW5ldz86IGJvb2xlYW47XG5cbiAgLyoqIENvbnRyb2xzIHRoZSBwZXJpb2RpYyBjaGVjayB0aW1lIGludGVydmFsIGluIHNlY3Rpb25zLlxuICAgKiBEZWZhdWx0IHZhbHVlIGlzIDMuXG4gICAqL1xuICB0b2tlblJlZnJlc2hJblNlY29uZHM/OiBudW1iZXI7XG4gIC8qKlxuICAgKiBBcnJheSBvZiBzZWN1cmUgVVJMcyBvbiB3aGljaCB0aGUgdG9rZW4gc2hvdWxkIGJlIHNlbnQgaWYgdGhlIGludGVyY2VwdG9yIGlzIGFkZGVkIHRvIHRoZSBgSFRUUF9JTlRFUkNFUFRPUlNgLlxuICAgKi9cbiAgc2VjdXJlUm91dGVzPzogc3RyaW5nW107XG4gIC8qKlxuICAgKiBDb250cm9scyB0aGUgcGVyaW9kaWMgcmV0cnkgdGltZSBpbnRlcnZhbCBmb3IgcmV0cmlldmluZyBuZXcgdG9rZW5zIGluIHNlY29uZHMuXG4gICAqIGBzaWxlbnRSZW5ld1RpbWVvdXRJblNlY29uZHNgIGFuZCBgdG9rZW5SZWZyZXNoSW5TZWNvbmRzYCBhcmUgdXBwZXIgYm91bmRzIGZvciB0aGlzIHZhbHVlLlxuICAgKiBEZWZhdWx0IHZhbHVlIGlzIDNcbiAgICovXG4gIHJlZnJlc2hUb2tlblJldHJ5SW5TZWNvbmRzPzogbnVtYmVyO1xuICAvKiogQWRkcyB0aGUgbmdzdy1ieXBhc3MgcGFyYW0gdG8gYWxsIHJlcXVlc3RzICovXG4gIG5nc3dCeXBhc3M/OiBib29sZWFuO1xufVxuIl19

@@ -16,2 +16,3 @@ import { Injectable } from '@angular/core';

const nonce = this.randomService.createRandom(40, configId);
this.loggerService.logDebug(configId, 'Nonce created. nonce:' + nonce);
this.setNonce(nonce, configId);

@@ -92,2 +93,2 @@ return nonce;

}], ctorParameters: function () { return [{ type: i1.StoragePersistenceService }, { type: i2.RandomService }, { type: i3.ConfigurationProvider }, { type: i4.LoggerService }]; } });
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmxvd3MtZGF0YS5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYW5ndWxhci1hdXRoLW9pZGMtY2xpZW50L3NyYy9saWIvZmxvd3MvZmxvd3MtZGF0YS5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7Ozs7OztBQU8zQyxNQUFNLE9BQU8sZ0JBQWdCO0lBQzNCLFlBQ1UseUJBQW9ELEVBQ3BELGFBQTRCLEVBQzVCLHFCQUE0QyxFQUM1QyxhQUE0QjtRQUg1Qiw4QkFBeUIsR0FBekIseUJBQXlCLENBQTJCO1FBQ3BELGtCQUFhLEdBQWIsYUFBYSxDQUFlO1FBQzVCLDBCQUFxQixHQUFyQixxQkFBcUIsQ0FBdUI7UUFDNUMsa0JBQWEsR0FBYixhQUFhLENBQWU7SUFDbkMsQ0FBQztJQUVKLFdBQVcsQ0FBQyxRQUFnQjtRQUMxQixNQUFNLEtBQUssR0FBRyxJQUFJLENBQUMsYUFBYSxDQUFDLFlBQVksQ0FBQyxFQUFFLEVBQUUsUUFBUSxDQUFDLENBQUM7UUFDNUQsSUFBSSxDQUFDLFFBQVEsQ0FBQyxLQUFLLEVBQUUsUUFBUSxDQUFDLENBQUM7UUFFL0IsT0FBTyxLQUFLLENBQUM7SUFDZixDQUFDO0lBRUQsUUFBUSxDQUFDLEtBQWEsRUFBRSxRQUFnQjtRQUN0QyxJQUFJLENBQUMseUJBQXlCLENBQUMsS0FBSyxDQUFDLFdBQVcsRUFBRSxLQUFLLEVBQUUsUUFBUSxDQUFDLENBQUM7SUFDckUsQ0FBQztJQUVELG1CQUFtQixDQUFDLFFBQWdCO1FBQ2xDLE9BQU8sSUFBSSxDQUFDLHlCQUF5QixDQUFDLElBQUksQ0FBQyxrQkFBa0IsRUFBRSxRQUFRLENBQUMsQ0FBQztJQUMzRSxDQUFDO0lBRUQsbUJBQW1CLENBQUMsZ0JBQXdCLEVBQUUsUUFBZ0I7UUFDNUQsSUFBSSxDQUFDLHlCQUF5QixDQUFDLEtBQUss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LENBQUMsYUFBYSxDQUFDLEVBQUUsUUFBUSxDQUFDLENBQUM7SUFDN0csQ0FBQztJQUVELHVCQUF1QixDQUFDLFFBQWdCO1FBQ3RDLElBQUksQ0FBQyx5QkFBeUIsQ0FBQyxLQUFLLENBQUMsMkJBQTJCLEVBQUUsRUFBRSxFQUFFLFFBQVEsQ0FBQyxDQUFDO0lBQ2xGLENBQUM7SUFFTyxpQ0FBaUMsQ0FBQyxRQUFnQjtRQUN4RCxNQUFNLFlBQVksR0FBRyxJQUFJLENBQUMseUJBQXlCLENBQUMsSUFBSSxDQUFDLDJCQUEyQixFQUFFLFFBQVEsQ0FBQyxDQUFDO1FBRWhHLElBQUksQ0FBQyxZQUFZLEVBQUU7WUFDakIsT0FBTyxJQUFJLENBQUM7U0FDYjtRQUVELE9BQU8sSUFBSSxDQUFDLEtBQUssQ0FBQyxZQUFZLENBQUMsQ0FBQztJQUNsQyxDQUFDOzs2R0FyR1UsZ0JBQWdCO2lIQUFoQixnQkFBZ0I7MkZBQWhCLGdCQUFnQjtrQkFENUIsVUFBVSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IENvbmZpZ3VyYXRpb25Qcm92aWRlciB9IGZyb20gJy4uL2NvbmZpZy9wcm92aWRlci9jb25maWcucHJvdmlkZXInO1xuaW1wb3J0IHsgTG9nZ2VyU2VydmljZSB9IGZyb20gJy4uL2xvZ2dpbmcvbG9nZ2VyLnNlcnZpY2UnO1xuaW1wb3J0IHsgU3RvcmFnZVBlcnNpc3RlbmNlU2VydmljZSB9IGZyb20gJy4uL3N0b3JhZ2Uvc3RvcmFnZS1wZXJzaXN0ZW5jZS5zZXJ2aWNlJztcbmltcG9ydCB7IFJhbmRvbVNlcnZpY2UgfSBmcm9tICcuL3JhbmRvbS9yYW5kb20uc2VydmljZSc7XG5cbkBJbmplY3RhYmxlKClcbmV4cG9ydCBjbGFzcyBGbG93c0RhdGFTZXJ2aWNlIHtcbiAgY29uc3RydWN0b3IoXG4gICAgcHJpdmF0ZSBzdG9yYWdlUGVyc2lzdGVuY2VTZXJ2aWNlOiBTdG9yYWdlUGVyc2lzdGVuY2VTZXJ2aWNlLFxuICAgIHByaXZhdGUgcmFuZG9tU2VydmljZTogUmFuZG9tU2VydmljZSxcbiAgICBwcml2YXRlIGNvbmZpZ3VyYXRpb25Qcm92aWRlcjogQ29uZmlndXJhdGlvblByb3ZpZGVyLFxuICAgIHByaXZhdGUgbG9nZ2VyU2VydmljZTogTG9nZ2VyU2VydmljZVxuICApIHt9XG5cbiAgY3JlYXRlTm9uY2UoY29uZmlnSWQ6IHN0cmluZyk6IHN0cmluZyB7XG4gICAgY29uc3Qgbm9uY2UgPSB0aGlzLnJhbmRvbVNlcnZpY2UuY3JlYXRlUmFuZG9tKDQwLCBjb25maWdJZCk7XG4gICAgdGhpcy5zZXROb25jZShub25jZSwgY29uZmlnSWQpO1xuXG4gICAgcmV0dXJuIG5vbmNlO1xuICB9XG5cbiAgc2V0Tm9uY2Uobm9uY2U6IHN0cmluZywgY29uZmlnSWQ6IHN0cmluZyk6IHZvaWQge1xuICAgIHRoaXMuc3RvcmFnZVBlcnNpc3RlbmNlU2VydmljZS53cml0ZSgnYXV0aE5vbmNlJywgbm9uY2UsIGNvbmZpZ0lkKTtcbiAgfVxuXG4gIGdldEF1dGhTdGF0ZUNvbnRyb2woY29uZmlnSWQ6IHN0cmluZyk6IGFueSB7XG4gICAgcmV0dXJuIHRoaXMuc3RvcmFnZVBlcnNpc3RlbmNlU2VydmljZS5yZWFkKCdhdXRoU3RhdGVDb250cm9sJywgY29uZmlnSWQpO1xuICB9XG5cbiAgc2V0QXV0aFN0YXRlQ29udHJvbChhdXRoU3RhdGVDb250cm9sOiBzdHJpbmcsIGNvbmZpZ0lkOiBzdHJpbmcpOiB2b2lkIHtcbiAgICB0aGlzLnN0b3JhZ2VQZXJzaXN0ZW5jZVNlcnZpY2Uud3JpdGUoJ2F1dGhTdGF0ZUNvbnRyb2wnLCBhdXRoU3RhdGVDb250cm9sLCBjb25maWdJZCk7XG4gIH1cblxuICBnZXRFeGlzdGluZ09yQ3JlYXRlQXV0aFN0YXRlQ29udHJvbChjb25maWdJZDogc3RyaW5nKTogYW55IHtcbiAgICBsZXQgc3RhdGUgPSB0aGlzLnN0b3JhZ2VQZXJzaXN0ZW5jZVNlcnZpY2UucmVhZCgnYXV0aFN0YXRlQ29udHJvbCcsIGNvbmZpZ0lkKTtcbiAgICBpZiAoIXN0YXRlKSB7XG4gICAgICBzdGF0ZSA9IHRoaXMucmFuZG9tU2VydmljZS5jcmVhdGVSYW5kb20oNDAsIGNvbmZpZ0lkKTtcbiAgICAgIHRoaXMuc3RvcmFnZVBlcnNpc3RlbmNlU2VydmljZS53cml0ZSgnYXV0aFN0YXRlQ29udHJvbCcsIHN0YXRlLCBjb25maWdJZCk7XG4gICAgfVxuXG4gICAgcmV0dXJuIHN0YXRlO1xuICB9XG5cbiAgc2V0U2Vzc2lvblN0YXRlKHNlc3Npb25TdGF0ZTogYW55LCBjb25maWdJZDogc3RyaW5nKTogdm9pZCB7XG4gICAgdGhpcy5zdG9yYWdlUGVyc2lzdGVuY2VTZXJ2aWNlLndyaXRlKCdzZXNzaW9uX3N0YXRlJywgc2Vzc2lvblN0YXRlLCBjb25maWdJZCk7XG4gIH1cblxuICByZXNldFN0b3JhZ2VGbG93RGF0YShjb25maWdJZDogc3RyaW5nKTogdm9pZCB7XG4gICAgdGhpcy5zdG9yYWdlUGVyc2lzdGVuY2VTZXJ2aWNlLnJlc2V0U3RvcmFnZUZsb3dEYXRhKGNvbmZpZ0lkKTtcbiAgfVxuXG4gIGdldENvZGVWZXJpZmllcihjb25maWdJZDogc3RyaW5nKTogYW55IHtcbiAgICByZXR1cm4gdGhpcy5zdG9yYWdlUGVyc2lzdGVuY2VTZXJ2aWNlLnJlYWQoJ2NvZGVWZXJpZmllcicsIGNvbmZpZ0lkKTtcbiAgfVxuXG4gIGNyZWF0ZUNvZGVWZXJpZmllcihjb25maWdJZDogc3RyaW5nKTogc3RyaW5nIHtcbiAgICBjb25zdCBjb2RlVmVyaWZpZXIgPSB0aGlzLnJhbmRvbVNlcnZpY2UuY3JlYXRlUmFuZG9tKDY3LCBjb25maWdJZCk7XG4gICAgdGhpcy5zdG9yYWdlUGVyc2lzdGVuY2VTZXJ2aWNlLndyaXRlKCdjb2RlVmVyaWZpZXInLCBjb2RlVmVyaWZpZXIsIGNvbmZpZ0lkKTtcblxuICAgIHJldHVybiBjb2RlVmVyaWZpZXI7XG4gIH1cblxuICBpc1NpbGVudFJlbmV3UnVubmluZyhjb25maWdJZDogc3RyaW5nKTogYm9vbGVhbiB7XG4gICAgY29uc3Qgc3RvcmFnZU9iamVjdCA9IHRoaXMuZ2V0U2lsZW50UmVuZXdSdW5uaW5nU3RvcmFnZUVudHJ5KGNvbmZpZ0lkKTtcblxuICAgIGlmICghc3RvcmFnZU9iamVjdCkge1xuICAgICAgcmV0dXJuIGZhbHNlO1xuICAgIH1cblxuICAgIGNvbnN0IHsgc2lsZW50UmVuZXdUaW1lb3V0SW5TZWNvbmRzIH0gPSB0aGlzLmNvbmZpZ3VyYXRpb25Qcm92aWRlci5nZXRPcGVuSURDb25maWd1cmF0aW9uKGNvbmZpZ0lkKTtcbiAgICBjb25zdCB0aW1lT3V0SW5NaWxsaXNlY29uZHMgPSBzaWxlbnRSZW5ld1RpbWVvdXRJblNlY29uZHMgKiAxMDAwO1xuICAgIGNvbnN0IGRhdGVPZkxhdW5jaGVkUHJvY2Vzc1V0YyA9IERhdGUucGFyc2Uoc3RvcmFnZU9iamVjdC5kYXRlT2ZMYXVuY2hlZFByb2Nlc3NVdGMpO1xuICAgIGNvbnN0IGN1cnJlbnREYXRlVXRjID0gRGF0ZS5wYXJzZShuZXcgRGF0ZSgpLnRvSVNPU3RyaW5nKCkpO1xuICAgIGNvbnN0IGVsYXBzZWRUaW1lSW5NaWxsaXNlY29uZHMgPSBNYXRoLmFicyhjdXJyZW50RGF0ZVV0YyAtIGRhdGVPZkxhdW5jaGVkUHJvY2Vzc1V0Yyk7XG4gICAgY29uc3QgaXNQcm9iYWJseVN0dWNrID0gZWxhcHNlZFRpbWVJbk1pbGxpc2Vjb25kcyA+IHRpbWVPdXRJbk1pbGxpc2Vjb25kcztcblxuICAgIGlmIChpc1Byb2JhYmx5U3R1Y2spIHtcbiAgICAgIHRoaXMubG9nZ2VyU2VydmljZS5sb2dEZWJ1Zyhjb25maWdJZCwgJ3NpbGVudCByZW5ldyBwcm9jZXNzIGlzIHByb2JhYmx5IHN0dWNrLCBzdGF0ZSB3aWxsIGJlIHJlc2V0LicsIGNvbmZpZ0lkKTtcbiAgICAgIHRoaXMucmVzZXRTaWxlbnRSZW5ld1J1bm5pbmcoY29uZmlnSWQpO1xuXG4gICAgICByZXR1cm4gZmFsc2U7XG4gICAgfVxuXG4gICAgcmV0dXJuIHN0b3JhZ2VPYmplY3Quc3RhdGUgPT09ICdydW5uaW5nJztcbiAgfVxuXG4gIHNldFNpbGVudFJlbmV3UnVubmluZyhjb25maWdJZDogc3RyaW5nKTogdm9pZCB7XG4gICAgY29uc3Qgc3RvcmFnZU9iamVjdCA9IHtcbiAgICAgIHN0YXRlOiAncnVubmluZycsXG4gICAgICBkYXRlT2ZMYXVuY2hlZFByb2Nlc3NVdGM6IG5ldyBEYXRlKCkudG9JU09TdHJpbmcoKSxcbiAgICB9O1xuXG4gICAgdGhpcy5zdG9yYWdlUGVyc2lzdGVuY2VTZXJ2aWNlLndyaXRlKCdzdG9yYWdlU2lsZW50UmVuZXdSdW5uaW5nJywgSlNPTi5zdHJpbmdpZnkoc3RvcmFnZU9iamVjdCksIGNvbmZpZ0lkKTtcbiAgfVxuXG4gIHJlc2V0U2lsZW50UmVuZXdSdW5uaW5nKGNvbmZpZ0lkOiBzdHJpbmcpOiB2b2lkIHtcbiAgICB0aGlzLnN0b3JhZ2VQZXJzaXN0ZW5jZVNlcnZpY2Uud3JpdGUoJ3N0b3JhZ2VTaWxlbnRSZW5ld1J1bm5pbmcnLCAnJywgY29uZmlnSWQpO1xuICB9XG5cbiAgcHJpdmF0ZSBnZXRTaWxlbnRSZW5ld1J1bm5pbmdTdG9yYWdlRW50cnkoY29uZmlnSWQ6IHN0cmluZyk6IGFueSB7XG4gICAgY29uc3Qgc3RvcmFnZUVudHJ5ID0gdGhpcy5zdG9yYWdlUGVyc2lzdGVuY2VTZXJ2aWNlLnJlYWQoJ3N0b3JhZ2VTaWxlbnRSZW5ld1J1bm5pbmcnLCBjb25maWdJZCk7XG5cbiAgICBpZiAoIXN0b3JhZ2VFbnRyeSkge1xuICAgICAgcmV0dXJuIG51bGw7XG4gICAgfVxuXG4gICAgcmV0dXJuIEpTT04ucGFyc2Uoc3RvcmFnZUVudHJ5KTtcbiAgfVxufVxuIl19
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmxvd3MtZGF0YS5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYW5ndWxhci1hdXRoLW9pZGMtY2xpZW50L3NyYy9saWIvZmxvd3MvZmxvd3MtZGF0YS5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7Ozs7OztBQU8zQyxNQUFNLE9BQU8sZ0JBQWdCO0lBQzNCLFlBQ1UseUJBQW9ELEVBQ3BELGFBQTRCLEVBQzVCLHFCQUE0QyxFQUM1QyxhQUE0QjtRQUg1Qiw4QkFBeUIsR0FBekIseUJBQXlCLENBQTJCO1FBQ3BELGtCQUFhLEdBQWIsYUFBYSxDQUFlO1FBQzVCLDBCQUFxQixHQUFyQixxQkFBcUIsQ0FBdUI7UUFDNUMsa0JBQWEsR0FBYixhQUFhLENBQWU7SUFDbkMsQ0FBQztJQUVKLFdBQVcsQ0FBQyxRQUFnQjtRQUMxQixNQUFNLEtBQUssR0FBRyxJQUFJLENBQUMsYUFBYSxDQUFDLFlBQVksQ0FBQyxFQUFFLEVBQUUsUUFBUSxDQUFDLENBQUM7UUFDNUQsSUFBSSxDQUFDLGFBQWEsQ0FBQyxRQUFRLENBQUMsUUFBUSxFQUFFLHVCQUF1QixHQUFHLEtBQUssQ0FBQyxDQUFDO1FBQ3ZFLElBQUksQ0FBQyxRQUFRLENBQUMsS0FBSyxFQUFFLFFBQVEsQ0FBQyxDQUFDO1FBRS9CLE9BQU8sS0FBSyxDQUFDO0lBQ2YsQ0FBQztJQUVELFFBQVEsQ0FBQyxLQUFhLEVBQUUsUUFBZ0I7UUFDdEMsSUFBSSxDQUFDLHlCQUF5QixDQUFDLEtBQUssQ0FBQyxXQUFXLEVBQUUsS0FBSyxFQUFFLFFBQVEsQ0FBQyxDQUFDO0lBQ3JFLENBQUM7SUFFRCxtQkFBbUIsQ0FBQyxRQUFnQjtRQUNsQyxPQUFPLElBQUksQ0FBQyx5QkFBeUIsQ0FBQyxJQUFJLENBQUMsa0JBQWtCLEVBQUUsUUFBUSxDQUFDLENBQUM7SUFDM0UsQ0FBQztJQUVELG1CQUFtQixDQUFDLGdCQUF3QixFQUFFLFFBQWdCO1FBQzVELElBQUksQ0FBQyx5QkFBeUIsQ0FBQyxLQUFLLENBQUMsa0JBQWtCLEVBQUUsZ0JBQWdCLEVBQUUsUUFBUSxDQUFDLENBQUM7SUFDdkYsQ0FBQztJQUVELG1DQUFtQyxDQUFDLFFBQWdCO1FBQ2xELElBQUksS0FBSyxHQUFHLElBQUksQ0FBQyx5QkFBeUIsQ0FBQyxJQUFJLENBQUMsa0JBQWtCLEVBQUUsUUFBUSxDQUFDLENBQUM7UUFDOUUsSUFBSSxDQUFDLEtBQUssRUFBRTtZQUNWLEtBQUssR0FBRyxJQUFJLENBQUMsYUFBYSxDQUFDLFlBQVksQ0FBQyxFQUFFLEVBQUUsUUFBUSxDQUFDLENBQUM7WUFDdEQsSUFBSSxDQUFDLHlCQUF5QixDQUFDLEtBQUssQ0FBQyxrQkFBa0IsRUFBRSxLQUFLLEVBQUUsUUFBUSxDQUFDLENBQUM7U0FDM0U7UUFFRCxPQUFPLEtBQUssQ0FBQztJQUNmLENBQUM7SUFFRCxlQUFlLENBQUMsWUFBaUIsRUFBRSxRQUFnQjtRQUNqRCxJQUFJLENBQUMseUJBQXlCLENBQUMsS0FBSyxDQUFDLGVBQWUsRUFBRSxZQUFZLEVBQUUsUUFBUSxDQUFDLENBQUM7SUFDaEYsQ0FBQztJQUVELG9CQUFvQixDQUFDLFFBQWdCO1FBQ25DLElBQUksQ0FBQyx5QkFBeUIsQ0FBQyxvQkFBb0IsQ0FBQyxRQUFRLENBQUMsQ0FBQztJQUNoRSxDQUFDO0lBRUQsZUFBZSxDQUFDLFFBQWdCO1FBQzlCLE9BQU8sSUFBSSxDQUFDLHlCQUF5QixDQUFDLElBQUksQ0FBQyxjQUFjLEVBQUUsUUFBUSxDQUFDLENBQUM7SUFDdkUsQ0FBQztJQUVELGtCQUFrQixDQUFDLFFBQWdCO1FBQ2pDLE1BQU0sWUFBWSxHQUFHLElBQUksQ0FBQyxhQUFhLENBQUMsWUFBWSxDQUFDLEVBQUUsRUFBRSxRQUFRLENBQUMsQ0FBQztRQUNuRSxJQUFJLENBQUMseUJBQXlCLENBQUMsS0FBSyxDQUFDLGNBQWMsRUFBRSxZQUFZLEVBQUUsUUFBUSxDQUFDLENBQUM7UUFFN0UsT0FBTyxZQUFZLENBQUM7SUFDdEIsQ0FBQztJQUVELG9CQUFvQixDQUFDLFFBQWdCO1FBQ25DLE1BQU0sYUFBYSxHQUFHLElBQUksQ0FBQyxpQ0FBaUMsQ0FBQyxRQUFRLENBQUMsQ0FBQztRQUV2RSxJQUFJLENBQUMsYUFBYSxFQUFFO1lBQ2xCLE9BQU8sS0FBSyxDQUFDO1NBQ2Q7UUFFRCxNQUFNLEVBQUUsMkJBQTJCLEVBQUUsR0FBRyxJQUFJLENBQUMscUJBQXFCLENBQUMsc0JBQXNCLENBQUMsUUFBUSxDQUFDLENBQUM7UUFDcEcsTUFBTSxxQkFBcUIsR0FBRywyQkFBMkIsR0FBRyxJQUFJLENBQUM7UUFDakUsTUFBTSx3QkFBd0IsR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDLGFBQWEsQ0FBQyx3QkFBd0IsQ0FBQyxDQUFDO1FBQ3BGLE1BQU0sY0FBYyxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsSUFBSSxJQUFJLEVBQUUsQ0FBQyxXQUFXLEVBQUUsQ0FBQyxDQUFDO1FBQzVELE1BQU0seUJBQXlCLEdBQUcsSUFBSSxDQUFDLEdBQUcsQ0FBQyxjQUFjLEdBQUcsd0JBQXdCLENBQUMsQ0FBQztRQUN0RixNQUFNLGVBQWUsR0FBRyx5QkFBeUIsR0FBRyxxQkFBcUIsQ0FBQztRQUUxRSxJQUFJLGVBQWUsRUFBRTtZQUNuQixJQUFJLENBQUMsYUFBYSxDQUFDLFFBQVEsQ0FBQyxRQUFRLEVBQUUsOERBQThELEVBQUUsUUFBUSxDQUFDLENBQUM7WUFDaEgsSUFBSSxDQUFDLHVCQUF1QixDQUFDLFFBQVEsQ0FBQyxDQUFDO1lBRXZDLE9BQU8sS0FBSyxDQUFDO1NBQ2Q7UUFFRCxPQUFPLGFBQWEsQ0FBQyxLQUFLLEtBQUssU0FBUyxDQUFDO0lBQzNDLENBQUM7SUFFRCxxQkFBcUIsQ0FBQyxRQUFnQjtRQUNwQyxNQUFNLGFBQWEsR0FBRztZQUNwQixLQUFLLEVBQUUsU0FBUztZQUNoQix3QkFBd0IsRUFBRSxJQUFJLElBQUksRUFBRSxDQUFDLFdBQVcsRUFBRTtTQUNuRCxDQUFDO1FBRUYsSUFBSSxDQUFDLHlCQUF5QixDQUFDLEtBQUssQ0FBQywyQkFBMkIsRUFBRSxJQUFJLENBQUMsU0FBUyxDQUFDLGFBQWEsQ0FBQyxFQUFFLFFBQVEsQ0FBQyxDQUFDO0lBQzdHLENBQUM7SUFFRCx1QkFBdUIsQ0FBQyxRQUFnQjtRQUN0QyxJQUFJLENBQUMseUJBQXlCLENBQUMsS0FBSyxDQUFDLDJCQUEyQixFQUFFLEVBQUUsRUFBRSxRQUFRLENBQUMsQ0FBQztJQUNsRixDQUFDO0lBRU8saUNBQWlDLENBQUMsUUFBZ0I7UUFDeEQsTUFBTSxZQUFZLEdBQUcsSUFBSSxDQUFDLHlCQUF5QixDQUFDLElBQUksQ0FBQywyQkFBMkIsRUFBRSxRQUFRLENBQUMsQ0FBQztRQUVoRyxJQUFJLENBQUMsWUFBWSxFQUFFO1lBQ2pCLE9BQU8sSUFBSSxDQUFDO1NBQ2I7UUFFRCxPQUFPLElBQUksQ0FBQyxLQUFLLENBQUMsWUFBWSxDQUFDLENBQUM7SUFDbEMsQ0FBQzs7NkdBdEdVLGdCQUFnQjtpSEFBaEIsZ0JBQWdCOzJGQUFoQixnQkFBZ0I7a0JBRDVCLFVBQVUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBDb25maWd1cmF0aW9uUHJvdmlkZXIgfSBmcm9tICcuLi9jb25maWcvcHJvdmlkZXIvY29uZmlnLnByb3ZpZGVyJztcbmltcG9ydCB7IExvZ2dlclNlcnZpY2UgfSBmcm9tICcuLi9sb2dnaW5nL2xvZ2dlci5zZXJ2aWNlJztcbmltcG9ydCB7IFN0b3JhZ2VQZXJzaXN0ZW5jZVNlcnZpY2UgfSBmcm9tICcuLi9zdG9yYWdlL3N0b3JhZ2UtcGVyc2lzdGVuY2Uuc2VydmljZSc7XG5pbXBvcnQgeyBSYW5kb21TZXJ2aWNlIH0gZnJvbSAnLi9yYW5kb20vcmFuZG9tLnNlcnZpY2UnO1xuXG5ASW5qZWN0YWJsZSgpXG5leHBvcnQgY2xhc3MgRmxvd3NEYXRhU2VydmljZSB7XG4gIGNvbnN0cnVjdG9yKFxuICAgIHByaXZhdGUgc3RvcmFnZVBlcnNpc3RlbmNlU2VydmljZTogU3RvcmFnZVBlcnNpc3RlbmNlU2VydmljZSxcbiAgICBwcml2YXRlIHJhbmRvbVNlcnZpY2U6IFJhbmRvbVNlcnZpY2UsXG4gICAgcHJpdmF0ZSBjb25maWd1cmF0aW9uUHJvdmlkZXI6IENvbmZpZ3VyYXRpb25Qcm92aWRlcixcbiAgICBwcml2YXRlIGxvZ2dlclNlcnZpY2U6IExvZ2dlclNlcnZpY2VcbiAgKSB7fVxuXG4gIGNyZWF0ZU5vbmNlKGNvbmZpZ0lkOiBzdHJpbmcpOiBzdHJpbmcge1xuICAgIGNvbnN0IG5vbmNlID0gdGhpcy5yYW5kb21TZXJ2aWNlLmNyZWF0ZVJhbmRvbSg0MCwgY29uZmlnSWQpO1xuICAgIHRoaXMubG9nZ2VyU2VydmljZS5sb2dEZWJ1Zyhjb25maWdJZCwgJ05vbmNlIGNyZWF0ZWQuIG5vbmNlOicgKyBub25jZSk7XG4gICAgdGhpcy5zZXROb25jZShub25jZSwgY29uZmlnSWQpO1xuXG4gICAgcmV0dXJuIG5vbmNlO1xuICB9XG5cbiAgc2V0Tm9uY2Uobm9uY2U6IHN0cmluZywgY29uZmlnSWQ6IHN0cmluZyk6IHZvaWQge1xuICAgIHRoaXMuc3RvcmFnZVBlcnNpc3RlbmNlU2VydmljZS53cml0ZSgnYXV0aE5vbmNlJywgbm9uY2UsIGNvbmZpZ0lkKTtcbiAgfVxuXG4gIGdldEF1dGhTdGF0ZUNvbnRyb2woY29uZmlnSWQ6IHN0cmluZyk6IGFueSB7XG4gICAgcmV0dXJuIHRoaXMuc3RvcmFnZVBlcnNpc3RlbmNlU2VydmljZS5yZWFkKCdhdXRoU3RhdGVDb250cm9sJywgY29uZmlnSWQpO1xuICB9XG5cbiAgc2V0QXV0aFN0YXRlQ29udHJvbChhdXRoU3RhdGVDb250cm9sOiBzdHJpbmcsIGNvbmZpZ0lkOiBzdHJpbmcpOiB2b2lkIHtcbiAgICB0aGlzLnN0b3JhZ2VQZXJzaXN0ZW5jZVNlcnZpY2Uud3JpdGUoJ2F1dGhTdGF0ZUNvbnRyb2wnLCBhdXRoU3RhdGVDb250cm9sLCBjb25maWdJZCk7XG4gIH1cblxuICBnZXRFeGlzdGluZ09yQ3JlYXRlQXV0aFN0YXRlQ29udHJvbChjb25maWdJZDogc3RyaW5nKTogYW55IHtcbiAgICBsZXQgc3RhdGUgPSB0aGlzLnN0b3JhZ2VQZXJzaXN0ZW5jZVNlcnZpY2UucmVhZCgnYXV0aFN0YXRlQ29udHJvbCcsIGNvbmZpZ0lkKTtcbiAgICBpZiAoIXN0YXRlKSB7XG4gICAgICBzdGF0ZSA9IHRoaXMucmFuZG9tU2VydmljZS5jcmVhdGVSYW5kb20oNDAsIGNvbmZpZ0lkKTtcbiAgICAgIHRoaXMuc3RvcmFnZVBlcnNpc3RlbmNlU2VydmljZS53cml0ZSgnYXV0aFN0YXRlQ29udHJvbCcsIHN0YXRlLCBjb25maWdJZCk7XG4gICAgfVxuXG4gICAgcmV0dXJuIHN0YXRlO1xuICB9XG5cbiAgc2V0U2Vzc2lvblN0YXRlKHNlc3Npb25TdGF0ZTogYW55LCBjb25maWdJZDogc3RyaW5nKTogdm9pZCB7XG4gICAgdGhpcy5zdG9yYWdlUGVyc2lzdGVuY2VTZXJ2aWNlLndyaXRlKCdzZXNzaW9uX3N0YXRlJywgc2Vzc2lvblN0YXRlLCBjb25maWdJZCk7XG4gIH1cblxuICByZXNldFN0b3JhZ2VGbG93RGF0YShjb25maWdJZDogc3RyaW5nKTogdm9pZCB7XG4gICAgdGhpcy5zdG9yYWdlUGVyc2lzdGVuY2VTZXJ2aWNlLnJlc2V0U3RvcmFnZUZsb3dEYXRhKGNvbmZpZ0lkKTtcbiAgfVxuXG4gIGdldENvZGVWZXJpZmllcihjb25maWdJZDogc3RyaW5nKTogYW55IHtcbiAgICByZXR1cm4gdGhpcy5zdG9yYWdlUGVyc2lzdGVuY2VTZXJ2aWNlLnJlYWQoJ2NvZGVWZXJpZmllcicsIGNvbmZpZ0lkKTtcbiAgfVxuXG4gIGNyZWF0ZUNvZGVWZXJpZmllcihjb25maWdJZDogc3RyaW5nKTogc3RyaW5nIHtcbiAgICBjb25zdCBjb2RlVmVyaWZpZXIgPSB0aGlzLnJhbmRvbVNlcnZpY2UuY3JlYXRlUmFuZG9tKDY3LCBjb25maWdJZCk7XG4gICAgdGhpcy5zdG9yYWdlUGVyc2lzdGVuY2VTZXJ2aWNlLndyaXRlKCdjb2RlVmVyaWZpZXInLCBjb2RlVmVyaWZpZXIsIGNvbmZpZ0lkKTtcblxuICAgIHJldHVybiBjb2RlVmVyaWZpZXI7XG4gIH1cblxuICBpc1NpbGVudFJlbmV3UnVubmluZyhjb25maWdJZDogc3RyaW5nKTogYm9vbGVhbiB7XG4gICAgY29uc3Qgc3RvcmFnZU9iamVjdCA9IHRoaXMuZ2V0U2lsZW50UmVuZXdSdW5uaW5nU3RvcmFnZUVudHJ5KGNvbmZpZ0lkKTtcblxuICAgIGlmICghc3RvcmFnZU9iamVjdCkge1xuICAgICAgcmV0dXJuIGZhbHNlO1xuICAgIH1cblxuICAgIGNvbnN0IHsgc2lsZW50UmVuZXdUaW1lb3V0SW5TZWNvbmRzIH0gPSB0aGlzLmNvbmZpZ3VyYXRpb25Qcm92aWRlci5nZXRPcGVuSURDb25maWd1cmF0aW9uKGNvbmZpZ0lkKTtcbiAgICBjb25zdCB0aW1lT3V0SW5NaWxsaXNlY29uZHMgPSBzaWxlbnRSZW5ld1RpbWVvdXRJblNlY29uZHMgKiAxMDAwO1xuICAgIGNvbnN0IGRhdGVPZkxhdW5jaGVkUHJvY2Vzc1V0YyA9IERhdGUucGFyc2Uoc3RvcmFnZU9iamVjdC5kYXRlT2ZMYXVuY2hlZFByb2Nlc3NVdGMpO1xuICAgIGNvbnN0IGN1cnJlbnREYXRlVXRjID0gRGF0ZS5wYXJzZShuZXcgRGF0ZSgpLnRvSVNPU3RyaW5nKCkpO1xuICAgIGNvbnN0IGVsYXBzZWRUaW1lSW5NaWxsaXNlY29uZHMgPSBNYXRoLmFicyhjdXJyZW50RGF0ZVV0YyAtIGRhdGVPZkxhdW5jaGVkUHJvY2Vzc1V0Yyk7XG4gICAgY29uc3QgaXNQcm9iYWJseVN0dWNrID0gZWxhcHNlZFRpbWVJbk1pbGxpc2Vjb25kcyA+IHRpbWVPdXRJbk1pbGxpc2Vjb25kcztcblxuICAgIGlmIChpc1Byb2JhYmx5U3R1Y2spIHtcbiAgICAgIHRoaXMubG9nZ2VyU2VydmljZS5sb2dEZWJ1Zyhjb25maWdJZCwgJ3NpbGVudCByZW5ldyBwcm9jZXNzIGlzIHByb2JhYmx5IHN0dWNrLCBzdGF0ZSB3aWxsIGJlIHJlc2V0LicsIGNvbmZpZ0lkKTtcbiAgICAgIHRoaXMucmVzZXRTaWxlbnRSZW5ld1J1bm5pbmcoY29uZmlnSWQpO1xuXG4gICAgICByZXR1cm4gZmFsc2U7XG4gICAgfVxuXG4gICAgcmV0dXJuIHN0b3JhZ2VPYmplY3Quc3RhdGUgPT09ICdydW5uaW5nJztcbiAgfVxuXG4gIHNldFNpbGVudFJlbmV3UnVubmluZyhjb25maWdJZDogc3RyaW5nKTogdm9pZCB7XG4gICAgY29uc3Qgc3RvcmFnZU9iamVjdCA9IHtcbiAgICAgIHN0YXRlOiAncnVubmluZycsXG4gICAgICBkYXRlT2ZMYXVuY2hlZFByb2Nlc3NVdGM6IG5ldyBEYXRlKCkudG9JU09TdHJpbmcoKSxcbiAgICB9O1xuXG4gICAgdGhpcy5zdG9yYWdlUGVyc2lzdGVuY2VTZXJ2aWNlLndyaXRlKCdzdG9yYWdlU2lsZW50UmVuZXdSdW5uaW5nJywgSlNPTi5zdHJpbmdpZnkoc3RvcmFnZU9iamVjdCksIGNvbmZpZ0lkKTtcbiAgfVxuXG4gIHJlc2V0U2lsZW50UmVuZXdSdW5uaW5nKGNvbmZpZ0lkOiBzdHJpbmcpOiB2b2lkIHtcbiAgICB0aGlzLnN0b3JhZ2VQZXJzaXN0ZW5jZVNlcnZpY2Uud3JpdGUoJ3N0b3JhZ2VTaWxlbnRSZW5ld1J1bm5pbmcnLCAnJywgY29uZmlnSWQpO1xuICB9XG5cbiAgcHJpdmF0ZSBnZXRTaWxlbnRSZW5ld1J1bm5pbmdTdG9yYWdlRW50cnkoY29uZmlnSWQ6IHN0cmluZyk6IGFueSB7XG4gICAgY29uc3Qgc3RvcmFnZUVudHJ5ID0gdGhpcy5zdG9yYWdlUGVyc2lzdGVuY2VTZXJ2aWNlLnJlYWQoJ3N0b3JhZ2VTaWxlbnRSZW5ld1J1bm5pbmcnLCBjb25maWdJZCk7XG5cbiAgICBpZiAoIXN0b3JhZ2VFbnRyeSkge1xuICAgICAgcmV0dXJuIG51bGw7XG4gICAgfVxuXG4gICAgcmV0dXJuIEpTT04ucGFyc2Uoc3RvcmFnZUVudHJ5KTtcbiAgfVxufVxuIl19

@@ -60,3 +60,2 @@ import { Injectable } from '@angular/core';

}
console.log(args.length);
if (!!args && !!args.length) {

@@ -112,2 +111,2 @@ console.warn(`[WARN] ${configId} - ${message}`, ...args);

}], ctorParameters: function () { return [{ type: i1.ConfigurationProvider }]; } });
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibG9nZ2VyLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9hbmd1bGFyLWF1dGgtb2lkYy1jbGllbnQvc3JjL2xpYi9sb2dnaW5nL2xvZ2dlci5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFFM0MsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGFBQWEsQ0FBQzs7O0FBR3ZDLE1BQU0sT0FBTyxhQUFhO0lBQ3hCLFlBQW9CLHFCQUE0QztRQUE1QywwQkFBcUIsR0FBckIscUJBQXFCLENBQXVCO0lBQUcsQ0FBQztJQUVwRSxRQUFRLENBQUMsUUFBZ0IsRUFBRSxPQUFZLEVBQUUsR0FBRyxJQUFXO1FBQ3JELElBQUksQ0FBQyxDQUFDLFFBQVEsRUFBRTtZQUNkLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxRQUFRLEVBQUUsT0FBTyxFQUFFLEdBQUcsSUFBSSxDQUFDLENBQUM7U0FDckQ7YUFBTTtZQUNMLElBQUksQ0FBQyxxQkFBcUIsQ0FBQyxPQUFPLEVBQUUsR0FBRyxJQUFJLENBQUMsQ0FBQztTQUM5QztJQUNILENBQUM7SUFFRCxVQUFVLENBQUMsUUFBZ0IsRUFBRSxPQUFZLEVBQUUsR0FBRyxJQUFXO1FBQ3ZELElBQUksQ0FBQyxDQUFDLFFBQVEsRUFBRTtZQUNkLElBQUksQ0FBQyxvQkFBb0IsQ0FBQyxRQUFRLEVBQUUsT0FBTyxFQUFFLEdBQUcsSUFBSSxDQUFDLENBQUM7U0FDdkQ7YUFBTTtZQUNMLElBQUksQ0FBQyx1QkFBdUIsQ0FBQyxPQUFPLEVBQUUsR0FBRyxJQUFJLENBQUMsQ0FBQztTQUNoRDtJQUNILENBQUM7SUFFRCxRQUFRLENBQUMsUUFBZ0IsRUFBRSxPQUFZLEVBQUUsR0FBRyxJQUFXO1FBQ3JELElBQUksQ0FBQyxJQUFJLENBQUMsYUFBYSxDQUFDLFFBQVEsQ0FBQyxFQUFFO1lBQ2pD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QUUsR0FBRyxJQUFJLENBQUMscUJBQXFCLENBQUMsc0JBQXNCLENBQUMsUUFBUSxDQUFDLElBQUksRUFBRSxDQUFDO1FBRXZGLE9BQU8sUUFBUSxJQUFJLGlCQUFpQixDQUFDO0lBQ3ZDLENBQUM7SUFFTyxhQUFhLENBQUMsUUFBZ0I7UUFDcEMsTUFBTSxFQUFFLFFBQVEsRUFBRSxHQUFHLElBQUksQ0FBQyxxQkFBcUIsQ0FBQyxzQkFBc0IsQ0FBQyxRQUFRLENBQUMsSUFBSSxFQUFFLENBQUM7UUFFdkYsSUFBSSxRQUFRLEtBQUssSUFBSSxFQUFFO1lBQ3JCLE9BQU8sS0FBSyxDQUFDO1NBQ2Q7UUFFRCxJQUFJLFFBQVEsS0FBSyxTQUFTLEVBQUU7WUFDMUIsT0FBTyxLQUFLLENBQUM7U0FDZDtRQUVELE9BQU8sSUFBSSxDQUFDO0lBQ2QsQ0FBQztJQUVPLGtCQUFrQixDQUFDLFFBQWdCO1FBQ3pDLE1BQU0sRUFBRSxRQUFRLEVBQUUsR0FBRyxJQUFJLENBQUMscUJBQXFCLENBQUMsc0JBQXNCLENBQUMsUUFBUSxDQUFDLElBQUksRUFBRSxDQUFDO1FBRXZGLE9BQU8sUUFBUSxLQUFLLFFBQVEsQ0FBQyxJQUFJLENBQUM7SUFDcEMsQ0FBQzs7MEdBakhVLGFBQWE7OEdBQWIsYUFBYTsyRkFBYixhQUFhO2tCQUR6QixVQUFVIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQ29uZmlndXJhdGlvblByb3ZpZGVyIH0gZnJvbSAnLi4vY29uZmlnL3Byb3ZpZGVyL2NvbmZpZy5wcm92aWRlcic7XG5pbXBvcnQgeyBMb2dMZXZlbCB9IGZyb20gJy4vbG9nLWxldmVsJztcblxuQEluamVjdGFibGUoKVxuZXhwb3J0IGNsYXNzIExvZ2dlclNlcnZpY2Uge1xuICBjb25zdHJ1Y3Rvcihwcml2YXRlIGNvbmZpZ3VyYXRpb25Qcm92aWRlcjogQ29uZmlndXJhdGlvblByb3ZpZGVyKSB7fVxuXG4gIGxvZ0Vycm9yKGNvbmZpZ0lkOiBzdHJpbmcsIG1lc3NhZ2U6IGFueSwgLi4uYXJnczogYW55W10pOiB2b2lkIHtcbiAgICBpZiAoISFjb25maWdJZCkge1xuICAgICAgdGhpcy5sb2dFcnJvcldpdGhDb25maWcoY29uZmlnSWQsIG1lc3NhZ2UsIC4uLmFyZ3MpO1xuICAgIH0gZWxzZSB7XG4gICAgICB0aGlzLmxvZ0Vycm9yV2l0aG91dENvbmZpZyhtZXNzYWdlLCAuLi5hcmdzKTtcbiAgICB9XG4gIH1cblxuICBsb2dXYXJuaW5nKGNvbmZpZ0lkOiBzdHJpbmcsIG1lc3NhZ2U6IGFueSwgLi4uYXJnczogYW55W10pOiB2b2lkIHtcbiAgICBpZiAoISFjb25maWdJZCkge1xuICAgICAgdGhpcy5sb2dXYXJuaW5nV2l0aENvbmZpZyhjb25maWdJZCwgbWVzc2FnZSwgLi4uYXJncyk7XG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMubG9nV2FybmluZ1dpdGhvdXRDb25maWcobWVzc2FnZSwgLi4uYXJncyk7XG4gICAgfVxuICB9XG5cbiAgbG9nRGVidWcoY29uZmlnSWQ6IHN0cmluZywgbWVzc2FnZTogYW55LCAuLi5hcmdzOiBhbnlbXSk6IHZvaWQge1xuICAgIGlmICghdGhpcy5sb2dMZXZlbElzU2V0KGNvbmZpZ0lkKSkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIGlmICh0aGlzLmxvZ2dpbmdJc1R1cm5lZE9mZihjb25maWdJZCkpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICBpZiAoIXRoaXMuY3VycmVudExvZ0xldmVsSXNFcXVhbE9yU21hbGxlclRoYW4oY29uZmlnSWQsIExvZ0xldmVsLkRlYnVnKSkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIGlmICghIWFyZ3MgJiYgISFhcmdzLmxlbmd0aCkge1xuICAgICAgY29uc29sZS5sb2coYFtERUJVR10gJHtjb25maWdJZH0gLSAke21lc3NhZ2V9YCwgLi4uYXJncyk7XG4gICAgfSBlbHNlIHtcbiAgICAgIGNvbnNvbGUubG9nKGBbREVCVUddICR7Y29uZmlnSWR9IC0gJHttZXNzYWdlfWApO1xuICAgIH1cbiAgfVxuXG4gIHByaXZhdGUgbG9nV2FybmluZ1dpdGhvdXRDb25maWcobWVzc2FnZTogYW55LCAuLi5hcmdzOiBhbnlbXSk6IHZvaWQge1xuICAgIGlmICghIWFyZ3MgJiYgISFhcmdzLmxlbmd0aCkge1xuICAgICAgY29uc29sZS53YXJuKGBbV0FSTl0gLSAke21lc3NhZ2V9YCwgLi4uYXJncyk7XG4gICAgfSBlbHNlIHtcbiAgICAgIGNvbnNvbGUud2FybihgW1dBUk5dIC0gJHttZXNzYWdlfWApO1xuICAgIH1cbiAgfVxuXG4gIHByaXZhdGUgbG9nV2FybmluZ1dpdGhDb25maWcoY29uZmlnSWQ6IHN0cmluZywgbWVzc2FnZTogYW55LCAuLi5hcmdzOiBhbnlbXSk6IHZvaWQge1xuICAgIGlmICghdGhpcy5sb2dMZXZlbElzU2V0KGNvbmZpZ0lkKSkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIGlmICh0aGlzLmxvZ2dpbmdJc1R1cm5lZE9mZihjb25maWdJZCkpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICBpZiAoIXRoaXMuY3VycmVudExvZ0xldmVsSXNFcXVhbE9yU21hbGxlclRoYW4oY29uZmlnSWQsIExvZ0xldmVsLldhcm4pKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgY29uc29sZS5sb2coYXJncy5sZW5ndGgpO1xuXG4gICAgaWYgKCEhYXJncyAmJiAhIWFyZ3MubGVuZ3RoKSB7XG4gICAgICBjb25zb2xlLndhcm4oYFtXQVJOXSAke2NvbmZpZ0lkfSAtICR7bWVzc2FnZX1gLCAuLi5hcmdzKTtcbiAgICB9IGVsc2Uge1xuICAgICAgY29uc29sZS53YXJuKGBbV0FSTl0gJHtjb25maWdJZH0gLSAke21lc3NhZ2V9YCk7XG4gICAgfVxuICB9XG5cbiAgcHJpdmF0ZSBsb2dFcnJvcldpdGhDb25maWcoY29uZmlnSWQ6IHN0cmluZywgbWVzc2FnZTogYW55LCAuLi5hcmdzOiBhbnlbXSk6IHZvaWQge1xuICAgIGlmICh0aGlzLmxvZ2dpbmdJc1R1cm5lZE9mZihjb25maWdJZCkpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICBpZiAoISFhcmdzICYmICEhYXJncy5sZW5ndGgpIHtcbiAgICAgIGNvbnNvbGUuZXJyb3IoYFtFUlJPUl0gJHtjb25maWdJZH0gLSAke21lc3NhZ2V9YCwgLi4uYXJncyk7XG4gICAgfSBlbHNlIHtcbiAgICAgIGNvbnNvbGUuZXJyb3IoYFtFUlJPUl0gJHtjb25maWdJZH0gLSAke21lc3NhZ2V9YCk7XG4gICAgfVxuICB9XG5cbiAgcHJpdmF0ZSBsb2dFcnJvcldpdGhvdXRDb25maWcobWVzc2FnZTogYW55LCAuLi5hcmdzOiBhbnlbXSk6IHZvaWQge1xuICAgIGlmICghIWFyZ3MgJiYgISFhcmdzLmxlbmd0aCkge1xuICAgICAgY29uc29sZS5lcnJvcihgW0VSUk9SXSAtICR7bWVzc2FnZX1gLCAuLi5hcmdzKTtcbiAgICB9IGVsc2Uge1xuICAgICAgY29uc29sZS5lcnJvcihgW0VSUk9SXSAtICR7bWVzc2FnZX1gKTtcbiAgICB9XG4gIH1cblxuICBwcml2YXRlIGN1cnJlbnRMb2dMZXZlbElzRXF1YWxPclNtYWxsZXJUaGFuKGNvbmZpZ0lkOiBzdHJpbmcsIGxvZ0xldmVsVG9Db21wYXJlOiBMb2dMZXZlbCk6IGJvb2xlYW4ge1xuICAgIGNvbnN0IHsgbG9nTGV2ZWwgfSA9IHRoaXMuY29uZmlndXJhdGlvblByb3ZpZGVyLmdldE9wZW5JRENvbmZpZ3VyYXRpb24oY29uZmlnSWQpIHx8IHt9O1xuXG4gICAgcmV0dXJuIGxvZ0xldmVsIDw9IGxvZ0xldmVsVG9Db21wYXJlO1xuICB9XG5cbiAgcHJpdmF0ZSBsb2dMZXZlbElzU2V0KGNvbmZpZ0lkOiBzdHJpbmcpOiBib29sZWFuIHtcbiAgICBjb25zdCB7IGxvZ0xldmVsIH0gPSB0aGlzLmNvbmZpZ3VyYXRpb25Qcm92aWRlci5nZXRPcGVuSURDb25maWd1cmF0aW9uKGNvbmZpZ0lkKSB8fCB7fTtcblxuICAgIGlmIChsb2dMZXZlbCA9PT0gbnVsbCkge1xuICAgICAgcmV0dXJuIGZhbHNlO1xuICAgIH1cblxuICAgIGlmIChsb2dMZXZlbCA9PT0gdW5kZWZpbmVkKSB7XG4gICAgICByZXR1cm4gZmFsc2U7XG4gICAgfVxuXG4gICAgcmV0dXJuIHRydWU7XG4gIH1cblxuICBwcml2YXRlIGxvZ2dpbmdJc1R1cm5lZE9mZihjb25maWdJZDogc3RyaW5nKTogYm9vbGVhbiB7XG4gICAgY29uc3QgeyBsb2dMZXZlbCB9ID0gdGhpcy5jb25maWd1cmF0aW9uUHJvdmlkZXIuZ2V0T3BlbklEQ29uZmlndXJhdGlvbihjb25maWdJZCkgfHwge307XG5cbiAgICByZXR1cm4gbG9nTGV2ZWwgPT09IExvZ0xldmVsLk5vbmU7XG4gIH1cbn1cbiJdfQ==
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibG9nZ2VyLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9hbmd1bGFyLWF1dGgtb2lkYy1jbGllbnQvc3JjL2xpYi9sb2dnaW5nL2xvZ2dlci5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFFM0MsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGFBQWEsQ0FBQzs7O0FBR3ZDLE1BQU0sT0FBTyxhQUFhO0lBQ3hCLFlBQW9CLHFCQUE0QztRQUE1QywwQkFBcUIsR0FBckIscUJBQXFCLENBQXVCO0lBQUcsQ0FBQztJQUVwRSxRQUFRLENBQUMsUUFBZ0IsRUFBRSxPQUFZLEVBQUUsR0FBRyxJQUFXO1FBQ3JELElBQUksQ0FBQyxDQUFDLFFBQVEsRUFBRTtZQUNkLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxRQUFRLEVBQUUsT0FBTyxFQUFFLEdBQUcsSUFBSSxDQUFDLENBQUM7U0FDckQ7YUFBTTtZQUNMLElBQUksQ0FBQyxxQkFBcUIsQ0FBQyxPQUFPLEVBQUUsR0FBRyxJQUFJLENBQUMsQ0FBQztTQUM5QztJQUNILENBQUM7SUFFRCxVQUFVLENBQUMsUUFBZ0IsRUFBRSxPQUFZLEVBQUUsR0FBRyxJQUFXO1FBQ3ZELElBQUksQ0FBQyxDQUFDLFFBQVEsRUFBRTtZQUNkLElBQUksQ0FBQyxvQkFBb0IsQ0FBQyxRQUFRLEVBQUUsT0FBTyxFQUFFLEdBQUcsSUFBSSxDQUFDLENBQUM7U0FDdkQ7YUFBTTtZQUNMLElBQUksQ0FBQyx1QkFBdUIsQ0FBQyxPQUFPLEVBQUUsR0FBRyxJQUFJLENBQUMsQ0FBQztTQUNoRDtJQUNILENBQUM7SUFFRCxRQUFRLENBQUMsUUFBZ0IsRUFBRSxPQUFZLEVBQUUsR0FBRyxJQUFXO1FBQ3JELElBQUksQ0FBQyxJQUFJLENBQUMsYUFBYSxDQUFDLFFBQVEsQ0FBQyxFQUFFO1lBQ2pD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LElBQUksRUFBRSxDQUFDO1FBRXZGLE9BQU8sUUFBUSxJQUFJLGlCQUFpQixDQUFDO0lBQ3ZDLENBQUM7SUFFTyxhQUFhLENBQUMsUUFBZ0I7UUFDcEMsTUFBTSxFQUFFLFFBQVEsRUFBRSxHQUFHLElBQUksQ0FBQyxxQkFBcUIsQ0FBQyxzQkFBc0IsQ0FBQyxRQUFRLENBQUMsSUFBSSxFQUFFLENBQUM7UUFFdkYsSUFBSSxRQUFRLEtBQUssSUFBSSxFQUFFO1lBQ3JCLE9BQU8sS0FBSyxDQUFDO1NBQ2Q7UUFFRCxJQUFJLFFBQVEsS0FBSyxTQUFTLEVBQUU7WUFDMUIsT0FBTyxLQUFLLENBQUM7U0FDZDtRQUVELE9BQU8sSUFBSSxDQUFDO0lBQ2QsQ0FBQztJQUVPLGtCQUFrQixDQUFDLFFBQWdCO1FBQ3pDLE1BQU0sRUFBRSxRQUFRLEVBQUUsR0FBRyxJQUFJLENBQUMscUJBQXFCLENBQUMsc0JBQXNCLENBQUMsUUFBUSxDQUFDLElBQUksRUFBRSxDQUFDO1FBRXZGLE9BQU8sUUFBUSxLQUFLLFFBQVEsQ0FBQyxJQUFJLENBQUM7SUFDcEMsQ0FBQzs7MEdBL0dVLGFBQWE7OEdBQWIsYUFBYTsyRkFBYixhQUFhO2tCQUR6QixVQUFVIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQ29uZmlndXJhdGlvblByb3ZpZGVyIH0gZnJvbSAnLi4vY29uZmlnL3Byb3ZpZGVyL2NvbmZpZy5wcm92aWRlcic7XG5pbXBvcnQgeyBMb2dMZXZlbCB9IGZyb20gJy4vbG9nLWxldmVsJztcblxuQEluamVjdGFibGUoKVxuZXhwb3J0IGNsYXNzIExvZ2dlclNlcnZpY2Uge1xuICBjb25zdHJ1Y3Rvcihwcml2YXRlIGNvbmZpZ3VyYXRpb25Qcm92aWRlcjogQ29uZmlndXJhdGlvblByb3ZpZGVyKSB7fVxuXG4gIGxvZ0Vycm9yKGNvbmZpZ0lkOiBzdHJpbmcsIG1lc3NhZ2U6IGFueSwgLi4uYXJnczogYW55W10pOiB2b2lkIHtcbiAgICBpZiAoISFjb25maWdJZCkge1xuICAgICAgdGhpcy5sb2dFcnJvcldpdGhDb25maWcoY29uZmlnSWQsIG1lc3NhZ2UsIC4uLmFyZ3MpO1xuICAgIH0gZWxzZSB7XG4gICAgICB0aGlzLmxvZ0Vycm9yV2l0aG91dENvbmZpZyhtZXNzYWdlLCAuLi5hcmdzKTtcbiAgICB9XG4gIH1cblxuICBsb2dXYXJuaW5nKGNvbmZpZ0lkOiBzdHJpbmcsIG1lc3NhZ2U6IGFueSwgLi4uYXJnczogYW55W10pOiB2b2lkIHtcbiAgICBpZiAoISFjb25maWdJZCkge1xuICAgICAgdGhpcy5sb2dXYXJuaW5nV2l0aENvbmZpZyhjb25maWdJZCwgbWVzc2FnZSwgLi4uYXJncyk7XG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMubG9nV2FybmluZ1dpdGhvdXRDb25maWcobWVzc2FnZSwgLi4uYXJncyk7XG4gICAgfVxuICB9XG5cbiAgbG9nRGVidWcoY29uZmlnSWQ6IHN0cmluZywgbWVzc2FnZTogYW55LCAuLi5hcmdzOiBhbnlbXSk6IHZvaWQge1xuICAgIGlmICghdGhpcy5sb2dMZXZlbElzU2V0KGNvbmZpZ0lkKSkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIGlmICh0aGlzLmxvZ2dpbmdJc1R1cm5lZE9mZihjb25maWdJZCkpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICBpZiAoIXRoaXMuY3VycmVudExvZ0xldmVsSXNFcXVhbE9yU21hbGxlclRoYW4oY29uZmlnSWQsIExvZ0xldmVsLkRlYnVnKSkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIGlmICghIWFyZ3MgJiYgISFhcmdzLmxlbmd0aCkge1xuICAgICAgY29uc29sZS5sb2coYFtERUJVR10gJHtjb25maWdJZH0gLSAke21lc3NhZ2V9YCwgLi4uYXJncyk7XG4gICAgfSBlbHNlIHtcbiAgICAgIGNvbnNvbGUubG9nKGBbREVCVUddICR7Y29uZmlnSWR9IC0gJHttZXNzYWdlfWApO1xuICAgIH1cbiAgfVxuXG4gIHByaXZhdGUgbG9nV2FybmluZ1dpdGhvdXRDb25maWcobWVzc2FnZTogYW55LCAuLi5hcmdzOiBhbnlbXSk6IHZvaWQge1xuICAgIGlmICghIWFyZ3MgJiYgISFhcmdzLmxlbmd0aCkge1xuICAgICAgY29uc29sZS53YXJuKGBbV0FSTl0gLSAke21lc3NhZ2V9YCwgLi4uYXJncyk7XG4gICAgfSBlbHNlIHtcbiAgICAgIGNvbnNvbGUud2FybihgW1dBUk5dIC0gJHttZXNzYWdlfWApO1xuICAgIH1cbiAgfVxuXG4gIHByaXZhdGUgbG9nV2FybmluZ1dpdGhDb25maWcoY29uZmlnSWQ6IHN0cmluZywgbWVzc2FnZTogYW55LCAuLi5hcmdzOiBhbnlbXSk6IHZvaWQge1xuICAgIGlmICghdGhpcy5sb2dMZXZlbElzU2V0KGNvbmZpZ0lkKSkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIGlmICh0aGlzLmxvZ2dpbmdJc1R1cm5lZE9mZihjb25maWdJZCkpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICBpZiAoIXRoaXMuY3VycmVudExvZ0xldmVsSXNFcXVhbE9yU21hbGxlclRoYW4oY29uZmlnSWQsIExvZ0xldmVsLldhcm4pKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgaWYgKCEhYXJncyAmJiAhIWFyZ3MubGVuZ3RoKSB7XG4gICAgICBjb25zb2xlLndhcm4oYFtXQVJOXSAke2NvbmZpZ0lkfSAtICR7bWVzc2FnZX1gLCAuLi5hcmdzKTtcbiAgICB9IGVsc2Uge1xuICAgICAgY29uc29sZS53YXJuKGBbV0FSTl0gJHtjb25maWdJZH0gLSAke21lc3NhZ2V9YCk7XG4gICAgfVxuICB9XG5cbiAgcHJpdmF0ZSBsb2dFcnJvcldpdGhDb25maWcoY29uZmlnSWQ6IHN0cmluZywgbWVzc2FnZTogYW55LCAuLi5hcmdzOiBhbnlbXSk6IHZvaWQge1xuICAgIGlmICh0aGlzLmxvZ2dpbmdJc1R1cm5lZE9mZihjb25maWdJZCkpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICBpZiAoISFhcmdzICYmICEhYXJncy5sZW5ndGgpIHtcbiAgICAgIGNvbnNvbGUuZXJyb3IoYFtFUlJPUl0gJHtjb25maWdJZH0gLSAke21lc3NhZ2V9YCwgLi4uYXJncyk7XG4gICAgfSBlbHNlIHtcbiAgICAgIGNvbnNvbGUuZXJyb3IoYFtFUlJPUl0gJHtjb25maWdJZH0gLSAke21lc3NhZ2V9YCk7XG4gICAgfVxuICB9XG5cbiAgcHJpdmF0ZSBsb2dFcnJvcldpdGhvdXRDb25maWcobWVzc2FnZTogYW55LCAuLi5hcmdzOiBhbnlbXSk6IHZvaWQge1xuICAgIGlmICghIWFyZ3MgJiYgISFhcmdzLmxlbmd0aCkge1xuICAgICAgY29uc29sZS5lcnJvcihgW0VSUk9SXSAtICR7bWVzc2FnZX1gLCAuLi5hcmdzKTtcbiAgICB9IGVsc2Uge1xuICAgICAgY29uc29sZS5lcnJvcihgW0VSUk9SXSAtICR7bWVzc2FnZX1gKTtcbiAgICB9XG4gIH1cblxuICBwcml2YXRlIGN1cnJlbnRMb2dMZXZlbElzRXF1YWxPclNtYWxsZXJUaGFuKGNvbmZpZ0lkOiBzdHJpbmcsIGxvZ0xldmVsVG9Db21wYXJlOiBMb2dMZXZlbCk6IGJvb2xlYW4ge1xuICAgIGNvbnN0IHsgbG9nTGV2ZWwgfSA9IHRoaXMuY29uZmlndXJhdGlvblByb3ZpZGVyLmdldE9wZW5JRENvbmZpZ3VyYXRpb24oY29uZmlnSWQpIHx8IHt9O1xuXG4gICAgcmV0dXJuIGxvZ0xldmVsIDw9IGxvZ0xldmVsVG9Db21wYXJlO1xuICB9XG5cbiAgcHJpdmF0ZSBsb2dMZXZlbElzU2V0KGNvbmZpZ0lkOiBzdHJpbmcpOiBib29sZWFuIHtcbiAgICBjb25zdCB7IGxvZ0xldmVsIH0gPSB0aGlzLmNvbmZpZ3VyYXRpb25Qcm92aWRlci5nZXRPcGVuSURDb25maWd1cmF0aW9uKGNvbmZpZ0lkKSB8fCB7fTtcblxuICAgIGlmIChsb2dMZXZlbCA9PT0gbnVsbCkge1xuICAgICAgcmV0dXJuIGZhbHNlO1xuICAgIH1cblxuICAgIGlmIChsb2dMZXZlbCA9PT0gdW5kZWZpbmVkKSB7XG4gICAgICByZXR1cm4gZmFsc2U7XG4gICAgfVxuXG4gICAgcmV0dXJuIHRydWU7XG4gIH1cblxuICBwcml2YXRlIGxvZ2dpbmdJc1R1cm5lZE9mZihjb25maWdJZDogc3RyaW5nKTogYm9vbGVhbiB7XG4gICAgY29uc3QgeyBsb2dMZXZlbCB9ID0gdGhpcy5jb25maWd1cmF0aW9uUHJvdmlkZXIuZ2V0T3BlbklEQ29uZmlndXJhdGlvbihjb25maWdJZCkgfHwge307XG5cbiAgICByZXR1cm4gbG9nTGV2ZWwgPT09IExvZ0xldmVsLk5vbmU7XG4gIH1cbn1cbiJdfQ==

@@ -46,3 +46,3 @@ import { Injectable } from '@angular/core';

if (!url) {
this.loggerService.logError(configId, `Could not create url with param ${response.requestUri}: '${url}'`);
this.loggerService.logError(configId, `Could not create URL with param ${response.requestUri}: '${url}'`);
return;

@@ -77,3 +77,3 @@ }

if (!url) {
const errorMessage = `Could not create url with param ${response.requestUri}: 'url'`;
const errorMessage = `Could not create URL with param ${response.requestUri}: 'url'`;
this.loggerService.logError(configId, errorMessage);

@@ -105,2 +105,2 @@ return throwError(errorMessage);

}], ctorParameters: function () { return [{ type: i1.LoggerService }, { type: i2.ResponseTypeValidationService }, { type: i3.UrlService }, { type: i4.RedirectService }, { type: i5.ConfigurationProvider }, { type: i6.AuthWellKnownService }, { type: i7.PopUpService }, { type: i8.CheckAuthService }, { type: i9.ParService }]; } });
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGFyLWxvZ2luLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9hbmd1bGFyLWF1dGgtb2lkYy1jbGllbnQvc3JjL2xpYi9sb2dpbi9wYXIvcGFyLWxvZ2luLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUMzQyxPQUFPLEVBQWMsRUFBRSxFQUFFLFVBQVUsRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUNsRCxPQUFPLEVBQUUsU0FBUyxFQUFFLElBQUksRUFBRSxNQUFNLGdCQUFnQixDQUFDOzs7Ozs7Ozs7OztBQWlCakQsTUFBTSxPQUFPLGVBQWU7SUFDMUIsWUFDVSxhQUE0QixFQUM1Qiw2QkFBNEQsRUFDNUQsVUFBc0IsRUFDdEIsZUFBZ0MsRUFDaEMscUJBQTRDLEVBQzVDLG9CQUEwQyxFQUMxQyxZQUEwQixFQUMxQixnQkFBa0MsRUFDbEMsVUFBc0I7UUFSdEIsa0JBQWEsR0FBYixhQUFhLENBQWU7UUFDNUIsa0NBQTZCLEdBQTdCLDZCQUE2QixDQUErQjtRQUM1RCxlQUFVLEdBQVYsVUFBVSxDQUFZO1FBQ3RCLG9CQUFlLEdBQWYsZUFBZSxDQUFpQjtRQUNoQywwQkFBcUIsR0FBckIscUJBQXFCLENBQXVCO1FBQzVDLHlCQUFvQixHQUFwQixvQkFBb0IsQ0FBc0I7UUFDMUMsaUJBQVksR0FBWixZQUFZLENBQWM7UUFDMUIscUJBQWdCLEdBQWhCLGdCQUFnQixDQUFrQjtRQUNsQyxlQUFVLEdBQVYsVUFBVSxDQUFZO0lBQzdCLENBQUM7SUFFSixRQUFRLENBQUMsUUFBZ0IsRUFBRSxXQUF5QjtRQUNsRCxJQUFJLENBQUMsSUFBSSxDQUFDLDZCQUE2QixDQUFDLDBCQUEwQixDQUFDLFFBQVEsQ0FBQyxFQUFFO1lBQzVFLElBQUksQ0FBQyxhQUFhLENBQUMsUUFBUSxDQUFDLFFBQVEsRUFBRSx3QkFB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QUFJLENBQUMsZ0JBQWdCLENBQUMsU0FBUyxDQUFDLFFBQVEsRUFBRSxXQUFXLENBQUMsQ0FBQztZQUNoRSxDQUFDLENBQUMsQ0FDSCxDQUFDO1FBQ0osQ0FBQyxDQUFDLENBQ0gsQ0FBQztJQUNKLENBQUM7OzRHQXBIVSxlQUFlO2dIQUFmLGVBQWU7MkZBQWYsZUFBZTtrQkFEM0IsVUFBVSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IE9ic2VydmFibGUsIG9mLCB0aHJvd0Vycm9yIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBzd2l0Y2hNYXAsIHRha2UgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5pbXBvcnQgeyBBdXRoT3B0aW9ucyB9IGZyb20gJy4uLy4uL2F1dGgtb3B0aW9ucyc7XG5pbXBvcnQgeyBDaGVja0F1dGhTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vY2hlY2stYXV0aC5zZXJ2aWNlJztcbmltcG9ydCB7IEF1dGhXZWxsS25vd25TZXJ2aWNlIH0gZnJvbSAnLi4vLi4vY29uZmlnL2F1dGgtd2VsbC1rbm93bi9hdXRoLXdlbGwta25vd24uc2VydmljZSc7XG5pbXBvcnQgeyBDb25maWd1cmF0aW9uUHJvdmlkZXIgfSBmcm9tICcuLi8uLi9jb25maWcvcHJvdmlkZXIvY29uZmlnLnByb3ZpZGVyJztcbmltcG9ydCB7IExvZ2dlclNlcnZpY2UgfSBmcm9tICcuLi8uLi9sb2dnaW5nL2xvZ2dlci5zZXJ2aWNlJztcbmltcG9ydCB7IFJlZGlyZWN0U2VydmljZSB9IGZyb20gJy4uLy4uL3V0aWxzL3JlZGlyZWN0L3JlZGlyZWN0LnNlcnZpY2UnO1xuaW1wb3J0IHsgVXJsU2VydmljZSB9IGZyb20gJy4uLy4uL3V0aWxzL3VybC91cmwuc2VydmljZSc7XG5pbXBvcnQgeyBMb2dpblJlc3BvbnNlIH0gZnJvbSAnLi4vbG9naW4tcmVzcG9uc2UnO1xuaW1wb3J0IHsgUG9wdXBPcHRpb25zIH0gZnJvbSAnLi4vcG9wdXAvcG9wdXAtb3B0aW9ucyc7XG5pbXBvcnQgeyBQb3B1cFJlc3VsdFJlY2VpdmVkVXJsIH0gZnJvbSAnLi4vcG9wdXAvcG9wdXAtcmVzdWx0JztcbmltcG9ydCB7IFBvcFVwU2VydmljZSB9IGZyb20gJy4uL3BvcHVwL3BvcHVwLnNlcnZpY2UnO1xuaW1wb3J0IHsgUmVzcG9uc2VUeXBlVmFsaWRhdGlvblNlcnZpY2UgfSBmcm9tICcuLi9yZXNwb25zZS10eXBlLXZhbGlkYXRpb24vcmVzcG9uc2UtdHlwZS12YWxpZGF0aW9uLnNlcnZpY2UnO1xuaW1wb3J0IHsgUGFyUmVzcG9uc2UgfSBmcm9tICcuL3Bhci1yZXNwb25zZSc7XG5pbXBvcnQgeyBQYXJTZXJ2aWNlIH0gZnJvbSAnLi9wYXIuc2VydmljZSc7XG5cbkBJbmplY3RhYmxlKClcbmV4cG9ydCBjbGFzcyBQYXJMb2dpblNlcnZpY2Uge1xuICBjb25zdHJ1Y3RvcihcbiAgICBwcml2YXRlIGxvZ2dlclNlcnZpY2U6IExvZ2dlclNlcnZpY2UsXG4gICAgcHJpdmF0ZSByZXNwb25zZVR5cGVWYWxpZGF0aW9uU2VydmljZTogUmVzcG9uc2VUeXBlVmFsaWRhdGlvblNlcnZpY2UsXG4gICAgcHJpdmF0ZSB1cmxTZXJ2aWNlOiBVcmxTZXJ2aWNlLFxuICAgIHByaXZhdGUgcmVkaXJlY3RTZXJ2aWNlOiBSZWRpcmVjdFNlcnZpY2UsXG4gICAgcHJpdmF0ZSBjb25maWd1cmF0aW9uUHJvdmlkZXI6IENvbmZpZ3VyYXRpb25Qcm92aWRlcixcbiAgICBwcml2YXRlIGF1dGhXZWxsS25vd25TZXJ2aWNlOiBBdXRoV2VsbEtub3duU2VydmljZSxcbiAgICBwcml2YXRlIHBvcHVwU2VydmljZTogUG9wVXBTZXJ2aWNlLFxuICAgIHByaXZhdGUgY2hlY2tBdXRoU2VydmljZTogQ2hlY2tBdXRoU2VydmljZSxcbiAgICBwcml2YXRlIHBhclNlcnZpY2U6IFBhclNlcnZpY2VcbiAgKSB7fVxuXG4gIGxvZ2luUGFyKGNvbmZpZ0lkOiBzdHJpbmcsIGF1dGhPcHRpb25zPzogQXV0aE9wdGlvbnMpOiB2b2lkIHtcbiAgICBpZiAoIXRoaXMucmVzcG9uc2VUeXBlVmFsaWRhdGlvblNlcnZpY2UuaGFzQ29uZmlnVmFsaWRSZXNwb25zZVR5cGUoY29uZmlnSWQpKSB7XG4gICAgICB0aGlzLmxvZ2dlclNlcnZpY2UubG9nRXJyb3IoY29uZmlnSWQsICdJbnZhbGlkIHJlc3BvbnNlIHR5cGUhJyk7XG5cbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICBjb25zdCB7IGF1dGhXZWxsa25vd25FbmRwb2ludFVybCB9ID0gdGhpcy5jb25maWd1cmF0aW9uUHJvdmlkZXIuZ2V0T3BlbklEQ29uZmlndXJhdGlvbihjb25maWdJZCk7XG5cbiAgICBpZiAoIWF1dGhXZWxsa25vd25FbmRwb2ludFVybCkge1xuICAgICAgdGhpcy5sb2dnZXJTZXJ2aWNlLmxvZ0Vycm9yKGNvbmZpZ0lkLCAnbm8gYXV0aFdlbGxrbm93bkVuZHBvaW50IGdpdmVuIScpO1xuXG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgdGhpcy5sb2dnZXJTZXJ2aWNlLmxvZ0RlYnVnKGNvbmZpZ0lkLCAnQkVHSU4gQXV0aG9yaXplIE9JREMgRmxvdywgbm8gYXV0aCBkYXRhJyk7XG5cbiAgICBjb25zdCB7IHVybEhhbmRsZXIsIGN1c3RvbVBhcmFtcyB9ID0gYXV0aE9wdGlvbnMgfHwge307XG5cbiAgICB0aGlzLmF1dGhXZWxsS25vd25TZXJ2aWNlXG4gICAgICAuZ2V0QXV0aFdlbGxLbm93bkVuZFBvaW50cyhhdXRoV2VsbGtub3duRW5kcG9pbnRVcmwsIGNvbmZpZ0lkKVxuICAgICAgLnBpcGUoc3dpdGNoTWFwKCgpID0+IHRoaXMucGFyU2VydmljZS5wb3N0UGFyUmVxdWVzdChjb25maWdJZCwgY3VzdG9tUGFyYW1zKSkpXG4gICAgICAuc3Vic2NyaWJlKChyZXNwb25zZSkgPT4ge1xuICAgICAgICB0aGlzLmxvZ2dlclNlcnZpY2UubG9nRGVidWcoY29uZmlnSWQsICdwYXIgcmVzcG9uc2U6ICcsIHJlc3BvbnNlKTtcblxuICAgICAgICBjb25zdCB1cmwgPSB0aGlzLnVybFNlcnZpY2UuZ2V0QXV0aG9yaXplUGFyVXJsKHJlc3BvbnNlLnJlcXVlc3RVcmksIGNvbmZpZ0lkKTtcblxuICAgICAgICB0aGlzLmxvZ2dlclNlcnZpY2UubG9nRGVidWcoY29uZmlnSWQsICdwYXIgcmVxdWVzdCB1cmw6ICcsIHVybCk7XG5cbiAgICAgICAgaWYgKCF1cmwpIHtcbiAgICAgICAgICB0aGlzLmxvZ2dlclNlcnZpY2UubG9nRXJyb3IoY29uZmlnSWQsIGBDb3VsZCBub3QgY3JlYXRlIHVybCB3aXRoIHBhcmFtICR7cmVzcG9uc2UucmVxdWVzdFVyaX06ICcke3VybH0nYCk7XG5cbiAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cblxuICAgICAgICBpZiAodXJsSGFuZGxlcikge1xuICAgICAgICAgIHVybEhhbmRsZXIodXJsKTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICB0aGlzLnJlZGlyZWN0U2VydmljZS5yZWRpcmVjdFRvKHVybCk7XG4gICAgICAgIH1cbiAgICAgIH0pO1xuICB9XG5cbiAgbG9naW5XaXRoUG9wVXBQYXIoY29uZmlnSWQ6IHN0cmluZywgYXV0aE9wdGlvbnM/OiBBdXRoT3B0aW9ucywgcG9wdXBPcHRpb25zPzogUG9wdXBPcHRpb25zKTogT2JzZXJ2YWJsZTxMb2dpblJlc3BvbnNlPiB7XG4gICAgaWYgKCF0aGlzLnJlc3BvbnNlVHlwZVZhbGlkYXRpb25TZXJ2aWNlLmhhc0NvbmZpZ1ZhbGlkUmVzcG9uc2VUeXBlKGNvbmZpZ0lkKSkge1xuICAgICAgY29uc3QgZXJyb3JNZXNzYWdlID0gJ0ludmFsaWQgcmVzcG9uc2UgdHlwZSEnO1xuICAgICAgdGhpcy5sb2dnZXJTZXJ2aWNlLmxvZ0Vycm9yKGNvbmZpZ0lkLCBlcnJvck1lc3NhZ2UpO1xuXG4gICAgICByZXR1cm4gdGhyb3dFcnJvcihlcnJvck1lc3NhZ2UpO1xuICAgIH1cblxuICAgIGNvbnN0IHsgYXV0aFdlbGxrbm93bkVuZHBvaW50VXJsIH0gPSB0aGlzLmNvbmZpZ3VyYXRpb25Qcm92aWRlci5nZXRPcGVuSURDb25maWd1cmF0aW9uKGNvbmZpZ0lkKTtcblxuICAgIGlmICghYXV0aFdlbGxrbm93bkVuZHBvaW50VXJsKSB7XG4gICAgICBjb25zdCBlcnJvck1lc3NhZ2UgPSAnbm8gYXV0aFdlbGxrbm93bkVuZHBvaW50IGdpdmVuISc7XG4gICAgICB0aGlzLmxvZ2dlclNlcnZpY2UubG9nRXJyb3IoY29uZmlnSWQsIGVycm9yTWVzc2FnZSk7XG5cbiAgICAgIHJldHVybiB0aHJvd0Vycm9yKGVycm9yTWVzc2FnZSk7XG4gICAgfVxuXG4gICAgdGhpcy5sb2dnZXJTZXJ2aWNlLmxvZ0RlYnVnKGNvbmZpZ0lkLCAnQkVHSU4gQXV0aG9yaXplIE9JREMgRmxvdyB3aXRoIHBvcHVwLCBubyBhdXRoIGRhdGEnKTtcblxuICAgIGNvbnN0IHsgY3VzdG9tUGFyYW1zIH0gPSBhdXRoT3B0aW9ucyB8fCB7fTtcblxuICAgIHJldHVybiB0aGlzLmF1dGhXZWxsS25vd25TZXJ2aWNlLmdldEF1dGhXZWxsS25vd25FbmRQb2ludHMoYXV0aFdlbGxrbm93bkVuZHBvaW50VXJsLCBjb25maWdJZCkucGlwZShcbiAgICAgIHN3aXRjaE1hcCgoKSA9PiB0aGlzLnBhclNlcnZpY2UucG9zdFBhclJlcXVlc3QoY29uZmlnSWQsIGN1c3RvbVBhcmFtcykpLFxuICAgICAgc3dpdGNoTWFwKChyZXNwb25zZTogUGFyUmVzcG9uc2UpID0+IHtcbiAgICAgICAgdGhpcy5sb2dnZXJTZXJ2aWNlLmxvZ0RlYnVnKGNvbmZpZ0lkLCAncGFyIHJlc3BvbnNlOiAnLCByZXNwb25zZSk7XG5cbiAgICAgICAgY29uc3QgdXJsID0gdGhpcy51cmxTZXJ2aWNlLmdldEF1dGhvcml6ZVBhclVybChyZXNwb25zZS5yZXF1ZXN0VXJpLCBjb25maWdJZCk7XG5cbiAgICAgICAgdGhpcy5sb2dnZXJTZXJ2aWNlLmxvZ0RlYnVnKGNvbmZpZ0lkLCAncGFyIHJlcXVlc3QgdXJsOiAnLCB1cmwpO1xuXG4gICAgICAgIGlmICghdXJsKSB7XG4gICAgICAgICAgY29uc3QgZXJyb3JNZXNzYWdlID0gYENvdWxkIG5vdCBjcmVhdGUgdXJsIHdpdGggcGFyYW0gJHtyZXNwb25zZS5yZXF1ZXN0VXJpfTogJ3VybCdgO1xuICAgICAgICAgIHRoaXMubG9nZ2VyU2VydmljZS5sb2dFcnJvcihjb25maWdJZCwgZXJyb3JNZXNzYWdlKTtcblxuICAgICAgICAgIHJldHVybiB0aHJvd0Vycm9yKGVycm9yTWVzc2FnZSk7XG4gICAgICAgIH1cblxuICAgICAgICB0aGlzLnBvcHVwU2VydmljZS5vcGVuUG9wVXAodXJsLCBwb3B1cE9wdGlvbnMpO1xuXG4gICAgICAgIHJldHVybiB0aGlzLnBvcHVwU2VydmljZS5yZXN1bHQkLnBpcGUoXG4gICAgICAgICAgdGFrZSgxKSxcbiAgICAgICAgICBzd2l0Y2hNYXAoKHJlc3VsdDogUG9wdXBSZXN1bHRSZWNlaXZlZFVybCkgPT4ge1xuICAgICAgICAgICAgY29uc3QgeyB1c2VyQ2xvc2VkLCByZWNlaXZlZFVybCB9ID0gcmVzdWx0O1xuXG4gICAgICAgICAgICBpZiAodXNlckNsb3NlZCkge1xuICAgICAgICAgICAgICByZXR1cm4gb2Yoe1xuICAgICAgICAgICAgICAgIGlzQXV0aGVudGljYXRlZDogZmFsc2UsXG4gICAgICAgICAgICAgICAgZXJyb3JNZXNzYWdlOiAnVXNlciBjbG9zZWQgcG9wdXAnLFxuICAgICAgICAgICAgICAgIHVzZXJEYXRhOiBudWxsLFxuICAgICAgICAgICAgICAgIGlkVG9rZW46IG51bGwsXG4gICAgICAgICAgICAgICAgYWNjZXNzVG9rZW46IG51bGwsXG4gICAgICAgICAgICAgICAgY29uZmlnSWQsXG4gICAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICByZXR1cm4gdGhpcy5jaGVja0F1dGhTZXJ2aWNlLmNoZWNrQXV0aChjb25maWdJZCwgcmVjZWl2ZWRVcmwpO1xuICAgICAgICAgIH0pXG4gICAgICAgICk7XG4gICAgICB9KVxuICAgICk7XG4gIH1cbn1cbiJdfQ==
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGFyLWxvZ2luLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9hbmd1bGFyLWF1dGgtb2lkYy1jbGllbnQvc3JjL2xpYi9sb2dpbi9wYXIvcGFyLWxvZ2luLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUMzQyxPQUFPLEVBQWMsRUFBRSxFQUFFLFVBQVUsRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUNsRCxPQUFPLEVBQUUsU0FBUyxFQUFFLElBQUksRUFBRSxNQUFNLGdCQUFnQixDQUFDOzs7Ozs7Ozs7OztBQWlCakQsTUFBTSxPQUFPLGVBQWU7SUFDMUIsWUFDVSxhQUE0QixFQUM1Qiw2QkFBNEQsRUFDNUQsVUFBc0IsRUFDdEIsZUFBZ0MsRUFDaEMscUJBQTRDLEVBQzVDLG9CQUEwQyxFQUMxQyxZQUEwQixFQUMxQixnQkFBa0MsRUFDbEMsVUFBc0I7UUFSdEIsa0JBQWEsR0FBYixhQUFhLENBQWU7UUFDNUIsa0NBQTZCLEdBQTdCLDZCQUE2QixDQUErQjtRQUM1RCxlQUFVLEdBQVYsVUFBVSxDQUFZO1FBQ3RCLG9CQUFlLEdBQWYsZUFBZSxDQUFpQjtRQUNoQywwQkFBcUIsR0FBckIscUJBQXFCLENBQXVCO1FBQzVDLHlCQUFvQixHQUFwQixvQkFBb0IsQ0FBc0I7UUFDMUMsaUJBQVksR0FBWixZQUFZLENBQWM7UUFDMUIscUJBQWdCLEdBQWhCLGdCQUFnQixDQUFrQjtRQUNsQyxlQUFVLEdBQVYsVUFBVSxDQUFZO0lBQzdCLENBQUM7SUFFSixRQUFRLENBQUMsUUFBZ0IsRUFBRSxXQUF5QjtRQUNsRCxJQUFJLENBQUMsSUFBSSxDQUFDLDZCQUE2QixDQUFDLDBCQUEwQixDQUFDLFFBQVEsQ0FBQyxFQUFFO1lBQzVFLElBQUksQ0FBQyxhQUFhLENBQUMsUUFBUSxDQUFDLFFBQVEsRUFBRSx3QkFB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QUFJLENBQUMsZ0JBQWdCLENBQUMsU0FBUyxDQUFDLFFBQVEsRUFBRSxXQUFXLENBQUMsQ0FBQztZQUNoRSxDQUFDLENBQUMsQ0FDSCxDQUFDO1FBQ0osQ0FBQyxDQUFDLENBQ0gsQ0FBQztJQUNKLENBQUM7OzRHQXBIVSxlQUFlO2dIQUFmLGVBQWU7MkZBQWYsZUFBZTtrQkFEM0IsVUFBVSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IE9ic2VydmFibGUsIG9mLCB0aHJvd0Vycm9yIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBzd2l0Y2hNYXAsIHRha2UgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5pbXBvcnQgeyBBdXRoT3B0aW9ucyB9IGZyb20gJy4uLy4uL2F1dGgtb3B0aW9ucyc7XG5pbXBvcnQgeyBDaGVja0F1dGhTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vY2hlY2stYXV0aC5zZXJ2aWNlJztcbmltcG9ydCB7IEF1dGhXZWxsS25vd25TZXJ2aWNlIH0gZnJvbSAnLi4vLi4vY29uZmlnL2F1dGgtd2VsbC1rbm93bi9hdXRoLXdlbGwta25vd24uc2VydmljZSc7XG5pbXBvcnQgeyBDb25maWd1cmF0aW9uUHJvdmlkZXIgfSBmcm9tICcuLi8uLi9jb25maWcvcHJvdmlkZXIvY29uZmlnLnByb3ZpZGVyJztcbmltcG9ydCB7IExvZ2dlclNlcnZpY2UgfSBmcm9tICcuLi8uLi9sb2dnaW5nL2xvZ2dlci5zZXJ2aWNlJztcbmltcG9ydCB7IFJlZGlyZWN0U2VydmljZSB9IGZyb20gJy4uLy4uL3V0aWxzL3JlZGlyZWN0L3JlZGlyZWN0LnNlcnZpY2UnO1xuaW1wb3J0IHsgVXJsU2VydmljZSB9IGZyb20gJy4uLy4uL3V0aWxzL3VybC91cmwuc2VydmljZSc7XG5pbXBvcnQgeyBMb2dpblJlc3BvbnNlIH0gZnJvbSAnLi4vbG9naW4tcmVzcG9uc2UnO1xuaW1wb3J0IHsgUG9wdXBPcHRpb25zIH0gZnJvbSAnLi4vcG9wdXAvcG9wdXAtb3B0aW9ucyc7XG5pbXBvcnQgeyBQb3B1cFJlc3VsdFJlY2VpdmVkVXJsIH0gZnJvbSAnLi4vcG9wdXAvcG9wdXAtcmVzdWx0JztcbmltcG9ydCB7IFBvcFVwU2VydmljZSB9IGZyb20gJy4uL3BvcHVwL3BvcHVwLnNlcnZpY2UnO1xuaW1wb3J0IHsgUmVzcG9uc2VUeXBlVmFsaWRhdGlvblNlcnZpY2UgfSBmcm9tICcuLi9yZXNwb25zZS10eXBlLXZhbGlkYXRpb24vcmVzcG9uc2UtdHlwZS12YWxpZGF0aW9uLnNlcnZpY2UnO1xuaW1wb3J0IHsgUGFyUmVzcG9uc2UgfSBmcm9tICcuL3Bhci1yZXNwb25zZSc7XG5pbXBvcnQgeyBQYXJTZXJ2aWNlIH0gZnJvbSAnLi9wYXIuc2VydmljZSc7XG5cbkBJbmplY3RhYmxlKClcbmV4cG9ydCBjbGFzcyBQYXJMb2dpblNlcnZpY2Uge1xuICBjb25zdHJ1Y3RvcihcbiAgICBwcml2YXRlIGxvZ2dlclNlcnZpY2U6IExvZ2dlclNlcnZpY2UsXG4gICAgcHJpdmF0ZSByZXNwb25zZVR5cGVWYWxpZGF0aW9uU2VydmljZTogUmVzcG9uc2VUeXBlVmFsaWRhdGlvblNlcnZpY2UsXG4gICAgcHJpdmF0ZSB1cmxTZXJ2aWNlOiBVcmxTZXJ2aWNlLFxuICAgIHByaXZhdGUgcmVkaXJlY3RTZXJ2aWNlOiBSZWRpcmVjdFNlcnZpY2UsXG4gICAgcHJpdmF0ZSBjb25maWd1cmF0aW9uUHJvdmlkZXI6IENvbmZpZ3VyYXRpb25Qcm92aWRlcixcbiAgICBwcml2YXRlIGF1dGhXZWxsS25vd25TZXJ2aWNlOiBBdXRoV2VsbEtub3duU2VydmljZSxcbiAgICBwcml2YXRlIHBvcHVwU2VydmljZTogUG9wVXBTZXJ2aWNlLFxuICAgIHByaXZhdGUgY2hlY2tBdXRoU2VydmljZTogQ2hlY2tBdXRoU2VydmljZSxcbiAgICBwcml2YXRlIHBhclNlcnZpY2U6IFBhclNlcnZpY2VcbiAgKSB7fVxuXG4gIGxvZ2luUGFyKGNvbmZpZ0lkOiBzdHJpbmcsIGF1dGhPcHRpb25zPzogQXV0aE9wdGlvbnMpOiB2b2lkIHtcbiAgICBpZiAoIXRoaXMucmVzcG9uc2VUeXBlVmFsaWRhdGlvblNlcnZpY2UuaGFzQ29uZmlnVmFsaWRSZXNwb25zZVR5cGUoY29uZmlnSWQpKSB7XG4gICAgICB0aGlzLmxvZ2dlclNlcnZpY2UubG9nRXJyb3IoY29uZmlnSWQsICdJbnZhbGlkIHJlc3BvbnNlIHR5cGUhJyk7XG5cbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICBjb25zdCB7IGF1dGhXZWxsa25vd25FbmRwb2ludFVybCB9ID0gdGhpcy5jb25maWd1cmF0aW9uUHJvdmlkZXIuZ2V0T3BlbklEQ29uZmlndXJhdGlvbihjb25maWdJZCk7XG5cbiAgICBpZiAoIWF1dGhXZWxsa25vd25FbmRwb2ludFVybCkge1xuICAgICAgdGhpcy5sb2dnZXJTZXJ2aWNlLmxvZ0Vycm9yKGNvbmZpZ0lkLCAnbm8gYXV0aFdlbGxrbm93bkVuZHBvaW50IGdpdmVuIScpO1xuXG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgdGhpcy5sb2dnZXJTZXJ2aWNlLmxvZ0RlYnVnKGNvbmZpZ0lkLCAnQkVHSU4gQXV0aG9yaXplIE9JREMgRmxvdywgbm8gYXV0aCBkYXRhJyk7XG5cbiAgICBjb25zdCB7IHVybEhhbmRsZXIsIGN1c3RvbVBhcmFtcyB9ID0gYXV0aE9wdGlvbnMgfHwge307XG5cbiAgICB0aGlzLmF1dGhXZWxsS25vd25TZXJ2aWNlXG4gICAgICAuZ2V0QXV0aFdlbGxLbm93bkVuZFBvaW50cyhhdXRoV2VsbGtub3duRW5kcG9pbnRVcmwsIGNvbmZpZ0lkKVxuICAgICAgLnBpcGUoc3dpdGNoTWFwKCgpID0+IHRoaXMucGFyU2VydmljZS5wb3N0UGFyUmVxdWVzdChjb25maWdJZCwgY3VzdG9tUGFyYW1zKSkpXG4gICAgICAuc3Vic2NyaWJlKChyZXNwb25zZSkgPT4ge1xuICAgICAgICB0aGlzLmxvZ2dlclNlcnZpY2UubG9nRGVidWcoY29uZmlnSWQsICdwYXIgcmVzcG9uc2U6ICcsIHJlc3BvbnNlKTtcblxuICAgICAgICBjb25zdCB1cmwgPSB0aGlzLnVybFNlcnZpY2UuZ2V0QXV0aG9yaXplUGFyVXJsKHJlc3BvbnNlLnJlcXVlc3RVcmksIGNvbmZpZ0lkKTtcblxuICAgICAgICB0aGlzLmxvZ2dlclNlcnZpY2UubG9nRGVidWcoY29uZmlnSWQsICdwYXIgcmVxdWVzdCB1cmw6ICcsIHVybCk7XG5cbiAgICAgICAgaWYgKCF1cmwpIHtcbiAgICAgICAgICB0aGlzLmxvZ2dlclNlcnZpY2UubG9nRXJyb3IoY29uZmlnSWQsIGBDb3VsZCBub3QgY3JlYXRlIFVSTCB3aXRoIHBhcmFtICR7cmVzcG9uc2UucmVxdWVzdFVyaX06ICcke3VybH0nYCk7XG5cbiAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cblxuICAgICAgICBpZiAodXJsSGFuZGxlcikge1xuICAgICAgICAgIHVybEhhbmRsZXIodXJsKTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICB0aGlzLnJlZGlyZWN0U2VydmljZS5yZWRpcmVjdFRvKHVybCk7XG4gICAgICAgIH1cbiAgICAgIH0pO1xuICB9XG5cbiAgbG9naW5XaXRoUG9wVXBQYXIoY29uZmlnSWQ6IHN0cmluZywgYXV0aE9wdGlvbnM/OiBBdXRoT3B0aW9ucywgcG9wdXBPcHRpb25zPzogUG9wdXBPcHRpb25zKTogT2JzZXJ2YWJsZTxMb2dpblJlc3BvbnNlPiB7XG4gICAgaWYgKCF0aGlzLnJlc3BvbnNlVHlwZVZhbGlkYXRpb25TZXJ2aWNlLmhhc0NvbmZpZ1ZhbGlkUmVzcG9uc2VUeXBlKGNvbmZpZ0lkKSkge1xuICAgICAgY29uc3QgZXJyb3JNZXNzYWdlID0gJ0ludmFsaWQgcmVzcG9uc2UgdHlwZSEnO1xuICAgICAgdGhpcy5sb2dnZXJTZXJ2aWNlLmxvZ0Vycm9yKGNvbmZpZ0lkLCBlcnJvck1lc3NhZ2UpO1xuXG4gICAgICByZXR1cm4gdGhyb3dFcnJvcihlcnJvck1lc3NhZ2UpO1xuICAgIH1cblxuICAgIGNvbnN0IHsgYXV0aFdlbGxrbm93bkVuZHBvaW50VXJsIH0gPSB0aGlzLmNvbmZpZ3VyYXRpb25Qcm92aWRlci5nZXRPcGVuSURDb25maWd1cmF0aW9uKGNvbmZpZ0lkKTtcblxuICAgIGlmICghYXV0aFdlbGxrbm93bkVuZHBvaW50VXJsKSB7XG4gICAgICBjb25zdCBlcnJvck1lc3NhZ2UgPSAnbm8gYXV0aFdlbGxrbm93bkVuZHBvaW50IGdpdmVuISc7XG4gICAgICB0aGlzLmxvZ2dlclNlcnZpY2UubG9nRXJyb3IoY29uZmlnSWQsIGVycm9yTWVzc2FnZSk7XG5cbiAgICAgIHJldHVybiB0aHJvd0Vycm9yKGVycm9yTWVzc2FnZSk7XG4gICAgfVxuXG4gICAgdGhpcy5sb2dnZXJTZXJ2aWNlLmxvZ0RlYnVnKGNvbmZpZ0lkLCAnQkVHSU4gQXV0aG9yaXplIE9JREMgRmxvdyB3aXRoIHBvcHVwLCBubyBhdXRoIGRhdGEnKTtcblxuICAgIGNvbnN0IHsgY3VzdG9tUGFyYW1zIH0gPSBhdXRoT3B0aW9ucyB8fCB7fTtcblxuICAgIHJldHVybiB0aGlzLmF1dGhXZWxsS25vd25TZXJ2aWNlLmdldEF1dGhXZWxsS25vd25FbmRQb2ludHMoYXV0aFdlbGxrbm93bkVuZHBvaW50VXJsLCBjb25maWdJZCkucGlwZShcbiAgICAgIHN3aXRjaE1hcCgoKSA9PiB0aGlzLnBhclNlcnZpY2UucG9zdFBhclJlcXVlc3QoY29uZmlnSWQsIGN1c3RvbVBhcmFtcykpLFxuICAgICAgc3dpdGNoTWFwKChyZXNwb25zZTogUGFyUmVzcG9uc2UpID0+IHtcbiAgICAgICAgdGhpcy5sb2dnZXJTZXJ2aWNlLmxvZ0RlYnVnKGNvbmZpZ0lkLCAncGFyIHJlc3BvbnNlOiAnLCByZXNwb25zZSk7XG5cbiAgICAgICAgY29uc3QgdXJsID0gdGhpcy51cmxTZXJ2aWNlLmdldEF1dGhvcml6ZVBhclVybChyZXNwb25zZS5yZXF1ZXN0VXJpLCBjb25maWdJZCk7XG5cbiAgICAgICAgdGhpcy5sb2dnZXJTZXJ2aWNlLmxvZ0RlYnVnKGNvbmZpZ0lkLCAncGFyIHJlcXVlc3QgdXJsOiAnLCB1cmwpO1xuXG4gICAgICAgIGlmICghdXJsKSB7XG4gICAgICAgICAgY29uc3QgZXJyb3JNZXNzYWdlID0gYENvdWxkIG5vdCBjcmVhdGUgVVJMIHdpdGggcGFyYW0gJHtyZXNwb25zZS5yZXF1ZXN0VXJpfTogJ3VybCdgO1xuICAgICAgICAgIHRoaXMubG9nZ2VyU2VydmljZS5sb2dFcnJvcihjb25maWdJZCwgZXJyb3JNZXNzYWdlKTtcblxuICAgICAgICAgIHJldHVybiB0aHJvd0Vycm9yKGVycm9yTWVzc2FnZSk7XG4gICAgICAgIH1cblxuICAgICAgICB0aGlzLnBvcHVwU2VydmljZS5vcGVuUG9wVXAodXJsLCBwb3B1cE9wdGlvbnMpO1xuXG4gICAgICAgIHJldHVybiB0aGlzLnBvcHVwU2VydmljZS5yZXN1bHQkLnBpcGUoXG4gICAgICAgICAgdGFrZSgxKSxcbiAgICAgICAgICBzd2l0Y2hNYXAoKHJlc3VsdDogUG9wdXBSZXN1bHRSZWNlaXZlZFVybCkgPT4ge1xuICAgICAgICAgICAgY29uc3QgeyB1c2VyQ2xvc2VkLCByZWNlaXZlZFVybCB9ID0gcmVzdWx0O1xuXG4gICAgICAgICAgICBpZiAodXNlckNsb3NlZCkge1xuICAgICAgICAgICAgICByZXR1cm4gb2Yoe1xuICAgICAgICAgICAgICAgIGlzQXV0aGVudGljYXRlZDogZmFsc2UsXG4gICAgICAgICAgICAgICAgZXJyb3JNZXNzYWdlOiAnVXNlciBjbG9zZWQgcG9wdXAnLFxuICAgICAgICAgICAgICAgIHVzZXJEYXRhOiBudWxsLFxuICAgICAgICAgICAgICAgIGlkVG9rZW46IG51bGwsXG4gICAgICAgICAgICAgICAgYWNjZXNzVG9rZW46IG51bGwsXG4gICAgICAgICAgICAgICAgY29uZmlnSWQsXG4gICAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICByZXR1cm4gdGhpcy5jaGVja0F1dGhTZXJ2aWNlLmNoZWNrQXV0aChjb25maWdJZCwgcmVjZWl2ZWRVcmwpO1xuICAgICAgICAgIH0pXG4gICAgICAgICk7XG4gICAgICB9KVxuICAgICk7XG4gIH1cbn1cbiJdfQ==

@@ -33,3 +33,3 @@ import { Injectable } from '@angular/core';

if (!url) {
this.loggerService.logError(configId, 'Could not create url', url);
this.loggerService.logError(configId, 'Could not create URL', url);
return;

@@ -51,2 +51,2 @@ }

}], ctorParameters: function () { return [{ type: i1.LoggerService }, { type: i2.ResponseTypeValidationService }, { type: i3.UrlService }, { type: i4.RedirectService }, { type: i5.ConfigurationProvider }, { type: i6.AuthWellKnownService }]; } });
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3RhbmRhcmQtbG9naW4uc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2FuZ3VsYXItYXV0aC1vaWRjLWNsaWVudC9zcmMvbGliL2xvZ2luL3N0YW5kYXJkL3N0YW5kYXJkLWxvZ2luLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQzs7Ozs7Ozs7QUFVM0MsTUFBTSxPQUFPLG9CQUFvQjtJQUMvQixZQUNVLGFBQTRCLEVBQzVCLDZCQUE0RCxFQUM1RCxVQUFzQixFQUN0QixlQUFnQyxFQUNoQyxxQkFBNEMsRUFDNUMsb0JBQTBDO1FBTDFDLGtCQUFhLEdBQWIsYUFBYSxDQUFlO1FBQzVCLGtDQUE2QixHQUE3Qiw2QkFBNkIsQ0FBK0I7UUFDNUQsZUFBVSxHQUFWLFVBQVUsQ0FBWTtRQUN0QixvQkFBZSxHQUFmLGVBQWUsQ0FBaUI7UUFDaEMsMEJBQXFCLEdBQXJCLHFCQUFxQixDQUF1QjtRQUM1Qyx5QkFBb0IsR0FBcEIsb0JBQW9CLENBQXNCO0lBQ2pELENBQUM7SUFFSixhQUFhLENBQUMsUUFBZ0IsRUFBRSxXQUF5QjtRQUN2RCxJQUFJLENBQUMsSUFBSSxDQUFDLDZCQUE2QixDQUFDLDBCQUEwQixDQUFDLFFBQVEsQ0FBQyxFQUFFO1lBQzVFLElBQUksQ0FBQyxhQUFhLENBQUMsUUFBUSxDQUFDLFFBQVEsRUFBRSx3QkFBd0IsQ0FBQyxDQUFDO1lBRWhFLE9BQU87U0FDUjtRQUVELE1BQU0sRUFBRSx3QkFBd0IsRUFBRSxHQUFHLElBQUksQ0FBQyxxQkFBcUIsQ0FBQyxzQkFBc0IsQ0FBQyxRQUFRLENBQUMsQ0FBQztRQUVqRyxJQUFJLENBQUMsd0JBQXdCLEVBQUU7WUFDN0IsSUFBSSxDQUFDLGFBQWEsQ0FBQyxRQUFRLENBQUMsUUFBUSxFQUFFLGlDQUFpQyxDQUFDLENBQUM7WUFFekUsT0FBTztTQUNSO1FBRUQsSUFBSSxDQUFDLGFBQWEsQ0FBQyxRQUFRLENBQUMsUUFBUSxFQUFFLHlDQUF5QyxDQUFDLENBQUM7UUFFakYsSUFBSSxDQUFDLG9CQUFvQixDQUFDLHlCQUF5QixDQUFDLHdCQUF3QixFQUFFLFFBQVEsQ0FBQyxDQUFDLFNBQVMsQ0FBQyxHQUFHLEVBQUU7WUFDckcsTUFBTSxFQUFFLFVBQVUsRUFBRSxZQUFZLEVBQUUsR0FBRyxXQUFXLElBQUksRUFBRSxDQUFDO1lBRXZELE1BQU0sR0FBRyxHQUFHLElBQUksQ0FBQyxVQUFVLENBQUMsZUFBZSxDQUFDLFFBQVEsRUFBRSxZQUFZLENBQUMsQ0FBQztZQUVwRSxJQUFJLENBQUMsR0FBRyxFQUFFO2dCQUNSLElBQUksQ0FBQyxhQUFhLENBQUMsUUFBUSxDQUFDLFFBQVEsRUFBRSxzQkFBc0IsRUFBRSxHQUFHLENBQUMsQ0FBQztnQkFFbkUsT0FBTzthQUNSO1lBRUQsSUFBSSxVQUFVLEVBQUU7Z0JBQ2QsVUFBVSxDQUFDLEdBQUcsQ0FBQyxDQUFDO2FBQ2pCO2lCQUFNO2dCQUNMLElBQUksQ0FBQyxlQUFlLENBQUMsVUFBVSxDQUFDLEdBQUcsQ0FBQyxDQUFDO2FBQ3RDO1FBQ0gsQ0FBQyxDQUFDLENBQUM7SUFDTCxDQUFDOztpSEE1Q1Usb0JBQW9CO3FIQUFwQixvQkFBb0I7MkZBQXBCLG9CQUFvQjtrQkFEaEMsVUFBVSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEF1dGhPcHRpb25zIH0gZnJvbSAnLi4vLi4vYXV0aC1vcHRpb25zJztcbmltcG9ydCB7IEF1dGhXZWxsS25vd25TZXJ2aWNlIH0gZnJvbSAnLi4vLi4vY29uZmlnL2F1dGgtd2VsbC1rbm93bi9hdXRoLXdlbGwta25vd24uc2VydmljZSc7XG5pbXBvcnQgeyBDb25maWd1cmF0aW9uUHJvdmlkZXIgfSBmcm9tICcuLi8uLi9jb25maWcvcHJvdmlkZXIvY29uZmlnLnByb3ZpZGVyJztcbmltcG9ydCB7IExvZ2dlclNlcnZpY2UgfSBmcm9tICcuLi8uLi9sb2dnaW5nL2xvZ2dlci5zZXJ2aWNlJztcbmltcG9ydCB7IFJlZGlyZWN0U2VydmljZSB9IGZyb20gJy4uLy4uL3V0aWxzL3JlZGlyZWN0L3JlZGlyZWN0LnNlcnZpY2UnO1xuaW1wb3J0IHsgVXJsU2VydmljZSB9IGZyb20gJy4uLy4uL3V0aWxzL3VybC91cmwuc2VydmljZSc7XG5pbXBvcnQgeyBSZXNwb25zZVR5cGVWYWxpZGF0aW9uU2VydmljZSB9IGZyb20gJy4uL3Jlc3BvbnNlLXR5cGUtdmFsaWRhdGlvbi9yZXNwb25zZS10eXBlLXZhbGlkYXRpb24uc2VydmljZSc7XG5cbkBJbmplY3RhYmxlKClcbmV4cG9ydCBjbGFzcyBTdGFuZGFyZExvZ2luU2VydmljZSB7XG4gIGNvbnN0cnVjdG9yKFxuICAgIHByaXZhdGUgbG9nZ2VyU2VydmljZTogTG9nZ2VyU2VydmljZSxcbiAgICBwcml2YXRlIHJlc3BvbnNlVHlwZVZhbGlkYXRpb25TZXJ2aWNlOiBSZXNwb25zZVR5cGVWYWxpZGF0aW9uU2VydmljZSxcbiAgICBwcml2YXRlIHVybFNlcnZpY2U6IFVybFNlcnZpY2UsXG4gICAgcHJpdmF0ZSByZWRpcmVjdFNlcnZpY2U6IFJlZGlyZWN0U2VydmljZSxcbiAgICBwcml2YXRlIGNvbmZpZ3VyYXRpb25Qcm92aWRlcjogQ29uZmlndXJhdGlvblByb3ZpZGVyLFxuICAgIHByaXZhdGUgYXV0aFdlbGxLbm93blNlcnZpY2U6IEF1dGhXZWxsS25vd25TZXJ2aWNlXG4gICkge31cblxuICBsb2dpblN0YW5kYXJkKGNvbmZpZ0lkOiBzdHJpbmcsIGF1dGhPcHRpb25zPzogQXV0aE9wdGlvbnMpOiB2b2lkIHtcbiAgICBpZiAoIXRoaXMucmVzcG9uc2VUeXBlVmFsaWRhdGlvblNlcnZpY2UuaGFzQ29uZmlnVmFsaWRSZXNwb25zZVR5cGUoY29uZmlnSWQpKSB7XG4gICAgICB0aGlzLmxvZ2dlclNlcnZpY2UubG9nRXJyb3IoY29uZmlnSWQsICdJbnZhbGlkIHJlc3BvbnNlIHR5cGUhJyk7XG5cbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICBjb25zdCB7IGF1dGhXZWxsa25vd25FbmRwb2ludFVybCB9ID0gdGhpcy5jb25maWd1cmF0aW9uUHJvdmlkZXIuZ2V0T3BlbklEQ29uZmlndXJhdGlvbihjb25maWdJZCk7XG5cbiAgICBpZiAoIWF1dGhXZWxsa25vd25FbmRwb2ludFVybCkge1xuICAgICAgdGhpcy5sb2dnZXJTZXJ2aWNlLmxvZ0Vycm9yKGNvbmZpZ0lkLCAnbm8gYXV0aFdlbGxrbm93bkVuZHBvaW50IGdpdmVuIScpO1xuXG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgdGhpcy5sb2dnZXJTZXJ2aWNlLmxvZ0RlYnVnKGNvbmZpZ0lkLCAnQkVHSU4gQXV0aG9yaXplIE9JREMgRmxvdywgbm8gYXV0aCBkYXRhJyk7XG5cbiAgICB0aGlzLmF1dGhXZWxsS25vd25TZXJ2aWNlLmdldEF1dGhXZWxsS25vd25FbmRQb2ludHMoYXV0aFdlbGxrbm93bkVuZHBvaW50VXJsLCBjb25maWdJZCkuc3Vic2NyaWJlKCgpID0+IHtcbiAgICAgIGNvbnN0IHsgdXJsSGFuZGxlciwgY3VzdG9tUGFyYW1zIH0gPSBhdXRoT3B0aW9ucyB8fCB7fTtcblxuICAgICAgY29uc3QgdXJsID0gdGhpcy51cmxTZXJ2aWNlLmdldEF1dGhvcml6ZVVybChjb25maWdJZCwgY3VzdG9tUGFyYW1zKTtcblxuICAgICAgaWYgKCF1cmwpIHtcbiAgICAgICAgdGhpcy5sb2dnZXJTZXJ2aWNlLmxvZ0Vycm9yKGNvbmZpZ0lkLCAnQ291bGQgbm90IGNyZWF0ZSB1cmwnLCB1cmwpO1xuXG4gICAgICAgIHJldHVybjtcbiAgICAgIH1cblxuICAgICAgaWYgKHVybEhhbmRsZXIpIHtcbiAgICAgICAgdXJsSGFuZGxlcih1cmwpO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgdGhpcy5yZWRpcmVjdFNlcnZpY2UucmVkaXJlY3RUbyh1cmwpO1xuICAgICAgfVxuICAgIH0pO1xuICB9XG59XG4iXX0=
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3RhbmRhcmQtbG9naW4uc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2FuZ3VsYXItYXV0aC1vaWRjLWNsaWVudC9zcmMvbGliL2xvZ2luL3N0YW5kYXJkL3N0YW5kYXJkLWxvZ2luLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQzs7Ozs7Ozs7QUFVM0MsTUFBTSxPQUFPLG9CQUFvQjtJQUMvQixZQUNVLGFBQTRCLEVBQzVCLDZCQUE0RCxFQUM1RCxVQUFzQixFQUN0QixlQUFnQyxFQUNoQyxxQkFBNEMsRUFDNUMsb0JBQTBDO1FBTDFDLGtCQUFhLEdBQWIsYUFBYSxDQUFlO1FBQzVCLGtDQUE2QixHQUE3Qiw2QkFBNkIsQ0FBK0I7UUFDNUQsZUFBVSxHQUFWLFVBQVUsQ0FBWTtRQUN0QixvQkFBZSxHQUFmLGVBQWUsQ0FBaUI7UUFDaEMsMEJBQXFCLEdBQXJCLHFCQUFxQixDQUF1QjtRQUM1Qyx5QkFBb0IsR0FBcEIsb0JBQW9CLENBQXNCO0lBQ2pELENBQUM7SUFFSixhQUFhLENBQUMsUUFBZ0IsRUFBRSxXQUF5QjtRQUN2RCxJQUFJLENBQUMsSUFBSSxDQUFDLDZCQUE2QixDQUFDLDBCQUEwQixDQUFDLFFBQVEsQ0FBQyxFQUFFO1lBQzVFLElBQUksQ0FBQyxhQUFhLENBQUMsUUFBUSxDQUFDLFFBQVEsRUFBRSx3QkFBd0IsQ0FBQyxDQUFDO1lBRWhFLE9BQU87U0FDUjtRQUVELE1BQU0sRUFBRSx3QkFBd0IsRUFBRSxHQUFHLElBQUksQ0FBQyxxQkFBcUIsQ0FBQyxzQkFBc0IsQ0FBQyxRQUFRLENBQUMsQ0FBQztRQUVqRyxJQUFJLENBQUMsd0JBQXdCLEVBQUU7WUFDN0IsSUFBSSxDQUFDLGFBQWEsQ0FBQyxRQUFRLENBQUMsUUFBUSxFQUFFLGlDQUFpQyxDQUFDLENBQUM7WUFFekUsT0FBTztTQUNSO1FBRUQsSUFBSSxDQUFDLGFBQWEsQ0FBQyxRQUFRLENBQUMsUUFBUSxFQUFFLHlDQUF5QyxDQUFDLENBQUM7UUFFakYsSUFBSSxDQUFDLG9CQUFvQixDQUFDLHlCQUF5QixDQUFDLHdCQUF3QixFQUFFLFFBQVEsQ0FBQyxDQUFDLFNBQVMsQ0FBQyxHQUFHLEVBQUU7WUFDckcsTUFBTSxFQUFFLFVBQVUsRUFBRSxZQUFZLEVBQUUsR0FBRyxXQUFXLElBQUksRUFBRSxDQUFDO1lBRXZELE1BQU0sR0FBRyxHQUFHLElBQUksQ0FBQyxVQUFVLENBQUMsZUFBZSxDQUFDLFFBQVEsRUFBRSxZQUFZLENBQUMsQ0FBQztZQUVwRSxJQUFJLENBQUMsR0FBRyxFQUFFO2dCQUNSLElBQUksQ0FBQyxhQUFhLENBQUMsUUFBUSxDQUFDLFFBQVEsRUFBRSxzQkFBc0IsRUFBRSxHQUFHLENBQUMsQ0FBQztnQkFFbkUsT0FBTzthQUNSO1lBRUQsSUFBSSxVQUFVLEVBQUU7Z0JBQ2QsVUFBVSxDQUFDLEdBQUcsQ0FBQyxDQUFDO2FBQ2pCO2lCQUFNO2dCQUNMLElBQUksQ0FBQyxlQUFlLENBQUMsVUFBVSxDQUFDLEdBQUcsQ0FBQyxDQUFDO2FBQ3RDO1FBQ0gsQ0FBQyxDQUFDLENBQUM7SUFDTCxDQUFDOztpSEE1Q1Usb0JBQW9CO3FIQUFwQixvQkFBb0I7MkZBQXBCLG9CQUFvQjtrQkFEaEMsVUFBVSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEF1dGhPcHRpb25zIH0gZnJvbSAnLi4vLi4vYXV0aC1vcHRpb25zJztcbmltcG9ydCB7IEF1dGhXZWxsS25vd25TZXJ2aWNlIH0gZnJvbSAnLi4vLi4vY29uZmlnL2F1dGgtd2VsbC1rbm93bi9hdXRoLXdlbGwta25vd24uc2VydmljZSc7XG5pbXBvcnQgeyBDb25maWd1cmF0aW9uUHJvdmlkZXIgfSBmcm9tICcuLi8uLi9jb25maWcvcHJvdmlkZXIvY29uZmlnLnByb3ZpZGVyJztcbmltcG9ydCB7IExvZ2dlclNlcnZpY2UgfSBmcm9tICcuLi8uLi9sb2dnaW5nL2xvZ2dlci5zZXJ2aWNlJztcbmltcG9ydCB7IFJlZGlyZWN0U2VydmljZSB9IGZyb20gJy4uLy4uL3V0aWxzL3JlZGlyZWN0L3JlZGlyZWN0LnNlcnZpY2UnO1xuaW1wb3J0IHsgVXJsU2VydmljZSB9IGZyb20gJy4uLy4uL3V0aWxzL3VybC91cmwuc2VydmljZSc7XG5pbXBvcnQgeyBSZXNwb25zZVR5cGVWYWxpZGF0aW9uU2VydmljZSB9IGZyb20gJy4uL3Jlc3BvbnNlLXR5cGUtdmFsaWRhdGlvbi9yZXNwb25zZS10eXBlLXZhbGlkYXRpb24uc2VydmljZSc7XG5cbkBJbmplY3RhYmxlKClcbmV4cG9ydCBjbGFzcyBTdGFuZGFyZExvZ2luU2VydmljZSB7XG4gIGNvbnN0cnVjdG9yKFxuICAgIHByaXZhdGUgbG9nZ2VyU2VydmljZTogTG9nZ2VyU2VydmljZSxcbiAgICBwcml2YXRlIHJlc3BvbnNlVHlwZVZhbGlkYXRpb25TZXJ2aWNlOiBSZXNwb25zZVR5cGVWYWxpZGF0aW9uU2VydmljZSxcbiAgICBwcml2YXRlIHVybFNlcnZpY2U6IFVybFNlcnZpY2UsXG4gICAgcHJpdmF0ZSByZWRpcmVjdFNlcnZpY2U6IFJlZGlyZWN0U2VydmljZSxcbiAgICBwcml2YXRlIGNvbmZpZ3VyYXRpb25Qcm92aWRlcjogQ29uZmlndXJhdGlvblByb3ZpZGVyLFxuICAgIHByaXZhdGUgYXV0aFdlbGxLbm93blNlcnZpY2U6IEF1dGhXZWxsS25vd25TZXJ2aWNlXG4gICkge31cblxuICBsb2dpblN0YW5kYXJkKGNvbmZpZ0lkOiBzdHJpbmcsIGF1dGhPcHRpb25zPzogQXV0aE9wdGlvbnMpOiB2b2lkIHtcbiAgICBpZiAoIXRoaXMucmVzcG9uc2VUeXBlVmFsaWRhdGlvblNlcnZpY2UuaGFzQ29uZmlnVmFsaWRSZXNwb25zZVR5cGUoY29uZmlnSWQpKSB7XG4gICAgICB0aGlzLmxvZ2dlclNlcnZpY2UubG9nRXJyb3IoY29uZmlnSWQsICdJbnZhbGlkIHJlc3BvbnNlIHR5cGUhJyk7XG5cbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICBjb25zdCB7IGF1dGhXZWxsa25vd25FbmRwb2ludFVybCB9ID0gdGhpcy5jb25maWd1cmF0aW9uUHJvdmlkZXIuZ2V0T3BlbklEQ29uZmlndXJhdGlvbihjb25maWdJZCk7XG5cbiAgICBpZiAoIWF1dGhXZWxsa25vd25FbmRwb2ludFVybCkge1xuICAgICAgdGhpcy5sb2dnZXJTZXJ2aWNlLmxvZ0Vycm9yKGNvbmZpZ0lkLCAnbm8gYXV0aFdlbGxrbm93bkVuZHBvaW50IGdpdmVuIScpO1xuXG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgdGhpcy5sb2dnZXJTZXJ2aWNlLmxvZ0RlYnVnKGNvbmZpZ0lkLCAnQkVHSU4gQXV0aG9yaXplIE9JREMgRmxvdywgbm8gYXV0aCBkYXRhJyk7XG5cbiAgICB0aGlzLmF1dGhXZWxsS25vd25TZXJ2aWNlLmdldEF1dGhXZWxsS25vd25FbmRQb2ludHMoYXV0aFdlbGxrbm93bkVuZHBvaW50VXJsLCBjb25maWdJZCkuc3Vic2NyaWJlKCgpID0+IHtcbiAgICAgIGNvbnN0IHsgdXJsSGFuZGxlciwgY3VzdG9tUGFyYW1zIH0gPSBhdXRoT3B0aW9ucyB8fCB7fTtcblxuICAgICAgY29uc3QgdXJsID0gdGhpcy51cmxTZXJ2aWNlLmdldEF1dGhvcml6ZVVybChjb25maWdJZCwgY3VzdG9tUGFyYW1zKTtcblxuICAgICAgaWYgKCF1cmwpIHtcbiAgICAgICAgdGhpcy5sb2dnZXJTZXJ2aWNlLmxvZ0Vycm9yKGNvbmZpZ0lkLCAnQ291bGQgbm90IGNyZWF0ZSBVUkwnLCB1cmwpO1xuXG4gICAgICAgIHJldHVybjtcbiAgICAgIH1cblxuICAgICAgaWYgKHVybEhhbmRsZXIpIHtcbiAgICAgICAgdXJsSGFuZGxlcih1cmwpO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgdGhpcy5yZWRpcmVjdFNlcnZpY2UucmVkaXJlY3RUbyh1cmwpO1xuICAgICAgfVxuICAgIH0pO1xuICB9XG59XG4iXX0=

@@ -14,4 +14,5 @@ import { Injectable } from '@angular/core';

import * as i11 from "./callback/refresh-session.service";
import * as i12 from "./utils/url/url.service";
export class OidcSecurityService {
constructor(checkSessionService, checkAuthService, userService, tokenHelperService, configurationProvider, authStateService, flowsDataService, callbackService, logoffRevocationService, loginService, refreshSessionService) {
constructor(checkSessionService, checkAuthService, userService, tokenHelperService, configurationProvider, authStateService, flowsDataService, callbackService, logoffRevocationService, loginService, refreshSessionService, urlService) {
this.checkSessionService = checkSessionService;

@@ -28,2 +29,3 @@ this.checkAuthService = checkAuthService;

this.refreshSessionService = refreshSessionService;
this.urlService = urlService;
}

@@ -59,3 +61,3 @@ /**

/**
* Emits on a secure token server callback. The observable will never contain a value.
* Emits on a Security Token Service callback. The observable will never contain a value.
*/

@@ -96,3 +98,3 @@ get stsCallback$() {

*
* @param url The url to perform the authorization on the behalf of.
* @param url The URL to perform the authorization on the behalf of.
* @param configId The configId to perform the authorization on the behalf of. If not passed, the first configs will be taken

@@ -111,3 +113,3 @@ *

*
* @param url The url to perform the authorization on the behalf of.
* @param url The URL to perform the authorization on the behalf of.
* @param configId The configId to perform the authorization on the behalf of. If not passed, all of the current

@@ -218,3 +220,3 @@ * configured ones will be used to check.

/**
* Redirects the user to the secure token server to begin the authentication process.
* Redirects the user to the Security Token Service to begin the authentication process.
*

@@ -229,3 +231,3 @@ * @param configId The configId to perform the action in behalf of. If not passed, the first configs will be taken

/**
* Opens the secure token server in a new window to begin the authentication process.
* Opens the Security Token Service in a new window to begin the authentication process.
*

@@ -297,3 +299,3 @@ * @param authOptions The custom options for the authentication request.

/**
* Revokes an access token on the secure token server. This is only required in the code flow with refresh tokens. If no token is
* Revokes an access token on the Security Token Service. This is only required in the code flow with refresh tokens. If no token is
* provided, then the token from the storage is revoked. You can pass any token to revoke.

@@ -312,3 +314,3 @@ * https://tools.ietf.org/html/rfc7009

/**
* Revokes a refresh token on the secure token server. This is only required in the code flow with refresh tokens. If no token is
* Revokes a refresh token on the Security Token Service. This is only required in the code flow with refresh tokens. If no token is
* provided, then the token from the storage is revoked. You can pass any token to revoke.

@@ -338,8 +340,20 @@ * https://tools.ietf.org/html/rfc7009

}
/**
* Creates the authorize URL based on your flow
*
* @param customParams
* @param configId The configId to perform the action in behalf of. If not passed, the first configs will be taken
*
* @returns A string with the authorize URL or null
*/
getAuthorizeUrl(customParams, configId) {
configId = configId !== null && configId !== void 0 ? configId : this.configurationProvider.getOpenIDConfiguration(configId).configId;
return this.urlService.getAuthorizeUrl(configId, customParams);
}
}
OidcSecurityService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.0.4", ngImport: i0, type: OidcSecurityService, deps: [{ token: i1.CheckSessionService }, { token: i2.CheckAuthService }, { token: i3.UserService }, { token: i4.TokenHelperService }, { token: i5.ConfigurationProvider }, { token: i6.AuthStateService }, { token: i7.FlowsDataService }, { token: i8.CallbackService }, { token: i9.LogoffRevocationService }, { token: i10.LoginService }, { token: i11.RefreshSessionService }], target: i0.ɵɵFactoryTarget.Injectable });
OidcSecurityService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.0.4", ngImport: i0, type: OidcSecurityService, deps: [{ token: i1.CheckSessionService }, { token: i2.CheckAuthService }, { token: i3.UserService }, { token: i4.TokenHelperService }, { token: i5.ConfigurationProvider }, { token: i6.AuthStateService }, { token: i7.FlowsDataService }, { token: i8.CallbackService }, { token: i9.LogoffRevocationService }, { token: i10.LoginService }, { token: i11.RefreshSessionService }, { token: i12.UrlService }], target: i0.ɵɵFactoryTarget.Injectable });
OidcSecurityService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.0.4", ngImport: i0, type: OidcSecurityService });
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.0.4", ngImport: i0, type: OidcSecurityService, decorators: [{
type: Injectable
}], ctorParameters: function () { return [{ type: i1.CheckSessionService }, { type: i2.CheckAuthService }, { type: i3.UserService }, { type: i4.TokenHelperService }, { type: i5.ConfigurationProvider }, { type: i6.AuthStateService }, { type: i7.FlowsDataService }, { type: i8.CallbackService }, { type: i9.LogoffRevocationService }, { type: i10.LoginService }, { type: i11.RefreshSessionService }]; } });
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoib2lkYy5zZWN1cml0eS5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vcHJvamVjdHMvYW5ndWxhci1hdXRoLW9pZGMtY2xpZW50L3NyYy9saWIvb2lkYy5zZWN1cml0eS5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7Ozs7Ozs7Ozs7Ozs7QUFxQjNDLE1BQU0sT0FBTyxtQkFBbUI7SUF1QzlCLFlBQ1UsbUJBQXdDLEVBQ3hDLGdCQUFrQyxFQUNsQyxXQUF3QixFQUN4QixrQkFBc0MsRUFDdEMscUJBQTRDLEVBQzVDLGdCQUFrQyxFQUNsQyxnQkFBa0MsRUFDbEMsZUFBZ0MsRUFDaEMsdUJBQWdELEVBQ2hELFlBQTBCLEVBQzFCLHFCQUE0QztRQVY1Qyx3QkFBbUIsR0FBbkIsbUJBQW1CLENBQXFCO1FBQ3hDLHFCQUFnQixHQUFoQixnQkFBZ0IsQ0FBa0I7UUFDbEMsZ0JBQVcsR0FBWCxXQUFXLENBQWE7UUFDeEIsdUJBQWtCLEdBQWxCLGtCQUFrQixDQUFvQjtRQUN0QywwQkFBcUIsR0FBckIscUJBQXFCLENBQXVCO1FBQzVDLHFCQUFnQixHQUFoQixnQkFBZ0IsQ0FBa0I7UUFDbEMscUJBQWdCLEdBQWhCLGdCQUFnQixDQUFrQjtRQUNsQyxvQkFBZSxHQUFmLGVBQWUsQ0FBaUI7UUFDaEMsNEJBQXVCLEdBQXZCLHVCQUF1QixDQUF5QjtRQUNoRCxpQkFBWSxHQUFaLFlBQVksQ0FBYztRQUMxQiwwQkFBcUIsR0FBckIscUJBQXFCLENBQXVCO0lBQ25ELENBQUM7SUFsREo7Ozs7O09BS0c7SUFDSCxJQUFJLFNBQVM7UUFDWCxPQUFPLElBQUksQ0FBQyxXQUFXLENBQUMsU0FBUyxDQUFDO0lBQ3BDLENBQUM7SUFFRDs7Ozs7Ozs7T0FRRztJQUNILElBQUksZ0JBQWdCO1FBQ2xCLE9BQU8sSUFBSSxDQUFDLGdCQUFnQixDQUFDLGNB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QVEsYUFBUixRQUFRLGNBQVIsUUFBUSxHQUFJLElBQUksQ0FBQyxxQkFBcUIsQ0FBQyxzQkFBc0IsQ0FBQyxRQUFRLENBQUMsQ0FBQyxRQUFRLENBQUM7UUFFNUYsT0FBTyxJQUFJLENBQUMsdUJBQXVCLENBQUMsaUJBQWlCLENBQUMsUUFBUSxFQUFFLFdBQVcsQ0FBQyxDQUFDO0lBQy9FLENBQUM7SUFFRDs7Ozs7Ozs7O09BU0c7SUFDSCxrQkFBa0IsQ0FBQyxZQUFrQixFQUFFLFFBQWlCO1FBQ3RELFFBQVEsR0FBRyxRQUFRLGFBQVIsUUFBUSxjQUFSLFFBQVEsR0FBSSxJQUFJLENBQUMscUJBQXFCLENBQUMsc0JBQXNCLENBQUMsUUFBUSxDQUFDLENBQUMsUUFBUSxDQUFDO1FBRTVGLE9BQU8sSUFBSSxDQUFDLHVCQUF1QixDQUFDLGtCQUFrQixDQUFDLFFBQVEsRUFBRSxZQUFZLENBQUMsQ0FBQztJQUNqRixDQUFDO0lBRUQ7Ozs7Ozs7T0FPRztJQUNILGdCQUFnQixDQUFDLFlBQXlELEVBQUUsUUFBaUI7UUFDM0YsUUFBUSxHQUFHLFFBQVEsYUFBUixRQUFRLGNBQVIsUUFBUSxHQUFJLElBQUksQ0FBQyxxQkFBcUIsQ0FBQyxzQkFBc0IsQ0FBQyxRQUFRLENBQUMsQ0FBQyxRQUFRLENBQUM7UUFFNUYsT0FBTyxJQUFJLENBQUMsdUJBQXVCLENBQUMsZ0JBQWdCLENBQUMsUUFBUSxFQUFFLFlBQVksQ0FBQyxDQUFDO0lBQy9FLENBQUM7O2dIQTFXVSxtQkFBbUI7b0hBQW5CLG1CQUFtQjsyRkFBbkIsbUJBQW1CO2tCQUQvQixVQUFVIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgT2JzZXJ2YWJsZSB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgQXV0aE9wdGlvbnMgfSBmcm9tICcuL2F1dGgtb3B0aW9ucyc7XG5pbXBvcnQgeyBBdXRoZW50aWNhdGVkUmVzdWx0IH0gZnJvbSAnLi9hdXRoLXN0YXRlL2F1dGgtcmVzdWx0JztcbmltcG9ydCB7IEF1dGhTdGF0ZVNlcnZpY2UgfSBmcm9tICcuL2F1dGgtc3RhdGUvYXV0aC1zdGF0ZS5zZXJ2aWNlJztcbmltcG9ydCB7IENhbGxiYWNrU2VydmljZSB9IGZyb20gJy4vY2FsbGJhY2svY2FsbGJhY2suc2VydmljZSc7XG5pbXBvcnQgeyBSZWZyZXNoU2Vzc2lvblNlcnZpY2UgfSBmcm9tICcuL2NhbGxiYWNrL3JlZnJlc2gtc2Vzc2lvbi5zZXJ2aWNlJztcbmltcG9ydCB7IENoZWNrQXV0aFNlcnZpY2UgfSBmcm9tICcuL2NoZWNrLWF1dGguc2VydmljZSc7XG5pbXBvcnQgeyBPcGVuSWRDb25maWd1cmF0aW9uIH0gZnJvbSAnLi9jb25maWcvb3BlbmlkLWNvbmZpZ3VyYXRpb24nO1xuaW1wb3J0IHsgQ29uZmlndXJhdGlvblByb3ZpZGVyIH0gZnJvbSAnLi9jb25maWcvcHJvdmlkZXIvY29uZmlnLnByb3ZpZGVyJztcbmltcG9ydCB7IEZsb3dzRGF0YVNlcnZpY2UgfSBmcm9tICcuL2Zsb3dzL2Zsb3dzLWRhdGEuc2VydmljZSc7XG5pbXBvcnQgeyBDaGVja1Nlc3Npb25TZXJ2aWNlIH0gZnJvbSAnLi9pZnJhbWUvY2hlY2stc2Vzc2lvbi5zZXJ2aWNlJztcbmltcG9ydCB7IExvZ2luUmVzcG9uc2UgfSBmcm9tICcuL2xvZ2luL2xvZ2luLXJlc3BvbnNlJztcbmltcG9ydCB7IExvZ2luU2VydmljZSB9IGZyb20gJy4vbG9naW4vbG9naW4uc2VydmljZSc7XG5pbXBvcnQgeyBQb3B1cE9wdGlvbnMgfSBmcm9tICcuL2xvZ2luL3BvcHVwL3BvcHVwLW9wdGlvbnMnO1xuaW1wb3J0IHsgTG9nb2ZmUmV2b2NhdGlvblNlcnZpY2UgfSBmcm9tICcuL2xvZ29mZi1yZXZva2UvbG9nb2ZmLXJldm9jYXRpb24uc2VydmljZSc7XG5pbXBvcnQgeyBVc2VyU2VydmljZSB9IGZyb20gJy4vdXNlci1kYXRhL3VzZXIuc2VydmljZSc7XG5pbXBvcnQgeyBVc2VyRGF0YVJlc3VsdCB9IGZyb20gJy4vdXNlci1kYXRhL3VzZXJkYXRhLXJlc3VsdCc7XG5pbXBvcnQgeyBUb2tlbkhlbHBlclNlcnZpY2UgfSBmcm9tICcuL3V0aWxzL3Rva2VuSGVscGVyL3Rva2VuLWhlbHBlci5zZXJ2aWNlJztcblxuQEluamVjdGFibGUoKVxuZXhwb3J0IGNsYXNzIE9pZGNTZWN1cml0eVNlcnZpY2Uge1xuICAvKipcbiAgICogUHJvdmlkZXMgaW5mb3JtYXRpb24gYWJvdXQgdGhlIHVzZXIgYWZ0ZXIgdGhleSBoYXZlIGxvZ2dlZCBpbi5cbiAgICpcbiAgICogQHJldHVybnMgUmV0dXJucyBhbiBvYmplY3QgY29udGFpbmluZyBlaXRoZXIgdGhlIHVzZXIgZGF0YSBkaXJlY3RseSAoc2luZ2xlIGNvbmZpZykgb3JcbiAgICogdGhlIHVzZXIgZGF0YSBwZXIgY29uZmlnIGluIGNhc2UgeW91IGFyZSBydW5uaW5nIHdpdGggbXVsdGlwbGUgY29uZmlnc1xuICAgKi9cbiAgZ2V0IHVzZXJEYXRhJCgpOiBPYnNlcnZhYmxlPFVzZXJEYXRhUmVzdWx0PiB7XG4gICAgcmV0dXJuIHRoaXMudXNlclNlcnZpY2UudXNlckRhdGEkO1xuICB9XG5cbiAgLyoqXG4gICAqIEVtaXRzIGVhY2ggdGltZSBhbiBhdXRob3JpemF0aW9uIGV2ZW50IG9jY3Vycy5cbiAgICpcbiAgICogQHJldHVybnMgUmV0dXJucyBhbiBvYmplY3QgY29udGFpbmluZyBpZiB5b3UgYXJlIGF1dGhlbnRpY2F0ZWQgb3Igbm90LlxuICAgKiBTaW5nbGUgQ29uZmlnOiB0cnVlIGlmIGNvbmZpZyBpcyBhdXRoZW50aWNhdGVkLCBmYWxzZSBpZiBub3QuXG4gICAqIE11bHRpcGxlIENvbmZpZ3M6IHRydWUgaXMgYWxsIGNvbmZpZ3MgYXJlIGF1dGhlbnRpY2F0ZWQsIGZhbHNlIGlmIG9ubHkgb25lIG9mIHRoZW0gaXMgbm90XG4gICAqXG4gICAqIFRoZSBgYWxsQ29uZmlnc0F1dGhlbnRpY2F0ZWRgIHByb3BlcnR5IGNvbnRhaW5zIHRoZSBhdXRoIGluZm9ybWF0aW9uIF9wZXIgY29uZmlnXy5cbiAgICovXG4gIGdldCBpc0F1dGhlbnRpY2F0ZWQkKCk6IE9ic2VydmFibGU8QXV0aGVudGljYXRlZFJlc3VsdD4ge1xuICAgIHJldHVybiB0aGlzLmF1dGhTdGF0ZVNlcnZpY2UuYXV0aGVudGljYXRlZCQ7XG4gIH1cblxuICAvKipcbiAgICogRW1pdHMgZWFjaCB0aW1lIHRoZSBzZXJ2ZXIgc2VuZHMgYSBDaGVja1Nlc3Npb24gZXZlbnQgYW5kIHRoZSB2YWx1ZSBjaGFuZ2VkLiBUaGlzIHByb3BlcnR5IHdpbGwgYWx3YXlzIHJldHVyblxuICAgKiB0cnVlLlxuICAgKi9cbiAgZ2V0IGNoZWNrU2Vzc2lvbkNoYW5nZWQkKCk6IE9ic2VydmFibGU8Ym9vbGVhbj4ge1xuICAgIHJldHVybiB0aGlzLmNoZWNrU2Vzc2lvblNlcnZpY2UuY2hlY2tTZXNzaW9uQ2hhbmdlZCQ7XG4gIH1cblxuICAvKipcbiAgICogRW1pdHMgb24gYSBzZWN1cmUgdG9rZW4gc2VydmVyIGNhbGxiYWNrLiBUaGUgb2JzZXJ2YWJsZSB3aWxsIG5ldmVyIGNvbnRhaW4gYSB2YWx1ZS5cbiAgICovXG4gIGdldCBzdHNDYWxsYmFjayQoKTogT2JzZXJ2YWJsZTxhbnk+IHtcbiAgICByZXR1cm4gdGhpcy5jYWxsYmFja1NlcnZpY2Uuc3RzQ2FsbGJhY2skO1xuICB9XG5cbiAgY29uc3RydWN0b3IoXG4gICAgcHJpdmF0ZSBjaGVja1Nlc3Npb25TZXJ2aWNlOiBDaGVja1Nlc3Npb25TZXJ2aWNlLFxuICAgIHByaXZhdGUgY2hlY2tBdXRoU2VydmljZTogQ2hlY2tBdXRoU2VydmljZSxcbiAgICBwcml2YXRlIHVzZXJTZXJ2aWNlOiBVc2VyU2VydmljZSxcbiAgICBwcml2YXRlIHRva2VuSGVscGVyU2VydmljZTogVG9rZW5IZWxwZXJTZXJ2aWNlLFxuICAgIHByaXZhdGUgY29uZmlndXJhdGlvblByb3ZpZGVyOiBDb25maWd1cmF0aW9uUHJvdmlkZXIsXG4gICAgcHJpdmF0ZSBhdXRoU3RhdGVTZXJ2aWNlOiBBdXRoU3RhdGVTZXJ2aWNlLFxuICAgIHByaXZhdGUgZmxvd3NEYXRhU2VydmljZTogRmxvd3NEYXRhU2VydmljZSxcbiAgICBwcml2YXRlIGNhbGxiYWNrU2VydmljZTogQ2FsbGJhY2tTZXJ2aWNlLFxuICAgIHByaXZhdGUgbG9nb2ZmUmV2b2NhdGlvblNlcnZpY2U6IExvZ29mZlJldm9jYXRpb25TZXJ2aWNlLFxuICAgIHByaXZhdGUgbG9naW5TZXJ2aWNlOiBMb2dpblNlcnZpY2UsXG4gICAgcHJpdmF0ZSByZWZyZXNoU2Vzc2lvblNlcnZpY2U6IFJlZnJlc2hTZXNzaW9uU2VydmljZVxuICApIHt9XG5cbiAgLyoqXG4gICAqIFJldHVybnMgdGhlIGN1cnJlbnRseSBhY3RpdmUgT3BlbklEIGNvbmZpZ3VyYXRpb25zLlxuICAgKlxuICAgKiBAcmV0dXJucyBhbiBhcnJheSBvZiBPcGVuSWRDb25maWd1cmF0aW9ucy5cbiAgICovXG4gIGdldENvbmZpZ3VyYXRpb25zKCk6IE9wZW5JZENvbmZpZ3VyYXRpb25bXSB7XG4gICAgcmV0dXJuIHRoaXMuY29uZmlndXJhdGlvblByb3ZpZGVyLmdldEFsbENvbmZpZ3VyYXRpb25zKCk7XG4gIH1cblxuICAvKipcbiAgICogUmV0dXJucyBhIHNpbmdsZSBhY3RpdmUgT3BlbklkQ29uZmlndXJhdGlvbi5cbiAgICpcbiAgICogQHBhcmFtIGNvbmZpZ0lkIFRoZSBjb25maWdJZCB0byBpZGVudGlmeSB0aGUgY29uZmlnLiBJZiBub3QgcGFzc2VkLCB0aGUgZmlyc3Qgb25lIGlzIGJlaW5nIHJldHVybmVkXG4gICAqL1xuICBnZXRDb25maWd1cmF0aW9uKGNvbmZpZ0lkPzogc3RyaW5nKTogT3BlbklkQ29uZmlndXJhdGlvbiB7XG4gICAgY29uZmlnSWQgPSBjb25maWdJZCA/PyB0aGlzLmNvbmZpZ3VyYXRpb25Qcm92aWRlci5nZXRPcGVuSURDb25maWd1cmF0aW9uKCkuY29uZmlnSWQ7XG5cbiAgICByZXR1cm4gdGhpcy5jb25maWd1cmF0aW9uUHJvdmlkZXIuZ2V0T3BlbklEQ29uZmlndXJhdGlvbihjb25maWdJZCk7XG4gIH1cblxuICAvKipcbiAgICogUmV0dXJucyB0aGUgdXNlckRhdGEgZm9yIGEgY29uZmlndXJhdGlvblxuICAgKlxuICAgKiBAcGFyYW0gY29uZmlnSWQgVGhlIGNvbmZpZ0lkIHRvIGlkZW50aWZ5IHRoZSBjb25maWcuIElmIG5vdCBwYXNzZWQsIHRoZSBmaXJzdCBvbmUgaXMgYmVpbmcgdXNlZFxuICAgKi9cbiAgZ2V0VXNlckRhdGEoY29uZmlnSWQ/OiBzdHJpbmcpOiBhbnkge1xuICAgIGNvbmZpZ0lkID0gY29uZmlnSWQgPz8gdGhpcy5jb25maWd1cmF0aW9uUHJvdmlkZXIuZ2V0T3BlbklEQ29uZmlndXJhdGlvbigpLmNvbmZpZ0lkO1xuXG4gICAgcmV0dXJuIHRoaXMudXNlclNlcnZpY2UuZ2V0VXNlckRhdGFGcm9tU3RvcmUoY29uZmlnSWQpO1xuICB9XG5cbiAgLyoqXG4gICAqIFN0YXJ0cyB0aGUgY29tcGxldGUgc2V0dXAgZmxvdyBmb3Igb25lIGNvbmZpZ3VyYXRpb24uIENhbGxpbmcgd2lsbCBzdGFydCB0aGUgZW50aXJlIGF1dGhlbnRpY2F0aW9uIGZsb3csIGFuZCB0aGUgcmV0dXJuZWQgb2JzZXJ2YWJsZVxuICAgKiB3aWxsIGRlbm90ZSB3aGV0aGVyIHRoZSB1c2VyIHdhcyBzdWNjZXNzZnVsbHkgYXV0aGVudGljYXRlZCBpbmNsdWRpbmcgdGhlIHVzZXIgZGF0YSwgdGhlIGFjY2VzcyB0b2tlbiwgdGhlIGNvbmZpZ0lkIGFuZFxuICAgKiBhbiBlcnJvciBtZXNzYWdlIGluIGNhc2UgYW4gZXJyb3IgaGFwcGVuZWRcbiAgICpcbiAgICogQHBhcmFtIHVybCBUaGUgdXJsIHRvIHBlcmZvcm0gdGhlIGF1dGhvcml6YXRpb24gb24gdGhlIGJlaGFsZiBvZi5cbiAgICogQHBhcmFtIGNvbmZpZ0lkIFRoZSBjb25maWdJZCB0byBwZXJmb3JtIHRoZSBhdXRob3JpemF0aW9uIG9uIHRoZSBiZWhhbGYgb2YuIElmIG5vdCBwYXNzZWQsIHRoZSBmaXJzdCBjb25maWdzIHdpbGwgYmUgdGFrZW5cbiAgICpcbiAgICogQHJldHVybnMgQW4gb2JqZWN0IGBMb2dpblJlc3BvbnNlYCBjb250YWluaW5nIGFsbCBpbmZvcm1hdGlvbiBhYm91dCB0aGUgbG9naW5cbiAgICovXG4gIGNoZWNrQXV0aCh1cmw/OiBzdHJpbmcsIGNvbmZpZ0lkPzogc3RyaW5nKTogT2JzZXJ2YWJsZTxMb2dpblJlc3BvbnNlPiB7XG4gICAgcmV0dXJuIHRoaXMuY2hlY2tBdXRoU2VydmljZS5jaGVja0F1dGgoY29uZmlnSWQsIHVybCk7XG4gIH1cblxuICAvKipcbiAgICogU3RhcnRzIHRoZSBjb21wbGV0ZSBzZXR1cCBmbG93IGZvciBtdWx0aXBsZSBjb25maWd1cmF0aW9ucy5cbiAgICogQ2FsbGluZyB3aWxsIHN0YXJ0IHRoZSBlbnRpcmUgYXV0aGVudGljYXRpb24gZmxvdywgYW5kIHRoZSByZXR1cm5lZCBvYnNlcnZhYmxlXG4gICAqIHdpbGwgZGVub3RlIHdoZXRoZXIgdGhlIHVzZXIgd2FzIHN1Y2Nlc3NmdWxseSBhdXRoZW50aWNhdGVkIGluY2x1ZGluZyB0aGUgdXNlciBkYXRhLCB0aGUgYWNjZXNzIHRva2VuLCB0aGUgY29uZmlnSWQgYW5kXG4gICAqIGFuIGVycm9yIG1lc3NhZ2UgaW4gY2FzZSBhbiBlcnJvciBoYXBwZW5lZCBpbiBhbiBhcnJheSBmb3IgZWFjaCBjb25maWcgd2hpY2ggd2FzIHByb3ZpZGVkXG4gICAqXG4gICAqIEBwYXJhbSB1cmwgVGhlIHVybCB0byBwZXJmb3JtIHRoZSBhdXRob3JpemF0aW9uIG9uIHRoZSBiZWhhbGYgb2YuXG4gICAqIEBwYXJhbSBjb25maWdJZCBUaGUgY29uZmlnSWQgdG8gcGVyZm9ybSB0aGUgYXV0aG9yaXphdGlvbiBvbiB0aGUgYmVoYWxmIG9mLiBJZiBub3QgcGFzc2VkLCBhbGwgb2YgdGhlIGN1cnJlbnRcbiAgICogY29uZmlndXJlZCBvbmVzIHdpbGwgYmUgdXNlZCB0byBjaGVjay5cbiAgICpcbiAgICogQHJldHVybnMgQW4gYXJyYXkgb2YgYExvZ2luUmVzcG9uc2VgIG9iamVjdHMgY29udGFpbmluZyBhbGwgaW5mb3JtYXRpb24gYWJvdXQgdGhlIGxvZ2luc1xuICAgKi9cbiAgY2hlY2tBdXRoTXVsdGlwbGUodXJsPzogc3RyaW5nLCBjb25maWdJZD86IHN0cmluZyk6IE9ic2VydmFibGU8TG9naW5SZXNwb25zZVtdPiB7XG4gICAgcmV0dXJuIHRoaXMuY2hlY2tBdXRoU2VydmljZS5jaGVja0F1dGhNdWx0aXBsZShjb25maWdJZCwgdXJsKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBQcm92aWRlcyBpbmZvcm1hdGlvbiBhYm91dCB0aGUgY3VycmVudCBhdXRoZW50aWNhdGVkIHN0YXRlXG4gICAqXG4gICAqIEBwYXJhbSBjb25maWdJZCBUaGUgY29uZmlnSWQgdG8gY2hlY2sgdGhlIGluZm9ybWF0aW9uIGZvci4gSWYgbm90IHBhc3NlZCwgdGhlIGZpcnN0IGNvbmZpZ3Mgd2lsbCBiZSB0YWtlblxuICAgKlxuICAgKiBAcmV0dXJucyBBIGJvb2xlYW4gd2hldGhlciB0aGUgY29uZmlnIGlzIGF1dGhlbnRpY2F0ZWQgb3Igbm90LlxuICAgKi9cbiAgaXNBdXRoZW50aWNhdGVkKGNvbmZpZ0lkPzogc3RyaW5nKTogYm9vbGVhbiB7XG4gICAgY29uZmlnSWQgPSBjb25maWdJZCA/PyB0aGlzLmNvbmZpZ3VyYXRpb25Qcm92aWRlci5nZXRPcGVuSURDb25maWd1cmF0aW9uKGNvbmZpZ0lkKS5jb25maWdJZDtcblxuICAgIHJldHVybiB0aGlzLmF1dGhTdGF0ZVNlcnZpY2UuaXNBdXRoZW50aWNhdGVkKGNvbmZpZ0lkKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBDaGVja3MgdGhlIHNlcnZlciBmb3IgYW4gYXV0aGVudGljYXRlZCBzZXNzaW9uIHVzaW5nIHRoZSBpZnJhbWUgc2lsZW50IHJlbmV3IGlmIG5vdCBsb2NhbGx5IGF1dGhlbnRpY2F0ZWQuXG4gICAqL1xuICBjaGVja0F1dGhJbmNsdWRpbmdTZXJ2ZXIoY29uZmlnSWQ/OiBzdHJpbmcpOiBPYnNlcnZhYmxlPExvZ2luUmVzcG9uc2U+IHtcbiAgICBjb25maWdJZCA9IGNvbmZpZ0lkID8/IHRoaXMuY29uZmlndXJhdGlvblByb3ZpZGVyLmdldE9wZW5JRENvbmZpZ3VyYXRpb24oY29uZmlnSWQpLmNvbmZpZ0lkO1xuXG4gICAgcmV0dXJuIHRoaXMuY2hlY2tBdXRoU2VydmljZS5jaGVja0F1dGhJbmNsdWRpbmdTZXJ2ZXIoY29uZmlnSWQpO1xuICB9XG5cbiAgLyoqXG4gICAqIFJldHVybnMgdGhlIGFjY2VzcyB0b2tlbiBmb3IgdGhlIGxvZ2luIHNjZW5hcmlvLlxuICAgKlxuICAgKiBAcGFyYW0gY29uZmlnSWQgVGhlIGNvbmZpZ0lkIHRvIGNoZWNrIHRoZSBpbmZvcm1hdGlvbiBmb3IuIElmIG5vdCBwYXNzZWQsIHRoZSBmaXJzdCBjb25maWdzIHdpbGwgYmUgdGFrZW5cbiAgICpcbiAgICogQHJldHVybnMgQSBzdHJpbmcgd2l0aCB0aGUgYWNjZXNzIHRva2VuLlxuICAgKi9cbiAgZ2V0QWNjZXNzVG9rZW4oY29uZmlnSWQ/OiBzdHJpbmcpOiBzdHJpbmcge1xuICAgIGNvbmZpZ0lkID0gY29uZmlnSWQgPz8gdGhpcy5jb25maWd1cmF0aW9uUHJvdmlkZXIuZ2V0T3BlbklEQ29uZmlndXJhdGlvbihjb25maWdJZCkuY29uZmlnSWQ7XG5cbiAgICByZXR1cm4gdGhpcy5hdXRoU3RhdGVTZXJ2aWNlLmdldEFjY2Vzc1Rva2VuKGNvbmZpZ0lkKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBSZXR1cm5zIHRoZSBJRCB0b2tlbiBmb3IgdGhlIHNpZ24taW4uXG4gICAqXG4gICAqIEBwYXJhbSBjb25maWdJZCBUaGUgY29uZmlnSWQgdG8gY2hlY2sgdGhlIGluZm9ybWF0aW9uIGZvci4gSWYgbm90IHBhc3NlZCwgdGhlIGZpcnN0IGNvbmZpZ3Mgd2lsbCBiZSB0YWtlblxuICAgKlxuICAgKiBAcmV0dXJucyBBIHN0cmluZyB3aXRoIHRoZSBpZCB0b2tlbi5cbiAgICovXG4gIGdldElkVG9rZW4oY29uZmlnSWQ/OiBzdHJpbmcpOiBzdHJpbmcge1xuICAgIGNvbmZpZ0lkID0gY29uZmlnSWQgPz8gdGhpcy5jb25maWd1cmF0aW9uUHJvdmlkZXIuZ2V0T3BlbklEQ29uZmlndXJhdGlvbihjb25maWdJZCkuY29uZmlnSWQ7XG5cbiAgICByZXR1cm4gdGhpcy5hdXRoU3RhdGVTZXJ2aWNlLmdldElkVG9rZW4oY29uZmlnSWQpO1xuICB9XG5cbiAgLyoqXG4gICAqIFJldHVybnMgdGhlIHJlZnJlc2ggdG9rZW4sIGlmIHByZXNlbnQsIGZvciB0aGUgc2lnbi1pbi5cbiAgICpcbiAgICogQHBhcmFtIGNvbmZpZ0lkIFRoZSBjb25maWdJZCB0byBjaGVjayB0aGUgaW5mb3JtYXRpb24gZm9yLiBJZiBub3QgcGFzc2VkLCB0aGUgZmlyc3QgY29uZmlncyB3aWxsIGJlIHRha2VuXG4gICAqXG4gICAqIEByZXR1cm5zIEEgc3RyaW5nIHdpdGggdGhlIHJlZnJlc2ggdG9rZW4uXG4gICAqL1xuICBnZXRSZWZyZXNoVG9rZW4oY29uZmlnSWQ/OiBzdHJpbmcpOiBzdHJpbmcge1xuICAgIGNvbmZpZ0lkID0gY29uZmlnSWQgPz8gdGhpcy5jb25maWd1cmF0aW9uUHJvdmlkZXIuZ2V0T3BlbklEQ29uZmlndXJhdGlvbihjb25maWdJZCkuY29uZmlnSWQ7XG5cbiAgICByZXR1cm4gdGhpcy5hdXRoU3RhdGVTZXJ2aWNlLmdldFJlZnJlc2hUb2tlbihjb25maWdJZCk7XG4gIH1cblxuICAvKipcbiAgICogUmV0dXJucyB0aGUgYXV0aGVudGljYXRpb24gcmVzdWx0LCBpZiBwcmVzZW50LCBmb3IgdGhlIHNpZ24taW4uXG4gICAqXG4gICAqIEBwYXJhbSBjb25maWdJZCBUaGUgY29uZmlnSWQgdG8gY2hlY2sgdGhlIGluZm9ybWF0aW9uIGZvci4gSWYgbm90IHBhc3NlZCwgdGhlIGZpcnN0IGNvbmZpZ3Mgd2lsbCBiZSB0YWtlblxuICAgKlxuICAgKiBAcmV0dXJucyBBIG9iamVjdCB3aXRoIHRoZSBhdXRoZW50aWNhdGlvbiByZXN1bHRcbiAgICovXG4gIGdldEF1dGhlbnRpY2F0aW9uUmVzdWx0KGNvbmZpZ0lkPzogc3RyaW5nKTogYW55IHtcbiAgICBjb25maWdJZCA9IGNvbmZpZ0lkID8/IHRoaXMuY29uZmlndXJhdGlvblByb3ZpZGVyLmdldE9wZW5JRENvbmZpZ3VyYXRpb24oY29uZmlnSWQpLmNvbmZpZ0lkO1xuXG4gICAgcmV0dXJuIHRoaXMuYXV0aFN0YXRlU2VydmljZS5nZXRBdXRoZW50aWNhdGlvblJlc3VsdChjb25maWdJZCk7XG4gIH1cblxuICAvKipcbiAgICogUmV0dXJucyB0aGUgcGF5bG9hZCBmcm9tIHRoZSBJRCB0b2tlbi5cbiAgICpcbiAgICogQHBhcmFtIGVuY29kZSBTZXQgdG8gdHJ1ZSBpZiB0aGUgcGF5bG9hZCBpcyBiYXNlNjQgZW5jb2RlZFxuICAgKiBAcGFyYW0gY29uZmlnSWQgVGhlIGNvbmZpZ0lkIHRvIGNoZWNrIHRoZSBpbmZvcm1hdGlvbiBmb3IuIElmIG5vdCBwYXNzZWQsIHRoZSBmaXJzdCBjb25maWdzIHdpbGwgYmUgdGFrZW5cbiAgICpcbiAgICogQHJldHVybnMgVGhlIHBheWxvYWQgZnJvbSB0aGUgaWQgdG9rZW4uXG4gICAqL1xuICBnZXRQYXlsb2FkRnJvbUlkVG9rZW4oZW5jb2RlID0gZmFsc2UsIGNvbmZpZ0lkPzogc3RyaW5nKTogYW55IHtcbiAgICBjb25maWdJZCA9IGNvbmZpZ0lkID8/IHRoaXMuY29uZmlndXJhdGlvblByb3ZpZGVyLmdldE9wZW5JRENvbmZpZ3VyYXRpb24oY29uZmlnSWQpLmNvbmZpZ0lkO1xuICAgIGNvbnN0IHRva2VuID0gdGhpcy5hdXRoU3RhdGVTZXJ2aWNlLmdldElkVG9rZW4oY29uZmlnSWQpO1xuXG4gICAgcmV0dXJuIHRoaXMudG9rZW5IZWxwZXJTZXJ2aWNlLmdldFBheWxvYWRGcm9tVG9rZW4odG9rZW4sIGVuY29kZSwgY29uZmlnSWQpO1xuICB9XG5cbiAgLyoqXG4gICAqIFNldHMgYSBjdXN0b20gc3RhdGUgZm9yIHRoZSBhdXRob3JpemUgcmVxdWVzdC5cbiAgICpcbiAgICogQHBhcmFtIHN0YXRlIFRoZSBzdGF0ZSB0byBzZXQuXG4gICAqIEBwYXJhbSBjb25maWdJZCBUaGUgY29uZmlnSWQgdG8gY2hlY2sgdGhlIGluZm9ybWF0aW9uIGZvci4gSWYgbm90IHBhc3NlZCwgdGhlIGZpcnN0IGNvbmZpZ3Mgd2lsbCBiZSB0YWtlblxuICAgKi9cbiAgc2V0U3RhdGUoc3RhdGU6IHN0cmluZywgY29uZmlnSWQ/OiBzdHJpbmcpOiB2b2lkIHtcbiAgICBjb25maWdJZCA9IGNvbmZpZ0lkID8/IHRoaXMuY29uZmlndXJhdGlvblByb3ZpZGVyLmdldE9wZW5JRENvbmZpZ3VyYXRpb24oY29uZmlnSWQpLmNvbmZpZ0lkO1xuXG4gICAgdGhpcy5mbG93c0RhdGFTZXJ2aWNlLnNldEF1dGhTdGF0ZUNvbnRyb2woc3RhdGUsIGNvbmZpZ0lkKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBHZXRzIHRoZSBzdGF0ZSB2YWx1ZSB1c2VkIGZvciB0aGUgYXV0aG9yaXplIHJlcXVlc3QuXG4gICAqXG4gICAqIEBwYXJhbSBjb25maWdJZCBUaGUgY29uZmlnSWQgdG8gY2hlY2sgdGhlIGluZm9ybWF0aW9uIGZvci4gSWYgbm90IHBhc3NlZCwgdGhlIGZpcnN0IGNvbmZpZ3Mgd2lsbCBiZSB0YWtlblxuICAgKlxuICAgKiBAcmV0dXJucyBUaGUgc3RhdGUgdmFsdWUgdXNlZCBmb3IgdGhlIGF1dGhvcml6ZSByZXF1ZXN0LlxuICAgKi9cbiAgZ2V0U3RhdGUoY29uZmlnSWQ/OiBzdHJpbmcpOiBzdHJpbmcge1xuICAgIGNvbmZpZ0lkID0gY29uZmlnSWQgPz8gdGhpcy5jb25maWd1cmF0aW9uUHJvdmlkZXIuZ2V0T3BlbklEQ29uZmlndXJhdGlvbihjb25maWdJZCkuY29uZmlnSWQ7XG5cbiAgICByZXR1cm4gdGhpcy5mbG93c0RhdGFTZXJ2aWNlLmdldEF1dGhTdGF0ZUNvbnRyb2woY29uZmlnSWQpO1xuICB9XG5cbiAgLyoqXG4gICAqIFJlZGlyZWN0cyB0aGUgdXNlciB0byB0aGUgc2VjdXJlIHRva2VuIHNlcnZlciB0byBiZWdpbiB0aGUgYXV0aGVudGljYXRpb24gcHJvY2Vzcy5cbiAgICpcbiAgICogQHBhcmFtIGNvbmZpZ0lkIFRoZSBjb25maWdJZCB0byBwZXJmb3JtIHRoZSBhY3Rpb24gaW4gYmVoYWxmIG9mLiBJZiBub3QgcGFzc2VkLCB0aGUgZmlyc3QgY29uZmlncyB3aWxsIGJlIHRha2VuXG4gICAqIEBwYXJhbSBhdXRoT3B0aW9ucyBUaGUgY3VzdG9tIG9wdGlvbnMgZm9yIHRoZSB0aGUgYXV0aGVudGljYXRpb24gcmVxdWVzdC5cbiAgICovXG4gIGF1dGhvcml6ZShjb25maWdJZD86IHN0cmluZywgYXV0aE9wdGlvbnM/OiBBdXRoT3B0aW9ucyk6IHZvaWQge1xuICAgIGNvbmZpZ0lkID0gY29uZmlnSWQgPz8gdGhpcy5jb25maWd1cmF0aW9uUHJvdmlkZXIuZ2V0T3BlbklEQ29uZmlndXJhdGlvbihjb25maWdJZCkuY29uZmlnSWQ7XG5cbiAgICB0aGlzLmxvZ2luU2VydmljZS5sb2dpbihjb25maWdJZCwgYXV0aE9wdGlvbnMpO1xuICB9XG5cbiAgLyoqXG4gICAqIE9wZW5zIHRoZSBzZWN1cmUgdG9rZW4gc2VydmVyIGluIGEgbmV3IHdpbmRvdyB0byBiZWdpbiB0aGUgYXV0aGVudGljYXRpb24gcHJvY2Vzcy5cbiAgICpcbiAgICogQHBhcmFtIGF1dGhPcHRpb25zIFRoZSBjdXN0b20gb3B0aW9ucyBmb3IgdGhlIGF1dGhlbnRpY2F0aW9uIHJlcXVlc3QuXG4gICAqIEBwYXJhbSBwb3B1cE9wdGlvbnMgVGhlIGNvbmZpZ3VyYXRpb24gZm9yIHRoZSBwb3B1cCB3aW5kb3cuXG4gICAqIEBwYXJhbSBjb25maWdJZCBUaGUgY29uZmlnSWQgdG8gcGVyZm9ybSB0aGUgYWN0aW9uIGluIGJlaGFsZiBvZi4gSWYgbm90IHBhc3NlZCwgdGhlIGZpcnN0IGNvbmZpZ3Mgd2lsbCBiZSB0YWtlblxuICAgKlxuICAgKiBAcmV0dXJucyBBbiBgT2JzZXJ2YWJsZTxMb2dpblJlc3BvbnNlPmAgY29udGFpbmluZyBhbGwgaW5mb3JtYXRpb24gYWJvdXQgdGhlIGxvZ2luXG4gICAqL1xuICBhdXRob3JpemVXaXRoUG9wVXAoYXV0aE9wdGlvbnM/OiBBdXRoT3B0aW9ucywgcG9wdXBPcHRpb25zPzogUG9wdXBPcHRpb25zLCBjb25maWdJZD86IHN0cmluZyk6IE9ic2VydmFibGU8TG9naW5SZXNwb25zZT4ge1xuICAgIGNvbmZpZ0lkID0gY29uZmlnSWQgPz8gdGhpcy5jb25maWd1cmF0aW9uUHJvdmlkZXIuZ2V0T3BlbklEQ29uZmlndXJhdGlvbihjb25maWdJZCkuY29uZmlnSWQ7XG5cbiAgICByZXR1cm4gdGhpcy5sb2dpblNlcnZpY2UubG9naW5XaXRoUG9wVXAoY29uZmlnSWQsIGF1dGhPcHRpb25zLCBwb3B1cE9wdGlvbnMpO1xuICB9XG5cbiAgLyoqXG4gICAqIE1hbnVhbGx5IHJlZnJlc2hlcyB0aGUgc2Vzc2lvbi5cbiAgICpcbiAgICogQHBhcmFtIGN1c3RvbVBhcmFtcyBDdXN0b20gcGFyYW1ldGVycyB0byBwYXNzIHRvIHRoZSByZWZyZXNoIHJlcXVlc3QuXG4gICAqIEBwYXJhbSBjb25maWdJZCBUaGUgY29uZmlnSWQgdG8gcGVyZm9ybSB0aGUgYWN0aW9uIGluIGJlaGFsZiBvZi4gSWYgbm90IHBhc3NlZCwgdGhlIGZpcnN0IGNvbmZpZ3Mgd2lsbCBiZSB0YWtlblxuICAgKlxuICAgKiBAcmV0dXJucyBBbiBgT2JzZXJ2YWJsZTxMb2dpblJlc3BvbnNlPmAgY29udGFpbmluZyBhbGwgaW5mb3JtYXRpb24gYWJvdXQgdGhlIGxvZ2luXG4gICAqL1xuICBmb3JjZVJlZnJlc2hTZXNzaW9uKGN1c3RvbVBhcmFtcz86IHsgW2tleTogc3RyaW5nXTogc3RyaW5nIHwgbnVtYmVyIHwgYm9vbGVhbiB9LCBjb25maWdJZD86IHN0cmluZyk6IE9ic2VydmFibGU8TG9naW5SZXNwb25zZT4ge1xuICAgIGNvbmZpZ0lkID0gY29uZmlnSWQgPz8gdGhpcy5jb25maWd1cmF0aW9uUHJvdmlkZXIuZ2V0T3BlbklEQ29uZmlndXJhdGlvbihjb25maWdJZCkuY29uZmlnSWQ7XG5cbiAgICByZXR1cm4gdGhpcy5yZWZyZXNoU2Vzc2lvblNlcnZpY2UudXNlckZvcmNlUmVmcmVzaFNlc3Npb24oY29uZmlnSWQsIGN1c3RvbVBhcmFtcyk7XG4gIH1cblxuICAvKipcbiAgICogUmV2b2tlcyB0aGUgcmVmcmVzaCB0b2tlbiAoaWYgcHJlc2VudCkgYW5kIHRoZSBhY2Nlc3MgdG9rZW4gb24gdGhlIHNlcnZlciBhbmQgdGhlbiBwZXJmb3JtcyB0aGUgbG9nb2ZmIG9wZXJhdGlvbi5cbiAgICogVGhlIHJlZnJlc2ggdG9rZW4gYW5kIGFuZCB0aGUgYWNjZXNzIHRva2VuIGFyZSByZXZva2VkIG9uIHRoZSBzZXJ2ZXIuIElmIHRoZSByZWZyZXNoIHRva2VuIGRvZXMgbm90IGV4aXN0XG4gICAqIG9ubHkgdGhlIGFjY2VzcyB0b2tlbiBpcyByZXZva2VkLiBUaGVuIHRoZSBsb2dvdXQgcnVuLlxuICAgKlxuICAgKiBAcGFyYW0gY29uZmlnSWQgVGhlIGNvbmZpZ0lkIHRvIHBlcmZvcm0gdGhlIGFjdGlvbiBpbiBiZWhhbGYgb2YuIElmIG5vdCBwYXNzZWQsIHRoZSBmaXJzdCBjb25maWdzIHdpbGwgYmUgdGFrZW5cbiAgICogQHBhcmFtIGF1dGhPcHRpb25zIFRoZSBjdXN0b20gb3B0aW9ucyBmb3IgdGhlIHJlcXVlc3QuXG4gICAqXG4gICAqIEByZXR1cm5zIEFuIG9ic2VydmFibGUgd2hlbiB0aGUgYWN0aW9uIGlzIGZpbmlzaGVkXG4gICAqL1xuICBsb2dvZmZBbmRSZXZva2VUb2tlbnMoY29uZmlnSWQ/OiBzdHJpbmcsIGF1dGhPcHRpb25zPzogQXV0aE9wdGlvbnMpOiBPYnNlcnZhYmxlPGFueT4ge1xuICAgIGNvbmZpZ0lkID0gY29uZmlnSWQgPz8gdGhpcy5jb25maWd1cmF0aW9uUHJvdmlkZXIuZ2V0T3BlbklEQ29uZmlndXJhdGlvbihjb25maWdJZCkuY29uZmlnSWQ7XG5cbiAgICByZXR1cm4gdGhpcy5sb2dvZmZSZXZvY2F0aW9uU2VydmljZS5sb2dvZmZBbmRSZXZva2VUb2tlbnMoY29uZmlnSWQsIGF1dGhPcHRpb25zKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBMb2dzIG91dCBvbiB0aGUgc2VydmVyIGFuZCB0aGUgbG9jYWwgY2xpZW50LiBJZiB0aGUgc2VydmVyIHN0YXRlIGhhcyBjaGFuZ2VkLCBjb25maXJtZWQgdmlhIGNoZWNrIHNlc3Npb24sXG4gICAqIHRoZW4gb25seSBhIGxvY2FsIGxvZ291dCBpcyBwZXJmb3JtZWQuXG4gICAqXG4gICAqIEBwYXJhbSBjb25maWdJZCBUaGUgY29uZmlnSWQgdG8gcGVyZm9ybSB0aGUgYWN0aW9uIGluIGJlaGFsZiBvZi4gSWYgbm90IHBhc3NlZCwgdGhlIGZpcnN0IGNvbmZpZ3Mgd2lsbCBiZSB0YWtlblxuICAgKiBAcGFyYW0gYXV0aE9wdGlvbnMgd2l0aCBjdXN0b20gcGFyYW1ldGVycyBhbmQvb3IgYW4gY3VzdG9tIHVybCBoYW5kbGVyXG4gICAqL1xuICBsb2dvZmYoY29uZmlnSWQ/OiBzdHJpbmcsIGF1dGhPcHRpb25zPzogQXV0aE9wdGlvbnMpOiB2b2lkIHtcbiAgICBjb25maWdJZCA9IGNvbmZpZ0lkID8/IHRoaXMuY29uZmlndXJhdGlvblByb3ZpZGVyLmdldE9wZW5JRENvbmZpZ3VyYXRpb24oY29uZmlnSWQpLmNvbmZpZ0lkO1xuXG4gICAgcmV0dXJuIHRoaXMubG9nb2ZmUmV2b2NhdGlvblNlcnZpY2UubG9nb2ZmKGNvbmZpZ0lkLCBhdXRoT3B0aW9ucyk7XG4gIH1cblxuICAvKipcbiAgICogTG9ncyB0aGUgdXNlciBvdXQgb2YgdGhlIGFwcGxpY2F0aW9uIHdpdGhvdXQgbG9nZ2luZyB0aGVtIG91dCBvZiB0aGUgc2VydmVyLlxuICAgKiBVc2UgdGhpcyBtZXRob2QgaWYgeW91IGhhdmUgX29uZV8gY29uZmlnIGVuYWJsZWQuXG4gICAqXG4gICAqIEBwYXJhbSBjb25maWdJZCBUaGUgY29uZmlnSWQgdG8gcGVyZm9ybSB0aGUgYWN0aW9uIGluIGJlaGFsZiBvZi4gSWYgbm90IHBhc3NlZCwgdGhlIGZpcnN0IGNvbmZpZ3Mgd2lsbCBiZSB0YWtlblxuICAgKi9cbiAgbG9nb2ZmTG9jYWwoY29uZmlnSWQ/OiBzdHJpbmcpOiB2b2lkIHtcbiAgICBjb25maWdJZCA9IGNvbmZpZ0lkID8/IHRoaXMuY29uZmlndXJhdGlvblByb3ZpZGVyLmdldE9wZW5JRENvbmZpZ3VyYXRpb24oY29uZmlnSWQpLmNvbmZpZ0lkO1xuXG4gICAgcmV0dXJuIHRoaXMubG9nb2ZmUmV2b2NhdGlvblNlcnZpY2UubG9nb2ZmTG9jYWwoY29uZmlnSWQpO1xuICB9XG5cbiAgLyoqXG4gICAqIExvZ3MgdGhlIHVzZXIgb3V0IG9mIHRoZSBhcHBsaWNhdGlvbiBmb3IgYWxsIGNvbmZpZ3Mgd2l0aG91dCBsb2dnaW5nIHRoZW0gb3V0IG9mIHRoZSBzZXJ2ZXIuXG4gICAqIFVzZSB0aGlzIG1ldGhvZCBpZiB5b3UgaGF2ZSBfbXVsdGlwbGVfIGNvbmZpZ3MgZW5hYmxlZC5cbiAgICovXG4gIGxvZ29mZkxvY2FsTXVsdGlwbGUoKTogdm9pZCB7XG4gICAgcmV0dXJuIHRoaXMubG9nb2ZmUmV2b2NhdGlvblNlcnZpY2UubG9nb2ZmTG9jYWxNdWx0aXBsZSgpO1xuICB9XG5cbiAgLyoqXG4gICAqIFJldm9rZXMgYW4gYWNjZXNzIHRva2VuIG9uIHRoZSBzZWN1cmUgdG9rZW4gc2VydmVyLiBUaGlzIGlzIG9ubHkgcmVxdWlyZWQgaW4gdGhlIGNvZGUgZmxvdyB3aXRoIHJlZnJlc2ggdG9rZW5zLiBJZiBubyB0b2tlbiBpc1xuICAgKiBwcm92aWRlZCwgdGhlbiB0aGUgdG9rZW4gZnJvbSB0aGUgc3RvcmFnZSBpcyByZXZva2VkLiBZb3UgY2FuIHBhc3MgYW55IHRva2VuIHRvIHJldm9rZS5cbiAgICogaHR0cHM6Ly90b29scy5pZXRmLm9yZy9odG1sL3JmYzcwMDlcbiAgICpcbiAgICogQHBhcmFtIGFjY2Vzc1Rva2VuIFRoZSBhY2Nlc3MgdG9rZW4gdG8gcmV2b2tlLlxuICAgKiBAcGFyYW0gY29uZmlnSWQgVGhlIGNvbmZpZ0lkIHRvIHBlcmZvcm0gdGhlIGFjdGlvbiBpbiBiZWhhbGYgb2YuIElmIG5vdCBwYXNzZWQsIHRoZSBmaXJzdCBjb25maWdzIHdpbGwgYmUgdGFrZW5cbiAgICpcbiAgICogQHJldHVybnMgQW4gb2JzZXJ2YWJsZSB3aGVuIHRoZSBhY3Rpb24gaXMgZmluaXNoZWRcbiAgICovXG4gIHJldm9rZUFjY2Vzc1Rva2VuKGFjY2Vzc1Rva2VuPzogYW55LCBjb25maWdJZD86IHN0cmluZyk6IE9ic2VydmFibGU8YW55PiB7XG4gICAgY29uZmlnSWQgPSBjb25maWdJZCA/PyB0aGlzLmNvbmZpZ3VyYXRpb25Qcm92aWRlci5nZXRPcGVuSURDb25maWd1cmF0aW9uKGNvbmZpZ0lkKS5jb25maWdJZDtcblxuICAgIHJldHVybiB0aGlzLmxvZ29mZlJldm9jYXRpb25TZXJ2aWNlLnJldm9rZUFjY2Vzc1Rva2VuKGNvbmZpZ0lkLCBhY2Nlc3NUb2tlbik7XG4gIH1cblxuICAvKipcbiAgICogUmV2b2tlcyBhIHJlZnJlc2ggdG9rZW4gb24gdGhlIHNlY3VyZSB0b2tlbiBzZXJ2ZXIuIFRoaXMgaXMgb25seSByZXF1aXJlZCBpbiB0aGUgY29kZSBmbG93IHdpdGggcmVmcmVzaCB0b2tlbnMuIElmIG5vIHRva2VuIGlzXG4gICAqIHByb3ZpZGVkLCB0aGVuIHRoZSB0b2tlbiBmcm9tIHRoZSBzdG9yYWdlIGlzIHJldm9rZWQuIFlvdSBjYW4gcGFzcyBhbnkgdG9rZW4gdG8gcmV2b2tlLlxuICAgKiBodHRwczovL3Rvb2xzLmlldGYub3JnL2h0bWwvcmZjNzAwOVxuICAgKlxuICAgKiBAcGFyYW0gcmVmcmVzaFRva2VuIFRoZSBhY2Nlc3MgdG9rZW4gdG8gcmV2b2tlLlxuICAgKiBAcGFyYW0gY29uZmlnSWQgVGhlIGNvbmZpZ0lkIHRvIHBlcmZvcm0gdGhlIGFjdGlvbiBpbiBiZWhhbGYgb2YuIElmIG5vdCBwYXNzZWQsIHRoZSBmaXJzdCBjb25maWdzIHdpbGwgYmUgdGFrZW5cbiAgICpcbiAgICogQHJldHVybnMgQW4gb2JzZXJ2YWJsZSB3aGVuIHRoZSBhY3Rpb24gaXMgZmluaXNoZWRcbiAgICovXG4gIHJldm9rZVJlZnJlc2hUb2tlbihyZWZyZXNoVG9rZW4/OiBhbnksIGNvbmZpZ0lkPzogc3RyaW5nKTogT2JzZXJ2YWJsZTxhbnk+IHtcbiAgICBjb25maWdJZCA9IGNvbmZpZ0lkID8/IHRoaXMuY29uZmlndXJhdGlvblByb3ZpZGVyLmdldE9wZW5JRENvbmZpZ3VyYXRpb24oY29uZmlnSWQpLmNvbmZpZ0lkO1xuXG4gICAgcmV0dXJuIHRoaXMubG9nb2ZmUmV2b2NhdGlvblNlcnZpY2UucmV2b2tlUmVmcmVzaFRva2VuKGNvbmZpZ0lkLCByZWZyZXNoVG9rZW4pO1xuICB9XG5cbiAgLyoqXG4gICAqIENyZWF0ZXMgdGhlIGVuZCBzZXNzaW9uIFVSTCB3aGljaCBjYW4gYmUgdXNlZCB0byBpbXBsZW1lbnQgYW4gYWx0ZXJuYXRlIHNlcnZlciBsb2dvdXQuXG4gICAqXG4gICAqIEBwYXJhbSBjdXN0b21QYXJhbXNcbiAgICogQHBhcmFtIGNvbmZpZ0lkIFRoZSBjb25maWdJZCB0byBwZXJmb3JtIHRoZSBhY3Rpb24gaW4gYmVoYWxmIG9mLiBJZiBub3QgcGFzc2VkLCB0aGUgZmlyc3QgY29uZmlncyB3aWxsIGJlIHRha2VuXG4gICAqXG4gICAqIEByZXR1cm5zIEEgc3RyaW5nIHdpdGggdGhlIGVuZCBzZXNzaW9uIHVybCBvciBudWxsXG4gICAqL1xuICBnZXRFbmRTZXNzaW9uVXJsKGN1c3RvbVBhcmFtcz86IHsgW3A6IHN0cmluZ106IHN0cmluZyB8IG51bWJlciB8IGJvb2xlYW4gfSwgY29uZmlnSWQ/OiBzdHJpbmcpOiBzdHJpbmcgfCBudWxsIHtcbiAgICBjb25maWdJZCA9IGNvbmZpZ0lkID8/IHRoaXMuY29uZmlndXJhdGlvblByb3ZpZGVyLmdldE9wZW5JRENvbmZpZ3VyYXRpb24oY29uZmlnSWQpLmNvbmZpZ0lkO1xuXG4gICAgcmV0dXJuIHRoaXMubG9nb2ZmUmV2b2NhdGlvblNlcnZpY2UuZ2V0RW5kU2Vzc2lvblVybChjb25maWdJZCwgY3VzdG9tUGFyYW1zKTtcbiAgfVxufVxuIl19
}], ctorParameters: function () { return [{ type: i1.CheckSessionService }, { type: i2.CheckAuthService }, { type: i3.UserService }, { type: i4.TokenHelperService }, { type: i5.ConfigurationProvider }, { type: i6.AuthStateService }, { type: i7.FlowsDataService }, { type: i8.CallbackService }, { type: i9.LogoffRevocationService }, { type: i10.LoginService }, { type: i11.RefreshSessionService }, { type: i12.UrlService }]; } });
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoib2lkYy5zZWN1cml0eS5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vcHJvamVjdHMvYW5ndWxhci1hdXRoLW9pZGMtY2xpZW50L3NyYy9saWIvb2lkYy5zZWN1cml0eS5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7Ozs7Ozs7Ozs7Ozs7O0FBc0IzQyxNQUFNLE9BQU8sbUJBQW1CO0lBdUM5QixZQUNVLG1CQUF3QyxFQUN4QyxnQkFBa0MsRUFDbEMsV0FBd0IsRUFDeEIsa0JBQXNDLEVBQ3RDLHFCQUE0QyxFQUM1QyxnQkFBa0MsRUFDbEMsZ0JBQWtDLEVBQ2xDLGVBQWdDLEVBQ2hDLHVCQUFnRCxFQUNoRCxZQUEwQixFQUMxQixxQkFBNEMsRUFDNUMsVUFBc0I7UUFYdEIsd0JBQW1CLEdBQW5CLG1CQUFtQixDQUFxQjtRQUN4QyxxQkFBZ0IsR0FBaEIsZ0JBQWdCLENBQWtCO1FBQ2xDLGdCQUFXLEdBQVgsV0FBVyxDQUFhO1FBQ3hCLHVCQUFrQixHQUFsQixrQkFBa0IsQ0FBb0I7UUFDdEMsMEJBQXFCLEdBQXJCLHFCQUFxQixDQUF1QjtRQUM1QyxxQkFBZ0IsR0FBaEIsZ0JBQWdCLENBQWtCO1FBQ2xDLHFCQUFnQixHQUFoQixnQkFBZ0IsQ0FBa0I7UUFDbEMsb0JBQWUsR0FBZixlQUFlLENBQWlCO1FBQ2hDLDRCQUF1QixHQUF2Qix1QkFBdUIsQ0FBeUI7UUFDaEQsaUJBQVksR0FBWixZQUFZLENBQWM7UUFDMUIsMEJBQXFCLEdBQXJCLHFCQUFxQixDQUF1QjtRQUM1QyxlQUFVLEdBQVYsVUFBVSxDQUFZO0lBQzdCLENBQUM7SUFuREo7Ozs7O09BS0c7SUFDSCxJQUFJLFNBQVM7UUFDWCxPQUFPLElBQUksQ0FBQyxXQUFXLENBQUMsU0FBUyxDQUFDO0lBQ3BDLENBQUM7SUFFRDs7Ozs7Ozs7T0FRRztJQUNILElBQUksZ0JB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SUFDakUsQ0FBQzs7Z0hBelhVLG1CQUFtQjtvSEFBbkIsbUJBQW1COzJGQUFuQixtQkFBbUI7a0JBRC9CLFVBQVUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBPYnNlcnZhYmxlIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBBdXRoT3B0aW9ucyB9IGZyb20gJy4vYXV0aC1vcHRpb25zJztcbmltcG9ydCB7IEF1dGhlbnRpY2F0ZWRSZXN1bHQgfSBmcm9tICcuL2F1dGgtc3RhdGUvYXV0aC1yZXN1bHQnO1xuaW1wb3J0IHsgQXV0aFN0YXRlU2VydmljZSB9IGZyb20gJy4vYXV0aC1zdGF0ZS9hdXRoLXN0YXRlLnNlcnZpY2UnO1xuaW1wb3J0IHsgQ2FsbGJhY2tTZXJ2aWNlIH0gZnJvbSAnLi9jYWxsYmFjay9jYWxsYmFjay5zZXJ2aWNlJztcbmltcG9ydCB7IFJlZnJlc2hTZXNzaW9uU2VydmljZSB9IGZyb20gJy4vY2FsbGJhY2svcmVmcmVzaC1zZXNzaW9uLnNlcnZpY2UnO1xuaW1wb3J0IHsgQ2hlY2tBdXRoU2VydmljZSB9IGZyb20gJy4vY2hlY2stYXV0aC5zZXJ2aWNlJztcbmltcG9ydCB7IE9wZW5JZENvbmZpZ3VyYXRpb24gfSBmcm9tICcuL2NvbmZpZy9vcGVuaWQtY29uZmlndXJhdGlvbic7XG5pbXBvcnQgeyBDb25maWd1cmF0aW9uUHJvdmlkZXIgfSBmcm9tICcuL2NvbmZpZy9wcm92aWRlci9jb25maWcucHJvdmlkZXInO1xuaW1wb3J0IHsgRmxvd3NEYXRhU2VydmljZSB9IGZyb20gJy4vZmxvd3MvZmxvd3MtZGF0YS5zZXJ2aWNlJztcbmltcG9ydCB7IENoZWNrU2Vzc2lvblNlcnZpY2UgfSBmcm9tICcuL2lmcmFtZS9jaGVjay1zZXNzaW9uLnNlcnZpY2UnO1xuaW1wb3J0IHsgTG9naW5SZXNwb25zZSB9IGZyb20gJy4vbG9naW4vbG9naW4tcmVzcG9uc2UnO1xuaW1wb3J0IHsgTG9naW5TZXJ2aWNlIH0gZnJvbSAnLi9sb2dpbi9sb2dpbi5zZXJ2aWNlJztcbmltcG9ydCB7IFBvcHVwT3B0aW9ucyB9IGZyb20gJy4vbG9naW4vcG9wdXAvcG9wdXAtb3B0aW9ucyc7XG5pbXBvcnQgeyBMb2dvZmZSZXZvY2F0aW9uU2VydmljZSB9IGZyb20gJy4vbG9nb2ZmLXJldm9rZS9sb2dvZmYtcmV2b2NhdGlvbi5zZXJ2aWNlJztcbmltcG9ydCB7IFVzZXJTZXJ2aWNlIH0gZnJvbSAnLi91c2VyLWRhdGEvdXNlci5zZXJ2aWNlJztcbmltcG9ydCB7IFVzZXJEYXRhUmVzdWx0IH0gZnJvbSAnLi91c2VyLWRhdGEvdXNlcmRhdGEtcmVzdWx0JztcbmltcG9ydCB7IFRva2VuSGVscGVyU2VydmljZSB9IGZyb20gJy4vdXRpbHMvdG9rZW5IZWxwZXIvdG9rZW4taGVscGVyLnNlcnZpY2UnO1xuaW1wb3J0IHsgVXJsU2VydmljZSB9IGZyb20gJy4vdXRpbHMvdXJsL3VybC5zZXJ2aWNlJztcblxuQEluamVjdGFibGUoKVxuZXhwb3J0IGNsYXNzIE9pZGNTZWN1cml0eVNlcnZpY2Uge1xuICAvKipcbiAgICogUHJvdmlkZXMgaW5mb3JtYXRpb24gYWJvdXQgdGhlIHVzZXIgYWZ0ZXIgdGhleSBoYXZlIGxvZ2dlZCBpbi5cbiAgICpcbiAgICogQHJldHVybnMgUmV0dXJucyBhbiBvYmplY3QgY29udGFpbmluZyBlaXRoZXIgdGhlIHVzZXIgZGF0YSBkaXJlY3RseSAoc2luZ2xlIGNvbmZpZykgb3JcbiAgICogdGhlIHVzZXIgZGF0YSBwZXIgY29uZmlnIGluIGNhc2UgeW91IGFyZSBydW5uaW5nIHdpdGggbXVsdGlwbGUgY29uZmlnc1xuICAgKi9cbiAgZ2V0IHVzZXJEYXRhJCgpOiBPYnNlcnZhYmxlPFVzZXJEYXRhUmVzdWx0PiB7XG4gICAgcmV0dXJuIHRoaXMudXNlclNlcnZpY2UudXNlckRhdGEkO1xuICB9XG5cbiAgLyoqXG4gICAqIEVtaXRzIGVhY2ggdGltZSBhbiBhdXRob3JpemF0aW9uIGV2ZW50IG9jY3Vycy5cbiAgICpcbiAgICogQHJldHVybnMgUmV0dXJucyBhbiBvYmplY3QgY29udGFpbmluZyBpZiB5b3UgYXJlIGF1dGhlbnRpY2F0ZWQgb3Igbm90LlxuICAgKiBTaW5nbGUgQ29uZmlnOiB0cnVlIGlmIGNvbmZpZyBpcyBhdXRoZW50aWNhdGVkLCBmYWxzZSBpZiBub3QuXG4gICAqIE11bHRpcGxlIENvbmZpZ3M6IHRydWUgaXMgYWxsIGNvbmZpZ3MgYXJlIGF1dGhlbnRpY2F0ZWQsIGZhbHNlIGlmIG9ubHkgb25lIG9mIHRoZW0gaXMgbm90XG4gICAqXG4gICAqIFRoZSBgYWxsQ29uZmlnc0F1dGhlbnRpY2F0ZWRgIHByb3BlcnR5IGNvbnRhaW5zIHRoZSBhdXRoIGluZm9ybWF0aW9uIF9wZXIgY29uZmlnXy5cbiAgICovXG4gIGdldCBpc0F1dGhlbnRpY2F0ZWQkKCk6IE9ic2VydmFibGU8QXV0aGVudGljYXRlZFJlc3VsdD4ge1xuICAgIHJldHVybiB0aGlzLmF1dGhTdGF0ZVNlcnZpY2UuYXV0aGVudGljYXRlZCQ7XG4gIH1cblxuICAvKipcbiAgICogRW1pdHMgZWFjaCB0aW1lIHRoZSBzZXJ2ZXIgc2VuZHMgYSBDaGVja1Nlc3Npb24gZXZlbnQgYW5kIHRoZSB2YWx1ZSBjaGFuZ2VkLiBUaGlzIHByb3BlcnR5IHdpbGwgYWx3YXlzIHJldHVyblxuICAgKiB0cnVlLlxuICAgKi9cbiAgZ2V0IGNoZWNrU2Vzc2lvbkNoYW5nZWQkKCk6IE9ic2VydmFibGU8Ym9vbGVhbj4ge1xuICAgIHJldHVybiB0aGlzLmNoZWNrU2Vzc2lvblNlcnZpY2UuY2hlY2tTZXNzaW9uQ2hhbmdlZCQ7XG4gIH1cblxuICAvKipcbiAgICogRW1pdHMgb24gYSBTZWN1cml0eSBUb2tlbiBTZXJ2aWNlIGNhbGxiYWNrLiBUaGUgb2JzZXJ2YWJsZSB3aWxsIG5ldmVyIGNvbnRhaW4gYSB2YWx1ZS5cbiAgICovXG4gIGdldCBzdHNDYWxsYmFjayQoKTogT2JzZXJ2YWJsZTxhbnk+IHtcbiAgICByZXR1cm4gdGhpcy5jYWxsYmFja1NlcnZpY2Uuc3RzQ2FsbGJhY2skO1xuICB9XG5cbiAgY29uc3RydWN0b3IoXG4gICAgcHJpdmF0ZSBjaGVja1Nlc3Npb25TZXJ2aWNlOiBDaGVja1Nlc3Npb25TZXJ2aWNlLFxuICAgIHByaXZhdGUgY2hlY2tBdXRoU2VydmljZTogQ2hlY2tBdXRoU2VydmljZSxcbiAgICBwcml2YXRlIHVzZXJTZXJ2aWNlOiBVc2VyU2VydmljZSxcbiAgICBwcml2YXRlIHRva2VuSGVscGVyU2VydmljZTogVG9rZW5IZWxwZXJTZXJ2aWNlLFxuICAgIHByaXZhdGUgY29uZmlndXJhdGlvblByb3ZpZGVyOiBDb25maWd1cmF0aW9uUHJvdmlkZXIsXG4gICAgcHJpdmF0ZSBhdXRoU3RhdGVTZXJ2aWNlOiBBdXRoU3RhdGVTZXJ2aWNlLFxuICAgIHByaXZhdGUgZmxvd3NEYXRhU2VydmljZTogRmxvd3NEYXRhU2VydmljZSxcbiAgICBwcml2YXRlIGNhbGxiYWNrU2VydmljZTogQ2FsbGJhY2tTZXJ2aWNlLFxuICAgIHByaXZhdGUgbG9nb2ZmUmV2b2NhdGlvblNlcnZpY2U6IExvZ29mZlJldm9jYXRpb25TZXJ2aWNlLFxuICAgIHByaXZhdGUgbG9naW5TZXJ2aWNlOiBMb2dpblNlcnZpY2UsXG4gICAgcHJpdmF0ZSByZWZyZXNoU2Vzc2lvblNlcnZpY2U6IFJlZnJlc2hTZXNzaW9uU2VydmljZSxcbiAgICBwcml2YXRlIHVybFNlcnZpY2U6IFVybFNlcnZpY2VcbiAgKSB7fVxuXG4gIC8qKlxuICAgKiBSZXR1cm5zIHRoZSBjdXJyZW50bHkgYWN0aXZlIE9wZW5JRCBjb25maWd1cmF0aW9ucy5cbiAgICpcbiAgICogQHJldHVybnMgYW4gYXJyYXkgb2YgT3BlbklkQ29uZmlndXJhdGlvbnMuXG4gICAqL1xuICBnZXRDb25maWd1cmF0aW9ucygpOiBPcGVuSWRDb25maWd1cmF0aW9uW10ge1xuICAgIHJldHVybiB0aGlzLmNvbmZpZ3VyYXRpb25Qcm92aWRlci5nZXRBbGxDb25maWd1cmF0aW9ucygpO1xuICB9XG5cbiAgLyoqXG4gICAqIFJldHVybnMgYSBzaW5nbGUgYWN0aXZlIE9wZW5JZENvbmZpZ3VyYXRpb24uXG4gICAqXG4gICAqIEBwYXJhbSBjb25maWdJZCBUaGUgY29uZmlnSWQgdG8gaWRlbnRpZnkgdGhlIGNvbmZpZy4gSWYgbm90IHBhc3NlZCwgdGhlIGZpcnN0IG9uZSBpcyBiZWluZyByZXR1cm5lZFxuICAgKi9cbiAgZ2V0Q29uZmlndXJhdGlvbihjb25maWdJZD86IHN0cmluZyk6IE9wZW5JZENvbmZpZ3VyYXRpb24ge1xuICAgIGNvbmZpZ0lkID0gY29uZmlnSWQgPz8gdGhpcy5jb25maWd1cmF0aW9uUHJvdmlkZXIuZ2V0T3BlbklEQ29uZmlndXJhdGlvbigpLmNvbmZpZ0lkO1xuXG4gICAgcmV0dXJuIHRoaXMuY29uZmlndXJhdGlvblByb3ZpZGVyLmdldE9wZW5JRENvbmZpZ3VyYXRpb24oY29uZmlnSWQpO1xuICB9XG5cbiAgLyoqXG4gICAqIFJldHVybnMgdGhlIHVzZXJEYXRhIGZvciBhIGNvbmZpZ3VyYXRpb25cbiAgICpcbiAgICogQHBhcmFtIGNvbmZpZ0lkIFRoZSBjb25maWdJZCB0byBpZGVudGlmeSB0aGUgY29uZmlnLiBJZiBub3QgcGFzc2VkLCB0aGUgZmlyc3Qgb25lIGlzIGJlaW5nIHVzZWRcbiAgICovXG4gIGdldFVzZXJEYXRhKGNvbmZpZ0lkPzogc3RyaW5nKTogYW55IHtcbiAgICBjb25maWdJZCA9IGNvbmZpZ0lkID8/IHRoaXMuY29uZmlndXJhdGlvblByb3ZpZGVyLmdldE9wZW5JRENvbmZpZ3VyYXRpb24oKS5jb25maWdJZDtcblxuICAgIHJldHVybiB0aGlzLnVzZXJTZXJ2aWNlLmdldFVzZXJEYXRhRnJvbVN0b3JlKGNvbmZpZ0lkKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBTdGFydHMgdGhlIGNvbXBsZXRlIHNldHVwIGZsb3cgZm9yIG9uZSBjb25maWd1cmF0aW9uLiBDYWxsaW5nIHdpbGwgc3RhcnQgdGhlIGVudGlyZSBhdXRoZW50aWNhdGlvbiBmbG93LCBhbmQgdGhlIHJldHVybmVkIG9ic2VydmFibGVcbiAgICogd2lsbCBkZW5vdGUgd2hldGhlciB0aGUgdXNlciB3YXMgc3VjY2Vzc2Z1bGx5IGF1dGhlbnRpY2F0ZWQgaW5jbHVkaW5nIHRoZSB1c2VyIGRhdGEsIHRoZSBhY2Nlc3MgdG9rZW4sIHRoZSBjb25maWdJZCBhbmRcbiAgICogYW4gZXJyb3IgbWVzc2FnZSBpbiBjYXNlIGFuIGVycm9yIGhhcHBlbmVkXG4gICAqXG4gICAqIEBwYXJhbSB1cmwgVGhlIFVSTCB0byBwZXJmb3JtIHRoZSBhdXRob3JpemF0aW9uIG9uIHRoZSBiZWhhbGYgb2YuXG4gICAqIEBwYXJhbSBjb25maWdJZCBUaGUgY29uZmlnSWQgdG8gcGVyZm9ybSB0aGUgYXV0aG9yaXphdGlvbiBvbiB0aGUgYmVoYWxmIG9mLiBJZiBub3QgcGFzc2VkLCB0aGUgZmlyc3QgY29uZmlncyB3aWxsIGJlIHRha2VuXG4gICAqXG4gICAqIEByZXR1cm5zIEFuIG9iamVjdCBgTG9naW5SZXNwb25zZWAgY29udGFpbmluZyBhbGwgaW5mb3JtYXRpb24gYWJvdXQgdGhlIGxvZ2luXG4gICAqL1xuICBjaGVja0F1dGgodXJsPzogc3RyaW5nLCBjb25maWdJZD86IHN0cmluZyk6IE9ic2VydmFibGU8TG9naW5SZXNwb25zZT4ge1xuICAgIHJldHVybiB0aGlzLmNoZWNrQXV0aFNlcnZpY2UuY2hlY2tBdXRoKGNvbmZpZ0lkLCB1cmwpO1xuICB9XG5cbiAgLyoqXG4gICAqIFN0YXJ0cyB0aGUgY29tcGxldGUgc2V0dXAgZmxvdyBmb3IgbXVsdGlwbGUgY29uZmlndXJhdGlvbnMuXG4gICAqIENhbGxpbmcgd2lsbCBzdGFydCB0aGUgZW50aXJlIGF1dGhlbnRpY2F0aW9uIGZsb3csIGFuZCB0aGUgcmV0dXJuZWQgb2JzZXJ2YWJsZVxuICAgKiB3aWxsIGRlbm90ZSB3aGV0aGVyIHRoZSB1c2VyIHdhcyBzdWNjZXNzZnVsbHkgYXV0aGVudGljYXRlZCBpbmNsdWRpbmcgdGhlIHVzZXIgZGF0YSwgdGhlIGFjY2VzcyB0b2tlbiwgdGhlIGNvbmZpZ0lkIGFuZFxuICAgKiBhbiBlcnJvciBtZXNzYWdlIGluIGNhc2UgYW4gZXJyb3IgaGFwcGVuZWQgaW4gYW4gYXJyYXkgZm9yIGVhY2ggY29uZmlnIHdoaWNoIHdhcyBwcm92aWRlZFxuICAgKlxuICAgKiBAcGFyYW0gdXJsIFRoZSBVUkwgdG8gcGVyZm9ybSB0aGUgYXV0aG9yaXphdGlvbiBvbiB0aGUgYmVoYWxmIG9mLlxuICAgKiBAcGFyYW0gY29uZmlnSWQgVGhlIGNvbmZpZ0lkIHRvIHBlcmZvcm0gdGhlIGF1dGhvcml6YXRpb24gb24gdGhlIGJlaGFsZiBvZi4gSWYgbm90IHBhc3NlZCwgYWxsIG9mIHRoZSBjdXJyZW50XG4gICAqIGNvbmZpZ3VyZWQgb25lcyB3aWxsIGJlIHVzZWQgdG8gY2hlY2suXG4gICAqXG4gICAqIEByZXR1cm5zIEFuIGFycmF5IG9mIGBMb2dpblJlc3BvbnNlYCBvYmplY3RzIGNvbnRhaW5pbmcgYWxsIGluZm9ybWF0aW9uIGFib3V0IHRoZSBsb2dpbnNcbiAgICovXG4gIGNoZWNrQXV0aE11bHRpcGxlKHVybD86IHN0cmluZywgY29uZmlnSWQ/OiBzdHJpbmcpOiBPYnNlcnZhYmxlPExvZ2luUmVzcG9uc2VbXT4ge1xuICAgIHJldHVybiB0aGlzLmNoZWNrQXV0aFNlcnZpY2UuY2hlY2tBdXRoTXVsdGlwbGUoY29uZmlnSWQsIHVybCk7XG4gIH1cblxuICAvKipcbiAgICogUHJvdmlkZXMgaW5mb3JtYXRpb24gYWJvdXQgdGhlIGN1cnJlbnQgYXV0aGVudGljYXRlZCBzdGF0ZVxuICAgKlxuICAgKiBAcGFyYW0gY29uZmlnSWQgVGhlIGNvbmZpZ0lkIHRvIGNoZWNrIHRoZSBpbmZvcm1hdGlvbiBmb3IuIElmIG5vdCBwYXNzZWQsIHRoZSBmaXJzdCBjb25maWdzIHdpbGwgYmUgdGFrZW5cbiAgICpcbiAgICogQHJldHVybnMgQSBib29sZWFuIHdoZXRoZXIgdGhlIGNvbmZpZyBpcyBhdXRoZW50aWNhdGVkIG9yIG5vdC5cbiAgICovXG4gIGlzQXV0aGVudGljYXRlZChjb25maWdJZD86IHN0cmluZyk6IGJvb2xlYW4ge1xuICAgIGNvbmZpZ0lkID0gY29uZmlnSWQgPz8gdGhpcy5jb25maWd1cmF0aW9uUHJvdmlkZXIuZ2V0T3BlbklEQ29uZmlndXJhdGlvbihjb25maWdJZCkuY29uZmlnSWQ7XG5cbiAgICByZXR1cm4gdGhpcy5hdXRoU3RhdGVTZXJ2aWNlLmlzQXV0aGVudGljYXRlZChjb25maWdJZCk7XG4gIH1cblxuICAvKipcbiAgICogQ2hlY2tzIHRoZSBzZXJ2ZXIgZm9yIGFuIGF1dGhlbnRpY2F0ZWQgc2Vzc2lvbiB1c2luZyB0aGUgaWZyYW1lIHNpbGVudCByZW5ldyBpZiBub3QgbG9jYWxseSBhdXRoZW50aWNhdGVkLlxuICAgKi9cbiAgY2hlY2tBdXRoSW5jbHVkaW5nU2VydmVyKGNvbmZpZ0lkPzogc3RyaW5nKTogT2JzZXJ2YWJsZTxMb2dpblJlc3BvbnNlPiB7XG4gICAgY29uZmlnSWQgPSBjb25maWdJZCA/PyB0aGlzLmNvbmZpZ3VyYXRpb25Qcm92aWRlci5nZXRPcGVuSURDb25maWd1cmF0aW9uKGNvbmZpZ0lkKS5jb25maWdJZDtcblxuICAgIHJldHVybiB0aGlzLmNoZWNrQXV0aFNlcnZpY2UuY2hlY2tBdXRoSW5jbHVkaW5nU2VydmVyKGNvbmZpZ0lkKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBSZXR1cm5zIHRoZSBhY2Nlc3MgdG9rZW4gZm9yIHRoZSBsb2dpbiBzY2VuYXJpby5cbiAgICpcbiAgICogQHBhcmFtIGNvbmZpZ0lkIFRoZSBjb25maWdJZCB0byBjaGVjayB0aGUgaW5mb3JtYXRpb24gZm9yLiBJZiBub3QgcGFzc2VkLCB0aGUgZmlyc3QgY29uZmlncyB3aWxsIGJlIHRha2VuXG4gICAqXG4gICAqIEByZXR1cm5zIEEgc3RyaW5nIHdpdGggdGhlIGFjY2VzcyB0b2tlbi5cbiAgICovXG4gIGdldEFjY2Vzc1Rva2VuKGNvbmZpZ0lkPzogc3RyaW5nKTogc3RyaW5nIHtcbiAgICBjb25maWdJZCA9IGNvbmZpZ0lkID8/IHRoaXMuY29uZmlndXJhdGlvblByb3ZpZGVyLmdldE9wZW5JRENvbmZpZ3VyYXRpb24oY29uZmlnSWQpLmNvbmZpZ0lkO1xuXG4gICAgcmV0dXJuIHRoaXMuYXV0aFN0YXRlU2VydmljZS5nZXRBY2Nlc3NUb2tlbihjb25maWdJZCk7XG4gIH1cblxuICAvKipcbiAgICogUmV0dXJucyB0aGUgSUQgdG9rZW4gZm9yIHRoZSBzaWduLWluLlxuICAgKlxuICAgKiBAcGFyYW0gY29uZmlnSWQgVGhlIGNvbmZpZ0lkIHRvIGNoZWNrIHRoZSBpbmZvcm1hdGlvbiBmb3IuIElmIG5vdCBwYXNzZWQsIHRoZSBmaXJzdCBjb25maWdzIHdpbGwgYmUgdGFrZW5cbiAgICpcbiAgICogQHJldHVybnMgQSBzdHJpbmcgd2l0aCB0aGUgaWQgdG9rZW4uXG4gICAqL1xuICBnZXRJZFRva2VuKGNvbmZpZ0lkPzogc3RyaW5nKTogc3RyaW5nIHtcbiAgICBjb25maWdJZCA9IGNvbmZpZ0lkID8/IHRoaXMuY29uZmlndXJhdGlvblByb3ZpZGVyLmdldE9wZW5JRENvbmZpZ3VyYXRpb24oY29uZmlnSWQpLmNvbmZpZ0lkO1xuXG4gICAgcmV0dXJuIHRoaXMuYXV0aFN0YXRlU2VydmljZS5nZXRJZFRva2VuKGNvbmZpZ0lkKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBSZXR1cm5zIHRoZSByZWZyZXNoIHRva2VuLCBpZiBwcmVzZW50LCBmb3IgdGhlIHNpZ24taW4uXG4gICAqXG4gICAqIEBwYXJhbSBjb25maWdJZCBUaGUgY29uZmlnSWQgdG8gY2hlY2sgdGhlIGluZm9ybWF0aW9uIGZvci4gSWYgbm90IHBhc3NlZCwgdGhlIGZpcnN0IGNvbmZpZ3Mgd2lsbCBiZSB0YWtlblxuICAgKlxuICAgKiBAcmV0dXJucyBBIHN0cmluZyB3aXRoIHRoZSByZWZyZXNoIHRva2VuLlxuICAgKi9cbiAgZ2V0UmVmcmVzaFRva2VuKGNvbmZpZ0lkPzogc3RyaW5nKTogc3RyaW5nIHtcbiAgICBjb25maWdJZCA9IGNvbmZpZ0lkID8/IHRoaXMuY29uZmlndXJhdGlvblByb3ZpZGVyLmdldE9wZW5JRENvbmZpZ3VyYXRpb24oY29uZmlnSWQpLmNvbmZpZ0lkO1xuXG4gICAgcmV0dXJuIHRoaXMuYXV0aFN0YXRlU2VydmljZS5nZXRSZWZyZXNoVG9rZW4oY29uZmlnSWQpO1xuICB9XG5cbiAgLyoqXG4gICAqIFJldHVybnMgdGhlIGF1dGhlbnRpY2F0aW9uIHJlc3VsdCwgaWYgcHJlc2VudCwgZm9yIHRoZSBzaWduLWluLlxuICAgKlxuICAgKiBAcGFyYW0gY29uZmlnSWQgVGhlIGNvbmZpZ0lkIHRvIGNoZWNrIHRoZSBpbmZvcm1hdGlvbiBmb3IuIElmIG5vdCBwYXNzZWQsIHRoZSBmaXJzdCBjb25maWdzIHdpbGwgYmUgdGFrZW5cbiAgICpcbiAgICogQHJldHVybnMgQSBvYmplY3Qgd2l0aCB0aGUgYXV0aGVudGljYXRpb24gcmVzdWx0XG4gICAqL1xuICBnZXRBdXRoZW50aWNhdGlvblJlc3VsdChjb25maWdJZD86IHN0cmluZyk6IGFueSB7XG4gICAgY29uZmlnSWQgPSBjb25maWdJZCA/PyB0aGlzLmNvbmZpZ3VyYXRpb25Qcm92aWRlci5nZXRPcGVuSURDb25maWd1cmF0aW9uKGNvbmZpZ0lkKS5jb25maWdJZDtcblxuICAgIHJldHVybiB0aGlzLmF1dGhTdGF0ZVNlcnZpY2UuZ2V0QXV0aGVudGljYXRpb25SZXN1bHQoY29uZmlnSWQpO1xuICB9XG5cbiAgLyoqXG4gICAqIFJldHVybnMgdGhlIHBheWxvYWQgZnJvbSB0aGUgSUQgdG9rZW4uXG4gICAqXG4gICAqIEBwYXJhbSBlbmNvZGUgU2V0IHRvIHRydWUgaWYgdGhlIHBheWxvYWQgaXMgYmFzZTY0IGVuY29kZWRcbiAgICogQHBhcmFtIGNvbmZpZ0lkIFRoZSBjb25maWdJZCB0byBjaGVjayB0aGUgaW5mb3JtYXRpb24gZm9yLiBJZiBub3QgcGFzc2VkLCB0aGUgZmlyc3QgY29uZmlncyB3aWxsIGJlIHRha2VuXG4gICAqXG4gICAqIEByZXR1cm5zIFRoZSBwYXlsb2FkIGZyb20gdGhlIGlkIHRva2VuLlxuICAgKi9cbiAgZ2V0UGF5bG9hZEZyb21JZFRva2VuKGVuY29kZSA9IGZhbHNlLCBjb25maWdJZD86IHN0cmluZyk6IGFueSB7XG4gICAgY29uZmlnSWQgPSBjb25maWdJZCA/PyB0aGlzLmNvbmZpZ3VyYXRpb25Qcm92aWRlci5nZXRPcGVuSURDb25maWd1cmF0aW9uKGNvbmZpZ0lkKS5jb25maWdJZDtcbiAgICBjb25zdCB0b2tlbiA9IHRoaXMuYXV0aFN0YXRlU2VydmljZS5nZXRJZFRva2VuKGNvbmZpZ0lkKTtcblxuICAgIHJldHVybiB0aGlzLnRva2VuSGVscGVyU2VydmljZS5nZXRQYXlsb2FkRnJvbVRva2VuKHRva2VuLCBlbmNvZGUsIGNvbmZpZ0lkKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBTZXRzIGEgY3VzdG9tIHN0YXRlIGZvciB0aGUgYXV0aG9yaXplIHJlcXVlc3QuXG4gICAqXG4gICAqIEBwYXJhbSBzdGF0ZSBUaGUgc3RhdGUgdG8gc2V0LlxuICAgKiBAcGFyYW0gY29uZmlnSWQgVGhlIGNvbmZpZ0lkIHRvIGNoZWNrIHRoZSBpbmZvcm1hdGlvbiBmb3IuIElmIG5vdCBwYXNzZWQsIHRoZSBmaXJzdCBjb25maWdzIHdpbGwgYmUgdGFrZW5cbiAgICovXG4gIHNldFN0YXRlKHN0YXRlOiBzdHJpbmcsIGNvbmZpZ0lkPzogc3RyaW5nKTogdm9pZCB7XG4gICAgY29uZmlnSWQgPSBjb25maWdJZCA/PyB0aGlzLmNvbmZpZ3VyYXRpb25Qcm92aWRlci5nZXRPcGVuSURDb25maWd1cmF0aW9uKGNvbmZpZ0lkKS5jb25maWdJZDtcblxuICAgIHRoaXMuZmxvd3NEYXRhU2VydmljZS5zZXRBdXRoU3RhdGVDb250cm9sKHN0YXRlLCBjb25maWdJZCk7XG4gIH1cblxuICAvKipcbiAgICogR2V0cyB0aGUgc3RhdGUgdmFsdWUgdXNlZCBmb3IgdGhlIGF1dGhvcml6ZSByZXF1ZXN0LlxuICAgKlxuICAgKiBAcGFyYW0gY29uZmlnSWQgVGhlIGNvbmZpZ0lkIHRvIGNoZWNrIHRoZSBpbmZvcm1hdGlvbiBmb3IuIElmIG5vdCBwYXNzZWQsIHRoZSBmaXJzdCBjb25maWdzIHdpbGwgYmUgdGFrZW5cbiAgICpcbiAgICogQHJldHVybnMgVGhlIHN0YXRlIHZhbHVlIHVzZWQgZm9yIHRoZSBhdXRob3JpemUgcmVxdWVzdC5cbiAgICovXG4gIGdldFN0YXRlKGNvbmZpZ0lkPzogc3RyaW5nKTogc3RyaW5nIHtcbiAgICBjb25maWdJZCA9IGNvbmZpZ0lkID8/IHRoaXMuY29uZmlndXJhdGlvblByb3ZpZGVyLmdldE9wZW5JRENvbmZpZ3VyYXRpb24oY29uZmlnSWQpLmNvbmZpZ0lkO1xuXG4gICAgcmV0dXJuIHRoaXMuZmxvd3NEYXRhU2VydmljZS5nZXRBdXRoU3RhdGVDb250cm9sKGNvbmZpZ0lkKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBSZWRpcmVjdHMgdGhlIHVzZXIgdG8gdGhlIFNlY3VyaXR5IFRva2VuIFNlcnZpY2UgdG8gYmVnaW4gdGhlIGF1dGhlbnRpY2F0aW9uIHByb2Nlc3MuXG4gICAqXG4gICAqIEBwYXJhbSBjb25maWdJZCBUaGUgY29uZmlnSWQgdG8gcGVyZm9ybSB0aGUgYWN0aW9uIGluIGJlaGFsZiBvZi4gSWYgbm90IHBhc3NlZCwgdGhlIGZpcnN0IGNvbmZpZ3Mgd2lsbCBiZSB0YWtlblxuICAgKiBAcGFyYW0gYXV0aE9wdGlvbnMgVGhlIGN1c3RvbSBvcHRpb25zIGZvciB0aGUgdGhlIGF1dGhlbnRpY2F0aW9uIHJlcXVlc3QuXG4gICAqL1xuICBhdXRob3JpemUoY29uZmlnSWQ/OiBzdHJpbmcsIGF1dGhPcHRpb25zPzogQXV0aE9wdGlvbnMpOiB2b2lkIHtcbiAgICBjb25maWdJZCA9IGNvbmZpZ0lkID8/IHRoaXMuY29uZmlndXJhdGlvblByb3ZpZGVyLmdldE9wZW5JRENvbmZpZ3VyYXRpb24oY29uZmlnSWQpLmNvbmZpZ0lkO1xuXG4gICAgdGhpcy5sb2dpblNlcnZpY2UubG9naW4oY29uZmlnSWQsIGF1dGhPcHRpb25zKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBPcGVucyB0aGUgU2VjdXJpdHkgVG9rZW4gU2VydmljZSBpbiBhIG5ldyB3aW5kb3cgdG8gYmVnaW4gdGhlIGF1dGhlbnRpY2F0aW9uIHByb2Nlc3MuXG4gICAqXG4gICAqIEBwYXJhbSBhdXRoT3B0aW9ucyBUaGUgY3VzdG9tIG9wdGlvbnMgZm9yIHRoZSBhdXRoZW50aWNhdGlvbiByZXF1ZXN0LlxuICAgKiBAcGFyYW0gcG9wdXBPcHRpb25zIFRoZSBjb25maWd1cmF0aW9uIGZvciB0aGUgcG9wdXAgd2luZG93LlxuICAgKiBAcGFyYW0gY29uZmlnSWQgVGhlIGNvbmZpZ0lkIHRvIHBlcmZvcm0gdGhlIGFjdGlvbiBpbiBiZWhhbGYgb2YuIElmIG5vdCBwYXNzZWQsIHRoZSBmaXJzdCBjb25maWdzIHdpbGwgYmUgdGFrZW5cbiAgICpcbiAgICogQHJldHVybnMgQW4gYE9ic2VydmFibGU8TG9naW5SZXNwb25zZT5gIGNvbnRhaW5pbmcgYWxsIGluZm9ybWF0aW9uIGFib3V0IHRoZSBsb2dpblxuICAgKi9cbiAgYXV0aG9yaXplV2l0aFBvcFVwKGF1dGhPcHRpb25zPzogQXV0aE9wdGlvbnMsIHBvcHVwT3B0aW9ucz86IFBvcHVwT3B0aW9ucywgY29uZmlnSWQ/OiBzdHJpbmcpOiBPYnNlcnZhYmxlPExvZ2luUmVzcG9uc2U+IHtcbiAgICBjb25maWdJZCA9IGNvbmZpZ0lkID8/IHRoaXMuY29uZmlndXJhdGlvblByb3ZpZGVyLmdldE9wZW5JRENvbmZpZ3VyYXRpb24oY29uZmlnSWQpLmNvbmZpZ0lkO1xuXG4gICAgcmV0dXJuIHRoaXMubG9naW5TZXJ2aWNlLmxvZ2luV2l0aFBvcFVwKGNvbmZpZ0lkLCBhdXRoT3B0aW9ucywgcG9wdXBPcHRpb25zKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBNYW51YWxseSByZWZyZXNoZXMgdGhlIHNlc3Npb24uXG4gICAqXG4gICAqIEBwYXJhbSBjdXN0b21QYXJhbXMgQ3VzdG9tIHBhcmFtZXRlcnMgdG8gcGFzcyB0byB0aGUgcmVmcmVzaCByZXF1ZXN0LlxuICAgKiBAcGFyYW0gY29uZmlnSWQgVGhlIGNvbmZpZ0lkIHRvIHBlcmZvcm0gdGhlIGFjdGlvbiBpbiBiZWhhbGYgb2YuIElmIG5vdCBwYXNzZWQsIHRoZSBmaXJzdCBjb25maWdzIHdpbGwgYmUgdGFrZW5cbiAgICpcbiAgICogQHJldHVybnMgQW4gYE9ic2VydmFibGU8TG9naW5SZXNwb25zZT5gIGNvbnRhaW5pbmcgYWxsIGluZm9ybWF0aW9uIGFib3V0IHRoZSBsb2dpblxuICAgKi9cbiAgZm9yY2VSZWZyZXNoU2Vzc2lvbihjdXN0b21QYXJhbXM/OiB7IFtrZXk6IHN0cmluZ106IHN0cmluZyB8IG51bWJlciB8IGJvb2xlYW4gfSwgY29uZmlnSWQ/OiBzdHJpbmcpOiBPYnNlcnZhYmxlPExvZ2luUmVzcG9uc2U+IHtcbiAgICBjb25maWdJZCA9IGNvbmZpZ0lkID8/IHRoaXMuY29uZmlndXJhdGlvblByb3ZpZGVyLmdldE9wZW5JRENvbmZpZ3VyYXRpb24oY29uZmlnSWQpLmNvbmZpZ0lkO1xuXG4gICAgcmV0dXJuIHRoaXMucmVmcmVzaFNlc3Npb25TZXJ2aWNlLnVzZXJGb3JjZVJlZnJlc2hTZXNzaW9uKGNvbmZpZ0lkLCBjdXN0b21QYXJhbXMpO1xuICB9XG5cbiAgLyoqXG4gICAqIFJldm9rZXMgdGhlIHJlZnJlc2ggdG9rZW4gKGlmIHByZXNlbnQpIGFuZCB0aGUgYWNjZXNzIHRva2VuIG9uIHRoZSBzZXJ2ZXIgYW5kIHRoZW4gcGVyZm9ybXMgdGhlIGxvZ29mZiBvcGVyYXRpb24uXG4gICAqIFRoZSByZWZyZXNoIHRva2VuIGFuZCBhbmQgdGhlIGFjY2VzcyB0b2tlbiBhcmUgcmV2b2tlZCBvbiB0aGUgc2VydmVyLiBJZiB0aGUgcmVmcmVzaCB0b2tlbiBkb2VzIG5vdCBleGlzdFxuICAgKiBvbmx5IHRoZSBhY2Nlc3MgdG9rZW4gaXMgcmV2b2tlZC4gVGhlbiB0aGUgbG9nb3V0IHJ1bi5cbiAgICpcbiAgICogQHBhcmFtIGNvbmZpZ0lkIFRoZSBjb25maWdJZCB0byBwZXJmb3JtIHRoZSBhY3Rpb24gaW4gYmVoYWxmIG9mLiBJZiBub3QgcGFzc2VkLCB0aGUgZmlyc3QgY29uZmlncyB3aWxsIGJlIHRha2VuXG4gICAqIEBwYXJhbSBhdXRoT3B0aW9ucyBUaGUgY3VzdG9tIG9wdGlvbnMgZm9yIHRoZSByZXF1ZXN0LlxuICAgKlxuICAgKiBAcmV0dXJucyBBbiBvYnNlcnZhYmxlIHdoZW4gdGhlIGFjdGlvbiBpcyBmaW5pc2hlZFxuICAgKi9cbiAgbG9nb2ZmQW5kUmV2b2tlVG9rZW5zKGNvbmZpZ0lkPzogc3RyaW5nLCBhdXRoT3B0aW9ucz86IEF1dGhPcHRpb25zKTogT2JzZXJ2YWJsZTxhbnk+IHtcbiAgICBjb25maWdJZCA9IGNvbmZpZ0lkID8/IHRoaXMuY29uZmlndXJhdGlvblByb3ZpZGVyLmdldE9wZW5JRENvbmZpZ3VyYXRpb24oY29uZmlnSWQpLmNvbmZpZ0lkO1xuXG4gICAgcmV0dXJuIHRoaXMubG9nb2ZmUmV2b2NhdGlvblNlcnZpY2UubG9nb2ZmQW5kUmV2b2tlVG9rZW5zKGNvbmZpZ0lkLCBhdXRoT3B0aW9ucyk7XG4gIH1cblxuICAvKipcbiAgICogTG9ncyBvdXQgb24gdGhlIHNlcnZlciBhbmQgdGhlIGxvY2FsIGNsaWVudC4gSWYgdGhlIHNlcnZlciBzdGF0ZSBoYXMgY2hhbmdlZCwgY29uZmlybWVkIHZpYSBjaGVjayBzZXNzaW9uLFxuICAgKiB0aGVuIG9ubHkgYSBsb2NhbCBsb2dvdXQgaXMgcGVyZm9ybWVkLlxuICAgKlxuICAgKiBAcGFyYW0gY29uZmlnSWQgVGhlIGNvbmZpZ0lkIHRvIHBlcmZvcm0gdGhlIGFjdGlvbiBpbiBiZWhhbGYgb2YuIElmIG5vdCBwYXNzZWQsIHRoZSBmaXJzdCBjb25maWdzIHdpbGwgYmUgdGFrZW5cbiAgICogQHBhcmFtIGF1dGhPcHRpb25zIHdpdGggY3VzdG9tIHBhcmFtZXRlcnMgYW5kL29yIGFuIGN1c3RvbSB1cmwgaGFuZGxlclxuICAgKi9cbiAgbG9nb2ZmKGNvbmZpZ0lkPzogc3RyaW5nLCBhdXRoT3B0aW9ucz86IEF1dGhPcHRpb25zKTogdm9pZCB7XG4gICAgY29uZmlnSWQgPSBjb25maWdJZCA/PyB0aGlzLmNvbmZpZ3VyYXRpb25Qcm92aWRlci5nZXRPcGVuSURDb25maWd1cmF0aW9uKGNvbmZpZ0lkKS5jb25maWdJZDtcblxuICAgIHJldHVybiB0aGlzLmxvZ29mZlJldm9jYXRpb25TZXJ2aWNlLmxvZ29mZihjb25maWdJZCwgYXV0aE9wdGlvbnMpO1xuICB9XG5cbiAgLyoqXG4gICAqIExvZ3MgdGhlIHVzZXIgb3V0IG9mIHRoZSBhcHBsaWNhdGlvbiB3aXRob3V0IGxvZ2dpbmcgdGhlbSBvdXQgb2YgdGhlIHNlcnZlci5cbiAgICogVXNlIHRoaXMgbWV0aG9kIGlmIHlvdSBoYXZlIF9vbmVfIGNvbmZpZyBlbmFibGVkLlxuICAgKlxuICAgKiBAcGFyYW0gY29uZmlnSWQgVGhlIGNvbmZpZ0lkIHRvIHBlcmZvcm0gdGhlIGFjdGlvbiBpbiBiZWhhbGYgb2YuIElmIG5vdCBwYXNzZWQsIHRoZSBmaXJzdCBjb25maWdzIHdpbGwgYmUgdGFrZW5cbiAgICovXG4gIGxvZ29mZkxvY2FsKGNvbmZpZ0lkPzogc3RyaW5nKTogdm9pZCB7XG4gICAgY29uZmlnSWQgPSBjb25maWdJZCA/PyB0aGlzLmNvbmZpZ3VyYXRpb25Qcm92aWRlci5nZXRPcGVuSURDb25maWd1cmF0aW9uKGNvbmZpZ0lkKS5jb25maWdJZDtcblxuICAgIHJldHVybiB0aGlzLmxvZ29mZlJldm9jYXRpb25TZXJ2aWNlLmxvZ29mZkxvY2FsKGNvbmZpZ0lkKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBMb2dzIHRoZSB1c2VyIG91dCBvZiB0aGUgYXBwbGljYXRpb24gZm9yIGFsbCBjb25maWdzIHdpdGhvdXQgbG9nZ2luZyB0aGVtIG91dCBvZiB0aGUgc2VydmVyLlxuICAgKiBVc2UgdGhpcyBtZXRob2QgaWYgeW91IGhhdmUgX211bHRpcGxlXyBjb25maWdzIGVuYWJsZWQuXG4gICAqL1xuICBsb2dvZmZMb2NhbE11bHRpcGxlKCk6IHZvaWQge1xuICAgIHJldHVybiB0aGlzLmxvZ29mZlJldm9jYXRpb25TZXJ2aWNlLmxvZ29mZkxvY2FsTXVsdGlwbGUoKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBSZXZva2VzIGFuIGFjY2VzcyB0b2tlbiBvbiB0aGUgU2VjdXJpdHkgVG9rZW4gU2VydmljZS4gVGhpcyBpcyBvbmx5IHJlcXVpcmVkIGluIHRoZSBjb2RlIGZsb3cgd2l0aCByZWZyZXNoIHRva2Vucy4gSWYgbm8gdG9rZW4gaXNcbiAgICogcHJvdmlkZWQsIHRoZW4gdGhlIHRva2VuIGZyb20gdGhlIHN0b3JhZ2UgaXMgcmV2b2tlZC4gWW91IGNhbiBwYXNzIGFueSB0b2tlbiB0byByZXZva2UuXG4gICAqIGh0dHBzOi8vdG9vbHMuaWV0Zi5vcmcvaHRtbC9yZmM3MDA5XG4gICAqXG4gICAqIEBwYXJhbSBhY2Nlc3NUb2tlbiBUaGUgYWNjZXNzIHRva2VuIHRvIHJldm9rZS5cbiAgICogQHBhcmFtIGNvbmZpZ0lkIFRoZSBjb25maWdJZCB0byBwZXJmb3JtIHRoZSBhY3Rpb24gaW4gYmVoYWxmIG9mLiBJZiBub3QgcGFzc2VkLCB0aGUgZmlyc3QgY29uZmlncyB3aWxsIGJlIHRha2VuXG4gICAqXG4gICAqIEByZXR1cm5zIEFuIG9ic2VydmFibGUgd2hlbiB0aGUgYWN0aW9uIGlzIGZpbmlzaGVkXG4gICAqL1xuICByZXZva2VBY2Nlc3NUb2tlbihhY2Nlc3NUb2tlbj86IGFueSwgY29uZmlnSWQ/OiBzdHJpbmcpOiBPYnNlcnZhYmxlPGFueT4ge1xuICAgIGNvbmZpZ0lkID0gY29uZmlnSWQgPz8gdGhpcy5jb25maWd1cmF0aW9uUHJvdmlkZXIuZ2V0T3BlbklEQ29uZmlndXJhdGlvbihjb25maWdJZCkuY29uZmlnSWQ7XG5cbiAgICByZXR1cm4gdGhpcy5sb2dvZmZSZXZvY2F0aW9uU2VydmljZS5yZXZva2VBY2Nlc3NUb2tlbihjb25maWdJZCwgYWNjZXNzVG9rZW4pO1xuICB9XG5cbiAgLyoqXG4gICAqIFJldm9rZXMgYSByZWZyZXNoIHRva2VuIG9uIHRoZSBTZWN1cml0eSBUb2tlbiBTZXJ2aWNlLiBUaGlzIGlzIG9ubHkgcmVxdWlyZWQgaW4gdGhlIGNvZGUgZmxvdyB3aXRoIHJlZnJlc2ggdG9rZW5zLiBJZiBubyB0b2tlbiBpc1xuICAgKiBwcm92aWRlZCwgdGhlbiB0aGUgdG9rZW4gZnJvbSB0aGUgc3RvcmFnZSBpcyByZXZva2VkLiBZb3UgY2FuIHBhc3MgYW55IHRva2VuIHRvIHJldm9rZS5cbiAgICogaHR0cHM6Ly90b29scy5pZXRmLm9yZy9odG1sL3JmYzcwMDlcbiAgICpcbiAgICogQHBhcmFtIHJlZnJlc2hUb2tlbiBUaGUgYWNjZXNzIHRva2VuIHRvIHJldm9rZS5cbiAgICogQHBhcmFtIGNvbmZpZ0lkIFRoZSBjb25maWdJZCB0byBwZXJmb3JtIHRoZSBhY3Rpb24gaW4gYmVoYWxmIG9mLiBJZiBub3QgcGFzc2VkLCB0aGUgZmlyc3QgY29uZmlncyB3aWxsIGJlIHRha2VuXG4gICAqXG4gICAqIEByZXR1cm5zIEFuIG9ic2VydmFibGUgd2hlbiB0aGUgYWN0aW9uIGlzIGZpbmlzaGVkXG4gICAqL1xuICByZXZva2VSZWZyZXNoVG9rZW4ocmVmcmVzaFRva2VuPzogYW55LCBjb25maWdJZD86IHN0cmluZyk6IE9ic2VydmFibGU8YW55PiB7XG4gICAgY29uZmlnSWQgPSBjb25maWdJZCA/PyB0aGlzLmNvbmZpZ3VyYXRpb25Qcm92aWRlci5nZXRPcGVuSURDb25maWd1cmF0aW9uKGNvbmZpZ0lkKS5jb25maWdJZDtcblxuICAgIHJldHVybiB0aGlzLmxvZ29mZlJldm9jYXRpb25TZXJ2aWNlLnJldm9rZVJlZnJlc2hUb2tlbihjb25maWdJZCwgcmVmcmVzaFRva2VuKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBDcmVhdGVzIHRoZSBlbmQgc2Vzc2lvbiBVUkwgd2hpY2ggY2FuIGJlIHVzZWQgdG8gaW1wbGVtZW50IGFuIGFsdGVybmF0ZSBzZXJ2ZXIgbG9nb3V0LlxuICAgKlxuICAgKiBAcGFyYW0gY3VzdG9tUGFyYW1zXG4gICAqIEBwYXJhbSBjb25maWdJZCBUaGUgY29uZmlnSWQgdG8gcGVyZm9ybSB0aGUgYWN0aW9uIGluIGJlaGFsZiBvZi4gSWYgbm90IHBhc3NlZCwgdGhlIGZpcnN0IGNvbmZpZ3Mgd2lsbCBiZSB0YWtlblxuICAgKlxuICAgKiBAcmV0dXJucyBBIHN0cmluZyB3aXRoIHRoZSBlbmQgc2Vzc2lvbiB1cmwgb3IgbnVsbFxuICAgKi9cbiAgZ2V0RW5kU2Vzc2lvblVybChjdXN0b21QYXJhbXM/OiB7IFtwOiBzdHJpbmddOiBzdHJpbmcgfCBudW1iZXIgfCBib29sZWFuIH0sIGNvbmZpZ0lkPzogc3RyaW5nKTogc3RyaW5nIHwgbnVsbCB7XG4gICAgY29uZmlnSWQgPSBjb25maWdJZCA/PyB0aGlzLmNvbmZpZ3VyYXRpb25Qcm92aWRlci5nZXRPcGVuSURDb25maWd1cmF0aW9uKGNvbmZpZ0lkKS5jb25maWdJZDtcblxuICAgIHJldHVybiB0aGlzLmxvZ29mZlJldm9jYXRpb25TZXJ2aWNlLmdldEVuZFNlc3Npb25VcmwoY29uZmlnSWQsIGN1c3RvbVBhcmFtcyk7XG4gIH1cblxuICAvKipcbiAgICogQ3JlYXRlcyB0aGUgYXV0aG9yaXplIFVSTCBiYXNlZCBvbiB5b3VyIGZsb3dcbiAgICpcbiAgICogQHBhcmFtIGN1c3RvbVBhcmFtc1xuICAgKiBAcGFyYW0gY29uZmlnSWQgVGhlIGNvbmZpZ0lkIHRvIHBlcmZvcm0gdGhlIGFjdGlvbiBpbiBiZWhhbGYgb2YuIElmIG5vdCBwYXNzZWQsIHRoZSBmaXJzdCBjb25maWdzIHdpbGwgYmUgdGFrZW5cbiAgICpcbiAgICogQHJldHVybnMgQSBzdHJpbmcgd2l0aCB0aGUgYXV0aG9yaXplIFVSTCBvciBudWxsXG4gICAqL1xuICBnZXRBdXRob3JpemVVcmwoY3VzdG9tUGFyYW1zPzogeyBbcDogc3RyaW5nXTogc3RyaW5nIHwgbnVtYmVyIHwgYm9vbGVhbiB9LCBjb25maWdJZD86IHN0cmluZyk6IHN0cmluZyB8IG51bGwge1xuICAgIGNvbmZpZ0lkID0gY29uZmlnSWQgPz8gdGhpcy5jb25maWd1cmF0aW9uUHJvdmlkZXIuZ2V0T3BlbklEQ29uZmlndXJhdGlvbihjb25maWdJZCkuY29uZmlnSWQ7XG5cbiAgICByZXR1cm4gdGhpcy51cmxTZXJ2aWNlLmdldEF1dGhvcml6ZVVybChjb25maWdJZCwgY3VzdG9tUGFyYW1zKTtcbiAgfVxufVxuIl19

@@ -13,2 +13,2 @@ import { Injectable } from '@angular/core';

}] });
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWJzdHJhY3Qtc2VjdXJpdHktc3RvcmFnZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2FuZ3VsYXItYXV0aC1vaWRjLWNsaWVudC9zcmMvbGliL3N0b3JhZ2UvYWJzdHJhY3Qtc2VjdXJpdHktc3RvcmFnZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDOztBQUUzQzs7R0FFRztBQUVILE1BQU0sT0FBZ0IsdUJBQXVCOztvSEFBdkIsdUJBQXVCO3dIQUF2Qix1QkFBdUI7MkZBQXZCLHVCQUF1QjtrQkFENUMsVUFBVSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuLyoqXG4gKiBJbXBsZW1lbnQgdGhpcyBjbGFzcy1pbnRlcmZhY2UgdG8gY3JlYXRlIGEgY3VzdG9tIHN0b3JhZ2UuXG4gKi9cbkBJbmplY3RhYmxlKClcbmV4cG9ydCBhYnN0cmFjdCBjbGFzcyBBYnN0cmFjdFNlY3VyaXR5U3RvcmFnZSB7XG4gIC8qKlxuICAgKiBUaGlzIG1ldGhvZCBtdXN0IGNvbnRhaW4gdGhlIGxvZ2ljIHRvIHJlYWQgdGhlIHN0b3JhZ2UuXG4gICAqXG4gICAqIEByZXR1cm4gVGhlIHZhbHVlIG9mIHRoZSBnaXZlbiBrZXlcbiAgICovXG4gIHB1YmxpYyBhYnN0cmFjdCByZWFkKGtleTogc3RyaW5nLCBjb25maWdJZD86IHN0cmluZyk6IGFueTtcblxuICAvKipcbiAgICogVGhpcyBtZXRob2QgbXVzdCBjb250YWluIHRoZSBsb2dpYyB0byB3cml0ZSB0aGUgc3RvcmFnZS5cbiAgICpcbiAgICogQHBhcmFtIGtleSBUaGUga2V5IHRvIHdyaXRlIGEgdmFsdWUgZm9yXG4gICAqIEBwYXJhbSB2YWx1ZSBUaGUgdmFsdWUgZm9yIHRoZSBnaXZlbiBrZXlcbiAgICovXG4gIHB1YmxpYyBhYnN0cmFjdCB3cml0ZShrZXk6IHN0cmluZywgdmFsdWU6IGFueSwgY29uZmlnSWQ/OiBzdHJpbmcpOiB2b2lkO1xuXG4gIC8qKlxuICAgKiBUaGlzIG1ldGhvZCBtdXN0IGNvbnRhaW4gdGhlIGxvZ2ljIHRvIHJlbW92ZSBhbiBpdGVtIGZyb20gdGhlIHN0b3JhZ2UuXG4gICAqXG4gICAqIEBwYXJhbSBrZXkgVGhlIHZhbHVlIGZvciB0aGUga2V5IHRvIGJlIHJlbW92ZWRcbiAgICovXG4gIHB1YmxpYyBhYnN0cmFjdCByZW1vdmUoa2V5OiBzdHJpbmcsIGNvbmZpZ0lkPzogc3RyaW5nKTogdm9pZDtcblxuICAvKipcbiAgICogVGhpcyBtZXRob2QgbXVzdCBjb250YWluIHRoZSBsb2dpYyB0byByZW1vdmUgYWxsIGl0ZW1zIGZyb20gdGhlIHN0b3JhZ2UuXG4gICAqL1xuICBwdWJsaWMgYWJzdHJhY3QgY2xlYXIoY29uZmlnSWQ/OiBzdHJpbmcpOiB2b2lkO1xufVxuIl19
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWJzdHJhY3Qtc2VjdXJpdHktc3RvcmFnZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2FuZ3VsYXItYXV0aC1vaWRjLWNsaWVudC9zcmMvbGliL3N0b3JhZ2UvYWJzdHJhY3Qtc2VjdXJpdHktc3RvcmFnZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDOztBQUUzQzs7R0FFRztBQUVILE1BQU0sT0FBZ0IsdUJBQXVCOztvSEFBdkIsdUJBQXVCO3dIQUF2Qix1QkFBdUI7MkZBQXZCLHVCQUF1QjtrQkFENUMsVUFBVSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuLyoqXG4gKiBJbXBsZW1lbnQgdGhpcyBjbGFzcy1pbnRlcmZhY2UgdG8gY3JlYXRlIGEgY3VzdG9tIHN0b3JhZ2UuXG4gKi9cbkBJbmplY3RhYmxlKClcbmV4cG9ydCBhYnN0cmFjdCBjbGFzcyBBYnN0cmFjdFNlY3VyaXR5U3RvcmFnZSB7XG4gIC8qKlxuICAgKiBUaGlzIG1ldGhvZCBtdXN0IGNvbnRhaW4gdGhlIGxvZ2ljIHRvIHJlYWQgdGhlIHN0b3JhZ2UuXG4gICAqXG4gICAqIEByZXR1cm4gVGhlIHZhbHVlIG9mIHRoZSBnaXZlbiBrZXlcbiAgICovXG4gIHB1YmxpYyBhYnN0cmFjdCByZWFkKGtleTogc3RyaW5nKTogYW55O1xuXG4gIC8qKlxuICAgKiBUaGlzIG1ldGhvZCBtdXN0IGNvbnRhaW4gdGhlIGxvZ2ljIHRvIHdyaXRlIHRoZSBzdG9yYWdlLlxuICAgKlxuICAgKiBAcGFyYW0ga2V5IFRoZSBrZXkgdG8gd3JpdGUgYSB2YWx1ZSBmb3JcbiAgICogQHBhcmFtIHZhbHVlIFRoZSB2YWx1ZSBmb3IgdGhlIGdpdmVuIGtleVxuICAgKi9cbiAgcHVibGljIGFic3RyYWN0IHdyaXRlKGtleTogc3RyaW5nLCB2YWx1ZTogYW55KTogdm9pZDtcblxuICAvKipcbiAgICogVGhpcyBtZXRob2QgbXVzdCBjb250YWluIHRoZSBsb2dpYyB0byByZW1vdmUgYW4gaXRlbSBmcm9tIHRoZSBzdG9yYWdlLlxuICAgKlxuICAgKiBAcGFyYW0ga2V5IFRoZSB2YWx1ZSBmb3IgdGhlIGtleSB0byBiZSByZW1vdmVkXG4gICAqL1xuICBwdWJsaWMgYWJzdHJhY3QgcmVtb3ZlKGtleTogc3RyaW5nKTogdm9pZDtcblxuICAvKipcbiAgICogVGhpcyBtZXRob2QgbXVzdCBjb250YWluIHRoZSBsb2dpYyB0byByZW1vdmUgYWxsIGl0ZW1zIGZyb20gdGhlIHN0b3JhZ2UuXG4gICAqL1xuICBwdWJsaWMgYWJzdHJhY3QgY2xlYXIoKTogdm9pZDtcbn1cbiJdfQ==

@@ -11,16 +11,20 @@ import { Injectable } from '@angular/core';

read(key, configId) {
var _a;
if (!this.hasStorage()) {
this.loggerService.logDebug(configId, `Wanted to read '${key}' but Storage was undefined`);
return false;
return null;
}
const item = (_a = this.getStorage(configId)) === null || _a === void 0 ? void 0 : _a.getItem(key);
if (!item) {
const storage = this.getStorage(configId);
if (!storage) {
this.loggerService.logDebug(configId, `Wanted to read config for '${configId}' but Storage was falsy`);
return null;
}
return JSON.parse(item);
const storedConfig = storage.read(configId);
if (!storedConfig) {
return null;
}
return JSON.parse(storedConfig);
}
write(key, value, configId) {
write(value, configId) {
if (!this.hasStorage()) {
this.loggerService.logDebug(configId, `Wanted to write '${key}/${value}' but Storage was falsy`);
this.loggerService.logDebug(configId, `Wanted to write '${value}' but Storage was falsy`);
return false;

@@ -30,7 +34,7 @@ }

if (!storage) {
this.loggerService.logDebug(configId, `Wanted to write '${key}/${value}' but Storage was falsy`);
this.loggerService.logDebug(configId, `Wanted to write '${value}' but Storage was falsy`);
return false;
}
value = value || null;
storage.setItem(`${key}`, JSON.stringify(value));
storage.write(configId, JSON.stringify(value));
return true;

@@ -48,3 +52,3 @@ }

}
storage.removeItem(`${key}`);
storage.remove(key);
return true;

@@ -79,2 +83,2 @@ }

}], ctorParameters: function () { return [{ type: i1.ConfigurationProvider }, { type: i2.LoggerService }]; } });
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYnJvd3Nlci1zdG9yYWdlLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9hbmd1bGFyLWF1dGgtb2lkYy1jbGllbnQvc3JjL2xpYi9zdG9yYWdlL2Jyb3dzZXItc3RvcmFnZS5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7Ozs7QUFNM0MsTUFBTSxPQUFPLHFCQUFxQjtJQUNoQyxZQUFvQixjQUFxQyxFQUFVLGFBQTRCO1FBQTNFLG1CQUFjLEdBQWQsY0FBYyxDQUF1QjtRQUFVLGtCQUFhLEdBQWIsYUFBYSxDQUFlO0lBQUcsQ0FBQztJQUVuRyxJQUFJLENBQUMsR0FBVyxFQUFFLFFBQWdCOztRQUNoQyxJQUFJLENBQUMsSUFBSSxDQUFDLFVBQVUsRUFBRSxFQUFFO1lBQ3RCLElBQUksQ0FBQyxhQUFhLENBQUMsUUFBUSxDQUFDLFFBQVEsRUFBRSxtQkFBbUIsR0FBRyw2QkFBNkIsQ0FBQyxDQUFDO1lBRTNGLE9BQU8sS0FBSyxDQUFDO1NBQ2Q7UUFFRCxNQUFNLElBQUksR0FBRyxNQUFBLElBQUksQ0FBQyxVQUFVLENBQUMsUUFBUSxDQUFDLDBDQUFFLE9BQU8sQ0FBQyxHQUFHLENBQUMsQ0FBQztRQUVyRCxJQUFJLENBQUMsSUFBSSxFQUFFO1lBQ1QsT0FBTyxJQUFJLENBQUM7U0FDYjtRQUVELE9BQU8sSUFBSSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsQ0FBQztJQUMxQixDQUFDO0lBRUQsS0FBSyxDQUFDLEdBQVcsRUFBRSxLQUFVLEVBQUUsUUFBZ0I7UUFDN0MsSUFBSSxDQUFDLElBQUksQ0FBQyxVQUFVLEVBQUUsRUFBRTtZQUN0QixJQUFJLENBQUMsYUFBYSxDQUFDLFFBQVEsQ0FBQyxRQUFRLEVBQUUsb0JBQW9CLEdBQUcsSUFBSSxLQUFLLHlCQUF5QixDQUFDLENBQUM7WUFFakcsT0FBTyxLQUFLLENBQUM7U0FDZDtRQUVELE1BQU0sT0FBTyxHQUFHLElBQUksQ0FBQyxVQUFVLENBQUMsUUFBUSxDQUFDLENBQUM7UUFDMUMsSUFBSSxDQUFDLE9BQU8sRUFBRTtZQUNaLElBQUksQ0FBQyxhQUFhLENBQUMsUUFBUSxDQUFDLFFBQVEsRUFBRSxvQkFBb0IsR0FBRyxJQUFJLEtBQUsseUJBQXlCLENBQUMsQ0FBQztZQUVqRyxPQUFPLEtBQUssQ0FBQztTQUNkO1FBRUQsS0FBSyxHQUFHLEtBQUssSUFBSSxJQUFJLENBQUM7UUFFdEIsT0FBTyxDQUFDLE9BQU8sQ0FBQyxHQUFHLEdBQUcsRUFBRSxFQUFFLElBQUksQ0FBQyxTQUFTLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQztRQUVqRCxPQUFPLElBQUksQ0FBQztJQUNkLENBQUM7SUFFRCxNQUFNLENBQUMsR0FBVyxFQUFFLFFBQWdCO1FBQ2xDLElBQUksQ0FBQyxJQUFJLENBQUMsVUFBVSxFQUFFLEVBQUU7WUFDdEIsSUFBSSxDQUFDLGFBQWEsQ0FBQyxRQUFRLENBQUMsUUFBUSxFQUFFLHFCQUFxQixHQUFHLHlCQUF5QixDQUFDLENBQUM7WUFFekYsT0FBTyxLQUFLLENBQUM7U0FDZDtRQUVELE1BQU0sT0FBTyxHQUFHLElBQUksQ0FBQyxVQUFVLENBQUMsUUFBUSxDQUFDLENBQUM7UUFDMUMsSUFBSSxDQUFDLE9BQU8sRUFBRTtZQUNaLElBQUksQ0FBQyxhQUFhLENBQUMsUUFBUSxDQUFDLFFBQVEsRUFBRSxvQkFBb0IsR0FBRyx5QkFBeUIsQ0FBQyxDQUFDO1lBRXhGLE9BQU8sS0FBSyxDQUFDO1NBQ2Q7UUFFRCxPQUFPLENBQUMsVUFBVSxDQUFDLEdBQUcsR0FBRyxFQUFFLENBQUMsQ0FBQztRQUU3QixPQUFPLElBQUksQ0FBQztJQUNkLENBQUM7SUFFRCxzREFBc0Q7SUFDdEQsS0FBSyxDQUFDLFFBQWdCO1FBQ3BCLElBQUksQ0FBQyxJQUFJLENBQUMsVUFBVSxFQUFFLEVBQUU7WUFDdEIsSUFBSSxDQUFDLGFBQWEsQ0FBQyxRQUFRLENBQUMsUUFBUSxFQUFFLCtDQUErQyxDQUFDLENBQUM7WUFFdkYsT0FBTyxLQUFLLENBQUM7U0FDZDtRQUVELE1BQU0sT0FBTyxHQUFHLElBQUksQ0FBQyxVQUFVLENBQUMsUUFBUSxDQUFDLENBQUM7UUFDMUMsSUFBSSxDQUFDLE9BQU8sRUFBRTtZQUNaLElBQUksQ0FBQyxhQUFhLENBQUMsUUFBUSxDQUFDLFFBQVEsRUFBRSwrQ0FBK0MsQ0FBQyxDQUFDO1lBRXZGLE9BQU8sS0FBSyxDQUFDO1NBQ2Q7UUFFRCxPQUFPLENBQUMsS0FBSyxFQUFFLENBQUM7UUFFaEIsT0FBTyxJQUFJLENBQUM7SUFDZCxDQUFDO0lBRU8sVUFBVSxDQUFDLFFBQWdCO1FBQ2pDLE1BQU0sRUFBRSxPQUFPLEVBQUUsR0FBRyxJQUFJLENBQUMsY0FBYyxDQUFDLHNCQUFzQixDQUFDLFFBQVEsQ0FBQyxJQUFJLEVBQUUsQ0FBQztRQUUvRSxPQUFPLE9BQU8sQ0FBQztJQUNqQixDQUFDO0lBRU8sVUFBVTtRQUNoQixPQUFPLE9BQU8sT0FBTyxLQUFLLFdBQVcsQ0FBQztJQUN4QyxDQUFDOztrSEF2RlUscUJBQXFCO3NIQUFyQixxQkFBcUI7MkZBQXJCLHFCQUFxQjtrQkFEakMsVUFBVSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IENvbmZpZ3VyYXRpb25Qcm92aWRlciB9IGZyb20gJy4uL2NvbmZpZy9wcm92aWRlci9jb25maWcucHJvdmlkZXInO1xuaW1wb3J0IHsgTG9nZ2VyU2VydmljZSB9IGZyb20gJy4uL2xvZ2dpbmcvbG9nZ2VyLnNlcnZpY2UnO1xuaW1wb3J0IHsgQWJzdHJhY3RTZWN1cml0eVN0b3JhZ2UgfSBmcm9tICcuL2Fic3RyYWN0LXNlY3VyaXR5LXN0b3JhZ2UnO1xuXG5ASW5qZWN0YWJsZSgpXG5leHBvcnQgY2xhc3MgQnJvd3NlclN0b3JhZ2VTZXJ2aWNlIGltcGxlbWVudHMgQWJzdHJhY3RTZWN1cml0eVN0b3JhZ2Uge1xuICBjb25zdHJ1Y3Rvcihwcml2YXRlIGNvbmZpZ1Byb3ZpZGVyOiBDb25maWd1cmF0aW9uUHJvdmlkZXIsIHByaXZhdGUgbG9nZ2VyU2VydmljZTogTG9nZ2VyU2VydmljZSkge31cblxuICByZWFkKGtleTogc3RyaW5nLCBjb25maWdJZDogc3RyaW5nKTogYW55IHtcbiAgICBpZiAoIXRoaXMuaGFzU3RvcmFnZSgpKSB7XG4gICAgICB0aGlzLmxvZ2dlclNlcnZpY2UubG9nRGVidWcoY29uZmlnSWQsIGBXYW50ZWQgdG8gcmVhZCAnJHtrZXl9JyBidXQgU3RvcmFnZSB3YXMgdW5kZWZpbmVkYCk7XG5cbiAgICAgIHJldHVybiBmYWxzZTtcbiAgICB9XG5cbiAgICBjb25zdCBpdGVtID0gdGhpcy5nZXRTdG9yYWdlKGNvbmZpZ0lkKT8uZ2V0SXRlbShrZXkpO1xuXG4gICAgaWYgKCFpdGVtKSB7XG4gICAgICByZXR1cm4gbnVsbDtcbiAgICB9XG5cbiAgICByZXR1cm4gSlNPTi5wYXJzZShpdGVtKTtcbiAgfVxuXG4gIHdyaXRlKGtleTogc3RyaW5nLCB2YWx1ZTogYW55LCBjb25maWdJZDogc3RyaW5nKTogYm9vbGVhbiB7XG4gICAgaWYgKCF0aGlzLmhhc1N0b3JhZ2UoKSkge1xuICAgICAgdGhpcy5sb2dnZXJTZXJ2aWNlLmxvZ0RlYnVnKGNvbmZpZ0lkLCBgV2FudGVkIHRvIHdyaXRlICcke2tleX0vJHt2YWx1ZX0nIGJ1dCBTdG9yYWdlIHdhcyBmYWxzeWApO1xuXG4gICAgICByZXR1cm4gZmFsc2U7XG4gICAgfVxuXG4gICAgY29uc3Qgc3RvcmFnZSA9IHRoaXMuZ2V0U3RvcmFnZShjb25maWdJZCk7XG4gICAgaWYgKCFzdG9yYWdlKSB7XG4gICAgICB0aGlzLmxvZ2dlclNlcnZpY2UubG9nRGVidWcoY29uZmlnSWQsIGBXYW50ZWQgdG8gd3JpdGUgJyR7a2V5fS8ke3ZhbHVlfScgYnV0IFN0b3JhZ2Ugd2FzIGZhbHN5YCk7XG5cbiAgICAgIHJldHVybiBmYWxzZTtcbiAgICB9XG5cbiAgICB2YWx1ZSA9IHZhbHVlIHx8IG51bGw7XG5cbiAgICBzdG9yYWdlLnNldEl0ZW0oYCR7a2V5fWAsIEpTT04uc3RyaW5naWZ5KHZhbHVlKSk7XG5cbiAgICByZXR1cm4gdHJ1ZTtcbiAgfVxuXG4gIHJlbW92ZShrZXk6IHN0cmluZywgY29uZmlnSWQ6IHN0cmluZyk6IGJvb2xlYW4ge1xuICAgIGlmICghdGhpcy5oYXNTdG9yYWdlKCkpIHtcbiAgICAgIHRoaXMubG9nZ2VyU2VydmljZS5sb2dEZWJ1Zyhjb25maWdJZCwgYFdhbnRlZCB0byByZW1vdmUgJyR7a2V5fScgYnV0IFN0b3JhZ2Ugd2FzIGZhbHN5YCk7XG5cbiAgICAgIHJldHVybiBmYWxzZTtcbiAgICB9XG5cbiAgICBjb25zdCBzdG9yYWdlID0gdGhpcy5nZXRTdG9yYWdlKGNvbmZpZ0lkKTtcbiAgICBpZiAoIXN0b3JhZ2UpIHtcbiAgICAgIHRoaXMubG9nZ2VyU2VydmljZS5sb2dEZWJ1Zyhjb25maWdJZCwgYFdhbnRlZCB0byB3cml0ZSAnJHtrZXl9JyBidXQgU3RvcmFnZSB3YXMgZmFsc3lgKTtcblxuICAgICAgcmV0dXJuIGZhbHNlO1xuICAgIH1cblxuICAgIHN0b3JhZ2UucmVtb3ZlSXRlbShgJHtrZXl9YCk7XG5cbiAgICByZXR1cm4gdHJ1ZTtcbiAgfVxuXG4gIC8vIFRPRE8gVEhJUyBTVE9SQUdFIFdBTlRTIEFOIElEIEJVVCBDTEVBUlMgRVZFUllUSElOR1xuICBjbGVhcihjb25maWdJZDogc3RyaW5nKTogYm9vbGVhbiB7XG4gICAgaWYgKCF0aGlzLmhhc1N0b3JhZ2UoKSkge1xuICAgICAgdGhpcy5sb2dnZXJTZXJ2aWNlLmxvZ0RlYnVnKGNvbmZpZ0lkLCBgV2FudGVkIHRvIGNsZWFyIHN0b3JhZ2UgYnV0IFN0b3JhZ2Ugd2FzIGZhbHN5YCk7XG5cbiAgICAgIHJldHVybiBmYWxzZTtcbiAgICB9XG5cbiAgICBjb25zdCBzdG9yYWdlID0gdGhpcy5nZXRTdG9yYWdlKGNvbmZpZ0lkKTtcbiAgICBpZiAoIXN0b3JhZ2UpIHtcbiAgICAgIHRoaXMubG9nZ2VyU2VydmljZS5sb2dEZWJ1Zyhjb25maWdJZCwgYFdhbnRlZCB0byBjbGVhciBzdG9yYWdlIGJ1dCBTdG9yYWdlIHdhcyBmYWxzeWApO1xuXG4gICAgICByZXR1cm4gZmFsc2U7XG4gICAgfVxuXG4gICAgc3RvcmFnZS5jbGVhcigpO1xuXG4gICAgcmV0dXJuIHRydWU7XG4gIH1cblxuICBwcml2YXRlIGdldFN0b3JhZ2UoY29uZmlnSWQ6IHN0cmluZyk6IGFueSB7XG4gICAgY29uc3QgeyBzdG9yYWdlIH0gPSB0aGlzLmNvbmZpZ1Byb3ZpZGVyLmdldE9wZW5JRENvbmZpZ3VyYXRpb24oY29uZmlnSWQpIHx8IHt9O1xuXG4gICAgcmV0dXJuIHN0b3JhZ2U7XG4gIH1cblxuICBwcml2YXRlIGhhc1N0b3JhZ2UoKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHR5cGVvZiBTdG9yYWdlICE9PSAndW5kZWZpbmVkJztcbiAgfVxufVxuIl19
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYnJvd3Nlci1zdG9yYWdlLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9hbmd1bGFyLWF1dGgtb2lkYy1jbGllbnQvc3JjL2xpYi9zdG9yYWdlL2Jyb3dzZXItc3RvcmFnZS5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7Ozs7QUFNM0MsTUFBTSxPQUFPLHFCQUFxQjtJQUNoQyxZQUFvQixjQUFxQyxFQUFVLGFBQTRCO1FBQTNFLG1CQUFjLEdBQWQsY0FBYyxDQUF1QjtRQUFVLGtCQUFhLEdBQWIsYUFBYSxDQUFlO0lBQUcsQ0FBQztJQUVuRyxJQUFJLENBQUMsR0FBVyxFQUFFLFFBQWdCO1FBQ2hDLElBQUksQ0FBQyxJQUFJLENBQUMsVUFBVSxFQUFFLEVBQUU7WUFDdEIsSUFBSSxDQUFDLGFBQWEsQ0FBQyxRQUFRLENBQUMsUUFBUSxFQUFFLG1CQUFtQixHQUFHLDZCQUE2QixDQUFDLENBQUM7WUFFM0YsT0FBTyxJQUFJLENBQUM7U0FDYjtRQUVELE1BQU0sT0FBTyxHQUFHLElBQUksQ0FBQyxVQUFVLENBQUMsUUFBUSxDQUFDLENBQUM7UUFFMUMsSUFBSSxDQUFDLE9BQU8sRUFBRTtZQUNaLElBQUksQ0FBQyxhQUFhLENBQUMsUUFBUSxDQUFDLFFBQVEsRUFBRSw4QkFBOEIsUUFBUSx5QkFBeUIsQ0FBQyxDQUFDO1lBRXZHLE9BQU8sSUFBSSxDQUFDO1NBQ2I7UUFFRCxNQUFNLFlBQVksR0FBRyxPQUFPLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxDQUFDO1FBRTVDLElBQUksQ0FBQyxZQUFZLEVBQUU7WUFDakIsT0FBTyxJQUFJLENBQUM7U0FDYjtRQUVELE9BQU8sSUFBSSxDQUFDLEtBQUssQ0FBQyxZQUFZLENBQUMsQ0FBQztJQUNsQyxDQUFDO0lBRUQsS0FBSyxDQUFDLEtBQVUsRUFBRSxRQUFnQjtRQUNoQyxJQUFJLENBQUMsSUFBSSxDQUFDLFVBQVUsRUFBRSxFQUFFO1lBQ3RCLElBQUksQ0FBQyxhQUFhLENBQUMsUUFBUSxDQUFDLFFBQVEsRUFBRSxvQkFBb0IsS0FBSyx5QkFBeUIsQ0FBQyxDQUFDO1lBRTFGLE9BQU8sS0FBSyxDQUFDO1NBQ2Q7UUFFRCxNQUFNLE9BQU8sR0FBRyxJQUFJLENBQUMsVUFBVSxDQUFDLFFBQVEsQ0FBQyxDQUFDO1FBQzFDLElBQUksQ0FBQyxPQUFPLEVBQUU7WUFDWixJQUFJLENBQUMsYUFBYSxDQUFDLFFBQVEsQ0FBQyxRQUFRLEVBQUUsb0JBQW9CLEtBQUsseUJBQXlCLENBQUMsQ0FBQztZQUUxRixPQUFPLEtBQUssQ0FBQztTQUNkO1FBRUQsS0FBSyxHQUFHLEtBQUssSUFBSSxJQUFJLENBQUM7UUFFdEIsT0FBTyxDQUFDLEtBQUssQ0FBQyxRQUFRLEVBQUUsSUFBSSxDQUFDLFNBQVMsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDO1FBRS9DLE9BQU8sSUFBSSxDQUFDO0lBQ2QsQ0FBQztJQUVELE1BQU0sQ0FBQyxHQUFXLEVBQUUsUUFBZ0I7UUFDbEMsSUFBSSxDQUFDLElBQUksQ0FBQyxVQUFVLEVBQUUsRUFBRTtZQUN0QixJQUFJLENBQUMsYUFBYSxDQUFDLFFBQVEsQ0FBQyxRQUFRLEVBQUUscUJBQXFCLEdBQUcseUJBQXlCLENBQUMsQ0FBQztZQUV6RixPQUFPLEtBQUssQ0FBQztTQUNkO1FBRUQsTUFBTSxPQUFPLEdBQUcsSUFBSSxDQUFDLFVBQVUsQ0FBQyxRQUFRLENBQUMsQ0FBQztRQUMxQyxJQUFJLENBQUMsT0FBTyxFQUFFO1lBQ1osSUFBSSxDQUFDLGFBQWEsQ0FBQyxRQUFRLENBQUMsUUFBUSxFQUFFLG9CQUFvQixHQUFHLHlCQUF5QixDQUFDLENBQUM7WUFFeEYsT0FBTyxLQUFLLENBQUM7U0FDZDtRQUVELE9BQU8sQ0FBQyxNQUFNLENBQUMsR0FBRyxDQUFDLENBQUM7UUFFcEIsT0FBTyxJQUFJLENBQUM7SUFDZCxDQUFDO0lBRUQsc0RBQXNEO0lBQ3RELEtBQUssQ0FBQyxRQUFnQjtRQUNwQixJQUFJLENBQUMsSUFBSSxDQUFDLFVBQVUsRUFBRSxFQUFFO1lBQ3RCLElBQUksQ0FBQyxhQUFhLENBQUMsUUFBUSxDQUFDLFFBQVEsRUFBRSwrQ0FBK0MsQ0FBQyxDQUFDO1lBRXZGLE9BQU8sS0FBSyxDQUFDO1NBQ2Q7UUFFRCxNQUFNLE9BQU8sR0FBRyxJQUFJLENBQUMsVUFBVSxDQUFDLFFBQVEsQ0FBQyxDQUFDO1FBQzFDLElBQUksQ0FBQyxPQUFPLEVBQUU7WUFDWixJQUFJLENBQUMsYUFBYSxDQUFDLFFBQVEsQ0FBQyxRQUFRLEVBQUUsK0NBQStDLENBQUMsQ0FBQztZQUV2RixPQUFPLEtBQUssQ0FBQztTQUNkO1FBRUQsT0FBTyxDQUFDLEtBQUssRUFBRSxDQUFDO1FBRWhCLE9BQU8sSUFBSSxDQUFDO0lBQ2QsQ0FBQztJQUVPLFVBQVUsQ0FBQyxRQUFnQjtRQUNqQyxNQUFNLEVBQUUsT0FBTyxFQUFFLEdBQUcsSUFBSSxDQUFDLGNBQWMsQ0FBQyxzQkFBc0IsQ0FBQyxRQUFRLENBQUMsSUFBSSxFQUFFLENBQUM7UUFFL0UsT0FBTyxPQUFPLENBQUM7SUFDakIsQ0FBQztJQUVPLFVBQVU7UUFDaEIsT0FBTyxPQUFPLE9BQU8sS0FBSyxXQUFXLENBQUM7SUFDeEMsQ0FBQzs7a0hBL0ZVLHFCQUFxQjtzSEFBckIscUJBQXFCOzJGQUFyQixxQkFBcUI7a0JBRGpDLFVBQVUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBDb25maWd1cmF0aW9uUHJvdmlkZXIgfSBmcm9tICcuLi9jb25maWcvcHJvdmlkZXIvY29uZmlnLnByb3ZpZGVyJztcbmltcG9ydCB7IExvZ2dlclNlcnZpY2UgfSBmcm9tICcuLi9sb2dnaW5nL2xvZ2dlci5zZXJ2aWNlJztcbmltcG9ydCB7IEFic3RyYWN0U2VjdXJpdHlTdG9yYWdlIH0gZnJvbSAnLi9hYnN0cmFjdC1zZWN1cml0eS1zdG9yYWdlJztcblxuQEluamVjdGFibGUoKVxuZXhwb3J0IGNsYXNzIEJyb3dzZXJTdG9yYWdlU2VydmljZSB7XG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgY29uZmlnUHJvdmlkZXI6IENvbmZpZ3VyYXRpb25Qcm92aWRlciwgcHJpdmF0ZSBsb2dnZXJTZXJ2aWNlOiBMb2dnZXJTZXJ2aWNlKSB7fVxuXG4gIHJlYWQoa2V5OiBzdHJpbmcsIGNvbmZpZ0lkOiBzdHJpbmcpOiBhbnkge1xuICAgIGlmICghdGhpcy5oYXNTdG9yYWdlKCkpIHtcbiAgICAgIHRoaXMubG9nZ2VyU2VydmljZS5sb2dEZWJ1Zyhjb25maWdJZCwgYFdhbnRlZCB0byByZWFkICcke2tleX0nIGJ1dCBTdG9yYWdlIHdhcyB1bmRlZmluZWRgKTtcblxuICAgICAgcmV0dXJuIG51bGw7XG4gICAgfVxuXG4gICAgY29uc3Qgc3RvcmFnZSA9IHRoaXMuZ2V0U3RvcmFnZShjb25maWdJZCk7XG5cbiAgICBpZiAoIXN0b3JhZ2UpIHtcbiAgICAgIHRoaXMubG9nZ2VyU2VydmljZS5sb2dEZWJ1Zyhjb25maWdJZCwgYFdhbnRlZCB0byByZWFkIGNvbmZpZyBmb3IgJyR7Y29uZmlnSWR9JyBidXQgU3RvcmFnZSB3YXMgZmFsc3lgKTtcblxuICAgICAgcmV0dXJuIG51bGw7XG4gICAgfVxuXG4gICAgY29uc3Qgc3RvcmVkQ29uZmlnID0gc3RvcmFnZS5yZWFkKGNvbmZpZ0lkKTtcblxuICAgIGlmICghc3RvcmVkQ29uZmlnKSB7XG4gICAgICByZXR1cm4gbnVsbDtcbiAgICB9XG5cbiAgICByZXR1cm4gSlNPTi5wYXJzZShzdG9yZWRDb25maWcpO1xuICB9XG5cbiAgd3JpdGUodmFsdWU6IGFueSwgY29uZmlnSWQ6IHN0cmluZyk6IGJvb2xlYW4ge1xuICAgIGlmICghdGhpcy5oYXNTdG9yYWdlKCkpIHtcbiAgICAgIHRoaXMubG9nZ2VyU2VydmljZS5sb2dEZWJ1Zyhjb25maWdJZCwgYFdhbnRlZCB0byB3cml0ZSAnJHt2YWx1ZX0nIGJ1dCBTdG9yYWdlIHdhcyBmYWxzeWApO1xuXG4gICAgICByZXR1cm4gZmFsc2U7XG4gICAgfVxuXG4gICAgY29uc3Qgc3RvcmFnZSA9IHRoaXMuZ2V0U3RvcmFnZShjb25maWdJZCk7XG4gICAgaWYgKCFzdG9yYWdlKSB7XG4gICAgICB0aGlzLmxvZ2dlclNlcnZpY2UubG9nRGVidWcoY29uZmlnSWQsIGBXYW50ZWQgdG8gd3JpdGUgJyR7dmFsdWV9JyBidXQgU3RvcmFnZSB3YXMgZmFsc3lgKTtcblxuICAgICAgcmV0dXJuIGZhbHNlO1xuICAgIH1cblxuICAgIHZhbHVlID0gdmFsdWUgfHwgbnVsbDtcblxuICAgIHN0b3JhZ2Uud3JpdGUoY29uZmlnSWQsIEpTT04uc3RyaW5naWZ5KHZhbHVlKSk7XG5cbiAgICByZXR1cm4gdHJ1ZTtcbiAgfVxuXG4gIHJlbW92ZShrZXk6IHN0cmluZywgY29uZmlnSWQ6IHN0cmluZyk6IGJvb2xlYW4ge1xuICAgIGlmICghdGhpcy5oYXNTdG9yYWdlKCkpIHtcbiAgICAgIHRoaXMubG9nZ2VyU2VydmljZS5sb2dEZWJ1Zyhjb25maWdJZCwgYFdhbnRlZCB0byByZW1vdmUgJyR7a2V5fScgYnV0IFN0b3JhZ2Ugd2FzIGZhbHN5YCk7XG5cbiAgICAgIHJldHVybiBmYWxzZTtcbiAgICB9XG5cbiAgICBjb25zdCBzdG9yYWdlID0gdGhpcy5nZXRTdG9yYWdlKGNvbmZpZ0lkKTtcbiAgICBpZiAoIXN0b3JhZ2UpIHtcbiAgICAgIHRoaXMubG9nZ2VyU2VydmljZS5sb2dEZWJ1Zyhjb25maWdJZCwgYFdhbnRlZCB0byB3cml0ZSAnJHtrZXl9JyBidXQgU3RvcmFnZSB3YXMgZmFsc3lgKTtcblxuICAgICAgcmV0dXJuIGZhbHNlO1xuICAgIH1cblxuICAgIHN0b3JhZ2UucmVtb3ZlKGtleSk7XG5cbiAgICByZXR1cm4gdHJ1ZTtcbiAgfVxuXG4gIC8vIFRPRE8gVEhJUyBTVE9SQUdFIFdBTlRTIEFOIElEIEJVVCBDTEVBUlMgRVZFUllUSElOR1xuICBjbGVhcihjb25maWdJZDogc3RyaW5nKTogYm9vbGVhbiB7XG4gICAgaWYgKCF0aGlzLmhhc1N0b3JhZ2UoKSkge1xuICAgICAgdGhpcy5sb2dnZXJTZXJ2aWNlLmxvZ0RlYnVnKGNvbmZpZ0lkLCBgV2FudGVkIHRvIGNsZWFyIHN0b3JhZ2UgYnV0IFN0b3JhZ2Ugd2FzIGZhbHN5YCk7XG5cbiAgICAgIHJldHVybiBmYWxzZTtcbiAgICB9XG5cbiAgICBjb25zdCBzdG9yYWdlID0gdGhpcy5nZXRTdG9yYWdlKGNvbmZpZ0lkKTtcbiAgICBpZiAoIXN0b3JhZ2UpIHtcbiAgICAgIHRoaXMubG9nZ2VyU2VydmljZS5sb2dEZWJ1Zyhjb25maWdJZCwgYFdhbnRlZCB0byBjbGVhciBzdG9yYWdlIGJ1dCBTdG9yYWdlIHdhcyBmYWxzeWApO1xuXG4gICAgICByZXR1cm4gZmFsc2U7XG4gICAgfVxuXG4gICAgc3RvcmFnZS5jbGVhcigpO1xuXG4gICAgcmV0dXJuIHRydWU7XG4gIH1cblxuICBwcml2YXRlIGdldFN0b3JhZ2UoY29uZmlnSWQ6IHN0cmluZyk6IEFic3RyYWN0U2VjdXJpdHlTdG9yYWdlIHtcbiAgICBjb25zdCB7IHN0b3JhZ2UgfSA9IHRoaXMuY29uZmlnUHJvdmlkZXIuZ2V0T3BlbklEQ29uZmlndXJhdGlvbihjb25maWdJZCkgfHwge307XG5cbiAgICByZXR1cm4gc3RvcmFnZTtcbiAgfVxuXG4gIHByaXZhdGUgaGFzU3RvcmFnZSgpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdHlwZW9mIFN0b3JhZ2UgIT09ICd1bmRlZmluZWQnO1xuICB9XG59XG4iXX0=
import { Injectable } from '@angular/core';
import * as i0 from "@angular/core";
import * as i1 from "./abstract-security-storage";
import * as i1 from "./browser-storage.service";
export class StoragePersistenceService {
constructor(oidcSecurityStorage) {
this.oidcSecurityStorage = oidcSecurityStorage;
constructor(browserStorageService) {
this.browserStorageService = browserStorageService;
}
read(key, configId) {
const storedConfig = this.oidcSecurityStorage.read(configId) || {};
const storedConfig = this.browserStorageService.read(key, configId) || {};
return storedConfig[key];
}
write(key, value, configId) {
const storedConfig = this.oidcSecurityStorage.read(configId) || {};
const storedConfig = this.browserStorageService.read(key, configId) || {};
storedConfig[key] = value;
this.oidcSecurityStorage.write(configId, storedConfig);
this.browserStorageService.write(storedConfig, configId);
}
remove(key, configId) {
const storedConfig = this.oidcSecurityStorage.read(configId) || {};
const storedConfig = this.browserStorageService.read(key, configId) || {};
delete storedConfig[key];
this.oidcSecurityStorage.write(configId, storedConfig);
this.browserStorageService.write(storedConfig, configId);
}
clear() {
this.oidcSecurityStorage.clear();
clear(configId) {
this.browserStorageService.clear(configId);
}

@@ -54,7 +54,7 @@ resetStorageFlowData(configId) {

}
StoragePersistenceService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.0.4", ngImport: i0, type: StoragePersistenceService, deps: [{ token: i1.AbstractSecurityStorage }], target: i0.ɵɵFactoryTarget.Injectable });
StoragePersistenceService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.0.4", ngImport: i0, type: StoragePersistenceService, deps: [{ token: i1.BrowserStorageService }], target: i0.ɵɵFactoryTarget.Injectable });
StoragePersistenceService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.0.4", ngImport: i0, type: StoragePersistenceService });
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.0.4", ngImport: i0, type: StoragePersistenceService, decorators: [{
type: Injectable
}], ctorParameters: function () { return [{ type: i1.AbstractSecurityStorage }]; } });
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3RvcmFnZS1wZXJzaXN0ZW5jZS5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYW5ndWxhci1hdXRoLW9pZGMtY2xpZW50L3NyYy9saWIvc3RvcmFnZS9zdG9yYWdlLXBlcnNpc3RlbmNlLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQzs7O0FBc0IzQyxNQUFNLE9BQU8seUJBQXlCO0lBQ3BDLFlBQTZCLG1CQUE0QztRQUE1Qyx3QkFBbUIsR0FBbkIsbUJBQW1CLENBQXlCO0lBQUcsQ0FBQztJQUU3RSxJQUFJLENBQUMsR0FBZ0IsRUFBRSxRQUFnQjtRQUNyQyxNQUFNLFlBQVksR0FBRyxJQUFJLENBQUMsbUJBQW1CLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxJQUFJLEVBQUUsQ0FBQztRQUVuRSxPQUFPLFlBQVksQ0FBQyxHQUFHLENBQUMsQ0FBQztJQUMzQixDQUFDO0lBRUQsS0FBSyxDQUFDLEdBQWdCLEVBQUUsS0FBVSxFQUFFLFFBQWdCO1FBQ2xELE1BQU0sWUFBWSxHQUFHLElBQUksQ0FBQyxtQkFBbUIsQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLElBQUksRUFBRSxDQUFDO1FBRW5FLFlBQVksQ0FBQyxHQUFHLENBQUMsR0FBRyxLQUFLLENBQUM7UUFDMUIsSUFBSSxDQUFDLG1CQUFtQixDQUFDLEtBQUssQ0FBQyxRQUFRLEVBQUUsWUFBWSxDQUFDLENBQUM7SUFDekQsQ0FBQztJQUVELE1BQU0sQ0FBQyxHQUFnQixFQUFFLFFBQWdCO1FBQ3ZDLE1BQU0sWUFBWSxHQUFHLElBQUksQ0FBQyxtQkFBbUIsQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLElBQUksRUFBRSxDQUFDO1FBRW5FLE9BQU8sWUFBWSxDQUFDLEdBQUcsQ0FBQyxDQUFDO1FBRXpCLElBQUksQ0FBQyxtQkFBbUIsQ0FBQyxLQUFLLENBQUMsUUFBUSxFQUFFLFlBQVksQ0FBQyxDQUFDO0lBQ3pELENBQUM7SUFFRCxLQUFLO1FBQ0gsSUFBSSxDQUFDLG1CQUFtQixDQUFDLEtBQUssRUFBRSxDQUFDO0lBQ25DLENBQUM7SUFFRCxvQkFBb0IsQ0FBQyxRQUFnQjtRQUNuQyxJQUFJLENBQUMsTUFBTSxDQUFDLGVBQWUsRUFBRSxRQUFRLENBQUMsQ0FBQztRQUN2QyxJQUFJLENBQUMsTUFBTSxDQUFDLDJCQUEyQixFQUFFLFFBQVEsQ0FBQyxDQUFDO1FBQ25ELElBQUksQ0FBQyxNQUFNLENBQUMsY0FBYyxFQUFFLFFBQVEsQ0FBQyxDQUFDO1FBQ3RDLElBQUksQ0FBQyxNQUFNLENBQUMsVUFBVSxFQUFFLFFBQVEsQ0FBQyxDQUFDO1FBQ2xDLElBQUksQ0FBQyxNQUFNLENBQUMsZ0NBQWdDLEVBQUUsUUFBUSxDQUFDLENBQUM7UUFDeEQsSUFBSSxDQUFDLE1BQU0sQ0FBQyx5QkFBeUIsRUFBRSxRQUFRLENBQUMsQ0FBQztRQUNqRCxJQUFJLENBQUMsTUFBTSxDQUFDLDRCQUE0QixFQUFFLFFBQVEsQ0FBQyxDQUFDO1FBQ3BELElBQUksQ0FBQyxNQUFNLENBQUMsK0JBQStCLEVBQUUsUUFBUSxDQUFDLENBQUM7SUFDekQsQ0FBQztJQUVELHVCQUF1QixDQUFDLFFBQWdCO1FBQ3RDLElBQUksQ0FBQyxNQUFNLENBQUMsV0FBVyxFQUFFLFFBQVEsQ0FBQyxDQUFDO1FBQ25DLElBQUksQ0FBQyxNQUFNLENBQUMsYUFBYSxFQUFFLFFBQVEsQ0FBQyxDQUFDO0lBQ3ZDLENBQUM7SUFFRCxjQUFjLENBQUMsUUFBZ0I7UUFDN0IsT0FBTyxJQUFJLENBQUMsSUFBSSxDQUFDLFdBQVcsRUFBRSxRQUFRLENBQUMsQ0FBQztJQUMxQyxDQUFDO0lBRUQsVUFBVSxDQUFDLFFBQWdCOztRQUN6QixPQUFPLE1BQUEsSUFBSSxDQUFDLElBQUksQ0FBQyxhQUFhLEVBQUUsUUFBUSxDQUFDLDBDQUFFLFFBQVEsQ0FBQztJQUN0RCxDQUFDO0lBRUQsZUFBZSxDQUFDLFFBQWdCOztRQUM5QixPQUFPLE1BQUEsSUFBSSxDQUFDLElBQUksQ0FBQyxhQUFhLEVBQUUsUUFBUSxDQUFDLDBDQUFFLGFBQWEsQ0FBQztJQUMzRCxDQUFDO0lBRUQsdUJBQXVCLENBQUMsUUFBZ0I7UUFDdEMsT0FBTyxJQUFJLENBQUMsSUFBSSxDQUFDLGFBQWEsRUFBRSxRQUFRLENBQUMsQ0FBQztJQUM1QyxDQUFDOztzSEExRFUseUJBQXlCOzBIQUF6Qix5QkFBeUI7MkZBQXpCLHlCQUF5QjtrQkFEckMsVUFBVSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEFic3RyYWN0U2VjdXJpdHlTdG9yYWdlIH0gZnJvbSAnLi9hYnN0cmFjdC1zZWN1cml0eS1zdG9yYWdlJztcblxuZXhwb3J0IHR5cGUgU3RvcmFnZUtleXMgPVxuICB8ICdhdXRoblJlc3VsdCdcbiAgfCAnYXV0aHpEYXRhJ1xuICB8ICdhY2Nlc3NfdG9rZW5fZXhwaXJlc19hdCdcbiAgfCAnYXV0aFdlbGxLbm93bkVuZFBvaW50cydcbiAgfCAndXNlckRhdGEnXG4gIHwgJ2F1dGhOb25jZSdcbiAgfCAnY29kZVZlcmlmaWVyJ1xuICB8ICdhdXRoU3RhdGVDb250cm9sJ1xuICB8ICdzZXNzaW9uX3N0YXRlJ1xuICB8ICdzdG9yYWdlU2lsZW50UmVuZXdSdW5uaW5nJ1xuICB8ICdzdG9yYWdlQ3VzdG9tUGFyYW1zQXV0aFJlcXVlc3QnXG4gIHwgJ3N0b3JhZ2VDdXN0b21QYXJhbXNSZWZyZXNoJ1xuICB8ICdzdG9yYWdlQ3VzdG9tUGFyYW1zRW5kU2Vzc2lvbidcbiAgfCAncmVkaXJlY3QnXG4gIHwgJ2NvbmZpZ0lkcydcbiAgfCAnand0S2V5cyc7XG5cbkBJbmplY3RhYmxlKClcbmV4cG9ydCBjbGFzcyBTdG9yYWdlUGVyc2lzdGVuY2VTZXJ2aWNlIHtcbiAgY29uc3RydWN0b3IocHJpdmF0ZSByZWFkb25seSBvaWRjU2VjdXJpdHlTdG9yYWdlOiBBYnN0cmFjdFNlY3VyaXR5U3RvcmFnZSkge31cblxuICByZWFkKGtleTogU3RvcmFnZUtleXMsIGNvbmZpZ0lkOiBzdHJpbmcpOiBhbnkge1xuICAgIGNvbnN0IHN0b3JlZENvbmZpZyA9IHRoaXMub2lkY1NlY3VyaXR5U3RvcmFnZS5yZWFkKGNvbmZpZ0lkKSB8fCB7fTtcblxuICAgIHJldHVybiBzdG9yZWRDb25maWdba2V5XTtcbiAgfVxuXG4gIHdyaXRlKGtleTogU3RvcmFnZUtleXMsIHZhbHVlOiBhbnksIGNvbmZpZ0lkOiBzdHJpbmcpOiB2b2lkIHtcbiAgICBjb25zdCBzdG9yZWRDb25maWcgPSB0aGlzLm9pZGNTZWN1cml0eVN0b3JhZ2UucmVhZChjb25maWdJZCkgfHwge307XG5cbiAgICBzdG9yZWRDb25maWdba2V5XSA9IHZhbHVlO1xuICAgIHRoaXMub2lkY1NlY3VyaXR5U3RvcmFnZS53cml0ZShjb25maWdJZCwgc3RvcmVkQ29uZmlnKTtcbiAgfVxuXG4gIHJlbW92ZShrZXk6IFN0b3JhZ2VLZXlzLCBjb25maWdJZDogc3RyaW5nKTogdm9pZCB7XG4gICAgY29uc3Qgc3RvcmVkQ29uZmlnID0gdGhpcy5vaWRjU2VjdXJpdHlTdG9yYWdlLnJlYWQoY29uZmlnSWQpIHx8IHt9O1xuXG4gICAgZGVsZXRlIHN0b3JlZENvbmZpZ1trZXldO1xuXG4gICAgdGhpcy5vaWRjU2VjdXJpdHlTdG9yYWdlLndyaXRlKGNvbmZpZ0lkLCBzdG9yZWRDb25maWcpO1xuICB9XG5cbiAgY2xlYXIoKTogdm9pZCB7XG4gICAgdGhpcy5vaWRjU2VjdXJpdHlTdG9yYWdlLmNsZWFyKCk7XG4gIH1cblxuICByZXNldFN0b3JhZ2VGbG93RGF0YShjb25maWdJZDogc3RyaW5nKTogdm9pZCB7XG4gICAgdGhpcy5yZW1vdmUoJ3Nlc3Npb25fc3RhdGUnLCBjb25maWdJZCk7XG4gICAgdGhpcy5yZW1vdmUoJ3N0b3JhZ2VTaWxlbnRSZW5ld1J1bm5pbmcnLCBjb25maWdJZCk7XG4gICAgdGhpcy5yZW1vdmUoJ2NvZGVWZXJpZmllcicsIGNvbmZpZ0lkKTtcbiAgICB0aGlzLnJlbW92ZSgndXNlckRhdGEnLCBjb25maWdJZCk7XG4gICAgdGhpcy5yZW1vdmUoJ3N0b3JhZ2VDdXN0b21QYXJhbXNBdXRoUmVxdWVzdCcsIGNvbmZpZ0lkKTtcbiAgICB0aGlzLnJlbW92ZSgnYWNjZXNzX3Rva2VuX2V4cGlyZXNfYXQnLCBjb25maWdJZCk7XG4gICAgdGhpcy5yZW1vdmUoJ3N0b3JhZ2VDdXN0b21QYXJhbXNSZWZyZXNoJywgY29uZmlnSWQpO1xuICAgIHRoaXMucmVtb3ZlKCdzdG9yYWdlQ3VzdG9tUGFyYW1zRW5kU2Vzc2lvbicsIGNvbmZpZ0lkKTtcbiAgfVxuXG4gIHJlc2V0QXV0aFN0YXRlSW5TdG9yYWdlKGNvbmZpZ0lkOiBzdHJpbmcpOiB2b2lkIHtcbiAgICB0aGlzLnJlbW92ZSgnYXV0aHpEYXRhJywgY29uZmlnSWQpO1xuICAgIHRoaXMucmVtb3ZlKCdhdXRoblJlc3VsdCcsIGNvbmZpZ0lkKTtcbiAgfVxuXG4gIGdldEFjY2Vzc1Rva2VuKGNvbmZpZ0lkOiBzdHJpbmcpOiBzdHJpbmcge1xuICAgIHJldHVybiB0aGlzLnJlYWQoJ2F1dGh6RGF0YScsIGNvbmZpZ0lkKTtcbiAgfVxuXG4gIGdldElkVG9rZW4oY29uZmlnSWQ6IHN0cmluZyk6IHN0cmluZyB7XG4gICAgcmV0dXJuIHRoaXMucmVhZCgnYXV0aG5SZXN1bHQnLCBjb25maWdJZCk/LmlkX3Rva2VuO1xuICB9XG5cbiAgZ2V0UmVmcmVzaFRva2VuKGNvbmZpZ0lkOiBzdHJpbmcpOiBzdHJpbmcge1xuICAgIHJldHVybiB0aGlzLnJlYWQoJ2F1dGhuUmVzdWx0JywgY29uZmlnSWQpPy5yZWZyZXNoX3Rva2VuO1xuICB9XG5cbiAgZ2V0QXV0aGVudGljYXRpb25SZXN1bHQoY29uZmlnSWQ6IHN0cmluZyk6IGFueSB7XG4gICAgcmV0dXJuIHRoaXMucmVhZCgnYXV0aG5SZXN1bHQnLCBjb25maWdJZCk7XG4gIH1cbn1cbiJdfQ==
}], ctorParameters: function () { return [{ type: i1.BrowserStorageService }]; } });
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3RvcmFnZS1wZXJzaXN0ZW5jZS5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYW5ndWxhci1hdXRoLW9pZGMtY2xpZW50L3NyYy9saWIvc3RvcmFnZS9zdG9yYWdlLXBlcnNpc3RlbmNlLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQzs7O0FBc0IzQyxNQUFNLE9BQU8seUJBQXlCO0lBQ3BDLFlBQTZCLHFCQUE0QztRQUE1QywwQkFBcUIsR0FBckIscUJBQXFCLENBQXVCO0lBQUcsQ0FBQztJQUU3RSxJQUFJLENBQUMsR0FBZ0IsRUFBRSxRQUFnQjtRQUNyQyxNQUFNLFlBQVksR0FBRyxJQUFJLENBQUMscUJBQXFCLENBQUMsSUFBSSxDQUFDLEdBQUcsRUFBRSxRQUFRLENBQUMsSUFBSSxFQUFFLENBQUM7UUFFMUUsT0FBTyxZQUFZLENBQUMsR0FBRyxDQUFDLENBQUM7SUFDM0IsQ0FBQztJQUVELEtBQUssQ0FBQyxHQUFnQixFQUFFLEtBQVUsRUFBRSxRQUFnQjtRQUNsRCxNQUFNLFlBQVksR0FBRyxJQUFJLENBQUMscUJBQXFCLENBQUMsSUFBSSxDQUFDLEdBQUcsRUFBRSxRQUFRLENBQUMsSUFBSSxFQUFFLENBQUM7UUFFMUUsWUFBWSxDQUFDLEdBQUcsQ0FBQyxHQUFHLEtBQUssQ0FBQztRQUMxQixJQUFJLENBQUMscUJBQXFCLENBQUMsS0FBSyxDQUFDLFlBQVksRUFBRSxRQUFRLENBQUMsQ0FBQztJQUMzRCxDQUFDO0lBRUQsTUFBTSxDQUFDLEdBQWdCLEVBQUUsUUFBZ0I7UUFDdkMsTUFBTSxZQUFZLEdBQUcsSUFBSSxDQUFDLHFCQUFxQixDQUFDLElBQUksQ0FBQyxHQUFHLEVBQUUsUUFBUSxDQUFDLElBQUksRUFBRSxDQUFDO1FBRTFFLE9BQU8sWUFBWSxDQUFDLEdBQUcsQ0FBQyxDQUFDO1FBRXpCLElBQUksQ0FBQyxxQkFBcUIsQ0FBQyxLQUFLLENBQUMsWUFBWSxFQUFFLFFBQVEsQ0FBQyxDQUFDO0lBQzNELENBQUM7SUFFRCxLQUFLLENBQUMsUUFBZ0I7UUFDcEIsSUFBSSxDQUFDLHFCQUFxQixDQUFDLEtBQUssQ0FBQyxRQUFRLENBQUMsQ0FBQztJQUM3QyxDQUFDO0lBRUQsb0JBQW9CLENBQUMsUUFBZ0I7UUFDbkMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxlQUFlLEVBQUUsUUFBUSxDQUFDLENBQUM7UUFDdkMsSUFBSSxDQUFDLE1BQU0sQ0FBQywyQkFBMkIsRUFBRSxRQUFRLENBQUMsQ0FBQztRQUNuRCxJQUFJLENBQUMsTUFBTSxDQUFDLGNBQWMsRUFBRSxRQUFRLENBQUMsQ0FBQztRQUN0QyxJQUFJLENBQUMsTUFBTSxDQUFDLFVBQVUsRUFBRSxRQUFRLENBQUMsQ0FBQztRQUNsQyxJQUFJLENBQUMsTUFBTSxDQUFDLGdDQUFnQyxFQUFFLFFBQVEsQ0FBQyxDQUFDO1FBQ3hELElBQUksQ0FBQyxNQUFNLENBQUMseUJBQXlCLEVBQUUsUUFBUSxDQUFDLENBQUM7UUFDakQsSUFBSSxDQUFDLE1BQU0sQ0FBQyw0QkFBNEIsRUFBRSxRQUFRLENBQUMsQ0FBQztRQUNwRCxJQUFJLENBQUMsTUFBTSxDQUFDLCtCQUErQixFQUFFLFFBQVEsQ0FBQyxDQUFDO0lBQ3pELENBQUM7SUFFRCx1QkFBdUIsQ0FBQyxRQUFnQjtRQUN0QyxJQUFJLENBQUMsTUFBTSxDQUFDLFdBQVcsRUFBRSxRQUFRLENBQUMsQ0FBQztRQUNuQyxJQUFJLENBQUMsTUFBTSxDQUFDLGFBQWEsRUFBRSxRQUFRLENBQUMsQ0FBQztJQUN2QyxDQUFDO0lBRUQsY0FBYyxDQUFDLFFBQWdCO1FBQzdCLE9BQU8sSUFBSSxDQUFDLElBQUksQ0FBQyxXQUFXLEVBQUUsUUFBUSxDQUFDLENBQUM7SUFDMUMsQ0FBQztJQUVELFVBQVUsQ0FBQyxRQUFnQjs7UUFDekIsT0FBTyxNQUFBLElBQUksQ0FBQyxJQUFJLENBQUMsYUFBYSxFQUFFLFFBQVEsQ0FBQywwQ0FBRSxRQUFRLENBQUM7SUFDdEQsQ0FBQztJQUVELGVBQWUsQ0FBQyxRQUFnQjs7UUFDOUIsT0FBTyxNQUFBLElBQUksQ0FBQyxJQUFJLENBQUMsYUFBYSxFQUFFLFFBQVEsQ0FBQywwQ0FBRSxhQUFhLENBQUM7SUFDM0QsQ0FBQztJQUVELHVCQUF1QixDQUFDLFFBQWdCO1FBQ3RDLE9BQU8sSUFBSSxDQUFDLElBQUksQ0FBQyxhQUFhLEVBQUUsUUFBUSxDQUFDLENBQUM7SUFDNUMsQ0FBQzs7c0hBMURVLHlCQUF5QjswSEFBekIseUJBQXlCOzJGQUF6Qix5QkFBeUI7a0JBRHJDLFVBQVUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBCcm93c2VyU3RvcmFnZVNlcnZpY2UgfSBmcm9tICcuL2Jyb3dzZXItc3RvcmFnZS5zZXJ2aWNlJztcblxuZXhwb3J0IHR5cGUgU3RvcmFnZUtleXMgPVxuICB8ICdhdXRoblJlc3VsdCdcbiAgfCAnYXV0aHpEYXRhJ1xuICB8ICdhY2Nlc3NfdG9rZW5fZXhwaXJlc19hdCdcbiAgfCAnYXV0aFdlbGxLbm93bkVuZFBvaW50cydcbiAgfCAndXNlckRhdGEnXG4gIHwgJ2F1dGhOb25jZSdcbiAgfCAnY29kZVZlcmlmaWVyJ1xuICB8ICdhdXRoU3RhdGVDb250cm9sJ1xuICB8ICdzZXNzaW9uX3N0YXRlJ1xuICB8ICdzdG9yYWdlU2lsZW50UmVuZXdSdW5uaW5nJ1xuICB8ICdzdG9yYWdlQ3VzdG9tUGFyYW1zQXV0aFJlcXVlc3QnXG4gIHwgJ3N0b3JhZ2VDdXN0b21QYXJhbXNSZWZyZXNoJ1xuICB8ICdzdG9yYWdlQ3VzdG9tUGFyYW1zRW5kU2Vzc2lvbidcbiAgfCAncmVkaXJlY3QnXG4gIHwgJ2NvbmZpZ0lkcydcbiAgfCAnand0S2V5cyc7XG5cbkBJbmplY3RhYmxlKClcbmV4cG9ydCBjbGFzcyBTdG9yYWdlUGVyc2lzdGVuY2VTZXJ2aWNlIHtcbiAgY29uc3RydWN0b3IocHJpdmF0ZSByZWFkb25seSBicm93c2VyU3RvcmFnZVNlcnZpY2U6IEJyb3dzZXJTdG9yYWdlU2VydmljZSkge31cblxuICByZWFkKGtleTogU3RvcmFnZUtleXMsIGNvbmZpZ0lkOiBzdHJpbmcpOiBhbnkge1xuICAgIGNvbnN0IHN0b3JlZENvbmZpZyA9IHRoaXMuYnJvd3NlclN0b3JhZ2VTZXJ2aWNlLnJlYWQoa2V5LCBjb25maWdJZCkgfHwge307XG5cbiAgICByZXR1cm4gc3RvcmVkQ29uZmlnW2tleV07XG4gIH1cblxuICB3cml0ZShrZXk6IFN0b3JhZ2VLZXlzLCB2YWx1ZTogYW55LCBjb25maWdJZDogc3RyaW5nKTogdm9pZCB7XG4gICAgY29uc3Qgc3RvcmVkQ29uZmlnID0gdGhpcy5icm93c2VyU3RvcmFnZVNlcnZpY2UucmVhZChrZXksIGNvbmZpZ0lkKSB8fCB7fTtcblxuICAgIHN0b3JlZENvbmZpZ1trZXldID0gdmFsdWU7XG4gICAgdGhpcy5icm93c2VyU3RvcmFnZVNlcnZpY2Uud3JpdGUoc3RvcmVkQ29uZmlnLCBjb25maWdJZCk7XG4gIH1cblxuICByZW1vdmUoa2V5OiBTdG9yYWdlS2V5cywgY29uZmlnSWQ6IHN0cmluZyk6IHZvaWQge1xuICAgIGNvbnN0IHN0b3JlZENvbmZpZyA9IHRoaXMuYnJvd3NlclN0b3JhZ2VTZXJ2aWNlLnJlYWQoa2V5LCBjb25maWdJZCkgfHwge307XG5cbiAgICBkZWxldGUgc3RvcmVkQ29uZmlnW2tleV07XG5cbiAgICB0aGlzLmJyb3dzZXJTdG9yYWdlU2VydmljZS53cml0ZShzdG9yZWRDb25maWcsIGNvbmZpZ0lkKTtcbiAgfVxuXG4gIGNsZWFyKGNvbmZpZ0lkOiBzdHJpbmcpOiB2b2lkIHtcbiAgICB0aGlzLmJyb3dzZXJTdG9yYWdlU2VydmljZS5jbGVhcihjb25maWdJZCk7XG4gIH1cblxuICByZXNldFN0b3JhZ2VGbG93RGF0YShjb25maWdJZDogc3RyaW5nKTogdm9pZCB7XG4gICAgdGhpcy5yZW1vdmUoJ3Nlc3Npb25fc3RhdGUnLCBjb25maWdJZCk7XG4gICAgdGhpcy5yZW1vdmUoJ3N0b3JhZ2VTaWxlbnRSZW5ld1J1bm5pbmcnLCBjb25maWdJZCk7XG4gICAgdGhpcy5yZW1vdmUoJ2NvZGVWZXJpZmllcicsIGNvbmZpZ0lkKTtcbiAgICB0aGlzLnJlbW92ZSgndXNlckRhdGEnLCBjb25maWdJZCk7XG4gICAgdGhpcy5yZW1vdmUoJ3N0b3JhZ2VDdXN0b21QYXJhbXNBdXRoUmVxdWVzdCcsIGNvbmZpZ0lkKTtcbiAgICB0aGlzLnJlbW92ZSgnYWNjZXNzX3Rva2VuX2V4cGlyZXNfYXQnLCBjb25maWdJZCk7XG4gICAgdGhpcy5yZW1vdmUoJ3N0b3JhZ2VDdXN0b21QYXJhbXNSZWZyZXNoJywgY29uZmlnSWQpO1xuICAgIHRoaXMucmVtb3ZlKCdzdG9yYWdlQ3VzdG9tUGFyYW1zRW5kU2Vzc2lvbicsIGNvbmZpZ0lkKTtcbiAgfVxuXG4gIHJlc2V0QXV0aFN0YXRlSW5TdG9yYWdlKGNvbmZpZ0lkOiBzdHJpbmcpOiB2b2lkIHtcbiAgICB0aGlzLnJlbW92ZSgnYXV0aHpEYXRhJywgY29uZmlnSWQpO1xuICAgIHRoaXMucmVtb3ZlKCdhdXRoblJlc3VsdCcsIGNvbmZpZ0lkKTtcbiAgfVxuXG4gIGdldEFjY2Vzc1Rva2VuKGNvbmZpZ0lkOiBzdHJpbmcpOiBzdHJpbmcge1xuICAgIHJldHVybiB0aGlzLnJlYWQoJ2F1dGh6RGF0YScsIGNvbmZpZ0lkKTtcbiAgfVxuXG4gIGdldElkVG9rZW4oY29uZmlnSWQ6IHN0cmluZyk6IHN0cmluZyB7XG4gICAgcmV0dXJuIHRoaXMucmVhZCgnYXV0aG5SZXN1bHQnLCBjb25maWdJZCk/LmlkX3Rva2VuO1xuICB9XG5cbiAgZ2V0UmVmcmVzaFRva2VuKGNvbmZpZ0lkOiBzdHJpbmcpOiBzdHJpbmcge1xuICAgIHJldHVybiB0aGlzLnJlYWQoJ2F1dGhuUmVzdWx0JywgY29uZmlnSWQpPy5yZWZyZXNoX3Rva2VuO1xuICB9XG5cbiAgZ2V0QXV0aGVudGljYXRpb25SZXN1bHQoY29uZmlnSWQ6IHN0cmluZyk6IGFueSB7XG4gICAgcmV0dXJuIHRoaXMucmVhZCgnYXV0aG5SZXN1bHQnLCBjb25maWdJZCk7XG4gIH1cbn1cbiJdfQ==

@@ -57,3 +57,3 @@ import { Injectable } from '@angular/core';

if (!this.tokenValidationService.validateIdTokenNonce(toReturn.decodedIdToken, authNonce, ignoreNonceAfterRefresh, configId)) {
this.loggerService.logWarning(configId, 'authCallback incorrect nonce');
this.loggerService.logWarning(configId, 'authCallback incorrect nonce, did you call the checkAuth() method multiple times?');
toReturn.state = ValidationResult.IncorrectNonce;

@@ -225,2 +225,2 @@ this.handleUnsuccessfulValidation(configId);

}], ctorParameters: function () { return [{ type: i1.StoragePersistenceService }, { type: i2.TokenValidationService }, { type: i3.TokenHelperService }, { type: i4.LoggerService }, { type: i5.ConfigurationProvider }, { type: i6.EqualityService }, { type: i7.FlowHelper }]; } });
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3RhdGUtdmFsaWRhdGlvbi5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYW5ndWxhci1hdXRoLW9pZGMtY2xpZW50L3NyYy9saWIvdmFsaWRhdGlvbi9zdGF0ZS12YWxpZGF0aW9uLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQVEzQyxPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQztBQUVsRSxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQzs7Ozs7Ozs7O0FBR3ZELE1BQU0sT0FBTyxzQkFBc0I7SUFDakMsWUFDVSx5QkFBb0QsRUFDcEQsc0JBQThDLEVBQzlDLGtCQUFzQyxFQUN0QyxhQUE0QixFQUM1QixxQkFBNEMsRUFDNUMsZUFBZ0MsRUFDaEMsVUFBc0I7UUFOdEIsOEJBQXlCLEdBQXpCLHlCQUF5QixDQUEyQjtRQUNwRCwyQkFBc0IsR0FBdEIsc0JBQXNCLENBQXdCO1FBQzlDLHVCQUFrQixHQUFsQixrQkFBa0IsQ0FBb0I7UUFDdEMsa0JBQWEsR0FBYixhQUFhLENBQWU7UUFDNUIsMEJBQXFCLEdBQXJCLHFCQUFxQixDQUF1QjtRQUM1QyxvQkFBZSxHQUFmLGVBQWUsQ0FBaUI7UUFDaEMsZUFBVSxHQUFWLFVBQVUsQ0FBWTtJQUM3QixDQUFDO0lBRUosdUJBQXVCLENBQUMsZUFBZ0MsRUFBRSxRQUFnQjtRQUN4RSxJQUFJLENBQUMsZUFBZSxFQUFFO1lBQ3BCLE9BQU8sSUFBSSxxQkFBcUIsQ0FBQyxFQUFFLEVBQUUsRUFBRSxFQUFFLEtBQUssRUFBRSxFQUFFLENBQUMsQ0FBQztTQUNyRDtRQUVELElBQUksZUFBZSxDQUFDLFVBQVUsQ0FBQyxLQUFLLEVBQUU7WUFDcEMsT0FBTyxJQUFJLHFCQUFxQixDQUFDLEVBQUUsRUFBRSxFQUFFLEVBQUUs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QXFCLENBQUMsc0JBQXNCLENBQUMsUUFBUSxDQUFDLENBQUM7UUFDMUcsSUFBSSxDQUFDLHlCQUF5QixDQUFDLEtBQUssQ0FBQyxXQUFXLEVBQUUsSUFBSSxFQUFFLFFBQVEsQ0FBQyxDQUFDO1FBRWxFLElBQUksaUNBQWlDLEVBQUU7WUFDckMsSUFBSSxDQUFDLHlCQUF5QixDQUFDLEtBQUssQ0FBQyxrQkFBa0IsRUFBRSxFQUFFLEVBQUUsUUFBUSxDQUFDLENBQUM7U0FDeEU7UUFDRCxJQUFJLENBQUMsYUFBYSxDQUFDLFFBQVEsQ0FBQyxRQUFRLEVBQUUsMkNBQTJDLENBQUMsQ0FBQztJQUNyRixDQUFDO0lBRU8sNEJBQTRCLENBQUMsUUFBZ0I7UUFDbkQsTUFBTSxFQUFFLGlDQUFpQyxFQUFFLEdBQUcsSUFBSSxDQUFDLHFCQUFxQixDQUFDLHNCQUFzQixDQUFDLFFBQVEsQ0FBQyxDQUFDO1FBQzFHLElBQUksQ0FBQyx5QkFBeUIsQ0FBQyxLQUFLLENBQUMsV0FBVyxFQUFFLElBQUksRUFBRSxRQUFRLENBQUMsQ0FBQztRQUVsRSxJQUFJLGlDQUFpQyxFQUFFO1lBQ3JDLElBQUksQ0FBQyx5QkFBeUIsQ0FBQyxLQUFLLENBQUMsa0JBQWtCLEVBQUUsRUFBRSxFQUFFLFFBQVEsQ0FBQyxDQUFDO1NBQ3hFO1FBQ0QsSUFBSSxDQUFDLGFBQWEsQ0FBQyxRQUFRLENBQUMsUUFBUSxFQUFFLCtCQUErQixDQUFDLENBQUM7SUFDekUsQ0FBQzs7bUhBeFJVLHNCQUFzQjt1SEFBdEIsc0JBQXNCOzJGQUF0QixzQkFBc0I7a0JBRGxDLFVBQVUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBDb25maWd1cmF0aW9uUHJvdmlkZXIgfSBmcm9tICcuLi9jb25maWcvcHJvdmlkZXIvY29uZmlnLnByb3ZpZGVyJztcbmltcG9ydCB7IENhbGxiYWNrQ29udGV4dCB9IGZyb20gJy4uL2Zsb3dzL2NhbGxiYWNrLWNvbnRleHQnO1xuaW1wb3J0IHsgTG9nZ2VyU2VydmljZSB9IGZyb20gJy4uL2xvZ2dpbmcvbG9nZ2VyLnNlcnZpY2UnO1xuaW1wb3J0IHsgU3RvcmFnZVBlcnNpc3RlbmNlU2VydmljZSB9IGZyb20gJy4uL3N0b3JhZ2Uvc3RvcmFnZS1wZXJzaXN0ZW5jZS5zZXJ2aWNlJztcbmltcG9ydCB7IEVxdWFsaXR5U2VydmljZSB9IGZyb20gJy4uL3V0aWxzL2VxdWFsaXR5L2VxdWFsaXR5LnNlcnZpY2UnO1xuaW1wb3J0IHsgRmxvd0hlbHBlciB9IGZyb20gJy4uL3V0aWxzL2Zsb3dIZWxwZXIvZmxvdy1oZWxwZXIuc2VydmljZSc7XG5pbXBvcnQgeyBUb2tlbkhlbHBlclNlcnZpY2UgfSBmcm9tICcuLi91dGlscy90b2tlbkhlbHBlci90b2tlbi1oZWxwZXIuc2VydmljZSc7XG5pbXBvcnQgeyBTdGF0ZVZhbGlkYXRpb25SZXN1bHQgfSBmcm9tICcuL3N0YXRlLXZhbGlkYXRpb24tcmVzdWx0JztcbmltcG9ydCB7IFRva2VuVmFsaWRhdGlvblNlcnZpY2UgfSBmcm9tICcuL3Rva2VuLXZhbGlkYXRpb24uc2VydmljZSc7XG5pbXBvcnQgeyBWYWxpZGF0aW9uUmVzdWx0IH0gZnJvbSAnLi92YWxpZGF0aW9uLXJlc3VsdCc7XG5cbkBJbmplY3RhYmxlKClcbmV4cG9ydCBjbGFzcyBTdGF0ZVZhbGlkYXRpb25TZXJ2aWNlIHtcbiAgY29uc3RydWN0b3IoXG4gICAgcHJpdmF0ZSBzdG9yYWdlUGVyc2lzdGVuY2VTZXJ2aWNlOiBTdG9yYWdlUGVyc2lzdGVuY2VTZXJ2aWNlLFxuICAgIHByaXZhdGUgdG9rZW5WYWxpZGF0aW9uU2VydmljZTogVG9rZW5WYWxpZGF0aW9uU2VydmljZSxcbiAgICBwcml2YXRlIHRva2VuSGVscGVyU2VydmljZTogVG9rZW5IZWxwZXJTZXJ2aWNlLFxuICAgIHByaXZhdGUgbG9nZ2VyU2VydmljZTogTG9nZ2VyU2VydmljZSxcbiAgICBwcml2YXRlIGNvbmZpZ3VyYXRpb25Qcm92aWRlcjogQ29uZmlndXJhdGlvblByb3ZpZGVyLFxuICAgIHByaXZhdGUgZXF1YWxpdHlTZXJ2aWNlOiBFcXVhbGl0eVNlcnZpY2UsXG4gICAgcHJpdmF0ZSBmbG93SGVscGVyOiBGbG93SGVscGVyXG4gICkge31cblxuICBnZXRWYWxpZGF0ZWRTdGF0ZVJlc3VsdChjYWxsYmFja0NvbnRleHQ6IENhbGxiYWNrQ29udGV4dCwgY29uZmlnSWQ6IHN0cmluZyk6IFN0YXRlVmFsaWRhdGlvblJlc3VsdCB7XG4gICAgaWYgKCFjYWxsYmFja0NvbnRleHQpIHtcbiAgICAgIHJldHVybiBuZXcgU3RhdGVWYWxpZGF0aW9uUmVzdWx0KCcnLCAnJywgZmFsc2UsIHt9KTtcbiAgICB9XG5cbiAgICBpZiAoY2FsbGJhY2tDb250ZXh0LmF1dGhSZXN1bHQuZXJyb3IpIHtcbiAgICAgIHJldHVybiBuZXcgU3RhdGVWYWxpZGF0aW9uUmVzdWx0KCcnLCAnJywgZmFsc2UsIHt9KTtcbiAgICB9XG5cbiAgICByZXR1cm4gdGhpcy52YWxpZGF0ZVN0YXRlKGNhbGxiYWNrQ29udGV4dCwgY29uZmlnSWQpO1xuICB9XG5cbiAgdmFsaWRhdGVTdGF0ZShjYWxsYmFja0NvbnRleHQ6IGFueSwgY29uZmlnSWQ6IHN0cmluZyk6IFN0YXRlVmFsaWRhdGlvblJlc3VsdCB7XG4gICAgY29uc3QgdG9SZXR1cm4gPSBuZXcgU3RhdGVWYWxpZGF0aW9uUmVzdWx0KCk7XG4gICAgY29uc3QgYXV0aFN0YXRlQ29udHJvbCA9IHRoaXMuc3RvcmFnZVBlcnNpc3RlbmNlU2VydmljZS5yZWFkKCdhdXRoU3RhdGVDb250cm9sJywgY29uZmlnSWQpO1xuXG4gICAgaWYgKCF0aGlzLnRva2VuVmFsaWRhdGlvblNlcnZpY2UudmFsaWRhdGVTdGF0ZUZyb21IYXNoQ2FsbGJhY2soY2FsbGJhY2tDb250ZXh0LmF1dGhSZXN1bHQuc3RhdGUsIGF1dGhTdGF0ZUNvbnRyb2wsIGNvbmZpZ0lkKSkge1xuICAgICAgdGhpcy5sb2dnZXJTZXJ2aWNlLmxvZ1dhcm5pbmcoY29uZmlnSWQsICdhdXRoQ2FsbGJhY2sgaW5jb3JyZWN0IHN0YXRlJyk7XG4gICAgICB0b1JldHVybi5zdGF0ZSA9IFZhbGlkYXRpb25SZXN1bHQuU3RhdGVzRG9Ob3RNYXRjaDtcbiAgICAgIHRoaXMuaGFuZGxlVW5zdWNjZXNzZnVsVmFsaWRhdGlvbihjb25maWdJZCk7XG5cbiAgICAgIHJldHVybiB0b1JldHVybjtcbiAgICB9XG5cbiAgICBjb25zdCBpc0N1cnJlbnRGbG93SW1wbGljaXRGbG93V2l0aEFjY2Vzc1Rva2VuID0gdGhpcy5mbG93SGVscGVyLmlzQ3VycmVudEZsb3dJbXBsaWNpdEZsb3dXaXRoQWNjZXNzVG9rZW4oY29uZmlnSWQpO1xuICAgIGNvbnN0IGlzQ3VycmVudEZsb3dDb2RlRmxvdyA9IHRoaXMuZmxvd0hlbHBlci5pc0N1cnJlbnRGbG93Q29kZUZsb3coY29uZmlnSWQpO1xuXG4gICAgaWYgKGlzQ3VycmVudEZsb3dJbXBsaWNpdEZsb3dXaXRoQWNjZXNzVG9rZW4gfHwgaXNDdXJyZW50Rmxvd0NvZGVGbG93KSB7XG4gICAgICB0b1JldHVybi5hY2Nlc3NUb2tlbiA9IGNhbGxiYWNrQ29udGV4dC5hdXRoUmVzdWx0LmFjY2Vzc190b2tlbjtcbiAgICB9XG5cbiAgICBpZiAoY2FsbGJhY2tDb250ZXh0LmF1dGhSZXN1bHQuaWRfdG9rZW4pIHtcbiAgICAgIGNvbnN0IHsgY2xpZW50SWQsIGlzc1ZhbGlkYXRpb25PZmYsIG1heElkVG9rZW5JYXRPZmZzZXRBbGxvd2VkSW5TZWNvbmRzLCBkaXNhYmxlSWF0T2Zmc2V0VmFsaWRhdGlvbiwgaWdub3JlTm9uY2VBZnRlclJlZnJlc2ggfSA9XG4gICAgICAgIHRoaXMuY29uZmlndXJhdGlvblByb3ZpZGVyLmdldE9wZW5JRENvbmZpZ3VyYXRpb24oY29uZmlnSWQpO1xuXG4gICAgICB0b1JldHVybi5pZFRva2VuID0gY2FsbGJhY2tDb250ZXh0LmF1dGhSZXN1bHQuaWRfdG9rZW47XG5cbiAgICAgIHRvUmV0dXJuLmRlY29kZWRJZFRva2VuID0gdGhpcy50b2tlbkhlbHBlclNlcnZpY2UuZ2V0UGF5bG9hZEZyb21Ub2tlbih0b1JldHVybi5pZFRva2VuLCBmYWxzZSwgY29uZmlnSWQpO1xuXG4gICAgICBpZiAoIXRoaXMudG9rZW5WYWxpZGF0aW9uU2VydmljZS52YWxpZGF0ZVNpZ25hdHVyZUlkVG9rZW4odG9SZXR1cm4uaWRUb2tlbiwgY2FsbGJhY2tDb250ZXh0Lmp3dEtleXMsIGNvbmZpZ0lkKSkge1xuICAgICAgICB0aGlzLmxvZ2dlclNlcnZpY2UubG9nRGVidWcoY29uZmlnSWQsICdhdXRoQ2FsbGJhY2sgU2lnbmF0dXJlIHZhbGlkYXRpb24gZmFpbGVkIGlkX3Rva2VuJyk7XG4gICAgICAgIHRvUmV0dXJuLnN0YXRlID0gVmFsaWRhdGlvblJlc3VsdC5TaWduYXR1cmVGYWlsZWQ7XG4gICAgICAgIHRoaXMuaGFuZGxlVW5zdWNjZXNzZnVsVmFsaWRhdGlvbihjb25maWdJZCk7XG5cbiAgICAgICAgcmV0dXJuIHRvUmV0dXJuO1xuICAgICAgfVxuXG4gICAgICBjb25zdCBhdXRoTm9uY2UgPSB0aGlzLnN0b3JhZ2VQZXJzaXN0ZW5jZVNlcnZpY2UucmVhZCgnYXV0aE5vbmNlJywgY29uZmlnSWQpO1xuXG4gICAgICBpZiAoIXRoaXMudG9rZW5WYWxpZGF0aW9uU2VydmljZS52YWxpZGF0ZUlkVG9rZW5Ob25jZSh0b1JldHVybi5kZWNvZGVkSWRUb2tlbiwgYXV0aE5vbmNlLCBpZ25vcmVOb25jZUFmdGVyUmVmcmVzaCwgY29uZmlnSWQpKSB7XG4gICAgICAgIHRoaXMubG9nZ2VyU2VydmljZS5sb2dXYXJuaW5nKGNvbmZpZ0lkLCAnYXV0aENhbGxiYWNrIGluY29ycmVjdCBub25jZScpO1xuICAgICAgICB0b1JldHVybi5zdGF0ZSA9IFZhbGlkYXRpb25SZXN1bHQuSW5jb3JyZWN0Tm9uY2U7XG4gICAgICAgIHRoaXMuaGFuZGxlVW5zdWNjZXNzZnVsVmFsaWRhdGlvbihjb25maWdJZCk7XG5cbiAgICAgICAgcmV0dXJuIHRvUmV0dXJuO1xuICAgICAgfVxuXG4gICAgICBpZiAoIXRoaXMudG9rZW5WYWxpZGF0aW9uU2VydmljZS52YWxpZGF0ZVJlcXVpcmVkSWRUb2tlbih0b1JldHVybi5kZWNvZGVkSWRUb2tlbiwgY29uZmlnSWQpKSB7XG4gICAgICAgIHRoaXMubG9nZ2VyU2VydmljZS5sb2dEZWJ1Zyhjb25maWdJZCwgJ2F1dGhDYWxsYmFjayBWYWxpZGF0aW9uLCBvbmUgb2YgdGhlIFJFUVVJUkVEIHByb3BlcnRpZXMgbWlzc2luZyBmcm9tIGlkX3Rva2VuJyk7XG4gICAgICAgIHRvUmV0dXJuLnN0YXRlID0gVmFsaWRhdGlvblJlc3VsdC5SZXF1aXJlZFByb3BlcnR5TWlzc2luZztcbiAgICAgICAgdGhpcy5oYW5kbGVVbnN1Y2Nlc3NmdWxWYWxpZGF0aW9uKGNvbmZpZ0lkKTtcblxuICAgICAgICByZXR1cm4gdG9SZXR1cm47XG4gICAgICB9XG5cbiAgICAgIGlmIChcbiAgICAgICAgIXRoaXMudG9rZW5WYWxpZGF0aW9uU2VydmljZS52YWxpZGF0ZUlkVG9rZW5JYXRNYXhPZmZzZXQoXG4gICAgICAgICAgdG9SZXR1cm4uZGVjb2RlZElkVG9rZW4sXG4gICAgICAgICAgbWF4SWRUb2tlbklhdE9mZnNldEFsbG93ZWRJblNlY29uZHMsXG4gICAgICAgICAgZGlzYWJsZUlhdE9mZnNldFZhbGlkYXRpb24sXG4gICAgICAgICAgY29uZmlnSWRcbiAgICAgICAgKVxuICAgICAgKSB7XG4gICAgICAgIHRoaXMubG9nZ2VyU2VydmljZS5sb2dXYXJuaW5nKFxuICAgICAgICAgIGNvbmZpZ0lkLFxuICAgICAgICAgICdhdXRoQ2FsbGJhY2sgVmFsaWRhdGlvbiwgaWF0IHJlamVjdGVkIGlkX3Rva2VuIHdhcyBpc3N1ZWQgdG9vIGZhciBhd2F5IGZyb20gdGhlIGN1cnJlbnQgdGltZSdcbiAgICAgICAgKTtcbiAgICAgICAgdG9SZXR1cm4uc3RhdGUgPSBWYWxpZGF0aW9uUmVzdWx0Lk1heE9mZnNldEV4cGlyZWQ7XG4gICAgICAgIHRoaXMuaGFuZGxlVW5zdWNjZXNzZnVsVmFsaWRhdGlvbihjb25maWdJZCk7XG5cbiAgICAgICAgcmV0dXJuIHRvUmV0dXJuO1xuICAgICAgfVxuXG4gICAgICBjb25zdCBhdXRoV2VsbEtub3duRW5kUG9pbnRzID0gdGhpcy5zdG9yYWdlUGVyc2lzdGVuY2VTZXJ2aWNlLnJlYWQoJ2F1dGhXZWxsS25vd25FbmRQb2ludHMnLCBjb25maWdJZCk7XG5cbiAgICAgIGlmIChhdXRoV2VsbEtub3duRW5kUG9pbnRzKSB7XG4gICAgICAgIGlmIChpc3NWYWxpZGF0aW9uT2ZmKSB7XG4gICAgICAgICAgdGhpcy5sb2dnZXJTZXJ2aWNlLmxvZ0RlYnVnKGNvbmZpZ0lkLCAnaXNzIHZhbGlkYXRpb24gaXMgdHVybmVkIG9mZiwgdGhpcyBpcyBub3QgcmVjb21tZW5kZWQhJyk7XG4gICAgICAgIH0gZWxzZSBpZiAoXG4gICAgICAgICAgIWlzc1ZhbGlkYXRpb25PZmYgJiZcbiAgICAgICAgICAhdGhpcy50b2tlblZhbGlkYXRpb25TZXJ2aWNlLnZhbGlkYXRlSWRUb2tlbklzcyh0b1JldHVybi5kZWNvZGVkSWRUb2tlbiwgYXV0aFdlbGxLbm93bkVuZFBvaW50cy5pc3N1ZXIsIGNvbmZpZ0lkKVxuICAgICAgICApIHtcbiAgICAgICAgICB0aGlzLmxvZ2dlclNlcnZpY2UubG9nV2FybmluZyhjb25maWdJZCwgJ2F1dGhDYWxsYmFjayBpbmNvcnJlY3QgaXNzIGRvZXMgbm90IG1hdGNoIGF1dGhXZWxsS25vd25FbmRwb2ludHMgaXNzdWVyJyk7XG4gICAgICAgICAgdG9SZXR1cm4uc3RhdGUgPSBWYWxpZGF0aW9uUmVzdWx0Lklzc0RvZXNOb3RNYXRjaElzc3VlcjtcbiAgICAgICAgICB0aGlzLmhhbmRsZVVuc3VjY2Vzc2Z1bFZhbGlkYXRpb24oY29uZmlnSWQpO1xuXG4gICAgICAgICAgcmV0dXJuIHRvUmV0dXJuO1xuICAgICAgICB9XG4gICAgICB9IGVsc2Uge1xuICAgICAgICB0aGlzLmxvZ2dlclNlcnZpY2UubG9nV2FybmluZyhjb25maWdJZCwgJ2F1dGhXZWxsS25vd25FbmRwb2ludHMgaXMgdW5kZWZpbmVkJyk7XG4gICAgICAgIHRvUmV0dXJuLnN0YXRlID0gVmFsaWRhdGlvblJlc3VsdC5Ob0F1dGhXZWxsS25vd25FbmRQb2ludHM7XG4gICAgICAgIHRoaXMuaGFuZGxlVW5zdWNjZXNzZnVsVmFsaWRhdGlvbihjb25maWdJZCk7XG5cbiAgICAgICAgcmV0dXJuIHRvUmV0dXJuO1xuICAgICAgfVxuXG4gICAgICBpZiAoIXRoaXMudG9rZW5WYWxpZGF0aW9uU2VydmljZS52YWxpZGF0ZUlkVG9rZW5BdWQodG9SZXR1cm4uZGVjb2RlZElkVG9rZW4sIGNsaWVudElkLCBjb25maWdJZCkpIHtcbiAgICAgICAgdGhpcy5sb2dnZXJTZXJ2aWNlLmxvZ1dhcm5pbmcoY29uZmlnSWQsICdhdXRoQ2FsbGJhY2sgaW5jb3JyZWN0IGF1ZCcpO1xuICAgICAgICB0b1JldHVybi5zdGF0ZSA9IFZhbGlkYXRpb25SZXN1bHQuSW5jb3JyZWN0QXVkO1xuICAgICAgICB0aGlzLmhhbmRsZVVuc3VjY2Vzc2Z1bFZhbGlkYXRpb24oY29uZmlnSWQpO1xuXG4gICAgICAgIHJldHVybiB0b1JldHVybjtcbiAgICAgIH1cblxuICAgICAgaWYgKCF0aGlzLnRva2VuVmFsaWRhdGlvblNlcnZpY2UudmFsaWRhdGVJZFRva2VuQXpwRXhpc3RzSWZNb3JlVGhhbk9uZUF1ZCh0b1JldHVybi5kZWNvZGVkSWRUb2tlbikpIHtcbiAgICAgICAgdGhpcy5sb2dnZXJTZXJ2aWNlLmxvZ1dhcm5pbmcoY29uZmlnSWQsICdhdXRoQ2FsbGJhY2sgbWlzc2luZyBhenAnKTtcbiAgICAgICAgdG9SZXR1cm4uc3RhdGUgPSBWYWxpZGF0aW9uUmVzdWx0LkluY29ycmVjdEF6cDtcbiAgICAgICAgdGhpcy5oYW5kbGVVbnN1Y2Nlc3NmdWxWYWxpZGF0aW9uKGNvbmZpZ0lkKTtcblxuICAgICAgICByZXR1cm4gdG9SZXR1cm47XG4gICAgICB9XG5cbiAgICAgIGlmICghdGhpcy50b2tlblZhbGlkYXRpb25TZXJ2aWNlLnZhbGlkYXRlSWRUb2tlbkF6cFZhbGlkKHRvUmV0dXJuLmRlY29kZWRJZFRva2VuLCBjbGllbnRJZCkpIHtcbiAgICAgICAgdGhpcy5sb2dnZXJTZXJ2aWNlLmxvZ1dhcm5pbmcoY29uZmlnSWQsICdhdXRoQ2FsbGJhY2sgaW5jb3JyZWN0IGF6cCcpO1xuICAgICAgICB0b1JldHVybi5zdGF0ZSA9IFZhbGlkYXRpb25SZXN1bHQuSW5jb3JyZWN0QXpwO1xuICAgICAgICB0aGlzLmhhbmRsZVVuc3VjY2Vzc2Z1bFZhbGlkYXRpb24oY29uZmlnSWQpO1xuXG4gICAgICAgIHJldHVybiB0b1JldHVybjtcbiAgICAgIH1cblxuICAgICAgaWYgKCF0aGlzLmlzSWRUb2tlbkFmdGVyUmVmcmVzaFRva2VuUmVxdWVzdFZhbGlkKGNhbGxiYWNrQ29udGV4dCwgdG9SZXR1cm4uZGVjb2RlZElkVG9rZW4sIGNvbmZpZ0lkKSkge1xuICAgICAgICB0aGlzLmxvZ2dlclNlcnZpY2UubG9nV2FybmluZyhjb25maWdJZCwgJ2F1dGhDYWxsYmFjayBwcmUsIHBvc3QgaWRfdG9rZW4gY2xhaW1zIGRvIG5vdCBtYXRjaCBpbiByZWZyZXNoJyk7XG4gICAgICAgIHRvUmV0dXJuLnN0YXRlID0gVmFsaWRhdGlvblJlc3VsdC5JbmNvcnJlY3RJZFRva2VuQ2xhaW1zQWZ0ZXJSZWZyZXNoO1xuICAgICAgICB0aGlzLmhhbmRsZVVuc3VjY2Vzc2Z1bFZhbGlkYXRpb24oY29uZmlnSWQpO1xuXG4gICAgICAgIHJldHVybiB0b1JldHVybjtcbiAgICAgIH1cblxuICAgICAgaWYgKCF0aGlzLnRva2VuVmFsaWRhdGlvblNlcnZpY2UudmFsaWRhdGVJZFRva2VuRXhwTm90RXhwaXJlZCh0b1JldHVybi5kZWNvZGVkSWRUb2tlbiwgY29uZmlnSWQpKSB7XG4gICAgICAgIHRoaXMubG9nZ2VyU2VydmljZS5sb2dXYXJuaW5nKGNvbmZpZ0lkLCAnYXV0aENhbGxiYWNrIGlkIHRva2VuIGV4cGlyZWQnKTtcbiAgICAgICAgdG9SZXR1cm4uc3RhdGUgPSBWYWxpZGF0aW9uUmVzdWx0LlRva2VuRXhwaXJlZDtcbiAgICAgICAgdGhpcy5oYW5kbGVVbnN1Y2Nlc3NmdWxWYWxpZGF0aW9uKGNvbmZpZ0lkKTtcblxuICAgICAgICByZXR1cm4gdG9SZXR1cm47XG4gICAgICB9XG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMubG9nZ2VyU2VydmljZS5sb2dEZWJ1Zyhjb25maWdJZCwgJ05vIGlkX3Rva2VuIGZvdW5kLCBza2lwcGluZyBpZF90b2tlbiB2YWxpZGF0aW9uJyk7XG4gICAgfVxuXG4gICAgLy8gZmxvdyBpZF90b2tlblxuICAgIGlmICghaXNDdXJyZW50Rmxvd0ltcGxpY2l0Rmxvd1dpdGhBY2Nlc3NUb2tlbiAmJiAhaXNDdXJyZW50Rmxvd0NvZGVGbG93KSB7XG4gICAgICB0b1JldHVybi5hdXRoUmVzcG9uc2VJc1ZhbGlkID0gdHJ1ZTtcbiAgICAgIHRvUmV0dXJuLnN0YXRlID0gVmFsaWRhdGlvblJlc3VsdC5PaztcbiAgICAgIHRoaXMuaGFuZGxlU3VjY2Vzc2Z1bFZhbGlkYXRpb24oY29uZmlnSWQpO1xuICAgICAgdGhpcy5oYW5kbGVVbnN1Y2Nlc3NmdWxWYWxpZGF0aW9uKGNvbmZpZ0lkKTtcblxuICAgICAgcmV0dXJuIHRvUmV0dXJuO1xuICAgIH1cblxuICAgIC8vIG9ubHkgZG8gY2hlY2sgaWYgaWRfdG9rZW4gcmV0dXJuZWQsIG5vIGFsd2F5cyB0aGUgY2FzZSB3aGVuIHVzaW5nIHJlZnJlc2ggdG9rZW5zXG4gICAgaWYgKGNhbGxiYWNrQ29udGV4dC5hdXRoUmVzdWx0LmlkX3Rva2VuKSB7XG4gICAgICBjb25zdCBpZFRva2VuSGVhZGVyID0gdGhpcy50b2tlbkhlbHBlclNlcnZpY2UuZ2V0SGVhZGVyRnJvbVRva2VuKHRvUmV0dXJuLmlkVG9rZW4sIGZhbHNlLCBjb25maWdJZCk7XG5cbiAgICAgIC8vIFRoZSBhdF9oYXNoIGlzIG9wdGlvbmFsIGZvciB0aGUgY29kZSBmbG93XG4gICAgICBpZiAoaXNDdXJyZW50Rmxvd0NvZGVGbG93ICYmICEodG9SZXR1cm4uZGVjb2RlZElkVG9rZW4uYXRfaGFzaCBhcyBzdHJpbmcpKSB7XG4gICAgICAgIHRoaXMubG9nZ2VyU2VydmljZS5sb2dEZWJ1Zyhjb25maWdJZCwgJ0NvZGUgRmxvdyBhY3RpdmUsIGFuZCBubyBhdF9oYXNoIGluIHRoZSBpZF90b2tlbiwgc2tpcHBpbmcgY2hlY2shJyk7XG4gICAgICB9IGVsc2UgaWYgKFxuICAgICAgICAhdGhpcy50b2tlblZhbGlkYXRpb25TZXJ2aWNlLnZhbGlkYXRlSWRUb2tlbkF0SGFzaChcbiAgICAgICAgICB0b1JldHVybi5hY2Nlc3NUb2tlbixcbiAgICAgICAgICB0b1JldHVybi5kZWNvZGVkSWRUb2tlbi5hdF9oYXNoLFxuICAgICAgICAgIGlkVG9rZW5IZWFkZXIuYWxnLCAvLyAnUlNBMjU2J1xuICAgICAgICAgIGNvbmZpZ0lkXG4gICAgICAgICkgfHxcbiAgICAgICAgIXRvUmV0dXJuLmFjY2Vzc1Rva2VuXG4gICAgICApIHtcbiAgICAgICAgdGhpcy5sb2dnZXJTZXJ2aWNlLmxvZ1dhcm5pbmcoY29uZmlnSWQsICdhdXRoQ2FsbGJhY2sgaW5jb3JyZWN0IGF0X2hhc2gnKTtcbiAgICAgICAgdG9SZXR1cm4uc3RhdGUgPSBWYWxpZGF0aW9uUmVzdWx0LkluY29ycmVjdEF0SGFzaDtcbiAgICAgICAgdGhpcy5oYW5kbGVVbnN1Y2Nlc3NmdWxWYWxpZGF0aW9uKGNvbmZpZ0lkKTtcblxuICAgICAgICByZXR1cm4gdG9SZXR1cm47XG4gICAgICB9XG4gICAgfVxuXG4gICAgdG9SZXR1cm4uYXV0aFJlc3BvbnNlSXNWYWxpZCA9IHRydWU7XG4gICAgdG9SZXR1cm4uc3RhdGUgPSBWYWxpZGF0aW9uUmVzdWx0Lk9rO1xuICAgIHRoaXMuaGFuZGxlU3VjY2Vzc2Z1bFZhbGlkYXRpb24oY29uZmlnSWQpO1xuXG4gICAgcmV0dXJuIHRvUmV0dXJuO1xuICB9XG5cbiAgcHJpdmF0ZSBpc0lkVG9rZW5BZnRlclJlZnJlc2hUb2tlblJlcXVlc3RWYWxpZChjYWxsYmFja0NvbnRleHQ6IENhbGxiYWNrQ29udGV4dCwgbmV3SWRUb2tlbjogYW55LCBjb25maWdJZDogc3RyaW5nKTogYm9vbGVhbiB7XG4gICAgY29uc3QgeyB1c2VSZWZyZXNoVG9rZW4sIGRpc2FibGVSZWZyZXNoSWRUb2tlbkF1dGhUaW1lVmFsaWRhdGlvbiB9ID0gdGhpcy5jb25maWd1cmF0aW9uUHJvdmlkZXIuZ2V0T3BlbklEQ29uZmlndXJhdGlvbihjb25maWdJZCk7XG4gICAgaWYgKCF1c2VSZWZyZXNoVG9rZW4pIHtcbiAgICAgIHJldHVybiB0cnVlO1xuICAgIH1cblxuICAgIGlmICghY2FsbGJhY2tDb250ZXh0LmV4aXN0aW5nSWRUb2tlbikge1xuICAgICAgcmV0dXJuIHRydWU7XG4gICAgfVxuXG4gICAgY29uc3QgZGVjb2RlZElkVG9rZW4gPSB0aGlzLnRva2VuSGVscGVyU2VydmljZS5nZXRQYXlsb2FkRnJvbVRva2VuKGNhbGxiYWNrQ29udGV4dC5leGlzdGluZ0lkVG9rZW4sIGZhbHNlLCBjb25maWdJZCk7XG5cbiAgICAvLyBVcG9uIHN1Y2Nlc3NmdWwgdmFsaWRhdGlvbiBvZiB0aGUgUmVmcmVzaCBUb2tlbiwgdGhlIHJlc3BvbnNlIGJvZHkgaXMgdGhlIFRva2VuIFJlc3BvbnNlIG9mIFNlY3Rpb24gMy4xLjMuM1xuICAgIC8vIGV4Y2VwdCB0aGF0IGl0IG1pZ2h0IG5vdCBjb250YWluIGFuIGlkX3Rva2VuLlxuXG4gICAgLy8gSWYgYW4gSUQgVG9rZW4gaXMgcmV0dXJuZWQgYXMgYSByZXN1bHQgb2YgYSB0b2tlbiByZWZyZXNoIHJlcXVlc3QsIHRoZSBmb2xsb3dpbmcgcmVxdWlyZW1lbnRzIGFwcGx5OlxuXG4gICAgLy8gaXRzIGlzcyBDbGFpbSBWYWx1ZSBNVVNUIGJlIHRoZSBzYW1lIGFzIGluIHRoZSBJRCBUb2tlbiBpc3N1ZWQgd2hlbiB0aGUgb3JpZ2luYWwgYXV0aGVudGljYXRpb24gb2NjdXJyZWQsXG4gICAgaWYgKGRlY29kZWRJZFRva2VuLmlzcyAhPT0gbmV3SWRUb2tlbi5pc3MpIHtcbiAgICAgIHRoaXMubG9nZ2VyU2VydmljZS5sb2dEZWJ1Zyhjb25maWdJZCwgYGlzcyBkbyBub3QgbWF0Y2g6ICR7ZGVjb2RlZElkVG9rZW4uaXNzfSAke25ld0lkVG9rZW4uaXNzfWApO1xuXG4gICAgICByZXR1cm4gZmFsc2U7XG4gICAgfVxuICAgIC8vIGl0cyBhenAgQ2xhaW0gVmFsdWUgTVVTVCBiZSB0aGUgc2FtZSBhcyBpbiB0aGUgSUQgVG9rZW4gaXNzdWVkIHdoZW4gdGhlIG9yaWdpbmFsIGF1dGhlbnRpY2F0aW9uIG9jY3VycmVkO1xuICAgIC8vICAgaWYgbm8gYXpwIENsYWltIHdhcyBwcmVzZW50IGluIHRoZSBvcmlnaW5hbCBJRCBUb2tlbiwgb25lIE1VU1QgTk9UIGJlIHByZXNlbnQgaW4gdGhlIG5ldyBJRCBUb2tlbiwgYW5kXG4gICAgLy8gb3RoZXJ3aXNlLCB0aGUgc2FtZSBydWxlcyBhcHBseSBhcyBhcHBseSB3aGVuIGlzc3VpbmcgYW4gSUQgVG9rZW4gYXQgdGhlIHRpbWUgb2YgdGhlIG9yaWdpbmFsIGF1dGhlbnRpY2F0aW9uLlxuICAgIGlmIChkZWNvZGVkSWRUb2tlbi5henAgIT09IG5ld0lkVG9rZW4uYXpwKSB7XG4gICAgICB0aGlzLmxvZ2dlclNlcnZpY2UubG9nRGVidWcoY29uZmlnSWQsIGBhenAgZG8gbm90IG1hdGNoOiAke2RlY29kZWRJZFRva2VuLmF6cH0gJHtuZXdJZFRva2VuLmF6cH1gKTtcblxuICAgICAgcmV0dXJuIGZhbHNlO1xuICAgIH1cbiAgICAvLyBpdHMgc3ViIENsYWltIFZhbHVlIE1VU1QgYmUgdGhlIHNhbWUgYXMgaW4gdGhlIElEIFRva2VuIGlzc3VlZCB3aGVuIHRoZSBvcmlnaW5hbCBhdXRoZW50aWNhdGlvbiBvY2N1cnJlZCxcbiAgICBpZiAoZGVjb2RlZElkVG9rZW4uc3ViICE9PSBuZXdJZFRva2VuLnN1Yikge1xuICAgICAgdGhpcy5sb2dnZXJTZXJ2aWNlLmxvZ0RlYnVnKGNvbmZpZ0lkLCBgc3ViIGRvIG5vdCBtYXRjaDogJHtkZWNvZGVkSWRUb2tlbi5zdWJ9ICR7bmV3SWRUb2tlbi5zdWJ9YCk7XG5cbiAgICAgIHJldHVybiBmYWxzZTtcbiAgICB9XG5cbiAgICAvLyBpdHMgYXVkIENsYWltIFZhbHVlIE1VU1QgYmUgdGhlIHNhbWUgYXMgaW4gdGhlIElEIFRva2VuIGlzc3VlZCB3aGVuIHRoZSBvcmlnaW5hbCBhdXRoZW50aWNhdGlvbiBvY2N1cnJlZCxcbiAgICBpZiAoIXRoaXMuZXF1YWxpdHlTZXJ2aWNlLmlzU3RyaW5nRXF1YWxPck5vbk9yZGVyZWRBcnJheUVxdWFsKGRlY29kZWRJZFRva2VuPy5hdWQsIG5ld0lkVG9rZW4/LmF1ZCkpIHtcbiAgICAgIHRoaXMubG9nZ2VyU2VydmljZS5sb2dEZWJ1Zyhjb25maWdJZCwgYGF1ZCBpbiBuZXcgaWRfdG9rZW4gaXMgbm90IHZhbGlkOiAnJHtkZWNvZGVkSWRUb2tlbj8uYXVkfScgJyR7bmV3SWRUb2tlbi5hdWR9J2ApO1xuXG4gICAgICByZXR1cm4gZmFsc2U7XG4gICAgfVxuXG4gICAgaWYgKGRpc2FibGVSZWZyZXNoSWRUb2tlbkF1dGhUaW1lVmFsaWRhdGlvbikge1xuICAgICAgcmV0dXJuIHRydWU7XG4gICAgfVxuXG4gICAgLy8gaXRzIGlhdCBDbGFpbSBNVVNUIHJlcHJlc2VudCB0aGUgdGltZSB0aGF0IHRoZSBuZXcgSUQgVG9rZW4gaXMgaXNzdWVkLFxuICAgIC8vIGlmIHRoZSBJRCBUb2tlbiBjb250YWlucyBhbiBhdXRoX3RpbWUgQ2xhaW0sIGl0cyB2YWx1ZSBNVVNUIHJlcHJlc2VudCB0aGUgdGltZSBvZiB0aGUgb3JpZ2luYWwgYXV0aGVudGljYXRpb25cbiAgICAvLyAtIG5vdCB0aGUgdGltZSB0aGF0IHRoZSBuZXcgSUQgdG9rZW4gaXMgaXNzdWVkLFxuICAgIGlmIChkZWNvZGVkSWRUb2tlbi5hdXRoX3RpbWUgIT09IG5ld0lkVG9rZW4uYXV0aF90aW1lKSB7XG4gICAgICB0aGlzLmxvZ2dlclNlcnZpY2UubG9nRGVidWcoY29uZmlnSWQsIGBhdXRoX3RpbWUgZG8gbm90IG1hdGNoOiAke2RlY29kZWRJZFRva2VuLmF1dGhfdGltZX0gJHtuZXdJZFRva2VuLmF1dGhfdGltZX1gKTtcblxuICAgICAgcmV0dXJuIGZhbHNlO1xuICAgIH1cblxuICAgIHJldHVybiB0cnVlO1xuICB9XG5cbiAgcHJpdmF0ZSBoYW5kbGVTdWNjZXNzZnVsVmFsaWRhdGlvbihjb25maWdJZDogc3RyaW5nKTogdm9pZCB7XG4gICAgY29uc3QgeyBhdXRvQ2xlYW5TdGF0ZUFmdGVyQXV0aGVudGljYXRpb24gfSA9IHRoaXMuY29uZmlndXJhdGlvblByb3ZpZGVyLmdldE9wZW5JRENvbmZpZ3VyYXRpb24oY29uZmlnSWQpO1xuICAgIHRoaXMuc3RvcmFnZVBlcnNpc3RlbmNlU2VydmljZS53cml0ZSgnYXV0aE5vbmNlJywgbnVsbCwgY29uZmlnSWQpO1xuXG4gICAgaWYgKGF1dG9DbGVhblN0YXRlQWZ0ZXJBdXRoZW50aWNhdGlvbikge1xuICAgICAgdGhpcy5zdG9yYWdlUGVyc2lzdGVuY2VTZXJ2aWNlLndyaXRlKCdhdXRoU3RhdGVDb250cm9sJywgJycsIGNvbmZpZ0lkKTtcbiAgICB9XG4gICAgdGhpcy5sb2dnZXJTZXJ2aWNlLmxvZ0RlYnVnKGNvbmZpZ0lkLCAnYXV0aENhbGxiYWNrIHRva2VuKHMpIHZhbGlkYXRlZCwgY29udGludWUnKTtcbiAgfVxuXG4gIHByaXZhdGUgaGFuZGxlVW5zdWNjZXNzZnVsVmFsaWRhdGlvbihjb25maWdJZDogc3RyaW5nKTogdm9pZCB7XG4gICAgY29uc3QgeyBhdXRvQ2xlYW5TdGF0ZUFmdGVyQXV0aGVudGljYXRpb24gfSA9IHRoaXMuY29uZmlndXJhdGlvblByb3ZpZGVyLmdldE9wZW5JRENvbmZpZ3VyYXRpb24oY29uZmlnSWQpO1xuICAgIHRoaXMuc3RvcmFnZVBlcnNpc3RlbmNlU2VydmljZS53cml0ZSgnYXV0aE5vbmNlJywgbnVsbCwgY29uZmlnSWQpO1xuXG4gICAgaWYgKGF1dG9DbGVhblN0YXRlQWZ0ZXJBdXRoZW50aWNhdGlvbikge1xuICAgICAgdGhpcy5zdG9yYWdlUGVyc2lzdGVuY2VTZXJ2aWNlLndyaXRlKCdhdXRoU3RhdGVDb250cm9sJywgJycsIGNvbmZpZ0lkKTtcbiAgICB9XG4gICAgdGhpcy5sb2dnZXJTZXJ2aWNlLmxvZ0RlYnVnKGNvbmZpZ0lkLCAnYXV0aENhbGxiYWNrIHRva2VuKHMpIGludmFsaWQnKTtcbiAgfVxufVxuIl19
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3RhdGUtdmFsaWRhdGlvbi5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYW5ndWxhci1hdXRoLW9pZGMtY2xpZW50L3NyYy9saWIvdmFsaWRhdGlvbi9zdGF0ZS12YWxpZGF0aW9uLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQVEzQyxPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQztBQUVsRSxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQzs7Ozs7Ozs7O0FBR3ZELE1BQU0sT0FBTyxzQkFBc0I7SUFDakMsWUFDVSx5QkFBb0QsRUFDcEQsc0JBQThDLEVBQzlDLGtCQUFzQyxFQUN0QyxhQUE0QixFQUM1QixxQkFBNEMsRUFDNUMsZUFBZ0MsRUFDaEMsVUFBc0I7UUFOdEIsOEJBQXlCLEdBQXpCLHlCQUF5QixDQUEyQjtRQUNwRCwyQkFBc0IsR0FBdEIsc0JBQXNCLENBQXdCO1FBQzlDLHVCQUFrQixHQUFsQixrQkFBa0IsQ0FBb0I7UUFDdEMsa0JBQWEsR0FBYixhQUFhLENBQWU7UUFDNUIsMEJBQXFCLEdBQXJCLHFCQUFxQixDQUF1QjtRQUM1QyxvQkFBZSxHQUFmLGVBQWUsQ0FBaUI7UUFDaEMsZUFBVSxHQUFWLFVBQVUsQ0FBWTtJQUM3QixDQUFDO0lBRUosdUJBQXVCLENBQUMsZUFBZ0MsRUFBRSxRQUFnQjtRQUN4RSxJQUFJLENBQUMsZUFBZSxFQUFFO1lBQ3BCLE9BQU8sSUFBSSxxQkFBcUIsQ0FBQyxFQUFFLEVBQUUsRUFBRSxFQUFFLEtBQUssRUFBRSxFQUFFLENBQUMsQ0FBQztTQUNyRDtRQUVELElBQUksZUFBZSxDQUFDLFVBQVUsQ0FBQyxLQUFLLEVBQUU7WUFDcEMsT0FBTyxJQUFJLHFCQUFxQixDQUFDLEVBQUUsRUFBRSxFQUFFLEVBQUUs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QXFCLENBQUMsc0JBQXNCLENBQUMsUUFBUSxDQUFDLENBQUM7UUFDMUcsSUFBSSxDQUFDLHlCQUF5QixDQUFDLEtBQUssQ0FBQyxXQUFXLEVBQUUsSUFBSSxFQUFFLFFBQVEsQ0FBQyxDQUFDO1FBRWxFLElBQUksaUNBQWlDLEVBQUU7WUFDckMsSUFBSSxDQUFDLHlCQUF5QixDQUFDLEtBQUssQ0FBQyxrQkFBa0IsRUFBRSxFQUFFLEVBQUUsUUFBUSxDQUFDLENBQUM7U0FDeEU7UUFDRCxJQUFJLENBQUMsYUFBYSxDQUFDLFFBQVEsQ0FBQyxRQUFRLEVBQUUsMkNBQTJDLENBQUMsQ0FBQztJQUNyRixDQUFDO0lBRU8sNEJBQTRCLENBQUMsUUFBZ0I7UUFDbkQsTUFBTSxFQUFFLGlDQUFpQyxFQUFFLEdBQUcsSUFBSSxDQUFDLHFCQUFxQixDQUFDLHNCQUFzQixDQUFDLFFBQVEsQ0FBQyxDQUFDO1FBQzFHLElBQUksQ0FBQyx5QkFBeUIsQ0FBQyxLQUFLLENBQUMsV0FBVyxFQUFFLElBQUksRUFBRSxRQUFRLENBQUMsQ0FBQztRQUVsRSxJQUFJLGlDQUFpQyxFQUFFO1lBQ3JDLElBQUksQ0FBQyx5QkFBeUIsQ0FBQyxLQUFLLENBQUMsa0JBQWtCLEVBQUUsRUFBRSxFQUFFLFFBQVEsQ0FBQyxDQUFDO1NBQ3hFO1FBQ0QsSUFBSSxDQUFDLGFBQWEsQ0FBQyxRQUFRLENBQUMsUUFBUSxFQUFFLCtCQUErQixDQUFDLENBQUM7SUFDekUsQ0FBQzs7bUhBeFJVLHNCQUFzQjt1SEFBdEIsc0JBQXNCOzJGQUF0QixzQkFBc0I7a0JBRGxDLFVBQVUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBDb25maWd1cmF0aW9uUHJvdmlkZXIgfSBmcm9tICcuLi9jb25maWcvcHJvdmlkZXIvY29uZmlnLnByb3ZpZGVyJztcbmltcG9ydCB7IENhbGxiYWNrQ29udGV4dCB9IGZyb20gJy4uL2Zsb3dzL2NhbGxiYWNrLWNvbnRleHQnO1xuaW1wb3J0IHsgTG9nZ2VyU2VydmljZSB9IGZyb20gJy4uL2xvZ2dpbmcvbG9nZ2VyLnNlcnZpY2UnO1xuaW1wb3J0IHsgU3RvcmFnZVBlcnNpc3RlbmNlU2VydmljZSB9IGZyb20gJy4uL3N0b3JhZ2Uvc3RvcmFnZS1wZXJzaXN0ZW5jZS5zZXJ2aWNlJztcbmltcG9ydCB7IEVxdWFsaXR5U2VydmljZSB9IGZyb20gJy4uL3V0aWxzL2VxdWFsaXR5L2VxdWFsaXR5LnNlcnZpY2UnO1xuaW1wb3J0IHsgRmxvd0hlbHBlciB9IGZyb20gJy4uL3V0aWxzL2Zsb3dIZWxwZXIvZmxvdy1oZWxwZXIuc2VydmljZSc7XG5pbXBvcnQgeyBUb2tlbkhlbHBlclNlcnZpY2UgfSBmcm9tICcuLi91dGlscy90b2tlbkhlbHBlci90b2tlbi1oZWxwZXIuc2VydmljZSc7XG5pbXBvcnQgeyBTdGF0ZVZhbGlkYXRpb25SZXN1bHQgfSBmcm9tICcuL3N0YXRlLXZhbGlkYXRpb24tcmVzdWx0JztcbmltcG9ydCB7IFRva2VuVmFsaWRhdGlvblNlcnZpY2UgfSBmcm9tICcuL3Rva2VuLXZhbGlkYXRpb24uc2VydmljZSc7XG5pbXBvcnQgeyBWYWxpZGF0aW9uUmVzdWx0IH0gZnJvbSAnLi92YWxpZGF0aW9uLXJlc3VsdCc7XG5cbkBJbmplY3RhYmxlKClcbmV4cG9ydCBjbGFzcyBTdGF0ZVZhbGlkYXRpb25TZXJ2aWNlIHtcbiAgY29uc3RydWN0b3IoXG4gICAgcHJpdmF0ZSBzdG9yYWdlUGVyc2lzdGVuY2VTZXJ2aWNlOiBTdG9yYWdlUGVyc2lzdGVuY2VTZXJ2aWNlLFxuICAgIHByaXZhdGUgdG9rZW5WYWxpZGF0aW9uU2VydmljZTogVG9rZW5WYWxpZGF0aW9uU2VydmljZSxcbiAgICBwcml2YXRlIHRva2VuSGVscGVyU2VydmljZTogVG9rZW5IZWxwZXJTZXJ2aWNlLFxuICAgIHByaXZhdGUgbG9nZ2VyU2VydmljZTogTG9nZ2VyU2VydmljZSxcbiAgICBwcml2YXRlIGNvbmZpZ3VyYXRpb25Qcm92aWRlcjogQ29uZmlndXJhdGlvblByb3ZpZGVyLFxuICAgIHByaXZhdGUgZXF1YWxpdHlTZXJ2aWNlOiBFcXVhbGl0eVNlcnZpY2UsXG4gICAgcHJpdmF0ZSBmbG93SGVscGVyOiBGbG93SGVscGVyXG4gICkge31cblxuICBnZXRWYWxpZGF0ZWRTdGF0ZVJlc3VsdChjYWxsYmFja0NvbnRleHQ6IENhbGxiYWNrQ29udGV4dCwgY29uZmlnSWQ6IHN0cmluZyk6IFN0YXRlVmFsaWRhdGlvblJlc3VsdCB7XG4gICAgaWYgKCFjYWxsYmFja0NvbnRleHQpIHtcbiAgICAgIHJldHVybiBuZXcgU3RhdGVWYWxpZGF0aW9uUmVzdWx0KCcnLCAnJywgZmFsc2UsIHt9KTtcbiAgICB9XG5cbiAgICBpZiAoY2FsbGJhY2tDb250ZXh0LmF1dGhSZXN1bHQuZXJyb3IpIHtcbiAgICAgIHJldHVybiBuZXcgU3RhdGVWYWxpZGF0aW9uUmVzdWx0KCcnLCAnJywgZmFsc2UsIHt9KTtcbiAgICB9XG5cbiAgICByZXR1cm4gdGhpcy52YWxpZGF0ZVN0YXRlKGNhbGxiYWNrQ29udGV4dCwgY29uZmlnSWQpO1xuICB9XG5cbiAgdmFsaWRhdGVTdGF0ZShjYWxsYmFja0NvbnRleHQ6IGFueSwgY29uZmlnSWQ6IHN0cmluZyk6IFN0YXRlVmFsaWRhdGlvblJlc3VsdCB7XG4gICAgY29uc3QgdG9SZXR1cm4gPSBuZXcgU3RhdGVWYWxpZGF0aW9uUmVzdWx0KCk7XG4gICAgY29uc3QgYXV0aFN0YXRlQ29udHJvbCA9IHRoaXMuc3RvcmFnZVBlcnNpc3RlbmNlU2VydmljZS5yZWFkKCdhdXRoU3RhdGVDb250cm9sJywgY29uZmlnSWQpO1xuXG4gICAgaWYgKCF0aGlzLnRva2VuVmFsaWRhdGlvblNlcnZpY2UudmFsaWRhdGVTdGF0ZUZyb21IYXNoQ2FsbGJhY2soY2FsbGJhY2tDb250ZXh0LmF1dGhSZXN1bHQuc3RhdGUsIGF1dGhTdGF0ZUNvbnRyb2wsIGNvbmZpZ0lkKSkge1xuICAgICAgdGhpcy5sb2dnZXJTZXJ2aWNlLmxvZ1dhcm5pbmcoY29uZmlnSWQsICdhdXRoQ2FsbGJhY2sgaW5jb3JyZWN0IHN0YXRlJyk7XG4gICAgICB0b1JldHVybi5zdGF0ZSA9IFZhbGlkYXRpb25SZXN1bHQuU3RhdGVzRG9Ob3RNYXRjaDtcbiAgICAgIHRoaXMuaGFuZGxlVW5zdWNjZXNzZnVsVmFsaWRhdGlvbihjb25maWdJZCk7XG5cbiAgICAgIHJldHVybiB0b1JldHVybjtcbiAgICB9XG5cbiAgICBjb25zdCBpc0N1cnJlbnRGbG93SW1wbGljaXRGbG93V2l0aEFjY2Vzc1Rva2VuID0gdGhpcy5mbG93SGVscGVyLmlzQ3VycmVudEZsb3dJbXBsaWNpdEZsb3dXaXRoQWNjZXNzVG9rZW4oY29uZmlnSWQpO1xuICAgIGNvbnN0IGlzQ3VycmVudEZsb3dDb2RlRmxvdyA9IHRoaXMuZmxvd0hlbHBlci5pc0N1cnJlbnRGbG93Q29kZUZsb3coY29uZmlnSWQpO1xuXG4gICAgaWYgKGlzQ3VycmVudEZsb3dJbXBsaWNpdEZsb3dXaXRoQWNjZXNzVG9rZW4gfHwgaXNDdXJyZW50Rmxvd0NvZGVGbG93KSB7XG4gICAgICB0b1JldHVybi5hY2Nlc3NUb2tlbiA9IGNhbGxiYWNrQ29udGV4dC5hdXRoUmVzdWx0LmFjY2Vzc190b2tlbjtcbiAgICB9XG5cbiAgICBpZiAoY2FsbGJhY2tDb250ZXh0LmF1dGhSZXN1bHQuaWRfdG9rZW4pIHtcbiAgICAgIGNvbnN0IHsgY2xpZW50SWQsIGlzc1ZhbGlkYXRpb25PZmYsIG1heElkVG9rZW5JYXRPZmZzZXRBbGxvd2VkSW5TZWNvbmRzLCBkaXNhYmxlSWF0T2Zmc2V0VmFsaWRhdGlvbiwgaWdub3JlTm9uY2VBZnRlclJlZnJlc2ggfSA9XG4gICAgICAgIHRoaXMuY29uZmlndXJhdGlvblByb3ZpZGVyLmdldE9wZW5JRENvbmZpZ3VyYXRpb24oY29uZmlnSWQpO1xuXG4gICAgICB0b1JldHVybi5pZFRva2VuID0gY2FsbGJhY2tDb250ZXh0LmF1dGhSZXN1bHQuaWRfdG9rZW47XG5cbiAgICAgIHRvUmV0dXJuLmRlY29kZWRJZFRva2VuID0gdGhpcy50b2tlbkhlbHBlclNlcnZpY2UuZ2V0UGF5bG9hZEZyb21Ub2tlbih0b1JldHVybi5pZFRva2VuLCBmYWxzZSwgY29uZmlnSWQpO1xuXG4gICAgICBpZiAoIXRoaXMudG9rZW5WYWxpZGF0aW9uU2VydmljZS52YWxpZGF0ZVNpZ25hdHVyZUlkVG9rZW4odG9SZXR1cm4uaWRUb2tlbiwgY2FsbGJhY2tDb250ZXh0Lmp3dEtleXMsIGNvbmZpZ0lkKSkge1xuICAgICAgICB0aGlzLmxvZ2dlclNlcnZpY2UubG9nRGVidWcoY29uZmlnSWQsICdhdXRoQ2FsbGJhY2sgU2lnbmF0dXJlIHZhbGlkYXRpb24gZmFpbGVkIGlkX3Rva2VuJyk7XG4gICAgICAgIHRvUmV0dXJuLnN0YXRlID0gVmFsaWRhdGlvblJlc3VsdC5TaWduYXR1cmVGYWlsZWQ7XG4gICAgICAgIHRoaXMuaGFuZGxlVW5zdWNjZXNzZnVsVmFsaWRhdGlvbihjb25maWdJZCk7XG5cbiAgICAgICAgcmV0dXJuIHRvUmV0dXJuO1xuICAgICAgfVxuXG4gICAgICBjb25zdCBhdXRoTm9uY2UgPSB0aGlzLnN0b3JhZ2VQZXJzaXN0ZW5jZVNlcnZpY2UucmVhZCgnYXV0aE5vbmNlJywgY29uZmlnSWQpO1xuXG4gICAgICBpZiAoIXRoaXMudG9rZW5WYWxpZGF0aW9uU2VydmljZS52YWxpZGF0ZUlkVG9rZW5Ob25jZSh0b1JldHVybi5kZWNvZGVkSWRUb2tlbiwgYXV0aE5vbmNlLCBpZ25vcmVOb25jZUFmdGVyUmVmcmVzaCwgY29uZmlnSWQpKSB7XG4gICAgICAgIHRoaXMubG9nZ2VyU2VydmljZS5sb2dXYXJuaW5nKGNvbmZpZ0lkLCAnYXV0aENhbGxiYWNrIGluY29ycmVjdCBub25jZSwgZGlkIHlvdSBjYWxsIHRoZSBjaGVja0F1dGgoKSBtZXRob2QgbXVsdGlwbGUgdGltZXM/Jyk7XG4gICAgICAgIHRvUmV0dXJuLnN0YXRlID0gVmFsaWRhdGlvblJlc3VsdC5JbmNvcnJlY3ROb25jZTtcbiAgICAgICAgdGhpcy5oYW5kbGVVbnN1Y2Nlc3NmdWxWYWxpZGF0aW9uKGNvbmZpZ0lkKTtcblxuICAgICAgICByZXR1cm4gdG9SZXR1cm47XG4gICAgICB9XG5cbiAgICAgIGlmICghdGhpcy50b2tlblZhbGlkYXRpb25TZXJ2aWNlLnZhbGlkYXRlUmVxdWlyZWRJZFRva2VuKHRvUmV0dXJuLmRlY29kZWRJZFRva2VuLCBjb25maWdJZCkpIHtcbiAgICAgICAgdGhpcy5sb2dnZXJTZXJ2aWNlLmxvZ0RlYnVnKGNvbmZpZ0lkLCAnYXV0aENhbGxiYWNrIFZhbGlkYXRpb24sIG9uZSBvZiB0aGUgUkVRVUlSRUQgcHJvcGVydGllcyBtaXNzaW5nIGZyb20gaWRfdG9rZW4nKTtcbiAgICAgICAgdG9SZXR1cm4uc3RhdGUgPSBWYWxpZGF0aW9uUmVzdWx0LlJlcXVpcmVkUHJvcGVydHlNaXNzaW5nO1xuICAgICAgICB0aGlzLmhhbmRsZVVuc3VjY2Vzc2Z1bFZhbGlkYXRpb24oY29uZmlnSWQpO1xuXG4gICAgICAgIHJldHVybiB0b1JldHVybjtcbiAgICAgIH1cblxuICAgICAgaWYgKFxuICAgICAgICAhdGhpcy50b2tlblZhbGlkYXRpb25TZXJ2aWNlLnZhbGlkYXRlSWRUb2tlbklhdE1heE9mZnNldChcbiAgICAgICAgICB0b1JldHVybi5kZWNvZGVkSWRUb2tlbixcbiAgICAgICAgICBtYXhJZFRva2VuSWF0T2Zmc2V0QWxsb3dlZEluU2Vjb25kcyxcbiAgICAgICAgICBkaXNhYmxlSWF0T2Zmc2V0VmFsaWRhdGlvbixcbiAgICAgICAgICBjb25maWdJZFxuICAgICAgICApXG4gICAgICApIHtcbiAgICAgICAgdGhpcy5sb2dnZXJTZXJ2aWNlLmxvZ1dhcm5pbmcoXG4gICAgICAgICAgY29uZmlnSWQsXG4gICAgICAgICAgJ2F1dGhDYWxsYmFjayBWYWxpZGF0aW9uLCBpYXQgcmVqZWN0ZWQgaWRfdG9rZW4gd2FzIGlzc3VlZCB0b28gZmFyIGF3YXkgZnJvbSB0aGUgY3VycmVudCB0aW1lJ1xuICAgICAgICApO1xuICAgICAgICB0b1JldHVybi5zdGF0ZSA9IFZhbGlkYXRpb25SZXN1bHQuTWF4T2Zmc2V0RXhwaXJlZDtcbiAgICAgICAgdGhpcy5oYW5kbGVVbnN1Y2Nlc3NmdWxWYWxpZGF0aW9uKGNvbmZpZ0lkKTtcblxuICAgICAgICByZXR1cm4gdG9SZXR1cm47XG4gICAgICB9XG5cbiAgICAgIGNvbnN0IGF1dGhXZWxsS25vd25FbmRQb2ludHMgPSB0aGlzLnN0b3JhZ2VQZXJzaXN0ZW5jZVNlcnZpY2UucmVhZCgnYXV0aFdlbGxLbm93bkVuZFBvaW50cycsIGNvbmZpZ0lkKTtcblxuICAgICAgaWYgKGF1dGhXZWxsS25vd25FbmRQb2ludHMpIHtcbiAgICAgICAgaWYgKGlzc1ZhbGlkYXRpb25PZmYpIHtcbiAgICAgICAgICB0aGlzLmxvZ2dlclNlcnZpY2UubG9nRGVidWcoY29uZmlnSWQsICdpc3MgdmFsaWRhdGlvbiBpcyB0dXJuZWQgb2ZmLCB0aGlzIGlzIG5vdCByZWNvbW1lbmRlZCEnKTtcbiAgICAgICAgfSBlbHNlIGlmIChcbiAgICAgICAgICAhaXNzVmFsaWRhdGlvbk9mZiAmJlxuICAgICAgICAgICF0aGlzLnRva2VuVmFsaWRhdGlvblNlcnZpY2UudmFsaWRhdGVJZFRva2VuSXNzKHRvUmV0dXJuLmRlY29kZWRJZFRva2VuLCBhdXRoV2VsbEtub3duRW5kUG9pbnRzLmlzc3VlciwgY29uZmlnSWQpXG4gICAgICAgICkge1xuICAgICAgICAgIHRoaXMubG9nZ2VyU2VydmljZS5sb2dXYXJuaW5nKGNvbmZpZ0lkLCAnYXV0aENhbGxiYWNrIGluY29ycmVjdCBpc3MgZG9lcyBub3QgbWF0Y2ggYXV0aFdlbGxLbm93bkVuZHBvaW50cyBpc3N1ZXInKTtcbiAgICAgICAgICB0b1JldHVybi5zdGF0ZSA9IFZhbGlkYXRpb25SZXN1bHQuSXNzRG9lc05vdE1hdGNoSXNzdWVyO1xuICAgICAgICAgIHRoaXMuaGFuZGxlVW5zdWNjZXNzZnVsVmFsaWRhdGlvbihjb25maWdJZCk7XG5cbiAgICAgICAgICByZXR1cm4gdG9SZXR1cm47XG4gICAgICAgIH1cbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIHRoaXMubG9nZ2VyU2VydmljZS5sb2dXYXJuaW5nKGNvbmZpZ0lkLCAnYXV0aFdlbGxLbm93bkVuZHBvaW50cyBpcyB1bmRlZmluZWQnKTtcbiAgICAgICAgdG9SZXR1cm4uc3RhdGUgPSBWYWxpZGF0aW9uUmVzdWx0Lk5vQXV0aFdlbGxLbm93bkVuZFBvaW50cztcbiAgICAgICAgdGhpcy5oYW5kbGVVbnN1Y2Nlc3NmdWxWYWxpZGF0aW9uKGNvbmZpZ0lkKTtcblxuICAgICAgICByZXR1cm4gdG9SZXR1cm47XG4gICAgICB9XG5cbiAgICAgIGlmICghdGhpcy50b2tlblZhbGlkYXRpb25TZXJ2aWNlLnZhbGlkYXRlSWRUb2tlbkF1ZCh0b1JldHVybi5kZWNvZGVkSWRUb2tlbiwgY2xpZW50SWQsIGNvbmZpZ0lkKSkge1xuICAgICAgICB0aGlzLmxvZ2dlclNlcnZpY2UubG9nV2FybmluZyhjb25maWdJZCwgJ2F1dGhDYWxsYmFjayBpbmNvcnJlY3QgYXVkJyk7XG4gICAgICAgIHRvUmV0dXJuLnN0YXRlID0gVmFsaWRhdGlvblJlc3VsdC5JbmNvcnJlY3RBdWQ7XG4gICAgICAgIHRoaXMuaGFuZGxlVW5zdWNjZXNzZnVsVmFsaWRhdGlvbihjb25maWdJZCk7XG5cbiAgICAgICAgcmV0dXJuIHRvUmV0dXJuO1xuICAgICAgfVxuXG4gICAgICBpZiAoIXRoaXMudG9rZW5WYWxpZGF0aW9uU2VydmljZS52YWxpZGF0ZUlkVG9rZW5BenBFeGlzdHNJZk1vcmVUaGFuT25lQXVkKHRvUmV0dXJuLmRlY29kZWRJZFRva2VuKSkge1xuICAgICAgICB0aGlzLmxvZ2dlclNlcnZpY2UubG9nV2FybmluZyhjb25maWdJZCwgJ2F1dGhDYWxsYmFjayBtaXNzaW5nIGF6cCcpO1xuICAgICAgICB0b1JldHVybi5zdGF0ZSA9IFZhbGlkYXRpb25SZXN1bHQuSW5jb3JyZWN0QXpwO1xuICAgICAgICB0aGlzLmhhbmRsZVVuc3VjY2Vzc2Z1bFZhbGlkYXRpb24oY29uZmlnSWQpO1xuXG4gICAgICAgIHJldHVybiB0b1JldHVybjtcbiAgICAgIH1cblxuICAgICAgaWYgKCF0aGlzLnRva2VuVmFsaWRhdGlvblNlcnZpY2UudmFsaWRhdGVJZFRva2VuQXpwVmFsaWQodG9SZXR1cm4uZGVjb2RlZElkVG9rZW4sIGNsaWVudElkKSkge1xuICAgICAgICB0aGlzLmxvZ2dlclNlcnZpY2UubG9nV2FybmluZyhjb25maWdJZCwgJ2F1dGhDYWxsYmFjayBpbmNvcnJlY3QgYXpwJyk7XG4gICAgICAgIHRvUmV0dXJuLnN0YXRlID0gVmFsaWRhdGlvblJlc3VsdC5JbmNvcnJlY3RBenA7XG4gICAgICAgIHRoaXMuaGFuZGxlVW5zdWNjZXNzZnVsVmFsaWRhdGlvbihjb25maWdJZCk7XG5cbiAgICAgICAgcmV0dXJuIHRvUmV0dXJuO1xuICAgICAgfVxuXG4gICAgICBpZiAoIXRoaXMuaXNJZFRva2VuQWZ0ZXJSZWZyZXNoVG9rZW5SZXF1ZXN0VmFsaWQoY2FsbGJhY2tDb250ZXh0LCB0b1JldHVybi5kZWNvZGVkSWRUb2tlbiwgY29uZmlnSWQpKSB7XG4gICAgICAgIHRoaXMubG9nZ2VyU2VydmljZS5sb2dXYXJuaW5nKGNvbmZpZ0lkLCAnYXV0aENhbGxiYWNrIHByZSwgcG9zdCBpZF90b2tlbiBjbGFpbXMgZG8gbm90IG1hdGNoIGluIHJlZnJlc2gnKTtcbiAgICAgICAgdG9SZXR1cm4uc3RhdGUgPSBWYWxpZGF0aW9uUmVzdWx0LkluY29ycmVjdElkVG9rZW5DbGFpbXNBZnRlclJlZnJlc2g7XG4gICAgICAgIHRoaXMuaGFuZGxlVW5zdWNjZXNzZnVsVmFsaWRhdGlvbihjb25maWdJZCk7XG5cbiAgICAgICAgcmV0dXJuIHRvUmV0dXJuO1xuICAgICAgfVxuXG4gICAgICBpZiAoIXRoaXMudG9rZW5WYWxpZGF0aW9uU2VydmljZS52YWxpZGF0ZUlkVG9rZW5FeHBOb3RFeHBpcmVkKHRvUmV0dXJuLmRlY29kZWRJZFRva2VuLCBjb25maWdJZCkpIHtcbiAgICAgICAgdGhpcy5sb2dnZXJTZXJ2aWNlLmxvZ1dhcm5pbmcoY29uZmlnSWQsICdhdXRoQ2FsbGJhY2sgaWQgdG9rZW4gZXhwaXJlZCcpO1xuICAgICAgICB0b1JldHVybi5zdGF0ZSA9IFZhbGlkYXRpb25SZXN1bHQuVG9rZW5FeHBpcmVkO1xuICAgICAgICB0aGlzLmhhbmRsZVVuc3VjY2Vzc2Z1bFZhbGlkYXRpb24oY29uZmlnSWQpO1xuXG4gICAgICAgIHJldHVybiB0b1JldHVybjtcbiAgICAgIH1cbiAgICB9IGVsc2Uge1xuICAgICAgdGhpcy5sb2dnZXJTZXJ2aWNlLmxvZ0RlYnVnKGNvbmZpZ0lkLCAnTm8gaWRfdG9rZW4gZm91bmQsIHNraXBwaW5nIGlkX3Rva2VuIHZhbGlkYXRpb24nKTtcbiAgICB9XG5cbiAgICAvLyBmbG93IGlkX3Rva2VuXG4gICAgaWYgKCFpc0N1cnJlbnRGbG93SW1wbGljaXRGbG93V2l0aEFjY2Vzc1Rva2VuICYmICFpc0N1cnJlbnRGbG93Q29kZUZsb3cpIHtcbiAgICAgIHRvUmV0dXJuLmF1dGhSZXNwb25zZUlzVmFsaWQgPSB0cnVlO1xuICAgICAgdG9SZXR1cm4uc3RhdGUgPSBWYWxpZGF0aW9uUmVzdWx0Lk9rO1xuICAgICAgdGhpcy5oYW5kbGVTdWNjZXNzZnVsVmFsaWRhdGlvbihjb25maWdJZCk7XG4gICAgICB0aGlzLmhhbmRsZVVuc3VjY2Vzc2Z1bFZhbGlkYXRpb24oY29uZmlnSWQpO1xuXG4gICAgICByZXR1cm4gdG9SZXR1cm47XG4gICAgfVxuXG4gICAgLy8gb25seSBkbyBjaGVjayBpZiBpZF90b2tlbiByZXR1cm5lZCwgbm8gYWx3YXlzIHRoZSBjYXNlIHdoZW4gdXNpbmcgcmVmcmVzaCB0b2tlbnNcbiAgICBpZiAoY2FsbGJhY2tDb250ZXh0LmF1dGhSZXN1bHQuaWRfdG9rZW4pIHtcbiAgICAgIGNvbnN0IGlkVG9rZW5IZWFkZXIgPSB0aGlzLnRva2VuSGVscGVyU2VydmljZS5nZXRIZWFkZXJGcm9tVG9rZW4odG9SZXR1cm4uaWRUb2tlbiwgZmFsc2UsIGNvbmZpZ0lkKTtcblxuICAgICAgLy8gVGhlIGF0X2hhc2ggaXMgb3B0aW9uYWwgZm9yIHRoZSBjb2RlIGZsb3dcbiAgICAgIGlmIChpc0N1cnJlbnRGbG93Q29kZUZsb3cgJiYgISh0b1JldHVybi5kZWNvZGVkSWRUb2tlbi5hdF9oYXNoIGFzIHN0cmluZykpIHtcbiAgICAgICAgdGhpcy5sb2dnZXJTZXJ2aWNlLmxvZ0RlYnVnKGNvbmZpZ0lkLCAnQ29kZSBGbG93IGFjdGl2ZSwgYW5kIG5vIGF0X2hhc2ggaW4gdGhlIGlkX3Rva2VuLCBza2lwcGluZyBjaGVjayEnKTtcbiAgICAgIH0gZWxzZSBpZiAoXG4gICAgICAgICF0aGlzLnRva2VuVmFsaWRhdGlvblNlcnZpY2UudmFsaWRhdGVJZFRva2VuQXRIYXNoKFxuICAgICAgICAgIHRvUmV0dXJuLmFjY2Vzc1Rva2VuLFxuICAgICAgICAgIHRvUmV0dXJuLmRlY29kZWRJZFRva2VuLmF0X2hhc2gsXG4gICAgICAgICAgaWRUb2tlbkhlYWRlci5hbGcsIC8vICdSU0EyNTYnXG4gICAgICAgICAgY29uZmlnSWRcbiAgICAgICAgKSB8fFxuICAgICAgICAhdG9SZXR1cm4uYWNjZXNzVG9rZW5cbiAgICAgICkge1xuICAgICAgICB0aGlzLmxvZ2dlclNlcnZpY2UubG9nV2FybmluZyhjb25maWdJZCwgJ2F1dGhDYWxsYmFjayBpbmNvcnJlY3QgYXRfaGFzaCcpO1xuICAgICAgICB0b1JldHVybi5zdGF0ZSA9IFZhbGlkYXRpb25SZXN1bHQuSW5jb3JyZWN0QXRIYXNoO1xuICAgICAgICB0aGlzLmhhbmRsZVVuc3VjY2Vzc2Z1bFZhbGlkYXRpb24oY29uZmlnSWQpO1xuXG4gICAgICAgIHJldHVybiB0b1JldHVybjtcbiAgICAgIH1cbiAgICB9XG5cbiAgICB0b1JldHVybi5hdXRoUmVzcG9uc2VJc1ZhbGlkID0gdHJ1ZTtcbiAgICB0b1JldHVybi5zdGF0ZSA9IFZhbGlkYXRpb25SZXN1bHQuT2s7XG4gICAgdGhpcy5oYW5kbGVTdWNjZXNzZnVsVmFsaWRhdGlvbihjb25maWdJZCk7XG5cbiAgICByZXR1cm4gdG9SZXR1cm47XG4gIH1cblxuICBwcml2YXRlIGlzSWRUb2tlbkFmdGVyUmVmcmVzaFRva2VuUmVxdWVzdFZhbGlkKGNhbGxiYWNrQ29udGV4dDogQ2FsbGJhY2tDb250ZXh0LCBuZXdJZFRva2VuOiBhbnksIGNvbmZpZ0lkOiBzdHJpbmcpOiBib29sZWFuIHtcbiAgICBjb25zdCB7IHVzZVJlZnJlc2hUb2tlbiwgZGlzYWJsZVJlZnJlc2hJZFRva2VuQXV0aFRpbWVWYWxpZGF0aW9uIH0gPSB0aGlzLmNvbmZpZ3VyYXRpb25Qcm92aWRlci5nZXRPcGVuSURDb25maWd1cmF0aW9uKGNvbmZpZ0lkKTtcbiAgICBpZiAoIXVzZVJlZnJlc2hUb2tlbikge1xuICAgICAgcmV0dXJuIHRydWU7XG4gICAgfVxuXG4gICAgaWYgKCFjYWxsYmFja0NvbnRleHQuZXhpc3RpbmdJZFRva2VuKSB7XG4gICAgICByZXR1cm4gdHJ1ZTtcbiAgICB9XG5cbiAgICBjb25zdCBkZWNvZGVkSWRUb2tlbiA9IHRoaXMudG9rZW5IZWxwZXJTZXJ2aWNlLmdldFBheWxvYWRGcm9tVG9rZW4oY2FsbGJhY2tDb250ZXh0LmV4aXN0aW5nSWRUb2tlbiwgZmFsc2UsIGNvbmZpZ0lkKTtcblxuICAgIC8vIFVwb24gc3VjY2Vzc2Z1bCB2YWxpZGF0aW9uIG9mIHRoZSBSZWZyZXNoIFRva2VuLCB0aGUgcmVzcG9uc2UgYm9keSBpcyB0aGUgVG9rZW4gUmVzcG9uc2Ugb2YgU2VjdGlvbiAzLjEuMy4zXG4gICAgLy8gZXhjZXB0IHRoYXQgaXQgbWlnaHQgbm90IGNvbnRhaW4gYW4gaWRfdG9rZW4uXG5cbiAgICAvLyBJZiBhbiBJRCBUb2tlbiBpcyByZXR1cm5lZCBhcyBhIHJlc3VsdCBvZiBhIHRva2VuIHJlZnJlc2ggcmVxdWVzdCwgdGhlIGZvbGxvd2luZyByZXF1aXJlbWVudHMgYXBwbHk6XG5cbiAgICAvLyBpdHMgaXNzIENsYWltIFZhbHVlIE1VU1QgYmUgdGhlIHNhbWUgYXMgaW4gdGhlIElEIFRva2VuIGlzc3VlZCB3aGVuIHRoZSBvcmlnaW5hbCBhdXRoZW50aWNhdGlvbiBvY2N1cnJlZCxcbiAgICBpZiAoZGVjb2RlZElkVG9rZW4uaXNzICE9PSBuZXdJZFRva2VuLmlzcykge1xuICAgICAgdGhpcy5sb2dnZXJTZXJ2aWNlLmxvZ0RlYnVnKGNvbmZpZ0lkLCBgaXNzIGRvIG5vdCBtYXRjaDogJHtkZWNvZGVkSWRUb2tlbi5pc3N9ICR7bmV3SWRUb2tlbi5pc3N9YCk7XG5cbiAgICAgIHJldHVybiBmYWxzZTtcbiAgICB9XG4gICAgLy8gaXRzIGF6cCBDbGFpbSBWYWx1ZSBNVVNUIGJlIHRoZSBzYW1lIGFzIGluIHRoZSBJRCBUb2tlbiBpc3N1ZWQgd2hlbiB0aGUgb3JpZ2luYWwgYXV0aGVudGljYXRpb24gb2NjdXJyZWQ7XG4gICAgLy8gICBpZiBubyBhenAgQ2xhaW0gd2FzIHByZXNlbnQgaW4gdGhlIG9yaWdpbmFsIElEIFRva2VuLCBvbmUgTVVTVCBOT1QgYmUgcHJlc2VudCBpbiB0aGUgbmV3IElEIFRva2VuLCBhbmRcbiAgICAvLyBvdGhlcndpc2UsIHRoZSBzYW1lIHJ1bGVzIGFwcGx5IGFzIGFwcGx5IHdoZW4gaXNzdWluZyBhbiBJRCBUb2tlbiBhdCB0aGUgdGltZSBvZiB0aGUgb3JpZ2luYWwgYXV0aGVudGljYXRpb24uXG4gICAgaWYgKGRlY29kZWRJZFRva2VuLmF6cCAhPT0gbmV3SWRUb2tlbi5henApIHtcbiAgICAgIHRoaXMubG9nZ2VyU2VydmljZS5sb2dEZWJ1Zyhjb25maWdJZCwgYGF6cCBkbyBub3QgbWF0Y2g6ICR7ZGVjb2RlZElkVG9rZW4uYXpwfSAke25ld0lkVG9rZW4uYXpwfWApO1xuXG4gICAgICByZXR1cm4gZmFsc2U7XG4gICAgfVxuICAgIC8vIGl0cyBzdWIgQ2xhaW0gVmFsdWUgTVVTVCBiZSB0aGUgc2FtZSBhcyBpbiB0aGUgSUQgVG9rZW4gaXNzdWVkIHdoZW4gdGhlIG9yaWdpbmFsIGF1dGhlbnRpY2F0aW9uIG9jY3VycmVkLFxuICAgIGlmIChkZWNvZGVkSWRUb2tlbi5zdWIgIT09IG5ld0lkVG9rZW4uc3ViKSB7XG4gICAgICB0aGlzLmxvZ2dlclNlcnZpY2UubG9nRGVidWcoY29uZmlnSWQsIGBzdWIgZG8gbm90IG1hdGNoOiAke2RlY29kZWRJZFRva2VuLnN1Yn0gJHtuZXdJZFRva2VuLnN1Yn1gKTtcblxuICAgICAgcmV0dXJuIGZhbHNlO1xuICAgIH1cblxuICAgIC8vIGl0cyBhdWQgQ2xhaW0gVmFsdWUgTVVTVCBiZSB0aGUgc2FtZSBhcyBpbiB0aGUgSUQgVG9rZW4gaXNzdWVkIHdoZW4gdGhlIG9yaWdpbmFsIGF1dGhlbnRpY2F0aW9uIG9jY3VycmVkLFxuICAgIGlmICghdGhpcy5lcXVhbGl0eVNlcnZpY2UuaXNTdHJpbmdFcXVhbE9yTm9uT3JkZXJlZEFycmF5RXF1YWwoZGVjb2RlZElkVG9rZW4/LmF1ZCwgbmV3SWRUb2tlbj8uYXVkKSkge1xuICAgICAgdGhpcy5sb2dnZXJTZXJ2aWNlLmxvZ0RlYnVnKGNvbmZpZ0lkLCBgYXVkIGluIG5ldyBpZF90b2tlbiBpcyBub3QgdmFsaWQ6ICcke2RlY29kZWRJZFRva2VuPy5hdWR9JyAnJHtuZXdJZFRva2VuLmF1ZH0nYCk7XG5cbiAgICAgIHJldHVybiBmYWxzZTtcbiAgICB9XG5cbiAgICBpZiAoZGlzYWJsZVJlZnJlc2hJZFRva2VuQXV0aFRpbWVWYWxpZGF0aW9uKSB7XG4gICAgICByZXR1cm4gdHJ1ZTtcbiAgICB9XG5cbiAgICAvLyBpdHMgaWF0IENsYWltIE1VU1QgcmVwcmVzZW50IHRoZSB0aW1lIHRoYXQgdGhlIG5ldyBJRCBUb2tlbiBpcyBpc3N1ZWQsXG4gICAgLy8gaWYgdGhlIElEIFRva2VuIGNvbnRhaW5zIGFuIGF1dGhfdGltZSBDbGFpbSwgaXRzIHZhbHVlIE1VU1QgcmVwcmVzZW50IHRoZSB0aW1lIG9mIHRoZSBvcmlnaW5hbCBhdXRoZW50aWNhdGlvblxuICAgIC8vIC0gbm90IHRoZSB0aW1lIHRoYXQgdGhlIG5ldyBJRCB0b2tlbiBpcyBpc3N1ZWQsXG4gICAgaWYgKGRlY29kZWRJZFRva2VuLmF1dGhfdGltZSAhPT0gbmV3SWRUb2tlbi5hdXRoX3RpbWUpIHtcbiAgICAgIHRoaXMubG9nZ2VyU2VydmljZS5sb2dEZWJ1Zyhjb25maWdJZCwgYGF1dGhfdGltZSBkbyBub3QgbWF0Y2g6ICR7ZGVjb2RlZElkVG9rZW4uYXV0aF90aW1lfSAke25ld0lkVG9rZW4uYXV0aF90aW1lfWApO1xuXG4gICAgICByZXR1cm4gZmFsc2U7XG4gICAgfVxuXG4gICAgcmV0dXJuIHRydWU7XG4gIH1cblxuICBwcml2YXRlIGhhbmRsZVN1Y2Nlc3NmdWxWYWxpZGF0aW9uKGNvbmZpZ0lkOiBzdHJpbmcpOiB2b2lkIHtcbiAgICBjb25zdCB7IGF1dG9DbGVhblN0YXRlQWZ0ZXJBdXRoZW50aWNhdGlvbiB9ID0gdGhpcy5jb25maWd1cmF0aW9uUHJvdmlkZXIuZ2V0T3BlbklEQ29uZmlndXJhdGlvbihjb25maWdJZCk7XG4gICAgdGhpcy5zdG9yYWdlUGVyc2lzdGVuY2VTZXJ2aWNlLndyaXRlKCdhdXRoTm9uY2UnLCBudWxsLCBjb25maWdJZCk7XG5cbiAgICBpZiAoYXV0b0NsZWFuU3RhdGVBZnRlckF1dGhlbnRpY2F0aW9uKSB7XG4gICAgICB0aGlzLnN0b3JhZ2VQZXJzaXN0ZW5jZVNlcnZpY2Uud3JpdGUoJ2F1dGhTdGF0ZUNvbnRyb2wnLCAnJywgY29uZmlnSWQpO1xuICAgIH1cbiAgICB0aGlzLmxvZ2dlclNlcnZpY2UubG9nRGVidWcoY29uZmlnSWQsICdhdXRoQ2FsbGJhY2sgdG9rZW4ocykgdmFsaWRhdGVkLCBjb250aW51ZScpO1xuICB9XG5cbiAgcHJpdmF0ZSBoYW5kbGVVbnN1Y2Nlc3NmdWxWYWxpZGF0aW9uKGNvbmZpZ0lkOiBzdHJpbmcpOiB2b2lkIHtcbiAgICBjb25zdCB7IGF1dG9DbGVhblN0YXRlQWZ0ZXJBdXRoZW50aWNhdGlvbiB9ID0gdGhpcy5jb25maWd1cmF0aW9uUHJvdmlkZXIuZ2V0T3BlbklEQ29uZmlndXJhdGlvbihjb25maWdJZCk7XG4gICAgdGhpcy5zdG9yYWdlUGVyc2lzdGVuY2VTZXJ2aWNlLndyaXRlKCdhdXRoTm9uY2UnLCBudWxsLCBjb25maWdJZCk7XG5cbiAgICBpZiAoYXV0b0NsZWFuU3RhdGVBZnRlckF1dGhlbnRpY2F0aW9uKSB7XG4gICAgICB0aGlzLnN0b3JhZ2VQZXJzaXN0ZW5jZVNlcnZpY2Uud3JpdGUoJ2F1dGhTdGF0ZUNvbnRyb2wnLCAnJywgY29uZmlnSWQpO1xuICAgIH1cbiAgICB0aGlzLmxvZ2dlclNlcnZpY2UubG9nRGVidWcoY29uZmlnSWQsICdhdXRoQ2FsbGJhY2sgdG9rZW4ocykgaW52YWxpZCcpO1xuICB9XG59XG4iXX0=

@@ -15,4 +15,4 @@ export * from './auth-options';

export * from './login/login-response';
export * from './login/popup/popup-login.service';
export * from './login/popup/popup-options';
export * from './login/popup/popup.service';
export * from './oidc.security.service';

@@ -19,0 +19,0 @@ export * from './public-events/event-types';

@@ -10,13 +10,13 @@ import { Router } from '@angular/router';

/**
* Saves the redirect url to storage.
* Saves the redirect URL to storage.
*
* @param url The redirect url to save.
* @param url The redirect URL to save.
*/
saveRedirectRoute(configId: string, url: string): void;
/**
* Gets the stored redirect route from storage.
* Gets the stored redirect URL from storage.
*/
private getStoredRedirectRoute;
/**
* Removes the redirect url from storage.
* Removes the redirect URL from storage.
*/

@@ -23,0 +23,0 @@ private deleteStoredRedirectRoute;

@@ -5,2 +5,3 @@ import { LoggerService } from '../logging/logger.service';

import { PlatformProvider } from '../utils/platform-provider/platform.provider';
import { DefaultSessionStorageService } from './../storage/default-sessionstorage.service';
import { AuthWellKnownService } from './auth-well-known/auth-well-known.service';

@@ -19,3 +20,4 @@ import { OpenIdConfiguration } from './openid-configuration';

private platformProvider;
constructor(loggerService: LoggerService, publicEventsService: PublicEventsService, configurationProvider: ConfigurationProvider, authWellKnownService: AuthWellKnownService, storagePersistenceService: StoragePersistenceService, configValidationService: ConfigValidationService, platformProvider: PlatformProvider);
private defaultSessionStorageService;
constructor(loggerService: LoggerService, publicEventsService: PublicEventsService, configurationProvider: ConfigurationProvider, authWellKnownService: AuthWellKnownService, storagePersistenceService: StoragePersistenceService, configValidationService: ConfigValidationService, platformProvider: PlatformProvider, defaultSessionStorageService: DefaultSessionStorageService);
withConfigs(passedConfigs: OpenIdConfiguration[]): Promise<OpenIdConfiguration[]>;

@@ -26,4 +28,6 @@ private createUniqueIds;

private setSpecialCases;
private setStorage;
private hasBrowserStorage;
static ɵfac: i0.ɵɵFactoryDeclaration<OidcConfigService, never>;
static ɵprov: i0.ɵɵInjectableDeclaration<OidcConfigService>;
}
import { LogLevel } from '../logging/log-level';
import { AuthWellKnownEndpoints } from './auth-well-known/auth-well-known-endpoints';
export interface OpenIdConfiguration {
/**
* To identify a configuration the `configId` parameter was introduced.
* If you do not explicitly set this value, the library will generate
* and assign the value for you. If set, the configured value is used.
* The value is optional.
*/
configId?: string;
/**
* The url to the secure token server (STS) server. The authority issues tokens
* The url to the Security Token Service (STS). The authority issues tokens.
* This field is required.
*/
authority?: string;
/** Override the default secure token server wellknown endpoint postfix. */
/** Override the default Security Token Service wellknown endpoint postfix. */
authWellknownEndpointUrl?: string;
authWellknownEndpoints?: AuthWellKnownEndpoints;
/** The redirect URL defined on the secure token server. */
/** The redirect URL defined on the Security Token Service. */
redirectUrl?: string;
/**
* The Client MUST validate that the aud (audience) Claim contains its client_id value
* The Client MUST validate that the aud (audience) Claim contains its `client_id` value
* registered at the Issuer identified by the iss (issuer) Claim as an audience.

@@ -23,12 +29,14 @@ * The ID Token MUST be rejected if the ID Token does not list the Client as a valid audience,

/**
* 'code', 'id_token token' or 'id_token' Name of the flow which can be configured.
* You must use the 'id_token token' flow, if you want to access an API or get user data from the server.
* The access_token is required for this, and only returned with this flow.
* `code`, `id_token token` or `id_token`.
* Name of the flow which can be configured.
* You must use the `id_token token` flow, if you want to access an API
* or get user data from the server. The `access_token` is required for this,
* and only returned with this flow.
*/
responseType?: string;
/**
* This is this scopes which are requested from the server from this client.
* This must match the secure token server configuration.
* The 'openid' scope is required. The 'offline_access' scope can be requested when using refresh tokens
* but this is optional and some secure token server do not support this or recommend not requesting this even when using
* List of scopes which are requested from the server from this client.
* This must match the Security Token Service configuration for the client you use.
* The `openid` scope is required. The `offline_access` scope can be requested when using refresh tokens
* but this is optional and some Security Token Service do not support this or recommend not requesting this even when using
* refresh tokens in the browser.

@@ -42,7 +50,7 @@ */

hdParam?: string;
/** URL after a server logout if using the end session API. */
/** URL to redirect to after a server logout if using the end session API. */
postLogoutRedirectUri?: string;
/** Starts the OpenID session management for this client. */
startCheckSession?: boolean;
/** Renews the client tokens, once the token_id expires. Can use the iframes, or the refresh tokens */
/** Renews the client tokens, once the id_token expires. Can use iframes or refresh tokens. */
silentRenew?: boolean;

@@ -58,3 +66,3 @@ /** An optional URL to handle silent renew callbacks */

* Makes it possible to add an offset to the silent renew check in seconds.
* By entering a value, you can renew the tokens, before the tokens expire.
* By entering a value, you can renew the tokens before the tokens expire.
*/

@@ -70,3 +78,3 @@ renewTimeBeforeTokenExpiresInSeconds?: number;

* Activates Pushed Authorisation Requests for login and popup login.
* Not compatible with Iframe renew.
* Not compatible with iframe renew.
*/

@@ -76,6 +84,5 @@ usePushedAuthorisationRequests?: boolean;

* A token obtained by using a refresh token normally doesn't contain a nonce value.
* However, some OIDC endpoint implementations do send one. The library checks to see if the nonce is present.
* Note that if the nonce value is present, it will not be verified.
* This is not recommended, if the secure token server returns a nonce in the refresh.
* Default value is false
* The library checks it is not there. However, some OIDC endpoint implementations do send one.
* Setting `ignoreNonceAfterRefresh` to `true` disables the check if a nonce is present.
* Please note that the nonce value, if present, will not be verified. Default is `false`.
*/

@@ -85,12 +92,12 @@ ignoreNonceAfterRefresh?: boolean;

* The default Angular route which is used after a successful login, if not using the
* trigger_authorization_result_event
* `triggerAuthorizationResultEvent`
*/
postLoginRoute?: string;
/** Route, if the server returns a 403. This is an Angular route. HTTP 403 */
/** Route to redirect to if the server returns a 403 error. This has to be an Angular route. HTTP 403. */
forbiddenRoute?: string;
/** Route, if the server returns a 401. This is an Angular route. HTTP 401 */
/** Route to redirect to if the server returns a 401 error. This has to be an Angular route. HTTP 401. */
unauthorizedRoute?: string;
/** When set to true, library automatically gets user info after authentication */
/** When set to true, the library automatically gets user info after authentication */
autoUserInfo?: boolean;
/** When set to true, library automatically gets user info after token renew */
/** When set to true, the library automatically gets user info after token renew */
renewUserInfoAfterTokenRenew?: boolean;

@@ -100,3 +107,3 @@ /** Used for custom state logic handling. The state is not automatically reset when set to false */

/**
* This can be set to true which emits an event instead of an angular route change.
* This can be set to true which emits an event instead of an Angular route change.
* Instead of forcing the application consuming this library to automatically redirect to one of the 3

@@ -106,4 +113,4 @@ * hard-configured routes (start, unauthorized, forbidden), this modification will add an extra

* it and let the application perform other actions. This would be useful to allow the application to
* save an initial return url so that the user is redirected to it after a successful login on the secure token server
* (ie: saving the return url previously on sessionStorage and then retrieving it during the triggering of the event).
* save an initial return URL so that the user is redirected to it after a successful login on the Security Token Service
* (i.e. saving the return URL previously on sessionStorage and then retrieving it during the triggering of the event).
*/

@@ -113,11 +120,11 @@ triggerAuthorizationResultEvent?: boolean;

logLevel?: LogLevel;
/** Make it possible to turn the iss validation off per configuration. You should not turn this off! */
/** Make it possible to turn off the iss validation per configuration. **You should not turn this off!** */
issValidationOff?: boolean;
/**
* If this is active, the history is not cleaned up on an authorize callback.
* This can be used, when the application needs to preserve the history.
* This can be used when the application needs to preserve the history.
*/
historyCleanupOff?: boolean;
/**
* Amount of offset allowed between the server creating the token, and the client app receiving the id_token.
* Amount of offset allowed between the server creating the token and the client app receiving the id_token.
* The diff in time between the server time and client time is also important in validating this value.

@@ -152,19 +159,23 @@ * All times are in UTC.

};
/** Denotes if the AuthWellKnownEndpoints should be loaded at startup or when the user calls the authorize method. */
/** Tells if the `AuthWellKnownEndpoints` should be loaded at startup or when the user calls the authorize method. */
eagerLoadAuthWellKnownEndpoints?: boolean;
/** disables the auth_time validation for id_tokens in a refresh due to Azure's incorrect implementation */
/** Disables the auth_time validation for id_tokens in a refresh due to Azure's incorrect implementation. */
disableRefreshIdTokenAuthTimeValidation?: boolean;
/** enables the id_token validation, default value is true. You can disable this validation if you would like to ignore the expired value in the renew process. If no id_token is returned in using refresh tokens, set this to false. */
/**
* Enables the id_token validation, default value is `true`.
* You can disable this validation if you like to ignore the expired value in the renew process.
* If no id_token is returned in using refresh tokens, set this to `false`.
*/
enableIdTokenExpiredValidationInRenew?: boolean;
/** Controls the periodic check time interval in sections.
* Default value is 3
* Default value is 3.
*/
tokenRefreshInSeconds?: number;
/**
* Array of secure urls on which the token should be send if the interceptor is added to the HTTP_INTERCEPTORS
* Array of secure URLs on which the token should be sent if the interceptor is added to the `HTTP_INTERCEPTORS`.
*/
secureRoutes?: string[];
/**
* Controls the periodic retry time interval for retrieving new tokens in seconds..
* silentRenewTimeoutInSeconds and tokenRefreshInSeconds are upper bounds for this value.
* Controls the periodic retry time interval for retrieving new tokens in seconds.
* `silentRenewTimeoutInSeconds` and `tokenRefreshInSeconds` are upper bounds for this value.
* Default value is 3

@@ -171,0 +182,0 @@ */

@@ -19,2 +19,3 @@ import { Observable } from 'rxjs';

import { TokenHelperService } from './utils/tokenHelper/token-helper.service';
import { UrlService } from './utils/url/url.service';
import * as i0 from "@angular/core";

@@ -33,2 +34,3 @@ export declare class OidcSecurityService {

private refreshSessionService;
private urlService;
/**

@@ -57,6 +59,6 @@ * Provides information about the user after they have logged in.

/**
* Emits on a secure token server callback. The observable will never contain a value.
* Emits on a Security Token Service callback. The observable will never contain a value.
*/
get stsCallback$(): Observable<any>;
constructor(checkSessionService: CheckSessionService, checkAuthService: CheckAuthService, userService: UserService, tokenHelperService: TokenHelperService, configurationProvider: ConfigurationProvider, authStateService: AuthStateService, flowsDataService: FlowsDataService, callbackService: CallbackService, logoffRevocationService: LogoffRevocationService, loginService: LoginService, refreshSessionService: RefreshSessionService);
constructor(checkSessionService: CheckSessionService, checkAuthService: CheckAuthService, userService: UserService, tokenHelperService: TokenHelperService, configurationProvider: ConfigurationProvider, authStateService: AuthStateService, flowsDataService: FlowsDataService, callbackService: CallbackService, logoffRevocationService: LogoffRevocationService, loginService: LoginService, refreshSessionService: RefreshSessionService, urlService: UrlService);
/**

@@ -85,3 +87,3 @@ * Returns the currently active OpenID configurations.

*
* @param url The url to perform the authorization on the behalf of.
* @param url The URL to perform the authorization on the behalf of.
* @param configId The configId to perform the authorization on the behalf of. If not passed, the first configs will be taken

@@ -98,3 +100,3 @@ *

*
* @param url The url to perform the authorization on the behalf of.
* @param url The URL to perform the authorization on the behalf of.
* @param configId The configId to perform the authorization on the behalf of. If not passed, all of the current

@@ -175,3 +177,3 @@ * configured ones will be used to check.

/**
* Redirects the user to the secure token server to begin the authentication process.
* Redirects the user to the Security Token Service to begin the authentication process.
*

@@ -183,3 +185,3 @@ * @param configId The configId to perform the action in behalf of. If not passed, the first configs will be taken

/**
* Opens the secure token server in a new window to begin the authentication process.
* Opens the Security Token Service in a new window to begin the authentication process.
*

@@ -236,3 +238,3 @@ * @param authOptions The custom options for the authentication request.

/**
* Revokes an access token on the secure token server. This is only required in the code flow with refresh tokens. If no token is
* Revokes an access token on the Security Token Service. This is only required in the code flow with refresh tokens. If no token is
* provided, then the token from the storage is revoked. You can pass any token to revoke.

@@ -248,3 +250,3 @@ * https://tools.ietf.org/html/rfc7009

/**
* Revokes a refresh token on the secure token server. This is only required in the code flow with refresh tokens. If no token is
* Revokes a refresh token on the Security Token Service. This is only required in the code flow with refresh tokens. If no token is
* provided, then the token from the storage is revoked. You can pass any token to revoke.

@@ -270,4 +272,15 @@ * https://tools.ietf.org/html/rfc7009

}, configId?: string): string | null;
/**
* Creates the authorize URL based on your flow
*
* @param customParams
* @param configId The configId to perform the action in behalf of. If not passed, the first configs will be taken
*
* @returns A string with the authorize URL or null
*/
getAuthorizeUrl(customParams?: {
[p: string]: string | number | boolean;
}, configId?: string): string | null;
static ɵfac: i0.ɵɵFactoryDeclaration<OidcSecurityService, never>;
static ɵprov: i0.ɵɵInjectableDeclaration<OidcSecurityService>;
}

@@ -11,3 +11,3 @@ import * as i0 from "@angular/core";

*/
abstract read(key: string, configId?: string): any;
abstract read(key: string): any;
/**

@@ -19,3 +19,3 @@ * This method must contain the logic to write the storage.

*/
abstract write(key: string, value: any, configId?: string): void;
abstract write(key: string, value: any): void;
/**

@@ -26,9 +26,9 @@ * This method must contain the logic to remove an item from the storage.

*/
abstract remove(key: string, configId?: string): void;
abstract remove(key: string): void;
/**
* This method must contain the logic to remove all items from the storage.
*/
abstract clear(configId?: string): void;
abstract clear(): void;
static ɵfac: i0.ɵɵFactoryDeclaration<AbstractSecurityStorage, never>;
static ɵprov: i0.ɵɵInjectableDeclaration<AbstractSecurityStorage>;
}
import { ConfigurationProvider } from '../config/provider/config.provider';
import { LoggerService } from '../logging/logger.service';
import { AbstractSecurityStorage } from './abstract-security-storage';
import * as i0 from "@angular/core";
export declare class BrowserStorageService implements AbstractSecurityStorage {
export declare class BrowserStorageService {
private configProvider;

@@ -10,3 +9,3 @@ private loggerService;

read(key: string, configId: string): any;
write(key: string, value: any, configId: string): boolean;
write(value: any, configId: string): boolean;
remove(key: string, configId: string): boolean;

@@ -13,0 +12,0 @@ clear(configId: string): boolean;

@@ -1,11 +0,11 @@

import { AbstractSecurityStorage } from './abstract-security-storage';
import { BrowserStorageService } from './browser-storage.service';
import * as i0 from "@angular/core";
export declare type StorageKeys = 'authnResult' | 'authzData' | 'access_token_expires_at' | 'authWellKnownEndPoints' | 'userData' | 'authNonce' | 'codeVerifier' | 'authStateControl' | 'session_state' | 'storageSilentRenewRunning' | 'storageCustomParamsAuthRequest' | 'storageCustomParamsRefresh' | 'storageCustomParamsEndSession' | 'redirect' | 'configIds' | 'jwtKeys';
export declare class StoragePersistenceService {
private readonly oidcSecurityStorage;
constructor(oidcSecurityStorage: AbstractSecurityStorage);
private readonly browserStorageService;
constructor(browserStorageService: BrowserStorageService);
read(key: StorageKeys, configId: string): any;
write(key: StorageKeys, value: any, configId: string): void;
remove(key: StorageKeys, configId: string): void;
clear(): void;
clear(configId: string): void;
resetStorageFlowData(configId: string): void;

@@ -12,0 +12,0 @@ resetAuthStateInStorage(configId: string): void;

@@ -42,3 +42,3 @@ {

"license": "MIT",
"version": "12.0.2",
"version": "12.0.3",
"description": "Angular Lib for OpenID Connect & OAuth2",

@@ -45,0 +45,0 @@ "schematics": "./schematics/collection.json",

@@ -5,2 +5,6 @@ # Angular Lib for OpenID Connect & OAuth2

<p align="center">
<a href="https://nice-hill-002425310.azurestaticapps.net/"><img src="https://raw.githubusercontent.com/damienbod/angular-auth-oidc-client/main/.github/angular-auth-logo.png" alt="" width="350" /></a>
</p>
Secure your Angular app using the latest standards for OpenID Connect & OAuth2. Provides support for token refresh, all modern OIDC Identity Providers and more.

@@ -109,3 +113,3 @@

And call the method `checkAuth()` from your `app.component.ts`. The method `checkAuth()` is needed to process the redirect from your secure token server and set the correct states. This method must be used to ensure the correct functioning of the library.
And call the method `checkAuth()` from your `app.component.ts`. The method `checkAuth()` is needed to process the redirect from your Security Token Service and set the correct states. This method must be used to ensure the correct functioning of the library.

@@ -112,0 +116,0 @@ ```ts

@@ -8,3 +8,3 @@ "use strict";

name: 'angular-auth-oidc-client',
version: '12.0.2',
version: '12.0.3',
},

@@ -11,0 +11,0 @@ ];

Sorry, the diff of this file is too big to display

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is too big to display

Sorry, the diff of this file is too big to display

Sorry, the diff of this file is not supported yet

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc