1.0.2 • Published 2 years ago
@tealina/doc-types v1.0.2
API document type designed for transformation tools
Pre-knowledge
There's a package call tealina, it offer some CLI commands make create API service more easier, one of the command is
tealina gdoc, it generate adoc.jsonfile.
Install
Should be add as dependencies, not devDependencies, because the DocKind is exported as const object
pnpm add @tealina/doc-types
yarn add @tealina/doc-types
bun add @tealina/doc-types
npm i @tealina/doc-typesDemo
//doc.json
{
"apis": {
"get": { // http method
"health": { // endpoind
"response": {// DocNode
"kind": 4, // DocKind
"id": 268
},
}
}
},
"entityRefs": {
"268": {
"name": "{ status: string; }",
"props": [
{
"kind": 0,// DocKind
"type": "string",
"name": "status"
}
]
}
}
}Every DocNode has a kind property, it's easy to code with switch case.
import { DocNode, DocKind, EntityRef } from '@tealina/doc-types'
function tranform2span(docNode:DocNode){
switch(docNode.kind){
case DocKind.Primitive:
return <span>{docNode.type}</span>
...
}
}Convention
The name of your package should have a clear name with tealina-doc prefix.