@pgsql/transform 17.6.3 → 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.
- package/13/enum-to-int.d.ts +7 -0
- package/13/enum-to-int.js +2165 -0
- package/13/enum-to-str.d.ts +7 -0
- package/13/enum-to-str.js +2165 -0
- package/13/enums.d.ts +14 -21
- package/13/runtime-schema.d.ts +17 -0
- package/13/runtime-schema.js +8419 -0
- package/13/types.d.ts +1078 -1303
- package/14/enum-to-int.d.ts +7 -0
- package/14/enum-to-int.js +2205 -0
- package/14/enum-to-str.d.ts +7 -0
- package/14/enum-to-str.js +2205 -0
- package/14/enums.d.ts +62 -0
- package/14/enums.js +2 -0
- package/14/runtime-schema.d.ts +17 -0
- package/14/runtime-schema.js +8695 -0
- package/14/types.d.ts +2164 -0
- package/14/types.js +2 -0
- package/15/enum-to-int.d.ts +7 -0
- package/15/enum-to-int.js +2255 -0
- package/15/enum-to-str.d.ts +7 -0
- package/15/enum-to-str.js +2255 -0
- package/15/enums.d.ts +64 -0
- package/15/enums.js +2 -0
- package/15/runtime-schema.d.ts +17 -0
- package/15/runtime-schema.js +8955 -0
- package/15/types.d.ts +2222 -0
- package/15/types.js +2 -0
- package/16/enum-to-int.d.ts +7 -0
- package/16/enum-to-int.js +2344 -0
- package/16/enum-to-str.d.ts +7 -0
- package/16/enum-to-str.js +2344 -0
- package/16/enums.d.ts +69 -0
- package/16/enums.js +2 -0
- package/16/runtime-schema.d.ts +17 -0
- package/16/runtime-schema.js +9339 -0
- package/16/types.d.ts +2328 -0
- package/16/types.js +2 -0
- package/17/enum-to-int.d.ts +7 -0
- package/17/enum-to-int.js +2501 -0
- package/17/enum-to-str.d.ts +7 -0
- package/17/enum-to-str.js +2501 -0
- package/17/runtime-schema.d.ts +17 -0
- package/17/runtime-schema.js +10010 -0
- package/esm/13/enum-to-int.js +2161 -0
- package/esm/13/enum-to-str.js +2161 -0
- package/esm/13/runtime-schema.js +8416 -0
- package/esm/14/enum-to-int.js +2201 -0
- package/esm/14/enum-to-str.js +2201 -0
- package/esm/14/enums.js +1 -0
- package/esm/14/runtime-schema.js +8692 -0
- package/esm/14/types.js +1 -0
- package/esm/15/enum-to-int.js +2251 -0
- package/esm/15/enum-to-str.js +2251 -0
- package/esm/15/enums.js +1 -0
- package/esm/15/runtime-schema.js +8952 -0
- package/esm/15/types.js +1 -0
- package/esm/16/enum-to-int.js +2340 -0
- package/esm/16/enum-to-str.js +2340 -0
- package/esm/16/enums.js +1 -0
- package/esm/16/runtime-schema.js +9336 -0
- package/esm/16/types.js +1 -0
- package/esm/17/enum-to-int.js +2497 -0
- package/esm/17/enum-to-str.js +2497 -0
- package/esm/17/runtime-schema.js +10007 -0
- package/esm/index.js +15 -1309
- package/esm/multi-version-transformer.js +60 -0
- package/esm/transformers/context.js +1 -0
- package/esm/transformers/v13-to-v14.js +2745 -0
- package/esm/transformers/v14-to-v15.js +1215 -0
- package/esm/transformers/v15-to-v16.js +2876 -0
- package/esm/transformers/v16-to-v17.js +1483 -0
- package/esm/transformers-direct/index.js +8 -0
- package/esm/transformers-direct/v13-to-v17/index.js +74 -0
- package/esm/transformers-direct/v14-to-v17/index.js +63 -0
- package/esm/transformers-direct/v15-to-v17/index.js +53 -0
- package/esm/transformers-direct/v16-to-v17/index.js +40 -0
- package/index.d.ts +18 -5
- package/index.js +29 -1311
- package/multi-version-transformer.d.ts +9 -0
- package/multi-version-transformer.js +64 -0
- package/package.json +8 -4
- package/transformers/context.d.ts +4 -0
- package/transformers/context.js +2 -0
- package/transformers/v13-to-v14.d.ts +252 -0
- package/transformers/v13-to-v14.js +2749 -0
- package/transformers/v14-to-v15.d.ts +615 -0
- package/transformers/v14-to-v15.js +1219 -0
- package/transformers/v15-to-v16.d.ts +626 -0
- package/transformers/v15-to-v16.js +2880 -0
- package/transformers/v16-to-v17.d.ts +637 -0
- package/transformers/v16-to-v17.js +1487 -0
- package/transformers-direct/index.d.ts +8 -0
- package/transformers-direct/index.js +15 -0
- package/transformers-direct/v13-to-v17/index.d.ts +27 -0
- package/transformers-direct/v13-to-v17/index.js +78 -0
- package/transformers-direct/v14-to-v17/index.d.ts +26 -0
- package/transformers-direct/v14-to-v17/index.js +67 -0
- package/transformers-direct/v15-to-v17/index.d.ts +25 -0
- package/transformers-direct/v15-to-v17/index.js +57 -0
- package/transformers-direct/v16-to-v17/index.d.ts +24 -0
- 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 {};
|