@api-client/core 0.5.3 → 0.5.4
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/src/models/store/File.js +2 -2
- package/build/src/models/store/File.js.map +1 -1
- package/build/src/runtime/store/FilesSdk.d.ts +79 -0
- package/build/src/runtime/store/{SpacesSdk.js → FilesSdk.js} +23 -17
- package/build/src/runtime/store/FilesSdk.js.map +1 -0
- package/build/src/runtime/store/RouteBuilder.d.ts +9 -17
- package/build/src/runtime/store/RouteBuilder.js +14 -26
- package/build/src/runtime/store/RouteBuilder.js.map +1 -1
- package/build/src/runtime/store/Sdk.d.ts +2 -7
- package/build/src/runtime/store/Sdk.js +2 -7
- package/build/src/runtime/store/Sdk.js.map +1 -1
- package/build/src/runtime/store/SharedSdk.js +1 -1
- package/build/src/runtime/store/SharedSdk.js.map +1 -1
- package/build/src/runtime/store/StoreSdkNode.d.ts +1 -1
- package/build/src/runtime/store/StoreSdkWeb.d.ts +1 -1
- package/package.json +1 -1
- package/src/models/store/File.ts +2 -2
- package/src/runtime/store/{SpacesSdk.ts → FilesSdk.ts} +61 -22
- package/src/runtime/store/RouteBuilder.ts +14 -28
- package/src/runtime/store/Sdk.ts +2 -7
- package/src/runtime/store/SharedSdk.ts +1 -1
- package/src/runtime/store/StoreSdkNode.ts +1 -1
- package/src/runtime/store/StoreSdkWeb.ts +1 -1
- package/build/src/runtime/store/ProjectsSdk.d.ts +0 -43
- package/build/src/runtime/store/ProjectsSdk.js +0 -144
- package/build/src/runtime/store/ProjectsSdk.js.map +0 -1
- package/build/src/runtime/store/SpacesSdk.d.ts +0 -62
- package/build/src/runtime/store/SpacesSdk.js.map +0 -1
- package/src/runtime/store/ProjectsSdk.ts +0 -147
|
@@ -65,10 +65,10 @@ export class StoredFile {
|
|
|
65
65
|
this.parents = parents;
|
|
66
66
|
this.permissionIds = permissionIds;
|
|
67
67
|
this.owner = owner;
|
|
68
|
-
this.lastModified = lastModified
|
|
68
|
+
this.lastModified = lastModified ? { ...lastModified } : { user: '', time: 0, byMe: false };
|
|
69
69
|
if (typeof deleted === 'boolean') {
|
|
70
70
|
this.deleted = deleted;
|
|
71
|
-
this.deletedInfo = deletedInfo;
|
|
71
|
+
this.deletedInfo = deletedInfo ? { ...deletedInfo } : undefined;
|
|
72
72
|
}
|
|
73
73
|
else {
|
|
74
74
|
this.deleted = undefined;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"File.js","sourceRoot":"","sources":["../../../../src/models/store/File.ts"],"names":[],"mappings":"AAGA,OAAO,EAAS,IAAI,IAAI,QAAQ,EAAE,MAAM,WAAW,CAAC;AACpD,OAAO,EAAU,KAAK,EAAE,MAAM,aAAa,CAAC;AAC5C,OAAO,EAAE,MAAM,mBAAmB,CAAC;AAEnC,MAAM,CAAC,MAAM,YAAY,GAAG,SAAS,CAAC;AAsEtC,MAAM,OAAO,UAAU;IACrB;;OAEG;IACH,IAAI,GAAG,EAAE,CAAC;IACV;;OAEG;IACH,GAAG,GAAG,EAAE,CAAC;IACT;;OAEG;IACH,IAAI,GAAU,KAAK,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC;IACjC;;;;;;OAMG;IACH,OAAO,GAAa,EAAE,CAAC;IACvB;;;;;OAKG;IACH,aAAa,GAAa,EAAE,CAAC;IAC7B;;OAEG;IACH,OAAO,CAAW;IAClB;;;OAGG;IACH,WAAW,CAAa;IACxB;;;OAGG;IACH,KAAK,GAAG,YAAY,CAAC;IACrB;;OAEG;IACH,YAAY,GAAkB,EAAE,IAAI,EAAE,EAAE,EAAE,IAAI,EAAE,CAAC,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC;IACjE;;OAEG;IACH,MAAM,CAAY;IAElB,GAAG,CAAC,IAAiB;QACnB,MAAM,EAAE,GAAG,GAAG,EAAE,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,OAAO,GAAC,EAAE,EAAE,aAAa,GAAC,EAAE,EAAE,OAAO,EAAE,WAAW,EAAE,KAAK,GAAG,YAAY,EAAE,YAAY,EAAE,MAAM,EAAE,GAAG,IAAI,CAAC;QACxI,IAAI,CAAC,GAAG,GAAG,GAAG,CAAC;QACf,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;QACjB,IAAI,IAAI,EAAE;YACR,IAAI,CAAC,IAAI,GAAG,IAAI,KAAK,CAAC,IAAI,CAAC,CAAC;SAC7B;aAAM;YACL,IAAI,CAAC,IAAI,GAAG,KAAK,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC;SAChC;QACD,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;QACvB,IAAI,CAAC,aAAa,GAAG,aAAa,CAAC;QACnC,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;QACnB,IAAI,CAAC,YAAY,GAAG,YAAY,
|
|
1
|
+
{"version":3,"file":"File.js","sourceRoot":"","sources":["../../../../src/models/store/File.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,79 @@
|
|
|
1
|
+
import { JsonPatch } from 'json8-patch';
|
|
2
|
+
import { SdkBase } from './SdkBase.js';
|
|
3
|
+
import { IListOptions, IListResponse } from '../../models/Backend.js';
|
|
4
|
+
import { IWorkspace, Workspace } from '../../models/Workspace.js';
|
|
5
|
+
import { AccessOperation } from '../../models/store/Permission.js';
|
|
6
|
+
import { IUser } from '../../models/store/User.js';
|
|
7
|
+
import { IFile } from '../../models/store/File.js';
|
|
8
|
+
import WebSocketNode from 'ws';
|
|
9
|
+
export interface IFileCreateOptions {
|
|
10
|
+
/**
|
|
11
|
+
* Optional parent space id.
|
|
12
|
+
* When set it creates a space under this parent.
|
|
13
|
+
*/
|
|
14
|
+
parent?: string;
|
|
15
|
+
}
|
|
16
|
+
export declare class FilesSdk extends SdkBase {
|
|
17
|
+
/**
|
|
18
|
+
* Lists files (spaces, projects, etc) in the store.
|
|
19
|
+
* @param options Optional query options.
|
|
20
|
+
*/
|
|
21
|
+
list(options?: IListOptions): Promise<IListResponse<IFile>>;
|
|
22
|
+
/**
|
|
23
|
+
* Creates a workspace in the store.
|
|
24
|
+
* @param space The workspace definition.
|
|
25
|
+
* @returns The key of the creates space.
|
|
26
|
+
*/
|
|
27
|
+
create(space: IWorkspace | Workspace, opts?: IFileCreateOptions): Promise<string>;
|
|
28
|
+
/**
|
|
29
|
+
* Reads file metadata from the store.
|
|
30
|
+
*
|
|
31
|
+
* @param key The file key
|
|
32
|
+
* @returns THe file metadata
|
|
33
|
+
*/
|
|
34
|
+
read(key: string, media: false): Promise<IFile>;
|
|
35
|
+
/**
|
|
36
|
+
* Reads file contents from the store.
|
|
37
|
+
*
|
|
38
|
+
* @param key The file key
|
|
39
|
+
* @returns THe file contents
|
|
40
|
+
*/
|
|
41
|
+
read(key: string, media: true): Promise<unknown>;
|
|
42
|
+
/**
|
|
43
|
+
* Patches file's meta in the store.
|
|
44
|
+
*
|
|
45
|
+
* @param key The file key
|
|
46
|
+
* @param value The patch to apply.
|
|
47
|
+
*/
|
|
48
|
+
patch(key: string, value: JsonPatch, media: false): Promise<JsonPatch>;
|
|
49
|
+
/**
|
|
50
|
+
* Patches file's content in the store.
|
|
51
|
+
*
|
|
52
|
+
* @param key The file key
|
|
53
|
+
* @param value The patch to apply.
|
|
54
|
+
*/
|
|
55
|
+
patch(key: string, value: JsonPatch, media: true): Promise<JsonPatch>;
|
|
56
|
+
/**
|
|
57
|
+
* Deletes the space in the store.
|
|
58
|
+
*
|
|
59
|
+
* @param key The key of the space to delete.
|
|
60
|
+
*/
|
|
61
|
+
delete(key: string): Promise<void>;
|
|
62
|
+
/**
|
|
63
|
+
* Updates the sharing options of the space.
|
|
64
|
+
*
|
|
65
|
+
* @param key The user space key
|
|
66
|
+
* @param value The patch operation on the space's ACL
|
|
67
|
+
*/
|
|
68
|
+
patchUsers(key: string, value: AccessOperation[]): Promise<void>;
|
|
69
|
+
/**
|
|
70
|
+
* Lists uses having access to the user space.
|
|
71
|
+
*
|
|
72
|
+
* @param key The user space key
|
|
73
|
+
*/
|
|
74
|
+
listUsers(key: string): Promise<IListResponse<IUser>>;
|
|
75
|
+
/**
|
|
76
|
+
* Creates a WS client that listens to the spaces events.
|
|
77
|
+
*/
|
|
78
|
+
observeFiles(): Promise<WebSocketNode | WebSocket>;
|
|
79
|
+
}
|
|
@@ -1,14 +1,14 @@
|
|
|
1
1
|
import { SdkBase, E_RESPONSE_STATUS, E_RESPONSE_NO_VALUE, E_INVALID_JSON, E_RESPONSE_UNKNOWN, E_RESPONSE_LOCATION } from './SdkBase.js';
|
|
2
2
|
import { RouteBuilder } from './RouteBuilder.js';
|
|
3
3
|
import { Kind as WorkspaceKind } from '../../models/Workspace.js';
|
|
4
|
-
export class
|
|
4
|
+
export class FilesSdk extends SdkBase {
|
|
5
5
|
/**
|
|
6
|
-
* Lists spaces in the store.
|
|
6
|
+
* Lists files (spaces, projects, etc) in the store.
|
|
7
7
|
* @param options Optional query options.
|
|
8
8
|
*/
|
|
9
9
|
async list(options) {
|
|
10
10
|
const { token } = this.sdk;
|
|
11
|
-
const url = this.sdk.getUrl(RouteBuilder.
|
|
11
|
+
const url = this.sdk.getUrl(RouteBuilder.files());
|
|
12
12
|
this.sdk.appendListOptions(url, options);
|
|
13
13
|
const result = await this.sdk.http.get(url.toString(), { token });
|
|
14
14
|
this.inspectCommonStatusCodes(result.status);
|
|
@@ -39,7 +39,7 @@ export class SpacesSdk extends SdkBase {
|
|
|
39
39
|
*/
|
|
40
40
|
async create(space, opts = {}) {
|
|
41
41
|
const { token } = this.sdk;
|
|
42
|
-
const path = opts.parent ? RouteBuilder.
|
|
42
|
+
const path = opts.parent ? RouteBuilder.file(opts.parent) : RouteBuilder.files();
|
|
43
43
|
const url = this.sdk.getUrl(path);
|
|
44
44
|
const body = JSON.stringify(space);
|
|
45
45
|
const result = await this.sdk.http.post(url.toString(), { token, body });
|
|
@@ -57,13 +57,16 @@ export class SpacesSdk extends SdkBase {
|
|
|
57
57
|
return id;
|
|
58
58
|
}
|
|
59
59
|
/**
|
|
60
|
-
* Reads a user
|
|
61
|
-
* @param key The
|
|
62
|
-
* @
|
|
60
|
+
* Reads a user file definition from the store.
|
|
61
|
+
* @param key The file key
|
|
62
|
+
* @param media When true it reads file contents rather than metadata.
|
|
63
63
|
*/
|
|
64
|
-
async read(key) {
|
|
64
|
+
async read(key, media) {
|
|
65
65
|
const { token } = this.sdk;
|
|
66
|
-
const url = this.sdk.getUrl(RouteBuilder.
|
|
66
|
+
const url = this.sdk.getUrl(RouteBuilder.file(key));
|
|
67
|
+
if (media) {
|
|
68
|
+
url.searchParams.set('alt', 'media');
|
|
69
|
+
}
|
|
67
70
|
const result = await this.sdk.http.get(url.toString(), { token });
|
|
68
71
|
this.inspectCommonStatusCodes(result.status);
|
|
69
72
|
const E_PREFIX = 'Unable to read a user space. ';
|
|
@@ -92,9 +95,12 @@ export class SpacesSdk extends SdkBase {
|
|
|
92
95
|
* @param value The JSON patch to be processed.
|
|
93
96
|
* @returns The JSON patch to revert the change using the `json8-patch` library
|
|
94
97
|
*/
|
|
95
|
-
async patch(key, value) {
|
|
98
|
+
async patch(key, value, media) {
|
|
96
99
|
const { token } = this.sdk;
|
|
97
|
-
const url = this.sdk.getUrl(RouteBuilder.
|
|
100
|
+
const url = this.sdk.getUrl(RouteBuilder.file(key));
|
|
101
|
+
if (media) {
|
|
102
|
+
url.searchParams.set('alt', 'media');
|
|
103
|
+
}
|
|
98
104
|
const body = JSON.stringify(value);
|
|
99
105
|
const result = await this.sdk.http.patch(url.toString(), { token, body });
|
|
100
106
|
this.inspectCommonStatusCodes(result.status);
|
|
@@ -125,7 +131,7 @@ export class SpacesSdk extends SdkBase {
|
|
|
125
131
|
*/
|
|
126
132
|
async delete(key) {
|
|
127
133
|
const { token } = this.sdk;
|
|
128
|
-
const url = this.sdk.getUrl(RouteBuilder.
|
|
134
|
+
const url = this.sdk.getUrl(RouteBuilder.file(key));
|
|
129
135
|
const result = await this.sdk.http.delete(url.toString(), { token });
|
|
130
136
|
this.inspectCommonStatusCodes(result.status);
|
|
131
137
|
const E_PREFIX = 'Unable to delete a user space. ';
|
|
@@ -142,7 +148,7 @@ export class SpacesSdk extends SdkBase {
|
|
|
142
148
|
*/
|
|
143
149
|
async patchUsers(key, value) {
|
|
144
150
|
const { token } = this.sdk;
|
|
145
|
-
const url = this.sdk.getUrl(RouteBuilder.
|
|
151
|
+
const url = this.sdk.getUrl(RouteBuilder.fileUsers(key));
|
|
146
152
|
const body = JSON.stringify(value);
|
|
147
153
|
const result = await this.sdk.http.patch(url.toString(), { token, body });
|
|
148
154
|
this.inspectCommonStatusCodes(result.status);
|
|
@@ -159,7 +165,7 @@ export class SpacesSdk extends SdkBase {
|
|
|
159
165
|
*/
|
|
160
166
|
async listUsers(key) {
|
|
161
167
|
const { token } = this.sdk;
|
|
162
|
-
const url = this.sdk.getUrl(RouteBuilder.
|
|
168
|
+
const url = this.sdk.getUrl(RouteBuilder.fileUsers(key));
|
|
163
169
|
const result = await this.sdk.http.get(url.toString(), { token });
|
|
164
170
|
this.inspectCommonStatusCodes(result.status);
|
|
165
171
|
const E_PREFIX = 'Unable to list users in the space. ';
|
|
@@ -185,10 +191,10 @@ export class SpacesSdk extends SdkBase {
|
|
|
185
191
|
/**
|
|
186
192
|
* Creates a WS client that listens to the spaces events.
|
|
187
193
|
*/
|
|
188
|
-
async
|
|
194
|
+
async observeFiles() {
|
|
189
195
|
const { token } = this.sdk;
|
|
190
|
-
const url = this.sdk.getUrl(RouteBuilder.
|
|
196
|
+
const url = this.sdk.getUrl(RouteBuilder.files());
|
|
191
197
|
return this.sdk.ws.createAndConnect(url.toString(), token);
|
|
192
198
|
}
|
|
193
199
|
}
|
|
194
|
-
//# sourceMappingURL=
|
|
200
|
+
//# sourceMappingURL=FilesSdk.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"FilesSdk.js","sourceRoot":"","sources":["../../../../src/runtime/store/FilesSdk.ts"],"names":[],"mappings":"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"}
|
|
@@ -3,29 +3,21 @@
|
|
|
3
3
|
*/
|
|
4
4
|
export declare class RouteBuilder {
|
|
5
5
|
/**
|
|
6
|
-
* @returns The path to the /
|
|
6
|
+
* @returns The path to the /files route.
|
|
7
7
|
*/
|
|
8
|
-
static
|
|
8
|
+
static files(): string;
|
|
9
9
|
/**
|
|
10
|
-
* @returns The path to the /
|
|
10
|
+
* @returns The path to the /files/[id] route.
|
|
11
11
|
*/
|
|
12
|
-
static
|
|
12
|
+
static file(key: string): string;
|
|
13
13
|
/**
|
|
14
|
-
* @returns The path to the /
|
|
14
|
+
* @returns The path to the /files/[id]/users route.
|
|
15
15
|
*/
|
|
16
|
-
static
|
|
16
|
+
static fileUsers(key: string): string;
|
|
17
17
|
/**
|
|
18
|
-
* @returns The path to the /
|
|
18
|
+
* @returns The path to the /file/[id]/revisions route.
|
|
19
19
|
*/
|
|
20
|
-
static
|
|
21
|
-
/**
|
|
22
|
-
* @returns The path to the /spaces/[id]/projects/[id] route.
|
|
23
|
-
*/
|
|
24
|
-
static spaceProject(space: string, project: string): string;
|
|
25
|
-
/**
|
|
26
|
-
* @returns The path to the /spaces/[id]/projects/[id]/revisions route.
|
|
27
|
-
*/
|
|
28
|
-
static projectRevisions(space: string, project: string): string;
|
|
20
|
+
static fileRevisions(file: string): string;
|
|
29
21
|
/**
|
|
30
22
|
* @returns The path to the /backend route.
|
|
31
23
|
*/
|
|
@@ -39,5 +31,5 @@ export declare class RouteBuilder {
|
|
|
39
31
|
static historyBatchCreate(): string;
|
|
40
32
|
static historyBatchDelete(): string;
|
|
41
33
|
static historyItem(key: string): string;
|
|
42
|
-
static
|
|
34
|
+
static shared(): string;
|
|
43
35
|
}
|
|
@@ -3,40 +3,28 @@
|
|
|
3
3
|
*/
|
|
4
4
|
export class RouteBuilder {
|
|
5
5
|
/**
|
|
6
|
-
* @returns The path to the /
|
|
6
|
+
* @returns The path to the /files route.
|
|
7
7
|
*/
|
|
8
|
-
static
|
|
9
|
-
return '/
|
|
8
|
+
static files() {
|
|
9
|
+
return '/files';
|
|
10
10
|
}
|
|
11
11
|
/**
|
|
12
|
-
* @returns The path to the /
|
|
12
|
+
* @returns The path to the /files/[id] route.
|
|
13
13
|
*/
|
|
14
|
-
static
|
|
15
|
-
return `/
|
|
14
|
+
static file(key) {
|
|
15
|
+
return `/files/${key}`;
|
|
16
16
|
}
|
|
17
17
|
/**
|
|
18
|
-
* @returns The path to the /
|
|
18
|
+
* @returns The path to the /files/[id]/users route.
|
|
19
19
|
*/
|
|
20
|
-
static
|
|
21
|
-
return `/
|
|
20
|
+
static fileUsers(key) {
|
|
21
|
+
return `/files/${key}/users`;
|
|
22
22
|
}
|
|
23
23
|
/**
|
|
24
|
-
* @returns The path to the /
|
|
24
|
+
* @returns The path to the /file/[id]/revisions route.
|
|
25
25
|
*/
|
|
26
|
-
static
|
|
27
|
-
return `/
|
|
28
|
-
}
|
|
29
|
-
/**
|
|
30
|
-
* @returns The path to the /spaces/[id]/projects/[id] route.
|
|
31
|
-
*/
|
|
32
|
-
static spaceProject(space, project) {
|
|
33
|
-
return `/spaces/${space}/projects/${project}`;
|
|
34
|
-
}
|
|
35
|
-
/**
|
|
36
|
-
* @returns The path to the /spaces/[id]/projects/[id]/revisions route.
|
|
37
|
-
*/
|
|
38
|
-
static projectRevisions(space, project) {
|
|
39
|
-
return `/spaces/${space}/projects/${project}/revisions`;
|
|
26
|
+
static fileRevisions(file) {
|
|
27
|
+
return `/file/${file}/revisions`;
|
|
40
28
|
}
|
|
41
29
|
/**
|
|
42
30
|
* @returns The path to the /backend route.
|
|
@@ -71,8 +59,8 @@ export class RouteBuilder {
|
|
|
71
59
|
static historyItem(key) {
|
|
72
60
|
return `/history/${key}`;
|
|
73
61
|
}
|
|
74
|
-
static
|
|
75
|
-
return '/shared
|
|
62
|
+
static shared() {
|
|
63
|
+
return '/shared';
|
|
76
64
|
}
|
|
77
65
|
}
|
|
78
66
|
//# sourceMappingURL=RouteBuilder.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"RouteBuilder.js","sourceRoot":"","sources":["../../../../src/runtime/store/RouteBuilder.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,MAAM,OAAO,YAAY;IACvB;;OAEG;IACH,MAAM,CAAC,
|
|
1
|
+
{"version":3,"file":"RouteBuilder.js","sourceRoot":"","sources":["../../../../src/runtime/store/RouteBuilder.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,MAAM,OAAO,YAAY;IACvB;;OAEG;IACH,MAAM,CAAC,KAAK;QACV,OAAO,QAAQ,CAAC;IAClB,CAAC;IAED;;OAEG;IACH,MAAM,CAAC,IAAI,CAAC,GAAW;QACrB,OAAO,UAAU,GAAG,EAAE,CAAC;IACzB,CAAC;IAED;;OAEG;IACH,MAAM,CAAC,SAAS,CAAC,GAAW;QAC1B,OAAO,UAAU,GAAG,QAAQ,CAAC;IAC/B,CAAC;IAED;;OAEG;IACH,MAAM,CAAC,aAAa,CAAC,IAAY;QAC/B,OAAO,SAAS,IAAI,YAAY,CAAC;IACnC,CAAC;IAED;;OAEG;IACH,MAAM,CAAC,OAAO;QACZ,OAAO,QAAQ,CAAC;IAClB,CAAC;IAED,MAAM,CAAC,QAAQ;QACb,OAAO,WAAW,CAAA;IACpB,CAAC;IAED,MAAM,CAAC,YAAY;QACjB,OAAO,iBAAiB,CAAA;IAC1B,CAAC;IAED,MAAM,CAAC,OAAO;QACZ,OAAO,WAAW,CAAA;IACpB,CAAC;IAED,MAAM,CAAC,KAAK;QACV,OAAO,QAAQ,CAAA;IACjB,CAAC;IAED,MAAM,CAAC,IAAI,CAAC,GAAW;QACrB,OAAO,UAAU,GAAG,EAAE,CAAA;IACxB,CAAC;IAED,MAAM,CAAC,OAAO;QACZ,OAAO,UAAU,CAAC;IACpB,CAAC;IAED,MAAM,CAAC,kBAAkB;QACvB,OAAO,uBAAuB,CAAC;IACjC,CAAC;IAED,MAAM,CAAC,kBAAkB;QACvB,OAAO,uBAAuB,CAAC;IACjC,CAAC;IAED,MAAM,CAAC,WAAW,CAAC,GAAW;QAC5B,OAAO,YAAY,GAAG,EAAE,CAAC;IAC3B,CAAC;IAED,MAAM,CAAC,MAAM;QACX,OAAO,SAAS,CAAC;IACnB,CAAC;CACF"}
|
|
@@ -3,8 +3,7 @@ import { Http } from './Http.js';
|
|
|
3
3
|
import { WsClient } from './WsClient.js';
|
|
4
4
|
import { AuthSdk } from './AuthSdk.js';
|
|
5
5
|
import { BackendSdk } from './BackendSdk.js';
|
|
6
|
-
import {
|
|
7
|
-
import { ProjectsSdk } from './ProjectsSdk.js';
|
|
6
|
+
import { FilesSdk } from './FilesSdk.js';
|
|
8
7
|
import { UsersSdk } from './UsersSdk.js';
|
|
9
8
|
import { HistorySdk } from './HistorySdk.js';
|
|
10
9
|
import { SharedSdk } from './SharedSdk.js';
|
|
@@ -29,11 +28,7 @@ export declare abstract class Sdk {
|
|
|
29
28
|
/**
|
|
30
29
|
* The user spaces features.
|
|
31
30
|
*/
|
|
32
|
-
|
|
33
|
-
/**
|
|
34
|
-
* The user projects features.
|
|
35
|
-
*/
|
|
36
|
-
project: ProjectsSdk;
|
|
31
|
+
file: FilesSdk;
|
|
37
32
|
/**
|
|
38
33
|
* Reads user information.
|
|
39
34
|
*/
|
|
@@ -1,7 +1,6 @@
|
|
|
1
1
|
import { AuthSdk } from './AuthSdk.js';
|
|
2
2
|
import { BackendSdk } from './BackendSdk.js';
|
|
3
|
-
import {
|
|
4
|
-
import { ProjectsSdk } from './ProjectsSdk.js';
|
|
3
|
+
import { FilesSdk } from './FilesSdk.js';
|
|
5
4
|
import { UsersSdk } from './UsersSdk.js';
|
|
6
5
|
import { HistorySdk } from './HistorySdk.js';
|
|
7
6
|
import { SharedSdk } from './SharedSdk.js';
|
|
@@ -26,11 +25,7 @@ export class Sdk {
|
|
|
26
25
|
/**
|
|
27
26
|
* The user spaces features.
|
|
28
27
|
*/
|
|
29
|
-
|
|
30
|
-
/**
|
|
31
|
-
* The user projects features.
|
|
32
|
-
*/
|
|
33
|
-
project = new ProjectsSdk(this);
|
|
28
|
+
file = new FilesSdk(this);
|
|
34
29
|
/**
|
|
35
30
|
* Reads user information.
|
|
36
31
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Sdk.js","sourceRoot":"","sources":["../../../../src/runtime/store/Sdk.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,OAAO,EAAE,MAAM,cAAc,CAAC;AACvC,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAC7C,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"Sdk.js","sourceRoot":"","sources":["../../../../src/runtime/store/Sdk.ts"],"names":[],"mappings":"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"}
|
|
@@ -7,7 +7,7 @@ export class SharedSdk extends SdkBase {
|
|
|
7
7
|
*/
|
|
8
8
|
async list(options) {
|
|
9
9
|
const { token } = this.sdk;
|
|
10
|
-
const url = this.sdk.getUrl(RouteBuilder.
|
|
10
|
+
const url = this.sdk.getUrl(RouteBuilder.shared());
|
|
11
11
|
this.sdk.appendListOptions(url, options);
|
|
12
12
|
const result = await this.sdk.http.get(url.toString(), { token });
|
|
13
13
|
this.inspectCommonStatusCodes(result.status);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SharedSdk.js","sourceRoot":"","sources":["../../../../src/runtime/store/SharedSdk.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,iBAAiB,EAAE,mBAAmB,EAAE,cAAc,EAAE,kBAAkB,EAAE,MAAM,cAAc,CAAC;AACnH,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AAGjD,MAAM,OAAO,SAAU,SAAQ,OAAO;IACpC;;;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,YAAY,CAAC,
|
|
1
|
+
{"version":3,"file":"SharedSdk.js","sourceRoot":"","sources":["../../../../src/runtime/store/SharedSdk.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,iBAAiB,EAAE,mBAAmB,EAAE,cAAc,EAAE,kBAAkB,EAAE,MAAM,cAAc,CAAC;AACnH,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AAGjD,MAAM,OAAO,SAAU,SAAQ,OAAO;IACpC;;;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,YAAY,CAAC,MAAM,EAAE,CAAC,CAAC;QACnD,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;CACF"}
|
|
@@ -2,7 +2,7 @@ import { Sdk } from './Sdk.js';
|
|
|
2
2
|
import { Http } from './Http.js';
|
|
3
3
|
import { WsClient } from './WsClient.js';
|
|
4
4
|
export { IStoreTokenInfo, IStoreResponse, IStoreRequestOptions } from './SdkBase.js';
|
|
5
|
-
export { ISpaceCreateOptions } from './
|
|
5
|
+
export { IFileCreateOptions as ISpaceCreateOptions } from './FilesSdk.js';
|
|
6
6
|
/**
|
|
7
7
|
* NodeJS API for API Client's net-store module.
|
|
8
8
|
*/
|
|
@@ -2,7 +2,7 @@ import { Sdk } from './Sdk.js';
|
|
|
2
2
|
import { Http } from './Http.js';
|
|
3
3
|
import { WsClient } from './WsClient.js';
|
|
4
4
|
export { IStoreTokenInfo, IStoreResponse, IStoreRequestOptions } from './SdkBase.js';
|
|
5
|
-
export { ISpaceCreateOptions } from './
|
|
5
|
+
export { IFileCreateOptions as ISpaceCreateOptions } from './FilesSdk.js';
|
|
6
6
|
/**
|
|
7
7
|
* NodeJS API for API Client's net-store module.
|
|
8
8
|
*/
|
package/package.json
CHANGED
package/src/models/store/File.ts
CHANGED
|
@@ -138,10 +138,10 @@ export class StoredFile {
|
|
|
138
138
|
this.parents = parents;
|
|
139
139
|
this.permissionIds = permissionIds;
|
|
140
140
|
this.owner = owner;
|
|
141
|
-
this.lastModified = lastModified
|
|
141
|
+
this.lastModified = lastModified ? { ...lastModified } : { user: '', time: 0, byMe: false };
|
|
142
142
|
if (typeof deleted === 'boolean') {
|
|
143
143
|
this.deleted = deleted;
|
|
144
|
-
this.deletedInfo = deletedInfo;
|
|
144
|
+
this.deletedInfo = deletedInfo ? { ...deletedInfo } : undefined;
|
|
145
145
|
} else {
|
|
146
146
|
this.deleted = undefined;
|
|
147
147
|
this.deletedInfo = undefined;
|
|
@@ -4,9 +4,11 @@ import { RouteBuilder } from './RouteBuilder.js';
|
|
|
4
4
|
import { IListOptions, IListResponse } from '../../models/Backend.js';
|
|
5
5
|
import { IWorkspace, Workspace, Kind as WorkspaceKind } from '../../models/Workspace.js';
|
|
6
6
|
import { AccessOperation } from '../../models/store/Permission.js';
|
|
7
|
+
import { IUser } from '../../models/store/User.js';
|
|
8
|
+
import { IFile } from '../../models/store/File.js';
|
|
7
9
|
import WebSocketNode from 'ws';
|
|
8
10
|
|
|
9
|
-
export interface
|
|
11
|
+
export interface IFileCreateOptions {
|
|
10
12
|
/**
|
|
11
13
|
* Optional parent space id.
|
|
12
14
|
* When set it creates a space under this parent.
|
|
@@ -14,14 +16,14 @@ export interface ISpaceCreateOptions {
|
|
|
14
16
|
parent?: string;
|
|
15
17
|
}
|
|
16
18
|
|
|
17
|
-
export class
|
|
19
|
+
export class FilesSdk extends SdkBase {
|
|
18
20
|
/**
|
|
19
|
-
* Lists spaces in the store.
|
|
21
|
+
* Lists files (spaces, projects, etc) in the store.
|
|
20
22
|
* @param options Optional query options.
|
|
21
23
|
*/
|
|
22
|
-
async list(options?: IListOptions): Promise<IListResponse
|
|
24
|
+
async list(options?: IListOptions): Promise<IListResponse<IFile>> {
|
|
23
25
|
const { token } = this.sdk;
|
|
24
|
-
const url = this.sdk.getUrl(RouteBuilder.
|
|
26
|
+
const url = this.sdk.getUrl(RouteBuilder.files());
|
|
25
27
|
this.sdk.appendListOptions(url, options);
|
|
26
28
|
const result = await this.sdk.http.get(url.toString(), { token });
|
|
27
29
|
this.inspectCommonStatusCodes(result.status);
|
|
@@ -33,7 +35,7 @@ export class SpacesSdk extends SdkBase {
|
|
|
33
35
|
if (!result.body) {
|
|
34
36
|
throw new Error(`${E_PREFIX}${E_RESPONSE_NO_VALUE}`);
|
|
35
37
|
}
|
|
36
|
-
let data: IListResponse
|
|
38
|
+
let data: IListResponse<IFile>;
|
|
37
39
|
try {
|
|
38
40
|
data = JSON.parse(result.body);
|
|
39
41
|
} catch (e) {
|
|
@@ -50,9 +52,9 @@ export class SpacesSdk extends SdkBase {
|
|
|
50
52
|
* @param space The workspace definition.
|
|
51
53
|
* @returns The key of the creates space.
|
|
52
54
|
*/
|
|
53
|
-
async create(space: IWorkspace | Workspace, opts:
|
|
55
|
+
async create(space: IWorkspace | Workspace, opts: IFileCreateOptions = {}): Promise<string> {
|
|
54
56
|
const { token } = this.sdk;
|
|
55
|
-
const path = opts.parent ? RouteBuilder.
|
|
57
|
+
const path = opts.parent ? RouteBuilder.file(opts.parent) : RouteBuilder.files();
|
|
56
58
|
const url = this.sdk.getUrl(path);
|
|
57
59
|
const body = JSON.stringify(space);
|
|
58
60
|
const result = await this.sdk.http.post(url.toString(), { token, body });
|
|
@@ -71,13 +73,31 @@ export class SpacesSdk extends SdkBase {
|
|
|
71
73
|
}
|
|
72
74
|
|
|
73
75
|
/**
|
|
74
|
-
* Reads
|
|
75
|
-
*
|
|
76
|
-
* @
|
|
76
|
+
* Reads file metadata from the store.
|
|
77
|
+
*
|
|
78
|
+
* @param key The file key
|
|
79
|
+
* @returns THe file metadata
|
|
80
|
+
*/
|
|
81
|
+
read(key: string, media: false): Promise<IFile>;
|
|
82
|
+
/**
|
|
83
|
+
* Reads file contents from the store.
|
|
84
|
+
*
|
|
85
|
+
* @param key The file key
|
|
86
|
+
* @returns THe file contents
|
|
77
87
|
*/
|
|
78
|
-
|
|
88
|
+
read(key: string, media: true): Promise<unknown>;
|
|
89
|
+
|
|
90
|
+
/**
|
|
91
|
+
* Reads a user file definition from the store.
|
|
92
|
+
* @param key The file key
|
|
93
|
+
* @param media When true it reads file contents rather than metadata.
|
|
94
|
+
*/
|
|
95
|
+
async read(key: string, media?: boolean): Promise<IFile | unknown> {
|
|
79
96
|
const { token } = this.sdk;
|
|
80
|
-
const url = this.sdk.getUrl(RouteBuilder.
|
|
97
|
+
const url = this.sdk.getUrl(RouteBuilder.file(key));
|
|
98
|
+
if (media) {
|
|
99
|
+
url.searchParams.set('alt', 'media');
|
|
100
|
+
}
|
|
81
101
|
const result = await this.sdk.http.get(url.toString(), { token });
|
|
82
102
|
this.inspectCommonStatusCodes(result.status);
|
|
83
103
|
const E_PREFIX = 'Unable to read a user space. ';
|
|
@@ -100,15 +120,34 @@ export class SpacesSdk extends SdkBase {
|
|
|
100
120
|
return data;
|
|
101
121
|
}
|
|
102
122
|
|
|
123
|
+
/**
|
|
124
|
+
* Patches file's meta in the store.
|
|
125
|
+
*
|
|
126
|
+
* @param key The file key
|
|
127
|
+
* @param value The patch to apply.
|
|
128
|
+
*/
|
|
129
|
+
patch(key: string, value: JsonPatch, media: false): Promise<JsonPatch>;
|
|
130
|
+
|
|
131
|
+
/**
|
|
132
|
+
* Patches file's content in the store.
|
|
133
|
+
*
|
|
134
|
+
* @param key The file key
|
|
135
|
+
* @param value The patch to apply.
|
|
136
|
+
*/
|
|
137
|
+
patch(key: string, value: JsonPatch, media: true): Promise<JsonPatch>;
|
|
138
|
+
|
|
103
139
|
/**
|
|
104
140
|
* Patches a user space in the store.
|
|
105
141
|
* @param key The key of the user space to patch
|
|
106
142
|
* @param value The JSON patch to be processed.
|
|
107
143
|
* @returns The JSON patch to revert the change using the `json8-patch` library
|
|
108
144
|
*/
|
|
109
|
-
async patch(key: string, value: JsonPatch): Promise<JsonPatch> {
|
|
145
|
+
async patch(key: string, value: JsonPatch, media?: boolean): Promise<JsonPatch> {
|
|
110
146
|
const { token } = this.sdk;
|
|
111
|
-
const url = this.sdk.getUrl(RouteBuilder.
|
|
147
|
+
const url = this.sdk.getUrl(RouteBuilder.file(key));
|
|
148
|
+
if (media) {
|
|
149
|
+
url.searchParams.set('alt', 'media');
|
|
150
|
+
}
|
|
112
151
|
const body = JSON.stringify(value);
|
|
113
152
|
const result = await this.sdk.http.patch(url.toString(), { token, body });
|
|
114
153
|
this.inspectCommonStatusCodes(result.status);
|
|
@@ -139,7 +178,7 @@ export class SpacesSdk extends SdkBase {
|
|
|
139
178
|
*/
|
|
140
179
|
async delete(key: string): Promise<void> {
|
|
141
180
|
const { token } = this.sdk;
|
|
142
|
-
const url = this.sdk.getUrl(RouteBuilder.
|
|
181
|
+
const url = this.sdk.getUrl(RouteBuilder.file(key));
|
|
143
182
|
const result = await this.sdk.http.delete(url.toString(), { token });
|
|
144
183
|
this.inspectCommonStatusCodes(result.status);
|
|
145
184
|
const E_PREFIX = 'Unable to delete a user space. ';
|
|
@@ -157,7 +196,7 @@ export class SpacesSdk extends SdkBase {
|
|
|
157
196
|
*/
|
|
158
197
|
async patchUsers(key: string, value: AccessOperation[]): Promise<void> {
|
|
159
198
|
const { token } = this.sdk;
|
|
160
|
-
const url = this.sdk.getUrl(RouteBuilder.
|
|
199
|
+
const url = this.sdk.getUrl(RouteBuilder.fileUsers(key));
|
|
161
200
|
const body = JSON.stringify(value);
|
|
162
201
|
const result = await this.sdk.http.patch(url.toString(), { token, body });
|
|
163
202
|
this.inspectCommonStatusCodes(result.status);
|
|
@@ -173,9 +212,9 @@ export class SpacesSdk extends SdkBase {
|
|
|
173
212
|
*
|
|
174
213
|
* @param key The user space key
|
|
175
214
|
*/
|
|
176
|
-
async listUsers(key: string): Promise<IListResponse
|
|
215
|
+
async listUsers(key: string): Promise<IListResponse<IUser>> {
|
|
177
216
|
const { token } = this.sdk;
|
|
178
|
-
const url = this.sdk.getUrl(RouteBuilder.
|
|
217
|
+
const url = this.sdk.getUrl(RouteBuilder.fileUsers(key));
|
|
179
218
|
const result = await this.sdk.http.get(url.toString(), { token });
|
|
180
219
|
this.inspectCommonStatusCodes(result.status);
|
|
181
220
|
const E_PREFIX = 'Unable to list users in the space. ';
|
|
@@ -186,7 +225,7 @@ export class SpacesSdk extends SdkBase {
|
|
|
186
225
|
if (!result.body) {
|
|
187
226
|
throw new Error(`${E_PREFIX}${E_RESPONSE_NO_VALUE}`);
|
|
188
227
|
}
|
|
189
|
-
let data: IListResponse
|
|
228
|
+
let data: IListResponse<IUser>;
|
|
190
229
|
try {
|
|
191
230
|
data = JSON.parse(result.body);
|
|
192
231
|
} catch (e) {
|
|
@@ -201,9 +240,9 @@ export class SpacesSdk extends SdkBase {
|
|
|
201
240
|
/**
|
|
202
241
|
* Creates a WS client that listens to the spaces events.
|
|
203
242
|
*/
|
|
204
|
-
async
|
|
243
|
+
async observeFiles(): Promise<WebSocketNode | WebSocket> {
|
|
205
244
|
const { token } = this.sdk;
|
|
206
|
-
const url = this.sdk.getUrl(RouteBuilder.
|
|
245
|
+
const url = this.sdk.getUrl(RouteBuilder.files());
|
|
207
246
|
return this.sdk.ws.createAndConnect(url.toString(), token);
|
|
208
247
|
}
|
|
209
248
|
}
|
|
@@ -3,45 +3,31 @@
|
|
|
3
3
|
*/
|
|
4
4
|
export class RouteBuilder {
|
|
5
5
|
/**
|
|
6
|
-
* @returns The path to the /
|
|
6
|
+
* @returns The path to the /files route.
|
|
7
7
|
*/
|
|
8
|
-
static
|
|
9
|
-
return '/
|
|
8
|
+
static files(): string {
|
|
9
|
+
return '/files';
|
|
10
10
|
}
|
|
11
11
|
|
|
12
12
|
/**
|
|
13
|
-
* @returns The path to the /
|
|
13
|
+
* @returns The path to the /files/[id] route.
|
|
14
14
|
*/
|
|
15
|
-
static
|
|
16
|
-
return `/
|
|
15
|
+
static file(key: string): string {
|
|
16
|
+
return `/files/${key}`;
|
|
17
17
|
}
|
|
18
18
|
|
|
19
19
|
/**
|
|
20
|
-
* @returns The path to the /
|
|
20
|
+
* @returns The path to the /files/[id]/users route.
|
|
21
21
|
*/
|
|
22
|
-
static
|
|
23
|
-
return `/
|
|
22
|
+
static fileUsers(key: string): string {
|
|
23
|
+
return `/files/${key}/users`;
|
|
24
24
|
}
|
|
25
25
|
|
|
26
26
|
/**
|
|
27
|
-
* @returns The path to the /
|
|
27
|
+
* @returns The path to the /file/[id]/revisions route.
|
|
28
28
|
*/
|
|
29
|
-
static
|
|
30
|
-
return `/
|
|
31
|
-
}
|
|
32
|
-
|
|
33
|
-
/**
|
|
34
|
-
* @returns The path to the /spaces/[id]/projects/[id] route.
|
|
35
|
-
*/
|
|
36
|
-
static spaceProject(space: string, project: string): string {
|
|
37
|
-
return `/spaces/${space}/projects/${project}`;
|
|
38
|
-
}
|
|
39
|
-
|
|
40
|
-
/**
|
|
41
|
-
* @returns The path to the /spaces/[id]/projects/[id]/revisions route.
|
|
42
|
-
*/
|
|
43
|
-
static projectRevisions(space: string, project: string): string {
|
|
44
|
-
return `/spaces/${space}/projects/${project}/revisions`;
|
|
29
|
+
static fileRevisions(file: string): string {
|
|
30
|
+
return `/file/${file}/revisions`;
|
|
45
31
|
}
|
|
46
32
|
|
|
47
33
|
/**
|
|
@@ -87,7 +73,7 @@ export class RouteBuilder {
|
|
|
87
73
|
return `/history/${key}`;
|
|
88
74
|
}
|
|
89
75
|
|
|
90
|
-
static
|
|
91
|
-
return '/shared
|
|
76
|
+
static shared(): string {
|
|
77
|
+
return '/shared';
|
|
92
78
|
}
|
|
93
79
|
}
|
package/src/runtime/store/Sdk.ts
CHANGED
|
@@ -3,8 +3,7 @@ import { Http } from './Http.js';
|
|
|
3
3
|
import { WsClient } from './WsClient.js';
|
|
4
4
|
import { AuthSdk } from './AuthSdk.js';
|
|
5
5
|
import { BackendSdk } from './BackendSdk.js';
|
|
6
|
-
import {
|
|
7
|
-
import { ProjectsSdk } from './ProjectsSdk.js';
|
|
6
|
+
import { FilesSdk } from './FilesSdk.js';
|
|
8
7
|
import { UsersSdk } from './UsersSdk.js';
|
|
9
8
|
import { HistorySdk } from './HistorySdk.js';
|
|
10
9
|
import { SharedSdk } from './SharedSdk.js';
|
|
@@ -30,11 +29,7 @@ export abstract class Sdk {
|
|
|
30
29
|
/**
|
|
31
30
|
* The user spaces features.
|
|
32
31
|
*/
|
|
33
|
-
|
|
34
|
-
/**
|
|
35
|
-
* The user projects features.
|
|
36
|
-
*/
|
|
37
|
-
project = new ProjectsSdk(this);
|
|
32
|
+
file = new FilesSdk(this);
|
|
38
33
|
/**
|
|
39
34
|
* Reads user information.
|
|
40
35
|
*/
|
|
@@ -9,7 +9,7 @@ export class SharedSdk extends SdkBase {
|
|
|
9
9
|
*/
|
|
10
10
|
async list(options?: IListOptions): Promise<IListResponse> {
|
|
11
11
|
const { token } = this.sdk;
|
|
12
|
-
const url = this.sdk.getUrl(RouteBuilder.
|
|
12
|
+
const url = this.sdk.getUrl(RouteBuilder.shared());
|
|
13
13
|
this.sdk.appendListOptions(url, options);
|
|
14
14
|
const result = await this.sdk.http.get(url.toString(), { token });
|
|
15
15
|
this.inspectCommonStatusCodes(result.status);
|
|
@@ -5,7 +5,7 @@ import { Http } from './Http.js';
|
|
|
5
5
|
import { WsClient } from './WsClient.js';
|
|
6
6
|
|
|
7
7
|
export { IStoreTokenInfo, IStoreResponse, IStoreRequestOptions } from './SdkBase.js';
|
|
8
|
-
export { ISpaceCreateOptions } from './
|
|
8
|
+
export { IFileCreateOptions as ISpaceCreateOptions } from './FilesSdk.js';
|
|
9
9
|
|
|
10
10
|
/**
|
|
11
11
|
* NodeJS API for API Client's net-store module.
|
|
@@ -5,7 +5,7 @@ import { Http } from './Http.js';
|
|
|
5
5
|
import { WsClient } from './WsClient.js';
|
|
6
6
|
|
|
7
7
|
export { IStoreTokenInfo, IStoreResponse, IStoreRequestOptions } from './SdkBase.js';
|
|
8
|
-
export { ISpaceCreateOptions } from './
|
|
8
|
+
export { IFileCreateOptions as ISpaceCreateOptions } from './FilesSdk.js';
|
|
9
9
|
|
|
10
10
|
/**
|
|
11
11
|
* NodeJS API for API Client's net-store module.
|
|
@@ -1,43 +0,0 @@
|
|
|
1
|
-
import { JsonPatch } from 'json8-patch';
|
|
2
|
-
import { SdkBase } from './SdkBase.js';
|
|
3
|
-
import { IListOptions, IListResponse } from '../../models/Backend.js';
|
|
4
|
-
import { HttpProject, IHttpProject } from '../../models/HttpProject.js';
|
|
5
|
-
export declare class ProjectsSdk extends SdkBase {
|
|
6
|
-
/**
|
|
7
|
-
* Creates a project in a user space.
|
|
8
|
-
*
|
|
9
|
-
* @param space The user space key
|
|
10
|
-
* @param project THe project to create
|
|
11
|
-
* @returns The key of the created project.
|
|
12
|
-
*/
|
|
13
|
-
create(space: string, project: IHttpProject | HttpProject): Promise<string>;
|
|
14
|
-
/**
|
|
15
|
-
* Reads a project definition from the store.
|
|
16
|
-
* @param space The user space key
|
|
17
|
-
* @param project The project key
|
|
18
|
-
* @returns The definition of the project.
|
|
19
|
-
*/
|
|
20
|
-
read(space: string, project: string): Promise<IHttpProject>;
|
|
21
|
-
/**
|
|
22
|
-
* Lists projects in the space
|
|
23
|
-
*
|
|
24
|
-
* @param space The user space key
|
|
25
|
-
* @param options Optional query options.
|
|
26
|
-
*/
|
|
27
|
-
list(space: string, options?: IListOptions): Promise<IListResponse>;
|
|
28
|
-
/**
|
|
29
|
-
* Deletes a project form the store.
|
|
30
|
-
*
|
|
31
|
-
* @param space The key of the parent space.
|
|
32
|
-
* @param project The key of the project to delete.
|
|
33
|
-
*/
|
|
34
|
-
delete(space: string, project: string): Promise<void>;
|
|
35
|
-
/**
|
|
36
|
-
* Patches a project in the store.
|
|
37
|
-
* @param space The key of the parent user space
|
|
38
|
-
* @param project The key of project to patch.
|
|
39
|
-
* @param value The JSON patch to be processed.
|
|
40
|
-
* @returns The JSON patch to revert the change using the `json8-patch` library
|
|
41
|
-
*/
|
|
42
|
-
patch(space: string, project: string, value: JsonPatch): Promise<JsonPatch>;
|
|
43
|
-
}
|
|
@@ -1,144 +0,0 @@
|
|
|
1
|
-
import { SdkBase, E_RESPONSE_STATUS, E_RESPONSE_NO_VALUE, E_INVALID_JSON, E_RESPONSE_UNKNOWN, E_RESPONSE_LOCATION } from './SdkBase.js';
|
|
2
|
-
import { RouteBuilder } from './RouteBuilder.js';
|
|
3
|
-
import { Kind as HttpProjectKind } from '../../models/HttpProject.js';
|
|
4
|
-
export class ProjectsSdk extends SdkBase {
|
|
5
|
-
/**
|
|
6
|
-
* Creates a project in a user space.
|
|
7
|
-
*
|
|
8
|
-
* @param space The user space key
|
|
9
|
-
* @param project THe project to create
|
|
10
|
-
* @returns The key of the created project.
|
|
11
|
-
*/
|
|
12
|
-
async create(space, project) {
|
|
13
|
-
const { token } = this.sdk;
|
|
14
|
-
const url = this.sdk.getUrl(RouteBuilder.spaceProjects(space));
|
|
15
|
-
const body = JSON.stringify(project);
|
|
16
|
-
const result = await this.sdk.http.post(url.toString(), { token, body });
|
|
17
|
-
this.inspectCommonStatusCodes(result.status);
|
|
18
|
-
const E_PREFIX = 'Unable to create a project. ';
|
|
19
|
-
if (result.status !== 204) {
|
|
20
|
-
this.logInvalidResponse(result);
|
|
21
|
-
throw new Error(`${E_PREFIX}${E_RESPONSE_STATUS}${result.status}`);
|
|
22
|
-
}
|
|
23
|
-
const location = result.headers.get('location');
|
|
24
|
-
if (!location) {
|
|
25
|
-
throw new Error(`${E_PREFIX}${E_RESPONSE_LOCATION}`);
|
|
26
|
-
}
|
|
27
|
-
const id = location.split('/').pop();
|
|
28
|
-
return id;
|
|
29
|
-
}
|
|
30
|
-
/**
|
|
31
|
-
* Reads a project definition from the store.
|
|
32
|
-
* @param space The user space key
|
|
33
|
-
* @param project The project key
|
|
34
|
-
* @returns The definition of the project.
|
|
35
|
-
*/
|
|
36
|
-
async read(space, project) {
|
|
37
|
-
const { token } = this.sdk;
|
|
38
|
-
const url = this.sdk.getUrl(RouteBuilder.spaceProject(space, project));
|
|
39
|
-
const result = await this.sdk.http.get(url.toString(), { token });
|
|
40
|
-
this.inspectCommonStatusCodes(result.status);
|
|
41
|
-
const E_PREFIX = 'Unable to read a project. ';
|
|
42
|
-
if (result.status !== 200) {
|
|
43
|
-
this.logInvalidResponse(result);
|
|
44
|
-
throw new Error(`${E_PREFIX}${E_RESPONSE_STATUS}${result.status}`);
|
|
45
|
-
}
|
|
46
|
-
if (!result.body) {
|
|
47
|
-
throw new Error(`${E_PREFIX}${E_RESPONSE_NO_VALUE}`);
|
|
48
|
-
}
|
|
49
|
-
let data;
|
|
50
|
-
try {
|
|
51
|
-
data = JSON.parse(result.body);
|
|
52
|
-
}
|
|
53
|
-
catch (e) {
|
|
54
|
-
throw new Error(`${E_PREFIX}${E_INVALID_JSON}.`);
|
|
55
|
-
}
|
|
56
|
-
if (data.kind !== HttpProjectKind) {
|
|
57
|
-
throw new Error(`${E_PREFIX}${E_RESPONSE_UNKNOWN}.`);
|
|
58
|
-
}
|
|
59
|
-
return data;
|
|
60
|
-
}
|
|
61
|
-
/**
|
|
62
|
-
* Lists projects in the space
|
|
63
|
-
*
|
|
64
|
-
* @param space The user space key
|
|
65
|
-
* @param options Optional query options.
|
|
66
|
-
*/
|
|
67
|
-
async list(space, options) {
|
|
68
|
-
const { token } = this.sdk;
|
|
69
|
-
const url = this.sdk.getUrl(RouteBuilder.spaceProjects(space));
|
|
70
|
-
this.sdk.appendListOptions(url, options);
|
|
71
|
-
const result = await this.sdk.http.get(url.toString(), { token });
|
|
72
|
-
this.inspectCommonStatusCodes(result.status);
|
|
73
|
-
const E_PREFIX = 'Unable to list projects. ';
|
|
74
|
-
if (result.status !== 200) {
|
|
75
|
-
this.logInvalidResponse(result);
|
|
76
|
-
throw new Error(`${E_PREFIX}${E_RESPONSE_STATUS}${result.status}`);
|
|
77
|
-
}
|
|
78
|
-
if (!result.body) {
|
|
79
|
-
throw new Error(`${E_PREFIX}${E_RESPONSE_NO_VALUE}`);
|
|
80
|
-
}
|
|
81
|
-
let data;
|
|
82
|
-
try {
|
|
83
|
-
data = JSON.parse(result.body);
|
|
84
|
-
}
|
|
85
|
-
catch (e) {
|
|
86
|
-
throw new Error(`${E_PREFIX}${E_INVALID_JSON}.`);
|
|
87
|
-
}
|
|
88
|
-
if (!Array.isArray(data.data)) {
|
|
89
|
-
throw new Error(`${E_PREFIX}${E_RESPONSE_UNKNOWN}.`);
|
|
90
|
-
}
|
|
91
|
-
return data;
|
|
92
|
-
}
|
|
93
|
-
/**
|
|
94
|
-
* Deletes a project form the store.
|
|
95
|
-
*
|
|
96
|
-
* @param space The key of the parent space.
|
|
97
|
-
* @param project The key of the project to delete.
|
|
98
|
-
*/
|
|
99
|
-
async delete(space, project) {
|
|
100
|
-
const { token } = this.sdk;
|
|
101
|
-
const url = this.sdk.getUrl(RouteBuilder.spaceProject(space, project));
|
|
102
|
-
const result = await this.sdk.http.delete(url.toString(), { token });
|
|
103
|
-
this.inspectCommonStatusCodes(result.status);
|
|
104
|
-
const E_PREFIX = 'Unable to delete a project. ';
|
|
105
|
-
if (result.status !== 204) {
|
|
106
|
-
this.logInvalidResponse(result);
|
|
107
|
-
throw new Error(`${E_PREFIX}${E_RESPONSE_STATUS}${result.status}`);
|
|
108
|
-
}
|
|
109
|
-
}
|
|
110
|
-
/**
|
|
111
|
-
* Patches a project in the store.
|
|
112
|
-
* @param space The key of the parent user space
|
|
113
|
-
* @param project The key of project to patch.
|
|
114
|
-
* @param value The JSON patch to be processed.
|
|
115
|
-
* @returns The JSON patch to revert the change using the `json8-patch` library
|
|
116
|
-
*/
|
|
117
|
-
async patch(space, project, value) {
|
|
118
|
-
const { token } = this.sdk;
|
|
119
|
-
const url = this.sdk.getUrl(RouteBuilder.spaceProject(space, project));
|
|
120
|
-
const body = JSON.stringify(value);
|
|
121
|
-
const result = await this.sdk.http.patch(url.toString(), { token, body });
|
|
122
|
-
this.inspectCommonStatusCodes(result.status);
|
|
123
|
-
const E_PREFIX = 'Unable to patch a project. ';
|
|
124
|
-
if (result.status !== 200) {
|
|
125
|
-
this.logInvalidResponse(result);
|
|
126
|
-
throw new Error(`${E_PREFIX}${E_RESPONSE_STATUS}${result.status}`);
|
|
127
|
-
}
|
|
128
|
-
if (!result.body) {
|
|
129
|
-
throw new Error(`${E_PREFIX}${E_RESPONSE_NO_VALUE}`);
|
|
130
|
-
}
|
|
131
|
-
let data;
|
|
132
|
-
try {
|
|
133
|
-
data = JSON.parse(result.body);
|
|
134
|
-
}
|
|
135
|
-
catch (e) {
|
|
136
|
-
throw new Error(`${E_PREFIX}${E_INVALID_JSON}.`);
|
|
137
|
-
}
|
|
138
|
-
if (!data.revert) {
|
|
139
|
-
throw new Error(`${E_PREFIX}${E_RESPONSE_UNKNOWN}.`);
|
|
140
|
-
}
|
|
141
|
-
return data.revert;
|
|
142
|
-
}
|
|
143
|
-
}
|
|
144
|
-
//# sourceMappingURL=ProjectsSdk.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"ProjectsSdk.js","sourceRoot":"","sources":["../../../../src/runtime/store/ProjectsSdk.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,62 +0,0 @@
|
|
|
1
|
-
import { JsonPatch } from 'json8-patch';
|
|
2
|
-
import { SdkBase } from './SdkBase.js';
|
|
3
|
-
import { IListOptions, IListResponse } from '../../models/Backend.js';
|
|
4
|
-
import { IWorkspace, Workspace } from '../../models/Workspace.js';
|
|
5
|
-
import { AccessOperation } from '../../models/store/Permission.js';
|
|
6
|
-
import WebSocketNode from 'ws';
|
|
7
|
-
export interface ISpaceCreateOptions {
|
|
8
|
-
/**
|
|
9
|
-
* Optional parent space id.
|
|
10
|
-
* When set it creates a space under this parent.
|
|
11
|
-
*/
|
|
12
|
-
parent?: string;
|
|
13
|
-
}
|
|
14
|
-
export declare class SpacesSdk extends SdkBase {
|
|
15
|
-
/**
|
|
16
|
-
* Lists spaces in the store.
|
|
17
|
-
* @param options Optional query options.
|
|
18
|
-
*/
|
|
19
|
-
list(options?: IListOptions): Promise<IListResponse>;
|
|
20
|
-
/**
|
|
21
|
-
* Creates a workspace in the store.
|
|
22
|
-
* @param space The workspace definition.
|
|
23
|
-
* @returns The key of the creates space.
|
|
24
|
-
*/
|
|
25
|
-
create(space: IWorkspace | Workspace, opts?: ISpaceCreateOptions): Promise<string>;
|
|
26
|
-
/**
|
|
27
|
-
* Reads a user space definition from the store.
|
|
28
|
-
* @param key The user space key
|
|
29
|
-
* @returns The definition of the user space.
|
|
30
|
-
*/
|
|
31
|
-
read(key: string): Promise<IWorkspace>;
|
|
32
|
-
/**
|
|
33
|
-
* Patches a user space in the store.
|
|
34
|
-
* @param key The key of the user space to patch
|
|
35
|
-
* @param value The JSON patch to be processed.
|
|
36
|
-
* @returns The JSON patch to revert the change using the `json8-patch` library
|
|
37
|
-
*/
|
|
38
|
-
patch(key: string, value: JsonPatch): Promise<JsonPatch>;
|
|
39
|
-
/**
|
|
40
|
-
* Deletes the space in the store.
|
|
41
|
-
*
|
|
42
|
-
* @param key The key of the space to delete.
|
|
43
|
-
*/
|
|
44
|
-
delete(key: string): Promise<void>;
|
|
45
|
-
/**
|
|
46
|
-
* Updates the sharing options of the space.
|
|
47
|
-
*
|
|
48
|
-
* @param key The user space key
|
|
49
|
-
* @param value The patch operation on the space's ACL
|
|
50
|
-
*/
|
|
51
|
-
patchUsers(key: string, value: AccessOperation[]): Promise<void>;
|
|
52
|
-
/**
|
|
53
|
-
* Lists uses having access to the user space.
|
|
54
|
-
*
|
|
55
|
-
* @param key The user space key
|
|
56
|
-
*/
|
|
57
|
-
listUsers(key: string): Promise<IListResponse>;
|
|
58
|
-
/**
|
|
59
|
-
* Creates a WS client that listens to the spaces events.
|
|
60
|
-
*/
|
|
61
|
-
observeSpaces(): Promise<WebSocketNode | WebSocket>;
|
|
62
|
-
}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"SpacesSdk.js","sourceRoot":"","sources":["../../../../src/runtime/store/SpacesSdk.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,147 +0,0 @@
|
|
|
1
|
-
import { JsonPatch } from 'json8-patch';
|
|
2
|
-
import { SdkBase, E_RESPONSE_STATUS, E_RESPONSE_NO_VALUE, E_INVALID_JSON, E_RESPONSE_UNKNOWN, E_RESPONSE_LOCATION } from './SdkBase.js';
|
|
3
|
-
import { RouteBuilder } from './RouteBuilder.js';
|
|
4
|
-
import { IListOptions, IListResponse } from '../../models/Backend.js';
|
|
5
|
-
import { HttpProject, IHttpProject, Kind as HttpProjectKind } from '../../models/HttpProject.js';
|
|
6
|
-
|
|
7
|
-
export class ProjectsSdk extends SdkBase {
|
|
8
|
-
/**
|
|
9
|
-
* Creates a project in a user space.
|
|
10
|
-
*
|
|
11
|
-
* @param space The user space key
|
|
12
|
-
* @param project THe project to create
|
|
13
|
-
* @returns The key of the created project.
|
|
14
|
-
*/
|
|
15
|
-
async create(space: string, project: IHttpProject | HttpProject): Promise<string> {
|
|
16
|
-
const { token } = this.sdk;
|
|
17
|
-
const url = this.sdk.getUrl(RouteBuilder.spaceProjects(space));
|
|
18
|
-
const body = JSON.stringify(project);
|
|
19
|
-
const result = await this.sdk.http.post(url.toString(), { token, body });
|
|
20
|
-
this.inspectCommonStatusCodes(result.status);
|
|
21
|
-
const E_PREFIX = 'Unable to create a project. ';
|
|
22
|
-
if (result.status !== 204) {
|
|
23
|
-
this.logInvalidResponse(result);
|
|
24
|
-
throw new Error(`${E_PREFIX}${E_RESPONSE_STATUS}${result.status}`);
|
|
25
|
-
}
|
|
26
|
-
const location = result.headers.get('location');
|
|
27
|
-
if (!location) {
|
|
28
|
-
throw new Error(`${E_PREFIX}${E_RESPONSE_LOCATION}`);
|
|
29
|
-
}
|
|
30
|
-
const id = location.split('/').pop();
|
|
31
|
-
return id as string;
|
|
32
|
-
}
|
|
33
|
-
|
|
34
|
-
/**
|
|
35
|
-
* Reads a project definition from the store.
|
|
36
|
-
* @param space The user space key
|
|
37
|
-
* @param project The project key
|
|
38
|
-
* @returns The definition of the project.
|
|
39
|
-
*/
|
|
40
|
-
async read(space: string, project: string): Promise<IHttpProject> {
|
|
41
|
-
const { token } = this.sdk;
|
|
42
|
-
const url = this.sdk.getUrl(RouteBuilder.spaceProject(space, project));
|
|
43
|
-
const result = await this.sdk.http.get(url.toString(), { token });
|
|
44
|
-
this.inspectCommonStatusCodes(result.status);
|
|
45
|
-
const E_PREFIX = 'Unable to read a project. ';
|
|
46
|
-
if (result.status !== 200) {
|
|
47
|
-
this.logInvalidResponse(result);
|
|
48
|
-
throw new Error(`${E_PREFIX}${E_RESPONSE_STATUS}${result.status}`);
|
|
49
|
-
}
|
|
50
|
-
if (!result.body) {
|
|
51
|
-
throw new Error(`${E_PREFIX}${E_RESPONSE_NO_VALUE}`);
|
|
52
|
-
}
|
|
53
|
-
let data: IHttpProject;
|
|
54
|
-
try {
|
|
55
|
-
data = JSON.parse(result.body);
|
|
56
|
-
} catch (e) {
|
|
57
|
-
throw new Error(`${E_PREFIX}${E_INVALID_JSON}.`);
|
|
58
|
-
}
|
|
59
|
-
if (data.kind !== HttpProjectKind) {
|
|
60
|
-
throw new Error(`${E_PREFIX}${E_RESPONSE_UNKNOWN}.`);
|
|
61
|
-
}
|
|
62
|
-
return data;
|
|
63
|
-
}
|
|
64
|
-
|
|
65
|
-
/**
|
|
66
|
-
* Lists projects in the space
|
|
67
|
-
*
|
|
68
|
-
* @param space The user space key
|
|
69
|
-
* @param options Optional query options.
|
|
70
|
-
*/
|
|
71
|
-
async list(space: string, options?: IListOptions): Promise<IListResponse> {
|
|
72
|
-
const { token } = this.sdk;
|
|
73
|
-
const url = this.sdk.getUrl(RouteBuilder.spaceProjects(space));
|
|
74
|
-
this.sdk.appendListOptions(url, options);
|
|
75
|
-
const result = await this.sdk.http.get(url.toString(), { token });
|
|
76
|
-
this.inspectCommonStatusCodes(result.status);
|
|
77
|
-
const E_PREFIX = 'Unable to list projects. ';
|
|
78
|
-
if (result.status !== 200) {
|
|
79
|
-
this.logInvalidResponse(result);
|
|
80
|
-
throw new Error(`${E_PREFIX}${E_RESPONSE_STATUS}${result.status}`);
|
|
81
|
-
}
|
|
82
|
-
if (!result.body) {
|
|
83
|
-
throw new Error(`${E_PREFIX}${E_RESPONSE_NO_VALUE}`);
|
|
84
|
-
}
|
|
85
|
-
let data: IListResponse;
|
|
86
|
-
try {
|
|
87
|
-
data = JSON.parse(result.body);
|
|
88
|
-
} catch (e) {
|
|
89
|
-
throw new Error(`${E_PREFIX}${E_INVALID_JSON}.`);
|
|
90
|
-
}
|
|
91
|
-
if (!Array.isArray(data.data)) {
|
|
92
|
-
throw new Error(`${E_PREFIX}${E_RESPONSE_UNKNOWN}.`);
|
|
93
|
-
}
|
|
94
|
-
return data;
|
|
95
|
-
}
|
|
96
|
-
|
|
97
|
-
/**
|
|
98
|
-
* Deletes a project form the store.
|
|
99
|
-
*
|
|
100
|
-
* @param space The key of the parent space.
|
|
101
|
-
* @param project The key of the project to delete.
|
|
102
|
-
*/
|
|
103
|
-
async delete(space: string, project: string): Promise<void> {
|
|
104
|
-
const { token } = this.sdk;
|
|
105
|
-
const url = this.sdk.getUrl(RouteBuilder.spaceProject(space, project));
|
|
106
|
-
const result = await this.sdk.http.delete(url.toString(), { token });
|
|
107
|
-
this.inspectCommonStatusCodes(result.status);
|
|
108
|
-
const E_PREFIX = 'Unable to delete a project. ';
|
|
109
|
-
if (result.status !== 204) {
|
|
110
|
-
this.logInvalidResponse(result);
|
|
111
|
-
throw new Error(`${E_PREFIX}${E_RESPONSE_STATUS}${result.status}`);
|
|
112
|
-
}
|
|
113
|
-
}
|
|
114
|
-
|
|
115
|
-
/**
|
|
116
|
-
* Patches a project in the store.
|
|
117
|
-
* @param space The key of the parent user space
|
|
118
|
-
* @param project The key of project to patch.
|
|
119
|
-
* @param value The JSON patch to be processed.
|
|
120
|
-
* @returns The JSON patch to revert the change using the `json8-patch` library
|
|
121
|
-
*/
|
|
122
|
-
async patch(space: string, project: string, value: JsonPatch): Promise<JsonPatch> {
|
|
123
|
-
const { token } = this.sdk;
|
|
124
|
-
const url = this.sdk.getUrl(RouteBuilder.spaceProject(space, project));
|
|
125
|
-
const body = JSON.stringify(value);
|
|
126
|
-
const result = await this.sdk.http.patch(url.toString(), { token, body });
|
|
127
|
-
this.inspectCommonStatusCodes(result.status);
|
|
128
|
-
const E_PREFIX = 'Unable to patch a project. ';
|
|
129
|
-
if (result.status !== 200) {
|
|
130
|
-
this.logInvalidResponse(result);
|
|
131
|
-
throw new Error(`${E_PREFIX}${E_RESPONSE_STATUS}${result.status}`);
|
|
132
|
-
}
|
|
133
|
-
if (!result.body) {
|
|
134
|
-
throw new Error(`${E_PREFIX}${E_RESPONSE_NO_VALUE}`);
|
|
135
|
-
}
|
|
136
|
-
let data: any;
|
|
137
|
-
try {
|
|
138
|
-
data = JSON.parse(result.body);
|
|
139
|
-
} catch (e) {
|
|
140
|
-
throw new Error(`${E_PREFIX}${E_INVALID_JSON}.`);
|
|
141
|
-
}
|
|
142
|
-
if (!data.revert) {
|
|
143
|
-
throw new Error(`${E_PREFIX}${E_RESPONSE_UNKNOWN}.`);
|
|
144
|
-
}
|
|
145
|
-
return data.revert as JsonPatch;
|
|
146
|
-
}
|
|
147
|
-
}
|