@pgsql/transform 17.6.2 → 17.7.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 (104) hide show
  1. package/13/enum-to-int.d.ts +7 -0
  2. package/13/enum-to-int.js +2165 -0
  3. package/13/enum-to-str.d.ts +7 -0
  4. package/13/enum-to-str.js +2165 -0
  5. package/13/enums.d.ts +15 -22
  6. package/13/runtime-schema.d.ts +17 -0
  7. package/13/runtime-schema.js +8419 -0
  8. package/13/types.d.ts +1079 -1304
  9. package/14/enum-to-int.d.ts +7 -0
  10. package/14/enum-to-int.js +2205 -0
  11. package/14/enum-to-str.d.ts +7 -0
  12. package/14/enum-to-str.js +2205 -0
  13. package/14/enums.d.ts +62 -0
  14. package/14/enums.js +2 -0
  15. package/14/runtime-schema.d.ts +17 -0
  16. package/14/runtime-schema.js +8695 -0
  17. package/14/types.d.ts +2164 -0
  18. package/14/types.js +2 -0
  19. package/15/enum-to-int.d.ts +7 -0
  20. package/15/enum-to-int.js +2255 -0
  21. package/15/enum-to-str.d.ts +7 -0
  22. package/15/enum-to-str.js +2255 -0
  23. package/15/enums.d.ts +64 -0
  24. package/15/enums.js +2 -0
  25. package/15/runtime-schema.d.ts +17 -0
  26. package/15/runtime-schema.js +8955 -0
  27. package/15/types.d.ts +2222 -0
  28. package/15/types.js +2 -0
  29. package/16/enum-to-int.d.ts +7 -0
  30. package/16/enum-to-int.js +2344 -0
  31. package/16/enum-to-str.d.ts +7 -0
  32. package/16/enum-to-str.js +2344 -0
  33. package/16/enums.d.ts +69 -0
  34. package/16/enums.js +2 -0
  35. package/16/runtime-schema.d.ts +17 -0
  36. package/16/runtime-schema.js +9339 -0
  37. package/16/types.d.ts +2328 -0
  38. package/16/types.js +2 -0
  39. package/17/enum-to-int.d.ts +7 -0
  40. package/17/enum-to-int.js +2501 -0
  41. package/17/enum-to-str.d.ts +7 -0
  42. package/17/enum-to-str.js +2501 -0
  43. package/17/enums.d.ts +1 -1
  44. package/17/runtime-schema.d.ts +17 -0
  45. package/17/runtime-schema.js +10010 -0
  46. package/17/types.d.ts +1 -1
  47. package/esm/13/enum-to-int.js +2161 -0
  48. package/esm/13/enum-to-str.js +2161 -0
  49. package/esm/13/runtime-schema.js +8416 -0
  50. package/esm/14/enum-to-int.js +2201 -0
  51. package/esm/14/enum-to-str.js +2201 -0
  52. package/esm/14/enums.js +1 -0
  53. package/esm/14/runtime-schema.js +8692 -0
  54. package/esm/14/types.js +1 -0
  55. package/esm/15/enum-to-int.js +2251 -0
  56. package/esm/15/enum-to-str.js +2251 -0
  57. package/esm/15/enums.js +1 -0
  58. package/esm/15/runtime-schema.js +8952 -0
  59. package/esm/15/types.js +1 -0
  60. package/esm/16/enum-to-int.js +2340 -0
  61. package/esm/16/enum-to-str.js +2340 -0
  62. package/esm/16/enums.js +1 -0
  63. package/esm/16/runtime-schema.js +9336 -0
  64. package/esm/16/types.js +1 -0
  65. package/esm/17/enum-to-int.js +2497 -0
  66. package/esm/17/enum-to-str.js +2497 -0
  67. package/esm/17/runtime-schema.js +10007 -0
  68. package/esm/index.js +15 -1309
  69. package/esm/multi-version-transformer.js +60 -0
  70. package/esm/transformers/context.js +1 -0
  71. package/esm/transformers/v13-to-v14.js +2745 -0
  72. package/esm/transformers/v14-to-v15.js +1215 -0
  73. package/esm/transformers/v15-to-v16.js +2876 -0
  74. package/esm/transformers/v16-to-v17.js +1483 -0
  75. package/esm/transformers-direct/index.js +8 -0
  76. package/esm/transformers-direct/v13-to-v17/index.js +74 -0
  77. package/esm/transformers-direct/v14-to-v17/index.js +63 -0
  78. package/esm/transformers-direct/v15-to-v17/index.js +53 -0
  79. package/esm/transformers-direct/v16-to-v17/index.js +40 -0
  80. package/index.d.ts +18 -5
  81. package/index.js +29 -1311
  82. package/multi-version-transformer.d.ts +9 -0
  83. package/multi-version-transformer.js +64 -0
  84. package/package.json +8 -4
  85. package/transformers/context.d.ts +4 -0
  86. package/transformers/context.js +2 -0
  87. package/transformers/v13-to-v14.d.ts +252 -0
  88. package/transformers/v13-to-v14.js +2749 -0
  89. package/transformers/v14-to-v15.d.ts +615 -0
  90. package/transformers/v14-to-v15.js +1219 -0
  91. package/transformers/v15-to-v16.d.ts +626 -0
  92. package/transformers/v15-to-v16.js +2880 -0
  93. package/transformers/v16-to-v17.d.ts +637 -0
  94. package/transformers/v16-to-v17.js +1487 -0
  95. package/transformers-direct/index.d.ts +8 -0
  96. package/transformers-direct/index.js +15 -0
  97. package/transformers-direct/v13-to-v17/index.d.ts +27 -0
  98. package/transformers-direct/v13-to-v17/index.js +78 -0
  99. package/transformers-direct/v14-to-v17/index.d.ts +26 -0
  100. package/transformers-direct/v14-to-v17/index.js +67 -0
  101. package/transformers-direct/v15-to-v17/index.d.ts +25 -0
  102. package/transformers-direct/v15-to-v17/index.js +57 -0
  103. package/transformers-direct/v16-to-v17/index.d.ts +24 -0
  104. package/transformers-direct/v16-to-v17/index.js +44 -0
