rawsql-ts 0.13.0 → 0.13.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (1133) hide show
  1. package/dist/esm/formatters/OriginalFormatRestorer.js.map +1 -0
  2. package/dist/esm/index.d.ts +119 -0
  3. package/dist/esm/index.js +95 -91
  4. package/dist/esm/index.js.map +1 -1
  5. package/dist/esm/index.min.js +10 -10
  6. package/dist/esm/index.min.js.map +4 -4
  7. package/dist/esm/models/BinarySelectQuery.js.map +1 -0
  8. package/dist/esm/models/CTEError.js.map +1 -0
  9. package/dist/esm/models/Clause.js.map +1 -0
  10. package/dist/esm/models/CreateTableQuery.js.map +1 -0
  11. package/dist/esm/models/DDLStatements.d.ts +290 -0
  12. package/dist/esm/models/DDLStatements.js +256 -0
  13. package/dist/esm/models/DDLStatements.js.map +1 -0
  14. package/dist/esm/models/DeleteQuery.js.map +1 -0
  15. package/dist/esm/models/HintClause.js.map +1 -0
  16. package/dist/esm/models/InsertQuery.js.map +1 -0
  17. package/dist/esm/models/KeywordTrie.js.map +1 -0
  18. package/dist/esm/models/Lexeme.js.map +1 -0
  19. package/dist/esm/models/MergeQuery.js.map +1 -0
  20. package/dist/esm/models/SelectQuery.js.map +1 -0
  21. package/dist/esm/models/SimpleSelectQuery.js.map +1 -0
  22. package/dist/esm/models/SqlComponent.js.map +1 -0
  23. package/dist/esm/models/SqlPrintToken.d.ts +148 -0
  24. package/dist/esm/models/SqlPrintToken.js +139 -0
  25. package/dist/esm/models/SqlPrintToken.js.map +1 -0
  26. package/dist/esm/models/TableDefinitionModel.d.ts +41 -0
  27. package/dist/esm/models/TableDefinitionModel.js +78 -0
  28. package/dist/esm/models/TableDefinitionModel.js.map +1 -0
  29. package/dist/esm/models/UpdateQuery.js.map +1 -0
  30. package/dist/esm/models/ValueComponent.d.ts +225 -0
  31. package/dist/esm/models/ValueComponent.js +349 -0
  32. package/dist/esm/models/ValueComponent.js.map +1 -0
  33. package/dist/esm/models/ValuesQuery.js.map +1 -0
  34. package/dist/esm/parsers/AlterTableParser.d.ts +26 -0
  35. package/dist/esm/parsers/AlterTableParser.js +486 -0
  36. package/dist/esm/parsers/AlterTableParser.js.map +1 -0
  37. package/dist/esm/parsers/AnalyzeStatementParser.js.map +1 -0
  38. package/dist/esm/parsers/CommandExpressionParser.js.map +1 -0
  39. package/dist/esm/parsers/CommonTableParser.js.map +1 -0
  40. package/dist/esm/parsers/CreateIndexParser.js.map +1 -0
  41. package/dist/esm/parsers/CreateTableParser.js.map +1 -0
  42. package/dist/esm/parsers/DeleteClauseParser.js.map +1 -0
  43. package/dist/esm/parsers/DeleteQueryParser.js.map +1 -0
  44. package/dist/esm/parsers/DropConstraintParser.js.map +1 -0
  45. package/dist/esm/parsers/DropIndexParser.js.map +1 -0
  46. package/dist/esm/parsers/DropTableParser.js.map +1 -0
  47. package/dist/esm/parsers/ExplainStatementParser.js.map +1 -0
  48. package/dist/esm/parsers/FetchClauseParser.js.map +1 -0
  49. package/dist/esm/parsers/ForClauseParser.js.map +1 -0
  50. package/dist/esm/parsers/FromClauseParser.js.map +1 -0
  51. package/dist/esm/parsers/FullNameParser.js.map +1 -0
  52. package/dist/esm/parsers/FunctionExpressionParser.d.ts +65 -0
  53. package/dist/esm/parsers/FunctionExpressionParser.js +520 -0
  54. package/dist/esm/parsers/FunctionExpressionParser.js.map +1 -0
  55. package/dist/esm/parsers/GroupByParser.js.map +1 -0
  56. package/dist/esm/parsers/HavingParser.js.map +1 -0
  57. package/dist/esm/parsers/IdentifierDecorator.js.map +1 -0
  58. package/dist/esm/parsers/IdentifierParser.js.map +1 -0
  59. package/dist/esm/parsers/InsertQueryParser.js.map +1 -0
  60. package/dist/esm/parsers/JoinClauseParser.js.map +1 -0
  61. package/dist/esm/parsers/JoinOnClauseParser.js.map +1 -0
  62. package/dist/esm/parsers/JoinUsingClauseParser.js.map +1 -0
  63. package/dist/esm/parsers/KeywordParser.js.map +1 -0
  64. package/dist/esm/parsers/LimitClauseParser.js.map +1 -0
  65. package/dist/esm/parsers/LiteralParser.js.map +1 -0
  66. package/dist/esm/parsers/MergeQueryParser.js.map +1 -0
  67. package/dist/esm/parsers/OffsetClauseParser.js.map +1 -0
  68. package/dist/esm/parsers/OrderByClauseParser.js.map +1 -0
  69. package/dist/esm/parsers/OverExpressionParser.js.map +1 -0
  70. package/dist/esm/parsers/ParameterDecorator.js.map +1 -0
  71. package/dist/esm/parsers/ParameterExpressionParser.js.map +1 -0
  72. package/dist/esm/parsers/ParenExpressionParser.js.map +1 -0
  73. package/dist/esm/parsers/ParseError.js.map +1 -0
  74. package/dist/esm/parsers/PartitionByParser.js.map +1 -0
  75. package/dist/esm/parsers/ReturningClauseParser.js.map +1 -0
  76. package/dist/esm/parsers/SelectClauseParser.js.map +1 -0
  77. package/dist/esm/parsers/SelectQueryParser.js.map +1 -0
  78. package/dist/esm/parsers/SequenceParser.d.ts +16 -0
  79. package/dist/esm/parsers/SequenceParser.js +240 -0
  80. package/dist/esm/parsers/SequenceParser.js.map +1 -0
  81. package/dist/esm/parsers/SetClauseParser.js.map +1 -0
  82. package/dist/esm/parsers/SourceAliasExpressionParser.js.map +1 -0
  83. package/dist/esm/parsers/SourceExpressionParser.js.map +1 -0
  84. package/dist/esm/parsers/SourceParser.js.map +1 -0
  85. package/dist/esm/parsers/SqlParser.d.ts +41 -0
  86. package/dist/esm/parsers/SqlParser.js +427 -0
  87. package/dist/esm/parsers/SqlParser.js.map +1 -0
  88. package/dist/esm/parsers/SqlPrintTokenParser.d.ts +320 -0
  89. package/dist/esm/parsers/SqlPrintTokenParser.js +3285 -0
  90. package/dist/esm/parsers/SqlPrintTokenParser.js.map +1 -0
  91. package/dist/esm/parsers/SqlTokenizer.d.ts +124 -0
  92. package/dist/esm/parsers/SqlTokenizer.js +536 -0
  93. package/dist/esm/parsers/SqlTokenizer.js.map +1 -0
  94. package/dist/esm/parsers/StringSpecifierExpressionParser.js.map +1 -0
  95. package/dist/esm/parsers/UnaryExpressionParser.js.map +1 -0
  96. package/dist/esm/parsers/UpdateClauseParser.js.map +1 -0
  97. package/dist/esm/parsers/UpdateQueryParser.js.map +1 -0
  98. package/dist/esm/parsers/UsingClauseParser.js.map +1 -0
  99. package/dist/esm/parsers/ValueParser.js +558 -0
  100. package/dist/esm/parsers/ValueParser.js.map +1 -0
  101. package/dist/esm/parsers/ValuesQueryParser.js.map +1 -0
  102. package/dist/esm/parsers/WhereClauseParser.js.map +1 -0
  103. package/dist/esm/parsers/WindowClauseParser.js.map +1 -0
  104. package/dist/esm/parsers/WindowExpressionParser.js.map +1 -0
  105. package/dist/esm/parsers/WithClauseParser.js.map +1 -0
  106. package/dist/esm/parsers/utils/LexemeCommentUtils.js.map +1 -0
  107. package/dist/esm/reporting/models/DataFlowEdge.js.map +1 -0
  108. package/dist/esm/reporting/models/DataFlowGraph.js.map +1 -0
  109. package/dist/esm/reporting/models/DataFlowNode.js.map +1 -0
  110. package/dist/esm/reporting/services/CTEHandler.js.map +1 -0
  111. package/dist/esm/reporting/services/DataSourceHandler.js.map +1 -0
  112. package/dist/esm/reporting/services/JoinHandler.js.map +1 -0
  113. package/dist/esm/reporting/services/ProcessHandler.js.map +1 -0
  114. package/dist/esm/tokenReaders/BaseTokenReader.js.map +1 -0
  115. package/dist/esm/tokenReaders/CommandTokenReader.js +217 -0
  116. package/dist/esm/tokenReaders/CommandTokenReader.js.map +1 -0
  117. package/dist/esm/tokenReaders/EscapedIdentifierTokenReader.js.map +1 -0
  118. package/dist/esm/tokenReaders/FunctionTokenReader.js.map +1 -0
  119. package/dist/esm/tokenReaders/IdentifierTokenReader.js.map +1 -0
  120. package/dist/esm/tokenReaders/LiteralTokenReader.js.map +1 -0
  121. package/dist/esm/tokenReaders/OperatorTokenReader.js.map +1 -0
  122. package/dist/esm/tokenReaders/ParameterTokenReader.js.map +1 -0
  123. package/dist/esm/tokenReaders/StringSpecifierTokenReader.js.map +1 -0
  124. package/dist/esm/tokenReaders/SymbolTokenReader.js.map +1 -0
  125. package/dist/esm/tokenReaders/TokenReaderManager.js.map +1 -0
  126. package/dist/esm/tokenReaders/TypeTokenReader.js.map +1 -0
  127. package/dist/esm/transformers/AliasRenamer.js.map +1 -0
  128. package/dist/esm/transformers/CTEBuilder.js.map +1 -0
  129. package/dist/esm/transformers/CTECollector.js.map +1 -0
  130. package/dist/esm/transformers/CTEComposer.js.map +1 -0
  131. package/dist/esm/transformers/CTEDependencyAnalyzer.js.map +1 -0
  132. package/dist/esm/transformers/CTEDependencyTracer.js.map +1 -0
  133. package/dist/esm/transformers/CTEDisabler.js.map +1 -0
  134. package/dist/esm/transformers/CTEInjector.js.map +1 -0
  135. package/dist/esm/transformers/CTENormalizer.js.map +1 -0
  136. package/dist/esm/transformers/CTEQueryDecomposer.js.map +1 -0
  137. package/dist/esm/transformers/CTERenamer.js.map +1 -0
  138. package/dist/esm/transformers/CTETableReferenceCollector.js.map +1 -0
  139. package/dist/esm/transformers/ColumnReferenceCollector.js +474 -0
  140. package/dist/esm/transformers/ColumnReferenceCollector.js.map +1 -0
  141. package/dist/esm/transformers/DDLDiffGenerator.d.ts +18 -0
  142. package/dist/esm/transformers/DDLDiffGenerator.js +309 -0
  143. package/dist/esm/transformers/DDLDiffGenerator.js.map +1 -0
  144. package/dist/esm/transformers/DDLGeneralizer.js.map +1 -0
  145. package/dist/esm/transformers/DDLToFixtureConverter.js.map +1 -0
  146. package/dist/esm/transformers/DeleteResultSelectConverter.js +410 -0
  147. package/dist/esm/transformers/DeleteResultSelectConverter.js.map +1 -0
  148. package/dist/esm/transformers/DynamicQueryBuilder.js.map +1 -0
  149. package/dist/esm/transformers/EnhancedJsonMapping.js.map +1 -0
  150. package/dist/esm/transformers/FilterableItemCollector.js.map +1 -0
  151. package/dist/esm/transformers/FixtureCteBuilder.js.map +1 -0
  152. package/dist/esm/transformers/FormatOptionResolver.js.map +1 -0
  153. package/dist/esm/transformers/Formatter.js.map +1 -0
  154. package/dist/esm/transformers/InsertQuerySelectValuesConverter.js.map +1 -0
  155. package/dist/esm/transformers/InsertResultSelectConverter.d.ts +67 -0
  156. package/dist/esm/transformers/InsertResultSelectConverter.js +585 -0
  157. package/dist/esm/transformers/InsertResultSelectConverter.js.map +1 -0
  158. package/dist/esm/transformers/JoinAggregationDecomposer.js.map +1 -0
  159. package/dist/esm/transformers/JsonMappingConverter.js.map +1 -0
  160. package/dist/esm/transformers/JsonMappingUnifier.js.map +1 -0
  161. package/dist/esm/transformers/LinePrinter.js.map +1 -0
  162. package/dist/esm/transformers/MergeResultSelectConverter.js.map +1 -0
  163. package/dist/esm/transformers/ModelDrivenJsonMapping.js.map +1 -0
  164. package/dist/esm/transformers/OnelineFormattingHelper.js.map +1 -0
  165. package/dist/esm/transformers/ParameterCollector.js.map +1 -0
  166. package/dist/esm/transformers/PostgresArrayEntityCteBuilder.js.map +1 -0
  167. package/dist/esm/transformers/PostgresJsonQueryBuilder.js.map +1 -0
  168. package/dist/esm/transformers/PostgresObjectEntityCteBuilder.js.map +1 -0
  169. package/dist/esm/transformers/QueryBuilder.js.map +1 -0
  170. package/dist/esm/transformers/QueryFlowDiagramGenerator.js.map +1 -0
  171. package/dist/esm/transformers/SchemaCollector.js.map +1 -0
  172. package/dist/esm/transformers/SelectResultSelectConverter.js.map +1 -0
  173. package/dist/esm/transformers/SelectValueCollector.js.map +1 -0
  174. package/dist/esm/transformers/SelectableColumnCollector.js.map +1 -0
  175. package/dist/esm/transformers/SimulatedSelectConverter.js.map +1 -0
  176. package/dist/esm/transformers/SmartRenamer.js.map +1 -0
  177. package/dist/esm/transformers/SqlFormatter.js.map +1 -0
  178. package/dist/esm/transformers/SqlIdentifierRenamer.js.map +1 -0
  179. package/dist/esm/transformers/SqlOutputToken.js.map +1 -0
  180. package/dist/esm/transformers/SqlPaginationInjector.js.map +1 -0
  181. package/dist/esm/transformers/SqlParamInjector.js.map +1 -0
  182. package/dist/esm/transformers/SqlParameterBinder.js.map +1 -0
  183. package/dist/esm/transformers/SqlPrinter.js +1474 -0
  184. package/dist/esm/transformers/SqlPrinter.js.map +1 -0
  185. package/dist/esm/transformers/SqlSortInjector.js.map +1 -0
  186. package/dist/esm/transformers/TableSourceCollector.js +435 -0
  187. package/dist/esm/transformers/TableSourceCollector.js.map +1 -0
  188. package/dist/esm/transformers/TypeTransformationPostProcessor.js.map +1 -0
  189. package/dist/esm/transformers/UpdateResultSelectConverter.js +355 -0
  190. package/dist/esm/transformers/UpdateResultSelectConverter.js.map +1 -0
  191. package/dist/esm/transformers/UpstreamSelectQueryFinder.js.map +1 -0
  192. package/dist/esm/types/GenericFixture.d.ts +17 -0
  193. package/dist/esm/types/GenericFixture.js +2 -0
  194. package/dist/esm/types/GenericFixture.js.map +1 -0
  195. package/dist/esm/utils/CTERegionDetector.js.map +1 -0
  196. package/dist/esm/utils/CommentEditor.js.map +1 -0
  197. package/dist/esm/utils/CommentUtils.js.map +1 -0
  198. package/dist/esm/utils/CursorContextAnalyzer.js.map +1 -0
  199. package/dist/esm/utils/IntelliSenseApi.js.map +1 -0
  200. package/dist/esm/utils/JsonSchemaValidator.js.map +1 -0
  201. package/dist/esm/utils/KeywordCache.js.map +1 -0
  202. package/dist/esm/utils/LexemeCursor.js.map +1 -0
  203. package/dist/esm/utils/MultiQuerySplitter.js.map +1 -0
  204. package/dist/esm/utils/OperatorPrecedence.js.map +1 -0
  205. package/dist/esm/utils/ParameterDetector.js.map +1 -0
  206. package/dist/esm/utils/ParameterHelper.js.map +1 -0
  207. package/dist/esm/utils/ParameterRemover.js +779 -0
  208. package/dist/esm/utils/ParameterRemover.js.map +1 -0
  209. package/dist/esm/utils/ParserStringUtils.js.map +1 -0
  210. package/dist/esm/utils/PositionAwareParser.js.map +1 -0
  211. package/dist/esm/utils/SchemaManager.js.map +1 -0
  212. package/dist/esm/utils/ScopeResolver.js.map +1 -0
  213. package/dist/esm/utils/SelectQueryWithClauseHelper.js.map +1 -0
  214. package/dist/esm/utils/SqlSchemaValidator.js.map +1 -0
  215. package/dist/esm/utils/TableNameUtils.d.ts +10 -0
  216. package/dist/esm/utils/TableNameUtils.js +30 -0
  217. package/dist/esm/utils/TableNameUtils.js.map +1 -0
  218. package/dist/esm/utils/TextPositionUtils.js.map +1 -0
  219. package/dist/esm/utils/ValueComponentRewriter.js +184 -0
  220. package/dist/esm/utils/ValueComponentRewriter.js.map +1 -0
  221. package/dist/esm/utils/charLookupTable.js.map +1 -0
  222. package/dist/esm/utils/stringUtils.js.map +1 -0
  223. package/dist/index.min.js +10 -10
  224. package/dist/index.min.js.map +4 -4
  225. package/dist/tsconfig.browser.tsbuildinfo +1 -0
  226. package/package.json +1 -1
  227. package/dist/esm/src/formatters/OriginalFormatRestorer.js.map +0 -1
  228. package/dist/esm/src/index.d.ts +0 -116
  229. package/dist/esm/src/index.js +0 -111
  230. package/dist/esm/src/index.js.map +0 -1
  231. package/dist/esm/src/models/BinarySelectQuery.js.map +0 -1
  232. package/dist/esm/src/models/CTEError.js.map +0 -1
  233. package/dist/esm/src/models/Clause.js.map +0 -1
  234. package/dist/esm/src/models/CreateTableQuery.js.map +0 -1
  235. package/dist/esm/src/models/DDLStatements.d.ts +0 -207
  236. package/dist/esm/src/models/DDLStatements.js +0 -213
  237. package/dist/esm/src/models/DDLStatements.js.map +0 -1
  238. package/dist/esm/src/models/DeleteQuery.js.map +0 -1
  239. package/dist/esm/src/models/FormattingLexeme.js.map +0 -1
  240. package/dist/esm/src/models/HintClause.js.map +0 -1
  241. package/dist/esm/src/models/InsertQuery.js.map +0 -1
  242. package/dist/esm/src/models/KeywordTrie.js.map +0 -1
  243. package/dist/esm/src/models/Lexeme.js.map +0 -1
  244. package/dist/esm/src/models/MergeQuery.js.map +0 -1
  245. package/dist/esm/src/models/SelectQuery.js.map +0 -1
  246. package/dist/esm/src/models/SimpleSelectQuery.js.map +0 -1
  247. package/dist/esm/src/models/SqlComponent.js.map +0 -1
  248. package/dist/esm/src/models/SqlPrintToken.d.ts +0 -143
  249. package/dist/esm/src/models/SqlPrintToken.js +0 -134
  250. package/dist/esm/src/models/SqlPrintToken.js.map +0 -1
  251. package/dist/esm/src/models/TableDefinitionModel.d.ts +0 -39
  252. package/dist/esm/src/models/TableDefinitionModel.js +0 -77
  253. package/dist/esm/src/models/TableDefinitionModel.js.map +0 -1
  254. package/dist/esm/src/models/UpdateQuery.js.map +0 -1
  255. package/dist/esm/src/models/ValueComponent.d.ts +0 -224
  256. package/dist/esm/src/models/ValueComponent.js +0 -348
  257. package/dist/esm/src/models/ValueComponent.js.map +0 -1
  258. package/dist/esm/src/models/ValuesQuery.js.map +0 -1
  259. package/dist/esm/src/parsers/AlterTableParser.d.ts +0 -25
  260. package/dist/esm/src/parsers/AlterTableParser.js +0 -428
  261. package/dist/esm/src/parsers/AlterTableParser.js.map +0 -1
  262. package/dist/esm/src/parsers/AnalyzeStatementParser.js.map +0 -1
  263. package/dist/esm/src/parsers/CommandExpressionParser.js.map +0 -1
  264. package/dist/esm/src/parsers/CommonTableParser.js.map +0 -1
  265. package/dist/esm/src/parsers/CreateIndexParser.js.map +0 -1
  266. package/dist/esm/src/parsers/CreateTableParser.js.map +0 -1
  267. package/dist/esm/src/parsers/DeleteClauseParser.js.map +0 -1
  268. package/dist/esm/src/parsers/DeleteQueryParser.js.map +0 -1
  269. package/dist/esm/src/parsers/DropConstraintParser.js.map +0 -1
  270. package/dist/esm/src/parsers/DropIndexParser.js.map +0 -1
  271. package/dist/esm/src/parsers/DropTableParser.js.map +0 -1
  272. package/dist/esm/src/parsers/ExplainStatementParser.js.map +0 -1
  273. package/dist/esm/src/parsers/FetchClauseParser.js.map +0 -1
  274. package/dist/esm/src/parsers/ForClauseParser.js.map +0 -1
  275. package/dist/esm/src/parsers/FromClauseParser.js.map +0 -1
  276. package/dist/esm/src/parsers/FullNameParser.js.map +0 -1
  277. package/dist/esm/src/parsers/FunctionExpressionParser.d.ts +0 -64
  278. package/dist/esm/src/parsers/FunctionExpressionParser.js +0 -487
  279. package/dist/esm/src/parsers/FunctionExpressionParser.js.map +0 -1
  280. package/dist/esm/src/parsers/GroupByParser.js.map +0 -1
  281. package/dist/esm/src/parsers/HavingParser.js.map +0 -1
  282. package/dist/esm/src/parsers/IdentifierDecorator.js.map +0 -1
  283. package/dist/esm/src/parsers/IdentifierParser.js.map +0 -1
  284. package/dist/esm/src/parsers/InsertQueryParser.js.map +0 -1
  285. package/dist/esm/src/parsers/JoinClauseParser.js.map +0 -1
  286. package/dist/esm/src/parsers/JoinOnClauseParser.js.map +0 -1
  287. package/dist/esm/src/parsers/JoinUsingClauseParser.js.map +0 -1
  288. package/dist/esm/src/parsers/KeywordParser.js.map +0 -1
  289. package/dist/esm/src/parsers/LimitClauseParser.js.map +0 -1
  290. package/dist/esm/src/parsers/LiteralParser.js.map +0 -1
  291. package/dist/esm/src/parsers/MergeQueryParser.js.map +0 -1
  292. package/dist/esm/src/parsers/OffsetClauseParser.js.map +0 -1
  293. package/dist/esm/src/parsers/OrderByClauseParser.js.map +0 -1
  294. package/dist/esm/src/parsers/OverExpressionParser.js.map +0 -1
  295. package/dist/esm/src/parsers/ParameterDecorator.js.map +0 -1
  296. package/dist/esm/src/parsers/ParameterExpressionParser.js.map +0 -1
  297. package/dist/esm/src/parsers/ParenExpressionParser.js.map +0 -1
  298. package/dist/esm/src/parsers/ParseError.js.map +0 -1
  299. package/dist/esm/src/parsers/PartitionByParser.js.map +0 -1
  300. package/dist/esm/src/parsers/ReturningClauseParser.js.map +0 -1
  301. package/dist/esm/src/parsers/SelectClauseParser.js.map +0 -1
  302. package/dist/esm/src/parsers/SelectQueryParser.js.map +0 -1
  303. package/dist/esm/src/parsers/SetClauseParser.js.map +0 -1
  304. package/dist/esm/src/parsers/SourceAliasExpressionParser.js.map +0 -1
  305. package/dist/esm/src/parsers/SourceExpressionParser.js.map +0 -1
  306. package/dist/esm/src/parsers/SourceParser.js.map +0 -1
  307. package/dist/esm/src/parsers/SqlParser.d.ts +0 -39
  308. package/dist/esm/src/parsers/SqlParser.js +0 -386
  309. package/dist/esm/src/parsers/SqlParser.js.map +0 -1
  310. package/dist/esm/src/parsers/SqlPrintTokenParser.d.ts +0 -312
  311. package/dist/esm/src/parsers/SqlPrintTokenParser.js +0 -3076
  312. package/dist/esm/src/parsers/SqlPrintTokenParser.js.map +0 -1
  313. package/dist/esm/src/parsers/SqlTokenizer.d.ts +0 -123
  314. package/dist/esm/src/parsers/SqlTokenizer.js +0 -503
  315. package/dist/esm/src/parsers/SqlTokenizer.js.map +0 -1
  316. package/dist/esm/src/parsers/StringSpecifierExpressionParser.js.map +0 -1
  317. package/dist/esm/src/parsers/UnaryExpressionParser.js.map +0 -1
  318. package/dist/esm/src/parsers/UpdateClauseParser.js.map +0 -1
  319. package/dist/esm/src/parsers/UpdateQueryParser.js.map +0 -1
  320. package/dist/esm/src/parsers/UsingClauseParser.js.map +0 -1
  321. package/dist/esm/src/parsers/ValueParser.js +0 -531
  322. package/dist/esm/src/parsers/ValueParser.js.map +0 -1
  323. package/dist/esm/src/parsers/ValuesQueryParser.js.map +0 -1
  324. package/dist/esm/src/parsers/WhereClauseParser.js.map +0 -1
  325. package/dist/esm/src/parsers/WindowClauseParser.js.map +0 -1
  326. package/dist/esm/src/parsers/WindowExpressionParser.js.map +0 -1
  327. package/dist/esm/src/parsers/WithClauseParser.js.map +0 -1
  328. package/dist/esm/src/parsers/utils/LexemeCommentUtils.js.map +0 -1
  329. package/dist/esm/src/reporting/models/DataFlowEdge.js.map +0 -1
  330. package/dist/esm/src/reporting/models/DataFlowGraph.js.map +0 -1
  331. package/dist/esm/src/reporting/models/DataFlowNode.js.map +0 -1
  332. package/dist/esm/src/reporting/services/CTEHandler.js.map +0 -1
  333. package/dist/esm/src/reporting/services/DataSourceHandler.js.map +0 -1
  334. package/dist/esm/src/reporting/services/JoinHandler.js.map +0 -1
  335. package/dist/esm/src/reporting/services/ProcessHandler.js.map +0 -1
  336. package/dist/esm/src/tokenReaders/BaseTokenReader.js.map +0 -1
  337. package/dist/esm/src/tokenReaders/CommandTokenReader.js +0 -212
  338. package/dist/esm/src/tokenReaders/CommandTokenReader.js.map +0 -1
  339. package/dist/esm/src/tokenReaders/EscapedIdentifierTokenReader.js.map +0 -1
  340. package/dist/esm/src/tokenReaders/FunctionTokenReader.js.map +0 -1
  341. package/dist/esm/src/tokenReaders/IdentifierTokenReader.js.map +0 -1
  342. package/dist/esm/src/tokenReaders/LiteralTokenReader.js.map +0 -1
  343. package/dist/esm/src/tokenReaders/OperatorTokenReader.js.map +0 -1
  344. package/dist/esm/src/tokenReaders/ParameterTokenReader.js.map +0 -1
  345. package/dist/esm/src/tokenReaders/StringSpecifierTokenReader.js.map +0 -1
  346. package/dist/esm/src/tokenReaders/SymbolTokenReader.js.map +0 -1
  347. package/dist/esm/src/tokenReaders/TokenReaderManager.js.map +0 -1
  348. package/dist/esm/src/tokenReaders/TypeTokenReader.js.map +0 -1
  349. package/dist/esm/src/transformers/AliasRenamer.js.map +0 -1
  350. package/dist/esm/src/transformers/CTEBuilder.js.map +0 -1
  351. package/dist/esm/src/transformers/CTECollector.js.map +0 -1
  352. package/dist/esm/src/transformers/CTEComposer.js.map +0 -1
  353. package/dist/esm/src/transformers/CTEDependencyAnalyzer.js.map +0 -1
  354. package/dist/esm/src/transformers/CTEDependencyTracer.js.map +0 -1
  355. package/dist/esm/src/transformers/CTEDisabler.js.map +0 -1
  356. package/dist/esm/src/transformers/CTEInjector.js.map +0 -1
  357. package/dist/esm/src/transformers/CTENormalizer.js.map +0 -1
  358. package/dist/esm/src/transformers/CTEQueryDecomposer.js.map +0 -1
  359. package/dist/esm/src/transformers/CTERenamer.js.map +0 -1
  360. package/dist/esm/src/transformers/CTETableReferenceCollector.js.map +0 -1
  361. package/dist/esm/src/transformers/ColumnReferenceCollector.js +0 -464
  362. package/dist/esm/src/transformers/ColumnReferenceCollector.js.map +0 -1
  363. package/dist/esm/src/transformers/DDLDiffGenerator.d.ts +0 -14
  364. package/dist/esm/src/transformers/DDLDiffGenerator.js +0 -197
  365. package/dist/esm/src/transformers/DDLDiffGenerator.js.map +0 -1
  366. package/dist/esm/src/transformers/DDLGeneralizer.js.map +0 -1
  367. package/dist/esm/src/transformers/DDLToFixtureConverter.js.map +0 -1
  368. package/dist/esm/src/transformers/DeleteResultSelectConverter.js +0 -394
  369. package/dist/esm/src/transformers/DeleteResultSelectConverter.js.map +0 -1
  370. package/dist/esm/src/transformers/DynamicQueryBuilder.js.map +0 -1
  371. package/dist/esm/src/transformers/EnhancedJsonMapping.js.map +0 -1
  372. package/dist/esm/src/transformers/FilterableItemCollector.js.map +0 -1
  373. package/dist/esm/src/transformers/FixtureCteBuilder.js.map +0 -1
  374. package/dist/esm/src/transformers/FormatOptionResolver.js.map +0 -1
  375. package/dist/esm/src/transformers/Formatter.js.map +0 -1
  376. package/dist/esm/src/transformers/InsertQuerySelectValuesConverter.js.map +0 -1
  377. package/dist/esm/src/transformers/InsertResultSelectConverter.d.ts +0 -64
  378. package/dist/esm/src/transformers/InsertResultSelectConverter.js +0 -495
  379. package/dist/esm/src/transformers/InsertResultSelectConverter.js.map +0 -1
  380. package/dist/esm/src/transformers/JoinAggregationDecomposer.js.map +0 -1
  381. package/dist/esm/src/transformers/JsonMappingConverter.js.map +0 -1
  382. package/dist/esm/src/transformers/JsonMappingUnifier.js.map +0 -1
  383. package/dist/esm/src/transformers/LinePrinter.js.map +0 -1
  384. package/dist/esm/src/transformers/MergeResultSelectConverter.js.map +0 -1
  385. package/dist/esm/src/transformers/ModelDrivenJsonMapping.js.map +0 -1
  386. package/dist/esm/src/transformers/OnelineFormattingHelper.js.map +0 -1
  387. package/dist/esm/src/transformers/ParameterCollector.js.map +0 -1
  388. package/dist/esm/src/transformers/PostgresArrayEntityCteBuilder.js.map +0 -1
  389. package/dist/esm/src/transformers/PostgresJsonQueryBuilder.js.map +0 -1
  390. package/dist/esm/src/transformers/PostgresObjectEntityCteBuilder.js.map +0 -1
  391. package/dist/esm/src/transformers/QueryBuilder.js.map +0 -1
  392. package/dist/esm/src/transformers/QueryFlowDiagramGenerator.js.map +0 -1
  393. package/dist/esm/src/transformers/SchemaCollector.js.map +0 -1
  394. package/dist/esm/src/transformers/SelectResultSelectConverter.js.map +0 -1
  395. package/dist/esm/src/transformers/SelectValueCollector.js.map +0 -1
  396. package/dist/esm/src/transformers/SelectableColumnCollector.js.map +0 -1
  397. package/dist/esm/src/transformers/SimulatedSelectConverter.js.map +0 -1
  398. package/dist/esm/src/transformers/SmartRenamer.js.map +0 -1
  399. package/dist/esm/src/transformers/SqlFormatter.js.map +0 -1
  400. package/dist/esm/src/transformers/SqlIdentifierRenamer.js.map +0 -1
  401. package/dist/esm/src/transformers/SqlOutputToken.js.map +0 -1
  402. package/dist/esm/src/transformers/SqlPaginationInjector.js.map +0 -1
  403. package/dist/esm/src/transformers/SqlParamInjector.js.map +0 -1
  404. package/dist/esm/src/transformers/SqlParameterBinder.js.map +0 -1
  405. package/dist/esm/src/transformers/SqlPrinter.js +0 -1473
  406. package/dist/esm/src/transformers/SqlPrinter.js.map +0 -1
  407. package/dist/esm/src/transformers/SqlSortInjector.js.map +0 -1
  408. package/dist/esm/src/transformers/TableColumnResolver.js.map +0 -1
  409. package/dist/esm/src/transformers/TableSourceCollector.js +0 -431
  410. package/dist/esm/src/transformers/TableSourceCollector.js.map +0 -1
  411. package/dist/esm/src/transformers/TypeTransformationPostProcessor.js.map +0 -1
  412. package/dist/esm/src/transformers/UpdateResultSelectConverter.js +0 -340
  413. package/dist/esm/src/transformers/UpdateResultSelectConverter.js.map +0 -1
  414. package/dist/esm/src/transformers/UpstreamSelectQueryFinder.js.map +0 -1
  415. package/dist/esm/src/types/Formatting.js.map +0 -1
  416. package/dist/esm/src/utils/CTERegionDetector.js.map +0 -1
  417. package/dist/esm/src/utils/CommentEditor.js.map +0 -1
  418. package/dist/esm/src/utils/CommentUtils.js.map +0 -1
  419. package/dist/esm/src/utils/CursorContextAnalyzer.js.map +0 -1
  420. package/dist/esm/src/utils/IntelliSenseApi.js.map +0 -1
  421. package/dist/esm/src/utils/JsonSchemaValidator.js.map +0 -1
  422. package/dist/esm/src/utils/KeywordCache.js.map +0 -1
  423. package/dist/esm/src/utils/LexemeCursor.js.map +0 -1
  424. package/dist/esm/src/utils/MultiQuerySplitter.js.map +0 -1
  425. package/dist/esm/src/utils/OperatorPrecedence.js.map +0 -1
  426. package/dist/esm/src/utils/ParameterDetector.js.map +0 -1
  427. package/dist/esm/src/utils/ParameterHelper.js.map +0 -1
  428. package/dist/esm/src/utils/ParameterRemover.js +0 -777
  429. package/dist/esm/src/utils/ParameterRemover.js.map +0 -1
  430. package/dist/esm/src/utils/ParserStringUtils.js.map +0 -1
  431. package/dist/esm/src/utils/PositionAwareParser.js.map +0 -1
  432. package/dist/esm/src/utils/SchemaManager.js.map +0 -1
  433. package/dist/esm/src/utils/ScopeResolver.js.map +0 -1
  434. package/dist/esm/src/utils/SelectQueryWithClauseHelper.js.map +0 -1
  435. package/dist/esm/src/utils/SqlSchemaValidator.js.map +0 -1
  436. package/dist/esm/src/utils/TextPositionUtils.js.map +0 -1
  437. package/dist/esm/src/utils/ValueComponentRewriter.js +0 -180
  438. package/dist/esm/src/utils/ValueComponentRewriter.js.map +0 -1
  439. package/dist/esm/src/utils/charLookupTable.js.map +0 -1
  440. package/dist/esm/src/utils/stringUtils.js.map +0 -1
  441. package/dist/esm/tsconfig.browser.tsbuildinfo +0 -1
  442. package/dist/src/formatters/OriginalFormatRestorer.js +0 -139
  443. package/dist/src/formatters/OriginalFormatRestorer.js.map +0 -1
  444. package/dist/src/index.js +0 -138
  445. package/dist/src/index.js.map +0 -1
  446. package/dist/src/models/BinarySelectQuery.js +0 -198
  447. package/dist/src/models/BinarySelectQuery.js.map +0 -1
  448. package/dist/src/models/CTEError.js +0 -37
  449. package/dist/src/models/CTEError.js.map +0 -1
  450. package/dist/src/models/Clause.js +0 -535
  451. package/dist/src/models/Clause.js.map +0 -1
  452. package/dist/src/models/CreateTableQuery.js +0 -135
  453. package/dist/src/models/CreateTableQuery.js.map +0 -1
  454. package/dist/src/models/DDLStatements.js +0 -229
  455. package/dist/src/models/DDLStatements.js.map +0 -1
  456. package/dist/src/models/DeleteQuery.js +0 -20
  457. package/dist/src/models/DeleteQuery.js.map +0 -1
  458. package/dist/src/models/FormattingLexeme.js +0 -3
  459. package/dist/src/models/HintClause.js +0 -41
  460. package/dist/src/models/HintClause.js.map +0 -1
  461. package/dist/src/models/InsertQuery.js +0 -23
  462. package/dist/src/models/InsertQuery.js.map +0 -1
  463. package/dist/src/models/KeywordTrie.js +0 -54
  464. package/dist/src/models/KeywordTrie.js.map +0 -1
  465. package/dist/src/models/Lexeme.js +0 -22
  466. package/dist/src/models/Lexeme.js.map +0 -1
  467. package/dist/src/models/MergeQuery.js +0 -104
  468. package/dist/src/models/MergeQuery.js.map +0 -1
  469. package/dist/src/models/SelectQuery.js +0 -22
  470. package/dist/src/models/SelectQuery.js.map +0 -1
  471. package/dist/src/models/SimpleSelectQuery.js +0 -648
  472. package/dist/src/models/SimpleSelectQuery.js.map +0 -1
  473. package/dist/src/models/SqlComponent.js +0 -73
  474. package/dist/src/models/SqlComponent.js.map +0 -1
  475. package/dist/src/models/SqlPrintToken.js +0 -138
  476. package/dist/src/models/SqlPrintToken.js.map +0 -1
  477. package/dist/src/models/TableDefinitionModel.js +0 -85
  478. package/dist/src/models/TableDefinitionModel.js.map +0 -1
  479. package/dist/src/models/UpdateQuery.js +0 -29
  480. package/dist/src/models/UpdateQuery.js.map +0 -1
  481. package/dist/src/models/ValueComponent.js +0 -379
  482. package/dist/src/models/ValueComponent.js.map +0 -1
  483. package/dist/src/models/ValuesQuery.js +0 -62
  484. package/dist/src/models/ValuesQuery.js.map +0 -1
  485. package/dist/src/parsers/AlterTableParser.js +0 -453
  486. package/dist/src/parsers/AlterTableParser.js.map +0 -1
  487. package/dist/src/parsers/AnalyzeStatementParser.js +0 -94
  488. package/dist/src/parsers/AnalyzeStatementParser.js.map +0 -1
  489. package/dist/src/parsers/CommandExpressionParser.js +0 -213
  490. package/dist/src/parsers/CommandExpressionParser.js.map +0 -1
  491. package/dist/src/parsers/CommonTableParser.js +0 -177
  492. package/dist/src/parsers/CommonTableParser.js.map +0 -1
  493. package/dist/src/parsers/CreateIndexParser.js +0 -241
  494. package/dist/src/parsers/CreateIndexParser.js.map +0 -1
  495. package/dist/src/parsers/CreateTableParser.js +0 -738
  496. package/dist/src/parsers/CreateTableParser.js.map +0 -1
  497. package/dist/src/parsers/DeleteClauseParser.js +0 -37
  498. package/dist/src/parsers/DeleteClauseParser.js.map +0 -1
  499. package/dist/src/parsers/DeleteQueryParser.js +0 -77
  500. package/dist/src/parsers/DeleteQueryParser.js.map +0 -1
  501. package/dist/src/parsers/DropConstraintParser.js +0 -51
  502. package/dist/src/parsers/DropConstraintParser.js.map +0 -1
  503. package/dist/src/parsers/DropIndexParser.js +0 -73
  504. package/dist/src/parsers/DropIndexParser.js.map +0 -1
  505. package/dist/src/parsers/DropTableParser.js +0 -63
  506. package/dist/src/parsers/DropTableParser.js.map +0 -1
  507. package/dist/src/parsers/ExplainStatementParser.js +0 -189
  508. package/dist/src/parsers/ExplainStatementParser.js.map +0 -1
  509. package/dist/src/parsers/FetchClauseParser.js +0 -89
  510. package/dist/src/parsers/FetchClauseParser.js.map +0 -1
  511. package/dist/src/parsers/ForClauseParser.js +0 -58
  512. package/dist/src/parsers/ForClauseParser.js.map +0 -1
  513. package/dist/src/parsers/FromClauseParser.js +0 -54
  514. package/dist/src/parsers/FromClauseParser.js.map +0 -1
  515. package/dist/src/parsers/FullNameParser.js +0 -110
  516. package/dist/src/parsers/FullNameParser.js.map +0 -1
  517. package/dist/src/parsers/FunctionExpressionParser.js +0 -491
  518. package/dist/src/parsers/FunctionExpressionParser.js.map +0 -1
  519. package/dist/src/parsers/GroupByParser.js +0 -58
  520. package/dist/src/parsers/GroupByParser.js.map +0 -1
  521. package/dist/src/parsers/HavingParser.js +0 -36
  522. package/dist/src/parsers/HavingParser.js.map +0 -1
  523. package/dist/src/parsers/IdentifierDecorator.js +0 -17
  524. package/dist/src/parsers/IdentifierDecorator.js.map +0 -1
  525. package/dist/src/parsers/IdentifierParser.js +0 -15
  526. package/dist/src/parsers/IdentifierParser.js.map +0 -1
  527. package/dist/src/parsers/InsertQueryParser.js +0 -162
  528. package/dist/src/parsers/InsertQueryParser.js.map +0 -1
  529. package/dist/src/parsers/JoinClauseParser.js +0 -117
  530. package/dist/src/parsers/JoinClauseParser.js.map +0 -1
  531. package/dist/src/parsers/JoinOnClauseParser.js +0 -21
  532. package/dist/src/parsers/JoinOnClauseParser.js.map +0 -1
  533. package/dist/src/parsers/JoinUsingClauseParser.js +0 -23
  534. package/dist/src/parsers/JoinUsingClauseParser.js.map +0 -1
  535. package/dist/src/parsers/KeywordParser.js +0 -99
  536. package/dist/src/parsers/KeywordParser.js.map +0 -1
  537. package/dist/src/parsers/LimitClauseParser.js +0 -38
  538. package/dist/src/parsers/LimitClauseParser.js.map +0 -1
  539. package/dist/src/parsers/LiteralParser.js +0 -48
  540. package/dist/src/parsers/LiteralParser.js.map +0 -1
  541. package/dist/src/parsers/MergeQueryParser.js +0 -483
  542. package/dist/src/parsers/MergeQueryParser.js.map +0 -1
  543. package/dist/src/parsers/OffsetClauseParser.js +0 -42
  544. package/dist/src/parsers/OffsetClauseParser.js.map +0 -1
  545. package/dist/src/parsers/OrderByClauseParser.js +0 -108
  546. package/dist/src/parsers/OrderByClauseParser.js.map +0 -1
  547. package/dist/src/parsers/OverExpressionParser.js +0 -44
  548. package/dist/src/parsers/OverExpressionParser.js.map +0 -1
  549. package/dist/src/parsers/ParameterDecorator.js +0 -40
  550. package/dist/src/parsers/ParameterDecorator.js.map +0 -1
  551. package/dist/src/parsers/ParameterExpressionParser.js +0 -24
  552. package/dist/src/parsers/ParameterExpressionParser.js.map +0 -1
  553. package/dist/src/parsers/ParenExpressionParser.js +0 -109
  554. package/dist/src/parsers/ParenExpressionParser.js.map +0 -1
  555. package/dist/src/parsers/ParseError.js +0 -25
  556. package/dist/src/parsers/ParseError.js.map +0 -1
  557. package/dist/src/parsers/PartitionByParser.js +0 -53
  558. package/dist/src/parsers/PartitionByParser.js.map +0 -1
  559. package/dist/src/parsers/ReturningClauseParser.js +0 -64
  560. package/dist/src/parsers/ReturningClauseParser.js.map +0 -1
  561. package/dist/src/parsers/SelectClauseParser.js +0 -244
  562. package/dist/src/parsers/SelectClauseParser.js.map +0 -1
  563. package/dist/src/parsers/SelectQueryParser.js +0 -564
  564. package/dist/src/parsers/SelectQueryParser.js.map +0 -1
  565. package/dist/src/parsers/SetClauseParser.js +0 -125
  566. package/dist/src/parsers/SetClauseParser.js.map +0 -1
  567. package/dist/src/parsers/SourceAliasExpressionParser.js +0 -60
  568. package/dist/src/parsers/SourceAliasExpressionParser.js.map +0 -1
  569. package/dist/src/parsers/SourceExpressionParser.js +0 -69
  570. package/dist/src/parsers/SourceExpressionParser.js.map +0 -1
  571. package/dist/src/parsers/SourceParser.js +0 -144
  572. package/dist/src/parsers/SourceParser.js.map +0 -1
  573. package/dist/src/parsers/SqlParser.js +0 -390
  574. package/dist/src/parsers/SqlParser.js.map +0 -1
  575. package/dist/src/parsers/SqlPrintTokenParser.js +0 -3080
  576. package/dist/src/parsers/SqlPrintTokenParser.js.map +0 -1
  577. package/dist/src/parsers/SqlTokenizer.js +0 -520
  578. package/dist/src/parsers/SqlTokenizer.js.map +0 -1
  579. package/dist/src/parsers/StringSpecifierExpressionParser.js +0 -22
  580. package/dist/src/parsers/StringSpecifierExpressionParser.js.map +0 -1
  581. package/dist/src/parsers/UnaryExpressionParser.js +0 -39
  582. package/dist/src/parsers/UnaryExpressionParser.js.map +0 -1
  583. package/dist/src/parsers/UpdateClauseParser.js +0 -21
  584. package/dist/src/parsers/UpdateClauseParser.js.map +0 -1
  585. package/dist/src/parsers/UpdateQueryParser.js +0 -98
  586. package/dist/src/parsers/UpdateQueryParser.js.map +0 -1
  587. package/dist/src/parsers/UsingClauseParser.js +0 -33
  588. package/dist/src/parsers/UsingClauseParser.js.map +0 -1
  589. package/dist/src/parsers/ValueParser.js +0 -535
  590. package/dist/src/parsers/ValueParser.js.map +0 -1
  591. package/dist/src/parsers/ValuesQueryParser.js +0 -112
  592. package/dist/src/parsers/ValuesQueryParser.js.map +0 -1
  593. package/dist/src/parsers/WhereClauseParser.js +0 -51
  594. package/dist/src/parsers/WhereClauseParser.js.map +0 -1
  595. package/dist/src/parsers/WindowClauseParser.js +0 -57
  596. package/dist/src/parsers/WindowClauseParser.js.map +0 -1
  597. package/dist/src/parsers/WindowExpressionParser.js +0 -163
  598. package/dist/src/parsers/WindowExpressionParser.js.map +0 -1
  599. package/dist/src/parsers/WithClauseParser.js +0 -165
  600. package/dist/src/parsers/WithClauseParser.js.map +0 -1
  601. package/dist/src/parsers/utils/LexemeCommentUtils.js +0 -29
  602. package/dist/src/parsers/utils/LexemeCommentUtils.js.map +0 -1
  603. package/dist/src/reporting/models/DataFlowEdge.js +0 -58
  604. package/dist/src/reporting/models/DataFlowEdge.js.map +0 -1
  605. package/dist/src/reporting/models/DataFlowGraph.js +0 -138
  606. package/dist/src/reporting/models/DataFlowGraph.js.map +0 -1
  607. package/dist/src/reporting/models/DataFlowNode.js +0 -148
  608. package/dist/src/reporting/models/DataFlowNode.js.map +0 -1
  609. package/dist/src/reporting/services/CTEHandler.js +0 -58
  610. package/dist/src/reporting/services/CTEHandler.js.map +0 -1
  611. package/dist/src/reporting/services/DataSourceHandler.js +0 -95
  612. package/dist/src/reporting/services/DataSourceHandler.js.map +0 -1
  613. package/dist/src/reporting/services/JoinHandler.js +0 -84
  614. package/dist/src/reporting/services/JoinHandler.js.map +0 -1
  615. package/dist/src/reporting/services/ProcessHandler.js +0 -26
  616. package/dist/src/reporting/services/ProcessHandler.js.map +0 -1
  617. package/dist/src/tokenReaders/BaseTokenReader.js +0 -86
  618. package/dist/src/tokenReaders/BaseTokenReader.js.map +0 -1
  619. package/dist/src/tokenReaders/CommandTokenReader.js +0 -216
  620. package/dist/src/tokenReaders/CommandTokenReader.js.map +0 -1
  621. package/dist/src/tokenReaders/EscapedIdentifierTokenReader.js +0 -99
  622. package/dist/src/tokenReaders/EscapedIdentifierTokenReader.js.map +0 -1
  623. package/dist/src/tokenReaders/FunctionTokenReader.js +0 -47
  624. package/dist/src/tokenReaders/FunctionTokenReader.js.map +0 -1
  625. package/dist/src/tokenReaders/IdentifierTokenReader.js +0 -34
  626. package/dist/src/tokenReaders/IdentifierTokenReader.js.map +0 -1
  627. package/dist/src/tokenReaders/LiteralTokenReader.js +0 -329
  628. package/dist/src/tokenReaders/LiteralTokenReader.js.map +0 -1
  629. package/dist/src/tokenReaders/OperatorTokenReader.js +0 -152
  630. package/dist/src/tokenReaders/OperatorTokenReader.js.map +0 -1
  631. package/dist/src/tokenReaders/ParameterTokenReader.js +0 -190
  632. package/dist/src/tokenReaders/ParameterTokenReader.js.map +0 -1
  633. package/dist/src/tokenReaders/StringSpecifierTokenReader.js +0 -31
  634. package/dist/src/tokenReaders/StringSpecifierTokenReader.js.map +0 -1
  635. package/dist/src/tokenReaders/SymbolTokenReader.js +0 -35
  636. package/dist/src/tokenReaders/SymbolTokenReader.js.map +0 -1
  637. package/dist/src/tokenReaders/TokenReaderManager.js +0 -110
  638. package/dist/src/tokenReaders/TokenReaderManager.js.map +0 -1
  639. package/dist/src/tokenReaders/TypeTokenReader.js +0 -69
  640. package/dist/src/tokenReaders/TypeTokenReader.js.map +0 -1
  641. package/dist/src/transformers/AliasRenamer.js +0 -600
  642. package/dist/src/transformers/AliasRenamer.js.map +0 -1
  643. package/dist/src/transformers/CTEBuilder.js +0 -188
  644. package/dist/src/transformers/CTEBuilder.js.map +0 -1
  645. package/dist/src/transformers/CTECollector.js +0 -409
  646. package/dist/src/transformers/CTECollector.js.map +0 -1
  647. package/dist/src/transformers/CTEComposer.js +0 -302
  648. package/dist/src/transformers/CTEComposer.js.map +0 -1
  649. package/dist/src/transformers/CTEDependencyAnalyzer.js +0 -285
  650. package/dist/src/transformers/CTEDependencyAnalyzer.js.map +0 -1
  651. package/dist/src/transformers/CTEDependencyTracer.js +0 -253
  652. package/dist/src/transformers/CTEDependencyTracer.js.map +0 -1
  653. package/dist/src/transformers/CTEDisabler.js +0 -355
  654. package/dist/src/transformers/CTEDisabler.js.map +0 -1
  655. package/dist/src/transformers/CTEInjector.js +0 -83
  656. package/dist/src/transformers/CTEInjector.js.map +0 -1
  657. package/dist/src/transformers/CTENormalizer.js +0 -46
  658. package/dist/src/transformers/CTENormalizer.js.map +0 -1
  659. package/dist/src/transformers/CTEQueryDecomposer.js +0 -589
  660. package/dist/src/transformers/CTEQueryDecomposer.js.map +0 -1
  661. package/dist/src/transformers/CTERenamer.js +0 -486
  662. package/dist/src/transformers/CTERenamer.js.map +0 -1
  663. package/dist/src/transformers/CTETableReferenceCollector.js +0 -358
  664. package/dist/src/transformers/CTETableReferenceCollector.js.map +0 -1
  665. package/dist/src/transformers/ColumnReferenceCollector.js +0 -468
  666. package/dist/src/transformers/ColumnReferenceCollector.js.map +0 -1
  667. package/dist/src/transformers/DDLDiffGenerator.js +0 -313
  668. package/dist/src/transformers/DDLDiffGenerator.js.map +0 -1
  669. package/dist/src/transformers/DDLGeneralizer.js +0 -119
  670. package/dist/src/transformers/DDLGeneralizer.js.map +0 -1
  671. package/dist/src/transformers/DDLToFixtureConverter.js +0 -206
  672. package/dist/src/transformers/DDLToFixtureConverter.js.map +0 -1
  673. package/dist/src/transformers/DeleteResultSelectConverter.js +0 -398
  674. package/dist/src/transformers/DeleteResultSelectConverter.js.map +0 -1
  675. package/dist/src/transformers/DynamicQueryBuilder.js +0 -164
  676. package/dist/src/transformers/DynamicQueryBuilder.js.map +0 -1
  677. package/dist/src/transformers/EnhancedJsonMapping.js +0 -223
  678. package/dist/src/transformers/EnhancedJsonMapping.js.map +0 -1
  679. package/dist/src/transformers/FilterableItemCollector.js +0 -259
  680. package/dist/src/transformers/FilterableItemCollector.js.map +0 -1
  681. package/dist/src/transformers/FixtureCteBuilder.js +0 -151
  682. package/dist/src/transformers/FixtureCteBuilder.js.map +0 -1
  683. package/dist/src/transformers/FormatOptionResolver.js +0 -67
  684. package/dist/src/transformers/FormatOptionResolver.js.map +0 -1
  685. package/dist/src/transformers/Formatter.js +0 -38
  686. package/dist/src/transformers/Formatter.js.map +0 -1
  687. package/dist/src/transformers/InsertQuerySelectValuesConverter.js +0 -125
  688. package/dist/src/transformers/InsertQuerySelectValuesConverter.js.map +0 -1
  689. package/dist/src/transformers/InsertResultSelectConverter.js +0 -499
  690. package/dist/src/transformers/InsertResultSelectConverter.js.map +0 -1
  691. package/dist/src/transformers/JoinAggregationDecomposer.js +0 -497
  692. package/dist/src/transformers/JoinAggregationDecomposer.js.map +0 -1
  693. package/dist/src/transformers/JsonMappingConverter.js +0 -392
  694. package/dist/src/transformers/JsonMappingConverter.js.map +0 -1
  695. package/dist/src/transformers/JsonMappingUnifier.js +0 -216
  696. package/dist/src/transformers/JsonMappingUnifier.js.map +0 -1
  697. package/dist/src/transformers/LinePrinter.js +0 -148
  698. package/dist/src/transformers/LinePrinter.js.map +0 -1
  699. package/dist/src/transformers/MergeResultSelectConverter.js +0 -310
  700. package/dist/src/transformers/MergeResultSelectConverter.js.map +0 -1
  701. package/dist/src/transformers/ModelDrivenJsonMapping.js +0 -122
  702. package/dist/src/transformers/ModelDrivenJsonMapping.js.map +0 -1
  703. package/dist/src/transformers/OnelineFormattingHelper.js +0 -99
  704. package/dist/src/transformers/OnelineFormattingHelper.js.map +0 -1
  705. package/dist/src/transformers/ParameterCollector.js +0 -37
  706. package/dist/src/transformers/ParameterCollector.js.map +0 -1
  707. package/dist/src/transformers/PostgresArrayEntityCteBuilder.js +0 -458
  708. package/dist/src/transformers/PostgresArrayEntityCteBuilder.js.map +0 -1
  709. package/dist/src/transformers/PostgresJsonQueryBuilder.js +0 -245
  710. package/dist/src/transformers/PostgresJsonQueryBuilder.js.map +0 -1
  711. package/dist/src/transformers/PostgresObjectEntityCteBuilder.js +0 -347
  712. package/dist/src/transformers/PostgresObjectEntityCteBuilder.js.map +0 -1
  713. package/dist/src/transformers/QueryBuilder.js +0 -649
  714. package/dist/src/transformers/QueryBuilder.js.map +0 -1
  715. package/dist/src/transformers/QueryFlowDiagramGenerator.js +0 -157
  716. package/dist/src/transformers/QueryFlowDiagramGenerator.js.map +0 -1
  717. package/dist/src/transformers/SchemaCollector.js +0 -523
  718. package/dist/src/transformers/SchemaCollector.js.map +0 -1
  719. package/dist/src/transformers/SelectResultSelectConverter.js +0 -36
  720. package/dist/src/transformers/SelectResultSelectConverter.js.map +0 -1
  721. package/dist/src/transformers/SelectValueCollector.js +0 -244
  722. package/dist/src/transformers/SelectValueCollector.js.map +0 -1
  723. package/dist/src/transformers/SelectableColumnCollector.js +0 -674
  724. package/dist/src/transformers/SelectableColumnCollector.js.map +0 -1
  725. package/dist/src/transformers/SimulatedSelectConverter.js +0 -65
  726. package/dist/src/transformers/SimulatedSelectConverter.js.map +0 -1
  727. package/dist/src/transformers/SmartRenamer.js +0 -422
  728. package/dist/src/transformers/SmartRenamer.js.map +0 -1
  729. package/dist/src/transformers/SqlFormatter.js +0 -77
  730. package/dist/src/transformers/SqlFormatter.js.map +0 -1
  731. package/dist/src/transformers/SqlIdentifierRenamer.js +0 -504
  732. package/dist/src/transformers/SqlIdentifierRenamer.js.map +0 -1
  733. package/dist/src/transformers/SqlOutputToken.js +0 -13
  734. package/dist/src/transformers/SqlOutputToken.js.map +0 -1
  735. package/dist/src/transformers/SqlPaginationInjector.js +0 -108
  736. package/dist/src/transformers/SqlPaginationInjector.js.map +0 -1
  737. package/dist/src/transformers/SqlParamInjector.js +0 -802
  738. package/dist/src/transformers/SqlParamInjector.js.map +0 -1
  739. package/dist/src/transformers/SqlParameterBinder.js +0 -70
  740. package/dist/src/transformers/SqlParameterBinder.js.map +0 -1
  741. package/dist/src/transformers/SqlPrinter.js +0 -1477
  742. package/dist/src/transformers/SqlPrinter.js.map +0 -1
  743. package/dist/src/transformers/SqlSortInjector.js +0 -153
  744. package/dist/src/transformers/SqlSortInjector.js.map +0 -1
  745. package/dist/src/transformers/TableColumnResolver.js +0 -3
  746. package/dist/src/transformers/TableSourceCollector.js +0 -435
  747. package/dist/src/transformers/TableSourceCollector.js.map +0 -1
  748. package/dist/src/transformers/TypeTransformationPostProcessor.js +0 -363
  749. package/dist/src/transformers/TypeTransformationPostProcessor.js.map +0 -1
  750. package/dist/src/transformers/UpdateResultSelectConverter.js +0 -344
  751. package/dist/src/transformers/UpdateResultSelectConverter.js.map +0 -1
  752. package/dist/src/transformers/UpstreamSelectQueryFinder.js +0 -184
  753. package/dist/src/transformers/UpstreamSelectQueryFinder.js.map +0 -1
  754. package/dist/src/types/Formatting.js +0 -3
  755. package/dist/src/utils/CTERegionDetector.js +0 -464
  756. package/dist/src/utils/CTERegionDetector.js.map +0 -1
  757. package/dist/src/utils/CommentEditor.js +0 -345
  758. package/dist/src/utils/CommentEditor.js.map +0 -1
  759. package/dist/src/utils/CommentUtils.js +0 -69
  760. package/dist/src/utils/CommentUtils.js.map +0 -1
  761. package/dist/src/utils/CursorContextAnalyzer.js +0 -338
  762. package/dist/src/utils/CursorContextAnalyzer.js.map +0 -1
  763. package/dist/src/utils/IntelliSenseApi.js +0 -292
  764. package/dist/src/utils/IntelliSenseApi.js.map +0 -1
  765. package/dist/src/utils/JsonSchemaValidator.js +0 -215
  766. package/dist/src/utils/JsonSchemaValidator.js.map +0 -1
  767. package/dist/src/utils/KeywordCache.js +0 -206
  768. package/dist/src/utils/KeywordCache.js.map +0 -1
  769. package/dist/src/utils/LexemeCursor.js +0 -314
  770. package/dist/src/utils/LexemeCursor.js.map +0 -1
  771. package/dist/src/utils/MultiQuerySplitter.js +0 -292
  772. package/dist/src/utils/MultiQuerySplitter.js.map +0 -1
  773. package/dist/src/utils/OperatorPrecedence.js +0 -107
  774. package/dist/src/utils/OperatorPrecedence.js.map +0 -1
  775. package/dist/src/utils/ParameterDetector.js +0 -53
  776. package/dist/src/utils/ParameterDetector.js.map +0 -1
  777. package/dist/src/utils/ParameterHelper.js +0 -31
  778. package/dist/src/utils/ParameterHelper.js.map +0 -1
  779. package/dist/src/utils/ParameterRemover.js +0 -781
  780. package/dist/src/utils/ParameterRemover.js.map +0 -1
  781. package/dist/src/utils/ParserStringUtils.js +0 -31
  782. package/dist/src/utils/ParserStringUtils.js.map +0 -1
  783. package/dist/src/utils/PositionAwareParser.js +0 -363
  784. package/dist/src/utils/PositionAwareParser.js.map +0 -1
  785. package/dist/src/utils/SchemaManager.js +0 -217
  786. package/dist/src/utils/SchemaManager.js.map +0 -1
  787. package/dist/src/utils/ScopeResolver.js +0 -272
  788. package/dist/src/utils/ScopeResolver.js.map +0 -1
  789. package/dist/src/utils/SelectQueryWithClauseHelper.js +0 -47
  790. package/dist/src/utils/SelectQueryWithClauseHelper.js.map +0 -1
  791. package/dist/src/utils/SqlSchemaValidator.js +0 -55
  792. package/dist/src/utils/SqlSchemaValidator.js.map +0 -1
  793. package/dist/src/utils/TextPositionUtils.js +0 -128
  794. package/dist/src/utils/TextPositionUtils.js.map +0 -1
  795. package/dist/src/utils/ValueComponentRewriter.js +0 -183
  796. package/dist/src/utils/ValueComponentRewriter.js.map +0 -1
  797. package/dist/src/utils/charLookupTable.js +0 -73
  798. package/dist/src/utils/charLookupTable.js.map +0 -1
  799. package/dist/src/utils/stringUtils.js +0 -230
  800. package/dist/src/utils/stringUtils.js.map +0 -1
  801. package/dist/tsconfig.tsbuildinfo +0 -1
  802. /package/dist/esm/{src/formatters → formatters}/OriginalFormatRestorer.d.ts +0 -0
  803. /package/dist/esm/{src/formatters → formatters}/OriginalFormatRestorer.js +0 -0
  804. /package/dist/esm/{src/models → models}/BinarySelectQuery.d.ts +0 -0
  805. /package/dist/esm/{src/models → models}/BinarySelectQuery.js +0 -0
  806. /package/dist/esm/{src/models → models}/CTEError.d.ts +0 -0
  807. /package/dist/esm/{src/models → models}/CTEError.js +0 -0
  808. /package/dist/esm/{src/models → models}/Clause.d.ts +0 -0
  809. /package/dist/esm/{src/models → models}/Clause.js +0 -0
  810. /package/dist/esm/{src/models → models}/CreateTableQuery.d.ts +0 -0
  811. /package/dist/esm/{src/models → models}/CreateTableQuery.js +0 -0
  812. /package/dist/esm/{src/models → models}/DeleteQuery.d.ts +0 -0
  813. /package/dist/esm/{src/models → models}/DeleteQuery.js +0 -0
  814. /package/dist/esm/{src/models → models}/FormattingLexeme.d.ts +0 -0
  815. /package/dist/esm/{src/models → models}/FormattingLexeme.js +0 -0
  816. /package/dist/{src → esm}/models/FormattingLexeme.js.map +0 -0
  817. /package/dist/esm/{src/models → models}/HintClause.d.ts +0 -0
  818. /package/dist/esm/{src/models → models}/HintClause.js +0 -0
  819. /package/dist/esm/{src/models → models}/InsertQuery.d.ts +0 -0
  820. /package/dist/esm/{src/models → models}/InsertQuery.js +0 -0
  821. /package/dist/esm/{src/models → models}/KeywordTrie.d.ts +0 -0
  822. /package/dist/esm/{src/models → models}/KeywordTrie.js +0 -0
  823. /package/dist/esm/{src/models → models}/Lexeme.d.ts +0 -0
  824. /package/dist/esm/{src/models → models}/Lexeme.js +0 -0
  825. /package/dist/esm/{src/models → models}/MergeQuery.d.ts +0 -0
  826. /package/dist/esm/{src/models → models}/MergeQuery.js +0 -0
  827. /package/dist/esm/{src/models → models}/SelectQuery.d.ts +0 -0
  828. /package/dist/esm/{src/models → models}/SelectQuery.js +0 -0
  829. /package/dist/esm/{src/models → models}/SimpleSelectQuery.d.ts +0 -0
  830. /package/dist/esm/{src/models → models}/SimpleSelectQuery.js +0 -0
  831. /package/dist/esm/{src/models → models}/SqlComponent.d.ts +0 -0
  832. /package/dist/esm/{src/models → models}/SqlComponent.js +0 -0
  833. /package/dist/esm/{src/models → models}/UpdateQuery.d.ts +0 -0
  834. /package/dist/esm/{src/models → models}/UpdateQuery.js +0 -0
  835. /package/dist/esm/{src/models → models}/ValuesQuery.d.ts +0 -0
  836. /package/dist/esm/{src/models → models}/ValuesQuery.js +0 -0
  837. /package/dist/esm/{src/parsers → parsers}/AnalyzeStatementParser.d.ts +0 -0
  838. /package/dist/esm/{src/parsers → parsers}/AnalyzeStatementParser.js +0 -0
  839. /package/dist/esm/{src/parsers → parsers}/CommandExpressionParser.d.ts +0 -0
  840. /package/dist/esm/{src/parsers → parsers}/CommandExpressionParser.js +0 -0
  841. /package/dist/esm/{src/parsers → parsers}/CommonTableParser.d.ts +0 -0
  842. /package/dist/esm/{src/parsers → parsers}/CommonTableParser.js +0 -0
  843. /package/dist/esm/{src/parsers → parsers}/CreateIndexParser.d.ts +0 -0
  844. /package/dist/esm/{src/parsers → parsers}/CreateIndexParser.js +0 -0
  845. /package/dist/esm/{src/parsers → parsers}/CreateTableParser.d.ts +0 -0
  846. /package/dist/esm/{src/parsers → parsers}/CreateTableParser.js +0 -0
  847. /package/dist/esm/{src/parsers → parsers}/DeleteClauseParser.d.ts +0 -0
  848. /package/dist/esm/{src/parsers → parsers}/DeleteClauseParser.js +0 -0
  849. /package/dist/esm/{src/parsers → parsers}/DeleteQueryParser.d.ts +0 -0
  850. /package/dist/esm/{src/parsers → parsers}/DeleteQueryParser.js +0 -0
  851. /package/dist/esm/{src/parsers → parsers}/DropConstraintParser.d.ts +0 -0
  852. /package/dist/esm/{src/parsers → parsers}/DropConstraintParser.js +0 -0
  853. /package/dist/esm/{src/parsers → parsers}/DropIndexParser.d.ts +0 -0
  854. /package/dist/esm/{src/parsers → parsers}/DropIndexParser.js +0 -0
  855. /package/dist/esm/{src/parsers → parsers}/DropTableParser.d.ts +0 -0
  856. /package/dist/esm/{src/parsers → parsers}/DropTableParser.js +0 -0
  857. /package/dist/esm/{src/parsers → parsers}/ExplainStatementParser.d.ts +0 -0
  858. /package/dist/esm/{src/parsers → parsers}/ExplainStatementParser.js +0 -0
  859. /package/dist/esm/{src/parsers → parsers}/FetchClauseParser.d.ts +0 -0
  860. /package/dist/esm/{src/parsers → parsers}/FetchClauseParser.js +0 -0
  861. /package/dist/esm/{src/parsers → parsers}/ForClauseParser.d.ts +0 -0
  862. /package/dist/esm/{src/parsers → parsers}/ForClauseParser.js +0 -0
  863. /package/dist/esm/{src/parsers → parsers}/FromClauseParser.d.ts +0 -0
  864. /package/dist/esm/{src/parsers → parsers}/FromClauseParser.js +0 -0
  865. /package/dist/esm/{src/parsers → parsers}/FullNameParser.d.ts +0 -0
  866. /package/dist/esm/{src/parsers → parsers}/FullNameParser.js +0 -0
  867. /package/dist/esm/{src/parsers → parsers}/GroupByParser.d.ts +0 -0
  868. /package/dist/esm/{src/parsers → parsers}/GroupByParser.js +0 -0
  869. /package/dist/esm/{src/parsers → parsers}/HavingParser.d.ts +0 -0
  870. /package/dist/esm/{src/parsers → parsers}/HavingParser.js +0 -0
  871. /package/dist/esm/{src/parsers → parsers}/IdentifierDecorator.d.ts +0 -0
  872. /package/dist/esm/{src/parsers → parsers}/IdentifierDecorator.js +0 -0
  873. /package/dist/esm/{src/parsers → parsers}/IdentifierParser.d.ts +0 -0
  874. /package/dist/esm/{src/parsers → parsers}/IdentifierParser.js +0 -0
  875. /package/dist/esm/{src/parsers → parsers}/InsertQueryParser.d.ts +0 -0
  876. /package/dist/esm/{src/parsers → parsers}/InsertQueryParser.js +0 -0
  877. /package/dist/esm/{src/parsers → parsers}/JoinClauseParser.d.ts +0 -0
  878. /package/dist/esm/{src/parsers → parsers}/JoinClauseParser.js +0 -0
  879. /package/dist/esm/{src/parsers → parsers}/JoinOnClauseParser.d.ts +0 -0
  880. /package/dist/esm/{src/parsers → parsers}/JoinOnClauseParser.js +0 -0
  881. /package/dist/esm/{src/parsers → parsers}/JoinUsingClauseParser.d.ts +0 -0
  882. /package/dist/esm/{src/parsers → parsers}/JoinUsingClauseParser.js +0 -0
  883. /package/dist/esm/{src/parsers → parsers}/KeywordParser.d.ts +0 -0
  884. /package/dist/esm/{src/parsers → parsers}/KeywordParser.js +0 -0
  885. /package/dist/esm/{src/parsers → parsers}/LimitClauseParser.d.ts +0 -0
  886. /package/dist/esm/{src/parsers → parsers}/LimitClauseParser.js +0 -0
  887. /package/dist/esm/{src/parsers → parsers}/LiteralParser.d.ts +0 -0
  888. /package/dist/esm/{src/parsers → parsers}/LiteralParser.js +0 -0
  889. /package/dist/esm/{src/parsers → parsers}/MergeQueryParser.d.ts +0 -0
  890. /package/dist/esm/{src/parsers → parsers}/MergeQueryParser.js +0 -0
  891. /package/dist/esm/{src/parsers → parsers}/OffsetClauseParser.d.ts +0 -0
  892. /package/dist/esm/{src/parsers → parsers}/OffsetClauseParser.js +0 -0
  893. /package/dist/esm/{src/parsers → parsers}/OrderByClauseParser.d.ts +0 -0
  894. /package/dist/esm/{src/parsers → parsers}/OrderByClauseParser.js +0 -0
  895. /package/dist/esm/{src/parsers → parsers}/OverExpressionParser.d.ts +0 -0
  896. /package/dist/esm/{src/parsers → parsers}/OverExpressionParser.js +0 -0
  897. /package/dist/esm/{src/parsers → parsers}/ParameterDecorator.d.ts +0 -0
  898. /package/dist/esm/{src/parsers → parsers}/ParameterDecorator.js +0 -0
  899. /package/dist/esm/{src/parsers → parsers}/ParameterExpressionParser.d.ts +0 -0
  900. /package/dist/esm/{src/parsers → parsers}/ParameterExpressionParser.js +0 -0
  901. /package/dist/esm/{src/parsers → parsers}/ParenExpressionParser.d.ts +0 -0
  902. /package/dist/esm/{src/parsers → parsers}/ParenExpressionParser.js +0 -0
  903. /package/dist/esm/{src/parsers → parsers}/ParseError.d.ts +0 -0
  904. /package/dist/esm/{src/parsers → parsers}/ParseError.js +0 -0
  905. /package/dist/esm/{src/parsers → parsers}/PartitionByParser.d.ts +0 -0
  906. /package/dist/esm/{src/parsers → parsers}/PartitionByParser.js +0 -0
  907. /package/dist/esm/{src/parsers → parsers}/ReturningClauseParser.d.ts +0 -0
  908. /package/dist/esm/{src/parsers → parsers}/ReturningClauseParser.js +0 -0
  909. /package/dist/esm/{src/parsers → parsers}/SelectClauseParser.d.ts +0 -0
  910. /package/dist/esm/{src/parsers → parsers}/SelectClauseParser.js +0 -0
  911. /package/dist/esm/{src/parsers → parsers}/SelectQueryParser.d.ts +0 -0
  912. /package/dist/esm/{src/parsers → parsers}/SelectQueryParser.js +0 -0
  913. /package/dist/esm/{src/parsers → parsers}/SetClauseParser.d.ts +0 -0
  914. /package/dist/esm/{src/parsers → parsers}/SetClauseParser.js +0 -0
  915. /package/dist/esm/{src/parsers → parsers}/SourceAliasExpressionParser.d.ts +0 -0
  916. /package/dist/esm/{src/parsers → parsers}/SourceAliasExpressionParser.js +0 -0
  917. /package/dist/esm/{src/parsers → parsers}/SourceExpressionParser.d.ts +0 -0
  918. /package/dist/esm/{src/parsers → parsers}/SourceExpressionParser.js +0 -0
  919. /package/dist/esm/{src/parsers → parsers}/SourceParser.d.ts +0 -0
  920. /package/dist/esm/{src/parsers → parsers}/SourceParser.js +0 -0
  921. /package/dist/esm/{src/parsers → parsers}/StringSpecifierExpressionParser.d.ts +0 -0
  922. /package/dist/esm/{src/parsers → parsers}/StringSpecifierExpressionParser.js +0 -0
  923. /package/dist/esm/{src/parsers → parsers}/UnaryExpressionParser.d.ts +0 -0
  924. /package/dist/esm/{src/parsers → parsers}/UnaryExpressionParser.js +0 -0
  925. /package/dist/esm/{src/parsers → parsers}/UpdateClauseParser.d.ts +0 -0
  926. /package/dist/esm/{src/parsers → parsers}/UpdateClauseParser.js +0 -0
  927. /package/dist/esm/{src/parsers → parsers}/UpdateQueryParser.d.ts +0 -0
  928. /package/dist/esm/{src/parsers → parsers}/UpdateQueryParser.js +0 -0
  929. /package/dist/esm/{src/parsers → parsers}/UsingClauseParser.d.ts +0 -0
  930. /package/dist/esm/{src/parsers → parsers}/UsingClauseParser.js +0 -0
  931. /package/dist/esm/{src/parsers → parsers}/ValueParser.d.ts +0 -0
  932. /package/dist/esm/{src/parsers → parsers}/ValuesQueryParser.d.ts +0 -0
  933. /package/dist/esm/{src/parsers → parsers}/ValuesQueryParser.js +0 -0
  934. /package/dist/esm/{src/parsers → parsers}/WhereClauseParser.d.ts +0 -0
  935. /package/dist/esm/{src/parsers → parsers}/WhereClauseParser.js +0 -0
  936. /package/dist/esm/{src/parsers → parsers}/WindowClauseParser.d.ts +0 -0
  937. /package/dist/esm/{src/parsers → parsers}/WindowClauseParser.js +0 -0
  938. /package/dist/esm/{src/parsers → parsers}/WindowExpressionParser.d.ts +0 -0
  939. /package/dist/esm/{src/parsers → parsers}/WindowExpressionParser.js +0 -0
  940. /package/dist/esm/{src/parsers → parsers}/WithClauseParser.d.ts +0 -0
  941. /package/dist/esm/{src/parsers → parsers}/WithClauseParser.js +0 -0
  942. /package/dist/esm/{src/parsers → parsers}/utils/LexemeCommentUtils.d.ts +0 -0
  943. /package/dist/esm/{src/parsers → parsers}/utils/LexemeCommentUtils.js +0 -0
  944. /package/dist/esm/{src/reporting → reporting}/models/DataFlowEdge.d.ts +0 -0
  945. /package/dist/esm/{src/reporting → reporting}/models/DataFlowEdge.js +0 -0
  946. /package/dist/esm/{src/reporting → reporting}/models/DataFlowGraph.d.ts +0 -0
  947. /package/dist/esm/{src/reporting → reporting}/models/DataFlowGraph.js +0 -0
  948. /package/dist/esm/{src/reporting → reporting}/models/DataFlowNode.d.ts +0 -0
  949. /package/dist/esm/{src/reporting → reporting}/models/DataFlowNode.js +0 -0
  950. /package/dist/esm/{src/reporting → reporting}/services/CTEHandler.d.ts +0 -0
  951. /package/dist/esm/{src/reporting → reporting}/services/CTEHandler.js +0 -0
  952. /package/dist/esm/{src/reporting → reporting}/services/DataSourceHandler.d.ts +0 -0
  953. /package/dist/esm/{src/reporting → reporting}/services/DataSourceHandler.js +0 -0
  954. /package/dist/esm/{src/reporting → reporting}/services/JoinHandler.d.ts +0 -0
  955. /package/dist/esm/{src/reporting → reporting}/services/JoinHandler.js +0 -0
  956. /package/dist/esm/{src/reporting → reporting}/services/ProcessHandler.d.ts +0 -0
  957. /package/dist/esm/{src/reporting → reporting}/services/ProcessHandler.js +0 -0
  958. /package/dist/esm/{src/tokenReaders → tokenReaders}/BaseTokenReader.d.ts +0 -0
  959. /package/dist/esm/{src/tokenReaders → tokenReaders}/BaseTokenReader.js +0 -0
  960. /package/dist/esm/{src/tokenReaders → tokenReaders}/CommandTokenReader.d.ts +0 -0
  961. /package/dist/esm/{src/tokenReaders → tokenReaders}/EscapedIdentifierTokenReader.d.ts +0 -0
  962. /package/dist/esm/{src/tokenReaders → tokenReaders}/EscapedIdentifierTokenReader.js +0 -0
  963. /package/dist/esm/{src/tokenReaders → tokenReaders}/FunctionTokenReader.d.ts +0 -0
  964. /package/dist/esm/{src/tokenReaders → tokenReaders}/FunctionTokenReader.js +0 -0
  965. /package/dist/esm/{src/tokenReaders → tokenReaders}/IdentifierTokenReader.d.ts +0 -0
  966. /package/dist/esm/{src/tokenReaders → tokenReaders}/IdentifierTokenReader.js +0 -0
  967. /package/dist/esm/{src/tokenReaders → tokenReaders}/LiteralTokenReader.d.ts +0 -0
  968. /package/dist/esm/{src/tokenReaders → tokenReaders}/LiteralTokenReader.js +0 -0
  969. /package/dist/esm/{src/tokenReaders → tokenReaders}/OperatorTokenReader.d.ts +0 -0
  970. /package/dist/esm/{src/tokenReaders → tokenReaders}/OperatorTokenReader.js +0 -0
  971. /package/dist/esm/{src/tokenReaders → tokenReaders}/ParameterTokenReader.d.ts +0 -0
  972. /package/dist/esm/{src/tokenReaders → tokenReaders}/ParameterTokenReader.js +0 -0
  973. /package/dist/esm/{src/tokenReaders → tokenReaders}/StringSpecifierTokenReader.d.ts +0 -0
  974. /package/dist/esm/{src/tokenReaders → tokenReaders}/StringSpecifierTokenReader.js +0 -0
  975. /package/dist/esm/{src/tokenReaders → tokenReaders}/SymbolTokenReader.d.ts +0 -0
  976. /package/dist/esm/{src/tokenReaders → tokenReaders}/SymbolTokenReader.js +0 -0
  977. /package/dist/esm/{src/tokenReaders → tokenReaders}/TokenReaderManager.d.ts +0 -0
  978. /package/dist/esm/{src/tokenReaders → tokenReaders}/TokenReaderManager.js +0 -0
  979. /package/dist/esm/{src/tokenReaders → tokenReaders}/TypeTokenReader.d.ts +0 -0
  980. /package/dist/esm/{src/tokenReaders → tokenReaders}/TypeTokenReader.js +0 -0
  981. /package/dist/esm/{src/transformers → transformers}/AliasRenamer.d.ts +0 -0
  982. /package/dist/esm/{src/transformers → transformers}/AliasRenamer.js +0 -0
  983. /package/dist/esm/{src/transformers → transformers}/CTEBuilder.d.ts +0 -0
  984. /package/dist/esm/{src/transformers → transformers}/CTEBuilder.js +0 -0
  985. /package/dist/esm/{src/transformers → transformers}/CTECollector.d.ts +0 -0
  986. /package/dist/esm/{src/transformers → transformers}/CTECollector.js +0 -0
  987. /package/dist/esm/{src/transformers → transformers}/CTEComposer.d.ts +0 -0
  988. /package/dist/esm/{src/transformers → transformers}/CTEComposer.js +0 -0
  989. /package/dist/esm/{src/transformers → transformers}/CTEDependencyAnalyzer.d.ts +0 -0
  990. /package/dist/esm/{src/transformers → transformers}/CTEDependencyAnalyzer.js +0 -0
  991. /package/dist/esm/{src/transformers → transformers}/CTEDependencyTracer.d.ts +0 -0
  992. /package/dist/esm/{src/transformers → transformers}/CTEDependencyTracer.js +0 -0
  993. /package/dist/esm/{src/transformers → transformers}/CTEDisabler.d.ts +0 -0
  994. /package/dist/esm/{src/transformers → transformers}/CTEDisabler.js +0 -0
  995. /package/dist/esm/{src/transformers → transformers}/CTEInjector.d.ts +0 -0
  996. /package/dist/esm/{src/transformers → transformers}/CTEInjector.js +0 -0
  997. /package/dist/esm/{src/transformers → transformers}/CTENormalizer.d.ts +0 -0
  998. /package/dist/esm/{src/transformers → transformers}/CTENormalizer.js +0 -0
  999. /package/dist/esm/{src/transformers → transformers}/CTEQueryDecomposer.d.ts +0 -0
  1000. /package/dist/esm/{src/transformers → transformers}/CTEQueryDecomposer.js +0 -0
  1001. /package/dist/esm/{src/transformers → transformers}/CTERenamer.d.ts +0 -0
  1002. /package/dist/esm/{src/transformers → transformers}/CTERenamer.js +0 -0
  1003. /package/dist/esm/{src/transformers → transformers}/CTETableReferenceCollector.d.ts +0 -0
  1004. /package/dist/esm/{src/transformers → transformers}/CTETableReferenceCollector.js +0 -0
  1005. /package/dist/esm/{src/transformers → transformers}/ColumnReferenceCollector.d.ts +0 -0
  1006. /package/dist/esm/{src/transformers → transformers}/DDLGeneralizer.d.ts +0 -0
  1007. /package/dist/esm/{src/transformers → transformers}/DDLGeneralizer.js +0 -0
  1008. /package/dist/esm/{src/transformers → transformers}/DDLToFixtureConverter.d.ts +0 -0
  1009. /package/dist/esm/{src/transformers → transformers}/DDLToFixtureConverter.js +0 -0
  1010. /package/dist/esm/{src/transformers → transformers}/DeleteResultSelectConverter.d.ts +0 -0
  1011. /package/dist/esm/{src/transformers → transformers}/DynamicQueryBuilder.d.ts +0 -0
  1012. /package/dist/esm/{src/transformers → transformers}/DynamicQueryBuilder.js +0 -0
  1013. /package/dist/esm/{src/transformers → transformers}/EnhancedJsonMapping.d.ts +0 -0
  1014. /package/dist/esm/{src/transformers → transformers}/EnhancedJsonMapping.js +0 -0
  1015. /package/dist/esm/{src/transformers → transformers}/FilterableItemCollector.d.ts +0 -0
  1016. /package/dist/esm/{src/transformers → transformers}/FilterableItemCollector.js +0 -0
  1017. /package/dist/esm/{src/transformers → transformers}/FixtureCteBuilder.d.ts +0 -0
  1018. /package/dist/esm/{src/transformers → transformers}/FixtureCteBuilder.js +0 -0
  1019. /package/dist/esm/{src/transformers → transformers}/FormatOptionResolver.d.ts +0 -0
  1020. /package/dist/esm/{src/transformers → transformers}/FormatOptionResolver.js +0 -0
  1021. /package/dist/esm/{src/transformers → transformers}/Formatter.d.ts +0 -0
  1022. /package/dist/esm/{src/transformers → transformers}/Formatter.js +0 -0
  1023. /package/dist/esm/{src/transformers → transformers}/InsertQuerySelectValuesConverter.d.ts +0 -0
  1024. /package/dist/esm/{src/transformers → transformers}/InsertQuerySelectValuesConverter.js +0 -0
  1025. /package/dist/esm/{src/transformers → transformers}/JoinAggregationDecomposer.d.ts +0 -0
  1026. /package/dist/esm/{src/transformers → transformers}/JoinAggregationDecomposer.js +0 -0
  1027. /package/dist/esm/{src/transformers → transformers}/JsonMappingConverter.d.ts +0 -0
  1028. /package/dist/esm/{src/transformers → transformers}/JsonMappingConverter.js +0 -0
  1029. /package/dist/esm/{src/transformers → transformers}/JsonMappingUnifier.d.ts +0 -0
  1030. /package/dist/esm/{src/transformers → transformers}/JsonMappingUnifier.js +0 -0
  1031. /package/dist/esm/{src/transformers → transformers}/LinePrinter.d.ts +0 -0
  1032. /package/dist/esm/{src/transformers → transformers}/LinePrinter.js +0 -0
  1033. /package/dist/esm/{src/transformers → transformers}/MergeResultSelectConverter.d.ts +0 -0
  1034. /package/dist/esm/{src/transformers → transformers}/MergeResultSelectConverter.js +0 -0
  1035. /package/dist/esm/{src/transformers → transformers}/ModelDrivenJsonMapping.d.ts +0 -0
  1036. /package/dist/esm/{src/transformers → transformers}/ModelDrivenJsonMapping.js +0 -0
  1037. /package/dist/esm/{src/transformers → transformers}/OnelineFormattingHelper.d.ts +0 -0
  1038. /package/dist/esm/{src/transformers → transformers}/OnelineFormattingHelper.js +0 -0
  1039. /package/dist/esm/{src/transformers → transformers}/ParameterCollector.d.ts +0 -0
  1040. /package/dist/esm/{src/transformers → transformers}/ParameterCollector.js +0 -0
  1041. /package/dist/esm/{src/transformers → transformers}/PostgresArrayEntityCteBuilder.d.ts +0 -0
  1042. /package/dist/esm/{src/transformers → transformers}/PostgresArrayEntityCteBuilder.js +0 -0
  1043. /package/dist/esm/{src/transformers → transformers}/PostgresJsonQueryBuilder.d.ts +0 -0
  1044. /package/dist/esm/{src/transformers → transformers}/PostgresJsonQueryBuilder.js +0 -0
  1045. /package/dist/esm/{src/transformers → transformers}/PostgresObjectEntityCteBuilder.d.ts +0 -0
  1046. /package/dist/esm/{src/transformers → transformers}/PostgresObjectEntityCteBuilder.js +0 -0
  1047. /package/dist/esm/{src/transformers → transformers}/QueryBuilder.d.ts +0 -0
  1048. /package/dist/esm/{src/transformers → transformers}/QueryBuilder.js +0 -0
  1049. /package/dist/esm/{src/transformers → transformers}/QueryFlowDiagramGenerator.d.ts +0 -0
  1050. /package/dist/esm/{src/transformers → transformers}/QueryFlowDiagramGenerator.js +0 -0
  1051. /package/dist/esm/{src/transformers → transformers}/SchemaCollector.d.ts +0 -0
  1052. /package/dist/esm/{src/transformers → transformers}/SchemaCollector.js +0 -0
  1053. /package/dist/esm/{src/transformers → transformers}/SelectResultSelectConverter.d.ts +0 -0
  1054. /package/dist/esm/{src/transformers → transformers}/SelectResultSelectConverter.js +0 -0
  1055. /package/dist/esm/{src/transformers → transformers}/SelectValueCollector.d.ts +0 -0
  1056. /package/dist/esm/{src/transformers → transformers}/SelectValueCollector.js +0 -0
  1057. /package/dist/esm/{src/transformers → transformers}/SelectableColumnCollector.d.ts +0 -0
  1058. /package/dist/esm/{src/transformers → transformers}/SelectableColumnCollector.js +0 -0
  1059. /package/dist/esm/{src/transformers → transformers}/SimulatedSelectConverter.d.ts +0 -0
  1060. /package/dist/esm/{src/transformers → transformers}/SimulatedSelectConverter.js +0 -0
  1061. /package/dist/esm/{src/transformers → transformers}/SmartRenamer.d.ts +0 -0
  1062. /package/dist/esm/{src/transformers → transformers}/SmartRenamer.js +0 -0
  1063. /package/dist/esm/{src/transformers → transformers}/SqlFormatter.d.ts +0 -0
  1064. /package/dist/esm/{src/transformers → transformers}/SqlFormatter.js +0 -0
  1065. /package/dist/esm/{src/transformers → transformers}/SqlIdentifierRenamer.d.ts +0 -0
  1066. /package/dist/esm/{src/transformers → transformers}/SqlIdentifierRenamer.js +0 -0
  1067. /package/dist/esm/{src/transformers → transformers}/SqlOutputToken.d.ts +0 -0
  1068. /package/dist/esm/{src/transformers → transformers}/SqlOutputToken.js +0 -0
  1069. /package/dist/esm/{src/transformers → transformers}/SqlPaginationInjector.d.ts +0 -0
  1070. /package/dist/esm/{src/transformers → transformers}/SqlPaginationInjector.js +0 -0
  1071. /package/dist/esm/{src/transformers → transformers}/SqlParamInjector.d.ts +0 -0
  1072. /package/dist/esm/{src/transformers → transformers}/SqlParamInjector.js +0 -0
  1073. /package/dist/esm/{src/transformers → transformers}/SqlParameterBinder.d.ts +0 -0
  1074. /package/dist/esm/{src/transformers → transformers}/SqlParameterBinder.js +0 -0
  1075. /package/dist/esm/{src/transformers → transformers}/SqlPrinter.d.ts +0 -0
  1076. /package/dist/esm/{src/transformers → transformers}/SqlSortInjector.d.ts +0 -0
  1077. /package/dist/esm/{src/transformers → transformers}/SqlSortInjector.js +0 -0
  1078. /package/dist/esm/{src/transformers → transformers}/TableColumnResolver.d.ts +0 -0
  1079. /package/dist/esm/{src/transformers → transformers}/TableColumnResolver.js +0 -0
  1080. /package/dist/{src → esm}/transformers/TableColumnResolver.js.map +0 -0
  1081. /package/dist/esm/{src/transformers → transformers}/TableSourceCollector.d.ts +0 -0
  1082. /package/dist/esm/{src/transformers → transformers}/TypeTransformationPostProcessor.d.ts +0 -0
  1083. /package/dist/esm/{src/transformers → transformers}/TypeTransformationPostProcessor.js +0 -0
  1084. /package/dist/esm/{src/transformers → transformers}/UpdateResultSelectConverter.d.ts +0 -0
  1085. /package/dist/esm/{src/transformers → transformers}/UpstreamSelectQueryFinder.d.ts +0 -0
  1086. /package/dist/esm/{src/transformers → transformers}/UpstreamSelectQueryFinder.js +0 -0
  1087. /package/dist/esm/{src/types → types}/Formatting.d.ts +0 -0
  1088. /package/dist/esm/{src/types → types}/Formatting.js +0 -0
  1089. /package/dist/{src → esm}/types/Formatting.js.map +0 -0
  1090. /package/dist/esm/{src/utils → utils}/CTERegionDetector.d.ts +0 -0
  1091. /package/dist/esm/{src/utils → utils}/CTERegionDetector.js +0 -0
  1092. /package/dist/esm/{src/utils → utils}/CommentEditor.d.ts +0 -0
  1093. /package/dist/esm/{src/utils → utils}/CommentEditor.js +0 -0
  1094. /package/dist/esm/{src/utils → utils}/CommentUtils.d.ts +0 -0
  1095. /package/dist/esm/{src/utils → utils}/CommentUtils.js +0 -0
  1096. /package/dist/esm/{src/utils → utils}/CursorContextAnalyzer.d.ts +0 -0
  1097. /package/dist/esm/{src/utils → utils}/CursorContextAnalyzer.js +0 -0
  1098. /package/dist/esm/{src/utils → utils}/IntelliSenseApi.d.ts +0 -0
  1099. /package/dist/esm/{src/utils → utils}/IntelliSenseApi.js +0 -0
  1100. /package/dist/esm/{src/utils → utils}/JsonSchemaValidator.d.ts +0 -0
  1101. /package/dist/esm/{src/utils → utils}/JsonSchemaValidator.js +0 -0
  1102. /package/dist/esm/{src/utils → utils}/KeywordCache.d.ts +0 -0
  1103. /package/dist/esm/{src/utils → utils}/KeywordCache.js +0 -0
  1104. /package/dist/esm/{src/utils → utils}/LexemeCursor.d.ts +0 -0
  1105. /package/dist/esm/{src/utils → utils}/LexemeCursor.js +0 -0
  1106. /package/dist/esm/{src/utils → utils}/MultiQuerySplitter.d.ts +0 -0
  1107. /package/dist/esm/{src/utils → utils}/MultiQuerySplitter.js +0 -0
  1108. /package/dist/esm/{src/utils → utils}/OperatorPrecedence.d.ts +0 -0
  1109. /package/dist/esm/{src/utils → utils}/OperatorPrecedence.js +0 -0
  1110. /package/dist/esm/{src/utils → utils}/ParameterDetector.d.ts +0 -0
  1111. /package/dist/esm/{src/utils → utils}/ParameterDetector.js +0 -0
  1112. /package/dist/esm/{src/utils → utils}/ParameterHelper.d.ts +0 -0
  1113. /package/dist/esm/{src/utils → utils}/ParameterHelper.js +0 -0
  1114. /package/dist/esm/{src/utils → utils}/ParameterRemover.d.ts +0 -0
  1115. /package/dist/esm/{src/utils → utils}/ParserStringUtils.d.ts +0 -0
  1116. /package/dist/esm/{src/utils → utils}/ParserStringUtils.js +0 -0
  1117. /package/dist/esm/{src/utils → utils}/PositionAwareParser.d.ts +0 -0
  1118. /package/dist/esm/{src/utils → utils}/PositionAwareParser.js +0 -0
  1119. /package/dist/esm/{src/utils → utils}/SchemaManager.d.ts +0 -0
  1120. /package/dist/esm/{src/utils → utils}/SchemaManager.js +0 -0
  1121. /package/dist/esm/{src/utils → utils}/ScopeResolver.d.ts +0 -0
  1122. /package/dist/esm/{src/utils → utils}/ScopeResolver.js +0 -0
  1123. /package/dist/esm/{src/utils → utils}/SelectQueryWithClauseHelper.d.ts +0 -0
  1124. /package/dist/esm/{src/utils → utils}/SelectQueryWithClauseHelper.js +0 -0
  1125. /package/dist/esm/{src/utils → utils}/SqlSchemaValidator.d.ts +0 -0
  1126. /package/dist/esm/{src/utils → utils}/SqlSchemaValidator.js +0 -0
  1127. /package/dist/esm/{src/utils → utils}/TextPositionUtils.d.ts +0 -0
  1128. /package/dist/esm/{src/utils → utils}/TextPositionUtils.js +0 -0
  1129. /package/dist/esm/{src/utils → utils}/ValueComponentRewriter.d.ts +0 -0
  1130. /package/dist/esm/{src/utils → utils}/charLookupTable.d.ts +0 -0
  1131. /package/dist/esm/{src/utils → utils}/charLookupTable.js +0 -0
  1132. /package/dist/esm/{src/utils → utils}/stringUtils.d.ts +0 -0
  1133. /package/dist/esm/{src/utils → utils}/stringUtils.js +0 -0
