@liveblocks/react-ui
Version:
A set of React pre-built components for the Liveblocks products. Liveblocks is the all-in-one toolkit to build collaborative products like Figma, Notion, and more.
49 lines (44 loc) • 1.15 kB
JavaScript
"use client";
;
var jsxRuntime = require('react/jsx-runtime');
var react = require('react');
const defaultComponents = {
Anchor: "a"
};
const ComponentsContext = react.createContext(
void 0
);
function useComponents(components) {
const contextComponents = react.useContext(ComponentsContext);
return react.useMemo(
() => ({
...defaultComponents,
...contextComponents,
...components
}),
[contextComponents, components]
);
}
function ComponentsProvider({
children,
components: providerComponents
}) {
const contextComponents = react.useContext(ComponentsContext);
const components = react.useMemo(
() => ({
...defaultComponents,
...contextComponents,
...providerComponents
}),
[contextComponents, providerComponents]
);
return /* @__PURE__ */ jsxRuntime.jsx(ComponentsContext.Provider, {
value: components,
children
});
}
exports.ComponentsContext = ComponentsContext;
exports.ComponentsProvider = ComponentsProvider;
exports.defaultComponents = defaultComponents;
exports.useComponents = useComponents;
//# sourceMappingURL=components.cjs.map