rawsql-ts 0.11.10-beta → 0.11.12-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.
Files changed (63) hide show
  1. package/dist/esm/index.min.js +12 -12
  2. package/dist/esm/index.min.js.map +4 -4
  3. package/dist/esm/src/models/SqlPrintToken.d.ts +6 -4
  4. package/dist/esm/src/models/SqlPrintToken.js +2 -0
  5. package/dist/esm/src/models/SqlPrintToken.js.map +1 -1
  6. package/dist/esm/src/parsers/FunctionExpressionParser.js +5 -4
  7. package/dist/esm/src/parsers/FunctionExpressionParser.js.map +1 -1
  8. package/dist/esm/src/parsers/SelectQueryParser.js +3 -2
  9. package/dist/esm/src/parsers/SelectQueryParser.js.map +1 -1
  10. package/dist/esm/src/parsers/SqlPrintTokenParser.d.ts +40 -0
  11. package/dist/esm/src/parsers/SqlPrintTokenParser.js +103 -8
  12. package/dist/esm/src/parsers/SqlPrintTokenParser.js.map +1 -1
  13. package/dist/esm/src/parsers/ValueParser.js +4 -4
  14. package/dist/esm/src/parsers/ValueParser.js.map +1 -1
  15. package/dist/esm/src/reporting/models/DataFlowGraph.d.ts +3 -1
  16. package/dist/esm/src/reporting/models/DataFlowGraph.js +5 -27
  17. package/dist/esm/src/reporting/models/DataFlowGraph.js.map +1 -1
  18. package/dist/esm/src/reporting/models/DataFlowNode.d.ts +8 -2
  19. package/dist/esm/src/reporting/models/DataFlowNode.js +34 -10
  20. package/dist/esm/src/reporting/models/DataFlowNode.js.map +1 -1
  21. package/dist/esm/src/reporting/services/ProcessHandler.d.ts +6 -42
  22. package/dist/esm/src/reporting/services/ProcessHandler.js +9 -164
  23. package/dist/esm/src/reporting/services/ProcessHandler.js.map +1 -1
  24. package/dist/esm/src/transformers/QueryFlowDiagramGenerator.js +11 -1
  25. package/dist/esm/src/transformers/QueryFlowDiagramGenerator.js.map +1 -1
  26. package/dist/esm/src/transformers/SqlFormatter.d.ts +8 -1
  27. package/dist/esm/src/transformers/SqlFormatter.js.map +1 -1
  28. package/dist/esm/src/transformers/SqlPrinter.d.ts +55 -7
  29. package/dist/esm/src/transformers/SqlPrinter.js +151 -32
  30. package/dist/esm/src/transformers/SqlPrinter.js.map +1 -1
  31. package/dist/esm/tsconfig.browser.tsbuildinfo +1 -1
  32. package/dist/index.min.js +10 -10
  33. package/dist/index.min.js.map +4 -4
  34. package/dist/src/models/SqlPrintToken.d.ts +6 -4
  35. package/dist/src/models/SqlPrintToken.js +2 -0
  36. package/dist/src/models/SqlPrintToken.js.map +1 -1
  37. package/dist/src/parsers/FunctionExpressionParser.js +5 -4
  38. package/dist/src/parsers/FunctionExpressionParser.js.map +1 -1
  39. package/dist/src/parsers/SelectQueryParser.js +3 -2
  40. package/dist/src/parsers/SelectQueryParser.js.map +1 -1
  41. package/dist/src/parsers/SqlPrintTokenParser.d.ts +40 -0
  42. package/dist/src/parsers/SqlPrintTokenParser.js +103 -8
  43. package/dist/src/parsers/SqlPrintTokenParser.js.map +1 -1
  44. package/dist/src/parsers/ValueParser.js +4 -4
  45. package/dist/src/parsers/ValueParser.js.map +1 -1
  46. package/dist/src/reporting/models/DataFlowGraph.d.ts +3 -1
  47. package/dist/src/reporting/models/DataFlowGraph.js +5 -27
  48. package/dist/src/reporting/models/DataFlowGraph.js.map +1 -1
  49. package/dist/src/reporting/models/DataFlowNode.d.ts +8 -2
  50. package/dist/src/reporting/models/DataFlowNode.js +34 -10
  51. package/dist/src/reporting/models/DataFlowNode.js.map +1 -1
  52. package/dist/src/reporting/services/ProcessHandler.d.ts +6 -42
  53. package/dist/src/reporting/services/ProcessHandler.js +9 -164
  54. package/dist/src/reporting/services/ProcessHandler.js.map +1 -1
  55. package/dist/src/transformers/QueryFlowDiagramGenerator.js +11 -1
  56. package/dist/src/transformers/QueryFlowDiagramGenerator.js.map +1 -1
  57. package/dist/src/transformers/SqlFormatter.d.ts +8 -1
  58. package/dist/src/transformers/SqlFormatter.js.map +1 -1
  59. package/dist/src/transformers/SqlPrinter.d.ts +55 -7
  60. package/dist/src/transformers/SqlPrinter.js +151 -32
  61. package/dist/src/transformers/SqlPrinter.js.map +1 -1
  62. package/dist/tsconfig.tsbuildinfo +1 -1
  63. package/package.json +1 -1
