import { noop } from 'lodash' import { Badge } from 'ui' import Description from '@/components/interfaces/Docs/Description' function getColumnType(type: string, format: string) { // json and jsonb both have type=undefined, so check format instead if (type === undefined && (format === 'jsonb' || format === 'json')) return 'json' switch (type) { case 'string': return 'string' case 'integer': return 'number' case 'json': return 'json' case 'number': return 'number' case 'boolean': return 'boolean' default: return '' } } interface ParamProps { name: string type: string format: string required: boolean description: boolean metadata?: any onDesciptionUpdated?: () => void } const Param = ({ name, type, format, required, description, metadata = {}, onDesciptionUpdated = noop, }: ParamProps) => { return (

{name}

{required ? 'Required' : 'Optional'}
{format && (
{getColumnType(type, format)}
{format}
{description !== false && ( <>
)}
)}
) } export default Param