@mehdad67/apitogo 0.1.24
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 +92 -0
- package/cli.js +13 -0
- package/client.d.ts +8 -0
- package/dist/cli/cli.js +10595 -0
- package/dist/cli/worker.js +190 -0
- package/dist/declarations/app/ZuploBuildConfig.d.ts +47 -0
- package/dist/declarations/app/demo.d.ts +2 -0
- package/dist/declarations/app/entry.client.d.ts +6 -0
- package/dist/declarations/app/entry.server.d.ts +11 -0
- package/dist/declarations/app/env.d.ts +30 -0
- package/dist/declarations/app/main.d.ts +102 -0
- package/dist/declarations/app/polyfills.d.ts +1 -0
- package/dist/declarations/app/processRoutes.d.ts +2 -0
- package/dist/declarations/app/sentry.d.ts +3 -0
- package/dist/declarations/app/standalone.d.ts +2 -0
- package/dist/declarations/app/utils/createRedirectRoutes.d.ts +3 -0
- package/dist/declarations/cli/common/logger.d.ts +1 -0
- package/dist/declarations/cli/common/package-json.d.ts +13 -0
- package/dist/declarations/config/config.d.ts +26 -0
- package/dist/declarations/config/create-plugin.d.ts +2 -0
- package/dist/declarations/config/file-exists.d.ts +1 -0
- package/dist/declarations/config/loader.d.ts +23 -0
- package/dist/declarations/config/resolve-modules.d.ts +34 -0
- package/dist/declarations/config/validators/BuildSchema.d.ts +49 -0
- package/dist/declarations/config/validators/HeaderNavigationSchema.d.ts +15712 -0
- package/dist/declarations/config/validators/InputNavigationSchema.d.ts +409 -0
- package/dist/declarations/config/validators/ModulesSchema.d.ts +417 -0
- package/dist/declarations/config/validators/NavigationSchema.d.ts +64 -0
- package/dist/declarations/config/validators/ProtectedRoutesSchema.d.ts +15 -0
- package/dist/declarations/config/validators/ZudokuConfig.d.ts +7203 -0
- package/dist/declarations/config/validators/icon-types.d.ts +2 -0
- package/dist/declarations/config/validators/reason-codes.d.ts +6 -0
- package/dist/declarations/index.d.ts +20 -0
- package/dist/declarations/lib/MissingIcon.d.ts +2 -0
- package/dist/declarations/lib/assets/language-icons/bun.d.ts +3 -0
- package/dist/declarations/lib/assets/language-icons/c.d.ts +3 -0
- package/dist/declarations/lib/assets/language-icons/commonlisp.d.ts +3 -0
- package/dist/declarations/lib/assets/language-icons/cpp.d.ts +3 -0
- package/dist/declarations/lib/assets/language-icons/csharp.d.ts +3 -0
- package/dist/declarations/lib/assets/language-icons/css.d.ts +3 -0
- package/dist/declarations/lib/assets/language-icons/dart.d.ts +3 -0
- package/dist/declarations/lib/assets/language-icons/elixir.d.ts +3 -0
- package/dist/declarations/lib/assets/language-icons/go.d.ts +3 -0
- package/dist/declarations/lib/assets/language-icons/graphql.d.ts +3 -0
- package/dist/declarations/lib/assets/language-icons/html.d.ts +3 -0
- package/dist/declarations/lib/assets/language-icons/java.d.ts +3 -0
- package/dist/declarations/lib/assets/language-icons/javascript.d.ts +3 -0
- package/dist/declarations/lib/assets/language-icons/json.d.ts +3 -0
- package/dist/declarations/lib/assets/language-icons/kotlin.d.ts +3 -0
- package/dist/declarations/lib/assets/language-icons/markdown.d.ts +3 -0
- package/dist/declarations/lib/assets/language-icons/mdx.d.ts +3 -0
- package/dist/declarations/lib/assets/language-icons/npm.d.ts +3 -0
- package/dist/declarations/lib/assets/language-icons/objectivec.d.ts +3 -0
- package/dist/declarations/lib/assets/language-icons/ocaml.d.ts +3 -0
- package/dist/declarations/lib/assets/language-icons/php.d.ts +3 -0
- package/dist/declarations/lib/assets/language-icons/pnpm.d.ts +3 -0
- package/dist/declarations/lib/assets/language-icons/powershell.d.ts +3 -0
- package/dist/declarations/lib/assets/language-icons/python.d.ts +3 -0
- package/dist/declarations/lib/assets/language-icons/react.d.ts +3 -0
- package/dist/declarations/lib/assets/language-icons/ruby.d.ts +3 -0
- package/dist/declarations/lib/assets/language-icons/rust.d.ts +3 -0
- package/dist/declarations/lib/assets/language-icons/scala.d.ts +3 -0
- package/dist/declarations/lib/assets/language-icons/shell.d.ts +3 -0
- package/dist/declarations/lib/assets/language-icons/swift.d.ts +3 -0
- package/dist/declarations/lib/assets/language-icons/toml.d.ts +3 -0
- package/dist/declarations/lib/assets/language-icons/typescript.d.ts +3 -0
- package/dist/declarations/lib/assets/language-icons/xml.d.ts +3 -0
- package/dist/declarations/lib/assets/language-icons/yaml.d.ts +3 -0
- package/dist/declarations/lib/assets/language-icons/yarn.d.ts +3 -0
- package/dist/declarations/lib/assets/language-icons/zig.d.ts +3 -0
- package/dist/declarations/lib/authentication/AuthenticationPlugin.d.ts +10 -0
- package/dist/declarations/lib/authentication/authentication.d.ts +22 -0
- package/dist/declarations/lib/authentication/components/CallbackHandler.d.ts +3 -0
- package/dist/declarations/lib/authentication/components/OAuthErrorPage.d.ts +3 -0
- package/dist/declarations/lib/authentication/components/SignIn.d.ts +1 -0
- package/dist/declarations/lib/authentication/components/SignOut.d.ts +1 -0
- package/dist/declarations/lib/authentication/components/SignUp.d.ts +1 -0
- package/dist/declarations/lib/authentication/constants.d.ts +1 -0
- package/dist/declarations/lib/authentication/errors.d.ts +8 -0
- package/dist/declarations/lib/authentication/hook.d.ts +29 -0
- package/dist/declarations/lib/authentication/providers/auth0.d.ts +4 -0
- package/dist/declarations/lib/authentication/providers/azureb2c.d.ts +41 -0
- package/dist/declarations/lib/authentication/providers/clerk.d.ts +14 -0
- package/dist/declarations/lib/authentication/providers/firebase.d.ts +14 -0
- package/dist/declarations/lib/authentication/providers/openid.d.ts +58 -0
- package/dist/declarations/lib/authentication/providers/supabase.d.ts +14 -0
- package/dist/declarations/lib/authentication/providers/util.d.ts +1 -0
- package/dist/declarations/lib/authentication/state.d.ts +49 -0
- package/dist/declarations/lib/authentication/ui/AuthCard.d.ts +6 -0
- package/dist/declarations/lib/authentication/ui/EmailLinkCallbackUi.d.ts +4 -0
- package/dist/declarations/lib/authentication/ui/EmailLinkSentUi.d.ts +3 -0
- package/dist/declarations/lib/authentication/ui/EmailLinkSignInUi.d.ts +3 -0
- package/dist/declarations/lib/authentication/ui/EmailVerificationUi.d.ts +4 -0
- package/dist/declarations/lib/authentication/ui/ZudokuAuthUi.d.ts +34 -0
- package/dist/declarations/lib/authentication/ui/icons/Apple.d.ts +3 -0
- package/dist/declarations/lib/authentication/ui/icons/Facebook.d.ts +3 -0
- package/dist/declarations/lib/authentication/ui/icons/Github.d.ts +3 -0
- package/dist/declarations/lib/authentication/ui/icons/Google.d.ts +3 -0
- package/dist/declarations/lib/authentication/ui/icons/Microsoft.d.ts +3 -0
- package/dist/declarations/lib/authentication/ui/icons/X.d.ts +3 -0
- package/dist/declarations/lib/authentication/utils/relativeRedirectUrl.d.ts +1 -0
- package/dist/declarations/lib/components/AiAssistantMenuItems.d.ts +6 -0
- package/dist/declarations/lib/components/AnchorLink.d.ts +2 -0
- package/dist/declarations/lib/components/Autocomplete.d.ts +15 -0
- package/dist/declarations/lib/components/Banner.d.ts +1 -0
- package/dist/declarations/lib/components/Bootstrap.d.ts +17 -0
- package/dist/declarations/lib/components/BuildCheck.d.ts +5 -0
- package/dist/declarations/lib/components/CategoryHeading.d.ts +5 -0
- package/dist/declarations/lib/components/ClientOnly.d.ts +6 -0
- package/dist/declarations/lib/components/DeveloperHint.d.ts +5 -0
- package/dist/declarations/lib/components/ErrorPage.d.ts +6 -0
- package/dist/declarations/lib/components/Footer.d.ts +1 -0
- package/dist/declarations/lib/components/Framed.d.ts +7 -0
- package/dist/declarations/lib/components/Header.d.ts +1 -0
- package/dist/declarations/lib/components/HeaderNavigation.d.ts +1 -0
- package/dist/declarations/lib/components/Heading.d.ts +14 -0
- package/dist/declarations/lib/components/InlineCode.d.ts +2 -0
- package/dist/declarations/lib/components/LandingLayout.d.ts +4 -0
- package/dist/declarations/lib/components/LanguageIcon.d.ts +3 -0
- package/dist/declarations/lib/components/Layout.d.ts +4 -0
- package/dist/declarations/lib/components/Main.d.ts +2 -0
- package/dist/declarations/lib/components/Markdown.d.ts +6 -0
- package/dist/declarations/lib/components/Mermaid.d.ts +8 -0
- package/dist/declarations/lib/components/Meta.d.ts +2 -0
- package/dist/declarations/lib/components/MobileTopNavigation.d.ts +1 -0
- package/dist/declarations/lib/components/MultiSelect.d.ts +9 -0
- package/dist/declarations/lib/components/NotFoundPage.d.ts +1 -0
- package/dist/declarations/lib/components/PageProgress.d.ts +1 -0
- package/dist/declarations/lib/components/PagefindSearchMeta.d.ts +4 -0
- package/dist/declarations/lib/components/Pagination.d.ts +11 -0
- package/dist/declarations/lib/components/PathRenderer.d.ts +11 -0
- package/dist/declarations/lib/components/PluginHeads.d.ts +6 -0
- package/dist/declarations/lib/components/Search.d.ts +3 -0
- package/dist/declarations/lib/components/Slot.d.ts +17 -0
- package/dist/declarations/lib/components/Spinner.d.ts +3 -0
- package/dist/declarations/lib/components/StatusPage.d.ts +7 -0
- package/dist/declarations/lib/components/ThemeSwitch.d.ts +1 -0
- package/dist/declarations/lib/components/TopNavigation.d.ts +14 -0
- package/dist/declarations/lib/components/Typography.d.ts +3 -0
- package/dist/declarations/lib/components/Zudoku.d.ts +15 -0
- package/dist/declarations/lib/components/cache.d.ts +9 -0
- package/dist/declarations/lib/components/context/RenderContext.d.ts +5 -0
- package/dist/declarations/lib/components/context/RouterEventsEmitter.d.ts +1 -0
- package/dist/declarations/lib/components/context/SlotProvider.d.ts +26 -0
- package/dist/declarations/lib/components/context/ViewportAnchorContext.d.ts +13 -0
- package/dist/declarations/lib/components/context/ZudokuContext.d.ts +15 -0
- package/dist/declarations/lib/components/context/ZudokuProvider.d.ts +8 -0
- package/dist/declarations/lib/components/context/ZudokuReactContext.d.ts +6 -0
- package/dist/declarations/lib/components/index.d.ts +25 -0
- package/dist/declarations/lib/components/navigation/Navigation.d.ts +5 -0
- package/dist/declarations/lib/components/navigation/NavigationBadge.d.ts +26 -0
- package/dist/declarations/lib/components/navigation/NavigationCategory.d.ts +5 -0
- package/dist/declarations/lib/components/navigation/NavigationFilterContext.d.ts +8 -0
- package/dist/declarations/lib/components/navigation/NavigationFilterInput.d.ts +3 -0
- package/dist/declarations/lib/components/navigation/NavigationItem.d.ts +6 -0
- package/dist/declarations/lib/components/navigation/NavigationWrapper.d.ts +7 -0
- package/dist/declarations/lib/components/navigation/PoweredByZudoku.d.ts +3 -0
- package/dist/declarations/lib/components/navigation/Toc.d.ts +4 -0
- package/dist/declarations/lib/components/navigation/ZuploLogo.d.ts +3 -0
- package/dist/declarations/lib/components/navigation/utils.d.ts +31 -0
- package/dist/declarations/lib/core/RouteGuard.d.ts +2 -0
- package/dist/declarations/lib/core/ZudokuContext.d.ts +124 -0
- package/dist/declarations/lib/core/plugins.d.ts +74 -0
- package/dist/declarations/lib/core/react-query.d.ts +1 -0
- package/dist/declarations/lib/core/router.d.ts +1 -0
- package/dist/declarations/lib/core/transform-config.d.ts +4 -0
- package/dist/declarations/lib/demo/DemoAnnouncement.d.ts +2 -0
- package/dist/declarations/lib/errors/ErrorAlert.d.ts +3 -0
- package/dist/declarations/lib/errors/ErrorMessage.d.ts +3 -0
- package/dist/declarations/lib/errors/RouterError.d.ts +3 -0
- package/dist/declarations/lib/errors/ServerError.d.ts +3 -0
- package/dist/declarations/lib/errors/TopLevelError.d.ts +2 -0
- package/dist/declarations/lib/hooks/index.d.ts +8 -0
- package/dist/declarations/lib/hooks/useEvent.d.ts +5 -0
- package/dist/declarations/lib/hooks/useHighlighter.d.ts +2 -0
- package/dist/declarations/lib/hooks/useHotkey.d.ts +4 -0
- package/dist/declarations/lib/icons.d.ts +2 -0
- package/dist/declarations/lib/navigation/applyRules.d.ts +8 -0
- package/dist/declarations/lib/navigation/pathMatcher.d.ts +11 -0
- package/dist/declarations/lib/oas/graphql/circular.d.ts +3 -0
- package/dist/declarations/lib/oas/graphql/constants.d.ts +2 -0
- package/dist/declarations/lib/oas/graphql/index.d.ts +33 -0
- package/dist/declarations/lib/oas/parser/dereference/index.d.ts +5 -0
- package/dist/declarations/lib/oas/parser/dereference/resolveRef.d.ts +2 -0
- package/dist/declarations/lib/oas/parser/index.d.ts +25 -0
- package/dist/declarations/lib/oas/parser/upgrade/index.d.ts +4 -0
- package/dist/declarations/lib/plugins/api-catalog/Catalog.d.ts +4 -0
- package/dist/declarations/lib/plugins/api-catalog/index.d.ts +31 -0
- package/dist/declarations/lib/plugins/api-keys/CreateApiKey.d.ts +5 -0
- package/dist/declarations/lib/plugins/api-keys/CreateApiKeyDialog.d.ts +11 -0
- package/dist/declarations/lib/plugins/api-keys/SettingsApiKeys.d.ts +4 -0
- package/dist/declarations/lib/plugins/api-keys/index.d.ts +52 -0
- package/dist/declarations/lib/plugins/api-keys/settings/ApiKeyItem.d.ts +12 -0
- package/dist/declarations/lib/plugins/api-keys/settings/ApiKeyList.d.ts +4 -0
- package/dist/declarations/lib/plugins/api-keys/settings/RevealApiKey.d.ts +6 -0
- package/dist/declarations/lib/plugins/custom-pages/index.d.ts +8 -0
- package/dist/declarations/lib/plugins/markdown/MdxPage.d.ts +14 -0
- package/dist/declarations/lib/plugins/markdown/assets/ChatGPTLogo.d.ts +2 -0
- package/dist/declarations/lib/plugins/markdown/assets/ClaudeLogo.d.ts +2 -0
- package/dist/declarations/lib/plugins/markdown/index.d.ts +34 -0
- package/dist/declarations/lib/plugins/openapi/ApiHeader.d.ts +10 -0
- package/dist/declarations/lib/plugins/openapi/CollapsibleCode.d.ts +6 -0
- package/dist/declarations/lib/plugins/openapi/ColorizedParam.d.ts +20 -0
- package/dist/declarations/lib/plugins/openapi/DownloadSchemaButton.d.ts +3 -0
- package/dist/declarations/lib/plugins/openapi/Endpoint.d.ts +1 -0
- package/dist/declarations/lib/plugins/openapi/GeneratedExampleSidecarBox.d.ts +5 -0
- package/dist/declarations/lib/plugins/openapi/MCPEndpoint.d.ts +5 -0
- package/dist/declarations/lib/plugins/openapi/OasProvider.d.ts +8 -0
- package/dist/declarations/lib/plugins/openapi/OperationList.d.ts +5 -0
- package/dist/declarations/lib/plugins/openapi/OperationListItem.d.ts +10 -0
- package/dist/declarations/lib/plugins/openapi/ParamInfos.d.ts +6 -0
- package/dist/declarations/lib/plugins/openapi/ParameterList.d.ts +8 -0
- package/dist/declarations/lib/plugins/openapi/ParameterListItem.d.ts +7 -0
- package/dist/declarations/lib/plugins/openapi/PlaygroundDialogWrapper.d.ts +7 -0
- package/dist/declarations/lib/plugins/openapi/RequestBodySidecarBox.d.ts +12 -0
- package/dist/declarations/lib/plugins/openapi/ResponsesSidecarBox.d.ts +8 -0
- package/dist/declarations/lib/plugins/openapi/SchemaInfo.d.ts +1 -0
- package/dist/declarations/lib/plugins/openapi/SchemaList.d.ts +1 -0
- package/dist/declarations/lib/plugins/openapi/Sidecar.d.ts +11 -0
- package/dist/declarations/lib/plugins/openapi/SidecarBox.d.ts +9 -0
- package/dist/declarations/lib/plugins/openapi/SidecarExamples.d.ts +14 -0
- package/dist/declarations/lib/plugins/openapi/SimpleSelect.d.ts +11 -0
- package/dist/declarations/lib/plugins/openapi/client/GraphQLClient.d.ts +8 -0
- package/dist/declarations/lib/plugins/openapi/client/GraphQLContext.d.ts +7 -0
- package/dist/declarations/lib/plugins/openapi/client/createServer.d.ts +3 -0
- package/dist/declarations/lib/plugins/openapi/client/useCreateQuery.d.ts +14 -0
- package/dist/declarations/lib/plugins/openapi/components/ConstValue.d.ts +5 -0
- package/dist/declarations/lib/plugins/openapi/components/EnumValues.d.ts +5 -0
- package/dist/declarations/lib/plugins/openapi/components/NonHighlightedCode.d.ts +4 -0
- package/dist/declarations/lib/plugins/openapi/components/ResponseContent.d.ts +12 -0
- package/dist/declarations/lib/plugins/openapi/components/SelectOnClick.d.ts +5 -0
- package/dist/declarations/lib/plugins/openapi/context.d.ts +5 -0
- package/dist/declarations/lib/plugins/openapi/graphql/fragment-masking.d.ts +19 -0
- package/dist/declarations/lib/plugins/openapi/graphql/gql.d.ts +8 -0
- package/dist/declarations/lib/plugins/openapi/graphql/graphql.d.ts +528 -0
- package/dist/declarations/lib/plugins/openapi/graphql/index.d.ts +2 -0
- package/dist/declarations/lib/plugins/openapi/index.d.ts +11 -0
- package/dist/declarations/lib/plugins/openapi/interfaces.d.ts +94 -0
- package/dist/declarations/lib/plugins/openapi/playground/BodyPanel.d.ts +5 -0
- package/dist/declarations/lib/plugins/openapi/playground/CollapsibleHeader.d.ts +8 -0
- package/dist/declarations/lib/plugins/openapi/playground/ExamplesDropdown.d.ts +6 -0
- package/dist/declarations/lib/plugins/openapi/playground/Headers.d.ts +7 -0
- package/dist/declarations/lib/plugins/openapi/playground/IdentityDialog.d.ts +11 -0
- package/dist/declarations/lib/plugins/openapi/playground/IdentitySelector.d.ts +7 -0
- package/dist/declarations/lib/plugins/openapi/playground/ParamsGrid.d.ts +17 -0
- package/dist/declarations/lib/plugins/openapi/playground/PathParams.d.ts +6 -0
- package/dist/declarations/lib/plugins/openapi/playground/Playground.d.ts +89 -0
- package/dist/declarations/lib/plugins/openapi/playground/PlaygroundDialog.d.ts +5 -0
- package/dist/declarations/lib/plugins/openapi/playground/QueryParams.d.ts +6 -0
- package/dist/declarations/lib/plugins/openapi/playground/RequestLoginDialog.d.ts +8 -0
- package/dist/declarations/lib/plugins/openapi/playground/createUrl.d.ts +2 -0
- package/dist/declarations/lib/plugins/openapi/playground/fileUtils.d.ts +3 -0
- package/dist/declarations/lib/plugins/openapi/playground/rememberedIdentity.d.ts +19 -0
- package/dist/declarations/lib/plugins/openapi/playground/request-panel/MultipartField.d.ts +8 -0
- package/dist/declarations/lib/plugins/openapi/playground/request-panel/UrlPath.d.ts +3 -0
- package/dist/declarations/lib/plugins/openapi/playground/request-panel/UrlQueryParams.d.ts +1 -0
- package/dist/declarations/lib/plugins/openapi/playground/request-panel/useKeyValueFieldManager.d.ts +40 -0
- package/dist/declarations/lib/plugins/openapi/playground/result-panel/AudioPlayer.d.ts +6 -0
- package/dist/declarations/lib/plugins/openapi/playground/result-panel/ResponseStatusBar.d.ts +8 -0
- package/dist/declarations/lib/plugins/openapi/playground/result-panel/ResponseTab.d.ts +14 -0
- package/dist/declarations/lib/plugins/openapi/playground/result-panel/ResultPanel.d.ts +11 -0
- package/dist/declarations/lib/plugins/openapi/playground/result-panel/convertToTypes.d.ts +10 -0
- package/dist/declarations/lib/plugins/openapi/playground/serializeQueryParams.d.ts +4 -0
- package/dist/declarations/lib/plugins/openapi/playground/useRememberSkipLoginDialog.d.ts +18 -0
- package/dist/declarations/lib/plugins/openapi/processors/removeExtensions.d.ts +8 -0
- package/dist/declarations/lib/plugins/openapi/processors/removeParameters.d.ts +12 -0
- package/dist/declarations/lib/plugins/openapi/processors/removePaths.d.ts +13 -0
- package/dist/declarations/lib/plugins/openapi/processors/traverse.d.ts +1 -0
- package/dist/declarations/lib/plugins/openapi/schema/SchemaExampleAndDefault.d.ts +4 -0
- package/dist/declarations/lib/plugins/openapi/schema/SchemaPropertyItem.d.ts +8 -0
- package/dist/declarations/lib/plugins/openapi/schema/SchemaView.d.ts +7 -0
- package/dist/declarations/lib/plugins/openapi/schema/UnionView.d.ts +5 -0
- package/dist/declarations/lib/plugins/openapi/schema/union-helpers.d.ts +28 -0
- package/dist/declarations/lib/plugins/openapi/schema/utils.d.ts +9 -0
- package/dist/declarations/lib/plugins/openapi/state.d.ts +24 -0
- package/dist/declarations/lib/plugins/openapi/util/buildTagCategories.d.ts +12 -0
- package/dist/declarations/lib/plugins/openapi/util/createHttpSnippet.d.ts +11 -0
- package/dist/declarations/lib/plugins/openapi/util/createNavigationCategory.d.ts +9 -0
- package/dist/declarations/lib/plugins/openapi/util/generateSchemaExample.d.ts +2 -0
- package/dist/declarations/lib/plugins/openapi/util/getRoutes.d.ts +18 -0
- package/dist/declarations/lib/plugins/openapi/util/methodColorMap.d.ts +2 -0
- package/dist/declarations/lib/plugins/openapi/util/methodToColor.d.ts +20 -0
- package/dist/declarations/lib/plugins/openapi/util/sanitizeMarkdownForMetatag.d.ts +1 -0
- package/dist/declarations/lib/plugins/openapi/util/useWarmupSchema.d.ts +1 -0
- package/dist/declarations/lib/plugins/search-inkeep/index.d.ts +8 -0
- package/dist/declarations/lib/plugins/search-inkeep/inkeep.d.ts +6 -0
- package/dist/declarations/lib/plugins/search-pagefind/IndexingDialog.d.ts +3 -0
- package/dist/declarations/lib/plugins/search-pagefind/PagefindSearch.d.ts +6 -0
- package/dist/declarations/lib/plugins/search-pagefind/ResultList.d.ts +8 -0
- package/dist/declarations/lib/plugins/search-pagefind/get-results.d.ts +10 -0
- package/dist/declarations/lib/plugins/search-pagefind/index.d.ts +6 -0
- package/dist/declarations/lib/plugins/search-pagefind/types.d.ts +85 -0
- package/dist/declarations/lib/shiki-constants.d.ts +3 -0
- package/dist/declarations/lib/shiki.d.ts +31 -0
- package/dist/declarations/lib/testing/index.d.ts +17 -0
- package/dist/declarations/lib/ui/Accordion.d.ts +7 -0
- package/dist/declarations/lib/ui/ActionButton.d.ts +6 -0
- package/dist/declarations/lib/ui/Alert.d.ts +11 -0
- package/dist/declarations/lib/ui/AlertDialog.d.ts +17 -0
- package/dist/declarations/lib/ui/AspectRatio.d.ts +3 -0
- package/dist/declarations/lib/ui/Badge.d.ts +9 -0
- package/dist/declarations/lib/ui/Breadcrumb.d.ts +19 -0
- package/dist/declarations/lib/ui/Button.d.ts +10 -0
- package/dist/declarations/lib/ui/ButtonGroup.d.ts +11 -0
- package/dist/declarations/lib/ui/Callout.d.ts +53 -0
- package/dist/declarations/lib/ui/Card.d.ts +11 -0
- package/dist/declarations/lib/ui/Carousel.d.ts +18 -0
- package/dist/declarations/lib/ui/Checkbox.d.ts +4 -0
- package/dist/declarations/lib/ui/CodeBlock.d.ts +21 -0
- package/dist/declarations/lib/ui/CodeTabPanel.d.ts +11 -0
- package/dist/declarations/lib/ui/CodeTabs.d.ts +8 -0
- package/dist/declarations/lib/ui/Collapsible.d.ts +5 -0
- package/dist/declarations/lib/ui/Command.d.ts +94 -0
- package/dist/declarations/lib/ui/Dialog.d.ts +15 -0
- package/dist/declarations/lib/ui/DismissibleAlert.d.ts +13 -0
- package/dist/declarations/lib/ui/Drawer.d.ts +24 -0
- package/dist/declarations/lib/ui/DropdownMenu.d.ts +25 -0
- package/dist/declarations/lib/ui/EmbeddedCodeBlock.d.ts +16 -0
- package/dist/declarations/lib/ui/Form.d.ts +23 -0
- package/dist/declarations/lib/ui/Frame.d.ts +8 -0
- package/dist/declarations/lib/ui/HoverCard.d.ts +6 -0
- package/dist/declarations/lib/ui/Input.d.ts +4 -0
- package/dist/declarations/lib/ui/InputGroup.d.ts +16 -0
- package/dist/declarations/lib/ui/Item.d.ts +25 -0
- package/dist/declarations/lib/ui/Kbd.d.ts +3 -0
- package/dist/declarations/lib/ui/Label.d.ts +5 -0
- package/dist/declarations/lib/ui/NativeSelect.d.ts +5 -0
- package/dist/declarations/lib/ui/NavigationMenu.d.ts +14 -0
- package/dist/declarations/lib/ui/Pagination.d.ts +28 -0
- package/dist/declarations/lib/ui/Popover.d.ts +6 -0
- package/dist/declarations/lib/ui/Progress.d.ts +4 -0
- package/dist/declarations/lib/ui/RadioGroup.d.ts +5 -0
- package/dist/declarations/lib/ui/ReactComponentDoc.d.ts +20 -0
- package/dist/declarations/lib/ui/ScrollArea.d.ts +5 -0
- package/dist/declarations/lib/ui/Secret.d.ts +18 -0
- package/dist/declarations/lib/ui/Select.d.ts +15 -0
- package/dist/declarations/lib/ui/Separator.d.ts +4 -0
- package/dist/declarations/lib/ui/Skeleton.d.ts +2 -0
- package/dist/declarations/lib/ui/Slider.d.ts +4 -0
- package/dist/declarations/lib/ui/Stepper.d.ts +3 -0
- package/dist/declarations/lib/ui/Switch.d.ts +4 -0
- package/dist/declarations/lib/ui/SyntaxHighlight.d.ts +18 -0
- package/dist/declarations/lib/ui/Tabs.d.ts +7 -0
- package/dist/declarations/lib/ui/Textarea.d.ts +4 -0
- package/dist/declarations/lib/ui/Toggle.d.ts +12 -0
- package/dist/declarations/lib/ui/ToggleGroup.d.ts +12 -0
- package/dist/declarations/lib/ui/Tooltip.d.ts +8 -0
- package/dist/declarations/lib/ui/Value.d.ts +5 -0
- package/dist/declarations/lib/ui/util.d.ts +3 -0
- package/dist/declarations/lib/util/MdxComponents.d.ts +47 -0
- package/dist/declarations/lib/util/cn.d.ts +2 -0
- package/dist/declarations/lib/util/createVariantComponent.d.ts +12 -0
- package/dist/declarations/lib/util/flattenAllOf.d.ts +2 -0
- package/dist/declarations/lib/util/hastToJsx.d.ts +7 -0
- package/dist/declarations/lib/util/humanFileSize.d.ts +1 -0
- package/dist/declarations/lib/util/invariant.d.ts +13 -0
- package/dist/declarations/lib/util/joinUrl.d.ts +1 -0
- package/dist/declarations/lib/util/logInit.d.ts +1 -0
- package/dist/declarations/lib/util/objectEntries.d.ts +4 -0
- package/dist/declarations/lib/util/os.d.ts +2 -0
- package/dist/declarations/lib/util/pastellize.d.ts +4 -0
- package/dist/declarations/lib/util/problemJson.d.ts +10 -0
- package/dist/declarations/lib/util/readFrontmatter.d.ts +6 -0
- package/dist/declarations/lib/util/renderIf.d.ts +1 -0
- package/dist/declarations/lib/util/scrollIntoViewIfNeeded.d.ts +1 -0
- package/dist/declarations/lib/util/slugify.d.ts +3 -0
- package/dist/declarations/lib/util/syncZustandState.d.ts +5 -0
- package/dist/declarations/lib/util/traverse.d.ts +4 -0
- package/dist/declarations/lib/util/types.d.ts +7 -0
- package/dist/declarations/lib/util/url.d.ts +1 -0
- package/dist/declarations/lib/util/useCopyToClipboard.d.ts +1 -0
- package/dist/declarations/lib/util/useExposedProps.d.ts +9 -0
- package/dist/declarations/lib/util/useIsomorphicLayoutEffect.d.ts +3 -0
- package/dist/declarations/lib/util/useLatest.d.ts +1 -0
- package/dist/declarations/lib/util/useOnScreen.d.ts +5 -0
- package/dist/declarations/lib/util/useScrollToAnchor.d.ts +2 -0
- package/dist/declarations/lib/util/useScrollToTop.d.ts +1 -0
- package/dist/declarations/vite/index.d.ts +2 -0
- package/dist/declarations/vite/mdx/rehype-extract-toc-with-jsx.d.ts +17 -0
- package/dist/declarations/vite/plugin-theme.d.ts +8 -0
- package/dist/declarations/vite/shadcn-registry.d.ts +20 -0
- package/dist/declarations/zuplo/with-zuplo.d.ts +3 -0
- package/dist/flat-config.d.ts +641 -0
- package/docs/components/alert.mdx +130 -0
- package/docs/components/badge.mdx +70 -0
- package/docs/components/button.mdx +132 -0
- package/docs/components/callout.mdx +112 -0
- package/docs/components/card.mdx +104 -0
- package/docs/components/checkbox.mdx +72 -0
- package/docs/components/client-only.mdx +79 -0
- package/docs/components/code-tabs.mdx +179 -0
- package/docs/components/dialog.mdx +167 -0
- package/docs/components/head.mdx +200 -0
- package/docs/components/icons.mdx +27 -0
- package/docs/components/input.mdx +96 -0
- package/docs/components/label.mdx +86 -0
- package/docs/components/link.mdx +242 -0
- package/docs/components/markdown.mdx +151 -0
- package/docs/components/mermaid.mdx +81 -0
- package/docs/components/playground.mdx +87 -0
- package/docs/components/secret.mdx +79 -0
- package/docs/components/select.mdx +176 -0
- package/docs/components/shadcn.mdx +73 -0
- package/docs/components/slider.mdx +108 -0
- package/docs/components/slot.mdx +119 -0
- package/docs/components/stepper.mdx +138 -0
- package/docs/components/switch.mdx +96 -0
- package/docs/components/syntax-highlight.mdx +602 -0
- package/docs/components/textarea.mdx +78 -0
- package/docs/components/tooltip.mdx +195 -0
- package/docs/components/typography.mdx +61 -0
- package/docs/concepts/auth-provider-api-identities.md +109 -0
- package/docs/configuration/ai-assistants.md +65 -0
- package/docs/configuration/api-catalog.md +109 -0
- package/docs/configuration/api-reference.md +397 -0
- package/docs/configuration/authentication-auth0.md +174 -0
- package/docs/configuration/authentication-azure-ad.md +238 -0
- package/docs/configuration/authentication-clerk.md +110 -0
- package/docs/configuration/authentication-firebase.md +62 -0
- package/docs/configuration/authentication-pingfederate.md +136 -0
- package/docs/configuration/authentication-supabase.md +226 -0
- package/docs/configuration/authentication.md +200 -0
- package/docs/configuration/build-configuration.mdx +147 -0
- package/docs/configuration/docs.md +282 -0
- package/docs/configuration/footer.mdx +214 -0
- package/docs/configuration/llms.md +90 -0
- package/docs/configuration/make-config.mdx +90 -0
- package/docs/configuration/navigation.mdx +422 -0
- package/docs/configuration/overview.md +380 -0
- package/docs/configuration/protected-routes.md +150 -0
- package/docs/configuration/search.md +163 -0
- package/docs/configuration/sentry.mdx +44 -0
- package/docs/configuration/site.md +124 -0
- package/docs/configuration/slots.mdx +125 -0
- package/docs/configuration/vite-config.md +18 -0
- package/docs/custom-plugins.md +285 -0
- package/docs/customization/colors-theme.mdx +276 -0
- package/docs/customization/fonts.md +110 -0
- package/docs/deploy/apache-nginx.md +41 -0
- package/docs/deploy/apitogo.md +139 -0
- package/docs/deploy/cloudflare-pages.md +75 -0
- package/docs/deploy/direct-upload.md +18 -0
- package/docs/deploy/github-pages.md +50 -0
- package/docs/deploy/vercel.md +103 -0
- package/docs/deployment.md +21 -0
- package/docs/extending/events.md +124 -0
- package/docs/guides/custom-pages.md +106 -0
- package/docs/guides/environment-variables.md +99 -0
- package/docs/guides/managing-api-keys-and-identities.md +172 -0
- package/docs/guides/mermaid.mdx +70 -0
- package/docs/guides/navigation-migration.md +87 -0
- package/docs/guides/navigation-rules.mdx +203 -0
- package/docs/guides/processors.mdx +234 -0
- package/docs/guides/static-files.md +55 -0
- package/docs/guides/transforming-examples.md +156 -0
- package/docs/guides/using-multiple-apis.md +87 -0
- package/docs/markdown/admonitions.md +128 -0
- package/docs/markdown/code-blocks.md +196 -0
- package/docs/markdown/frontmatter.md +173 -0
- package/docs/markdown/mdx.md +68 -0
- package/docs/markdown/overview.md +275 -0
- package/docs/plugins.md +5 -0
- package/docs/quickstart.md +87 -0
- package/docs/writing.mdx +72 -0
- package/package.json +380 -0
- package/src/app/ZuploBuildConfig.ts +36 -0
- package/src/app/defaultTheme.css +77 -0
- package/src/app/demo-cdn.html +37 -0
- package/src/app/demo.html +21 -0
- package/src/app/demo.tsx +77 -0
- package/src/app/entry.client.tsx +118 -0
- package/src/app/entry.server.tsx +160 -0
- package/src/app/env.ts +40 -0
- package/src/app/font.geist.css +73 -0
- package/src/app/main.css +390 -0
- package/src/app/main.tsx +165 -0
- package/src/app/polyfills.ts +47 -0
- package/src/app/processRoutes.tsx +51 -0
- package/src/app/sentry.ts +24 -0
- package/src/app/standalone.html +23 -0
- package/src/app/standalone.tsx +60 -0
- package/src/app/utils/createRedirectRoutes.ts +11 -0
- package/src/config/config.ts +70 -0
- package/src/config/create-plugin.ts +71 -0
- package/src/config/file-exists.ts +6 -0
- package/src/config/loader.ts +258 -0
- package/src/config/resolve-modules.ts +260 -0
- package/src/config/validators/BuildSchema.ts +95 -0
- package/src/config/validators/HeaderNavigationSchema.ts +41 -0
- package/src/config/validators/InputNavigationSchema.test-d.ts +178 -0
- package/src/config/validators/InputNavigationSchema.ts +206 -0
- package/src/config/validators/ModulesSchema.ts +312 -0
- package/src/config/validators/NavigationSchema.ts +352 -0
- package/src/config/validators/ProtectedRoutesSchema.ts +35 -0
- package/src/config/validators/ZudokuConfig.ts +759 -0
- package/src/config/validators/auth.ts +3 -0
- package/src/config/validators/icon-types.ts +1955 -0
- package/src/config/validators/reason-codes.ts +7 -0
- package/src/env.d.ts +11 -0
- package/src/index.ts +74 -0
- package/src/lib/MissingIcon.tsx +22 -0
- package/src/lib/assets/language-icons/bun.tsx +50 -0
- package/src/lib/assets/language-icons/c.tsx +31 -0
- package/src/lib/assets/language-icons/commonlisp.tsx +22 -0
- package/src/lib/assets/language-icons/cpp.tsx +35 -0
- package/src/lib/assets/language-icons/csharp.tsx +35 -0
- package/src/lib/assets/language-icons/css.tsx +36 -0
- package/src/lib/assets/language-icons/dart.tsx +39 -0
- package/src/lib/assets/language-icons/elixir.tsx +19 -0
- package/src/lib/assets/language-icons/go.tsx +19 -0
- package/src/lib/assets/language-icons/graphql.tsx +19 -0
- package/src/lib/assets/language-icons/html.tsx +24 -0
- package/src/lib/assets/language-icons/java.tsx +35 -0
- package/src/lib/assets/language-icons/javascript.tsx +11 -0
- package/src/lib/assets/language-icons/json.tsx +19 -0
- package/src/lib/assets/language-icons/kotlin.tsx +30 -0
- package/src/lib/assets/language-icons/markdown.tsx +19 -0
- package/src/lib/assets/language-icons/mdx.tsx +23 -0
- package/src/lib/assets/language-icons/npm.tsx +15 -0
- package/src/lib/assets/language-icons/objectivec.tsx +23 -0
- package/src/lib/assets/language-icons/ocaml.tsx +34 -0
- package/src/lib/assets/language-icons/php.tsx +19 -0
- package/src/lib/assets/language-icons/pnpm.tsx +32 -0
- package/src/lib/assets/language-icons/powershell.tsx +27 -0
- package/src/lib/assets/language-icons/python.tsx +23 -0
- package/src/lib/assets/language-icons/react.tsx +21 -0
- package/src/lib/assets/language-icons/ruby.tsx +19 -0
- package/src/lib/assets/language-icons/rust.tsx +19 -0
- package/src/lib/assets/language-icons/scala.tsx +19 -0
- package/src/lib/assets/language-icons/shell.tsx +19 -0
- package/src/lib/assets/language-icons/swift.tsx +19 -0
- package/src/lib/assets/language-icons/toml.tsx +23 -0
- package/src/lib/assets/language-icons/typescript.tsx +23 -0
- package/src/lib/assets/language-icons/xml.tsx +19 -0
- package/src/lib/assets/language-icons/yaml.tsx +23 -0
- package/src/lib/assets/language-icons/yarn.tsx +17 -0
- package/src/lib/assets/language-icons/zig.tsx +32 -0
- package/src/lib/auth/issuer.ts +31 -0
- package/src/lib/authentication/AuthenticationPlugin.tsx +33 -0
- package/src/lib/authentication/authentication.ts +48 -0
- package/src/lib/authentication/components/CallbackHandler.tsx +45 -0
- package/src/lib/authentication/components/OAuthErrorPage.tsx +197 -0
- package/src/lib/authentication/components/SignIn.tsx +46 -0
- package/src/lib/authentication/components/SignOut.tsx +15 -0
- package/src/lib/authentication/components/SignUp.tsx +48 -0
- package/src/lib/authentication/constants.ts +1 -0
- package/src/lib/authentication/errors.ts +34 -0
- package/src/lib/authentication/hook.ts +139 -0
- package/src/lib/authentication/providers/auth0.tsx +91 -0
- package/src/lib/authentication/providers/azureb2c.tsx +223 -0
- package/src/lib/authentication/providers/clerk.tsx +224 -0
- package/src/lib/authentication/providers/firebase.tsx +486 -0
- package/src/lib/authentication/providers/openid.tsx +516 -0
- package/src/lib/authentication/providers/supabase.tsx +412 -0
- package/src/lib/authentication/providers/util.ts +26 -0
- package/src/lib/authentication/state.ts +91 -0
- package/src/lib/authentication/ui/AuthCard.tsx +7 -0
- package/src/lib/authentication/ui/EmailLinkCallbackUi.tsx +129 -0
- package/src/lib/authentication/ui/EmailLinkSentUi.tsx +105 -0
- package/src/lib/authentication/ui/EmailLinkSignInUi.tsx +100 -0
- package/src/lib/authentication/ui/EmailVerificationUi.tsx +128 -0
- package/src/lib/authentication/ui/ZudokuAuthUi.tsx +620 -0
- package/src/lib/authentication/ui/icons/Apple.tsx +10 -0
- package/src/lib/authentication/ui/icons/Facebook.tsx +15 -0
- package/src/lib/authentication/ui/icons/Github.tsx +16 -0
- package/src/lib/authentication/ui/icons/Google.tsx +16 -0
- package/src/lib/authentication/ui/icons/Microsoft.tsx +12 -0
- package/src/lib/authentication/ui/icons/X.tsx +10 -0
- package/src/lib/authentication/utils/relativeRedirectUrl.ts +16 -0
- package/src/lib/components/AiAssistantMenuItems.tsx +102 -0
- package/src/lib/components/AnchorLink.tsx +24 -0
- package/src/lib/components/Autocomplete.tsx +123 -0
- package/src/lib/components/Banner.tsx +52 -0
- package/src/lib/components/Bootstrap.tsx +77 -0
- package/src/lib/components/BuildCheck.tsx +87 -0
- package/src/lib/components/CategoryHeading.tsx +19 -0
- package/src/lib/components/ClientOnly.tsx +19 -0
- package/src/lib/components/DeveloperHint.tsx +39 -0
- package/src/lib/components/ErrorPage.tsx +26 -0
- package/src/lib/components/Footer.tsx +140 -0
- package/src/lib/components/Framed.tsx +51 -0
- package/src/lib/components/Header.tsx +260 -0
- package/src/lib/components/HeaderNavigation.tsx +148 -0
- package/src/lib/components/Heading.tsx +84 -0
- package/src/lib/components/InlineCode.tsx +15 -0
- package/src/lib/components/LandingLayout.tsx +21 -0
- package/src/lib/components/LanguageIcon.tsx +199 -0
- package/src/lib/components/Layout.tsx +53 -0
- package/src/lib/components/Main.tsx +51 -0
- package/src/lib/components/Markdown.tsx +55 -0
- package/src/lib/components/Mermaid.tsx +74 -0
- package/src/lib/components/Meta.tsx +46 -0
- package/src/lib/components/MobileTopNavigation.tsx +276 -0
- package/src/lib/components/MultiSelect.tsx +86 -0
- package/src/lib/components/NotFoundPage.tsx +37 -0
- package/src/lib/components/PageProgress.tsx +28 -0
- package/src/lib/components/PagefindSearchMeta.tsx +14 -0
- package/src/lib/components/Pagination.tsx +44 -0
- package/src/lib/components/PathRenderer.tsx +61 -0
- package/src/lib/components/PluginHeads.tsx +17 -0
- package/src/lib/components/Search.tsx +70 -0
- package/src/lib/components/Slot.tsx +64 -0
- package/src/lib/components/Spinner.tsx +5 -0
- package/src/lib/components/StatusPage.tsx +96 -0
- package/src/lib/components/ThemeSwitch.tsx +49 -0
- package/src/lib/components/TopNavigation.tsx +103 -0
- package/src/lib/components/Typography.tsx +12 -0
- package/src/lib/components/Zudoku.tsx +106 -0
- package/src/lib/components/cache.ts +27 -0
- package/src/lib/components/context/RenderContext.ts +11 -0
- package/src/lib/components/context/RouterEventsEmitter.tsx +19 -0
- package/src/lib/components/context/SlotProvider.tsx +149 -0
- package/src/lib/components/context/ViewportAnchorContext.tsx +137 -0
- package/src/lib/components/context/ZudokuContext.ts +140 -0
- package/src/lib/components/context/ZudokuProvider.tsx +22 -0
- package/src/lib/components/context/ZudokuReactContext.tsx +17 -0
- package/src/lib/components/index.ts +36 -0
- package/src/lib/components/navigation/Navigation.tsx +51 -0
- package/src/lib/components/navigation/NavigationBadge.tsx +48 -0
- package/src/lib/components/navigation/NavigationCategory.tsx +157 -0
- package/src/lib/components/navigation/NavigationFilterContext.tsx +28 -0
- package/src/lib/components/navigation/NavigationFilterInput.tsx +35 -0
- package/src/lib/components/navigation/NavigationItem.tsx +181 -0
- package/src/lib/components/navigation/NavigationWrapper.tsx +49 -0
- package/src/lib/components/navigation/PoweredByZudoku.tsx +39 -0
- package/src/lib/components/navigation/Toc.tsx +137 -0
- package/src/lib/components/navigation/ZudokuLogo.tsx +25 -0
- package/src/lib/components/navigation/ZuploLogo.tsx +14 -0
- package/src/lib/components/navigation/utils.ts +234 -0
- package/src/lib/core/RouteGuard.tsx +193 -0
- package/src/lib/core/ZudokuContext.ts +271 -0
- package/src/lib/core/plugins.ts +138 -0
- package/src/lib/core/react-query.ts +1 -0
- package/src/lib/core/router.ts +1 -0
- package/src/lib/core/transform-config.ts +67 -0
- package/src/lib/demo/DemoAnnouncement.tsx +17 -0
- package/src/lib/errors/ErrorAlert.tsx +28 -0
- package/src/lib/errors/ErrorMessage.tsx +50 -0
- package/src/lib/errors/RouterError.tsx +18 -0
- package/src/lib/errors/ServerError.tsx +5 -0
- package/src/lib/errors/TopLevelError.tsx +6 -0
- package/src/lib/hooks/index.ts +13 -0
- package/src/lib/hooks/useEvent.ts +41 -0
- package/src/lib/hooks/useHighlighter.ts +15 -0
- package/src/lib/hooks/useHotkey.ts +70 -0
- package/src/lib/icons.ts +2 -0
- package/src/lib/navigation/applyRules.ts +127 -0
- package/src/lib/navigation/pathMatcher.ts +81 -0
- package/src/lib/oas/graphql/circular.ts +69 -0
- package/src/lib/oas/graphql/constants.ts +2 -0
- package/src/lib/oas/graphql/index.ts +791 -0
- package/src/lib/oas/parser/dereference/index.ts +84 -0
- package/src/lib/oas/parser/dereference/resolveRef.ts +32 -0
- package/src/lib/oas/parser/index.ts +129 -0
- package/src/lib/oas/parser/schemas/v3.0.json +1489 -0
- package/src/lib/oas/parser/schemas/v3.1.json +1298 -0
- package/src/lib/oas/parser/upgrade/index.ts +174 -0
- package/src/lib/plugins/api-catalog/Catalog.tsx +80 -0
- package/src/lib/plugins/api-catalog/index.tsx +119 -0
- package/src/lib/plugins/api-keys/CreateApiKey.tsx +128 -0
- package/src/lib/plugins/api-keys/CreateApiKeyDialog.tsx +49 -0
- package/src/lib/plugins/api-keys/ProtectedRoute.tsx +33 -0
- package/src/lib/plugins/api-keys/SettingsApiKeys.tsx +72 -0
- package/src/lib/plugins/api-keys/index.tsx +274 -0
- package/src/lib/plugins/api-keys/settings/ApiKeyItem.tsx +342 -0
- package/src/lib/plugins/api-keys/settings/ApiKeyList.tsx +67 -0
- package/src/lib/plugins/api-keys/settings/RevealApiKey.tsx +127 -0
- package/src/lib/plugins/custom-pages/index.tsx +32 -0
- package/src/lib/plugins/markdown/MdxPage.tsx +260 -0
- package/src/lib/plugins/markdown/assets/ChatGPTLogo.tsx +11 -0
- package/src/lib/plugins/markdown/assets/ClaudeLogo.tsx +19 -0
- package/src/lib/plugins/markdown/index.tsx +62 -0
- package/src/lib/plugins/openapi/ApiHeader.tsx +96 -0
- package/src/lib/plugins/openapi/CollapsibleCode.tsx +88 -0
- package/src/lib/plugins/openapi/ColorizedParam.tsx +115 -0
- package/src/lib/plugins/openapi/DownloadSchemaButton.tsx +94 -0
- package/src/lib/plugins/openapi/Endpoint.tsx +85 -0
- package/src/lib/plugins/openapi/GeneratedExampleSidecarBox.tsx +52 -0
- package/src/lib/plugins/openapi/MCPEndpoint.tsx +273 -0
- package/src/lib/plugins/openapi/OasProvider.tsx +74 -0
- package/src/lib/plugins/openapi/OperationList.tsx +275 -0
- package/src/lib/plugins/openapi/OperationListItem.tsx +183 -0
- package/src/lib/plugins/openapi/ParamInfos.tsx +96 -0
- package/src/lib/plugins/openapi/ParameterList.tsx +53 -0
- package/src/lib/plugins/openapi/ParameterListItem.tsx +161 -0
- package/src/lib/plugins/openapi/PlaygroundDialogWrapper.tsx +67 -0
- package/src/lib/plugins/openapi/RequestBodySidecarBox.tsx +63 -0
- package/src/lib/plugins/openapi/ResponsesSidecarBox.tsx +120 -0
- package/src/lib/plugins/openapi/SchemaInfo.tsx +344 -0
- package/src/lib/plugins/openapi/SchemaList.tsx +113 -0
- package/src/lib/plugins/openapi/Sidecar.tsx +314 -0
- package/src/lib/plugins/openapi/SidecarBox.tsx +57 -0
- package/src/lib/plugins/openapi/SidecarExamples.tsx +177 -0
- package/src/lib/plugins/openapi/SimpleSelect.tsx +46 -0
- package/src/lib/plugins/openapi/client/GraphQLClient.tsx +73 -0
- package/src/lib/plugins/openapi/client/GraphQLContext.tsx +16 -0
- package/src/lib/plugins/openapi/client/createServer.ts +35 -0
- package/src/lib/plugins/openapi/client/useCreateQuery.ts +44 -0
- package/src/lib/plugins/openapi/components/ConstValue.tsx +24 -0
- package/src/lib/plugins/openapi/components/EnumValues.tsx +58 -0
- package/src/lib/plugins/openapi/components/NonHighlightedCode.tsx +22 -0
- package/src/lib/plugins/openapi/components/ResponseContent.tsx +117 -0
- package/src/lib/plugins/openapi/components/SelectOnClick.tsx +29 -0
- package/src/lib/plugins/openapi/context.tsx +16 -0
- package/src/lib/plugins/openapi/graphql/fragment-masking.ts +104 -0
- package/src/lib/plugins/openapi/graphql/gql.ts +95 -0
- package/src/lib/plugins/openapi/graphql/graphql.ts +835 -0
- package/src/lib/plugins/openapi/graphql/index.ts +2 -0
- package/src/lib/plugins/openapi/index.tsx +221 -0
- package/src/lib/plugins/openapi/interfaces.ts +100 -0
- package/src/lib/plugins/openapi/playground/BodyPanel.tsx +274 -0
- package/src/lib/plugins/openapi/playground/CollapsibleHeader.tsx +51 -0
- package/src/lib/plugins/openapi/playground/ExamplesDropdown.tsx +60 -0
- package/src/lib/plugins/openapi/playground/Headers.tsx +194 -0
- package/src/lib/plugins/openapi/playground/IdentityDialog.tsx +75 -0
- package/src/lib/plugins/openapi/playground/IdentitySelector.tsx +38 -0
- package/src/lib/plugins/openapi/playground/ParamsGrid.tsx +45 -0
- package/src/lib/plugins/openapi/playground/PathParams.tsx +53 -0
- package/src/lib/plugins/openapi/playground/Playground.tsx +602 -0
- package/src/lib/plugins/openapi/playground/PlaygroundDialog.tsx +56 -0
- package/src/lib/plugins/openapi/playground/QueryParams.tsx +151 -0
- package/src/lib/plugins/openapi/playground/RequestLoginDialog.tsx +70 -0
- package/src/lib/plugins/openapi/playground/Spinner.tsx +87 -0
- package/src/lib/plugins/openapi/playground/createUrl.ts +25 -0
- package/src/lib/plugins/openapi/playground/fileUtils.ts +36 -0
- package/src/lib/plugins/openapi/playground/rememberedIdentity.ts +26 -0
- package/src/lib/plugins/openapi/playground/request-panel/MultipartField.tsx +91 -0
- package/src/lib/plugins/openapi/playground/request-panel/UrlPath.tsx +31 -0
- package/src/lib/plugins/openapi/playground/request-panel/UrlQueryParams.tsx +29 -0
- package/src/lib/plugins/openapi/playground/request-panel/useKeyValueFieldManager.ts +340 -0
- package/src/lib/plugins/openapi/playground/result-panel/AudioPlayer.tsx +50 -0
- package/src/lib/plugins/openapi/playground/result-panel/ResponseStatusBar.tsx +117 -0
- package/src/lib/plugins/openapi/playground/result-panel/ResponseTab.tsx +355 -0
- package/src/lib/plugins/openapi/playground/result-panel/ResultPanel.tsx +106 -0
- package/src/lib/plugins/openapi/playground/result-panel/convertToTypes.ts +36 -0
- package/src/lib/plugins/openapi/playground/serializeQueryParams.ts +125 -0
- package/src/lib/plugins/openapi/playground/useRememberSkipLoginDialog.tsx +23 -0
- package/src/lib/plugins/openapi/processors/removeExtensions.ts +29 -0
- package/src/lib/plugins/openapi/processors/removeParameters.ts +103 -0
- package/src/lib/plugins/openapi/processors/removePaths.ts +57 -0
- package/src/lib/plugins/openapi/processors/traverse.ts +1 -0
- package/src/lib/plugins/openapi/schema/SchemaExampleAndDefault.tsx +39 -0
- package/src/lib/plugins/openapi/schema/SchemaPropertyItem.tsx +189 -0
- package/src/lib/plugins/openapi/schema/SchemaView.tsx +299 -0
- package/src/lib/plugins/openapi/schema/UnionView.tsx +132 -0
- package/src/lib/plugins/openapi/schema/union-helpers.ts +123 -0
- package/src/lib/plugins/openapi/schema/utils.ts +49 -0
- package/src/lib/plugins/openapi/state.ts +36 -0
- package/src/lib/plugins/openapi/util/buildTagCategories.ts +54 -0
- package/src/lib/plugins/openapi/util/createHttpSnippet.ts +135 -0
- package/src/lib/plugins/openapi/util/createNavigationCategory.tsx +39 -0
- package/src/lib/plugins/openapi/util/generateSchemaExample.ts +191 -0
- package/src/lib/plugins/openapi/util/getRoutes.tsx +265 -0
- package/src/lib/plugins/openapi/util/methodColorMap.tsx +11 -0
- package/src/lib/plugins/openapi/util/methodToColor.ts +27 -0
- package/src/lib/plugins/openapi/util/sanitizeMarkdownForMetatag.tsx +32 -0
- package/src/lib/plugins/openapi/util/useWarmupSchema.ts +23 -0
- package/src/lib/plugins/search-inkeep/index.tsx +108 -0
- package/src/lib/plugins/search-inkeep/inkeep.ts +24 -0
- package/src/lib/plugins/search-pagefind/IndexingDialog.tsx +162 -0
- package/src/lib/plugins/search-pagefind/PagefindSearch.tsx +202 -0
- package/src/lib/plugins/search-pagefind/ResultList.tsx +122 -0
- package/src/lib/plugins/search-pagefind/get-results.tsx +74 -0
- package/src/lib/plugins/search-pagefind/index.tsx +21 -0
- package/src/lib/plugins/search-pagefind/types.ts +118 -0
- package/src/lib/shiki-constants.ts +24 -0
- package/src/lib/shiki.ts +179 -0
- package/src/lib/testing/index.tsx +146 -0
- package/src/lib/ui/Accordion.tsx +55 -0
- package/src/lib/ui/ActionButton.tsx +21 -0
- package/src/lib/ui/Alert.tsx +84 -0
- package/src/lib/ui/AlertDialog.tsx +195 -0
- package/src/lib/ui/AspectRatio.tsx +5 -0
- package/src/lib/ui/Badge.tsx +48 -0
- package/src/lib/ui/Breadcrumb.tsx +115 -0
- package/src/lib/ui/Button.tsx +65 -0
- package/src/lib/ui/ButtonGroup.tsx +80 -0
- package/src/lib/ui/Callout.tsx +113 -0
- package/src/lib/ui/Card.tsx +95 -0
- package/src/lib/ui/Carousel.tsx +259 -0
- package/src/lib/ui/Checkbox.tsx +28 -0
- package/src/lib/ui/CodeBlock.tsx +92 -0
- package/src/lib/ui/CodeTabPanel.tsx +13 -0
- package/src/lib/ui/CodeTabs.tsx +161 -0
- package/src/lib/ui/Collapsible.tsx +31 -0
- package/src/lib/ui/Command.tsx +191 -0
- package/src/lib/ui/Dialog.tsx +138 -0
- package/src/lib/ui/DismissibleAlert.tsx +74 -0
- package/src/lib/ui/Drawer.tsx +121 -0
- package/src/lib/ui/DropdownMenu.tsx +254 -0
- package/src/lib/ui/EmbeddedCodeBlock.tsx +99 -0
- package/src/lib/ui/Form.tsx +176 -0
- package/src/lib/ui/Frame.tsx +81 -0
- package/src/lib/ui/HoverCard.tsx +26 -0
- package/src/lib/ui/Input.tsx +23 -0
- package/src/lib/ui/InputGroup.tsx +168 -0
- package/src/lib/ui/Item.tsx +213 -0
- package/src/lib/ui/Kbd.tsx +28 -0
- package/src/lib/ui/Label.tsx +23 -0
- package/src/lib/ui/NativeSelect.tsx +48 -0
- package/src/lib/ui/NavigationMenu.tsx +169 -0
- package/src/lib/ui/Pagination.tsx +115 -0
- package/src/lib/ui/Popover.tsx +28 -0
- package/src/lib/ui/Progress.tsx +25 -0
- package/src/lib/ui/RadioGroup.tsx +41 -0
- package/src/lib/ui/ReactComponentDoc.tsx +68 -0
- package/src/lib/ui/ScrollArea.tsx +45 -0
- package/src/lib/ui/Secret.tsx +133 -0
- package/src/lib/ui/Select.tsx +184 -0
- package/src/lib/ui/Separator.tsx +25 -0
- package/src/lib/ui/Skeleton.tsx +15 -0
- package/src/lib/ui/Slider.tsx +25 -0
- package/src/lib/ui/Stepper.tsx +8 -0
- package/src/lib/ui/Switch.tsx +26 -0
- package/src/lib/ui/SyntaxHighlight.tsx +54 -0
- package/src/lib/ui/Tabs.tsx +52 -0
- package/src/lib/ui/Textarea.tsx +22 -0
- package/src/lib/ui/Toggle.tsx +42 -0
- package/src/lib/ui/ToggleGroup.tsx +58 -0
- package/src/lib/ui/Tooltip.tsx +65 -0
- package/src/lib/ui/Value.tsx +42 -0
- package/src/lib/ui/util.tsx +8 -0
- package/src/lib/util/MdxComponents.tsx +150 -0
- package/src/lib/util/cn.ts +6 -0
- package/src/lib/util/createVariantComponent.tsx +61 -0
- package/src/lib/util/ensureArray.ts +3 -0
- package/src/lib/util/flattenAllOf.ts +72 -0
- package/src/lib/util/flattenAllOfProcessor.ts +74 -0
- package/src/lib/util/hastToJsx.tsx +67 -0
- package/src/lib/util/humanFileSize.ts +15 -0
- package/src/lib/util/invariant.ts +52 -0
- package/src/lib/util/joinUrl.ts +60 -0
- package/src/lib/util/logInit.ts +9 -0
- package/src/lib/util/objectEntries.ts +5 -0
- package/src/lib/util/os.ts +18 -0
- package/src/lib/util/pastellize.ts +25 -0
- package/src/lib/util/problemJson.ts +63 -0
- package/src/lib/util/readFrontmatter.ts +14 -0
- package/src/lib/util/renderIf.ts +4 -0
- package/src/lib/util/scrollIntoViewIfNeeded.ts +18 -0
- package/src/lib/util/slugify.ts +21 -0
- package/src/lib/util/syncZustandState.ts +22 -0
- package/src/lib/util/traverse.ts +70 -0
- package/src/lib/util/types.ts +7 -0
- package/src/lib/util/url.ts +18 -0
- package/src/lib/util/useCopyToClipboard.ts +17 -0
- package/src/lib/util/useExposedProps.tsx +27 -0
- package/src/lib/util/useIsomorphicLayoutEffect.ts +6 -0
- package/src/lib/util/useLatest.ts +18 -0
- package/src/lib/util/useOnScreen.ts +34 -0
- package/src/lib/util/useScrollToAnchor.ts +70 -0
- package/src/lib/util/useScrollToTop.ts +18 -0
- package/src/types.d.ts +57 -0
- package/src/vite/api/SchemaManager.ts +371 -0
- package/src/vite/api/schema-codegen.ts +163 -0
- package/src/vite/build.ts +237 -0
- package/src/vite/config.ts +258 -0
- package/src/vite/css/collect.ts +42 -0
- package/src/vite/css/plugin.ts +105 -0
- package/src/vite/debug.ts +18 -0
- package/src/vite/dev-server.ts +294 -0
- package/src/vite/html.ts +54 -0
- package/src/vite/index.ts +2 -0
- package/src/vite/llms.ts +99 -0
- package/src/vite/mdx/rehype-extract-toc-with-jsx-export.ts +19 -0
- package/src/vite/mdx/rehype-extract-toc-with-jsx.ts +70 -0
- package/src/vite/mdx/remark-code-tabs.ts +47 -0
- package/src/vite/mdx/remark-inject-filepath.ts +13 -0
- package/src/vite/mdx/remark-last-modified.ts +103 -0
- package/src/vite/mdx/remark-link-rewrite.ts +23 -0
- package/src/vite/mdx/remark-normalize-image-url.ts +15 -0
- package/src/vite/mdx/remark-static-generation.ts +149 -0
- package/src/vite/mdx/utils.ts +32 -0
- package/src/vite/output.ts +261 -0
- package/src/vite/package-root.ts +12 -0
- package/src/vite/pagefind-dev-index.ts +100 -0
- package/src/vite/pagefind-dev-stub.ts +17 -0
- package/src/vite/plugin-api-keys.ts +55 -0
- package/src/vite/plugin-api.ts +323 -0
- package/src/vite/plugin-auth.ts +42 -0
- package/src/vite/plugin-component.ts +45 -0
- package/src/vite/plugin-config-reload.ts +49 -0
- package/src/vite/plugin-config.ts +75 -0
- package/src/vite/plugin-custom-pages.ts +36 -0
- package/src/vite/plugin-doc-metadata.ts +45 -0
- package/src/vite/plugin-docs.ts +205 -0
- package/src/vite/plugin-markdown-export.ts +214 -0
- package/src/vite/plugin-mdx.ts +149 -0
- package/src/vite/plugin-metadata.ts +30 -0
- package/src/vite/plugin-modules.ts +144 -0
- package/src/vite/plugin-navigation.ts +106 -0
- package/src/vite/plugin-search.ts +59 -0
- package/src/vite/plugin-shiki-register.ts +97 -0
- package/src/vite/plugin-theme.ts +399 -0
- package/src/vite/plugin.ts +44 -0
- package/src/vite/prerender/prerender.ts +242 -0
- package/src/vite/prerender/utils.ts +76 -0
- package/src/vite/prerender/worker.ts +118 -0
- package/src/vite/reporter.ts +34 -0
- package/src/vite/shadcn-registry.ts +48 -0
- package/src/vite/sitemap.ts +78 -0
- package/src/vite/ssr-templates/cloudflare.ts +19 -0
- package/src/vite/ssr-templates/node.ts +25 -0
- package/src/vite/ssr-templates/vercel.ts +22 -0
- package/src/vite/zuplo.ts +30 -0
- package/src/vite-env.d.ts +6 -0
- package/src/zuplo/enrich-with-zuplo-mcp.ts +168 -0
- package/src/zuplo/enrich-with-zuplo.ts +256 -0
- package/src/zuplo/policy-types.ts +46 -0
- package/src/zuplo/with-zuplo-processors.ts +36 -0
- package/src/zuplo/with-zuplo.ts +14 -0
|
@@ -0,0 +1,238 @@
|
|
|
1
|
+
---
|
|
2
|
+
title: Azure AD Setup
|
|
3
|
+
sidebar_label: Azure AD
|
|
4
|
+
description:
|
|
5
|
+
Learn how to set up Azure Active Directory (Microsoft Entra ID) authentication for APIToGo,
|
|
6
|
+
enabling secure single sign-on for your organization.
|
|
7
|
+
---
|
|
8
|
+
|
|
9
|
+
Azure Active Directory (now Microsoft Entra ID) provides enterprise-grade authentication and
|
|
10
|
+
authorization for organizations using Microsoft's cloud identity platform. This guide shows you how
|
|
11
|
+
to integrate Azure AD with your APIToGo documentation site.
|
|
12
|
+
|
|
13
|
+
## Prerequisites
|
|
14
|
+
|
|
15
|
+
- An Azure subscription with Azure Active Directory
|
|
16
|
+
- Administrative access to register applications in Azure AD
|
|
17
|
+
- Your Azure AD tenant ID
|
|
18
|
+
|
|
19
|
+
## Setup Steps
|
|
20
|
+
|
|
21
|
+
<Stepper>
|
|
22
|
+
|
|
23
|
+
1. **Register an Application in Azure AD**
|
|
24
|
+
|
|
25
|
+
In the [Azure Portal](https://portal.azure.com):
|
|
26
|
+
- Navigate to **Azure Active Directory** → **App registrations**
|
|
27
|
+
- Click **New registration**
|
|
28
|
+
- Configure your application:
|
|
29
|
+
- **Name**: Enter a descriptive name (e.g., "APIToGo Documentation")
|
|
30
|
+
- **Supported account types**: Choose based on your needs:
|
|
31
|
+
- Single tenant (your organization only)
|
|
32
|
+
- Multitenant (any Azure AD directory)
|
|
33
|
+
- Multitenant + personal Microsoft accounts
|
|
34
|
+
- **Redirect URI**:
|
|
35
|
+
- Platform: **Single-page application (SPA)**
|
|
36
|
+
- URI: `https://your-site.com/oauth/callback`
|
|
37
|
+
- Click **Register**
|
|
38
|
+
|
|
39
|
+
2. **Configure Authentication Settings**
|
|
40
|
+
|
|
41
|
+
In your newly registered application:
|
|
42
|
+
- Go to **Authentication** in the left menu
|
|
43
|
+
- Under **Single-page application**, add redirect URIs:
|
|
44
|
+
- Production: `https://your-site.com/oauth/callback`
|
|
45
|
+
- Preview (wildcard): `https://*.your-domain.com/oauth/callback`
|
|
46
|
+
- Local Development: `http://localhost:3000/oauth/callback`
|
|
47
|
+
- Under **Implicit grant and hybrid flows**:
|
|
48
|
+
- Enable **ID tokens**
|
|
49
|
+
- Enable **Access tokens**
|
|
50
|
+
- Configure **Supported account types** if needed
|
|
51
|
+
- Save your changes
|
|
52
|
+
|
|
53
|
+
3. **Configure API Permissions (Optional)**
|
|
54
|
+
|
|
55
|
+
If you need specific permissions:
|
|
56
|
+
- Go to **API permissions**
|
|
57
|
+
- Click **Add a permission**
|
|
58
|
+
- Select **Microsoft Graph** → **Delegated permissions**
|
|
59
|
+
- Add permissions like `User.Read`, `email`, `profile`, `openid`
|
|
60
|
+
- Grant admin consent if required by your organization
|
|
61
|
+
|
|
62
|
+
4. **Configure APIToGo**
|
|
63
|
+
|
|
64
|
+
Get your application details from the Azure Portal:
|
|
65
|
+
- Go to **Overview** page of your app registration
|
|
66
|
+
- Copy the **Application (client) ID**
|
|
67
|
+
- Copy the **Directory (tenant) ID**
|
|
68
|
+
|
|
69
|
+
Add the configuration to your [APIToGo configuration file](./overview.md):
|
|
70
|
+
|
|
71
|
+
```typescript
|
|
72
|
+
// apitogo.config.ts
|
|
73
|
+
export default {
|
|
74
|
+
// ... other configuration
|
|
75
|
+
authentication: {
|
|
76
|
+
type: "openid",
|
|
77
|
+
clientId: "<your-application-client-id>",
|
|
78
|
+
issuer: "https://login.microsoftonline.com/<your-tenant-id>/v2.0",
|
|
79
|
+
scopes: ["openid", "profile", "email"], // Optional: customize scopes
|
|
80
|
+
},
|
|
81
|
+
// ... other configuration
|
|
82
|
+
};
|
|
83
|
+
```
|
|
84
|
+
|
|
85
|
+
5. **Install Azure AD Dependencies**
|
|
86
|
+
|
|
87
|
+
Add `@azure/msal-browser` to your project dependencies:
|
|
88
|
+
|
|
89
|
+
```bash
|
|
90
|
+
npm install @azure/msal-browser
|
|
91
|
+
```
|
|
92
|
+
|
|
93
|
+
</Stepper>
|
|
94
|
+
|
|
95
|
+
## Configuration Options
|
|
96
|
+
|
|
97
|
+
### Single Tenant vs Multitenant
|
|
98
|
+
|
|
99
|
+
For single tenant (organization-only access):
|
|
100
|
+
|
|
101
|
+
```typescript
|
|
102
|
+
authentication: {
|
|
103
|
+
type: "openid",
|
|
104
|
+
clientId: "<your-application-client-id>",
|
|
105
|
+
issuer: "https://login.microsoftonline.com/<your-tenant-id>/v2.0",
|
|
106
|
+
scopes: ["openid", "profile", "email"],
|
|
107
|
+
}
|
|
108
|
+
```
|
|
109
|
+
|
|
110
|
+
For multitenant (any Azure AD organization):
|
|
111
|
+
|
|
112
|
+
```typescript
|
|
113
|
+
authentication: {
|
|
114
|
+
type: "openid",
|
|
115
|
+
clientId: "<your-application-client-id>",
|
|
116
|
+
issuer: "https://login.microsoftonline.com/common/v2.0",
|
|
117
|
+
scopes: ["openid", "profile", "email"],
|
|
118
|
+
}
|
|
119
|
+
```
|
|
120
|
+
|
|
121
|
+
### Custom Scopes and Permissions
|
|
122
|
+
|
|
123
|
+
Request additional Microsoft Graph API scopes:
|
|
124
|
+
|
|
125
|
+
```typescript
|
|
126
|
+
authentication: {
|
|
127
|
+
type: "openid",
|
|
128
|
+
clientId: "<your-application-client-id>",
|
|
129
|
+
issuer: "https://login.microsoftonline.com/<your-tenant-id>/v2.0",
|
|
130
|
+
scopes: [
|
|
131
|
+
"openid",
|
|
132
|
+
"profile",
|
|
133
|
+
"email",
|
|
134
|
+
"User.Read",
|
|
135
|
+
"GroupMember.Read.All" // For group-based access control
|
|
136
|
+
],
|
|
137
|
+
}
|
|
138
|
+
```
|
|
139
|
+
|
|
140
|
+
### Protected Routes
|
|
141
|
+
|
|
142
|
+
Protect specific documentation routes using the `protectedRoutes` configuration:
|
|
143
|
+
|
|
144
|
+
```typescript
|
|
145
|
+
{
|
|
146
|
+
// ... other configuration
|
|
147
|
+
authentication: {
|
|
148
|
+
type: "openid",
|
|
149
|
+
// ... Azure AD config
|
|
150
|
+
},
|
|
151
|
+
protectedRoutes: [
|
|
152
|
+
"/api/*", // Protect all API documentation
|
|
153
|
+
"/internal/*", // Protect internal documentation
|
|
154
|
+
"/admin/*" // Protect admin sections
|
|
155
|
+
],
|
|
156
|
+
}
|
|
157
|
+
```
|
|
158
|
+
|
|
159
|
+
## Advanced Configuration
|
|
160
|
+
|
|
161
|
+
### Conditional Access Policies
|
|
162
|
+
|
|
163
|
+
Azure AD supports conditional access policies that can:
|
|
164
|
+
|
|
165
|
+
- Require multi-factor authentication
|
|
166
|
+
- Restrict access by location
|
|
167
|
+
- Enforce device compliance
|
|
168
|
+
- Control session lifetime
|
|
169
|
+
|
|
170
|
+
Configure these in Azure AD Portal under **Security** → **Conditional Access**.
|
|
171
|
+
|
|
172
|
+
### App Roles and Groups
|
|
173
|
+
|
|
174
|
+
To implement role-based access control:
|
|
175
|
+
|
|
176
|
+
1. In your app registration, go to **App roles**
|
|
177
|
+
2. Create custom roles (e.g., "Documentation.Read", "Documentation.Admin")
|
|
178
|
+
3. Assign roles to users or groups in **Enterprise applications**
|
|
179
|
+
4. Access role claims in your application
|
|
180
|
+
|
|
181
|
+
### B2B Guest Access
|
|
182
|
+
|
|
183
|
+
To allow external partners access:
|
|
184
|
+
|
|
185
|
+
1. Enable B2B collaboration in Azure AD
|
|
186
|
+
2. Configure external collaboration settings
|
|
187
|
+
3. Invite guest users to your directory
|
|
188
|
+
4. Grant appropriate permissions to your application
|
|
189
|
+
|
|
190
|
+
## User Data
|
|
191
|
+
|
|
192
|
+
Azure AD provides rich user profile data through OpenID Connect:
|
|
193
|
+
|
|
194
|
+
- `name` - User's display name
|
|
195
|
+
- `email` - User's email address
|
|
196
|
+
- `picture` - Profile picture URL (when available)
|
|
197
|
+
- `email_verified` - Email verification status
|
|
198
|
+
- `preferred_username` - User's UPN (User Principal Name)
|
|
199
|
+
- Additional claims based on your API permissions
|
|
200
|
+
|
|
201
|
+
## Troubleshooting
|
|
202
|
+
|
|
203
|
+
### Common Issues
|
|
204
|
+
|
|
205
|
+
1. **Invalid Client Error**: Ensure the client ID is correct and the application is properly
|
|
206
|
+
registered.
|
|
207
|
+
|
|
208
|
+
2. **Redirect URI Mismatch**: The redirect URI must exactly match one configured in Azure AD,
|
|
209
|
+
including protocol and path.
|
|
210
|
+
|
|
211
|
+
3. **Tenant Access Issues**: For single-tenant apps, ensure users are from the correct tenant. For
|
|
212
|
+
multi-tenant, verify the issuer URL uses "common" or "organizations".
|
|
213
|
+
|
|
214
|
+
4. **Missing User Information**: Check that required API permissions are granted and admin consent
|
|
215
|
+
is provided if needed.
|
|
216
|
+
|
|
217
|
+
5. **Token Validation Errors**: Ensure your issuer URL is correct and includes the `/v2.0` endpoint
|
|
218
|
+
for the Microsoft identity platform.
|
|
219
|
+
|
|
220
|
+
6. **Authentication Not Working**: Make sure you have installed `@azure/msal-browser` to your
|
|
221
|
+
project.
|
|
222
|
+
|
|
223
|
+
## Security Best Practices
|
|
224
|
+
|
|
225
|
+
- Use single-tenant configuration unless multi-tenant is specifically required
|
|
226
|
+
- Implement conditional access policies for sensitive documentation
|
|
227
|
+
- Regularly review and audit app permissions
|
|
228
|
+
- Monitor sign-in logs in Azure AD for suspicious activity
|
|
229
|
+
- Use app roles for fine-grained access control
|
|
230
|
+
|
|
231
|
+
## Next Steps
|
|
232
|
+
|
|
233
|
+
- Explore
|
|
234
|
+
[Microsoft identity platform documentation](https://docs.microsoft.com/en-us/azure/active-directory/develop/)
|
|
235
|
+
- Learn about [protecting routes](./authentication.md#protected-routes) in your documentation
|
|
236
|
+
- Implement
|
|
237
|
+
[app roles](https://docs.microsoft.com/en-us/azure/active-directory/develop/howto-add-app-roles-in-azure-ad-apps)
|
|
238
|
+
for advanced authorization
|
|
@@ -0,0 +1,110 @@
|
|
|
1
|
+
---
|
|
2
|
+
title: Clerk Setup
|
|
3
|
+
sidebar_label: Clerk
|
|
4
|
+
description:
|
|
5
|
+
Learn how to set up Clerk authentication for APIToGo, providing a seamless authentication
|
|
6
|
+
experience with modern UI components and extensive customization options.
|
|
7
|
+
---
|
|
8
|
+
|
|
9
|
+
Clerk is a modern authentication platform that provides beautiful, customizable UI components and a
|
|
10
|
+
developer-friendly experience. This guide walks you through integrating Clerk authentication with
|
|
11
|
+
your APIToGo documentation site.
|
|
12
|
+
|
|
13
|
+
## Prerequisites
|
|
14
|
+
|
|
15
|
+
If you don't have a Clerk account, you can sign up for a [free Clerk account](https://clerk.com/)
|
|
16
|
+
that provides 10,000 monthly active users.
|
|
17
|
+
|
|
18
|
+
## Setup Steps
|
|
19
|
+
|
|
20
|
+
<Stepper>
|
|
21
|
+
|
|
22
|
+
1. **Create a Clerk Application**
|
|
23
|
+
|
|
24
|
+
In the [Clerk Dashboard](https://dashboard.clerk.com/):
|
|
25
|
+
- Click **Create Application**
|
|
26
|
+
- Enter your application name
|
|
27
|
+
- Select your preferred authentication methods (email, social providers, etc.)
|
|
28
|
+
- Click **Create Application**
|
|
29
|
+
|
|
30
|
+
2. **Create a Clerk JWT Template** You need to create a JWT Template so your JWTs include name,
|
|
31
|
+
email and email_verified information.
|
|
32
|
+
|
|
33
|
+
- Navigate to **JWT templates** in the [Clerk Dashboard](https://dashboard.clerk.com/)
|
|
34
|
+
- Create a new template by clicking **Add new template**
|
|
35
|
+
- Pick a name for the template
|
|
36
|
+
- Add the following claims
|
|
37
|
+
```json
|
|
38
|
+
{
|
|
39
|
+
"name": "{{user.full_name}}",
|
|
40
|
+
"email": "{{user.primary_email_address}}",
|
|
41
|
+
"email_verified": "{{user.email_verified}}"
|
|
42
|
+
}
|
|
43
|
+
```
|
|
44
|
+
- Save
|
|
45
|
+
|
|
46
|
+
3. **Configure APIToGo**
|
|
47
|
+
|
|
48
|
+
Get your publishable key from the Clerk dashboard:
|
|
49
|
+
- Navigate to **API Keys** in your Clerk dashboard
|
|
50
|
+
- Copy the **Publishable key**
|
|
51
|
+
|
|
52
|
+
Use the JWT template name defined in the previous section
|
|
53
|
+
|
|
54
|
+
Add the Clerk configuration to your [APIToGo configuration file](./overview.md):
|
|
55
|
+
|
|
56
|
+
```typescript
|
|
57
|
+
// apitogo.config.ts
|
|
58
|
+
export default {
|
|
59
|
+
// ... other configuration
|
|
60
|
+
authentication: {
|
|
61
|
+
type: "clerk",
|
|
62
|
+
clerkPubKey: "<your-clerk-publishable-key>",
|
|
63
|
+
jwtTemplateName: "<your-clerk-jwt-template-name>",
|
|
64
|
+
},
|
|
65
|
+
// ... other configuration
|
|
66
|
+
};
|
|
67
|
+
```
|
|
68
|
+
|
|
69
|
+
4. **Configure Redirect URLs (Optional)**
|
|
70
|
+
|
|
71
|
+
If you need custom redirect behavior, configure the allowed redirect URLs in Clerk:
|
|
72
|
+
- Go to **Paths** in your Clerk dashboard
|
|
73
|
+
- Add your production, preview, and local development URLs to the allowed redirect URLs
|
|
74
|
+
- Common patterns:
|
|
75
|
+
- Production: `https://your-site.com/oauth/callback`
|
|
76
|
+
- Preview (wildcard): `https://*.your-domain.com/oauth/callback`
|
|
77
|
+
- Local Development: `http://localhost:3000/oauth/callback`
|
|
78
|
+
|
|
79
|
+
5. **Install Clerk Dependencies**
|
|
80
|
+
|
|
81
|
+
Add `@clerk/clerk-js` to your project dependencies:
|
|
82
|
+
|
|
83
|
+
```bash
|
|
84
|
+
npm install @clerk/clerk-js
|
|
85
|
+
```
|
|
86
|
+
|
|
87
|
+
</Stepper>
|
|
88
|
+
|
|
89
|
+
## Troubleshooting
|
|
90
|
+
|
|
91
|
+
### Common Issues
|
|
92
|
+
|
|
93
|
+
1. **Invalid Publishable Key**: Ensure you're using the publishable key (starts with `pk_`) and not
|
|
94
|
+
the secret key.
|
|
95
|
+
|
|
96
|
+
2. **Authentication Not Working**: Verify that your Clerk application is active and not in
|
|
97
|
+
development mode when deploying to production.
|
|
98
|
+
|
|
99
|
+
3. **Redirect Issues**: Check that your domain is added to the allowed redirect URLs in Clerk if
|
|
100
|
+
using custom redirects.
|
|
101
|
+
|
|
102
|
+
4. **ReferenceError: can't access lexical declaration 'xxx' before initialization**: Make sure you
|
|
103
|
+
have installed Clerk to your project.
|
|
104
|
+
|
|
105
|
+
## Next Steps
|
|
106
|
+
|
|
107
|
+
- Explore [Clerk's documentation](https://clerk.com/docs) for advanced features
|
|
108
|
+
- Learn about [protecting routes](./authentication.md#protected-routes) in your documentation
|
|
109
|
+
- Configure [user roles and permissions](https://clerk.com/docs/organizations/roles-permissions) in
|
|
110
|
+
Clerk
|
|
@@ -0,0 +1,62 @@
|
|
|
1
|
+
---
|
|
2
|
+
title: Firebase Setup
|
|
3
|
+
sidebar_label: Firebase
|
|
4
|
+
description:
|
|
5
|
+
Learn how to set up Firebase Authentication for APIToGo, leveraging Google's secure authentication
|
|
6
|
+
infrastructure with multiple sign-in providers.
|
|
7
|
+
---
|
|
8
|
+
|
|
9
|
+
Firebase Authentication provides a comprehensive identity solution from Google, supporting
|
|
10
|
+
email/password authentication and federated identity providers like Google, Facebook, Twitter, and
|
|
11
|
+
more. This guide shows you how to integrate Firebase Authentication with your APIToGo documentation
|
|
12
|
+
site.
|
|
13
|
+
|
|
14
|
+
## Prerequisites
|
|
15
|
+
|
|
16
|
+
- A Google account to access Firebase Console
|
|
17
|
+
- A Firebase project (free tier available)
|
|
18
|
+
- Basic knowledge of Firebase configuration
|
|
19
|
+
|
|
20
|
+
## Setup Firebase
|
|
21
|
+
|
|
22
|
+
1. Go to the [Firebase Console](https://console.firebase.google.com/):
|
|
23
|
+
2. Click **Create a project** (or select an existing project)
|
|
24
|
+
3. Make sure authentication is enabled. Choose your preferred authentication providers.
|
|
25
|
+
4. Configure Authorized Domains, add your domains where the authentication will be used.
|
|
26
|
+
5. **Get Your Firebase Configuration**
|
|
27
|
+
- Go to **Project settings**
|
|
28
|
+
- Scroll to **Your apps** section
|
|
29
|
+
- Click **Add app** → **Web** if you haven't already
|
|
30
|
+
- Register your app with a nickname
|
|
31
|
+
- Copy the Firebase configuration object
|
|
32
|
+
|
|
33
|
+
## Configure APIToGo
|
|
34
|
+
|
|
35
|
+
Add the Firebase configuration to your [APIToGo configuration file](./overview.md):
|
|
36
|
+
|
|
37
|
+
```typescript title="apitogo.config.ts"
|
|
38
|
+
export default {
|
|
39
|
+
authentication: {
|
|
40
|
+
type: "firebase",
|
|
41
|
+
// Replace these with your Firebase project configuration
|
|
42
|
+
// Get these values from Firebase Console > Project Settings
|
|
43
|
+
apiKey: "<insert your API key here>",
|
|
44
|
+
authDomain: "your-domain.firebaseapp.com",
|
|
45
|
+
projectId: "your-project-id",
|
|
46
|
+
appId: "1:296819355813:web:91d29f11cac6f073595d4c",
|
|
47
|
+
// Optional fields
|
|
48
|
+
storageBucket: "your-project.firebasestorage.app",
|
|
49
|
+
messagingSenderId: "296819355813",
|
|
50
|
+
measurementId: "G-12W6TTNR75",
|
|
51
|
+
// Optional: specify which providers to show in the sign-in UI
|
|
52
|
+
// Available providers: "google", "github", "facebook", "twitter",
|
|
53
|
+
// "microsoft", "apple", "yahoo", "password", "phone"
|
|
54
|
+
// If not specified, all enabled providers in Firebase will be available
|
|
55
|
+
providers: ["google", "github", "password"],
|
|
56
|
+
// Optional: configure redirect URLs after authentication
|
|
57
|
+
redirectToAfterSignIn: "/docs",
|
|
58
|
+
redirectToAfterSignUp: "/getting-started",
|
|
59
|
+
redirectToAfterSignOut: "/",
|
|
60
|
+
},
|
|
61
|
+
};
|
|
62
|
+
```
|
|
@@ -0,0 +1,136 @@
|
|
|
1
|
+
---
|
|
2
|
+
title: PingFederate Setup
|
|
3
|
+
sidebar_label: PingFederate
|
|
4
|
+
description:
|
|
5
|
+
Learn how to set up PingFederate authentication for APIToGo using OpenID Connect for
|
|
6
|
+
enterprise-grade single sign-on.
|
|
7
|
+
---
|
|
8
|
+
|
|
9
|
+
PingFederate is an enterprise federation server that enables secure single sign-on (SSO) and API
|
|
10
|
+
security for organizations. This guide walks you through integrating PingFederate with APIToGo using
|
|
11
|
+
OpenID Connect.
|
|
12
|
+
|
|
13
|
+
## Prerequisites
|
|
14
|
+
|
|
15
|
+
- Access to a PingFederate server (version 9.0 or later recommended)
|
|
16
|
+
- Administrative access to configure OAuth clients in PingFederate
|
|
17
|
+
- Your PingFederate server's base URL
|
|
18
|
+
|
|
19
|
+
## Setup Steps
|
|
20
|
+
|
|
21
|
+
<Stepper>
|
|
22
|
+
|
|
23
|
+
1. **Create an OAuth Client in PingFederate**
|
|
24
|
+
|
|
25
|
+
In the PingFederate administrative console:
|
|
26
|
+
- Navigate to **Applications** → **OAuth** → **Clients**
|
|
27
|
+
- Click **Add Client**
|
|
28
|
+
- Configure the client:
|
|
29
|
+
- **Client ID**: Choose a unique identifier (e.g., `apitogo-docs`)
|
|
30
|
+
- **Client Authentication**: Select **None (Public Client)**
|
|
31
|
+
- **Grant Types**: Enable **Authorization Code** and **Refresh Token**
|
|
32
|
+
- **Redirect URIs**:
|
|
33
|
+
- Production: `https://your-site.com/oauth/callback`
|
|
34
|
+
- Preview (wildcard): `https://*.your-domain.com/oauth/callback`
|
|
35
|
+
- Local Development: `http://localhost:3000/oauth/callback`
|
|
36
|
+
|
|
37
|
+
2. **Configure OpenID Connect Settings**
|
|
38
|
+
|
|
39
|
+
Still in the OAuth client configuration:
|
|
40
|
+
- Enable **OpenID Connect**
|
|
41
|
+
- Configure scopes:
|
|
42
|
+
- Enable `openid`, `profile`, and `email` (minimum required)
|
|
43
|
+
- Add any custom scopes your organization requires
|
|
44
|
+
- **ID Token Signing Algorithm**: RS256 (recommended)
|
|
45
|
+
- **Access Token Manager**: Select or create an appropriate token manager
|
|
46
|
+
- Save the configuration
|
|
47
|
+
|
|
48
|
+
3. **Configure APIToGo**
|
|
49
|
+
|
|
50
|
+
Add the PingFederate configuration to your [APIToGo configuration file](./overview.md):
|
|
51
|
+
|
|
52
|
+
```typescript
|
|
53
|
+
// apitogo.config.ts
|
|
54
|
+
export default {
|
|
55
|
+
// ... other configuration
|
|
56
|
+
authentication: {
|
|
57
|
+
type: "openid",
|
|
58
|
+
clientId: "apitogo-docs", // Your OAuth client ID
|
|
59
|
+
issuer: "https://pingfederate.your-domain.com", // Your PingFederate base URL
|
|
60
|
+
scopes: ["openid", "profile", "email"], // Optional: add custom scopes
|
|
61
|
+
},
|
|
62
|
+
// ... other configuration
|
|
63
|
+
};
|
|
64
|
+
```
|
|
65
|
+
|
|
66
|
+
</Stepper>
|
|
67
|
+
|
|
68
|
+
## Configuration Options
|
|
69
|
+
|
|
70
|
+
### Custom Scopes
|
|
71
|
+
|
|
72
|
+
If your organization uses custom scopes for authorization, include them in the configuration:
|
|
73
|
+
|
|
74
|
+
```typescript
|
|
75
|
+
authentication: {
|
|
76
|
+
type: "openid",
|
|
77
|
+
clientId: "apitogo-docs",
|
|
78
|
+
issuer: "https://pingfederate.your-domain.com",
|
|
79
|
+
scopes: ["openid", "profile", "email", "groups", "roles", "api:read"],
|
|
80
|
+
}
|
|
81
|
+
```
|
|
82
|
+
|
|
83
|
+
## Advanced Configuration
|
|
84
|
+
|
|
85
|
+
### CORS Configuration
|
|
86
|
+
|
|
87
|
+
Configure CORS in PingFederate for your documentation site:
|
|
88
|
+
|
|
89
|
+
1. Navigate to **System** → **Server Configuration** → **Cross-Origin Resource Sharing**
|
|
90
|
+
2. Add your site's domain to the allowed origins:
|
|
91
|
+
- `https://your-site.com`
|
|
92
|
+
- `http://localhost:3000` (for local development)
|
|
93
|
+
|
|
94
|
+
### Attribute Mapping
|
|
95
|
+
|
|
96
|
+
PingFederate can map user attributes from various sources. Ensure these standard claims are mapped:
|
|
97
|
+
|
|
98
|
+
1. Go to **OAuth** → **Access Token Management** → **Your Token Manager**
|
|
99
|
+
2. Configure attribute mappings:
|
|
100
|
+
- `sub` → User's unique identifier
|
|
101
|
+
- `name` → User's display name
|
|
102
|
+
- `email` → User's email address
|
|
103
|
+
- `picture` → User's profile picture URL (if available)
|
|
104
|
+
|
|
105
|
+
## Troubleshooting
|
|
106
|
+
|
|
107
|
+
### Common Issues
|
|
108
|
+
|
|
109
|
+
1. **Discovery Endpoint Not Found**: Ensure your issuer URL is correct and accessible. The OpenID
|
|
110
|
+
Connect discovery endpoint should be available at
|
|
111
|
+
`https://your-pingfederate-server/.well-known/openid-configuration`.
|
|
112
|
+
|
|
113
|
+
2. **Invalid Client Configuration**: Verify that the client ID matches exactly and that the redirect
|
|
114
|
+
URIs are properly configured in PingFederate.
|
|
115
|
+
|
|
116
|
+
3. **CORS Errors**: Check that your site's domain is added to PingFederate's CORS configuration.
|
|
117
|
+
|
|
118
|
+
4. **Missing User Attributes**: Ensure attribute mappings are configured in your Access Token
|
|
119
|
+
Manager.
|
|
120
|
+
|
|
121
|
+
5. **Token Validation Errors**: Verify that your PingFederate server's certificates are valid and
|
|
122
|
+
that clock synchronization is accurate.
|
|
123
|
+
|
|
124
|
+
## Security Considerations
|
|
125
|
+
|
|
126
|
+
- Always use HTTPS for production deployments
|
|
127
|
+
- Regularly rotate signing certificates in PingFederate
|
|
128
|
+
- Configure appropriate session timeouts
|
|
129
|
+
- Review and audit OAuth client configurations periodically
|
|
130
|
+
|
|
131
|
+
## Next Steps
|
|
132
|
+
|
|
133
|
+
- Review [PingFederate documentation](https://docs.pingidentity.com/pingfederate/) for advanced
|
|
134
|
+
features
|
|
135
|
+
- Learn about [protecting routes](./authentication.md#protected-routes) in your documentation
|
|
136
|
+
- Configure group-based access control using PingFederate claims
|