langwatch 0.8.2 → 0.9.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/dist/{add-EY2WXUSP.mjs → add-KNE3HWRY.mjs} +5 -5
- package/dist/{add-GEM46CRC.js → add-V2V2U6OX.js} +8 -8
- package/dist/{add-GEM46CRC.js.map → add-V2V2U6OX.js.map} +1 -1
- package/dist/{chunk-KLVHQVMF.js → chunk-2UTO2QPL.js} +14 -14
- package/dist/{chunk-KLVHQVMF.js.map → chunk-2UTO2QPL.js.map} +1 -1
- package/dist/{chunk-PLCZYSRL.mjs → chunk-6VUZPNOC.mjs} +5 -5
- package/dist/{chunk-BP2WGNIV.js → chunk-A43BYF5Q.js} +6 -2
- package/dist/chunk-A43BYF5Q.js.map +1 -0
- package/dist/{chunk-SRI6HEGF.js → chunk-FISQBF2P.js} +10 -10
- package/dist/{chunk-SRI6HEGF.js.map → chunk-FISQBF2P.js.map} +1 -1
- package/dist/{chunk-ZNWSX2QV.js → chunk-NQ7TYHRT.js} +2 -2
- package/dist/{chunk-ZNWSX2QV.js.map → chunk-NQ7TYHRT.js.map} +1 -1
- package/dist/{chunk-GNKQTK4I.mjs → chunk-SMUOMBKY.mjs} +2 -2
- package/dist/{chunk-GNKQTK4I.mjs.map → chunk-SMUOMBKY.mjs.map} +1 -1
- package/dist/{chunk-DQU2PZAL.mjs → chunk-WHPBZSTS.mjs} +6 -2
- package/dist/chunk-WHPBZSTS.mjs.map +1 -0
- package/dist/{chunk-VJV532JA.mjs → chunk-XBHIDR76.mjs} +2 -2
- package/dist/cli/index.js +6 -6
- package/dist/cli/index.js.map +1 -1
- package/dist/cli/index.mjs +6 -6
- package/dist/cli/index.mjs.map +1 -1
- package/dist/index.js +12 -12
- package/dist/index.js.map +1 -1
- package/dist/index.mjs +6 -6
- package/dist/{list-GCZWLGUG.mjs → list-4BFJIHYB.mjs} +5 -5
- package/dist/{list-DRJJH66J.js → list-VWXENE3O.js} +8 -8
- package/dist/{list-DRJJH66J.js.map → list-VWXENE3O.js.map} +1 -1
- package/dist/{login-S4O6A5OF.js → login-6PM2MUZS.js} +3 -3
- package/dist/{login-S4O6A5OF.js.map → login-6PM2MUZS.js.map} +1 -1
- package/dist/{login-WHSTC3WT.mjs → login-CEO47GSW.mjs} +2 -2
- package/dist/observability-sdk/index.js +4 -4
- package/dist/observability-sdk/index.js.map +1 -1
- package/dist/observability-sdk/index.mjs +8 -8
- package/dist/observability-sdk/instrumentation/langchain/index.js +3 -3
- package/dist/observability-sdk/instrumentation/langchain/index.mjs +1 -1
- package/dist/observability-sdk/setup/node/index.js +10 -10
- package/dist/observability-sdk/setup/node/index.mjs +2 -2
- package/dist/{remove-TISUKAUX.mjs → remove-5YFEQXTZ.mjs} +5 -5
- package/dist/{remove-LBVMOEMQ.js → remove-KVWGJOJY.js} +7 -7
- package/dist/{remove-LBVMOEMQ.js.map → remove-KVWGJOJY.js.map} +1 -1
- package/dist/{sync-QYFJZVU7.mjs → sync-3P54PWWR.mjs} +5 -5
- package/dist/{sync-SIHBU67A.js → sync-6BHY2J72.js} +7 -7
- package/dist/{sync-SIHBU67A.js.map → sync-6BHY2J72.js.map} +1 -1
- package/package.json +1 -1
- package/dist/chunk-BP2WGNIV.js.map +0 -1
- package/dist/chunk-DQU2PZAL.mjs.map +0 -1
- /package/dist/{add-EY2WXUSP.mjs.map → add-KNE3HWRY.mjs.map} +0 -0
- /package/dist/{chunk-PLCZYSRL.mjs.map → chunk-6VUZPNOC.mjs.map} +0 -0
- /package/dist/{chunk-VJV532JA.mjs.map → chunk-XBHIDR76.mjs.map} +0 -0
- /package/dist/{list-GCZWLGUG.mjs.map → list-4BFJIHYB.mjs.map} +0 -0
- /package/dist/{login-WHSTC3WT.mjs.map → login-CEO47GSW.mjs.map} +0 -0
- /package/dist/{remove-TISUKAUX.mjs.map → remove-5YFEQXTZ.mjs.map} +0 -0
- /package/dist/{sync-QYFJZVU7.mjs.map → sync-3P54PWWR.mjs.map} +0 -0
package/dist/cli/index.js
CHANGED
|
@@ -9,11 +9,11 @@ var _dotenv = require('dotenv');
|
|
|
9
9
|
var _commander = require('commander');
|
|
10
10
|
_dotenv.config.call(void 0, );
|
|
11
11
|
var addCommand = async (name, options) => {
|
|
12
|
-
const { addCommand: addCommandImpl } = await Promise.resolve().then(() => _interopRequireWildcard(require("../add-
|
|
12
|
+
const { addCommand: addCommandImpl } = await Promise.resolve().then(() => _interopRequireWildcard(require("../add-V2V2U6OX.js")));
|
|
13
13
|
return addCommandImpl(name, options);
|
|
14
14
|
};
|
|
15
15
|
var removeCommand = async (name) => {
|
|
16
|
-
const { removeCommand: removeCommandImpl } = await Promise.resolve().then(() => _interopRequireWildcard(require("../remove-
|
|
16
|
+
const { removeCommand: removeCommandImpl } = await Promise.resolve().then(() => _interopRequireWildcard(require("../remove-KVWGJOJY.js")));
|
|
17
17
|
return removeCommandImpl(name);
|
|
18
18
|
};
|
|
19
19
|
var initCommand = async () => {
|
|
@@ -21,15 +21,15 @@ var initCommand = async () => {
|
|
|
21
21
|
return initCommandImpl();
|
|
22
22
|
};
|
|
23
23
|
var loginCommand = async () => {
|
|
24
|
-
const { loginCommand: loginCommandImpl } = await Promise.resolve().then(() => _interopRequireWildcard(require("../login-
|
|
24
|
+
const { loginCommand: loginCommandImpl } = await Promise.resolve().then(() => _interopRequireWildcard(require("../login-6PM2MUZS.js")));
|
|
25
25
|
return loginCommandImpl();
|
|
26
26
|
};
|
|
27
27
|
var listCommand = async () => {
|
|
28
|
-
const { listCommand: listCommandImpl } = await Promise.resolve().then(() => _interopRequireWildcard(require("../list-
|
|
28
|
+
const { listCommand: listCommandImpl } = await Promise.resolve().then(() => _interopRequireWildcard(require("../list-VWXENE3O.js")));
|
|
29
29
|
return listCommandImpl();
|
|
30
30
|
};
|
|
31
31
|
var syncCommand = async () => {
|
|
32
|
-
const { syncCommand: syncCommandImpl } = await Promise.resolve().then(() => _interopRequireWildcard(require("../sync-
|
|
32
|
+
const { syncCommand: syncCommandImpl } = await Promise.resolve().then(() => _interopRequireWildcard(require("../sync-6BHY2J72.js")));
|
|
33
33
|
return syncCommandImpl();
|
|
34
34
|
};
|
|
35
35
|
var createCommand = async (name, options) => {
|
|
@@ -37,7 +37,7 @@ var createCommand = async (name, options) => {
|
|
|
37
37
|
return createCommandImpl(name, options);
|
|
38
38
|
};
|
|
39
39
|
var program = new (0, _commander.Command)();
|
|
40
|
-
program.name("langwatch").description("LangWatch CLI - The npm of prompts").configureHelp({
|
|
40
|
+
program.name("langwatch").description("LangWatch CLI - The npm of prompts").version("0.9.0", "-v, --version", "Display the current version").configureHelp({
|
|
41
41
|
showGlobalOptions: true
|
|
42
42
|
}).showHelpAfterError().showSuggestionAfterError();
|
|
43
43
|
program.command("login").description("Login to LangWatch and save API key").action(async () => {
|
package/dist/cli/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["/home/runner/work/langwatch/langwatch/typescript-sdk/dist/cli/index.js","../../src/cli/index.ts"],"names":[],"mappings":"AAAA;AACA;AACE;AACF,uDAA6B;AAC7B,gCAA6B;AAC7B;AACA;ACHA,gCAAuB;AAGvB,sCAAwB;AAFxB,4BAAA,CAAO;
|
|
1
|
+
{"version":3,"sources":["/home/runner/work/langwatch/langwatch/typescript-sdk/dist/cli/index.js","../../src/cli/index.ts"],"names":[],"mappings":"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","file":"/home/runner/work/langwatch/langwatch/typescript-sdk/dist/cli/index.js","sourcesContent":[null,"#!/usr/bin/env node\n\n// Load environment variables BEFORE any other imports\nimport { config } from \"dotenv\";\nconfig();\n\nimport { Command } from \"commander\";\nimport { parsePromptSpec } from \"./types\";\n\ndeclare const __CLI_VERSION__: string;\n\n// Import commands with proper async handling\nconst addCommand = async (name: string, options: { version?: string; localFile?: string }): Promise<void> => {\n const { addCommand: addCommandImpl } = await import(\"./commands/add.js\");\n return addCommandImpl(name, options);\n};\n\nconst removeCommand = async (name: string): Promise<void> => {\n const { removeCommand: removeCommandImpl } = await import(\"./commands/remove.js\");\n return removeCommandImpl(name);\n};\n\nconst initCommand = async (): Promise<void> => {\n const { initCommand: initCommandImpl } = await import(\"./commands/init.js\");\n return initCommandImpl();\n};\n\nconst loginCommand = async (): Promise<void> => {\n const { loginCommand: loginCommandImpl } = await import(\"./commands/login.js\");\n return loginCommandImpl();\n};\n\nconst listCommand = async (): Promise<void> => {\n const { listCommand: listCommandImpl } = await import(\"./commands/list.js\");\n return listCommandImpl();\n};\n\nconst syncCommand = async (): Promise<void> => {\n const { syncCommand: syncCommandImpl } = await import(\"./commands/sync.js\");\n return syncCommandImpl();\n};\n\nconst createCommand = async (name: string, options: Record<string, unknown>): Promise<void> => {\n const { createCommand: createCommandImpl } = await import(\"./commands/create.js\");\n return createCommandImpl(name, options);\n};\n\nconst program = new Command();\n\nprogram\n .name(\"langwatch\")\n .description(\"LangWatch CLI - The npm of prompts\")\n .version(__CLI_VERSION__, \"-v, --version\", \"Display the current version\")\n .configureHelp({\n showGlobalOptions: true,\n })\n .showHelpAfterError()\n .showSuggestionAfterError();\n\n// Top-level commands\nprogram\n .command(\"login\")\n .description(\"Login to LangWatch and save API key\")\n .action(async () => {\n try {\n await loginCommand();\n } catch (error) {\n console.error(`Error: ${error instanceof Error ? error.message : \"Unknown error\"}`);\n process.exit(1);\n }\n });\n\n// Add prompt command group\nconst promptCmd = program\n .command(\"prompt\")\n .description(\"Manage prompt dependencies\");\n\npromptCmd\n .command(\"init\")\n .description(\"Initialize a new prompts project\")\n .action(async () => {\n try {\n await initCommand();\n } catch (error) {\n console.error(`Error: ${error instanceof Error ? error.message : \"Unknown error\"}`);\n process.exit(1);\n }\n });\n\npromptCmd\n .command(\"create <name>\")\n .description(\"Create a new prompt YAML file with default content\")\n .action(async (name: string) => {\n try {\n await createCommand(name, {});\n } catch (error) {\n console.error(`Error: ${error instanceof Error ? error.message : \"Unknown error\"}`);\n process.exit(1);\n }\n });\n\npromptCmd\n .command(\"add <spec> [localFile]\")\n .description(\"Add a prompt dependency (e.g., 'agent/foo', 'agent/bar@5') or local file\")\n .action(async (spec: string, localFile?: string) => {\n try {\n if (localFile) {\n await addCommand(spec, { localFile });\n } else {\n const { name, version } = parsePromptSpec(spec);\n await addCommand(name, { version });\n }\n } catch (error) {\n console.error(`Error: ${error instanceof Error ? error.message : \"Unknown error\"}`);\n process.exit(1);\n }\n });\n\npromptCmd\n .command(\"remove <name>\")\n .description(\"Remove a prompt dependency\")\n .action(async (name: string) => {\n try {\n await removeCommand(name);\n } catch (error) {\n console.error(`Error: ${error instanceof Error ? error.message : \"Unknown error\"}`);\n process.exit(1);\n }\n });\n\npromptCmd\n .command(\"list\")\n .description(\"List all available prompts on the server\")\n .action(async () => {\n try {\n await listCommand();\n } catch (error) {\n console.error(`Error: ${error instanceof Error ? error.message : \"Unknown error\"}`);\n process.exit(1);\n }\n });\n\npromptCmd\n .command(\"sync\")\n .description(\"Sync prompts - fetch remote and push local\")\n .action(async () => {\n try {\n await syncCommand();\n } catch (error) {\n console.error(`Error: ${error instanceof Error ? error.message : \"Unknown error\"}`);\n process.exit(1);\n }\n });\n\nprogram.parse(process.argv);"]}
|
package/dist/cli/index.mjs
CHANGED
|
@@ -9,11 +9,11 @@ import { config } from "dotenv";
|
|
|
9
9
|
import { Command } from "commander";
|
|
10
10
|
config();
|
|
11
11
|
var addCommand = async (name, options) => {
|
|
12
|
-
const { addCommand: addCommandImpl } = await import("../add-
|
|
12
|
+
const { addCommand: addCommandImpl } = await import("../add-KNE3HWRY.mjs");
|
|
13
13
|
return addCommandImpl(name, options);
|
|
14
14
|
};
|
|
15
15
|
var removeCommand = async (name) => {
|
|
16
|
-
const { removeCommand: removeCommandImpl } = await import("../remove-
|
|
16
|
+
const { removeCommand: removeCommandImpl } = await import("../remove-5YFEQXTZ.mjs");
|
|
17
17
|
return removeCommandImpl(name);
|
|
18
18
|
};
|
|
19
19
|
var initCommand = async () => {
|
|
@@ -21,15 +21,15 @@ var initCommand = async () => {
|
|
|
21
21
|
return initCommandImpl();
|
|
22
22
|
};
|
|
23
23
|
var loginCommand = async () => {
|
|
24
|
-
const { loginCommand: loginCommandImpl } = await import("../login-
|
|
24
|
+
const { loginCommand: loginCommandImpl } = await import("../login-CEO47GSW.mjs");
|
|
25
25
|
return loginCommandImpl();
|
|
26
26
|
};
|
|
27
27
|
var listCommand = async () => {
|
|
28
|
-
const { listCommand: listCommandImpl } = await import("../list-
|
|
28
|
+
const { listCommand: listCommandImpl } = await import("../list-4BFJIHYB.mjs");
|
|
29
29
|
return listCommandImpl();
|
|
30
30
|
};
|
|
31
31
|
var syncCommand = async () => {
|
|
32
|
-
const { syncCommand: syncCommandImpl } = await import("../sync-
|
|
32
|
+
const { syncCommand: syncCommandImpl } = await import("../sync-3P54PWWR.mjs");
|
|
33
33
|
return syncCommandImpl();
|
|
34
34
|
};
|
|
35
35
|
var createCommand = async (name, options) => {
|
|
@@ -37,7 +37,7 @@ var createCommand = async (name, options) => {
|
|
|
37
37
|
return createCommandImpl(name, options);
|
|
38
38
|
};
|
|
39
39
|
var program = new Command();
|
|
40
|
-
program.name("langwatch").description("LangWatch CLI - The npm of prompts").configureHelp({
|
|
40
|
+
program.name("langwatch").description("LangWatch CLI - The npm of prompts").version("0.9.0", "-v, --version", "Display the current version").configureHelp({
|
|
41
41
|
showGlobalOptions: true
|
|
42
42
|
}).showHelpAfterError().showSuggestionAfterError();
|
|
43
43
|
program.command("login").description("Login to LangWatch and save API key").action(async () => {
|
package/dist/cli/index.mjs.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../src/cli/index.ts"],"sourcesContent":["#!/usr/bin/env node\n\n// Load environment variables BEFORE any other imports\nimport { config } from \"dotenv\";\nconfig();\n\nimport { Command } from \"commander\";\nimport { parsePromptSpec } from \"./types\";\n\n// Import commands with proper async handling\nconst addCommand = async (name: string, options: { version?: string; localFile?: string }): Promise<void> => {\n const { addCommand: addCommandImpl } = await import(\"./commands/add.js\");\n return addCommandImpl(name, options);\n};\n\nconst removeCommand = async (name: string): Promise<void> => {\n const { removeCommand: removeCommandImpl } = await import(\"./commands/remove.js\");\n return removeCommandImpl(name);\n};\n\nconst initCommand = async (): Promise<void> => {\n const { initCommand: initCommandImpl } = await import(\"./commands/init.js\");\n return initCommandImpl();\n};\n\nconst loginCommand = async (): Promise<void> => {\n const { loginCommand: loginCommandImpl } = await import(\"./commands/login.js\");\n return loginCommandImpl();\n};\n\nconst listCommand = async (): Promise<void> => {\n const { listCommand: listCommandImpl } = await import(\"./commands/list.js\");\n return listCommandImpl();\n};\n\nconst syncCommand = async (): Promise<void> => {\n const { syncCommand: syncCommandImpl } = await import(\"./commands/sync.js\");\n return syncCommandImpl();\n};\n\nconst createCommand = async (name: string, options: Record<string, unknown>): Promise<void> => {\n const { createCommand: createCommandImpl } = await import(\"./commands/create.js\");\n return createCommandImpl(name, options);\n};\n\nconst program = new Command();\n\nprogram\n .name(\"langwatch\")\n .description(\"LangWatch CLI - The npm of prompts\")\n .configureHelp({\n showGlobalOptions: true,\n })\n .showHelpAfterError()\n .showSuggestionAfterError();\n\n// Top-level commands\nprogram\n .command(\"login\")\n .description(\"Login to LangWatch and save API key\")\n .action(async () => {\n try {\n await loginCommand();\n } catch (error) {\n console.error(`Error: ${error instanceof Error ? error.message : \"Unknown error\"}`);\n process.exit(1);\n }\n });\n\n// Add prompt command group\nconst promptCmd = program\n .command(\"prompt\")\n .description(\"Manage prompt dependencies\");\n\npromptCmd\n .command(\"init\")\n .description(\"Initialize a new prompts project\")\n .action(async () => {\n try {\n await initCommand();\n } catch (error) {\n console.error(`Error: ${error instanceof Error ? error.message : \"Unknown error\"}`);\n process.exit(1);\n }\n });\n\npromptCmd\n .command(\"create <name>\")\n .description(\"Create a new prompt YAML file with default content\")\n .action(async (name: string) => {\n try {\n await createCommand(name, {});\n } catch (error) {\n console.error(`Error: ${error instanceof Error ? error.message : \"Unknown error\"}`);\n process.exit(1);\n }\n });\n\npromptCmd\n .command(\"add <spec> [localFile]\")\n .description(\"Add a prompt dependency (e.g., 'agent/foo', 'agent/bar@5') or local file\")\n .action(async (spec: string, localFile?: string) => {\n try {\n if (localFile) {\n await addCommand(spec, { localFile });\n } else {\n const { name, version } = parsePromptSpec(spec);\n await addCommand(name, { version });\n }\n } catch (error) {\n console.error(`Error: ${error instanceof Error ? error.message : \"Unknown error\"}`);\n process.exit(1);\n }\n });\n\npromptCmd\n .command(\"remove <name>\")\n .description(\"Remove a prompt dependency\")\n .action(async (name: string) => {\n try {\n await removeCommand(name);\n } catch (error) {\n console.error(`Error: ${error instanceof Error ? error.message : \"Unknown error\"}`);\n process.exit(1);\n }\n });\n\npromptCmd\n .command(\"list\")\n .description(\"List all available prompts on the server\")\n .action(async () => {\n try {\n await listCommand();\n } catch (error) {\n console.error(`Error: ${error instanceof Error ? error.message : \"Unknown error\"}`);\n process.exit(1);\n }\n });\n\npromptCmd\n .command(\"sync\")\n .description(\"Sync prompts - fetch remote and push local\")\n .action(async () => {\n try {\n await syncCommand();\n } catch (error) {\n console.error(`Error: ${error instanceof Error ? error.message : \"Unknown error\"}`);\n process.exit(1);\n }\n });\n\nprogram.parse(process.argv);"],"mappings":";;;;;;;AAGA,SAAS,cAAc;AAGvB,SAAS,eAAe;AAFxB,OAAO;
|
|
1
|
+
{"version":3,"sources":["../../src/cli/index.ts"],"sourcesContent":["#!/usr/bin/env node\n\n// Load environment variables BEFORE any other imports\nimport { config } from \"dotenv\";\nconfig();\n\nimport { Command } from \"commander\";\nimport { parsePromptSpec } from \"./types\";\n\ndeclare const __CLI_VERSION__: string;\n\n// Import commands with proper async handling\nconst addCommand = async (name: string, options: { version?: string; localFile?: string }): Promise<void> => {\n const { addCommand: addCommandImpl } = await import(\"./commands/add.js\");\n return addCommandImpl(name, options);\n};\n\nconst removeCommand = async (name: string): Promise<void> => {\n const { removeCommand: removeCommandImpl } = await import(\"./commands/remove.js\");\n return removeCommandImpl(name);\n};\n\nconst initCommand = async (): Promise<void> => {\n const { initCommand: initCommandImpl } = await import(\"./commands/init.js\");\n return initCommandImpl();\n};\n\nconst loginCommand = async (): Promise<void> => {\n const { loginCommand: loginCommandImpl } = await import(\"./commands/login.js\");\n return loginCommandImpl();\n};\n\nconst listCommand = async (): Promise<void> => {\n const { listCommand: listCommandImpl } = await import(\"./commands/list.js\");\n return listCommandImpl();\n};\n\nconst syncCommand = async (): Promise<void> => {\n const { syncCommand: syncCommandImpl } = await import(\"./commands/sync.js\");\n return syncCommandImpl();\n};\n\nconst createCommand = async (name: string, options: Record<string, unknown>): Promise<void> => {\n const { createCommand: createCommandImpl } = await import(\"./commands/create.js\");\n return createCommandImpl(name, options);\n};\n\nconst program = new Command();\n\nprogram\n .name(\"langwatch\")\n .description(\"LangWatch CLI - The npm of prompts\")\n .version(__CLI_VERSION__, \"-v, --version\", \"Display the current version\")\n .configureHelp({\n showGlobalOptions: true,\n })\n .showHelpAfterError()\n .showSuggestionAfterError();\n\n// Top-level commands\nprogram\n .command(\"login\")\n .description(\"Login to LangWatch and save API key\")\n .action(async () => {\n try {\n await loginCommand();\n } catch (error) {\n console.error(`Error: ${error instanceof Error ? error.message : \"Unknown error\"}`);\n process.exit(1);\n }\n });\n\n// Add prompt command group\nconst promptCmd = program\n .command(\"prompt\")\n .description(\"Manage prompt dependencies\");\n\npromptCmd\n .command(\"init\")\n .description(\"Initialize a new prompts project\")\n .action(async () => {\n try {\n await initCommand();\n } catch (error) {\n console.error(`Error: ${error instanceof Error ? error.message : \"Unknown error\"}`);\n process.exit(1);\n }\n });\n\npromptCmd\n .command(\"create <name>\")\n .description(\"Create a new prompt YAML file with default content\")\n .action(async (name: string) => {\n try {\n await createCommand(name, {});\n } catch (error) {\n console.error(`Error: ${error instanceof Error ? error.message : \"Unknown error\"}`);\n process.exit(1);\n }\n });\n\npromptCmd\n .command(\"add <spec> [localFile]\")\n .description(\"Add a prompt dependency (e.g., 'agent/foo', 'agent/bar@5') or local file\")\n .action(async (spec: string, localFile?: string) => {\n try {\n if (localFile) {\n await addCommand(spec, { localFile });\n } else {\n const { name, version } = parsePromptSpec(spec);\n await addCommand(name, { version });\n }\n } catch (error) {\n console.error(`Error: ${error instanceof Error ? error.message : \"Unknown error\"}`);\n process.exit(1);\n }\n });\n\npromptCmd\n .command(\"remove <name>\")\n .description(\"Remove a prompt dependency\")\n .action(async (name: string) => {\n try {\n await removeCommand(name);\n } catch (error) {\n console.error(`Error: ${error instanceof Error ? error.message : \"Unknown error\"}`);\n process.exit(1);\n }\n });\n\npromptCmd\n .command(\"list\")\n .description(\"List all available prompts on the server\")\n .action(async () => {\n try {\n await listCommand();\n } catch (error) {\n console.error(`Error: ${error instanceof Error ? error.message : \"Unknown error\"}`);\n process.exit(1);\n }\n });\n\npromptCmd\n .command(\"sync\")\n .description(\"Sync prompts - fetch remote and push local\")\n .action(async () => {\n try {\n await syncCommand();\n } catch (error) {\n console.error(`Error: ${error instanceof Error ? error.message : \"Unknown error\"}`);\n process.exit(1);\n }\n });\n\nprogram.parse(process.argv);"],"mappings":"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","names":[]}
|
package/dist/index.js
CHANGED
|
@@ -4,22 +4,22 @@
|
|
|
4
4
|
|
|
5
5
|
|
|
6
6
|
|
|
7
|
-
var
|
|
7
|
+
var _chunkFISQBF2Pjs = require('./chunk-FISQBF2P.js');
|
|
8
8
|
|
|
9
9
|
|
|
10
10
|
var _chunkSNDTNU3Tjs = require('./chunk-SNDTNU3T.js');
|
|
11
11
|
|
|
12
12
|
|
|
13
|
-
var _chunkBP2WGNIVjs = require('./chunk-BP2WGNIV.js');
|
|
14
13
|
|
|
14
|
+
var _chunk2UTO2QPLjs = require('./chunk-2UTO2QPL.js');
|
|
15
15
|
|
|
16
16
|
|
|
17
|
-
var _chunkKLVHQVMFjs = require('./chunk-KLVHQVMF.js');
|
|
18
17
|
|
|
19
18
|
|
|
19
|
+
var _chunkNQ7TYHRTjs = require('./chunk-NQ7TYHRT.js');
|
|
20
20
|
|
|
21
21
|
|
|
22
|
-
var
|
|
22
|
+
var _chunkA43BYF5Qjs = require('./chunk-A43BYF5Q.js');
|
|
23
23
|
|
|
24
24
|
|
|
25
25
|
|
|
@@ -46,13 +46,13 @@ var TracesError = class extends Error {
|
|
|
46
46
|
};
|
|
47
47
|
|
|
48
48
|
// src/client-sdk/services/traces/tracing/tracer.ts
|
|
49
|
-
var tracer =
|
|
49
|
+
var tracer = _chunkA43BYF5Qjs.getLangWatchTracer.call(void 0, `${_chunkNQ7TYHRTjs.LANGWATCH_SDK_NAME_CLIENT}.traces`, _chunkNQ7TYHRTjs.LANGWATCH_SDK_VERSION);
|
|
50
50
|
|
|
51
51
|
// src/client-sdk/services/traces/service.ts
|
|
52
52
|
var TracesService = class {
|
|
53
53
|
constructor(config) {
|
|
54
54
|
this.config = config;
|
|
55
|
-
return
|
|
55
|
+
return _chunkFISQBF2Pjs.createTracingProxy.call(void 0,
|
|
56
56
|
this,
|
|
57
57
|
tracer
|
|
58
58
|
);
|
|
@@ -115,15 +115,15 @@ var LangWatch = class {
|
|
|
115
115
|
_chunkOHM7JUMRjs.__privateAdd.call(void 0, this, _LangWatch_instances);
|
|
116
116
|
var _a, _b, _c, _d;
|
|
117
117
|
const apiKey = (_b = (_a = options.apiKey) != null ? _a : process.env.LANGWATCH_API_KEY) != null ? _b : "";
|
|
118
|
-
const endpoint = (_d = (_c = options.endpoint) != null ? _c : process.env.LANGWATCH_ENDPOINT) != null ? _d :
|
|
118
|
+
const endpoint = (_d = (_c = options.endpoint) != null ? _c : process.env.LANGWATCH_ENDPOINT) != null ? _d : _chunkNQ7TYHRTjs.DEFAULT_ENDPOINT;
|
|
119
119
|
this.config = _chunkOHM7JUMRjs.__privateMethod.call(void 0, this, _LangWatch_instances, createInternalConfig_fn).call(this, {
|
|
120
120
|
apiKey,
|
|
121
121
|
endpoint,
|
|
122
122
|
options: options.options
|
|
123
123
|
});
|
|
124
|
-
this.prompts = new (0,
|
|
125
|
-
promptsApiService: new (0,
|
|
126
|
-
localPromptsService: new (0,
|
|
124
|
+
this.prompts = new (0, _chunkFISQBF2Pjs.PromptsFacade)(_chunkOHM7JUMRjs.__spreadValues.call(void 0, {
|
|
125
|
+
promptsApiService: new (0, _chunkFISQBF2Pjs.PromptsApiService)(this.config),
|
|
126
|
+
localPromptsService: new (0, _chunkFISQBF2Pjs.LocalPromptsService)()
|
|
127
127
|
}, this.config));
|
|
128
128
|
this.traces = new TracesFacade(this.config);
|
|
129
129
|
}
|
|
@@ -140,7 +140,7 @@ createInternalConfig_fn = function({
|
|
|
140
140
|
var _a;
|
|
141
141
|
return {
|
|
142
142
|
logger: (_a = options == null ? void 0 : options.logger) != null ? _a : new (0, _chunkCKIZDPIJjs.NoOpLogger)(),
|
|
143
|
-
langwatchApiClient:
|
|
143
|
+
langwatchApiClient: _chunkFISQBF2Pjs.createLangWatchApiClient.call(void 0, apiKey, endpoint)
|
|
144
144
|
};
|
|
145
145
|
};
|
|
146
146
|
|
|
@@ -157,5 +157,5 @@ var logger = {
|
|
|
157
157
|
|
|
158
158
|
|
|
159
159
|
|
|
160
|
-
exports.FilterableBatchSpanProcessor = _chunkSNDTNU3Tjs.FilterableBatchSpanProcessor; exports.LangWatch = LangWatch; exports.LangWatchExporter =
|
|
160
|
+
exports.FilterableBatchSpanProcessor = _chunkSNDTNU3Tjs.FilterableBatchSpanProcessor; exports.LangWatch = LangWatch; exports.LangWatchExporter = _chunk2UTO2QPLjs.LangWatchTraceExporter; exports.attributes = _chunkCKIZDPIJjs.attributes_exports; exports.getLangWatchLogger = _chunk2UTO2QPLjs.getLangWatchLogger; exports.getLangWatchTracer = _chunkA43BYF5Qjs.getLangWatchTracer; exports.logger = logger;
|
|
161
161
|
//# sourceMappingURL=index.js.map
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["/home/runner/work/langwatch/langwatch/typescript-sdk/dist/index.js","../src/client-sdk/services/traces/types.ts","../src/client-sdk/services/traces/tracing/tracer.ts","../src/client-sdk/services/traces/service.ts","../src/client-sdk/services/traces/facade.ts","../src/client-sdk/index.ts","../src/index.ts"],"names":[],"mappings":"AAAA;AACE;AACA;AACA;AACA;AACA;AACF,sDAA4B;AAC5B;AACE;AACF,sDAA4B;AAC5B;AACE;AACF,sDAA4B;AAC5B;AACE;AACA;AACF,sDAA4B;AAC5B;AACE;
|
|
1
|
+
{"version":3,"sources":["/home/runner/work/langwatch/langwatch/typescript-sdk/dist/index.js","../src/client-sdk/services/traces/types.ts","../src/client-sdk/services/traces/tracing/tracer.ts","../src/client-sdk/services/traces/service.ts","../src/client-sdk/services/traces/facade.ts","../src/client-sdk/index.ts","../src/index.ts"],"names":[],"mappings":"AAAA;AACE;AACA;AACA;AACA;AACA;AACF,sDAA4B;AAC5B;AACE;AACF,sDAA4B;AAC5B;AACE;AACA;AACF,sDAA4B;AAC5B;AACE;AACA;AACA;AACF,sDAA4B;AAC5B;AACE;AACF,sDAA4B;AAC5B;AACE;AACA;AACA;AACF,sDAA4B;AAC5B,+BAA4B;AAC5B,+BAA4B;AAC5B;AACE;AACA;AACA;AACA;AACA;AACF,sDAA4B;AAC5B;AACA;ACvBO,IAAM,YAAA,EAAN,MAAA,QAA0B,MAAM;AAAA,EACrC,WAAA,CACE,OAAA,EACgB,SAAA,EACA,aAAA,EAChB;AACA,IAAA,KAAA,CAAM,OAAO,CAAA;AAHG,IAAA,IAAA,CAAA,UAAA,EAAA,SAAA;AACA,IAAA,IAAA,CAAA,cAAA,EAAA,aAAA;AAGhB,IAAA,IAAA,CAAK,KAAA,EAAO,aAAA;AAAA,EACd;AACF,CAAA;ADuBA;AACA;AE5CO,IAAM,OAAA,EAAS,iDAAA,CAAmB,EAAA;AF8CR;AACA;AGnCN;AAGW,EAAA;AACpB,IAAA;AAKP,IAAA;AACL,MAAA;AACA,MAAA;AACF,IAAA;AACF,EAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAQ0C,EAAA;AApC5C,IAAA;AAsCa,IAAA;AAGC,IAAA;AACmB,MAAA;AAC3B,MAAA;AACA,MAAA;AACF,IAAA;AACF,EAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAY6B,EAAA;AACH,IAAA;AACd,MAAA;AACA,QAAA;AACA,UAAA;AACN,QAAA;AACF,MAAA;AACO,MAAA;AACR,IAAA;AAEU,IAAA;AACW,MAAA;AACtB,IAAA;AAEO,IAAA;AACT,EAAA;AACF;AHsBiC;AACA;AIjGjC;AAI0B;AAGY,EAAA;AAF3B,IAAA;AAGS,IAAA;AAClB,EAAA;AAE+E,EAAA;AACjE,IAAA;AACd,EAAA;AACF;AATW;AJwGsB;AACA;AK9GjC;AAgBuB;AAMkC,EAAA;AANlD,IAAA;AAhBP,IAAA;AAuBmB,IAAA;AACE,IAAA;AAEH,IAAA;AACZ,MAAA;AACA,MAAA;AACiB,MAAA;AACnB,IAAA;AAEmB,IAAA;AACM,MAAA;AACE,MAAA;AAE1B,IAAA;AACiB,IAAA;AACpB,EAAA;AAEoC,EAAA;AACf,IAAA;AACrB,EAAA;AAgBF;AA1CO;AA4BgB;AACnB,EAAA;AACA,EAAA;AACA,EAAA;AAKiB;AApDrB,EAAA;AAqDW,EAAA;AACG,IAAA;AACY,IAAA;AACtB,EAAA;AACF;ALwF+B;AACA;AMnIX;AACpB,EAAA;AACA,EAAA;AACF;ANqIiC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA","file":"/home/runner/work/langwatch/langwatch/typescript-sdk/dist/index.js","sourcesContent":[null,"import type { paths } from \"@/internal/generated/openapi/api-client\";\n\nexport interface GetTraceParams {\n includeSpans?: boolean;\n}\n\nexport type GetTraceResponse = NonNullable<\n paths[\"/api/trace/{id}\"][\"get\"][\"responses\"][\"200\"][\"content\"][\"application/json\"]\n>;\n\n/**\n * Custom error class for Traces API operations.\n * Provides context about the failed operation and the original error.\n */\nexport class TracesError extends Error {\n constructor(\n message: string,\n public readonly operation: string,\n public readonly originalError?: any,\n ) {\n super(message);\n this.name = \"TracesError\";\n }\n}\n","import { LANGWATCH_SDK_NAME_CLIENT, LANGWATCH_SDK_VERSION } from \"@/internal/constants\";\nimport { getLangWatchTracer } from \"@/observability-sdk/tracer\";\n\nexport const tracer = getLangWatchTracer(`${LANGWATCH_SDK_NAME_CLIENT}.traces`, LANGWATCH_SDK_VERSION);\n","import { createTracingProxy } from \"@/client-sdk/tracing/create-tracing-proxy\";\nimport { type InternalConfig } from \"@/client-sdk/types\";\nimport { type GetTraceParams, TracesError, type GetTraceResponse } from \"./types\";\nimport { tracer } from \"./tracing\";\n\n/**\n * Service for managing trace resources via the Langwatch API.\n * Constructor creates a proxy that wraps the service and traces all methods.\n *\n * Responsibilities:\n * - Retrieving trace data\n * - Error handling with contextual information\n *\n * All methods return trace response objects directly.\n */\nexport class TracesService {\n private config: InternalConfig;\n\n constructor(config: InternalConfig) {\n this.config = config;\n\n /**\n * Wraps the service in a tracing proxy via the decorator.\n */\n return createTracingProxy(\n this as TracesService,\n tracer,\n );\n }\n\n /**\n * Handles API errors by throwing a TracesError with operation context.\n * @param operation Description of the operation being performed.\n * @param error The error object returned from the API client.\n * @throws {TracesError}\n */\n private handleApiError(operation: string, error: any): never {\n const errorMessage =\n typeof error === \"string\"\n ? error\n : error?.error ?? error?.message ?? \"Unknown error occurred\";\n throw new TracesError(\n `Failed to ${operation}: ${errorMessage}`,\n operation,\n error,\n );\n }\n\n /**\n * Retrieves a trace by its ID.\n * @param traceId The trace's unique identifier.\n * @param params Optional parameters for the request.\n * @returns The trace response object.\n * @throws {TracesError} If the API call fails.\n */\n async get(\n traceId: string,\n params?: GetTraceParams,\n ): Promise<GetTraceResponse> {\n const { data, error } = await this.config.langwatchApiClient.GET(\"/api/trace/{id}\", {\n params: {\n path: {\n id: traceId,\n },\n },\n query: params,\n });\n\n if (error) {\n this.handleApiError(\"get trace\", error);\n }\n\n return data;\n }\n}\n","import { type InternalConfig } from \"../../types\";\nimport { TracesService } from \"./service\";\nimport { type GetTraceParams, type GetTraceResponse } from \"./types\";\n\nexport class TracesFacade {\n readonly #service: TracesService;\n\n constructor(config: InternalConfig) {\n this.#service = new TracesService(config);\n }\n\n async get(traceId: string, params?: GetTraceParams): Promise<GetTraceResponse> {\n return this.#service.get(traceId, params);\n }\n}\n","import { PromptsFacade, PromptsApiService } from \"./services/prompts\";\nimport { LocalPromptsService } from \"./services/prompts/local-prompts.service\";\nimport { type InternalConfig } from \"./types\";\nimport { createLangWatchApiClient, type LangwatchApiClient } from \"../internal/api/client\";\nimport { type Logger, NoOpLogger } from \"../logger\";\nimport { TracesFacade } from \"./services/traces/facade\";\nimport { DEFAULT_ENDPOINT } from \"@/internal/constants\";\n\nexport interface LangWatchConstructorOptions {\n apiKey?: string;\n endpoint?: string;\n options?: {\n logger?: Logger;\n };\n}\n\nexport class LangWatch {\n private readonly config: InternalConfig;\n\n readonly prompts: PromptsFacade;\n readonly traces: TracesFacade;\n\n constructor(options: LangWatchConstructorOptions = {}) {\n const apiKey = options.apiKey ?? process.env.LANGWATCH_API_KEY ?? \"\";\n const endpoint = options.endpoint ?? process.env.LANGWATCH_ENDPOINT ?? DEFAULT_ENDPOINT;\n\n this.config = this.#createInternalConfig({\n apiKey,\n endpoint,\n options: options.options,\n });\n\n this.prompts = new PromptsFacade({\n promptsApiService: new PromptsApiService(this.config),\n localPromptsService: new LocalPromptsService(),\n ...this.config,\n });\n this.traces = new TracesFacade(this.config);\n }\n\n get apiClient(): LangwatchApiClient {\n return this.config.langwatchApiClient;\n }\n\n #createInternalConfig({\n apiKey,\n endpoint,\n options,\n }: {\n apiKey: string;\n endpoint: string;\n options?: LangWatchConstructorOptions[\"options\"];\n }): InternalConfig {\n return {\n logger: options?.logger ?? new NoOpLogger(),\n langwatchApiClient: createLangWatchApiClient(apiKey, endpoint),\n };\n }\n}\n","import { ConsoleLogger, NoOpLogger } from \"./logger\";\n\nexport {\n getLangWatchTracer,\n getLangWatchLogger,\n attributes,\n} from \"./observability-sdk\";\n\nexport {\n FilterableBatchSpanProcessor,\n type SpanProcessingExcludeRule,\n} from \"./observability-sdk/processors\";\nexport { LangWatchExporter } from \"./observability-sdk/exporters\";\nexport { LangWatch } from \"./client-sdk\";\n\nexport const logger = {\n ConsoleLogger,\n NoOpLogger,\n};\n"]}
|
package/dist/index.mjs
CHANGED
|
@@ -4,22 +4,22 @@ import {
|
|
|
4
4
|
PromptsFacade,
|
|
5
5
|
createLangWatchApiClient,
|
|
6
6
|
createTracingProxy
|
|
7
|
-
} from "./chunk-
|
|
7
|
+
} from "./chunk-6VUZPNOC.mjs";
|
|
8
8
|
import {
|
|
9
9
|
FilterableBatchSpanProcessor
|
|
10
10
|
} from "./chunk-FEL5FLHA.mjs";
|
|
11
|
-
import {
|
|
12
|
-
getLangWatchTracer
|
|
13
|
-
} from "./chunk-DQU2PZAL.mjs";
|
|
14
11
|
import {
|
|
15
12
|
LangWatchTraceExporter,
|
|
16
13
|
getLangWatchLogger
|
|
17
|
-
} from "./chunk-
|
|
14
|
+
} from "./chunk-XBHIDR76.mjs";
|
|
18
15
|
import {
|
|
19
16
|
DEFAULT_ENDPOINT,
|
|
20
17
|
LANGWATCH_SDK_NAME_CLIENT,
|
|
21
18
|
LANGWATCH_SDK_VERSION
|
|
22
|
-
} from "./chunk-
|
|
19
|
+
} from "./chunk-SMUOMBKY.mjs";
|
|
20
|
+
import {
|
|
21
|
+
getLangWatchTracer
|
|
22
|
+
} from "./chunk-WHPBZSTS.mjs";
|
|
23
23
|
import {
|
|
24
24
|
ConsoleLogger,
|
|
25
25
|
NoOpLogger,
|
|
@@ -4,11 +4,11 @@ import {
|
|
|
4
4
|
import {
|
|
5
5
|
PromptsApiService,
|
|
6
6
|
PromptsError
|
|
7
|
-
} from "./chunk-
|
|
7
|
+
} from "./chunk-6VUZPNOC.mjs";
|
|
8
8
|
import "./chunk-FEL5FLHA.mjs";
|
|
9
|
-
import "./chunk-
|
|
10
|
-
import "./chunk-
|
|
11
|
-
import "./chunk-
|
|
9
|
+
import "./chunk-XBHIDR76.mjs";
|
|
10
|
+
import "./chunk-SMUOMBKY.mjs";
|
|
11
|
+
import "./chunk-WHPBZSTS.mjs";
|
|
12
12
|
import "./chunk-I2SOBPAF.mjs";
|
|
13
13
|
import "./chunk-O6D3W3PG.mjs";
|
|
14
14
|
import "./chunk-BTBSMJTY.mjs";
|
|
@@ -145,4 +145,4 @@ var listCommand = async () => {
|
|
|
145
145
|
export {
|
|
146
146
|
listCommand
|
|
147
147
|
};
|
|
148
|
-
//# sourceMappingURL=list-
|
|
148
|
+
//# sourceMappingURL=list-4BFJIHYB.mjs.map
|
|
@@ -4,11 +4,11 @@ var _chunkF6E4XQQUjs = require('./chunk-F6E4XQQU.js');
|
|
|
4
4
|
|
|
5
5
|
|
|
6
6
|
|
|
7
|
-
var
|
|
7
|
+
var _chunkFISQBF2Pjs = require('./chunk-FISQBF2P.js');
|
|
8
8
|
require('./chunk-SNDTNU3T.js');
|
|
9
|
-
require('./chunk-
|
|
10
|
-
require('./chunk-
|
|
11
|
-
require('./chunk-
|
|
9
|
+
require('./chunk-2UTO2QPL.js');
|
|
10
|
+
require('./chunk-NQ7TYHRT.js');
|
|
11
|
+
require('./chunk-A43BYF5Q.js');
|
|
12
12
|
require('./chunk-CKIZDPIJ.js');
|
|
13
13
|
require('./chunk-WAAQLJ67.js');
|
|
14
14
|
require('./chunk-AZHZ4NB4.js');
|
|
@@ -79,7 +79,7 @@ var formatRelativeTime = (dateString) => {
|
|
|
79
79
|
var listCommand = async () => {
|
|
80
80
|
try {
|
|
81
81
|
_chunkF6E4XQQUjs.checkApiKey.call(void 0, );
|
|
82
|
-
const promptsApiService = new (0,
|
|
82
|
+
const promptsApiService = new (0, _chunkFISQBF2Pjs.PromptsApiService)();
|
|
83
83
|
const spinner = _ora2.default.call(void 0, "Fetching prompts from server...").start();
|
|
84
84
|
try {
|
|
85
85
|
const allPrompts = await promptsApiService.getAll();
|
|
@@ -118,7 +118,7 @@ var listCommand = async () => {
|
|
|
118
118
|
);
|
|
119
119
|
} catch (error) {
|
|
120
120
|
spinner.fail();
|
|
121
|
-
if (error instanceof
|
|
121
|
+
if (error instanceof _chunkFISQBF2Pjs.PromptsError) {
|
|
122
122
|
console.error(_chalk2.default.red(`Error: ${error.message}`));
|
|
123
123
|
} else {
|
|
124
124
|
console.error(
|
|
@@ -130,7 +130,7 @@ var listCommand = async () => {
|
|
|
130
130
|
process.exit(1);
|
|
131
131
|
}
|
|
132
132
|
} catch (error) {
|
|
133
|
-
if (error instanceof
|
|
133
|
+
if (error instanceof _chunkFISQBF2Pjs.PromptsError) {
|
|
134
134
|
console.error(_chalk2.default.red(`Error: ${error.message}`));
|
|
135
135
|
} else {
|
|
136
136
|
console.error(
|
|
@@ -145,4 +145,4 @@ var listCommand = async () => {
|
|
|
145
145
|
|
|
146
146
|
|
|
147
147
|
exports.listCommand = listCommand;
|
|
148
|
-
//# sourceMappingURL=list-
|
|
148
|
+
//# sourceMappingURL=list-VWXENE3O.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["/home/runner/work/langwatch/langwatch/typescript-sdk/dist/list-
|
|
1
|
+
{"version":3,"sources":["/home/runner/work/langwatch/langwatch/typescript-sdk/dist/list-VWXENE3O.js","../src/cli/commands/list.ts"],"names":[],"mappings":"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","file":"/home/runner/work/langwatch/langwatch/typescript-sdk/dist/list-VWXENE3O.js","sourcesContent":[null,"import chalk from \"chalk\";\nimport ora from \"ora\";\nimport { PromptsApiService, PromptsError } from \"@/client-sdk/services/prompts\";\nimport { checkApiKey } from \"../utils/apiKey\";\n\n// Helper to strip ANSI codes for length calculation\nconst stripAnsi = (str: string): string => {\n // eslint-disable-next-line no-control-regex\n return str.replace(/\\u001b\\[[0-9;]*m/g, \"\");\n};\n\n// Simple table formatting helper\nconst formatTable = (\n data: Array<Record<string, string>>,\n headers: string[],\n): void => {\n if (data.length === 0) {\n console.log(chalk.gray(\"No prompts found\"));\n return;\n }\n\n // Calculate column widths (strip ANSI codes for accurate length calculation)\n const colWidths: Record<string, number> = {};\n headers.forEach((header) => {\n colWidths[header] = Math.max(\n header.length,\n ...data.map((row) => stripAnsi(row[header] ?? \"\").length),\n );\n });\n\n // Print header\n const headerRow = headers\n .map((header) => chalk.bold(header.padEnd(colWidths[header]!)))\n .join(\" \");\n console.log(headerRow);\n\n // Print separator\n const separator = headers\n .map((header) => \"─\".repeat(colWidths[header]!))\n .join(\" \");\n console.log(chalk.gray(separator));\n\n // Print data rows\n data.forEach((row) => {\n const dataRow = headers\n .map((header) => {\n const value = row[header] ?? \"\";\n const strippedLength = stripAnsi(value).length;\n const paddingNeeded = colWidths[header]! - strippedLength;\n const paddedValue = value + \" \".repeat(Math.max(0, paddingNeeded));\n\n // Color coding\n if (header === \"Name\") {\n return chalk.cyan(paddedValue);\n } else if (header === \"Version\") {\n return chalk.green(paddedValue);\n } else if (header === \"Model\") {\n return chalk.yellow(paddedValue);\n } else {\n return chalk.gray(paddedValue);\n }\n })\n .join(\" \");\n console.log(dataRow);\n });\n};\n\nconst formatRelativeTime = (dateString: string): string => {\n const date = new Date(dateString);\n const now = new Date();\n const diffMs = now.getTime() - date.getTime();\n\n const seconds = Math.floor(diffMs / 1000);\n const minutes = Math.floor(seconds / 60);\n const hours = Math.floor(minutes / 60);\n const days = Math.floor(hours / 24);\n const months = Math.floor(days / 30);\n const years = Math.floor(days / 365);\n\n if (years > 0) return `${years}y ago`;\n if (months > 0) return `${months}mo ago`;\n if (days > 0) return `${days}d ago`;\n if (hours > 0) return `${hours}h ago`;\n if (minutes > 0) return `${minutes}m ago`;\n return `${seconds}s ago`;\n};\n\nexport const listCommand = async (): Promise<void> => {\n try {\n // Check API key before doing anything else\n checkApiKey();\n\n // Get prompts API service\n const promptsApiService = new PromptsApiService();\n\n const spinner = ora(\"Fetching prompts from server...\").start();\n\n try {\n // Fetch all prompts\n const allPrompts = await promptsApiService.getAll();\n const prompts = allPrompts.filter((prompt) => prompt.version);\n const draftPrompts = allPrompts.filter((prompt) => !prompt.version);\n\n spinner.succeed(\n `Found ${prompts.length} published prompt${\n prompts.length !== 1 ? \"s\" : \"\"\n } ` +\n chalk.gray(\n `(+${draftPrompts.length} draft${\n draftPrompts.length !== 1 ? \"s\" : \"\"\n })`,\n ),\n );\n\n if (prompts.length === 0) {\n console.log();\n console.log(chalk.gray(\"No prompts found on the server.\"));\n console.log(chalk.gray(\"Create your first prompt with:\"));\n console.log(chalk.cyan(\" langwatch prompt init\"));\n return;\n }\n\n console.log();\n\n // Format prompts for table display\n const tableData = prompts.map((prompt) => ({\n Name: prompt.handle ?? `${prompt.name} ` + chalk.gray(`(${prompt.id})`),\n Version: prompt.version ? `${prompt.version}` : \"N/A\",\n Model: prompt.model ?? \"N/A\",\n Updated: formatRelativeTime(prompt.updatedAt),\n }));\n\n // Display table\n formatTable(tableData, [\"Name\", \"Version\", \"Model\", \"Updated\"]);\n\n console.log();\n console.log(\n chalk.gray(\n `Use ${chalk.cyan(\n \"langwatch prompt add <name>\",\n )} to add a prompt to your project`,\n ),\n );\n } catch (error) {\n spinner.fail();\n if (error instanceof PromptsError) {\n console.error(chalk.red(`Error: ${error.message}`));\n } else {\n console.error(\n chalk.red(\n `Error fetching prompts: ${\n error instanceof Error ? error.message : \"Unknown error\"\n }`,\n ),\n );\n }\n process.exit(1);\n }\n } catch (error) {\n if (error instanceof PromptsError) {\n console.error(chalk.red(`Error: ${error.message}`));\n } else {\n console.error(\n chalk.red(\n `Unexpected error: ${\n error instanceof Error ? error.message : \"Unknown error\"\n }`,\n ),\n );\n }\n process.exit(1);\n }\n};\n"]}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
"use strict";Object.defineProperty(exports, "__esModule", {value: true}); function _interopRequireWildcard(obj) { if (obj && obj.__esModule) { return obj; } else { var newObj = {}; if (obj != null) { for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) { newObj[key] = obj[key]; } } } newObj.default = obj; return newObj; } } function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
2
2
|
|
|
3
|
-
var
|
|
3
|
+
var _chunkNQ7TYHRTjs = require('./chunk-NQ7TYHRT.js');
|
|
4
4
|
require('./chunk-OHM7JUMR.js');
|
|
5
5
|
|
|
6
6
|
// src/cli/commands/login.ts
|
|
@@ -11,7 +11,7 @@ var _ora = require('ora'); var _ora2 = _interopRequireDefault(_ora);
|
|
|
11
11
|
var _prompts = require('prompts'); var _prompts2 = _interopRequireDefault(_prompts);
|
|
12
12
|
var getEndpoint = () => {
|
|
13
13
|
var _a;
|
|
14
|
-
return (_a = process.env.LANGWATCH_ENDPOINT) != null ? _a :
|
|
14
|
+
return (_a = process.env.LANGWATCH_ENDPOINT) != null ? _a : _chunkNQ7TYHRTjs.DEFAULT_ENDPOINT;
|
|
15
15
|
};
|
|
16
16
|
var updateEnvFile = (apiKey) => {
|
|
17
17
|
const envPath = path.join(process.cwd(), ".env");
|
|
@@ -111,4 +111,4 @@ var loginCommand = async () => {
|
|
|
111
111
|
|
|
112
112
|
|
|
113
113
|
exports.loginCommand = loginCommand;
|
|
114
|
-
//# sourceMappingURL=login-
|
|
114
|
+
//# sourceMappingURL=login-6PM2MUZS.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["/home/runner/work/langwatch/langwatch/typescript-sdk/dist/login-
|
|
1
|
+
{"version":3,"sources":["/home/runner/work/langwatch/langwatch/typescript-sdk/dist/login-6PM2MUZS.js","../src/cli/commands/login.ts"],"names":[],"mappings":"AAAA;AACE;AACF,sDAA4B;AAC5B,+BAA4B;AAC5B;AACA;ACLA,+DAAoB;AACpB,uEAAsB;AACtB,4EAAkB;AAClB,oEAAgB;AAChB,oFAAoB;AAGpB,IAAM,YAAA,EAAc,CAAA,EAAA,GAAc;AAPlC,EAAA,IAAA,EAAA;AAQE,EAAA,OAAA,CAAO,GAAA,EAAA,OAAA,CAAQ,GAAA,CAAI,kBAAA,EAAA,GAAZ,KAAA,EAAA,GAAA,EAAkC,iCAAA;AAC3C,CAAA;AAEA,IAAM,cAAA,EAAgB,CACpB,MAAA,EAAA,GACyD;AACzD,EAAA,MAAM,QAAA,EAAe,IAAA,CAAA,IAAA,CAAK,OAAA,CAAQ,GAAA,CAAI,CAAA,EAAG,MAAM,CAAA;AAG/C,EAAA,GAAA,CAAI,CAAI,EAAA,CAAA,UAAA,CAAW,OAAO,CAAA,EAAG;AAE3B,IAAG,EAAA,CAAA,aAAA,CAAc,OAAA,EAAS,CAAA,kBAAA,EAAqB,MAAM,CAAA;AAAA,CAAI,CAAA;AACzD,IAAA,OAAO,EAAE,OAAA,EAAS,IAAA,EAAM,OAAA,EAAS,KAAA,EAAO,IAAA,EAAM,QAAQ,CAAA;AAAA,EACxD;AAGA,EAAA,MAAM,QAAA,EAAa,EAAA,CAAA,YAAA,CAAa,OAAA,EAAS,OAAO,CAAA;AAChD,EAAA,MAAM,MAAA,EAAQ,OAAA,CAAQ,KAAA,CAAM,IAAI,CAAA;AAGhC,EAAA,IAAI,MAAA,EAAQ,KAAA;AACZ,EAAA,MAAM,aAAA,EAAe,KAAA,CAAM,GAAA,CAAI,CAAC,IAAA,EAAA,GAAS;AACvC,IAAA,GAAA,CAAI,IAAA,CAAK,UAAA,CAAW,oBAAoB,CAAA,EAAG;AACzC,MAAA,MAAA,EAAQ,IAAA;AACR,MAAA,OAAO,CAAA,kBAAA,EAAqB,MAAM,CAAA,CAAA;AACpC,IAAA;AACO,IAAA;AACR,EAAA;AAEW,EAAA;AAEoB,IAAA;AACV,MAAA;AACb,IAAA;AACiB,MAAA;AACxB,IAAA;AACF,EAAA;AAEuC,EAAA;AACL,EAAA;AACpC;AAEuD;AACjD,EAAA;AACqB,IAAA;AACf,IAAA;AACA,MAAA;AACJ,QAAA;AACF,MAAA;AACF,IAAA;AACY,IAAA;AAGiB,IAAA;AACF,IAAA;AAEQ,IAAA;AAGf,IAAA;AAEhB,IAAA;AAC+B,MAAA;AACf,MAAA;AACc,MAAA;AAClB,IAAA;AACD,MAAA;AACY,MAAA;AAC3B,IAAA;AAEY,IAAA;AACW,IAAA;AACA,IAAA;AACA,IAAA;AACX,IAAA;AAGmB,IAAA;AACvB,MAAA;AACA,MAAA;AACG,MAAA;AACoB,MAAA;AACI,QAAA;AACtB,UAAA;AACT,QAAA;AACuB,QAAA;AACd,UAAA;AACT,QAAA;AACO,QAAA;AACT,MAAA;AACD,IAAA;AAEqB,IAAA;AACK,MAAA;AACX,MAAA;AAChB,IAAA;AAEoC,IAAA;AAGJ,IAAA;AAEpB,IAAA;AACY,IAAA;AAED,IAAA;AACE,MAAA;AACK,IAAA;AACL,MAAA;AAClB,IAAA;AACkB,MAAA;AACzB,IAAA;AAEY,IAAA;AACY,IAAA;AACD,IAAA;AACA,IAAA;AACT,EAAA;AACN,IAAA;AACA,MAAA;AAEF,QAAA;AAEJ,MAAA;AACF,IAAA;AACc,IAAA;AAChB,EAAA;AACF;ADzByC;AACA;AACA","file":"/home/runner/work/langwatch/langwatch/typescript-sdk/dist/login-6PM2MUZS.js","sourcesContent":[null,"import * as fs from \"fs\";\nimport * as path from \"path\";\nimport chalk from \"chalk\";\nimport ora from \"ora\";\nimport prompts from \"prompts\";\nimport { DEFAULT_ENDPOINT } from \"@/internal/constants\";\n\nconst getEndpoint = (): string => {\n return process.env.LANGWATCH_ENDPOINT ?? DEFAULT_ENDPOINT;\n};\n\nconst updateEnvFile = (\n apiKey: string,\n): { created: boolean; updated: boolean; path: string } => {\n const envPath = path.join(process.cwd(), \".env\");\n\n // Check if .env exists\n if (!fs.existsSync(envPath)) {\n // Create new .env file\n fs.writeFileSync(envPath, `LANGWATCH_API_KEY=${apiKey}\\n`);\n return { created: true, updated: false, path: envPath };\n }\n\n // Read existing .env file\n const content = fs.readFileSync(envPath, \"utf-8\");\n const lines = content.split(\"\\n\");\n\n // Check if LANGWATCH_API_KEY already exists and update it\n let found = false;\n const updatedLines = lines.map((line) => {\n if (line.startsWith(\"LANGWATCH_API_KEY=\")) {\n found = true;\n return `LANGWATCH_API_KEY=${apiKey}`;\n }\n return line;\n });\n\n if (!found) {\n // Add to end of file\n if (content.endsWith(\"\\n\") || content === \"\") {\n updatedLines.push(`LANGWATCH_API_KEY=${apiKey}`);\n } else {\n updatedLines.push(\"\", `LANGWATCH_API_KEY=${apiKey}`);\n }\n }\n\n fs.writeFileSync(envPath, updatedLines.join(\"\\n\"));\n return { created: false, updated: found, path: envPath };\n};\n\nexport const loginCommand = async (): Promise<void> => {\n try {\n console.log(chalk.blue(\"🔐 LangWatch Login\"));\n console.log(\n chalk.gray(\n \"This will open your browser to get an API key from LangWatch.\",\n ),\n );\n console.log();\n\n // Get the authorization URL\n const endpoint = getEndpoint();\n const authUrl = `${endpoint}/authorize`;\n\n console.log(chalk.cyan(`Opening: ${authUrl}`));\n\n // Open browser\n const spinner = ora(\"Opening browser...\").start();\n\n try {\n const open = (await import(\"open\")).default;\n await open(authUrl);\n spinner.succeed(\"Browser opened\");\n } catch (error) {\n spinner.fail(\"Failed to open browser\");\n console.log(chalk.yellow(`Please manually open: ${chalk.cyan(authUrl)}`));\n }\n\n console.log();\n console.log(chalk.gray(\"1. Log in to LangWatch in your browser\"));\n console.log(chalk.gray(\"2. Copy your API key\"));\n console.log(chalk.gray(\"3. Come back here and paste it\"));\n console.log();\n\n // Wait for user input using prompts library\n const response = await prompts({\n type: \"password\",\n name: \"apiKey\",\n message: \"Paste your API key here:\",\n validate: (value: string) => {\n if (!value || value.trim() === \"\") {\n return \"API key is required\";\n }\n if (value.length < 10) {\n return \"API key seems too short. Please check and try again.\";\n }\n return true;\n },\n });\n\n if (!response.apiKey) {\n console.log(chalk.yellow(\"Login cancelled\"));\n process.exit(0);\n }\n\n const apiKey = response.apiKey.trim();\n\n // Save to .env file\n const envResult = updateEnvFile(apiKey);\n\n console.log();\n console.log(chalk.green(\"✓ API key saved successfully!\"));\n\n if (envResult.created) {\n console.log(chalk.gray(`• Created .env file with your API key`));\n } else if (envResult.updated) {\n console.log(chalk.gray(`• Updated existing API key in .env file`));\n } else {\n console.log(chalk.gray(`• Added API key to existing .env file`));\n }\n\n console.log();\n console.log(chalk.green(\"🎉 You're all set! You can now use:\"));\n console.log(chalk.cyan(\" langwatch prompt add <name>\"));\n console.log(chalk.cyan(\" langwatch prompt sync\"));\n } catch (error) {\n console.error(\n chalk.red(\n `Error during login: ${\n error instanceof Error ? error.message : \"Unknown error\"\n }`,\n ),\n );\n process.exit(1);\n }\n};\n"]}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import {
|
|
2
2
|
DEFAULT_ENDPOINT
|
|
3
|
-
} from "./chunk-
|
|
3
|
+
} from "./chunk-SMUOMBKY.mjs";
|
|
4
4
|
import "./chunk-URTD2WOC.mjs";
|
|
5
5
|
|
|
6
6
|
// src/cli/commands/login.ts
|
|
@@ -111,4 +111,4 @@ var loginCommand = async () => {
|
|
|
111
111
|
export {
|
|
112
112
|
loginCommand
|
|
113
113
|
};
|
|
114
|
-
//# sourceMappingURL=login-
|
|
114
|
+
//# sourceMappingURL=login-CEO47GSW.mjs.map
|
|
@@ -7,14 +7,14 @@ var _chunkSNDTNU3Tjs = require('../chunk-SNDTNU3T.js');
|
|
|
7
7
|
|
|
8
8
|
|
|
9
9
|
|
|
10
|
-
var
|
|
10
|
+
var _chunk2UTO2QPLjs = require('../chunk-2UTO2QPL.js');
|
|
11
|
+
require('../chunk-NQ7TYHRT.js');
|
|
11
12
|
|
|
12
13
|
|
|
13
14
|
|
|
14
15
|
|
|
15
16
|
|
|
16
|
-
var
|
|
17
|
-
require('../chunk-ZNWSX2QV.js');
|
|
17
|
+
var _chunkA43BYF5Qjs = require('../chunk-A43BYF5Q.js');
|
|
18
18
|
|
|
19
19
|
|
|
20
20
|
|
|
@@ -38,5 +38,5 @@ require('../chunk-OHM7JUMR.js');
|
|
|
38
38
|
|
|
39
39
|
|
|
40
40
|
|
|
41
|
-
exports.DataCapturePresets = _chunkSNDTNU3Tjs.DataCapturePresets; exports.FilterableBatchSpanProcessor = _chunkSNDTNU3Tjs.FilterableBatchSpanProcessor; exports.LangWatchExporter =
|
|
41
|
+
exports.DataCapturePresets = _chunkSNDTNU3Tjs.DataCapturePresets; exports.FilterableBatchSpanProcessor = _chunkSNDTNU3Tjs.FilterableBatchSpanProcessor; exports.LangWatchExporter = _chunk2UTO2QPLjs.LangWatchTraceExporter; exports.LangWatchLogsExporter = _chunk2UTO2QPLjs.LangWatchLogsExporter; exports.LangWatchTraceExporter = _chunk2UTO2QPLjs.LangWatchTraceExporter; exports.attributes = _chunkCKIZDPIJjs.attributes_exports; exports.createLangWatchSpan = _chunkA43BYF5Qjs.createLangWatchSpan; exports.getDataCaptureMode = _chunkCKIZDPIJjs.getDataCaptureMode; exports.getLangWatchLogger = _chunk2UTO2QPLjs.getLangWatchLogger; exports.getLangWatchLoggerFromProvider = _chunk2UTO2QPLjs.getLangWatchLoggerFromProvider; exports.getLangWatchTracer = _chunkA43BYF5Qjs.getLangWatchTracer; exports.getLangWatchTracerFromProvider = _chunkA43BYF5Qjs.getLangWatchTracerFromProvider; exports.shouldCaptureInput = _chunkCKIZDPIJjs.shouldCaptureInput; exports.shouldCaptureOutput = _chunkCKIZDPIJjs.shouldCaptureOutput; exports.spanTypes = _chunkA43BYF5Qjs.spanTypes;
|
|
42
42
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["/home/runner/work/langwatch/langwatch/typescript-sdk/dist/observability-sdk/index.js"],"names":[],"mappings":"AAAA;AACE;AACA;AACF,uDAA6B;AAC7B;AACE;AACA;AACA;AACA;AACF,uDAA6B;AAC7B;AACE;AACA;AACA;AACA;AACF,uDAA6B;AAC7B
|
|
1
|
+
{"version":3,"sources":["/home/runner/work/langwatch/langwatch/typescript-sdk/dist/observability-sdk/index.js"],"names":[],"mappings":"AAAA;AACE;AACA;AACF,uDAA6B;AAC7B;AACE;AACA;AACA;AACA;AACF,uDAA6B;AAC7B,gCAA6B;AAC7B;AACE;AACA;AACA;AACA;AACF,uDAA6B;AAC7B;AACE;AACA;AACA;AACA;AACF,uDAA6B;AAC7B,gCAA6B;AAC7B;AACE;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACF,4hCAAC","file":"/home/runner/work/langwatch/langwatch/typescript-sdk/dist/observability-sdk/index.js"}
|
|
@@ -2,19 +2,19 @@ import {
|
|
|
2
2
|
DataCapturePresets,
|
|
3
3
|
FilterableBatchSpanProcessor
|
|
4
4
|
} from "../chunk-FEL5FLHA.mjs";
|
|
5
|
-
import {
|
|
6
|
-
createLangWatchSpan,
|
|
7
|
-
getLangWatchTracer,
|
|
8
|
-
getLangWatchTracerFromProvider,
|
|
9
|
-
spanTypes
|
|
10
|
-
} from "../chunk-DQU2PZAL.mjs";
|
|
11
5
|
import {
|
|
12
6
|
LangWatchLogsExporter,
|
|
13
7
|
LangWatchTraceExporter,
|
|
14
8
|
getLangWatchLogger,
|
|
15
9
|
getLangWatchLoggerFromProvider
|
|
16
|
-
} from "../chunk-
|
|
17
|
-
import "../chunk-
|
|
10
|
+
} from "../chunk-XBHIDR76.mjs";
|
|
11
|
+
import "../chunk-SMUOMBKY.mjs";
|
|
12
|
+
import {
|
|
13
|
+
createLangWatchSpan,
|
|
14
|
+
getLangWatchTracer,
|
|
15
|
+
getLangWatchTracerFromProvider,
|
|
16
|
+
spanTypes
|
|
17
|
+
} from "../chunk-WHPBZSTS.mjs";
|
|
18
18
|
import {
|
|
19
19
|
attributes_exports,
|
|
20
20
|
getDataCaptureMode,
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
"use strict";Object.defineProperty(exports, "__esModule", {value: true});
|
|
2
2
|
|
|
3
3
|
|
|
4
|
-
var
|
|
4
|
+
var _chunkA43BYF5Qjs = require('../../../chunk-A43BYF5Q.js');
|
|
5
5
|
|
|
6
6
|
|
|
7
7
|
|
|
@@ -31,7 +31,7 @@ var LangWatchCallbackHandler = class extends _base.BaseCallbackHandler {
|
|
|
31
31
|
constructor() {
|
|
32
32
|
super(...arguments);
|
|
33
33
|
this.name = "LangWatchCallbackHandler";
|
|
34
|
-
this.tracer =
|
|
34
|
+
this.tracer = _chunkA43BYF5Qjs.getLangWatchTracer.call(void 0, "langwatch.instrumentation.langchain");
|
|
35
35
|
this.spans = {};
|
|
36
36
|
this.parentOf = {};
|
|
37
37
|
this.skipped = {};
|
|
@@ -362,7 +362,7 @@ function wrapNonScalarValues(value) {
|
|
|
362
362
|
if (value === null) return JSON.stringify(null);
|
|
363
363
|
if (typeof value === "string" || typeof value === "number" || typeof value === "boolean")
|
|
364
364
|
return value;
|
|
365
|
-
const chatMessages =
|
|
365
|
+
const chatMessages = _chunkA43BYF5Qjs.chatMessageSchema.array().safeParse(value);
|
|
366
366
|
if (Array.isArray(value) && chatMessages.success) {
|
|
367
367
|
return JSON.stringify({ type: "chat_messages", value: chatMessages.data });
|
|
368
368
|
}
|