@redocly/openapi-docs 3.0.0-alpha.46 → 3.0.0-alpha.47

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.
Files changed (50) hide show
  1. package/dist/console.redocly-openapi-docs.min.js +45 -44
  2. package/dist/oauth2-redirect.js +1 -1
  3. package/dist/redocly-openapi-docs.min.js +1255 -1611
  4. package/lib/components/ApiInfo/ApiInfo.js +1 -1
  5. package/lib/components/Download/DownloadLink.js +1 -1
  6. package/lib/components/Endpoint/ServerList.js +1 -1
  7. package/lib/components/Endpoint/styled.js +2 -2
  8. package/lib/components/ExternalDocumentation/ExternalDocumentation.js +2 -2
  9. package/lib/components/Fields/Extensions.js +2 -2
  10. package/lib/components/Fields/styled.d.ts +1 -2
  11. package/lib/components/Fields/styled.js +2 -2
  12. package/lib/components/Markdown/styled.d.ts +0 -8
  13. package/lib/components/Markdown/styled.js +1 -260
  14. package/lib/components/PayloadSamples/ExampleValue.js +1 -1
  15. package/lib/components/PayloadSamples/ExternalExample.js +1 -1
  16. package/lib/components/RequestSamples/CodeSample.js +1 -1
  17. package/lib/components/SecurityRequirement/RequirementElement.js +3 -3
  18. package/lib/components/SecurityRequirement/SecurityDefs.js +1 -1
  19. package/lib/components/SecurityRequirement/SecurityRequirement.js +1 -1
  20. package/lib/components/SourceCodeWithFile/SourceCodeWithFile.js +1 -1
  21. package/lib/components/common/CheckboxList.js +5 -4
  22. package/lib/components/common/Fields/fields.js +11 -7
  23. package/lib/components/rightPanel/ResponseBody.js +1 -1
  24. package/lib/components/rightPanel/ResponseHeadersList.js +1 -1
  25. package/lib/components/rightPanel/styled.d.ts +0 -1
  26. package/lib/components/rightPanel/styled.js +4 -7
  27. package/lib-esm/components/ApiInfo/ApiInfo.js +1 -1
  28. package/lib-esm/components/Download/DownloadLink.js +1 -1
  29. package/lib-esm/components/Endpoint/ServerList.js +1 -1
  30. package/lib-esm/components/Endpoint/styled.js +2 -2
  31. package/lib-esm/components/ExternalDocumentation/ExternalDocumentation.js +3 -3
  32. package/lib-esm/components/Fields/Extensions.js +1 -1
  33. package/lib-esm/components/Fields/styled.d.ts +1 -2
  34. package/lib-esm/components/Fields/styled.js +2 -2
  35. package/lib-esm/components/Markdown/styled.d.ts +0 -8
  36. package/lib-esm/components/Markdown/styled.js +1 -260
  37. package/lib-esm/components/PayloadSamples/ExampleValue.js +1 -1
  38. package/lib-esm/components/PayloadSamples/ExternalExample.js +1 -1
  39. package/lib-esm/components/RequestSamples/CodeSample.js +1 -1
  40. package/lib-esm/components/SecurityRequirement/RequirementElement.js +1 -1
  41. package/lib-esm/components/SecurityRequirement/SecurityDefs.js +1 -1
  42. package/lib-esm/components/SecurityRequirement/SecurityRequirement.js +1 -1
  43. package/lib-esm/components/SourceCodeWithFile/SourceCodeWithFile.js +1 -1
  44. package/lib-esm/components/common/CheckboxList.js +5 -4
  45. package/lib-esm/components/common/Fields/fields.js +9 -5
  46. package/lib-esm/components/rightPanel/ResponseBody.js +1 -1
  47. package/lib-esm/components/rightPanel/ResponseHeadersList.js +1 -1
  48. package/lib-esm/components/rightPanel/styled.d.ts +0 -1
  49. package/lib-esm/components/rightPanel/styled.js +1 -4
  50. package/package.json +2 -2
@@ -13,6 +13,5 @@ export declare const TryItDropdown: import("styled-components").StyledComponent<
13
13
  fullWidth?: boolean | undefined;
14
14
  variant?: "dark" | "light" | undefined;
15
15
  }, never>;
16
- export declare const PanelPreCodeBlock: import("styled-components").StyledComponent<"pre", any, {}, never>;
17
16
  export declare const ResponseHeader: import("styled-components").StyledComponent<"div", any, {}, never>;
18
17
  export declare const FlowName: import("styled-components").StyledComponent<"div", any, {}, never>;
@@ -1,4 +1,4 @@
1
- "use strict";var __createBinding=this&&this.__createBinding||(Object.create?function(e,o,r,t){void 0===t&&(t=r);var n=Object.getOwnPropertyDescriptor(o,r);n&&!("get"in n?!o.__esModule:n.writable||n.configurable)||(n={enumerable:!0,get:function(){return o[r]}}),Object.defineProperty(e,t,n)}:function(e,o,r,t){void 0===t&&(t=r),e[t]=o[r]}),__setModuleDefault=this&&this.__setModuleDefault||(Object.create?function(e,o){Object.defineProperty(e,"default",{enumerable:!0,value:o})}:function(e,o){e.default=o}),__importStar=this&&this.__importStar||function(e){if(e&&e.__esModule)return e;var o={};if(null!=e)for(var r in e)"default"!==r&&Object.prototype.hasOwnProperty.call(e,r)&&__createBinding(o,e,r);return __setModuleDefault(o,e),o};Object.defineProperty(exports,"__esModule",{value:!0}),exports.FlowName=exports.ResponseHeader=exports.PanelPreCodeBlock=exports.TryItDropdown=exports.invertedInputStyles=exports.CloseButton=exports.ConsoleBody=exports.ConsoleWrap=exports.blink=void 0;const styled_components_1=__importStar(require("styled-components")),theme_1=require("@redocly/theme"),Dropdown_1=require("../common/Dropdown"),shake=styled_components_1.keyframes`
1
+ "use strict";var __createBinding=this&&this.__createBinding||(Object.create?function(o,e,r,t){void 0===t&&(t=r);var n=Object.getOwnPropertyDescriptor(e,r);n&&!("get"in n?!e.__esModule:n.writable||n.configurable)||(n={enumerable:!0,get:function(){return e[r]}}),Object.defineProperty(o,t,n)}:function(o,e,r,t){void 0===t&&(t=r),o[t]=e[r]}),__setModuleDefault=this&&this.__setModuleDefault||(Object.create?function(o,e){Object.defineProperty(o,"default",{enumerable:!0,value:e})}:function(o,e){o.default=e}),__importStar=this&&this.__importStar||function(o){if(o&&o.__esModule)return o;var e={};if(null!=o)for(var r in o)"default"!==r&&Object.prototype.hasOwnProperty.call(o,r)&&__createBinding(e,o,r);return __setModuleDefault(e,o),e};Object.defineProperty(exports,"__esModule",{value:!0}),exports.FlowName=exports.ResponseHeader=exports.TryItDropdown=exports.invertedInputStyles=exports.CloseButton=exports.ConsoleBody=exports.ConsoleWrap=exports.blink=void 0;const styled_components_1=__importStar(require("styled-components")),Dropdown_1=require("../common/Dropdown"),shake=styled_components_1.keyframes`
2
2
  10%, 90% {
3
3
  transform: translate3d(-1px, 0, 0);
4
4
  }
@@ -37,9 +37,9 @@
37
37
  z-index: var(--z-index-surface);
38
38
  display: flex;
39
39
  flex-direction: column;
40
- max-height: calc(85vh - ${({scrollYOffset:e})=>e?e():0}px);
40
+ max-height: calc(85vh - ${({scrollYOffset:o})=>o?o():0}px);
41
41
  margin-bottom: 10px;
42
- ${({shaking:e})=>e&&shakeAnimation};
42
+ ${({shaking:o})=>o&&shakeAnimation};
43
43
  > div:last-child {
44
44
  border-top-left-radius: 0;
45
45
  border-top-right-radius: 0;
@@ -48,7 +48,7 @@
48
48
  flex: 1;
49
49
  padding: var(--panel-samples-body-padding);
50
50
  overflow: auto;
51
- display: ${({hidden:e})=>e?"none":"flex"};
51
+ display: ${({hidden:o})=>o?"none":"flex"};
52
52
  flex-direction: column;
53
53
  position: relative;
54
54
  background-color: var(--panel-samples-body-background-color);
@@ -83,9 +83,6 @@
83
83
  border: var(--panel-try-it-dropdown-border);
84
84
  color: var(--panel-try-it-dropdown-color);
85
85
  }
