typesql-cli 0.5.18 → 0.6.2

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 (55) hide show
  1. package/code-generator.d.ts +3 -0
  2. package/code-generator.d.ts.map +1 -1
  3. package/code-generator.js +88 -12
  4. package/code-generator.js.map +1 -1
  5. package/describe-nested-query.d.ts +29 -0
  6. package/describe-nested-query.d.ts.map +1 -0
  7. package/describe-nested-query.js +154 -0
  8. package/describe-nested-query.js.map +1 -0
  9. package/describe-query.d.ts +2 -1
  10. package/describe-query.d.ts.map +1 -1
  11. package/describe-query.js +20 -21
  12. package/describe-query.js.map +1 -1
  13. package/mysql-mapping.d.ts +1 -1
  14. package/mysql-mapping.d.ts.map +1 -1
  15. package/mysql-mapping.js +1 -1
  16. package/mysql-mapping.js.map +1 -1
  17. package/mysql-query-analyzer/collect-constraints.d.ts +24 -50
  18. package/mysql-query-analyzer/collect-constraints.d.ts.map +1 -1
  19. package/mysql-query-analyzer/collect-constraints.js +52 -1757
  20. package/mysql-query-analyzer/collect-constraints.js.map +1 -1
  21. package/mysql-query-analyzer/infer-column-nullability.d.ts +3 -3
  22. package/mysql-query-analyzer/infer-column-nullability.d.ts.map +1 -1
  23. package/mysql-query-analyzer/infer-column-nullability.js +14 -26
  24. package/mysql-query-analyzer/infer-column-nullability.js.map +1 -1
  25. package/mysql-query-analyzer/infer-param-nullability.d.ts +3 -1
  26. package/mysql-query-analyzer/infer-param-nullability.d.ts.map +1 -1
  27. package/mysql-query-analyzer/infer-param-nullability.js +21 -3
  28. package/mysql-query-analyzer/infer-param-nullability.js.map +1 -1
  29. package/mysql-query-analyzer/parse.d.ts +10 -10
  30. package/mysql-query-analyzer/parse.d.ts.map +1 -1
  31. package/mysql-query-analyzer/parse.js +133 -181
  32. package/mysql-query-analyzer/parse.js.map +1 -1
  33. package/mysql-query-analyzer/select-columns.d.ts +9 -9
  34. package/mysql-query-analyzer/select-columns.d.ts.map +1 -1
  35. package/mysql-query-analyzer/select-columns.js +32 -226
  36. package/mysql-query-analyzer/select-columns.js.map +1 -1
  37. package/mysql-query-analyzer/traverse.d.ts +45 -0
  38. package/mysql-query-analyzer/traverse.d.ts.map +1 -0
  39. package/mysql-query-analyzer/traverse.js +1613 -0
  40. package/mysql-query-analyzer/traverse.js.map +1 -0
  41. package/mysql-query-analyzer/types.d.ts +39 -5
  42. package/mysql-query-analyzer/types.d.ts.map +1 -1
  43. package/mysql-query-analyzer/unify.d.ts +4 -3
  44. package/mysql-query-analyzer/unify.d.ts.map +1 -1
  45. package/mysql-query-analyzer/unify.js +542 -51
  46. package/mysql-query-analyzer/unify.js.map +1 -1
  47. package/mysql-query-analyzer/verify-multiple-result.js +1 -1
  48. package/mysql-query-analyzer/verify-multiple-result.js.map +1 -1
  49. package/package.json +2 -2
  50. package/ts-nested-descriptor.d.ts +26 -0
  51. package/ts-nested-descriptor.d.ts.map +1 -0
  52. package/ts-nested-descriptor.js +73 -0
  53. package/ts-nested-descriptor.js.map +1 -0
  54. package/types.d.ts +12 -8
  55. package/types.d.ts.map +1 -1
@@ -23,15 +23,16 @@ var __importStar = (this && this.__importStar) || function (mod) {
23
23
  return result;
24
24
  };
25
25
  Object.defineProperty(exports, "__esModule", { value: true });
