@redocly/reef 0.141.0-next.0 → 0.141.0-next.1

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.
@@ -1 +1 @@
1
- const e={"dev.newApp":"\u65B0\u5E94\u7528\u7A0B\u5E8F","dev.newApp.text":"\u521B\u5EFA\u60A8\u7684\u7B2C\u4E00\u4E2A\u5E94\u7528\u7A0B\u5E8F","dev.sidebar.header":"\u6211\u7684\u5E94\u7528\u7A0B\u5E8F","dev.sidebar.footer.text":"\u65B0\u5E94\u7528\u7A0B\u5E8F","dev.create.app.dialog.appName.placeholder":"\u5E94\u7528\u7A0B\u5E8F\u540D\u79F0","dev.create.app.dialog.appName.error":"\u540D\u79F0\u5FC5\u987B\u4EE5\u5B57\u6BCD\u5F00\u5934\uFF0C\u5E76\u4E14\u53EA\u80FD\u5305\u542B\uFF1A\u5B57\u6BCD\u3001\u6570\u5B57\u3001\u7A7A\u683C\u3001.\u3001_\u3001-\u3001$\u3001%\u3001#","dev.create.app.dialog.selectAPIs":"\u9009\u62E9 API","dev.create.app.dialog.description":"\u63CF\u8FF0","dev.create.app.dialog.description.placeholder":"\u7A7A","dev.create.app.dialog.create":"\u521B\u5EFA\u5E94\u7528\u7A0B\u5E8F","dev.create.app.dialog.cancel":"\u53D6\u6D88","dev.main.tab.appKeys":"API \u5BC6\u94A5","dev.main.tab.logs":"\u65E5\u5FD7","dev.app.description.title":"\u63CF\u8FF0","dev.edit.description.dialog.title":"\u66F4\u6539\u63CF\u8FF0","dev.edit.description.dialog.save":"\u4FDD\u5B58\u66F4\u6539","dev.edit.description.dialog.cancel":"\u53D6\u6D88","dev.create.app.dialog.callbackUrls":"\u56DE\u8C03 URL","dev.create.app.dialog.callbackUrls.placeholder":"https://example.com/callback","dev.create.app.dialog.callbackUrls.hint":"\u591A\u4E2A URL \u8BF7\u7528\u9017\u53F7\u5206\u9694","dev.app.callbackUrls.title":"\u56DE\u8C03 URL","dev.edit.callbackUrls.dialog.title":"\u66F4\u6539\u56DE\u8C03 URL","dev.edit.callbackUrls.dialog.placeholder":"https://example.com/callback","dev.edit.callbackUrls.dialog.hint":"\u591A\u4E2A URL \u8BF7\u7528\u9017\u53F7\u5206\u9694","dev.edit.callbackUrls.dialog.save":"\u4FDD\u5B58\u66F4\u6539","dev.edit.callbackUrls.dialog.cancel":"\u53D6\u6D88","dev.edit.apis.dialog.selectedAPIs":"\u9009\u5B9A\u7684 API","dev.app.key.create":"\u521B\u5EFA\u5BC6\u94A5","dev.create.key.dialog.title":"\u521B\u5EFA\u5BC6\u94A5","dev.create.key.dialog.create":"\u521B\u5EFA\u5BC6\u94A5","dev.create.key.dialog.cancel":"\u53D6\u6D88","dev.app.edit":"\u7F16\u8F91","dev.app.delete":"\u5220\u9664","dev.edit.app.dialog.title":"\u66F4\u6539\u663E\u793A\u540D\u79F0","dev.edit.app.dialog.save":"\u4FDD\u5B58\u66F4\u6539","dev.edit.app.dialog.cancel":"\u53D6\u6D88","dev.delete.app.dialog.title":"\u5220\u9664\u5E94\u7528\u7A0B\u5E8F","dev.delete.app.dialog.confirmation":"\u60A8\u786E\u5B9A\u8981\u5220\u9664\u6B64\u5E94\u7528\u7A0B\u5E8F\u5417\uFF1F","dev.delete.app.dialog.delete":"\u5220\u9664\u5E94\u7528\u7A0B\u5E8F","dev.delete.app.dialog.cancel":"\u53D6\u6D88","dev.app.key.roll":"\u8F6E\u6362 API \u5BC6\u94A5","dev.roll.key.dialog.title":"\u8F6E\u6362 API \u5BC6\u94A5","dev.roll.key.dialog.apiKey":"API key","dev.roll.key.dialog.expires":"\u5230\u671F","dev.roll.key.dialog.confirmation":"\u60A8\u786E\u5B9A\u8981\u8F6E\u6362\u6B64 API \u5BC6\u94A5\u5417\uFF1F","dev.roll.key.dialog.cancel":"\u53D6\u6D88","dev.roll.key.dialog.roll":"\u8F6E\u6362 API \u5BC6\u94A5","dev.update.key.dialog.title":"\u66F4\u65B0\u5BC6\u94A5","dev.update.key.dialog.update":"\u66F4\u65B0\u5BC6\u94A5","dev.update.key.dialog.cancel":"\u53D6\u6D88","dev.app.key.api.name":"API \u540D\u79F0","dev.app.key.api.status":"\u72B6\u6001","dev.app.key.api.edit":"\u7F16\u8F91 API","dev.edit.apis.dialog.title":"\u7F16\u8F91 API","dev.edit.apis.dialog.apiKey":"API key","dev.edit.apis.dialog.save":"\u4FDD\u5B58","dev.edit.apis.dialog.cancel":"\u53D6\u6D88","dev.select.placeholder":"\u7A7A","dev.app.overview.status.pending":"\u5F85\u5904\u7406","dev.app.overview.status.approved":"\u5DF2\u6279\u51C6","dev.app.overview.status.revoked":"\u5DF2\u64A4\u9500","dev.app.overview.status":"\u72B6\u6001","dev.app.overview.non-production":"\u6D4B\u8BD5","dev.app.overview.production":"\u751F\u4EA7","dev.app.overview.clientId":"\u5BC6\u94A5","dev.app.overview.apiKey":"API key","dev.app.key.revoke":"\u64A4\u9500 API \u5BC6\u94A5","dev.revoke.key.dialog.title":"\u64A4\u9500 API \u5BC6\u94A5","dev.revoke.key.dialog.apiKey":"API key","dev.revoke.key.dialog.expires":"\u5230\u671F","dev.revoke.key.dialog.confirmation":"\u60A8\u786E\u5B9A\u8981\u64A4\u9500\u6B64 API \u5BC6\u94A5\u5417\uFF1F","dev.revoke.key.dialog.revoke":"\u64A4\u9500 API \u5BC6\u94A5","dev.revoke.key.dialog.cancel":"\u53D6\u6D88","dev.app.overview.expires":"\u5230\u671F","dev.app.overview.created":"\u5DF2\u521B\u5EFA","dev.app.overview.visibilityToggle.hide":"\u9690\u85CF","dev.app.overview.visibilityToggle.show":"\u663E\u793A","search.loading":"\u52A0\u8F7D\u4E2D...","search.noResults.title":"\u65E0\u7ED3\u679C","search.keys.navigate":"\u5BFC\u822A","search.keys.select":"\u9009\u62E9","search.keys.exit":"\u9000\u51FA","search.searchItem.deprecated":"\u5DF2\u5F03\u7528","search.searchItem.enum":"\u679A\u4E3E","search.searchItem.example":"\u793A\u4F8B","search.label":"\u641C\u7D22\u6587\u6863...","search.cancel":"\u53D6\u6D88","search.recent":"\u6700\u8FD1\u641C\u7D22","search.navbar.label":"\u641C\u7D22","search.suggested":"\u5EFA\u8BAE\u9875\u9762","search.groups.all":"\u5168\u90E8","search.showMore":"\u663E\u793A\u66F4\u591A","search.filter.title":"\u9AD8\u7EA7\u7B5B\u9009","search.filter.reset":"\u91CD\u7F6E\u7B5B\u9009","search.filter.field.reset":"\u91CD\u7F6E","search.filter.field.footer":"\u641C\u7D22\u4EE5\u663E\u793A\u66F4\u591A\u9879\u76EE...","search.error.title":"\u54CE\u5440\uFF01\u51FA\u9519\u4E86\u3002","search.error.button":"\u91CD\u8BD5","search.ai.newConversation":"\u65B0\u5BF9\u8BDD","search.ai.welcomeText":"\u6B22\u8FCE\u4F7F\u7528 AI \u52A9\u624B\uFF01\u60A8\u53EF\u4EE5\u95EE\u6211\u4EFB\u4F55\u95EE\u9898\u3002\u6211\u80FD\u4E3A\u60A8\u63D0\u4F9B\u4EC0\u4E48\u5E2E\u52A9\uFF1F","search.ai.placeholder":"\u63D0\u95EE...","search.ai.back":"\u8FD4\u56DE","search.ai.generatingResponse":"\u6B63\u5728\u751F\u6210\u56DE\u590D...","search.ai.followUpQuestion":"\u63D0\u51FA\u540E\u7EED\u95EE\u9898\uFF1F","search.ai.send":"\u53D1\u9001\u95EE\u9898","search.ai.suggestionsTitle":"\u5EFA\u8BAE","search.ai.thinkingText":"\u601D\u8003\u4E2D...","search.ai.resourcesFound":"\u627E\u5230\u8D44\u6E90","search.ai.resourcesFound.basedOn":"\u57FA\u4E8E","search.ai.resourcesFound.resources":"\u8D44\u6E90","search.ai.toolCall.executed":"\u5DF2\u6267\u884C","search.ai.toolCall.executing":"\u6267\u884C\u4E2D","search.ai.toolCall.usedTools":"\u4F7F\u7528\u7684\u5DE5\u5177","search.ai.toolCall.searchDocumentation.inProgress":"\u6B63\u5728\u641C\u7D22\u6587\u6863...","search.ai.toolCall.searchDocumentation.completed":"\u5DF2\u641C\u7D22\u6587\u6863","search.ai.toolCall.listApis.inProgress":"\u6B63\u5728\u6D4F\u89C8 API...","search.ai.toolCall.listApis.completed":"\u5DF2\u6D4F\u89C8 API","search.ai.toolCall.getEndpoints.inProgress":"\u6B63\u5728\u6D4F\u89C8 API \u7684\u7AEF\u70B9...","search.ai.toolCall.getEndpoints.completed":"\u5DF2\u6D4F\u89C8 API \u7684\u7AEF\u70B9","search.ai.toolCall.getEndpointInfo.inProgress":"\u6B63\u5728\u8BFB\u53D6\u7AEF\u70B9\u8BE6\u60C5...","search.ai.toolCall.getEndpointInfo.completed":"\u5DF2\u8BFB\u53D6\u7AEF\u70B9\u8BE6\u60C5","search.ai.toolCall.getSecuritySchemes.inProgress":"\u6B63\u5728\u6D4F\u89C8 API \u7684\u5B89\u5168\u65B9\u6848...","search.ai.toolCall.getSecuritySchemes.completed":"\u5DF2\u6D4F\u89C8 API \u7684\u5B89\u5168\u65B9\u6848","search.ai.toolCall.getFullApiDescription.inProgress":"\u6B63\u5728\u8BFB\u53D6 API \u63CF\u8FF0...","search.ai.toolCall.getFullApiDescription.completed":"\u5DF2\u8BFB\u53D6 API \u63CF\u8FF0","search.ai.toolCall.execute.inProgress":"\u6B63\u5728\u8FD0\u884C\u4EE3\u7801...","search.ai.toolCall.execute.completed":"\u5DF2\u8FD0\u884C\u4EE3\u7801","search.ai.toolCall.discoverTools.inProgress":"\u6B63\u5728\u53D1\u73B0\u53EF\u7528\u5DE5\u5177...","search.ai.toolCall.discoverTools.completed":"\u5DF2\u53D1\u73B0\u53EF\u7528\u5DE5\u5177","search.ai.toolCall.contactSupport.inProgress":"\u6B63\u5728\u6253\u5F00\u8054\u7CFB\u652F\u6301\u9009\u9879...","search.ai.toolCall.contactSupport.completed":"\u5DF2\u63D0\u4F9B\u8054\u7CFB\u652F\u6301\u7684\u9009\u9879","search.ai.feedback.title":"\u60A8\u4E0D\u559C\u6B22\u6B64\u56DE\u590D\u7684\u54EA\u4E9B\u65B9\u9762\uFF1F","search.ai.feedback.detailsPlaceholder":"\u6DFB\u52A0\u5177\u4F53\u7EC6\u8282","search.ai.feedback.thanks":"\u611F\u8C22\u60A8\u7684\u53CD\u9988\uFF01","search.ai.feedback.more":"\u66F4\u591A...","search.ai.actions.copy":"\u590D\u5236\u56DE\u7B54","search.ai.actions.like":"\u8D5E\u8FD9\u4E2A\u56DE\u7B54","search.ai.actions.dislike":"\u8E29\u8FD9\u4E2A\u56DE\u7B54","search.ai.label":"\u8BE2\u95EE AI \u52A9\u624B","search.ai.button":"\u4F7F\u7528 AI \u641C\u7D22","search.ai.backToSearch":"\u8FD4\u56DE\u641C\u7D22","search.ai.assistant":"\u52A9\u624B","search.ai.disclaimer":"AI \u52A9\u624B\u53EF\u80FD\u63D0\u4F9B\u4E0D\u5B8C\u6574\u6216\u4E0D\u6B63\u786E\u7684\u7ED3\u679C\u3002\u8BF7\u6838\u5B9E\u91CD\u8981\u4FE1\u606F\u3002","search.ai.error.description":"\u6211\u4EEC\u5728\u5904\u7406\u60A8\u7684\u641C\u7D22\u65F6\u9047\u5230\u95EE\u9898\u3002\u8BF7\u7A0D\u540E\u518D\u8BD5\u6216\u4F18\u5316\u60A8\u7684\u67E5\u8BE2\u3002\u5982\u679C\u95EE\u9898\u4ECD\u7136\u5B58\u5728\uFF0C\u8BF7\u8054\u7CFB Redocly \u652F\u6301\u3002","search.ai.error.description.forbidden":"AI \u52A9\u624B\u5F53\u524D\u4E0D\u53EF\u7528\u3002","search.ai.error.description.unauthorized":"\u60A8\u65E0\u6743\u4F7F\u7528 AI \u52A9\u624B\u3002","search.ai.error.header":"\u54CE\u5440\uFF01\u51FA\u9519\u4E86\u3002","search.ai.error.header.forbidden":"\u529F\u80FD\u4E0D\u53EF\u7528","search.ai.error.header.unauthorized":"\u9700\u8981\u8EAB\u4EFD\u9A8C\u8BC1","aiAssistant.trigger":"\u8BE2\u95EE AI","toc.header":"\u5728\u672C\u9875","footer.copyrightText":"","consent.title":"\u6211\u4EEC\u91CD\u89C6\u60A8\u7684\u9690\u79C1","consent.message":'\u9009\u62E9"\u63A5\u53D7\u6240\u6709 Cookie"\uFF0C\u5373\u8868\u793A\u60A8\u540C\u610F\u4F7F\u7528 Cookie \u6765\u6539\u5584\u7F51\u7AD9\u5BFC\u822A\u3001\u4E86\u89E3\u7F51\u7AD9\u4F7F\u7528\u60C5\u51B5\u5E76\u652F\u6301\u6211\u4EEC\u7684\u8425\u9500\u5DE5\u4F5C\u3002\u9009\u62E9"\u81EA\u5B9A\u4E49"\u4EE5\u9009\u62E9\u5141\u8BB8\u7684 Cookie \u7C7B\u578B\u3002',"consent.privacyPolicy":"\u9690\u79C1\u653F\u7B56","consent.customize":"\u81EA\u5B9A\u4E49","consent.rejectAll":"\u5168\u90E8\u62D2\u7EDD","consent.acceptAll":"\u5168\u90E8\u63A5\u53D7","consent.acceptAllCookies":"\u63A5\u53D7\u6240\u6709 Cookie","consent.savePreferences":"\u4FDD\u5B58\u504F\u597D","consent.dialog.title":"Cookie \u504F\u597D","consent.dialog.description":"\u9009\u62E9\u672C\u7F51\u7AD9\u53EF\u4EE5\u4F7F\u7528\u7684 Cookie\u3002\u60A8\u53EF\u4EE5\u968F\u65F6\u66F4\u6539\u9009\u62E9\u3002","consent.dialog.close":"\u5173\u95ED","consent.alwaysOn":"\u59CB\u7EC8\u5F00\u542F","consent.alwaysOff":"\u59CB\u7EC8\u5173\u95ED","consent.gpcNotice":"\u60A8\u7684\u6D4F\u89C8\u5668\u8981\u6C42\u6211\u4EEC\u4E0D\u8981\u5171\u4EAB\u60A8\u7684\u6570\u636E\uFF0C\u56E0\u6B64\u6B64\u9879\u4FDD\u6301\u5173\u95ED\u3002","consent.category.necessary.title":"\u5FC5\u8981","consent.category.necessary.description":"\u7F51\u7AD9\u8FD0\u884C\u6240\u9700\uFF1A\u60A8\u7684\u540C\u610F\u9009\u62E9\u3001\u989C\u8272\u6A21\u5F0F\u548C\u533F\u540D\u4F7F\u7528\u6570\u636E\u3002","consent.category.analytics.title":"\u5206\u6790","consent.category.analytics.description":"\u5E2E\u52A9\u6211\u4EEC\u4E86\u89E3\u54EA\u4E9B\u9875\u9762\u6709\u7528\u3002","consent.category.marketing.title":"\u8425\u9500","consent.category.marketing.description":"\u8BA9\u6211\u4EEC\u8861\u91CF\u54EA\u4E9B\u6D3B\u52A8\u4E3A\u672C\u7F51\u7AD9\u5E26\u6765\u8BBF\u5BA2\u3002","consent.settingsLink":"Cookie \u504F\u597D","page.homeButton":"\u8FD4\u56DE\u9996\u9875","page.forbidden.title":"\u7981\u6B62\u8BBF\u95EE","page.forbidden.description":"\u60A8\u6CA1\u6709\u6743\u9650\u8BBF\u95EE\u6B64\u9875\u9762\u3002\u5982\u679C\u60A8\u8BA4\u4E3A\u8FD9\u662F\u4E00\u4E2A\u9519\u8BEF\uFF0C\u8054\u7CFB\u60A8\u7684\u7BA1\u7406\u5458\u6216\u8FD4\u56DE\u9996\u9875\u3002","page.notFound.title":"\u5185\u5BB9\u4E22\u5931\u4E86...","page.notFound.description":"\u60A8\u5C1D\u8BD5\u8BBF\u95EE\u7684\u9875\u9762\u4E0D\u5B58\u5728\u6216\u53EF\u80FD\u5DF2\u88AB\u79FB\u52A8\u3002\u60A8\u53EF\u4EE5\u8FD4\u56DE\u4E0A\u4E00\u9875\u3001\u8FD4\u56DE\u9996\u9875\u6216\u4F7F\u7528\u641C\u7D22\u680F\u67E5\u627E\u6240\u9700\u5185\u5BB9\u3002","page.lastUpdated.timeago":"\u6700\u540E\u66F4\u65B0\u4E8E","page.lastUpdated.on":"\u6700\u540E\u66F4\u65B0\u4E8E","page.apiNotFound.title":"\u6B64\u5730\u5740\u6CA1\u6709\u9875\u9762","page.apiNotFound.description":"\u627E\u4E0D\u5230\u9875\u9762","page.apiNotFound.hint":"\u8BE5\u9875\u9762\u53EF\u80FD\u5DF2\u88AB\u79FB\u52A8\u6216\u5220\u9664\u3002","page.apiNotFound.backButton":"\u8FD4\u56DE\u6587\u6863","page.mcpNotAllowed.title":"\u8FDE\u63A5 MCP \u670D\u52A1\u5668","page.mcpNotAllowed.description":"\u8981\u4F7F\u7528\u6B64 MCP \u670D\u52A1\u5668\uFF0C\u8BF7\u5728\u60A8\u7684 MCP \u5BA2\u6237\u7AEF\uFF08\u4F8B\u5982\uFF1AVS Code\u3001Cursor \u6216 Claude Code\uFF09\u4E2D\u6CE8\u518C\u5B83\u3002","page.mcpNotAllowed.publicNote":"\u6B64\u7AEF\u70B9\u4EC5\u63D0\u4F9B\u516C\u5F00\u53EF\u7528\u7684\u5185\u5BB9\uFF0C\u65E0\u9700\u767B\u5F55\u3002","page.mcpNotAllowed.publicEndpointHint":"\u5982\u9700\u5728\u65E0\u8D26\u6237\u7684\u60C5\u51B5\u4E0B\u533F\u540D\u8FDE\u63A5\uFF0C\u8BF7\u4F7F\u7528<link>\u516C\u5171\u7AEF\u70B9</link>\u3002","page.mcpNotAllowed.mainEndpointHint":"\u5982\u9700\u8BBF\u95EE\u60A8\u8D26\u6237\u53EF\u7528\u7684\u5185\u5BB9\uFF0C\u8BF7\u4F7F\u7528<link>\u4E3B MCP \u7AEF\u70B9</link>\u3002","page.mcpNotAllowed.snippets.terminal.hint":"\u5728\u7EC8\u7AEF\u4E2D\u8FD0\u884C\u6B64\u547D\u4EE4\uFF1A","page.mcpNotAllowed.snippets.claudeCode.headline":"Claude Code","page.mcpNotAllowed.snippets.claudeDesktop.headline":"Claude \u5E94\u7528","page.mcpNotAllowed.snippets.claudeDesktop.accountHint":"Claude \u4F1A\u5C06\u8FDE\u63A5\u5668\u6DFB\u52A0\u5230\u60A8\u7684\u5E10\u6237\uFF0C\u5E76\u5728\u7F51\u9875\u7248 Claude \u548C Claude Desktop \u4E4B\u95F4\u540C\u6B65\u3002","page.mcpNotAllowed.snippets.claudeDesktop.instruction":"\u6216\u8005\u6253\u5F00\u201C\u81EA\u5B9A\u4E49 \u2192 \u8FDE\u63A5\u5668 \u2192 \u6DFB\u52A0\u81EA\u5B9A\u4E49\u8FDE\u63A5\u5668\u201D\uFF0C\u7136\u540E\u7C98\u8D34\u6B64\u670D\u52A1\u5668 URL\uFF1A","page.mcpNotAllowed.snippets.chatgptApp.headline":"ChatGPT \u684C\u9762\u5E94\u7528","page.mcpNotAllowed.snippets.chatgptApp.instruction":'\u5728 ChatGPT \u684C\u9762\u5E94\u7528\u4E2D\uFF0C\u8FDB\u5165\u8BBE\u7F6E \u2192 \u63D2\u4EF6 \u2192 MCPs\uFF0C\u4F7F\u7528"Streamable HTTP"\u7C7B\u578B\u548C\u6B64 URL \u6DFB\u52A0\u670D\u52A1\u5668\uFF08\u4E4B\u540E\u91CD\u542F\u5E94\u7528\uFF09\uFF1A',"page.mcpNotAllowed.snippets.codexCli.headline":"Codex CLI","page.mcpNotAllowed.snippets.grokBuild.headline":"Grok Build","page.mcpNotAllowed.snippets.grokApp.headline":"Grok \u5E94\u7528","page.mcpNotAllowed.snippets.grokApp.instruction":"\u5728 grok.com \u4E0A\u6253\u5F00\u201CConnectors \u2192 New Connector \u2192 Custom\u201D\uFF0C\u7136\u540E\u7C98\u8D34\u6B64\u670D\u52A1\u5668 URL\uFF1A","page.mcpNotAllowed.snippets.grokApp.openConnectors":"\u6253\u5F00 Grok \u8FDE\u63A5\u5668","page.mcpNotAllowed.snippets.prompt.headline":"\u63D0\u793A\u8BCD","page.mcpNotAllowed.snippets.prompt.hint":"\u4E5F\u53EF\u4EE5\u5C06\u6B64\u63D0\u793A\u8BCD\u7C98\u8D34\u5230\u804A\u5929\u4E2D\uFF0C\u5B83\u4F1A\u4E3A\u60A8\u81EA\u52A8\u6DFB\u52A0\u670D\u52A1\u5668\uFF1A","page.mcpNotAllowed.snippets.json.hint":"\u5C06\u6B64\u670D\u52A1\u5668\u6761\u76EE\u6DFB\u52A0\u5230\u60A8\u7684 MCP \u5BA2\u6237\u7AEF\u914D\u7F6E\u6587\u4EF6\u4E2D\uFF1A","page.mcpNotAllowed.tabs.claude":"Claude","page.mcpNotAllowed.tabs.chatgpt":"ChatGPT","page.mcpNotAllowed.tabs.grok":"Grok","page.mcpNotAllowed.tabs.json":"JSON","catalog.filters.title":"\u7B5B\u9009\u5668","catalog.filters.add":"\u6DFB\u52A0\u7B5B\u9009\u5668","catalog.filters.placeholder":"\u8F93\u5165\u4EE5\u7B5B\u9009...","catalog.filters.clearAll":"\u6E05\u9664\u6240\u6709\u7B5B\u9009\u5668","catalog.filters.select.addFilter":"\u6DFB\u52A0\u7B5B\u9009\u5668","catalog.filters.select.all":"\u5168\u90E8","catalog.filters.done":"\u5B8C\u6210","filter.dateRange.from":"\u4ECE:","filter.dateRange.to":"\u5230:","navigationTabs.label":"\u5BFC\u822A\u6807\u7B7E\u9875","sidebar.menu.backLabel":"\u8FD4\u56DE","sidebar.menu.backToLabel":"\u8FD4\u56DE {{value}}","sidebar.actions.show":"\u663E\u793A\u4FA7\u8FB9\u680F","sidebar.actions.hide":"\u9690\u85CF\u4FA7\u8FB9\u680F","sidebar.actions.changeToSingleColumn":"\u5207\u6362\u5230\u5355\u5217","sidebar.actions.changeToTwoColumns":"\u5207\u6362\u5230\u53CC\u5217","sidebar.actions.singleColumn":"\u5355\u5217","sidebar.actions.twoColumns":"\u4E24\u5217","versionPicker.label":"\u7248\u672C\uFF1A","versionPicker.unversioned":"\u6240\u6709\u7248\u672C","codeSnippet.copy.buttonText":"\u5DF2\u590D\u5236\uFF01","codeSnippet.copy.tooltipText":"\u590D\u5236\u5230\u526A\u8D34\u677F","codeSnippet.copy.toasterText":"\u590D\u5236","codeSnippet.expand.tooltipText":"\u5168\u90E8\u5C55\u5F00","codeSnippet.collapse.tooltipText":"\u5168\u90E8\u6298\u53E0","markdown.editPage.text":"\u7F16\u8F91","feedback.settings.comment.submitText":"\u611F\u8C22\u60A8\u5E2E\u52A9\u6539\u8FDB\u6211\u4EEC\u7684\u6587\u6863\uFF01","feedback.settings.comment.label":"\u8BF7\u4E0E\u6211\u4EEC\u5206\u4EAB\u60A8\u7684\u53CD\u9988\u3002","feedback.settings.comment.send":"\u53D1\u9001","feedback.settings.comment.cancel":"\u53D6\u6D88","feedback.settings.comment.maxLength":"\u5DF2\u8FBE\u5230\u5185\u5BB9\u6700\u5927\u957F\u5EA6{{maxLength}}\u4E2A\u5B57\u7B26","feedback.settings.comment.satisfiedLabel":"\u6700\u6709\u5E2E\u52A9\u7684\u662F\u4EC0\u4E48\uFF1F","feedback.settings.comment.neutralLabel":"\u6211\u4EEC\u53EF\u4EE5\u6539\u8FDB\u4EC0\u4E48\uFF1F","feedback.settings.comment.dissatisfiedLabel":"\u6211\u4EEC\u53EF\u4EE5\u6539\u8FDB\u4EC0\u4E48\uFF1F","feedback.settings.submitText":"\u611F\u8C22\u60A8\u7684\u53CD\u9988\uFF01","feedback.settings.label":"\u8FD9\u6709\u5E2E\u52A9\u5417\uFF1F","feedback.settings.reasons.label":"\u54EA\u9879\u9648\u8FF0\u63CF\u8FF0\u4E86\u60A8\u5BF9\u6B64\u9875\u9762\u7684\u770B\u6CD5\uFF1F","feedback.submit":"\u63D0\u4EA4","feedback.cancel":"\u53D6\u6D88","feedback.settings.comment.likeLabel":"\u6700\u6709\u5E2E\u52A9\u7684\u662F\u4EC0\u4E48\uFF1F","feedback.settings.comment.dislikeLabel":"\u6211\u4EEC\u53EF\u4EE5\u6539\u8FDB\u4EC0\u4E48\uFF1F","feedback.sentiment.thumbUp":"\u8D5E","feedback.sentiment.thumbDown":"\u8E29","feedback.settings.leftScaleLabel":"\u5B8C\u5168\u6CA1\u6709\u5E2E\u52A9","feedback.settings.rightScaleLabel":"\u975E\u5E38\u6709\u5E2E\u52A9","feedback.settings.optionalEmail.label":"\u60A8\u7684\u7535\u5B50\u90AE\u4EF6\uFF08\u53EF\u9009\uFF0C\u7528\u4E8E\u8DDF\u8FDB\uFF09","feedback.settings.optionalEmail.placeholder":"yourname@example.com","jsonViewer.showMore":"\u663E\u793A\u66F4\u591A","jsonViewer.showLess":"\u663E\u793A\u66F4\u5C11","codeSnippet.report.buttonText":"\u62A5\u544A","codeSnippet.report.tooltipText":"\u62A5\u544A\u95EE\u9898","codeSnippet.report.label":"\u6B64\u4EE3\u7801\u6709\u4EC0\u4E48\u95EE\u9898\uFF1F","userMenu.login":"\u767B\u5F55","userMenu.logout":"\u6CE8\u9500","userMenu.devOnboardingLabel":"\u6211\u7684\u5E94\u7528\u7A0B\u5E8F","mobileMenu.mainMenu":"\u4E3B\u83DC\u5355","mobileMenu.previous":"\u4E0A\u4E00\u6B65","mobileMenu.products":"\u4EA7\u54C1","mobileMenu.version":"\u7248\u672C","page.nextButton":"\u4E0B\u4E00\u9875","page.previousButton":"\u4E0A\u4E00\u9875","page.actions.moreActions":"\u66F4\u591A\u64CD\u4F5C","promptTag.copy.buttonText":"\u590D\u5236\u63D0\u793A\u8BCD","promptTag.copy.description":"\u5C06\u6B64\u63D0\u793A\u8BCD\u590D\u5236\u5230\u526A\u8D34\u677F","promptTag.showPrompt":"\u663E\u793A\u63D0\u793A\u8BCD","promptTag.hidePrompt":"\u9690\u85CF\u63D0\u793A\u8BCD","promptTag.showFullPrompt":"\u663E\u793A\u5B8C\u6574\u63D0\u793A\u8BCD","promptTag.showLess":"\u6536\u8D77","promptTag.openIn.cursor":"\u5728 Cursor \u4E2D\u6253\u5F00","promptTag.openIn.cursorDescription":"\u5C06\u6B64\u63D0\u793A\u8BCD\u53D1\u9001\u5230 Cursor","promptTag.openIn.claude":"\u5728 Claude \u4E2D\u6253\u5F00","promptTag.openIn.claudeDescription":"\u5C06\u6B64\u63D0\u793A\u8BCD\u53D1\u9001\u5230 Claude","promptTag.openIn.chatgpt":"\u5728 ChatGPT \u4E2D\u6253\u5F00","promptTag.openIn.chatgptDescription":"\u5C06\u6B64\u63D0\u793A\u8BCD\u53D1\u9001\u5230 ChatGPT","page.actions.copyButtonText":"\u590D\u5236","page.actions.copyTitle":"\u4E3A LLM \u590D\u5236","page.actions.copyDescription":"\u5C06\u9875\u9762\u590D\u5236\u4E3A LLM \u7684 Markdown \u683C\u5F0F","page.actions.viewAsMdButtonText":"\u67E5\u770B Markdown","page.actions.viewAsMdTitle":"\u67E5\u770B Markdown","page.actions.viewAsMdDescription":"\u4EE5 Markdown \u683C\u5F0F\u6253\u5F00\u6B64\u9875\u9762","page.actions.chatGptButtonText":"\u5728 ChatGPT \u4E2D\u6253\u5F00","page.actions.chatGptTitle":"\u5728 ChatGPT \u4E2D\u6253\u5F00","page.actions.chatGptDescription":"\u4ECE ChatGPT \u83B7\u53D6\u89C1\u89E3","page.actions.claudeButtonText":"\u5728 Claude \u4E2D\u6253\u5F00","page.actions.claudeTitle":"\u5728 Claude \u4E2D\u6253\u5F00","page.actions.claudeDescription":"\u4ECE Claude \u83B7\u53D6\u89C1\u89E3","page.actions.grokButtonText":"\u5728 Grok \u4E2D\u6253\u5F00","page.actions.grokTitle":"\u5728 Grok \u4E2D\u6253\u5F00","page.actions.grokDescription":"\u4ECE Grok \u83B7\u53D6\u89C1\u89E3","page.actions.cursorMcpButtonText":"\u8FDE\u63A5\u5230 Cursor","page.actions.cursorMcpTitle":"\u8FDE\u63A5\u5230 Cursor","page.actions.cursorMcpDescription":"\u5728 Cursor \u4E0A\u5B89\u88C5 MCP \u670D\u52A1\u5668","page.actions.connectMcp":"\u8FDE\u63A5 MCP","page.actions.connectMcp.cursor":"\u8FDE\u63A5\u5230 Cursor","page.actions.connectMcp.cursorDescription":"\u5728 Cursor \u4E0A\u5B89\u88C5 MCP \u670D\u52A1\u5668","page.actions.connectMcp.vscode":"\u8FDE\u63A5\u5230 VS Code","page.actions.connectMcp.vscodeDescription":"\u5728 VS Code \u4E0A\u5B89\u88C5 MCP \u670D\u52A1\u5668","page.actions.connectMcp.claude":"\u8FDE\u63A5\u5230 Claude","page.actions.connectMcp.claudeDescription":"\u5C06 MCP \u670D\u52A1\u5668\u6DFB\u52A0\u5230\u60A8\u7684 Claude \u5E10\u6237","page.actions.connectMcp.claudeCode":"\u8FDE\u63A5\u5230 Claude Code","page.actions.connectMcp.claudeCodeDescription":"\u590D\u5236 Claude Code CLI \u547D\u4EE4","page.actions.connectMcp.codex":"\u8FDE\u63A5\u5230 Codex CLI","page.actions.connectMcp.codexDescription":"\u590D\u5236 Codex CLI \u547D\u4EE4","page.actions.connectMcp.copyConfig":"\u590D\u5236 MCP \u914D\u7F6E","page.actions.connectMcp.copyConfigDescription":"\u590D\u5236 MCP JSON \u914D\u7F6E","page.actions.connectMcp.copyUrl":"\u590D\u5236 MCP \u670D\u52A1\u5668 URL","page.actions.connectMcp.copyUrlDescription":"\u5C06 MCP \u670D\u52A1\u5668 URL \u590D\u5236\u5230\u526A\u8D34\u677F","page.actions.connectMcp.moreOptions":"\u66F4\u591A\u9009\u9879","navbar.label":"\u4E3B\u5BFC\u822A","navbar.products":"\u4EA7\u54C1","openapi.download.description.title":"\u4E0B\u8F7D OpenAPI \u63CF\u8FF0","openapi.info.title":"\u6982\u8FF0","openapi.info.contact.url":"URL","openapi.info.contact.name":"\u7535\u5B50\u90AE\u4EF6","openapi.info.license":"\u8BB8\u53EF\u8BC1","openapi.info.termsOfService":"\u670D\u52A1\u6761\u6B3E","openapi.info.metadata.title":"\u5143\u6570\u636E","graphql.info.metadata.title":"\u5143\u6570\u636E","button.download.tooltipText":"\u4E0B\u8F7D\u63CF\u8FF0","button.externalLink.tooltipText":"\u5728\u65B0\u6807\u7B7E\u9875\u4E2D\u6253\u5F00","button.email.tooltipText":"\u53D1\u9001\u90AE\u4EF6","openapi.key":"\u952E","openapi.value":"\u503C","openapi.enum":"\u679A\u4E3E","openapi.items":"\u9879","openapi.default":"\u9ED8\u8BA4\u503C","openapi.variable":"\u53D8\u91CF","openapi.variables":"\u53D8\u91CF","openapi.actions.show":"\u663E\u793A","openapi.actions.hide":"\u9690\u85CF","openapi.actions.more":"\u66F4\u591A","openapi.languages.title":"\u8BED\u8A00","openapi.languages.moreButton.tooltipText":"\u67E5\u770B\u66F4\u591A\u8BED\u8A00","openapi.servers.title":"\u670D\u52A1\u5668","openapi.operations":"\u64CD\u4F5C","openapi.schemas":"\u6A21\u5F0F","openapi.webhooks":"Webhook","openapi.description":"\u63CF\u8FF0","openapi.badges.deprecated":"\u5DF2\u5F03\u7528","openapi.badges.required":"\u5FC5\u9700","openapi.badges.webhook":"Webhook","openapi.request":"\u8BF7\u6C42","openapi.path":"\u8DEF\u5F84","openapi.query":"\u67E5\u8BE2","openapi.querystring":"\u67E5\u8BE2\u5B57\u7B26\u4E32","openapi.cookie":"Cookie","openapi.header":"\u6807\u5934","openapi.body":"\u6B63\u6587","openapi.responses":"\u54CD\u5E94","openapi.response":"\u54CD\u5E94","openapi.callbacks":"\u56DE\u8C03","openapi.callbackRequest":"\u56DE\u8C03\u8BF7\u6C42","openapi.callbackResponse":"\u56DE\u8C03\u54CD\u5E94","openapi.payload":"\u8BF7\u6C42\u4F53","openapi.discriminator":"\u9274\u522B\u5668","openapi.contentType":"\u5185\u5BB9\u7C7B\u578B","openapi.tryIt":"\u8BD5\u7528","openapi.loading":"\u52A0\u8F7D\u4E2D...","openapi.example":"\u793A\u4F8B","openapi.examples":"\u793A\u4F8B","openapi.additionalProperties":"\u9644\u52A0\u5C5E\u6027","openapi.patternProperties":"\u6A21\u5F0F\u5C5E\u6027","openapi.required":"\u5FC5\u9700","openapi.recursive":"\u9012\u5F52","openapi.complex":"\u590D\u6742","openapi.property":"\u5C5E\u6027","openapi.properties":"\u5C5E\u6027","openapi.details":"\u8BE6\u7EC6\u4FE1\u606F","openapi.hideExample":"\u9690\u85CF\u793A\u4F8B","openapi.showExample":"\u663E\u793A\u793A\u4F8B","openapi.expandAll":"\u5168\u90E8\u5C55\u5F00","openapi.deepLink.tooltip":"\u94FE\u63A5\u5230\u6B64\u90E8\u5206","openapi.collapseAll":"\u5168\u90E8\u6298\u53E0","openapi.viewSecurityDetails":"\u67E5\u770B\u5B89\u5168\u8BE6\u60C5","openapi.noResponseExample":"\u65E0\u54CD\u5E94\u793A\u4F8B","openapi.discriminator.searchPlaceholder":"\u641C\u7D22\u9879\u76EE","openapi.discriminator.searchNoResults":"\u672A\u627E\u5230\u9879\u76EE","openapi.discriminator.defaultMapping":"\u9ED8\u8BA4\u6620\u5C04","openapi.discriminator.defaultMappingTooltip":"OpenAPI 3.2\uFF1A\u5F53\u5176\u4ED6\u6620\u5C04\u4E0D\u5339\u914D\u65F6\u4F7F\u7528\u9ED8\u8BA4\u6620\u5C04\u3002","openapi.noResponseContent":"\u65E0\u5185\u5BB9","openapi.noRequestPayload":"\u65E0\u8BF7\u6C42\u6709\u6548\u8D1F\u8F7D","openapi.noRequestData":"\u65E0\u8BF7\u6C42\u6570\u636E","openapi.hidePattern":"\u9690\u85CF\u6A21\u5F0F","openapi.showPattern":"\u663E\u793A\u6A21\u5F0F","openapi.authorizationUrl":"\u6388\u6743 URL","openapi.tokenUrl":"\u4EE4\u724C URL","openapi.refreshUrl":"\u5237\u65B0 URL","openapi.showOptionalScopes":"\u663E\u793A\u53EF\u9009\u8303\u56F4","openapi.hideOptionalScopes":"\u9690\u85CF\u53EF\u9009\u8303\u56F4","openapi.security":"\u5B89\u5168","openapi.httpAuthorizationScheme":"HTTP \u6388\u6743\u65B9\u6848","openapi.bearerFormat":"Bearer \u683C\u5F0F","openapi.parameterName":"\u53C2\u6570\u540D\u79F0","openapi.flowType":"\u6D41\u7C7B\u578B","openapi.connectUrl":"\u8FDE\u63A5 URL","openapi.requiredScopes":"\u5FC5\u9700\u8303\u56F4","openapi.unsupportedLanguage":"\u4E0D\u652F\u6301\u8BE5\u8BED\u8A00\u3002","openapi.failedToGenerateCodeSample":"\u65E0\u6CD5\u751F\u6210\u4EE3\u7801\u793A\u4F8B\u3002","openapi.schemaCatalogLink.title":"\u5171\u4EAB\u67B6\u6784","openapi.schemaCatalogLink.copyButtonTooltip":"\u590D\u5236\u5230\u526A\u8D34\u677F","openapi.schemaCatalogLink.copiedTooltip":"\u5DF2\u590D\u5236\uFF01","openapi.mcp.title":"MCP server","openapi.mcp.endpoint":"Endpoint","openapi.mcp.tools":"MCP \u5DE5\u5177","openapi.mcp.protocolVersion":"\u534F\u8BAE\u7248\u672C","openapi.mcp.capabilities":"\u80FD\u529B","openapi.mcp.experimentalCapabilities":"\u5B9E\u9A8C\u6027\u80FD\u529B","openapi.mcp.inputSchema":"\u8F93\u5165\u67B6\u6784","openapi.mcp.inputExample":"\u8F93\u5165\u793A\u4F8B","openapi.mcp.outputSchema":"\u8F93\u51FA\u67B6\u6784","openapi.mcp.outputExample":"\u8F93\u51FA\u793A\u4F8B","openapi.mcp.exampleTitle":"\u8D44\u6E90\u5185\u5BB9","openapi.mcp.argumentsExample":"\u53C2\u6570\u793A\u4F8B","asyncapi.download.description.title":"\u4E0B\u8F7D AsyncAPI \u63CF\u8FF0","asyncapi.info.title":"\u6982\u8FF0","asyncapi.info.contact.url":"URL","asyncapi.info.contact.name":"\u7535\u5B50\u90AE\u4EF6","asyncapi.info.license":"\u8BB8\u53EF\u8BC1","asyncapi.info.termsOfService":"\u670D\u52A1\u6761\u6B3E","asyncapi.key":"\u952E","asyncapi.value":"\u503C","asyncapi.variables":"\u53D8\u91CF","asyncapi.required":"\u5FC5\u9700","asyncapi.badges.deprecated":"\u5DF2\u5F03\u7528","asyncapi.viewSecurityDetails":"\u67E5\u770B\u5B89\u5168\u8BE6\u60C5","asyncapi.requiredScopes":"\u5FC5\u9700\u8303\u56F4","graphql.download.description.title":"\u4E0B\u8F7D GraphQL \u67B6\u6784","graphql.info.title":"\u6982\u8FF0","graphql.info.contact.url":"URL","graphql.info.contact.name":"\u7535\u5B50\u90AE\u4EF6","graphql.info.license":"\u8BB8\u53EF\u8BC1","graphql.info.termsOfService":"\u670D\u52A1\u6761\u6B3E","graphql.overview":"GraphQL \u6982\u8FF0","graphql.metadata":"\u5143\u6570\u636E","graphql.key":"\u952E","graphql.value":"\u503C","graphql.queries":"\u67E5\u8BE2","graphql.mutations":"\u53D8\u66F4","graphql.subscriptions":"\u8BA2\u9605","graphql.directives":"\u6307\u4EE4","graphql.objects":"\u5BF9\u8C61","graphql.interfaces":"\u63A5\u53E3","graphql.unions":"\u8054\u5408","graphql.enums":"\u679A\u4E3E","graphql.inputs":"\u8F93\u5165","graphql.scalars":"\u6807\u91CF","graphql.fields":"\u5B57\u6BB5","graphql.inputFields":"\u8F93\u5165\u5B57\u6BB5","graphql.values":"\u503C","graphql.actions.show":"\u663E\u793A","graphql.actions.hide":"\u9690\u85CF","graphql.actions.more":"\u66F4\u591A","graphql.arguments.label":"\u53C2\u6570","graphql.arguments.show":"\u663E\u793A\u53C2\u6570","graphql.arguments.hide":"\u9690\u85CF\u53C2\u6570","graphql.arguments.here":"\u53C2\u6570\u5728\u6B64","graphql.returnTypes.label":"\u7ED3\u679C\u7C7B\u578B","graphql.returnTypes.show":"\u663E\u793A\u7ED3\u679C\u7C7B\u578B","graphql.returnTypes.hide":"\u9690\u85CF\u7ED3\u679C\u7C7B\u578B","graphql.possibleTypes":"\u53EF\u80FD\u7684\u7C7B\u578B","graphql.defaultValue":"\u9ED8\u8BA4\u503C","graphql.deprecationReason":"\u5F03\u7528\u539F\u56E0","graphql.requiredScopes":"\u5FC5\u9700\u8303\u56F4","graphql.viewSecurityDetails":"\u67E5\u770B\u8BE6\u7EC6\u4FE1\u606F","graphql.objectScopes":"\u5BF9\u8C61\u8303\u56F4","graphql.fieldScopes":"\u5B57\u6BB5\u8303\u56F4","graphql.implementedInterfaces":"\u5B9E\u73B0\u7684\u63A5\u53E3","graphql.implementedBy":"\u5B9E\u73B0\u7C7B\u578B","graphql.nonNull":"\u975E\u7A7A","graphql.required":"\u5FC5\u9700","graphql.badges.deprecated":"\u5DF2\u5F03\u7528","asyncapi.actions.show":"\u663E\u793A","asyncapi.actions.hide":"\u9690\u85CF","asyncapi.actions.more":"\u66F4\u591A","asyncapi.payload":"\u8D1F\u8F7D","asyncapi.parameters":"\u53C2\u6570","asyncapi.messages":"\u6D88\u606F","asyncapi.contentType":"\u5185\u5BB9\u7C7B\u578B","asyncapi.moreDetails":"\u66F4\u591A\u8BE6\u7EC6\u4FE1\u606F","asyncapi.property":"\u5C5E\u6027","asyncapi.properties":"\u5C5E\u6027","asyncapi.details":"\u8BE6\u7EC6\u4FE1\u606F","asyncapi.reply":"\u56DE\u590D","asyncapi.servers.title":"\u670D\u52A1\u5668","graphql.variables":"\u53D8\u91CF","graphql.querySample":"\u67E5\u8BE2\u793A\u4F8B","graphql.mutationSample":"\u53D8\u66F4\u793A\u4F8B","graphql.subscriptionSample":"\u8BA2\u9605\u793A\u4F8B","graphql.responseSample":"\u54CD\u5E94\u793A\u4F8B","graphql.locations":"\u4F4D\u7F6E","graphql.sample":"\u793A\u4F8B","graphql.referenced":"\u5F15\u7528\u4F4D\u7F6E","graphql.content.fragment":"\u7247\u6BB5","graphql.tryIt":"\u8BD5\u7528","graphql.loading":"\u52A0\u8F7D\u4E2D...","codeWalkthrough.preview":"\u9884\u89C8","codeWalkthrough.download":"\u4E0B\u8F7D","time.justNow":"\u521A\u624D","time.past.second":"1 \u79D2\u524D","time.past.seconds":"{{value}} \u79D2\u524D","time.past.minute":"1 \u5206\u949F\u524D","time.past.minutes":"{{value}} \u5206\u949F\u524D","time.past.hour":"1 \u5C0F\u65F6\u524D","time.past.hours":"{{value}} \u5C0F\u65F6\u524D","time.past.day":"1 \u5929\u524D","time.past.days":"{{value}} \u5929\u524D","time.past.week":"1 \u5468\u524D","time.past.weeks":"{{value}} \u5468\u524D","time.past.month":"1 \u4E2A\u6708\u524D","time.past.months":"{{value}} \u4E2A\u6708\u524D","time.past.year":"1 \u5E74\u524D","time.past.years":"{{value}} \u5E74\u524D","page.internalServerError.title":"\u5185\u90E8\u670D\u52A1\u5668\u9519\u8BEF","page.internalServerError.description":"\u6211\u4EEC\u7684\u670D\u52A1\u5668\u51FA\u9519\u4E86\u3002\u8BF7\u7A0D\u540E\u518D\u8BD5\uFF0C\u5982\u679C\u95EE\u9898\u4ECD\u7136\u5B58\u5728\uFF0C\u8BF7\u8054\u7CFB\u652F\u6301\u4EBA\u5458\u3002","page.skipToContent.label":"\u8DF3\u8F6C\u5230\u5185\u5BB9","catalog.catalogs.label":"\u76EE\u5F55","catalog.catalogs.all.title":"\u5168\u90E8","catalog.catalogs.all.description":"\u6240\u6709\u5B9E\u4F53","catalog.catalogs.all.switcherLabel":"\u5168\u90E8","catalog.catalogs.service.title":"\u670D\u52A1","catalog.catalogs.service.description":"\u670D\u52A1\u5B9E\u4F53","catalog.catalogs.service.switcherLabel":"\u670D\u52A1","catalog.catalogs.user.title":"\u7528\u6237","catalog.catalogs.user.description":"\u7528\u6237\u5B9E\u4F53","catalog.catalogs.user.switcherLabel":"\u7528\u6237","catalog.catalogs.team.title":"\u56E2\u961F","catalog.catalogs.team.description":"\u56E2\u961F\u5B9E\u4F53","catalog.catalogs.team.switcherLabel":"\u56E2\u961F","catalog.catalogs.domain.title":"\u57DF","catalog.catalogs.domain.description":"\u57DF\u5B9E\u4F53","catalog.catalogs.domain.switcherLabel":"\u57DF","catalog.catalogs.apiDescription.title":"API \u63CF\u8FF0","catalog.catalogs.apiDescription.description":"API \u63CF\u8FF0\u5B9E\u4F53","catalog.catalogs.apiDescription.switcherLabel":"API \u63CF\u8FF0","catalog.catalogs.dataSchema.title":"\u6570\u636E\u6A21\u5F0F","catalog.catalogs.dataSchema.description":"\u6570\u636E\u6A21\u5F0F\u5B9E\u4F53","catalog.catalogs.dataSchema.switcherLabel":"\u6570\u636E\u6A21\u5F0F","catalog.catalogs.apiOperation.title":"API \u64CD\u4F5C","catalog.catalogs.apiOperation.description":"API \u64CD\u4F5C\u5B9E\u4F53","catalog.catalogs.apiOperation.switcherLabel":"API \u64CD\u4F5C","catalog.entity.metadata.title":"\u5143\u6570\u636E","catalog.entity.schema.title":"\u6A21\u5F0F","catalog.entity.properties.apiDescription.title":"API \u63CF\u8FF0","catalog.backToAllLabel":"\u76EE\u5F55","catalog.notConnected":"\u672A\u8FDE\u63A5","catalog.tags.label":"\u6807\u7B7E","catalog.owners.label":"\u6240\u6709\u8005","catalog.repositories.label":"\u4ED3\u5E93","catalog.email.label":"\u7535\u5B50\u90AE\u4EF6","catalog.format.label":"\u683C\u5F0F","catalog.entityType.label":"\u5B9E\u4F53\u7C7B\u578B","catalog.domains.label":"\u57DF","catalog.contact.label":"Slack \u9891\u9053","catalog.methodAndPath.label":"\u65B9\u6CD5\u548C\u8DEF\u5F84","catalog.links.label":"\u94FE\u63A5","catalog.metadata.domains":"\u57DF:","catalog.metadata.owners":"\u6240\u6709\u8005:","catalog.sort":"\u6392\u5E8F","catalog.history.button.label":"\u7248\u672C\u5386\u53F2","catalog.history.sidebar.title":"\u7248\u672C\u5386\u53F2","catalog.history.sidebar.close":"\u5173\u95ED\u7248\u672C\u5386\u53F2","catalog.history.version.label":"\u7248\u672C","catalog.filters.close":"\u5173\u95ED","catalog.history.version.notSpecified":"\u672A\u6307\u5B9A","catalog.history.version.default":"\u9ED8\u8BA4","catalog.history.revisions.limitMessage":"\u4E0D\u5B58\u50A8\u8F83\u65E7\u7684\u4FEE\u8BA2\u7248\u672C\u3002","catalog.history.revision.current":"\u5F53\u524D","catalog.history.revisions.showLess":"\u663E\u793A\u66F4\u5C11","catalog.history.revisions.showMore":"\u663E\u793A\u66F4\u591A{{count}}\u9879","select.noResults":"\u65E0\u7ED3\u679C","loaders.loading":"\u52A0\u8F7D\u4E2D...","diagram.openFullscreen":"\u70B9\u51FB\u5168\u5C4F\u67E5\u770B\u56FE\u8868","diagram.zoomIn":"\u653E\u5927","diagram.zoomOut":"\u7F29\u5C0F","diagram.reset":"\u9002\u5E94\u7A97\u53E3","diagram.close":"\u5173\u95ED","diagram.viewer":"\u56FE\u8868\u67E5\u770B\u5668","missingTranslationNotice.title":"\u6B64\u9875\u9762\u5C1A\u672A\u7FFB\u8BD1","missingTranslationNotice.content":"\u6B64\u9875\u9762\u6682\u65E0\u7FFB\u8BD1\uFF0C\u5F53\u524D\u663E\u793A\u7684\u662F {{language}} \u539F\u7248\u5185\u5BB9\u3002","missingTranslationNotice.close":"\u5173\u95ED"};export{e as zh};
1
+ const e={"dev.newApp":"\u65B0\u5E94\u7528\u7A0B\u5E8F","dev.newApp.text":"\u521B\u5EFA\u60A8\u7684\u7B2C\u4E00\u4E2A\u5E94\u7528\u7A0B\u5E8F","dev.sidebar.header":"\u6211\u7684\u5E94\u7528\u7A0B\u5E8F","dev.sidebar.footer.text":"\u65B0\u5E94\u7528\u7A0B\u5E8F","dev.create.app.dialog.appName.placeholder":"\u5E94\u7528\u7A0B\u5E8F\u540D\u79F0","dev.create.app.dialog.appName.error":"\u540D\u79F0\u5FC5\u987B\u4EE5\u5B57\u6BCD\u5F00\u5934\uFF0C\u5E76\u4E14\u53EA\u80FD\u5305\u542B\uFF1A\u5B57\u6BCD\u3001\u6570\u5B57\u3001\u7A7A\u683C\u3001.\u3001_\u3001-\u3001$\u3001%\u3001#","dev.create.app.dialog.selectAPIs":"\u9009\u62E9 API","dev.create.app.dialog.description":"\u63CF\u8FF0","dev.create.app.dialog.description.placeholder":"\u7A7A","dev.create.app.dialog.create":"\u521B\u5EFA\u5E94\u7528\u7A0B\u5E8F","dev.create.app.dialog.cancel":"\u53D6\u6D88","dev.main.tab.appKeys":"API \u5BC6\u94A5","dev.main.tab.logs":"\u65E5\u5FD7","dev.app.description.title":"\u63CF\u8FF0","dev.edit.description.dialog.title":"\u66F4\u6539\u63CF\u8FF0","dev.edit.description.dialog.save":"\u4FDD\u5B58\u66F4\u6539","dev.edit.description.dialog.cancel":"\u53D6\u6D88","dev.create.app.dialog.callbackUrls":"\u56DE\u8C03 URL","dev.create.app.dialog.callbackUrls.placeholder":"https://example.com/callback","dev.create.app.dialog.callbackUrls.hint":"\u591A\u4E2A URL \u8BF7\u7528\u9017\u53F7\u5206\u9694","dev.app.callbackUrls.title":"\u56DE\u8C03 URL","dev.edit.callbackUrls.dialog.title":"\u66F4\u6539\u56DE\u8C03 URL","dev.edit.callbackUrls.dialog.placeholder":"https://example.com/callback","dev.edit.callbackUrls.dialog.hint":"\u591A\u4E2A URL \u8BF7\u7528\u9017\u53F7\u5206\u9694","dev.edit.callbackUrls.dialog.save":"\u4FDD\u5B58\u66F4\u6539","dev.edit.callbackUrls.dialog.cancel":"\u53D6\u6D88","dev.edit.apis.dialog.selectedAPIs":"\u9009\u5B9A\u7684 API","dev.app.key.create":"\u521B\u5EFA\u5BC6\u94A5","dev.create.key.dialog.title":"\u521B\u5EFA\u5BC6\u94A5","dev.create.key.dialog.create":"\u521B\u5EFA\u5BC6\u94A5","dev.create.key.dialog.cancel":"\u53D6\u6D88","dev.app.edit":"\u7F16\u8F91","dev.app.delete":"\u5220\u9664","dev.edit.app.dialog.title":"\u66F4\u6539\u663E\u793A\u540D\u79F0","dev.edit.app.dialog.save":"\u4FDD\u5B58\u66F4\u6539","dev.edit.app.dialog.cancel":"\u53D6\u6D88","dev.delete.app.dialog.title":"\u5220\u9664\u5E94\u7528\u7A0B\u5E8F","dev.delete.app.dialog.confirmation":"\u60A8\u786E\u5B9A\u8981\u5220\u9664\u6B64\u5E94\u7528\u7A0B\u5E8F\u5417\uFF1F","dev.delete.app.dialog.delete":"\u5220\u9664\u5E94\u7528\u7A0B\u5E8F","dev.delete.app.dialog.cancel":"\u53D6\u6D88","dev.app.key.roll":"\u8F6E\u6362 API \u5BC6\u94A5","dev.roll.key.dialog.title":"\u8F6E\u6362 API \u5BC6\u94A5","dev.roll.key.dialog.apiKey":"API key","dev.roll.key.dialog.expires":"\u5230\u671F","dev.roll.key.dialog.confirmation":"\u60A8\u786E\u5B9A\u8981\u8F6E\u6362\u6B64 API \u5BC6\u94A5\u5417\uFF1F","dev.roll.key.dialog.cancel":"\u53D6\u6D88","dev.roll.key.dialog.roll":"\u8F6E\u6362 API \u5BC6\u94A5","dev.update.key.dialog.title":"\u66F4\u65B0\u5BC6\u94A5","dev.update.key.dialog.update":"\u66F4\u65B0\u5BC6\u94A5","dev.update.key.dialog.cancel":"\u53D6\u6D88","dev.app.key.api.name":"API \u540D\u79F0","dev.app.key.api.status":"\u72B6\u6001","dev.app.key.api.edit":"\u7F16\u8F91 API","dev.edit.apis.dialog.title":"\u7F16\u8F91 API","dev.edit.apis.dialog.apiKey":"API key","dev.edit.apis.dialog.save":"\u4FDD\u5B58","dev.edit.apis.dialog.cancel":"\u53D6\u6D88","dev.select.placeholder":"\u7A7A","dev.app.overview.status.pending":"\u5F85\u5904\u7406","dev.app.overview.status.approved":"\u5DF2\u6279\u51C6","dev.app.overview.status.revoked":"\u5DF2\u64A4\u9500","dev.app.overview.status":"\u72B6\u6001","dev.app.overview.non-production":"\u6D4B\u8BD5","dev.app.overview.production":"\u751F\u4EA7","dev.app.overview.clientId":"\u5BC6\u94A5","dev.app.overview.apiKey":"API key","dev.app.key.revoke":"\u64A4\u9500 API \u5BC6\u94A5","dev.revoke.key.dialog.title":"\u64A4\u9500 API \u5BC6\u94A5","dev.revoke.key.dialog.apiKey":"API key","dev.revoke.key.dialog.expires":"\u5230\u671F","dev.revoke.key.dialog.confirmation":"\u60A8\u786E\u5B9A\u8981\u64A4\u9500\u6B64 API \u5BC6\u94A5\u5417\uFF1F","dev.revoke.key.dialog.revoke":"\u64A4\u9500 API \u5BC6\u94A5","dev.revoke.key.dialog.cancel":"\u53D6\u6D88","dev.app.overview.expires":"\u5230\u671F","dev.app.overview.created":"\u5DF2\u521B\u5EFA","dev.app.overview.visibilityToggle.hide":"\u9690\u85CF","dev.app.overview.visibilityToggle.show":"\u663E\u793A","search.loading":"\u52A0\u8F7D\u4E2D...","search.noResults.title":"\u65E0\u7ED3\u679C","search.keys.navigate":"\u5BFC\u822A","search.keys.select":"\u9009\u62E9","search.keys.exit":"\u9000\u51FA","search.searchItem.deprecated":"\u5DF2\u5F03\u7528","search.searchItem.enum":"\u679A\u4E3E","search.searchItem.example":"\u793A\u4F8B","search.label":"\u641C\u7D22\u6587\u6863...","search.cancel":"\u53D6\u6D88","search.recent":"\u6700\u8FD1\u641C\u7D22","search.navbar.label":"\u641C\u7D22","search.suggested":"\u5EFA\u8BAE\u9875\u9762","search.groups.all":"\u5168\u90E8","search.showMore":"\u663E\u793A\u66F4\u591A","search.filter.title":"\u9AD8\u7EA7\u7B5B\u9009","search.filter.reset":"\u91CD\u7F6E\u7B5B\u9009","search.filter.field.reset":"\u91CD\u7F6E","search.filter.field.footer":"\u641C\u7D22\u4EE5\u663E\u793A\u66F4\u591A\u9879\u76EE...","search.error.title":"\u54CE\u5440\uFF01\u51FA\u9519\u4E86\u3002","search.error.button":"\u91CD\u8BD5","search.ai.newConversation":"\u65B0\u5BF9\u8BDD","search.ai.scrollToBottom":"\u6EDA\u52A8\u5230\u5E95\u90E8","search.ai.welcomeText":"\u6B22\u8FCE\u4F7F\u7528 AI \u52A9\u624B\uFF01\u60A8\u53EF\u4EE5\u95EE\u6211\u4EFB\u4F55\u95EE\u9898\u3002\u6211\u80FD\u4E3A\u60A8\u63D0\u4F9B\u4EC0\u4E48\u5E2E\u52A9\uFF1F","search.ai.placeholder":"\u63D0\u95EE...","search.ai.back":"\u8FD4\u56DE","search.ai.generatingResponse":"\u6B63\u5728\u751F\u6210\u56DE\u590D...","search.ai.followUpQuestion":"\u63D0\u51FA\u540E\u7EED\u95EE\u9898\uFF1F","search.ai.send":"\u53D1\u9001\u95EE\u9898","search.ai.suggestionsTitle":"\u5EFA\u8BAE","search.ai.thinkingText":"\u601D\u8003\u4E2D...","search.ai.resourcesFound":"\u627E\u5230\u8D44\u6E90","search.ai.resourcesFound.basedOn":"\u57FA\u4E8E","search.ai.resourcesFound.resources":"\u8D44\u6E90","search.ai.toolCall.executed":"\u5DF2\u6267\u884C","search.ai.toolCall.executing":"\u6267\u884C\u4E2D","search.ai.toolCall.usedTools":"\u4F7F\u7528\u7684\u5DE5\u5177","search.ai.toolCall.searchDocumentation.inProgress":"\u6B63\u5728\u641C\u7D22\u6587\u6863...","search.ai.toolCall.searchDocumentation.completed":"\u5DF2\u641C\u7D22\u6587\u6863","search.ai.toolCall.listApis.inProgress":"\u6B63\u5728\u6D4F\u89C8 API...","search.ai.toolCall.listApis.completed":"\u5DF2\u6D4F\u89C8 API","search.ai.toolCall.getEndpoints.inProgress":"\u6B63\u5728\u6D4F\u89C8 API \u7684\u7AEF\u70B9...","search.ai.toolCall.getEndpoints.completed":"\u5DF2\u6D4F\u89C8 API \u7684\u7AEF\u70B9","search.ai.toolCall.getEndpointInfo.inProgress":"\u6B63\u5728\u8BFB\u53D6\u7AEF\u70B9\u8BE6\u60C5...","search.ai.toolCall.getEndpointInfo.completed":"\u5DF2\u8BFB\u53D6\u7AEF\u70B9\u8BE6\u60C5","search.ai.toolCall.getSecuritySchemes.inProgress":"\u6B63\u5728\u6D4F\u89C8 API \u7684\u5B89\u5168\u65B9\u6848...","search.ai.toolCall.getSecuritySchemes.completed":"\u5DF2\u6D4F\u89C8 API \u7684\u5B89\u5168\u65B9\u6848","search.ai.toolCall.getFullApiDescription.inProgress":"\u6B63\u5728\u8BFB\u53D6 API \u63CF\u8FF0...","search.ai.toolCall.getFullApiDescription.completed":"\u5DF2\u8BFB\u53D6 API \u63CF\u8FF0","search.ai.toolCall.execute.inProgress":"\u6B63\u5728\u8FD0\u884C\u4EE3\u7801...","search.ai.toolCall.execute.completed":"\u5DF2\u8FD0\u884C\u4EE3\u7801","search.ai.toolCall.discoverTools.inProgress":"\u6B63\u5728\u53D1\u73B0\u53EF\u7528\u5DE5\u5177...","search.ai.toolCall.discoverTools.completed":"\u5DF2\u53D1\u73B0\u53EF\u7528\u5DE5\u5177","search.ai.toolCall.contactSupport.inProgress":"\u6B63\u5728\u6253\u5F00\u8054\u7CFB\u652F\u6301\u9009\u9879...","search.ai.toolCall.contactSupport.completed":"\u5DF2\u63D0\u4F9B\u8054\u7CFB\u652F\u6301\u7684\u9009\u9879","search.ai.feedback.title":"\u60A8\u4E0D\u559C\u6B22\u6B64\u56DE\u590D\u7684\u54EA\u4E9B\u65B9\u9762\uFF1F","search.ai.feedback.detailsPlaceholder":"\u6DFB\u52A0\u5177\u4F53\u7EC6\u8282","search.ai.feedback.thanks":"\u611F\u8C22\u60A8\u7684\u53CD\u9988\uFF01","search.ai.feedback.more":"\u66F4\u591A...","search.ai.actions.copy":"\u590D\u5236\u56DE\u7B54","search.ai.actions.like":"\u8D5E\u8FD9\u4E2A\u56DE\u7B54","search.ai.actions.dislike":"\u8E29\u8FD9\u4E2A\u56DE\u7B54","search.ai.label":"\u8BE2\u95EE AI \u52A9\u624B","search.ai.button":"\u4F7F\u7528 AI \u641C\u7D22","search.ai.backToSearch":"\u8FD4\u56DE\u641C\u7D22","search.ai.assistant":"\u52A9\u624B","search.ai.disclaimer":"AI \u52A9\u624B\u53EF\u80FD\u63D0\u4F9B\u4E0D\u5B8C\u6574\u6216\u4E0D\u6B63\u786E\u7684\u7ED3\u679C\u3002\u8BF7\u6838\u5B9E\u91CD\u8981\u4FE1\u606F\u3002","search.ai.error.description":"\u6211\u4EEC\u5728\u5904\u7406\u60A8\u7684\u641C\u7D22\u65F6\u9047\u5230\u95EE\u9898\u3002\u8BF7\u7A0D\u540E\u518D\u8BD5\u6216\u4F18\u5316\u60A8\u7684\u67E5\u8BE2\u3002\u5982\u679C\u95EE\u9898\u4ECD\u7136\u5B58\u5728\uFF0C\u8BF7\u8054\u7CFB Redocly \u652F\u6301\u3002","search.ai.error.description.forbidden":"AI \u52A9\u624B\u5F53\u524D\u4E0D\u53EF\u7528\u3002","search.ai.error.description.unauthorized":"\u60A8\u65E0\u6743\u4F7F\u7528 AI \u52A9\u624B\u3002","search.ai.error.header":"\u54CE\u5440\uFF01\u51FA\u9519\u4E86\u3002","search.ai.error.header.forbidden":"\u529F\u80FD\u4E0D\u53EF\u7528","search.ai.error.header.unauthorized":"\u9700\u8981\u8EAB\u4EFD\u9A8C\u8BC1","aiAssistant.trigger":"\u8BE2\u95EE AI","toc.header":"\u5728\u672C\u9875","footer.copyrightText":"","consent.title":"\u6211\u4EEC\u91CD\u89C6\u60A8\u7684\u9690\u79C1","consent.message":'\u9009\u62E9"\u63A5\u53D7\u6240\u6709 Cookie"\uFF0C\u5373\u8868\u793A\u60A8\u540C\u610F\u4F7F\u7528 Cookie \u6765\u6539\u5584\u7F51\u7AD9\u5BFC\u822A\u3001\u4E86\u89E3\u7F51\u7AD9\u4F7F\u7528\u60C5\u51B5\u5E76\u652F\u6301\u6211\u4EEC\u7684\u8425\u9500\u5DE5\u4F5C\u3002\u9009\u62E9"\u81EA\u5B9A\u4E49"\u4EE5\u9009\u62E9\u5141\u8BB8\u7684 Cookie \u7C7B\u578B\u3002',"consent.privacyPolicy":"\u9690\u79C1\u653F\u7B56","consent.customize":"\u81EA\u5B9A\u4E49","consent.rejectAll":"\u5168\u90E8\u62D2\u7EDD","consent.acceptAll":"\u5168\u90E8\u63A5\u53D7","consent.acceptAllCookies":"\u63A5\u53D7\u6240\u6709 Cookie","consent.savePreferences":"\u4FDD\u5B58\u504F\u597D","consent.dialog.title":"Cookie \u504F\u597D","consent.dialog.description":"\u9009\u62E9\u672C\u7F51\u7AD9\u53EF\u4EE5\u4F7F\u7528\u7684 Cookie\u3002\u60A8\u53EF\u4EE5\u968F\u65F6\u66F4\u6539\u9009\u62E9\u3002","consent.dialog.close":"\u5173\u95ED","consent.alwaysOn":"\u59CB\u7EC8\u5F00\u542F","consent.alwaysOff":"\u59CB\u7EC8\u5173\u95ED","consent.gpcNotice":"\u60A8\u7684\u6D4F\u89C8\u5668\u8981\u6C42\u6211\u4EEC\u4E0D\u8981\u5171\u4EAB\u60A8\u7684\u6570\u636E\uFF0C\u56E0\u6B64\u6B64\u9879\u4FDD\u6301\u5173\u95ED\u3002","consent.category.necessary.title":"\u5FC5\u8981","consent.category.necessary.description":"\u7F51\u7AD9\u8FD0\u884C\u6240\u9700\uFF1A\u60A8\u7684\u540C\u610F\u9009\u62E9\u3001\u989C\u8272\u6A21\u5F0F\u548C\u533F\u540D\u4F7F\u7528\u6570\u636E\u3002","consent.category.analytics.title":"\u5206\u6790","consent.category.analytics.description":"\u5E2E\u52A9\u6211\u4EEC\u4E86\u89E3\u54EA\u4E9B\u9875\u9762\u6709\u7528\u3002","consent.category.marketing.title":"\u8425\u9500","consent.category.marketing.description":"\u8BA9\u6211\u4EEC\u8861\u91CF\u54EA\u4E9B\u6D3B\u52A8\u4E3A\u672C\u7F51\u7AD9\u5E26\u6765\u8BBF\u5BA2\u3002","consent.settingsLink":"Cookie \u504F\u597D","page.homeButton":"\u8FD4\u56DE\u9996\u9875","page.forbidden.title":"\u7981\u6B62\u8BBF\u95EE","page.forbidden.description":"\u60A8\u6CA1\u6709\u6743\u9650\u8BBF\u95EE\u6B64\u9875\u9762\u3002\u5982\u679C\u60A8\u8BA4\u4E3A\u8FD9\u662F\u4E00\u4E2A\u9519\u8BEF\uFF0C\u8054\u7CFB\u60A8\u7684\u7BA1\u7406\u5458\u6216\u8FD4\u56DE\u9996\u9875\u3002","page.notFound.title":"\u5185\u5BB9\u4E22\u5931\u4E86...","page.notFound.description":"\u60A8\u5C1D\u8BD5\u8BBF\u95EE\u7684\u9875\u9762\u4E0D\u5B58\u5728\u6216\u53EF\u80FD\u5DF2\u88AB\u79FB\u52A8\u3002\u60A8\u53EF\u4EE5\u8FD4\u56DE\u4E0A\u4E00\u9875\u3001\u8FD4\u56DE\u9996\u9875\u6216\u4F7F\u7528\u641C\u7D22\u680F\u67E5\u627E\u6240\u9700\u5185\u5BB9\u3002","page.lastUpdated.timeago":"\u6700\u540E\u66F4\u65B0\u4E8E","page.lastUpdated.on":"\u6700\u540E\u66F4\u65B0\u4E8E","page.apiNotFound.title":"\u6B64\u5730\u5740\u6CA1\u6709\u9875\u9762","page.apiNotFound.description":"\u627E\u4E0D\u5230\u9875\u9762","page.apiNotFound.hint":"\u8BE5\u9875\u9762\u53EF\u80FD\u5DF2\u88AB\u79FB\u52A8\u6216\u5220\u9664\u3002","page.apiNotFound.backButton":"\u8FD4\u56DE\u6587\u6863","page.mcpNotAllowed.title":"\u8FDE\u63A5 MCP \u670D\u52A1\u5668","page.mcpNotAllowed.description":"\u8981\u4F7F\u7528\u6B64 MCP \u670D\u52A1\u5668\uFF0C\u8BF7\u5728\u60A8\u7684 MCP \u5BA2\u6237\u7AEF\uFF08\u4F8B\u5982\uFF1AVS Code\u3001Cursor \u6216 Claude Code\uFF09\u4E2D\u6CE8\u518C\u5B83\u3002","page.mcpNotAllowed.publicNote":"\u6B64\u7AEF\u70B9\u4EC5\u63D0\u4F9B\u516C\u5F00\u53EF\u7528\u7684\u5185\u5BB9\uFF0C\u65E0\u9700\u767B\u5F55\u3002","page.mcpNotAllowed.publicEndpointHint":"\u5982\u9700\u5728\u65E0\u8D26\u6237\u7684\u60C5\u51B5\u4E0B\u533F\u540D\u8FDE\u63A5\uFF0C\u8BF7\u4F7F\u7528<link>\u516C\u5171\u7AEF\u70B9</link>\u3002","page.mcpNotAllowed.mainEndpointHint":"\u5982\u9700\u8BBF\u95EE\u60A8\u8D26\u6237\u53EF\u7528\u7684\u5185\u5BB9\uFF0C\u8BF7\u4F7F\u7528<link>\u4E3B MCP \u7AEF\u70B9</link>\u3002","page.mcpNotAllowed.snippets.terminal.hint":"\u5728\u7EC8\u7AEF\u4E2D\u8FD0\u884C\u6B64\u547D\u4EE4\uFF1A","page.mcpNotAllowed.snippets.claudeCode.headline":"Claude Code","page.mcpNotAllowed.snippets.claudeDesktop.headline":"Claude \u5E94\u7528","page.mcpNotAllowed.snippets.claudeDesktop.accountHint":"Claude \u4F1A\u5C06\u8FDE\u63A5\u5668\u6DFB\u52A0\u5230\u60A8\u7684\u5E10\u6237\uFF0C\u5E76\u5728\u7F51\u9875\u7248 Claude \u548C Claude Desktop \u4E4B\u95F4\u540C\u6B65\u3002","page.mcpNotAllowed.snippets.claudeDesktop.instruction":"\u6216\u8005\u6253\u5F00\u201C\u81EA\u5B9A\u4E49 \u2192 \u8FDE\u63A5\u5668 \u2192 \u6DFB\u52A0\u81EA\u5B9A\u4E49\u8FDE\u63A5\u5668\u201D\uFF0C\u7136\u540E\u7C98\u8D34\u6B64\u670D\u52A1\u5668 URL\uFF1A","page.mcpNotAllowed.snippets.chatgptApp.headline":"ChatGPT \u684C\u9762\u5E94\u7528","page.mcpNotAllowed.snippets.chatgptApp.instruction":'\u5728 ChatGPT \u684C\u9762\u5E94\u7528\u4E2D\uFF0C\u8FDB\u5165\u8BBE\u7F6E \u2192 \u63D2\u4EF6 \u2192 MCPs\uFF0C\u4F7F\u7528"Streamable HTTP"\u7C7B\u578B\u548C\u6B64 URL \u6DFB\u52A0\u670D\u52A1\u5668\uFF08\u4E4B\u540E\u91CD\u542F\u5E94\u7528\uFF09\uFF1A',"page.mcpNotAllowed.snippets.codexCli.headline":"Codex CLI","page.mcpNotAllowed.snippets.grokBuild.headline":"Grok Build","page.mcpNotAllowed.snippets.grokApp.headline":"Grok \u5E94\u7528","page.mcpNotAllowed.snippets.grokApp.instruction":"\u5728 grok.com \u4E0A\u6253\u5F00\u201CConnectors \u2192 New Connector \u2192 Custom\u201D\uFF0C\u7136\u540E\u7C98\u8D34\u6B64\u670D\u52A1\u5668 URL\uFF1A","page.mcpNotAllowed.snippets.grokApp.openConnectors":"\u6253\u5F00 Grok \u8FDE\u63A5\u5668","page.mcpNotAllowed.snippets.prompt.headline":"\u63D0\u793A\u8BCD","page.mcpNotAllowed.snippets.prompt.hint":"\u4E5F\u53EF\u4EE5\u5C06\u6B64\u63D0\u793A\u8BCD\u7C98\u8D34\u5230\u804A\u5929\u4E2D\uFF0C\u5B83\u4F1A\u4E3A\u60A8\u81EA\u52A8\u6DFB\u52A0\u670D\u52A1\u5668\uFF1A","page.mcpNotAllowed.snippets.json.hint":"\u5C06\u6B64\u670D\u52A1\u5668\u6761\u76EE\u6DFB\u52A0\u5230\u60A8\u7684 MCP \u5BA2\u6237\u7AEF\u914D\u7F6E\u6587\u4EF6\u4E2D\uFF1A","page.mcpNotAllowed.tabs.claude":"Claude","page.mcpNotAllowed.tabs.chatgpt":"ChatGPT","page.mcpNotAllowed.tabs.grok":"Grok","page.mcpNotAllowed.tabs.json":"JSON","catalog.filters.title":"\u7B5B\u9009\u5668","catalog.filters.add":"\u6DFB\u52A0\u7B5B\u9009\u5668","catalog.filters.placeholder":"\u8F93\u5165\u4EE5\u7B5B\u9009...","catalog.filters.clearAll":"\u6E05\u9664\u6240\u6709\u7B5B\u9009\u5668","catalog.filters.select.addFilter":"\u6DFB\u52A0\u7B5B\u9009\u5668","catalog.filters.select.all":"\u5168\u90E8","catalog.filters.done":"\u5B8C\u6210","filter.dateRange.from":"\u4ECE:","filter.dateRange.to":"\u5230:","navigationTabs.label":"\u5BFC\u822A\u6807\u7B7E\u9875","sidebar.menu.backLabel":"\u8FD4\u56DE","sidebar.menu.backToLabel":"\u8FD4\u56DE {{value}}","sidebar.actions.show":"\u663E\u793A\u4FA7\u8FB9\u680F","sidebar.actions.hide":"\u9690\u85CF\u4FA7\u8FB9\u680F","sidebar.actions.changeToSingleColumn":"\u5207\u6362\u5230\u5355\u5217","sidebar.actions.changeToTwoColumns":"\u5207\u6362\u5230\u53CC\u5217","sidebar.actions.singleColumn":"\u5355\u5217","sidebar.actions.twoColumns":"\u4E24\u5217","versionPicker.label":"\u7248\u672C\uFF1A","versionPicker.unversioned":"\u6240\u6709\u7248\u672C","codeSnippet.copy.buttonText":"\u5DF2\u590D\u5236\uFF01","codeSnippet.copy.tooltipText":"\u590D\u5236\u5230\u526A\u8D34\u677F","codeSnippet.copy.toasterText":"\u590D\u5236","codeSnippet.expand.tooltipText":"\u5168\u90E8\u5C55\u5F00","codeSnippet.collapse.tooltipText":"\u5168\u90E8\u6298\u53E0","markdown.editPage.text":"\u7F16\u8F91","feedback.settings.comment.submitText":"\u611F\u8C22\u60A8\u5E2E\u52A9\u6539\u8FDB\u6211\u4EEC\u7684\u6587\u6863\uFF01","feedback.settings.comment.label":"\u8BF7\u4E0E\u6211\u4EEC\u5206\u4EAB\u60A8\u7684\u53CD\u9988\u3002","feedback.settings.comment.send":"\u53D1\u9001","feedback.settings.comment.cancel":"\u53D6\u6D88","feedback.settings.comment.maxLength":"\u5DF2\u8FBE\u5230\u5185\u5BB9\u6700\u5927\u957F\u5EA6{{maxLength}}\u4E2A\u5B57\u7B26","feedback.settings.comment.satisfiedLabel":"\u6700\u6709\u5E2E\u52A9\u7684\u662F\u4EC0\u4E48\uFF1F","feedback.settings.comment.neutralLabel":"\u6211\u4EEC\u53EF\u4EE5\u6539\u8FDB\u4EC0\u4E48\uFF1F","feedback.settings.comment.dissatisfiedLabel":"\u6211\u4EEC\u53EF\u4EE5\u6539\u8FDB\u4EC0\u4E48\uFF1F","feedback.settings.submitText":"\u611F\u8C22\u60A8\u7684\u53CD\u9988\uFF01","feedback.settings.label":"\u8FD9\u6709\u5E2E\u52A9\u5417\uFF1F","feedback.settings.reasons.label":"\u54EA\u9879\u9648\u8FF0\u63CF\u8FF0\u4E86\u60A8\u5BF9\u6B64\u9875\u9762\u7684\u770B\u6CD5\uFF1F","feedback.submit":"\u63D0\u4EA4","feedback.cancel":"\u53D6\u6D88","feedback.settings.comment.likeLabel":"\u6700\u6709\u5E2E\u52A9\u7684\u662F\u4EC0\u4E48\uFF1F","feedback.settings.comment.dislikeLabel":"\u6211\u4EEC\u53EF\u4EE5\u6539\u8FDB\u4EC0\u4E48\uFF1F","feedback.sentiment.thumbUp":"\u8D5E","feedback.sentiment.thumbDown":"\u8E29","feedback.settings.leftScaleLabel":"\u5B8C\u5168\u6CA1\u6709\u5E2E\u52A9","feedback.settings.rightScaleLabel":"\u975E\u5E38\u6709\u5E2E\u52A9","feedback.settings.optionalEmail.label":"\u60A8\u7684\u7535\u5B50\u90AE\u4EF6\uFF08\u53EF\u9009\uFF0C\u7528\u4E8E\u8DDF\u8FDB\uFF09","feedback.settings.optionalEmail.placeholder":"yourname@example.com","jsonViewer.showMore":"\u663E\u793A\u66F4\u591A","jsonViewer.showLess":"\u663E\u793A\u66F4\u5C11","codeSnippet.report.buttonText":"\u62A5\u544A","codeSnippet.report.tooltipText":"\u62A5\u544A\u95EE\u9898","codeSnippet.report.label":"\u6B64\u4EE3\u7801\u6709\u4EC0\u4E48\u95EE\u9898\uFF1F","userMenu.login":"\u767B\u5F55","userMenu.logout":"\u6CE8\u9500","userMenu.devOnboardingLabel":"\u6211\u7684\u5E94\u7528\u7A0B\u5E8F","mobileMenu.mainMenu":"\u4E3B\u83DC\u5355","mobileMenu.previous":"\u4E0A\u4E00\u6B65","mobileMenu.products":"\u4EA7\u54C1","mobileMenu.version":"\u7248\u672C","page.nextButton":"\u4E0B\u4E00\u9875","page.previousButton":"\u4E0A\u4E00\u9875","page.actions.moreActions":"\u66F4\u591A\u64CD\u4F5C","promptTag.copy.buttonText":"\u590D\u5236\u63D0\u793A\u8BCD","promptTag.copy.description":"\u5C06\u6B64\u63D0\u793A\u8BCD\u590D\u5236\u5230\u526A\u8D34\u677F","promptTag.showPrompt":"\u663E\u793A\u63D0\u793A\u8BCD","promptTag.hidePrompt":"\u9690\u85CF\u63D0\u793A\u8BCD","promptTag.showFullPrompt":"\u663E\u793A\u5B8C\u6574\u63D0\u793A\u8BCD","promptTag.showLess":"\u6536\u8D77","promptTag.openIn.cursor":"\u5728 Cursor \u4E2D\u6253\u5F00","promptTag.openIn.cursorDescription":"\u5C06\u6B64\u63D0\u793A\u8BCD\u53D1\u9001\u5230 Cursor","promptTag.openIn.claude":"\u5728 Claude \u4E2D\u6253\u5F00","promptTag.openIn.claudeDescription":"\u5C06\u6B64\u63D0\u793A\u8BCD\u53D1\u9001\u5230 Claude","promptTag.openIn.chatgpt":"\u5728 ChatGPT \u4E2D\u6253\u5F00","promptTag.openIn.chatgptDescription":"\u5C06\u6B64\u63D0\u793A\u8BCD\u53D1\u9001\u5230 ChatGPT","page.actions.copyButtonText":"\u590D\u5236","page.actions.copyTitle":"\u4E3A LLM \u590D\u5236","page.actions.copyDescription":"\u5C06\u9875\u9762\u590D\u5236\u4E3A LLM \u7684 Markdown \u683C\u5F0F","page.actions.viewAsMdButtonText":"\u67E5\u770B Markdown","page.actions.viewAsMdTitle":"\u67E5\u770B Markdown","page.actions.viewAsMdDescription":"\u4EE5 Markdown \u683C\u5F0F\u6253\u5F00\u6B64\u9875\u9762","page.actions.chatGptButtonText":"\u5728 ChatGPT \u4E2D\u6253\u5F00","page.actions.chatGptTitle":"\u5728 ChatGPT \u4E2D\u6253\u5F00","page.actions.chatGptDescription":"\u4ECE ChatGPT \u83B7\u53D6\u89C1\u89E3","page.actions.claudeButtonText":"\u5728 Claude \u4E2D\u6253\u5F00","page.actions.claudeTitle":"\u5728 Claude \u4E2D\u6253\u5F00","page.actions.claudeDescription":"\u4ECE Claude \u83B7\u53D6\u89C1\u89E3","page.actions.grokButtonText":"\u5728 Grok \u4E2D\u6253\u5F00","page.actions.grokTitle":"\u5728 Grok \u4E2D\u6253\u5F00","page.actions.grokDescription":"\u4ECE Grok \u83B7\u53D6\u89C1\u89E3","page.actions.cursorMcpButtonText":"\u8FDE\u63A5\u5230 Cursor","page.actions.cursorMcpTitle":"\u8FDE\u63A5\u5230 Cursor","page.actions.cursorMcpDescription":"\u5728 Cursor \u4E0A\u5B89\u88C5 MCP \u670D\u52A1\u5668","page.actions.connectMcp":"\u8FDE\u63A5 MCP","page.actions.connectMcp.cursor":"\u8FDE\u63A5\u5230 Cursor","page.actions.connectMcp.cursorDescription":"\u5728 Cursor \u4E0A\u5B89\u88C5 MCP \u670D\u52A1\u5668","page.actions.connectMcp.vscode":"\u8FDE\u63A5\u5230 VS Code","page.actions.connectMcp.vscodeDescription":"\u5728 VS Code \u4E0A\u5B89\u88C5 MCP \u670D\u52A1\u5668","page.actions.connectMcp.claude":"\u8FDE\u63A5\u5230 Claude","page.actions.connectMcp.claudeDescription":"\u5C06 MCP \u670D\u52A1\u5668\u6DFB\u52A0\u5230\u60A8\u7684 Claude \u5E10\u6237","page.actions.connectMcp.claudeCode":"\u8FDE\u63A5\u5230 Claude Code","page.actions.connectMcp.claudeCodeDescription":"\u590D\u5236 Claude Code CLI \u547D\u4EE4","page.actions.connectMcp.codex":"\u8FDE\u63A5\u5230 Codex CLI","page.actions.connectMcp.codexDescription":"\u590D\u5236 Codex CLI \u547D\u4EE4","page.actions.connectMcp.copyConfig":"\u590D\u5236 MCP \u914D\u7F6E","page.actions.connectMcp.copyConfigDescription":"\u590D\u5236 MCP JSON \u914D\u7F6E","page.actions.connectMcp.copyUrl":"\u590D\u5236 MCP \u670D\u52A1\u5668 URL","page.actions.connectMcp.copyUrlDescription":"\u5C06 MCP \u670D\u52A1\u5668 URL \u590D\u5236\u5230\u526A\u8D34\u677F","page.actions.connectMcp.moreOptions":"\u66F4\u591A\u9009\u9879","navbar.label":"\u4E3B\u5BFC\u822A","navbar.products":"\u4EA7\u54C1","openapi.download.description.title":"\u4E0B\u8F7D OpenAPI \u63CF\u8FF0","openapi.info.title":"\u6982\u8FF0","openapi.info.contact.url":"URL","openapi.info.contact.name":"\u7535\u5B50\u90AE\u4EF6","openapi.info.license":"\u8BB8\u53EF\u8BC1","openapi.info.termsOfService":"\u670D\u52A1\u6761\u6B3E","openapi.info.metadata.title":"\u5143\u6570\u636E","graphql.info.metadata.title":"\u5143\u6570\u636E","button.download.tooltipText":"\u4E0B\u8F7D\u63CF\u8FF0","button.externalLink.tooltipText":"\u5728\u65B0\u6807\u7B7E\u9875\u4E2D\u6253\u5F00","button.email.tooltipText":"\u53D1\u9001\u90AE\u4EF6","openapi.key":"\u952E","openapi.value":"\u503C","openapi.enum":"\u679A\u4E3E","openapi.items":"\u9879","openapi.default":"\u9ED8\u8BA4\u503C","openapi.variable":"\u53D8\u91CF","openapi.variables":"\u53D8\u91CF","openapi.actions.show":"\u663E\u793A","openapi.actions.hide":"\u9690\u85CF","openapi.actions.more":"\u66F4\u591A","openapi.languages.title":"\u8BED\u8A00","openapi.languages.moreButton.tooltipText":"\u67E5\u770B\u66F4\u591A\u8BED\u8A00","openapi.servers.title":"\u670D\u52A1\u5668","openapi.operations":"\u64CD\u4F5C","openapi.schemas":"\u6A21\u5F0F","openapi.webhooks":"Webhook","openapi.description":"\u63CF\u8FF0","openapi.badges.deprecated":"\u5DF2\u5F03\u7528","openapi.badges.required":"\u5FC5\u9700","openapi.badges.webhook":"Webhook","openapi.request":"\u8BF7\u6C42","openapi.path":"\u8DEF\u5F84","openapi.query":"\u67E5\u8BE2","openapi.querystring":"\u67E5\u8BE2\u5B57\u7B26\u4E32","openapi.cookie":"Cookie","openapi.header":"\u6807\u5934","openapi.body":"\u6B63\u6587","openapi.responses":"\u54CD\u5E94","openapi.response":"\u54CD\u5E94","openapi.callbacks":"\u56DE\u8C03","openapi.callbackRequest":"\u56DE\u8C03\u8BF7\u6C42","openapi.callbackResponse":"\u56DE\u8C03\u54CD\u5E94","openapi.payload":"\u8BF7\u6C42\u4F53","openapi.discriminator":"\u9274\u522B\u5668","openapi.contentType":"\u5185\u5BB9\u7C7B\u578B","openapi.tryIt":"\u8BD5\u7528","openapi.loading":"\u52A0\u8F7D\u4E2D...","openapi.tryItLoadFailed":"\u65E0\u6CD5\u52A0\u8F7D\u201C\u8BD5\u7528\u201D\u3002","openapi.reloadPage":"\u91CD\u65B0\u52A0\u8F7D\u9875\u9762","openapi.example":"\u793A\u4F8B","openapi.examples":"\u793A\u4F8B","openapi.additionalProperties":"\u9644\u52A0\u5C5E\u6027","openapi.patternProperties":"\u6A21\u5F0F\u5C5E\u6027","openapi.required":"\u5FC5\u9700","openapi.recursive":"\u9012\u5F52","openapi.complex":"\u590D\u6742","openapi.property":"\u5C5E\u6027","openapi.properties":"\u5C5E\u6027","openapi.details":"\u8BE6\u7EC6\u4FE1\u606F","openapi.hideExample":"\u9690\u85CF\u793A\u4F8B","openapi.showExample":"\u663E\u793A\u793A\u4F8B","openapi.expandAll":"\u5168\u90E8\u5C55\u5F00","openapi.deepLink.tooltip":"\u94FE\u63A5\u5230\u6B64\u90E8\u5206","openapi.collapseAll":"\u5168\u90E8\u6298\u53E0","openapi.viewSecurityDetails":"\u67E5\u770B\u5B89\u5168\u8BE6\u60C5","openapi.noResponseExample":"\u65E0\u54CD\u5E94\u793A\u4F8B","openapi.discriminator.searchPlaceholder":"\u641C\u7D22\u9879\u76EE","openapi.discriminator.searchNoResults":"\u672A\u627E\u5230\u9879\u76EE","openapi.discriminator.defaultMapping":"\u9ED8\u8BA4\u6620\u5C04","openapi.discriminator.defaultMappingTooltip":"OpenAPI 3.2\uFF1A\u5F53\u5176\u4ED6\u6620\u5C04\u4E0D\u5339\u914D\u65F6\u4F7F\u7528\u9ED8\u8BA4\u6620\u5C04\u3002","openapi.noResponseContent":"\u65E0\u5185\u5BB9","openapi.noRequestPayload":"\u65E0\u8BF7\u6C42\u6709\u6548\u8D1F\u8F7D","openapi.noRequestData":"\u65E0\u8BF7\u6C42\u6570\u636E","openapi.hidePattern":"\u9690\u85CF\u6A21\u5F0F","openapi.showPattern":"\u663E\u793A\u6A21\u5F0F","openapi.authorizationUrl":"\u6388\u6743 URL","openapi.tokenUrl":"\u4EE4\u724C URL","openapi.refreshUrl":"\u5237\u65B0 URL","openapi.showOptionalScopes":"\u663E\u793A\u53EF\u9009\u8303\u56F4","openapi.hideOptionalScopes":"\u9690\u85CF\u53EF\u9009\u8303\u56F4","openapi.security":"\u5B89\u5168","openapi.httpAuthorizationScheme":"HTTP \u6388\u6743\u65B9\u6848","openapi.bearerFormat":"Bearer \u683C\u5F0F","openapi.parameterName":"\u53C2\u6570\u540D\u79F0","openapi.flowType":"\u6D41\u7C7B\u578B","openapi.connectUrl":"\u8FDE\u63A5 URL","openapi.requiredScopes":"\u5FC5\u9700\u8303\u56F4","openapi.unsupportedLanguage":"\u4E0D\u652F\u6301\u8BE5\u8BED\u8A00\u3002","openapi.failedToGenerateCodeSample":"\u65E0\u6CD5\u751F\u6210\u4EE3\u7801\u793A\u4F8B\u3002","openapi.schemaCatalogLink.title":"\u5171\u4EAB\u67B6\u6784","openapi.schemaCatalogLink.copyButtonTooltip":"\u590D\u5236\u5230\u526A\u8D34\u677F","openapi.schemaCatalogLink.copiedTooltip":"\u5DF2\u590D\u5236\uFF01","openapi.mcp.title":"MCP server","openapi.mcp.endpoint":"Endpoint","openapi.mcp.tools":"MCP \u5DE5\u5177","openapi.mcp.protocolVersion":"\u534F\u8BAE\u7248\u672C","openapi.mcp.capabilities":"\u80FD\u529B","openapi.mcp.experimentalCapabilities":"\u5B9E\u9A8C\u6027\u80FD\u529B","openapi.mcp.inputSchema":"\u8F93\u5165\u67B6\u6784","openapi.mcp.inputExample":"\u8F93\u5165\u793A\u4F8B","openapi.mcp.outputSchema":"\u8F93\u51FA\u67B6\u6784","openapi.mcp.outputExample":"\u8F93\u51FA\u793A\u4F8B","openapi.mcp.exampleTitle":"\u8D44\u6E90\u5185\u5BB9","openapi.mcp.argumentsExample":"\u53C2\u6570\u793A\u4F8B","asyncapi.download.description.title":"\u4E0B\u8F7D AsyncAPI \u63CF\u8FF0","asyncapi.info.title":"\u6982\u8FF0","asyncapi.info.contact.url":"URL","asyncapi.info.contact.name":"\u7535\u5B50\u90AE\u4EF6","asyncapi.info.license":"\u8BB8\u53EF\u8BC1","asyncapi.info.termsOfService":"\u670D\u52A1\u6761\u6B3E","asyncapi.key":"\u952E","asyncapi.value":"\u503C","asyncapi.variables":"\u53D8\u91CF","asyncapi.required":"\u5FC5\u9700","asyncapi.badges.deprecated":"\u5DF2\u5F03\u7528","asyncapi.viewSecurityDetails":"\u67E5\u770B\u5B89\u5168\u8BE6\u60C5","asyncapi.requiredScopes":"\u5FC5\u9700\u8303\u56F4","graphql.download.description.title":"\u4E0B\u8F7D GraphQL \u67B6\u6784","graphql.info.title":"\u6982\u8FF0","graphql.info.contact.url":"URL","graphql.info.contact.name":"\u7535\u5B50\u90AE\u4EF6","graphql.info.license":"\u8BB8\u53EF\u8BC1","graphql.info.termsOfService":"\u670D\u52A1\u6761\u6B3E","graphql.overview":"GraphQL \u6982\u8FF0","graphql.metadata":"\u5143\u6570\u636E","graphql.key":"\u952E","graphql.value":"\u503C","graphql.queries":"\u67E5\u8BE2","graphql.mutations":"\u53D8\u66F4","graphql.subscriptions":"\u8BA2\u9605","graphql.directives":"\u6307\u4EE4","graphql.objects":"\u5BF9\u8C61","graphql.interfaces":"\u63A5\u53E3","graphql.unions":"\u8054\u5408","graphql.enums":"\u679A\u4E3E","graphql.inputs":"\u8F93\u5165","graphql.scalars":"\u6807\u91CF","graphql.fields":"\u5B57\u6BB5","graphql.inputFields":"\u8F93\u5165\u5B57\u6BB5","graphql.values":"\u503C","graphql.actions.show":"\u663E\u793A","graphql.actions.hide":"\u9690\u85CF","graphql.actions.more":"\u66F4\u591A","graphql.arguments.label":"\u53C2\u6570","graphql.arguments.show":"\u663E\u793A\u53C2\u6570","graphql.arguments.hide":"\u9690\u85CF\u53C2\u6570","graphql.arguments.here":"\u53C2\u6570\u5728\u6B64","graphql.returnTypes.label":"\u7ED3\u679C\u7C7B\u578B","graphql.returnTypes.show":"\u663E\u793A\u7ED3\u679C\u7C7B\u578B","graphql.returnTypes.hide":"\u9690\u85CF\u7ED3\u679C\u7C7B\u578B","graphql.possibleTypes":"\u53EF\u80FD\u7684\u7C7B\u578B","graphql.defaultValue":"\u9ED8\u8BA4\u503C","graphql.deprecationReason":"\u5F03\u7528\u539F\u56E0","graphql.requiredScopes":"\u5FC5\u9700\u8303\u56F4","graphql.viewSecurityDetails":"\u67E5\u770B\u8BE6\u7EC6\u4FE1\u606F","graphql.objectScopes":"\u5BF9\u8C61\u8303\u56F4","graphql.fieldScopes":"\u5B57\u6BB5\u8303\u56F4","graphql.implementedInterfaces":"\u5B9E\u73B0\u7684\u63A5\u53E3","graphql.implementedBy":"\u5B9E\u73B0\u7C7B\u578B","graphql.nonNull":"\u975E\u7A7A","graphql.required":"\u5FC5\u9700","graphql.badges.deprecated":"\u5DF2\u5F03\u7528","asyncapi.actions.show":"\u663E\u793A","asyncapi.actions.hide":"\u9690\u85CF","asyncapi.actions.more":"\u66F4\u591A","asyncapi.payload":"\u8D1F\u8F7D","asyncapi.parameters":"\u53C2\u6570","asyncapi.messages":"\u6D88\u606F","asyncapi.contentType":"\u5185\u5BB9\u7C7B\u578B","asyncapi.moreDetails":"\u66F4\u591A\u8BE6\u7EC6\u4FE1\u606F","asyncapi.property":"\u5C5E\u6027","asyncapi.properties":"\u5C5E\u6027","asyncapi.details":"\u8BE6\u7EC6\u4FE1\u606F","asyncapi.reply":"\u56DE\u590D","asyncapi.servers.title":"\u670D\u52A1\u5668","asyncapi.tryIt":"\u8BD5\u7528","asyncapi.loading":"\u52A0\u8F7D\u4E2D...","graphql.variables":"\u53D8\u91CF","graphql.querySample":"\u67E5\u8BE2\u793A\u4F8B","graphql.mutationSample":"\u53D8\u66F4\u793A\u4F8B","graphql.subscriptionSample":"\u8BA2\u9605\u793A\u4F8B","graphql.responseSample":"\u54CD\u5E94\u793A\u4F8B","graphql.locations":"\u4F4D\u7F6E","graphql.sample":"\u793A\u4F8B","graphql.referenced":"\u5F15\u7528\u4F4D\u7F6E","graphql.content.fragment":"\u7247\u6BB5","graphql.tryIt":"\u8BD5\u7528","graphql.loading":"\u52A0\u8F7D\u4E2D...","graphql.tryItLoadFailed":"\u65E0\u6CD5\u52A0\u8F7D\u201C\u8BD5\u7528\u201D\u3002","graphql.reloadPage":"\u91CD\u65B0\u52A0\u8F7D\u9875\u9762","codeWalkthrough.preview":"\u9884\u89C8","codeWalkthrough.download":"\u4E0B\u8F7D","time.justNow":"\u521A\u624D","time.past.second":"1 \u79D2\u524D","time.past.seconds":"{{value}} \u79D2\u524D","time.past.minute":"1 \u5206\u949F\u524D","time.past.minutes":"{{value}} \u5206\u949F\u524D","time.past.hour":"1 \u5C0F\u65F6\u524D","time.past.hours":"{{value}} \u5C0F\u65F6\u524D","time.past.day":"1 \u5929\u524D","time.past.days":"{{value}} \u5929\u524D","time.past.week":"1 \u5468\u524D","time.past.weeks":"{{value}} \u5468\u524D","time.past.month":"1 \u4E2A\u6708\u524D","time.past.months":"{{value}} \u4E2A\u6708\u524D","time.past.year":"1 \u5E74\u524D","time.past.years":"{{value}} \u5E74\u524D","page.internalServerError.title":"\u5185\u90E8\u670D\u52A1\u5668\u9519\u8BEF","page.internalServerError.description":"\u6211\u4EEC\u7684\u670D\u52A1\u5668\u51FA\u9519\u4E86\u3002\u8BF7\u7A0D\u540E\u518D\u8BD5\uFF0C\u5982\u679C\u95EE\u9898\u4ECD\u7136\u5B58\u5728\uFF0C\u8BF7\u8054\u7CFB\u652F\u6301\u4EBA\u5458\u3002","page.skipToContent.label":"\u8DF3\u8F6C\u5230\u5185\u5BB9","catalog.catalogs.label":"\u76EE\u5F55","catalog.catalogs.all.title":"\u5168\u90E8","catalog.catalogs.all.description":"\u6240\u6709\u5B9E\u4F53","catalog.catalogs.all.switcherLabel":"\u5168\u90E8","catalog.catalogs.service.title":"\u670D\u52A1","catalog.catalogs.service.description":"\u670D\u52A1\u5B9E\u4F53","catalog.catalogs.service.switcherLabel":"\u670D\u52A1","catalog.catalogs.user.title":"\u7528\u6237","catalog.catalogs.user.description":"\u7528\u6237\u5B9E\u4F53","catalog.catalogs.user.switcherLabel":"\u7528\u6237","catalog.catalogs.team.title":"\u56E2\u961F","catalog.catalogs.team.description":"\u56E2\u961F\u5B9E\u4F53","catalog.catalogs.team.switcherLabel":"\u56E2\u961F","catalog.catalogs.domain.title":"\u57DF","catalog.catalogs.domain.description":"\u57DF\u5B9E\u4F53","catalog.catalogs.domain.switcherLabel":"\u57DF","catalog.catalogs.apiDescription.title":"API \u63CF\u8FF0","catalog.catalogs.apiDescription.description":"API \u63CF\u8FF0\u5B9E\u4F53","catalog.catalogs.apiDescription.switcherLabel":"API \u63CF\u8FF0","catalog.catalogs.dataSchema.title":"\u6570\u636E\u6A21\u5F0F","catalog.catalogs.dataSchema.description":"\u6570\u636E\u6A21\u5F0F\u5B9E\u4F53","catalog.catalogs.dataSchema.switcherLabel":"\u6570\u636E\u6A21\u5F0F","catalog.catalogs.apiOperation.title":"API \u64CD\u4F5C","catalog.catalogs.apiOperation.description":"API \u64CD\u4F5C\u5B9E\u4F53","catalog.catalogs.apiOperation.switcherLabel":"API \u64CD\u4F5C","catalog.entity.metadata.title":"\u5143\u6570\u636E","catalog.entity.schema.title":"\u6A21\u5F0F","catalog.entity.properties.apiDescription.title":"API \u63CF\u8FF0","catalog.backToAllLabel":"\u76EE\u5F55","catalog.notConnected":"\u672A\u8FDE\u63A5","catalog.tags.label":"\u6807\u7B7E","catalog.owners.label":"\u6240\u6709\u8005","catalog.repositories.label":"\u4ED3\u5E93","catalog.email.label":"\u7535\u5B50\u90AE\u4EF6","catalog.format.label":"\u683C\u5F0F","catalog.entityType.label":"\u5B9E\u4F53\u7C7B\u578B","catalog.domains.label":"\u57DF","catalog.contact.label":"Slack \u9891\u9053","catalog.methodAndPath.label":"\u65B9\u6CD5\u548C\u8DEF\u5F84","catalog.links.label":"\u94FE\u63A5","catalog.metadata.domains":"\u57DF:","catalog.metadata.owners":"\u6240\u6709\u8005:","catalog.sort":"\u6392\u5E8F","catalog.history.button.label":"\u7248\u672C\u5386\u53F2","catalog.history.sidebar.title":"\u7248\u672C\u5386\u53F2","catalog.history.sidebar.close":"\u5173\u95ED\u7248\u672C\u5386\u53F2","catalog.history.version.label":"\u7248\u672C","catalog.filters.close":"\u5173\u95ED","catalog.history.version.notSpecified":"\u672A\u6307\u5B9A","catalog.history.version.default":"\u9ED8\u8BA4","catalog.history.revisions.limitMessage":"\u4E0D\u5B58\u50A8\u8F83\u65E7\u7684\u4FEE\u8BA2\u7248\u672C\u3002","catalog.history.revision.current":"\u5F53\u524D","catalog.history.revisions.showLess":"\u663E\u793A\u66F4\u5C11","catalog.history.revisions.showMore":"\u663E\u793A\u66F4\u591A{{count}}\u9879","select.noResults":"\u65E0\u7ED3\u679C","loaders.loading":"\u52A0\u8F7D\u4E2D...","diagram.openFullscreen":"\u70B9\u51FB\u5168\u5C4F\u67E5\u770B\u56FE\u8868","diagram.zoomIn":"\u653E\u5927","diagram.zoomOut":"\u7F29\u5C0F","diagram.reset":"\u9002\u5E94\u7A97\u53E3","diagram.close":"\u5173\u95ED","diagram.viewer":"\u56FE\u8868\u67E5\u770B\u5668","missingTranslationNotice.title":"\u6B64\u9875\u9762\u5C1A\u672A\u7FFB\u8BD1","missingTranslationNotice.content":"\u6B64\u9875\u9762\u6682\u65E0\u7FFB\u8BD1\uFF0C\u5F53\u524D\u663E\u793A\u7684\u662F {{language}} \u539F\u7248\u5185\u5BB9\u3002","missingTranslationNotice.close":"\u5173\u95ED"};export{e as zh};
@@ -1 +1 @@
1
- import t from"@redocly/markdoc";import{MARKDOWN_CLASS_NAME as m}from"@redocly/theme/core/constants";import{isTag as i}from"../helpers/guards/is-tag.js";import{getInnerText as d}from"../helpers/get-inner-text.js";const g={transform(e,r){const s=e.transformAttributes(r),n=e.transformChildren(r);return new t.Tag("div",{className:"md-table-wrapper"},[new t.Tag("table",{...s,className:m},u(n))])}},o={type:String,matches:["top","middle","bottom"],render:"vAlign"},c={...t.nodes.td,attributes:{...t.nodes.td.attributes,valign:o}},T={...t.nodes.th,attributes:{...t.nodes.th.attributes,valign:o}};function u(e){if(!e.length)return e;const[r,...s]=e;return!i(r)||r.name!=="thead"?e:[new t.Tag("thead",r.attributes,r.children.map(n=>!i(n)||n.name!=="tr"?n:new t.Tag("tr",n.attributes,n.children.map(a=>!i(a)||a.name!=="th"?a:new t.Tag("th",{...a.attributes,"data-label":d(a.children)},a.children))))),...s]}export{g as table,c as td,T as th};
1
+ import t from"@redocly/markdoc";import{MARKDOWN_CLASS_NAME as m}from"@redocly/theme/core/constants";import{isTag as i}from"../helpers/guards/is-tag.js";import{getInnerText as d}from"../helpers/get-inner-text.js";const c={transform(r,a){const{class:s,...n}=r.transformAttributes(a),e=r.transformChildren(a);return new t.Tag("div",{className:"md-table-wrapper"},[new t.Tag("table",{...n,className:[m,s].filter(Boolean).join(" ")},u(e))])}},o={type:String,matches:["top","middle","bottom"],render:"vAlign"},g={...t.nodes.td,attributes:{...t.nodes.td.attributes,valign:o}},l={...t.nodes.th,attributes:{...t.nodes.th.attributes,valign:o}};function u(r){if(!r.length)return r;const[a,...s]=r;return!i(a)||a.name!=="thead"?r:[new t.Tag("thead",a.attributes,a.children.map(n=>!i(n)||n.name!=="tr"?n:new t.Tag("tr",n.attributes,n.children.map(e=>!i(e)||e.name!=="th"?e:new t.Tag("th",{...e.attributes,"data-label":d(e.children)},e.children))))),...s]}export{c as table,g as td,l as th};
@@ -1 +1 @@
1
- import{REDOCLY_ROUTE_RBAC as w,REDOCLY_TEAMS_RBAC as I}from"@redocly/config";import{mcpTagSchemas as ae,schemaDefinitionTag as ie,markdocParser as U,collectPreviousRouteSlugs as se}from"@redocly/api-docs";import{withPathPrefix as $}from"@redocly/theme/core/utils";import{API_DOCS_TEMPLATE_ID as j,GRAPHQL_SPEC_SLUG as ne,PUBLIC_RBAC_SCOPE_ITEM as N}from"../../../constants/common.js";import{DEPRECATED_PUBLIC_API_DEFINITIONS_FOLDER as ce,PUBLIC_API_DEFINITIONS_FOLDER as pe}from"../../constants/common.js";import{API_DOCS_SHARED_DATA_PREFIX as O}from"../../constants/plugins/api-docs.js";import{fromCurrentDir as ue}from"../../utils/paths.js";import{normalizeRouteSlug as le}from"../../../utils/path/normalize-route-slug.js";import{removeTrailingSlash as de}from"../../../utils/url/remove-trailing-slash.js";import{isTranslationFallback as me}from"../../fs/utils/is-translation-fallback.js";import{createSlugify as fe}from"../create-slugify.js";import{apiDocLoader as ge,apiDocsLoader as he}from"./loader.js";import{getTemplatePath as V}from"./get-template-path.js";import{storeDefinitionBundles as Se}from"./store-definition-bundles.js";import{definitionAccessKey as De,describeDefinitionAccess as Pe}from"./definition-access.js";import{telemetryTraceStep as ye}from"../../../cli/telemetry/helpers/trace-step.js";import{searchResolver as ve}from"./search/search-resolver.js";import{getAiDocumentsStore as Ae}from"./search/get-ai-search-documents.js";import{getApiConfigByPath as Ie}from"../get-api-config.js";import{getRouteSlugsForPath as Re}from"../utils.js";import{collectItemRoutes as be}from"./utils/collect-item-routes.js";import{isChunkCurrent as _e}from"./utils/decorators.js";import{applyNavItemToRoot as Ce}from"./utils/apply-nav-item-to-root.js";import{buildRoutesMapping as we}from"./utils/build-routes-mapping.js";import{buildItemPositions as Te}from"./utils/build-item-positions.js";import{resolveApiDocTitle as ke}from"./utils/resolve-api-doc-title.js";import{resolveConfigRbac as K}from"./utils/resolve-config-rbac.js";import{relativePathToBaseSlug as Ee}from"./utils/relative-path-to-base-slug.js";import{normalizeApiVersion as Oe}from"./utils/normalize-api-version.js";import{importApiDocsBuilder as W}from"./import-api-docs-builder.js";import{envConfig as G}from"../../config/env-config.js";import{logger as Fe}from"../../tools/notifiers/logger.js";const F="openapi-spec-download",Me={asyncapi:"AsyncAPI Docs",graphql:"GraphQL Docs",openapi:"OpenAPI Docs"};async function Dt(){let t=[],r=new Map;const a=new WeakMap;let i=new Set,g={},v={};function X(o,D,R){const A=a.get(o)??new Map;a.set(o,A);const P=D??"";return A.get(P)===R?!1:(A.set(P,R),!0)}return{id:"api-docs",requiredEntitlements:["openapi","asyncapi","graphql"],loaders:{"api-doc":ge,"api-docs":he},processContent:async(o,D)=>{await ye("com.redocly.build.plugin.apiDocs",async()=>{o.createRequestHandler(F,ue(import.meta.url,"./spec-download.api.js")),o.addApiRoute({slug:pe+"/*",requestHandlerId:F,httpMethod:"all",[I]:N,getStaticData:async()=>({props:{definitionAccess:v}})}),o.addApiRoute({slug:ce+"/*",requestHandlerId:F,httpMethod:"all",[I]:N,getStaticData:async()=>({props:{definitionAccess:v}})}),o.addApiRoute({slug:ne+"/*",requestHandlerId:F,httpMethod:"all",[I]:N,getStaticData:async()=>({props:{definitionAccess:v}})});const R=o.createTemplate(j,V("../../../client/templates/api-docs/template.js")),A=o.registerServerPropsGetter(j,V("./get-server-props.js")),P=await D.getConfig();r=new Map,g={};const y=await o.loadApiDocuments(D);Se(y,o.outdir),v={};const T=!!P.plugins?.some(e=>typeof e=="string"&&e.startsWith("@redocly/portal-plugin-async-api/"));T&&y.some(e=>e.type==="asyncapi")&&Fe.warn("The plugin '@redocly/portal-plugin-async-api' is deprecated. Please remove it from your config to use built-in AsyncAPI docs.");const c=T?y.filter(e=>e.type!=="asyncapi"):y;t=c.map(({markdocChunks:e,relativePath:u,isVirtual:p,customOutputRelativeFile:s,realRelativePath:S})=>({chunks:e??[],relativePath:u,realRelativePath:S,isVirtual:s!=null||p}));const{buildItems:n}=await W(o.serverOutDir),m=(await D.cache.load("content-slugs","content-slugs")).data,h=fe(m),k=e=>le(h(e));for(const e of y){const u=De(e);if(u===void 0)continue;const p=k(e.customOutputRelativeFile||e.relativePath);v[u]=Pe(e,p)}for(const e of c){const u=e.customOutputRelativeFile||e.relativePath,p=k(u);qe(e,p);const{items:s,store:S}=await n({type:e.type,document:e.document,options:e.options,basePath:p,markdownParser:U}),b=`${O}${e.relativePath}`,M=G.isDevelopMode?e.relativePath:void 0,l=$e(e.document),_=l?.["x-metadata"],C=e.isVirtual?void 0:_?.apiId,B={document:e,basePath:p,sourcePath:M,apiId:C,build:{items:s,store:S}};await o.createSharedData(b,z(B,s,S));const J=K(e.config),L=!!e.options.excludeFromSearch,Z=e.type==="openapi",ee=be(s,J),te=me(e),f=ee.map(d=>{const x=d.metadata?.seo,E={fsPath:u,templateId:R,sharedData:[{key:"apiDocsStore",id:b}],serverPropsGetterIds:[A],excludeFromSearch:L,getStaticData:Le(d.label,x,te),[I]:d[I]};return Object.assign(E,xe(d.link,p)),Z&&d.httpVerb&&(E.httpVerb=d.httpVerb,E.metadata={subType:"openapi-operation"}),E});if(!f.length)continue;const H=ke(l,e.type,s),oe=Oe(l?.version),q={type:e.type,title:H,version:oe,description:typeof l?.description=="string"?l.description:void 0,summary:typeof l?.summary=="string"?l.summary:void 0,...l?.["x-metadata"]&&typeof l["x-metadata"]=="object"?l["x-metadata"]:{}};f[0]={...f[0],metadata:q,hasClientRoutes:!0,getSidebar:(d,x)=>Ce(Y(s),p,x),getNavText:()=>H??Me[e.type]??"API Docs",getSearchDocuments:ve(s,q,o.getSearchFacets,o.setSearchFacets,L,S,e.document),getAiDocumentsStore:Ae({getBuild:()=>B.build,metadata:q,document:e.document,specType:e.type,excludeFromSearch:L,basePath:p,getSearchFacets:o.getSearchFacets,markdocTags:{...ae,schemaDefinition:ie}})};const re=f[0];f[0]=f[f.length-1],f[f.length-1]=re;for(const d of f)o.addRoute(d);if(C){const d=Ie(e.config?.apis,e.realRelativePath);g[C]={[I]:d.rbac,[w]:{fsPath:u}}}r.set(b,B)}})},afterRoutesCreated:async(o,D)=>{const{buildItems:R,simplifyAstStructure:A}=await W(o.serverOutDir);for(const c of r.values())Q(o,c.build.items);const P=new Set,y=new Set;for(const{chunks:c,relativePath:n,isVirtual:m}of t){const h=`${O}${n}`,k=Re(o.getAllRoutes(),n);for(const{node:e,markdown:u,pointer:p,key:s,relativePath:S}of c){const{ast:b,compoundHash:M}=await o.parseMarkdoc({input:{content:u,relativePath:S,isVirtual:m},resource:p,context:D,deps:{sharedDataIds:[`${O}${S}`],routeSlugs:k}});if(P.add(p),!(s==="graphql-docs"?e?.description?.value!==void 0:!!s&&_e(e,s,u))||!X(e,s,M))continue;y.add(h);const _=A(b);if(s==="graphql-docs"){e.description&&(e.description.value=_);const C=`${O}${S}`;Be(r.get(C),_)}else s&&(e[s]=_)}}const T=i.difference(P);for(const c of T)D.cache.delete(c);i=P,Object.entries(g).forEach(([c,n])=>{const m=n[w]?.fsPath;if(!m)return;const h=o.getRouteByFsPath(m)?.baseSlug;g[c]={...n,[w]:{...n[w],slug:h},slug:h}}),o.setGlobalData({apiProducts:g});for(const[c,n]of r){if(!y.has(c))continue;const{items:m,store:h}=await R({type:n.document.type,document:n.document.document,options:n.document.options,basePath:n.basePath,markdownParser:U});n.build={items:m,store:h},Q(o,m),await o.createSharedData(c,z(n,m,h))}}}}function Q(t,r){for(const{from:a,to:i}of se(r))t.getConfig().redirects?.[a]||t.getRouteBySlug(a,{followRedirect:!1})||(t.addRouteAlias(a,i),t.addRedirect(a,{to:i,type:301},{trackOriginalSource:!1}))}function z({document:t,basePath:r,sourcePath:a,apiId:i},g,v){return{[I]:K(t.config),[w]:{slug:de(r),fsPath:t.customOutputRelativeFile||t.relativePath},items:g,store:v,options:t.options,baseSlug:r,routesMapping:G.isDevelopMode?we(g,r):{},graphqlPositions:G.isDevelopMode&&t.type==="graphql"?Te(g,r):void 0,sourcePath:a,apiId:i}}function Be(t,r){t?.document.type!=="graphql"||!t.document.options||(t.document.options.info={...t.document.options.info||{},description:r})}function Le(t,r,a){return async function(i){return{...a?{isTranslationFallback:!0}:{},props:{settings:{baseUrlPath:$(i.baseSlug)},disableAutoScroll:!0,seo:{title:t,...r}}}}}function qe(t,r){const a=t.options?.mockServer,i=$(`/_mock${Ee(t.relativePath)}`);a?.url===i&&(t.options={...t.options,mockServer:{...a,url:$(`/_mock${r}`)}})}function xe(t,r){if(t===r)return{};const a=r==="/"?"/":`${r}/`;if(t.startsWith(a)){const i=t.slice(a.length);return i?{slugSuffix:i}:{}}return{slug:t}}function $e(t){if(t&&typeof t=="object"&&"info"in t)return t.info}function Y(t){return t.map(({content:r,items:a,...i})=>({...i,...a&&{items:Y(a)}}))}export{Dt as apiDocsPlugin,xe as toRouteSlugFields};
1
+ import{REDOCLY_ROUTE_RBAC as w,REDOCLY_TEAMS_RBAC as I}from"@redocly/config";import{mcpTagSchemas as ae,schemaDefinitionTag as ie,markdocParser as U,collectPreviousRouteSlugs as se}from"@redocly/api-docs";import{withPathPrefix as $}from"@redocly/theme/core/utils";import{API_DOCS_TEMPLATE_ID as j,GRAPHQL_SPEC_SLUG as ne,PUBLIC_RBAC_SCOPE_ITEM as N}from"../../../constants/common.js";import{DEPRECATED_PUBLIC_API_DEFINITIONS_FOLDER as ce,PUBLIC_API_DEFINITIONS_FOLDER as pe}from"../../constants/common.js";import{API_DOCS_SHARED_DATA_PREFIX as O}from"../../constants/plugins/api-docs.js";import{fromCurrentDir as ue}from"../../utils/paths.js";import{normalizeRouteSlug as le}from"../../../utils/path/normalize-route-slug.js";import{removeTrailingSlash as de}from"../../../utils/url/remove-trailing-slash.js";import{isTranslationFallback as me}from"../../fs/utils/is-translation-fallback.js";import{createSlugify as fe}from"../create-slugify.js";import{apiDocLoader as ge,apiDocsLoader as he}from"./loader.js";import{getTemplatePath as V}from"./get-template-path.js";import{storeDefinitionBundles as Se}from"./store-definition-bundles.js";import{definitionAccessKey as De,describeDefinitionAccess as Pe}from"./definition-access.js";import{telemetryTraceStep as ye}from"../../../cli/telemetry/helpers/trace-step.js";import{searchResolver as ve}from"./search/search-resolver.js";import{getAiDocumentsStore as Ae}from"./search/get-ai-search-documents.js";import{getApiConfigByPath as Ie}from"../get-api-config.js";import{getRouteSlugsForPath as Re}from"../utils.js";import{collectItemRoutes as be}from"./utils/collect-item-routes.js";import{isChunkCurrent as _e}from"./utils/decorators.js";import{applyNavItemToRoot as Ce}from"./utils/apply-nav-item-to-root.js";import{buildRoutesMapping as we}from"./utils/build-routes-mapping.js";import{buildItemPositions as Te}from"./utils/build-item-positions.js";import{resolveApiDocTitle as ke}from"./utils/resolve-api-doc-title.js";import{resolveConfigRbac as K}from"./utils/resolve-config-rbac.js";import{relativePathToBaseSlug as Ee}from"./utils/relative-path-to-base-slug.js";import{normalizeApiVersion as Oe}from"./utils/normalize-api-version.js";import{importApiDocsBuilder as W}from"./import-api-docs-builder.js";import{envConfig as G}from"../../config/env-config.js";import{logger as Fe}from"../../tools/notifiers/logger.js";const F="openapi-spec-download",Me={asyncapi:"AsyncAPI Docs",graphql:"GraphQL Docs",openapi:"OpenAPI Docs"};async function Dt(){let t=[],r=new Map;const a=new WeakMap;let i=new Set,g={},v={};function X(o,D,R){const A=a.get(o)??new Map;a.set(o,A);const P=D??"";return A.get(P)===R?!1:(A.set(P,R),!0)}return{id:"api-docs",requiredEntitlements:["openapi","asyncapi","graphql"],loaders:{"api-doc":ge,"api-docs":he},processContent:async(o,D)=>{await ye("com.redocly.build.plugin.apiDocs",async()=>{o.createRequestHandler(F,ue(import.meta.url,"./spec-download.api.js")),o.addApiRoute({slug:pe+"/*",requestHandlerId:F,httpMethod:"all",[I]:N,getStaticData:async()=>({props:{definitionAccess:v}})}),o.addApiRoute({slug:ce+"/*",requestHandlerId:F,httpMethod:"all",[I]:N,getStaticData:async()=>({props:{definitionAccess:v}})}),o.addApiRoute({slug:ne+"/*",requestHandlerId:F,httpMethod:"all",[I]:N,getStaticData:async()=>({props:{definitionAccess:v}})});const R=o.createTemplate(j,V("../../../client/templates/api-docs/template.js")),A=o.registerServerPropsGetter(j,V("./get-server-props.js")),P=await D.getConfig();r=new Map,g={};const y=await o.loadApiDocuments(D);Se(y,o.outdir),v={};const T=!!P.plugins?.some(e=>typeof e=="string"&&e.startsWith("@redocly/portal-plugin-async-api/"));T&&y.some(e=>e.type==="asyncapi")&&Fe.warn("The plugin '@redocly/portal-plugin-async-api' is deprecated. Please remove it from your config to use built-in AsyncAPI docs.");const c=T?y.filter(e=>e.type!=="asyncapi"):y;t=c.map(({markdocChunks:e,relativePath:u,isVirtual:p,customOutputRelativeFile:s,realRelativePath:S})=>({chunks:e??[],relativePath:u,realRelativePath:S,isVirtual:s!=null||p}));const{buildItems:n}=await W(o.serverOutDir),m=(await D.cache.load("content-slugs","content-slugs")).data,h=fe(m),k=e=>le(h(e));for(const e of y){const u=De(e);if(u===void 0)continue;const p=k(e.customOutputRelativeFile||e.relativePath);v[u]=Pe(e,p)}for(const e of c){const u=e.customOutputRelativeFile||e.relativePath,p=k(u);qe(e,p);const{items:s,store:S}=await n({type:e.type,document:e.document,options:e.options,basePath:p,markdownParser:U}),b=`${O}${e.relativePath}`,M=G.isDevelopMode?e.relativePath:void 0,l=$e(e.document),_=l?.["x-metadata"],C=e.isVirtual?void 0:_?.apiId,B={document:e,basePath:p,sourcePath:M,apiId:C,build:{items:s,store:S}};await o.createSharedData(b,z(B,s,S));const J=K(e.config),L=!!e.options.excludeFromSearch,Z=e.type==="openapi",ee=be(s,J),te=me(e),f=ee.map(d=>{const x=d.metadata?.seo,E={fsPath:u,templateId:R,sharedData:[{key:"apiDocsStore",id:b}],serverPropsGetterIds:[A],excludeFromSearch:L,getStaticData:Le(d.label,x,te),[I]:d[I]};return Object.assign(E,xe(d.link,p)),Z&&d.httpVerb&&(E.httpVerb=d.httpVerb,E.metadata={subType:"openapi-operation"}),E});if(!f.length)continue;const H=ke(l,e.type,s),oe=Oe(l?.version),q={type:e.type,title:H,version:oe,description:typeof l?.description=="string"?l.description:void 0,summary:typeof l?.summary=="string"?l.summary:void 0,...l?.["x-metadata"]&&typeof l["x-metadata"]=="object"?l["x-metadata"]:{}};f[0]={...f[0],metadata:q,hasClientRoutes:!0,getSidebar:(d,x)=>Ce(Y(s),p,x),getNavText:()=>H??Me[e.type]??"API Docs",getSearchDocuments:ve(s,q,o.getSearchFacets,o.setSearchFacets,L,S,e.document),getAiDocumentsStore:Ae({getBuild:()=>B.build,metadata:q,document:e.document,specType:e.type,excludeFromSearch:L,basePath:p,getSearchFacets:o.getSearchFacets,markdocTags:{...ae,schemaDefinition:ie}})};const re=f[0];f[0]=f[f.length-1],f[f.length-1]=re;for(const d of f)o.addRoute(d);if(C){const d=Ie(e.config?.apis,e.realRelativePath);g[C]={[I]:d.rbac,[w]:{fsPath:u}}}r.set(b,B)}})},afterRoutesCreated:async(o,D)=>{const{buildItems:R,simplifyAstStructure:A}=await W(o.serverOutDir);for(const c of r.values())Q(o,c.build.items);const P=new Set,y=new Set;for(const{chunks:c,relativePath:n,isVirtual:m}of t){const h=`${O}${n}`,k=Re(o.getAllRoutes(),n);for(const{node:e,markdown:u,pointer:p,key:s,relativePath:S}of c){const{ast:b,compoundHash:M}=await o.parseMarkdoc({input:{content:u,relativePath:S,isVirtual:m},resource:p,context:D,deps:{sharedDataIds:[`${O}${S}`],routeSlugs:k}});if(P.add(p),!(s==="graphql-docs"?e?.description?.value!==void 0:!!s&&_e(e,s,u))||!X(e,s,M))continue;y.add(h);const _=A(b);if(s==="graphql-docs"){e.description&&(e.description.value=_);const C=`${O}${S}`;Be(r.get(C),_)}else s&&(e[s]=_)}}const T=i.difference(P);for(const c of T)D.cache.delete(c);i=P,Object.entries(g).forEach(([c,n])=>{const m=n[w]?.fsPath;if(!m)return;const h=o.getRouteByFsPath(m)?.baseSlug;g[c]={...n,[w]:{...n[w],slug:h},slug:h}}),o.setGlobalData({apiProducts:g});for(const[c,n]of r){if(!y.has(c))continue;const{items:m,store:h}=await R({type:n.document.type,document:n.document.document,options:n.document.options,basePath:n.basePath,markdownParser:U});n.build={items:m,store:h},Q(o,m),await o.createSharedData(c,z(n,m,h))}}}}function Q(t,r){for(const{from:a,to:i}of se(r))t.getConfig().redirects?.[a]||t.getRouteBySlug(a,{followRedirect:!1})||(t.addRouteAlias(a,i),t.addRedirect(a,{to:i},{trackOriginalSource:!1}))}function z({document:t,basePath:r,sourcePath:a,apiId:i},g,v){return{[I]:K(t.config),[w]:{slug:de(r),fsPath:t.customOutputRelativeFile||t.relativePath},items:g,store:v,options:t.options,baseSlug:r,routesMapping:G.isDevelopMode?we(g,r):{},graphqlPositions:G.isDevelopMode&&t.type==="graphql"?Te(g,r):void 0,sourcePath:a,apiId:i}}function Be(t,r){t?.document.type!=="graphql"||!t.document.options||(t.document.options.info={...t.document.options.info||{},description:r})}function Le(t,r,a){return async function(i){return{...a?{isTranslationFallback:!0}:{},props:{settings:{baseUrlPath:$(i.baseSlug)},disableAutoScroll:!0,seo:{title:t,...r}}}}}function qe(t,r){const a=t.options?.mockServer,i=$(`/_mock${Ee(t.relativePath)}`);a?.url===i&&(t.options={...t.options,mockServer:{...a,url:$(`/_mock${r}`)}})}function xe(t,r){if(t===r)return{};const a=r==="/"?"/":`${r}/`;if(t.startsWith(a)){const i=t.slice(a.length);return i?{slugSuffix:i}:{}}return{slug:t}}function $e(t){if(t&&typeof t=="object"&&"info"in t)return t.info}function Y(t){return t.map(({content:r,items:a,...i})=>({...i,...a&&{items:Y(a)}}))}export{Dt as apiDocsPlugin,xe as toRouteSlugFields};
@@ -1,105 +1,105 @@
1
- import C from"node:path";import{REDOCLY_TEAMS_RBAC as T}from"@redocly/config";import{nodeTypes as y,contentType as b,isGraphqlFieldsNode as pn,resolveGraphqlItemFields as un}from"@redocly/api-docs";import{normalizeApiVersion as dn}from"../utils/normalize-api-version.js";import{replaceFileExtension as N}from"../utils/replace-file-extension.js";import{isResourcePubliclyAccessible as mn,canDownloadApiDefinition as hn,extractTeamsFromScopeItems as yn}from"../../../utils/rbac.js";import{getLlmsTxtMdPathBySlug as K}from"../../../utils/llmstxt/get-llms-txt-md-path-by-slug.js";import{PUBLIC_API_DEFINITIONS_FOLDER as X}from"../../../constants/common.js";import{GRAPHQL_SPEC_SLUG as $n}from"../../../../constants/common.js";import{isPlainObject as $}from"../../../../utils/guards/is-plain-object.js";import{ANONYMOUS_AUTH_DETAILS as gn}from"../../../constants/rbac.js";import{toMarkdown as j}from"../../markdown/search/to-markdown.js";import{createRenderTagFn as bn}from"../../markdown/search/create-render-tag-fn.js";import{getLocaleFromRelativePath as In}from"../../../fs/utils/get-locale-from-relative-path.js";import{getBuildTranslateContext as An}from"../../../utils/l10n/get-build-translate-context.js";import{getPublicEnvVariables as Pn}from"../../../utils/envs/get-public-env-variables.js";import{llmsTxtLink as w}from"../../search/llmstxt/index.js";import{formatDocumentMetadata as On}from"../../search/utils.js";import{extractDocumentSearchFacets as Sn}from"./search-facets.js";import{createApiDocsSearchIndexer as xn,createLlmDescriptionFormatter as Cn}from"./create-indexer.js";function P(e,s){return s==="openapi"&&"openapi"in e}function Z(e,s){return s==="asyncapi"&&"asyncapi"in e}function rt({getBuild:e,metadata:s,document:c,specType:o,excludeFromSearch:n,basePath:r,getSearchFacets:t,markdocTags:i}){return async(l,f,d,p)=>{if(n)return;const{items:a,store:m}=e(),h={...p.markdocOptions?.tags,...i},{locale:en,translate:on}=await An(l.slug,p.getGlobalData?.().l10n),O=bn(h,en,on,{env:Pn()}),L=p.getConfig(),D=In(l.fsPath),E=Cn(O),V=xn(r,E,m?.schemaStore,c,m?.exampleStore,m?.graphqlMeta),F=I=>{for(const u of I)V.addItem(u),u.items?.length&&F(u.items)};F(a);const rn=V.getResult(),_=new Map;for(const I of rn)_.set(I.url,I);const R=typeof s.title=="string"?s.title:void 0,q=dn(s.version),k=Sn(l.metadata||{},R,q,t),S=[],x=[],G=Tn(c,s),z=G?E(G):void 0,W=vn(s,z,c,o,E),B=Ln(o,s,l.fsPath,L),sn=Rn(a,L,O),cn=W+B+`
2
- `+sn,ln=W+B;x.push({title:R||"API Overview",description:z,content:cn,slug:r,fsPath:l.fsPath,includeInLLMsTxt:!0}),S.push({title:R||"API Overview",content:ln,url:r,fsPath:l.fsPath,locale:D,product:l.product?.name,facets:k});const fn=c&&P(c,o)?c.security:void 0,U=I=>{for(const u of I){if(!u.content||!u.link){u.items?.length&&U(u.items);continue}const an=_.get(u.link),J=u.content.contentType,Q=u[T],H=Q?yn(Q):void 0,Y=H?.length?H:void 0;if(J===b.ITEM){const g=kn(u,c,o)??nn(u,an,o,q,fn,O,m);if(g){const A=u.label||"";x.push({title:A,description:void 0,content:g,slug:u.link,fsPath:l.fsPath,includeInLLMsTxt:!1}),S.push({title:A,content:g,url:u.link,fsPath:l.fsPath,locale:D,product:l.product?.name,facets:k,rbacTeams:Y})}}else if(J===b.GROUP){const g=Un(u,L,o,O,m);if(g){const A=u.label||"";x.push({title:A,description:void 0,content:g.llmstxt,slug:u.link,fsPath:l.fsPath,includeInLLMsTxt:!1}),S.push({title:A,content:g.aiSearch,url:u.link,fsPath:l.fsPath,locale:D,product:l.product?.name,facets:k,rbacTeams:Y})}}u.items?.length&&U(u.items)}};return U(a),{async getLLMsTxts(){return x},async getSearchDocuments(){return S}}}}function Tn(e,s){const c=$(e?.info)?e.info:void 0,o=$(c?.["x-metadata"])?c["x-metadata"]:{},r=(typeof o.description=="string"?o.description:void 0)??c?.description??s.description;return typeof r=="string"?r||void 0:r&&typeof r=="object"?r:void 0}function vn(e,s,c,o,n){const r=typeof e.title=="string"?e.title:"",t=typeof e.summary=="string"?e.summary:"",i=typeof e.version=="string"?e.version:"";let l=r?`# ${r}
1
+ import C from"node:path";import{REDOCLY_TEAMS_RBAC as v}from"@redocly/config";import{nodeTypes as y,contentType as A,isGraphqlFieldsNode as un,resolveGraphqlItemFields as dn}from"@redocly/api-docs";import{normalizeApiVersion as mn}from"../utils/normalize-api-version.js";import{replaceFileExtension as U}from"../utils/replace-file-extension.js";import{isResourcePubliclyAccessible as hn,canDownloadApiDefinition as yn,extractTeamsFromScopeItems as $n}from"../../../utils/rbac.js";import{getLlmsTxtMdPathBySlug as gn}from"../../../utils/llmstxt/get-llms-txt-md-path-by-slug.js";import{PUBLIC_API_DEFINITIONS_FOLDER as Y}from"../../../constants/common.js";import{GRAPHQL_SPEC_SLUG as bn}from"../../../../constants/common.js";import{isPlainObject as $}from"../../../../utils/guards/is-plain-object.js";import{ANONYMOUS_AUTH_DETAILS as An}from"../../../constants/rbac.js";import{toMarkdown as N}from"../../markdown/search/to-markdown.js";import{createRenderTagFn as In}from"../../markdown/search/create-render-tag-fn.js";import{getLocaleFromRelativePath as On}from"../../../fs/utils/get-locale-from-relative-path.js";import{getBuildTranslateContext as Pn}from"../../../utils/l10n/get-build-translate-context.js";import{getPublicEnvVariables as Sn}from"../../../utils/envs/get-public-env-variables.js";import{llmsTxtLink as K}from"../../search/llmstxt/index.js";import{formatDocumentMetadata as xn}from"../../search/utils.js";import{extractDocumentSearchFacets as Cn}from"./search-facets.js";import{createApiDocsSearchIndexer as vn,createLlmDescriptionFormatter as Ln}from"./create-indexer.js";function O(t,s){return s==="openapi"&&"openapi"in t}function X(t,s){return s==="asyncapi"&&"asyncapi"in t}function se({getBuild:t,metadata:s,document:r,specType:c,excludeFromSearch:n,basePath:o,getSearchFacets:e,markdocTags:l}){return async(i,f,m,a)=>{if(n)return;const{items:d,store:u}=t(),h={...a.markdocOptions?.tags,...l},{locale:on,translate:rn}=await Pn(i.slug,a.getGlobalData?.().l10n),P=In(h,on,rn,{env:Sn()}),L=a.getConfig(),T=On(i.fsPath),R=Ln(P),j=vn(o,R,u?.schemaStore,r,u?.exampleStore,u?.graphqlMeta),M=b=>{for(const p of b)j.addItem(p),p.items?.length&&M(p.items)};M(d);const sn=j.getResult(),V=new Map;for(const b of sn)V.set(b.url,b);const D=typeof s.title=="string"?s.title:void 0,F=mn(s.version),E=Cn(i.metadata||{},D,F,e),S=[],x=[],_=Tn(r,s),q=_?R(_):void 0,G=Rn(s,q,r,c,R),z=Dn(c,s,i.fsPath,L),W=new Map,cn=Z(d,L,W,P),ln=G+z+`
2
+ `+cn,fn=G+z;x.push({title:D||"API Overview",description:q,content:ln,slug:o,fsPath:i.fsPath,includeInLLMsTxt:!0}),S.push({title:D||"API Overview",content:fn,url:o,fsPath:i.fsPath,locale:T,product:i.product?.name,facets:E});const an=r&&O(r,c)?r.security:void 0,k=b=>{for(const p of b){if(!p.content||!p.link){p.items?.length&&k(p.items);continue}const pn=V.get(p.link),B=p.content.contentType,J=p[v],Q=J?$n(J):void 0,H=Q?.length?Q:void 0;if(B===A.ITEM){const g=Un(p,r,c)??nn(p,pn,c,F,an,P,u);if(g){const I=p.label||"";x.push({title:I,description:void 0,content:g,slug:p.link,fsPath:i.fsPath,includeInLLMsTxt:!1}),S.push({title:I,content:g,url:p.link,fsPath:i.fsPath,locale:T,product:i.product?.name,facets:E,rbacTeams:H})}}else if(B===A.GROUP){const g=Nn(p,L,c,W,P,u);if(g){const I=p.label||"";x.push({title:I,description:void 0,content:g.llmstxt,slug:p.link,fsPath:i.fsPath,includeInLLMsTxt:!1}),S.push({title:I,content:g.aiSearch,url:p.link,fsPath:i.fsPath,locale:T,product:i.product?.name,facets:E,rbacTeams:H})}}p.items?.length&&k(p.items)}};return k(d),{async getLLMsTxts(){return x},async getSearchDocuments(){return S}}}}function Tn(t,s){const r=$(t?.info)?t.info:void 0,c=$(r?.["x-metadata"])?r["x-metadata"]:{},o=(typeof c.description=="string"?c.description:void 0)??r?.description??s.description;return typeof o=="string"?o||void 0:o&&typeof o=="object"?o:void 0}function Rn(t,s,r,c,n){const o=typeof t.title=="string"?t.title:"",e=typeof t.summary=="string"?t.summary:"",l=typeof t.version=="string"?t.version:"";let i=o?`# ${o}
3
3
 
4
- `:"";if(l+=s?`${s}
4
+ `:"";if(i+=s?`${s}
5
5
 
6
- `:"",l+=t?`${t}
6
+ `:"",i+=e?`${e}
7
7
 
8
- `:"",l+=i?`Version: ${i}
9
- `:"",c){if(P(c,o)){const{info:f}=c;f?.license?.name&&(l+=`License: ${f.license.name}
10
- `);const d=f["x-metadata"],p=Object.entries($(d)?d:{}).filter(([m,h])=>m!=="description"||typeof h!="string"),a=On(Object.fromEntries(p));a&&(l+=`
8
+ `:"",i+=l?`Version: ${l}
9
+ `:"",r){if(O(r,c)){const{info:f}=r;f?.license?.name&&(i+=`License: ${f.license.name}
10
+ `);const m=f["x-metadata"],a=Object.entries($(m)?m:{}).filter(([u,h])=>u!=="description"||typeof h!="string"),d=xn(Object.fromEntries(a));d&&(i+=`
11
11
  Metadata:
12
- ${a}
13
- `)}else if(Z(c,o)){const{info:f}=c;f?.license?.name&&(l+=`License: ${f.license.name}
14
- `)}}return l+=`
15
- `,l+=Dn(c,o,n),l+=En(c,o,n),l}function Ln(e,s,c,o){if(!c)return"";let n,r,t;if(e==="openapi")n=C.posix.join(X,N(c,".yaml")),r="## Download OpenAPI description",t="OpenAPI definition";else if(e==="asyncapi")n=C.posix.join(X,N(c,".yaml")),r="## Download AsyncAPI description",t="AsyncAPI definition";else if(e==="graphql"){const f=C.posix.extname(c)||".graphql";n=C.posix.join($n,N(c,f)),r="## Download GraphQL schema",t="GraphQL schema"}else return"";if(!hn(n,o.access?.rbac??{},o.access?.requiresLogin??!1,gn))return"";const l=typeof s.title=="string"&&s.title||t;return`${r}
12
+ ${d}
13
+ `)}else if(X(r,c)){const{info:f}=r;f?.license?.name&&(i+=`License: ${f.license.name}
14
+ `)}}return i+=`
15
+ `,i+=En(r,c,n),i+=kn(r,c,n),i}function Dn(t,s,r,c){if(!r)return"";let n,o,e;if(t==="openapi")n=C.posix.join(Y,U(r,".yaml")),o="## Download OpenAPI description",e="OpenAPI definition";else if(t==="asyncapi")n=C.posix.join(Y,U(r,".yaml")),o="## Download AsyncAPI description",e="AsyncAPI definition";else if(t==="graphql"){const f=C.posix.extname(r)||".graphql";n=C.posix.join(bn,U(r,f)),o="## Download GraphQL schema",e="GraphQL schema"}else return"";if(!yn(n,c.access?.rbac??{},c.access?.requiresLogin??!1,An))return"";const i=typeof s.title=="string"&&s.title||e;return`${o}
16
16
 
17
- - ${w({title:l,description:void 0,slug:n,siteUrl:o.seo?.siteUrl})}`}function Dn(e,s,c){if(!e)return"";if(P(e,s)){const o=Array.isArray(e.servers)?e.servers.filter($):[];if(!o.length)return"";let n=`## Servers
17
+ - ${K({title:i,description:void 0,slug:n,siteUrl:c.seo?.siteUrl})}`}function En(t,s,r){if(!t)return"";if(O(t,s)){const c=Array.isArray(t.servers)?t.servers.filter($):[];if(!c.length)return"";let n=`## Servers
18
18
 
19
- `;for(const r of o){r.description&&(n+=`${c(r.description)}
19
+ `;for(const o of c){o.description&&(n+=`${r(o.description)}
20
20
  `),n+=`\`\`\`
21
- ${r.url}
21
+ ${o.url}
22
22
  \`\`\`
23
23
 
24
- `;const t=Object.entries($(r.variables)?r.variables:{}).filter(([,i])=>$(i));if(t.length){n+=`Variables:
25
- `;for(const[i,l]of t)n+=`- \`${i}\`${l.description?`: ${c(l.description).replace(/\s+/g," ")}`:""}
26
- `,l.default&&(n+=` Default: ${JSON.stringify(l.default)}
27
- `),Array.isArray(l.enum)&&(n+=` Enum: ${l.enum.map(f=>JSON.stringify(f)).join(", ")}
24
+ `;const e=Object.entries($(o.variables)?o.variables:{}).filter(([,l])=>$(l));if(e.length){n+=`Variables:
25
+ `;for(const[l,i]of e)n+=`- \`${l}\`${i.description?`: ${r(i.description).replace(/\s+/g," ")}`:""}
26
+ `,i.default&&(n+=` Default: ${JSON.stringify(i.default)}
27
+ `),Array.isArray(i.enum)&&(n+=` Enum: ${i.enum.map(f=>JSON.stringify(f)).join(", ")}
28
28
  `);n+=`
29
- `}}return n}if(Z(e,s)){const o=Object.entries($(e.servers)?e.servers:{}).filter(([,r])=>$(r));if(!o.length)return"";let n=`## Servers
29
+ `}}return n}if(X(t,s)){const c=Object.entries($(t.servers)?t.servers:{}).filter(([,o])=>$(o));if(!c.length)return"";let n=`## Servers
30
30
 
31
- `;for(const[r,t]of o)n+=`### ${r}
31
+ `;for(const[o,e]of c)n+=`### ${o}
32
32
 
33
- `,t.description&&(n+=`${c(t.description)}
34
- `),t.host&&(n+=`Host: ${t.host}
35
- `),t.protocol&&(n+=`Protocol: ${t.protocol}
36
- `),t.protocolVersion&&(n+=`Protocol Version: ${t.protocolVersion}
37
- `),t.pathname&&(n+=`Pathname: ${t.pathname}
33
+ `,e.description&&(n+=`${r(e.description)}
34
+ `),e.host&&(n+=`Host: ${e.host}
35
+ `),e.protocol&&(n+=`Protocol: ${e.protocol}
36
+ `),e.protocolVersion&&(n+=`Protocol Version: ${e.protocolVersion}
37
+ `),e.pathname&&(n+=`Pathname: ${e.pathname}
38
38
  `),n+=`
39
- `;return n}return""}function En(e,s,c){if(!e||!P(e,s))return"";const o=e.components?.securitySchemes;if(!o)return"";let n=`## Security
39
+ `;return n}return""}function kn(t,s,r){if(!t||!O(t,s))return"";const c=t.components?.securitySchemes;if(!c)return"";let n=`## Security
40
40
 
41
- `;for(const[r,t]of Object.entries(o)){if(!t||"$ref"in t)continue;const i=t;n+=`### ${r}
41
+ `;for(const[o,e]of Object.entries(c)){if(!e||"$ref"in e)continue;const l=e;n+=`### ${o}
42
42
 
43
- `,i.description&&(n+=`${c(i.description)}
43
+ `,l.description&&(n+=`${r(l.description)}
44
44
 
45
- `),i.type&&(n+=`Type: ${i.type}
46
- `),i.in&&(n+=`In: ${i.in}
47
- `),i.name&&(n+=`Name: ${i.name}
48
- `),i.scheme&&(n+=`Scheme: ${i.scheme}
49
- `),i.bearerFormat&&(n+=`Bearer Format: ${i.bearerFormat}
50
- `),i.openIdConnectUrl&&(n+=`OpenID Connect URL: ${i.openIdConnectUrl}
51
- `);const l=i.flows,f=l?.implicit||l?.password||l?.clientCredentials||l?.authorizationCode;if(f&&("authorizationUrl"in f&&f.authorizationUrl&&(n+=`Authorization URL: ${f.authorizationUrl}
45
+ `),l.type&&(n+=`Type: ${l.type}
46
+ `),l.in&&(n+=`In: ${l.in}
47
+ `),l.name&&(n+=`Name: ${l.name}
48
+ `),l.scheme&&(n+=`Scheme: ${l.scheme}
49
+ `),l.bearerFormat&&(n+=`Bearer Format: ${l.bearerFormat}
50
+ `),l.openIdConnectUrl&&(n+=`OpenID Connect URL: ${l.openIdConnectUrl}
51
+ `);const i=l.flows,f=i?.implicit||i?.password||i?.clientCredentials||i?.authorizationCode;if(f&&("authorizationUrl"in f&&f.authorizationUrl&&(n+=`Authorization URL: ${f.authorizationUrl}
52
52
  `),"tokenUrl"in f&&f.tokenUrl&&(n+=`Token URL: ${f.tokenUrl}
53
53
  `),f.scopes)){n+=`Scopes:
54
- `;for(const[d,p]of Object.entries(f.scopes))n+=`- \`${d}\`: ${p}
54
+ `;for(const[m,a]of Object.entries(f.scopes))n+=`- \`${m}\`: ${a}
55
55
  `}n+=`
56
- `}return n}function Rn(e,s,c){let o="";const n=(r,t)=>{for(const i of r)if(i.link){if(i.content?.contentType===b.GROUP)o+=`${t} ${i.label||""}
56
+ `}return n}function Z(t,s,r,c){let n="";const o=(e,l)=>{for(const i of e)if(!(!i.link||!tn(i,s))){if(i.content?.contentType===A.GROUP)n+=`${l} ${i.label||""}
57
57
 
58
- `,i.items?.length&&n(i.items,t+"#");else if(i.content?.contentType===b.ITEM){if(!M(i,s))continue;const l=i,f=l.httpVerb,d=l.httpPath,p=f&&d?`${f.toUpperCase()} ${d}`:i.label||"",a=i.content?v(i.content.children,c):void 0;o+=` - ${w({title:p,description:a?a.slice(0,200):void 0,slug:K(i.link),siteUrl:s.seo?.siteUrl})}`}}};return n(e,"##"),o}function nn(e,s,c,o,n,r,t){if(!e.content)return;const i=e,l=e.label||"",f=v(e.content.children,r),d=e.content.meta?.deprecated;let p=`# ${l}${d?" (deprecated)":""}
58
+ `,i.items?.length&&o(i.items,l+"#");else if(i.content?.contentType===A.ITEM){let f=r.get(i.link);if(f===void 0){const m=i,a=m.httpVerb,d=m.httpPath,u=a&&d?`${a.toUpperCase()} ${d}`:i.label||"",h=w(i.content.children,c);f=` - ${K({title:u,description:h?h.slice(0,200):void 0,slug:gn(i.link),siteUrl:s.seo?.siteUrl})}`,r.set(i.link,f)}n+=f}}};return o(t,"##"),n}function nn(t,s,r,c,n,o,e){if(!t.content)return;const l=t,i=t.label||"",f=w(t.content.children,o),m=t.content.meta?.deprecated;let a=`# ${i}${m?" (deprecated)":""}
59
59
 
60
- `;if(f&&(p+=`${f}
60
+ `;if(f&&(a+=`${f}
61
61
 
62
- `),c==="openapi"||c==="asyncapi"){const a=i.httpVerb,m=i.httpPath;a&&m?p+=`Endpoint: ${a.toUpperCase()} ${m}
63
- `:a&&(p+=`Method: ${a.toUpperCase()}
64
- `),o&&(p+=`Version: ${o}
65
- `);const h=Nn(e.content.children,n);h&&(p+=`Security: ${h}
66
- `)}return s?.parameters?.length&&c!=="graphql"&&(p+=`
62
+ `),r==="openapi"||r==="asyncapi"){const d=l.httpVerb,u=l.httpPath;d&&u?a+=`Endpoint: ${d.toUpperCase()} ${u}
63
+ `:d&&(a+=`Method: ${d.toUpperCase()}
64
+ `),c&&(a+=`Version: ${c}
65
+ `);const h=wn(t.content.children,n);h&&(a+=`Security: ${h}
66
+ `)}return s?.parameters?.length&&r!=="graphql"&&(a+=`
67
67
  `+jn(s.parameters)+`
68
- `),c==="graphql"&&(p+=wn(e.content.children,t,r)),p}function kn(e,s,c){if(e.httpVerb!=="tool"||!s||!P(s,c))return;const o=e.content?.meta?.name,n=o?s["x-mcp"]?.tools?.find(t=>t.name===o):void 0;if(!n)return;let r=`# ${e.label||n.name}
68
+ `),r==="graphql"&&(a+=Mn(t.content.children,e,o)),a}function Un(t,s,r){if(t.httpVerb!=="tool"||!s||!O(s,r))return;const c=t.content?.meta?.name,n=c?s["x-mcp"]?.tools?.find(e=>e.name===c):void 0;if(!n)return;let o=`# ${t.label||n.name}
69
69
 
70
- `;return typeof n.description=="string"&&n.description&&(r+=`${n.description}
70
+ `;return typeof n.description=="string"&&n.description&&(o+=`${n.description}
71
71
 
72
- `),r+=`## Input schema:
72
+ `),o+=`## Input schema:
73
73
 
74
- `,r+=`\`\`\`json
74
+ `,o+=`\`\`\`json
75
75
  ${JSON.stringify(n.inputSchema,null,2)}
76
76
  \`\`\`
77
77
 
78
- `,n.outputSchema&&(r+=`## Output schema:
78
+ `,n.outputSchema&&(o+=`## Output schema:
79
79
 
80
- `,r+=`\`\`\`json
80
+ `,o+=`\`\`\`json
81
81
  ${JSON.stringify(n.outputSchema,null,2)}
82
82
  \`\`\`
83
83
 
84
- `),r}function Un(e,s,c,o,n){if(!e.content)return;const r=e.label||"",t=v(e.content.children,o);let i=`# ${r}
84
+ `),o}function Nn(t,s,r,c,n,o){if(!t.content)return;const e=t.label||"",l=w(t.content.children,n);let i=`# ${e}
85
85
 
86
- `;if(t&&(i+=`${t}
86
+ `;if(l&&(i+=`${l}
87
87
 
88
- `),c==="graphql"){let f="";const d=p=>{for(const a of p??[])if(!(!a.content||!M(a,s)))if(a.content.contentType===b.ITEM){const m=nn(a,void 0,c,void 0,void 0,o,n);m&&(f+=`${m}
88
+ `),r==="graphql"){let m="";const a=d=>{for(const u of d??[])if(!(!u.content||!tn(u,s)))if(u.content.contentType===A.ITEM){const h=nn(u,void 0,r,void 0,void 0,n,o);h&&(m+=`${h}
89
89
 
90
90
  ---
91
91
 
92
- `)}else a.content.contentType===b.GROUP&&d(a.items)};return d(e.items),{llmstxt:i+f,aiSearch:i}}let l="";if(e.items?.length)for(const f of e.items){if(!f.link||!f.content||f.content.contentType!==b.ITEM||!M(f,s))continue;const d=f,p=d.httpVerb,a=d.httpPath,m=p&&a?`${p.toUpperCase()} ${a}`:f.label||"",h=f.content?v(f.content.children,o):void 0;l+=` - ${w({title:m,description:h?h.slice(0,200):void 0,slug:K(f.link),siteUrl:s.seo?.siteUrl})}`}return{llmstxt:i+l,aiSearch:i}}function Nn(e,s){const c=[],o=n=>{for(const r of n)if(r.nodeType===y.SECURITY){const t=r;for(const i of t.requirements)for(const l of i.schemes)l[T]||l.name&&!c.includes(l.name)&&c.push(l.name)}else(r.nodeType===y.CONTAINER||r.nodeType===y.OVERVIEW_SECTION_WRAPPER)&&o(r.children)};if(o(e),c.length)return c.join(", ");if(s?.length){const n=s.flatMap(r=>Object.keys(r));if(n.length)return[...new Set(n)].join(", ")}}function jn(e){const s={};for(const o of e){const n=`${o.place}${o.mediaType?` (${o.mediaType})`:""}`;s[n]||(s[n]=[]),s[n].push(o)}return Object.entries(s).map(([o,n])=>{const r=n.map(t=>{const i=[...t.path||[],t.name],l=Array.isArray(t.description)?t.description.join(" "):t.description;let f=` - \`${i.join(".")}\` (${t.type}${t.required?", required":""})
93
- `;return l&&(f+=` ${l.trim()}
94
- `),t.enum?f+=` Enum: ${t.enum.map(d=>JSON.stringify(d)).join(", ")}
95
- `:t.example&&(f+=` Example: ${t.example}
96
- `),f});return`## ${tn(o)}:
92
+ `)}else u.content.contentType===A.GROUP&&a(u.items)};return a(t.items),{llmstxt:i+m,aiSearch:i}}const f=Z(t.items??[],s,c,n);return{llmstxt:i+f,aiSearch:i}}function wn(t,s){const r=[],c=n=>{for(const o of n)if(o.nodeType===y.SECURITY){const e=o;for(const l of e.requirements)for(const i of l.schemes)i[v]||i.name&&!r.includes(i.name)&&r.push(i.name)}else(o.nodeType===y.CONTAINER||o.nodeType===y.OVERVIEW_SECTION_WRAPPER)&&c(o.children)};if(c(t),r.length)return r.join(", ");if(s?.length){const n=s.flatMap(o=>Object.keys(o));if(n.length)return[...new Set(n)].join(", ")}}function jn(t){const s={};for(const c of t){const n=`${c.place}${c.mediaType?` (${c.mediaType})`:""}`;s[n]||(s[n]=[]),s[n].push(c)}return Object.entries(s).map(([c,n])=>{const o=n.map(e=>{const l=[...e.path||[],e.name],i=Array.isArray(e.description)?e.description.join(" "):e.description;let f=` - \`${l.join(".")}\` (${e.type}${e.required?", required":""})
93
+ `;return i&&(f+=` ${i.trim()}
94
+ `),e.enum?f+=` Enum: ${e.enum.map(m=>JSON.stringify(m)).join(", ")}
95
+ `:e.example&&(f+=` Example: ${e.example}
96
+ `),f});return`## ${en(c)}:
97
97
 
98
- ${r.join(`
98
+ ${o.join(`
99
99
  `)}`}).join(`
100
- `)}function wn(e,s,c){let o="";const n=r=>{for(const t of r)if(t.nodeType===y.ITEM){const i=pn(t)?un(t,s??{}):void 0;i&&(o+=Mn(i,t.variant,c))}else(t.nodeType===y.CONTAINER||t.nodeType===y.OVERVIEW_SECTION_WRAPPER)&&n(t.children)};return n(e),o}function Mn(e,s,c){let n=`
101
- ## ${tn(s==="return-type"?"Return type":s==="graphql-args"||s==="arguments"?"Arguments":s==="graphql-fields"?"Fields":s)}:
100
+ `)}function Mn(t,s,r){let c="";const n=o=>{for(const e of o)if(e.nodeType===y.ITEM){const l=un(e)?dn(e,s??{}):void 0;l&&(c+=Vn(l,e.variant,r))}else(e.nodeType===y.CONTAINER||e.nodeType===y.OVERVIEW_SECTION_WRAPPER)&&n(e.children)};return n(t),c}function Vn(t,s,r){let n=`
101
+ ## ${en(s==="return-type"?"Return type":s==="graphql-args"||s==="arguments"?"Arguments":s==="graphql-fields"?"Fields":s)}:
102
102
 
103
- `;const r=t=>{const i=t.description?j(Array.isArray(t.description)?t.description:[t.description],{renderTag:c}).trim():"";return` - \`${t.name}\` (${t.type.display})${i?`: ${i}`:""}
104
- `};if(e.type){const t=e.type.description?j(Array.isArray(e.type.description)?e.type.description:[e.type.description],{renderTag:c}).trim():"";n+=` Type: ${e.type.display}`,t&&(n+=` - ${t}`),n+=`
105
- `}else if(!e.fields.length)return"";for(const t of e.fields)n+=r(t);return n}function v(e,s){const c=[],o=r=>{for(const t of r)if(t.nodeType===y.MARKDOC){const i=t.content,l=Array.isArray(i)?i:[i],f=j(l,{renderTag:s}).trim();f&&c.push(f)}else(t.nodeType===y.CONTAINER||t.nodeType===y.OVERVIEW_SECTION_WRAPPER)&&o(t.children)};return o(e),c.join(" ").trim()||void 0}function tn(e){return e.charAt(0).toUpperCase()+e.slice(1)}function M(e,s){return s.access?.requiresLogin?!0:mn({slug:e.link||"",[T]:e[T]},s)}export{rt as getAiDocumentsStore};
103
+ `;const o=e=>{const l=e.description?N(Array.isArray(e.description)?e.description:[e.description],{renderTag:r}).trim():"";return` - \`${e.name}\` (${e.type.display})${l?`: ${l}`:""}
104
+ `};if(t.type){const e=t.type.description?N(Array.isArray(t.type.description)?t.type.description:[t.type.description],{renderTag:r}).trim():"";n+=` Type: ${t.type.display}`,e&&(n+=` - ${e}`),n+=`
105
+ `}else if(!t.fields.length)return"";for(const e of t.fields)n+=o(e);return n}function w(t,s){const r=[],c=o=>{for(const e of o)if(e.nodeType===y.MARKDOC){const l=e.content,i=Array.isArray(l)?l:[l],f=N(i,{renderTag:s}).trim();f&&r.push(f)}else(e.nodeType===y.CONTAINER||e.nodeType===y.OVERVIEW_SECTION_WRAPPER)&&c(e.children)};return c(t),r.join(" ").trim()||void 0}function en(t){return t.charAt(0).toUpperCase()+t.slice(1)}function tn(t,s){return s.access?.requiresLogin?!0:hn({slug:t.link||"",[v]:t[v]},s)}export{se as getAiDocumentsStore};
@@ -1,6 +1,7 @@
1
- import c from"node:path";import{slash as L}from"../../../../utils/path/slash.js";import{reporter as F}from"../../../tools/notifiers/reporter.js";import{getNodeAttribute as n}from"../../../../markdoc/helpers/get-node-attribute.js";import{MdResolveError as h}from"./md-resolve-error.js";async function V(i,w,b,{actions:{contentDir:m},context:u}){const o=n(i,w);if(!o)return;const r=o.startsWith("/")?o.slice(1):L(c.relative(m,c.resolve(m,c.dirname(b),o)));if(!u.fs.exists(r)){await F.panicOnBuildContentError(`Code snippet file ${r} does not exist`);return}let e=await u.fs.read(r);const d=n(i,"after"),p=n(i,"before"),y=n(i,"from"),C=n(i,"to"),v=n(i,"prefix")||"",s=y??d,f=C??p,g=d!==null,x=p!==null,E=(typeof s=="number"?Math.max(s||0,1):1)+(g?1:0);let a=(typeof f=="number"?f:1/0)-(x?1:0);if(typeof s=="string"){let t=e.indexOf(s);if(t===-1)throw new h(`Cannot find start text "${s}" in snippet file`,{rawLink:r});for(;e[t]!==`
2
- `&&t>0;)t--;typeof a=="number"&&(a-=e.slice(0,t-1).split(`
3
- `).length),e=e.slice(t+1)}if(typeof f=="string"){let t=e.indexOf(f);if(t===-1)throw new h(`Cannot find end text "${p}" in snippet file`,{rawLink:r});e[t-1]===`
4
- `&&t--,e=e.slice(0,t)}const l=e.split(`
5
- `);if(x)for(;l[l.length-1]==="";)l.pop();i.children=[],i.attributes.rawContent=v+l.slice(E-1,a).join(`
6
- `)}export{V as resolveCodeSnippetFromFile};
1
+ import m from"node:path";import{slash as O}from"../../../../utils/path/slash.js";import{reporter as F}from"../../../tools/notifiers/reporter.js";import{getNodeAttribute as i}from"../../../../markdoc/helpers/get-node-attribute.js";import{MdResolveError as w}from"./md-resolve-error.js";async function j(n,b,y,{actions:{contentDir:d},context:u}){const o=i(n,b);if(!o)return;const r=o.startsWith("/")?o.slice(1):O(m.relative(d,m.resolve(d,m.dirname(y),o)));if(!u.fs.exists(r)){await F.panicOnBuildContentError(`Code snippet file ${r} does not exist`);return}let e=await u.fs.read(r);const x=i(n,"after"),p=i(n,"before"),C=i(n,"from"),g=i(n,"to"),v=i(n,"prefix")||"",s=C??x,f=g??p,E=x!==null,a=p!==null,L=(typeof s=="number"?Math.max(s||0,1):1)+(E?1:0);let c=(typeof f=="number"?f:1/0)-(a?1:0);if(typeof s=="string"){let t=e.indexOf(s);if(t===-1)throw new w(`Cannot find start text "${s}" in snippet file`,{rawLink:r});for(;e[t]!==`
2
+ `&&t>0;)t--;typeof c=="number"&&(c-=e.slice(0,t-1).split(`
3
+ `).length),e=e.slice(t+1)}if(typeof f=="string"){let t=e.indexOf(f);if(t===-1)throw new w(`Cannot find end text "${p}" in snippet file`,{rawLink:r});if(a)e[t-1]===`
4
+ `&&t--;else{const h=e.indexOf(`
5
+ `,t);t=h===-1?e.length:h}e=e.slice(0,t)}const l=e.split(`
6
+ `);if(a)for(;l[l.length-1]==="";)l.pop();n.children=[],n.attributes.rawContent=v+l.slice(L-1,c).join(`
7
+ `)}export{j as resolveCodeSnippetFromFile};
@@ -1 +1 @@
1
- import{REDOCLY_TEAMS_RBAC as v}from"@redocly/config";import{MARKDOC_PARTIALS_DATA_KEY as D}from"../../constants/common.js";import{reporter as R}from"../../tools/notifiers/reporter.js";import{canAccessFeature as g}from"../../utils/entitlements/can-access-feature.js";import{extractMdFirstHeading as A,getAst as T}from"./compiler.js";import{getTemplatePath as w}from"./get-template-path.js";import{prepareMarkdocPartials as M}from"./markdoc/partials.js";import{searchResolver as C}from"./search/search-resolver.js";import{markdownStaticDataLoader as E}from"./markdown-static-data-loader.js";import{makeErrorRoute as I}from"../error-route.js";import{validateRbacConfig as O}from"../validate-rbac-config.js";import{findFrontmatterSlugs as _,getSidebarSharedDataId as G,resolveFrontmatterSlugs as L}from"../utils.js";import{isPartial as j}from"./is-partial.js";import{markdownFrontmatterLoader as B}from"./markdown-frontmatter-loader.js";import{resolveRawPartials as K}from"./markdoc/resolve-raw-partials.js";import{getAiDocumentsStore as N}from"./search/get-ai-search-documents.js";import{registerPageProps as Y}from"../register-page-props.js";import{resolveMarkdownTemplate as q}from"./utils/resolve-markdown-template.js";import{sanitizeMalformedMdContent as z}from"./utils/sanitize-malformed-md-content.js";import{telemetryTraceStep as H}from"../../../cli/telemetry/helpers/trace-step.js";async function ce(h){return{id:"markdoc",requiredEntitlements:["markdown"],loaders:{"markdown-frontmatter":B,"markdown-ast":async(e,t)=>{const i=await t.fs.read(e),m=await t.getConfig(),s=await K(i,e,m?.markdown?.partialsFolders,t),n=z(s);return T(e,n)}},processContent:async(e,t)=>{await H("com.redocly.build.plugin.markdown",async i=>{const{markdown:m}=await t.getConfig();i?.setAttribute("config",JSON.stringify(m||{}));const s=m?.partialsFolders??[],n=e.createTemplate("markdown","@redocly/theme/core/templates/Markdown"),S=e.registerServerPropsGetter("markdown",w("./get-server-props.js"));e.createTemplate("error",w("../../../client/app/Error/ErrorDetails.js"));for(const o of t.fs.scan(/\.md$/))if(!await t.isPathIgnored(o.relativePath)&&!j(o.relativePath,s))try{await k(o)}catch(a){e.addRoute(I(o.relativePath,a)),i?.error(a),await R.panicOnBuild("Failed to create route for markdown file: %s",a.message)}async function k(o){const{relativePath:a,realRelativePath:b}=o,{data:{frontmatter:r}}=await t.cache.load(a,"markdown-frontmatter"),P=r?.metadata||{},y=await _(a,"markdown-frontmatter",r,t),p=L(y,a);let d=null;r?.sidebar&&(d=await G(r.sidebar,a,t.fs));let u=n;const l=q({realRelativePath:b,frontmatter:r,markdown:m,contentDir:h.contentDir});l&&(u=e.createTemplate(l.templateRef,l.templatePath)),r?.rbac&&(g("rbac")?O({content:{[a]:r.rbac}}):r.rbac=void 0),g("banner")||(r.banner=void 0),Y(o,t.fs,e),(p.length?p.reverse():[void 0]).forEach(F=>{e.addRoute({excludeFromSearch:r?.excludeFromSearch||!1,slug:F,fsPath:a,templateId:u,sharedData:d?[{id:d,key:"sidebar"}]:void 0,redirectFrom:Object.entries(r.redirects||{}).map(([c,{type:f}])=>({type:f||301,from:c})),[v]:r?.rbac,getNavText:async()=>(r?.seo?.title||await A(a,t)||"").toString(),metadata:{type:"markdown",...P},async getStaticData(c,f){return E(o,c,t,r,f)},getSearchDocuments:C(r,a,e.getSearchFacets,e.setSearchFacets),getAiDocumentsStore:N(e.getSearchFacets,r),serverPropsGetterIds:[S]})})}})},afterRoutesCreated:async(e,t)=>{const i=await M(t,e);e.setGlobalConfig({[D]:i})}}}export{ce as markdownPlugin};
1
+ import{REDOCLY_TEAMS_RBAC as y}from"@redocly/config";import{MARKDOC_PARTIALS_DATA_KEY as D}from"../../constants/common.js";import{reporter as R}from"../../tools/notifiers/reporter.js";import{canAccessFeature as g}from"../../utils/entitlements/can-access-feature.js";import{extractMdFirstHeading as A,getAst as T}from"./compiler.js";import{getTemplatePath as w}from"./get-template-path.js";import{prepareMarkdocPartials as M}from"./markdoc/partials.js";import{searchResolver as C}from"./search/search-resolver.js";import{markdownStaticDataLoader as E}from"./markdown-static-data-loader.js";import{makeErrorRoute as I}from"../error-route.js";import{validateRbacConfig as O}from"../validate-rbac-config.js";import{findFrontmatterSlugs as _,getSidebarSharedDataId as G,resolveFrontmatterSlugs as L}from"../utils.js";import{isPartial as j}from"./is-partial.js";import{markdownFrontmatterLoader as B}from"./markdown-frontmatter-loader.js";import{resolveRawPartials as K}from"./markdoc/resolve-raw-partials.js";import{getAiDocumentsStore as N}from"./search/get-ai-search-documents.js";import{registerPageProps as Y}from"../register-page-props.js";import{resolveMarkdownTemplate as q}from"./utils/resolve-markdown-template.js";import{sanitizeMalformedMdContent as z}from"./utils/sanitize-malformed-md-content.js";import{telemetryTraceStep as H}from"../../../cli/telemetry/helpers/trace-step.js";async function ce(h){return{id:"markdoc",requiredEntitlements:["markdown"],loaders:{"markdown-frontmatter":B,"markdown-ast":async(e,t)=>{const i=await t.fs.read(e),m=await t.getConfig(),s=await K(i,e,m?.markdown?.partialsFolders,t),n=z(s);return T(e,n)}},processContent:async(e,t)=>{await H("com.redocly.build.plugin.markdown",async i=>{const{markdown:m}=await t.getConfig();i?.setAttribute("config",JSON.stringify(m||{}));const s=m?.partialsFolders??[],n=e.createTemplate("markdown","@redocly/theme/core/templates/Markdown"),S=e.registerServerPropsGetter("markdown",w("./get-server-props.js"));e.createTemplate("error",w("../../../client/app/Error/ErrorDetails.js"));for(const o of t.fs.scan(/\.md$/))if(!await t.isPathIgnored(o.relativePath)&&!j(o.relativePath,s))try{await k(o)}catch(a){e.addRoute(I(o.relativePath,a)),i?.error(a),await R.panicOnBuild("Failed to create route for markdown file: %s",a.message)}async function k(o){const{relativePath:a,realRelativePath:b}=o,{data:{frontmatter:r}}=await t.cache.load(a,"markdown-frontmatter"),P=r?.metadata||{},F=await _(a,"markdown-frontmatter",r,t),p=L(F,a);let d=null;r?.sidebar&&(d=await G(r.sidebar,a,t.fs));let u=n;const l=q({realRelativePath:b,frontmatter:r,markdown:m,contentDir:h.contentDir});l&&(u=e.createTemplate(l.templateRef,l.templatePath)),r?.rbac&&(g("rbac")?O({content:{[a]:r.rbac}}):r.rbac=void 0),g("banner")||(r.banner=void 0),Y(o,t.fs,e),(p.length?p.reverse():[void 0]).forEach(v=>{e.addRoute({excludeFromSearch:r?.excludeFromSearch||!1,slug:v,fsPath:a,templateId:u,sharedData:d?[{id:d,key:"sidebar"}]:void 0,redirectFrom:Object.entries(r.redirects||{}).map(([c,{type:f}])=>({type:f,from:c})),[y]:r?.rbac,getNavText:async()=>(r?.seo?.title||await A(a,t)||"").toString(),metadata:{type:"markdown",...P},async getStaticData(c,f){return E(o,c,t,r,f)},getSearchDocuments:C(r,a,e.getSearchFacets,e.setSearchFacets),getAiDocumentsStore:N(e.getSearchFacets,r),serverPropsGetterIds:[S]})})}})},afterRoutesCreated:async(e,t)=>{const i=await M(t,e);e.setGlobalConfig({[D]:i})}}}export{ce as markdownPlugin};
@@ -1 +1 @@
1
- import g from"node:path";import{REDOCLY_TEAMS_RBAC as h}from"@redocly/config";import{slash as S}from"../../../utils/path/slash.js";import{canAccessFeature as y}from"../../utils/entitlements/can-access-feature.js";import{staticDataLoader as b}from"./loaders/static-data-loader.js";import{findFrontmatterSlugs as F,getSidebarSharedDataId as P,resolveFrontmatterSlugs as v}from"../utils.js";import{reactFrontmatterLoader as w}from"./loaders/react-frontmatter-loader.js";import{registerPageProps as D}from"../register-page-props.js";import{telemetryTraceStep as R}from"../../../cli/telemetry/helpers/trace-step.js";import{searchResolver as E}from"./search/search-resolver.js";async function x(){return{loaders:{"react-frontmatter":w},id:"react-pages",requiredEntitlements:["reactPages"],processContent:async(r,a)=>{await R("com.redocly.build.plugin.pages",async()=>{const{fs:o,cache:f}=a;for(const n of o.scan(/\.page\.tsx?$/)){const{relativePath:e,realRelativePath:l}=n;if(await a.isPathIgnored(e))continue;const p=r.createTemplate(S(e),g.resolve(o.cwd,l));D(n,o,r);const{data:t}=await f.load(e,"react-frontmatter"),u=await F(e,"react-frontmatter",t,a),s=v(u,e);let c=null;t?.sidebar&&(c=await P(t.sidebar,e,a.fs)),(s.length?s.reverse():[void 0]).forEach(i=>{r.addRoute({excludeFromSearch:t?.excludeFromSearch||!1,slug:i,templateId:p,fsPath:e,sharedData:c?[{id:c,key:"sidebar"}]:void 0,[h]:y("rbac")?t?.rbac:void 0,getNavText:async()=>t?.seo?.title,getStaticData:async(m,d)=>({props:await b({frontmatter:t,relativePath:e},a,d)}),getSearchDocuments:E(t,e,r.getSearchFacets,r.setSearchFacets)})});for(const[i,{to:m,type:d}]of Object.entries(t?.redirects||{}))r.addRedirect(i,{to:m||s[0],type:d||301})}})}}}export{x as customPagesPlugin};
1
+ import g from"node:path";import{REDOCLY_TEAMS_RBAC as h}from"@redocly/config";import{slash as S}from"../../../utils/path/slash.js";import{canAccessFeature as b}from"../../utils/entitlements/can-access-feature.js";import{staticDataLoader as y}from"./loaders/static-data-loader.js";import{findFrontmatterSlugs as F,getSidebarSharedDataId as P,resolveFrontmatterSlugs as v}from"../utils.js";import{reactFrontmatterLoader as w}from"./loaders/react-frontmatter-loader.js";import{registerPageProps as D}from"../register-page-props.js";import{telemetryTraceStep as R}from"../../../cli/telemetry/helpers/trace-step.js";import{searchResolver as E}from"./search/search-resolver.js";async function x(){return{loaders:{"react-frontmatter":w},id:"react-pages",requiredEntitlements:["reactPages"],processContent:async(r,a)=>{await R("com.redocly.build.plugin.pages",async()=>{const{fs:o,cache:f}=a;for(const n of o.scan(/\.page\.tsx?$/)){const{relativePath:e,realRelativePath:l}=n;if(await a.isPathIgnored(e))continue;const u=r.createTemplate(S(e),g.resolve(o.cwd,l));D(n,o,r);const{data:t}=await f.load(e,"react-frontmatter"),p=await F(e,"react-frontmatter",t,a),s=v(p,e);let c=null;t?.sidebar&&(c=await P(t.sidebar,e,a.fs)),(s.length?s.reverse():[void 0]).forEach(i=>{r.addRoute({excludeFromSearch:t?.excludeFromSearch||!1,slug:i,templateId:u,fsPath:e,sharedData:c?[{id:c,key:"sidebar"}]:void 0,[h]:b("rbac")?t?.rbac:void 0,getNavText:async()=>t?.seo?.title,getStaticData:async(m,d)=>({props:await y({frontmatter:t,relativePath:e},a,d)}),getSearchDocuments:E(t,e,r.getSearchFacets,r.setSearchFacets)})});for(const[i,{to:m,type:d}]of Object.entries(t?.redirects||{}))r.addRedirect(i,{to:m||s[0],type:d})}})}}}export{x as customPagesPlugin};
@@ -147,6 +147,7 @@ export declare class Store {
147
147
  getRequestHandler: (id: string) => string | undefined;
148
148
  createTemplate: (id: string, importPath: string) => string;
149
149
  addBrowserPlugin: (importPath: string) => void;
150
+ copyAsset: (src: string, fromFileRelativePath: string) => Promise<string | null>;
150
151
  createRequestHandler: (id: string, importPath: string) => string;
151
152
  clearRequestHandlersByPrefix: (prefix: string) => void;
152
153
  registerServerPropsGetter: (id: string, importPath: string) => string;