86
- `,exports.PanelPreCodeBlock=(0,styled_components_1.default)(theme_1.PreformattedCodeBlock)`
87
- border-top-left-radius: 0;
88
- border-top-right-radius: 0;
89
86
  `,exports.ResponseHeader=styled_components_1.default.div`
90
87
  margin-bottom: 10px;
91
88
 
@@ -1,4 +1,4 @@
1
- import React from"react";import styled from"styled-components";import{useRecoilValue}from"recoil";import{AfterOpenApiTitle}from"@redocly/theme";import{layoutSelector,showRightPanelToggleSelector}from"../../recoil/app";import{SamplesMiddlePanel,Row,Section,SamplesPanel}from"../common";import{ExternalDocumentation}from"../ExternalDocumentation";import{Markdown,StyledMarkdownBlock}from"../Markdown";import{DownloadButtonWithLabel}from"../Download";import{ApiHeader,InfoSpan,InfoSpanBox,InfoSpanBoxWrap}from"./styled";import{globalStoreSelector}from"../../recoil/store";import{saveTextBeforeHeading}from"../../utils/saveTextBeforeHeading";import{getValueFromMdParsedExtension}from"../../utils/helpers";import{ServerList}from"../Endpoint/ServerList";import{CodePanel}from"../Panel/CodePanel";import{normalizeServers}from"../../utils/openapi";import{mergeInMockServer}from"../../models/operation";import{RenderHook}from"../RenderHook";export function ApiInfo({item:{infoDefinition:e}}){const{options:{markdownHeadingsAnchorLevel:t,hooks:o,hideDownloadButton:n,expandDefaultServerVariables:a,mockServer:r,hideInfoSection:l,hideInfoDescription:c},parser:{definition:i,definitionUrl:m}}=useRecoilValue(globalStoreSelector),s=useRecoilValue(showRightPanelToggleSelector),p=useRecoilValue(layoutSelector);if(!e||l)return null;const d=c?null:saveTextBeforeHeading(getValueFromMdParsedExtension(e,"description")||"",t),f=getValueFromMdParsedExtension(e,"summary")||void 0,u=null==i?void 0:i.externalDocs,S=normalizeServers(m,mergeInMockServer(i.servers||[],r)),R=e.license&&React.createElement(InfoSpan,null,"License:"," ",e.license.identifier?e.license.identifier:React.createElement("a",{href:e.license.url},e.license.name))||null,E=e.contact&&e.contact.url&&React.createElement(InfoSpan,null,"URL: ",React.createElement("a",{href:e.contact.url},e.contact.url))||null,v=e.contact&&e.contact.email&&React.createElement(InfoSpan,null,e.contact.name||"E-mail",":"," ",React.createElement("a",{href:"mailto:"+e.contact.email},e.contact.email))||null,h=e.termsOfService&&React.createElement(InfoSpan,null,React.createElement("a",{href:e.termsOfService},"Terms of Service"))||null,g=e.version&&React.createElement("span",null,"(",e.version,")")||null;return React.createElement(Section,null,React.createElement(Row,{layout:p},React.createElement(SamplesMiddlePanel,{className:"api-info"},React.createElement(ApiHeader,null,e.title," ",g),React.createElement(RenderHook,{Hook:AfterOpenApiTitle||(null==o?void 0:o.AfterApiTitle),props:{info:e}}),!n&&React.createElement(DownloadButtonWithLabel,{wrapped:!0}),React.createElement(StyledMarkdownBlock,null,(e.license||e.contact||e.termsOfService)&&React.createElement(InfoSpanBoxWrap,null,React.createElement(InfoSpanBox,null,v," ",E," ",R," ",h))||null),f&&React.createElement(Markdown,{source:f,"data-role":"redoc-summary"}),d&&React.createElement(Markdown,{source:d,"data-role":"redoc-description"}),u&&React.createElement(ExternalDocumentation,{externalDocs:u})),s&&S.length?React.createElement(InfoSamplesPanel,{"data-cy":"samples-block"},React.createElement(CodePanel,{className:"panel-try-it",header:"Servers",expanded:!0},React.createElement(ServerList,{servers:S,path:"/",expandVariables:Boolean(a),hideHostname:!1}))):null))}const InfoSamplesPanel=styled(SamplesPanel)`
1
+ import React from"react";import styled from"styled-components";import{useRecoilValue}from"recoil";import{AfterOpenApiTitle,MarkdownWrapper}from"@redocly/theme";import{layoutSelector,showRightPanelToggleSelector}from"../../recoil/app";import{SamplesMiddlePanel,Row,Section,SamplesPanel}from"../common";import{ExternalDocumentation}from"../ExternalDocumentation";import{Markdown}from"../Markdown";import{DownloadButtonWithLabel}from"../Download";import{ApiHeader,InfoSpan,InfoSpanBox,InfoSpanBoxWrap}from"./styled";import{globalStoreSelector}from"../../recoil/store";import{saveTextBeforeHeading}from"../../utils/saveTextBeforeHeading";import{getValueFromMdParsedExtension}from"../../utils/helpers";import{ServerList}from"../Endpoint/ServerList";import{CodePanel}from"../Panel/CodePanel";import{normalizeServers}from"../../utils/openapi";import{mergeInMockServer}from"../../models/operation";import{RenderHook}from"../RenderHook";export function ApiInfo({item:{infoDefinition:e}}){const{options:{markdownHeadingsAnchorLevel:t,hooks:o,hideDownloadButton:n,expandDefaultServerVariables:r,mockServer:a,hideInfoSection:l,hideInfoDescription:c},parser:{definition:i,definitionUrl:m}}=useRecoilValue(globalStoreSelector),s=useRecoilValue(showRightPanelToggleSelector),p=useRecoilValue(layoutSelector);if(!e||l)return null;const d=c?null:saveTextBeforeHeading(getValueFromMdParsedExtension(e,"description")||"",t),f=getValueFromMdParsedExtension(e,"summary")||void 0,u=null==i?void 0:i.externalDocs,S=normalizeServers(m,mergeInMockServer(i.servers||[],a)),R=e.license&&React.createElement(InfoSpan,null,"License:"," ",e.license.identifier?e.license.identifier:React.createElement("a",{href:e.license.url},e.license.name))||null,E=e.contact&&e.contact.url&&React.createElement(InfoSpan,null,"URL: ",React.createElement("a",{href:e.contact.url},e.contact.url))||null,v=e.contact&&e.contact.email&&React.createElement(InfoSpan,null,e.contact.name||"E-mail",":"," ",React.createElement("a",{href:"mailto:"+e.contact.email},e.contact.email))||null,h=e.termsOfService&&React.createElement(InfoSpan,null,React.createElement("a",{href:e.termsOfService},"Terms of Service"))||null,g=e.version&&React.createElement("span",null,"(",e.version,")")||null;return React.createElement(Section,null,React.createElement(Row,{layout:p},React.createElement(SamplesMiddlePanel,{className:"api-info"},React.createElement(ApiHeader,null,e.title," ",g),React.createElement(RenderHook,{Hook:AfterOpenApiTitle||(null==o?void 0:o.AfterApiTitle),props:{info:e}}),!n&&React.createElement(DownloadButtonWithLabel,{wrapped:!0}),React.createElement(MarkdownWrapper,null,(e.license||e.contact||e.termsOfService)&&React.createElement(InfoSpanBoxWrap,null,React.createElement(InfoSpanBox,null,v," ",E," ",R," ",h))||null),f&&React.createElement(Markdown,{source:f,"data-role":"redoc-summary"}),d&&React.createElement(Markdown,{source:d,"data-role":"redoc-description"}),u&&React.createElement(ExternalDocumentation,{externalDocs:u})),s&&S.length?React.createElement(InfoSamplesPanel,{"data-cy":"samples-block"},React.createElement(CodePanel,{className:"panel-try-it",header:"Servers",expanded:!0},React.createElement(ServerList,{servers:S,path:"/",expandVariables:Boolean(r),hideHostname:!1}))):null))}const InfoSamplesPanel=styled(SamplesPanel)`
2
2
  margin-top: calc(var(--h1-font-size) * 1.5);
