zudoku 0.39.5 → 0.40.1

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 (249) hide show
  1. package/dist/app/entry.client.js +2 -0
  2. package/dist/app/entry.client.js.map +1 -1
  3. package/dist/config/config.d.ts +3 -1
  4. package/dist/config/loader.d.ts +1 -0
  5. package/dist/config/loader.js +1 -1
  6. package/dist/config/loader.js.map +1 -1
  7. package/dist/config/validators/BuildSchema.d.ts +60 -0
  8. package/dist/config/validators/BuildSchema.js +31 -0
  9. package/dist/config/validators/BuildSchema.js.map +1 -0
  10. package/dist/config/validators/common.d.ts +7 -51
  11. package/dist/config/validators/common.js +1 -7
  12. package/dist/config/validators/common.js.map +1 -1
  13. package/dist/config/validators/icon-types.d.ts +1 -1
  14. package/dist/config/validators/validate.d.ts +2 -18
  15. package/dist/index.d.ts +1 -1
  16. package/dist/lib/authentication/providers/clerk.js +2 -2
  17. package/dist/lib/authentication/providers/clerk.js.map +1 -1
  18. package/dist/lib/components/Footer.js +2 -2
  19. package/dist/lib/components/Footer.js.map +1 -1
  20. package/dist/lib/components/Layout.js +2 -1
  21. package/dist/lib/components/Layout.js.map +1 -1
  22. package/dist/lib/components/Search.js +7 -1
  23. package/dist/lib/components/Search.js.map +1 -1
  24. package/dist/lib/components/navigation/Sidebar.js +3 -1
  25. package/dist/lib/components/navigation/Sidebar.js.map +1 -1
  26. package/dist/lib/components/navigation/SidebarWrapper.js +1 -1
  27. package/dist/lib/components/navigation/SidebarWrapper.js.map +1 -1
  28. package/dist/lib/plugins/openapi/processors/removeExtensions.d.ts +8 -0
  29. package/dist/lib/plugins/openapi/{post-processors → processors}/removeExtensions.js +1 -1
  30. package/dist/lib/plugins/openapi/processors/removeExtensions.js.map +1 -0
  31. package/dist/lib/plugins/openapi/{post-processors → processors}/removeExtensions.test.js +26 -6
  32. package/dist/lib/plugins/openapi/processors/removeExtensions.test.js.map +1 -0
  33. package/dist/lib/plugins/openapi/{post-processors → processors}/removeParameters.d.ts +3 -1
  34. package/dist/lib/plugins/openapi/{post-processors → processors}/removeParameters.js +1 -1
  35. package/dist/lib/plugins/openapi/processors/removeParameters.js.map +1 -0
  36. package/dist/lib/plugins/openapi/{post-processors → processors}/removeParameters.test.js +53 -25
  37. package/dist/lib/plugins/openapi/processors/removeParameters.test.js.map +1 -0
  38. package/dist/lib/plugins/openapi/{post-processors → processors}/removePaths.d.ts +3 -1
  39. package/dist/lib/plugins/openapi/{post-processors → processors}/removePaths.js +1 -1
  40. package/dist/lib/plugins/openapi/processors/removePaths.js.map +1 -0
  41. package/dist/lib/plugins/openapi/processors/removePaths.test.js +144 -0
  42. package/dist/lib/plugins/openapi/processors/removePaths.test.js.map +1 -0
  43. package/dist/lib/plugins/openapi/processors/traverse.js.map +1 -0
  44. package/dist/lib/ui/Callout.js +1 -1
  45. package/dist/lib/ui/Callout.js.map +1 -1
  46. package/dist/lib/ui/Form.d.ts +1 -1
  47. package/dist/lib/util/MdxComponents.d.ts +1 -0
  48. package/dist/lib/util/MdxComponents.js +2 -0
  49. package/dist/lib/util/MdxComponents.js.map +1 -1
  50. package/dist/lib/util/detectOS.d.ts +1 -0
  51. package/dist/lib/util/detectOS.js +11 -0
  52. package/dist/lib/util/detectOS.js.map +1 -0
  53. package/dist/vite/plugin-api.js +33 -18
  54. package/dist/vite/plugin-api.js.map +1 -1
  55. package/dist/vite/plugin-sidebar.js +1 -1
  56. package/dist/vite/plugin-sidebar.js.map +1 -1
  57. package/dist/zuplo/enrich-with-zuplo.d.ts +3 -3
  58. package/dist/zuplo/enrich-with-zuplo.js +18 -17
  59. package/dist/zuplo/enrich-with-zuplo.js.map +1 -1
  60. package/dist/zuplo/with-zuplo-processors.d.ts +2 -2
  61. package/dist/zuplo/with-zuplo-processors.js +6 -6
  62. package/dist/zuplo/with-zuplo-processors.js.map +1 -1
  63. package/dist/zuplo/with-zuplo.d.ts +1 -1
  64. package/lib/{AuthenticationPlugin-foqdvvkf.js → AuthenticationPlugin-CJOFRBk3.js} +4 -4
  65. package/lib/{AuthenticationPlugin-foqdvvkf.js.map → AuthenticationPlugin-CJOFRBk3.js.map} +1 -1
  66. package/lib/{Button-Fp19CMUr.js → Button-BBNrKpQd.js} +2 -2
  67. package/lib/{Button-Fp19CMUr.js.map → Button-BBNrKpQd.js.map} +1 -1
  68. package/lib/{Callout-B2vsR09t.js → Callout-D3Ja4OPX.js} +14 -13
  69. package/lib/{Callout-B2vsR09t.js.map → Callout-D3Ja4OPX.js.map} +1 -1
  70. package/lib/{CategoryHeading-DpB47wvk.js → CategoryHeading-D06WK_Wo.js} +2 -2
  71. package/lib/{CategoryHeading-DpB47wvk.js.map → CategoryHeading-D06WK_Wo.js.map} +1 -1
  72. package/lib/{Dialog-sbgekbjb.js → Dialog-ByYz4ABw.js} +2 -2
  73. package/lib/{Dialog-sbgekbjb.js.map → Dialog-ByYz4ABw.js.map} +1 -1
  74. package/lib/{Drawer-kDAfOq_2.js → Drawer-CEwbkLDb.js} +2 -2
  75. package/lib/Drawer-CEwbkLDb.js.map +1 -0
  76. package/lib/{Markdown-aF5FdsNi.js → Markdown-C5h6bxbE.js} +4239 -4073
  77. package/lib/Markdown-C5h6bxbE.js.map +1 -0
  78. package/lib/{MdxPage-Vw_dc9Yz.js → MdxPage-B66ht0D_.js} +9 -9
  79. package/lib/{MdxPage-Vw_dc9Yz.js.map → MdxPage-B66ht0D_.js.map} +1 -1
  80. package/lib/{OasProvider-C5paEivQ.js → OasProvider-BKPF0Pbt.js} +6 -6
  81. package/lib/{OasProvider-C5paEivQ.js.map → OasProvider-BKPF0Pbt.js.map} +1 -1
  82. package/lib/{OperationList-Ds9Izgkn.js → OperationList-0bhBU7ME.js} +16 -16
  83. package/lib/{OperationList-Ds9Izgkn.js.map → OperationList-0bhBU7ME.js.map} +1 -1
  84. package/lib/{Pagination-SdlocK96.js → Pagination-Bt1czAiJ.js} +4 -4
  85. package/lib/{Pagination-SdlocK96.js.map → Pagination-Bt1czAiJ.js.map} +1 -1
  86. package/lib/{RouteGuard-CqZPoZYJ.js → RouteGuard-BZ_VsiXc.js} +6 -6
  87. package/lib/{RouteGuard-CqZPoZYJ.js.map → RouteGuard-BZ_VsiXc.js.map} +1 -1
  88. package/lib/{SchemaList-NZbDXAV5.js → SchemaList-CsTIT1pi.js} +10 -10
  89. package/lib/{SchemaList-NZbDXAV5.js.map → SchemaList-CsTIT1pi.js.map} +1 -1
  90. package/lib/{SchemaView-B3fOPR4V.js → SchemaView-DCSWtnYr.js} +5 -5
  91. package/lib/{SchemaView-B3fOPR4V.js.map → SchemaView-DCSWtnYr.js.map} +1 -1
  92. package/lib/{Select-DVFRKf1R.js → Select-Dg5R11Dx.js} +4 -4
  93. package/lib/{Select-DVFRKf1R.js.map → Select-Dg5R11Dx.js.map} +1 -1
  94. package/lib/{SlotletProvider-DXvc0aY6.js → SlotletProvider-VUmTNmLZ.js} +41 -39
  95. package/lib/SlotletProvider-VUmTNmLZ.js.map +1 -0
  96. package/lib/{Spinner-CE68iCm0.js → Spinner-mNLZ6awP.js} +2 -2
  97. package/lib/{Spinner-CE68iCm0.js.map → Spinner-mNLZ6awP.js.map} +1 -1
  98. package/lib/{SyntaxHighlight-BEoSoPEo.js → SyntaxHighlight-CxhyyMkF.js} +6 -6
  99. package/lib/{SyntaxHighlight-BEoSoPEo.js.map → SyntaxHighlight-CxhyyMkF.js.map} +1 -1
  100. package/lib/{Toc-YBsgI72s.js → Toc-BK39DQvI.js} +3 -3
  101. package/lib/{Toc-YBsgI72s.js.map → Toc-BK39DQvI.js.map} +1 -1
  102. package/lib/{_commonjsHelpers-BkfeUUK-.js → _commonjsHelpers-B4e78b8K.js} +2 -2
  103. package/lib/_commonjsHelpers-B4e78b8K.js.map +1 -0
  104. package/lib/{chunk-HA7DTUK3-C4gP41vD.js → chunk-KNED5TY2-BUPjb3LQ.js} +314 -313
  105. package/lib/chunk-KNED5TY2-BUPjb3LQ.js.map +1 -0
  106. package/lib/{context-DLCwaMXN.js → context-Lrf2Y9bR.js} +2 -2
  107. package/lib/{context-DLCwaMXN.js.map → context-Lrf2Y9bR.js.map} +1 -1
  108. package/lib/{createServer-mYvGvmc0.js → createServer-DLN7APz_.js} +5381 -5517
  109. package/lib/createServer-DLN7APz_.js.map +1 -0
  110. package/lib/{hook-CqpVYDqN.js → hook-pPrHCB6G.js} +460 -465
  111. package/lib/hook-pPrHCB6G.js.map +1 -0
  112. package/lib/{index-PGJOZ6R-.js → index-Ba_X7EnR.js} +16 -16
  113. package/lib/{index-PGJOZ6R-.js.map → index-Ba_X7EnR.js.map} +1 -1
  114. package/lib/index-CuBIgTKC.js +316 -0
  115. package/lib/index-CuBIgTKC.js.map +1 -0
  116. package/lib/{index-Dl3Yl0yb.js → index-DcHeSvkE.js} +51 -38
  117. package/lib/index-DcHeSvkE.js.map +1 -0
  118. package/lib/index-DwT-v3zK.js.map +1 -1
  119. package/lib/{index-D48iOQvJ.js → index-tpbiZmWp.js} +586 -543
  120. package/lib/index-tpbiZmWp.js.map +1 -0
  121. package/lib/index.esm-D2ZUREQN.js +1216 -0
  122. package/lib/index.esm-D2ZUREQN.js.map +1 -0
  123. package/lib/jsx-runtime-C5mzlN2N.js +285 -0
  124. package/lib/jsx-runtime-C5mzlN2N.js.map +1 -0
  125. package/lib/{mutation-8LjrN7uz.js → mutation-Csa9eQDM.js} +70 -67
  126. package/lib/mutation-Csa9eQDM.js.map +1 -0
  127. package/lib/{prism-csharp.min-bQAo2pmx.js → prism-csharp.min-C43x1RY2.js} +2 -2
  128. package/lib/{prism-csharp.min-bQAo2pmx.js.map → prism-csharp.min-C43x1RY2.js.map} +1 -1
  129. package/lib/{prism-java.min-BpvsOuIa.js → prism-java.min-CQzr40NQ.js} +2 -2
  130. package/lib/{prism-java.min-BpvsOuIa.js.map → prism-java.min-CQzr40NQ.js.map} +1 -1
  131. package/lib/{prism-ruby.min-Dx9KO9ds.js → prism-ruby.min-L9OdQ6tU.js} +2 -2
  132. package/lib/{prism-ruby.min-Dx9KO9ds.js.map → prism-ruby.min-L9OdQ6tU.js.map} +1 -1
  133. package/lib/{prism-typescript.min-CD7H2IYQ.js → prism-typescript.min-qTySPvCh.js} +2 -2
  134. package/lib/{prism-typescript.min-CD7H2IYQ.js.map → prism-typescript.min-qTySPvCh.js.map} +1 -1
  135. package/lib/{post-processors → processors}/removeExtensions.js +1 -1
  136. package/lib/processors/removeExtensions.js.map +1 -0
  137. package/lib/{post-processors → processors}/removeParameters.js +1 -1
  138. package/lib/processors/removeParameters.js.map +1 -0
  139. package/lib/{post-processors → processors}/removePaths.js +1 -1
  140. package/lib/processors/removePaths.js.map +1 -0
  141. package/lib/ui/Accordion.js +1 -1
  142. package/lib/ui/ActionButton.js +3 -3
  143. package/lib/ui/Alert.js +1 -1
  144. package/lib/ui/AlertDialog.js +1 -1
  145. package/lib/ui/Badge.js +1 -1
  146. package/lib/ui/Breadcrumb.js +1 -1
  147. package/lib/ui/Button.js +1 -1
  148. package/lib/ui/Callout.js +10 -9
  149. package/lib/ui/Callout.js.map +1 -1
  150. package/lib/ui/Card.js +1 -1
  151. package/lib/ui/Carousel.js +207 -207
  152. package/lib/ui/Carousel.js.map +1 -1
  153. package/lib/ui/Checkbox.js +1 -1
  154. package/lib/ui/Command.js +3 -3
  155. package/lib/ui/Dialog.js +1 -1
  156. package/lib/ui/Drawer.js +2 -2
  157. package/lib/ui/DropdownMenu.js +1 -1
  158. package/lib/ui/Form.js +2 -2
  159. package/lib/ui/HoverCard.js +1 -1
  160. package/lib/ui/Input.js +1 -1
  161. package/lib/ui/Label.js +1 -1
  162. package/lib/ui/Pagination.js +1 -1
  163. package/lib/ui/Popover.js +1 -1
  164. package/lib/ui/Progress.js +1 -1
  165. package/lib/ui/RadioGroup.js +1 -1
  166. package/lib/ui/ScrollArea.js +1 -1
  167. package/lib/ui/Select.js +1 -1
  168. package/lib/ui/Skeleton.js +1 -1
  169. package/lib/ui/Slider.js +1 -1
  170. package/lib/ui/Stepper.js +1 -1
  171. package/lib/ui/Switch.js +1 -1
  172. package/lib/ui/SyntaxHighlight.js +2 -2
  173. package/lib/ui/Tabs.js +1 -1
  174. package/lib/ui/Textarea.js +1 -1
  175. package/lib/ui/Toggle.js +1 -1
  176. package/lib/ui/ToggleGroup.js +1 -1
  177. package/lib/ui/Tooltip.js +1 -1
  178. package/lib/{useExposedProps-B9qXJedG.js → useExposedProps-Dq2yUQIG.js} +2 -2
  179. package/lib/{useExposedProps-B9qXJedG.js.map → useExposedProps-Dq2yUQIG.js.map} +1 -1
  180. package/lib/zudoku.auth-auth0.js +1 -1
  181. package/lib/zudoku.auth-clerk.js +4 -4
  182. package/lib/zudoku.auth-clerk.js.map +1 -1
  183. package/lib/zudoku.auth-openid.js +5 -5
  184. package/lib/zudoku.components.js +7 -7
  185. package/lib/zudoku.hooks.js +1 -1
  186. package/lib/zudoku.icons.js +1 -1
  187. package/lib/zudoku.plugin-api-catalog.js +6 -6
  188. package/lib/zudoku.plugin-api-keys.js +6 -6
  189. package/lib/zudoku.plugin-custom-pages.js +3 -3
  190. package/lib/zudoku.plugin-markdown.js +2 -2
  191. package/lib/zudoku.plugin-openapi.js +4 -4
  192. package/lib/zudoku.plugin-redirect.js +1 -1
  193. package/lib/zudoku.plugin-search-inkeep.js +1 -1
  194. package/lib/zudoku.plugin-search-pagefind.js +7 -7
  195. package/package.json +61 -62
  196. package/src/app/entry.client.tsx +2 -0
  197. package/src/app/main.css +8 -2
  198. package/src/lib/authentication/providers/clerk.tsx +2 -2
  199. package/src/lib/components/Footer.tsx +6 -3
  200. package/src/lib/components/Layout.tsx +8 -1
  201. package/src/lib/components/Search.tsx +14 -3
  202. package/src/lib/components/navigation/Sidebar.tsx +8 -1
  203. package/src/lib/components/navigation/SidebarWrapper.tsx +1 -1
  204. package/src/lib/plugins/openapi/{post-processors → processors}/removeExtensions.test.ts +29 -9
  205. package/src/lib/plugins/openapi/{post-processors → processors}/removeExtensions.ts +5 -3
  206. package/src/lib/plugins/openapi/{post-processors → processors}/removeParameters.test.ts +67 -33
  207. package/src/lib/plugins/openapi/{post-processors → processors}/removeParameters.ts +5 -3
  208. package/src/lib/plugins/openapi/processors/removePaths.test.ts +167 -0
  209. package/src/lib/plugins/openapi/{post-processors → processors}/removePaths.ts +5 -3
  210. package/src/lib/ui/Callout.tsx +1 -0
  211. package/src/lib/util/MdxComponents.tsx +2 -0
  212. package/src/lib/util/detectOS.ts +9 -0
  213. package/dist/lib/plugins/openapi/post-processors/removeExtensions.d.ts +0 -7
  214. package/dist/lib/plugins/openapi/post-processors/removeExtensions.js.map +0 -1
  215. package/dist/lib/plugins/openapi/post-processors/removeExtensions.test.js.map +0 -1
  216. package/dist/lib/plugins/openapi/post-processors/removeParameters.js.map +0 -1
  217. package/dist/lib/plugins/openapi/post-processors/removeParameters.test.js.map +0 -1
  218. package/dist/lib/plugins/openapi/post-processors/removePaths.js.map +0 -1
  219. package/dist/lib/plugins/openapi/post-processors/removePaths.test.js +0 -104
  220. package/dist/lib/plugins/openapi/post-processors/removePaths.test.js.map +0 -1
  221. package/dist/lib/plugins/openapi/post-processors/traverse.js.map +0 -1
  222. package/lib/Drawer-kDAfOq_2.js.map +0 -1
  223. package/lib/Markdown-aF5FdsNi.js.map +0 -1
  224. package/lib/SlotletProvider-DXvc0aY6.js.map +0 -1
  225. package/lib/_commonjsHelpers-BkfeUUK-.js.map +0 -1
  226. package/lib/chunk-HA7DTUK3-C4gP41vD.js.map +0 -1
  227. package/lib/createServer-mYvGvmc0.js.map +0 -1
  228. package/lib/hook-CqpVYDqN.js.map +0 -1
  229. package/lib/index-D48iOQvJ.js.map +0 -1
  230. package/lib/index-Dl3Yl0yb.js.map +0 -1
  231. package/lib/index-gQD2h1wX.js +0 -447
  232. package/lib/index-gQD2h1wX.js.map +0 -1
  233. package/lib/index.esm--gIChbWs.js +0 -1207
  234. package/lib/index.esm--gIChbWs.js.map +0 -1
  235. package/lib/jsx-runtime-CYK1ROHF.js +0 -446
  236. package/lib/jsx-runtime-CYK1ROHF.js.map +0 -1
  237. package/lib/mutation-8LjrN7uz.js.map +0 -1
  238. package/lib/post-processors/removeExtensions.js.map +0 -1
  239. package/lib/post-processors/removeParameters.js.map +0 -1
  240. package/lib/post-processors/removePaths.js.map +0 -1
  241. package/src/lib/plugins/openapi/post-processors/removePaths.test.ts +0 -126
  242. /package/dist/lib/plugins/openapi/{post-processors → processors}/removeExtensions.test.d.ts +0 -0
  243. /package/dist/lib/plugins/openapi/{post-processors → processors}/removeParameters.test.d.ts +0 -0
  244. /package/dist/lib/plugins/openapi/{post-processors → processors}/removePaths.test.d.ts +0 -0
  245. /package/dist/lib/plugins/openapi/{post-processors → processors}/traverse.d.ts +0 -0
  246. /package/dist/lib/plugins/openapi/{post-processors → processors}/traverse.js +0 -0
  247. /package/lib/{post-processors → processors}/traverse.js +0 -0
  248. /package/lib/{post-processors → processors}/traverse.js.map +0 -0
  249. /package/src/lib/plugins/openapi/{post-processors → processors}/traverse.ts +0 -0
