rawsql-ts 0.6.0-beta → 0.7.1-beta
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 +141 -121
- package/dist/esm/index.js +1 -0
- package/dist/esm/index.js.map +1 -1
- package/dist/esm/models/Clause.js +111 -43
- package/dist/esm/models/Clause.js.map +1 -1
- package/dist/esm/models/CreateTableQuery.js +12 -22
- package/dist/esm/models/CreateTableQuery.js.map +1 -1
- package/dist/esm/models/KeywordTrie.js +2 -0
- package/dist/esm/models/KeywordTrie.js.map +1 -1
- package/dist/esm/models/SimpleSelectQuery.js +17 -15
- package/dist/esm/models/SimpleSelectQuery.js.map +1 -1
- package/dist/esm/models/SqlPrintToken.js +94 -0
- package/dist/esm/models/SqlPrintToken.js.map +1 -0
- package/dist/esm/models/ValueComponent.js +86 -17
- package/dist/esm/models/ValueComponent.js.map +1 -1
- package/dist/esm/parsers/FetchClauseParser.js +84 -0
- package/dist/esm/parsers/FetchClauseParser.js.map +1 -0
- package/dist/esm/parsers/FullNameParser.js +6 -1
- package/dist/esm/parsers/FullNameParser.js.map +1 -1
- package/dist/esm/parsers/IdentifierDecorator.js +13 -0
- package/dist/esm/parsers/IdentifierDecorator.js.map +1 -0
- package/dist/esm/parsers/InsertQueryParser.js +1 -1
- package/dist/esm/parsers/JoinClauseParser.js +13 -35
- package/dist/esm/parsers/JoinClauseParser.js.map +1 -1
- package/dist/esm/parsers/JoinOnClauseParser.js +17 -0
- package/dist/esm/parsers/JoinOnClauseParser.js.map +1 -0
- package/dist/esm/parsers/JoinUsingClauseParser.js +19 -0
- package/dist/esm/parsers/JoinUsingClauseParser.js.map +1 -0
- package/dist/esm/parsers/LimitClauseParser.js +1 -13
- package/dist/esm/parsers/LimitClauseParser.js.map +1 -1
- package/dist/esm/parsers/OffsetClauseParser.js +38 -0
- package/dist/esm/parsers/OffsetClauseParser.js.map +1 -0
- package/dist/esm/parsers/ParameterDecorator.js +36 -0
- package/dist/esm/parsers/ParameterDecorator.js.map +1 -0
- package/dist/esm/parsers/SelectClauseParser.js +25 -2
- package/dist/esm/parsers/SelectClauseParser.js.map +1 -1
- package/dist/esm/parsers/SelectQueryParser.js +40 -13
- package/dist/esm/parsers/SelectQueryParser.js.map +1 -1
- package/dist/esm/parsers/SourceParser.js +17 -13
- package/dist/esm/parsers/SourceParser.js.map +1 -1
- package/dist/esm/parsers/SqlPrintTokenParser.js +1058 -0
- package/dist/esm/parsers/SqlPrintTokenParser.js.map +1 -0
- package/dist/esm/parsers/SqlTokenizer.js +2 -0
- package/dist/esm/parsers/SqlTokenizer.js.map +1 -1
- package/dist/esm/parsers/WindowClauseParser.js +27 -15
- package/dist/esm/parsers/WindowClauseParser.js.map +1 -1
- package/dist/esm/tokenReaders/BaseTokenReader.js +3 -3
- package/dist/esm/tokenReaders/BaseTokenReader.js.map +1 -1
- package/dist/esm/tokenReaders/CommandTokenReader.js +8 -2
- package/dist/esm/tokenReaders/CommandTokenReader.js.map +1 -1
- package/dist/esm/tokenReaders/EscapedIdentifierTokenReader.js +54 -0
- package/dist/esm/tokenReaders/EscapedIdentifierTokenReader.js.map +1 -0
- package/dist/esm/tokenReaders/IdentifierTokenReader.js +0 -36
- package/dist/esm/tokenReaders/IdentifierTokenReader.js.map +1 -1
- package/dist/esm/tokenReaders/LiteralTokenReader.js +23 -6
- package/dist/esm/tokenReaders/LiteralTokenReader.js.map +1 -1
- package/dist/esm/transformers/CTECollector.js +9 -10
- package/dist/esm/transformers/CTECollector.js.map +1 -1
- package/dist/esm/transformers/CTEDisabler.js +10 -9
- package/dist/esm/transformers/CTEDisabler.js.map +1 -1
- package/dist/esm/transformers/CTEInjector.js +2 -2
- package/dist/esm/transformers/Formatter.js +19 -646
- package/dist/esm/transformers/Formatter.js.map +1 -1
- package/dist/esm/transformers/LinePrinter.js +81 -0
- package/dist/esm/transformers/LinePrinter.js.map +1 -0
- package/dist/esm/transformers/QueryBuilder.js +8 -18
- package/dist/esm/transformers/QueryBuilder.js.map +1 -1
- package/dist/esm/transformers/SelectableColumnCollector.js +26 -9
- package/dist/esm/transformers/SelectableColumnCollector.js.map +1 -1
- package/dist/esm/transformers/SqlFormatter.js +31 -0
- package/dist/esm/transformers/SqlFormatter.js.map +1 -0
- package/dist/esm/transformers/SqlOutputToken.js +9 -0
- package/dist/esm/transformers/SqlOutputToken.js.map +1 -0
- package/dist/esm/transformers/SqlPrinter.js +144 -0
- package/dist/esm/transformers/SqlPrinter.js.map +1 -0
- package/dist/esm/transformers/TableSourceCollector.js +32 -16
- package/dist/esm/transformers/TableSourceCollector.js.map +1 -1
- package/dist/esm/types/index.d.ts +1 -0
- package/dist/esm/types/models/Clause.d.ts +64 -13
- package/dist/esm/types/models/SimpleSelectQuery.d.ts +20 -5
- package/dist/esm/types/models/SqlPrintToken.d.ts +102 -0
- package/dist/esm/types/models/ValueComponent.d.ts +43 -9
- package/dist/esm/types/parsers/FetchClauseParser.d.ts +24 -0
- package/dist/esm/types/parsers/FullNameParser.d.ts +1 -0
- package/dist/esm/types/parsers/IdentifierDecorator.d.ts +9 -0
- package/dist/esm/types/parsers/JoinClauseParser.d.ts +0 -2
- package/dist/esm/types/parsers/JoinOnClauseParser.d.ts +8 -0
- package/dist/esm/types/parsers/JoinUsingClauseParser.d.ts +8 -0
- package/dist/esm/types/parsers/OffsetClauseParser.d.ts +9 -0
- package/dist/esm/types/parsers/ParameterDecorator.d.ts +20 -0
- package/dist/esm/types/parsers/SelectClauseParser.d.ts +19 -2
- package/dist/esm/types/parsers/SqlPrintTokenParser.d.ts +144 -0
- package/dist/esm/types/parsers/WindowClauseParser.d.ts +3 -3
- package/dist/esm/types/tokenReaders/EscapedIdentifierTokenReader.d.ts +15 -0
- package/dist/esm/types/tokenReaders/IdentifierTokenReader.d.ts +0 -4
- package/dist/esm/types/tokenReaders/LiteralTokenReader.d.ts +15 -2
- package/dist/esm/types/transformers/Formatter.d.ts +8 -105
- package/dist/esm/types/transformers/LinePrinter.d.ts +41 -0
- package/dist/esm/types/transformers/SelectableColumnCollector.d.ts +2 -0
- package/dist/esm/types/transformers/SqlFormatter.d.ts +40 -0
- package/dist/esm/types/transformers/SqlOutputToken.d.ts +6 -0
- package/dist/esm/types/transformers/SqlPrinter.d.ts +54 -0
- package/dist/esm/types/transformers/TableSourceCollector.d.ts +2 -0
- package/dist/esm/utils/stringUtils.js +17 -0
- package/dist/esm/utils/stringUtils.js.map +1 -1
- package/dist/index.d.ts +1 -0
- package/dist/index.js +1 -0
- package/dist/index.js.map +1 -1
- package/dist/models/Clause.d.ts +64 -13
- package/dist/models/Clause.js +115 -44
- package/dist/models/Clause.js.map +1 -1
- package/dist/models/CreateTableQuery.js +12 -22
- package/dist/models/CreateTableQuery.js.map +1 -1
- package/dist/models/KeywordTrie.js +2 -0
- package/dist/models/KeywordTrie.js.map +1 -1
- package/dist/models/SimpleSelectQuery.d.ts +20 -5
- package/dist/models/SimpleSelectQuery.js +17 -15
- package/dist/models/SimpleSelectQuery.js.map +1 -1
- package/dist/models/SqlPrintToken.d.ts +102 -0
- package/dist/models/SqlPrintToken.js +98 -0
- package/dist/models/SqlPrintToken.js.map +1 -0
- package/dist/models/ValueComponent.d.ts +43 -9
- package/dist/models/ValueComponent.js +88 -18
- package/dist/models/ValueComponent.js.map +1 -1
- package/dist/parsers/FetchClauseParser.d.ts +24 -0
- package/dist/parsers/FetchClauseParser.js +89 -0
- package/dist/parsers/FetchClauseParser.js.map +1 -0
- package/dist/parsers/FullNameParser.d.ts +1 -0
- package/dist/parsers/FullNameParser.js +6 -1
- package/dist/parsers/FullNameParser.js.map +1 -1
- package/dist/parsers/IdentifierDecorator.d.ts +9 -0
- package/dist/parsers/IdentifierDecorator.js +17 -0
- package/dist/parsers/IdentifierDecorator.js.map +1 -0
- package/dist/parsers/InsertQueryParser.js +1 -1
- package/dist/parsers/JoinClauseParser.d.ts +0 -2
- package/dist/parsers/JoinClauseParser.js +12 -34
- package/dist/parsers/JoinClauseParser.js.map +1 -1
- package/dist/parsers/JoinOnClauseParser.d.ts +8 -0
- package/dist/parsers/JoinOnClauseParser.js +21 -0
- package/dist/parsers/JoinOnClauseParser.js.map +1 -0
- package/dist/parsers/JoinUsingClauseParser.d.ts +8 -0
- package/dist/parsers/JoinUsingClauseParser.js +23 -0
- package/dist/parsers/JoinUsingClauseParser.js.map +1 -0
- package/dist/parsers/LimitClauseParser.js +1 -13
- package/dist/parsers/LimitClauseParser.js.map +1 -1
- package/dist/parsers/OffsetClauseParser.d.ts +9 -0
- package/dist/parsers/OffsetClauseParser.js +42 -0
- package/dist/parsers/OffsetClauseParser.js.map +1 -0
- package/dist/parsers/ParameterDecorator.d.ts +20 -0
- package/dist/parsers/ParameterDecorator.js +40 -0
- package/dist/parsers/ParameterDecorator.js.map +1 -0
- package/dist/parsers/SelectClauseParser.d.ts +19 -2
- package/dist/parsers/SelectClauseParser.js +28 -4
- package/dist/parsers/SelectClauseParser.js.map +1 -1
- package/dist/parsers/SelectQueryParser.js +40 -13
- package/dist/parsers/SelectQueryParser.js.map +1 -1
- package/dist/parsers/SourceParser.js +17 -13
- package/dist/parsers/SourceParser.js.map +1 -1
- package/dist/parsers/SqlPrintTokenParser.d.ts +144 -0
- package/dist/parsers/SqlPrintTokenParser.js +1062 -0
- package/dist/parsers/SqlPrintTokenParser.js.map +1 -0
- package/dist/parsers/SqlTokenizer.js +2 -0
- package/dist/parsers/SqlTokenizer.js.map +1 -1
- package/dist/parsers/WindowClauseParser.d.ts +3 -3
- package/dist/parsers/WindowClauseParser.js +26 -14
- package/dist/parsers/WindowClauseParser.js.map +1 -1
- package/dist/tokenReaders/BaseTokenReader.js +3 -3
- package/dist/tokenReaders/BaseTokenReader.js.map +1 -1
- package/dist/tokenReaders/CommandTokenReader.js +8 -2
- package/dist/tokenReaders/CommandTokenReader.js.map +1 -1
- package/dist/tokenReaders/EscapedIdentifierTokenReader.d.ts +15 -0
- package/dist/tokenReaders/EscapedIdentifierTokenReader.js +58 -0
- package/dist/tokenReaders/EscapedIdentifierTokenReader.js.map +1 -0
- package/dist/tokenReaders/IdentifierTokenReader.d.ts +0 -4
- package/dist/tokenReaders/IdentifierTokenReader.js +0 -36
- package/dist/tokenReaders/IdentifierTokenReader.js.map +1 -1
- package/dist/tokenReaders/LiteralTokenReader.d.ts +15 -2
- package/dist/tokenReaders/LiteralTokenReader.js +23 -6
- package/dist/tokenReaders/LiteralTokenReader.js.map +1 -1
- package/dist/transformers/CTECollector.js +9 -10
- package/dist/transformers/CTECollector.js.map +1 -1
- package/dist/transformers/CTEDisabler.js +9 -8
- package/dist/transformers/CTEDisabler.js.map +1 -1
- package/dist/transformers/CTEInjector.js +2 -2
- package/dist/transformers/Formatter.d.ts +8 -105
- package/dist/transformers/Formatter.js +20 -647
- package/dist/transformers/Formatter.js.map +1 -1
- package/dist/transformers/LinePrinter.d.ts +41 -0
- package/dist/transformers/LinePrinter.js +86 -0
- package/dist/transformers/LinePrinter.js.map +1 -0
- package/dist/transformers/QueryBuilder.js +8 -18
- package/dist/transformers/QueryBuilder.js.map +1 -1
- package/dist/transformers/SelectableColumnCollector.d.ts +2 -0
- package/dist/transformers/SelectableColumnCollector.js +25 -8
- package/dist/transformers/SelectableColumnCollector.js.map +1 -1
- package/dist/transformers/SqlFormatter.d.ts +40 -0
- package/dist/transformers/SqlFormatter.js +35 -0
- package/dist/transformers/SqlFormatter.js.map +1 -0
- package/dist/transformers/SqlOutputToken.d.ts +6 -0
- package/dist/transformers/SqlOutputToken.js +13 -0
- package/dist/transformers/SqlOutputToken.js.map +1 -0
- package/dist/transformers/SqlPrinter.d.ts +54 -0
- package/dist/transformers/SqlPrinter.js +148 -0
- package/dist/transformers/SqlPrinter.js.map +1 -0
- package/dist/transformers/TableSourceCollector.d.ts +2 -0
- package/dist/transformers/TableSourceCollector.js +30 -14
- package/dist/transformers/TableSourceCollector.js.map +1 -1
- package/dist/utils/stringUtils.js +17 -0
- package/dist/utils/stringUtils.js.map +1 -1
- package/package.json +2 -1
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import { CommonTable, ForClause, FromClause, GroupByClause, HavingClause, JoinClause, JoinOnClause, JoinUsingClause, LimitClause, OrderByClause, OrderByItem, ParenSource, SelectClause, SelectItem, SourceExpression, SubQuerySource, TableSource, WhereClause, WindowFrameClause, WithClause } from "../models/Clause";
|
|
1
|
+
import { CommonTable, FetchClause, ForClause, FromClause, GroupByClause, HavingClause, JoinClause, JoinOnClause, JoinUsingClause, LimitClause, OffsetClause, OrderByClause, OrderByItem, ParenSource, SelectClause, SelectItem, SourceExpression, SubQuerySource, TableSource, WhereClause, WindowFrameClause, WithClause } from "../models/Clause";
|
|
2
2
|
import { BinarySelectQuery, SimpleSelectQuery, ValuesQuery } from "../models/SelectQuery";
|
|
3
|
-
import { ArrayExpression, BetweenExpression, BinaryExpression, CaseExpression, CaseKeyValuePair, CastExpression, FunctionCall, InlineQuery, ParenExpression, SwitchCaseArgument, TupleExpression, UnaryExpression } from "../models/ValueComponent";
|
|
3
|
+
import { ArrayExpression, BetweenExpression, BinaryExpression, CaseExpression, CaseKeyValuePair, CastExpression, FunctionCall, InlineQuery, ParenExpression, SwitchCaseArgument, TupleExpression, UnaryExpression, RawString } from "../models/ValueComponent";
|
|
4
4
|
import { CTECollector } from "./CTECollector";
|
|
5
5
|
/**
|
|
6
6
|
* A visitor that collects all table source names from a SQL query structure.
|
|
@@ -52,6 +52,8 @@ export class TableSourceCollector {
|
|
|
52
52
|
this.handlers.set(OrderByClause.kind, (expr) => this.visitOrderByClause(expr));
|
|
53
53
|
this.handlers.set(WindowFrameClause.kind, (expr) => this.visitWindowFrameClause(expr));
|
|
54
54
|
this.handlers.set(LimitClause.kind, (expr) => this.visitLimitClause(expr));
|
|
55
|
+
this.handlers.set(OffsetClause.kind, (expr) => this.visitOffsetClause(expr));
|
|
56
|
+
this.handlers.set(FetchClause.kind, (expr) => this.visitFetchClause(expr));
|
|
55
57
|
this.handlers.set(ForClause.kind, (expr) => this.visitForClause(expr));
|
|
56
58
|
this.handlers.set(OrderByItem.kind, (expr) => this.visitOrderByItem(expr));
|
|
57
59
|
this.handlers.set(SelectClause.kind, (expr) => this.visitSelectClause(expr));
|
|
@@ -89,11 +91,13 @@ export class TableSourceCollector {
|
|
|
89
91
|
* Gets a unique identifier for a table source
|
|
90
92
|
*/
|
|
91
93
|
getTableIdentifier(source) {
|
|
92
|
-
|
|
93
|
-
if (source.namespaces && source.namespaces.length > 0) {
|
|
94
|
-
|
|
94
|
+
// Use QualifiedName for identifier (dot-joined string)
|
|
95
|
+
if (source.qualifiedName.namespaces && source.qualifiedName.namespaces.length > 0) {
|
|
96
|
+
return source.qualifiedName.namespaces.map(ns => ns.name).join('.') + '.' + (source.qualifiedName.name instanceof RawString ? source.qualifiedName.name.value : source.qualifiedName.name.name);
|
|
97
|
+
}
|
|
98
|
+
else {
|
|
99
|
+
return source.qualifiedName.name instanceof RawString ? source.qualifiedName.name.value : source.qualifiedName.name.name;
|
|
95
100
|
}
|
|
96
|
-
return identifier;
|
|
97
101
|
}
|
|
98
102
|
collect(query) {
|
|
99
103
|
// Visit the SQL component to collect table sources
|
|
@@ -153,6 +157,7 @@ export class TableSourceCollector {
|
|
|
153
157
|
const commonTables = cteCollector.getCommonTables();
|
|
154
158
|
// Add CTE names to the set
|
|
155
159
|
for (const cte of commonTables) {
|
|
160
|
+
// aliasExpression.table is TableSource, so use .table getter (IdentifierString)
|
|
156
161
|
this.cteNames.add(cte.aliasExpression.table.name);
|
|
157
162
|
}
|
|
158
163
|
}
|
|
@@ -163,8 +168,8 @@ export class TableSourceCollector {
|
|
|
163
168
|
}
|
|
164
169
|
// If in full scan mode, visit all other clauses too
|
|
165
170
|
if (!this.selectableOnly) {
|
|
166
|
-
if (query.
|
|
167
|
-
query.
|
|
171
|
+
if (query.withClause) {
|
|
172
|
+
query.withClause.accept(this);
|
|
168
173
|
}
|
|
169
174
|
if (query.whereClause) {
|
|
170
175
|
query.whereClause.accept(this);
|
|
@@ -178,11 +183,19 @@ export class TableSourceCollector {
|
|
|
178
183
|
if (query.orderByClause) {
|
|
179
184
|
query.orderByClause.accept(this);
|
|
180
185
|
}
|
|
181
|
-
if (query.
|
|
182
|
-
query.
|
|
186
|
+
if (query.windowClause) {
|
|
187
|
+
for (const win of query.windowClause.windows) {
|
|
188
|
+
win.accept(this);
|
|
189
|
+
}
|
|
190
|
+
}
|
|
191
|
+
if (query.limitClause) {
|
|
192
|
+
query.limitClause.accept(this);
|
|
183
193
|
}
|
|
184
|
-
if (query.
|
|
185
|
-
query.
|
|
194
|
+
if (query.offsetClause) {
|
|
195
|
+
query.offsetClause.accept(this);
|
|
196
|
+
}
|
|
197
|
+
if (query.fetchClause) {
|
|
198
|
+
query.fetchClause.accept(this);
|
|
186
199
|
}
|
|
187
200
|
if (query.forClause) {
|
|
188
201
|
query.forClause.accept(this);
|
|
@@ -304,10 +317,13 @@ export class TableSourceCollector {
|
|
|
304
317
|
clause.expression.accept(this);
|
|
305
318
|
}
|
|
306
319
|
visitLimitClause(clause) {
|
|
307
|
-
clause.
|
|
308
|
-
|
|
309
|
-
|
|
310
|
-
|
|
320
|
+
clause.value.accept(this);
|
|
321
|
+
}
|
|
322
|
+
visitOffsetClause(clause) {
|
|
323
|
+
clause.value.accept(this);
|
|
324
|
+
}
|
|
325
|
+
visitFetchClause(clause) {
|
|
326
|
+
clause.expression.accept(this);
|
|
311
327
|
}
|
|
312
328
|
visitForClause(clause) {
|
|
313
329
|
// FOR clause doesn't contain table sources
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"TableSourceCollector.js","sourceRoot":"","sources":["../../../src/transformers/TableSourceCollector.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"TableSourceCollector.js","sourceRoot":"","sources":["../../../src/transformers/TableSourceCollector.ts"],"names":[],"mappings":"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"}
|
|
@@ -7,6 +7,7 @@ export * from './models/ValuesQuery';
|
|
|
7
7
|
export * from './transformers/CTECollector';
|
|
8
8
|
export * from './transformers/CTENormalizer';
|
|
9
9
|
export * from './transformers/Formatter';
|
|
10
|
+
export * from './transformers/SqlFormatter';
|
|
10
11
|
export * from './transformers/QueryBuilder';
|
|
11
12
|
export * from './transformers/SelectValueCollector';
|
|
12
13
|
export * from './transformers/SelectableColumnCollector';
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { SelectQuery } from "./SelectQuery";
|
|
2
2
|
import { SqlComponent } from "./SqlComponent";
|
|
3
|
-
import { IdentifierString, RawString, ValueComponent, WindowFrameExpression } from "./ValueComponent";
|
|
3
|
+
import { IdentifierString, RawString, ValueComponent, WindowFrameExpression, QualifiedName } from "./ValueComponent";
|
|
4
4
|
export declare class SelectItem extends SqlComponent {
|
|
5
5
|
static kind: symbol;
|
|
6
6
|
value: ValueComponent;
|
|
@@ -39,6 +39,15 @@ export declare class WindowFrameClause extends SqlComponent {
|
|
|
39
39
|
expression: WindowFrameExpression;
|
|
40
40
|
constructor(name: string, expression: WindowFrameExpression);
|
|
41
41
|
}
|
|
42
|
+
/**
|
|
43
|
+
* Represents a collection of window definitions (WINDOW clause in SQL).
|
|
44
|
+
* @param windows Array of WindowFrameClause
|
|
45
|
+
*/
|
|
46
|
+
export declare class WindowsClause extends SqlComponent {
|
|
47
|
+
static kind: symbol;
|
|
48
|
+
windows: WindowFrameClause[];
|
|
49
|
+
constructor(windows: WindowFrameClause[]);
|
|
50
|
+
}
|
|
42
51
|
export declare enum SortDirection {
|
|
43
52
|
Ascending = "asc",
|
|
44
53
|
Descending = "desc"
|
|
@@ -73,17 +82,38 @@ export declare class HavingClause extends SqlComponent {
|
|
|
73
82
|
export type SourceComponent = TableSource | FunctionSource | SubQuerySource | ParenSource;
|
|
74
83
|
export declare class TableSource extends SqlComponent {
|
|
75
84
|
static kind: symbol;
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
85
|
+
qualifiedName: QualifiedName;
|
|
86
|
+
/**
|
|
87
|
+
* For backward compatibility: returns the namespaces as IdentifierString[] | null (readonly)
|
|
88
|
+
*/
|
|
89
|
+
get namespaces(): IdentifierString[] | null;
|
|
90
|
+
/**
|
|
91
|
+
* For backward compatibility: returns the table name as IdentifierString (readonly)
|
|
92
|
+
*/
|
|
93
|
+
get table(): IdentifierString;
|
|
94
|
+
/**
|
|
95
|
+
* For backward compatibility: returns the table name as IdentifierString (readonly)
|
|
96
|
+
*/
|
|
97
|
+
get identifier(): IdentifierString;
|
|
79
98
|
constructor(namespaces: string[] | IdentifierString[] | null, table: string | IdentifierString);
|
|
80
99
|
getSourceName(): string;
|
|
81
100
|
}
|
|
82
101
|
export declare class FunctionSource extends SqlComponent {
|
|
83
102
|
static kind: symbol;
|
|
84
|
-
|
|
103
|
+
qualifiedName: QualifiedName;
|
|
85
104
|
argument: ValueComponent | null;
|
|
86
|
-
constructor(
|
|
105
|
+
constructor(name: string | IdentifierString | {
|
|
106
|
+
namespaces: string[] | IdentifierString[] | null;
|
|
107
|
+
name: string | RawString | IdentifierString;
|
|
108
|
+
}, argument: ValueComponent | null);
|
|
109
|
+
/**
|
|
110
|
+
* For backward compatibility: returns the namespaces as IdentifierString[] | null (readonly)
|
|
111
|
+
*/
|
|
112
|
+
get namespaces(): IdentifierString[] | null;
|
|
113
|
+
/**
|
|
114
|
+
* For backward compatibility: returns the function name as RawString | IdentifierString (readonly)
|
|
115
|
+
*/
|
|
116
|
+
get name(): RawString | IdentifierString;
|
|
87
117
|
}
|
|
88
118
|
export declare class ParenSource extends SqlComponent {
|
|
89
119
|
static kind: symbol;
|
|
@@ -149,9 +179,8 @@ export declare class WithClause extends SqlComponent {
|
|
|
149
179
|
}
|
|
150
180
|
export declare class LimitClause extends SqlComponent {
|
|
151
181
|
static kind: symbol;
|
|
152
|
-
|
|
153
|
-
|
|
154
|
-
constructor(limit: ValueComponent, offset: ValueComponent | null);
|
|
182
|
+
value: ValueComponent;
|
|
183
|
+
constructor(limit: ValueComponent);
|
|
155
184
|
}
|
|
156
185
|
export declare enum FetchType {
|
|
157
186
|
Next = "next",
|
|
@@ -162,7 +191,17 @@ export declare enum FetchUnit {
|
|
|
162
191
|
Percent = "percent",
|
|
163
192
|
PercentWithTies = "percent with ties"
|
|
164
193
|
}
|
|
165
|
-
export declare class
|
|
194
|
+
export declare class OffsetClause extends SqlComponent {
|
|
195
|
+
static kind: symbol;
|
|
196
|
+
value: ValueComponent;
|
|
197
|
+
constructor(value: ValueComponent);
|
|
198
|
+
}
|
|
199
|
+
export declare class FetchClause extends SqlComponent {
|
|
200
|
+
static kind: symbol;
|
|
201
|
+
expression: FetchExpression;
|
|
202
|
+
constructor(expression: FetchExpression);
|
|
203
|
+
}
|
|
204
|
+
export declare class FetchExpression extends SqlComponent {
|
|
166
205
|
static kind: symbol;
|
|
167
206
|
type: FetchType;
|
|
168
207
|
count: ValueComponent;
|
|
@@ -210,15 +249,27 @@ export declare class SetClause extends SqlComponent {
|
|
|
210
249
|
* Represents a single SET clause item in an UPDATE statement.
|
|
211
250
|
* Now supports namespaces for fully qualified column names (e.g. schema.table.column).
|
|
212
251
|
*/
|
|
252
|
+
/**
|
|
253
|
+
* Represents a single SET clause item in an UPDATE statement.
|
|
254
|
+
* Now supports namespaces for fully qualified column names (e.g. schema.table.column).
|
|
255
|
+
* Refactored to use QualifiedName for unified name/namespace handling.
|
|
256
|
+
*/
|
|
213
257
|
export declare class SetClauseItem extends SqlComponent {
|
|
214
258
|
static kind: symbol;
|
|
215
|
-
|
|
216
|
-
column: IdentifierString;
|
|
259
|
+
qualifiedName: QualifiedName;
|
|
217
260
|
value: ValueComponent;
|
|
218
261
|
constructor(column: string | IdentifierString | {
|
|
219
262
|
namespaces: string[] | IdentifierString[] | null;
|
|
220
263
|
column: string | IdentifierString;
|
|
221
264
|
}, value: ValueComponent);
|
|
265
|
+
/**
|
|
266
|
+
* For backward compatibility: returns the namespaces as IdentifierString[] | null (readonly)
|
|
267
|
+
*/
|
|
268
|
+
get namespaces(): IdentifierString[] | null;
|
|
269
|
+
/**
|
|
270
|
+
* For backward compatibility: returns the column name as IdentifierString (readonly)
|
|
271
|
+
*/
|
|
272
|
+
get column(): IdentifierString;
|
|
222
273
|
/**
|
|
223
274
|
* Returns the fully qualified column name as a string.
|
|
224
275
|
*/
|
|
@@ -237,6 +288,6 @@ export declare class UpdateClause extends SqlComponent {
|
|
|
237
288
|
*/
|
|
238
289
|
export declare class InsertClause extends SqlComponent {
|
|
239
290
|
source: SourceExpression;
|
|
240
|
-
columns:
|
|
291
|
+
columns: IdentifierString[];
|
|
241
292
|
constructor(source: SourceExpression, columns: string[]);
|
|
242
293
|
}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { SqlComponent } from "./SqlComponent";
|
|
2
|
-
import { ForClause, FromClause, GroupByClause, HavingClause, LimitClause, OrderByClause, SelectClause, SourceExpression, WhereClause,
|
|
2
|
+
import { ForClause, FromClause, GroupByClause, HavingClause, LimitClause, OrderByClause, SelectClause, SourceExpression, WhereClause, WindowsClause as WindowClause, WithClause, CommonTable, OffsetClause, FetchClause } from "./Clause";
|
|
3
3
|
import { ValueComponent } from "./ValueComponent";
|
|
4
4
|
import { BinarySelectQuery } from "./BinarySelectQuery";
|
|
5
5
|
import type { SelectQuery } from "./SelectQuery";
|
|
@@ -9,17 +9,32 @@ import { TableColumnResolver } from "../transformers/TableColumnResolver";
|
|
|
9
9
|
*/
|
|
10
10
|
export declare class SimpleSelectQuery extends SqlComponent implements SelectQuery {
|
|
11
11
|
static kind: symbol;
|
|
12
|
-
|
|
12
|
+
withClause: WithClause | null;
|
|
13
13
|
selectClause: SelectClause;
|
|
14
14
|
fromClause: FromClause | null;
|
|
15
15
|
whereClause: WhereClause | null;
|
|
16
16
|
groupByClause: GroupByClause | null;
|
|
17
17
|
havingClause: HavingClause | null;
|
|
18
18
|
orderByClause: OrderByClause | null;
|
|
19
|
-
|
|
20
|
-
|
|
19
|
+
windowClause: WindowClause | null;
|
|
20
|
+
limitClause: LimitClause | null;
|
|
21
|
+
offsetClause: OffsetClause | null;
|
|
22
|
+
fetchClause: FetchClause | null;
|
|
21
23
|
forClause: ForClause | null;
|
|
22
|
-
constructor(
|
|
24
|
+
constructor(params: {
|
|
25
|
+
selectClause: SelectClause;
|
|
26
|
+
fromClause?: FromClause | null;
|
|
27
|
+
whereClause?: WhereClause | null;
|
|
28
|
+
groupByClause?: GroupByClause | null;
|
|
29
|
+
havingClause?: HavingClause | null;
|
|
30
|
+
orderByClause?: OrderByClause | null;
|
|
31
|
+
windowClause?: WindowClause | null;
|
|
32
|
+
limitClause?: LimitClause | null;
|
|
33
|
+
offsetClause?: OffsetClause | null;
|
|
34
|
+
fetchClause?: FetchClause | null;
|
|
35
|
+
forClause?: ForClause | null;
|
|
36
|
+
withClause?: WithClause | null;
|
|
37
|
+
});
|
|
23
38
|
/**
|
|
24
39
|
* Creates a new BinarySelectQuery with this query as the left side and the provided query as the right side,
|
|
25
40
|
* using UNION as the operator.
|
|
@@ -0,0 +1,102 @@
|
|
|
1
|
+
export declare enum SqlPrintTokenType {
|
|
2
|
+
container = 0,
|
|
3
|
+
keyword = 1,
|
|
4
|
+
value = 2,// Represents non-keyword elements such as table names
|
|
5
|
+
comma = 3,// Represents comma ','
|
|
6
|
+
parenthesis = 4,// Represents parentheses: ( ) { } [ ]
|
|
7
|
+
operator = 5,// Represents operators such as +, -, *, /
|
|
8
|
+
comment = 6,
|
|
9
|
+
parameter = 7,
|
|
10
|
+
dot = 8,
|
|
11
|
+
type = 9,
|
|
12
|
+
space = 10,
|
|
13
|
+
argumentSplitter = 11
|
|
14
|
+
}
|
|
15
|
+
export declare enum SqlPrintTokenContainerType {
|
|
16
|
+
ColumnReference = "ColumnReference",
|
|
17
|
+
LiteralValue = "LiteralValue",
|
|
18
|
+
IdentifierString = "IdentifierString",
|
|
19
|
+
InlineQuery = "InlineQuery",
|
|
20
|
+
StringSpecifierExpression = "StringSpecifierExpression",
|
|
21
|
+
None = "",
|
|
22
|
+
ValueList = "ValueList",
|
|
23
|
+
OrderByItem = "OrderByItem",
|
|
24
|
+
FunctionCall = "FunctionCall",
|
|
25
|
+
UnaryExpression = "UnaryExpression",
|
|
26
|
+
BinaryExpression = "BinaryExpression",
|
|
27
|
+
SwitchCaseArgument = "SwitchCaseArgument",
|
|
28
|
+
ElseClause = "ElseClause",
|
|
29
|
+
CaseKeyValuePair = "CaseKeyValuePair",
|
|
30
|
+
ParenExpression = "ParenExpression",
|
|
31
|
+
CastExpression = "CastExpression",
|
|
32
|
+
CaseExpression = "CaseExpression",
|
|
33
|
+
ArrayExpression = "ArrayExpression",
|
|
34
|
+
BetweenExpression = "BetweenExpression",
|
|
35
|
+
TypeValue = "TypeValue",
|
|
36
|
+
TupleExpression = "TupleExpression",
|
|
37
|
+
WindowFrameExpression = "WindowFrameExpression",
|
|
38
|
+
SelectItem = "SelectItem",
|
|
39
|
+
SelectClause = "SelectClause",
|
|
40
|
+
DistinctOn = "DistinctOn",
|
|
41
|
+
SourceExpression = "SourceExpression",
|
|
42
|
+
FromClause = "FromClause",
|
|
43
|
+
JoinClause = "JoinClause",
|
|
44
|
+
JoinOnClause = "JoinOnClause",
|
|
45
|
+
JoinUsingClause = "JoinUsingClause",
|
|
46
|
+
FunctionSource = "FunctionSource",
|
|
47
|
+
SourceAliasExpression = "SourceAliasExpression",
|
|
48
|
+
RawString = "RawString",
|
|
49
|
+
QualifiedName = "QualifiedName",
|
|
50
|
+
WhereClause = "WhereClause",
|
|
51
|
+
SimpleSelectQuery = "SimpleSelectQuery",
|
|
52
|
+
OrderByClause = "OrderByClause",
|
|
53
|
+
GroupByClause = "GroupByClause",
|
|
54
|
+
HavingClause = "HavingClause",
|
|
55
|
+
SubQuerySource = "SubQuerySource",
|
|
56
|
+
PartitionByClause = "PartitionByClause",
|
|
57
|
+
WindowFrameClause = "WindowFrameClause",
|
|
58
|
+
LimitClause = "LimitClause",
|
|
59
|
+
OffsetClause = "OffsetClause",
|
|
60
|
+
ForClause = "ForClause",
|
|
61
|
+
WindowClause = "WindowClause",
|
|
62
|
+
BinarySelectQueryOperator = "BinarySelectQueryOperator",
|
|
63
|
+
Values = "Values",
|
|
64
|
+
ValuesQuery = "ValuesQuery",
|
|
65
|
+
WithClause = "WithClause",
|
|
66
|
+
CommonTable = "CommonTable",
|
|
67
|
+
WindowFrameSpec = "WindowFrameSpec",
|
|
68
|
+
WindowFrameBoundStatic = "WindowFrameBoundStatic",
|
|
69
|
+
WindowFrameBoundaryValue = "WindowFrameBoundaryValue",
|
|
70
|
+
FetchClause = "FetchClause",
|
|
71
|
+
FetchExpression = "FetchExpression",
|
|
72
|
+
InsertQuery = "InsertQuery",
|
|
73
|
+
UpdateQuery = "UpdateQuery",
|
|
74
|
+
UpdateClause = "UpdateClause",
|
|
75
|
+
ReturningClause = "ReturningClause",
|
|
76
|
+
SetClauseItem = "SetClauseItem",
|
|
77
|
+
CreateTableQuery = "CreateTableQuery"
|
|
78
|
+
}
|
|
79
|
+
export declare class SqlPrintToken {
|
|
80
|
+
/**
|
|
81
|
+
* The type of this token, representing the general category (e.g. keyword, value, operator).
|
|
82
|
+
*/
|
|
83
|
+
type: SqlPrintTokenType;
|
|
84
|
+
/**
|
|
85
|
+
* The actual text content of this token, following SQL syntax.
|
|
86
|
+
*/
|
|
87
|
+
text: string;
|
|
88
|
+
/**
|
|
89
|
+
* The type of the container this token belongs to. Used for clauses, functions, or other groupings.
|
|
90
|
+
*/
|
|
91
|
+
containerType: SqlPrintTokenContainerType;
|
|
92
|
+
/**
|
|
93
|
+
* Optional. Keywords that are part of this token, like DISTINCT in a SELECT clause.
|
|
94
|
+
* These should typically be processed before innerTokens.
|
|
95
|
+
*/
|
|
96
|
+
keywordTokens?: SqlPrintToken[];
|
|
97
|
+
/**
|
|
98
|
+
* Child tokens that belong to this container.
|
|
99
|
+
*/
|
|
100
|
+
innerTokens: SqlPrintToken[];
|
|
101
|
+
constructor(type: SqlPrintTokenType, text?: string, containerType?: SqlPrintTokenContainerType);
|
|
102
|
+
}
|
|
@@ -13,20 +13,34 @@ export declare class ValueList extends SqlComponent {
|
|
|
13
13
|
constructor(values: ValueComponent[]);
|
|
14
14
|
}
|
|
15
15
|
export declare class ColumnReference extends SqlComponent {
|
|
16
|
+
/**
|
|
17
|
+
* For backward compatibility: returns the namespaces as IdentifierString[] | null (readonly)
|
|
18
|
+
*/
|
|
19
|
+
get namespaces(): IdentifierString[] | null;
|
|
20
|
+
/**
|
|
21
|
+
* For backward compatibility: returns the column name as IdentifierString (readonly)
|
|
22
|
+
*/
|
|
23
|
+
get column(): IdentifierString;
|
|
16
24
|
static kind: symbol;
|
|
17
|
-
|
|
18
|
-
column: IdentifierString;
|
|
25
|
+
qualifiedName: QualifiedName;
|
|
19
26
|
constructor(namespaces: string | string[] | IdentifierString[] | null, column: string | IdentifierString);
|
|
20
27
|
toString(): string;
|
|
21
28
|
getNamespace(): string;
|
|
22
29
|
}
|
|
23
30
|
export declare class FunctionCall extends SqlComponent {
|
|
24
31
|
static kind: symbol;
|
|
25
|
-
|
|
26
|
-
name: RawString;
|
|
32
|
+
qualifiedName: QualifiedName;
|
|
27
33
|
argument: ValueComponent | null;
|
|
28
34
|
over: OverExpression | null;
|
|
29
|
-
constructor(namespaces: string[] | IdentifierString[] | null, name: string | RawString, argument: ValueComponent | null, over: OverExpression | null);
|
|
35
|
+
constructor(namespaces: string[] | IdentifierString[] | null, name: string | RawString | IdentifierString, argument: ValueComponent | null, over: OverExpression | null);
|
|
36
|
+
/**
|
|
37
|
+
* For backward compatibility: returns the namespaces as IdentifierString[] | null (readonly)
|
|
38
|
+
*/
|
|
39
|
+
get namespaces(): IdentifierString[] | null;
|
|
40
|
+
/**
|
|
41
|
+
* For backward compatibility: returns the function name as RawString | IdentifierString (readonly)
|
|
42
|
+
*/
|
|
43
|
+
get name(): RawString | IdentifierString;
|
|
30
44
|
}
|
|
31
45
|
export type OverExpression = WindowFrameExpression | IdentifierString;
|
|
32
46
|
export declare enum WindowFrameType {
|
|
@@ -149,15 +163,22 @@ export declare class BetweenExpression extends SqlComponent {
|
|
|
149
163
|
export declare class StringSpecifierExpression extends SqlComponent {
|
|
150
164
|
static kind: symbol;
|
|
151
165
|
specifier: RawString;
|
|
152
|
-
value:
|
|
166
|
+
value: LiteralValue;
|
|
153
167
|
constructor(specifier: string, value: string);
|
|
154
168
|
}
|
|
155
169
|
export declare class TypeValue extends SqlComponent {
|
|
156
170
|
static kind: symbol;
|
|
157
|
-
|
|
158
|
-
name: RawString;
|
|
171
|
+
qualifiedName: QualifiedName;
|
|
159
172
|
argument: ValueComponent | null;
|
|
160
|
-
constructor(namespaces: string[] | IdentifierString[] | null, name: string | RawString, argument?: ValueComponent | null);
|
|
173
|
+
constructor(namespaces: string[] | IdentifierString[] | null, name: string | RawString | IdentifierString, argument?: ValueComponent | null);
|
|
174
|
+
/**
|
|
175
|
+
* For backward compatibility: returns the namespaces as IdentifierString[] | null (readonly)
|
|
176
|
+
*/
|
|
177
|
+
get namespaces(): IdentifierString[] | null;
|
|
178
|
+
/**
|
|
179
|
+
* For backward compatibility: returns the type name as RawString | IdentifierString (readonly)
|
|
180
|
+
*/
|
|
181
|
+
get name(): RawString | IdentifierString;
|
|
161
182
|
getTypeName(): string;
|
|
162
183
|
}
|
|
163
184
|
export declare class TupleExpression extends SqlComponent {
|
|
@@ -165,3 +186,16 @@ export declare class TupleExpression extends SqlComponent {
|
|
|
165
186
|
values: ValueComponent[];
|
|
166
187
|
constructor(values: ValueComponent[]);
|
|
167
188
|
}
|
|
189
|
+
/**
|
|
190
|
+
* Represents a qualified name with optional namespaces (e.g. schema.table, db.schema.function)
|
|
191
|
+
*/
|
|
192
|
+
export declare class QualifiedName extends SqlComponent {
|
|
193
|
+
static kind: symbol;
|
|
194
|
+
/** List of namespaces (e.g. schema, database) */
|
|
195
|
+
namespaces: IdentifierString[] | null;
|
|
196
|
+
/** The actual name (e.g. table, function, type, column) */
|
|
197
|
+
name: RawString | IdentifierString;
|
|
198
|
+
constructor(namespaces: string[] | IdentifierString[] | null, name: string | RawString | IdentifierString);
|
|
199
|
+
/** Returns the full qualified name as a string (dot-separated) */
|
|
200
|
+
toString(): string;
|
|
201
|
+
}
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
import { FetchClause, FetchExpression } from "../models/Clause";
|
|
2
|
+
import { Lexeme } from "../models/Lexeme";
|
|
3
|
+
export declare class FetchClauseParser {
|
|
4
|
+
/**
|
|
5
|
+
* Parses a FETCH clause from a lexeme array starting at the given index.
|
|
6
|
+
* Supports syntax like: FETCH [FIRST|NEXT] <count> ROWS ONLY
|
|
7
|
+
* @param lexemes The array of lexemes
|
|
8
|
+
* @param index The starting index
|
|
9
|
+
* @returns { value: FetchSpecification, newIndex: number }
|
|
10
|
+
*/
|
|
11
|
+
static parseFromLexeme(lexemes: Lexeme[], index: number): {
|
|
12
|
+
value: FetchClause;
|
|
13
|
+
newIndex: number;
|
|
14
|
+
};
|
|
15
|
+
}
|
|
16
|
+
export declare class FetchExpressionParser {
|
|
17
|
+
/**
|
|
18
|
+
* Parses a FETCH expression (not the whole clause, just the fetch part)
|
|
19
|
+
*/
|
|
20
|
+
static parseFromLexeme(lexemes: Lexeme[], index: number): {
|
|
21
|
+
value: FetchExpression;
|
|
22
|
+
newIndex: number;
|
|
23
|
+
};
|
|
24
|
+
}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import { OffsetClause } from "../models/Clause";
|
|
2
|
+
import { Lexeme } from "../models/Lexeme";
|
|
3
|
+
export declare class OffsetClauseParser {
|
|
4
|
+
static parse(query: string): OffsetClause;
|
|
5
|
+
static parseFromLexeme(lexemes: Lexeme[], index: number): {
|
|
6
|
+
value: OffsetClause;
|
|
7
|
+
newIndex: number;
|
|
8
|
+
};
|
|
9
|
+
}
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* This decorator formats parameter tokens according to DBMS-specific rules.
|
|
3
|
+
* It supports prefix/suffix, and parameter style (named, indexed, anonymous).
|
|
4
|
+
*/
|
|
5
|
+
export declare class ParameterDecorator {
|
|
6
|
+
prefix: string;
|
|
7
|
+
suffix: string;
|
|
8
|
+
style: 'named' | 'indexed' | 'anonymous';
|
|
9
|
+
constructor(options?: {
|
|
10
|
+
prefix?: string;
|
|
11
|
+
suffix?: string;
|
|
12
|
+
style?: 'named' | 'indexed' | 'anonymous';
|
|
13
|
+
});
|
|
14
|
+
/**
|
|
15
|
+
* Decorate a parameter token with DBMS-specific format.
|
|
16
|
+
* @param token The parameter token
|
|
17
|
+
* @param index The parameter index (for indexed/anonymous)
|
|
18
|
+
*/
|
|
19
|
+
decorate(text: string, index: number): string;
|
|
20
|
+
}
|