@api-client/core 0.5.1 → 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/browser.d.ts +2 -3
- package/build/browser.js +2 -2
- package/build/browser.js.map +1 -1
- package/build/index.d.ts +2 -3
- package/build/index.js +2 -2
- package/build/index.js.map +1 -1
- package/build/src/models/Project.d.ts +41 -0
- package/build/src/models/Project.js +94 -0
- package/build/src/models/Project.js.map +1 -0
- package/build/src/models/RevisionInfo.d.ts +5 -0
- package/build/src/models/RevisionInfo.js.map +1 -1
- package/build/src/models/Thing.js +1 -1
- package/build/src/models/Thing.js.map +1 -1
- package/build/src/models/Workspace.d.ts +0 -17
- package/build/src/models/Workspace.js +3 -19
- package/build/src/models/Workspace.js.map +1 -1
- package/build/src/models/store/Deletion.d.ts +24 -0
- package/build/src/models/store/Deletion.js +2 -0
- package/build/src/models/store/Deletion.js.map +1 -0
- package/build/src/models/store/File.d.ts +75 -12
- package/build/src/models/store/File.js +120 -19
- package/build/src/models/store/File.js.map +1 -1
- package/build/src/models/store/Modification.d.ts +24 -0
- package/build/src/models/store/Modification.js +2 -0
- package/build/src/models/store/Modification.js.map +1 -0
- package/build/src/runtime/store/FilesSdk.d.ts +79 -0
- package/build/src/runtime/store/{SpacesSdk.js → FilesSdk.js} +29 -15
- 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 +2 -0
- package/build/src/runtime/store/StoreSdkNode.js.map +1 -1
- package/build/src/runtime/store/StoreSdkWeb.d.ts +2 -0
- package/build/src/runtime/store/StoreSdkWeb.js.map +1 -1
- package/package.json +1 -1
- package/src/models/Project.ts +110 -0
- package/src/models/RevisionInfo.ts +6 -0
- package/src/models/Thing.ts +1 -1
- package/src/models/Workspace.ts +4 -29
- package/src/models/store/Deletion.ts +24 -0
- package/src/models/store/File.ts +146 -26
- package/src/models/store/Modification.ts +24 -0
- package/src/runtime/store/{SpacesSdk.ts → FilesSdk.ts} +69 -20
- 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 +3 -0
- package/src/runtime/store/StoreSdkWeb.ts +3 -0
- package/build/src/models/HttpProjectListItem.d.ts +0 -23
- package/build/src/models/HttpProjectListItem.js +0 -2
- package/build/src/models/HttpProjectListItem.js.map +0 -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 -57
- package/build/src/runtime/store/SpacesSdk.js.map +0 -1
- package/src/models/HttpProjectListItem.ts +0 -23
- package/src/runtime/store/ProjectsSdk.ts +0 -147
|
@@ -4,8 +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';
|
|
9
|
+
import WebSocketNode from 'ws';
|
|
7
10
|
|
|
8
|
-
export interface
|
|
11
|
+
export interface IFileCreateOptions {
|
|
9
12
|
/**
|
|
10
13
|
* Optional parent space id.
|
|
11
14
|
* When set it creates a space under this parent.
|
|
@@ -13,14 +16,14 @@ export interface ISpaceCreateOptions {
|
|
|
13
16
|
parent?: string;
|
|
14
17
|
}
|
|
15
18
|
|
|
16
|
-
export class
|
|
19
|
+
export class FilesSdk extends SdkBase {
|
|
17
20
|
/**
|
|
18
|
-
* Lists spaces in the store.
|
|
21
|
+
* Lists files (spaces, projects, etc) in the store.
|
|
19
22
|
* @param options Optional query options.
|
|
20
23
|
*/
|
|
21
|
-
async list(options?: IListOptions): Promise<IListResponse
|
|
24
|
+
async list(options?: IListOptions): Promise<IListResponse<IFile>> {
|
|
22
25
|
const { token } = this.sdk;
|
|
23
|
-
const url = this.sdk.getUrl(RouteBuilder.
|
|
26
|
+
const url = this.sdk.getUrl(RouteBuilder.files());
|
|
24
27
|
this.sdk.appendListOptions(url, options);
|
|
25
28
|
const result = await this.sdk.http.get(url.toString(), { token });
|
|
26
29
|
this.inspectCommonStatusCodes(result.status);
|
|
@@ -32,7 +35,7 @@ export class SpacesSdk extends SdkBase {
|
|
|
32
35
|
if (!result.body) {
|
|
33
36
|
throw new Error(`${E_PREFIX}${E_RESPONSE_NO_VALUE}`);
|
|
34
37
|
}
|
|
35
|
-
let data: IListResponse
|
|
38
|
+
let data: IListResponse<IFile>;
|
|
36
39
|
try {
|
|
37
40
|
data = JSON.parse(result.body);
|
|
38
41
|
} catch (e) {
|
|
@@ -49,9 +52,9 @@ export class SpacesSdk extends SdkBase {
|
|
|
49
52
|
* @param space The workspace definition.
|
|
50
53
|
* @returns The key of the creates space.
|
|
51
54
|
*/
|
|
52
|
-
async create(space: IWorkspace | Workspace, opts:
|
|
55
|
+
async create(space: IWorkspace | Workspace, opts: IFileCreateOptions = {}): Promise<string> {
|
|
53
56
|
const { token } = this.sdk;
|
|
54
|
-
const path = opts.parent ? RouteBuilder.
|
|
57
|
+
const path = opts.parent ? RouteBuilder.file(opts.parent) : RouteBuilder.files();
|
|
55
58
|
const url = this.sdk.getUrl(path);
|
|
56
59
|
const body = JSON.stringify(space);
|
|
57
60
|
const result = await this.sdk.http.post(url.toString(), { token, body });
|
|
@@ -70,13 +73,31 @@ export class SpacesSdk extends SdkBase {
|
|
|
70
73
|
}
|
|
71
74
|
|
|
72
75
|
/**
|
|
73
|
-
* Reads
|
|
74
|
-
*
|
|
75
|
-
* @
|
|
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
|
|
87
|
+
*/
|
|
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.
|
|
76
94
|
*/
|
|
77
|
-
async read(key: string): Promise<
|
|
95
|
+
async read(key: string, media?: boolean): Promise<IFile | unknown> {
|
|
78
96
|
const { token } = this.sdk;
|
|
79
|
-
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
|
+
}
|
|
80
101
|
const result = await this.sdk.http.get(url.toString(), { token });
|
|
81
102
|
this.inspectCommonStatusCodes(result.status);
|
|
82
103
|
const E_PREFIX = 'Unable to read a user space. ';
|
|
@@ -99,15 +120,34 @@ export class SpacesSdk extends SdkBase {
|
|
|
99
120
|
return data;
|
|
100
121
|
}
|
|
101
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
|
+
|
|
102
139
|
/**
|
|
103
140
|
* Patches a user space in the store.
|
|
104
141
|
* @param key The key of the user space to patch
|
|
105
142
|
* @param value The JSON patch to be processed.
|
|
106
143
|
* @returns The JSON patch to revert the change using the `json8-patch` library
|
|
107
144
|
*/
|
|
108
|
-
async patch(key: string, value: JsonPatch): Promise<JsonPatch> {
|
|
145
|
+
async patch(key: string, value: JsonPatch, media?: boolean): Promise<JsonPatch> {
|
|
109
146
|
const { token } = this.sdk;
|
|
110
|
-
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
|
+
}
|
|
111
151
|
const body = JSON.stringify(value);
|
|
112
152
|
const result = await this.sdk.http.patch(url.toString(), { token, body });
|
|
113
153
|
this.inspectCommonStatusCodes(result.status);
|
|
@@ -138,7 +178,7 @@ export class SpacesSdk extends SdkBase {
|
|
|
138
178
|
*/
|
|
139
179
|
async delete(key: string): Promise<void> {
|
|
140
180
|
const { token } = this.sdk;
|
|
141
|
-
const url = this.sdk.getUrl(RouteBuilder.
|
|
181
|
+
const url = this.sdk.getUrl(RouteBuilder.file(key));
|
|
142
182
|
const result = await this.sdk.http.delete(url.toString(), { token });
|
|
143
183
|
this.inspectCommonStatusCodes(result.status);
|
|
144
184
|
const E_PREFIX = 'Unable to delete a user space. ';
|
|
@@ -156,7 +196,7 @@ export class SpacesSdk extends SdkBase {
|
|
|
156
196
|
*/
|
|
157
197
|
async patchUsers(key: string, value: AccessOperation[]): Promise<void> {
|
|
158
198
|
const { token } = this.sdk;
|
|
159
|
-
const url = this.sdk.getUrl(RouteBuilder.
|
|
199
|
+
const url = this.sdk.getUrl(RouteBuilder.fileUsers(key));
|
|
160
200
|
const body = JSON.stringify(value);
|
|
161
201
|
const result = await this.sdk.http.patch(url.toString(), { token, body });
|
|
162
202
|
this.inspectCommonStatusCodes(result.status);
|
|
@@ -172,9 +212,9 @@ export class SpacesSdk extends SdkBase {
|
|
|
172
212
|
*
|
|
173
213
|
* @param key The user space key
|
|
174
214
|
*/
|
|
175
|
-
async listUsers(key: string): Promise<IListResponse
|
|
215
|
+
async listUsers(key: string): Promise<IListResponse<IUser>> {
|
|
176
216
|
const { token } = this.sdk;
|
|
177
|
-
const url = this.sdk.getUrl(RouteBuilder.
|
|
217
|
+
const url = this.sdk.getUrl(RouteBuilder.fileUsers(key));
|
|
178
218
|
const result = await this.sdk.http.get(url.toString(), { token });
|
|
179
219
|
this.inspectCommonStatusCodes(result.status);
|
|
180
220
|
const E_PREFIX = 'Unable to list users in the space. ';
|
|
@@ -185,7 +225,7 @@ export class SpacesSdk extends SdkBase {
|
|
|
185
225
|
if (!result.body) {
|
|
186
226
|
throw new Error(`${E_PREFIX}${E_RESPONSE_NO_VALUE}`);
|
|
187
227
|
}
|
|
188
|
-
let data: IListResponse
|
|
228
|
+
let data: IListResponse<IUser>;
|
|
189
229
|
try {
|
|
190
230
|
data = JSON.parse(result.body);
|
|
191
231
|
} catch (e) {
|
|
@@ -196,4 +236,13 @@ export class SpacesSdk extends SdkBase {
|
|
|
196
236
|
}
|
|
197
237
|
return data;
|
|
198
238
|
}
|
|
239
|
+
|
|
240
|
+
/**
|
|
241
|
+
* Creates a WS client that listens to the spaces events.
|
|
242
|
+
*/
|
|
243
|
+
async observeFiles(): Promise<WebSocketNode | WebSocket> {
|
|
244
|
+
const { token } = this.sdk;
|
|
245
|
+
const url = this.sdk.getUrl(RouteBuilder.files());
|
|
246
|
+
return this.sdk.ws.createAndConnect(url.toString(), token);
|
|
247
|
+
}
|
|
199
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);
|
|
@@ -4,6 +4,9 @@ import { Sdk } from './Sdk.js';
|
|
|
4
4
|
import { Http } from './Http.js';
|
|
5
5
|
import { WsClient } from './WsClient.js';
|
|
6
6
|
|
|
7
|
+
export { IStoreTokenInfo, IStoreResponse, IStoreRequestOptions } from './SdkBase.js';
|
|
8
|
+
export { IFileCreateOptions as ISpaceCreateOptions } from './FilesSdk.js';
|
|
9
|
+
|
|
7
10
|
/**
|
|
8
11
|
* NodeJS API for API Client's net-store module.
|
|
9
12
|
*/
|
|
@@ -4,6 +4,9 @@ import { Sdk } from './Sdk.js';
|
|
|
4
4
|
import { Http } from './Http.js';
|
|
5
5
|
import { WsClient } from './WsClient.js';
|
|
6
6
|
|
|
7
|
+
export { IStoreTokenInfo, IStoreResponse, IStoreRequestOptions } from './SdkBase.js';
|
|
8
|
+
export { IFileCreateOptions as ISpaceCreateOptions } from './FilesSdk.js';
|
|
9
|
+
|
|
7
10
|
/**
|
|
8
11
|
* NodeJS API for API Client's net-store module.
|
|
9
12
|
*/
|
|
@@ -1,23 +0,0 @@
|
|
|
1
|
-
export declare const Kind = "Core#HttpProjectListItem";
|
|
2
|
-
/**
|
|
3
|
-
* The HTTP Project definition to be used in lists.
|
|
4
|
-
*/
|
|
5
|
-
export interface IHttpProjectListItem {
|
|
6
|
-
/**
|
|
7
|
-
* The data store key of the project.
|
|
8
|
-
*/
|
|
9
|
-
key: string;
|
|
10
|
-
/**
|
|
11
|
-
* Project's name
|
|
12
|
-
*/
|
|
13
|
-
name: string;
|
|
14
|
-
/**
|
|
15
|
-
* Whether the project is one of the favourites.
|
|
16
|
-
* May be used by an UI to add projects to favourites.
|
|
17
|
-
*/
|
|
18
|
-
favourite?: boolean;
|
|
19
|
-
/**
|
|
20
|
-
* The timestamp when the project was last updated.
|
|
21
|
-
*/
|
|
22
|
-
updated: number;
|
|
23
|
-
}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"HttpProjectListItem.js","sourceRoot":"","sources":["../../../src/models/HttpProjectListItem.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,IAAI,GAAG,0BAA0B,CAAC"}
|
|
@@ -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,57 +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
|
-
export interface ISpaceCreateOptions {
|
|
7
|
-
/**
|
|
8
|
-
* Optional parent space id.
|
|
9
|
-
* When set it creates a space under this parent.
|
|
10
|
-
*/
|
|
11
|
-
parent?: string;
|
|
12
|
-
}
|
|
13
|
-
export declare class SpacesSdk extends SdkBase {
|
|
14
|
-
/**
|
|
15
|
-
* Lists spaces in the store.
|
|
16
|
-
* @param options Optional query options.
|
|
17
|
-
*/
|
|
18
|
-
list(options?: IListOptions): Promise<IListResponse>;
|
|
19
|
-
/**
|
|
20
|
-
* Creates a workspace in the store.
|
|
21
|
-
* @param space The workspace definition.
|
|
22
|
-
* @returns The key of the creates space.
|
|
23
|
-
*/
|
|
24
|
-
create(space: IWorkspace | Workspace, opts?: ISpaceCreateOptions): Promise<string>;
|
|
25
|
-
/**
|
|
26
|
-
* Reads a user space definition from the store.
|
|
27
|
-
* @param key The user space key
|
|
28
|
-
* @returns The definition of the user space.
|
|
29
|
-
*/
|
|
30
|
-
read(key: string): Promise<IWorkspace>;
|
|
31
|
-
/**
|
|
32
|
-
* Patches a user space in the store.
|
|
33
|
-
* @param key The key of the user space to patch
|
|
34
|
-
* @param value The JSON patch to be processed.
|
|
35
|
-
* @returns The JSON patch to revert the change using the `json8-patch` library
|
|
36
|
-
*/
|
|
37
|
-
patch(key: string, value: JsonPatch): Promise<JsonPatch>;
|
|
38
|
-
/**
|
|
39
|
-
* Deletes the space in the store.
|
|
40
|
-
*
|
|
41
|
-
* @param key The key of the space to delete.
|
|
42
|
-
*/
|
|
43
|
-
delete(key: string): Promise<void>;
|
|
44
|
-
/**
|
|
45
|
-
* Updates the sharing options of the space.
|
|
46
|
-
*
|
|
47
|
-
* @param key The user space key
|
|
48
|
-
* @param value The patch operation on the space's ACL
|
|
49
|
-
*/
|
|
50
|
-
patchUsers(key: string, value: AccessOperation[]): Promise<void>;
|
|
51
|
-
/**
|
|
52
|
-
* Lists uses having access to the user space.
|
|
53
|
-
*
|
|
54
|
-
* @param key The user space key
|
|
55
|
-
*/
|
|
56
|
-
listUsers(key: string): Promise<IListResponse>;
|
|
57
|
-
}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"SpacesSdk.js","sourceRoot":"","sources":["../../../../src/runtime/store/SpacesSdk.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,OAAO,EAAE,iBAAiB,EAAE,mBAAmB,EAAE,cAAc,EAAE,kBAAkB,EAAE,mBAAmB,EAAE,MAAM,cAAc,CAAC;AACxI,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AAEjD,OAAO,EAAyB,IAAI,IAAI,aAAa,EAAE,MAAM,2BAA2B,CAAC;AAWzF,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;IAED;;;;OAIG;IACH,KAAK,CAAC,MAAM,CAAC,KAA6B,EAAE,OAA4B,EAAE;QACxE,MAAM,EAAE,KAAK,EAAE,GAAG,IAAI,CAAC,GAAG,CAAC;QAC3B,MAAM,IAAI,GAAG,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,YAAY,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,YAAY,CAAC,MAAM,EAAE,CAAC;QACnF,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;QAClC,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,QAAQ,GAAG,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC;QAChD,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,YAAY,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC;QACrD,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,IAAgB,CAAC;QACrB,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,aAAa,EAAE;YAC/B,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,YAAY,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC;QACrD,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,YAAY,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC;QACrD,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,KAAwB;QACpD,MAAM,EAAE,KAAK,EAAE,GAAG,IAAI,CAAC,GAAG,CAAC;QAC3B,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,YAAY,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC;QAC1D,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;IAED;;;;OAIG;IACH,KAAK,CAAC,SAAS,CAAC,GAAW;QACzB,MAAM,EAAE,KAAK,EAAE,GAAG,IAAI,CAAC,GAAG,CAAC;QAC3B,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,YAAY,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC;QAC1D,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,qCAAqC,CAAC;QACvD,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"}
|
|
@@ -1,23 +0,0 @@
|
|
|
1
|
-
export const Kind = 'Core#HttpProjectListItem';
|
|
2
|
-
/**
|
|
3
|
-
* The HTTP Project definition to be used in lists.
|
|
4
|
-
*/
|
|
5
|
-
export interface IHttpProjectListItem {
|
|
6
|
-
/**
|
|
7
|
-
* The data store key of the project.
|
|
8
|
-
*/
|
|
9
|
-
key: string;
|
|
10
|
-
/**
|
|
11
|
-
* Project's name
|
|
12
|
-
*/
|
|
13
|
-
name: string;
|
|
14
|
-
/**
|
|
15
|
-
* Whether the project is one of the favourites.
|
|
16
|
-
* May be used by an UI to add projects to favourites.
|
|
17
|
-
*/
|
|
18
|
-
favourite?: boolean;
|
|
19
|
-
/**
|
|
20
|
-
* The timestamp when the project was last updated.
|
|
21
|
-
*/
|
|
22
|
-
updated: number;
|
|
23
|
-
}
|