taon-type-sql 18.0.9

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 (325) hide show
  1. package/assets/shared/shared_folder_info.txt +7 -0
  2. package/browser/README.md +24 -0
  3. package/browser/esm2022/lib/builder/column/basic-column.mjs +13 -0
  4. package/browser/esm2022/lib/builder/column/boolean-column.mjs +14 -0
  5. package/browser/esm2022/lib/builder/column/comparable-column.mjs +41 -0
  6. package/browser/esm2022/lib/builder/column/date-column.mjs +14 -0
  7. package/browser/esm2022/lib/builder/column/number-column.mjs +19 -0
  8. package/browser/esm2022/lib/builder/column/query-column.mjs +21 -0
  9. package/browser/esm2022/lib/builder/column/string-column.mjs +36 -0
  10. package/browser/esm2022/lib/builder/column/value-column.mjs +30 -0
  11. package/browser/esm2022/lib/builder/condition/query-column-condition.mjs +19 -0
  12. package/browser/esm2022/lib/builder/condition/query-condition-chain.mjs +28 -0
  13. package/browser/esm2022/lib/builder/condition/query-condition.mjs +6 -0
  14. package/browser/esm2022/lib/builder/condition/query-join-condition.mjs +19 -0
  15. package/browser/esm2022/lib/builder/helpers/generics-helper.mjs +5 -0
  16. package/browser/esm2022/lib/builder/helpers/internal-types.mjs +4 -0
  17. package/browser/esm2022/lib/builder/join/joined-tables-chain.mjs +14 -0
  18. package/browser/esm2022/lib/builder/join/joined-tables.mjs +22 -0
  19. package/browser/esm2022/lib/builder/other/query-ordering.mjs +17 -0
  20. package/browser/esm2022/lib/builder/query/select-query.mjs +48 -0
  21. package/browser/esm2022/lib/builder/query/table-condition-query.mjs +25 -0
  22. package/browser/esm2022/lib/builder/query/table-query.mjs +54 -0
  23. package/browser/esm2022/lib/builder/query-source.mjs +20 -0
  24. package/browser/esm2022/lib/builder/query-table.mjs +24 -0
  25. package/browser/esm2022/lib/client/mysql.mjs +10 -0
  26. package/browser/esm2022/lib/client/query-processor.mjs +45 -0
  27. package/browser/esm2022/lib/converter/param-converter.mjs +27 -0
  28. package/browser/esm2022/lib/converter/parameterized-converter.mjs +17 -0
  29. package/browser/esm2022/lib/converter/query-converter.mjs +282 -0
  30. package/browser/esm2022/lib/converter/result-converter.mjs +88 -0
  31. package/browser/esm2022/lib/converter/sql-converter.mjs +8 -0
  32. package/browser/esm2022/lib/converter/type-converter.mjs +39 -0
  33. package/browser/esm2022/lib/converter/types.mjs +4 -0
  34. package/browser/esm2022/lib/index.mjs +23 -0
  35. package/browser/esm2022/public-api.mjs +2 -0
  36. package/browser/esm2022/taon-type-sql.mjs +5 -0
  37. package/browser/fesm2022/taon-type-sql.mjs +877 -0
  38. package/browser/fesm2022/taon-type-sql.mjs.map +1 -0
  39. package/browser/index.d.ts +6 -0
  40. package/browser/lib/builder/column/basic-column.d.ts +9 -0
  41. package/browser/lib/builder/column/boolean-column.d.ts +10 -0
  42. package/browser/lib/builder/column/comparable-column.d.ts +19 -0
  43. package/browser/lib/builder/column/date-column.d.ts +10 -0
  44. package/browser/lib/builder/column/number-column.d.ts +11 -0
  45. package/browser/lib/builder/column/query-column.d.ts +19 -0
  46. package/browser/lib/builder/column/string-column.d.ts +18 -0
  47. package/browser/lib/builder/column/value-column.d.ts +16 -0
  48. package/browser/lib/builder/condition/query-column-condition.d.ts +14 -0
  49. package/browser/lib/builder/condition/query-condition-chain.d.ts +18 -0
  50. package/browser/lib/builder/condition/query-condition.d.ts +8 -0
  51. package/browser/lib/builder/condition/query-join-condition.d.ts +13 -0
  52. package/browser/lib/builder/helpers/generics-helper.d.ts +3 -0
  53. package/browser/lib/builder/helpers/internal-types.d.ts +16 -0
  54. package/browser/lib/builder/join/joined-tables-chain.d.ts +12 -0
  55. package/browser/lib/builder/join/joined-tables.d.ts +13 -0
  56. package/browser/lib/builder/other/query-ordering.d.ts +11 -0
  57. package/browser/lib/builder/query/select-query.d.ts +30 -0
  58. package/browser/lib/builder/query/table-condition-query.d.ts +17 -0
  59. package/browser/lib/builder/query/table-query.d.ts +24 -0
  60. package/browser/lib/builder/query-source.d.ts +15 -0
  61. package/browser/lib/builder/query-table.d.ts +16 -0
  62. package/browser/lib/client/mysql.d.ts +6 -0
  63. package/browser/lib/client/query-processor.d.ts +11 -0
  64. package/browser/lib/converter/param-converter.d.ts +3 -0
  65. package/browser/lib/converter/parameterized-converter.d.ts +6 -0
  66. package/browser/lib/converter/query-converter.d.ts +3 -0
  67. package/browser/lib/converter/result-converter.d.ts +3 -0
  68. package/browser/lib/converter/sql-converter.d.ts +3 -0
  69. package/browser/lib/converter/type-converter.d.ts +5 -0
  70. package/browser/lib/converter/types.d.ts +6 -0
  71. package/browser/lib/index.d.ts +26 -0
  72. package/browser/package.json +25 -0
  73. package/browser/public-api.d.ts +2 -0
  74. package/client/README.md +24 -0
  75. package/client/esm2022/lib/builder/column/basic-column.mjs +13 -0
  76. package/client/esm2022/lib/builder/column/boolean-column.mjs +14 -0
  77. package/client/esm2022/lib/builder/column/comparable-column.mjs +41 -0
  78. package/client/esm2022/lib/builder/column/date-column.mjs +14 -0
  79. package/client/esm2022/lib/builder/column/number-column.mjs +19 -0
  80. package/client/esm2022/lib/builder/column/query-column.mjs +21 -0
  81. package/client/esm2022/lib/builder/column/string-column.mjs +36 -0
  82. package/client/esm2022/lib/builder/column/value-column.mjs +30 -0
  83. package/client/esm2022/lib/builder/condition/query-column-condition.mjs +19 -0
  84. package/client/esm2022/lib/builder/condition/query-condition-chain.mjs +28 -0
  85. package/client/esm2022/lib/builder/condition/query-condition.mjs +6 -0
  86. package/client/esm2022/lib/builder/condition/query-join-condition.mjs +19 -0
  87. package/client/esm2022/lib/builder/helpers/generics-helper.mjs +5 -0
  88. package/client/esm2022/lib/builder/helpers/internal-types.mjs +4 -0
  89. package/client/esm2022/lib/builder/join/joined-tables-chain.mjs +14 -0
  90. package/client/esm2022/lib/builder/join/joined-tables.mjs +22 -0
  91. package/client/esm2022/lib/builder/other/query-ordering.mjs +17 -0
  92. package/client/esm2022/lib/builder/query/select-query.mjs +48 -0
  93. package/client/esm2022/lib/builder/query/table-condition-query.mjs +25 -0
  94. package/client/esm2022/lib/builder/query/table-query.mjs +54 -0
  95. package/client/esm2022/lib/builder/query-source.mjs +20 -0
  96. package/client/esm2022/lib/builder/query-table.mjs +24 -0
  97. package/client/esm2022/lib/client/mysql.mjs +10 -0
  98. package/client/esm2022/lib/client/query-processor.mjs +45 -0
  99. package/client/esm2022/lib/converter/param-converter.mjs +27 -0
  100. package/client/esm2022/lib/converter/parameterized-converter.mjs +17 -0
  101. package/client/esm2022/lib/converter/query-converter.mjs +282 -0
  102. package/client/esm2022/lib/converter/result-converter.mjs +88 -0
  103. package/client/esm2022/lib/converter/sql-converter.mjs +8 -0
  104. package/client/esm2022/lib/converter/type-converter.mjs +39 -0
  105. package/client/esm2022/lib/converter/types.mjs +4 -0
  106. package/client/esm2022/lib/index.mjs +23 -0
  107. package/client/esm2022/public-api.mjs +2 -0
  108. package/client/esm2022/taon-type-sql.mjs +5 -0
  109. package/client/fesm2022/taon-type-sql.mjs +877 -0
  110. package/client/fesm2022/taon-type-sql.mjs.map +1 -0
  111. package/client/index.d.ts +6 -0
  112. package/client/lib/builder/column/basic-column.d.ts +9 -0
  113. package/client/lib/builder/column/boolean-column.d.ts +10 -0
  114. package/client/lib/builder/column/comparable-column.d.ts +19 -0
  115. package/client/lib/builder/column/date-column.d.ts +10 -0
  116. package/client/lib/builder/column/number-column.d.ts +11 -0
  117. package/client/lib/builder/column/query-column.d.ts +19 -0
  118. package/client/lib/builder/column/string-column.d.ts +18 -0
  119. package/client/lib/builder/column/value-column.d.ts +16 -0
  120. package/client/lib/builder/condition/query-column-condition.d.ts +14 -0
  121. package/client/lib/builder/condition/query-condition-chain.d.ts +18 -0
  122. package/client/lib/builder/condition/query-condition.d.ts +8 -0
  123. package/client/lib/builder/condition/query-join-condition.d.ts +13 -0
  124. package/client/lib/builder/helpers/generics-helper.d.ts +3 -0
  125. package/client/lib/builder/helpers/internal-types.d.ts +16 -0
  126. package/client/lib/builder/join/joined-tables-chain.d.ts +12 -0
  127. package/client/lib/builder/join/joined-tables.d.ts +13 -0
  128. package/client/lib/builder/other/query-ordering.d.ts +11 -0
  129. package/client/lib/builder/query/select-query.d.ts +30 -0
  130. package/client/lib/builder/query/table-condition-query.d.ts +17 -0
  131. package/client/lib/builder/query/table-query.d.ts +24 -0
  132. package/client/lib/builder/query-source.d.ts +15 -0
  133. package/client/lib/builder/query-table.d.ts +16 -0
  134. package/client/lib/client/mysql.d.ts +6 -0
  135. package/client/lib/client/query-processor.d.ts +11 -0
  136. package/client/lib/converter/param-converter.d.ts +3 -0
  137. package/client/lib/converter/parameterized-converter.d.ts +6 -0
  138. package/client/lib/converter/query-converter.d.ts +3 -0
  139. package/client/lib/converter/result-converter.d.ts +3 -0
  140. package/client/lib/converter/sql-converter.d.ts +3 -0
  141. package/client/lib/converter/type-converter.d.ts +5 -0
  142. package/client/lib/converter/types.d.ts +6 -0
  143. package/client/lib/index.d.ts +26 -0
  144. package/client/public-api.d.ts +2 -0
  145. package/index.d.ts +1 -0
  146. package/index.js +7 -0
  147. package/index.js.map +1 -0
  148. package/lib/build-info._auto-generated_.d.ts +1 -0
  149. package/lib/build-info._auto-generated_.js +5 -0
  150. package/lib/build-info._auto-generated_.js.map +1 -0
  151. package/lib/builder/column/basic-column.d.ts +8 -0
  152. package/lib/builder/column/basic-column.js +19 -0
  153. package/lib/builder/column/basic-column.js.map +1 -0
  154. package/lib/builder/column/boolean-column.d.ts +9 -0
  155. package/lib/builder/column/boolean-column.js +20 -0
  156. package/lib/builder/column/boolean-column.js.map +1 -0
  157. package/lib/builder/column/comparable-column.d.ts +18 -0
  158. package/lib/builder/column/comparable-column.js +46 -0
  159. package/lib/builder/column/comparable-column.js.map +1 -0
  160. package/lib/builder/column/date-column.d.ts +9 -0
  161. package/lib/builder/column/date-column.js +20 -0
  162. package/lib/builder/column/date-column.js.map +1 -0
  163. package/lib/builder/column/number-column.d.ts +10 -0
  164. package/lib/builder/column/number-column.js +25 -0
  165. package/lib/builder/column/number-column.js.map +1 -0
  166. package/lib/builder/column/query-column.d.ts +18 -0
  167. package/lib/builder/column/query-column.js +23 -0
  168. package/lib/builder/column/query-column.js.map +1 -0
  169. package/lib/builder/column/string-column.d.ts +17 -0
  170. package/lib/builder/column/string-column.js +42 -0
  171. package/lib/builder/column/string-column.js.map +1 -0
  172. package/lib/builder/column/value-column.d.ts +15 -0
  173. package/lib/builder/column/value-column.js +34 -0
  174. package/lib/builder/column/value-column.js.map +1 -0
  175. package/lib/builder/condition/query-column-condition.d.ts +13 -0
  176. package/lib/builder/condition/query-column-condition.js +28 -0
  177. package/lib/builder/condition/query-column-condition.js.map +1 -0
  178. package/lib/builder/condition/query-condition-chain.d.ts +17 -0
  179. package/lib/builder/condition/query-condition-chain.js +34 -0
  180. package/lib/builder/condition/query-condition-chain.js.map +1 -0
  181. package/lib/builder/condition/query-condition.d.ts +7 -0
  182. package/lib/builder/condition/query-condition.js +10 -0
  183. package/lib/builder/condition/query-condition.js.map +1 -0
  184. package/lib/builder/condition/query-join-condition.d.ts +12 -0
  185. package/lib/builder/condition/query-join-condition.js +24 -0
  186. package/lib/builder/condition/query-join-condition.js.map +1 -0
  187. package/lib/builder/helpers/generics-helper.d.ts +2 -0
  188. package/lib/builder/helpers/generics-helper.js +10 -0
  189. package/lib/builder/helpers/generics-helper.js.map +1 -0
  190. package/lib/builder/helpers/internal-types.d.ts +15 -0
  191. package/lib/builder/helpers/internal-types.js +4 -0
  192. package/lib/builder/helpers/internal-types.js.map +1 -0
  193. package/lib/builder/join/joined-tables-chain.d.ts +11 -0
  194. package/lib/builder/join/joined-tables-chain.js +16 -0
  195. package/lib/builder/join/joined-tables-chain.js.map +1 -0
  196. package/lib/builder/join/joined-tables.d.ts +12 -0
  197. package/lib/builder/join/joined-tables.js +24 -0
  198. package/lib/builder/join/joined-tables.js.map +1 -0
  199. package/lib/builder/other/query-ordering.d.ts +10 -0
  200. package/lib/builder/other/query-ordering.js +19 -0
  201. package/lib/builder/other/query-ordering.js.map +1 -0
  202. package/lib/builder/query/select-query.d.ts +29 -0
  203. package/lib/builder/query/select-query.js +70 -0
  204. package/lib/builder/query/select-query.js.map +1 -0
  205. package/lib/builder/query/table-condition-query.d.ts +16 -0
  206. package/lib/builder/query/table-condition-query.js +27 -0
  207. package/lib/builder/query/table-condition-query.js.map +1 -0
  208. package/lib/builder/query/table-query.d.ts +23 -0
  209. package/lib/builder/query/table-query.js +63 -0
  210. package/lib/builder/query/table-query.js.map +1 -0
  211. package/lib/builder/query-source.d.ts +14 -0
  212. package/lib/builder/query-source.js +22 -0
  213. package/lib/builder/query-source.js.map +1 -0
  214. package/lib/builder/query-table.d.ts +15 -0
  215. package/lib/builder/query-table.js +26 -0
  216. package/lib/builder/query-table.js.map +1 -0
  217. package/lib/client/mysql.d.ts +5 -0
  218. package/lib/client/mysql.js +15 -0
  219. package/lib/client/mysql.js.map +1 -0
  220. package/lib/client/pg.d.ts +5 -0
  221. package/lib/client/pg.js +15 -0
  222. package/lib/client/pg.js.map +1 -0
  223. package/lib/client/query-processor.d.ts +10 -0
  224. package/lib/client/query-processor.js +75 -0
  225. package/lib/client/query-processor.js.map +1 -0
  226. package/lib/converter/param-converter.d.ts +2 -0
  227. package/lib/converter/param-converter.js +31 -0
  228. package/lib/converter/param-converter.js.map +1 -0
  229. package/lib/converter/parameterized-converter.d.ts +5 -0
  230. package/lib/converter/parameterized-converter.js +18 -0
  231. package/lib/converter/parameterized-converter.js.map +1 -0
  232. package/lib/converter/query-converter.d.ts +2 -0
  233. package/lib/converter/query-converter.js +286 -0
  234. package/lib/converter/query-converter.js.map +1 -0
  235. package/lib/converter/result-converter.d.ts +2 -0
  236. package/lib/converter/result-converter.js +89 -0
  237. package/lib/converter/result-converter.js.map +1 -0
  238. package/lib/converter/sql-converter.d.ts +2 -0
  239. package/lib/converter/sql-converter.js +9 -0
  240. package/lib/converter/sql-converter.js.map +1 -0
  241. package/lib/converter/type-converter.d.ts +4 -0
  242. package/lib/converter/type-converter.js +43 -0
  243. package/lib/converter/type-converter.js.map +1 -0
  244. package/lib/converter/types.d.ts +5 -0
  245. package/lib/converter/types.js +3 -0
  246. package/lib/converter/types.js.map +1 -0
  247. package/lib/index.d.ts +25 -0
  248. package/lib/index.js +48 -0
  249. package/lib/index.js.map +1 -0
  250. package/package.json +38 -0
  251. package/src.d.ts +6 -0
  252. package/taon.jsonc +23 -0
  253. package/tmp-environment.json +359 -0
  254. package/websql/README.md +24 -0
  255. package/websql/esm2022/lib/builder/column/basic-column.mjs +13 -0
  256. package/websql/esm2022/lib/builder/column/boolean-column.mjs +14 -0
  257. package/websql/esm2022/lib/builder/column/comparable-column.mjs +41 -0
  258. package/websql/esm2022/lib/builder/column/date-column.mjs +14 -0
  259. package/websql/esm2022/lib/builder/column/number-column.mjs +19 -0
  260. package/websql/esm2022/lib/builder/column/query-column.mjs +21 -0
  261. package/websql/esm2022/lib/builder/column/string-column.mjs +36 -0
  262. package/websql/esm2022/lib/builder/column/value-column.mjs +30 -0
  263. package/websql/esm2022/lib/builder/condition/query-column-condition.mjs +19 -0
  264. package/websql/esm2022/lib/builder/condition/query-condition-chain.mjs +28 -0
  265. package/websql/esm2022/lib/builder/condition/query-condition.mjs +6 -0
  266. package/websql/esm2022/lib/builder/condition/query-join-condition.mjs +19 -0
  267. package/websql/esm2022/lib/builder/helpers/generics-helper.mjs +5 -0
  268. package/websql/esm2022/lib/builder/helpers/internal-types.mjs +4 -0
  269. package/websql/esm2022/lib/builder/join/joined-tables-chain.mjs +14 -0
  270. package/websql/esm2022/lib/builder/join/joined-tables.mjs +22 -0
  271. package/websql/esm2022/lib/builder/other/query-ordering.mjs +17 -0
  272. package/websql/esm2022/lib/builder/query/select-query.mjs +48 -0
  273. package/websql/esm2022/lib/builder/query/table-condition-query.mjs +25 -0
  274. package/websql/esm2022/lib/builder/query/table-query.mjs +54 -0
  275. package/websql/esm2022/lib/builder/query-source.mjs +20 -0
  276. package/websql/esm2022/lib/builder/query-table.mjs +24 -0
  277. package/websql/esm2022/lib/client/mysql.mjs +10 -0
  278. package/websql/esm2022/lib/client/query-processor.mjs +45 -0
  279. package/websql/esm2022/lib/converter/param-converter.mjs +27 -0
  280. package/websql/esm2022/lib/converter/parameterized-converter.mjs +17 -0
  281. package/websql/esm2022/lib/converter/query-converter.mjs +282 -0
  282. package/websql/esm2022/lib/converter/result-converter.mjs +88 -0
  283. package/websql/esm2022/lib/converter/sql-converter.mjs +8 -0
  284. package/websql/esm2022/lib/converter/type-converter.mjs +39 -0
  285. package/websql/esm2022/lib/converter/types.mjs +4 -0
  286. package/websql/esm2022/lib/index.mjs +23 -0
  287. package/websql/esm2022/public-api.mjs +2 -0
  288. package/websql/esm2022/taon-type-sql.mjs +5 -0
  289. package/websql/fesm2022/taon-type-sql.mjs +877 -0
  290. package/websql/fesm2022/taon-type-sql.mjs.map +1 -0
  291. package/websql/index.d.ts +6 -0
  292. package/websql/lib/builder/column/basic-column.d.ts +9 -0
  293. package/websql/lib/builder/column/boolean-column.d.ts +10 -0
  294. package/websql/lib/builder/column/comparable-column.d.ts +19 -0
  295. package/websql/lib/builder/column/date-column.d.ts +10 -0
  296. package/websql/lib/builder/column/number-column.d.ts +11 -0
  297. package/websql/lib/builder/column/query-column.d.ts +19 -0
  298. package/websql/lib/builder/column/string-column.d.ts +18 -0
  299. package/websql/lib/builder/column/value-column.d.ts +16 -0
  300. package/websql/lib/builder/condition/query-column-condition.d.ts +14 -0
  301. package/websql/lib/builder/condition/query-condition-chain.d.ts +18 -0
  302. package/websql/lib/builder/condition/query-condition.d.ts +8 -0
  303. package/websql/lib/builder/condition/query-join-condition.d.ts +13 -0
  304. package/websql/lib/builder/helpers/generics-helper.d.ts +3 -0
  305. package/websql/lib/builder/helpers/internal-types.d.ts +16 -0
  306. package/websql/lib/builder/join/joined-tables-chain.d.ts +12 -0
  307. package/websql/lib/builder/join/joined-tables.d.ts +13 -0
  308. package/websql/lib/builder/other/query-ordering.d.ts +11 -0
  309. package/websql/lib/builder/query/select-query.d.ts +30 -0
  310. package/websql/lib/builder/query/table-condition-query.d.ts +17 -0
  311. package/websql/lib/builder/query/table-query.d.ts +24 -0
  312. package/websql/lib/builder/query-source.d.ts +15 -0
  313. package/websql/lib/builder/query-table.d.ts +16 -0
  314. package/websql/lib/client/mysql.d.ts +6 -0
  315. package/websql/lib/client/query-processor.d.ts +11 -0
  316. package/websql/lib/converter/param-converter.d.ts +3 -0
  317. package/websql/lib/converter/parameterized-converter.d.ts +6 -0
  318. package/websql/lib/converter/query-converter.d.ts +3 -0
  319. package/websql/lib/converter/result-converter.d.ts +3 -0
  320. package/websql/lib/converter/sql-converter.d.ts +3 -0
  321. package/websql/lib/converter/type-converter.d.ts +5 -0
  322. package/websql/lib/converter/types.d.ts +6 -0
  323. package/websql/lib/index.d.ts +26 -0
  324. package/websql/package.json +25 -0
  325. package/websql/public-api.d.ts +2 -0
