fork of hey-api/openapi-ts because I need some additional things

Merge pull request #236 from hey-api/docs/readme-2

docs(readme): update broken contributing link

authored by

Jordan Shatford and committed by
GitHub
ea9a5216 7c717d55

+193 -207
+5
.changeset/forty-dingos-cover.md
··· 1 + --- 2 + "@hey-api/openapi-ts": patch 3 + --- 4 + 5 + docs(readme): update broken contributing link
+18 -41
.github/ISSUE_TEMPLATE/bug_report.yml
··· 1 1 name: Bug report 2 2 description: Report an issue with the project. 3 - labels: ["bug"] 3 + 4 + labels: 5 + - bug 6 + 4 7 body: 5 8 - type: markdown 6 9 attributes: 7 10 value: | 8 11 Thanks for taking the time to fill out this bug report! Please do your best to fill out as much information as possible. 12 + 9 13 - type: textarea 10 - id: bug-description 14 + id: description 11 15 attributes: 12 - label: Describe the bug 16 + label: Description 13 17 description: Please check if there is an existing bug report before creating a new issue. If you intend to submit a PR to fix this issue, let us know in the description. 14 18 placeholder: Bug description 15 19 validations: 16 20 required: true 21 + 17 22 - type: textarea 18 23 id: openapi-spec 19 24 attributes: 20 - label: OpenAPI specification 21 - description: Please provide (if possible) the OpenAPI specification that you used to generate the client. 25 + label: OpenAPI specification (optional) 26 + description: Please provide relevant part of your OpenAPI specification to recreate the issue. 22 27 placeholder: OpenAPI Specification 23 - - type: dropdown 24 - id: client-type 25 - attributes: 26 - label: Client 27 - options: 28 - - Angular 29 - - Axios 30 - - Fetch 31 - - Node 32 - - XHR 33 - validations: 34 - required: true 28 + 35 29 - type: textarea 36 - id: client 30 + id: config 37 31 attributes: 38 - label: Generated client 39 - description: Please provide (if possible) the code of the generated client causing the bug. 40 - placeholder: Generated client 32 + label: Configuration 33 + description: Please provide your configuration file or CLI command used to recreate the issue. 34 + placeholder: openapi-ts -i path/to/openapi.json -o src/client 35 + 41 36 - type: textarea 42 37 id: system-info 43 38 attributes: 44 - label: System information 45 - description: Please provide as much system information as possible. This may include OS, browser, NPM version, Node version, etc. 46 - render: Shell 39 + label: System information (optional) 40 + description: Please provide any relevant system information. This may include OS, browser, NPM version, Node.js version, etc. 47 41 placeholder: System information 48 - - type: dropdown 49 - id: severity 50 - attributes: 51 - label: Severity 52 - options: 53 - - annoyance 54 - - serious, but I can work around it 55 - - breaking 56 - - other 57 - validations: 58 - required: true 59 - - type: textarea 60 - id: additional-context 61 - attributes: 62 - label: Additional information 63 - description: Any additional information, context, or screenshots important to fixing this bug. 64 - placeholder: Additional information
+10 -35
.github/ISSUE_TEMPLATE/feature_request.yml
··· 1 1 name: Feature Request 2 + 2 3 description: Suggest a new feature for the project. 3 - labels: ["feature"] 4 + 5 + labels: 6 + - feature 7 + 4 8 body: 5 9 - type: markdown 6 10 attributes: 7 11 value: | 8 12 Thanks for taking the time to request a new feature! Please ensure your feature request has enough information so maintainers can decide if it will be worked on. 13 + 9 14 - type: textarea 10 - id: problem 15 + id: description 11 16 attributes: 12 - label: Describe the problem 13 - description: Please provide a clear and concise description the problem this feature would solve. The more information you can provide here, the better. 14 - placeholder: Describe the problem 15 - validations: 16 - required: true 17 - - type: textarea 18 - id: solution 19 - attributes: 20 - label: Describe the proposed solution 21 - description: Please provide a clear and concise description of what you would like to happen and how the feature would work. 22 - placeholder: Describe how the feature should work 17 + label: Description 18 + description: Please provide a clear and concise description of the proposed feature. The more information you can provide, the better. 19 + placeholder: Feature description 23 20 validations: 24 21 required: true 25 - - type: textarea 26 - id: alternatives 27 - attributes: 28 - label: Alternatives considered 29 - description: Please provide a clear and concise description of any alternative solutions or features you've considered. 30 - - type: dropdown 31 - id: importance 32 - attributes: 33 - label: Importance 34 - description: How important is this feature to you? 35 - options: 36 - - nice to have 37 - - would make my life easier 38 - - cannot use project without 39 - validations: 40 - required: true 41 - - type: textarea 42 - id: additional-context 43 - attributes: 44 - label: Additional information 45 - description: Any additional information, context, or screenshots important to this feature request. 46 - placeholder: Additional information
+6 -7
CONTRIBUTING.md
··· 1 1 # Contributing to OpenAPI TypeScript 👋 2 2 3 - Thanks for your interest in contributing to this project. 3 + Thank you for considering contributing to this project! 4 + 5 + > ⚠️ We are currently looking for core maintainers to expand our team. If you're interested in contributing regularly, please reach out to us. 4 6 5 7 ## Development Requirements 6 8 7 - - [git](https://git-scm.com/) 8 - - [node](https://nodejs.org/en) (version `18.0` or higher) 9 + - [git](https://git-scm.com/) 10 + - [node](https://nodejs.org/en) (version `18.0` or higher) 11 + - [pnpm](https://pnpm.io/) (version `8` or higher) 9 12 10 13 ## Setting up for Development 11 14 12 15 For this project we use PNPM as our package manager. You can setup and install all dependencies running the following commands: 13 16 14 17 ```sh 15 - # Enable corepack, it is disabled by default in the supported versions of NodeJS 16 - corepack enable 17 - # Prepare corepack based on the packageManager specified in the projects package.json 18 - corepack prepare 19 18 # Install all dependencies 20 19 pnpm install 21 20 ```
+1 -2
README.md
··· 3 3 > ✨ Turn your OpenAPI specification into a beautiful TypeScript client 4 4 5 5 ## Table of Contents 6 - - [Table of Contents](#table-of-contents) 7 6 - [About](#about) 8 7 - [Features](#features) 9 8 - [Quick Start](#quick-start) ··· 241 240 242 241 ## Contributing 243 242 244 - Please refer to the [contributing guide](CONTRIBUTING.md) for how to install the project for development purposes. 243 + Please refer to the [contributing guide](./CONTRIBUTING.md) for how to install the project for development purposes.
+3 -3
package.json
··· 15 15 }, 16 16 "scripts": { 17 17 "build": "pnpm --recursive build", 18 + "changeset": "changeset", 18 19 "lint:fix": "pnpm --recursive lint:fix", 19 20 "lint": "pnpm --recursive lint", 21 + "openapi-ts": "pnpm --recursive --workspace packages/openapi-ts --", 20 22 "test:coverage": "pnpm --recursive test:coverage", 21 23 "test:e2e": "pnpm --recursive test:e2e", 22 24 "test:update": "pnpm --recursive test:update", 23 25 "test": "pnpm --recursive test", 24 - "typecheck": "pnpm --recursive typecheck", 25 - "openapi-ts": "pnpm --recursive --workspace packages/openapi-ts --", 26 - "changeset": "changeset" 26 + "typecheck": "pnpm --recursive typecheck" 27 27 }, 28 28 "engines": { 29 29 "node": "^18.0.0 || >=20.0.0"
-117
packages/openapi-ts/CHANGELOG-old.md
··· 1 - # Changelog 2 - All notable changes to this project will be documented in this file. 3 - 4 - ## [0.27.0] - 2024-01-15 5 - ### Fixed 6 - - Reverted `@apidevtools/json-schema-ref-parser` to version 10.1.0 7 - 8 - ## [0.26.0] - 2024-01-07 9 - ### Fixed 10 - - Upgraded dependencies 11 - 12 - ## [0.25.0] - 2023-07-05 13 - ### Fixed 14 - - Upgraded dependencies 15 - ### Added 16 - - Allow usage of a custom axios instance 17 - - Added message in generated files 18 - 19 - ## [0.24.0] - 2023-04-10 20 - ### Fixed 21 - - Upgraded dependencies 22 - - Fixed issue with Cancelable promise 23 - - Fixed issue with escaping reserved keywords in schema names 24 - ### Added 25 - - Added `--postfixModels` option 26 - 27 - ## [0.23.0] - 2022-06-02 28 - ### Fixed 29 - - Upgraded dependencies 30 - - Added blank line at the end of generated files 31 - - Added support for Node.js v12 32 - ### Added 33 - - Added `request` property inside `ApiError` 34 - - Added support for `@depricated` inside models and operations 35 - 36 - ## [0.22.0] - 2022-04-26 37 - ### Fixed 38 - - Upgraded dependencies 39 - - Fixed issue with `null` value inside comments for OpenAPI v2 enums 40 - - Fixed issue with compatibility for latest version of Axios (0.27.x) 41 - ### Removed 42 - - Removed deprecated enum model generation 43 - 44 - ## [0.21.0] - 2022-04-06 45 - ### Fixed 46 - - Return `undefined` to match `noImplicitReturns` rule 47 - - Made `BaseHttpRequest` class abstract 48 - - Removed private fields using `#` inside `CancelablePromise` 49 - - Removed unneeded import `AbortController` from `node-fetch` client 50 - - Filter out wrong enum values 51 - 52 - ## [0.20.1] - 2022-02-25 53 - ### Fixed 54 - - Support enums with single quotes in names for V2 55 - 56 - ## [0.20.0] - 2022-02-25 57 - ### Fixed 58 - - Updated dependencies 59 - - Support enums with single quotes in names for V3 60 - - Generating better names when `operationId` is not given (breaking change) 61 - - Fixed issue where `x-enum` flags where breaking due to non-string values 62 - 63 - ## [0.19.0] - 2022-02-02 64 - ### Added 65 - - Support for Angular client with `--name` option 66 - - Added test cases for Angular client 67 - 68 - ## [0.18.2] - 2022-02-02 69 - ### Fixed 70 - - Updated dependencies 71 - - Fixed type definition 72 - ### Added 73 - - Added test cases for CLI commands 74 - - Added test cases for query parsing 75 - 76 - ## [0.18.1] - 2022-01-31 77 - ### Fixed 78 - - Escaping error description 79 - - Made `Client.request` and `BaseHttpRequest.config` props public 80 - 81 - _## [0.18.0] - 2022-01-28 82 - ### Added 83 - - Angular client generation! 84 - - Updated documentation with more examples and better descriptions 85 - 86 - ## [0.17.0] - 2022-01-26 87 - ### Fixed 88 - - Shorthand notation for properties passed through constructor 89 - - Simplified creation of headers 90 - - Prepare codebase for Angular client 91 - 92 - ## [0.16.2] - 2022-01-26 93 - ### Fixed 94 - - Removed dependency on `URLSearchParams` to support browser and node without any additional imports 95 - 96 - ## [0.16.1] - 2022-01-26 97 - ### Fixed 98 - - Correct export inside `index.ts` when giving a custom name 99 - 100 - ## [0.16.0] - 2022-01-25 101 - ### Added 102 - - Added option to set the indentation (spaces and tabs) 103 - - Added option to export separate client file that allows usage for multiple backends 104 - ### Fixed 105 - - Decoupled OpenAPI object from requests 106 - - Updated dependencies 107 - 108 - ## [0.15.0] - 2022-01-24 109 - ### Added 110 - - Added change log and releases on GitHub 111 - 112 - ## [0.14.0] - 2022-01-24 113 - ### Fixed 114 - - Added missing `postfix` options to typedef 115 - - Updated escaping of comments and descriptions 116 - - Better handling of services without tags 117 - - Updated dependencies
+147
packages/openapi-ts/CHANGELOG.md
··· 405 405 - Fix nested any-of 406 406 407 407 - Add const support 408 + 409 + ## 0.27.0 410 + 411 + ### Minor Changes 412 + 413 + - Reverted `@apidevtools/json-schema-ref-parser` to version 10.1.0 414 + 415 + ## 0.26.0 416 + 417 + ### Minor Changes 418 + 419 + - Upgraded dependencies 420 + 421 + ## 0.25.0 422 + 423 + ### Minor Changes 424 + 425 + - Upgraded dependencies 426 + - Allow usage of a custom axios instance 427 + - Added message in generated files 428 + 429 + ## 0.24.0 430 + 431 + ### Minor Changes 432 + 433 + - Upgraded dependencies 434 + - Fixed issue with Cancelable promise 435 + - Fixed issue with escaping reserved keywords in schema names 436 + - Added `--postfixModels` option 437 + 438 + ## 0.23.0 439 + 440 + ### Minor Changes 441 + 442 + - Upgraded dependencies 443 + - Added blank line at the end of generated files 444 + - Added support for Node.js v12 445 + - Added `request` property inside `ApiError` 446 + - Added support for `@depricated` inside models and operations 447 + 448 + ## 0.22.0 449 + 450 + ### Minor Changes 451 + 452 + - Upgraded dependencies 453 + - Fixed issue with `null` value inside comments for OpenAPI v2 enums 454 + - Fixed issue with compatibility for latest version of Axios (0.27.x) 455 + - Removed deprecated enum model generation 456 + 457 + ## 0.21.0 458 + 459 + ### Minor Changes 460 + 461 + - Return `undefined` to match `noImplicitReturns` rule 462 + - Made `BaseHttpRequest` class abstract 463 + - Removed private fields using `#` inside `CancelablePromise` 464 + - Removed unneeded import `AbortController` from `node-fetch` client 465 + - Filter out wrong enum values 466 + 467 + ## 0.20.1 468 + 469 + ### Patch Changes 470 + 471 + - Support enums with single quotes in names for V2 472 + 473 + ## 0.20.0 474 + 475 + ### Minor Changes 476 + 477 + - Updated dependencies 478 + - Support enums with single quotes in names for V3 479 + - Generating better names when `operationId` is not given (breaking change) 480 + - Fixed issue where `x-enum` flags where breaking due to non-string values 481 + 482 + ## 0.19.0 483 + 484 + ### Minor Changes 485 + 486 + - Support for Angular client with `--name` option 487 + - Added test cases for Angular client 488 + 489 + ## 0.18.2 490 + 491 + ### Patch Changes 492 + 493 + - Updated dependencies 494 + - Fixed type definition 495 + - Added test cases for CLI commands 496 + - Added test cases for query parsing 497 + 498 + ## 0.18.1 499 + 500 + ### Patch Changes 501 + 502 + - Escaping error description 503 + - Made `Client.request` and `BaseHttpRequest.config` props public 504 + 505 + ## 0.18.0 506 + 507 + ### Minor Changes 508 + 509 + - Angular client generation! 510 + - Updated documentation with more examples and better descriptions 511 + 512 + ## 0.17.0 513 + 514 + ### Minor Changes 515 + 516 + - Shorthand notation for properties passed through constructor 517 + - Simplified creation of headers 518 + - Prepare codebase for Angular client 519 + 520 + ## 0.16.2 521 + 522 + ### Patch Changes 523 + 524 + - Removed dependency on `URLSearchParams` to support browser and node without any additional imports 525 + 526 + ## 0.16.1 527 + 528 + ### Patch Changes 529 + 530 + - Correct export inside `index.ts` when giving a custom name 531 + 532 + ## 0.16.0 533 + 534 + ### Minor Changes 535 + 536 + - Added option to set the indentation (spaces and tabs) 537 + - Added option to export separate client file that allows usage for multiple backends 538 + - Decoupled OpenAPI object from requests 539 + - Updated dependencies 540 + 541 + ## 0.15.0 542 + 543 + ### Minor Changes 544 + 545 + - Added change log and releases on GitHub 546 + 547 + ## 0.14.0 548 + 549 + ### Minor Changes 550 + 551 + - Added missing `postfix` options to typedef 552 + - Updated escaping of comments and descriptions 553 + - Better handling of services without tags 554 + - Updated dependencies
+1 -2
packages/openapi-ts/README.md
··· 3 3 > ✨ Turn your OpenAPI specification into a beautiful TypeScript client 4 4 5 5 ## Table of Contents 6 - - [Table of Contents](#table-of-contents) 7 6 - [About](#about) 8 7 - [Features](#features) 9 8 - [Quick Start](#quick-start) ··· 241 240 242 241 ## Contributing 243 242 244 - Please refer to the [contributing guide](CONTRIBUTING.md) for how to install the project for development purposes. 243 + Please refer to the [contributing guide](../../CONTRIBUTING.md) for how to install the project for development purposes.
+2
pnpm-lock.yaml
··· 6878 6878 peerDependenciesMeta: 6879 6879 webpack: 6880 6880 optional: true 6881 + webpack-sources: 6882 + optional: true 6881 6883 dependencies: 6882 6884 webpack: 5.90.3(esbuild@0.20.1) 6883 6885 webpack-sources: 3.2.3