@@ -1,245 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.PostgresJsonQueryBuilder = void 0;
4
- const Clause_1 = require("../models/Clause");
5
- const SimpleSelectQuery_1 = require("../models/SimpleSelectQuery");
6
- const ValueComponent_1 = require("../models/ValueComponent");
7
- const SelectValueCollector_1 = require("./SelectValueCollector");
8
- const PostgresObjectEntityCteBuilder_1 = require("./PostgresObjectEntityCteBuilder");
9
- const PostgresArrayEntityCteBuilder_1 = require("./PostgresArrayEntityCteBuilder");
10
- const QueryBuilder_1 = require("./QueryBuilder");
11
- /**
12
- * PostgreSQL JSON query builder that transforms SimpleSelectQuery into queries
13
- * that return JSON arrays or single JSON objects using PostgreSQL JSON functions.
14
- */
15
- class PostgresJsonQueryBuilder {
16
- constructor() {
17
- this.selectValueCollector = new SelectValueCollector_1.SelectValueCollector(null);
18
- this.objectEntityCteBuilder = new PostgresObjectEntityCteBuilder_1.PostgresObjectEntityCteBuilder();
19
- this.arrayEntityCteBuilder = new PostgresArrayEntityCteBuilder_1.PostgresArrayEntityCteBuilder();
20
- }
21
- /**
22
- * Validates the JSON mapping and the original query.
23
- * @param query Original query to transform
24
- * @param mapping JSON mapping configuration
25
- */
26
- validateMapping(query, mapping) {
27
- var _a, _b;
28
- const collector = new SelectValueCollector_1.SelectValueCollector();
29
- const selectedValues = collector.collect(query);
30
- // sv.name is the alias or derived name
31
- const availableColumns = new Set(selectedValues.map(sv => sv.name)); // Check root entity columns
32
- for (const jsonKey in mapping.rootEntity.columns) {
33
- const columnDef = mapping.rootEntity.columns[jsonKey];
34
- // Handle both string and object formats
35
- const sourceColumn = typeof columnDef === 'string' ? columnDef : columnDef.column;
36
- if (!availableColumns.has(sourceColumn)) {
37
- throw new Error(`Validation Error: Column "${sourceColumn}" for JSON key "${jsonKey}" in root entity "${mapping.rootEntity.name}" not found in the query's select list.`);
38
- }
39
- }
40
- // Check nested entity columns and parent-child relationships
41
- const entityIds = new Set([mapping.rootEntity.id]);
42
- const parentToChildrenMap = new Map();
43
- mapping.nestedEntities.forEach(ne => {
44
- entityIds.add(ne.id);
45
- if (!parentToChildrenMap.has(ne.parentId)) {
46
- parentToChildrenMap.set(ne.parentId, []);
47
- }
48
- parentToChildrenMap.get(ne.parentId).push(ne.id);
49
- });
50
- for (const entity of mapping.nestedEntities) {
51
- if (!entityIds.has(entity.parentId)) {
52
- throw new Error(`Validation Error: Parent entity with ID "${entity.parentId}" for nested entity "${entity.name}" (ID: ${entity.id}) not found.`);
53
- }
54
- for (const jsonKey in entity.columns) {
55
- const columnDef = entity.columns[jsonKey];
56
- // Handle both string and object formats
57
- const sourceColumn = typeof columnDef === 'string' ? columnDef : columnDef.column;
58
- if (!availableColumns.has(sourceColumn)) {
59
- throw new Error(`Validation Error: Column "${sourceColumn}" for JSON key "${jsonKey}" in nested entity "${entity.name}" (ID: ${entity.id}) not found in the query's select list.`);
60
- }
61
- }
62
- }
63
- // Validate: An entity should not have multiple direct array children.
64
- // Validate: Child propertyNames under a single parent must be unique.
65
- const allParentIds = new Set([mapping.rootEntity.id, ...mapping.nestedEntities.map(ne => ne.parentId)]);
66
- for (const parentId of allParentIds) {
67
- const directChildren = mapping.nestedEntities.filter(ne => ne.parentId === parentId);
68
- const directArrayChildrenCount = directChildren.filter(c => c.relationshipType === 'array').length;
69
- if (directArrayChildrenCount > 1) {
70
- const parentName = parentId === mapping.rootEntity.id ? mapping.rootEntity.name : (_a = mapping.nestedEntities.find(ne => ne.id === parentId)) === null || _a === void 0 ? void 0 : _a.name;
71
- throw new Error(`Validation Error: Parent entity "${parentName}" (ID: ${parentId}) has multiple direct array children. This is not supported.`);
72
- }
73
- const propertyNames = new Set();
74
- for (const child of directChildren) {
75
- if (propertyNames.has(child.propertyName)) {
76
- const parentName = parentId === mapping.rootEntity.id ? mapping.rootEntity.name : (_b = mapping.nestedEntities.find(ne => ne.id === parentId)) === null || _b === void 0 ? void 0 : _b.name;
77
- throw new Error(`Validation Error: Parent entity "${parentName}" (ID: ${parentId}) has duplicate property name "${child.propertyName}" for its children.`);
78
- }
79
- propertyNames.add(child.propertyName);
80
- }
81
- }
82
- }
83
- buildJsonQuery(originalQuery, mapping, options) {
84
- // Check jsonb option - must be true (or undefined/default) for GROUP BY compatibility
85
- if ((options === null || options === void 0 ? void 0 : options.jsonb) === false) {
86
- throw new Error('JSONB must be enabled for PostgreSQL GROUP BY compatibility. ' +
87
- 'JSON type cannot be used in GROUP BY clauses. ' +
88
- 'Please set jsonb: true or omit the jsonb option (defaults to true).');
89
- }
90
- // Convert any SelectQuery to SimpleSelectQuery using QueryBuilder
91
- const simpleQuery = originalQuery instanceof SimpleSelectQuery_1.SimpleSelectQuery
92
- ? originalQuery
93
- : QueryBuilder_1.QueryBuilder.buildSimpleQuery(originalQuery);
94
- return this.buildJsonWithCteStrategy(simpleQuery, mapping);
95
- }
96
- /**
97
- * Build JSON query from original query and mapping configuration.
98
- * @deprecated Use buildJsonQuery instead. This method will be removed in a future version.
99
- * @param originalQuery Original query to transform
100
- * @param mapping JSON mapping configuration
101
- * @returns Transformed query with JSON aggregation
102
- */
103
- buildJson(originalQuery, mapping) {
104
- console.warn('buildJson is deprecated. Use buildJsonQuery instead.');
105
- return this.buildJsonQuery(originalQuery, mapping);
106
- }
107
- /**
108
- * Builds the JSON structure using a unified CTE-based strategy.
109
- * @param originalQuery Original query
110
- * @param mapping JSON mapping configuration
111
- * @returns Query with CTE-based JSON aggregation
112
- */
113
- buildJsonWithCteStrategy(originalQuery, mapping) {
114
- this.validateMapping(originalQuery, mapping);
115
- // Step 1: Create the initial CTE from the original query
116
- const { initialCte, initialCteAlias } = this.createInitialCte(originalQuery);
117
- let ctesForProcessing = [initialCte];
118
- let currentAliasToBuildUpon = initialCteAlias;
119
- // Step 2: Prepare entity information
120
- const allEntities = new Map();
121
- allEntities.set(mapping.rootEntity.id, { ...mapping.rootEntity, isRoot: true, propertyName: mapping.rootName });
122
- mapping.nestedEntities.forEach(ne => allEntities.set(ne.id, { ...ne, isRoot: false, propertyName: ne.propertyName })); // Step 2.5: Build CTEs for object entities using dedicated builder
123
- const objectEntityResult = this.objectEntityCteBuilder.buildObjectEntityCtes(initialCte, allEntities, mapping);
124
- // Important: Replace the entire CTE list with the result from object entity builder
125
- // The object entity builder returns all CTEs including the initial one
126
- ctesForProcessing = objectEntityResult.ctes;
127
- currentAliasToBuildUpon = objectEntityResult.lastCteAlias;
128
- // Store column mappings for later use
129
- const columnMappings = objectEntityResult.columnMappings;
130
- // Step 3: Build CTEs for array entities using dedicated builder
131
- const arrayCteBuildResult = this.arrayEntityCteBuilder.buildArrayEntityCtes(ctesForProcessing, currentAliasToBuildUpon, allEntities, mapping, columnMappings);
132
- ctesForProcessing = arrayCteBuildResult.updatedCtes;
133
- currentAliasToBuildUpon = arrayCteBuildResult.lastCteAlias;
134
- // Step 4: Build the final SELECT query using all generated CTEs
135
- return this.buildFinalSelectQuery(ctesForProcessing, currentAliasToBuildUpon, allEntities, mapping, columnMappings);
136
- }
137
- /**
138
- * Creates the initial Common Table Expression (CTE) from the original query.
139
- * @param originalQuery The base SimpleSelectQuery.
140
- * @returns An object containing the initial CTE and its alias.
141
- */
142
- createInitialCte(originalQuery) {
143
- const originCteAlias = "origin_query";
144
- const originCte = new Clause_1.CommonTable(originalQuery, new Clause_1.SourceAliasExpression(originCteAlias, null), null);
145
- return { initialCte: originCte, initialCteAlias: originCteAlias };
146
- }
147
- /**
148
- * Builds the final SELECT query that constructs the root JSON object (or array of objects).
149
- * This query uses all previously generated CTEs.
150
- * @param finalCtesList The complete list of all CTEs (initial and array CTEs).
151
- * @param lastCteAliasForFromClause Alias of the final CTE from which the root object will be built.
152
- * @param allEntities Map of all processable entities.
153
- * @param mapping JSON mapping configuration.
154
- * @returns The final SimpleSelectQuery.
155
- */
156
- buildFinalSelectQuery(finalCtesList, lastCteAliasForFromClause, allEntities, mapping, columnMappings) {
157
- const currentCtes = [...finalCtesList];
158
- // Define rootObjectCteAlias outside of if block
159
- const rootObjectCteAlias = `cte_root_${mapping.rootName.toLowerCase().replace(/[^a-z0-9_]/g, '_')}`;
160
- const rootEntity = allEntities.get(mapping.rootEntity.id);
161
- if (!rootEntity) {
162
- throw new Error(`Root entity ${mapping.rootEntity.id} not found`);
163
- }
164
- if (mapping.resultFormat === "array" || !mapping.resultFormat) {
165
- // Step 4.1a: Create a CTE that wraps the final result as the root object // No alias needed for single table SELECT
166
- const rootObjectBuilderExpression = this.buildEntityJsonObject(rootEntity, null, // No source alias for single table
167
- mapping.nestedEntities, allEntities, columnMappings);
168
- const rootObjectSelectItem = new Clause_1.SelectItem(rootObjectBuilderExpression, mapping.rootName);
169
- const rootObjectCte = new Clause_1.CommonTable(new SimpleSelectQuery_1.SimpleSelectQuery({
170
- selectClause: new Clause_1.SelectClause([rootObjectSelectItem]),
171
- fromClause: new Clause_1.FromClause(new Clause_1.SourceExpression(new Clause_1.TableSource(null, new ValueComponent_1.IdentifierString(lastCteAliasForFromClause)), null // No alias
172
- ), null),
173
- }), new Clause_1.SourceAliasExpression(rootObjectCteAlias, null), null);
174
- currentCtes.push(rootObjectCte);
175
- // Step 4.1b: Aggregate all the root objects
176
- const aggregationFunc = "jsonb_agg"; // Always use JSONB
177
- const aggregateExpression = new ValueComponent_1.FunctionCall(null, new ValueComponent_1.RawString(aggregationFunc), new ValueComponent_1.ValueList([new ValueComponent_1.ColumnReference(null, new ValueComponent_1.IdentifierString(mapping.rootName))]), null);
178
- return new SimpleSelectQuery_1.SimpleSelectQuery({
179
- withClause: new Clause_1.WithClause(false, currentCtes),
180
- selectClause: new Clause_1.SelectClause([
181
- new Clause_1.SelectItem(aggregateExpression, `${mapping.rootName}_array`)
182
- ]),
183
- fromClause: new Clause_1.FromClause(new Clause_1.SourceExpression(new Clause_1.TableSource(null, new ValueComponent_1.IdentifierString(rootObjectCteAlias)), null), null),
184
- });
185
- }
186
- else {
187
- // For a single object result, create root object CTE without alias
188
- const rootObjectBuilderExpression = this.buildEntityJsonObject(rootEntity, null, // No source alias for single table
189
- mapping.nestedEntities, allEntities, columnMappings);
190
- const rootObjectSelectItem = new Clause_1.SelectItem(rootObjectBuilderExpression, mapping.rootName);
191
- const rootObjectCte = new Clause_1.CommonTable(new SimpleSelectQuery_1.SimpleSelectQuery({
192
- selectClause: new Clause_1.SelectClause([rootObjectSelectItem]),
193
- fromClause: new Clause_1.FromClause(new Clause_1.SourceExpression(new Clause_1.TableSource(null, new ValueComponent_1.IdentifierString(lastCteAliasForFromClause)), null // No alias
194
- ), null),
195
- }), new Clause_1.SourceAliasExpression(rootObjectCteAlias, null), null);
196
- currentCtes.push(rootObjectCte);
197
- // Select directly from the root_object_cte with LIMIT 1
198
- return new SimpleSelectQuery_1.SimpleSelectQuery({
199
- withClause: new Clause_1.WithClause(false, currentCtes),
200
- selectClause: new Clause_1.SelectClause([
201
- new Clause_1.SelectItem(new ValueComponent_1.ColumnReference(null, new ValueComponent_1.IdentifierString(mapping.rootName)), mapping.rootName)
202
- ]),
203
- fromClause: new Clause_1.FromClause(new Clause_1.SourceExpression(new Clause_1.TableSource(null, new ValueComponent_1.IdentifierString(rootObjectCteAlias)), null), null),
204
- limitClause: new Clause_1.LimitClause(new ValueComponent_1.LiteralValue(1)) // Correctly use LimitClause
205
- });
206
- }
207
- }
208
- /**
209
- * Build JSON object for entity, using parent JSON columns when available
210
- */
211
- buildEntityJsonObject(entity, sourceAlias, nestedEntities, allEntities, columnMappings) {
212
- const jsonBuildFunction = "jsonb_build_object";
213
- const args = [];
214
- // Add the entity's own columns
215
- Object.entries(entity.columns).forEach(([jsonKey, columnDef]) => {
216
- // Handle both string and object formats
217
- const sqlColumn = typeof columnDef === 'string' ? columnDef : columnDef.column;
218
- args.push(new ValueComponent_1.LiteralValue(jsonKey, undefined, true));
219
- args.push(new ValueComponent_1.ColumnReference(null, new ValueComponent_1.IdentifierString(sqlColumn)));
220
- });
221
- // Find and process child entities (both object and array types)
222
- const childEntities = nestedEntities.filter((ne) => ne.parentId === entity.id);
223
- childEntities.forEach((childEntity) => {
224
- const child = allEntities.get(childEntity.id);
225
- if (!child)
226
- return;
227
- args.push(new ValueComponent_1.LiteralValue(childEntity.propertyName, undefined, true));
228
- if (childEntity.relationshipType === "object") {
229
- // For object relationships, use pre-computed JSON column from column mappings
230
- const mapping = columnMappings.find(m => m.entityId === child.id);
231
- if (!mapping) {
232
- throw new Error(`Column mapping not found for entity: ${child.id}`);
233
- }
234
- args.push(new ValueComponent_1.ColumnReference(null, new ValueComponent_1.IdentifierString(mapping.generatedColumnName)));
235
- }
236
- else if (childEntity.relationshipType === "array") {
237
- // For array relationships, use the column directly
238
- args.push(new ValueComponent_1.ColumnReference(null, new ValueComponent_1.IdentifierString(childEntity.propertyName)));
239
- }
240
- });
241
- return new ValueComponent_1.FunctionCall(null, new ValueComponent_1.RawString(jsonBuildFunction), new ValueComponent_1.ValueList(args), null);
242
- }
243
- }
244
- exports.PostgresJsonQueryBuilder = PostgresJsonQueryBuilder;
245
- //# sourceMappingURL=PostgresJsonQueryBuilder.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"PostgresJsonQueryBuilder.js","sourceRoot":"","sources":["../../../src/transformers/PostgresJsonQueryBuilder.ts"],"names":[],"mappings":"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"}
@@ -1,347 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.PostgresObjectEntityCteBuilder = void 0;
4
- const Clause_1 = require("../models/Clause");
5
- const SimpleSelectQuery_1 = require("../models/SimpleSelectQuery");
6
- const ValueComponent_1 = require("../models/ValueComponent");
7
- /**
8
- * PostgreSQL-specific builder for creating CTEs for object entities (object relationships).
9
- * This class handles the creation of CTEs that build JSON/JSONB objects for object entities,
10
- * processing them from the deepest level up to ensure proper dependency ordering.
11
- *
12
- * Features:
13
- * - Depth-based CTE naming (cte_object_depth_N)
14
- * - NULL handling for entity columns
15
- * - JSONB/JSON object construction
16
- * - Hierarchical processing of nested objects
17
- *
18
- * Why depth calculation is critical:
19
- * 1. Object entities can be nested at multiple levels. We must process the deepest
20
- * (most distant) objects first to ensure their JSON representations are available
21
- * when building their parent entities.
22
- * 2. Object entity processing is essentially a column compression operation. Entities
23
- * at the same depth level can be processed simultaneously since they don't depend
24
- * on each other.
25
- *
26
- * Example hierarchy:
27
- * Order (root, depth 0)
28
- * └─ Customer (depth 1)
29
- * └─ Address (depth 2)
30
- * └─ Shipping (depth 1)
31
- * └─ Carrier (depth 2)
32
- *
33
- * Processing order: depth 2 → depth 1 → depth 0
34
- */
35
- class PostgresObjectEntityCteBuilder {
36
- constructor() {
37
- // Simple counter for unique JSON column names
38
- this.jsonColumnCounter = 0;
39
- // Map entity ID to generated JSON column name
40
- this.entityToJsonColumnMap = new Map();
41
- // Column mappings for external use
42
- this.columnMappings = [];
43
- }
44
- /**
45
- * Build CTEs for all object entities in the correct dependency order
46
- * @param initialCte The starting CTE containing all raw data
47
- * @param allEntities Map of all entities in the mapping
48
- * @param mapping The JSON mapping configuration
49
- * @returns Array of CTEs and the alias of the last CTE created
50
- */
51
- buildObjectEntityCtes(initialCte, allEntities, mapping) {
52
- // Reset counter and mapping for each query
53
- this.jsonColumnCounter = 0;
54
- this.entityToJsonColumnMap.clear();
55
- this.columnMappings = [];
56
- const ctes = [initialCte];
57
- let previousCteAlias = initialCte.aliasExpression.table.name; // Collect and sort object entities by depth
58
- const objectEntityInfos = this.collectAndSortObjectEntities(mapping, allEntities);
59
- // Group entities by depth
60
- const entitiesByDepth = this.groupEntitiesByDepth(objectEntityInfos);
61
- // Process each depth level, starting from the deepest
62
- const depths = Array.from(entitiesByDepth.keys()).sort((a, b) => b - a);
63
- for (const depth of depths) {
64
- const entitiesAtDepth = entitiesByDepth.get(depth);
65
- const cteAlias = `${PostgresObjectEntityCteBuilder.CTE_OBJECT_PREFIX}${depth}`;
66
- // Build CTE for all entities at this depth
67
- const cte = this.buildDepthCte(entitiesAtDepth, previousCteAlias, cteAlias, mapping, allEntities);
68
- ctes.push(cte);
69
- previousCteAlias = cteAlias;
70
- }
71
- return {
72
- ctes,
73
- lastCteAlias: previousCteAlias,
74
- columnMappings: this.columnMappings
75
- };
76
- }
77
- /**
78
- * Generate unique JSON column name with entity name and counter
79
- */
80
- generateUniqueJsonColumnName(entityName, entityId, depth) {
81
- this.jsonColumnCounter++;
82
- const columnName = `${entityName.toLowerCase()}_json_${this.jsonColumnCounter}`;
83
- // Record mapping information for external use
84
- this.columnMappings.push({
85
- entityId,
86
- entityName,
87
- generatedColumnName: columnName,
88
- depth
89
- });
90
- return columnName;
91
- } /**
92
- * Collect all object entities and calculate their depth from root.
93
- *
94
- * Depth calculation is crucial because:
95
- * - It determines the processing order (deepest first)
96
- * - It ensures dependencies are resolved before an entity is processed
97
- * - It allows parallel processing of entities at the same depth level
98
- *
99
- * @param mapping The JSON mapping configuration
100
- * @param allEntities Map of all entities in the mapping
101
- * @returns Array of object entity information with calculated depths
102
- */
103
- collectAndSortObjectEntities(mapping, allEntities) {
104
- const objectInfos = [];
105
- // Helper function to calculate actual object nesting depth for a given OBJECT entity
106
- const calculateActualObjectNestingDepth = (entityIdOfObject) => {
107
- const initialEntity = allEntities.get(entityIdOfObject);
108
- if (!initialEntity) {
109
- throw new Error(`Entity ${entityIdOfObject} not found for depth calculation.`);
110
- }
111
- // If the object itself is root, its depth is 0. (This function should ideally be called for nested entities, not the root itself as a "parent CTE" subject)
112
- if (initialEntity.isRoot)
113
- return 0;
114
- // If the object is not root and has no parentId, it's considered a top-level object, depth 1.
115
- if (!initialEntity.parentId) {
116
- return 1;
117
- }
118
- let currentParentIdInHierarchy = initialEntity.parentId;
119
- let calculatedObjectDepth = 0;
120
- const visitedInPath = new Set();
121
- visitedInPath.add(entityIdOfObject); // Add the starting object itself to detect cycles
122
- while (currentParentIdInHierarchy) {
123
- if (visitedInPath.has(currentParentIdInHierarchy)) {
124
- throw new Error(`Circular dependency detected: ${currentParentIdInHierarchy} already visited in path for ${entityIdOfObject}`);
125
- }
126
- visitedInPath.add(currentParentIdInHierarchy);
127
- const parentEntityData = allEntities.get(currentParentIdInHierarchy);
128
- if (!parentEntityData) {
129
- throw new Error(`Parent entity ${currentParentIdInHierarchy} not found during depth calculation for ${entityIdOfObject}`);
130
- }
131
- let parentIsConsideredAnObjectForNesting = false;
132
- if (parentEntityData.isRoot) {
133
- parentIsConsideredAnObjectForNesting = true; // Root counts as an object ancestor
134
- }
135
- else {
136
- // For non-root parents, find their definition in nestedEntities to check their type
137
- const parentDefinition = mapping.nestedEntities.find(ne => ne.id === currentParentIdInHierarchy);
138
- if (parentDefinition) {
139
- if (parentDefinition.relationshipType === "object") {
140
- parentIsConsideredAnObjectForNesting = true;
141
- }
142
- // If parentDefinition.relationshipType === "array", it's not an object ancestor for depth counting
143
- }
144
- else {
145
- // This implies currentParentIdInHierarchy refers to an entity not defined as root or in nestedEntities
146
- // This should ideally not happen with a consistent mapping.
147
- throw new Error(`Parent entity ${currentParentIdInHierarchy} (ancestor of ${entityIdOfObject}) has no definition in mapping.nestedEntities and is not root.`);
148
- }
149
- }
150
- if (parentIsConsideredAnObjectForNesting) {
151
- calculatedObjectDepth++;
152
- }
153
- if (parentEntityData.isRoot) {
154
- break; // Stop when the root is processed as the highest object ancestor
155
- }
156
- currentParentIdInHierarchy = parentEntityData.parentId; // Move to the next ancestor
157
- }
158
- return calculatedObjectDepth;
159
- };
160
- mapping.nestedEntities.forEach(nestedEntity => {
161
- if (nestedEntity.relationshipType === "object") {
162
- const entity = allEntities.get(nestedEntity.id);
163
- // Ensure we don't process the root entity itself as a "parent" CTE,
164
- // and that the entity actually exists.
165
- if (entity && !entity.isRoot) {
166
- objectInfos.push({
167
- entity,
168
- depth: calculateActualObjectNestingDepth(nestedEntity.id)
169
- });
170
- }
171
- }
172
- });
173
- // The existing grouping and sorting by depth (b - a for descending) should still work correctly
174
- // as it processes deepest levels first, regardless of the absolute depth numbers.
175
- return objectInfos;
176
- }
177
- /**
178
- * Group entities by their depth level.
179
- *
180
- * Grouping by depth allows us to:
181
- * - Process all entities at the same level in a single CTE
182
- * - Optimize query performance by reducing the number of CTEs
183
- * - Maintain clear dependency ordering
184
- *
185
- * @param parentInfos Array of parent entity information with depths
186
- * @returns Map of depth level to entities at that depth
187
- */ groupEntitiesByDepth(objectInfos) {
188
- const entitiesByDepth = new Map();
189
- objectInfos.forEach(info => {
190
- const depth = info.depth;
191
- if (!entitiesByDepth.has(depth)) {
192
- entitiesByDepth.set(depth, []);
193
- }
194
- entitiesByDepth.get(depth).push(info);
195
- });
196
- return entitiesByDepth;
197
- }
198
- /**
199
- * Build a CTE that processes all entities at a specific depth level
200
- */
201
- buildDepthCte(entitiesAtDepth, previousCteAlias, cteAlias, mapping, allEntities) {
202
- // Build SELECT items: * and JSON objects for all entities at this depth
203
- const selectItems = [
204
- // Select all columns from previous CTE
205
- new Clause_1.SelectItem(new ValueComponent_1.ColumnReference(null, new ValueComponent_1.IdentifierString(PostgresObjectEntityCteBuilder.WILDCARD_COLUMN)))
206
- ];
207
- // Process each entity at this depth
208
- for (const { entity } of entitiesAtDepth) {
209
- const jsonColumn = this.buildEntityJsonColumn(entity, mapping, allEntities);
210
- selectItems.push(jsonColumn);
211
- }
212
- // Create CTE that selects from previous CTE
213
- const cteSelect = new SimpleSelectQuery_1.SimpleSelectQuery({
214
- selectClause: new Clause_1.SelectClause(selectItems),
215
- fromClause: new Clause_1.FromClause(new Clause_1.SourceExpression(new Clause_1.TableSource(null, new ValueComponent_1.IdentifierString(previousCteAlias)), null), null)
216
- });
217
- return new Clause_1.CommonTable(cteSelect, new Clause_1.SourceAliasExpression(cteAlias, null), null);
218
- }
219
- /**
220
- * Build JSON column for a single entity with NULL handling
221
- */
222
- buildEntityJsonColumn(entity, mapping, allEntities) {
223
- // Build JSON object arguments and NULL checks
224
- const { jsonObjectArgs, nullChecks } = this.prepareEntityColumns(entity);
225
- // Add child object relationships
226
- this.addChildObjectRelationships(entity, jsonObjectArgs, mapping, allEntities);
227
- // Create JSON object
228
- const jsonObject = this.createJsonObject(jsonObjectArgs);
229
- // Build NULL condition and CASE expression
230
- const nullCondition = this.buildNullCondition(nullChecks);
231
- const caseExpr = this.createCaseExpression(nullCondition, jsonObject);
232
- // Add JSON object as named column with unique name to avoid conflicts
233
- // Calculate depth for this entity (approximate - for mapping purposes)
234
- const depth = this.calculateApproximateDepth(entity, mapping);
235
- const jsonColumnName = this.generateUniqueJsonColumnName(entity.name, entity.id, depth);
236
- // Store mapping for child entity references
237
- this.entityToJsonColumnMap.set(entity.id, jsonColumnName);
238
- return new Clause_1.SelectItem(caseExpr, jsonColumnName);
239
- }
240
- /**
241
- * Calculate approximate depth for an entity (for mapping purposes)
242
- */
243
- calculateApproximateDepth(entity, mapping) {
244
- if (entity.isRoot)
245
- return 0;
246
- if (!entity.parentId)
247
- return 1;
248
- // Simple depth calculation
249
- let depth = 1;
250
- let currentParentId = entity.parentId;
251
- while (currentParentId && currentParentId !== mapping.rootEntity.id) {
252
- const parentEntity = mapping.nestedEntities.find(e => e.id === currentParentId);
253
- if (!parentEntity)
254
- break;
255
- depth++;
256
- currentParentId = parentEntity.parentId;
257
- }
258
- return depth;
259
- }
260
- /**
261
- * Prepare entity columns and NULL checks.
262
- *
263
- * This method extracts column data and creates NULL checks for each column.
264
- * The NULL checking is essential for handling outer joins correctly.
265
- *
266
- * In outer join scenarios, when there's no matching row in the joined table,
267
- * all columns from that table will be NULL. Instead of creating an empty object
268
- * with all NULL properties (e.g., {id: null, name: null, email: null}),
269
- * we want to represent the absence of the entity as NULL itself.
270
- *
271
- * This ensures cleaner JSON output where missing relationships are represented
272
- * as NULL rather than objects with all NULL fields.
273
- *
274
- * @param entity The entity whose columns are being processed
275
- * @returns Object containing arrays of JSON object arguments and NULL check conditions
276
- */
277
- prepareEntityColumns(entity) {
278
- const jsonObjectArgs = [];
279
- const nullChecks = [];
280
- Object.entries(entity.columns).forEach(([jsonKey, sqlColumn]) => {
281
- jsonObjectArgs.push(new ValueComponent_1.LiteralValue(jsonKey, undefined, true));
282
- jsonObjectArgs.push(new ValueComponent_1.ColumnReference(null, new ValueComponent_1.IdentifierString(sqlColumn)));
283
- // Collect NULL checks for each column
284
- nullChecks.push(new ValueComponent_1.BinaryExpression(new ValueComponent_1.ColumnReference(null, new ValueComponent_1.IdentifierString(sqlColumn)), "is", new ValueComponent_1.LiteralValue(null)));
285
- });
286
- return { jsonObjectArgs, nullChecks };
287
- }
288
- /**
289
- * Add child object relationships to JSON object arguments.
290
- *
291
- * This method processes nested object-type entities that are direct children of the current entity.
292
- * For each child entity, it adds the property name and corresponding JSON column reference
293
- * to the arguments array that will be used to build the parent's JSON object.
294
- *
295
- * The child JSON columns are expected to already exist in the data source (created by deeper
296
- * level CTEs), as we process from the deepest level up to the root.
297
- *
298
- * Note: In this context, "child" refers to entities that have an object relationship (0..1)
299
- * with their parent. From a data perspective, these are typically entities referenced via
300
- * foreign keys, representing "parent" entities in traditional database terminology.
301
- *
302
- * @param entity The current entity being processed
303
- * @param jsonObjectArgs Array to which JSON object arguments will be added
304
- * @param mapping The JSON mapping configuration
305
- * @param allEntities Map of all entities in the mapping
306
- */
307
- addChildObjectRelationships(entity, jsonObjectArgs, mapping, allEntities) {
308
- const childEntities = mapping.nestedEntities.filter(ne => ne.parentId === entity.id && ne.relationshipType === "object");
309
- childEntities.forEach(childEntity => {
310
- const child = allEntities.get(childEntity.id);
311
- if (child) {
312
- jsonObjectArgs.push(new ValueComponent_1.LiteralValue(childEntity.propertyName, undefined, true));
313
- // Use mapped JSON column name to avoid conflicts
314
- const jsonColumnName = this.entityToJsonColumnMap.get(child.id);
315
- if (!jsonColumnName) {
316
- throw new Error(`JSON column name not found for child entity: ${child.id}`);
317
- }
318
- jsonObjectArgs.push(new ValueComponent_1.ColumnReference(null, new ValueComponent_1.IdentifierString(jsonColumnName)));
319
- }
320
- });
321
- }
322
- /**
323
- * Create JSON object function call
324
- */
325
- createJsonObject(args) {
326
- const jsonBuildFunction = "jsonb_build_object";
327
- // Always use JSONB
328
- return new ValueComponent_1.FunctionCall(null, new ValueComponent_1.RawString(jsonBuildFunction), new ValueComponent_1.ValueList(args), null);
329
- }
330
- /**
331
- * Build NULL condition from NULL checks
332
- */
333
- buildNullCondition(nullChecks) {
334
- return nullChecks.reduce((acc, check) => acc ? new ValueComponent_1.BinaryExpression(acc, "and", check) : check);
335
- }
336
- /**
337
- * Create CASE expression with NULL handling
338
- */
339
- createCaseExpression(nullCondition, jsonObject) {
340
- return new ValueComponent_1.CaseExpression(null, new ValueComponent_1.SwitchCaseArgument([new ValueComponent_1.CaseKeyValuePair(nullCondition, new ValueComponent_1.LiteralValue(null))], jsonObject // ELSE return the JSON object
341
- ));
342
- }
343
- }
344
- exports.PostgresObjectEntityCteBuilder = PostgresObjectEntityCteBuilder;
345
- PostgresObjectEntityCteBuilder.CTE_OBJECT_PREFIX = 'cte_object_depth_';
346
- PostgresObjectEntityCteBuilder.WILDCARD_COLUMN = '*';
347
- //# sourceMappingURL=PostgresObjectEntityCteBuilder.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"PostgresObjectEntityCteBuilder.js","sourceRoot":"","sources":["../../../src/transformers/PostgresObjectEntityCteBuilder.ts"],"names":[],"mappings":"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"}