@aster-cloud/aster-lang-ts 0.0.6 → 0.0.7

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.
@@ -113,4 +113,56 @@ export declare function validateSyntax(source: string, lexicon?: Lexicon): strin
113
113
  * @returns Array of tokens
114
114
  */
115
115
  export declare function tokenize(source: string, lexicon?: Lexicon): Token[];
116
+ import type { ParameterInfo } from './parser/input-generator.js';
117
+ /**
118
+ * Schema extraction result
119
+ */
120
+ export interface SchemaResult {
121
+ /** Whether extraction succeeded */
122
+ success: boolean;
123
+ /** Module name */
124
+ moduleName?: string;
125
+ /** Function name */
126
+ functionName?: string;
127
+ /** Parameter schema */
128
+ parameters?: ParameterInfo[];
129
+ /** Error message if failed */
130
+ error?: string;
131
+ }
132
+ /**
133
+ * Schema extraction options
134
+ */
135
+ export interface SchemaOptions {
136
+ /** CNL lexicon (default: EN_US) */
137
+ lexicon?: Lexicon;
138
+ /** Target function name (default: first function) */
139
+ functionName?: string;
140
+ }
141
+ /**
142
+ * Extract schema from CNL source code
143
+ *
144
+ * Parses CNL source and extracts parameter schema for the specified function,
145
+ * suitable for dynamic form generation.
146
+ *
147
+ * @param source - CNL source code
148
+ * @param options - Schema extraction options
149
+ * @returns Schema extraction result
150
+ *
151
+ * @example
152
+ * ```typescript
153
+ * const result = extractSchema(`
154
+ * This module is loan.
155
+ * A LoanApplication has creditScore Int, amount Float, term Int.
156
+ * To evaluate application LoanApplication, produce Bool:
157
+ * If application.creditScore >= 700 then Return true
158
+ * Otherwise Return false.
159
+ * `);
160
+ *
161
+ * if (result.success) {
162
+ * console.log(result.parameters);
163
+ * // [{ name: 'application', type: 'LoanApplication', typeKind: 'struct', ... }]
164
+ * }
165
+ * ```
166
+ */
167
+ export declare function extractSchema(source: string, options?: SchemaOptions): SchemaResult;
116
168
  //# sourceMappingURL=browser.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"browser.d.ts","sourceRoot":"","sources":["../../src/browser.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;GA2BG;AAGH,OAAO,EAAE,YAAY,EAAE,MAAM,6BAA6B,CAAC;AAC3D,OAAO,EAAE,GAAG,EAAE,MAAM,qBAAqB,CAAC;AAC1C,OAAO,EAAE,KAAK,EAAE,MAAM,aAAa,CAAC;AACpC,OAAO,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AAGjD,OAAO,EACL,uBAAuB,EACvB,4BAA4B,EAC5B,yBAAyB,EACzB,eAAe,EACf,0BAA0B,EAC1B,cAAc,EACd,uBAAuB,GACxB,MAAM,kCAAkC,CAAC;AAC1C,YAAY,EACV,uBAAuB,EACvB,kBAAkB,EAClB,sBAAsB,GACvB,MAAM,kCAAkC,CAAC;AAG1C,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,mBAAmB,CAAC;AACjD,OAAO,EAAE,SAAS,EAAE,EAAE,EAAE,MAAM,sBAAsB,CAAC;AACrD,OAAO,EAAE,IAAI,EAAE,MAAM,cAAc,CAAC;AAGpC,OAAO,EACL,kBAAkB,EAClB,mBAAmB,EACnB,iBAAiB,GAClB,MAAM,6BAA6B,CAAC;AACrC,YAAY,EACV,QAAQ,EACR,SAAS,EACT,aAAa,GACd,MAAM,6BAA6B,CAAC;AAGrC,mBAAmB,YAAY,CAAC;AAGhC,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,eAAe,EAAE,yBAAyB,EAAE,MAAM,4BAA4B,CAAC;AAC7G,YAAY,EAAE,OAAO,EAAE,MAAM,4BAA4B,CAAC;AAU1D,OAAO,KAAK,EAAE,IAAI,IAAI,SAAS,EAAE,KAAK,EAAE,MAAM,IAAI,SAAS,EAAE,MAAM,YAAY,CAAC;AAChF,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,4BAA4B,CAAC;AAE1D;;GAEG;AACH,MAAM,WAAW,aAAa;IAC5B,oCAAoC;IACpC,OAAO,EAAE,OAAO,CAAC;IACjB,8CAA8C;IAC9C,IAAI,CAAC,EAAE,SAAS,CAAC,MAAM,CAAC;IACxB,4BAA4B;IAC5B,WAAW,CAAC,EAAE,MAAM,EAAE,CAAC;IACvB,+BAA+B;IAC/B,cAAc,CAAC,EAAE,MAAM,EAAE,CAAC;IAC1B,qEAAqE;IACrE,MAAM,CAAC,EAAE,KAAK,EAAE,CAAC;IACjB,+DAA+D;IAC/D,GAAG,CAAC,EAAE,SAAS,CAAC;CACjB;AAED;;GAEG;AACH,MAAM,WAAW,cAAc;IAC7B,4EAA4E;IAC5E,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,qDAAqD;IACrD,oBAAoB,CAAC,EAAE,OAAO,CAAC;CAChC;AAED;;;;;;;;;;;;;;;;;;;;;;;;GAwBG;AACH,wBAAgB,OAAO,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,cAAc,GAAG,aAAa,CAyC/E;AAED;;;;;;;;;GASG;AACH,wBAAgB,cAAc,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,OAAO,GAAG,MAAM,EAAE,CAc1E;AAED;;;;;;GAMG;AACH,wBAAgB,QAAQ,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,OAAO,GAAG,KAAK,EAAE,CAGnE"}
