@vcd/sdk 17.0.3 → 19.0.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/core/plugin.module.d.ts +0 -7
- package/fesm2022/vcd-sdk.mjs +107 -115
- package/fesm2022/vcd-sdk.mjs.map +1 -1
- package/package.json +4 -7
- package/esm2022/client/client/api.result.service.mjs +0 -43
- package/esm2022/client/client/constants.mjs +0 -13
- package/esm2022/client/client/index.mjs +0 -9
- package/esm2022/client/client/logging.interceptor.mjs +0 -44
- package/esm2022/client/client/request.headers.interceptor.mjs +0 -123
- package/esm2022/client/client/response.normalization.interceptor.mjs +0 -59
- package/esm2022/client/client/types.mjs +0 -13
- package/esm2022/client/client/vcd.api.client.mjs +0 -608
- package/esm2022/client/client/vcd.http.client.mjs +0 -61
- package/esm2022/client/client/vcd.transfer.client.mjs +0 -166
- package/esm2022/client/index.mjs +0 -3
- package/esm2022/client/jwt/decoded-jwt.mjs +0 -37
- package/esm2022/client/openapi.mjs +0 -16
- package/esm2022/client/query/filter.builder.mjs +0 -195
- package/esm2022/client/query/index.mjs +0 -3
- package/esm2022/client/query/query.builder.mjs +0 -79
- package/esm2022/common/container-hooks.mjs +0 -85
- package/esm2022/common/index.mjs +0 -2
- package/esm2022/core/index.mjs +0 -2
- package/esm2022/core/plugin.module.mjs +0 -23
- package/esm2022/main.mjs +0 -45
- package/esm2022/public-api.mjs +0 -8
- package/esm2022/vcd-sdk.mjs +0 -5
- package/open_source_license_vcd_ui_sdk_17.0.3_ga.txt +0 -393
package/package.json
CHANGED
|
@@ -1,12 +1,11 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@vcd/sdk",
|
|
3
|
-
"version": "
|
|
3
|
+
"version": "19.0.1",
|
|
4
4
|
"license": "SEE LICENSE IN LICENSE.txt",
|
|
5
5
|
"peerDependencies": {
|
|
6
|
-
"@angular/common": "
|
|
7
|
-
"@angular/core": "
|
|
8
|
-
"
|
|
9
|
-
"rxjs": "7.8.0"
|
|
6
|
+
"@angular/common": ">=19.2.0 <=19.2.14",
|
|
7
|
+
"@angular/core": ">=19.2.0 <=19.2.14",
|
|
8
|
+
"rxjs": ">=7.8.0 <=7.8.1"
|
|
10
9
|
},
|
|
11
10
|
"dependencies": {
|
|
12
11
|
"tslib": "2.3.0"
|
|
@@ -20,8 +19,6 @@
|
|
|
20
19
|
},
|
|
21
20
|
".": {
|
|
22
21
|
"types": "./index.d.ts",
|
|
23
|
-
"esm2022": "./esm2022/vcd-sdk.mjs",
|
|
24
|
-
"esm": "./esm2022/vcd-sdk.mjs",
|
|
25
22
|
"default": "./fesm2022/vcd-sdk.mjs"
|
|
26
23
|
}
|
|
27
24
|
}
|
|
@@ -1,43 +0,0 @@
|
|
|
1
|
-
import { Injectable } from '@angular/core';
|
|
2
|
-
import * as i0 from "@angular/core";
|
|
3
|
-
// tslint:disable:variable-name
|
|
4
|
-
export class ApiResultService {
|
|
5
|
-
constructor() {
|
|
6
|
-
this._results = [];
|
|
7
|
-
}
|
|
8
|
-
get results() {
|
|
9
|
-
return this._results;
|
|
10
|
-
}
|
|
11
|
-
add(result) {
|
|
12
|
-
this._results = [result, ...this._results.slice(0, 99)];
|
|
13
|
-
}
|
|
14
|
-
clear() {
|
|
15
|
-
this._results = [];
|
|
16
|
-
}
|
|
17
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.1.2", ngImport: i0, type: ApiResultService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
18
|
-
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.1.2", ngImport: i0, type: ApiResultService }); }
|
|
19
|
-
}
|
|
20
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.1.2", ngImport: i0, type: ApiResultService, decorators: [{
|
|
21
|
-
type: Injectable
|
|
22
|
-
}] });
|
|
23
|
-
export class ApiResult {
|
|
24
|
-
get message() {
|
|
25
|
-
return this._message;
|
|
26
|
-
}
|
|
27
|
-
get succeeded() {
|
|
28
|
-
return this._succeeded;
|
|
29
|
-
}
|
|
30
|
-
get started() {
|
|
31
|
-
return this._started;
|
|
32
|
-
}
|
|
33
|
-
get finished() {
|
|
34
|
-
return this._finished;
|
|
35
|
-
}
|
|
36
|
-
constructor(message, succeeded, started, finished) {
|
|
37
|
-
this._message = message;
|
|
38
|
-
this._succeeded = succeeded;
|
|
39
|
-
this._started = started;
|
|
40
|
-
this._finished = finished;
|
|
41
|
-
}
|
|
42
|
-
}
|
|
43
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXBpLnJlc3VsdC5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdmNkL3Nkay9zcmMvY2xpZW50L2NsaWVudC9hcGkucmVzdWx0LnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQzs7QUFFM0MsK0JBQStCO0FBRS9CLE1BQU0sT0FBTyxnQkFBZ0I7SUFEN0I7UUFFWSxhQUFRLEdBQWdCLEVBQUUsQ0FBQztLQVl0QztJQVhHLElBQVcsT0FBTztRQUNkLE9BQU8sSUFBSSxDQUFDLFFBQVEsQ0FBQztJQUN6QixDQUFDO0lBRUQsR0FBRyxDQUFDLE1BQWlCO1FBQ2pCLElBQUksQ0FBQyxRQUFRLEdBQUcsQ0FBQyxNQUFNLEVBQUUsR0FBRyxJQUFJLENBQUMsUUFBUSxDQUFDLEtBQUssQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUMsQ0FBQztJQUM1RCxDQUFDO0lBRUQsS0FBSztRQUNELElBQUksQ0FBQyxRQUFRLEdBQUcsRUFBRSxDQUFDO0lBQ3ZCLENBQUM7OEdBWlEsZ0JBQWdCO2tIQUFoQixnQkFBZ0I7OzJGQUFoQixnQkFBZ0I7a0JBRDVCLFVBQVU7O0FBZ0JYLE1BQU0sT0FBTyxTQUFTO0lBRWxCLElBQVcsT0FBTztRQUNkLE9BQU8sSUFBSSxDQUFDLFFBQVEsQ0FBQztJQUN6QixDQUFDO0lBR0QsSUFBVyxTQUFTO1FBQ2hCLE9BQU8sSUFBSSxDQUFDLFVBQVUsQ0FBQztJQUMzQixDQUFDO0lBR0QsSUFBVyxPQUFPO1FBQ2QsT0FBTyxJQUFJLENBQUMsUUFBUSxDQUFDO0lBQ3pCLENBQUM7SUFHRCxJQUFXLFFBQVE7UUFDZixPQUFPLElBQUksQ0FBQyxTQUFTLENBQUM7SUFDMUIsQ0FBQztJQUVELFlBQVksT0FBZSxFQUFFLFNBQWtCLEVBQUUsT0FBYSxFQUFFLFFBQWM7UUFDMUUsSUFBSSxDQUFDLFFBQVEsR0FBRyxPQUFPLENBQUM7UUFDeEIsSUFBSSxDQUFDLFVBQVUsR0FBRyxTQUFTLENBQUM7UUFDNUIsSUFBSSxDQUFDLFFBQVEsR0FBRyxPQUFPLENBQUM7UUFDeEIsSUFBSSxDQUFDLFNBQVMsR0FBRyxRQUFRLENBQUM7SUFDOUIsQ0FBQztDQUNKIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG4vLyB0c2xpbnQ6ZGlzYWJsZTp2YXJpYWJsZS1uYW1lXG5ASW5qZWN0YWJsZSgpXG5leHBvcnQgY2xhc3MgQXBpUmVzdWx0U2VydmljZSB7XG4gICAgcHJpdmF0ZSBfcmVzdWx0czogQXBpUmVzdWx0W10gPSBbXTtcbiAgICBwdWJsaWMgZ2V0IHJlc3VsdHMoKTogQXBpUmVzdWx0W10ge1xuICAgICAgICByZXR1cm4gdGhpcy5fcmVzdWx0cztcbiAgICB9XG5cbiAgICBhZGQocmVzdWx0OiBBcGlSZXN1bHQpIHtcbiAgICAgICAgdGhpcy5fcmVzdWx0cyA9IFtyZXN1bHQsIC4uLnRoaXMuX3Jlc3VsdHMuc2xpY2UoMCwgOTkpXTtcbiAgICB9XG5cbiAgICBjbGVhcigpIHtcbiAgICAgICAgdGhpcy5fcmVzdWx0cyA9IFtdO1xuICAgIH1cbn1cblxuZXhwb3J0IGNsYXNzIEFwaVJlc3VsdCB7XG4gICAgcHJpdmF0ZSBfbWVzc2FnZTogc3RyaW5nO1xuICAgIHB1YmxpYyBnZXQgbWVzc2FnZSgpOiBzdHJpbmcge1xuICAgICAgICByZXR1cm4gdGhpcy5fbWVzc2FnZTtcbiAgICB9XG5cbiAgICBwcml2YXRlIF9zdWNjZWVkZWQ6IGJvb2xlYW47XG4gICAgcHVibGljIGdldCBzdWNjZWVkZWQoKTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiB0aGlzLl9zdWNjZWVkZWQ7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBfc3RhcnRlZDogRGF0ZTtcbiAgICBwdWJsaWMgZ2V0IHN0YXJ0ZWQoKTogRGF0ZSB7XG4gICAgICAgIHJldHVybiB0aGlzLl9zdGFydGVkO1xuICAgIH1cblxuICAgIHByaXZhdGUgX2ZpbmlzaGVkOiBEYXRlO1xuICAgIHB1YmxpYyBnZXQgZmluaXNoZWQoKTogRGF0ZSB7XG4gICAgICAgIHJldHVybiB0aGlzLl9maW5pc2hlZDtcbiAgICB9XG5cbiAgICBjb25zdHJ1Y3RvcihtZXNzYWdlOiBzdHJpbmcsIHN1Y2NlZWRlZDogYm9vbGVhbiwgc3RhcnRlZDogRGF0ZSwgZmluaXNoZWQ6IERhdGUpIHtcbiAgICAgICAgdGhpcy5fbWVzc2FnZSA9IG1lc3NhZ2U7XG4gICAgICAgIHRoaXMuX3N1Y2NlZWRlZCA9IHN1Y2NlZWRlZDtcbiAgICAgICAgdGhpcy5fc3RhcnRlZCA9IHN0YXJ0ZWQ7XG4gICAgICAgIHRoaXMuX2ZpbmlzaGVkID0gZmluaXNoZWQ7XG4gICAgfVxufVxuIl19
|
|
@@ -1,13 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* HTTP Headers
|
|
3
|
-
*/
|
|
4
|
-
export const HTTP_HEADERS = Object.freeze({
|
|
5
|
-
Authorization: 'Authorization',
|
|
6
|
-
etag: 'etag',
|
|
7
|
-
// Angular is dealing with case sensitive links despite the specification
|
|
8
|
-
// https://github.com/angular/angular/issues/6142
|
|
9
|
-
link: 'link',
|
|
10
|
-
Link: 'Link',
|
|
11
|
-
x_vcloud_authorization: 'x-vcloud-authorization'
|
|
12
|
-
});
|
|
13
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29uc3RhbnRzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdmNkL3Nkay9zcmMvY2xpZW50L2NsaWVudC9jb25zdGFudHMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7O0dBRUc7QUFDSCxNQUFNLENBQUMsTUFBTSxZQUFZLEdBQUcsTUFBTSxDQUFDLE1BQU0sQ0FBQztJQUV0QyxhQUFhLEVBQUUsZUFBZTtJQUU5QixJQUFJLEVBQUUsTUFBTTtJQUVaLHlFQUF5RTtJQUN6RSxpREFBaUQ7SUFDakQsSUFBSSxFQUFFLE1BQU07SUFDWixJQUFJLEVBQUUsTUFBTTtJQUVaLHNCQUFzQixFQUFFLHdCQUF3QjtDQUNuRCxDQUFDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIEhUVFAgSGVhZGVyc1xuICovXG5leHBvcnQgY29uc3QgSFRUUF9IRUFERVJTID0gT2JqZWN0LmZyZWV6ZSh7XG5cbiAgICBBdXRob3JpemF0aW9uOiAnQXV0aG9yaXphdGlvbicsXG5cbiAgICBldGFnOiAnZXRhZycsXG5cbiAgICAvLyBBbmd1bGFyIGlzIGRlYWxpbmcgd2l0aCBjYXNlIHNlbnNpdGl2ZSBsaW5rcyBkZXNwaXRlIHRoZSBzcGVjaWZpY2F0aW9uXG4gICAgLy8gaHR0cHM6Ly9naXRodWIuY29tL2FuZ3VsYXIvYW5ndWxhci9pc3N1ZXMvNjE0MlxuICAgIGxpbms6ICdsaW5rJyxcbiAgICBMaW5rOiAnTGluaycsXG5cbiAgICB4X3ZjbG91ZF9hdXRob3JpemF0aW9uOiAneC12Y2xvdWQtYXV0aG9yaXphdGlvbidcbn0pO1xuIl19
|
|
@@ -1,9 +0,0 @@
|
|
|
1
|
-
export * from './api.result.service';
|
|
2
|
-
export * from './vcd.http.client';
|
|
3
|
-
export * from './vcd.api.client';
|
|
4
|
-
export * from './vcd.transfer.client';
|
|
5
|
-
export * from './request.headers.interceptor';
|
|
6
|
-
export * from './logging.interceptor';
|
|
7
|
-
export * from './response.normalization.interceptor';
|
|
8
|
-
export * from './types';
|
|
9
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy92Y2Qvc2RrL3NyYy9jbGllbnQvY2xpZW50L2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLGNBQWMsc0JBQXNCLENBQUM7QUFDckMsY0FBYyxtQkFBbUIsQ0FBQztBQUNsQyxjQUFjLGtCQUFrQixDQUFDO0FBQ2pDLGNBQWMsdUJBQXVCLENBQUM7QUFDdEMsY0FBYywrQkFBK0IsQ0FBQztBQUM5QyxjQUFjLHVCQUF1QixDQUFDO0FBQ3RDLGNBQWMsc0NBQXNDLENBQUM7QUFDckQsY0FBYyxTQUFTLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgKiBmcm9tICcuL2FwaS5yZXN1bHQuc2VydmljZSc7XG5leHBvcnQgKiBmcm9tICcuL3ZjZC5odHRwLmNsaWVudCc7XG5leHBvcnQgKiBmcm9tICcuL3ZjZC5hcGkuY2xpZW50JztcbmV4cG9ydCAqIGZyb20gJy4vdmNkLnRyYW5zZmVyLmNsaWVudCc7XG5leHBvcnQgKiBmcm9tICcuL3JlcXVlc3QuaGVhZGVycy5pbnRlcmNlcHRvcic7XG5leHBvcnQgKiBmcm9tICcuL2xvZ2dpbmcuaW50ZXJjZXB0b3InO1xuZXhwb3J0ICogZnJvbSAnLi9yZXNwb25zZS5ub3JtYWxpemF0aW9uLmludGVyY2VwdG9yJztcbmV4cG9ydCAqIGZyb20gJy4vdHlwZXMnO1xuIl19
|
|
@@ -1,44 +0,0 @@
|
|
|
1
|
-
import { Injectable, Optional } from '@angular/core';
|
|
2
|
-
import { HttpResponse } from '@angular/common/http';
|
|
3
|
-
import { finalize, tap } from 'rxjs/operators';
|
|
4
|
-
import { ApiResult } from './api.result.service';
|
|
5
|
-
import * as i0 from "@angular/core";
|
|
6
|
-
import * as i1 from "./api.result.service";
|
|
7
|
-
// tslint:disable:variable-name
|
|
8
|
-
export class LoggingInterceptor {
|
|
9
|
-
set enabled(enabled) {
|
|
10
|
-
this._enabled = enabled;
|
|
11
|
-
if (this._enabled && this._outputToConsole) {
|
|
12
|
-
console.warn('API logging enabled but no provider found for ApiResultService. Results will be output to the console.');
|
|
13
|
-
}
|
|
14
|
-
}
|
|
15
|
-
constructor(apiResultService) {
|
|
16
|
-
this.apiResultService = apiResultService;
|
|
17
|
-
this._enabled = false;
|
|
18
|
-
this._outputToConsole = !this.apiResultService;
|
|
19
|
-
}
|
|
20
|
-
intercept(req, next) {
|
|
21
|
-
if (!this._enabled) {
|
|
22
|
-
return next.handle(req);
|
|
23
|
-
}
|
|
24
|
-
const started = new Date();
|
|
25
|
-
let succeeded;
|
|
26
|
-
return next.handle(req)
|
|
27
|
-
.pipe(tap(event => succeeded = event instanceof HttpResponse ? true : false, error => succeeded = false), finalize(() => {
|
|
28
|
-
if (this._outputToConsole) {
|
|
29
|
-
console.log(`${req.method} ${req.urlWithParams} completed in ${Date.now() - started.getTime()} ms. Success: ${succeeded}`);
|
|
30
|
-
}
|
|
31
|
-
else {
|
|
32
|
-
this.apiResultService.add(new ApiResult(`${req.method} ${req.urlWithParams}`, succeeded, started, new Date()));
|
|
33
|
-
}
|
|
34
|
-
}));
|
|
35
|
-
}
|
|
36
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.1.2", ngImport: i0, type: LoggingInterceptor, deps: [{ token: i1.ApiResultService, optional: true }], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
37
|
-
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.1.2", ngImport: i0, type: LoggingInterceptor }); }
|
|
38
|
-
}
|
|
39
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.1.2", ngImport: i0, type: LoggingInterceptor, decorators: [{
|
|
40
|
-
type: Injectable
|
|
41
|
-
}], ctorParameters: () => [{ type: i1.ApiResultService, decorators: [{
|
|
42
|
-
type: Optional
|
|
43
|
-
}] }] });
|
|
44
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibG9nZ2luZy5pbnRlcmNlcHRvci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3ZjZC9zZGsvc3JjL2NsaWVudC9jbGllbnQvbG9nZ2luZy5pbnRlcmNlcHRvci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNyRCxPQUFPLEVBRVEsWUFBWSxFQUMxQixNQUFNLHNCQUFzQixDQUFDO0FBRzlCLE9BQU8sRUFBRSxRQUFRLEVBQUUsR0FBRyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDL0MsT0FBTyxFQUFvQixTQUFTLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQzs7O0FBRW5FLCtCQUErQjtBQUUvQixNQUFNLE9BQU8sa0JBQWtCO0lBRzdCLElBQUksT0FBTyxDQUFDLE9BQWdCO1FBQzFCLElBQUksQ0FBQyxRQUFRLEdBQUcsT0FBTyxDQUFDO1FBQ3hCLElBQUksSUFBSSxDQUFDLFFBQVEsSUFBSSxJQUFJLENBQUMsZ0JBQWdCLEVBQUUsQ0FBQztZQUMzQyxPQUFPLENBQUMsSUFBSSxDQUFDLHlHQUF5RyxDQUFDLENBQUM7UUFDMUgsQ0FBQztJQUNILENBQUM7SUFFRCxZQUFnQyxnQkFBa0M7UUFBbEMscUJBQWdCLEdBQWhCLGdCQUFnQixDQUFrQjtRQVIxRCxhQUFRLEdBQUcsS0FBSyxDQUFDO1FBU3ZCLElBQUksQ0FBQyxnQkFBZ0IsR0FBRyxDQUFDLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQztJQUNqRCxDQUFDO0lBRUQsU0FBUyxDQUFDLEdBQXFCLEVBQUUsSUFBaUI7UUFDaEQsSUFBSSxDQUFDLElBQUksQ0FBQyxRQUFRLEVBQUUsQ0FBQztZQUNuQixPQUFPLElBQUksQ0FBQyxNQUFNLENBQUMsR0FBRyxDQUFDLENBQUM7UUFDMUIsQ0FBQztRQUVELE1BQU0sT0FBTyxHQUFHLElBQUksSUFBSSxFQUFFLENBQUM7UUFDM0IsSUFBSSxTQUFrQixDQUFDO1FBRXZCLE9BQU8sSUFBSSxDQUFDLE1BQU0sQ0FBQyxHQUFHLENBQUM7YUFDcEIsSUFBSSxDQUNILEdBQUcsQ0FDRCxLQUFLLENBQUMsRUFBRSxDQUFDLFNBQVMsR0FBRyxLQUFLLFlBQVksWUFBWSxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLEtBQUssRUFDakUsS0FBSyxDQUFDLEVBQUUsQ0FBQyxTQUFTLEdBQUcsS0FBSyxDQUMzQixFQUNELFFBQVEsQ0FBQyxHQUFHLEVBQUU7WUFDWixJQUFJLElBQUksQ0FBQyxnQkFBZ0IsRUFBRSxDQUFDO2dCQUMxQixPQUFPLENBQUMsR0FBRyxDQUFDLEdBQUcsR0FBRyxDQUFDLE1BQU0sSUFBSSxHQUFHLENBQUMsYUFBYSxpQkFBaUIsSUFBSSxDQUFDLEdBQUcsRUFBRSxHQUFHLE9BQU8sQ0FBQyxPQUFPLEVBQUUsa0JBQWtCLFNBQVMsRUFBRSxDQUFDLENBQUM7WUFDOUgsQ0FBQztpQkFBTSxDQUFDO2dCQUNOLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxHQUFHLENBQUMsSUFBSSxTQUFTLENBQUMsR0FBRyxHQUFHLENBQUMsTUFBTSxJQUFJLEdBQUcsQ0FBQyxhQUFhLEVBQUUsRUFBRSxTQUFTLEVBQUUsT0FBTyxFQUFFLElBQUksSUFBSSxFQUFFLENBQUMsQ0FBQyxDQUFDO1lBQ2pILENBQUM7UUFDSCxDQUFDLENBQUMsQ0FDSCxDQUFDO0lBQ04sQ0FBQzs4R0FwQ1Usa0JBQWtCO2tIQUFsQixrQkFBa0I7OzJGQUFsQixrQkFBa0I7a0JBRDlCLFVBQVU7OzBCQVdJLFFBQVEiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlLCBPcHRpb25hbCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtcbiAgSHR0cEV2ZW50LCBIdHRwSW50ZXJjZXB0b3IsIEh0dHBIYW5kbGVyLFxuICBIdHRwUmVxdWVzdCwgSHR0cFJlc3BvbnNlXG59IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbi9odHRwJztcblxuaW1wb3J0IHsgT2JzZXJ2YWJsZSB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgZmluYWxpemUsIHRhcCB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcbmltcG9ydCB7IEFwaVJlc3VsdFNlcnZpY2UsIEFwaVJlc3VsdCB9IGZyb20gJy4vYXBpLnJlc3VsdC5zZXJ2aWNlJztcblxuLy8gdHNsaW50OmRpc2FibGU6dmFyaWFibGUtbmFtZVxuQEluamVjdGFibGUoKVxuZXhwb3J0IGNsYXNzIExvZ2dpbmdJbnRlcmNlcHRvciBpbXBsZW1lbnRzIEh0dHBJbnRlcmNlcHRvciB7XG4gIHByaXZhdGUgX291dHB1dFRvQ29uc29sZTogYm9vbGVhbjtcbiAgcHJpdmF0ZSBfZW5hYmxlZCA9IGZhbHNlO1xuICBzZXQgZW5hYmxlZChlbmFibGVkOiBib29sZWFuKSB7XG4gICAgdGhpcy5fZW5hYmxlZCA9IGVuYWJsZWQ7XG4gICAgaWYgKHRoaXMuX2VuYWJsZWQgJiYgdGhpcy5fb3V0cHV0VG9Db25zb2xlKSB7XG4gICAgICBjb25zb2xlLndhcm4oJ0FQSSBsb2dnaW5nIGVuYWJsZWQgYnV0IG5vIHByb3ZpZGVyIGZvdW5kIGZvciBBcGlSZXN1bHRTZXJ2aWNlLiAgUmVzdWx0cyB3aWxsIGJlIG91dHB1dCB0byB0aGUgY29uc29sZS4nKTtcbiAgICB9XG4gIH1cblxuICBjb25zdHJ1Y3RvcihAT3B0aW9uYWwoKSBwcml2YXRlIGFwaVJlc3VsdFNlcnZpY2U6IEFwaVJlc3VsdFNlcnZpY2UpIHtcbiAgICB0aGlzLl9vdXRwdXRUb0NvbnNvbGUgPSAhdGhpcy5hcGlSZXN1bHRTZXJ2aWNlO1xuICB9XG5cbiAgaW50ZXJjZXB0KHJlcTogSHR0cFJlcXVlc3Q8YW55PiwgbmV4dDogSHR0cEhhbmRsZXIpOiBPYnNlcnZhYmxlPEh0dHBFdmVudDxhbnk+PiB7XG4gICAgaWYgKCF0aGlzLl9lbmFibGVkKSB7XG4gICAgICByZXR1cm4gbmV4dC5oYW5kbGUocmVxKTtcbiAgICB9XG5cbiAgICBjb25zdCBzdGFydGVkID0gbmV3IERhdGUoKTtcbiAgICBsZXQgc3VjY2VlZGVkOiBib29sZWFuO1xuXG4gICAgcmV0dXJuIG5leHQuaGFuZGxlKHJlcSlcbiAgICAgIC5waXBlKFxuICAgICAgICB0YXAoXG4gICAgICAgICAgZXZlbnQgPT4gc3VjY2VlZGVkID0gZXZlbnQgaW5zdGFuY2VvZiBIdHRwUmVzcG9uc2UgPyB0cnVlIDogZmFsc2UsXG4gICAgICAgICAgZXJyb3IgPT4gc3VjY2VlZGVkID0gZmFsc2VcbiAgICAgICAgKSxcbiAgICAgICAgZmluYWxpemUoKCkgPT4ge1xuICAgICAgICAgIGlmICh0aGlzLl9vdXRwdXRUb0NvbnNvbGUpIHtcbiAgICAgICAgICAgIGNvbnNvbGUubG9nKGAke3JlcS5tZXRob2R9ICR7cmVxLnVybFdpdGhQYXJhbXN9IGNvbXBsZXRlZCBpbiAke0RhdGUubm93KCkgLSBzdGFydGVkLmdldFRpbWUoKX0gbXMuICBTdWNjZXNzOiAke3N1Y2NlZWRlZH1gKTtcbiAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgdGhpcy5hcGlSZXN1bHRTZXJ2aWNlLmFkZChuZXcgQXBpUmVzdWx0KGAke3JlcS5tZXRob2R9ICR7cmVxLnVybFdpdGhQYXJhbXN9YCwgc3VjY2VlZGVkLCBzdGFydGVkLCBuZXcgRGF0ZSgpKSk7XG4gICAgICAgICAgfVxuICAgICAgICB9KVxuICAgICAgKTtcbiAgfVxufVxuIl19
|
|
@@ -1,123 +0,0 @@
|
|
|
1
|
-
import { Injectable } from '@angular/core';
|
|
2
|
-
import { HttpResponse } from '@angular/common/http';
|
|
3
|
-
import { of } from 'rxjs';
|
|
4
|
-
import { filter, first, map, switchMap } from 'rxjs/operators';
|
|
5
|
-
import { parseHeaderHateoasLinks } from '.';
|
|
6
|
-
import { HTTP_HEADERS } from './constants';
|
|
7
|
-
import { DecodedJwt } from "../jwt/decoded-jwt";
|
|
8
|
-
import * as i0 from "@angular/core";
|
|
9
|
-
import * as i1 from "../../common";
|
|
10
|
-
// tslint:disable:variable-name
|
|
11
|
-
export class RequestHeadersInterceptor {
|
|
12
|
-
set enabled(_enabled) {
|
|
13
|
-
this._enabled = _enabled;
|
|
14
|
-
}
|
|
15
|
-
set actAs(_actAs) {
|
|
16
|
-
this._actAs = _actAs;
|
|
17
|
-
}
|
|
18
|
-
set actAsOrgName(_actAsOrgName) {
|
|
19
|
-
this._actAsOrgName = _actAsOrgName;
|
|
20
|
-
}
|
|
21
|
-
get version() {
|
|
22
|
-
return this._version;
|
|
23
|
-
}
|
|
24
|
-
set version(_version) {
|
|
25
|
-
this._version = _version;
|
|
26
|
-
}
|
|
27
|
-
set authentication(_authentication) {
|
|
28
|
-
this._authentication = _authentication;
|
|
29
|
-
this._authenticationHeader = (this._authentication && this._authentication.length > 32) ?
|
|
30
|
-
HTTP_HEADERS.Authorization : HTTP_HEADERS.x_vcloud_authorization;
|
|
31
|
-
}
|
|
32
|
-
constructor(authTokenHolderService) {
|
|
33
|
-
this.authTokenHolderService = authTokenHolderService;
|
|
34
|
-
this._enabled = true;
|
|
35
|
-
this._version = '';
|
|
36
|
-
this._authenticationHeader = HTTP_HEADERS.Authorization;
|
|
37
|
-
}
|
|
38
|
-
intercept(req, next) {
|
|
39
|
-
let headers = req.headers;
|
|
40
|
-
if (!headers.has('Accept')) {
|
|
41
|
-
headers = this.setAcceptHeader(headers);
|
|
42
|
-
}
|
|
43
|
-
if (!headers.has('Content-Type')) {
|
|
44
|
-
headers = this.setContentTypeHeader(headers, req.url);
|
|
45
|
-
}
|
|
46
|
-
if (this._authentication && !headers.has(HTTP_HEADERS.Authorization)) {
|
|
47
|
-
headers = headers.set(this._authenticationHeader, this._authentication);
|
|
48
|
-
}
|
|
49
|
-
/**
|
|
50
|
-
* Covers the case where the User set the ActAs token himself
|
|
51
|
-
*/
|
|
52
|
-
if (!headers.has('X-VMWARE-VCLOUD-TENANT-CONTEXT') && this._actAs) {
|
|
53
|
-
headers = headers.set('X-VMWARE-VCLOUD-TENANT-CONTEXT', this._actAs);
|
|
54
|
-
}
|
|
55
|
-
/**
|
|
56
|
-
* Covers the case where the User set the ActAs token himself
|
|
57
|
-
*/
|
|
58
|
-
if (!headers.has('X-VMWARE-VCLOUD-AUTH-CONTEXT') && this._actAsOrgName) {
|
|
59
|
-
headers = headers.set('X-VMWARE-VCLOUD-AUTH-CONTEXT', this._actAsOrgName);
|
|
60
|
-
}
|
|
61
|
-
const customReq = req.clone({
|
|
62
|
-
headers
|
|
63
|
-
});
|
|
64
|
-
return this.updateToken().pipe(map((jwt) => {
|
|
65
|
-
const doesItUseJWT = (this._authentication && this._authentication.length > 32);
|
|
66
|
-
if (doesItUseJWT) {
|
|
67
|
-
this._authentication = `Bearer ${jwt}`;
|
|
68
|
-
}
|
|
69
|
-
return customReq.clone({ setHeaders: { [this._authenticationHeader]: this._authentication } });
|
|
70
|
-
}), switchMap((clonedRequest) => this.handleRequest(next, clonedRequest)));
|
|
71
|
-
}
|
|
72
|
-
handleRequest(next, clonedRequest) {
|
|
73
|
-
return next.handle(clonedRequest).pipe(map((res) => {
|
|
74
|
-
if (res instanceof HttpResponse) {
|
|
75
|
-
if (!res.body || !res.headers) {
|
|
76
|
-
return res;
|
|
77
|
-
}
|
|
78
|
-
if (res.headers.has(HTTP_HEADERS.link)) {
|
|
79
|
-
res.body.link = parseHeaderHateoasLinks(res.headers.get(HTTP_HEADERS.link));
|
|
80
|
-
}
|
|
81
|
-
if (res.headers.has(HTTP_HEADERS.Link)) {
|
|
82
|
-
res.body.link = parseHeaderHateoasLinks(res.headers.get(HTTP_HEADERS.Link));
|
|
83
|
-
}
|
|
84
|
-
if (res.headers.has(HTTP_HEADERS.etag)) {
|
|
85
|
-
res.body.etag = res.headers.get(HTTP_HEADERS.etag);
|
|
86
|
-
}
|
|
87
|
-
}
|
|
88
|
-
return res;
|
|
89
|
-
}));
|
|
90
|
-
}
|
|
91
|
-
setAcceptHeader(headers) {
|
|
92
|
-
const value = headers.get('_multisite');
|
|
93
|
-
headers = headers.delete('_multisite');
|
|
94
|
-
return headers.set('Accept', [
|
|
95
|
-
`application/*+json;version=${this._version}${value ? `;multisite=${value}` : ''}`,
|
|
96
|
-
`application/json;version=${this._version}${value ? `;multisite=${value}` : ''}`
|
|
97
|
-
]);
|
|
98
|
-
}
|
|
99
|
-
setContentTypeHeader(headers, url) {
|
|
100
|
-
if (url.indexOf('cloudapi') > -1) {
|
|
101
|
-
return headers.set('Content-Type', 'application/json');
|
|
102
|
-
}
|
|
103
|
-
else {
|
|
104
|
-
return headers.set('Content-Type', 'application/*+json');
|
|
105
|
-
}
|
|
106
|
-
}
|
|
107
|
-
updateToken() {
|
|
108
|
-
if (!this.authTokenHolderService.jwtAsync) {
|
|
109
|
-
return of(this.authTokenHolderService.jwt);
|
|
110
|
-
}
|
|
111
|
-
return this.authTokenHolderService.jwtAsync.pipe(filter((jwt) => !this.isExpired(jwt)), first());
|
|
112
|
-
}
|
|
113
|
-
isExpired(jwt) {
|
|
114
|
-
const decodedJwt = new DecodedJwt(jwt);
|
|
115
|
-
return decodedJwt.isExpired();
|
|
116
|
-
}
|
|
117
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.1.2", ngImport: i0, type: RequestHeadersInterceptor, deps: [{ token: i1.AuthTokenHolderService }], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
118
|
-
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.1.2", ngImport: i0, type: RequestHeadersInterceptor }); }
|
|
119
|
-
}
|
|
120
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.1.2", ngImport: i0, type: RequestHeadersInterceptor, decorators: [{
|
|
121
|
-
type: Injectable
|
|
122
|
-
}], ctorParameters: () => [{ type: i1.AuthTokenHolderService }] });
|
|
123
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVxdWVzdC5oZWFkZXJzLmludGVyY2VwdG9yLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdmNkL3Nkay9zcmMvY2xpZW50L2NsaWVudC9yZXF1ZXN0LmhlYWRlcnMuaW50ZXJjZXB0b3IudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUMzQyxPQUFPLEVBQXFFLFlBQVksRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBQ3ZILE9BQU8sRUFBYyxFQUFFLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDdEMsT0FBTyxFQUFFLE1BQU0sRUFBRSxLQUFLLEVBQUUsR0FBRyxFQUFFLFNBQVMsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQy9ELE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxNQUFNLEdBQUcsQ0FBQztBQUM1QyxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sYUFBYSxDQUFDO0FBRTNDLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQzs7O0FBRWhELCtCQUErQjtBQUUvQixNQUFNLE9BQU8seUJBQXlCO0lBRWxDLElBQUksT0FBTyxDQUFDLFFBQWlCO1FBQ3pCLElBQUksQ0FBQyxRQUFRLEdBQUcsUUFBUSxDQUFDO0lBQzdCLENBQUM7SUFHRCxJQUFJLEtBQUssQ0FBQyxNQUFjO1FBQ3BCLElBQUksQ0FBQyxNQUFNLEdBQUcsTUFBTSxDQUFDO0lBQ3pCLENBQUM7SUFHRCxJQUFJLFlBQVksQ0FBQyxhQUFxQjtRQUNsQyxJQUFJLENBQUMsYUFBYSxHQUFHLGFBQWEsQ0FBQztJQUN2QyxDQUFDO0lBR0QsSUFBSSxPQUFPO1FBQ1AsT0FBTyxJQUFJLENBQUMsUUFBUSxDQUFDO0lBQ3pCLENBQUM7SUFDRCxJQUFJLE9BQU8sQ0FBQyxRQUFnQjtRQUN4QixJQUFJLENBQUMsUUFBUSxHQUFHLFFBQVEsQ0FBQztJQUM3QixDQUFD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QUFDO0lBRU8sU0FBUyxDQUFDLEdBQVc7UUFDekIsTUFBTSxVQUFVLEdBQUcsSUFBSSxVQUFVLENBQUMsR0FBRyxDQUFDLENBQUM7UUFDdkMsT0FBTyxVQUFVLENBQUMsU0FBUyxFQUFFLENBQUM7SUFDbEMsQ0FBQzs4R0EzSVEseUJBQXlCO2tIQUF6Qix5QkFBeUI7OzJGQUF6Qix5QkFBeUI7a0JBRHJDLFVBQVUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBIdHRwSGFuZGxlciwgSHR0cEludGVyY2VwdG9yLCBIdHRwUmVxdWVzdCwgSHR0cEV2ZW50LCBIdHRwSGVhZGVycywgSHR0cFJlc3BvbnNlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uL2h0dHAnO1xuaW1wb3J0IHsgT2JzZXJ2YWJsZSwgb2YgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IGZpbHRlciwgZmlyc3QsIG1hcCwgc3dpdGNoTWFwIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuaW1wb3J0IHsgcGFyc2VIZWFkZXJIYXRlb2FzTGlua3MgfSBmcm9tICcuJztcbmltcG9ydCB7IEhUVFBfSEVBREVSUyB9IGZyb20gJy4vY29uc3RhbnRzJztcbmltcG9ydCB7IEF1dGhUb2tlbkhvbGRlclNlcnZpY2UgfSBmcm9tIFwiLi4vLi4vY29tbW9uXCI7XG5pbXBvcnQgeyBEZWNvZGVkSnd0IH0gZnJvbSBcIi4uL2p3dC9kZWNvZGVkLWp3dFwiO1xuXG4vLyB0c2xpbnQ6ZGlzYWJsZTp2YXJpYWJsZS1uYW1lXG5ASW5qZWN0YWJsZSgpXG5leHBvcnQgY2xhc3MgUmVxdWVzdEhlYWRlcnNJbnRlcmNlcHRvciBpbXBsZW1lbnRzIEh0dHBJbnRlcmNlcHRvciB7XG4gICAgcHJpdmF0ZSBfZW5hYmxlZCA9IHRydWU7XG4gICAgc2V0IGVuYWJsZWQoX2VuYWJsZWQ6IGJvb2xlYW4pIHtcbiAgICAgICAgdGhpcy5fZW5hYmxlZCA9IF9lbmFibGVkO1xuICAgIH1cblxuICAgIHByaXZhdGUgX2FjdEFzOiBzdHJpbmc7XG4gICAgc2V0IGFjdEFzKF9hY3RBczogc3RyaW5nKSB7XG4gICAgICAgIHRoaXMuX2FjdEFzID0gX2FjdEFzO1xuICAgIH1cbiAgICBcbiAgICBwcml2YXRlIF9hY3RBc09yZ05hbWU6IHN0cmluZztcbiAgICBzZXQgYWN0QXNPcmdOYW1lKF9hY3RBc09yZ05hbWU6IHN0cmluZykge1xuICAgICAgICB0aGlzLl9hY3RBc09yZ05hbWUgPSBfYWN0QXNPcmdOYW1lO1xuICAgIH1cblxuICAgIHByaXZhdGUgX3ZlcnNpb24gPSAnJztcbiAgICBnZXQgdmVyc2lvbigpOiBzdHJpbmcge1xuICAgICAgICByZXR1cm4gdGhpcy5fdmVyc2lvbjtcbiAgICB9XG4gICAgc2V0IHZlcnNpb24oX3ZlcnNpb246IHN0cmluZykge1xuICAgICAgICB0aGlzLl92ZXJzaW9uID0gX3ZlcnNpb247XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBfYXV0aGVudGljYXRpb25IZWFkZXI6IHN0cmluZyA9IEhUVFBfSEVBREVSUy5BdXRob3JpemF0aW9uO1xuICAgIHByaXZhdGUgX2F1dGhlbnRpY2F0aW9uOiBzdHJpbmc7XG4gICAgc2V0IGF1dGhlbnRpY2F0aW9uKF9hdXRoZW50aWNhdGlvbjogc3RyaW5nKSB7XG4gICAgICAgIHRoaXMuX2F1dGhlbnRpY2F0aW9uID0gX2F1dGhlbnRpY2F0aW9uO1xuICAgICAgICB0aGlzLl9hdXRoZW50aWNhdGlvbkhlYWRlciA9ICh0aGlzLl9hdXRoZW50aWNhdGlvbiAmJiB0aGlzLl9hdXRoZW50aWNhdGlvbi5sZW5ndGggPiAzMikgP1xuICAgICAgICAgICAgSFRUUF9IRUFERVJTLkF1dGhvcml6YXRpb24gOiBIVFRQX0hFQURFUlMueF92Y2xvdWRfYXV0aG9yaXphdGlvbjtcbiAgICB9XG5cbiAgICBjb25zdHJ1Y3RvcihcbiAgICAgICAgcHJpdmF0ZSBhdXRoVG9rZW5Ib2xkZXJTZXJ2aWNlOiBBdXRoVG9rZW5Ib2xkZXJTZXJ2aWNlLFxuICAgICkge31cblxuICAgIGludGVyY2VwdChyZXE6IEh0dHBSZXF1ZXN0PGFueT4sIG5leHQ6IEh0dHBIYW5kbGVyKTogT2JzZXJ2YWJsZTxIdHRwRXZlbnQ8YW55Pj4ge1xuICAgICAgICBsZXQgaGVhZGVycyA9IHJlcS5oZWFkZXJzO1xuXG4gICAgICAgIGlmICghaGVhZGVycy5oYXMoJ0FjY2VwdCcpKSB7XG4gICAgICAgICAgICBoZWFkZXJzID0gdGhpcy5zZXRBY2NlcHRIZWFkZXIoaGVhZGVycyk7XG4gICAgICAgIH1cblxuICAgICAgICBpZiAoIWhlYWRlcnMuaGFzKCdDb250ZW50LVR5cGUnKSkge1xuICAgICAgICAgICAgaGVhZGVycyA9IHRoaXMuc2V0Q29udGVudFR5cGVIZWFkZXIoaGVhZGVycywgcmVxLnVybCk7XG4gICAgICAgIH1cblxuICAgICAgICBpZiAodGhpcy5fYXV0aGVudGljYXRpb24gJiYgIWhlYWRlcnMuaGFzKEhUVFBfSEVBREVSUy5BdXRob3JpemF0aW9uKSkge1xuICAgICAgICAgICAgaGVhZGVycyA9IGhlYWRlcnMuc2V0KHRoaXMuX2F1dGhlbnRpY2F0aW9uSGVhZGVyLCB0aGlzLl9hdXRoZW50aWNhdGlvbik7XG4gICAgICAgIH1cblxuICAgICAgICAvKipcbiAgICAgICAgICogQ292ZXJzIHRoZSBjYXNlIHdoZXJlIHRoZSBVc2VyIHNldCB0aGUgQWN0QXMgdG9rZW4gaGltc2VsZlxuICAgICAgICAgKi9cbiAgICAgICAgaWYgKCFoZWFkZXJzLmhhcygnWC1WTVdBUkUtVkNMT1VELVRFTkFOVC1DT05URVhUJykgJiYgdGhpcy5fYWN0QXMpIHtcbiAgICAgICAgICAgIGhlYWRlcnMgPSBoZWFkZXJzLnNldCgnWC1WTVdBUkUtVkNMT1VELVRFTkFOVC1DT05URVhUJywgdGhpcy5fYWN0QXMpO1xuICAgICAgICB9XG5cbiAgICAgICAgLyoqXG4gICAgICAgICAqIENvdmVycyB0aGUgY2FzZSB3aGVyZSB0aGUgVXNlciBzZXQgdGhlIEFjdEFzIHRva2VuIGhpbXNlbGZcbiAgICAgICAgICovXG4gICAgICAgIGlmICghaGVhZGVycy5oYXMoJ1gtVk1XQVJFLVZDTE9VRC1BVVRILUNPTlRFWFQnKSAmJiB0aGlzLl9hY3RBc09yZ05hbWUpIHtcbiAgICAgICAgICAgIGhlYWRlcnMgPSBoZWFkZXJzLnNldCgnWC1WTVdBUkUtVkNMT1VELUFVVEgtQ09OVEVYVCcsIHRoaXMuX2FjdEFzT3JnTmFtZSk7XG4gICAgICAgIH1cblxuICAgICAgICBjb25zdCBjdXN0b21SZXE6IEh0dHBSZXF1ZXN0PGFueT4gPSByZXEuY2xvbmUoe1xuICAgICAgICAgICAgaGVhZGVyc1xuICAgICAgICB9KTtcbiAgICAgICAgcmV0dXJuIHRoaXMudXBkYXRlVG9rZW4oKS5waXBlKFxuICAgICAgICAgICAgbWFwKChqd3QpID0+IHtcbiAgICAgICAgICAgICAgICBjb25zdCBkb2VzSXRVc2VKV1QgPSAodGhpcy5fYXV0aGVudGljYXRpb24gJiYgdGhpcy5fYXV0aGVudGljYXRpb24ubGVuZ3RoID4gMzIpO1xuICAgICAgICAgICAgICAgIGlmIChkb2VzSXRVc2VKV1QpIHtcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5fYXV0aGVudGljYXRpb24gPSBgQmVhcmVyICR7and0fWA7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIHJldHVybiBjdXN0b21SZXEuY2xvbmUoeyBzZXRIZWFkZXJzOiB7IFt0aGlzLl9hdXRoZW50aWNhdGlvbkhlYWRlcl06IHRoaXMuX2F1dGhlbnRpY2F0aW9uIH0gfSk7XG4gICAgICAgICAgICB9KSxcbiAgICAgICAgICAgIHN3aXRjaE1hcCgoY2xvbmVkUmVxdWVzdCkgPT4gdGhpcy5oYW5kbGVSZXF1ZXN0KG5leHQsIGNsb25lZFJlcXVlc3QpKSxcbiAgICAgICAgKTtcbiAgICB9XG5cbiAgICBwcml2YXRlIGhhbmRsZVJlcXVlc3QobmV4dDogSHR0cEhhbmRsZXIsIGNsb25lZFJlcXVlc3Q6IEh0dHBSZXF1ZXN0PGFueT4pIHtcbiAgICAgICAgcmV0dXJuIG5leHQuaGFuZGxlKGNsb25lZFJlcXVlc3QpLnBpcGUoXG4gICAgICAgICAgICBtYXAoKHJlczogSHR0cEV2ZW50PGFueT4pID0+IHtcbiAgICAgICAgICAgICAgICBpZiAocmVzIGluc3RhbmNlb2YgSHR0cFJlc3BvbnNlKSB7XG4gICAgICAgICAgICAgICAgICAgIGlmICghcmVzLmJvZHkgfHwgIXJlcy5oZWFkZXJzKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gcmVzO1xuICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgaWYgKHJlcy5oZWFkZXJzLmhhcyhIVFRQX0hFQURFUlMubGluaykpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHJlcy5ib2R5LmxpbmsgPSBwYXJzZUhlYWRlckhhdGVvYXNMaW5rcyhyZXMuaGVhZGVycy5nZXQoSFRUUF9IRUFERVJTLmxpbmspKTtcbiAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgIGlmIChyZXMuaGVhZGVycy5oYXMoSFRUUF9IRUFERVJTLkxpbmspKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICByZXMuYm9keS5saW5rID0gcGFyc2VIZWFkZXJIYXRlb2FzTGlua3MocmVzLmhlYWRlcnMuZ2V0KEhUVFBfSEVBREVSUy5MaW5rKSk7XG4gICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICBpZiAocmVzLmhlYWRlcnMuaGFzKEhUVFBfSEVBREVSUy5ldGFnKSkge1xuICAgICAgICAgICAgICAgICAgICAgICAgcmVzLmJvZHkuZXRhZyA9IHJlcy5oZWFkZXJzLmdldChIVFRQX0hFQURFUlMuZXRhZyk7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgcmV0dXJuIHJlcztcbiAgICAgICAgICAgIH0pXG4gICAgICAgICk7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBzZXRBY2NlcHRIZWFkZXIoaGVhZGVyczogSHR0cEhlYWRlcnMpOiBIdHRwSGVhZGVycyB7XG4gICAgICAgIGNvbnN0IHZhbHVlID0gaGVhZGVycy5nZXQoJ19tdWx0aXNpdGUnKTtcbiAgICAgICAgaGVhZGVycyA9IGhlYWRlcnMuZGVsZXRlKCdfbXVsdGlzaXRlJyk7XG5cbiAgICAgICAgcmV0dXJuIGhlYWRlcnMuc2V0KFxuICAgICAgICAgICAgJ0FjY2VwdCcsIFtcbiAgICAgICAgICAgICAgICBgYXBwbGljYXRpb24vKitqc29uO3ZlcnNpb249JHt0aGlzLl92ZXJzaW9ufSR7dmFsdWUgPyBgO211bHRpc2l0ZT0ke3ZhbHVlfWAgOiAnJ31gLFxuICAgICAgICAgICAgICAgIGBhcHBsaWNhdGlvbi9qc29uO3ZlcnNpb249JHt0aGlzLl92ZXJzaW9ufSR7dmFsdWUgPyBgO211bHRpc2l0ZT0ke3ZhbHVlfWAgOiAnJ31gXG4gICAgICAgICAgICBdXG4gICAgICAgICk7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBzZXRDb250ZW50VHlwZUhlYWRlcihoZWFkZXJzOiBIdHRwSGVhZGVycywgdXJsOiBzdHJpbmcpOiBIdHRwSGVhZGVycyB7XG4gICAgICAgIGlmICh1cmwuaW5kZXhPZignY2xvdWRhcGknKSA+IC0xKSB7XG4gICAgICAgICAgICByZXR1cm4gaGVhZGVycy5zZXQoJ0NvbnRlbnQtVHlwZScsICdhcHBsaWNhdGlvbi9qc29uJyk7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICByZXR1cm4gaGVhZGVycy5zZXQoJ0NvbnRlbnQtVHlwZScsICdhcHBsaWNhdGlvbi8qK2pzb24nKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIHByaXZhdGUgdXBkYXRlVG9rZW4oKTogT2JzZXJ2YWJsZTxzdHJpbmc+IHtcbiAgICAgICAgaWYgKCF0aGlzLmF1dGhUb2tlbkhvbGRlclNlcnZpY2Uuand0QXN5bmMpIHtcbiAgICAgICAgICAgIHJldHVybiBvZih0aGlzLmF1dGhUb2tlbkhvbGRlclNlcnZpY2Uuand0KTtcbiAgICAgICAgfVxuXG4gICAgICAgIHJldHVybiB0aGlzLmF1dGhUb2tlbkhvbGRlclNlcnZpY2Uuand0QXN5bmMucGlwZShcbiAgICAgICAgICAgIGZpbHRlcigoand0KSA9PiAhdGhpcy5pc0V4cGlyZWQoand0KSksXG4gICAgICAgICAgICBmaXJzdCgpLFxuICAgICAgICApXG4gICAgfVxuXG4gICAgcHJpdmF0ZSBpc0V4cGlyZWQoand0OiBzdHJpbmcpOiBib29sZWFuIHtcbiAgICAgICAgY29uc3QgZGVjb2RlZEp3dCA9IG5ldyBEZWNvZGVkSnd0KGp3dCk7XG4gICAgICAgIHJldHVybiBkZWNvZGVkSnd0LmlzRXhwaXJlZCgpO1xuICAgIH1cbn1cbiJdfQ==
|
|
@@ -1,59 +0,0 @@
|
|
|
1
|
-
import { Injectable } from '@angular/core';
|
|
2
|
-
import { HttpResponse } from '@angular/common/http';
|
|
3
|
-
import { map } from 'rxjs/operators';
|
|
4
|
-
import * as i0 from "@angular/core";
|
|
5
|
-
// tslint:disable:jsdoc-format
|
|
6
|
-
/**
|
|
7
|
-
* An interceptor on the response chain that normalizes differences in
|
|
8
|
-
* JSON payloads between vCloud Director version 9.1 and versions
|
|
9
|
-
* greater than 9.1.
|
|
10
|
-
*
|
|
11
|
-
* In 9.1 (API version 30.0) the server serializes JSON and nests the payload in a value field:
|
|
12
|
-
* ```
|
|
13
|
-
{
|
|
14
|
-
"name" : "{http://www.vmware.com/vcloud/versions}SupportedVersions",
|
|
15
|
-
"declaredType" : "com.vmware.vcloud.api.rest.schema.versioning.SupportedVersionsType",
|
|
16
|
-
"scope" : "javax.xml.bind.JAXBElement$GlobalScope",
|
|
17
|
-
"value" : {
|
|
18
|
-
"versionInfo" : [],
|
|
19
|
-
"any" : [],
|
|
20
|
-
"otherAttributes" : {}
|
|
21
|
-
}
|
|
22
|
-
}
|
|
23
|
-
```
|
|
24
|
-
*
|
|
25
|
-
* That same request in API versions 31.0 and above is represented as:
|
|
26
|
-
* ```
|
|
27
|
-
{
|
|
28
|
-
"versionInfo" : [],
|
|
29
|
-
"any" : [],
|
|
30
|
-
"otherAttributes" : {}
|
|
31
|
-
}
|
|
32
|
-
```
|
|
33
|
-
* This interceptor should process responses before any other interceptors that rely
|
|
34
|
-
* on consistent API information.
|
|
35
|
-
*/
|
|
36
|
-
export class ResponseNormalizationInterceptor {
|
|
37
|
-
static { this.QUERY_RESULT_TYPE = 'com.vmware.vcloud.api.rest.schema_v1_5.QueryResultRecordsType'; }
|
|
38
|
-
intercept(req, next) {
|
|
39
|
-
return next.handle(req).pipe(map(response => {
|
|
40
|
-
// While this condition seems awfully specific, the alternative option of examining the 'Content-Type'
|
|
41
|
-
// response header for 'version=30.0' proved to be an unreliable condition in at least one case;
|
|
42
|
-
// returning the same JSON payload as API versions >= 31.0.
|
|
43
|
-
if (response instanceof HttpResponse && response.body && response.body.value && response.body.declaredType && response.body.scope) {
|
|
44
|
-
const body = response.body.value;
|
|
45
|
-
if (response.body.declaredType === ResponseNormalizationInterceptor.QUERY_RESULT_TYPE) {
|
|
46
|
-
body.record = body.record.map(record => record.value);
|
|
47
|
-
}
|
|
48
|
-
return response.clone({ body });
|
|
49
|
-
}
|
|
50
|
-
return response;
|
|
51
|
-
}));
|
|
52
|
-
}
|
|
53
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.1.2", ngImport: i0, type: ResponseNormalizationInterceptor, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
54
|
-
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.1.2", ngImport: i0, type: ResponseNormalizationInterceptor }); }
|
|
55
|
-
}
|
|
56
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.1.2", ngImport: i0, type: ResponseNormalizationInterceptor, decorators: [{
|
|
57
|
-
type: Injectable
|
|
58
|
-
}] });
|
|
59
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVzcG9uc2Uubm9ybWFsaXphdGlvbi5pbnRlcmNlcHRvci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3ZjZC9zZGsvc3JjL2NsaWVudC9jbGllbnQvcmVzcG9uc2Uubm9ybWFsaXphdGlvbi5pbnRlcmNlcHRvci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzNDLE9BQU8sRUFBd0QsWUFBWSxFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFHMUcsT0FBTyxFQUFFLEdBQUcsRUFBRSxNQUFNLGdCQUFnQixDQUFDOztBQUVyQyw4QkFBOEI7QUFDOUI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0dBNkJHO0FBRUgsTUFBTSxPQUFPLGdDQUFnQzthQUNuQixzQkFBaUIsR0FBRywrREFBK0QsQUFBbEUsQ0FBbUU7SUFFNUcsU0FBUyxDQUFDLEdBQXFCLEVBQUUsSUFBaUI7UUFDaEQsT0FBTyxJQUFJLENBQUMsTUFBTSxDQUFDLEdBQUcsQ0FBQyxDQUFDLElBQUksQ0FDMUIsR0FBRyxDQUFDLFFBQVEsQ0FBQyxFQUFFO1lBQ2Isc0dBQXNHO1lBQ3RHLGdHQUFnRztZQUNoRywyREFBMkQ7WUFDM0QsSUFBSSxRQUFRLFlBQVksWUFBWSxJQUFJLFFBQVEsQ0FBQyxJQUFJLElBQUksUUFBUSxDQUFDLElBQUksQ0FBQyxLQUFLLElBQUksUUFBUSxDQUFDLElBQUksQ0FBQyxZQUFZLElBQUksUUFBUSxDQUFDLElBQUksQ0FBQyxLQUFLLEVBQUUsQ0FBQztnQkFDbEksTUFBTSxJQUFJLEdBQUcsUUFBUSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUM7Z0JBQ2pDLElBQUksUUFBUSxDQUFDLElBQUksQ0FBQyxZQUFZLEtBQUssZ0NBQWdDLENBQUMsaUJBQWlCLEVBQUUsQ0FBQztvQkFDdEYsSUFBSSxDQUFDLE1BQU0sR0FBRyxJQUFJLENBQUMsTUFBTSxDQUFDLEdBQUcsQ0FBQyxNQUFNLENBQUMsRUFBRSxDQUFDLE1BQU0sQ0FBQyxLQUFLLENBQUMsQ0FBQztnQkFDeEQsQ0FBQztnQkFFRCxPQUFPLFFBQVEsQ0FBQyxLQUFLLENBQUMsRUFBRSxJQUFJLEVBQUUsQ0FBQyxDQUFDO1lBQ2xDLENBQUM7WUFFRCxPQUFPLFFBQVEsQ0FBQztRQUNsQixDQUFDLENBQUMsQ0FDSCxDQUFDO0lBQ0osQ0FBQzs4R0FyQlUsZ0NBQWdDO2tIQUFoQyxnQ0FBZ0M7OzJGQUFoQyxnQ0FBZ0M7a0JBRDVDLFVBQVUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBIdHRwRXZlbnQsIEh0dHBJbnRlcmNlcHRvciwgSHR0cEhhbmRsZXIsIEh0dHBSZXF1ZXN0LCBIdHRwUmVzcG9uc2UgfSBmcm9tICdAYW5ndWxhci9jb21tb24vaHR0cCc7XG5cbmltcG9ydCB7IE9ic2VydmFibGUgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IG1hcCB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcblxuLy8gdHNsaW50OmRpc2FibGU6anNkb2MtZm9ybWF0XG4vKipcbiAqIEFuIGludGVyY2VwdG9yIG9uIHRoZSByZXNwb25zZSBjaGFpbiB0aGF0IG5vcm1hbGl6ZXMgZGlmZmVyZW5jZXMgaW5cbiAqIEpTT04gcGF5bG9hZHMgYmV0d2VlbiB2Q2xvdWQgRGlyZWN0b3IgdmVyc2lvbiA5LjEgYW5kIHZlcnNpb25zXG4gKiBncmVhdGVyIHRoYW4gOS4xLlxuICpcbiAqIEluIDkuMSAoQVBJIHZlcnNpb24gMzAuMCkgdGhlIHNlcnZlciBzZXJpYWxpemVzIEpTT04gYW5kIG5lc3RzIHRoZSBwYXlsb2FkIGluIGEgdmFsdWUgZmllbGQ6XG4gKiBgYGBcbiAge1xuICAgIFwibmFtZVwiIDogXCJ7aHR0cDovL3d3dy52bXdhcmUuY29tL3ZjbG91ZC92ZXJzaW9uc31TdXBwb3J0ZWRWZXJzaW9uc1wiLFxuICAgIFwiZGVjbGFyZWRUeXBlXCIgOiBcImNvbS52bXdhcmUudmNsb3VkLmFwaS5yZXN0LnNjaGVtYS52ZXJzaW9uaW5nLlN1cHBvcnRlZFZlcnNpb25zVHlwZVwiLFxuICAgIFwic2NvcGVcIiA6IFwiamF2YXgueG1sLmJpbmQuSkFYQkVsZW1lbnQkR2xvYmFsU2NvcGVcIixcbiAgICBcInZhbHVlXCIgOiB7XG4gICAgICBcInZlcnNpb25JbmZvXCIgOiBbXSxcbiAgICAgIFwiYW55XCIgOiBbXSxcbiAgICAgIFwib3RoZXJBdHRyaWJ1dGVzXCIgOiB7fVxuICAgIH1cbiAgfVxuICBgYGBcbiAqXG4gKiBUaGF0IHNhbWUgcmVxdWVzdCBpbiBBUEkgdmVyc2lvbnMgMzEuMCBhbmQgYWJvdmUgaXMgcmVwcmVzZW50ZWQgYXM6XG4gKiBgYGBcbiAge1xuICAgIFwidmVyc2lvbkluZm9cIiA6IFtdLFxuICAgIFwiYW55XCIgOiBbXSxcbiAgICBcIm90aGVyQXR0cmlidXRlc1wiIDoge31cbiAgfVxuICBgYGBcbiAqIFRoaXMgaW50ZXJjZXB0b3Igc2hvdWxkIHByb2Nlc3MgcmVzcG9uc2VzIGJlZm9yZSBhbnkgb3RoZXIgaW50ZXJjZXB0b3JzIHRoYXQgcmVseVxuICogb24gY29uc2lzdGVudCBBUEkgaW5mb3JtYXRpb24uXG4gKi9cbkBJbmplY3RhYmxlKClcbmV4cG9ydCBjbGFzcyBSZXNwb25zZU5vcm1hbGl6YXRpb25JbnRlcmNlcHRvciBpbXBsZW1lbnRzIEh0dHBJbnRlcmNlcHRvciB7XG4gIHByaXZhdGUgc3RhdGljIHJlYWRvbmx5IFFVRVJZX1JFU1VMVF9UWVBFID0gJ2NvbS52bXdhcmUudmNsb3VkLmFwaS5yZXN0LnNjaGVtYV92MV81LlF1ZXJ5UmVzdWx0UmVjb3Jkc1R5cGUnO1xuXG4gIGludGVyY2VwdChyZXE6IEh0dHBSZXF1ZXN0PGFueT4sIG5leHQ6IEh0dHBIYW5kbGVyKTogT2JzZXJ2YWJsZTxIdHRwRXZlbnQ8YW55Pj4ge1xuICAgIHJldHVybiBuZXh0LmhhbmRsZShyZXEpLnBpcGUoXG4gICAgICBtYXAocmVzcG9uc2UgPT4ge1xuICAgICAgICAvLyBXaGlsZSB0aGlzIGNvbmRpdGlvbiBzZWVtcyBhd2Z1bGx5IHNwZWNpZmljLCB0aGUgYWx0ZXJuYXRpdmUgb3B0aW9uIG9mIGV4YW1pbmluZyB0aGUgJ0NvbnRlbnQtVHlwZSdcbiAgICAgICAgLy8gcmVzcG9uc2UgaGVhZGVyIGZvciAndmVyc2lvbj0zMC4wJyBwcm92ZWQgdG8gYmUgYW4gdW5yZWxpYWJsZSBjb25kaXRpb24gaW4gYXQgbGVhc3Qgb25lIGNhc2U7XG4gICAgICAgIC8vIHJldHVybmluZyB0aGUgc2FtZSBKU09OIHBheWxvYWQgYXMgQVBJIHZlcnNpb25zID49IDMxLjAuXG4gICAgICAgIGlmIChyZXNwb25zZSBpbnN0YW5jZW9mIEh0dHBSZXNwb25zZSAmJiByZXNwb25zZS5ib2R5ICYmIHJlc3BvbnNlLmJvZHkudmFsdWUgJiYgcmVzcG9uc2UuYm9keS5kZWNsYXJlZFR5cGUgJiYgcmVzcG9uc2UuYm9keS5zY29wZSkge1xuICAgICAgICAgIGNvbnN0IGJvZHkgPSByZXNwb25zZS5ib2R5LnZhbHVlO1xuICAgICAgICAgIGlmIChyZXNwb25zZS5ib2R5LmRlY2xhcmVkVHlwZSA9PT0gUmVzcG9uc2VOb3JtYWxpemF0aW9uSW50ZXJjZXB0b3IuUVVFUllfUkVTVUxUX1RZUEUpIHtcbiAgICAgICAgICAgIGJvZHkucmVjb3JkID0gYm9keS5yZWNvcmQubWFwKHJlY29yZCA9PiByZWNvcmQudmFsdWUpO1xuICAgICAgICAgIH1cblxuICAgICAgICAgIHJldHVybiByZXNwb25zZS5jbG9uZSh7IGJvZHkgfSk7XG4gICAgICAgIH1cblxuICAgICAgICByZXR1cm4gcmVzcG9uc2U7XG4gICAgICB9KVxuICAgICk7XG4gIH1cbn1cbiJdfQ==
|
|
@@ -1,13 +0,0 @@
|
|
|
1
|
-
export class ClientError extends Error {
|
|
2
|
-
constructor(message, type) {
|
|
3
|
-
super(message);
|
|
4
|
-
this.message = message;
|
|
5
|
-
this.type = type;
|
|
6
|
-
}
|
|
7
|
-
}
|
|
8
|
-
export var ClientErrorType;
|
|
9
|
-
(function (ClientErrorType) {
|
|
10
|
-
ClientErrorType["HateoasLinkMissing"] = "HateoasLinkMissing";
|
|
11
|
-
ClientErrorType["TaskLinkMissing"] = "TaskLinkMissing";
|
|
12
|
-
})(ClientErrorType || (ClientErrorType = {}));
|
|
13
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHlwZXMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy92Y2Qvc2RrL3NyYy9jbGllbnQvY2xpZW50L3R5cGVzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE1BQU0sT0FBTyxXQUFZLFNBQVEsS0FBSztJQUNwQyxZQUNrQixPQUFlLEVBQ3hCLElBQXFCO1FBQzVCLEtBQUssQ0FBQyxPQUFPLENBQUMsQ0FBQztRQUZDLFlBQU8sR0FBUCxPQUFPLENBQVE7UUFDeEIsU0FBSSxHQUFKLElBQUksQ0FBaUI7SUFFOUIsQ0FBQztDQUNGO0FBRUQsTUFBTSxDQUFOLElBQVksZUFHWDtBQUhELFdBQVksZUFBZTtJQUN6Qiw0REFBeUMsQ0FBQTtJQUN6QyxzREFBbUMsQ0FBQTtBQUNyQyxDQUFDLEVBSFcsZUFBZSxLQUFmLGVBQWUsUUFHMUIiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgY2xhc3MgQ2xpZW50RXJyb3IgZXh0ZW5kcyBFcnJvciB7XG4gIGNvbnN0cnVjdG9yKFxuICAgIHB1YmxpYyBvdmVycmlkZSBtZXNzYWdlOiBzdHJpbmcsXG4gICAgcHVibGljIHR5cGU6IENsaWVudEVycm9yVHlwZSkge1xuICAgIHN1cGVyKG1lc3NhZ2UpO1xuICB9XG59XG5cbmV4cG9ydCBlbnVtIENsaWVudEVycm9yVHlwZXtcbiAgSGF0ZW9hc0xpbmtNaXNzaW5nID0gXCJIYXRlb2FzTGlua01pc3NpbmdcIixcbiAgVGFza0xpbmtNaXNzaW5nID0gXCJUYXNrTGlua01pc3NpbmdcIixcbn1cbiJdfQ==
|