ncb-component
Version:
NCB design system
18 lines (17 loc) • 740 B
JavaScript
"use client";
import { jsx as _jsx } from "react/jsx-runtime";
import { useMemo, useRef } from "react";
import { createCache, extractStyle, StyleProvider } from "@ant-design/cssinjs";
export const StyledComponentsRegistry = ({ children, useServerInsertedHTML, }) => {
const cache = useMemo(() => createCache(), []);
const isServerInserted = useRef(false);
useServerInsertedHTML(() => {
// avoid duplicate css insert
if (isServerInserted.current) {
return;
}
isServerInserted.current = true;
return (_jsx("style", { id: "antd", dangerouslySetInnerHTML: { __html: extractStyle(cache, true) } }));
});
return _jsx(StyleProvider, { cache: cache, children: children });
};