promptfoo 0.112.0 → 0.112.3

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.
Files changed (209) hide show
  1. package/dist/package.json +6 -3
  2. package/dist/src/app/assets/index-BFUlbBKg.css +1 -0
  3. package/dist/src/app/assets/{index-lpggajev.js → index-CHWpe2P4.js} +289 -289
  4. package/dist/src/app/assets/{index.es-BCrSgaQb.js → index.es-BGDEHdxg.js} +1 -1
  5. package/dist/src/app/assets/{source-map-support-DMmXzbdY.js → source-map-support-BR7TbsEY.js} +1 -1
  6. package/dist/src/app/assets/{sync-DKqIbjZq.js → sync-C4JKkKoZ.js} +1 -1
  7. package/dist/src/app/index.html +2 -2
  8. package/dist/src/assertions/index.js +2 -2
  9. package/dist/src/assertions/index.js.map +1 -1
  10. package/dist/src/commands/eval.d.ts.map +1 -1
  11. package/dist/src/commands/eval.js +3 -2
  12. package/dist/src/commands/eval.js.map +1 -1
  13. package/dist/src/commands/share.d.ts.map +1 -1
  14. package/dist/src/commands/share.js +5 -1
  15. package/dist/src/commands/share.js.map +1 -1
  16. package/dist/src/csv.d.ts.map +1 -1
  17. package/dist/src/csv.js +5 -5
  18. package/dist/src/csv.js.map +1 -1
  19. package/dist/src/evaluator.d.ts +9 -2
  20. package/dist/src/evaluator.d.ts.map +1 -1
  21. package/dist/src/evaluator.js +42 -12
  22. package/dist/src/evaluator.js.map +1 -1
  23. package/dist/src/evaluatorHelpers.d.ts.map +1 -1
  24. package/dist/src/evaluatorHelpers.js +14 -6
  25. package/dist/src/evaluatorHelpers.js.map +1 -1
  26. package/dist/src/matchers.js +3 -3
  27. package/dist/src/matchers.js.map +1 -1
  28. package/dist/src/prompts/index.js +2 -2
  29. package/dist/src/prompts/index.js.map +1 -1
  30. package/dist/src/providers/anthropic/messages.d.ts +4 -0
  31. package/dist/src/providers/anthropic/messages.d.ts.map +1 -1
  32. package/dist/src/providers/anthropic/messages.js +30 -1
  33. package/dist/src/providers/anthropic/messages.js.map +1 -1
  34. package/dist/src/providers/anthropic/types.d.ts +3 -0
  35. package/dist/src/providers/anthropic/types.d.ts.map +1 -1
  36. package/dist/src/providers/azure/assistant.js +2 -2
  37. package/dist/src/providers/azure/assistant.js.map +1 -1
  38. package/dist/src/providers/azure/chat.d.ts +5 -0
  39. package/dist/src/providers/azure/chat.d.ts.map +1 -1
  40. package/dist/src/providers/azure/chat.js +34 -7
  41. package/dist/src/providers/azure/chat.js.map +1 -1
  42. package/dist/src/providers/azure/types.d.ts +2 -0
  43. package/dist/src/providers/azure/types.d.ts.map +1 -1
  44. package/dist/src/providers/bedrock/nova-sonic.d.ts +17 -0
  45. package/dist/src/providers/bedrock/nova-sonic.d.ts.map +1 -0
  46. package/dist/src/providers/bedrock/nova-sonic.js +411 -0
  47. package/dist/src/providers/bedrock/nova-sonic.js.map +1 -0
  48. package/dist/src/providers/bedrock.d.ts +67 -1
  49. package/dist/src/providers/bedrock.d.ts.map +1 -1
  50. package/dist/src/providers/bedrock.js +31 -1
  51. package/dist/src/providers/bedrock.js.map +1 -1
  52. package/dist/src/providers/browser.js +2 -2
  53. package/dist/src/providers/browser.js.map +1 -1
  54. package/dist/src/providers/google/ai.studio.d.ts +4 -0
  55. package/dist/src/providers/google/ai.studio.d.ts.map +1 -1
  56. package/dist/src/providers/google/ai.studio.js +39 -2
  57. package/dist/src/providers/google/ai.studio.js.map +1 -1
  58. package/dist/src/providers/google/live.d.ts +0 -1
  59. package/dist/src/providers/google/live.d.ts.map +1 -1
  60. package/dist/src/providers/google/live.js +10 -1
  61. package/dist/src/providers/google/live.js.map +1 -1
  62. package/dist/src/providers/google/types.d.ts +3 -1
  63. package/dist/src/providers/google/types.d.ts.map +1 -1
  64. package/dist/src/providers/google/types.js.map +1 -1
  65. package/dist/src/providers/google/util.d.ts +11 -1
  66. package/dist/src/providers/google/util.d.ts.map +1 -1
  67. package/dist/src/providers/google/util.js +33 -2
  68. package/dist/src/providers/google/util.js.map +1 -1
  69. package/dist/src/providers/google/vertex.d.ts +4 -0
  70. package/dist/src/providers/google/vertex.d.ts.map +1 -1
  71. package/dist/src/providers/google/vertex.js +52 -1
  72. package/dist/src/providers/google/vertex.js.map +1 -1
  73. package/dist/src/providers/groq.d.ts +1 -0
  74. package/dist/src/providers/groq.d.ts.map +1 -1
  75. package/dist/src/providers/http.d.ts.map +1 -1
  76. package/dist/src/providers/http.js +6 -5
  77. package/dist/src/providers/http.js.map +1 -1
  78. package/dist/src/providers/litellm.d.ts +1 -0
  79. package/dist/src/providers/litellm.d.ts.map +1 -1
  80. package/dist/src/providers/mcp/client.d.ts +14 -0
  81. package/dist/src/providers/mcp/client.d.ts.map +1 -0
  82. package/dist/src/providers/mcp/client.js +144 -0
  83. package/dist/src/providers/mcp/client.js.map +1 -0
  84. package/dist/src/providers/mcp/transform.d.ts +8 -0
  85. package/dist/src/providers/mcp/transform.d.ts.map +1 -0
  86. package/dist/src/providers/mcp/transform.js +60 -0
  87. package/dist/src/providers/mcp/transform.js.map +1 -0
  88. package/dist/src/providers/mcp/types.d.ts +36 -0
  89. package/dist/src/providers/mcp/types.d.ts.map +1 -0
  90. package/dist/src/providers/mcp/types.js +6 -0
  91. package/dist/src/providers/mcp/types.js.map +1 -0
  92. package/dist/src/providers/openai/chat.d.ts +4 -0
  93. package/dist/src/providers/openai/chat.d.ts.map +1 -1
  94. package/dist/src/providers/openai/chat.js +31 -5
  95. package/dist/src/providers/openai/chat.js.map +1 -1
  96. package/dist/src/providers/openai/responses.d.ts.map +1 -1
  97. package/dist/src/providers/openai/responses.js +2 -1
  98. package/dist/src/providers/openai/responses.js.map +1 -1
  99. package/dist/src/providers/openai/types.d.ts +2 -0
  100. package/dist/src/providers/openai/types.d.ts.map +1 -1
  101. package/dist/src/providers/openai/util.d.ts.map +1 -1
  102. package/dist/src/providers/openai/util.js +2 -1
  103. package/dist/src/providers/openai/util.js.map +1 -1
  104. package/dist/src/providers/promptfoo.d.ts +2 -2
  105. package/dist/src/providers/promptfoo.d.ts.map +1 -1
  106. package/dist/src/providers/registry.d.ts.map +1 -1
  107. package/dist/src/providers/registry.js +15 -2
  108. package/dist/src/providers/registry.js.map +1 -1
  109. package/dist/src/providers/xai.d.ts +1 -0
  110. package/dist/src/providers/xai.d.ts.map +1 -1
  111. package/dist/src/redteam/commands/generate.d.ts.map +1 -1
  112. package/dist/src/redteam/commands/generate.js +5 -5
  113. package/dist/src/redteam/commands/generate.js.map +1 -1
  114. package/dist/src/redteam/commands/run.d.ts.map +1 -1
  115. package/dist/src/redteam/commands/run.js +8 -2
  116. package/dist/src/redteam/commands/run.js.map +1 -1
  117. package/dist/src/redteam/constants.d.ts +14 -1
  118. package/dist/src/redteam/constants.d.ts.map +1 -1
  119. package/dist/src/redteam/constants.js +45 -7
  120. package/dist/src/redteam/constants.js.map +1 -1
  121. package/dist/src/redteam/graders.d.ts.map +1 -1
  122. package/dist/src/redteam/graders.js +3 -0
  123. package/dist/src/redteam/graders.js.map +1 -1
  124. package/dist/src/redteam/index.d.ts +1 -1
  125. package/dist/src/redteam/index.d.ts.map +1 -1
  126. package/dist/src/redteam/index.js +7 -4
  127. package/dist/src/redteam/index.js.map +1 -1
  128. package/dist/src/redteam/plugins/agentic/constants.d.ts +3 -0
  129. package/dist/src/redteam/plugins/agentic/constants.d.ts.map +1 -0
  130. package/dist/src/redteam/plugins/agentic/constants.js +6 -0
  131. package/dist/src/redteam/plugins/agentic/constants.js.map +1 -0
  132. package/dist/src/redteam/plugins/agentic/memoryPoisoning.d.ts +17 -0
  133. package/dist/src/redteam/plugins/agentic/memoryPoisoning.d.ts.map +1 -0
  134. package/dist/src/redteam/plugins/agentic/memoryPoisoning.js +62 -0
  135. package/dist/src/redteam/plugins/agentic/memoryPoisoning.js.map +1 -0
  136. package/dist/src/redteam/plugins/base.d.ts +2 -1
  137. package/dist/src/redteam/plugins/base.d.ts.map +1 -1
  138. package/dist/src/redteam/plugins/base.js +8 -3
  139. package/dist/src/redteam/plugins/base.js.map +1 -1
  140. package/dist/src/redteam/plugins/custom.js +2 -2
  141. package/dist/src/redteam/plugins/custom.js.map +1 -1
  142. package/dist/src/redteam/plugins/index.d.ts.map +1 -1
  143. package/dist/src/redteam/plugins/index.js +2 -0
  144. package/dist/src/redteam/plugins/index.js.map +1 -1
  145. package/dist/src/redteam/plugins/intent.js +2 -2
  146. package/dist/src/redteam/plugins/intent.js.map +1 -1
  147. package/dist/src/redteam/providers/agentic/memoryPoisoning.d.ts +21 -0
  148. package/dist/src/redteam/providers/agentic/memoryPoisoning.d.ts.map +1 -0
  149. package/dist/src/redteam/providers/agentic/memoryPoisoning.js +87 -0
  150. package/dist/src/redteam/providers/agentic/memoryPoisoning.js.map +1 -0
  151. package/dist/src/redteam/providers/iterative.d.ts +5 -1
  152. package/dist/src/redteam/providers/iterative.d.ts.map +1 -1
  153. package/dist/src/redteam/providers/iterative.js +33 -12
  154. package/dist/src/redteam/providers/iterative.js.map +1 -1
  155. package/dist/src/redteam/providers/prompts.d.ts +1 -0
  156. package/dist/src/redteam/providers/prompts.d.ts.map +1 -1
  157. package/dist/src/redteam/providers/prompts.js +68 -1
  158. package/dist/src/redteam/providers/prompts.js.map +1 -1
  159. package/dist/src/redteam/strategies/index.js +2 -2
  160. package/dist/src/redteam/strategies/index.js.map +1 -1
  161. package/dist/src/redteam/types.d.ts +2 -0
  162. package/dist/src/redteam/types.d.ts.map +1 -1
  163. package/dist/src/share.d.ts.map +1 -1
  164. package/dist/src/share.js +26 -12
  165. package/dist/src/share.js.map +1 -1
  166. package/dist/src/telemetry.d.ts +1 -0
  167. package/dist/src/telemetry.d.ts.map +1 -1
  168. package/dist/src/telemetry.js +7 -10
  169. package/dist/src/telemetry.js.map +1 -1
  170. package/dist/src/types/index.d.ts +13 -0
  171. package/dist/src/types/index.d.ts.map +1 -1
  172. package/dist/src/types/index.js +3 -3
  173. package/dist/src/types/index.js.map +1 -1
  174. package/dist/src/types/providers.d.ts +1 -0
  175. package/dist/src/types/providers.d.ts.map +1 -1
  176. package/dist/src/util/cloud.d.ts +1 -1
  177. package/dist/src/util/cloud.d.ts.map +1 -1
  178. package/dist/src/util/cloud.js +2 -2
  179. package/dist/src/util/cloud.js.map +1 -1
  180. package/dist/src/util/config/load.d.ts.map +1 -1
  181. package/dist/src/util/config/load.js +4 -3
  182. package/dist/src/util/config/load.js.map +1 -1
  183. package/dist/src/util/file.d.ts +13 -26
  184. package/dist/src/util/file.d.ts.map +1 -1
  185. package/dist/src/util/file.js +65 -43
  186. package/dist/src/util/file.js.map +1 -1
  187. package/dist/src/util/fileExtensions.d.ts +33 -0
  188. package/dist/src/util/fileExtensions.d.ts.map +1 -0
  189. package/dist/src/util/fileExtensions.js +54 -0
  190. package/dist/src/util/fileExtensions.js.map +1 -0
  191. package/dist/src/util/fileReference.js +2 -2
  192. package/dist/src/util/fileReference.js.map +1 -1
  193. package/dist/src/util/functions/loadFunction.js +4 -4
  194. package/dist/src/util/functions/loadFunction.js.map +1 -1
  195. package/dist/src/util/index.d.ts +0 -13
  196. package/dist/src/util/index.d.ts.map +1 -1
  197. package/dist/src/util/index.js +6 -56
  198. package/dist/src/util/index.js.map +1 -1
  199. package/dist/src/util/testCaseReader.js +5 -5
  200. package/dist/src/util/testCaseReader.js.map +1 -1
  201. package/dist/src/util/transform.js +2 -2
  202. package/dist/src/util/transform.js.map +1 -1
  203. package/dist/src/validators/redteam.d.ts +4 -0
  204. package/dist/src/validators/redteam.d.ts.map +1 -1
  205. package/dist/src/validators/redteam.js +11 -2
  206. package/dist/src/validators/redteam.js.map +1 -1
  207. package/dist/tsconfig.tsbuildinfo +1 -1
  208. package/package.json +6 -3
  209. package/dist/src/app/assets/index-iTNO3LND.css +0 -1
