zudoku 0.0.0-f90a252 → 0.0.0-f9211eb
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 +1 -1
- package/cli.js +3 -0
- package/dist/app/entry.client.d.ts +5 -0
- package/dist/app/entry.client.js +1 -0
- package/dist/app/entry.client.js.map +1 -1
- package/dist/app/entry.server.d.ts +8 -6
- package/dist/app/entry.server.js +12 -8
- package/dist/app/entry.server.js.map +1 -1
- package/dist/app/main.js +3 -1
- package/dist/app/main.js.map +1 -1
- package/dist/app/tailwind.js +20 -0
- package/dist/app/tailwind.js.map +1 -1
- package/dist/cli/build/handler.d.ts +1 -3
- package/dist/cli/build/handler.js +9 -1
- package/dist/cli/build/handler.js.map +1 -1
- package/dist/cli/cli.js +5 -0
- package/dist/cli/cli.js.map +1 -1
- package/dist/cli/cmds/build.d.ts +11 -3
- package/dist/cli/cmds/build.js +20 -13
- package/dist/cli/cmds/build.js.map +1 -1
- package/dist/cli/cmds/dev.d.ts +1 -1
- package/dist/cli/cmds/dev.js.map +1 -1
- package/dist/cli/cmds/preview.d.ts +16 -0
- package/dist/cli/cmds/preview.js +25 -0
- package/dist/cli/cmds/preview.js.map +1 -0
- package/dist/cli/dev/handler.js +2 -1
- package/dist/cli/dev/handler.js.map +1 -1
- package/dist/cli/preview/handler.d.ts +3 -0
- package/dist/cli/preview/handler.js +35 -0
- package/dist/cli/preview/handler.js.map +1 -0
- package/dist/config/common.d.ts +5 -3
- package/dist/config/config.d.ts +15 -15
- package/dist/config/loader.d.ts +6 -6
- package/dist/config/loader.js +20 -28
- package/dist/config/loader.js.map +1 -1
- package/dist/config/validators/InputSidebarSchema.d.ts +15 -15
- package/dist/config/validators/InputSidebarSchema.js +10 -1
- package/dist/config/validators/InputSidebarSchema.js.map +1 -1
- package/dist/config/validators/common.d.ts +2993 -599
- package/dist/config/validators/common.js +107 -12
- package/dist/config/validators/common.js.map +1 -1
- package/dist/config/validators/icon-types.d.ts +1 -1
- package/dist/config/validators/validate.d.ts +1127 -284
- package/dist/index.d.ts +1 -0
- package/dist/index.js +1 -0
- package/dist/index.js.map +1 -1
- package/dist/lib/authentication/authentication.d.ts +1 -0
- package/dist/lib/authentication/hook.d.ts +1 -0
- package/dist/lib/authentication/hook.js +11 -1
- package/dist/lib/authentication/hook.js.map +1 -1
- package/dist/lib/authentication/providers/auth0.d.ts +2 -2
- package/dist/lib/authentication/providers/auth0.js +1 -0
- package/dist/lib/authentication/providers/auth0.js.map +1 -1
- package/dist/lib/authentication/providers/clerk.d.ts +2 -2
- package/dist/lib/authentication/providers/clerk.js +25 -6
- package/dist/lib/authentication/providers/clerk.js.map +1 -1
- package/dist/lib/authentication/providers/openid.d.ts +5 -3
- package/dist/lib/authentication/providers/openid.js +24 -10
- package/dist/lib/authentication/providers/openid.js.map +1 -1
- package/dist/lib/authentication/providers/supabase.d.ts +4 -0
- package/dist/lib/authentication/providers/supabase.js +117 -0
- package/dist/lib/authentication/providers/supabase.js.map +1 -0
- package/dist/lib/authentication/state.d.ts +0 -26
- package/dist/lib/authentication/state.js +9 -18
- package/dist/lib/authentication/state.js.map +1 -1
- package/dist/lib/components/AnchorLink.d.ts +2 -2
- package/dist/lib/components/AnchorLink.js +5 -4
- package/dist/lib/components/AnchorLink.js.map +1 -1
- package/dist/lib/components/Banner.js +1 -1
- package/dist/lib/components/Banner.js.map +1 -1
- package/dist/lib/components/Bootstrap.d.ts +2 -1
- package/dist/lib/components/Bootstrap.js +3 -2
- package/dist/lib/components/Bootstrap.js.map +1 -1
- package/dist/lib/components/Footer.d.ts +1 -0
- package/dist/lib/components/Footer.js +32 -0
- package/dist/lib/components/Footer.js.map +1 -0
- package/dist/lib/components/Header.js +4 -4
- package/dist/lib/components/Header.js.map +1 -1
- package/dist/lib/components/Heading.d.ts +2 -2
- package/dist/lib/components/InlineCode.d.ts +2 -1
- package/dist/lib/components/InlineCode.js +2 -9
- package/dist/lib/components/InlineCode.js.map +1 -1
- package/dist/lib/components/Layout.js +8 -29
- package/dist/lib/components/Layout.js.map +1 -1
- package/dist/lib/components/Main.d.ts +2 -0
- package/dist/lib/components/Main.js +17 -0
- package/dist/lib/components/Main.js.map +1 -0
- package/dist/lib/components/MobileTopNavigation.js +6 -3
- package/dist/lib/components/MobileTopNavigation.js.map +1 -1
- package/dist/lib/components/Pagination.d.ts +11 -0
- package/dist/lib/components/Pagination.js +10 -0
- package/dist/lib/components/Pagination.js.map +1 -0
- package/dist/lib/components/ThemeSwitch.js +1 -1
- package/dist/lib/components/ThemeSwitch.js.map +1 -1
- package/dist/lib/components/TopNavigation.d.ts +3 -2
- package/dist/lib/components/TopNavigation.js +28 -14
- package/dist/lib/components/TopNavigation.js.map +1 -1
- package/dist/lib/components/Zudoku.d.ts +1 -1
- package/dist/lib/components/Zudoku.js +15 -8
- package/dist/lib/components/Zudoku.js.map +1 -1
- package/dist/lib/components/cache.d.ts +7 -0
- package/dist/lib/components/cache.js +7 -0
- package/dist/lib/components/cache.js.map +1 -1
- package/dist/lib/components/context/BypassProtectedRoutesContext.d.ts +1 -0
- package/dist/lib/components/context/BypassProtectedRoutesContext.js +3 -0
- package/dist/lib/components/context/BypassProtectedRoutesContext.js.map +1 -0
- package/dist/lib/components/context/RouterEventsEmitter.d.ts +1 -0
- package/dist/lib/components/context/RouterEventsEmitter.js +17 -0
- package/dist/lib/components/context/RouterEventsEmitter.js.map +1 -0
- package/dist/lib/components/context/ViewportAnchorContext.d.ts +2 -4
- package/dist/lib/components/context/ViewportAnchorContext.js +5 -10
- package/dist/lib/components/context/ViewportAnchorContext.js.map +1 -1
- package/dist/lib/components/context/ZudokuContext.d.ts +2 -2
- package/dist/lib/components/context/ZudokuContext.js +13 -7
- package/dist/lib/components/context/ZudokuContext.js.map +1 -1
- package/dist/lib/components/index.d.ts +7 -3
- package/dist/lib/components/index.js +2 -0
- package/dist/lib/components/index.js.map +1 -1
- package/dist/lib/components/navigation/PoweredByZudoku.d.ts +3 -0
- package/dist/lib/components/navigation/PoweredByZudoku.js +6 -0
- package/dist/lib/components/navigation/PoweredByZudoku.js.map +1 -0
- package/dist/lib/components/navigation/Sidebar.d.ts +3 -1
- package/dist/lib/components/navigation/Sidebar.js +1 -12
- package/dist/lib/components/navigation/Sidebar.js.map +1 -1
- package/dist/lib/components/navigation/SidebarBadge.d.ts +2 -0
- package/dist/lib/components/navigation/SidebarBadge.js +3 -1
- package/dist/lib/components/navigation/SidebarBadge.js.map +1 -1
- package/dist/lib/components/navigation/SidebarCategory.d.ts +2 -2
- package/dist/lib/components/navigation/SidebarCategory.js +10 -6
- package/dist/lib/components/navigation/SidebarCategory.js.map +1 -1
- package/dist/lib/components/navigation/SidebarItem.d.ts +1 -0
- package/dist/lib/components/navigation/SidebarItem.js +17 -11
- package/dist/lib/components/navigation/SidebarItem.js.map +1 -1
- package/dist/lib/components/navigation/SidebarWrapper.d.ts +7 -6
- package/dist/lib/components/navigation/SidebarWrapper.js +18 -3
- package/dist/lib/components/navigation/SidebarWrapper.js.map +1 -1
- package/dist/lib/{plugins/markdown → components/navigation}/Toc.js +5 -7
- package/dist/lib/components/navigation/Toc.js.map +1 -0
- package/dist/lib/components/navigation/ZudokuLogo.d.ts +6 -0
- package/dist/lib/components/navigation/ZudokuLogo.js +5 -0
- package/dist/lib/components/navigation/ZudokuLogo.js.map +1 -0
- package/dist/lib/core/RouteGuard.d.ts +2 -1
- package/dist/lib/core/RouteGuard.js +31 -11
- package/dist/lib/core/RouteGuard.js.map +1 -1
- package/dist/lib/core/ZudokuContext.d.ts +32 -6
- package/dist/lib/core/ZudokuContext.js +29 -6
- package/dist/lib/core/ZudokuContext.js.map +1 -1
- package/dist/lib/core/plugins.d.ts +15 -7
- package/dist/lib/core/plugins.js +1 -0
- package/dist/lib/core/plugins.js.map +1 -1
- package/dist/lib/errors/ErrorAlert.js +6 -1
- package/dist/lib/errors/ErrorAlert.js.map +1 -1
- package/dist/lib/hooks/index.d.ts +3 -0
- package/dist/lib/hooks/index.js +5 -0
- package/dist/lib/hooks/index.js.map +1 -0
- package/dist/lib/hooks/useEvent.d.ts +11 -0
- package/dist/lib/hooks/useEvent.js +19 -0
- package/dist/lib/hooks/useEvent.js.map +1 -0
- package/dist/lib/hooks/useEvent.test.js +100 -0
- package/dist/lib/hooks/useEvent.test.js.map +1 -0
- package/dist/lib/oas/graphql/index.d.ts +17 -4
- package/dist/lib/oas/graphql/index.js +151 -39
- package/dist/lib/oas/graphql/index.js.map +1 -1
- package/dist/lib/oas/parser/dereference/index.js +2 -0
- package/dist/lib/oas/parser/dereference/index.js.map +1 -1
- package/dist/lib/oas/parser/index.d.ts +5 -3
- package/dist/lib/oas/parser/index.js +0 -22
- package/dist/lib/oas/parser/index.js.map +1 -1
- package/dist/lib/plugins/api-catalog/Catalog.d.ts +4 -2
- package/dist/lib/plugins/api-catalog/Catalog.js +16 -26
- package/dist/lib/plugins/api-catalog/Catalog.js.map +1 -1
- package/dist/lib/plugins/api-catalog/index.d.ts +1 -0
- package/dist/lib/plugins/api-catalog/index.js +39 -8
- package/dist/lib/plugins/api-catalog/index.js.map +1 -1
- package/dist/lib/plugins/api-keys/CreateApiKey.js +7 -3
- package/dist/lib/plugins/api-keys/CreateApiKey.js.map +1 -1
- package/dist/lib/plugins/markdown/MdxPage.d.ts +1 -1
- package/dist/lib/plugins/markdown/MdxPage.js +3 -9
- package/dist/lib/plugins/markdown/MdxPage.js.map +1 -1
- package/dist/lib/plugins/openapi/ColorizedParam.js +1 -1
- package/dist/lib/plugins/openapi/ColorizedParam.js.map +1 -1
- package/dist/lib/plugins/openapi/Endpoint.js +1 -1
- package/dist/lib/plugins/openapi/Endpoint.js.map +1 -1
- package/dist/lib/plugins/openapi/OperationList.d.ts +2 -2
- package/dist/lib/plugins/openapi/OperationList.js +63 -18
- package/dist/lib/plugins/openapi/OperationList.js.map +1 -1
- package/dist/lib/plugins/openapi/OperationListItem.d.ts +1 -1
- package/dist/lib/plugins/openapi/OperationListItem.js +7 -12
- package/dist/lib/plugins/openapi/OperationListItem.js.map +1 -1
- package/dist/lib/plugins/openapi/ParamInfos.d.ts +6 -0
- package/dist/lib/plugins/openapi/ParamInfos.js +42 -0
- package/dist/lib/plugins/openapi/ParamInfos.js.map +1 -0
- package/dist/lib/plugins/openapi/ParameterList.d.ts +2 -1
- package/dist/lib/plugins/openapi/ParameterList.js +3 -2
- package/dist/lib/plugins/openapi/ParameterList.js.map +1 -1
- package/dist/lib/plugins/openapi/ParameterListItem.js +9 -4
- package/dist/lib/plugins/openapi/ParameterListItem.js.map +1 -1
- package/dist/lib/plugins/openapi/PlaygroundDialogWrapper.js +3 -1
- package/dist/lib/plugins/openapi/PlaygroundDialogWrapper.js.map +1 -1
- package/dist/lib/plugins/openapi/SchemaList.d.ts +1 -0
- package/dist/lib/plugins/openapi/SchemaList.js +52 -0
- package/dist/lib/plugins/openapi/SchemaList.js.map +1 -0
- package/dist/lib/plugins/openapi/Sidecar.js +39 -10
- package/dist/lib/plugins/openapi/Sidecar.js.map +1 -1
- package/dist/lib/plugins/openapi/SidecarExamples.js +2 -2
- package/dist/lib/plugins/openapi/SidecarExamples.js.map +1 -1
- package/dist/lib/plugins/openapi/SimpleSelect.js +1 -1
- package/dist/lib/plugins/openapi/SimpleSelect.js.map +1 -1
- package/dist/lib/plugins/openapi/client/GraphQLClient.d.ts +1 -1
- package/dist/lib/plugins/openapi/client/GraphQLClient.js +1 -1
- package/dist/lib/plugins/openapi/client/GraphQLClient.js.map +1 -1
- package/dist/lib/plugins/openapi/client/useCreateQuery.d.ts +6 -2
- package/dist/lib/plugins/openapi/client/useCreateQuery.js +6 -5
- package/dist/lib/plugins/openapi/client/useCreateQuery.js.map +1 -1
- package/dist/lib/plugins/openapi/components/EnumValues.d.ts +5 -0
- package/dist/lib/plugins/openapi/components/EnumValues.js +15 -0
- package/dist/lib/plugins/openapi/components/EnumValues.js.map +1 -0
- package/dist/lib/plugins/openapi/components/SelectOnClick.d.ts +5 -0
- package/dist/lib/plugins/openapi/components/SelectOnClick.js +16 -0
- package/dist/lib/plugins/openapi/components/SelectOnClick.js.map +1 -0
- package/dist/lib/plugins/openapi/graphql/gql.d.ts +9 -5
- package/dist/lib/plugins/openapi/graphql/gql.js +5 -15
- package/dist/lib/plugins/openapi/graphql/gql.js.map +1 -1
- package/dist/lib/plugins/openapi/graphql/graphql.d.ts +108 -55
- package/dist/lib/plugins/openapi/graphql/graphql.js +59 -34
- package/dist/lib/plugins/openapi/graphql/graphql.js.map +1 -1
- package/dist/lib/plugins/openapi/index.d.ts +6 -11
- package/dist/lib/plugins/openapi/index.js +41 -60
- package/dist/lib/plugins/openapi/index.js.map +1 -1
- package/dist/lib/plugins/openapi/interfaces.d.ts +36 -10
- package/dist/lib/plugins/openapi/playground/ExamplesDropdown.d.ts +2 -2
- package/dist/lib/plugins/openapi/playground/ExamplesDropdown.js +1 -5
- package/dist/lib/plugins/openapi/playground/ExamplesDropdown.js.map +1 -1
- package/dist/lib/plugins/openapi/playground/Headers.js +1 -1
- package/dist/lib/plugins/openapi/playground/Headers.js.map +1 -1
- package/dist/lib/plugins/openapi/playground/IdentityDialog.d.ts +11 -0
- package/dist/lib/plugins/openapi/playground/IdentityDialog.js +14 -0
- package/dist/lib/plugins/openapi/playground/IdentityDialog.js.map +1 -0
- package/dist/lib/plugins/openapi/playground/IdentitySelector.d.ts +7 -0
- package/dist/lib/plugins/openapi/playground/IdentitySelector.js +10 -0
- package/dist/lib/plugins/openapi/playground/IdentitySelector.js.map +1 -0
- package/dist/lib/plugins/openapi/playground/PathParams.d.ts +3 -2
- package/dist/lib/plugins/openapi/playground/PathParams.js +3 -2
- package/dist/lib/plugins/openapi/playground/PathParams.js.map +1 -1
- package/dist/lib/plugins/openapi/playground/Playground.d.ts +13 -2
- package/dist/lib/plugins/openapi/playground/Playground.js +81 -27
- package/dist/lib/plugins/openapi/playground/Playground.js.map +1 -1
- package/dist/lib/plugins/openapi/playground/QueryParams.js +1 -1
- package/dist/lib/plugins/openapi/playground/QueryParams.js.map +1 -1
- package/dist/lib/plugins/openapi/playground/RequestLoginDialog.d.ts +7 -0
- package/dist/lib/plugins/openapi/playground/RequestLoginDialog.js +8 -0
- package/dist/lib/plugins/openapi/playground/RequestLoginDialog.js.map +1 -0
- package/dist/lib/plugins/openapi/playground/rememberedIdentity.d.ts +17 -0
- package/dist/lib/plugins/openapi/playground/rememberedIdentity.js +11 -0
- package/dist/lib/plugins/openapi/playground/rememberedIdentity.js.map +1 -0
- package/dist/lib/plugins/openapi/playground/result-panel/ResponseTab.js +20 -14
- package/dist/lib/plugins/openapi/playground/result-panel/ResponseTab.js.map +1 -1
- package/dist/lib/plugins/openapi/playground/result-panel/ResultPanel.d.ts +6 -4
- package/dist/lib/plugins/openapi/playground/result-panel/ResultPanel.js +4 -3
- package/dist/lib/plugins/openapi/playground/result-panel/ResultPanel.js.map +1 -1
- package/dist/lib/plugins/openapi/schema/LogicalGroup/LogicalGroup.d.ts +1 -2
- package/dist/lib/plugins/openapi/schema/LogicalGroup/LogicalGroup.js +2 -2
- package/dist/lib/plugins/openapi/schema/LogicalGroup/LogicalGroup.js.map +1 -1
- package/dist/lib/plugins/openapi/schema/LogicalGroup/LogicalGroupConnector.d.ts +2 -1
- package/dist/lib/plugins/openapi/schema/LogicalGroup/LogicalGroupConnector.js +2 -2
- package/dist/lib/plugins/openapi/schema/LogicalGroup/LogicalGroupConnector.js.map +1 -1
- package/dist/lib/plugins/openapi/schema/LogicalGroup/LogicalGroupItem.d.ts +0 -1
- package/dist/lib/plugins/openapi/schema/LogicalGroup/LogicalGroupItem.js +1 -1
- package/dist/lib/plugins/openapi/schema/LogicalGroup/LogicalGroupItem.js.map +1 -1
- package/dist/lib/plugins/openapi/schema/SchemaExampleAndDefault.d.ts +4 -0
- package/dist/lib/plugins/openapi/schema/SchemaExampleAndDefault.js +12 -0
- package/dist/lib/plugins/openapi/schema/SchemaExampleAndDefault.js.map +1 -0
- package/dist/lib/plugins/openapi/schema/SchemaPropertyItem.d.ts +2 -4
- package/dist/lib/plugins/openapi/schema/SchemaPropertyItem.js +18 -13
- package/dist/lib/plugins/openapi/schema/SchemaPropertyItem.js.map +1 -1
- package/dist/lib/plugins/openapi/schema/SchemaView.d.ts +1 -2
- package/dist/lib/plugins/openapi/schema/SchemaView.js +33 -48
- package/dist/lib/plugins/openapi/schema/SchemaView.js.map +1 -1
- package/dist/lib/plugins/openapi/schema/utils.d.ts +1 -0
- package/dist/lib/plugins/openapi/schema/utils.js +3 -1
- package/dist/lib/plugins/openapi/schema/utils.js.map +1 -1
- package/dist/lib/plugins/openapi/state.d.ts +25 -0
- package/dist/lib/plugins/openapi/state.js +18 -0
- package/dist/lib/plugins/openapi/state.js.map +1 -0
- package/dist/lib/plugins/openapi/util/createSidebarCategory.js +5 -7
- package/dist/lib/plugins/openapi/util/createSidebarCategory.js.map +1 -1
- package/dist/lib/plugins/openapi/util/getRoutes.js +9 -3
- package/dist/lib/plugins/openapi/util/getRoutes.js.map +1 -1
- package/dist/lib/plugins/search-pagefind/PagefindSearch.d.ts +6 -0
- package/dist/lib/plugins/search-pagefind/PagefindSearch.js +80 -0
- package/dist/lib/plugins/search-pagefind/PagefindSearch.js.map +1 -0
- package/dist/lib/plugins/search-pagefind/ResultList.d.ts +8 -0
- package/dist/lib/plugins/search-pagefind/ResultList.js +32 -0
- package/dist/lib/plugins/search-pagefind/ResultList.js.map +1 -0
- package/dist/lib/plugins/search-pagefind/get-results.d.ts +10 -0
- package/dist/lib/plugins/search-pagefind/get-results.js +42 -0
- package/dist/lib/plugins/search-pagefind/get-results.js.map +1 -0
- package/dist/lib/plugins/search-pagefind/index.d.ts +6 -0
- package/dist/lib/plugins/search-pagefind/index.js +9 -0
- package/dist/lib/plugins/search-pagefind/index.js.map +1 -0
- package/dist/lib/plugins/search-pagefind/types.d.ts +85 -0
- package/dist/lib/plugins/search-pagefind/types.js +2 -0
- package/dist/lib/plugins/search-pagefind/types.js.map +1 -0
- package/dist/lib/ui/Badge.d.ts +1 -1
- package/dist/lib/ui/Button.d.ts +2 -2
- package/dist/lib/ui/Button.js +2 -1
- package/dist/lib/ui/Button.js.map +1 -1
- package/dist/lib/ui/Callout.d.ts +2 -1
- package/dist/lib/ui/Callout.js +3 -2
- package/dist/lib/ui/Callout.js.map +1 -1
- package/dist/lib/ui/Checkbox.d.ts +2 -8
- package/dist/lib/ui/Checkbox.js +1 -13
- package/dist/lib/ui/Checkbox.js.map +1 -1
- package/dist/lib/ui/Command.d.ts +7 -1
- package/dist/lib/ui/Command.js +2 -2
- package/dist/lib/ui/Command.js.map +1 -1
- package/dist/lib/ui/Select.js +1 -1
- package/dist/lib/ui/Select.js.map +1 -1
- package/dist/lib/ui/Stepper.d.ts +3 -0
- package/dist/lib/ui/Stepper.js +7 -0
- package/dist/lib/ui/Stepper.js.map +1 -0
- package/dist/lib/ui/SyntaxHighlight.d.ts +15 -0
- package/dist/lib/ui/SyntaxHighlight.js +62 -0
- package/dist/lib/ui/SyntaxHighlight.js.map +1 -0
- package/dist/lib/ui/util.d.ts +2 -0
- package/dist/lib/ui/util.js +3 -0
- package/dist/lib/ui/util.js.map +1 -0
- package/dist/lib/util/MdxComponents.d.ts +5 -2
- package/dist/lib/util/MdxComponents.js +6 -3
- package/dist/lib/util/MdxComponents.js.map +1 -1
- package/dist/lib/util/joinPath.d.ts +3 -0
- package/dist/lib/util/joinPath.js +3 -0
- package/dist/lib/util/joinPath.js.map +1 -1
- package/dist/lib/util/traverse.d.ts +2 -8
- package/dist/lib/util/traverse.js +2 -2
- package/dist/lib/util/traverse.js.map +1 -1
- package/dist/lib/util/types.d.ts +7 -0
- package/dist/lib/util/types.js +2 -0
- package/dist/lib/util/types.js.map +1 -0
- package/dist/lib/util/useOnScreen.d.ts +3 -2
- package/dist/lib/util/useOnScreen.js +3 -3
- package/dist/lib/util/useOnScreen.js.map +1 -1
- package/dist/lib/util/useScrollToAnchor.js +26 -20
- package/dist/lib/util/useScrollToAnchor.js.map +1 -1
- package/dist/vite/api/schema-codegen.d.ts +1 -1
- package/dist/vite/api/schema-codegen.js +31 -9
- package/dist/vite/api/schema-codegen.js.map +1 -1
- package/dist/vite/api/schema-codegen.test.js +66 -0
- package/dist/vite/api/schema-codegen.test.js.map +1 -1
- package/dist/vite/build.js +2 -0
- package/dist/vite/build.js.map +1 -1
- package/dist/vite/config.d.ts +2 -5
- package/dist/vite/config.js +39 -56
- package/dist/vite/config.js.map +1 -1
- package/dist/vite/config.test.js +1 -1
- package/dist/vite/config.test.js.map +1 -1
- package/dist/vite/create-pagefind-index.d.ts +4 -0
- package/dist/vite/create-pagefind-index.js +12 -0
- package/dist/vite/create-pagefind-index.js.map +1 -0
- package/dist/vite/css/plugin.d.ts +2 -2
- package/dist/vite/css/plugin.js.map +1 -1
- package/dist/vite/dev-server.js +12 -4
- package/dist/vite/dev-server.js.map +1 -1
- package/dist/vite/plugin-api-keys.d.ts +2 -2
- package/dist/vite/plugin-api-keys.js +3 -3
- package/dist/vite/plugin-api-keys.js.map +1 -1
- package/dist/vite/plugin-api.d.ts +2 -2
- package/dist/vite/plugin-api.js +42 -35
- package/dist/vite/plugin-api.js.map +1 -1
- package/dist/vite/plugin-auth.d.ts +2 -2
- package/dist/vite/plugin-auth.js +3 -3
- package/dist/vite/plugin-auth.js.map +1 -1
- package/dist/vite/plugin-component.d.ts +2 -2
- package/dist/vite/plugin-component.js +7 -2
- package/dist/vite/plugin-component.js.map +1 -1
- package/dist/vite/plugin-config-reload.d.ts +4 -3
- package/dist/vite/plugin-config-reload.js +13 -6
- package/dist/vite/plugin-config-reload.js.map +1 -1
- package/dist/vite/plugin-config.d.ts +2 -2
- package/dist/vite/plugin-config.js +7 -4
- package/dist/vite/plugin-config.js.map +1 -1
- package/dist/vite/plugin-custom-pages.d.ts +2 -2
- package/dist/vite/plugin-custom-pages.js +3 -3
- package/dist/vite/plugin-custom-pages.js.map +1 -1
- package/dist/vite/plugin-docs.d.ts +3 -3
- package/dist/vite/plugin-docs.js +23 -6
- package/dist/vite/plugin-docs.js.map +1 -1
- package/dist/vite/plugin-frontmatter.d.ts +2 -2
- package/dist/vite/plugin-frontmatter.js +5 -4
- package/dist/vite/plugin-frontmatter.js.map +1 -1
- package/dist/vite/plugin-mdx.d.ts +2 -2
- package/dist/vite/plugin-mdx.js +1 -1
- package/dist/vite/plugin-mdx.js.map +1 -1
- package/dist/vite/plugin-redirect.d.ts +2 -2
- package/dist/vite/plugin-redirect.js +3 -3
- package/dist/vite/plugin-redirect.js.map +1 -1
- package/dist/vite/plugin-search.d.ts +2 -2
- package/dist/vite/plugin-search.js +5 -1
- package/dist/vite/plugin-search.js.map +1 -1
- package/dist/vite/plugin-sidebar.d.ts +2 -2
- package/dist/vite/plugin-sidebar.js +2 -2
- package/dist/vite/plugin-sidebar.js.map +1 -1
- package/dist/vite/plugin-theme-css.d.ts +2 -2
- package/dist/vite/plugin-theme-css.js.map +1 -1
- package/dist/vite/plugin.d.ts +2 -2
- package/dist/vite/plugin.js.map +1 -1
- package/dist/vite/prerender/FileWritingResponse.d.ts +11 -6
- package/dist/vite/prerender/FileWritingResponse.js +9 -6
- package/dist/vite/prerender/FileWritingResponse.js.map +1 -1
- package/dist/vite/prerender/InMemoryResponse.d.ts +16 -0
- package/dist/vite/prerender/InMemoryResponse.js +32 -0
- package/dist/vite/prerender/InMemoryResponse.js.map +1 -0
- package/dist/vite/prerender/PrerenderResponse.d.ts +10 -0
- package/dist/vite/prerender/PrerenderResponse.js +2 -0
- package/dist/vite/prerender/PrerenderResponse.js.map +1 -0
- package/dist/vite/prerender/prerender.d.ts +1 -0
- package/dist/vite/prerender/prerender.js +34 -28
- package/dist/vite/prerender/prerender.js.map +1 -1
- package/dist/vite/prerender/worker.d.ts +1 -1
- package/dist/vite/prerender/worker.js +42 -12
- package/dist/vite/prerender/worker.js.map +1 -1
- package/dist/vite/sitemap.js +2 -1
- package/dist/vite/sitemap.js.map +1 -1
- package/dist/zuplo/with-zuplo.js +4 -0
- package/dist/zuplo/with-zuplo.js.map +1 -1
- package/lib/{AuthenticationPlugin-_YVa673u.js → AuthenticationPlugin-foqdvvkf.js} +4 -4
- package/lib/{AuthenticationPlugin-_YVa673u.js.map → AuthenticationPlugin-foqdvvkf.js.map} +1 -1
- package/lib/Button-Fp19CMUr.js +49 -0
- package/lib/Button-Fp19CMUr.js.map +1 -0
- package/lib/Callout-B2vsR09t.js +229 -0
- package/lib/Callout-B2vsR09t.js.map +1 -0
- package/lib/{CategoryHeading-MYL1u_6K.js → CategoryHeading-DpB47wvk.js} +3 -3
- package/lib/{CategoryHeading-MYL1u_6K.js.map → CategoryHeading-DpB47wvk.js.map} +1 -1
- package/lib/Dialog-sbgekbjb.js +98 -0
- package/lib/Dialog-sbgekbjb.js.map +1 -0
- package/lib/Drawer-kDAfOq_2.js +1133 -0
- package/lib/Drawer-kDAfOq_2.js.map +1 -0
- package/lib/{Markdown-8mv9nhGd.js → Markdown-aF5FdsNi.js} +7822 -6052
- package/lib/Markdown-aF5FdsNi.js.map +1 -0
- package/lib/MdxPage-Vw_dc9Yz.js +85 -0
- package/lib/MdxPage-Vw_dc9Yz.js.map +1 -0
- package/lib/{OasProvider-IS9wBrb7.js → OasProvider-CjXTP-nz.js} +6 -6
- package/lib/{OasProvider-IS9wBrb7.js.map → OasProvider-CjXTP-nz.js.map} +1 -1
- package/lib/OperationList-BYemrDYk.js +5068 -0
- package/lib/OperationList-BYemrDYk.js.map +1 -0
- package/lib/Pagination-SdlocK96.js +48 -0
- package/lib/Pagination-SdlocK96.js.map +1 -0
- package/lib/{index.esm-9-TF9KQB.js → RouteGuard-CqZPoZYJ.js} +196 -144
- package/lib/RouteGuard-CqZPoZYJ.js.map +1 -0
- package/lib/SchemaList-CAeKy9pV.js +148 -0
- package/lib/SchemaList-CAeKy9pV.js.map +1 -0
- package/lib/SchemaView-B3fOPR4V.js +357 -0
- package/lib/SchemaView-B3fOPR4V.js.map +1 -0
- package/lib/{Select-D9CKL33X.js → Select-DVFRKf1R.js} +71 -71
- package/lib/{Select-D9CKL33X.js.map → Select-DVFRKf1R.js.map} +1 -1
- package/lib/SlotletProvider-DXvc0aY6.js +338 -0
- package/lib/SlotletProvider-DXvc0aY6.js.map +1 -0
- package/lib/Spinner-CE68iCm0.js +7 -0
- package/lib/Spinner-CE68iCm0.js.map +1 -0
- package/lib/{SyntaxHighlight-B0L4SC_N.js → SyntaxHighlight-BEoSoPEo.js} +496 -592
- package/lib/SyntaxHighlight-BEoSoPEo.js.map +1 -0
- package/lib/Toc-YBsgI72s.js +92 -0
- package/lib/Toc-YBsgI72s.js.map +1 -0
- package/lib/{chunk-SYFQ2XB5-QijJrSf0.js → chunk-HA7DTUK3-C4gP41vD.js} +560 -560
- package/lib/chunk-HA7DTUK3-C4gP41vD.js.map +1 -0
- package/lib/{circular-DxaIIlWD.js → circular-ByJI6Mci.js} +5461 -4993
- package/lib/circular-ByJI6Mci.js.map +1 -0
- package/lib/context-DLCwaMXN.js +22 -0
- package/lib/{context-rwLGh-6_.js.map → context-DLCwaMXN.js.map} +1 -1
- package/lib/{createServer-DSQiPwjN.js → createServer-mYvGvmc0.js} +5062 -5209
- package/lib/createServer-mYvGvmc0.js.map +1 -0
- package/lib/{hook-C_t2ISLC.js → hook-CqpVYDqN.js} +495 -467
- package/lib/hook-CqpVYDqN.js.map +1 -0
- package/lib/index-Bn6Lc9tq.js +9 -0
- package/lib/index-Bn6Lc9tq.js.map +1 -0
- package/lib/index-C1OzjGUK.js +2227 -0
- package/lib/index-C1OzjGUK.js.map +1 -0
- package/lib/index-CPNSgwSb.js +36 -0
- package/lib/{index-Djenk2Hj.js.map → index-CPNSgwSb.js.map} +1 -1
- package/lib/index-D48iOQvJ.js +1973 -0
- package/lib/index-D48iOQvJ.js.map +1 -0
- package/lib/index-DwT-v3zK.js +86 -0
- package/lib/index-DwT-v3zK.js.map +1 -0
- package/lib/{index-CjJS0l4l.js → index-LNp6rxyU.js} +2 -2
- package/lib/{index-CjJS0l4l.js.map → index-LNp6rxyU.js.map} +1 -1
- package/lib/index-gQD2h1wX.js +447 -0
- package/lib/index-gQD2h1wX.js.map +1 -0
- package/lib/{index.esm-CrSoEshU.js → index.esm--gIChbWs.js} +3 -3
- package/lib/{index.esm-CrSoEshU.js.map → index.esm--gIChbWs.js.map} +1 -1
- package/lib/{jsx-runtime-Bdg6XQ1m.js → jsx-runtime-CYK1ROHF.js} +99 -99
- package/lib/{jsx-runtime-Bdg6XQ1m.js.map → jsx-runtime-CYK1ROHF.js.map} +1 -1
- package/lib/{mutation-Cm3O9f3X.js → mutation-8LjrN7uz.js} +26 -26
- package/lib/{mutation-Cm3O9f3X.js.map → mutation-8LjrN7uz.js.map} +1 -1
- package/lib/objectEntries-yMIkr2mI.js +5 -0
- package/lib/objectEntries-yMIkr2mI.js.map +1 -0
- package/lib/post-processors/removeExtensions.js +4 -4
- package/lib/post-processors/traverse.js +2 -2
- package/lib/post-processors/traverse.js.map +1 -1
- package/lib/prism-bash.min-HHIMdNJ_.js.map +1 -1
- package/lib/prism-csharp.min-bQAo2pmx.js.map +1 -1
- package/lib/prism-java.min-BpvsOuIa.js.map +1 -1
- package/lib/prism-javascript.min-CEqHqgbm.js.map +1 -1
- package/lib/prism-json.min-B1GJqK1k.js.map +1 -1
- package/lib/prism-jsstacktrace.min-BfobCF2F.js +2 -0
- package/lib/prism-jsstacktrace.min-BfobCF2F.js.map +1 -0
- package/lib/prism-markdown.min-C0Qn0m-5.js.map +1 -1
- package/lib/prism-markup-BNGj0Tvm.js.map +1 -1
- package/lib/prism-objectivec.min-BXSWqpJJ.js.map +1 -1
- package/lib/prism-ruby.min-Dx9KO9ds.js.map +1 -1
- package/lib/prism-typescript.min-CD7H2IYQ.js.map +1 -1
- package/lib/ui/Accordion.js +1 -1
- package/lib/ui/ActionButton.js +11 -10
- package/lib/ui/ActionButton.js.map +1 -1
- package/lib/ui/Alert.js +2 -2
- package/lib/ui/AlertDialog.js +1 -1
- package/lib/ui/Badge.js +2 -2
- package/lib/ui/Breadcrumb.js +4 -4
- package/lib/ui/Button.js +13 -12
- package/lib/ui/Button.js.map +1 -1
- package/lib/ui/Callout.js +39 -21
- package/lib/ui/Callout.js.map +1 -1
- package/lib/ui/Card.js +1 -1
- package/lib/ui/Carousel.js +1 -1
- package/lib/ui/Checkbox.js +16 -26
- package/lib/ui/Checkbox.js.map +1 -1
- package/lib/ui/Command.js +105 -78
- package/lib/ui/Command.js.map +1 -1
- package/lib/ui/Dialog.js +1 -1
- package/lib/ui/Drawer.js +14 -1151
- package/lib/ui/Drawer.js.map +1 -1
- package/lib/ui/DropdownMenu.js +1 -1
- package/lib/ui/Form.js +5 -5
- package/lib/ui/HoverCard.js +1 -1
- package/lib/ui/Input.js +1 -1
- package/lib/ui/Label.js +2 -2
- package/lib/ui/Pagination.js +10 -10
- package/lib/ui/Popover.js +1 -1
- package/lib/ui/Progress.js +1 -1
- package/lib/ui/RadioGroup.js +1 -1
- package/lib/ui/ScrollArea.js +1 -1
- package/lib/ui/Select.js +2 -2
- package/lib/ui/Select.js.map +1 -1
- package/lib/ui/Skeleton.js +1 -1
- package/lib/ui/Slider.js +1 -1
- package/lib/ui/Stepper.js +6 -0
- package/lib/ui/Stepper.js.map +1 -0
- package/lib/ui/Switch.js +1 -1
- package/lib/ui/SyntaxHighlight.js +11 -0
- package/lib/ui/SyntaxHighlight.js.map +1 -0
- package/lib/ui/Tabs.js +1 -1
- package/lib/ui/Textarea.js +1 -1
- package/lib/ui/Toggle.js +2 -2
- package/lib/ui/ToggleGroup.js +1 -1
- package/lib/ui/Tooltip.js +1 -1
- package/lib/ui/util.js +6 -0
- package/lib/ui/util.js.map +1 -0
- package/lib/{useExposedProps-Bbf99zic.js → useExposedProps-B9qXJedG.js} +2 -2
- package/lib/{useExposedProps-Bbf99zic.js.map → useExposedProps-B9qXJedG.js.map} +1 -1
- package/lib/useLatest-hmRS46UF.js +11 -0
- package/lib/useLatest-hmRS46UF.js.map +1 -0
- package/lib/zudoku.auth-auth0.js +15 -14
- package/lib/zudoku.auth-auth0.js.map +1 -1
- package/lib/zudoku.auth-clerk.js +67 -49
- package/lib/zudoku.auth-clerk.js.map +1 -1
- package/lib/zudoku.auth-openid.js +370 -404
- package/lib/zudoku.auth-openid.js.map +1 -1
- package/lib/zudoku.components.js +32 -1334
- package/lib/zudoku.components.js.map +1 -1
- package/lib/zudoku.hooks.js +19 -0
- package/lib/zudoku.hooks.js.map +1 -0
- package/lib/zudoku.icons.js +1 -1
- package/lib/zudoku.plugin-api-catalog.js +106 -111
- package/lib/zudoku.plugin-api-catalog.js.map +1 -1
- package/lib/zudoku.plugin-api-keys.js +108 -106
- package/lib/zudoku.plugin-api-keys.js.map +1 -1
- package/lib/zudoku.plugin-custom-pages.js +3 -3
- package/lib/zudoku.plugin-markdown.js +2 -2
- package/lib/zudoku.plugin-openapi.js +6 -8
- package/lib/zudoku.plugin-openapi.js.map +1 -1
- package/lib/zudoku.plugin-redirect.js +1 -1
- package/lib/zudoku.plugin-search-inkeep.js +9 -9
- package/lib/zudoku.plugin-search-pagefind.js +233 -0
- package/lib/zudoku.plugin-search-pagefind.js.map +1 -0
- package/lib/zudoku.plugins.js +9 -8
- package/lib/zudoku.plugins.js.map +1 -1
- package/package.json +76 -56
- package/src/app/entry.client.tsx +8 -0
- package/src/app/entry.server.tsx +23 -13
- package/src/app/main.css +98 -57
- package/src/app/main.tsx +3 -1
- package/src/app/tailwind.ts +20 -0
- package/src/lib/authentication/authentication.ts +2 -0
- package/src/lib/authentication/hook.ts +12 -1
- package/src/lib/authentication/providers/auth0.tsx +3 -2
- package/src/lib/authentication/providers/clerk.tsx +32 -8
- package/src/lib/authentication/providers/openid.tsx +31 -15
- package/src/lib/authentication/providers/supabase.tsx +157 -0
- package/src/lib/authentication/state.ts +9 -37
- package/src/lib/components/AnchorLink.tsx +9 -7
- package/src/lib/components/Banner.tsx +1 -0
- package/src/lib/components/Bootstrap.tsx +13 -6
- package/src/lib/components/Footer.tsx +136 -0
- package/src/lib/components/Header.tsx +12 -8
- package/src/lib/components/Heading.tsx +1 -1
- package/src/lib/components/InlineCode.tsx +13 -16
- package/src/lib/components/Layout.tsx +22 -67
- package/src/lib/components/Main.tsx +50 -0
- package/src/lib/components/MobileTopNavigation.tsx +27 -18
- package/src/lib/components/Pagination.tsx +50 -0
- package/src/lib/components/ThemeSwitch.tsx +1 -1
- package/src/lib/components/TopNavigation.tsx +51 -24
- package/src/lib/components/Zudoku.tsx +20 -7
- package/src/lib/components/cache.ts +8 -0
- package/src/lib/components/context/BypassProtectedRoutesContext.ts +3 -0
- package/src/lib/components/context/RouterEventsEmitter.tsx +19 -0
- package/src/lib/components/context/ViewportAnchorContext.tsx +6 -15
- package/src/lib/components/context/ZudokuContext.ts +17 -8
- package/src/lib/components/index.ts +2 -0
- package/src/lib/components/navigation/PoweredByZudoku.tsx +23 -0
- package/src/lib/components/navigation/Sidebar.tsx +30 -44
- package/src/lib/components/navigation/SidebarBadge.tsx +4 -1
- package/src/lib/components/navigation/SidebarCategory.tsx +15 -12
- package/src/lib/components/navigation/SidebarItem.tsx +22 -29
- package/src/lib/components/navigation/SidebarWrapper.tsx +42 -23
- package/src/lib/{plugins/markdown → components/navigation}/Toc.tsx +5 -14
- package/src/lib/components/navigation/ZudokuLogo.tsx +25 -0
- package/src/lib/core/RouteGuard.tsx +69 -12
- package/src/lib/core/ZudokuContext.ts +63 -12
- package/src/lib/core/plugins.ts +21 -7
- package/src/lib/errors/ErrorAlert.tsx +24 -17
- package/src/lib/hooks/index.ts +5 -0
- package/src/lib/hooks/useEvent.test.tsx +149 -0
- package/src/lib/hooks/useEvent.ts +41 -0
- package/src/lib/oas/graphql/index.ts +206 -55
- package/src/lib/oas/parser/dereference/index.ts +2 -0
- package/src/lib/oas/parser/index.ts +7 -29
- package/src/lib/plugins/api-catalog/Catalog.tsx +50 -100
- package/src/lib/plugins/api-catalog/index.tsx +66 -15
- package/src/lib/plugins/api-keys/CreateApiKey.tsx +7 -3
- package/src/lib/plugins/markdown/MdxPage.tsx +15 -47
- package/src/lib/plugins/openapi/ColorizedParam.tsx +1 -1
- package/src/lib/plugins/openapi/Endpoint.tsx +1 -1
- package/src/lib/plugins/openapi/OperationList.tsx +171 -81
- package/src/lib/plugins/openapi/OperationListItem.tsx +118 -104
- package/src/lib/plugins/openapi/ParamInfos.tsx +87 -0
- package/src/lib/plugins/openapi/ParameterList.tsx +4 -0
- package/src/lib/plugins/openapi/ParameterListItem.tsx +35 -23
- package/src/lib/plugins/openapi/PlaygroundDialogWrapper.tsx +7 -0
- package/src/lib/plugins/openapi/SchemaList.tsx +151 -0
- package/src/lib/plugins/openapi/Sidecar.tsx +50 -13
- package/src/lib/plugins/openapi/SidecarExamples.tsx +1 -2
- package/src/lib/plugins/openapi/SimpleSelect.tsx +1 -1
- package/src/lib/plugins/openapi/client/GraphQLClient.tsx +1 -1
- package/src/lib/plugins/openapi/client/useCreateQuery.ts +13 -5
- package/src/lib/plugins/openapi/components/EnumValues.tsx +58 -0
- package/src/lib/plugins/openapi/components/SelectOnClick.tsx +29 -0
- package/src/lib/plugins/openapi/graphql/gql.ts +34 -17
- package/src/lib/plugins/openapi/graphql/graphql.ts +172 -86
- package/src/lib/plugins/openapi/index.tsx +55 -87
- package/src/lib/plugins/openapi/interfaces.ts +44 -15
- package/src/lib/plugins/openapi/playground/ExamplesDropdown.tsx +30 -32
- package/src/lib/plugins/openapi/playground/Headers.tsx +0 -1
- package/src/lib/plugins/openapi/playground/IdentityDialog.tsx +74 -0
- package/src/lib/plugins/openapi/playground/IdentitySelector.tsx +54 -0
- package/src/lib/plugins/openapi/playground/PathParams.tsx +8 -2
- package/src/lib/plugins/openapi/playground/Playground.tsx +176 -89
- package/src/lib/plugins/openapi/playground/QueryParams.tsx +0 -1
- package/src/lib/plugins/openapi/playground/RequestLoginDialog.tsx +51 -0
- package/src/lib/plugins/openapi/playground/rememberedIdentity.ts +26 -0
- package/src/lib/plugins/openapi/playground/result-panel/ResponseTab.tsx +25 -5
- package/src/lib/plugins/openapi/playground/result-panel/ResultPanel.tsx +67 -45
- package/src/lib/plugins/openapi/schema/LogicalGroup/LogicalGroup.tsx +1 -8
- package/src/lib/plugins/openapi/schema/LogicalGroup/LogicalGroupConnector.tsx +3 -0
- package/src/lib/plugins/openapi/schema/LogicalGroup/LogicalGroupItem.tsx +6 -3
- package/src/lib/plugins/openapi/schema/SchemaExampleAndDefault.tsx +36 -0
- package/src/lib/plugins/openapi/schema/SchemaPropertyItem.tsx +47 -50
- package/src/lib/plugins/openapi/schema/SchemaView.tsx +84 -138
- package/src/lib/plugins/openapi/schema/utils.ts +7 -1
- package/src/lib/plugins/openapi/state.ts +36 -0
- package/src/lib/plugins/openapi/util/createSidebarCategory.tsx +5 -7
- package/src/lib/plugins/openapi/util/getRoutes.tsx +9 -6
- package/src/lib/plugins/search-pagefind/PagefindSearch.tsx +164 -0
- package/src/lib/plugins/search-pagefind/ResultList.tsx +105 -0
- package/src/lib/plugins/search-pagefind/get-results.tsx +75 -0
- package/src/lib/plugins/search-pagefind/index.tsx +21 -0
- package/src/lib/plugins/search-pagefind/types.ts +118 -0
- package/src/lib/ui/Button.tsx +4 -2
- package/src/lib/ui/Callout.tsx +28 -10
- package/src/lib/ui/Checkbox.tsx +8 -24
- package/src/lib/ui/Command.tsx +25 -3
- package/src/lib/ui/Select.tsx +1 -1
- package/src/lib/ui/Stepper.tsx +8 -0
- package/src/lib/ui/SyntaxHighlight.tsx +186 -0
- package/src/lib/ui/util.tsx +3 -0
- package/src/lib/util/MdxComponents.tsx +7 -4
- package/src/lib/util/joinPath.tsx +3 -0
- package/src/lib/util/traverse.ts +4 -8
- package/src/lib/util/types.ts +7 -0
- package/src/lib/util/useOnScreen.ts +6 -4
- package/src/lib/util/useScrollToAnchor.ts +30 -20
- package/dist/lib/components/SyntaxHighlight.d.ts +0 -12
- package/dist/lib/components/SyntaxHighlight.js +0 -53
- package/dist/lib/components/SyntaxHighlight.js.map +0 -1
- package/dist/lib/components/context/PluginSystem.js +0 -2
- package/dist/lib/components/context/PluginSystem.js.map +0 -1
- package/dist/lib/plugins/markdown/Toc.js.map +0 -1
- package/lib/Markdown-8mv9nhGd.js.map +0 -1
- package/lib/MdxPage-GM1T5jmO.js +0 -193
- package/lib/MdxPage-GM1T5jmO.js.map +0 -1
- package/lib/OperationList-BTmRbbXk.js +0 -5179
- package/lib/OperationList-BTmRbbXk.js.map +0 -1
- package/lib/SlotletProvider-D0mFmGJu.js +0 -221
- package/lib/SlotletProvider-D0mFmGJu.js.map +0 -1
- package/lib/Spinner-BlzrEEk1.js +0 -51
- package/lib/Spinner-BlzrEEk1.js.map +0 -1
- package/lib/SyntaxHighlight-B0L4SC_N.js.map +0 -1
- package/lib/chunk-SYFQ2XB5-QijJrSf0.js.map +0 -1
- package/lib/circular-DxaIIlWD.js.map +0 -1
- package/lib/context-rwLGh-6_.js +0 -22
- package/lib/createServer-DSQiPwjN.js.map +0 -1
- package/lib/hook-C_t2ISLC.js.map +0 -1
- package/lib/index-B7mqiOei.js +0 -509
- package/lib/index-B7mqiOei.js.map +0 -1
- package/lib/index-BANyVRgL.js +0 -2098
- package/lib/index-BANyVRgL.js.map +0 -1
- package/lib/index-Djenk2Hj.js +0 -36
- package/lib/index.esm-9-TF9KQB.js.map +0 -1
- package/lib/joinUrl-nLx9pD-Z.js +0 -20
- package/lib/joinUrl-nLx9pD-Z.js.map +0 -1
- package/lib/useScrollToAnchor-BGEcH3HM.js +0 -286
- package/lib/useScrollToAnchor-BGEcH3HM.js.map +0 -1
- package/src/lib/components/SyntaxHighlight.tsx +0 -171
- package/src/lib/components/context/PluginSystem.ts +0 -0
- /package/dist/lib/{plugins/markdown → components/navigation}/Toc.d.ts +0 -0
- /package/dist/lib/{components/context/PluginSystem.d.ts → hooks/useEvent.test.d.ts} +0 -0
package/dist/vite/config.js
CHANGED
|
@@ -4,13 +4,12 @@ import { fileURLToPath } from "node:url";
|
|
|
4
4
|
import colors from "picocolors";
|
|
5
5
|
import tailwindcss from "tailwindcss";
|
|
6
6
|
import { loadConfigFromFile, mergeConfig, loadEnv as viteLoadEnv, } from "vite";
|
|
7
|
+
import packageJson from "../../package.json" with { type: "json" };
|
|
7
8
|
import tailwindConfig from "../app/tailwind.js";
|
|
8
9
|
import { logger } from "../cli/common/logger.js";
|
|
9
|
-
import { findAvailablePort } from "../cli/common/utils/ports.js";
|
|
10
10
|
import { tryLoadZudokuConfig } from "../config/loader.js";
|
|
11
11
|
import { CdnUrlSchema } from "../config/validators/common.js";
|
|
12
12
|
import { joinUrl } from "../lib/util/joinUrl.js";
|
|
13
|
-
import { ZuploEnv } from "../zuplo/env.js";
|
|
14
13
|
import vitePlugin from "./plugin.js";
|
|
15
14
|
const getDocsConfigFiles = (docsConfig, baseDir) => {
|
|
16
15
|
if (!docsConfig)
|
|
@@ -18,23 +17,8 @@ const getDocsConfigFiles = (docsConfig, baseDir) => {
|
|
|
18
17
|
const docsArray = Array.isArray(docsConfig) ? docsConfig : [docsConfig];
|
|
19
18
|
return docsArray.map((doc) => path.posix.join(baseDir, doc.files));
|
|
20
19
|
};
|
|
21
|
-
// We extend the dependencies with the files from configured APIs
|
|
22
|
-
// so that the server restarts when these files change.
|
|
23
|
-
const registerApiFileImportDependencies = (config, rootDir) => {
|
|
24
|
-
if (!config.apis)
|
|
25
|
-
return;
|
|
26
|
-
const apis = Array.isArray(config.apis) ? config.apis : [config.apis];
|
|
27
|
-
const files = apis
|
|
28
|
-
.filter((c) => c.type === "file")
|
|
29
|
-
.flatMap((c) => (Array.isArray(c.input) ? c.input : [c.input]))
|
|
30
|
-
.map((c) => path.posix.join(rootDir, c));
|
|
31
|
-
config.__meta.registerDependency(...files);
|
|
32
|
-
};
|
|
33
20
|
function loadEnv(configEnv, rootDir) {
|
|
34
|
-
const envPrefix = [
|
|
35
|
-
...(ZuploEnv.isZuplo ? ["ZUPLO_PUBLIC_"] : []),
|
|
36
|
-
"ZUDOKU_PUBLIC_",
|
|
37
|
-
];
|
|
21
|
+
const envPrefix = ["ZUPLO_PUBLIC_", "ZUDOKU_PUBLIC_"];
|
|
38
22
|
const localEnv = viteLoadEnv(configEnv.mode, rootDir, envPrefix);
|
|
39
23
|
process.env = { ...localEnv, ...process.env };
|
|
40
24
|
const publicEnv = Object.entries(process.env).reduce((val, [key]) => {
|
|
@@ -48,6 +32,15 @@ function loadEnv(configEnv, rootDir) {
|
|
|
48
32
|
let config;
|
|
49
33
|
let envPrefix;
|
|
50
34
|
let publicEnv;
|
|
35
|
+
export const getStandaloneConfig = (rootDir) => ({
|
|
36
|
+
__meta: {
|
|
37
|
+
rootDir,
|
|
38
|
+
moduleDir: getModuleDir(),
|
|
39
|
+
mode: "standalone",
|
|
40
|
+
dependencies: [],
|
|
41
|
+
configPath: "",
|
|
42
|
+
},
|
|
43
|
+
});
|
|
51
44
|
export async function loadZudokuConfig(configEnv, rootDir, forceReload) {
|
|
52
45
|
if (!forceReload && config && envPrefix && publicEnv) {
|
|
53
46
|
return { config, envPrefix, publicEnv };
|
|
@@ -60,13 +53,9 @@ export async function loadZudokuConfig(configEnv, rootDir, forceReload) {
|
|
|
60
53
|
envVars[key] = process.env[key];
|
|
61
54
|
}
|
|
62
55
|
}
|
|
63
|
-
|
|
64
|
-
registerApiFileImportDependencies(loadedConfig, rootDir);
|
|
56
|
+
config = await tryLoadZudokuConfig(rootDir, getModuleDir(), envVars);
|
|
65
57
|
logger.info(colors.yellow(`loaded config file `) +
|
|
66
|
-
colors.dim(
|
|
67
|
-
timestamp: true,
|
|
68
|
-
});
|
|
69
|
-
config = loadedConfig;
|
|
58
|
+
colors.dim(config.__meta.configPath), { timestamp: true });
|
|
70
59
|
return { config, envPrefix, publicEnv };
|
|
71
60
|
}
|
|
72
61
|
catch (error) {
|
|
@@ -75,7 +64,6 @@ export async function loadZudokuConfig(configEnv, rootDir, forceReload) {
|
|
|
75
64
|
error,
|
|
76
65
|
});
|
|
77
66
|
}
|
|
78
|
-
// Default config
|
|
79
67
|
logger.error(colors.red(`no zudoku config file found in project root.`), {
|
|
80
68
|
timestamp: true,
|
|
81
69
|
});
|
|
@@ -99,15 +87,6 @@ export function getAppServerEntryPath() {
|
|
|
99
87
|
const modDir = getModuleDir();
|
|
100
88
|
return path.posix.join(modDir, "src", "app", "entry.server.tsx");
|
|
101
89
|
}
|
|
102
|
-
export function getPluginOptions({ dir, mode, }) {
|
|
103
|
-
const moduleDir = getModuleDir();
|
|
104
|
-
return {
|
|
105
|
-
...config,
|
|
106
|
-
rootDir: dir,
|
|
107
|
-
moduleDir,
|
|
108
|
-
mode,
|
|
109
|
-
};
|
|
110
|
-
}
|
|
111
90
|
// the vite config gets loaded multiple times, so we only log the CDN info once
|
|
112
91
|
let hasLoggedCdnInfo = false;
|
|
113
92
|
const MEDIA_REGEX = /\.(a?png|jpe?g|gif|bmp|svg|webp|tiff|ico|webm|ogg|mp3|wav|m4a|avif|mp4)/i;
|
|
@@ -118,18 +97,13 @@ export async function getViteConfig(dir, configEnv, onConfigChange) {
|
|
|
118
97
|
onConfigChange?.(config);
|
|
119
98
|
return config;
|
|
120
99
|
};
|
|
121
|
-
const websocketPort = await findAvailablePort(9800);
|
|
122
|
-
const pluginOptions = getPluginOptions({
|
|
123
|
-
dir,
|
|
124
|
-
mode: process.env.ZUDOKU_INTERNAL_DEV ? "internal" : "module",
|
|
125
|
-
});
|
|
126
100
|
const cdnUrl = CdnUrlSchema.parse(config.cdnUrl);
|
|
127
101
|
const base = cdnUrl?.base
|
|
128
102
|
? joinUrl(cdnUrl.base, config.basePath)
|
|
129
103
|
: config.basePath;
|
|
130
104
|
if (cdnUrl && !hasLoggedCdnInfo) {
|
|
131
105
|
logger.info(colors.blue(`Using CDN URL:`));
|
|
132
|
-
logger.info(colors.blue(` base:
|
|
106
|
+
logger.info(colors.blue(` base: `) + colors.dim(cdnUrl.base));
|
|
133
107
|
logger.info(colors.blue(` media: `) + colors.dim(cdnUrl.media));
|
|
134
108
|
hasLoggedCdnInfo = true;
|
|
135
109
|
}
|
|
@@ -144,10 +118,11 @@ export async function getViteConfig(dir, configEnv, onConfigChange) {
|
|
|
144
118
|
envPrefix,
|
|
145
119
|
resolve: {
|
|
146
120
|
alias: {
|
|
147
|
-
"@mdx-js/react":
|
|
121
|
+
"@mdx-js/react": import.meta.resolve("@mdx-js/react"),
|
|
148
122
|
},
|
|
149
123
|
},
|
|
150
124
|
define: {
|
|
125
|
+
"process.env.ZUDOKU_VERSION": JSON.stringify(packageJson.version),
|
|
151
126
|
"process.env.SENTRY_DSN": JSON.stringify(process.env.SENTRY_DSN),
|
|
152
127
|
...publicEnv,
|
|
153
128
|
},
|
|
@@ -158,16 +133,13 @@ export async function getViteConfig(dir, configEnv, onConfigChange) {
|
|
|
158
133
|
server: {
|
|
159
134
|
middlewareMode: true,
|
|
160
135
|
open: true,
|
|
161
|
-
hmr: {
|
|
162
|
-
port: websocketPort,
|
|
163
|
-
},
|
|
164
136
|
watch: {
|
|
165
137
|
ignored: [
|
|
166
138
|
`${dir}/dist`,
|
|
167
139
|
`${dir}/lib`,
|
|
168
140
|
`${dir}/.git`,
|
|
169
|
-
`${
|
|
170
|
-
`${
|
|
141
|
+
`${config.__meta.moduleDir}/src/vite`,
|
|
142
|
+
`${config.__meta.moduleDir}/src/cli`,
|
|
171
143
|
],
|
|
172
144
|
},
|
|
173
145
|
},
|
|
@@ -179,10 +151,12 @@ export async function getViteConfig(dir, configEnv, onConfigChange) {
|
|
|
179
151
|
rollupOptions: {
|
|
180
152
|
input: configEnv.command === "build"
|
|
181
153
|
? configEnv.isSsrBuild
|
|
182
|
-
? ["zudoku/app/entry.server.tsx", config.__meta.
|
|
154
|
+
? ["zudoku/app/entry.server.tsx", config.__meta.configPath]
|
|
183
155
|
: "zudoku/app/entry.client.tsx"
|
|
184
156
|
: undefined,
|
|
157
|
+
external: [joinUrl(config.basePath, "/pagefind/pagefind.js")],
|
|
185
158
|
},
|
|
159
|
+
chunkSizeWarningLimit: 1500,
|
|
186
160
|
},
|
|
187
161
|
experimental: {
|
|
188
162
|
renderBuiltUrl(filename) {
|
|
@@ -201,11 +175,17 @@ export async function getViteConfig(dir, configEnv, onConfigChange) {
|
|
|
201
175
|
? getAppServerEntryPath()
|
|
202
176
|
: getAppClientEntryPath(),
|
|
203
177
|
],
|
|
204
|
-
include: [
|
|
178
|
+
include: [
|
|
179
|
+
"react-dom/client",
|
|
180
|
+
...(process.env.SENTRY_DSN ? ["@sentry/react"] : []),
|
|
181
|
+
],
|
|
205
182
|
},
|
|
206
|
-
|
|
207
|
-
|
|
208
|
-
|
|
183
|
+
assetsInclude: [
|
|
184
|
+
// Workaround for Pre-transform error for "virtual" file: https://github.com/vitejs/vite/issues/15374
|
|
185
|
+
"/__z/entry.client.tsx",
|
|
186
|
+
"**/pagefind.js",
|
|
187
|
+
],
|
|
188
|
+
plugins: [vitePlugin(config, handleConfigChange)],
|
|
209
189
|
future: {
|
|
210
190
|
removeServerModuleGraph: "warn",
|
|
211
191
|
removeSsrLoadModule: "warn",
|
|
@@ -224,10 +204,10 @@ export async function getViteConfig(dir, configEnv, onConfigChange) {
|
|
|
224
204
|
// Tailwind seems to crash if it tries to parse compiled .js files
|
|
225
205
|
// as a workaround, we will just ship the source file and use those
|
|
226
206
|
// `${moduleDir}/lib/**/*.{js,ts,jsx,tsx,md,mdx}`,
|
|
227
|
-
`${
|
|
207
|
+
`${config.__meta.moduleDir}/src/lib/**/*.{js,ts,jsx,tsx,md,mdx}`,
|
|
228
208
|
// Include the config file and every file it depends on
|
|
229
|
-
config.__meta.
|
|
230
|
-
...config.__meta.dependencies.map((dep) => `${path.dirname(config.__meta.
|
|
209
|
+
config.__meta.configPath,
|
|
210
|
+
...config.__meta.dependencies.map((dep) => `${path.dirname(config.__meta.configPath)}/${dep}`),
|
|
231
211
|
`${dir}/src/**/*.{js,ts,jsx,tsx,md,mdx}`,
|
|
232
212
|
// All doc files
|
|
233
213
|
...getDocsConfigFiles(config.docs, dir),
|
|
@@ -239,9 +219,12 @@ export async function getViteConfig(dir, configEnv, onConfigChange) {
|
|
|
239
219
|
},
|
|
240
220
|
};
|
|
241
221
|
// If the user has supplied a vite.config file, merge it with ours
|
|
242
|
-
const userConfig = await loadConfigFromFile(configEnv, undefined, dir);
|
|
222
|
+
const userConfig = await loadConfigFromFile(configEnv, undefined, dir, undefined, undefined, "runner");
|
|
243
223
|
if (userConfig) {
|
|
244
|
-
const merged = mergeConfig(userConfig.config,
|
|
224
|
+
const merged = mergeConfig(viteConfig, userConfig.config, true);
|
|
225
|
+
logger.info(colors.blue(`merged with custom user Vite config`), {
|
|
226
|
+
timestamp: true,
|
|
227
|
+
});
|
|
245
228
|
return merged;
|
|
246
229
|
}
|
|
247
230
|
return viteConfig;
|
package/dist/vite/config.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"config.js","sourceRoot":"","sources":["../../src/vite/config.ts"],"names":[],"mappings":"AAAA,OAAO,YAAY,MAAM,cAAc,CAAC;AACxC,OAAO,IAAI,MAAM,WAAW,CAAC;AAC7B,OAAO,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AACzC,OAAO,MAAM,MAAM,YAAY,CAAC;AAChC,OAAO,WAAW,MAAM,aAAa,CAAC;AACtC,OAAO,EAIL,kBAAkB,EAClB,WAAW,EACX,OAAO,IAAI,WAAW,GACvB,MAAM,MAAM,CAAC;AACd,OAAO,
|
|
1
|
+
{"version":3,"file":"config.js","sourceRoot":"","sources":["../../src/vite/config.ts"],"names":[],"mappings":"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"}
|
package/dist/vite/config.test.js
CHANGED
|
@@ -8,7 +8,7 @@ it("Should correctly load zudoku.config.ts file", async () => {
|
|
|
8
8
|
command: "serve",
|
|
9
9
|
}, rootPath);
|
|
10
10
|
// Normalize the path to Unix-style format
|
|
11
|
-
const normalizedPath = config.__meta.
|
|
11
|
+
const normalizedPath = config.__meta.configPath
|
|
12
12
|
.split(path.sep)
|
|
13
13
|
.join(path.posix.sep);
|
|
14
14
|
expect(normalizedPath).includes("/with-config/zudoku.config.");
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"config.test.js","sourceRoot":"","sources":["../../src/vite/config.test.ts"],"names":[],"mappings":"AAAA,OAAO,IAAI,MAAM,WAAW,CAAC;AAC7B,OAAO,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,QAAQ,CAAC;AACpC,OAAO,EAAE,gBAAgB,EAAE,MAAM,aAAa,CAAC;AAE/C,EAAE,CAAC,6CAA6C,EAAE,KAAK,IAAI,EAAE;IAC3D,MAAM,QAAQ,GAAG,IAAI,CAAC,OAAO,CAAC,6BAA6B,CAAC,CAAC;IAC7D,MAAM,EAAE,MAAM,EAAE,GAAG,MAAM,gBAAgB,CACvC;QACE,IAAI,EAAE,aAAa;QACnB,OAAO,EAAE,OAAO;KACjB,EACD,QAAQ,CACT,CAAC;IACF,0CAA0C;IAC1C,MAAM,cAAc,GAAG,MAAM,CAAC,MAAM,CAAC,
|
|
1
|
+
{"version":3,"file":"config.test.js","sourceRoot":"","sources":["../../src/vite/config.test.ts"],"names":[],"mappings":"AAAA,OAAO,IAAI,MAAM,WAAW,CAAC;AAC7B,OAAO,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,QAAQ,CAAC;AACpC,OAAO,EAAE,gBAAgB,EAAE,MAAM,aAAa,CAAC;AAE/C,EAAE,CAAC,6CAA6C,EAAE,KAAK,IAAI,EAAE;IAC3D,MAAM,QAAQ,GAAG,IAAI,CAAC,OAAO,CAAC,6BAA6B,CAAC,CAAC;IAC7D,MAAM,EAAE,MAAM,EAAE,GAAG,MAAM,gBAAgB,CACvC;QACE,IAAI,EAAE,aAAa;QACnB,OAAO,EAAE,OAAO;KACjB,EACD,QAAQ,CACT,CAAC;IACF,0CAA0C;IAC1C,MAAM,cAAc,GAAG,MAAM,CAAC,MAAM,CAAC,UAAU;SAC5C,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC;SACf,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;IAExB,MAAM,CAAC,cAAc,CAAC,CAAC,QAAQ,CAAC,6BAA6B,CAAC,CAAC;AACjE,CAAC,CAAC,CAAC"}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import path from "node:path";
|
|
2
|
+
import invariant from "../lib/util/invariant.js";
|
|
3
|
+
export const createPagefindIndex = async (options) => {
|
|
4
|
+
const pagefind = await import("pagefind");
|
|
5
|
+
const { index, errors } = await pagefind.createIndex();
|
|
6
|
+
invariant(index, `Failed to create pagefind index: ${errors.join(", ")}`);
|
|
7
|
+
const outputPath = path.join(options.outDir ?? options.dir, "pagefind");
|
|
8
|
+
await index.addDirectory({ path: options.dir });
|
|
9
|
+
await index.writeFiles({ outputPath });
|
|
10
|
+
return outputPath;
|
|
11
|
+
};
|
|
12
|
+
//# sourceMappingURL=create-pagefind-index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"create-pagefind-index.js","sourceRoot":"","sources":["../../src/vite/create-pagefind-index.ts"],"names":[],"mappings":"AAAA,OAAO,IAAI,MAAM,WAAW,CAAC;AAC7B,OAAO,SAAS,MAAM,0BAA0B,CAAC;AAEjD,MAAM,CAAC,MAAM,mBAAmB,GAAG,KAAK,EAAE,OAGzC,EAAE,EAAE;IACH,MAAM,QAAQ,GAAG,MAAM,MAAM,CAAC,UAAU,CAAC,CAAC;IAC1C,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,GAAG,MAAM,QAAQ,CAAC,WAAW,EAAE,CAAC;IAEvD,SAAS,CAAC,KAAK,EAAE,oCAAoC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IAE1E,MAAM,UAAU,GAAG,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,MAAM,IAAI,OAAO,CAAC,GAAG,EAAE,UAAU,CAAC,CAAC;IAExE,MAAM,KAAK,CAAC,YAAY,CAAC,EAAE,IAAI,EAAE,OAAO,CAAC,GAAG,EAAE,CAAC,CAAC;IAChD,MAAM,KAAK,CAAC,UAAU,CAAC,EAAE,UAAU,EAAE,CAAC,CAAC;IAEvC,OAAO,UAAU,CAAC;AACpB,CAAC,CAAC"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { type Plugin } from "vite";
|
|
2
|
-
import type {
|
|
3
|
-
export declare function vitePluginSsrCss(getConfig: () =>
|
|
2
|
+
import type { LoadedConfig } from "../../config/config.js";
|
|
3
|
+
export declare function vitePluginSsrCss(getConfig: () => LoadedConfig, pluginOpts: {
|
|
4
4
|
entries: string[];
|
|
5
5
|
}): Plugin;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"plugin.js","sourceRoot":"","sources":["../../../src/vite/css/plugin.ts"],"names":[],"mappings":"AAAA,yBAAyB;AACzB,sEAAsE;AACtE,OAAO,IAAI,MAAM,WAAW,CAAC;AAC7B,OAAO,EAAuB,YAAY,EAAe,MAAM,MAAM,CAAC;AAEtE,OAAO,EAAE,YAAY,EAAE,MAAM,cAAc,CAAC;AAE5C,MAAM,aAAa,GAAG,qBAAqB,CAAC;AAE5C,MAAM,UAAU,gBAAgB,CAC9B,
|
|
1
|
+
{"version":3,"file":"plugin.js","sourceRoot":"","sources":["../../../src/vite/css/plugin.ts"],"names":[],"mappings":"AAAA,yBAAyB;AACzB,sEAAsE;AACtE,OAAO,IAAI,MAAM,WAAW,CAAC;AAC7B,OAAO,EAAuB,YAAY,EAAe,MAAM,MAAM,CAAC;AAEtE,OAAO,EAAE,YAAY,EAAE,MAAM,cAAc,CAAC;AAE5C,MAAM,aAAa,GAAG,qBAAqB,CAAC;AAE5C,MAAM,UAAU,gBAAgB,CAC9B,SAA6B,EAC7B,UAAiC;IAEjC,IAAI,MAAsB,CAAC;IAE3B,MAAM,MAAM,GAAG,SAAS,EAAE,CAAC;IAE3B,MAAM,WAAW,GAAG,IAAI,CAAC,IAAI,CAC3B,MAAM,CAAC,QAAQ,IAAI,EAAE,EACrB,eAAe,aAAa,EAAE,CAC/B,CAAC;IACF,MAAM,YAAY,GAAG,IAAI,GAAG,EAAkB,CAAC;IAE/C,OAAO;QACL,IAAI,EAAE,gBAAgB;QACtB,KAAK,EAAE,OAAO;QACd,eAAe,CAAC,OAAO;YACrB,MAAM,GAAG,OAAO,CAAC,YAAY,CAAC,GAAG,CAAC;YAElC,qDAAqD;YACrD,OAAO,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,IAAI,EAAE,IAAI,EAAE,EAAE;gBAC1C,IAAI,GAAG,CAAC,GAAG,KAAK,WAAW,EAAE,CAAC;oBAC5B,gBAAgB,CAAC,MAAM,EAAE,KAAK,aAAa,SAAS,CAAC,CAAC;gBACxD,CAAC;gBACD,IAAI,EAAE,CAAC;YACT,CAAC,CAAC,CAAC;QACL,CAAC;QAED,SAAS,CAAC,EAAE;YACV,OAAO,EAAE,CAAC,UAAU,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC;QAC9D,CAAC;QACD,SAAS,CAAC,IAAI,EAAE,EAAE;YAChB,IAAI,CAAC,YAAY,CAAC,EAAE,CAAC;gBAAE,OAAO;YAE9B,YAAY,CAAC,GAAG,CAAC,EAAE,EAAE,IAAI,CAAC,CAAC;QAC7B,CAAC;QACD,KAAK,CAAC,IAAI,CAAC,EAAE;YACX,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,KAAK,aAAa,EAAE,CAAC;gBAAE,OAAO;YAEjD,MAAM,GAAG,GAAG,IAAI,GAAG,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,oBAAoB,CAAC,CAAC;YACvD,IAAI,IAAI,GAAG,MAAM,YAAY,CAAC,MAAM,EAAE,UAAU,CAAC,OAAO,EAAE,YAAY,CAAC,CAAC;YACxE,IAAI,CAAC,GAAG,CAAC,YAAY,CAAC,GAAG,CAAC,QAAQ,CAAC,EAAE,CAAC;gBACpC,IAAI,GAAG,kBAAkB,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,GAAG,CAAC;YACnD,CAAC;YACD,OAAO,IAAI,CAAC;QACd,CAAC;QAED,qCAAqC;QACrC,kBAAkB,EAAE;YAClB,OAAO,EAAE,KAAK,IAAI,EAAE;gBAClB,OAAO;oBACL;wBACE,GAAG,EAAE,MAAM;wBACX,QAAQ,EAAE,MAAM;wBAChB,KAAK,EAAE;4BACL,GAAG,EAAE,YAAY;4BACjB,IAAI,EAAE,WAAW;4BACjB,cAAc,EAAE,IAAI;yBACrB;qBACF;oBACD;wBACE,GAAG,EAAE,QAAQ;wBACb,QAAQ,EAAE,MAAM;wBAChB,KAAK,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;wBACzB,QAAQ,EAAE;;;;;;aAMT;qBACF;iBACF,CAAC;YACJ,CAAC;SACF;KACF,CAAC;AACJ,CAAC;AAED,SAAS,gBAAgB,CAAC,MAAsB,EAAE,EAAU;IAC1D,MAAM,GAAG,GAAG,MAAM,CAAC,WAAW,CAAC,aAAa,CAAC,EAAE,CAAC,CAAC;IACjD,IAAI,GAAG,EAAE,CAAC;QACR,MAAM,CAAC,WAAW,CAAC,gBAAgB,CAAC,GAAG,CAAC,CAAC;IAC3C,CAAC;AACH,CAAC"}
|
package/dist/vite/dev-server.js
CHANGED
|
@@ -80,6 +80,14 @@ export class DevServer {
|
|
|
80
80
|
});
|
|
81
81
|
app.use(vite.middlewares);
|
|
82
82
|
printDiagnosticsToConsole(`Server-side rendering ${this.options.ssr ? "enabled" : "disabled"}`);
|
|
83
|
+
if (config.search?.type === "pagefind") {
|
|
84
|
+
const pagefindPath = path.join(vite.config.publicDir, "pagefind/pagefind.js");
|
|
85
|
+
const exists = await fs.stat(pagefindPath).catch(() => false);
|
|
86
|
+
if (!exists) {
|
|
87
|
+
await fs.mkdir(path.dirname(pagefindPath), { recursive: true });
|
|
88
|
+
await fs.writeFile(pagefindPath, 'throw new Error("NOT_BUILT_YET");');
|
|
89
|
+
}
|
|
90
|
+
}
|
|
83
91
|
app.use("*", async (request, response, next) => {
|
|
84
92
|
const url = request.originalUrl;
|
|
85
93
|
const ssrEnvironment = vite.environments.ssr;
|
|
@@ -93,13 +101,13 @@ export class DevServer {
|
|
|
93
101
|
if (!this.currentConfig) {
|
|
94
102
|
throw new Error("Error loading configuration.");
|
|
95
103
|
}
|
|
96
|
-
const
|
|
97
|
-
|
|
98
|
-
void render({
|
|
104
|
+
const server = await ssrEnvironment.runner.import(getAppServerEntryPath());
|
|
105
|
+
void server.render({
|
|
99
106
|
template,
|
|
100
107
|
request,
|
|
101
108
|
response,
|
|
102
|
-
|
|
109
|
+
routes: server.getRoutesByConfig(this.currentConfig),
|
|
110
|
+
basePath: this.currentConfig.basePath,
|
|
103
111
|
});
|
|
104
112
|
}
|
|
105
113
|
else {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"dev-server.js","sourceRoot":"","sources":["../../src/vite/dev-server.ts"],"names":[],"mappings":"AAAA,OAAO,OAAyB,MAAM,SAAS,CAAC;AAChD,OAAO,EAAE,oBAAoB,
|
|
1
|
+
{"version":3,"file":"dev-server.js","sourceRoot":"","sources":["../../src/vite/dev-server.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
1
|
import { type Plugin } from "vite";
|
|
2
|
-
import {
|
|
3
|
-
declare const viteApiKeysPlugin: (getConfig: () =>
|
|
2
|
+
import type { LoadedConfig } from "../config/config.js";
|
|
3
|
+
declare const viteApiKeysPlugin: (getConfig: () => LoadedConfig) => Plugin;
|
|
4
4
|
export default viteApiKeysPlugin;
|
|
@@ -11,13 +11,13 @@ const viteApiKeysPlugin = (getConfig) => {
|
|
|
11
11
|
async load(id) {
|
|
12
12
|
if (id === resolvedVirtualModuleId) {
|
|
13
13
|
const config = getConfig();
|
|
14
|
-
if (!config.apiKeys || config.mode === "standalone") {
|
|
14
|
+
if (!config.apiKeys || config.__meta.mode === "standalone") {
|
|
15
15
|
return `export const configuredApiKeysPlugin = undefined;`;
|
|
16
16
|
}
|
|
17
17
|
const code = [
|
|
18
18
|
`import config from "virtual:zudoku-config";`,
|
|
19
|
-
config.mode === "internal"
|
|
20
|
-
? `import { apiKeyPlugin } from "${config.moduleDir}/src/lib/plugins/api-keys/index.tsx";`
|
|
19
|
+
config.__meta.mode === "internal"
|
|
20
|
+
? `import { apiKeyPlugin } from "${config.__meta.moduleDir}/src/lib/plugins/api-keys/index.tsx";`
|
|
21
21
|
: `import { apiKeyPlugin } from "zudoku/plugins/api-keys";`,
|
|
22
22
|
`export const configuredApiKeysPlugin = apiKeyPlugin(config.apiKeys);`,
|
|
23
23
|
];
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"plugin-api-keys.js","sourceRoot":"","sources":["../../src/vite/plugin-api-keys.ts"],"names":[],"mappings":"AAGA,MAAM,iBAAiB,GAAG,CAAC,
|
|
1
|
+
{"version":3,"file":"plugin-api-keys.js","sourceRoot":"","sources":["../../src/vite/plugin-api-keys.ts"],"names":[],"mappings":"AAGA,MAAM,iBAAiB,GAAG,CAAC,SAA6B,EAAU,EAAE;IAClE,MAAM,eAAe,GAAG,gCAAgC,CAAC;IACzD,MAAM,uBAAuB,GAAG,IAAI,GAAG,eAAe,CAAC;IACvD,OAAO;QACL,IAAI,EAAE,wBAAwB;QAC9B,SAAS,CAAC,EAAE;YACV,IAAI,EAAE,KAAK,eAAe,EAAE,CAAC;gBAC3B,OAAO,uBAAuB,CAAC;YACjC,CAAC;QACH,CAAC;QACD,KAAK,CAAC,IAAI,CAAC,EAAE;YACX,IAAI,EAAE,KAAK,uBAAuB,EAAE,CAAC;gBACnC,MAAM,MAAM,GAAG,SAAS,EAAE,CAAC;gBAE3B,IAAI,CAAC,MAAM,CAAC,OAAO,IAAI,MAAM,CAAC,MAAM,CAAC,IAAI,KAAK,YAAY,EAAE,CAAC;oBAC3D,OAAO,mDAAmD,CAAC;gBAC7D,CAAC;gBAED,MAAM,IAAI,GAAG;oBACX,6CAA6C;oBAC7C,MAAM,CAAC,MAAM,CAAC,IAAI,KAAK,UAAU;wBAC/B,CAAC,CAAC,iCAAiC,MAAM,CAAC,MAAM,CAAC,SAAS,uCAAuC;wBACjG,CAAC,CAAC,yDAAyD;oBAC7D,sEAAsE;iBACvE,CAAC;gBAEF,OAAO;oBACL,IAAI,EAAE,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC;oBACrB,GAAG,EAAE,IAAI;iBACV,CAAC;YACJ,CAAC;QACH,CAAC;KACF,CAAC;AACJ,CAAC,CAAC;AAEF,eAAe,iBAAiB,CAAC"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
1
|
import { type Plugin } from "vite";
|
|
2
|
-
import { type
|
|
3
|
-
declare const viteApiPlugin: (getConfig: () =>
|
|
2
|
+
import { type LoadedConfig } from "../config/config.js";
|
|
3
|
+
declare const viteApiPlugin: (getConfig: () => LoadedConfig) => Promise<Plugin>;
|
|
4
4
|
export default viteApiPlugin;
|
package/dist/vite/plugin-api.js
CHANGED
|
@@ -1,11 +1,11 @@
|
|
|
1
|
-
import { $RefParser } from "@apidevtools/json-schema-ref-parser";
|
|
1
|
+
import { $RefParser, } from "@apidevtools/json-schema-ref-parser";
|
|
2
2
|
import { upgrade, validate } from "@scalar/openapi-parser";
|
|
3
3
|
import fs from "node:fs/promises";
|
|
4
4
|
import path from "node:path";
|
|
5
5
|
import { tsImport } from "tsx/esm/api";
|
|
6
|
-
import { getAllOperations, getAllTags, } from "../lib/oas/graphql/index.js";
|
|
6
|
+
import { getAllOperations, getAllSlugs, getAllTags, } from "../lib/oas/graphql/index.js";
|
|
7
7
|
import { generateCode } from "./api/schema-codegen.js";
|
|
8
|
-
|
|
8
|
+
import { reload } from "./plugin-config-reload.js";
|
|
9
9
|
const schemaMap = new Map();
|
|
10
10
|
const validateSchema = async (schema, filePath) => {
|
|
11
11
|
const validated = await validate(schema);
|
|
@@ -19,22 +19,21 @@ const validateSchema = async (schema, filePath) => {
|
|
|
19
19
|
}
|
|
20
20
|
return schema;
|
|
21
21
|
};
|
|
22
|
-
|
|
22
|
+
// We track all schema files to invalidate when changed (this includes external references as well)
|
|
23
|
+
const allSchemaFiles = new Set();
|
|
24
|
+
async function processSchemas(dir, config,
|
|
23
25
|
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
24
26
|
zuploProcessors = []) {
|
|
25
|
-
const tmpDir = path.posix.join(config.rootDir, "node_modules/.zudoku/processed");
|
|
26
|
-
await fs.rm(tmpDir, { recursive: true, force: true });
|
|
27
|
-
await fs.mkdir(tmpDir, { recursive: true });
|
|
28
27
|
if (!config.apis)
|
|
29
28
|
return {};
|
|
30
29
|
const apis = Array.isArray(config.apis) ? config.apis : [config.apis];
|
|
31
30
|
const processedSchemas = {};
|
|
31
|
+
allSchemaFiles.clear();
|
|
32
32
|
for (const apiConfig of apis) {
|
|
33
33
|
if (apiConfig.type !== "file" || !apiConfig.navigationId) {
|
|
34
34
|
continue;
|
|
35
35
|
}
|
|
36
36
|
const postProcessors = [
|
|
37
|
-
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
38
37
|
(schema) => upgrade(schema).specification,
|
|
39
38
|
...(apiConfig.postProcessors ?? []),
|
|
40
39
|
...zuploProcessors,
|
|
@@ -43,17 +42,17 @@ zuploProcessors = []) {
|
|
|
43
42
|
? apiConfig.input
|
|
44
43
|
: [apiConfig.input];
|
|
45
44
|
const inputFiles = await Promise.all(inputs.map(async (input) => {
|
|
46
|
-
const fullPath = path.resolve(config.rootDir, input);
|
|
45
|
+
const fullPath = path.resolve(config.__meta.rootDir, input);
|
|
47
46
|
const parser = new $RefParser();
|
|
48
47
|
const schema = await parser.bundle(fullPath);
|
|
49
|
-
|
|
48
|
+
parser.$refs.paths().forEach((file) => allSchemaFiles.add(file));
|
|
50
49
|
return validateSchema(schema, input);
|
|
51
50
|
}));
|
|
52
51
|
const processedInputs = await Promise.all(inputFiles.map(async (schema, index) => {
|
|
53
52
|
const processedSchema = await postProcessors.reduce(async (acc, postProcessor) => postProcessor(await acc), Promise.resolve(schema));
|
|
54
53
|
const inputPath = inputs[index];
|
|
55
|
-
const code = await generateCode(processedSchema);
|
|
56
|
-
const processedFilePath = path.posix.join(
|
|
54
|
+
const code = await generateCode(processedSchema, inputPath);
|
|
55
|
+
const processedFilePath = path.posix.join(dir, `${path.basename(inputPath)}.js`);
|
|
57
56
|
await fs.writeFile(processedFilePath, code);
|
|
58
57
|
schemaMap.set(inputPath, processedFilePath);
|
|
59
58
|
return {
|
|
@@ -76,7 +75,7 @@ const viteApiPlugin = async (getConfig) => {
|
|
|
76
75
|
// Load Zuplo-specific processors if in Zuplo environment
|
|
77
76
|
const zuploProcessors = initialConfig.isZuplo
|
|
78
77
|
? await tsImport("../zuplo/with-zuplo-processors.js", import.meta.url)
|
|
79
|
-
.then((m) => m.default(initialConfig.rootDir))
|
|
78
|
+
.then((m) => m.default(initialConfig.__meta.rootDir))
|
|
80
79
|
.catch((e) => {
|
|
81
80
|
// eslint-disable-next-line no-console
|
|
82
81
|
console.warn("Failed to load Zuplo processors", e);
|
|
@@ -84,10 +83,24 @@ const viteApiPlugin = async (getConfig) => {
|
|
|
84
83
|
})
|
|
85
84
|
: [];
|
|
86
85
|
let processedSchemas;
|
|
86
|
+
const tmpDir = path.posix.join(initialConfig.__meta.rootDir, "node_modules/.zudoku/processed");
|
|
87
87
|
return {
|
|
88
88
|
name: "zudoku-api-plugins",
|
|
89
89
|
async buildStart() {
|
|
90
|
-
|
|
90
|
+
await fs.rm(tmpDir, { recursive: true, force: true });
|
|
91
|
+
await fs.mkdir(tmpDir, { recursive: true });
|
|
92
|
+
processedSchemas = await processSchemas(tmpDir, getConfig(), zuploProcessors);
|
|
93
|
+
// Potential files outside of the root dir are not watched by default, so we add all schemas just to be sure
|
|
94
|
+
allSchemaFiles.forEach((file) => this.addWatchFile(file));
|
|
95
|
+
},
|
|
96
|
+
configureServer(server) {
|
|
97
|
+
server.watcher.on("change", async (id) => {
|
|
98
|
+
if (!allSchemaFiles.has(id))
|
|
99
|
+
return;
|
|
100
|
+
processedSchemas = await processSchemas(tmpDir, getConfig(), zuploProcessors);
|
|
101
|
+
allSchemaFiles.forEach((file) => server.watcher.add(file));
|
|
102
|
+
reload(server);
|
|
103
|
+
});
|
|
91
104
|
},
|
|
92
105
|
resolveId(id) {
|
|
93
106
|
if (id === virtualModuleId) {
|
|
@@ -98,26 +111,20 @@ const viteApiPlugin = async (getConfig) => {
|
|
|
98
111
|
if (id !== resolvedVirtualModuleId)
|
|
99
112
|
return;
|
|
100
113
|
const config = getConfig();
|
|
101
|
-
if (config.mode === "standalone") {
|
|
114
|
+
if (config.__meta.mode === "standalone") {
|
|
102
115
|
return [
|
|
103
116
|
"export const configuredApiPlugins = [];",
|
|
104
117
|
"export const configuredApiCatalogPlugins = [];",
|
|
105
118
|
].join("\n");
|
|
106
119
|
}
|
|
107
|
-
const apiPluginOptions = {
|
|
108
|
-
options: {
|
|
109
|
-
examplesDefaultLanguage: config.defaults?.examplesLanguage,
|
|
110
|
-
},
|
|
111
|
-
};
|
|
112
120
|
const code = [
|
|
113
121
|
`import config from "virtual:zudoku-config";`,
|
|
114
|
-
`import { openApiPlugin } from "zudoku/plugins/openapi";`,
|
|
115
|
-
`import { apiCatalogPlugin } from "zudoku/plugins/api-catalog";`,
|
|
116
122
|
`const configuredApiPlugins = [];`,
|
|
117
123
|
`const configuredApiCatalogPlugins = [];`,
|
|
118
|
-
`const apiPluginOptions = ${JSON.stringify(apiPluginOptions)};`,
|
|
119
124
|
];
|
|
120
125
|
if (config.apis) {
|
|
126
|
+
code.push('import { openApiPlugin } from "zudoku/plugins/openapi";');
|
|
127
|
+
code.push(`const apis = Array.isArray(config.apis) ? config.apis : [config.apis]`);
|
|
121
128
|
const apis = Array.isArray(config.apis) ? config.apis : [config.apis];
|
|
122
129
|
const apiMetadata = [];
|
|
123
130
|
const versionMaps = {};
|
|
@@ -145,7 +152,9 @@ const viteApiPlugin = async (getConfig) => {
|
|
|
145
152
|
}
|
|
146
153
|
}
|
|
147
154
|
// Generate API plugin code
|
|
155
|
+
let apiIndex = -1;
|
|
148
156
|
for (const apiConfig of apis) {
|
|
157
|
+
apiIndex++;
|
|
149
158
|
if (apiConfig.type === "file") {
|
|
150
159
|
if (!apiConfig.navigationId ||
|
|
151
160
|
!versionMaps[apiConfig.navigationId]) {
|
|
@@ -154,23 +163,21 @@ const viteApiPlugin = async (getConfig) => {
|
|
|
154
163
|
const schemas = processedSchemas[apiConfig.navigationId];
|
|
155
164
|
if (!schemas?.length)
|
|
156
165
|
continue;
|
|
157
|
-
const tags =
|
|
158
|
-
|
|
159
|
-
|
|
160
|
-
|
|
161
|
-
|
|
162
|
-
|
|
163
|
-
|
|
164
|
-
]));
|
|
165
|
-
// If the API has less than 50 operations, we preload all tags to be shown
|
|
166
|
-
const loadTags = apiConfig.loadTags ?? maxOperationCount < API_COUNT_THRESHOLD;
|
|
167
|
-
code.push("configuredApiPlugins.push(openApiPlugin({", ` ...apiPluginOptions,`, ` type: "file",`, ` input: ${JSON.stringify(versionMaps[apiConfig.navigationId])},`, ` navigationId: ${JSON.stringify(apiConfig.navigationId)},`, ` tagPages: ${JSON.stringify(tags)},`, ` loadTags: ${JSON.stringify(loadTags)},`, ` schemaImports: {`, ...Array.from(schemaMap.entries()).map(([key, schemaPath]) => ` "${key}": () => import("${schemaPath.replace(/\\/g, "/")}"),`), ` },`, "}));");
|
|
166
|
+
const tags = Array.from(new Set(schemas
|
|
167
|
+
.flatMap(({ schema }) => {
|
|
168
|
+
const operations = getAllOperations(schema.paths);
|
|
169
|
+
const slugs = getAllSlugs(operations);
|
|
170
|
+
return getAllTags(schema, slugs.tags);
|
|
171
|
+
})
|
|
172
|
+
.map(({ slug }) => slug)));
|
|
173
|
+
code.push("configuredApiPlugins.push(openApiPlugin({", ` type: "file",`, ` input: ${JSON.stringify(versionMaps[apiConfig.navigationId])},`, ` navigationId: ${JSON.stringify(apiConfig.navigationId)},`, ` tagPages: ${JSON.stringify(tags)},`, ` options: {`, ` examplesLanguage: config.defaults?.apis?.examplesLanguage ?? config.defaults?.examplesLanguage,`, ` disablePlayground: config.defaults?.apis?.disablePlayground,`, ` showVersionSelect: config.defaults?.apis?.showVersionSelect ?? "if-available",`, ` expandAllTags: config.defaults?.apis?.expandAllTags ?? true,`, ` transformExamples: config.defaults?.apis?.transformExamples,`, ` ...(apis[${apiIndex}].options ?? {}),`, ` },`, ` schemaImports: {`, ...Array.from(schemaMap.entries()).map(([key, schemaPath]) => ` "${key}": () => import("${schemaPath.replace(/\\/g, "/")}"),`), ` },`, "}));");
|
|
168
174
|
}
|
|
169
175
|
else {
|
|
170
|
-
code.push(
|
|
176
|
+
code.push("configuredApiPlugins.push(openApiPlugin({", ` ...${JSON.stringify(apiConfig)},`, " options: {", ` examplesLanguage: config.defaults?.apis?.examplesLanguage ?? config.defaults?.examplesLanguage,`, ` disablePlayground: config.defaults?.apis?.disablePlayground,`, ` showVersionSelect: config.defaults?.apis?.showVersionSelect ?? "if-available",`, ` expandAllTags: config.defaults?.apis?.expandAllTags ?? false,`, ` ...${JSON.stringify(apiConfig.options ?? {})},`, " },", "}));");
|
|
171
177
|
}
|
|
172
178
|
}
|
|
173
179
|
if (config.catalogs) {
|
|
180
|
+
code.push('import { apiCatalogPlugin } from "zudoku/plugins/api-catalog";');
|
|
174
181
|
const catalogs = Array.isArray(config.catalogs)
|
|
175
182
|
? config.catalogs
|
|
176
183
|
: [config.catalogs];
|