zudoku 0.39.3 → 0.39.4

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (60) hide show
  1. package/dist/config/validators/common.d.ts +871 -23
  2. package/dist/config/validators/common.js +44 -1
  3. package/dist/config/validators/common.js.map +1 -1
  4. package/dist/config/validators/validate.d.ts +280 -9
  5. package/dist/lib/components/Footer.d.ts +1 -0
  6. package/dist/lib/components/Footer.js +32 -0
  7. package/dist/lib/components/Footer.js.map +1 -0
  8. package/dist/lib/components/Layout.js +2 -1
  9. package/dist/lib/components/Layout.js.map +1 -1
  10. package/dist/lib/components/Pagination.d.ts +2 -1
  11. package/dist/lib/components/Pagination.js +2 -2
  12. package/dist/lib/components/Pagination.js.map +1 -1
  13. package/dist/lib/components/navigation/Sidebar.js +1 -10
  14. package/dist/lib/components/navigation/Sidebar.js.map +1 -1
  15. package/dist/lib/components/navigation/SidebarWrapper.d.ts +2 -3
  16. package/dist/lib/components/navigation/SidebarWrapper.js +12 -3
  17. package/dist/lib/components/navigation/SidebarWrapper.js.map +1 -1
  18. package/dist/lib/core/ZudokuContext.d.ts +4 -2
  19. package/dist/lib/core/ZudokuContext.js.map +1 -1
  20. package/dist/lib/plugins/api-catalog/Catalog.js +1 -1
  21. package/dist/lib/plugins/api-catalog/Catalog.js.map +1 -1
  22. package/dist/lib/plugins/markdown/MdxPage.js +1 -1
  23. package/dist/lib/plugins/markdown/MdxPage.js.map +1 -1
  24. package/dist/lib/plugins/openapi/OperationList.js +1 -1
  25. package/dist/lib/plugins/openapi/OperationList.js.map +1 -1
  26. package/dist/lib/plugins/openapi/OperationListItem.js +1 -1
  27. package/dist/lib/plugins/openapi/OperationListItem.js.map +1 -1
  28. package/lib/{MdxPage-JscVnWM8.js → MdxPage-Vw_dc9Yz.js} +24 -23
  29. package/lib/MdxPage-Vw_dc9Yz.js.map +1 -0
  30. package/lib/{OasProvider-C4T5TU8Z.js → OasProvider-CjXTP-nz.js} +2 -2
  31. package/lib/{OasProvider-C4T5TU8Z.js.map → OasProvider-CjXTP-nz.js.map} +1 -1
  32. package/lib/{OperationList-C-gBHUou.js → OperationList-BYemrDYk.js} +17 -15
  33. package/lib/{OperationList-C-gBHUou.js.map → OperationList-BYemrDYk.js.map} +1 -1
  34. package/lib/{Pagination-DCCvGq0m.js → Pagination-SdlocK96.js} +14 -12
  35. package/lib/Pagination-SdlocK96.js.map +1 -0
  36. package/lib/{SchemaList-DuN6ThXR.js → SchemaList-CAeKy9pV.js} +2 -2
  37. package/lib/{SchemaList-DuN6ThXR.js.map → SchemaList-CAeKy9pV.js.map} +1 -1
  38. package/lib/{index-DsdAaiwx.js → index-C1OzjGUK.js} +4 -4
  39. package/lib/{index-DsdAaiwx.js.map → index-C1OzjGUK.js.map} +1 -1
  40. package/lib/{index-D6ktNq4i.js → index-D48iOQvJ.js} +433 -323
  41. package/lib/index-D48iOQvJ.js.map +1 -0
  42. package/lib/zudoku.components.js +1 -1
  43. package/lib/zudoku.plugin-api-catalog.js +48 -55
  44. package/lib/zudoku.plugin-api-catalog.js.map +1 -1
  45. package/lib/zudoku.plugin-markdown.js +1 -1
  46. package/lib/zudoku.plugin-openapi.js +1 -1
  47. package/package.json +3 -3
  48. package/src/lib/components/Footer.tsx +136 -0
  49. package/src/lib/components/Layout.tsx +2 -0
  50. package/src/lib/components/Pagination.tsx +4 -1
  51. package/src/lib/components/navigation/Sidebar.tsx +26 -38
  52. package/src/lib/components/navigation/SidebarWrapper.tsx +12 -5
  53. package/src/lib/core/ZudokuContext.ts +7 -2
  54. package/src/lib/plugins/api-catalog/Catalog.tsx +1 -4
  55. package/src/lib/plugins/markdown/MdxPage.tsx +3 -2
  56. package/src/lib/plugins/openapi/OperationList.tsx +8 -6
  57. package/src/lib/plugins/openapi/OperationListItem.tsx +2 -2
  58. package/lib/MdxPage-JscVnWM8.js.map +0 -1
  59. package/lib/Pagination-DCCvGq0m.js.map +0 -1
  60. package/lib/index-D6ktNq4i.js.map +0 -1