1
+ {"version":3,"file":"browser.d.ts","sourceRoot":"","sources":["../../src/browser.ts"],"names":[],"mappings":"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"}
@@ -146,4 +146,166 @@ export function tokenize(source, lexicon) {
146
146
  const canonical = canonicalize(source);
147
147
  return lex(canonical, lexicon);
148
148
  }
149
+ /**
150
+ * Convert AST Type to type kind
151
+ */
152
+ function getTypeKind(type) {
153
+ if (!type || typeof type !== 'object' || !('kind' in type)) {
154
+ return 'unknown';
155
+ }
156
+ switch (type.kind) {
157
+ case 'TypeName': {
158
+ const name = type.name.toLowerCase();
159
+ if (['int', 'float', 'double', 'number', 'bool', 'boolean', 'text', 'string', 'datetime', 'date', 'time'].includes(name)) {
160
+ return 'primitive';
161
+ }
162
+ // Custom type names are typically structs
163
+ return 'struct';
164
+ }
165
+ case 'List':
166
+ return 'list';
167
+ case 'Map':
168
+ return 'map';
169
+ case 'Option':
170
+ case 'Maybe':
171
+ return 'option';
172
+ case 'Result':
173
+ return 'result';
174
+ case 'FuncType':
175
+ return 'function';
176
+ default:
177
+ return 'unknown';
178
+ }
179
+ }
180
+ /**
181
+ * Convert AST Type to display string
182
+ */
183
+ function typeToString(type) {
184
+ if (!type || typeof type !== 'object' || !('kind' in type)) {
185
+ return 'Unknown';
186
+ }
187
+ switch (type.kind) {
188
+ case 'TypeName':
189
+ return type.name;
190
+ case 'List':
191
+ return `List<${typeToString(type.type)}>`;
192
+ case 'Map':
193
+ return `Map<${typeToString(type.key)}, ${typeToString(type.val)}>`;
194
+ case 'Option':
195
+ return `Option<${typeToString(type.type)}>`;
196
+ case 'Maybe':
197
+ return `Maybe<${typeToString(type.type)}>`;
198
+ case 'Result':
199
+ return `Result<${typeToString(type.ok)}, ${typeToString(type.err)}>`;
200
+ default:
201
+ return 'Unknown';
202
+ }
203
+ }
204
+ /**
205
+ * Extract schema from CNL source code
206
+ *
207
+ * Parses CNL source and extracts parameter schema for the specified function,
208
+ * suitable for dynamic form generation.
209
+ *
210
+ * @param source - CNL source code
211
+ * @param options - Schema extraction options
212
+ * @returns Schema extraction result
213
+ *
214
+ * @example
215
+ * ```typescript
216
+ * const result = extractSchema(`
217
+ * This module is loan.
218
+ * A LoanApplication has creditScore Int, amount Float, term Int.
219
+ * To evaluate application LoanApplication, produce Bool:
220
+ * If application.creditScore >= 700 then Return true
221
+ * Otherwise Return false.
222
+ * `);
223
+ *
224
+ * if (result.success) {
225
+ * console.log(result.parameters);
226
+ * // [{ name: 'application', type: 'LoanApplication', typeKind: 'struct', ... }]
227
+ * }
228
+ * ```
229
+ */
230
+ export function extractSchema(source, options) {
231
+ try {
232
+ // Parse to AST
233
+ const canonical = canonicalize(source);
234
+ const tokens = lex(canonical, options?.lexicon);
235
+ const ast = parse(tokens);
236
+ if ('error' in ast || !ast) {
237
+ return {
238
+ success: false,
239
+ error: 'error' in ast ? ast.error : 'Parse failed',
240
+ };
241
+ }
242
+ const module = ast;
243
+ const moduleName = module.name ?? 'unknown';
244
+ // Find all Data declarations (for struct field resolution)
245
+ const dataDecls = new Map();
246
+ for (const decl of module.decls) {
247
+ if (decl.kind === 'Data') {
248
+ const data = decl;
249
+ const fields = data.fields.map((f) => ({
250
+ name: f.name,
251
+ type: typeToString(f.type),
252
+ typeKind: getTypeKind(f.type),
253
+ }));
254
+ dataDecls.set(data.name, fields);
255
+ }
256
+ }
257
+ // Find the target function
258
+ const funcs = module.decls.filter((d) => d.kind === 'Func');
259
+ if (funcs.length === 0) {
260
+ return {
261
+ success: false,
262
+ error: 'No functions found in module',
263
+ };
264
+ }
265
+ const targetFuncName = options?.functionName;
266
+ const func = targetFuncName
267
+ ? funcs.find((f) => f.name === targetFuncName)
268
+ : funcs[0];
269
+ if (!func) {
270
+ return {
271
+ success: false,
272
+ error: targetFuncName
273
+ ? `Function '${targetFuncName}' not found`
274
+ : 'No functions found in module',
275
+ };
276
+ }
277
+ // Extract parameters
278
+ const parameters = func.params.map((param, index) => {
279
+ const typeName = typeToString(param.type);
280
+ const typeKind = getTypeKind(param.type);
281
+ // Resolve struct fields if applicable
282
+ const fields = typeKind === 'struct' && dataDecls.has(typeName)
283
+ ? dataDecls.get(typeName)
284
+ : undefined;
285
+ const result = {
286
+ name: param.name,
287
+ type: typeName,
288
+ typeKind,
289
+ optional: false, // Parameters don't have optional field in AST
290
+ position: index,
291
+ };
292
+ if (fields) {
293
+ result.fields = fields;
294
+ }
295
+ return result;
296
+ });
297
+ return {
298
+ success: true,
299
+ moduleName,
300
+ functionName: func.name,
301
+ parameters,
302
+ };
303
+ }
304
+ catch (error) {
305
+ return {
306
+ success: false,
307
+ error: error instanceof Error ? error.message : String(error),
308
+ };
309
+ }
310
+ }
149
311
  //# sourceMappingURL=browser.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"browser.js","sourceRoot":"","sources":["../../src/browser.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"browser.js","sourceRoot":"","sources":["../../src/browser.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@aster-cloud/aster-lang-ts",
3
- "version": "0.0.6",
3
+ "version": "0.0.7",
4
4
  "description": "Aster CNL (Controlled Natural Language) TypeScript Compiler - Lexer, Parser, AST, Core IR, Type Checker",
5
5
  "type": "module",
6
6
  "main": "./dist/src/index.js",