3
3
  `;
4
4
  //# sourceMappingURL=ApiInfo.js.map
@@ -1,4 +1,4 @@
1
- import React from"react";import styled from"styled-components";import{SamplesControlButton}from"@redocly/theme";export function DownloadLink({fileInfo:o}){var e,t;if(!o)return null;const{rawData:n,fileName:l}=o,r=null===(t=null===(e=null===window||void 0===window?void 0:window.URL)||void 0===e?void 0:e.createObjectURL)||void 0===t?void 0:t.call(e,n instanceof Blob?n:new Blob([n],{type:"text/plain"}));return React.createElement(StyledAnchor,{href:r,download:l,title:"Download response"},React.createElement(SamplesControlButton,null,"Download"))}const StyledAnchor=styled.a`
1
+ import React from"react";import styled from"styled-components";import{CodeBlockControlButton}from"@redocly/theme";export function DownloadLink({fileInfo:o}){var e,t;if(!o)return null;const{rawData:n,fileName:l}=o,r=null===(t=null===(e=null===window||void 0===window?void 0:window.URL)||void 0===e?void 0:e.createObjectURL)||void 0===t?void 0:t.call(e,n instanceof Blob?n:new Blob([n],{type:"text/plain"}));return React.createElement(StyledAnchor,{href:r,download:l,title:"Download response"},React.createElement(CodeBlockControlButton,null,"Download"))}const StyledAnchor=styled.a`
2
2
  margin-left: 10px;
3
3
  `;
4
4
  //# sourceMappingURL=DownloadLink.js.map
@@ -1,2 +1,2 @@
1
- import React,{Fragment}from"react";import{CopyButtonWrapper}from"@redocly/theme";import{expandDefaultServerVariables,getBasePath}from"../../utils";import{Markdown}from"../Markdown";import{DescriptionWrapper,ServerItem,ServerUrl}from"./styled";export const ServerList=({servers:e,path:r,expandVariables:t,hideHostname:a})=>React.createElement(React.Fragment,null,e.map((e=>{const n=t?expandDefaultServerVariables(e.url,e.variables):e.url,l=getBasePath(n),o=(a?"/"===l?"":l:n)+r;return React.createElement(Fragment,{key:n},React.createElement(CopyButtonWrapper,{data:o},(({renderCopyButton:r})=>React.createElement(ServerItem,null,React.createElement(DescriptionWrapper,null,React.createElement(Markdown,{source:e.description||""}),r()),React.createElement(ServerUrl,null,o)))))})));
1
+ import React,{Fragment}from"react";import{CodeBlockControls}from"@redocly/theme";import{expandDefaultServerVariables,getBasePath}from"../../utils";import{Markdown}from"../Markdown";import{ServerItem,ServerUrl}from"./styled";export const ServerList=({servers:e,path:r,expandVariables:t,hideHostname:a})=>React.createElement(React.Fragment,null,e.map((e=>{const l=t?expandDefaultServerVariables(e.url,e.variables):e.url,o=getBasePath(l),n=(a?"/"===o?"":o:l)+r;return React.createElement(Fragment,{key:l},React.createElement(ServerItem,null,React.createElement(CodeBlockControls,{controls:{copy:{data:n}},title:React.createElement(Markdown,{source:e.description||""})}),React.createElement(ServerUrl,null,n)))})));
2
2
  //# sourceMappingURL=ServerList.js.map
