codebuff 1.0.227 → 1.0.229

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 (92) hide show
  1. package/dist/background-process-manager.d.ts +4 -2
  2. package/dist/background-process-manager.js +75 -56
  3. package/dist/background-process-manager.js.map +1 -1
  4. package/dist/cli.d.ts +3 -1
  5. package/dist/cli.js +15 -2
  6. package/dist/cli.js.map +1 -1
  7. package/dist/client.d.ts +7 -5
  8. package/dist/client.js +49 -29
  9. package/dist/client.js.map +1 -1
  10. package/dist/code-map/tsconfig.tsbuildinfo +1 -1
  11. package/dist/common/actions.d.ts +114 -108
  12. package/dist/common/actions.js +5 -1
  13. package/dist/common/actions.js.map +1 -1
  14. package/dist/common/bigquery/client.d.ts +15 -0
  15. package/dist/common/bigquery/client.js +245 -0
  16. package/dist/common/bigquery/client.js.map +1 -0
  17. package/dist/common/bigquery/schema.d.ts +54 -0
  18. package/dist/common/bigquery/schema.js +24 -0
  19. package/dist/common/bigquery/schema.js.map +1 -0
  20. package/dist/common/billing/balance-calculator.d.ts +3 -0
  21. package/dist/common/billing/balance-calculator.js +6 -2
  22. package/dist/common/billing/balance-calculator.js.map +1 -1
  23. package/dist/common/billing/grant-credits.d.ts +16 -1
  24. package/dist/common/billing/grant-credits.js +67 -2
  25. package/dist/common/billing/grant-credits.js.map +1 -1
  26. package/dist/common/constants/tools.d.ts +1 -0
  27. package/dist/common/constants/tools.js +21 -1
  28. package/dist/common/constants/tools.js.map +1 -1
  29. package/dist/common/constants.d.ts +2 -1
  30. package/dist/common/constants.js +2 -5
  31. package/dist/common/constants.js.map +1 -1
  32. package/dist/common/db/transaction.d.ts +12 -0
  33. package/dist/common/db/transaction.js +36 -0
  34. package/dist/common/db/transaction.js.map +1 -0
  35. package/dist/common/json-config/__tests__/stringify-schema.test.d.ts +1 -0
  36. package/dist/common/json-config/__tests__/stringify-schema.test.js +66 -0
  37. package/dist/common/json-config/__tests__/stringify-schema.test.js.map +1 -0
  38. package/dist/common/json-config/constants.d.ts +77 -0
  39. package/dist/common/json-config/constants.js +42 -0
  40. package/dist/common/json-config/constants.js.map +1 -0
  41. package/dist/common/json-config/stringify-schema.d.ts +10 -0
  42. package/dist/common/json-config/stringify-schema.js +87 -0
  43. package/dist/common/json-config/stringify-schema.js.map +1 -0
  44. package/dist/common/types/usage.d.ts +4 -4
  45. package/dist/common/util/__tests__/string.test.js +2 -3
  46. package/dist/common/util/__tests__/string.test.js.map +1 -1
  47. package/dist/common/util/string.d.ts +3 -2
  48. package/dist/common/util/string.js +14 -4
  49. package/dist/common/util/string.js.map +1 -1
  50. package/dist/common/websockets/websocket-client.d.ts +2 -1
  51. package/dist/common/websockets/websocket-client.js +12 -0
  52. package/dist/common/websockets/websocket-client.js.map +1 -1
  53. package/dist/common/websockets/websocket-schema.d.ts +222 -202
  54. package/dist/{json-config/dev-process-manager.d.ts → dev-process-manager.d.ts} +1 -1
  55. package/dist/{json-config/dev-process-manager.js → dev-process-manager.js} +15 -5
  56. package/dist/dev-process-manager.js.map +1 -0
  57. package/dist/index.js +10 -6
  58. package/dist/index.js.map +1 -1
  59. package/dist/utils/__tests__/response-example-4-files.txt +621 -0
  60. package/dist/utils/__tests__/tool-renderers.test.js +16 -8
  61. package/dist/utils/__tests__/tool-renderers.test.js.map +1 -1
  62. package/dist/utils/__tests__/xml-stream-parser.test.js +23 -11
  63. package/dist/utils/__tests__/xml-stream-parser.test.js.map +1 -1
  64. package/dist/utils/terminal.d.ts +10 -3
  65. package/dist/utils/terminal.js +53 -14
  66. package/dist/utils/terminal.js.map +1 -1
  67. package/package.json +2 -2
  68. package/dist/common/billing/quota-manager.d.ts +0 -29
  69. package/dist/common/billing/quota-manager.js +0 -251
  70. package/dist/common/billing/quota-manager.js.map +0 -1
  71. package/dist/common/logger.d.ts +0 -1
  72. package/dist/common/logger.js +0 -7
  73. package/dist/common/logger.js.map +0 -1
  74. package/dist/common/util/constants.d.ts +0 -1
  75. package/dist/common/util/constants.js +0 -7
  76. package/dist/common/util/constants.js.map +0 -1
  77. package/dist/common/util/helpers.d.ts +0 -1
  78. package/dist/common/util/helpers.js +0 -6
  79. package/dist/common/util/helpers.js.map +0 -1
  80. package/dist/common/util/token-counter.d.ts +0 -3
  81. package/dist/common/util/token-counter.js +0 -27
  82. package/dist/common/util/token-counter.js.map +0 -1
  83. package/dist/common/util/tools.d.ts +0 -2
  84. package/dist/common/util/tools.js +0 -13
  85. package/dist/common/util/tools.js.map +0 -1
  86. package/dist/json-config/constants.d.ts +0 -43
  87. package/dist/json-config/constants.js +0 -13
  88. package/dist/json-config/constants.js.map +0 -1
  89. package/dist/json-config/dev-process-manager.js.map +0 -1
  90. /package/dist/{json-config → common/json-config}/parser.d.ts +0 -0
  91. /package/dist/{json-config → common/json-config}/parser.js +0 -0
  92. /package/dist/{json-config → common/json-config}/parser.js.map +0 -0