@@ -0,0 +1 @@
1
+ {"version":3,"file":"SlotletProvider-VUmTNmLZ.js","sources":["../src/lib/components/DeveloperHint.tsx","../src/lib/components/NotFoundPage.tsx","../src/lib/ui/SyntaxHighlight.tsx","../src/lib/errors/ErrorAlert.tsx","../src/lib/errors/RouterError.tsx","../../../node_modules/.pnpm/react-is@19.1.0/node_modules/react-is/cjs/react-is.production.js","../../../node_modules/.pnpm/react-is@19.1.0/node_modules/react-is/cjs/react-is.development.js","../../../node_modules/.pnpm/react-is@19.1.0/node_modules/react-is/index.js","../src/lib/components/SlotletProvider.tsx"],"sourcesContent":["import type { ReactNode } from \"react\";\nimport { Callout } from \"../ui/Callout.js\";\nimport { Markdown } from \"./Markdown.js\";\n\nexport const DeveloperHint = ({\n children,\n className,\n}: {\n children: ReactNode;\n className?: string;\n}) => {\n if (process.env.NODE_ENV !== \"development\") return;\n\n return (\n <Callout type=\"caution\" title=\"Developer hint\" className={className}>\n <div className=\"flex flex-col gap-2\">\n {typeof children === \"string\" ? (\n <Markdown content={children} />\n ) : (\n <div>{children}</div>\n )}\n <small className=\"italic\">\n Note: This hint is only shown in development mode.\n </small>\n </div>\n </Callout>\n );\n};\n","import { UnlinkIcon } from \"lucide-react\";\nimport { Link, useParams } from \"react-router\";\nimport { CategoryHeading } from \"./CategoryHeading.js\";\nimport { DeveloperHint } from \"./DeveloperHint.js\";\nimport { Heading } from \"./Heading.js\";\nimport { ProseClasses } from \"./Markdown.js\";\n\nexport const NotFoundPage = () => {\n const params = useParams();\n\n return (\n <div className={ProseClasses + \" h-full pt-[--padding-content-top]\"}>\n <CategoryHeading>404</CategoryHeading>\n <Heading level={1} className=\"flex gap-3.5 items-center\">\n Page not found\n <UnlinkIcon size={24} />\n </Heading>\n <DeveloperHint>\n Start by adding a file at{\" \"}\n <code>\n {\"{PROJECT_ROOT}\"}/{params[\"*\"]}.mdx\n </code>{\" \"}\n and add some content to make this error go away.\n </DeveloperHint>\n <p>\n It seems that the page you are looking for does not exist or may have\n been moved. Please check the URL for any typos or use the navigation\n menu to find the correct page.\n </p>\n <Link to=\"/\">Go back home</Link>\n </div>\n );\n};\n","import {\n Highlight,\n Prism,\n themes,\n type HighlightProps,\n} from \"prism-react-renderer\";\n\nimport { CheckIcon, CopyIcon } from \"lucide-react\";\n\nglobalThis.Prism = Prism;\n// @ts-expect-error This is untyped\nvoid import(\"prismjs/components/prism-bash.min.js\");\n// @ts-expect-error This is untyped\nvoid import(\"prismjs/components/prism-ruby.min.js\");\n// @ts-expect-error This is untyped\nvoid import(\"prismjs/components/prism-markup.js\");\n// @ts-expect-error This is untyped\nvoid import(\"prismjs/components/prism-json.min.js\");\n// @ts-expect-error This is untyped\nvoid import(\"prismjs/components/prism-java.min.js\");\n// @ts-expect-error This is untyped\nvoid import(\"prismjs/components/prism-csharp.min.js\");\n// @ts-expect-error This is untyped\nvoid import(\"prismjs/components/prism-objectivec.min.js\");\n// @ts-expect-error This is untyped\nvoid import(\"prismjs/components/prism-markdown.min.js\");\n// @ts-expect-error This is untyped\nvoid import(\"prismjs/components/prism-javascript.min.js\");\n// @ts-expect-error This is untyped\nvoid import(\"prismjs/components/prism-typescript.min.js\");\n// @ts-expect-error This is untyped\nvoid import(\"prismjs/components/prism-jsstacktrace.min.js\");\n\nimport { useTheme } from \"next-themes\";\nimport { memo, useState } from \"react\";\nimport { ClientOnly } from \"../components/ClientOnly.js\";\nimport { cn } from \"../util/cn.js\";\n\nexport type SyntaxHighlightProps = {\n className?: string;\n noBackground?: boolean;\n wrapLines?: boolean;\n showLanguageIndicator?: boolean;\n language?: string;\n title?: string;\n children?: string;\n code?: string;\n showCopy?: \"hover\" | \"always\" | \"never\";\n showCopyText?: boolean;\n disabled?: boolean;\n} & Omit<HighlightProps, \"children\" | \"language\">;\n\nconst remapLang = {\n mdx: \"md\",\n} as Record<string, string>;\n\nconst SyntaxHighlightInner = ({\n language = \"plain\",\n showCopy = \"hover\",\n showCopyText,\n title,\n children,\n disabled,\n ...props\n}: SyntaxHighlightProps) => {\n const { resolvedTheme } = useTheme();\n const [isCopied, setIsCopied] = useState(false);\n\n const code = children ?? props.code;\n\n if (!code) {\n return null;\n }\n\n const highlightTheme =\n resolvedTheme === \"dark\" ? themes.vsDark : themes.github;\n\n // hardcoded values from the themes to avoid color flash in SSR\n const themeColorClasses =\n \"bg-[#f6f8fa] text-[#393a34] dark:bg-[#1e1e1e] dark:text-[#9cdcfe]\";\n\n const Wrapper = ({\n children,\n className,\n style,\n }: {\n children: React.ReactNode;\n className?: string;\n style?: React.CSSProperties;\n }) => (\n <div className=\"relative group\">\n {title && (\n <div className=\"text-xs text-muted-foreground absolute top-2 font-mono border-b w-full pb-2 px-4 \">\n {title}\n </div>\n )}\n <pre\n className={cn(\n \"relative scrollbar overflow-x-auto\",\n props.className,\n props.noBackground ? \"!bg-transparent\" : themeColorClasses,\n props.wrapLines && \"whitespace-pre-wrap break-words\",\n title && \"pt-10\",\n className,\n )}\n style={style}\n >\n {children}\n </pre>\n {props.showLanguageIndicator && (\n <span className=\"absolute top-1.5 right-3 text-[11px] font-mono text-muted-foreground transition group-hover:opacity-0\">\n {language}\n </span>\n )}\n {showCopy !== \"never\" && (\n <button\n type=\"button\"\n aria-label=\"Copy code\"\n title=\"Copy code\"\n className={cn(\n \"absolute top-2 right-2 p-2 hover:outline hover:outline-border/75 dark:hover:outline-border rounded-md text-sm text-muted-foreground transition\",\n showCopy === \"hover\"\n ? \"opacity-0 group-hover:opacity-100 group-hover:bg-zinc-100 group-hover:dark:bg-zinc-700\"\n : \"bg-zinc-100 dark:bg-zinc-700\",\n showCopyText && \"flex gap-2 items-center font-medium\",\n )}\n disabled={isCopied}\n onClick={() => {\n setIsCopied(true);\n void navigator.clipboard.writeText(code);\n setTimeout(() => setIsCopied(false), 2000);\n }}\n >\n {isCopied ? (\n <CheckIcon\n className=\"text-emerald-600\"\n size={16}\n strokeWidth={2.5}\n absoluteStrokeWidth\n />\n ) : (\n <CopyIcon size={16} />\n )}\n {showCopyText && \"Copy\"}\n </button>\n )}\n </div>\n );\n\n if (disabled) {\n return (\n <ClientOnly fallback={<Wrapper>{code}</Wrapper>}>\n <Wrapper>{code}</Wrapper>\n </ClientOnly>\n );\n }\n\n return (\n <ClientOnly fallback={<Wrapper>{code}</Wrapper>}>\n <Highlight\n theme={highlightTheme}\n language={remapLang[language] ?? language}\n {...props}\n code={code}\n >\n {({ className, style, tokens, getLineProps, getTokenProps }) => (\n <Wrapper className={className} style={style}>\n {tokens.map((line, i) => (\n // eslint-disable-next-line react/no-array-index-key\n <div key={i} {...getLineProps({ line })}>\n {line.map((token, key) => (\n // eslint-disable-next-line react/no-array-index-key\n <span key={key} {...getTokenProps({ token })} />\n ))}\n </div>\n ))}\n </Wrapper>\n )}\n </Highlight>\n </ClientOnly>\n );\n};\n\nexport const SyntaxHighlight = memo(SyntaxHighlightInner);\n\nSyntaxHighlight.displayName = \"SyntaxHighlight\";\n","// eslint-disable-next-line @typescript-eslint/no-explicit-any\nimport { SyntaxHighlight } from \"zudoku/ui/SyntaxHighlight.js\";\nimport { DeveloperHint } from \"../components/DeveloperHint.js\";\nimport { Heading } from \"../components/Heading.js\";\nimport { ProseClasses } from \"../components/Markdown.js\";\nimport { cn } from \"../util/cn.js\";\nimport { ZudokuError } from \"../util/invariant.js\";\n\nexport function ErrorAlert({ error }: { error: unknown }) {\n const message =\n error instanceof Error ? error.message : \"Something went wrong\";\n\n const hint = error instanceof ZudokuError ? error.developerHint : undefined;\n const title =\n error instanceof ZudokuError ? error.title : \"Something went wrong\";\n const stack = error instanceof Error ? error.stack : undefined;\n const cause = error instanceof Error ? error.cause : undefined;\n\n const stringError = cause instanceof Error ? String(cause.stack) : stack;\n\n return (\n <div\n className={cn(\n ProseClasses,\n \"grid grid-cols-1 !max-w-none pt-[--padding-content-top]\",\n )}\n >\n <Heading level={1}>{title}</Heading>\n Error: {message}\n {hint && <DeveloperHint className=\"mb-4\">{hint}</DeveloperHint>}\n {stringError && (\n <div>\n <SyntaxHighlight\n className=\"max-h-[400px] border mt-2\"\n language=\"jsstacktrace\"\n code={stringError}\n />\n </div>\n )}\n </div>\n );\n}\n","import { isRouteErrorResponse, useRouteError } from \"react-router\";\nimport { NotFoundPage } from \"../components/NotFoundPage.js\";\nimport { ErrorAlert } from \"./ErrorAlert.js\";\n\nexport function RouterError() {\n const error = useRouteError();\n\n if (isRouteErrorResponse(error) && error.status === 404) {\n return <NotFoundPage />;\n }\n\n return <ErrorAlert error={error} />;\n}\n","/**\n * @license React\n * react-is.production.js\n *\n * Copyright (c) Meta Platforms, Inc. and affiliates.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\n\"use strict\";\nvar REACT_ELEMENT_TYPE = Symbol.for(\"react.transitional.element\"),\n REACT_PORTAL_TYPE = Symbol.for(\"react.portal\"),\n REACT_FRAGMENT_TYPE = Symbol.for(\"react.fragment\"),\n REACT_STRICT_MODE_TYPE = Symbol.for(\"react.strict_mode\"),\n REACT_PROFILER_TYPE = Symbol.for(\"react.profiler\");\nSymbol.for(\"react.provider\");\nvar REACT_CONSUMER_TYPE = Symbol.for(\"react.consumer\"),\n REACT_CONTEXT_TYPE = Symbol.for(\"react.context\"),\n REACT_FORWARD_REF_TYPE = Symbol.for(\"react.forward_ref\"),\n REACT_SUSPENSE_TYPE = Symbol.for(\"react.suspense\"),\n REACT_SUSPENSE_LIST_TYPE = Symbol.for(\"react.suspense_list\"),\n REACT_MEMO_TYPE = Symbol.for(\"react.memo\"),\n REACT_LAZY_TYPE = Symbol.for(\"react.lazy\"),\n REACT_VIEW_TRANSITION_TYPE = Symbol.for(\"react.view_transition\"),\n REACT_CLIENT_REFERENCE = Symbol.for(\"react.client.reference\");\nfunction typeOf(object) {\n if (\"object\" === typeof object && null !== object) {\n var $$typeof = object.$$typeof;\n switch ($$typeof) {\n case REACT_ELEMENT_TYPE:\n switch (((object = object.type), object)) {\n case REACT_FRAGMENT_TYPE:\n case REACT_PROFILER_TYPE:\n case REACT_STRICT_MODE_TYPE:\n case REACT_SUSPENSE_TYPE:\n case REACT_SUSPENSE_LIST_TYPE:\n case REACT_VIEW_TRANSITION_TYPE:\n return object;\n default:\n switch (((object = object && object.$$typeof), object)) {\n case REACT_CONTEXT_TYPE:\n case REACT_FORWARD_REF_TYPE:\n case REACT_LAZY_TYPE:\n case REACT_MEMO_TYPE:\n return object;\n case REACT_CONSUMER_TYPE:\n return object;\n default:\n return $$typeof;\n }\n }\n case REACT_PORTAL_TYPE:\n return $$typeof;\n }\n }\n}\nexports.ContextConsumer = REACT_CONSUMER_TYPE;\nexports.ContextProvider = REACT_CONTEXT_TYPE;\nexports.Element = REACT_ELEMENT_TYPE;\nexports.ForwardRef = REACT_FORWARD_REF_TYPE;\nexports.Fragment = REACT_FRAGMENT_TYPE;\nexports.Lazy = REACT_LAZY_TYPE;\nexports.Memo = REACT_MEMO_TYPE;\nexports.Portal = REACT_PORTAL_TYPE;\nexports.Profiler = REACT_PROFILER_TYPE;\nexports.StrictMode = REACT_STRICT_MODE_TYPE;\nexports.Suspense = REACT_SUSPENSE_TYPE;\nexports.SuspenseList = REACT_SUSPENSE_LIST_TYPE;\nexports.isContextConsumer = function (object) {\n return typeOf(object) === REACT_CONSUMER_TYPE;\n};\nexports.isContextProvider = function (object) {\n return typeOf(object) === REACT_CONTEXT_TYPE;\n};\nexports.isElement = function (object) {\n return (\n \"object\" === typeof object &&\n null !== object &&\n object.$$typeof === REACT_ELEMENT_TYPE\n );\n};\nexports.isForwardRef = function (object) {\n return typeOf(object) === REACT_FORWARD_REF_TYPE;\n};\nexports.isFragment = function (object) {\n return typeOf(object) === REACT_FRAGMENT_TYPE;\n};\nexports.isLazy = function (object) {\n return typeOf(object) === REACT_LAZY_TYPE;\n};\nexports.isMemo = function (object) {\n return typeOf(object) === REACT_MEMO_TYPE;\n};\nexports.isPortal = function (object) {\n return typeOf(object) === REACT_PORTAL_TYPE;\n};\nexports.isProfiler = function (object) {\n return typeOf(object) === REACT_PROFILER_TYPE;\n};\nexports.isStrictMode = function (object) {\n return typeOf(object) === REACT_STRICT_MODE_TYPE;\n};\nexports.isSuspense = function (object) {\n return typeOf(object) === REACT_SUSPENSE_TYPE;\n};\nexports.isSuspenseList = function (object) {\n return typeOf(object) === REACT_SUSPENSE_LIST_TYPE;\n};\nexports.isValidElementType = function (type) {\n return \"string\" === typeof type ||\n \"function\" === typeof type ||\n type === REACT_FRAGMENT_TYPE ||\n type === REACT_PROFILER_TYPE ||\n type === REACT_STRICT_MODE_TYPE ||\n type === REACT_SUSPENSE_TYPE ||\n type === REACT_SUSPENSE_LIST_TYPE ||\n (\"object\" === typeof type &&\n null !== type &&\n (type.$$typeof === REACT_LAZY_TYPE ||\n type.$$typeof === REACT_MEMO_TYPE ||\n type.$$typeof === REACT_CONTEXT_TYPE ||\n type.$$typeof === REACT_CONSUMER_TYPE ||\n type.$$typeof === REACT_FORWARD_REF_TYPE ||\n type.$$typeof === REACT_CLIENT_REFERENCE ||\n void 0 !== type.getModuleId))\n ? !0\n : !1;\n};\nexports.typeOf = typeOf;\n","/**\n * @license React\n * react-is.development.js\n *\n * Copyright (c) Meta Platforms, Inc. and affiliates.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\n\"use strict\";\n\"production\" !== process.env.NODE_ENV &&\n (function () {\n function typeOf(object) {\n if (\"object\" === typeof object && null !== object) {\n var $$typeof = object.$$typeof;\n switch ($$typeof) {\n case REACT_ELEMENT_TYPE:\n switch (((object = object.type), object)) {\n case REACT_FRAGMENT_TYPE:\n case REACT_PROFILER_TYPE:\n case REACT_STRICT_MODE_TYPE:\n case REACT_SUSPENSE_TYPE:\n case REACT_SUSPENSE_LIST_TYPE:\n case REACT_VIEW_TRANSITION_TYPE:\n return object;\n default:\n switch (((object = object && object.$$typeof), object)) {\n case REACT_CONTEXT_TYPE:\n case REACT_FORWARD_REF_TYPE:\n case REACT_LAZY_TYPE:\n case REACT_MEMO_TYPE:\n return object;\n case REACT_CONSUMER_TYPE:\n return object;\n default:\n return $$typeof;\n }\n }\n case REACT_PORTAL_TYPE:\n return $$typeof;\n }\n }\n }\n var REACT_ELEMENT_TYPE = Symbol.for(\"react.transitional.element\"),\n REACT_PORTAL_TYPE = Symbol.for(\"react.portal\"),\n REACT_FRAGMENT_TYPE = Symbol.for(\"react.fragment\"),\n REACT_STRICT_MODE_TYPE = Symbol.for(\"react.strict_mode\"),\n REACT_PROFILER_TYPE = Symbol.for(\"react.profiler\");\n Symbol.for(\"react.provider\");\n var REACT_CONSUMER_TYPE = Symbol.for(\"react.consumer\"),\n REACT_CONTEXT_TYPE = Symbol.for(\"react.context\"),\n REACT_FORWARD_REF_TYPE = Symbol.for(\"react.forward_ref\"),\n REACT_SUSPENSE_TYPE = Symbol.for(\"react.suspense\"),\n REACT_SUSPENSE_LIST_TYPE = Symbol.for(\"react.suspense_list\"),\n REACT_MEMO_TYPE = Symbol.for(\"react.memo\"),\n REACT_LAZY_TYPE = Symbol.for(\"react.lazy\"),\n REACT_VIEW_TRANSITION_TYPE = Symbol.for(\"react.view_transition\"),\n REACT_CLIENT_REFERENCE = Symbol.for(\"react.client.reference\");\n exports.ContextConsumer = REACT_CONSUMER_TYPE;\n exports.ContextProvider = REACT_CONTEXT_TYPE;\n exports.Element = REACT_ELEMENT_TYPE;\n exports.ForwardRef = REACT_FORWARD_REF_TYPE;\n exports.Fragment = REACT_FRAGMENT_TYPE;\n exports.Lazy = REACT_LAZY_TYPE;\n exports.Memo = REACT_MEMO_TYPE;\n exports.Portal = REACT_PORTAL_TYPE;\n exports.Profiler = REACT_PROFILER_TYPE;\n exports.StrictMode = REACT_STRICT_MODE_TYPE;\n exports.Suspense = REACT_SUSPENSE_TYPE;\n exports.SuspenseList = REACT_SUSPENSE_LIST_TYPE;\n exports.isContextConsumer = function (object) {\n return typeOf(object) === REACT_CONSUMER_TYPE;\n };\n exports.isContextProvider = function (object) {\n return typeOf(object) === REACT_CONTEXT_TYPE;\n };\n exports.isElement = function (object) {\n return (\n \"object\" === typeof object &&\n null !== object &&\n object.$$typeof === REACT_ELEMENT_TYPE\n );\n };\n exports.isForwardRef = function (object) {\n return typeOf(object) === REACT_FORWARD_REF_TYPE;\n };\n exports.isFragment = function (object) {\n return typeOf(object) === REACT_FRAGMENT_TYPE;\n };\n exports.isLazy = function (object) {\n return typeOf(object) === REACT_LAZY_TYPE;\n };\n exports.isMemo = function (object) {\n return typeOf(object) === REACT_MEMO_TYPE;\n };\n exports.isPortal = function (object) {\n return typeOf(object) === REACT_PORTAL_TYPE;\n };\n exports.isProfiler = function (object) {\n return typeOf(object) === REACT_PROFILER_TYPE;\n };\n exports.isStrictMode = function (object) {\n return typeOf(object) === REACT_STRICT_MODE_TYPE;\n };\n exports.isSuspense = function (object) {\n return typeOf(object) === REACT_SUSPENSE_TYPE;\n };\n exports.isSuspenseList = function (object) {\n return typeOf(object) === REACT_SUSPENSE_LIST_TYPE;\n };\n exports.isValidElementType = function (type) {\n return \"string\" === typeof type ||\n \"function\" === typeof type ||\n type === REACT_FRAGMENT_TYPE ||\n type === REACT_PROFILER_TYPE ||\n type === REACT_STRICT_MODE_TYPE ||\n type === REACT_SUSPENSE_TYPE ||\n type === REACT_SUSPENSE_LIST_TYPE ||\n (\"object\" === typeof type &&\n null !== type &&\n (type.$$typeof === REACT_LAZY_TYPE ||\n type.$$typeof === REACT_MEMO_TYPE ||\n type.$$typeof === REACT_CONTEXT_TYPE ||\n type.$$typeof === REACT_CONSUMER_TYPE ||\n type.$$typeof === REACT_FORWARD_REF_TYPE ||\n type.$$typeof === REACT_CLIENT_REFERENCE ||\n void 0 !== type.getModuleId))\n ? !0\n : !1;\n };\n exports.typeOf = typeOf;\n })();\n","'use strict';\n\nif (process.env.NODE_ENV === 'production') {\n module.exports = require('./cjs/react-is.production.js');\n} else {\n module.exports = require('./cjs/react-is.development.js');\n}\n","import React, {\n type ComponentType,\n type ReactElement,\n ReactNode,\n useContext,\n} from \"react\";\nimport { isValidElementType } from \"react-is\";\nimport {\n type Location,\n type NavigateFunction,\n type Params,\n type SetURLSearchParams,\n} from \"react-router\";\nimport { useExposedProps } from \"../util/useExposedProps.js\";\n\nexport type Slotlets = Record<\n string,\n ReactNode | ReactElement | ComponentType<ExposedComponentProps>\n>;\n\nconst SlotletContext = React.createContext<Slotlets | undefined>({});\n\nexport const SlotletProvider = ({\n slotlets,\n children,\n}: {\n children: ReactNode;\n slotlets?: Slotlets;\n}) => {\n return (\n <SlotletContext.Provider value={slotlets}>\n {children}\n </SlotletContext.Provider>\n );\n};\n\nexport type ExposedComponentProps = {\n location: Location;\n navigate: NavigateFunction;\n searchParams: URLSearchParams;\n setSearchParams: SetURLSearchParams;\n params: Params;\n};\n\nexport const Slotlet = ({ name }: { name: string }) => {\n const context = useContext(SlotletContext);\n const componentOrElement = context?.[name];\n const slotletProps = useExposedProps();\n\n if (isValidElementType(componentOrElement)) {\n return React.createElement(componentOrElement, slotletProps);\n }\n\n return componentOrElement as ReactNode;\n};\n"],"names":["DeveloperHint","children","className","jsx","Callout","jsxs","Markdown","NotFoundPage","params","useParams","ProseClasses","CategoryHeading","Heading","UnlinkIcon","Link","Prism","n","remapLang","SyntaxHighlightInner","language","showCopy","showCopyText","title","disabled","props","resolvedTheme","useTheme","isCopied","setIsCopied","useState","code","highlightTheme","themes","themeColorClasses","Wrapper","style","cn","CheckIcon","CopyIcon","ClientOnly","Highlight","tokens","getLineProps","getTokenProps","line","i","token","key","SyntaxHighlight","memo","ErrorAlert","error","message","hint","ZudokuError","stack","cause","stringError","RouterError","useRouteError","isRouteErrorResponse","REACT_ELEMENT_TYPE","REACT_PORTAL_TYPE","REACT_FRAGMENT_TYPE","REACT_STRICT_MODE_TYPE","REACT_PROFILER_TYPE","REACT_CONSUMER_TYPE","REACT_CONTEXT_TYPE","REACT_FORWARD_REF_TYPE","REACT_SUSPENSE_TYPE","REACT_SUSPENSE_LIST_TYPE","REACT_MEMO_TYPE","REACT_LAZY_TYPE","REACT_VIEW_TRANSITION_TYPE","REACT_CLIENT_REFERENCE","typeOf","object","$$typeof","reactIs_production","type","reactIs_development","reactIsModule","require$$0","require$$1","SlotletContext","React","SlotletProvider","slotlets","Slotlet","name","context","useContext","componentOrElement","slotletProps","useExposedProps","isValidElementType"],"mappings":"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","x_google_ignoreList":[5,6,7]}
@@ -1,7 +1,7 @@
1
- import { j as s } from "./jsx-runtime-CYK1ROHF.js";
1
+ import { j as s } from "./jsx-runtime-C5mzlN2N.js";
2
2
  import { LoaderCircle as o } from "lucide-react";