@@ -18,10 +18,10 @@ import styled from"styled-components";import{Button}from"@redocly/theme";import{
18
18
  overflow-x: hidden;
19
19
  padding-right: 4px;
20
20
  `;export const ServerItem=styled.div`
21
- padding: 10px 0;
21
+ padding: 5px 0;
22
22
  `;export const ServerUrl=styled.div`
23
23
  ${invertedInputStyles};
24
- border-radius: var(--border-radius);
24
+ border-radius: 0 0 var(--border-radius) var(--border-radius);
25
25
  padding: 7px 12px;
26
26
  overflow-wrap: break-word;
27
27
  `;export const TryItButton=styled(Button)`
@@ -1,5 +1,5 @@
1
- import React,{memo}from"react";import styled from"styled-components";import{normalizeText}from"../../utils";import{linksCss}from"../Markdown";const LinkWrap=styled.div`
1
+ import React,{memo}from"react";import styled from"styled-components";import{linksCss}from"@redocly/theme";import{normalizeText}from"../../utils";const LinkWrap=styled.div`
2
2
  ${linksCss};
3
- ${({compact:t})=>t?"":"margin: 1em 0"}
4
- `;function ExternalDocumentationComponent({externalDocs:t,compact:e}){if(!t||!t.url)return null;const n=normalizeText(t.description);return React.createElement(LinkWrap,{compact:e},React.createElement("a",{href:t.url,target:"_blank",rel:"noreferrer"},n||t.url))}export const ExternalDocumentation=memo(ExternalDocumentationComponent);
3
+ ${({compact:e})=>e?"":"margin: 1em 0"}
4
+ `;function ExternalDocumentationComponent({externalDocs:e,compact:t}){if(!e||!e.url)return null;const r=normalizeText(e.description);return React.createElement(LinkWrap,{compact:t},React.createElement("a",{href:e.url,target:"_blank",rel:"noreferrer"},r||e.url))}export const ExternalDocumentation=memo(ExternalDocumentationComponent);
5
5
  //# sourceMappingURL=ExternalDocumentation.js.map
@@ -1,4 +1,4 @@
1
- import React,{memo}from"react";import styled from"styled-components";import{useRecoilValue}from"recoil";import{ExtensionValue,FieldLabel}from"../common";import{StyledMarkdownBlock}from"../Markdown/styled";import{globalOptionsSelector}from"../../recoil/store";const Extension=styled(StyledMarkdownBlock)`
1
+ import React,{memo}from"react";import styled from"styled-components";import{useRecoilValue}from"recoil";import{MarkdownWrapper}from"@redocly/theme";import{ExtensionValue,FieldLabel}from"../common";import{globalOptionsSelector}from"../../recoil/store";const Extension=styled(MarkdownWrapper)`
2
2
  margin: 2px 0;
3
3
  `;function ExtensionsComponent({extensions:e}){const{showExtensions:o,preserveOriginalExtensionsName:t}=useRecoilValue(globalOptionsSelector);return o?React.createElement("div",null,Object.keys(e).map((o=>React.createElement(Extension,{key:o},React.createElement(FieldLabel,null,t?o:o.substring(2),": ")," ",React.createElement(ExtensionValue,null,"string"==typeof e[o]?e[o]:JSON.stringify(e[o])))))):null}export const Extensions=memo(ExtensionsComponent);
4
4
  //# sourceMappingURL=Extensions.js.map
@@ -1,8 +1,7 @@
1
1
  export declare const ToggleButton: import("styled-components").StyledComponent<"span", any, {}, never>;
2
- export declare const DescriptionEnumsBlock: import("styled-components").StyledComponent<"div", any, {
2
+ export declare const DescriptionEnumsBlock: import("styled-components").StyledComponent<"main", any, {
3
3
  compact?: boolean | undefined;
4
4
  inline?: boolean | undefined;
5
- withoutTableStyle?: boolean | undefined;
6
5
  }, never>;
7
6
  export declare const TypeWrapper: import("styled-components").StyledComponent<"div", any, {}, never>;
8
7
  export declare const ExampleDescription: import("styled-components").StyledComponent<"div", any, {}, never>;
@@ -1,11 +1,11 @@
1
- import styled from"styled-components";import{StyledMarkdownBlock}from"../Markdown/styled";export const ToggleButton=styled.span`
1
+ import styled from"styled-components";import{MarkdownWrapper}from"@redocly/theme";export const ToggleButton=styled.span`
2
2
  color: var(--link-text-color);
3
3
  vertical-align: middle;
4
4
  font-size: 13px;
5
5
  line-height: 20px;
6
6
  padding: 0 5px;
7
7
  cursor: pointer;
8
- `;export const DescriptionEnumsBlock=styled(StyledMarkdownBlock)`
8
+ `;export const DescriptionEnumsBlock=styled(MarkdownWrapper)`
9
9
  table {
10
10
  margin-bottom: 0.2em;
11
11
  }
@@ -1,12 +1,4 @@
1
- export declare const linksCss: import("styled-components").FlattenSimpleInterpolation;
2
- export declare const baseTable: import("styled-components").FlattenSimpleInterpolation;
3
- export declare const StyledMarkdownBlock: import("styled-components").StyledComponent<"div", any, {
4
- compact?: boolean | undefined;
5
- inline?: boolean | undefined;
6
- withoutTableStyle?: boolean | undefined;
7
- }, never>;
8
1
  export declare const StyledMarkdownSpan: import("styled-components").StyledComponent<"span", any, {
9
2
  compact?: boolean | undefined;
10
3
  inline?: boolean | undefined;
11
- withoutTableStyle?: boolean | undefined;
12
4
  }, never>;
@@ -1,261 +1,2 @@
1
- import styled,{css}from"styled-components";import{CodeBlock}from"@redocly/theme";import{typography}from"../../utils";export const linksCss=css`
2
- a {
3
- text-decoration: var(--link-decoration, auto);
4
- color: var(--link-text-color);
5
-
6
- &:visited {
7
- color: var(--link-visited-text-color);
8
- text-decoration: var(--link-visited-decoration);
9
- }
10
-
11
- &:hover {
12
- color: var(--link-hover-text-color);
13
- text-decoration: var(--link-hover-decoration, auto);
14
- }
15
-
16
- &:focus {
17
- color: var(--link-active-text-color);
18
- text-decoration: var(--link-active-decoration);
19
- }
20
- }
21
- `;export const baseTable=css`
22
- table {
23
- display: block;
24
- width: 100%;
25
- overflow: auto;
26
- word-break: keep-all;
27
- border-collapse: separate;
28
- border-spacing: 0;
29
- margin-top: var(--md-table-margin-vertical);
30
- margin-bottom: var(--md-table-margin-vertical);
31
- font-size: var(--md-table-font-size);
32
- }
33
-
34
- table th,
35
- table td {
36
- padding: var(--md-table-cell-padding);
37
- border-bottom: 1px solid var(--md-table-border-color);
38
- color: var(--md-table-cell-text-color);
39
- }
40
-
41
- table tr {
42
- background-color: var(--md-table-stripe-background-color);
43
- }
44
-
45
- table th {
46
- text-align: left;
47
- font-weight: var(--md-table-head-font-weight);
48
- color: var(--md-table-head-text-color);
49
- background-color: var(--md-table-head-background-color);
50
- }
51
-
52
- table tr th:first-child,
53
- table tr td:first-child {
54
- border-left: 1px solid var(--md-table-border-color);
55
- }
56
-
57
- table tr td:last-child,
58
- table tr th:last-child {
59
- border-right: 1px solid var(--md-table-border-color);
60
- }
61
-
62
- table thead td,
63
- table thead th {
64
- border-top: 1px solid var(--md-table-border-color);
65
- }
66
-
67
- /* top-left border */
68
- table thead tr:first-child th:first-child {
69
- border-top-left-radius: var(--md-table-border-radius);
70
- }
71
-
72
- /* top-right border */
73
- table thead tr:first-child th:last-child {
74
- border-top-right-radius: var(--md-table-border-radius);
75
- border-top: 1px solid var(--md-table-border-color);
76
- }
77
-
78
- /* bottom-left border */
79
- table tbody tr:last-child td:first-child {
80
- border-bottom-left-radius: var(--md-table-border-radius);
81
- }
82
-
83
- /* bottom-right border */
84
- table tbody tr:last-child td:last-child {
85
- border-bottom-right-radius: var(--md-table-border-radius);
86
- }
87
- `;export const StyledMarkdownBlock=styled(CodeBlock)`
88
- font-family: var(--font-family-base);
89
- font-weight: var(--font-weight-regular);
90
- line-height: var(--line-height-base);
91
- max-height: none;
92
-
93
- p {
94
- margin: var(--md-paragraph-margin-vertical) var(--md-paragraph-margin-horizontal);
95
-
96
- &:first-child {
97
- margin-top: 0;
98
- }
99
-
100
- &:last-child {
101
- margin-bottom: 0;
102
- }
103
- }
104
-
105
- ${({compact:r})=>r&&css`
106
- p:first-child {
107
- margin-top: 0;
108
- }
109
- p:last-child {
110
- margin-bottom: 0;
111
- }
112
- `}
113
-
114
- ${({inline:r})=>r&&css`
115
- p {
116
- display: inline-block;
117
- }
118
- `}
119
-
120
- h1 {
121
- margin-top: 0;
122
- ${typography("h1","h")};
123
- }
124
-
125
- h2 {
126
- ${typography("h2","h")};
127
- }
128
-
129
- code {
130
- border-radius: var(--inline-code-border-radius);
131
- border: 1px solid var(--inline-code-border-color);
132
- padding: 0 var(--spacing-unit);
133
- word-break: break-word;
134
- font-family: var(--inline-code-font-family);
135
- font-size: var(--inline-code-font-size);
136
- color: var(--inline-code-text-color);
137
- background-color: var(--inline-code-background-color);
138
- font-weight: var(--code-font-weight);
139
- }
140
-
141
- h1,
142
- h2,
143
- h3,
144
- h4,
145
- h5,
146
- h6 {
147
- > code {
148
- font-size: inherit;
149
- }
150
- }
151
-
152
- hr {
153
- border-top: 1px solid var(--md-hr-border-color);
154
- background-color: var(--md-hr-background-color);
155
- height: var(--md-hr-height);
156
- margin: var(--md-hr-margin-vertical) 0;
157
- }
158
-
159
- pre {
160
- white-space: var(--code-wrap, pre);
161
- background-color: var(--code-block-background-color);
162
- font-family: var(--code-font-family);
163
- color: white;
164
- padding: calc(var(--spacing-unit) * 2);
165
- overflow-x: auto;
166
- line-height: normal;
167
- border-radius: var(--panel-border-radius);
168
- border: 1px solid rgba(38, 50, 56, 0.1);
169
-
170
- code {
171
- background-color: transparent;
172
- color: white;
173
- padding: 0;
174
- border: none;
175
-
176
- &:before,
177
- &:after {
178
- content: none;
179
- }
180
- }
181
- }
182
-
183
- blockquote {
184
- margin: var(--md-blockquote-margin-vertical) var(--md-blockquote-margin-horizontal);
185
- padding: var(--md-blockquote-padding-vertical) var(--md-blockquote-padding-horizontal);
186
- border-left: var(--md-blockquote-border-left);
187
- background-color: var(--md-blockquote-background-color);
188
- color: var(--md-blockquote-text-color);
189
- box-shadow: var(--md-blockquote-box-shadow);
190
- }
191
-
192
- img {
193
- max-width: 100%;
194
- box-sizing: content-box;
195
- }
196
-
197
- ul,
198
- ol {
199
- padding-left: var(--md-list-left-padding);
200
- margin: 0 0 var(--md-list-margin);
201
-
202
- ul,
203
- ol {
204
- margin-bottom: 0;
205
- margin-top: 0;
206
- }
207
- }
208
-
209
- li {
210
- margin: var(--md-list-item-margin);
211
- list-style: var(--md-list-item-style);
212
- }
213
-
214
- ul > li:has(input[type='checkbox']) {
215
- list-style: var(--md-checkbox-list-item-style);
216
- }
217
-
218
- ol > li {
219
- list-style: var(--md-numbered-list-item-style);
220
- }
221
-
222
- ol > li:before {
223
- content: counter(list-item);
224
- display: var(--md-numbered-list-number-display);
225
- color: var(--md-numbered-list-number-text-color);
226
- font-size: var(--md-numbered-list-number-font-size);
227
- font-family: var(--md-numbered-list-number-font-family);
228
- font-weight: var(--md-numbered-list-number-font-weight);
229
- background-color: var(--md-numbered-list-number-background-color);
230
- border-radius: var(--md-numbered-list-number-border-radius);
231
- border: var(--md-numbered-list-number-border);
232
- margin-right: var(--md-numbered-list-number-margin-right);
233
- padding: var(--md-numbered-list-number-padding);
234
- }
235
-
236
- ${({withoutTableStyle:r})=>!r&&baseTable}
237
-
238
- ${linksCss}
239
-
240
- h1 {
241
- ${typography("h1","h")}
242
- clear: both;
243
- }
244
- h2 {
245
- ${typography("h2","h")}
246
- clear: both;
247
- }
248
- h3 {
249
- ${typography("h3","h")}
250
- clear: both;
251
- }
252
-
253
- pre {
254
- border-radius: var(--panel-border-radius);
255
- }
256
-
257
- code {
258
- word-wrap: var(--code-word-break);
259
- }
260
- `;export const StyledMarkdownSpan=StyledMarkdownBlock.withComponent("span");
1
+ import{MarkdownWrapper}from"@redocly/theme";export const StyledMarkdownSpan=MarkdownWrapper.withComponent("span");
261
2
  //# sourceMappingURL=styled.js.map
@@ -1,2 +1,2 @@
1
- import React from"react";import{SourceCode,JsonViewer}from"@redocly/theme";import{isFormUrlEncoded,isJsonLike,langFromMime,urlFormEncodePayload}from"../../utils";export function ExampleValue({value:e,mimeType:o,encoding:r,onCopyClick:n}){return isJsonLike(o)?React.createElement(JsonViewer,{data:e,jsonSampleExpandLevel:1,onCopyClick:n}):("object"==typeof e&&(e=isFormUrlEncoded(o)?urlFormEncodePayload(e,r):JSON.stringify(e,null,2)),React.createElement(SourceCode,{lang:langFromMime(o),source:e,withCopyButton:!0,onCopyClick:n}))}
1
+ import React from"react";import{CodeBlock,JsonViewer}from"@redocly/theme";import{isFormUrlEncoded,isJsonLike,langFromMime,urlFormEncodePayload}from"../../utils";export function ExampleValue({value:e,mimeType:o,encoding:r,onCopyClick:l}){return isJsonLike(o)?React.createElement(JsonViewer,{data:e,jsonSampleExpandLevel:1,onCopyClick:l}):("object"==typeof e&&(e=isFormUrlEncoded(o)?urlFormEncodePayload(e,r):JSON.stringify(e,null,2)),React.createElement(CodeBlock,{lang:langFromMime(o),source:e,header:{controls:{copy:{onClick:l}}}}))}
2
2
  //# sourceMappingURL=ExampleValue.js.map
@@ -1,2 +1,2 @@
1
- import{PreformattedCodeBlock}from"@redocly/theme";import React from"react";import{useExternalExample}from"./useExternalExample";import{ExampleValue}from"./ExampleValue";export function ExternalExample({example:e,mimeType:r,onCopyClick:a}){const l=useExternalExample(e,r);return void 0===l?React.createElement("span",null,"Loading..."):l instanceof Error?React.createElement(PreformattedCodeBlock,null,"Error loading external example: ",React.createElement("br",null),React.createElement("a",{className:"token string",href:e.externalValueUrl,target:"_blank",rel:"noopener noreferrer"},e.externalValueUrl)):React.createElement(ExampleValue,{value:l,mimeType:r,onCopyClick:a})}
1
+ import{CodeBlockContainer}from"@redocly/theme";import React from"react";import{useExternalExample}from"./useExternalExample";import{ExampleValue}from"./ExampleValue";export function ExternalExample({example:e,mimeType:a,onCopyClick:r}){const l=useExternalExample(e,a);return void 0===l?React.createElement("span",null,"Loading..."):l instanceof Error?React.createElement(CodeBlockContainer,null,"Error loading external example: ",React.createElement("br",null),React.createElement("a",{className:"token string",href:e.externalValueUrl,target:"_blank",rel:"noopener noreferrer"},e.externalValueUrl)):React.createElement(ExampleValue,{value:l,mimeType:a,onCopyClick:r})}
2
2
  //# sourceMappingURL=ExternalExample.js.map
@@ -1,2 +1,2 @@
1
- var __rest=this&&this.__rest||function(e,o){var t={};for(var r in e)Object.prototype.hasOwnProperty.call(e,r)&&o.indexOf(r)<0&&(t[r]=e[r]);if(null!=e&&"function"==typeof Object.getOwnPropertySymbols){var a=0;for(r=Object.getOwnPropertySymbols(e);a<r.length;a++)o.indexOf(r[a])<0&&Object.prototype.propertyIsEnumerable.call(e,r[a])&&(t[r[a]]=e[r[a]])}return t};import React,{memo,useCallback}from"react";import{SourceCode}from"@redocly/theme";import{DropdownOrLabel}from"../DropdownOrLabel";import{MediaTypesSwitch}from"../MediaTypeSwitch";import{DropdownWrapper}from"../PayloadSamples";import{Example}from"./Example";import{MimeLabel}from"../shared";import{Dropdown}from"../common/Dropdown";function CodeSampleComponent(e){var{onlyDefaultSample:o,onlyDefaultMimeType:t,content:r,onCopyClick:a}=e,n=__rest(e,["onlyDefaultSample","onlyDefaultMimeType","content","onCopyClick"]);const l=useCallback((e=>{var o,a,n;const l=t&&(null===(o=e.operation)||void 0===o?void 0:o.defaultMimeType);return(null!==(n=null===(a=null==r?void 0:r.mediaTypes)||void 0===a?void 0:a.length)&&void 0!==n?n:0)>1&&!l?React.createElement(DropdownWrapper,null,React.createElement(DropdownOrLabel,Object.assign({Label:MimeLabel,Dropdown:Dropdown,variant:"dark",fullWidth:!0},e))):null}),[r,t]),p=e=>n.source?React.createElement(SourceCode,{lang:n.lang,source:n.source,withCopyButton:!0,onCopyClick:a}):React.createElement(SourceCode,{lang:n.lang,externalSource:{sample:n.externalSample,exampleName:e,operation:n.operation,pathParams:n.pathParams,properties:n.properties},withCopyButton:!0,onCopyClick:a});return void 0===r||null!=n.source?p():React.createElement(MediaTypesSwitch,{content:r,renderDropdown:l},(e=>React.createElement(Example,{mediaType:e,mediaContent:r,renderSample:p,onlyDefaultSample:o})))}export const CodeSample=memo(CodeSampleComponent);
1
+ var __rest=this&&this.__rest||function(e,o){var r={};for(var t in e)Object.prototype.hasOwnProperty.call(e,t)&&o.indexOf(t)<0&&(r[t]=e[t]);if(null!=e&&"function"==typeof Object.getOwnPropertySymbols){var a=0;for(t=Object.getOwnPropertySymbols(e);a<t.length;a++)o.indexOf(t[a])<0&&Object.prototype.propertyIsEnumerable.call(e,t[a])&&(r[t[a]]=e[t[a]])}return r};import React,{memo,useCallback}from"react";import{CodeBlock}from"@redocly/theme";import{DropdownOrLabel}from"../DropdownOrLabel";import{MediaTypesSwitch}from"../MediaTypeSwitch";import{DropdownWrapper}from"../PayloadSamples";import{Example}from"./Example";import{MimeLabel}from"../shared";import{Dropdown}from"../common/Dropdown";function CodeSampleComponent(e){var{onlyDefaultSample:o,onlyDefaultMimeType:r,content:t,onCopyClick:a}=e,l=__rest(e,["onlyDefaultSample","onlyDefaultMimeType","content","onCopyClick"]);const n=useCallback((e=>{var o,a,l;const n=r&&(null===(o=e.operation)||void 0===o?void 0:o.defaultMimeType);return(null!==(l=null===(a=null==t?void 0:t.mediaTypes)||void 0===a?void 0:a.length)&&void 0!==l?l:0)>1&&!n?React.createElement(DropdownWrapper,null,React.createElement(DropdownOrLabel,Object.assign({Label:MimeLabel,Dropdown:Dropdown,variant:"dark",fullWidth:!0},e))):null}),[t,r]),p=e=>l.source?React.createElement(CodeBlock,{lang:l.lang,source:l.source,header:{controls:{copy:{onClick:a}}}}):React.createElement(CodeBlock,{lang:l.lang,externalSource:{sample:l.externalSample,exampleName:e,operation:l.operation,pathParams:l.pathParams,properties:l.properties},header:{controls:{copy:{onClick:a}}}});return void 0===t||null!=l.source?p():React.createElement(MediaTypesSwitch,{content:t,renderDropdown:n},(e=>React.createElement(Example,{mediaType:e,mediaContent:t,renderSample:p,onlyDefaultSample:o})))}export const CodeSample=memo(CodeSampleComponent);
2
2
  //# sourceMappingURL=CodeSample.js.map
@@ -1,4 +1,4 @@
1
- import React from"react";import styled from"styled-components";import{AUTH_TYPES}from"./constants";import{Link}from"../common";import{linksCss}from"../Markdown/styled";export function RequirementElement({showSecuritySchemeType:e,security:t}){return React.createElement(SecurityRequirementOrWrap,null,t.schemes.map((t=>{const r=t.scopes.length>0;return React.createElement(SecurityRequirementAndWrap,{key:t.id},e?`${AUTH_TYPES[t.type]||t.type}: `:null,React.createElement(Link,{to:t.id,security:!0},React.createElement("b",null,t.id)),r?["(",t.scopes.map((e=>React.createElement(ScopeName,{key:e},e))).reduce(((e,t)=>[e,", ",t])),")"]:null)})))}const SecurityRequirementAndWrap=styled.span`
1
+ import React from"react";import styled from"styled-components";import{linksCss}from"@redocly/theme";import{AUTH_TYPES}from"./constants";import{Link}from"../common";export function RequirementElement({showSecuritySchemeType:e,security:t}){return React.createElement(SecurityRequirementOrWrap,null,t.schemes.map((t=>{const r=t.scopes.length>0;return React.createElement(SecurityRequirementAndWrap,{key:t.id},e?`${AUTH_TYPES[t.type]||t.type}: `:null,React.createElement(Link,{to:t.id,security:!0},React.createElement("b",null,t.id)),r?["(",t.scopes.map((e=>React.createElement(ScopeName,{key:e},e))).reduce(((e,t)=>[e,", ",t])),")"]:null)})))}const SecurityRequirementAndWrap=styled.span`
2
2
  &:after {
3
3
  content: ' and ';
4
4
  font-weight: normal;
@@ -1,4 +1,4 @@
1
- import React from"react";import styled from"styled-components";import{useRecoilValue}from"recoil";import{H2}from"@redocly/theme";import{Markdown,StyledMarkdownBlock}from"../Markdown";import{OAuthFlow}from"../SecuritySchemes";import{AUTH_TYPES}from"./constants";import{Section,ShareLink}from"../common";import{titleize}from"../../utils";import{globalStoreSelector}from"../../recoil/store";import{getSecuritySchemes}from"../../models";import{Pagination}from"../../services";export function SecurityDefs(){const{parser:e,options:t}=useRecoilValue(globalStoreSelector),r=getSecuritySchemes({parser:e}),a=t.pagination===Pagination.Item?"section/":"";return React.createElement(React.Fragment,null,null==r?void 0:r.map((e=>React.createElement(Section,{id:a+e.sectionId,sectionId:e.sectionId,key:e.id},React.createElement(H2,null,React.createElement(ShareLink,{to:`#${a}${e.sectionId}`}),e.id),React.createElement(Description,{source:e.description||""}),React.createElement(StyledMarkdownBlock,null,React.createElement("div",{className:"security-details"},React.createElement("div",null,React.createElement("b",null,"Security Scheme Type: "),React.createElement("span",null,AUTH_TYPES[e.type]||e.type)),e.apiKey?React.createElement("div",null,React.createElement("b",null,titleize(e.apiKey.in||"")," parameter name: "),React.createElement("span",null,e.apiKey.name)):e.http?[React.createElement("div",{key:"scheme"},React.createElement("b",null,"HTTP Authorization Scheme "),React.createElement("span",null,e.http.scheme)),"bearer"===e.http.scheme&&e.http.bearerFormat&&React.createElement("div",{key:"bearer"},React.createElement("b",null,"Bearer format: "),React.createElement("span",null,'"',e.http.bearerFormat,'"'))]:e.openId?React.createElement("div",null,React.createElement("b",null,"Connect URL:"),React.createElement("a",{target:"_blank",rel:"noopener noreferrer",href:e.openId.connectUrl},e.openId.connectUrl)):e.flows?Object.keys(e.flows).map((t=>React.createElement(OAuthFlow,{key:t,type:t,flow:e.flows[t]}))):null))))))}const Description=styled((e=>React.createElement(Markdown,Object.assign({},e))))`
1
+ import React from"react";import styled from"styled-components";import{useRecoilValue}from"recoil";import{H2,MarkdownWrapper}from"@redocly/theme";import{Markdown}from"../Markdown";import{OAuthFlow}from"../SecuritySchemes";import{AUTH_TYPES}from"./constants";import{Section,ShareLink}from"../common";import{titleize}from"../../utils";import{globalStoreSelector}from"../../recoil/store";import{getSecuritySchemes}from"../../models";import{Pagination}from"../../services";export function SecurityDefs(){const{parser:e,options:t}=useRecoilValue(globalStoreSelector),r=getSecuritySchemes({parser:e}),a=t.pagination===Pagination.Item?"section/":"";return React.createElement(React.Fragment,null,null==r?void 0:r.map((e=>React.createElement(Section,{id:a+e.sectionId,sectionId:e.sectionId,key:e.id},React.createElement(H2,null,React.createElement(ShareLink,{to:`#${a}${e.sectionId}`}),e.id),React.createElement(Description,{source:e.description||""}),React.createElement(MarkdownWrapper,null,React.createElement("div",{className:"security-details"},React.createElement("div",null,React.createElement("b",null,"Security Scheme Type: "),React.createElement("span",null,AUTH_TYPES[e.type]||e.type)),e.apiKey?React.createElement("div",null,React.createElement("b",null,titleize(e.apiKey.in||"")," parameter name: "),React.createElement("span",null,e.apiKey.name)):e.http?[React.createElement("div",{key:"scheme"},React.createElement("b",null,"HTTP Authorization Scheme "),React.createElement("span",null,e.http.scheme)),"bearer"===e.http.scheme&&e.http.bearerFormat&&React.createElement("div",{key:"bearer"},React.createElement("b",null,"Bearer format: "),React.createElement("span",null,'"',e.http.bearerFormat,'"'))]:e.openId?React.createElement("div",null,React.createElement("b",null,"Connect URL:"),React.createElement("a",{target:"_blank",rel:"noopener noreferrer",href:e.openId.connectUrl},e.openId.connectUrl)):e.flows?Object.keys(e.flows).map((t=>React.createElement(OAuthFlow,{key:t,type:t,flow:e.flows[t]}))):null))))))}const Description=styled((e=>React.createElement(Markdown,Object.assign({},e))))`
2
2
  margin-bottom: 1em;
3
3
  `;
4
4
  //# sourceMappingURL=SecurityDefs.js.map
@@ -1,4 +1,4 @@
1
- import React,{Fragment,memo,useState}from"react";import styled from"styled-components";import{useRecoilValue}from"recoil";import{Markdown,StyledMarkdownBlock}from"../Markdown";import{OAuthFlow}from"../SecuritySchemes";import{PanelDescription}from"./PanelDescription";import{RequirementElement}from"./RequirementElement";import{RequiredScopesRow}from"./RequiredScopesRow";import{LockIcon}from"../icons";import{Row}from"./styled";import{AUTH_TYPES}from"./constants";import{l}from"../../services";import{titleize}from"../../utils";import{ContentPanel}from"../Panel";import{globalStoreSelector}from"../../recoil/store";import{useSecurityRequirements}from"./useSecurityRequirements";function getRequiredScopes(e,t){const r=[];let o=t.length;for(;o--;){const n=t[o];let c=n.schemes.length;for(;c--;){const t=n.schemes[c];t.id===e&&r.push(...t.scopes)}}return Array.from(new Set(r))}function SecurityRequirementsComponent({securities:e}){const[t,r]=useState(!1),{options:{showSecuritySchemeType:o,hideSecuritySection:n},parser:c}=useRecoilValue(globalStoreSelector),a=useSecurityRequirements({parser:c,securities:e});return!e.length||n?null:React.createElement(ContentPanel,{className:"panel-security-schemas",header:l("authorizations"),onToggle:e=>r(e),description:!t&&React.createElement(PanelDescription,{securities:e,showSecuritySchemeType:o}),expanded:t},t&&a&&a.length>1?React.createElement(SecurityRequirementBlock,null,e.map(((t,r)=>{let n,c,a="";return e.length>1&&t.schemes.length>1&&(c=0===r?"(":"",a=")"),r!==e.length-1&&(a+=" or",n=React.createElement("br",null)),React.createElement(Fragment,{key:t.schemes.map((({id:e})=>e)).join("")},c,React.createElement(RequirementElement,{security:t,showSecuritySchemeType:o}),a,n)}))):null,t?a.map((t=>{const r=getRequiredScopes(t.id,e);return React.createElement(SecurityDetails,{key:t.id},React.createElement("h5",null,React.createElement(LockIcon,{size:"11px",style:{verticalAlign:"baseline"},color:"--panel-body-text-color"})," ",AUTH_TYPES[t.type]||t.type,": ",t.id),React.createElement(Markdown,{source:t.description||""}),React.createElement(StyledMarkdownBlock,{key:t.id},t.apiKey?React.createElement(React.Fragment,null,React.createElement(Row,null,React.createElement("b",null,titleize(t.apiKey.in||"")," parameter name: "),React.createElement("code",null,t.apiKey.name)),React.createElement(RequiredScopesRow,{scopes:r})):t.http?React.createElement(React.Fragment,null,React.createElement(Row,null,React.createElement("b",null,"HTTP Authorization Scheme: "),React.createElement("code",null,t.http.scheme)),React.createElement(Row,null,"bearer"===t.http.scheme&&t.http.bearerFormat&&React.createElement(React.Fragment,null,React.createElement("b",null,"Bearer format: "),React.createElement("code",null,t.http.bearerFormat))),React.createElement(RequiredScopesRow,{scopes:r})):t.openId?React.createElement(React.Fragment,null,React.createElement(Row,null,React.createElement("b",null,"Connect URL: "),React.createElement("code",null,React.createElement("a",{target:"_blank",rel:"noopener noreferrer",href:t.openId.connectUrl},t.openId.connectUrl))),React.createElement(RequiredScopesRow,{scopes:r})):t.flows?Object.keys(t.flows).map((e=>React.createElement(OAuthFlow,{key:e,type:e,flow:t.flows[e]},React.createElement(RequiredScopesRow,{scopes:r})))):null))})):null)}export const SecurityRequirements=memo(SecurityRequirementsComponent);const SecurityDetails=styled.div`
1
+ import React,{Fragment,memo,useState}from"react";import styled from"styled-components";import{useRecoilValue}from"recoil";import{MarkdownWrapper}from"@redocly/theme";import{Markdown}from"../Markdown";import{OAuthFlow}from"../SecuritySchemes";import{PanelDescription}from"./PanelDescription";import{RequirementElement}from"./RequirementElement";import{RequiredScopesRow}from"./RequiredScopesRow";import{LockIcon}from"../icons";import{Row}from"./styled";import{AUTH_TYPES}from"./constants";import{l}from"../../services";import{titleize}from"../../utils";import{ContentPanel}from"../Panel";import{globalStoreSelector}from"../../recoil/store";import{useSecurityRequirements}from"./useSecurityRequirements";function getRequiredScopes(e,t){const r=[];let o=t.length;for(;o--;){const n=t[o];let c=n.schemes.length;for(;c--;){const t=n.schemes[c];t.id===e&&r.push(...t.scopes)}}return Array.from(new Set(r))}function SecurityRequirementsComponent({securities:e}){const[t,r]=useState(!1),{options:{showSecuritySchemeType:o,hideSecuritySection:n},parser:c}=useRecoilValue(globalStoreSelector),a=useSecurityRequirements({parser:c,securities:e});return!e.length||n?null:React.createElement(ContentPanel,{className:"panel-security-schemas",header:l("authorizations"),onToggle:e=>r(e),description:!t&&React.createElement(PanelDescription,{securities:e,showSecuritySchemeType:o}),expanded:t},t&&a&&a.length>1?React.createElement(SecurityRequirementBlock,null,e.map(((t,r)=>{let n,c,a="";return e.length>1&&t.schemes.length>1&&(c=0===r?"(":"",a=")"),r!==e.length-1&&(a+=" or",n=React.createElement("br",null)),React.createElement(Fragment,{key:t.schemes.map((({id:e})=>e)).join("")},c,React.createElement(RequirementElement,{security:t,showSecuritySchemeType:o}),a,n)}))):null,t?a.map((t=>{const r=getRequiredScopes(t.id,e);return React.createElement(SecurityDetails,{key:t.id},React.createElement("h5",null,React.createElement(LockIcon,{size:"11px",style:{verticalAlign:"baseline"},color:"--panel-body-text-color"})," ",AUTH_TYPES[t.type]||t.type,": ",t.id),React.createElement(Markdown,{source:t.description||""}),React.createElement(MarkdownWrapper,{key:t.id},t.apiKey?React.createElement(React.Fragment,null,React.createElement(Row,null,React.createElement("b",null,titleize(t.apiKey.in||"")," parameter name: "),React.createElement("code",null,t.apiKey.name)),React.createElement(RequiredScopesRow,{scopes:r})):t.http?React.createElement(React.Fragment,null,React.createElement(Row,null,React.createElement("b",null,"HTTP Authorization Scheme: "),React.createElement("code",null,t.http.scheme)),React.createElement(Row,null,"bearer"===t.http.scheme&&t.http.bearerFormat&&React.createElement(React.Fragment,null,React.createElement("b",null,"Bearer format: "),React.createElement("code",null,t.http.bearerFormat))),React.createElement(RequiredScopesRow,{scopes:r})):t.openId?React.createElement(React.Fragment,null,React.createElement(Row,null,React.createElement("b",null,"Connect URL: "),React.createElement("code",null,React.createElement("a",{target:"_blank",rel:"noopener noreferrer",href:t.openId.connectUrl},t.openId.connectUrl))),React.createElement(RequiredScopesRow,{scopes:r})):t.flows?Object.keys(t.flows).map((e=>React.createElement(OAuthFlow,{key:e,type:e,flow:t.flows[e]},React.createElement(RequiredScopesRow,{scopes:r})))):null))})):null)}export const SecurityRequirements=memo(SecurityRequirementsComponent);const SecurityDetails=styled.div`
2
2
  border-bottom: 1px solid var(--border-color);
3
3
  margin-bottom: 1.5em;
4
4
  padding-bottom: 0.7em;
@@ -1,2 +1,2 @@
1
- import React from"react";import{SampleControls,SampleControlsWrap,PreformattedCodeBlock}from"@redocly/theme";import{DownloadLink}from"../Download";import{FileIcon}from"../icons";export function SourceCodeWithFile({fileInfo:e}){return React.createElement(SampleControlsWrap,null,React.createElement(SampleControls,null,React.createElement(DownloadLink,{fileInfo:e})),React.createElement(PreformattedCodeBlock,null,React.createElement(FileIcon,{color:"--text-color-inverse"}),null==e?void 0:e.fileName))}
1
+ import React from"react";import{CodeBlockContainer,CodeBlockControls}from"@redocly/theme";import styled from"styled-components";import{DownloadLink}from"../Download";import{FileIcon}from"../icons";export function SourceCodeWithFile({fileInfo:e}){return React.createElement(Wrapper,null,React.createElement(CodeBlockControls,null,React.createElement(DownloadLink,{fileInfo:e})),React.createElement(CodeBlockContainer,null,React.createElement(FileIcon,{color:"--text-color-inverse"}),null==e?void 0:e.fileName))}const Wrapper=styled.div``;
2
2
  //# sourceMappingURL=SourceCodeWithFile.js.map
@@ -1,7 +1,8 @@
1
- import{asField}from"informed";import{SampleControls,SamplesControlButton}from"@redocly/theme";import React,{useState}from"react";import styled from"styled-components";import{FormError}from"./form";import{Checkbox}from"./Checkbox";const DEFAULT_MAX_ITEMS=11;export const CheckboxListComponent=({items:e,fieldApi:t,validateOnChange:l,maxDisplayedItems:o,showControls:n,trimItemsLength:r})=>{const[a,c]=useState(!0),s=e=>t.getValue().includes(e),m=t.getError(),i=o||11,u=r&&a?e.slice(0,i):e;return React.createElement("div",null,n?React.createElement(ControlButtonsWrapper,null,React.createElement(SamplesControlButton,{onClick:()=>{t.setValue(e)}},"Select all"),React.createElement(SamplesControlButton,{onClick:()=>{t.setValue([])}},"Clear")):null,React.createElement("div",null,u.map((e=>React.createElement(Checkbox,{fullWidth:!0,id:e,value:e,checked:s(e),label:e,key:e,onChange:e=>{(e=>{const l=e.target.value,o=e.target.checked;t.setTouched(!0);const n=t.getValue()||[];let r;if(o)r=[...n,l];else{const e=n.indexOf(l);r=[...n.slice(0,e),...n.slice(e+1)]}t.setValue(r)})(e),l&&t.validate()}}))),e.length>i&&r?React.createElement(ToggleButton,{onClick:()=>{c((e=>!e))}},a?"Show all":"Collapse"):null),m?React.createElement(FormError,null,m):"")};export const CheckboxList=asField(CheckboxListComponent);const ControlButtonsWrapper=styled(SampleControls)`
2
- opacity: 1;
3
- text-align: left;
4
- `,ToggleButton=styled(SamplesControlButton)`
1
+ import{asField}from"informed";import{CodeBlockControls,CodeBlockControlButton}from"@redocly/theme";import React,{useState}from"react";import styled from"styled-components";import{FormError}from"./form";import{Checkbox}from"./Checkbox";const DEFAULT_MAX_ITEMS=11;export const CheckboxListComponent=({items:e,fieldApi:t,validateOnChange:o,maxDisplayedItems:l,showControls:r,trimItemsLength:c})=>{const[a,n]=useState(!0),s=e=>t.getValue().includes(e),i=t.getError(),d=l||11,m=c&&a?e.slice(0,d):e;return React.createElement("div",null,r?React.createElement(CodeBlockControls,{controls:{select:{onClick:()=>{t.setValue(e)},label:"Select all",tooltipText:"Select all checkboxes"},deselect:{onClick:()=>{t.setValue([])},label:"Deselect all",tooltipText:"Deselect all checkboxes"}}}):null,React.createElement(ListWrapper,null,m.map((e=>React.createElement(Checkbox,{fullWidth:!0,id:e,value:e,checked:s(e),label:e,key:e,onChange:e=>{(e=>{const o=e.target.value,l=e.target.checked;t.setTouched(!0);const r=t.getValue()||[];let c;if(l)c=[...r,o];else{const e=r.indexOf(o);c=[...r.slice(0,e),...r.slice(e+1)]}t.setValue(c)})(e),o&&t.validate()}}))),e.length>d&&c?React.createElement(ToggleButton,{onClick:()=>{n((e=>!e))}},a?"Show all":"Collapse"):null),i?React.createElement(FormError,null,i):"")};export const CheckboxList=asField(CheckboxListComponent);const ListWrapper=styled.div`
2
+ padding: 10px;
3
+ background-color: var(--panel-samples-input-background-color);
4
+ border-radius: 0 0 var(--border-radius) var(--border-radius);
5
+ `,ToggleButton=styled(CodeBlockControlButton)`
5
6
  float: right;
6
7
  `;
7
8
  //# sourceMappingURL=CheckboxList.js.map
@@ -5,8 +5,6 @@ import styled,{css}from"styled-components";import{typography}from"../../../utils
5
5
  outline: 0;
6
6
  cursor: pointer;
7
7
  padding: 0 10px 0 0;
8
- font-family: var(--field-name-font-family);
9
- font-size: var(--field-name-font-size);
10
8
  color: var(--text-color);
11
9
  &:focus {
12
10
  font-weight: var(--font-weight-bold);
@@ -21,9 +19,15 @@ import styled,{css}from"styled-components";import{typography}from"../../../utils
21
19
  }
22
20
 
23
21
  ${()=>{const e=getCssVariable("--schema-field-name-word-break");if(["break-all","break-word"].includes(e)){const r=`\n && button {\n max-width: calc(100% - 21px); /* left padding + toggle button width: 16px/2 + 13px */\n text-align: left;\n span {\n white-space: normal;\n word-break: ${e};\n vertical-align: top;\n display: inline-flex;\n }\n }\n `;return css`
24
- ${typography("schema-property-name")}
25
- ${r}
26
- `}return typography("schema-property-name")}};
22
+ button {
23
+ ${typography("schema-property-name")};
24
+ ${r};
25
+ }
26
+ `}return css`
27
+ button {
28
+ ${typography("schema-property-name")};
29
+ }
30
+ `}};
27
31
  `;export const FieldLabel=styled.span`
