typesql-cli 0.9.1 → 0.9.3

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.
@@ -1,4 +1,4 @@
1
- import { ColumnInfo, DynamicSqlInfo, DynamicSqlInfo2, DynamicSqlInfoResult, DynamicSqlInfoResult2 } from "./mysql-query-analyzer/types";
1
+ import { DynamicSqlInfo, DynamicSqlInfo2, DynamicSqlInfoResult, DynamicSqlInfoResult2 } from "./mysql-query-analyzer/types";
2
2
  export declare function describeDynamicQuery(dynamicQueryInfo: DynamicSqlInfo, namedParameters: string[], orderBy: string[]): DynamicSqlInfoResult;
3
- export declare function describeDynamicQuery2(columns: ColumnInfo[], dynamicQueryInfo: DynamicSqlInfo2, namedParameters: string[], orderByColumns: string[]): DynamicSqlInfoResult2;
3
+ export declare function describeDynamicQuery2(dynamicQueryInfo: DynamicSqlInfo2, namedParameters: string[], orderByColumns: string[]): DynamicSqlInfoResult2;
4
4
  //# sourceMappingURL=describe-dynamic-query.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"describe-dynamic-query.d.ts","sourceRoot":"","sources":["../../src/describe-dynamic-query.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,UAAU,EAAE,cAAc,EAAE,eAAe,EAAE,oBAAoB,EAAE,qBAAqB,EAAqI,MAAM,8BAA8B,CAAC;AAE3Q,wBAAgB,oBAAoB,CAAC,gBAAgB,EAAE,cAAc,EAAE,eAAe,EAAE,MAAM,EAAE,EAAE,OAAO,EAAE,MAAM,EAAE,GAAG,oBAAoB,CAqCzI;AAuED,wBAAgB,qBAAqB,CAAC,OAAO,EAAE,UAAU,EAAE,EAAE,gBAAgB,EAAE,eAAe,EAAE,eAAe,EAAE,MAAM,EAAE,EAAE,cAAc,EAAE,MAAM,EAAE,GAAG,qBAAqB,CAY1K"}
1
+ {"version":3,"file":"describe-dynamic-query.d.ts","sourceRoot":"","sources":["../../src/describe-dynamic-query.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,cAAc,EAAE,eAAe,EAAE,oBAAoB,EAAE,qBAAqB,EAA2K,MAAM,8BAA8B,CAAC;AAErS,wBAAgB,oBAAoB,CAAC,gBAAgB,EAAE,cAAc,EAAE,eAAe,EAAE,MAAM,EAAE,EAAE,OAAO,EAAE,MAAM,EAAE,GAAG,oBAAoB,CAqCzI;AAuED,wBAAgB,qBAAqB,CAAC,gBAAgB,EAAE,eAAe,EAAE,eAAe,EAAE,MAAM,EAAE,EAAE,cAAc,EAAE,MAAM,EAAE,GAAG,qBAAqB,CAYnJ"}
@@ -97,36 +97,37 @@ function addAllChildFields(currentRelation, select, withFragments) {
97
97
  });
98
98
  });
99
99
  }
