import { jsxs as t, Fragment as d, jsx as e } from "react/jsx-runtime";
import { H as c, T as r, C as a, a as n, y as s, K as l } from "../index-sdOMz8GW.js";
import { BookOpen as u } from "lucide-react";
import "react-router-dom";
import "react";
import "react-dom";
const P = () => {
  const o = [
    {
      key: "prop",
      label: "Property",
      render: (i) => /* @__PURE__ */ e("code", { className: "text-xs text-brand", children: String(i) })
    },
    {
      key: "type",
      label: "Type",
      render: (i) => /* @__PURE__ */ e("code", { className: "text-xs", children: String(i) })
    },
    {
      key: "required",
      label: "Required",
      render: (i) => {
        const p = String(i);
        return /* @__PURE__ */ e(l, { variant: "outline", className: "text-xs", children: p === "Yes" ? "Yes" : "Optional" });
      }
    },
    { key: "description", label: "Description" }
  ];
  return /* @__PURE__ */ t(d, { children: [
    /* @__PURE__ */ e(
      c,
      {
        title: "API Reference",
        description: "Complete API reference for all routing system interfaces and their properties.",
        icon: /* @__PURE__ */ e("div", { className: "w-20 h-20 sm:w-24 sm:h-24 md:w-32 md:h-32 bg-linear-to-br from-gray-500 via-slate-500 to-zinc-500 rounded-full flex items-center justify-center shadow-lg", children: /* @__PURE__ */ e(u, { className: "w-10 h-10 sm:w-12 sm:h-12 md:w-16 md:h-16 text-white filter drop-shadow-lg" }) })
      }
    ),
    /* @__PURE__ */ t("section", { className: "space-y-8", children: [
      /* @__PURE__ */ t("div", { className: "text-center", children: [
        /* @__PURE__ */ e(r, { tag: "h2", className: "mb-2", children: "StandaloneAppRoutesMenuItem" }),
        /* @__PURE__ */ e(
          r,
          {
            tag: "p",
            className: "text-gray-500 dark:text-gray-400 max-w-2xl mx-auto",
            children: "Properties for standalone route definitions"
          }
        )
      ] }),
      /* @__PURE__ */ e(a, { children: /* @__PURE__ */ e(n, { title: "Properties", children: /* @__PURE__ */ e(s, { columns: o, data: [
        {
          prop: "name",
          type: "string",
          required: "Yes",
          description: "Display name for navigation menu"
        },
        {
          prop: "path",
          type: "string",
          required: "Yes",
          description: "URL path for the route"
        },
        {
          prop: "component",
          type: "React.JSX.Element",
          required: "Yes",
          description: "Component to render for this route"
        },
        {
          prop: "icon",
          type: "React.ReactNode",
          required: "Optional",
          description: "Icon to display in navigation"
        },
        {
          prop: "dropdownItems",
          type: "StandaloneAppRoutesMenuItem[]",
          required: "Optional",
          description: "Array of nested sub-routes (recursive)"
        },
        {
          prop: "enableNestedRoutes",
          type: "boolean",
          required: "Optional",
          description: "Adds /* to path for nested routing within the component"
        },
        {
          prop: "isPublic",
          type: "boolean",
          required: "Optional",
          description: "Whether the route is publicly accessible"
        },
        {
          prop: "hide",
          type: "boolean",
          required: "Optional",
          description: "Hide route from navigation menu"
        },
        {
          prop: "href",
          type: "string",
          required: "Optional",
          description: "External URL (opens in new tab)"
        },
        {
          prop: "isActive",
          type: "boolean",
          required: "Optional",
          description: "Force active state in navigation"
        },
        {
          prop: "onClick",
          type: "() => void",
          required: "Optional",
          description: "Custom click handler for the menu item"
        }
      ] }) }) })
    ] }),
    /* @__PURE__ */ t("section", { className: "space-y-8", children: [
      /* @__PURE__ */ t("div", { className: "text-center", children: [
        /* @__PURE__ */ e(r, { tag: "h2", className: "mb-2", children: "IAppRouteConfig (MFE)" }),
        /* @__PURE__ */ e(
          r,
          {
            tag: "p",
            className: "text-gray-500 dark:text-gray-400 max-w-2xl mx-auto",
            children: "Properties for MFE route configurations (extends RouteProps)"
          }
        )
      ] }),
      /* @__PURE__ */ e(a, { children: /* @__PURE__ */ e(n, { title: "Properties", children: /* @__PURE__ */ e(s, { columns: o, data: [
        {
          prop: "key",
          type: "string",
          required: "Yes",
          description: "Unique identifier for the route"
        },
        {
          prop: "path",
          type: "string",
          required: "Yes",
          description: "URL path (inherited from RouteProps)"
        },
        {
          prop: "element",
          type: "React.ReactNode",
          required: "Yes",
          description: "Component to render (inherited from RouteProps)"
        },
        {
          prop: "isPublic",
          type: "boolean",
          required: "Optional",
          description: "If true, accessible without authentication (default: false)"
        },
        {
          prop: "disabled",
          type: "boolean",
          required: "Optional",
          description: "Temporarily disable this route"
        }
      ] }) }) })
    ] }),
    /* @__PURE__ */ t("section", { className: "space-y-8", children: [
      /* @__PURE__ */ t("div", { className: "text-center", children: [
        /* @__PURE__ */ e(r, { tag: "h2", className: "mb-2", children: "MFE ThemeProvider Props" }),
        /* @__PURE__ */ e(
          r,
          {
            tag: "p",
            className: "text-gray-500 dark:text-gray-400 max-w-2xl mx-auto",
            children: 'Required props when using architecturalPatterns="mfe"'
          }
        )
      ] }),
      /* @__PURE__ */ e(a, { children: /* @__PURE__ */ e(n, { title: "MFE-Specific Props", children: /* @__PURE__ */ e(s, { columns: o, data: [
        {
          prop: "architecturalPatterns",
          type: "'mfe'",
          required: "Yes",
          description: "Activates MFE mode"
        },
        {
          prop: "basePath",
          type: "string",
          required: "Yes",
          description: "Base path for the micro frontend (e.g., /my-app)"
        },
        {
          prop: "appRoutesConfig",
          type: "IAppRouteConfig[]",
          required: "Yes",
          description: "Array of route configurations"
        },
        {
          prop: "isAuthenticated",
          type: "boolean",
          required: "Yes",
          description: "Whether the user is authenticated"
        },
        {
          prop: "loginUrl",
          type: "string",
          required: "Yes",
          description: "Redirect URL for unauthenticated users"
        }
      ] }) }) })
    ] })
  ] });
};
export {
  P as default
};