28
32
  vertical-align: middle;
29
33
  line-height: 20px;
@@ -1,2 +1,2 @@
1
- import*as React from"react";import{JsonViewer,SourceCode}from"@redocly/theme";import{langFromMime}from"../../utils";import{PanelPreCodeBlock,ResponseHeader}from"./styled";import{SourceCodeWithFile}from"../SourceCodeWithFile";export function ResponseBody({response:e}){return React.createElement(React.Fragment,null,React.createElement(ResponseHeader,null," Body: "),getResponseBody(e))}function getResponseBody(e){return e.body?React.createElement(JsonViewer,{data:e.body,jsonSampleExpandLevel:1}):e.fileInfo?React.createElement(SourceCodeWithFile,{fileInfo:e.fileInfo}):null!==e.data?e.data?React.createElement(SourceCode,{lang:langFromMime(e.headers["Content-Type"]||"text/plain"),source:e.data,withCopyButton:!0}):React.createElement(PanelPreCodeBlock,null,React.createElement("i",null,"(no content)")):null}
1
+ import*as React from"react";import{JsonViewer,CodeBlock,CodeBlockContainer}from"@redocly/theme";import{langFromMime}from"../../utils";import{ResponseHeader}from"./styled";import{SourceCodeWithFile}from"../SourceCodeWithFile";export function ResponseBody({response:e}){return React.createElement(React.Fragment,null,React.createElement(ResponseHeader,null," Body: "),getResponseBody(e))}function getResponseBody(e){return e.body?React.createElement(JsonViewer,{data:e.body,jsonSampleExpandLevel:1}):e.fileInfo?React.createElement(SourceCodeWithFile,{fileInfo:e.fileInfo}):null!==e.data?e.data?React.createElement(CodeBlock,{lang:langFromMime(e.headers["Content-Type"]||"text/plain"),source:e.data,header:{controls:{copy:{}}}}):React.createElement(CodeBlockContainer,{withControls:!0},React.createElement("i",null,"(no content)")):null}
2
2
  //# sourceMappingURL=ResponseBody.js.map
