UNPKG

vix-ui

Version:

76 lines 5.86 kB
/** * @fileoverview added by tsickle * @suppress {checkTypes,extraRequire,uselessCode} checked by tsc */ import { Injectable } from '@angular/core'; import { HttpClient, HttpHeaders } from '@angular/common/http'; import { AuthConfigService } from './auth-config.service'; /** * Wrapper for Okta API */ export class OktaService { /** * @param {?} httpClient * @param {?} authConfig */ constructor(httpClient, authConfig) { this.httpClient = httpClient; this.authConfig = authConfig; this.httpOptions = { headers: new HttpHeaders({ 'Content-Type': 'application/json', 'Accept': 'application/json', 'Authorization': 'SSWS ' + this.authConfig.getApiKey() }) }; } /** * Build Full API URl by given endpoint * @param {?} endpoint * @return {?} */ getFullUrl(endpoint) { return `${this.authConfig.getUrl()}/api/v1${endpoint}`; } /** * Get user info by email. * doc: https://developer.okta.com/docs/api/resources/users#get-current-user * @param {?} userId * @return {?} */ getUserInfo(userId) { return this.httpClient.get(this.getFullUrl(`/users/${userId}`), this.httpOptions).toPromise(); } /** * Get user groups information by given userId * doc: https://developer.okta.com/docs/api/resources/users#get-member-groups * @param {?} userId * @return {?} */ getUserGroups(userId) { return this.httpClient.get(this.getFullUrl(`/users/${userId}/groups`), this.httpOptions).toPromise(); } /** * List all groups * @return {?} */ listGroups() { return this.httpClient.get(this.getFullUrl('/groups'), this.httpOptions).toPromise(); } } OktaService.decorators = [ { type: Injectable } ]; OktaService.ctorParameters = () => [ { type: HttpClient }, { type: AuthConfigService } ]; if (false) { /** @type {?} */ OktaService.prototype.httpOptions; /** @type {?} */ OktaService.prototype.httpClient; /** @type {?} */ OktaService.prototype.authConfig; } //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoib2t0YS5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6Im5nOi8vdml4LXVpLyIsInNvdXJjZXMiOlsidml4LWF1dGgvb2t0YS5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7QUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzNDLE9BQU8sRUFBRSxVQUFVLEVBQUUsV0FBVyxFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFDL0QsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sdUJBQXVCLENBQUM7Ozs7QUFNMUQsTUFBTTs7Ozs7SUFJSixZQUFvQixVQUFzQixFQUN0QixVQUE2QjtRQUQ3QixlQUFVLEdBQVYsVUFBVSxDQUFZO1FBQ3RCLGVBQVUsR0FBVixVQUFVLENBQW1CO1FBQy9DLElBQUksQ0FBQyxXQUFXLEdBQUc7WUFDakIsT0FBTyxFQUFFLElBQUksV0FBVyxDQUFDO2dCQUN2QixjQUFjLEVBQUUsa0JBQWtCO2dCQUNsQyxRQUFRLEVBQUUsa0JBQWtCO2dCQUM1QixlQUFlLEVBQUUsT0FBTyxHQUFHLElBQUksQ0FBQyxVQUFVLENBQUMsU0FBUyxFQUFFO2FBQ3ZELENBQUM7U0FDSCxDQUFDO0lBQ0osQ0FBQzs7Ozs7O0lBS0QsVUFBVSxDQUFDLFFBQWdCO1FBQ3pCLE9BQU8sR0FBRyxJQUFJLENBQUMsVUFBVSxDQUFDLE1BQU0sRUFBRSxVQUFVLFFBQVEsRUFBRSxDQUFDO0lBQ3pELENBQUM7Ozs7Ozs7SUFNRCxXQUFXLENBQUMsTUFBYztRQUN4QixPQUFPLElBQUksQ0FBQyxVQUFVLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxVQUFVLENBQUMsVUFBVSxNQUFNLEVBQUUsQ0FBQyxFQUFFLElBQUksQ0FBQyxXQUFXLENBQUMsQ0FBQyxTQUFTLEVBQUUsQ0FBQztJQUNoRyxDQUFDOzs7Ozs7O0lBTUQsYUFBYSxDQUFDLE1BQWM7UUFDMUIsT0FBTyxJQUFJLENBQUMsVUFBVSxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDLFVBQVUsTUFBTSxTQUFTLENBQUMsRUFBRSxJQUFJLENBQUMsV0FBVyxDQUFDLENBQUMsU0FBUyxFQUFFLENBQUM7SUFDdkcsQ0FBQzs7Ozs7SUFLRCxVQUFVO1FBQ1IsT0FBTyxJQUFJLENBQUMsVUFBVSxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDLFNBQVMsQ0FBQyxFQUFFLElBQUksQ0FBQyxXQUFXLENBQUMsQ0FBQyxTQUFTLEVBQUUsQ0FBQztJQUN2RixDQUFDOzs7WUE1Q0YsVUFBVTs7O1lBTkYsVUFBVTtZQUNWLGlCQUFpQjs7OztJQVF4QixrQ0FBNEI7O0lBRWhCLGlDQUE4Qjs7SUFDOUIsaUNBQXFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgSHR0cENsaWVudCwgSHR0cEhlYWRlcnMgfSBmcm9tICdAYW5ndWxhci9jb21tb24vaHR0cCc7XG5pbXBvcnQgeyBBdXRoQ29uZmlnU2VydmljZSB9IGZyb20gJy4vYXV0aC1jb25maWcuc2VydmljZSc7XG5cbi8qKlxuICogV3JhcHBlciBmb3IgT2t0YSBBUElcbiAqL1xuQEluamVjdGFibGUoKVxuZXhwb3J0IGNsYXNzIE9rdGFTZXJ2aWNlIHtcblxuICBwcml2YXRlIGh0dHBPcHRpb25zOiBvYmplY3Q7XG5cbiAgY29uc3RydWN0b3IocHJpdmF0ZSBodHRwQ2xpZW50OiBIdHRwQ2xpZW50LFxuICAgICAgICAgICAgICBwcml2YXRlIGF1dGhDb25maWc6IEF1dGhDb25maWdTZXJ2aWNlKSB7XG4gICAgdGhpcy5odHRwT3B0aW9ucyA9IHtcbiAgICAgIGhlYWRlcnM6IG5ldyBIdHRwSGVhZGVycyh7XG4gICAgICAgICdDb250ZW50LVR5cGUnOiAnYXBwbGljYXRpb24vanNvbicsXG4gICAgICAgICdBY2NlcHQnOiAnYXBwbGljYXRpb24vanNvbicsXG4gICAgICAgICdBdXRob3JpemF0aW9uJzogJ1NTV1MgJyArIHRoaXMuYXV0aENvbmZpZy5nZXRBcGlLZXkoKVxuICAgICAgfSlcbiAgICB9O1xuICB9XG5cbiAgLyoqXG4gICAqIEJ1aWxkIEZ1bGwgQVBJIFVSbCBieSBnaXZlbiBlbmRwb2ludFxuICAgKi9cbiAgZ2V0RnVsbFVybChlbmRwb2ludDogc3RyaW5nKSB7XG4gICAgcmV0dXJuIGAke3RoaXMuYXV0aENvbmZpZy5nZXRVcmwoKX0vYXBpL3YxJHtlbmRwb2ludH1gO1xuICB9XG5cbiAgLyoqXG4gICAqIEdldCB1c2VyIGluZm8gYnkgZW1haWwuXG4gICAqIGRvYzogaHR0cHM6Ly9kZXZlbG9wZXIub2t0YS5jb20vZG9jcy9hcGkvcmVzb3VyY2VzL3VzZXJzI2dldC1jdXJyZW50LXVzZXJcbiAgICovXG4gIGdldFVzZXJJbmZvKHVzZXJJZDogc3RyaW5nKSB7XG4gICAgcmV0dXJuIHRoaXMuaHR0cENsaWVudC5nZXQodGhpcy5nZXRGdWxsVXJsKGAvdXNlcnMvJHt1c2VySWR9YCksIHRoaXMuaHR0cE9wdGlvbnMpLnRvUHJvbWlzZSgpO1xuICB9XG5cbiAgLyoqXG4gICAqIEdldCB1c2VyIGdyb3VwcyBpbmZvcm1hdGlvbiBieSBnaXZlbiB1c2VySWRcbiAgICogZG9jOiBodHRwczovL2RldmVsb3Blci5va3RhLmNvbS9kb2NzL2FwaS9yZXNvdXJjZXMvdXNlcnMjZ2V0LW1lbWJlci1ncm91cHNcbiAgICovXG4gIGdldFVzZXJHcm91cHModXNlcklkOiBzdHJpbmcpIHtcbiAgICByZXR1cm4gdGhpcy5odHRwQ2xpZW50LmdldCh0aGlzLmdldEZ1bGxVcmwoYC91c2Vycy8ke3VzZXJJZH0vZ3JvdXBzYCksIHRoaXMuaHR0cE9wdGlvbnMpLnRvUHJvbWlzZSgpO1xuICB9XG5cbiAgLyoqXG4gICAqIExpc3QgYWxsIGdyb3Vwc1xuICAgKi9cbiAgbGlzdEdyb3VwcygpIHtcbiAgICByZXR1cm4gdGhpcy5odHRwQ2xpZW50LmdldCh0aGlzLmdldEZ1bGxVcmwoJy9ncm91cHMnKSwgdGhpcy5odHRwT3B0aW9ucykudG9Qcm9taXNlKCk7XG4gIH1cbn1cbiJdfQ==