3
3
  const i = ({ size: r = 16 }) => /* @__PURE__ */ s.jsx(o, { size: r, className: "animate-spin" });
4
4
  export {
5
5
  i as S
6
6
  };
7
- //# sourceMappingURL=Spinner-CE68iCm0.js.map
7
+ //# sourceMappingURL=Spinner-mNLZ6awP.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"Spinner-CE68iCm0.js","sources":["../src/lib/components/Spinner.tsx"],"sourcesContent":["import { LoaderCircle } from \"lucide-react\";\n\nexport const Spinner = ({ size = 16 }: { size?: number }) => (\n <LoaderCircle size={size} className=\"animate-spin\" />\n);\n"],"names":["Spinner","size","jsx","LoaderCircle"],"mappings":";;AAEa,MAAAA,IAAU,CAAC,EAAE,MAAAC,IAAO,SAC9BC,gBAAAA,MAAAC,GAAA,EAAa,MAAAF,GAAY,WAAU,eAAe,CAAA;"}
1
+ {"version":3,"file":"Spinner-mNLZ6awP.js","sources":["../src/lib/components/Spinner.tsx"],"sourcesContent":["import { LoaderCircle } from \"lucide-react\";\n\nexport const Spinner = ({ size = 16 }: { size?: number }) => (\n <LoaderCircle size={size} className=\"animate-spin\" />\n);\n"],"names":["Spinner","size","jsx","LoaderCircle"],"mappings":";;AAEa,MAAAA,IAAU,CAAC,EAAE,MAAAC,IAAO,SAC9BC,gBAAAA,MAAAC,GAAA,EAAa,MAAAF,GAAY,WAAU,eAAe,CAAA;"}
@@ -1,4 +1,4 @@
1
- import { j as _ } from "./jsx-runtime-CYK1ROHF.js";
1
+ import { j as _ } from "./jsx-runtime-C5mzlN2N.js";
2
2
  import { createElement as de, useCallback as K, useMemo as ye, memo as fe, useState as be } from "react";