@@ -1 +1 @@
1
- {"version":3,"file":"DataFlowNode.js","sourceRoot":"","sources":["../../../../src/reporting/models/DataFlowNode.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"DataFlowNode.js","sourceRoot":"","sources":["../../../../src/reporting/models/DataFlowNode.ts"],"names":[],"mappings":"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"}
@@ -2,54 +2,18 @@ import { SimpleSelectQuery } from '../../models/SimpleSelectQuery';
2
2
  import { DataFlowGraph } from '../models/DataFlowGraph';
3
3
  import { DataSourceHandler } from './DataSourceHandler';
4
4
  /**
5
- * Handles the processing of SQL clauses (WHERE, GROUP BY, HAVING, etc.)
5
+ * Handles the processing of SQL clauses for data flow generation
6
+ * Note: This class is simplified to focus on data flow only,
7
+ * filtering clauses like WHERE, GROUP BY, HAVING, etc. are excluded
6
8
  */
7
9
  export declare class ProcessHandler {
8
10
  private graph;
9
11
  private dataSourceHandler;
10
12
  constructor(graph: DataFlowGraph, dataSourceHandler: DataSourceHandler);
11
13
  /**
12
- * Processes SQL clauses in the correct execution order
14
+ * Processes SQL clauses for data flow diagram generation
15
+ * Returns the current node ID without adding process nodes
16
+ * since we focus only on data flow (sources, joins, unions)
13
17
  */
14
18
  processQueryClauses(query: SimpleSelectQuery, context: string, currentNodeId: string, cteNames: Set<string>, queryProcessor: (query: any, context: string, cteNames: Set<string>) => string): string;
15
- /**
16
- * Processes WHERE clause including subqueries
17
- */
18
- private processWhereClause;
19
- /**
20
- * Processes GROUP BY clause
21
- */
22
- private processGroupByClause;
23
- /**
24
- * Processes HAVING clause
25
- */
26
- private processHavingClause;
27
- /**
28
- * Processes SELECT clause
29
- */
30
- private processSelectClause;
31
- /**
32
- * Processes ORDER BY clause
33
- */
34
- private processOrderByClause;
35
- /**
36
- * Processes LIMIT/OFFSET clause
37
- */
38
- private processLimitClause;
39
- /**
40
- * Determines if a SELECT node should be added
41
- */
42
- private shouldAddSelectNode;
43
- /**
44
- * Processes WHERE clause to find subqueries (EXISTS, IN, etc.)
45
- */
46
- private processWhereSubqueries;
47
- /**
48
- * Recursively processes ValueComponent to find InlineQuery (subqueries)
49
- */
50
- private processValueComponent;
51
- /**
52
- * Processes only the tables from a query for EXISTS/NOT EXISTS conditions
53
- */
54
- private processQueryTablesOnly;
55
19
  }
@@ -1,9 +1,10 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.ProcessHandler = void 0;
4
- const ValueComponent_1 = require("../../models/ValueComponent");
5
4
  /**
6
- * Handles the processing of SQL clauses (WHERE, GROUP BY, HAVING, etc.)
5
+ * Handles the processing of SQL clauses for data flow generation
6
+ * Note: This class is simplified to focus on data flow only,
7
+ * filtering clauses like WHERE, GROUP BY, HAVING, etc. are excluded
7
8
  */
8
9
  class ProcessHandler {
9
10
  constructor(graph, dataSourceHandler) {
@@ -11,170 +12,14 @@ class ProcessHandler {
11
12
  this.dataSourceHandler = dataSourceHandler;
12
13
  }
13
14
  /**
14
- * Processes SQL clauses in the correct execution order
15
+ * Processes SQL clauses for data flow diagram generation
16
+ * Returns the current node ID without adding process nodes
17
+ * since we focus only on data flow (sources, joins, unions)
15
18
  */
16
19
  processQueryClauses(query, context, currentNodeId, cteNames, queryProcessor) {
17
- let resultNodeId = currentNodeId;
18
- // 2. Process WHERE clause
19
- if (query.whereClause && resultNodeId) {
20
- resultNodeId = this.processWhereClause(query.whereClause, context, resultNodeId, cteNames, queryProcessor);
21
- }
22
- // 3. Process GROUP BY clause
23
- if (query.groupByClause && resultNodeId) {
24
- resultNodeId = this.processGroupByClause(context, resultNodeId);
25
- }
26
- // 4. Process HAVING clause
27
- if (query.havingClause && resultNodeId) {
28
- resultNodeId = this.processHavingClause(context, resultNodeId);
29
- }
30
- // 5. Process SELECT clause - only add if needed
31
- if (this.shouldAddSelectNode(query, context)) {
32
- resultNodeId = this.processSelectClause(context, resultNodeId);
33
- }
34
- // 6. Process ORDER BY clause
35
- if (query.orderByClause && resultNodeId) {
36
- resultNodeId = this.processOrderByClause(context, resultNodeId);
37
- }
38
- // 7. Process LIMIT/OFFSET clause
39
- if ((query.limitClause || query.offsetClause) && resultNodeId) {
40
- resultNodeId = this.processLimitClause(context, resultNodeId, !!query.offsetClause);
41
- }
42
- return resultNodeId;
43
- }
44
- /**
45
- * Processes WHERE clause including subqueries
46
- */
47
- processWhereClause(whereClause, context, currentNodeId, cteNames, queryProcessor) {
48
- const whereNode = this.graph.createProcessNode('where', context);
49
- // Connect FROM result to WHERE
50
- this.graph.addConnection(currentNodeId, whereNode.id);
51
- // Process WHERE subqueries
52
- const whereSubqueryInfo = this.processWhereSubqueries(whereClause, context, cteNames, queryProcessor);
53
- // Connect WHERE subqueries to WHERE node
54
- for (const subqueryInfo of whereSubqueryInfo) {
55
- this.graph.addConnection(subqueryInfo.nodeId, whereNode.id, subqueryInfo.operator);
56
- }
57
- return whereNode.id;
58
- }
59
- /**
60
- * Processes GROUP BY clause
61
- */
62
- processGroupByClause(context, currentNodeId) {
63
- const groupByNode = this.graph.createProcessNode('group by', context);
64
- this.graph.addConnection(currentNodeId, groupByNode.id);
65
- return groupByNode.id;
66
- }
67
- /**
68
- * Processes HAVING clause
69
- */
70
- processHavingClause(context, currentNodeId) {
71
- const havingNode = this.graph.createProcessNode('having', context);
72
- this.graph.addConnection(currentNodeId, havingNode.id);
73
- return havingNode.id;
74
- }
75
- /**
76
- * Processes SELECT clause
77
- */
78
- processSelectClause(context, currentNodeId) {
79
- const selectNode = this.graph.createProcessNode('select', context);
80
- this.graph.addConnection(currentNodeId, selectNode.id);
81
- return selectNode.id;
82
- }
83
- /**
84
- * Processes ORDER BY clause
85
- */
86
- processOrderByClause(context, currentNodeId) {
87
- const orderByNode = this.graph.createProcessNode('order by', context);
88
- this.graph.addConnection(currentNodeId, orderByNode.id);
89
- return orderByNode.id;
90
- }
91
- /**
92
- * Processes LIMIT/OFFSET clause
93
- */
94
- processLimitClause(context, currentNodeId, hasOffset) {
95
- const limitNode = this.graph.createProcessNode(hasOffset ? 'limit/offset' : 'limit', context);
96
- this.graph.addConnection(currentNodeId, limitNode.id);
97
- return limitNode.id;
98
- }
99
- /**
100
- * Determines if a SELECT node should be added
101
- */
102
- shouldAddSelectNode(query, context) {
103
- // Always add SELECT node - UNION combines SELECT results, not raw data sources
104
- return true;
105
- }
106
- /**
107
- * Processes WHERE clause to find subqueries (EXISTS, IN, etc.)
108
- */
109
- processWhereSubqueries(whereClause, context, cteNames, queryProcessor) {
110
- const subqueryInfo = [];
111
- this.processValueComponent(whereClause.condition, context, cteNames, queryProcessor, subqueryInfo);
112
- return subqueryInfo;
113
- }
114
- /**
115
- * Recursively processes ValueComponent to find InlineQuery (subqueries)
116
- */
117
- processValueComponent(value, context, cteNames, queryProcessor, subqueryInfo) {
118
- if (value instanceof ValueComponent_1.InlineQuery) {
119
- const subqueryNodeId = queryProcessor(value.selectQuery, `${context}_where_subquery`, cteNames);
120
- subqueryInfo.push({ nodeId: subqueryNodeId, operator: 'SUBQUERY' });
121
- }
122
- else if (value instanceof ValueComponent_1.FunctionCall) {
123
- const functionName = value.qualifiedName.name.toString().toLowerCase();
124
- if (functionName === 'exists' && value.argument instanceof ValueComponent_1.InlineQuery) {
125
- const subqueryNodeId = queryProcessor(value.argument.selectQuery, `${context}_where_subquery`, cteNames);
126
- subqueryInfo.push({ nodeId: subqueryNodeId, operator: 'EXISTS' });
127
- }
128
- else if (value.argument) {
129
- this.processValueComponent(value.argument, context, cteNames, queryProcessor, subqueryInfo);
130
- }
131
- }
132
- else if (value instanceof ValueComponent_1.UnaryExpression) {
133
- const operator = value.operator.value.toLowerCase();
134
- if ((operator === 'exists' || operator === 'not exists') && value.expression instanceof ValueComponent_1.InlineQuery) {
135
- this.processQueryTablesOnly(value.expression.selectQuery, context, cteNames, subqueryInfo, operator.toUpperCase());
136
- }
137
- else {
138
- this.processValueComponent(value.expression, context, cteNames, queryProcessor, subqueryInfo);
139
- }
140
- }
141
- else if (value instanceof ValueComponent_1.BinaryExpression) {
142
- const operator = value.operator.value.toLowerCase();
143
- if ((operator === 'in' || operator === 'not in') && value.right instanceof ValueComponent_1.InlineQuery) {
144
- this.processQueryTablesOnly(value.right.selectQuery, context, cteNames, subqueryInfo, operator.toUpperCase());
145
- }
146
- else {
147
- this.processValueComponent(value.left, context, cteNames, queryProcessor, subqueryInfo);
148
- this.processValueComponent(value.right, context, cteNames, queryProcessor, subqueryInfo);
149
- }
150
- }
151
- else if (value && typeof value === 'object') {
152
- for (const [key, val] of Object.entries(value)) {
153
- if (val && typeof val === 'object') {
154
- if (Array.isArray(val)) {
155
- val.forEach(item => {
156
- if (item && typeof item === 'object' && 'selectQuery' in item) {
157
- this.processValueComponent(item, context, cteNames, queryProcessor, subqueryInfo);
158
- }
159
- });
160
- }
161
- else if ('selectQuery' in val) {
162
- this.processValueComponent(val, context, cteNames, queryProcessor, subqueryInfo);
163
- }
164
- }
165
- }
166
- }
167
- }
168
- /**
169
- * Processes only the tables from a query for EXISTS/NOT EXISTS conditions
170
- */
171
- processQueryTablesOnly(query, context, cteNames, subqueryInfo, operator) {
172
- if (query.fromClause) {
173
- const tableNodes = this.dataSourceHandler.extractTableNodeIds(query.fromClause, cteNames);
174
- for (const tableNodeId of tableNodes) {
175
- subqueryInfo.push({ nodeId: tableNodeId, operator });
176
- }
177
- }
20
+ // Return the current node without adding process nodes
21
+ // Data flow focused: only sources, joins, and unions are shown
22
+ return currentNodeId;
178
23
  }
179
24
  }
180
25
  exports.ProcessHandler = ProcessHandler;
@@ -1 +1 @@
1
- {"version":3,"file":"ProcessHandler.js","sourceRoot":"","sources":["../../../../src/reporting/services/ProcessHandler.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ProcessHandler.js","sourceRoot":"","sources":["../../../../src/reporting/services/ProcessHandler.ts"],"names":[],"mappings":";;;AAIA;;;;GAIG;AACH,MAAa,cAAc;IACvB,YACY,KAAoB,EACpB,iBAAoC;QADpC,UAAK,GAAL,KAAK,CAAe;QACpB,sBAAiB,GAAjB,iBAAiB,CAAmB;IAC7C,CAAC;IAEJ;;;;OAIG;IACH,mBAAmB,CACf,KAAwB,EACxB,OAAe,EACf,aAAqB,EACrB,QAAqB,EACrB,cAA8E;QAE9E,uDAAuD;QACvD,+DAA+D;QAC/D,OAAO,aAAa,CAAC;IACzB,CAAC;CACJ;AAtBD,wCAsBC"}
@@ -60,7 +60,15 @@ class QueryFlowDiagramGenerator {
60
60
  let currentNodeId = '';
61
61
  // 1. Process FROM clause (including JOINs)
62
62
  if (query.fromClause) {
63
- currentNodeId = this.joinHandler.processFromClause(query.fromClause, cteNames, this.processQuery.bind(this));
63
+ const hasJoins = query.fromClause.joins && query.fromClause.joins.length > 0;
64
+ if (hasJoins) {
65
+ // If there are JOINs, process normally (data source -> JOIN -> SELECT)
66
+ currentNodeId = this.joinHandler.processFromClause(query.fromClause, cteNames, this.processQuery.bind(this));
67
+ }
68
+ else {
69
+ // If no JOINs, connect data source directly to SELECT
70
+ currentNodeId = this.dataSourceHandler.processSource(query.fromClause.source, cteNames, this.processQuery.bind(this));
71
+ }
64
72
  }
65
73
  // 2-7. Process other clauses in execution order
66
74
  if (currentNodeId) {
@@ -92,6 +100,7 @@ class QueryFlowDiagramGenerator {
92
100
  if (rightNodeId && !this.graph.hasConnection(rightNodeId, operationNode.id)) {
93
101
  this.graph.addConnection(rightNodeId, operationNode.id);
94
102
  }
103
+ // Return the operation node directly without adding SELECT
95
104
  return operationNode.id;
96
105
  }
97
106
  processMultiPartOperation(parts, operator, context, cteNames) {
@@ -111,6 +120,7 @@ class QueryFlowDiagramGenerator {
111
120
  this.graph.addConnection(partNodeId, operationNode.id);
112
121
  }
113
122
  }
123
+ // Return the operation node directly without adding SELECT
114
124
  return operationNode.id;
115
125
  }
116
126
  handleOutputNode(currentNodeId, context) {
@@ -1 +1 @@
1
- {"version":3,"file":"QueryFlowDiagramGenerator.js","sourceRoot":"","sources":["../../../src/transformers/QueryFlowDiagramGenerator.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"QueryFlowDiagramGenerator.js","sourceRoot":"","sources":["../../../src/transformers/QueryFlowDiagramGenerator.ts"],"names":[],"mappings":"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"}
@@ -3,6 +3,13 @@ import { IndentCharOption, NewlineOption } from './LinePrinter';
3
3
  import { SqlComponent } from '../models/SqlComponent';
4
4
  export declare const VALID_PRESETS: readonly ["mysql", "postgres", "sqlserver", "sqlite"];
5
5
  export type PresetName = (typeof VALID_PRESETS)[number];
6
+ /**
7
+ * WithClauseStyle determines how WITH clauses are formatted.
8
+ * - 'standard': Normal formatting with proper indentation
9
+ * - 'cte-oneline': Individual CTEs are formatted as one-liners
10
+ * - 'full-oneline': Entire WITH clause is formatted as one line
11
+ */
12
+ export type WithClauseStyle = 'standard' | 'cte-oneline' | 'full-oneline';
6
13
  /**
7
14
  * SqlFormatter class combines parsing and printing of SQL queries into a single interface.
8
15
  */
@@ -28,7 +35,7 @@ export declare class SqlFormatter {
28
35
  andBreak?: AndBreakStyle;
29
36
  exportComment?: boolean;
30
37
  strictCommentPlacement?: boolean;
31
- cteOneline?: boolean;
38
+ withClauseStyle?: WithClauseStyle;
32
39
  }); /**
33
40
  * Formats a SQL query string with the given parameters.
34
41
  * @param sqlText The SQL query string to format.
@@ -1 +1 @@
1
- {"version":3,"file":"SqlFormatter.js","sourceRoot":"","sources":["../../../src/transformers/SqlFormatter.ts"],"names":[],"mappings":";;;AAAA,wEAA+F;AAC/F,6CAA0E;AAK1E,4CAA4C;AAC/B,QAAA,aAAa,GAAG,CAAC,OAAO,EAAE,UAAU,EAAE,WAAW,EAAE,QAAQ,CAAU,CAAC;AAGnF;;GAEG;AACH,MAAa,YAAY;IAIrB,YAAY,UAcR,EAAE;;QAEF,MAAM,YAAY,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,6BAAO,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;QAE1E,IAAI,OAAO,CAAC,MAAM,IAAI,CAAC,YAAY,EAAE,CAAC;YAClC,MAAM,IAAI,KAAK,CAAC,mBAAmB,OAAO,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,iCAAiC;QAC3F,CAAC;QAED,MAAM,aAAa,GAAG;YAClB,GAAG,YAAY,EAAE,6BAA6B;YAC9C,gBAAgB,EAAE,MAAA,OAAO,CAAC,gBAAgB,mCAAI,YAAY,aAAZ,YAAY,uBAAZ,YAAY,CAAE,gBAAgB;YAC5E,eAAe,EAAE,MAAA,OAAO,CAAC,eAAe,mCAAI,YAAY,aAAZ,YAAY,uBAAZ,YAAY,CAAE,eAAe;YACzE,cAAc,EAAE,MAAA,OAAO,CAAC,cAAc,mCAAI,YAAY,aAAZ,YAAY,uBAAZ,YAAY,CAAE,cAAc;SACzE,CAAC;QAEF,IAAI,CAAC,MAAM,GAAG,IAAI,yCAAmB,CAAC,aAAa,CAAC,CAAC;QACrD,IAAI,CAAC,OAAO,GAAG,IAAI,uBAAU,CAAC,OAAO,CAAC,CAAC;IAC3C,CAAC,CAAI;;;;;OAKF;IACH,MAAM,CAAC,GAAiB;QACpB,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,GAAG,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;QACjD,MAAM,YAAY,GAAG,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;QAE/C,OAAO,EAAE,YAAY,EAAE,MAAM,EAAE,CAAC;IACpC,CAAC;CACJ;AA/CD,oCA+CC"}
1
+ {"version":3,"file":"SqlFormatter.js","sourceRoot":"","sources":["../../../src/transformers/SqlFormatter.ts"],"names":[],"mappings":";;;AAAA,wEAA+F;AAC/F,6CAA0E;AAK1E,4CAA4C;AAC/B,QAAA,aAAa,GAAG,CAAC,OAAO,EAAE,UAAU,EAAE,WAAW,EAAE,QAAQ,CAAU,CAAC;AAWnF;;GAEG;AACH,MAAa,YAAY;IAIrB,YAAY,UAcR,EAAE;;QAEF,MAAM,YAAY,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,6BAAO,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;QAE1E,IAAI,OAAO,CAAC,MAAM,IAAI,CAAC,YAAY,EAAE,CAAC;YAClC,MAAM,IAAI,KAAK,CAAC,mBAAmB,OAAO,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,iCAAiC;QAC3F,CAAC;QAED,MAAM,aAAa,GAAG;YAClB,GAAG,YAAY,EAAE,6BAA6B;YAC9C,gBAAgB,EAAE,MAAA,OAAO,CAAC,gBAAgB,mCAAI,YAAY,aAAZ,YAAY,uBAAZ,YAAY,CAAE,gBAAgB;YAC5E,eAAe,EAAE,MAAA,OAAO,CAAC,eAAe,mCAAI,YAAY,aAAZ,YAAY,uBAAZ,YAAY,CAAE,eAAe;YACzE,cAAc,EAAE,MAAA,OAAO,CAAC,cAAc,mCAAI,YAAY,aAAZ,YAAY,uBAAZ,YAAY,CAAE,cAAc;SACzE,CAAC;QAEF,IAAI,CAAC,MAAM,GAAG,IAAI,yCAAmB,CAAC,aAAa,CAAC,CAAC;QACrD,IAAI,CAAC,OAAO,GAAG,IAAI,uBAAU,CAAC,OAAO,CAAC,CAAC;IAC3C,CAAC,CAAI;;;;;OAKF;IACH,MAAM,CAAC,GAAiB;QACpB,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,GAAG,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;QACjD,MAAM,YAAY,GAAG,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;QAE/C,OAAO,EAAE,YAAY,EAAE,MAAM,EAAE,CAAC;IACpC,CAAC;CACJ;AA/CD,oCA+CC"}
@@ -1,5 +1,6 @@
1
1
  import { SqlPrintToken, SqlPrintTokenContainerType } from "../models/SqlPrintToken";
2
2
  import { IndentCharOption, NewlineOption } from "./LinePrinter";
3
+ import { WithClauseStyle } from "./SqlFormatter";
3
4
  /**
4
5
  * CommaBreakStyle determines how commas are placed in formatted SQL output.
5
6
  * - 'none': No line break for commas
@@ -36,8 +37,8 @@ export interface SqlPrinterOptions {
36
37
  strictCommentPlacement?: boolean;
37
38
  /** Container types that should increase indentation level */
38
39
  indentIncrementContainerTypes?: SqlPrintTokenContainerType[];
39
- /** Whether to format CTE parts as one-liners (default: false) */
40
- cteOneline?: boolean;
40
+ /** WITH clause formatting style (default: 'standard') */
41
+ withClauseStyle?: WithClauseStyle;
41
42
  }
42
43
  /**
43
44
  * SqlPrinter formats a SqlPrintToken tree into a SQL string with flexible style options.
@@ -47,14 +48,15 @@ export interface SqlPrinterOptions {
47
48
  * - Line break styles for commas and AND operators
48
49
  * - Keyword case transformation
49
50
  * - Comment handling
50
- * - CTE (Common Table Expression) formatting
51
+ * - WITH clause formatting styles
51
52
  *
52
53
  * @example
53
54
  * const printer = new SqlPrinter({
54
55
  * indentChar: ' ',
55
56
  * indentSize: 1,
56
57
  * keywordCase: 'upper',
57
- * commaBreak: 'after'
58
+ * commaBreak: 'after',
59
+ * withClauseStyle: 'cte-oneline'
58
60
  * });
59
61
  * const formatted = printer.print(sqlToken);
60
62
  */
@@ -75,10 +77,12 @@ export declare class SqlPrinter {
75
77
  exportComment: boolean;
76
78
  /** Whether to use strict comment placement (only clause-level comments, default: false) */
77
79
  strictCommentPlacement: boolean;
78
- /** Whether to format CTE parts as one-liners (default: false) */
79
- cteOneline: boolean;
80
+ /** WITH clause formatting style (default: 'standard') */
81
+ withClauseStyle: WithClauseStyle;
80
82
  private linePrinter;
81
83
  private indentIncrementContainers;
84
+ /** Track whether we are currently inside a WITH clause for full-oneline formatting */
85
+ private insideWithClause;
82
86
  /**
83
87
  * @param options Optional style settings for pretty printing
84
88
  */
@@ -94,12 +98,56 @@ export declare class SqlPrinter {
94
98
  */
95
99
  print(token: SqlPrintToken, level?: number): string;
96
100
  private appendToken;
101
+ /**
102
+ * Determines if a token should be skipped during printing.
103
+ * Tokens are skipped if they have no content and no inner tokens,
104
+ * except for special token types that have semantic meaning despite empty text.
105
+ */
97
106
  private shouldSkipToken;
98
107
  private applyKeywordCase;
99
108
  private handleKeywordToken;
100
109
  private handleCommaToken;
101
110
  private handleAndOperatorToken;
102
111
  private handleJoinClauseToken;
103
- private handleCommentToken;
112
+ /**
113
+ * Handles space tokens with context-aware filtering.
114
+ * Skips spaces in CommentBlocks when in specific CTE modes to prevent duplication.
115
+ */
116
+ private handleSpaceToken;
117
+ /**
118
+ * Determines whether to skip space tokens in CommentBlocks.
119
+ * Prevents duplicate spacing in CTE full-oneline mode only.
120
+ */
121
+ private shouldSkipCommentBlockSpace;
122
+ /**
123
+ * Handles commentNewline tokens with conditional newline behavior.
124
+ * In multiline mode (newline !== ' '), adds a newline after comments.
125
+ * In oneliner mode (newline === ' '), does nothing to keep comments on same line.
126
+ * Skips newlines in CTE modes (full-oneline, cte-oneline) to maintain one-line format.
127
+ */
128
+ private handleCommentNewlineToken;
129
+ /**
130
+ * Determines whether to skip commentNewline tokens.
131
+ * Skips in CTE modes to maintain one-line formatting.
132
+ */
133
+ private shouldSkipCommentNewline;
134
+ /**
135
+ * Determines if the printer is in oneliner mode.
136
+ * Oneliner mode uses single spaces instead of actual newlines.
137
+ */
138
+ private isOnelineMode;
139
+ /**
140
+ * Handles CTE tokens with one-liner formatting.
141
+ * Creates a nested SqlPrinter instance for proper CTE oneline formatting.
142
+ */
104
143
  private handleCteOnelineToken;
144
+ /**
145
+ * Creates a SqlPrinter instance configured for CTE oneline formatting.
146
+ */
147
+ private createCteOnelinePrinter;
148
+ /**
149
+ * Removes duplicate consecutive spaces while preserving single spaces.
150
+ * Simple and safe space normalization for CTE oneline mode.
151
+ */
152
+ private cleanDuplicateSpaces;
105
153
  }