diff options
Diffstat (limited to 'docs/src/components')
-rw-r--r-- | docs/src/components/ClassPropertyRef.tsx | 54 |
1 files changed, 54 insertions, 0 deletions
diff --git a/docs/src/components/ClassPropertyRef.tsx b/docs/src/components/ClassPropertyRef.tsx new file mode 100644 index 00000000..7246663b --- /dev/null +++ b/docs/src/components/ClassPropertyRef.tsx @@ -0,0 +1,54 @@ +import React from "react"; + +interface ClassPropertyRefProps { + name: string; + details: string; + required: boolean; + default: string; +} + +const PYTHON_TYPES = { + string: "str", + integer: "int", +}; + +export default function ClassPropertyRef(props: ClassPropertyRefProps) { + const details = JSON.parse(props.details); + + return ( + <> + <div> + <h4 style={{ display: "inline-block", marginRight: "10px" }}> + {props.name} + </h4> + {props.required && ( + <span + style={{ + color: "red", + fontSize: "11px", + marginRight: "4px", + borderRadius: "4px", + border: "1px solid red", + padding: "1px 2px", + }} + > + REQUIRED + </span> + )} + <span> + {details.type && `(${PYTHON_TYPES[details.type] || details.type})`} + </span> + + {props.default && ( + <span> + {" "} + = {details.type === "string" && '"'} + {props.default} + {details.type === "string" && '"'} + </span> + )} + </div> + <p>{details.description}</p> + </> + ); +} |