@runflow-ai/cli 0.2.0
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/CLI-DOCS.md +428 -0
- package/README.md +127 -0
- package/dist/commands/agents/agents.command.d.ts +13 -0
- package/dist/commands/agents/agents.command.js +508 -0
- package/dist/commands/agents/agents.command.js.map +1 -0
- package/dist/commands/connectors/connectors.command.d.ts +11 -0
- package/dist/commands/connectors/connectors.command.js +72 -0
- package/dist/commands/connectors/connectors.command.js.map +1 -0
- package/dist/commands/credentials/credentials.command.d.ts +11 -0
- package/dist/commands/credentials/credentials.command.js +118 -0
- package/dist/commands/credentials/credentials.command.js.map +1 -0
- package/dist/commands/datasources/datasources.command.d.ts +11 -0
- package/dist/commands/datasources/datasources.command.js +72 -0
- package/dist/commands/datasources/datasources.command.js.map +1 -0
- package/dist/commands/executions/executions.command.d.ts +11 -0
- package/dist/commands/executions/executions.command.js +72 -0
- package/dist/commands/executions/executions.command.js.map +1 -0
- package/dist/commands/health/health.command.d.ts +11 -0
- package/dist/commands/health/health.command.js +66 -0
- package/dist/commands/health/health.command.js.map +1 -0
- package/dist/commands/login/login.command.d.ts +12 -0
- package/dist/commands/login/login.command.js +127 -0
- package/dist/commands/login/login.command.js.map +1 -0
- package/dist/commands/prompts/prompts.command.d.ts +11 -0
- package/dist/commands/prompts/prompts.command.js +102 -0
- package/dist/commands/prompts/prompts.command.js.map +1 -0
- package/dist/commands/search-tools/search-tools.command.d.ts +11 -0
- package/dist/commands/search-tools/search-tools.command.js +89 -0
- package/dist/commands/search-tools/search-tools.command.js.map +1 -0
- package/dist/commands/secret/secret.command.d.ts +4 -0
- package/dist/commands/secret/secret.command.js +22 -0
- package/dist/commands/secret/secret.command.js.map +1 -0
- package/dist/commands/sessions/sessions.command.d.ts +11 -0
- package/dist/commands/sessions/sessions.command.js +97 -0
- package/dist/commands/sessions/sessions.command.js.map +1 -0
- package/dist/commands/traces/traces.command.d.ts +11 -0
- package/dist/commands/traces/traces.command.js +73 -0
- package/dist/commands/traces/traces.command.js.map +1 -0
- package/dist/commands/triggers/triggers.command.d.ts +11 -0
- package/dist/commands/triggers/triggers.command.js +72 -0
- package/dist/commands/triggers/triggers.command.js.map +1 -0
- package/dist/commands/users/users.command.d.ts +12 -0
- package/dist/commands/users/users.command.js +138 -0
- package/dist/commands/users/users.command.js.map +1 -0
- package/dist/common/api-client.d.ts +25 -0
- package/dist/common/api-client.js +97 -0
- package/dist/common/api-client.js.map +1 -0
- package/dist/common/banner.d.ts +1 -0
- package/dist/common/banner.js +9 -0
- package/dist/common/banner.js.map +1 -0
- package/dist/common/config.d.ts +27 -0
- package/dist/common/config.js +63 -0
- package/dist/common/config.js.map +1 -0
- package/dist/common/help.d.ts +2 -0
- package/dist/common/help.js +34 -0
- package/dist/common/help.js.map +1 -0
- package/dist/common/logger.d.ts +9 -0
- package/dist/common/logger.js +84 -0
- package/dist/common/logger.js.map +1 -0
- package/dist/common/ui.d.ts +7 -0
- package/dist/common/ui.js +20 -0
- package/dist/common/ui.js.map +1 -0
- package/dist/index.d.ts +2 -0
- package/dist/index.js +99 -0
- package/dist/index.js.map +1 -0
- package/package.json +64 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"prompts.command.js","sourceRoot":"","sources":["../../../src/commands/prompts/prompts.command.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import { CommandRunner } from 'nest-commander';
|
|
2
|
+
interface SearchToolsOptions {
|
|
3
|
+
apiKey?: string;
|
|
4
|
+
api?: string;
|
|
5
|
+
}
|
|
6
|
+
export declare class SearchToolsCommand extends CommandRunner {
|
|
7
|
+
run(inputs: string[], options: SearchToolsOptions): Promise<void>;
|
|
8
|
+
parseApiKey(val: string): string;
|
|
9
|
+
parseApi(val: string): string;
|
|
10
|
+
}
|
|
11
|
+
export {};
|
|
@@ -0,0 +1,89 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
|
|
3
|
+
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
4
|
+
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
|
5
|
+
else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
|
6
|
+
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
7
|
+
};
|
|
8
|
+
var __metadata = (this && this.__metadata) || function (k, v) {
|
|
9
|
+
if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
|
|
10
|
+
};
|
|
11
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
12
|
+
exports.SearchToolsCommand = void 0;
|
|
13
|
+
const nest_commander_1 = require("nest-commander");
|
|
14
|
+
const config_1 = require("../../common/config");
|
|
15
|
+
const ui_1 = require("../../common/ui");
|
|
16
|
+
const logger_1 = require("../../common/logger");
|
|
17
|
+
const api_client_1 = require("../../common/api-client");
|
|
18
|
+
let SearchToolsCommand = class SearchToolsCommand extends nest_commander_1.CommandRunner {
|
|
19
|
+
async run(inputs, options) {
|
|
20
|
+
const [action, store, query] = inputs;
|
|
21
|
+
if (!action || !['list', 'search'].includes(action)) {
|
|
22
|
+
(0, logger_1.logError)('Action required: list');
|
|
23
|
+
return;
|
|
24
|
+
}
|
|
25
|
+
try {
|
|
26
|
+
const apiClient = (0, api_client_1.createApiClient)(options.api);
|
|
27
|
+
switch (action) {
|
|
28
|
+
case 'list': {
|
|
29
|
+
(0, logger_1.logVerbose)('Fetching vector stores...');
|
|
30
|
+
const res = await apiClient.get('/search-tools');
|
|
31
|
+
const tools = res.data.data ?? res.data;
|
|
32
|
+
const selected = await (0, ui_1.selectItem)(tools, 'Select a vector store:');
|
|
33
|
+
(0, logger_1.logJson)([selected]);
|
|
34
|
+
break;
|
|
35
|
+
}
|
|
36
|
+
case 'search': {
|
|
37
|
+
if (!store || !query) {
|
|
38
|
+
(0, logger_1.logError)('Store and query parameters are required');
|
|
39
|
+
return;
|
|
40
|
+
}
|
|
41
|
+
(0, logger_1.logVerbose)(`Searching in ${store}...`);
|
|
42
|
+
const res = await apiClient.post(`/search-tools/${store}/search`, { query });
|
|
43
|
+
const results = res.data.data ?? res.data;
|
|
44
|
+
(0, logger_1.logJson)(results);
|
|
45
|
+
break;
|
|
46
|
+
}
|
|
47
|
+
}
|
|
48
|
+
}
|
|
49
|
+
catch (error) {
|
|
50
|
+
(0, logger_1.logError)(error.message || config_1.ERROR_MESSAGES.REQUEST_FAILED(error.toString()));
|
|
51
|
+
}
|
|
52
|
+
}
|
|
53
|
+
parseApiKey(val) {
|
|
54
|
+
return val;
|
|
55
|
+
}
|
|
56
|
+
parseApi(val) {
|
|
57
|
+
return val;
|
|
58
|
+
}
|
|
59
|
+
};
|
|
60
|
+
exports.SearchToolsCommand = SearchToolsCommand;
|
|
61
|
+
__decorate([
|
|
62
|
+
(0, nest_commander_1.Option)({
|
|
63
|
+
flags: '--api-key <key>',
|
|
64
|
+
description: 'API key override (uses saved config if not provided)',
|
|
65
|
+
}),
|
|
66
|
+
__metadata("design:type", Function),
|
|
67
|
+
__metadata("design:paramtypes", [String]),
|
|
68
|
+
__metadata("design:returntype", String)
|
|
69
|
+
], SearchToolsCommand.prototype, "parseApiKey", null);
|
|
70
|
+
__decorate([
|
|
71
|
+
(0, nest_commander_1.Option)({
|
|
72
|
+
flags: '--api <url>',
|
|
73
|
+
description: `API URL override (default: ${config_1.DEFAULT_API_URL})`,
|
|
74
|
+
}),
|
|
75
|
+
__metadata("design:type", Function),
|
|
76
|
+
__metadata("design:paramtypes", [String]),
|
|
77
|
+
__metadata("design:returntype", String)
|
|
78
|
+
], SearchToolsCommand.prototype, "parseApi", null);
|
|
79
|
+
exports.SearchToolsCommand = SearchToolsCommand = __decorate([
|
|
80
|
+
(0, nest_commander_1.Command)({
|
|
81
|
+
name: 'search-tools',
|
|
82
|
+
arguments: '<action> [vectorStore] [query]',
|
|
83
|
+
description: 'Manage vector stores.\n' +
|
|
84
|
+
'Actions:\n' +
|
|
85
|
+
' list List vector stores\n' +
|
|
86
|
+
' search <store> <query> Search in a vector store',
|
|
87
|
+
})
|
|
88
|
+
], SearchToolsCommand);
|
|
89
|
+
//# sourceMappingURL=search-tools.command.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"search-tools.command.js","sourceRoot":"","sources":["../../../src/commands/search-tools/search-tools.command.ts"],"names":[],"mappings":";;;;;;;;;;;;AACA,mDAAgE;AAChE,gDAAsE;AACtE,wCAA6C;AAC7C,gDAAyE;AACzE,wDAA0D;AAgBnD,IAAM,kBAAkB,GAAxB,MAAM,kBAAmB,SAAQ,8BAAa;IACnD,KAAK,CAAC,GAAG,CAAC,MAAgB,EAAE,OAA2B;QACrD,MAAM,CAAC,MAAM,EAAE,KAAK,EAAE,KAAK,CAAC,GAAG,MAAM,CAAC;QAEtC,IAAI,CAAC,MAAM,IAAI,CAAC,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE,CAAC;YACpD,IAAA,iBAAQ,EAAC,uBAAuB,CAAC,CAAC;YAClC,OAAO;QACT,CAAC;QAED,IAAI,CAAC;YACH,MAAM,SAAS,GAAG,IAAA,4BAAe,EAAC,OAAO,CAAC,GAAG,CAAC,CAAC;YAE/C,QAAQ,MAAM,EAAE,CAAC;gBACf,KAAK,MAAM,CAAC,CAAC,CAAC;oBACZ,IAAA,mBAAU,EAAC,2BAA2B,CAAC,CAAC;oBACxC,MAAM,GAAG,GAAG,MAAM,SAAS,CAAC,GAAG,CAAC,eAAe,CAAC,CAAC;oBACjD,MAAM,KAAK,GAAG,GAAG,CAAC,IAAI,CAAC,IAAI,IAAI,GAAG,CAAC,IAAI,CAAC;oBACxC,MAAM,QAAQ,GAAG,MAAM,IAAA,eAAU,EAC/B,KAAK,EACL,wBAAwB,CACzB,CAAC;oBACF,IAAA,gBAAO,EAAC,CAAC,QAAQ,CAAC,CAAC,CAAC;oBACpB,MAAM;gBACR,CAAC;gBACD,KAAK,QAAQ,CAAC,CAAC,CAAC;oBACd,IAAI,CAAC,KAAK,IAAI,CAAC,KAAK,EAAE,CAAC;wBACrB,IAAA,iBAAQ,EAAC,yCAAyC,CAAC,CAAC;wBACpD,OAAO;oBACT,CAAC;oBACD,IAAA,mBAAU,EAAC,gBAAgB,KAAK,KAAK,CAAC,CAAC;oBACvC,MAAM,GAAG,GAAG,MAAM,SAAS,CAAC,IAAI,CAC9B,iBAAiB,KAAK,SAAS,EAC/B,EAAE,KAAK,EAAE,CACV,CAAC;oBACF,MAAM,OAAO,GAAG,GAAG,CAAC,IAAI,CAAC,IAAI,IAAI,GAAG,CAAC,IAAI,CAAC;oBAC1C,IAAA,gBAAO,EAAC,OAAO,CAAC,CAAC;oBACjB,MAAM;gBACR,CAAC;YACH,CAAC;QACH,CAAC;QAAC,OAAO,KAAU,EAAE,CAAC;YACpB,IAAA,iBAAQ,EAAC,KAAK,CAAC,OAAO,IAAI,uBAAc,CAAC,cAAc,CAAC,KAAK,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC;QAC7E,CAAC;IACH,CAAC;IAMD,WAAW,CAAC,GAAW;QACrB,OAAO,GAAG,CAAC;IACb,CAAC;IAMD,QAAQ,CAAC,GAAW;QAClB,OAAO,GAAG,CAAC;IACb,CAAC;CACF,CAAA;AA3DY,gDAAkB;AAgD7B;IAJC,IAAA,uBAAM,EAAC;QACN,KAAK,EAAE,iBAAiB;QACxB,WAAW,EAAE,sDAAsD;KACpE,CAAC;;;;qDAGD;AAMD;IAJC,IAAA,uBAAM,EAAC;QACN,KAAK,EAAE,aAAa;QACpB,WAAW,EAAE,8BAA8B,wBAAe,GAAG;KAC9D,CAAC;;;;kDAGD;6BA1DU,kBAAkB;IAT9B,IAAA,wBAAO,EAAC;QACP,IAAI,EAAE,cAAc;QACpB,SAAS,EAAE,gCAAgC;QAC3C,WAAW,EACT,yBAAyB;YACzB,YAAY;YACZ,mDAAmD;YACnD,uDAAuD;KAC1D,CAAC;GACW,kBAAkB,CA2D9B"}
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
|
|
3
|
+
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
4
|
+
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
|
5
|
+
else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
|
6
|
+
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
7
|
+
};
|
|
8
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
9
|
+
exports.SecretCommand = void 0;
|
|
10
|
+
const nest_commander_1 = require("nest-commander");
|
|
11
|
+
const space_invaders_1 = require("@gati/space-invaders");
|
|
12
|
+
let SecretCommand = class SecretCommand extends nest_commander_1.CommandRunner {
|
|
13
|
+
async run() {
|
|
14
|
+
const game = new space_invaders_1.SpaceInvadersGame();
|
|
15
|
+
game.start();
|
|
16
|
+
}
|
|
17
|
+
};
|
|
18
|
+
exports.SecretCommand = SecretCommand;
|
|
19
|
+
exports.SecretCommand = SecretCommand = __decorate([
|
|
20
|
+
(0, nest_commander_1.Command)({ name: 'secret', description: 'Easter egg', options: { hidden: true } })
|
|
21
|
+
], SecretCommand);
|
|
22
|
+
//# sourceMappingURL=secret.command.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"secret.command.js","sourceRoot":"","sources":["../../../src/commands/secret/secret.command.ts"],"names":[],"mappings":";;;;;;;;;AAAA,mDAAwD;AACxD,yDAAyD;AAIlD,IAAM,aAAa,GAAnB,MAAM,aAAc,SAAQ,8BAAa;IAC9C,KAAK,CAAC,GAAG;QACP,MAAM,IAAI,GAAG,IAAI,kCAAiB,EAAE,CAAC;QACrC,IAAI,CAAC,KAAK,EAAE,CAAC;IACf,CAAC;CACF,CAAA;AALY,sCAAa;wBAAb,aAAa;IADzB,IAAA,wBAAO,EAAC,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,YAAY,EAAE,OAAO,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,EAAE,CAAC;GACrE,aAAa,CAKzB"}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import { CommandRunner } from 'nest-commander';
|
|
2
|
+
interface SessionsOptions {
|
|
3
|
+
apiKey?: string;
|
|
4
|
+
api?: string;
|
|
5
|
+
}
|
|
6
|
+
export declare class SessionsCommand extends CommandRunner {
|
|
7
|
+
run(inputs: string[], options: SessionsOptions): Promise<void>;
|
|
8
|
+
parseApiKey(val: string): string;
|
|
9
|
+
parseApi(val: string): string;
|
|
10
|
+
}
|
|
11
|
+
export {};
|
|
@@ -0,0 +1,97 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
|
|
3
|
+
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
4
|
+
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
|
5
|
+
else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
|
6
|
+
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
7
|
+
};
|
|
8
|
+
var __metadata = (this && this.__metadata) || function (k, v) {
|
|
9
|
+
if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
|
|
10
|
+
};
|
|
11
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
12
|
+
exports.SessionsCommand = void 0;
|
|
13
|
+
const nest_commander_1 = require("nest-commander");
|
|
14
|
+
const config_1 = require("../../common/config");
|
|
15
|
+
const logger_1 = require("../../common/logger");
|
|
16
|
+
const api_client_1 = require("../../common/api-client");
|
|
17
|
+
let SessionsCommand = class SessionsCommand extends nest_commander_1.CommandRunner {
|
|
18
|
+
async run(inputs, options) {
|
|
19
|
+
const [action, sessionId, data] = inputs;
|
|
20
|
+
if (!action || !['message', 'history', 'clear'].includes(action)) {
|
|
21
|
+
(0, logger_1.logError)('Action required: history');
|
|
22
|
+
return;
|
|
23
|
+
}
|
|
24
|
+
if (!sessionId) {
|
|
25
|
+
(0, logger_1.logError)(config_1.ERROR_MESSAGES.SESSION_ID_REQUIRED);
|
|
26
|
+
return;
|
|
27
|
+
}
|
|
28
|
+
try {
|
|
29
|
+
const apiClient = (0, api_client_1.createApiClient)(options.api);
|
|
30
|
+
switch (action) {
|
|
31
|
+
case 'message': {
|
|
32
|
+
if (!data) {
|
|
33
|
+
(0, logger_1.logError)(config_1.ERROR_MESSAGES.DATA_REQUIRED);
|
|
34
|
+
return;
|
|
35
|
+
}
|
|
36
|
+
(0, logger_1.logVerbose)(`Adding message to session ${sessionId}...`);
|
|
37
|
+
await apiClient.post(`/sessions/${sessionId}/messages`, JSON.parse(data));
|
|
38
|
+
(0, logger_1.logSuccess)('Message added');
|
|
39
|
+
break;
|
|
40
|
+
}
|
|
41
|
+
case 'history': {
|
|
42
|
+
(0, logger_1.logVerbose)(`Fetching session ${sessionId} history...`);
|
|
43
|
+
const res = await apiClient.get(`/sessions/${sessionId}/history`);
|
|
44
|
+
const hist = res.data.data ?? res.data;
|
|
45
|
+
(0, logger_1.logJson)(hist);
|
|
46
|
+
break;
|
|
47
|
+
}
|
|
48
|
+
case 'clear': {
|
|
49
|
+
(0, logger_1.logVerbose)(`Clearing session ${sessionId}...`);
|
|
50
|
+
await apiClient.delete(`/sessions/${sessionId}`);
|
|
51
|
+
(0, logger_1.logSuccess)('Session cleared');
|
|
52
|
+
break;
|
|
53
|
+
}
|
|
54
|
+
}
|
|
55
|
+
}
|
|
56
|
+
catch (error) {
|
|
57
|
+
(0, logger_1.logError)(error.message || config_1.ERROR_MESSAGES.REQUEST_FAILED(error.toString()));
|
|
58
|
+
}
|
|
59
|
+
}
|
|
60
|
+
parseApiKey(val) {
|
|
61
|
+
return val;
|
|
62
|
+
}
|
|
63
|
+
parseApi(val) {
|
|
64
|
+
return val;
|
|
65
|
+
}
|
|
66
|
+
};
|
|
67
|
+
exports.SessionsCommand = SessionsCommand;
|
|
68
|
+
__decorate([
|
|
69
|
+
(0, nest_commander_1.Option)({
|
|
70
|
+
flags: '--api-key <key>',
|
|
71
|
+
description: 'API key override (uses saved config if not provided)',
|
|
72
|
+
}),
|
|
73
|
+
__metadata("design:type", Function),
|
|
74
|
+
__metadata("design:paramtypes", [String]),
|
|
75
|
+
__metadata("design:returntype", String)
|
|
76
|
+
], SessionsCommand.prototype, "parseApiKey", null);
|
|
77
|
+
__decorate([
|
|
78
|
+
(0, nest_commander_1.Option)({
|
|
79
|
+
flags: '--api <url>',
|
|
80
|
+
description: `API URL override (default: ${config_1.DEFAULT_API_URL})`,
|
|
81
|
+
}),
|
|
82
|
+
__metadata("design:type", Function),
|
|
83
|
+
__metadata("design:paramtypes", [String]),
|
|
84
|
+
__metadata("design:returntype", String)
|
|
85
|
+
], SessionsCommand.prototype, "parseApi", null);
|
|
86
|
+
exports.SessionsCommand = SessionsCommand = __decorate([
|
|
87
|
+
(0, nest_commander_1.Command)({
|
|
88
|
+
name: 'sessions',
|
|
89
|
+
arguments: '<action> <sessionId> [data]',
|
|
90
|
+
description: 'Manage sessions.\n' +
|
|
91
|
+
'Actions:\n' +
|
|
92
|
+
' message <id> <json> Add message to session\n' +
|
|
93
|
+
' history <id> Get session history\n' +
|
|
94
|
+
' clear <id> Clear session',
|
|
95
|
+
})
|
|
96
|
+
], SessionsCommand);
|
|
97
|
+
//# sourceMappingURL=sessions.command.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"sessions.command.js","sourceRoot":"","sources":["../../../src/commands/sessions/sessions.command.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import { CommandRunner } from 'nest-commander';
|
|
2
|
+
interface TracesOptions {
|
|
3
|
+
apiKey?: string;
|
|
4
|
+
api?: string;
|
|
5
|
+
}
|
|
6
|
+
export declare class TracesCommand extends CommandRunner {
|
|
7
|
+
run(inputs: string[], options: TracesOptions): Promise<void>;
|
|
8
|
+
parseApiKey(val: string): string;
|
|
9
|
+
parseApi(val: string): string;
|
|
10
|
+
}
|
|
11
|
+
export {};
|
|
@@ -0,0 +1,73 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
|
|
3
|
+
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
4
|
+
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
|
5
|
+
else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
|
6
|
+
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
7
|
+
};
|
|
8
|
+
var __metadata = (this && this.__metadata) || function (k, v) {
|
|
9
|
+
if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
|
|
10
|
+
};
|
|
11
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
12
|
+
exports.TracesCommand = void 0;
|
|
13
|
+
const nest_commander_1 = require("nest-commander");
|
|
14
|
+
const config_1 = require("../../common/config");
|
|
15
|
+
const logger_1 = require("../../common/logger");
|
|
16
|
+
const api_client_1 = require("../../common/api-client");
|
|
17
|
+
let TracesCommand = class TracesCommand extends nest_commander_1.CommandRunner {
|
|
18
|
+
async run(inputs, options) {
|
|
19
|
+
const [action, data] = inputs;
|
|
20
|
+
if (action !== 'send') {
|
|
21
|
+
(0, logger_1.logError)('Action required: send');
|
|
22
|
+
return;
|
|
23
|
+
}
|
|
24
|
+
if (!data) {
|
|
25
|
+
(0, logger_1.logError)(config_1.ERROR_MESSAGES.DATA_REQUIRED);
|
|
26
|
+
return;
|
|
27
|
+
}
|
|
28
|
+
try {
|
|
29
|
+
const apiClient = (0, api_client_1.createApiClient)(options.api);
|
|
30
|
+
(0, logger_1.logVerbose)('Sending trace...');
|
|
31
|
+
await apiClient.post('/traces', JSON.parse(data));
|
|
32
|
+
(0, logger_1.logSuccess)('Trace sent');
|
|
33
|
+
}
|
|
34
|
+
catch (error) {
|
|
35
|
+
(0, logger_1.logError)(error.message || config_1.ERROR_MESSAGES.REQUEST_FAILED(error.toString()));
|
|
36
|
+
}
|
|
37
|
+
}
|
|
38
|
+
parseApiKey(val) {
|
|
39
|
+
return val;
|
|
40
|
+
}
|
|
41
|
+
parseApi(val) {
|
|
42
|
+
return val;
|
|
43
|
+
}
|
|
44
|
+
};
|
|
45
|
+
exports.TracesCommand = TracesCommand;
|
|
46
|
+
__decorate([
|
|
47
|
+
(0, nest_commander_1.Option)({
|
|
48
|
+
flags: '--api-key <key>',
|
|
49
|
+
description: 'API key override (uses saved config if not provided)',
|
|
50
|
+
}),
|
|
51
|
+
__metadata("design:type", Function),
|
|
52
|
+
__metadata("design:paramtypes", [String]),
|
|
53
|
+
__metadata("design:returntype", String)
|
|
54
|
+
], TracesCommand.prototype, "parseApiKey", null);
|
|
55
|
+
__decorate([
|
|
56
|
+
(0, nest_commander_1.Option)({
|
|
57
|
+
flags: '--api <url>',
|
|
58
|
+
description: `API URL override (default: ${config_1.DEFAULT_API_URL})`,
|
|
59
|
+
}),
|
|
60
|
+
__metadata("design:type", Function),
|
|
61
|
+
__metadata("design:paramtypes", [String]),
|
|
62
|
+
__metadata("design:returntype", String)
|
|
63
|
+
], TracesCommand.prototype, "parseApi", null);
|
|
64
|
+
exports.TracesCommand = TracesCommand = __decorate([
|
|
65
|
+
(0, nest_commander_1.Command)({
|
|
66
|
+
name: 'traces',
|
|
67
|
+
arguments: '<action> [data]',
|
|
68
|
+
description: 'Send trace data.\n' +
|
|
69
|
+
'Actions:\n' +
|
|
70
|
+
' send <json> Send trace data',
|
|
71
|
+
})
|
|
72
|
+
], TracesCommand);
|
|
73
|
+
//# sourceMappingURL=traces.command.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"traces.command.js","sourceRoot":"","sources":["../../../src/commands/traces/traces.command.ts"],"names":[],"mappings":";;;;;;;;;;;;AACA,mDAAgE;AAChE,gDAAsE;AACtE,gDAA4E;AAC5E,wDAA0D;AAenD,IAAM,aAAa,GAAnB,MAAM,aAAc,SAAQ,8BAAa;IAC9C,KAAK,CAAC,GAAG,CAAC,MAAgB,EAAE,OAAsB;QAChD,MAAM,CAAC,MAAM,EAAE,IAAI,CAAC,GAAG,MAAM,CAAC;QAE9B,IAAI,MAAM,KAAK,MAAM,EAAE,CAAC;YACtB,IAAA,iBAAQ,EAAC,uBAAuB,CAAC,CAAC;YAClC,OAAO;QACT,CAAC;QAED,IAAI,CAAC,IAAI,EAAE,CAAC;YACV,IAAA,iBAAQ,EAAC,uBAAc,CAAC,aAAa,CAAC,CAAC;YACvC,OAAO;QACT,CAAC;QAED,IAAI,CAAC;YACH,MAAM,SAAS,GAAG,IAAA,4BAAe,EAAC,OAAO,CAAC,GAAG,CAAC,CAAC;YAE/C,IAAA,mBAAU,EAAC,kBAAkB,CAAC,CAAC;YAC/B,MAAM,SAAS,CAAC,IAAI,CAAC,SAAS,EAAE,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC;YAClD,IAAA,mBAAU,EAAC,YAAY,CAAC,CAAC;QAC3B,CAAC;QAAC,OAAO,KAAU,EAAE,CAAC;YACpB,IAAA,iBAAQ,EAAC,KAAK,CAAC,OAAO,IAAI,uBAAc,CAAC,cAAc,CAAC,KAAK,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC;QAC7E,CAAC;IACH,CAAC;IAMD,WAAW,CAAC,GAAW;QACrB,OAAO,GAAG,CAAC;IACb,CAAC;IAMD,QAAQ,CAAC,GAAW;QAClB,OAAO,GAAG,CAAC;IACb,CAAC;CACF,CAAA;AAxCY,sCAAa;AA6BxB;IAJC,IAAA,uBAAM,EAAC;QACN,KAAK,EAAE,iBAAiB;QACxB,WAAW,EAAE,sDAAsD;KACpE,CAAC;;;;gDAGD;AAMD;IAJC,IAAA,uBAAM,EAAC;QACN,KAAK,EAAE,aAAa;QACpB,WAAW,EAAE,8BAA8B,wBAAe,GAAG;KAC9D,CAAC;;;;6CAGD;wBAvCU,aAAa;IARzB,IAAA,wBAAO,EAAC;QACP,IAAI,EAAE,QAAQ;QACd,SAAS,EAAE,iBAAiB;QAC5B,WAAW,EACT,oBAAoB;YACpB,YAAY;YACZ,yCAAyC;KAC5C,CAAC;GACW,aAAa,CAwCzB"}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import { CommandRunner } from 'nest-commander';
|
|
2
|
+
interface TriggersOptions {
|
|
3
|
+
apiKey?: string;
|
|
4
|
+
api?: string;
|
|
5
|
+
}
|
|
6
|
+
export declare class TriggersCommand extends CommandRunner {
|
|
7
|
+
run(inputs: string[], options: TriggersOptions): Promise<void>;
|
|
8
|
+
parseApiKey(val: string): string;
|
|
9
|
+
parseApi(val: string): string;
|
|
10
|
+
}
|
|
11
|
+
export {};
|
|
@@ -0,0 +1,72 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
|
|
3
|
+
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
4
|
+
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
|
5
|
+
else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
|
6
|
+
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
7
|
+
};
|
|
8
|
+
var __metadata = (this && this.__metadata) || function (k, v) {
|
|
9
|
+
if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
|
|
10
|
+
};
|
|
11
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
12
|
+
exports.TriggersCommand = void 0;
|
|
13
|
+
const nest_commander_1 = require("nest-commander");
|
|
14
|
+
const config_1 = require("../../common/config");
|
|
15
|
+
const ui_1 = require("../../common/ui");
|
|
16
|
+
const logger_1 = require("../../common/logger");
|
|
17
|
+
const api_client_1 = require("../../common/api-client");
|
|
18
|
+
let TriggersCommand = class TriggersCommand extends nest_commander_1.CommandRunner {
|
|
19
|
+
async run(inputs, options) {
|
|
20
|
+
const [action] = inputs;
|
|
21
|
+
if (action !== 'list') {
|
|
22
|
+
(0, logger_1.logError)('Action required: list');
|
|
23
|
+
return;
|
|
24
|
+
}
|
|
25
|
+
try {
|
|
26
|
+
const apiClient = (0, api_client_1.createApiClient)(options.api);
|
|
27
|
+
(0, logger_1.logVerbose)('Fetching triggers...');
|
|
28
|
+
const res = await apiClient.get('/triggers');
|
|
29
|
+
const trig = res.data.data ?? res.data;
|
|
30
|
+
const selected = await (0, ui_1.selectItem)(trig, 'Select a trigger:');
|
|
31
|
+
(0, logger_1.logJson)([selected]);
|
|
32
|
+
}
|
|
33
|
+
catch (error) {
|
|
34
|
+
(0, logger_1.logError)(error.message || config_1.ERROR_MESSAGES.REQUEST_FAILED(error.toString()));
|
|
35
|
+
}
|
|
36
|
+
}
|
|
37
|
+
parseApiKey(val) {
|
|
38
|
+
return val;
|
|
39
|
+
}
|
|
40
|
+
parseApi(val) {
|
|
41
|
+
return val;
|
|
42
|
+
}
|
|
43
|
+
};
|
|
44
|
+
exports.TriggersCommand = TriggersCommand;
|
|
45
|
+
__decorate([
|
|
46
|
+
(0, nest_commander_1.Option)({
|
|
47
|
+
flags: '--api-key <key>',
|
|
48
|
+
description: 'API key override (uses saved config if not provided)',
|
|
49
|
+
}),
|
|
50
|
+
__metadata("design:type", Function),
|
|
51
|
+
__metadata("design:paramtypes", [String]),
|
|
52
|
+
__metadata("design:returntype", String)
|
|
53
|
+
], TriggersCommand.prototype, "parseApiKey", null);
|
|
54
|
+
__decorate([
|
|
55
|
+
(0, nest_commander_1.Option)({
|
|
56
|
+
flags: '--api <url>',
|
|
57
|
+
description: `API URL override (default: ${config_1.DEFAULT_API_URL})`,
|
|
58
|
+
}),
|
|
59
|
+
__metadata("design:type", Function),
|
|
60
|
+
__metadata("design:paramtypes", [String]),
|
|
61
|
+
__metadata("design:returntype", String)
|
|
62
|
+
], TriggersCommand.prototype, "parseApi", null);
|
|
63
|
+
exports.TriggersCommand = TriggersCommand = __decorate([
|
|
64
|
+
(0, nest_commander_1.Command)({
|
|
65
|
+
name: 'triggers',
|
|
66
|
+
arguments: '<action>',
|
|
67
|
+
description: 'Manage triggers and webhooks.\n' +
|
|
68
|
+
'Actions:\n' +
|
|
69
|
+
' list List triggers and webhooks',
|
|
70
|
+
})
|
|
71
|
+
], TriggersCommand);
|
|
72
|
+
//# sourceMappingURL=triggers.command.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"triggers.command.js","sourceRoot":"","sources":["../../../src/commands/triggers/triggers.command.ts"],"names":[],"mappings":";;;;;;;;;;;;AACA,mDAAgE;AAChE,gDAAsE;AACtE,wCAA6C;AAC7C,gDAAyE;AACzE,wDAA0D;AAenD,IAAM,eAAe,GAArB,MAAM,eAAgB,SAAQ,8BAAa;IAChD,KAAK,CAAC,GAAG,CAAC,MAAgB,EAAE,OAAwB;QAClD,MAAM,CAAC,MAAM,CAAC,GAAG,MAAM,CAAC;QAExB,IAAI,MAAM,KAAK,MAAM,EAAE,CAAC;YACtB,IAAA,iBAAQ,EAAC,uBAAuB,CAAC,CAAC;YAClC,OAAO;QACT,CAAC;QAED,IAAI,CAAC;YACH,MAAM,SAAS,GAAG,IAAA,4BAAe,EAAC,OAAO,CAAC,GAAG,CAAC,CAAC;YAE/C,IAAA,mBAAU,EAAC,sBAAsB,CAAC,CAAC;YACnC,MAAM,GAAG,GAAG,MAAM,SAAS,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC;YAC7C,MAAM,IAAI,GAAG,GAAG,CAAC,IAAI,CAAC,IAAI,IAAI,GAAG,CAAC,IAAI,CAAC;YACvC,MAAM,QAAQ,GAAG,MAAM,IAAA,eAAU,EAAC,IAAI,EAAE,mBAAmB,CAAC,CAAC;YAC7D,IAAA,gBAAO,EAAC,CAAC,QAAQ,CAAC,CAAC,CAAC;QACtB,CAAC;QAAC,OAAO,KAAU,EAAE,CAAC;YACpB,IAAA,iBAAQ,EAAC,KAAK,CAAC,OAAO,IAAI,uBAAc,CAAC,cAAc,CAAC,KAAK,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC;QAC7E,CAAC;IACH,CAAC;IAMD,WAAW,CAAC,GAAW;QACrB,OAAO,GAAG,CAAC;IACb,CAAC;IAMD,QAAQ,CAAC,GAAW;QAClB,OAAO,GAAG,CAAC;IACb,CAAC;CACF,CAAA;AArCY,0CAAe;AA0B1B;IAJC,IAAA,uBAAM,EAAC;QACN,KAAK,EAAE,iBAAiB;QACxB,WAAW,EAAE,sDAAsD;KACpE,CAAC;;;;kDAGD;AAMD;IAJC,IAAA,uBAAM,EAAC;QACN,KAAK,EAAE,aAAa;QACpB,WAAW,EAAE,8BAA8B,wBAAe,GAAG;KAC9D,CAAC;;;;+CAGD;0BApCU,eAAe;IAR3B,IAAA,wBAAO,EAAC;QACP,IAAI,EAAE,UAAU;QAChB,SAAS,EAAE,UAAU;QACrB,WAAW,EACT,iCAAiC;YACjC,YAAY;YACZ,mDAAmD;KACtD,CAAC;GACW,eAAe,CAqC3B"}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import { CommandRunner } from 'nest-commander';
|
|
2
|
+
interface UsersOptions {
|
|
3
|
+
apiKey?: string;
|
|
4
|
+
api?: string;
|
|
5
|
+
}
|
|
6
|
+
export declare class UsersCommand extends CommandRunner {
|
|
7
|
+
run(inputs: string[], options: UsersOptions): Promise<void>;
|
|
8
|
+
parseApiKey(val: string): string;
|
|
9
|
+
parseApi(val: string): string;
|
|
10
|
+
private chooseUser;
|
|
11
|
+
}
|
|
12
|
+
export {};
|
|
@@ -0,0 +1,138 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
|
|
3
|
+
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
4
|
+
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
|
5
|
+
else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
|
6
|
+
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
7
|
+
};
|
|
8
|
+
var __metadata = (this && this.__metadata) || function (k, v) {
|
|
9
|
+
if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
|
|
10
|
+
};
|
|
11
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
12
|
+
exports.UsersCommand = void 0;
|
|
13
|
+
const nest_commander_1 = require("nest-commander");
|
|
14
|
+
const config_1 = require("../../common/config");
|
|
15
|
+
const ui_1 = require("../../common/ui");
|
|
16
|
+
const logger_1 = require("../../common/logger");
|
|
17
|
+
const api_client_1 = require("../../common/api-client");
|
|
18
|
+
let UsersCommand = class UsersCommand extends nest_commander_1.CommandRunner {
|
|
19
|
+
async run(inputs, options) {
|
|
20
|
+
const [action, data] = inputs;
|
|
21
|
+
const actions = ['list', 'get', 'create', 'update', 'delete'];
|
|
22
|
+
if (!action) {
|
|
23
|
+
(0, logger_1.log)('\nUsage: rf users <action> [data]\n');
|
|
24
|
+
(0, logger_1.log)('Actions:');
|
|
25
|
+
(0, logger_1.log)(' list List users');
|
|
26
|
+
(0, logger_1.log)(' get Display selected user');
|
|
27
|
+
(0, logger_1.log)(' create <json> Create user');
|
|
28
|
+
(0, logger_1.log)(' update <json> Update selected user');
|
|
29
|
+
(0, logger_1.log)(' delete Remove selected user\n');
|
|
30
|
+
(0, logger_1.log)('Options:');
|
|
31
|
+
(0, logger_1.log)(' --api-key <key> API key override');
|
|
32
|
+
(0, logger_1.log)(' --api <url> API URL override');
|
|
33
|
+
(0, logger_1.log)(' --help, -h Show this help\n');
|
|
34
|
+
return;
|
|
35
|
+
}
|
|
36
|
+
if (!actions.includes(action)) {
|
|
37
|
+
(0, logger_1.logError)(config_1.ERROR_MESSAGES.INVALID_ACTION(action, actions));
|
|
38
|
+
return;
|
|
39
|
+
}
|
|
40
|
+
try {
|
|
41
|
+
const apiClient = (0, api_client_1.createApiClient)(options.api);
|
|
42
|
+
switch (action) {
|
|
43
|
+
case 'list': {
|
|
44
|
+
(0, logger_1.logVerbose)('Fetching users...');
|
|
45
|
+
const res = await apiClient.get('/users');
|
|
46
|
+
const users = res.data.data ?? res.data;
|
|
47
|
+
const selected = await (0, ui_1.selectItem)(users, 'Select a user:');
|
|
48
|
+
(0, logger_1.logJson)([selected]);
|
|
49
|
+
break;
|
|
50
|
+
}
|
|
51
|
+
case 'get': {
|
|
52
|
+
const id = await this.chooseUser(apiClient);
|
|
53
|
+
(0, logger_1.logVerbose)(`Fetching user ${id}...`);
|
|
54
|
+
const res = await apiClient.get(`/users/${id}`);
|
|
55
|
+
(0, logger_1.logJson)([res.data]);
|
|
56
|
+
break;
|
|
57
|
+
}
|
|
58
|
+
case 'create': {
|
|
59
|
+
if (!data) {
|
|
60
|
+
(0, logger_1.logError)(config_1.ERROR_MESSAGES.DATA_REQUIRED);
|
|
61
|
+
return;
|
|
62
|
+
}
|
|
63
|
+
(0, logger_1.logVerbose)('Creating user...');
|
|
64
|
+
const res = await apiClient.post('/users', JSON.parse(data));
|
|
65
|
+
(0, logger_1.logJson)([res.data]);
|
|
66
|
+
break;
|
|
67
|
+
}
|
|
68
|
+
case 'update': {
|
|
69
|
+
if (!data) {
|
|
70
|
+
(0, logger_1.logError)(config_1.ERROR_MESSAGES.DATA_REQUIRED);
|
|
71
|
+
return;
|
|
72
|
+
}
|
|
73
|
+
const id = await this.chooseUser(apiClient);
|
|
74
|
+
(0, logger_1.logVerbose)(`Updating user ${id}...`);
|
|
75
|
+
const res = await apiClient.patch(`/users/${id}`, JSON.parse(data));
|
|
76
|
+
(0, logger_1.logJson)([res.data]);
|
|
77
|
+
break;
|
|
78
|
+
}
|
|
79
|
+
case 'delete': {
|
|
80
|
+
const id = await this.chooseUser(apiClient);
|
|
81
|
+
(0, logger_1.logVerbose)(`Removing user ${id}...`);
|
|
82
|
+
await apiClient.delete(`/users/${id}`);
|
|
83
|
+
(0, logger_1.logSuccess)('User removed');
|
|
84
|
+
break;
|
|
85
|
+
}
|
|
86
|
+
}
|
|
87
|
+
}
|
|
88
|
+
catch (error) {
|
|
89
|
+
(0, logger_1.logError)(error.message || config_1.ERROR_MESSAGES.REQUEST_FAILED(error.toString()));
|
|
90
|
+
}
|
|
91
|
+
}
|
|
92
|
+
parseApiKey(val) {
|
|
93
|
+
return val;
|
|
94
|
+
}
|
|
95
|
+
parseApi(val) {
|
|
96
|
+
return val;
|
|
97
|
+
}
|
|
98
|
+
async chooseUser(apiClient) {
|
|
99
|
+
const res = await apiClient.get('/users');
|
|
100
|
+
const users = res.data.data ?? res.data;
|
|
101
|
+
const selected = await (0, ui_1.selectItem)(users, 'Select a user:');
|
|
102
|
+
return selected.id;
|
|
103
|
+
}
|
|
104
|
+
};
|
|
105
|
+
exports.UsersCommand = UsersCommand;
|
|
106
|
+
__decorate([
|
|
107
|
+
(0, nest_commander_1.Option)({
|
|
108
|
+
flags: '--api-key <key>',
|
|
109
|
+
description: 'API key override (uses saved config if not provided)',
|
|
110
|
+
}),
|
|
111
|
+
__metadata("design:type", Function),
|
|
112
|
+
__metadata("design:paramtypes", [String]),
|
|
113
|
+
__metadata("design:returntype", String)
|
|
114
|
+
], UsersCommand.prototype, "parseApiKey", null);
|
|
115
|
+
__decorate([
|
|
116
|
+
(0, nest_commander_1.Option)({
|
|
117
|
+
flags: '--api <url>',
|
|
118
|
+
description: `API URL override (default: ${config_1.DEFAULT_API_URL})`,
|
|
119
|
+
}),
|
|
120
|
+
__metadata("design:type", Function),
|
|
121
|
+
__metadata("design:paramtypes", [String]),
|
|
122
|
+
__metadata("design:returntype", String)
|
|
123
|
+
], UsersCommand.prototype, "parseApi", null);
|
|
124
|
+
exports.UsersCommand = UsersCommand = __decorate([
|
|
125
|
+
(0, nest_commander_1.Command)({
|
|
126
|
+
name: 'users',
|
|
127
|
+
aliases: ['user'],
|
|
128
|
+
arguments: '<action> [data]',
|
|
129
|
+
description: 'Manage users.\n' +
|
|
130
|
+
'Actions:\n' +
|
|
131
|
+
' list List users\n' +
|
|
132
|
+
' get Display selected user\n' +
|
|
133
|
+
' create <json> Create user\n' +
|
|
134
|
+
' update <json> Update selected user\n' +
|
|
135
|
+
' delete Remove selected user',
|
|
136
|
+
})
|
|
137
|
+
], UsersCommand);
|
|
138
|
+
//# sourceMappingURL=users.command.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"users.command.js","sourceRoot":"","sources":["../../../src/commands/users/users.command.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
import { AxiosRequestConfig, AxiosResponse } from 'axios';
|
|
2
|
+
export interface ApiRequestConfig extends Omit<AxiosRequestConfig, 'headers'> {
|
|
3
|
+
apiOverride?: string;
|
|
4
|
+
skipTenantHeader?: boolean;
|
|
5
|
+
}
|
|
6
|
+
declare module 'axios' {
|
|
7
|
+
interface AxiosRequestConfig {
|
|
8
|
+
skipTenantHeader?: boolean;
|
|
9
|
+
}
|
|
10
|
+
}
|
|
11
|
+
export declare class ApiClient {
|
|
12
|
+
private instance;
|
|
13
|
+
private config;
|
|
14
|
+
private apiKey;
|
|
15
|
+
private apiUrl;
|
|
16
|
+
constructor(apiOverride?: string);
|
|
17
|
+
private withSdk;
|
|
18
|
+
get<T = any>(url: string, config?: ApiRequestConfig): Promise<AxiosResponse<T>>;
|
|
19
|
+
post<T = any>(url: string, data?: any, config?: ApiRequestConfig): Promise<AxiosResponse<T>>;
|
|
20
|
+
put<T = any>(url: string, data?: any, config?: ApiRequestConfig): Promise<AxiosResponse<T>>;
|
|
21
|
+
patch<T = any>(url: string, data?: any, config?: ApiRequestConfig): Promise<AxiosResponse<T>>;
|
|
22
|
+
delete<T = any>(url: string, config?: ApiRequestConfig): Promise<AxiosResponse<T>>;
|
|
23
|
+
}
|
|
24
|
+
export declare function createApiClient(apiOverride?: string): ApiClient;
|
|
25
|
+
export declare function apiRequest<T = any>(method: 'GET' | 'POST' | 'PUT' | 'PATCH' | 'DELETE', url: string, data?: any, config?: ApiRequestConfig): Promise<T>;
|