zuplo 6.67.32 → 6.68.0
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 +9 -0
- package/docs/_index.md +44 -0
- package/docs/ai-gateway/apps.mdx +28 -0
- package/docs/ai-gateway/custom-providers.mdx +54 -0
- package/docs/ai-gateway/getting-started.mdx +224 -0
- package/docs/ai-gateway/guardrails.mdx +65 -0
- package/docs/ai-gateway/integrations/ai-sdk.mdx +109 -0
- package/docs/ai-gateway/integrations/claude-code.mdx +49 -0
- package/docs/ai-gateway/integrations/codex.mdx +78 -0
- package/docs/ai-gateway/integrations/goose.mdx +104 -0
- package/docs/ai-gateway/integrations/langchain.mdx +66 -0
- package/docs/ai-gateway/integrations/openai.mdx +99 -0
- package/docs/ai-gateway/introduction.mdx +85 -0
- package/docs/ai-gateway/managing-apps.mdx +46 -0
- package/docs/ai-gateway/managing-providers.mdx +66 -0
- package/docs/ai-gateway/managing-teams.mdx +63 -0
- package/docs/ai-gateway/policies/akamai-ai-firewall.mdx +125 -0
- package/docs/ai-gateway/policies/comet-opik-tracing.mdx +139 -0
- package/docs/ai-gateway/policies/galileo-tracing.mdx +147 -0
- package/docs/ai-gateway/providers.mdx +32 -0
- package/docs/ai-gateway/teams.mdx +38 -0
- package/docs/ai-gateway/universal-api.mdx +43 -0
- package/docs/ai-gateway/usage-limits.mdx +89 -0
- package/docs/api-management/introduction.md +127 -0
- package/docs/articles/accounts/audit-logs.mdx +227 -0
- package/docs/articles/accounts/billing.mdx +25 -0
- package/docs/articles/accounts/default-api-key.mdx +30 -0
- package/docs/articles/accounts/delete-account.mdx +36 -0
- package/docs/articles/accounts/enterprise-sso.mdx +116 -0
- package/docs/articles/accounts/managing-account-members.mdx +45 -0
- package/docs/articles/accounts/managing-project-members.mdx +37 -0
- package/docs/articles/accounts/members-and-roles.mdx +21 -0
- package/docs/articles/accounts/roles-and-permissions.mdx +115 -0
- package/docs/articles/accounts/zuplo-api-keys.mdx +94 -0
- package/docs/articles/add-api-to-backstage.mdx +216 -0
- package/docs/articles/advanced-path-matching.mdx +139 -0
- package/docs/articles/api-key-administration.mdx +47 -0
- package/docs/articles/api-key-api.mdx +220 -0
- package/docs/articles/api-key-authentication.mdx +195 -0
- package/docs/articles/api-key-buckets.mdx +61 -0
- package/docs/articles/api-key-end-users.mdx +52 -0
- package/docs/articles/api-key-leak-detection.mdx +75 -0
- package/docs/articles/api-key-management.mdx +100 -0
- package/docs/articles/api-key-react-component.mdx +90 -0
- package/docs/articles/api-key-service-limits.mdx +14 -0
- package/docs/articles/archiving-requests-to-storage.mdx +119 -0
- package/docs/articles/branch-based-deployments.mdx +184 -0
- package/docs/articles/bypass-policy-for-testing.mdx +117 -0
- package/docs/articles/check-ip-address.mdx +17 -0
- package/docs/articles/ci-cd-azure/basic-deployment.mdx +49 -0
- package/docs/articles/ci-cd-azure/deploy-and-test.mdx +47 -0
- package/docs/articles/ci-cd-azure/local-testing.mdx +59 -0
- package/docs/articles/ci-cd-azure/multi-stage-deployment.mdx +88 -0
- package/docs/articles/ci-cd-azure/pr-preview-environments.mdx +50 -0
- package/docs/articles/ci-cd-azure/tag-based-releases.mdx +37 -0
- package/docs/articles/ci-cd-bitbucket/basic-deployment.mdx +27 -0
- package/docs/articles/ci-cd-bitbucket/deploy-and-test.mdx +41 -0
- package/docs/articles/ci-cd-bitbucket/local-testing.mdx +34 -0
- package/docs/articles/ci-cd-bitbucket/multi-stage-deployment.mdx +52 -0
- package/docs/articles/ci-cd-bitbucket/pr-preview-environments.mdx +46 -0
- package/docs/articles/ci-cd-bitbucket/tag-based-releases.mdx +27 -0
- package/docs/articles/ci-cd-circleci/basic-deployment.mdx +34 -0
- package/docs/articles/ci-cd-circleci/deploy-and-test.mdx +44 -0
- package/docs/articles/ci-cd-circleci/local-testing.mdx +50 -0
- package/docs/articles/ci-cd-circleci/multi-stage-deployment.mdx +82 -0
- package/docs/articles/ci-cd-circleci/pr-preview-environments.mdx +47 -0
- package/docs/articles/ci-cd-circleci/tag-based-releases.mdx +38 -0
- package/docs/articles/ci-cd-github/basic-deployment.mdx +48 -0
- package/docs/articles/ci-cd-github/cleanup-on-branch-delete.mdx +123 -0
- package/docs/articles/ci-cd-github/deploy-and-test.mdx +82 -0
- package/docs/articles/ci-cd-github/local-testing.mdx +102 -0
- package/docs/articles/ci-cd-github/multi-stage-deployment.mdx +136 -0
- package/docs/articles/ci-cd-github/pr-preview-environments.mdx +106 -0
- package/docs/articles/ci-cd-github/tag-based-releases.mdx +99 -0
- package/docs/articles/ci-cd-gitlab/basic-deployment.mdx +28 -0
- package/docs/articles/ci-cd-gitlab/deploy-and-test.mdx +44 -0
- package/docs/articles/ci-cd-gitlab/local-testing.mdx +39 -0
- package/docs/articles/ci-cd-gitlab/mr-preview-environments.mdx +52 -0
- package/docs/articles/ci-cd-gitlab/multi-stage-deployment.mdx +64 -0
- package/docs/articles/ci-cd-gitlab/tag-based-releases.mdx +28 -0
- package/docs/articles/composite-policy-reference.mdx +284 -0
- package/docs/articles/configuring-auth0-for-mcp-auth.mdx +186 -0
- package/docs/articles/configuring-okta-for-mcp-auth.mdx +208 -0
- package/docs/articles/convert-urls-to-openapi.mdx +62 -0
- package/docs/articles/cors.mdx +447 -0
- package/docs/articles/custom-audit-log-policy.mdx +95 -0
- package/docs/articles/custom-ci-cd-azure.mdx +81 -0
- package/docs/articles/custom-ci-cd-bitbucket.mdx +80 -0
- package/docs/articles/custom-ci-cd-circleci.mdx +78 -0
- package/docs/articles/custom-ci-cd-github.mdx +99 -0
- package/docs/articles/custom-ci-cd-gitlab.mdx +79 -0
- package/docs/articles/custom-ci-cd.mdx +82 -0
- package/docs/articles/custom-code-patterns.md +418 -0
- package/docs/articles/custom-domains.mdx +258 -0
- package/docs/articles/custom-logging-example.mdx +139 -0
- package/docs/articles/ddos-protection.mdx +138 -0
- package/docs/articles/development-options.mdx +49 -0
- package/docs/articles/environment-variables.mdx +134 -0
- package/docs/articles/environments.mdx +143 -0
- package/docs/articles/fastly-zuplo-host-setup.mdx +41 -0
- package/docs/articles/github-deployment-testing.mdx +101 -0
- package/docs/articles/gke-with-upstream-auth-policy.mdx +192 -0
- package/docs/articles/graphql-security.mdx +180 -0
- package/docs/articles/handling-form-data.mdx +61 -0
- package/docs/articles/health-checks.mdx +109 -0
- package/docs/articles/hosting-options.mdx +70 -0
- package/docs/articles/lazy-load-configuration-into-cache.mdx +92 -0
- package/docs/articles/limits.mdx +98 -0
- package/docs/articles/local-development-debugging.mdx +44 -0
- package/docs/articles/local-development-env-variables.mdx +23 -0
- package/docs/articles/local-development-installing-packages.mdx +23 -0
- package/docs/articles/local-development-routes-designer.mdx +27 -0
- package/docs/articles/local-development-services.mdx +40 -0
- package/docs/articles/local-development-troubleshooting.mdx +56 -0
- package/docs/articles/local-development.mdx +81 -0
- package/docs/articles/log-plugin-aws-cloudwatch.mdx +83 -0
- package/docs/articles/log-plugin-datadog.mdx +84 -0
- package/docs/articles/log-plugin-dynatrace.mdx +75 -0
- package/docs/articles/log-plugin-gcp.mdx +75 -0
- package/docs/articles/log-plugin-loki.mdx +136 -0
- package/docs/articles/log-plugin-new-relic.mdx +84 -0
- package/docs/articles/log-plugin-splunk.mdx +104 -0
- package/docs/articles/log-plugin-sumo.mdx +73 -0
- package/docs/articles/log-plugin-vmware-log-insight.mdx +154 -0
- package/docs/articles/log-request-response-data.mdx +398 -0
- package/docs/articles/logging.mdx +115 -0
- package/docs/articles/manual-mcp-oauth-testing.mdx +193 -0
- package/docs/articles/mcp-quickstart.mdx +135 -0
- package/docs/articles/metrics-plugins.mdx +371 -0
- package/docs/articles/migrate-from-apigee.md +408 -0
- package/docs/articles/migrate-from-aws-api-gateway.md +248 -0
- package/docs/articles/migrate-from-azure-apim.md +292 -0
- package/docs/articles/migrate-from-kong.md +300 -0
- package/docs/articles/migration-overview.md +81 -0
- package/docs/articles/monetization/api-access.mdx +69 -0
- package/docs/articles/monetization/billing-models.md +520 -0
- package/docs/articles/monetization/developer-portal.md +167 -0
- package/docs/articles/monetization/features.mdx +98 -0
- package/docs/articles/monetization/index.mdx +113 -0
- package/docs/articles/monetization/meters.mdx +135 -0
- package/docs/articles/monetization/monetization-policy.md +314 -0
- package/docs/articles/monetization/plan-examples.mdx +366 -0
- package/docs/articles/monetization/plans.mdx +266 -0
- package/docs/articles/monetization/pricing-models.mdx +225 -0
- package/docs/articles/monetization/private-plans.md +154 -0
- package/docs/articles/monetization/quickstart.md +355 -0
- package/docs/articles/monetization/rate-cards.mdx +171 -0
- package/docs/articles/monetization/stripe-integration.md +195 -0
- package/docs/articles/monetization/subscription-lifecycle.md +298 -0
- package/docs/articles/monetization/tax-collection.md +166 -0
- package/docs/articles/monetization/troubleshooting.md +272 -0
- package/docs/articles/monetization-custom.mdx +71 -0
- package/docs/articles/monetization-integrations.mdx +104 -0
- package/docs/articles/monitoring-your-gateway.mdx +53 -0
- package/docs/articles/monorepo-deployment.mdx +350 -0
- package/docs/articles/multiple-auth-policies.mdx +81 -0
- package/docs/articles/non-standard-ports.mdx +30 -0
- package/docs/articles/oauth-authentication.mdx +54 -0
- package/docs/articles/openapi-server-urls.mdx +60 -0
- package/docs/articles/openapi.mdx +130 -0
- package/docs/articles/opentelemetry.mdx +250 -0
- package/docs/articles/per-user-rate-limits-using-db.mdx +112 -0
- package/docs/articles/performance-testing.mdx +304 -0
- package/docs/articles/plugin-akamai-api-security.mdx +76 -0
- package/docs/articles/plugin-azure-blob.mdx +73 -0
- package/docs/articles/plugin-azure-event-hubs.mdx +64 -0
- package/docs/articles/plugin-hydrolix-traffic-peak.mdx +147 -0
- package/docs/articles/policies.mdx +33 -0
- package/docs/articles/rename-or-move-project.mdx +39 -0
- package/docs/articles/rick-and-morty-api-developer-portal-example.mdx +23 -0
- package/docs/articles/routing.mdx +193 -0
- package/docs/articles/s3-signed-url-uploads.mdx +521 -0
- package/docs/articles/secure-tunnel.mdx +84 -0
- package/docs/articles/securing-backend-mtls.mdx +268 -0
- package/docs/articles/securing-your-backend.mdx +148 -0
- package/docs/articles/security.mdx +105 -0
- package/docs/articles/sharing-code-across-projects.mdx +412 -0
- package/docs/articles/source-control-setup-azure.mdx +13 -0
- package/docs/articles/source-control-setup-bitbucket.mdx +43 -0
- package/docs/articles/source-control-setup-github.mdx +172 -0
- package/docs/articles/source-control-setup-gitlab.mdx +12 -0
- package/docs/articles/source-control.mdx +80 -0
- package/docs/articles/step-1-setup-basic-gateway-local.mdx +136 -0
- package/docs/articles/step-1-setup-basic-gateway.mdx +118 -0
- package/docs/articles/step-2-add-rate-limiting-local.mdx +126 -0
- package/docs/articles/step-2-add-rate-limiting.mdx +82 -0
- package/docs/articles/step-3-add-api-key-auth-local.mdx +199 -0
- package/docs/articles/step-3-add-api-key-auth.mdx +166 -0
- package/docs/articles/step-4-deploying-to-the-edge.mdx +220 -0
- package/docs/articles/step-5-dynamic-rate-limiting.mdx +167 -0
- package/docs/articles/support.mdx +144 -0
- package/docs/articles/terraform.mdx +114 -0
- package/docs/articles/testing-graphql.mdx +34 -0
- package/docs/articles/testing.mdx +522 -0
- package/docs/articles/troubleshooting-slow-responses.mdx +301 -0
- package/docs/articles/troubleshooting.md +302 -0
- package/docs/articles/tsconfig.mdx +105 -0
- package/docs/articles/tunnel-setup.mdx +195 -0
- package/docs/articles/tunnel-troubleshooting.mdx +50 -0
- package/docs/articles/update-zup-in-github-action.mdx +110 -0
- package/docs/articles/use-openapi-extension-data.mdx +79 -0
- package/docs/articles/users/multifactor-authentication.mdx +64 -0
- package/docs/articles/users/profile.mdx +13 -0
- package/docs/articles/versioning-on-zuplo.mdx +89 -0
- package/docs/articles/waf-ddos-akamai.md +133 -0
- package/docs/articles/waf-ddos-aws-waf-shield.mdx +85 -0
- package/docs/articles/waf-ddos-fastly.mdx +251 -0
- package/docs/articles/waf-ddos.mdx +140 -0
- package/docs/articles/zuplo-waf.mdx +156 -0
- package/docs/ask.mdx +3 -0
- package/docs/cli/authentication.mdx +56 -0
- package/docs/cli/connectivity.mdx +38 -0
- package/docs/cli/create-zuplo-api.mdx +80 -0
- package/docs/cli/delete.mdx +79 -0
- package/docs/cli/deploy.mdx +156 -0
- package/docs/cli/deploy.partial.mdx +46 -0
- package/docs/cli/dev.mdx +115 -0
- package/docs/cli/docs.mdx +66 -0
- package/docs/cli/editor.mdx +50 -0
- package/docs/cli/global-options.mdx +19 -0
- package/docs/cli/init.mdx +74 -0
- package/docs/cli/link.mdx +74 -0
- package/docs/cli/list.mdx +55 -0
- package/docs/cli/mtls-certificate-create.mdx +94 -0
- package/docs/cli/mtls-certificate-delete.mdx +55 -0
- package/docs/cli/mtls-certificate-describe.mdx +55 -0
- package/docs/cli/mtls-certificate-disable.mdx +55 -0
- package/docs/cli/mtls-certificate-list.mdx +47 -0
- package/docs/cli/mtls-certificate-update.mdx +72 -0
- package/docs/cli/openapi-convert.mdx +111 -0
- package/docs/cli/openapi-merge.mdx +138 -0
- package/docs/cli/openapi-merge.partial.mdx +29 -0
- package/docs/cli/openapi-overlay.mdx +123 -0
- package/docs/cli/overview.mdx +78 -0
- package/docs/cli/project-create.mdx +43 -0
- package/docs/cli/source-migrate.mdx +18 -0
- package/docs/cli/source-upgrade.mdx +41 -0
- package/docs/cli/test.mdx +70 -0
- package/docs/cli/test.partial.mdx +7 -0
- package/docs/cli/tunnel-create.mdx +53 -0
- package/docs/cli/tunnel-create.partial.mdx +9 -0
- package/docs/cli/tunnel-delete.mdx +35 -0
- package/docs/cli/tunnel-delete.partial.mdx +9 -0
- package/docs/cli/tunnel-describe.mdx +45 -0
- package/docs/cli/tunnel-describe.partial.mdx +5 -0
- package/docs/cli/tunnel-list.mdx +35 -0
- package/docs/cli/tunnel-list.partial.mdx +9 -0
- package/docs/cli/tunnel-rate-token.partial.mdx +9 -0
- package/docs/cli/tunnel-rotate-token.mdx +39 -0
- package/docs/cli/tunnel-services-describe.mdx +45 -0
- package/docs/cli/tunnel-services-describe.partial.mdx +9 -0
- package/docs/cli/tunnel-services-update.mdx +48 -0
- package/docs/cli/variable-create.mdx +91 -0
- package/docs/cli/variable-create.partial.mdx +5 -0
- package/docs/cli/variable-update.mdx +75 -0
- package/docs/cli/variable-update.partial.mdx +5 -0
- package/docs/concepts/api-keys.md +146 -0
- package/docs/concepts/authentication.mdx +109 -0
- package/docs/concepts/how-zuplo-works.mdx +120 -0
- package/docs/concepts/project-structure.mdx +174 -0
- package/docs/concepts/rate-limiting.md +246 -0
- package/docs/concepts/request-lifecycle.mdx +56 -0
- package/docs/concepts/source-control-and-deployment.mdx +229 -0
- package/docs/conferences/conference-prize-terms.mdx +80 -0
- package/docs/dedicated/akamai/ai-powered-applications.mdx +223 -0
- package/docs/dedicated/akamai/architecture.mdx +280 -0
- package/docs/dedicated/akamai/caching.mdx +212 -0
- package/docs/dedicated/akamai/cdn.mdx +156 -0
- package/docs/dedicated/architecture.mdx +208 -0
- package/docs/dedicated/custom-domains.mdx +31 -0
- package/docs/dedicated/federated-gateways.mdx +80 -0
- package/docs/dedicated/networking.mdx +69 -0
- package/docs/dedicated/overview.mdx +80 -0
- package/docs/dedicated/source-control.mdx +63 -0
- package/docs/dev-portal/dev-portal-create-consumer-on-auth.mdx +134 -0
- package/docs/dev-portal/introduction.mdx +65 -0
- package/docs/dev-portal/local-development.mdx +72 -0
- package/docs/dev-portal/migration.mdx +526 -0
- package/docs/dev-portal/node-modules.mdx +45 -0
- package/docs/dev-portal/updating.mdx +28 -0
- package/docs/dev-portal/zudoku/components/alert.mdx +130 -0
- package/docs/dev-portal/zudoku/components/badge.mdx +70 -0
- package/docs/dev-portal/zudoku/components/button.mdx +132 -0
- package/docs/dev-portal/zudoku/components/callout.mdx +112 -0
- package/docs/dev-portal/zudoku/components/card.mdx +104 -0
- package/docs/dev-portal/zudoku/components/checkbox.mdx +72 -0
- package/docs/dev-portal/zudoku/components/client-only.mdx +79 -0
- package/docs/dev-portal/zudoku/components/code-tabs.mdx +179 -0
- package/docs/dev-portal/zudoku/components/dialog.mdx +167 -0
- package/docs/dev-portal/zudoku/components/head.mdx +199 -0
- package/docs/dev-portal/zudoku/components/icons.mdx +27 -0
- package/docs/dev-portal/zudoku/components/input.mdx +96 -0
- package/docs/dev-portal/zudoku/components/label.mdx +86 -0
- package/docs/dev-portal/zudoku/components/link.mdx +242 -0
- package/docs/dev-portal/zudoku/components/markdown.mdx +151 -0
- package/docs/dev-portal/zudoku/components/mermaid.mdx +81 -0
- package/docs/dev-portal/zudoku/components/playground.mdx +87 -0
- package/docs/dev-portal/zudoku/components/secret.mdx +78 -0
- package/docs/dev-portal/zudoku/components/select.mdx +176 -0
- package/docs/dev-portal/zudoku/components/shadcn.mdx +73 -0
- package/docs/dev-portal/zudoku/components/slider.mdx +108 -0
- package/docs/dev-portal/zudoku/components/slot.mdx +119 -0
- package/docs/dev-portal/zudoku/components/stepper.mdx +138 -0
- package/docs/dev-portal/zudoku/components/switch.mdx +96 -0
- package/docs/dev-portal/zudoku/components/syntax-highlight.mdx +602 -0
- package/docs/dev-portal/zudoku/components/textarea.mdx +78 -0
- package/docs/dev-portal/zudoku/components/tooltip.mdx +195 -0
- package/docs/dev-portal/zudoku/components/typography.mdx +61 -0
- package/docs/dev-portal/zudoku/configuration/ai-assistants.md +64 -0
- package/docs/dev-portal/zudoku/configuration/api-catalog.md +108 -0
- package/docs/dev-portal/zudoku/configuration/api-reference.md +397 -0
- package/docs/dev-portal/zudoku/configuration/authentication-auth0.md +173 -0
- package/docs/dev-portal/zudoku/configuration/authentication-azure-ad.md +238 -0
- package/docs/dev-portal/zudoku/configuration/authentication-clerk.md +110 -0
- package/docs/dev-portal/zudoku/configuration/authentication-firebase.md +61 -0
- package/docs/dev-portal/zudoku/configuration/authentication-pingfederate.md +136 -0
- package/docs/dev-portal/zudoku/configuration/authentication-supabase.md +225 -0
- package/docs/dev-portal/zudoku/configuration/authentication.md +199 -0
- package/docs/dev-portal/zudoku/configuration/build-configuration.mdx +147 -0
- package/docs/dev-portal/zudoku/configuration/docs.md +282 -0
- package/docs/dev-portal/zudoku/configuration/footer.mdx +214 -0
- package/docs/dev-portal/zudoku/configuration/llms.md +89 -0
- package/docs/dev-portal/zudoku/configuration/navigation.mdx +408 -0
- package/docs/dev-portal/zudoku/configuration/overview.md +380 -0
- package/docs/dev-portal/zudoku/configuration/protected-routes.md +149 -0
- package/docs/dev-portal/zudoku/configuration/search.md +169 -0
- package/docs/dev-portal/zudoku/configuration/sentry.mdx +44 -0
- package/docs/dev-portal/zudoku/configuration/site.md +124 -0
- package/docs/dev-portal/zudoku/configuration/slots.mdx +124 -0
- package/docs/dev-portal/zudoku/configuration/vite-config.md +18 -0
- package/docs/dev-portal/zudoku/custom-plugins.md +287 -0
- package/docs/dev-portal/zudoku/customization/colors-theme.mdx +275 -0
- package/docs/dev-portal/zudoku/customization/fonts.md +110 -0
- package/docs/dev-portal/zudoku/extending/events.md +124 -0
- package/docs/dev-portal/zudoku/guides/custom-pages.md +106 -0
- package/docs/dev-portal/zudoku/guides/environment-variables.md +99 -0
- package/docs/dev-portal/zudoku/guides/mermaid.mdx +70 -0
- package/docs/dev-portal/zudoku/guides/navigation-migration.md +87 -0
- package/docs/dev-portal/zudoku/guides/navigation-rules.mdx +197 -0
- package/docs/dev-portal/zudoku/guides/processors.mdx +234 -0
- package/docs/dev-portal/zudoku/guides/static-files.md +55 -0
- package/docs/dev-portal/zudoku/guides/transforming-examples.md +156 -0
- package/docs/dev-portal/zudoku/guides/using-multiple-apis.md +87 -0
- package/docs/dev-portal/zudoku/markdown/admonitions.md +128 -0
- package/docs/dev-portal/zudoku/markdown/code-blocks.md +196 -0
- package/docs/dev-portal/zudoku/markdown/frontmatter.md +172 -0
- package/docs/dev-portal/zudoku/markdown/mdx.md +68 -0
- package/docs/dev-portal/zudoku/markdown/overview.md +275 -0
- package/docs/dev-portal/zudoku/plugins.md +5 -0
- package/docs/dev-portal/zudoku/writing.mdx +72 -0
- package/docs/errors/bad-request.mdx +39 -0
- package/docs/errors/build-error.mdx +45 -0
- package/docs/errors/fatal-project-error.mdx +39 -0
- package/docs/errors/gateway-timeout.mdx +33 -0
- package/docs/errors/get-head-body-error.mdx +41 -0
- package/docs/errors/main-mod-error.mdx +40 -0
- package/docs/errors/no-project-set.mdx +41 -0
- package/docs/errors/not-found.mdx +43 -0
- package/docs/errors/rate-limit-exceeded.mdx +31 -0
- package/docs/errors/schema-validation-failed.mdx +51 -0
- package/docs/errors/system-configuration-error.mdx +44 -0
- package/docs/errors/unauthorized.mdx +50 -0
- package/docs/errors/unknown-error.mdx +42 -0
- package/docs/errors.mdx +14 -0
- package/docs/guides/canary-routing-for-employees.mdx +385 -0
- package/docs/guides/geolocation-backend-routing.mdx +404 -0
- package/docs/guides/modify-openapi-paths.mdx +371 -0
- package/docs/guides/openapi-overlays.mdx +492 -0
- package/docs/guides/overview.mdx +12 -0
- package/docs/guides/user-based-backend-routing.mdx +437 -0
- package/docs/handlers/aws-lambda.mdx +201 -0
- package/docs/handlers/custom-handler.mdx +112 -0
- package/docs/handlers/legacy-dev-portal-handler.mdx +135 -0
- package/docs/handlers/mcp-server.mdx +730 -0
- package/docs/handlers/openapi.mdx +78 -0
- package/docs/handlers/redirect.mdx +115 -0
- package/docs/handlers/system-handlers.mdx +41 -0
- package/docs/handlers/url-forward.mdx +204 -0
- package/docs/handlers/url-rewrite.mdx +224 -0
- package/docs/handlers/websocket-handler.mdx +154 -0
- package/docs/home.mdx +6 -0
- package/docs/managed-edge/overview.md +78 -0
- package/docs/mcp-server/configuration-migration-guide.mdx +344 -0
- package/docs/mcp-server/custom-tools.mdx +487 -0
- package/docs/mcp-server/graphql.mdx +241 -0
- package/docs/mcp-server/introduction.mdx +122 -0
- package/docs/mcp-server/openai-apps-sdk.mdx +160 -0
- package/docs/mcp-server/prompts.mdx +283 -0
- package/docs/mcp-server/resources.mdx +288 -0
- package/docs/mcp-server/testing.mdx +53 -0
- package/docs/mcp-server/tools.mdx +306 -0
- package/docs/policies/_index.md +92 -0
- package/docs/policies/ab-test-inbound/intro.md +8 -0
- package/docs/policies/ab-test-inbound/policy.ts +14 -0
- package/docs/policies/ab-test-inbound/schema.json +27 -0
- package/docs/policies/ab-test-outbound/intro.md +8 -0
- package/docs/policies/ab-test-outbound/policy.ts +26 -0
- package/docs/policies/ab-test-outbound/schema.json +27 -0
- package/docs/policies/acl-policy-inbound/intro.md +5 -0
- package/docs/policies/acl-policy-inbound/policy.ts +32 -0
- package/docs/policies/acl-policy-inbound/schema.json +52 -0
- package/docs/policies/akamai-ai-firewall/schema.json +98 -0
- package/docs/policies/amberflo-metering-inbound/doc.md +183 -0
- package/docs/policies/amberflo-metering-inbound/intro.md +20 -0
- package/docs/policies/amberflo-metering-inbound/schema.json +108 -0
- package/docs/policies/api-key-inbound/doc.md +77 -0
- package/docs/policies/api-key-inbound/intro.md +30 -0
- package/docs/policies/api-key-inbound/schema.json +84 -0
- package/docs/policies/archive-request-aws-s3-inbound/intro.md +4 -0
- package/docs/policies/archive-request-aws-s3-inbound/policy.ts +58 -0
- package/docs/policies/archive-request-aws-s3-inbound/schema.json +68 -0
- package/docs/policies/archive-request-azure-storage-inbound/doc.md +31 -0
- package/docs/policies/archive-request-azure-storage-inbound/intro.md +4 -0
- package/docs/policies/archive-request-azure-storage-inbound/policy.ts +54 -0
- package/docs/policies/archive-request-azure-storage-inbound/schema.json +53 -0
- package/docs/policies/archive-request-gcp-storage-inbound/doc.md +63 -0
- package/docs/policies/archive-request-gcp-storage-inbound/intro.md +4 -0
- package/docs/policies/archive-request-gcp-storage-inbound/policy.ts +68 -0
- package/docs/policies/archive-request-gcp-storage-inbound/schema.json +47 -0
- package/docs/policies/archive-response-aws-s3-outbound/intro.md +2 -0
- package/docs/policies/archive-response-aws-s3-outbound/policy.ts +59 -0
- package/docs/policies/archive-response-aws-s3-outbound/schema.json +68 -0
- package/docs/policies/archive-response-azure-storage-outbound/doc.md +31 -0
- package/docs/policies/archive-response-azure-storage-outbound/intro.md +3 -0
- package/docs/policies/archive-response-azure-storage-outbound/policy.ts +54 -0
- package/docs/policies/archive-response-azure-storage-outbound/schema.json +53 -0
- package/docs/policies/audit-log-inbound/doc.md +78 -0
- package/docs/policies/audit-log-inbound/intro.md +10 -0
- package/docs/policies/audit-log-inbound/schema.json +81 -0
- package/docs/policies/auth0-jwt-auth-inbound/doc.md +125 -0
- package/docs/policies/auth0-jwt-auth-inbound/intro.md +17 -0
- package/docs/policies/auth0-jwt-auth-inbound/schema.json +74 -0
- package/docs/policies/authzen-inbound/doc.md +24 -0
- package/docs/policies/authzen-inbound/intro.md +31 -0
- package/docs/policies/authzen-inbound/schema.json +126 -0
- package/docs/policies/axiomatics-authz-inbound/doc.md +144 -0
- package/docs/policies/axiomatics-authz-inbound/intro.md +11 -0
- package/docs/policies/axiomatics-authz-inbound/schema.json +161 -0
- package/docs/policies/basic-auth-inbound/intro.md +9 -0
- package/docs/policies/basic-auth-inbound/schema.json +99 -0
- package/docs/policies/bot-detection-inbound/intro.md +4 -0
- package/docs/policies/bot-detection-inbound/schema.json +56 -0
- package/docs/policies/brownout-inbound/doc.md +55 -0
- package/docs/policies/brownout-inbound/intro.md +12 -0
- package/docs/policies/brownout-inbound/schema.json +115 -0
- package/docs/policies/caching-inbound/doc.md +209 -0
- package/docs/policies/caching-inbound/intro.md +23 -0
- package/docs/policies/caching-inbound/schema.json +98 -0
- package/docs/policies/change-method-inbound/schema.json +56 -0
- package/docs/policies/clear-headers-inbound/schema.json +59 -0
- package/docs/policies/clear-headers-outbound/schema.json +59 -0
- package/docs/policies/clerk-jwt-auth-inbound/doc.md +85 -0
- package/docs/policies/clerk-jwt-auth-inbound/intro.md +4 -0
- package/docs/policies/clerk-jwt-auth-inbound/schema.json +68 -0
- package/docs/policies/cognito-jwt-auth-inbound/intro.md +7 -0
- package/docs/policies/cognito-jwt-auth-inbound/schema.json +74 -0
- package/docs/policies/comet-opik-tracing-inbound/schema.json +65 -0
- package/docs/policies/complex-rate-limit-inbound/doc.md +20 -0
- package/docs/policies/complex-rate-limit-inbound/intro.md +23 -0
- package/docs/policies/complex-rate-limit-inbound/schema.json +142 -0
- package/docs/policies/composite-inbound/doc.md +69 -0
- package/docs/policies/composite-inbound/intro.md +15 -0
- package/docs/policies/composite-inbound/schema.json +59 -0
- package/docs/policies/composite-outbound/intro.md +6 -0
- package/docs/policies/composite-outbound/schema.json +59 -0
- package/docs/policies/curity-phantom-token-inbound/doc.md +109 -0
- package/docs/policies/curity-phantom-token-inbound/intro.md +3 -0
- package/docs/policies/curity-phantom-token-inbound/schema.json +68 -0
- package/docs/policies/custom-code-inbound/doc.md +267 -0
- package/docs/policies/custom-code-inbound/intro.md +2 -0
- package/docs/policies/custom-code-inbound/schema.json +48 -0
- package/docs/policies/custom-code-outbound/doc.md +235 -0
- package/docs/policies/custom-code-outbound/intro.md +2 -0
- package/docs/policies/custom-code-outbound/schema.json +43 -0
- package/docs/policies/firebase-jwt-inbound/intro.md +6 -0
- package/docs/policies/firebase-jwt-inbound/schema.json +68 -0
- package/docs/policies/formdata-to-json-inbound/schema.json +60 -0
- package/docs/policies/galileo-tracing-inbound/schema.json +65 -0
- package/docs/policies/geo-filter-inbound/doc.md +33 -0
- package/docs/policies/geo-filter-inbound/schema.json +108 -0
- package/docs/policies/graphql-complexity-limit-inbound/doc.md +48 -0
- package/docs/policies/graphql-complexity-limit-inbound/intro.md +2 -0
- package/docs/policies/graphql-complexity-limit-inbound/schema.json +90 -0
- package/docs/policies/graphql-disable-introspection-inbound/doc.md +66 -0
- package/docs/policies/graphql-disable-introspection-inbound/intro.md +15 -0
- package/docs/policies/graphql-disable-introspection-inbound/schema.json +48 -0
- package/docs/policies/graphql-introspection-filter-outbound/doc.md +148 -0
- package/docs/policies/graphql-introspection-filter-outbound/schema.json +79 -0
- package/docs/policies/hmac-auth-inbound/doc.md +30 -0
- package/docs/policies/hmac-auth-inbound/intro.md +10 -0
- package/docs/policies/hmac-auth-inbound/policy.ts +70 -0
- package/docs/policies/hmac-auth-inbound/schema.json +53 -0
- package/docs/policies/http-deprecation-outbound/doc.md +73 -0
- package/docs/policies/http-deprecation-outbound/schema.json +83 -0
- package/docs/policies/ip-restriction-inbound/intro.md +8 -0
- package/docs/policies/ip-restriction-inbound/policy.ts +40 -0
- package/docs/policies/ip-restriction-inbound/schema.json +58 -0
- package/docs/policies/jwt-scopes-inbound/schema.json +59 -0
- package/docs/policies/ldap-auth-inbound/schema.json +56 -0
- package/docs/policies/mock-api-inbound/schema.json +72 -0
- package/docs/policies/moesif-inbound/doc.md +44 -0
- package/docs/policies/moesif-inbound/intro.md +6 -0
- package/docs/policies/moesif-inbound/schema.json +68 -0
- package/docs/policies/monetization-inbound/doc.md +87 -0
- package/docs/policies/monetization-inbound/intro.md +6 -0
- package/docs/policies/monetization-inbound/schema.json +102 -0
- package/docs/policies/mtls-auth-inbound/intro.md +6 -0
- package/docs/policies/mtls-auth-inbound/schema.json +68 -0
- package/docs/policies/okta-fga-authz-inbound/doc.md +181 -0
- package/docs/policies/okta-fga-authz-inbound/intro.md +20 -0
- package/docs/policies/okta-fga-authz-inbound/schema.json +104 -0
- package/docs/policies/okta-jwt-auth-inbound/intro.md +7 -0
- package/docs/policies/okta-jwt-auth-inbound/schema.json +74 -0
- package/docs/policies/open-id-jwt-auth-inbound/doc.md +58 -0
- package/docs/policies/open-id-jwt-auth-inbound/intro.md +30 -0
- package/docs/policies/open-id-jwt-auth-inbound/schema.json +128 -0
- package/docs/policies/openfga-authz-inbound/doc.md +207 -0
- package/docs/policies/openfga-authz-inbound/intro.md +17 -0
- package/docs/policies/openfga-authz-inbound/schema.json +191 -0
- package/docs/policies/openmeter-inbound/doc.md +163 -0
- package/docs/policies/openmeter-inbound/intro.md +18 -0
- package/docs/policies/openmeter-inbound/schema.json +183 -0
- package/docs/policies/prompt-injection-outbound/doc.md +106 -0
- package/docs/policies/prompt-injection-outbound/intro.md +4 -0
- package/docs/policies/prompt-injection-outbound/schema.json +74 -0
- package/docs/policies/propel-auth-jwt-inbound/doc.md +88 -0
- package/docs/policies/propel-auth-jwt-inbound/intro.md +4 -0
- package/docs/policies/propel-auth-jwt-inbound/schema.json +74 -0
- package/docs/policies/query-param-to-header-inbound/doc.md +70 -0
- package/docs/policies/query-param-to-header-inbound/intro.md +5 -0
- package/docs/policies/query-param-to-header-inbound/schema.json +74 -0
- package/docs/policies/quota-inbound/doc.md +235 -0
- package/docs/policies/quota-inbound/intro.md +7 -0
- package/docs/policies/quota-inbound/schema.json +133 -0
- package/docs/policies/rate-limit-inbound/doc.md +78 -0
- package/docs/policies/rate-limit-inbound/intro.md +30 -0
- package/docs/policies/rate-limit-inbound/schema.json +134 -0
- package/docs/policies/rbac-policy-inbound/intro.md +3 -0
- package/docs/policies/rbac-policy-inbound/policy.ts +42 -0
- package/docs/policies/rbac-policy-inbound/schema.json +52 -0
- package/docs/policies/readme-metrics-inbound/doc.md +1 -0
- package/docs/policies/readme-metrics-inbound/intro.md +3 -0
- package/docs/policies/readme-metrics-inbound/schema.json +84 -0
- package/docs/policies/remove-headers-inbound/schema.json +59 -0
- package/docs/policies/remove-headers-outbound/schema.json +59 -0
- package/docs/policies/remove-query-params-inbound/schema.json +59 -0
- package/docs/policies/replace-string-outbound/schema.json +69 -0
- package/docs/policies/request-size-limit-inbound/schema.json +60 -0
- package/docs/policies/request-validation-inbound/doc.md +72 -0
- package/docs/policies/request-validation-inbound/intro.md +24 -0
- package/docs/policies/request-validation-inbound/schema.json +98 -0
- package/docs/policies/require-origin-inbound/intro.md +12 -0
- package/docs/policies/require-origin-inbound/schema.json +65 -0
- package/docs/policies/secret-masking-outbound/doc.md +41 -0
- package/docs/policies/secret-masking-outbound/intro.md +13 -0
- package/docs/policies/secret-masking-outbound/schema.json +65 -0
- package/docs/policies/semantic-cache-inbound/doc.md +63 -0
- package/docs/policies/semantic-cache-inbound/intro.md +4 -0
- package/docs/policies/semantic-cache-inbound/schema.json +179 -0
- package/docs/policies/set-body-inbound/intro.md +7 -0
- package/docs/policies/set-body-inbound/schema.json +56 -0
- package/docs/policies/set-headers-inbound/doc.md +41 -0
- package/docs/policies/set-headers-inbound/intro.md +2 -0
- package/docs/policies/set-headers-inbound/schema.json +83 -0
- package/docs/policies/set-headers-outbound/schema.json +83 -0
- package/docs/policies/set-query-params-inbound/schema.json +83 -0
- package/docs/policies/set-status-outbound/schema.json +62 -0
- package/docs/policies/sleep-inbound/schema.json +56 -0
- package/docs/policies/stripe-webhook-verification-inbound/intro.md +2 -0
- package/docs/policies/stripe-webhook-verification-inbound/schema.json +60 -0
- package/docs/policies/supabase-jwt-auth-inbound/doc.md +29 -0
- package/docs/policies/supabase-jwt-auth-inbound/intro.md +12 -0
- package/docs/policies/supabase-jwt-auth-inbound/schema.json +86 -0
- package/docs/policies/transform-body-inbound/intro.md +8 -0
- package/docs/policies/transform-body-inbound/policy.ts +16 -0
- package/docs/policies/transform-body-inbound/schema.json +27 -0
- package/docs/policies/transform-body-outbound/intro.md +8 -0
- package/docs/policies/transform-body-outbound/policy.ts +19 -0
- package/docs/policies/transform-body-outbound/schema.json +27 -0
- package/docs/policies/upstream-azure-ad-service-auth-inbound/doc.md +82 -0
- package/docs/policies/upstream-azure-ad-service-auth-inbound/intro.md +20 -0
- package/docs/policies/upstream-azure-ad-service-auth-inbound/schema.json +84 -0
- package/docs/policies/upstream-firebase-admin-auth-inbound/intro.md +10 -0
- package/docs/policies/upstream-firebase-admin-auth-inbound/schema.json +68 -0
- package/docs/policies/upstream-firebase-user-auth-inbound/intro.md +2 -0
- package/docs/policies/upstream-firebase-user-auth-inbound/schema.json +113 -0
- package/docs/policies/upstream-gcp-federated-auth-inbound/doc.md +139 -0
- package/docs/policies/upstream-gcp-federated-auth-inbound/intro.md +21 -0
- package/docs/policies/upstream-gcp-federated-auth-inbound/schema.json +96 -0
- package/docs/policies/upstream-gcp-jwt-inbound/intro.md +10 -0
- package/docs/policies/upstream-gcp-jwt-inbound/schema.json +62 -0
- package/docs/policies/upstream-gcp-service-auth-inbound/doc.md +132 -0
- package/docs/policies/upstream-gcp-service-auth-inbound/intro.md +25 -0
- package/docs/policies/upstream-gcp-service-auth-inbound/schema.json +95 -0
- package/docs/policies/upstream-zuplo-jwt-auth-inbound/doc.md +213 -0
- package/docs/policies/upstream-zuplo-jwt-auth-inbound/intro.md +16 -0
- package/docs/policies/upstream-zuplo-jwt-auth-inbound/schema.json +101 -0
- package/docs/policies/validate-json-schema-inbound/doc.md +129 -0
- package/docs/policies/validate-json-schema-inbound/intro.md +7 -0
- package/docs/policies/validate-json-schema-inbound/schema.json +56 -0
- package/docs/policies/web-bot-auth-inbound/doc.md +104 -0
- package/docs/policies/web-bot-auth-inbound/intro.md +16 -0
- package/docs/policies/web-bot-auth-inbound/schema.json +76 -0
- package/docs/policies/xml-to-json-outbound/doc.md +71 -0
- package/docs/policies/xml-to-json-outbound/intro.md +4 -0
- package/docs/policies/xml-to-json-outbound/schema.json +117 -0
- package/docs/programmable-api/audit-log.mdx +74 -0
- package/docs/programmable-api/background-dispatcher.mdx +124 -0
- package/docs/programmable-api/background-loader.mdx +104 -0
- package/docs/programmable-api/cache.mdx +186 -0
- package/docs/programmable-api/compatibility-dates.mdx +201 -0
- package/docs/programmable-api/console-logging.mdx +48 -0
- package/docs/programmable-api/context-data.mdx +127 -0
- package/docs/programmable-api/custom-cors-policy.mdx +64 -0
- package/docs/programmable-api/environment.mdx +328 -0
- package/docs/programmable-api/hooks.mdx +569 -0
- package/docs/programmable-api/http-problems.mdx +385 -0
- package/docs/programmable-api/jwt-service-plugin.mdx +420 -0
- package/docs/programmable-api/logger.mdx +223 -0
- package/docs/programmable-api/memory-zone-read-through-cache.mdx +96 -0
- package/docs/programmable-api/node-modules.mdx +67 -0
- package/docs/programmable-api/not-found-handler.mdx +47 -0
- package/docs/programmable-api/oauth-protected-resource-plugin.mdx +46 -0
- package/docs/programmable-api/overview.mdx +213 -0
- package/docs/programmable-api/problem-response-formatter.mdx +183 -0
- package/docs/programmable-api/request-user.mdx +289 -0
- package/docs/programmable-api/reusing-code.mdx +26 -0
- package/docs/programmable-api/route-raw.mdx +55 -0
- package/docs/programmable-api/runtime-behaviors.mdx +25 -0
- package/docs/programmable-api/runtime-errors.mdx +246 -0
- package/docs/programmable-api/runtime-extensions.mdx +340 -0
- package/docs/programmable-api/safely-clone-a-request-or-response.mdx +57 -0
- package/docs/programmable-api/streaming-zone-cache.mdx +155 -0
- package/docs/programmable-api/web-crypto-apis.mdx +219 -0
- package/docs/programmable-api/web-standard-apis.mdx +109 -0
- package/docs/programmable-api/zone-cache.mdx +131 -0
- package/docs/programmable-api/zp-body-removed.mdx +32 -0
- package/docs/programmable-api/zuplo-context.mdx +414 -0
- package/docs/programmable-api/zuplo-id-token.mdx +90 -0
- package/docs/programmable-api/zuplo-json.mdx +91 -0
- package/docs/programmable-api/zuplo-request.mdx +200 -0
- package/docs/sample-apis.mdx +78 -0
- package/docs/self-hosted/overview.md +60 -0
- package/package.json +6 -5
|
@@ -0,0 +1,86 @@
|
|
|
1
|
+
---
|
|
2
|
+
title: Label
|
|
3
|
+
sidebar_icon: tag
|
|
4
|
+
---
|
|
5
|
+
|
|
6
|
+
import { Label } from "zudoku/ui/Label";
|
|
7
|
+
import { Input } from "zudoku/ui/Input";
|
|
8
|
+
import { Textarea } from "zudoku/ui/Textarea";
|
|
9
|
+
import { Checkbox } from "zudoku/ui/Checkbox";
|
|
10
|
+
|
|
11
|
+
A form label component built on Radix UI primitives with proper accessibility support.
|
|
12
|
+
|
|
13
|
+
## Import
|
|
14
|
+
|
|
15
|
+
```tsx
|
|
16
|
+
import { Label } from "zudoku/ui/Label";
|
|
17
|
+
```
|
|
18
|
+
|
|
19
|
+
## Basic Usage
|
|
20
|
+
|
|
21
|
+
<Label htmlFor="email">Email</Label>
|
|
22
|
+
|
|
23
|
+
```tsx
|
|
24
|
+
<Label htmlFor="email">Email</Label>
|
|
25
|
+
```
|
|
26
|
+
|
|
27
|
+
## With Input
|
|
28
|
+
|
|
29
|
+
<div className="grid w-full max-w-sm items-center gap-1.5">
|
|
30
|
+
<Label htmlFor="email">Email</Label>
|
|
31
|
+
<Input type="email" id="email" placeholder="Email" />
|
|
32
|
+
</div>
|
|
33
|
+
|
|
34
|
+
```tsx
|
|
35
|
+
<div className="grid w-full max-w-sm items-center gap-1.5">
|
|
36
|
+
<Label htmlFor="email">Email</Label>
|
|
37
|
+
<Input type="email" id="email" placeholder="Email" />
|
|
38
|
+
</div>
|
|
39
|
+
```
|
|
40
|
+
|
|
41
|
+
## With Textarea
|
|
42
|
+
|
|
43
|
+
<div className="grid w-full gap-1.5">
|
|
44
|
+
<Label htmlFor="message">Your message</Label>
|
|
45
|
+
<Textarea placeholder="Type your message here." id="message" />
|
|
46
|
+
</div>
|
|
47
|
+
|
|
48
|
+
```tsx
|
|
49
|
+
<div className="grid w-full gap-1.5">
|
|
50
|
+
<Label htmlFor="message">Your message</Label>
|
|
51
|
+
<Textarea placeholder="Type your message here." id="message" />
|
|
52
|
+
</div>
|
|
53
|
+
```
|
|
54
|
+
|
|
55
|
+
## With Checkbox
|
|
56
|
+
|
|
57
|
+
<div className="flex items-center space-x-2">
|
|
58
|
+
<Checkbox id="terms" />
|
|
59
|
+
<Label
|
|
60
|
+
htmlFor="terms"
|
|
61
|
+
className="text-sm font-medium leading-none peer-disabled:cursor-not-allowed peer-disabled:opacity-70"
|
|
62
|
+
>
|
|
63
|
+
Accept terms and conditions
|
|
64
|
+
</Label>
|
|
65
|
+
</div>
|
|
66
|
+
|
|
67
|
+
```tsx
|
|
68
|
+
<div className="flex items-center space-x-2">
|
|
69
|
+
<Checkbox id="terms" />
|
|
70
|
+
<Label
|
|
71
|
+
htmlFor="terms"
|
|
72
|
+
className="text-sm font-medium leading-none peer-disabled:cursor-not-allowed peer-disabled:opacity-70"
|
|
73
|
+
>
|
|
74
|
+
Accept terms and conditions
|
|
75
|
+
</Label>
|
|
76
|
+
</div>
|
|
77
|
+
```
|
|
78
|
+
|
|
79
|
+
## Accessibility
|
|
80
|
+
|
|
81
|
+
The Label component automatically handles proper accessibility attributes when used with form
|
|
82
|
+
controls:
|
|
83
|
+
|
|
84
|
+
- Associates the label with form controls via `htmlFor` prop
|
|
85
|
+
- Provides screen reader support
|
|
86
|
+
- Enables clicking the label to focus the associated control
|
|
@@ -0,0 +1,242 @@
|
|
|
1
|
+
---
|
|
2
|
+
title: Link
|
|
3
|
+
sidebar_icon: link
|
|
4
|
+
---
|
|
5
|
+
|
|
6
|
+
A navigation component that provides client-side routing capabilities for internal links and
|
|
7
|
+
external link handling.
|
|
8
|
+
|
|
9
|
+
## Import
|
|
10
|
+
|
|
11
|
+
```tsx
|
|
12
|
+
import { Link } from "zudoku/components";
|
|
13
|
+
```
|
|
14
|
+
|
|
15
|
+
## Usage
|
|
16
|
+
|
|
17
|
+
### Basic Internal Link
|
|
18
|
+
|
|
19
|
+
```tsx
|
|
20
|
+
<Link to="/docs/getting-started">Get Started</Link>
|
|
21
|
+
```
|
|
22
|
+
|
|
23
|
+
### Link with State
|
|
24
|
+
|
|
25
|
+
```tsx
|
|
26
|
+
<Link to="/profile" state={{ from: "header" }}>
|
|
27
|
+
Profile
|
|
28
|
+
</Link>
|
|
29
|
+
```
|
|
30
|
+
|
|
31
|
+
### Replace History Entry
|
|
32
|
+
|
|
33
|
+
```tsx
|
|
34
|
+
<Link to="/login" replace>
|
|
35
|
+
Login
|
|
36
|
+
</Link>
|
|
37
|
+
```
|
|
38
|
+
|
|
39
|
+
### External Link Behavior
|
|
40
|
+
|
|
41
|
+
```tsx
|
|
42
|
+
<Link to="/docs" reloadDocument>
|
|
43
|
+
Full Page Reload
|
|
44
|
+
</Link>
|
|
45
|
+
```
|
|
46
|
+
|
|
47
|
+
## Examples
|
|
48
|
+
|
|
49
|
+
### Navigation Menu
|
|
50
|
+
|
|
51
|
+
```tsx
|
|
52
|
+
function Navigation() {
|
|
53
|
+
return (
|
|
54
|
+
<nav>
|
|
55
|
+
<Link to="/">Home</Link>
|
|
56
|
+
<Link to="/docs">Documentation</Link>
|
|
57
|
+
<Link to="/api">API Reference</Link>
|
|
58
|
+
<Link to="/blog">Blog</Link>
|
|
59
|
+
</nav>
|
|
60
|
+
);
|
|
61
|
+
}
|
|
62
|
+
```
|
|
63
|
+
|
|
64
|
+
### Breadcrumb Navigation
|
|
65
|
+
|
|
66
|
+
```tsx
|
|
67
|
+
function Breadcrumbs({ path }) {
|
|
68
|
+
return (
|
|
69
|
+
<div className="breadcrumbs">
|
|
70
|
+
<Link to="/">Home</Link>
|
|
71
|
+
<span>/</span>
|
|
72
|
+
<Link to="/docs">Docs</Link>
|
|
73
|
+
<span>/</span>
|
|
74
|
+
<span>{path}</span>
|
|
75
|
+
</div>
|
|
76
|
+
);
|
|
77
|
+
}
|
|
78
|
+
```
|
|
79
|
+
|
|
80
|
+
### Dynamic Links
|
|
81
|
+
|
|
82
|
+
```tsx
|
|
83
|
+
function DocsList({ docs }) {
|
|
84
|
+
return (
|
|
85
|
+
<ul>
|
|
86
|
+
{docs.map((doc) => (
|
|
87
|
+
<li key={doc.id}>
|
|
88
|
+
<Link to={`/docs/${doc.slug}`}>{doc.title}</Link>
|
|
89
|
+
</li>
|
|
90
|
+
))}
|
|
91
|
+
</ul>
|
|
92
|
+
);
|
|
93
|
+
}
|
|
94
|
+
```
|
|
95
|
+
|
|
96
|
+
### Conditional Linking
|
|
97
|
+
|
|
98
|
+
```tsx
|
|
99
|
+
function ConditionalLink({ to, disabled, children }) {
|
|
100
|
+
if (disabled) {
|
|
101
|
+
return <span className="disabled-link">{children}</span>;
|
|
102
|
+
}
|
|
103
|
+
|
|
104
|
+
return <Link to={to}>{children}</Link>;
|
|
105
|
+
}
|
|
106
|
+
```
|
|
107
|
+
|
|
108
|
+
## Link Types
|
|
109
|
+
|
|
110
|
+
### Relative Links
|
|
111
|
+
|
|
112
|
+
```tsx
|
|
113
|
+
// Relative to current route
|
|
114
|
+
<Link to="../parent-page">Up one level</Link>
|
|
115
|
+
|
|
116
|
+
// Relative to path
|
|
117
|
+
<Link to="./sibling-page" relative="path">
|
|
118
|
+
Sibling page
|
|
119
|
+
</Link>
|
|
120
|
+
```
|
|
121
|
+
|
|
122
|
+
### Absolute Links
|
|
123
|
+
|
|
124
|
+
```tsx
|
|
125
|
+
<Link to="/absolute/path">Absolute Path</Link>
|
|
126
|
+
```
|
|
127
|
+
|
|
128
|
+
### Query Parameters
|
|
129
|
+
|
|
130
|
+
```tsx
|
|
131
|
+
<Link to="/search?q=react&type=docs">Search Results</Link>
|
|
132
|
+
```
|
|
133
|
+
|
|
134
|
+
### Hash Links
|
|
135
|
+
|
|
136
|
+
```tsx
|
|
137
|
+
<Link to="/docs/api#authentication">Authentication Section</Link>
|
|
138
|
+
```
|
|
139
|
+
|
|
140
|
+
## Advanced Usage
|
|
141
|
+
|
|
142
|
+
### With Custom Styling
|
|
143
|
+
|
|
144
|
+
```tsx
|
|
145
|
+
<Link to="/important-page" className="text-blue-600 hover:text-blue-800 underline">
|
|
146
|
+
Important Page
|
|
147
|
+
</Link>
|
|
148
|
+
```
|
|
149
|
+
|
|
150
|
+
### Programmatic Navigation
|
|
151
|
+
|
|
152
|
+
```tsx
|
|
153
|
+
import { useNavigate } from "react-router";
|
|
154
|
+
|
|
155
|
+
function MyComponent() {
|
|
156
|
+
const navigate = useNavigate();
|
|
157
|
+
|
|
158
|
+
const handleClick = () => {
|
|
159
|
+
// Perform some logic
|
|
160
|
+
navigate("/next-page");
|
|
161
|
+
};
|
|
162
|
+
|
|
163
|
+
return (
|
|
164
|
+
<div>
|
|
165
|
+
<Link to="/direct-link">Direct Link</Link>
|
|
166
|
+
<button onClick={handleClick}>Programmatic Navigation</button>
|
|
167
|
+
</div>
|
|
168
|
+
);
|
|
169
|
+
}
|
|
170
|
+
```
|
|
171
|
+
|
|
172
|
+
### Link with Confirmation
|
|
173
|
+
|
|
174
|
+
```tsx
|
|
175
|
+
function DeleteLink({ itemId }) {
|
|
176
|
+
const handleClick = (e) => {
|
|
177
|
+
if (!confirm("Are you sure you want to delete this item?")) {
|
|
178
|
+
e.preventDefault();
|
|
179
|
+
}
|
|
180
|
+
};
|
|
181
|
+
|
|
182
|
+
return (
|
|
183
|
+
<Link to={`/items/${itemId}/delete`} onClick={handleClick} className="text-red-600">
|
|
184
|
+
Delete Item
|
|
185
|
+
</Link>
|
|
186
|
+
);
|
|
187
|
+
}
|
|
188
|
+
```
|
|
189
|
+
|
|
190
|
+
## Integration with Button
|
|
191
|
+
|
|
192
|
+
Use the Link component with the Button component's `asChild` prop:
|
|
193
|
+
|
|
194
|
+
```tsx
|
|
195
|
+
<Button asChild variant="outline">
|
|
196
|
+
<Link to="/action">Perform Action</Link>
|
|
197
|
+
</Button>
|
|
198
|
+
```
|
|
199
|
+
|
|
200
|
+
## Accessibility
|
|
201
|
+
|
|
202
|
+
The Link component maintains accessibility best practices:
|
|
203
|
+
|
|
204
|
+
- Proper focus management
|
|
205
|
+
- Keyboard navigation support
|
|
206
|
+
- Screen reader compatibility
|
|
207
|
+
- Semantic HTML structure
|
|
208
|
+
|
|
209
|
+
```tsx
|
|
210
|
+
<Link to="/help" aria-label="Get help and support">
|
|
211
|
+
Help
|
|
212
|
+
</Link>
|
|
213
|
+
```
|
|
214
|
+
|
|
215
|
+
## Performance
|
|
216
|
+
|
|
217
|
+
- **Client-side routing**: No full page reloads for internal navigation
|
|
218
|
+
- **Prefetching**: Intelligent prefetching of linked resources
|
|
219
|
+
- **View transitions**: Smooth transitions between pages (when supported)
|
|
220
|
+
|
|
221
|
+
## Notes
|
|
222
|
+
|
|
223
|
+
:::tip
|
|
224
|
+
|
|
225
|
+
The Link component is optimized for internal navigation and provides the best user experience for
|
|
226
|
+
single-page application routing.
|
|
227
|
+
|
|
228
|
+
:::
|
|
229
|
+
|
|
230
|
+
:::info
|
|
231
|
+
|
|
232
|
+
For external links, use a regular `<a>` tag instead of the Link component to ensure proper external
|
|
233
|
+
navigation behavior.
|
|
234
|
+
|
|
235
|
+
:::
|
|
236
|
+
|
|
237
|
+
:::caution
|
|
238
|
+
|
|
239
|
+
When using `reloadDocument`, the link will perform a full page reload, which may impact performance
|
|
240
|
+
and user experience.
|
|
241
|
+
|
|
242
|
+
:::
|
|
@@ -0,0 +1,151 @@
|
|
|
1
|
+
---
|
|
2
|
+
title: Markdown
|
|
3
|
+
sidebar_icon: heading-1
|
|
4
|
+
---
|
|
5
|
+
|
|
6
|
+
A component for rendering markdown content with syntax highlighting and custom components.
|
|
7
|
+
|
|
8
|
+
## Import
|
|
9
|
+
|
|
10
|
+
```tsx
|
|
11
|
+
import { Markdown } from "zudoku/components";
|
|
12
|
+
```
|
|
13
|
+
|
|
14
|
+
## Props
|
|
15
|
+
|
|
16
|
+
```ts
|
|
17
|
+
type MarkdownProps = {
|
|
18
|
+
content: string;
|
|
19
|
+
className?: string;
|
|
20
|
+
components?: Components;
|
|
21
|
+
};
|
|
22
|
+
```
|
|
23
|
+
|
|
24
|
+
## Usage
|
|
25
|
+
|
|
26
|
+
### Basic Markdown
|
|
27
|
+
|
|
28
|
+
```tsx
|
|
29
|
+
<Markdown content="# Hello World\n\nThis is **bold** text." />
|
|
30
|
+
```
|
|
31
|
+
|
|
32
|
+
### With Custom Styling
|
|
33
|
+
|
|
34
|
+
```tsx
|
|
35
|
+
<Markdown content="# Styled Content" className="max-w-2xl mx-auto" />
|
|
36
|
+
```
|
|
37
|
+
|
|
38
|
+
### With Custom Components
|
|
39
|
+
|
|
40
|
+
```tsx
|
|
41
|
+
const customComponents = {
|
|
42
|
+
h1: ({ children }) => <h1 className="text-4xl font-bold text-blue-600">{children}</h1>,
|
|
43
|
+
p: ({ children }) => <p className="text-gray-700 leading-relaxed">{children}</p>,
|
|
44
|
+
};
|
|
45
|
+
|
|
46
|
+
<Markdown content="# Custom Heading\n\nCustom paragraph styling." components={customComponents} />;
|
|
47
|
+
```
|
|
48
|
+
|
|
49
|
+
:::info
|
|
50
|
+
|
|
51
|
+
Custom components provided via the `components` prop will merge with default MDX components,
|
|
52
|
+
allowing you to override specific elements while keeping others intact.
|
|
53
|
+
|
|
54
|
+
:::
|
|
55
|
+
|
|
56
|
+
## Features
|
|
57
|
+
|
|
58
|
+
- **GitHub Flavored Markdown**: Full GFM support including tables, strikethrough, and task lists
|
|
59
|
+
- **Syntax Highlighting**: Code blocks with configurable Shiki themes
|
|
60
|
+
- **Raw HTML Support**: Safely renders HTML mixed with markdown
|
|
61
|
+
- **Custom Components**: Override default markdown elements with custom React components
|
|
62
|
+
- **Prose Styling**: Built-in typography styles with dark mode support
|
|
63
|
+
|
|
64
|
+
## Supported Markdown
|
|
65
|
+
|
|
66
|
+
### Headers
|
|
67
|
+
|
|
68
|
+
```markdown
|
|
69
|
+
# H1 Header
|
|
70
|
+
|
|
71
|
+
## H2 Header
|
|
72
|
+
|
|
73
|
+
### H3 Header
|
|
74
|
+
```
|
|
75
|
+
|
|
76
|
+
### Emphasis
|
|
77
|
+
|
|
78
|
+
<!-- prettier-ignore -->
|
|
79
|
+
```markdown
|
|
80
|
+
_italic_ or *italic*
|
|
81
|
+
**bold** or __bold__
|
|
82
|
+
**_bold italic_**
|
|
83
|
+
~~strikethrough~~
|
|
84
|
+
```
|
|
85
|
+
|
|
86
|
+
### Lists
|
|
87
|
+
|
|
88
|
+
```markdown
|
|
89
|
+
- Unordered list item
|
|
90
|
+
- Another item
|
|
91
|
+
- Nested item
|
|
92
|
+
|
|
93
|
+
1. Ordered list item
|
|
94
|
+
2. Another numbered item
|
|
95
|
+
```
|
|
96
|
+
|
|
97
|
+
### Code
|
|
98
|
+
|
|
99
|
+
The Markdown component supports both inline code and code blocks with syntax highlighting.
|
|
100
|
+
|
|
101
|
+
**Inline code** with backticks:
|
|
102
|
+
|
|
103
|
+
```markdown
|
|
104
|
+
Inline `code` with backticks
|
|
105
|
+
```
|
|
106
|
+
|
|
107
|
+
**Code blocks** with syntax highlighting:
|
|
108
|
+
|
|
109
|
+
````markdown
|
|
110
|
+
```javascript
|
|
111
|
+
// Code block with syntax highlighting
|
|
112
|
+
function hello() {
|
|
113
|
+
console.log("Hello, world!");
|
|
114
|
+
}
|
|
115
|
+
```
|
|
116
|
+
````
|
|
117
|
+
|
|
118
|
+
For advanced syntax highlighting features like line numbers, titles, and line highlighting, see:
|
|
119
|
+
|
|
120
|
+
- [Code Blocks](/dev-portal/zudoku/markdown/code-blocks) - Markdown code block syntax and features
|
|
121
|
+
- [Syntax Highlight](/dev-portal/zudoku/components/syntax-highlight) - React component for syntax highlighting
|
|
122
|
+
|
|
123
|
+
### Links and Images
|
|
124
|
+
|
|
125
|
+
```markdown
|
|
126
|
+
[Link text](https://example.com) 
|
|
127
|
+
```
|
|
128
|
+
|
|
129
|
+
### Tables
|
|
130
|
+
|
|
131
|
+
```markdown
|
|
132
|
+
| Column 1 | Column 2 |
|
|
133
|
+
| -------- | -------- |
|
|
134
|
+
| Cell 1 | Cell 2 |
|
|
135
|
+
| Cell 3 | Cell 4 |
|
|
136
|
+
```
|
|
137
|
+
|
|
138
|
+
## Configuration
|
|
139
|
+
|
|
140
|
+
The Markdown component automatically uses:
|
|
141
|
+
|
|
142
|
+
- **Remark GFM**: For GitHub Flavored Markdown features
|
|
143
|
+
- **Rehype Raw**: For HTML support
|
|
144
|
+
- **Shiki**: For syntax highlighting with your configured themes
|
|
145
|
+
|
|
146
|
+
:::tip
|
|
147
|
+
|
|
148
|
+
The Markdown component integrates with Zudoku's syntax highlighting configuration and will use the
|
|
149
|
+
same themes as configured in your Dev Portal options.
|
|
150
|
+
|
|
151
|
+
:::
|
|
@@ -0,0 +1,81 @@
|
|
|
1
|
+
---
|
|
2
|
+
title: Mermaid
|
|
3
|
+
sidebar_icon: chart-network
|
|
4
|
+
description: Render Mermaid diagrams dynamically with client-side rendering.
|
|
5
|
+
---
|
|
6
|
+
|
|
7
|
+
import { Mermaid } from "zudoku/mermaid";
|
|
8
|
+
|
|
9
|
+
The `Mermaid` component renders [Mermaid diagrams](https://mermaid.js.org/) in the browser using
|
|
10
|
+
client-side rendering.
|
|
11
|
+
|
|
12
|
+
<br />
|
|
13
|
+
|
|
14
|
+
:::info{title="Build-Time Alternative"}
|
|
15
|
+
|
|
16
|
+
For static diagrams, consider [build-time rendering with rehype-mermaid](/dev-portal/zudoku/guides/mermaid).
|
|
17
|
+
|
|
18
|
+
:::
|
|
19
|
+
|
|
20
|
+
## Prerequisites
|
|
21
|
+
|
|
22
|
+
Install the `mermaid` peer dependency:
|
|
23
|
+
|
|
24
|
+
```bash
|
|
25
|
+
npm install mermaid
|
|
26
|
+
```
|
|
27
|
+
|
|
28
|
+
## Import
|
|
29
|
+
|
|
30
|
+
```tsx
|
|
31
|
+
import { Mermaid } from "zudoku/mermaid";
|
|
32
|
+
```
|
|
33
|
+
|
|
34
|
+
## Props
|
|
35
|
+
|
|
36
|
+
```ts
|
|
37
|
+
type MermaidProps = {
|
|
38
|
+
chart: string; // Mermaid diagram definition
|
|
39
|
+
config?: MermaidConfig; // Optional Mermaid configuration
|
|
40
|
+
} & ComponentProps<"div">;
|
|
41
|
+
```
|
|
42
|
+
|
|
43
|
+
## Usage
|
|
44
|
+
|
|
45
|
+
### Basic Usage
|
|
46
|
+
|
|
47
|
+
```tsx
|
|
48
|
+
<Mermaid
|
|
49
|
+
chart={`graph TD;
|
|
50
|
+
A-->B;
|
|
51
|
+
A-->C;
|
|
52
|
+
B-->D;
|
|
53
|
+
C-->D;`}
|
|
54
|
+
/>
|
|
55
|
+
```
|
|
56
|
+
|
|
57
|
+
<Mermaid
|
|
58
|
+
chart={`graph TD;
|
|
59
|
+
A-->B;
|
|
60
|
+
A-->C;
|
|
61
|
+
B-->D;
|
|
62
|
+
C-->D;`}
|
|
63
|
+
/>
|
|
64
|
+
|
|
65
|
+
### With Configuration
|
|
66
|
+
|
|
67
|
+
```tsx
|
|
68
|
+
<Mermaid
|
|
69
|
+
config={{ theme: "dark" }}
|
|
70
|
+
chart={`sequenceDiagram
|
|
71
|
+
Alice->>Bob: Hello Bob
|
|
72
|
+
Bob-->>Alice: Hi Alice`}
|
|
73
|
+
/>
|
|
74
|
+
```
|
|
75
|
+
|
|
76
|
+
<Mermaid
|
|
77
|
+
config={{ theme: "dark" }}
|
|
78
|
+
chart={`sequenceDiagram
|
|
79
|
+
Alice->>Bob: Hello Bob
|
|
80
|
+
Bob-->>Alice: Hi Alice`}
|
|
81
|
+
/>
|
|
@@ -0,0 +1,87 @@
|
|
|
1
|
+
---
|
|
2
|
+
title: API Playground
|
|
3
|
+
sidebar_icon: circle-play
|
|
4
|
+
---
|
|
5
|
+
|
|
6
|
+
You can use this component to allow users to test your API anywhere in your documentation.
|
|
7
|
+
|
|
8
|
+
This component is **only available in [MDX files](/dev-portal/zudoku/markdown/mdx)** and you can use it directly
|
|
9
|
+
without any imports:
|
|
10
|
+
|
|
11
|
+
```tsx
|
|
12
|
+
<OpenPlaygroundButton {...props} />
|
|
13
|
+
```
|
|
14
|
+
|
|
15
|
+
:::tip{title="Hot tip"}
|
|
16
|
+
|
|
17
|
+
The Playground can point to any API endpoint, even if it's not in the API catalog.
|
|
18
|
+
|
|
19
|
+
:::
|
|
20
|
+
|
|
21
|
+
## Props
|
|
22
|
+
|
|
23
|
+
```ts
|
|
24
|
+
type PlaygroundProps = {
|
|
25
|
+
server: string;
|
|
26
|
+
url: string;
|
|
27
|
+
method: string;
|
|
28
|
+
headers?: Header[];
|
|
29
|
+
pathParams?: PathParam[];
|
|
30
|
+
queryParams?: QueryParam[];
|
|
31
|
+
body?: string;
|
|
32
|
+
};
|
|
33
|
+
```
|
|
34
|
+
|
|
35
|
+
## Examples
|
|
36
|
+
|
|
37
|
+
### Zuplo Echo
|
|
38
|
+
|
|
39
|
+
In this example, we're using the Zuplo Echo API to test the `POST /hello-world/{name}` endpoint.
|
|
40
|
+
|
|
41
|
+
<OpenPlaygroundButton
|
|
42
|
+
server="https://echo.zuplo.io/"
|
|
43
|
+
url="/hello-world/{name}"
|
|
44
|
+
headers={[{ name: "X-Zudoku-Playground", defaultValue: "Hello World" }]}
|
|
45
|
+
pathParams={[{ name: "name", defaultValue: "John" }]}
|
|
46
|
+
queryParams={[
|
|
47
|
+
{ name: "age", defaultValue: "30" },
|
|
48
|
+
{ name: "city", defaultValue: "New York" },
|
|
49
|
+
]}
|
|
50
|
+
body={JSON.stringify({ message: "Hello World" })}
|
|
51
|
+
method="POST"
|
|
52
|
+
/>
|
|
53
|
+
|
|
54
|
+
```tsx
|
|
55
|
+
<OpenPlaygroundButton
|
|
56
|
+
server="https://echo.zuplo.io/"
|
|
57
|
+
url="/hello-world/{name}"
|
|
58
|
+
headers={[
|
|
59
|
+
{
|
|
60
|
+
name: "X-Zudoku-Playground",
|
|
61
|
+
defaultValue: "Hello World",
|
|
62
|
+
},
|
|
63
|
+
]}
|
|
64
|
+
pathParams={[{ name: "name", defaultValue: "John" }]}
|
|
65
|
+
queryParams={[
|
|
66
|
+
{ name: "age", defaultValue: "30" },
|
|
67
|
+
{ name: "city", defaultValue: "New York" },
|
|
68
|
+
]}
|
|
69
|
+
body={JSON.stringify({ message: "Hello World" })}
|
|
70
|
+
method="POST"
|
|
71
|
+
/>
|
|
72
|
+
```
|
|
73
|
+
|
|
74
|
+
### JSON Placeholder
|
|
75
|
+
|
|
76
|
+
In this example, we're using the JSON Placeholder API to test the `GET /photos` endpoint. We can
|
|
77
|
+
also change the Text on the button to something more specific to the API.
|
|
78
|
+
|
|
79
|
+
<OpenPlaygroundButton server="https://jsonplaceholder.typicode.com" url="/photos" method="GET">
|
|
80
|
+
Test Photos Endpoint
|
|
81
|
+
</OpenPlaygroundButton>
|
|
82
|
+
|
|
83
|
+
```tsx
|
|
84
|
+
<OpenPlaygroundButton server="https://jsonplaceholder.typicode.com" url="/photos" method="GET">
|
|
85
|
+
Test Photos Endpoint
|
|
86
|
+
</OpenPlaygroundButton>
|
|
87
|
+
```
|
|
@@ -0,0 +1,78 @@
|
|
|
1
|
+
---
|
|
2
|
+
title: Secret
|
|
3
|
+
sidebar_icon: lock
|
|
4
|
+
description: Use the Secret component to display and manage API keys in your Dev Portal application.
|
|
5
|
+
---
|
|
6
|
+
|
|
7
|
+
import { Secret } from "zudoku/ui/Secret";
|
|
8
|
+
import { Value } from "zudoku/ui/Value";
|
|
9
|
+
|
|
10
|
+
The `Secret` component can be used to display secrets, typically API keys, in your Dev Portal application.
|
|
11
|
+
|
|
12
|
+
## Import
|
|
13
|
+
|
|
14
|
+
```tsx
|
|
15
|
+
import { Secret } from "zudoku/ui/Secret";
|
|
16
|
+
```
|
|
17
|
+
|
|
18
|
+
## Usage
|
|
19
|
+
|
|
20
|
+
```tsx
|
|
21
|
+
<Secret
|
|
22
|
+
secret="pkcd_this-is-a-never-01K1DASDXXQDA9S6GKASKYAFSDH"
|
|
23
|
+
status="active"
|
|
24
|
+
preview={5}
|
|
25
|
+
onCopy={(secret) => {
|
|
26
|
+
console.log("Copied secret:", secret);
|
|
27
|
+
}}
|
|
28
|
+
onReveal={(revealed) => {
|
|
29
|
+
console.log("Revealed:", revealed);
|
|
30
|
+
}}
|
|
31
|
+
/>
|
|
32
|
+
```
|
|
33
|
+
|
|
34
|
+
<div className="flex flex-col gap-2">
|
|
35
|
+
<Secret
|
|
36
|
+
secret="pkcd_this-is-a-never-01K1DASDXXQDA9S6GKASKYAFSDH"
|
|
37
|
+
status="active"
|
|
38
|
+
className="max-w-fit"
|
|
39
|
+
/>
|
|
40
|
+
|
|
41
|
+
<Secret
|
|
42
|
+
secret="pkcd_this-is-a-gonna-01K1DAFSDHAS9S6GE5KASKYSDXX"
|
|
43
|
+
status="expiring"
|
|
44
|
+
className="max-w-fit"
|
|
45
|
+
/>
|
|
46
|
+
|
|
47
|
+
<Secret
|
|
48
|
+
secret="pkcd_this-is-a-give-01K1DAFSSDHOOASDD9S6KYGE5KAS"
|
|
49
|
+
status="expired"
|
|
50
|
+
className="max-w-fit"
|
|
51
|
+
/>
|
|
52
|
+
|
|
53
|
+
<Secret
|
|
54
|
+
secret="pkcd_this-is-a-you-01K1DAGDN0NDDHXS7VBYGFME1SFSR"
|
|
55
|
+
status="revoked"
|
|
56
|
+
className="max-w-fit"
|
|
57
|
+
/>
|
|
58
|
+
|
|
59
|
+
<Secret
|
|
60
|
+
secret="pkcd_this-is-a-you-01K1DAGDN0NDDHXS7VBYGFME1SFSR"
|
|
61
|
+
status="none"
|
|
62
|
+
className="max-w-fit"
|
|
63
|
+
/>
|
|
64
|
+
|
|
65
|
+
<Secret secret="pkcd_this-is-a-up-01K1DAFSDHASDXXSQDA9S6GE5KASKY" className="max-w-fit" />
|
|
66
|
+
|
|
67
|
+
<div className="flex flex-col gap-0 max-w-fit not-prose">
|
|
68
|
+
<span className="text-sm font-medium">Client ID</span>
|
|
69
|
+
<Value
|
|
70
|
+
value="client-id-01985b58-d7af-71eb-a27e-b2062935ece4"
|
|
71
|
+
className="w-full"
|
|
72
|
+
/>
|
|
73
|
+
<span className="text-sm font-medium">Client Secret</span>
|
|
74
|
+
<Secret
|
|
75
|
+
secret="pkcd_this-is-a-up-01K1DAFSDHASDXXSQDA9S6GE5KASKY"
|
|
76
|
+
/>
|
|
77
|
+
</div>
|
|
78
|
+
</div>
|