lua-cli 3.5.0-alpha.4 → 3.5.0-alpha.6

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 (93) hide show
  1. package/dist/api/http.client.js +5 -1
  2. package/dist/api/http.client.js.map +1 -1
  3. package/dist/commands/compile.d.ts +0 -1
  4. package/dist/commands/compile.js +14 -10
  5. package/dist/commands/compile.js.map +1 -1
  6. package/dist/commands/integrations.js +1 -1
  7. package/dist/commands/integrations.js.map +1 -1
  8. package/dist/commands/push.js +79 -6
  9. package/dist/commands/push.js.map +1 -1
  10. package/dist/commands/sync.js +9 -5
  11. package/dist/commands/sync.js.map +1 -1
  12. package/dist/compiler/agent-traverser.d.ts +1 -0
  13. package/dist/compiler/agent-traverser.js +11 -4
  14. package/dist/compiler/agent-traverser.js.map +1 -1
  15. package/dist/compiler/bundler.d.ts +1 -1
  16. package/dist/compiler/bundler.js +2 -1
  17. package/dist/compiler/bundler.js.map +1 -1
  18. package/dist/compiler/compiler.js +3 -2
  19. package/dist/compiler/compiler.js.map +1 -1
  20. package/dist/compiler/index.d.ts +1 -1
  21. package/dist/compiler/index.js +1 -1
  22. package/dist/compiler/index.js.map +1 -1
  23. package/dist/compiler/plugins/base.d.ts +21 -1
  24. package/dist/compiler/plugins/base.js +37 -1
  25. package/dist/compiler/plugins/base.js.map +1 -1
  26. package/dist/compiler/plugins/job.plugin.js +17 -64
  27. package/dist/compiler/plugins/job.plugin.js.map +1 -1
  28. package/dist/compiler/plugins/mcp-server.plugin.d.ts +0 -8
  29. package/dist/compiler/plugins/mcp-server.plugin.js +25 -58
  30. package/dist/compiler/plugins/mcp-server.plugin.js.map +1 -1
  31. package/dist/compiler/plugins/postprocessor.plugin.js +1 -10
  32. package/dist/compiler/plugins/postprocessor.plugin.js.map +1 -1
  33. package/dist/compiler/plugins/preprocessor.plugin.js +4 -17
  34. package/dist/compiler/plugins/preprocessor.plugin.js.map +1 -1
  35. package/dist/compiler/plugins/processor-base.js +2 -9
  36. package/dist/compiler/plugins/processor-base.js.map +1 -1
  37. package/dist/compiler/plugins/skill.plugin.js +37 -32
  38. package/dist/compiler/plugins/skill.plugin.js.map +1 -1
  39. package/dist/compiler/plugins/tool.plugin.d.ts +1 -0
  40. package/dist/compiler/plugins/tool.plugin.js +9 -30
  41. package/dist/compiler/plugins/tool.plugin.js.map +1 -1
  42. package/dist/compiler/plugins/webhook.plugin.js +11 -23
  43. package/dist/compiler/plugins/webhook.plugin.js.map +1 -1
  44. package/dist/compiler/types.d.ts +5 -0
  45. package/dist/compiler/types.js +7 -0
  46. package/dist/compiler/types.js.map +1 -1
  47. package/dist/compiler/utils/ast-helpers.d.ts +69 -17
  48. package/dist/compiler/utils/ast-helpers.js +250 -61
  49. package/dist/compiler/utils/ast-helpers.js.map +1 -1
  50. package/dist/config/compile.constants.d.ts +26 -0
  51. package/dist/config/compile.constants.js +44 -0
  52. package/dist/config/compile.constants.js.map +1 -1
  53. package/dist/primitives/base.handler.d.ts +45 -6
  54. package/dist/primitives/base.handler.js +121 -17
  55. package/dist/primitives/base.handler.js.map +1 -1
  56. package/dist/primitives/index.d.ts +4 -5
  57. package/dist/primitives/index.js +7 -17
  58. package/dist/primitives/index.js.map +1 -1
  59. package/dist/primitives/job.handler.d.ts +0 -5
  60. package/dist/primitives/job.handler.js +1 -15
  61. package/dist/primitives/job.handler.js.map +1 -1
  62. package/dist/primitives/mcp-server.handler.d.ts +1 -1
  63. package/dist/primitives/mcp-server.handler.js +15 -6
  64. package/dist/primitives/mcp-server.handler.js.map +1 -1
  65. package/dist/primitives/postprocessor.handler.d.ts +0 -11
  66. package/dist/primitives/postprocessor.handler.js +1 -24
  67. package/dist/primitives/postprocessor.handler.js.map +1 -1
  68. package/dist/primitives/preprocessor.handler.d.ts +0 -11
  69. package/dist/primitives/preprocessor.handler.js +1 -24
  70. package/dist/primitives/preprocessor.handler.js.map +1 -1
  71. package/dist/primitives/skill.handler.d.ts +3 -1
  72. package/dist/primitives/skill.handler.js +10 -29
  73. package/dist/primitives/skill.handler.js.map +1 -1
  74. package/dist/primitives/types.d.ts +18 -0
  75. package/dist/primitives/types.js.map +1 -1
  76. package/dist/primitives/webhook.handler.d.ts +0 -5
  77. package/dist/primitives/webhook.handler.js +1 -15
  78. package/dist/primitives/webhook.handler.js.map +1 -1
  79. package/dist/utils/cli.js +3 -3
  80. package/dist/utils/cli.js.map +1 -1
  81. package/dist/utils/command-utils.d.ts +12 -10
  82. package/dist/utils/command-utils.js +19 -17
  83. package/dist/utils/command-utils.js.map +1 -1
  84. package/dist/utils/files.d.ts +10 -0
  85. package/dist/utils/files.js +34 -0
  86. package/dist/utils/files.js.map +1 -1
  87. package/dist/utils/sandbox.js +3 -20
  88. package/dist/utils/sandbox.js.map +1 -1
  89. package/dist/web/app.css +186 -912
  90. package/dist/web/app.js +46 -46
  91. package/docs/README.md +3 -3
  92. package/package.json +1 -1
  93. package/template/package.json +1 -1