@@ -12,3 +12,4 @@ export declare const toolSchema: {
12
12
  };
13
13
  export type ToolName = keyof typeof toolSchema;
14
14
  export declare const TOOL_LIST: ToolName[];
15
+ export declare const getToolCallString: (toolName: ToolName, params: Record<string, string>) => string;
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.TOOL_LIST = exports.toolSchema = void 0;
3
+ exports.getToolCallString = exports.TOOL_LIST = exports.toolSchema = void 0;
4
4
  exports.toolSchema = {
5
5
  // Tools that require an id and objective
6
6
  add_subgoal: ['id', 'objective', 'status', 'plan', 'log'],
@@ -20,4 +20,24 @@ exports.toolSchema = {
20
20
  };
21
21
  // List of all available tools
22
22
  exports.TOOL_LIST = Object.keys(exports.toolSchema);
23
+ const getToolCallString = (toolName, params) => {
24
+ const openTag = `<${toolName}>`;
25
+ const closeTag = `</${toolName}>`;
26
+ // Get the parameter order from toolSchema
27
+ const paramOrder = exports.toolSchema[toolName];
28
+ // Create an array of parameter strings in the correct order
29
+ const orderedParams = paramOrder
30
+ .filter((param) => param in params) // Only include params that are actually provided
31
+ .map((param) => `<${param}>${params[param]}</${param}>`);
32
+ // Get any additional parameters not in the schema order
33
+ const additionalParams = Object.entries(params)
34
+ .filter(([param]) => !paramOrder.includes(param))
35
+ .map(([param, value]) => `<${param}>${value}</${param}>`);
36
+ // Combine ordered and additional parameters
37
+ const paramsString = [...orderedParams, ...additionalParams].join('\n');
38
+ return paramsString
39
+ ? `${openTag}\n${paramsString}\n${closeTag}`
40
+ : `${openTag}${closeTag}`;
41
+ };
42
+ exports.getToolCallString = getToolCallString;
23
43
  //# sourceMappingURL=tools.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"tools.js","sourceRoot":"","sources":["../../src/constants/tools.ts"],"names":[],"mappings":";;;AAAa,QAAA,UAAU,GAAG;IACxB,yCAAyC;IACzC,WAAW,EAAE,CAAC,IAAI,EAAE,WAAW,EAAE,QAAQ,EAAE,MAAM,EAAE,KAAK,CAAC;IACzD,cAAc,EAAE,CAAC,IAAI,EAAE,QAAQ,EAAE,MAAM,EAAE,KAAK,CAAC;IAE/C,kBAAkB;IAClB,UAAU,EAAE,CAAC,MAAM,EAAE,SAAS,CAAC;IAC/B,UAAU,EAAE,CAAC,OAAO,CAAC;IAErB,sBAAsB;IACtB,WAAW,EAAE,CAAC,SAAS,CAAC;IACxB,oBAAoB,EAAE,CAAC,SAAS,EAAE,cAAc,CAAC;IAEjD,iBAAiB;IACjB,YAAY,EAAE,CAAC,SAAS,CAAC;IACzB,WAAW,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC;IAE7B,YAAY,EAAE,CAAC,MAAM,EAAE,KAAK,EAAE,WAAW,CAAC;IAE1C,eAAe;IACf,QAAQ,EAAE,EAAE,EAAE,gBAAgB;CAC/B,CAAA;AAID,8BAA8B;AACjB,QAAA,SAAS,GAAG,MAAM,CAAC,IAAI,CAAC,kBAAU,CAAe,CAAA"}
1
+ {"version":3,"file":"tools.js","sourceRoot":"","sources":["../../src/constants/tools.ts"],"names":[],"mappings":";;;AAAa,QAAA,UAAU,GAAG;IACxB,yCAAyC;IACzC,WAAW,EAAE,CAAC,IAAI,EAAE,WAAW,EAAE,QAAQ,EAAE,MAAM,EAAE,KAAK,CAAC;IACzD,cAAc,EAAE,CAAC,IAAI,EAAE,QAAQ,EAAE,MAAM,EAAE,KAAK,CAAC;IAE/C,kBAAkB;IAClB,UAAU,EAAE,CAAC,MAAM,EAAE,SAAS,CAAC;IAC/B,UAAU,EAAE,CAAC,OAAO,CAAC;IAErB,sBAAsB;IACtB,WAAW,EAAE,CAAC,SAAS,CAAC;IACxB,oBAAoB,EAAE,CAAC,SAAS,EAAE,cAAc,CAAC;IAEjD,iBAAiB;IACjB,YAAY,EAAE,CAAC,SAAS,CAAC;IACzB,WAAW,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC;IAE7B,YAAY,EAAE,CAAC,MAAM,EAAE,KAAK,EAAE,WAAW,CAAC;IAE1C,eAAe;IACf,QAAQ,EAAE,EAAE,EAAE,gBAAgB;CAC/B,CAAA;AAID,8BAA8B;AACjB,QAAA,SAAS,GAAG,MAAM,CAAC,IAAI,CAAC,kBAAU,CAAe,CAAA;AAEvD,MAAM,iBAAiB,GAAG,CAC/B,QAAkB,EAClB,MAA8B,EAC9B,EAAE;IACF,MAAM,OAAO,GAAG,IAAI,QAAQ,GAAG,CAAA;IAC/B,MAAM,QAAQ,GAAG,KAAK,QAAQ,GAAG,CAAA;IAEjC,0CAA0C;IAC1C,MAAM,UAAU,GAAG,kBAAU,CAAC,QAAQ,CAAa,CAAA;IAEnD,4DAA4D;IAC5D,MAAM,aAAa,GAAG,UAAU;SAC7B,MAAM,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,IAAI,MAAM,CAAC,CAAC,iDAAiD;SACpF,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,IAAI,KAAK,IAAI,MAAM,CAAC,KAAK,CAAC,KAAK,KAAK,GAAG,CAAC,CAAA;IAE1D,wDAAwD;IACxD,MAAM,gBAAgB,GAAG,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC;SAC5C,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC,EAAE,EAAE,CAAC,CAAC,UAAU,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;SAChD,GAAG,CAAC,CAAC,CAAC,KAAK,EAAE,KAAK,CAAC,EAAE,EAAE,CAAC,IAAI,KAAK,IAAI,KAAK,KAAK,KAAK,GAAG,CAAC,CAAA;IAE3D,4CAA4C;IAC5C,MAAM,YAAY,GAAG,CAAC,GAAG,aAAa,EAAE,GAAG,gBAAgB,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;IAEvE,OAAO,YAAY;QACjB,CAAC,CAAC,GAAG,OAAO,KAAK,YAAY,KAAK,QAAQ,EAAE;QAC5C,CAAC,CAAC,GAAG,OAAO,GAAG,QAAQ,EAAE,CAAA;AAC7B,CAAC,CAAA;AA1BY,QAAA,iBAAiB,qBA0B7B"}
@@ -42,7 +42,7 @@ export declare const PLAN_CONFIGS: Record<UsageLimits, PlanConfig>;
42
42
  export declare const CREDITS_USAGE_LIMITS: Record<UsageLimits, number>;
43
43
  export declare const costModes: readonly ["lite", "normal", "max", "experimental"];
44
44
  export type CostMode = (typeof costModes)[number];
45
- export declare const getModelForMode: (costMode: CostMode, operation: "agent" | "file-requests" | "check-new-files") => "claude-3-5-sonnet-20241022" | "claude-3-5-haiku-20241022" | "gpt-4o-2024-11-20" | "gpt-4o-mini-2024-07-18" | "gemini-2.5-pro-exp-03-25";
45
+ export declare const getModelForMode: (costMode: CostMode, operation: "agent" | "file-requests" | "check-new-files") => "claude-3-5-sonnet-20241022" | "claude-3-5-haiku-20241022" | "gpt-4o-2024-11-20" | "gpt-4o-mini-2024-07-18";
46
46
  export declare const claudeModels: {
47
47
  readonly sonnet: "claude-3-5-sonnet-20241022";
48
48
  readonly sonnet3_7: "claude-3-7-sonnet-20250219";
@@ -114,6 +114,7 @@ export declare const shortModelNames: {
114
114
  export declare const providerModelNames: {
115
115
  "gemini-2.5-pro-preview-03-25": string;
116
116
  "gemini-2.5-pro-exp-03-25": string;
117
+ "claude-3-5-haiku-20241022": string;
117
118
  "claude-3-7-sonnet-20250219": string;
118
119
  "claude-3-5-sonnet-20241022": string;
119
120
  "gpt-4.1-2025-04-14": string;
@@ -118,11 +118,7 @@ exports.CREDITS_USAGE_LIMITS = Object.fromEntries(Object.entries(exports.PLAN_CO
118
118
  exports.costModes = ['lite', 'normal', 'max', 'experimental'];
119
119
  const getModelForMode = (costMode, operation) => {
120
120
  if (operation === 'agent') {
121
- return costMode === 'experimental'
122
- ? exports.models.gemini2_5_pro_exp
123
- : costMode === 'lite'
124
- ? exports.claudeModels.haiku
125
- : exports.claudeModels.sonnet;
121
+ return costMode === 'lite' ? exports.claudeModels.haiku : exports.claudeModels.sonnet;
126
122
  }
127
123
  if (operation === 'file-requests') {
128
124
  return costMode === 'max' ? exports.claudeModels.sonnet : exports.claudeModels.haiku;
@@ -186,6 +182,7 @@ exports.shortModelNames = {
186
182
  exports.providerModelNames = {
187
183
  [exports.models.gemini2_5_pro_preview]: 'gemini',
188
184
  [exports.models.gemini2_5_pro_exp]: 'gemini',
185
+ [exports.models.haiku]: 'anthropic',
189
186
  [exports.models.sonnet3_7]: 'anthropic',
190
187
  [exports.models.sonnet]: 'anthropic',
191
188
  [exports.models.gpt4_1]: 'openai',
@@ -1 +1 @@
1
- {"version":3,"file":"constants.js","sourceRoot":"","sources":["../src/constants.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"constants.js","sourceRoot":"","sources":["../src/constants.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,12 @@
1
+ import db from './index';
2
+ type TransactionCallback<T> = Parameters<typeof db.transaction<T>>[0];
3
+ /**
4
+ * Executes a database transaction with SERIALIZABLE isolation level and automatic
5
+ * retries on serialization failures.
6
+ *
7
+ * @param callback The transaction callback
8
+ * @param context Additional context for logging (e.g., userId, operationId)
9
+ * @returns The result of the transaction
10
+ */
11
+ export declare function withSerializableTransaction<T>(callback: TransactionCallback<T>, context?: Record<string, any>): Promise<T>;
12
+ export {};
@@ -0,0 +1,36 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.withSerializableTransaction = withSerializableTransaction;
7
+ const logger_1 = require("../util/logger");
8
+ const promise_1 = require("../util/promise");
9
+ const index_1 = __importDefault(require("./index"));
10
+ /**
11
+ * Executes a database transaction with SERIALIZABLE isolation level and automatic
12
+ * retries on serialization failures.
13
+ *
14
+ * @param callback The transaction callback
15
+ * @param context Additional context for logging (e.g., userId, operationId)
16
+ * @returns The result of the transaction
17
+ */
18
+ async function withSerializableTransaction(callback, context = {}) {
19
+ return (0, promise_1.withRetry)(async () => {
20
+ return await index_1.default.transaction(callback, { isolationLevel: 'serializable' });
21
+ }, {
22
+ maxRetries: 3,
23
+ retryIf: (error) => {
24
+ // Retry on serialization failures (PostgreSQL error code 40001)
25
+ if (error?.code === '40001') {
26
+ logger_1.logger.warn({ ...context, error }, 'Serialization failure in transaction, retrying...');
27
+ return true;
28
+ }
29
+ return false;
30
+ },
31
+ onRetry: (error, attempt) => {
32
+ logger_1.logger.warn({ ...context, attempt, error }, `Transaction retry ${attempt}`);
33
+ },
34
+ });
35
+ }
36
+ //# sourceMappingURL=transaction.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"transaction.js","sourceRoot":"","sources":["../../src/db/transaction.ts"],"names":[],"mappings":";;;;;AAcA,kEAgCC;AA9CD,2CAAuC;AACvC,6CAA2C;AAC3C,oDAAwB;AAIxB;;;;;;;GAOG;AACI,KAAK,UAAU,2BAA2B,CAC/C,QAAgC,EAChC,UAA+B,EAAE;IAEjC,OAAO,IAAA,mBAAS,EACd,KAAK,IAAI,EAAE;QACT,OAAO,MAAM,eAAE,CAAC,WAAW,CACzB,QAAQ,EACR,EAAE,cAAc,EAAE,cAAc,EAAE,CACnC,CAAA;IACH,CAAC,EACD;QACE,UAAU,EAAE,CAAC;QACb,OAAO,EAAE,CAAC,KAAK,EAAE,EAAE;YACjB,gEAAgE;YAChE,IAAI,KAAK,EAAE,IAAI,KAAK,OAAO,EAAE,CAAC;gBAC5B,eAAM,CAAC,IAAI,CACT,EAAE,GAAG,OAAO,EAAE,KAAK,EAAE,EACrB,mDAAmD,CACpD,CAAA;gBACD,OAAO,IAAI,CAAA;YACb,CAAC;YACD,OAAO,KAAK,CAAA;QACd,CAAC;QACD,OAAO,EAAE,CAAC,KAAK,EAAE,OAAO,EAAE,EAAE;YAC1B,eAAM,CAAC,IAAI,CACT,EAAE,GAAG,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,EAC9B,qBAAqB,OAAO,EAAE,CAC/B,CAAA;QACH,CAAC;KACF,CACF,CAAA;AACH,CAAC"}
@@ -0,0 +1,66 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ // @ts-ignore
4
+ const bun_test_1 = require("bun:test");
5
+ const zod_1 = require("zod");
6
+ const constants_1 = require("../constants");
7
+ const stringify_schema_1 = require("../stringify-schema");
8
+ (0, bun_test_1.describe)('stringifySchemaForLLM', () => {
9
+ (0, bun_test_1.it)('should correctly stringify StartupProcessSchema', () => {
10
+ const result = (0, stringify_schema_1.stringifySchemaForLLM)(constants_1.StartupProcessSchema, 'StartupProcessSchema');
11
+ (0, bun_test_1.expect)(result).toMatchSnapshot();
12
+ });
13
+ (0, bun_test_1.it)('should correctly stringify CodebuffConfigSchema', () => {
14
+ const result = (0, stringify_schema_1.stringifySchemaForLLM)(constants_1.CodebuffConfigSchema, 'CodebuffConfigSchema');
15
+ (0, bun_test_1.expect)(result).toMatchSnapshot();
16
+ });
17
+ (0, bun_test_1.it)('should handle a more complex schema', () => {
18
+ const ComplexSchema = zod_1.z
19
+ .object({
20
+ id: zod_1.z.string().describe('Unique identifier'),
21
+ count: zod_1.z.number().int().positive().describe('A positive integer count'),
22
+ isActive: zod_1.z.boolean().describe('Activity status'),
23
+ tags: zod_1.z.array(zod_1.z.string()).optional().describe('Optional list of tags'),
24
+ nested: zod_1.z
25
+ .object({
26
+ value: zod_1.z.string(),
27
+ config: zod_1.z
28
+ .object({
29
+ retries: zod_1.z.number().default(3).describe('Number of retries'),
30
+ })
31
+ .describe('Nested configuration'),
32
+ })
33
+ .describe('A nested object structure'),
34
+ })
35
+ .describe('A complex test schema');
36
+ const result = (0, stringify_schema_1.stringifySchemaForLLM)(ComplexSchema, 'ComplexSchema');
37
+ (0, bun_test_1.expect)(result).toMatchSnapshot();
38
+ });
39
+ (0, bun_test_1.it)('should handle an empty object schema', () => {
40
+ const EmptySchema = zod_1.z.object({}).describe('An empty schema');
41
+ const result = (0, stringify_schema_1.stringifySchemaForLLM)(EmptySchema, 'EmptySchema');
42
+ (0, bun_test_1.expect)(result).toMatchSnapshot();
43
+ });
44
+ (0, bun_test_1.it)('should handle schema with only optional fields', () => {
45
+ const OptionalOnlySchema = zod_1.z
46
+ .object({
47
+ field1: zod_1.z.string().optional().describe('Optional field 1'),
48
+ field2: zod_1.z.number().optional().describe('Optional field 2'),
49
+ })
50
+ .describe('Schema with only optional fields');
51
+ const result = (0, stringify_schema_1.stringifySchemaForLLM)(OptionalOnlySchema, 'OptionalOnlySchema');
52
+ (0, bun_test_1.expect)(result).toMatchSnapshot();
53
+ });
54
+ (0, bun_test_1.it)('should handle schema with default values', () => {
55
+ const DefaultSchema = zod_1.z
56
+ .object({
57
+ name: zod_1.z.string().default('anonymous').describe('Name with default'),
58
+ level: zod_1.z.number().default(1).describe('Level with default'),
59
+ enabled: zod_1.z.boolean().default(false).describe('Enabled with default'),
60
+ })
61
+ .describe('Schema demonstrating default values');
62
+ const result = (0, stringify_schema_1.stringifySchemaForLLM)(DefaultSchema, 'DefaultSchema');
63
+ (0, bun_test_1.expect)(result).toMatchSnapshot();
64
+ });
65
+ });
66
+ //# sourceMappingURL=stringify-schema.test.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"stringify-schema.test.js","sourceRoot":"","sources":["../../../src/json-config/__tests__/stringify-schema.test.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,77 @@
1
+ import { z } from 'zod';
2
+ export declare const StartupProcessSchema: z.ZodObject<{
3
+ name: z.ZodString;
4
+ command: z.ZodString;
5
+ cwd: z.ZodOptional<z.ZodString>;
6
+ enabled: z.ZodDefault<z.ZodOptional<z.ZodBoolean>>;
7
+ stdoutFile: z.ZodOptional<z.ZodString>;
8
+ stderrFile: z.ZodOptional<z.ZodString>;
9
+ }, "strip", z.ZodTypeAny, {
10
+ name: string;
11
+ command: string;
12
+ enabled: boolean;
13
+ cwd?: string | undefined;
14
+ stdoutFile?: string | undefined;
15
+ stderrFile?: string | undefined;
16
+ }, {
17
+ name: string;
18
+ command: string;
19
+ cwd?: string | undefined;
20
+ enabled?: boolean | undefined;
21
+ stdoutFile?: string | undefined;
22
+ stderrFile?: string | undefined;
23
+ }>;
24
+ export declare const CodebuffConfigSchema: z.ZodObject<{
25
+ startupProcesses: z.ZodOptional<z.ZodArray<z.ZodObject<{
26
+ name: z.ZodString;
27
+ command: z.ZodString;
28
+ cwd: z.ZodOptional<z.ZodString>;
29
+ enabled: z.ZodDefault<z.ZodOptional<z.ZodBoolean>>;
30
+ stdoutFile: z.ZodOptional<z.ZodString>;
31
+ stderrFile: z.ZodOptional<z.ZodString>;
32
+ }, "strip", z.ZodTypeAny, {
33
+ name: string;
34
+ command: string;
35
+ enabled: boolean;
36
+ cwd?: string | undefined;
37
+ stdoutFile?: string | undefined;
38
+ stderrFile?: string | undefined;
39
+ }, {
40
+ name: string;
41
+ command: string;
42
+ cwd?: string | undefined;
43
+ enabled?: boolean | undefined;
44
+ stdoutFile?: string | undefined;
45
+ stderrFile?: string | undefined;
46
+ }>, "many">>;
47
+ }, "strip", z.ZodTypeAny, {
48
+ startupProcesses?: {
49
+ name: string;
50
+ command: string;
51
+ enabled: boolean;
52
+ cwd?: string | undefined;
53
+ stdoutFile?: string | undefined;
54
+ stderrFile?: string | undefined;
55
+ }[] | undefined;
56
+ }, {
57
+ startupProcesses?: {
58
+ name: string;
59
+ command: string;
60
+ cwd?: string | undefined;
61
+ enabled?: boolean | undefined;
62
+ stdoutFile?: string | undefined;
63
+ stderrFile?: string | undefined;
64
+ }[] | undefined;
65
+ }>;
66
+ /**
67
+ * TypeScript type representing a validated startup process object.
68
+ * This type is inferred from the `StartupProcessSchema` and provides type safety
69
+ * when working with startup process configurations in code.
70
+ */
71
+ export type StartupProcess = z.infer<typeof StartupProcessSchema>;
72
+ /**
73
+ * TypeScript type representing a validated Codebuff configuration object.
74
+ * This type is inferred from the `CodebuffConfigSchema` and provides type safety
75
+ * for the entire configuration structure.
76
+ */
77
+ export type CodebuffConfig = z.infer<typeof CodebuffConfigSchema>;
@@ -0,0 +1,42 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.CodebuffConfigSchema = exports.StartupProcessSchema = void 0;
4
+ const zod_1 = require("zod");
5
+ exports.StartupProcessSchema = zod_1.z
6
+ .object({
7
+ name: zod_1.z
8
+ .string()
9
+ .min(1, 'Process name is required')
10
+ .describe('A user-friendly name for the process.'),
11
+ command: zod_1.z
12
+ .string()
13
+ .min(1, 'Command is required')
14
+ .describe('The actual shell command to execute.'),
15
+ cwd: zod_1.z
16
+ .string()
17
+ .optional()
18
+ .describe('The working directory from which to run the command.'),
19
+ enabled: zod_1.z
20
+ .boolean()
21
+ .optional()
22
+ .default(true)
23
+ .describe('Whether this process should be run.'),
24
+ stdoutFile: zod_1.z
25
+ .string()
26
+ .optional()
27
+ .describe('Path to write process stdout output. If not specified, output is not stored.'),
28
+ stderrFile: zod_1.z
29
+ .string()
30
+ .optional()
31
+ .describe('Path to write process stderr output. If not specified, output is not stored.'),
32
+ })
33
+ .describe('Defines a single startup process. This validates the structure of an object representing a command that Codebuff can run automatically when it starts.');
34
+ exports.CodebuffConfigSchema = zod_1.z
35
+ .object({
36
+ startupProcesses: zod_1.z
37
+ .array(exports.StartupProcessSchema)
38
+ .optional()
39
+ .describe('An array of startup processes, each validated by the StartupProcessSchema.'),
40
+ })
41
+ .describe('Defines the overall Codebuff configuration file (e.g., codebuff.json). This schema defines the top-level structure of the configuration.');
42
+ //# sourceMappingURL=constants.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"constants.js","sourceRoot":"","sources":["../../src/json-config/constants.ts"],"names":[],"mappings":";;;AAAA,6BAAuB;AAEV,QAAA,oBAAoB,GAAG,OAAC;KAClC,MAAM,CAAC;IACN,IAAI,EAAE,OAAC;SACJ,MAAM,EAAE;SACR,GAAG,CAAC,CAAC,EAAE,0BAA0B,CAAC;SAClC,QAAQ,CAAC,uCAAuC,CAAC;IACpD,OAAO,EAAE,OAAC;SACP,MAAM,EAAE;SACR,GAAG,CAAC,CAAC,EAAE,qBAAqB,CAAC;SAC7B,QAAQ,CAAC,sCAAsC,CAAC;IACnD,GAAG,EAAE,OAAC;SACH,MAAM,EAAE;SACR,QAAQ,EAAE;SACV,QAAQ,CAAC,sDAAsD,CAAC;IACnE,OAAO,EAAE,OAAC;SACP,OAAO,EAAE;SACT,QAAQ,EAAE;SACV,OAAO,CAAC,IAAI,CAAC;SACb,QAAQ,CAAC,qCAAqC,CAAC;IAClD,UAAU,EAAE,OAAC;SACV,MAAM,EAAE;SACR,QAAQ,EAAE;SACV,QAAQ,CACP,8EAA8E,CAC/E;IACH,UAAU,EAAE,OAAC;SACV,MAAM,EAAE;SACR,QAAQ,EAAE;SACV,QAAQ,CACP,8EAA8E,CAC/E;CACJ,CAAC;KACD,QAAQ,CACP,wJAAwJ,CACzJ,CAAA;AAEU,QAAA,oBAAoB,GAAG,OAAC;KAClC,MAAM,CAAC;IACN,gBAAgB,EAAE,OAAC;SAChB,KAAK,CAAC,4BAAoB,CAAC;SAC3B,QAAQ,EAAE;SACV,QAAQ,CACP,4EAA4E,CAC7E;CACJ,CAAC;KACD,QAAQ,CACP,0IAA0I,CAC3I,CAAA"}
@@ -0,0 +1,10 @@
1
+ import { z } from 'zod';
2
+ /**
3
+ * Generates a human-readable string representation of a Zod schema,
4
+ * including descriptions defined using `.describe()`.
5
+ *
6
+ * @param schema The Zod schema object (e.g., z.object({...})).
7
+ * @param schemaName A name for the root schema.
8
+ * @returns A string describing the schema structure and field descriptions.
9
+ */
10
+ export declare function stringifySchemaForLLM(schema: z.ZodObject<any>, schemaName: string): string;
@@ -0,0 +1,87 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.stringifySchemaForLLM = stringifySchemaForLLM;
4
+ const zod_1 = require("zod");
5
+ function getSchemaDescription(schema) {
6
+ return schema.description;
7
+ }
8
+ function formatDescription(description) {
9
+ return description ? ` (${description})` : '';
10
+ }
11
+ function indent(level) {
12
+ return ' '.repeat(level);
13
+ }
14
+ function stringifyZodType(schema, level = 0, fieldName) {
15
+ const description = getSchemaDescription(schema);
16
+ const baseIndent = indent(level);
17
+ const fieldPrefix = fieldName ? `${fieldName}: ` : '';
18
+ // Handle optional types
19
+ if (schema instanceof zod_1.z.ZodOptional || schema instanceof zod_1.z.ZodNullable) {
20
+ const innerType = stringifyZodType(schema._def.innerType, level, fieldName);
21
+ // Remove the field name from the inner type string if present
22
+ const innerTypeWithoutPrefix = fieldName
23
+ ? innerType.replace(`${baseIndent}${fieldPrefix}`, `${baseIndent}`)
24
+ : innerType;
25
+ return `${baseIndent}${fieldPrefix}Optional<${innerTypeWithoutPrefix.trim()}>${formatDescription(description)}`;
26
+ }
27
+ // Handle default types
28
+ if (schema instanceof zod_1.z.ZodDefault) {
29
+ const innerType = stringifyZodType(schema._def.innerType, level, fieldName);
30
+ // Remove the field name from the inner type string if present
31
+ const innerTypeWithoutPrefix = fieldName
32
+ ? innerType.replace(`${baseIndent}${fieldPrefix}`, `${baseIndent}`)
33
+ : innerType;
34
+ const defaultValue = JSON.stringify(schema._def.defaultValue());
35
+ return `${baseIndent}${fieldPrefix}Default<${innerTypeWithoutPrefix.trim()}> (default: ${defaultValue})${formatDescription(description)}`;
36
+ }
37
+ // Handle object types
38
+ if (schema instanceof zod_1.z.ZodObject) {
39
+ const shape = schema.shape;
40
+ let output = `${baseIndent}${fieldPrefix}Object${formatDescription(description)} {\n`;
41
+ for (const key in shape) {
42
+ output += stringifyZodType(shape[key], level + 1, key) + '\n';
43
+ }
44
+ output += `${baseIndent}}`;
45
+ return output;
46
+ }
47
+ // Handle array types
48
+ if (schema instanceof zod_1.z.ZodArray) {
49
+ const elementType = stringifyZodType(schema.element, level).trim();
50
+ return `${baseIndent}${fieldPrefix}Array<${elementType}>${formatDescription(description)}`;
51
+ }
52
+ // Handle basic types (string, number, boolean, etc.)
53
+ if (schema instanceof zod_1.z.ZodString) {
54
+ return `${baseIndent}${fieldPrefix}String${formatDescription(description)}`;
55
+ }
56
+ if (schema instanceof zod_1.z.ZodBoolean) {
57
+ return `${baseIndent}${fieldPrefix}Boolean${formatDescription(description)}`;
58
+ }
59
+ if (schema instanceof zod_1.z.ZodNumber) {
60
+ return `${baseIndent}${fieldPrefix}Number${formatDescription(description)}`;
61
+ }
62
+ // Add more basic types as needed (e.g., ZodDate, ZodEnum)
63
+ // Fallback for unknown types
64
+ return `${baseIndent}${fieldPrefix}UnknownType${formatDescription(description)}`;
65
+ }
66
+ /**
67
+ * Generates a human-readable string representation of a Zod schema,
68
+ * including descriptions defined using `.describe()`.
69
+ *
70
+ * @param schema The Zod schema object (e.g., z.object({...})).
71
+ * @param schemaName A name for the root schema.
72
+ * @returns A string describing the schema structure and field descriptions.
73
+ */
74
+ function stringifySchemaForLLM(schema, schemaName) {
75
+ let output = `Schema: ${schemaName}\n`;
76
+ output += stringifyZodType(schema);
77
+ return output;
78
+ }
79
+ // --- Example Usage ---
80
+ /*
81
+ console.log('--- StartupProcessSchema ---')
82
+ console.log(stringifySchemaForLLM(StartupProcessSchema, 'StartupProcessSchema'))
83
+
84
+ console.log('\n--- CodebuffConfigSchema ---')
85
+ console.log(stringifySchemaForLLM(CodebuffConfigSchema, 'CodebuffConfigSchema'))
86
+ */
87
+ //# sourceMappingURL=stringify-schema.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"stringify-schema.js","sourceRoot":"","sources":["../../src/json-config/stringify-schema.ts"],"names":[],"mappings":"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"}
@@ -7,13 +7,13 @@ export declare const usageDataSchema: z.ZodObject<{
7
7
  netBalance: z.ZodNumber;
8
8
  breakdown: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodNumber>>;
9
9
  }, "strip", z.ZodTypeAny, {
10
- totalRemaining: number;
11
10
  totalDebt: number;
11
+ totalRemaining: number;
12
12
  netBalance: number;
13
13
  breakdown?: Record<string, number> | undefined;
14
14
  }, {
15
- totalRemaining: number;
16
15
  totalDebt: number;
16
+ totalRemaining: number;
17
17
  netBalance: number;
18
18
  breakdown?: Record<string, number> | undefined;
19
19
  }>;
@@ -22,8 +22,8 @@ export declare const usageDataSchema: z.ZodObject<{
22
22
  }, "strip", z.ZodTypeAny, {
23
23
  nextMonthlyGrant: number;
24
24
  balance: {
25
- totalRemaining: number;
26
25
  totalDebt: number;
26
+ totalRemaining: number;
27
27
  netBalance: number;
28
28
  breakdown?: Record<string, number> | undefined;
29
29
  };
@@ -32,8 +32,8 @@ export declare const usageDataSchema: z.ZodObject<{
32
32
  }, {
33
33
  nextMonthlyGrant: number;
34
34
  balance: {
35
- totalRemaining: number;
36
35
  totalDebt: number;
36
+ totalRemaining: number;
37
37
  netBalance: number;
38
38
  breakdown?: Record<string, number> | undefined;
39
39
  };
@@ -1,9 +1,8 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- const constants_1 = require("src/constants");
4
- const string_1 = require("../string");
5
- // @ts-ignore
6
3
  const bun_test_1 = require("bun:test");
4
+ const constants_1 = require("../../constants");
5
+ const string_1 = require("../string");
7
6
  (0, bun_test_1.describe)('replaceNonStandardPlaceholderComments', () => {
8
7
  (0, bun_test_1.it)('should replace C-style comments', () => {
9
8
  const input = `
@@ -1 +1 @@
1
- {"version":3,"file":"string.test.js","sourceRoot":"","sources":["../../../src/util/__tests__/string.test.ts"],"names":[],"mappings":";;AAAA,6CAAoD;AACpD,sCAAiE;AACjE,aAAa;AACb,uCAA+C;AAE/C,IAAA,mBAAQ,EAAC,uCAAuC,EAAE,GAAG,EAAE;IACrD,IAAA,aAAE,EAAC,iCAAiC,EAAE,GAAG,EAAE;QACzC,MAAM,KAAK,GAAG;;;;;;CAMjB,CAAA;QACG,MAAM,QAAQ,GAAG;;IAEjB,gCAAoB;;IAEpB,gCAAoB;;CAEvB,CAAA;QACG,IAAA,iBAAM,EACJ,IAAA,8CAAqC,EAAC,KAAK,EAAE,gCAAoB,CAAC,CACnE,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAA;IAClB,CAAC,CAAC,CAAA;IAEF,IAAA,aAAE,EAAC,4CAA4C,EAAE,GAAG,EAAE;QACpD,MAAM,KAAK,GAAG;;;;;;CAMjB,CAAA;QACG,MAAM,QAAQ,GAAG;;IAEjB,gCAAoB;;IAEpB,gCAAoB;;CAEvB,CAAA;QACG,IAAA,iBAAM,EACJ,IAAA,8CAAqC,EAAC,KAAK,EAAE,gCAAoB,CAAC,CACnE,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAA;IAClB,CAAC,CAAC,CAAA;IAEF,IAAA,aAAE,EAAC,sCAAsC,EAAE,GAAG,EAAE;QAC9C,MAAM,KAAK,GAAG;;;;;CAKjB,CAAA;QACG,MAAM,QAAQ,GAAG;;MAEf,gCAAoB;;MAEpB,gCAAoB;CACzB,CAAA;QACG,IAAA,iBAAM,EACJ,IAAA,8CAAqC,EAAC,KAAK,EAAE,gCAAoB,CAAC,CACnE,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAA;IAClB,CAAC,CAAC,CAAA;IAEF,IAAA,aAAE,EAAC,6BAA6B,EAAE,GAAG,EAAE;QACrC,MAAM,KAAK,GAAG;;;;;;;;;;CAUjB,CAAA;QACG,MAAM,QAAQ,GAAG;;;;QAIb,gCAAoB;;QAEpB,gCAAoB;;;;CAI3B,CAAA;QACG,IAAA,iBAAM,EACJ,IAAA,8CAAqC,EAAC,KAAK,EAAE,gCAAoB,CAAC,CACnE,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAA;IAClB,CAAC,CAAC,CAAA;AACJ,CAAC,CAAC,CAAA"}
1
+ {"version":3,"file":"string.test.js","sourceRoot":"","sources":["../../../src/util/__tests__/string.test.ts"],"names":[],"mappings":";;AAAA,uCAA+C;AAE/C,+CAAsD;AACtD,sCAAiE;AAEjE,IAAA,mBAAQ,EAAC,uCAAuC,EAAE,GAAG,EAAE;IACrD,IAAA,aAAE,EAAC,iCAAiC,EAAE,GAAG,EAAE;QACzC,MAAM,KAAK,GAAG;;;;;;CAMjB,CAAA;QACG,MAAM,QAAQ,GAAG;;IAEjB,gCAAoB;;IAEpB,gCAAoB;;CAEvB,CAAA;QACG,IAAA,iBAAM,EACJ,IAAA,8CAAqC,EAAC,KAAK,EAAE,gCAAoB,CAAC,CACnE,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAA;IAClB,CAAC,CAAC,CAAA;IAEF,IAAA,aAAE,EAAC,4CAA4C,EAAE,GAAG,EAAE;QACpD,MAAM,KAAK,GAAG;;;;;;CAMjB,CAAA;QACG,MAAM,QAAQ,GAAG;;IAEjB,gCAAoB;;IAEpB,gCAAoB;;CAEvB,CAAA;QACG,IAAA,iBAAM,EACJ,IAAA,8CAAqC,EAAC,KAAK,EAAE,gCAAoB,CAAC,CACnE,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAA;IAClB,CAAC,CAAC,CAAA;IAEF,IAAA,aAAE,EAAC,sCAAsC,EAAE,GAAG,EAAE;QAC9C,MAAM,KAAK,GAAG;;;;;CAKjB,CAAA;QACG,MAAM,QAAQ,GAAG;;MAEf,gCAAoB;;MAEpB,gCAAoB;CACzB,CAAA;QACG,IAAA,iBAAM,EACJ,IAAA,8CAAqC,EAAC,KAAK,EAAE,gCAAoB,CAAC,CACnE,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAA;IAClB,CAAC,CAAC,CAAA;IAEF,IAAA,aAAE,EAAC,6BAA6B,EAAE,GAAG,EAAE;QACrC,MAAM,KAAK,GAAG;;;;;;;;;;CAUjB,CAAA;QACG,MAAM,QAAQ,GAAG;;;;QAIb,gCAAoB;;QAEpB,gCAAoB;;;;CAI3B,CAAA;QACG,IAAA,iBAAM,EACJ,IAAA,8CAAqC,EAAC,KAAK,EAAE,gCAAoB,CAAC,CACnE,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAA;IAClB,CAAC,CAAC,CAAA;AACJ,CAAC,CAAC,CAAA"}
@@ -1,9 +1,9 @@
1
1
  export declare const truncateString: (str: string, maxLength: number) => string;
2
- export declare const truncateStringWithMessage: ({ str, maxLength, message, truncate, }: {
2
+ export declare const truncateStringWithMessage: ({ str, maxLength, message, remove, }: {
3
3
  str: string;
4
4
  maxLength: number;
5
5
  message?: string;
6
- truncate?: "END" | "START";
6
+ remove?: "END" | "START" | "MIDDLE";
7
7
  }) => string;
8
8
  /**
9
9
  * Check if a character is a whitespace character according
@@ -58,3 +58,4 @@ export declare const generateCompactId: (prefix?: string) => string;
58
58
  * Removes null characters from a string
59
59
  */
60
60
  export declare const stripNullChars: (str: string) => string;
61
+ export declare function stripColors(str: string): string;
@@ -1,6 +1,7 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.stripNullChars = exports.generateCompactId = exports.transformJsonInString = exports.hasLazyEdit = exports.safeReplace = exports.ensureUrlProtocol = exports.snakeToTitleCase = exports.capitalize = exports.pluralize = exports.randBoolFromStr = exports.replaceNonStandardPlaceholderComments = exports.isWhitespace = exports.truncateStringWithMessage = exports.truncateString = void 0;
4
+ exports.stripColors = stripColors;
4
5
  const lodash_1 = require("lodash");
5
6
  const truncateString = (str, maxLength) => {
6
7
  if (str.length <= maxLength) {
@@ -9,16 +10,21 @@ const truncateString = (str, maxLength) => {
9
10
  return str.slice(0, maxLength) + '...';
10
11
  };
11
12
  exports.truncateString = truncateString;
12
- const truncateStringWithMessage = ({ str, maxLength, message = 'TRUNCATED_DUE_TO_LENGTH', truncate = 'END', }) => {
13
+ const truncateStringWithMessage = ({ str, maxLength, message = 'TRUNCATED_DUE_TO_LENGTH', remove = 'END', }) => {
13
14
  if (str.length <= maxLength) {
14
15
  return str;
15
16
  }
16
- if (truncate === 'END') {
17
+ if (remove === 'END') {
17
18
  const suffix = `\n[...${message}]`;
18
19
  return str.slice(0, maxLength - suffix.length) + suffix;
19
20
  }
20
- const prefix = `[${message}...]\n`;
21
- return prefix + str.slice(0, maxLength - prefix.length);
21
+ if (remove === 'START') {
22
+ const prefix = `[${message}...]\n`;
23
+ return prefix + str.slice(0, maxLength - prefix.length);
24
+ }
25
+ const middle = `\n[...${message}...]\n`;
26
+ const length = Math.floor((maxLength - middle.length) / 2);
27
+ return str.slice(0, length) + middle + str.slice(-length);
22
28
  };
23
29
  exports.truncateStringWithMessage = truncateStringWithMessage;
24
30
  /**
@@ -207,4 +213,8 @@ const stripNullChars = (str) => {
207
213
  return str.replace(/\u0000/g, '');
208
214
  };
209
215
  exports.stripNullChars = stripNullChars;
216
+ const ansiRegex = /\x1B(?:[@-Z\\-_]|\[[0-?]*[ -/]*[@-~])/g;
217
+ function stripColors(str) {
218
+ return str.replace(ansiRegex, '');
219
+ }
210
220
  //# sourceMappingURL=string.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"string.js","sourceRoot":"","sources":["../../src/util/string.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"string.js","sourceRoot":"","sources":["../../src/util/string.ts"],"names":[],"mappings":"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"}