Merge pull request #1067 from kulczy/arrays

Prevent duplication of parameter names
This commit is contained in:
Ferdi Koomen 2023-04-11 09:58:09 +02:00 committed by GitHub
commit d5ca21c64e
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
2 changed files with 3 additions and 0 deletions

View File

@ -13,5 +13,7 @@ describe('getOperationParameterName', () => {
expect(getOperationParameterName('123.foo.bar')).toEqual('fooBar');
expect(getOperationParameterName('Foo-Bar')).toEqual('fooBar');
expect(getOperationParameterName('FOO-BAR')).toEqual('fooBar');
expect(getOperationParameterName('foo[bar]')).toEqual('fooBar');
expect(getOperationParameterName('foo.bar[]')).toEqual('fooBarArray');
});
});

View File

@ -9,6 +9,7 @@ import { reservedWords } from '../../../utils/reservedWords';
export const getOperationParameterName = (value: string): string => {
const clean = value
.replace(/^[^a-zA-Z]+/g, '')
.replace('[]', 'Array')
.replace(/[^\w\-]+/g, '-')
.trim();
return camelCase(clean).replace(reservedWords, '_$1');