@@ -15,9 +15,8 @@
15
15
  */
16
16
  import { Node } from 'ts-morph';
17
17
  import { findImportSource } from '../utils/ast-helpers.js';
18
- import { PrimitiveKind, } from '../types.js';
19
- import { BasePlugin, validationError, validationWarning } from './base.js';
20
- import { extractStringProperty } from '../utils/ast-helpers.js';
18
+ import { BasePlugin, validationWarning } from './base.js';
19
+ import { extractStringProperty, extractArrayProperty, extractNestedProperty, resolveIdentifierToArray } from '../utils/ast-helpers.js';
21
20
  /**
22
21
  * Plugin for compiling skill primitives.
23
22
  * Extends BasePlugin for common detection/entry point logic.
@@ -65,10 +64,31 @@ export class SkillPlugin extends BasePlugin {
65
64
  const toolsProp = config.getProperty('tools');
66
65
  if (!toolsProp || !Node.isPropertyAssignment(toolsProp))
67
66
  return refs;
67
+ // Try evaluation first (handles variable references)
68
+ const toolsArray = extractArrayProperty(config, 'tools');
69
+ if (toolsArray) {
70
+ toolsArray.forEach((tool, index) => {
71
+ if (typeof tool === 'string') {
72
+ refs.push(tool);
73
+ }
74
+ else if (tool && typeof tool === 'object') {
75
+ const name = extractNestedProperty(tool, 'name');
76
+ refs.push(typeof name === 'string' ? name : `__evaluated_tool_${index}`);
77
+ }
78
+ });
79
+ return refs;
80
+ }
81
+ // Fallback to AST traversal for inline arrays and variable references
68
82
  const toolsValue = toolsProp.getInitializer();
69
- if (!toolsValue || !Node.isArrayLiteralExpression(toolsValue))
83
+ if (!toolsValue)
84
+ return refs;
85
+ // Resolve: inline array or variable reference to array
86
+ const arrayExpr = Node.isArrayLiteralExpression(toolsValue)
87
+ ? toolsValue
88
+ : resolveIdentifierToArray(toolsValue);
89
+ if (!arrayExpr)
70
90
  return refs;
71
- for (const element of toolsValue.getElements()) {
91
+ for (const element of arrayExpr.getElements()) {
72
92
  if (Node.isNewExpression(element)) {
73
93
  // new ToolClass() → get class name
74
94
  const className = element.getExpression().getText();
@@ -80,7 +100,6 @@ export class SkillPlugin extends BasePlugin {
80
100
  }
81
101
  else if (Node.isCallExpression(element)) {
82
102
  // defineTool(...) or someFactory() → try to get the assigned name
83
- // This is trickier - for now just note we have a tool
84
103
  refs.push(`__inline_tool_${refs.length}`);
85
104
  }
86
105
  }
@@ -106,8 +125,11 @@ export class SkillPlugin extends BasePlugin {
106
125
  return;
107
126
  if (property === 'addTools') {
108
127
  const arrayArg = args[0];
109
- if (Node.isArrayLiteralExpression(arrayArg)) {
110
- for (const element of arrayArg.getElements()) {
128
+ const arrayExpr = Node.isArrayLiteralExpression(arrayArg)
129
+ ? arrayArg
130
+ : resolveIdentifierToArray(arrayArg);
131
+ if (arrayExpr) {
132
+ for (const element of arrayExpr.getElements()) {
111
133
  if (Node.isNewExpression(element)) {
112
134
  refs.push(element.getExpression().getText());
113
135
  }
@@ -130,22 +152,11 @@ export class SkillPlugin extends BasePlugin {
130
152
  return refs;
131
153
  }
132
154
  validate(metadata) {
133
- const errors = [];
134
- const warnings = [];
135
- if (!metadata.name) {
136
- errors.push(validationError('Skill must have a name', { line: metadata.line }));
137
- }
138
- if (!metadata.description) {
139
- warnings.push(validationWarning('Skill should have a description', { line: metadata.line }));
140
- }
155
+ const { errors, warnings } = this.baseValidation(metadata);
141
156
  if (metadata.metadata.toolRefs.length === 0) {
142
157
  warnings.push(validationWarning('Skill has no tools - consider adding tools or removing the skill', { line: metadata.line }));
143
158
  }
144
- return {
145
- valid: errors.length === 0,
146
- errors,
147
- warnings,
148
- };
159
+ return { valid: errors.length === 0, errors, warnings };
149
160
  }
150
161
  /**
151
162
  * Add context and tools fields to the entry point.
@@ -184,10 +195,10 @@ export class SkillPlugin extends BasePlugin {
184
195
  try {
185
196
  const toolFile = context.project.addSourceFileAtPath(toolSourcePath);
186
197
  const detected = toolPlugin.detect(toolFile);
187
- // Find by class/export name
198
+ // Find by class/export name or tool name
188
199
  const match = detected.find(d => {
189
200
  const toolMeta = d.metadata;
190
- return d.exportName === className || toolMeta.className === className;
201
+ return d.exportName === className || d.name === className || toolMeta.className === className;
191
202
  }) || (detected.length === 1 ? detected[0] : null);
192
203
  if (match) {
193
204
  tools.push(match);
@@ -223,21 +234,15 @@ export class SkillPlugin extends BasePlugin {
223
234
  if (p.kind !== 'tool')
224
235
  return false;
225
236
  const toolMeta = p.metadata;
226
- return toolMeta.className === className || p.name === className;
237
+ return p.exportName === className || p.name === className || toolMeta.className === className;
227
238
  });
228
239
  return tool?.name || className;
229
240
  });
230
- const skill = {
231
- kind: PrimitiveKind.SKILL,
232
- name: compiled.name,
233
- description: compiled.description,
234
- path: `artifacts/${compiled.kind}/${compiled.name}.js`,
235
- sourcePath: compiled.sourcePath,
236
- hash: compiled.artifact.hash,
241
+ return {
242
+ ...this.baseManifestFields(compiled),
237
243
  context: skillMetadata.context,
238
244
  tools: toolNames,
239
245
  };
240
- return skill;
241
246
  }
242
247
  }
243
248
  //# sourceMappingURL=skill.plugin.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"skill.plugin.js","sourceRoot":"","sources":["../../../src/compiler/plugins/skill.plugin.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"skill.plugin.js","sourceRoot":"","sources":["../../../src/compiler/plugins/skill.plugin.ts"],"names":[],"mappings":"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"}
@@ -45,6 +45,7 @@ export declare class ToolPlugin extends BasePlugin<ToolMetadataFields> {
45
45
  private isToolClass;
46
46
  /**
47
47
  * Extract a string property from a class declaration.
48
+ * Uses ts-evaluator for full expression evaluation.
48
49
  */