@@ -1,35 +1,22 @@
1
+ import nunjucks from 'nunjucks';
1
2
  /**
2
- * Array of supported JavaScript and TypeScript file extensions
3
+ * Simple Nunjucks engine specifically for file paths
4
+ * This function is separate from the main getNunjucksEngine to avoid circular dependencies
3
5
  */
4
- export declare const JAVASCRIPT_EXTENSIONS: string[];
6
+ export declare function getNunjucksEngineForFilePath(): nunjucks.Environment;
5
7
  /**
6
- * Checks if a file is a JavaScript or TypeScript file based on its extension.
8
+ * Loads content from an external file if the input is a file path, otherwise
9
+ * returns the input as-is. Supports Nunjucks templating for file paths.
7
10
  *
8
- * @param filePath - The path of the file to check.
9
- * @returns True if the file has a JavaScript or TypeScript extension, false otherwise.
10
- */
11
- export declare function isJavascriptFile(filePath: string): boolean;
12
- /**
13
- * Checks if a file is an image file based on its extension. Non-exhaustive list.
14
- *
15
- * @param filePath - The path of the file to check.
16
- * @returns True if the file has an image extension, false otherwise.
17
- */
18
- export declare function isImageFile(filePath: string): boolean;
19
- /**
20
- * Checks if a file is a video file based on its extension. Non-exhaustive list.
21
- *
22
- * @param filePath - The path of the file to check.
23
- * @returns True if the file has a video extension, false otherwise.
24
- */
25
- export declare function isVideoFile(filePath: string): boolean;
26
- /**
27
- * Checks if a file is an audio file based on its extension. Non-exhaustive list.
11
+ * @param filePath - The input to process. Can be a file path string starting with "file://",
12
+ * an array of file paths, or any other type of data.
13
+ * @returns The loaded content if the input was a file path, otherwise the original input.
14
+ * For JSON and YAML files, the content is parsed into an object.
15
+ * For other file types, the raw file content is returned as a string.
28
16
  *
29
- * @param filePath - The path of the file to check.
30
- * @returns True if the file has an audio extension, false otherwise.
17
+ * @throws {Error} If the specified file does not exist.
31
18
  */
