Temando Magento plugin v1.7
temando / open-api-renderer Goto Github PK
View Code? Open in Web Editor NEW๐ฉ A React renderer for OpenAPI v3.
License: MIT License
๐ฉ A React renderer for OpenAPI v3.
License: MIT License
Improve project docs to make it easier for others to consume and to contribute
Allow the app to preload a list of Open API files when it renders, e.g. like the following wireframe.
Also have a look at Redoc Demo
See descriminator
Currently the app does not render schema elements that have mixed data type, e.g.
"customAttributes": {
"default": [],
"type": "array",
"items": {
"type": "object",
"required": [
"key",
"value"
],
"properties": {
"key": {
"type": "string",
"pattern": "^[a-zA-Z0-9_-]+$"
},
"value": {
"type": [
"number",
"integer",
"string",
"boolean"
]
}
},
"additionalProperties": false
}
}
The app should be able to render the element, as below
Implement an interactive mode that works similar to the attached design.
Also see API console feature on ReDoc
See #32
JSON Schema defines several formats that it can support. Open API also defines some data types.
When crafting requests in the console, we should use "intellisense" to provide validation prior to sending the request.
The current setup only caters for the development environment.
We need to cater for at least production environment as well. This requires thinking about how the project will be deployed on a production environment, and update webpack config and scripts to support that workflow.
Implement a design that allows other developers to take the project and provide a custom theme, which will override the default theme used in the project.
The Open API v3 specification supports a number of JSON Schema properties. We should aim to support as many as possible:
Here's a link to the JSON Schema specification.
Also see JsonSchema constraints on ReDoc.
This document about schema support is useful, and should be expanded/part of a wider selection of docs that help developers understand what this project support of the Open API v3 specification.
See x-enumNames
This is the backend work to support #24 . Need to work out what data are required by BodySchema.js
and update the parser to return data accordingly.
If I scroll the contents (on the right hand side), it will take 2-3 seconds for the corresponding navigation on the left to be highlighted. This is not a great user experience.
The synchronisation should be immediate.
This issue is related to #18
We currently seem to have a bit of an ad-hoc eslint
configuration going on. This makes contribution from others difficult as they are essentially aligning to some weird hybrid set of rules.
I don't feel strongly about a particular configuration, but I'd suggest we migrate to Standard JS which provides eslint configs for standard
and react
and move on with life ๐
Visualise security scheme, based on securityDefinitions
on open API spec.
For example, given
"securityDefinitions": {
"Session": {
"type": "apiKey",
"name": "Session",
"description": "Requests made to the Temando Platform API must be authenticated with a Session header whose value is a valid session token. Session tokens expire and must be recreated for further requests to be made of the Temando Platform API.",
"in": "header"
}
},
The app could visualise the above information as below
Allow users to open a url (with some hash tag), that will open up the app and scroll to a tag or method matching the hash tag
This is related to #39
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.