@reximo/cli 0.1.0-alpha.3 → 0.1.0-alpha.5
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/README.md +162 -0
- package/package.json +3 -3
- package/src/client/generated/index.d.ts +1 -1
- package/src/client/generated/index.js +2 -4
- package/src/client/generated/index.js.map +1 -1
- package/src/client/generated/reximo-api-client.generated.d.ts +253 -0
- package/src/client/generated/reximo-api-client.generated.js +285 -0
- package/src/client/generated/reximo-api-client.generated.js.map +1 -1
- package/src/client/reximo-client.d.ts +113 -1
- package/src/client/reximo-client.js +262 -0
- package/src/client/reximo-client.js.map +1 -1
- package/src/lib/run-cli.js +610 -0
- package/src/lib/run-cli.js.map +1 -1
- package/src/lib/runtime-deps.d.ts +10 -0
- package/src/lib/runtime-deps.js +80 -0
- package/src/lib/runtime-deps.js.map +1 -0
|
@@ -30,6 +30,107 @@ function unwrapResponseData(response, fallback) {
|
|
|
30
30
|
}
|
|
31
31
|
return response;
|
|
32
32
|
}
|
|
33
|
+
function isRecord(value) {
|
|
34
|
+
return typeof value === 'object' && value !== null;
|
|
35
|
+
}
|
|
36
|
+
function normalizePagination(pagination, itemCount) {
|
|
37
|
+
if (isRecord(pagination)) {
|
|
38
|
+
const page = typeof pagination['page'] === 'number' ? pagination['page'] : 1;
|
|
39
|
+
const pageSize = typeof pagination['pageSize'] === 'number' ? pagination['pageSize'] : itemCount;
|
|
40
|
+
const total = typeof pagination['total'] === 'number' ? pagination['total'] : itemCount;
|
|
41
|
+
const totalPages = typeof pagination['totalPages'] === 'number'
|
|
42
|
+
? pagination['totalPages']
|
|
43
|
+
: pageSize > 0
|
|
44
|
+
? Math.ceil(total / pageSize)
|
|
45
|
+
: 0;
|
|
46
|
+
return {
|
|
47
|
+
page,
|
|
48
|
+
pageSize,
|
|
49
|
+
total,
|
|
50
|
+
totalPages,
|
|
51
|
+
hasNext: typeof pagination['hasNext'] === 'boolean' ? pagination['hasNext'] : page < totalPages,
|
|
52
|
+
hasPrevious: typeof pagination['hasPrevious'] === 'boolean' ? pagination['hasPrevious'] : page > 1
|
|
53
|
+
};
|
|
54
|
+
}
|
|
55
|
+
return {
|
|
56
|
+
page: 1,
|
|
57
|
+
pageSize: itemCount,
|
|
58
|
+
total: itemCount,
|
|
59
|
+
totalPages: itemCount > 0 ? 1 : 0,
|
|
60
|
+
hasNext: false,
|
|
61
|
+
hasPrevious: false
|
|
62
|
+
};
|
|
63
|
+
}
|
|
64
|
+
function unwrapPaginatedResponse(response, fallback) {
|
|
65
|
+
if (Array.isArray(response)) {
|
|
66
|
+
return {
|
|
67
|
+
data: response,
|
|
68
|
+
metadata: {
|
|
69
|
+
pagination: normalizePagination(undefined, response.length)
|
|
70
|
+
}
|
|
71
|
+
};
|
|
72
|
+
}
|
|
73
|
+
if (!isRecord(response)) {
|
|
74
|
+
throw new Error(fallback);
|
|
75
|
+
}
|
|
76
|
+
const directData = response['data'];
|
|
77
|
+
if (Array.isArray(directData)) {
|
|
78
|
+
return {
|
|
79
|
+
data: directData,
|
|
80
|
+
metadata: {
|
|
81
|
+
pagination: normalizePagination(response['metadata'], directData.length)
|
|
82
|
+
}
|
|
83
|
+
};
|
|
84
|
+
}
|
|
85
|
+
if (isRecord(directData) && Array.isArray(directData['data'])) {
|
|
86
|
+
const nestedData = directData['data'];
|
|
87
|
+
return {
|
|
88
|
+
data: nestedData,
|
|
89
|
+
metadata: {
|
|
90
|
+
pagination: normalizePagination(directData['metadata'], nestedData.length)
|
|
91
|
+
}
|
|
92
|
+
};
|
|
93
|
+
}
|
|
94
|
+
throw new Error(fallback);
|
|
95
|
+
}
|
|
96
|
+
function unwrapArrayResponse(response, fallback) {
|
|
97
|
+
if (Array.isArray(response)) {
|
|
98
|
+
return response;
|
|
99
|
+
}
|
|
100
|
+
if (isRecord(response) && Array.isArray(response['data'])) {
|
|
101
|
+
return response['data'];
|
|
102
|
+
}
|
|
103
|
+
throw new Error(fallback);
|
|
104
|
+
}
|
|
105
|
+
function normalizeProjectSummary(value) {
|
|
106
|
+
if (!isRecord(value)) {
|
|
107
|
+
throw new Error('Project entry is not an object');
|
|
108
|
+
}
|
|
109
|
+
if (typeof value['id'] !== 'number' ||
|
|
110
|
+
typeof value['organizationId'] !== 'number' ||
|
|
111
|
+
typeof value['createdBy'] !== 'number' ||
|
|
112
|
+
typeof value['key'] !== 'string' ||
|
|
113
|
+
typeof value['name'] !== 'string' ||
|
|
114
|
+
(value['visibility'] !== "public" /* ProjectVisibility.Public */ &&
|
|
115
|
+
value['visibility'] !== "private" /* ProjectVisibility.Private */)) {
|
|
116
|
+
throw new Error('Project entry is missing required fields');
|
|
117
|
+
}
|
|
118
|
+
return {
|
|
119
|
+
id: value['id'],
|
|
120
|
+
organizationId: value['organizationId'],
|
|
121
|
+
createdBy: value['createdBy'],
|
|
122
|
+
key: value['key'],
|
|
123
|
+
name: value['name'],
|
|
124
|
+
visibility: value['visibility'],
|
|
125
|
+
isMember: typeof value['isMember'] === 'boolean' ? value['isMember'] : undefined,
|
|
126
|
+
createdAt: typeof value['createdAt'] === 'string'
|
|
127
|
+
? value['createdAt']
|
|
128
|
+
: new Date(String(value['createdAt'])).toISOString(),
|
|
129
|
+
updatedAt: typeof value['updatedAt'] === 'string'
|
|
130
|
+
? value['updatedAt']
|
|
131
|
+
: new Date(String(value['updatedAt'])).toISOString()
|
|
132
|
+
};
|
|
133
|
+
}
|
|
33
134
|
function createReximoClient(config) {
|
|
34
135
|
const apiClient = new generated_1.ReximoApiClient({
|
|
35
136
|
baseUrl: config.apiBaseUrl ?? ''
|
|
@@ -119,6 +220,167 @@ function createReximoClient(config) {
|
|
|
119
220
|
catch (error) {
|
|
120
221
|
throw new Error(extractApiErrorMessage(error, 'Logout request failed'));
|
|
121
222
|
}
|
|
223
|
+
},
|
|
224
|
+
async listIssues(input) {
|
|
225
|
+
try {
|
|
226
|
+
const response = await apiClient.listIssues({
|
|
227
|
+
...input,
|
|
228
|
+
tenantId: input.organizationId
|
|
229
|
+
});
|
|
230
|
+
return unwrapPaginatedResponse(response, 'Issue list response missing data array');
|
|
231
|
+
}
|
|
232
|
+
catch (error) {
|
|
233
|
+
throw new Error(extractApiErrorMessage(error, 'List issues request failed'));
|
|
234
|
+
}
|
|
235
|
+
},
|
|
236
|
+
async createIssue(input) {
|
|
237
|
+
try {
|
|
238
|
+
const response = await apiClient.createIssue(input.issue, {
|
|
239
|
+
accessToken: input.accessToken,
|
|
240
|
+
tenantId: input.organizationId
|
|
241
|
+
});
|
|
242
|
+
return unwrapResponseData(response, 'Create issue response missing data object');
|
|
243
|
+
}
|
|
244
|
+
catch (error) {
|
|
245
|
+
throw new Error(extractApiErrorMessage(error, 'Create issue request failed'));
|
|
246
|
+
}
|
|
247
|
+
},
|
|
248
|
+
async getIssue(input) {
|
|
249
|
+
try {
|
|
250
|
+
const response = await apiClient.getIssue(input.issueId, {
|
|
251
|
+
accessToken: input.accessToken,
|
|
252
|
+
tenantId: input.organizationId
|
|
253
|
+
});
|
|
254
|
+
return unwrapResponseData(response, 'Get issue response missing data object');
|
|
255
|
+
}
|
|
256
|
+
catch (error) {
|
|
257
|
+
throw new Error(extractApiErrorMessage(error, 'Get issue request failed'));
|
|
258
|
+
}
|
|
259
|
+
},
|
|
260
|
+
async updateIssue(input) {
|
|
261
|
+
try {
|
|
262
|
+
const response = await apiClient.updateIssue(input.issueId, input.issue, {
|
|
263
|
+
accessToken: input.accessToken,
|
|
264
|
+
tenantId: input.organizationId
|
|
265
|
+
});
|
|
266
|
+
return unwrapResponseData(response, 'Update issue response missing data object');
|
|
267
|
+
}
|
|
268
|
+
catch (error) {
|
|
269
|
+
throw new Error(extractApiErrorMessage(error, 'Update issue request failed'));
|
|
270
|
+
}
|
|
271
|
+
},
|
|
272
|
+
async deleteIssue(input) {
|
|
273
|
+
try {
|
|
274
|
+
await apiClient.deleteIssue(input.issueId, {
|
|
275
|
+
accessToken: input.accessToken,
|
|
276
|
+
tenantId: input.organizationId
|
|
277
|
+
});
|
|
278
|
+
}
|
|
279
|
+
catch (error) {
|
|
280
|
+
throw new Error(extractApiErrorMessage(error, 'Delete issue request failed'));
|
|
281
|
+
}
|
|
282
|
+
},
|
|
283
|
+
async createIssueComment(input) {
|
|
284
|
+
try {
|
|
285
|
+
const response = await apiClient.createIssueComment(input.issueId, input.comment, {
|
|
286
|
+
accessToken: input.accessToken,
|
|
287
|
+
tenantId: input.organizationId
|
|
288
|
+
});
|
|
289
|
+
return unwrapResponseData(response, 'Create issue comment response missing data object');
|
|
290
|
+
}
|
|
291
|
+
catch (error) {
|
|
292
|
+
throw new Error(extractApiErrorMessage(error, 'Create issue comment request failed'));
|
|
293
|
+
}
|
|
294
|
+
},
|
|
295
|
+
async createIssueRelation(input) {
|
|
296
|
+
try {
|
|
297
|
+
const response = await apiClient.createIssueRelation(input.issueId, input.relation, {
|
|
298
|
+
accessToken: input.accessToken,
|
|
299
|
+
tenantId: input.organizationId
|
|
300
|
+
});
|
|
301
|
+
return unwrapResponseData(response, 'Create issue relation response missing data object');
|
|
302
|
+
}
|
|
303
|
+
catch (error) {
|
|
304
|
+
throw new Error(extractApiErrorMessage(error, 'Create issue relation request failed'));
|
|
305
|
+
}
|
|
306
|
+
},
|
|
307
|
+
async listProjects(input) {
|
|
308
|
+
try {
|
|
309
|
+
const response = await apiClient.listProjects({
|
|
310
|
+
...input,
|
|
311
|
+
tenantId: input.organizationId
|
|
312
|
+
});
|
|
313
|
+
const unwrapped = unwrapPaginatedResponse(response, 'Project list response missing data array');
|
|
314
|
+
return {
|
|
315
|
+
data: unwrapped.data.map((project) => normalizeProjectSummary(project)),
|
|
316
|
+
metadata: unwrapped.metadata
|
|
317
|
+
};
|
|
318
|
+
}
|
|
319
|
+
catch (error) {
|
|
320
|
+
throw new Error(extractApiErrorMessage(error, 'List projects request failed'));
|
|
321
|
+
}
|
|
322
|
+
},
|
|
323
|
+
async listContent(input) {
|
|
324
|
+
try {
|
|
325
|
+
const { organizationId, ...options } = input;
|
|
326
|
+
const response = await apiClient.listContent({
|
|
327
|
+
...options,
|
|
328
|
+
tenantId: organizationId
|
|
329
|
+
});
|
|
330
|
+
return {
|
|
331
|
+
data: unwrapArrayResponse(response, 'Content list response missing data array')
|
|
332
|
+
};
|
|
333
|
+
}
|
|
334
|
+
catch (error) {
|
|
335
|
+
throw new Error(extractApiErrorMessage(error, 'List content request failed'));
|
|
336
|
+
}
|
|
337
|
+
},
|
|
338
|
+
async createContent(input) {
|
|
339
|
+
try {
|
|
340
|
+
const response = await apiClient.createContent(input.content, {
|
|
341
|
+
accessToken: input.accessToken,
|
|
342
|
+
tenantId: input.organizationId
|
|
343
|
+
});
|
|
344
|
+
return unwrapResponseData(response, 'Create content response missing data object');
|
|
345
|
+
}
|
|
346
|
+
catch (error) {
|
|
347
|
+
throw new Error(extractApiErrorMessage(error, 'Create content request failed'));
|
|
348
|
+
}
|
|
349
|
+
},
|
|
350
|
+
async getContent(input) {
|
|
351
|
+
try {
|
|
352
|
+
const response = await apiClient.getContent(input.contentId, {
|
|
353
|
+
accessToken: input.accessToken,
|
|
354
|
+
tenantId: input.organizationId
|
|
355
|
+
});
|
|
356
|
+
return unwrapResponseData(response, 'Get content response missing data object');
|
|
357
|
+
}
|
|
358
|
+
catch (error) {
|
|
359
|
+
throw new Error(extractApiErrorMessage(error, 'Get content request failed'));
|
|
360
|
+
}
|
|
361
|
+
},
|
|
362
|
+
async updateContent(input) {
|
|
363
|
+
try {
|
|
364
|
+
const response = await apiClient.updateContent(input.contentId, input.content, {
|
|
365
|
+
accessToken: input.accessToken,
|
|
366
|
+
tenantId: input.organizationId
|
|
367
|
+
});
|
|
368
|
+
return unwrapResponseData(response, 'Update content response missing data object');
|
|
369
|
+
}
|
|
370
|
+
catch (error) {
|
|
371
|
+
throw new Error(extractApiErrorMessage(error, 'Update content request failed'));
|
|
372
|
+
}
|
|
373
|
+
},
|
|
374
|
+
async deleteContent(input) {
|
|
375
|
+
try {
|
|
376
|
+
await apiClient.deleteContent(input.contentId, {
|
|
377
|
+
accessToken: input.accessToken,
|
|
378
|
+
tenantId: input.organizationId
|
|
379
|
+
});
|
|
380
|
+
}
|
|
381
|
+
catch (error) {
|
|
382
|
+
throw new Error(extractApiErrorMessage(error, 'Delete content request failed'));
|
|
383
|
+
}
|
|
122
384
|
}
|
|
123
385
|
};
|
|
124
386
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"reximo-client.js","sourceRoot":"","sources":["../../../../../packages/reximo-cli/src/client/reximo-client.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"reximo-client.js","sourceRoot":"","sources":["../../../../../packages/reximo-cli/src/client/reximo-client.ts"],"names":[],"mappings":"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"}
|