Giter Site home page Giter Site logo

Comments (9)

rohit-gohri avatar rohit-gohri commented on July 28, 2024 1

Just added a fix in #78 to allow passing both spec and specUrl, that way you can have the download button pointed to a yaml in static folder while still having parsed yaml for faster loading of page.

Will be out in next release

from redocusaurus.

rohit-gohri avatar rohit-gohri commented on July 28, 2024

Currently the yaml is read during the build process, converted to JSON and passed to Redoc. If you want to pass the raw yaml, better to put it in the static folder and pass a URL to it in the plugin options.

from redocusaurus.

AndreasA avatar AndreasA commented on July 28, 2024

@rohit-gohri Thanks for the feedback. I already put the file into the static folder.

How would be the best / recommended way to pass the URL to the plugin? Is there an example. I see that redoc itself seems to have options downloadLink and downloadFileName but I am not 100% sure how to use those.

from redocusaurus.

AndreasA avatar AndreasA commented on July 28, 2024

@rohit-gohri OK, if I provide a specUrl it works as intended. However, how can I set the spec URL correctly in the docusaurus.config.js file as the hostname etc. is not yet defined and just using /path/to/spec.yaml does not work as it fails with an invalid URI error.

from redocusaurus.

rohit-gohri avatar rohit-gohri commented on July 28, 2024

The recommended way by me would be to use the converted JSON as that is the fastest to load as no parsing needs to happen on client side.

If you want to allow downloading YAML and are okay with a little loading time, then put the the yaml in the static folder and pass the relative path in the specUrl option. Like here:

{
specUrl: `${process.env.DEPLOY_BASE_URL || '/'}openapi-page.yaml`,
routePath: '/using-relative-url/'
},

from redocusaurus.

rohit-gohri avatar rohit-gohri commented on July 28, 2024

(after you update to the latest version, just released a patch which allows for relative paths in urls)

from redocusaurus.

AndreasA avatar AndreasA commented on July 28, 2024

@rohit-gohri Thanks for adding support of this so fast.

So if I have a fix base URL, something like this ${BASE_URL}/path/to/static/openapi.yaml would be fine.

At least it works locally. Haven't deployed it ye but should work there too.

from redocusaurus.

rohit-gohri avatar rohit-gohri commented on July 28, 2024

So if I have a fix base URL, something like this ${BASE_URL}/path/to/static/openapi.yaml would be fine.

Yup, ideally I should be using the useBaseUrl hook in the Redoc component to automatically add it. But for now this works, maybe a fix for later.

from redocusaurus.

rogatec avatar rogatec commented on July 28, 2024

Just to be curious - the default name of the download file is swagger.json any chance to change the filename?

from redocusaurus.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.