@@ -0,0 +1,27 @@
1
+ export function convertSubstitutionParam(param) {
2
+ if (param == null)
3
+ return 'NULL';
4
+ if (typeof param === 'string' || param instanceof String) {
5
+ return `'${String(param)}'`;
6
+ }
7
+ else if (typeof param === 'boolean' || param instanceof Boolean) {
8
+ return String(param).toUpperCase();
9
+ }
10
+ else if (param instanceof Date) {
11
+ return `'${param.toISOString()}'`;
12
+ }
13
+ else if (typeof param === 'number' || param instanceof Number) {
14
+ return String(param);
15
+ }
16
+ return `'${JSON.stringify(param)}'`;
17
+ }
18
+ export function convertEscapedParam(param) {
19
+ if (typeof param === 'object' && !(param == null || param instanceof String || param instanceof Number ||
20
+ param instanceof Boolean || param instanceof Date)) {
21
+ return JSON.stringify(param);
22
+ }
23
+ return param;
24
+ }
25
+ ;
26
+ ({}); // @--end-of-file-for-module=taon-type-sql lib/converter/param-converter.ts
27
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGFyYW0tY29udmVydGVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vdG1wLWxpYnMtZm9yLWRpc3Qtd2Vic3FsL3Rhb24tdHlwZS1zcWwvcHJvamVjdHMvdGFvbi10eXBlLXNxbC9zcmMvbGliL2NvbnZlcnRlci9wYXJhbS1jb252ZXJ0ZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBR0EsTUFBTSxVQUFVLHdCQUF3QixDQUFDLEtBQVU7SUFDL0MsSUFBSSxLQUFLLElBQUksSUFBSTtRQUFFLE9BQU8sTUFBTSxDQUFDO0lBQ2pDLElBQUksT0FBTyxLQUFLLEtBQUssUUFBUSxJQUFJLEtBQUssWUFBWSxNQUFNLEVBQUUsQ0FBQztRQUN2RCxPQUFPLElBQUksTUFBTSxDQUFDLEtBQUssQ0FBQyxHQUFHLENBQUM7SUFDaEMsQ0FBQztTQUFNLElBQUksT0FBTyxLQUFLLEtBQUssU0FBUyxJQUFJLEtBQUssWUFBWSxPQUFPLEVBQUUsQ0FBQztRQUNoRSxPQUFPLE1BQU0sQ0FBQyxLQUFLLENBQUMsQ0FBQyxXQUFXLEVBQUUsQ0FBQztJQUN2QyxDQUFDO1NBQU0sSUFBSSxLQUFLLFlBQVksSUFBSSxFQUFFLENBQUM7UUFDL0IsT0FBTyxJQUFJLEtBQUssQ0FBQyxXQUFXLEVBQUUsR0FBRyxDQUFDO0lBQ3RDLENBQUM7U0FBTSxJQUFJLE9BQU8sS0FBSyxLQUFLLFFBQVEsSUFBSSxLQUFLLFlBQVksTUFBTSxFQUFFLENBQUM7UUFDOUQsT0FBTyxNQUFNLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDekIsQ0FBQztJQUNELE9BQU8sSUFBSSxJQUFJLENBQUMsU0FBUyxDQUFDLEtBQUssQ0FBQyxHQUFHLENBQUM7QUFDeEMsQ0FBQztBQUlELE1BQU0sVUFBVSxtQkFBbUIsQ0FBQyxLQUFVO0lBQzFDLElBQUksT0FBTyxLQUFLLEtBQUssUUFBUSxJQUFJLENBQUMsQ0FBQyxLQUFLLElBQUksSUFBSSxJQUFJLEtBQUssWUFBWSxNQUFNLElBQUksS0FBSyxZQUFZLE1BQU07UUFDbEcsS0FBSyxZQUFZLE9BQU8sSUFBSSxLQUFLLFlBQVksSUFBSSxDQUFDLEVBQUUsQ0FBQztRQUNyRCxPQUFPLElBQUksQ0FBQyxTQUFTLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDakMsQ0FBQztJQUNELE9BQU8sS0FBSyxDQUFDO0FBQ2pCLENBQUM7QUFFQSxDQUFDO0FBQUEsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLDJFQUEyRSIsInNvdXJjZXNDb250ZW50IjpbIlxuXG5cbmV4cG9ydCBmdW5jdGlvbiBjb252ZXJ0U3Vic3RpdHV0aW9uUGFyYW0ocGFyYW06IGFueSk6IHN0cmluZyB7XG4gICAgaWYgKHBhcmFtID09IG51bGwpIHJldHVybiAnTlVMTCc7XG4gICAgaWYgKHR5cGVvZiBwYXJhbSA9PT0gJ3N0cmluZycgfHwgcGFyYW0gaW5zdGFuY2VvZiBTdHJpbmcpIHtcbiAgICAgICAgcmV0dXJuIGAnJHtTdHJpbmcocGFyYW0pfSdgO1xuICAgIH0gZWxzZSBpZiAodHlwZW9mIHBhcmFtID09PSAnYm9vbGVhbicgfHwgcGFyYW0gaW5zdGFuY2VvZiBCb29sZWFuKSB7XG4gICAgICAgIHJldHVybiBTdHJpbmcocGFyYW0pLnRvVXBwZXJDYXNlKCk7XG4gICAgfSBlbHNlIGlmIChwYXJhbSBpbnN0YW5jZW9mIERhdGUpIHtcbiAgICAgICAgcmV0dXJuIGAnJHtwYXJhbS50b0lTT1N0cmluZygpfSdgO1xuICAgIH0gZWxzZSBpZiAodHlwZW9mIHBhcmFtID09PSAnbnVtYmVyJyB8fCBwYXJhbSBpbnN0YW5jZW9mIE51bWJlcikge1xuICAgICAgICByZXR1cm4gU3RyaW5nKHBhcmFtKTtcbiAgICB9XG4gICAgcmV0dXJuIGAnJHtKU09OLnN0cmluZ2lmeShwYXJhbSl9J2A7XG59XG5cblxuXG5leHBvcnQgZnVuY3Rpb24gY29udmVydEVzY2FwZWRQYXJhbShwYXJhbTogYW55KSB7XG4gICAgaWYgKHR5cGVvZiBwYXJhbSA9PT0gJ29iamVjdCcgJiYgIShwYXJhbSA9PSBudWxsIHx8IHBhcmFtIGluc3RhbmNlb2YgU3RyaW5nIHx8IHBhcmFtIGluc3RhbmNlb2YgTnVtYmVyIHx8XG4gICAgICAgIHBhcmFtIGluc3RhbmNlb2YgQm9vbGVhbiB8fCBwYXJhbSBpbnN0YW5jZW9mIERhdGUpKSB7XG4gICAgICAgIHJldHVybiBKU09OLnN0cmluZ2lmeShwYXJhbSk7XG4gICAgfVxuICAgIHJldHVybiBwYXJhbTtcbn1cblxuIDsoe30pOyAvLyBALS1lbmQtb2YtZmlsZS1mb3ItbW9kdWxlPXRhb24tdHlwZS1zcWwgbGliL2NvbnZlcnRlci9wYXJhbS1jb252ZXJ0ZXIudHMiXX0=
@@ -0,0 +1,17 @@
1
+ import { createQueryConverter } from "./query-converter";
2
+ import { convertEscapedParam } from './param-converter';
3
+ let pgParamConverter = (index) => '$' + index;
4
+ let mySqlParamConverter = (index) => '?';
5
+ function convertSingleParam(param, params, paramConverter) {
6
+ params.push(convertEscapedParam(param));
7
+ return paramConverter(params.length);
8
+ }
9
+ export function convertQueryToParameterizedSQL(query, options, engine) {
10
+ let params = [];
11
+ let paramConverter = engine === 'mysql' ? mySqlParamConverter : pgParamConverter;
12
+ let sql = createQueryConverter((param) => convertSingleParam(param, params, paramConverter), options, engine)(query);
13
+ return { sql, params };
14
+ }
15
+ ;
16
+ ({}); // @--end-of-file-for-module=taon-type-sql lib/converter/parameterized-converter.ts
17
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGFyYW1ldGVyaXplZC1jb252ZXJ0ZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi90bXAtbGlicy1mb3ItZGlzdC13ZWJzcWwvdGFvbi10eXBlLXNxbC9wcm9qZWN0cy90YW9uLXR5cGUtc3FsL3NyYy9saWIvY29udmVydGVyL3BhcmFtZXRlcml6ZWQtY29udmVydGVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUVBLE9BQU8sRUFBQyxvQkFBb0IsRUFBQyxNQUFNLG1CQUFtQixDQUFDO0FBQ3ZELE9BQU8sRUFBQyxtQkFBbUIsRUFBQyxNQUFNLG1CQUFtQixDQUFDO0FBR3RELElBQUksZ0JBQWdCLEdBQUcsQ0FBQyxLQUFhLEVBQUUsRUFBRSxDQUFDLEdBQUcsR0FBRyxLQUFLLENBQUM7QUFDdEQsSUFBSSxtQkFBbUIsR0FBRyxDQUFDLEtBQWEsRUFBRSxFQUFFLENBQUMsR0FBRyxDQUFDO0FBRWpELFNBQVMsa0JBQWtCLENBQUMsS0FBVSxFQUFFLE1BQWEsRUFBRSxjQUFzQztJQUN6RixNQUFNLENBQUMsSUFBSSxDQUFDLG1CQUFtQixDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUM7SUFDeEMsT0FBTyxjQUFjLENBQUMsTUFBTSxDQUFDLE1BQU0sQ0FBQyxDQUFDO0FBQ3pDLENBQUM7QUFFRCxNQUFNLFVBQVUsOEJBQThCLENBQUMsS0FBVSxFQUFFLE9BQXlCLEVBQUUsTUFBbUI7SUFDckcsSUFBSSxNQUFNLEdBQVUsRUFBRSxDQUFDO0lBRXZCLElBQUksY0FBYyxHQUFHLE1BQU0sS0FBSyxPQUFPLENBQUMsQ0FBQyxDQUFDLG1CQUFtQixDQUFDLENBQUMsQ0FBQyxnQkFBZ0IsQ0FBQztJQUNqRixJQUFJLEdBQUcsR0FBRyxvQkFBb0IsQ0FBQyxDQUFDLEtBQVUsRUFBRSxFQUFFLENBQUMsa0JBQWtCLENBQUMsS0FBSyxFQUFFLE1BQU0sRUFBRSxjQUFjLENBQUMsRUFBRSxPQUFPLEVBQUUsTUFBTSxDQUFDLENBQUMsS0FBSyxDQUFDLENBQUM7SUFFMUgsT0FBTyxFQUFFLEdBQUcsRUFBRSxNQUFNLEVBQUUsQ0FBQztBQUMzQixDQUFDO0FBRUEsQ0FBQztBQUFBLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxtRkFBbUYiLCJzb3VyY2VzQ29udGVudCI6WyJcblxuaW1wb3J0IHtjcmVhdGVRdWVyeUNvbnZlcnRlcn0gZnJvbSBcIi4vcXVlcnktY29udmVydGVyXCI7XG5pbXBvcnQge2NvbnZlcnRFc2NhcGVkUGFyYW19IGZyb20gJy4vcGFyYW0tY29udmVydGVyJztcbmltcG9ydCB7UXVlcnlFbmdpbmUsIENvbnZlcnRlck9wdGlvbnN9IGZyb20gXCIuL3R5cGVzXCI7XG5cbmxldCBwZ1BhcmFtQ29udmVydGVyID0gKGluZGV4OiBudW1iZXIpID0+ICckJyArIGluZGV4O1xubGV0IG15U3FsUGFyYW1Db252ZXJ0ZXIgPSAoaW5kZXg6IG51bWJlcikgPT4gJz8nO1xuXG5mdW5jdGlvbiBjb252ZXJ0U2luZ2xlUGFyYW0ocGFyYW06IGFueSwgcGFyYW1zOiBhbnlbXSwgcGFyYW1Db252ZXJ0ZXI6IChwYXJhbTogYW55KSA9PiBzdHJpbmcpOiBzdHJpbmcge1xuICAgIHBhcmFtcy5wdXNoKGNvbnZlcnRFc2NhcGVkUGFyYW0ocGFyYW0pKTtcbiAgICByZXR1cm4gcGFyYW1Db252ZXJ0ZXIocGFyYW1zLmxlbmd0aCk7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBjb252ZXJ0UXVlcnlUb1BhcmFtZXRlcml6ZWRTUUwocXVlcnk6IGFueSwgb3B0aW9uczogQ29udmVydGVyT3B0aW9ucywgZW5naW5lOiBRdWVyeUVuZ2luZSkge1xuICAgIGxldCBwYXJhbXM6IGFueVtdID0gW107XG5cbiAgICBsZXQgcGFyYW1Db252ZXJ0ZXIgPSBlbmdpbmUgPT09ICdteXNxbCcgPyBteVNxbFBhcmFtQ29udmVydGVyIDogcGdQYXJhbUNvbnZlcnRlcjtcbiAgICBsZXQgc3FsID0gY3JlYXRlUXVlcnlDb252ZXJ0ZXIoKHBhcmFtOiBhbnkpID0+IGNvbnZlcnRTaW5nbGVQYXJhbShwYXJhbSwgcGFyYW1zLCBwYXJhbUNvbnZlcnRlciksIG9wdGlvbnMsIGVuZ2luZSkocXVlcnkpO1xuXG4gICAgcmV0dXJuIHsgc3FsLCBwYXJhbXMgfTtcbn1cblxuIDsoe30pOyAvLyBALS1lbmQtb2YtZmlsZS1mb3ItbW9kdWxlPXRhb24tdHlwZS1zcWwgbGliL2NvbnZlcnRlci9wYXJhbWV0ZXJpemVkLWNvbnZlcnRlci50cyJdfQ==
@@ -0,0 +1,282 @@
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,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicXVlcnktY29udmVydGVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vdG1wLWxpYnMtZm9yLWRpc3Qtd2Vic3FsL3Rhb24tdHlwZS1zcWwvcHJvamVjdHMvdGFvbi10eXBlLXNxbC9zcmMvbGliL2NvbnZlcnRlci9xdWVyeS1jb252ZXJ0ZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBRUEsT0FBTyxFQUFFLE1BQU0sRUFBRSxNQUFNLEVBQUUsSUFBSSxFQUFFLE9BQU8sRUFBRSxNQUFNLGtCQUFrQixDQUFDO0FBSWpFLE1BQU0sVUFBVSxvQkFBb0IsQ0FBQyxjQUFzQyxFQUFFLE9BQXlCLEVBQUUsTUFBbUI7SUFFdkgsT0FBTyxZQUFZLENBQUM7SUFFcEIsU0FBUyxZQUFZLENBQUMsS0FBVTtRQUM1QixJQUFJLEtBQUssQ0FBQyxPQUFPLEtBQUssUUFBUTtZQUFFLE9BQU8sa0JBQWtCLENBQUMsS0FBSyxDQUFDLENBQUM7UUFDakUsSUFBSSxLQUFLLENBQUMsT0FBTyxLQUFLLFFBQVE7WUFBRSxPQUFPLGtCQUFrQixDQUFDLEtBQUssQ0FBQyxDQUFDO1FBQ2pFLElBQUksS0FBSyxDQUFDLE9BQU8sS0FBSyxRQUFRO1lBQUUsT0FBTyxrQkFBa0IsQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUNqRSxJQUFJLEtBQUssQ0FBQyxPQUFPLEtBQUssUUFBUTtZQUFFLE9BQU8sa0JBQWtCLENBQUMsS0FBSyxDQUFDLENBQUM7UUFDakUsTUFBTSxJQUFJLEtBQUssQ0FBQyxxQkFBcUIsR0FBRyxLQUFLLENBQUMsT0FBTyxDQUFDLENBQUM7SUFDM0QsQ0FBQztJQUVELFNBQVMsa0JBQWtCLENBQUMsS0FBVTtRQUNsQyxJQUFJLENBQUMsR0FBRyxjQUFjLEdBQUcsWUFBWSxDQUFDLEtBQUssQ0FBQyxNQUFNLENBQUMsQ0FBQztRQUNwRCxDQUFDLElBQUksaUJBQWlCLENBQUMsS0FBSyxDQUFDLFdBQVcsQ0FBQyxDQUFDO1FBQzFD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QUM7SUFDOUQsQ0FBQztJQUVELFNBQVMsYUFBYSxDQUFDLElBQVksRUFBRSxLQUFVO1FBQzNDLElBQUksSUFBSSxLQUFLLFFBQVE7WUFBRSxPQUFPLE1BQU0sQ0FBQyxLQUFLLENBQUMsQ0FBQzthQUN2QyxJQUFJLElBQUksS0FBSyxTQUFTO1lBQUUsT0FBTyxPQUFPLENBQUMsS0FBSyxDQUFDLENBQUM7YUFDOUMsSUFBSSxJQUFJLEtBQUssTUFBTTtZQUFFLE9BQU8sSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDO2FBQ3hDLElBQUksSUFBSSxLQUFLLFFBQVE7WUFBRSxPQUFPLE1BQU0sQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUNqRCxPQUFPLEtBQUssQ0FBQztJQUNqQixDQUFDO0FBQ0wsQ0FBQztBQUVBLENBQUM7QUFBQSxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsMkVBQTJFIiwic291cmNlc0NvbnRlbnQiOlsiXG5cbmltcG9ydCB7IHN0cmluZywgbnVtYmVyLCBkYXRlLCBib29sZWFuIH0gZnJvbSAnLi90eXBlLWNvbnZlcnRlcic7XG5pbXBvcnQgeyBRdWVyeUVuZ2luZSwgQ29udmVydGVyT3B0aW9ucyB9IGZyb20gXCIuL3R5cGVzXCI7XG5cblxuZXhwb3J0IGZ1bmN0aW9uIGNyZWF0ZVF1ZXJ5Q29udmVydGVyKHBhcmFtQ29udmVydGVyOiAocGFyYW06IGFueSkgPT4gc3RyaW5nLCBvcHRpb25zOiBDb252ZXJ0ZXJPcHRpb25zLCBlbmdpbmU6IFF1ZXJ5RW5naW5lKSB7XG5cbiAgICByZXR1cm4gY29udmVydFF1ZXJ5O1xuXG4gICAgZnVuY3Rpb24gY29udmVydFF1ZXJ5KHF1ZXJ5OiBhbnkpOiBzdHJpbmcge1xuICAgICAgICBpZiAocXVlcnkuX2FjdGlvbiA9PT0gJ3NlbGVjdCcpIHJldHVybiBjb252ZXJ0U2VsZWN0UXVlcnkocXVlcnkpO1xuICAgICAgICBpZiAocXVlcnkuX2FjdGlvbiA9PT0gJ2RlbGV0ZScpIHJldHVybiBjb252ZXJ0RGVsZXRlUXVlcnkocXVlcnkpO1xuICAgICAgICBpZiAocXVlcnkuX2FjdGlvbiA9PT0gJ3VwZGF0ZScpIHJldHVybiBjb252ZXJ0VXBkYXRlUXVlcnkocXVlcnkpO1xuICAgICAgICBpZiAocXVlcnkuX2FjdGlvbiA9PT0gJ2luc2VydCcpIHJldHVybiBjb252ZXJ0SW5zZXJ0UXVlcnkocXVlcnkpO1xuICAgICAgICB0aHJvdyBuZXcgRXJyb3IoJ1Vua25vd24gcXVlcnkgdHlwZTonICsgcXVlcnkuX2FjdGlvbik7XG4gICAgfVxuXG4gICAgZnVuY3Rpb24gY29udmVydERlbGV0ZVF1ZXJ5KHF1ZXJ5OiBhbnkpOiBzdHJpbmcge1xuICAgICAgICBsZXQgcyA9ICdERUxFVEUgRlJPTSAnICsgY29udmVydFRhYmxlKHF1ZXJ5Ll90YWJsZSk7XG4gICAgICAgIHMgKz0gY29udmVydENvbmRpdGlvbnMocXVlcnkuX2NvbmRpdGlvbnMpO1xuICAgICAgICByZXR1cm4gcztcbiAgICB9XG5cbiAgICBmdW5jdGlvbiBjb252ZXJ0VXBkYXRlUXVlcnkocXVlcnk6IGFueSk6IHN0cmluZyB7XG4gICAgICAgIGxldCBzID0gJ1VQREFURSAnICsgY29udmVydFRhYmxlKHF1ZXJ5Ll90YWJsZSkgKyAnIFNFVCAnO1xuICAgICAgICBzICs9IGNvbnZlcnRVcGRhdGVTZXR0ZXJzKHF1ZXJ5Ll90YWJsZSwgcXVlcnkuX2VudGl0eSk7XG4gICAgICAgIHMgKz0gY29udmVydENvbmRpdGlvbnMocXVlcnkuX2NvbmRpdGlvbnMpO1xuICAgICAgICByZXR1cm4gcztcbiAgICB9XG5cbiAgICBmdW5jdGlvbiBjb252ZXJ0VXBkYXRlU2V0dGVycyh0YWJsZTogYW55LCBlbnRpdHk6IGFueSk6IHN0cmluZyB7XG4gICAgICAgIHJldHVybiBPYmplY3Qua2V5cyhlbnRpdHkpLnNvcnQoKS5tYXAoa2V5ID0+IHtcbiAgICAgICAgICAgIGxldCB2YWx1ZSA9IGVudGl0eVtrZXldO1xuICAgICAgICAgICAgbGV0IGNvbHVtbiA9IHRhYmxlW2tleV07XG4gICAgICAgICAgICByZXR1cm4gY29udmVydENvbHVtbk5hbWUoY29sdW1uKSArICcgPSAnICsgY29udmVydFBhcmFtKGNvbHVtbiwgdmFsdWUpO1xuICAgICAgICB9KS5qb2luKCcsICcpO1xuICAgIH1cblxuICAgIGZ1bmN0aW9uIGNvbnZlcnRJbnNlcnRRdWVyeShxdWVyeTogYW55KTogc3RyaW5nIHtcbiAgICAgICAgbGV0IGl0ZW1zOiBhbnlbXSA9IEFycmF5LmlzQXJyYXkocXVlcnkuX2VudGl0eSkgPyBxdWVyeS5fZW50aXR5IDogW3F1ZXJ5Ll9lbnRpdHldO1xuICAgICAgICBsZXQga2V5U2V0OiBTZXQ8c3RyaW5nPiA9IGl0ZW1zLnJlZHVjZSgoc2V0OiBTZXQ8c3RyaW5nPiwgaXRlbSkgPT4ge1xuICAgICAgICAgICAgT2JqZWN0LmtleXMoaXRlbSkuZm9yRWFjaChrZXkgPT4gc2V0LmFkZChrZXkpKTsgcmV0dXJuIHNldDtcbiAgICAgICAgfSwgbmV3IFNldDxzdHJpbmc+KCkpO1xuICAgICAgICBsZXQga2V5cyA9IEFycmF5LmZyb20oa2V5U2V0KS5zb3J0KCk7XG5cbiAgICAgICAgbGV0IHMgPSAnSU5TRVJUIElOVE8gJyArIGNvbnZlcnRUYWJsZShxdWVyeS5fdGFibGUpICsgJyAnO1xuICAgICAgICBzICs9ICcoJyArIGtleXMubWFwKGtleSA9PiBjb252ZXJ0Q29sdW1uTmFtZShxdWVyeS5fdGFibGVba2V5XSkpLmpvaW4oJywgJykgKyAnKSc7XG4gICAgICAgIHMgKz0gb3B0aW9ucy5saW5lQnJlYWsgKyAnVkFMVUVTICc7XG4gICAgICAgIHMgKz0gaXRlbXMubWFwKGl0ZW0gPT4gY29udmVydEluc2VydEl0ZW0ocXVlcnkuX3RhYmxlLCBpdGVtLCBrZXlzKSlcbiAgICAgICAgICAgIC5tYXAoKHJvdzogc3RyaW5nKSA9PiAnKCcgKyByb3cgKyAnKScpLmpvaW4oJywgJyk7XG5cbiAgICAgICAgcyArPSBnZXRQZ0luc2VydFJldHVybmluZ0lmTmVlZGVkKHF1ZXJ5KTtcbiAgICAgICAgcmV0dXJuIHM7XG4gICAgfVxuXG5cbiAgICBmdW5jdGlvbiBnZXRQZ0luc2VydFJldHVybmluZ0lmTmVlZGVkKHF1ZXJ5OiBhbnkpOiBzdHJpbmcge1xuICAgICAgICBpZiAoZW5naW5lID09PSAncGcnICYmIHF1ZXJ5Ll9hY3Rpb24gPT09ICdpbnNlcnQnICYmICFBcnJheS5pc0FycmF5KHF1ZXJ5Ll9lbnRpdHkpICYmXG4gICAgICAgICAgICBxdWVyeS5fdGFibGUuJGlkICYmIHF1ZXJ5Ll90YWJsZS4kaWQuX3RhYmxlICYmIHF1ZXJ5Ll90YWJsZS4kaWQuX25hbWUpIHtcbiAgICAgICAgICAgIHJldHVybiAnIFJFVFVSTklORyAnICsgY29udmVydENvbHVtbk5hbWUocXVlcnkuX3RhYmxlLiRpZCk7XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuICcnO1xuICAgIH1cblxuICAgIGZ1bmN0aW9uIGNvbnZlcnRJbnNlcnRJdGVtKHRhYmxlOiBhbnksIGVudGl0eTogYW55LCBrZXlzOiBzdHJpbmdbXSk6IHN0cmluZyB7XG4gICAgICAgIHJldHVybiBrZXlzLm1hcChrZXkgPT4ge1xuICAgICAgICAgICAgbGV0IHZhbHVlID0gZW50aXR5W2tleV07XG4gICAgICAgICAgICBsZXQgY29sdW1uID0gdGFibGVba2V5XTtcbiAgICAgICAgICAgIHJldHVybiBjb252ZXJ0UGFyYW0oY29sdW1uLCB2YWx1ZSk7XG4gICAgICAgIH0pLmpvaW4oJywgJyk7XG4gICAgfVxuXG4gICAgZnVuY3Rpb24gY29udmVydFNlbGVjdFF1ZXJ5KHF1ZXJ5OiBhbnkpOiBzdHJpbmcge1xuICAgICAgICBsZXQgcyA9ICdTRUxFQ1QgJztcbiAgICAgICAgaWYgKHF1ZXJ5Ll9kaXN0aW5jdCkge1xuICAgICAgICAgICAgcyArPSAnRElTVElOQ1QgJztcbiAgICAgICAgfVxuXG4gICAgICAgIGlmIChxdWVyeS5fY29sdW1ucyA9PSBudWxsIHx8IHF1ZXJ5Ll9jb2x1bW5zLmxlbmd0aCA9PT0gMCkge1xuICAgICAgICAgICAgcyArPSAnKidcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIHMgKz0gcXVlcnkuX2NvbHVtbnMubWFwKChjb2x1bW46IGFueSkgPT4gY29udmVydENvbHVtbihjb2x1bW4pKS5qb2luKCcsICcpO1xuICAgICAgICB9XG5cbiAgICAgICAgcyArPSBvcHRpb25zLmxpbmVCcmVhayArICdGUk9NICc7XG4gICAgICAgIGlmIChxdWVyeS5fdGFibGVzKSB7XG4gICAgICAgICAgICBzKz0gcXVlcnkuX3RhYmxlcy5tYXAoKHRhYmxlOiBhbnkpID0+IHRhYmxlLl9wYXJlbnQgPyBjb252ZXJ0Sm9pbih0YWJsZSkgOiBjb252ZXJ0VGFibGUodGFibGUpKS5qb2luKCcsICcpO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgcys9IGNvbnZlcnRUYWJsZShxdWVyeS5fdGFibGUpO1xuICAgICAgICB9XG5cbiAgICAgICAgcyArPSBjb252ZXJ0Q29uZGl0aW9ucyhxdWVyeS5fY29uZGl0aW9ucyk7XG5cbiAgICAgICAgaWYgKHF1ZXJ5Ll9ncm91cEJ5ICYmIHF1ZXJ5Ll9ncm91cEJ5Lmxlbmd0aCA+IDApIHtcbiAgICAgICAgICAgIHMgKz0gb3B0aW9ucy5saW5lQnJlYWsgKyAnR1JPVVAgQlkgJztcbiAgICAgICAgICAgIHMgKz0gcXVlcnkuX2dyb3VwQnkubWFwKChjb2x1bW46IGFueSkgPT4gY29udmVydENvbHVtbihjb2x1bW4pKS5qb2luKCcsICcpO1xuICAgICAgICB9XG4gICAgICAgIHMgKz0gY29udmVydENvbmRpdGlvbnMocXVlcnkuX2hhdmluZywgJ0hBVklORycpO1xuXG4gICAgICAgIGlmIChxdWVyeS5fb3JkZXJpbmdzICYmIHF1ZXJ5Ll9vcmRlcmluZ3MubGVuZ3RoID4gMCkge1xuICAgICAgICAgICAgcyArPSBvcHRpb25zLmxpbmVCcmVhayArICdPUkRFUiBCWSAnO1xuICAgICAgICAgICAgcyArPSBxdWVyeS5fb3JkZXJpbmdzLm1hcCgob3JkZXJpbmc6IGFueSkgPT4gY29udmVydE9yZGVyaW5nKG9yZGVyaW5nKSkuam9pbignLCAnKTtcbiAgICAgICAgfVxuICAgICAgICBpZiAocXVlcnkuX2xpbWl0ICE9IG51bGwpIHtcbiAgICAgICAgICAgIHMgKz0gb3B0aW9ucy5saW5lQnJlYWsgKyAnTElNSVQgJyArIG51bWJlcihxdWVyeS5fbGltaXQpO1xuICAgICAgICB9XG4gICAgICAgIGlmIChxdWVyeS5fb2Zmc2V0ICE9IG51bGwpIHtcbiAgICAgICAgICAgIHMgKz0gb3B0aW9ucy5saW5lQnJlYWsgKyAnT0ZGU0VUICcgKyBudW1iZXIocXVlcnkuX29mZnNldCk7XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIHM7XG4gICAgfVxuXG4gICAgZnVuY3Rpb24gY29udmVydENvbmRpdGlvbnMoY29uZGl0aW9uczogYW55W10sIGtleXdvcmQgPSAnV0hFUkUnKTogc3RyaW5nIHtcbiAgICAgICAgbGV0IHMgPSAnJztcbiAgICAgICAgaWYgKGNvbmRpdGlvbnMgJiYgY29uZGl0aW9ucy5sZW5ndGggPiAwKSB7XG4gICAgICAgICAgICBzICs9IG9wdGlvbnMubGluZUJyZWFrICsga2V5d29yZCArICcgJztcbiAgICAgICAgICAgIHByZXByb2Nlc3NDb25kaXRpb25zKGNvbmRpdGlvbnMpO1xuICAgICAgICAgICAgcyArPSBjb25kaXRpb25zLm1hcChjb25kaXRpb24gPT4gY29udmVydENvbmRpdGlvbihjb25kaXRpb24sIHRydWUpKS5qb2luKCcgQU5EICcpO1xuICAgICAgICB9XG4gICAgICAgIHJldHVybiBzO1xuICAgIH1cblxuICAgIGZ1bmN0aW9uIGNvbnZlcnRKb2luKGpvaW5DaGFpbjogYW55KTogc3RyaW5nIHtcbiAgICAgICAgbGV0IGl0ZW1zOiBhbnlbXSA9IFtdO1xuICAgICAgICB3aGlsZSAoam9pbkNoYWluKSB7XG4gICAgICAgICAgICBpdGVtcy5wdXNoKGpvaW5DaGFpbik7XG4gICAgICAgICAgICBqb2luQ2hhaW4gPSBqb2luQ2hhaW4uX3BhcmVudDtcbiAgICAgICAgfVxuXG4gICAgICAgIGxldCByb290ID0gaXRlbXNbaXRlbXMubGVuZ3RoIC0gMV07XG4gICAgICAgIGxldCBzID0gY29udmVydFRhYmxlKHJvb3QpO1xuXG4gICAgICAgIGZvciAobGV0IGkgPSBpdGVtcy5sZW5ndGggLSAyOyBpID49IDA7IGktPSAyKSB7XG4gICAgICAgICAgICBsZXQgdGFibGUgPSBpdGVtc1tpXS5fdGFibGU7XG4gICAgICAgICAgICBsZXQgbW9kaWZpZXIgPSBpdGVtc1tpXS5fbW9kaWZpZXI7XG4gICAgICAgICAgICBsZXQgY29uZGl0aW9uID0gaXRlbXNbaSAtIDFdLl9jb25kaXRpb247XG4gICAgICAgICAgICBsZXQgcGFyYW0gPSBjb252ZXJ0Q29sdW1uKGNvbmRpdGlvbi5fb3RoZXJDb2x1bW4pO1xuICAgICAgICAgICAgcyArPSAnICcgKyBtb2RpZmllci50b1VwcGVyQ2FzZSgpICsgJyBKT0lOICcgKyBjb252ZXJ0VGFibGUodGFibGUpICsgJyBPTiAnICtcbiAgICAgICAgICAgICAgICBjb252ZXJ0Q29sdW1uQ29uZGl0aW9uKGNvbmRpdGlvbiwgcGFyYW0pO1xuICAgICAgICB9XG5cbiAgICAgICAgcmV0dXJuIHM7XG4gICAgfVxuXG4gICAgZnVuY3Rpb24gY29udmVydE9yZGVyaW5nKG9yZGVyaW5nOiBhbnkpOiBzdHJpbmcge1xuICAgICAgICBpZiAob3JkZXJpbmcuX2NvbHVtbikge1xuICAgICAgICAgICAgbGV0IHMgPSBjb252ZXJ0Q29sdW1uKG9yZGVyaW5nLl9jb2x1bW4pO1xuXG4gICAgICAgICAgICBpZiAob3JkZXJpbmcuX251bGxzUG9zaXRpb24gIT0gbnVsbCkgeyAvLyBcIk5VTExTIEZJUlNUXCIgb25seSBleGlzdHMgaW4gUEcsIHRoaXMgaXMgdGhlIGdlbmVyYWwgc29sdXRpb25cbiAgICAgICAgICAgICAgICBzICs9ICcgSVMgTlVMTCAnICsgKG9yZGVyaW5nLl9udWxsc1Bvc2l0aW9uID09PSAnRklSU1QnID8gJ0RFU0MnIDogJ0FTQycpICsgJywgJyArIHM7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIGlmIChvcmRlcmluZy5fZGlyZWN0aW9uID09PSAnQVNDJykgcyArPSAnIEFTQyc7XG4gICAgICAgICAgICBpZiAob3JkZXJpbmcuX2RpcmVjdGlvbiA9PT0gJ0RFU0MnKSBzICs9ICcgREVTQyc7XG5cbiAgICAgICAgICAgIHJldHVybiBzO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgcmV0dXJuIGNvbnZlcnRDb2x1bW4ob3JkZXJpbmcpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgZnVuY3Rpb24gY29udmVydFRhYmxlKHRhYmxlOiBhbnkpOiBzdHJpbmcge1xuICAgICAgICByZXR1cm4gb3B0aW9ucy5uYW1lRXNjYXBlICsgdGFibGUuXyRuYW1lICsgb3B0aW9ucy5uYW1lRXNjYXBlO1xuICAgIH1cblxuICAgIGZ1bmN0aW9uIGNvbnZlcnRDb2x1bW4oY29sdW1uOiBhbnkpOiBzdHJpbmcge1xuICAgICAgICBsZXQgcyA9ICcnO1xuICAgICAgICBpZiAoIShjb2x1bW4uX25hbWUgPT09ICcqJyAmJiBjb2x1bW4uX21vZGlmaWVycy5sZW5ndGggPiAwICYmIGNvbHVtbi5fbW9kaWZpZXJzWzBdLm5hbWUgPT09ICdjb3VudCcpKSB7XG4gICAgICAgICAgICBzICs9IGNvbnZlcnRUYWJsZShjb2x1bW4uX3RhYmxlKSArICcuJztcbiAgICAgICAgfVxuICAgICAgICBzICs9IGNvbnZlcnRDb2x1bW5OYW1lKGNvbHVtbik7XG4gICAgICAgIHJldHVybiBjb252ZXJ0Q29sdW1uTW9kaWZpZXJzKHMsIGNvbHVtbik7XG4gICAgfVxuXG4gICAgZnVuY3Rpb24gY29udmVydENvbHVtbk1vZGlmaWVycyhzOiBzdHJpbmcsIGNvbHVtbjogYW55KTogc3RyaW5nIHtcbiAgICAgICAgaWYgKGNvbHVtbi5fbW9kaWZpZXJzKSB7XG4gICAgICAgICAgICBjb2x1bW4uX21vZGlmaWVycy5mb3JFYWNoKChtb2RpZmllcjogYW55KSA9PiB7XG4gICAgICAgICAgICAgICAgbGV0IG5hbWUgPSBtb2RpZmllci5uYW1lO1xuICAgICAgICAgICAgICAgIGlmIChuYW1lID09PSAnbG93ZXInKSBzID0gJ0xPV0VSKCcgKyBzICsgJyknO1xuICAgICAgICAgICAgICAgIGVsc2UgaWYgKG5hbWUgPT09ICd1cHBlcicpIHMgPSAnVVBQRVIoJyArIHMgKyAnKSc7XG4gICAgICAgICAgICAgICAgZWxzZSBpZiAobmFtZSA9PT0gJ2NvdW50JykgcyA9ICdDT1VOVCgnICsgcyArICcpJztcbiAgICAgICAgICAgICAgICBlbHNlIGlmIChuYW1lID09PSAnc3VtJykgcyA9ICdTVU0oJyArIHMgKyAnKSc7XG4gICAgICAgICAgICAgICAgZWxzZSBpZiAobmFtZSA9PT0gJ2F2ZycpIHMgPSAnQVZHKCcgKyBzICsgJyknO1xuICAgICAgICAgICAgICAgIGVsc2UgaWYgKG5hbWUgPT09ICdtaW4nKSBzID0gJ01JTignICsgcyArICcpJztcbiAgICAgICAgICAgICAgICBlbHNlIGlmIChuYW1lID09PSAnbWF4JykgcyA9ICdNQVgoJyArIHMgKyAnKSc7XG4gICAgICAgICAgICAgICAgZWxzZSBpZiAobmFtZSA9PT0gJ2FzJykgcyA9IHMgKyAnIEFTICcgKyBvcHRpb25zLm5hbWVFc2NhcGUgKyBtb2RpZmllci5wYXJhbXMgKyBvcHRpb25zLm5hbWVFc2NhcGU7XG4gICAgICAgICAgICB9KTtcbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gcyArICcnO1xuICAgIH1cblxuICAgIGZ1bmN0aW9uIGNvbnZlcnRDb2x1bW5OYW1lKGNvbHVtbjogYW55KTogc3RyaW5nIHtcbiAgICAgICAgaWYgKGNvbHVtbi5fbmFtZSA9PT0gJyonKSByZXR1cm4gY29sdW1uLl9uYW1lO1xuICAgICAgICBsZXQgbmFtZSA9IHR5cGVvZiBjb2x1bW4uX25hbWUgPT09ICdzdHJpbmcnID8gY29sdW1uLl9uYW1lIDogY29sdW1uLl9uYW1lLm5hbWU7XG4gICAgICAgIHJldHVybiBvcHRpb25zLm5hbWVFc2NhcGUgKyBuYW1lICsgb3B0aW9ucy5uYW1lRXNjYXBlO1xuICAgIH1cblxuICAgIGZ1bmN0aW9uIHByZXByb2Nlc3NDb25kaXRpb25zKGNvbmRpdGlvbnM6IGFueVtdKTogdm9pZCB7XG4gICAgICAgIGNvbmRpdGlvbnMuZm9yRWFjaChjb25kaXRpb24gPT4ge1xuICAgICAgICAgICAgaWYgKGNvbmRpdGlvbnMubGVuZ3RoID4gMSAmJiBjb25kaXRpb24uX3NpYmxpbmcpIHtcbiAgICAgICAgICAgICAgICBjb25kaXRpb24uX3BhcmVudGhlc2lzID0gdHJ1ZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIHByZXByb2Nlc3NQYXJhbXMoY29uZGl0aW9uKTtcbiAgICAgICAgfSk7XG4gICAgfVxuXG5cbiAgICBmdW5jdGlvbiBwcmVwcm9jZXNzUGFyYW1zKGNvbmRpdGlvbjogYW55KTogdm9pZCB7XG4gICAgICAgIGlmIChjb25kaXRpb24uX3NpYmxpbmcpIHtcbiAgICAgICAgICAgIHByZXByb2Nlc3NQYXJhbXMoY29uZGl0aW9uLl9zaWJsaW5nKTtcbiAgICAgICAgfVxuICAgICAgICBpZiAoIWNvbmRpdGlvbi5fc2libGluZyAmJiAhY29uZGl0aW9uLl9jaGlsZCkge1xuICAgICAgICAgICAgY29uZGl0aW9uLl9fcGFyYW0gPSBnZXRDb25kaXRpb25QYXJhbShjb25kaXRpb24pO1xuICAgICAgICB9XG4gICAgICAgIGlmIChjb25kaXRpb24uX2NoaWxkKSB7XG4gICAgICAgICAgICBwcmVwcm9jZXNzUGFyYW1zKGNvbmRpdGlvbi5fY2hpbGQpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgZnVuY3Rpb24gY29udmVydENvbmRpdGlvbihjb25kaXRpb246IGFueSwgcm9vdCA9IGZhbHNlKTogc3RyaW5nIHtcbiAgICAgICAgaWYgKCFjb25kaXRpb24uX3NpYmxpbmcgJiYgIWNvbmRpdGlvbi5fY2hpbGQpIHtcbiAgICAgICAgICAgIHJldHVybiBjb252ZXJ0Q29sdW1uQ29uZGl0aW9uKGNvbmRpdGlvbiwgY29uZGl0aW9uLl9fcGFyYW0pO1xuICAgICAgICB9XG5cbiAgICAgICAgbGV0IHMgPSAnJztcbiAgICAgICAgaWYgKGNvbmRpdGlvbi5fY2hpbGQpIHtcbiAgICAgICAgICAgIHMgKz0gY29udmVydENvbmRpdGlvbihjb25kaXRpb24uX2NoaWxkKTtcbiAgICAgICAgfVxuICAgICAgICBpZiAoY29uZGl0aW9uLl9zaWJsaW5nKSB7XG4gICAgICAgICAgICBzID0gY29udmVydENvbmRpdGlvbihjb25kaXRpb24uX3NpYmxpbmcsIHJvb3QpICsgJyAnICsgY29uZGl0aW9uLl9jaGFpblR5cGUudG9VcHBlckNhc2UoKSArICcgJyArIHM7XG4gICAgICAgIH1cbiAgICAgICAgaWYgKGNvbmRpdGlvbi5fcGFyZW50aGVzaXMgfHwgKCghcm9vdCB8fCBjb25kaXRpb24uX25lZ2F0aW9uKSAmJiBjb25kaXRpb24uX2NoaWxkKSkge1xuICAgICAgICAgICAgcyA9ICcoICcgKyBzICsgJyApJztcbiAgICAgICAgfVxuICAgICAgICBpZiAoY29uZGl0aW9uLl9uZWdhdGlvbikge1xuICAgICAgICAgICAgcyA9ICdOT1QgJyArIHM7XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIHM7XG4gICAgfVxuXG4gICAgZnVuY3Rpb24gY29udmVydENvbHVtbkNvbmRpdGlvbihjb25kaXRpb246IGFueSwgcGFyYW06IHN0cmluZyk6IHN0cmluZyB7XG4gICAgICAgIGxldCBzID0gY29udmVydENvbHVtbihjb25kaXRpb24uX2NvbHVtbik7XG4gICAgICAgIHMgKz0gZ2V0Q29uZGl0aW9uU3RyaW5nKGNvbmRpdGlvbiwgcGFyYW0pO1xuICAgICAgICByZXR1cm4gcztcbiAgICB9XG5cbiAgICBmdW5jdGlvbiBnZXRDb25kaXRpb25TdHJpbmcoY29uZGl0aW9uOiBhbnksIHBhcmFtOiBzdHJpbmcpOiBzdHJpbmcge1xuICAgICAgICBzd2l0Y2ggKGNvbmRpdGlvbi5fdHlwZSkge1xuICAgICAgICAgICAgY2FzZSAnZXEnOiByZXR1cm4gJyA9ICcgKyBwYXJhbTtcbiAgICAgICAgICAgIGNhc2UgJ25lJzogcmV0dXJuICcgPD4gJyArIHBhcmFtO1xuICAgICAgICAgICAgY2FzZSAnbHQnOiByZXR1cm4gJyA8ICcgKyBwYXJhbTtcbiAgICAgICAgICAgIGNhc2UgJ2d0JzogcmV0dXJuICcgPiAnICsgcGFyYW07XG4gICAgICAgICAgICBjYXNlICdsdGUnOiByZXR1cm4gJyA8PSAnICsgcGFyYW07XG4gICAgICAgICAgICBjYXNlICdndGUnOiByZXR1cm4gJyA+PSAnICsgcGFyYW07XG4gICAgICAgICAgICBjYXNlICdpcy1udWxsJzogcmV0dXJuICcgSVMgTlVMTCc7XG4gICAgICAgICAgICBjYXNlICdpcy1ub3QtbnVsbCc6IHJldHVybiAnIElTIE5PVCBOVUxMJztcbiAgICAgICAgICAgIGNhc2UgJ2xpa2UnOiByZXR1cm4gJyBMSUtFICcgKyBwYXJhbTtcbiAgICAgICAgICAgIGNhc2UgJ25vdC1saWtlJzogcmV0dXJuICcgTk9UIExJS0UgJyArIHBhcmFtO1xuICAgICAgICAgICAgY2FzZSAnaW4nOiByZXR1cm4gJyBJTiAoJyArIHBhcmFtICsgJyknO1xuICAgICAgICAgICAgY2FzZSAnbm90LWluJzogcmV0dXJuICcgTk9UIElOICgnICsgcGFyYW0gKyAnKSc7XG4gICAgICAgICAgICBjYXNlICdiZXR3ZWVuJzogcmV0dXJuICcgQkVUV0VFTiAnICsgcGFyYW07XG4gICAgICAgICAgICBjYXNlICdub3QtYmV0d2Vlbic6IHJldHVybiAnIE5PVCBCRVRXRUVOICcgKyBwYXJhbTtcbiAgICAgICAgICAgIGRlZmF1bHQ6IHJldHVybiAnJztcbiAgICAgICAgfVxuICAgIH1cblxuICAgIGZ1bmN0aW9uIGdldENvbmRpdGlvblBhcmFtKGNvbmRpdGlvbjogYW55KTogc3RyaW5nIHtcbiAgICAgICAgbGV0IHBhcmFtID0gJyc7XG4gICAgICAgIGlmIChjb25kaXRpb24uX290aGVyQ29sdW1uKSB7XG4gICAgICAgICAgICBwYXJhbSA9IGNvbnZlcnRDb2x1bW4oY29uZGl0aW9uLl9vdGhlckNvbHVtbik7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICBsZXQgX2NvbnZlcnRQYXJhbSA9IChwYXJhbTogYW55KSA9PiBjb252ZXJ0UGFyYW0oY29uZGl0aW9uLl9jb2x1bW4sIHBhcmFtKTtcblxuICAgICAgICAgICAgaWYgKGNvbmRpdGlvbi5fdHlwZSA9PT0gJ2luJyB8fCBjb25kaXRpb24uX3R5cGUgPT09ICdub3QtaW4nKSB7XG4gICAgICAgICAgICAgICAgcGFyYW0gPSBjb25kaXRpb24uX3ZhbHVlcy5tYXAoKHZhbHVlOiBhbnkpID0+IF9jb252ZXJ0UGFyYW0odmFsdWUpKS5qb2luKCcsICcpO1xuICAgICAgICAgICAgfSBlbHNlIGlmIChjb25kaXRpb24uX3R5cGUgPT09ICdiZXR3ZWVuJyB8fCBjb25kaXRpb24uX3R5cGUgPT09ICdub3QtYmV0d2VlbicpIHtcbiAgICAgICAgICAgICAgICBwYXJhbSA9IF9jb252ZXJ0UGFyYW0oY29uZGl0aW9uLl92YWx1ZXNbMF0pICsgJyBBTkQgJyArIF9jb252ZXJ0UGFyYW0oY29uZGl0aW9uLl92YWx1ZXNbMV0pO1xuICAgICAgICAgICAgfSBlbHNlIGlmIChjb25kaXRpb24uX3R5cGUgIT09ICdpcy1udWxsJyAmJiBjb25kaXRpb24uX3R5cGUgIT09ICdpcy1ub3QtbnVsbCcpIHtcbiAgICAgICAgICAgICAgICBwYXJhbSA9IF9jb252ZXJ0UGFyYW0oY29uZGl0aW9uLl92YWx1ZXNbMF0pO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIHJldHVybiBwYXJhbTtcbiAgICB9XG5cbiAgICBmdW5jdGlvbiBjb252ZXJ0UGFyYW0oY29sdW1uOiBhbnksIHBhcmFtOiBhbnkpOiBzdHJpbmcge1xuICAgICAgICBpZiAocGFyYW0gPT0gbnVsbCkgcmV0dXJuICdOVUxMJztcbiAgICAgICAgcmV0dXJuIHBhcmFtQ29udmVydGVyKGdldFR5cGVkUGFyYW0oY29sdW1uLl90eXBlLCBwYXJhbSkpO1xuICAgIH1cblxuICAgIGZ1bmN0aW9uIGdldFR5cGVkUGFyYW0odHlwZTogc3RyaW5nLCBwYXJhbTogYW55KTogYW55IHtcbiAgICAgICAgaWYgKHR5cGUgPT09ICdudW1iZXInKSByZXR1cm4gbnVtYmVyKHBhcmFtKTtcbiAgICAgICAgZWxzZSBpZiAodHlwZSA9PT0gJ2Jvb2xlYW4nKSByZXR1cm4gYm9vbGVhbihwYXJhbSk7XG4gICAgICAgIGVsc2UgaWYgKHR5cGUgPT09ICdkYXRlJykgcmV0dXJuIGRhdGUocGFyYW0pO1xuICAgICAgICBlbHNlIGlmICh0eXBlID09PSAnc3RyaW5nJykgcmV0dXJuIHN0cmluZyhwYXJhbSk7XG4gICAgICAgIHJldHVybiBwYXJhbTtcbiAgICB9XG59XG5cbiA7KHt9KTsgLy8gQC0tZW5kLW9mLWZpbGUtZm9yLW1vZHVsZT10YW9uLXR5cGUtc3FsIGxpYi9jb252ZXJ0ZXIvcXVlcnktY29udmVydGVyLnRzIl19
@@ -0,0 +1,88 @@
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,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVzdWx0LWNvbnZlcnRlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3RtcC1saWJzLWZvci1kaXN0LXdlYnNxbC90YW9uLXR5cGUtc3FsL3Byb2plY3RzL3Rhb24tdHlwZS1zcWwvc3JjL2xpYi9jb252ZXJ0ZXIvcmVzdWx0LWNvbnZlcnRlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFJQSxNQUFNLFVBQVUsYUFBYSxDQUFDLEtBQVUsRUFBRSxNQUFXLEVBQUUsTUFBbUI7SUFDeEUsSUFBSSxJQUFJLEdBQUcsTUFBTSxLQUFLLElBQUksQ0FBQyxDQUFDLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsTUFBTSxDQUFDO0lBQ2xELElBQUksUUFBUSxHQUFHLE1BQU0sS0FBSyxJQUFJLENBQUMsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxZQUFZLElBQUksTUFBTSxDQUFDLFdBQVcsQ0FBQztJQUU3RixJQUFJLEtBQUssQ0FBQyxPQUFPLEtBQUssUUFBUTtRQUFFLE9BQU8sbUJBQW1CLENBQUMsS0FBSyxFQUFFLElBQUksQ0FBQyxDQUFDO0lBQ3hFLElBQUksS0FBSyxDQUFDLE9BQU8sS0FBSyxRQUFRO1FBQUUsT0FBTyxRQUFRLENBQUM7SUFDaEQsSUFBSSxLQUFLLENBQUMsT0FBTyxLQUFLLFFBQVE7UUFBRSxPQUFPLFFBQVEsQ0FBQztJQUNoRCxJQUFJLEtBQUssQ0FBQyxPQUFPLEtBQUssUUFBUTtRQUFFLE9BQU8sbUJBQW1CLENBQUMsTUFBTSxFQUFFLE1BQU0sQ0FBQyxDQUFDO0lBQzNFLE1BQU0sSUFBSSxLQUFLLENBQUMscUJBQXFCLEdBQUcsS0FBSyxDQUFDLE9BQU8sQ0FBQyxDQUFDO0FBQ3pELENBQUM7QUFFRCxTQUFTLG1CQUFtQixDQUFDLE1BQVcsRUFBRSxNQUFtQjtJQUMzRCxJQUFJLE1BQU0sS0FBSyxPQUFPO1FBQUUsT0FBTyxN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LENBQUMsTUFBTSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsR0FBRyxNQUFNLENBQUMsS0FBSyxDQUFDLEtBQUssQ0FBQztZQUN0RCxDQUFDLENBQUMsQ0FBQztZQUVILElBQUksU0FBUyxHQUFHLEtBQUssQ0FBQyxPQUFPLENBQUM7WUFDOUIsT0FBTyxTQUFTLEVBQUUsQ0FBQztnQkFDakIsc0JBQXNCLENBQUMsU0FBUyxDQUFDLENBQUMsT0FBTyxDQUFDLENBQUMsTUFBVyxFQUFFLEVBQUU7b0JBQ3hELFdBQVcsQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxHQUFHLE1BQU0sQ0FBQyxLQUFLLENBQUMsS0FBSyxDQUFDO2dCQUN0RCxDQUFDLENBQUMsQ0FBQztnQkFDSCxTQUFTLEdBQUcsU0FBUyxDQUFDLE9BQU8sQ0FBQztZQUNoQyxDQUFDO1FBQ0gsQ0FBQyxDQUFDLENBQUM7SUFDTCxDQUFDO0lBRUQsT0FBTyxXQUFXLENBQUM7QUFDckIsQ0FBQztBQUVELFNBQVMsc0JBQXNCLENBQUMsS0FBVTtJQUN4QyxPQUFPLE1BQU0sQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUMsR0FBRyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsS0FBSyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsTUFBTSxDQUFDLENBQUMsTUFBVyxFQUFFLEVBQUUsQ0FBQyxNQUFNLElBQUksTUFBTSxDQUFDLEtBQUssSUFBSSxNQUFNLENBQUMsS0FBSyxDQUFDLEtBQUssQ0FBQyxDQUFDO0FBQ3pILENBQUM7QUFFQSxDQUFDO0FBQUEsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLDRFQUE0RSIsInNvdXJjZXNDb250ZW50IjpbIlxuXG5pbXBvcnQgeyBRdWVyeUVuZ2luZSB9IGZyb20gXCIuL3R5cGVzXCI7XG5cbmV4cG9ydCBmdW5jdGlvbiBjb252ZXJ0UmVzdWx0KHF1ZXJ5OiBhbnksIHJlc3VsdDogYW55LCBlbmdpbmU6IFF1ZXJ5RW5naW5lKTogYW55IHtcbiAgbGV0IHJvd3MgPSBlbmdpbmUgPT09ICdwZycgPyByZXN1bHQucm93cyA6IHJlc3VsdDtcbiAgbGV0IHJvd0NvdW50ID0gZW5naW5lID09PSAncGcnID8gcmVzdWx0LnJvd0NvdW50IDogcmVzdWx0LmFmZmVjdGVkUm93cyB8fCByZXN1bHQuY2hhbmdlZFJvd3M7XG5cbiAgaWYgKHF1ZXJ5Ll9hY3Rpb24gPT09ICdzZWxlY3QnKSByZXR1cm4gY29udmVydFNlbGVjdFJlc3VsdChxdWVyeSwgcm93cyk7XG4gIGlmIChxdWVyeS5fYWN0aW9uID09PSAnZGVsZXRlJykgcmV0dXJuIHJvd0NvdW50O1xuICBpZiAocXVlcnkuX2FjdGlvbiA9PT0gJ3VwZGF0ZScpIHJldHVybiByb3dDb3VudDtcbiAgaWYgKHF1ZXJ5Ll9hY3Rpb24gPT09ICdpbnNlcnQnKSByZXR1cm4gY29udmVydEluc2VydFJlc3VsdChyZXN1bHQsIGVuZ2luZSk7XG4gIHRocm93IG5ldyBFcnJvcignVW5rbm93biBxdWVyeSB0eXBlOicgKyBxdWVyeS5fYWN0aW9uKTtcbn1cblxuZnVuY3Rpb24gY29udmVydEluc2VydFJlc3VsdChyZXN1bHQ6IGFueSwgZW5naW5lOiBRdWVyeUVuZ2luZSk6IGFueSB7XG4gIGlmIChlbmdpbmUgPT09ICdteXNxbCcpIHJldHVybiByZXN1bHQuaW5zZXJ0SWQgPiAwID8gcmVzdWx0Lmluc2VydElkIDogdW5kZWZpbmVkOyAvLyBteXNxbCByZXR1cm5zIDAgZm9yIHRhYmxlcyB0aGF0IGhhdmUgYSBub24tYXV0b2luY3JlbWVudCBJRFxuICBpZiAoZW5naW5lID09PSAncGcnICYmIHJlc3VsdC5yb3dzICYmIHJlc3VsdC5yb3dzLmxlbmd0aCA9PT0gMSkge1xuICAgIGxldCBjb2x1bW5OYW1lID0gT2JqZWN0LmtleXMocmVzdWx0LnJvd3NbMF0pWzBdO1xuICAgIHJldHVybiByZXN1bHQucm93c1swXVtjb2x1bW5OYW1lXTtcbiAgfVxufVxuXG5mdW5jdGlvbiBjb252ZXJ0U2VsZWN0UmVzdWx0KHF1ZXJ5OiBhbnksIHJvd3M6IGFueVtdKTogYW55IHtcbiAgaWYgKHF1ZXJ5Ll9jb2x1bW5zICYmIHF1ZXJ5Ll9jb2x1bW5zLmxlbmd0aCA9PT0gMSAmJlxuICAgICEocXVlcnkuX2NvbHVtbnNbMF0uX25hbWUgPT09ICcqJyAmJiBxdWVyeS5fY29sdW1uc1swXS5fbW9kaWZpZXJzLmxlbmd0aCA9PT0gMCkpIHtcbiAgICBpZiAocm93cy5sZW5ndGggPT0gMCkgcmV0dXJuIFtdO1xuICAgIGxldCBjb2x1bW5OYW1lID0gT2JqZWN0LmtleXMocm93c1swXSlbMF07IC8vIGVhc2llciB0aGFuIHJldmVyc2UgZW5naW5lZXJpbmcgZnJvbSB0aGUgY29sdW1uIG1vZGlmaWVyc1xuICAgIGxldCB2YWx1ZXMgPSByb3dzLm1hcCgocm93OiBhbnkpID0+IHJvd1tjb2x1bW5OYW1lXSk7XG5cbiAgICBpZiAocXVlcnkuX2NvbHVtbnNbMF0uX25hbWUgPT09ICcqJyAmJiBxdWVyeS5fY29sdW1uc1swXS5fbW9kaWZpZXJzLnNvbWUoKG06IGFueSkgPT4gbS5uYW1lID09PSAnY291bnQnKSkge1xuICAgICAgcmV0dXJuIHZhbHVlcy5tYXAoKHZhbHVlOiBhbnkpID0+IE51bWJlcih2YWx1ZSkpOyAvLyBzdHJpbmcgdG8gbnVtYmVyIGNvbnZlcnNpb24gZm9yIFBHIGNvdW50IHZhbHVlc1xuICAgIH1cbiAgICByZXR1cm4gdmFsdWVzO1xuICB9IGVsc2Uge1xuICAgIGNvbnZlcnRBbGlhc0ZpZWxkcyhxdWVyeSwgcm93cyk7XG4gICAgcmV0dXJuIHJvd3M7XG4gIH1cbn1cblxuZnVuY3Rpb24gY29udmVydEFsaWFzRmllbGRzKHF1ZXJ5OiBhbnksIHJvd3M6IGFueVtdKTogdm9pZCB7XG4gIGxldCBhbGlhc0J5TmFtZSA9IGdldENvbHVtbkFsaWFzZXNCeU5hbWUocXVlcnkpO1xuICBpZiAoT2JqZWN0LmtleXMoYWxpYXNCeU5hbWUpLmxlbmd0aCA9PT0gMCkgcmV0dXJuO1xuXG4gIHJvd3MuZm9yRWFjaCgocm93OiBhbnkpID0+IHtcbiAgICBPYmplY3Qua2V5cyhyb3cpLmZvckVhY2goKG5hbWU6IHN0cmluZykgPT4ge1xuICAgICAgaWYgKGFsaWFzQnlOYW1lW25hbWVdKSB7XG4gICAgICAgIHJvd1thbGlhc0J5TmFtZVtuYW1lXV0gPSByb3dbbmFtZV07XG4gICAgICAgIGRlbGV0ZSByb3dbbmFtZV07XG4gICAgICB9XG4gICAgfSk7XG4gIH0pO1xufVxuXG5mdW5jdGlvbiBnZXRDb2x1bW5BbGlhc2VzQnlOYW1lKHF1ZXJ5OiBhbnkpOiBhbnkge1xuICBsZXQgYWxpYXNCeU5hbWUgPSB7fSBhcyBhbnk7XG5cbiAgaWYgKHF1ZXJ5Ll9jb2x1bW5zICYmIHF1ZXJ5Ll9jb2x1bW5zLmxlbmd0aCA+IDApIHtcbiAgICBxdWVyeS5fY29sdW1ucy5mb3JFYWNoKChjb2x1bW46IGFueSkgPT4ge1xuICAgICAgaWYgKGNvbHVtbi5fbmFtZSAmJiBjb2x1bW4uX25hbWUuYWxpYXMgJiYgY29sdW1uLl9tb2RpZmllcnMubGVuZ3RoID09PSAwKSB7XG4gICAgICAgIGFsaWFzQnlOYW1lW2NvbHVtbi5fbmFtZS5uYW1lXSA9IGNvbHVtbi5fbmFtZS5hbGlhcztcbiAgICAgIH0gZWxzZSBpZiAoY29sdW1uLl9uYW1lID09PSAnKicgJiYgY29sdW1uLl9tb2RpZmllcnMubGVuZ3RoID09PSAwKSB7XG4gICAgICAgIGdldEFsaWFzQ29sdW1uc09mVGFibGUoY29sdW1uLl90YWJsZSkuZm9yRWFjaCgoY29sdW1uOiBhbnkpID0+IHtcbiAgICAgICAgICBhbGlhc0J5TmFtZVtjb2x1bW4uX25hbWUubmFtZV0gPSBjb2x1bW4uX25hbWUuYWxpYXM7XG4gICAgICAgIH0pO1xuICAgICAgfVxuICAgIH0pO1xuICB9IGVsc2Uge1xuICAgIGxldCB0YWJsZXMgPSBxdWVyeS5fdGFibGUgPyBbcXVlcnkuX3RhYmxlXSA6IHF1ZXJ5Ll90YWJsZXM7XG4gICAgdGFibGVzLmZvckVhY2goKHRhYmxlOiBhbnkpID0+IHtcbiAgICAgIGdldEFsaWFzQ29sdW1uc09mVGFibGUodGFibGUpLmZvckVhY2goKGNvbHVtbjogYW55KSA9PiB7XG4gICAgICAgIGFsaWFzQnlOYW1lW2NvbHVtbi5fbmFtZS5uYW1lXSA9IGNvbHVtbi5fbmFtZS5hbGlhcztcbiAgICAgIH0pO1xuXG4gICAgICBsZXQgam9pblRhYmxlID0gdGFibGUuX3BhcmVudDtcbiAgICAgIHdoaWxlIChqb2luVGFibGUpIHtcbiAgICAgICAgZ2V0QWxpYXNDb2x1bW5zT2ZUYWJsZShqb2luVGFibGUpLmZvckVhY2goKGNvbHVtbjogYW55KSA9PiB7XG4gICAgICAgICAgYWxpYXNCeU5hbWVbY29sdW1uLl9uYW1lLm5hbWVdID0gY29sdW1uLl9uYW1lLmFsaWFzO1xuICAgICAgICB9KTtcbiAgICAgICAgam9pblRhYmxlID0gam9pblRhYmxlLl9wYXJlbnQ7XG4gICAgICB9XG4gICAgfSk7XG4gIH1cblxuICByZXR1cm4gYWxpYXNCeU5hbWU7XG59XG5cbmZ1bmN0aW9uIGdldEFsaWFzQ29sdW1uc09mVGFibGUodGFibGU6IGFueSk6IGFueVtdIHtcbiAgcmV0dXJuIE9iamVjdC5rZXlzKHRhYmxlKS5tYXAoa2V5ID0+IHRhYmxlW2tleV0pLmZpbHRlcigoY29sdW1uOiBhbnkpID0+IGNvbHVtbiAmJiBjb2x1bW4uX25hbWUgJiYgY29sdW1uLl9uYW1lLmFsaWFzKTtcbn1cblxuIDsoe30pOyAvLyBALS1lbmQtb2YtZmlsZS1mb3ItbW9kdWxlPXRhb24tdHlwZS1zcWwgbGliL2NvbnZlcnRlci9yZXN1bHQtY29udmVydGVyLnRzIl19
@@ -0,0 +1,8 @@
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,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3FsLWNvbnZlcnRlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3RtcC1saWJzLWZvci1kaXN0LXdlYnNxbC90YW9uLXR5cGUtc3FsL3Byb2plY3RzL3Rhb24tdHlwZS1zcWwvc3JjL2xpYi9jb252ZXJ0ZXIvc3FsLWNvbnZlcnRlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFFQSxPQUFPLEVBQUMsb0JBQW9CLEVBQUMsTUFBTSxtQkFBbUIsQ0FBQztBQUN2RCxPQUFPLEVBQUMsd0JBQXdCLEVBQUMsTUFBTSxtQkFBbUIsQ0FBQztBQUczRCxNQUFNLFVBQVUsaUJBQWlCLENBQUMsS0FBVSxFQUFFLE9BQXlCLEVBQUUsTUFBbUI7SUFDeEYsT0FBTyxvQkFBb0IsQ0FBQyxDQUFDLEtBQVUsRUFBRSxFQUFFLENBQUMsd0JBQXdCLENBQUMsS0FBSyxDQUFDLEVBQUUsT0FBTyxFQUFFLE1BQU0sQ0FBQyxDQUFDLEtBQUssQ0FBQyxDQUFDO0FBQ3pHLENBQUM7QUFFQSxDQUFDO0FBQUEsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLHlFQUF5RSIsInNvdXJjZXNDb250ZW50IjpbIlxuXG5pbXBvcnQge2NyZWF0ZVF1ZXJ5Q29udmVydGVyfSBmcm9tIFwiLi9xdWVyeS1jb252ZXJ0ZXJcIjtcbmltcG9ydCB7Y29udmVydFN1YnN0aXR1dGlvblBhcmFtfSBmcm9tICcuL3BhcmFtLWNvbnZlcnRlcic7XG5pbXBvcnQge1F1ZXJ5RW5naW5lLCBDb252ZXJ0ZXJPcHRpb25zfSBmcm9tIFwiLi90eXBlc1wiO1xuXG5leHBvcnQgZnVuY3Rpb24gY29udmVydFF1ZXJ5VG9TUUwocXVlcnk6IGFueSwgb3B0aW9uczogQ29udmVydGVyT3B0aW9ucywgZW5naW5lOiBRdWVyeUVuZ2luZSk6IHN0cmluZyB7XG4gICAgcmV0dXJuIGNyZWF0ZVF1ZXJ5Q29udmVydGVyKChwYXJhbTogYW55KSA9PiBjb252ZXJ0U3Vic3RpdHV0aW9uUGFyYW0ocGFyYW0pLCBvcHRpb25zLCBlbmdpbmUpKHF1ZXJ5KTtcbn1cblxuIDsoe30pOyAvLyBALS1lbmQtb2YtZmlsZS1mb3ItbW9kdWxlPXRhb24tdHlwZS1zcWwgbGliL2NvbnZlcnRlci9zcWwtY29udmVydGVyLnRzIl19
@@ -0,0 +1,39 @@
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,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHlwZS1jb252ZXJ0ZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi90bXAtbGlicy1mb3ItZGlzdC13ZWJzcWwvdGFvbi10eXBlLXNxbC9wcm9qZWN0cy90YW9uLXR5cGUtc3FsL3NyYy9saWIvY29udmVydGVyL3R5cGUtY29udmVydGVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUdBLE1BQU0sVUFBVSxNQUFNLENBQUMsS0FBVTtJQUMvQixJQUFJLE1BQU0sR0FBRyxNQUFNLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDM0IsSUFBSSxNQUFNLENBQUMsS0FBSyxDQUFDLE1BQU0sQ0FBQztRQUFFLE1BQU0sSUFBSSxLQUFLLENBQUMseUNBQXlDLEdBQUcsS0FBSyxDQUFDLENBQUM7SUFDN0YsT0FBTyxNQUFNLENBQUM7QUFDaEIsQ0FBQztBQUVELE1BQU0sVUFBVSxPQUFPLENBQUMsS0FBVTtJQUNoQyxJQUFJLE9BQU8sS0FBSyxLQUFLLFNBQVM7UUFBRSxPQUFPLEtBQUssQ0FBQztJQUM3QyxJQUFJLEtBQUssWUFBWSxPQUFPO1FBQUUsT0FBTyxLQUFLLENBQUMsT0FBTyxFQUFFLENBQUM7SUFDckQsSUFBSSxLQUFLLEtBQUssTUFBTTtRQUFFLE9BQU8sSUFBSSxDQUFDO0lBQ2xDLElBQUksS0FBSyxLQUFLLE9BQU87UUFBRSxPQUFPLEtBQUssQ0FBQztJQUNwQyxNQUFNLElBQUksS0FBSyxDQUFDLDBDQUEwQyxHQUFHLEtBQUssQ0FBQyxDQUFDO0FBQ3RFLENBQUM7QUFFRCxNQUFNLFVBQVUsSUFBSSxDQUFDLEtBQVU7SUFDN0IsSUFBSSxLQUFLLFlBQVksSUFBSTtRQUFFLE9BQU8sS0FBSyxDQUFDLENBQUMsYUFBYTtJQUN0RCxJQUFJLE9BQU8sS0FBSyxLQUFLLFFBQVEsSUFBSSxLQUFLLFlBQVksTUFBTTtRQUFFLE9BQU8sSUFBSSxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDakYsSUFBSSxPQUFPLEtBQUssS0FBSyxRQUFRLElBQUksS0FBSyxZQUFZLE1BQU0sRUFBRSxDQUFDO1FBQ3pELElBQUksTUFBTSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLE1BQU0sQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDO1lBQUUsTUFBTSxJQUFJLEtBQUssQ0FBQyx1Q0FBdUMsR0FBRyxLQUFLLENBQUMsQ0FBQyxDQUFDLGFBQWE7UUFDNUgsT0FBTyxJQUFJLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUN6QixDQUFDO0lBQ0QsTUFBTSxJQUFJLEtBQUssQ0FBQyx1Q0FBdUMsR0FBRyxLQUFLLENBQUMsQ0FBQztBQUNuRSxDQUFDO0FBRUQsTUFBTSxVQUFVLE1BQU0sQ0FBQyxLQUFVO0lBQy9CLElBQUksT0FBTyxLQUFLLEtBQUssUUFBUTtRQUFFLE9BQU8sS0FBSyxDQUFDO0lBQzVDLElBQUksS0FBSyxZQUFZLE1BQU07UUFBRSxPQUFPLEtBQUssQ0FBQyxPQUFPLEVBQUUsQ0FBQztJQUNwRCxNQUFNLElBQUksS0FBSyxDQUFDLHlDQUF5QyxHQUFHLEtBQUssQ0FBQyxDQUFDO0FBQ3JFLENBQUM7QUFFQSxDQUFDO0FBQUEsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLDBFQUEwRSIsInNvdXJjZXNDb250ZW50IjpbIlxuXG5cbmV4cG9ydCBmdW5jdGlvbiBudW1iZXIocGFyYW06IGFueSk6IG51bWJlciB7XG4gIGxldCByZXN1bHQgPSBOdW1iZXIocGFyYW0pO1xuICBpZiAoTnVtYmVyLmlzTmFOKHJlc3VsdCkpIHRocm93IG5ldyBFcnJvcignSW52YWxpZCBudW1iZXIgcGFyYW1ldGVyIGluIFNRTCBxdWVyeTogJyArIHBhcmFtKTtcbiAgcmV0dXJuIHJlc3VsdDtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGJvb2xlYW4ocGFyYW06IGFueSk6IGJvb2xlYW4ge1xuICBpZiAodHlwZW9mIHBhcmFtID09PSAnYm9vbGVhbicpIHJldHVybiBwYXJhbTtcbiAgaWYgKHBhcmFtIGluc3RhbmNlb2YgQm9vbGVhbikgcmV0dXJuIHBhcmFtLnZhbHVlT2YoKTtcbiAgaWYgKHBhcmFtID09PSAndHJ1ZScpIHJldHVybiB0cnVlO1xuICBpZiAocGFyYW0gPT09ICdmYWxzZScpIHJldHVybiBmYWxzZTtcbiAgdGhyb3cgbmV3IEVycm9yKCdJbnZhbGlkIGJvb2xlYW4gcGFyYW1ldGVyIGluIFNRTCBxdWVyeTogJyArIHBhcmFtKTtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGRhdGUocGFyYW06IGFueSk6IERhdGUge1xuICBpZiAocGFyYW0gaW5zdGFuY2VvZiBEYXRlKSByZXR1cm4gcGFyYW07IC8vIEB0cy1pZ25vcmVcbiAgaWYgKHR5cGVvZiBwYXJhbSA9PT0gJ251bWJlcicgfHwgcGFyYW0gaW5zdGFuY2VvZiBOdW1iZXIpIHJldHVybiBuZXcgRGF0ZShwYXJhbSk7XG4gIGlmICh0eXBlb2YgcGFyYW0gPT09ICdzdHJpbmcnIHx8IHBhcmFtIGluc3RhbmNlb2YgU3RyaW5nKSB7XG4gICAgaWYgKE51bWJlci5pc05hTihEYXRlLnBhcnNlKFN0cmluZyhwYXJhbSkpKSkgdGhyb3cgbmV3IEVycm9yKCdJbnZhbGlkIGRhdGUgcGFyYW1ldGVyIGluIFNRTCBxdWVyeTogJyArIHBhcmFtKTsgLy8gQHRzLWlnbm9yZVxuICAgIHJldHVybiBuZXcgRGF0ZShwYXJhbSk7XG4gIH1cbiAgdGhyb3cgbmV3IEVycm9yKCdJbnZhbGlkIGRhdGUgcGFyYW1ldGVyIGluIFNRTCBxdWVyeTogJyArIHBhcmFtKTtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIHN0cmluZyhwYXJhbTogYW55KTogc3RyaW5nIHtcbiAgaWYgKHR5cGVvZiBwYXJhbSA9PT0gJ3N0cmluZycpIHJldHVybiBwYXJhbTtcbiAgaWYgKHBhcmFtIGluc3RhbmNlb2YgU3RyaW5nKSByZXR1cm4gcGFyYW0udmFsdWVPZigpO1xuICB0aHJvdyBuZXcgRXJyb3IoJ0ludmFsaWQgc3RyaW5nIHBhcmFtZXRlciBpbiBTUUwgcXVlcnk6ICcgKyBwYXJhbSk7XG59XG5cbiA7KHt9KTsgLy8gQC0tZW5kLW9mLWZpbGUtZm9yLW1vZHVsZT10YW9uLXR5cGUtc3FsIGxpYi9jb252ZXJ0ZXIvdHlwZS1jb252ZXJ0ZXIudHMiXX0=
@@ -0,0 +1,4 @@
1
+ ;
2
+ ({}); // @--end-of-file-for-module=taon-type-sql lib/converter/types.ts
3
+ export {};
4
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHlwZXMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi90bXAtbGlicy1mb3ItZGlzdC13ZWJzcWwvdGFvbi10eXBlLXNxbC9wcm9qZWN0cy90YW9uLXR5cGUtc3FsL3NyYy9saWIvY29udmVydGVyL3R5cGVzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQVVDLENBQUM7QUFBQSxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsaUVBQWlFIiwic291cmNlc0NvbnRlbnQiOlsiXG5cblxuZXhwb3J0IHR5cGUgUXVlcnlFbmdpbmUgPSAncGcnIHwgJ215c3FsJztcblxuZXhwb3J0IGludGVyZmFjZSBDb252ZXJ0ZXJPcHRpb25zIHtcbiAgICBsaW5lQnJlYWs6IHN0cmluZyxcbiAgICBuYW1lRXNjYXBlOiBzdHJpbmdcbn1cblxuIDsoe30pOyAvLyBALS1lbmQtb2YtZmlsZS1mb3ItbW9kdWxlPXRhb24tdHlwZS1zcWwgbGliL2NvbnZlcnRlci90eXBlcy50cyJdfQ==
@@ -0,0 +1,23 @@
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,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi90bXAtbGlicy1mb3ItZGlzdC13ZWJzcWwvdGFvbi10eXBlLXNxbC9wcm9qZWN0cy90YW9uLXR5cGUtc3FsL3NyYy9saWIvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBS0EsT0FBTyxFQUFFLE9BQU8sSUFBSSxXQUFXLEVBQUUsTUFBTSwrQkFBK0IsQ0FBQztBQUN2RSxPQUFPLEVBQUUsT0FBTyxJQUFJLGFBQWEsRUFBRSxNQUFNLGlDQUFpQyxDQUFDO0FBQzNFLE9BQU8sRUFBRSxPQUFPLElBQUksZ0JBQWdCLEVBQUUsTUFBTSxvQ0FBb0MsQ0FBQztBQUNqRixPQUFPLEVBQUUsT0FBTyxJQUFJLFVBQVUsRUFBRSxNQUFNLDhCQUE4QixDQUFDO0FBQ3JFLE9BQU8sRUFBRSxPQUFPLElBQUksWUFBWSxFQUFFLE1BQU0sZ0NBQWdDLENBQUM7QUFDekUsT0FBTyxFQUFFLE9BQU8sSUFBSSxXQUFXLEVBQUUsTUFBTSwrQkFBK0IsQ0FBQztBQUN2RSxPQUFPLEVBQUUsT0FBTyxJQUFJLFlBQVksRUFBRSxNQUFNLGdDQUFnQyxDQUFDO0FBQ3pFLE9BQU8sRUFBRSxPQUFPLElBQUksV0FBVyxFQUFFLE1BQU0sK0JBQStCLENBQUM7QUFFdkUsT0FBTyxFQUFFLE9BQU8sSUFBSSxvQkFBb0IsRUFBRSxNQUFNLDRDQUE0QyxDQUFDO0FBQzdGLE9BQU8sRUFBRSxPQUFPLElBQUksY0FBYyxFQUFFLE1BQU0scUNBQXFDLENBQUM7QUFDaEYsT0FBTyxFQUFFLE9BQU8sSUFBSSxtQkFBbUIsRUFBRSxNQUFNLDJDQUEyQyxDQUFDO0FBQzNGLE9BQU8sRUFBRSxPQUFPLElBQUksa0JBQWtCLEVBQUUsTUFBTSwwQ0FBMEMsQ0FBQztBQUV6RixPQUFPLEVBQUUsT0FBTyxJQUFJLFlBQVksRUFBRSxNQUFNLDhCQUE4QixDQUFDO0FBQ3ZFLE9BQU8sRUFBRSxPQUFPLElBQUksaUJBQWlCLEVBQUUsTUFBTSxvQ0FBb0MsQ0FBQztBQUVsRixPQUFPLEVBQUUsT0FBTyxJQUFJLGFBQWEsRUFBRSxNQUFNLGdDQUFnQyxDQUFDO0FBRTFFLE9BQU8sRUFBRSxPQUFPLElBQUksV0FBVyxFQUFFLE1BQU0sOEJBQThCLENBQUM7QUFDdEUsT0FBTyxFQUFFLE9BQU8sSUFBSSxVQUFVLEVBQUUsTUFBTSw2QkFBNkIsQ0FBQztBQUNwRSxPQUFPLEVBQUUsT0FBTyxJQUFJLG1CQUFtQixFQUFFLE1BQU0sdUNBQXVDLENBQUM7QUFFdkYsT0FBTyxFQUFFLE9BQU8sSUFBSSxXQUFXLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUNoRSxPQUFPLEVBQUUsT0FBTyxJQUFJLFVBQVUsRUFBRSxNQUFNLHVCQUF1QixDQUFDO0FBSTlELE9BQU8sRUFBRSxPQUFPLElBQUksZ0JBQWdCLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQVEzRCxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsdURBQXVEIiwic291cmNlc0NvbnRlbnQiOlsiXG5cblxuXG5cbmV4cG9ydCB7IGRlZmF1bHQgYXMgQmFzaWNDb2x1bW4gfSBmcm9tICcuL2J1aWxkZXIvY29sdW1uL2Jhc2ljLWNvbHVtbic7XG5leHBvcnQgeyBkZWZhdWx0IGFzIEJvb2xlYW5Db2x1bW4gfSBmcm9tICcuL2J1aWxkZXIvY29sdW1uL2Jvb2xlYW4tY29sdW1uJztcbmV4cG9ydCB7IGRlZmF1bHQgYXMgQ29tcGFyYWJsZUNvbHVtbiB9IGZyb20gJy4vYnVpbGRlci9jb2x1bW4vY29tcGFyYWJsZS1jb2x1bW4nO1xuZXhwb3J0IHsgZGVmYXVsdCBhcyBEYXRlQ29sdW1uIH0gZnJvbSAnLi9idWlsZGVyL2NvbHVtbi9kYXRlLWNvbHVtbic7XG5leHBvcnQgeyBkZWZhdWx0IGFzIE51bWJlckNvbHVtbiB9IGZyb20gJy4vYnVpbGRlci9jb2x1bW4vbnVtYmVyLWNvbHVtbic7XG5leHBvcnQgeyBkZWZhdWx0IGFzIFF1ZXJ5Q29sdW1uIH0gZnJvbSAnLi9idWlsZGVyL2NvbHVtbi9xdWVyeS1jb2x1bW4nO1xuZXhwb3J0IHsgZGVmYXVsdCBhcyBTdHJpbmdDb2x1bW4gfSBmcm9tICcuL2J1aWxkZXIvY29sdW1uL3N0cmluZy1jb2x1bW4nO1xuZXhwb3J0IHsgZGVmYXVsdCBhcyBWYWx1ZUNvbHVtbiB9IGZyb20gJy4vYnVpbGRlci9jb2x1bW4vdmFsdWUtY29sdW1uJztcblxuZXhwb3J0IHsgZGVmYXVsdCBhcyBRdWVyeUNvbHVtbkNvbmRpdGlvbiB9IGZyb20gJy4vYnVpbGRlci9jb25kaXRpb24vcXVlcnktY29sdW1uLWNvbmRpdGlvbic7XG5leHBvcnQgeyBkZWZhdWx0IGFzIFF1ZXJ5Q29uZGl0aW9uIH0gZnJvbSAnLi9idWlsZGVyL2NvbmRpdGlvbi9xdWVyeS1jb25kaXRpb24nO1xuZXhwb3J0IHsgZGVmYXVsdCBhcyBRdWVyeUNvbmRpdGlvbkNoYWluIH0gZnJvbSAnLi9idWlsZGVyL2NvbmRpdGlvbi9xdWVyeS1jb25kaXRpb24tY2hhaW4nO1xuZXhwb3J0IHsgZGVmYXVsdCBhcyBRdWVyeUpvaW5Db25kaXRpb24gfSBmcm9tICcuL2J1aWxkZXIvY29uZGl0aW9uL3F1ZXJ5LWpvaW4tY29uZGl0aW9uJztcblxuZXhwb3J0IHsgZGVmYXVsdCBhcyBKb2luZWRUYWJsZXMgfSBmcm9tICcuL2J1aWxkZXIvam9pbi9qb2luZWQtdGFibGVzJztcbmV4cG9ydCB7IGRlZmF1bHQgYXMgSm9pbmVkVGFibGVzQ2hhaW4gfSBmcm9tICcuL2J1aWxkZXIvam9pbi9qb2luZWQtdGFibGVzLWNoYWluJztcblxuZXhwb3J0IHsgZGVmYXVsdCBhcyBRdWVyeU9yZGVyaW5nIH0gZnJvbSAnLi9idWlsZGVyL290aGVyL3F1ZXJ5LW9yZGVyaW5nJztcblxuZXhwb3J0IHsgZGVmYXVsdCBhcyBTZWxlY3RRdWVyeSB9IGZyb20gJy4vYnVpbGRlci9xdWVyeS9zZWxlY3QtcXVlcnknO1xuZXhwb3J0IHsgZGVmYXVsdCBhcyBUYWJsZVF1ZXJ5IH0gZnJvbSAnLi9idWlsZGVyL3F1ZXJ5L3RhYmxlLXF1ZXJ5JztcbmV4cG9ydCB7IGRlZmF1bHQgYXMgVGFibGVDb25kaXRpb25RdWVyeSB9IGZyb20gJy4vYnVpbGRlci9xdWVyeS90YWJsZS1jb25kaXRpb24tcXVlcnknO1xuXG5leHBvcnQgeyBkZWZhdWx0IGFzIFF1ZXJ5U291cmNlIH0gZnJvbSAnLi9idWlsZGVyL3F1ZXJ5LXNvdXJjZSc7XG5leHBvcnQgeyBkZWZhdWx0IGFzIFF1ZXJ5VGFibGUgfSBmcm9tICcuL2J1aWxkZXIvcXVlcnktdGFibGUnO1xuXG5cblxuZXhwb3J0IHsgZGVmYXVsdCBhcyBNeVNxbFF1ZXJ5U291cmNlIH0gZnJvbSAnLi9jbGllbnQvbXlzcWwnO1xuXG5cbmV4cG9ydCB7IFF1ZXJ5UHJvY2Vzc29yT3B0aW9ucyB9IGZyb20gJy4vY2xpZW50L3F1ZXJ5LXByb2Nlc3Nvcic7XG5cblxuZXhwb3J0IHR5cGUgUHJvcHNFbnRpdHlTUUw8SUVudGl0eVR5cGU+ID0geyBbcHJvcCBpbiBrZXlvZiBSZXF1aXJlZDxJRW50aXR5VHlwZT5dOiBhbnk7IH1cblxuIDsoe30pOyAvLyBALS1lbmQtb2YtZmlsZS1mb3ItbW9kdWxlPXRhb24tdHlwZS1zcWwgbGliL2luZGV4LnRzIl19
@@ -0,0 +1,2 @@
1
+ export * from './lib';
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljLWFwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3RtcC1saWJzLWZvci1kaXN0LXdlYnNxbC90YW9uLXR5cGUtc3FsL3Byb2plY3RzL3Rhb24tdHlwZS1zcWwvc3JjL3B1YmxpYy1hcGkudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsY0FBYyxPQUFPLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgKiBmcm9tICcuL2xpYic7XG4iXX0=
@@ -0,0 +1,5 @@
1
+ /**
2
+ * Generated bundle index. Do not edit.
3
+ */
4
+ export * from './public-api';
5
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFvbi10eXBlLXNxbC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3RtcC1saWJzLWZvci1kaXN0LXdlYnNxbC90YW9uLXR5cGUtc3FsL3Byb2plY3RzL3Rhb24tdHlwZS1zcWwvc3JjL3Rhb24tdHlwZS1zcWwudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7O0dBRUc7QUFFSCxjQUFjLGNBQWMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogR2VuZXJhdGVkIGJ1bmRsZSBpbmRleC4gRG8gbm90IGVkaXQuXG4gKi9cblxuZXhwb3J0ICogZnJvbSAnLi9wdWJsaWMtYXBpJztcbiJdfQ==