taon-type-sql 18.0.26 → 19.0.1

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 (151) hide show
  1. package/assets/shared/shared_folder_info.txt +3 -3
  2. package/browser/README.md +24 -24
  3. package/client/README.md +24 -24
  4. package/index.js.map +1 -1
  5. package/lib/build-info._auto-generated_.d.ts +1 -0
  6. package/lib/build-info._auto-generated_.js +4 -1
  7. package/lib/build-info._auto-generated_.js.map +1 -1
  8. package/lib/builder/column/basic-column.js.map +1 -1
  9. package/lib/builder/column/boolean-column.js.map +1 -1
  10. package/lib/builder/column/comparable-column.js.map +1 -1
  11. package/lib/builder/column/date-column.js.map +1 -1
  12. package/lib/builder/column/number-column.js.map +1 -1
  13. package/lib/builder/column/query-column.js.map +1 -1
  14. package/lib/builder/column/string-column.js.map +1 -1
  15. package/lib/builder/column/value-column.js.map +1 -1
  16. package/lib/builder/condition/query-column-condition.js.map +1 -1
  17. package/lib/builder/condition/query-condition-chain.js.map +1 -1
  18. package/lib/builder/condition/query-condition.js.map +1 -1
  19. package/lib/builder/condition/query-join-condition.js.map +1 -1
  20. package/lib/builder/helpers/generics-helper.js.map +1 -1
  21. package/lib/builder/helpers/internal-types.js.map +1 -1
  22. package/lib/builder/join/joined-tables-chain.js.map +1 -1
  23. package/lib/builder/join/joined-tables.js.map +1 -1
  24. package/lib/builder/other/query-ordering.js.map +1 -1
  25. package/lib/builder/query/select-query.js.map +1 -1
  26. package/lib/builder/query/table-condition-query.js.map +1 -1
  27. package/lib/builder/query/table-query.js.map +1 -1
  28. package/lib/builder/query-source.js.map +1 -1
  29. package/lib/builder/query-table.js.map +1 -1
  30. package/lib/client/mysql.js.map +1 -1
  31. package/lib/client/pg.js.map +1 -1
  32. package/lib/client/query-processor.js.map +1 -1
  33. package/lib/converter/param-converter.js.map +1 -1
  34. package/lib/converter/parameterized-converter.js.map +1 -1
  35. package/lib/converter/query-converter.js.map +1 -1
  36. package/lib/converter/result-converter.js.map +1 -1
  37. package/lib/converter/sql-converter.js.map +1 -1
  38. package/lib/converter/type-converter.js.map +1 -1
  39. package/lib/converter/types.js.map +1 -1
  40. package/lib/index._auto-generated_.js +2 -2
  41. package/lib/index._auto-generated_.js.map +1 -1
  42. package/lib/index.js.map +1 -1
  43. package/migrations/index.js.map +1 -1
  44. package/migrations/migrations_index._auto-generated_.js.map +1 -1
  45. package/package.json +2 -2
  46. package/src.d.ts +3 -3
  47. package/taon.jsonc +12 -12
  48. package/tmp-environment.json +4 -3
  49. package/websql/README.md +24 -24
  50. package/browser/esm2022/lib/builder/column/basic-column.mjs +0 -13
  51. package/browser/esm2022/lib/builder/column/boolean-column.mjs +0 -14
  52. package/browser/esm2022/lib/builder/column/comparable-column.mjs +0 -41
  53. package/browser/esm2022/lib/builder/column/date-column.mjs +0 -14
  54. package/browser/esm2022/lib/builder/column/number-column.mjs +0 -19
  55. package/browser/esm2022/lib/builder/column/query-column.mjs +0 -21
  56. package/browser/esm2022/lib/builder/column/string-column.mjs +0 -36
  57. package/browser/esm2022/lib/builder/column/value-column.mjs +0 -30
  58. package/browser/esm2022/lib/builder/condition/query-column-condition.mjs +0 -19
  59. package/browser/esm2022/lib/builder/condition/query-condition-chain.mjs +0 -28
  60. package/browser/esm2022/lib/builder/condition/query-condition.mjs +0 -6
  61. package/browser/esm2022/lib/builder/condition/query-join-condition.mjs +0 -19
  62. package/browser/esm2022/lib/builder/helpers/generics-helper.mjs +0 -5
  63. package/browser/esm2022/lib/builder/helpers/internal-types.mjs +0 -4
  64. package/browser/esm2022/lib/builder/join/joined-tables-chain.mjs +0 -14
  65. package/browser/esm2022/lib/builder/join/joined-tables.mjs +0 -22
  66. package/browser/esm2022/lib/builder/other/query-ordering.mjs +0 -17
  67. package/browser/esm2022/lib/builder/query/select-query.mjs +0 -48
  68. package/browser/esm2022/lib/builder/query/table-condition-query.mjs +0 -25
  69. package/browser/esm2022/lib/builder/query/table-query.mjs +0 -54
  70. package/browser/esm2022/lib/builder/query-source.mjs +0 -20
  71. package/browser/esm2022/lib/builder/query-table.mjs +0 -24
  72. package/browser/esm2022/lib/client/mysql.mjs +0 -10
  73. package/browser/esm2022/lib/client/query-processor.mjs +0 -45
  74. package/browser/esm2022/lib/converter/param-converter.mjs +0 -27
  75. package/browser/esm2022/lib/converter/parameterized-converter.mjs +0 -17
  76. package/browser/esm2022/lib/converter/query-converter.mjs +0 -282
  77. package/browser/esm2022/lib/converter/result-converter.mjs +0 -88
  78. package/browser/esm2022/lib/converter/sql-converter.mjs +0 -8
  79. package/browser/esm2022/lib/converter/type-converter.mjs +0 -39
  80. package/browser/esm2022/lib/converter/types.mjs +0 -4
  81. package/browser/esm2022/lib/index.mjs +0 -23
  82. package/browser/esm2022/public-api.mjs +0 -2
  83. package/browser/esm2022/taon-type-sql.mjs +0 -5
  84. package/client/esm2022/lib/builder/column/basic-column.mjs +0 -13
  85. package/client/esm2022/lib/builder/column/boolean-column.mjs +0 -14
  86. package/client/esm2022/lib/builder/column/comparable-column.mjs +0 -41
  87. package/client/esm2022/lib/builder/column/date-column.mjs +0 -14
  88. package/client/esm2022/lib/builder/column/number-column.mjs +0 -19
  89. package/client/esm2022/lib/builder/column/query-column.mjs +0 -21
  90. package/client/esm2022/lib/builder/column/string-column.mjs +0 -36
  91. package/client/esm2022/lib/builder/column/value-column.mjs +0 -30
  92. package/client/esm2022/lib/builder/condition/query-column-condition.mjs +0 -19
  93. package/client/esm2022/lib/builder/condition/query-condition-chain.mjs +0 -28
  94. package/client/esm2022/lib/builder/condition/query-condition.mjs +0 -6
  95. package/client/esm2022/lib/builder/condition/query-join-condition.mjs +0 -19
  96. package/client/esm2022/lib/builder/helpers/generics-helper.mjs +0 -5
  97. package/client/esm2022/lib/builder/helpers/internal-types.mjs +0 -4
  98. package/client/esm2022/lib/builder/join/joined-tables-chain.mjs +0 -14
  99. package/client/esm2022/lib/builder/join/joined-tables.mjs +0 -22
  100. package/client/esm2022/lib/builder/other/query-ordering.mjs +0 -17
  101. package/client/esm2022/lib/builder/query/select-query.mjs +0 -48
  102. package/client/esm2022/lib/builder/query/table-condition-query.mjs +0 -25
  103. package/client/esm2022/lib/builder/query/table-query.mjs +0 -54
  104. package/client/esm2022/lib/builder/query-source.mjs +0 -20
  105. package/client/esm2022/lib/builder/query-table.mjs +0 -24
  106. package/client/esm2022/lib/client/mysql.mjs +0 -10
  107. package/client/esm2022/lib/client/query-processor.mjs +0 -45
  108. package/client/esm2022/lib/converter/param-converter.mjs +0 -27
  109. package/client/esm2022/lib/converter/parameterized-converter.mjs +0 -17
  110. package/client/esm2022/lib/converter/query-converter.mjs +0 -282
  111. package/client/esm2022/lib/converter/result-converter.mjs +0 -88
  112. package/client/esm2022/lib/converter/sql-converter.mjs +0 -8
  113. package/client/esm2022/lib/converter/type-converter.mjs +0 -39
  114. package/client/esm2022/lib/converter/types.mjs +0 -4
  115. package/client/esm2022/lib/index.mjs +0 -23
  116. package/client/esm2022/public-api.mjs +0 -2
  117. package/client/esm2022/taon-type-sql.mjs +0 -5
  118. package/websql/esm2022/lib/builder/column/basic-column.mjs +0 -13
  119. package/websql/esm2022/lib/builder/column/boolean-column.mjs +0 -14
  120. package/websql/esm2022/lib/builder/column/comparable-column.mjs +0 -41
  121. package/websql/esm2022/lib/builder/column/date-column.mjs +0 -14
  122. package/websql/esm2022/lib/builder/column/number-column.mjs +0 -19
  123. package/websql/esm2022/lib/builder/column/query-column.mjs +0 -21
  124. package/websql/esm2022/lib/builder/column/string-column.mjs +0 -36
  125. package/websql/esm2022/lib/builder/column/value-column.mjs +0 -30
  126. package/websql/esm2022/lib/builder/condition/query-column-condition.mjs +0 -19
  127. package/websql/esm2022/lib/builder/condition/query-condition-chain.mjs +0 -28
  128. package/websql/esm2022/lib/builder/condition/query-condition.mjs +0 -6
  129. package/websql/esm2022/lib/builder/condition/query-join-condition.mjs +0 -19
  130. package/websql/esm2022/lib/builder/helpers/generics-helper.mjs +0 -5
  131. package/websql/esm2022/lib/builder/helpers/internal-types.mjs +0 -4
  132. package/websql/esm2022/lib/builder/join/joined-tables-chain.mjs +0 -14
  133. package/websql/esm2022/lib/builder/join/joined-tables.mjs +0 -22
  134. package/websql/esm2022/lib/builder/other/query-ordering.mjs +0 -17
  135. package/websql/esm2022/lib/builder/query/select-query.mjs +0 -48
  136. package/websql/esm2022/lib/builder/query/table-condition-query.mjs +0 -25
  137. package/websql/esm2022/lib/builder/query/table-query.mjs +0 -54
  138. package/websql/esm2022/lib/builder/query-source.mjs +0 -20
  139. package/websql/esm2022/lib/builder/query-table.mjs +0 -24
  140. package/websql/esm2022/lib/client/mysql.mjs +0 -10
  141. package/websql/esm2022/lib/client/query-processor.mjs +0 -45
  142. package/websql/esm2022/lib/converter/param-converter.mjs +0 -27
  143. package/websql/esm2022/lib/converter/parameterized-converter.mjs +0 -17
  144. package/websql/esm2022/lib/converter/query-converter.mjs +0 -282
  145. package/websql/esm2022/lib/converter/result-converter.mjs +0 -88
  146. package/websql/esm2022/lib/converter/sql-converter.mjs +0 -8
  147. package/websql/esm2022/lib/converter/type-converter.mjs +0 -39
  148. package/websql/esm2022/lib/converter/types.mjs +0 -4
  149. package/websql/esm2022/lib/index.mjs +0 -23
  150. package/websql/esm2022/public-api.mjs +0 -2
  151. package/websql/esm2022/taon-type-sql.mjs +0 -5
