rawsql-ts 0.11.27-beta → 0.11.28-beta

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.
@@ -70,7 +70,7 @@ export declare class SchemaCollector implements SqlComponentVisitor<void> {
70
70
  * Note: The resulting schemas and columns are sorted alphabetically to ensure deterministic ordering.
71
71
  */
72
72
  private consolidateTableSchemas;
73
- private handleTableSource;
73
+ private handleSourceExpression;
74
74
  private visitSimpleSelectQuery;
75
75
  private visitBinarySelectQuery;
76
76
  /**
@@ -78,4 +78,6 @@ export declare class SchemaCollector implements SqlComponentVisitor<void> {
78
78
  */
79
79
  private getSelectClauseColumns;
80
80
  private processCollectTableSchema;
81
+ private processCTETableSchema;
82
+ private getCTEColumns;
81
83
  }
@@ -158,21 +158,32 @@ class SchemaCollector {
158
158
  return new TableSchema(name, Array.from(columns).sort()); // Sort columns alphabetically
159
159
  });
160
160
  }
161
- handleTableSource(source, queryColumns, includeUnnamed) {
162
- var _a;
161
+ handleSourceExpression(source, queryColumns, includeUnnamed) {
162
+ var _a, _b;
163
163
  if (source.datasource instanceof Clause_1.TableSource) {
164
164
  const tableName = source.datasource.getSourceName();
165
165
  const cte = this.commonTables.filter((table) => table.getSourceAliasName() === tableName);
166
166
  if (cte.length > 0) {
167
+ // Process the CTE query recursively
167
168
  cte[0].query.accept(this);
169
+ // Also collect schema information for the CTE itself
170
+ const cteAlias = (_a = source.getAliasName()) !== null && _a !== void 0 ? _a : tableName;
171
+ this.processCTETableSchema(cte[0], cteAlias, queryColumns, includeUnnamed);
168
172
  }
169
173
  else {
170
- const tableAlias = (_a = source.getAliasName()) !== null && _a !== void 0 ? _a : tableName;
174
+ const tableAlias = (_b = source.getAliasName()) !== null && _b !== void 0 ? _b : tableName;
171
175
  this.processCollectTableSchema(tableName, tableAlias, queryColumns, includeUnnamed);
172
176
  }
173
177
  }
178
+ else if (source.datasource instanceof Clause_1.SubQuerySource) {
179
+ // Process subqueries recursively
180
+ this.visitNode(source.datasource.query);
181
+ // For subqueries, we don't add schema information directly as they're derived
182
+ // The schema will be collected from the inner query
183
+ }
174
184
  else {
175
- throw new Error("Datasource is not an instance of TableSource");
185
+ // For other source types (FunctionSource, ParenSource), we skip schema collection
186
+ // as they don't represent table schemas in the traditional sense
176
187
  }
177
188
  }
178
189
  visitSimpleSelectQuery(query) {
@@ -255,7 +266,7 @@ class SchemaCollector {
255
266
  }
256
267
  // Handle the main FROM clause table
257
268
  if (query.fromClause.source.datasource instanceof Clause_1.TableSource) {
258
- this.handleTableSource(query.fromClause.source, queryColumns, true);
269
+ this.handleSourceExpression(query.fromClause.source, queryColumns, true);
259
270
  }
260
271
  else if (query.fromClause.source.datasource instanceof Clause_1.SubQuerySource) {
261
272
  query.fromClause.source.datasource.query.accept(this);
@@ -264,7 +275,7 @@ class SchemaCollector {
264
275
  if ((_a = query.fromClause) === null || _a === void 0 ? void 0 : _a.joins) {
265
276
  for (const join of query.fromClause.joins) {
266
277
  if (join.source.datasource instanceof Clause_1.TableSource) {
267
- this.handleTableSource(join.source, queryColumns, false);
278
+ this.handleSourceExpression(join.source, queryColumns, false);
268
279
  }
269
280
  else if (join.source.datasource instanceof Clause_1.SubQuerySource) {
270
281
  join.source.datasource.query.accept(this);
@@ -328,6 +339,130 @@ class SchemaCollector {
328
339
  const tableSchema = new TableSchema(tableName, tableColumns);
329
340
  this.tableSchemas.push(tableSchema);
330
341
  }
342
+ processCTETableSchema(cte, cteAlias, queryColumns, includeUnnamed = false) {
343
+ const cteName = cte.getSourceAliasName();
344
+ // Get the columns that the CTE exposes by analyzing its SELECT clause
345
+ const cteColumns = this.getCTEColumns(cte);
346
+ // Filter query columns that reference this CTE
347
+ const cteReferencedColumns = queryColumns
348
+ .filter((columnRef) => columnRef.table === cteAlias || (includeUnnamed && columnRef.table === ""))
349
+ .map((columnRef) => columnRef.column);
350
+ // Handle wildcards for CTEs
351
+ if (cteReferencedColumns.includes("*")) {
352
+ if (this.tableColumnResolver !== null) {
353
+ // Try to resolve columns using the resolver first
354
+ const resolvedColumns = this.tableColumnResolver(cteName);
355
+ if (resolvedColumns.length > 0) {
356
+ const tableSchema = new TableSchema(cteName, resolvedColumns);
357
+ this.tableSchemas.push(tableSchema);
358
+ return;
359
+ }
360
+ }
361
+ // If we can determine CTE columns, use them for wildcard expansion
362
+ if (cteColumns.length > 0) {
363
+ const tableSchema = new TableSchema(cteName, cteColumns);
364
+ this.tableSchemas.push(tableSchema);
365
+ return;
366
+ }
367
+ else if (this.allowWildcardWithoutResolver) {
368
+ // Allow wildcards but with empty columns since we can't determine them
369
+ const tableSchema = new TableSchema(cteName, []);
370
+ this.tableSchemas.push(tableSchema);
371
+ return;
372
+ }
373
+ else {
374
+ // Handle wildcard error
375
+ const errorMessage = `Wildcard (*) is used. A TableColumnResolver is required to resolve wildcards. Target table: ${cteName}`;
376
+ if (this.isAnalyzeMode) {
377
+ this.analysisError = errorMessage;
378
+ this.unresolvedColumns.push(cteAlias ? `${cteAlias}.*` : "*");
379
+ }
380
+ else {
381
+ throw new Error(errorMessage);
382
+ }
383
+ return;
384
+ }
385
+ }
386
+ // Process specific column references
387
+ let tableColumns = cteReferencedColumns.filter((column) => column !== "*");
388
+ // Validate column references against CTE columns in analyze mode
389
+ if (this.isAnalyzeMode) {
390
+ let availableColumns = cteColumns;
391
+ // Try to get columns from resolver first if available
392
+ if (this.tableColumnResolver) {
393
+ const resolvedColumns = this.tableColumnResolver(cteName);
394
+ if (resolvedColumns.length > 0) {
395
+ availableColumns = resolvedColumns;
396
+ }
397
+ }
398
+ const invalidColumns = tableColumns.filter((column) => !availableColumns.includes(column));
399
+ if (invalidColumns.length > 0) {
400
+ this.unresolvedColumns.push(...invalidColumns);
401
+ if (!this.analysisError) {
402
+ this.analysisError = `Undefined column(s) found in CTE "${cteName}": ${invalidColumns.join(', ')}`;
403
+ }
404
+ }
405
+ }
406
+ // Add the CTE schema
407
+ const tableSchema = new TableSchema(cteName, tableColumns);
408
+ this.tableSchemas.push(tableSchema);
409
+ }
410
+ getCTEColumns(cte) {
411
+ var _a;
412
+ try {
413
+ // Try to get select items from the CTE query
414
+ if (cte.query instanceof SimpleSelectQuery_1.SimpleSelectQuery && cte.query.selectClause) {
415
+ const selectItems = cte.query.selectClause.items;
416
+ const columns = [];
417
+ for (const item of selectItems) {
418
+ if (item.value instanceof ValueComponent_1.ColumnReference) {
419
+ const columnName = ((_a = item.identifier) === null || _a === void 0 ? void 0 : _a.name) || item.value.column.name;
420
+ if (item.value.column.name === "*") {
421
+ // For wildcards in CTE definitions, we need special handling
422
+ const tableNamespace = item.value.getNamespace();
423
+ if (tableNamespace) {
424
+ // Try to find the referenced CTE or table
425
+ const referencedCTE = this.commonTables.find(cte => cte.getSourceAliasName() === tableNamespace);
426
+ if (referencedCTE) {
427
+ // Recursively get columns from the referenced CTE
428
+ const referencedColumns = this.getCTEColumns(referencedCTE);
429
+ if (referencedColumns.length > 0) {
430
+ columns.push(...referencedColumns);
431
+ continue;
432
+ }
433
+ }
434
+ }
435
+ // If we can't resolve the wildcard, we mark this CTE as having unknown columns
436
+ // This will be handled by the wildcard processing logic later
437
+ return [];
438
+ }
439
+ else {
440
+ columns.push(columnName);
441
+ }
442
+ }
443
+ else {
444
+ // For expressions, functions, etc., use the identifier if available
445
+ if (item.identifier) {
446
+ columns.push(item.identifier.name);
447
+ }
448
+ }
449
+ }
450
+ return columns.filter((name, index, array) => array.indexOf(name) === index); // Remove duplicates
451
+ }
452
+ // Fallback: try using SelectableColumnCollector
453
+ const columnCollector = new SelectableColumnCollector_1.SelectableColumnCollector(null, true, SelectableColumnCollector_1.DuplicateDetectionMode.FullName);
454
+ const columns = columnCollector.collect(cte.query);
455
+ return columns
456
+ .filter((column) => column.value instanceof ValueComponent_1.ColumnReference)
457
+ .map(column => column.value)
458
+ .map(columnRef => columnRef.column.name)
459
+ .filter((name, index, array) => array.indexOf(name) === index); // Remove duplicates
460
+ }
461
+ catch (error) {
462
+ // If we can't determine the columns, return empty array
463
+ return [];
464
+ }
465
+ }
331
466
  }
332
467
  exports.SchemaCollector = SchemaCollector;
333
468
  //# sourceMappingURL=SchemaCollector.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"SchemaCollector.js","sourceRoot":"","sources":["../../../src/transformers/SchemaCollector.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"SchemaCollector.js","sourceRoot":"","sources":["../../../src/transformers/SchemaCollector.ts"],"names":[],"mappings":"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"}