@api-client/core 0.3.1 → 0.3.2
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/build/browser.d.ts +1 -1
- package/build/index.d.ts +2 -2
- package/build/index.js.map +1 -1
- package/build/src/models/Backend.d.ts +22 -0
- package/build/src/runtime/store/StoreSdk.d.ts +192 -12
- package/build/src/runtime/store/StoreSdk.js +595 -51
- package/build/src/runtime/store/StoreSdk.js.map +1 -1
- package/package.json +3 -1
package/build/browser.d.ts
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
export { ArcResponse, IArcResponse, Kind as ArcResponseKind } from './src/models/ArcResponse.js';
|
|
2
2
|
export { IAuthorizationSettingsUnion, IApiKeyAuthorization, IAuthorizationParams, IBasicAuthorization, IBearerAuthorization, ICCAuthorization, IDigestAuthorization, INtlmAuthorization, IOAuth1Authorization, IOAuth2Authorization, IOAuth2AuthorizationRequestCustomData, IOAuth2CustomData, IOAuth2CustomParameter, IOAuth2TokenRequestCustomData, IOauth2GrantType, IOauth2ResponseType, IOidcAuthorization, IOidcTokenError, IOidcTokenInfo, IPassThroughAuthorization, IRamlCustomAuthorization, ITokenError, ITokenInfo, ITokenRemoveOptions, OAuth2DeliveryMethod } from './src/models/Authorization.js';
|
|
3
3
|
export { AuthorizationData, IAuthorizationData } from './src/models/AuthorizationData.js';
|
|
4
|
-
export { IBackendInfo, IBackendCommand, IBackendEvent, IListResponse } from './src/models/Backend.js';
|
|
4
|
+
export { IBackendInfo, IBackendCommand, IBackendEvent, IListResponse, IListOptions } from './src/models/Backend.js';
|
|
5
5
|
export { CertificateType, ICertificate, ICertificateIndex, IClientCertificate, IRequestCertificate } from './src/models/ClientCertificate.js';
|
|
6
6
|
export { Environment, IEnvironment, Kind as EnvironmentKind } from './src/models/Environment.js';
|
|
7
7
|
export { ErrorResponse, IErrorResponse } from './src/models/ErrorResponse.js';
|
package/build/index.d.ts
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
export { ArcResponse, IArcResponse, Kind as ArcResponseKind } from './src/models/ArcResponse.js';
|
|
2
2
|
export { IAuthorizationSettingsUnion, IApiKeyAuthorization, IAuthorizationParams, IBasicAuthorization, IBearerAuthorization, ICCAuthorization, IDigestAuthorization, INtlmAuthorization, IOAuth1Authorization, IOAuth2Authorization, IOAuth2AuthorizationRequestCustomData, IOAuth2CustomData, IOAuth2CustomParameter, IOAuth2TokenRequestCustomData, IOauth2GrantType, IOauth2ResponseType, IOidcAuthorization, IOidcTokenError, IOidcTokenInfo, IPassThroughAuthorization, IRamlCustomAuthorization, ITokenError, ITokenInfo, ITokenRemoveOptions, OAuth2DeliveryMethod } from './src/models/Authorization.js';
|
|
3
3
|
export { AuthorizationData, IAuthorizationData } from './src/models/AuthorizationData.js';
|
|
4
|
-
export { IBackendInfo, IBackendCommand, IBackendEvent, IListResponse } from './src/models/Backend.js';
|
|
4
|
+
export { IBackendInfo, IBackendCommand, IBackendEvent, IListResponse, IListOptions } from './src/models/Backend.js';
|
|
5
5
|
export { CertificateType, ICertificate, ICertificateIndex, IClientCertificate, IRequestCertificate } from './src/models/ClientCertificate.js';
|
|
6
6
|
export { Environment, IEnvironment, Kind as EnvironmentKind } from './src/models/Environment.js';
|
|
7
7
|
export { ErrorResponse, IErrorResponse } from './src/models/ErrorResponse.js';
|
|
@@ -62,7 +62,7 @@ export { JmesparthReader } from './src/data/JmesparthReader.js';
|
|
|
62
62
|
export { XmlReader } from './src/data/XmlReader.js';
|
|
63
63
|
export { UrlEncodedReader } from './src/data/UrlEncodedReader.js';
|
|
64
64
|
export { RequestDataExtractor } from './src/data/RequestDataExtractor.js';
|
|
65
|
-
export { StoreSdk } from './src/runtime/store/StoreSdk.js';
|
|
65
|
+
export { StoreSdk, IStoreTokenInfo } from './src/runtime/store/StoreSdk.js';
|
|
66
66
|
export { Events } from './src/events/Events.js';
|
|
67
67
|
export { EventTypes } from './src/events/EventTypes.js';
|
|
68
68
|
export { ProjectMoveEventDetail, ProjectCloneEventDetail, IFolderInitOptions, IRequestInitOptions, IEnvironmentInitOptions, } from './src/events/models/ProjectEvents.js';
|
package/build/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../index.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../index.ts"],"names":[],"mappings":"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"}
|
|
@@ -77,3 +77,25 @@ export interface IListResponse {
|
|
|
77
77
|
*/
|
|
78
78
|
data: unknown[];
|
|
79
79
|
}
|
|
80
|
+
export interface IListOptions {
|
|
81
|
+
/**
|
|
82
|
+
* Page cursor to use with the query.
|
|
83
|
+
*/
|
|
84
|
+
cursor?: string;
|
|
85
|
+
/**
|
|
86
|
+
* Number of items in the result.
|
|
87
|
+
* Ignored when `cursor` is set.
|
|
88
|
+
*
|
|
89
|
+
* Note, when changing the number of items in the result
|
|
90
|
+
* you need to start listing over again.
|
|
91
|
+
*/
|
|
92
|
+
limit?: number;
|
|
93
|
+
/**
|
|
94
|
+
* Supported by some endpoints. When set it performs a query on the data store.
|
|
95
|
+
*/
|
|
96
|
+
query?: string;
|
|
97
|
+
/**
|
|
98
|
+
* Only with the `query` property. Tells the system in which fields to search for the query term.
|
|
99
|
+
*/
|
|
100
|
+
queryField?: string[];
|
|
101
|
+
}
|
|
@@ -1,7 +1,12 @@
|
|
|
1
1
|
/// <reference types="node" />
|
|
2
2
|
import http from 'http';
|
|
3
3
|
import WebSocket from 'ws';
|
|
4
|
-
import {
|
|
4
|
+
import { URL } from 'url';
|
|
5
|
+
import { JsonPatch } from 'json8-patch';
|
|
6
|
+
import { IBackendInfo, IListOptions, IListResponse } from '../../models/Backend.js';
|
|
7
|
+
import { IWorkspace, IUserWorkspace, Workspace } from '../../models/Workspace.js';
|
|
8
|
+
import { UserAccessOperation, IUser } from '../../models/User.js';
|
|
9
|
+
import { HttpProject, IHttpProject } from '../../models/HttpProject.js';
|
|
5
10
|
export interface IStoreRequestOptions {
|
|
6
11
|
method?: 'GET' | 'POST' | 'PATCH' | 'DELETE';
|
|
7
12
|
headers?: Record<string, string>;
|
|
@@ -16,36 +21,166 @@ export interface IStoreResponse {
|
|
|
16
21
|
headers: http.IncomingHttpHeaders;
|
|
17
22
|
body?: string;
|
|
18
23
|
}
|
|
24
|
+
export interface IStoreTokenInfo {
|
|
25
|
+
/**
|
|
26
|
+
* The token to use.
|
|
27
|
+
*/
|
|
28
|
+
token: string;
|
|
29
|
+
/**
|
|
30
|
+
* The timestamp when the token expires.
|
|
31
|
+
* Note, clients may have a different date than the store.
|
|
32
|
+
*
|
|
33
|
+
* May not be set when the token does not expire.
|
|
34
|
+
*/
|
|
35
|
+
expires?: number;
|
|
36
|
+
}
|
|
37
|
+
declare const baseUriSymbol: unique symbol;
|
|
19
38
|
/**
|
|
20
39
|
* NodeJS API for API Client's net-store module.
|
|
21
40
|
*/
|
|
22
41
|
export declare class StoreSdk {
|
|
23
|
-
baseUri: string;
|
|
24
42
|
basePath?: string | undefined;
|
|
25
43
|
/**
|
|
26
44
|
* The token to use with requests. Can be overwritten with each API call.
|
|
27
45
|
*/
|
|
28
46
|
token?: string;
|
|
47
|
+
/**
|
|
48
|
+
* The user authentication features.
|
|
49
|
+
*/
|
|
50
|
+
auth: AuthSdk;
|
|
51
|
+
/**
|
|
52
|
+
* The store information features
|
|
53
|
+
*/
|
|
54
|
+
store: BackendSdk;
|
|
55
|
+
/**
|
|
56
|
+
* The user spaces features.
|
|
57
|
+
*/
|
|
58
|
+
space: SpacesSdk;
|
|
59
|
+
/**
|
|
60
|
+
* The user projects features.
|
|
61
|
+
*/
|
|
62
|
+
project: ProjectsSdk;
|
|
63
|
+
/**
|
|
64
|
+
* Reads user information.
|
|
65
|
+
*/
|
|
66
|
+
user: UsersSdk;
|
|
67
|
+
/**
|
|
68
|
+
* The HTTP(S) requests.
|
|
69
|
+
*/
|
|
70
|
+
http: HttpClient;
|
|
71
|
+
/**
|
|
72
|
+
* The web socket requests.
|
|
73
|
+
*/
|
|
74
|
+
ws: WsClient;
|
|
75
|
+
[baseUriSymbol]: string;
|
|
76
|
+
/**
|
|
77
|
+
* @returns The base URI to the store.
|
|
78
|
+
*/
|
|
79
|
+
get baseUri(): string;
|
|
80
|
+
/**
|
|
81
|
+
* @param value The base URI to the store.
|
|
82
|
+
*/
|
|
83
|
+
set baseUri(value: string);
|
|
29
84
|
/**
|
|
30
85
|
* @param baseUri The base URI to the store.
|
|
31
86
|
* @param basePath The base path (the router prefix) for the server.
|
|
32
87
|
*/
|
|
33
88
|
constructor(baseUri: string, basePath?: string | undefined);
|
|
34
89
|
/**
|
|
35
|
-
*
|
|
90
|
+
* Creates a full URL for a path.
|
|
91
|
+
* This adds the server's base path and the passed path to the configured base URL.
|
|
92
|
+
* @param path The path to the endpoint, without the base path.
|
|
36
93
|
*/
|
|
37
|
-
|
|
94
|
+
getUrl(path?: string): URL;
|
|
95
|
+
/**
|
|
96
|
+
* Appends list options to the query parameters.
|
|
97
|
+
* @param url The URL object to the API endpoint
|
|
98
|
+
* @param options The list options, if any
|
|
99
|
+
*/
|
|
100
|
+
appendListOptions(url: URL, options?: IListOptions): void;
|
|
101
|
+
}
|
|
102
|
+
declare class SdkBase {
|
|
103
|
+
sdk: StoreSdk;
|
|
104
|
+
constructor(sdk: StoreSdk);
|
|
105
|
+
protected logInvalidResponse(response: IStoreResponse): void;
|
|
106
|
+
/**
|
|
107
|
+
* Throws unified message for a common error status codes.
|
|
108
|
+
* It handles 404, 403, and 401 status codes.
|
|
109
|
+
*/
|
|
110
|
+
protected inspectCommonStatusCodes(status: number): void;
|
|
111
|
+
}
|
|
112
|
+
declare class AuthSdk extends SdkBase {
|
|
113
|
+
protected getExpires(headers: http.IncomingHttpHeaders): number | undefined;
|
|
38
114
|
/**
|
|
39
115
|
* Creates unauthenticated session in the backend.
|
|
40
116
|
* @returns The JWT for unauthenticated user.
|
|
41
117
|
*/
|
|
42
|
-
createSession(): Promise<
|
|
118
|
+
createSession(): Promise<IStoreTokenInfo>;
|
|
43
119
|
/**
|
|
44
120
|
* Initializes the authentication session.
|
|
45
121
|
* @param token The unauthenticated session JWT. Required when not set on the class.
|
|
46
122
|
* @returns The location of the authorization endpoint.
|
|
47
123
|
*/
|
|
48
124
|
createAuthSession(token?: string, loginPath?: string): Promise<string>;
|
|
125
|
+
/**
|
|
126
|
+
* Listens to the first message coming to the client from the auth endpoint.
|
|
127
|
+
* @param authPath The authorization path returned by the server info or 401 response.
|
|
128
|
+
* @param token Optional token to use.
|
|
129
|
+
*/
|
|
130
|
+
listenAuth(authPath: string, token?: string): Promise<void>;
|
|
131
|
+
/**
|
|
132
|
+
* Renews authenticated token to a new one when the token expires.
|
|
133
|
+
* @param token Optional token to use.
|
|
134
|
+
* @returns
|
|
135
|
+
*/
|
|
136
|
+
renewToken(token?: string | undefined): Promise<IStoreTokenInfo>;
|
|
137
|
+
}
|
|
138
|
+
declare class BackendSdk extends SdkBase {
|
|
139
|
+
/**
|
|
140
|
+
* @returns Client information about the store configuration.
|
|
141
|
+
*/
|
|
142
|
+
getInfo(): Promise<IBackendInfo>;
|
|
143
|
+
}
|
|
144
|
+
declare class SpacesSdk extends SdkBase {
|
|
145
|
+
/**
|
|
146
|
+
* Lists spaces in the store.
|
|
147
|
+
* @param options Optional query options.
|
|
148
|
+
*/
|
|
149
|
+
list(options?: IListOptions): Promise<IListResponse>;
|
|
150
|
+
/**
|
|
151
|
+
* Creates a workspace in the store.
|
|
152
|
+
* @param space The workspace definition.
|
|
153
|
+
* @returns The key of the creates space.
|
|
154
|
+
*/
|
|
155
|
+
create(space: IWorkspace | Workspace): Promise<string>;
|
|
156
|
+
/**
|
|
157
|
+
* Reads a user space definition from the store.
|
|
158
|
+
* @param key The user space key
|
|
159
|
+
* @returns The definition of the user space.
|
|
160
|
+
*/
|
|
161
|
+
read(key: string): Promise<IUserWorkspace>;
|
|
162
|
+
/**
|
|
163
|
+
* Patches a user space in the store.
|
|
164
|
+
* @param key The key of the user space to patch
|
|
165
|
+
* @param value The JSON patch to be processed.
|
|
166
|
+
* @returns The JSON patch to revert the change using the `json8-patch` library
|
|
167
|
+
*/
|
|
168
|
+
patch(key: string, value: JsonPatch): Promise<JsonPatch>;
|
|
169
|
+
/**
|
|
170
|
+
* Deletes the space in the store.
|
|
171
|
+
*
|
|
172
|
+
* @param key The key of the space to delete.
|
|
173
|
+
*/
|
|
174
|
+
delete(key: string): Promise<void>;
|
|
175
|
+
/**
|
|
176
|
+
* Updates the sharing options of the space.
|
|
177
|
+
*
|
|
178
|
+
* @param key The user space key
|
|
179
|
+
* @param value The patch operation on the space's ACL
|
|
180
|
+
*/
|
|
181
|
+
patchUsers(key: string, value: UserAccessOperation[]): Promise<void>;
|
|
182
|
+
}
|
|
183
|
+
declare class HttpClient extends SdkBase {
|
|
49
184
|
/**
|
|
50
185
|
* Performs the GET request.
|
|
51
186
|
*
|
|
@@ -58,18 +193,14 @@ export declare class StoreSdk {
|
|
|
58
193
|
post(url: string, opts?: IStoreRequestOptions): Promise<IStoreResponse>;
|
|
59
194
|
patch(url: string, opts?: IStoreRequestOptions): Promise<IStoreResponse>;
|
|
60
195
|
delete(url: string, opts?: IStoreRequestOptions): Promise<IStoreResponse>;
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
* @param authPath The authorization path returned by the server info or 401 response.
|
|
64
|
-
* @param token Optional token to use.
|
|
65
|
-
*/
|
|
66
|
-
listenAuth(authPath: string, token?: string): Promise<void>;
|
|
196
|
+
}
|
|
197
|
+
declare class WsClient extends SdkBase {
|
|
67
198
|
/**
|
|
68
199
|
* Creates a WS client with optional token
|
|
69
200
|
* @param addr The ws:// address
|
|
70
201
|
* @param token Optional token to add.
|
|
71
202
|
*/
|
|
72
|
-
|
|
203
|
+
getClient(addr: string, token?: string | undefined): WebSocket;
|
|
73
204
|
/**
|
|
74
205
|
* Connect to the WS server
|
|
75
206
|
*
|
|
@@ -85,3 +216,52 @@ export declare class StoreSdk {
|
|
|
85
216
|
*/
|
|
86
217
|
createAndConnect(addr: string, token?: string): Promise<WebSocket>;
|
|
87
218
|
}
|
|
219
|
+
declare class ProjectsSdk extends SdkBase {
|
|
220
|
+
/**
|
|
221
|
+
* Creates a project in a user space.
|
|
222
|
+
*
|
|
223
|
+
* @param key The user space key
|
|
224
|
+
* @param project THe project to create
|
|
225
|
+
* @returns The key of the created project.
|
|
226
|
+
*/
|
|
227
|
+
create(key: string, project: IHttpProject | HttpProject): Promise<string>;
|
|
228
|
+
/**
|
|
229
|
+
* Reads a project definition from the store.
|
|
230
|
+
* @param space The user space key
|
|
231
|
+
* @param project The project key
|
|
232
|
+
* @returns The definition of the project.
|
|
233
|
+
*/
|
|
234
|
+
read(space: string, project: string): Promise<IHttpProject>;
|
|
235
|
+
/**
|
|
236
|
+
* Lists projects in the space
|
|
237
|
+
*
|
|
238
|
+
* @param space The user space key
|
|
239
|
+
* @param options Optional query options.
|
|
240
|
+
*/
|
|
241
|
+
list(space: string, options?: IListOptions): Promise<IListResponse>;
|
|
242
|
+
/**
|
|
243
|
+
* Deletes a project form the store.
|
|
244
|
+
*
|
|
245
|
+
* @param space The key of the parent space.
|
|
246
|
+
* @param project The key of the project to delete.
|
|
247
|
+
*/
|
|
248
|
+
delete(space: string, project: string): Promise<void>;
|
|
249
|
+
/**
|
|
250
|
+
* Patches a project in the store.
|
|
251
|
+
* @param space The key of the parent user space
|
|
252
|
+
* @param project The key of project to patch.
|
|
253
|
+
* @param value The JSON patch to be processed.
|
|
254
|
+
* @returns The JSON patch to revert the change using the `json8-patch` library
|
|
255
|
+
*/
|
|
256
|
+
patch(space: string, project: string, value: JsonPatch): Promise<JsonPatch>;
|
|
257
|
+
}
|
|
258
|
+
declare class UsersSdk extends SdkBase {
|
|
259
|
+
me(): Promise<IUser>;
|
|
260
|
+
/**
|
|
261
|
+
* Lists users in the store
|
|
262
|
+
*
|
|
263
|
+
* @param options Optional query options.
|
|
264
|
+
*/
|
|
265
|
+
list(options?: IListOptions): Promise<IListResponse>;
|
|
266
|
+
}
|
|
267
|
+
export {};
|
|
@@ -1,54 +1,197 @@
|
|
|
1
1
|
import http from 'http';
|
|
2
2
|
import https from 'https';
|
|
3
3
|
import WebSocket from 'ws';
|
|
4
|
+
import { URL } from 'url';
|
|
5
|
+
const E_INVALID_JSON = 'The response is not a valid JSON.';
|
|
6
|
+
const E_RESPONSE_NO_VALUE = 'The response has no value.';
|
|
7
|
+
const E_RESPONSE_STATUS = 'Invalid response status: ';
|
|
8
|
+
const E_RESPONSE_UNKNOWN = 'The response has unknown format.';
|
|
9
|
+
const E_RESPONSE_LOCATION = 'The response has no "location" header.';
|
|
10
|
+
const baseUriSymbol = Symbol('baseUri');
|
|
4
11
|
/**
|
|
5
12
|
* NodeJS API for API Client's net-store module.
|
|
6
13
|
*/
|
|
7
14
|
export class StoreSdk {
|
|
8
|
-
baseUri;
|
|
9
15
|
basePath;
|
|
10
16
|
/**
|
|
11
17
|
* The token to use with requests. Can be overwritten with each API call.
|
|
12
18
|
*/
|
|
13
19
|
token;
|
|
20
|
+
/**
|
|
21
|
+
* The user authentication features.
|
|
22
|
+
*/
|
|
23
|
+
auth = new AuthSdk(this);
|
|
24
|
+
/**
|
|
25
|
+
* The store information features
|
|
26
|
+
*/
|
|
27
|
+
store = new BackendSdk(this);
|
|
28
|
+
/**
|
|
29
|
+
* The user spaces features.
|
|
30
|
+
*/
|
|
31
|
+
space = new SpacesSdk(this);
|
|
32
|
+
/**
|
|
33
|
+
* The user projects features.
|
|
34
|
+
*/
|
|
35
|
+
project = new ProjectsSdk(this);
|
|
36
|
+
/**
|
|
37
|
+
* Reads user information.
|
|
38
|
+
*/
|
|
39
|
+
user = new UsersSdk(this);
|
|
40
|
+
/**
|
|
41
|
+
* The HTTP(S) requests.
|
|
42
|
+
*/
|
|
43
|
+
http = new HttpClient(this);
|
|
44
|
+
/**
|
|
45
|
+
* The web socket requests.
|
|
46
|
+
*/
|
|
47
|
+
ws = new WsClient(this);
|
|
48
|
+
[baseUriSymbol] = '';
|
|
49
|
+
/**
|
|
50
|
+
* @returns The base URI to the store.
|
|
51
|
+
*/
|
|
52
|
+
get baseUri() {
|
|
53
|
+
return this[baseUriSymbol];
|
|
54
|
+
}
|
|
55
|
+
/**
|
|
56
|
+
* @param value The base URI to the store.
|
|
57
|
+
*/
|
|
58
|
+
set baseUri(value) {
|
|
59
|
+
if (!value) {
|
|
60
|
+
throw new Error(`Invalid value for the baseUri`);
|
|
61
|
+
}
|
|
62
|
+
let url;
|
|
63
|
+
try {
|
|
64
|
+
url = new URL(value);
|
|
65
|
+
}
|
|
66
|
+
catch (e) {
|
|
67
|
+
throw new Error(`Invalid baseUri: Not an URL`);
|
|
68
|
+
}
|
|
69
|
+
this[baseUriSymbol] = url.origin;
|
|
70
|
+
const { pathname } = url;
|
|
71
|
+
if (pathname && pathname !== '/') {
|
|
72
|
+
this.basePath = pathname;
|
|
73
|
+
}
|
|
74
|
+
else {
|
|
75
|
+
this.basePath = undefined;
|
|
76
|
+
}
|
|
77
|
+
}
|
|
14
78
|
/**
|
|
15
79
|
* @param baseUri The base URI to the store.
|
|
16
80
|
* @param basePath The base path (the router prefix) for the server.
|
|
17
81
|
*/
|
|
18
82
|
constructor(baseUri, basePath) {
|
|
19
|
-
this.baseUri = baseUri;
|
|
20
83
|
this.basePath = basePath;
|
|
84
|
+
this.baseUri = baseUri;
|
|
21
85
|
}
|
|
22
86
|
/**
|
|
23
|
-
*
|
|
87
|
+
* Creates a full URL for a path.
|
|
88
|
+
* This adds the server's base path and the passed path to the configured base URL.
|
|
89
|
+
* @param path The path to the endpoint, without the base path.
|
|
24
90
|
*/
|
|
25
|
-
|
|
26
|
-
const { baseUri } = this;
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
throw new Error(`Invalid store response. Expected 200 status and ${result.status} received.`);
|
|
91
|
+
getUrl(path = '/') {
|
|
92
|
+
const { baseUri, basePath = '' } = this;
|
|
93
|
+
let userPath = path;
|
|
94
|
+
if (basePath && userPath.startsWith(basePath)) {
|
|
95
|
+
userPath = userPath.substring(basePath.length);
|
|
31
96
|
}
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
97
|
+
return new URL(`${basePath}${userPath}`, baseUri);
|
|
98
|
+
}
|
|
99
|
+
/**
|
|
100
|
+
* Appends list options to the query parameters.
|
|
101
|
+
* @param url The URL object to the API endpoint
|
|
102
|
+
* @param options The list options, if any
|
|
103
|
+
*/
|
|
104
|
+
appendListOptions(url, options = {}) {
|
|
105
|
+
const { searchParams } = url;
|
|
106
|
+
if (options.cursor) {
|
|
107
|
+
searchParams.set('cursor', options.cursor);
|
|
36
108
|
}
|
|
37
|
-
|
|
38
|
-
|
|
109
|
+
else {
|
|
110
|
+
if (typeof options.limit === 'number') {
|
|
111
|
+
searchParams.set('limit', String(options.limit));
|
|
112
|
+
}
|
|
113
|
+
if (options.query) {
|
|
114
|
+
searchParams.set('query', options.query);
|
|
115
|
+
}
|
|
116
|
+
if (Array.isArray(options.queryField)) {
|
|
117
|
+
options.queryField.forEach((field) => {
|
|
118
|
+
searchParams.append('queryField', field);
|
|
119
|
+
});
|
|
120
|
+
}
|
|
121
|
+
}
|
|
122
|
+
}
|
|
123
|
+
}
|
|
124
|
+
class SdkBase {
|
|
125
|
+
sdk;
|
|
126
|
+
constructor(sdk) {
|
|
127
|
+
this.sdk = sdk;
|
|
128
|
+
}
|
|
129
|
+
logInvalidResponse(response) {
|
|
130
|
+
if (response.body) {
|
|
131
|
+
try {
|
|
132
|
+
const data = JSON.parse(response.body);
|
|
133
|
+
if (data.message) {
|
|
134
|
+
console.warn(`[Store message]: ${data.message}`);
|
|
135
|
+
}
|
|
136
|
+
}
|
|
137
|
+
catch (e) {
|
|
138
|
+
// .
|
|
139
|
+
}
|
|
39
140
|
}
|
|
40
|
-
|
|
141
|
+
}
|
|
142
|
+
/**
|
|
143
|
+
* Throws unified message for a common error status codes.
|
|
144
|
+
* It handles 404, 403, and 401 status codes.
|
|
145
|
+
*/
|
|
146
|
+
inspectCommonStatusCodes(status) {
|
|
147
|
+
if (status === 404) {
|
|
148
|
+
throw new Error(`Not found.`);
|
|
149
|
+
}
|
|
150
|
+
if (status === 403) {
|
|
151
|
+
throw new Error(`You have no access to this resource.`);
|
|
152
|
+
}
|
|
153
|
+
if (status === 401) {
|
|
154
|
+
throw new Error(`Not authorized.`);
|
|
155
|
+
}
|
|
156
|
+
}
|
|
157
|
+
}
|
|
158
|
+
class AuthSdk extends SdkBase {
|
|
159
|
+
getExpires(headers) {
|
|
160
|
+
if (!headers.expires) {
|
|
161
|
+
return undefined;
|
|
162
|
+
}
|
|
163
|
+
const d = new Date(headers.expires);
|
|
164
|
+
const time = d.getTime();
|
|
165
|
+
if (Number.isNaN(time)) {
|
|
166
|
+
console.warn(`Invalid session response: the expires header cannot be parsed.`);
|
|
167
|
+
return undefined;
|
|
168
|
+
}
|
|
169
|
+
return time;
|
|
41
170
|
}
|
|
42
171
|
/**
|
|
43
172
|
* Creates unauthenticated session in the backend.
|
|
44
173
|
* @returns The JWT for unauthenticated user.
|
|
45
174
|
*/
|
|
46
175
|
async createSession() {
|
|
47
|
-
const { baseUri } = this;
|
|
176
|
+
const { baseUri } = this.sdk;
|
|
48
177
|
const url = `${baseUri}/sessions`;
|
|
49
178
|
// console.log('Create session: ', url);
|
|
50
|
-
const result = await this.post(url);
|
|
51
|
-
|
|
179
|
+
const result = await this.sdk.http.post(url);
|
|
180
|
+
this.inspectCommonStatusCodes(result.status);
|
|
181
|
+
if (result.status !== 200) {
|
|
182
|
+
throw new Error(`Unable to create the session. Invalid response status: ${result.status}`);
|
|
183
|
+
}
|
|
184
|
+
if (!result.body) {
|
|
185
|
+
throw new Error(`Unable to create the session. Response has no token.`);
|
|
186
|
+
}
|
|
187
|
+
const info = {
|
|
188
|
+
token: result.body,
|
|
189
|
+
};
|
|
190
|
+
const expires = this.getExpires(result.headers);
|
|
191
|
+
if (expires) {
|
|
192
|
+
info.expires = expires;
|
|
193
|
+
}
|
|
194
|
+
return info;
|
|
52
195
|
}
|
|
53
196
|
/**
|
|
54
197
|
* Initializes the authentication session.
|
|
@@ -56,17 +199,242 @@ export class StoreSdk {
|
|
|
56
199
|
* @returns The location of the authorization endpoint.
|
|
57
200
|
*/
|
|
58
201
|
async createAuthSession(token, loginPath = '/auth/login') {
|
|
59
|
-
const { baseUri } = this;
|
|
202
|
+
const { baseUri } = this.sdk;
|
|
60
203
|
const url = `${baseUri}${loginPath}`;
|
|
61
|
-
const result = await this.post(url, {
|
|
62
|
-
|
|
63
|
-
});
|
|
204
|
+
const result = await this.sdk.http.post(url, { token });
|
|
205
|
+
this.inspectCommonStatusCodes(result.status);
|
|
64
206
|
const loc = result.headers.location;
|
|
65
207
|
if (!loc) {
|
|
66
208
|
throw new Error(`The location header not returned by the server.`);
|
|
67
209
|
}
|
|
68
210
|
return loc;
|
|
69
211
|
}
|
|
212
|
+
/**
|
|
213
|
+
* Listens to the first message coming to the client from the auth endpoint.
|
|
214
|
+
* @param authPath The authorization path returned by the server info or 401 response.
|
|
215
|
+
* @param token Optional token to use.
|
|
216
|
+
*/
|
|
217
|
+
async listenAuth(authPath, token) {
|
|
218
|
+
const { baseUri, basePath = '' } = this.sdk;
|
|
219
|
+
const authUrl = new URL(`${basePath}${authPath}`, baseUri);
|
|
220
|
+
const client = await this.sdk.ws.createAndConnect(authUrl.toString(), token);
|
|
221
|
+
return new Promise((resolve, reject) => {
|
|
222
|
+
client.on('message', (data) => {
|
|
223
|
+
const message = JSON.parse(data.toString());
|
|
224
|
+
this.sdk.ws.disconnect(client)
|
|
225
|
+
.then(() => {
|
|
226
|
+
if (message.status === 'OK') {
|
|
227
|
+
resolve();
|
|
228
|
+
}
|
|
229
|
+
else {
|
|
230
|
+
reject(new Error(message.message || 'Unknown error'));
|
|
231
|
+
}
|
|
232
|
+
}).catch(cause => reject(cause));
|
|
233
|
+
});
|
|
234
|
+
});
|
|
235
|
+
}
|
|
236
|
+
/**
|
|
237
|
+
* Renews authenticated token to a new one when the token expires.
|
|
238
|
+
* @param token Optional token to use.
|
|
239
|
+
* @returns
|
|
240
|
+
*/
|
|
241
|
+
async renewToken(token = this.sdk.token) {
|
|
242
|
+
const { baseUri, basePath = '' } = this.sdk;
|
|
243
|
+
const authPath = '/sessions/renew';
|
|
244
|
+
const url = new URL(`${basePath}${authPath}`, baseUri).toString();
|
|
245
|
+
const result = await this.sdk.http.post(url, { token });
|
|
246
|
+
this.inspectCommonStatusCodes(result.status);
|
|
247
|
+
if (result.status !== 200) {
|
|
248
|
+
throw new Error(`Unable to renew the token. Invalid response status: ${result.status}`);
|
|
249
|
+
}
|
|
250
|
+
if (!result.body) {
|
|
251
|
+
throw new Error(`Unable to create the session. Response has no token.`);
|
|
252
|
+
}
|
|
253
|
+
const info = {
|
|
254
|
+
token: result.body,
|
|
255
|
+
};
|
|
256
|
+
const expires = this.getExpires(result.headers);
|
|
257
|
+
if (expires) {
|
|
258
|
+
info.expires = expires;
|
|
259
|
+
}
|
|
260
|
+
return info;
|
|
261
|
+
}
|
|
262
|
+
}
|
|
263
|
+
class BackendSdk extends SdkBase {
|
|
264
|
+
/**
|
|
265
|
+
* @returns Client information about the store configuration.
|
|
266
|
+
*/
|
|
267
|
+
async getInfo() {
|
|
268
|
+
const { baseUri } = this.sdk;
|
|
269
|
+
const url = `${baseUri}/store`;
|
|
270
|
+
const result = await this.sdk.http.get(url);
|
|
271
|
+
this.inspectCommonStatusCodes(result.status);
|
|
272
|
+
if (result.status !== 200) {
|
|
273
|
+
throw new Error(`Invalid store response. Expected 200 status and ${result.status} received.`);
|
|
274
|
+
}
|
|
275
|
+
const body = result.body;
|
|
276
|
+
let data;
|
|
277
|
+
try {
|
|
278
|
+
data = JSON.parse(body);
|
|
279
|
+
}
|
|
280
|
+
catch (e) {
|
|
281
|
+
throw new Error(`The server returned invalid response. Unable to read store status.`);
|
|
282
|
+
}
|
|
283
|
+
return data;
|
|
284
|
+
}
|
|
285
|
+
}
|
|
286
|
+
class SpacesSdk extends SdkBase {
|
|
287
|
+
/**
|
|
288
|
+
* Lists spaces in the store.
|
|
289
|
+
* @param options Optional query options.
|
|
290
|
+
*/
|
|
291
|
+
async list(options) {
|
|
292
|
+
const { token } = this.sdk;
|
|
293
|
+
const url = this.sdk.getUrl('/spaces');
|
|
294
|
+
this.sdk.appendListOptions(url, options);
|
|
295
|
+
const result = await this.sdk.http.get(url.toString(), { token });
|
|
296
|
+
this.inspectCommonStatusCodes(result.status);
|
|
297
|
+
const E_PREFIX = 'Unable to list spaces. ';
|
|
298
|
+
if (result.status !== 200) {
|
|
299
|
+
this.logInvalidResponse(result);
|
|
300
|
+
throw new Error(`${E_PREFIX}${E_RESPONSE_STATUS}${result.status}`);
|
|
301
|
+
}
|
|
302
|
+
if (!result.body) {
|
|
303
|
+
throw new Error(`${E_PREFIX}${E_RESPONSE_NO_VALUE}`);
|
|
304
|
+
}
|
|
305
|
+
let data;
|
|
306
|
+
try {
|
|
307
|
+
data = JSON.parse(result.body);
|
|
308
|
+
}
|
|
309
|
+
catch (e) {
|
|
310
|
+
throw new Error(`${E_PREFIX}${E_INVALID_JSON}.`);
|
|
311
|
+
}
|
|
312
|
+
if (!Array.isArray(data.data)) {
|
|
313
|
+
throw new Error(`${E_PREFIX}${E_RESPONSE_UNKNOWN}.`);
|
|
314
|
+
}
|
|
315
|
+
return data;
|
|
316
|
+
}
|
|
317
|
+
/**
|
|
318
|
+
* Creates a workspace in the store.
|
|
319
|
+
* @param space The workspace definition.
|
|
320
|
+
* @returns The key of the creates space.
|
|
321
|
+
*/
|
|
322
|
+
async create(space) {
|
|
323
|
+
const { token } = this.sdk;
|
|
324
|
+
const url = this.sdk.getUrl('/spaces');
|
|
325
|
+
const body = JSON.stringify(space);
|
|
326
|
+
const result = await this.sdk.http.post(url.toString(), { token, body });
|
|
327
|
+
this.inspectCommonStatusCodes(result.status);
|
|
328
|
+
const E_PREFIX = 'Unable to create a user space. ';
|
|
329
|
+
if (result.status !== 204) {
|
|
330
|
+
this.logInvalidResponse(result);
|
|
331
|
+
throw new Error(`${E_PREFIX}${E_RESPONSE_STATUS}${result.status}`);
|
|
332
|
+
}
|
|
333
|
+
const { location } = result.headers;
|
|
334
|
+
if (!location) {
|
|
335
|
+
throw new Error(`${E_PREFIX}${E_RESPONSE_LOCATION}`);
|
|
336
|
+
}
|
|
337
|
+
const id = location.split('/').pop();
|
|
338
|
+
return id;
|
|
339
|
+
}
|
|
340
|
+
/**
|
|
341
|
+
* Reads a user space definition from the store.
|
|
342
|
+
* @param key The user space key
|
|
343
|
+
* @returns The definition of the user space.
|
|
344
|
+
*/
|
|
345
|
+
async read(key) {
|
|
346
|
+
const { token } = this.sdk;
|
|
347
|
+
const url = this.sdk.getUrl(`/spaces/${key}`);
|
|
348
|
+
const result = await this.sdk.http.get(url.toString(), { token });
|
|
349
|
+
this.inspectCommonStatusCodes(result.status);
|
|
350
|
+
const E_PREFIX = 'Unable to read a user space. ';
|
|
351
|
+
if (result.status !== 200) {
|
|
352
|
+
this.logInvalidResponse(result);
|
|
353
|
+
throw new Error(`${E_PREFIX}${E_RESPONSE_STATUS}${result.status}`);
|
|
354
|
+
}
|
|
355
|
+
if (!result.body) {
|
|
356
|
+
throw new Error(`${E_PREFIX}${E_RESPONSE_NO_VALUE}`);
|
|
357
|
+
}
|
|
358
|
+
let data;
|
|
359
|
+
try {
|
|
360
|
+
data = JSON.parse(result.body);
|
|
361
|
+
}
|
|
362
|
+
catch (e) {
|
|
363
|
+
throw new Error(`${E_PREFIX}${E_INVALID_JSON}.`);
|
|
364
|
+
}
|
|
365
|
+
if (data.kind !== 'ARC#Space') {
|
|
366
|
+
throw new Error(`${E_PREFIX}${E_RESPONSE_UNKNOWN}.`);
|
|
367
|
+
}
|
|
368
|
+
return data;
|
|
369
|
+
}
|
|
370
|
+
/**
|
|
371
|
+
* Patches a user space in the store.
|
|
372
|
+
* @param key The key of the user space to patch
|
|
373
|
+
* @param value The JSON patch to be processed.
|
|
374
|
+
* @returns The JSON patch to revert the change using the `json8-patch` library
|
|
375
|
+
*/
|
|
376
|
+
async patch(key, value) {
|
|
377
|
+
const { token } = this.sdk;
|
|
378
|
+
const url = this.sdk.getUrl(`/spaces/${key}`);
|
|
379
|
+
const body = JSON.stringify(value);
|
|
380
|
+
const result = await this.sdk.http.patch(url.toString(), { token, body });
|
|
381
|
+
this.inspectCommonStatusCodes(result.status);
|
|
382
|
+
const E_PREFIX = 'Unable to patch a user space. ';
|
|
383
|
+
if (result.status !== 200) {
|
|
384
|
+
this.logInvalidResponse(result);
|
|
385
|
+
throw new Error(`${E_PREFIX}${E_RESPONSE_STATUS}${result.status}`);
|
|
386
|
+
}
|
|
387
|
+
if (!result.body) {
|
|
388
|
+
throw new Error(`${E_PREFIX}${E_RESPONSE_NO_VALUE}`);
|
|
389
|
+
}
|
|
390
|
+
let data;
|
|
391
|
+
try {
|
|
392
|
+
data = JSON.parse(result.body);
|
|
393
|
+
}
|
|
394
|
+
catch (e) {
|
|
395
|
+
throw new Error(`${E_PREFIX}${E_INVALID_JSON}.`);
|
|
396
|
+
}
|
|
397
|
+
if (!data.revert) {
|
|
398
|
+
throw new Error(`${E_PREFIX}${E_RESPONSE_UNKNOWN}.`);
|
|
399
|
+
}
|
|
400
|
+
return data.revert;
|
|
401
|
+
}
|
|
402
|
+
/**
|
|
403
|
+
* Deletes the space in the store.
|
|
404
|
+
*
|
|
405
|
+
* @param key The key of the space to delete.
|
|
406
|
+
*/
|
|
407
|
+
async delete(key) {
|
|
408
|
+
const { token } = this.sdk;
|
|
409
|
+
const url = this.sdk.getUrl(`/spaces/${key}`);
|
|
410
|
+
const result = await this.sdk.http.delete(url.toString(), { token });
|
|
411
|
+
this.inspectCommonStatusCodes(result.status);
|
|
412
|
+
const E_PREFIX = 'Unable to delete a user space. ';
|
|
413
|
+
if (result.status !== 204) {
|
|
414
|
+
this.logInvalidResponse(result);
|
|
415
|
+
throw new Error(`${E_PREFIX}${E_RESPONSE_STATUS}${result.status}`);
|
|
416
|
+
}
|
|
417
|
+
}
|
|
418
|
+
/**
|
|
419
|
+
* Updates the sharing options of the space.
|
|
420
|
+
*
|
|
421
|
+
* @param key The user space key
|
|
422
|
+
* @param value The patch operation on the space's ACL
|
|
423
|
+
*/
|
|
424
|
+
async patchUsers(key, value) {
|
|
425
|
+
const { token } = this.sdk;
|
|
426
|
+
const url = this.sdk.getUrl(`/spaces/${key}/users`);
|
|
427
|
+
const body = JSON.stringify(value);
|
|
428
|
+
const result = await this.sdk.http.patch(url.toString(), { token, body });
|
|
429
|
+
this.inspectCommonStatusCodes(result.status);
|
|
430
|
+
const E_PREFIX = 'Unable to patch a user space. ';
|
|
431
|
+
if (result.status !== 204) {
|
|
432
|
+
this.logInvalidResponse(result);
|
|
433
|
+
throw new Error(`${E_PREFIX}${E_RESPONSE_STATUS}${result.status}`);
|
|
434
|
+
}
|
|
435
|
+
}
|
|
436
|
+
}
|
|
437
|
+
class HttpClient extends SdkBase {
|
|
70
438
|
/**
|
|
71
439
|
* Performs the GET request.
|
|
72
440
|
*
|
|
@@ -88,7 +456,7 @@ export class StoreSdk {
|
|
|
88
456
|
}
|
|
89
457
|
_get(url, opts = {}) {
|
|
90
458
|
return new Promise((resolve, reject) => {
|
|
91
|
-
const { method = 'GET', headers = {}, token = this.token } = opts;
|
|
459
|
+
const { method = 'GET', headers = {}, token = this.sdk.token } = opts;
|
|
92
460
|
if (token) {
|
|
93
461
|
headers.authorization = `Bearer ${token}`;
|
|
94
462
|
}
|
|
@@ -117,7 +485,7 @@ export class StoreSdk {
|
|
|
117
485
|
}
|
|
118
486
|
post(url, opts = {}) {
|
|
119
487
|
return new Promise((resolve, reject) => {
|
|
120
|
-
const { method = 'POST', headers = {}, token = this.token } = opts;
|
|
488
|
+
const { method = 'POST', headers = {}, token = this.sdk.token } = opts;
|
|
121
489
|
if (token) {
|
|
122
490
|
headers.authorization = `Bearer ${token}`;
|
|
123
491
|
}
|
|
@@ -155,36 +523,14 @@ export class StoreSdk {
|
|
|
155
523
|
options.method = 'DELETE';
|
|
156
524
|
return this.post(url, options);
|
|
157
525
|
}
|
|
158
|
-
|
|
159
|
-
|
|
160
|
-
* @param authPath The authorization path returned by the server info or 401 response.
|
|
161
|
-
* @param token Optional token to use.
|
|
162
|
-
*/
|
|
163
|
-
async listenAuth(authPath, token) {
|
|
164
|
-
const { baseUri, basePath = '' } = this;
|
|
165
|
-
const authUrl = new URL(`${basePath}${authPath}`, baseUri);
|
|
166
|
-
const client = await this.createAndConnect(authUrl.toString(), token);
|
|
167
|
-
return new Promise((resolve, reject) => {
|
|
168
|
-
client.on('message', (data) => {
|
|
169
|
-
const message = JSON.parse(data.toString());
|
|
170
|
-
this.disconnect(client)
|
|
171
|
-
.then(() => {
|
|
172
|
-
if (message.status === 'OK') {
|
|
173
|
-
resolve();
|
|
174
|
-
}
|
|
175
|
-
else {
|
|
176
|
-
reject(new Error(message.message || 'Unknown error'));
|
|
177
|
-
}
|
|
178
|
-
}).catch(cause => reject(cause));
|
|
179
|
-
});
|
|
180
|
-
});
|
|
181
|
-
}
|
|
526
|
+
}
|
|
527
|
+
class WsClient extends SdkBase {
|
|
182
528
|
/**
|
|
183
529
|
* Creates a WS client with optional token
|
|
184
530
|
* @param addr The ws:// address
|
|
185
531
|
* @param token Optional token to add.
|
|
186
532
|
*/
|
|
187
|
-
|
|
533
|
+
getClient(addr, token = this.sdk.token) {
|
|
188
534
|
let url = addr;
|
|
189
535
|
if (token) {
|
|
190
536
|
url += url.includes('?') ? '&' : '?';
|
|
@@ -236,9 +582,207 @@ export class StoreSdk {
|
|
|
236
582
|
* The combination of `getClient()` and `connect()`.
|
|
237
583
|
*/
|
|
238
584
|
async createAndConnect(addr, token) {
|
|
239
|
-
const client = this.
|
|
585
|
+
const client = this.getClient(addr, token);
|
|
240
586
|
await this.connect(client);
|
|
241
587
|
return client;
|
|
242
588
|
}
|
|
243
589
|
}
|
|
590
|
+
class ProjectsSdk extends SdkBase {
|
|
591
|
+
/**
|
|
592
|
+
* Creates a project in a user space.
|
|
593
|
+
*
|
|
594
|
+
* @param key The user space key
|
|
595
|
+
* @param project THe project to create
|
|
596
|
+
* @returns The key of the created project.
|
|
597
|
+
*/
|
|
598
|
+
async create(key, project) {
|
|
599
|
+
const { token } = this.sdk;
|
|
600
|
+
const url = this.sdk.getUrl(`/spaces/${key}/projects`);
|
|
601
|
+
const body = JSON.stringify(project);
|
|
602
|
+
const result = await this.sdk.http.post(url.toString(), { token, body });
|
|
603
|
+
this.inspectCommonStatusCodes(result.status);
|
|
604
|
+
const E_PREFIX = 'Unable to create a project. ';
|
|
605
|
+
if (result.status !== 204) {
|
|
606
|
+
this.logInvalidResponse(result);
|
|
607
|
+
throw new Error(`${E_PREFIX}${E_RESPONSE_STATUS}${result.status}`);
|
|
608
|
+
}
|
|
609
|
+
const { location } = result.headers;
|
|
610
|
+
if (!location) {
|
|
611
|
+
throw new Error(`${E_PREFIX}${E_RESPONSE_LOCATION}`);
|
|
612
|
+
}
|
|
613
|
+
const id = location.split('/').pop();
|
|
614
|
+
return id;
|
|
615
|
+
}
|
|
616
|
+
/**
|
|
617
|
+
* Reads a project definition from the store.
|
|
618
|
+
* @param space The user space key
|
|
619
|
+
* @param project The project key
|
|
620
|
+
* @returns The definition of the project.
|
|
621
|
+
*/
|
|
622
|
+
async read(space, project) {
|
|
623
|
+
const { token } = this.sdk;
|
|
624
|
+
const url = this.sdk.getUrl(`/spaces/${space}/projects/${project}`);
|
|
625
|
+
const result = await this.sdk.http.get(url.toString(), { token });
|
|
626
|
+
this.inspectCommonStatusCodes(result.status);
|
|
627
|
+
const E_PREFIX = 'Unable to read a project. ';
|
|
628
|
+
if (result.status !== 200) {
|
|
629
|
+
this.logInvalidResponse(result);
|
|
630
|
+
throw new Error(`${E_PREFIX}${E_RESPONSE_STATUS}${result.status}`);
|
|
631
|
+
}
|
|
632
|
+
if (!result.body) {
|
|
633
|
+
throw new Error(`${E_PREFIX}${E_RESPONSE_NO_VALUE}`);
|
|
634
|
+
}
|
|
635
|
+
let data;
|
|
636
|
+
try {
|
|
637
|
+
data = JSON.parse(result.body);
|
|
638
|
+
}
|
|
639
|
+
catch (e) {
|
|
640
|
+
throw new Error(`${E_PREFIX}${E_INVALID_JSON}.`);
|
|
641
|
+
}
|
|
642
|
+
if (data.kind !== 'ARC#HttpProject') {
|
|
643
|
+
throw new Error(`${E_PREFIX}${E_RESPONSE_UNKNOWN}.`);
|
|
644
|
+
}
|
|
645
|
+
return data;
|
|
646
|
+
}
|
|
647
|
+
/**
|
|
648
|
+
* Lists projects in the space
|
|
649
|
+
*
|
|
650
|
+
* @param space The user space key
|
|
651
|
+
* @param options Optional query options.
|
|
652
|
+
*/
|
|
653
|
+
async list(space, options) {
|
|
654
|
+
const { token } = this.sdk;
|
|
655
|
+
const url = this.sdk.getUrl(`/spaces/${space}/projects`);
|
|
656
|
+
this.sdk.appendListOptions(url, options);
|
|
657
|
+
const result = await this.sdk.http.get(url.toString(), { token });
|
|
658
|
+
this.inspectCommonStatusCodes(result.status);
|
|
659
|
+
const E_PREFIX = 'Unable to list projects. ';
|
|
660
|
+
if (result.status !== 200) {
|
|
661
|
+
this.logInvalidResponse(result);
|
|
662
|
+
throw new Error(`${E_PREFIX}${E_RESPONSE_STATUS}${result.status}`);
|
|
663
|
+
}
|
|
664
|
+
if (!result.body) {
|
|
665
|
+
throw new Error(`${E_PREFIX}${E_RESPONSE_NO_VALUE}`);
|
|
666
|
+
}
|
|
667
|
+
let data;
|
|
668
|
+
try {
|
|
669
|
+
data = JSON.parse(result.body);
|
|
670
|
+
}
|
|
671
|
+
catch (e) {
|
|
672
|
+
throw new Error(`${E_PREFIX}${E_INVALID_JSON}.`);
|
|
673
|
+
}
|
|
674
|
+
if (!Array.isArray(data.data)) {
|
|
675
|
+
throw new Error(`${E_PREFIX}${E_RESPONSE_UNKNOWN}.`);
|
|
676
|
+
}
|
|
677
|
+
return data;
|
|
678
|
+
}
|
|
679
|
+
/**
|
|
680
|
+
* Deletes a project form the store.
|
|
681
|
+
*
|
|
682
|
+
* @param space The key of the parent space.
|
|
683
|
+
* @param project The key of the project to delete.
|
|
684
|
+
*/
|
|
685
|
+
async delete(space, project) {
|
|
686
|
+
const { token } = this.sdk;
|
|
687
|
+
const url = this.sdk.getUrl(`/spaces/${space}/projects/${project}`);
|
|
688
|
+
const result = await this.sdk.http.delete(url.toString(), { token });
|
|
689
|
+
this.inspectCommonStatusCodes(result.status);
|
|
690
|
+
const E_PREFIX = 'Unable to delete a project. ';
|
|
691
|
+
if (result.status !== 204) {
|
|
692
|
+
this.logInvalidResponse(result);
|
|
693
|
+
throw new Error(`${E_PREFIX}${E_RESPONSE_STATUS}${result.status}`);
|
|
694
|
+
}
|
|
695
|
+
}
|
|
696
|
+
/**
|
|
697
|
+
* Patches a project in the store.
|
|
698
|
+
* @param space The key of the parent user space
|
|
699
|
+
* @param project The key of project to patch.
|
|
700
|
+
* @param value The JSON patch to be processed.
|
|
701
|
+
* @returns The JSON patch to revert the change using the `json8-patch` library
|
|
702
|
+
*/
|
|
703
|
+
async patch(space, project, value) {
|
|
704
|
+
const { token } = this.sdk;
|
|
705
|
+
const url = this.sdk.getUrl(`/spaces/${space}/projects/${project}`);
|
|
706
|
+
const body = JSON.stringify(value);
|
|
707
|
+
const result = await this.sdk.http.patch(url.toString(), { token, body });
|
|
708
|
+
this.inspectCommonStatusCodes(result.status);
|
|
709
|
+
const E_PREFIX = 'Unable to patch a project. ';
|
|
710
|
+
if (result.status !== 200) {
|
|
711
|
+
this.logInvalidResponse(result);
|
|
712
|
+
throw new Error(`${E_PREFIX}${E_RESPONSE_STATUS}${result.status}`);
|
|
713
|
+
}
|
|
714
|
+
if (!result.body) {
|
|
715
|
+
throw new Error(`${E_PREFIX}${E_RESPONSE_NO_VALUE}`);
|
|
716
|
+
}
|
|
717
|
+
let data;
|
|
718
|
+
try {
|
|
719
|
+
data = JSON.parse(result.body);
|
|
720
|
+
}
|
|
721
|
+
catch (e) {
|
|
722
|
+
throw new Error(`${E_PREFIX}${E_INVALID_JSON}.`);
|
|
723
|
+
}
|
|
724
|
+
if (!data.revert) {
|
|
725
|
+
throw new Error(`${E_PREFIX}${E_RESPONSE_UNKNOWN}.`);
|
|
726
|
+
}
|
|
727
|
+
return data.revert;
|
|
728
|
+
}
|
|
729
|
+
}
|
|
730
|
+
class UsersSdk extends SdkBase {
|
|
731
|
+
async me() {
|
|
732
|
+
const { token } = this.sdk;
|
|
733
|
+
const url = this.sdk.getUrl(`/users/me`);
|
|
734
|
+
const result = await this.sdk.http.get(url.toString(), { token });
|
|
735
|
+
this.inspectCommonStatusCodes(result.status);
|
|
736
|
+
const E_PREFIX = 'Unable to read a user. ';
|
|
737
|
+
if (result.status !== 200) {
|
|
738
|
+
this.logInvalidResponse(result);
|
|
739
|
+
throw new Error(`${E_PREFIX}${E_RESPONSE_STATUS}${result.status}`);
|
|
740
|
+
}
|
|
741
|
+
if (!result.body) {
|
|
742
|
+
throw new Error(`${E_PREFIX}${E_RESPONSE_NO_VALUE}`);
|
|
743
|
+
}
|
|
744
|
+
let data;
|
|
745
|
+
try {
|
|
746
|
+
data = JSON.parse(result.body);
|
|
747
|
+
}
|
|
748
|
+
catch (e) {
|
|
749
|
+
throw new Error(`${E_PREFIX}${E_INVALID_JSON}.`);
|
|
750
|
+
}
|
|
751
|
+
if (!data.key) {
|
|
752
|
+
throw new Error(`${E_PREFIX}${E_RESPONSE_UNKNOWN}.`);
|
|
753
|
+
}
|
|
754
|
+
return data;
|
|
755
|
+
}
|
|
756
|
+
/**
|
|
757
|
+
* Lists users in the store
|
|
758
|
+
*
|
|
759
|
+
* @param options Optional query options.
|
|
760
|
+
*/
|
|
761
|
+
async list(options) {
|
|
762
|
+
const { token } = this.sdk;
|
|
763
|
+
const url = this.sdk.getUrl(`/users`);
|
|
764
|
+
this.sdk.appendListOptions(url, options);
|
|
765
|
+
const result = await this.sdk.http.get(url.toString(), { token });
|
|
766
|
+
this.inspectCommonStatusCodes(result.status);
|
|
767
|
+
const E_PREFIX = 'Unable to list projects. ';
|
|
768
|
+
if (result.status !== 200) {
|
|
769
|
+
this.logInvalidResponse(result);
|
|
770
|
+
throw new Error(`${E_PREFIX}${E_RESPONSE_STATUS}${result.status}`);
|
|
771
|
+
}
|
|
772
|
+
if (!result.body) {
|
|
773
|
+
throw new Error(`${E_PREFIX}${E_RESPONSE_NO_VALUE}`);
|
|
774
|
+
}
|
|
775
|
+
let data;
|
|
776
|
+
try {
|
|
777
|
+
data = JSON.parse(result.body);
|
|
778
|
+
}
|
|
779
|
+
catch (e) {
|
|
780
|
+
throw new Error(`${E_PREFIX}${E_INVALID_JSON}.`);
|
|
781
|
+
}
|
|
782
|
+
if (!Array.isArray(data.data)) {
|
|
783
|
+
throw new Error(`${E_PREFIX}${E_RESPONSE_UNKNOWN}.`);
|
|
784
|
+
}
|
|
785
|
+
return data;
|
|
786
|
+
}
|
|
787
|
+
}
|
|
244
788
|
//# sourceMappingURL=StoreSdk.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"StoreSdk.js","sourceRoot":"","sources":["../../../../src/runtime/store/StoreSdk.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"StoreSdk.js","sourceRoot":"","sources":["../../../../src/runtime/store/StoreSdk.ts"],"names":[],"mappings":"AAAA,OAAO,IAAI,MAAM,MAAM,CAAC;AACxB,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,SAAS,MAAM,IAAI,CAAC;AAC3B,OAAO,EAAE,GAAG,EAAE,MAAM,KAAK,CAAC;AAqC1B,MAAM,cAAc,GAAG,mCAAmC,CAAC;AAC3D,MAAM,mBAAmB,GAAG,4BAA4B,CAAC;AACzD,MAAM,iBAAiB,GAAG,2BAA2B,CAAC;AACtD,MAAM,kBAAkB,GAAG,kCAAkC,CAAC;AAC9D,MAAM,mBAAmB,GAAG,wCAAwC,CAAC;AAErE,MAAM,aAAa,GAAG,MAAM,CAAC,SAAS,CAAC,CAAC;AAExC;;GAEG;AACH,MAAM,OAAO,QAAQ;IAsEiB;IArEpC;;OAEG;IACH,KAAK,CAAU;IACf;;OAEG;IACH,IAAI,GAAG,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;IACzB;;OAEG;IACH,KAAK,GAAG,IAAI,UAAU,CAAC,IAAI,CAAC,CAAC;IAC7B;;OAEG;IACH,KAAK,GAAG,IAAI,SAAS,CAAC,IAAI,CAAC,CAAC;IAC5B;;OAEG;IACH,OAAO,GAAG,IAAI,WAAW,CAAC,IAAI,CAAC,CAAC;IAChC;;OAEG;IACH,IAAI,GAAG,IAAI,QAAQ,CAAC,IAAI,CAAC,CAAC;IAC1B;;OAEG;IACH,IAAI,GAAG,IAAI,UAAU,CAAC,IAAI,CAAC,CAAC;IAC5B;;OAEG;IACH,EAAE,GAAG,IAAI,QAAQ,CAAC,IAAI,CAAC,CAAC;IAGxB,CAAC,aAAa,CAAC,GAAG,EAAE,CAAC;IAErB;;OAEG;IACH,IAAI,OAAO;QACT,OAAO,IAAI,CAAC,aAAa,CAAC,CAAC;IAC7B,CAAC;IAED;;OAEG;IACH,IAAI,OAAO,CAAC,KAAa;QACvB,IAAI,CAAC,KAAK,EAAE;YACV,MAAM,IAAI,KAAK,CAAC,+BAA+B,CAAC,CAAC;SAClD;QACD,IAAI,GAAQ,CAAC;QACb,IAAI;YACF,GAAG,GAAG,IAAI,GAAG,CAAC,KAAK,CAAC,CAAC;SACtB;QAAC,OAAO,CAAC,EAAE;YACV,MAAM,IAAI,KAAK,CAAC,6BAA6B,CAAC,CAAC;SAChD;QACD,IAAI,CAAC,aAAa,CAAC,GAAG,GAAG,CAAC,MAAM,CAAC;QACjC,MAAM,EAAE,QAAQ,EAAE,GAAG,GAAG,CAAC;QACzB,IAAI,QAAQ,IAAI,QAAQ,KAAK,GAAG,EAAE;YAChC,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC;SAC1B;aAAM;YACL,IAAI,CAAC,QAAQ,GAAG,SAAS,CAAC;SAC3B;IACH,CAAC;IAED;;;OAGG;IACH,YAAY,OAAe,EAAS,QAAiB;QAAjB,aAAQ,GAAR,QAAQ,CAAS;QACnD,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;IACzB,CAAC;IAED;;;;OAIG;IACH,MAAM,CAAC,IAAI,GAAC,GAAG;QACb,MAAM,EAAE,OAAO,EAAE,QAAQ,GAAC,EAAE,EAAE,GAAG,IAAI,CAAC;QACtC,IAAI,QAAQ,GAAG,IAAI,CAAC;QACpB,IAAI,QAAQ,IAAI,QAAQ,CAAC,UAAU,CAAC,QAAQ,CAAC,EAAE;YAC7C,QAAQ,GAAG,QAAQ,CAAC,SAAS,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;SAChD;QACD,OAAO,IAAI,GAAG,CAAC,GAAG,QAAQ,GAAG,QAAQ,EAAE,EAAE,OAAO,CAAC,CAAC;IACpD,CAAC;IAED;;;;OAIG;IACH,iBAAiB,CAAC,GAAQ,EAAE,UAAwB,EAAE;QACpD,MAAM,EAAE,YAAY,EAAE,GAAG,GAAG,CAAC;QAC7B,IAAI,OAAO,CAAC,MAAM,EAAE;YAClB,YAAY,CAAC,GAAG,CAAC,QAAQ,EAAE,OAAO,CAAC,MAAM,CAAC,CAAC;SAC5C;aAAM;YACL,IAAI,OAAO,OAAO,CAAC,KAAK,KAAK,QAAQ,EAAE;gBACrC,YAAY,CAAC,GAAG,CAAC,OAAO,EAAE,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC;aAClD;YACD,IAAI,OAAO,CAAC,KAAK,EAAE;gBACjB,YAAY,CAAC,GAAG,CAAC,OAAO,EAAE,OAAO,CAAC,KAAK,CAAC,CAAC;aAC1C;YACD,IAAI,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,UAAU,CAAC,EAAE;gBACrC,OAAO,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC,KAAK,EAAE,EAAE;oBACnC,YAAY,CAAC,MAAM,CAAC,YAAY,EAAE,KAAK,CAAC,CAAC;gBAC3C,CAAC,CAAC,CAAC;aACJ;SACF;IACH,CAAC;CACF;AAED,MAAM,OAAO;IACQ;IAAnB,YAAmB,GAAa;QAAb,QAAG,GAAH,GAAG,CAAU;IAAG,CAAC;IAE1B,kBAAkB,CAAC,QAAwB;QACnD,IAAI,QAAQ,CAAC,IAAI,EAAE;YACjB,IAAI;gBACF,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;gBACvC,IAAI,IAAI,CAAC,OAAO,EAAE;oBAChB,OAAO,CAAC,IAAI,CAAC,oBAAoB,IAAI,CAAC,OAAO,EAAE,CAAC,CAAC;iBAClD;aACF;YAAC,OAAO,CAAC,EAAE;gBACV,IAAI;aACL;SACF;IACH,CAAC;IAED;;;OAGG;IACO,wBAAwB,CAAC,MAAc;QAC/C,IAAI,MAAM,KAAK,GAAG,EAAE;YAClB,MAAM,IAAI,KAAK,CAAC,YAAY,CAAC,CAAC;SAC/B;QACD,IAAI,MAAM,KAAK,GAAG,EAAE;YAClB,MAAM,IAAI,KAAK,CAAC,sCAAsC,CAAC,CAAC;SACzD;QACD,IAAI,MAAM,KAAK,GAAG,EAAE;YAClB,MAAM,IAAI,KAAK,CAAC,iBAAiB,CAAC,CAAC;SACpC;IACH,CAAC;CACF;AAED,MAAM,OAAQ,SAAQ,OAAO;IACjB,UAAU,CAAC,OAAiC;QACpD,IAAI,CAAC,OAAO,CAAC,OAAO,EAAE;YACpB,OAAO,SAAS,CAAC;SAClB;QACD,MAAM,CAAC,GAAG,IAAI,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;QACpC,MAAM,IAAI,GAAG,CAAC,CAAC,OAAO,EAAE,CAAC;QACzB,IAAI,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE;YACtB,OAAO,CAAC,IAAI,CAAC,gEAAgE,CAAC,CAAC;YAC/E,OAAO,SAAS,CAAC;SAClB;QACD,OAAO,IAAI,CAAC;IACd,CAAC;IAED;;;OAGG;IACH,KAAK,CAAC,aAAa;QACjB,MAAM,EAAE,OAAO,EAAE,GAAG,IAAI,CAAC,GAAG,CAAC;QAC7B,MAAM,GAAG,GAAG,GAAG,OAAO,WAAW,CAAC;QAClC,wCAAwC;QACxC,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QAC7C,IAAI,CAAC,wBAAwB,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;QAC7C,IAAI,MAAM,CAAC,MAAM,KAAK,GAAG,EAAE;YACzB,MAAM,IAAI,KAAK,CAAC,0DAA0D,MAAM,CAAC,MAAM,EAAE,CAAC,CAAC;SAC5F;QACD,IAAI,CAAC,MAAM,CAAC,IAAI,EAAE;YAChB,MAAM,IAAI,KAAK,CAAC,sDAAsD,CAAC,CAAC;SACzE;QACD,MAAM,IAAI,GAAoB;YAC5B,KAAK,EAAE,MAAM,CAAC,IAAI;SACnB,CAAC;QACF,MAAM,OAAO,GAAG,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;QAChD,IAAI,OAAO,EAAE;YACX,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;SACxB;QACD,OAAO,IAAI,CAAC;IACd,CAAC;IAED;;;;OAIG;IACH,KAAK,CAAC,iBAAiB,CAAC,KAAc,EAAE,SAAS,GAAG,aAAa;QAC/D,MAAM,EAAE,OAAO,EAAE,GAAG,IAAI,CAAC,GAAG,CAAC;QAC7B,MAAM,GAAG,GAAG,GAAG,OAAO,GAAG,SAAS,EAAE,CAAC;QACrC,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,EAAE,KAAK,EAAE,CAAC,CAAC;QACxD,IAAI,CAAC,wBAAwB,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;QAC7C,MAAM,GAAG,GAAG,MAAM,CAAC,OAAO,CAAC,QAAQ,CAAC;QACpC,IAAI,CAAC,GAAG,EAAE;YACR,MAAM,IAAI,KAAK,CAAC,iDAAiD,CAAC,CAAC;SACpE;QACD,OAAO,GAAG,CAAC;IACb,CAAC;IAED;;;;OAIG;IACH,KAAK,CAAC,UAAU,CAAC,QAAgB,EAAE,KAAc;QAC/C,MAAM,EAAE,OAAO,EAAE,QAAQ,GAAC,EAAE,EAAE,GAAG,IAAI,CAAC,GAAG,CAAC;QAC1C,MAAM,OAAO,GAAG,IAAI,GAAG,CAAC,GAAG,QAAQ,GAAG,QAAQ,EAAE,EAAE,OAAO,CAAC,CAAC;QAC3D,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,gBAAgB,CAAC,OAAO,CAAC,QAAQ,EAAE,EAAE,KAAK,CAAC,CAAC;QAC7E,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;YACrC,MAAM,CAAC,EAAE,CAAC,SAAS,EAAE,CAAC,IAAY,EAAE,EAAE;gBACpC,MAAM,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,QAAQ,EAAE,CAAC,CAAC;gBAC5C,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,UAAU,CAAC,MAAM,CAAC;qBAC7B,IAAI,CAAC,GAAG,EAAE;oBACT,IAAI,OAAO,CAAC,MAAM,KAAK,IAAI,EAAE;wBAC3B,OAAO,EAAE,CAAC;qBACX;yBAAM;wBACL,MAAM,CAAC,IAAI,KAAK,CAAC,OAAO,CAAC,OAAO,IAAI,eAAe,CAAC,CAAC,CAAC;qBACvD;gBACH,CAAC,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,EAAE,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC;YACnC,CAAC,CAAC,CAAC;QACL,CAAC,CAAC,CAAC;IACL,CAAC;IAED;;;;OAIG;IACH,KAAK,CAAC,UAAU,CAAC,KAAK,GAAG,IAAI,CAAC,GAAG,CAAC,KAAK;QACrC,MAAM,EAAE,OAAO,EAAE,QAAQ,GAAC,EAAE,EAAE,GAAG,IAAI,CAAC,GAAG,CAAC;QAC1C,MAAM,QAAQ,GAAG,iBAAiB,CAAC;QACnC,MAAM,GAAG,GAAG,IAAI,GAAG,CAAC,GAAG,QAAQ,GAAG,QAAQ,EAAE,EAAE,OAAO,CAAC,CAAC,QAAQ,EAAE,CAAC;QAClE,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,EAAE,KAAK,EAAE,CAAC,CAAC;QACxD,IAAI,CAAC,wBAAwB,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;QAC7C,IAAI,MAAM,CAAC,MAAM,KAAK,GAAG,EAAE;YACzB,MAAM,IAAI,KAAK,CAAC,uDAAuD,MAAM,CAAC,MAAM,EAAE,CAAC,CAAC;SACzF;QACD,IAAI,CAAC,MAAM,CAAC,IAAI,EAAE;YAChB,MAAM,IAAI,KAAK,CAAC,sDAAsD,CAAC,CAAC;SACzE;QACD,MAAM,IAAI,GAAoB;YAC5B,KAAK,EAAE,MAAM,CAAC,IAAI;SACnB,CAAC;QACF,MAAM,OAAO,GAAG,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;QAChD,IAAI,OAAO,EAAE;YACX,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;SACxB;QACD,OAAO,IAAI,CAAC;IACd,CAAC;CACF;AAED,MAAM,UAAW,SAAQ,OAAO;IAC9B;;OAEG;IACH,KAAK,CAAC,OAAO;QACX,MAAM,EAAE,OAAO,EAAE,GAAG,IAAI,CAAC,GAAG,CAAC;QAC7B,MAAM,GAAG,GAAG,GAAG,OAAO,QAAQ,CAAC;QAC/B,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;QAC5C,IAAI,CAAC,wBAAwB,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;QAC7C,IAAI,MAAM,CAAC,MAAM,KAAK,GAAG,EAAE;YACzB,MAAM,IAAI,KAAK,CAAC,mDAAmD,MAAM,CAAC,MAAM,YAAY,CAAC,CAAC;SAC/F;QACD,MAAM,IAAI,GAAG,MAAM,CAAC,IAAc,CAAC;QACnC,IAAI,IAAI,CAAC;QACT,IAAI;YACF,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;SACzB;QAAC,OAAO,CAAC,EAAE;YACV,MAAM,IAAI,KAAK,CAAC,oEAAoE,CAAC,CAAC;SACvF;QACD,OAAO,IAAoB,CAAC;IAC9B,CAAC;CACF;AAED,MAAM,SAAU,SAAQ,OAAO;IAC7B;;;OAGG;IACH,KAAK,CAAC,IAAI,CAAC,OAAsB;QAC/B,MAAM,EAAE,KAAK,EAAE,GAAG,IAAI,CAAC,GAAG,CAAC;QAC3B,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;QACvC,IAAI,CAAC,GAAG,CAAC,iBAAiB,CAAC,GAAG,EAAE,OAAO,CAAC,CAAC;QACzC,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,QAAQ,EAAE,EAAE,EAAE,KAAK,EAAE,CAAC,CAAC;QAClE,IAAI,CAAC,wBAAwB,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;QAC7C,MAAM,QAAQ,GAAG,yBAAyB,CAAC;QAC3C,IAAI,MAAM,CAAC,MAAM,KAAK,GAAG,EAAE;YACzB,IAAI,CAAC,kBAAkB,CAAC,MAAM,CAAC,CAAC;YAChC,MAAM,IAAI,KAAK,CAAC,GAAG,QAAQ,GAAG,iBAAiB,GAAG,MAAM,CAAC,MAAM,EAAE,CAAC,CAAC;SACpE;QACD,IAAI,CAAC,MAAM,CAAC,IAAI,EAAE;YAChB,MAAM,IAAI,KAAK,CAAC,GAAG,QAAQ,GAAG,mBAAmB,EAAE,CAAC,CAAC;SACtD;QACD,IAAI,IAAmB,CAAC;QACxB,IAAI;YACF,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;SAChC;QAAC,OAAO,CAAC,EAAE;YACV,MAAM,IAAI,KAAK,CAAC,GAAG,QAAQ,GAAG,cAAc,GAAG,CAAC,CAAC;SAClD;QACD,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE;YAC7B,MAAM,IAAI,KAAK,CAAC,GAAG,QAAQ,GAAG,kBAAkB,GAAG,CAAC,CAAC;SACtD;QACD,OAAO,IAAI,CAAC;IACd,CAAC;IAED;;;;OAIG;IACH,KAAK,CAAC,MAAM,CAAC,KAA6B;QACxC,MAAM,EAAE,KAAK,EAAE,GAAG,IAAI,CAAC,GAAG,CAAC;QAC3B,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;QACvC,MAAM,IAAI,GAAG,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC;QACnC,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,QAAQ,EAAE,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC;QACzE,IAAI,CAAC,wBAAwB,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;QAC7C,MAAM,QAAQ,GAAG,iCAAiC,CAAC;QACnD,IAAI,MAAM,CAAC,MAAM,KAAK,GAAG,EAAE;YACzB,IAAI,CAAC,kBAAkB,CAAC,MAAM,CAAC,CAAC;YAChC,MAAM,IAAI,KAAK,CAAC,GAAG,QAAQ,GAAG,iBAAiB,GAAG,MAAM,CAAC,MAAM,EAAE,CAAC,CAAC;SACpE;QACD,MAAM,EAAE,QAAQ,EAAE,GAAG,MAAM,CAAC,OAAO,CAAC;QACpC,IAAI,CAAC,QAAQ,EAAE;YACb,MAAM,IAAI,KAAK,CAAC,GAAG,QAAQ,GAAG,mBAAmB,EAAE,CAAC,CAAC;SACtD;QACD,MAAM,EAAE,GAAG,QAAQ,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,CAAC;QACrC,OAAO,EAAY,CAAC;IACtB,CAAC;IAED;;;;OAIG;IACH,KAAK,CAAC,IAAI,CAAC,GAAW;QACpB,MAAM,EAAE,KAAK,EAAE,GAAG,IAAI,CAAC,GAAG,CAAC;QAC3B,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,WAAW,GAAG,EAAE,CAAC,CAAC;QAC9C,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,QAAQ,EAAE,EAAE,EAAE,KAAK,EAAE,CAAC,CAAC;QAClE,IAAI,CAAC,wBAAwB,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;QAC7C,MAAM,QAAQ,GAAG,+BAA+B,CAAC;QACjD,IAAI,MAAM,CAAC,MAAM,KAAK,GAAG,EAAE;YACzB,IAAI,CAAC,kBAAkB,CAAC,MAAM,CAAC,CAAC;YAChC,MAAM,IAAI,KAAK,CAAC,GAAG,QAAQ,GAAG,iBAAiB,GAAG,MAAM,CAAC,MAAM,EAAE,CAAC,CAAC;SACpE;QACD,IAAI,CAAC,MAAM,CAAC,IAAI,EAAE;YAChB,MAAM,IAAI,KAAK,CAAC,GAAG,QAAQ,GAAG,mBAAmB,EAAE,CAAC,CAAC;SACtD;QACD,IAAI,IAAoB,CAAC;QACzB,IAAI;YACF,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;SAChC;QAAC,OAAO,CAAC,EAAE;YACV,MAAM,IAAI,KAAK,CAAC,GAAG,QAAQ,GAAG,cAAc,GAAG,CAAC,CAAC;SAClD;QACD,IAAI,IAAI,CAAC,IAAI,KAAK,WAAW,EAAE;YAC7B,MAAM,IAAI,KAAK,CAAC,GAAG,QAAQ,GAAG,kBAAkB,GAAG,CAAC,CAAC;SACtD;QACD,OAAO,IAAI,CAAC;IACd,CAAC;IAED;;;;;OAKG;IACH,KAAK,CAAC,KAAK,CAAC,GAAW,EAAE,KAAgB;QACvC,MAAM,EAAE,KAAK,EAAE,GAAG,IAAI,CAAC,GAAG,CAAC;QAC3B,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,WAAW,GAAG,EAAE,CAAC,CAAC;QAC9C,MAAM,IAAI,GAAG,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC;QACnC,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,QAAQ,EAAE,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC;QAC1E,IAAI,CAAC,wBAAwB,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;QAC7C,MAAM,QAAQ,GAAG,gCAAgC,CAAC;QAClD,IAAI,MAAM,CAAC,MAAM,KAAK,GAAG,EAAE;YACzB,IAAI,CAAC,kBAAkB,CAAC,MAAM,CAAC,CAAC;YAChC,MAAM,IAAI,KAAK,CAAC,GAAG,QAAQ,GAAG,iBAAiB,GAAG,MAAM,CAAC,MAAM,EAAE,CAAC,CAAC;SACpE;QACD,IAAI,CAAC,MAAM,CAAC,IAAI,EAAE;YAChB,MAAM,IAAI,KAAK,CAAC,GAAG,QAAQ,GAAG,mBAAmB,EAAE,CAAC,CAAC;SACtD;QACD,IAAI,IAAS,CAAC;QACd,IAAI;YACF,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;SAChC;QAAC,OAAO,CAAC,EAAE;YACV,MAAM,IAAI,KAAK,CAAC,GAAG,QAAQ,GAAG,cAAc,GAAG,CAAC,CAAC;SAClD;QACD,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE;YAChB,MAAM,IAAI,KAAK,CAAC,GAAG,QAAQ,GAAG,kBAAkB,GAAG,CAAC,CAAC;SACtD;QACD,OAAO,IAAI,CAAC,MAAmB,CAAC;IAClC,CAAC;IAED;;;;OAIG;IACH,KAAK,CAAC,MAAM,CAAC,GAAW;QACtB,MAAM,EAAE,KAAK,EAAE,GAAG,IAAI,CAAC,GAAG,CAAC;QAC3B,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,WAAW,GAAG,EAAE,CAAC,CAAC;QAC9C,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,QAAQ,EAAE,EAAE,EAAE,KAAK,EAAE,CAAC,CAAC;QACrE,IAAI,CAAC,wBAAwB,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;QAC7C,MAAM,QAAQ,GAAG,iCAAiC,CAAC;QACnD,IAAI,MAAM,CAAC,MAAM,KAAK,GAAG,EAAE;YACzB,IAAI,CAAC,kBAAkB,CAAC,MAAM,CAAC,CAAC;YAChC,MAAM,IAAI,KAAK,CAAC,GAAG,QAAQ,GAAG,iBAAiB,GAAG,MAAM,CAAC,MAAM,EAAE,CAAC,CAAC;SACpE;IACH,CAAC;IAED;;;;;OAKG;IACH,KAAK,CAAC,UAAU,CAAC,GAAW,EAAE,KAA4B;QACxD,MAAM,EAAE,KAAK,EAAE,GAAG,IAAI,CAAC,GAAG,CAAC;QAC3B,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,WAAW,GAAG,QAAQ,CAAC,CAAC;QACpD,MAAM,IAAI,GAAG,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC;QACnC,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,QAAQ,EAAE,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC;QAC1E,IAAI,CAAC,wBAAwB,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;QAC7C,MAAM,QAAQ,GAAG,gCAAgC,CAAC;QAClD,IAAI,MAAM,CAAC,MAAM,KAAK,GAAG,EAAE;YACzB,IAAI,CAAC,kBAAkB,CAAC,MAAM,CAAC,CAAC;YAChC,MAAM,IAAI,KAAK,CAAC,GAAG,QAAQ,GAAG,iBAAiB,GAAG,MAAM,CAAC,MAAM,EAAE,CAAC,CAAC;SACpE;IACH,CAAC;CACF;AAED,MAAM,UAAW,SAAQ,OAAO;IAC9B;;;;;;OAMG;IACH,KAAK,CAAC,GAAG,CAAC,GAAW,EAAE,OAA6B,EAAE;QACpD,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC;QAC1C,IAAI,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE;YAChD,MAAM,GAAG,GAAG,MAAM,CAAC,OAAO,CAAC,QAAQ,CAAC;YACpC,IAAI,CAAC,GAAG,EAAE;gBACR,MAAM,IAAI,KAAK,CAAC,gDAAgD,CAAC,CAAA;aAClE;YACD,MAAM,MAAM,GAAG,IAAI,GAAG,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC;YACjC,OAAO,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,QAAQ,EAAE,EAAE,IAAI,CAAC,CAAC;SAC1C;QACD,OAAO,MAAM,CAAC;IAChB,CAAC;IAEO,IAAI,CAAC,GAAW,EAAE,OAA6B,EAAE;QACvD,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;YACrC,MAAM,EAAE,MAAM,GAAC,KAAK,EAAE,OAAO,GAAC,EAAE,EAAE,KAAK,GAAG,IAAI,CAAC,GAAG,CAAC,KAAK,EAAE,GAAG,IAAI,CAAC;YAClE,IAAI,KAAK,EAAE;gBACT,OAAO,CAAC,aAAa,GAAG,UAAU,KAAK,EAAE,CAAC;aAC3C;YACD,MAAM,KAAK,GAAG,GAAG,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC;YACvC,MAAM,GAAG,GAAG,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC;YACjC,mCAAmC;YACnC,MAAM,OAAO,GAAG,GAAG,CAAC,OAAO,CAAC,GAAG,EAAE;gBAC/B,MAAM;gBACN,OAAO;gBACP,kBAAkB,EAAE,KAAK;aAC1B,CAAC,CAAC;YACH,OAAO,CAAC,EAAE,CAAC,UAAU,EAAE,CAAC,QAAQ,EAAE,EAAE;gBAClC,MAAM,EAAE,GAAmB;oBACzB,MAAM,EAAE,QAAQ,CAAC,UAAoB;oBACrC,OAAO,EAAE,QAAQ,CAAC,OAAO;oBACzB,IAAI,EAAE,EAAE;iBACT,CAAC;gBACF,QAAQ,CAAC,EAAE,CAAC,MAAM,EAAE,CAAC,KAAK,EAAE,EAAE;oBAC5B,EAAE,CAAC,IAAI,IAAI,KAAK,CAAC;gBACnB,CAAC,CAAC,CAAC;gBACH,QAAQ,CAAC,EAAE,CAAC,KAAK,EAAE,GAAG,EAAE,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,CAAC;YACxC,CAAC,CAAC,CAAC;YACH,OAAO,CAAC,EAAE,CAAC,OAAO,EAAE,CAAC,KAAK,EAAE,EAAE,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC;YAC9C,OAAO,CAAC,GAAG,EAAE,CAAC;QAChB,CAAC,CAAC,CAAC;IACL,CAAC;IAED,IAAI,CAAC,GAAW,EAAE,OAA6B,EAAE;QAC/C,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;YACrC,MAAM,EAAE,MAAM,GAAC,MAAM,EAAE,OAAO,GAAC,EAAE,EAAE,KAAK,GAAG,IAAI,CAAC,GAAG,CAAC,KAAK,EAAE,GAAG,IAAI,CAAC;YACnE,IAAI,KAAK,EAAE;gBACT,OAAO,CAAC,aAAa,GAAG,UAAU,KAAK,EAAE,CAAC;aAC3C;YACD,MAAM,KAAK,GAAG,GAAG,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC;YACvC,MAAM,GAAG,GAAG,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC;YACjC,MAAM,OAAO,GAAG,GAAG,CAAC,OAAO,CAAC,GAAG,EAAE;gBAC/B,MAAM;gBACN,OAAO;aACR,CAAC,CAAC;YACH,OAAO,CAAC,EAAE,CAAC,UAAU,EAAE,CAAC,QAAQ,EAAE,EAAE;gBAClC,MAAM,EAAE,GAAmB;oBACzB,MAAM,EAAE,QAAQ,CAAC,UAAoB;oBACrC,OAAO,EAAE,QAAQ,CAAC,OAAO;oBACzB,IAAI,EAAE,EAAE;iBACT,CAAC;gBACF,QAAQ,CAAC,EAAE,CAAC,MAAM,EAAE,CAAC,KAAK,EAAE,EAAE;oBAC5B,EAAE,CAAC,IAAI,IAAI,KAAK,CAAC;gBACnB,CAAC,CAAC,CAAC;gBACH,QAAQ,CAAC,EAAE,CAAC,KAAK,EAAE,GAAG,EAAE,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,CAAC;YACxC,CAAC,CAAC,CAAC;YACH,OAAO,CAAC,EAAE,CAAC,OAAO,EAAE,CAAC,KAAK,EAAE,EAAE,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC;YAC9C,IAAI,IAAI,CAAC,IAAI,EAAE;gBACb,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;aAC1B;YACD,OAAO,CAAC,GAAG,EAAE,CAAC;QAChB,CAAC,CAAC,CAAC;IACL,CAAC;IAED,KAAK,CAAC,GAAW,EAAE,OAA6B,EAAE;QAChD,MAAM,OAAO,GAAG,EAAE,GAAG,IAAI,EAAE,CAAC;QAC5B,OAAO,CAAC,MAAM,GAAG,OAAO,CAAC;QACzB,OAAO,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,OAAO,CAAC,CAAC;IACjC,CAAC;IAED,MAAM,CAAC,GAAW,EAAE,OAA6B,EAAE;QACjD,MAAM,OAAO,GAAG,EAAE,GAAG,IAAI,EAAE,CAAC;QAC5B,OAAO,CAAC,MAAM,GAAG,QAAQ,CAAC;QAC1B,OAAO,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,OAAO,CAAC,CAAC;IACjC,CAAC;CACF;AAED,MAAM,QAAS,SAAQ,OAAO;IAC5B;;;;OAIG;IACH,SAAS,CAAC,IAAY,EAAE,KAAK,GAAG,IAAI,CAAC,GAAG,CAAC,KAAK;QAC5C,IAAI,GAAG,GAAG,IAAI,CAAC;QACf,IAAI,KAAK,EAAE;YACT,GAAG,IAAI,GAAG,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC;YACrC,GAAG,IAAI,QAAQ,CAAC;YAChB,GAAG,IAAI,KAAK,CAAC;SACd;QACD,IAAI,GAAG,CAAC,UAAU,CAAC,OAAO,CAAC,EAAE;YAC3B,GAAG,GAAG,MAAM,GAAG,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC;SAChC;aAAM,IAAI,GAAG,CAAC,UAAU,CAAC,QAAQ,CAAC,EAAE;YACnC,GAAG,GAAG,OAAO,GAAG,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC;SACjC;QACD,OAAO,IAAI,SAAS,CAAC,GAAG,CAAC,CAAC;IAC5B,CAAC;IAED;;;;OAIG;IACH,OAAO,CAAC,MAAiB;QACvB,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;YACrC,MAAM,CAAC,IAAI,CAAC,MAAM,EAAE,GAAG,EAAE;gBACvB,MAAM,CAAC,kBAAkB,CAAC,OAAO,CAAC,CAAC;gBACnC,OAAO,EAAE,CAAC;YACZ,CAAC,CAAC,CAAC;YACH,MAAM,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC,GAAG,EAAE,EAAE;gBAC3B,MAAM,CAAC,kBAAkB,CAAC,MAAM,CAAC,CAAC;gBAClC,MAAM,CAAC,GAAG,CAAC,CAAC;YACd,CAAC,CAAC,CAAC;QACL,CAAC,CAAC,CAAC;IACL,CAAC;IAED;;OAEG;IACH,UAAU,CAAC,MAAiB;QAC1B,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;YACrC,MAAM,CAAC,IAAI,CAAC,OAAO,EAAE,GAAG,EAAE;gBACxB,MAAM,CAAC,kBAAkB,CAAC,OAAO,CAAC,CAAC;gBACnC,OAAO,EAAE,CAAC;YACZ,CAAC,CAAC,CAAC;YACH,MAAM,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC,GAAG,EAAE,EAAE;gBAC3B,MAAM,CAAC,kBAAkB,CAAC,OAAO,CAAC,CAAC;gBACnC,MAAM,CAAC,GAAG,CAAC,CAAC;YACd,CAAC,CAAC,CAAC;YACH,MAAM,CAAC,KAAK,EAAE,CAAC;QACjB,CAAC,CAAC,CAAC;IACL,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,gBAAgB,CAAC,IAAY,EAAE,KAAc;QACjD,MAAM,MAAM,GAAG,IAAI,CAAC,SAAS,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;QAC3C,MAAM,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;QAC3B,OAAO,MAAM,CAAC;IAChB,CAAC;CACF;AAED,MAAM,WAAY,SAAQ,OAAO;IAC/B;;;;;;OAMG;IACH,KAAK,CAAC,MAAM,CAAC,GAAW,EAAE,OAAmC;QAC3D,MAAM,EAAE,KAAK,EAAE,GAAG,IAAI,CAAC,GAAG,CAAC;QAC3B,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,WAAW,GAAG,WAAW,CAAC,CAAC;QACvD,MAAM,IAAI,GAAG,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC;QACrC,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,QAAQ,EAAE,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC;QACzE,IAAI,CAAC,wBAAwB,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;QAC7C,MAAM,QAAQ,GAAG,8BAA8B,CAAC;QAChD,IAAI,MAAM,CAAC,MAAM,KAAK,GAAG,EAAE;YACzB,IAAI,CAAC,kBAAkB,CAAC,MAAM,CAAC,CAAC;YAChC,MAAM,IAAI,KAAK,CAAC,GAAG,QAAQ,GAAG,iBAAiB,GAAG,MAAM,CAAC,MAAM,EAAE,CAAC,CAAC;SACpE;QACD,MAAM,EAAE,QAAQ,EAAE,GAAG,MAAM,CAAC,OAAO,CAAC;QACpC,IAAI,CAAC,QAAQ,EAAE;YACb,MAAM,IAAI,KAAK,CAAC,GAAG,QAAQ,GAAG,mBAAmB,EAAE,CAAC,CAAC;SACtD;QACD,MAAM,EAAE,GAAG,QAAQ,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,CAAC;QACrC,OAAO,EAAY,CAAC;IACtB,CAAC;IAED;;;;;OAKG;IACH,KAAK,CAAC,IAAI,CAAC,KAAa,EAAE,OAAe;QACvC,MAAM,EAAE,KAAK,EAAE,GAAG,IAAI,CAAC,GAAG,CAAC;QAC3B,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,WAAW,KAAK,aAAa,OAAO,EAAE,CAAC,CAAC;QACpE,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,QAAQ,EAAE,EAAE,EAAE,KAAK,EAAE,CAAC,CAAC;QAClE,IAAI,CAAC,wBAAwB,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;QAC7C,MAAM,QAAQ,GAAG,4BAA4B,CAAC;QAC9C,IAAI,MAAM,CAAC,MAAM,KAAK,GAAG,EAAE;YACzB,IAAI,CAAC,kBAAkB,CAAC,MAAM,CAAC,CAAC;YAChC,MAAM,IAAI,KAAK,CAAC,GAAG,QAAQ,GAAG,iBAAiB,GAAG,MAAM,CAAC,MAAM,EAAE,CAAC,CAAC;SACpE;QACD,IAAI,CAAC,MAAM,CAAC,IAAI,EAAE;YAChB,MAAM,IAAI,KAAK,CAAC,GAAG,QAAQ,GAAG,mBAAmB,EAAE,CAAC,CAAC;SACtD;QACD,IAAI,IAAkB,CAAC;QACvB,IAAI;YACF,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;SAChC;QAAC,OAAO,CAAC,EAAE;YACV,MAAM,IAAI,KAAK,CAAC,GAAG,QAAQ,GAAG,cAAc,GAAG,CAAC,CAAC;SAClD;QACD,IAAI,IAAI,CAAC,IAAI,KAAK,iBAAiB,EAAE;YACnC,MAAM,IAAI,KAAK,CAAC,GAAG,QAAQ,GAAG,kBAAkB,GAAG,CAAC,CAAC;SACtD;QACD,OAAO,IAAI,CAAC;IACd,CAAC;IAED;;;;;OAKG;IACH,KAAK,CAAC,IAAI,CAAC,KAAa,EAAE,OAAsB;QAC9C,MAAM,EAAE,KAAK,EAAE,GAAG,IAAI,CAAC,GAAG,CAAC;QAC3B,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,WAAW,KAAK,WAAW,CAAC,CAAC;QACzD,IAAI,CAAC,GAAG,CAAC,iBAAiB,CAAC,GAAG,EAAE,OAAO,CAAC,CAAC;QACzC,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,QAAQ,EAAE,EAAE,EAAE,KAAK,EAAE,CAAC,CAAC;QAClE,IAAI,CAAC,wBAAwB,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;QAC7C,MAAM,QAAQ,GAAG,2BAA2B,CAAC;QAC7C,IAAI,MAAM,CAAC,MAAM,KAAK,GAAG,EAAE;YACzB,IAAI,CAAC,kBAAkB,CAAC,MAAM,CAAC,CAAC;YAChC,MAAM,IAAI,KAAK,CAAC,GAAG,QAAQ,GAAG,iBAAiB,GAAG,MAAM,CAAC,MAAM,EAAE,CAAC,CAAC;SACpE;QACD,IAAI,CAAC,MAAM,CAAC,IAAI,EAAE;YAChB,MAAM,IAAI,KAAK,CAAC,GAAG,QAAQ,GAAG,mBAAmB,EAAE,CAAC,CAAC;SACtD;QACD,IAAI,IAAmB,CAAC;QACxB,IAAI;YACF,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;SAChC;QAAC,OAAO,CAAC,EAAE;YACV,MAAM,IAAI,KAAK,CAAC,GAAG,QAAQ,GAAG,cAAc,GAAG,CAAC,CAAC;SAClD;QACD,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE;YAC7B,MAAM,IAAI,KAAK,CAAC,GAAG,QAAQ,GAAG,kBAAkB,GAAG,CAAC,CAAC;SACtD;QACD,OAAO,IAAI,CAAC;IACd,CAAC;IAED;;;;;OAKG;IACH,KAAK,CAAC,MAAM,CAAC,KAAa,EAAE,OAAe;QACzC,MAAM,EAAE,KAAK,EAAE,GAAG,IAAI,CAAC,GAAG,CAAC;QAC3B,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,WAAW,KAAK,aAAa,OAAO,EAAE,CAAC,CAAC;QACpE,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,QAAQ,EAAE,EAAE,EAAE,KAAK,EAAE,CAAC,CAAC;QACrE,IAAI,CAAC,wBAAwB,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;QAC7C,MAAM,QAAQ,GAAG,8BAA8B,CAAC;QAChD,IAAI,MAAM,CAAC,MAAM,KAAK,GAAG,EAAE;YACzB,IAAI,CAAC,kBAAkB,CAAC,MAAM,CAAC,CAAC;YAChC,MAAM,IAAI,KAAK,CAAC,GAAG,QAAQ,GAAG,iBAAiB,GAAG,MAAM,CAAC,MAAM,EAAE,CAAC,CAAC;SACpE;IACH,CAAC;IAED;;;;;;OAMG;IACH,KAAK,CAAC,KAAK,CAAC,KAAa,EAAE,OAAe,EAAE,KAAgB;QAC1D,MAAM,EAAE,KAAK,EAAE,GAAG,IAAI,CAAC,GAAG,CAAC;QAC3B,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,WAAW,KAAK,aAAa,OAAO,EAAE,CAAC,CAAC;QACpE,MAAM,IAAI,GAAG,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC;QACnC,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,QAAQ,EAAE,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC;QAC1E,IAAI,CAAC,wBAAwB,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;QAC7C,MAAM,QAAQ,GAAG,6BAA6B,CAAC;QAC/C,IAAI,MAAM,CAAC,MAAM,KAAK,GAAG,EAAE;YACzB,IAAI,CAAC,kBAAkB,CAAC,MAAM,CAAC,CAAC;YAChC,MAAM,IAAI,KAAK,CAAC,GAAG,QAAQ,GAAG,iBAAiB,GAAG,MAAM,CAAC,MAAM,EAAE,CAAC,CAAC;SACpE;QACD,IAAI,CAAC,MAAM,CAAC,IAAI,EAAE;YAChB,MAAM,IAAI,KAAK,CAAC,GAAG,QAAQ,GAAG,mBAAmB,EAAE,CAAC,CAAC;SACtD;QACD,IAAI,IAAS,CAAC;QACd,IAAI;YACF,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;SAChC;QAAC,OAAO,CAAC,EAAE;YACV,MAAM,IAAI,KAAK,CAAC,GAAG,QAAQ,GAAG,cAAc,GAAG,CAAC,CAAC;SAClD;QACD,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE;YAChB,MAAM,IAAI,KAAK,CAAC,GAAG,QAAQ,GAAG,kBAAkB,GAAG,CAAC,CAAC;SACtD;QACD,OAAO,IAAI,CAAC,MAAmB,CAAC;IAClC,CAAC;CACF;AAED,MAAM,QAAS,SAAQ,OAAO;IAC5B,KAAK,CAAC,EAAE;QACN,MAAM,EAAE,KAAK,EAAE,GAAG,IAAI,CAAC,GAAG,CAAC;QAC3B,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC;QACzC,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,QAAQ,EAAE,EAAE,EAAE,KAAK,EAAE,CAAC,CAAC;QAClE,IAAI,CAAC,wBAAwB,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;QAC7C,MAAM,QAAQ,GAAG,yBAAyB,CAAC;QAC3C,IAAI,MAAM,CAAC,MAAM,KAAK,GAAG,EAAE;YACzB,IAAI,CAAC,kBAAkB,CAAC,MAAM,CAAC,CAAC;YAChC,MAAM,IAAI,KAAK,CAAC,GAAG,QAAQ,GAAG,iBAAiB,GAAG,MAAM,CAAC,MAAM,EAAE,CAAC,CAAC;SACpE;QACD,IAAI,CAAC,MAAM,CAAC,IAAI,EAAE;YAChB,MAAM,IAAI,KAAK,CAAC,GAAG,QAAQ,GAAG,mBAAmB,EAAE,CAAC,CAAC;SACtD;QACD,IAAI,IAAW,CAAC;QAChB,IAAI;YACF,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;SAChC;QAAC,OAAO,CAAC,EAAE;YACV,MAAM,IAAI,KAAK,CAAC,GAAG,QAAQ,GAAG,cAAc,GAAG,CAAC,CAAC;SAClD;QACD,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE;YACb,MAAM,IAAI,KAAK,CAAC,GAAG,QAAQ,GAAG,kBAAkB,GAAG,CAAC,CAAC;SACtD;QACD,OAAO,IAAI,CAAC;IACd,CAAC;IAED;;;;OAIG;IACH,KAAK,CAAC,IAAI,CAAC,OAAsB;QAC/B,MAAM,EAAE,KAAK,EAAE,GAAG,IAAI,CAAC,GAAG,CAAC;QAC3B,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;QACtC,IAAI,CAAC,GAAG,CAAC,iBAAiB,CAAC,GAAG,EAAE,OAAO,CAAC,CAAC;QACzC,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,QAAQ,EAAE,EAAE,EAAE,KAAK,EAAE,CAAC,CAAC;QAClE,IAAI,CAAC,wBAAwB,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;QAC7C,MAAM,QAAQ,GAAG,2BAA2B,CAAC;QAC7C,IAAI,MAAM,CAAC,MAAM,KAAK,GAAG,EAAE;YACzB,IAAI,CAAC,kBAAkB,CAAC,MAAM,CAAC,CAAC;YAChC,MAAM,IAAI,KAAK,CAAC,GAAG,QAAQ,GAAG,iBAAiB,GAAG,MAAM,CAAC,MAAM,EAAE,CAAC,CAAC;SACpE;QACD,IAAI,CAAC,MAAM,CAAC,IAAI,EAAE;YAChB,MAAM,IAAI,KAAK,CAAC,GAAG,QAAQ,GAAG,mBAAmB,EAAE,CAAC,CAAC;SACtD;QACD,IAAI,IAAmB,CAAC;QACxB,IAAI;YACF,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;SAChC;QAAC,OAAO,CAAC,EAAE;YACV,MAAM,IAAI,KAAK,CAAC,GAAG,QAAQ,GAAG,cAAc,GAAG,CAAC,CAAC;SAClD;QACD,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE;YAC7B,MAAM,IAAI,KAAK,CAAC,GAAG,QAAQ,GAAG,kBAAkB,GAAG,CAAC,CAAC;SACtD;QACD,OAAO,IAAI,CAAC;IACd,CAAC;CACF"}
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@api-client/core",
|
|
3
3
|
"description": "The ARC core client library. Works in NodeJS and in a ES enabled browser.",
|
|
4
|
-
"version": "0.3.
|
|
4
|
+
"version": "0.3.2",
|
|
5
5
|
"license": "Apache-2.0",
|
|
6
6
|
"main": "build/index.js",
|
|
7
7
|
"module": "build/index.js",
|
|
@@ -32,6 +32,7 @@
|
|
|
32
32
|
"@types/cors": "^2.8.12",
|
|
33
33
|
"@types/express-ntlm": "^2.3.3",
|
|
34
34
|
"@types/fs-extra": "^9.0.13",
|
|
35
|
+
"@types/json8-patch": "^1.0.0",
|
|
35
36
|
"@types/mocha": "^9.0.0",
|
|
36
37
|
"@types/node": "^17.0.18",
|
|
37
38
|
"@types/sinon": "^10.0.11",
|
|
@@ -89,6 +90,7 @@
|
|
|
89
90
|
"@pawel-up/jexl": "^3.0.0",
|
|
90
91
|
"@xmldom/xmldom": "^0.8.1",
|
|
91
92
|
"form-data": "^4.0.0",
|
|
93
|
+
"json8-patch": "^1.0.6",
|
|
92
94
|
"ws": "^8.5.0",
|
|
93
95
|
"xpath": "^0.0.32"
|
|
94
96
|
},
|