49
50
  private extractClassProperty;
50
51
  validate(metadata: ToolMetadata): ValidationResult;
@@ -11,9 +11,9 @@
11
11
  * - Entry point generation differs significantly for class-based tools
12
12
  */
13
13
  import { Node } from 'ts-morph';
14
- import { PrimitiveKind, } from '../types.js';
14
+ import { COMPILER_VERSION, } from '../types.js';
15
15
  import { BasePlugin, validationError, validationWarning } from './base.js';
16
- import { extractSchemaProperty } from '../utils/ast-helpers.js';
16
+ import { extractSchemaProperty, evaluateNodeAsString } from '../utils/ast-helpers.js';
17
17
  import { zodToJsonSchema } from '../utils/schema-converter.js';
18
18
  /**
19
19
  * Plugin for compiling tool primitives.
@@ -104,38 +104,22 @@ export class ToolPlugin extends BasePlugin {
104
104
  }
105
105
  /**
106
106
  * Extract a string property from a class declaration.
107
+ * Uses ts-evaluator for full expression evaluation.
107
108
  */
108
109
  extractClassProperty(classDecl, propName) {
109
110
  const prop = classDecl.getProperty(propName);
110
111
  if (!prop)
111
112
  return undefined;
112
- const initializer = prop.getInitializer();
113
- if (initializer && Node.isStringLiteral(initializer)) {
114
- return initializer.getLiteralValue();
115
- }
116
- return undefined;
113
+ return evaluateNodeAsString(prop.getInitializer());
117
114
  }
