@redocly/redoc-revel 0.138.0-next.7 → 0.138.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/CHANGELOG.md +355 -0
- package/dist/api-schemas/mcp-fetch-count.d.ts +24 -0
- package/dist/api-schemas/mcp-fetch-count.js +1 -0
- package/dist/bin.js +0 -0
- package/dist/cli/build/analytics/collect-analytics.js +1 -1
- package/dist/cli/build/analytics/collectors/get-processed-config-stats-usage.js +1 -1
- package/dist/cli/build/index.js +1 -1
- package/dist/cli/develop.js +1 -1
- package/dist/cli/eject/ejectTheme.js +1 -1
- package/dist/cli/translations/collect-config-translations.js +1 -1
- package/dist/client/App.js +1 -1
- package/dist/client/app/ReviewComments/ReviewComments.js +2 -2
- package/dist/client/app/l10n/hooks/useTranslationKeys.js +1 -1
- package/dist/client/app/markdoc/custom-components/openapi/openapi-example.js +1 -1
- package/dist/client/app/markdoc/custom-components/openapi/openapi-response-sample.js +1 -1
- package/dist/client/app/markdoc/custom-components/openapi/replay-openapi.js +1 -1
- package/dist/client/app/markdoc/hooks/use-store.d.ts +2 -3
- package/dist/client/app/pages/Invite/Invite.js +1 -1
- package/dist/client/app/search/useSearch.js +1 -1
- package/dist/client/app/utils/loadAndNavigate.js +1 -1
- package/dist/client/polyfills.js +1 -1
- package/dist/client/runtime/loader.js +1 -1
- package/dist/client/utils/catalog/parse-filter-query.js +1 -1
- package/dist/compiled/svgo/svgo-node.js +39 -39
- package/dist/constants/api.d.ts +1 -0
- package/dist/constants/api.js +1 -1
- package/dist/constants/common.d.ts +6 -0
- package/dist/constants/common.js +1 -1
- package/dist/constants/l10n/langs/ar.js +1 -1
- package/dist/constants/l10n/langs/de.js +1 -1
- package/dist/constants/l10n/langs/en.js +1 -1
- package/dist/constants/l10n/langs/es.js +1 -1
- package/dist/constants/l10n/langs/fr.js +1 -1
- package/dist/constants/l10n/langs/hi.js +1 -1
- package/dist/constants/l10n/langs/it.js +1 -1
- package/dist/constants/l10n/langs/ja.js +1 -1
- package/dist/constants/l10n/langs/ko.js +1 -1
- package/dist/constants/l10n/langs/pl.js +1 -1
- package/dist/constants/l10n/langs/pt-BR.js +1 -1
- package/dist/constants/l10n/langs/pt.js +1 -1
- package/dist/constants/l10n/langs/ru.js +1 -1
- package/dist/constants/l10n/langs/uk.js +1 -1
- package/dist/constants/l10n/langs/zh.js +1 -1
- package/dist/markdoc/helpers/get-inner-text.js +2 -2
- package/dist/markdoc/helpers/guards/is-prompt-node.d.ts +13 -0
- package/dist/markdoc/helpers/guards/is-prompt-node.js +1 -0
- package/dist/server/config/env-config.d.ts +0 -4
- package/dist/server/config/env-schema.d.ts +0 -10
- package/dist/server/config/env-schemas/feature-flags.d.ts +0 -8
- package/dist/server/config/env-schemas/feature-flags.js +1 -1
- package/dist/server/constants/entitlements.js +1 -1
- package/dist/server/entitlements/entitlements-provider.js +1 -1
- package/dist/server/esbuild/esbuild.js +3 -3
- package/dist/server/esbuild/plugins/on-rebuild.js +1 -1
- package/dist/server/esbuild/plugins/styled-components-ssr.js +1 -1
- package/dist/server/esbuild/plugins/yaml-loader.js +1 -1
- package/dist/server/fs/content-fs.js +1 -1
- package/dist/server/fs/utils/is-l10n-root-file.d.ts +3 -0
- package/dist/server/fs/utils/is-l10n-root-file.js +1 -0
- package/dist/server/plugins/analytics/amplitude/index.js +1 -1
- package/dist/server/plugins/analytics/heap/browser-hooks.js +1 -1
- package/dist/server/plugins/api-docs/index.js +1 -1
- package/dist/server/plugins/api-docs/loader.js +3 -3
- package/dist/server/plugins/api-docs/spec-download.api.js +1 -1
- package/dist/server/plugins/api-docs/utils/apply-nav-item-to-root.js +1 -1
- package/dist/server/plugins/api-docs/utils/decorators.d.ts +11 -0
- package/dist/server/plugins/api-docs/utils/decorators.js +1 -1
- package/dist/server/plugins/arazzo-docs/arazzo-doc-loader.js +2 -2
- package/dist/server/plugins/catalog-entities/extensions/extractors/api-description/openapi-entities-extractor.js +1 -1
- package/dist/server/plugins/catalog-entities/utils/extract-parts-from-channels-message-ref.js +1 -1
- package/dist/server/plugins/config-parser/format-custom-tags.js +1 -1
- package/dist/server/plugins/config-parser/loaders/content-slugs-loader.js +1 -1
- package/dist/server/plugins/config-parser/loaders/versions-config-loader.js +1 -1
- package/dist/server/plugins/config-parser/resolve-mutual-exclusion.js +1 -1
- package/dist/server/plugins/config-parser/safe-parse.js +1 -1
- package/dist/server/plugins/default-theme/resolve-logo.js +1 -1
- package/dist/server/plugins/dev-onboarding/api/adapters/apigee/adapter.js +2 -2
- package/dist/server/plugins/dev-onboarding/api/adapters/gravitee/client.js +2 -2
- package/dist/server/plugins/dev-onboarding/api/combine.js +1 -1
- package/dist/server/plugins/dev-onboarding/template/components/ApiKeyOverview.js +3 -3
- package/dist/server/plugins/dev-onboarding/template/components/AppOverview.js +1 -1
- package/dist/server/plugins/dev-onboarding/template/components/useSortableData.js +1 -1
- package/dist/server/plugins/markdown/attribute-resolvers/code-walkthrough/file-chunk-parser.d.ts +1 -1
- package/dist/server/plugins/markdown/attribute-resolvers/index.js +1 -1
- package/dist/server/plugins/markdown/attribute-resolvers/resolve-link.js +1 -1
- package/dist/server/plugins/markdown/attribute-resolvers/resolve-svg-content.js +1 -1
- package/dist/server/plugins/markdown/attribute-resolvers/resolve-tag-raw-content.d.ts +4 -0
- package/dist/server/plugins/markdown/attribute-resolvers/resolve-tag-raw-content.js +2 -0
- package/dist/server/plugins/markdown/compiler.js +1 -1
- package/dist/server/plugins/markdown/create-source-lines-reader.d.ts +7 -0
- package/dist/server/plugins/markdown/create-source-lines-reader.js +1 -0
- package/dist/server/plugins/markdown/html/normalize-html-headings.d.ts +9 -0
- package/dist/server/plugins/markdown/html/normalize-html-headings.js +1 -0
- package/dist/server/plugins/markdown/markdoc/markdoc-options.js +1 -1
- package/dist/server/plugins/markdown/markdoc/plugins/utils.d.ts +1 -1
- package/dist/server/plugins/markdown/markdoc/plugins/utils.js +1 -1
- package/dist/server/plugins/markdown/markdown-static-data-loader.js +1 -1
- package/dist/server/plugins/markdown/search/get-ai-search-documents.js +2 -2
- package/dist/server/plugins/markdown/search/search-resolver.js +1 -1
- package/dist/server/plugins/markdown/search/to-markdown.js +13 -13
- package/dist/server/plugins/markdown/search/walk-sections.d.ts +3 -1
- package/dist/server/plugins/markdown/search/walk-sections.js +3 -3
- package/dist/server/plugins/markdown/utils/sanitize-malformed-md-content.js +2 -2
- package/dist/server/plugins/mcp/audit/audit-log.d.ts +1 -1
- package/dist/server/plugins/mcp/audit/audit-log.js +1 -1
- package/dist/server/plugins/mcp/audit/code-credentials.d.ts +9 -0
- package/dist/server/plugins/mcp/audit/code-credentials.js +2 -0
- package/dist/server/plugins/mcp/codemode/capabilities/fetch/index.js +5 -5
- package/dist/server/plugins/mcp/codemode/capabilities/types.d.ts +3 -1
- package/dist/server/plugins/mcp/codemode/capabilities/utils.d.ts +2 -1
- package/dist/server/plugins/mcp/codemode/capabilities/utils.js +3 -3
- package/dist/server/plugins/mcp/codemode/code-audit.d.ts +4 -3
- package/dist/server/plugins/mcp/codemode/code-execution-audit.js +1 -1
- package/dist/server/plugins/mcp/custom-tools/scan-custom-tools.js +1 -1
- package/dist/server/plugins/mcp/docs-mcp/tool-schemas.js +1 -1
- package/dist/server/plugins/mcp/docs-mcp/tools/core/utils.js +1 -1
- package/dist/server/plugins/mcp/docs-mcp/tools/core/whoami.js +1 -1
- package/dist/server/plugins/mcp/docs-mcp/tools/openapi/list-apis.js +1 -1
- package/dist/server/plugins/mcp/docs-mcp/tools/openapi/utils.d.ts +12 -3
- package/dist/server/plugins/mcp/docs-mcp/tools/openapi/utils.js +1 -1
- package/dist/server/plugins/mcp/docs-mcp/utils/resolve-refs.d.ts +2 -2
- package/dist/server/plugins/mcp/docs-mcp/utils/resolve-refs.js +1 -1
- package/dist/server/plugins/mcp/gateway-mcp/allowed-http-methods.d.ts +11 -0
- package/dist/server/plugins/mcp/gateway-mcp/allowed-http-methods.js +1 -0
- package/dist/server/plugins/mcp/gateway-mcp/api-call-operations.d.ts +32 -0
- package/dist/server/plugins/mcp/gateway-mcp/api-call-operations.js +1 -0
- package/dist/server/plugins/mcp/gateway-mcp/callable-apis.d.ts +7 -4
- package/dist/server/plugins/mcp/gateway-mcp/callable-apis.js +1 -1
- package/dist/server/plugins/mcp/gateway-mcp/caller-api-calls.d.ts +9 -0
- package/dist/server/plugins/mcp/gateway-mcp/caller-api-calls.js +1 -0
- package/dist/server/plugins/mcp/gateway-mcp/credential-validation.js +1 -1
- package/dist/server/plugins/mcp/gateway-mcp/elicitation.d.ts +1 -0
- package/dist/server/plugins/mcp/gateway-mcp/elicitation.js +5 -5
- package/dist/server/plugins/mcp/gateway-mcp/eligibility.d.ts +8 -4
- package/dist/server/plugins/mcp/gateway-mcp/eligibility.js +1 -1
- package/dist/server/plugins/mcp/gateway-mcp/fetch/fetch-audit.d.ts +2 -1
- package/dist/server/plugins/mcp/gateway-mcp/fetch/fetch-audit.js +1 -1
- package/dist/server/plugins/mcp/gateway-mcp/fetch/fetch-bridge.d.ts +11 -1
- package/dist/server/plugins/mcp/gateway-mcp/fetch/fetch-bridge.js +1 -1
- package/dist/server/plugins/mcp/gateway-mcp/fetch/redact.d.ts +11 -0
- package/dist/server/plugins/mcp/gateway-mcp/fetch/redact.js +1 -1
- package/dist/server/plugins/mcp/gateway-mcp/fetch-capability.js +1 -1
- package/dist/server/plugins/mcp/gateway-mcp/rate-limit/fetch-limiter/fetch-count-client.d.ts +4 -0
- package/dist/server/plugins/mcp/gateway-mcp/rate-limit/fetch-limiter/fetch-count-client.js +1 -0
- package/dist/server/plugins/mcp/gateway-mcp/rate-limit/fetch-limiter/fetch-count-secret.d.ts +4 -0
- package/dist/server/plugins/mcp/gateway-mcp/rate-limit/fetch-limiter/fetch-count-secret.js +1 -0
- package/dist/server/plugins/mcp/gateway-mcp/rate-limit/fetch-limiter/fetch-count.d.ts +11 -0
- package/dist/server/plugins/mcp/gateway-mcp/rate-limit/fetch-limiter/fetch-count.js +1 -0
- package/dist/server/plugins/mcp/gateway-mcp/rate-limit/fetch-limiter/fetch-counter-repository.d.ts +13 -0
- package/dist/server/plugins/mcp/gateway-mcp/rate-limit/fetch-limiter/fetch-counter-repository.js +13 -0
- package/dist/server/plugins/mcp/gateway-mcp/rate-limit/{limits.d.ts → fetch-limiter/fetch-limits.d.ts} +1 -1
- package/dist/server/plugins/mcp/gateway-mcp/rate-limit/fetch-limiter/fetch-limits.js +1 -0
- package/dist/server/plugins/mcp/gateway-mcp/rate-limit/{apply-edge-rate-limit.d.ts → request-limiter/apply-edge-rate-limit.d.ts} +1 -1
- package/dist/server/plugins/mcp/gateway-mcp/rate-limit/request-limiter/apply-edge-rate-limit.js +1 -0
- package/dist/server/plugins/mcp/gateway-mcp/rate-limit/{edge-limiter.d.ts → request-limiter/edge-limiter.d.ts} +3 -3
- package/dist/server/plugins/mcp/gateway-mcp/rate-limit/request-limiter/edge-limiter.js +1 -0
- package/dist/server/plugins/mcp/gateway-mcp/rate-limit/request-limiter/rate-limit-telemetry.js +1 -0
- package/dist/server/plugins/mcp/gateway-mcp/rate-limit/request-limiter/request-limits.d.ts +6 -0
- package/dist/server/plugins/mcp/gateway-mcp/rate-limit/request-limiter/request-limits.js +1 -0
- package/dist/server/plugins/mcp/gateway-mcp/rate-limit/utils/ip-key.js +1 -0
- package/dist/server/plugins/mcp/gateway-mcp/rate-limit/{window-counter.d.ts → utils/window-counter.d.ts} +1 -1
- package/dist/server/plugins/mcp/gateway-mcp/rate-limit/utils/window-counter.js +1 -0
- package/dist/server/plugins/mcp/gateway-mcp/route-pattern.d.ts +18 -0
- package/dist/server/plugins/mcp/gateway-mcp/route-pattern.js +1 -0
- package/dist/server/plugins/mcp/gateway-mcp/secret-store.d.ts +9 -3
- package/dist/server/plugins/mcp/gateway-mcp/secret-store.js +1 -1
- package/dist/server/plugins/mcp/gateway-mcp/subject.js +1 -1
- package/dist/server/plugins/mcp/gateway-mcp/upstream-auth-scheme.d.ts +2 -0
- package/dist/server/plugins/mcp/gateway-mcp/upstream-auth-scheme.js +2 -2
- package/dist/server/plugins/mcp/gateway-mcp/upstream-auth.d.ts +0 -2
- package/dist/server/plugins/mcp/gateway-mcp/upstream-auth.js +1 -1
- package/dist/server/plugins/mcp/handlers/credentials-page/constants.d.ts +7 -0
- package/dist/server/plugins/mcp/handlers/credentials-page/constants.js +1 -0
- package/dist/server/plugins/mcp/handlers/credentials-page/form-contract.d.ts +5 -0
- package/dist/server/plugins/mcp/handlers/credentials-page/form-contract.js +1 -0
- package/dist/server/plugins/mcp/handlers/credentials-page/form-page.d.ts +14 -0
- package/dist/server/plugins/mcp/handlers/credentials-page/form-page.js +62 -0
- package/dist/server/plugins/mcp/handlers/credentials-page/layout.d.ts +17 -0
- package/dist/server/plugins/mcp/handlers/credentials-page/layout.js +11 -0
- package/dist/server/plugins/mcp/handlers/credentials-page/outcome-pages.d.ts +10 -0
- package/dist/server/plugins/mcp/handlers/credentials-page/outcome-pages.js +11 -0
- package/dist/server/plugins/mcp/handlers/credentials-page/site-branding.d.ts +10 -0
- package/dist/server/plugins/mcp/handlers/credentials-page/site-branding.js +1 -0
- package/dist/server/plugins/mcp/handlers/credentials-page/styles.d.ts +4 -0
- package/dist/server/plugins/mcp/handlers/credentials-page/styles.js +186 -0
- package/dist/server/plugins/mcp/handlers/credentials-page/types.d.ts +32 -0
- package/dist/server/plugins/mcp/handlers/credentials-page/types.js +0 -0
- package/dist/server/plugins/mcp/handlers/docs-mcp-handler.js +1 -1
- package/dist/server/plugins/mcp/handlers/handle-mcp-request.js +1 -1
- package/dist/server/plugins/mcp/handlers/mcp-credentials-handler.d.ts +0 -1
- package/dist/server/plugins/mcp/handlers/mcp-credentials-handler.js +1 -1
- package/dist/server/plugins/mcp/index.js +1 -1
- package/dist/server/plugins/mcp/servers/docs-server.js +1 -1
- package/dist/server/plugins/mcp/servers/mcp-server.js +2 -2
- package/dist/server/plugins/mcp/types.d.ts +16 -1
- package/dist/server/plugins/mcp/utils/mode.d.ts +4 -1
- package/dist/server/plugins/mcp/utils/mode.js +1 -1
- package/dist/server/plugins/mcp/utils/xmcp-utils.d.ts +3 -5
- package/dist/server/plugins/mcp/utils/xmcp-utils.js +1 -1
- package/dist/server/plugins/nav-utils.js +1 -1
- package/dist/server/plugins/scorecard-classic/loaders/scorecard.js +1 -1
- package/dist/server/plugins/scorecard-classic/template/components.js +1 -1
- package/dist/server/plugins/scorecard-classic/template/useData.js +1 -1
- package/dist/server/plugins/scorecard-classic/template/views.js +1 -1
- package/dist/server/plugins/search/engines/flexsearch/index.js +2 -2
- package/dist/server/plugins/sidebars/index.js +2 -2
- package/dist/server/plugins/sidebars/tabs.js +1 -1
- package/dist/server/plugins/sidebars/utils.js +1 -1
- package/dist/server/providers/database/client.d.ts +5 -0
- package/dist/server/providers/database/client.js +1 -1
- package/dist/server/providers/database/copy-migrations.js +1 -1
- package/dist/server/providers/database/database-connections-manager.js +1 -1
- package/dist/server/providers/database/has-project-database.d.ts +3 -0
- package/dist/server/providers/database/has-project-database.js +1 -0
- package/dist/server/store.d.ts +2 -0
- package/dist/server/store.js +1 -1
- package/dist/server/tools/notifiers/formatter.js +1 -1
- package/dist/server/tools/notifiers/helpers/privacy/mask-email.js +1 -1
- package/dist/server/tools/notifiers/logger.js +1 -1
- package/dist/server/types/plugins/markdown.d.ts +2 -0
- package/dist/server/types/web-server.d.ts +1 -0
- package/dist/server/utils/codeframes/codeframes.js +2 -2
- package/dist/server/utils/entitlements/read-entitlement-number.d.ts +3 -0
- package/dist/server/utils/entitlements/read-entitlement-number.js +1 -0
- package/dist/server/utils/fs.js +1 -1
- package/dist/server/utils/is-api-download-link.d.ts +1 -0
- package/dist/server/utils/is-api-download-link.js +1 -1
- package/dist/server/utils/rbac.js +1 -1
- package/dist/server/utils/redact-url.d.ts +3 -2
- package/dist/server/utils/redact-url.js +1 -1
- package/dist/server/utils/sandbox-context.d.ts +7 -4
- package/dist/server/utils/sandbox-context.js +1 -1
- package/dist/server/web-server/auth.d.ts +0 -1
- package/dist/server/web-server/auth.js +4 -4
- package/dist/server/web-server/dev-server.js +1 -1
- package/dist/server/web-server/http.d.ts +2 -1
- package/dist/server/web-server/http.js +2 -2
- package/dist/server/web-server/jwt/token-types.d.ts +1 -0
- package/dist/server/web-server/jwt/token-types.js +1 -1
- package/dist/server/web-server/middleware/catalogAuthMiddleware.js +1 -1
- package/dist/server/web-server/middleware/dynamic-middleware/hono-compose.js +1 -1
- package/dist/server/web-server/middleware/responseHeadersMiddleware.js +1 -1
- package/dist/server/web-server/routes/auth.d.ts +1 -1
- package/dist/server/web-server/routes/auth.js +1 -1
- package/dist/server/web-server/routes/catalog/helpers/create-entity-schema.d.ts +1756 -1756
- package/dist/server/web-server/routes/catalog/helpers/create-entity-update-schema.d.ts +295 -295
- package/dist/server/web-server/routes/cors-proxy.js +2 -2
- package/dist/server/web-server/routes/index.js +1 -1
- package/dist/server/web-server/routes/mcp-routes/mcp-consent-page.d.ts +24 -0
- package/dist/server/web-server/routes/mcp-routes/mcp-consent-page.js +35 -0
- package/dist/server/web-server/routes/mcp-routes/mcp-fetch-count.d.ts +8 -0
- package/dist/server/web-server/routes/mcp-routes/mcp-fetch-count.js +1 -0
- package/dist/server/web-server/routes/mcp-routes/mcp-oauth-store.d.ts +15 -0
- package/dist/server/web-server/routes/mcp-routes/mcp-oauth-store.js +1 -0
- package/dist/server/web-server/routes/mcp-routes/mcp-oauth.d.ts +3 -1
- package/dist/server/web-server/routes/mcp-routes/mcp-oauth.js +1 -1
- package/dist/server/web-server/routes/mcp-routes/mcp-routes.js +1 -1
- package/dist/server/web-server/routes/mcp-routes/mcp-server-card.js +1 -1
- package/dist/server/web-server/routes/resolve-route.js +1 -1
- package/dist/server/workers/worker-pool.js +1 -1
- package/dist/types/entitlements.d.ts +2 -0
- package/dist/utils/time/debounce.js +1 -1
- package/package.json +10 -11
- package/dist/client/app/utils/withLoadProgress.d.ts +0 -2
- package/dist/client/app/utils/withLoadProgress.js +0 -1
- package/dist/server/plugins/mcp/gateway-mcp/rate-limit/apply-edge-rate-limit.js +0 -1
- package/dist/server/plugins/mcp/gateway-mcp/rate-limit/edge-limiter.js +0 -1
- package/dist/server/plugins/mcp/gateway-mcp/rate-limit/ip-key.js +0 -1
- package/dist/server/plugins/mcp/gateway-mcp/rate-limit/limits.js +0 -1
- package/dist/server/plugins/mcp/gateway-mcp/rate-limit/rate-limit-telemetry.js +0 -1
- package/dist/server/plugins/mcp/gateway-mcp/rate-limit/window-counter.js +0 -1
- package/dist/server/plugins/mcp/handlers/mcp-credentials-page.d.ts +0 -12
- package/dist/server/plugins/mcp/handlers/mcp-credentials-page.js +0 -225
- /package/dist/server/plugins/mcp/gateway-mcp/rate-limit/{rate-limit-telemetry.d.ts → request-limiter/rate-limit-telemetry.d.ts} +0 -0
- /package/dist/server/plugins/mcp/gateway-mcp/rate-limit/{ip-key.d.ts → utils/ip-key.d.ts} +0 -0
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,351 @@
|
|
|
1
1
|
# @redocly/redoc-revel
|
|
2
2
|
|
|
3
|
+
## 0.138.0
|
|
4
|
+
|
|
5
|
+
### Minor Changes
|
|
6
|
+
|
|
7
|
+
- 3faa7cbcf5a: Improved the AI assistant's progress display to keep generated answers stable.
|
|
8
|
+
- aa2cc02077f: Added a tooltip to the link icon next to headings and properties in API docs.
|
|
9
|
+
- 4ee9ba49be2: Added support for ordering options in the Markdoc `connect-mcp` tag.
|
|
10
|
+
- f29ae93728e: Added a **Connect to Claude** option to page actions and the MCP server setup page.
|
|
11
|
+
- 36ac86bb3b8: Added support for project-specific MCP tools defined in an `@mcp` folder.
|
|
12
|
+
- c692c909bb4: Improved the `preview` command to use the next free port and log a warning when the requested port is already in use.
|
|
13
|
+
- 1368d8594d7: Added the `consent` option to display a cookie consent banner or privacy choices link that loads analytics and gated scripts only after visitor approval.
|
|
14
|
+
- 220a3f8f7ae: Improved the **Expand all** and **Collapse all** controls in JSON samples.
|
|
15
|
+
- 51256dcd1b9: Added output schema to the MCP `execute` tool and complete tool annotations to the MCP server tools.
|
|
16
|
+
- 0312a50ad9c: Added a `submit-feedback` tool to report documentation issues through the MCP server.
|
|
17
|
+
- 86c7cbe179b: Added the `prompt` Markdoc tag that displays an AI prompt on a page.
|
|
18
|
+
Readers can copy the prompt with one click or open in Cursor, Claude, or ChatGPT.
|
|
19
|
+
- fcb1b9e93bb: Added `tab` entries to `sidebars.yaml` for organizing projects into logical sections.
|
|
20
|
+
- 0002ecc776e: Added vertical alignment support for cells in the Markdoc `table` tag.
|
|
21
|
+
- 0caac36d83f: Improved Swagger `2.0` support with faster loading times and less memory used.
|
|
22
|
+
Preserved `$ref` descriptions and nullable references.
|
|
23
|
+
- e1b53618fb4: Changed the defaults of the `analytics.segment.trackPage`, `analytics.segment.includeTitleInPageCall`, and `analytics.rudderstack.trackPage` options to disable page view tracking by default.
|
|
24
|
+
- 4f85f31942f: Added the ejectable `ReplaySecuritySchemeActions` component which renders inside the security scheme card in the **Try it** console.
|
|
25
|
+
- 5f0afdc4135: Added WebMCP support, which enables AI agents in the reader's browser to search, read, and navigate your documentation.
|
|
26
|
+
- 9e9b4914145: Improved the reliability of AI assistant answers during streaming.
|
|
27
|
+
- 2928bcefe53: Improved the page load progress bar: it fills and fades out when a page finishes loading instead of disappearing at once.
|
|
28
|
+
|
|
29
|
+
### Patch Changes
|
|
30
|
+
|
|
31
|
+
- bc75bbe4b25: Fixed an issue where tooltips were missing for the **Copy**, **Like**, and **Dislike** buttons in AI assistant answers.
|
|
32
|
+
- 745c39d6de6: Fixed an issue where code samples in API docs failed to compile when a form field value contained quotes.
|
|
33
|
+
- 745c39d6de6: Fixed an issue where API docs request samples for `application/x-www-form-urlencoded` bodies ignored the `encoding` object and didn't repeat array field names, such as `tags=red&tags=green`.
|
|
34
|
+
- 6f47037fb79: Fixed API reference pages that failed to render when descriptions contained HTML blocks with escaped generic types, such as `GridItem\<T\>`.
|
|
35
|
+
- fd2ac753cec: Fixed an issue where the link checker falsely reported broken links to API reference pages.
|
|
36
|
+
- 53c31e67923: Fixed an issue in API docs where overview pages displayed only the text of `info.description` that came before the first heading.
|
|
37
|
+
The sections under the headings were missing from both the page and the sidebar.
|
|
38
|
+
- 0ada389a199: Fixed a `ResizeObserver loop` error in Safari and Firefox when navigating API reference pages from the sidebar.
|
|
39
|
+
- 745c39d6de6: Fixed an issue where the API docs search results displayed the source code of `<script>` and `<style>` tags from descriptions.
|
|
40
|
+
- 2da0856ede5: Reduced the size of API reference pages with many headings and schema fields.
|
|
41
|
+
- 0e355a7cd06: Improved API reference page load performance.
|
|
42
|
+
- 745c39d6de6: Fixed regressions of `oneOf` and discriminator behavior in API docs.
|
|
43
|
+
- 48d6de8aebf: Fixed an issue in OpenAPI docs where `label`, `icon`, and `badges` from `sidebars.yaml` were not applied to the API overview sidebar item.
|
|
44
|
+
- 47f024b52c3: Fixed the AI assistant providing answers without using the project API tools on projects with protected content.
|
|
45
|
+
- 90446d7523d: Hardened authentication.
|
|
46
|
+
- 63a6ead8690: Fixed an issue where unknown key in `redocly.yaml` caused its entire object to be removed.
|
|
47
|
+
- 61649bb626f: Fixed an issue where dropdown menus were cut off at edge of the viewport.
|
|
48
|
+
- 97122fa80ab: Fixed an issue in OpenAPI docs where the `openapi.events.tryItSent` callback did not run.
|
|
49
|
+
- a4abb7fe95e: Fixed an issue where GraphQL enum pages didn't render the **Referenced in** panel.
|
|
50
|
+
- 03c6816b61f: Fixed GraphQL schema downloads to follow the `access.rbac.content` rules of their docs pages.
|
|
51
|
+
- 675715f661e: Improved security for API functions and custom MCP tools in projects hosted in Reunite.
|
|
52
|
+
- f47542f0aaa: Fixed an issue in API docs where links in the **Operations** panel of had duplicated path prefix.
|
|
53
|
+
- b98352301b8: Updated `@redocly/openapi-core` to version `2.62.1`.
|
|
54
|
+
- 15ad3df0069: Improved keyboard and screen reader accessibility for image lightboxes, feedback reasons, select menus such as the version picker, and schema variant switches in API reference.
|
|
55
|
+
- c634df4a861: Fixed an issue where search returned an error on built projects with a very large search index.
|
|
56
|
+
- 63e49c20ce4: Fixed an issue where the `openapi-code-sample` tag omitted the authentication with `security` at the root instead of operation.
|
|
57
|
+
- fef7333d138: Fixed an issue where the `markdoc-example` tag rendered an empty result panel with `renderDemo=true`.
|
|
58
|
+
- 6605daa2732: Updated the Claude Desktop instructions on the `/mcp` page to add the Docs MCP server as a custom connector.
|
|
59
|
+
- e37c4f10360: Fixed an issue where MCP server lookups failed when several API description files shared a title.
|
|
60
|
+
- daa4750bb7a: Fixed portal server crashes under MCP traffic on Redoc and Revel projects.
|
|
61
|
+
- 94e74d18b8d: Fixed an issue where the link checker falsely reported broken links to `/mcp` and `/mcp-public`.
|
|
62
|
+
- 6bb03d3e5e6: Fixed an issue where groups in the mobile menu and drilldown sidebar collapsed if user expanded them right after a page loaded.
|
|
63
|
+
- 715697934a0: Fixed an issue where samples in OpenAPI docs displayed the wrong variant for a `oneOf` nested inside another `oneOf`.
|
|
64
|
+
- 707b590864b: Fixed an issue where the `openapi-response-sample` tag reverted to the first response code after in-page navigation or browser Back and Forward navigation.
|
|
65
|
+
- 48d6de8aebf: Fixed an issue in OpenAPI docs where links to headings in API description overview partials briefly displayed a "Page not found" error.
|
|
66
|
+
- 22f646e90b2: Fixed an issue in API docs where clicking an anchor link on a heading inside a partial caused a 404 error instead of navigating to the heading.
|
|
67
|
+
- aa2cc02077f: Fixed API docs link icons so they open the heading or property link without changing clipboard contents.
|
|
68
|
+
- afbb609d24e: Fixed security vulnerabilities `GHSA-6688-9rhm-gjv2` and `GHSA-p98j-92pf-mc4p` by upgrading `dompurify` to version `3.4.16`.
|
|
69
|
+
- 09404c61096: Fixed SSO login for branch previews of projects configured to use path prefixes.
|
|
70
|
+
- 148b3c99d7e: Fixed an issue where portal pages, such as API reference pages, stopped working after browser translation or a browser extension changed the page.
|
|
71
|
+
- 4bc012cafa9: Fixed divider color in button groups, such as the page actions split button, to match custom theme button colors.
|
|
72
|
+
- d4727bf4699: Fixed an issue where the search dialog reset the selected category to "All" every time it was reopened.
|
|
73
|
+
- 6567a12696e: Hardened RBAC enforcement for page content.
|
|
74
|
+
- cbc76e5e88b: Fixed an issue where a React page rendered blank if its page component was wrapped in `React.memo` or `forwardRef`.
|
|
75
|
+
- 1765f4025b2: Fixed an issue where embedded Replay lost the entered request when the page URL changed.
|
|
76
|
+
- 4d5ed94c177: Fixed an issue in Replay where closing a tab while a request was running in another tab left the sending tab stuck on `Sending request ...`.
|
|
77
|
+
- 2f3a264ac57: Fixed webhook and callback payload schemas in OpenAPI docs to correctly display read-only and write-only fields.
|
|
78
|
+
- 870f2254ffb: Fixed MCP server returning an empty result instead of an error when code execution produced a value too large or invalid for JSON conversion.
|
|
79
|
+
- 26e86082ad6: Fixed the API docs sidebar incorrectly highlighting an adjacent section while content was being lazy-loaded.
|
|
80
|
+
- 2d71130ad21: Fixed an issue where the search box in the navbar shifted on page load when the keyboard shortcut hint appeared.
|
|
81
|
+
- ba418fbe7bd: Fixed an issue in API docs where the **Show** button on a collapsed group scrolled the page to the group heading instead of expanding the operations in place.
|
|
82
|
+
- 34d61cdf9c1: Fixed an issue where a file directly in the `@l10n` folder duplicated every page of the project under a path named after that file.
|
|
83
|
+
The build ignores these files and returns a warning.
|
|
84
|
+
- db912be7b81: Fixed an issue where search returned results titled with raw HTML element names such as `table`, `th` or `div`.
|
|
85
|
+
The issue occurred on Markdown pages that contained raw HTML.
|
|
86
|
+
- 215ed7fc7fa: Updated the tooltip arrow to render as a compact 16 pixels pointer with a softly rounded tip.
|
|
87
|
+
- ef493e36db0: Fixed an issue with the `tabs` Markdoc tag that caused nested tabs to cover the **More** dropdown on narrow screens.
|
|
88
|
+
- 4bc012cafa9: Fixed the split button so the menu toggle and divider use the same `danger` tone as the main button.
|
|
89
|
+
- 215ed7fc7fa: Fixed an issue where the tooltip arrows failed to render in browsers that didn't support CSS anchor positioning.
|
|
90
|
+
- cff70028280: Fixed an issue where the AI assistant send button had no accessible name for screen readers.
|
|
91
|
+
- 07fca3fc6a0: Improved rendering of AsyncAPI `2.0–2.6` channels, operations, messages, servers, and traits to match AsyncAPI `3.0`.
|
|
92
|
+
- e62106befe7: Fixed server-side rendering of localized projects where UI labels appeared in the wrong language alongside hydration warnings.
|
|
93
|
+
- 6a53cfb6724: Resolved security vulnerabilities `GHSA-g4wm-2vf7-vfgr`, `CVE-2026-102827`, `CVE-2026-102828`, and `CVE-2026-102829` by upgrading `simple-git` dependency to version `4.0.2`.
|
|
94
|
+
- 8dcd600ebe8: Fixed an issue in the **Try it** console where query parameters with `allowReserved` caused reserved characters such as `/`, `:`, and `,` to be percent-encoded.
|
|
95
|
+
- bb5709ab9be: Updated the **Try it** console's example picker to label unnamed examples as `Default` instead of an internal identifier from the API description.
|
|
96
|
+
- bb5709ab9be: Fixed an issue where the **Try it** console opened on the first request body example in OpenAPI docs instead of the example selected in the request panel.
|
|
97
|
+
- bb5bd25ddf2: Fixed an issue in the **Try it** console where operations displayed empty or incorrect request bodies and missing parameter types.
|
|
98
|
+
- bb5bd25ddf2: Fixed an issue in the **Try it** console where referenced path item operations did not open in request tabs or appeared in the operations list.
|
|
99
|
+
- 555b74a73af: Fixed an issue in the **Try it** console where the toolbar in the **Body**, **Headers**, and **Cookies** tabs hid the copy button in a narrow response panel.
|
|
100
|
+
- 05026102888: Improved response validation in the **Try it** console: the response body is checked against the schema for its status code, status code range or `default`, and for its media type.
|
|
101
|
+
- 2fe28690761: Fixed an issue where the **Try it** console did not validate the response body against the documented response schema.
|
|
102
|
+
- 05026102888: Fixed an issue where the **Try it** console froze on request and response schemas that expand to a very large number of nodes.
|
|
103
|
+
- f7fa203bf8f: Fixed an issue where the version picker listed versions of a page that RBAC hid from the user.
|
|
104
|
+
- f7fa203bf8f: Fixed an issue where the version picker disappeared on pages that had no items in the sidebar.
|
|
105
|
+
- e5306838bd9: Fixed an issue where some of the UI text didn't switch to a new language after navigation.
|
|
106
|
+
- Updated dependencies [bc75bbe4b25]
|
|
107
|
+
- Updated dependencies [3faa7cbcf5a]
|
|
108
|
+
- Updated dependencies [745c39d6de6]
|
|
109
|
+
- Updated dependencies [745c39d6de6]
|
|
110
|
+
- Updated dependencies [6f47037fb79]
|
|
111
|
+
- Updated dependencies [53c31e67923]
|
|
112
|
+
- Updated dependencies [0ada389a199]
|
|
113
|
+
- Updated dependencies [745c39d6de6]
|
|
114
|
+
- Updated dependencies [2da0856ede5]
|
|
115
|
+
- Updated dependencies [0e355a7cd06]
|
|
116
|
+
- Updated dependencies [745c39d6de6]
|
|
117
|
+
- Updated dependencies [aa2cc02077f]
|
|
118
|
+
- Updated dependencies [4ee9ba49be2]
|
|
119
|
+
- Updated dependencies [f29ae93728e]
|
|
120
|
+
- Updated dependencies [61649bb626f]
|
|
121
|
+
- Updated dependencies [97122fa80ab]
|
|
122
|
+
- Updated dependencies [1368d8594d7]
|
|
123
|
+
- Updated dependencies [a4abb7fe95e]
|
|
124
|
+
- Updated dependencies [f47542f0aaa]
|
|
125
|
+
- Updated dependencies [b98352301b8]
|
|
126
|
+
- Updated dependencies [220a3f8f7ae]
|
|
127
|
+
- Updated dependencies [15ad3df0069]
|
|
128
|
+
- Updated dependencies [15ad3df0069]
|
|
129
|
+
- Updated dependencies [2928bcefe53]
|
|
130
|
+
- Updated dependencies [63e49c20ce4]
|
|
131
|
+
- Updated dependencies [fef7333d138]
|
|
132
|
+
- Updated dependencies [6605daa2732]
|
|
133
|
+
- Updated dependencies [de7f42377f7]
|
|
134
|
+
- Updated dependencies [295faffbd0a]
|
|
135
|
+
- Updated dependencies [6bb03d3e5e6]
|
|
136
|
+
- Updated dependencies [715697934a0]
|
|
137
|
+
- Updated dependencies [48d6de8aebf]
|
|
138
|
+
- Updated dependencies [22f646e90b2]
|
|
139
|
+
- Updated dependencies [aa2cc02077f]
|
|
140
|
+
- Updated dependencies [86c7cbe179b]
|
|
141
|
+
- Updated dependencies [148b3c99d7e]
|
|
142
|
+
- Updated dependencies [4bc012cafa9]
|
|
143
|
+
- Updated dependencies [d4727bf4699]
|
|
144
|
+
- Updated dependencies [7d42d500aec]
|
|
145
|
+
- Updated dependencies [192409c012f]
|
|
146
|
+
- Updated dependencies [159bebb0ed4]
|
|
147
|
+
- Updated dependencies [2f3a264ac57]
|
|
148
|
+
- Updated dependencies [26e86082ad6]
|
|
149
|
+
- Updated dependencies [2d71130ad21]
|
|
150
|
+
- Updated dependencies [fcb1b9e93bb]
|
|
151
|
+
- Updated dependencies [ba418fbe7bd]
|
|
152
|
+
- Updated dependencies [0002ecc776e]
|
|
153
|
+
- Updated dependencies [215ed7fc7fa]
|
|
154
|
+
- Updated dependencies [ef493e36db0]
|
|
155
|
+
- Updated dependencies [4bc012cafa9]
|
|
156
|
+
- Updated dependencies [215ed7fc7fa]
|
|
157
|
+
- Updated dependencies [cff70028280]
|
|
158
|
+
- Updated dependencies [07fca3fc6a0]
|
|
159
|
+
- Updated dependencies [0caac36d83f]
|
|
160
|
+
- Updated dependencies [8dcd600ebe8]
|
|
161
|
+
- Updated dependencies [bb5709ab9be]
|
|
162
|
+
- Updated dependencies [bb5709ab9be]
|
|
163
|
+
- Updated dependencies [4f85f31942f]
|
|
164
|
+
- Updated dependencies [bb5bd25ddf2]
|
|
165
|
+
- Updated dependencies [bb5bd25ddf2]
|
|
166
|
+
- Updated dependencies [2fe28690761]
|
|
167
|
+
- Updated dependencies [5f0afdc4135]
|
|
168
|
+
- @redocly/theme@0.70.0
|
|
169
|
+
- @redocly/api-docs@0.3.0
|
|
170
|
+
- @redocly/realm-asyncapi-sdk@0.16.0
|
|
171
|
+
- @redocly/portal-plugin-mock-server@0.23.0
|
|
172
|
+
|
|
173
|
+
## 0.138.0-next.18
|
|
174
|
+
|
|
175
|
+
### Minor Changes
|
|
176
|
+
|
|
177
|
+
- c692c909bb4: Improved the `preview` command to use the next free port and log a warning when the requested port is already in use.
|
|
178
|
+
|
|
179
|
+
### Patch Changes
|
|
180
|
+
|
|
181
|
+
- b98352301b8: Updated `@redocly/openapi-core` to version `2.62.1`.
|
|
182
|
+
- Updated dependencies [b98352301b8]
|
|
183
|
+
- @redocly/api-docs@0.3.0-next.15
|
|
184
|
+
- @redocly/portal-plugin-mock-server@0.23.0-next.3
|
|
185
|
+
|
|
186
|
+
## 0.138.0-next.17
|
|
187
|
+
|
|
188
|
+
### Minor Changes
|
|
189
|
+
|
|
190
|
+
- 0caac36d83f: Improved Swagger 2.0 support: documents load about three times faster and with less memory, keep `$ref` descriptions and nullable references.
|
|
191
|
+
|
|
192
|
+
### Patch Changes
|
|
193
|
+
|
|
194
|
+
- 2da0856ede5: Reduced the size of API reference pages that have many headings and schema fields.
|
|
195
|
+
- 97122fa80ab: Fixed an issue in OpenAPI docs where the `openapi.events.tryItSent` callback did not run when users sent a request from the **Try it** panel.
|
|
196
|
+
The callback runs with the `Sent` action when the request receives a response.
|
|
197
|
+
- afbb609d24e: Fixed security vulnerabilities `GHSA-6688-9rhm-gjv2` and `GHSA-p98j-92pf-mc4p` by upgrading `dompurify` to version `3.4.16`.
|
|
198
|
+
- 6a53cfb6724: Updated the `simple-git` dependency to version 4.0.2 to resolve security vulnerabilities GHSA-g4wm-2vf7-vfgr, CVE-2026-102827, CVE-2026-102828, and CVE-2026-102829.
|
|
199
|
+
- Updated dependencies [2da0856ede5]
|
|
200
|
+
- Updated dependencies [97122fa80ab]
|
|
201
|
+
- Updated dependencies [0caac36d83f]
|
|
202
|
+
- @redocly/api-docs@0.3.0-next.14
|
|
203
|
+
- @redocly/portal-plugin-mock-server@0.23.0-next.2
|
|
204
|
+
|
|
205
|
+
## 0.138.0-next.16
|
|
206
|
+
|
|
207
|
+
### Patch Changes
|
|
208
|
+
|
|
209
|
+
- Updated dependencies [75679945506]
|
|
210
|
+
- @redocly/theme@0.70.0-next.11
|
|
211
|
+
- @redocly/api-docs@0.3.0-next.13
|
|
212
|
+
|
|
213
|
+
## 0.138.0-next.15
|
|
214
|
+
|
|
215
|
+
### Patch Changes
|
|
216
|
+
|
|
217
|
+
- Updated dependencies [ca56f3058f0]
|
|
218
|
+
- @redocly/theme@0.70.0-next.10
|
|
219
|
+
- @redocly/api-docs@0.3.0-next.12
|
|
220
|
+
|
|
221
|
+
## 0.138.0-next.14
|
|
222
|
+
|
|
223
|
+
### Minor Changes
|
|
224
|
+
|
|
225
|
+
- 86c7cbe179b: Added the `prompt` Markdoc tag that displays an AI prompt on a page.
|
|
226
|
+
Readers can copy the prompt with one click or open in Cursor, Claude, or ChatGPT.
|
|
227
|
+
|
|
228
|
+
### Patch Changes
|
|
229
|
+
|
|
230
|
+
- 745c39d6de6: Fixed an issue where Go, Java, C#, PHP and R code samples in API docs failed to compile when a form field value contained quotes.
|
|
231
|
+
- 745c39d6de6: Fixed an issue where API docs request samples for `application/x-www-form-urlencoded` bodies ignored the `encoding` object and didn't repeat array field names, such as `tags=red&tags=green`.
|
|
232
|
+
- 745c39d6de6: Fixed an issue where the API docs search results displayed the source code of `<script>` and `<style>` tags from descriptions.
|
|
233
|
+
- 745c39d6de6: Fixed API docs deep links that opened the wrong `oneOf` or discriminator variant when the target was the 11th option or later.
|
|
234
|
+
- 745c39d6de6: Fixed an issue where API docs deep links to a `oneOf` or discriminator variant also selected variants of other properties.
|
|
235
|
+
- 745c39d6de6: Fixed an issue where a `oneOf` or discriminator variant selected in an API docs request body, response or callback also changed the same field in sections that used a different schema.
|
|
236
|
+
- 03c6816b61f: Fixed GraphQL schema downloads to follow the `access.rbac.content` rules of their docs pages.
|
|
237
|
+
- 2928bcefe53: Improved the page load progress bar: it fills and fades out when a page finishes loading instead of disappearing at once.
|
|
238
|
+
- 1765f4025b2: Fixed an issue where embedded Replay lost the entered request when the page URL changed.
|
|
239
|
+
- 34d61cdf9c1: Fixed an issue where a file directly in the `@l10n` folder duplicated every page of the project under a path named after that file.
|
|
240
|
+
The build ignores these files and returns a warning.
|
|
241
|
+
- db912be7b81: Fixed an issue where search returned results titled with raw HTML element names such as `table`, `th` or `div`.
|
|
242
|
+
The issue occurred on Markdown pages that contained raw HTML.
|
|
243
|
+
- Updated dependencies [745c39d6de6]
|
|
244
|
+
- Updated dependencies [745c39d6de6]
|
|
245
|
+
- Updated dependencies [745c39d6de6]
|
|
246
|
+
- Updated dependencies [745c39d6de6]
|
|
247
|
+
- Updated dependencies [745c39d6de6]
|
|
248
|
+
- Updated dependencies [745c39d6de6]
|
|
249
|
+
- Updated dependencies [2928bcefe53]
|
|
250
|
+
- Updated dependencies [86c7cbe179b]
|
|
251
|
+
- @redocly/api-docs@0.3.0-next.11
|
|
252
|
+
- @redocly/theme@0.70.0-next.9
|
|
253
|
+
- @redocly/realm-asyncapi-sdk@0.16.0-next.5
|
|
254
|
+
|
|
255
|
+
## 0.138.0-next.13
|
|
256
|
+
|
|
257
|
+
### Minor Changes
|
|
258
|
+
|
|
259
|
+
- f29ae93728e: Added a **Connect to Claude** option to page actions and the MCP server setup page.
|
|
260
|
+
|
|
261
|
+
### Patch Changes
|
|
262
|
+
|
|
263
|
+
- 6f47037fb79: Fixed API reference pages that failed to render when descriptions contained HTML blocks with escaped generic types, such as `GridItem\<T\>`.
|
|
264
|
+
- fd2ac753cec: Fixed an issue where the link checker reported links to API reference pages as broken when the link used the original letter case of a name.
|
|
265
|
+
- 0e355a7cd06: Improved API reference page load performance.
|
|
266
|
+
- daa4750bb7a: Fixed portal server crashes under MCP traffic on Redoc and Revel projects.
|
|
267
|
+
- 148b3c99d7e: Fixed an issue where portal pages, such as API reference pages, stopped working after browser translation or a browser extension changed the page.
|
|
268
|
+
- 159bebb0ed4: Fixed an issue in Replay where usage data from the **Try it** console and the `replay-openapi` tag was attributed to whichever of them was opened first after the page loaded.
|
|
269
|
+
- 2d71130ad21: Fixed an issue where the search box in the navbar shifted on page load when the keyboard shortcut hint appeared.
|
|
270
|
+
- ef493e36db0: Fixed an issue with the `tabs` Markdoc tag that caused nested tabs to cover the **More** dropdown on narrow screens.
|
|
271
|
+
- Updated dependencies [6f47037fb79]
|
|
272
|
+
- Updated dependencies [0e355a7cd06]
|
|
273
|
+
- Updated dependencies [f29ae93728e]
|
|
274
|
+
- Updated dependencies [148b3c99d7e]
|
|
275
|
+
- Updated dependencies [7d42d500aec]
|
|
276
|
+
- Updated dependencies [159bebb0ed4]
|
|
277
|
+
- Updated dependencies [159bebb0ed4]
|
|
278
|
+
- Updated dependencies [2d71130ad21]
|
|
279
|
+
- Updated dependencies [ef493e36db0]
|
|
280
|
+
- @redocly/api-docs@0.3.0-next.10
|
|
281
|
+
- @redocly/theme@0.70.0-next.8
|
|
282
|
+
- @redocly/realm-asyncapi-sdk@0.16.0-next.4
|
|
283
|
+
|
|
284
|
+
## 0.138.0-next.12
|
|
285
|
+
|
|
286
|
+
### Patch Changes
|
|
287
|
+
|
|
288
|
+
- 09404c61096: Fixed SSO login for branch previews of projects configured to use path prefixes.
|
|
289
|
+
- 07fca3fc6a0: Improved rendering of AsyncAPI 2.0–2.6 channels, operations, messages, servers, and traits to match AsyncAPI 3.0.
|
|
290
|
+
- Updated dependencies [192409c012f]
|
|
291
|
+
- Updated dependencies [07fca3fc6a0]
|
|
292
|
+
- @redocly/realm-asyncapi-sdk@0.16.0-next.3
|
|
293
|
+
- @redocly/api-docs@0.3.0-next.9
|
|
294
|
+
- @redocly/theme@0.70.0-next.7
|
|
295
|
+
|
|
296
|
+
## 0.138.0-next.11
|
|
297
|
+
|
|
298
|
+
### Patch Changes
|
|
299
|
+
|
|
300
|
+
- 2cd84f3f268: Updated `@redocly/openapi-core` to version `2.58.1`.
|
|
301
|
+
- Updated dependencies [2cd84f3f268]
|
|
302
|
+
- @redocly/api-docs@0.3.0-next.8
|
|
303
|
+
- @redocly/portal-plugin-mock-server@0.23.0-next.1
|
|
304
|
+
|
|
305
|
+
## 0.138.0-next.10
|
|
306
|
+
|
|
307
|
+
### Patch Changes
|
|
308
|
+
|
|
309
|
+
- bc75bbe4b25: Fixed an issue where tooltips were missing for the **Copy**, **Like**, and **Dislike** buttons in AI assistant answers.
|
|
310
|
+
- 90446d7523d: Hardened authentication.
|
|
311
|
+
- 63a6ead8690: Fixed an issue where unknown key `redocly.yaml` caused its entire object to be removed.
|
|
312
|
+
- b32564280cf: Hardened the built-in CORS proxy.
|
|
313
|
+
- 675715f661e: Improved security for API functions and custom MCP tools in projects hosted in Reunite.
|
|
314
|
+
- 707b590864b: Fixed an issue where the `openapi-response-sample` tag reverted to the first response code after in-page navigation or browser Back and Forward navigation.
|
|
315
|
+
- d4727bf4699: Fixed an issue where the search dialog reset the selected category to "All" every time it was reopened.
|
|
316
|
+
The category chosen by the user is remembered for the duration of the browser tab.
|
|
317
|
+
- 4d5ed94c177: Fixed an issue in Replay where closing a tab while a request was running in another tab displayed the response in the wrong tab and left the sending tab stuck on `Sending request ...`.
|
|
318
|
+
- Updated dependencies [bc75bbe4b25]
|
|
319
|
+
- Updated dependencies [d4727bf4699]
|
|
320
|
+
- @redocly/theme@0.70.0-next.7
|
|
321
|
+
- @redocly/api-docs@0.3.0-next.7
|
|
322
|
+
|
|
323
|
+
## 0.138.0-next.9
|
|
324
|
+
|
|
325
|
+
### Minor Changes
|
|
326
|
+
|
|
327
|
+
- 3faa7cbcf5a: Improved the AI assistant's progress display to keep generated answers stable.
|
|
328
|
+
- 4ee9ba49be2: Added support for option order in the Markdoc `connect-mcp` tag.
|
|
329
|
+
|
|
330
|
+
### Patch Changes
|
|
331
|
+
|
|
332
|
+
- 27d20c5f50c: Hardened CORS proxy handling of direct browser navigation to proxied responses.
|
|
333
|
+
- 61649bb626f: Fixed an issue where dropdown menus were cut off at the left or right edge of the viewport.
|
|
334
|
+
- 05026102888: Improved response validation in the **Try it** console: the response body is checked against the schema for its status code, status code range or `default`, and for its media type.
|
|
335
|
+
Responses don't have to include `writeOnly` properties.
|
|
336
|
+
- 05026102888: Fixed an issue where the **Try it** console froze on request and response schemas that expand to a very large number of nodes.
|
|
337
|
+
- Updated dependencies [3faa7cbcf5a]
|
|
338
|
+
- Updated dependencies [4ee9ba49be2]
|
|
339
|
+
- Updated dependencies [61649bb626f]
|
|
340
|
+
- @redocly/theme@0.70.0-next.6
|
|
341
|
+
- @redocly/api-docs@0.3.0-next.6
|
|
342
|
+
|
|
343
|
+
## 0.138.0-next.8
|
|
344
|
+
|
|
345
|
+
### Minor Changes
|
|
346
|
+
|
|
347
|
+
- 36ac86bb3b8: Added support for project-specific MCP tools defined in an `@mcp` folder. Available on plans that include the MCP server.
|
|
348
|
+
|
|
3
349
|
## 0.138.0-next.7
|
|
4
350
|
|
|
5
351
|
### Patch Changes
|
|
@@ -180,6 +526,15 @@
|
|
|
180
526
|
- @redocly/api-docs@0.3.0-next.0
|
|
181
527
|
- @redocly/realm-asyncapi-sdk@0.16.0-next.0
|
|
182
528
|
|
|
529
|
+
## 0.137.2
|
|
530
|
+
|
|
531
|
+
### Patch Changes
|
|
532
|
+
|
|
533
|
+
- 00d766157ab: Hardened the built-in CORS proxy.
|
|
534
|
+
- ab31ba75844: Fixed an issue that could cause the project to crash when rendering API docs with cyclic OpenAPI schemas.
|
|
535
|
+
- Updated dependencies [ab31ba75844]
|
|
536
|
+
- @redocly/api-docs@0.2.1
|
|
537
|
+
|
|
183
538
|
## 0.137.1
|
|
184
539
|
|
|
185
540
|
### Patch Changes
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
import { z } from 'zod';
|
|
2
|
+
export declare const mcpFetchCountRequestSchema: z.ZodObject<{
|
|
3
|
+
caller: z.ZodObject<{
|
|
4
|
+
subject: z.ZodOptional<z.ZodString>;
|
|
5
|
+
ip: z.ZodOptional<z.ZodString>;
|
|
6
|
+
}, "strip", z.ZodTypeAny, {
|
|
7
|
+
subject?: string | undefined;
|
|
8
|
+
ip?: string | undefined;
|
|
9
|
+
}, {
|
|
10
|
+
subject?: string | undefined;
|
|
11
|
+
ip?: string | undefined;
|
|
12
|
+
}>;
|
|
13
|
+
}, "strip", z.ZodTypeAny, {
|
|
14
|
+
caller: {
|
|
15
|
+
subject?: string | undefined;
|
|
16
|
+
ip?: string | undefined;
|
|
17
|
+
};
|
|
18
|
+
}, {
|
|
19
|
+
caller: {
|
|
20
|
+
subject?: string | undefined;
|
|
21
|
+
ip?: string | undefined;
|
|
22
|
+
};
|
|
23
|
+
}>;
|
|
24
|
+
//# sourceMappingURL=mcp-fetch-count.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{z as t}from"zod";const e=t.object({caller:t.object({subject:t.string().max(500).optional(),ip:t.string().max(100).optional()})});export{e as mcpFetchCountRequestSchema};
|
package/dist/bin.js
CHANGED
|
File without changes
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{getApiFunctionsUsage as c}from"./collectors/get-api-functions-usage.js";import{getAsyncApiUsage as d}from"./collectors/get-async-api-usage.js";import{getConfigStatsUsage as U}from"./collectors/get-config-stats-usage.js";import{getFileExtensionsUsage as p}from"./collectors/get-file-extensions-usage.js";import{getFrontmatterUsage as u}from"./collectors/get-frontmatter-usage.js";import{getMarkdocUsage as S}from"./collectors/get-markdoc-usage.js";import{getNestedConfigsUsage as C}from"./collectors/get-nested-configs-usage.js";import{getProcessedConfigStatsUsage as
|
|
1
|
+
import{getApiFunctionsUsage as c}from"./collectors/get-api-functions-usage.js";import{getAsyncApiUsage as d}from"./collectors/get-async-api-usage.js";import{getConfigStatsUsage as U}from"./collectors/get-config-stats-usage.js";import{getFileExtensionsUsage as p}from"./collectors/get-file-extensions-usage.js";import{getFrontmatterUsage as u}from"./collectors/get-frontmatter-usage.js";import{getMarkdocUsage as S}from"./collectors/get-markdoc-usage.js";import{getNestedConfigsUsage as C}from"./collectors/get-nested-configs-usage.js";import{getProcessedConfigStatsUsage as y}from"./collectors/get-processed-config-stats-usage.js";import{getRefsUsage as b}from"./collectors/get-refs-usage.js";import{getSidebarsUsage as x}from"./collectors/get-sidebars-usage.js";import{getSkillsUsage as k}from"./collectors/get-skills-usage.js";import{getThemeFolderUsage as v}from"./collectors/get-theme-folder-usage.js";import{telemetry as B}from"../../telemetry/index.js";import{envConfig as A}from"../../../server/config/env-config.js";async function _(i,n){const g=[c,d,U,p,u,S,C,y,b,x,k,v],m=await Promise.allSettled(g.map(async t=>t({store:i,context:n}))),e={},s={};for(const t of m)if(t.status==="fulfilled"){const{name:a,value:r,version:f}=t.value;r&&(e[a]=r,s[a]=f)}const l={usageStats:e.usageStats,asyncApiUsage:e.asyncApiUsage,buildContext:e.buildContext,fileExtensions:e.fileExtensions,frontmatterUsage:e.frontmatterUsage,markdocUsage:e.markdocUsage,processedBuildContext:e.processedBuildContext,nestedConfigStats:e.nestedConfigStats,refsUsageStats:e.refsUsageStats,sidebarsUsage:e.sidebarsUsage,skillsUsage:e.skillsUsage,themeFolderUsage:e.themeFolderUsage,versions:JSON.stringify(s)},o=A.PROJECT_BUILD_ID||"unknown";B.sendBuildMessage([{id:o,object:"projectBuild",uri:`urn:redocly:realm:cli:projectBuild:${o}`,...l}])}export{_ as collectAnalytics};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{getPortalConfigStats as o}from"../../../telemetry/get-portal-config-stats.js";const s=async({store:t})=>{const e=
|
|
1
|
+
import{getPortalConfigStats as o}from"../../../telemetry/get-portal-config-stats.js";const s=async({store:t})=>{const e=t.getConfig();return{version:"1",name:"processedBuildContext",value:o(e)}};export{s as getProcessedConfigStatsUsage};
|
package/dist/cli/build/index.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
import w from"node:path";import{unlink as C}from"node:fs/promises";import{writeFileSync as P}from"node:fs";import{PORTAL_VERSION as R}from"../../server/version.js";import{logger as e}from"../../server/tools/notifiers/logger.js";import{reporter as b}from"../../server/tools/notifiers/reporter.js";import{shutdowner as h}from"../../server/tools/shutdowner.js";import{promiseMapLimit as A}from"../../server/utils/async/promise-map-limit.js";import{validateReactPages as D}from"../../server/plugins/pages/validators/validate-react-pages.js";import{ensureDir as j}from"../../server/utils/index.js";import{initPlugins as E,runPlugins as M,writeClientEntries as O}from"../../server/plugins/lifecycle.js";import{createClientCompiler as x,createNodeBundleCompiler as
|
|
1
|
+
import w from"node:path";import{unlink as C}from"node:fs/promises";import{writeFileSync as P}from"node:fs";import{PORTAL_VERSION as R}from"../../server/version.js";import{logger as e}from"../../server/tools/notifiers/logger.js";import{reporter as b}from"../../server/tools/notifiers/reporter.js";import{shutdowner as h}from"../../server/tools/shutdowner.js";import{promiseMapLimit as A}from"../../server/utils/async/promise-map-limit.js";import{validateReactPages as D}from"../../server/plugins/pages/validators/validate-react-pages.js";import{ensureDir as j}from"../../server/utils/index.js";import{initPlugins as E,runPlugins as M,writeClientEntries as O}from"../../server/plugins/lifecycle.js";import{createClientCompiler as x,createNodeBundleCompiler as L}from"../../server/esbuild/esbuild.js";import{validateAllMarkdowns as k}from"../../server/plugins/markdown/compiler.js";import{copyEnvFiles as J}from"./copy-env-files.js";import{EsbuildError as m,esbuildLogger as d}from"../../server/esbuild/esbuild-logger.js";import{reportAllErrors as z}from"../../server/utils/report-all-errors.js";import{writeProblemsReport as F}from"../../server/utils/write-problems-report.js";import{collectAnalytics as N}from"./analytics/collect-analytics.js";import{copyMigrationsFolder as U}from"../../server/providers/database/copy-migrations.js";import{telemetry as c}from"../telemetry/index.js";import{telemetryTraceStep as s}from"../telemetry/helpers/trace-step.js";async function li(y,i){c.initialize(R),e.info("Starting project build."),i.devLogin=y.devLogin===!0;const T=e.startTiming();await s("com.redocly.build.start",async S=>{O(i);const p=await x(i,i.outdir,"production"),u=await L(i,i.serverOutDir,"production");let o,g;try{await s("com.redocly.build.clientCompilation",async()=>{const l=e.startTiming(),n=await p.rebuild().catch(a=>{throw new m(a)});Array.isArray(n.warnings)&&d(new m({warnings:n.warnings}));const r=e.infoTime(l,"Client JavaScript compiled");r&&c.sendTimingPerformedMessage([{id:"buildStep",object:"timing",uri:"urn:redocly:realm:cli:timing:buildStep",...r}])}),await s("com.redocly.build.serverCompilation",async()=>{const l=e.startTiming(),n=await u.rebuild().catch(a=>{throw new m(a)});Array.isArray(n.warnings)&&d(new m({warnings:n.warnings}));const r=e.infoTime(l,"Server JavaScript compiled");r&&c.sendTimingPerformedMessage([{id:"buildStep",object:"timing",uri:"urn:redocly:realm:cli:timing:buildStep",message:r.message,timeMs:r.timeMs}])}),await i.reloadMarkdocOptions();let t;({pluginInstances:t,lifecycleContext:o}=await E({outdir:i.outdir,serverOutDir:i.serverOutDir,contentDir:i.contentDir,devLogin:i.devLogin,setGlobalConfig:i.setGlobalConfig})),o.fs.dispose(),i.lifecycleContext=o,U(i),await M(t,i,o),g=N(i,o),await s("com.redocly.build.clientServerRecompile",async()=>{const l=e.startTiming();e.info("Re-compiling JavaScript with user code"),(await Promise.all([p.rebuild(),u.rebuild()]).catch(a=>{throw new m(a)})).forEach(({warnings:a})=>{Array.isArray(a)&&d(new m({warnings:a}))});const r=e.infoTime(l,"JavaScript re-compiled");r&&c.sendTimingPerformedMessage([{id:"buildStep",object:"timing",uri:"urn:redocly:realm:cli:timing:buildStep",...r}])}),await s("com.redocly.build.pagesValidation",async()=>{await D(i,o),await k(i,o)}),await z(o),i.markUserCodeReady()}catch(t){S?.error(t),t instanceof m&&await d(t),await b.panic(t instanceof Error?t:String(t))}finally{g&&await g.catch(()=>{}),await p.dispose(),await u.dispose()}b.printErrors(),e.info("Rendering pages..."),await s("com.redocly.build.prepareStaticData",async t=>{const l=e.startTiming(),n=[...i.getAllRoutes(),...i.getAllApiRoutes()];t?.setAttribute("totalRoutes",n.length.toString()),await A(n,15,a=>i.writeRouteStaticData(a,o));const r=e.successTime(l,"Page static data prepared.");r&&c.sendTimingPerformedMessage([{id:"buildStep",object:"timing",uri:"urn:redocly:realm:cli:timing:buildStep",...r}])}),await s("com.redocly.build.storeSerialization",async()=>{const t=e.startTiming();j(i.serverOutDir),P(w.join(i.serverOutDir,"store.json"),JSON.stringify(await i.toJson())),e.successTime(t,"Store serialized and written."),J(i)});const v=e.startTiming();F()&&e.successTime(v,"Broken links written."),await C(w.join(i.serverOutDir,"index.css"));const f=e.successTime(T,"All done");f&&c.sendTimingPerformedMessage([{id:"buildStep",object:"timing",uri:"urn:redocly:realm:cli:timing:buildStep",...f}])}),await h.exitWithCode(0)}export{li as build};
|
package/dist/cli/develop.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
import{logger as t}from"../server/tools/notifiers/logger.js";import{reporter as c}from"../server/tools/notifiers/reporter.js";import{green as v}from"../server/tools/notifiers/helpers/colors.js";import{envConfig as m}from"../server/config/env-config.js";import{resolveCache as w}from"../server/esbuild/plugins/themes-resolver.js";import{getBilledPagesCount as p}from"../server/utils/index.js";import{createClientCompiler as
|
|
1
|
+
import{logger as t}from"../server/tools/notifiers/logger.js";import{reporter as c}from"../server/tools/notifiers/reporter.js";import{green as v}from"../server/tools/notifiers/helpers/colors.js";import{envConfig as m}from"../server/config/env-config.js";import{resolveCache as w}from"../server/esbuild/plugins/themes-resolver.js";import{getBilledPagesCount as p}from"../server/utils/index.js";import{createClientCompiler as R,createServerCompiler as S}from"../server/esbuild/esbuild.js";import{initPlugins as C,runPlugins as f,writeClientEntries as E}from"../server/plugins/lifecycle.js";import{startDevServer as h}from"../server/web-server/dev-server.js";import{validateAllMarkdowns as g}from"../server/plugins/markdown/compiler.js";import{reportAllErrors as b}from"../server/utils/report-all-errors.js";import{copyMigrationsFolder as y}from"../server/providers/database/copy-migrations.js";import{listenStdin as L}from"./utils/listen-stdin.js";const P=20;async function q(i,e){t.info("Starting project preview mode."),e.devLogin=i["dev-login"]!==!1,E(e),t.startTiming("initial-js"),await T(e),t.infoTime("initial-js","JavaScript compiled");const{pluginInstances:l,lifecycleContext:n}=await C({contentDir:e.contentDir,outdir:e.outdir,serverOutDir:void 0,devLogin:e.devLogin,setGlobalConfig:e.setGlobalConfig});e.lifecycleContext=n,y(e),await f(l,e,n,{failFast:!0});const d=async()=>{const r=performance.now();c.clearErrors(),await f(l,e,n),m.REDOCLY_EXP_DISABLE_MD_VALIDATION?t.info("Skipping markdown validation step"):await g(e,n),D().then(async()=>{await b(n);const a=p(e.getAllRoutes()),o=c.summary(` \u{1F440} Last change processed in ${v(Math.round(performance.now()-r)+"ms")}`,a);e.runListeners("errors-updated",void 0,o),e.runListeners("pages-updated",void 0,a),e.runListeners("routes-updated")})};m.REDOCLY_EXP_DISABLE_MD_VALIDATION?t.info("Skipping markdown validation step"):await g(e,n),await b(n);const s=p(e.getAllRoutes());c.summary(" \u{1F440} Watching for changes...",s),e.runListeners("pages-updated",void 0,s),n.fs.watch(async()=>{w.clear(),await d()}),t.verbose("Starting development server."),await h(e,n,{port:Number(i.port||4e3),maxPortRetries:m.isReunite?0:P}),L()}async function T(i){let e=!0,l=!0;const n=async r=>{r==="client"?e=!0:l=!0,i.runListeners("build-started");const a=e!=l;a&&i.startEsbuildRun(),i.buildRevision>0&&await i.waitForPluginsRun(),r!=="client"&&i.noteRequestHandlersEntryBuildStart(),a&&t.startTiming("rebuild")},d=async r=>{r==="client"?e=!1:(l=!1,i.markRequestHandlersEntryUpdated()),!(e||l)&&(i.finishEsbuildRun(),i.buildRevision++,t.infoTime("rebuild","JavaScript re-compiled"),await i.reloadMarkdocOptions(),i.markUserCodeReady(),i.runListeners("build-updated"),i.lifecycleContext&&i.buildRevision>1&&i.lifecycleContext.fs.emitCodeUpdated())},s=[new Promise((r,a)=>{const o={label:"client",buildStart(){t.verbose("Start compiling client code."),t.startTiming(this.label)},buildEnd(){t.verboseTime(this.label,"Client compiled"),r(!0)},rebuildStart:()=>n("client"),rebuildEnd:()=>d("client")};R(i,i.outdir,"development",o).then(u=>u.watch()).catch(a)}),new Promise((r,a)=>{const o={label:"server",buildStart(){t.verbose("Start compiling server code."),t.startTiming(this.label)},buildEnd(){t.verboseTime(this.label,"Server compiled"),r(!0)},rebuildStart:()=>n("server"),rebuildEnd:()=>d("server")};S(i,i.serverOutDir,"development",o).then(u=>u.watch()).catch(a)})];await Promise.all(s),await i.reloadMarkdocOptions()}function D(){return new Promise(i=>{setTimeout(i,0)})}export{q as develop};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{bold as n}from"colorette";import{DEFAULT_THEME_NAME as g}from"../../constants/common.js";import{logger as
|
|
1
|
+
import{bold as n}from"colorette";import{DEFAULT_THEME_NAME as g}from"../../constants/common.js";import{logger as c}from"../../server/tools/notifiers/logger.js";import{getThemeFiles as m,getEjectedFiles as y,copyComponent as p}from"./themeOperations.js";async function T({pathToThemeFolder:t,pathToPortalCustomThemeFolder:e,theme:s=g},o){const r=c.startTiming(),i=m(t,{onlyFilePatterns:o.onlyFiles,ignoreFilePatterns:o.ignoreFiles}),l=m(e),f=y(l,i);for(const F of i)await p({componentToCopy:F,copyFrom:t,copyTo:e,ejectedFiles:f,options:o});c.infoTime(r,`Theme ${n(s)} has been ejected into ${n(e)}`)}export{T as default};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const i="TranslationKey",
|
|
1
|
+
const i="TranslationKey",g=async({getConfig:e,cache:t,fs:s})=>{const a=await e(),n=r(a),o=s.scan(/sidebars.yaml$/),l=await Promise.all(o.map(f=>t.load(f.relativePath,"yaml").then(d=>d.data)));return{...r(l),...n}},r=e=>{const t={};if(!e)return{};if(Array.isArray(e))for(const s of e)Object.assign(t,r(s));if(typeof e=="object")for(const[s,a]of Object.entries(e))if(s.endsWith(i)&&typeof a=="string"){const n=s.slice(0,i.length*-1),o=e[n];if(!c(n)||!c(a)||!y(o))continue;t[a]=o||""}else Object.assign(t,r(a));return t},c=e=>e.trim().length>0,y=e=>e==null||typeof e=="string";export{g as collectConfigTranslations};
|
package/dist/client/App.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
import*as o from"react";import{Outlet as g,useLocation as h,useNavigate as P}from"react-router";import{useEffect as
|
|
1
|
+
import*as o from"react";import{Outlet as g,useLocation as h,useNavigate as P}from"react-router";import{useEffect as i,useMemo as c,useState as S,Suspense as D}from"react";import{withoutPathPrefix as T}from"@redocly/theme/core/utils";import{useThemeConfig as v}from"@redocly/theme/core/hooks";import{InternalServerErrorLayout as L}from"@redocly/theme/layouts/InternalServerErrorLayout";import{RootLayout as C}from"@redocly/theme/layouts/RootLayout";import{Consent as y}from"@redocly/theme/components/Consent/Consent";import{LoadProgressBar as R}from"@redocly/theme/components/LoadProgressBar/LoadProgressBar";import{PageLayout as _}from"@redocly/theme/layouts/PageLayout";import{components as I}from"@redocly/theme/markdoc/default";import{Sidebar as N}from"./app/Sidebar/Sidebar";import{loadAndNavigate as O}from"./app/utils/loadAndNavigate";import{useActions as A}from"./app/Sidebar/useActions";import{useScrollTracker as b}from"./app/hooks/useScrollTracker";import{useAutoScroll as k}from"./app/hooks/useAutoScroll";import{API_DOCS_TEMPLATE_ID as u}from"../constants/common";import{removeTrailingSlash as M}from"../utils/url/remove-trailing-slash";import{removeLeadingSlash as x}from"../utils/url/remove-leading-slash";import*as B from"./app/markdoc/custom-components/index";import{DefaultStyles as G}from"./styling/default-styles";import{ThemeDataProvider as V}from"./providers/theme/ThemeDataProvider";import{PageDataContext as F}from"./providers/page-data/PageDataContext";import{SeoTags as w}from"./app/seo/SeoTags";import{useRouterForLocalLinks as U,useRunningEnvironmentCheck as W}from"./providers/hooks";import{usePageData as j,usePageDataLoader as q}from"./providers/page-data/hooks";import{ErrorBoundary as z}from"./ErrorBoundary";import{ErrorDetails as f,Loader as H}from"./server-entry";import"@styles";import{useRouteChangeTracker as J}from"./app/hooks/useRouteChangeTracker";import{useWebMcpTools as K}from"./app/webmcp";import{isInIframe as Q}from"./utils";import{useL10n as X}from"./app/l10n";import{PostMessageProvider as Y}from"./providers/post-message/PostMessageProvider";import{ScriptLoader as Z}from"./ScriptLoader";import{clientRoutes as $}from"./runtime/generated/routes.js";import{DevModeFloatingBar as ee}from"./app/DevModeFloatingBar";import{usePageTimeTracker as oe}from"./app/hooks/usePageTimeTracker";import{useMarkdocRenderer as re}from"./app/hooks/markdown/useMarkdocRenderer";globalThis.__LOADER.markdocComponents={...B,...I};function te(){const{palette:e}=v();return o.createElement(G,{palette:e})}function je(){const e=q(),[t,n]=S(e),r=h(),m=P();X(),i(()=>{e?n(e):O({navigate:m,to:r.pathname+r.search+r.hash}).then(()=>n(H.loadSync(r.pathname)))},[r,m]),U();const a=W();return a?(console.log(a),o.createElement(f,{error:{message:a,name:""}})):t?o.createElement(z,null,o.createElement(F.Provider,{value:e||t},o.createElement(V,null,o.createElement(te,null),o.createElement(R,null),o.createElement(Y,{enabled:process.env.NODE_ENV==="development"||Q()},o.createElement(g,null))))):null}function ne(){return k(),null}function E(){J(),oe(),b(),K();const e=j(),t=A(),{layout:n}=t,r=c(()=>({layout:n}),[n]),m=process.env.NODE_ENV!=="production",a=globalThis.SSR_OMIT_SUSPENSE,s=re(e?.props?.ast),d=M(e?.slug||"");i(()=>{document.documentElement.classList.add("ready")},[]);const l=c(()=>[u].includes(e?.templateId??"")?{...e?.props,apiOptions:r}:e?.props,[e?.props,e?.templateId,r]);if(e?.props.pagePropGetterError?.message)return m?o.createElement(f,{error:{...e?.props?.pagePropGetterError}}):o.createElement(L,null);if(!!e?.props?.compilationErrors?.length)return e?.Template?o.createElement(e.Template,{pageProps:e?.props,children:s}):null;const p=()=>o.createElement(C,null,e?.templateId!==u&&o.createElement(ne,null),o.createElement(_,{sidebar:o.createElement(N,{layoutControls:t})},o.createElement(w,{seo:e?.props.seo,slug:d}),e?.Template&&l?o.createElement(e.Template,{pageProps:l,children:s}):null),process.env.NODE_ENV!=="production"&&o.createElement(ee,null),o.createElement(Z,null),o.createElement(y,null));return a?p():o.createElement(D,null,p())}const qe=[...$.map(e=>({Component:E,path:x(T(e).substring(1)+"/*")})),{Component:E,path:"*"}];export{je as App,E as Page,qe as routes};
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import
|
|
2
|
-
`){r++,e=1,a===
|
|
1
|
+
import v,{useCallback as m,useEffect as b,useMemo as E,useRef as y}from"react";import{safeLoad as w,Kind as p}from"yaml-ast-parser";import{Helmet as N}from"@dr.pogodin/react-helmet";import{Source as P}from"@redocly/openapi-core";import{isBrowser as h}from"../../../utils/env/is-browser";import{usePageSharedData as k}from"../../providers/page-data/hooks";import{usePostMessage as S}from"../../providers/post-message/use-post-message";const f="___selected",A=10,C=h()&&window.location.search.includes("review-comments=true");function g(t){const[o="",i=""]=t.split("#"),[r,e]=i.split("-").map(n=>n.slice(1));return{fileName:o,fromLine:Number(r),toLine:Number(e)||Number(r)}}function O(t,o){Array.from(document.getElementsByClassName(f)).forEach(r=>{r.classList.remove(f)});let i;if(o)i=document.querySelectorAll(`[data-pointer="${o}"]`);else if(t){const{fileName:r,fromLine:e,toLine:n}=g(t);i=Array.from(document.querySelectorAll("[data-source]")).find(a=>{const d=a.attributes.getNamedItem("data-source")?.value||"",{fileName:c,fromLine:s,toLine:u}=g(d);return c===r&&e<=u&&n>=s})}if(i){let r=i,e=r.offsetTop;if(i instanceof NodeList){r=i[0],i.forEach(a=>{a.classList.add(f)});const l=window.pageYOffset||document.documentElement.scrollTop;e=r.getBoundingClientRect().top+l}r.classList.add(f);const n=document.querySelector("nav")?.offsetHeight||0;window.scrollTo({top:e-n-A,behavior:"smooth"})}}function T(t){return decodeURIComponent(t.replace(/~1/g,"/").replace(/~0/g,"~"))}function $(t){return t.substr(2).split("/").map(T)}function M(t,o,i){const r=$(o);if(t===void 0)return;let e=t;for(const n of r)if(e.kind===p.MAP){const l=e.mappings.find(a=>a.key.value===n);if(!l||(e=l,!l?.value))break;e=l.value}else if(e.kind===p.SEQ){const l=e.items[parseInt(n,10)];if(!l)break;e=l}if(i){const n=e.parent;return!n||n.kind===p.SEQ?e:n.kind===p.MAPPING?n.key:e}else return e}function D(t,o,i){let r=1,e=1,n={line:1,col:1};for(let a=0;a<i-1;a++){if(a===o-1&&(n={line:r,col:e+1}),t[a]===`
|
|
2
|
+
`){r++,e=1,a===o-1&&(n={line:r,col:e}),t[a+1]==="\r"&&a++;continue}e++}const l=o===i?{...n}:{line:r,col:e+1};return{start:n,end:l}}function I(t){if(t.pointer===void 0)return t;const{source:o,pointer:i,reportOnKey:r}=t,e=o.getAst(w),n=M(e,i,!!r);return{...t,pointer:void 0,...D(o.body,n?.startPosition??1,n?.endPosition??1)}}function L(t){let o=t.target;for(;o&&!o.attributes["data-source"]&&!o.attributes["data-pointer"];)o=o.parentElement;return o}function Q(){const t=k("openAPIDocsStore"),o=E(()=>!t||!t.source?{file:"",source:null}:{source:new P(t.source.absolutePath,t.source.content),file:t.source.relativePath},[t]),{sendMessage:i}=S(),r=m(c=>{const s=c.attributes["data-pointer"].value;if(!o.source)return{file:""};const u=I({pointer:`#${s}`,source:o.source});return{file:`${o.file}#L${u.start.line}${u.end?`-L${u.end.line}`:""}`,pointer:s}},[o]),e=m(c=>({file:c.attributes["data-source"].value}),[]),n=m(c=>{c.preventDefault();const s=L(c);let u={file:""};s.attributes["data-source"]&&(u=e(s)),s.attributes["data-pointer"]&&(u=r(s)),i({type:"add-review-comment",...u})},[r,e,i]),l=m(c=>{c.target.classList.remove(f),i({type:"review-hover-lines",file:""}),c.target.removeEventListener("click",n)},[n,i]),a=m(c=>{const s=L(c);if(s&&s!==d.current){s.classList.add(f);let u={file:""};s.attributes["data-source"]&&(u=e(s)),s.attributes["data-pointer"]&&(u=r(s)),i({type:"review-hover-lines",...u}),s.addEventListener("mouseleave",l,{once:!0}),s.addEventListener("click",n)}d.current=s},[n,l,e,r,i]),d=y(null);return b(()=>{if(C)return document.body.addEventListener("mousemove",a),()=>{document.body.removeEventListener("mousemove",a)}},[a]),v.createElement(N,null,v.createElement("style",null,`
|
|
3
3
|
.${f} {
|
|
4
4
|
outline: 2px solid #1677ff;
|
|
5
5
|
cursor: pointer;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import a from"i18next";import{useContext as
|
|
1
|
+
import a from"i18next";import{useContext as y}from"react";import{L10nContext as g}from"../L10nContext";import{useL10n as h}from"./useL10n";let c,f=[],l=!1;function m(){if(l)return;l=!0;const t=()=>{c=void 0,f=[]};a.on("added",t),a.on("removed",t),a.on("languageChanged",t)}function p(t,e){if(!t.isInitialized)return[];const s=new Set,o=new Set,r=n=>{if(!(!n||o.has(n))){o.add(n);for(const i of u(t.getResourceBundle(n,"translation")))s.add(i)}};r(e),r(t.language);for(const n of t.languages??[])r(n);const d=t.options?.resources??{};for(const n of Object.keys(d))if(!o.has(n)){o.add(n);for(const i of u(d[n]?.translation))s.add(i)}return[...s]}const j=()=>{const t=y(g),{lang:e}=h();return t?t.getKeys():(m(),K(e))};function K(t){return c!==t&&(f=p(a,t),c=t),f}function u(t,e=""){if(!t||typeof t!="object"||Array.isArray(t))return e?[e]:[];const s=[];for(const o of Object.keys(t)){const r=e?`${e}.${o}`:o;s.push(...u(t[o],r))}return s}export{p as collectTranslationKeys,j as useTranslationKeys};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import*as e from"react";import{MarkdownAdapterProvider as s,RedocExample as c,StoreProvider as d,markdocParser as l}from"@redocly/api-docs";import{ErrorMessage as E,OpenApiComponentWrap as f}from"../styled.elements";import{useStore as u}from"../../hooks/use-store";import{usePortalMarkdownAdapter as k}from"./use-markdown-adapter";function v(o){const{descriptionFile:t,pointer:p,options:a,mimeType:n}=o,{store:r,error:i}=u(t),m=k();return r?e.createElement(f,{"data-testid":"openapi-example"},e.createElement(d,{options:{
|
|
1
|
+
import*as e from"react";import{MarkdownAdapterProvider as s,RedocExample as c,StoreProvider as d,markdocParser as l}from"@redocly/api-docs";import{ErrorMessage as E,OpenApiComponentWrap as f}from"../styled.elements";import{useStore as u}from"../../hooks/use-store";import{usePortalMarkdownAdapter as k}from"./use-markdown-adapter";function v(o){const{descriptionFile:t,pointer:p,options:a,mimeType:n}=o,{store:r,error:i}=u(t),m=k();return r?e.createElement(f,{"data-testid":"openapi-example"},e.createElement(d,{options:{...r.options,...a,markdownParser:l},apiStore:r.store},e.createElement(s,{value:m},e.createElement(c,{pointer:p,mimeType:n||"application/json"})))):e.createElement(E,null,i)}export{v as OpenApiExample};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import*as e from"react";import{MarkdownAdapterProvider as
|
|
1
|
+
import*as e from"react";import{MarkdownAdapterProvider as c,RedocResponseSamples as f,StoreProvider as u,markdocParser as E}from"@redocly/api-docs";import{ErrorMessage as t,OpenApiComponentWrap as S}from"../styled.elements";import{useStore as P}from"../../hooks/use-store";import{findResponseSamples as h}from"../../utils/find-openapi-response-samples.js";import{usePortalMarkdownAdapter as k}from"./use-markdown-adapter";function w(n){const{descriptionFile:s,operationId:p,pointer:a,exampleKey:i}=n,{store:o,error:m}=P(s),d=k(),l=e.useMemo(()=>({...o?.options,specType:"openapi",markdownParser:E}),[o?.options]);if(!o)return e.createElement(t,null,m);const r=o.items?.length?h(o.items,{pointer:a,sourceId:p}):void 0;return r?.responseCodes.length?e.createElement(S,{"data-testid":"openapi-response-sample"},e.createElement(u,{options:l,apiStore:o.store},e.createElement(c,{value:d},e.createElement(f,{responseCodes:r.responseCodes,exampleKey:i,schemaId:r.schemaId})))):e.createElement(t,null,"Cannot find response samples for the given operation")}export{w as OpenApiResponseSample};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import o from"react";import{useLocation as g}from"react-router";import{EmbeddedReplay as k,StoreProvider as I,buildReplayPredefinedEnvValues as P,mergeEnvData as b,useOpenApiDefinition as h,withReplayPrefetch as R,markdocParser as w}from"@redocly/api-docs";import{Admonition as V}from"@redocly/theme/markdoc/components/Admonition/Admonition";import{ErrorMessage as C,OpenApiComponentWrap as D}from"../styled.elements.js";import{useStore as v}from"../../hooks/use-store.js";import{getMockServerDocsConfig as
|
|
1
|
+
import o from"react";import{useLocation as g}from"react-router";import{EmbeddedReplay as k,StoreProvider as I,buildReplayPredefinedEnvValues as P,mergeEnvData as b,useOpenApiDefinition as h,withReplayPrefetch as R,markdocParser as w}from"@redocly/api-docs";import{Admonition as V}from"@redocly/theme/markdoc/components/Admonition/Admonition";import{ErrorMessage as C,OpenApiComponentWrap as D}from"../styled.elements.js";import{useStore as v}from"../../hooks/use-store.js";import{getMockServerDocsConfig as y}from"../../../../templates/api-docs/mock-server-config.js";import{buildReplayOperationSourceMap as F}from"../../utils/build-replay-operation-source-map.js";import{findApiItem as $}from"../../utils/find-api-item.js";const x=R(function({descriptionFile:p,operationId:r,pointer:n,exampleKey:s,mimeType:e,requestBody:d,parameters:a,environment:i,environments:u,hideOtherSecuritySchemes:m}){const f=g(),{store:t,baseSlug:S}=v(p),c=h(),O=o.useMemo(()=>{if(!c)return{};const M=y(t?.options?.mockServer,S??""),A=P(c,M);return b(A,u??{})},[c,t?.options?.mockServer,S,u]),E=o.useMemo(()=>t?.items?F(t.items,{pointer:n,sourceId:r},{mimeType:e,exampleKey:s},t.store?.exampleStore??{}):new Map,[t?.items,t?.store?.exampleStore,n,r,e,s]);return!c||!t?null:o.createElement(k,{key:`${f.pathname}-${p}-${r||n}`,activeOperationId:r,fullOpenApi:c,pointer:n,operationSourceMap:E,hideOtherSecuritySchemes:m,predefinedEnvValues:O,allowedEnvironments:i?[i]:void 0,requestValues:{body:d,...a},activeMimeName:e})}),J=l=>{const{descriptionFile:p,operationId:r,pointer:n,options:s}=l,{store:e,error:d,baseSlug:a}=v(p),i=o.useMemo(()=>({...e?.options,...s}),[s,e?.options]),u=o.useMemo(()=>({specType:"openapi",...i,mockServer:y(i.mockServer,a??""),basePath:a,markdownParser:w,replayFeatures:e?.options.replayFeatures}),[i,a,e?.options.replayFeatures]),m=o.useMemo(()=>e?.items?.length?$(e.items,{pointer:n,sourceId:r}):void 0,[e?.items,n,r]);if(!e)return o.createElement(C,null,d);if(!m?.content?.meta?.pointer)return o.createElement(V,{type:"danger"},"Cannot find OpenAPI operation by operationId or pointer in ",p);const f=m.content.meta.pointer,t=m.content.meta.sourceId??"";return o.createElement(D,{"data-testid":"replay-openapi"},o.createElement(I,{apiStore:e.store,options:u},o.createElement(x,{...l,pointer:f,operationId:t})))};export{J as ReplayOpenApi};
|
|
@@ -1,9 +1,8 @@
|
|
|
1
|
-
import type { ApiItem, ApiStore } from '@redocly/api-docs';
|
|
2
|
-
import type { RedocConfig } from '@redocly/config';
|
|
1
|
+
import type { ApiItem, ApiStore, RawApiDocsOptions } from '@redocly/api-docs';
|
|
3
2
|
export type ApiDefinitionEmbedSharedData = {
|
|
4
3
|
items: ApiItem[];
|
|
5
4
|
store: ApiStore;
|
|
6
|
-
options:
|
|
5
|
+
options: RawApiDocsOptions;
|
|
7
6
|
baseSlug: string;
|
|
8
7
|
};
|
|
9
8
|
export declare function useStore(sharedDataKey?: string): {
|