@@ -1,4 +1,4 @@
1
- import React,{useState}from"react";import styled from"styled-components";import{useRecoilValue}from"recoil";import{ResponseHeader,PanelPreCodeBlock}from"./styled";import{globalOptionsSelector}from"../../recoil/store";export function ResponseHeadersList({headers:e}){const t=useRecoilValue(globalOptionsSelector),[a,o]=useState(!0),{maxResponseHeadersToShowInTryIt:l}=t,r=Object.keys(e),n=!!l&&r.length>l,s=n&&a?[...r].splice(0,l):[...r];return React.createElement(React.Fragment,null,React.createElement(ResponseHeader,null," Headers: "),React.createElement(PanelPreCodeBlock,null,s.map((t=>React.createElement("div",{key:t},React.createElement(HeaderName,null,t,":"),React.createElement("code",null,e[t])))),n&&React.createElement(StyledShowMoreLabel,{onClick:()=>{o(!a)}},a?"Show more...":"Hide headers")))}const HeaderName=styled.strong`
1
+ import React,{useState}from"react";import styled from"styled-components";import{useRecoilValue}from"recoil";import{CodeBlockContainer}from"@redocly/theme";import{ResponseHeader}from"./styled";import{globalOptionsSelector}from"../../recoil/store";export function ResponseHeadersList({headers:e}){const t=useRecoilValue(globalOptionsSelector),[o,r]=useState(!0),{maxResponseHeadersToShowInTryIt:a}=t,l=Object.keys(e),n=!!a&&l.length>a,s=n&&o?[...l].splice(0,a):[...l];return React.createElement(React.Fragment,null,React.createElement(ResponseHeader,null," Headers: "),React.createElement(CodeBlockContainer,{withControls:!0},s.map((t=>React.createElement("div",{key:t},React.createElement(HeaderName,null,t,":"),React.createElement("code",null,e[t])))),n&&React.createElement(StyledShowMoreLabel,{onClick:()=>{r(!o)}},o?"Show more...":"Hide headers")))}const HeaderName=styled.strong`
2
2
  text-transform: capitalize;