@@ -1,24 +1,26 @@
1
1
  import { j as s } from "./jsx-runtime-CYK1ROHF.js";
2
- import { ArrowLeftIcon as n, ArrowRightIcon as i } from "lucide-react";
2
+ import { ArrowLeftIcon as i, ArrowRightIcon as l } from "lucide-react";
3
3
  import { L as o } from "./chunk-HA7DTUK3-C4gP41vD.js";
4
- import { c as l } from "./cn-qaFjX9_3.js";
5
- import { B as r } from "./index-D6ktNq4i.js";
6
- const d = ({
4
+ import { c } from "./cn-qaFjX9_3.js";
5
+ import { B as r } from "./index-D48iOQvJ.js";
6
+ const f = ({
7
7
  prev: t,
8
- next: a
8
+ next: a,
9
+ className: n
9
10
  }) => {
10
11
  const e = "group transition-all p-5 space-x-1 transition-all hover:text-foreground";
11
12
  return /* @__PURE__ */ s.jsxs(
12
13
  "div",
13
14
  {
14
- className: l(
15
- "flex my-8 -mx-4 text-muted-foreground font-semibold",
16
- t ? "justify-between" : "justify-end"
15
+ className: c(
16
+ "flex -mx-4 text-muted-foreground font-semibold",
17
+ t ? "justify-between" : "justify-end",
18
+ n
17
19
  ),
18
20
  children: [
19
21
  t && /* @__PURE__ */ s.jsx(r, { variant: "ghost", asChild: !0, children: /* @__PURE__ */ s.jsxs(o, { to: t.to, relative: "path", className: e, children: [
20
22
  /* @__PURE__ */ s.jsx(
21
- n,
23
+ i,
22
24
  {
23
25
  className: "group-hover:motion-safe:animate-bounce-x-start",
24
26
  size: 12
@@ -29,7 +31,7 @@ const d = ({
29
31
  a && /* @__PURE__ */ s.jsx(r, { variant: "ghost", asChild: !0, children: /* @__PURE__ */ s.jsxs(o, { to: a.to, relative: "path", className: e, children: [
30
32
  /* @__PURE__ */ s.jsx("span", { className: "truncate ", children: a.label }),
31
33
  /* @__PURE__ */ s.jsx(
32
- i,
34
+ l,
33
35
  {
34
36
  className: "group-hover:motion-safe:animate-bounce-x-end",
35
37
  size: 12
@@ -41,6 +43,6 @@ const d = ({
41
43
  );
42
44
  };
43
45
  export {
44
- d as P
46
+ f as P
45
47
  };
46
- //# sourceMappingURL=Pagination-DCCvGq0m.js.map
48
+ //# sourceMappingURL=Pagination-SdlocK96.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Pagination-SdlocK96.js","sources":["../src/lib/components/Pagination.tsx"],"sourcesContent":["import { ArrowLeftIcon, ArrowRightIcon } from \"lucide-react\";\nimport { Link } from \"react-router\";\nimport { cn } from \"../util/cn.js\";\nimport { Button } from \"./index.js\";\n\nexport const Pagination = ({\n prev,\n next,\n className,\n}: {\n prev: { to: string; label: string } | undefined;\n next: { to: string; label: string } | undefined;\n className?: string;\n}) => {\n const linkClass =\n \"group transition-all p-5 space-x-1 transition-all hover:text-foreground\";\n\n return (\n <div\n className={cn(\n \"flex -mx-4 text-muted-foreground font-semibold\",\n prev ? \"justify-between\" : \"justify-end\",\n className,\n )}\n >\n {prev && (\n <Button variant=\"ghost\" asChild>\n <Link to={prev.to} relative=\"path\" className={linkClass}>\n <ArrowLeftIcon\n className=\"group-hover:motion-safe:animate-bounce-x-start\"\n size={12}\n />\n <span className=\"truncate\">{prev.label}</span>\n </Link>\n </Button>\n )}\n {next && (\n <Button variant=\"ghost\" asChild>\n <Link to={next.to} relative=\"path\" className={linkClass}>\n <span className=\"truncate \">{next.label}</span>\n <ArrowRightIcon\n className=\"group-hover:motion-safe:animate-bounce-x-end\"\n size={12}\n />\n </Link>\n </Button>\n )}\n </div>\n );\n};\n"],"names":["Pagination","prev","next","className","linkClass","jsxs","cn","jsx","Button","Link","ArrowLeftIcon","ArrowRightIcon"],"mappings":";;;;;AAKO,MAAMA,IAAa,CAAC;AAAA,EACzB,MAAAC;AAAA,EACA,MAAAC;AAAA,EACA,WAAAC;AACF,MAIM;AACJ,QAAMC,IACJ;AAGA,SAAAC,gBAAAA,EAAA;AAAA,IAAC;AAAA,IAAA;AAAA,MACC,WAAWC;AAAA,QACT;AAAA,QACAL,IAAO,oBAAoB;AAAA,QAC3BE;AAAA,MACF;AAAA,MAEC,UAAA;AAAA,QAAAF,KACEM,gBAAAA,EAAAA,IAAAC,GAAA,EAAO,SAAQ,SAAQ,SAAO,IAC7B,UAAAH,gBAAAA,EAAAA,KAACI,GAAK,EAAA,IAAIR,EAAK,IAAI,UAAS,QAAO,WAAWG,GAC5C,UAAA;AAAA,UAAAG,gBAAAA,EAAA;AAAA,YAACG;AAAA,YAAA;AAAA,cACC,WAAU;AAAA,cACV,MAAM;AAAA,YAAA;AAAA,UACR;AAAA,UACCH,gBAAAA,EAAA,IAAA,QAAA,EAAK,WAAU,YAAY,YAAK,MAAM,CAAA;AAAA,QAAA,EAAA,CACzC,EACF,CAAA;AAAA,QAEDL,KACCK,gBAAAA,EAAAA,IAACC,GAAO,EAAA,SAAQ,SAAQ,SAAO,IAC7B,UAACH,gBAAAA,EAAAA,KAAAI,GAAA,EAAK,IAAIP,EAAK,IAAI,UAAS,QAAO,WAAWE,GAC5C,UAAA;AAAA,UAAAG,gBAAAA,EAAA,IAAC,QAAK,EAAA,WAAU,aAAa,UAAAL,EAAK,OAAM;AAAA,UACxCK,gBAAAA,EAAA;AAAA,YAACI;AAAA,YAAA;AAAA,cACC,WAAU;AAAA,cACV,MAAM;AAAA,YAAA;AAAA,UAAA;AAAA,QACR,EAAA,CACF,EACF,CAAA;AAAA,MAAA;AAAA,IAAA;AAAA,EAEJ;AAEJ;"}
@@ -3,7 +3,7 @@ import { s as i } from "./index-LNp6rxyU.js";
3
3
  import { d as j } from "./hook-CqpVYDqN.js";
4
4
  import { ChevronsUpDownIcon as N, ChevronsDownUpIcon as y, ChevronRightIcon as C } from "lucide-react";
5
5
  import { B as b } from "./Button-Fp19CMUr.js";
6
- import { C as o, a as c, b as m, c as v } from "./index-DsdAaiwx.js";
6
+ import { C as o, a as c, b as m, c as v } from "./index-C1OzjGUK.js";
7
7
  import { C as w } from "./CategoryHeading-DpB47wvk.js";
8
8
  import { H as l, M as S, P as z } from "./Markdown-aF5FdsNi.js";
9
9
  import { T } from "./Toc-YBsgI72s.js";
@@ -145,4 +145,4 @@ function J() {
145
145
  export {
146
146
  J as SchemaList
147
147
  };
148
- //# sourceMappingURL=SchemaList-DuN6ThXR.js.map
148
+ //# sourceMappingURL=SchemaList-CAeKy9pV.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"SchemaList-DuN6ThXR.js","sources":["../src/lib/plugins/openapi/SchemaList.tsx"],"sourcesContent":["import slugify from \"@sindresorhus/slugify\";\nimport { useSuspenseQuery } from \"@tanstack/react-query\";\nimport {\n ChevronRightIcon,\n ChevronsDownUpIcon,\n ChevronsUpDownIcon,\n} from \"lucide-react\";\nimport { Button } from \"zudoku/ui/Button.js\";\nimport {\n Collapsible,\n CollapsibleContent,\n CollapsibleTrigger,\n} from \"zudoku/ui/Collapsible.js\";\nimport { CategoryHeading } from \"../../components/CategoryHeading.js\";\nimport { Heading } from \"../../components/Heading.js\";\nimport { Markdown, ProseClasses } from \"../../components/Markdown.js\";\nimport { Toc } from \"../../components/navigation/Toc.js\";\nimport { cn } from \"../../util/cn.js\";\nimport { useCreateQuery } from \"./client/useCreateQuery.js\";\nimport { useOasConfig } from \"./context.js\";\nimport { graphql } from \"./graphql/gql.js\";\nimport { SchemaView } from \"./schema/SchemaView.js\";\n\nconst GET_SCHEMAS = graphql(/* GraphQL */ `\n query GetSchemas($input: JSON!, $type: SchemaType!) {\n schema(input: $input, type: $type) {\n title\n description\n summary\n components {\n schemas {\n name\n schema\n extensions\n }\n }\n }\n }\n`);\n\nexport function SchemaList() {\n const { input, type, versions, version, options } = useOasConfig();\n const schemasQuery = useCreateQuery(GET_SCHEMAS, {\n input,\n type,\n });\n const { data } = useSuspenseQuery(schemasQuery);\n\n const schemas = data.schema.components?.schemas ?? [];\n\n if (!schemas.length) {\n return <div>No schemas found</div>;\n }\n\n const hasMultipleVersions = Object.entries(versions).length > 1;\n const showVersions =\n options?.showVersionSelect === \"always\" ||\n (hasMultipleVersions && options?.showVersionSelect !== \"hide\");\n\n return (\n <div\n className=\"grid grid-cols-[--sidecar-grid-cols] gap-8 justify-between\"\n data-pagefind-filter=\"section:openapi\"\n data-pagefind-meta=\"section:openapi\"\n >\n <div className=\"pt-[--padding-content-top] pb-[--padding-content-bottom]\">\n <Collapsible className=\"w-full\">\n <div className=\"flex flex-col gap-y-4 sm:flex-row justify-around items-start sm:items-end\">\n <div className=\"flex-1\">\n <CategoryHeading>{data.schema.title}</CategoryHeading>\n <Heading\n level={1}\n id=\"schemas\"\n registerSidebarAnchor\n className=\"mb-0\"\n >\n Schemas\n {showVersions && (\n <span className=\"text-xl text-muted-foreground ml-1.5\">\n ({version})\n </span>\n )}\n </Heading>\n </div>\n {data.schema.description && (\n <CollapsibleTrigger className=\"flex items-center gap-1 text-sm font-medium text-muted-foreground group\">\n <span>API information</span>\n <ChevronsUpDownIcon\n className=\"group-data-[state=open]:hidden translate-y-px\"\n size={14}\n />\n <ChevronsDownUpIcon\n className=\"group-data-[state=closed]:hidden translate-y-px\"\n size={13}\n />\n </CollapsibleTrigger>\n )}\n </div>\n {data.schema.description && (\n <CollapsibleContent className=\"CollapsibleContent\">\n <div\n className={cn(\n ProseClasses,\n \"pt-4 max-w-full prose-img:max-w-prose\",\n )}\n >\n <Markdown\n className=\"border rounded bg-muted/25 border-border px-2.5 md:px-4\"\n content={data.schema.description}\n />\n </div>\n </CollapsibleContent>\n )}\n </Collapsible>\n <hr className=\"my-8\" />\n <div className=\"flex flex-col gap-y-5\">\n {schemas.map((schema) => (\n <Collapsible key={schema.name} className=\"group\" defaultOpen>\n <Heading\n registerSidebarAnchor\n level={2}\n className=\"flex items-center gap-1 justify-between w-fit\"\n id={slugify(schema.name)}\n >\n {schema.name}{\" \"}\n <CollapsibleTrigger asChild>\n <Button variant=\"ghost\" size=\"icon\" className=\"size-6\">\n <ChevronRightIcon\n size={16}\n className=\"group-data-[state=open]:rotate-90 transition cursor-pointer\"\n />\n </Button>\n </CollapsibleTrigger>\n </Heading>\n <CollapsibleContent className=\"mt-4 CollapsibleContent\">\n <SchemaView schema={schema.schema} />\n </CollapsibleContent>\n </Collapsible>\n ))}\n </div>\n </div>\n <Toc\n entries={schemas.map((schema) => ({\n id: slugify(schema.name),\n value: schema.name,\n depth: 1,\n }))}\n />\n </div>\n );\n}\n"],"names":["GET_SCHEMAS","graphql","SchemaList","input","type","versions","version","options","useOasConfig","schemasQuery","useCreateQuery","data","useSuspenseQuery","schemas","_a","jsx","hasMultipleVersions","showVersions","jsxs","Collapsible","CategoryHeading","Heading","CollapsibleTrigger","ChevronsUpDownIcon","ChevronsDownUpIcon","CollapsibleContent","cn","ProseClasses","Markdown","schema","slugify","Button","ChevronRightIcon","SchemaView","Toc"],"mappings":"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"}
1
+ {"version":3,"file":"SchemaList-CAeKy9pV.js","sources":["../src/lib/plugins/openapi/SchemaList.tsx"],"sourcesContent":["import slugify from \"@sindresorhus/slugify\";\nimport { useSuspenseQuery } from \"@tanstack/react-query\";\nimport {\n ChevronRightIcon,\n ChevronsDownUpIcon,\n ChevronsUpDownIcon,\n} from \"lucide-react\";\nimport { Button } from \"zudoku/ui/Button.js\";\nimport {\n Collapsible,\n CollapsibleContent,\n CollapsibleTrigger,\n} from \"zudoku/ui/Collapsible.js\";\nimport { CategoryHeading } from \"../../components/CategoryHeading.js\";\nimport { Heading } from \"../../components/Heading.js\";\nimport { Markdown, ProseClasses } from \"../../components/Markdown.js\";\nimport { Toc } from \"../../components/navigation/Toc.js\";\nimport { cn } from \"../../util/cn.js\";\nimport { useCreateQuery } from \"./client/useCreateQuery.js\";\nimport { useOasConfig } from \"./context.js\";\nimport { graphql } from \"./graphql/gql.js\";\nimport { SchemaView } from \"./schema/SchemaView.js\";\n\nconst GET_SCHEMAS = graphql(/* GraphQL */ `\n query GetSchemas($input: JSON!, $type: SchemaType!) {\n schema(input: $input, type: $type) {\n title\n description\n summary\n components {\n schemas {\n name\n schema\n extensions\n }\n }\n }\n }\n`);\n\nexport function SchemaList() {\n const { input, type, versions, version, options } = useOasConfig();\n const schemasQuery = useCreateQuery(GET_SCHEMAS, {\n input,\n type,\n });\n const { data } = useSuspenseQuery(schemasQuery);\n\n const schemas = data.schema.components?.schemas ?? [];\n\n if (!schemas.length) {\n return <div>No schemas found</div>;\n }\n\n const hasMultipleVersions = Object.entries(versions).length > 1;\n const showVersions =\n options?.showVersionSelect === \"always\" ||\n (hasMultipleVersions && options?.showVersionSelect !== \"hide\");\n\n return (\n <div\n className=\"grid grid-cols-[--sidecar-grid-cols] gap-8 justify-between\"\n data-pagefind-filter=\"section:openapi\"\n data-pagefind-meta=\"section:openapi\"\n >\n <div className=\"pt-[--padding-content-top] pb-[--padding-content-bottom]\">\n <Collapsible className=\"w-full\">\n <div className=\"flex flex-col gap-y-4 sm:flex-row justify-around items-start sm:items-end\">\n <div className=\"flex-1\">\n <CategoryHeading>{data.schema.title}</CategoryHeading>\n <Heading\n level={1}\n id=\"schemas\"\n registerSidebarAnchor\n className=\"mb-0\"\n >\n Schemas\n {showVersions && (\n <span className=\"text-xl text-muted-foreground ml-1.5\">\n ({version})\n </span>\n )}\n </Heading>\n </div>\n {data.schema.description && (\n <CollapsibleTrigger className=\"flex items-center gap-1 text-sm font-medium text-muted-foreground group\">\n <span>API information</span>\n <ChevronsUpDownIcon\n className=\"group-data-[state=open]:hidden translate-y-px\"\n size={14}\n />\n <ChevronsDownUpIcon\n className=\"group-data-[state=closed]:hidden translate-y-px\"\n size={13}\n />\n </CollapsibleTrigger>\n )}\n </div>\n {data.schema.description && (\n <CollapsibleContent className=\"CollapsibleContent\">\n <div\n className={cn(\n ProseClasses,\n \"pt-4 max-w-full prose-img:max-w-prose\",\n )}\n >\n <Markdown\n className=\"border rounded bg-muted/25 border-border px-2.5 md:px-4\"\n content={data.schema.description}\n />\n </div>\n </CollapsibleContent>\n )}\n </Collapsible>\n <hr className=\"my-8\" />\n <div className=\"flex flex-col gap-y-5\">\n {schemas.map((schema) => (\n <Collapsible key={schema.name} className=\"group\" defaultOpen>\n <Heading\n registerSidebarAnchor\n level={2}\n className=\"flex items-center gap-1 justify-between w-fit\"\n id={slugify(schema.name)}\n >\n {schema.name}{\" \"}\n <CollapsibleTrigger asChild>\n <Button variant=\"ghost\" size=\"icon\" className=\"size-6\">\n <ChevronRightIcon\n size={16}\n className=\"group-data-[state=open]:rotate-90 transition cursor-pointer\"\n />\n </Button>\n </CollapsibleTrigger>\n </Heading>\n <CollapsibleContent className=\"mt-4 CollapsibleContent\">\n <SchemaView schema={schema.schema} />\n </CollapsibleContent>\n </Collapsible>\n ))}\n </div>\n </div>\n <Toc\n entries={schemas.map((schema) => ({\n id: slugify(schema.name),\n value: schema.name,\n depth: 1,\n }))}\n />\n </div>\n );\n}\n"],"names":["GET_SCHEMAS","graphql","SchemaList","input","type","versions","version","options","useOasConfig","schemasQuery","useCreateQuery","data","useSuspenseQuery","schemas","_a","jsx","hasMultipleVersions","showVersions","jsxs","Collapsible","CategoryHeading","Heading","CollapsibleTrigger","ChevronsUpDownIcon","ChevronsDownUpIcon","CollapsibleContent","cn","ProseClasses","Markdown","schema","slugify","Button","ChevronRightIcon","SchemaView","Toc"],"mappings":"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"}
@@ -2011,7 +2011,7 @@ const gs = {
2011
2011
  }), ht = (t) => ({
2012
2012
  path: t.routePath,
2013
2013
  async lazy() {
2014
- const { OasProvider: n } = await import("./OasProvider-C4T5TU8Z.js");
2014
+ const { OasProvider: n } = await import("./OasProvider-CjXTP-nz.js");
2015
2015
  return {
2016
2016
  element: /* @__PURE__ */ e.jsx(
2017
2017
  n,
@@ -2032,7 +2032,7 @@ const gs = {
2032
2032
  }) => ({
2033
2033
  path: t,
2034
2034
  async lazy() {
2035
- const { OperationList: a } = await import("./OperationList-C-gBHUou.js");
2035
+ const { OperationList: a } = await import("./OperationList-BYemrDYk.js");
2036
2036
  return { element: /* @__PURE__ */ e.jsx(a, { tag: n, untagged: s }) };
2037
2037
  }
2038
2038
  }), ks = (t, n) => {
@@ -2055,7 +2055,7 @@ const gs = {
2055
2055
  {
2056
2056
  path: R(t, "~schemas"),
2057
2057
  lazy: async () => {
2058
- const { SchemaList: a } = await import("./SchemaList-DuN6ThXR.js");
2058
+ const { SchemaList: a } = await import("./SchemaList-CAeKy9pV.js");
2059
2059
  return { element: /* @__PURE__ */ e.jsx(a, {}) };
2060
2060
  }
2061
2061
  }
@@ -2224,4 +2224,4 @@ export {
2224
2224
  ia as o,
2225
2225
  Mn as u
2226
2226
  };
2227
- //# sourceMappingURL=index-DsdAaiwx.js.map
2227
+ //# sourceMappingURL=index-C1OzjGUK.js.map