@@ -0,0 +1,60 @@
1
+ import { V13ToV14Transformer } from './transformers/v13-to-v14';
2
+ import { V14ToV15Transformer } from './transformers/v14-to-v15';
3
+ import { V15ToV16Transformer } from './transformers/v15-to-v16';
4
+ import { V16ToV17Transformer } from './transformers/v16-to-v17';
5
+ export class ASTTransformer {
6
+ transformers = {
7
+ '13-14': new V13ToV14Transformer(),
8
+ '14-15': new V14ToV15Transformer(),
9
+ '15-16': new V15ToV16Transformer(),
10
+ '16-17': new V16ToV17Transformer(),
11
+ };
12
+ transform(ast, fromVersion, toVersion) {
13
+ if (fromVersion === toVersion) {
14
+ return ast;
15
+ }
16
+ if (fromVersion > toVersion) {
17
+ throw new Error(`Cannot transform backwards from v${fromVersion} to v${toVersion}`);
18
+ }
19
+ let currentAst = ast;
20
+ let currentVersion = fromVersion;
21
+ while (currentVersion < toVersion) {
22
+ const nextVersion = currentVersion + 1;
23
+ const transformerKey = `${currentVersion}-${nextVersion}`;
24
+ // Use explicit switch to avoid complex union types
25
+ switch (transformerKey) {
26
+ case '13-14':
27
+ currentAst = this.transformers['13-14'].transform(currentAst, { parentNodeTypes: [] });
28
+ break;
29
+ case '14-15':
30
+ currentAst = this.transformers['14-15'].transform(currentAst, { parentNodeTypes: [] });
31
+ break;
32
+ case '15-16':
33
+ currentAst = this.transformers['15-16'].transform(currentAst, { parentNodeTypes: [] });
34
+ break;
35
+ case '16-17':
36
+ currentAst = this.transformers['16-17'].transform(currentAst, { parentNodeTypes: [] });
37
+ break;
38
+ default:
39
+ throw new Error(`No transformer available for v${currentVersion} to v${nextVersion}`);
40
+ }
41
+ currentVersion = nextVersion;
42
+ }
43
+ return currentAst;
44
+ }
45
+ transformToLatest(ast, fromVersion) {
46
+ return this.transform(ast, fromVersion, 17);
47
+ }
48
+ transform13To17(ast) {
49
+ return this.transform(ast, 13, 17);
50
+ }
51
+ transform14To17(ast) {
52
+ return this.transform(ast, 14, 17);
53
+ }
54
+ transform15To17(ast) {
55
+ return this.transform(ast, 15, 17);
56
+ }
57
+ transform16To17(ast) {
58
+ return this.transform(ast, 16, 17);
59
+ }
60
+ }
@@ -0,0 +1 @@
1
+ export {};