import { require_client } from "./chunk-LQCEGDY4.js"; import { AnchorMdx, CodeOrSourceMdx, Docs, HeadersMdx } from "./chunk-MRDNCWBJ.js"; import { require_react } from "./chunk-GIE7IIVL.js"; import { __toESM } from "./chunk-USJHI7ER.js"; // node_modules/@storybook/addon-docs/dist/chunk-S4VUQJ4A.mjs var import_react2 = __toESM(require_react(), 1); // node_modules/@storybook/react-dom-shim/dist/react-18.mjs var import_react = __toESM(require_react(), 1); var import_client = __toESM(require_client(), 1); var nodes = /* @__PURE__ */ new Map(); var WithCallback = ({ callback, children }) => { let once = (0, import_react.useRef)(); return (0, import_react.useLayoutEffect)(() => { once.current !== callback && (once.current = callback, callback()); }, [callback]), children; }; var renderElement = async (node, el) => { let root = await getReactRoot(el); return new Promise((resolve) => { root.render(import_react.default.createElement(WithCallback, { callback: () => resolve(null) }, node)); }); }; var unmountElement = (el, shouldUseNewRootApi) => { let root = nodes.get(el); root && (root.unmount(), nodes.delete(el)); }; var getReactRoot = async (el) => { let root = nodes.get(el); return root || (root = import_client.default.createRoot(el), nodes.set(el, root)), root; }; // node_modules/@storybook/addon-docs/dist/chunk-S4VUQJ4A.mjs var defaultComponents = { code: CodeOrSourceMdx, a: AnchorMdx, ...HeadersMdx }; var ErrorBoundary = class extends import_react2.Component { constructor() { super(...arguments); this.state = { hasError: false }; } static getDerivedStateFromError() { return { hasError: true }; } componentDidCatch(err) { let { showException } = this.props; showException(err); } render() { let { hasError } = this.state, { children } = this.props; return hasError ? null : children; } }; var DocsRenderer = class { constructor() { this.render = async (context, docsParameter, element) => { let components = { ...defaultComponents, ...docsParameter == null ? void 0 : docsParameter.components }, TDocs = Docs; return new Promise((resolve, reject) => { import("./@mdx-js_react.js").then(({ MDXProvider }) => renderElement(import_react2.default.createElement(ErrorBoundary, { showException: reject, key: Math.random() }, import_react2.default.createElement(MDXProvider, { components }, import_react2.default.createElement(TDocs, { context, docsParameter }))), element)).then(() => resolve()); }); }, this.unmount = (element) => { unmountElement(element); }; } }; export { defaultComponents, DocsRenderer }; //# sourceMappingURL=chunk-3QCWNYFX.js.map