typesql-cli 0.9.6 → 0.10.0

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 (110) hide show
  1. package/README.md +2 -3
  2. package/cli.js +87 -78
  3. package/cli.js.map +1 -1
  4. package/code-generator.d.ts +7 -7
  5. package/code-generator.d.ts.map +1 -1
  6. package/code-generator.js +257 -193
  7. package/code-generator.js.map +1 -1
  8. package/describe-dynamic-query.d.ts +1 -1
  9. package/describe-dynamic-query.d.ts.map +1 -1
  10. package/describe-dynamic-query.js +51 -39
  11. package/describe-dynamic-query.js.map +1 -1
  12. package/describe-nested-query.d.ts +2 -2
  13. package/describe-nested-query.d.ts.map +1 -1
  14. package/describe-nested-query.js +43 -24
  15. package/describe-nested-query.js.map +1 -1
  16. package/describe-query.d.ts +4 -4
  17. package/describe-query.d.ts.map +1 -1
  18. package/describe-query.js +29 -21
  19. package/describe-query.js.map +1 -1
  20. package/drivers/libsql.d.ts +2 -2
  21. package/drivers/libsql.d.ts.map +1 -1
  22. package/drivers/libsql.js +3 -3
  23. package/drivers/libsql.js.map +1 -1
  24. package/mysql-mapping.d.ts +1 -1
  25. package/mysql-mapping.d.ts.map +1 -1
  26. package/mysql-mapping.js +9 -9
  27. package/mysql-mapping.js.map +1 -1
  28. package/mysql-query-analyzer/collect-constraints.d.ts +4 -4
  29. package/mysql-query-analyzer/collect-constraints.d.ts.map +1 -1
  30. package/mysql-query-analyzer/collect-constraints.js +21 -16
  31. package/mysql-query-analyzer/collect-constraints.js.map +1 -1
  32. package/mysql-query-analyzer/infer-column-nullability.d.ts +2 -2
  33. package/mysql-query-analyzer/infer-column-nullability.d.ts.map +1 -1
  34. package/mysql-query-analyzer/infer-column-nullability.js +81 -67
  35. package/mysql-query-analyzer/infer-column-nullability.js.map +1 -1
  36. package/mysql-query-analyzer/infer-param-nullability.d.ts +2 -2
  37. package/mysql-query-analyzer/infer-param-nullability.d.ts.map +1 -1
  38. package/mysql-query-analyzer/infer-param-nullability.js +11 -10
  39. package/mysql-query-analyzer/infer-param-nullability.js.map +1 -1
  40. package/mysql-query-analyzer/parse.d.ts +2 -2
  41. package/mysql-query-analyzer/parse.d.ts.map +1 -1
  42. package/mysql-query-analyzer/parse.js +39 -32
  43. package/mysql-query-analyzer/parse.js.map +1 -1
  44. package/mysql-query-analyzer/select-columns.d.ts +4 -4
  45. package/mysql-query-analyzer/select-columns.d.ts.map +1 -1
  46. package/mysql-query-analyzer/select-columns.js +76 -53
  47. package/mysql-query-analyzer/select-columns.js.map +1 -1
  48. package/mysql-query-analyzer/traverse.d.ts +4 -4
  49. package/mysql-query-analyzer/traverse.d.ts.map +1 -1
  50. package/mysql-query-analyzer/traverse.js +312 -206
  51. package/mysql-query-analyzer/traverse.js.map +1 -1
  52. package/mysql-query-analyzer/types.d.ts +5 -5
  53. package/mysql-query-analyzer/types.d.ts.map +1 -1
  54. package/mysql-query-analyzer/unify.d.ts +2 -2
  55. package/mysql-query-analyzer/unify.d.ts.map +1 -1
  56. package/mysql-query-analyzer/unify.js +533 -491
  57. package/mysql-query-analyzer/unify.js.map +1 -1
  58. package/mysql-query-analyzer/util.d.ts.map +1 -1
  59. package/mysql-query-analyzer/util.js +2 -3
  60. package/mysql-query-analyzer/util.js.map +1 -1
  61. package/mysql-query-analyzer/verify-multiple-result.d.ts +2 -2
  62. package/mysql-query-analyzer/verify-multiple-result.d.ts.map +1 -1
  63. package/mysql-query-analyzer/verify-multiple-result.js +12 -8
  64. package/mysql-query-analyzer/verify-multiple-result.js.map +1 -1
  65. package/package.json +46 -45
  66. package/queryExectutor.d.ts +4 -4
  67. package/queryExectutor.d.ts.map +1 -1
  68. package/queryExectutor.js +11 -13
  69. package/queryExectutor.js.map +1 -1
  70. package/sql-generator.d.ts +2 -2
  71. package/sql-generator.d.ts.map +1 -1
  72. package/sql-generator.js +29 -25
  73. package/sql-generator.js.map +1 -1
  74. package/sqlite-query-analyzer/code-generator.d.ts +5 -5
  75. package/sqlite-query-analyzer/code-generator.d.ts.map +1 -1
  76. package/sqlite-query-analyzer/code-generator.js +372 -221
  77. package/sqlite-query-analyzer/code-generator.js.map +1 -1
  78. package/sqlite-query-analyzer/parser.d.ts +4 -4
  79. package/sqlite-query-analyzer/parser.d.ts.map +1 -1
  80. package/sqlite-query-analyzer/parser.js +30 -17
  81. package/sqlite-query-analyzer/parser.js.map +1 -1
  82. package/sqlite-query-analyzer/query-executor.d.ts +5 -5
  83. package/sqlite-query-analyzer/query-executor.d.ts.map +1 -1
  84. package/sqlite-query-analyzer/query-executor.js +39 -25
  85. package/sqlite-query-analyzer/query-executor.js.map +1 -1
  86. package/sqlite-query-analyzer/replace-list-params.d.ts +1 -1
  87. package/sqlite-query-analyzer/replace-list-params.d.ts.map +1 -1
  88. package/sqlite-query-analyzer/replace-list-params.js +4 -3
  89. package/sqlite-query-analyzer/replace-list-params.js.map +1 -1
  90. package/sqlite-query-analyzer/sqlite-describe-nested-query.d.ts +4 -4
  91. package/sqlite-query-analyzer/sqlite-describe-nested-query.d.ts.map +1 -1
  92. package/sqlite-query-analyzer/sqlite-describe-nested-query.js +33 -18
  93. package/sqlite-query-analyzer/sqlite-describe-nested-query.js.map +1 -1
  94. package/sqlite-query-analyzer/traverse.d.ts +5 -5
  95. package/sqlite-query-analyzer/traverse.d.ts.map +1 -1
  96. package/sqlite-query-analyzer/traverse.js +249 -160
  97. package/sqlite-query-analyzer/traverse.js.map +1 -1
  98. package/ts-dynamic-query-descriptor.d.ts +1 -1
  99. package/ts-dynamic-query-descriptor.d.ts.map +1 -1
  100. package/ts-dynamic-query-descriptor.js +4 -4
  101. package/ts-dynamic-query-descriptor.js.map +1 -1
  102. package/ts-nested-descriptor.d.ts +4 -4
  103. package/ts-nested-descriptor.d.ts.map +1 -1
  104. package/ts-nested-descriptor.js +11 -11
  105. package/ts-nested-descriptor.js.map +1 -1
  106. package/types.d.ts +13 -14
  107. package/types.d.ts.map +1 -1
  108. package/util.d.ts.map +1 -1
  109. package/util.js.map +1 -1
  110. package/utility-types.d.ts.map +1 -1
