rawsql-ts 0.11.37-beta → 0.11.39-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/dist/esm/index.min.js +55 -51
- package/dist/esm/index.min.js.map +3 -3
- package/dist/esm/src/models/Lexeme.d.ts +8 -0
- package/dist/esm/src/models/SqlComponent.d.ts +20 -0
- package/dist/esm/src/models/SqlComponent.js +46 -0
- package/dist/esm/src/models/SqlComponent.js.map +1 -1
- package/dist/esm/src/parsers/CommandExpressionParser.d.ts +9 -0
- package/dist/esm/src/parsers/CommandExpressionParser.js +118 -14
- package/dist/esm/src/parsers/CommandExpressionParser.js.map +1 -1
- package/dist/esm/src/parsers/CommonTableParser.d.ts +8 -0
- package/dist/esm/src/parsers/CommonTableParser.js +127 -35
- package/dist/esm/src/parsers/CommonTableParser.js.map +1 -1
- package/dist/esm/src/parsers/FromClauseParser.js +2 -2
- package/dist/esm/src/parsers/FromClauseParser.js.map +1 -1
- package/dist/esm/src/parsers/FullNameParser.js +13 -1
- package/dist/esm/src/parsers/FullNameParser.js.map +1 -1
- package/dist/esm/src/parsers/FunctionExpressionParser.js +37 -3
- package/dist/esm/src/parsers/FunctionExpressionParser.js.map +1 -1
- package/dist/esm/src/parsers/JoinClauseParser.d.ts +4 -0
- package/dist/esm/src/parsers/JoinClauseParser.js +54 -20
- package/dist/esm/src/parsers/JoinClauseParser.js.map +1 -1
- package/dist/esm/src/parsers/OrderByClauseParser.js +39 -8
- package/dist/esm/src/parsers/OrderByClauseParser.js.map +1 -1
- package/dist/esm/src/parsers/ParenExpressionParser.js +1 -1
- package/dist/esm/src/parsers/ParenExpressionParser.js.map +1 -1
- package/dist/esm/src/parsers/SelectClauseParser.d.ts +10 -0
- package/dist/esm/src/parsers/SelectClauseParser.js +124 -12
- package/dist/esm/src/parsers/SelectClauseParser.js.map +1 -1
- package/dist/esm/src/parsers/SelectQueryParser.d.ts +12 -0
- package/dist/esm/src/parsers/SelectQueryParser.js +277 -115
- package/dist/esm/src/parsers/SelectQueryParser.js.map +1 -1
- package/dist/esm/src/parsers/SourceAliasExpressionParser.js +15 -4
- package/dist/esm/src/parsers/SourceAliasExpressionParser.js.map +1 -1
- package/dist/esm/src/parsers/SourceParser.js +33 -2
- package/dist/esm/src/parsers/SourceParser.js.map +1 -1
- package/dist/esm/src/parsers/SqlPrintTokenParser.d.ts +62 -0
- package/dist/esm/src/parsers/SqlPrintTokenParser.js +700 -32
- package/dist/esm/src/parsers/SqlPrintTokenParser.js.map +1 -1
- package/dist/esm/src/parsers/SqlTokenizer.d.ts +1 -4
- package/dist/esm/src/parsers/SqlTokenizer.js +108 -52
- package/dist/esm/src/parsers/SqlTokenizer.js.map +1 -1
- package/dist/esm/src/parsers/ValueParser.d.ts +4 -0
- package/dist/esm/src/parsers/ValueParser.js +119 -20
- package/dist/esm/src/parsers/ValueParser.js.map +1 -1
- package/dist/esm/src/parsers/WithClauseParser.d.ts +4 -0
- package/dist/esm/src/parsers/WithClauseParser.js +64 -35
- package/dist/esm/src/parsers/WithClauseParser.js.map +1 -1
- package/dist/esm/src/tokenReaders/CommandTokenReader.js +9 -1
- package/dist/esm/src/tokenReaders/CommandTokenReader.js.map +1 -1
- package/dist/esm/src/tokenReaders/EscapedIdentifierTokenReader.js +5 -0
- package/dist/esm/src/tokenReaders/EscapedIdentifierTokenReader.js.map +1 -1
- package/dist/esm/src/tokenReaders/OperatorTokenReader.js +12 -9
- package/dist/esm/src/tokenReaders/OperatorTokenReader.js.map +1 -1
- package/dist/esm/src/transformers/LinePrinter.d.ts +17 -2
- package/dist/esm/src/transformers/LinePrinter.js +39 -10
- package/dist/esm/src/transformers/LinePrinter.js.map +1 -1
- package/dist/esm/src/transformers/SqlFormatter.d.ts +10 -0
- package/dist/esm/src/transformers/SqlFormatter.js +1 -1
- package/dist/esm/src/transformers/SqlFormatter.js.map +1 -1
- package/dist/esm/src/transformers/SqlPrinter.d.ts +6 -1
- package/dist/esm/src/transformers/SqlPrinter.js +76 -31
- package/dist/esm/src/transformers/SqlPrinter.js.map +1 -1
- package/dist/esm/src/utils/CommentEditor.d.ts +12 -5
- package/dist/esm/src/utils/CommentEditor.js +67 -28
- package/dist/esm/src/utils/CommentEditor.js.map +1 -1
- package/dist/esm/src/utils/stringUtils.d.ts +1 -0
- package/dist/esm/src/utils/stringUtils.js +43 -26
- package/dist/esm/src/utils/stringUtils.js.map +1 -1
- package/dist/esm/tsconfig.browser.tsbuildinfo +1 -1
- package/dist/index.min.js +55 -51
- package/dist/index.min.js.map +3 -3
- package/dist/src/models/Lexeme.d.ts +8 -0
- package/dist/src/models/SqlComponent.d.ts +20 -0
- package/dist/src/models/SqlComponent.js +46 -0
- package/dist/src/models/SqlComponent.js.map +1 -1
- package/dist/src/parsers/CommandExpressionParser.d.ts +9 -0
- package/dist/src/parsers/CommandExpressionParser.js +118 -14
- package/dist/src/parsers/CommandExpressionParser.js.map +1 -1
- package/dist/src/parsers/CommonTableParser.d.ts +8 -0
- package/dist/src/parsers/CommonTableParser.js +127 -35
- package/dist/src/parsers/CommonTableParser.js.map +1 -1
- package/dist/src/parsers/FromClauseParser.js +2 -2
- package/dist/src/parsers/FromClauseParser.js.map +1 -1
- package/dist/src/parsers/FullNameParser.js +13 -1
- package/dist/src/parsers/FullNameParser.js.map +1 -1
- package/dist/src/parsers/FunctionExpressionParser.js +37 -3
- package/dist/src/parsers/FunctionExpressionParser.js.map +1 -1
- package/dist/src/parsers/JoinClauseParser.d.ts +4 -0
- package/dist/src/parsers/JoinClauseParser.js +54 -20
- package/dist/src/parsers/JoinClauseParser.js.map +1 -1
- package/dist/src/parsers/OrderByClauseParser.js +39 -8
- package/dist/src/parsers/OrderByClauseParser.js.map +1 -1
- package/dist/src/parsers/ParenExpressionParser.js +1 -1
- package/dist/src/parsers/ParenExpressionParser.js.map +1 -1
- package/dist/src/parsers/SelectClauseParser.d.ts +10 -0
- package/dist/src/parsers/SelectClauseParser.js +124 -12
- package/dist/src/parsers/SelectClauseParser.js.map +1 -1
- package/dist/src/parsers/SelectQueryParser.d.ts +12 -0
- package/dist/src/parsers/SelectQueryParser.js +280 -115
- package/dist/src/parsers/SelectQueryParser.js.map +1 -1
- package/dist/src/parsers/SourceAliasExpressionParser.js +15 -4
- package/dist/src/parsers/SourceAliasExpressionParser.js.map +1 -1
- package/dist/src/parsers/SourceParser.js +33 -2
- package/dist/src/parsers/SourceParser.js.map +1 -1
- package/dist/src/parsers/SqlPrintTokenParser.d.ts +62 -0
- package/dist/src/parsers/SqlPrintTokenParser.js +700 -32
- package/dist/src/parsers/SqlPrintTokenParser.js.map +1 -1
- package/dist/src/parsers/SqlTokenizer.d.ts +1 -4
- package/dist/src/parsers/SqlTokenizer.js +108 -52
- package/dist/src/parsers/SqlTokenizer.js.map +1 -1
- package/dist/src/parsers/ValueParser.d.ts +4 -0
- package/dist/src/parsers/ValueParser.js +119 -20
- package/dist/src/parsers/ValueParser.js.map +1 -1
- package/dist/src/parsers/WithClauseParser.d.ts +4 -0
- package/dist/src/parsers/WithClauseParser.js +64 -35
- package/dist/src/parsers/WithClauseParser.js.map +1 -1
- package/dist/src/tokenReaders/CommandTokenReader.js +9 -1
- package/dist/src/tokenReaders/CommandTokenReader.js.map +1 -1
- package/dist/src/tokenReaders/EscapedIdentifierTokenReader.js +5 -0
- package/dist/src/tokenReaders/EscapedIdentifierTokenReader.js.map +1 -1
- package/dist/src/tokenReaders/OperatorTokenReader.js +12 -9
- package/dist/src/tokenReaders/OperatorTokenReader.js.map +1 -1
- package/dist/src/transformers/LinePrinter.d.ts +17 -2
- package/dist/src/transformers/LinePrinter.js +39 -10
- package/dist/src/transformers/LinePrinter.js.map +1 -1
- package/dist/src/transformers/SqlFormatter.d.ts +10 -0
- package/dist/src/transformers/SqlFormatter.js +4 -1
- package/dist/src/transformers/SqlFormatter.js.map +1 -1
- package/dist/src/transformers/SqlPrinter.d.ts +6 -1
- package/dist/src/transformers/SqlPrinter.js +76 -31
- package/dist/src/transformers/SqlPrinter.js.map +1 -1
- package/dist/src/utils/CommentEditor.d.ts +12 -5
- package/dist/src/utils/CommentEditor.js +67 -28
- package/dist/src/utils/CommentEditor.js.map +1 -1
- package/dist/src/utils/stringUtils.d.ts +1 -0
- package/dist/src/utils/stringUtils.js +43 -26
- package/dist/src/utils/stringUtils.js.map +1 -1
- package/dist/tsconfig.tsbuildinfo +1 -1
- package/package.json +1 -1
|
@@ -5,12 +5,14 @@ import { SqlComponent } from '../models/SqlComponent';
|
|
|
5
5
|
*/
|
|
6
6
|
export declare class CommentEditor {
|
|
7
7
|
/**
|
|
8
|
-
* Add a comment to a SQL component
|
|
8
|
+
* Add a comment to a SQL component using positioned comments system
|
|
9
9
|
* For SelectQuery components, adds to headerComments for query-level comments
|
|
10
|
+
* For other components, adds as 'before' positioned comment
|
|
10
11
|
* @param component The SQL component to add comment to
|
|
11
12
|
* @param comment The comment text to add
|
|
13
|
+
* @param position Optional position for comment ('before' | 'after'), defaults to 'before'
|
|
12
14
|
*/
|
|
13
|
-
static addComment(component: SqlComponent, comment: string): void;
|
|
15
|
+
static addComment(component: SqlComponent, comment: string, position?: 'before' | 'after'): void;
|
|
14
16
|
/**
|
|
15
17
|
* Check if a component implements SelectQuery interface
|
|
16
18
|
* Uses discriminator property for robust type detection
|
|
@@ -21,20 +23,24 @@ export declare class CommentEditor {
|
|
|
21
23
|
/**
|
|
22
24
|
* Edit an existing comment by index
|
|
23
25
|
* For SelectQuery components, edits headerComments
|
|
26
|
+
* For other components, edits positioned comments
|
|
24
27
|
* @param component The SQL component containing the comment
|
|
25
28
|
* @param index The index of the comment to edit (0-based)
|
|
26
29
|
* @param newComment The new comment text
|
|
30
|
+
* @param position Position to edit ('before' | 'after'), defaults to 'before' for non-SelectQuery components
|
|
27
31
|
* @throws Error if index is invalid
|
|
28
32
|
*/
|
|
29
|
-
static editComment(component: SqlComponent, index: number, newComment: string): void;
|
|
33
|
+
static editComment(component: SqlComponent, index: number, newComment: string, position?: 'before' | 'after'): void;
|
|
30
34
|
/**
|
|
31
35
|
* Delete a comment by index
|
|
32
36
|
* For SelectQuery components, deletes from headerComments
|
|
37
|
+
* For other components, deletes from positioned comments
|
|
33
38
|
* @param component The SQL component containing the comment
|
|
34
39
|
* @param index The index of the comment to delete (0-based)
|
|
40
|
+
* @param position Position to delete from ('before' | 'after'), defaults to 'before' for non-SelectQuery components
|
|
35
41
|
* @throws Error if index is invalid
|
|
36
42
|
*/
|
|
37
|
-
static deleteComment(component: SqlComponent, index: number): void;
|
|
43
|
+
static deleteComment(component: SqlComponent, index: number, position?: 'before' | 'after'): void;
|
|
38
44
|
/**
|
|
39
45
|
* Delete all comments from a component
|
|
40
46
|
* @param component The SQL component to clear comments from
|
|
@@ -42,7 +48,8 @@ export declare class CommentEditor {
|
|
|
42
48
|
static deleteAllComments(component: SqlComponent): void;
|
|
43
49
|
/**
|
|
44
50
|
* Get all comments from a component
|
|
45
|
-
* For SelectQuery components, returns headerComments
|
|
51
|
+
* For SelectQuery components, returns headerComments
|
|
52
|
+
* For other components, returns all positioned comments as a flat array
|
|
46
53
|
* @param component The SQL component to get comments from
|
|
47
54
|
* @returns Array of comment strings (empty array if no comments)
|
|
48
55
|
*/
|
|
@@ -5,12 +5,14 @@ import { SqlComponent } from '../models/SqlComponent';
|
|
|
5
5
|
*/
|
|
6
6
|
export class CommentEditor {
|
|
7
7
|
/**
|
|
8
|
-
* Add a comment to a SQL component
|
|
8
|
+
* Add a comment to a SQL component using positioned comments system
|
|
9
9
|
* For SelectQuery components, adds to headerComments for query-level comments
|
|
10
|
+
* For other components, adds as 'before' positioned comment
|
|
10
11
|
* @param component The SQL component to add comment to
|
|
11
12
|
* @param comment The comment text to add
|
|
13
|
+
* @param position Optional position for comment ('before' | 'after'), defaults to 'before'
|
|
12
14
|
*/
|
|
13
|
-
static addComment(component, comment) {
|
|
15
|
+
static addComment(component, comment, position = 'before') {
|
|
14
16
|
// Check if this is a SelectQuery component - add to headerComments for query-level comments
|
|
15
17
|
if (this.isSelectQuery(component)) {
|
|
16
18
|
const selectQuery = component;
|
|
@@ -20,11 +22,8 @@ export class CommentEditor {
|
|
|
20
22
|
selectQuery.headerComments.push(comment);
|
|
21
23
|
}
|
|
22
24
|
else {
|
|
23
|
-
// For other components, add to
|
|
24
|
-
|
|
25
|
-
component.comments = [];
|
|
26
|
-
}
|
|
27
|
-
component.comments.push(comment);
|
|
25
|
+
// For other components, add to positioned comments
|
|
26
|
+
component.addPositionedComments(position, [comment]);
|
|
28
27
|
}
|
|
29
28
|
}
|
|
30
29
|
/**
|
|
@@ -41,12 +40,14 @@ export class CommentEditor {
|
|
|
41
40
|
/**
|
|
42
41
|
* Edit an existing comment by index
|
|
43
42
|
* For SelectQuery components, edits headerComments
|
|
43
|
+
* For other components, edits positioned comments
|
|
44
44
|
* @param component The SQL component containing the comment
|
|
45
45
|
* @param index The index of the comment to edit (0-based)
|
|
46
46
|
* @param newComment The new comment text
|
|
47
|
+
* @param position Position to edit ('before' | 'after'), defaults to 'before' for non-SelectQuery components
|
|
47
48
|
* @throws Error if index is invalid
|
|
48
49
|
*/
|
|
49
|
-
static editComment(component, index, newComment) {
|
|
50
|
+
static editComment(component, index, newComment, position = 'before') {
|
|
50
51
|
var _a, _b;
|
|
51
52
|
if (this.isSelectQuery(component)) {
|
|
52
53
|
const selectQuery = component;
|
|
@@ -56,21 +57,28 @@ export class CommentEditor {
|
|
|
56
57
|
selectQuery.headerComments[index] = newComment;
|
|
57
58
|
}
|
|
58
59
|
else {
|
|
59
|
-
|
|
60
|
-
|
|
60
|
+
const positionedComments = component.getPositionedComments(position);
|
|
61
|
+
if (!positionedComments || index < 0 || index >= positionedComments.length) {
|
|
62
|
+
throw new Error(`Invalid comment index: ${index}. Component has ${(positionedComments === null || positionedComments === void 0 ? void 0 : positionedComments.length) || 0} ${position} positioned comments.`);
|
|
63
|
+
}
|
|
64
|
+
// Update the comment in the positioned comments
|
|
65
|
+
const positioned = (_b = component.positionedComments) === null || _b === void 0 ? void 0 : _b.find(pc => pc.position === position);
|
|
66
|
+
if (positioned) {
|
|
67
|
+
positioned.comments[index] = newComment;
|
|
61
68
|
}
|
|
62
|
-
component.comments[index] = newComment;
|
|
63
69
|
}
|
|
64
70
|
}
|
|
65
71
|
/**
|
|
66
72
|
* Delete a comment by index
|
|
67
73
|
* For SelectQuery components, deletes from headerComments
|
|
74
|
+
* For other components, deletes from positioned comments
|
|
68
75
|
* @param component The SQL component containing the comment
|
|
69
76
|
* @param index The index of the comment to delete (0-based)
|
|
77
|
+
* @param position Position to delete from ('before' | 'after'), defaults to 'before' for non-SelectQuery components
|
|
70
78
|
* @throws Error if index is invalid
|
|
71
79
|
*/
|
|
72
|
-
static deleteComment(component, index) {
|
|
73
|
-
var _a, _b;
|
|
80
|
+
static deleteComment(component, index, position = 'before') {
|
|
81
|
+
var _a, _b, _c, _d;
|
|
74
82
|
if (this.isSelectQuery(component)) {
|
|
75
83
|
const selectQuery = component;
|
|
76
84
|
if (!selectQuery.headerComments || index < 0 || index >= selectQuery.headerComments.length) {
|
|
@@ -82,12 +90,21 @@ export class CommentEditor {
|
|
|
82
90
|
}
|
|
83
91
|
}
|
|
84
92
|
else {
|
|
85
|
-
|
|
86
|
-
|
|
93
|
+
const positionedComments = component.getPositionedComments(position);
|
|
94
|
+
if (!positionedComments || index < 0 || index >= positionedComments.length) {
|
|
95
|
+
throw new Error(`Invalid comment index: ${index}. Component has ${(positionedComments === null || positionedComments === void 0 ? void 0 : positionedComments.length) || 0} ${position} positioned comments.`);
|
|
87
96
|
}
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
97
|
+
// Delete the comment from positioned comments
|
|
98
|
+
const positioned = (_b = component.positionedComments) === null || _b === void 0 ? void 0 : _b.find(pc => pc.position === position);
|
|
99
|
+
if (positioned) {
|
|
100
|
+
positioned.comments.splice(index, 1);
|
|
101
|
+
// Clean up empty positioned comment groups
|
|
102
|
+
if (positioned.comments.length === 0) {
|
|
103
|
+
component.positionedComments = ((_c = component.positionedComments) === null || _c === void 0 ? void 0 : _c.filter(pc => pc.position !== position)) || null;
|
|
104
|
+
if (((_d = component.positionedComments) === null || _d === void 0 ? void 0 : _d.length) === 0) {
|
|
105
|
+
component.positionedComments = null;
|
|
106
|
+
}
|
|
107
|
+
}
|
|
91
108
|
}
|
|
92
109
|
}
|
|
93
110
|
}
|
|
@@ -101,12 +118,13 @@ export class CommentEditor {
|
|
|
101
118
|
selectQuery.headerComments = null;
|
|
102
119
|
}
|
|
103
120
|
else {
|
|
104
|
-
component.
|
|
121
|
+
component.positionedComments = null;
|
|
105
122
|
}
|
|
106
123
|
}
|
|
107
124
|
/**
|
|
108
125
|
* Get all comments from a component
|
|
109
|
-
* For SelectQuery components, returns headerComments
|
|
126
|
+
* For SelectQuery components, returns headerComments
|
|
127
|
+
* For other components, returns all positioned comments as a flat array
|
|
110
128
|
* @param component The SQL component to get comments from
|
|
111
129
|
* @returns Array of comment strings (empty array if no comments)
|
|
112
130
|
*/
|
|
@@ -115,7 +133,7 @@ export class CommentEditor {
|
|
|
115
133
|
const selectQuery = component;
|
|
116
134
|
return selectQuery.headerComments || [];
|
|
117
135
|
}
|
|
118
|
-
return component.
|
|
136
|
+
return component.getAllPositionedComments();
|
|
119
137
|
}
|
|
120
138
|
/**
|
|
121
139
|
* Find all components in the AST that have comments containing the search text
|
|
@@ -130,8 +148,9 @@ export class CommentEditor {
|
|
|
130
148
|
const traverse = (component) => {
|
|
131
149
|
if (component && component instanceof SqlComponent) {
|
|
132
150
|
let hasMatchingComment = false;
|
|
133
|
-
// Check
|
|
134
|
-
|
|
151
|
+
// Check positioned comments
|
|
152
|
+
const allPositionedComments = component.getAllPositionedComments();
|
|
153
|
+
if (allPositionedComments && allPositionedComments.some(c => {
|
|
135
154
|
const commentText = caseSensitive ? c : c.toLowerCase();
|
|
136
155
|
return commentText.includes(searchTerm);
|
|
137
156
|
})) {
|
|
@@ -191,6 +210,23 @@ export class CommentEditor {
|
|
|
191
210
|
}
|
|
192
211
|
}
|
|
193
212
|
}
|
|
213
|
+
// Handle positioned comments
|
|
214
|
+
if (component.positionedComments) {
|
|
215
|
+
for (const posComment of component.positionedComments) {
|
|
216
|
+
if (posComment.comments) {
|
|
217
|
+
for (let i = 0; i < posComment.comments.length; i++) {
|
|
218
|
+
const originalComment = posComment.comments[i];
|
|
219
|
+
const flags = caseSensitive ? 'g' : 'gi';
|
|
220
|
+
const regex = new RegExp(searchText.replace(/[.*+?^${}()|[\]\\]/g, '\\$&'), flags);
|
|
221
|
+
const newComment = originalComment.replace(regex, replaceText);
|
|
222
|
+
if (newComment !== originalComment) {
|
|
223
|
+
posComment.comments[i] = newComment;
|
|
224
|
+
replacementCount++;
|
|
225
|
+
}
|
|
226
|
+
}
|
|
227
|
+
}
|
|
228
|
+
}
|
|
229
|
+
}
|
|
194
230
|
// Handle headerComments for SelectQuery components
|
|
195
231
|
if (this.isSelectQuery(component)) {
|
|
196
232
|
const selectQuery = component;
|
|
@@ -232,8 +268,10 @@ export class CommentEditor {
|
|
|
232
268
|
let count = 0;
|
|
233
269
|
const traverse = (component) => {
|
|
234
270
|
if (component && component instanceof SqlComponent) {
|
|
235
|
-
|
|
236
|
-
|
|
271
|
+
// Count positioned comments
|
|
272
|
+
const positionedComments = component.getAllPositionedComments();
|
|
273
|
+
if (positionedComments) {
|
|
274
|
+
count += positionedComments.length;
|
|
237
275
|
}
|
|
238
276
|
// Count headerComments for SelectQuery components
|
|
239
277
|
if (this.isSelectQuery(component)) {
|
|
@@ -267,9 +305,10 @@ export class CommentEditor {
|
|
|
267
305
|
const results = [];
|
|
268
306
|
const traverse = (component) => {
|
|
269
307
|
if (component && component instanceof SqlComponent) {
|
|
270
|
-
// Add
|
|
271
|
-
|
|
272
|
-
|
|
308
|
+
// Add positioned comments
|
|
309
|
+
const positionedComments = component.getAllPositionedComments();
|
|
310
|
+
if (positionedComments) {
|
|
311
|
+
positionedComments.forEach((comment, index) => {
|
|
273
312
|
results.push({ comment, component, index });
|
|
274
313
|
});
|
|
275
314
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"CommentEditor.js","sourceRoot":"","sources":["../../../../src/utils/CommentEditor.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,wBAAwB,CAAC;AAGtD;;;GAGG;AACH,MAAM,OAAO,aAAa;IACtB
|
|
1
|
+
{"version":3,"file":"CommentEditor.js","sourceRoot":"","sources":["../../../../src/utils/CommentEditor.ts"],"names":[],"mappings":"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"}
|
|
@@ -21,6 +21,7 @@ export declare class StringUtils {
|
|
|
21
21
|
* Skip block comment.
|
|
22
22
|
*/
|
|
23
23
|
private static readBlockComment;
|
|
24
|
+
private static processBlockCommentContent;
|
|
24
25
|
/**
|
|
25
26
|
* Skip white space characters and SQL comments.
|
|
26
27
|
* @returns Object containing the new position and an array of skipped comments
|
|
@@ -76,36 +76,53 @@ export class StringUtils {
|
|
|
76
76
|
* Skip block comment.
|
|
77
77
|
*/
|
|
78
78
|
static readBlockComment(input, position) {
|
|
79
|
-
if (position +
|
|
79
|
+
if (position + 1 >= input.length) {
|
|
80
80
|
return { newPosition: position, comments: null };
|
|
81
81
|
}
|
|
82
|
-
// '/'=47, '*'=42
|
|
83
|
-
if (input.charCodeAt(position)
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
82
|
+
// Fast check for /* ('/'=47, '*'=42)
|
|
83
|
+
if (input.charCodeAt(position) !== 47 || input.charCodeAt(position + 1) !== 42) {
|
|
84
|
+
return { newPosition: position, comments: null };
|
|
85
|
+
}
|
|
86
|
+
// Treat Oracle style hints (/*+) as non-comment so other readers can process them. ('+'=43)
|
|
87
|
+
const isHint = position + 2 < input.length && input.charCodeAt(position + 2) === 43;
|
|
88
|
+
if (isHint) {
|
|
89
|
+
return { newPosition: position, comments: null };
|
|
90
|
+
}
|
|
91
|
+
const start = position;
|
|
92
|
+
position += 2;
|
|
93
|
+
while (position + 1 < input.length) {
|
|
94
|
+
// Look for closing */ ('*'/=42, '/'=47)
|
|
95
|
+
if (input.charCodeAt(position) === 42 && input.charCodeAt(position + 1) === 47) {
|
|
96
|
+
position += 2;
|
|
97
|
+
const processedLines = this.processBlockCommentContent(input.slice(start + 2, position - 2));
|
|
98
|
+
return { newPosition: position, comments: processedLines };
|
|
99
|
+
}
|
|
100
|
+
position++;
|
|
101
|
+
}
|
|
102
|
+
// Unterminated comment: consume rest of input and return collected lines.
|
|
103
|
+
const processedLinesUnterminated = this.processBlockCommentContent(input.slice(start + 2));
|
|
104
|
+
return { newPosition: input.length, comments: processedLinesUnterminated };
|
|
105
|
+
}
|
|
106
|
+
static processBlockCommentContent(rawContent) {
|
|
107
|
+
const rawLines = rawContent.replace(/\r/g, '').split('\n');
|
|
108
|
+
const processedLines = [];
|
|
109
|
+
for (const rawLine of rawLines) {
|
|
110
|
+
const trimmedLine = rawLine.trim();
|
|
111
|
+
const isSeparatorLine = /^\s*[-=_+*#]+\s*$/.test(rawLine);
|
|
112
|
+
if (trimmedLine !== '' || isSeparatorLine) {
|
|
113
|
+
processedLines.push(isSeparatorLine ? rawLine.trim() : trimmedLine);
|
|
114
|
+
}
|
|
115
|
+
else {
|
|
116
|
+
processedLines.push('');
|
|
105
117
|
}
|
|
106
|
-
throw new Error(`Block comment is not closed. position: ${position}`);
|
|
107
118
|
}
|
|
108
|
-
|
|
119
|
+
while (processedLines.length > 0 && processedLines[0] === '') {
|
|
120
|
+
processedLines.shift();
|
|
121
|
+
}
|
|
122
|
+
while (processedLines.length > 0 && processedLines[processedLines.length - 1] === '') {
|
|
123
|
+
processedLines.pop();
|
|
124
|
+
}
|
|
125
|
+
return processedLines;
|
|
109
126
|
}
|
|
110
127
|
/**
|
|
111
128
|
* Skip white space characters and SQL comments.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"stringUtils.js","sourceRoot":"","sources":["../../../../src/utils/stringUtils.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"stringUtils.js","sourceRoot":"","sources":["../../../../src/utils/stringUtils.ts"],"names":[],"mappings":"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"}
|