Skip to content

Commit 220d47a

Browse files
author
Łukasz Średnicki
committed
fix(tuple): Deduplicate schema removes valid repeated types for tuple
1 parent 729488e commit 220d47a

File tree

26 files changed

+171
-11
lines changed

26 files changed

+171
-11
lines changed

packages/openapi-ts-tests/test/__snapshots__/test/generated/v3-types-PascalCase/types.gen.ts.snap

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1692,6 +1692,15 @@ export type TypesData = {
16921692
* This is an enum parameter
16931693
*/
16941694
parameterEnum: 'Success' | 'Warning' | 'Error';
1695+
/**
1696+
* This is tuple parameter
1697+
*/
1698+
parameterTuple: [
1699+
number,
1700+
number,
1701+
number,
1702+
number
1703+
];
16951704
};
16961705
url: '/api/v{api-version}/types';
16971706
};

packages/openapi-ts-tests/test/__snapshots__/test/generated/v3/sdk.gen.ts.snap

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -860,6 +860,7 @@ export class TypesService {
860860
* @param data.parameterArray This is an array parameter
861861
* @param data.parameterDictionary This is a dictionary parameter
862862
* @param data.parameterEnum This is an enum parameter
863+
* @param data.parameterTuple This is tuple parameter
863864
* @param data.parameterNumber This is a number parameter
864865
* @param data.parameterString This is a string parameter
865866
* @param data.parameterBoolean This is a boolean parameter
@@ -885,7 +886,8 @@ export class TypesService {
885886
parameterObject: data.parameterObject,
886887
parameterArray: data.parameterArray,
887888
parameterDictionary: data.parameterDictionary,
888-
parameterEnum: data.parameterEnum
889+
parameterEnum: data.parameterEnum,
890+
parameterTuple: data.parameterTuple
889891
}
890892
});
891893
}

packages/openapi-ts-tests/test/__snapshots__/test/generated/v3/types.gen.ts.snap

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1515,6 +1515,15 @@ export type TypesData = {
15151515
* This is a string parameter
15161516
*/
15171517
parameterString: (string) | null;
1518+
/**
1519+
* This is tuple parameter
1520+
*/
1521+
parameterTuple: [
1522+
number,
1523+
number,
1524+
number,
1525+
number
1526+
];
15181527
};
15191528

15201529
export type TypesResponse = (number | string | boolean | {

packages/openapi-ts-tests/test/__snapshots__/test/generated/v3_angular/sdk.gen.ts.snap

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -972,6 +972,7 @@ export class TypesService {
972972
* @param data.parameterArray This is an array parameter
973973
* @param data.parameterDictionary This is a dictionary parameter
974974
* @param data.parameterEnum This is an enum parameter
975+
* @param data.parameterTuple This is tuple parameter
975976
* @param data.parameterNumber This is a number parameter
976977
* @param data.parameterString This is a string parameter
977978
* @param data.parameterBoolean This is a boolean parameter
@@ -997,7 +998,8 @@ export class TypesService {
997998
parameterObject: data.parameterObject,
998999
parameterArray: data.parameterArray,
9991000
parameterDictionary: data.parameterDictionary,
1000-
parameterEnum: data.parameterEnum
1001+
parameterEnum: data.parameterEnum,
1002+
parameterTuple: data.parameterTuple
10011003
}
10021004
});
10031005
}

packages/openapi-ts-tests/test/__snapshots__/test/generated/v3_angular/types.gen.ts.snap

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1392,6 +1392,15 @@ export type TypesData = {
13921392
* This is a string parameter
13931393
*/
13941394
parameterString: (string) | null;
1395+
/**
1396+
* This is tuple parameter
1397+
*/
1398+
parameterTuple: [
1399+
number,
1400+
number,
1401+
number,
1402+
number
1403+
];
13951404
};
13961405

