zudoku 0.0.0-ec20d13 → 0.0.0-ec4a6db
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.
- package/README.md +2 -2
- package/dist/app/ZuploBuildConfig.d.ts +11 -121
- package/dist/app/ZuploBuildConfig.js +8 -8
- package/dist/app/ZuploBuildConfig.js.map +1 -1
- package/dist/app/demo.js +21 -5
- package/dist/app/demo.js.map +1 -1
- package/dist/app/entry.client.d.ts +0 -2
- package/dist/app/entry.client.js +0 -2
- package/dist/app/entry.client.js.map +1 -1
- package/dist/app/entry.server.d.ts +0 -2
- package/dist/app/entry.server.js +0 -2
- package/dist/app/entry.server.js.map +1 -1
- package/dist/app/env.d.ts +7 -7
- package/dist/app/env.js +8 -0
- package/dist/app/env.js.map +1 -1
- package/dist/app/main.d.ts +1 -0
- package/dist/app/main.js +13 -18
- package/dist/app/main.js.map +1 -1
- package/dist/app/standalone.js +7 -6
- package/dist/app/standalone.js.map +1 -1
- package/dist/cli/build/handler.js +9 -1
- package/dist/cli/build/handler.js.map +1 -1
- package/dist/config/loader.js +4 -8
- package/dist/config/loader.js.map +1 -1
- package/dist/config/validators/BuildSchema.d.ts +20 -44
- package/dist/config/validators/BuildSchema.js +8 -14
- package/dist/config/validators/BuildSchema.js.map +1 -1
- package/dist/config/validators/InputNavigationSchema.d.ts +7369 -0
- package/dist/config/validators/InputNavigationSchema.js +74 -0
- package/dist/config/validators/InputNavigationSchema.js.map +1 -0
- package/dist/config/validators/InputNavigationSchema.test-d.d.ts +1 -0
- package/dist/config/validators/InputNavigationSchema.test-d.js +146 -0
- package/dist/config/validators/InputNavigationSchema.test-d.js.map +1 -0
- package/dist/config/validators/NavigationSchema.d.ts +44 -0
- package/dist/config/validators/NavigationSchema.js +95 -0
- package/dist/config/validators/NavigationSchema.js.map +1 -0
- package/dist/config/validators/icon-types.d.ts +2 -1
- package/dist/config/validators/icon-types.js +1813 -1
- package/dist/config/validators/icon-types.js.map +1 -1
- package/dist/config/validators/validate.d.ts +464 -5669
- package/dist/config/validators/validate.js +80 -71
- package/dist/config/validators/validate.js.map +1 -1
- package/dist/config/validators/validate.test.js +65 -4
- package/dist/config/validators/validate.test.js.map +1 -1
- package/dist/flat-config.d.ts +325 -0
- package/dist/index.d.ts +1 -1
- package/dist/index.js.map +1 -1
- package/dist/lib/auth/issuer.js +1 -1
- package/dist/lib/auth/issuer.js.map +1 -1
- package/dist/lib/auth/issuer.test.js +1 -1
- package/dist/lib/auth/issuer.test.js.map +1 -1
- package/dist/lib/authentication/authentication.d.ts +2 -0
- package/dist/lib/authentication/components/CallbackHandler.js +1 -1
- package/dist/lib/authentication/components/CallbackHandler.js.map +1 -1
- package/dist/lib/authentication/components/SignIn.js +4 -3
- package/dist/lib/authentication/components/SignIn.js.map +1 -1
- package/dist/lib/authentication/providers/openid.d.ts +4 -2
- package/dist/lib/authentication/providers/openid.js +11 -5
- package/dist/lib/authentication/providers/openid.js.map +1 -1
- package/dist/lib/components/Autocomplete.js +2 -2
- package/dist/lib/components/Autocomplete.js.map +1 -1
- package/dist/lib/components/Banner.js +2 -2
- package/dist/lib/components/Banner.js.map +1 -1
- package/dist/lib/components/BuildCheck.js +1 -1
- package/dist/lib/components/BuildCheck.js.map +1 -1
- package/dist/lib/components/CategoryHeading.js +1 -1
- package/dist/lib/components/CategoryHeading.js.map +1 -1
- package/dist/lib/components/ErrorPage.js +2 -2
- package/dist/lib/components/ErrorPage.js.map +1 -1
- package/dist/lib/components/Footer.js +1 -1
- package/dist/lib/components/Footer.js.map +1 -1
- package/dist/lib/components/Framed.d.ts +7 -0
- package/dist/lib/components/Framed.js +26 -0
- package/dist/lib/components/Framed.js.map +1 -0
- package/dist/lib/components/Header.js +19 -18
- package/dist/lib/components/Header.js.map +1 -1
- package/dist/lib/components/Heading.d.ts +6 -2
- package/dist/lib/components/Heading.js +2 -2
- package/dist/lib/components/Heading.js.map +1 -1
- package/dist/lib/components/Main.js +4 -4
- package/dist/lib/components/Main.js.map +1 -1
- package/dist/lib/components/Markdown.d.ts +0 -1
- package/dist/lib/components/Markdown.js +2 -3
- package/dist/lib/components/Markdown.js.map +1 -1
- package/dist/lib/components/MobileTopNavigation.js +11 -7
- package/dist/lib/components/MobileTopNavigation.js.map +1 -1
- package/dist/lib/components/NotFoundPage.js +2 -2
- package/dist/lib/components/NotFoundPage.js.map +1 -1
- package/dist/lib/components/PageProgress.d.ts +1 -0
- package/dist/lib/components/PageProgress.js +20 -0
- package/dist/lib/components/PageProgress.js.map +1 -0
- package/dist/lib/components/Pagination.js +1 -1
- package/dist/lib/components/Pagination.js.map +1 -1
- package/dist/lib/components/StatusPage.js +4 -0
- package/dist/lib/components/StatusPage.js.map +1 -1
- package/dist/lib/components/TopNavigation.d.ts +7 -3
- package/dist/lib/components/TopNavigation.js +49 -44
- package/dist/lib/components/TopNavigation.js.map +1 -1
- package/dist/lib/components/Typography.d.ts +5 -0
- package/dist/lib/components/Typography.js +8 -0
- package/dist/lib/components/Typography.js.map +1 -0
- package/dist/lib/components/context/ZudokuContext.d.ts +3 -7
- package/dist/lib/components/context/ZudokuContext.js +44 -26
- package/dist/lib/components/context/ZudokuContext.js.map +1 -1
- package/dist/lib/components/index.d.ts +4 -0
- package/dist/lib/components/index.js +2 -0
- package/dist/lib/components/index.js.map +1 -1
- package/dist/lib/components/navigation/Navigation.d.ts +5 -0
- package/dist/lib/components/navigation/Navigation.js +12 -0
- package/dist/lib/components/navigation/Navigation.js.map +1 -0
- package/dist/lib/components/navigation/{SidebarBadge.d.ts → NavigationBadge.d.ts} +1 -1
- package/dist/lib/components/navigation/{SidebarBadge.js → NavigationBadge.js} +2 -2
- package/dist/lib/components/navigation/NavigationBadge.js.map +1 -0
- package/dist/lib/components/navigation/NavigationCategory.d.ts +5 -0
- package/dist/lib/components/navigation/{SidebarCategory.js → NavigationCategory.js} +14 -12
- package/dist/lib/components/navigation/NavigationCategory.js.map +1 -0
- package/dist/lib/components/navigation/NavigationItem.d.ts +6 -0
- package/dist/lib/components/navigation/NavigationItem.js +47 -0
- package/dist/lib/components/navigation/NavigationItem.js.map +1 -0
- package/dist/lib/components/navigation/{SidebarWrapper.d.ts → NavigationWrapper.d.ts} +1 -1
- package/dist/lib/components/navigation/{SidebarWrapper.js → NavigationWrapper.js} +5 -5
- package/dist/lib/components/navigation/NavigationWrapper.js.map +1 -0
- package/dist/lib/components/navigation/utils.d.ts +7 -9
- package/dist/lib/components/navigation/utils.js +17 -17
- package/dist/lib/components/navigation/utils.js.map +1 -1
- package/dist/lib/core/ZudokuContext.d.ts +12 -13
- package/dist/lib/core/ZudokuContext.js +21 -10
- package/dist/lib/core/ZudokuContext.js.map +1 -1
- package/dist/lib/core/plugins.d.ts +2 -2
- package/dist/lib/errors/ErrorAlert.js +2 -3
- package/dist/lib/errors/ErrorAlert.js.map +1 -1
- package/dist/lib/hooks/useEvent.test.js +5 -3
- package/dist/lib/hooks/useEvent.test.js.map +1 -1
- package/dist/lib/hooks/useHotkey.d.ts +4 -0
- package/dist/lib/hooks/useHotkey.js +58 -0
- package/dist/lib/hooks/useHotkey.js.map +1 -0
- package/dist/lib/plugins/api-catalog/Catalog.d.ts +1 -1
- package/dist/lib/plugins/api-catalog/index.d.ts +6 -6
- package/dist/lib/plugins/api-catalog/index.js +10 -10
- package/dist/lib/plugins/api-catalog/index.js.map +1 -1
- package/dist/lib/plugins/api-keys/SettingsApiKeys.js +13 -16
- package/dist/lib/plugins/api-keys/SettingsApiKeys.js.map +1 -1
- package/dist/lib/plugins/api-keys/index.js +23 -2
- package/dist/lib/plugins/api-keys/index.js.map +1 -1
- package/dist/lib/plugins/custom-pages/index.d.ts +4 -6
- package/dist/lib/plugins/custom-pages/index.js +15 -10
- package/dist/lib/plugins/custom-pages/index.js.map +1 -1
- package/dist/lib/plugins/markdown/MdxPage.d.ts +1 -2
- package/dist/lib/plugins/markdown/MdxPage.js +30 -10
- package/dist/lib/plugins/markdown/MdxPage.js.map +1 -1
- package/dist/lib/plugins/markdown/index.d.ts +10 -2
- package/dist/lib/plugins/markdown/index.js +9 -26
- package/dist/lib/plugins/markdown/index.js.map +1 -1
- package/dist/lib/plugins/openapi/OperationList.js +2 -3
- package/dist/lib/plugins/openapi/OperationList.js.map +1 -1
- package/dist/lib/plugins/openapi/OperationListItem.js +2 -2
- package/dist/lib/plugins/openapi/OperationListItem.js.map +1 -1
- package/dist/lib/plugins/openapi/ParameterListItem.js +1 -1
- package/dist/lib/plugins/openapi/ParameterListItem.js.map +1 -1
- package/dist/lib/plugins/openapi/SchemaList.js +2 -3
- package/dist/lib/plugins/openapi/SchemaList.js.map +1 -1
- package/dist/lib/plugins/openapi/Sidecar.js +1 -1
- package/dist/lib/plugins/openapi/Sidecar.js.map +1 -1
- package/dist/lib/plugins/openapi/SidecarExamples.js +1 -1
- package/dist/lib/plugins/openapi/SidecarExamples.js.map +1 -1
- package/dist/lib/plugins/openapi/graphql/gql.d.ts +1 -1
- package/dist/lib/plugins/openapi/graphql/gql.js +1 -1
- package/dist/lib/plugins/openapi/graphql/gql.js.map +1 -1
- package/dist/lib/plugins/openapi/graphql/graphql.d.ts +3 -3
- package/dist/lib/plugins/openapi/graphql/graphql.js +2 -2
- package/dist/lib/plugins/openapi/graphql/graphql.js.map +1 -1
- package/dist/lib/plugins/openapi/index.d.ts +3 -3
- package/dist/lib/plugins/openapi/index.js +10 -10
- package/dist/lib/plugins/openapi/index.js.map +1 -1
- package/dist/lib/plugins/openapi/interfaces.d.ts +3 -3
- package/dist/lib/plugins/openapi/playground/BodyPanel.d.ts +2 -2
- package/dist/lib/plugins/openapi/playground/BodyPanel.js +16 -12
- package/dist/lib/plugins/openapi/playground/BodyPanel.js.map +1 -1
- package/dist/lib/plugins/openapi/playground/CollapsibleHeader.d.ts +8 -0
- package/dist/lib/plugins/openapi/playground/CollapsibleHeader.js +11 -0
- package/dist/lib/plugins/openapi/playground/CollapsibleHeader.js.map +1 -0
- package/dist/lib/plugins/openapi/playground/ExamplesDropdown.js +2 -2
- package/dist/lib/plugins/openapi/playground/ExamplesDropdown.js.map +1 -1
- package/dist/lib/plugins/openapi/playground/Headers.d.ts +3 -2
- package/dist/lib/plugins/openapi/playground/Headers.js +52 -30
- package/dist/lib/plugins/openapi/playground/Headers.js.map +1 -1
- package/dist/lib/plugins/openapi/playground/IdentityDialog.js +2 -1
- package/dist/lib/plugins/openapi/playground/IdentityDialog.js.map +1 -1
- package/dist/lib/plugins/openapi/playground/IdentitySelector.js +1 -2
- package/dist/lib/plugins/openapi/playground/IdentitySelector.js.map +1 -1
- package/dist/lib/plugins/openapi/playground/InlineInput.js +1 -1
- package/dist/lib/plugins/openapi/playground/InlineInput.js.map +1 -1
- package/dist/lib/plugins/openapi/playground/ParamsGrid.js +2 -2
- package/dist/lib/plugins/openapi/playground/ParamsGrid.js.map +1 -1
- package/dist/lib/plugins/openapi/playground/PathParams.js +1 -2
- package/dist/lib/plugins/openapi/playground/PathParams.js.map +1 -1
- package/dist/lib/plugins/openapi/playground/Playground.js +47 -34
- package/dist/lib/plugins/openapi/playground/Playground.js.map +1 -1
- package/dist/lib/plugins/openapi/playground/PlaygroundDialog.js +1 -1
- package/dist/lib/plugins/openapi/playground/PlaygroundDialog.js.map +1 -1
- package/dist/lib/plugins/openapi/playground/QueryParams.d.ts +2 -2
- package/dist/lib/plugins/openapi/playground/QueryParams.js +38 -23
- package/dist/lib/plugins/openapi/playground/QueryParams.js.map +1 -1
- package/dist/lib/plugins/openapi/playground/Spinner.d.ts +2 -0
- package/dist/lib/plugins/openapi/playground/Spinner.js +63 -0
- package/dist/lib/plugins/openapi/playground/Spinner.js.map +1 -0
- package/dist/lib/plugins/openapi/playground/request-panel/UrlPath.d.ts +3 -0
- package/dist/lib/plugins/openapi/playground/request-panel/UrlPath.js +13 -0
- package/dist/lib/plugins/openapi/playground/request-panel/UrlPath.js.map +1 -0
- package/dist/lib/plugins/openapi/playground/request-panel/UrlQueryParams.d.ts +1 -0
- package/dist/lib/plugins/openapi/playground/request-panel/UrlQueryParams.js +12 -0
- package/dist/lib/plugins/openapi/playground/request-panel/UrlQueryParams.js.map +1 -0
- package/dist/lib/plugins/openapi/playground/result-panel/Highlight.d.ts +12 -0
- package/dist/lib/plugins/openapi/playground/result-panel/Highlight.js +11 -0
- package/dist/lib/plugins/openapi/playground/result-panel/Highlight.js.map +1 -0
- package/dist/lib/plugins/openapi/playground/result-panel/ResponseStatusBar.d.ts +8 -0
- package/dist/lib/plugins/openapi/playground/result-panel/ResponseStatusBar.js +69 -0
- package/dist/lib/plugins/openapi/playground/result-panel/ResponseStatusBar.js.map +1 -0
- package/dist/lib/plugins/openapi/playground/result-panel/ResponseTab.d.ts +7 -4
- package/dist/lib/plugins/openapi/playground/result-panel/ResponseTab.js +25 -32
- package/dist/lib/plugins/openapi/playground/result-panel/ResponseTab.js.map +1 -1
- package/dist/lib/plugins/openapi/playground/result-panel/ResultPanel.d.ts +4 -2
- package/dist/lib/plugins/openapi/playground/result-panel/ResultPanel.js +8 -10
- package/dist/lib/plugins/openapi/playground/result-panel/ResultPanel.js.map +1 -1
- package/dist/lib/plugins/openapi/schema/SchemaExampleAndDefault.js +3 -3
- package/dist/lib/plugins/openapi/schema/SchemaExampleAndDefault.js.map +1 -1
- package/dist/lib/plugins/openapi/schema/SchemaPropertyItem.js +2 -3
- package/dist/lib/plugins/openapi/schema/SchemaPropertyItem.js.map +1 -1
- package/dist/lib/plugins/openapi/schema/SchemaView.js +4 -4
- package/dist/lib/plugins/openapi/schema/SchemaView.js.map +1 -1
- package/dist/lib/plugins/openapi/schema/utils.js +3 -2
- package/dist/lib/plugins/openapi/schema/utils.js.map +1 -1
- package/dist/lib/plugins/openapi/util/createNavigationCategory.d.ts +9 -0
- package/dist/lib/plugins/openapi/util/{createSidebarCategory.js → createNavigationCategory.js} +5 -4
- package/dist/lib/plugins/openapi/util/createNavigationCategory.js.map +1 -0
- package/dist/lib/plugins/openapi/util/getRoutes.js +2 -2
- package/dist/lib/plugins/openapi/util/getRoutes.js.map +1 -1
- package/dist/lib/plugins/openapi/util/methodColorMap.d.ts +1 -1
- package/dist/lib/plugins/search-inkeep/index.d.ts +5 -22
- package/dist/lib/plugins/search-inkeep/index.js +35 -29
- package/dist/lib/plugins/search-inkeep/index.js.map +1 -1
- package/dist/lib/plugins/search-inkeep/inkeep.d.ts +5 -21
- package/dist/lib/plugins/search-inkeep/inkeep.js +10 -19
- package/dist/lib/plugins/search-inkeep/inkeep.js.map +1 -1
- package/dist/lib/plugins/search-pagefind/PagefindSearch.js +1 -1
- package/dist/lib/plugins/search-pagefind/PagefindSearch.js.map +1 -1
- package/dist/lib/plugins/search-pagefind/ResultList.d.ts +1 -1
- package/dist/lib/plugins/search-pagefind/ResultList.js +12 -5
- package/dist/lib/plugins/search-pagefind/ResultList.js.map +1 -1
- package/dist/lib/ui/Alert.d.ts +6 -5
- package/dist/lib/ui/Alert.js +12 -10
- package/dist/lib/ui/Alert.js.map +1 -1
- package/dist/lib/ui/CodeBlock.d.ts +1 -2
- package/dist/lib/ui/CodeBlock.js +10 -11
- package/dist/lib/ui/CodeBlock.js.map +1 -1
- package/dist/lib/ui/Dialog.js +1 -1
- package/dist/lib/ui/Dialog.js.map +1 -1
- package/dist/lib/ui/EmbeddedCodeBlock.d.ts +15 -0
- package/dist/lib/ui/EmbeddedCodeBlock.js +18 -0
- package/dist/lib/ui/EmbeddedCodeBlock.js.map +1 -0
- package/dist/lib/ui/Select.js +1 -1
- package/dist/lib/ui/SyntaxHighlight.d.ts +3 -1
- package/dist/lib/ui/SyntaxHighlight.js +3 -2
- package/dist/lib/ui/SyntaxHighlight.js.map +1 -1
- package/dist/lib/util/MdxComponents.d.ts +9 -1
- package/dist/lib/util/MdxComponents.js +4 -2
- package/dist/lib/util/MdxComponents.js.map +1 -1
- package/dist/lib/util/os.d.ts +2 -0
- package/dist/lib/util/os.js +21 -0
- package/dist/lib/util/os.js.map +1 -0
- package/dist/lib/util/useCopyToClipboard.d.ts +1 -0
- package/dist/lib/util/useCopyToClipboard.js +11 -0
- package/dist/lib/util/useCopyToClipboard.js.map +1 -0
- package/dist/lib/util/useScrollToAnchor.js +3 -3
- package/dist/lib/util/useScrollToAnchor.js.map +1 -1
- package/dist/vite/api/SchemaManager.d.ts +4 -4
- package/dist/vite/api/SchemaManager.js +25 -21
- package/dist/vite/api/SchemaManager.js.map +1 -1
- package/dist/vite/api/SchemaManager.test.js +4 -4
- package/dist/vite/api/SchemaManager.test.js.map +1 -1
- package/dist/vite/api/schema-codegen.js +42 -11
- package/dist/vite/api/schema-codegen.js.map +1 -1
- package/dist/vite/api/schema-codegen.test.js +82 -0
- package/dist/vite/api/schema-codegen.test.js.map +1 -1
- package/dist/vite/build.js +8 -2
- package/dist/vite/build.js.map +1 -1
- package/dist/vite/config.js +12 -2
- package/dist/vite/config.js.map +1 -1
- package/dist/vite/css/plugin.js +11 -0
- package/dist/vite/css/plugin.js.map +1 -1
- package/dist/vite/dev-server.js +1 -1
- package/dist/vite/mdx/remark-last-modified.d.ts +3 -0
- package/dist/vite/mdx/remark-last-modified.js +29 -0
- package/dist/vite/mdx/remark-last-modified.js.map +1 -0
- package/dist/vite/mdx/utils.d.ts +2 -0
- package/dist/vite/mdx/utils.js +31 -0
- package/dist/vite/mdx/utils.js.map +1 -0
- package/dist/vite/plugin-api.js +8 -8
- package/dist/vite/plugin-api.js.map +1 -1
- package/dist/vite/plugin-config-reload.js +2 -0
- package/dist/vite/plugin-config-reload.js.map +1 -1
- package/dist/vite/plugin-custom-pages.js +2 -2
- package/dist/vite/plugin-custom-pages.js.map +1 -1
- package/dist/vite/plugin-docs.js +61 -59
- package/dist/vite/plugin-docs.js.map +1 -1
- package/dist/vite/plugin-frontmatter.js +6 -2
- package/dist/vite/plugin-frontmatter.js.map +1 -1
- package/dist/vite/plugin-mdx.js +17 -38
- package/dist/vite/plugin-mdx.js.map +1 -1
- package/dist/vite/{plugin-sidebar.d.ts → plugin-navigation.d.ts} +1 -1
- package/dist/vite/{plugin-sidebar.js → plugin-navigation.js} +20 -19
- package/dist/vite/plugin-navigation.js.map +1 -0
- package/dist/vite/plugin-theme.d.ts +8 -0
- package/dist/vite/plugin-theme.js +235 -0
- package/dist/vite/plugin-theme.js.map +1 -0
- package/dist/vite/plugin-theme.test.d.ts +1 -0
- package/dist/vite/plugin-theme.test.js +291 -0
- package/dist/vite/plugin-theme.test.js.map +1 -0
- package/dist/vite/plugin.js +4 -6
- package/dist/vite/plugin.js.map +1 -1
- package/dist/vite/shadcn-registry.d.ts +45 -0
- package/dist/vite/shadcn-registry.js +29 -0
- package/dist/vite/shadcn-registry.js.map +1 -0
- package/lib/Alert-FYKbqjIt.js +161 -0
- package/lib/Alert-FYKbqjIt.js.map +1 -0
- package/lib/CodeBlock-DAKxs_Tu.js +85 -0
- package/lib/CodeBlock-DAKxs_Tu.js.map +1 -0
- package/lib/Command-xsbs2uhf.js +140 -0
- package/lib/Command-xsbs2uhf.js.map +1 -0
- package/lib/{Dialog-BxpuVLh9.js → Dialog-CiIdyz6a.js} +5 -5
- package/lib/Dialog-CiIdyz6a.js.map +1 -0
- package/lib/Drawer-BzkOKwgC.js.map +1 -1
- package/lib/MdxPage-DyRuoE_F.js +110 -0
- package/lib/MdxPage-DyRuoE_F.js.map +1 -0
- package/lib/OasProvider-CUA-DFGE.js +35 -0
- package/lib/OasProvider-CUA-DFGE.js.map +1 -0
- package/lib/{OperationList-Bi9ufpnW.js → OperationList-CRMvWoTv.js} +583 -570
- package/lib/OperationList-CRMvWoTv.js.map +1 -0
- package/lib/Pagination-HZKe5ncg.js +37 -0
- package/lib/Pagination-HZKe5ncg.js.map +1 -0
- package/lib/RouteGuard-CbKd7_9h.js +737 -0
- package/lib/RouteGuard-CbKd7_9h.js.map +1 -0
- package/lib/{SchemaList-Dx3pkSpp.js → SchemaList-B792ORza.js} +32 -43
- package/lib/SchemaList-B792ORza.js.map +1 -0
- package/lib/{SchemaView-DFs4gzhN.js → SchemaView-Bo53TeMb.js} +94 -103
- package/lib/SchemaView-Bo53TeMb.js.map +1 -0
- package/lib/SignUp-DfVvOCYB.js +56 -0
- package/lib/SignUp-DfVvOCYB.js.map +1 -0
- package/lib/{Markdown-r4buN85T.js → Slot-BpO_AGKJ.js} +3328 -2937
- package/lib/Slot-BpO_AGKJ.js.map +1 -0
- package/lib/{SyntaxHighlight-CqKHkyEy.js → SyntaxHighlight-CZgjJ7-f.js} +1152 -1151
- package/lib/SyntaxHighlight-CZgjJ7-f.js.map +1 -0
- package/lib/{Toc-lxYQEOzX.js → Toc-DYMzDvOa.js} +2 -2
- package/lib/{Toc-lxYQEOzX.js.map → Toc-DYMzDvOa.js.map} +1 -1
- package/lib/{chunk-DQRVZFIR-BblmKnHy.js → chunk-DQRVZFIR-DHK7_Ilc.js} +7 -7
- package/lib/{chunk-DQRVZFIR-BblmKnHy.js.map → chunk-DQRVZFIR-DHK7_Ilc.js.map} +1 -1
- package/lib/{circular-Dcv3tia6.js → circular-CLdQ0oUd.js} +2 -2
- package/lib/{circular-Dcv3tia6.js.map → circular-CLdQ0oUd.js.map} +1 -1
- package/lib/clerk-BDZ31hjU.js +25190 -0
- package/lib/clerk-BDZ31hjU.js.map +1 -0
- package/lib/{createServer-Bq93MdwG.js → createServer-Co4BBP-i.js} +4 -4
- package/lib/createServer-Co4BBP-i.js.map +1 -0
- package/lib/{errors-D27ZTQgx.js → errors-DE1gK7ms.js} +12 -12
- package/lib/{errors-D27ZTQgx.js.map → errors-DE1gK7ms.js.map} +1 -1
- package/lib/hook-Bd0yS8M0.js +1503 -0
- package/lib/hook-Bd0yS8M0.js.map +1 -0
- package/lib/index-ClhS5TxS.js +107 -0
- package/lib/index-ClhS5TxS.js.map +1 -0
- package/lib/index-CrcNWbel.js.map +1 -1
- package/lib/index-DLshv89l.js +3979 -0
- package/lib/index-DLshv89l.js.map +1 -0
- package/lib/{index-BvvmIczU.js → index-DLzZDv8_.js} +2 -2
- package/lib/{index-BvvmIczU.js.map → index-DLzZDv8_.js.map} +1 -1
- package/lib/index-DYP-V0jG.js +3469 -0
- package/lib/index-DYP-V0jG.js.map +1 -0
- package/lib/ui/Alert.js +54 -38
- package/lib/ui/Alert.js.map +1 -1
- package/lib/ui/CodeBlock.js +6 -81
- package/lib/ui/CodeBlock.js.map +1 -1
- package/lib/ui/Command.js +1 -1
- package/lib/ui/Dialog.js +23 -23
- package/lib/ui/Dialog.js.map +1 -1
- package/lib/ui/EmbeddedCodeBlock.js +80 -0
- package/lib/ui/EmbeddedCodeBlock.js.map +1 -0
- package/lib/ui/Select.js +1 -1
- package/lib/ui/Select.js.map +1 -1
- package/lib/ui/SyntaxHighlight.js +5 -4
- package/lib/ui/SyntaxHighlight.js.map +1 -1
- package/lib/{useExposedProps-BZQkZneR.js → useExposedProps-BIYjecPD.js} +2 -2
- package/lib/{useExposedProps-BZQkZneR.js.map → useExposedProps-BIYjecPD.js.map} +1 -1
- package/lib/zudoku.auth-auth0.js +1 -1
- package/lib/zudoku.auth-azureb2c.js +1553 -1556
- package/lib/zudoku.auth-azureb2c.js.map +1 -1
- package/lib/zudoku.auth-clerk.js +3 -3
- package/lib/zudoku.auth-openid.js +115 -106
- package/lib/zudoku.auth-openid.js.map +1 -1
- package/lib/zudoku.components.js +33 -4201
- package/lib/zudoku.components.js.map +1 -1
- package/lib/zudoku.hooks.js +10 -11
- package/lib/zudoku.hooks.js.map +1 -1
- package/lib/zudoku.plugin-api-catalog.js +47 -47
- package/lib/zudoku.plugin-api-catalog.js.map +1 -1
- package/lib/zudoku.plugin-api-keys.js +257 -217
- package/lib/zudoku.plugin-api-keys.js.map +1 -1
- package/lib/zudoku.plugin-custom-pages.js +12 -18
- package/lib/zudoku.plugin-custom-pages.js.map +1 -1
- package/lib/zudoku.plugin-markdown.js +19 -69
- package/lib/zudoku.plugin-markdown.js.map +1 -1
- package/lib/zudoku.plugin-openapi.js +6 -6
- package/lib/zudoku.plugin-redirect.js +1 -1
- package/lib/zudoku.plugin-search-inkeep.js +54 -57
- package/lib/zudoku.plugin-search-inkeep.js.map +1 -1
- package/lib/zudoku.plugin-search-pagefind.js +211 -117
- package/lib/zudoku.plugin-search-pagefind.js.map +1 -1
- package/lib/zudoku.plugins.js.map +1 -1
- package/package.json +29 -24
- package/src/app/ZuploBuildConfig.ts +8 -8
- package/src/app/defaultTheme.css +68 -49
- package/src/app/demo.tsx +24 -6
- package/src/app/entry.client.tsx +0 -2
- package/src/app/entry.server.tsx +0 -2
- package/src/app/env.ts +8 -0
- package/src/app/main.css +10 -53
- package/src/app/main.tsx +17 -23
- package/src/app/standalone.tsx +7 -6
- package/src/lib/auth/issuer.test.ts +1 -1
- package/src/lib/auth/issuer.ts +1 -1
- package/src/lib/authentication/authentication.ts +2 -2
- package/src/lib/authentication/components/CallbackHandler.tsx +1 -1
- package/src/lib/authentication/components/SignIn.tsx +5 -12
- package/src/lib/authentication/providers/openid.tsx +23 -4
- package/src/lib/components/Autocomplete.tsx +2 -1
- package/src/lib/components/Banner.tsx +1 -2
- package/src/lib/components/BuildCheck.tsx +1 -1
- package/src/lib/components/CategoryHeading.tsx +4 -1
- package/src/lib/components/ErrorPage.tsx +3 -3
- package/src/lib/components/Footer.tsx +1 -1
- package/src/lib/components/Framed.tsx +51 -0
- package/src/lib/components/Header.tsx +24 -21
- package/src/lib/components/Heading.tsx +7 -3
- package/src/lib/components/Main.tsx +9 -9
- package/src/lib/components/Markdown.tsx +3 -5
- package/src/lib/components/MobileTopNavigation.tsx +69 -15
- package/src/lib/components/NotFoundPage.tsx +3 -3
- package/src/lib/components/PageProgress.tsx +28 -0
- package/src/lib/components/Pagination.tsx +5 -4
- package/src/lib/components/StatusPage.tsx +5 -0
- package/src/lib/components/TopNavigation.tsx +75 -68
- package/src/lib/components/Typography.tsx +14 -0
- package/src/lib/components/context/ZudokuContext.ts +50 -32
- package/src/lib/components/index.ts +2 -0
- package/src/lib/components/navigation/{Sidebar.tsx → Navigation.tsx} +18 -16
- package/src/lib/components/navigation/{SidebarBadge.tsx → NavigationBadge.tsx} +1 -1
- package/src/lib/components/navigation/{SidebarCategory.tsx → NavigationCategory.tsx} +16 -14
- package/src/lib/components/navigation/{SidebarItem.tsx → NavigationItem.tsx} +23 -17
- package/src/lib/components/navigation/{SidebarWrapper.tsx → NavigationWrapper.tsx} +7 -4
- package/src/lib/components/navigation/utils.ts +27 -28
- package/src/lib/core/ZudokuContext.ts +35 -20
- package/src/lib/core/plugins.ts +2 -2
- package/src/lib/errors/ErrorAlert.tsx +3 -9
- package/src/lib/hooks/useEvent.test.tsx +7 -5
- package/src/lib/hooks/useHotkey.ts +70 -0
- package/src/lib/plugins/api-catalog/Catalog.tsx +1 -1
- package/src/lib/plugins/api-catalog/index.tsx +19 -19
- package/src/lib/plugins/api-keys/SettingsApiKeys.tsx +52 -29
- package/src/lib/plugins/api-keys/index.tsx +26 -4
- package/src/lib/plugins/custom-pages/index.tsx +21 -16
- package/src/lib/plugins/markdown/MdxPage.tsx +76 -21
- package/src/lib/plugins/markdown/index.tsx +28 -41
- package/src/lib/plugins/openapi/OperationList.tsx +9 -19
- package/src/lib/plugins/openapi/OperationListItem.tsx +3 -3
- package/src/lib/plugins/openapi/ParameterListItem.tsx +6 -0
- package/src/lib/plugins/openapi/SchemaList.tsx +5 -11
- package/src/lib/plugins/openapi/Sidecar.tsx +1 -0
- package/src/lib/plugins/openapi/SidecarExamples.tsx +1 -0
- package/src/lib/plugins/openapi/graphql/gql.ts +5 -5
- package/src/lib/plugins/openapi/graphql/graphql.ts +6 -6
- package/src/lib/plugins/openapi/index.tsx +12 -12
- package/src/lib/plugins/openapi/interfaces.ts +3 -3
- package/src/lib/plugins/openapi/playground/BodyPanel.tsx +40 -31
- package/src/lib/plugins/openapi/playground/CollapsibleHeader.tsx +47 -0
- package/src/lib/plugins/openapi/playground/ExamplesDropdown.tsx +7 -3
- package/src/lib/plugins/openapi/playground/Headers.tsx +187 -89
- package/src/lib/plugins/openapi/playground/IdentityDialog.tsx +3 -2
- package/src/lib/plugins/openapi/playground/IdentitySelector.tsx +7 -12
- package/src/lib/plugins/openapi/playground/InlineInput.tsx +1 -1
- package/src/lib/plugins/openapi/playground/ParamsGrid.tsx +2 -2
- package/src/lib/plugins/openapi/playground/PathParams.tsx +4 -5
- package/src/lib/plugins/openapi/playground/Playground.tsx +174 -125
- package/src/lib/plugins/openapi/playground/PlaygroundDialog.tsx +1 -1
- package/src/lib/plugins/openapi/playground/QueryParams.tsx +104 -58
- package/src/lib/plugins/openapi/playground/Spinner.tsx +87 -0
- package/src/lib/plugins/openapi/playground/request-panel/UrlPath.tsx +31 -0
- package/src/lib/plugins/openapi/playground/request-panel/UrlQueryParams.tsx +25 -0
- package/src/lib/plugins/openapi/playground/result-panel/Highlight.tsx +26 -0
- package/src/lib/plugins/openapi/playground/result-panel/ResponseStatusBar.tsx +115 -0
- package/src/lib/plugins/openapi/playground/result-panel/ResponseTab.tsx +103 -97
- package/src/lib/plugins/openapi/playground/result-panel/ResultPanel.tsx +68 -92
- package/src/lib/plugins/openapi/schema/SchemaExampleAndDefault.tsx +3 -3
- package/src/lib/plugins/openapi/schema/SchemaPropertyItem.tsx +2 -3
- package/src/lib/plugins/openapi/schema/SchemaView.tsx +5 -10
- package/src/lib/plugins/openapi/schema/utils.ts +3 -2
- package/src/lib/plugins/openapi/util/{createSidebarCategory.tsx → createNavigationCategory.tsx} +6 -5
- package/src/lib/plugins/openapi/util/getRoutes.tsx +2 -2
- package/src/lib/plugins/openapi/util/methodColorMap.tsx +1 -1
- package/src/lib/plugins/search-inkeep/index.tsx +54 -58
- package/src/lib/plugins/search-inkeep/inkeep.ts +19 -21
- package/src/lib/plugins/search-pagefind/PagefindSearch.tsx +1 -0
- package/src/lib/plugins/search-pagefind/ResultList.tsx +13 -4
- package/src/lib/ui/Alert.tsx +45 -39
- package/src/lib/ui/CodeBlock.tsx +40 -55
- package/src/lib/ui/Dialog.tsx +2 -2
- package/src/lib/ui/EmbeddedCodeBlock.tsx +94 -0
- package/src/lib/ui/Select.tsx +1 -1
- package/src/lib/ui/SyntaxHighlight.tsx +11 -3
- package/src/lib/util/MdxComponents.tsx +13 -2
- package/src/lib/util/os.ts +18 -0
- package/src/lib/util/useCopyToClipboard.ts +17 -0
- package/src/lib/util/useScrollToAnchor.ts +3 -3
- package/dist/config/validators/InputSidebarSchema.d.ts +0 -220
- package/dist/config/validators/InputSidebarSchema.js +0 -63
- package/dist/config/validators/InputSidebarSchema.js.map +0 -1
- package/dist/config/validators/SidebarSchema.d.ts +0 -46
- package/dist/config/validators/SidebarSchema.js +0 -118
- package/dist/config/validators/SidebarSchema.js.map +0 -1
- package/dist/lib/components/navigation/Sidebar.d.ts +0 -5
- package/dist/lib/components/navigation/Sidebar.js +0 -10
- package/dist/lib/components/navigation/Sidebar.js.map +0 -1
- package/dist/lib/components/navigation/SidebarBadge.js.map +0 -1
- package/dist/lib/components/navigation/SidebarCategory.d.ts +0 -5
- package/dist/lib/components/navigation/SidebarCategory.js.map +0 -1
- package/dist/lib/components/navigation/SidebarItem.d.ts +0 -6
- package/dist/lib/components/navigation/SidebarItem.js +0 -44
- package/dist/lib/components/navigation/SidebarItem.js.map +0 -1
- package/dist/lib/components/navigation/SidebarWrapper.js.map +0 -1
- package/dist/lib/plugins/custom-pages/CustomPage.d.ts +0 -2
- package/dist/lib/plugins/custom-pages/CustomPage.js +0 -11
- package/dist/lib/plugins/custom-pages/CustomPage.js.map +0 -1
- package/dist/lib/plugins/markdown/resolver.d.ts +0 -32
- package/dist/lib/plugins/markdown/resolver.js +0 -46
- package/dist/lib/plugins/markdown/resolver.js.map +0 -1
- package/dist/lib/plugins/openapi/playground/UrlDisplay.d.ts +0 -4
- package/dist/lib/plugins/openapi/playground/UrlDisplay.js +0 -22
- package/dist/lib/plugins/openapi/playground/UrlDisplay.js.map +0 -1
- package/dist/lib/plugins/openapi/playground/result-panel/RequestTab.d.ts +0 -7
- package/dist/lib/plugins/openapi/playground/result-panel/RequestTab.js +0 -11
- package/dist/lib/plugins/openapi/playground/result-panel/RequestTab.js.map +0 -1
- package/dist/lib/plugins/openapi/util/createSidebarCategory.d.ts +0 -9
- package/dist/lib/plugins/openapi/util/createSidebarCategory.js.map +0 -1
- package/dist/vite/plugin-configure-tailwind.d.ts +0 -2
- package/dist/vite/plugin-configure-tailwind.js +0 -38
- package/dist/vite/plugin-configure-tailwind.js.map +0 -1
- package/dist/vite/plugin-sidebar.js.map +0 -1
- package/dist/vite/plugin-theme-css.d.ts +0 -5
- package/dist/vite/plugin-theme-css.js +0 -77
- package/dist/vite/plugin-theme-css.js.map +0 -1
- package/lib/Callout-CoVxYafP.js +0 -231
- package/lib/Callout-CoVxYafP.js.map +0 -1
- package/lib/CategoryHeading-Cu2RwgjC.js +0 -10
- package/lib/CategoryHeading-Cu2RwgjC.js.map +0 -1
- package/lib/Dialog-BxpuVLh9.js.map +0 -1
- package/lib/Markdown-r4buN85T.js.map +0 -1
- package/lib/MdxPage-DYKsTerz.js +0 -84
- package/lib/MdxPage-DYKsTerz.js.map +0 -1
- package/lib/OasProvider-C499U3sP.js +0 -33
- package/lib/OasProvider-C499U3sP.js.map +0 -1
- package/lib/OperationList-Bi9ufpnW.js.map +0 -1
- package/lib/Pagination-CCxhL836.js +0 -36
- package/lib/Pagination-CCxhL836.js.map +0 -1
- package/lib/RouteGuard-B7GVW4oL.js +0 -55
- package/lib/RouteGuard-B7GVW4oL.js.map +0 -1
- package/lib/SchemaList-Dx3pkSpp.js.map +0 -1
- package/lib/SchemaView-DFs4gzhN.js.map +0 -1
- package/lib/SignUp-CRIKdWt9.js +0 -63
- package/lib/SignUp-CRIKdWt9.js.map +0 -1
- package/lib/Slot-B5qSAnwR.js +0 -160
- package/lib/Slot-B5qSAnwR.js.map +0 -1
- package/lib/SyntaxHighlight-CqKHkyEy.js.map +0 -1
- package/lib/clerk-yAKDC3Qz.js +0 -24812
- package/lib/clerk-yAKDC3Qz.js.map +0 -1
- package/lib/createServer-Bq93MdwG.js.map +0 -1
- package/lib/hook-7wZANGJP.js +0 -1483
- package/lib/hook-7wZANGJP.js.map +0 -1
- package/lib/index--oeBayMa.js +0 -86
- package/lib/index--oeBayMa.js.map +0 -1
- package/lib/index-BgPFzhG_.js +0 -3226
- package/lib/index-BgPFzhG_.js.map +0 -1
- package/lib/index-Bn6Lc9tq.js +0 -9
- package/lib/index-Bn6Lc9tq.js.map +0 -1
- package/lib/index-QzXzw_ra.js +0 -24
- package/lib/index-QzXzw_ra.js.map +0 -1
- package/lib/index.esm-BFcSKCe-.js +0 -683
- package/lib/index.esm-BFcSKCe-.js.map +0 -1
- package/lib/joinPath-B7kNnUX4.js +0 -8
- package/lib/joinPath-B7kNnUX4.js.map +0 -1
- package/lib/mutation-C1XCQTQL.js +0 -196
- package/lib/mutation-C1XCQTQL.js.map +0 -1
- package/lib/objectEntries-yMIkr2mI.js +0 -5
- package/lib/objectEntries-yMIkr2mI.js.map +0 -1
- package/lib/react-nprogress.esm-C2MPXjiJ.js +0 -389
- package/lib/react-nprogress.esm-C2MPXjiJ.js.map +0 -1
- package/lib/useLatest-hmRS46UF.js +0 -11
- package/lib/useLatest-hmRS46UF.js.map +0 -1
- package/lib/useMutation-BKvPttRn.js +0 -97
- package/lib/useMutation-BKvPttRn.js.map +0 -1
- package/src/lib/plugins/custom-pages/CustomPage.tsx +0 -18
- package/src/lib/plugins/markdown/resolver.ts +0 -59
- package/src/lib/plugins/openapi/playground/UrlDisplay.tsx +0 -32
- package/src/lib/plugins/openapi/playground/result-panel/RequestTab.tsx +0 -73
package/dist/lib/ui/Alert.js
CHANGED
|
@@ -1,23 +1,25 @@
|
|
|
1
1
|
import { jsx as _jsx } from "react/jsx-runtime";
|
|
2
2
|
import { cva } from "class-variance-authority";
|
|
3
|
-
import * as React from "react";
|
|
4
3
|
import { cn } from "../util/cn.js";
|
|
5
|
-
const alertVariants = cva("relative w-full rounded-lg border
|
|
4
|
+
const alertVariants = cva("relative w-full rounded-lg border px-4 py-3 text-sm grid has-[>svg]:grid-cols-[calc(var(--spacing)*4)_1fr] grid-cols-[0_1fr] has-[>svg]:gap-x-3 gap-y-0.5 items-start [&>svg]:size-4 [&>svg]:translate-y-0.5 [&>svg]:text-current", {
|
|
6
5
|
variants: {
|
|
7
6
|
variant: {
|
|
8
|
-
default: "bg-
|
|
9
|
-
destructive: "
|
|
7
|
+
default: "bg-card text-card-foreground",
|
|
8
|
+
destructive: "text-destructive bg-card [&>svg]:text-current *:data-[slot=alert-description]:text-destructive/90",
|
|
10
9
|
},
|
|
11
10
|
},
|
|
12
11
|
defaultVariants: {
|
|
13
12
|
variant: "default",
|
|
14
13
|
},
|
|
15
14
|
});
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
AlertTitle
|
|
20
|
-
|
|
21
|
-
|
|
15
|
+
function Alert({ className, variant, ...props }) {
|
|
16
|
+
return (_jsx("div", { "data-slot": "alert", role: "alert", className: cn(alertVariants({ variant }), className), ...props }));
|
|
17
|
+
}
|
|
18
|
+
function AlertTitle({ className, ...props }) {
|
|
19
|
+
return (_jsx("div", { "data-slot": "alert-title", className: cn("col-start-2 line-clamp-1 min-h-4 font-medium tracking-tight", className), ...props }));
|
|
20
|
+
}
|
|
21
|
+
function AlertDescription({ className, ...props }) {
|
|
22
|
+
return (_jsx("div", { "data-slot": "alert-description", className: cn("text-muted-foreground col-start-2 grid justify-items-start gap-1 text-sm [&_p]:leading-relaxed", className), ...props }));
|
|
23
|
+
}
|
|
22
24
|
export { Alert, AlertDescription, AlertTitle };
|
|
23
25
|
//# sourceMappingURL=Alert.js.map
|
package/dist/lib/ui/Alert.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Alert.js","sourceRoot":"","sources":["../../../src/lib/ui/Alert.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,GAAG,EAAqB,MAAM,0BAA0B,CAAC;
|
|
1
|
+
{"version":3,"file":"Alert.js","sourceRoot":"","sources":["../../../src/lib/ui/Alert.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,GAAG,EAAqB,MAAM,0BAA0B,CAAC;AAElE,OAAO,EAAE,EAAE,EAAE,MAAM,eAAe,CAAC;AAEnC,MAAM,aAAa,GAAG,GAAG,CACvB,mOAAmO,EACnO;IACE,QAAQ,EAAE;QACR,OAAO,EAAE;YACP,OAAO,EAAE,8BAA8B;YACvC,WAAW,EACT,mGAAmG;SACtG;KACF;IACD,eAAe,EAAE;QACf,OAAO,EAAE,SAAS;KACnB;CACF,CACF,CAAC;AAEF,SAAS,KAAK,CAAC,EACb,SAAS,EACT,OAAO,EACP,GAAG,KAAK,EACyD;IACjE,OAAO,CACL,2BACY,OAAO,EACjB,IAAI,EAAC,OAAO,EACZ,SAAS,EAAE,EAAE,CAAC,aAAa,CAAC,EAAE,OAAO,EAAE,CAAC,EAAE,SAAS,CAAC,KAChD,KAAK,GACT,CACH,CAAC;AACJ,CAAC;AAED,SAAS,UAAU,CAAC,EAAE,SAAS,EAAE,GAAG,KAAK,EAA+B;IACtE,OAAO,CACL,2BACY,aAAa,EACvB,SAAS,EAAE,EAAE,CACX,6DAA6D,EAC7D,SAAS,CACV,KACG,KAAK,GACT,CACH,CAAC;AACJ,CAAC;AAED,SAAS,gBAAgB,CAAC,EACxB,SAAS,EACT,GAAG,KAAK,EACoB;IAC5B,OAAO,CACL,2BACY,mBAAmB,EAC7B,SAAS,EAAE,EAAE,CACX,gGAAgG,EAChG,SAAS,CACV,KACG,KAAK,GACT,CACH,CAAC;AACJ,CAAC;AAED,OAAO,EAAE,KAAK,EAAE,gBAAgB,EAAE,UAAU,EAAE,CAAC"}
|
|
@@ -9,8 +9,7 @@ export type CodeBlockProps = {
|
|
|
9
9
|
children?: ReactNode;
|
|
10
10
|
code?: ReactNode;
|
|
11
11
|
showCopy?: "hover" | "always" | "never";
|
|
12
|
-
showCopyText?: boolean;
|
|
13
12
|
disabled?: boolean;
|
|
14
13
|
showLineNumbers?: boolean;
|
|
15
14
|
};
|
|
16
|
-
export declare const CodeBlock: ({ children, title, language, showCopy,
|
|
15
|
+
export declare const CodeBlock: ({ children, title, language, showCopy, showLanguageIndicator, showLineNumbers, ...props }: CodeBlockProps) => import("react/jsx-runtime").JSX.Element | null;
|
package/dist/lib/ui/CodeBlock.js
CHANGED
|
@@ -1,18 +1,17 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { jsxs as _jsxs, jsx as _jsx } from "react/jsx-runtime";
|
|
2
2
|
import { CheckIcon, CopyIcon } from "lucide-react";
|
|
3
|
-
import { useRef
|
|
3
|
+
import { useRef } from "react";
|
|
4
4
|
import { cn } from "../util/cn.js";
|
|
5
|
-
|
|
6
|
-
|
|
5
|
+
import { useCopyToClipboard } from "../util/useCopyToClipboard.js";
|
|
6
|
+
export const CodeBlock = ({ children, title = "Code", language, showCopy = "hover", showLanguageIndicator = false, showLineNumbers, ...props }) => {
|
|
7
|
+
const [isCopied, copyToClipboard] = useCopyToClipboard();
|
|
7
8
|
const ref = useRef(null);
|
|
8
9
|
if (!children)
|
|
9
10
|
return null;
|
|
10
|
-
return (_jsxs("div", { className: cn("code-block-wrapper relative group bg-muted/50 rounded-md", showLineNumbers && "line-numbers"), children: [
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
setTimeout(() => setIsCopied(false), 2000);
|
|
16
|
-
}, children: [isCopied ? (_jsx(CheckIcon, { className: "text-emerald-600", size: 16, strokeWidth: 2.5, absoluteStrokeWidth: true })) : (_jsx(CopyIcon, { size: 16 })), showCopyText && "Copy"] }))] }));
|
|
11
|
+
return (_jsxs("div", { className: cn("border code-block-wrapper relative group bg-muted/50 rounded-md overflow-hidden", showLineNumbers && "line-numbers"), children: [_jsxs("div", { className: "border-b flex items-center h-10 font-sans bg-black/2", children: [_jsxs("div", { className: "flex-1 text-sm w-full px-4", children: [title, showLanguageIndicator && language && (_jsxs("span", { className: "text-muted-foreground ml-2", children: ["(", language, ")"] }))] }), " ", showCopy !== "never" && (_jsx("button", { type: "button", "aria-label": "Copy code", title: "Copy code", className: cn("cursor:pointer h-full hover:border-l-border active:shadow-none active:inset-shadow-xs hover:inset-shadow-xs flex items-center gap-2 px-4 outline-border text-sm hover:bg-black/5 transition-all"), disabled: isCopied, onClick: () => {
|
|
12
|
+
if (!ref.current?.textContent)
|
|
13
|
+
return;
|
|
14
|
+
copyToClipboard(ref.current.textContent);
|
|
15
|
+
}, children: isCopied ? (_jsx(CheckIcon, { className: "text-emerald-600", size: 14, strokeWidth: 2.5, absoluteStrokeWidth: true })) : (_jsx(CopyIcon, { size: 14 })) }))] }), _jsx("div", { className: cn("code-block text-sm not-prose scrollbar overflow-x-auto scrollbar p-4", props.className), ref: ref, children: children })] }));
|
|
17
16
|
};
|
|
18
17
|
//# sourceMappingURL=CodeBlock.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"CodeBlock.js","sourceRoot":"","sources":["../../../src/lib/ui/CodeBlock.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,SAAS,EAAE,QAAQ,EAAE,MAAM,cAAc,CAAC;AAEnD,OAAO,EAAE,MAAM,EAAE,
|
|
1
|
+
{"version":3,"file":"CodeBlock.js","sourceRoot":"","sources":["../../../src/lib/ui/CodeBlock.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,SAAS,EAAE,QAAQ,EAAE,MAAM,cAAc,CAAC;AAEnD,OAAO,EAAE,MAAM,EAAE,MAAM,OAAO,CAAC;AAC/B,OAAO,EAAE,EAAE,EAAE,MAAM,eAAe,CAAC;AACnC,OAAO,EAAE,kBAAkB,EAAE,MAAM,+BAA+B,CAAC;AAgBnE,MAAM,CAAC,MAAM,SAAS,GAAG,CAAC,EACxB,QAAQ,EACR,KAAK,GAAG,MAAM,EACd,QAAQ,EACR,QAAQ,GAAG,OAAO,EAClB,qBAAqB,GAAG,KAAK,EAC7B,eAAe,EACf,GAAG,KAAK,EACO,EAAE,EAAE;IACnB,MAAM,CAAC,QAAQ,EAAE,eAAe,CAAC,GAAG,kBAAkB,EAAE,CAAC;IACzD,MAAM,GAAG,GAAG,MAAM,CAAiB,IAAI,CAAC,CAAC;IAEzC,IAAI,CAAC,QAAQ;QAAE,OAAO,IAAI,CAAC;IAE3B,OAAO,CACL,eACE,SAAS,EAAE,EAAE,CACX,iFAAiF,EACjF,eAAe,IAAI,cAAc,CAClC,aAED,eAAK,SAAS,EAAC,sDAAsD,aACnE,eAAK,SAAS,EAAC,4BAA4B,aACxC,KAAK,EACL,qBAAqB,IAAI,QAAQ,IAAI,CACpC,gBAAM,SAAS,EAAC,4BAA4B,kBAAG,QAAQ,SAAS,CACjE,IACG,EAAC,GAAG,EACT,QAAQ,KAAK,OAAO,IAAI,CACvB,iBACE,IAAI,EAAC,QAAQ,gBACF,WAAW,EACtB,KAAK,EAAC,WAAW,EACjB,SAAS,EAAE,EAAE,CACX,iMAAiM,CAClM,EACD,QAAQ,EAAE,QAAQ,EAClB,OAAO,EAAE,GAAG,EAAE;4BACZ,IAAI,CAAC,GAAG,CAAC,OAAO,EAAE,WAAW;gCAAE,OAAO;4BAEtC,eAAe,CAAC,GAAG,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC;wBAC3C,CAAC,YAEA,QAAQ,CAAC,CAAC,CAAC,CACV,KAAC,SAAS,IACR,SAAS,EAAC,kBAAkB,EAC5B,IAAI,EAAE,EAAE,EACR,WAAW,EAAE,GAAG,EAChB,mBAAmB,SACnB,CACH,CAAC,CAAC,CAAC,CACF,KAAC,QAAQ,IAAC,IAAI,EAAE,EAAE,GAAI,CACvB,GACM,CACV,IACG,EACN,cACE,SAAS,EAAE,EAAE,CACX,sEAAsE,EACtE,KAAK,CAAC,SAAS,CAChB,EACD,GAAG,EAAE,GAAG,YAEP,QAAQ,GACL,IACF,CACP,CAAC;AACJ,CAAC,CAAC"}
|
package/dist/lib/ui/Dialog.js
CHANGED
|
@@ -9,7 +9,7 @@ const DialogPortal = DialogPrimitive.Portal;
|
|
|
9
9
|
const DialogClose = DialogPrimitive.Close;
|
|
10
10
|
const DialogOverlay = React.forwardRef(({ className, ...props }, ref) => (_jsx(DialogPrimitive.Overlay, { ref: ref, className: cn("fixed inset-0 z-50 bg-black/80 data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0", className), ...props })));
|
|
11
11
|
DialogOverlay.displayName = DialogPrimitive.Overlay.displayName;
|
|
12
|
-
const DialogContent = React.forwardRef(({ className, children, showCloseButton = true, ...props }, ref) => (_jsxs(DialogPortal, { children: [_jsx(DialogOverlay, {}), _jsxs(DialogPrimitive.Content, { ref: ref, className: cn("fixed left-[50%] top-[50%] z-50 grid w-full max-w-lg translate-x-[-50%] translate-y-[-50%] gap-4 border bg-background p-6 shadow-lg duration-200 data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[state=closed]:slide-out-to-left-1/2 data-[state=closed]:slide-out-to-top-[48%] data-[state=open]:slide-in-from-left-1/2 data-[state=open]:slide-in-from-top-[48%] sm:rounded-lg", className), ...props, children: [children, showCloseButton && (_jsxs(DialogPrimitive.Close, { className: "absolute
|
|
12
|
+
const DialogContent = React.forwardRef(({ className, children, showCloseButton = true, ...props }, ref) => (_jsxs(DialogPortal, { children: [_jsx(DialogOverlay, {}), _jsxs(DialogPrimitive.Content, { ref: ref, className: cn("fixed left-[50%] top-[50%] z-50 grid w-full max-w-lg translate-x-[-50%] translate-y-[-50%] gap-4 border bg-background p-6 shadow-lg duration-200 data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[state=closed]:slide-out-to-left-1/2 data-[state=closed]:slide-out-to-top-[48%] data-[state=open]:slide-in-from-left-1/2 data-[state=open]:slide-in-from-top-[48%] sm:rounded-lg", className), ...props, children: [children, showCloseButton && (_jsxs(DialogPrimitive.Close, { className: "absolute left-1 top-1 rounded-xs opacity-70 ring-offset-background transition-opacity hover:opacity-100 focus:outline-hidden focus:ring-2 focus:ring-ring focus:ring-offset-2 disabled:pointer-events-none data-[state=open]:bg-accent data-[state=open]:text-muted-foreground", children: [_jsx(XIcon, { className: "h-3 w-3", strokeWidth: 2 }), _jsx("span", { className: "sr-only", children: "Close" })] }))] })] })));
|
|
13
13
|
DialogContent.displayName = DialogPrimitive.Content.displayName;
|
|
14
14
|
const DialogHeader = ({ className, ...props }) => (_jsx("div", { className: cn("flex flex-col space-y-1.5 text-center sm:text-left", className), ...props }));
|
|
15
15
|
DialogHeader.displayName = "DialogHeader";
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Dialog.js","sourceRoot":"","sources":["../../../src/lib/ui/Dialog.tsx"],"names":[],"mappings":";AAAA,OAAO,KAAK,eAAe,MAAM,wBAAwB,CAAC;AAC1D,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAE/B,OAAO,EAAE,KAAK,EAAE,MAAM,cAAc,CAAC;AACrC,OAAO,EAAE,EAAE,EAAE,MAAM,eAAe,CAAC;AAEnC,MAAM,MAAM,GAAG,eAAe,CAAC,IAAI,CAAC;AAEpC,MAAM,aAAa,GAAG,eAAe,CAAC,OAAO,CAAC;AAE9C,MAAM,YAAY,GAAG,eAAe,CAAC,MAAM,CAAC;AAE5C,MAAM,WAAW,GAAG,eAAe,CAAC,KAAK,CAAC;AAE1C,MAAM,aAAa,GAAG,KAAK,CAAC,UAAU,CAGpC,CAAC,EAAE,SAAS,EAAE,GAAG,KAAK,EAAE,EAAE,GAAG,EAAE,EAAE,CAAC,CAClC,KAAC,eAAe,CAAC,OAAO,IACtB,GAAG,EAAE,GAAG,EACR,SAAS,EAAE,EAAE,CACX,yJAAyJ,EACzJ,SAAS,CACV,KACG,KAAK,GACT,CACH,CAAC,CAAC;AACH,aAAa,CAAC,WAAW,GAAG,eAAe,CAAC,OAAO,CAAC,WAAW,CAAC;AAEhE,MAAM,aAAa,GAAG,KAAK,CAAC,UAAU,CAKpC,CAAC,EAAE,SAAS,EAAE,QAAQ,EAAE,eAAe,GAAG,IAAI,EAAE,GAAG,KAAK,EAAE,EAAE,GAAG,EAAE,EAAE,CAAC,CACpE,MAAC,YAAY,eACX,KAAC,aAAa,KAAG,EACjB,MAAC,eAAe,CAAC,OAAO,IACtB,GAAG,EAAE,GAAG,EACR,SAAS,EAAE,EAAE,CACX,6fAA6f,EAC7f,SAAS,CACV,KACG,KAAK,aAER,QAAQ,EACR,eAAe,IAAI,CAClB,MAAC,eAAe,CAAC,KAAK,IAAC,SAAS,EAAC,
|
|
1
|
+
{"version":3,"file":"Dialog.js","sourceRoot":"","sources":["../../../src/lib/ui/Dialog.tsx"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import type { ReactNode } from "react";
|
|
2
|
+
export type CodeBlockProps = {
|
|
3
|
+
className?: string;
|
|
4
|
+
noBackground?: boolean;
|
|
5
|
+
wrapLines?: boolean;
|
|
6
|
+
showLanguageIndicator?: boolean;
|
|
7
|
+
language?: string;
|
|
8
|
+
children?: ReactNode;
|
|
9
|
+
code?: ReactNode;
|
|
10
|
+
showCopy?: "hover" | "always" | "never";
|
|
11
|
+
showCopyText?: boolean;
|
|
12
|
+
disabled?: boolean;
|
|
13
|
+
showLineNumbers?: boolean;
|
|
14
|
+
};
|
|
15
|
+
export declare const EmbeddedCodeBlock: ({ children, language, showCopy, showCopyText, showLanguageIndicator, showLineNumbers, ...props }: CodeBlockProps) => import("react/jsx-runtime").JSX.Element | null;
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
|
+
import { CheckIcon, CopyIcon } from "lucide-react";
|
|
3
|
+
import { useRef, useState } from "react";
|
|
4
|
+
import { cn } from "../util/cn.js";
|
|
5
|
+
export const EmbeddedCodeBlock = ({ children, language, showCopy = "hover", showCopyText, showLanguageIndicator = true, showLineNumbers, ...props }) => {
|
|
6
|
+
const [isCopied, setIsCopied] = useState(false);
|
|
7
|
+
const ref = useRef(null);
|
|
8
|
+
if (!children)
|
|
9
|
+
return null;
|
|
10
|
+
return (_jsxs("div", { className: cn("code-block-wrapper relative group bg-muted/50", showLineNumbers && "line-numbers"), children: [_jsx("div", { className: cn("code-block text-sm not-prose scrollbar overflow-x-auto scrollbar p-4", props.className), ref: ref, children: children }), showLanguageIndicator && (_jsx("span", { className: cn("absolute top-1.5 end-3 !text-[11px] font-mono text-muted-foreground transition group-hover:opacity-0", showCopy === "always" && "hidden"), children: language })), showCopy !== "never" && (_jsxs("button", { type: "button", "aria-label": "Copy code", title: "Copy code", className: cn("absolute top-2 end-2 p-2 transition hover:shadow-xs active:shadow-none active:inset-shadow-xs hover:outline outline-border rounded-md text-sm text-muted-foreground", showCopy === "hover" && "opacity-0 group-hover:opacity-100", showCopyText && "flex gap-2 items-center font-medium"), disabled: isCopied, onClick: () => {
|
|
11
|
+
if (!ref.current?.textContent)
|
|
12
|
+
return;
|
|
13
|
+
setIsCopied(true);
|
|
14
|
+
void navigator.clipboard.writeText(ref.current.textContent);
|
|
15
|
+
setTimeout(() => setIsCopied(false), 2000);
|
|
16
|
+
}, children: [isCopied ? (_jsx(CheckIcon, { className: "text-emerald-600", size: 16, strokeWidth: 2.5, absoluteStrokeWidth: true })) : (_jsx(CopyIcon, { size: 16 })), showCopyText && "Copy"] }))] }));
|
|
17
|
+
};
|
|
18
|
+
//# sourceMappingURL=EmbeddedCodeBlock.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"EmbeddedCodeBlock.js","sourceRoot":"","sources":["../../../src/lib/ui/EmbeddedCodeBlock.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,SAAS,EAAE,QAAQ,EAAE,MAAM,cAAc,CAAC;AAEnD,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC;AACzC,OAAO,EAAE,EAAE,EAAE,MAAM,eAAe,CAAC;AAgBnC,MAAM,CAAC,MAAM,iBAAiB,GAAG,CAAC,EAChC,QAAQ,EACR,QAAQ,EACR,QAAQ,GAAG,OAAO,EAClB,YAAY,EACZ,qBAAqB,GAAG,IAAI,EAC5B,eAAe,EACf,GAAG,KAAK,EACO,EAAE,EAAE;IACnB,MAAM,CAAC,QAAQ,EAAE,WAAW,CAAC,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC;IAChD,MAAM,GAAG,GAAG,MAAM,CAAiB,IAAI,CAAC,CAAC;IAEzC,IAAI,CAAC,QAAQ;QAAE,OAAO,IAAI,CAAC;IAE3B,OAAO,CACL,eACE,SAAS,EAAE,EAAE,CACX,+CAA+C,EAC/C,eAAe,IAAI,cAAc,CAClC,aAED,cACE,SAAS,EAAE,EAAE,CACX,sEAAsE,EACtE,KAAK,CAAC,SAAS,CAChB,EACD,GAAG,EAAE,GAAG,YAEP,QAAQ,GACL,EACL,qBAAqB,IAAI,CACxB,eACE,SAAS,EAAE,EAAE,CACX,sGAAsG,EACtG,QAAQ,KAAK,QAAQ,IAAI,QAAQ,CAClC,YAEA,QAAQ,GACJ,CACR,EACA,QAAQ,KAAK,OAAO,IAAI,CACvB,kBACE,IAAI,EAAC,QAAQ,gBACF,WAAW,EACtB,KAAK,EAAC,WAAW,EACjB,SAAS,EAAE,EAAE,CACX,qKAAqK,EACrK,QAAQ,KAAK,OAAO,IAAI,mCAAmC,EAC3D,YAAY,IAAI,qCAAqC,CACtD,EACD,QAAQ,EAAE,QAAQ,EAClB,OAAO,EAAE,GAAG,EAAE;oBACZ,IAAI,CAAC,GAAG,CAAC,OAAO,EAAE,WAAW;wBAAE,OAAO;oBAEtC,WAAW,CAAC,IAAI,CAAC,CAAC;oBAClB,KAAK,SAAS,CAAC,SAAS,CAAC,SAAS,CAAC,GAAG,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC;oBAC5D,UAAU,CAAC,GAAG,EAAE,CAAC,WAAW,CAAC,KAAK,CAAC,EAAE,IAAI,CAAC,CAAC;gBAC7C,CAAC,aAEA,QAAQ,CAAC,CAAC,CAAC,CACV,KAAC,SAAS,IACR,SAAS,EAAC,kBAAkB,EAC5B,IAAI,EAAE,EAAE,EACR,WAAW,EAAE,GAAG,EAChB,mBAAmB,SACnB,CACH,CAAC,CAAC,CAAC,CACF,KAAC,QAAQ,IAAC,IAAI,EAAE,EAAE,GAAI,CACvB,EACA,YAAY,IAAI,MAAM,IAChB,CACV,IACG,CACP,CAAC;AACJ,CAAC,CAAC"}
|
package/dist/lib/ui/Select.js
CHANGED
|
@@ -6,7 +6,7 @@ import { cn } from "../util/cn.js";
|
|
|
6
6
|
const Select = SelectPrimitive.Root;
|
|
7
7
|
const SelectGroup = SelectPrimitive.Group;
|
|
8
8
|
const SelectValue = SelectPrimitive.Value;
|
|
9
|
-
const SelectTrigger = React.forwardRef(({ className, children, ...props }, ref) => (_jsxs(SelectPrimitive.Trigger, { ref: ref, className: cn("flex h-10 w-full items-center justify-between rounded-md border border-input bg-background px-3 py-2 text-sm ring-offset-background placeholder:text-muted-foreground focus:outline-hidden focus:ring-
|
|
9
|
+
const SelectTrigger = React.forwardRef(({ className, children, ...props }, ref) => (_jsxs(SelectPrimitive.Trigger, { ref: ref, className: cn("flex h-10 w-full items-center justify-between rounded-md border border-input bg-background px-3 py-2 text-sm ring-offset-background placeholder:text-muted-foreground focus:outline-hidden focus:ring-1 focus:ring-ring focus:ring-offset-1 disabled:cursor-not-allowed disabled:opacity-50", className), ...props, children: [_jsx("span", { className: "truncate", children: children }), _jsx(SelectPrimitive.Icon, { asChild: true, children: _jsx(ChevronDown, { className: "shrink-0 h-4 w-4 opacity-50" }) })] })));
|
|
10
10
|
SelectTrigger.displayName = SelectPrimitive.Trigger.displayName;
|
|
11
11
|
const SelectScrollUpButton = React.forwardRef(({ className, ...props }, ref) => (_jsx(SelectPrimitive.ScrollUpButton, { ref: ref, className: cn("flex cursor-default items-center justify-center py-1", className), ...props, children: _jsx(ChevronUp, { className: "h-4 w-4" }) })));
|
|
12
12
|
SelectScrollUpButton.displayName = SelectPrimitive.ScrollUpButton.displayName;
|
|
@@ -1,10 +1,12 @@
|
|
|
1
1
|
import { type CodeBlockProps } from "./CodeBlock.js";
|
|
2
2
|
type SyntaxHighlightProps = CodeBlockProps & ({
|
|
3
3
|
code: string;
|
|
4
|
+
embedded?: boolean;
|
|
4
5
|
children?: never;
|
|
5
6
|
} | {
|
|
6
7
|
code?: never;
|
|
7
8
|
children: string;
|
|
9
|
+
embedded?: boolean;
|
|
8
10
|
});
|
|
9
|
-
export declare const SyntaxHighlight: import("react").MemoExoticComponent<({ code, children, ...props }: SyntaxHighlightProps) => import("react/jsx-runtime").JSX.Element>;
|
|
11
|
+
export declare const SyntaxHighlight: import("react").MemoExoticComponent<({ code, children, embedded, ...props }: SyntaxHighlightProps) => import("react/jsx-runtime").JSX.Element>;
|
|
10
12
|
export {};
|
|
@@ -4,11 +4,12 @@ import { useZudoku } from "../components/context/ZudokuContext.js";
|
|
|
4
4
|
import { highlight } from "../shiki.js";
|
|
5
5
|
import invariant from "../util/invariant.js";
|
|
6
6
|
import { CodeBlock } from "./CodeBlock.js";
|
|
7
|
-
|
|
7
|
+
import { EmbeddedCodeBlock } from "./EmbeddedCodeBlock.js";
|
|
8
|
+
export const SyntaxHighlight = memo(({ code, children, embedded, ...props }) => {
|
|
8
9
|
const { syntaxHighlighting } = useZudoku().options;
|
|
9
10
|
invariant(syntaxHighlighting?.highlighter, "Highlighter not found");
|
|
10
11
|
const highlightedCode = highlight(syntaxHighlighting.highlighter, code ?? children, props.language, syntaxHighlighting.themes);
|
|
11
|
-
return _jsx(CodeBlock, { ...props, children: highlightedCode });
|
|
12
|
+
return embedded ? (_jsx(EmbeddedCodeBlock, { ...props, children: highlightedCode })) : (_jsx(CodeBlock, { ...props, children: highlightedCode }));
|
|
12
13
|
});
|
|
13
14
|
SyntaxHighlight.displayName = "SyntaxHighlight";
|
|
14
15
|
//# sourceMappingURL=SyntaxHighlight.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SyntaxHighlight.js","sourceRoot":"","sources":["../../../src/lib/ui/SyntaxHighlight.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,OAAO,CAAC;AAC7B,OAAO,EAAE,SAAS,EAAE,MAAM,wCAAwC,CAAC;AACnE,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AACxC,OAAO,SAAS,MAAM,sBAAsB,CAAC;AAC7C,OAAO,EAAE,SAAS,EAAuB,MAAM,gBAAgB,CAAC;
|
|
1
|
+
{"version":3,"file":"SyntaxHighlight.js","sourceRoot":"","sources":["../../../src/lib/ui/SyntaxHighlight.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,OAAO,CAAC;AAC7B,OAAO,EAAE,SAAS,EAAE,MAAM,wCAAwC,CAAC;AACnE,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AACxC,OAAO,SAAS,MAAM,sBAAsB,CAAC;AAC7C,OAAO,EAAE,SAAS,EAAuB,MAAM,gBAAgB,CAAC;AAChE,OAAO,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAC;AAQ3D,MAAM,CAAC,MAAM,eAAe,GAAG,IAAI,CACjC,CAAC,EAAE,IAAI,EAAE,QAAQ,EAAE,QAAQ,EAAE,GAAG,KAAK,EAAwB,EAAE,EAAE;IAC/D,MAAM,EAAE,kBAAkB,EAAE,GAAG,SAAS,EAAE,CAAC,OAAO,CAAC;IAEnD,SAAS,CAAC,kBAAkB,EAAE,WAAW,EAAE,uBAAuB,CAAC,CAAC;IAEpE,MAAM,eAAe,GAAG,SAAS,CAC/B,kBAAkB,CAAC,WAAW,EAC9B,IAAI,IAAI,QAAQ,EAChB,KAAK,CAAC,QAAQ,EACd,kBAAkB,CAAC,MAAM,CAC1B,CAAC;IAEF,OAAO,QAAQ,CAAC,CAAC,CAAC,CAChB,KAAC,iBAAiB,OAAK,KAAK,YAAG,eAAe,GAAqB,CACpE,CAAC,CAAC,CAAC,CACF,KAAC,SAAS,OAAK,KAAK,YAAG,eAAe,GAAa,CACpD,CAAC;AACJ,CAAC,CACF,CAAC;AAEF,eAAe,CAAC,WAAW,GAAG,iBAAiB,CAAC"}
|
|
@@ -2,6 +2,12 @@ import { type MDXComponents } from "mdx/types.js";
|
|
|
2
2
|
export type MdxComponentsType = Readonly<MDXComponents> | null | undefined;
|
|
3
3
|
export declare const MdxComponents: {
|
|
4
4
|
img: ({ node, ...props }: JSX.IntrinsicElements) => import("react/jsx-runtime").JSX.Element;
|
|
5
|
+
Framed: ({ caption, className, size, align, children, }: import("react").PropsWithChildren<{
|
|
6
|
+
caption?: string;
|
|
7
|
+
className?: string;
|
|
8
|
+
size?: "sm" | "md" | "lg" | "xl" | "2xl" | "full";
|
|
9
|
+
align?: "center" | "start" | "end";
|
|
10
|
+
}>) => import("react/jsx-runtime").JSX.Element;
|
|
5
11
|
h1: ({ children, id }: JSX.IntrinsicElements) => import("react/jsx-runtime").JSX.Element;
|
|
6
12
|
h2: ({ children, id }: JSX.IntrinsicElements) => import("react/jsx-runtime").JSX.Element;
|
|
7
13
|
h3: ({ children, id }: JSX.IntrinsicElements) => import("react/jsx-runtime").JSX.Element;
|
|
@@ -18,12 +24,14 @@ export declare const MdxComponents: {
|
|
|
18
24
|
icon?: boolean;
|
|
19
25
|
}) => import("react/jsx-runtime").JSX.Element;
|
|
20
26
|
Stepper: ({ children }: import("react").PropsWithChildren) => import("react/jsx-runtime").JSX.Element;
|
|
21
|
-
SyntaxHighlight: import("react").MemoExoticComponent<({ code, children, ...props }: import("zudoku/ui/CodeBlock.js").CodeBlockProps & ({
|
|
27
|
+
SyntaxHighlight: import("react").MemoExoticComponent<({ code, children, embedded, ...props }: import("zudoku/ui/CodeBlock.js").CodeBlockProps & ({
|
|
22
28
|
code: string;
|
|
29
|
+
embedded?: boolean;
|
|
23
30
|
children?: never;
|
|
24
31
|
} | {
|
|
25
32
|
code?: never;
|
|
26
33
|
children: string;
|
|
34
|
+
embedded?: boolean;
|
|
27
35
|
})) => import("react/jsx-runtime").JSX.Element>;
|
|
28
36
|
tip: (props: JSX.IntrinsicElements) => import("react/jsx-runtime").JSX.Element;
|
|
29
37
|
info: (props: JSX.IntrinsicElements) => import("react/jsx-runtime").JSX.Element;
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import { jsx as _jsx } from "react/jsx-runtime";
|
|
2
2
|
import { CodeBlock } from "zudoku/ui/CodeBlock.js";
|
|
3
3
|
import { AnchorLink } from "../components/AnchorLink.js";
|
|
4
|
+
import { Framed } from "../components/Framed.js";
|
|
4
5
|
import { Heading } from "../components/Heading.js";
|
|
5
6
|
import { InlineCode } from "../components/InlineCode.js";
|
|
6
7
|
import { Button } from "../ui/Button.js";
|
|
@@ -11,10 +12,11 @@ import { cn } from "./cn.js";
|
|
|
11
12
|
export const MdxComponents = {
|
|
12
13
|
img: ({ node, ...props }) => {
|
|
13
14
|
if (/\.(mp4|webm|mov|avi)$/.test(props.src ?? "")) {
|
|
14
|
-
return _jsx("video", { src: props.src, controls: true, playsInline: true, autoPlay: true, loop: true });
|
|
15
|
+
return (_jsx("video", { src: props.src, controls: true, playsInline: true, autoPlay: true, loop: true, className: cn("rounded-lg", props.className) }));
|
|
15
16
|
}
|
|
16
|
-
return _jsx("img", { ...props, className: cn("rounded-
|
|
17
|
+
return _jsx("img", { ...props, className: cn("rounded-lg", props.className) });
|
|
17
18
|
},
|
|
19
|
+
Framed,
|
|
18
20
|
h1: ({ children, id }) => (_jsx(Heading, { level: 1, id: id, children: children })),
|
|
19
21
|
h2: ({ children, id }) => (_jsx(Heading, { level: 2, id: id, children: children })),
|
|
20
22
|
h3: ({ children, id }) => (_jsx(Heading, { level: 3, id: id, children: children })),
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"MdxComponents.js","sourceRoot":"","sources":["../../../src/lib/util/MdxComponents.tsx"],"names":[],"mappings":";AACA,OAAO,EAAE,SAAS,EAAE,MAAM,wBAAwB,CAAC;AACnD,OAAO,EAAE,UAAU,EAAE,MAAM,6BAA6B,CAAC;AACzD,OAAO,EAAE,OAAO,EAAE,MAAM,0BAA0B,CAAC;AACnD,OAAO,EAAE,UAAU,EAAE,MAAM,6BAA6B,CAAC;AACzD,OAAO,EAAE,MAAM,EAAE,MAAM,iBAAiB,CAAC;AACzC,OAAO,EAAE,OAAO,EAAE,MAAM,kBAAkB,CAAC;AAC3C,OAAO,EAAE,OAAO,EAAE,MAAM,kBAAkB,CAAC;AAC3C,OAAO,EAAE,eAAe,EAAE,MAAM,0BAA0B,CAAC;AAC3D,OAAO,EAAE,EAAE,EAAE,MAAM,SAAS,CAAC;AAI7B,MAAM,CAAC,MAAM,aAAa,GAAG;IAC3B,GAAG,EAAE,CAAC,EAAE,IAAI,EAAE,GAAG,KAAK,EAAE,EAAE,EAAE;QAC1B,IAAI,uBAAuB,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,IAAI,EAAE,CAAC,EAAE,CAAC;YAClD,OAAO,
|
|
1
|
+
{"version":3,"file":"MdxComponents.js","sourceRoot":"","sources":["../../../src/lib/util/MdxComponents.tsx"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
export function getOS() {
|
|
2
|
+
const notFound = -1;
|
|
3
|
+
const userAgent = navigator.userAgent.toLowerCase();
|
|
4
|
+
if (userAgent.indexOf("win") !== notFound) {
|
|
5
|
+
return "windows";
|
|
6
|
+
}
|
|
7
|
+
else if (userAgent.indexOf("mac") !== notFound) {
|
|
8
|
+
return "apple";
|
|
9
|
+
}
|
|
10
|
+
else if (userAgent.indexOf("linux") !== notFound) {
|
|
11
|
+
return "linux";
|
|
12
|
+
}
|
|
13
|
+
else if (userAgent.indexOf("x11") !== notFound) {
|
|
14
|
+
return "unix";
|
|
15
|
+
}
|
|
16
|
+
return;
|
|
17
|
+
}
|
|
18
|
+
export function isAppleDevice() {
|
|
19
|
+
return getOS() === "apple";
|
|
20
|
+
}
|
|
21
|
+
//# sourceMappingURL=os.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"os.js","sourceRoot":"","sources":["../../../src/lib/util/os.ts"],"names":[],"mappings":"AAAA,MAAM,UAAU,KAAK;IACnB,MAAM,QAAQ,GAAG,CAAC,CAAC,CAAC;IACpB,MAAM,SAAS,GAAG,SAAS,CAAC,SAAS,CAAC,WAAW,EAAE,CAAC;IACpD,IAAI,SAAS,CAAC,OAAO,CAAC,KAAK,CAAC,KAAK,QAAQ,EAAE,CAAC;QAC1C,OAAO,SAAS,CAAC;IACnB,CAAC;SAAM,IAAI,SAAS,CAAC,OAAO,CAAC,KAAK,CAAC,KAAK,QAAQ,EAAE,CAAC;QACjD,OAAO,OAAO,CAAC;IACjB,CAAC;SAAM,IAAI,SAAS,CAAC,OAAO,CAAC,OAAO,CAAC,KAAK,QAAQ,EAAE,CAAC;QACnD,OAAO,OAAO,CAAC;IACjB,CAAC;SAAM,IAAI,SAAS,CAAC,OAAO,CAAC,KAAK,CAAC,KAAK,QAAQ,EAAE,CAAC;QACjD,OAAO,MAAM,CAAC;IAChB,CAAC;IACD,OAAO;AACT,CAAC;AAED,MAAM,UAAU,aAAa;IAC3B,OAAO,KAAK,EAAE,KAAK,OAAO,CAAC;AAC7B,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export declare const useCopyToClipboard: (timeout?: number) => readonly [boolean, (text: string) => void];
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import { useCallback, useState } from "react";
|
|
2
|
+
export const useCopyToClipboard = (timeout = 2000) => {
|
|
3
|
+
const [isCopied, setIsCopied] = useState(false);
|
|
4
|
+
const copyToClipboard = useCallback((text) => {
|
|
5
|
+
void navigator.clipboard.writeText(text);
|
|
6
|
+
setIsCopied(true);
|
|
7
|
+
setTimeout(() => setIsCopied(false), timeout);
|
|
8
|
+
}, [timeout]);
|
|
9
|
+
return [isCopied, copyToClipboard];
|
|
10
|
+
};
|
|
11
|
+
//# sourceMappingURL=useCopyToClipboard.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"useCopyToClipboard.js","sourceRoot":"","sources":["../../../src/lib/util/useCopyToClipboard.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC;AAE9C,MAAM,CAAC,MAAM,kBAAkB,GAAG,CAAC,OAAO,GAAG,IAAI,EAAE,EAAE;IACnD,MAAM,CAAC,QAAQ,EAAE,WAAW,CAAC,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC;IAEhD,MAAM,eAAe,GAAG,WAAW,CACjC,CAAC,IAAY,EAAE,EAAE;QACf,KAAK,SAAS,CAAC,SAAS,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC;QACzC,WAAW,CAAC,IAAI,CAAC,CAAC;QAElB,UAAU,CAAC,GAAG,EAAE,CAAC,WAAW,CAAC,KAAK,CAAC,EAAE,OAAO,CAAC,CAAC;IAChD,CAAC,EACD,CAAC,OAAO,CAAC,CACV,CAAC;IAEF,OAAO,CAAC,QAAQ,EAAE,eAAe,CAAU,CAAC;AAC9C,CAAC,CAAC"}
|
|
@@ -1,14 +1,14 @@
|
|
|
1
1
|
import { useCallback, useEffect, useRef } from "react";
|
|
2
2
|
import { useLocation } from "react-router";
|
|
3
3
|
import { useViewportAnchor } from "../components/context/ViewportAnchorContext.js";
|
|
4
|
-
import { DATA_ANCHOR_ATTR } from "../components/navigation/
|
|
4
|
+
import { DATA_ANCHOR_ATTR } from "../components/navigation/NavigationItem.js";
|
|
5
5
|
import { scrollIntoViewIfNeeded } from "./scrollIntoViewIfNeeded.js";
|
|
6
6
|
export const useScrollToHash = () => {
|
|
7
7
|
const { setActiveAnchor } = useViewportAnchor();
|
|
8
8
|
const scrollToHash = useCallback((hash) => {
|
|
9
9
|
const cleanHash = hash.replace(/^#/, "");
|
|
10
|
-
// Operation list items might have subdivisions that the
|
|
11
|
-
// The subdivisions are separated by a slash so we need to remove everything before the slash to get the
|
|
10
|
+
// Operation list items might have subdivisions that the navigation doesn't show.
|
|
11
|
+
// The subdivisions are separated by a slash so we need to remove everything before the slash to get the navigation correct item.
|
|
12
12
|
const linkHash = cleanHash.split("/").at(0);
|
|
13
13
|
const element = document.getElementById(decodeURIComponent(cleanHash));
|
|
14
14
|
const link = document.querySelector(`[${DATA_ANCHOR_ATTR}="${linkHash}"]`);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useScrollToAnchor.js","sourceRoot":"","sources":["../../../src/lib/util/useScrollToAnchor.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,SAAS,EAAE,MAAM,EAAE,MAAM,OAAO,CAAC;AACvD,OAAO,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC;AAC3C,OAAO,EAAE,iBAAiB,EAAE,MAAM,gDAAgD,CAAC;AACnF,OAAO,EAAE,gBAAgB,EAAE,MAAM,
|
|
1
|
+
{"version":3,"file":"useScrollToAnchor.js","sourceRoot":"","sources":["../../../src/lib/util/useScrollToAnchor.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,SAAS,EAAE,MAAM,EAAE,MAAM,OAAO,CAAC;AACvD,OAAO,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC;AAC3C,OAAO,EAAE,iBAAiB,EAAE,MAAM,gDAAgD,CAAC;AACnF,OAAO,EAAE,gBAAgB,EAAE,MAAM,4CAA4C,CAAC;AAC9E,OAAO,EAAE,sBAAsB,EAAE,MAAM,6BAA6B,CAAC;AAErE,MAAM,CAAC,MAAM,eAAe,GAAG,GAAG,EAAE;IAClC,MAAM,EAAE,eAAe,EAAE,GAAG,iBAAiB,EAAE,CAAC;IAEhD,MAAM,YAAY,GAAG,WAAW,CAC9B,CAAC,IAAY,EAAE,EAAE;QACf,MAAM,SAAS,GAAG,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;QAEzC,iFAAiF;QACjF,iIAAiI;QACjI,MAAM,QAAQ,GAAG,SAAS,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC,CAAC,CAAE,CAAC;QAC7C,MAAM,OAAO,GAAG,QAAQ,CAAC,cAAc,CAAC,kBAAkB,CAAC,SAAS,CAAC,CAAC,CAAC;QAEvE,MAAM,IAAI,GAAG,QAAQ,CAAC,aAAa,CACjC,IAAI,gBAAgB,KAAK,QAAQ,IAAI,CACtC,CAAC;QAEF,IAAI,OAAO,EAAE,CAAC;YACZ,OAAO,CAAC,cAAc,EAAE,CAAC;YACzB,sBAAsB,CAAC,IAAI,CAAC,CAAC;YAC7B,sDAAsD;YACtD,2DAA2D;YAC3D,mBAAmB,CAAC,GAAG,EAAE,CAAC,eAAe,CAAC,QAAQ,CAAC,CAAC,CAAC;YACrD,OAAO,IAAI,CAAC;QACd,CAAC;QAED,uBAAuB;QACvB,OAAO,KAAK,CAAC;IACf,CAAC,EACD,CAAC,eAAe,CAAC,CAClB,CAAC;IAEF,OAAO,YAAY,CAAC;AACtB,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,iBAAiB,GAAG,GAAG,EAAE;IACpC,MAAM,QAAQ,GAAG,WAAW,EAAE,CAAC;IAC/B,MAAM,YAAY,GAAG,eAAe,EAAE,CAAC;IACvC,MAAM,eAAe,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC;IAEtC,SAAS,CAAC,GAAG,EAAE;QACb,IAAI,CAAC,QAAQ,CAAC,IAAI,IAAI,CAAC,eAAe,CAAC,OAAO;YAAE,OAAO;QAEvD,YAAY,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;IAC9B,CAAC,EAAE,CAAC,QAAQ,CAAC,IAAI,EAAE,YAAY,CAAC,CAAC,CAAC;IAElC,SAAS,CAAC,GAAG,EAAE;QACb,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC;YACnB,eAAe,CAAC,OAAO,GAAG,IAAI,CAAC;YAC/B,OAAO;QACT,CAAC;QAED,MAAM,QAAQ,GAAG,IAAI,gBAAgB,CAAC,CAAC,CAAC,EAAE,GAAG,EAAE,EAAE;YAC/C,IAAI,CAAC,YAAY,CAAC,QAAQ,CAAC,IAAI,CAAC;gBAAE,OAAO;YACzC,eAAe,CAAC,OAAO,GAAG,IAAI,CAAC;YAC/B,GAAG,CAAC,UAAU,EAAE,CAAC;QACnB,CAAC,CAAC,CAAC;QAEH,QAAQ,CAAC,OAAO,CAAC,QAAQ,CAAC,IAAI,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC,CAAC;QAEpE,OAAO,GAAG,EAAE,CAAC,QAAQ,CAAC,UAAU,EAAE,CAAC;IACrC,CAAC,EAAE,CAAC,QAAQ,CAAC,IAAI,EAAE,YAAY,CAAC,CAAC,CAAC;AACpC,CAAC,CAAC"}
|
|
@@ -10,7 +10,7 @@ export declare class SchemaManager {
|
|
|
10
10
|
private storeDir;
|
|
11
11
|
private processors;
|
|
12
12
|
private processedSchemas;
|
|
13
|
-
private
|
|
13
|
+
private fileToPath;
|
|
14
14
|
config: LoadedConfig;
|
|
15
15
|
trackedFiles: Set<string>;
|
|
16
16
|
schemaMap: Map<string, {
|
|
@@ -22,15 +22,15 @@ export declare class SchemaManager {
|
|
|
22
22
|
config: LoadedConfig;
|
|
23
23
|
processors: Processor[];
|
|
24
24
|
});
|
|
25
|
-
private
|
|
25
|
+
private getPathForFile;
|
|
26
26
|
processSchema: (input: string) => Promise<{
|
|
27
27
|
schema: OpenAPIDocument;
|
|
28
28
|
version: string;
|
|
29
29
|
inputPath: string;
|
|
30
30
|
} | undefined>;
|
|
31
31
|
processAllSchemas: () => Promise<void>;
|
|
32
|
-
getLatestSchema: (
|
|
33
|
-
|
|
32
|
+
getLatestSchema: (path: string) => ProcessedSchema | undefined;
|
|
33
|
+
getSchemasForPath: (path: string) => ProcessedSchema[] | undefined;
|
|
34
34
|
private validateSchema;
|
|
35
35
|
}
|
|
36
36
|
export {};
|
|
@@ -11,7 +11,7 @@ export class SchemaManager {
|
|
|
11
11
|
storeDir;
|
|
12
12
|
processors;
|
|
13
13
|
processedSchemas = {};
|
|
14
|
-
|
|
14
|
+
fileToPath = new Map();
|
|
15
15
|
config;
|
|
16
16
|
trackedFiles = new Set();
|
|
17
17
|
schemaMap = new Map();
|
|
@@ -38,38 +38,42 @@ export class SchemaManager {
|
|
|
38
38
|
...processors,
|
|
39
39
|
];
|
|
40
40
|
}
|
|
41
|
-
|
|
41
|
+
getPathForFile = (input) => {
|
|
42
42
|
const filePath = path.resolve(this.config.__meta.rootDir, input);
|
|
43
|
-
if (this.
|
|
44
|
-
return this.
|
|
43
|
+
if (this.fileToPath.has(filePath)) {
|
|
44
|
+
return this.fileToPath.get(filePath);
|
|
45
45
|
}
|
|
46
46
|
const apis = ensureArray(this.config.apis ?? []);
|
|
47
47
|
for (const apiConfig of apis) {
|
|
48
|
-
if (!apiConfig || apiConfig.type !== "file" || !apiConfig.
|
|
48
|
+
if (!apiConfig || apiConfig.type !== "file" || !apiConfig.path)
|
|
49
49
|
continue;
|
|
50
50
|
const inputs = ensureArray(apiConfig.input).map((i) => path.resolve(this.config.__meta.rootDir, i));
|
|
51
51
|
if (inputs.includes(filePath)) {
|
|
52
|
-
this.
|
|
53
|
-
return apiConfig.
|
|
52
|
+
this.fileToPath.set(filePath, apiConfig.path);
|
|
53
|
+
return apiConfig.path;
|
|
54
54
|
}
|
|
55
55
|
}
|
|
56
56
|
};
|
|
57
57
|
processSchema = async (input) => {
|
|
58
58
|
const filePath = path.resolve(this.config.__meta.rootDir, input);
|
|
59
|
-
const
|
|
60
|
-
if (!
|
|
59
|
+
const pathId = this.getPathForFile(filePath);
|
|
60
|
+
if (!pathId) {
|
|
61
61
|
// eslint-disable-next-line no-console
|
|
62
|
-
console.warn(`No
|
|
62
|
+
console.warn(`No path found for file ${input}`);
|
|
63
63
|
return;
|
|
64
64
|
}
|
|
65
65
|
const parser = new $RefParser();
|
|
66
|
-
const schema = await parser.bundle(filePath
|
|
66
|
+
const schema = await parser.bundle(filePath, {
|
|
67
|
+
dereference: { preservedProperties: ["description", "summary"] },
|
|
68
|
+
});
|
|
67
69
|
parser.$refs.paths().forEach((file) => this.trackedFiles.add(file));
|
|
68
70
|
const validatedSchema = await this.validateSchema(schema, filePath);
|
|
69
71
|
const processedSchema = await this.processors.reduce(async (schema, processor) => processor({
|
|
70
72
|
schema: await schema,
|
|
71
73
|
file: filePath,
|
|
72
|
-
dereference: (schema) => new $RefParser().dereference(schema
|
|
74
|
+
dereference: (schema) => new $RefParser().dereference(schema, {
|
|
75
|
+
dereference: { preservedProperties: ["description", "summary"] },
|
|
76
|
+
}),
|
|
73
77
|
}), Promise.resolve(validatedSchema));
|
|
74
78
|
const processedTime = Date.now();
|
|
75
79
|
const code = await generateCode(processedSchema, filePath);
|
|
@@ -84,30 +88,30 @@ export class SchemaManager {
|
|
|
84
88
|
version: processedSchema.info.version || FALLBACK_VERSION,
|
|
85
89
|
inputPath: filePath,
|
|
86
90
|
};
|
|
87
|
-
const schemas = this.processedSchemas[
|
|
91
|
+
const schemas = this.processedSchemas[pathId];
|
|
88
92
|
if (!schemas) {
|
|
89
|
-
throw new Error(`No schemas found for navigation ID ${
|
|
93
|
+
throw new Error(`No schemas found for navigation ID ${pathId}.`);
|
|
90
94
|
}
|
|
91
95
|
const index = schemas.findIndex((s) => s.inputPath === filePath);
|
|
92
96
|
if (index > -1) {
|
|
93
97
|
schemas[index] = processed;
|
|
94
98
|
}
|
|
95
|
-
this.
|
|
99
|
+
this.fileToPath.set(filePath, pathId);
|
|
96
100
|
return processed;
|
|
97
101
|
};
|
|
98
102
|
processAllSchemas = async () => {
|
|
99
103
|
this.schemaMap.clear();
|
|
100
104
|
this.trackedFiles.clear();
|
|
101
|
-
this.
|
|
105
|
+
this.fileToPath.clear();
|
|
102
106
|
this.processedSchemas = {};
|
|
103
107
|
const apis = ensureArray(this.config.apis ?? []);
|
|
104
108
|
for (const apiConfig of apis) {
|
|
105
|
-
if (apiConfig.type !== "file" || !apiConfig.
|
|
109
|
+
if (apiConfig.type !== "file" || !apiConfig.path)
|
|
106
110
|
continue;
|
|
107
111
|
const inputs = ensureArray(apiConfig.input);
|
|
108
112
|
if (inputs.length === 0)
|
|
109
113
|
throw new Error("No schema found");
|
|
110
|
-
this.processedSchemas[apiConfig.
|
|
114
|
+
this.processedSchemas[apiConfig.path] = inputs.map((input) => ({
|
|
111
115
|
schema: {},
|
|
112
116
|
version: "",
|
|
113
117
|
inputPath: path.resolve(this.config.__meta.rootDir, input),
|
|
@@ -115,12 +119,12 @@ export class SchemaManager {
|
|
|
115
119
|
const results = await Promise.allSettled(inputs.map((input) => this.processSchema(input)));
|
|
116
120
|
const errors = results.flatMap((r) => r.status === "rejected" ? r.reason : []);
|
|
117
121
|
if (errors.length > 0) {
|
|
118
|
-
throw new Error(`Failed to process schemas for ${apiConfig.
|
|
122
|
+
throw new Error(`Failed to process schemas for ${apiConfig.path}: ${errors.join(", ")}`);
|
|
119
123
|
}
|
|
120
124
|
}
|
|
121
125
|
};
|
|
122
|
-
getLatestSchema = (
|
|
123
|
-
|
|
126
|
+
getLatestSchema = (path) => this.processedSchemas[path]?.at(0);
|
|
127
|
+
getSchemasForPath = (path) => this.processedSchemas[path];
|
|
124
128
|
validateSchema = async (schema, filePath) => {
|
|
125
129
|
const validated = await validate(schema);
|
|
126
130
|
if (validated.errors?.length) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SchemaManager.js","sourceRoot":"","sources":["../../../src/vite/api/SchemaManager.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,UAAU,GAEX,MAAM,qCAAqC,CAAC;AAC7C,OAAO,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,wBAAwB,CAAC;AAC3D,OAAO,EAAE,KAAK,IAAI,UAAU,EAAE,MAAM,aAAa,CAAC;AAClD,OAAO,EAAE,MAAM,kBAAkB,CAAC;AAClC,OAAO,IAAI,MAAM,WAAW,CAAC;AAC7B,OAAO,MAAM,MAAM,YAAY,CAAC;AAIhC,OAAO,EAAE,WAAW,EAAE,MAAM,+BAA+B,CAAC;AAC5D,OAAO,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;AAQnD,MAAM,gBAAgB,GAAG,SAAS,CAAC;AAEnC,MAAM,OAAO,aAAa;IAChB,QAAQ,CAAS;IACjB,UAAU,CAAc;IACxB,gBAAgB,GAAsC,EAAE,CAAC;IACzD,
|
|
1
|
+
{"version":3,"file":"SchemaManager.js","sourceRoot":"","sources":["../../../src/vite/api/SchemaManager.ts"],"names":[],"mappings":"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"}
|