Skip to content

Commit 38fe0fe

Browse files
feat: add pg_catalog prefix removal logic to both TypeName and TypeCast methods
Co-Authored-By: Dan Lynch <[email protected]>
1 parent 2c40b26 commit 38fe0fe

File tree

1 file changed

+24
-0
lines changed

1 file changed

+24
-0
lines changed

packages/transform/src/transformers/v16-to-v17.ts

Lines changed: 24 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -448,6 +448,18 @@ export class V16ToV17Transformer {
448448
? node.names.map(item => this.transform(item as any, context))
449449
: this.transform(node.names as any, context);
450450

451+
if (Array.isArray(names) && names.length === 2) {
452+
const firstElement = names[0];
453+
const secondElement = names[1];
454+
if (firstElement && typeof firstElement === 'object' && 'String' in firstElement &&
455+
secondElement && typeof secondElement === 'object' && 'String' in secondElement) {
456+
const firstTypeName = firstElement.String.str || firstElement.String.sval;
457+
const secondTypeName = secondElement.String.str || secondElement.String.sval;
458+
if (firstTypeName === 'pg_catalog' && secondTypeName === 'json') {
459+
names = [secondElement];
460+
}
461+
}
462+
}
451463

452464
result.names = names;
453465
}
@@ -561,6 +573,18 @@ export class V16ToV17Transformer {
561573
? typeName.names.map((item: any) => this.transform(item as any, context))
562574
: this.transform(typeName.names as any, context);
563575

576+
if (Array.isArray(names) && names.length === 2) {
577+
const firstElement = names[0];
578+
const secondElement = names[1];
579+
if (firstElement && typeof firstElement === 'object' && 'String' in firstElement &&
580+
secondElement && typeof secondElement === 'object' && 'String' in secondElement) {
581+
const firstTypeName = firstElement.String.str || firstElement.String.sval;
582+
const secondTypeName = secondElement.String.str || secondElement.String.sval;
583+
if (firstTypeName === 'pg_catalog' && secondTypeName === 'json') {
584+
names = [secondElement];
585+
}
586+
}
587+
}
564588

565589
transformedTypeName.names = names;
566590
}

0 commit comments

Comments
 (0)