import React, { Suspense } from "react";
import { Node_Type } from "./../../ricos-types/index.js";
const CollapsibleList = React.lazy(
  () => import(
    /* webpackChunkName: "ricos_plugin_collapsibleList_lazy" */
    "./collapsible-list.js"
  )
);
const CollapsibleListItem = React.lazy(
  () => import(
    /* webpackChunkName: "ricos_plugin_collapsibleListItem_lazy" */
    "./collapsible-list-item.js"
  )
);
const CollapsibleItemProperty = React.lazy(
  () => import(
    /* webpackChunkName: "ricos_plugin_collapsibleListPropertyRenderer_lazy" */
    "./collapsible-item-property.js"
  )
);
const CollapsibleListRenderer = ({ node, ...props }) => {
  return /* @__PURE__ */ React.createElement(CollapsibleList, { key: node.id, node, ...props });
};
const CollapsibleListLazy = ({ node, ...props }) => {
  return /* @__PURE__ */ React.createElement(Suspense, { fallback: "" }, /* @__PURE__ */ React.createElement(CollapsibleListRenderer, { key: node.id, node, ...props }));
};
const CollapsibleListItemRenderer = ({ node, ...props }) => {
  return /* @__PURE__ */ React.createElement(CollapsibleListItem, { key: node.id, node, ...props });
};
const CollapsibleListItemLazy = ({ node, ...props }) => {
  return /* @__PURE__ */ React.createElement(Suspense, { fallback: "" }, /* @__PURE__ */ React.createElement(CollapsibleListItemRenderer, { key: node.id, node, ...props }));
};
const CollapsibleItemPropertyRenderer = ({
  node,
  type,
  ...props
}) => {
  return /* @__PURE__ */ React.createElement(CollapsibleItemProperty, { key: node.id, node, ...props, type });
};
const CollapsibleItemTitlePropertyLazy = ({ node, ...props }) => {
  return /* @__PURE__ */ React.createElement(Suspense, { fallback: "" }, /* @__PURE__ */ React.createElement(CollapsibleItemPropertyRenderer, { key: node.id, node, ...props, type: "title" }));
};
const CollapsibleItemBodyPropertyLazy = ({ node, ...props }) => {
  return /* @__PURE__ */ React.createElement(Suspense, { fallback: "" }, /* @__PURE__ */ React.createElement(CollapsibleItemPropertyRenderer, { key: node.id, node, ...props, type: "body" }));
};
const nodeViewRenderers = {
  [Node_Type.COLLAPSIBLE_LIST]: CollapsibleListLazy,
  [Node_Type.COLLAPSIBLE_ITEM]: CollapsibleListItemLazy,
  [Node_Type.COLLAPSIBLE_ITEM_TITLE]: CollapsibleItemTitlePropertyLazy,
  [Node_Type.COLLAPSIBLE_ITEM_BODY]: CollapsibleItemBodyPropertyLazy
};
export {
  nodeViewRenderers
};
//# sourceMappingURL=node-view-renderers-lazy.js.map
