@redocly/openapi-docs 3.0.0-alpha.25 → 3.0.0-alpha.27

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 (70) hide show
  1. package/dist/console.redocly-openapi-docs.min.js +76 -76
  2. package/dist/oauth2-redirect.js +2 -2
  3. package/dist/redocly-openapi-docs.min.js +704 -687
  4. package/lib/components/ApiInfo/ApiInfo.js +3 -1
  5. package/lib/components/ContentItems/ContentItems.js +1 -1
  6. package/lib/components/Fields/DescriptionEnums.js +4 -1
  7. package/lib/components/Markdown/styled.js +2 -0
  8. package/lib/components/OperationItem/OperationItem.js +5 -2
  9. package/lib/components/Panel/ContentPanel.js +4 -0
  10. package/lib/components/PayloadSamples/MediaTypeSamples.js +1 -1
  11. package/lib/components/Responses/OperationResponseList.d.ts +8 -0
  12. package/lib/components/Responses/OperationResponseList.js +2 -0
  13. package/lib/components/Responses/Response.d.ts +1 -1
  14. package/lib/components/Responses/Response.js +1 -1
  15. package/lib/components/Responses/ResponsesList.js +1 -1
  16. package/lib/components/Responses/index.d.ts +1 -0
  17. package/lib/components/Responses/index.js +1 -1
  18. package/lib/components/Responses/types.d.ts +4 -0
  19. package/lib/components/Schema/Schema.js +1 -1
  20. package/lib/components/SecurityRequirement/PanelDescription.js +3 -1
  21. package/lib/components/Tabs/CollapsingTabs/CollapsingTabs.js +1 -1
  22. package/lib/components/common/panels.js +1 -0
  23. package/lib/components/rightPanel/RequestBody/Body.js +1 -1
  24. package/lib/components/rightPanel/RequestBody/RequestBody.js +1 -1
  25. package/lib/components/shared/NoSampleLabel.js +0 -3
  26. package/lib/models/mediaType.js +1 -1
  27. package/lib/models/operation.d.ts +2 -1
  28. package/lib/models/operation.js +1 -1
  29. package/lib/models/schema.js +1 -1
  30. package/lib/recoil/operation.d.ts +1 -0
  31. package/lib/recoil/operation.js +1 -1
  32. package/lib/services/OpenAPIParser.js +1 -1
  33. package/lib/services/menu/builder.js +1 -1
  34. package/lib/services/search/SearchStore.js +1 -1
  35. package/lib/types/open-api.d.ts +8 -1
  36. package/lib-esm/components/ApiInfo/ApiInfo.js +3 -1
  37. package/lib-esm/components/ContentItems/ContentItems.js +1 -1
  38. package/lib-esm/components/Fields/DescriptionEnums.js +4 -1
  39. package/lib-esm/components/Markdown/styled.js +2 -0
  40. package/lib-esm/components/OperationItem/OperationItem.js +5 -2
  41. package/lib-esm/components/Panel/ContentPanel.js +4 -0
  42. package/lib-esm/components/PayloadSamples/MediaTypeSamples.js +1 -1
  43. package/lib-esm/components/Responses/OperationResponseList.d.ts +8 -0
  44. package/lib-esm/components/Responses/OperationResponseList.js +2 -0
  45. package/lib-esm/components/Responses/Response.d.ts +1 -1
  46. package/lib-esm/components/Responses/Response.js +1 -1
  47. package/lib-esm/components/Responses/ResponsesList.js +1 -1
  48. package/lib-esm/components/Responses/index.d.ts +1 -0
  49. package/lib-esm/components/Responses/index.js +1 -1
  50. package/lib-esm/components/Responses/types.d.ts +4 -0
  51. package/lib-esm/components/Schema/Schema.js +1 -1
  52. package/lib-esm/components/SecurityRequirement/PanelDescription.js +3 -1
  53. package/lib-esm/components/SeeMore/SeeMore.js +1 -1
  54. package/lib-esm/components/Tabs/CollapsingTabs/CollapsingTabs.js +1 -1
  55. package/lib-esm/components/common/panels.js +1 -0
  56. package/lib-esm/components/rightPanel/RequestBody/Body.js +1 -1
  57. package/lib-esm/components/rightPanel/RequestBody/RequestBody.js +1 -1
  58. package/lib-esm/components/shared/NoSampleLabel.js +0 -3
  59. package/lib-esm/models/mediaType.js +1 -1
  60. package/lib-esm/models/operation.d.ts +2 -1
  61. package/lib-esm/models/operation.js +1 -1
  62. package/lib-esm/models/schema.js +1 -1
  63. package/lib-esm/recoil/operation.d.ts +1 -0
  64. package/lib-esm/recoil/operation.js +1 -1
  65. package/lib-esm/services/OpenAPIParser.js +1 -1
  66. package/lib-esm/services/menu/builder.js +1 -1
  67. package/lib-esm/services/search/SearchStore.js +1 -1
  68. package/lib-esm/types/open-api.d.ts +8 -1
  69. package/lib-esm/utils/highlight.js +1 -1
  70. package/package.json +2 -2
@@ -1,2 +1,4 @@
1
- import React,{useLayoutEffect,Fragment,useRef,useState}from"react";import{AUTH_TYPES}from"./constants";export function PanelDescription({securities:e,showSecuritySchemeType:t}){const n=useRef(null),[r,c]=useState("");return useLayoutEffect((()=>{var e;c((null===(e=n.current)||void 0===e?void 0:e.innerText)||"")}),[n]),React.createElement("span",{ref:n,title:r},e.map(((n,r)=>{let c="",a="";const s=n.schemes.length;return e.length>1&&s>1&&(c=0===r?"(":"",a=")"),r!==e.length-1&&(a+=" or "),React.createElement(Fragment,{key:n.schemes.map((({id:e})=>e)).join("")},c,s?n.schemes.map((e=>React.createElement("b",{key:e.id},t?`${AUTH_TYPES[e.type]||e.type}: `:null,e.id))).reduce(((e,t)=>[e," and ",t])):null,a)})))}
1
+ import React,{useLayoutEffect,Fragment,useRef,useState}from"react";import styled from"styled-components";import{AUTH_TYPES}from"./constants";export function PanelDescription({securities:e,showSecuritySchemeType:t}){const n=useRef(null),[s,r]=useState("");return useLayoutEffect((()=>{var e;r((null===(e=n.current)||void 0===e?void 0:e.innerText)||"")}),[n]),React.createElement(StyledDescription,{ref:n,title:s},e.map(((n,s)=>{let r="",c="";const l=n.schemes.length;return e.length>1&&l>1&&(r=0===s?"(":"",c=")"),s!==e.length-1&&(c+=" or "),React.createElement(Fragment,{key:n.schemes.map((({id:e})=>e)).join("")},r,l?n.schemes.map((e=>React.createElement(StyledRequirementElement,{key:e.id},t?`${AUTH_TYPES[e.type]||e.type}: `:null,e.id))).reduce(((e,t)=>[e," and ",t])):null,c)})))}const StyledDescription=styled.span`
2
+ font-size: var(--font-size-base);
3
+ `,StyledRequirementElement=styled.span``;
2
4
  //# sourceMappingURL=PanelDescription.js.map
@@ -1,4 +1,4 @@
1
- import styled from"styled-components";import React,{createRef,useLayoutEffect,useState}from"react";const TOLERANCE_PX=20;export function SeeMore({children:e,height:t}){const n=createRef(),[r,o]=React.useState(!1),[a,c]=useState(!1);useLayoutEffect((()=>{n.current&&n.current.clientHeight+TOLERANCE_PX<n.current.scrollHeight&&c(!0)}),[n]);return React.createElement(React.Fragment,null,React.createElement(Container,{ref:n,className:r?"":"container",style:{height:r?"auto":t}},e),React.createElement(ButtonContainer,{dimmed:!r},a&&React.createElement(ButtonLinkStyled,{onClick:()=>{o(!r)}},r?"See less":"See more")))}const Container=styled.div`
1
+ import styled from"styled-components";import React,{createRef,useLayoutEffect,useState}from"react";const TOLERANCE_PX=20;export function SeeMore({children:e,height:t}){const n=createRef(),[r,o]=React.useState(!1),[a,c]=useState(!1);useLayoutEffect((()=>{n.current&&n.current.clientHeight+20<n.current.scrollHeight&&c(!0)}),[n]);return React.createElement(React.Fragment,null,React.createElement(Container,{ref:n,className:r?"":"container",style:{height:r?"auto":t}},e),React.createElement(ButtonContainer,{dimmed:!r},a&&React.createElement(ButtonLinkStyled,{onClick:()=>{o(!r)}},r?"See less":"See more")))}const Container=styled.div`
2
2
  overflow-y: hidden;
3
3
  `,ButtonContainer=styled.div`
4
4
  text-align: center;
