microsoft / microsoft/typespec
[Bug][http-client-js]: optional body properties should not be generated in operation options
- Dominant language
- Java
- Stars
- 5.9k
- Forks
- 394
- Avg merge
- 1d 23h
- Merged PRs (30d)
- 104
Description
### Describe the bug
With the given typespec
```ts
@service
namespace Test;
model Widget {
id: string;
name: string;
age?: string;
@header foo?: string;
}
@post op create(@bodyRoot widget: Widget): void;
```
The operation options we generate is
```ts
export interface CreateOptions extends OperationOptions {
age?: string; // which should not exist here
foo?: string;
}
```
### Reproduction
N/A
### Checklist
- [x] Follow our [Code of Conduct](https://github.com/microsoft/typespec/blob/main/CODE_OF_CONDUCT.md)
- [x] Check that there isn't already an issue that request the same bug to avoid creating a duplicate.
- [x] Check that this is a concrete bug. For Q&A open a [GitHub Discussion](https://github.com/Microsoft/typespec/discussions).
- [x] The provided reproduction is a [minimal reproducible example](https://stackoverflow.com/help/minimal-reproducible-example) of the bug.
Contributor guide
Assessment
This issue has not been assessed yet.