@workday/canvas-kit-docs
Version:
Documentation components of Canvas Kit components
32 lines (31 loc) • 1.88 kB
JavaScript
import React from 'react';
import { registerWidget, Value } from '../Value';
import { renderTypeParameters } from '../widgetUtils';
registerWidget('primitive', ({ value }) => (React.createElement("span", { className: "token primitive" }, value.value)));
registerWidget('boolean', ({ value }) => (React.createElement("span", { className: "token primitive" }, String(value.value))));
registerWidget('string', ({ value }) => (React.createElement("span", { className: "token string" },
"'",
value.value,
"'")));
registerWidget('number', ({ value }) => (React.createElement("span", { className: "token number" }, value.value)));
registerWidget('generic', ({ value }) => (React.createElement("span", { className: "token symbol" }, value.name)));
registerWidget('type', ({ value, doc }) => {
return (React.createElement(React.Fragment, null,
(doc === null || doc === void 0 ? void 0 : doc.name) && (React.createElement(React.Fragment, null,
React.createElement("span", { className: "token keyword" }, "type"),
' ',
React.createElement("span", { className: "token symbol" }, (doc === null || doc === void 0 ? void 0 : doc.name) || 'unknown'),
renderTypeParameters(value.typeParameters),
" ",
React.createElement("span", { className: "token operator" }, "="),
' ')),
React.createElement(Value, { value: value.value })));
});
registerWidget('infer', ({ value }) => (React.createElement(React.Fragment, null,
React.createElement("span", { className: "token keyword" }, "infer"),
" ",
React.createElement(Value, { value: value.value }))));
registerWidget('keyof', ({ value }) => (React.createElement(React.Fragment, null,
React.createElement("span", { className: "token keyword" }, "keyof"),
" ",
React.createElement(Value, { value: value.name }))));