pgsql-deparser 13.16.0 → 14.0.0

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