@codemieai/code 0.2.0 → 0.2.1
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 +17 -6
- package/dist/agents/plugins/claude/plugin/skills/codemie-analytics/SKILL.md +641 -0
- package/dist/agents/plugins/claude/plugin/skills/codemie-analytics/references/leaderboard-dashboard-report.md +225 -0
- package/dist/agents/plugins/claude/plugin/skills/codemie-analytics/references/people-spending-dashboard-report.md +746 -0
- package/dist/agents/plugins/claude/plugin/skills/codemie-analytics/references/people-spending-dashboard-template.html +3270 -0
- package/dist/agents/plugins/claude/plugin/skills/codemie-analytics/scripts/analytics-cli.js +893 -0
- package/dist/agents/plugins/claude/plugin/skills/codemie-analytics/scripts/inspect-schema.js +211 -0
- package/dist/agents/plugins/claude/plugin/skills/codemie-html-report/README.md +39 -0
- package/dist/agents/plugins/claude/plugin/skills/codemie-html-report/SKILL.md +117 -26
- package/dist/agents/plugins/claude/plugin/skills/codemie-html-report/scripts/inject-css.js +40 -0
- package/dist/agents/plugins/claude/plugin/skills/codemie-html-report/scripts/inject-data.js +68 -0
- package/dist/agents/plugins/claude/plugin/skills/codemie-html-report/style-guide/css/bundle.css +1 -0
- package/dist/agents/plugins/claude/plugin/skills/codemie-sdk/SKILL.md +240 -0
- package/dist/agents/plugins/claude/plugin/skills/codemie-sdk/examples/assistants.md +256 -0
- package/dist/agents/plugins/claude/plugin/skills/codemie-sdk/examples/categories.md +101 -0
- package/dist/agents/plugins/claude/plugin/skills/codemie-sdk/examples/datasources.md +401 -0
- package/dist/agents/plugins/claude/plugin/skills/codemie-sdk/examples/integrations.md +242 -0
- package/dist/agents/plugins/claude/plugin/skills/codemie-sdk/examples/skills.md +191 -0
- package/dist/agents/plugins/claude/plugin/skills/codemie-sdk/examples/users.md +38 -0
- package/dist/agents/plugins/claude/plugin/skills/codemie-sdk/examples/workflows.md +151 -0
- package/dist/cli/commands/profile/display.d.ts.map +1 -1
- package/dist/cli/commands/profile/display.js +1 -0
- package/dist/cli/commands/profile/display.js.map +1 -1
- package/dist/cli/commands/proxy/connectors/desktop.d.ts.map +1 -1
- package/dist/cli/commands/proxy/connectors/desktop.js +20 -10
- package/dist/cli/commands/proxy/connectors/desktop.js.map +1 -1
- package/dist/cli/commands/sdk/assistants.d.ts +3 -0
- package/dist/cli/commands/sdk/assistants.d.ts.map +1 -0
- package/dist/cli/commands/sdk/assistants.js +211 -0
- package/dist/cli/commands/sdk/assistants.js.map +1 -0
- package/dist/cli/commands/sdk/categories.d.ts +3 -0
- package/dist/cli/commands/sdk/categories.d.ts.map +1 -0
- package/dist/cli/commands/sdk/categories.js +186 -0
- package/dist/cli/commands/sdk/categories.js.map +1 -0
- package/dist/cli/commands/sdk/datasources.d.ts +3 -0
- package/dist/cli/commands/sdk/datasources.d.ts.map +1 -0
- package/dist/cli/commands/sdk/datasources.js +276 -0
- package/dist/cli/commands/sdk/datasources.js.map +1 -0
- package/dist/cli/commands/sdk/index.d.ts +3 -0
- package/dist/cli/commands/sdk/index.d.ts.map +1 -0
- package/dist/cli/commands/sdk/index.js +23 -0
- package/dist/cli/commands/sdk/index.js.map +1 -0
- package/dist/cli/commands/sdk/integrations.d.ts +3 -0
- package/dist/cli/commands/sdk/integrations.d.ts.map +1 -0
- package/dist/cli/commands/sdk/integrations.js +220 -0
- package/dist/cli/commands/sdk/integrations.js.map +1 -0
- package/dist/cli/commands/sdk/llm.d.ts +3 -0
- package/dist/cli/commands/sdk/llm.d.ts.map +1 -0
- package/dist/cli/commands/sdk/llm.js +48 -0
- package/dist/cli/commands/sdk/llm.js.map +1 -0
- package/dist/cli/commands/sdk/services/assistants.d.ts +13 -0
- package/dist/cli/commands/sdk/services/assistants.d.ts.map +1 -0
- package/dist/cli/commands/sdk/services/assistants.js +60 -0
- package/dist/cli/commands/sdk/services/assistants.js.map +1 -0
- package/dist/cli/commands/sdk/services/categories.d.ts +8 -0
- package/dist/cli/commands/sdk/services/categories.d.ts.map +1 -0
- package/dist/cli/commands/sdk/services/categories.js +19 -0
- package/dist/cli/commands/sdk/services/categories.js.map +1 -0
- package/dist/cli/commands/sdk/services/datasources.d.ts +33 -0
- package/dist/cli/commands/sdk/services/datasources.d.ts.map +1 -0
- package/dist/cli/commands/sdk/services/datasources.js +268 -0
- package/dist/cli/commands/sdk/services/datasources.js.map +1 -0
- package/dist/cli/commands/sdk/services/index.d.ts +6 -0
- package/dist/cli/commands/sdk/services/index.d.ts.map +1 -0
- package/dist/cli/commands/sdk/services/index.js +6 -0
- package/dist/cli/commands/sdk/services/index.js.map +1 -0
- package/dist/cli/commands/sdk/services/integrations.d.ts +27 -0
- package/dist/cli/commands/sdk/services/integrations.d.ts.map +1 -0
- package/dist/cli/commands/sdk/services/integrations.js +59 -0
- package/dist/cli/commands/sdk/services/integrations.js.map +1 -0
- package/dist/cli/commands/sdk/services/llm.d.ts +4 -0
- package/dist/cli/commands/sdk/services/llm.d.ts.map +1 -0
- package/dist/cli/commands/sdk/services/llm.js +7 -0
- package/dist/cli/commands/sdk/services/llm.js.map +1 -0
- package/dist/cli/commands/sdk/services/skills.d.ts +23 -0
- package/dist/cli/commands/sdk/services/skills.d.ts.map +1 -0
- package/dist/cli/commands/sdk/services/skills.js +69 -0
- package/dist/cli/commands/sdk/services/skills.js.map +1 -0
- package/dist/cli/commands/sdk/services/users.d.ts +4 -0
- package/dist/cli/commands/sdk/services/users.d.ts.map +1 -0
- package/dist/cli/commands/sdk/services/users.js +7 -0
- package/dist/cli/commands/sdk/services/users.js.map +1 -0
- package/dist/cli/commands/sdk/services/workflows.d.ts +7 -0
- package/dist/cli/commands/sdk/services/workflows.d.ts.map +1 -0
- package/dist/cli/commands/sdk/services/workflows.js +34 -0
- package/dist/cli/commands/sdk/services/workflows.js.map +1 -0
- package/dist/cli/commands/sdk/skills.d.ts +3 -0
- package/dist/cli/commands/sdk/skills.d.ts.map +1 -0
- package/dist/cli/commands/sdk/skills.js +492 -0
- package/dist/cli/commands/sdk/skills.js.map +1 -0
- package/dist/cli/commands/sdk/users.d.ts +3 -0
- package/dist/cli/commands/sdk/users.d.ts.map +1 -0
- package/dist/cli/commands/sdk/users.js +81 -0
- package/dist/cli/commands/sdk/users.js.map +1 -0
- package/dist/cli/commands/sdk/utils/cli-utils.d.ts +35 -0
- package/dist/cli/commands/sdk/utils/cli-utils.d.ts.map +1 -0
- package/dist/cli/commands/sdk/utils/cli-utils.js +110 -0
- package/dist/cli/commands/sdk/utils/cli-utils.js.map +1 -0
- package/dist/cli/commands/sdk/utils/datasource-types.d.ts +9 -0
- package/dist/cli/commands/sdk/utils/datasource-types.d.ts.map +1 -0
- package/dist/cli/commands/sdk/utils/datasource-types.js +61 -0
- package/dist/cli/commands/sdk/utils/datasource-types.js.map +1 -0
- package/dist/cli/commands/sdk/utils/file-utils.d.ts +8 -0
- package/dist/cli/commands/sdk/utils/file-utils.d.ts.map +1 -0
- package/dist/cli/commands/sdk/utils/file-utils.js +21 -0
- package/dist/cli/commands/sdk/utils/file-utils.js.map +1 -0
- package/dist/cli/commands/sdk/utils/render.d.ts +82 -0
- package/dist/cli/commands/sdk/utils/render.d.ts.map +1 -0
- package/dist/cli/commands/sdk/utils/render.js +149 -0
- package/dist/cli/commands/sdk/utils/render.js.map +1 -0
- package/dist/cli/commands/sdk/workflows.d.ts +3 -0
- package/dist/cli/commands/sdk/workflows.d.ts.map +1 -0
- package/dist/cli/commands/sdk/workflows.js +170 -0
- package/dist/cli/commands/sdk/workflows.js.map +1 -0
- package/dist/cli/index.js +2 -0
- package/dist/cli/index.js.map +1 -1
- package/package.json +1 -1
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"skills.js","sourceRoot":"","sources":["../../../../src/cli/commands/sdk/skills.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"users.d.ts","sourceRoot":"","sources":["../../../../src/cli/commands/sdk/users.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAOpC,wBAAgB,qBAAqB,IAAI,OAAO,CAsF/C"}
|
|
@@ -0,0 +1,81 @@
|
|
|
1
|
+
import { Command } from "commander";
|
|
2
|
+
import chalk from "chalk";
|
|
3
|
+
import ora from "ora";
|
|
4
|
+
import { getUserProfile, getUserData } from "./services/users.js";
|
|
5
|
+
import { getSdkClient, outputJson, handleSdkError } from "./utils/cli-utils.js";
|
|
6
|
+
import { printDetail, optional } from "./utils/render.js";
|
|
7
|
+
export function createUsersSubcommand() {
|
|
8
|
+
const cmd = new Command("users").description("Manage CodeMie user information");
|
|
9
|
+
cmd
|
|
10
|
+
.command("me")
|
|
11
|
+
.description("Get current user profile")
|
|
12
|
+
.option("--json", "Output in JSON format")
|
|
13
|
+
.action(async (opts) => {
|
|
14
|
+
const client = await getSdkClient();
|
|
15
|
+
const spinner = ora("Fetching user profile...").start();
|
|
16
|
+
try {
|
|
17
|
+
const user = await getUserProfile(client);
|
|
18
|
+
spinner.stop();
|
|
19
|
+
if (opts.json) {
|
|
20
|
+
outputJson(user);
|
|
21
|
+
return;
|
|
22
|
+
}
|
|
23
|
+
const rows = [
|
|
24
|
+
{ label: "ID", value: chalk.cyan(user.user_id) },
|
|
25
|
+
{ label: "Username", value: optional(user.username) },
|
|
26
|
+
{ label: "Name", value: optional(user.name) },
|
|
27
|
+
{ label: "Email", value: optional(user.email) },
|
|
28
|
+
{
|
|
29
|
+
label: "Admin",
|
|
30
|
+
value: user.is_admin ? chalk.green("yes") : chalk.dim("no"),
|
|
31
|
+
},
|
|
32
|
+
{
|
|
33
|
+
label: "Projects",
|
|
34
|
+
value: user.applications?.length > 0
|
|
35
|
+
? user.applications.join(", ")
|
|
36
|
+
: chalk.dim("—"),
|
|
37
|
+
},
|
|
38
|
+
{
|
|
39
|
+
label: "Admin Projects",
|
|
40
|
+
value: user.applications_admin?.length > 0
|
|
41
|
+
? user.applications_admin.join(", ")
|
|
42
|
+
: chalk.dim("—"),
|
|
43
|
+
},
|
|
44
|
+
];
|
|
45
|
+
printDetail(rows);
|
|
46
|
+
}
|
|
47
|
+
catch (error) {
|
|
48
|
+
spinner.stop();
|
|
49
|
+
handleSdkError(error, "get user profile");
|
|
50
|
+
}
|
|
51
|
+
});
|
|
52
|
+
cmd
|
|
53
|
+
.command("data")
|
|
54
|
+
.description("Get current user data and preferences")
|
|
55
|
+
.option("--json", "Output in JSON format")
|
|
56
|
+
.action(async (opts) => {
|
|
57
|
+
const client = await getSdkClient();
|
|
58
|
+
const spinner = ora("Fetching user data...").start();
|
|
59
|
+
try {
|
|
60
|
+
const data = await getUserData(client);
|
|
61
|
+
spinner.stop();
|
|
62
|
+
if (opts.json) {
|
|
63
|
+
outputJson(data);
|
|
64
|
+
return;
|
|
65
|
+
}
|
|
66
|
+
const rows = [
|
|
67
|
+
{ label: "ID", value: optional(data.id) },
|
|
68
|
+
{ label: "User ID", value: optional(data.user_id) },
|
|
69
|
+
{ label: "Created", value: optional(data.date) },
|
|
70
|
+
{ label: "Updated", value: optional(data.update_date) },
|
|
71
|
+
];
|
|
72
|
+
printDetail(rows);
|
|
73
|
+
}
|
|
74
|
+
catch (error) {
|
|
75
|
+
spinner.stop();
|
|
76
|
+
handleSdkError(error, "get user data");
|
|
77
|
+
}
|
|
78
|
+
});
|
|
79
|
+
return cmd;
|
|
80
|
+
}
|
|
81
|
+
//# sourceMappingURL=users.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"users.js","sourceRoot":"","sources":["../../../../src/cli/commands/sdk/users.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
import type { CodeMieClient } from "codemie-sdk";
|
|
2
|
+
/**
|
|
3
|
+
* Get an authenticated CodeMie SDK client
|
|
4
|
+
*/
|
|
5
|
+
export declare function getSdkClient(): Promise<CodeMieClient>;
|
|
6
|
+
/**
|
|
7
|
+
* Parse --data flag value: inline JSON string only
|
|
8
|
+
*/
|
|
9
|
+
export declare function parseDataInput(dataFlag: string | undefined): Promise<unknown>;
|
|
10
|
+
/**
|
|
11
|
+
* Parse --json flag value: path to JSON file
|
|
12
|
+
*/
|
|
13
|
+
export declare function parseJsonFileInput(jsonFlag: string | undefined): Promise<unknown>;
|
|
14
|
+
/**
|
|
15
|
+
* Parse data from either --data (inline JSON string) or --json (file path)
|
|
16
|
+
* They are mutually exclusive
|
|
17
|
+
*/
|
|
18
|
+
export declare function parseDataOrJsonFile(dataFlag: string | undefined, jsonFlag: string | undefined): Promise<unknown>;
|
|
19
|
+
/**
|
|
20
|
+
* Output data as formatted JSON
|
|
21
|
+
*/
|
|
22
|
+
export declare function outputJson(data: unknown): void;
|
|
23
|
+
/**
|
|
24
|
+
* Handle API errors with user-friendly messages and exit
|
|
25
|
+
*/
|
|
26
|
+
export declare function handleSdkError(error: unknown, operation: string): never;
|
|
27
|
+
/**
|
|
28
|
+
* Read a single string property safely from an unknown API response
|
|
29
|
+
*/
|
|
30
|
+
export declare function getResponseMessage(response: unknown): string;
|
|
31
|
+
/**
|
|
32
|
+
* Parse --config flag value: path to a YAML file
|
|
33
|
+
*/
|
|
34
|
+
export declare function parseConfigInput(configFlag: string | undefined): Promise<string>;
|
|
35
|
+
//# sourceMappingURL=cli-utils.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"cli-utils.d.ts","sourceRoot":"","sources":["../../../../../src/cli/commands/sdk/utils/cli-utils.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AASjD;;GAEG;AACH,wBAAsB,YAAY,IAAI,OAAO,CAAC,aAAa,CAAC,CAG3D;AAED;;GAEG;AACH,wBAAsB,cAAc,CAClC,QAAQ,EAAE,MAAM,GAAG,SAAS,GAC3B,OAAO,CAAC,OAAO,CAAC,CAUlB;AAED;;GAEG;AACH,wBAAsB,kBAAkB,CACtC,QAAQ,EAAE,MAAM,GAAG,SAAS,GAC3B,OAAO,CAAC,OAAO,CAAC,CAOlB;AAED;;;GAGG;AACH,wBAAsB,mBAAmB,CACvC,QAAQ,EAAE,MAAM,GAAG,SAAS,EAC5B,QAAQ,EAAE,MAAM,GAAG,SAAS,GAC3B,OAAO,CAAC,OAAO,CAAC,CAkBlB;AAED;;GAEG;AACH,wBAAgB,UAAU,CAAC,IAAI,EAAE,OAAO,GAAG,IAAI,CAE9C;AAED;;GAEG;AACH,wBAAgB,cAAc,CAAC,KAAK,EAAE,OAAO,EAAE,SAAS,EAAE,MAAM,GAAG,KAAK,CA+BvE;AAED;;GAEG;AACH,wBAAgB,kBAAkB,CAAC,QAAQ,EAAE,OAAO,GAAG,MAAM,CAK5D;AAED;;GAEG;AACH,wBAAsB,gBAAgB,CACpC,UAAU,EAAE,MAAM,GAAG,SAAS,GAC7B,OAAO,CAAC,MAAM,CAAC,CASjB"}
|
|
@@ -0,0 +1,110 @@
|
|
|
1
|
+
import { readFile } from "node:fs/promises";
|
|
2
|
+
import chalk from "chalk";
|
|
3
|
+
import { ApiError } from "codemie-sdk";
|
|
4
|
+
import { ConfigLoader } from "../../../../utils/config.js";
|
|
5
|
+
import { getAuthenticatedClient } from "../../../../utils/auth.js";
|
|
6
|
+
import { ConfigurationError } from "../../../../utils/errors.js";
|
|
7
|
+
import { logger } from "../../../../utils/logger.js";
|
|
8
|
+
import { sanitizeLogArgs } from "../../../../utils/security.js";
|
|
9
|
+
import z, { ZodError } from "zod";
|
|
10
|
+
/**
|
|
11
|
+
* Get an authenticated CodeMie SDK client
|
|
12
|
+
*/
|
|
13
|
+
export async function getSdkClient() {
|
|
14
|
+
const config = await ConfigLoader.load();
|
|
15
|
+
return getAuthenticatedClient(config);
|
|
16
|
+
}
|
|
17
|
+
/**
|
|
18
|
+
* Parse --data flag value: inline JSON string only
|
|
19
|
+
*/
|
|
20
|
+
export async function parseDataInput(dataFlag) {
|
|
21
|
+
if (!dataFlag) {
|
|
22
|
+
throw new ConfigurationError('No data provided. Use --data \'{"key":"value"}\'');
|
|
23
|
+
}
|
|
24
|
+
try {
|
|
25
|
+
return JSON.parse(dataFlag);
|
|
26
|
+
}
|
|
27
|
+
catch {
|
|
28
|
+
throw new ConfigurationError(`Invalid JSON passed to --data. Check syntax near the beginning of the string.`);
|
|
29
|
+
}
|
|
30
|
+
}
|
|
31
|
+
/**
|
|
32
|
+
* Parse --json flag value: path to JSON file
|
|
33
|
+
*/
|
|
34
|
+
export async function parseJsonFileInput(jsonFlag) {
|
|
35
|
+
if (!jsonFlag) {
|
|
36
|
+
throw new ConfigurationError("No JSON file provided. Use --json path/to/file.json");
|
|
37
|
+
}
|
|
38
|
+
const content = await readFile(jsonFlag, "utf-8");
|
|
39
|
+
return JSON.parse(content);
|
|
40
|
+
}
|
|
41
|
+
/**
|
|
42
|
+
* Parse data from either --data (inline JSON string) or --json (file path)
|
|
43
|
+
* They are mutually exclusive
|
|
44
|
+
*/
|
|
45
|
+
export async function parseDataOrJsonFile(dataFlag, jsonFlag) {
|
|
46
|
+
if (dataFlag && jsonFlag) {
|
|
47
|
+
throw new ConfigurationError("Cannot use both --data and --json. Use --data for inline JSON string or --json for JSON file path.");
|
|
48
|
+
}
|
|
49
|
+
if (!dataFlag && !jsonFlag) {
|
|
50
|
+
throw new ConfigurationError('Either --data or --json is required. Use --data \'{"key":"value"}\' or --json path/to/file.json');
|
|
51
|
+
}
|
|
52
|
+
if (dataFlag) {
|
|
53
|
+
return parseDataInput(dataFlag);
|
|
54
|
+
}
|
|
55
|
+
return parseJsonFileInput(jsonFlag);
|
|
56
|
+
}
|
|
57
|
+
/**
|
|
58
|
+
* Output data as formatted JSON
|
|
59
|
+
*/
|
|
60
|
+
export function outputJson(data) {
|
|
61
|
+
console.log(JSON.stringify(data, null, 2));
|
|
62
|
+
}
|
|
63
|
+
/**
|
|
64
|
+
* Handle API errors with user-friendly messages and exit
|
|
65
|
+
*/
|
|
66
|
+
export function handleSdkError(error, operation) {
|
|
67
|
+
const msg = error instanceof Error ? error.message : String(error);
|
|
68
|
+
logger.error("SDK operation failed", ...sanitizeLogArgs({ operation, error: msg }));
|
|
69
|
+
if (error instanceof ApiError) {
|
|
70
|
+
const status = error.status;
|
|
71
|
+
if (status === 401 || status === 403) {
|
|
72
|
+
console.error(chalk.red(`❌ Authorization error: You do not have permission to ${operation}.`));
|
|
73
|
+
console.error(chalk.dim(' Run "codemie setup" to re-authenticate if your session expired.'));
|
|
74
|
+
}
|
|
75
|
+
else if (status === 404) {
|
|
76
|
+
console.error(chalk.red(`❌ Not found: The requested resource does not exist.`));
|
|
77
|
+
}
|
|
78
|
+
else {
|
|
79
|
+
console.error(chalk.red(`❌ API error: ${msg}`));
|
|
80
|
+
}
|
|
81
|
+
}
|
|
82
|
+
else if (error instanceof ZodError) {
|
|
83
|
+
console.error(chalk.red(`❌ Operation failed:`));
|
|
84
|
+
console.error(chalk.red(z.prettifyError(error)));
|
|
85
|
+
}
|
|
86
|
+
else {
|
|
87
|
+
console.error(chalk.red(`❌ ${msg}`));
|
|
88
|
+
}
|
|
89
|
+
process.exit(1);
|
|
90
|
+
}
|
|
91
|
+
/**
|
|
92
|
+
* Read a single string property safely from an unknown API response
|
|
93
|
+
*/
|
|
94
|
+
export function getResponseMessage(response) {
|
|
95
|
+
if (response && typeof response === "object" && "message" in response) {
|
|
96
|
+
return String(response.message);
|
|
97
|
+
}
|
|
98
|
+
return "Done.";
|
|
99
|
+
}
|
|
100
|
+
/**
|
|
101
|
+
* Parse --config flag value: path to a YAML file
|
|
102
|
+
*/
|
|
103
|
+
export async function parseConfigInput(configFlag) {
|
|
104
|
+
if (!configFlag) {
|
|
105
|
+
throw new ConfigurationError("No config provided. Use --config path/to/file.yaml");
|
|
106
|
+
}
|
|
107
|
+
const content = await readFile(configFlag, "utf-8");
|
|
108
|
+
return content;
|
|
109
|
+
}
|
|
110
|
+
//# sourceMappingURL=cli-utils.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"cli-utils.js","sourceRoot":"","sources":["../../../../../src/cli/commands/sdk/utils/cli-utils.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"datasource-types.d.ts","sourceRoot":"","sources":["../../../../../src/cli/commands/sdk/utils/datasource-types.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,oBAAoB;IACnC,OAAO,EAAE,MAAM,CAAC;IAChB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,MAAM,CAAC;IACpB,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AAED,eAAO,MAAM,gBAAgB,EAAE,oBAAoB,EA4DlD,CAAC"}
|
|
@@ -0,0 +1,61 @@
|
|
|
1
|
+
export const DATASOURCE_TYPES = [
|
|
2
|
+
{
|
|
3
|
+
command: "confluence",
|
|
4
|
+
type: "knowledge_base_confluence",
|
|
5
|
+
description: "Confluence datasource",
|
|
6
|
+
example: '{"name":"Wiki","project_name":"Docs","cql":"space=TEAM","description":"Company wiki","shared_with_project":true}',
|
|
7
|
+
},
|
|
8
|
+
{
|
|
9
|
+
command: "jira",
|
|
10
|
+
type: "knowledge_base_jira",
|
|
11
|
+
description: "Jira datasource",
|
|
12
|
+
},
|
|
13
|
+
{
|
|
14
|
+
command: "file",
|
|
15
|
+
type: "knowledge_base_file",
|
|
16
|
+
description: "File datasource (use --file flags for local files)",
|
|
17
|
+
},
|
|
18
|
+
{
|
|
19
|
+
command: "code",
|
|
20
|
+
type: "code",
|
|
21
|
+
description: "Code repository datasource",
|
|
22
|
+
},
|
|
23
|
+
{
|
|
24
|
+
command: "google",
|
|
25
|
+
type: "llm_routing_google",
|
|
26
|
+
description: "Google Docs datasource",
|
|
27
|
+
},
|
|
28
|
+
{
|
|
29
|
+
command: "provider",
|
|
30
|
+
type: "provider",
|
|
31
|
+
description: "Provider datasource",
|
|
32
|
+
},
|
|
33
|
+
{
|
|
34
|
+
command: "azure-devops-wiki",
|
|
35
|
+
serviceKey: "azureDevOpsWiki",
|
|
36
|
+
type: "knowledge_base_azure_devops_wiki",
|
|
37
|
+
description: "Azure DevOps Wiki datasource",
|
|
38
|
+
},
|
|
39
|
+
{
|
|
40
|
+
command: "azure-devops-work-item",
|
|
41
|
+
serviceKey: "azureDevOpsWorkItem",
|
|
42
|
+
type: "knowledge_base_azure_devops_work_item",
|
|
43
|
+
description: "Azure DevOps Work Item datasource",
|
|
44
|
+
},
|
|
45
|
+
{
|
|
46
|
+
command: "xray",
|
|
47
|
+
type: "knowledge_base_xray",
|
|
48
|
+
description: "Xray test management datasource",
|
|
49
|
+
},
|
|
50
|
+
{
|
|
51
|
+
command: "sharepoint",
|
|
52
|
+
type: "knowledge_base_sharepoint",
|
|
53
|
+
description: "SharePoint datasource",
|
|
54
|
+
},
|
|
55
|
+
{
|
|
56
|
+
command: "platform",
|
|
57
|
+
type: "platform_marketplace_assistant",
|
|
58
|
+
description: "Platform marketplace assistant datasource",
|
|
59
|
+
},
|
|
60
|
+
];
|
|
61
|
+
//# sourceMappingURL=datasource-types.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"datasource-types.js","sourceRoot":"","sources":["../../../../../src/cli/commands/sdk/utils/datasource-types.ts"],"names":[],"mappings":"AAQA,MAAM,CAAC,MAAM,gBAAgB,GAA2B;IACtD;QACE,OAAO,EAAE,YAAY;QACrB,IAAI,EAAE,2BAA2B;QACjC,WAAW,EAAE,uBAAuB;QACpC,OAAO,EACL,kHAAkH;KACrH;IACD;QACE,OAAO,EAAE,MAAM;QACf,IAAI,EAAE,qBAAqB;QAC3B,WAAW,EAAE,iBAAiB;KAC/B;IACD;QACE,OAAO,EAAE,MAAM;QACf,IAAI,EAAE,qBAAqB;QAC3B,WAAW,EAAE,oDAAoD;KAClE;IACD;QACE,OAAO,EAAE,MAAM;QACf,IAAI,EAAE,MAAM;QACZ,WAAW,EAAE,4BAA4B;KAC1C;IACD;QACE,OAAO,EAAE,QAAQ;QACjB,IAAI,EAAE,oBAAoB;QAC1B,WAAW,EAAE,wBAAwB;KACtC;IACD;QACE,OAAO,EAAE,UAAU;QACnB,IAAI,EAAE,UAAU;QAChB,WAAW,EAAE,qBAAqB;KACnC;IACD;QACE,OAAO,EAAE,mBAAmB;QAC5B,UAAU,EAAE,iBAAiB;QAC7B,IAAI,EAAE,kCAAkC;QACxC,WAAW,EAAE,8BAA8B;KAC5C;IACD;QACE,OAAO,EAAE,wBAAwB;QACjC,UAAU,EAAE,qBAAqB;QACjC,IAAI,EAAE,uCAAuC;QAC7C,WAAW,EAAE,mCAAmC;KACjD;IACD;QACE,OAAO,EAAE,MAAM;QACf,IAAI,EAAE,qBAAqB;QAC3B,WAAW,EAAE,iCAAiC;KAC/C;IACD;QACE,OAAO,EAAE,YAAY;QACrB,IAAI,EAAE,2BAA2B;QACjC,WAAW,EAAE,uBAAuB;KACrC;IACD;QACE,OAAO,EAAE,UAAU;QACnB,IAAI,EAAE,gCAAgC;QACtC,WAAW,EAAE,2CAA2C;KACzD;CACF,CAAC"}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import type { File } from "codemie-sdk";
|
|
2
|
+
/**
|
|
3
|
+
* Read files from local paths and convert to SDK File format
|
|
4
|
+
* @param filePaths Array of local file paths
|
|
5
|
+
* @returns Array of File objects with content and metadata
|
|
6
|
+
*/
|
|
7
|
+
export declare function readFilesFromPaths(filePaths: string[]): Promise<File[]>;
|
|
8
|
+
//# sourceMappingURL=file-utils.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"file-utils.d.ts","sourceRoot":"","sources":["../../../../../src/cli/commands/sdk/utils/file-utils.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,aAAa,CAAC;AAGxC;;;;GAIG;AACH,wBAAsB,kBAAkB,CACtC,SAAS,EAAE,MAAM,EAAE,GAClB,OAAO,CAAC,IAAI,EAAE,CAAC,CAYjB"}
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
import { readFile } from "node:fs/promises";
|
|
2
|
+
import { basename, normalize } from "node:path";
|
|
3
|
+
import { lookup } from "mime-types";
|
|
4
|
+
import { PathSecurityError } from "../../../../utils/errors.js";
|
|
5
|
+
/**
|
|
6
|
+
* Read files from local paths and convert to SDK File format
|
|
7
|
+
* @param filePaths Array of local file paths
|
|
8
|
+
* @returns Array of File objects with content and metadata
|
|
9
|
+
*/
|
|
10
|
+
export async function readFilesFromPaths(filePaths) {
|
|
11
|
+
return Promise.all(filePaths.map(async (filePath) => {
|
|
12
|
+
if (normalize(filePath).includes("..")) {
|
|
13
|
+
throw new PathSecurityError(filePath, "path traversal not allowed");
|
|
14
|
+
}
|
|
15
|
+
const content = await readFile(filePath);
|
|
16
|
+
const name = basename(filePath);
|
|
17
|
+
const mime_type = lookup(filePath) || "application/octet-stream";
|
|
18
|
+
return { name, content, mime_type };
|
|
19
|
+
}));
|
|
20
|
+
}
|
|
21
|
+
//# sourceMappingURL=file-utils.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"file-utils.js","sourceRoot":"","sources":["../../../../../src/cli/commands/sdk/utils/file-utils.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AAC5C,OAAO,EAAE,QAAQ,EAAE,SAAS,EAAE,MAAM,WAAW,CAAC;AAChD,OAAO,EAAE,MAAM,EAAE,MAAM,YAAY,CAAC;AAEpC,OAAO,EAAE,iBAAiB,EAAE,MAAM,mBAAmB,CAAC;AAEtD;;;;GAIG;AACH,MAAM,CAAC,KAAK,UAAU,kBAAkB,CACtC,SAAmB;IAEnB,OAAO,OAAO,CAAC,GAAG,CAChB,SAAS,CAAC,GAAG,CAAC,KAAK,EAAE,QAAQ,EAAE,EAAE;QAC/B,IAAI,SAAS,CAAC,QAAQ,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC;YACvC,MAAM,IAAI,iBAAiB,CAAC,QAAQ,EAAE,4BAA4B,CAAC,CAAC;QACtE,CAAC;QACD,MAAM,OAAO,GAAG,MAAM,QAAQ,CAAC,QAAQ,CAAC,CAAC;QACzC,MAAM,IAAI,GAAG,QAAQ,CAAC,QAAQ,CAAC,CAAC;QAChC,MAAM,SAAS,GAAG,MAAM,CAAC,QAAQ,CAAC,IAAI,0BAA0B,CAAC;QACjE,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,SAAS,EAAE,CAAC;IACtC,CAAC,CAAC,CACH,CAAC;AACJ,CAAC"}
|
|
@@ -0,0 +1,82 @@
|
|
|
1
|
+
export interface TableColumn<T> {
|
|
2
|
+
header: string;
|
|
3
|
+
width: number;
|
|
4
|
+
getValue: (item: T) => string;
|
|
5
|
+
}
|
|
6
|
+
/**
|
|
7
|
+
* Generic table renderer for list views
|
|
8
|
+
*
|
|
9
|
+
* @example
|
|
10
|
+
* ```ts
|
|
11
|
+
* const columns: TableColumn<Assistant>[] = [
|
|
12
|
+
* { header: "ID", width: 40, getValue: (a) => chalk.cyan(a.id) },
|
|
13
|
+
* { header: "Name", width: 28, getValue: (a) => a.name },
|
|
14
|
+
* ];
|
|
15
|
+
* printTable(assistants, columns);
|
|
16
|
+
* ```
|
|
17
|
+
*/
|
|
18
|
+
export declare function printTable<T>(items: T[], columns: TableColumn<T>[]): void;
|
|
19
|
+
export interface DetailRow {
|
|
20
|
+
label: string;
|
|
21
|
+
value: string;
|
|
22
|
+
}
|
|
23
|
+
/**
|
|
24
|
+
* Generic detail renderer for entity detail views
|
|
25
|
+
*
|
|
26
|
+
* @example
|
|
27
|
+
* ```ts
|
|
28
|
+
* const rows: DetailRow[] = [
|
|
29
|
+
* { label: "ID", value: chalk.cyan(assistant.id) },
|
|
30
|
+
* { label: "Name", value: assistant.name },
|
|
31
|
+
* ];
|
|
32
|
+
* printDetail(rows);
|
|
33
|
+
* ```
|
|
34
|
+
*/
|
|
35
|
+
export declare function printDetail(rows: DetailRow[], options?: {
|
|
36
|
+
labelWidth?: number;
|
|
37
|
+
valueWidth?: number;
|
|
38
|
+
}): void;
|
|
39
|
+
/**
|
|
40
|
+
* Format optional field with fallback to dim dash
|
|
41
|
+
*/
|
|
42
|
+
export declare function optional(value: string | null | undefined): string;
|
|
43
|
+
/**
|
|
44
|
+
* Format boolean as yes/no with color
|
|
45
|
+
*/
|
|
46
|
+
export declare function yesNo(value: boolean | null | undefined): string;
|
|
47
|
+
/**
|
|
48
|
+
* Format status with color coding
|
|
49
|
+
*/
|
|
50
|
+
export declare function statusColor(status: string | null | undefined, colorMap?: Record<string, (text: string) => string>): string;
|
|
51
|
+
export interface EmptyStateInstructions {
|
|
52
|
+
message?: string;
|
|
53
|
+
commands?: string[];
|
|
54
|
+
locations?: string[];
|
|
55
|
+
helpUrl?: string;
|
|
56
|
+
}
|
|
57
|
+
/**
|
|
58
|
+
* Generic empty state message with optional helpful instructions
|
|
59
|
+
*
|
|
60
|
+
* @example
|
|
61
|
+
* ```ts
|
|
62
|
+
* printEmpty('assistants', {
|
|
63
|
+
* message: 'Create assistants to get started',
|
|
64
|
+
* commands: ['codemie sdk assistants create --data @assistant.json'],
|
|
65
|
+
* helpUrl: 'https://docs.codemie.ai/assistants'
|
|
66
|
+
* });
|
|
67
|
+
* ```
|
|
68
|
+
*/
|
|
69
|
+
export declare function printEmpty(entityType: string, instructions?: EmptyStateInstructions): void;
|
|
70
|
+
/**
|
|
71
|
+
* Generic list header
|
|
72
|
+
*/
|
|
73
|
+
export declare function printListHeader(entityType: string, count: number): void;
|
|
74
|
+
/**
|
|
75
|
+
* Generic success message for create/update/delete operations
|
|
76
|
+
*/
|
|
77
|
+
export declare function printSuccess(message: string): void;
|
|
78
|
+
/**
|
|
79
|
+
* Print additional info line (dimmed)
|
|
80
|
+
*/
|
|
81
|
+
export declare function printInfo(message: string): void;
|
|
82
|
+
//# sourceMappingURL=render.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"render.d.ts","sourceRoot":"","sources":["../../../../../src/cli/commands/sdk/utils/render.ts"],"names":[],"mappings":"AAGA,MAAM,WAAW,WAAW,CAAC,CAAC;IAC5B,MAAM,EAAE,MAAM,CAAC;IACf,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,EAAE,CAAC,IAAI,EAAE,CAAC,KAAK,MAAM,CAAC;CAC/B;AAED;;;;;;;;;;;GAWG;AACH,wBAAgB,UAAU,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,EAAE,OAAO,EAAE,WAAW,CAAC,CAAC,CAAC,EAAE,GAAG,IAAI,CAezE;AAED,MAAM,WAAW,SAAS;IACxB,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,MAAM,CAAC;CACf;AAED;;;;;;;;;;;GAWG;AACH,wBAAgB,WAAW,CACzB,IAAI,EAAE,SAAS,EAAE,EACjB,OAAO,GAAE;IAAE,UAAU,CAAC,EAAE,MAAM,CAAC;IAAC,UAAU,CAAC,EAAE,MAAM,CAAA;CAAO,GACzD,IAAI,CAaN;AAED;;GAEG;AACH,wBAAgB,QAAQ,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,GAAG,MAAM,CAEjE;AAED;;GAEG;AACH,wBAAgB,KAAK,CAAC,KAAK,EAAE,OAAO,GAAG,IAAI,GAAG,SAAS,GAAG,MAAM,CAI/D;AAED;;GAEG;AACH,wBAAgB,WAAW,CACzB,MAAM,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,EACjC,QAAQ,GAAE,MAAM,CAAC,MAAM,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,MAAM,CAAM,GACtD,MAAM,CAeR;AAED,MAAM,WAAW,sBAAsB;IACrC,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,QAAQ,CAAC,EAAE,MAAM,EAAE,CAAC;IACpB,SAAS,CAAC,EAAE,MAAM,EAAE,CAAC;IACrB,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AAED;;;;;;;;;;;GAWG;AACH,wBAAgB,UAAU,CACxB,UAAU,EAAE,MAAM,EAClB,YAAY,CAAC,EAAE,sBAAsB,GACpC,IAAI,CAqCN;AAED;;GAEG;AACH,wBAAgB,eAAe,CAAC,UAAU,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,IAAI,CAEvE;AAED;;GAEG;AACH,wBAAgB,YAAY,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI,CAElD;AAED;;GAEG;AACH,wBAAgB,SAAS,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI,CAE/C"}
|
|
@@ -0,0 +1,149 @@
|
|
|
1
|
+
import chalk from "chalk";
|
|
2
|
+
import Table from "cli-table3";
|
|
3
|
+
/**
|
|
4
|
+
* Generic table renderer for list views
|
|
5
|
+
*
|
|
6
|
+
* @example
|
|
7
|
+
* ```ts
|
|
8
|
+
* const columns: TableColumn<Assistant>[] = [
|
|
9
|
+
* { header: "ID", width: 40, getValue: (a) => chalk.cyan(a.id) },
|
|
10
|
+
* { header: "Name", width: 28, getValue: (a) => a.name },
|
|
11
|
+
* ];
|
|
12
|
+
* printTable(assistants, columns);
|
|
13
|
+
* ```
|
|
14
|
+
*/
|
|
15
|
+
export function printTable(items, columns) {
|
|
16
|
+
const table = new Table({
|
|
17
|
+
style: {
|
|
18
|
+
head: columns.map(() => "white"),
|
|
19
|
+
},
|
|
20
|
+
head: columns.map((col) => chalk.bold(col.header)),
|
|
21
|
+
colWidths: columns.map((col) => col.width),
|
|
22
|
+
wordWrap: true,
|
|
23
|
+
});
|
|
24
|
+
for (const item of items) {
|
|
25
|
+
table.push(columns.map((col) => col.getValue(item)));
|
|
26
|
+
}
|
|
27
|
+
console.log(table.toString());
|
|
28
|
+
}
|
|
29
|
+
/**
|
|
30
|
+
* Generic detail renderer for entity detail views
|
|
31
|
+
*
|
|
32
|
+
* @example
|
|
33
|
+
* ```ts
|
|
34
|
+
* const rows: DetailRow[] = [
|
|
35
|
+
* { label: "ID", value: chalk.cyan(assistant.id) },
|
|
36
|
+
* { label: "Name", value: assistant.name },
|
|
37
|
+
* ];
|
|
38
|
+
* printDetail(rows);
|
|
39
|
+
* ```
|
|
40
|
+
*/
|
|
41
|
+
export function printDetail(rows, options = {}) {
|
|
42
|
+
const { labelWidth = 18, valueWidth = 60 } = options;
|
|
43
|
+
const table = new Table({
|
|
44
|
+
colWidths: [labelWidth, valueWidth],
|
|
45
|
+
wordWrap: true,
|
|
46
|
+
});
|
|
47
|
+
for (const row of rows) {
|
|
48
|
+
table.push([chalk.bold(row.label), row.value]);
|
|
49
|
+
}
|
|
50
|
+
console.log("\n" + table.toString());
|
|
51
|
+
}
|
|
52
|
+
/**
|
|
53
|
+
* Format optional field with fallback to dim dash
|
|
54
|
+
*/
|
|
55
|
+
export function optional(value) {
|
|
56
|
+
return value ?? chalk.dim("—");
|
|
57
|
+
}
|
|
58
|
+
/**
|
|
59
|
+
* Format boolean as yes/no with color
|
|
60
|
+
*/
|
|
61
|
+
export function yesNo(value) {
|
|
62
|
+
if (value === true)
|
|
63
|
+
return chalk.green("yes");
|
|
64
|
+
if (value === false)
|
|
65
|
+
return chalk.dim("no");
|
|
66
|
+
return chalk.dim("—");
|
|
67
|
+
}
|
|
68
|
+
/**
|
|
69
|
+
* Format status with color coding
|
|
70
|
+
*/
|
|
71
|
+
export function statusColor(status, colorMap = {}) {
|
|
72
|
+
if (!status)
|
|
73
|
+
return chalk.dim("—");
|
|
74
|
+
const defaultMap = {
|
|
75
|
+
completed: chalk.green,
|
|
76
|
+
success: chalk.green,
|
|
77
|
+
failed: chalk.red,
|
|
78
|
+
error: chalk.red,
|
|
79
|
+
pending: chalk.yellow,
|
|
80
|
+
in_progress: chalk.yellow,
|
|
81
|
+
...colorMap,
|
|
82
|
+
};
|
|
83
|
+
const colorFn = defaultMap[status.toLowerCase()] || ((s) => s);
|
|
84
|
+
return colorFn(status);
|
|
85
|
+
}
|
|
86
|
+
/**
|
|
87
|
+
* Generic empty state message with optional helpful instructions
|
|
88
|
+
*
|
|
89
|
+
* @example
|
|
90
|
+
* ```ts
|
|
91
|
+
* printEmpty('assistants', {
|
|
92
|
+
* message: 'Create assistants to get started',
|
|
93
|
+
* commands: ['codemie sdk assistants create --data @assistant.json'],
|
|
94
|
+
* helpUrl: 'https://docs.codemie.ai/assistants'
|
|
95
|
+
* });
|
|
96
|
+
* ```
|
|
97
|
+
*/
|
|
98
|
+
export function printEmpty(entityType, instructions) {
|
|
99
|
+
console.log(chalk.yellow(`\nNo ${entityType} found.`));
|
|
100
|
+
if (!instructions) {
|
|
101
|
+
return;
|
|
102
|
+
}
|
|
103
|
+
// Optional custom message
|
|
104
|
+
if (instructions.message) {
|
|
105
|
+
console.log(chalk.white(instructions.message));
|
|
106
|
+
console.log("");
|
|
107
|
+
}
|
|
108
|
+
// Commands to run
|
|
109
|
+
if (instructions.commands && instructions.commands.length > 0) {
|
|
110
|
+
console.log(chalk.white("Create new with:"));
|
|
111
|
+
for (const cmd of instructions.commands) {
|
|
112
|
+
console.log(` ${chalk.cyan(cmd)}`);
|
|
113
|
+
}
|
|
114
|
+
console.log("");
|
|
115
|
+
}
|
|
116
|
+
// Locations/paths
|
|
117
|
+
if (instructions.locations && instructions.locations.length > 0) {
|
|
118
|
+
console.log(chalk.white("Or manage via:"));
|
|
119
|
+
for (const loc of instructions.locations) {
|
|
120
|
+
console.log(` • ${chalk.cyan(loc)}`);
|
|
121
|
+
}
|
|
122
|
+
console.log("");
|
|
123
|
+
}
|
|
124
|
+
// Help URL
|
|
125
|
+
if (instructions.helpUrl) {
|
|
126
|
+
console.log(chalk.white("Learn more:"));
|
|
127
|
+
console.log(` ${chalk.cyan(instructions.helpUrl)}`);
|
|
128
|
+
console.log("");
|
|
129
|
+
}
|
|
130
|
+
}
|
|
131
|
+
/**
|
|
132
|
+
* Generic list header
|
|
133
|
+
*/
|
|
134
|
+
export function printListHeader(entityType, count) {
|
|
135
|
+
console.log(chalk.bold(`\n${entityType} (${count})`));
|
|
136
|
+
}
|
|
137
|
+
/**
|
|
138
|
+
* Generic success message for create/update/delete operations
|
|
139
|
+
*/
|
|
140
|
+
export function printSuccess(message) {
|
|
141
|
+
console.log(chalk.green(`✓ ${message}`));
|
|
142
|
+
}
|
|
143
|
+
/**
|
|
144
|
+
* Print additional info line (dimmed)
|
|
145
|
+
*/
|
|
146
|
+
export function printInfo(message) {
|
|
147
|
+
console.log(chalk.dim(` ${message}`));
|
|
148
|
+
}
|
|
149
|
+
//# sourceMappingURL=render.js.map
|