@@ -1,282 +0,0 @@
1
- import { string, number, date, boolean } from './type-converter';
2
- export function createQueryConverter(paramConverter, options, engine) {
3
- return convertQuery;
4
- function convertQuery(query) {
5
- if (query._action === 'select')
6
- return convertSelectQuery(query);
7
- if (query._action === 'delete')
8
- return convertDeleteQuery(query);
9
- if (query._action === 'update')
10
- return convertUpdateQuery(query);
11
- if (query._action === 'insert')
12
- return convertInsertQuery(query);
13
- throw new Error('Unknown query type:' + query._action);
14
- }
15
- function convertDeleteQuery(query) {
16
- let s = 'DELETE FROM ' + convertTable(query._table);
17
- s += convertConditions(query._conditions);
18
- return s;
19
- }
20
- function convertUpdateQuery(query) {
21
- let s = 'UPDATE ' + convertTable(query._table) + ' SET ';
22
- s += convertUpdateSetters(query._table, query._entity);
23
- s += convertConditions(query._conditions);
24
- return s;
25
- }
26
- function convertUpdateSetters(table, entity) {
27
- return Object.keys(entity).sort().map(key => {
28
- let value = entity[key];
29
- let column = table[key];
30
- return convertColumnName(column) + ' = ' + convertParam(column, value);
31
- }).join(', ');
32
- }
33
- function convertInsertQuery(query) {
34
- let items = Array.isArray(query._entity) ? query._entity : [query._entity];
35
- let keySet = items.reduce((set, item) => {
36
- Object.keys(item).forEach(key => set.add(key));
37
- return set;
38
- }, new Set());
39
- let keys = Array.from(keySet).sort();
40
- let s = 'INSERT INTO ' + convertTable(query._table) + ' ';
41
- s += '(' + keys.map(key => convertColumnName(query._table[key])).join(', ') + ')';
42
- s += options.lineBreak + 'VALUES ';
43
- s += items.map(item => convertInsertItem(query._table, item, keys))
44
- .map((row) => '(' + row + ')').join(', ');
45
- s += getPgInsertReturningIfNeeded(query);
46
- return s;
47
- }
48
- function getPgInsertReturningIfNeeded(query) {
49
- if (engine === 'pg' && query._action === 'insert' && !Array.isArray(query._entity) &&
50
- query._table.$id && query._table.$id._table && query._table.$id._name) {
51
- return ' RETURNING ' + convertColumnName(query._table.$id);
52
- }
53
- return '';
54
- }
55
- function convertInsertItem(table, entity, keys) {
56
- return keys.map(key => {
57
- let value = entity[key];
58
- let column = table[key];
59
- return convertParam(column, value);
60
- }).join(', ');
61
- }
62
- function convertSelectQuery(query) {
63
- let s = 'SELECT ';
64
- if (query._distinct) {
65
- s += 'DISTINCT ';
66
- }
67
- if (query._columns == null || query._columns.length === 0) {
68
- s += '*';
69
- }
70
- else {
71
- s += query._columns.map((column) => convertColumn(column)).join(', ');
72
- }
73
- s += options.lineBreak + 'FROM ';
74
- if (query._tables) {
75
- s += query._tables.map((table) => table._parent ? convertJoin(table) : convertTable(table)).join(', ');
76
- }
77
- else {
78
- s += convertTable(query._table);
79
- }
80
- s += convertConditions(query._conditions);
81
- if (query._groupBy && query._groupBy.length > 0) {
82
- s += options.lineBreak + 'GROUP BY ';
83
- s += query._groupBy.map((column) => convertColumn(column)).join(', ');
84
- }
85
- s += convertConditions(query._having, 'HAVING');
86
- if (query._orderings && query._orderings.length > 0) {
87
- s += options.lineBreak + 'ORDER BY ';
88
- s += query._orderings.map((ordering) => convertOrdering(ordering)).join(', ');
89
- }
90
- if (query._limit != null) {
91
- s += options.lineBreak + 'LIMIT ' + number(query._limit);
92
- }
93
- if (query._offset != null) {
94
- s += options.lineBreak + 'OFFSET ' + number(query._offset);
95
- }
96
- return s;
97
- }
98
- function convertConditions(conditions, keyword = 'WHERE') {
99
- let s = '';
100
- if (conditions && conditions.length > 0) {
101
- s += options.lineBreak + keyword + ' ';
102
- preprocessConditions(conditions);
103
- s += conditions.map(condition => convertCondition(condition, true)).join(' AND ');
104
- }
105
- return s;
106
- }
107
- function convertJoin(joinChain) {
108
- let items = [];
109
- while (joinChain) {
110
- items.push(joinChain);
111
- joinChain = joinChain._parent;
112
- }
113
- let root = items[items.length - 1];
114
- let s = convertTable(root);
115
- for (let i = items.length - 2; i >= 0; i -= 2) {
116
- let table = items[i]._table;
117
- let modifier = items[i]._modifier;
118
- let condition = items[i - 1]._condition;
119
- let param = convertColumn(condition._otherColumn);
120
- s += ' ' + modifier.toUpperCase() + ' JOIN ' + convertTable(table) + ' ON ' +
121
- convertColumnCondition(condition, param);
122
- }
123
- return s;
124
- }
125
- function convertOrdering(ordering) {
126
- if (ordering._column) {
127
- let s = convertColumn(ordering._column);
128
- if (ordering._nullsPosition != null) { // "NULLS FIRST" only exists in PG, this is the general solution
129
- s += ' IS NULL ' + (ordering._nullsPosition === 'FIRST' ? 'DESC' : 'ASC') + ', ' + s;
130
- }
131
- if (ordering._direction === 'ASC')
132
- s += ' ASC';
133
- if (ordering._direction === 'DESC')
134
- s += ' DESC';
135
- return s;
136
- }
137
- else {
138
- return convertColumn(ordering);
139
- }
140
- }
141
- function convertTable(table) {
142
- return options.nameEscape + table._$name + options.nameEscape;
143
- }
144
- function convertColumn(column) {
145
- let s = '';
146
- if (!(column._name === '*' && column._modifiers.length > 0 && column._modifiers[0].name === 'count')) {
147
- s += convertTable(column._table) + '.';
148
- }
149
- s += convertColumnName(column);
150
- return convertColumnModifiers(s, column);
151
- }
152
- function convertColumnModifiers(s, column) {
153
- if (column._modifiers) {
154
- column._modifiers.forEach((modifier) => {
155
- let name = modifier.name;
156
- if (name === 'lower')
157
- s = 'LOWER(' + s + ')';
158
- else if (name === 'upper')
159
- s = 'UPPER(' + s + ')';
160
- else if (name === 'count')
161
- s = 'COUNT(' + s + ')';
162
- else if (name === 'sum')
163
- s = 'SUM(' + s + ')';
164
- else if (name === 'avg')
165
- s = 'AVG(' + s + ')';
166
- else if (name === 'min')
167
- s = 'MIN(' + s + ')';
168
- else if (name === 'max')
169
- s = 'MAX(' + s + ')';
170
- else if (name === 'as')
171
- s = s + ' AS ' + options.nameEscape + modifier.params + options.nameEscape;
172
- });
173
- }
174
- return s + '';
175
- }
176
- function convertColumnName(column) {
177
- if (column._name === '*')
178
- return column._name;
179
- let name = typeof column._name === 'string' ? column._name : column._name.name;
180
- return options.nameEscape + name + options.nameEscape;
181
- }
182
- function preprocessConditions(conditions) {
183
- conditions.forEach(condition => {
184
- if (conditions.length > 1 && condition._sibling) {
185
- condition._parenthesis = true;
186
- }
187
- preprocessParams(condition);
188
- });
189
- }
190
- function preprocessParams(condition) {
191
- if (condition._sibling) {
192
- preprocessParams(condition._sibling);
193
- }
194
- if (!condition._sibling && !condition._child) {
195
- condition.__param = getConditionParam(condition);
196
- }
197
- if (condition._child) {
198
- preprocessParams(condition._child);
199
- }
200
- }
201
- function convertCondition(condition, root = false) {
202
- if (!condition._sibling && !condition._child) {
203
- return convertColumnCondition(condition, condition.__param);
204
- }
205
- let s = '';
206
- if (condition._child) {
207
- s += convertCondition(condition._child);
208
- }
209
- if (condition._sibling) {
210
- s = convertCondition(condition._sibling, root) + ' ' + condition._chainType.toUpperCase() + ' ' + s;
211
- }
212
- if (condition._parenthesis || ((!root || condition._negation) && condition._child)) {
213
- s = '( ' + s + ' )';
214
- }
215
- if (condition._negation) {
216
- s = 'NOT ' + s;
217
- }
218
- return s;
219
- }
220
- function convertColumnCondition(condition, param) {
221
- let s = convertColumn(condition._column);
222
- s += getConditionString(condition, param);
223
- return s;
224
- }
225
- function getConditionString(condition, param) {
226
- switch (condition._type) {
227
- case 'eq': return ' = ' + param;
228
- case 'ne': return ' <> ' + param;
229
- case 'lt': return ' < ' + param;
230
- case 'gt': return ' > ' + param;
231
- case 'lte': return ' <= ' + param;
232
- case 'gte': return ' >= ' + param;
233
- case 'is-null': return ' IS NULL';
234
- case 'is-not-null': return ' IS NOT NULL';
235
- case 'like': return ' LIKE ' + param;
236
- case 'not-like': return ' NOT LIKE ' + param;
237
- case 'in': return ' IN (' + param + ')';
238
- case 'not-in': return ' NOT IN (' + param + ')';
239
- case 'between': return ' BETWEEN ' + param;
240
- case 'not-between': return ' NOT BETWEEN ' + param;
241
- default: return '';
242
- }
243
- }
244
- function getConditionParam(condition) {
245
- let param = '';
246
- if (condition._otherColumn) {
247
- param = convertColumn(condition._otherColumn);
248
- }
249
- else {
250
- let _convertParam = (param) => convertParam(condition._column, param);
251
- if (condition._type === 'in' || condition._type === 'not-in') {
252
- param = condition._values.map((value) => _convertParam(value)).join(', ');
253
- }
254
- else if (condition._type === 'between' || condition._type === 'not-between') {
255
- param = _convertParam(condition._values[0]) + ' AND ' + _convertParam(condition._values[1]);
256
- }
257
- else if (condition._type !== 'is-null' && condition._type !== 'is-not-null') {
258
- param = _convertParam(condition._values[0]);
259
- }
260
- }
261
- return param;
262
- }
263
- function convertParam(column, param) {
264
- if (param == null)
265
- return 'NULL';
266
- return paramConverter(getTypedParam(column._type, param));
267
- }
268
- function getTypedParam(type, param) {
269
- if (type === 'number')
270
- return number(param);
271
- else if (type === 'boolean')
272
- return boolean(param);
273
- else if (type === 'date')
274
- return date(param);
275
- else if (type === 'string')
276
- return string(param);
277
- return param;
278
- }
279
- }
280
- ;
281
- ({}); // @--end-of-file-for-module=taon-type-sql lib/converter/query-converter.ts
282
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicXVlcnktY29udmVydGVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vdG1wLWxpYnMtZm9yLWRpc3QvdGFvbi10eXBlLXNxbC9wcm9qZWN0cy90YW9uLXR5cGUtc3FsL3NyYy9saWIvY29udmVydGVyL3F1ZXJ5LWNvbnZlcnRlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFFQSxPQUFPLEVBQUUsTUFBTSxFQUFFLE1BQU0sRUFBRSxJQUFJLEVBQUUsT0FBTyxFQUFFLE1BQU0sa0JBQWtCLENBQUM7QUFJakUsTUFBTSxVQUFVLG9CQUFvQixDQUFDLGNBQXNDLEVBQUUsT0FBeUIsRUFBRSxNQUFtQjtJQUV2SCxPQUFPLFlBQVksQ0FBQztJQUVwQixTQUFTLFlBQVksQ0FBQyxLQUFVO1FBQzVCLElBQUksS0FBSyxDQUFDLE9BQU8sS0FBSyxRQUFRO1lBQUUsT0FBTyxrQkFBa0IsQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUNqRSxJQUFJLEtBQUssQ0FBQyxPQUFPLEtBQUssUUFBUTtZQUFFLE9BQU8sa0JBQWtCLENBQUMsS0FBSyxDQUFDLENBQUM7UUFDakUsSUFBSSxLQUFLLENBQUMsT0FBTyxLQUFLLFFBQVE7WUFBRSxPQUFPLGtCQUFrQixDQUFDLEtBQUssQ0FBQyxDQUFDO1FBQ2pFLElBQUksS0FBSyxDQUFDLE9BQU8sS0FBSyxRQUFRO1lBQUUsT0FBTyxrQkFBa0IsQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUNqRSxNQUFNLElBQUksS0FBSyxDQUFDLHFCQUFxQixHQUFHLEtBQUssQ0FBQyxPQUFPLENBQUMsQ0FBQztJQUMzRCxDQUFDO0lBRUQsU0FBUyxrQkFBa0IsQ0FBQyxLQUFVO1FBQ2xDLElBQUksQ0FBQyxHQUFHLGNBQWMsR0FBRyxZQUFZLENBQUMsS0FBSyxDQUFDLE1BQU0sQ0FBQyxDQUFDO1FBQ3BELENBQUMsSUFBSSxpQkFBaUIsQ0FBQyxLQUFLLENBQUMsV0FBVyxDQUFDLENBQUM7UUFDMUMsT0FBTyxD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RCxDQUFDO0lBRUQsU0FBUyxhQUFhLENBQUMsSUFBWSxFQUFFLEtBQVU7UUFDM0MsSUFBSSxJQUFJLEtBQUssUUFBUTtZQUFFLE9BQU8sTUFBTSxDQUFDLEtBQUssQ0FBQyxDQUFDO2FBQ3ZDLElBQUksSUFBSSxLQUFLLFNBQVM7WUFBRSxPQUFPLE9BQU8sQ0FBQyxLQUFLLENBQUMsQ0FBQzthQUM5QyxJQUFJLElBQUksS0FBSyxNQUFNO1lBQUUsT0FBTyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7YUFDeEMsSUFBSSxJQUFJLEtBQUssUUFBUTtZQUFFLE9BQU8sTUFBTSxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBQ2pELE9BQU8sS0FBSyxDQUFDO0lBQ2pCLENBQUM7QUFDTCxDQUFDO0FBRUEsQ0FBQztBQUFBLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQywyRUFBMkUiLCJzb3VyY2VzQ29udGVudCI6WyJcblxuaW1wb3J0IHsgc3RyaW5nLCBudW1iZXIsIGRhdGUsIGJvb2xlYW4gfSBmcm9tICcuL3R5cGUtY29udmVydGVyJztcbmltcG9ydCB7IFF1ZXJ5RW5naW5lLCBDb252ZXJ0ZXJPcHRpb25zIH0gZnJvbSBcIi4vdHlwZXNcIjtcblxuXG5leHBvcnQgZnVuY3Rpb24gY3JlYXRlUXVlcnlDb252ZXJ0ZXIocGFyYW1Db252ZXJ0ZXI6IChwYXJhbTogYW55KSA9PiBzdHJpbmcsIG9wdGlvbnM6IENvbnZlcnRlck9wdGlvbnMsIGVuZ2luZTogUXVlcnlFbmdpbmUpIHtcblxuICAgIHJldHVybiBjb252ZXJ0UXVlcnk7XG5cbiAgICBmdW5jdGlvbiBjb252ZXJ0UXVlcnkocXVlcnk6IGFueSk6IHN0cmluZyB7XG4gICAgICAgIGlmIChxdWVyeS5fYWN0aW9uID09PSAnc2VsZWN0JykgcmV0dXJuIGNvbnZlcnRTZWxlY3RRdWVyeShxdWVyeSk7XG4gICAgICAgIGlmIChxdWVyeS5fYWN0aW9uID09PSAnZGVsZXRlJykgcmV0dXJuIGNvbnZlcnREZWxldGVRdWVyeShxdWVyeSk7XG4gICAgICAgIGlmIChxdWVyeS5fYWN0aW9uID09PSAndXBkYXRlJykgcmV0dXJuIGNvbnZlcnRVcGRhdGVRdWVyeShxdWVyeSk7XG4gICAgICAgIGlmIChxdWVyeS5fYWN0aW9uID09PSAnaW5zZXJ0JykgcmV0dXJuIGNvbnZlcnRJbnNlcnRRdWVyeShxdWVyeSk7XG4gICAgICAgIHRocm93IG5ldyBFcnJvcignVW5rbm93biBxdWVyeSB0eXBlOicgKyBxdWVyeS5fYWN0aW9uKTtcbiAgICB9XG5cbiAgICBmdW5jdGlvbiBjb252ZXJ0RGVsZXRlUXVlcnkocXVlcnk6IGFueSk6IHN0cmluZyB7XG4gICAgICAgIGxldCBzID0gJ0RFTEVURSBGUk9NICcgKyBjb252ZXJ0VGFibGUocXVlcnkuX3RhYmxlKTtcbiAgICAgICAgcyArPSBjb252ZXJ0Q29uZGl0aW9ucyhxdWVyeS5fY29uZGl0aW9ucyk7XG4gICAgICAgIHJldHVybiBzO1xuICAgIH1cblxuICAgIGZ1bmN0aW9uIGNvbnZlcnRVcGRhdGVRdWVyeShxdWVyeTogYW55KTogc3RyaW5nIHtcbiAgICAgICAgbGV0IHMgPSAnVVBEQVRFICcgKyBjb252ZXJ0VGFibGUocXVlcnkuX3RhYmxlKSArICcgU0VUICc7XG4gICAgICAgIHMgKz0gY29udmVydFVwZGF0ZVNldHRlcnMocXVlcnkuX3RhYmxlLCBxdWVyeS5fZW50aXR5KTtcbiAgICAgICAgcyArPSBjb252ZXJ0Q29uZGl0aW9ucyhxdWVyeS5fY29uZGl0aW9ucyk7XG4gICAgICAgIHJldHVybiBzO1xuICAgIH1cblxuICAgIGZ1bmN0aW9uIGNvbnZlcnRVcGRhdGVTZXR0ZXJzKHRhYmxlOiBhbnksIGVudGl0eTogYW55KTogc3RyaW5nIHtcbiAgICAgICAgcmV0dXJuIE9iamVjdC5rZXlzKGVudGl0eSkuc29ydCgpLm1hcChrZXkgPT4ge1xuICAgICAgICAgICAgbGV0IHZhbHVlID0gZW50aXR5W2tleV07XG4gICAgICAgICAgICBsZXQgY29sdW1uID0gdGFibGVba2V5XTtcbiAgICAgICAgICAgIHJldHVybiBjb252ZXJ0Q29sdW1uTmFtZShjb2x1bW4pICsgJyA9ICcgKyBjb252ZXJ0UGFyYW0oY29sdW1uLCB2YWx1ZSk7XG4gICAgICAgIH0pLmpvaW4oJywgJyk7XG4gICAgfVxuXG4gICAgZnVuY3Rpb24gY29udmVydEluc2VydFF1ZXJ5KHF1ZXJ5OiBhbnkpOiBzdHJpbmcge1xuICAgICAgICBsZXQgaXRlbXM6IGFueVtdID0gQXJyYXkuaXNBcnJheShxdWVyeS5fZW50aXR5KSA/IHF1ZXJ5Ll9lbnRpdHkgOiBbcXVlcnkuX2VudGl0eV07XG4gICAgICAgIGxldCBrZXlTZXQ6IFNldDxzdHJpbmc+ID0gaXRlbXMucmVkdWNlKChzZXQ6IFNldDxzdHJpbmc+LCBpdGVtKSA9PiB7XG4gICAgICAgICAgICBPYmplY3Qua2V5cyhpdGVtKS5mb3JFYWNoKGtleSA9PiBzZXQuYWRkKGtleSkpOyByZXR1cm4gc2V0O1xuICAgICAgICB9LCBuZXcgU2V0PHN0cmluZz4oKSk7XG4gICAgICAgIGxldCBrZXlzID0gQXJyYXkuZnJvbShrZXlTZXQpLnNvcnQoKTtcblxuICAgICAgICBsZXQgcyA9ICdJTlNFUlQgSU5UTyAnICsgY29udmVydFRhYmxlKHF1ZXJ5Ll90YWJsZSkgKyAnICc7XG4gICAgICAgIHMgKz0gJygnICsga2V5cy5tYXAoa2V5ID0+IGNvbnZlcnRDb2x1bW5OYW1lKHF1ZXJ5Ll90YWJsZVtrZXldKSkuam9pbignLCAnKSArICcpJztcbiAgICAgICAgcyArPSBvcHRpb25zLmxpbmVCcmVhayArICdWQUxVRVMgJztcbiAgICAgICAgcyArPSBpdGVtcy5tYXAoaXRlbSA9PiBjb252ZXJ0SW5zZXJ0SXRlbShxdWVyeS5fdGFibGUsIGl0ZW0sIGtleXMpKVxuICAgICAgICAgICAgLm1hcCgocm93OiBzdHJpbmcpID0+ICcoJyArIHJvdyArICcpJykuam9pbignLCAnKTtcblxuICAgICAgICBzICs9IGdldFBnSW5zZXJ0UmV0dXJuaW5nSWZOZWVkZWQocXVlcnkpO1xuICAgICAgICByZXR1cm4gcztcbiAgICB9XG5cblxuICAgIGZ1bmN0aW9uIGdldFBnSW5zZXJ0UmV0dXJuaW5nSWZOZWVkZWQocXVlcnk6IGFueSk6IHN0cmluZyB7XG4gICAgICAgIGlmIChlbmdpbmUgPT09ICdwZycgJiYgcXVlcnkuX2FjdGlvbiA9PT0gJ2luc2VydCcgJiYgIUFycmF5LmlzQXJyYXkocXVlcnkuX2VudGl0eSkgJiZcbiAgICAgICAgICAgIHF1ZXJ5Ll90YWJsZS4kaWQgJiYgcXVlcnkuX3RhYmxlLiRpZC5fdGFibGUgJiYgcXVlcnkuX3RhYmxlLiRpZC5fbmFtZSkge1xuICAgICAgICAgICAgcmV0dXJuICcgUkVUVVJOSU5HICcgKyBjb252ZXJ0Q29sdW1uTmFtZShxdWVyeS5fdGFibGUuJGlkKTtcbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gJyc7XG4gICAgfVxuXG4gICAgZnVuY3Rpb24gY29udmVydEluc2VydEl0ZW0odGFibGU6IGFueSwgZW50aXR5OiBhbnksIGtleXM6IHN0cmluZ1tdKTogc3RyaW5nIHtcbiAgICAgICAgcmV0dXJuIGtleXMubWFwKGtleSA9PiB7XG4gICAgICAgICAgICBsZXQgdmFsdWUgPSBlbnRpdHlba2V5XTtcbiAgICAgICAgICAgIGxldCBjb2x1bW4gPSB0YWJsZVtrZXldO1xuICAgICAgICAgICAgcmV0dXJuIGNvbnZlcnRQYXJhbShjb2x1bW4sIHZhbHVlKTtcbiAgICAgICAgfSkuam9pbignLCAnKTtcbiAgICB9XG5cbiAgICBmdW5jdGlvbiBjb252ZXJ0U2VsZWN0UXVlcnkocXVlcnk6IGFueSk6IHN0cmluZyB7XG4gICAgICAgIGxldCBzID0gJ1NFTEVDVCAnO1xuICAgICAgICBpZiAocXVlcnkuX2Rpc3RpbmN0KSB7XG4gICAgICAgICAgICBzICs9ICdESVNUSU5DVCAnO1xuICAgICAgICB9XG5cbiAgICAgICAgaWYgKHF1ZXJ5Ll9jb2x1bW5zID09IG51bGwgfHwgcXVlcnkuX2NvbHVtbnMubGVuZ3RoID09PSAwKSB7XG4gICAgICAgICAgICBzICs9ICcqJ1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgcyArPSBxdWVyeS5fY29sdW1ucy5tYXAoKGNvbHVtbjogYW55KSA9PiBjb252ZXJ0Q29sdW1uKGNvbHVtbikpLmpvaW4oJywgJyk7XG4gICAgICAgIH1cblxuICAgICAgICBzICs9IG9wdGlvbnMubGluZUJyZWFrICsgJ0ZST00gJztcbiAgICAgICAgaWYgKHF1ZXJ5Ll90YWJsZXMpIHtcbiAgICAgICAgICAgIHMrPSBxdWVyeS5fdGFibGVzLm1hcCgodGFibGU6IGFueSkgPT4gdGFibGUuX3BhcmVudCA/IGNvbnZlcnRKb2luKHRhYmxlKSA6IGNvbnZlcnRUYWJsZSh0YWJsZSkpLmpvaW4oJywgJyk7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICBzKz0gY29udmVydFRhYmxlKHF1ZXJ5Ll90YWJsZSk7XG4gICAgICAgIH1cblxuICAgICAgICBzICs9IGNvbnZlcnRDb25kaXRpb25zKHF1ZXJ5Ll9jb25kaXRpb25zKTtcblxuICAgICAgICBpZiAocXVlcnkuX2dyb3VwQnkgJiYgcXVlcnkuX2dyb3VwQnkubGVuZ3RoID4gMCkge1xuICAgICAgICAgICAgcyArPSBvcHRpb25zLmxpbmVCcmVhayArICdHUk9VUCBCWSAnO1xuICAgICAgICAgICAgcyArPSBxdWVyeS5fZ3JvdXBCeS5tYXAoKGNvbHVtbjogYW55KSA9PiBjb252ZXJ0Q29sdW1uKGNvbHVtbikpLmpvaW4oJywgJyk7XG4gICAgICAgIH1cbiAgICAgICAgcyArPSBjb252ZXJ0Q29uZGl0aW9ucyhxdWVyeS5faGF2aW5nLCAnSEFWSU5HJyk7XG5cbiAgICAgICAgaWYgKHF1ZXJ5Ll9vcmRlcmluZ3MgJiYgcXVlcnkuX29yZGVyaW5ncy5sZW5ndGggPiAwKSB7XG4gICAgICAgICAgICBzICs9IG9wdGlvbnMubGluZUJyZWFrICsgJ09SREVSIEJZICc7XG4gICAgICAgICAgICBzICs9IHF1ZXJ5Ll9vcmRlcmluZ3MubWFwKChvcmRlcmluZzogYW55KSA9PiBjb252ZXJ0T3JkZXJpbmcob3JkZXJpbmcpKS5qb2luKCcsICcpO1xuICAgICAgICB9XG4gICAgICAgIGlmIChxdWVyeS5fbGltaXQgIT0gbnVsbCkge1xuICAgICAgICAgICAgcyArPSBvcHRpb25zLmxpbmVCcmVhayArICdMSU1JVCAnICsgbnVtYmVyKHF1ZXJ5Ll9saW1pdCk7XG4gICAgICAgIH1cbiAgICAgICAgaWYgKHF1ZXJ5Ll9vZmZzZXQgIT0gbnVsbCkge1xuICAgICAgICAgICAgcyArPSBvcHRpb25zLmxpbmVCcmVhayArICdPRkZTRVQgJyArIG51bWJlcihxdWVyeS5fb2Zmc2V0KTtcbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gcztcbiAgICB9XG5cbiAgICBmdW5jdGlvbiBjb252ZXJ0Q29uZGl0aW9ucyhjb25kaXRpb25zOiBhbnlbXSwga2V5d29yZCA9ICdXSEVSRScpOiBzdHJpbmcge1xuICAgICAgICBsZXQgcyA9ICcnO1xuICAgICAgICBpZiAoY29uZGl0aW9ucyAmJiBjb25kaXRpb25zLmxlbmd0aCA+IDApIHtcbiAgICAgICAgICAgIHMgKz0gb3B0aW9ucy5saW5lQnJlYWsgKyBrZXl3b3JkICsgJyAnO1xuICAgICAgICAgICAgcHJlcHJvY2Vzc0NvbmRpdGlvbnMoY29uZGl0aW9ucyk7XG4gICAgICAgICAgICBzICs9IGNvbmRpdGlvbnMubWFwKGNvbmRpdGlvbiA9PiBjb252ZXJ0Q29uZGl0aW9uKGNvbmRpdGlvbiwgdHJ1ZSkpLmpvaW4oJyBBTkQgJyk7XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIHM7XG4gICAgfVxuXG4gICAgZnVuY3Rpb24gY29udmVydEpvaW4oam9pbkNoYWluOiBhbnkpOiBzdHJpbmcge1xuICAgICAgICBsZXQgaXRlbXM6IGFueVtdID0gW107XG4gICAgICAgIHdoaWxlIChqb2luQ2hhaW4pIHtcbiAgICAgICAgICAgIGl0ZW1zLnB1c2goam9pbkNoYWluKTtcbiAgICAgICAgICAgIGpvaW5DaGFpbiA9IGpvaW5DaGFpbi5fcGFyZW50O1xuICAgICAgICB9XG5cbiAgICAgICAgbGV0IHJvb3QgPSBpdGVtc1tpdGVtcy5sZW5ndGggLSAxXTtcbiAgICAgICAgbGV0IHMgPSBjb252ZXJ0VGFibGUocm9vdCk7XG5cbiAgICAgICAgZm9yIChsZXQgaSA9IGl0ZW1zLmxlbmd0aCAtIDI7IGkgPj0gMDsgaS09IDIpIHtcbiAgICAgICAgICAgIGxldCB0YWJsZSA9IGl0ZW1zW2ldLl90YWJsZTtcbiAgICAgICAgICAgIGxldCBtb2RpZmllciA9IGl0ZW1zW2ldLl9tb2RpZmllcjtcbiAgICAgICAgICAgIGxldCBjb25kaXRpb24gPSBpdGVtc1tpIC0gMV0uX2NvbmRpdGlvbjtcbiAgICAgICAgICAgIGxldCBwYXJhbSA9IGNvbnZlcnRDb2x1bW4oY29uZGl0aW9uLl9vdGhlckNvbHVtbik7XG4gICAgICAgICAgICBzICs9ICcgJyArIG1vZGlmaWVyLnRvVXBwZXJDYXNlKCkgKyAnIEpPSU4gJyArIGNvbnZlcnRUYWJsZSh0YWJsZSkgKyAnIE9OICcgK1xuICAgICAgICAgICAgICAgIGNvbnZlcnRDb2x1bW5Db25kaXRpb24oY29uZGl0aW9uLCBwYXJhbSk7XG4gICAgICAgIH1cblxuICAgICAgICByZXR1cm4gcztcbiAgICB9XG5cbiAgICBmdW5jdGlvbiBjb252ZXJ0T3JkZXJpbmcob3JkZXJpbmc6IGFueSk6IHN0cmluZyB7XG4gICAgICAgIGlmIChvcmRlcmluZy5fY29sdW1uKSB7XG4gICAgICAgICAgICBsZXQgcyA9IGNvbnZlcnRDb2x1bW4ob3JkZXJpbmcuX2NvbHVtbik7XG5cbiAgICAgICAgICAgIGlmIChvcmRlcmluZy5fbnVsbHNQb3NpdGlvbiAhPSBudWxsKSB7IC8vIFwiTlVMTFMgRklSU1RcIiBvbmx5IGV4aXN0cyBpbiBQRywgdGhpcyBpcyB0aGUgZ2VuZXJhbCBzb2x1dGlvblxuICAgICAgICAgICAgICAgIHMgKz0gJyBJUyBOVUxMICcgKyAob3JkZXJpbmcuX251bGxzUG9zaXRpb24gPT09ICdGSVJTVCcgPyAnREVTQycgOiAnQVNDJykgKyAnLCAnICsgcztcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgaWYgKG9yZGVyaW5nLl9kaXJlY3Rpb24gPT09ICdBU0MnKSBzICs9ICcgQVNDJztcbiAgICAgICAgICAgIGlmIChvcmRlcmluZy5fZGlyZWN0aW9uID09PSAnREVTQycpIHMgKz0gJyBERVNDJztcblxuICAgICAgICAgICAgcmV0dXJuIHM7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICByZXR1cm4gY29udmVydENvbHVtbihvcmRlcmluZyk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBmdW5jdGlvbiBjb252ZXJ0VGFibGUodGFibGU6IGFueSk6IHN0cmluZyB7XG4gICAgICAgIHJldHVybiBvcHRpb25zLm5hbWVFc2NhcGUgKyB0YWJsZS5fJG5hbWUgKyBvcHRpb25zLm5hbWVFc2NhcGU7XG4gICAgfVxuXG4gICAgZnVuY3Rpb24gY29udmVydENvbHVtbihjb2x1bW46IGFueSk6IHN0cmluZyB7XG4gICAgICAgIGxldCBzID0gJyc7XG4gICAgICAgIGlmICghKGNvbHVtbi5fbmFtZSA9PT0gJyonICYmIGNvbHVtbi5fbW9kaWZpZXJzLmxlbmd0aCA+IDAgJiYgY29sdW1uLl9tb2RpZmllcnNbMF0ubmFtZSA9PT0gJ2NvdW50JykpIHtcbiAgICAgICAgICAgIHMgKz0gY29udmVydFRhYmxlKGNvbHVtbi5fdGFibGUpICsgJy4nO1xuICAgICAgICB9XG4gICAgICAgIHMgKz0gY29udmVydENvbHVtbk5hbWUoY29sdW1uKTtcbiAgICAgICAgcmV0dXJuIGNvbnZlcnRDb2x1bW5Nb2RpZmllcnMocywgY29sdW1uKTtcbiAgICB9XG5cbiAgICBmdW5jdGlvbiBjb252ZXJ0Q29sdW1uTW9kaWZpZXJzKHM6IHN0cmluZywgY29sdW1uOiBhbnkpOiBzdHJpbmcge1xuICAgICAgICBpZiAoY29sdW1uLl9tb2RpZmllcnMpIHtcbiAgICAgICAgICAgIGNvbHVtbi5fbW9kaWZpZXJzLmZvckVhY2goKG1vZGlmaWVyOiBhbnkpID0+IHtcbiAgICAgICAgICAgICAgICBsZXQgbmFtZSA9IG1vZGlmaWVyLm5hbWU7XG4gICAgICAgICAgICAgICAgaWYgKG5hbWUgPT09ICdsb3dlcicpIHMgPSAnTE9XRVIoJyArIHMgKyAnKSc7XG4gICAgICAgICAgICAgICAgZWxzZSBpZiAobmFtZSA9PT0gJ3VwcGVyJykgcyA9ICdVUFBFUignICsgcyArICcpJztcbiAgICAgICAgICAgICAgICBlbHNlIGlmIChuYW1lID09PSAnY291bnQnKSBzID0gJ0NPVU5UKCcgKyBzICsgJyknO1xuICAgICAgICAgICAgICAgIGVsc2UgaWYgKG5hbWUgPT09ICdzdW0nKSBzID0gJ1NVTSgnICsgcyArICcpJztcbiAgICAgICAgICAgICAgICBlbHNlIGlmIChuYW1lID09PSAnYXZnJykgcyA9ICdBVkcoJyArIHMgKyAnKSc7XG4gICAgICAgICAgICAgICAgZWxzZSBpZiAobmFtZSA9PT0gJ21pbicpIHMgPSAnTUlOKCcgKyBzICsgJyknO1xuICAgICAgICAgICAgICAgIGVsc2UgaWYgKG5hbWUgPT09ICdtYXgnKSBzID0gJ01BWCgnICsgcyArICcpJztcbiAgICAgICAgICAgICAgICBlbHNlIGlmIChuYW1lID09PSAnYXMnKSBzID0gcyArICcgQVMgJyArIG9wdGlvbnMubmFtZUVzY2FwZSArIG1vZGlmaWVyLnBhcmFtcyArIG9wdGlvbnMubmFtZUVzY2FwZTtcbiAgICAgICAgICAgIH0pO1xuICAgICAgICB9XG4gICAgICAgIHJldHVybiBzICsgJyc7XG4gICAgfVxuXG4gICAgZnVuY3Rpb24gY29udmVydENvbHVtbk5hbWUoY29sdW1uOiBhbnkpOiBzdHJpbmcge1xuICAgICAgICBpZiAoY29sdW1uLl9uYW1lID09PSAnKicpIHJldHVybiBjb2x1bW4uX25hbWU7XG4gICAgICAgIGxldCBuYW1lID0gdHlwZW9mIGNvbHVtbi5fbmFtZSA9PT0gJ3N0cmluZycgPyBjb2x1bW4uX25hbWUgOiBjb2x1bW4uX25hbWUubmFtZTtcbiAgICAgICAgcmV0dXJuIG9wdGlvbnMubmFtZUVzY2FwZSArIG5hbWUgKyBvcHRpb25zLm5hbWVFc2NhcGU7XG4gICAgfVxuXG4gICAgZnVuY3Rpb24gcHJlcHJvY2Vzc0NvbmRpdGlvbnMoY29uZGl0aW9uczogYW55W10pOiB2b2lkIHtcbiAgICAgICAgY29uZGl0aW9ucy5mb3JFYWNoKGNvbmRpdGlvbiA9PiB7XG4gICAgICAgICAgICBpZiAoY29uZGl0aW9ucy5sZW5ndGggPiAxICYmIGNvbmRpdGlvbi5fc2libGluZykge1xuICAgICAgICAgICAgICAgIGNvbmRpdGlvbi5fcGFyZW50aGVzaXMgPSB0cnVlO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgcHJlcHJvY2Vzc1BhcmFtcyhjb25kaXRpb24pO1xuICAgICAgICB9KTtcbiAgICB9XG5cblxuICAgIGZ1bmN0aW9uIHByZXByb2Nlc3NQYXJhbXMoY29uZGl0aW9uOiBhbnkpOiB2b2lkIHtcbiAgICAgICAgaWYgKGNvbmRpdGlvbi5fc2libGluZykge1xuICAgICAgICAgICAgcHJlcHJvY2Vzc1BhcmFtcyhjb25kaXRpb24uX3NpYmxpbmcpO1xuICAgICAgICB9XG4gICAgICAgIGlmICghY29uZGl0aW9uLl9zaWJsaW5nICYmICFjb25kaXRpb24uX2NoaWxkKSB7XG4gICAgICAgICAgICBjb25kaXRpb24uX19wYXJhbSA9IGdldENvbmRpdGlvblBhcmFtKGNvbmRpdGlvbik7XG4gICAgICAgIH1cbiAgICAgICAgaWYgKGNvbmRpdGlvbi5fY2hpbGQpIHtcbiAgICAgICAgICAgIHByZXByb2Nlc3NQYXJhbXMoY29uZGl0aW9uLl9jaGlsZCk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBmdW5jdGlvbiBjb252ZXJ0Q29uZGl0aW9uKGNvbmRpdGlvbjogYW55LCByb290ID0gZmFsc2UpOiBzdHJpbmcge1xuICAgICAgICBpZiAoIWNvbmRpdGlvbi5fc2libGluZyAmJiAhY29uZGl0aW9uLl9jaGlsZCkge1xuICAgICAgICAgICAgcmV0dXJuIGNvbnZlcnRDb2x1bW5Db25kaXRpb24oY29uZGl0aW9uLCBjb25kaXRpb24uX19wYXJhbSk7XG4gICAgICAgIH1cblxuICAgICAgICBsZXQgcyA9ICcnO1xuICAgICAgICBpZiAoY29uZGl0aW9uLl9jaGlsZCkge1xuICAgICAgICAgICAgcyArPSBjb252ZXJ0Q29uZGl0aW9uKGNvbmRpdGlvbi5fY2hpbGQpO1xuICAgICAgICB9XG4gICAgICAgIGlmIChjb25kaXRpb24uX3NpYmxpbmcpIHtcbiAgICAgICAgICAgIHMgPSBjb252ZXJ0Q29uZGl0aW9uKGNvbmRpdGlvbi5fc2libGluZywgcm9vdCkgKyAnICcgKyBjb25kaXRpb24uX2NoYWluVHlwZS50b1VwcGVyQ2FzZSgpICsgJyAnICsgcztcbiAgICAgICAgfVxuICAgICAgICBpZiAoY29uZGl0aW9uLl9wYXJlbnRoZXNpcyB8fCAoKCFyb290IHx8IGNvbmRpdGlvbi5fbmVnYXRpb24pICYmIGNvbmRpdGlvbi5fY2hpbGQpKSB7XG4gICAgICAgICAgICBzID0gJyggJyArIHMgKyAnICknO1xuICAgICAgICB9XG4gICAgICAgIGlmIChjb25kaXRpb24uX25lZ2F0aW9uKSB7XG4gICAgICAgICAgICBzID0gJ05PVCAnICsgcztcbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gcztcbiAgICB9XG5cbiAgICBmdW5jdGlvbiBjb252ZXJ0Q29sdW1uQ29uZGl0aW9uKGNvbmRpdGlvbjogYW55LCBwYXJhbTogc3RyaW5nKTogc3RyaW5nIHtcbiAgICAgICAgbGV0IHMgPSBjb252ZXJ0Q29sdW1uKGNvbmRpdGlvbi5fY29sdW1uKTtcbiAgICAgICAgcyArPSBnZXRDb25kaXRpb25TdHJpbmcoY29uZGl0aW9uLCBwYXJhbSk7XG4gICAgICAgIHJldHVybiBzO1xuICAgIH1cblxuICAgIGZ1bmN0aW9uIGdldENvbmRpdGlvblN0cmluZyhjb25kaXRpb246IGFueSwgcGFyYW06IHN0cmluZyk6IHN0cmluZyB7XG4gICAgICAgIHN3aXRjaCAoY29uZGl0aW9uLl90eXBlKSB7XG4gICAgICAgICAgICBjYXNlICdlcSc6IHJldHVybiAnID0gJyArIHBhcmFtO1xuICAgICAgICAgICAgY2FzZSAnbmUnOiByZXR1cm4gJyA8PiAnICsgcGFyYW07XG4gICAgICAgICAgICBjYXNlICdsdCc6IHJldHVybiAnIDwgJyArIHBhcmFtO1xuICAgICAgICAgICAgY2FzZSAnZ3QnOiByZXR1cm4gJyA+ICcgKyBwYXJhbTtcbiAgICAgICAgICAgIGNhc2UgJ2x0ZSc6IHJldHVybiAnIDw9ICcgKyBwYXJhbTtcbiAgICAgICAgICAgIGNhc2UgJ2d0ZSc6IHJldHVybiAnID49ICcgKyBwYXJhbTtcbiAgICAgICAgICAgIGNhc2UgJ2lzLW51bGwnOiByZXR1cm4gJyBJUyBOVUxMJztcbiAgICAgICAgICAgIGNhc2UgJ2lzLW5vdC1udWxsJzogcmV0dXJuICcgSVMgTk9UIE5VTEwnO1xuICAgICAgICAgICAgY2FzZSAnbGlrZSc6IHJldHVybiAnIExJS0UgJyArIHBhcmFtO1xuICAgICAgICAgICAgY2FzZSAnbm90LWxpa2UnOiByZXR1cm4gJyBOT1QgTElLRSAnICsgcGFyYW07XG4gICAgICAgICAgICBjYXNlICdpbic6IHJldHVybiAnIElOICgnICsgcGFyYW0gKyAnKSc7XG4gICAgICAgICAgICBjYXNlICdub3QtaW4nOiByZXR1cm4gJyBOT1QgSU4gKCcgKyBwYXJhbSArICcpJztcbiAgICAgICAgICAgIGNhc2UgJ2JldHdlZW4nOiByZXR1cm4gJyBCRVRXRUVOICcgKyBwYXJhbTtcbiAgICAgICAgICAgIGNhc2UgJ25vdC1iZXR3ZWVuJzogcmV0dXJuICcgTk9UIEJFVFdFRU4gJyArIHBhcmFtO1xuICAgICAgICAgICAgZGVmYXVsdDogcmV0dXJuICcnO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgZnVuY3Rpb24gZ2V0Q29uZGl0aW9uUGFyYW0oY29uZGl0aW9uOiBhbnkpOiBzdHJpbmcge1xuICAgICAgICBsZXQgcGFyYW0gPSAnJztcbiAgICAgICAgaWYgKGNvbmRpdGlvbi5fb3RoZXJDb2x1bW4pIHtcbiAgICAgICAgICAgIHBhcmFtID0gY29udmVydENvbHVtbihjb25kaXRpb24uX290aGVyQ29sdW1uKTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIGxldCBfY29udmVydFBhcmFtID0gKHBhcmFtOiBhbnkpID0+IGNvbnZlcnRQYXJhbShjb25kaXRpb24uX2NvbHVtbiwgcGFyYW0pO1xuXG4gICAgICAgICAgICBpZiAoY29uZGl0aW9uLl90eXBlID09PSAnaW4nIHx8IGNvbmRpdGlvbi5fdHlwZSA9PT0gJ25vdC1pbicpIHtcbiAgICAgICAgICAgICAgICBwYXJhbSA9IGNvbmRpdGlvbi5fdmFsdWVzLm1hcCgodmFsdWU6IGFueSkgPT4gX2NvbnZlcnRQYXJhbSh2YWx1ZSkpLmpvaW4oJywgJyk7XG4gICAgICAgICAgICB9IGVsc2UgaWYgKGNvbmRpdGlvbi5fdHlwZSA9PT0gJ2JldHdlZW4nIHx8IGNvbmRpdGlvbi5fdHlwZSA9PT0gJ25vdC1iZXR3ZWVuJykge1xuICAgICAgICAgICAgICAgIHBhcmFtID0gX2NvbnZlcnRQYXJhbShjb25kaXRpb24uX3ZhbHVlc1swXSkgKyAnIEFORCAnICsgX2NvbnZlcnRQYXJhbShjb25kaXRpb24uX3ZhbHVlc1sxXSk7XG4gICAgICAgICAgICB9IGVsc2UgaWYgKGNvbmRpdGlvbi5fdHlwZSAhPT0gJ2lzLW51bGwnICYmIGNvbmRpdGlvbi5fdHlwZSAhPT0gJ2lzLW5vdC1udWxsJykge1xuICAgICAgICAgICAgICAgIHBhcmFtID0gX2NvbnZlcnRQYXJhbShjb25kaXRpb24uX3ZhbHVlc1swXSk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIHBhcmFtO1xuICAgIH1cblxuICAgIGZ1bmN0aW9uIGNvbnZlcnRQYXJhbShjb2x1bW46IGFueSwgcGFyYW06IGFueSk6IHN0cmluZyB7XG4gICAgICAgIGlmIChwYXJhbSA9PSBudWxsKSByZXR1cm4gJ05VTEwnO1xuICAgICAgICByZXR1cm4gcGFyYW1Db252ZXJ0ZXIoZ2V0VHlwZWRQYXJhbShjb2x1bW4uX3R5cGUsIHBhcmFtKSk7XG4gICAgfVxuXG4gICAgZnVuY3Rpb24gZ2V0VHlwZWRQYXJhbSh0eXBlOiBzdHJpbmcsIHBhcmFtOiBhbnkpOiBhbnkge1xuICAgICAgICBpZiAodHlwZSA9PT0gJ251bWJlcicpIHJldHVybiBudW1iZXIocGFyYW0pO1xuICAgICAgICBlbHNlIGlmICh0eXBlID09PSAnYm9vbGVhbicpIHJldHVybiBib29sZWFuKHBhcmFtKTtcbiAgICAgICAgZWxzZSBpZiAodHlwZSA9PT0gJ2RhdGUnKSByZXR1cm4gZGF0ZShwYXJhbSk7XG4gICAgICAgIGVsc2UgaWYgKHR5cGUgPT09ICdzdHJpbmcnKSByZXR1cm4gc3RyaW5nKHBhcmFtKTtcbiAgICAgICAgcmV0dXJuIHBhcmFtO1xuICAgIH1cbn1cblxuIDsoe30pOyAvLyBALS1lbmQtb2YtZmlsZS1mb3ItbW9kdWxlPXRhb24tdHlwZS1zcWwgbGliL2NvbnZlcnRlci9xdWVyeS1jb252ZXJ0ZXIudHMiXX0=
@@ -1,88 +0,0 @@
1
- export function convertResult(query, result, engine) {
2
- let rows = engine === 'pg' ? result.rows : result;
3
- let rowCount = engine === 'pg' ? result.rowCount : result.affectedRows || result.changedRows;
4
- if (query._action === 'select')
5
- return convertSelectResult(query, rows);
6
- if (query._action === 'delete')
7
- return rowCount;
8
- if (query._action === 'update')
9
- return rowCount;
10
- if (query._action === 'insert')
11
- return convertInsertResult(result, engine);
12
- throw new Error('Unknown query type:' + query._action);
13
- }
14
- function convertInsertResult(result, engine) {
15
- if (engine === 'mysql')
16
- return result.insertId > 0 ? result.insertId : undefined; // mysql returns 0 for tables that have a non-autoincrement ID
17
- if (engine === 'pg' && result.rows && result.rows.length === 1) {
18
- let columnName = Object.keys(result.rows[0])[0];
19
- return result.rows[0][columnName];
20
- }
21
- }
22
- function convertSelectResult(query, rows) {
23
- if (query._columns && query._columns.length === 1 &&
24
- !(query._columns[0]._name === '*' && query._columns[0]._modifiers.length === 0)) {
25
- if (rows.length == 0)
26
- return [];
27
- let columnName = Object.keys(rows[0])[0]; // easier than reverse engineering from the column modifiers
28
- let values = rows.map((row) => row[columnName]);
29
- if (query._columns[0]._name === '*' && query._columns[0]._modifiers.some((m) => m.name === 'count')) {
30
- return values.map((value) => Number(value)); // string to number conversion for PG count values
31
- }
32
- return values;
33
- }
34
- else {
35
- convertAliasFields(query, rows);
36
- return rows;
37
- }
38
- }
39
- function convertAliasFields(query, rows) {
40
- let aliasByName = getColumnAliasesByName(query);
41
- if (Object.keys(aliasByName).length === 0)
42
- return;
43
- rows.forEach((row) => {
44
- Object.keys(row).forEach((name) => {
45
- if (aliasByName[name]) {
46
- row[aliasByName[name]] = row[name];
47
- delete row[name];
48
- }
49
- });
50
- });
51
- }
52
- function getColumnAliasesByName(query) {
53
- let aliasByName = {};
54
- if (query._columns && query._columns.length > 0) {
55
- query._columns.forEach((column) => {
56
- if (column._name && column._name.alias && column._modifiers.length === 0) {
57
- aliasByName[column._name.name] = column._name.alias;
58
- }
59
- else if (column._name === '*' && column._modifiers.length === 0) {
60
- getAliasColumnsOfTable(column._table).forEach((column) => {
61
- aliasByName[column._name.name] = column._name.alias;
62
- });
63
- }
64
- });
65
- }
66
- else {
67
- let tables = query._table ? [query._table] : query._tables;
68
- tables.forEach((table) => {
69
- getAliasColumnsOfTable(table).forEach((column) => {
70
- aliasByName[column._name.name] = column._name.alias;
71
- });
72
- let joinTable = table._parent;
73
- while (joinTable) {
74
- getAliasColumnsOfTable(joinTable).forEach((column) => {
75
- aliasByName[column._name.name] = column._name.alias;
76
- });
77
- joinTable = joinTable._parent;
78
- }
79
- });
80
- }
81
- return aliasByName;
82
- }
83
- function getAliasColumnsOfTable(table) {
84
- return Object.keys(table).map(key => table[key]).filter((column) => column && column._name && column._name.alias);
85
- }
86
- ;
87
- ({}); // @--end-of-file-for-module=taon-type-sql lib/converter/result-converter.ts
88
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVzdWx0LWNvbnZlcnRlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3RtcC1saWJzLWZvci1kaXN0L3Rhb24tdHlwZS1zcWwvcHJvamVjdHMvdGFvbi10eXBlLXNxbC9zcmMvbGliL2NvbnZlcnRlci9yZXN1bHQtY29udmVydGVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUlBLE1BQU0sVUFBVSxhQUFhLENBQUMsS0FBVSxFQUFFLE1BQVcsRUFBRSxNQUFtQjtJQUN4RSxJQUFJLElBQUksR0FBRyxNQUFNLEtBQUssSUFBSSxDQUFDLENBQUMsQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxNQUFNLENBQUM7SUFDbEQsSUFBSSxRQUFRLEdBQUcsTUFBTSxLQUFLLElBQUksQ0FBQyxDQUFDLENBQUMsTUFBTSxDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQUMsTUFBTSxDQUFDLFlBQVksSUFBSSxNQUFNLENBQUMsV0FBVyxDQUFDO0lBRTdGLElBQUksS0FBSyxDQUFDLE9BQU8sS0FBSyxRQUFRO1FBQUUsT0FBTyxtQkFBbUIsQ0FBQyxLQUFLLEVBQUUsSUFBSSxDQUFDLENBQUM7SUFDeEUsSUFBSSxLQUFLLENBQUMsT0FBTyxLQUFLLFFBQVE7UUFBRSxPQUFPLFFBQVEsQ0FBQztJQUNoRCxJQUFJLEtBQUssQ0FBQyxPQUFPLEtBQUssUUFBUTtRQUFFLE9BQU8sUUFBUSxDQUFDO0lBQ2hELElBQUksS0FBSyxDQUFDLE9BQU8sS0FBSyxRQUFRO1FBQUUsT0FBTyxtQkFBbUIsQ0FBQyxNQUFNLEVBQUUsTUFBTSxDQUFDLENBQUM7SUFDM0UsTUFBTSxJQUFJLEtBQUssQ0FBQyxxQkFBcUIsR0FBRyxLQUFLLENBQUMsT0FBTyxDQUFDLENBQUM7QUFDekQsQ0FBQztBQUVELFNBQVMsbUJBQW1CLENBQUMsTUFBVyxFQUFFLE1BQW1CO0lBQzNELElBQUksTUFBTSxLQUFLLE9BQU87UUFBRSxPQUFPLE1BQU0sQ0FBQyxRQUFRLEdBQUcsQ0FBQyxDQUFDLENBQUMsQ0FBQyxNQUFNLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQyxTQUFTLENBQUMsQ0FBQyw4REFBOEQ7SUFDaEosSUFBSSxNQUFNLEtBQUssSUFBSSxJQUFJLE1BQU0sQ0FBQyxJQUFJLElBQUksTUFBTSxDQUFDLElBQUksQ0FBQyxNQUFNLEtBQUssQ0FBQyxFQUFFLENBQUM7UUFDL0QsSUFBSSxVQUFVLEdBQUcsTUFBTSxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7UUFDaEQsT0FBTyxNQUFNLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUFDLFVBQVUsQ0FBQyxDQUFDO0lBQ3BDLENBQUM7QUFDSCxDQUFDO0FBRUQsU0FBUyxtQkFBbUIsQ0FBQyxLQUFVLEVBQUUsSUFBVztJQUNsRCxJQUFJLEtBQUssQ0FBQyxRQUFRLElBQUksS0FBSyxDQUFDLFFBQVEsQ0FBQyxNQUFNLEtBQUssQ0FBQztRQUMvQyxDQUFDLENBQUMsS0FBSyxDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQUMsQ0FBQyxLQUFLLEtBQUssR0FBRyxJQUFJLEtBQUssQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDLENBQUMsVUFBVSxDQUFDLE1BQU0sS0FBSyxDQUFDLENBQUMsRUFBRSxDQUFDO1FBQ2xGLElBQUksSUFBSSxDQUFDLE1BQU0sSUFBSSxDQUFDO1lBQUUsT0FBTyxFQUFFLENBQUM7UUFDaEMsSUFBSSxVQUFVLEdBQUcsTUFBTSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLDREQUE0RDtRQUN0RyxJQUFJLE1BQU0sR0FBRyxJQUFJLENBQUMsR0FBRyxDQUFDLENBQUMsR0FBUSxFQUFFLEVBQUUsQ0FBQyxHQUFHLENBQUMsVUFBVSxDQUFDLENBQUMsQ0FBQztRQUVyRCxJQUFJLEtBQUssQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDLENB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QUFNLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxHQUFHLE1BQU0sQ0FBQyxLQUFLLENBQUMsS0FBSyxDQUFDO1lBQ3RELENBQUMsQ0FBQyxDQUFDO1lBRUgsSUFBSSxTQUFTLEdBQUcsS0FBSyxDQUFDLE9BQU8sQ0FBQztZQUM5QixPQUFPLFNBQVMsRUFBRSxDQUFDO2dCQUNqQixzQkFBc0IsQ0FBQyxTQUFTLENBQUMsQ0FBQyxPQUFPLENBQUMsQ0FBQyxNQUFXLEVBQUUsRUFBRTtvQkFDeEQsV0FBVyxDQUFDLE1BQU0sQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLEdBQUcsTUFBTSxDQUFDLEtBQUssQ0FBQyxLQUFLLENBQUM7Z0JBQ3RELENBQUMsQ0FBQyxDQUFDO2dCQUNILFNBQVMsR0FBRyxTQUFTLENBQUMsT0FBTyxDQUFDO1lBQ2hDLENBQUM7UUFDSCxDQUFDLENBQUMsQ0FBQztJQUNMLENBQUM7SUFFRCxPQUFPLFdBQVcsQ0FBQztBQUNyQixDQUFDO0FBRUQsU0FBUyxzQkFBc0IsQ0FBQyxLQUFVO0lBQ3hDLE9BQU8sTUFBTSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQyxHQUFHLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxNQUFNLENBQUMsQ0FBQyxNQUFXLEVBQUUsRUFBRSxDQUFDLE1BQU0sSUFBSSxNQUFNLENBQUMsS0FBSyxJQUFJLE1BQU0sQ0FBQyxLQUFLLENBQUMsS0FBSyxDQUFDLENBQUM7QUFDekgsQ0FBQztBQUVBLENBQUM7QUFBQSxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsNEVBQTRFIiwic291cmNlc0NvbnRlbnQiOlsiXG5cbmltcG9ydCB7IFF1ZXJ5RW5naW5lIH0gZnJvbSBcIi4vdHlwZXNcIjtcblxuZXhwb3J0IGZ1bmN0aW9uIGNvbnZlcnRSZXN1bHQocXVlcnk6IGFueSwgcmVzdWx0OiBhbnksIGVuZ2luZTogUXVlcnlFbmdpbmUpOiBhbnkge1xuICBsZXQgcm93cyA9IGVuZ2luZSA9PT0gJ3BnJyA/IHJlc3VsdC5yb3dzIDogcmVzdWx0O1xuICBsZXQgcm93Q291bnQgPSBlbmdpbmUgPT09ICdwZycgPyByZXN1bHQucm93Q291bnQgOiByZXN1bHQuYWZmZWN0ZWRSb3dzIHx8IHJlc3VsdC5jaGFuZ2VkUm93cztcblxuICBpZiAocXVlcnkuX2FjdGlvbiA9PT0gJ3NlbGVjdCcpIHJldHVybiBjb252ZXJ0U2VsZWN0UmVzdWx0KHF1ZXJ5LCByb3dzKTtcbiAgaWYgKHF1ZXJ5Ll9hY3Rpb24gPT09ICdkZWxldGUnKSByZXR1cm4gcm93Q291bnQ7XG4gIGlmIChxdWVyeS5fYWN0aW9uID09PSAndXBkYXRlJykgcmV0dXJuIHJvd0NvdW50O1xuICBpZiAocXVlcnkuX2FjdGlvbiA9PT0gJ2luc2VydCcpIHJldHVybiBjb252ZXJ0SW5zZXJ0UmVzdWx0KHJlc3VsdCwgZW5naW5lKTtcbiAgdGhyb3cgbmV3IEVycm9yKCdVbmtub3duIHF1ZXJ5IHR5cGU6JyArIHF1ZXJ5Ll9hY3Rpb24pO1xufVxuXG5mdW5jdGlvbiBjb252ZXJ0SW5zZXJ0UmVzdWx0KHJlc3VsdDogYW55LCBlbmdpbmU6IFF1ZXJ5RW5naW5lKTogYW55IHtcbiAgaWYgKGVuZ2luZSA9PT0gJ215c3FsJykgcmV0dXJuIHJlc3VsdC5pbnNlcnRJZCA+IDAgPyByZXN1bHQuaW5zZXJ0SWQgOiB1bmRlZmluZWQ7IC8vIG15c3FsIHJldHVybnMgMCBmb3IgdGFibGVzIHRoYXQgaGF2ZSBhIG5vbi1hdXRvaW5jcmVtZW50IElEXG4gIGlmIChlbmdpbmUgPT09ICdwZycgJiYgcmVzdWx0LnJvd3MgJiYgcmVzdWx0LnJvd3MubGVuZ3RoID09PSAxKSB7XG4gICAgbGV0IGNvbHVtbk5hbWUgPSBPYmplY3Qua2V5cyhyZXN1bHQucm93c1swXSlbMF07XG4gICAgcmV0dXJuIHJlc3VsdC5yb3dzWzBdW2NvbHVtbk5hbWVdO1xuICB9XG59XG5cbmZ1bmN0aW9uIGNvbnZlcnRTZWxlY3RSZXN1bHQocXVlcnk6IGFueSwgcm93czogYW55W10pOiBhbnkge1xuICBpZiAocXVlcnkuX2NvbHVtbnMgJiYgcXVlcnkuX2NvbHVtbnMubGVuZ3RoID09PSAxICYmXG4gICAgIShxdWVyeS5fY29sdW1uc1swXS5fbmFtZSA9PT0gJyonICYmIHF1ZXJ5Ll9jb2x1bW5zWzBdLl9tb2RpZmllcnMubGVuZ3RoID09PSAwKSkge1xuICAgIGlmIChyb3dzLmxlbmd0aCA9PSAwKSByZXR1cm4gW107XG4gICAgbGV0IGNvbHVtbk5hbWUgPSBPYmplY3Qua2V5cyhyb3dzWzBdKVswXTsgLy8gZWFzaWVyIHRoYW4gcmV2ZXJzZSBlbmdpbmVlcmluZyBmcm9tIHRoZSBjb2x1bW4gbW9kaWZpZXJzXG4gICAgbGV0IHZhbHVlcyA9IHJvd3MubWFwKChyb3c6IGFueSkgPT4gcm93W2NvbHVtbk5hbWVdKTtcblxuICAgIGlmIChxdWVyeS5fY29sdW1uc1swXS5fbmFtZSA9PT0gJyonICYmIHF1ZXJ5Ll9jb2x1bW5zWzBdLl9tb2RpZmllcnMuc29tZSgobTogYW55KSA9PiBtLm5hbWUgPT09ICdjb3VudCcpKSB7XG4gICAgICByZXR1cm4gdmFsdWVzLm1hcCgodmFsdWU6IGFueSkgPT4gTnVtYmVyKHZhbHVlKSk7IC8vIHN0cmluZyB0byBudW1iZXIgY29udmVyc2lvbiBmb3IgUEcgY291bnQgdmFsdWVzXG4gICAgfVxuICAgIHJldHVybiB2YWx1ZXM7XG4gIH0gZWxzZSB7XG4gICAgY29udmVydEFsaWFzRmllbGRzKHF1ZXJ5LCByb3dzKTtcbiAgICByZXR1cm4gcm93cztcbiAgfVxufVxuXG5mdW5jdGlvbiBjb252ZXJ0QWxpYXNGaWVsZHMocXVlcnk6IGFueSwgcm93czogYW55W10pOiB2b2lkIHtcbiAgbGV0IGFsaWFzQnlOYW1lID0gZ2V0Q29sdW1uQWxpYXNlc0J5TmFtZShxdWVyeSk7XG4gIGlmIChPYmplY3Qua2V5cyhhbGlhc0J5TmFtZSkubGVuZ3RoID09PSAwKSByZXR1cm47XG5cbiAgcm93cy5mb3JFYWNoKChyb3c6IGFueSkgPT4ge1xuICAgIE9iamVjdC5rZXlzKHJvdykuZm9yRWFjaCgobmFtZTogc3RyaW5nKSA9PiB7XG4gICAgICBpZiAoYWxpYXNCeU5hbWVbbmFtZV0pIHtcbiAgICAgICAgcm93W2FsaWFzQnlOYW1lW25hbWVdXSA9IHJvd1tuYW1lXTtcbiAgICAgICAgZGVsZXRlIHJvd1tuYW1lXTtcbiAgICAgIH1cbiAgICB9KTtcbiAgfSk7XG59XG5cbmZ1bmN0aW9uIGdldENvbHVtbkFsaWFzZXNCeU5hbWUocXVlcnk6IGFueSk6IGFueSB7XG4gIGxldCBhbGlhc0J5TmFtZSA9IHt9IGFzIGFueTtcblxuICBpZiAocXVlcnkuX2NvbHVtbnMgJiYgcXVlcnkuX2NvbHVtbnMubGVuZ3RoID4gMCkge1xuICAgIHF1ZXJ5Ll9jb2x1bW5zLmZvckVhY2goKGNvbHVtbjogYW55KSA9PiB7XG4gICAgICBpZiAoY29sdW1uLl9uYW1lICYmIGNvbHVtbi5fbmFtZS5hbGlhcyAmJiBjb2x1bW4uX21vZGlmaWVycy5sZW5ndGggPT09IDApIHtcbiAgICAgICAgYWxpYXNCeU5hbWVbY29sdW1uLl9uYW1lLm5hbWVdID0gY29sdW1uLl9uYW1lLmFsaWFzO1xuICAgICAgfSBlbHNlIGlmIChjb2x1bW4uX25hbWUgPT09ICcqJyAmJiBjb2x1bW4uX21vZGlmaWVycy5sZW5ndGggPT09IDApIHtcbiAgICAgICAgZ2V0QWxpYXNDb2x1bW5zT2ZUYWJsZShjb2x1bW4uX3RhYmxlKS5mb3JFYWNoKChjb2x1bW46IGFueSkgPT4ge1xuICAgICAgICAgIGFsaWFzQnlOYW1lW2NvbHVtbi5fbmFtZS5uYW1lXSA9IGNvbHVtbi5fbmFtZS5hbGlhcztcbiAgICAgICAgfSk7XG4gICAgICB9XG4gICAgfSk7XG4gIH0gZWxzZSB7XG4gICAgbGV0IHRhYmxlcyA9IHF1ZXJ5Ll90YWJsZSA/IFtxdWVyeS5fdGFibGVdIDogcXVlcnkuX3RhYmxlcztcbiAgICB0YWJsZXMuZm9yRWFjaCgodGFibGU6IGFueSkgPT4ge1xuICAgICAgZ2V0QWxpYXNDb2x1bW5zT2ZUYWJsZSh0YWJsZSkuZm9yRWFjaCgoY29sdW1uOiBhbnkpID0+IHtcbiAgICAgICAgYWxpYXNCeU5hbWVbY29sdW1uLl9uYW1lLm5hbWVdID0gY29sdW1uLl9uYW1lLmFsaWFzO1xuICAgICAgfSk7XG5cbiAgICAgIGxldCBqb2luVGFibGUgPSB0YWJsZS5fcGFyZW50O1xuICAgICAgd2hpbGUgKGpvaW5UYWJsZSkge1xuICAgICAgICBnZXRBbGlhc0NvbHVtbnNPZlRhYmxlKGpvaW5UYWJsZSkuZm9yRWFjaCgoY29sdW1uOiBhbnkpID0+IHtcbiAgICAgICAgICBhbGlhc0J5TmFtZVtjb2x1bW4uX25hbWUubmFtZV0gPSBjb2x1bW4uX25hbWUuYWxpYXM7XG4gICAgICAgIH0pO1xuICAgICAgICBqb2luVGFibGUgPSBqb2luVGFibGUuX3BhcmVudDtcbiAgICAgIH1cbiAgICB9KTtcbiAgfVxuXG4gIHJldHVybiBhbGlhc0J5TmFtZTtcbn1cblxuZnVuY3Rpb24gZ2V0QWxpYXNDb2x1bW5zT2ZUYWJsZSh0YWJsZTogYW55KTogYW55W10ge1xuICByZXR1cm4gT2JqZWN0LmtleXModGFibGUpLm1hcChrZXkgPT4gdGFibGVba2V5XSkuZmlsdGVyKChjb2x1bW46IGFueSkgPT4gY29sdW1uICYmIGNvbHVtbi5fbmFtZSAmJiBjb2x1bW4uX25hbWUuYWxpYXMpO1xufVxuXG4gOyh7fSk7IC8vIEAtLWVuZC1vZi1maWxlLWZvci1tb2R1bGU9dGFvbi10eXBlLXNxbCBsaWIvY29udmVydGVyL3Jlc3VsdC1jb252ZXJ0ZXIudHMiXX0=
@@ -1,8 +0,0 @@
1
- import { createQueryConverter } from "./query-converter";
2
- import { convertSubstitutionParam } from './param-converter';
3
- export function convertQueryToSQL(query, options, engine) {
4
- return createQueryConverter((param) => convertSubstitutionParam(param), options, engine)(query);
5
- }
6
- ;
7
- ({}); // @--end-of-file-for-module=taon-type-sql lib/converter/sql-converter.ts
8
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3FsLWNvbnZlcnRlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3RtcC1saWJzLWZvci1kaXN0L3Rhb24tdHlwZS1zcWwvcHJvamVjdHMvdGFvbi10eXBlLXNxbC9zcmMvbGliL2NvbnZlcnRlci9zcWwtY29udmVydGVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUVBLE9BQU8sRUFBQyxvQkFBb0IsRUFBQyxNQUFNLG1CQUFtQixDQUFDO0FBQ3ZELE9BQU8sRUFBQyx3QkFBd0IsRUFBQyxNQUFNLG1CQUFtQixDQUFDO0FBRzNELE1BQU0sVUFBVSxpQkFBaUIsQ0FBQyxLQUFVLEVBQUUsT0FBeUIsRUFBRSxNQUFtQjtJQUN4RixPQUFPLG9CQUFvQixDQUFDLENBQUMsS0FBVSxFQUFFLEVBQUUsQ0FBQyx3QkFBd0IsQ0FBQyxLQUFLLENBQUMsRUFBRSxPQUFPLEVBQUUsTUFBTSxDQUFDLENBQUMsS0FBSyxDQUFDLENBQUM7QUFDekcsQ0FBQztBQUVBLENBQUM7QUFBQSxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMseUVBQXlFIiwic291cmNlc0NvbnRlbnQiOlsiXG5cbmltcG9ydCB7Y3JlYXRlUXVlcnlDb252ZXJ0ZXJ9IGZyb20gXCIuL3F1ZXJ5LWNvbnZlcnRlclwiO1xuaW1wb3J0IHtjb252ZXJ0U3Vic3RpdHV0aW9uUGFyYW19IGZyb20gJy4vcGFyYW0tY29udmVydGVyJztcbmltcG9ydCB7UXVlcnlFbmdpbmUsIENvbnZlcnRlck9wdGlvbnN9IGZyb20gXCIuL3R5cGVzXCI7XG5cbmV4cG9ydCBmdW5jdGlvbiBjb252ZXJ0UXVlcnlUb1NRTChxdWVyeTogYW55LCBvcHRpb25zOiBDb252ZXJ0ZXJPcHRpb25zLCBlbmdpbmU6IFF1ZXJ5RW5naW5lKTogc3RyaW5nIHtcbiAgICByZXR1cm4gY3JlYXRlUXVlcnlDb252ZXJ0ZXIoKHBhcmFtOiBhbnkpID0+IGNvbnZlcnRTdWJzdGl0dXRpb25QYXJhbShwYXJhbSksIG9wdGlvbnMsIGVuZ2luZSkocXVlcnkpO1xufVxuXG4gOyh7fSk7IC8vIEAtLWVuZC1vZi1maWxlLWZvci1tb2R1bGU9dGFvbi10eXBlLXNxbCBsaWIvY29udmVydGVyL3NxbC1jb252ZXJ0ZXIudHMiXX0=
@@ -1,39 +0,0 @@
1
- export function number(param) {
2
- let result = Number(param);
3
- if (Number.isNaN(result))
4
- throw new Error('Invalid number parameter in SQL query: ' + param);
5
- return result;
6
- }
7
- export function boolean(param) {
8
- if (typeof param === 'boolean')
9
- return param;
10
- if (param instanceof Boolean)
11
- return param.valueOf();
12
- if (param === 'true')
13
- return true;
14
- if (param === 'false')
15
- return false;
16
- throw new Error('Invalid boolean parameter in SQL query: ' + param);
17
- }
18
- export function date(param) {
19
- if (param instanceof Date)
20
- return param; // @ts-ignore
21
- if (typeof param === 'number' || param instanceof Number)
22
- return new Date(param);
23
- if (typeof param === 'string' || param instanceof String) {
24
- if (Number.isNaN(Date.parse(String(param))))
25
- throw new Error('Invalid date parameter in SQL query: ' + param); // @ts-ignore
26
- return new Date(param);
27
- }
28
- throw new Error('Invalid date parameter in SQL query: ' + param);
29
- }
30
- export function string(param) {
31
- if (typeof param === 'string')
32
- return param;
33
- if (param instanceof String)
34
- return param.valueOf();
35
- throw new Error('Invalid string parameter in SQL query: ' + param);
36
- }
37
- ;
38
- ({}); // @--end-of-file-for-module=taon-type-sql lib/converter/type-converter.ts
39
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHlwZS1jb252ZXJ0ZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi90bXAtbGlicy1mb3ItZGlzdC90YW9uLXR5cGUtc3FsL3Byb2plY3RzL3Rhb24tdHlwZS1zcWwvc3JjL2xpYi9jb252ZXJ0ZXIvdHlwZS1jb252ZXJ0ZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBR0EsTUFBTSxVQUFVLE1BQU0sQ0FBQyxLQUFVO0lBQy9CLElBQUksTUFBTSxHQUFHLE1BQU0sQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUMzQixJQUFJLE1BQU0sQ0FBQyxLQUFLLENBQUMsTUFBTSxDQUFDO1FBQUUsTUFBTSxJQUFJLEtBQUssQ0FBQyx5Q0FBeUMsR0FBRyxLQUFLLENBQUMsQ0FBQztJQUM3RixPQUFPLE1BQU0sQ0FBQztBQUNoQixDQUFDO0FBRUQsTUFBTSxVQUFVLE9BQU8sQ0FBQyxLQUFVO0lBQ2hDLElBQUksT0FBTyxLQUFLLEtBQUssU0FBUztRQUFFLE9BQU8sS0FBSyxDQUFDO0lBQzdDLElBQUksS0FBSyxZQUFZLE9BQU87UUFBRSxPQUFPLEtBQUssQ0FBQyxPQUFPLEVBQUUsQ0FBQztJQUNyRCxJQUFJLEtBQUssS0FBSyxNQUFNO1FBQUUsT0FBTyxJQUFJLENBQUM7SUFDbEMsSUFBSSxLQUFLLEtBQUssT0FBTztRQUFFLE9BQU8sS0FBSyxDQUFDO0lBQ3BDLE1BQU0sSUFBSSxLQUFLLENBQUMsMENBQTBDLEdBQUcsS0FBSyxDQUFDLENBQUM7QUFDdEUsQ0FBQztBQUVELE1BQU0sVUFBVSxJQUFJLENBQUMsS0FBVTtJQUM3QixJQUFJLEtBQUssWUFBWSxJQUFJO1FBQUUsT0FBTyxLQUFLLENBQUMsQ0FBQyxhQUFhO0lBQ3RELElBQUksT0FBTyxLQUFLLEtBQUssUUFBUSxJQUFJLEtBQUssWUFBWSxNQUFNO1FBQUUsT0FBTyxJQUFJLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUNqRixJQUFJLE9BQU8sS0FBSyxLQUFLLFFBQVEsSUFBSSxLQUFLLFlBQVksTUFBTSxFQUFFLENBQUM7UUFDekQsSUFBSSxNQUFNLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsTUFBTSxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUM7WUFBRSxNQUFNLElBQUksS0FBSyxDQUFDLHVDQUF1QyxHQUFHLEtBQUssQ0FBQyxDQUFDLENBQUMsYUFBYTtRQUM1SCxPQUFPLElBQUksSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQ3pCLENBQUM7SUFDRCxNQUFNLElBQUksS0FBSyxDQUFDLHVDQUF1QyxHQUFHLEtBQUssQ0FBQyxDQUFDO0FBQ25FLENBQUM7QUFFRCxNQUFNLFVBQVUsTUFBTSxDQUFDLEtBQVU7SUFDL0IsSUFBSSxPQUFPLEtBQUssS0FBSyxRQUFRO1FBQUUsT0FBTyxLQUFLLENBQUM7SUFDNUMsSUFBSSxLQUFLLFlBQVksTUFBTTtRQUFFLE9BQU8sS0FBSyxDQUFDLE9BQU8sRUFBRSxDQUFDO0lBQ3BELE1BQU0sSUFBSSxLQUFLLENBQUMseUNBQXlDLEdBQUcsS0FBSyxDQUFDLENBQUM7QUFDckUsQ0FBQztBQUVBLENBQUM7QUFBQSxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsMEVBQTBFIiwic291cmNlc0NvbnRlbnQiOlsiXG5cblxuZXhwb3J0IGZ1bmN0aW9uIG51bWJlcihwYXJhbTogYW55KTogbnVtYmVyIHtcbiAgbGV0IHJlc3VsdCA9IE51bWJlcihwYXJhbSk7XG4gIGlmIChOdW1iZXIuaXNOYU4ocmVzdWx0KSkgdGhyb3cgbmV3IEVycm9yKCdJbnZhbGlkIG51bWJlciBwYXJhbWV0ZXIgaW4gU1FMIHF1ZXJ5OiAnICsgcGFyYW0pO1xuICByZXR1cm4gcmVzdWx0O1xufVxuXG5leHBvcnQgZnVuY3Rpb24gYm9vbGVhbihwYXJhbTogYW55KTogYm9vbGVhbiB7XG4gIGlmICh0eXBlb2YgcGFyYW0gPT09ICdib29sZWFuJykgcmV0dXJuIHBhcmFtO1xuICBpZiAocGFyYW0gaW5zdGFuY2VvZiBCb29sZWFuKSByZXR1cm4gcGFyYW0udmFsdWVPZigpO1xuICBpZiAocGFyYW0gPT09ICd0cnVlJykgcmV0dXJuIHRydWU7XG4gIGlmIChwYXJhbSA9PT0gJ2ZhbHNlJykgcmV0dXJuIGZhbHNlO1xuICB0aHJvdyBuZXcgRXJyb3IoJ0ludmFsaWQgYm9vbGVhbiBwYXJhbWV0ZXIgaW4gU1FMIHF1ZXJ5OiAnICsgcGFyYW0pO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gZGF0ZShwYXJhbTogYW55KTogRGF0ZSB7XG4gIGlmIChwYXJhbSBpbnN0YW5jZW9mIERhdGUpIHJldHVybiBwYXJhbTsgLy8gQHRzLWlnbm9yZVxuICBpZiAodHlwZW9mIHBhcmFtID09PSAnbnVtYmVyJyB8fCBwYXJhbSBpbnN0YW5jZW9mIE51bWJlcikgcmV0dXJuIG5ldyBEYXRlKHBhcmFtKTtcbiAgaWYgKHR5cGVvZiBwYXJhbSA9PT0gJ3N0cmluZycgfHwgcGFyYW0gaW5zdGFuY2VvZiBTdHJpbmcpIHtcbiAgICBpZiAoTnVtYmVyLmlzTmFOKERhdGUucGFyc2UoU3RyaW5nKHBhcmFtKSkpKSB0aHJvdyBuZXcgRXJyb3IoJ0ludmFsaWQgZGF0ZSBwYXJhbWV0ZXIgaW4gU1FMIHF1ZXJ5OiAnICsgcGFyYW0pOyAvLyBAdHMtaWdub3JlXG4gICAgcmV0dXJuIG5ldyBEYXRlKHBhcmFtKTtcbiAgfVxuICB0aHJvdyBuZXcgRXJyb3IoJ0ludmFsaWQgZGF0ZSBwYXJhbWV0ZXIgaW4gU1FMIHF1ZXJ5OiAnICsgcGFyYW0pO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gc3RyaW5nKHBhcmFtOiBhbnkpOiBzdHJpbmcge1xuICBpZiAodHlwZW9mIHBhcmFtID09PSAnc3RyaW5nJykgcmV0dXJuIHBhcmFtO1xuICBpZiAocGFyYW0gaW5zdGFuY2VvZiBTdHJpbmcpIHJldHVybiBwYXJhbS52YWx1ZU9mKCk7XG4gIHRocm93IG5ldyBFcnJvcignSW52YWxpZCBzdHJpbmcgcGFyYW1ldGVyIGluIFNRTCBxdWVyeTogJyArIHBhcmFtKTtcbn1cblxuIDsoe30pOyAvLyBALS1lbmQtb2YtZmlsZS1mb3ItbW9kdWxlPXRhb24tdHlwZS1zcWwgbGliL2NvbnZlcnRlci90eXBlLWNvbnZlcnRlci50cyJdfQ==
@@ -1,4 +0,0 @@
1
- ;
2
- ({}); // @--end-of-file-for-module=taon-type-sql lib/converter/types.ts
3
- export {};
4
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHlwZXMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi90bXAtbGlicy1mb3ItZGlzdC90YW9uLXR5cGUtc3FsL3Byb2plY3RzL3Rhb24tdHlwZS1zcWwvc3JjL2xpYi9jb252ZXJ0ZXIvdHlwZXMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBVUMsQ0FBQztBQUFBLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxpRUFBaUUiLCJzb3VyY2VzQ29udGVudCI6WyJcblxuXG5leHBvcnQgdHlwZSBRdWVyeUVuZ2luZSA9ICdwZycgfCAnbXlzcWwnO1xuXG5leHBvcnQgaW50ZXJmYWNlIENvbnZlcnRlck9wdGlvbnMge1xuICAgIGxpbmVCcmVhazogc3RyaW5nLFxuICAgIG5hbWVFc2NhcGU6IHN0cmluZ1xufVxuXG4gOyh7fSk7IC8vIEAtLWVuZC1vZi1maWxlLWZvci1tb2R1bGU9dGFvbi10eXBlLXNxbCBsaWIvY29udmVydGVyL3R5cGVzLnRzIl19
@@ -1,23 +0,0 @@
1
- export { default as BasicColumn } from './builder/column/basic-column';
2
- export { default as BooleanColumn } from './builder/column/boolean-column';
3
- export { default as ComparableColumn } from './builder/column/comparable-column';
4
- export { default as DateColumn } from './builder/column/date-column';
5
- export { default as NumberColumn } from './builder/column/number-column';
6
- export { default as QueryColumn } from './builder/column/query-column';
7
- export { default as StringColumn } from './builder/column/string-column';
8
- export { default as ValueColumn } from './builder/column/value-column';
9
- export { default as QueryColumnCondition } from './builder/condition/query-column-condition';
10
- export { default as QueryCondition } from './builder/condition/query-condition';
11
- export { default as QueryConditionChain } from './builder/condition/query-condition-chain';
12
- export { default as QueryJoinCondition } from './builder/condition/query-join-condition';
13
- export { default as JoinedTables } from './builder/join/joined-tables';
14
- export { default as JoinedTablesChain } from './builder/join/joined-tables-chain';
15
- export { default as QueryOrdering } from './builder/other/query-ordering';
16
- export { default as SelectQuery } from './builder/query/select-query';
17
- export { default as TableQuery } from './builder/query/table-query';
18
- export { default as TableConditionQuery } from './builder/query/table-condition-query';
19
- export { default as QuerySource } from './builder/query-source';
20
- export { default as QueryTable } from './builder/query-table';
21
- export { default as MySqlQuerySource } from './client/mysql';
22
- ({}); // @--end-of-file-for-module=taon-type-sql lib/index.ts
23
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi90bXAtbGlicy1mb3ItZGlzdC90YW9uLXR5cGUtc3FsL3Byb2plY3RzL3Rhb24tdHlwZS1zcWwvc3JjL2xpYi9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFLQSxPQUFPLEVBQUUsT0FBTyxJQUFJLFdBQVcsRUFBRSxNQUFNLCtCQUErQixDQUFDO0FBQ3ZFLE9BQU8sRUFBRSxPQUFPLElBQUksYUFBYSxFQUFFLE1BQU0saUNBQWlDLENBQUM7QUFDM0UsT0FBTyxFQUFFLE9BQU8sSUFBSSxnQkFBZ0IsRUFBRSxNQUFNLG9DQUFvQyxDQUFDO0FBQ2pGLE9BQU8sRUFBRSxPQUFPLElBQUksVUFBVSxFQUFFLE1BQU0sOEJBQThCLENBQUM7QUFDckUsT0FBTyxFQUFFLE9BQU8sSUFBSSxZQUFZLEVBQUUsTUFBTSxnQ0FBZ0MsQ0FBQztBQUN6RSxPQUFPLEVBQUUsT0FBTyxJQUFJLFdBQVcsRUFBRSxNQUFNLCtCQUErQixDQUFDO0FBQ3ZFLE9BQU8sRUFBRSxPQUFPLElBQUksWUFBWSxFQUFFLE1BQU0sZ0NBQWdDLENBQUM7QUFDekUsT0FBTyxFQUFFLE9BQU8sSUFBSSxXQUFXLEVBQUUsTUFBTSwrQkFBK0IsQ0FBQztBQUV2RSxPQUFPLEVBQUUsT0FBTyxJQUFJLG9CQUFvQixFQUFFLE1BQU0sNENBQTRDLENBQUM7QUFDN0YsT0FBTyxFQUFFLE9BQU8sSUFBSSxjQUFjLEVBQUUsTUFBTSxxQ0FBcUMsQ0FBQztBQUNoRixPQUFPLEVBQUUsT0FBTyxJQUFJLG1CQUFtQixFQUFFLE1BQU0sMkNBQTJDLENBQUM7QUFDM0YsT0FBTyxFQUFFLE9BQU8sSUFBSSxrQkFBa0IsRUFBRSxNQUFNLDBDQUEwQyxDQUFDO0FBRXpGLE9BQU8sRUFBRSxPQUFPLElBQUksWUFBWSxFQUFFLE1BQU0sOEJBQThCLENBQUM7QUFDdkUsT0FBTyxFQUFFLE9BQU8sSUFBSSxpQkFBaUIsRUFBRSxNQUFNLG9DQUFvQyxDQUFDO0FBRWxGLE9BQU8sRUFBRSxPQUFPLElBQUksYUFBYSxFQUFFLE1BQU0sZ0NBQWdDLENBQUM7QUFFMUUsT0FBTyxFQUFFLE9BQU8sSUFBSSxXQUFXLEVBQUUsTUFBTSw4QkFBOEIsQ0FBQztBQUN0RSxPQUFPLEVBQUUsT0FBTyxJQUFJLFVBQVUsRUFBRSxNQUFNLDZCQUE2QixDQUFDO0FBQ3BFLE9BQU8sRUFBRSxPQUFPLElBQUksbUJBQW1CLEVBQUUsTUFBTSx1Q0FBdUMsQ0FBQztBQUV2RixPQUFPLEVBQUUsT0FBTyxJQUFJLFdBQVcsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBQ2hFLE9BQU8sRUFBRSxPQUFPLElBQUksVUFBVSxFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUFJOUQsT0FBTyxFQUFFLE9BQU8sSUFBSSxnQkFBZ0IsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBUTNELENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyx1REFBdUQiLCJzb3VyY2VzQ29udGVudCI6WyJcblxuXG5cblxuZXhwb3J0IHsgZGVmYXVsdCBhcyBCYXNpY0NvbHVtbiB9IGZyb20gJy4vYnVpbGRlci9jb2x1bW4vYmFzaWMtY29sdW1uJztcbmV4cG9ydCB7IGRlZmF1bHQgYXMgQm9vbGVhbkNvbHVtbiB9IGZyb20gJy4vYnVpbGRlci9jb2x1bW4vYm9vbGVhbi1jb2x1bW4nO1xuZXhwb3J0IHsgZGVmYXVsdCBhcyBDb21wYXJhYmxlQ29sdW1uIH0gZnJvbSAnLi9idWlsZGVyL2NvbHVtbi9jb21wYXJhYmxlLWNvbHVtbic7XG5leHBvcnQgeyBkZWZhdWx0IGFzIERhdGVDb2x1bW4gfSBmcm9tICcuL2J1aWxkZXIvY29sdW1uL2RhdGUtY29sdW1uJztcbmV4cG9ydCB7IGRlZmF1bHQgYXMgTnVtYmVyQ29sdW1uIH0gZnJvbSAnLi9idWlsZGVyL2NvbHVtbi9udW1iZXItY29sdW1uJztcbmV4cG9ydCB7IGRlZmF1bHQgYXMgUXVlcnlDb2x1bW4gfSBmcm9tICcuL2J1aWxkZXIvY29sdW1uL3F1ZXJ5LWNvbHVtbic7XG5leHBvcnQgeyBkZWZhdWx0IGFzIFN0cmluZ0NvbHVtbiB9IGZyb20gJy4vYnVpbGRlci9jb2x1bW4vc3RyaW5nLWNvbHVtbic7XG5leHBvcnQgeyBkZWZhdWx0IGFzIFZhbHVlQ29sdW1uIH0gZnJvbSAnLi9idWlsZGVyL2NvbHVtbi92YWx1ZS1jb2x1bW4nO1xuXG5leHBvcnQgeyBkZWZhdWx0IGFzIFF1ZXJ5Q29sdW1uQ29uZGl0aW9uIH0gZnJvbSAnLi9idWlsZGVyL2NvbmRpdGlvbi9xdWVyeS1jb2x1bW4tY29uZGl0aW9uJztcbmV4cG9ydCB7IGRlZmF1bHQgYXMgUXVlcnlDb25kaXRpb24gfSBmcm9tICcuL2J1aWxkZXIvY29uZGl0aW9uL3F1ZXJ5LWNvbmRpdGlvbic7XG5leHBvcnQgeyBkZWZhdWx0IGFzIFF1ZXJ5Q29uZGl0aW9uQ2hhaW4gfSBmcm9tICcuL2J1aWxkZXIvY29uZGl0aW9uL3F1ZXJ5LWNvbmRpdGlvbi1jaGFpbic7XG5leHBvcnQgeyBkZWZhdWx0IGFzIFF1ZXJ5Sm9pbkNvbmRpdGlvbiB9IGZyb20gJy4vYnVpbGRlci9jb25kaXRpb24vcXVlcnktam9pbi1jb25kaXRpb24nO1xuXG5leHBvcnQgeyBkZWZhdWx0IGFzIEpvaW5lZFRhYmxlcyB9IGZyb20gJy4vYnVpbGRlci9qb2luL2pvaW5lZC10YWJsZXMnO1xuZXhwb3J0IHsgZGVmYXVsdCBhcyBKb2luZWRUYWJsZXNDaGFpbiB9IGZyb20gJy4vYnVpbGRlci9qb2luL2pvaW5lZC10YWJsZXMtY2hhaW4nO1xuXG5leHBvcnQgeyBkZWZhdWx0IGFzIFF1ZXJ5T3JkZXJpbmcgfSBmcm9tICcuL2J1aWxkZXIvb3RoZXIvcXVlcnktb3JkZXJpbmcnO1xuXG5leHBvcnQgeyBkZWZhdWx0IGFzIFNlbGVjdFF1ZXJ5IH0gZnJvbSAnLi9idWlsZGVyL3F1ZXJ5L3NlbGVjdC1xdWVyeSc7XG5leHBvcnQgeyBkZWZhdWx0IGFzIFRhYmxlUXVlcnkgfSBmcm9tICcuL2J1aWxkZXIvcXVlcnkvdGFibGUtcXVlcnknO1xuZXhwb3J0IHsgZGVmYXVsdCBhcyBUYWJsZUNvbmRpdGlvblF1ZXJ5IH0gZnJvbSAnLi9idWlsZGVyL3F1ZXJ5L3RhYmxlLWNvbmRpdGlvbi1xdWVyeSc7XG5cbmV4cG9ydCB7IGRlZmF1bHQgYXMgUXVlcnlTb3VyY2UgfSBmcm9tICcuL2J1aWxkZXIvcXVlcnktc291cmNlJztcbmV4cG9ydCB7IGRlZmF1bHQgYXMgUXVlcnlUYWJsZSB9IGZyb20gJy4vYnVpbGRlci9xdWVyeS10YWJsZSc7XG5cblxuXG5leHBvcnQgeyBkZWZhdWx0IGFzIE15U3FsUXVlcnlTb3VyY2UgfSBmcm9tICcuL2NsaWVudC9teXNxbCc7XG5cblxuZXhwb3J0IHsgUXVlcnlQcm9jZXNzb3JPcHRpb25zIH0gZnJvbSAnLi9jbGllbnQvcXVlcnktcHJvY2Vzc29yJztcblxuXG5leHBvcnQgdHlwZSBQcm9wc0VudGl0eVNRTDxJRW50aXR5VHlwZT4gPSB7IFtwcm9wIGluIGtleW9mIFJlcXVpcmVkPElFbnRpdHlUeXBlPl06IGFueTsgfVxuXG4gOyh7fSk7IC8vIEAtLWVuZC1vZi1maWxlLWZvci1tb2R1bGU9dGFvbi10eXBlLXNxbCBsaWIvaW5kZXgudHMiXX0=
@@ -1,2 +0,0 @@
1
- export * from './lib';
2
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljLWFwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3RtcC1saWJzLWZvci1kaXN0L3Rhb24tdHlwZS1zcWwvcHJvamVjdHMvdGFvbi10eXBlLXNxbC9zcmMvcHVibGljLWFwaS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxjQUFjLE9BQU8sQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCAqIGZyb20gJy4vbGliJztcbiJdfQ==
@@ -1,5 +0,0 @@
1
- /**
2
- * Generated bundle index. Do not edit.
3
- */
4
- export * from './public-api';
5
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFvbi10eXBlLXNxbC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3RtcC1saWJzLWZvci1kaXN0L3Rhb24tdHlwZS1zcWwvcHJvamVjdHMvdGFvbi10eXBlLXNxbC9zcmMvdGFvbi10eXBlLXNxbC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7R0FFRztBQUVILGNBQWMsY0FBYyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBHZW5lcmF0ZWQgYnVuZGxlIGluZGV4LiBEbyBub3QgZWRpdC5cbiAqL1xuXG5leHBvcnQgKiBmcm9tICcuL3B1YmxpYy1hcGknO1xuIl19
@@ -1,13 +0,0 @@
1
- import QueryColumn from "./query-column";
2
- import NumberColumn from "./number-column";
3
- export default class BasicColumn extends QueryColumn {
4
- constructor(table, name, modifiers = []) {
5
- super(table, name, modifiers);
6
- }
7
- count() {
8
- return new NumberColumn(this._table, this._name, this._modifiers.concat({ name: 'count' }));
9
- }
10
- }
11
- ;
12
- ({}); // @--end-of-file-for-module=taon-type-sql lib/builder/column/basic-column.ts
13
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmFzaWMtY29sdW1uLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vdG1wLWxpYnMtZm9yLWRpc3Qtd2Vic3FsL3Rhb24tdHlwZS1zcWwvcHJvamVjdHMvdGFvbi10eXBlLXNxbC9zcmMvbGliL2J1aWxkZXIvY29sdW1uL2Jhc2ljLWNvbHVtbi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFHQSxPQUFPLFdBQVcsTUFBTSxnQkFBZ0IsQ0FBQztBQUN6QyxPQUFPLFlBQVksTUFBTSxpQkFBaUIsQ0FBQztBQUszQyxNQUFNLENBQUMsT0FBTyxPQUFPLFdBQW1ELFNBQVEsV0FBcUI7SUFFakcsWUFBWSxLQUFZLEVBQUUsSUFBZ0IsRUFBRSxZQUE4QixFQUFFO1FBQ3hFLEtBQUssQ0FBQyxLQUFLLEVBQUUsSUFBSSxFQUFFLFNBQVMsQ0FBQyxDQUFDO0lBQ2xDLENBQUM7SUFFRCxLQUFLO1FBQ0QsT0FBTyxJQUFJLFlBQVksQ0FBQyxJQUFJLENBQUMsTUFBTSxFQUFFLElBQUksQ0FBQyxLQUFLLEVBQUUsSUFBSSxDQUFDLFVBQVUsQ0FBQyxNQUFNLENBQUMsRUFBRSxJQUFJLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQyxDQUFDO0lBQ2hHLENBQUM7Q0FDSjtBQUVBLENBQUM7QUFBQSxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsNkVBQTZFIiwic291cmNlc0NvbnRlbnQiOlsiXG5cbmltcG9ydCBRdWVyeVRhYmxlIGZyb20gXCIuLi9xdWVyeS10YWJsZVwiO1xuaW1wb3J0IFF1ZXJ5Q29sdW1uIGZyb20gXCIuL3F1ZXJ5LWNvbHVtblwiO1xuaW1wb3J0IE51bWJlckNvbHVtbiBmcm9tIFwiLi9udW1iZXItY29sdW1uXCI7XG5pbXBvcnQge0NvbHVtbk1vZGlmaWVyLCBDb2x1bW5OYW1lfSBmcm9tIFwiLi4vaGVscGVycy9pbnRlcm5hbC10eXBlc1wiO1xuXG5cblxuZXhwb3J0IGRlZmF1bHQgY2xhc3MgQmFzaWNDb2x1bW48VGFibGUgZXh0ZW5kcyBRdWVyeVRhYmxlPGFueSwgYW55PiwgVD4gZXh0ZW5kcyBRdWVyeUNvbHVtbjxUYWJsZSwgVD4ge1xuXG4gICAgY29uc3RydWN0b3IodGFibGU6IFRhYmxlLCBuYW1lOiBDb2x1bW5OYW1lLCBtb2RpZmllcnM6IENvbHVtbk1vZGlmaWVyW10gPSBbXSkge1xuICAgICAgICBzdXBlcih0YWJsZSwgbmFtZSwgbW9kaWZpZXJzKTtcbiAgICB9XG5cbiAgICBjb3VudCgpOiBOdW1iZXJDb2x1bW48VGFibGU+IHtcbiAgICAgICAgcmV0dXJuIG5ldyBOdW1iZXJDb2x1bW4odGhpcy5fdGFibGUsIHRoaXMuX25hbWUsIHRoaXMuX21vZGlmaWVycy5jb25jYXQoeyBuYW1lOiAnY291bnQnIH0pKTtcbiAgICB9XG59XG5cbiA7KHt9KTsgLy8gQC0tZW5kLW9mLWZpbGUtZm9yLW1vZHVsZT10YW9uLXR5cGUtc3FsIGxpYi9idWlsZGVyL2NvbHVtbi9iYXNpYy1jb2x1bW4udHMiXX0=
@@ -1,14 +0,0 @@
1
- import NumberColumn from "./number-column";
2
- import ValueColumn from "./value-column";
3
- export default class BooleanColumn extends ValueColumn {
4
- constructor(table, name, modifiers = []) {
5
- super(table, name, modifiers);
6
- this._type = 'boolean';
7
- }
8
- count() {
9
- return new NumberColumn(this._table, this._name, this._modifiers.concat({ name: 'count' }));
10
- }
11
- }
12
- ;
13
- ({}); // @--end-of-file-for-module=taon-type-sql lib/builder/column/boolean-column.ts
14
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYm9vbGVhbi1jb2x1bW4uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi90bXAtbGlicy1mb3ItZGlzdC13ZWJzcWwvdGFvbi10eXBlLXNxbC9wcm9qZWN0cy90YW9uLXR5cGUtc3FsL3NyYy9saWIvYnVpbGRlci9jb2x1bW4vYm9vbGVhbi1jb2x1bW4udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBR0EsT0FBTyxZQUFZLE1BQU0saUJBQWlCLENBQUM7QUFDM0MsT0FBTyxXQUFXLE1BQU0sZ0JBQWdCLENBQUM7QUFJekMsTUFBTSxDQUFDLE9BQU8sT0FBTyxhQUFrRCxTQUFRLFdBQTJCO0lBSXRHLFlBQVksS0FBWSxFQUFFLElBQWdCLEVBQUUsWUFBOEIsRUFBRTtRQUN4RSxLQUFLLENBQUMsS0FBSyxFQUFFLElBQUksRUFBRSxTQUFTLENBQUMsQ0FBQztRQUh4QixVQUFLLEdBQUcsU0FBUyxDQUFDO0lBSTVCLENBQUM7SUFFRCxLQUFLO1FBQ0QsT0FBTyxJQUFJLFlBQVksQ0FBQyxJQUFJLENBQUMsTUFBTSxFQUFFLElBQUksQ0FBQyxLQUFLLEVBQUUsSUFBSSxDQUFDLFVBQVUsQ0FBQyxNQUFNLENBQUMsRUFBRSxJQUFJLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQyxDQUFDO0lBQ2hHLENBQUM7Q0FFSjtBQUVBLENBQUM7QUFBQSxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsK0VBQStFIiwic291cmNlc0NvbnRlbnQiOlsiXG5cbmltcG9ydCBRdWVyeVRhYmxlIGZyb20gXCIuLi9xdWVyeS10YWJsZVwiO1xuaW1wb3J0IE51bWJlckNvbHVtbiBmcm9tIFwiLi9udW1iZXItY29sdW1uXCI7XG5pbXBvcnQgVmFsdWVDb2x1bW4gZnJvbSBcIi4vdmFsdWUtY29sdW1uXCI7XG5pbXBvcnQge0NvbHVtbk1vZGlmaWVyLCBDb2x1bW5OYW1lfSBmcm9tIFwiLi4vaGVscGVycy9pbnRlcm5hbC10eXBlc1wiO1xuXG5cbmV4cG9ydCBkZWZhdWx0IGNsYXNzIEJvb2xlYW5Db2x1bW48VGFibGUgZXh0ZW5kcyBRdWVyeVRhYmxlPGFueSwgYW55Pj4gZXh0ZW5kcyBWYWx1ZUNvbHVtbjxUYWJsZSwgYm9vbGVhbj4ge1xuXG4gICAgcHJvdGVjdGVkIF90eXBlID0gJ2Jvb2xlYW4nO1xuXG4gICAgY29uc3RydWN0b3IodGFibGU6IFRhYmxlLCBuYW1lOiBDb2x1bW5OYW1lLCBtb2RpZmllcnM6IENvbHVtbk1vZGlmaWVyW10gPSBbXSkge1xuICAgICAgICBzdXBlcih0YWJsZSwgbmFtZSwgbW9kaWZpZXJzKTtcbiAgICB9XG5cbiAgICBjb3VudCgpOiBOdW1iZXJDb2x1bW48VGFibGU+IHtcbiAgICAgICAgcmV0dXJuIG5ldyBOdW1iZXJDb2x1bW4odGhpcy5fdGFibGUsIHRoaXMuX25hbWUsIHRoaXMuX21vZGlmaWVycy5jb25jYXQoeyBuYW1lOiAnY291bnQnIH0pKTtcbiAgICB9XG5cbn1cblxuIDsoe30pOyAvLyBALS1lbmQtb2YtZmlsZS1mb3ItbW9kdWxlPXRhb24tdHlwZS1zcWwgbGliL2J1aWxkZXIvY29sdW1uL2Jvb2xlYW4tY29sdW1uLnRzIl19