@lukoweb/apitogo 0.2.22 → 0.2.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 +94 -94
- package/cli.js +13 -13
- package/client.d.ts +8 -8
- package/dist/cli/cli.js +561 -232
- package/dist/declarations/cli/platform/client/platform-api.d.ts +18 -0
- package/dist/declarations/config/validators/InputNavigationSchema.d.ts +7 -7
- package/dist/declarations/config/validators/ZudokuConfig.d.ts +1 -1
- package/docs/cli/commands.md +75 -75
- package/docs/cli/go-live.md +123 -123
- package/docs/cli/overview.md +91 -91
- package/docs/cli/setup.md +141 -141
- package/docs/cli/shape.md +127 -127
- package/docs/components/alert.mdx +130 -130
- package/docs/components/badge.mdx +70 -70
- package/docs/components/button.mdx +132 -132
- package/docs/components/callout.mdx +112 -112
- package/docs/components/card.mdx +104 -104
- package/docs/components/checkbox.mdx +72 -72
- package/docs/components/client-only.mdx +79 -79
- package/docs/components/code-tabs.mdx +179 -179
- package/docs/components/dialog.mdx +167 -167
- package/docs/components/head.mdx +200 -200
- package/docs/components/icons.mdx +27 -27
- package/docs/components/input.mdx +96 -96
- package/docs/components/label.mdx +86 -86
- package/docs/components/link.mdx +242 -242
- package/docs/components/markdown.mdx +151 -151
- package/docs/components/mermaid.mdx +81 -81
- package/docs/components/playground.mdx +85 -85
- package/docs/components/secret.mdx +79 -79
- package/docs/components/select.mdx +176 -176
- package/docs/components/shadcn.mdx +73 -73
- package/docs/components/slider.mdx +108 -108
- package/docs/components/slot.mdx +119 -119
- package/docs/components/stepper.mdx +138 -138
- package/docs/components/switch.mdx +96 -96
- package/docs/components/syntax-highlight.mdx +602 -602
- package/docs/components/textarea.mdx +78 -78
- package/docs/components/tooltip.mdx +195 -195
- package/docs/components/typography.mdx +61 -61
- package/docs/components.mdx +60 -60
- package/docs/concepts/auth-provider-api-identities.md +105 -105
- package/docs/configuration/ai-assistants.md +65 -65
- package/docs/configuration/api-catalog.md +109 -109
- package/docs/configuration/api-reference.md +397 -397
- package/docs/configuration/authentication-auth0.md +181 -181
- package/docs/configuration/authentication-azure-ad.md +245 -245
- package/docs/configuration/authentication-clerk.md +117 -117
- package/docs/configuration/authentication-firebase.md +69 -69
- package/docs/configuration/authentication-pingfederate.md +143 -143
- package/docs/configuration/authentication-supabase.md +233 -233
- package/docs/configuration/authentication.md +159 -159
- package/docs/configuration/build-configuration.mdx +147 -147
- package/docs/configuration/docs.md +282 -282
- package/docs/configuration/footer.mdx +118 -118
- package/docs/configuration/gateway.md +221 -221
- package/docs/configuration/llms.md +90 -90
- package/docs/configuration/make-config.mdx +124 -124
- package/docs/configuration/manifest.md +128 -128
- package/docs/configuration/navigation.mdx +421 -421
- package/docs/configuration/overview.md +166 -166
- package/docs/configuration/plans.md +153 -153
- package/docs/configuration/protected-routes.md +150 -150
- package/docs/configuration/search.md +164 -164
- package/docs/configuration/sentry.mdx +44 -44
- package/docs/configuration/site.md +124 -124
- package/docs/configuration/slots.mdx +125 -125
- package/docs/configuration/vite-config.md +18 -18
- package/docs/custom-plugins.md +285 -285
- package/docs/customization/colors-theme.mdx +278 -278
- package/docs/customization/fonts.md +110 -110
- package/docs/customization/landing-page.md +188 -188
- package/docs/deploy/apache-nginx.md +41 -41
- package/docs/deploy/apitogo.md +17 -17
- package/docs/deploy/cloudflare-pages.md +74 -74
- package/docs/deploy/direct-upload.md +17 -17
- package/docs/deploy/github-pages.md +49 -49
- package/docs/deploy/vercel.md +101 -101
- package/docs/deployment.md +9 -9
- package/docs/extending/events.md +124 -124
- package/docs/guides/custom-pages.md +110 -110
- package/docs/guides/environment-variables.md +94 -94
- package/docs/guides/managing-api-keys-and-identities.md +89 -89
- package/docs/guides/mermaid.mdx +70 -70
- package/docs/guides/navigation-rules.mdx +203 -203
- package/docs/guides/processors.mdx +234 -234
- package/docs/guides/static-files.md +55 -55
- package/docs/guides/transforming-examples.md +156 -156
- package/docs/guides/using-multiple-apis.md +87 -87
- package/docs/markdown/admonitions.md +128 -128
- package/docs/markdown/code-blocks.md +196 -196
- package/docs/markdown/frontmatter.md +173 -173
- package/docs/markdown/mdx.md +68 -68
- package/docs/markdown/overview.md +275 -275
- package/docs/mcp/go-live.md +100 -100
- package/docs/mcp/overview.md +76 -76
- package/docs/mcp/setup.md +173 -173
- package/docs/mcp/shape.md +77 -77
- package/docs/mcp/tools.md +102 -102
- package/docs/plugins.md +24 -24
- package/docs/quickstart.md +72 -72
- package/docs/writing.mdx +72 -72
- package/package.json +1 -1
- package/src/app/ZuploBuildConfig.ts +36 -36
- package/src/app/apitogoBrandTheme.ts +47 -47
- package/src/app/defaultTheme.css +77 -77
- package/src/app/demo-cdn.html +37 -37
- package/src/app/demo.html +21 -21
- package/src/app/demo.tsx +77 -77
- package/src/app/entry.client.tsx +107 -107
- package/src/app/entry.server.tsx +160 -160
- package/src/app/env.ts +40 -40
- package/src/app/main.css +400 -400
- package/src/app/main.tsx +167 -167
- package/src/app/polyfills.ts +47 -47
- package/src/app/processRoutes.tsx +51 -51
- package/src/app/sentry.ts +24 -24
- package/src/app/standalone.html +23 -23
- package/src/app/standalone.tsx +60 -60
- package/src/app/utils/createRedirectRoutes.ts +11 -11
- package/src/config/apitogo-config-core.ts +7 -3
- package/src/config/apitogo-config-loader.browser.ts +17 -17
- package/src/config/apitogo-config-loader.node.ts +88 -88
- package/src/config/apitogo-config-loader.ts +6 -6
- package/src/config/build-apitogo-config.ts +61 -61
- package/src/config/config.ts +74 -74
- package/src/config/create-plugin.ts +71 -71
- package/src/config/default-landing-content.ts +149 -149
- package/src/config/file-exists.ts +6 -6
- package/src/config/gateway-limits.ts +128 -128
- package/src/config/landing-manifest.ts +11 -11
- package/src/config/landing-openapi-showcase.ts +124 -124
- package/src/config/loader.ts +375 -375
- package/src/config/local-manifest.ts +545 -545
- package/src/config/resolve-modules.ts +354 -354
- package/src/config/v2/__fixtures__/scenario-a-docs-only.json +6 -6
- package/src/config/v2/__fixtures__/scenario-b-managed-origin.json +14 -14
- package/src/config/v2/__fixtures__/scenario-c-proxy-oidc.json +15 -15
- package/src/config/v2/__fixtures__/scenario-h-full-stack.json +28 -28
- package/src/config/v2/docs-navigation.ts +72 -72
- package/src/config/v2/errors.ts +42 -42
- package/src/config/v2/gateway-reference.ts +220 -220
- package/src/config/v2/gateway-request.ts +123 -123
- package/src/config/v2/home-redirect.ts +98 -98
- package/src/config/v2/index.ts +126 -126
- package/src/config/v2/init.ts +273 -273
- package/src/config/v2/layout.ts +237 -237
- package/src/config/v2/ledger.ts +235 -235
- package/src/config/v2/link-directory.ts +34 -0
- package/src/config/v2/load.ts +70 -70
- package/src/config/v2/manifest.ts +452 -452
- package/src/config/v2/parse.ts +214 -214
- package/src/config/v2/paths.ts +54 -54
- package/src/config/v2/portal-profile.ts +88 -88
- package/src/config/v2/resolve.ts +188 -188
- package/src/config/v2/rules.ts +714 -714
- package/src/config/v2/schema.ts +245 -245
- package/src/config/v2/services.ts +663 -663
- package/src/config/v2/workspace.ts +3 -2
- package/src/config/v2/wrapper.ts +24 -2
- package/src/config/validators/BuildSchema.ts +95 -95
- package/src/config/validators/HeaderNavigationSchema.ts +44 -44
- package/src/config/validators/InputNavigationSchema.test-d.ts +178 -178
- package/src/config/validators/InputNavigationSchema.ts +206 -206
- package/src/config/validators/ModulesSchema.ts +502 -502
- package/src/config/validators/NavigationSchema.ts +352 -352
- package/src/config/validators/ProtectedRoutesSchema.ts +35 -35
- package/src/config/validators/ZudokuConfig.ts +792 -792
- package/src/config/validators/auth.ts +3 -3
- package/src/config/validators/reason-codes.ts +7 -7
- package/src/env.d.ts +11 -11
- package/src/index.ts +83 -83
- package/src/lib/MissingIcon.tsx +22 -22
- package/src/lib/assets/language-icons/bun.tsx +50 -50
- package/src/lib/assets/language-icons/c.tsx +31 -31
- package/src/lib/assets/language-icons/commonlisp.tsx +22 -22
- package/src/lib/assets/language-icons/cpp.tsx +35 -35
- package/src/lib/assets/language-icons/csharp.tsx +35 -35
- package/src/lib/assets/language-icons/css.tsx +36 -36
- package/src/lib/assets/language-icons/dart.tsx +39 -39
- package/src/lib/assets/language-icons/elixir.tsx +19 -19
- package/src/lib/assets/language-icons/go.tsx +19 -19
- package/src/lib/assets/language-icons/graphql.tsx +19 -19
- package/src/lib/assets/language-icons/html.tsx +24 -24
- package/src/lib/assets/language-icons/java.tsx +35 -35
- package/src/lib/assets/language-icons/javascript.tsx +11 -11
- package/src/lib/assets/language-icons/json.tsx +19 -19
- package/src/lib/assets/language-icons/kotlin.tsx +30 -30
- package/src/lib/assets/language-icons/markdown.tsx +19 -19
- package/src/lib/assets/language-icons/mdx.tsx +23 -23
- package/src/lib/assets/language-icons/npm.tsx +15 -15
- package/src/lib/assets/language-icons/objectivec.tsx +23 -23
- package/src/lib/assets/language-icons/ocaml.tsx +34 -34
- package/src/lib/assets/language-icons/php.tsx +19 -19
- package/src/lib/assets/language-icons/pnpm.tsx +32 -32
- package/src/lib/assets/language-icons/powershell.tsx +27 -27
- package/src/lib/assets/language-icons/python.tsx +23 -23
- package/src/lib/assets/language-icons/react.tsx +21 -21
- package/src/lib/assets/language-icons/ruby.tsx +19 -19
- package/src/lib/assets/language-icons/rust.tsx +19 -19
- package/src/lib/assets/language-icons/scala.tsx +19 -19
- package/src/lib/assets/language-icons/shell.tsx +19 -19
- package/src/lib/assets/language-icons/swift.tsx +19 -19
- package/src/lib/assets/language-icons/toml.tsx +23 -23
- package/src/lib/assets/language-icons/typescript.tsx +23 -23
- package/src/lib/assets/language-icons/xml.tsx +19 -19
- package/src/lib/assets/language-icons/yaml.tsx +23 -23
- package/src/lib/assets/language-icons/yarn.tsx +17 -17
- package/src/lib/assets/language-icons/zig.tsx +32 -32
- package/src/lib/auth/issuer.ts +34 -34
- package/src/lib/authentication/AuthenticationPlugin.tsx +33 -33
- package/src/lib/authentication/auth-header-nav.ts +46 -46
- package/src/lib/authentication/authentication.ts +51 -51
- package/src/lib/authentication/components/CallbackHandler.tsx +45 -45
- package/src/lib/authentication/components/OAuthErrorPage.tsx +197 -197
- package/src/lib/authentication/components/ProductionUnlockPage.tsx +26 -26
- package/src/lib/authentication/components/SignIn.tsx +46 -46
- package/src/lib/authentication/components/SignOut.tsx +15 -15
- package/src/lib/authentication/components/SignUp.tsx +48 -48
- package/src/lib/authentication/constants.ts +1 -1
- package/src/lib/authentication/errors.ts +34 -34
- package/src/lib/authentication/header-nav-filter.ts +35 -35
- package/src/lib/authentication/hook.ts +141 -141
- package/src/lib/authentication/providers/auth0.tsx +91 -91
- package/src/lib/authentication/providers/azureb2c.tsx +223 -223
- package/src/lib/authentication/providers/clerk.tsx +224 -224
- package/src/lib/authentication/providers/dev-portal-auth-pages.tsx +602 -602
- package/src/lib/authentication/providers/dev-portal-constants.ts +38 -38
- package/src/lib/authentication/providers/dev-portal-demo.ts +151 -151
- package/src/lib/authentication/providers/dev-portal-utils.ts +279 -279
- package/src/lib/authentication/providers/dev-portal.tsx +448 -448
- package/src/lib/authentication/providers/firebase.tsx +486 -486
- package/src/lib/authentication/providers/openid.tsx +516 -516
- package/src/lib/authentication/providers/supabase.tsx +412 -412
- package/src/lib/authentication/providers/util.ts +26 -26
- package/src/lib/authentication/state.ts +180 -180
- package/src/lib/authentication/ui/AuthCard.tsx +7 -7
- package/src/lib/authentication/ui/EmailLinkCallbackUi.tsx +129 -129
- package/src/lib/authentication/ui/EmailLinkSentUi.tsx +105 -105
- package/src/lib/authentication/ui/EmailLinkSignInUi.tsx +100 -100
- package/src/lib/authentication/ui/EmailVerificationUi.tsx +128 -128
- package/src/lib/authentication/ui/ZudokuAuthUi.tsx +620 -620
- package/src/lib/authentication/ui/icons/Apple.tsx +10 -10
- package/src/lib/authentication/ui/icons/Facebook.tsx +15 -15
- package/src/lib/authentication/ui/icons/Github.tsx +16 -16
- package/src/lib/authentication/ui/icons/Google.tsx +16 -16
- package/src/lib/authentication/ui/icons/Microsoft.tsx +12 -12
- package/src/lib/authentication/ui/icons/X.tsx +10 -10
- package/src/lib/authentication/utils/relativeRedirectUrl.ts +16 -16
- package/src/lib/components/AiAssistantMenuItems.tsx +102 -102
- package/src/lib/components/AnchorLink.tsx +24 -24
- package/src/lib/components/Autocomplete.tsx +123 -123
- package/src/lib/components/Banner.tsx +52 -52
- package/src/lib/components/Bootstrap.tsx +77 -77
- package/src/lib/components/BuildCheck.tsx +87 -87
- package/src/lib/components/CategoryHeading.tsx +19 -19
- package/src/lib/components/ClientOnly.tsx +19 -19
- package/src/lib/components/DeveloperHint.tsx +39 -39
- package/src/lib/components/ErrorPage.tsx +26 -26
- package/src/lib/components/Footer.tsx +146 -146
- package/src/lib/components/Framed.tsx +51 -51
- package/src/lib/components/Header.tsx +261 -261
- package/src/lib/components/HeaderAuthActions.tsx +32 -32
- package/src/lib/components/HeaderNavigation.tsx +176 -176
- package/src/lib/components/Heading.tsx +84 -84
- package/src/lib/components/InlineCode.tsx +15 -15
- package/src/lib/components/LandingLayout.tsx +27 -27
- package/src/lib/components/LanguageIcon.tsx +199 -199
- package/src/lib/components/Layout.tsx +59 -59
- package/src/lib/components/Main.tsx +52 -52
- package/src/lib/components/Markdown.tsx +55 -55
- package/src/lib/components/Mermaid.tsx +74 -74
- package/src/lib/components/Meta.tsx +46 -46
- package/src/lib/components/MobileTopNavigation.tsx +283 -283
- package/src/lib/components/MultiSelect.tsx +86 -86
- package/src/lib/components/NotFoundPage.tsx +37 -37
- package/src/lib/components/PageProgress.tsx +28 -28
- package/src/lib/components/PagefindSearchMeta.tsx +14 -14
- package/src/lib/components/Pagination.tsx +44 -44
- package/src/lib/components/PathRenderer.tsx +61 -61
- package/src/lib/components/PluginHeads.tsx +17 -17
- package/src/lib/components/Search.tsx +70 -70
- package/src/lib/components/SiteTitle.tsx +58 -58
- package/src/lib/components/Slot.tsx +65 -65
- package/src/lib/components/Spinner.tsx +5 -5
- package/src/lib/components/StatusPage.tsx +96 -96
- package/src/lib/components/ThemeSwitch.tsx +99 -99
- package/src/lib/components/TopNavigation.tsx +90 -90
- package/src/lib/components/Typography.tsx +12 -12
- package/src/lib/components/Zudoku.tsx +105 -105
- package/src/lib/components/cache.ts +27 -27
- package/src/lib/components/context/RenderContext.ts +11 -11
- package/src/lib/components/context/RouterEventsEmitter.tsx +19 -19
- package/src/lib/components/context/SlotProvider.tsx +149 -149
- package/src/lib/components/context/ViewportAnchorContext.tsx +137 -137
- package/src/lib/components/context/ZudokuContext.ts +140 -140
- package/src/lib/components/context/ZudokuProvider.tsx +20 -20
- package/src/lib/components/context/ZudokuReactContext.tsx +17 -17
- package/src/lib/components/index.ts +36 -36
- package/src/lib/components/navigation/Navigation.tsx +51 -51
- package/src/lib/components/navigation/NavigationBadge.tsx +48 -48
- package/src/lib/components/navigation/NavigationCategory.tsx +157 -157
- package/src/lib/components/navigation/NavigationFilterContext.tsx +28 -28
- package/src/lib/components/navigation/NavigationFilterInput.tsx +35 -35
- package/src/lib/components/navigation/NavigationItem.tsx +181 -181
- package/src/lib/components/navigation/NavigationWrapper.tsx +49 -49
- package/src/lib/components/navigation/PoweredByZudoku.tsx +39 -39
- package/src/lib/components/navigation/Toc.tsx +137 -137
- package/src/lib/components/navigation/ZudokuLogo.tsx +25 -25
- package/src/lib/components/navigation/ZuploLogo.tsx +14 -14
- package/src/lib/components/navigation/utils.ts +234 -234
- package/src/lib/core/RouteGuard.tsx +260 -260
- package/src/lib/core/ZudokuContext.ts +272 -272
- package/src/lib/core/plugins.ts +139 -139
- package/src/lib/core/react-query.ts +1 -1
- package/src/lib/core/router.ts +1 -1
- package/src/lib/core/transform-config.ts +67 -67
- package/src/lib/demo/DemoAnnouncement.tsx +17 -17
- package/src/lib/errors/ErrorAlert.tsx +28 -28
- package/src/lib/errors/ErrorMessage.tsx +50 -50
- package/src/lib/errors/RouterError.tsx +18 -18
- package/src/lib/errors/ServerError.tsx +5 -5
- package/src/lib/errors/TopLevelError.tsx +6 -6
- package/src/lib/hooks/index.ts +13 -13
- package/src/lib/hooks/useEvent.ts +41 -41
- package/src/lib/hooks/useHighlighter.ts +15 -15
- package/src/lib/hooks/useHotkey.ts +70 -70
- package/src/lib/icons.ts +2 -2
- package/src/lib/navigation/applyRules.ts +127 -127
- package/src/lib/navigation/pathMatcher.ts +81 -81
- package/src/lib/oas/graphql/circular.ts +69 -69
- package/src/lib/oas/graphql/constants.ts +2 -2
- package/src/lib/oas/graphql/index.ts +791 -791
- package/src/lib/oas/parser/dereference/index.ts +84 -84
- package/src/lib/oas/parser/dereference/resolveRef.ts +32 -32
- package/src/lib/oas/parser/index.ts +129 -129
- package/src/lib/oas/parser/schemas/v3.0.json +1489 -1489
- package/src/lib/oas/parser/schemas/v3.1.json +1298 -1298
- package/src/lib/oas/parser/upgrade/index.ts +174 -174
- package/src/lib/plugins/api-catalog/Catalog.tsx +80 -80
- package/src/lib/plugins/api-catalog/index.tsx +119 -119
- package/src/lib/plugins/api-keys/CreateApiKey.tsx +128 -128
- package/src/lib/plugins/api-keys/CreateApiKeyDialog.tsx +49 -49
- package/src/lib/plugins/api-keys/ProtectedRoute.tsx +33 -33
- package/src/lib/plugins/api-keys/SettingsApiKeys.tsx +72 -72
- package/src/lib/plugins/api-keys/index.tsx +274 -274
- package/src/lib/plugins/api-keys/settings/ApiKeyItem.tsx +342 -342
- package/src/lib/plugins/api-keys/settings/ApiKeyList.tsx +67 -67
- package/src/lib/plugins/api-keys/settings/RevealApiKey.tsx +127 -127
- package/src/lib/plugins/custom-pages/index.tsx +32 -32
- package/src/lib/plugins/markdown/MdxPage.tsx +260 -260
- package/src/lib/plugins/markdown/assets/ChatGPTLogo.tsx +11 -11
- package/src/lib/plugins/markdown/assets/ClaudeLogo.tsx +19 -19
- package/src/lib/plugins/markdown/index.tsx +82 -82
- package/src/lib/plugins/openapi/ApiHeader.tsx +96 -96
- package/src/lib/plugins/openapi/CollapsibleCode.tsx +88 -88
- package/src/lib/plugins/openapi/ColorizedParam.tsx +115 -115
- package/src/lib/plugins/openapi/DownloadSchemaButton.tsx +94 -94
- package/src/lib/plugins/openapi/Endpoint.tsx +85 -85
- package/src/lib/plugins/openapi/GeneratedExampleSidecarBox.tsx +52 -52
- package/src/lib/plugins/openapi/MCPEndpoint.tsx +273 -273
- package/src/lib/plugins/openapi/OasProvider.tsx +74 -74
- package/src/lib/plugins/openapi/OperationList.tsx +275 -275
- package/src/lib/plugins/openapi/OperationListItem.tsx +183 -183
- package/src/lib/plugins/openapi/ParamInfos.tsx +96 -96
- package/src/lib/plugins/openapi/ParameterList.tsx +53 -53
- package/src/lib/plugins/openapi/ParameterListItem.tsx +161 -161
- package/src/lib/plugins/openapi/PlaygroundDialogWrapper.tsx +67 -67
- package/src/lib/plugins/openapi/RequestBodySidecarBox.tsx +63 -63
- package/src/lib/plugins/openapi/ResponsesSidecarBox.tsx +120 -120
- package/src/lib/plugins/openapi/SchemaInfo.tsx +344 -344
- package/src/lib/plugins/openapi/SchemaList.tsx +113 -113
- package/src/lib/plugins/openapi/Sidecar.tsx +314 -314
- package/src/lib/plugins/openapi/SidecarBox.tsx +57 -57
- package/src/lib/plugins/openapi/SidecarExamples.tsx +177 -177
- package/src/lib/plugins/openapi/SimpleSelect.tsx +46 -46
- package/src/lib/plugins/openapi/client/GraphQLClient.tsx +73 -73
- package/src/lib/plugins/openapi/client/GraphQLContext.tsx +16 -16
- package/src/lib/plugins/openapi/client/createServer.ts +35 -35
- package/src/lib/plugins/openapi/client/useCreateQuery.ts +44 -44
- package/src/lib/plugins/openapi/components/ConstValue.tsx +24 -24
- package/src/lib/plugins/openapi/components/EnumValues.tsx +58 -58
- package/src/lib/plugins/openapi/components/NonHighlightedCode.tsx +22 -22
- package/src/lib/plugins/openapi/components/ResponseContent.tsx +117 -117
- package/src/lib/plugins/openapi/components/SelectOnClick.tsx +29 -29
- package/src/lib/plugins/openapi/context.tsx +16 -16
- package/src/lib/plugins/openapi/graphql/fragment-masking.ts +104 -104
- package/src/lib/plugins/openapi/graphql/gql.ts +95 -95
- package/src/lib/plugins/openapi/graphql/graphql.ts +835 -835
- package/src/lib/plugins/openapi/graphql/index.ts +2 -2
- package/src/lib/plugins/openapi/index.tsx +221 -221
- package/src/lib/plugins/openapi/interfaces.ts +100 -100
- package/src/lib/plugins/openapi/playground/BodyPanel.tsx +274 -274
- package/src/lib/plugins/openapi/playground/CollapsibleHeader.tsx +51 -51
- package/src/lib/plugins/openapi/playground/ExamplesDropdown.tsx +60 -60
- package/src/lib/plugins/openapi/playground/Headers.tsx +194 -194
- package/src/lib/plugins/openapi/playground/IdentityDialog.tsx +75 -75
- package/src/lib/plugins/openapi/playground/IdentitySelector.tsx +38 -38
- package/src/lib/plugins/openapi/playground/ParamsGrid.tsx +45 -45
- package/src/lib/plugins/openapi/playground/PathParams.tsx +53 -53
- package/src/lib/plugins/openapi/playground/Playground.tsx +602 -602
- package/src/lib/plugins/openapi/playground/PlaygroundDialog.tsx +62 -62
- package/src/lib/plugins/openapi/playground/QueryParams.tsx +151 -151
- package/src/lib/plugins/openapi/playground/RequestLoginDialog.tsx +70 -70
- package/src/lib/plugins/openapi/playground/Spinner.tsx +87 -87
- package/src/lib/plugins/openapi/playground/createUrl.ts +25 -25
- package/src/lib/plugins/openapi/playground/fileUtils.ts +36 -36
- package/src/lib/plugins/openapi/playground/rememberedIdentity.ts +26 -26
- package/src/lib/plugins/openapi/playground/request-panel/MultipartField.tsx +91 -91
- package/src/lib/plugins/openapi/playground/request-panel/UrlPath.tsx +31 -31
- package/src/lib/plugins/openapi/playground/request-panel/UrlQueryParams.tsx +29 -29
- package/src/lib/plugins/openapi/playground/request-panel/useKeyValueFieldManager.ts +340 -340
- package/src/lib/plugins/openapi/playground/result-panel/AudioPlayer.tsx +50 -50
- package/src/lib/plugins/openapi/playground/result-panel/ResponseStatusBar.tsx +117 -117
- package/src/lib/plugins/openapi/playground/result-panel/ResponseTab.tsx +355 -355
- package/src/lib/plugins/openapi/playground/result-panel/ResultPanel.tsx +106 -106
- package/src/lib/plugins/openapi/playground/result-panel/convertToTypes.ts +36 -36
- package/src/lib/plugins/openapi/playground/serializeQueryParams.ts +125 -125
- package/src/lib/plugins/openapi/playground/useRememberSkipLoginDialog.tsx +23 -23
- package/src/lib/plugins/openapi/processors/injectApitogoGatewayServer.ts +36 -36
- package/src/lib/plugins/openapi/processors/removeExtensions.ts +29 -29
- package/src/lib/plugins/openapi/processors/removeParameters.ts +103 -103
- package/src/lib/plugins/openapi/processors/removePaths.ts +57 -57
- package/src/lib/plugins/openapi/processors/traverse.ts +1 -1
- package/src/lib/plugins/openapi/schema/SchemaExampleAndDefault.tsx +39 -39
- package/src/lib/plugins/openapi/schema/SchemaPropertyItem.tsx +189 -189
- package/src/lib/plugins/openapi/schema/SchemaView.tsx +299 -299
- package/src/lib/plugins/openapi/schema/UnionView.tsx +132 -132
- package/src/lib/plugins/openapi/schema/union-helpers.ts +123 -123
- package/src/lib/plugins/openapi/schema/utils.ts +49 -49
- package/src/lib/plugins/openapi/state.ts +36 -36
- package/src/lib/plugins/openapi/util/buildTagCategories.ts +54 -54
- package/src/lib/plugins/openapi/util/createHttpSnippet.ts +135 -135
- package/src/lib/plugins/openapi/util/createNavigationCategory.tsx +39 -39
- package/src/lib/plugins/openapi/util/generateSchemaExample.ts +191 -191
- package/src/lib/plugins/openapi/util/getRoutes.tsx +265 -265
- package/src/lib/plugins/openapi/util/methodColorMap.tsx +11 -11
- package/src/lib/plugins/openapi/util/methodToColor.ts +27 -27
- package/src/lib/plugins/openapi/util/sanitizeMarkdownForMetatag.tsx +32 -32
- package/src/lib/plugins/openapi/util/useWarmupSchema.ts +23 -23
- package/src/lib/plugins/search-inkeep/index.tsx +108 -108
- package/src/lib/plugins/search-inkeep/inkeep.ts +24 -24
- package/src/lib/plugins/search-pagefind/IndexingDialog.tsx +162 -162
- package/src/lib/plugins/search-pagefind/PagefindSearch.tsx +202 -202
- package/src/lib/plugins/search-pagefind/ResultList.tsx +122 -122
- package/src/lib/plugins/search-pagefind/get-results.tsx +74 -74
- package/src/lib/plugins/search-pagefind/index.tsx +21 -21
- package/src/lib/plugins/search-pagefind/types.ts +118 -118
- package/src/lib/shiki-constants.ts +24 -24
- package/src/lib/shiki.ts +179 -179
- package/src/lib/testing/index.tsx +147 -147
- package/src/lib/ui/Accordion.tsx +55 -55
- package/src/lib/ui/ActionButton.tsx +21 -21
- package/src/lib/ui/Alert.tsx +84 -84
- package/src/lib/ui/AlertDialog.tsx +195 -195
- package/src/lib/ui/AspectRatio.tsx +5 -5
- package/src/lib/ui/Badge.tsx +48 -48
- package/src/lib/ui/Breadcrumb.tsx +115 -115
- package/src/lib/ui/Button.tsx +65 -65
- package/src/lib/ui/ButtonGroup.tsx +80 -80
- package/src/lib/ui/Callout.tsx +113 -113
- package/src/lib/ui/Card.tsx +95 -95
- package/src/lib/ui/Carousel.tsx +259 -259
- package/src/lib/ui/Checkbox.tsx +28 -28
- package/src/lib/ui/CodeBlock.tsx +92 -92
- package/src/lib/ui/CodeTabPanel.tsx +13 -13
- package/src/lib/ui/CodeTabs.tsx +161 -161
- package/src/lib/ui/Collapsible.tsx +31 -31
- package/src/lib/ui/Command.tsx +191 -191
- package/src/lib/ui/Dialog.tsx +138 -138
- package/src/lib/ui/DismissibleAlert.tsx +74 -74
- package/src/lib/ui/Drawer.tsx +121 -121
- package/src/lib/ui/DropdownMenu.tsx +254 -254
- package/src/lib/ui/EmbeddedCodeBlock.tsx +99 -99
- package/src/lib/ui/Form.tsx +176 -176
- package/src/lib/ui/Frame.tsx +81 -81
- package/src/lib/ui/HoverCard.tsx +26 -26
- package/src/lib/ui/Input.tsx +23 -23
- package/src/lib/ui/InputGroup.tsx +168 -168
- package/src/lib/ui/Item.tsx +213 -213
- package/src/lib/ui/Kbd.tsx +28 -28
- package/src/lib/ui/Label.tsx +23 -23
- package/src/lib/ui/NativeSelect.tsx +48 -48
- package/src/lib/ui/NavigationMenu.tsx +169 -169
- package/src/lib/ui/Pagination.tsx +115 -115
- package/src/lib/ui/Popover.tsx +28 -28
- package/src/lib/ui/Progress.tsx +25 -25
- package/src/lib/ui/RadioGroup.tsx +41 -41
- package/src/lib/ui/ReactComponentDoc.tsx +68 -68
- package/src/lib/ui/ScrollArea.tsx +45 -45
- package/src/lib/ui/Secret.tsx +133 -133
- package/src/lib/ui/Select.tsx +184 -184
- package/src/lib/ui/Separator.tsx +25 -25
- package/src/lib/ui/Skeleton.tsx +15 -15
- package/src/lib/ui/Slider.tsx +25 -25
- package/src/lib/ui/Stepper.tsx +8 -8
- package/src/lib/ui/Switch.tsx +26 -26
- package/src/lib/ui/SyntaxHighlight.tsx +54 -54
- package/src/lib/ui/Tabs.tsx +52 -52
- package/src/lib/ui/Textarea.tsx +22 -22
- package/src/lib/ui/Toggle.tsx +42 -42
- package/src/lib/ui/ToggleGroup.tsx +58 -58
- package/src/lib/ui/Tooltip.tsx +65 -65
- package/src/lib/ui/Value.tsx +42 -42
- package/src/lib/ui/util.tsx +8 -8
- package/src/lib/util/MdxComponents.tsx +150 -150
- package/src/lib/util/cn.ts +6 -6
- package/src/lib/util/createVariantComponent.tsx +61 -61
- package/src/lib/util/ensureArray.ts +3 -3
- package/src/lib/util/flattenAllOf.ts +72 -72
- package/src/lib/util/flattenAllOfProcessor.ts +74 -74
- package/src/lib/util/hastToJsx.tsx +67 -67
- package/src/lib/util/humanFileSize.ts +15 -15
- package/src/lib/util/invariant.ts +52 -52
- package/src/lib/util/joinUrl.ts +60 -60
- package/src/lib/util/logInit.ts +9 -9
- package/src/lib/util/objectEntries.ts +5 -5
- package/src/lib/util/os.ts +18 -18
- package/src/lib/util/pastellize.ts +25 -25
- package/src/lib/util/problemJson.ts +63 -63
- package/src/lib/util/readFrontmatter.ts +14 -14
- package/src/lib/util/renderIf.ts +4 -4
- package/src/lib/util/scrollIntoViewIfNeeded.ts +18 -18
- package/src/lib/util/slugify.ts +21 -21
- package/src/lib/util/syncZustandState.ts +22 -22
- package/src/lib/util/traverse.ts +70 -70
- package/src/lib/util/types.ts +7 -7
- package/src/lib/util/url.ts +18 -18
- package/src/lib/util/useCopyToClipboard.ts +17 -17
- package/src/lib/util/useExposedProps.tsx +27 -27
- package/src/lib/util/useIsomorphicLayoutEffect.ts +6 -6
- package/src/lib/util/useLatest.ts +18 -18
- package/src/lib/util/useOnScreen.ts +34 -34
- package/src/lib/util/useScrollToAnchor.ts +75 -75
- package/src/lib/util/useScrollToTop.ts +18 -18
- package/src/types.d.ts +66 -66
- package/src/vite/api/SchemaManager.ts +371 -371
- package/src/vite/api/schema-codegen.ts +163 -163
- package/src/vite/build.ts +237 -237
- package/src/vite/config.ts +273 -273
- package/src/vite/css/collect.ts +42 -42
- package/src/vite/css/plugin.ts +105 -105
- package/src/vite/debug.ts +18 -18
- package/src/vite/dev-portal-env.ts +29 -29
- package/src/vite/dev-server.ts +294 -294
- package/src/vite/html.ts +52 -52
- package/src/vite/index.ts +2 -2
- package/src/vite/llms.ts +99 -99
- package/src/vite/mdx/rehype-extract-toc-with-jsx-export.ts +19 -19
- package/src/vite/mdx/rehype-extract-toc-with-jsx.ts +70 -70
- package/src/vite/mdx/remark-code-tabs.ts +47 -47
- package/src/vite/mdx/remark-inject-filepath.ts +13 -13
- package/src/vite/mdx/remark-last-modified.ts +103 -103
- package/src/vite/mdx/remark-link-rewrite.ts +23 -23
- package/src/vite/mdx/remark-normalize-image-url.ts +15 -15
- package/src/vite/mdx/remark-static-generation.ts +149 -149
- package/src/vite/mdx/utils.ts +32 -32
- package/src/vite/output.ts +261 -261
- package/src/vite/package-root.ts +12 -12
- package/src/vite/pagefind-dev-index.ts +100 -100
- package/src/vite/pagefind-dev-stub.ts +17 -17
- package/src/vite/plugin-api-keys.ts +55 -55
- package/src/vite/plugin-api.ts +328 -328
- package/src/vite/plugin-auth.ts +41 -41
- package/src/vite/plugin-component.ts +45 -45
- package/src/vite/plugin-config-reload.ts +47 -47
- package/src/vite/plugin-config.ts +131 -131
- package/src/vite/plugin-custom-pages.ts +36 -36
- package/src/vite/plugin-doc-metadata.ts +45 -45
- package/src/vite/plugin-docs.ts +205 -205
- package/src/vite/plugin-local-manifest.ts +100 -100
- package/src/vite/plugin-markdown-export.ts +214 -214
- package/src/vite/plugin-mdx.ts +149 -149
- package/src/vite/plugin-metadata.ts +30 -30
- package/src/vite/plugin-modules.ts +188 -188
- package/src/vite/plugin-navigation.ts +106 -106
- package/src/vite/plugin-offroot-resolve.ts +67 -67
- package/src/vite/plugin-search.ts +59 -59
- package/src/vite/plugin-shiki-register.ts +97 -97
- package/src/vite/plugin-theme.ts +458 -458
- package/src/vite/plugin.ts +48 -48
- package/src/vite/prerender/prerender.ts +242 -242
- package/src/vite/prerender/utils.ts +76 -76
- package/src/vite/prerender/worker.ts +118 -118
- package/src/vite/reporter.ts +34 -34
- package/src/vite/shadcn-registry.ts +48 -48
- package/src/vite/sitemap.ts +78 -78
- package/src/vite/ssr-templates/cloudflare.ts +19 -19
- package/src/vite/ssr-templates/node.ts +25 -25
- package/src/vite/ssr-templates/vercel.ts +22 -22
- package/src/vite/watch-ignore.ts +70 -70
- package/src/vite/zuplo.ts +30 -30
- package/src/vite-env.d.ts +6 -6
- package/src/zuplo/enrich-with-zuplo-mcp.ts +168 -168
- package/src/zuplo/enrich-with-zuplo.ts +256 -256
- package/src/zuplo/policy-types.ts +46 -46
- package/src/zuplo/with-zuplo-processors.ts +36 -36
- package/src/zuplo/with-zuplo.ts +14 -14
- package/dist/declarations/cli/platform/client/deploy-server.d.ts +0 -16
|
@@ -1,41 +1,41 @@
|
|
|
1
|
-
---
|
|
2
|
-
title: Apache & Nginx
|
|
3
|
-
---
|
|
4
|
-
|
|
5
|
-
APIToGo generates static HTML files for each page during build. Your server must be configured to
|
|
6
|
-
serve these files correctly.
|
|
7
|
-
|
|
8
|
-
## Apache
|
|
9
|
-
|
|
10
|
-
Create a `.htaccess` file in your document root (alongside `index.html`):
|
|
11
|
-
|
|
12
|
-
```apache
|
|
13
|
-
RewriteEngine On
|
|
14
|
-
|
|
15
|
-
RewriteCond %{REQUEST_FILENAME} !-f
|
|
16
|
-
RewriteCond %{REQUEST_FILENAME}.html -f
|
|
17
|
-
RewriteRule ^(.*)$ $1.html [L]
|
|
18
|
-
|
|
19
|
-
RewriteCond %{REQUEST_FILENAME} !-f
|
|
20
|
-
RewriteCond %{REQUEST_FILENAME} !-d
|
|
21
|
-
RewriteRule ^ index.html [L]
|
|
22
|
-
```
|
|
23
|
-
|
|
24
|
-
Requires `mod_rewrite` enabled and `AllowOverride All` in your Apache configuration.
|
|
25
|
-
|
|
26
|
-
## Nginx
|
|
27
|
-
|
|
28
|
-
Add a `try_files` directive to your server block:
|
|
29
|
-
|
|
30
|
-
```nginx
|
|
31
|
-
server {
|
|
32
|
-
listen 80;
|
|
33
|
-
server_name example.com;
|
|
34
|
-
root /var/www/html;
|
|
35
|
-
index index.html;
|
|
36
|
-
|
|
37
|
-
location / {
|
|
38
|
-
try_files $uri $uri.html $uri/ /index.html;
|
|
39
|
-
}
|
|
40
|
-
}
|
|
41
|
-
```
|
|
1
|
+
---
|
|
2
|
+
title: Apache & Nginx
|
|
3
|
+
---
|
|
4
|
+
|
|
5
|
+
APIToGo generates static HTML files for each page during build. Your server must be configured to
|
|
6
|
+
serve these files correctly.
|
|
7
|
+
|
|
8
|
+
## Apache
|
|
9
|
+
|
|
10
|
+
Create a `.htaccess` file in your document root (alongside `index.html`):
|
|
11
|
+
|
|
12
|
+
```apache
|
|
13
|
+
RewriteEngine On
|
|
14
|
+
|
|
15
|
+
RewriteCond %{REQUEST_FILENAME} !-f
|
|
16
|
+
RewriteCond %{REQUEST_FILENAME}.html -f
|
|
17
|
+
RewriteRule ^(.*)$ $1.html [L]
|
|
18
|
+
|
|
19
|
+
RewriteCond %{REQUEST_FILENAME} !-f
|
|
20
|
+
RewriteCond %{REQUEST_FILENAME} !-d
|
|
21
|
+
RewriteRule ^ index.html [L]
|
|
22
|
+
```
|
|
23
|
+
|
|
24
|
+
Requires `mod_rewrite` enabled and `AllowOverride All` in your Apache configuration.
|
|
25
|
+
|
|
26
|
+
## Nginx
|
|
27
|
+
|
|
28
|
+
Add a `try_files` directive to your server block:
|
|
29
|
+
|
|
30
|
+
```nginx
|
|
31
|
+
server {
|
|
32
|
+
listen 80;
|
|
33
|
+
server_name example.com;
|
|
34
|
+
root /var/www/html;
|
|
35
|
+
index index.html;
|
|
36
|
+
|
|
37
|
+
location / {
|
|
38
|
+
try_files $uri $uri.html $uri/ /index.html;
|
|
39
|
+
}
|
|
40
|
+
}
|
|
41
|
+
```
|
package/docs/deploy/apitogo.md
CHANGED
|
@@ -1,17 +1,17 @@
|
|
|
1
|
-
# Deploy with APIToGo CLI
|
|
2
|
-
|
|
3
|
-
Platform publish is **`npx apitogo deploy`** — the same engine as MCP `publish_dev_portal`.
|
|
4
|
-
|
|
5
|
-
Full walkthrough (prerequisites, secrets, `--only`, status, teardown):
|
|
6
|
-
|
|
7
|
-
→ **[Go live with CLI](../cli/go-live.md)**
|
|
8
|
-
|
|
9
|
-
Quick reference:
|
|
10
|
-
|
|
11
|
-
```bash
|
|
12
|
-
export APITOGO_API_KEY_ID=apk_...
|
|
13
|
-
export APITOGO_API_SECRET=...
|
|
14
|
-
cd ./dev-portal
|
|
15
|
-
npx apitogo deploy --platform-plan free
|
|
16
|
-
npx apitogo status
|
|
17
|
-
```
|
|
1
|
+
# Deploy with APIToGo CLI
|
|
2
|
+
|
|
3
|
+
Platform publish is **`npx apitogo deploy`** — the same engine as MCP `publish_dev_portal`.
|
|
4
|
+
|
|
5
|
+
Full walkthrough (prerequisites, secrets, `--only`, status, teardown):
|
|
6
|
+
|
|
7
|
+
→ **[Go live with CLI](../cli/go-live.md)**
|
|
8
|
+
|
|
9
|
+
Quick reference:
|
|
10
|
+
|
|
11
|
+
```bash
|
|
12
|
+
export APITOGO_API_KEY_ID=apk_...
|
|
13
|
+
export APITOGO_API_SECRET=...
|
|
14
|
+
cd ./dev-portal
|
|
15
|
+
npx apitogo deploy --platform-plan free
|
|
16
|
+
npx apitogo status
|
|
17
|
+
```
|
|
@@ -1,74 +1,74 @@
|
|
|
1
|
-
---
|
|
2
|
-
title: Cloudflare Pages
|
|
3
|
-
---
|
|
4
|
-
|
|
5
|
-
[Pages](https://developers.cloudflare.com/pages) is a low configuration way of publishing your
|
|
6
|
-
documentation.
|
|
7
|
-
|
|
8
|
-
## Prerequisites
|
|
9
|
-
|
|
10
|
-
To publish your site to Cloudflare Pages you will need:
|
|
11
|
-
|
|
12
|
-
- A Cloudflare account
|
|
13
|
-
|
|
14
|
-
Optionally, you may also need:
|
|
15
|
-
|
|
16
|
-
- A GitHub or GitLab account (optional)
|
|
17
|
-
|
|
18
|
-
## Deploying to Pages
|
|
19
|
-
|
|
20
|
-
Cloudflare offers three different ways to create Pages sites.
|
|
21
|
-
|
|
22
|
-
1. Using the [Cloudflare CLI](https://developers.cloudflare.com/pages/get-started/c3/)
|
|
23
|
-
2. Directly uploading the files using
|
|
24
|
-
[drag and drop](https://developers.cloudflare.com/pages/get-started/direct-upload/#drag-and-drop),
|
|
25
|
-
or their
|
|
26
|
-
[Wrangler CLI](https://developers.cloudflare.com/pages/get-started/direct-upload/#wrangler-cli)
|
|
27
|
-
3. Integration with
|
|
28
|
-
[GitHub or GitLab](https://developers.cloudflare.com/pages/get-started/git-integration/)
|
|
29
|
-
|
|
30
|
-
It's up to you which approach you choose but the fastest approach is to use the Wrangler CLI.
|
|
31
|
-
|
|
32
|
-
## Deploy using Wrangler
|
|
33
|
-
|
|
34
|
-
Wrangler makes light work of deploying to Cloudflare Pages, but first you need to get your files in
|
|
35
|
-
order.
|
|
36
|
-
|
|
37
|
-
Build the static version of your documentation site by running:
|
|
38
|
-
|
|
39
|
-
```bash
|
|
40
|
-
npm run build
|
|
41
|
-
```
|
|
42
|
-
|
|
43
|
-
This will generate a new folder called `dist` that contains all the files that you need to deploy.
|
|
44
|
-
|
|
45
|
-
Next, if you don't already have one, create a new Pages project:
|
|
46
|
-
|
|
47
|
-
```bash
|
|
48
|
-
npx wrangler pages project create
|
|
49
|
-
```
|
|
50
|
-
|
|
51
|
-
Finally, deploy the files to the new project:
|
|
52
|
-
|
|
53
|
-
```bash
|
|
54
|
-
npx wrangler pages deploy ./dist
|
|
55
|
-
```
|
|
56
|
-
|
|
57
|
-
Within a few seconds the site will be live and viewable at `<your-project-name>.pages.dev`.
|
|
58
|
-
|
|
59
|
-
## Accurate Last Modified Dates
|
|
60
|
-
|
|
61
|
-
If you have enabled the [`showLastModified`](/docs/configuration/docs#showlastmodified) option,
|
|
62
|
-
APIToGo automatically tracks the last modified date of your documentation pages using Git history.
|
|
63
|
-
However, Cloudflare Pages performs shallow clones by default, which can result in inaccurate "Last
|
|
64
|
-
Modified" dates for pages that haven't been updated recently.
|
|
65
|
-
|
|
66
|
-
To ensure accurate last modified dates when using Git integration with Cloudflare Pages, modify your
|
|
67
|
-
build command to fetch the full history before building:
|
|
68
|
-
|
|
69
|
-
```bash
|
|
70
|
-
git fetch --unshallow && npm run build
|
|
71
|
-
```
|
|
72
|
-
|
|
73
|
-
This command converts the shallow clone to a full clone before running your build, ensuring all
|
|
74
|
-
pages show their correct last modified dates.
|
|
1
|
+
---
|
|
2
|
+
title: Cloudflare Pages
|
|
3
|
+
---
|
|
4
|
+
|
|
5
|
+
[Pages](https://developers.cloudflare.com/pages) is a low configuration way of publishing your
|
|
6
|
+
documentation.
|
|
7
|
+
|
|
8
|
+
## Prerequisites
|
|
9
|
+
|
|
10
|
+
To publish your site to Cloudflare Pages you will need:
|
|
11
|
+
|
|
12
|
+
- A Cloudflare account
|
|
13
|
+
|
|
14
|
+
Optionally, you may also need:
|
|
15
|
+
|
|
16
|
+
- A GitHub or GitLab account (optional)
|
|
17
|
+
|
|
18
|
+
## Deploying to Pages
|
|
19
|
+
|
|
20
|
+
Cloudflare offers three different ways to create Pages sites.
|
|
21
|
+
|
|
22
|
+
1. Using the [Cloudflare CLI](https://developers.cloudflare.com/pages/get-started/c3/)
|
|
23
|
+
2. Directly uploading the files using
|
|
24
|
+
[drag and drop](https://developers.cloudflare.com/pages/get-started/direct-upload/#drag-and-drop),
|
|
25
|
+
or their
|
|
26
|
+
[Wrangler CLI](https://developers.cloudflare.com/pages/get-started/direct-upload/#wrangler-cli)
|
|
27
|
+
3. Integration with
|
|
28
|
+
[GitHub or GitLab](https://developers.cloudflare.com/pages/get-started/git-integration/)
|
|
29
|
+
|
|
30
|
+
It's up to you which approach you choose but the fastest approach is to use the Wrangler CLI.
|
|
31
|
+
|
|
32
|
+
## Deploy using Wrangler
|
|
33
|
+
|
|
34
|
+
Wrangler makes light work of deploying to Cloudflare Pages, but first you need to get your files in
|
|
35
|
+
order.
|
|
36
|
+
|
|
37
|
+
Build the static version of your documentation site by running:
|
|
38
|
+
|
|
39
|
+
```bash
|
|
40
|
+
npm run build
|
|
41
|
+
```
|
|
42
|
+
|
|
43
|
+
This will generate a new folder called `dist` that contains all the files that you need to deploy.
|
|
44
|
+
|
|
45
|
+
Next, if you don't already have one, create a new Pages project:
|
|
46
|
+
|
|
47
|
+
```bash
|
|
48
|
+
npx wrangler pages project create
|
|
49
|
+
```
|
|
50
|
+
|
|
51
|
+
Finally, deploy the files to the new project:
|
|
52
|
+
|
|
53
|
+
```bash
|
|
54
|
+
npx wrangler pages deploy ./dist
|
|
55
|
+
```
|
|
56
|
+
|
|
57
|
+
Within a few seconds the site will be live and viewable at `<your-project-name>.pages.dev`.
|
|
58
|
+
|
|
59
|
+
## Accurate Last Modified Dates
|
|
60
|
+
|
|
61
|
+
If you have enabled the [`showLastModified`](/docs/configuration/docs#showlastmodified) option,
|
|
62
|
+
APIToGo automatically tracks the last modified date of your documentation pages using Git history.
|
|
63
|
+
However, Cloudflare Pages performs shallow clones by default, which can result in inaccurate "Last
|
|
64
|
+
Modified" dates for pages that haven't been updated recently.
|
|
65
|
+
|
|
66
|
+
To ensure accurate last modified dates when using Git integration with Cloudflare Pages, modify your
|
|
67
|
+
build command to fetch the full history before building:
|
|
68
|
+
|
|
69
|
+
```bash
|
|
70
|
+
git fetch --unshallow && npm run build
|
|
71
|
+
```
|
|
72
|
+
|
|
73
|
+
This command converts the shallow clone to a full clone before running your build, ensuring all
|
|
74
|
+
pages show their correct last modified dates.
|
|
@@ -1,17 +1,17 @@
|
|
|
1
|
-
---
|
|
2
|
-
title: Upload/FTP
|
|
3
|
-
---
|
|
4
|
-
|
|
5
|
-
APIToGo can produce a build of static HTML, JavaScript and CSS files that you can deploy directly to
|
|
6
|
-
your own server.
|
|
7
|
-
|
|
8
|
-
## Build locally
|
|
9
|
-
|
|
10
|
-
To prepare the files you need to upload to your server, you will need to use the build command.
|
|
11
|
-
|
|
12
|
-
```bash
|
|
13
|
-
npm run build
|
|
14
|
-
```
|
|
15
|
-
|
|
16
|
-
Once complete, you will see a new `dist` folder in the root of your project that includes the files
|
|
17
|
-
you need to upload.
|
|
1
|
+
---
|
|
2
|
+
title: Upload/FTP
|
|
3
|
+
---
|
|
4
|
+
|
|
5
|
+
APIToGo can produce a build of static HTML, JavaScript and CSS files that you can deploy directly to
|
|
6
|
+
your own server.
|
|
7
|
+
|
|
8
|
+
## Build locally
|
|
9
|
+
|
|
10
|
+
To prepare the files you need to upload to your server, you will need to use the build command.
|
|
11
|
+
|
|
12
|
+
```bash
|
|
13
|
+
npm run build
|
|
14
|
+
```
|
|
15
|
+
|
|
16
|
+
Once complete, you will see a new `dist` folder in the root of your project that includes the files
|
|
17
|
+
you need to upload.
|
|
@@ -1,49 +1,49 @@
|
|
|
1
|
-
---
|
|
2
|
-
title: GitHub Pages
|
|
3
|
-
---
|
|
4
|
-
|
|
5
|
-
[GitHub Pages](https://pages.github.com/) is a great way to publish your documentation, especially
|
|
6
|
-
if you are using GitHub for source control.
|
|
7
|
-
|
|
8
|
-
## Prerequisites
|
|
9
|
-
|
|
10
|
-
To publish your site to GitHub Pages you will need:
|
|
11
|
-
|
|
12
|
-
- A GitHub account
|
|
13
|
-
|
|
14
|
-
## Deploying to GitHub Pages
|
|
15
|
-
|
|
16
|
-
Use the
|
|
17
|
-
[GitHub Actions Workflow](https://docs.github.com/en/pages/getting-started-with-github-pages/configuring-a-publishing-source-for-your-github-pages-site#publishing-with-a-custom-github-actions-workflow).
|
|
18
|
-
|
|
19
|
-
You might need to configure the `basePath` in your site config.ts depending on how your site is
|
|
20
|
-
hosted. For instance, if your site is available at username.github.io/your-repo/ you would set the
|
|
21
|
-
`basePath` to `/your-repo`.
|
|
22
|
-
|
|
23
|
-
```typescript
|
|
24
|
-
import type { ApitogoConfig } from "@lukoweb/apitogo";
|
|
25
|
-
|
|
26
|
-
const config: ApitogoConfig = {
|
|
27
|
-
basePath: "/your-repo",
|
|
28
|
-
//...
|
|
29
|
-
};
|
|
30
|
-
```
|
|
31
|
-
|
|
32
|
-
## Accurate Last Modified Dates
|
|
33
|
-
|
|
34
|
-
If you have enabled the [`showLastModified`](/docs/configuration/docs#showlastmodified) option,
|
|
35
|
-
APIToGo automatically tracks the last modified date of your documentation pages using Git history.
|
|
36
|
-
However, GitHub Actions performs shallow clones by default, which can result in inaccurate "Last
|
|
37
|
-
Modified" dates for pages that haven't been updated recently.
|
|
38
|
-
|
|
39
|
-
To ensure accurate last modified dates, configure the `actions/checkout` step to fetch the full
|
|
40
|
-
history:
|
|
41
|
-
|
|
42
|
-
```yaml
|
|
43
|
-
- uses: actions/checkout@v4
|
|
44
|
-
with:
|
|
45
|
-
fetch-depth: 0 # Fetch all history for all branches and tags
|
|
46
|
-
```
|
|
47
|
-
|
|
48
|
-
For more details, see the
|
|
49
|
-
[actions/checkout documentation](https://github.com/actions/checkout#fetch-all-history-for-all-tags-and-branches).
|
|
1
|
+
---
|
|
2
|
+
title: GitHub Pages
|
|
3
|
+
---
|
|
4
|
+
|
|
5
|
+
[GitHub Pages](https://pages.github.com/) is a great way to publish your documentation, especially
|
|
6
|
+
if you are using GitHub for source control.
|
|
7
|
+
|
|
8
|
+
## Prerequisites
|
|
9
|
+
|
|
10
|
+
To publish your site to GitHub Pages you will need:
|
|
11
|
+
|
|
12
|
+
- A GitHub account
|
|
13
|
+
|
|
14
|
+
## Deploying to GitHub Pages
|
|
15
|
+
|
|
16
|
+
Use the
|
|
17
|
+
[GitHub Actions Workflow](https://docs.github.com/en/pages/getting-started-with-github-pages/configuring-a-publishing-source-for-your-github-pages-site#publishing-with-a-custom-github-actions-workflow).
|
|
18
|
+
|
|
19
|
+
You might need to configure the `basePath` in your site config.ts depending on how your site is
|
|
20
|
+
hosted. For instance, if your site is available at username.github.io/your-repo/ you would set the
|
|
21
|
+
`basePath` to `/your-repo`.
|
|
22
|
+
|
|
23
|
+
```typescript
|
|
24
|
+
import type { ApitogoConfig } from "@lukoweb/apitogo";
|
|
25
|
+
|
|
26
|
+
const config: ApitogoConfig = {
|
|
27
|
+
basePath: "/your-repo",
|
|
28
|
+
//...
|
|
29
|
+
};
|
|
30
|
+
```
|
|
31
|
+
|
|
32
|
+
## Accurate Last Modified Dates
|
|
33
|
+
|
|
34
|
+
If you have enabled the [`showLastModified`](/docs/configuration/docs#showlastmodified) option,
|
|
35
|
+
APIToGo automatically tracks the last modified date of your documentation pages using Git history.
|
|
36
|
+
However, GitHub Actions performs shallow clones by default, which can result in inaccurate "Last
|
|
37
|
+
Modified" dates for pages that haven't been updated recently.
|
|
38
|
+
|
|
39
|
+
To ensure accurate last modified dates, configure the `actions/checkout` step to fetch the full
|
|
40
|
+
history:
|
|
41
|
+
|
|
42
|
+
```yaml
|
|
43
|
+
- uses: actions/checkout@v4
|
|
44
|
+
with:
|
|
45
|
+
fetch-depth: 0 # Fetch all history for all branches and tags
|
|
46
|
+
```
|
|
47
|
+
|
|
48
|
+
For more details, see the
|
|
49
|
+
[actions/checkout documentation](https://github.com/actions/checkout#fetch-all-history-for-all-tags-and-branches).
|
package/docs/deploy/vercel.md
CHANGED
|
@@ -1,101 +1,101 @@
|
|
|
1
|
-
---
|
|
2
|
-
title: Vercel
|
|
3
|
-
---
|
|
4
|
-
|
|
5
|
-
[Vercel](https://vercel.com) offers multiple ways to deploy to its service, including via GitHub,
|
|
6
|
-
and their CLI. You can read more about them in their
|
|
7
|
-
[Deployments Overview](https://vercel.com/docs/deployments/overview).
|
|
8
|
-
|
|
9
|
-
## Prerequisites
|
|
10
|
-
|
|
11
|
-
To deploy to Vercel you will need:
|
|
12
|
-
|
|
13
|
-
- A Vercel account (free)
|
|
14
|
-
- A GitHub account (if deploying via GitHub)
|
|
15
|
-
- The Vercel CLI
|
|
16
|
-
|
|
17
|
-
Deploying your APIToGo powered documentation using the Vercel CLI is what we will cover in this
|
|
18
|
-
guide.
|
|
19
|
-
|
|
20
|
-
## Install the CLI
|
|
21
|
-
|
|
22
|
-
To get started you need to install the CLI:
|
|
23
|
-
|
|
24
|
-
```bash
|
|
25
|
-
npm i -g vercel
|
|
26
|
-
```
|
|
27
|
-
|
|
28
|
-
## Setup a new project
|
|
29
|
-
|
|
30
|
-
Next, set up a new Vercel project in the root of your docs:
|
|
31
|
-
|
|
32
|
-
```bash
|
|
33
|
-
vercel
|
|
34
|
-
```
|
|
35
|
-
|
|
36
|
-
This command will set up everything that is needed to deploy your documentation to Vercel.
|
|
37
|
-
|
|
38
|
-
It will ask some specific questions including the project name and where the code is located. You
|
|
39
|
-
can answer however you like for these.
|
|
40
|
-
|
|
41
|
-
When you get to this step:
|
|
42
|
-
|
|
43
|
-
```ansi
|
|
44
|
-
No framework detected. Default Project Settings:
|
|
45
|
-
- Build Command: `npm run vercel-build` or `npm run build`
|
|
46
|
-
- Development Command: None
|
|
47
|
-
- Install Command: `yarn install`, `pnpm install`, `npm install`, or `bun install`
|
|
48
|
-
- Output Directory: `public` if it exists, or `.`
|
|
49
|
-
? Want to modify these settings? (y/N)
|
|
50
|
-
```
|
|
51
|
-
|
|
52
|
-
Answer _Yes_ and select to modify the Output Directory.
|
|
53
|
-
|
|
54
|
-
By default Vercel looks for a directory named `public`, but the APIToGo build will be found in
|
|
55
|
-
`dist`. Set the output directory like this:
|
|
56
|
-
|
|
57
|
-
```ansi
|
|
58
|
-
? What's your Output Directory? dist
|
|
59
|
-
```
|
|
60
|
-
|
|
61
|
-
After this is complete, your site will build and Vercel will respond with the URL for you to test
|
|
62
|
-
it.
|
|
63
|
-
|
|
64
|
-
:::tip{title="Clean URLs"}
|
|
65
|
-
|
|
66
|
-
You will almost certainly want to enable clean URLs for your site. This will remove the `.html`
|
|
67
|
-
extension from your URLs. You can do this by adding a `cleanUrls` property to your `vercel.json`
|
|
68
|
-
file. See the
|
|
69
|
-
[Vercel Configuration](https://vercel.com/docs/projects/project-configuration#cleanurls) for more
|
|
70
|
-
information.
|
|
71
|
-
|
|
72
|
-
:::
|
|
73
|
-
|
|
74
|
-
:::caution{title="Redirects"}
|
|
75
|
-
|
|
76
|
-
If you have redirects in `apitogo.config.json`, you may also need matching entries in `vercel.json`.
|
|
77
|
-
See the [Vercel Configuration](https://vercel.com/docs/projects/project-configuration#redirects) for
|
|
78
|
-
more information.
|
|
79
|
-
|
|
80
|
-
This is a current limitation. See [#115](https://github.com/lukoweb/apitogo-doc-tool/issues/151).
|
|
81
|
-
|
|
82
|
-
:::
|
|
83
|
-
|
|
84
|
-
## Accurate Last Modified Dates
|
|
85
|
-
|
|
86
|
-
If you have enabled the [`showLastModified`](/docs/configuration/docs#showlastmodified) option,
|
|
87
|
-
APIToGo automatically tracks the last modified date of your documentation pages using Git history.
|
|
88
|
-
However, Vercel performs shallow clones by default (only fetching the last 10 commits), which can
|
|
89
|
-
result in inaccurate "Last Modified" dates for pages that haven't been updated recently.
|
|
90
|
-
|
|
91
|
-
To ensure accurate last modified dates, add the `VERCEL_DEEP_CLONE` environment variable to your
|
|
92
|
-
Vercel project:
|
|
93
|
-
|
|
94
|
-
1. Go to your project settings in Vercel
|
|
95
|
-
2. Navigate to "Environment Variables"
|
|
96
|
-
3. Add a new variable: `VERCEL_DEEP_CLONE=true`
|
|
97
|
-
4. Save and redeploy your site
|
|
98
|
-
|
|
99
|
-
This will enable full Git history during builds, ensuring all pages show their correct last modified
|
|
100
|
-
dates. The impact on build time is minimal (typically 5-20 seconds on the first build), and
|
|
101
|
-
subsequent builds benefit from caching.
|
|
1
|
+
---
|
|
2
|
+
title: Vercel
|
|
3
|
+
---
|
|
4
|
+
|
|
5
|
+
[Vercel](https://vercel.com) offers multiple ways to deploy to its service, including via GitHub,
|
|
6
|
+
and their CLI. You can read more about them in their
|
|
7
|
+
[Deployments Overview](https://vercel.com/docs/deployments/overview).
|
|
8
|
+
|
|
9
|
+
## Prerequisites
|
|
10
|
+
|
|
11
|
+
To deploy to Vercel you will need:
|
|
12
|
+
|
|
13
|
+
- A Vercel account (free)
|
|
14
|
+
- A GitHub account (if deploying via GitHub)
|
|
15
|
+
- The Vercel CLI
|
|
16
|
+
|
|
17
|
+
Deploying your APIToGo powered documentation using the Vercel CLI is what we will cover in this
|
|
18
|
+
guide.
|
|
19
|
+
|
|
20
|
+
## Install the CLI
|
|
21
|
+
|
|
22
|
+
To get started you need to install the CLI:
|
|
23
|
+
|
|
24
|
+
```bash
|
|
25
|
+
npm i -g vercel
|
|
26
|
+
```
|
|
27
|
+
|
|
28
|
+
## Setup a new project
|
|
29
|
+
|
|
30
|
+
Next, set up a new Vercel project in the root of your docs:
|
|
31
|
+
|
|
32
|
+
```bash
|
|
33
|
+
vercel
|
|
34
|
+
```
|
|
35
|
+
|
|
36
|
+
This command will set up everything that is needed to deploy your documentation to Vercel.
|
|
37
|
+
|
|
38
|
+
It will ask some specific questions including the project name and where the code is located. You
|
|
39
|
+
can answer however you like for these.
|
|
40
|
+
|
|
41
|
+
When you get to this step:
|
|
42
|
+
|
|
43
|
+
```ansi
|
|
44
|
+
No framework detected. Default Project Settings:
|
|
45
|
+
- Build Command: `npm run vercel-build` or `npm run build`
|
|
46
|
+
- Development Command: None
|
|
47
|
+
- Install Command: `yarn install`, `pnpm install`, `npm install`, or `bun install`
|
|
48
|
+
- Output Directory: `public` if it exists, or `.`
|
|
49
|
+
? Want to modify these settings? (y/N)
|
|
50
|
+
```
|
|
51
|
+
|
|
52
|
+
Answer _Yes_ and select to modify the Output Directory.
|
|
53
|
+
|
|
54
|
+
By default Vercel looks for a directory named `public`, but the APIToGo build will be found in
|
|
55
|
+
`dist`. Set the output directory like this:
|
|
56
|
+
|
|
57
|
+
```ansi
|
|
58
|
+
? What's your Output Directory? dist
|
|
59
|
+
```
|
|
60
|
+
|
|
61
|
+
After this is complete, your site will build and Vercel will respond with the URL for you to test
|
|
62
|
+
it.
|
|
63
|
+
|
|
64
|
+
:::tip{title="Clean URLs"}
|
|
65
|
+
|
|
66
|
+
You will almost certainly want to enable clean URLs for your site. This will remove the `.html`
|
|
67
|
+
extension from your URLs. You can do this by adding a `cleanUrls` property to your `vercel.json`
|
|
68
|
+
file. See the
|
|
69
|
+
[Vercel Configuration](https://vercel.com/docs/projects/project-configuration#cleanurls) for more
|
|
70
|
+
information.
|
|
71
|
+
|
|
72
|
+
:::
|
|
73
|
+
|
|
74
|
+
:::caution{title="Redirects"}
|
|
75
|
+
|
|
76
|
+
If you have redirects in `apitogo.config.json`, you may also need matching entries in `vercel.json`.
|
|
77
|
+
See the [Vercel Configuration](https://vercel.com/docs/projects/project-configuration#redirects) for
|
|
78
|
+
more information.
|
|
79
|
+
|
|
80
|
+
This is a current limitation. See [#115](https://github.com/lukoweb/apitogo-doc-tool/issues/151).
|
|
81
|
+
|
|
82
|
+
:::
|
|
83
|
+
|
|
84
|
+
## Accurate Last Modified Dates
|
|
85
|
+
|
|
86
|
+
If you have enabled the [`showLastModified`](/docs/configuration/docs#showlastmodified) option,
|
|
87
|
+
APIToGo automatically tracks the last modified date of your documentation pages using Git history.
|
|
88
|
+
However, Vercel performs shallow clones by default (only fetching the last 10 commits), which can
|
|
89
|
+
result in inaccurate "Last Modified" dates for pages that haven't been updated recently.
|
|
90
|
+
|
|
91
|
+
To ensure accurate last modified dates, add the `VERCEL_DEEP_CLONE` environment variable to your
|
|
92
|
+
Vercel project:
|
|
93
|
+
|
|
94
|
+
1. Go to your project settings in Vercel
|
|
95
|
+
2. Navigate to "Environment Variables"
|
|
96
|
+
3. Add a new variable: `VERCEL_DEEP_CLONE=true`
|
|
97
|
+
4. Save and redeploy your site
|
|
98
|
+
|
|
99
|
+
This will enable full Git history during builds, ensuring all pages show their correct last modified
|
|
100
|
+
dates. The impact on build time is minimal (typically 5-20 seconds on the first build), and
|
|
101
|
+
subsequent builds benefit from caching.
|
package/docs/deployment.md
CHANGED
|
@@ -1,9 +1,9 @@
|
|
|
1
|
-
# Deployment
|
|
2
|
-
|
|
3
|
-
| Path | Docs |
|
|
4
|
-
| ------------------------------ | ------------------------------------ |
|
|
5
|
-
| **CLI** (`npx apitogo deploy`) | [Go live with CLI](./cli/go-live.md) |
|
|
6
|
-
| **MCP / agents** | [Go live](./mcp/go-live.md) |
|
|
7
|
-
|
|
8
|
-
Local-only builds: `npx apitogo build` (optional `--preview`). Platform publish is always
|
|
9
|
-
`npx apitogo deploy`.
|
|
1
|
+
# Deployment
|
|
2
|
+
|
|
3
|
+
| Path | Docs |
|
|
4
|
+
| ------------------------------ | ------------------------------------ |
|
|
5
|
+
| **CLI** (`npx apitogo deploy`) | [Go live with CLI](./cli/go-live.md) |
|
|
6
|
+
| **MCP / agents** | [Go live](./mcp/go-live.md) |
|
|
7
|
+
|
|
8
|
+
Local-only builds: `npx apitogo build` (optional `--preview`). Platform publish is always
|
|
9
|
+
`npx apitogo deploy`.
|