13971406
export type TypesResponse = (number | string | boolean | {

packages/openapi-ts-tests/test/__snapshots__/test/generated/v3_angular_tree_shakeable/sdk.gen.ts.snap

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -602,6 +602,7 @@ export const collectionFormat = function (data: CollectionFormatData): Observabl
602602
* @param data.parameterArray This is an array parameter
603603
* @param data.parameterDictionary This is a dictionary parameter
604604
* @param data.parameterEnum This is an enum parameter
605+
* @param data.parameterTuple This is tuple parameter
605606
* @param data.parameterNumber This is a number parameter
606607
* @param data.parameterString This is a string parameter
607608
* @param data.parameterBoolean This is a boolean parameter
@@ -627,7 +628,8 @@ export const types = function (data: TypesData): Observable<TypesResponse> {
627628
parameterObject: data.parameterObject,
628629
parameterArray: data.parameterArray,
629630
parameterDictionary: data.parameterDictionary,
630-
parameterEnum: data.parameterEnum
631+
parameterEnum: data.parameterEnum,
632+
parameterTuple: data.parameterTuple
631633
}
632634
});
633635
};

packages/openapi-ts-tests/test/__snapshots__/test/generated/v3_angular_tree_shakeable/types.gen.ts.snap

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1309,6 +1309,15 @@ export type TypesData = {
13091309
* This is a string parameter
13101310
*/
13111311
parameterString: (string) | null;
1312+
/**
1313+
* This is tuple parameter
1314+
*/
1315+
parameterTuple: [
1316+
number,
1317+
number,
1318+
number,
1319+
number
1320+
];
13121321
};
13131322

13141323
export type TypesResponse = (number | string | boolean | {

packages/openapi-ts-tests/test/__snapshots__/test/generated/v3_axios/sdk.gen.ts.snap

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -860,6 +860,7 @@ export class TypesService {
860860
* @param data.parameterArray This is an array parameter
861861
* @param data.parameterDictionary This is a dictionary parameter
862862
* @param data.parameterEnum This is an enum parameter
863+
* @param data.parameterTuple This is tuple parameter
863864
* @param data.parameterNumber This is a number parameter
864865
* @param data.parameterString This is a string parameter
865866
* @param data.parameterBoolean This is a boolean parameter
@@ -885,7 +886,8 @@ export class TypesService {
885886
parameterObject: data.parameterObject,
886887
parameterArray: data.parameterArray,
887888
parameterDictionary: data.parameterDictionary,
888-
parameterEnum: data.parameterEnum
889+
parameterEnum: data.parameterEnum,
890+
parameterTuple: data.parameterTuple
889891
}
890892
});
891893
}

packages/openapi-ts-tests/test/__snapshots__/test/generated/v3_axios/types.gen.ts.snap

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1515,6 +1515,15 @@ export type TypesData = {
15151515
* This is a string parameter
15161516
*/
15171517
parameterString: (string) | null;
1518+
/**
1519+
* This is tuple parameter
1520+
*/
1521+
parameterTuple: [
1522+
number,
1523+
number,
1524+
number,
1525+
number
1526+
];
15181527
};
15191528

15201529
export type TypesResponse = (number | string | boolean | {

packages/openapi-ts-tests/test/__snapshots__/test/generated/v3_client/sdk.gen.ts.snap

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -903,6 +903,7 @@ export class TypesService {
903903
* @param data.parameterArray This is an array parameter
904904
* @param data.parameterDictionary This is a dictionary parameter
905905
* @param data.parameterEnum This is an enum parameter
906+
* @param data.parameterTuple This is tuple parameter
906907
* @param data.parameterNumber This is a number parameter
907908
* @param data.parameterString This is a string parameter
908909
* @param data.parameterBoolean This is a boolean parameter
@@ -928,7 +929,8 @@ export class TypesService {
928929
parameterObject: data.parameterObject,
929930
parameterArray: data.parameterArray,
930931
parameterDictionary: data.parameterDictionary,
931-
parameterEnum: data.parameterEnum
932+
parameterEnum: data.parameterEnum,
933+
parameterTuple: data.parameterTuple
932934
}
933935
});
934936
}

packages/openapi-ts-tests/test/__snapshots__/test/generated/v3_client/types.gen.ts.snap

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1392,6 +1392,15 @@ export type TypesData = {
13921392
* This is a string parameter
13931393
*/
13941394
parameterString: (string) | null;
1395+
/**
1396+
* This is tuple parameter
1397+
*/
1398+
parameterTuple: [
1399+
number,
1400+
number,
1401+
number,
1402+
number
1403+
];
13951404
};
13961405

