rawsql-ts 0.1.0-beta.1 → 0.1.0-beta.10
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.
- package/README.md +179 -206
- package/dist/index.d.ts +13 -0
- package/dist/index.js +32 -0
- package/dist/index.js.map +1 -0
- package/dist/models/BinarySelectQuery.d.ts +91 -0
- package/dist/models/BinarySelectQuery.js +141 -0
- package/dist/models/BinarySelectQuery.js.map +1 -0
- package/dist/models/Clause.d.ts +189 -0
- package/dist/models/Clause.js +318 -0
- package/dist/models/Clause.js.map +1 -0
- package/dist/models/KeywordTrie.d.ts +11 -0
- package/dist/models/KeywordTrie.js +52 -0
- package/dist/models/KeywordTrie.js.map +1 -0
- package/dist/models/Lexeme.d.ts +25 -0
- package/dist/models/Lexeme.js +21 -0
- package/dist/models/Lexeme.js.map +1 -0
- package/dist/models/SelectQuery.d.ts +5 -0
- package/dist/models/SelectQuery.js +10 -0
- package/dist/models/SelectQuery.js.map +1 -0
- package/dist/models/SimpleSelectQuery.d.ts +167 -0
- package/dist/models/SimpleSelectQuery.js +292 -0
- package/dist/models/SimpleSelectQuery.js.map +1 -0
- package/dist/models/SqlComponent.d.ts +18 -0
- package/dist/models/SqlComponent.js +27 -0
- package/dist/models/SqlComponent.js.map +1 -0
- package/dist/models/ValueComponent.d.ts +158 -0
- package/dist/models/ValueComponent.js +250 -0
- package/dist/models/ValueComponent.js.map +1 -0
- package/dist/models/ValuesQuery.d.ts +10 -0
- package/dist/models/ValuesQuery.js +16 -0
- package/dist/models/ValuesQuery.js.map +1 -0
- package/dist/parsers/CommandExpressionParser.d.ts +15 -0
- package/dist/parsers/CommandExpressionParser.js +124 -0
- package/dist/parsers/CommandExpressionParser.js.map +1 -0
- package/dist/parsers/CommonTableParser.d.ts +9 -0
- package/dist/parsers/CommonTableParser.js +62 -0
- package/dist/parsers/CommonTableParser.js.map +1 -0
- package/dist/parsers/ForClauseParser.d.ts +9 -0
- package/dist/parsers/ForClauseParser.js +58 -0
- package/dist/parsers/ForClauseParser.js.map +1 -0
- package/dist/parsers/FromClauseParser.d.ts +9 -0
- package/dist/parsers/FromClauseParser.js +47 -0
- package/dist/parsers/FromClauseParser.js.map +1 -0
- package/dist/parsers/FunctionExpressionParser.d.ts +22 -0
- package/dist/parsers/FunctionExpressionParser.js +178 -0
- package/dist/parsers/FunctionExpressionParser.js.map +1 -0
- package/dist/parsers/GroupByParser.d.ts +10 -0
- package/dist/parsers/GroupByParser.js +58 -0
- package/dist/parsers/GroupByParser.js.map +1 -0
- package/dist/parsers/HavingParser.d.ts +9 -0
- package/dist/parsers/HavingParser.js +36 -0
- package/dist/parsers/HavingParser.js.map +1 -0
- package/dist/parsers/IdentifierParser.d.ts +8 -0
- package/dist/parsers/IdentifierParser.js +39 -0
- package/dist/parsers/IdentifierParser.js.map +1 -0
- package/dist/parsers/JoinClauseParser.d.ts +14 -0
- package/dist/parsers/JoinClauseParser.js +105 -0
- package/dist/parsers/JoinClauseParser.js.map +1 -0
- package/dist/parsers/KeywordParser.d.ts +17 -0
- package/dist/parsers/KeywordParser.js +91 -0
- package/dist/parsers/KeywordParser.js.map +1 -0
- package/dist/parsers/LimitClauseParser.d.ts +9 -0
- package/dist/parsers/LimitClauseParser.js +50 -0
- package/dist/parsers/LimitClauseParser.js.map +1 -0
- package/dist/parsers/LiteralParser.d.ts +8 -0
- package/dist/parsers/LiteralParser.js +38 -0
- package/dist/parsers/LiteralParser.js.map +1 -0
- package/dist/parsers/OrderByClauseParser.d.ts +10 -0
- package/dist/parsers/OrderByClauseParser.js +77 -0
- package/dist/parsers/OrderByClauseParser.js.map +1 -0
- package/dist/parsers/OverExpressionParser.d.ts +9 -0
- package/dist/parsers/OverExpressionParser.js +44 -0
- package/dist/parsers/OverExpressionParser.js.map +1 -0
- package/dist/parsers/ParameterExpressionParser.d.ts +8 -0
- package/dist/parsers/ParameterExpressionParser.js +15 -0
- package/dist/parsers/ParameterExpressionParser.js.map +1 -0
- package/dist/parsers/ParenExpressionParser.d.ts +8 -0
- package/dist/parsers/ParenExpressionParser.js +33 -0
- package/dist/parsers/ParenExpressionParser.js.map +1 -0
- package/dist/parsers/PartitionByParser.d.ts +9 -0
- package/dist/parsers/PartitionByParser.js +53 -0
- package/dist/parsers/PartitionByParser.js.map +1 -0
- package/dist/parsers/SelectClauseParser.d.ts +10 -0
- package/dist/parsers/SelectClauseParser.js +84 -0
- package/dist/parsers/SelectClauseParser.js.map +1 -0
- package/dist/parsers/SelectQueryParser.d.ts +13 -0
- package/dist/parsers/SelectQueryParser.js +153 -0
- package/dist/parsers/SelectQueryParser.js.map +1 -0
- package/dist/parsers/SourceAliasExpressionParser.d.ts +8 -0
- package/dist/parsers/SourceAliasExpressionParser.js +49 -0
- package/dist/parsers/SourceAliasExpressionParser.js.map +1 -0
- package/dist/parsers/SourceExpressionParser.d.ts +8 -0
- package/dist/parsers/SourceExpressionParser.js +35 -0
- package/dist/parsers/SourceExpressionParser.js.map +1 -0
- package/dist/parsers/SourceParser.d.ts +13 -0
- package/dist/parsers/SourceParser.js +119 -0
- package/dist/parsers/SourceParser.js.map +1 -0
- package/dist/parsers/SqlTokenizer.d.ts +64 -0
- package/dist/parsers/SqlTokenizer.js +174 -0
- package/dist/parsers/SqlTokenizer.js.map +1 -0
- package/dist/parsers/StringSpecifierExpressionParser.d.ts +8 -0
- package/dist/parsers/StringSpecifierExpressionParser.js +22 -0
- package/dist/parsers/StringSpecifierExpressionParser.js.map +1 -0
- package/dist/parsers/UnaryExpressionParser.d.ts +8 -0
- package/dist/parsers/UnaryExpressionParser.js +30 -0
- package/dist/parsers/UnaryExpressionParser.js.map +1 -0
- package/dist/parsers/ValueParser.d.ts +14 -0
- package/dist/parsers/ValueParser.js +136 -0
- package/dist/parsers/ValueParser.js.map +1 -0
- package/dist/parsers/ValuesQueryParser.d.ts +10 -0
- package/dist/parsers/ValuesQueryParser.js +86 -0
- package/dist/parsers/ValuesQueryParser.js.map +1 -0
- package/dist/parsers/WhereClauseParser.d.ts +9 -0
- package/dist/parsers/WhereClauseParser.js +36 -0
- package/dist/parsers/WhereClauseParser.js.map +1 -0
- package/dist/parsers/WindowClauseParser.d.ts +9 -0
- package/dist/parsers/WindowClauseParser.js +45 -0
- package/dist/parsers/WindowClauseParser.js.map +1 -0
- package/dist/parsers/WindowExpressionParser.d.ts +12 -0
- package/dist/parsers/WindowExpressionParser.js +163 -0
- package/dist/parsers/WindowExpressionParser.js.map +1 -0
- package/dist/parsers/WithClauseParser.d.ts +9 -0
- package/dist/parsers/WithClauseParser.js +57 -0
- package/dist/parsers/WithClauseParser.js.map +1 -0
- package/dist/tokenReaders/BaseTokenReader.d.ts +43 -0
- package/{.vs/CopilotSnapshots/02E79E48DFF5234787CB618DE990598A/48814CCF3E4E4B44A66AB8BC7D6CF6B6/A32D1DB906C73FA74EF270AAEE165FC0 → dist/tokenReaders/BaseTokenReader.js} +30 -34
- package/dist/tokenReaders/BaseTokenReader.js.map +1 -0
- package/dist/tokenReaders/CommandTokenReader.d.ts +7 -0
- package/dist/tokenReaders/CommandTokenReader.js +145 -0
- package/dist/tokenReaders/CommandTokenReader.js.map +1 -0
- package/dist/tokenReaders/FunctionTokenReader.d.ts +11 -0
- package/dist/tokenReaders/FunctionTokenReader.js +45 -0
- package/dist/tokenReaders/FunctionTokenReader.js.map +1 -0
- package/dist/tokenReaders/IdentifierTokenReader.d.ts +15 -0
- package/dist/tokenReaders/IdentifierTokenReader.js +70 -0
- package/dist/tokenReaders/IdentifierTokenReader.js.map +1 -0
- package/dist/tokenReaders/LiteralTokenReader.d.ts +23 -0
- package/dist/tokenReaders/LiteralTokenReader.js +189 -0
- package/dist/tokenReaders/LiteralTokenReader.js.map +1 -0
- package/dist/tokenReaders/OperatorTokenReader.d.ts +5 -0
- package/dist/tokenReaders/OperatorTokenReader.js +98 -0
- package/dist/tokenReaders/OperatorTokenReader.js.map +1 -0
- package/dist/tokenReaders/ParameterTokenReader.d.ts +11 -0
- package/dist/tokenReaders/ParameterTokenReader.js +44 -0
- package/dist/tokenReaders/ParameterTokenReader.js.map +1 -0
- package/dist/tokenReaders/StringSpecifierTokenReader.d.ts +8 -0
- package/dist/tokenReaders/StringSpecifierTokenReader.js +31 -0
- package/dist/tokenReaders/StringSpecifierTokenReader.js.map +1 -0
- package/dist/tokenReaders/SymbolTokenReader.d.ts +12 -0
- package/dist/tokenReaders/SymbolTokenReader.js +35 -0
- package/dist/tokenReaders/SymbolTokenReader.js.map +1 -0
- package/dist/tokenReaders/TokenReaderManager.d.ts +53 -0
- package/dist/tokenReaders/TokenReaderManager.js +110 -0
- package/dist/tokenReaders/TokenReaderManager.js.map +1 -0
- package/dist/tokenReaders/TypeTokenReader.d.ts +11 -0
- package/dist/tokenReaders/TypeTokenReader.js +59 -0
- package/dist/tokenReaders/TypeTokenReader.js.map +1 -0
- package/dist/transformers/CTEBuilder.d.ts +52 -0
- package/dist/transformers/CTEBuilder.js +188 -0
- package/dist/transformers/CTEBuilder.js.map +1 -0
- package/dist/transformers/CTECollector.d.ts +81 -0
- package/dist/transformers/CTECollector.js +384 -0
- package/dist/transformers/CTECollector.js.map +1 -0
- package/dist/transformers/CTEDisabler.d.ts +77 -0
- package/dist/transformers/CTEDisabler.js +325 -0
- package/dist/transformers/CTEDisabler.js.map +1 -0
- package/dist/transformers/CTEInjector.d.ts +40 -0
- package/dist/transformers/CTEInjector.js +83 -0
- package/dist/transformers/CTEInjector.js.map +1 -0
- package/dist/transformers/CTENormalizer.d.ts +25 -0
- package/dist/transformers/CTENormalizer.js +46 -0
- package/dist/transformers/CTENormalizer.js.map +1 -0
- package/dist/transformers/Formatter.d.ts +82 -0
- package/dist/transformers/Formatter.js +467 -0
- package/dist/transformers/Formatter.js.map +1 -0
- package/dist/transformers/QueryConverter.d.ts +41 -0
- package/dist/transformers/QueryConverter.js +119 -0
- package/dist/transformers/QueryConverter.js.map +1 -0
- package/dist/transformers/SelectValueCollector.d.ts +62 -0
- package/dist/transformers/SelectValueCollector.js +249 -0
- package/dist/transformers/SelectValueCollector.js.map +1 -0
- package/dist/transformers/SelectableColumnCollector.d.ts +70 -0
- package/dist/transformers/SelectableColumnCollector.js +308 -0
- package/dist/transformers/SelectableColumnCollector.js.map +1 -0
- package/dist/transformers/TableSourceCollector.d.ts +92 -0
- package/dist/transformers/TableSourceCollector.js +384 -0
- package/dist/transformers/TableSourceCollector.js.map +1 -0
- package/dist/transformers/UpstreamSelectQueryFinder.d.ts +27 -0
- package/dist/transformers/UpstreamSelectQueryFinder.js +129 -0
- package/dist/transformers/UpstreamSelectQueryFinder.js.map +1 -0
- package/dist/utils/charLookupTable.d.ts +11 -0
- package/dist/utils/charLookupTable.js +73 -0
- package/dist/utils/charLookupTable.js.map +1 -0
- package/dist/utils/stringUtils.d.ts +43 -0
- package/dist/utils/stringUtils.js +168 -0
- package/dist/utils/stringUtils.js.map +1 -0
- package/package.json +13 -7
- package/.vs/CopilotSnapshots/02E79E48DFF5234787CB618DE990598A/48814CCF3E4E4B44A66AB8BC7D6CF6B6/904140CF7EDF0C98AEA45F0D36062FE1 +0 -1
- package/.vs/CopilotSnapshots/02E79E48DFF5234787CB618DE990598A/48814CCF3E4E4B44A66AB8BC7D6CF6B6/E621434FB1D5415B14FBBCC11967E420 +0 -34
- package/.vs/CopilotSnapshots/02E79E48DFF5234787CB618DE990598A/48814CCF3E4E4B44A66AB8BC7D6CF6B6/EF71788BE39818EEA3F0164DC15E1BD7 +0 -170
- package/.vs/CopilotSnapshots/02E79E48DFF5234787CB618DE990598A/state.mpack +0 -1
- package/.vs/CopilotSnapshots/07B1013C385C5641A5F5100E0751210B/0C73C015B2C859419AFBD08BE1343FC0/BA5D2B145A59265D63FA3B3584344B02 +0 -236
- package/.vs/CopilotSnapshots/07B1013C385C5641A5F5100E0751210B/state.mpack +0 -1
- package/.vs/CopilotSnapshots/0D03762A9EA0CB4885F2114567F23F93/A9AF50781E77B849AA3262D2738D9338/1F95FD72006ED6E92629CEFD7B2C4FEC +0 -1
- package/.vs/CopilotSnapshots/0D03762A9EA0CB4885F2114567F23F93/A9AF50781E77B849AA3262D2738D9338/4CA7B9D3BC2D0A498DC0777EDA3F9B0F +0 -1
- package/.vs/CopilotSnapshots/0D03762A9EA0CB4885F2114567F23F93/A9AF50781E77B849AA3262D2738D9338/7B623BFBAEB4EB61A9585F0BC8039B06 +0 -19
- package/.vs/CopilotSnapshots/0D03762A9EA0CB4885F2114567F23F93/CA94452964F7A94B8ECE3B54EE21B50F/1F95FD72006ED6E92629CEFD7B2C4FEC +0 -5
- package/.vs/CopilotSnapshots/0D03762A9EA0CB4885F2114567F23F93/CA94452964F7A94B8ECE3B54EE21B50F/4CA7B9D3BC2D0A498DC0777EDA3F9B0F +0 -3
- package/.vs/CopilotSnapshots/0D03762A9EA0CB4885F2114567F23F93/CA94452964F7A94B8ECE3B54EE21B50F/7B623BFBAEB4EB61A9585F0BC8039B06 +0 -21
- package/.vs/CopilotSnapshots/0D03762A9EA0CB4885F2114567F23F93/state.mpack +0 -1
- package/.vs/CopilotSnapshots/10B71DC3C4C1C04E8602FA06D3925F98/23B181EB1228EF40ABCEF51E89FBF6E6/41035D2B1D57326B55F66372017E223A +0 -1
- package/.vs/CopilotSnapshots/10B71DC3C4C1C04E8602FA06D3925F98/23B181EB1228EF40ABCEF51E89FBF6E6/45EABF6EF6BDFAA58C941A29E98C9C83 +0 -113
- package/.vs/CopilotSnapshots/10B71DC3C4C1C04E8602FA06D3925F98/23B181EB1228EF40ABCEF51E89FBF6E6/748E0B8859CA1A5FDCA675C9E53B6D1C +0 -1
- package/.vs/CopilotSnapshots/10B71DC3C4C1C04E8602FA06D3925F98/23B181EB1228EF40ABCEF51E89FBF6E6/A250FF4AD59546A65FFDC6AA92A4698E +0 -1
- package/.vs/CopilotSnapshots/10B71DC3C4C1C04E8602FA06D3925F98/23B181EB1228EF40ABCEF51E89FBF6E6/C42432BC73D8AA122171FAB6EEB13CBC +0 -19
- package/.vs/CopilotSnapshots/10B71DC3C4C1C04E8602FA06D3925F98/state.mpack +0 -1
- package/.vs/CopilotSnapshots/13B40109875D434BB24880356492BE7E/828B96E81CC7014B887AA519767FACC3/437DAEC1EBBAF4F25ABA1B6A25EB6933 +0 -25
- package/.vs/CopilotSnapshots/13B40109875D434BB24880356492BE7E/state.mpack +0 -1
- package/.vs/CopilotSnapshots/245168908540D646ACBD4FDE8D6DD2D4/1CDE8BAB21868E4D893E119554BA87E5/904140CF7EDF0C98AEA45F0D36062FE1 +0 -63
- package/.vs/CopilotSnapshots/245168908540D646ACBD4FDE8D6DD2D4/1CDE8BAB21868E4D893E119554BA87E5/DFF70C60F68ECD9A4E4C3C74E4CC4DEE +0 -1
- package/.vs/CopilotSnapshots/245168908540D646ACBD4FDE8D6DD2D4/1CDE8BAB21868E4D893E119554BA87E5/EF71788BE39818EEA3F0164DC15E1BD7 +0 -170
- package/.vs/CopilotSnapshots/245168908540D646ACBD4FDE8D6DD2D4/state.mpack +0 -1
- package/.vs/CopilotSnapshots/3BACC9346120824DB30006E353477163/87C831E9EA1AA249A25A44D08CF8E0B5/EF71788BE39818EEA3F0164DC15E1BD7 +0 -328
- package/.vs/CopilotSnapshots/3BACC9346120824DB30006E353477163/state.mpack +0 -1
- package/.vs/CopilotSnapshots/3EFABA5D1530804CA04C606F5EFDDC38/14FE66AD0B834E488EECD9594AE72472/23E7151F0483C5BB5E663F83D4962FD4 +0 -1
- package/.vs/CopilotSnapshots/3EFABA5D1530804CA04C606F5EFDDC38/14FE66AD0B834E488EECD9594AE72472/2D4DCEBC89D52B097AEEEABA23C0EB59 +0 -1
- package/.vs/CopilotSnapshots/3EFABA5D1530804CA04C606F5EFDDC38/14FE66AD0B834E488EECD9594AE72472/7C951A8A572EA5C371FDE657AF968B9C +0 -1
- package/.vs/CopilotSnapshots/3EFABA5D1530804CA04C606F5EFDDC38/14FE66AD0B834E488EECD9594AE72472/A32D1DB906C73FA74EF270AAEE165FC0 +0 -1
- package/.vs/CopilotSnapshots/3EFABA5D1530804CA04C606F5EFDDC38/14FE66AD0B834E488EECD9594AE72472/B692C85119711C76235AA5D78F9F3818 +0 -1
- package/.vs/CopilotSnapshots/3EFABA5D1530804CA04C606F5EFDDC38/14FE66AD0B834E488EECD9594AE72472/E602628EF6D764C2C267810C92906DBA +0 -1
- package/.vs/CopilotSnapshots/3EFABA5D1530804CA04C606F5EFDDC38/14FE66AD0B834E488EECD9594AE72472/E621434FB1D5415B14FBBCC11967E420 +0 -1
- package/.vs/CopilotSnapshots/3EFABA5D1530804CA04C606F5EFDDC38/9C5A45FA50D5344FBB275F406599FF4E/23E7151F0483C5BB5E663F83D4962FD4 +0 -1
- package/.vs/CopilotSnapshots/3EFABA5D1530804CA04C606F5EFDDC38/9C5A45FA50D5344FBB275F406599FF4E/2D4DCEBC89D52B097AEEEABA23C0EB59 +0 -1
- package/.vs/CopilotSnapshots/3EFABA5D1530804CA04C606F5EFDDC38/9C5A45FA50D5344FBB275F406599FF4E/7C951A8A572EA5C371FDE657AF968B9C +0 -1
- package/.vs/CopilotSnapshots/3EFABA5D1530804CA04C606F5EFDDC38/9C5A45FA50D5344FBB275F406599FF4E/A32D1DB906C73FA74EF270AAEE165FC0 +0 -1
- package/.vs/CopilotSnapshots/3EFABA5D1530804CA04C606F5EFDDC38/9C5A45FA50D5344FBB275F406599FF4E/B692C85119711C76235AA5D78F9F3818 +0 -1
- package/.vs/CopilotSnapshots/3EFABA5D1530804CA04C606F5EFDDC38/9C5A45FA50D5344FBB275F406599FF4E/E602628EF6D764C2C267810C92906DBA +0 -1
- package/.vs/CopilotSnapshots/3EFABA5D1530804CA04C606F5EFDDC38/9C5A45FA50D5344FBB275F406599FF4E/E621434FB1D5415B14FBBCC11967E420 +0 -1
- package/.vs/CopilotSnapshots/3EFABA5D1530804CA04C606F5EFDDC38/9C5A45FA50D5344FBB275F406599FF4E/EF71788BE39818EEA3F0164DC15E1BD7 +0 -489
- package/.vs/CopilotSnapshots/3EFABA5D1530804CA04C606F5EFDDC38/state.mpack +0 -1
- package/.vs/CopilotSnapshots/4C16AB71DC018C46A734FBF0BF4AEDD9/0E5F1D40C0CAE848B8F9457F29A1F3FF/D03CD05B4F5C8B7C8CDF0B5E1961B3CA +0 -42
- package/.vs/CopilotSnapshots/4C16AB71DC018C46A734FBF0BF4AEDD9/462A64EF41A4BF42A18708B83E02FD6F/D03CD05B4F5C8B7C8CDF0B5E1961B3CA +0 -40
- package/.vs/CopilotSnapshots/4C16AB71DC018C46A734FBF0BF4AEDD9/90C95C12B91FA142BEF509B6FA329DE5/A3B20E10A19C7CA170132274D2F9312B +0 -9
- package/.vs/CopilotSnapshots/4C16AB71DC018C46A734FBF0BF4AEDD9/90C95C12B91FA142BEF509B6FA329DE5/D03CD05B4F5C8B7C8CDF0B5E1961B3CA +0 -1
- package/.vs/CopilotSnapshots/4C16AB71DC018C46A734FBF0BF4AEDD9/AD7513C9BBFE904AAB7F940397B95A99/D03CD05B4F5C8B7C8CDF0B5E1961B3CA +0 -42
- package/.vs/CopilotSnapshots/4C16AB71DC018C46A734FBF0BF4AEDD9/state.mpack +0 -1
- package/.vs/CopilotSnapshots/50E0417FAD2E524D887CB5763C2FB7B4/63A4C250D9DCE04B9F61D8833B89B5BF/EF71788BE39818EEA3F0164DC15E1BD7 +0 -174
- package/.vs/CopilotSnapshots/50E0417FAD2E524D887CB5763C2FB7B4/state.mpack +0 -1
- package/.vs/CopilotSnapshots/5EF2507B002AC14EA991043C37C36551/60FF68DE489DAD4FBCBBB54AA3F6A552/EF71788BE39818EEA3F0164DC15E1BD7 +0 -496
- package/.vs/CopilotSnapshots/5EF2507B002AC14EA991043C37C36551/state.mpack +0 -1
- package/.vs/CopilotSnapshots/6AA7610F1FB2B746821E54C28A8D109B/7FB78C0F8CB04F4AA6AF3315277B80F8/FB35DD13E708043D4CD8ACD54E14708F +0 -1
- package/.vs/CopilotSnapshots/6AA7610F1FB2B746821E54C28A8D109B/state.mpack +0 -1
- package/.vs/CopilotSnapshots/7F905F8BAC0DAD49BD507CA45C569AFD/5782E13CAB03A04E9E1EC5692F892170/BA5D2B145A59265D63FA3B3584344B02 +0 -5
- package/.vs/CopilotSnapshots/7F905F8BAC0DAD49BD507CA45C569AFD/5782E13CAB03A04E9E1EC5692F892170/EF71788BE39818EEA3F0164DC15E1BD7 +0 -158
- package/.vs/CopilotSnapshots/7F905F8BAC0DAD49BD507CA45C569AFD/9886598393C89944B51920C01EB650C9/BA5D2B145A59265D63FA3B3584344B02 +0 -35
- package/.vs/CopilotSnapshots/7F905F8BAC0DAD49BD507CA45C569AFD/state.mpack +0 -1
- package/.vs/CopilotSnapshots/8492D9C7A2D9514DB8A69D304B48BF3C/D2DA3C4E2131E84EA02E321802A65254/EF71788BE39818EEA3F0164DC15E1BD7 +0 -165
- package/.vs/CopilotSnapshots/8492D9C7A2D9514DB8A69D304B48BF3C/state.mpack +0 -1
- package/.vs/CopilotSnapshots/891A2DC0E5FA424CB8BDDA4FE26ED372/E244D49DDC79514DBA322770B03AE287/1CF9939611B0D194AC81951A171DF046 +0 -43
- package/.vs/CopilotSnapshots/891A2DC0E5FA424CB8BDDA4FE26ED372/state.mpack +0 -1
- package/.vs/CopilotSnapshots/8D302F8BAE46F54EA82AE1DED1A5D240/11E6D1F8E56D734F99C5216231273E8D/E621434FB1D5415B14FBBCC11967E420 +0 -66
- package/.vs/CopilotSnapshots/8D302F8BAE46F54EA82AE1DED1A5D240/24C69A83160FD844B0DEFECF8E1313DB/1CF9939611B0D194AC81951A171DF046 +0 -43
- package/.vs/CopilotSnapshots/8D302F8BAE46F54EA82AE1DED1A5D240/24C69A83160FD844B0DEFECF8E1313DB/E621434FB1D5415B14FBBCC11967E420 +0 -53
- package/.vs/CopilotSnapshots/8D302F8BAE46F54EA82AE1DED1A5D240/5E6D1BCD7CE81548AB445DE97505DC62/1CF9939611B0D194AC81951A171DF046 +0 -30
- package/.vs/CopilotSnapshots/8D302F8BAE46F54EA82AE1DED1A5D240/5E6D1BCD7CE81548AB445DE97505DC62/E621434FB1D5415B14FBBCC11967E420 +0 -53
- package/.vs/CopilotSnapshots/8D302F8BAE46F54EA82AE1DED1A5D240/EC4E81E0109C8F4BA1B5D9CFE1C122BC/E621434FB1D5415B14FBBCC11967E420 +0 -54
- package/.vs/CopilotSnapshots/8D302F8BAE46F54EA82AE1DED1A5D240/state.mpack +0 -1
- package/.vs/CopilotSnapshots/90C28D332F9B2949810126139FCA2640/6139F888FA743143B8E6C99306A478A6/30F913EA337870677E7C575773ECF531 +0 -130
- package/.vs/CopilotSnapshots/90C28D332F9B2949810126139FCA2640/F21743E379F9C1439F6A6405A289AA99/30F913EA337870677E7C575773ECF531 +0 -160
- package/.vs/CopilotSnapshots/90C28D332F9B2949810126139FCA2640/state.mpack +0 -1
- package/.vs/CopilotSnapshots/99E22E75C8AEDF4DB3A668A9ADF0BC43/2E2EFE66C5E05C4B809986E9B23D5409/45EABF6EF6BDFAA58C941A29E98C9C83 +0 -113
- package/.vs/CopilotSnapshots/99E22E75C8AEDF4DB3A668A9ADF0BC43/2E2EFE66C5E05C4B809986E9B23D5409/FB35DD13E708043D4CD8ACD54E14708F +0 -2
- package/.vs/CopilotSnapshots/99E22E75C8AEDF4DB3A668A9ADF0BC43/BE46916E3A8F2C4284792B951B674907/FB35DD13E708043D4CD8ACD54E14708F +0 -5
- package/.vs/CopilotSnapshots/99E22E75C8AEDF4DB3A668A9ADF0BC43/state.mpack +0 -1
- package/.vs/CopilotSnapshots/A6D99EA2D3819F45AD8087D7487F9318/state.mpack +0 -1
- package/.vs/CopilotSnapshots/A78C77F7A237704D95BCFE1BBC39FB0F/68BA9941941DC244BC799D89DB2BF86E/7C951A8A572EA5C371FDE657AF968B9C +0 -96
- package/.vs/CopilotSnapshots/A78C77F7A237704D95BCFE1BBC39FB0F/state.mpack +0 -1
- package/.vs/CopilotSnapshots/AD2203F1B9FECE44BB6D5DC5D83E87AA/734AB1B2974F9545B7F12AAA5842524B/840203FFA9CCF5B33DFD5C7CC5B13527 +0 -125
- package/.vs/CopilotSnapshots/AD2203F1B9FECE44BB6D5DC5D83E87AA/state.mpack +0 -1
- package/.vs/CopilotSnapshots/AEC950C2FAD20147AEE8E325E2CA0A78/89CF3F527D0687479D14274E8CDF3DFF/1CF9939611B0D194AC81951A171DF046 +0 -30
- package/.vs/CopilotSnapshots/AEC950C2FAD20147AEE8E325E2CA0A78/89CF3F527D0687479D14274E8CDF3DFF/BA5D2B145A59265D63FA3B3584344B02 +0 -158
- package/.vs/CopilotSnapshots/AEC950C2FAD20147AEE8E325E2CA0A78/E495EBF64DC77A4BBD470B92DB0391C4/1CF9939611B0D194AC81951A171DF046 +0 -30
- package/.vs/CopilotSnapshots/AEC950C2FAD20147AEE8E325E2CA0A78/E495EBF64DC77A4BBD470B92DB0391C4/BA5D2B145A59265D63FA3B3584344B02 +0 -67
- package/.vs/CopilotSnapshots/AEC950C2FAD20147AEE8E325E2CA0A78/state.mpack +0 -1
- package/.vs/CopilotSnapshots/AF947096A34634478C5D084B8442CD81/1FCDCC65B992954DB78BD1F46892312B/44EB81A1663981E3F52FFFECE3A2918E +0 -143
- package/.vs/CopilotSnapshots/AF947096A34634478C5D084B8442CD81/1FCDCC65B992954DB78BD1F46892312B/E602628EF6D764C2C267810C92906DBA +0 -253
- package/.vs/CopilotSnapshots/AF947096A34634478C5D084B8442CD81/state.mpack +0 -1
- package/.vs/CopilotSnapshots/B1DED422A45D5740BA4EE745C04B2B0B/226F822A22D6BD44BCF56BAA47FA274C/EF71788BE39818EEA3F0164DC15E1BD7 +0 -174
- package/.vs/CopilotSnapshots/B1DED422A45D5740BA4EE745C04B2B0B/state.mpack +0 -1
- package/.vs/CopilotSnapshots/B5DD5E50ACD0FD4998564F0FDE7FAEE0/97908D1D83AD2D4EA7082388DE07CBB4/44EB81A1663981E3F52FFFECE3A2918E +0 -148
- package/.vs/CopilotSnapshots/B5DD5E50ACD0FD4998564F0FDE7FAEE0/state.mpack +0 -1
- package/.vs/CopilotSnapshots/B8ADCAC0C19DB14FB8388BA59A86BC74/7ED3F1557FD7BE4DBEAF9B59FD442925/44EB81A1663981E3F52FFFECE3A2918E +0 -152
- package/.vs/CopilotSnapshots/B8ADCAC0C19DB14FB8388BA59A86BC74/state.mpack +0 -1
- package/.vs/CopilotSnapshots/BDFF50BBC1A93747A0001969C3BD195F/0130610530354840BB06BF4F4E744242/D03CD05B4F5C8B7C8CDF0B5E1961B3CA +0 -138
- package/.vs/CopilotSnapshots/BDFF50BBC1A93747A0001969C3BD195F/5F1C58CEFBAF1B4E80C4CF38B83A0A5F/D03CD05B4F5C8B7C8CDF0B5E1961B3CA +0 -129
- package/.vs/CopilotSnapshots/BDFF50BBC1A93747A0001969C3BD195F/BDC3D099FCCCC147848630670EED45CF/D03CD05B4F5C8B7C8CDF0B5E1961B3CA +0 -139
- package/.vs/CopilotSnapshots/BDFF50BBC1A93747A0001969C3BD195F/D9E2B1CDD1E2BB468E0703BEF6706FF6/D03CD05B4F5C8B7C8CDF0B5E1961B3CA +0 -139
- package/.vs/CopilotSnapshots/BDFF50BBC1A93747A0001969C3BD195F/state.mpack +0 -1
- package/.vs/CopilotSnapshots/C1E2C1A9C1DCFA46B1D5F1C6F36A152D/BC91C0FD38D8694BB992A8DEC1833670/148399016C7971F5592DAADBB9523118 +0 -120
- package/.vs/CopilotSnapshots/C1E2C1A9C1DCFA46B1D5F1C6F36A152D/state.mpack +0 -1
- package/.vs/CopilotSnapshots/C4D8E85893425E4F86F18850F5CA5C08/6C0950E97063C547A72D737E618436B0/1CF9939611B0D194AC81951A171DF046 +0 -9
- package/.vs/CopilotSnapshots/C4D8E85893425E4F86F18850F5CA5C08/6C0950E97063C547A72D737E618436B0/DFF70C60F68ECD9A4E4C3C74E4CC4DEE +0 -84
- package/.vs/CopilotSnapshots/C4D8E85893425E4F86F18850F5CA5C08/state.mpack +0 -1
- package/.vs/CopilotSnapshots/C5C3CA4C37B14A47B6BC753D09F69117/03EA1376F04C0D468FD0851119159D34/44EB81A1663981E3F52FFFECE3A2918E +0 -148
- package/.vs/CopilotSnapshots/C5C3CA4C37B14A47B6BC753D09F69117/03EA1376F04C0D468FD0851119159D34/E602628EF6D764C2C267810C92906DBA +0 -265
- package/.vs/CopilotSnapshots/C5C3CA4C37B14A47B6BC753D09F69117/6887503C15557349842029E58C9C0D11/44EB81A1663981E3F52FFFECE3A2918E +0 -152
- package/.vs/CopilotSnapshots/C5C3CA4C37B14A47B6BC753D09F69117/6887503C15557349842029E58C9C0D11/E602628EF6D764C2C267810C92906DBA +0 -265
- package/.vs/CopilotSnapshots/C5C3CA4C37B14A47B6BC753D09F69117/state.mpack +0 -1
- package/.vs/CopilotSnapshots/C7190BBC8D95D44F9CF8E65E3E8C9CFD/4B6D07592F8EDC4AA3FF742B1F9531CC/1B80EB15A2FEBEC11C8210C5461F8DB7 +0 -43
- package/.vs/CopilotSnapshots/C7190BBC8D95D44F9CF8E65E3E8C9CFD/state.mpack +0 -1
- package/.vs/CopilotSnapshots/C79D12964917E44F9A5BB9D8FA725A0C/2071ADB146D8F7499419123B2A595A41/03E00441128DC70FFEA043158417AC9A +0 -15
- package/.vs/CopilotSnapshots/C79D12964917E44F9A5BB9D8FA725A0C/6ECBF707FE2A88418EA1649CE46068D5/03E00441128DC70FFEA043158417AC9A +0 -1
- package/.vs/CopilotSnapshots/C79D12964917E44F9A5BB9D8FA725A0C/70BAB1D82B755F47A2351CA905ACC0F1/03E00441128DC70FFEA043158417AC9A +0 -49
- package/.vs/CopilotSnapshots/C79D12964917E44F9A5BB9D8FA725A0C/99DDFADAEC5CA14D92CC470523A11743/03E00441128DC70FFEA043158417AC9A +0 -39
- package/.vs/CopilotSnapshots/C79D12964917E44F9A5BB9D8FA725A0C/state.mpack +0 -1
- package/.vs/CopilotSnapshots/D533D78C39683A4188A2CEC902BC03CD/2445F4111C26EB4DA5404F930E140F56/840203FFA9CCF5B33DFD5C7CC5B13527 +0 -6
- package/.vs/CopilotSnapshots/D533D78C39683A4188A2CEC902BC03CD/2445F4111C26EB4DA5404F930E140F56/C27E5C1787B7957BF6F0C3D417890141 +0 -1
- package/.vs/CopilotSnapshots/D533D78C39683A4188A2CEC902BC03CD/state.mpack +0 -1
- package/.vs/CopilotSnapshots/DCAA5A718EC8304685D14C52356D80E0/5FC7C36C7769414C80BFF27A07BB5063/BE400B34D9700403D2BA3A1AA6B1EF1D +0 -15
- package/.vs/CopilotSnapshots/DCAA5A718EC8304685D14C52356D80E0/A4DD9B92084D8E48A95435EDB2B14545/86848C7099AD75EE4E8F10E066F49671 +0 -15
- package/.vs/CopilotSnapshots/DCAA5A718EC8304685D14C52356D80E0/A4DD9B92084D8E48A95435EDB2B14545/BE400B34D9700403D2BA3A1AA6B1EF1D +0 -15
- package/.vs/CopilotSnapshots/DCAA5A718EC8304685D14C52356D80E0/state.mpack +0 -1
- package/.vs/CopilotSnapshots/DCF62F751B748642A0BF5D5125AB6769/5F324CB20D1B5045A13090FA9D177B74/7C951A8A572EA5C371FDE657AF968B9C +0 -96
- package/.vs/CopilotSnapshots/DCF62F751B748642A0BF5D5125AB6769/5F324CB20D1B5045A13090FA9D177B74/B692C85119711C76235AA5D78F9F3818 +0 -73
- package/.vs/CopilotSnapshots/DCF62F751B748642A0BF5D5125AB6769/5F324CB20D1B5045A13090FA9D177B74/EF71788BE39818EEA3F0164DC15E1BD7 +0 -182
- package/.vs/CopilotSnapshots/DCF62F751B748642A0BF5D5125AB6769/C1287B2893D30D40A46C30DC2CE05178/7C951A8A572EA5C371FDE657AF968B9C +0 -96
- package/.vs/CopilotSnapshots/DCF62F751B748642A0BF5D5125AB6769/C1287B2893D30D40A46C30DC2CE05178/B692C85119711C76235AA5D78F9F3818 +0 -98
- package/.vs/CopilotSnapshots/DCF62F751B748642A0BF5D5125AB6769/CA6304DFE7764A4C87ACE5816CDB7CD9/7C951A8A572EA5C371FDE657AF968B9C +0 -96
- package/.vs/CopilotSnapshots/DCF62F751B748642A0BF5D5125AB6769/CA6304DFE7764A4C87ACE5816CDB7CD9/B692C85119711C76235AA5D78F9F3818 +0 -21
- package/.vs/CopilotSnapshots/DCF62F751B748642A0BF5D5125AB6769/CA6304DFE7764A4C87ACE5816CDB7CD9/EF71788BE39818EEA3F0164DC15E1BD7 +0 -176
- package/.vs/CopilotSnapshots/DCF62F751B748642A0BF5D5125AB6769/state.mpack +0 -1
- package/.vs/VSWorkspaceState.json +0 -6
- package/.vs/slnx.sqlite +0 -0
- package/.vs/ts-sample/CopilotIndices/17.13.433.20974/CodeChunks.db +0 -0
- package/.vs/ts-sample/CopilotIndices/17.13.433.20974/SemanticSymbols.db +0 -0
- package/.vs/ts-sample/CopilotIndices/17.13.439.2385/CodeChunks.db +0 -0
- package/.vs/ts-sample/CopilotIndices/17.13.439.2385/SemanticSymbols.db +0 -0
- package/.vs/ts-sample/CopilotIndices/17.13.441.19478/CodeChunks.db +0 -0
- package/.vs/ts-sample/CopilotIndices/17.13.441.19478/SemanticSymbols.db +0 -0
- package/.vs/ts-sample/FileContentIndex/2fa9d8cc-9158-496d-aa9b-3a471d46a157.vsidx +0 -0
- package/.vs/ts-sample/FileContentIndex/5530f45b-244e-4271-b3e3-d8250f03da64.vsidx +0 -0
- package/.vs/ts-sample/FileContentIndex/75f95b5d-c8f7-49ca-a3d7-d1d8f63db437.vsidx +0 -0
- package/.vs/ts-sample/FileContentIndex/abb2aeeb-f62a-4ca7-bfbf-7a1eada625a5.vsidx +0 -0
- package/.vs/ts-sample/FileContentIndex/fc749b54-0f95-45f6-ac75-a8ab3409a5ce.vsidx +0 -0
- package/.vs/ts-sample/config/applicationhost.config +0 -1026
- package/.vs/ts-sample/copilot-chat/3c67db7d/sessions/0901b413-5d87-4b43-b248-80356492be7e +0 -0
- package/.vs/ts-sample/copilot-chat/3c67db7d/sessions/0f61a76a-b21f-46b7-821e-54c28a8d109b +0 -0
- package/.vs/ts-sample/copilot-chat/3c67db7d/sessions/101aef14-dd28-4de3-b2eb-e0b26d587b3a +0 -0
- package/.vs/ts-sample/copilot-chat/3c67db7d/sessions/22d4deb1-5da4-4057-ba4e-e745c04b2b0b +0 -0
- package/.vs/ts-sample/copilot-chat/3c67db7d/sessions/2a76030d-a09e-48cb-85f2-114567f23f93 +0 -0
- package/.vs/ts-sample/copilot-chat/3c67db7d/sessions/2c6d08ca-cb98-4233-8f7c-011c3b409234 +0 -0
- package/.vs/ts-sample/copilot-chat/3c67db7d/sessions/338dc290-9b2f-4929-8101-26139fca2640 +0 -0
- package/.vs/ts-sample/copilot-chat/3c67db7d/sessions/34c9ac3b-2061-4d82-b300-06e353477163 +0 -0
- package/.vs/ts-sample/copilot-chat/3c67db7d/sessions/3c01b107-5c38-4156-a5f5-100e0751210b +0 -0
- package/.vs/ts-sample/copilot-chat/3c67db7d/sessions/489ee702-f5df-4723-87cb-618de990598a +0 -0
- package/.vs/ts-sample/copilot-chat/3c67db7d/sessions/4ccac3c5-b137-474a-b6bc-753d09f69117 +0 -0
- package/.vs/ts-sample/copilot-chat/3c67db7d/sessions/505eddb5-d0ac-49fd-9856-4f0fde7faee0 +0 -0
- package/.vs/ts-sample/copilot-chat/3c67db7d/sessions/58e8d8c4-4293-4f5e-86f1-8850f5ca5c08 +0 -0
- package/.vs/ts-sample/copilot-chat/3c67db7d/sessions/5dbafa3e-3015-4c80-a04c-606f5efddc38 +0 -0
- package/.vs/ts-sample/copilot-chat/3c67db7d/sessions/5f29f527-e43a-4661-b60e-ff772041f413 +0 -0
- package/.vs/ts-sample/copilot-chat/3c67db7d/sessions/6248dfd7-38ae-4fa6-9176-2fdc0694c3e8 +0 -0
- package/.vs/ts-sample/copilot-chat/3c67db7d/sessions/66fcbd64-32dc-436d-80e6-7435a1a3ecf1 +0 -0
- package/.vs/ts-sample/copilot-chat/3c67db7d/sessions/6f9ad733-d555-4d2c-b073-eb6a1aada347 +0 -0
- package/.vs/ts-sample/copilot-chat/3c67db7d/sessions/715aaadc-c88e-4630-85d1-4c52356d80e0 +0 -0
- package/.vs/ts-sample/copilot-chat/3c67db7d/sessions/71ab164c-01dc-468c-a734-fbf0bf4aedd9 +0 -0
- package/.vs/ts-sample/copilot-chat/3c67db7d/sessions/752ee299-aec8-4ddf-b3a6-68a9adf0bc43 +0 -0
- package/.vs/ts-sample/copilot-chat/3c67db7d/sessions/752ff6dc-741b-4286-a0bf-5d5125ab6769 +0 -0
- package/.vs/ts-sample/copilot-chat/3c67db7d/sessions/7b50f25e-2a00-4ec1-a991-043c37c36551 +0 -0
- package/.vs/ts-sample/copilot-chat/3c67db7d/sessions/7f41e050-2ead-4d52-887c-b5763c2fb7b4 +0 -0
- package/.vs/ts-sample/copilot-chat/3c67db7d/sessions/85b50c9e-8895-4085-89c1-934ad2704744 +0 -0
- package/.vs/ts-sample/copilot-chat/3c67db7d/sessions/8b2f308d-46ae-4ef5-a82a-e1ded1a5d240 +0 -0
- package/.vs/ts-sample/copilot-chat/3c67db7d/sessions/8b5f907f-0dac-49ad-bd50-7ca45c569afd +0 -0
- package/.vs/ts-sample/copilot-chat/3c67db7d/sessions/8cd733d5-6839-413a-88a2-cec902bc03cd +0 -0
- package/.vs/ts-sample/copilot-chat/3c67db7d/sessions/90685124-4085-46d6-acbd-4fde8d6dd2d4 +0 -0
- package/.vs/ts-sample/copilot-chat/3c67db7d/sessions/96129dc7-1749-4fe4-9a5b-b9d8fa725a0c +0 -0
- package/.vs/ts-sample/copilot-chat/3c67db7d/sessions/967094af-46a3-4734-8c5d-084b8442cd81 +0 -0
- package/.vs/ts-sample/copilot-chat/3c67db7d/sessions/a29ed9a6-81d3-459f-ad80-87d7487f9318 +0 -0
- package/.vs/ts-sample/copilot-chat/3c67db7d/sessions/a9c1e2c1-dcc1-46fa-b1d5-f1c6f36a152d +0 -0
- package/.vs/ts-sample/copilot-chat/3c67db7d/sessions/badc76f4-d284-4b6c-94e9-abdbc74de540 +0 -0
- package/.vs/ts-sample/copilot-chat/3c67db7d/sessions/bb50ffbd-a9c1-4737-a000-1969c3bd195f +0 -0
- package/.vs/ts-sample/copilot-chat/3c67db7d/sessions/bc0b19c7-958d-4fd4-9cf8-e65e3e8c9cfd +0 -0
- package/.vs/ts-sample/copilot-chat/3c67db7d/sessions/c02d1a89-fae5-4c42-b8bd-da4fe26ed372 +0 -0
- package/.vs/ts-sample/copilot-chat/3c67db7d/sessions/c0caadb8-9dc1-4fb1-b838-8ba59a86bc74 +0 -0
- package/.vs/ts-sample/copilot-chat/3c67db7d/sessions/c250c9ae-d2fa-4701-aee8-e325e2ca0a78 +0 -0
- package/.vs/ts-sample/copilot-chat/3c67db7d/sessions/c31db710-c1c4-4ec0-8602-fa06d3925f98 +0 -0
- package/.vs/ts-sample/copilot-chat/3c67db7d/sessions/c7d99284-d9a2-4d51-b8a6-9d304b48bf3c +0 -0
- package/.vs/ts-sample/copilot-chat/3c67db7d/sessions/ddd1fab4-4016-4cfc-bf9f-f4a85bdfc112 +0 -0
- package/.vs/ts-sample/copilot-chat/3c67db7d/sessions/f10322ad-feb9-44ce-bb6d-5dc5d83e87aa +0 -0
- package/.vs/ts-sample/copilot-chat/3c67db7d/sessions/f7778ca7-37a2-4d70-95bc-fe1bbc39fb0f +0 -0
- package/.vs/ts-sample/v17/.suo +0 -0
- package/.vs/ts-sample/v17/.wsuo +0 -0
- package/.vs/ts-sample/v17/DocumentLayout.backup.json +0 -425
- package/.vs/ts-sample/v17/DocumentLayout.json +0 -423
- package/.vs/ts-sample/v17/TestStore/0/000.testlog +0 -0
- package/.vs/ts-sample/v17/TestStore/0/testlog.manifest +0 -0
- package/dist/tsconfig.tsbuildinfo +0 -1
- package/dist/vitest.config.js +0 -15
- package/dist/vitest.config.js.map +0 -1
@@ -0,0 +1,52 @@
|
|
1
|
+
"use strict";
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
3
|
+
exports.KeywordTrie = void 0;
|
4
|
+
const KeywordParser_1 = require("../parsers/KeywordParser");
|
5
|
+
class KeywordTrie {
|
6
|
+
constructor(keywords) {
|
7
|
+
this.root = new Map();
|
8
|
+
// cache properties
|
9
|
+
this.hasEndProperty = false;
|
10
|
+
this.hasMoreProperties = false;
|
11
|
+
// initialize root node
|
12
|
+
for (const keyword of keywords) {
|
13
|
+
this.addKeyword(keyword);
|
14
|
+
}
|
15
|
+
// set current node to root
|
16
|
+
this.currentNode = this.root;
|
17
|
+
}
|
18
|
+
addKeyword(keyword) {
|
19
|
+
let node = this.root;
|
20
|
+
for (const word of keyword) {
|
21
|
+
if (!node.has(word)) {
|
22
|
+
node.set(word, new Map());
|
23
|
+
}
|
24
|
+
node = node.get(word);
|
25
|
+
}
|
26
|
+
node.set("__end__", true);
|
27
|
+
}
|
28
|
+
reset() {
|
29
|
+
this.currentNode = this.root;
|
30
|
+
this.hasEndProperty = false;
|
31
|
+
this.hasMoreProperties = false;
|
32
|
+
}
|
33
|
+
pushLexeme(lexeme) {
|
34
|
+
if (!this.currentNode.has(lexeme)) {
|
35
|
+
return KeywordParser_1.KeywordMatchResult.NotAKeyword;
|
36
|
+
}
|
37
|
+
// move to next node
|
38
|
+
this.currentNode = this.currentNode.get(lexeme);
|
39
|
+
// Cache property checks to avoid repeated operations
|
40
|
+
this.hasEndProperty = this.currentNode.has("__end__");
|
41
|
+
this.hasMoreProperties = this.currentNode.size > (this.hasEndProperty ? 1 : 0);
|
42
|
+
if (this.hasEndProperty && !this.hasMoreProperties) {
|
43
|
+
return KeywordParser_1.KeywordMatchResult.Final;
|
44
|
+
}
|
45
|
+
if (this.hasEndProperty && this.hasMoreProperties) {
|
46
|
+
return KeywordParser_1.KeywordMatchResult.PartialOrFinal;
|
47
|
+
}
|
48
|
+
return KeywordParser_1.KeywordMatchResult.PartialOnly;
|
49
|
+
}
|
50
|
+
}
|
51
|
+
exports.KeywordTrie = KeywordTrie;
|
52
|
+
//# sourceMappingURL=KeywordTrie.js.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"KeywordTrie.js","sourceRoot":"","sources":["../../src/models/KeywordTrie.ts"],"names":[],"mappings":";;;AAAA,4DAA8D;AAE9D,MAAa,WAAW;IAQpB,YAAY,QAAoB;QAPxB,SAAI,GAAqB,IAAI,GAAG,EAAE,CAAC;QAG3C,mBAAmB;QACX,mBAAc,GAAY,KAAK,CAAC;QAChC,sBAAiB,GAAY,KAAK,CAAC;QAGvC,uBAAuB;QACvB,KAAK,MAAM,OAAO,IAAI,QAAQ,EAAE,CAAC;YAC7B,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC;QAC7B,CAAC;QACD,2BAA2B;QAC3B,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC,IAAI,CAAC;IACjC,CAAC;IAEO,UAAU,CAAC,OAAiB;QAChC,IAAI,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC;QACrB,KAAK,MAAM,IAAI,IAAI,OAAO,EAAE,CAAC;YACzB,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC;gBAClB,IAAI,CAAC,GAAG,CAAC,IAAI,EAAE,IAAI,GAAG,EAAE,CAAC,CAAC;YAC9B,CAAC;YACD,IAAI,GAAG,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;QAC1B,CAAC;QACD,IAAI,CAAC,GAAG,CAAC,SAAS,EAAE,IAAI,CAAC,CAAC;IAC9B,CAAC;IAEM,KAAK;QACR,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC,IAAI,CAAC;QAC7B,IAAI,CAAC,cAAc,GAAG,KAAK,CAAC;QAC5B,IAAI,CAAC,iBAAiB,GAAG,KAAK,CAAC;IACnC,CAAC;IAEM,UAAU,CAAC,MAAc;QAC5B,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC;YAChC,OAAO,kCAAkB,CAAC,WAAW,CAAC;QAC1C,CAAC;QAED,oBAAoB;QACpB,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;QAEhD,qDAAqD;QACrD,IAAI,CAAC,cAAc,GAAG,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;QACtD,IAAI,CAAC,iBAAiB,GAAG,IAAI,CAAC,WAAW,CAAC,IAAI,GAAG,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QAE/E,IAAI,IAAI,CAAC,cAAc,IAAI,CAAC,IAAI,CAAC,iBAAiB,EAAE,CAAC;YACjD,OAAO,kCAAkB,CAAC,KAAK,CAAC;QACpC,CAAC;QACD,IAAI,IAAI,CAAC,cAAc,IAAI,IAAI,CAAC,iBAAiB,EAAE,CAAC;YAChD,OAAO,kCAAkB,CAAC,cAAc,CAAC;QAC7C,CAAC;QAED,OAAO,kCAAkB,CAAC,WAAW,CAAC;IAC1C,CAAC;CACJ;AAvDD,kCAuDC"}
|
@@ -0,0 +1,25 @@
|
|
1
|
+
export declare enum TokenType {
|
2
|
+
Literal = 0,
|
3
|
+
Operator = 1,
|
4
|
+
OpenParen = 2,
|
5
|
+
CloseParen = 3,
|
6
|
+
Comma = 4,
|
7
|
+
Dot = 5,
|
8
|
+
Identifier = 6,
|
9
|
+
Command = 7,// select, from, where as, on, array etc
|
10
|
+
Parameter = 8,
|
11
|
+
OpenBracket = 9,
|
12
|
+
CloseBracket = 10,
|
13
|
+
Function = 11,// next token is open paren
|
14
|
+
StringSpecifier = 12,// next token is string literal
|
15
|
+
Type = 13
|
16
|
+
}
|
17
|
+
/**
|
18
|
+
* Represents a lexical token in SQL parsing
|
19
|
+
*/
|
20
|
+
export interface Lexeme {
|
21
|
+
type: TokenType;
|
22
|
+
value: string;
|
23
|
+
comments: string[] | null;
|
24
|
+
maybeType: boolean | null;
|
25
|
+
}
|
@@ -0,0 +1,21 @@
|
|
1
|
+
"use strict";
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
3
|
+
exports.TokenType = void 0;
|
4
|
+
var TokenType;
|
5
|
+
(function (TokenType) {
|
6
|
+
TokenType[TokenType["Literal"] = 0] = "Literal";
|
7
|
+
TokenType[TokenType["Operator"] = 1] = "Operator";
|
8
|
+
TokenType[TokenType["OpenParen"] = 2] = "OpenParen";
|
9
|
+
TokenType[TokenType["CloseParen"] = 3] = "CloseParen";
|
10
|
+
TokenType[TokenType["Comma"] = 4] = "Comma";
|
11
|
+
TokenType[TokenType["Dot"] = 5] = "Dot";
|
12
|
+
TokenType[TokenType["Identifier"] = 6] = "Identifier";
|
13
|
+
TokenType[TokenType["Command"] = 7] = "Command";
|
14
|
+
TokenType[TokenType["Parameter"] = 8] = "Parameter";
|
15
|
+
TokenType[TokenType["OpenBracket"] = 9] = "OpenBracket";
|
16
|
+
TokenType[TokenType["CloseBracket"] = 10] = "CloseBracket";
|
17
|
+
TokenType[TokenType["Function"] = 11] = "Function";
|
18
|
+
TokenType[TokenType["StringSpecifier"] = 12] = "StringSpecifier";
|
19
|
+
TokenType[TokenType["Type"] = 13] = "Type";
|
20
|
+
})(TokenType || (exports.TokenType = TokenType = {}));
|
21
|
+
//# sourceMappingURL=Lexeme.js.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"Lexeme.js","sourceRoot":"","sources":["../../src/models/Lexeme.ts"],"names":[],"mappings":";;;AAAA,IAAY,SAeX;AAfD,WAAY,SAAS;IACjB,+CAAO,CAAA;IACP,iDAAQ,CAAA;IACR,mDAAS,CAAA;IACT,qDAAU,CAAA;IACV,2CAAK,CAAA;IACL,uCAAG,CAAA;IACH,qDAAU,CAAA;IACV,+CAAO,CAAA;IACP,mDAAS,CAAA;IACT,uDAAW,CAAA;IACX,0DAAY,CAAA;IACZ,kDAAQ,CAAA;IACR,gEAAe,CAAA;IACf,0CAAI,CAAA;AACR,CAAC,EAfW,SAAS,yBAAT,SAAS,QAepB"}
|
@@ -0,0 +1,5 @@
|
|
1
|
+
import { SimpleSelectQuery } from "./SimpleSelectQuery";
|
2
|
+
import { BinarySelectQuery } from "./BinarySelectQuery";
|
3
|
+
import { ValuesQuery } from "./ValuesQuery";
|
4
|
+
export type SelectQuery = SimpleSelectQuery | BinarySelectQuery | ValuesQuery;
|
5
|
+
export { SimpleSelectQuery, BinarySelectQuery, ValuesQuery };
|
@@ -0,0 +1,10 @@
|
|
1
|
+
"use strict";
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
3
|
+
exports.ValuesQuery = exports.BinarySelectQuery = exports.SimpleSelectQuery = void 0;
|
4
|
+
const SimpleSelectQuery_1 = require("./SimpleSelectQuery");
|
5
|
+
Object.defineProperty(exports, "SimpleSelectQuery", { enumerable: true, get: function () { return SimpleSelectQuery_1.SimpleSelectQuery; } });
|
6
|
+
const BinarySelectQuery_1 = require("./BinarySelectQuery");
|
7
|
+
Object.defineProperty(exports, "BinarySelectQuery", { enumerable: true, get: function () { return BinarySelectQuery_1.BinarySelectQuery; } });
|
8
|
+
const ValuesQuery_1 = require("./ValuesQuery");
|
9
|
+
Object.defineProperty(exports, "ValuesQuery", { enumerable: true, get: function () { return ValuesQuery_1.ValuesQuery; } });
|
10
|
+
//# sourceMappingURL=SelectQuery.js.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"SelectQuery.js","sourceRoot":"","sources":["../../src/models/SelectQuery.ts"],"names":[],"mappings":";;;AAAA,2DAAwD;AAK/C,kGALA,qCAAiB,OAKA;AAJ1B,2DAAwD;AAI5B,kGAJnB,qCAAiB,OAImB;AAH7C,+CAA4C;AAGG,4FAHtC,yBAAW,OAGsC"}
|
@@ -0,0 +1,167 @@
|
|
1
|
+
import { SqlComponent } from "./SqlComponent";
|
2
|
+
import { ForClause, FromClause, GroupByClause, HavingClause, LimitClause, OrderByClause, SelectClause, SourceExpression, WhereClause, WindowFrameClause, WithClause, CommonTable } from "./Clause";
|
3
|
+
import { ValueComponent } from "./ValueComponent";
|
4
|
+
import { BinarySelectQuery } from "./BinarySelectQuery";
|
5
|
+
import type { SelectQuery } from "./SelectQuery";
|
6
|
+
/**
|
7
|
+
* Represents a simple SELECT query in SQL.
|
8
|
+
*/
|
9
|
+
export declare class SimpleSelectQuery extends SqlComponent {
|
10
|
+
static kind: symbol;
|
11
|
+
WithClause: WithClause | null;
|
12
|
+
selectClause: SelectClause;
|
13
|
+
fromClause: FromClause | null;
|
14
|
+
whereClause: WhereClause | null;
|
15
|
+
groupByClause: GroupByClause | null;
|
16
|
+
havingClause: HavingClause | null;
|
17
|
+
orderByClause: OrderByClause | null;
|
18
|
+
windowFrameClause: WindowFrameClause | null;
|
19
|
+
rowLimitClause: LimitClause | null;
|
20
|
+
forClause: ForClause | null;
|
21
|
+
constructor(withClause: WithClause | null, selectClause: SelectClause, fromClause: FromClause | null, whereClause: WhereClause | null, groupByClause: GroupByClause | null, havingClause: HavingClause | null, orderByClause: OrderByClause | null, windowFrameClause: WindowFrameClause | null, rowLimitClause: LimitClause | null, forClause: ForClause | null);
|
22
|
+
/**
|
23
|
+
* Creates a new BinarySelectQuery with this query as the left side and the provided query as the right side,
|
24
|
+
* using UNION as the operator.
|
25
|
+
*
|
26
|
+
* @param rightQuery The right side of the UNION
|
27
|
+
* @returns A new BinarySelectQuery representing "this UNION rightQuery"
|
28
|
+
*/
|
29
|
+
toUnion(rightQuery: SelectQuery): BinarySelectQuery;
|
30
|
+
/**
|
31
|
+
* Creates a new BinarySelectQuery with this query as the left side and the provided query as the right side,
|
32
|
+
* using UNION ALL as the operator.
|
33
|
+
*
|
34
|
+
* @param rightQuery The right side of the UNION ALL
|
35
|
+
* @returns A new BinarySelectQuery representing "this UNION ALL rightQuery"
|
36
|
+
*/
|
37
|
+
toUnionAll(rightQuery: SelectQuery): BinarySelectQuery;
|
38
|
+
/**
|
39
|
+
* Creates a new BinarySelectQuery with this query as the left side and the provided query as the right side,
|
40
|
+
* using INTERSECT as the operator.
|
41
|
+
*
|
42
|
+
* @param rightQuery The right side of the INTERSECT
|
43
|
+
* @returns A new BinarySelectQuery representing "this INTERSECT rightQuery"
|
44
|
+
*/
|
45
|
+
toIntersect(rightQuery: SelectQuery): BinarySelectQuery;
|
46
|
+
/**
|
47
|
+
* Creates a new BinarySelectQuery with this query as the left side and the provided query as the right side,
|
48
|
+
* using INTERSECT ALL as the operator.
|
49
|
+
*
|
50
|
+
* @param rightQuery The right side of the INTERSECT ALL
|
51
|
+
* @returns A new BinarySelectQuery representing "this INTERSECT ALL rightQuery"
|
52
|
+
*/
|
53
|
+
toIntersectAll(rightQuery: SelectQuery): BinarySelectQuery;
|
54
|
+
/**
|
55
|
+
* Creates a new BinarySelectQuery with this query as the left side and the provided query as the right side,
|
56
|
+
* using EXCEPT as the operator.
|
57
|
+
*
|
58
|
+
* @param rightQuery The right side of the EXCEPT
|
59
|
+
* @returns A new BinarySelectQuery representing "this EXCEPT rightQuery"
|
60
|
+
*/
|
61
|
+
toExcept(rightQuery: SelectQuery): BinarySelectQuery;
|
62
|
+
/**
|
63
|
+
* Creates a new BinarySelectQuery with this query as the left side and the provided query as the right side,
|
64
|
+
* using EXCEPT ALL as the operator.
|
65
|
+
*
|
66
|
+
* @param rightQuery The right side of the EXCEPT ALL
|
67
|
+
* @returns A new BinarySelectQuery representing "this EXCEPT ALL rightQuery"
|
68
|
+
*/
|
69
|
+
toExceptAll(rightQuery: SelectQuery): BinarySelectQuery;
|
70
|
+
/**
|
71
|
+
* Creates a new BinarySelectQuery with this query as the left side and the provided query as the right side,
|
72
|
+
* using the specified operator.
|
73
|
+
*
|
74
|
+
* @param operator SQL operator to use (e.g. 'union', 'union all', 'intersect', 'except')
|
75
|
+
* @param rightQuery The right side of the binary operation
|
76
|
+
* @returns A new BinarySelectQuery representing "this [operator] rightQuery"
|
77
|
+
*/
|
78
|
+
toBinaryQuery(operator: string, rightQuery: SelectQuery): BinarySelectQuery;
|
79
|
+
/**
|
80
|
+
* Appends a new condition to the query's WHERE clause using AND logic.
|
81
|
+
* The condition is provided as a raw SQL string which is parsed internally.
|
82
|
+
*
|
83
|
+
* @param rawCondition Raw SQL string representing the condition (e.g. "status = 'active'")
|
84
|
+
*/
|
85
|
+
appendWhereRaw(rawCondition: string): void;
|
86
|
+
/**
|
87
|
+
* Appends a new condition to the query's WHERE clause using AND logic.
|
88
|
+
* The condition is provided as a ValueComponent object.
|
89
|
+
*
|
90
|
+
* @param condition ValueComponent representing the condition
|
91
|
+
*/
|
92
|
+
appendWhere(condition: ValueComponent): void;
|
93
|
+
/**
|
94
|
+
* Appends a new condition to the query's HAVING clause using AND logic.
|
95
|
+
* The condition is provided as a raw SQL string which is parsed internally.
|
96
|
+
*
|
97
|
+
* @param rawCondition Raw SQL string representing the condition (e.g. "count(*) > 5")
|
98
|
+
*/
|
99
|
+
appendHavingRaw(rawCondition: string): void;
|
100
|
+
/**
|
101
|
+
* Appends a new condition to the query's HAVING clause using AND logic.
|
102
|
+
* The condition is provided as a ValueComponent object.
|
103
|
+
*
|
104
|
+
* @param condition ValueComponent representing the condition
|
105
|
+
*/
|
106
|
+
appendHaving(condition: ValueComponent): void;
|
107
|
+
/**
|
108
|
+
* Appends an INNER JOIN clause to the query.
|
109
|
+
* @param joinSourceRawText The table source text to join (e.g., "my_table", "schema.my_table")
|
110
|
+
* @param alias The alias for the joined table
|
111
|
+
* @param columns The columns to use for the join condition (e.g. ["user_id"])
|
112
|
+
*/
|
113
|
+
innerJoinRaw(joinSourceRawText: string, alias: string, columns: string[]): void;
|
114
|
+
/**
|
115
|
+
* Appends a LEFT JOIN clause to the query.
|
116
|
+
* @param joinSourceRawText The table source text to join
|
117
|
+
* @param alias The alias for the joined table
|
118
|
+
* @param columns The columns to use for the join condition
|
119
|
+
*/
|
120
|
+
leftJoinRaw(joinSourceRawText: string, alias: string, columns: string[]): void;
|
121
|
+
/**
|
122
|
+
* Appends a RIGHT JOIN clause to the query.
|
123
|
+
* @param joinSourceRawText The table source text to join
|
124
|
+
* @param alias The alias for the joined table
|
125
|
+
* @param columns The columns to use for the join condition
|
126
|
+
*/
|
127
|
+
rightJoinRaw(joinSourceRawText: string, alias: string, columns: string[]): void;
|
128
|
+
/**
|
129
|
+
* Appends an INNER JOIN clause to the query using a SourceExpression.
|
130
|
+
* @param sourceExpr The source expression to join
|
131
|
+
* @param columns The columns to use for the join condition
|
132
|
+
*/
|
133
|
+
innerJoin(sourceExpr: SourceExpression, columns: string[]): void;
|
134
|
+
/**
|
135
|
+
* Appends a LEFT JOIN clause to the query using a SourceExpression.
|
136
|
+
* @param sourceExpr The source expression to join
|
137
|
+
* @param columns The columns to use for the join condition
|
138
|
+
*/
|
139
|
+
leftJoin(sourceExpr: SourceExpression, columns: string[]): void;
|
140
|
+
/**
|
141
|
+
* Appends a RIGHT JOIN clause to the query using a SourceExpression.
|
142
|
+
* @param sourceExpr The source expression to join
|
143
|
+
* @param columns The columns to use for the join condition
|
144
|
+
*/
|
145
|
+
rightJoin(sourceExpr: SourceExpression, columns: string[]): void;
|
146
|
+
/**
|
147
|
+
* Internal helper to append a JOIN clause.
|
148
|
+
* Parses the table source, finds the corresponding columns in the existing query context,
|
149
|
+
* and builds the JOIN condition.
|
150
|
+
* @param joinType Type of join (e.g., 'inner join', 'left join')
|
151
|
+
* @param joinSourceRawText Raw text for the table/source to join (e.g., "my_table", "schema.another_table")
|
152
|
+
* @param alias Alias for the table/source being joined
|
153
|
+
* @param columns Array of column names to join on
|
154
|
+
*/
|
155
|
+
private joinSourceRaw;
|
156
|
+
private joinSource;
|
157
|
+
toSource(alias: string): SourceExpression;
|
158
|
+
appendWith(commonTable: CommonTable | CommonTable[]): void;
|
159
|
+
/**
|
160
|
+
* Appends a CommonTable (CTE) to the WITH clause from raw SQL text and alias.
|
161
|
+
* If alias is provided, it will be used as the CTE name.
|
162
|
+
*
|
163
|
+
* @param rawText Raw SQL string representing the CTE body (e.g. '(SELECT ...)')
|
164
|
+
* @param alias Optional alias for the CTE (e.g. 'cte_name')
|
165
|
+
*/
|
166
|
+
appendWithRaw(rawText: string, alias: string): void;
|
167
|
+
}
|
@@ -0,0 +1,292 @@
|
|
1
|
+
"use strict";
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
3
|
+
exports.SimpleSelectQuery = void 0;
|
4
|
+
const SqlComponent_1 = require("./SqlComponent");
|
5
|
+
const Clause_1 = require("./Clause");
|
6
|
+
const ValueComponent_1 = require("./ValueComponent");
|
7
|
+
const ValueParser_1 = require("../parsers/ValueParser");
|
8
|
+
const CTENormalizer_1 = require("../transformers/CTENormalizer");
|
9
|
+
const SelectableColumnCollector_1 = require("../transformers/SelectableColumnCollector");
|
10
|
+
const SourceParser_1 = require("../parsers/SourceParser");
|
11
|
+
const BinarySelectQuery_1 = require("./BinarySelectQuery");
|
12
|
+
const SelectQueryParser_1 = require("../parsers/SelectQueryParser");
|
13
|
+
/**
|
14
|
+
* Represents a simple SELECT query in SQL.
|
15
|
+
*/
|
16
|
+
class SimpleSelectQuery extends SqlComponent_1.SqlComponent {
|
17
|
+
constructor(withClause, selectClause, fromClause, whereClause, groupByClause, havingClause, orderByClause, windowFrameClause, rowLimitClause, forClause) {
|
18
|
+
super();
|
19
|
+
this.WithClause = null;
|
20
|
+
this.WithClause = withClause;
|
21
|
+
this.selectClause = selectClause;
|
22
|
+
this.fromClause = fromClause;
|
23
|
+
this.whereClause = whereClause;
|
24
|
+
this.groupByClause = groupByClause;
|
25
|
+
this.havingClause = havingClause;
|
26
|
+
this.orderByClause = orderByClause;
|
27
|
+
this.windowFrameClause = windowFrameClause;
|
28
|
+
this.rowLimitClause = rowLimitClause;
|
29
|
+
this.forClause = forClause;
|
30
|
+
}
|
31
|
+
/**
|
32
|
+
* Creates a new BinarySelectQuery with this query as the left side and the provided query as the right side,
|
33
|
+
* using UNION as the operator.
|
34
|
+
*
|
35
|
+
* @param rightQuery The right side of the UNION
|
36
|
+
* @returns A new BinarySelectQuery representing "this UNION rightQuery"
|
37
|
+
*/
|
38
|
+
toUnion(rightQuery) {
|
39
|
+
return this.toBinaryQuery('union', rightQuery);
|
40
|
+
}
|
41
|
+
/**
|
42
|
+
* Creates a new BinarySelectQuery with this query as the left side and the provided query as the right side,
|
43
|
+
* using UNION ALL as the operator.
|
44
|
+
*
|
45
|
+
* @param rightQuery The right side of the UNION ALL
|
46
|
+
* @returns A new BinarySelectQuery representing "this UNION ALL rightQuery"
|
47
|
+
*/
|
48
|
+
toUnionAll(rightQuery) {
|
49
|
+
return this.toBinaryQuery('union all', rightQuery);
|
50
|
+
}
|
51
|
+
/**
|
52
|
+
* Creates a new BinarySelectQuery with this query as the left side and the provided query as the right side,
|
53
|
+
* using INTERSECT as the operator.
|
54
|
+
*
|
55
|
+
* @param rightQuery The right side of the INTERSECT
|
56
|
+
* @returns A new BinarySelectQuery representing "this INTERSECT rightQuery"
|
57
|
+
*/
|
58
|
+
toIntersect(rightQuery) {
|
59
|
+
return this.toBinaryQuery('intersect', rightQuery);
|
60
|
+
}
|
61
|
+
/**
|
62
|
+
* Creates a new BinarySelectQuery with this query as the left side and the provided query as the right side,
|
63
|
+
* using INTERSECT ALL as the operator.
|
64
|
+
*
|
65
|
+
* @param rightQuery The right side of the INTERSECT ALL
|
66
|
+
* @returns A new BinarySelectQuery representing "this INTERSECT ALL rightQuery"
|
67
|
+
*/
|
68
|
+
toIntersectAll(rightQuery) {
|
69
|
+
return this.toBinaryQuery('intersect all', rightQuery);
|
70
|
+
}
|
71
|
+
/**
|
72
|
+
* Creates a new BinarySelectQuery with this query as the left side and the provided query as the right side,
|
73
|
+
* using EXCEPT as the operator.
|
74
|
+
*
|
75
|
+
* @param rightQuery The right side of the EXCEPT
|
76
|
+
* @returns A new BinarySelectQuery representing "this EXCEPT rightQuery"
|
77
|
+
*/
|
78
|
+
toExcept(rightQuery) {
|
79
|
+
return this.toBinaryQuery('except', rightQuery);
|
80
|
+
}
|
81
|
+
/**
|
82
|
+
* Creates a new BinarySelectQuery with this query as the left side and the provided query as the right side,
|
83
|
+
* using EXCEPT ALL as the operator.
|
84
|
+
*
|
85
|
+
* @param rightQuery The right side of the EXCEPT ALL
|
86
|
+
* @returns A new BinarySelectQuery representing "this EXCEPT ALL rightQuery"
|
87
|
+
*/
|
88
|
+
toExceptAll(rightQuery) {
|
89
|
+
return this.toBinaryQuery('except all', rightQuery);
|
90
|
+
}
|
91
|
+
/**
|
92
|
+
* Creates a new BinarySelectQuery with this query as the left side and the provided query as the right side,
|
93
|
+
* using the specified operator.
|
94
|
+
*
|
95
|
+
* @param operator SQL operator to use (e.g. 'union', 'union all', 'intersect', 'except')
|
96
|
+
* @param rightQuery The right side of the binary operation
|
97
|
+
* @returns A new BinarySelectQuery representing "this [operator] rightQuery"
|
98
|
+
*/
|
99
|
+
toBinaryQuery(operator, rightQuery) {
|
100
|
+
return new BinarySelectQuery_1.BinarySelectQuery(this, operator, rightQuery);
|
101
|
+
}
|
102
|
+
/**
|
103
|
+
* Appends a new condition to the query's WHERE clause using AND logic.
|
104
|
+
* The condition is provided as a raw SQL string which is parsed internally.
|
105
|
+
*
|
106
|
+
* @param rawCondition Raw SQL string representing the condition (e.g. "status = 'active'")
|
107
|
+
*/
|
108
|
+
appendWhereRaw(rawCondition) {
|
109
|
+
const parsedCondition = ValueParser_1.ValueParser.parse(rawCondition);
|
110
|
+
this.appendWhere(parsedCondition);
|
111
|
+
}
|
112
|
+
/**
|
113
|
+
* Appends a new condition to the query's WHERE clause using AND logic.
|
114
|
+
* The condition is provided as a ValueComponent object.
|
115
|
+
*
|
116
|
+
* @param condition ValueComponent representing the condition
|
117
|
+
*/
|
118
|
+
appendWhere(condition) {
|
119
|
+
if (!this.whereClause) {
|
120
|
+
this.whereClause = new Clause_1.WhereClause(condition);
|
121
|
+
}
|
122
|
+
else {
|
123
|
+
this.whereClause.condition = new ValueComponent_1.BinaryExpression(this.whereClause.condition, 'and', condition);
|
124
|
+
}
|
125
|
+
}
|
126
|
+
/**
|
127
|
+
* Appends a new condition to the query's HAVING clause using AND logic.
|
128
|
+
* The condition is provided as a raw SQL string which is parsed internally.
|
129
|
+
*
|
130
|
+
* @param rawCondition Raw SQL string representing the condition (e.g. "count(*) > 5")
|
131
|
+
*/
|
132
|
+
appendHavingRaw(rawCondition) {
|
133
|
+
const parsedCondition = ValueParser_1.ValueParser.parse(rawCondition);
|
134
|
+
this.appendHaving(parsedCondition);
|
135
|
+
}
|
136
|
+
/**
|
137
|
+
* Appends a new condition to the query's HAVING clause using AND logic.
|
138
|
+
* The condition is provided as a ValueComponent object.
|
139
|
+
*
|
140
|
+
* @param condition ValueComponent representing the condition
|
141
|
+
*/
|
142
|
+
appendHaving(condition) {
|
143
|
+
if (!this.havingClause) {
|
144
|
+
this.havingClause = new Clause_1.HavingClause(condition);
|
145
|
+
}
|
146
|
+
else {
|
147
|
+
this.havingClause.condition = new ValueComponent_1.BinaryExpression(this.havingClause.condition, 'and', condition);
|
148
|
+
}
|
149
|
+
}
|
150
|
+
/**
|
151
|
+
* Appends an INNER JOIN clause to the query.
|
152
|
+
* @param joinSourceRawText The table source text to join (e.g., "my_table", "schema.my_table")
|
153
|
+
* @param alias The alias for the joined table
|
154
|
+
* @param columns The columns to use for the join condition (e.g. ["user_id"])
|
155
|
+
*/
|
156
|
+
innerJoinRaw(joinSourceRawText, alias, columns) {
|
157
|
+
this.joinSourceRaw('inner join', joinSourceRawText, alias, columns);
|
158
|
+
}
|
159
|
+
/**
|
160
|
+
* Appends a LEFT JOIN clause to the query.
|
161
|
+
* @param joinSourceRawText The table source text to join
|
162
|
+
* @param alias The alias for the joined table
|
163
|
+
* @param columns The columns to use for the join condition
|
164
|
+
*/
|
165
|
+
leftJoinRaw(joinSourceRawText, alias, columns) {
|
166
|
+
this.joinSourceRaw('left join', joinSourceRawText, alias, columns);
|
167
|
+
}
|
168
|
+
/**
|
169
|
+
* Appends a RIGHT JOIN clause to the query.
|
170
|
+
* @param joinSourceRawText The table source text to join
|
171
|
+
* @param alias The alias for the joined table
|
172
|
+
* @param columns The columns to use for the join condition
|
173
|
+
*/
|
174
|
+
rightJoinRaw(joinSourceRawText, alias, columns) {
|
175
|
+
this.joinSourceRaw('right join', joinSourceRawText, alias, columns);
|
176
|
+
}
|
177
|
+
/**
|
178
|
+
* Appends an INNER JOIN clause to the query using a SourceExpression.
|
179
|
+
* @param sourceExpr The source expression to join
|
180
|
+
* @param columns The columns to use for the join condition
|
181
|
+
*/
|
182
|
+
innerJoin(sourceExpr, columns) {
|
183
|
+
this.joinSource('inner join', sourceExpr, columns);
|
184
|
+
}
|
185
|
+
/**
|
186
|
+
* Appends a LEFT JOIN clause to the query using a SourceExpression.
|
187
|
+
* @param sourceExpr The source expression to join
|
188
|
+
* @param columns The columns to use for the join condition
|
189
|
+
*/
|
190
|
+
leftJoin(sourceExpr, columns) {
|
191
|
+
this.joinSource('left join', sourceExpr, columns);
|
192
|
+
}
|
193
|
+
/**
|
194
|
+
* Appends a RIGHT JOIN clause to the query using a SourceExpression.
|
195
|
+
* @param sourceExpr The source expression to join
|
196
|
+
* @param columns The columns to use for the join condition
|
197
|
+
*/
|
198
|
+
rightJoin(sourceExpr, columns) {
|
199
|
+
this.joinSource('right join', sourceExpr, columns);
|
200
|
+
}
|
201
|
+
/**
|
202
|
+
* Internal helper to append a JOIN clause.
|
203
|
+
* Parses the table source, finds the corresponding columns in the existing query context,
|
204
|
+
* and builds the JOIN condition.
|
205
|
+
* @param joinType Type of join (e.g., 'inner join', 'left join')
|
206
|
+
* @param joinSourceRawText Raw text for the table/source to join (e.g., "my_table", "schema.another_table")
|
207
|
+
* @param alias Alias for the table/source being joined
|
208
|
+
* @param columns Array of column names to join on
|
209
|
+
*/
|
210
|
+
joinSourceRaw(joinType, joinSourceRawText, alias, columns) {
|
211
|
+
const tableSource = SourceParser_1.SourceParser.parse(joinSourceRawText);
|
212
|
+
const sourceExpr = new Clause_1.SourceExpression(tableSource, new Clause_1.SourceAliasExpression(alias, null));
|
213
|
+
this.joinSource(joinType, sourceExpr, columns);
|
214
|
+
}
|
215
|
+
joinSource(joinType, sourceExpr, columns) {
|
216
|
+
if (!this.fromClause) {
|
217
|
+
throw new Error('A FROM clause is required to add a JOIN condition.');
|
218
|
+
}
|
219
|
+
const collector = new SelectableColumnCollector_1.SelectableColumnCollector();
|
220
|
+
const valueSets = collector.collect(this);
|
221
|
+
let joinCondition = null;
|
222
|
+
let count = 0;
|
223
|
+
const sourceAlias = sourceExpr.getAliasName();
|
224
|
+
if (!sourceAlias) {
|
225
|
+
throw new Error('An alias is required for the source expression to add a JOIN condition.');
|
226
|
+
}
|
227
|
+
for (const valueSet of valueSets) {
|
228
|
+
if (columns.some(col => col == valueSet.name)) {
|
229
|
+
const expr = new ValueComponent_1.BinaryExpression(valueSet.value, '=', new ValueComponent_1.ColumnReference([sourceAlias], valueSet.name));
|
230
|
+
if (joinCondition) {
|
231
|
+
joinCondition = new ValueComponent_1.BinaryExpression(joinCondition, 'and', expr);
|
232
|
+
}
|
233
|
+
else {
|
234
|
+
joinCondition = expr;
|
235
|
+
}
|
236
|
+
count++;
|
237
|
+
}
|
238
|
+
}
|
239
|
+
if (!joinCondition || count !== columns.length) {
|
240
|
+
throw new Error(`Invalid JOIN condition. The specified columns were not found: ${columns.join(', ')}`);
|
241
|
+
}
|
242
|
+
const joinOnClause = new Clause_1.JoinOnClause(joinCondition);
|
243
|
+
const joinClause = new Clause_1.JoinClause(joinType, sourceExpr, joinOnClause, false);
|
244
|
+
if (this.fromClause) {
|
245
|
+
if (this.fromClause.joins) {
|
246
|
+
this.fromClause.joins.push(joinClause);
|
247
|
+
}
|
248
|
+
else {
|
249
|
+
this.fromClause.joins = [joinClause];
|
250
|
+
}
|
251
|
+
}
|
252
|
+
// const normalizer = new CTENormalizer();
|
253
|
+
// normalizer.normalize(this);
|
254
|
+
CTENormalizer_1.CTENormalizer.normalize(this);
|
255
|
+
}
|
256
|
+
// Returns a SourceExpression wrapping this query as a subquery source.
|
257
|
+
// Alias is required for correct SQL generation and join logic.
|
258
|
+
toSource(alias) {
|
259
|
+
if (!alias || alias.trim() === "") {
|
260
|
+
throw new Error("Alias is required for toSource(). Please specify a non-empty alias name.");
|
261
|
+
}
|
262
|
+
return new Clause_1.SourceExpression(new Clause_1.SubQuerySource(this), new Clause_1.SourceAliasExpression(alias, null));
|
263
|
+
}
|
264
|
+
appendWith(commonTable) {
|
265
|
+
// Always treat as array for simplicity
|
266
|
+
const tables = Array.isArray(commonTable) ? commonTable : [commonTable];
|
267
|
+
if (!this.WithClause) {
|
268
|
+
this.WithClause = new Clause_1.WithClause(false, tables);
|
269
|
+
}
|
270
|
+
else {
|
271
|
+
this.WithClause.tables.push(...tables);
|
272
|
+
}
|
273
|
+
// const normalizer = new CTENormalizer();
|
274
|
+
// normalizer.normalize(this);
|
275
|
+
CTENormalizer_1.CTENormalizer.normalize(this);
|
276
|
+
}
|
277
|
+
/**
|
278
|
+
* Appends a CommonTable (CTE) to the WITH clause from raw SQL text and alias.
|
279
|
+
* If alias is provided, it will be used as the CTE name.
|
280
|
+
*
|
281
|
+
* @param rawText Raw SQL string representing the CTE body (e.g. '(SELECT ...)')
|
282
|
+
* @param alias Optional alias for the CTE (e.g. 'cte_name')
|
283
|
+
*/
|
284
|
+
appendWithRaw(rawText, alias) {
|
285
|
+
const query = SelectQueryParser_1.SelectQueryParser.parse(rawText);
|
286
|
+
const commonTable = new Clause_1.CommonTable(query, alias, null);
|
287
|
+
this.appendWith(commonTable);
|
288
|
+
}
|
289
|
+
}
|
290
|
+
exports.SimpleSelectQuery = SimpleSelectQuery;
|
291
|
+
SimpleSelectQuery.kind = Symbol("SelectQuery");
|
292
|
+
//# sourceMappingURL=SimpleSelectQuery.js.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"SimpleSelectQuery.js","sourceRoot":"","sources":["../../src/models/SimpleSelectQuery.ts"],"names":[],"mappings":"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"}
|
@@ -0,0 +1,18 @@
|
|
1
|
+
export declare abstract class SqlComponent {
|
2
|
+
static kind: symbol;
|
3
|
+
getKind(): symbol;
|
4
|
+
accept<T>(visitor: SqlComponentVisitor<T>): T;
|
5
|
+
toSqlString(formatter: SqlComponentVisitor<string>): string;
|
6
|
+
comments: string[] | null;
|
7
|
+
}
|
8
|
+
export interface SqlComponentVisitor<T> {
|
9
|
+
visit(expr: SqlComponent): T;
|
10
|
+
}
|
11
|
+
export declare class SqlDialectConfiguration {
|
12
|
+
parameterSymbol: string;
|
13
|
+
identifierEscape: {
|
14
|
+
start: string;
|
15
|
+
end: string;
|
16
|
+
};
|
17
|
+
exportComment: boolean;
|
18
|
+
}
|
@@ -0,0 +1,27 @@
|
|
1
|
+
"use strict";
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
3
|
+
exports.SqlDialectConfiguration = exports.SqlComponent = void 0;
|
4
|
+
class SqlComponent {
|
5
|
+
constructor() {
|
6
|
+
this.comments = null;
|
7
|
+
}
|
8
|
+
getKind() {
|
9
|
+
return this.constructor.kind;
|
10
|
+
}
|
11
|
+
accept(visitor) {
|
12
|
+
return visitor.visit(this);
|
13
|
+
}
|
14
|
+
toSqlString(formatter) {
|
15
|
+
return this.accept(formatter);
|
16
|
+
}
|
17
|
+
}
|
18
|
+
exports.SqlComponent = SqlComponent;
|
19
|
+
class SqlDialectConfiguration {
|
20
|
+
constructor() {
|
21
|
+
this.parameterSymbol = ":";
|
22
|
+
this.identifierEscape = { start: '"', end: '"' };
|
23
|
+
this.exportComment = true;
|
24
|
+
}
|
25
|
+
}
|
26
|
+
exports.SqlDialectConfiguration = SqlDialectConfiguration;
|
27
|
+
//# sourceMappingURL=SqlComponent.js.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"SqlComponent.js","sourceRoot":"","sources":["../../src/models/SqlComponent.ts"],"names":[],"mappings":";;;AAAA,MAAsB,YAAY;IAAlC;QAgBI,aAAQ,GAAoB,IAAI,CAAC;IACrC,CAAC;IAbG,OAAO;QACH,OAAQ,IAAI,CAAC,WAAmC,CAAC,IAAI,CAAC;IAC1D,CAAC;IAED,MAAM,CAAI,OAA+B;QACrC,OAAO,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;IAC/B,CAAC;IAED,WAAW,CAAC,SAAsC;QAC9C,OAAO,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;IAClC,CAAC;CAGJ;AAjBD,oCAiBC;AAMD,MAAa,uBAAuB;IAApC;QACW,oBAAe,GAAW,GAAG,CAAC;QAC9B,qBAAgB,GAAG,EAAE,KAAK,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,CAAC;QAC5C,kBAAa,GAAY,IAAI,CAAC;IACzC,CAAC;CAAA;AAJD,0DAIC"}
|