@@ -1,2 +1,2 @@
1
- var __rest=this&&this.__rest||function(e,t){var o={};for(var n in e)Object.prototype.hasOwnProperty.call(e,n)&&t.indexOf(n)<0&&(o[n]=e[n]);if(null!=e&&"function"==typeof Object.getOwnPropertySymbols){var r=0;for(n=Object.getOwnPropertySymbols(e);r<n.length;r++)t.indexOf(n[r])<0&&Object.prototype.propertyIsEnumerable.call(e,n[r])&&(o[n[r]]=e[n[r]])}return o};import React,{memo,useCallback,useEffect,useState}from"react";import{useRecoilValue}from"recoil";import{CollapsingTabsBase}from"./CollapsingTabsBase";import{operationStore}from"../../../recoil/operation";function getActiveIndexFromOperation(e,t,o){var n;if(!t)return-1;if("number"==typeof o&&o>0){return hasActiveExampleName(null===(n=e[o])||void 0===n?void 0:n.content,t)?o:getActiveIndexFromOperation(e,t)}return e.findIndex((({content:e})=>hasActiveExampleName(e,t)))}function hasActiveExampleName(e,t){return!!(null==e?void 0:e.mediaTypes.find((e=>Object.keys(e.examples||[]).includes(t||""))))}function CollapsingTabsComponent(e){var{children:t}=e,o=__rest(e,["children"]);const[n,r]=useState(0),{operation:{pointer:a,responses:i}}=o,s=useRecoilValue(operationStore(a)),l=null==s?void 0:s.activeExampleName;useEffect((()=>{const e=getActiveIndexFromOperation(i,l,n);e>-1&&r(e)}),[l]);const c=useCallback((e=>{n!==e&&r(e)}),[n]);return React.createElement(CollapsingTabsBase,Object.assign({},o,{activeIndex:n,onChange:c}),t)}export const CollapsingTabs=memo(CollapsingTabsComponent);
1
+ var __rest=this&&this.__rest||function(e,t){var n={};for(var o in e)Object.prototype.hasOwnProperty.call(e,o)&&t.indexOf(o)<0&&(n[o]=e[o]);if(null!=e&&"function"==typeof Object.getOwnPropertySymbols){var a=0;for(o=Object.getOwnPropertySymbols(e);a<o.length;a++)t.indexOf(o[a])<0&&Object.prototype.propertyIsEnumerable.call(e,o[a])&&(n[o[a]]=e[o[a]])}return n};import React,{memo,useCallback,useEffect,useState}from"react";import{useRecoilState}from"recoil";import{CollapsingTabsBase}from"./CollapsingTabsBase";import{operationStore}from"../../../recoil/operation";function getActiveIndexFromOperation(e,t,n){var o;if(!t)return-1;if("number"==typeof n&&n>0){return hasActiveExampleName(null===(o=e[n])||void 0===o?void 0:o.content,t)?n:getActiveIndexFromOperation(e,t)}return e.findIndex((({content:e})=>hasActiveExampleName(e,t)))}function hasActiveExampleName(e,t){return!!(null==e?void 0:e.mediaTypes.find((e=>Object.keys(e.examples||[]).includes(t||""))))}function CollapsingTabsComponent(e){var{children:t}=e,n=__rest(e,["children"]);const{operation:{pointer:o,responses:a},tabs:i}=n,[r,s]=useRecoilState(operationStore(o)),[l,c]=useState(0);function p(e){s((t=>Object.assign(Object.assign({},t),{activeResponseTab:e})))}useEffect((()=>{const e=i.findIndex((e=>e.title===(null==r?void 0:r.activeResponseTab)));c(e)}),[i,null==r?void 0:r.activeResponseTab,c]);const m=null==r?void 0:r.activeExampleName;useEffect((()=>{const e=getActiveIndexFromOperation(a,m,l);e>-1&&(c(e),p(i[e].title))}),[m]);const u=useCallback((e=>{l!==e&&(c(e),p(i[e].title))}),[l]);return React.createElement(CollapsingTabsBase,Object.assign({},n,{activeIndex:l,onChange:u}),t)}export const CollapsingTabs=memo(CollapsingTabsComponent);
2
2
  //# sourceMappingURL=CollapsingTabs.js.map
@@ -52,6 +52,7 @@ import{H2}from"@redocly/theme";import styled,{css}from"styled-components";import
52
52
  `;export const SamplesPanel=styled.div`
53
53
  color: var(--panel-samples-text-color);
54
54
  width: 100%;
55
+ height: fit-content;
55
56
  padding-top: var(--panel-gap-vertical);
56
57
  padding-bottom: var(--panel-gap-vertical);
57
58
  padding-left: var(--panel-gap-horizontal);
@@ -1,2 +1,2 @@
1
- import React,{memo,useCallback,useEffect}from"react";import{isRootFileUpload}from"../../common/FileUpload/helper";import{MediaTypes}from"../../../constants";import{ExampleSwitch,useExampleKey}from"../../Samples";import{fromSessionStorage,toSessionStorage}from"../../../utils";import{encodeSample,getStorageExampleKey}from"../utils";import{RequestBodyForm}from"../RequestBodyForm";import{CodemirrorInput}from"../CodemirrorInput";import{useActivateExample}from"../../../hooks";function BodyComponent({mediaType:e,mediaContent:o,properties:t,id:a,resolvedBody:m,formApi:l,getActiveSample:r,validate:n}){const i=useActivateExample(o),p=e.examples||{},s=Object.keys(p),c=e.schema,d=isRootFileUpload(c||{},e.name)||e.name===MediaTypes.MULTIPART||e.name===MediaTypes.URL_ENCODED,{exampleKey:u}=useExampleKey(e.operation,p),y=fromSessionStorage(getStorageExampleKey(a,e.name,u,p))||encodeSample(p[u],t);useEffect((()=>{l.setValue("body",y)}),[y,l]);const f=useCallback(((e="",o="",t=[])=>m=>{toSessionStorage(getStorageExampleKey(a,e,o,t),m)}),[a]),g=useCallback((e=>{i&&i(e),l.setValue("body",r(e))}),[l,r,i]),E=useCallback(((e,o)=>{l.setValue(`body.${e}`,o)}),[l]);return React.createElement(React.Fragment,null,s.length&&1!==s.length&&React.createElement(ExampleSwitch,{examples:p,onChange:g,exampleKey:u,panel:"try-it"})||null,d?React.createElement(RequestBodyForm,{mediaType:e,formApi:l,onChange:E}):React.createElement(CodemirrorInput,{id:"body"+a,field:"body",initialValue:y,schema:((null==m?void 0:m.content[e.name])||{}).schema,mode:e.name,validate:n,onChange:f(e.name,u,p)}))}export const Body=memo(BodyComponent);
1
+ import React,{memo,useCallback}from"react";import{isRootFileUpload}from"../../common/FileUpload/helper";import{MediaTypes}from"../../../constants";import{ExampleSwitch,useExampleKey}from"../../Samples";import{fromSessionStorage,toSessionStorage}from"../../../utils";import{encodeSample,getStorageExampleKey}from"../utils";import{RequestBodyForm}from"../RequestBodyForm";import{CodemirrorInput}from"../CodemirrorInput";import{useActivateExample}from"../../../hooks";function BodyComponent({mediaType:e,mediaContent:o,properties:t,id:a,resolvedBody:m,formApi:r,getActiveSample:l,validate:n}){const i=useActivateExample(o),p=e.examples||{},s=Object.keys(p),d=e.schema,c=isRootFileUpload(d||{},e.name)||e.name===MediaTypes.MULTIPART||e.name===MediaTypes.URL_ENCODED,{exampleKey:y}=useExampleKey(e.operation,p),u=fromSessionStorage(getStorageExampleKey(a,e.name,y,p))||encodeSample(p[y],t),g=useCallback(((e="",o="",t=[])=>m=>{toSessionStorage(getStorageExampleKey(a,e,o,t),m)}),[a]),S=useCallback((e=>{i&&i(e),r.setValue("body",l(e))}),[r,l,i]),f=useCallback(((e,o)=>{r.setValue(`body.${e}`,o)}),[r]);return React.createElement(React.Fragment,null,s.length&&1!==s.length&&React.createElement(ExampleSwitch,{examples:p,onChange:S,exampleKey:y,panel:"try-it"})||null,c?React.createElement(RequestBodyForm,{mediaType:e,formApi:r,onChange:f}):React.createElement(CodemirrorInput,{id:"body"+a,field:"body",initialValue:u,schema:((null==m?void 0:m.content[e.name])||{}).schema,mode:e.name,validate:n,onChange:g(e.name,y,p)}))}export const Body=memo(BodyComponent);
2
2
  //# sourceMappingURL=Body.js.map
@@ -1,2 +1,2 @@
1
- import React,{memo,useCallback,useEffect}from"react";import merge from"deepmerge";import{useRecoilValue}from"recoil";import{DropdownOrLabel}from"../../DropdownOrLabel";import{MediaTypesSwitch}from"../../MediaTypeSwitch";import{arrayMergeStrategy}from"../../../services/utils";import{Dropdown}from"../../common";import{RequestMimeLabel}from"../RequestMimeLabel";import{getStorageExampleKey}from"../utils";import{fromSessionStorage}from"../../../utils";import{Body}from"./Body";import{getActiveMediaType}from"../../../models";import{activeMimeNameSelector}from"../../../recoil/app";import{operationStore}from"../../../recoil/operation";function RequestBodyComponent({body:e,formApi:o,resolvedBody:t,properties:r,id:a,validate:i,pointer:m}){const l=e.content,n=useRecoilValue(activeMimeNameSelector),{examples:p,name:s}=l&&getActiveMediaType(l,n)||{},c=useCallback((e=>{if(!l||!l.hasSample)return"";if(!(null==p?void 0:p[e]))return"";const o=s&&fromSessionStorage(getStorageExampleKey(a,s,e,p)),t=o?JSON.parse(o):null==p?void 0:p[e].value,i=r?merge(t,r,{arrayMerge:arrayMergeStrategy}):t;return JSON.stringify(i,null,2)}),[s,p,a,l,r]),{activeExampleName:d}=useRecoilValue(operationStore(m));useEffect((()=>{if(s){const e=getStorageExampleKey(a,s,d,p);o.setValue("body",fromSessionStorage(e)||c(d||""))}else o.setValue("body",JSON.stringify(r||{},null,2))}),[p,d,s,o,c,a,r]);return React.createElement(React.Fragment,null,React.createElement(MediaTypesSwitch,{content:e.content,renderDropdown:e=>React.createElement(DropdownOrLabel,Object.assign({},e,{variant:"dark",fullWidth:!0,Label:RequestMimeLabel,Dropdown:Dropdown}))},(e=>React.createElement(Body,{mediaType:e,mediaContent:l,resolvedBody:t,id:a,properties:r,getActiveSample:c,formApi:o,validate:i}))))}export const RequestBody=memo(RequestBodyComponent);
1
+ import React,{memo,useCallback,useEffect}from"react";import{useRecoilValue}from"recoil";import{DropdownOrLabel}from"../../DropdownOrLabel";import{MediaTypesSwitch}from"../../MediaTypeSwitch";import{Dropdown}from"../../common";import{RequestMimeLabel}from"../RequestMimeLabel";import{encodeSample,getStorageExampleKey}from"../utils";import{fromSessionStorage}from"../../../utils";import{Body}from"./Body";import{getActiveMediaType}from"../../../models";import{activeMimeNameSelector}from"../../../recoil/app";import{operationStore}from"../../../recoil/operation";function RequestBodyComponent({body:{content:e},formApi:o,resolvedBody:t,properties:r,id:a,validate:i,pointer:m}){const l=useRecoilValue(activeMimeNameSelector),{examples:n,name:p}=e&&getActiveMediaType(e,l)||{},c=useCallback((o=>{if(!e||!e.hasSample)return"";if(!(null==n?void 0:n[o]))return"";const t=p&&fromSessionStorage(getStorageExampleKey(a,p,o,n)),i=t?JSON.parse(t):null==n?void 0:n[o];return encodeSample(i,r)}),[p,n,a,e,r]),{activeExampleName:s}=useRecoilValue(operationStore(m));useEffect((()=>{if(p){const e=getStorageExampleKey(a,p,s,n);o.setValue("body",fromSessionStorage(e)||c(s||""))}else o.setValue("body",JSON.stringify(r||{},null,2))}),[n,s,p,o,c,a,r]);return React.createElement(React.Fragment,null,React.createElement(MediaTypesSwitch,{content:e,renderDropdown:e=>React.createElement(DropdownOrLabel,Object.assign({},e,{variant:"dark",fullWidth:!0,Label:RequestMimeLabel,Dropdown:Dropdown}))},(m=>React.createElement(Body,{mediaType:m,mediaContent:e,resolvedBody:t,id:a,properties:r,getActiveSample:c,formApi:o,validate:i}))))}export const RequestBody=memo(RequestBodyComponent);
2
2
  //# sourceMappingURL=RequestBody.js.map
