rawsql-ts 0.11.42-beta → 0.11.44-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 +12 -13
- package/dist/esm/index.js +18 -0
- package/dist/esm/index.js.map +1 -1
- package/dist/esm/index.min.js +23 -18
- package/dist/esm/index.min.js.map +4 -4
- package/dist/esm/src/index.d.ts +18 -0
- package/dist/esm/src/index.js +18 -0
- package/dist/esm/src/index.js.map +1 -1
- package/dist/esm/src/models/BinarySelectQuery.d.ts +25 -1
- package/dist/esm/src/models/BinarySelectQuery.js +28 -0
- package/dist/esm/src/models/BinarySelectQuery.js.map +1 -1
- package/dist/esm/src/models/Clause.d.ts +14 -2
- package/dist/esm/src/models/Clause.js +26 -1
- package/dist/esm/src/models/Clause.js.map +1 -1
- package/dist/esm/src/models/CreateTableQuery.d.ts +99 -5
- package/dist/esm/src/models/CreateTableQuery.js +85 -10
- package/dist/esm/src/models/CreateTableQuery.js.map +1 -1
- package/dist/esm/src/models/DDLStatements.d.ts +157 -0
- package/dist/esm/src/models/DDLStatements.js +141 -0
- package/dist/esm/src/models/DDLStatements.js.map +1 -0
- package/dist/esm/src/models/DeleteQuery.d.ts +17 -0
- package/dist/esm/src/models/DeleteQuery.js +16 -0
- package/dist/esm/src/models/DeleteQuery.js.map +1 -0
- package/dist/esm/src/models/InsertQuery.d.ts +7 -1
- package/dist/esm/src/models/InsertQuery.js +6 -2
- package/dist/esm/src/models/InsertQuery.js.map +1 -1
- package/dist/esm/src/models/MergeQuery.d.ts +63 -0
- package/dist/esm/src/models/MergeQuery.js +94 -0
- package/dist/esm/src/models/MergeQuery.js.map +1 -0
- package/dist/esm/src/models/SelectQuery.d.ts +37 -1
- package/dist/esm/src/models/SelectQuery.js +4 -1
- package/dist/esm/src/models/SelectQuery.js.map +1 -1
- package/dist/esm/src/models/SimpleSelectQuery.d.ts +29 -1
- package/dist/esm/src/models/SimpleSelectQuery.js +32 -0
- package/dist/esm/src/models/SimpleSelectQuery.js.map +1 -1
- package/dist/esm/src/models/SqlComponent.d.ts +2 -1
- package/dist/esm/src/models/SqlComponent.js +1 -1
- package/dist/esm/src/models/SqlComponent.js.map +1 -1
- package/dist/esm/src/models/SqlPrintToken.d.ts +33 -0
- package/dist/esm/src/models/SqlPrintToken.js +32 -0
- package/dist/esm/src/models/SqlPrintToken.js.map +1 -1
- package/dist/esm/src/models/ValuesQuery.d.ts +25 -1
- package/dist/esm/src/models/ValuesQuery.js +28 -0
- package/dist/esm/src/models/ValuesQuery.js.map +1 -1
- package/dist/esm/src/parsers/AlterTableParser.d.ts +25 -0
- package/dist/esm/src/parsers/AlterTableParser.js +428 -0
- package/dist/esm/src/parsers/AlterTableParser.js.map +1 -0
- package/dist/esm/src/parsers/CreateIndexParser.d.ts +16 -0
- package/dist/esm/src/parsers/CreateIndexParser.js +237 -0
- package/dist/esm/src/parsers/CreateIndexParser.js.map +1 -0
- package/dist/esm/src/parsers/CreateTableParser.d.ts +41 -0
- package/dist/esm/src/parsers/CreateTableParser.js +734 -0
- package/dist/esm/src/parsers/CreateTableParser.js.map +1 -0
- package/dist/esm/src/parsers/DeleteClauseParser.d.ts +11 -0
- package/dist/esm/src/parsers/DeleteClauseParser.js +33 -0
- package/dist/esm/src/parsers/DeleteClauseParser.js.map +1 -0
- package/dist/esm/src/parsers/DeleteQueryParser.d.ts +16 -0
- package/dist/esm/src/parsers/DeleteQueryParser.js +73 -0
- package/dist/esm/src/parsers/DeleteQueryParser.js.map +1 -0
- package/dist/esm/src/parsers/DropConstraintParser.d.ts +12 -0
- package/dist/esm/src/parsers/DropConstraintParser.js +47 -0
- package/dist/esm/src/parsers/DropConstraintParser.js.map +1 -0
- package/dist/esm/src/parsers/DropIndexParser.d.ts +12 -0
- package/dist/esm/src/parsers/DropIndexParser.js +69 -0
- package/dist/esm/src/parsers/DropIndexParser.js.map +1 -0
- package/dist/esm/src/parsers/DropTableParser.d.ts +12 -0
- package/dist/esm/src/parsers/DropTableParser.js +59 -0
- package/dist/esm/src/parsers/DropTableParser.js.map +1 -0
- package/dist/esm/src/parsers/FunctionExpressionParser.d.ts +4 -0
- package/dist/esm/src/parsers/FunctionExpressionParser.js +25 -8
- package/dist/esm/src/parsers/FunctionExpressionParser.js.map +1 -1
- package/dist/esm/src/parsers/InsertQueryParser.js +103 -31
- package/dist/esm/src/parsers/InsertQueryParser.js.map +1 -1
- package/dist/esm/src/parsers/MergeQueryParser.d.ts +26 -0
- package/dist/esm/src/parsers/MergeQueryParser.js +479 -0
- package/dist/esm/src/parsers/MergeQueryParser.js.map +1 -0
- package/dist/esm/src/parsers/ReturningClauseParser.js +50 -7
- package/dist/esm/src/parsers/ReturningClauseParser.js.map +1 -1
- package/dist/esm/src/parsers/SelectClauseParser.js +3 -3
- package/dist/esm/src/parsers/SelectClauseParser.js.map +1 -1
- package/dist/esm/src/parsers/SelectQueryParser.d.ts +4 -0
- package/dist/esm/src/parsers/SelectQueryParser.js +4 -0
- package/dist/esm/src/parsers/SelectQueryParser.js.map +1 -1
- package/dist/esm/src/parsers/SetClauseParser.js +97 -15
- package/dist/esm/src/parsers/SetClauseParser.js.map +1 -1
- package/dist/esm/src/parsers/SqlParser.d.ts +38 -0
- package/dist/esm/src/parsers/SqlParser.js +344 -0
- package/dist/esm/src/parsers/SqlParser.js.map +1 -0
- package/dist/esm/src/parsers/SqlPrintTokenParser.d.ts +68 -21
- package/dist/esm/src/parsers/SqlPrintTokenParser.js +1145 -254
- package/dist/esm/src/parsers/SqlPrintTokenParser.js.map +1 -1
- package/dist/esm/src/parsers/SqlTokenizer.d.ts +24 -2
- package/dist/esm/src/parsers/SqlTokenizer.js +135 -74
- package/dist/esm/src/parsers/SqlTokenizer.js.map +1 -1
- package/dist/esm/src/parsers/UpdateQueryParser.js +11 -1
- package/dist/esm/src/parsers/UpdateQueryParser.js.map +1 -1
- package/dist/esm/src/parsers/UsingClauseParser.d.ts +11 -0
- package/dist/esm/src/parsers/UsingClauseParser.js +29 -0
- package/dist/esm/src/parsers/UsingClauseParser.js.map +1 -0
- package/dist/esm/src/parsers/ValueParser.js +5 -1
- package/dist/esm/src/parsers/ValueParser.js.map +1 -1
- package/dist/esm/src/parsers/ValuesQueryParser.d.ts +0 -2
- package/dist/esm/src/parsers/ValuesQueryParser.js +5 -45
- package/dist/esm/src/parsers/ValuesQueryParser.js.map +1 -1
- package/dist/esm/src/parsers/utils/LexemeCommentUtils.d.ts +6 -0
- package/dist/esm/src/parsers/utils/LexemeCommentUtils.js +26 -0
- package/dist/esm/src/parsers/utils/LexemeCommentUtils.js.map +1 -0
- package/dist/esm/src/tokenReaders/CommandTokenReader.js +49 -2
- package/dist/esm/src/tokenReaders/CommandTokenReader.js.map +1 -1
- package/dist/esm/src/tokenReaders/LiteralTokenReader.js +8 -5
- package/dist/esm/src/tokenReaders/LiteralTokenReader.js.map +1 -1
- package/dist/esm/src/tokenReaders/OperatorTokenReader.js +10 -1
- package/dist/esm/src/tokenReaders/OperatorTokenReader.js.map +1 -1
- package/dist/esm/src/tokenReaders/TypeTokenReader.js +11 -1
- package/dist/esm/src/tokenReaders/TypeTokenReader.js.map +1 -1
- package/dist/esm/src/transformers/InsertQuerySelectValuesConverter.d.ts +18 -0
- package/dist/esm/src/transformers/InsertQuerySelectValuesConverter.js +118 -0
- package/dist/esm/src/transformers/InsertQuerySelectValuesConverter.js.map +1 -0
- package/dist/esm/src/transformers/LinePrinter.d.ts +2 -0
- package/dist/esm/src/transformers/LinePrinter.js +34 -1
- package/dist/esm/src/transformers/LinePrinter.js.map +1 -1
- package/dist/esm/src/transformers/OnelineFormattingHelper.d.ts +29 -0
- package/dist/esm/src/transformers/OnelineFormattingHelper.js +88 -0
- package/dist/esm/src/transformers/OnelineFormattingHelper.js.map +1 -0
- package/dist/esm/src/transformers/QueryBuilder.d.ts +47 -13
- package/dist/esm/src/transformers/QueryBuilder.js +424 -62
- package/dist/esm/src/transformers/QueryBuilder.js.map +1 -1
- package/dist/esm/src/transformers/SqlFormatter.d.ts +13 -3
- package/dist/esm/src/transformers/SqlFormatter.js +13 -4
- package/dist/esm/src/transformers/SqlFormatter.js.map +1 -1
- package/dist/esm/src/transformers/SqlPrinter.d.ts +63 -10
- package/dist/esm/src/transformers/SqlPrinter.js +954 -64
- package/dist/esm/src/transformers/SqlPrinter.js.map +1 -1
- package/dist/esm/src/types/Formatting.d.ts +8 -0
- package/dist/esm/src/types/Formatting.js +2 -0
- package/dist/esm/src/types/Formatting.js.map +1 -0
- package/dist/esm/src/utils/ParserStringUtils.d.ts +6 -0
- package/dist/esm/src/utils/ParserStringUtils.js +28 -0
- package/dist/esm/src/utils/ParserStringUtils.js.map +1 -0
- package/dist/esm/tsconfig.browser.tsbuildinfo +1 -1
- package/dist/index.min.js +22 -17
- package/dist/index.min.js.map +4 -4
- package/dist/src/index.d.ts +18 -0
- package/dist/src/index.js +18 -0
- package/dist/src/index.js.map +1 -1
- package/dist/src/models/BinarySelectQuery.d.ts +25 -1
- package/dist/src/models/BinarySelectQuery.js +28 -0
- package/dist/src/models/BinarySelectQuery.js.map +1 -1
- package/dist/src/models/Clause.d.ts +14 -2
- package/dist/src/models/Clause.js +29 -2
- package/dist/src/models/Clause.js.map +1 -1
- package/dist/src/models/CreateTableQuery.d.ts +99 -5
- package/dist/src/models/CreateTableQuery.js +90 -11
- package/dist/src/models/CreateTableQuery.js.map +1 -1
- package/dist/src/models/DDLStatements.d.ts +157 -0
- package/dist/src/models/DDLStatements.js +153 -0
- package/dist/src/models/DDLStatements.js.map +1 -0
- package/dist/src/models/DeleteQuery.d.ts +17 -0
- package/dist/src/models/DeleteQuery.js +20 -0
- package/dist/src/models/DeleteQuery.js.map +1 -0
- package/dist/src/models/InsertQuery.d.ts +7 -1
- package/dist/src/models/InsertQuery.js +6 -2
- package/dist/src/models/InsertQuery.js.map +1 -1
- package/dist/src/models/MergeQuery.d.ts +63 -0
- package/dist/src/models/MergeQuery.js +104 -0
- package/dist/src/models/MergeQuery.js.map +1 -0
- package/dist/src/models/SelectQuery.d.ts +37 -1
- package/dist/src/models/SelectQuery.js +7 -1
- package/dist/src/models/SelectQuery.js.map +1 -1
- package/dist/src/models/SimpleSelectQuery.d.ts +29 -1
- package/dist/src/models/SimpleSelectQuery.js +32 -0
- package/dist/src/models/SimpleSelectQuery.js.map +1 -1
- package/dist/src/models/SqlComponent.d.ts +2 -1
- package/dist/src/models/SqlComponent.js +1 -1
- package/dist/src/models/SqlComponent.js.map +1 -1
- package/dist/src/models/SqlPrintToken.d.ts +33 -0
- package/dist/src/models/SqlPrintToken.js +32 -0
- package/dist/src/models/SqlPrintToken.js.map +1 -1
- package/dist/src/models/ValuesQuery.d.ts +25 -1
- package/dist/src/models/ValuesQuery.js +28 -0
- package/dist/src/models/ValuesQuery.js.map +1 -1
- package/dist/src/parsers/AlterTableParser.d.ts +25 -0
- package/dist/src/parsers/AlterTableParser.js +432 -0
- package/dist/src/parsers/AlterTableParser.js.map +1 -0
- package/dist/src/parsers/CreateIndexParser.d.ts +16 -0
- package/dist/src/parsers/CreateIndexParser.js +241 -0
- package/dist/src/parsers/CreateIndexParser.js.map +1 -0
- package/dist/src/parsers/CreateTableParser.d.ts +41 -0
- package/dist/src/parsers/CreateTableParser.js +738 -0
- package/dist/src/parsers/CreateTableParser.js.map +1 -0
- package/dist/src/parsers/DeleteClauseParser.d.ts +11 -0
- package/dist/src/parsers/DeleteClauseParser.js +37 -0
- package/dist/src/parsers/DeleteClauseParser.js.map +1 -0
- package/dist/src/parsers/DeleteQueryParser.d.ts +16 -0
- package/dist/src/parsers/DeleteQueryParser.js +77 -0
- package/dist/src/parsers/DeleteQueryParser.js.map +1 -0
- package/dist/src/parsers/DropConstraintParser.d.ts +12 -0
- package/dist/src/parsers/DropConstraintParser.js +51 -0
- package/dist/src/parsers/DropConstraintParser.js.map +1 -0
- package/dist/src/parsers/DropIndexParser.d.ts +12 -0
- package/dist/src/parsers/DropIndexParser.js +73 -0
- package/dist/src/parsers/DropIndexParser.js.map +1 -0
- package/dist/src/parsers/DropTableParser.d.ts +12 -0
- package/dist/src/parsers/DropTableParser.js +63 -0
- package/dist/src/parsers/DropTableParser.js.map +1 -0
- package/dist/src/parsers/FunctionExpressionParser.d.ts +4 -0
- package/dist/src/parsers/FunctionExpressionParser.js +25 -8
- package/dist/src/parsers/FunctionExpressionParser.js.map +1 -1
- package/dist/src/parsers/InsertQueryParser.js +103 -31
- package/dist/src/parsers/InsertQueryParser.js.map +1 -1
- package/dist/src/parsers/MergeQueryParser.d.ts +26 -0
- package/dist/src/parsers/MergeQueryParser.js +483 -0
- package/dist/src/parsers/MergeQueryParser.js.map +1 -0
- package/dist/src/parsers/ReturningClauseParser.js +50 -7
- package/dist/src/parsers/ReturningClauseParser.js.map +1 -1
- package/dist/src/parsers/SelectClauseParser.js +2 -2
- package/dist/src/parsers/SelectClauseParser.js.map +1 -1
- package/dist/src/parsers/SelectQueryParser.d.ts +4 -0
- package/dist/src/parsers/SelectQueryParser.js +4 -0
- package/dist/src/parsers/SelectQueryParser.js.map +1 -1
- package/dist/src/parsers/SetClauseParser.js +97 -15
- package/dist/src/parsers/SetClauseParser.js.map +1 -1
- package/dist/src/parsers/SqlParser.d.ts +38 -0
- package/dist/src/parsers/SqlParser.js +353 -0
- package/dist/src/parsers/SqlParser.js.map +1 -0
- package/dist/src/parsers/SqlPrintTokenParser.d.ts +68 -21
- package/dist/src/parsers/SqlPrintTokenParser.js +1143 -252
- package/dist/src/parsers/SqlPrintTokenParser.js.map +1 -1
- package/dist/src/parsers/SqlTokenizer.d.ts +24 -2
- package/dist/src/parsers/SqlTokenizer.js +139 -74
- package/dist/src/parsers/SqlTokenizer.js.map +1 -1
- package/dist/src/parsers/UpdateQueryParser.js +11 -1
- package/dist/src/parsers/UpdateQueryParser.js.map +1 -1
- package/dist/src/parsers/UsingClauseParser.d.ts +11 -0
- package/dist/src/parsers/UsingClauseParser.js +33 -0
- package/dist/src/parsers/UsingClauseParser.js.map +1 -0
- package/dist/src/parsers/ValueParser.js +5 -1
- package/dist/src/parsers/ValueParser.js.map +1 -1
- package/dist/src/parsers/ValuesQueryParser.d.ts +0 -2
- package/dist/src/parsers/ValuesQueryParser.js +5 -45
- package/dist/src/parsers/ValuesQueryParser.js.map +1 -1
- package/dist/src/parsers/utils/LexemeCommentUtils.d.ts +6 -0
- package/dist/src/parsers/utils/LexemeCommentUtils.js +29 -0
- package/dist/src/parsers/utils/LexemeCommentUtils.js.map +1 -0
- package/dist/src/tokenReaders/CommandTokenReader.js +49 -2
- package/dist/src/tokenReaders/CommandTokenReader.js.map +1 -1
- package/dist/src/tokenReaders/LiteralTokenReader.js +8 -5
- package/dist/src/tokenReaders/LiteralTokenReader.js.map +1 -1
- package/dist/src/tokenReaders/OperatorTokenReader.js +10 -1
- package/dist/src/tokenReaders/OperatorTokenReader.js.map +1 -1
- package/dist/src/tokenReaders/TypeTokenReader.js +11 -1
- package/dist/src/tokenReaders/TypeTokenReader.js.map +1 -1
- package/dist/src/transformers/InsertQuerySelectValuesConverter.d.ts +18 -0
- package/dist/src/transformers/InsertQuerySelectValuesConverter.js +122 -0
- package/dist/src/transformers/InsertQuerySelectValuesConverter.js.map +1 -0
- package/dist/src/transformers/LinePrinter.d.ts +2 -0
- package/dist/src/transformers/LinePrinter.js +34 -1
- package/dist/src/transformers/LinePrinter.js.map +1 -1
- package/dist/src/transformers/OnelineFormattingHelper.d.ts +29 -0
- package/dist/src/transformers/OnelineFormattingHelper.js +92 -0
- package/dist/src/transformers/OnelineFormattingHelper.js.map +1 -0
- package/dist/src/transformers/QueryBuilder.d.ts +47 -13
- package/dist/src/transformers/QueryBuilder.js +433 -60
- package/dist/src/transformers/QueryBuilder.js.map +1 -1
- package/dist/src/transformers/SqlFormatter.d.ts +13 -3
- package/dist/src/transformers/SqlFormatter.js +20 -6
- package/dist/src/transformers/SqlFormatter.js.map +1 -1
- package/dist/src/transformers/SqlPrinter.d.ts +63 -10
- package/dist/src/transformers/SqlPrinter.js +954 -64
- package/dist/src/transformers/SqlPrinter.js.map +1 -1
- package/dist/src/types/Formatting.d.ts +8 -0
- package/dist/src/types/Formatting.js +3 -0
- package/dist/src/types/Formatting.js.map +1 -0
- package/dist/src/utils/ParserStringUtils.d.ts +6 -0
- package/dist/src/utils/ParserStringUtils.js +31 -0
- package/dist/src/utils/ParserStringUtils.js.map +1 -0
- package/dist/tsconfig.tsbuildinfo +1 -1
- package/package.json +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"FunctionExpressionParser.js","sourceRoot":"","sources":["../../../src/parsers/FunctionExpressionParser.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"FunctionExpressionParser.js","sourceRoot":"","sources":["../../../src/parsers/FunctionExpressionParser.ts"],"names":[],"mappings":"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"}
|
|
@@ -7,10 +7,13 @@ const InsertQuery_1 = require("../models/InsertQuery");
|
|
|
7
7
|
const Lexeme_1 = require("../models/Lexeme");
|
|
8
8
|
const SqlTokenizer_1 = require("./SqlTokenizer");
|
|
9
9
|
const SelectQueryParser_1 = require("./SelectQueryParser");
|
|
10
|
+
const Clause_1 = require("../models/Clause");
|
|
10
11
|
const WithClauseParser_1 = require("./WithClauseParser");
|
|
11
|
-
const SimpleSelectQuery_1 = require("../models/SimpleSelectQuery");
|
|
12
12
|
const SourceExpressionParser_1 = require("./SourceExpressionParser");
|
|
13
|
-
const
|
|
13
|
+
const ValuesQueryParser_1 = require("./ValuesQueryParser");
|
|
14
|
+
const ReturningClauseParser_1 = require("./ReturningClauseParser");
|
|
15
|
+
const ValueComponent_1 = require("../models/ValueComponent");
|
|
16
|
+
const LexemeCommentUtils_1 = require("./utils/LexemeCommentUtils");
|
|
14
17
|
class InsertQueryParser {
|
|
15
18
|
/**
|
|
16
19
|
* Parse SQL string to InsertQuery AST.
|
|
@@ -18,7 +21,7 @@ class InsertQueryParser {
|
|
|
18
21
|
*/
|
|
19
22
|
static parse(query) {
|
|
20
23
|
const tokenizer = new SqlTokenizer_1.SqlTokenizer(query);
|
|
21
|
-
const lexemes = tokenizer.
|
|
24
|
+
const lexemes = tokenizer.readLexemes();
|
|
22
25
|
const result = this.parseFromLexeme(lexemes, 0);
|
|
23
26
|
if (result.newIndex < lexemes.length) {
|
|
24
27
|
throw new Error(`Syntax error: Unexpected token "${lexemes[result.newIndex].value}" at position ${result.newIndex}. The INSERT query is complete but there are additional tokens.`);
|
|
@@ -29,55 +32,124 @@ class InsertQueryParser {
|
|
|
29
32
|
* Parse from lexeme array (for internal use and tests)
|
|
30
33
|
*/
|
|
31
34
|
static parseFromLexeme(lexemes, index) {
|
|
32
|
-
var _a, _b, _c;
|
|
35
|
+
var _a, _b, _c, _d, _e, _f, _g;
|
|
33
36
|
let idx = index;
|
|
34
|
-
let
|
|
35
|
-
if (lexemes[idx].value === "with") {
|
|
37
|
+
let withClause = null;
|
|
38
|
+
if (((_a = lexemes[idx]) === null || _a === void 0 ? void 0 : _a.value) === "with") {
|
|
36
39
|
const result = WithClauseParser_1.WithClauseParser.parseFromLexeme(lexemes, idx);
|
|
37
|
-
|
|
40
|
+
withClause = result.value;
|
|
38
41
|
idx = result.newIndex;
|
|
39
42
|
}
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
throw new Error(`Syntax error at position ${idx}: Expected 'INSERT INTO' but found '${
|
|
43
|
+
if (!lexemes[idx] || lexemes[idx].value !== "insert into") {
|
|
44
|
+
const found = (_c = (_b = lexemes[idx]) === null || _b === void 0 ? void 0 : _b.value) !== null && _c !== void 0 ? _c : "end of input";
|
|
45
|
+
throw new Error(`Syntax error at position ${idx}: Expected 'INSERT INTO' but found '${found}'.`);
|
|
43
46
|
}
|
|
47
|
+
const insertKeywordLexeme = lexemes[idx];
|
|
48
|
+
const insertKeywordComments = (0, LexemeCommentUtils_1.extractLexemeComments)(insertKeywordLexeme);
|
|
44
49
|
idx++;
|
|
45
|
-
// Parse table and optional alias/schema using SourceExpressionParser
|
|
46
50
|
const sourceResult = SourceExpressionParser_1.SourceExpressionParser.parseTableSourceFromLexemes(lexemes, idx);
|
|
51
|
+
const targetSource = sourceResult.value;
|
|
52
|
+
const targetDatasource = targetSource.datasource;
|
|
47
53
|
idx = sourceResult.newIndex;
|
|
48
|
-
//
|
|
49
|
-
|
|
50
|
-
|
|
54
|
+
// Route inline comments immediately following INSERT INTO to the table reference.
|
|
55
|
+
if (insertKeywordComments.after.length > 0) {
|
|
56
|
+
targetDatasource.addPositionedComments("before", insertKeywordComments.after);
|
|
57
|
+
}
|
|
58
|
+
let columnIdentifiers = null;
|
|
59
|
+
let trailingInsertComments = [];
|
|
60
|
+
if (((_d = lexemes[idx]) === null || _d === void 0 ? void 0 : _d.type) === Lexeme_1.TokenType.OpenParen) {
|
|
61
|
+
const openParenLexeme = lexemes[idx];
|
|
62
|
+
const parenComments = (0, LexemeCommentUtils_1.extractLexemeComments)(openParenLexeme);
|
|
51
63
|
idx++;
|
|
52
|
-
|
|
53
|
-
|
|
64
|
+
if (parenComments.before.length > 0) {
|
|
65
|
+
// Comments before '(' belong after the table name.
|
|
66
|
+
targetDatasource.addPositionedComments("after", parenComments.before);
|
|
67
|
+
}
|
|
68
|
+
columnIdentifiers = [];
|
|
69
|
+
let pendingBeforeForNext = [...parenComments.after];
|
|
70
|
+
while (idx < lexemes.length && (lexemes[idx].type & Lexeme_1.TokenType.Identifier)) {
|
|
71
|
+
const columnLexeme = lexemes[idx];
|
|
72
|
+
const columnComments = (0, LexemeCommentUtils_1.extractLexemeComments)(columnLexeme);
|
|
73
|
+
const column = new ValueComponent_1.IdentifierString(columnLexeme.value);
|
|
74
|
+
// Attach leading comments gathered from preceding tokens and the identifier itself.
|
|
75
|
+
const beforeComments = [];
|
|
76
|
+
if (pendingBeforeForNext.length > 0) {
|
|
77
|
+
beforeComments.push(...pendingBeforeForNext);
|
|
78
|
+
}
|
|
79
|
+
if (columnComments.before.length > 0) {
|
|
80
|
+
beforeComments.push(...columnComments.before);
|
|
81
|
+
}
|
|
82
|
+
if (beforeComments.length > 0) {
|
|
83
|
+
column.addPositionedComments("before", beforeComments);
|
|
84
|
+
}
|
|
85
|
+
if (columnComments.after.length > 0) {
|
|
86
|
+
column.addPositionedComments("after", columnComments.after);
|
|
87
|
+
}
|
|
88
|
+
columnIdentifiers.push(column);
|
|
89
|
+
pendingBeforeForNext = [];
|
|
54
90
|
idx++;
|
|
55
|
-
if (((
|
|
91
|
+
if (((_e = lexemes[idx]) === null || _e === void 0 ? void 0 : _e.type) === Lexeme_1.TokenType.Comma) {
|
|
92
|
+
const commaComments = (0, LexemeCommentUtils_1.extractLexemeComments)(lexemes[idx]);
|
|
93
|
+
pendingBeforeForNext = [...commaComments.after];
|
|
56
94
|
idx++;
|
|
95
|
+
continue;
|
|
57
96
|
}
|
|
58
|
-
|
|
59
|
-
break;
|
|
60
|
-
}
|
|
97
|
+
break;
|
|
61
98
|
}
|
|
62
|
-
if (
|
|
99
|
+
if (pendingBeforeForNext.length > 0 && columnIdentifiers.length > 0) {
|
|
100
|
+
columnIdentifiers[columnIdentifiers.length - 1].addPositionedComments("after", pendingBeforeForNext);
|
|
101
|
+
pendingBeforeForNext = [];
|
|
102
|
+
}
|
|
103
|
+
if (((_f = lexemes[idx]) === null || _f === void 0 ? void 0 : _f.type) !== Lexeme_1.TokenType.CloseParen) {
|
|
63
104
|
throw new Error(`Syntax error at position ${idx}: Expected ')' after column list.`);
|
|
64
105
|
}
|
|
106
|
+
const closeParenComments = (0, LexemeCommentUtils_1.extractLexemeComments)(lexemes[idx]);
|
|
65
107
|
idx++;
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
if (
|
|
70
|
-
|
|
108
|
+
if (closeParenComments.before.length > 0 && columnIdentifiers.length > 0) {
|
|
109
|
+
columnIdentifiers[columnIdentifiers.length - 1].addPositionedComments("after", closeParenComments.before);
|
|
110
|
+
}
|
|
111
|
+
if (closeParenComments.after.length > 0) {
|
|
112
|
+
// Comments after ')' should trail the entire INSERT clause.
|
|
113
|
+
trailingInsertComments = closeParenComments.after;
|
|
71
114
|
}
|
|
72
|
-
|
|
73
|
-
|
|
115
|
+
if (columnIdentifiers.length === 0) {
|
|
116
|
+
columnIdentifiers = [];
|
|
74
117
|
}
|
|
75
118
|
}
|
|
76
|
-
idx
|
|
119
|
+
if (idx >= lexemes.length) {
|
|
120
|
+
throw new Error(`Syntax error: Unexpected end of input while parsing INSERT statement. VALUES or SELECT clause expected.`);
|
|
121
|
+
}
|
|
122
|
+
const nextToken = lexemes[idx].value.toLowerCase();
|
|
123
|
+
let dataQuery;
|
|
124
|
+
if (nextToken === "values") {
|
|
125
|
+
const valuesResult = ValuesQueryParser_1.ValuesQueryParser.parseFromLexeme(lexemes, idx);
|
|
126
|
+
dataQuery = valuesResult.value;
|
|
127
|
+
idx = valuesResult.newIndex;
|
|
128
|
+
}
|
|
129
|
+
else {
|
|
130
|
+
const selectResult = SelectQueryParser_1.SelectQueryParser.parseFromLexeme(lexemes, idx);
|
|
131
|
+
dataQuery = selectResult.value;
|
|
132
|
+
idx = selectResult.newIndex;
|
|
133
|
+
}
|
|
134
|
+
let returningClause = null;
|
|
135
|
+
if (((_g = lexemes[idx]) === null || _g === void 0 ? void 0 : _g.value) === "returning") {
|
|
136
|
+
const returningResult = ReturningClauseParser_1.ReturningClauseParser.parseFromLexeme(lexemes, idx);
|
|
137
|
+
returningClause = returningResult.value;
|
|
138
|
+
idx = returningResult.newIndex;
|
|
139
|
+
}
|
|
140
|
+
const insertClause = new Clause_1.InsertClause(targetSource, columnIdentifiers !== null && columnIdentifiers !== void 0 ? columnIdentifiers : null);
|
|
141
|
+
if (insertKeywordComments.before.length > 0) {
|
|
142
|
+
insertClause.addPositionedComments("before", insertKeywordComments.before);
|
|
143
|
+
}
|
|
144
|
+
if (trailingInsertComments.length > 0) {
|
|
145
|
+
insertClause.addPositionedComments("after", trailingInsertComments);
|
|
146
|
+
}
|
|
77
147
|
return {
|
|
78
148
|
value: new InsertQuery_1.InsertQuery({
|
|
79
|
-
|
|
80
|
-
|
|
149
|
+
withClause,
|
|
150
|
+
insertClause,
|
|
151
|
+
selectQuery: dataQuery,
|
|
152
|
+
returning: returningClause
|
|
81
153
|
}),
|
|
82
154
|
newIndex: idx
|
|
83
155
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"InsertQueryParser.js","sourceRoot":"","sources":["../../../src/parsers/InsertQueryParser.ts"],"names":[],"mappings":";;;AAAA,6CAA6C;AAC7C,qGAAqG;AACrG,uDAAoD;AACpD,6CAAqD;AACrD,iDAA8C;
|
|
1
|
+
{"version":3,"file":"InsertQueryParser.js","sourceRoot":"","sources":["../../../src/parsers/InsertQueryParser.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
import { MergeQuery } from "../models/MergeQuery";
|
|
2
|
+
import { Lexeme } from "../models/Lexeme";
|
|
3
|
+
export declare class MergeQueryParser {
|
|
4
|
+
/**
|
|
5
|
+
* Parse SQL string to MergeQuery AST.
|
|
6
|
+
* @param query SQL string
|
|
7
|
+
*/
|
|
8
|
+
static parse(query: string): MergeQuery;
|
|
9
|
+
/**
|
|
10
|
+
* Parse from lexeme array (for internal use and tests).
|
|
11
|
+
*/
|
|
12
|
+
static parseFromLexeme(lexemes: Lexeme[], index: number): {
|
|
13
|
+
value: MergeQuery;
|
|
14
|
+
newIndex: number;
|
|
15
|
+
};
|
|
16
|
+
private static parseWhenClauses;
|
|
17
|
+
private static parseMatchType;
|
|
18
|
+
private static parseAction;
|
|
19
|
+
private static parseSetClause;
|
|
20
|
+
private static parseInsertAction;
|
|
21
|
+
private static parseInsertColumnProjection;
|
|
22
|
+
private static isSetClauseTerminator;
|
|
23
|
+
private static mergeUnique;
|
|
24
|
+
private static addUniquePositionedComments;
|
|
25
|
+
private static getLowerValue;
|
|
26
|
+
}
|