3
3
  display: inline-block;
4
4
  padding-right: 5px;
@@ -13,6 +13,5 @@ export declare const TryItDropdown: import("styled-components").StyledComponent<
13
13
  fullWidth?: boolean | undefined;
14
14
  variant?: "dark" | "light" | undefined;
15
15
  }, never>;
16
- export declare const PanelPreCodeBlock: import("styled-components").StyledComponent<"pre", any, {}, never>;
17
16
  export declare const ResponseHeader: import("styled-components").StyledComponent<"div", any, {}, never>;
18
17
  export declare const FlowName: import("styled-components").StyledComponent<"div", any, {}, never>;
@@ -1,4 +1,4 @@
1
- import styled,{css,keyframes}from"styled-components";import{PreformattedCodeBlock}from"@redocly/theme";import{Dropdown}from"../common/Dropdown";const shake=keyframes`
1
+ import styled,{css,keyframes}from"styled-components";import{Dropdown}from"../common/Dropdown";const shake=keyframes`
2
2
  10%, 90% {
3
3
  transform: translate3d(-1px, 0, 0);
4
4
  }
@@ -83,9 +83,6 @@ import styled,{css,keyframes}from"styled-components";import{PreformattedCodeBloc
83
83
  border: var(--panel-try-it-dropdown-border);
84
84
  color: var(--panel-try-it-dropdown-color);
85
85
  }
86
- `;export const PanelPreCodeBlock=styled(PreformattedCodeBlock)`
87
- border-top-left-radius: 0;
88
- border-top-right-radius: 0;
89
86
  `;export const ResponseHeader=styled.div`
90
87
  margin-bottom: 10px;
91
88
 
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@redocly/openapi-docs",
3
- "version": "3.0.0-alpha.46",
3
+ "version": "3.0.0-alpha.47",
4
4
  "description": "Redocly OpenAPI Docs",
5
5
  "main": "lib/index.js",
6
6
  "module": "lib-esm/index.js",
@@ -119,7 +119,7 @@
119
119
  "webpack-dev-server": "^4.9.3",
120
120
  "workerize-loader": "github:redocly/workerize-loader#webpack-5-dist",
121
121
  "js-yaml": "4.1.0",
122
- "@redocly/theme": "0.16.0"
122
+ "@redocly/theme": "0.17.1"
123
123
  },
124
124
  "scripts": {
125
125
  "start": "webpack serve --mode=development --hot",