Skip to content
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

[V3] OpenAPI 3.0 Preview #660

Open
wants to merge 49 commits into
base: main
Choose a base branch
from
Open

[V3] OpenAPI 3.0 Preview #660

wants to merge 49 commits into from

Conversation

sserrata
Copy link
Member

@sserrata sserrata commented Nov 17, 2023

Description

Long-standing PR for v3.0.0 release.

Preview: https://docusaurus-openapi-36b86--pr660-a47qtiik.web.app/

Motivation and Context

Provides support for Docusaurus v3.0.0

Note: this branch automatically deploys canary releases and will be periodically used to deploy 3.0.0-beta.x releases that can you be used in your project(s). Please check README/homepage/announcements for the latest beta release.

Copy link

github-actions bot commented Nov 17, 2023

Visit the preview URL for this PR (updated for commit 23c8c01):

https://docusaurus-openapi-36b86--pr660-a47qtiik.web.app

(expires Thu, 13 Jun 2024 17:02:50 GMT)

🔥 via Firebase Hosting GitHub Action 🌎

@jcwillox
Copy link

Thanks for putting this together, excited to get our docs up and running with Docusaurus 3 👍
I've just tested it on around 300 endpoints and had no issues with mdx or running it with docusaurus 3, everything appears to work correctly except the JSON syntax highlighting is not working for the response examples and the actual response body after using the send request button, the issue is also present in your preview deployment. For us, it's also not working in the editable request body, although we also had that specific issue in v2, so likely unrelated.

image

sserrata and others added 6 commits December 1, 2023 10:41
* add negative look behind to exclude colon delimited path segments (#663)

* use SCHEMA_TYPE to distinguish request/response to support readOnly/writeOnly properties (#665)

* Improve support for handling multipart form data (#666)

* use pdfblock to test multipart form data

* switch back to cors proxy

* add handler for generic key-value payload

* debug response content type

* refactor to download media and file content types

* switch back to petstore
* Introduce clean function for escaping headers and descriptions

* Remove escape from codeblocks

* Add typing to sidebar generation

* Update Docusaurus dependencies in packages

* Use improved TypeScript support of Docusaurus for demo

* Update tests
* TypeScript refactor ApiCodeBlock

* TypeScript refactor Tabs

* TypeScript refactor components

* Add inline code to clean method

* TypeScript refactor items

* Test ClientWidth arrows, update flatten TabChildren

* Lint fixes

* Fix Sidebar prettier and typing issues

* Fix greedy curly bracket escape
@lucasassisrosa
Copy link
Contributor

lucasassisrosa commented Jan 16, 2024

@sserrata can we include Callbacks Support in V3, please?

@lucasassisrosa
Copy link
Contributor

@sserrata can we include Callbacks Support in V3, please?

https://github.com/PaloAltoNetworks/docusaurus-openapi-docs/pull/700/files

* Add Callbacks support (#691)

* add support to callbacks in openapi specs

* set package manager in package json

* implement operations as tabs within request panel

* render callbacks below Request and Responses

* remove unwanted files

* rename create file

* restore json settings

* convert OperationTabs to typescript

* fix linter

* fix warning on lint order
sserrata and others added 2 commits March 15, 2024 15:49
* feat: implement  x-tagGroup feature (#737)

* impement redoc's x-tagGroup feature

* merge main

* update documentation

* fix filtered tags by group

* remove tracked .idea files

* add  option to readme

* merge main

* fix lint

* revert yarn.lock and linter

* cleanup missing types, dup imports and add restaurant example

* fix: Guard only undefined and empty strings (#725)

* Conditional display of header Request (#719)

Co-authored-by: Christian A. Mathiesen <christian@zaveit.no>

* update lock file

* feat: Implement schema pages behind a config option `showSchemas` (#736)

* feat: Implement schema pages behind a config option `showSchemas`

* Add `showSchemas` to petstore demo

* address linter errors

* enable schemas for petstore

* update lock file

* add missing heading import

* address linter errors

---------

Co-authored-by: Çağrı S <bencagri@users.noreply.github.com>
Co-authored-by: Florian Garcia <garcia.florian.perso@gmail.com>
Co-authored-by: chranmat <cam@mathix.net>
Co-authored-by: Christian A. Mathiesen <christian@zaveit.no>
Co-authored-by: Marc L <littlemarc2020@gmail.com>
@mason-at-pieces
Copy link

@sserrata I see, thanks for the explanation. May try out the canary but would obviously prefer a stable release. Either way, thanks and I'll do some testing with the canary 👍

* Prepare release v3.0.0-beta.6

* update compatibility matrix
sserrata and others added 2 commits March 20, 2024 13:09
…support to params (#754)

* avoid guarding 0 values

* support deprecated params

* update utils tests to should guard false

* always render required when true and apply strikethrough when deprecated
@mason-at-pieces
Copy link

Looking forward to testing the new parsers 🔥

sserrata and others added 18 commits March 21, 2024 11:18
…765)

* ensure qualifiers are rendered for polymorphic properties

* update createSchema test
* ensure merged schema is used to generate schema name and qualifier

* combine schema title and type when both are present

* cleanup formatting
* Prepare release v3.0.0-beta.9

* fix formatting issue
* upgrade lerna to 8.1.2

* update lockfile
* Make docs plugin configurable

* Update README
Co-authored-by: Tatiana <tatiana.perry@coalese.io>
* update vscode

* ensure cleanup of sidebars.ts and switch to recursive delete schemas
* add option to disable frontmatter openapi snippet compression

* disable compression for petstore

* explicitly check for true

* handle both compressed and uncompression api prop
@ElliotFriend
Copy link

Hi, there @sserrata!

I know the question of "when v3" has been asked and answered, so I won't bug you with the same thing. I do, however, want to drop some more detailed questions:

  1. Is there a public roadmap or checklist of what remains to be done? Are any of the GH issues targeted for v3 or anything? Any major blockers at the moment? As you said, it's a "moving target," but I'm curious what work still lies ahead. Because...
  2. I'd love to help! What can I do to pitch in? We use the plugin for a few different software packages in our docs site, and we're (maybe too?) eager to migrate off of docusaurus v2. I'd be happy to contribute some time and effort to help out with the work. I've gotten pretty ok at the inner-workings of docusaurus, so I hope I might be able to lend a hand.

P.S. The most recent commit, 23c8c01, doesn't seem to have generated a canary/beta release, from what I can tell.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet