-
-
Notifications
You must be signed in to change notification settings - Fork 6.9k
[Feat][Typescript Angular] Implement deepObject query params (OAS3.0) #21108
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
base: master
Are you sure you want to change the base?
[Feat][Typescript Angular] Implement deepObject query params (OAS3.0) #21108
Conversation
e949803
to
c98e870
Compare
c98e870
to
d99dba4
Compare
d99dba4
to
696442c
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
- add a test somewhere that exercises this codepath and generates a query string with the expected format?
modules/openapi-generator/src/main/resources/typescript-angular/api.base.service.mustache
Outdated
Show resolved
Hide resolved
modules/openapi-generator/src/main/resources/typescript-angular/api.base.service.mustache
Outdated
Show resolved
Hide resolved
modules/openapi-generator/src/main/resources/typescript-angular/api.base.service.mustache
Outdated
Show resolved
Hide resolved
modules/openapi-generator/src/main/resources/typescript-angular/api.base.service.mustache
Outdated
Show resolved
Hide resolved
Will do, and push together with the rest of suggestions. |
Pushed tests (d2a06dd). Kindly double check, as I wasn't previously familiar with the testing patterns. 🙂 |
nvm install 16 | ||
nvm alias default 16 | ||
nvm install 18 | ||
nvm alias default 18 |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Increased Node version as tests were failing due to Angular refusing to compile on NodeJS versions <18. Node 18 is required for all currently supported Angular versions (docs).
samples/client/others/typescript-angular-deep-object/src/app/app.component.spec.ts
Outdated
Show resolved
Hide resolved
|
||
// THEN | ||
final String fileContents = Files.readString(Paths.get(output + "/api/default.service.ts")); | ||
assertThat(fileContents).containsOnlyOnce("<any>options, 'options', true);"); |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
are these assertions related to the deepObject case?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Yes, the last parameter is isDeep
.
thanks for your contribution! |
…to feature/typescript-angular-deep-object-query-params
…duced in 71629f8 instead)
@@ -0,0 +1,9 @@ | |||
generatorName: typescript-angular | |||
outputDir: samples/client/petstore/typescript-angular-v16-provided-in-root/builds/deep-object |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
how about having it in the newest angular version, so it doesnt get lost when deleting older versions?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Happy to. I took your comment here too literally.
Generate correct service implementation for typescript-angular for
deepObject
style query parameters of typeobject
, as per OAS 3.0 Specification.This closes #19342 and allows for the correct implementation of JSON:API pagination and filtering.
PR checklist
Commit all changed files.
This is important, as CI jobs will verify all generator outputs of your HEAD commit as it would merge with master.
These must match the expectations made by your contribution.
You may regenerate an individual generator by passing the relevant config(s) as an argument to the script, for example
./bin/generate-samples.sh bin/configs/java*
.IMPORTANT: Do NOT purge/delete any folders/files (e.g. tests) when regenerating the samples as manually written tests may be removed.
master
(upcoming7.x.0
minor release - breaking changes with fallbacks),8.0.x
(breaking changes without fallbacks)cc Typescript Committee: @TiFu @taxpon @sebastianhaas @kenisteward @Vrolijkx @macjohnny @topce @akehir @petejohansonxo @amakhrov @davidgamero @mkusaka @joscha