13971406
export type TypesResponse = (number | string | boolean | {

packages/openapi-ts-tests/test/__snapshots__/test/generated/v3_enums_typescript/sdk.gen.ts.snap

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -860,6 +860,7 @@ export class TypesService {
860860
* @param data.parameterArray This is an array parameter
861861
* @param data.parameterDictionary This is a dictionary parameter
862862
* @param data.parameterEnum This is an enum parameter
863+
* @param data.parameterTuple This is tuple parameter
863864
* @param data.parameterNumber This is a number parameter
864865
* @param data.parameterString This is a string parameter
865866
* @param data.parameterBoolean This is a boolean parameter
@@ -885,7 +886,8 @@ export class TypesService {
885886
parameterObject: data.parameterObject,
886887
parameterArray: data.parameterArray,
887888
parameterDictionary: data.parameterDictionary,
888-
parameterEnum: data.parameterEnum
889+
parameterEnum: data.parameterEnum,
890+
parameterTuple: data.parameterTuple
889891
}
890892
});
891893
}

packages/openapi-ts-tests/test/__snapshots__/test/generated/v3_enums_typescript/types.gen.ts.snap

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1471,6 +1471,15 @@ export type TypesData = {
14711471
* This is a string parameter
14721472
*/
14731473
parameterString: (string) | null;
1474+
/**
1475+
* This is tuple parameter
1476+
*/
1477+
parameterTuple: [
1478+
number,
1479+
number,
1480+
number,
1481+
number
1482+
];
14741483
};
14751484

14761485
export type TypesResponse = (number | string | boolean | {

packages/openapi-ts-tests/test/__snapshots__/test/generated/v3_enums_typescript_namespace/sdk.gen.ts.snap

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -860,6 +860,7 @@ export class TypesService {
860860
* @param data.parameterArray This is an array parameter
861861
* @param data.parameterDictionary This is a dictionary parameter
862862
* @param data.parameterEnum This is an enum parameter
863+
* @param data.parameterTuple This is tuple parameter
863864
* @param data.parameterNumber This is a number parameter
864865
* @param data.parameterString This is a string parameter
865866
* @param data.parameterBoolean This is a boolean parameter
@@ -885,7 +886,8 @@ export class TypesService {
885886
parameterObject: data.parameterObject,
886887
parameterArray: data.parameterArray,
887888
parameterDictionary: data.parameterDictionary,
888-
parameterEnum: data.parameterEnum
889+
parameterEnum: data.parameterEnum,
890+
parameterTuple: data.parameterTuple
889891
}
890892
});
891893
}

packages/openapi-ts-tests/test/__snapshots__/test/generated/v3_enums_typescript_namespace/types.gen.ts.snap

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1502,6 +1502,15 @@ export type TypesData = {
15021502
* This is a string parameter
15031503
*/
15041504
parameterString: (string) | null;
1505+
/**
1506+
* This is tuple parameter
1507+
*/
1508+
parameterTuple: [
1509+
number,
1510+
number,
1511+
number,
1512+
number
1513+
];
15051514
};
15061515

15071516
export type TypesResponse = (number | string | boolean | {

packages/openapi-ts-tests/test/__snapshots__/test/generated/v3_no_index/types.gen.ts.snap

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1692,6 +1692,15 @@ export type TypesData = {
16921692
* This is an enum parameter
16931693
*/
16941694
parameterEnum: 'Success' | 'Warning' | 'Error';
1695+
/**
1696+
* This is tuple parameter
1697+
*/
1698+
parameterTuple: [
1699+
number,
1700+
number,
1701+
number,
1702+
number
1703+
];
16951704
};
16961705
url: '/api/v{api-version}/types';
16971706
};

packages/openapi-ts-tests/test/__snapshots__/test/generated/v3_node/sdk.gen.ts.snap

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -860,6 +860,7 @@ export class TypesService {
860860
* @param data.parameterArray This is an array parameter
861861
* @param data.parameterDictionary This is a dictionary parameter
862862
* @param data.parameterEnum This is an enum parameter
863+
* @param data.parameterTuple This is tuple parameter
863864
* @param data.parameterNumber This is a number parameter
864865
* @param data.parameterString This is a string parameter
865866
* @param data.parameterBoolean This is a boolean parameter
@@ -885,7 +886,8 @@ export class TypesService {
885886
parameterObject: data.parameterObject,
886887
parameterArray: data.parameterArray,
887888
parameterDictionary: data.parameterDictionary,
888-
parameterEnum: data.parameterEnum
889+
parameterEnum: data.parameterEnum,
890+
parameterTuple: data.parameterTuple
889891
}
890892
});
891893
}

