bunqCommunity / bunqJSClient

A javascript SDK for the bunq API
MIT License
58 stars 23 forks source link

build: Generate TypeScript types from OpenAPI definition #55

Open firstred opened 4 years ago

firstred commented 4 years ago

Requires:

This PR will add a script to automatically generate TypeScript types from bunq's OpenAPI definition.

It looks like not all required properties are marked as such in the OpenAPI definition, so there is a way to add these via the script. To prevent types from being flattened to just primitives such as string, there is the possibility to extend the definition as well.

Generating a new definition file can be done with yarn build:types. Definitions end up in the file src/Types/ApiTypes.ts

A backward compatible layer has been added.

codecov[bot] commented 4 years ago

Codecov Report

Merging #55 into master will decrease coverage by 39.27%. The diff coverage is n/a.

Impacted file tree graph

@@             Coverage Diff             @@
##           master      #55       +/-   ##
===========================================
- Coverage   98.65%   59.38%   -39.28%     
===========================================
  Files          71       17       -54     
  Lines        2236      517     -1719     
  Branches      461       96      -365     
===========================================
- Hits         2206      307     -1899     
- Misses         29      209      +180     
  Partials        1        1
Impacted Files Coverage Δ
src/HTTP/SignRequestHandler.ts 6.81% <0%> (-93.19%) :arrow_down:
src/HTTP/VerifyResponseHandler.ts 10.25% <0%> (-89.75%) :arrow_down:
src/HTTP/EncryptRequestHandler.ts 17.64% <0%> (-82.36%) :arrow_down:
src/ApiAdapter.ts 12.12% <0%> (-80.81%) :arrow_down:
src/Helpers/Utils.ts 77.77% <0%> (-22.23%) :arrow_down:
src/Crypto/Rsa.ts 81.25% <0%> (-18.75%) :arrow_down:
src/HTTP/Request.ts 90.16% <0%> (-9.84%) :arrow_down:
src/Crypto/Aes.ts 94.28% <0%> (-5.72%) :arrow_down:
src/Api/SchedulePayment.ts
src/Api/Avatar.ts
... and 52 more

Continue to review full report at Codecov.

Legend - Click here to learn more Δ = absolute <relative> (impact), ø = not affected, ? = missing data Powered by Codecov. Last update 90baf09...c4daac9. Read the comment docs.

flow-danny commented 4 years ago

Can this be merged? Would very much like to use this 😄