26
- exports.getQuerySpecificationsFromSelectStatement = exports.analiseQuery = exports.extractQueryInfo = exports.extractQueryInfoFromQuerySpecification = exports.parseAndInferParamNullability = exports.parseAndInfer = exports.infer = exports.parse = void 0;
26
+ exports.getQuerySpecificationsFromSelectStatement = exports.getAllQuerySpecificationsFromSelectStatement = exports.extractQueryInfo = exports.getLimitOptions = exports.isSumExpressContext = exports.isMultipleRowResult = exports.extractLimitParameters = exports.extractOrderByParameters = exports.parseAndInferParamNullability = exports.parseAndInfer = exports.parse = void 0;
27
27
  const ts_mysql_parser_1 = __importStar(require("ts-mysql-parser"));
28
28
  const tree_1 = require("antlr4ts/tree");
29
29
  const collect_constraints_1 = require("./collect-constraints");
30
- const select_columns_1 = require("./select-columns");
31
30
  const infer_param_nullability_1 = require("./infer-param-nullability");
32
- const infer_column_nullability_1 = require("./infer-column-nullability");
33
31
  const describe_query_1 = require("../describe-query");
34
32
  const verify_multiple_result_1 = require("./verify-multiple-result");
33
+ const unify_1 = require("./unify");
34
+ const traverse_1 = require("./traverse");
35
+ const describe_nested_query_1 = require("../describe-nested-query");
35
36
  const parser = new ts_mysql_parser_1.default({
36
37
  version: '8.0.17',
37
38
  mode: ts_mysql_parser_1.SqlMode.NoMode
@@ -44,26 +45,28 @@ function parse(sql) {
44
45
  return parseResult.tree;
45
46
  }
46
47
  exports.parse = parse;
47
- function infer(queryContext, dbSchema, withSchema, namedParameters) {
48
- const context = {
49
- dbSchema,
50
- withSchema,
51
- constraints: [],
52
- parameters: [],
53
- fromColumns: []
54
- };
55
- const typeInferenceResult = (0, collect_constraints_1.analiseTree)(queryContext, context, namedParameters);
56
- // const newTypeInference : TypeInferenceResult = {
57
- // columns: typeInferenceResult.columns.map( col => verifyNotInferred(col)),
58
- // parameters: typeInferenceResult.parameters.map(paramType => verifyNotInferred(paramType))
59
- // }
60
- return typeInferenceResult;
61
- }
62
- exports.infer = infer;
63
48
  //TODO - withSchema DEFAULT VALUE []
64
- function parseAndInfer(sql, dbSchema, withSchema = []) {
65
- const { sql: processedSql, namedParameters } = (0, describe_query_1.preprocessSql)(sql);
66
- return infer(parse(processedSql), dbSchema, withSchema, namedParameters);
49
+ function parseAndInfer(sql, dbSchema) {
50
+ const result = extractQueryInfo(sql, dbSchema);
51
+ if (result.kind == 'Select') {
52
+ return {
53
+ columns: result.columns.map(p => p.type),
54
+ parameters: result.parameters.map(p => p.type)
55
+ };
56
+ }
57
+ if (result.kind == 'Insert') {
58
+ return {
59
+ columns: [],
60
+ parameters: result.parameters.map(p => p.columnType)
61
+ };
62
+ }
63
+ if (result.kind == 'Update') {
64
+ return {
65
+ columns: [],
66
+ parameters: result.data.map(p => p.columnType)
67
+ };
68
+ }
69
+ throw Error("parseAndInfer: " + sql);
67
70
  }
68
71
  exports.parseAndInfer = parseAndInfer;
69
72
  function parseAndInferParamNullability(sql) {
@@ -73,42 +76,11 @@ function parseAndInferParamNullability(sql) {
73
76
  return (0, infer_param_nullability_1.inferParamNullabilityQuery)(selectStatement);
74
77
  }
75
78
  exports.parseAndInferParamNullability = parseAndInferParamNullability;
76
- function extractQueryInfoFromQuerySpecification(querySpec, dbSchema, withSchema, namedParameters) {
77
- const fromColumns = (0, select_columns_1.getColumnsFrom)(querySpec, dbSchema, withSchema);
78
- const inferResult = (0, collect_constraints_1.analiseQuerySpecification)(querySpec, dbSchema, withSchema, fromColumns, namedParameters);
79
- // console.log("inferResult=", inferResult);
80
- const columnNullability = (0, infer_column_nullability_1.inferNotNull)(querySpec, dbSchema, withSchema);
81
- const selectedColumns = (0, select_columns_1.getColumnNames)(querySpec, fromColumns);
82
- const columnResult = selectedColumns.map((col, index) => {
83
- const columnType = inferResult.columns[index];
84
- const columnNotNull = columnNullability[index];
85
- const colInfo = {
86
- name: col,
87
- type: columnType,
88
- notNull: columnNotNull
89
- };
90
- return colInfo;
91
- });
92
- const paramInference = (0, infer_param_nullability_1.inferParamNullability)(querySpec);
93
- const parametersResult = inferResult.parameters.map((param, index) => {
94
- const paramInfo = {
95
- name: '?',
96
- type: param,
97
- notNull: paramInference[index]
98
- };
99
- return paramInfo;
100
- });
101
- const queryResult = {
102
- columns: columnResult,
103
- parameters: parametersResult
104
- };
105
- return queryResult;
106
- }
107
- exports.extractQueryInfoFromQuerySpecification = extractQueryInfoFromQuerySpecification;
108
79
  function extractOrderByParameters(selectStatement) {
109
80
  var _a, _b;
110
81
  return ((_b = (_a = selectStatement.queryExpression()) === null || _a === void 0 ? void 0 : _a.orderClause()) === null || _b === void 0 ? void 0 : _b.orderList().orderExpression().filter(orderExpr => orderExpr.text == '?').map(orderExpr => orderExpr.text)) || [];
111
82
  }
83
+ exports.extractOrderByParameters = extractOrderByParameters;
112
84
  function extractLimitParameters(selectStatement) {
113
85
  return getLimitOptions(selectStatement)
114
86
  .filter(limit => limit.PARAM_MARKER())
@@ -120,9 +92,10 @@ function extractLimitParameters(selectStatement) {
120
92
  return paramInfo;
121
93
  }) || [];
122
94
  }
95
+ exports.extractLimitParameters = extractLimitParameters;
123
96
  function isMultipleRowResult(selectStatement, fromColumns) {
124
97
  var _a, _b;
125
- const querySpecs = getQuerySpecificationsFromSelectStatement(selectStatement);
98
+ const querySpecs = getAllQuerySpecificationsFromSelectStatement(selectStatement);
126
99
  if (querySpecs.length == 1) { //UNION queries are multipleRowsResult = true
127
100
  const fromClause = querySpecs[0].fromClause();
128
101
  if (!fromClause) {
@@ -159,6 +132,7 @@ function isMultipleRowResult(selectStatement, fromColumns) {
159
132
  }
160
133
  return true;
161
134
  }
135
+ exports.isMultipleRowResult = isMultipleRowResult;
162
136
  function isSumExpressContext(selectItem) {
163
137
  var _a;
164
138
  if (selectItem instanceof ts_mysql_parser_1.SimpleExprWindowingFunctionContext
@@ -187,110 +161,113 @@ function isSumExpressContext(selectItem) {
187
161
  }
188
162
  return false;
189
163
  }
164
+ exports.isSumExpressContext = isSumExpressContext;
190
165
  function getLimitOptions(selectStatement) {
191
166
  var _a, _b;
192
167
  return ((_b = (_a = selectStatement.queryExpression()) === null || _a === void 0 ? void 0 : _a.limitClause()) === null || _b === void 0 ? void 0 : _b.limitOptions().limitOption()) || [];
193
168
  }
194
- //TODO - withSchema: ColumnSchema[] DEFAULT VALUE
169
+ exports.getLimitOptions = getLimitOptions;
195
170
  function extractQueryInfo(sql, dbSchema) {
196
- var _a, _b, _c, _d;
197
171
  const { sql: processedSql, namedParameters } = (0, describe_query_1.preprocessSql)(sql);
172
+ const gererateNested = (0, describe_query_1.generateNestedQueryResult)(sql);
198
173
  const tree = parse(processedSql);
199
- const context = {
200
- dbSchema,
201
- withSchema: [],
202
- parameters: [],
203
- constraints: [],
204
- fromColumns: []
205
- };
206
- if (tree instanceof ts_mysql_parser_1.QueryContext) {
207
- const selectStatement = (_a = tree.simpleStatement()) === null || _a === void 0 ? void 0 : _a.selectStatement();
208
- if (selectStatement) {
209
- // selectStatement:
210
- // queryExpression
211
- // | queryExpressionParens
212
- const queryExpression = selectStatement.queryExpression();
213
- if (queryExpression) {
214
- //queryExpression
215
- const withClause = queryExpression.withClause();
216
- const allWithSchema = [];
217
- const withClauseParameters = [];
218
- if (withClause) {
219
- const withClauseResults = analyseWithClause(withClause, dbSchema, []);
220
- withClauseResults.forEach(withClauseResult => {
221
- allWithSchema.push(...withClauseResult.queryResult.columns);
222
- withClauseParameters.push(...withClauseResult.queryResult.parameters);
223
- });
224
- }
225
- context.withSchema = allWithSchema;
226
- const queryExpressionBody = queryExpression.queryExpressionBody() || queryExpression.queryExpressionParens();
227
- if (queryExpressionBody) {
228
- const querySpec = getQuerySpecificationsFromSelectStatement(queryExpressionBody);
229
- const mainQueryResult = analiseQuery(querySpec, context.dbSchema, context.withSchema, namedParameters);
230
- const orderByParameters = extractOrderByParameters(selectStatement);
231
- const limitParameters = extractLimitParameters(selectStatement);
232
- const allParameters = mainQueryResult.parameters
233
- .concat(withClauseParameters)
234
- .map(param => ({ type: (0, describe_query_1.verifyNotInferred)(param.type), notNull: param.notNull }))
235
- .concat(limitParameters);
236
- const fromColumns = (0, select_columns_1.getColumnsFrom)(querySpec[0], context.dbSchema, context.withSchema);
237
- const multipleRowsResult = isMultipleRowResult(selectStatement, fromColumns);
238
- const resultWithoutOrderBy = {
239
- kind: 'Select',
240
- multipleRowsResult: multipleRowsResult,
241
- columns: mainQueryResult.columns.map(col => ({ columnName: col.name, type: (0, describe_query_1.verifyNotInferred)(col.type), notNull: col.notNull })),
242
- parameters: allParameters,
243
- };
244
- const orderByColumns = orderByParameters.length > 0 ? getOrderByColumns(fromColumns, mainQueryResult.columns) : undefined;
245
- if (orderByColumns) {
246
- resultWithoutOrderBy.orderByColumns = orderByColumns;
247
- }
248
- return resultWithoutOrderBy;
249
- }
250
- }
251
- }
252
- const insertStatement = (_b = tree.simpleStatement()) === null || _b === void 0 ? void 0 : _b.insertStatement();
253
- if (insertStatement) {
254
- const typeInfer = (0, collect_constraints_1.analiseInsertStatement)(insertStatement, context);
255
- return typeInfer;
256
- }
257
- const updateStatement = (_c = tree.simpleStatement()) === null || _c === void 0 ? void 0 : _c.updateStatement();
258
- if (updateStatement) {
259
- const typeInfer = (0, collect_constraints_1.analiseUpdateStatement)(updateStatement, context.dbSchema, context.withSchema);
260
- return typeInfer;
261
- }
262
- const deleteStatement = (_d = tree.simpleStatement()) === null || _d === void 0 ? void 0 : _d.deleteStatement();
263
- if (deleteStatement) {
264
- const typeInfer = (0, collect_constraints_1.analiseDeleteStatement)(deleteStatement, context.dbSchema, context.withSchema);
265
- return typeInfer;
174
+ const traverseResult = (0, traverse_1.traverseQueryContext)(tree, dbSchema, namedParameters);
175
+ if (traverseResult.type == 'Select') {
176
+ const queryInfoResult = extractSelectQueryInfo(traverseResult);
177
+ if (gererateNested) {
178
+ const nestedInfo = (0, describe_nested_query_1.generateNestedInfo)(tree, dbSchema, queryInfoResult.columns);
179
+ queryInfoResult.nestedResultInfo = nestedInfo;
266
180
  }
181
+ return queryInfoResult;
182
+ }
183
+ if (traverseResult.type == 'Insert') {
184
+ const newResult = {
185
+ kind: 'Insert',
186
+ parameters: traverseResult.parameters
187
+ };
188
+ return newResult;
189
+ }
190
+ if (traverseResult.type == 'Update') {
191
+ const substitutions = {}; //TODO - DUPLICADO
192
+ (0, unify_1.unify)(traverseResult.constraints, substitutions);
193
+ const columnResult = traverseResult.data.map((col) => {
194
+ const columnType = (0, collect_constraints_1.getVarType)(substitutions, col.type);
195
+ const columnNotNull = col.notNull;
196
+ const colInfo = {
197
+ name: col.name,
198
+ columnType: (0, describe_query_1.verifyNotInferred)(columnType),
199
+ notNull: columnNotNull
200
+ };
201
+ return colInfo;
202
+ });
203
+ const paramResult = traverseResult.parameters.map((col) => {
204
+ const columnType = (0, collect_constraints_1.getVarType)(substitutions, col.type);
205
+ const columnNotNull = col.notNull;
206
+ const colInfo = {
207
+ name: col.name,
208
+ columnType: (0, describe_query_1.verifyNotInferred)(columnType),
209
+ notNull: columnNotNull
210
+ };
211
+ return colInfo;
212
+ });
213
+ const newResult = {
214
+ kind: 'Update',
215
+ data: columnResult,
216
+ parameters: paramResult
217
+ };
218
+ return newResult;
219
+ }
220
+ if (traverseResult.type == 'Delete') {
221
+ const newResult = {
222
+ kind: 'Delete',
223
+ parameters: traverseResult.parameters
224
+ };
225
+ return newResult;
267
226
  }
268
227
  throw Error('Not supported');
269
228
  }
270
229
  exports.extractQueryInfo = extractQueryInfo;
271
- function getOrderByColumns(fromColumns, selectColumns) {
272
- const fromColumnsNames = fromColumns.map(col => col.columnName); //TODO - loading twice
273
- const selectColumnsNames = selectColumns.map(col => col.name);
274
- const allOrderByColumns = Array.from(new Set(fromColumnsNames.concat(selectColumnsNames)));
275
- return allOrderByColumns;
276
- }
277
- function analiseQuery(querySpec, dbSchema, withSchema, namedParameters, recursive = false) {
278
- const mainQueryResult = extractQueryInfoFromQuerySpecification(querySpec[0], dbSchema, withSchema, namedParameters);
279
- for (let queryIndex = 1; queryIndex < querySpec.length; queryIndex++) { //union (if have any)
280
- if (recursive) {
281
- withSchema.push(...mainQueryResult.columns);
282
- }
283
- const unionResult = extractQueryInfoFromQuerySpecification(querySpec[queryIndex], dbSchema, withSchema, namedParameters);
284
- mainQueryResult.columns.forEach((field, fieldIndex) => {
285
- const unionField = unionResult.columns[fieldIndex];
286
- field.notNull = field.notNull && unionField.notNull; //if all the fields at the fieldIndex is null
287
- field.type = (0, collect_constraints_1.unionTypeResult)(field.type, unionField.type);
288
- });
289
- mainQueryResult.parameters.push(...unionResult.parameters);
230
+ function extractSelectQueryInfo(traverseResult) {
231
+ const substitutions = {}; //TODO - DUPLICADO
232
+ (0, unify_1.unify)(traverseResult.constraints, substitutions);
233
+ const columnResult = traverseResult.columns.map((col) => {
234
+ const columnType = (0, collect_constraints_1.getVarType)(substitutions, col.type);
235
+ const columnNotNull = col.notNull;
236
+ const colInfo = {
237
+ columnName: col.name,
238
+ type: (0, describe_query_1.verifyNotInferred)(columnType),
239
+ notNull: columnNotNull,
240
+ table: col.table
241
+ };
242
+ return colInfo;
243
+ });
244
+ const paramsResult = traverseResult.parameters.map((param) => {
245
+ const columnType = (0, collect_constraints_1.getVarType)(substitutions, param.type);
246
+ const columnNotNull = param.notNull;
247
+ const colInfo = {
248
+ // columnName: param.name,
249
+ type: (0, describe_query_1.verifyNotInferred)(columnType),
250
+ notNull: columnNotNull
251
+ };
252
+ return colInfo;
253
+ }).concat(traverseResult.limitParameters);
254
+ const resultWithoutOrderBy = {
255
+ kind: 'Select',
256
+ multipleRowsResult: traverseResult.isMultiRow,
257
+ columns: columnResult,
258
+ parameters: paramsResult,
259
+ };
260
+ if (traverseResult.orderByColumns) {
261
+ resultWithoutOrderBy.orderByColumns = traverseResult.orderByColumns;
290
262
  }
291
- return mainQueryResult;
263
+ return resultWithoutOrderBy;
292
264
  }
293
- exports.analiseQuery = analiseQuery;
265
+ function getAllQuerySpecificationsFromSelectStatement(selectStatement) {
266
+ const result = [];
267
+ collectAllQuerySpecifications(selectStatement, result);
268
+ return result;
269
+ }
270
+ exports.getAllQuerySpecificationsFromSelectStatement = getAllQuerySpecificationsFromSelectStatement;
294
271
  function getQuerySpecificationsFromSelectStatement(selectStatement) {
295
272
  const result = [];
296
273
  collectQuerySpecifications(selectStatement, result);
@@ -301,7 +278,8 @@ exports.getQuerySpecificationsFromSelectStatement = getQuerySpecificationsFromSe
301
278
  function collectQuerySpecifications(tree, result) {
302
279
  for (let i = 0; i < tree.childCount; i++) {
303
280
  const child = tree.getChild(i);
304
- if (child instanceof ts_mysql_parser_1.QuerySpecificationContext) {
281
+ //add only first query and unions
282
+ if (child instanceof ts_mysql_parser_1.QuerySpecificationContext && (result.length == 0 || child.parent.UNION_SYMBOL())) {
305
283
  result.push(child);
306
284
  }
307
285
  else {
@@ -309,41 +287,15 @@ function collectQuerySpecifications(tree, result) {
309
287
  }
310
288
  }
311
289
  }
312
- function analyseWithClause(withClause, dbSchema, withSchema) {
313
- const result = withClause.commonTableExpression().map(commonTableExpression => {
314
- var _a;
315
- const identifier = commonTableExpression.identifier().text;
316
- const columnInternalRefList = ((_a = commonTableExpression.columnInternalRefList()) === null || _a === void 0 ? void 0 : _a.columnInternalRef()) || [];
317
- columnInternalRefList.forEach(colRef => {
318
- const identifier = colRef.identifier().text;
319
- withSchema.push({
320
- name: identifier,
321
- notNull: true,
322
- type: '?'
323
- });
324
- });
325
- const subQuery = commonTableExpression.subquery();
326
- const recursive = withClause.RECURSIVE_SYMBOL() ? true : false;
327
- const queryResult = (0, select_columns_1.analyzeSubQuery)(subQuery, dbSchema, withSchema, recursive);
328
- if (recursive) {
329
- const newColumnNames = queryResult.columns.map((col, index) => {
330
- const newR = Object.assign(Object.assign({}, col), { name: withSchema[index].name });
331
- return newR;
332
- });
333
- const newQueryResult = {
334
- columns: newColumnNames,
335
- parameters: queryResult.parameters
336
- };
337
- return {
338
- identifier,
339
- queryResult: newQueryResult
340
- };
290
+ function collectAllQuerySpecifications(tree, result) {
291
+ for (let i = 0; i < tree.childCount; i++) {
292
+ const child = tree.getChild(i);
293
+ if (child instanceof ts_mysql_parser_1.QuerySpecificationContext) {
294
+ result.push(child);
341
295
  }
342
- return {
343
- identifier,
344
- queryResult
345
- };
346
- });
347
- return result;
296
+ else {
297
+ collectAllQuerySpecifications(child, result);
298
+ }
299
+ }
348
300
  }
349
301
  //# sourceMappingURL=parse.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"parse.js","sourceRoot":"","sources":["../../../src/mysql-query-analyzer/parse.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"parse.js","sourceRoot":"","sources":["../../../src/mysql-query-analyzer/parse.ts"],"names":[],"mappings":"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"}
@@ -1,15 +1,15 @@
1
- import { RuleContext } from "antlr4ts";
1
+ import { ParserRuleContext, RuleContext } from "antlr4ts";
2
2
  import { ParseTree } from "antlr4ts/tree";
3
- import { QuerySpecificationContext, TableReferenceContext, SubqueryContext } from "ts-mysql-parser";
4
- import { ColumnSchema, ColumnDef, FieldName, TypeAndNullInfer } from "./types";
5
- export declare function filterColumns(dbSchema: ColumnSchema[], withSchema: TypeAndNullInfer[], tableAlias: string | undefined, table: FieldName): ColumnDef[];
3
+ import { JoinedTableContext, SelectItemContext } from "ts-mysql-parser";
4
+ import { ColumnDef, ColumnSchema, FieldName } from "./types";
5
+ export declare function filterColumns(dbSchema: ColumnSchema[], withSchema: ColumnDef[], tableAlias: string | undefined, table: FieldName): ColumnDef[];
6
6
  export declare function selectAllColumns(tablePrefix: string, fromColumns: ColumnDef[]): ColumnDef[];
7
- export declare function getColumnNames(querySpec: QuerySpecificationContext, fromColumns: ColumnDef[]): string[];
8
- export declare function getColumnsFrom(ctx: QuerySpecificationContext, dbSchema: ColumnSchema[], withSchema: TypeAndNullInfer[]): ColumnDef[];
9
- export declare function extractColumnsFromTableReferences(tablesReferences: TableReferenceContext[], dbSchema: ColumnSchema[], withSchema: TypeAndNullInfer[]): ColumnDef[];
10
- export declare function analyzeSubQuery(subQuery: SubqueryContext, dbSchema: ColumnSchema[], withSchema: TypeAndNullInfer[], recursive?: boolean): import("./types").TypeAndNullInferResult;
7
+ export declare function getColumnName(selectItem: SelectItemContext): string;
8
+ export declare function extractFieldsFromUsingClause(joinedTableContext: JoinedTableContext): string[];
11
9
  export declare function splitName(fieldName: string): FieldName;
10
+ export declare const functionAlias: ColumnSchema[];
11
+ export declare function findColumnSchema(tableName: string, columnName: string, dbSchema: ColumnSchema[]): ColumnSchema | undefined;
12
12
  export declare function findColumn(fieldName: FieldName, columns: ColumnDef[]): ColumnDef;
13
- export declare function findColumn2(fieldName: FieldName, table: string, columns: ColumnSchema[]): ColumnSchema;
13
+ export declare function extractOriginalSql(rule: ParserRuleContext): string | undefined;
14
14
  export declare function getSimpleExpressions(ctx: RuleContext): ParseTree[];
15
15
  //# sourceMappingURL=select-columns.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"select-columns.d.ts","sourceRoot":"","sources":["../../../src/mysql-query-analyzer/select-columns.ts"],"names":[],"mappings":"AAAA,OAAO,EAAqB,WAAW,EAAE,MAAM,UAAU,CAAC;AAC1D,OAAO,EAAE,SAAS,EAAE,MAAM,eAAe,CAAC;AAG1C,OAAO,EACH,yBAAyB,EAAE,qBAAqB,EAKuF,eAAe,EACzJ,MAAM,iBAAiB,CAAC;AAEzB,OAAO,EAAE,YAAY,EAAE,SAAS,EAAE,SAAS,EAAE,gBAAgB,EAAE,MAAM,SAAS,CAAC;AAK/E,wBAAgB,aAAa,CAAC,QAAQ,EAAE,YAAY,EAAE,EAAE,UAAU,EAAE,gBAAgB,EAAE,EAAE,UAAU,EAAE,MAAM,GAAG,SAAS,EAAE,KAAK,EAAE,SAAS,GAAG,SAAS,EAAE,CA0BrJ;AAED,wBAAgB,gBAAgB,CAAC,WAAW,EAAE,MAAM,EAAE,WAAW,EAAE,SAAS,EAAE,eAS7E;AAED,wBAAgB,cAAc,CAAC,SAAS,EAAE,yBAAyB,EAAE,WAAW,EAAE,SAAS,EAAE,GAAG,MAAM,EAAE,CA6BvG;AAGD,wBAAgB,cAAc,CAAC,GAAG,EAAE,yBAAyB,EAAE,QAAQ,EAAE,YAAY,EAAE,EAAE,UAAU,EAAE,gBAAgB,EAAE,eAItH;AAGD,wBAAgB,iCAAiC,CAAC,gBAAgB,EAAE,qBAAqB,EAAE,EAAE,QAAQ,EAAE,YAAY,EAAE,EAAE,UAAU,EAAE,gBAAgB,EAAE,GAAG,SAAS,EAAE,CAuElK;AAmFD,wBAAgB,eAAe,CAAC,QAAQ,EAAE,eAAe,EAAE,QAAQ,EAAE,YAAY,EAAE,EAAE,UAAU,EAAE,gBAAgB,EAAE,EAAE,SAAS,UAAQ,4CAIrI;AAwCD,wBAAgB,SAAS,CAAC,SAAS,EAAE,MAAM,GAAG,SAAS,CAWtD;AAsDD,wBAAgB,UAAU,CAAC,SAAS,EAAE,SAAS,EAAE,OAAO,EAAE,SAAS,EAAE,GAAG,SAAS,CAoBhF;AAED,wBAAgB,WAAW,CAAC,SAAS,EAAE,SAAS,EAAE,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,YAAY,EAAE,GAAG,YAAY,CAWtG;AAWD,wBAAgB,oBAAoB,CAAC,GAAG,EAAE,WAAW,GAAG,SAAS,EAAE,CAKlE"}
1
+ {"version":3,"file":"select-columns.d.ts","sourceRoot":"","sources":["../../../src/mysql-query-analyzer/select-columns.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,WAAW,EAAE,MAAM,UAAU,CAAC;AAC1D,OAAO,EAAE,SAAS,EAAE,MAAM,eAAe,CAAC;AAG1C,OAAO,EACH,kBAAkB,EAIqH,iBAAiB,EAC3J,MAAM,iBAAiB,CAAC;AAEzB,OAAO,EAAE,SAAS,EAAE,YAAY,EAAE,SAAS,EAAE,MAAM,SAAS,CAAC;AAG7D,wBAAgB,aAAa,CAAC,QAAQ,EAAE,YAAY,EAAE,EAAE,UAAU,EAAE,SAAS,EAAE,EAAE,UAAU,EAAE,MAAM,GAAG,SAAS,EAAE,KAAK,EAAE,SAAS,GAAG,SAAS,EAAE,CAyB9I;AAED,wBAAgB,gBAAgB,CAAC,WAAW,EAAE,MAAM,EAAE,WAAW,EAAE,SAAS,EAAE,eAQ7E;AAED,wBAAgB,aAAa,CAAC,UAAU,EAAE,iBAAiB,UAW1D;AAED,wBAAgB,4BAA4B,CAAC,kBAAkB,EAAE,kBAAkB,GAAG,MAAM,EAAE,CAM7F;AAGD,wBAAgB,SAAS,CAAC,SAAS,EAAE,MAAM,GAAG,SAAS,CAWtD;AAOD,eAAO,MAAM,aAAa,EAAE,YAAY,EA6CvC,CAAA;AAED,wBAAgB,gBAAgB,CAAC,SAAS,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,EAAE,QAAQ,EAAE,YAAY,EAAE,4BAI/F;AAED,wBAAgB,UAAU,CAAC,SAAS,EAAE,SAAS,EAAE,OAAO,EAAE,SAAS,EAAE,GAAG,SAAS,CAoBhF;AAED,wBAAgB,kBAAkB,CAAC,IAAI,EAAE,iBAAiB,sBAOzD;AAED,wBAAgB,oBAAoB,CAAC,GAAG,EAAE,WAAW,GAAG,SAAS,EAAE,CAKlE"}