@@ -1,8 +1,5 @@
1
1
  import styled from"styled-components";export const NoSampleLabel=styled.div`
2
- font-size: 12px;
3
- min-height: 100px;
4
2
  padding: 20px 0;
5
- color: var(--color-error-500);
6
3
  font-family: var(--code-font-family);
7
4
  `;export const WarnMessage=styled.div`
8
5
  font-size: 12px;
@@ -1,2 +1,2 @@
1
- import*as Sampler from"openapi-sampler";import{getSchema}from"./schema";import{isFormUrlEncoded,isJsonLike,JsonPointer,mapValues}from"../utils";import{getExamples}from"./example";function generateExamples({parser:e,info:{encoding:a,schema:o},schema:n,mime:i,isRequestType:s,onlyRequiredInSamples:r,generatedPayloadSamplesMaxDepth:m}){const p={skipReadOnly:s,skipWriteOnly:!s,skipNonRequired:s&&r,maxSampleDepth:m};let t={};if(n&&n.oneOf)for(const o of n.oneOf){const s=Sampler.sample(o.rawSchema,p,e.definition);n.discriminatorProp&&"object"==typeof s&&s&&(s[n.discriminatorProp]=o.title),t[o.title]=getExamples({parser:e,infoOrRef:{value:s},mime:i,encoding:a})}else n&&(t={default:getExamples({parser:e,infoOrRef:{value:Sampler.sample(o,p,e.definition)},mime:i,encoding:a})});return t}export function getMediaType(e,a,o,n,i,{operation:s,type:r,response:m,absolutePointer:p=""}){let t;const l=n.schema&&getSchema({parser:e,schemaOrRef:n.schema,pointer:"",absolutePointer:JsonPointer.join(p,["content",a,"schema"]),options:i,deps:{operation:s,type:r,response:m}}),{onlyRequiredInSamples:d,generatedPayloadSamplesMaxDepth:c}=i,{encoding:f,examples:u,example:g}=n;return void 0!==u?t=mapValues(u,(o=>getExamples({parser:e,infoOrRef:o,mime:a,encoding:f}))):void 0!==g?t={default:getExamples({parser:e,infoOrRef:{value:e.deref(g).resolved},mime:a,encoding:f})}:(isJsonLike(a)||isFormUrlEncoded(a))&&(t=generateExamples({parser:e,info:n,schema:l,mime:a,isRequestType:o,onlyRequiredInSamples:d,generatedPayloadSamplesMaxDepth:c})),{examples:t,schema:l,name:a,isRequestType:o,onlyRequiredInSamples:d,operation:s}}
1
+ import*as Sampler from"openapi-sampler";import{getSchema}from"./schema";import{isFormUrlEncoded,isJsonLike,JsonPointer,mapValues}from"../utils";import{getExamples}from"./example";function generateExamples({parser:e,info:{encoding:a,schema:o},schema:n,mime:i,isRequestType:r,onlyRequiredInSamples:s,generatedPayloadSamplesMaxDepth:m}){const p={skipReadOnly:r,skipWriteOnly:!r,skipNonRequired:r&&s,maxSampleDepth:m};let t={};if(n&&n.oneOf)for(const o of n.oneOf){const r=Sampler.sample(o.rawSchema,p,e.definition);n.discriminatorProp&&"object"==typeof r&&r&&(r[n.discriminatorProp]=o.title),t[o.title]=getExamples({parser:e,infoOrRef:{value:r},mime:i,encoding:a})}else t=n?{default:getExamples({parser:e,infoOrRef:{value:Sampler.sample(o,p,e.definition)},mime:i,encoding:a})}:{default:{value:null,rawValue:"null"}};return t}export function getMediaType(e,a,o,n,i,{operation:r,type:s,response:m,absolutePointer:p=""}){let t;const l=n.schema&&getSchema({parser:e,schemaOrRef:n.schema,pointer:"",absolutePointer:JsonPointer.join(p,["content",a,"schema"]),options:i,deps:{operation:r,type:s,response:m}}),{onlyRequiredInSamples:d,generatedPayloadSamplesMaxDepth:c}=i,{encoding:f,examples:u,example:g}=n;return void 0!==u?t=mapValues(u,(o=>getExamples({parser:e,infoOrRef:o,mime:a,encoding:f}))):void 0!==g?t={default:getExamples({parser:e,infoOrRef:{value:e.deref(g).resolved},mime:a,encoding:f})}:(isJsonLike(a)||isFormUrlEncoded(a))&&(t=generateExamples({parser:e,info:n,schema:l,mime:a,isRequestType:o,onlyRequiredInSamples:d,generatedPayloadSamplesMaxDepth:c})),{examples:t,schema:l,name:a,isRequestType:o,onlyRequiredInSamples:d,operation:r}}
2
2
  //# sourceMappingURL=mediaType.js.map
@@ -1,5 +1,5 @@
1
1
  import type { ExtendedOpenAPIOperation, Unstable_ExternalCodeSample, OpenAPIParser, Options } from '../services';
2
- import type { OpenAPIXCodeSample } from '../types';
2
+ import type { OpenAPIServer, OpenAPIXCodeSample } from '../types';
3
3
  import type { MediaContentModel, OperationModel, GroupModel } from './types';
4
4
  export interface Sample {
5
5
  lang: string;
@@ -16,3 +16,4 @@ export interface Callback {
16
16
  }
17
17
  export declare function isPayloadSample(sample: XPayloadSample | OpenAPIXCodeSample | Unstable_ExternalCodeSample): sample is XPayloadSample;
18
18
  export declare function getOperation(parser: OpenAPIParser, operationDefinition: ExtendedOpenAPIOperation, parent: GroupModel | undefined, options: Options, href: string, callback?: Callback): OperationModel;
19
+ export declare function mergeInMockServer(servers: OpenAPIServer[], mockServerOptions: Options['mockServer']): OpenAPIServer[];
@@ -1,2 +1,2 @@
1
- import{extractExtensions,getOperationId,getOperationName,getStatusCodeType,getValueFromMdParsedExtension,isStatusCode,JsonPointer,mergeParams,normalizeServers,sortByField,sortByRequired}from"../utils";import{getInitialServerWithVariables}from"../components/rightPanel/utils";import{getCallback}from"./callback";import{getField}from"./field";import{getRequestBody}from"./request";import{getSecurityRequirement}from"./security";import{getResponse}from"./response";export function isPayloadSample(e){return"payload"===e.lang&&"requestBodyContent"in e}let isCodeSamplesWarningPrinted=!1;export function getOperation(e,r,t,o,i,s){var a,n,l;const p=r.isWebhook,d={operationDefinition:r,parent:t,pointer:r.pointer,description:getValueFromMdParsedExtension(r,"description"),externalDocs:r.externalDocs,deprecated:!!r.deprecated,httpVerb:r.httpVerb,operationId:r.operationId,path:r.pathName,isWebhook:p,isCallback:Boolean(null==s?void 0:s.isCallback),isEvent:(null==s?void 0:s.isCallback)||p,name:getOperationName(r),defaultExampleName:r.defaultSampleName,type:"operation",callbackId:null==s?void 0:s.id,href:i,get callbacks(){return Object.keys(r.callbacks||[]).map((s=>{var a;return getCallback(e,s,null===(a=r.callbacks)||void 0===a?void 0:a[s],d.pointer,o,i,t)}))},get responses(){let t=!1;return Object.keys(r.responses||[]).filter((e=>"default"===e||("success"===getStatusCodeType(e)&&(t=!0),isStatusCode(e)))).map((i=>getResponse({parser:e,code:i,defaultAsError:t,infoOrRef:r.responses[i],options:o,isEvent:d.isEvent,operation:d})))},get parameters(){let t=mergeParams(e,r.pathParameters,r.parameters,{pathPointer:JsonPointer.dirName(d.pointer),operationPointer:d.pointer}).map((({paramOrRef:r,pointer:t})=>getField(e,r,t,o,{operation:d,type:"request"})));return o.sortPropsAlphabetically&&(t=sortByField(t,"name")),o.requiredPropsFirst&&(t=sortByRequired(t)),t}};(null==s?void 0:s.isCallback)?(d.security=(r.security||[]).map((r=>getSecurityRequirement({requirement:r,parser:e}))),d.servers=normalizeServers("",r.servers||r.pathServers||[])):(d.id=getOperationId(r,t),d.security=(r.security||e.definition.security||[]).map((r=>getSecurityRequirement({requirement:r,parser:e}))),d.servers=normalizeServers(e.definitionUrl,mergeInMockServer(r.servers||r.pathServers||e.definition.servers||[],o.mockServer))),o.showExtensions&&(d.extensions=extractExtensions(r,o.showExtensions)),d.activeServer=getInitialServerWithVariables(d.servers),d.requestBody=r.requestBody&&getRequestBody({parser:e,infoOrRef:r.requestBody,options:o,operation:d,isEvent:d.isEvent});const m=null===(n=null===(a=d.requestBody)||void 0===a?void 0:a.content)||void 0===n?void 0:n.mediaTypes,[u]=m||[],[c]=Object.keys((null==u?void 0:u.examples)||[]);d.activeExampleName=!1===r.defaultSampleName?void 0:r.defaultSampleName||c;const v=null===(l=d.requestBody)||void 0===l?void 0:l.content;return d.payload=(null==v?void 0:v.hasSample)?{lang:"payload",label:"Payload",source:"",requestBodyContent:v}:void 0,d.definitionSamples=r["x-codeSamples"]||r["x-code-samples"]||[],r["x-code-samples"]&&!isCodeSamplesWarningPrinted&&(isCodeSamplesWarningPrinted=!0,console.warn('"x-code-samples" is deprecated. Use "x-codeSamples" instead')),d.hasSamples=(null==v?void 0:v.hasSample)||d.definitionSamples.length>0,d.hideTryItPanel=!0===r["x-hideTryItPanel"],d}function mergeInMockServer(e,r){if(!r)return e;const t={url:r.url,description:r.description};switch(r.position){case"first":return[t,...e];case"last":return[...e,t];case"replace":return[t];default:return e}}
1
+ import{extractExtensions,getOperationId,getOperationName,getStatusCodeType,getValueFromMdParsedExtension,isStatusCode,JsonPointer,mergeParams,normalizeServers,sortByField,sortByRequired}from"../utils";import{getInitialServerWithVariables}from"../components/rightPanel/utils";import{getCallback}from"./callback";import{getField}from"./field";import{getRequestBody}from"./request";import{getSecurityRequirement}from"./security";import{getResponse}from"./response";export function isPayloadSample(e){return"payload"===e.lang&&"requestBodyContent"in e}let isCodeSamplesWarningPrinted=!1;export function getOperation(e,r,t,o,i,s){var a,n,l;const p=r.isWebhook,d={operationDefinition:r,parent:t,pointer:r.pointer,description:getValueFromMdParsedExtension(r,"description"),externalDocs:r.externalDocs,deprecated:!!r.deprecated,httpVerb:r.httpVerb,operationId:r.operationId,path:r.pathName,isWebhook:p,isCallback:Boolean(null==s?void 0:s.isCallback),isEvent:(null==s?void 0:s.isCallback)||p,name:getOperationName(r),defaultExampleName:r.defaultSampleName,type:"operation",callbackId:null==s?void 0:s.id,href:i,get callbacks(){return Object.keys(r.callbacks||[]).map((s=>{var a;return getCallback(e,s,null===(a=r.callbacks)||void 0===a?void 0:a[s],d.pointer,o,i,t)}))},get responses(){let t=!1;return Object.keys(r.responses||[]).filter((e=>"default"===e||("success"===getStatusCodeType(e)&&(t=!0),isStatusCode(e)))).map((i=>getResponse({parser:e,code:i,defaultAsError:t,infoOrRef:r.responses[i],options:o,isEvent:d.isEvent,operation:d})))},get parameters(){let t=mergeParams(e,r.pathParameters,r.parameters,{pathPointer:JsonPointer.dirName(d.pointer),operationPointer:d.pointer}).map((({paramOrRef:r,pointer:t})=>getField(e,r,t,o,{operation:d,type:"request"})));return o.sortPropsAlphabetically&&(t=sortByField(t,"name")),o.requiredPropsFirst&&(t=sortByRequired(t)),t}};(null==s?void 0:s.isCallback)?(d.security=(r.security||[]).map((r=>getSecurityRequirement({requirement:r,parser:e}))),d.servers=normalizeServers("",r.servers||r.pathServers||[])):(d.id=getOperationId(r,t),d.security=(r.security||e.definition.security||[]).map((r=>getSecurityRequirement({requirement:r,parser:e}))),d.servers=normalizeServers(e.definitionUrl,mergeInMockServer(r.servers||r.pathServers||e.definition.servers||[],o.mockServer))),o.showExtensions&&(d.extensions=extractExtensions(r,o.showExtensions)),d.activeServer=getInitialServerWithVariables(d.servers),d.requestBody=r.requestBody&&getRequestBody({parser:e,infoOrRef:r.requestBody,options:o,operation:d,isEvent:d.isEvent});const m=null===(n=null===(a=d.requestBody)||void 0===a?void 0:a.content)||void 0===n?void 0:n.mediaTypes,[u]=m||[],[c]=Object.keys((null==u?void 0:u.examples)||[]);d.activeExampleName=!1===r.defaultSampleName?void 0:r.defaultSampleName||c;const v=null===(l=d.requestBody)||void 0===l?void 0:l.content;return d.payload=(null==v?void 0:v.hasSample)?{lang:"payload",label:"Payload",source:"",requestBodyContent:v}:void 0,d.definitionSamples=r["x-codeSamples"]||r["x-code-samples"]||[],r["x-code-samples"]&&!isCodeSamplesWarningPrinted&&(isCodeSamplesWarningPrinted=!0,console.warn('"x-code-samples" is deprecated. Use "x-codeSamples" instead')),d.hasSamples=(null==v?void 0:v.hasSample)||d.definitionSamples.length>0,d.hideTryItPanel=!0===r["x-hideTryItPanel"],d}export function mergeInMockServer(e,r){if(!r)return e;const t={url:r.url,description:r.description};switch(r.position){case"first":return[t,...e];case"last":return[...e,t];case"replace":return[t];default:return e}}
2
2
  //# sourceMappingURL=operation.js.map
@@ -1,2 +1,2 @@
1
- var __rest=this&&this.__rest||function(e,t){var i={};for(var n in e)Object.prototype.hasOwnProperty.call(e,n)&&t.indexOf(n)<0&&(i[n]=e[n]);if(null!=e&&"function"==typeof Object.getOwnPropertySymbols){var r=0;for(n=Object.getOwnPropertySymbols(e);r<n.length;r++)t.indexOf(n[r])<0&&Object.prototype.propertyIsEnumerable.call(e,n[r])&&(i[n[r]]=e[n[r]])}return i};import{pushRef}from"../services/OpenAPIParser";import{detectType,extractExtensions,getValueFromMdParsedExtension,humanizeConstraints,isNamedDefinition,isObject,isPrimitiveType,JsonPointer,pluralizeType,sortByField,sortByRequired}from"../utils";import{l}from"../services";import{getField}from"./field";export function getSchema({parser:e,schemaOrRef:t,pointer:i,options:n,isChild:r=!1,baseRefsStack:s=[],deps:o,absolutePointer:a}){var p,d,m,c,f,u,y,O;const{resolved:h,refsStack:b}=e.deref(t,s,!0),v=t.$ref||i||"",P=pushRef(b,v),g=e.mergeAllOf(h,v,P,t.$ref||a),x=g.type||detectType(g),F={parser:e,options:n,deps:o,schemaOrRef:t,isChild:r,typePrefix:"",pointer:v,absolutePointer:a,refsStack:P,rawSchema:h,type:x,isCircular:!!g["x-circular-ref"],title:g.title||isNamedDefinition(v)&&JsonPointer.baseName(v)||"",description:getValueFromMdParsedExtension(g,"description")||"",format:g.format,enum:g.enum||[],example:g.example,deprecated:!!g.deprecated,pattern:g.pattern,externalDocs:g.externalDocs,displayFormat:g.format,isPrimitive:isPrimitiveType(g,x),constraints:humanizeConstraints(g),default:g.default,readOnly:!!g.readOnly,writeOnly:!!g.writeOnly,const:g.const||"",contentEncoding:g.contentEncoding,contentMediaType:g.contentMediaType,minItems:g.minItems,maxItems:g.maxItems,nullable:g.nullable||g["x-nullable"],schema:g,displayType:"",items:void 0,extensions:void 0,oneOfType:"",discriminatorProp:void 0,oneOf:void 0,"x-enumDescriptions":getValueFromMdParsedExtension(g,"x-enumDescriptions"),get fields(){if(hasType(F,"object")||hasType(F,"array")&&(Array.isArray(g.items)||Array.isArray(g.prefixItems)))return buildFields(e,g,v,n,P,o)}};if((g.nullable||g["x-nullable"])&&(Array.isArray(F.type)&&!F.type.some((e=>null===e||"null"===e))?F.type=[...F.type,"null"]:Array.isArray(F.type)||null===F.type&&"null"===F.type||(F.type=[F.type,"null"])),F.displayType=Array.isArray(F.type)?F.type.map((e=>null===e?"null":e)).join(" or "):F.type,F.isCircular)return F;if(g.if&&g.then||g.if&&g.else){const{oneOf:t,oneOfType:i}=initConditionalOperators({schema:g,parser:e,pointer:v,options:n,deps:o,refsStack:P});return F.oneOf=t,F.oneOfType=i,F}if(!r&&void 0!==getDiscriminator(g)){const{oneOf:t,discriminatorProp:i}=initDiscriminator({schema:g,parser:e,deps:o,mergedSchema:g,options:n,pointer:v,refsStack:P});return F.oneOf=t,F.discriminatorProp=i,F}if(r&&Array.isArray(g.oneOf)&&g.oneOf.find((e=>e.$ref===v))&&delete g.oneOf,void 0!==g.oneOf){const{oneOf:t,displayType:i}=initOneOf({schemaOneOf:g.oneOf,parser:e,deps:o,options:n,pointer:v,refsStack:P,schema:g});return F.oneOfType="One of",t&&(F.oneOf=t),F.displayType=i,void 0!==g.anyOf&&console.warn(`oneOf and anyOf are not supported on the same level. Skipping anyOf at ${v}`),F}if(void 0!==g.anyOf){const{oneOf:t,displayType:i}=initOneOf({schemaOneOf:g.anyOf,parser:e,deps:o,options:n,pointer:v,refsStack:P,schema:g});return t&&(F.oneOf=t),F.displayType=i,F.oneOfType="Any of",F}if(hasType(F,"array")&&(g.items&&(F.items=getSchema({parser:e,schemaOrRef:g.items,pointer:v+"/items",options:n,baseRefsStack:P,deps:o,absolutePointer:JsonPointer.join(g.absolutePointer||"",["items"])})),F.displayType=g.prefixItems||Array.isArray(g.items)?"items":pluralizeType((null===(p=F.items)||void 0===p?void 0:p.displayType)||F.displayType),F.displayFormat=(null===(d=F.items)||void 0===d?void 0:d.format)||"",F.typePrefix=(null===(m=F.items)||void 0===m?void 0:m.typePrefix)||""+l("arrayOf"),F.title=F.title||(null===(c=F.items)||void 0===c?void 0:c.title)||"",F.isPrimitive=void 0!==(null===(f=F.items)||void 0===f?void 0:f.isPrimitive)?null===(u=F.items)||void 0===u?void 0:u.isPrimitive:F.isPrimitive,void 0===F.example&&void 0!==(null===(y=F.items)||void 0===y?void 0:y.example)&&(F.example=[F.items.example]),(null===(O=F.items)||void 0===O?void 0:O.isPrimitive)&&(F.enum=F.items.enum,F["x-enumDescriptions"]=getValueFromMdParsedExtension(F.items,"x-enumDescriptions")),Array.isArray(F.type))){const e=F.type.filter((e=>"array"!==e));e.length&&(F.displayType+=` or ${e.join(" or ")}`)}return F.enum.length&&n.sortEnumValuesAlphabetically&&F.enum.sort(),n.showExtensions&&(F.extensions=extractExtensions(g,n.showExtensions)),F}function initDiscriminator({schema:e,parser:t,pointer:i,options:n,refsStack:r,deps:s,mergedSchema:o}){const a=getDiscriminator(e),l=null==a?void 0:a.propertyName,p=t.findDerived([...o["x-parentRefs"]||[],i]);if(e.oneOf)for(const t of e.oneOf){if(void 0===t.$ref)continue;const e=JsonPointer.baseName(t.$ref);p[t.$ref]=e}const d=(null==a?void 0:a.mapping)||{};let m=(null==a?void 0:a["x-explicitMappingOnly"])||!1;0===Object.keys(d).length&&(m=!1);const c={};for(const e in d){const t=d[e];Array.isArray(c[t])?c[t].push(e):c[t]=[e]}const f=m?Object.assign({},c):Object.assign(Object.assign({},p),c);let u=[];for(const e of Object.keys(f)){const t=f[e];if(Array.isArray(t))for(const i of t)u.push({$ref:e,name:i});else u.push({$ref:e,name:t})}const y=Object.keys(d);0!==y.length&&(u=u.sort(((e,t)=>{const i=y.indexOf(e.name),n=y.indexOf(t.name);return i<0&&n<0?e.name.localeCompare(t.name):i<0?1:n<0?-1:i-n})));return{oneOf:u.map((({$ref:e,name:i},a)=>{const l=getSchema({parser:t,schemaOrRef:{$ref:e},pointer:e,options:n,isChild:!0,baseRefsStack:r.slice(0,-1),deps:Object.assign(Object.assign({},s),{parentFieldFullPath:s.parentFieldFullPath?s.parentFieldFullPath+"/"+a:a.toString()}),absolutePointer:o.absolutePointer});return l.title=i,l})),discriminatorProp:l}}function initOneOf({schemaOneOf:e,parser:t,refsStack:i,pointer:n,schema:r,options:s,deps:o}){const a=e.map(((e,a)=>{const{resolved:l,refsStack:p}=t.deref(e,i,!0),d=t.mergeAllOf(l,n+"/oneOf/"+a,p),m=isNamedDefinition(e.$ref)&&!d.title?JsonPointer.baseName(e.$ref):`${d.title||""}${d.const&&JSON.stringify(d.const)||""}`;return getSchema({parser:t,schemaOrRef:Object.assign(Object.assign({},d),{title:m,allOf:[Object.assign(Object.assign({},r),{oneOf:void 0,anyOf:void 0})],discriminator:l.allOf?void 0:d.discriminator}),pointer:e.$ref||n+"/oneOf/"+a,options:s,baseRefsStack:p,deps:Object.assign(Object.assign({},o),{parentFieldFullPath:o.parentFieldFullPath?o.parentFieldFullPath+"/"+a:a.toString()})})}));let l;if(s.simpleOneOfTypeLabel){l=collectUniqueOneOfTypesDeep(r).join(" or ")}else l=a.map((e=>{let t=e.typePrefix+(e.title?`${e.title} (${e.displayType})`:e.displayType);return t.indexOf(" or ")>-1&&(t=`(${t})`),t})).join(" or ");return{oneOf:a,displayType:l}}function initConditionalOperators({schema:e,parser:t,pointer:i,options:n,refsStack:r,deps:s}){const{if:o,else:a={},then:l={}}=e,p=__rest(e,["if","else","then"]);return{oneOf:[{allOf:[p,l,o],title:o&&o["x-displayName"]||(null==o?void 0:o.title)||"case 1"},{allOf:[p,a],title:a&&a["x-displayName"]||(null==a?void 0:a.title)||"case 2"}].map(((e,o)=>getSchema({parser:t,schemaOrRef:Object.assign({},e),pointer:i+"/oneOf/"+o,options:n,baseRefsStack:r,deps:Object.assign(Object.assign({},s),{parentFieldFullPath:s.parentFieldFullPath?s.parentFieldFullPath+"/"+o:o.toString()})}))),oneOfType:"One of"}}function normalizeField(e,t,i){return e||(console.warn(`Field "${t}" is invalid, skipping.\n Field must be an object but got ${typeof e} at "${i}"`),{})}function buildFields(e,t,i,n,r,s){const o=t.properties||t.prefixItems||t.items||{},a=t.patternProperties||{},l=t.additionalProperties||t.unevaluatedProperties,p=t.prefixItems?t.items:t.additionalItems,d=t.default||{};let m=Object.keys(o).map((a=>{var l;const p=normalizeField(o[a],a,i),m=void 0!==t.required&&t.required.indexOf(a)>-1;return getField(e,{name:t.properties?a:`[${a}]`,required:m,schema:Object.assign(Object.assign({},p),{example:(null===(l=t.example)||void 0===l?void 0:l[a])||p.example,default:void 0===p.default&&d?d[a]:p.default})},i+"/properties/"+a,n,s,r,JsonPointer.join(t.absolutePointer||"",["properties",a]))}));return n.sortPropsAlphabetically&&(m=sortByField(m,"name")),n.requiredPropsFirst&&(m=sortByRequired(m,n.sortPropsAlphabetically?void 0:t.required)),m.push(...Object.keys(a).map((t=>{const o=normalizeField(a[t],t,i);return getField(e,{name:t,required:!1,schema:o,kind:"patternProperties"},`${i}/patternProperties/${t}`,n,s,r)}))),(isObject(l)||!0===l)&&m.push(getField(e,{name:(isObject(l)&&l["x-additionalPropertiesName"]||"property name").concat("*"),required:!1,schema:!0===l?{}:l,kind:"additionalProperties"},i+"/additionalProperties",n,s,r,JsonPointer.join(t.absolutePointer||"",["additionalProperties"]))),m.push(...buildAdditionalItems({parser:e,schema:p,fieldsCount:m.length,$ref:i,options:n,refsStack:r,deps:s})),m}function buildAdditionalItems({parser:e,schema:t=!1,fieldsCount:i,$ref:n,options:r,refsStack:s,deps:o}){return"boolean"==typeof t?t?[getField(e,{name:`[${i}...]`,schema:{},kind:"additionalItems"},`${n}/additionalItems`,r,o,s)]:[]:Array.isArray(t)?[...t.map(((t,a)=>getField(e,{name:`[${i+a}]`,schema:t,kind:"additionalItems"},`${n}/additionalItems/${a}`,r,o,s)))]:isObject(t)?[getField(e,{name:`[${i}...]`,schema:t,kind:"additionalItems"},`${n}/additionalItems`,r,o,s)]:[]}function getDiscriminator(e){return e.discriminator||e["x-discriminator"]}function collectUniqueOneOfTypesDeep(e){const t=new Set;return function e(i){for(const n of i.oneOf||[])n.oneOf?e(n):n.type&&t.add(n.type)}(e),Array.from(t.values())}function hasType(e,t){return e.type===t||Array.isArray(e.type)&&e.type.includes(t)}
1
+ var __rest=this&&this.__rest||function(e,t){var i={};for(var n in e)Object.prototype.hasOwnProperty.call(e,n)&&t.indexOf(n)<0&&(i[n]=e[n]);if(null!=e&&"function"==typeof Object.getOwnPropertySymbols){var r=0;for(n=Object.getOwnPropertySymbols(e);r<n.length;r++)t.indexOf(n[r])<0&&Object.prototype.propertyIsEnumerable.call(e,n[r])&&(i[n[r]]=e[n[r]])}return i};import{pushRef}from"../services/OpenAPIParser";import{detectType,extractExtensions,getValueFromMdParsedExtension,humanizeConstraints,isNamedDefinition,isObject,isPrimitiveType,JsonPointer,pluralizeType,sortByField,sortByRequired}from"../utils";import{l}from"../services";import{getField}from"./field";export function getSchema({parser:e,schemaOrRef:t,pointer:i,options:n,isChild:r=!1,baseRefsStack:s=[],deps:o,absolutePointer:a}){var p,d,m,c,f,u,y,O;const{resolved:h,refsStack:b}=e.deref(t,s,!0),v=t.$ref||i||"",P=pushRef(b,v),g=e.mergeAllOf(h,v,P,t.$ref||a),x=g.type||detectType(g),F={parser:e,options:n,deps:o,schemaOrRef:t,isChild:r,typePrefix:"",pointer:v,absolutePointer:a,refsStack:P,rawSchema:h,type:x,isCircular:!!g["x-circular-ref"],title:g.title||isNamedDefinition(v)&&JsonPointer.baseName(v)||"",description:getValueFromMdParsedExtension(g,"description")||"",format:g.format,enum:g.enum||[],example:g.example,deprecated:!!g.deprecated,pattern:g.pattern,externalDocs:g.externalDocs,displayFormat:g.format,isPrimitive:isPrimitiveType(g,x),constraints:humanizeConstraints(g),default:g.default,readOnly:!!g.readOnly,writeOnly:!!g.writeOnly,const:g.const||"",contentEncoding:g.contentEncoding,contentMediaType:g.contentMediaType,minItems:g.minItems,maxItems:g.maxItems,nullable:g.nullable||g["x-nullable"],schema:g,displayType:"",items:void 0,extensions:void 0,oneOfType:"",discriminatorProp:void 0,oneOf:void 0,"x-enumDescriptions":getValueFromMdParsedExtension(g,"x-enumDescriptions"),get fields(){if(hasType(F,"object")||hasType(F,"array")&&(Array.isArray(g.items)||Array.isArray(g.prefixItems)))return buildFields(e,g,v,n,P,o)}};if((g.nullable||g["x-nullable"])&&(Array.isArray(F.type)&&!F.type.some((e=>null===e||"null"===e))?F.type=[...F.type,"null"]:Array.isArray(F.type)||null===F.type&&"null"===F.type||(F.type=[F.type,"null"])),F.displayType=Array.isArray(F.type)?F.type.map((e=>null===e?"null":e)).join(" or "):F.type,F.isCircular)return F;if(g.if&&g.then||g.if&&g.else){const{oneOf:t,oneOfType:i}=initConditionalOperators({schema:g,parser:e,pointer:v,options:n,deps:o,refsStack:P});return F.oneOf=t,F.oneOfType=i,F}if(!r&&void 0!==getDiscriminator(g)){const{oneOf:t,discriminatorProp:i}=initDiscriminator({schema:g,parser:e,deps:o,mergedSchema:g,options:n,pointer:v,refsStack:P});return F.oneOf=t,F.discriminatorProp=i,F}if(r&&Array.isArray(g.oneOf)&&g.oneOf.find((e=>e.$ref===v))&&delete g.oneOf,void 0!==g.oneOf){const{oneOf:t,displayType:i}=initOneOf({schemaOneOf:g.oneOf,parser:e,deps:o,options:n,pointer:v,refsStack:P,schema:g});return F.oneOfType="One of",t&&(F.oneOf=t),F.displayType=i,void 0!==g.anyOf&&console.warn(`oneOf and anyOf are not supported on the same level. Skipping anyOf at ${v}`),F}if(void 0!==g.anyOf){const{oneOf:t,displayType:i}=initOneOf({schemaOneOf:g.anyOf,parser:e,deps:o,options:n,pointer:v,refsStack:P,schema:g});return t&&(F.oneOf=t),F.displayType=i,F.oneOfType="Any of",F}if(hasType(F,"array")&&(g.items&&(F.items=getSchema({parser:e,schemaOrRef:g.items,pointer:v+"/items",options:n,baseRefsStack:P,deps:o,absolutePointer:JsonPointer.join(g.absolutePointer||"",["items"])})),F.displayType=g.prefixItems||Array.isArray(g.items)?"items":pluralizeType((null===(p=F.items)||void 0===p?void 0:p.displayType)||F.displayType),F.displayFormat=(null===(d=F.items)||void 0===d?void 0:d.format)||"",F.typePrefix=(null===(m=F.items)||void 0===m?void 0:m.typePrefix)||""+l("arrayOf"),F.title=F.title||(null===(c=F.items)||void 0===c?void 0:c.title)||"",F.isPrimitive=void 0!==(null===(f=F.items)||void 0===f?void 0:f.isPrimitive)?null===(u=F.items)||void 0===u?void 0:u.isPrimitive:F.isPrimitive,void 0===F.example&&void 0!==(null===(y=F.items)||void 0===y?void 0:y.example)&&(F.example=[F.items.example]),(null===(O=F.items)||void 0===O?void 0:O.isPrimitive)&&(F.enum=F.items.enum,F["x-enumDescriptions"]=getValueFromMdParsedExtension(F.items,"x-enumDescriptions")),Array.isArray(F.type))){const e=F.type.filter((e=>"array"!==e));e.length&&(F.displayType+=` or ${e.join(" or ")}`)}return F.enum.length&&n.sortEnumValuesAlphabetically&&F.enum.sort(),n.showExtensions&&(F.extensions=extractExtensions(g,n.showExtensions)),F}function initDiscriminator({schema:e,parser:t,pointer:i,options:n,refsStack:r,deps:s,mergedSchema:o}){const a=getDiscriminator(e),l=null==a?void 0:a.propertyName,p=t.findDerived([...o["x-parentRefs"]||[],i]);if(e.oneOf)for(const t of e.oneOf){if(void 0===t.$ref)continue;const e=JsonPointer.baseName(t.$ref);p[t.$ref]=e}const d=(null==a?void 0:a.mapping)||{};let m=(null==a?void 0:a["x-explicitMappingOnly"])||!1;0===Object.keys(d).length&&(m=!1);const c={};for(const e in d){const t=d[e];Array.isArray(c[t])?c[t].push(e):c[t]=[e]}const f=m?Object.assign({},c):Object.assign(Object.assign({},p),c);let u=[];for(const e of Object.keys(f)){const t=f[e];if(Array.isArray(t))for(const i of t)u.push({$ref:e,name:i});else u.push({$ref:e,name:t})}const y=Object.keys(d);0!==y.length&&(u=u.sort(((e,t)=>{const i=y.indexOf(e.name),n=y.indexOf(t.name);return i<0&&n<0?e.name.localeCompare(t.name):i<0?1:n<0?-1:i-n})));return{oneOf:u.map((({$ref:e,name:i},a)=>{const l=getSchema({parser:t,schemaOrRef:{$ref:e},pointer:e,options:n,isChild:!0,baseRefsStack:r.slice(0,-1),deps:Object.assign(Object.assign({},s),{parentFieldFullPath:s.parentFieldFullPath?s.parentFieldFullPath+"/"+a:a.toString()}),absolutePointer:o.absolutePointer});return l.title=i,l})),discriminatorProp:l}}function initOneOf({schemaOneOf:e,parser:t,refsStack:i,pointer:n,schema:r,options:s,deps:o}){const a=e.map(((e,a)=>{const{resolved:l,refsStack:p}=t.deref(e,i,!0),d=t.mergeAllOf(l,n+"/oneOf/"+a,p),m=isNamedDefinition(e.$ref)&&!d.title?JsonPointer.baseName(e.$ref):`${d.title||""}${d.const&&JSON.stringify(d.const)||""}`;return getSchema({parser:t,schemaOrRef:Object.assign(Object.assign({},d),{title:m,allOf:[Object.assign(Object.assign({},r),{oneOf:void 0,anyOf:void 0})],discriminator:l.allOf?void 0:d.discriminator}),pointer:e.$ref||n+"/oneOf/"+a,options:s,baseRefsStack:p,deps:Object.assign(Object.assign({},o),{parentFieldFullPath:o.parentFieldFullPath?o.parentFieldFullPath+"/"+a:a.toString()})})}));let l;if(s.simpleOneOfTypeLabel){l=collectUniqueOneOfTypesDeep(r).join(" or ")}else l=a.map((e=>{let t=e.typePrefix+(e.title?`${e.title} (${e.displayType})`:e.displayType);return t.indexOf(" or ")>-1&&(t=`(${t})`),t})).join(" or ");return{oneOf:a,displayType:l}}function initConditionalOperators({schema:e,parser:t,pointer:i,options:n,refsStack:r,deps:s}){const{if:o,else:a={},then:l={}}=e,p=__rest(e,["if","else","then"]);return{oneOf:[{allOf:[p,l,o],title:o&&o["x-displayName"]||(null==o?void 0:o.title)||"case 1"},{allOf:[p,a],title:a&&a["x-displayName"]||(null==a?void 0:a.title)||"case 2"}].map(((e,o)=>getSchema({parser:t,schemaOrRef:Object.assign({},e),pointer:i+"/oneOf/"+o,options:n,baseRefsStack:r,deps:Object.assign(Object.assign({},s),{parentFieldFullPath:s.parentFieldFullPath?s.parentFieldFullPath+"/"+o:o.toString()})}))),oneOfType:"One of"}}function normalizeField(e,t,i){return e||(console.warn(`Field "${t}" is invalid, skipping.\n Field must be an object but got ${typeof e} at "${i}"`),{})}function buildFields(e,t,i,n,r,s){let o=t.properties||(hasType(t,"array")?t.prefixItems||t.items:void 0)||{};const a=t.patternProperties||{},l=t.additionalProperties||t.unevaluatedProperties,p=t.prefixItems?t.items:t.additionalItems,d=t.default||{};let m=Object.keys(o).map((a=>{var l;const p=normalizeField(o[a],a,i),m=void 0!==t.required&&t.required.indexOf(a)>-1;return getField(e,{name:t.properties?a:`[${a}]`,required:m,schema:Object.assign(Object.assign({},p),{example:(null===(l=t.example)||void 0===l?void 0:l[a])||p.example,default:void 0===p.default&&d?d[a]:p.default})},i+"/properties/"+a,n,s,r,JsonPointer.join(t.absolutePointer||"",["properties",a]))}));return n.sortPropsAlphabetically&&(m=sortByField(m,"name")),n.requiredPropsFirst&&(m=sortByRequired(m,n.sortPropsAlphabetically?void 0:t.required)),m.push(...Object.keys(a).map((t=>{const o=normalizeField(a[t],t,i);return getField(e,{name:t,required:!1,schema:o,kind:"patternProperties"},`${i}/patternProperties/${t}`,n,s,r)}))),(isObject(l)||!0===l)&&m.push(getField(e,{name:(isObject(l)&&l["x-additionalPropertiesName"]||"property name").concat("*"),required:!1,schema:!0===l?{}:l,kind:"additionalProperties"},i+"/additionalProperties",n,s,r,JsonPointer.join(t.absolutePointer||"",["additionalProperties"]))),m.push(...buildAdditionalItems({parser:e,schema:p,fieldsCount:m.length,$ref:i,options:n,refsStack:r,deps:s})),m}function buildAdditionalItems({parser:e,schema:t=!1,fieldsCount:i,$ref:n,options:r,refsStack:s,deps:o}){return"boolean"==typeof t?t?[getField(e,{name:`[${i}...]`,schema:{},kind:"additionalItems"},`${n}/additionalItems`,r,o,s)]:[]:Array.isArray(t)?[...t.map(((t,a)=>getField(e,{name:`[${i+a}]`,schema:t,kind:"additionalItems"},`${n}/additionalItems/${a}`,r,o,s)))]:isObject(t)?[getField(e,{name:`[${i}...]`,schema:t,kind:"additionalItems"},`${n}/additionalItems`,r,o,s)]:[]}function getDiscriminator(e){return e.discriminator||e["x-discriminator"]}function collectUniqueOneOfTypesDeep(e){const t=new Set;return function e(i){for(const n of i.oneOf||[])n.oneOf?e(n):n.type&&t.add(n.type)}(e),Array.from(t.values())}function hasType(e,t){return e.type===t||Array.isArray(e.type)&&e.type.includes(t)}
2
2
  //# sourceMappingURL=schema.js.map
@@ -6,5 +6,6 @@ export type OperationStore = {
6
6
  requestValues: {
7
7
  [field: string]: any;
8
8
  };
9
+ activeResponseTab: string;
9
10
  };
10
11
  export declare const operationStore: (param: string) => import("recoil").RecoilState<OperationStore>;
@@ -1,2 +1,2 @@
1
- import{atomFamily}from"recoil";export const operationStore=atomFamily({key:"operation",default:{activeExampleName:void 0,activeOneOf:0,activeServer:void 0,requestValues:{}}});
1
+ import{atomFamily}from"recoil";export const operationStore=atomFamily({key:"operation",default:{activeExampleName:void 0,activeOneOf:0,activeServer:void 0,requestValues:{},activeResponseTab:"200"}});
2
2
  //# sourceMappingURL=operation.js.map
@@ -1,2 +1,2 @@
1
- var __rest=this&&this.__rest||function(e,t){var r={};for(var i in e)Object.prototype.hasOwnProperty.call(e,i)&&t.indexOf(i)<0&&(r[i]=e[i]);if(null!=e&&"function"==typeof Object.getOwnPropertySymbols){var n=0;for(i=Object.getOwnPropertySymbols(e);n<i.length;n++)t.indexOf(i[n])<0&&Object.prototype.propertyIsEnumerable.call(e,i[n])&&(r[i[n]]=e[i[n]])}return r};import{IS_BROWSER,getDefinitionName}from"../utils";import{JsonPointer}from"../utils/JsonPointer";import{normalizeOptions}from"./Options/normalizeOptions";export function pushRef(e,t){return t&&e[e.length-1]!==t?[...e,t]:e}export function concatRefStacks(e,t){return t?e.concat(t):e}export class OpenAPIParser{constructor(e,t,r=normalizeOptions({})){Object.defineProperty(this,"options",{enumerable:!0,configurable:!0,writable:!0,value:r}),Object.defineProperty(this,"definitionUrl",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"definition",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"allowMergeRefs",{enumerable:!0,configurable:!0,writable:!0,value:!1}),Object.defineProperty(this,"byRef",{enumerable:!0,configurable:!0,writable:!0,value:e=>{let t;if(this.definition){"#"!==e.charAt(0)&&(e="#"+e),e=decodeURIComponent(e);try{t=JsonPointer.get(this.definition,e)}catch(e){}return t||{}}}}),this.validate(e),this.preprocess(e),this.definition=e,this.allowMergeRefs=e.openapi.startsWith("3.1");const i=IS_BROWSER?window.location.href:"";"string"==typeof t&&(this.definitionUrl=new URL(t,i).href)}validate(e){if(void 0===e.openapi)throw new Error("Document must be valid OpenAPI 3.0.0 definition")}preprocess(e){if(e.info&&this.options.hideInfoDescription)return e.info.description="",void(e.info["x-parsed-md-description"]=void 0)}isRef(e){return!!e&&(void 0!==e.$ref&&null!==e.$ref)}deref(e,t=[],r=!1){const i=null==e?void 0:e["x-refsStack"];if(t=concatRefStacks(t,i),this.isRef(e)){const i=getDefinitionName(e.$ref);if(i&&this.options.ignoreNamedSchemas.has(i))return{resolved:{type:"object",title:i},refsStack:t};let n=this.byRef(e.$ref);if(!n)throw new Error(`Failed to resolve $ref "${e.$ref}"`);let o=t;if(t.includes(e.$ref))n=Object.assign({},n,{"x-circular-ref":!0});else if(this.isRef(n)){const e=this.deref(n,t,r);o=e.refsStack,n=e.resolved}return o=pushRef(t,e.$ref),n=this.allowMergeRefs?this.mergeRefs(e,n,r):n,{resolved:n,refsStack:o}}return{resolved:e,refsStack:concatRefStacks(t,i)}}mergeRefs(e,t,r){const{$ref:i}=e,n=__rest(e,["$ref"]),o=Object.keys(n);if(0===o.length)return t;if(r&&o.some((e=>!["description","title","externalDocs","x-refsStack","x-parentRefs","readOnly","writeOnly"].includes(e)))){const e=n,{description:r,title:i,readOnly:o,writeOnly:s}=e;return{allOf:[{description:r,title:i,readOnly:o,writeOnly:s},t,__rest(e,["description","title","readOnly","writeOnly"])]}}return Object.assign(Object.assign({},t),n)}mergeAllOf(e,t,r,i=""){var n;if(e["x-circular-ref"])return e;if(void 0===(e=this.hoistOneOfs(e)).allOf)return Object.assign({absolutePointer:i},e);let o=Object.assign(Object.assign({},e),{"x-parentRefs":[],absolutePointer:JsonPointer.join(i,["allOf"]),allOf:void 0,title:e.title||getDefinitionName(t)});void 0!==o.properties&&"object"==typeof o.properties&&(o.properties=Object.assign({},o.properties)),void 0!==o.items&&"object"==typeof o.items&&(o.items=Object.assign({},o.items));const s=e.allOf.map(((e,t)=>{var n;const{resolved:s,refsStack:f}=this.deref(e,r,!0),l=e.$ref,a=l||JsonPointer.join(i,[String(t)]),c=this.mergeAllOf(s,l,f,a);if(!c["x-circular-ref"]||!c.allOf)return l&&(null===(n=o["x-parentRefs"])||void 0===n||n.push(...c["x-parentRefs"]||[],l)),{$ref:l,refsStack:pushRef(f,l),schema:c,absolutePointer:a}})).filter((e=>void 0!==e));for(const[e,{schema:r,refsStack:i,absolutePointer:f}]of s.entries()){const{type:s,enum:l,properties:a,items:c,required:p,title:d,description:O,readOnly:u,writeOnly:y,oneOf:m,anyOf:b,"x-circular-ref":h}=r,v=__rest(r,["type","enum","properties","items","required","title","description","readOnly","writeOnly","oneOf","anyOf","x-circular-ref"]);if(o.type!==s&&void 0!==o.type&&void 0!==s&&console.warn(`Incompatible types in allOf at "${t}": "${o.type}" and "${s}"`),void 0!==s&&(Array.isArray(s)&&Array.isArray(o.type)?o.type=[...s,...o.type]:o.type=s),void 0!==l&&(Array.isArray(l)&&Array.isArray(o.enum)?o.enum=Array.from(new Set([...l,...o.enum])):o.enum=l),void 0!==a&&"object"==typeof a){o.properties=o.properties||{};for(const r in a){const s=concatRefStacks(i,null===(n=a[r])||void 0===n?void 0:n["x-refsStack"]);if(o.properties[r]){if(!h){const i=this.mergeAllOf({allOf:[o.properties[r],a[r]],"x-refsStack":s},t+"/properties/"+r,s,JsonPointer.join(f,["allOf",String(e),"properties",r]));o.properties[r]=i}}else o.properties[r]=Object.assign(Object.assign({},a[r]),{absolutePointer:JsonPointer.join(f,["properties",r]),"x-refsStack":s})}}if(void 0!==c&&!h){const e="boolean"==typeof o.items?{}:Object.assign({},o.items),n="boolean"==typeof r.items?{}:Object.assign({},r.items);o.items=this.mergeAllOf({allOf:[e,n]},t+"/items",i)}void 0!==m&&(o.oneOf=m),void 0!==b&&(o.anyOf=b),void 0!==p&&(o.required=[...o.required||[],...p]),o=Object.assign(Object.assign(Object.assign({},o),{title:o.title||d,description:o.description||O,readOnly:void 0!==o.readOnly?o.readOnly:u,writeOnly:void 0!==o.writeOnly?o.writeOnly:y,"x-circular-ref":o["x-circular-ref"]||h}),v)}return o}findDerived(e){const t={},r=this.definition.components&&this.definition.components.schemas||{};for(const i in r){const{resolved:n}=this.deref(r[i]);void 0!==n.allOf&&n.allOf.find((t=>void 0!==t.$ref&&e.indexOf(t.$ref)>-1))&&(t["#/components/schemas/"+i]=[n["x-discriminator-value"]||i])}return t}hoistOneOfs(e){if(void 0===e.allOf)return e;const t=e.allOf;for(let e=0;e<t.length;e++){const r=t[e];if(Array.isArray(r.oneOf)){const i=t.slice(0,e),n=t.slice(e+1);return{oneOf:r.oneOf.map((e=>({allOf:[...i,e,...n]})))}}}return e}}
1
+ var __rest=this&&this.__rest||function(e,t){var i={};for(var r in e)Object.prototype.hasOwnProperty.call(e,r)&&t.indexOf(r)<0&&(i[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])&&(i[r[n]]=e[r[n]])}return i};import{IS_BROWSER,getDefinitionName}from"../utils";import{JsonPointer}from"../utils/JsonPointer";import{normalizeOptions}from"./Options/normalizeOptions";export function pushRef(e,t){return t&&e[e.length-1]!==t?[...e,t]:e}export function concatRefStacks(e,t){return t?e.concat(t):e}export class OpenAPIParser{constructor(e,t,i=normalizeOptions({})){Object.defineProperty(this,"options",{enumerable:!0,configurable:!0,writable:!0,value:i}),Object.defineProperty(this,"definitionUrl",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"definition",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"allowMergeRefs",{enumerable:!0,configurable:!0,writable:!0,value:!1}),Object.defineProperty(this,"byRef",{enumerable:!0,configurable:!0,writable:!0,value:e=>{let t;if(this.definition){"#"!==e.charAt(0)&&(e="#"+e),e=decodeURIComponent(e);try{t=JsonPointer.get(this.definition,e)}catch(e){}return t||{}}}}),this.definition=Object.assign({},e),this.validate(e),this.preprocess(e),this.definition=e,this.allowMergeRefs=e.openapi.startsWith("3.1");const r=IS_BROWSER?window.location.href:"";"string"==typeof t&&(this.definitionUrl=new URL(t,r).href)}validate(e){if(void 0===e.openapi)throw new Error("Document must be valid OpenAPI 3.0.0 definition")}preprocess(e){e.info&&this.options.hideInfoDescription&&(e=Object.assign(Object.assign({},e),{info:Object.assign(Object.assign({},e.info),{description:"","x-parsed-md-description":void 0})}))}isRef(e){return!!e&&(void 0!==e.$ref&&null!==e.$ref)}deref(e,t=[],i=!1){const r=null==e?void 0:e["x-refsStack"];if(t=concatRefStacks(t,r),this.isRef(e)){const r=getDefinitionName(e.$ref);if(r&&this.options.ignoreNamedSchemas.has(r))return{resolved:{type:"object",title:r},refsStack:t};let n=this.byRef(e.$ref);if(!n)throw new Error(`Failed to resolve $ref "${e.$ref}"`);let s=t;if(t.includes(e.$ref))n=Object.assign({},n,{"x-circular-ref":!0});else if(this.isRef(n)){const e=this.deref(n,t,i);s=e.refsStack,n=e.resolved}return s=pushRef(t,e.$ref),n=this.allowMergeRefs?this.mergeRefs(e,n,i):n,{resolved:n,refsStack:s}}return{resolved:e,refsStack:concatRefStacks(t,r)}}mergeRefs(e,t,i){const{$ref:r}=e,n=__rest(e,["$ref"]),s=Object.keys(n);if(0===s.length)return t;if(i&&s.some((e=>!["description","title","externalDocs","x-refsStack","x-parentRefs","readOnly","writeOnly"].includes(e)))){const e=n,{description:i,title:r,readOnly:s,writeOnly:o}=e;return{allOf:[{description:i,title:r,readOnly:s,writeOnly:o},t,__rest(e,["description","title","readOnly","writeOnly"])]}}return Object.assign(Object.assign({},t),n)}mergeAllOf(e,t,i,r=""){var n;if(e["x-circular-ref"])return e;if(void 0===(e=this.hoistOneOfs(e)).allOf)return Object.assign({absolutePointer:r},e);let s=Object.assign(Object.assign({},e),{"x-parentRefs":[],absolutePointer:JsonPointer.join(r,["allOf"]),allOf:void 0,title:e.title||getDefinitionName(t)});void 0!==s.properties&&"object"==typeof s.properties&&(s.properties=Object.assign({},s.properties)),void 0!==s.items&&"object"==typeof s.items&&(s.items=Object.assign({},s.items));const o=e.allOf.map(((e,t)=>{var n;const{resolved:o,refsStack:f}=this.deref(e,i,!0),a=e.$ref,l=a||JsonPointer.join(r,[String(t)]),c=this.mergeAllOf(o,a,f,l);if(!c["x-circular-ref"]||!c.allOf)return a&&(null===(n=s["x-parentRefs"])||void 0===n||n.push(...c["x-parentRefs"]||[],a)),{$ref:a,refsStack:pushRef(f,a),schema:c,absolutePointer:l}})).filter((e=>void 0!==e));for(const[e,{schema:i,refsStack:r,absolutePointer:f}]of o.entries()){const{type:o,enum:a,properties:l,items:c,required:p,title:d,description:O,readOnly:u,writeOnly:y,oneOf:b,anyOf:m,"x-circular-ref":h}=i,v=__rest(i,["type","enum","properties","items","required","title","description","readOnly","writeOnly","oneOf","anyOf","x-circular-ref"]);if(s.type===o||void 0===s.type||void 0===o){if(void 0!==o&&(Array.isArray(o)&&Array.isArray(s.type)?s.type=[...o,...s.type]:s.type=o),void 0!==a&&(Array.isArray(a)&&Array.isArray(s.enum)?s.enum=Array.from(new Set([...a,...s.enum])):s.enum=a),void 0!==l&&"object"==typeof l){s.properties=s.properties||{};for(const i in l){const o=concatRefStacks(r,null===(n=l[i])||void 0===n?void 0:n["x-refsStack"]);if(s.properties[i]){if(!h){const r=this.mergeAllOf({allOf:[s.properties[i],l[i]],"x-refsStack":o},t+"/properties/"+i,o,JsonPointer.join(f,["allOf",String(e),"properties",i]));s.properties[i]=r}}else s.properties[i]=Object.assign(Object.assign({},l[i]),{absolutePointer:JsonPointer.join(f,["properties",i]),"x-refsStack":o})}}if(void 0!==c&&!h){const e="boolean"==typeof s.items?{}:Object.assign({},s.items),n="boolean"==typeof i.items?{}:Object.assign({},i.items);s.items=this.mergeAllOf({allOf:[e,n]},t+"/items",r)}void 0!==b&&(s.oneOf=b),void 0!==m&&(s.anyOf=m),void 0!==p&&(s.required=[...s.required||[],...p]),s=Object.assign(Object.assign(Object.assign({},s),{title:s.title||d,description:s.description||O,readOnly:void 0!==s.readOnly?s.readOnly:u,writeOnly:void 0!==s.writeOnly?s.writeOnly:y,"x-circular-ref":s["x-circular-ref"]||h}),v)}}return s}findDerived(e){const t={},i=this.definition.components&&this.definition.components.schemas||{};for(const r in i){const{resolved:n}=this.deref(i[r]);void 0!==n.allOf&&n.allOf.find((t=>void 0!==t.$ref&&e.indexOf(t.$ref)>-1))&&(t["#/components/schemas/"+r]=[n["x-discriminator-value"]||r])}return t}hoistOneOfs(e){if(void 0===e.allOf)return e;const t=e.allOf;for(let e=0;e<t.length;e++){const i=t[e];if(Array.isArray(i.oneOf)){const r=t.slice(0,e),n=t.slice(e+1);return{oneOf:i.oneOf.map((e=>({allOf:[...r,e,...n]})))}}}return e}}
2
2
  //# sourceMappingURL=OpenAPIParser.js.map
@@ -1,2 +1,2 @@
1
- import{getTagGroupsItems,getTagsItems,getTagsWithOperations}from"./tags";import{addMarkdownItems}from"./markdown";import{flattenByProp,getValueFromMdParsedExtension}from"../../utils";export function buildMenuStructure(t,e){const{definition:n}=t,o=[],s=[...n.tags||[]]||[];!s.find((t=>(null==t?void 0:t.name)===e.schemaDefinitionsTagName))&&e.schemaDefinitionsTagName&&s.push({name:e.schemaDefinitionsTagName});const i=getTagsWithOperations(t,s),a=n["x-tagGroups"];return o.push(...addMarkdownItems(getValueFromMdParsedExtension(n.info,"description")||"",void 0,1,e.markdownHeadingsAnchorLevel,e.pagination)),a&&a.length>0?o.push(...getTagGroupsItems(t,void 0,a,i,e)):o.push(...getTagsItems(t,i,void 0,void 0,e)),o}export function buildContentItems(t,e){const n=buildMenuStructure(t,e);return{contentItems:n,flatItems:flattenByProp(n||[],"items")}}
1
+ import{getTagGroupsItems,getTagsItems,getTagsWithOperations}from"./tags";import{addMarkdownItems}from"./markdown";import{flattenByProp,getValueFromMdParsedExtension}from"../../utils";export function buildMenuStructure(t,e){const{definition:n}=t,o=[],i=[...n.tags||[]]||[];!i.find((t=>(null==t?void 0:t.name)===e.schemaDefinitionsTagName))&&e.schemaDefinitionsTagName&&i.push({name:e.schemaDefinitionsTagName});const s=getTagsWithOperations(t,i),a=n["x-tagGroups"];return e.hideInfoSection||e.hideInfoDescription||o.push(...addMarkdownItems(getValueFromMdParsedExtension(n.info,"description")||"",void 0,1,e.markdownHeadingsAnchorLevel,e.pagination)),a&&a.length>0?o.push(...getTagGroupsItems(t,void 0,a,s,e)):o.push(...getTagsItems(t,s,void 0,void 0,e)),o}export function buildContentItems(t,e){const n=buildMenuStructure(t,e);return{contentItems:n,flatItems:flattenByProp(n||[],"items")}}
2
2
  //# sourceMappingURL=builder.js.map