3
3
  import { a as se, c as ee } from "./cn-qaFjX9_3.js";
4
4
  import { CheckIcon as me, CopyIcon as he } from "lucide-react";
@@ -2787,15 +2787,15 @@ prismjs/prism.js:
2787
2787
  */
2788
2788
  globalThis.Prism = o;
2789
2789
  import("./prism-bash.min-HHIMdNJ_.js");
2790
- import("./prism-ruby.min-Dx9KO9ds.js").then((e) => e.p);
2790
+ import("./prism-ruby.min-L9OdQ6tU.js").then((e) => e.p);
2791
2791
  import("./prism-markup-BNGj0Tvm.js");
2792
2792
  import("./prism-json.min-B1GJqK1k.js");
2793
- import("./prism-java.min-BpvsOuIa.js").then((e) => e.p);
2794
- import("./prism-csharp.min-bQAo2pmx.js").then((e) => e.p);
2793
+ import("./prism-java.min-CQzr40NQ.js").then((e) => e.p);
2794
+ import("./prism-csharp.min-C43x1RY2.js").then((e) => e.p);
2795
2795
  import("./prism-objectivec.min-BXSWqpJJ.js");
2796
2796
  import("./prism-markdown.min-C0Qn0m-5.js");
2797
2797
  import("./prism-javascript.min-CEqHqgbm.js");
2798
- import("./prism-typescript.min-CD7H2IYQ.js").then((e) => e.p);
2798
+ import("./prism-typescript.min-qTySPvCh.js").then((e) => e.p);
2799
2799
  import("./prism-jsstacktrace.min-BfobCF2F.js");
2800
2800
  const At = {
2801
2801
  mdx: "md"
@@ -2887,4 +2887,4 @@ export {
2887
2887
  _t as S,
2888
2888
  V as t
2889
2889
  };
2890
- //# sourceMappingURL=SyntaxHighlight-BEoSoPEo.js.map
2890
+ //# sourceMappingURL=SyntaxHighlight-CxhyyMkF.js.map