100
- function describeDynamicQuery2(columns, dynamicQueryInfo, namedParameters, orderByColumns) {
100
+ function describeDynamicQuery2(dynamicQueryInfo, namedParameters, orderByColumns) {
101
101
  const { with: withFragments, select, from, where } = dynamicQueryInfo;
102
- const fromResult = transformFromFragments(columns, from, where, namedParameters, orderByColumns);
102
+ const fromResult = transformFromFragments(from, select, namedParameters, orderByColumns);
103
103
  const result = {
104
104
  with: transformWithFragmnts(withFragments, fromResult, namedParameters),
105
- select: select,
105
+ select: transformSelectFragments(select, namedParameters),
106
106
  from: fromResult,
107
107
  where: transformWhereFragments(where, namedParameters)
108
108
  };
109
109
  return result;
110
110
  }
111
111
  exports.describeDynamicQuery2 = describeDynamicQuery2;
112
+ function transformSelectFragments(selectFragments, namedParameters) {
113
+ return selectFragments.map(select => ({ fragment: select.fragment, fragmentWitoutAlias: select.fragmentWitoutAlias, parameters: select.parameters.map(paramIndex => namedParameters[paramIndex]) }));
114
+ }
112
115
  function transformWithFragmnts(withFragments, fromFragments, namedParameters) {
113
116
  return withFragments.map(withFragment => {
114
117
  const fromDependOn = fromFragments.filter(from => from.relationName == withFragment.relationName);
115
118
  const dependOnFields = fromDependOn.flatMap(from => from.dependOnFields);
116
- const dependOnParams = fromDependOn.flatMap(from => from.dependOnParams);
117
119
  const dependOnOrderBy = fromDependOn.flatMap(from => from.dependOnOrderBy);
118
120
  const fromFragmentResult = {
119
121
  fragment: withFragment.fragment,
120
122
  relationName: withFragment.relationName,
121
123
  dependOnFields,
122
- dependOnParams,
123
124
  dependOnOrderBy,
124
125
  parameters: withFragment.parameters.map(paramIndex => namedParameters[paramIndex])
125
126
  };
126
127
  return fromFragmentResult;
127
128
  });
128
129
  }
129
- function transformFromFragments(columns, fromFragments, whereFragements, namedParameters, orderByColumns) {
130
+ function transformFromFragments(fromFragments, selectFragments, namedParameters, orderByColumns) {
130
131
  const fromResult = fromFragments.map(from => {
131
132
  const orderBy = orderByColumns.flatMap(orderBy => {
132
133
  const orderByField = (0, select_columns_1.splitName)(orderBy);
@@ -136,14 +137,13 @@ function transformFromFragments(columns, fromFragments, whereFragements, namedPa
136
137
  }
137
138
  return [];
138
139
  });
139
- const dependOnParams = getDepenedOnParams(from, whereFragements).map(paramIndex => namedParameters[paramIndex]);
140
+ const { relationName, relationAlias, parentRelation } = from;
140
141
  const fromFragmentResult = {
141
142
  fragment: from.fragment,
142
143
  relationName: from.relationName,
143
144
  relationAlias: from.relationAlias,
144
145
  parentRelation: from.parentRelation,
145
- dependOnFields: getDependOnFields(columns, from),
146
- dependOnParams: [...new Set(dependOnParams)],
146
+ dependOnFields: getDependOnFields({ relationName, relationAlias, parentRelation }, selectFragments),
147
147
  dependOnOrderBy: orderBy,
148
148
  parameters: from.parameters.map(paramIndex => namedParameters[paramIndex])
149
149
  };
@@ -152,13 +152,11 @@ function transformFromFragments(columns, fromFragments, whereFragements, namedPa
152
152
  const withChildren = fromResult.map(parentFrom => {
153
153
  const actualAndChildRelations = fromResult.filter(childFrom => (childFrom.parentRelation == parentFrom.relationAlias && parentFrom.parentRelation != '') || childFrom.relationName == parentFrom.relationName);
154
154
  const dependOnFields = actualAndChildRelations.flatMap(from => from.dependOnFields);
155
- const dependOnParams = actualAndChildRelations.flatMap(from => from.dependOnParams);
156
155
  const dependOnOrderBy = actualAndChildRelations.flatMap(from => from.dependOnOrderBy);
157
156
  const result = {
158
157
  fragment: parentFrom.fragment,
159
158
  relationName: parentFrom.relationName,
160
159
  dependOnFields,
161
- dependOnParams,
162
160
  dependOnOrderBy,
163
161
  parameters: parentFrom.parameters
164
162
  };
@@ -168,35 +166,24 @@ function transformFromFragments(columns, fromFragments, whereFragements, namedPa
168
166
  }
169
167
  function transformWhereFragments(whereFragements, namedParameters) {
170
168
  return whereFragements.map(where => {
171
- const parameters = where.fields.flatMap(field => field.parameters.map(param => namedParameters[param]));
169
+ const parameters = where.parameters.map(param => namedParameters[param]);
172
170
  const whereFragmentResult = {
173
171
  fragment: where.fragment,
174
- dependOnParams: [...new Set(parameters)],
175
172
  parameters
176
173
  };
177
174
  return whereFragmentResult;
178
175
  });
179
176
  }
180
- function getDependOnFields(columns, relationInfo) {
181
- const dependOnFields = columns.flatMap((col, index) => {
182
- if ((col.table == relationInfo.relationName || col.table == relationInfo.relationAlias) && relationInfo.parentRelation != '') {
177
+ function getDependOnFields(relationInfo, selectFragments) {
178
+ if (relationInfo.parentRelation == '') { //from
179
+ return [];
180
+ }
181
+ const dependOnFields = selectFragments.flatMap((select, index) => {
182
+ if (select.dependOnRelations.includes(relationInfo.relationAlias)) {
183
183
  return index;
184
184
  }
185
185
  return [];
186
186
  });
187
187
  return dependOnFields;
188
188
  }
189
- function getDepenedOnParams(fromFragement, whereFragments) {
190
- const params = whereFragments.flatMap(whereFragement => {
191
- return whereFragement.fields.flatMap(field => {
192
- if (fromFragement.relationAlias == field.dependOnRelation) {
193
- return field.parameters;
194
- }
195
- else {
196
- return [];
197
- }
198
- });
199
- });
200
- return params;
201
- }
202
189
  //# sourceMappingURL=describe-dynamic-query.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"describe-dynamic-query.js","sourceRoot":"","sources":["../../src/describe-dynamic-query.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"describe-dynamic-query.js","sourceRoot":"","sources":["../../src/describe-dynamic-query.ts"],"names":[],"mappings":"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"}
@@ -128,6 +128,8 @@ export type DynamicSqlInfo2 = {
128
128
  export type SelectFragment = {
129
129
  fragment: string;
130
130
  fragmentWitoutAlias?: string;
131
+ dependOnRelations: string[];
132
+ parameters: number[];
131
133
  };
132
134
  export type WithFragment = {
133
135
  fragment: string;
@@ -144,29 +146,29 @@ export type FromFragment = {
144
146
  };
145
147
  export type WhereFragment = {
146
148
  fragment: string;
147
- fields: WhereFragementField[];
148
- };
149
- export type WhereFragementField = {
149
+ dependOnRelations: string[];
150
150
  parameters: number[];
151
- dependOnRelation: string;
152
151
  };
153
152
  export type DynamicSqlInfoResult2 = {
154
153
  with: FromFragementResult[];
155
- select: SelectFragment[];
154
+ select: SelectFragmentResult[];
156
155
  from: FromFragementResult[];
157
156
  where: WhereFragmentResult[];
158
157
  };
158
+ export type SelectFragmentResult = {
159
+ fragment: string;
160
+ fragmentWitoutAlias?: string;
161
+ parameters: string[];
162
+ };
159
163
  export type FromFragementResult = {
160
164
  fragment: string;
161
165
  relationName: string;
162
166
  dependOnFields: number[];
163
- dependOnParams: string[];
164
167
  parameters: string[];
165
168
  dependOnOrderBy: string[];
166
169
  };
167
170
  export type WhereFragmentResult = {
168
171
  fragment: string;
169
- dependOnParams: string[];
170
172
  parameters: string[];
171
173
  };
172
174
  export type SubstitutionHash = {
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/mysql-query-analyzer/types.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/mysql-query-analyzer/types.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "typesql-cli",
3
- "version": "0.9.1",
3
+ "version": "0.9.3",
4
4
  "description": "",
5
5
  "main": "index.js",
6
6
  "bin": {
@@ -299,10 +299,9 @@ function generateCodeFromTsDescriptor(client, queryName, tsDescriptor, isCrud =
299
299
  if (selectConditions.length > 0) {
300
300
  selectConditions.unshift('params?.select == null');
301
301
  }
302
- const paramConditions = withFragment.dependOnParams.map(param => 'params.params?.' + param + ' != null');
303
302
  const whereConditions = withFragment.dependOnFields.map(fieldIndex => 'where.' + tsDescriptor.columns[fieldIndex].name + ' != null');
304
303
  const orderByConditions = ((_a = withFragment.dependOnOrderBy) === null || _a === void 0 ? void 0 : _a.map(orderBy => 'orderBy[\'' + orderBy + '\'] != null')) || [];
305
- const allConditions = [...selectConditions, ...paramConditions, ...whereConditions, ...orderByConditions];
304
+ const allConditions = [...selectConditions, ...whereConditions, ...orderByConditions];
306
305
  const paramValues = withFragment.parameters.map(param => 'params?.params?.' + param);
307
306
  writer.write(`if (${allConditions.join(os_1.EOL + '\t|| ')})`).block(() => {
308
307
  writer.write(`withClause += EOL + \`${withFragment.fragment}\`;`);
@@ -319,6 +318,9 @@ function generateCodeFromTsDescriptor(client, queryName, tsDescriptor, isCrud =
319
318
  (_c = tsDescriptor.dynamicQuery2) === null || _c === void 0 ? void 0 : _c.select.forEach((select, index) => {
320
319
  writer.write(`if (params?.select == null || params.select.${tsDescriptor.columns[index].name})`).block(() => {
321
320
  writer.writeLine(`sql = appendSelect(sql, \`${select.fragment}\`);`);
321
+ select.parameters.forEach(param => {
322
+ writer.writeLine(`paramsValues.push(params?.params?.${param} ?? null);`);
323
+ });
322
324
  });
323
325
  });
324
326
  (_d = tsDescriptor.dynamicQuery2) === null || _d === void 0 ? void 0 : _d.from.forEach((from, index) => {
@@ -331,10 +333,9 @@ function generateCodeFromTsDescriptor(client, queryName, tsDescriptor, isCrud =
331
333
  if (selectConditions.length > 0) {
332
334
  selectConditions.unshift('params?.select == null');
333
335
  }
334
- const paramConditions = from.dependOnParams.map(param => 'params.params?.' + param + ' != null');
335
336
  const whereConditions = from.dependOnFields.map(fieldIndex => 'where.' + tsDescriptor.columns[fieldIndex].name + ' != null');
336
337
  const orderByConditions = ((_a = from.dependOnOrderBy) === null || _a === void 0 ? void 0 : _a.map(orderBy => 'orderBy[\'' + orderBy + '\'] != null')) || [];
337
- const allConditions = [...selectConditions, ...paramConditions, ...whereConditions, ...orderByConditions];
338
+ const allConditions = [...selectConditions, ...whereConditions, ...orderByConditions];
338
339
  const paramValues = from.parameters.map(param => 'params?.params?.' + param);
339
340
  writer.write(`if (${allConditions.join(os_1.EOL + '\t|| ')})`).block(() => {
340
341
  writer.write(`sql += EOL + \`${from.fragment}\`;`);
@@ -346,22 +347,24 @@ function generateCodeFromTsDescriptor(client, queryName, tsDescriptor, isCrud =
346
347
  });
347
348
  writer.writeLine(`sql += EOL + \`WHERE 1 = 1\`;`);
348
349
  (_e = tsDescriptor.dynamicQuery2) === null || _e === void 0 ? void 0 : _e.where.forEach(fragment => {
349
- const ifParamConditions = fragment.dependOnParams.map(param => 'params?.params?.' + param + ' != null');
350
- const paramValues = fragment.parameters.map(param => 'params.params.' + param);
351
- if (ifParamConditions.length > 0) {
352
- writer.write(`if (${ifParamConditions.join(' || ')})`).block(() => {
353
- writer.writeLine(`sql += EOL + \`${fragment.fragment}\`;`);
354
- paramValues.forEach(paramValues => {
355
- writer.writeLine(`paramsValues.push(${paramValues});`);
356
- });
357
- });
358
- }
359
- else {
360
- writer.writeLine(`sql += EOL + '${fragment.fragment}';`);
361
- }
350
+ const paramValues = fragment.parameters.map(param => 'params?.params?.' + param + ' ?? null');
351
+ writer.writeLine(`sql += EOL + \`${fragment.fragment}\`;`);
352
+ paramValues.forEach(paramValues => {
353
+ writer.writeLine(`paramsValues.push(${paramValues});`);
354
+ });
362
355
  });
363
356
  writer.write(`params?.where?.forEach(condition => `).inlineBlock(() => {
357
+ var _a;
364
358
  writer.writeLine(`const where = whereCondition(condition);`);
359
+ (_a = tsDescriptor.dynamicQuery2) === null || _a === void 0 ? void 0 : _a.select.forEach((select, index) => {
360
+ if (select.parameters.length > 0) {
361
+ writer.write(`if (condition[0] == '${tsDescriptor.columns[index].name}')`).block(() => {
362
+ select.parameters.forEach(param => {
363
+ writer.writeLine(`paramsValues.push(params?.params?.${param} ?? null);`);
364
+ });
365
+ });
366
+ }
367
+ });
365
368
  writer.write(`if (where?.hasValue)`).block(() => {
366
369
  writer.writeLine(`sql += EOL + 'AND ' + where.sql;`);
367
370
  writer.write(`paramsValues.push(...where.values);`);
@@ -1 +1 @@
1
- {"version":3,"file":"code-generator.js","sourceRoot":"","sources":["../../../src/sqlite-query-analyzer/code-generator.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"code-generator.js","sourceRoot":"","sources":["../../../src/sqlite-query-analyzer/code-generator.ts"],"names":[],"mappings":"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"}
@@ -137,7 +137,7 @@ function createSchemaDefinition(sql, queryResult, namedParameters, nestedQuery,
137
137
  schemaDef.nestedInfo = nestedResult;
138
138
  }
139
139
  if (dynamicQuery) {
140
- const dynamicSqlInfo = (0, describe_dynamic_query_1.describeDynamicQuery2)(columnResult, queryResult.dynamicQueryInfo, namedParameters, queryResult.orderByColumns || []);
140
+ const dynamicSqlInfo = (0, describe_dynamic_query_1.describeDynamicQuery2)(queryResult.dynamicQueryInfo, namedParameters, queryResult.orderByColumns || []);
141
141
  schemaDef.dynamicSqlQuery2 = dynamicSqlInfo;
142
142
  }
143
143
  return (0, Either_1.right)(schemaDef);
@@ -1 +1 @@
1
- {"version":3,"file":"parser.js","sourceRoot":"","sources":["../../../src/sqlite-query-analyzer/parser.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"parser.js","sourceRoot":"","sources":["../../../src/sqlite-query-analyzer/parser.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"traverse.d.ts","sourceRoot":"","sources":["../../../src/sqlite-query-analyzer/traverse.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAE,eAAe,EAAE,WAAW,EAAgP,MAAM,sCAAsC,CAAC;AACtV,OAAO,EAAE,SAAS,EAA2B,eAAe,EAAgE,MAAM,+BAA+B,CAAC;AAGlK,OAAO,EAAsE,eAAe,EAAmC,MAAM,kCAAkC,CAAC;AAExK,OAAO,EAAE,MAAM,EAAe,MAAM,kBAAkB,CAAC;AACvD,OAAO,EAAE,YAAY,EAAE,MAAM,UAAU,CAAC;AA4BxC,wBAAgB,2BAA2B,CAAC,QAAQ,EAAE,eAAe,EAAE,eAAe,EAAE,eAAe,GAAG,MAAM,CAAC,YAAY,EAAE,eAAe,CAAC,CAa9I;AAojCD,wBAAgB,SAAS,CAAC,UAAU,EAAE,MAAM,EAAE,KAAK,EAAE,WAAW,GAAG,IAAI,GAAG,OAAO,CAiBhF;AA0BD,wBAAgB,mBAAmB,CAAC,WAAW,EAAE,kBAAkB,EAAE,WAAW,EAAE,SAAS,EAAE,WA0B5F"}
1
+ {"version":3,"file":"traverse.d.ts","sourceRoot":"","sources":["../../../src/sqlite-query-analyzer/traverse.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAE,eAAe,EAAE,WAAW,EAAgP,MAAM,sCAAsC,CAAC;AACtV,OAAO,EAAE,SAAS,EAA2B,eAAe,EAA2C,MAAM,+BAA+B,CAAC;AAG7I,OAAO,EAAsE,eAAe,EAAmC,MAAM,kCAAkC,CAAC;AAExK,OAAO,EAAE,MAAM,EAAe,MAAM,kBAAkB,CAAC;AACvD,OAAO,EAAE,YAAY,EAAE,MAAM,UAAU,CAAC;AA4BxC,wBAAgB,2BAA2B,CAAC,QAAQ,EAAE,eAAe,EAAE,eAAe,EAAE,eAAe,GAAG,MAAM,CAAC,YAAY,EAAE,eAAe,CAAC,CAa9I;AAujCD,wBAAgB,SAAS,CAAC,UAAU,EAAE,MAAM,EAAE,KAAK,EAAE,WAAW,GAAG,IAAI,GAAG,OAAO,CAiBhF;AA0BD,wBAAgB,mBAAmB,CAAC,WAAW,EAAE,kBAAkB,EAAE,WAAW,EAAE,SAAS,EAAE,WA0B5F"}
@@ -180,7 +180,9 @@ function traverse_select_core(select_core, traverseContext, subQuery = false, re
180
180
  if (!traverseContext.subQuery) {
181
181
  traverseContext.dynamicSqlInfo2.select.push({
182
182
  fragment: `${table}.${col.columnName}`,
183
- fragmentWitoutAlias: `${table}.${col.columnName}`
183
+ fragmentWitoutAlias: `${table}.${col.columnName}`,
184
+ dependOnRelations: [table],
185
+ parameters: []
184
186
  });
185
187
  }
186
188
  }
@@ -202,9 +204,12 @@ function traverse_select_core(select_core, traverseContext, subQuery = false, re
202
204
  listType.push(exprType);
203
205
  }
204
206
  if (!traverseContext.subQuery) {
207
+ const { relations, params } = extractRelationsAndParams(expr, fromColumns, traverseContext.parameters);
205
208
  traverseContext.dynamicSqlInfo2.select.push({
206
209
  fragment: extractOriginalSql(result_column),
207
- fragmentWitoutAlias: expr.getText()
210
+ fragmentWitoutAlias: extractOriginalSql(expr),
211
+ dependOnRelations: [...new Set(relations)],
212
+ parameters: params
208
213
  });
209
214
  }
210
215
  }
@@ -213,27 +218,11 @@ function traverse_select_core(select_core, traverseContext, subQuery = false, re
213
218
  if (whereExpr) {
214
219
  traverse_expr(whereExpr, Object.assign(Object.assign({}, traverseContext), { fromColumns: fromColumns }));
215
220
  if (!traverseContext.subQuery) {
216
- const whereFragmentExprList = getWhereFragmentExpressions(whereExpr);
217
- whereFragmentExprList.forEach(whereCond => {
218
- const expressionList = (0, select_columns_1.getExpressions)(whereCond, sqlite_1.ExprContext);
219
- const paramsIds = expressionList.filter(expr => expr.expr.BIND_PARAMETER() != null).map(expr => expr.expr.BIND_PARAMETER().symbol.start);
220
- const params = getParamsIndexes(traverseContext.parameters, paramsIds);
221
- const columnsRef = (0, select_columns_1.getExpressions)(whereCond, sqlite_1.Column_nameContext);
222
- const cols = columnsRef.filter(expr => !expr.isSubQuery).map(colRef => {
223
- const fieldName = (0, select_columns_1.splitName)(colRef.expr.getText());
224
- const column = (0, select_columns_1.findColumn)(fieldName, fromColumns);
225
- const fields = {
226
- parameters: params,
227
- dependOnRelation: column.tableAlias || column.table
228
- };
229
- return fields;
230
- });
231
- const openPar = whereExpr.OPEN_PAR() != null ? '(' : '';
232
- const closePar = whereExpr.CLOSE_PAR() != null ? ')' : '';
233
- traverseContext.dynamicSqlInfo2.where.push({
234
- fragment: `AND ${openPar}${extractOriginalSql(whereCond)}${closePar}`,
235
- fields: cols
236
- });
221
+ const { relations, params } = extractRelationsAndParams(whereExpr, fromColumns, traverseContext.parameters);
222
+ traverseContext.dynamicSqlInfo2.where.push({
223
+ fragment: `AND ${extractOriginalSql(whereExpr)}`,
224
+ dependOnRelations: [...new Set(relations)], //remove duplicated
225
+ parameters: params
237
226
  });
238
227
  }
239
228
  }
@@ -262,6 +251,21 @@ function traverse_select_core(select_core, traverseContext, subQuery = false, re
262
251
  };
263
252
  return querySpecification;
264
253
  }
254
+ function extractRelationsAndParams(expr, fromColumns, parameters) {
255
+ const columnsRef = (0, select_columns_1.getExpressions)(expr, sqlite_1.Column_nameContext);
256
+ const relations = columnsRef.filter(expr => !expr.isSubQuery).map(colRef => {
257
+ const fieldName = (0, select_columns_1.splitName)(colRef.expr.parentCtx.getText());
258
+ const column = (0, select_columns_1.findColumn)(fieldName, fromColumns);
259
+ return column.tableAlias || column.table;
260
+ });
261
+ const expressionList = (0, select_columns_1.getExpressions)(expr, sqlite_1.ExprContext);
262
+ const paramsIds = expressionList.filter(expr => expr.expr.BIND_PARAMETER() != null).map(expr => expr.expr.BIND_PARAMETER().symbol.start);
263
+ const params = getParamsIndexes(parameters, paramsIds);
264
+ return {
265
+ relations,
266
+ params
267
+ };
268
+ }
265
269
  function traverse_table_or_subquery(table_or_subquery_list, join_constraint_list, join_operator_list, traverseContext) {
266
270
  const allFields = [];
267
271
  table_or_subquery_list.forEach((table_or_subquery, index) => {
@@ -1 +1 @@
1
- {"version":3,"file":"traverse.js","sourceRoot":"","sources":["../../../src/sqlite-query-analyzer/traverse.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"traverse.js","sourceRoot":"","sources":["../../../src/sqlite-query-analyzer/traverse.ts"],"names":[],"mappings":"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"}