Schema with a number-only name gets generated into uncompilable code
kostia1st opened this issue · comments
Description
Having a schema like this
{
"components": {
"schemas": {
"400": {
"type": "object",
"required": [
"code",
"message"
],
"properties": {
"code": {
"type": "string",
"description": "Error code"
},
"message": {
"type": "string",
"description": "User-readable message"
},
"invalidFields": {
"type": "object",
"description": "Invalid fields",
"additionalProperties": {
"anyOf": [
{
"type": "string"
},
{
"type": "object",
"additionalProperties": {
"type": "string"
}
}
],
"description": "Field name as key"
}
}
}
}
}
}
I get this
export type = {
/**
* Error code
*/
code: string;
/**
* User-readable message
*/
message: string;
/**
* Invalid fields
*/
invalidFields?: {
[key: string]: (string | {
[key: string]: (string);
});
};
};
Config:
createClient({
client: '@hey-api/client-fetch', // This one does NOT camelize query parameters
input: './openapi.json',
output: './openapi-temp',
exportCore: false,
schemas: false,
types: { name: 'PascalCase' },
});
![](https://private-user-images.githubusercontent.com/9264460/335327147-97f6d636-2f0a-4d8a-868f-0f6c87ab82ce.png?jwt=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTUiLCJleHAiOjE3MjA1OTIxNTAsIm5iZiI6MTcyMDU5MTg1MCwicGF0aCI6Ii85MjY0NDYwLzMzNTMyNzE0Ny05N2Y2ZDYzNi0yZjBhLTRkOGEtODY4Zi0wZjZjODdhYjgyY2UucG5nP1gtQW16LUFsZ29yaXRobT1BV1M0LUhNQUMtU0hBMjU2JlgtQW16LUNyZWRlbnRpYWw9QUtJQVZDT0RZTFNBNTNQUUs0WkElMkYyMDI0MDcxMCUyRnVzLWVhc3QtMSUyRnMzJTJGYXdzNF9yZXF1ZXN0JlgtQW16LURhdGU9MjAyNDA3MTBUMDYxMDUwWiZYLUFtei1FeHBpcmVzPTMwMCZYLUFtei1TaWduYXR1cmU9NzE3YjM5YThiYzgyYzM5Mjc0YThjNThlOWM0NTMyNTQzNDc1MGFkZjIxYTZjYjQyZTU2Zjc5Y2UwNGJjYWI0ZiZYLUFtei1TaWduZWRIZWFkZXJzPWhvc3QmYWN0b3JfaWQ9MCZrZXlfaWQ9MCZyZXBvX2lkPTAifQ.IqMXfNXiSNuIXaDD1z-vEN70d6nZRbXbeqIWl01I3cg)
![](https://private-user-images.githubusercontent.com/9264460/335327153-46116857-c617-4a25-899f-4811caff2e7a.png?jwt=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTUiLCJleHAiOjE3MjA1OTIxNTAsIm5iZiI6MTcyMDU5MTg1MCwicGF0aCI6Ii85MjY0NDYwLzMzNTMyNzE1My00NjExNjg1Ny1jNjE3LTRhMjUtODk5Zi00ODExY2FmZjJlN2EucG5nP1gtQW16LUFsZ29yaXRobT1BV1M0LUhNQUMtU0hBMjU2JlgtQW16LUNyZWRlbnRpYWw9QUtJQVZDT0RZTFNBNTNQUUs0WkElMkYyMDI0MDcxMCUyRnVzLWVhc3QtMSUyRnMzJTJGYXdzNF9yZXF1ZXN0JlgtQW16LURhdGU9MjAyNDA3MTBUMDYxMDUwWiZYLUFtei1FeHBpcmVzPTMwMCZYLUFtei1TaWduYXR1cmU9OTdhMTkzYjc1ODdiNjhhMjVlODk4NzIyN2UwZGEyOTQ3ZmM5OGM5NWI3NDZkY2Y1ZjhhOWJjZTRiMjk1YzA3YiZYLUFtei1TaWduZWRIZWFkZXJzPWhvc3QmYWN0b3JfaWQ9MCZrZXlfaWQ9MCZyZXBvX2lkPTAifQ.fI2HlvnhvlOzWg2b3OItfJfMQEgBXzLettZnYT4u_6g)
OpenAPI specification (optional)
No response
Configuration
createClient({
client: '@hey-api/client-fetch', // This one does NOT camelize query parameters
input: './openapi.json',
output: './openapi-temp',
exportCore: false,
schemas: false,
types: { name: 'PascalCase' },
});
System information (optional)
No response
This looks more like an issue with the name itself, type is a reserved word. I'll have a look