@redocly/openapi-docs 0.0.0-beta-20240419154705 → 0.0.0-beta-20240423152253
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/redocly-openapi-docs.min.js +1389 -1336
- package/lib/components/Download/DownloadSpecification.js +1 -1
- package/lib/components/Download/types.d.ts +0 -2
- package/lib/components/Download/useDownloadInfo.d.ts +1 -1
- package/lib/components/Download/useDownloadInfo.js +1 -1
- package/lib/components/OperationItem/OperationItem.js +1 -1
- package/lib/components/RedoclyOpenAPIDocs/RedoclyOpenAPIDocs.js +1 -1
- package/lib/components/Replay/Replay.js +1 -1
- package/lib/components/Replay/utils.js +1 -1
- package/lib/components/ResponseSamples/Summary.js +1 -1
- package/lib/components/Samples/ExampleSwitch.js +1 -1
- package/lib/components/Schema/OneOfSchema.js +5 -1
- package/lib/components/Security/Security.js +1 -1
- package/lib/components/Security/SecurityModal.js +1 -1
- package/lib/components/TagItem/OperationsNavigation.js +1 -1
- package/lib/components/common/Dropdown/Dropdown.js +3 -3
- package/lib/components/common/SchemaSelection/SchemaSelection.js +1 -1
- package/lib/hooks/index.d.ts +1 -0
- package/lib/hooks/index.js +1 -1
- package/lib/hooks/useUppercase2LowercaseRedirect.d.ts +1 -0
- package/lib/hooks/useUppercase2LowercaseRedirect.js +2 -0
- package/lib/setupTests.js +1 -1
- package/lib-esm/components/Download/DownloadSpecification.js +1 -1
- package/lib-esm/components/Download/types.d.ts +0 -2
- package/lib-esm/components/Download/useDownloadInfo.d.ts +1 -1
- package/lib-esm/components/Download/useDownloadInfo.js +1 -1
- package/lib-esm/components/OperationItem/OperationItem.js +1 -1
- package/lib-esm/components/RedoclyOpenAPIDocs/RedoclyOpenAPIDocs.js +1 -1
- package/lib-esm/components/Replay/Replay.js +1 -1
- package/lib-esm/components/Replay/utils.js +1 -1
- package/lib-esm/components/ResponseSamples/Summary.js +1 -1
- package/lib-esm/components/Samples/ExampleSwitch.js +1 -1
- package/lib-esm/components/Schema/OneOfSchema.js +5 -1
- package/lib-esm/components/Security/Security.js +1 -1
- package/lib-esm/components/Security/SecurityModal.js +1 -1
- package/lib-esm/components/TagItem/OperationsNavigation.js +1 -1
- package/lib-esm/components/common/Dropdown/Dropdown.js +2 -2
- package/lib-esm/components/common/SchemaSelection/SchemaSelection.js +1 -1
- package/lib-esm/hooks/index.d.ts +1 -0
- package/lib-esm/hooks/index.js +1 -1
- package/lib-esm/hooks/useUppercase2LowercaseRedirect.d.ts +1 -0
- package/lib-esm/hooks/useUppercase2LowercaseRedirect.js +2 -0
- package/lib-esm/setupTests.js +1 -1
- package/package.json +5 -5
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
"use strict";var __importDefault=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(exports,"__esModule",{value:!0}),exports.DownloadSpecification=void 0;const jsx_runtime_1=require("react/jsx-runtime"),react_1=require("react"),jotai_1=require("jotai"),styled_components_1=__importDefault(require("styled-components")),theme_1=require("@redocly/theme"),useDownloadInfo_1=require("./useDownloadInfo"),store_1=require("../../jotai/store");function DownloadSpecificationComponent(){const{
|
|
1
|
+
"use strict";var __importDefault=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(exports,"__esModule",{value:!0}),exports.DownloadSpecification=void 0;const jsx_runtime_1=require("react/jsx-runtime"),react_1=require("react"),jotai_1=require("jotai"),styled_components_1=__importDefault(require("styled-components")),theme_1=require("@redocly/theme"),useDownloadInfo_1=require("./useDownloadInfo"),store_1=require("../../jotai/store");function DownloadSpecificationComponent(){const{options:e}=(0,jotai_1.useAtomValue)(store_1.globalStoreAtom),t=(0,useDownloadInfo_1.useDownloadInfo)({downloadUrls:e.downloadUrls}),o=(0,react_1.useCallback)((e=>{switch(e){case"yaml":return(0,jsx_runtime_1.jsx)(theme_1.DocumentIcon,{});case"json":return(0,jsx_runtime_1.jsx)(theme_1.JsonIcon,{});default:return(0,jsx_runtime_1.jsx)(theme_1.FileIcon,{})}}),[]);return t?(0,jsx_runtime_1.jsx)(Wrapper,{children:(t||[]).map((({title:e,url:t,iconType:r})=>(0,jsx_runtime_1.jsxs)(Card,{children:[(0,jsx_runtime_1.jsxs)(FileName,{children:[o(r),(0,jsx_runtime_1.jsx)("a",{href:t,target:"_blank",download:!0,rel:"noreferrer",children:e})]}),(0,jsx_runtime_1.jsx)("a",{href:t,target:"_blank",download:!0,rel:"noreferrer",children:(0,jsx_runtime_1.jsx)(theme_1.Button,{variant:"text",size:"small",icon:(0,jsx_runtime_1.jsx)(theme_1.DownloadIcon,{})})})]},e)))}):(0,jsx_runtime_1.jsx)(jsx_runtime_1.Fragment,{})}exports.DownloadSpecification=(0,react_1.memo)(DownloadSpecificationComponent);const Card=styled_components_1.default.div`
|
|
2
2
|
display: flex;
|
|
3
3
|
align-items: baseline;
|
|
4
4
|
justify-content: space-between;
|
|
@@ -1,11 +1,9 @@
|
|
|
1
|
-
import type { OpenAPIDefinition } from '../../types';
|
|
2
1
|
export type DownloadUrlsConfig = {
|
|
3
2
|
title?: string;
|
|
4
3
|
url: string;
|
|
5
4
|
}[];
|
|
6
5
|
export type DownloadIconType = 'yaml' | 'json' | 'file';
|
|
7
6
|
export type UseDownloadInfoProps = {
|
|
8
|
-
definition?: OpenAPIDefinition;
|
|
9
7
|
definitionUrl?: string;
|
|
10
8
|
downloadUrls?: DownloadUrlsConfig;
|
|
11
9
|
};
|
|
@@ -1,2 +1,2 @@
|
|
|
1
1
|
import type { UseDownloadInfoProps, UseDownloadInfoReturnType } from './types';
|
|
2
|
-
export declare const useDownloadInfo: ({
|
|
2
|
+
export declare const useDownloadInfo: ({ downloadUrls, }: UseDownloadInfoProps) => UseDownloadInfoReturnType | undefined;
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
"use strict";
|
|
1
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.useDownloadInfo=void 0;const react_1=require("react"),useDownloadInfo=({downloadUrls:e})=>(0,react_1.useMemo)((()=>{if(e)return e.map((({title:e,url:o})=>({url:o,title:e||getFileNameFromUrl(o,"openapi.yaml"),iconType:getIconTypeFromUrl(o)})))}),[e]);function getFileNameFromUrl(e,o){const l=e.split("?")[0].split(/[\\\/]/).pop();return l&&(l.includes("yaml")||l.includes("json"))?l:o}function getIconTypeFromUrl(e,o){const l=o||e.split("?")[0].split(/[\\\/]/).pop();return l?l.includes("yaml")?"yaml":l.includes("json")?"json":"file":"file"}exports.useDownloadInfo=useDownloadInfo;
|
|
2
2
|
//# sourceMappingURL=useDownloadInfo.js.map
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
"use strict";var __importDefault=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(exports,"__esModule",{value:!0}),exports.OperationItem=void 0;const jsx_runtime_1=require("react/jsx-runtime"),react_1=require("react"),styled_components_1=__importDefault(require("styled-components")),jotai_1=require("jotai"),theme_1=require("@redocly/theme"),common_1=require("../common"),Callbacks_1=require("../Callbacks"),CallbackSamples_1=require("../CallbackSamples"),RequestSamples_1=require("../RequestSamples"),Responses_1=require("../Responses"),ResponseSamples_1=require("../ResponseSamples"),services_1=require("../../services"),app_1=require("../../jotai/app"),store_1=require("../../jotai/store"),operation_1=require("../../models/operation"),RenderHook_1=require("../RenderHook"),OperationItemTitle_1=require("../common/OperationItemTitle"),LinkToField_1=require("../common/LinkToField"),RequestDetails_1=require("../Request/RequestDetails"),OperationSamplesPanel=(0,styled_components_1.default)(common_1.SamplesPanel)`
|
|
2
2
|
margin-left: auto;
|
|
3
3
|
--code-block-padding: var(--spacing-xs) 0 var(--spacing-xs) 20px;
|
|
4
|
-
`;function OperationItemComponent({item:{operationDefinition:e,parent:t,href:a}}){var s,n;const{parser:o,options:i}=(0,jotai_1.useAtomValue)(store_1.globalStoreAtom),r=(0,jotai_1.useAtomValue)(app_1.layoutAtom),[l,p]=(0,react_1.useState)(),{unstable_hooks:_,feedback:m}=i,c=(0,react_1.useMemo)((()=>(0,operation_1.getOperation)(o,e,t,i,a)),[a,e,i,t,o]),{name:d,deprecated:u,isWebhook:x,badges:j}=c,k=r===theme_1.LayoutVariant.STACKED,h=(null==m?void 0:m.type)||"sentiment",b=!0!==(null==m?void 0:m.hide),S=j.filter((({position:e})=>"before"===e)),R=j.filter((({position:e})=>"after"===e)),[O,f]=(0,react_1.useState)(null),
|
|
4
|
+
`;function OperationItemComponent({item:{operationDefinition:e,parent:t,href:a}}){var s,n;const{parser:o,options:i}=(0,jotai_1.useAtomValue)(store_1.globalStoreAtom),r=(0,jotai_1.useAtomValue)(app_1.layoutAtom),[l,p]=(0,react_1.useState)(),{unstable_hooks:_,feedback:m}=i,c=(0,react_1.useMemo)((()=>(0,operation_1.getOperation)(o,e,t,i,a)),[a,e,i,t,o]),{name:d,deprecated:u,isWebhook:x,badges:j}=c,k=r===theme_1.LayoutVariant.STACKED,h=(null==m?void 0:m.type)||"sentiment",b=!0!==(null==m?void 0:m.hide),S=j.filter((({position:e})=>"before"===e)),R=j.filter((({position:e})=>"after"===e)),[O,f]=(0,react_1.useState)(null),g=(0,react_1.useCallback)((e=>{l!==e&&p(e)}),[l]);return(0,jsx_runtime_1.jsxs)(OperationRow,{layout:r,children:[(0,jsx_runtime_1.jsx)(OperationSubRowStyled,{layout:r,children:(0,jsx_runtime_1.jsxs)(common_1.SamplesMiddlePanel,{isStacked:k,children:[(0,jsx_runtime_1.jsx)(RenderHook_1.RenderHook,{Hook:theme_1.BeforeOpenApiOperation||(null==_?void 0:_.BeforeOperation),props:{operation:c}}),(0,jsx_runtime_1.jsxs)(OperationItemTitle_1.Heading,{"data-testid":"operation-item-header",children:[(0,jsx_runtime_1.jsx)(common_1.ShareLink,{to:a,"aria-label":`link to ${d}`}),S.map((({name:e,color:t})=>(0,jsx_runtime_1.jsx)(OperationBadge,{color:t,children:e},e))),d,R.map((({name:e,color:t})=>(0,jsx_runtime_1.jsx)(OperationBadge,{color:t,children:e},e))),u&&(0,jsx_runtime_1.jsx)(OperationBadge,{deprecated:!0,children:"Deprecated"}),x&&(0,jsx_runtime_1.jsx)(OperationBadge,{children:"Webhook"})]})]})}),(0,jsx_runtime_1.jsxs)(OperationSubRowStyled,{layout:r,children:[(0,jsx_runtime_1.jsx)(common_1.SamplesMiddlePanel,{isStacked:k,children:(0,jsx_runtime_1.jsx)(RequestDetails_1.RequestDetails,{operation:c})}),(0,jsx_runtime_1.jsx)(OperationSamplesPanel,{isStacked:k,"data-testid":"samples-block",className:"panel-container-request-samples",children:(0,jsx_runtime_1.jsx)(RequestSamples_1.RequestSamples,{operation:c})})]}),(0,jsx_runtime_1.jsxs)(OperationSubRowStyled,{layout:r,children:[(0,jsx_runtime_1.jsx)(common_1.SamplesMiddlePanel,{isStacked:k,children:(null===(s=c.responses)||void 0===s?void 0:s.length)?(0,jsx_runtime_1.jsx)(Responses_1.OperationResponseList,{responses:c.responses,operationId:c.id,operationPointer:c.pointer,callbackId:c.callbackId,activeResponseTab:l,onTabChange:g}):null}),(0,jsx_runtime_1.jsx)(OperationSamplesPanel,{isStacked:k,"data-testid":"samples-block",className:"panel-container-response-samples",children:(0,jsx_runtime_1.jsx)(ResponseSamples_1.ResponseSamples,{operation:c,activeResponseTab:l,onTabChange:g})})]}),(0,jsx_runtime_1.jsxs)(OperationSubRowStyled,{layout:r,children:[(0,jsx_runtime_1.jsxs)(common_1.SamplesMiddlePanel,{isStacked:k,children:[(null===(n=c.callbacks)||void 0===n?void 0:n.length)?(0,jsx_runtime_1.jsxs)(jsx_runtime_1.Fragment,{children:[(0,jsx_runtime_1.jsxs)(OperationItemTitle_1.Title,{children:[(0,jsx_runtime_1.jsx)(LinkToField_1.LinkToField,{to:(0,services_1.makeDeepLink)(c.id,"callbacks")}),"Callbacks"]}),(0,jsx_runtime_1.jsx)(Callbacks_1.CallbacksList,{callbacks:c.callbacks,onExpand:f,selectedCallback:O})]}):null,(0,jsx_runtime_1.jsx)(RenderHook_1.RenderHook,{Hook:theme_1.AfterOpenApiOperation||(null==_?void 0:_.AfterOperation),props:{operation:c}})]}),O?(0,jsx_runtime_1.jsx)(OperationSamplesPanel,{isStacked:k,"data-testid":"samples-block",children:(0,jsx_runtime_1.jsx)(CallbackSamples_1.CallbackSamples,{callback:O})}):null]}),(0,jsx_runtime_1.jsx)(OperationSubRowStyled,{layout:r,children:(0,jsx_runtime_1.jsx)(common_1.SamplesMiddlePanel,{isStacked:k,fullWidth:!0,children:b?(0,jsx_runtime_1.jsx)(FeedbackWrapper,{children:(0,jsx_runtime_1.jsx)(theme_1.Feedback,{type:h,settings:m.settings,path:c.href})}):null})})]})}exports.OperationItem=(0,react_1.memo)(OperationItemComponent);const FeedbackWrapper=styled_components_1.default.div`
|
|
5
5
|
& > div {
|
|
6
6
|
flex: 1 1 auto;
|
|
7
7
|
display: flex;
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.RedoclyOpenAPIDocsStandalone=exports.RedoclyOpenAPIDocs=void 0;const jsx_runtime_1=require("react/jsx-runtime"),react_1=require("react"),theme_1=require("@redocly/theme"),UnsupportedFeatureScreen_1=require("../UnsupportedFeatureScreen"),Providers_1=require("./Providers"),Overlay_1=require("../Overlay"),styled_1=require("./styled"),StickySidebar_1=require("../StickySidebar"),SideMenu_1=require("../SideMenu"),Content_1=require("../Content"),hooks_1=require("../../hooks"),withRouter_1=require("../../hoc/withRouter"),withStore_1=require("../../hoc/withStore"),utils_1=require("../../utils"),useLicense_1=require("../../hooks/useLicense"),RedoclyOpenAPIDocsComponent=(0,utils_1.compose)(withRouter_1.withRouter,withStore_1.withStore,react_1.memo)((({licenseKey:e,onLoaded:o,children:t,options:i,layout:n,collapsedSidebar:r,parser:s,withCommonStyles:l})=>{var d,u,a,c,_;const m=(0,react_1.useRef)(null),{isValid:p,licenseInfo:h}=(0,useLicense_1.useLicense)(e);(0,theme_1.useMount)((()=>{null==o||o()}));const{hideSidebar:v,scrollYOffset:x}=i||{},{contentItems:y}=(0,hooks_1.useContentItems)({parser:s,options:i}),S=null===(u=null===(d=s.definition)||void 0===d?void 0:d.info)||void 0===u?void 0:u["x-logo"];return(0,jsx_runtime_1.jsxs)(jsx_runtime_1.Fragment,{children:[l&&(0,jsx_runtime_1.jsx)(theme_1.GlobalStyle,{}),(0,jsx_runtime_1.jsxs)(styled_1.RedocWrapStyled,{className:"redoc-wrap",ref:m,children:[(0,jsx_runtime_1.jsx)(UnsupportedFeatureScreen_1.UnsupportedFeatureScreen,{}),!p&&(0,jsx_runtime_1.jsx)(Overlay_1.Overlay,{licenseInfo:h}),(0,jsx_runtime_1.jsx)(styled_1.CssFixes,{layout:n}),!v&&(0,jsx_runtime_1.jsxs)(StickySidebar_1.StickyResponsiveSidebar,{scrollYOffset:x,className:"menu-content",collapsedSidebar:!r,children:[(0,jsx_runtime_1.jsx)(theme_1.SidebarLogo,{imageUrl:null==S?void 0:S.url,href:(null==S?void 0:S.href)||(null===(_=null===(c=null===(a=s.definition)||void 0===a?void 0:a.info)||void 0===c?void 0:c.contact)||void 0===_?void 0:_.url),altText:null==S?void 0:S.altText,backgroundColor:null==S?void 0:S.backgroundColor}),(0,jsx_runtime_1.jsx)(SideMenu_1.SideMenu,{items:p?y:[]})]}),(0,jsx_runtime_1.jsxs)(theme_1.ThreePanelLayout,{className:"api-content",id:"api-content",layout:n===theme_1.LayoutVariant.THREE_PANEL?theme_1.LayoutVariant.THREE_PANEL:theme_1.LayoutVariant.STACKED,collapsedSidebar:r,children:[(0,jsx_runtime_1.jsx)(Content_1.Content,{items:p?y:[],routingBasePath:i.routingBasePath}),t]})]})]})}));function RedoclyOpenAPIDocs({onLoaded:e,children:o,store:t,withCommonStyles:i}){var n,r,s;return(null==t?void 0:t.definition)?(0,jsx_runtime_1.jsx)(Providers_1.StoreProvider,Object.assign({},t,{children:(0,jsx_runtime_1.jsx)(RedoclyOpenAPIDocsComponent,{onLoaded:e,basePath:null===(n=t.options)||void 0===n?void 0:n.routingBasePath,licenseKey:null===(r=t.options)||void 0===r?void 0:r.licenseKey,disableRouter:null===(s=t.options)||void 0===s?void 0:s.disableRouter,withCommonStyles:i,children:o})})):null}function RedoclyOpenAPIDocsStandalone({definition:e,definitionUrl:o,options:t={},activeItemId:i,activeSampleLanguage:n,activeDeepLink:r}){return(0,jsx_runtime_1.jsx)(Providers_1.AppProvider,{definition:e,definitionUrl:o,options:t,activeItemId:i,activeSampleLanguage:n,activeDeepLink:r,children:(0,jsx_runtime_1.jsx)(RedoclyOpenAPIDocs,{withCommonStyles:!0})})}exports.RedoclyOpenAPIDocs=RedoclyOpenAPIDocs,exports.RedoclyOpenAPIDocsStandalone=RedoclyOpenAPIDocsStandalone;
|
|
1
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.RedoclyOpenAPIDocsStandalone=exports.RedoclyOpenAPIDocs=void 0;const jsx_runtime_1=require("react/jsx-runtime"),react_1=require("react"),theme_1=require("@redocly/theme"),UnsupportedFeatureScreen_1=require("../UnsupportedFeatureScreen"),Providers_1=require("./Providers"),Overlay_1=require("../Overlay"),styled_1=require("./styled"),StickySidebar_1=require("../StickySidebar"),SideMenu_1=require("../SideMenu"),Content_1=require("../Content"),hooks_1=require("../../hooks"),withRouter_1=require("../../hoc/withRouter"),withStore_1=require("../../hoc/withStore"),utils_1=require("../../utils"),useLicense_1=require("../../hooks/useLicense"),RedoclyOpenAPIDocsComponent=(0,utils_1.compose)(withRouter_1.withRouter,withStore_1.withStore,react_1.memo)((({licenseKey:e,onLoaded:o,children:t,options:i,layout:n,collapsedSidebar:r,parser:s,withCommonStyles:l})=>{var d,u,a,c,_;const m=(0,react_1.useRef)(null),{isValid:p,licenseInfo:h}=(0,useLicense_1.useLicense)(e);(0,hooks_1.useUppercase2LowercaseRedirect)(),(0,theme_1.useMount)((()=>{null==o||o()}));const{hideSidebar:v,scrollYOffset:x}=i||{},{contentItems:y}=(0,hooks_1.useContentItems)({parser:s,options:i}),S=null===(u=null===(d=s.definition)||void 0===d?void 0:d.info)||void 0===u?void 0:u["x-logo"];return(0,jsx_runtime_1.jsxs)(jsx_runtime_1.Fragment,{children:[l&&(0,jsx_runtime_1.jsx)(theme_1.GlobalStyle,{}),(0,jsx_runtime_1.jsxs)(styled_1.RedocWrapStyled,{className:"redoc-wrap",ref:m,children:[(0,jsx_runtime_1.jsx)(UnsupportedFeatureScreen_1.UnsupportedFeatureScreen,{}),!p&&(0,jsx_runtime_1.jsx)(Overlay_1.Overlay,{licenseInfo:h}),(0,jsx_runtime_1.jsx)(styled_1.CssFixes,{layout:n}),!v&&(0,jsx_runtime_1.jsxs)(StickySidebar_1.StickyResponsiveSidebar,{scrollYOffset:x,className:"menu-content",collapsedSidebar:!r,children:[(0,jsx_runtime_1.jsx)(theme_1.SidebarLogo,{imageUrl:null==S?void 0:S.url,href:(null==S?void 0:S.href)||(null===(_=null===(c=null===(a=s.definition)||void 0===a?void 0:a.info)||void 0===c?void 0:c.contact)||void 0===_?void 0:_.url),altText:null==S?void 0:S.altText,backgroundColor:null==S?void 0:S.backgroundColor}),(0,jsx_runtime_1.jsx)(SideMenu_1.SideMenu,{items:p?y:[]})]}),(0,jsx_runtime_1.jsxs)(theme_1.ThreePanelLayout,{className:"api-content",id:"api-content",layout:n===theme_1.LayoutVariant.THREE_PANEL?theme_1.LayoutVariant.THREE_PANEL:theme_1.LayoutVariant.STACKED,collapsedSidebar:r,children:[(0,jsx_runtime_1.jsx)(Content_1.Content,{items:p?y:[],routingBasePath:i.routingBasePath}),t]})]})]})}));function RedoclyOpenAPIDocs({onLoaded:e,children:o,store:t,withCommonStyles:i}){var n,r,s;return(null==t?void 0:t.definition)?(0,jsx_runtime_1.jsx)(Providers_1.StoreProvider,Object.assign({},t,{children:(0,jsx_runtime_1.jsx)(RedoclyOpenAPIDocsComponent,{onLoaded:e,basePath:null===(n=t.options)||void 0===n?void 0:n.routingBasePath,licenseKey:null===(r=t.options)||void 0===r?void 0:r.licenseKey,disableRouter:null===(s=t.options)||void 0===s?void 0:s.disableRouter,withCommonStyles:i,children:o})})):null}function RedoclyOpenAPIDocsStandalone({definition:e,definitionUrl:o,options:t={},activeItemId:i,activeSampleLanguage:n,activeDeepLink:r}){return(0,jsx_runtime_1.jsx)(Providers_1.AppProvider,{definition:e,definitionUrl:o,options:t,activeItemId:i,activeSampleLanguage:n,activeDeepLink:r,children:(0,jsx_runtime_1.jsx)(RedoclyOpenAPIDocs,{withCommonStyles:!0})})}exports.RedoclyOpenAPIDocs=RedoclyOpenAPIDocs,exports.RedoclyOpenAPIDocsStandalone=RedoclyOpenAPIDocsStandalone;
|
|
2
2
|
//# sourceMappingURL=RedoclyOpenAPIDocs.js.map
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
"use strict";var __importDefault=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(exports,"__esModule",{value:!0}),exports.Replay=void 0;const jsx_runtime_1=require("react/jsx-runtime"),react_1=require("react"),theme_1=require("@redocly/theme"),styled_components_1=__importDefault(require("styled-components")),jotai_1=require("jotai"),replay_1=require("@redocly/replay"),store_1=require("../../jotai/store"),replay_2=require("../../jotai/replay"),operation_1=require("../../jotai/operation"),constants_1=require("../../constants"),app_1=require("../../jotai/app"),utils_1=require("../../utils"),utils_2=require("./utils");function ReplayComponent({operation:e,corsProxyUrl:t,fullOpenApi:r}){var o,a;const n=(0,react_1.useRef)(null),{routingBasePath:i,mockServer:s}=(0,jotai_1.useAtomValue)(store_1.globalOptionsAtom),{parser:
|
|
1
|
+
"use strict";var __importDefault=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(exports,"__esModule",{value:!0}),exports.Replay=void 0;const jsx_runtime_1=require("react/jsx-runtime"),react_1=require("react"),theme_1=require("@redocly/theme"),styled_components_1=__importDefault(require("styled-components")),jotai_1=require("jotai"),replay_1=require("@redocly/replay"),store_1=require("../../jotai/store"),replay_2=require("../../jotai/replay"),operation_1=require("../../jotai/operation"),constants_1=require("../../constants"),app_1=require("../../jotai/app"),utils_1=require("../../utils"),utils_2=require("./utils");function ReplayComponent({operation:e,corsProxyUrl:t,fullOpenApi:r}){var o,a;const n=(0,react_1.useRef)(null),{routingBasePath:i,mockServer:s,oAuth2RedirectURI:_}=(0,jotai_1.useAtomValue)(store_1.globalOptionsAtom),{parser:l}=(0,jotai_1.useAtomValue)(store_1.globalStoreAtom),[u,p]=(0,react_1.useState)(!1),[c,m]=(0,jotai_1.useAtom)(replay_2.replayStateAtom),[,d]=(0,jotai_1.useAtom)(app_1.unsupportedFeatureScreenAtom),j=(0,jotai_1.useSetAtom)((0,operation_1.operationStore)(e.pointer)),[A,v]=(0,jotai_1.useAtom)(app_1.activeMimeNameAtom),[[,x],y]=(0,jotai_1.useAtom)(app_1.environmentAtom);(0,theme_1.useFocusTrap)(n);const h=(0,react_1.useCallback)((({requestValues:e,activeExampleName:t,activeMimeName:r,environment:o,environments:a})=>{j((r=>Object.assign(Object.assign({},r),{requestValues:e,activeExampleName:t}))),v(r||A),y({environment:o,environments:a})}),[j,v,A,y]),f=()=>{(0,utils_1.isMobile)({tablet:!0})?d(!0):(c!==constants_1.LOADING_STATE.LOADING&&p(!u),c===constants_1.LOADING_STATE.NOT_LOADED&&m(constants_1.LOADING_STATE.LOADING))};return(0,jsx_runtime_1.jsxs)(Wrapper,{children:[(0,jsx_runtime_1.jsx)("span",{children:"Experience it firsthand in the API Explorer!"}),(0,jsx_runtime_1.jsx)(theme_1.Button,{onClick:f,variant:"primary",iconPosition:"left",icon:c===constants_1.LOADING_STATE.LOADING?(0,jsx_runtime_1.jsx)(theme_1.CircleDashIcon,{}):(0,jsx_runtime_1.jsx)(theme_1.RocketIcon,{}),children:c===constants_1.LOADING_STATE.LOADING?"Loading...":"Try it"}),u&&(0,jsx_runtime_1.jsx)(react_1.Suspense,{children:(0,jsx_runtime_1.jsx)(theme_1.Portal,{mountId:"api-content",children:(0,jsx_runtime_1.jsx)("div",{ref:n,children:(0,jsx_runtime_1.jsx)(replay_1.ReplayOverlay,{value:(0,utils_2.convertOperationToReplayValue)(e,r),onRequestChange:h,onClose:f,corsProxyUrl:t,operationUrl:i+e.href,onLoad:()=>m(constants_1.LOADING_STATE.LOADED),mockServer:s,environment:x,apiId:null===(a=null===(o=null==l?void 0:l.definition.info)||void 0===o?void 0:o["x-metadata"])||void 0===a?void 0:a.apiId,oAuth2RedirectURI:_})})})})]})}exports.Replay=(0,react_1.memo)(ReplayComponent);const Wrapper=styled_components_1.default.div`
|
|
2
2
|
display: flex;
|
|
3
3
|
justify-content: space-between;
|
|
4
4
|
align-items: center;
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.convertRequestSecurity=exports.convertOperationToReplayValue=void 0;const theme_1=require("@redocly/theme");function convertOperationToReplayValue(e,n,t,i){var r,
|
|
1
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.convertRequestSecurity=exports.convertOperationToReplayValue=void 0;const theme_1=require("@redocly/theme");function convertOperationToReplayValue(e,n,t,i){var r,a;const o=(null==i?void 0:i.activeMimeName)||"application/json";return{name:e.name,method:e.httpVerb,parameters:convertParameters(e.parameters,null==t?void 0:t.requestValues),body:convertRequestBody(e.requestBody,n,(null===(r=null==t?void 0:t.requestValues)||void 0===r?void 0:r.body)?{[o]:null===(a=null==t?void 0:t.requestValues)||void 0===a?void 0:a.body}:void 0),path:e.path,servers:e.servers,security:convertRequestSecurity(e.security)}}function convertParameters(e,n){const t=new Set,i=e.map((e=>{var i;return t.add(e.in+":"+e.name),{name:e.name,in:e.in,required:e.required,description:e.description,example:(null===(i=null==n?void 0:n[String(e.in)])||void 0===i?void 0:i[e.name])||e.example,schema:e.schema}}));for(const[e,r]of Object.entries(n||{}))for(const[n,a]of Object.entries(r||{}))t.has(e+":"+n)||i.push({name:n,in:e,required:!1,description:"",example:String(a),schema:void 0});return i}function getInputType({type:e,format:n,enum:t}){return"string"!==e||"binary"!==n&&"base64"!==n?"object"===e?"multiline":t.length>0?"select":"text":"file"}function getFieldExamples(e,n){var t,i,r,a,o;const l=(null===(t=e[0])||void 0===t?void 0:t.example)||(null===(i=e[0])||void 0===i?void 0:i.examples);if(l)return l;if(null===(r=e.schema)||void 0===r?void 0:r.example)return e.schema.example;const u=(null===(a=null==n?void 0:n.default)||void 0===a?void 0:a.value)||(null===(o=null==n?void 0:n.default)||void 0===o?void 0:o.rawValue);return(null==u?void 0:u[e.name])?(0,theme_1.isPrimitive)(null==u?void 0:u[e.name])?String(null==u?void 0:u[e.name]):JSON.stringify(null==u?void 0:u[e.name]):""}function convertRequestBody(e,n,t){var i;if(!e||!(null===(i=e.content)||void 0===i?void 0:i.mediaTypes)){if(!t)return;return{mediaTypes:Object.fromEntries(Object.entries(t).map((([e,n])=>[e,{name:e,examples:{default:{value:n}},schema:{},parameters:[]}])))}}return{required:e.required,mediaTypes:e.content.mediaTypes.reduce(((e,i)=>{var r,a;const o=i.schema,l=(null==t?void 0:t[i.name])?{default:{value:null==t?void 0:t[i.name],rawValue:null==t?void 0:t[i.name],mime:i.name}}:i.examples||i.formExamples;return e[i.name]={name:i.name,examples:l,schema:getBodySchema(null===(r=i.schema)||void 0===r?void 0:r.rawSchema,n),parameters:null===(a=null==o?void 0:o.fields)||void 0===a?void 0:a.map((e=>({inputType:getInputType(e.schema),name:e.name,example:getFieldExamples(e,l)})))},e}),{})}}function getBodySchema(e,n){if(e&&n)return Object.assign(Object.assign({},e),{components:(null==n?void 0:n.components)||{}})}function convertRequestSecurity(e){if(e)return e.flatMap((({schemes:e})=>e.map((e=>({id:e.id,type:e.type,in:e.in,scopes:e.scopes,scheme:e.scheme,name:e.name,flows:e.flows})))))}exports.convertOperationToReplayValue=convertOperationToReplayValue,exports.convertRequestSecurity=convertRequestSecurity;
|
|
2
2
|
//# sourceMappingURL=utils.js.map
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.Summary=void 0;const jsx_runtime_1=require("react/jsx-runtime"),theme_1=require("@redocly/theme"),Summary=({tabs:e})=>(0,jsx_runtime_1.jsxs)(theme_1.PanelHeader,{isExpandable:!1,children:[(0,jsx_runtime_1.jsx)(theme_1.PanelHeaderTitle,{"data-
|
|
1
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.Summary=void 0;const jsx_runtime_1=require("react/jsx-runtime"),theme_1=require("@redocly/theme"),Summary=({tabs:e})=>(0,jsx_runtime_1.jsxs)(theme_1.PanelHeader,{isExpandable:!1,children:[(0,jsx_runtime_1.jsx)(theme_1.PanelHeaderTitle,{"data-testid":"title",children:"Response"}),e]});exports.Summary=Summary;
|
|
2
2
|
//# sourceMappingURL=Summary.js.map
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.ExampleSwitch=void 0;const jsx_runtime_1=require("react/jsx-runtime"),react_1=require("react"),common_1=require("../common"),SelectOrLabel_1=require("../SelectOrLabel"),utils_1=require("../../utils"),ExampleSwitch=({exampleKey:e,examples:t,onChange:r})=>{var l;const a=Object.keys(t),i=e?a.indexOf(e):0,[c,n]=(0,react_1.useState)(i>-1?i:0);(0,react_1.useEffect)((()=>n(i>-1?i:0)),[e,i]);const o=a.map(((e,r)=>({value:(0,utils_1.normalizeText)(t[e].summary)||e,idx:r})));return o.length<2?null:(0,jsx_runtime_1.jsx)(common_1.Container,{"data-
|
|
1
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.ExampleSwitch=void 0;const jsx_runtime_1=require("react/jsx-runtime"),react_1=require("react"),common_1=require("../common"),SelectOrLabel_1=require("../SelectOrLabel"),utils_1=require("../../utils"),ExampleSwitch=({exampleKey:e,examples:t,onChange:r})=>{var l;const a=Object.keys(t),i=e?a.indexOf(e):0,[c,n]=(0,react_1.useState)(i>-1?i:0);(0,react_1.useEffect)((()=>n(i>-1?i:0)),[e,i]);const o=a.map(((e,r)=>({value:(0,utils_1.normalizeText)(t[e].summary)||e,idx:r})));return o.length<2?null:(0,jsx_runtime_1.jsx)(common_1.Container,{"data-testid":"example-switch",children:(0,jsx_runtime_1.jsx)(SelectOrLabel_1.SelectOrLabel,{Select:common_1.Select,Label:common_1.MimeLabel,variant:"dark",fullWidth:!0,options:o,value:null===(l=o[c])||void 0===l?void 0:l.value,onChange:({idx:e})=>{n(e),r(a[e])}})})};exports.ExampleSwitch=ExampleSwitch;
|
|
2
2
|
//# sourceMappingURL=ExampleSwitch.js.map
|
|
@@ -1,6 +1,10 @@
|
|
|
1
|
-
"use strict";var __rest=this&&this.__rest||function(e,t){var r={};for(var n in e)Object.prototype.hasOwnProperty.call(e,n)&&t.indexOf(n)<0&&(r[n]=e[n]);if(null!=e&&"function"==typeof Object.getOwnPropertySymbols){var o=0;for(n=Object.getOwnPropertySymbols(e);o<n.length;o++)t.indexOf(n[o])<0&&Object.prototype.propertyIsEnumerable.call(e,n[o])&&(r[n[o]]=e[n[o]])}return r},__importDefault=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(exports,"__esModule",{value:!0}),exports.OneOfSchema=void 0;const jsx_runtime_1=require("react/jsx-runtime"),react_1=require("react"),jotai_1=require("jotai"),styled_components_1=__importDefault(require("styled-components")),react_router_dom_1=require("react-router-dom"),common_1=require("../common"),Markdown_1=require("../Markdown"),ConstraintsView_1=require("../common/ConstraintsView"),Schema_1=require("./Schema"),operation_1=require("../../jotai/operation"),SchemaSelection_1=require("../common/SchemaSelection"),utils_1=require("../../utils");function OneOfSchemaComponent(e){var{schema:{oneOf:t},schema:r}=e,n=__rest(e,["schema","schema"]);const o=(0,react_router_dom_1.useLocation)(),[i]=(0,jotai_1.useAtom)((0,operation_1.operationStore)(r.operationPointer)),s=t.findIndex(((e,t)=>(0,utils_1.pathIncludesLink)(o,`oneof=${t}`))),a=-1===s?0:s,c=t[void 0!==i.activeOneOf[r.pointer]?i.activeOneOf[r.pointer]:a];if(!c)return null;const _=t.map(((e,t)=>({label:e.title||e.typePrefix+e.displayType,value:t})));return(0,jsx_runtime_1.jsxs)(
|
|
1
|
+
"use strict";var __rest=this&&this.__rest||function(e,t){var r={};for(var n in e)Object.prototype.hasOwnProperty.call(e,n)&&t.indexOf(n)<0&&(r[n]=e[n]);if(null!=e&&"function"==typeof Object.getOwnPropertySymbols){var o=0;for(n=Object.getOwnPropertySymbols(e);o<n.length;o++)t.indexOf(n[o])<0&&Object.prototype.propertyIsEnumerable.call(e,n[o])&&(r[n[o]]=e[n[o]])}return r},__importDefault=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(exports,"__esModule",{value:!0}),exports.OneOfSchema=void 0;const jsx_runtime_1=require("react/jsx-runtime"),react_1=require("react"),jotai_1=require("jotai"),styled_components_1=__importDefault(require("styled-components")),react_router_dom_1=require("react-router-dom"),common_1=require("../common"),Markdown_1=require("../Markdown"),ConstraintsView_1=require("../common/ConstraintsView"),Schema_1=require("./Schema"),operation_1=require("../../jotai/operation"),SchemaSelection_1=require("../common/SchemaSelection"),utils_1=require("../../utils");function OneOfSchemaComponent(e){var{schema:{oneOf:t},schema:r}=e,n=__rest(e,["schema","schema"]);const o=(0,react_router_dom_1.useLocation)(),[i]=(0,jotai_1.useAtom)((0,operation_1.operationStore)(r.operationPointer)),s=t.findIndex(((e,t)=>(0,utils_1.pathIncludesLink)(o,`oneof=${t}`))),a=-1===s?0:s,c=t[void 0!==i.activeOneOf[r.pointer]?i.activeOneOf[r.pointer]:a];if(!c)return null;const _=t.map(((e,t)=>({label:e.title||e.typePrefix+e.displayType,value:t})));return(0,jsx_runtime_1.jsxs)(Wrapper,{children:[(0,jsx_runtime_1.jsxs)(common_1.SelectionTitle,{children:[r.oneOfType,":"]}),(0,jsx_runtime_1.jsx)(SchemaSelection_1.SchemaSelection,{options:_,pointer:r.operationPointer,schema:r,defaultOneOfIdx:a}),c.deprecated&&(0,jsx_runtime_1.jsx)(common_1.BadgeStyle,{deprecated:!0,children:"Deprecated"}),c.description&&(0,jsx_runtime_1.jsx)(StyledDescription,{source:c.description}),(0,jsx_runtime_1.jsx)(ConstraintsView_1.ConstraintsView,{constraints:c.constraints}),(0,jsx_runtime_1.jsx)(Schema_1.Schema,Object.assign({},n,{schema:c}))]})}exports.OneOfSchema=(0,react_1.memo)(OneOfSchemaComponent);const StyledDescription=(0,styled_components_1.default)(Markdown_1.Markdown)`
|
|
2
2
|
margin-top: var(--spacing-xs);
|
|
3
3
|
font-size: var(--font-size-base);
|
|
4
4
|
line-height: var(--line-height-base);
|
|
5
|
+
`,Wrapper=styled_components_1.default.div`
|
|
6
|
+
display: flex;
|
|
7
|
+
flex-direction: column;
|
|
8
|
+
align-items: flex-start;
|
|
5
9
|
`;
|
|
6
10
|
//# sourceMappingURL=OneOfSchema.js.map
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.Security=void 0;const jsx_runtime_1=require("react/jsx-runtime"),react_1=require("react"),theme_1=require("@redocly/theme"),SecurityButton_1=require("./SecurityButton"),SecurityModal_1=require("./SecurityModal");function Security({securities:e}){const[t,r]=(0,react_1.useState)(!1);return
|
|
1
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.Security=void 0;const jsx_runtime_1=require("react/jsx-runtime"),react_1=require("react"),theme_1=require("@redocly/theme"),SecurityButton_1=require("./SecurityButton"),SecurityModal_1=require("./SecurityModal");function Security({securities:e}){const[t,r]=(0,react_1.useState)(!1);return(0,theme_1.useModalScrollLock)(t),e.length?(0,jsx_runtime_1.jsxs)(jsx_runtime_1.Fragment,{children:[(0,jsx_runtime_1.jsx)(SecurityButton_1.SecurityButton,{securities:e,onClick:()=>r(!0)}),t&&(0,jsx_runtime_1.jsx)(theme_1.Portal,{mountId:"api-content",children:(0,jsx_runtime_1.jsx)(SecurityModal_1.SecurityModal,{securities:e,onClose:()=>r(!1)})})]}):null}exports.Security=Security;
|
|
2
2
|
//# sourceMappingURL=Security.js.map
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
"use strict";var __importDefault=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(exports,"__esModule",{value:!0}),exports.SecurityModal=void 0;const jsx_runtime_1=require("react/jsx-runtime"),react_1=require("react"),styled_components_1=__importDefault(require("styled-components")),theme_1=require("@redocly/theme"),SecurityFlow_1=require("./SecurityFlow"),Divider_1=require("./Divider");function SecurityModal({securities:e,onClose:t}){const[r
|
|
1
|
+
"use strict";var __importDefault=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(exports,"__esModule",{value:!0}),exports.SecurityModal=void 0;const jsx_runtime_1=require("react/jsx-runtime"),react_1=require("react"),styled_components_1=__importDefault(require("styled-components")),theme_1=require("@redocly/theme"),SecurityFlow_1=require("./SecurityFlow"),Divider_1=require("./Divider");function SecurityModal({securities:e,onClose:t}){const[i,r]=(0,react_1.useState)(0),s=(0,react_1.useRef)(null),{schemes:o}=e[i]||{};(0,theme_1.useOutsideClick)(s,t),(0,theme_1.useFocusTrap)(s);const a=e.map((({schemes:e},t)=>({label:e.map((({id:e})=>e)).join(" and "),value:t})));return(0,jsx_runtime_1.jsx)(StyledBackground,{children:(0,jsx_runtime_1.jsxs)(Wrapper,{ref:s,tabIndex:0,children:[(0,jsx_runtime_1.jsx)(Close,{onClick:t,"data-testid":"close",variant:"ghost",icon:(0,jsx_runtime_1.jsx)(theme_1.CloseIcon,{})}),(0,jsx_runtime_1.jsxs)(Title,{children:[(0,jsx_runtime_1.jsx)(theme_1.SecurityIcon,{size:"24px"}),"Security"]}),(0,jsx_runtime_1.jsx)(theme_1.Segmented,{value:i,onChange:({value:e})=>r(e),options:a}),o.map(((t,i)=>(0,jsx_runtime_1.jsxs)(react_1.Fragment,{children:[(0,jsx_runtime_1.jsx)(SecurityFlow_1.SecurityFlow,Object.assign({},t,{securities:e})),i!==o.length-1&&(0,jsx_runtime_1.jsx)(Divider_1.Divider,{label:"and"})]},t.id)))]})})}exports.SecurityModal=SecurityModal;const Wrapper=styled_components_1.default.div`
|
|
2
2
|
background: var(--bg-color);
|
|
3
3
|
box-shadow: var(--bg-raised-shadow);
|
|
4
4
|
border-radius: var(--border-radius-lg);
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
"use strict";var __importDefault=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(exports,"__esModule",{value:!0}),exports.OperationsNavigation=exports.OperationsNavigationComponent=void 0;const jsx_runtime_1=require("react/jsx-runtime"),react_1=require("react"),react_router_dom_1=require("react-router-dom"),theme_1=require("@redocly/theme"),styled_components_1=__importDefault(require("styled-components")),index_1=require("jotai/index"),common_1=require("../common"),utils_1=require("../../utils"),services_1=require("../../services"),app_1=require("../../jotai/app"),MAX_OPERATIONS=8;function OperationsNavigationComponent({items:e,routingBasePath:t}){const[n,o]=(0,react_1.useState)(!1),r=(0,react_router_dom_1.useNavigate)(),i=(0,index_1.useAtomValue)(app_1.layoutAtom)===theme_1.LayoutVariant.STACKED,{operations:a,webhooks:s,count:l}=(0,react_1.useMemo)((()=>{const t=e.filter((e=>"operation"===e.type)),o=n?t:t.slice(0,MAX_OPERATIONS),{operations:r,webhooks:i}=o.reduce(((e,t)=>t.isWebhook?Object.assign(Object.assign({},e),{webhooks:[...e.webhooks,t]}):Object.assign(Object.assign({},e),{operations:[...e.operations,t]})),{operations:[],webhooks:[]});return{operations:r,webhooks:i,count:!n&&t.length>MAX_OPERATIONS?t.length-MAX_OPERATIONS:0}}),[n,e]);if(!a.length&&!s.length)return null;const c=e=>{r(e)};return(0,jsx_runtime_1.jsxs)(Wrapper,{isStacked:i,"data-
|
|
1
|
+
"use strict";var __importDefault=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(exports,"__esModule",{value:!0}),exports.OperationsNavigation=exports.OperationsNavigationComponent=void 0;const jsx_runtime_1=require("react/jsx-runtime"),react_1=require("react"),react_router_dom_1=require("react-router-dom"),theme_1=require("@redocly/theme"),styled_components_1=__importDefault(require("styled-components")),index_1=require("jotai/index"),common_1=require("../common"),utils_1=require("../../utils"),services_1=require("../../services"),app_1=require("../../jotai/app"),MAX_OPERATIONS=8;function OperationsNavigationComponent({items:e,routingBasePath:t}){const[n,o]=(0,react_1.useState)(!1),r=(0,react_router_dom_1.useNavigate)(),i=(0,index_1.useAtomValue)(app_1.layoutAtom)===theme_1.LayoutVariant.STACKED,{operations:a,webhooks:s,count:l}=(0,react_1.useMemo)((()=>{const t=e.filter((e=>"operation"===e.type)),o=n?t:t.slice(0,MAX_OPERATIONS),{operations:r,webhooks:i}=o.reduce(((e,t)=>t.isWebhook?Object.assign(Object.assign({},e),{webhooks:[...e.webhooks,t]}):Object.assign(Object.assign({},e),{operations:[...e.operations,t]})),{operations:[],webhooks:[]});return{operations:r,webhooks:i,count:!n&&t.length>MAX_OPERATIONS?t.length-MAX_OPERATIONS:0}}),[n,e]);if(!a.length&&!s.length)return null;const c=e=>{r(e)};return(0,jsx_runtime_1.jsxs)(Wrapper,{isStacked:i,"data-testid":"operation-navigation-list",children:[a.length>0&&(0,jsx_runtime_1.jsxs)(jsx_runtime_1.Fragment,{children:[(0,jsx_runtime_1.jsx)(Heading,{children:"Operations"}),a.map((({id:e,href:n,httpVerb:o,path:r})=>(0,jsx_runtime_1.jsx)(Item,{variant:"outlined",size:"large",onClick:()=>c((0,services_1.joinWithSeparator)(t,(0,utils_1.encodeBackSlashes)(n))),children:(0,jsx_runtime_1.jsxs)("span",{children:[(0,jsx_runtime_1.jsx)(common_1.HttpVerb,{color:o,children:o}),(0,jsx_runtime_1.jsx)(Path,{children:r})]})},e)))]}),s.length>0&&(0,jsx_runtime_1.jsxs)(jsx_runtime_1.Fragment,{children:[(0,jsx_runtime_1.jsx)(Heading,{children:"Webhooks"}),s.map((({id:e,href:n,httpVerb:o,path:r})=>(0,jsx_runtime_1.jsx)(Item,{variant:"outlined",size:"large",onClick:()=>c((0,services_1.joinWithSeparator)(t,(0,utils_1.encodeBackSlashes)(n))),children:(0,jsx_runtime_1.jsxs)("span",{children:[(0,jsx_runtime_1.jsx)(common_1.HttpVerb,{color:o,children:o}),(0,jsx_runtime_1.jsx)(Path,{children:r})]})},e)))]}),!n&&Boolean(l)&&(0,jsx_runtime_1.jsxs)(StyledButton,{variant:"link",size:"large","data-testid":"show-more-operations",fullWidth:!0,onClick:()=>o(!0),children:["Show ",l," more..."]})]})}exports.OperationsNavigationComponent=OperationsNavigationComponent,exports.OperationsNavigation=(0,react_1.memo)(OperationsNavigationComponent);const Wrapper=(0,styled_components_1.default)(common_1.SamplesPanel)`
|
|
2
2
|
display: flex;
|
|
3
3
|
flex-direction: column;
|
|
4
4
|
gap: var(--spacing-xxs);
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
"use strict";var __importDefault=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(exports,"__esModule",{value:!0}),exports.Dropdown=void 0;const jsx_runtime_1=require("react/jsx-runtime"),styled_components_1=__importDefault(require("styled-components")),theme_1=require("@redocly/theme");function DropdownComponent({options:e,value:t,onChange:n,className:r,triggerVariant:o="outlined",triggerSize:i="small"}){var a;const
|
|
1
|
+
"use strict";var __importDefault=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(exports,"__esModule",{value:!0}),exports.Dropdown=void 0;const jsx_runtime_1=require("react/jsx-runtime"),styled_components_1=__importDefault(require("styled-components")),theme_1=require("@redocly/theme");function DropdownComponent({options:e,value:t,onChange:n,className:r,triggerVariant:o="outlined",triggerSize:i="small"}){var a;const s=null===(a=e.find((e=>e.value===t)))||void 0===a?void 0:a.label;return 1===e.length?(0,jsx_runtime_1.jsx)(Title,{children:s}):(0,jsx_runtime_1.jsx)(theme_1.Dropdown,{className:r,trigger:(0,jsx_runtime_1.jsx)(theme_1.Button,{variant:o,size:i,type:"button",children:s}),withArrow:!0,children:(0,jsx_runtime_1.jsx)(theme_1.DropdownMenu,{children:e.map((e=>(0,jsx_runtime_1.jsx)(StyledDropdownMenuItem,{active:e.value===t,onAction:()=>n(e),suffix:e.value===t&&(0,jsx_runtime_1.jsx)(StyledCheckmarkIcon,{}),children:e.label},e.label)))})})}exports.Dropdown=(0,theme_1.typedMemo)(DropdownComponent);const StyledCheckmarkIcon=(0,styled_components_1.default)(theme_1.CheckmarkIcon)`
|
|
2
2
|
width: 16px;
|
|
3
3
|
height: 16px;
|
|
4
4
|
margin-left: auto;
|
|
@@ -10,8 +10,8 @@
|
|
|
10
10
|
align-items: center;
|
|
11
11
|
gap: var(--spacing-md);
|
|
12
12
|
padding: var(--spacing-xxs) var(--spacing-sm);
|
|
13
|
-
font-size: var(--font-size-
|
|
14
|
-
line-height: var(--line-height-
|
|
13
|
+
font-size: var(--font-size-base);
|
|
14
|
+
line-height: var(--line-height-base);
|
|
15
15
|
`,Title=styled_components_1.default.span`
|
|
16
16
|
margin-right: var(--spacing-unit);
|
|
17
17
|
cursor: default;
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.SchemaSelection=void 0;const jsx_runtime_1=require("react/jsx-runtime"),react_1=require("react"),jotai_1=require("jotai"),theme_1=require("@redocly/theme"),Dropdown_1=require("../Dropdown"),operation_1=require("../../../jotai/operation"),LIMIT_FOR_SEGMENTED=5;function SchemaSelectionComponent({options:e,onChange:
|
|
1
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.SchemaSelection=void 0;const jsx_runtime_1=require("react/jsx-runtime"),react_1=require("react"),jotai_1=require("jotai"),theme_1=require("@redocly/theme"),Dropdown_1=require("../Dropdown"),operation_1=require("../../../jotai/operation"),LIMIT_FOR_SEGMENTED=5;function SchemaSelectionComponent({options:e,onChange:t,pointer:o,schema:n,defaultOneOfIdx:i}){var a,r;const[s,c]=(0,jotai_1.useAtom)((0,operation_1.operationStore)(o)),l=null===(r=e[null!==(a=s.activeOneOf[n.pointer])&&void 0!==a?a:i])||void 0===r?void 0:r.value,u=(0,react_1.useCallback)((({value:e})=>{void 0!==e&&(t?t(e):c((t=>{var o,i;return Object.assign(Object.assign({},t),{activeExampleName:(null===(i=null===(o=n.oneOf)||void 0===o?void 0:o[e])||void 0===i?void 0:i.title)||t.activeExampleName,activeOneOf:Object.assign(Object.assign({},t.activeOneOf),{[n.pointer]:e})})})))}),[t,n.oneOf,n.pointer,c]);return(0,theme_1.isUndefined)(l)?null:e.length>LIMIT_FOR_SEGMENTED?(0,jsx_runtime_1.jsx)(Dropdown_1.Dropdown,{options:e,value:l,onChange:u}):(0,jsx_runtime_1.jsx)(theme_1.Segmented,{value:l,onChange:u,options:e,size:"small","data-testid":"segmented-schema"})}exports.SchemaSelection=SchemaSelectionComponent;
|
|
2
2
|
//# sourceMappingURL=SchemaSelection.js.map
|
package/lib/hooks/index.d.ts
CHANGED
|
@@ -4,3 +4,4 @@ export { useActivateExample } from './useActivateExample';
|
|
|
4
4
|
export { useRouter } from './useRouter';
|
|
5
5
|
export { useContentItems } from './useContentItems';
|
|
6
6
|
export { useActiveWithFallback } from './useActiveWithFallback';
|
|
7
|
+
export { useUppercase2LowercaseRedirect } from './useUppercase2LowercaseRedirect';
|
package/lib/hooks/index.js
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.useActiveWithFallback=exports.useContentItems=exports.useRouter=exports.useActivateExample=exports.usePrevious=exports.useDimensions=void 0;var useDimensions_1=require("./useDimensions");Object.defineProperty(exports,"useDimensions",{enumerable:!0,get:function(){return useDimensions_1.useDimensions}});var usePrevious_1=require("./usePrevious");Object.defineProperty(exports,"usePrevious",{enumerable:!0,get:function(){return usePrevious_1.usePrevious}});var useActivateExample_1=require("./useActivateExample");Object.defineProperty(exports,"useActivateExample",{enumerable:!0,get:function(){return useActivateExample_1.useActivateExample}});var useRouter_1=require("./useRouter");Object.defineProperty(exports,"useRouter",{enumerable:!0,get:function(){return useRouter_1.useRouter}});var useContentItems_1=require("./useContentItems");Object.defineProperty(exports,"useContentItems",{enumerable:!0,get:function(){return useContentItems_1.useContentItems}});var useActiveWithFallback_1=require("./useActiveWithFallback");Object.defineProperty(exports,"useActiveWithFallback",{enumerable:!0,get:function(){return useActiveWithFallback_1.useActiveWithFallback}});
|
|
1
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.useUppercase2LowercaseRedirect=exports.useActiveWithFallback=exports.useContentItems=exports.useRouter=exports.useActivateExample=exports.usePrevious=exports.useDimensions=void 0;var useDimensions_1=require("./useDimensions");Object.defineProperty(exports,"useDimensions",{enumerable:!0,get:function(){return useDimensions_1.useDimensions}});var usePrevious_1=require("./usePrevious");Object.defineProperty(exports,"usePrevious",{enumerable:!0,get:function(){return usePrevious_1.usePrevious}});var useActivateExample_1=require("./useActivateExample");Object.defineProperty(exports,"useActivateExample",{enumerable:!0,get:function(){return useActivateExample_1.useActivateExample}});var useRouter_1=require("./useRouter");Object.defineProperty(exports,"useRouter",{enumerable:!0,get:function(){return useRouter_1.useRouter}});var useContentItems_1=require("./useContentItems");Object.defineProperty(exports,"useContentItems",{enumerable:!0,get:function(){return useContentItems_1.useContentItems}});var useActiveWithFallback_1=require("./useActiveWithFallback");Object.defineProperty(exports,"useActiveWithFallback",{enumerable:!0,get:function(){return useActiveWithFallback_1.useActiveWithFallback}});var useUppercase2LowercaseRedirect_1=require("./useUppercase2LowercaseRedirect");Object.defineProperty(exports,"useUppercase2LowercaseRedirect",{enumerable:!0,get:function(){return useUppercase2LowercaseRedirect_1.useUppercase2LowercaseRedirect}});
|
|
2
2
|
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export declare function useUppercase2LowercaseRedirect(): void;
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.useUppercase2LowercaseRedirect=void 0;const react_1=require("react"),react_router_dom_1=require("react-router-dom");function useUppercase2LowercaseRedirect(){const e=(0,react_router_dom_1.useNavigate)(),r=(0,react_router_dom_1.useLocation)();(0,react_1.useEffect)((()=>{r.pathname.toLowerCase()!==r.pathname&&e(r.pathname.toLowerCase(),{replace:!0})}),[r.pathname,e])}exports.useUppercase2LowercaseRedirect=useUppercase2LowercaseRedirect;
|
|
2
|
+
//# sourceMappingURL=useUppercase2LowercaseRedirect.js.map
|
package/lib/setupTests.js
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
"use strict";var __createBinding=this&&this.__createBinding||(Object.create?function(e,t,r,
|
|
1
|
+
"use strict";var __createBinding=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r);var i=Object.getOwnPropertyDescriptor(t,r);i&&!("get"in i?!t.__esModule:i.writable||i.configurable)||(i={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,i)}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),__setModuleDefault=this&&this.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),__importStar=this&&this.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var r in e)"default"!==r&&Object.prototype.hasOwnProperty.call(e,r)&&__createBinding(t,e,r);return __setModuleDefault(t,e),t},__importDefault=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(exports,"__esModule",{value:!0});const Enzyme=__importStar(require("enzyme")),enzyme_adapter_react_18_1=__importDefault(require("@cfaester/enzyme-adapter-react-18"));require("raf/polyfill"),require("@testing-library/jest-dom"),require("jest-styled-components");const node_crypto_1=require("node:crypto");Enzyme.configure({adapter:new enzyme_adapter_react_18_1.default}),window.crypto.randomUUID=node_crypto_1.randomUUID,global.structuredClone=e=>JSON.parse(JSON.stringify(e));
|
|
2
2
|
//# sourceMappingURL=setupTests.js.map
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import{jsx as _jsx,Fragment as _Fragment,jsxs as _jsxs}from"react/jsx-runtime";import{memo,useCallback}from"react";import{useAtomValue}from"jotai";import styled from"styled-components";import{DownloadIcon,DocumentIcon,JsonIcon,Button,FileIcon}from"@redocly/theme";import{useDownloadInfo}from"./useDownloadInfo";import{globalStoreAtom}from"../../jotai/store";function DownloadSpecificationComponent(){const{
|
|
1
|
+
import{jsx as _jsx,Fragment as _Fragment,jsxs as _jsxs}from"react/jsx-runtime";import{memo,useCallback}from"react";import{useAtomValue}from"jotai";import styled from"styled-components";import{DownloadIcon,DocumentIcon,JsonIcon,Button,FileIcon}from"@redocly/theme";import{useDownloadInfo}from"./useDownloadInfo";import{globalStoreAtom}from"../../jotai/store";function DownloadSpecificationComponent(){const{options:o}=useAtomValue(globalStoreAtom),e=useDownloadInfo({downloadUrls:o.downloadUrls}),t=useCallback((o=>{switch(o){case"yaml":return _jsx(DocumentIcon,{});case"json":return _jsx(JsonIcon,{});default:return _jsx(FileIcon,{})}}),[]);return e?_jsx(Wrapper,{children:(e||[]).map((({title:o,url:e,iconType:n})=>_jsxs(Card,{children:[_jsxs(FileName,{children:[t(n),_jsx("a",{href:e,target:"_blank",download:!0,rel:"noreferrer",children:o})]}),_jsx("a",{href:e,target:"_blank",download:!0,rel:"noreferrer",children:_jsx(Button,{variant:"text",size:"small",icon:_jsx(DownloadIcon,{})})})]},o)))}):_jsx(_Fragment,{})}export const DownloadSpecification=memo(DownloadSpecificationComponent);const Card=styled.div`
|
|
2
2
|
display: flex;
|
|
3
3
|
align-items: baseline;
|
|
4
4
|
justify-content: space-between;
|
|
@@ -1,11 +1,9 @@
|
|
|
1
|
-
import type { OpenAPIDefinition } from '../../types';
|
|
2
1
|
export type DownloadUrlsConfig = {
|
|
3
2
|
title?: string;
|
|
4
3
|
url: string;
|
|
5
4
|
}[];
|
|
6
5
|
export type DownloadIconType = 'yaml' | 'json' | 'file';
|
|
7
6
|
export type UseDownloadInfoProps = {
|
|
8
|
-
definition?: OpenAPIDefinition;
|
|
9
7
|
definitionUrl?: string;
|
|
10
8
|
downloadUrls?: DownloadUrlsConfig;
|
|
11
9
|
};
|
|
@@ -1,2 +1,2 @@
|
|
|
1
1
|
import type { UseDownloadInfoProps, UseDownloadInfoReturnType } from './types';
|
|
2
|
-
export declare const useDownloadInfo: ({
|
|
2
|
+
export declare const useDownloadInfo: ({ downloadUrls, }: UseDownloadInfoProps) => UseDownloadInfoReturnType | undefined;
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{useMemo}from"react";
|
|
1
|
+
import{useMemo}from"react";export const useDownloadInfo=({downloadUrls:e})=>useMemo((()=>{if(e)return e.map((({title:e,url:o})=>({url:o,title:e||getFileNameFromUrl(o,"openapi.yaml"),iconType:getIconTypeFromUrl(o)})))}),[e]);function getFileNameFromUrl(e,o){const l=e.split("?")[0].split(/[\\\/]/).pop();return l&&(l.includes("yaml")||l.includes("json"))?l:o}function getIconTypeFromUrl(e,o){const l=o||e.split("?")[0].split(/[\\\/]/).pop();return l?l.includes("yaml")?"yaml":l.includes("json")?"json":"file":"file"}
|
|
2
2
|
//# sourceMappingURL=useDownloadInfo.js.map
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import{jsx as _jsx,jsxs as _jsxs,Fragment as _Fragment}from"react/jsx-runtime";import{memo,useState,useCallback,useMemo}from"react";import styled from"styled-components";import{useAtomValue}from"jotai";import{Feedback,LayoutVariant,BeforeOpenApiOperation,AfterOpenApiOperation,Badge}from"@redocly/theme";import{SamplesMiddlePanel,SamplesPanel,ShareLink,Row}from"../common";import{CallbacksList}from"../Callbacks";import{CallbackSamples}from"../CallbackSamples";import{RequestSamples}from"../RequestSamples";import{OperationResponseList}from"../Responses";import{ResponseSamples}from"../ResponseSamples";import{makeDeepLink}from"../../services";import{layoutAtom}from"../../jotai/app";import{globalStoreAtom}from"../../jotai/store";import{getOperation}from"../../models/operation";import{RenderHook}from"../RenderHook";import{Heading,Title}from"../common/OperationItemTitle";import{LinkToField}from"../common/LinkToField";import{RequestDetails}from"../Request/RequestDetails";const OperationSamplesPanel=styled(SamplesPanel)`
|
|
2
2
|
margin-left: auto;
|
|
3
3
|
--code-block-padding: var(--spacing-xs) 0 var(--spacing-xs) 20px;
|
|
4
|
-
`;function OperationItemComponent({item:{operationDefinition:e,parent:a,href:o}}){var t,s;const{parser:l,options:i}=useAtomValue(globalStoreAtom),n=useAtomValue(layoutAtom),[r,p]=useState(),{unstable_hooks:d,feedback:m}=i,c=useMemo((()=>getOperation(l,e,a,i,o)),[o,e,i,a,l]),{name:u,deprecated:k,isWebhook:x,badges:S}=c,b=n===LayoutVariant.STACKED,f=(null==m?void 0:m.type)||"sentiment",j=!0!==(null==m?void 0:m.hide),h=S.filter((({position:e})=>"before"===e)),_=S.filter((({position:e})=>"after"===e)),[g,O]=useState(null),
|
|
4
|
+
`;function OperationItemComponent({item:{operationDefinition:e,parent:a,href:o}}){var t,s;const{parser:l,options:i}=useAtomValue(globalStoreAtom),n=useAtomValue(layoutAtom),[r,p]=useState(),{unstable_hooks:d,feedback:m}=i,c=useMemo((()=>getOperation(l,e,a,i,o)),[o,e,i,a,l]),{name:u,deprecated:k,isWebhook:x,badges:S}=c,b=n===LayoutVariant.STACKED,f=(null==m?void 0:m.type)||"sentiment",j=!0!==(null==m?void 0:m.hide),h=S.filter((({position:e})=>"before"===e)),_=S.filter((({position:e})=>"after"===e)),[g,O]=useState(null),R=useCallback((e=>{r!==e&&p(e)}),[r]);return _jsxs(OperationRow,{layout:n,children:[_jsx(OperationSubRowStyled,{layout:n,children:_jsxs(SamplesMiddlePanel,{isStacked:b,children:[_jsx(RenderHook,{Hook:BeforeOpenApiOperation||(null==d?void 0:d.BeforeOperation),props:{operation:c}}),_jsxs(Heading,{"data-testid":"operation-item-header",children:[_jsx(ShareLink,{to:o,"aria-label":`link to ${u}`}),h.map((({name:e,color:a})=>_jsx(OperationBadge,{color:a,children:e},e))),u,_.map((({name:e,color:a})=>_jsx(OperationBadge,{color:a,children:e},e))),k&&_jsx(OperationBadge,{deprecated:!0,children:"Deprecated"}),x&&_jsx(OperationBadge,{children:"Webhook"})]})]})}),_jsxs(OperationSubRowStyled,{layout:n,children:[_jsx(SamplesMiddlePanel,{isStacked:b,children:_jsx(RequestDetails,{operation:c})}),_jsx(OperationSamplesPanel,{isStacked:b,"data-testid":"samples-block",className:"panel-container-request-samples",children:_jsx(RequestSamples,{operation:c})})]}),_jsxs(OperationSubRowStyled,{layout:n,children:[_jsx(SamplesMiddlePanel,{isStacked:b,children:(null===(t=c.responses)||void 0===t?void 0:t.length)?_jsx(OperationResponseList,{responses:c.responses,operationId:c.id,operationPointer:c.pointer,callbackId:c.callbackId,activeResponseTab:r,onTabChange:R}):null}),_jsx(OperationSamplesPanel,{isStacked:b,"data-testid":"samples-block",className:"panel-container-response-samples",children:_jsx(ResponseSamples,{operation:c,activeResponseTab:r,onTabChange:R})})]}),_jsxs(OperationSubRowStyled,{layout:n,children:[_jsxs(SamplesMiddlePanel,{isStacked:b,children:[(null===(s=c.callbacks)||void 0===s?void 0:s.length)?_jsxs(_Fragment,{children:[_jsxs(Title,{children:[_jsx(LinkToField,{to:makeDeepLink(c.id,"callbacks")}),"Callbacks"]}),_jsx(CallbacksList,{callbacks:c.callbacks,onExpand:O,selectedCallback:g})]}):null,_jsx(RenderHook,{Hook:AfterOpenApiOperation||(null==d?void 0:d.AfterOperation),props:{operation:c}})]}),g?_jsx(OperationSamplesPanel,{isStacked:b,"data-testid":"samples-block",children:_jsx(CallbackSamples,{callback:g})}):null]}),_jsx(OperationSubRowStyled,{layout:n,children:_jsx(SamplesMiddlePanel,{isStacked:b,fullWidth:!0,children:j?_jsx(FeedbackWrapper,{children:_jsx(Feedback,{type:f,settings:m.settings,path:c.href})}):null})})]})}export const OperationItem=memo(OperationItemComponent);const FeedbackWrapper=styled.div`
|
|
5
5
|
& > div {
|
|
6
6
|
flex: 1 1 auto;
|
|
7
7
|
display: flex;
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{jsx as _jsx,jsxs as _jsxs,Fragment as _Fragment}from"react/jsx-runtime";import{useRef,memo}from"react";import{SidebarLogo,GlobalStyle as ThemeCommonStyle,useMount,LayoutVariant,ThreePanelLayout}from"@redocly/theme";import{UnsupportedFeatureScreen}from"../UnsupportedFeatureScreen";import{AppProvider,StoreProvider}from"./Providers";import{Overlay}from"../Overlay";import{RedocWrapStyled,CssFixes}from"./styled";import{StickyResponsiveSidebar}from"../StickySidebar";import{SideMenu}from"../SideMenu";import{Content}from"../Content";import{useContentItems}from"../../hooks";import{withRouter}from"../../hoc/withRouter";import{withStore}from"../../hoc/withStore";import{compose}from"../../utils";import{useLicense}from"../../hooks/useLicense";const RedoclyOpenAPIDocsComponent=compose(withRouter,withStore,memo)((({licenseKey:e,onLoaded:o,children:t,options:i,layout:n,collapsedSidebar:r,parser:s,withCommonStyles:l})=>{var a,d,c,m,u;const p=useRef(null),{isValid:v,licenseInfo:f}=useLicense(e);useMount((()=>{null==o||o()}));const{hideSidebar:S,scrollYOffset:h}=i||{},{contentItems:y}=useContentItems({parser:s,options:i}),x=null===(d=null===(a=s.definition)||void 0===a?void 0:a.info)||void 0===d?void 0:d["x-logo"];return _jsxs(_Fragment,{children:[l&&_jsx(ThemeCommonStyle,{}),_jsxs(RedocWrapStyled,{className:"redoc-wrap",ref:p,children:[_jsx(UnsupportedFeatureScreen,{}),!v&&_jsx(Overlay,{licenseInfo:f}),_jsx(CssFixes,{layout:n}),!S&&_jsxs(StickyResponsiveSidebar,{scrollYOffset:h,className:"menu-content",collapsedSidebar:!r,children:[_jsx(SidebarLogo,{imageUrl:null==x?void 0:x.url,href:(null==x?void 0:x.href)||(null===(u=null===(m=null===(c=s.definition)||void 0===c?void 0:c.info)||void 0===m?void 0:m.contact)||void 0===u?void 0:u.url),altText:null==x?void 0:x.altText,backgroundColor:null==x?void 0:x.backgroundColor}),_jsx(SideMenu,{items:v?y:[]})]}),_jsxs(ThreePanelLayout,{className:"api-content",id:"api-content",layout:n===LayoutVariant.THREE_PANEL?LayoutVariant.THREE_PANEL:LayoutVariant.STACKED,collapsedSidebar:r,children:[_jsx(Content,{items:v?y:[],routingBasePath:i.routingBasePath}),t]})]})]})}));export function RedoclyOpenAPIDocs({onLoaded:e,children:o,store:t,withCommonStyles:i}){var n,r,s;return(null==t?void 0:t.definition)?_jsx(StoreProvider,Object.assign({},t,{children:_jsx(RedoclyOpenAPIDocsComponent,{onLoaded:e,basePath:null===(n=t.options)||void 0===n?void 0:n.routingBasePath,licenseKey:null===(r=t.options)||void 0===r?void 0:r.licenseKey,disableRouter:null===(s=t.options)||void 0===s?void 0:s.disableRouter,withCommonStyles:i,children:o})})):null}export function RedoclyOpenAPIDocsStandalone({definition:e,definitionUrl:o,options:t={},activeItemId:i,activeSampleLanguage:n,activeDeepLink:r}){return _jsx(AppProvider,{definition:e,definitionUrl:o,options:t,activeItemId:i,activeSampleLanguage:n,activeDeepLink:r,children:_jsx(RedoclyOpenAPIDocs,{withCommonStyles:!0})})}
|
|
1
|
+
import{jsx as _jsx,jsxs as _jsxs,Fragment as _Fragment}from"react/jsx-runtime";import{useRef,memo}from"react";import{SidebarLogo,GlobalStyle as ThemeCommonStyle,useMount,LayoutVariant,ThreePanelLayout}from"@redocly/theme";import{UnsupportedFeatureScreen}from"../UnsupportedFeatureScreen";import{AppProvider,StoreProvider}from"./Providers";import{Overlay}from"../Overlay";import{RedocWrapStyled,CssFixes}from"./styled";import{StickyResponsiveSidebar}from"../StickySidebar";import{SideMenu}from"../SideMenu";import{Content}from"../Content";import{useContentItems,useUppercase2LowercaseRedirect}from"../../hooks";import{withRouter}from"../../hoc/withRouter";import{withStore}from"../../hoc/withStore";import{compose}from"../../utils";import{useLicense}from"../../hooks/useLicense";const RedoclyOpenAPIDocsComponent=compose(withRouter,withStore,memo)((({licenseKey:e,onLoaded:o,children:t,options:i,layout:n,collapsedSidebar:r,parser:s,withCommonStyles:l})=>{var a,d,c,m,u;const p=useRef(null),{isValid:v,licenseInfo:f}=useLicense(e);useUppercase2LowercaseRedirect(),useMount((()=>{null==o||o()}));const{hideSidebar:S,scrollYOffset:h}=i||{},{contentItems:y}=useContentItems({parser:s,options:i}),x=null===(d=null===(a=s.definition)||void 0===a?void 0:a.info)||void 0===d?void 0:d["x-logo"];return _jsxs(_Fragment,{children:[l&&_jsx(ThemeCommonStyle,{}),_jsxs(RedocWrapStyled,{className:"redoc-wrap",ref:p,children:[_jsx(UnsupportedFeatureScreen,{}),!v&&_jsx(Overlay,{licenseInfo:f}),_jsx(CssFixes,{layout:n}),!S&&_jsxs(StickyResponsiveSidebar,{scrollYOffset:h,className:"menu-content",collapsedSidebar:!r,children:[_jsx(SidebarLogo,{imageUrl:null==x?void 0:x.url,href:(null==x?void 0:x.href)||(null===(u=null===(m=null===(c=s.definition)||void 0===c?void 0:c.info)||void 0===m?void 0:m.contact)||void 0===u?void 0:u.url),altText:null==x?void 0:x.altText,backgroundColor:null==x?void 0:x.backgroundColor}),_jsx(SideMenu,{items:v?y:[]})]}),_jsxs(ThreePanelLayout,{className:"api-content",id:"api-content",layout:n===LayoutVariant.THREE_PANEL?LayoutVariant.THREE_PANEL:LayoutVariant.STACKED,collapsedSidebar:r,children:[_jsx(Content,{items:v?y:[],routingBasePath:i.routingBasePath}),t]})]})]})}));export function RedoclyOpenAPIDocs({onLoaded:e,children:o,store:t,withCommonStyles:i}){var n,r,s;return(null==t?void 0:t.definition)?_jsx(StoreProvider,Object.assign({},t,{children:_jsx(RedoclyOpenAPIDocsComponent,{onLoaded:e,basePath:null===(n=t.options)||void 0===n?void 0:n.routingBasePath,licenseKey:null===(r=t.options)||void 0===r?void 0:r.licenseKey,disableRouter:null===(s=t.options)||void 0===s?void 0:s.disableRouter,withCommonStyles:i,children:o})})):null}export function RedoclyOpenAPIDocsStandalone({definition:e,definitionUrl:o,options:t={},activeItemId:i,activeSampleLanguage:n,activeDeepLink:r}){return _jsx(AppProvider,{definition:e,definitionUrl:o,options:t,activeItemId:i,activeSampleLanguage:n,activeDeepLink:r,children:_jsx(RedoclyOpenAPIDocs,{withCommonStyles:!0})})}
|
|
2
2
|
//# sourceMappingURL=RedoclyOpenAPIDocs.js.map
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import{jsx as _jsx,jsxs as _jsxs}from"react/jsx-runtime";import{Suspense,memo,useCallback,useState,useRef}from"react";import{Button,RocketIcon,CircleDashIcon,Portal,useFocusTrap}from"@redocly/theme";import styled from"styled-components";import{useAtom,useAtomValue,useSetAtom}from"jotai";import{ReplayOverlay}from"@redocly/replay";import{globalOptionsAtom,globalStoreAtom}from"../../jotai/store";import{replayStateAtom}from"../../jotai/replay";import{operationStore}from"../../jotai/operation";import{LOADING_STATE}from"../../constants";import{activeMimeNameAtom,unsupportedFeatureScreenAtom,environmentAtom}from"../../jotai/app";import{isMobile}from"../../utils";import{convertOperationToReplayValue}from"./utils";function ReplayComponent({operation:e,corsProxyUrl:o,fullOpenApi:t}){var r,a;const n=useRef(null),{routingBasePath:i,mockServer:s}=useAtomValue(globalOptionsAtom),{parser:
|
|
1
|
+
import{jsx as _jsx,jsxs as _jsxs}from"react/jsx-runtime";import{Suspense,memo,useCallback,useState,useRef}from"react";import{Button,RocketIcon,CircleDashIcon,Portal,useFocusTrap}from"@redocly/theme";import styled from"styled-components";import{useAtom,useAtomValue,useSetAtom}from"jotai";import{ReplayOverlay}from"@redocly/replay";import{globalOptionsAtom,globalStoreAtom}from"../../jotai/store";import{replayStateAtom}from"../../jotai/replay";import{operationStore}from"../../jotai/operation";import{LOADING_STATE}from"../../constants";import{activeMimeNameAtom,unsupportedFeatureScreenAtom,environmentAtom}from"../../jotai/app";import{isMobile}from"../../utils";import{convertOperationToReplayValue}from"./utils";function ReplayComponent({operation:e,corsProxyUrl:o,fullOpenApi:t}){var r,a;const n=useRef(null),{routingBasePath:i,mockServer:s,oAuth2RedirectURI:m}=useAtomValue(globalOptionsAtom),{parser:l}=useAtomValue(globalStoreAtom),[p,c]=useState(!1),[u,A]=useAtom(replayStateAtom),[,d]=useAtom(unsupportedFeatureScreenAtom),v=useSetAtom(operationStore(e.pointer)),[f,x]=useAtom(activeMimeNameAtom),[[,y],O]=useAtom(environmentAtom);useFocusTrap(n);const S=useCallback((({requestValues:e,activeExampleName:o,activeMimeName:t,environment:r,environments:a})=>{v((t=>Object.assign(Object.assign({},t),{requestValues:e,activeExampleName:o}))),x(t||f),O({environment:r,environments:a})}),[v,x,f,O]),j=()=>{isMobile({tablet:!0})?d(!0):(u!==LOADING_STATE.LOADING&&c(!p),u===LOADING_STATE.NOT_LOADED&&A(LOADING_STATE.LOADING))};return _jsxs(Wrapper,{children:[_jsx("span",{children:"Experience it firsthand in the API Explorer!"}),_jsx(Button,{onClick:j,variant:"primary",iconPosition:"left",icon:u===LOADING_STATE.LOADING?_jsx(CircleDashIcon,{}):_jsx(RocketIcon,{}),children:u===LOADING_STATE.LOADING?"Loading...":"Try it"}),p&&_jsx(Suspense,{children:_jsx(Portal,{mountId:"api-content",children:_jsx("div",{ref:n,children:_jsx(ReplayOverlay,{value:convertOperationToReplayValue(e,t),onRequestChange:S,onClose:j,corsProxyUrl:o,operationUrl:i+e.href,onLoad:()=>A(LOADING_STATE.LOADED),mockServer:s,environment:y,apiId:null===(a=null===(r=null==l?void 0:l.definition.info)||void 0===r?void 0:r["x-metadata"])||void 0===a?void 0:a.apiId,oAuth2RedirectURI:m})})})})]})}export const Replay=memo(ReplayComponent);const Wrapper=styled.div`
|
|
2
2
|
display: flex;
|
|
3
3
|
justify-content: space-between;
|
|
4
4
|
align-items: center;
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{isPrimitive}from"@redocly/theme";export function convertOperationToReplayValue(e,n,i,t){var a,r;const o=(null==t?void 0:t.activeMimeName)||"application/json";return{name:e.name,method:e.httpVerb,parameters:convertParameters(e.parameters,null==i?void 0:i.requestValues),body:convertRequestBody(e.requestBody,n,(null===(a=null==i?void 0:i.requestValues)||void 0===a?void 0:a.body)?{[o]:null===(r=null==i?void 0:i.requestValues)||void 0===r?void 0:r.body}:void 0),path:e.path,servers:e.servers,security:convertRequestSecurity(e.security)}}function convertParameters(e,n){const i=new Set,t=e.map((e=>{var t;return i.add(e.in+":"+e.name),{name:e.name,in:e.in,required:e.required,description:e.description,example:(null===(t=null==n?void 0:n[String(e.in)])||void 0===t?void 0:t[e.name])||e.example}}));for(const[e,a]of Object.entries(n||{}))for(const[n,r]of Object.entries(a||{}))i.has(e+":"+n)||t.push({name:n,in:e,required:!1,description:"",example:String(r)});return t}function getInputType({type:e,format:n,enum:i}){return"string"!==e||"binary"!==n&&"base64"!==n?"object"===e?"multiline":i.length>0?"select":"text":"file"}function getFieldExamples(e,n){var i,t,a,r,o;const l=(null===(i=e[0])||void 0===i?void 0:i.example)||(null===(t=e[0])||void 0===t?void 0:t.examples);if(l)return l;if(null===(a=e.schema)||void 0===a?void 0:a.example)return e.schema.example;const
|
|
1
|
+
import{isPrimitive}from"@redocly/theme";export function convertOperationToReplayValue(e,n,i,t){var a,r;const o=(null==t?void 0:t.activeMimeName)||"application/json";return{name:e.name,method:e.httpVerb,parameters:convertParameters(e.parameters,null==i?void 0:i.requestValues),body:convertRequestBody(e.requestBody,n,(null===(a=null==i?void 0:i.requestValues)||void 0===a?void 0:a.body)?{[o]:null===(r=null==i?void 0:i.requestValues)||void 0===r?void 0:r.body}:void 0),path:e.path,servers:e.servers,security:convertRequestSecurity(e.security)}}function convertParameters(e,n){const i=new Set,t=e.map((e=>{var t;return i.add(e.in+":"+e.name),{name:e.name,in:e.in,required:e.required,description:e.description,example:(null===(t=null==n?void 0:n[String(e.in)])||void 0===t?void 0:t[e.name])||e.example,schema:e.schema}}));for(const[e,a]of Object.entries(n||{}))for(const[n,r]of Object.entries(a||{}))i.has(e+":"+n)||t.push({name:n,in:e,required:!1,description:"",example:String(r),schema:void 0});return t}function getInputType({type:e,format:n,enum:i}){return"string"!==e||"binary"!==n&&"base64"!==n?"object"===e?"multiline":i.length>0?"select":"text":"file"}function getFieldExamples(e,n){var i,t,a,r,o;const l=(null===(i=e[0])||void 0===i?void 0:i.example)||(null===(t=e[0])||void 0===t?void 0:t.examples);if(l)return l;if(null===(a=e.schema)||void 0===a?void 0:a.example)return e.schema.example;const m=(null===(r=null==n?void 0:n.default)||void 0===r?void 0:r.value)||(null===(o=null==n?void 0:n.default)||void 0===o?void 0:o.rawValue);return(null==m?void 0:m[e.name])?isPrimitive(null==m?void 0:m[e.name])?String(null==m?void 0:m[e.name]):JSON.stringify(null==m?void 0:m[e.name]):""}function convertRequestBody(e,n,i){var t;if(!e||!(null===(t=e.content)||void 0===t?void 0:t.mediaTypes)){if(!i)return;return{mediaTypes:Object.fromEntries(Object.entries(i).map((([e,n])=>[e,{name:e,examples:{default:{value:n}},schema:{},parameters:[]}])))}}return{required:e.required,mediaTypes:e.content.mediaTypes.reduce(((e,t)=>{var a,r;const o=t.schema,l=(null==i?void 0:i[t.name])?{default:{value:null==i?void 0:i[t.name],rawValue:null==i?void 0:i[t.name],mime:t.name}}:t.examples||t.formExamples;return e[t.name]={name:t.name,examples:l,schema:getBodySchema(null===(a=t.schema)||void 0===a?void 0:a.rawSchema,n),parameters:null===(r=null==o?void 0:o.fields)||void 0===r?void 0:r.map((e=>({inputType:getInputType(e.schema),name:e.name,example:getFieldExamples(e,l)})))},e}),{})}}function getBodySchema(e,n){if(e&&n)return Object.assign(Object.assign({},e),{components:(null==n?void 0:n.components)||{}})}export function convertRequestSecurity(e){if(e)return e.flatMap((({schemes:e})=>e.map((e=>({id:e.id,type:e.type,in:e.in,scopes:e.scopes,scheme:e.scheme,name:e.name,flows:e.flows})))))}
|
|
2
2
|
//# sourceMappingURL=utils.js.map
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{jsx as _jsx,jsxs as _jsxs}from"react/jsx-runtime";import{PanelHeader,PanelHeaderTitle}from"@redocly/theme";export const Summary=({tabs:e})=>_jsxs(PanelHeader,{isExpandable:!1,children:[_jsx(PanelHeaderTitle,{"data-
|
|
1
|
+
import{jsx as _jsx,jsxs as _jsxs}from"react/jsx-runtime";import{PanelHeader,PanelHeaderTitle}from"@redocly/theme";export const Summary=({tabs:e})=>_jsxs(PanelHeader,{isExpandable:!1,children:[_jsx(PanelHeaderTitle,{"data-testid":"title",children:"Response"}),e]});
|
|
2
2
|
//# sourceMappingURL=Summary.js.map
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{jsx as _jsx}from"react/jsx-runtime";import{useState,useEffect}from"react";import{MimeLabel,Container,Select}from"../common";import{SelectOrLabel}from"../SelectOrLabel";import{normalizeText}from"../../utils";export const ExampleSwitch=({exampleKey:e,examples:t,onChange:a})=>{var l;const r=Object.keys(t),o=e?r.indexOf(e):0,[i,m]=useState(o>-1?o:0);useEffect((()=>m(o>-1?o:0)),[e,o]);const n=r.map(((e,a)=>({value:normalizeText(t[e].summary)||e,idx:a})));return n.length<2?null:_jsx(Container,{"data-
|
|
1
|
+
import{jsx as _jsx}from"react/jsx-runtime";import{useState,useEffect}from"react";import{MimeLabel,Container,Select}from"../common";import{SelectOrLabel}from"../SelectOrLabel";import{normalizeText}from"../../utils";export const ExampleSwitch=({exampleKey:e,examples:t,onChange:a})=>{var l;const r=Object.keys(t),o=e?r.indexOf(e):0,[i,m]=useState(o>-1?o:0);useEffect((()=>m(o>-1?o:0)),[e,o]);const n=r.map(((e,a)=>({value:normalizeText(t[e].summary)||e,idx:a})));return n.length<2?null:_jsx(Container,{"data-testid":"example-switch",children:_jsx(SelectOrLabel,{Select:Select,Label:MimeLabel,variant:"dark",fullWidth:!0,options:n,value:null===(l=n[i])||void 0===l?void 0:l.value,onChange:({idx:e})=>{m(e),a(r[e])}})})};
|
|
2
2
|
//# sourceMappingURL=ExampleSwitch.js.map
|
|
@@ -1,6 +1,10 @@
|
|
|
1
|
-
var __rest=this&&this.__rest||function(e,t){var o={};for(var r in e)Object.prototype.hasOwnProperty.call(e,r)&&t.indexOf(r)<0&&(o[r]=e[r]);if(null!=e&&"function"==typeof Object.getOwnPropertySymbols){var n=0;for(r=Object.getOwnPropertySymbols(e);n<r.length;n++)t.indexOf(r[n])<0&&Object.prototype.propertyIsEnumerable.call(e,r[n])&&(o[r[n]]=e[r[n]])}return o};import{jsxs as _jsxs,jsx as _jsx
|
|
1
|
+
var __rest=this&&this.__rest||function(e,t){var o={};for(var r in e)Object.prototype.hasOwnProperty.call(e,r)&&t.indexOf(r)<0&&(o[r]=e[r]);if(null!=e&&"function"==typeof Object.getOwnPropertySymbols){var n=0;for(r=Object.getOwnPropertySymbols(e);n<r.length;n++)t.indexOf(r[n])<0&&Object.prototype.propertyIsEnumerable.call(e,r[n])&&(o[r[n]]=e[r[n]])}return o};import{jsxs as _jsxs,jsx as _jsx}from"react/jsx-runtime";import{memo}from"react";import{useAtom}from"jotai";import styled from"styled-components";import{useLocation}from"react-router-dom";import{BadgeStyle,SelectionTitle}from"../common";import{Markdown}from"../Markdown";import{ConstraintsView}from"../common/ConstraintsView";import{Schema}from"./Schema";import{operationStore}from"../../jotai/operation";import{SchemaSelection}from"../common/SchemaSelection";import{pathIncludesLink}from"../../utils";function OneOfSchemaComponent(e){var{schema:{oneOf:t},schema:o}=e,r=__rest(e,["schema","schema"]);const n=useLocation(),[i]=useAtom(operationStore(o.operationPointer)),s=t.findIndex(((e,t)=>pathIncludesLink(n,`oneof=${t}`))),a=-1===s?0:s,c=t[void 0!==i.activeOneOf[o.pointer]?i.activeOneOf[o.pointer]:a];if(!c)return null;const m=t.map(((e,t)=>({label:e.title||e.typePrefix+e.displayType,value:t})));return _jsxs(Wrapper,{children:[_jsxs(SelectionTitle,{children:[o.oneOfType,":"]}),_jsx(SchemaSelection,{options:m,pointer:o.operationPointer,schema:o,defaultOneOfIdx:a}),c.deprecated&&_jsx(BadgeStyle,{deprecated:!0,children:"Deprecated"}),c.description&&_jsx(StyledDescription,{source:c.description}),_jsx(ConstraintsView,{constraints:c.constraints}),_jsx(Schema,Object.assign({},r,{schema:c}))]})}export const OneOfSchema=memo(OneOfSchemaComponent);const StyledDescription=styled(Markdown)`
|
|
2
2
|
margin-top: var(--spacing-xs);
|
|
3
3
|
font-size: var(--font-size-base);
|
|
4
4
|
line-height: var(--line-height-base);
|
|
5
|
+
`,Wrapper=styled.div`
|
|
6
|
+
display: flex;
|
|
7
|
+
flex-direction: column;
|
|
8
|
+
align-items: flex-start;
|
|
5
9
|
`;
|
|
6
10
|
//# sourceMappingURL=OneOfSchema.js.map
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{jsx as _jsx,Fragment as _Fragment,jsxs as _jsxs}from"react/jsx-runtime";import{useState}from"react";import{Portal}from"@redocly/theme";import{SecurityButton}from"./SecurityButton";import{SecurityModal}from"./SecurityModal";export function Security({securities:t}){const[r,e]=useState(!1);return t.length?_jsxs(_Fragment,{children:[_jsx(SecurityButton,{securities:t,onClick:()=>e(!0)}),r&&_jsx(Portal,{mountId:"api-content",children:_jsx(SecurityModal,{securities:t,onClose:()=>e(!1)})})]}):null}
|
|
1
|
+
import{jsx as _jsx,Fragment as _Fragment,jsxs as _jsxs}from"react/jsx-runtime";import{useState}from"react";import{Portal,useModalScrollLock}from"@redocly/theme";import{SecurityButton}from"./SecurityButton";import{SecurityModal}from"./SecurityModal";export function Security({securities:t}){const[r,e]=useState(!1);return useModalScrollLock(r),t.length?_jsxs(_Fragment,{children:[_jsx(SecurityButton,{securities:t,onClick:()=>e(!0)}),r&&_jsx(Portal,{mountId:"api-content",children:_jsx(SecurityModal,{securities:t,onClose:()=>e(!1)})})]}):null}
|
|
2
2
|
//# sourceMappingURL=Security.js.map
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import{jsx as _jsx,jsxs as _jsxs}from"react/jsx-runtime";import{Fragment,
|
|
1
|
+
import{jsx as _jsx,jsxs as _jsxs}from"react/jsx-runtime";import{Fragment,useState,useRef}from"react";import styled from"styled-components";import{useOutsideClick,Typography,CloseIcon,SecurityIcon,Segmented,Button,useFocusTrap}from"@redocly/theme";import{SecurityFlow}from"./SecurityFlow";import{Divider}from"./Divider";export function SecurityModal({securities:e,onClose:t}){const[s,i]=useState(0),o=useRef(null),{schemes:r}=e[s]||{};useOutsideClick(o,t),useFocusTrap(o);const a=e.map((({schemes:e},t)=>({label:e.map((({id:e})=>e)).join(" and "),value:t})));return _jsx(StyledBackground,{children:_jsxs(Wrapper,{ref:o,tabIndex:0,children:[_jsx(Close,{onClick:t,"data-testid":"close",variant:"ghost",icon:_jsx(CloseIcon,{})}),_jsxs(Title,{children:[_jsx(SecurityIcon,{size:"24px"}),"Security"]}),_jsx(Segmented,{value:s,onChange:({value:e})=>i(e),options:a}),r.map(((t,s)=>_jsxs(Fragment,{children:[_jsx(SecurityFlow,Object.assign({},t,{securities:e})),s!==r.length-1&&_jsx(Divider,{label:"and"})]},t.id)))]})})}const Wrapper=styled.div`
|
|
2
2
|
background: var(--bg-color);
|
|
3
3
|
box-shadow: var(--bg-raised-shadow);
|
|
4
4
|
border-radius: var(--border-radius-lg);
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import{jsx as _jsx,jsxs as _jsxs,Fragment as _Fragment}from"react/jsx-runtime";import{useMemo,memo,useState}from"react";import{useNavigate}from"react-router-dom";import{Button,LayoutVariant}from"@redocly/theme";import styled from"styled-components";import{useAtomValue}from"jotai/index";import{HttpVerb,SamplesPanel}from"../common";import{encodeBackSlashes}from"../../utils";import{joinWithSeparator}from"../../services";import{layoutAtom}from"../../jotai/app";const MAX_OPERATIONS=8;export function OperationsNavigationComponent({items:e,routingBasePath:t}){const[o,a]=useState(!1),r=useNavigate(),n=useAtomValue(layoutAtom)===LayoutVariant.STACKED,{operations:i,webhooks:s,count:l}=useMemo((()=>{const t=e.filter((e=>"operation"===e.type)),a=o?t:t.slice(0,MAX_OPERATIONS),{operations:r,webhooks:n}=a.reduce(((e,t)=>t.isWebhook?Object.assign(Object.assign({},e),{webhooks:[...e.webhooks,t]}):Object.assign(Object.assign({},e),{operations:[...e.operations,t]})),{operations:[],webhooks:[]});return{operations:r,webhooks:n,count:!o&&t.length>MAX_OPERATIONS?t.length-MAX_OPERATIONS:0}}),[o,e]);if(!i.length&&!s.length)return null;const p=e=>{r(e)};return _jsxs(Wrapper,{isStacked:n,"data-
|
|
1
|
+
import{jsx as _jsx,jsxs as _jsxs,Fragment as _Fragment}from"react/jsx-runtime";import{useMemo,memo,useState}from"react";import{useNavigate}from"react-router-dom";import{Button,LayoutVariant}from"@redocly/theme";import styled from"styled-components";import{useAtomValue}from"jotai/index";import{HttpVerb,SamplesPanel}from"../common";import{encodeBackSlashes}from"../../utils";import{joinWithSeparator}from"../../services";import{layoutAtom}from"../../jotai/app";const MAX_OPERATIONS=8;export function OperationsNavigationComponent({items:e,routingBasePath:t}){const[o,a]=useState(!1),r=useNavigate(),n=useAtomValue(layoutAtom)===LayoutVariant.STACKED,{operations:i,webhooks:s,count:l}=useMemo((()=>{const t=e.filter((e=>"operation"===e.type)),a=o?t:t.slice(0,MAX_OPERATIONS),{operations:r,webhooks:n}=a.reduce(((e,t)=>t.isWebhook?Object.assign(Object.assign({},e),{webhooks:[...e.webhooks,t]}):Object.assign(Object.assign({},e),{operations:[...e.operations,t]})),{operations:[],webhooks:[]});return{operations:r,webhooks:n,count:!o&&t.length>MAX_OPERATIONS?t.length-MAX_OPERATIONS:0}}),[o,e]);if(!i.length&&!s.length)return null;const p=e=>{r(e)};return _jsxs(Wrapper,{isStacked:n,"data-testid":"operation-navigation-list",children:[i.length>0&&_jsxs(_Fragment,{children:[_jsx(Heading,{children:"Operations"}),i.map((({id:e,href:o,httpVerb:a,path:r})=>_jsx(Item,{variant:"outlined",size:"large",onClick:()=>p(joinWithSeparator(t,encodeBackSlashes(o))),children:_jsxs("span",{children:[_jsx(HttpVerb,{color:a,children:a}),_jsx(Path,{children:r})]})},e)))]}),s.length>0&&_jsxs(_Fragment,{children:[_jsx(Heading,{children:"Webhooks"}),s.map((({id:e,href:o,httpVerb:a,path:r})=>_jsx(Item,{variant:"outlined",size:"large",onClick:()=>p(joinWithSeparator(t,encodeBackSlashes(o))),children:_jsxs("span",{children:[_jsx(HttpVerb,{color:a,children:a}),_jsx(Path,{children:r})]})},e)))]}),!o&&Boolean(l)&&_jsxs(StyledButton,{variant:"link",size:"large","data-testid":"show-more-operations",fullWidth:!0,onClick:()=>a(!0),children:["Show ",l," more..."]})]})}export const OperationsNavigation=memo(OperationsNavigationComponent);const Wrapper=styled(SamplesPanel)`
|
|
2
2
|
display: flex;
|
|
3
3
|
flex-direction: column;
|
|
4
4
|
gap: var(--spacing-xxs);
|
|
@@ -10,8 +10,8 @@ import{jsx as _jsx}from"react/jsx-runtime";import styled from"styled-components"
|
|
|
10
10
|
align-items: center;
|
|
11
11
|
gap: var(--spacing-md);
|
|
12
12
|
padding: var(--spacing-xxs) var(--spacing-sm);
|
|
13
|
-
font-size: var(--font-size-
|
|
14
|
-
line-height: var(--line-height-
|
|
13
|
+
font-size: var(--font-size-base);
|
|
14
|
+
line-height: var(--line-height-base);
|
|
15
15
|
`,Title=styled.span`
|
|
16
16
|
margin-right: var(--spacing-unit);
|
|
17
17
|
cursor: default;
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{jsx as _jsx}from"react/jsx-runtime";import{useCallback}from"react";import{useAtom}from"jotai";import{Segmented,isUndefined}from"@redocly/theme";import{Dropdown}from"../Dropdown";import{operationStore}from"../../../jotai/operation";const LIMIT_FOR_SEGMENTED=5;function SchemaSelectionComponent({options:e,onChange:o,pointer:n,schema:t,defaultOneOfIdx:i}){var a,r;const[m
|
|
1
|
+
import{jsx as _jsx}from"react/jsx-runtime";import{useCallback}from"react";import{useAtom}from"jotai";import{Segmented,isUndefined}from"@redocly/theme";import{Dropdown}from"../Dropdown";import{operationStore}from"../../../jotai/operation";const LIMIT_FOR_SEGMENTED=5;function SchemaSelectionComponent({options:e,onChange:o,pointer:n,schema:t,defaultOneOfIdx:i}){var a,r;const[s,m]=useAtom(operationStore(n)),l=null===(r=e[null!==(a=s.activeOneOf[t.pointer])&&void 0!==a?a:i])||void 0===r?void 0:r.value,c=useCallback((({value:e})=>{void 0!==e&&(o?o(e):m((o=>{var n,i;return Object.assign(Object.assign({},o),{activeExampleName:(null===(i=null===(n=t.oneOf)||void 0===n?void 0:n[e])||void 0===i?void 0:i.title)||o.activeExampleName,activeOneOf:Object.assign(Object.assign({},o.activeOneOf),{[t.pointer]:e})})})))}),[o,t.oneOf,t.pointer,m]);return isUndefined(l)?null:e.length>LIMIT_FOR_SEGMENTED?_jsx(Dropdown,{options:e,value:l,onChange:c}):_jsx(Segmented,{value:l,onChange:c,options:e,size:"small","data-testid":"segmented-schema"})}export const SchemaSelection=SchemaSelectionComponent;
|
|
2
2
|
//# sourceMappingURL=SchemaSelection.js.map
|
package/lib-esm/hooks/index.d.ts
CHANGED
|
@@ -4,3 +4,4 @@ export { useActivateExample } from './useActivateExample';
|
|
|
4
4
|
export { useRouter } from './useRouter';
|
|
5
5
|
export { useContentItems } from './useContentItems';
|
|
6
6
|
export { useActiveWithFallback } from './useActiveWithFallback';
|
|
7
|
+
export { useUppercase2LowercaseRedirect } from './useUppercase2LowercaseRedirect';
|
package/lib-esm/hooks/index.js
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
export{useDimensions}from"./useDimensions";export{usePrevious}from"./usePrevious";export{useActivateExample}from"./useActivateExample";export{useRouter}from"./useRouter";export{useContentItems}from"./useContentItems";export{useActiveWithFallback}from"./useActiveWithFallback";
|
|
1
|
+
export{useDimensions}from"./useDimensions";export{usePrevious}from"./usePrevious";export{useActivateExample}from"./useActivateExample";export{useRouter}from"./useRouter";export{useContentItems}from"./useContentItems";export{useActiveWithFallback}from"./useActiveWithFallback";export{useUppercase2LowercaseRedirect}from"./useUppercase2LowercaseRedirect";
|
|
2
2
|
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export declare function useUppercase2LowercaseRedirect(): void;
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
import{useEffect}from"react";import{useLocation,useNavigate}from"react-router-dom";export function useUppercase2LowercaseRedirect(){const e=useNavigate(),a=useLocation();useEffect((()=>{a.pathname.toLowerCase()!==a.pathname&&e(a.pathname.toLowerCase(),{replace:!0})}),[a.pathname,e])}
|
|
2
|
+
//# sourceMappingURL=useUppercase2LowercaseRedirect.js.map
|
package/lib-esm/setupTests.js
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import*as Enzyme from"enzyme";import Adapter from"@cfaester/enzyme-adapter-react-18";import"raf/polyfill";import"@testing-library/jest-dom";import"jest-styled-components";import{
|
|
1
|
+
import*as Enzyme from"enzyme";import Adapter from"@cfaester/enzyme-adapter-react-18";import"raf/polyfill";import"@testing-library/jest-dom";import"jest-styled-components";import{randomUUID}from"node:crypto";Enzyme.configure({adapter:new Adapter}),window.crypto.randomUUID=randomUUID,global.structuredClone=r=>JSON.parse(JSON.stringify(r));
|
|
2
2
|
//# sourceMappingURL=setupTests.js.map
|