{"version":3,"file":"Sitemap.js","names":[],"sources":["esm/fallbackViews/Sitemap.js"],"sourcesContent":["import * as React from \"react\";\nimport { Link } from \"../link/Link\";\nimport { matchDeepDynamicRouteName } from \"../router/matchers\";\nimport { getSortedRoutes } from \"../router/router\";\nimport { Fragment, jsx, jsxs } from \"react/jsx-runtime\";\nconst INDENT = 24;\nfunction getNavOptions() {\n  return {\n    title: \"sitemap\",\n    headerShown: false,\n    presentation: \"modal\",\n    animation: \"default\",\n    headerLargeTitleEnabled: false,\n    headerTitleStyle: { color: \"white\" },\n    headerTintColor: \"white\",\n    headerLargeTitleStyle: { color: \"white\" },\n    headerStyle: { backgroundColor: \"black\" }\n  };\n}\nfunction Sitemap() {\n  return /* @__PURE__ */ jsx(\n    \"main\",\n    {\n      style: {\n        minHeight: \"100vh\",\n        boxSizing: \"border-box\",\n        backgroundColor: \"black\",\n        color: \"white\",\n        padding: 12\n      },\n      children: /* @__PURE__ */ jsxs(\"div\", { style: { width: \"min(960px, 90vw)\", margin: \"0 auto\" }, children: [\n        /* @__PURE__ */ jsx(\"h1\", { style: { fontSize: 28, margin: \"12px 0 20px\" }, children: \"Sitemap\" }),\n        getSortedRoutes().map((route) => /* @__PURE__ */ jsx(\n          \"div\",\n          {\n            style: {\n              border: \"1px solid #323232\",\n              borderRadius: 19,\n              marginBottom: 12,\n              overflow: \"hidden\"\n            },\n            children: /* @__PURE__ */ jsx(FileItem, { route })\n          },\n          route.contextKey\n        ))\n      ] })\n    }\n  );\n}\nfunction FileItem({\n  route,\n  level = 0,\n  parents = [],\n  isInitial = false\n}) {\n  const disabled = route.children.length > 0;\n  const segments = React.useMemo(\n    () => [...parents, ...route.route.split(\"/\")],\n    [parents, route.route]\n  );\n  const href = React.useMemo(\n    () => \"/\" + segments.map((segment) => {\n      if (matchDeepDynamicRouteName(segment)) {\n        return `${segment}/${Date.now()}`;\n      }\n      return segment === \"index\" ? \"\" : segment;\n    }).filter(Boolean).join(\"/\"),\n    [segments]\n  );\n  const filename = React.useMemo(() => {\n    const contextSegments = route.contextKey.split(\"/\");\n    if (route.contextKey.match(/_layout\\.[jt]sx?$/)) {\n      return contextSegments.slice(-2).join(\"/\");\n    }\n    return contextSegments.slice(-route.route.split(\"/\").length).join(\"/\");\n  }, [route]);\n  const content = /* @__PURE__ */ jsxs(\n    \"div\",\n    {\n      style: {\n        display: \"flex\",\n        alignItems: \"center\",\n        justifyContent: \"space-between\",\n        gap: 16,\n        minHeight: 56,\n        boxSizing: \"border-box\",\n        padding: `16px ${INDENT}px 16px ${INDENT + level * INDENT}px`,\n        color: \"white\",\n        opacity: disabled ? 0.6 : 1\n      },\n      children: [\n        /* @__PURE__ */ jsxs(\"span\", { style: { fontSize: 20 }, children: [\n          route.children.length ? \"\\u{1F5C0}\" : \"\\u{1F4C4}\",\n          \" \",\n          filename\n        ] }),\n        /* @__PURE__ */ jsxs(\"span\", { style: { display: \"flex\", alignItems: \"center\", gap: 8 }, children: [\n          (isInitial || route.generated) && /* @__PURE__ */ jsx(\"span\", { style: { fontSize: 13 }, children: isInitial ? \"Initial\" : \"Virtual\" }),\n          !disabled && /* @__PURE__ */ jsx(\"span\", { \"aria-hidden\": \"true\", children: \"\\u203A\" })\n        ] })\n      ]\n    }\n  );\n  return /* @__PURE__ */ jsxs(Fragment, { children: [\n    !route.internal && (disabled ? content : /* @__PURE__ */ jsx(\n      Link,\n      {\n        href,\n        replace: true,\n        accessibilityLabel: route.contextKey,\n        style: {\n          display: \"block\",\n          textDecoration: \"none\"\n        },\n        children: content\n      }\n    )),\n    route.children.map((child) => /* @__PURE__ */ jsx(\n      FileItem,\n      {\n        route: child,\n        isInitial: route.initialRouteName === child.route,\n        parents: segments,\n        level: level + (route.generated ? 0 : 1)\n      },\n      child.contextKey\n    ))\n  ] });\n}\nexport {\n  Sitemap,\n  getNavOptions\n};\n//# sourceMappingURL=Sitemap.web.js.map\n"],"mappings":"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"}