@@ -1 +1 @@
1
- {"version":3,"file":"code-generator.js","sourceRoot":"","sources":["../../src/code-generator.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"code-generator.js","sourceRoot":"","sources":["../../src/code-generator.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,4 @@
1
- import { DynamicSqlInfo, DynamicSqlInfo2, DynamicSqlInfoResult, DynamicSqlInfoResult2 } from "./mysql-query-analyzer/types";
1
+ import type { DynamicSqlInfo, DynamicSqlInfo2, DynamicSqlInfoResult, DynamicSqlInfoResult2 } from './mysql-query-analyzer/types';
2
2
  export declare function describeDynamicQuery(dynamicQueryInfo: DynamicSqlInfo, namedParameters: string[], orderBy: string[]): DynamicSqlInfoResult;
3
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,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,CAkBnJ"}
1
+ {"version":3,"file":"describe-dynamic-query.d.ts","sourceRoot":"","sources":["../../src/describe-dynamic-query.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EACX,cAAc,EACd,eAAe,EACf,oBAAoB,EACpB,qBAAqB,EAWrB,MAAM,8BAA8B,CAAC;AAEtC,wBAAgB,oBAAoB,CACnC,gBAAgB,EAAE,cAAc,EAChC,eAAe,EAAE,MAAM,EAAE,EACzB,OAAO,EAAE,MAAM,EAAE,GACf,oBAAoB,CA0DtB;AAmGD,wBAAgB,qBAAqB,CACpC,gBAAgB,EAAE,eAAe,EACjC,eAAe,EAAE,MAAM,EAAE,EACzB,cAAc,EAAE,MAAM,EAAE,GACtB,qBAAqB,CA+BvB"}
@@ -14,10 +14,10 @@ function describeDynamicQuery(dynamicQueryInfo, namedParameters, orderBy) {
14
14
  };
15
15
  return fragmentResult;
16
16
  });
17
- const withFragements = withFragments === null || withFragments === void 0 ? void 0 : withFragments.map(fragment => transformFrom(fragment, withFragments, select, from, where, namedParameters, orderBy));
18
- const fromFragements = from.map(fragment => transformFrom(fragment, undefined, select, from, where, namedParameters, orderBy));
19
- const whereFragements = where.map(fragment => {
20
- const params = fragment.dependOnParams.map(paramIndex => namedParameters[paramIndex]);
17
+ const withFragements = withFragments === null || withFragments === void 0 ? void 0 : withFragments.map((fragment) => transformFrom(fragment, withFragments, select, from, where, namedParameters, orderBy));
18
+ const fromFragements = from.map((fragment) => transformFrom(fragment, undefined, select, from, where, namedParameters, orderBy));
19
+ const whereFragements = where.map((fragment) => {
20
+ const params = fragment.dependOnParams.map((paramIndex) => namedParameters[paramIndex]);
21
21
  const fragmentResult = {
22
22
  fragment: fragment.fragment,
23
23
  dependOnFields: [],
@@ -41,38 +41,40 @@ function transformFrom(fragment, withFragments, select, from, where, namedParame
41
41
  if (fragment.relation) {
42
42
  addAllChildFields(fragment, from, withFragments);
43
43
  }
44
- const filteredWhere = where.filter(whereFragment => includeAny(whereFragment.fields, fragment.fields));
45
- const hasUnconditional = filteredWhere
46
- .some(fragment => fragment.dependOnParams.length == 0);
44
+ const filteredWhere = where.filter((whereFragment) => includeAny(whereFragment.fields, fragment.fields));
45
+ const hasUnconditional = filteredWhere.some((fragment) => fragment.dependOnParams.length === 0);
47
46
  if (hasUnconditional) {
48
47
  return {
49
48
  fragment: fragment.fragment,
50
49
  dependOnFields: [],
51
50
  dependOnParams: [],
52
- parameters: fragment.parameters.map(paramIndex => namedParameters[paramIndex])
51
+ parameters: fragment.parameters.map((paramIndex) => namedParameters[paramIndex])
53
52
  };
54
53
  }
55
54
  const fieldIndex = select.flatMap((selectField, index) => {
56
- const found = selectField.dependOn.find(dependsOn => fragment.dependOn.includes(dependsOn));
55
+ const found = selectField.dependOn.find((dependsOn) => fragment.dependOn.includes(dependsOn));
57
56
  if (found) {
58
57
  return index;
59
58
  }
60
59
  return [];
61
60
  });
62
- const orderBy = orderByColumns.flatMap(orderBy => {
61
+ const orderBy = orderByColumns.flatMap((orderBy) => {
63
62
  const orderByField = (0, select_columns_1.splitName)(orderBy);
64
- const found = fragment.fields.find(field => field.name == orderByField.name && (field.table == orderByField.prefix || orderByField.prefix == ''));
63
+ const found = fragment.fields.find((field) => field.name === orderByField.name &&
64
+ (field.table === orderByField.prefix || orderByField.prefix === ''));
65
65
  if (found) {
66
66
  return orderBy;
67
67
  }
68
68
  return [];
69
69
  });
70
- const params = filteredWhere.flatMap(fragment => fragment.dependOnParams).map(paramIndex => namedParameters[paramIndex]);
70
+ const params = filteredWhere
71
+ .flatMap((fragment) => fragment.dependOnParams)
72
+ .map((paramIndex) => namedParameters[paramIndex]);
71
73
  const fragmentResult = {
72
74
  fragment: fragment.fragment,
73
75
  dependOnFields: fieldIndex,
74
76
  dependOnParams: [...new Set(params)],
75
- parameters: fragment.parameters.map(paramIndex => namedParameters[paramIndex])
77
+ parameters: fragment.parameters.map((paramIndex) => namedParameters[paramIndex])
76
78
  };
77
79
  if (orderBy.length > 0) {
78
80
  fragmentResult.dependOnOrderBy = orderBy;
@@ -80,19 +82,19 @@ function transformFrom(fragment, withFragments, select, from, where, namedParame
80
82
  return fragmentResult;
81
83
  }
82
84
  function includeAny(fields, fields2) {
83
- return fields.some(f => fields2.find(f2 => f2.field == f.field && f2.table == f.table));
85
+ return fields.some((f) => fields2.find((f2) => f2.field === f.field && f2.table === f.table));
84
86
  }
85
87
  function addAllChildFields(currentRelation, select, withFragments) {
86
- currentRelation.dependOn.push(currentRelation.relation + '');
87
- select.forEach(fragment => {
88
- if (fragment.parentRelation == currentRelation.relation) {
88
+ currentRelation.dependOn.push(`${currentRelation.relation}`);
89
+ select.forEach((fragment) => {
90
+ if (fragment.parentRelation === currentRelation.relation) {
89
91
  currentRelation.fields.push(...fragment.fields);
90
- currentRelation.dependOn.push(fragment.relation + '');
92
+ currentRelation.dependOn.push(`${fragment.relation}`);
91
93
  }
92
- withFragments === null || withFragments === void 0 ? void 0 : withFragments.forEach(withFragment => {
93
- if (withFragment.parentRelation == fragment.relation) {
94
+ withFragments === null || withFragments === void 0 ? void 0 : withFragments.forEach((withFragment) => {
95
+ if (withFragment.parentRelation === fragment.relation) {
94
96
  withFragment.fields.push(...fragment.fields);
95
- withFragment.dependOn.push(fragment.relation + '');
97
+ withFragment.dependOn.push(`${fragment.relation}`);
96
98
  }
97
99
  });
98
100
  });
@@ -109,35 +111,42 @@ function describeDynamicQuery2(dynamicQueryInfo, namedParameters, orderByColumns
109
111
  if (limitOffset) {
110
112
  result.limitOffset = {
111
113
  fragment: limitOffset.fragment,
112
- parameters: limitOffset.parameters.map(paramIndex => namedParameters[paramIndex])
114
+ parameters: limitOffset.parameters.map((paramIndex) => namedParameters[paramIndex])
113
115
  };
114
116
  }
115
117
  return result;
116
118
  }
117
119
  exports.describeDynamicQuery2 = describeDynamicQuery2;
118
120
  function transformSelectFragments(selectFragments, namedParameters) {
119
- return selectFragments.map(select => ({ fragment: select.fragment, fragmentWitoutAlias: select.fragmentWitoutAlias, parameters: select.parameters.map(paramIndex => namedParameters[paramIndex]) }));
121
+ return selectFragments.map((select) => ({
122
+ fragment: select.fragment,
123
+ fragmentWitoutAlias: select.fragmentWitoutAlias,
124
+ parameters: select.parameters.map((paramIndex) => namedParameters[paramIndex])
125
+ }));
120
126
  }
121
127
  function transformWithFragmnts(withFragments, fromFragments, namedParameters) {
122
- return withFragments.map(withFragment => {
123
- const fromDependOn = fromFragments.filter(from => from.relationName == withFragment.relationName);
124
- const dependOnFields = fromDependOn.flatMap(from => from.dependOnFields);
125
- const dependOnOrderBy = fromDependOn.flatMap(from => from.dependOnOrderBy);
128
+ return withFragments.map((withFragment) => {
129
+ const fromDependOn = fromFragments.filter((from) => from.relationName === withFragment.relationName);
130
+ const dependOnFields = fromDependOn.flatMap((from) => from.dependOnFields);
131
+ const dependOnOrderBy = fromDependOn.flatMap((from) => from.dependOnOrderBy);
126
132
  const fromFragmentResult = {
127
133
  fragment: withFragment.fragment,
128
134
  relationName: withFragment.relationName,
129
135
  dependOnFields,
130
136
  dependOnOrderBy,
131
- parameters: withFragment.parameters.map(paramIndex => namedParameters[paramIndex])
137
+ parameters: withFragment.parameters.map((paramIndex) => namedParameters[paramIndex])
132
138
  };
133
139
  return fromFragmentResult;
134
140
  });
135
141
  }
136
142
  function transformFromFragments(fromFragments, selectFragments, namedParameters, orderByColumns) {
137
- const fromResult = fromFragments.map(from => {
138
- const orderBy = orderByColumns.flatMap(orderBy => {
143
+ const fromResult = fromFragments.map((from) => {
144
+ const orderBy = orderByColumns.flatMap((orderBy) => {
139
145
  const orderByField = (0, select_columns_1.splitName)(orderBy);
140
- const found = from.fields.find(field => field == orderByField.name && (from.relationAlias == orderByField.prefix || from.relationName == orderByField.prefix || orderByField.prefix == ''));
146
+ const found = from.fields.find((field) => field === orderByField.name &&
147
+ (from.relationAlias === orderByField.prefix ||
148
+ from.relationName === orderByField.prefix ||
149
+ orderByField.prefix === ''));
141
150
  if (found) {
142
151
  return orderBy;
143
152
  }
@@ -151,14 +160,16 @@ function transformFromFragments(fromFragments, selectFragments, namedParameters,
151
160
  parentRelation: from.parentRelation,
152
161
  dependOnFields: getDependOnFields({ relationName, relationAlias, parentRelation }, selectFragments),
153
162
  dependOnOrderBy: orderBy,
154
- parameters: from.parameters.map(paramIndex => namedParameters[paramIndex])
163
+ parameters: from.parameters.map((paramIndex) => namedParameters[paramIndex])
155
164
  };
156
165
  return fromFragmentResult;
157
166
  });
158
- const withChildren = fromResult.map(parentFrom => {
159
- const actualAndChildRelations = fromResult.filter(childFrom => (childFrom.parentRelation == parentFrom.relationAlias && parentFrom.parentRelation != '') || childFrom.relationName == parentFrom.relationName);
160
- const dependOnFields = actualAndChildRelations.flatMap(from => from.dependOnFields);
161
- const dependOnOrderBy = actualAndChildRelations.flatMap(from => from.dependOnOrderBy);
167
+ const withChildren = fromResult.map((parentFrom) => {
168
+ const actualAndChildRelations = fromResult.filter((childFrom) => (childFrom.parentRelation === parentFrom.relationAlias &&
169
+ parentFrom.parentRelation !== '') ||
170
+ childFrom.relationName === parentFrom.relationName);
171
+ const dependOnFields = actualAndChildRelations.flatMap((from) => from.dependOnFields);
172
+ const dependOnOrderBy = actualAndChildRelations.flatMap((from) => from.dependOnOrderBy);
162
173
  const result = {
163
174
  fragment: parentFrom.fragment,
164
175
  relationName: parentFrom.relationName,
@@ -171,8 +182,8 @@ function transformFromFragments(fromFragments, selectFragments, namedParameters,
171
182
  return withChildren;
172
183
  }
173
184
  function transformWhereFragments(whereFragements, namedParameters) {
174
- return whereFragements.map(where => {
175
- const parameters = where.parameters.map(param => namedParameters[param]);
185
+ return whereFragements.map((where) => {
186
+ const parameters = where.parameters.map((param) => namedParameters[param]);
176
187
  const whereFragmentResult = {
177
188
  fragment: where.fragment,
178
189
  parameters
@@ -181,7 +192,8 @@ function transformWhereFragments(whereFragements, namedParameters) {
181
192
  });
182
193
  }
183
194
  function getDependOnFields(relationInfo, selectFragments) {
184
- if (relationInfo.parentRelation == '') { //from
195
+ if (relationInfo.parentRelation === '') {
196
+ //from
185
197
  return [];
186
198
  }
187
199
  const dependOnFields = selectFragments.flatMap((select, index) => {
@@ -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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"}
@@ -1,5 +1,5 @@
1
- import { QueryContext } from '@wsporto/ts-mysql-parser';
2
- import { ColumnInfo, ColumnSchema } from "./mysql-query-analyzer/types";
1
+ import { type QueryContext } from '@wsporto/ts-mysql-parser';
2
+ import type { ColumnInfo, ColumnSchema } from './mysql-query-analyzer/types';
3
3
  export type NestedResultInfo = {
4
4
  relations: RelationInfo[];
5
5
  };
@@ -1 +1 @@
1
- {"version":3,"file":"describe-nested-query.d.ts","sourceRoot":"","sources":["../../src/describe-nested-query.ts"],"names":[],"mappings":"AAAA,OAAO,EAAmC,YAAY,EAAyE,MAAM,0BAA0B,CAAC;AAGhK,OAAO,EAAE,UAAU,EAAE,YAAY,EAAE,MAAM,8BAA8B,CAAC;AAGxE,MAAM,MAAM,gBAAgB,GAAG;IAC3B,SAAS,EAAE,YAAY,EAAE,CAAC;CAC7B,CAAA;AAED,MAAM,MAAM,YAAY,GAAG;IACvB,IAAI,EAAE,MAAM,CAAC;IACb,aAAa,EAAE,MAAM,CAAC;IACtB,OAAO,EAAE,WAAW,EAAE,CAAC;CAC1B,CAAA;AAED,MAAM,MAAM,WAAW,GAAG,KAAK,GAAG,MAAM,GAAG,EAAE,CAAC;AAE9C,MAAM,MAAM,WAAW,GAAG,KAAK,GAAG,aAAa,CAAC;AAEhD,MAAM,MAAM,KAAK,GAAG;IAChB,IAAI,EAAE,OAAO,CAAC;IACd,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,MAAM,CAAC;CACjB,CAAA;AAED,MAAM,MAAM,aAAa,GAAG;IACxB,IAAI,EAAE,UAAU,CAAC;IACjB,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,WAAW,CAAC;IACzB,OAAO,EAAE,OAAO,CAAC;CACpB,CAAA;AAED,MAAM,MAAM,SAAS,GAAG;IACpB,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,MAAM,GAAG,EAAE,CAAC;IACnB,QAAQ,EAAE,OAAO,CAAC;IAClB,eAAe,EAAE,OAAO,CAAC;CAC5B,CAAA;AAGD,wBAAgB,mBAAmB,CAAC,GAAG,EAAE,MAAM,EAAE,QAAQ,EAAE,YAAY,EAAE,GAAG,gBAAgB,CAM3F;AAED,wBAAgB,kBAAkB,CAAC,YAAY,EAAE,YAAY,EAAE,QAAQ,EAAE,YAAY,EAAE,EAAE,OAAO,EAAE,UAAU,EAAE,GAAG,gBAAgB,CA4BhI"}
1
+ {"version":3,"file":"describe-nested-query.d.ts","sourceRoot":"","sources":["../../src/describe-nested-query.ts"],"names":[],"mappings":"AAAA,OAAO,EAGN,KAAK,YAAY,EAIjB,MAAM,0BAA0B,CAAC;AAOlC,OAAO,KAAK,EAAE,UAAU,EAAE,YAAY,EAAE,MAAM,8BAA8B,CAAC;AAG7E,MAAM,MAAM,gBAAgB,GAAG;IAC9B,SAAS,EAAE,YAAY,EAAE,CAAC;CAC1B,CAAC;AAEF,MAAM,MAAM,YAAY,GAAG;IAC1B,IAAI,EAAE,MAAM,CAAC;IACb,aAAa,EAAE,MAAM,CAAC;IACtB,OAAO,EAAE,WAAW,EAAE,CAAC;CACvB,CAAC;AAEF,MAAM,MAAM,WAAW,GAAG,KAAK,GAAG,MAAM,GAAG,EAAE,CAAC;AAE9C,MAAM,MAAM,WAAW,GAAG,KAAK,GAAG,aAAa,CAAC;AAEhD,MAAM,MAAM,KAAK,GAAG;IACnB,IAAI,EAAE,OAAO,CAAC;IACd,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,MAAM,CAAC;CACd,CAAC;AAEF,MAAM,MAAM,aAAa,GAAG;IAC3B,IAAI,EAAE,UAAU,CAAC;IACjB,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,WAAW,CAAC;IACzB,OAAO,EAAE,OAAO,CAAC;CACjB,CAAC;AAEF,MAAM,MAAM,SAAS,GAAG;IACvB,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,MAAM,GAAG,EAAE,CAAC;IACnB,QAAQ,EAAE,OAAO,CAAC;IAClB,eAAe,EAAE,OAAO,CAAC;CACzB,CAAC;AAGF,wBAAgB,mBAAmB,CAClC,GAAG,EAAE,MAAM,EACX,QAAQ,EAAE,YAAY,EAAE,GACtB,gBAAgB,CAMlB;AAED,wBAAgB,kBAAkB,CACjC,YAAY,EAAE,YAAY,EAC1B,QAAQ,EAAE,YAAY,EAAE,EACxB,OAAO,EAAE,UAAU,EAAE,GACnB,gBAAgB,CA0BlB"}
@@ -10,7 +10,7 @@ function describeNestedQuery(sql, dbSchema) {
10
10
  const { sql: processedSql } = (0, describe_query_1.preprocessSql)(sql);
11
11
  const queryContext = (0, parse_1.parse)(processedSql);
12
12
  const queryInfo = (0, parse_1.extractQueryInfo)(sql, dbSchema);
13
- const columns = queryInfo.kind == 'Select' ? queryInfo.columns : [];
13
+ const columns = queryInfo.kind === 'Select' ? queryInfo.columns : [];
14
14
  return generateNestedInfo(queryContext, dbSchema, columns);
15
15
  }
16
16
  exports.describeNestedQuery = describeNestedQuery;
@@ -27,7 +27,7 @@ function generateNestedInfo(queryContext, dbSchema, columns) {
27
27
  const fromClause = querySpec.fromClause();
28
28
  if (fromClause) {
29
29
  const tableReferences = ((_b = fromClause.tableReferenceList()) === null || _b === void 0 ? void 0 : _b.tableReference_list()) || [];
30
- const modelColumns = tableReferences.map(tableRef => {
30
+ const modelColumns = tableReferences.map((tableRef) => {
31
31
  const nestedResultInfo = {
32
32
  relations: getResult(tableRef, dbSchema, columns)
33
33
  };
@@ -50,46 +50,55 @@ function getRelations(tableRef, dbSchema, columns) {
50
50
  const relations = [];
51
51
  const tableFactor = tableRef.tableFactor();
52
52
  const parentList = [];
53
- if (tableFactor != null) { //root
53
+ if (tableFactor != null) {
54
+ //root
54
55
  const tableName = getTableInfoFromTableFactor(tableFactor);
55
56
  parentList.push(tableName);
56
57
  }
57
58
  const joinedTableList = tableRef.joinedTable_list();
58
- joinedTableList.forEach(joined => {
59
+ for (const joined of joinedTableList) {
59
60
  const onClause = joined.expr();
60
61
  const tableName = getTableInfoFromTableJoinedTable(joined);
61
- const parentRelations = onClause ? getParentRelations(onClause, tableName, parentList) : [];
62
- const cardinality = onClause ? verifyCardinality(onClause, dbSchema, tableName.name) : '';
62
+ const parentRelations = onClause
63
+ ? getParentRelations(onClause, tableName, parentList)
64
+ : [];
65
+ const cardinality = onClause
66
+ ? verifyCardinality(onClause, dbSchema, tableName.name)
67
+ : '';
63
68
  parentList.push(tableName);
64
- parentRelations.forEach(parent => {
69
+ for (const parent of parentRelations) {
65
70
  relations.push({
66
71
  parent: parent,
67
72
  child: tableName,
68
73
  cardinality,
69
74
  isJunctionTable: false, //will be set later
70
- junctionChildTable: '',
75
+ junctionChildTable: ''
71
76
  });
72
- });
73
- });
77
+ }
78
+ }
74
79
  for (let index = 0; index < relations.length; index++) {
75
80
  const relation = relations[index];
76
81
  const [isJunction, childRelationName] = isJunctionTable(relation, relations);
77
82
  if (isJunction) {
78
83
  relation.isJunctionTable = true;
79
84
  relation.junctionChildTable = childRelationName;
80
- const relationItem = parentList.find(r => r.name == relation.child.name);
85
+ const relationItem = parentList.find((r) => r.name === relation.child.name);
81
86
  relationItem.isJunctionTable = true;
82
87
  }
83
88
  }
84
89
  const result = parentList
85
90
  .map((r, index) => ({ r, index })) //keep index
86
- .filter(({ r }) => r.isJunctionTable == false)
91
+ .filter(({ r }) => r.isJunctionTable === false)
87
92
  .map(({ r, index }) => {
88
- const relationFields = relations.filter(r2 => r2.parent.name == r.name || (r.alias != '' && r2.parent.alias == r.alias))
93
+ const relationFields = relations
94
+ .filter((r2) => r2.parent.name === r.name ||
95
+ (r.alias !== '' && r2.parent.alias === r.alias))
89
96
  .map((relation) => {
90
97
  //relation many always have not null array (possible empty)
91
- const nullable = relation.cardinality == 'one' &&
92
- columns.some(c => (c.table == relation.child.name || c.table == relation.child.alias) && c.notNull == false);
98
+ const nullable = relation.cardinality === 'one' &&
99
+ columns.some((c) => (c.table === relation.child.name ||
100
+ c.table === relation.child.alias) &&
101
+ c.notNull === false);
93
102
  const field = {
94
103
  type: 'relation',
95
104
  name: getRelationName(relation),
@@ -99,10 +108,16 @@ function getRelations(tableRef, dbSchema, columns) {
99
108
  return field;
100
109
  });
101
110
  const previousRelation = parentList[index - 1];
102
- const junctionRelation = previousRelation && previousRelation.isJunctionTable ? previousRelation : undefined;
111
+ const junctionRelation = (previousRelation === null || previousRelation === void 0 ? void 0 : previousRelation.isJunctionTable)
112
+ ? previousRelation
113
+ : undefined;
103
114
  const fields = columns
104
115
  .map((col, index) => ({ col, index })) //keep index
105
- .filter(({ col }) => col.table == r.name || col.table == r.alias || (junctionRelation != null && (col.table == (junctionRelation === null || junctionRelation === void 0 ? void 0 : junctionRelation.name) || col.table == (junctionRelation === null || junctionRelation === void 0 ? void 0 : junctionRelation.alias))))
116
+ .filter(({ col }) => col.table === r.name ||
117
+ col.table === r.alias ||
118
+ (junctionRelation != null &&
119
+ (col.table === (junctionRelation === null || junctionRelation === void 0 ? void 0 : junctionRelation.name) ||
120
+ col.table === (junctionRelation === null || junctionRelation === void 0 ? void 0 : junctionRelation.alias))))
106
121
  .map(({ col, index }) => {
107
122
  const f = {
108
123
  type: 'field',
@@ -115,7 +130,7 @@ function getRelations(tableRef, dbSchema, columns) {
115
130
  name: r.asSymbol ? r.alias : r.name,
116
131
  // tableName: r.name,
117
132
  // tableAlias: r.alias,
118
- groupKeyIndex: columns.findIndex(col => col.table == r.name || col.table == r.alias),
133
+ groupKeyIndex: columns.findIndex((col) => col.table === r.name || col.table === r.alias),
119
134
  columns: fields.concat(relationFields)
120
135
  };
121
136
  return relationInfo;
@@ -137,8 +152,9 @@ function getParentRelations(onExpr, currentRelation, parentList) {
137
152
  for (const token of tokens) {
138
153
  if (token instanceof ts_mysql_parser_1.SimpleExprColumnRefContext) {
139
154
  const fieldName = (0, select_columns_1.splitName)(token.getText());
140
- if (fieldName.prefix != currentRelation.alias && fieldName.prefix != currentRelation.name) {
141
- const ref = parentList.find(p => p.name == fieldName.prefix || p.alias == fieldName.prefix);
155
+ if (fieldName.prefix !== currentRelation.alias &&
156
+ fieldName.prefix !== currentRelation.name) {
157
+ const ref = parentList.find((p) => p.name === fieldName.prefix || p.alias === fieldName.prefix);
142
158
  result.push(ref);
143
159
  }
144
160
  }
@@ -176,10 +192,11 @@ function getTableInfoFromTableFactor(tableFactor) {
176
192
  throw Error('createModelFromTableFactor');
177
193
  }
178
194
  function isJunctionTable(relation, relations) {
179
- const parentRelation = relations.find(r => r.child == relation.parent);
180
- const childRelation = relations.find(r => r.parent == relation.child);
195
+ const parentRelation = relations.find((r) => r.child === relation.parent);
196
+ const childRelation = relations.find((r) => r.parent === relation.child);
181
197
  const childRelationCardinality = childRelation === null || childRelation === void 0 ? void 0 : childRelation.cardinality;
182
- const isJunctionTable = (parentRelation == null || parentRelation.cardinality == 'one') && childRelationCardinality == 'one';
198
+ const isJunctionTable = (parentRelation == null || parentRelation.cardinality === 'one') &&
199
+ childRelationCardinality === 'one';
183
200
  return [isJunctionTable, childRelation === null || childRelation === void 0 ? void 0 : childRelation.child.name];
184
201
  }
185
202
  function verifyCardinality(expr, dbSchema, tableName) {
@@ -188,7 +205,9 @@ function verifyCardinality(expr, dbSchema, tableName) {
188
205
  if (token instanceof ts_mysql_parser_1.SimpleExprColumnRefContext) {
189
206
  const fieldName = (0, select_columns_1.splitName)(token.getText());
190
207
  const column = (0, select_columns_1.findColumnSchema)(tableName, fieldName.name, dbSchema);
191
- if (column != null && column.columnKey != 'PRI' && column.columnKey != 'UNI') {
208
+ if (column != null &&
209
+ column.columnKey !== 'PRI' &&
210
+ column.columnKey !== 'UNI') {
192
211
  return 'many';
193
212
  }
194
213
  }