118
115
  validate(metadata) {
119
- const errors = [];
120
- const warnings = [];
121
- if (!metadata.name) {
122
- errors.push(validationError('Tool must have a name', {
123
- line: metadata.line,
124
- suggestion: 'Add a name property: name: "my-tool"',
125
- }));
126
- }
116
+ const { errors, warnings } = this.baseValidation(metadata);
127
117
  if (!metadata.metadata.hasExecute) {
128
118
  errors.push(validationError('Tool must have an execute function', {
129
119
  line: metadata.line,
130
120
  suggestion: 'Add an execute function: execute: async (input, context) => { ... }',
131
121
  }));
132
122
  }
133
- if (!metadata.description) {
134
- warnings.push(validationWarning('Tool should have a description for better AI understanding', {
135
- line: metadata.line,
136
- suggestion: 'Add a description: description: "What this tool does"',
137
- }));
138
- }
139
123
  if (!metadata.metadata.hasInputSchema) {
140
124
  warnings.push(validationWarning('Tool should have an inputSchema for type safety', {
141
125
  line: metadata.line,
@@ -184,7 +168,7 @@ ${importStatement}
184
168
  const toolInstance = new __ToolClass__();
185
169
 
186
170
  const __lua_primitive__ = {
187
- version: '2.0.0',
171
+ version: '${COMPILER_VERSION}',
188
172
  kind: 'tool',
189
173
  name: ${JSON.stringify(metadata.name)},
190
174
  description: ${JSON.stringify(metadata.description)},
@@ -261,19 +245,14 @@ ${exportStatement}
261
245
  }
262
246
  }
263
247
  toManifestEntry(compiled, _context) {
264
- const tool = {
265
- kind: PrimitiveKind.TOOL,
266
- name: compiled.name,
267
- description: compiled.description,
268
- path: `artifacts/${compiled.kind}/${compiled.name}.js`,
269
- sourcePath: compiled.sourcePath,
270
- hash: compiled.artifact.hash,
248
+ return {
249
+ ...this.baseManifestFields(compiled),
250
+ hasCondition: compiled.metadata?.hasCondition || false,
271
251
  schemas: compiled.schemas ? {
272
252
  input: compiled.schemas.input,
273
253
  output: compiled.schemas.output,
274
254
  } : undefined,
275
255
  };
276
- return tool;
277
256
  }
278
257
  }
279
258
  //# sourceMappingURL=tool.plugin.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"tool.plugin.js","sourceRoot":"","sources":["../../../src/compiler/plugins/tool.plugin.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"tool.plugin.js","sourceRoot":"","sources":["../../../src/compiler/plugins/tool.plugin.ts"],"names":[],"mappings":"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"}
@@ -6,7 +6,6 @@
6
6
  * 2. Function-based (new): const myWebhook = defineWebhook({ ... })
7
7
  */
8
8
  import { Node } from 'ts-morph';
9
- import { PrimitiveKind, } from '../types.js';
10
9
  import { BasePlugin, validationError, validationWarning } from './base.js';
11
10
  import { extractSchemaProperty } from '../utils/ast-helpers.js';
12
11
  import { zodToJsonSchema } from '../utils/schema-converter.js';
@@ -42,18 +41,10 @@ export class WebhookPlugin extends BasePlugin {
42
41
  };
43
42
  }
44
43
  validate(metadata) {
45
- const errors = [];
46
- const warnings = [];
47
- if (!metadata.name) {
48
- errors.push(validationError('Webhook must have a name', { line: metadata.line }));
49
- }
44
+ const { errors, warnings } = this.baseValidation(metadata);
50
45
  if (!metadata.metadata.hasExecute) {
51
46
  errors.push(validationError('Webhook must have an execute function', { line: metadata.line }));
52
47
  }
53
- if (!metadata.description) {
54
- warnings.push(validationWarning('Webhook should have a description', { line: metadata.line }));
55
- }
56
- // Validate name format (URL-safe)
57
48
  if (metadata.name && !/^[a-z][a-z0-9-]*$/.test(metadata.name)) {
58
49
  warnings.push(validationWarning('Webhook name should be URL-safe (lowercase, hyphens only)', { line: metadata.line }));
59
50
  }
@@ -88,15 +79,18 @@ export class WebhookPlugin extends BasePlugin {
88
79
  if (!Node.isObjectLiteralExpression(config))
89
80
  return undefined;
90
81
  const schemas = {};
91
- // Extract each schema type
92
- const schemaProps = ['querySchema', 'headerSchema', 'bodySchema'];
93
- for (const propName of schemaProps) {
94
- if (metadata.metadata[`has${propName.charAt(0).toUpperCase() + propName.slice(1)}`]) {
82
+ // Extract each schema type — keys must match ManifestWebhook: query, headers, body
83
+ const schemaProps = [
84
+ { prop: 'querySchema', key: 'query', metaFlag: 'hasQuerySchema' },
85
+ { prop: 'headerSchema', key: 'headers', metaFlag: 'hasHeaderSchema' },
86
+ { prop: 'bodySchema', key: 'body', metaFlag: 'hasBodySchema' },
87
+ ];
88
+ for (const { prop: propName, key, metaFlag } of schemaProps) {
89
+ if (metadata.metadata[metaFlag]) {
95
90
  const schemaNode = extractSchemaProperty(config, propName);
96
91
  if (schemaNode) {
97
92
  try {
98
93
  const jsonSchema = await zodToJsonSchema(schemaNode);
99
- const key = propName.replace('Schema', '');
100
94
  schemas[key] = jsonSchema;
101
95
  }
102
96
  catch (error) {
@@ -108,20 +102,14 @@ export class WebhookPlugin extends BasePlugin {
108
102
  return Object.keys(schemas).length > 0 ? schemas : undefined;
109
103
  }
110
104
  toManifestEntry(compiled, _context) {
111
- const webhook = {
112
- kind: PrimitiveKind.WEBHOOK,
113
- name: compiled.name,
114
- description: compiled.description,
115
- path: `artifacts/${compiled.kind}/${compiled.name}.js`,
116
- sourcePath: compiled.sourcePath,
117
- hash: compiled.artifact.hash,
105
+ return {
106
+ ...this.baseManifestFields(compiled),
118
107
  schemas: compiled.schemas ? {
119
108
  query: compiled.schemas.query,
120
109
  headers: compiled.schemas.headers,
121
110
  body: compiled.schemas.body,
122
111
  } : undefined,
123
112
  };
124
- return webhook;
125
113
  }
126
114
  }
127
115
  //# sourceMappingURL=webhook.plugin.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"webhook.plugin.js","sourceRoot":"","sources":["../../../src/compiler/plugins/webhook.plugin.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"webhook.plugin.js","sourceRoot":"","sources":["../../../src/compiler/plugins/webhook.plugin.ts"],"names":[],"mappings":"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"}
@@ -204,6 +204,10 @@ export interface ProjectFile {
204
204
  size: number;
205
205
  type: 'source' | 'config' | 'other';
206
206
  }
207
+ /** Manifest format version. Referenced by entry points, manifests, and minimal manifests. */
208
+ export declare const COMPILER_VERSION = "2.0.0";
209
+ /** esbuild compilation target. Referenced by bundler and MCP resolver bundler. */
210
+ export declare const ESBUILD_TARGET = "node18";
207
211
  export declare enum PrimitiveKind {
208
212
  TOOL = "tool",
209
213
  SKILL = "skill",
@@ -225,6 +229,7 @@ export interface ManifestTool extends ManifestPrimitiveBase {
225
229
  input?: JSONSchema;
226
230
  output?: JSONSchema;
227
231
  };
232
+ hasCondition?: boolean;
228
233
  }
229
234
  export interface ManifestSkill extends ManifestPrimitiveBase {
230
235
  kind: PrimitiveKind.SKILL;
@@ -5,6 +5,13 @@
5
5
  * Uses discriminated unions for type-safe primitive handling.
6
6
  */
7
7
  // =============================================================================
8
+ // COMPILER CONSTANTS
9
+ // =============================================================================
10
+ /** Manifest format version. Referenced by entry points, manifests, and minimal manifests. */
11
+ export const COMPILER_VERSION = '2.0.0';
12
+ /** esbuild compilation target. Referenced by bundler and MCP resolver bundler. */
13
+ export const ESBUILD_TARGET = 'node18';
14
+ // =============================================================================
8
15
  // MANIFEST PRIMITIVES
9
16
  // =============================================================================
10
17
  export var PrimitiveKind;
@@ -1 +1 @@
1
- {"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/compiler/types.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAgRH,gFAAgF;AAChF,sBAAsB;AACtB,gFAAgF;AAEhF,MAAM,CAAN,IAAY,aAQX;AARD,WAAY,aAAa;IACvB,8BAAa,CAAA;IACb,gCAAe,CAAA;IACf,4BAAW,CAAA;IACX,oCAAmB,CAAA;IACnB,8CAA6B,CAAA;IAC7B,gDAA+B,CAAA;IAC/B,0CAAyB,CAAA;AAC3B,CAAC,EARW,aAAa,KAAb,aAAa,QAQxB"}
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/compiler/types.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAgRH,gFAAgF;AAChF,qBAAqB;AACrB,gFAAgF;AAEhF,6FAA6F;AAC7F,MAAM,CAAC,MAAM,gBAAgB,GAAG,OAAO,CAAC;AAExC,kFAAkF;AAClF,MAAM,CAAC,MAAM,cAAc,GAAG,QAAQ,CAAC;AAEvC,gFAAgF;AAChF,sBAAsB;AACtB,gFAAgF;AAEhF,MAAM,CAAN,IAAY,aAQX;AARD,WAAY,aAAa;IACvB,8BAAa,CAAA;IACb,gCAAe,CAAA;IACf,4BAAW,CAAA;IACX,oCAAmB,CAAA;IACnB,8CAA6B,CAAA;IAC7B,gDAA+B,CAAA;IAC/B,0CAAyB,CAAA;AAC3B,CAAC,EARW,aAAa,KAAb,aAAa,QAQxB"}
@@ -1,48 +1,100 @@
1
1
  /**
2
- * AST helper functions for extracting values from ts-morph nodes.
2
+ * AST helper functions for extracting and evaluating values from ts-morph nodes.
3
3
  *
4
- * These utilities make it easy to extract typed values from
5
- * object literal expressions in TypeScript source code.
4
+ * Organized into sections:
5
+ * 1. EVALUATION ENGINE — ts-evaluator core with lua-cli passthrough shims
6
+ * 2. NODE EVALUATION — resolve a raw AST Node to a typed runtime value
7
+ * 3. PROPERTY EXTRACTION — get typed values from ObjectLiteralExpression properties
8
+ * 4. NODE INSPECTION — type checks and utilities for AST nodes
9
+ * 5. IDENTIFIER RESOLUTION — follow variable/import reference chains to declarations
10
+ * 6. IMPORT RESOLUTION — locate source files for imported identifiers
6
11
  */
7
- import { Node, ObjectLiteralExpression, SourceFile } from 'ts-morph';
12
+ import { Node, ObjectLiteralExpression, SourceFile, ArrayLiteralExpression } from 'ts-morph';
13
+ /** Evaluate an AST node as a string. Falls back to AST resolution if ts-evaluator fails. */
14
+ export declare function evaluateNodeAsString(node: Node | undefined): string | undefined;
15
+ /** Evaluate an AST node as a number. Falls back to AST resolution if ts-evaluator fails. */
16
+ export declare function evaluateNodeAsNumber(node: Node | undefined): number | undefined;
17
+ /** Evaluate an AST node as a boolean. Falls back to AST resolution if ts-evaluator fails. */
18
+ export declare function evaluateNodeAsBoolean(node: Node | undefined): boolean | undefined;
8
19
  /**
9
20
  * Extract a string value from an object property.
10
- * Handles string literals and template literals.
21
+ * Delegates to evaluateNodeAsString for full expression evaluation + AST fallback.
11
22
  */
12
23
  export declare function extractStringProperty(obj: ObjectLiteralExpression, propertyName: string): string | undefined;
13
24
  /**
14
25
  * Extract a boolean value from an object property.
26
+ * Delegates to evaluateNodeAsBoolean for full expression evaluation + AST fallback.
15
27
  */
16
28
  export declare function extractBooleanProperty(obj: ObjectLiteralExpression, propertyName: string): boolean | undefined;
17
29
  /**
18
30
  * Extract a number value from an object property.
31
+ * Delegates to evaluateNodeAsNumber for full expression evaluation + AST fallback.
19
32
  */
20
33
  export declare function extractNumberProperty(obj: ObjectLiteralExpression, propertyName: string): number | undefined;
21
- /**
22
- * Extract an object literal from an object property.
23
- */
24
- export declare function extractObjectProperty(obj: ObjectLiteralExpression, propertyName: string): ObjectLiteralExpression | undefined;
25
34
  /**
26
35
  * Extract a schema node from an object property.
27
- * Returns the initializer node which can be evaluated as a Zod schema.
36
+ * Returns the raw AST node (not evaluated) for downstream Zod processing.
28
37
  */
29
38
  export declare function extractSchemaProperty(obj: ObjectLiteralExpression, propertyName: string): Node | undefined;
30
39
  /**
31
- * Check if a property exists on an object literal.
40
+ * Extract nested property from an already-evaluated object (not AST).
41
+ * Use after extractObjectProperty() to drill into nested values.
42
+ *
43
+ * Example:
44
+ * const schedule = extractObjectProperty(config, 'schedule');
45
+ * const type = extractNestedProperty(schedule, 'type');
32
46
  */
33
- export declare function hasProperty(obj: ObjectLiteralExpression, propertyName: string): boolean;
47
+ export declare function extractNestedProperty(obj: Record<string, unknown> | undefined, propertyName: string): unknown;
34
48
  /**
35
- * Extract all property names from an object literal.
49
+ * Extract an object property, evaluated to its runtime value.
50
+ * Uses ts-evaluator to resolve inline objects, variable references, imports, spreads.
36
51
  */
37
- export declare function getPropertyNames(obj: ObjectLiteralExpression): string[];
52
+ export declare function extractObjectProperty(obj: ObjectLiteralExpression, propertyName: string): Record<string, unknown> | undefined;
38
53
  /**
39
- * Check if a node is a function (arrow or regular).
54
+ * Extract an array property, evaluated to its runtime value.
55
+ * Uses ts-evaluator to resolve inline arrays, variable references, imports, spreads.
40
56
  */
41
- export declare function isFunction(node: Node | undefined): boolean;
57
+ export declare function extractArrayProperty(obj: ObjectLiteralExpression, propertyName: string): unknown[] | undefined;
42
58
  /**
43
- * Get the text of a function body.
59
+ * Extract a function property, evaluated to its runtime value.
60
+ * Detects both inline function expressions and variable references to functions.
44
61
  */
62
+ export declare function extractFunctionProperty(obj: ObjectLiteralExpression, propertyName: string): Function | undefined;
63
+ /** Check if a property exists on an object literal. */
64
+ export declare function hasProperty(obj: ObjectLiteralExpression, propertyName: string): boolean;
65
+ /** Extract all property names from an object literal. */
66
+ export declare function getPropertyNames(obj: ObjectLiteralExpression): string[];
67
+ /** Check if a node is a function (arrow or regular). */
68
+ export declare function isFunction(node: Node | undefined): boolean;
69
+ /** Get the text of a function body. */
45
70
  export declare function getFunctionBody(node: Node | undefined): string | undefined;
71
+ /**
72
+ * Recursively resolve an Identifier node to its underlying initializer.
73
+ *
74
+ * Follows variable reference chains, including across files:
75
+ * const a = [x, y];
76
+ * const b = a; // resolveIdentifier(b) → ArrayLiteralExpression [x, y]
77
+ * const c = b; // resolveIdentifier(c) → ArrayLiteralExpression [x, y]
78
+ *
79
+ * Resolution strategy:
80
+ * 1. Same-file lookup via getVariableDeclaration() (fast path)
81
+ * 2. Cross-file lookup via getDefinitionNodes() (follows imports)
82
+ *
83
+ * Stops at non-Identifier initializers (literals, call expressions, etc.)
84
+ * or when the declaration can't be found.
85
+ * Max depth of 10 to prevent infinite loops on circular references.
86
+ */
87
+ export declare function resolveIdentifier(node: Node, maxDepth?: number): Node | undefined;
88
+ /**
89
+ * Resolve an Identifier to an ArrayLiteralExpression (recursive).
90
+ * Convenience wrapper over resolveIdentifier().
91
+ */
92
+ export declare function resolveIdentifierToArray(node: Node): ArrayLiteralExpression | undefined;
93
+ /**
94
+ * Resolve an Identifier to an ObjectLiteralExpression (recursive).
95
+ * Convenience wrapper over resolveIdentifier().
96
+ */
97
+ export declare function resolveIdentifierToObject(node: Node): ObjectLiteralExpression | undefined;
46
98
  /**
47
99
  * Find the source file path for an imported identifier.
48
100
  *