@smitch/fluid
Version:
A lightweight, Tailwind-powered React/Next.js UI component library.
21 lines • 836 B
JavaScript
"use client";
import { jsx as _jsx } from "react/jsx-runtime";
import { useEffect, useMemo } from "react";
import Prism from "prismjs";
var sizes = {
sm: "text-sm",
md: "text-base",
lg: "text-lg",
xl: "text-xl",
xxl: "text-2xl",
};
var Codeblock = function (_a) {
var _b = _a.language, language = _b === void 0 ? "plaintext" : _b, _c = _a.size, size = _c === void 0 ? "md" : _c, children = _a.children;
useEffect(function () {
Prism.highlightAll();
}, [children]);
var sizeClasses = useMemo(function () { return sizes[size]; }, [size]);
return (_jsx("pre", { className: "codeblock ".concat(sizeClasses), children: _jsx("code", { className: "language-".concat(language, " !whitespace-pre-wrap"), children: children }) }));
};
export default Codeblock;
//# sourceMappingURL=Codeblock.js.map