32
- export declare function isAudioFile(filePath: string): boolean;
19
+ export declare function maybeLoadFromExternalFile(filePath: string | object | Function | undefined | null): any;
33
20
  /**
34
21
  * Resolves a relative file path with respect to a base path, handling cloud configuration appropriately.
35
22
  * When using a cloud configuration, the current working directory is always used instead of the context's base path.
@@ -1 +1 @@
1
- {"version":3,"file":"file.d.ts","sourceRoot":"","sources":["../../../src/util/file.ts"],"names":[],"mappings":"AAEA;;GAEG;AACH,eAAO,MAAM,qBAAqB,UAA2C,CAAC;AAE9E;;;;;GAKG;AACH,wBAAgB,gBAAgB,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAE1D;AAED;;;;;GAKG;AACH,wBAAgB,WAAW,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAIrD;AAED;;;;;GAKG;AACH,wBAAgB,WAAW,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAIrD;AAED;;;;;GAKG;AACH,wBAAgB,WAAW,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAIrD;AAED;;;;;;;;GAQG;AACH,wBAAgB,uBAAuB,CACrC,QAAQ,EAAE,MAAM,EAChB,eAAe,CAAC,EAAE,MAAM,EACxB,aAAa,CAAC,EAAE,OAAO,GACtB,MAAM,CAWR"}
1
+ {"version":3,"file":"file.d.ts","sourceRoot":"","sources":["../../../src/util/file.ts"],"names":[],"mappings":"AAGA,OAAO,QAAQ,MAAM,UAAU,CAAC;AAIhC;;;GAGG;AACH,wBAAgB,4BAA4B,IAAI,QAAQ,CAAC,WAAW,CAYnE;AAED;;;;;;;;;;;GAWG;AACH,wBAAgB,yBAAyB,CAAC,QAAQ,EAAE,MAAM,GAAG,MAAM,GAAG,QAAQ,GAAG,SAAS,GAAG,IAAI,OAuChG;AAED;;;;;;;;GAQG;AACH,wBAAgB,uBAAuB,CACrC,QAAQ,EAAE,MAAM,EAChB,eAAe,CAAC,EAAE,MAAM,EACxB,aAAa,CAAC,EAAE,OAAO,GACtB,MAAM,CAWR"}
@@ -32,59 +32,81 @@ var __importStar = (this && this.__importStar) || (function () {
32
32
  return result;
33
33
  };
34
34
  })();
35
+ var __importDefault = (this && this.__importDefault) || function (mod) {
36
+ return (mod && mod.__esModule) ? mod : { "default": mod };
37
+ };
35
38
  Object.defineProperty(exports, "__esModule", { value: true });
36
- exports.JAVASCRIPT_EXTENSIONS = void 0;
37
- exports.isJavascriptFile = isJavascriptFile;
38
- exports.isImageFile = isImageFile;
39
- exports.isVideoFile = isVideoFile;
40
- exports.isAudioFile = isAudioFile;
39
+ exports.getNunjucksEngineForFilePath = getNunjucksEngineForFilePath;
40
+ exports.maybeLoadFromExternalFile = maybeLoadFromExternalFile;
41
41
  exports.getResolvedRelativePath = getResolvedRelativePath;
42
+ const sync_1 = require("csv-parse/sync");
43
+ const fs = __importStar(require("fs"));
44
+ const js_yaml_1 = __importDefault(require("js-yaml"));
45
+ const nunjucks_1 = __importDefault(require("nunjucks"));
42
46
  const path = __importStar(require("path"));
47
+ const cliState_1 = __importDefault(require("../cliState"));
43
48
  /**
44
- * Array of supported JavaScript and TypeScript file extensions
49
+ * Simple Nunjucks engine specifically for file paths
50
+ * This function is separate from the main getNunjucksEngine to avoid circular dependencies
45
51
  */
