pgsql-deparser 13.16.0 → 14.0.1
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 +88 -45
- package/deparser/deparser.d.ts +301 -0
- package/deparser/deparser.js +10005 -0
- package/deparser/index.d.ts +9 -0
- package/deparser/index.js +17 -0
- package/deparser/utils/list-utils.d.ts +8 -0
- package/deparser/utils/list-utils.js +30 -0
- package/deparser/utils/quote-utils.d.ts +24 -0
- package/deparser/utils/quote-utils.js +89 -0
- package/deparser/utils/sql-formatter.d.ts +16 -0
- package/deparser/utils/sql-formatter.js +40 -0
- package/deparser/visitors/base.d.ts +21 -0
- package/deparser/visitors/base.js +34 -0
- package/esm/deparser/deparser.js +10001 -0
- package/esm/deparser/index.js +13 -0
- package/esm/deparser/utils/list-utils.js +26 -0
- package/esm/deparser/utils/quote-utils.js +85 -0
- package/esm/deparser/utils/sql-formatter.js +36 -0
- package/esm/deparser/visitors/base.js +30 -0
- package/esm/index.js +15 -0
- package/esm/v14-to-v15.js +1220 -0
- package/esm/v14-to-v17-direct.js +67 -0
- package/esm/v15-to-v16.js +2881 -0
- package/esm/v16-to-v17.js +1488 -0
- package/index.d.ts +9 -0
- package/index.js +19 -0
- package/package.json +26 -75
- package/v14-to-v15.d.ts +616 -0
- package/v14-to-v15.js +1224 -0
- package/v14-to-v17-direct.d.ts +23 -0
- package/v14-to-v17-direct.js +71 -0
- package/v15-to-v16.d.ts +627 -0
- package/v15-to-v16.js +2885 -0
- package/v16-to-v17.d.ts +638 -0
- package/v16-to-v17.js +1492 -0
- package/main/deparser.js +0 -3495
- package/main/index.js +0 -10
- package/main/utils/index.js +0 -97
- package/module/deparser.js +0 -3492
- package/module/index.js +0 -3
- package/module/utils/index.js +0 -90
- package/src/deparser.ts +0 -4234
- package/src/index.ts +0 -3
- package/src/utils/index.ts +0 -92
- package/types/deparser.d.ts +0 -119
- package/types/index.d.ts +0 -3
- package/types/utils/index.d.ts +0 -4
|
@@ -0,0 +1,67 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Auto-generated file with types stripped for better tree-shaking
|
|
3
|
+
* DO NOT EDIT - Generated by strip-direct-transformer-types.ts
|
|
4
|
+
*/
|
|
5
|
+
import { V14ToV15Transformer } from "./v14-to-v15";
|
|
6
|
+
import { V15ToV16Transformer } from "./v15-to-v16";
|
|
7
|
+
import { V16ToV17Transformer } from "./v16-to-v17";
|
|
8
|
+
/**
|
|
9
|
+
* Direct transformer from PG14 to PG17
|
|
10
|
+
* This transformer chains v14->v15->v16->v17 transformations
|
|
11
|
+
*/
|
|
12
|
+
export class PG14ToPG17Transformer {
|
|
13
|
+
v14to15 = new V14ToV15Transformer();
|
|
14
|
+
v15to16 = new V15ToV16Transformer();
|
|
15
|
+
v16to17 = new V16ToV17Transformer();
|
|
16
|
+
transform(node) {
|
|
17
|
+
// If it's a ParseResult, handle it specially
|
|
18
|
+
if (this.isParseResult(node)) {
|
|
19
|
+
// Transform through the chain: v14->v15->v16->v17
|
|
20
|
+
const v15Stmts = node.stmts.map((stmtWrapper) => {
|
|
21
|
+
if (stmtWrapper.stmt) {
|
|
22
|
+
const v15Stmt = this.v14to15.transform(stmtWrapper.stmt, { parentNodeTypes: [] });
|
|
23
|
+
return { ...stmtWrapper, stmt: v15Stmt };
|
|
24
|
+
}
|
|
25
|
+
return stmtWrapper;
|
|
26
|
+
});
|
|
27
|
+
const v16Stmts = v15Stmts.map((stmtWrapper) => {
|
|
28
|
+
if (stmtWrapper.stmt) {
|
|
29
|
+
const v16Stmt = this.v15to16.transform(stmtWrapper.stmt, { parentNodeTypes: [] });
|
|
30
|
+
return { ...stmtWrapper, stmt: v16Stmt };
|
|
31
|
+
}
|
|
32
|
+
return stmtWrapper;
|
|
33
|
+
});
|
|
34
|
+
const v17Stmts = v16Stmts.map((stmtWrapper) => {
|
|
35
|
+
if (stmtWrapper.stmt) {
|
|
36
|
+
const v17Stmt = this.v16to17.transform(stmtWrapper.stmt, { parentNodeTypes: [] });
|
|
37
|
+
return { ...stmtWrapper, stmt: v17Stmt };
|
|
38
|
+
}
|
|
39
|
+
return stmtWrapper;
|
|
40
|
+
});
|
|
41
|
+
return {
|
|
42
|
+
...node,
|
|
43
|
+
version: 170004, // PG17 version
|
|
44
|
+
stmts: v17Stmts
|
|
45
|
+
};
|
|
46
|
+
}
|
|
47
|
+
// Otherwise, transform as a regular node through the chain
|
|
48
|
+
const v15Node = this.v14to15.transform(node, { parentNodeTypes: [] });
|
|
49
|
+
const v16Node = this.v15to16.transform(v15Node, { parentNodeTypes: [] });
|
|
50
|
+
return this.v16to17.transform(v16Node, { parentNodeTypes: [] });
|
|
51
|
+
}
|
|
52
|
+
/**
|
|
53
|
+
* Transform a single statement from PG14 to PG17
|
|
54
|
+
* @deprecated Use transform() instead, which handles all node types
|
|
55
|
+
*/
|
|
56
|
+
transformStatement(stmt) {
|
|
57
|
+
const v15Stmt = this.v14to15.transform(stmt, { parentNodeTypes: [] });
|
|
58
|
+
const v16Stmt = this.v15to16.transform(v15Stmt, { parentNodeTypes: [] });
|
|
59
|
+
return this.v16to17.transform(v16Stmt, { parentNodeTypes: [] });
|
|
60
|
+
}
|
|
61
|
+
/**
|
|
62
|
+
* Type guard to check if a node is a ParseResult
|
|
63
|
+
*/
|
|
64
|
+
isParseResult(node) {
|
|
65
|
+
return node && typeof node === 'object' && 'version' in node && 'stmts' in node;
|
|
66
|
+
}
|
|
67
|
+
}
|