packages/openapi-ts-tests/test/__snapshots__/test/generated/v3_node/types.gen.ts.snap

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1515,6 +1515,15 @@ export type TypesData = {
15151515
* This is a string parameter
15161516
*/
15171517
parameterString: (string) | null;
1518+
/**
1519+
* This is tuple parameter
1520+
*/
1521+
parameterTuple: [
1522+
number,
1523+
number,
1524+
number,
1525+
number
1526+
];
15181527
};
15191528

15201529
export type TypesResponse = (number | string | boolean | {

packages/openapi-ts-tests/test/__snapshots__/test/generated/v3_tree_shakeable/sdk.gen.ts.snap

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -600,6 +600,7 @@ export const collectionFormat = (data: CollectionFormatData): CancelablePromise<
600600
* @param data.parameterArray This is an array parameter
601601
* @param data.parameterDictionary This is a dictionary parameter
602602
* @param data.parameterEnum This is an enum parameter
603+
* @param data.parameterTuple This is tuple parameter
603604
* @param data.parameterNumber This is a number parameter
604605
* @param data.parameterString This is a string parameter
605606
* @param data.parameterBoolean This is a boolean parameter
@@ -625,7 +626,8 @@ export const types = (data: TypesData): CancelablePromise<TypesResponse> => {
625626
parameterObject: data.parameterObject,
626627
parameterArray: data.parameterArray,
627628
parameterDictionary: data.parameterDictionary,
628-
parameterEnum: data.parameterEnum
629+
parameterEnum: data.parameterEnum,
630+
parameterTuple: data.parameterTuple
629631
}
630632
});
631633
};

packages/openapi-ts-tests/test/__snapshots__/test/generated/v3_tree_shakeable/types.gen.ts.snap

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1432,6 +1432,15 @@ export type TypesData = {
14321432
* This is a string parameter
14331433
*/
14341434
parameterString: (string) | null;
1435+
/**
1436+
* This is tuple parameter
1437+
*/
1438+
parameterTuple: [
1439+
number,
1440+
number,
1441+
number,
1442+
number
1443+
];
14351444
};
14361445

14371446
export type TypesResponse = (number | string | boolean | {

packages/openapi-ts-tests/test/__snapshots__/test/generated/v3_types/types.gen.ts.snap

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1692,6 +1692,15 @@ export type TypesData = {
16921692
* This is an enum parameter
16931693
*/
16941694
parameterEnum: 'Success' | 'Warning' | 'Error';
1695+
/**
1696+
* This is tuple parameter
1697+
*/
1698+
parameterTuple: [
1699+
number,
1700+
number,
1701+
number,
1702+
number
1703+
];
16951704
};
16961705
url: '/api/v{api-version}/types';
16971706
};

packages/openapi-ts-tests/test/__snapshots__/test/generated/v3_types_no_tree/types.gen.ts.snap

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1692,6 +1692,15 @@ export type TypesData = {
16921692
* This is an enum parameter
16931693
*/
16941694
parameterEnum: 'Success' | 'Warning' | 'Error';
1695+
/**
1696+
* This is tuple parameter
1697+
*/
1698+
parameterTuple: [
1699+
number,
1700+
number,
1701+
number,
1702+
number
1703+
];
16951704
};
16961705
url: '/api/v{api-version}/types';
16971706
};

packages/openapi-ts-tests/test/__snapshots__/test/generated/v3_xhr/sdk.gen.ts.snap

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -860,6 +860,7 @@ export class TypesService {
860860
* @param data.parameterArray This is an array parameter
861861
* @param data.parameterDictionary This is a dictionary parameter
862862
* @param data.parameterEnum This is an enum parameter
863+
* @param data.parameterTuple This is tuple parameter
863864
* @param data.parameterNumber This is a number parameter
864865
* @param data.parameterString This is a string parameter
865866
* @param data.parameterBoolean This is a boolean parameter
@@ -885,7 +886,8 @@ export class TypesService {
885886
parameterObject: data.parameterObject,
886887
parameterArray: data.parameterArray,
887888
parameterDictionary: data.parameterDictionary,
888-
parameterEnum: data.parameterEnum
889+
parameterEnum: data.parameterEnum,
890+
parameterTuple: data.parameterTuple
889891
}
890892
});
891893
}

0 commit comments

Comments
 (0)