46
- exports.JAVASCRIPT_EXTENSIONS = ['js', 'cjs', 'mjs', 'ts', 'cts', 'mts'];
47
- /**
48
- * Checks if a file is a JavaScript or TypeScript file based on its extension.
49
- *
50
- * @param filePath - The path of the file to check.
51
- * @returns True if the file has a JavaScript or TypeScript extension, false otherwise.
52
- */
53
- function isJavascriptFile(filePath) {
54
- return new RegExp(`\\.(${exports.JAVASCRIPT_EXTENSIONS.join('|')})$`).test(filePath);
55
- }
56
- /**
57
- * Checks if a file is an image file based on its extension. Non-exhaustive list.
58
- *
59
- * @param filePath - The path of the file to check.
60
- * @returns True if the file has an image extension, false otherwise.
61
- */
62
- function isImageFile(filePath) {
63
- const imageExtensions = ['jpg', 'jpeg', 'png', 'gif', 'bmp', 'webp', 'svg'];
64
- const fileExtension = filePath.split('.').pop()?.toLowerCase() || '';
65
- return imageExtensions.includes(fileExtension);
52
+ function getNunjucksEngineForFilePath() {
53
+ const env = nunjucks_1.default.configure({
54
+ autoescape: false,
55
+ });
56
+ // Add environment variables as template globals
57
+ env.addGlobal('env', {
58
+ ...process.env,
59
+ ...cliState_1.default.config?.env,
60
+ });
61
+ return env;
66
62
  }
67
63
  /**
68
- * Checks if a file is a video file based on its extension. Non-exhaustive list.
64
+ * Loads content from an external file if the input is a file path, otherwise
65
+ * returns the input as-is. Supports Nunjucks templating for file paths.
69
66
  *
70
- * @param filePath - The path of the file to check.
71
- * @returns True if the file has a video extension, false otherwise.
72
- */
73
- function isVideoFile(filePath) {
74
- const videoExtensions = ['mp4', 'webm', 'ogg', 'mov', 'avi', 'wmv', 'mkv', 'm4v'];
75
- const fileExtension = filePath.split('.').pop()?.toLowerCase() || '';
76
- return videoExtensions.includes(fileExtension);
77
- }
78
- /**
79
- * Checks if a file is an audio file based on its extension. Non-exhaustive list.
67
+ * @param filePath - The input to process. Can be a file path string starting with "file://",
68
+ * an array of file paths, or any other type of data.
69
+ * @returns The loaded content if the input was a file path, otherwise the original input.
70
+ * For JSON and YAML files, the content is parsed into an object.
71
+ * For other file types, the raw file content is returned as a string.
80
72
  *
81
- * @param filePath - The path of the file to check.
82
- * @returns True if the file has an audio extension, false otherwise.
73
+ * @throws {Error} If the specified file does not exist.
83
74
  */
84
- function isAudioFile(filePath) {
85
- const audioExtensions = ['wav', 'mp3', 'ogg', 'aac', 'm4a', 'flac', 'wma', 'aiff', 'opus'];
86
- const fileExtension = filePath.split('.').pop()?.toLowerCase() || '';
87
- return audioExtensions.includes(fileExtension);
75
+ function maybeLoadFromExternalFile(filePath) {
76
+ if (Array.isArray(filePath)) {
77
+ return filePath.map((path) => {
78
+ const content = maybeLoadFromExternalFile(path);
79
+ return content;
80
+ });
81
+ }
82
+ if (typeof filePath !== 'string') {
83
+ return filePath;
84
+ }
85
+ if (!filePath.startsWith('file://')) {
86
+ return filePath;
87
+ }
88
+ // Render the file path using Nunjucks
89
+ const renderedFilePath = getNunjucksEngineForFilePath().renderString(filePath, {});
90
+ const finalPath = path.resolve(cliState_1.default.basePath || '', renderedFilePath.slice('file://'.length));
91
+ if (!fs.existsSync(finalPath)) {
92
+ throw new Error(`File does not exist: ${finalPath}`);
93
+ }
94
+ const contents = fs.readFileSync(finalPath, 'utf8');
95
+ if (finalPath.endsWith('.json')) {
96
+ return JSON.parse(contents);
97
+ }
98
+ if (finalPath.endsWith('.yaml') || finalPath.endsWith('.yml')) {
99
+ return js_yaml_1.default.load(contents);
100
+ }
101
+ if (finalPath.endsWith('.csv')) {
102
+ const records = (0, sync_1.parse)(contents, { columns: true });
103
+ // If single column, return array of values
104
+ if (records.length > 0 && Object.keys(records[0]).length === 1) {
105
+ return records.map((record) => Object.values(record)[0]);
106
+ }
107
+ return records;
108
+ }
109
+ return contents;
88
110
  }
89
111
  /**
90
112
  * Resolves a relative file path with respect to a base path, handling cloud configuration appropriately.
@@ -1 +1 @@
1
- {"version":3,"file":"file.js","sourceRoot":"","sources":["../../../src/util/file.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAaA,4CAEC;AAQD,kCAIC;AAQD,kCAIC;AAQD,kCAIC;AAWD,0DAeC;AA7ED,2CAA6B;AAE7B;;GAEG;AACU,QAAA,qBAAqB,GAAG,CAAC,IAAI,EAAE,KAAK,EAAE,KAAK,EAAE,IAAI,EAAE,KAAK,EAAE,KAAK,CAAC,CAAC;AAE9E;;;;;GAKG;AACH,SAAgB,gBAAgB,CAAC,QAAgB;IAC/C,OAAO,IAAI,MAAM,CAAC,OAAO,6BAAqB,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;AAC/E,CAAC;AAED;;;;;GAKG;AACH,SAAgB,WAAW,CAAC,QAAgB;IAC1C,MAAM,eAAe,GAAG,CAAC,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,CAAC,CAAC;IAC5E,MAAM,aAAa,GAAG,QAAQ,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,WAAW,EAAE,IAAI,EAAE,CAAC;IACrE,OAAO,eAAe,CAAC,QAAQ,CAAC,aAAa,CAAC,CAAC;AACjD,CAAC;AAED;;;;;GAKG;AACH,SAAgB,WAAW,CAAC,QAAgB;IAC1C,MAAM,eAAe,GAAG,CAAC,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,CAAC,CAAC;IAClF,MAAM,aAAa,GAAG,QAAQ,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,WAAW,EAAE,IAAI,EAAE,CAAC;IACrE,OAAO,eAAe,CAAC,QAAQ,CAAC,aAAa,CAAC,CAAC;AACjD,CAAC;AAED;;;;;GAKG;AACH,SAAgB,WAAW,CAAC,QAAgB;IAC1C,MAAM,eAAe,GAAG,CAAC,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC;IAC3F,MAAM,aAAa,GAAG,QAAQ,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,WAAW,EAAE,IAAI,EAAE,CAAC;IACrE,OAAO,eAAe,CAAC,QAAQ,CAAC,aAAa,CAAC,CAAC;AACjD,CAAC;AAED;;;;;;;;GAQG;AACH,SAAgB,uBAAuB,CACrC,QAAgB,EAChB,eAAwB,EACxB,aAAuB;IAEvB,oDAAoD;IACpD,IAAI,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,EAAE,CAAC;QAC9B,OAAO,QAAQ,CAAC;IAClB,CAAC;IAED,+EAA+E;IAC/E,MAAM,QAAQ,GAAG,aAAa,KAAK,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,eAAe,IAAI,OAAO,CAAC,GAAG,EAAE,CAAC;IAE3F,0DAA0D;IAC1D,OAAO,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAC;AACvC,CAAC"}
1
+ {"version":3,"file":"file.js","sourceRoot":"","sources":["../../../src/util/file.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,33 @@
1
+ /**
2
+ * Array of supported JavaScript and TypeScript file extensions
3
+ */
4
+ export declare const JAVASCRIPT_EXTENSIONS: string[];
5
+ /**
6
+ * Checks if a file is a JavaScript or TypeScript file based on its extension.
7
+ *
8
+ * @param filePath - The path of the file to check.
9
+ * @returns True if the file has a JavaScript or TypeScript extension, false otherwise.
10
+ */
11
+ export declare function isJavascriptFile(filePath: string): boolean;
12
+ /**
13
+ * Checks if a file is an image file based on its extension. Non-exhaustive list.
14
+ *
15
+ * @param filePath - The path of the file to check.
16
+ * @returns True if the file has an image extension, false otherwise.
17
+ */
18
+ export declare function isImageFile(filePath: string): boolean;
19
+ /**
20
+ * Checks if a file is a video file based on its extension. Non-exhaustive list.
21
+ *
22
+ * @param filePath - The path of the file to check.
23
+ * @returns True if the file has a video extension, false otherwise.
24
+ */
25
+ export declare function isVideoFile(filePath: string): boolean;
26
+ /**
27
+ * Checks if a file is an audio file based on its extension. Non-exhaustive list.
28
+ *
29
+ * @param filePath - The path of the file to check.
30
+ * @returns True if the file has an audio extension, false otherwise.
31
+ */
32
+ export declare function isAudioFile(filePath: string): boolean;
33
+ //# sourceMappingURL=fileExtensions.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"fileExtensions.d.ts","sourceRoot":"","sources":["../../../src/util/fileExtensions.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,eAAO,MAAM,qBAAqB,UAA2C,CAAC;AAE9E;;;;;GAKG;AACH,wBAAgB,gBAAgB,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAE1D;AAED;;;;;GAKG;AACH,wBAAgB,WAAW,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAIrD;AAED;;;;;GAKG;AACH,wBAAgB,WAAW,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAIrD;AAED;;;;;GAKG;AACH,wBAAgB,WAAW,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAIrD"}
@@ -0,0 +1,54 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.JAVASCRIPT_EXTENSIONS = void 0;
4
+ exports.isJavascriptFile = isJavascriptFile;
5
+ exports.isImageFile = isImageFile;
6
+ exports.isVideoFile = isVideoFile;
7
+ exports.isAudioFile = isAudioFile;
8
+ /**
9
+ * Array of supported JavaScript and TypeScript file extensions
10
+ */
11
+ exports.JAVASCRIPT_EXTENSIONS = ['js', 'cjs', 'mjs', 'ts', 'cts', 'mts'];
12
+ /**
13
+ * Checks if a file is a JavaScript or TypeScript file based on its extension.
14
+ *
15
+ * @param filePath - The path of the file to check.
16
+ * @returns True if the file has a JavaScript or TypeScript extension, false otherwise.
17
+ */
18
+ function isJavascriptFile(filePath) {
19
+ return new RegExp(`\\.(${exports.JAVASCRIPT_EXTENSIONS.join('|')})$`).test(filePath);
20
+ }
21
+ /**
22
+ * Checks if a file is an image file based on its extension. Non-exhaustive list.
23
+ *
24
+ * @param filePath - The path of the file to check.
25
+ * @returns True if the file has an image extension, false otherwise.
26
+ */
27
+ function isImageFile(filePath) {
28
+ const imageExtensions = ['jpg', 'jpeg', 'png', 'gif', 'bmp', 'webp', 'svg'];
29
+ const fileExtension = filePath.split('.').pop()?.toLowerCase() || '';
30
+ return imageExtensions.includes(fileExtension);
31
+ }
32
+ /**
33
+ * Checks if a file is a video file based on its extension. Non-exhaustive list.
34
+ *
35
+ * @param filePath - The path of the file to check.
36
+ * @returns True if the file has a video extension, false otherwise.
37
+ */
38
+ function isVideoFile(filePath) {
39
+ const videoExtensions = ['mp4', 'webm', 'ogg', 'mov', 'avi', 'wmv', 'mkv', 'm4v'];
40
+ const fileExtension = filePath.split('.').pop()?.toLowerCase() || '';
41
+ return videoExtensions.includes(fileExtension);
42
+ }
43
+ /**
44
+ * Checks if a file is an audio file based on its extension. Non-exhaustive list.
45
+ *
46
+ * @param filePath - The path of the file to check.
47
+ * @returns True if the file has an audio extension, false otherwise.
48
+ */
49
+ function isAudioFile(filePath) {
50
+ const audioExtensions = ['wav', 'mp3', 'ogg', 'aac', 'm4a', 'flac', 'wma', 'aiff', 'opus'];
51
+ const fileExtension = filePath.split('.').pop()?.toLowerCase() || '';
52
+ return audioExtensions.includes(fileExtension);
53
+ }
54
+ //# sourceMappingURL=fileExtensions.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"fileExtensions.js","sourceRoot":"","sources":["../../../src/util/fileExtensions.ts"],"names":[],"mappings":";;;AAWA,4CAEC;AAQD,kCAIC;AAQD,kCAIC;AAQD,kCAIC;AAjDD;;GAEG;AACU,QAAA,qBAAqB,GAAG,CAAC,IAAI,EAAE,KAAK,EAAE,KAAK,EAAE,IAAI,EAAE,KAAK,EAAE,KAAK,CAAC,CAAC;AAE9E;;;;;GAKG;AACH,SAAgB,gBAAgB,CAAC,QAAgB;IAC/C,OAAO,IAAI,MAAM,CAAC,OAAO,6BAAqB,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;AAC/E,CAAC;AAED;;;;;GAKG;AACH,SAAgB,WAAW,CAAC,QAAgB;IAC1C,MAAM,eAAe,GAAG,CAAC,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,CAAC,CAAC;IAC5E,MAAM,aAAa,GAAG,QAAQ,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,WAAW,EAAE,IAAI,EAAE,CAAC;IACrE,OAAO,eAAe,CAAC,QAAQ,CAAC,aAAa,CAAC,CAAC;AACjD,CAAC;AAED;;;;;GAKG;AACH,SAAgB,WAAW,CAAC,QAAgB;IAC1C,MAAM,eAAe,GAAG,CAAC,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,CAAC,CAAC;IAClF,MAAM,aAAa,GAAG,QAAQ,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,WAAW,EAAE,IAAI,EAAE,CAAC;IACrE,OAAO,eAAe,CAAC,QAAQ,CAAC,aAAa,CAAC,CAAC;AACjD,CAAC;AAED;;;;;GAKG;AACH,SAAgB,WAAW,CAAC,QAAgB;IAC1C,MAAM,eAAe,GAAG,CAAC,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC;IAC3F,MAAM,aAAa,GAAG,QAAQ,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,WAAW,EAAE,IAAI,EAAE,CAAC;IACrE,OAAO,eAAe,CAAC,QAAQ,CAAC,aAAa,CAAC,CAAC;AACjD,CAAC"}
@@ -11,7 +11,7 @@ const path_1 = __importDefault(require("path"));
11
11
  const esm_1 = require("../esm");
12
12
  const logger_1 = __importDefault(require("../logger"));
13
13
  const pythonUtils_1 = require("../python/pythonUtils");
14
- const file_1 = require("./file");
14
+ const fileExtensions_1 = require("./fileExtensions");
15
15
  /**
16
16
  * Loads the content from a file reference
17
17
  * @param fileRef The file reference string (e.g. 'file://path/to/file.json')
@@ -40,7 +40,7 @@ async function loadFileReference(fileRef, basePath = '') {
40
40
  const content = await fs_1.default.promises.readFile(resolvedPath, 'utf8');
41
41
  return js_yaml_1.default.load(content);
42
42
  }
43
- else if ((0, file_1.isJavascriptFile)(resolvedPath)) {
43
+ else if ((0, fileExtensions_1.isJavascriptFile)(resolvedPath)) {
44
44
  logger_1.default.debug(`Loading JavaScript file: ${resolvedPath}`);
45
45
  const mod = await (0, esm_1.importModule)(resolvedPath, functionName);
46
46
  return typeof mod === 'function' ? await mod() : mod;
@@ -1 +1 @@
1
- {"version":3,"file":"fileReference.js","sourceRoot":"","sources":["../../../src/util/fileReference.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"fileReference.js","sourceRoot":"","sources":["../../../src/util/fileReference.ts"],"names":[],"mappings":";;;;;AAcA,8CAiDC;AASD,kEAiCC;AAzGD,4CAAoB;AACpB,sDAA2B;AAC3B,gDAAwB;AACxB,gCAAsC;AACtC,uDAA+B;AAC/B,uDAAkD;AAClD,qDAAoD;AAEpD;;;;;GAKG;AACI,KAAK,UAAU,iBAAiB,CAAC,OAAe,EAAE,WAAmB,EAAE;IAC5E,4BAA4B;IAC5B,MAAM,uBAAuB,GAAG,OAAO,CAAC,KAAK,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC;IAEhE,mCAAmC;IACnC,MAAM,KAAK,GAAG,uBAAuB,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;IACjD,MAAM,QAAQ,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC;IAC1B,MAAM,YAAY,GAAG,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;IAE7D,4BAA4B;IAC5B,MAAM,YAAY,GAAG,cAAI,CAAC,OAAO,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAC;IACtD,MAAM,SAAS,GAAG,cAAI,CAAC,OAAO,CAAC,YAAY,CAAC,CAAC,WAAW,EAAE,CAAC;IAE3D,gBAAM,CAAC,KAAK,CACV,2BAA2B,OAAO,mBAAmB,YAAY,gBAAgB,SAAS,EAAE,CAC7F,CAAC;IAEF,IAAI,CAAC;QACH,IAAI,SAAS,KAAK,OAAO,EAAE,CAAC;YAC1B,gBAAM,CAAC,KAAK,CAAC,sBAAsB,YAAY,EAAE,CAAC,CAAC;YACnD,MAAM,OAAO,GAAG,MAAM,YAAE,CAAC,QAAQ,CAAC,QAAQ,CAAC,YAAY,EAAE,MAAM,CAAC,CAAC;YACjE,OAAO,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;QAC7B,CAAC;aAAM,IAAI,SAAS,KAAK,OAAO,IAAI,SAAS,KAAK,MAAM,EAAE,CAAC;YACzD,gBAAM,CAAC,KAAK,CAAC,sBAAsB,YAAY,EAAE,CAAC,CAAC;YACnD,MAAM,OAAO,GAAG,MAAM,YAAE,CAAC,QAAQ,CAAC,QAAQ,CAAC,YAAY,EAAE,MAAM,CAAC,CAAC;YACjE,OAAO,iBAAI,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QAC5B,CAAC;aAAM,IAAI,IAAA,iCAAgB,EAAC,YAAY,CAAC,EAAE,CAAC;YAC1C,gBAAM,CAAC,KAAK,CAAC,4BAA4B,YAAY,EAAE,CAAC,CAAC;YACzD,MAAM,GAAG,GAAG,MAAM,IAAA,kBAAY,EAAC,YAAY,EAAE,YAAY,CAAC,CAAC;YAC3D,OAAO,OAAO,GAAG,KAAK,UAAU,CAAC,CAAC,CAAC,MAAM,GAAG,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC;QACvD,CAAC;aAAM,IAAI,SAAS,KAAK,KAAK,EAAE,CAAC;YAC/B,gBAAM,CAAC,KAAK,CACV,wBAAwB,YAAY,eAAe,YAAY,IAAI,YAAY,EAAE,CAClF,CAAC;YACF,MAAM,MAAM,GAAG,YAAY,IAAI,YAAY,CAAC;YAC5C,MAAM,MAAM,GAAG,MAAM,IAAA,uBAAS,EAAC,YAAY,EAAE,MAAM,EAAE,EAAE,CAAC,CAAC;YACzD,OAAO,MAAM,CAAC;QAChB,CAAC;aAAM,IAAI,SAAS,KAAK,MAAM,IAAI,SAAS,KAAK,KAAK,IAAI,SAAS,KAAK,EAAE,EAAE,CAAC;YAC3E,sDAAsD;YACtD,gBAAM,CAAC,KAAK,CAAC,sBAAsB,YAAY,EAAE,CAAC,CAAC;YACnD,OAAO,MAAM,YAAE,CAAC,QAAQ,CAAC,QAAQ,CAAC,YAAY,EAAE,MAAM,CAAC,CAAC;QAC1D,CAAC;aAAM,CAAC;YACN,gBAAM,CAAC,KAAK,CAAC,+BAA+B,SAAS,EAAE,CAAC,CAAC;YACzD,MAAM,IAAI,KAAK,CAAC,+BAA+B,SAAS,EAAE,CAAC,CAAC;QAC9D,CAAC;IACH,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,gBAAM,CAAC,KAAK,CAAC,gCAAgC,OAAO,KAAK,KAAK,EAAE,CAAC,CAAC;QAClE,MAAM,KAAK,CAAC;IACd,CAAC;AACH,CAAC;AAED;;;;;;GAMG;AACI,KAAK,UAAU,2BAA2B,CAC/C,MAAW,EACX,WAAmB,EAAE;IAErB,IAAI,CAAC,MAAM,EAAE,CAAC;QACZ,OAAO,MAAM,CAAC;IAChB,CAAC;IAED,6CAA6C;IAC7C,IAAI,OAAO,MAAM,KAAK,QAAQ,IAAI,MAAM,CAAC,UAAU,CAAC,SAAS,CAAC,EAAE,CAAC;QAC/D,OAAO,MAAM,iBAAiB,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC;IACnD,CAAC;IAED,gBAAgB;IAChB,IAAI,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC;QAC1B,MAAM,MAAM,GAAG,EAAE,CAAC;QAClB,KAAK,MAAM,IAAI,IAAI,MAAM,EAAE,CAAC;YAC1B,MAAM,CAAC,IAAI,CAAC,MAAM,2BAA2B,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC,CAAC;QACjE,CAAC;QACD,OAAO,MAAM,CAAC;IAChB,CAAC;IAED,iBAAiB;IACjB,IAAI,OAAO,MAAM,KAAK,QAAQ,IAAI,MAAM,KAAK,IAAI,EAAE,CAAC;QAClD,MAAM,MAAM,GAAwB,EAAE,CAAC;QACvC,KAAK,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC;YAClD,MAAM,CAAC,GAAG,CAAC,GAAG,MAAM,2BAA2B,CAAC,KAAK,EAAE,QAAQ,CAAC,CAAC;QACnE,CAAC;QACD,OAAO,MAAM,CAAC;IAChB,CAAC;IAED,gCAAgC;IAChC,OAAO,MAAM,CAAC;AAChB,CAAC"}
@@ -11,7 +11,7 @@ const cliState_1 = __importDefault(require("../../cliState"));
11
11
  const esm_1 = require("../../esm");
12
12
  const logger_1 = __importDefault(require("../../logger"));
13
13
  const pythonUtils_1 = require("../../python/pythonUtils");
14
- const file_1 = require("../file");
14
+ const fileExtensions_1 = require("../fileExtensions");
15
15
  exports.functionCache = {};
16
16
  /**
17
17
  * Loads a function from a JavaScript or Python file
@@ -24,12 +24,12 @@ async function loadFunction({ filePath, functionName, defaultFunctionName = 'fun
24
24
  return exports.functionCache[cacheKey];
25
25
  }
26
26
  const resolvedPath = basePath ? path_1.default.resolve(basePath, filePath) : filePath;
27
- if (!(0, file_1.isJavascriptFile)(resolvedPath) && !resolvedPath.endsWith('.py')) {
28
- throw new Error(`File must be a JavaScript (${file_1.JAVASCRIPT_EXTENSIONS.join(', ')}) or Python (.py) file`);
27
+ if (!(0, fileExtensions_1.isJavascriptFile)(resolvedPath) && !resolvedPath.endsWith('.py')) {
28
+ throw new Error(`File must be a JavaScript (${fileExtensions_1.JAVASCRIPT_EXTENSIONS.join(', ')}) or Python (.py) file`);
29
29
  }
30
30
  try {
31
31
  let func;
32
- if ((0, file_1.isJavascriptFile)(resolvedPath)) {
32
+ if ((0, fileExtensions_1.isJavascriptFile)(resolvedPath)) {
33
33
  const module = await (0, esm_1.importModule)(resolvedPath, functionName);
34
34
  let moduleFunc;
35
35
  if (functionName) {
@@ -1 +1 @@
1
- {"version":3,"file":"loadFunction.js","sourceRoot":"","sources":["../../../../src/util/functions/loadFunction.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"loadFunction.js","sourceRoot":"","sources":["../../../../src/util/functions/loadFunction.ts"],"names":[],"mappings":"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"}
@@ -62,19 +62,6 @@ export declare function parsePathOrGlob(basePath: string, promptPath: string): {
62
62
  isPathPattern: boolean;
63
63
  filePath: string;
64
64
  };
65
- /**
66
- * Loads content from an external file if the input is a file path, otherwise
67
- * returns the input as-is. Supports Nunjucks templating for file paths.
68
- *
69
- * @param filePath - The input to process. Can be a file path string starting with "file://",
70
- * an array of file paths, or any other type of data.
71
- * @returns The loaded content if the input was a file path, otherwise the original input.
72
- * For JSON and YAML files, the content is parsed into an object.
73
- * For other file types, the raw file content is returned as a string.
74
- *
75
- * @throws {Error} If the specified file does not exist.
76
- */
77
- export declare function maybeLoadFromExternalFile(filePath: string | object | Function | undefined | null): any;
78
65
  export declare function isRunningUnderNpx(): boolean;
79
66
  /**
80
67
  * Renders variables in a tools object and loads from external file if applicable.
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/util/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/util/index.ts"],"names":[],"mappings":"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"}
@@ -53,11 +53,9 @@ exports.varsMatch = varsMatch;
53
53
  exports.resultIsForTestCase = resultIsForTestCase;
54
54
  exports.renderVarsInObject = renderVarsInObject;
55
55
  exports.parsePathOrGlob = parsePathOrGlob;
56
- exports.maybeLoadFromExternalFile = maybeLoadFromExternalFile;
57
56
  exports.isRunningUnderNpx = isRunningUnderNpx;
58
57
  exports.maybeLoadToolsFromExternalFile = maybeLoadToolsFromExternalFile;
59
- const sync_1 = require("csv-parse/sync");
60
- const sync_2 = require("csv-stringify/sync");
58
+ const sync_1 = require("csv-stringify/sync");
61
59
  const dedent_1 = __importDefault(require("dedent"));
62
60
  const dotenv_1 = __importDefault(require("dotenv"));
63
61
  const fast_deep_equal_1 = __importDefault(require("fast-deep-equal"));
@@ -66,7 +64,6 @@ const glob_1 = require("glob");
66
64
  const js_yaml_1 = __importDefault(require("js-yaml"));
67
65
  const nunjucks_1 = __importDefault(require("nunjucks"));
68
66
  const path = __importStar(require("path"));
69
- const cliState_1 = __importDefault(require("../cliState"));
70
67
  const constants_1 = require("../constants");
71
68
  const envars_1 = require("../envars");
72
69
  const esm_1 = require("../esm");
@@ -78,6 +75,7 @@ const manage_1 = require("./config/manage");
78
75
  const createHash_1 = require("./createHash");
79
76
  const exportToFile_1 = require("./exportToFile");
80
77
  const file_1 = require("./file");
78
+ const fileExtensions_1 = require("./fileExtensions");
81
79
  const templates_1 = require("./templates");
82
80
  const outputToSimpleString = (output) => {
83
81
  const passFailText = output.pass
@@ -130,7 +128,7 @@ async function writeOutput(outputPath, evalRecord, shareableUrl) {
130
128
  if (outputExtension === 'csv') {
131
129
  // Write headers first
132
130
  const headers = (0, exportToFile_1.getHeaderForTable)(evalRecord);
133
- const headerCsv = (0, sync_2.stringify)([
131
+ const headerCsv = (0, sync_1.stringify)([
134
132
  [...headers.vars, ...headers.prompts.map((prompt) => `[${prompt.provider}] ${prompt.label}`)],
135
133
  ]);
136
134
  fs.writeFileSync(outputPath, headerCsv);
@@ -144,7 +142,7 @@ async function writeOutput(outputPath, evalRecord, shareableUrl) {
144
142
  }
145
143
  tableRows[result.testIdx].push(result);
146
144
  }
147
- const batchCsv = (0, sync_2.stringify)(Object.values(tableRows).map((results) => {
145
+ const batchCsv = (0, sync_1.stringify)(Object.values(tableRows).map((results) => {
148
146
  const row = (0, exportToFile_1.convertTestResultsToTableRow)(results, headers.vars);
149
147
  return [...row.vars, ...row.outputs.map(outputToSimpleString)];
150
148
  }));
@@ -389,7 +387,7 @@ function parsePathOrGlob(basePath, promptPath) {
389
387
  if (filename.includes(':')) {
390
388
  const splits = filename.split(':');
391
389
  if (splits[0] &&
392
- ((0, file_1.isJavascriptFile)(splits[0]) || splits[0].endsWith('.py') || splits[0].endsWith('.go'))) {
390
+ ((0, fileExtensions_1.isJavascriptFile)(splits[0]) || splits[0].endsWith('.py') || splits[0].endsWith('.go'))) {
393
391
  [filename, functionName] = splits;
394
392
  }
395
393
  }
@@ -412,54 +410,6 @@ function parsePathOrGlob(basePath, promptPath) {
412
410
  isPathPattern,
413
411
  };
414
412
  }
415
- /**
416
- * Loads content from an external file if the input is a file path, otherwise
417
- * returns the input as-is. Supports Nunjucks templating for file paths.
418
- *
419
- * @param filePath - The input to process. Can be a file path string starting with "file://",
420
- * an array of file paths, or any other type of data.
421
- * @returns The loaded content if the input was a file path, otherwise the original input.
422
- * For JSON and YAML files, the content is parsed into an object.
423
- * For other file types, the raw file content is returned as a string.
424
- *
425
- * @throws {Error} If the specified file does not exist.
426
- */
427
- function maybeLoadFromExternalFile(filePath) {
428
- if (Array.isArray(filePath)) {
429
- return filePath.map((path) => {
430
- const content = maybeLoadFromExternalFile(path);
431
- return content;
432
- });
433
- }
434
- if (typeof filePath !== 'string') {
435
- return filePath;
436
- }
437
- if (!filePath.startsWith('file://')) {
438
- return filePath;
439
- }
440
- // Render the file path using Nunjucks
441
- const renderedFilePath = (0, templates_1.getNunjucksEngine)().renderString(filePath, {});
442
- const finalPath = path.resolve(cliState_1.default.basePath || '', renderedFilePath.slice('file://'.length));
443
- if (!fs.existsSync(finalPath)) {
444
- throw new Error(`File does not exist: ${finalPath}`);
445
- }
446
- const contents = fs.readFileSync(finalPath, 'utf8');
447
- if (finalPath.endsWith('.json')) {
448
- return JSON.parse(contents);
449
- }
450
- if (finalPath.endsWith('.yaml') || finalPath.endsWith('.yml')) {
451
- return js_yaml_1.default.load(contents);
452
- }
453
- if (finalPath.endsWith('.csv')) {
454
- const records = (0, sync_1.parse)(contents, { columns: true });
455
- // If single column, return array of values
456
- if (records.length > 0 && Object.keys(records[0]).length === 1) {
457
- return records.map((record) => Object.values(record)[0]);
458
- }
459
- return records;
460
- }
461
- return contents;
462
- }
463
413
  function isRunningUnderNpx() {
464
414
  const npmExecPath = (0, envars_1.getEnvString)('npm_execpath');
465
415
  const npmLifecycleScript = (0, envars_1.getEnvString)('npm_lifecycle_script');
@@ -477,6 +427,6 @@ function isRunningUnderNpx() {
477
427
  * @returns The processed tools configuration with variables rendered and content loaded from files if needed.
478
428
  */
479
429
  function maybeLoadToolsFromExternalFile(tools, vars) {
480
- return maybeLoadFromExternalFile(renderVarsInObject(tools, vars));
430
+ return (0, file_1.maybeLoadFromExternalFile)(renderVarsInObject(tools, vars));
481
431
  }
482
432
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/util/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/util/index.ts"],"names":[],"mappings":"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"}