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

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 (210) hide show
  1. package/dist/console.redocly-openapi-docs.min.js +146 -146
  2. package/dist/oauth2-redirect.js +4 -4
  3. package/dist/redocly-openapi-docs.min.js +4042 -4044
  4. package/lib/components/ApiInfo/ApiInfo.d.ts +1 -0
  5. package/lib/components/ApiInfo/ApiInfo.js +1 -1
  6. package/lib/components/Callbacks/CallbackOperation.d.ts +1 -0
  7. package/lib/components/Callbacks/CallbackSummary.d.ts +1 -0
  8. package/lib/components/ChangeViewButton/ChangeViewButton.d.ts +1 -0
  9. package/lib/components/ChangeViewButton/styled.d.ts +1 -0
  10. package/lib/components/ContentItems/ContentItems.js +1 -1
  11. package/lib/components/Download/DownloadLink.d.ts +1 -0
  12. package/lib/components/Endpoint/styled.d.ts +1 -0
  13. package/lib/components/Fields/Examples.d.ts +1 -0
  14. package/lib/components/Fields/FieldDetails.js +1 -1
  15. package/lib/components/Fields/types.d.ts +1 -0
  16. package/lib/components/GenericChildrenSwitcher/GenericChildrenSwitcher.d.ts +1 -0
  17. package/lib/components/Loading/Loading.d.ts +1 -0
  18. package/lib/components/Markdown/Markdown.d.ts +1 -0
  19. package/lib/components/Markdown/types.d.ts +1 -0
  20. package/lib/components/NextSectionButton/NextSectionButton.d.ts +1 -0
  21. package/lib/components/OperationItem/OperationItem.js +1 -1
  22. package/lib/components/OperationParameters/OperationParameters.d.ts +1 -0
  23. package/lib/components/Overlay.d.ts +1 -0
  24. package/lib/components/Parameters/DropdownWithinHeader.d.ts +1 -0
  25. package/lib/components/Parameters/Parameters.d.ts +1 -0
  26. package/lib/components/PayloadSamples/Example.d.ts +1 -0
  27. package/lib/components/PayloadSamples/ExampleValue.d.ts +1 -0
  28. package/lib/components/PayloadSamples/ExternalExample.d.ts +1 -0
  29. package/lib/components/RedoclyOpenAPIDocs/RedoclyOpenAPIDocsMultiStandalone.d.ts +1 -0
  30. package/lib/components/RedoclyOpenAPIDocs/types.d.ts +1 -0
  31. package/lib/components/RenderHook/RenderHook.d.ts +1 -0
  32. package/lib/components/RequestSamples/useCodeSamples.d.ts +1 -1
  33. package/lib/components/RequestSamples/useCodeSamples.js +1 -1
  34. package/lib/components/Responses/Response.d.ts +1 -0
  35. package/lib/components/Responses/ResponseSummary.d.ts +1 -0
  36. package/lib/components/Samples/ExampleSwitch.d.ts +1 -0
  37. package/lib/components/Search/MenuItemSearch.d.ts +1 -0
  38. package/lib/components/Search/SearchBox.d.ts +1 -0
  39. package/lib/components/Search/SearchField.d.ts +1 -0
  40. package/lib/components/SectionContent/SectionContent.d.ts +1 -0
  41. package/lib/components/SecurityRequirement/PanelDescription.d.ts +1 -0
  42. package/lib/components/SecurityRequirement/RequiredScopesRow.d.ts +1 -0
  43. package/lib/components/SecurityRequirement/RequirementElement.d.ts +1 -0
  44. package/lib/components/SecurityRequirement/SecurityDefs.d.ts +1 -0
  45. package/lib/components/SeeMore/SeeMore.js +1 -1
  46. package/lib/components/SideMenu/styled.d.ts +1 -0
  47. package/lib/components/SourceCodeWithFile/SourceCodeWithFile.d.ts +1 -0
  48. package/lib/components/TagItem/TagItem.d.ts +1 -0
  49. package/lib/components/TagItems/TagItems.d.ts +1 -0
  50. package/lib/components/ToggleRightPanelButton/ToggleRightPanelButton.d.ts +1 -0
  51. package/lib/components/ToggleRightPanelButton/styled.d.ts +1 -0
  52. package/lib/components/VersionSwitcher.d.ts +1 -0
  53. package/lib/components/common/CheckboxList.d.ts +2 -1
  54. package/lib/components/common/LinearProgress.d.ts +1 -0
  55. package/lib/components/common/Skeleton/Skeleton.d.ts +1 -0
  56. package/lib/components/common/TextField.d.ts +1 -1
  57. package/lib/components/icons/CrossIcon.d.ts +1 -0
  58. package/lib/components/icons/FileIcon.d.ts +1 -0
  59. package/lib/components/icons/LinkIcon.d.ts +1 -0
  60. package/lib/components/icons/LockIcon.d.ts +1 -0
  61. package/lib/components/icons/SearchIcon.d.ts +1 -0
  62. package/lib/components/icons/ShelfIcon.d.ts +1 -0
  63. package/lib/components/icons/Spinner.d.ts +1 -0
  64. package/lib/components/pluggable/PullRight.d.ts +1 -0
  65. package/lib/components/pluggable/RedocExample.d.ts +1 -0
  66. package/lib/components/pluggable/RedocRequestBody.d.ts +1 -0
  67. package/lib/components/pluggable/RedocResponse.d.ts +1 -0
  68. package/lib/components/pluggable/RedocSchema.d.ts +1 -0
  69. package/lib/components/rightPanel/AuthPanel/AuthPanel.d.ts +1 -0
  70. package/lib/components/rightPanel/Console/Console.js +1 -1
  71. package/lib/components/rightPanel/Console/ConsoleLazy.d.ts +1 -0
  72. package/lib/components/rightPanel/ConsoleTabs/ConsoleTabs.d.ts +1 -0
  73. package/lib/components/rightPanel/OAuth2Flow/Error.d.ts +1 -0
  74. package/lib/components/rightPanel/OAuth2Flow/OAuth2Flow.d.ts +1 -0
  75. package/lib/components/rightPanel/OAuth2TokenInput.d.ts +1 -0
  76. package/lib/components/rightPanel/OpenIDConnect.d.ts +1 -0
  77. package/lib/components/rightPanel/ParameterArray.d.ts +1 -0
  78. package/lib/components/rightPanel/ParameterDropdown.d.ts +2 -1
  79. package/lib/components/rightPanel/ResponseBody.d.ts +1 -0
  80. package/lib/components/rightPanel/ResponseHeadersList.d.ts +1 -0
  81. package/lib/components/rightPanel/ResponsePanel.d.ts +1 -0
  82. package/lib/components/rightPanel/Scope.d.ts +1 -0
  83. package/lib/components/rightPanel/ServerVariable.d.ts +1 -0
  84. package/lib/models/example.js +1 -1
  85. package/lib/models/field.js +1 -1
  86. package/lib/models/group.js +1 -1
  87. package/lib/models/operation.js +1 -1
  88. package/lib/models/request.js +1 -1
  89. package/lib/models/response.js +1 -1
  90. package/lib/models/schema.js +1 -1
  91. package/lib/models/security.js +1 -1
  92. package/lib/models/types.d.ts +1 -2
  93. package/lib/recoil/operation.d.ts +1 -2
  94. package/lib/services/OpenAPIParser.js +1 -1
  95. package/lib/services/Options/normalizeOptions.js +1 -1
  96. package/lib/services/Options/types.d.ts +2 -0
  97. package/lib/services/code-samples/generator.js +1 -1
  98. package/lib/services/menu/builder.js +1 -1
  99. package/lib/services/menu/tags.js +1 -1
  100. package/lib/services/search/SearchStore.js +1 -1
  101. package/lib/types/open-api.d.ts +35 -29
  102. package/lib/utils/helpers.d.ts +2 -1
  103. package/lib/utils/helpers.js +1 -1
  104. package/lib/utils/highlight.js +1 -1
  105. package/lib/utils/openapi.d.ts +2 -4
  106. package/lib/utils/openapi.js +1 -1
  107. package/lib-esm/components/ApiInfo/ApiInfo.d.ts +1 -0
  108. package/lib-esm/components/ApiInfo/ApiInfo.js +1 -1
  109. package/lib-esm/components/Callbacks/CallbackOperation.d.ts +1 -0
  110. package/lib-esm/components/Callbacks/CallbackSummary.d.ts +1 -0
  111. package/lib-esm/components/ChangeViewButton/ChangeViewButton.d.ts +1 -0
  112. package/lib-esm/components/ChangeViewButton/styled.d.ts +1 -0
  113. package/lib-esm/components/ContentItems/ContentItems.js +1 -1
  114. package/lib-esm/components/Download/DownloadLink.d.ts +1 -0
  115. package/lib-esm/components/Endpoint/styled.d.ts +1 -0
  116. package/lib-esm/components/Fields/Examples.d.ts +1 -0
  117. package/lib-esm/components/Fields/FieldDetails.js +1 -1
  118. package/lib-esm/components/Fields/types.d.ts +1 -0
  119. package/lib-esm/components/GenericChildrenSwitcher/GenericChildrenSwitcher.d.ts +1 -0
  120. package/lib-esm/components/Loading/Loading.d.ts +1 -0
  121. package/lib-esm/components/Markdown/Markdown.d.ts +1 -0
  122. package/lib-esm/components/Markdown/types.d.ts +1 -0
  123. package/lib-esm/components/NextSectionButton/NextSectionButton.d.ts +1 -0
  124. package/lib-esm/components/OperationItem/OperationItem.js +2 -2
  125. package/lib-esm/components/OperationParameters/OperationParameters.d.ts +1 -0
  126. package/lib-esm/components/Overlay.d.ts +1 -0
  127. package/lib-esm/components/Parameters/DropdownWithinHeader.d.ts +1 -0
  128. package/lib-esm/components/Parameters/Parameters.d.ts +1 -0
  129. package/lib-esm/components/PayloadSamples/Example.d.ts +1 -0
  130. package/lib-esm/components/PayloadSamples/ExampleValue.d.ts +1 -0
  131. package/lib-esm/components/PayloadSamples/ExternalExample.d.ts +1 -0
  132. package/lib-esm/components/RedoclyOpenAPIDocs/RedoclyOpenAPIDocsMultiStandalone.d.ts +1 -0
  133. package/lib-esm/components/RedoclyOpenAPIDocs/types.d.ts +1 -0
  134. package/lib-esm/components/RenderHook/RenderHook.d.ts +1 -0
  135. package/lib-esm/components/RequestSamples/useCodeSamples.d.ts +1 -1
  136. package/lib-esm/components/RequestSamples/useCodeSamples.js +1 -1
  137. package/lib-esm/components/Responses/Response.d.ts +1 -0
  138. package/lib-esm/components/Responses/ResponseSummary.d.ts +1 -0
  139. package/lib-esm/components/Samples/ExampleSwitch.d.ts +1 -0
  140. package/lib-esm/components/Search/MenuItemSearch.d.ts +1 -0
  141. package/lib-esm/components/Search/SearchBox.d.ts +1 -0
  142. package/lib-esm/components/Search/SearchField.d.ts +1 -0
  143. package/lib-esm/components/SectionContent/SectionContent.d.ts +1 -0
  144. package/lib-esm/components/SecurityRequirement/PanelDescription.d.ts +1 -0
  145. package/lib-esm/components/SecurityRequirement/RequiredScopesRow.d.ts +1 -0
  146. package/lib-esm/components/SecurityRequirement/RequirementElement.d.ts +1 -0
  147. package/lib-esm/components/SecurityRequirement/SecurityDefs.d.ts +1 -0
  148. package/lib-esm/components/SeeMore/SeeMore.js +1 -1
  149. package/lib-esm/components/SideMenu/styled.d.ts +1 -0
  150. package/lib-esm/components/SourceCodeWithFile/SourceCodeWithFile.d.ts +1 -0
  151. package/lib-esm/components/TagItem/TagItem.d.ts +1 -0
  152. package/lib-esm/components/TagItems/TagItems.d.ts +1 -0
  153. package/lib-esm/components/ToggleRightPanelButton/ToggleRightPanelButton.d.ts +1 -0
  154. package/lib-esm/components/ToggleRightPanelButton/styled.d.ts +1 -0
  155. package/lib-esm/components/VersionSwitcher.d.ts +1 -0
  156. package/lib-esm/components/common/CheckboxList.d.ts +2 -1
  157. package/lib-esm/components/common/LinearProgress.d.ts +1 -0
  158. package/lib-esm/components/common/Skeleton/Skeleton.d.ts +1 -0
  159. package/lib-esm/components/common/TextField.d.ts +1 -1
  160. package/lib-esm/components/icons/CrossIcon.d.ts +1 -0
  161. package/lib-esm/components/icons/FileIcon.d.ts +1 -0
  162. package/lib-esm/components/icons/LinkIcon.d.ts +1 -0
  163. package/lib-esm/components/icons/LockIcon.d.ts +1 -0
  164. package/lib-esm/components/icons/SearchIcon.d.ts +1 -0
  165. package/lib-esm/components/icons/ShelfIcon.d.ts +1 -0
  166. package/lib-esm/components/icons/Spinner.d.ts +1 -0
  167. package/lib-esm/components/pluggable/PullRight.d.ts +1 -0
  168. package/lib-esm/components/pluggable/RedocExample.d.ts +1 -0
  169. package/lib-esm/components/pluggable/RedocRequestBody.d.ts +1 -0
  170. package/lib-esm/components/pluggable/RedocResponse.d.ts +1 -0
  171. package/lib-esm/components/pluggable/RedocSchema.d.ts +1 -0
  172. package/lib-esm/components/rightPanel/AuthPanel/AuthPanel.d.ts +1 -0
  173. package/lib-esm/components/rightPanel/Console/Console.js +1 -1
  174. package/lib-esm/components/rightPanel/Console/ConsoleLazy.d.ts +1 -0
  175. package/lib-esm/components/rightPanel/ConsoleTabs/ConsoleTabs.d.ts +1 -0
  176. package/lib-esm/components/rightPanel/OAuth2Flow/Error.d.ts +1 -0
  177. package/lib-esm/components/rightPanel/OAuth2Flow/OAuth2Flow.d.ts +1 -0
  178. package/lib-esm/components/rightPanel/OAuth2TokenInput.d.ts +1 -0
  179. package/lib-esm/components/rightPanel/OpenIDConnect.d.ts +1 -0
  180. package/lib-esm/components/rightPanel/ParameterArray.d.ts +1 -0
  181. package/lib-esm/components/rightPanel/ParameterDropdown.d.ts +2 -1
  182. package/lib-esm/components/rightPanel/ResponseBody.d.ts +1 -0
  183. package/lib-esm/components/rightPanel/ResponseHeadersList.d.ts +1 -0
  184. package/lib-esm/components/rightPanel/ResponsePanel.d.ts +1 -0
  185. package/lib-esm/components/rightPanel/Scope.d.ts +1 -0
  186. package/lib-esm/components/rightPanel/ServerVariable.d.ts +1 -0
  187. package/lib-esm/models/example.js +1 -1
  188. package/lib-esm/models/field.js +1 -1
  189. package/lib-esm/models/group.js +1 -1
  190. package/lib-esm/models/operation.js +1 -1
  191. package/lib-esm/models/request.js +1 -1
  192. package/lib-esm/models/response.js +1 -1
  193. package/lib-esm/models/schema.js +1 -1
  194. package/lib-esm/models/security.js +1 -1
  195. package/lib-esm/models/types.d.ts +1 -2
  196. package/lib-esm/recoil/operation.d.ts +1 -2
  197. package/lib-esm/services/OpenAPIParser.js +1 -1
  198. package/lib-esm/services/Options/normalizeOptions.js +1 -1
  199. package/lib-esm/services/Options/types.d.ts +2 -0
  200. package/lib-esm/services/code-samples/generator.js +1 -1
  201. package/lib-esm/services/menu/builder.js +1 -1
  202. package/lib-esm/services/menu/tags.js +1 -1
  203. package/lib-esm/services/search/SearchStore.js +1 -1
  204. package/lib-esm/types/open-api.d.ts +35 -29
  205. package/lib-esm/utils/helpers.d.ts +2 -1
  206. package/lib-esm/utils/helpers.js +1 -1
  207. package/lib-esm/utils/highlight.js +1 -1
  208. package/lib-esm/utils/openapi.d.ts +2 -4
  209. package/lib-esm/utils/openapi.js +1 -1
  210. package/package.json +4 -4
@@ -1,2 +1,2 @@
1
- var __awaiter=this&&this.__awaiter||function(e,t,o,r){return new(o||(o=Promise))((function(s,n){function a(e){try{l(r.next(e))}catch(e){n(e)}}function i(e){try{l(r.throw(e))}catch(e){n(e)}}function l(e){var t;e.done?s(e.value):(t=e.value,t instanceof o?t:new o((function(e){e(t)}))).then(a,i)}l((r=r.apply(e,t||[])).next())}))},__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 s=0;for(r=Object.getOwnPropertySymbols(e);s<r.length;s++)t.indexOf(r[s])<0&&Object.prototype.propertyIsEnumerable.call(e,r[s])&&(o[r[s]]=e[r[s]])}return o};import Swagger from"swagger-client";import React,{useEffect,useState,useRef,useCallback,memo}from"react";import{useMount}from"@redocly/theme";import{useRecoilValue,useRecoilState}from"recoil";import{unescapeFormId}from"../../../utils";import{StyledCodeHeader}from"../../Panel";import{isFileUploadMime}from"../../common/FileUpload/helper";import{AnalyticsEventType}from"../../../events";import{dereferenceDefinitionForTryIt,getDefaultOrStoredVariables,getFileNameFromHeaders,getParameters,makeRequestInterceptor,unescapeQueryParams,updateStorage}from"../utils";import{ResponsePanel}from"../ResponsePanel";import{ConsoleTabs}from"../ConsoleTabs";import{ActionPanel}from"../ActionPanel";import{Request}from"./Request";import{CloseButton,ConsoleBody}from"../styled";import{ConsoleWrapper}from"./ConsoleWrapper";import{usePrevious}from"../../../hooks";import{globalStoreSelector}from"../../../recoil/store";import{getActiveMediaType}from"../../../models";import{operationStore}from"../../../recoil/operation";function normalizeUrlProtocol(e){return e.startsWith("//")?"https:"+e:e}function ConsoleComponent({operation:e,onResponse:t,className:o,rootElement:r,properties:s,securityDefaults:n,onClose:a}){let i=useRef();const[l,c]=useRecoilState(operationStore(e.pointer)),[u,p]=useState(l.activeServer||e.activeServer),[d,m]=useState(0),[v,y]=useState(!1),[h,f]=useState(!1),[g,b]=useState({values:{path:getParameters(e.parameters,"path"),cookie:getParameters(e.parameters,"cookie"),header:getParameters(e.parameters,"header"),query:getParameters(e.parameters,"query")}}),[O,S]=useState(),[j,C]=useState(),[R,P]=useState(),[I,w]=useState(),T=usePrevious(e),{parser:q,options:E}=useRecoilValue(globalStoreSelector),_=useCallback(((e,t=e.getState())=>{var{values:o}=t,r=__rest(t,["values"]);i.current=e,setTimeout((()=>{b(Object.assign(Object.assign({},r),{values:Object.assign(Object.assign({},o),{query:unescapeQueryParams(o.query||{})})}))}),0)}),[]),k=useCallback((e=>{var{values:t}=e,o=__rest(e,["values"]);const r=Object.assign(Object.assign({},o),{values:Object.assign(Object.assign({},t),{query:unescapeQueryParams(t.query||{})})});c((e=>Object.assign(Object.assign({},e),{requestValues:JSON.parse(JSON.stringify(t))}))),b(r),updateStorage(r)}),[c]),F=useCallback((e=>{m(e)}),[]),A=useCallback((e=>{p(e),c((t=>Object.assign(Object.assign({},t),{activeServer:e})))}),[c]),V=useCallback((()=>__awaiter(this,void 0,void 0,(function*(){var o,r,s,n,a,l,c,p,d,v,h,b,S,j,R,I,T;const{values:q,invalid:_}=(null===(o=null==i?void 0:i.current)||void 0===o?void 0:o.getState())||g||{};if(null===(r=i.current)||void 0===r||r.submitForm(),_)return f(!0),setTimeout((()=>f(!1)),1e3),void(null===(n=null===(s=E.events)||void 0===s?void 0:s.tryItSent)||void 0===n||n.call(s,{eventType:AnalyticsEventType.TryItSent,resource:"Redocly_OperationTryIt",action:"ValidationFailed",operationId:e.operationId,operationPath:e.path,operationHttpVerb:e.httpVerb,operationSummary:e.description}));const{servers:k,requestBody:F}=e,A=F&&F.content&&(null===(a=getActiveMediaType(F.content))||void 0===a?void 0:a.name)||"";let V=q.body;if(/json/.test(A))try{V=JSON.parse(V)}catch(e){console.error(e)}y(!0);const x=O,B=(e.httpVerb||"").toLowerCase();if(!k)throw console.error("Servers are not specified in your OpenAPI file. You can't use Try It Out console without specifying servers. If you use OpenAPI 2, make sure you configured host and basepath"),new Error("Servers are not specified");const D=k.find((e=>u.url.endsWith(e.url.endsWith("/")?e.url.substring(0,e.url.length-1):e.url))),M=Date.now(),N=!!window.document.documentMode;let U,H=q.auth;if(q.auth){const e=Object.keys(q.auth)[0],t=unescapeFormId(e);U=Object.assign(Object.assign({},x),{components:Object.assign(Object.assign({},null==x?void 0:x.components),{securitySchemes:Object.assign(Object.assign({},null===(l=null==x?void 0:x.components)||void 0===l?void 0:l.securitySchemes),{[t]:Object.assign(Object.assign({},null===(p=null===(c=null==x?void 0:x.components)||void 0===c?void 0:c.securitySchemes)||void 0===p?void 0:p[t]),{type:"openIdConnect"===(null===(h=null===(v=null===(d=null==x?void 0:x.components)||void 0===d?void 0:d.securitySchemes)||void 0===v?void 0:v[t])||void 0===h?void 0:h.type)?"oauth2":(null===(S=null===(b=null==x?void 0:x.components)||void 0===b?void 0:b.securitySchemes)||void 0===S?void 0:S[t]).type})})})}),H=Object.assign(Object.assign({},H),{[t]:H[e]})}else U=Object.assign({},x);U.servers=k;const W=E.corsProxyUrl;W&&k.length&&(U.servers=k.map((e=>Object.assign(Object.assign({},e),{url:W+normalizeUrlProtocol(e.url)}))),U.paths=Object.assign(Object.assign({},U.paths),{[e.path]:Object.assign(Object.assign({},U.paths[e.path]),{[B]:Object.assign(Object.assign({},U.paths[e.path][B]),{servers:void 0}),servers:void 0})}));const z=(null==F?void 0:F.content)&&(null===(j=getActiveMediaType(F.content))||void 0===j?void 0:j.name)||null;if(z&&V&&isFileUploadMime(z)){const e=Object.values(V);V=e.length>1?e:e[0]}const J={userFetch:N&&require("cross-fetch").fetch,server:W?W+normalizeUrlProtocol(D.url):D.url,serverVariables:getDefaultOrStoredVariables(D),spec:U,pathName:e.path,method:e.httpVerb,parameters:Object.assign(Object.assign(Object.assign(Object.assign({},q.path),q.query),q.header),q.cookie),securities:{authorized:H},requestBody:V,requestContentType:z,responseContentType:(null===(R=q.header)||void 0===R?void 0:R.Accept)||null,requestInterceptor:makeRequestInterceptor(E,e,null==H?void 0:H.Authorization)};try{const o=yield Swagger.execute(J),r=null==o?void 0:o.data;r instanceof Blob&&(isFileUploadMime(r.type)&&(o.fileInfo={rawData:r,fileName:getFileNameFromHeaders(o.headers)}),o.data=yield r.text()),null==t||t({request:J,response:o}),w(o),P(void 0)}catch(e){e&&e.response&&e.response.data instanceof Blob&&(e.response.data=yield e.response.data.text(),null==t||t({request:J,response:e.response})),w(void 0),P(e)}finally{y(!1),m(1),C(Date.now()-M),null===(T=null===(I=E.events)||void 0===I?void 0:I.tryItSent)||void 0===T||T.call(I,{eventType:AnalyticsEventType.TryItSent,resource:"Redocly_OperationTryIt",action:"Sent",operationId:e.operationId,operationPath:e.path,operationHttpVerb:e.httpVerb,operationSummary:e.description})}}))),[u.url,g,t,e,E,O]);useMount((()=>__awaiter(this,void 0,void 0,(function*(){var t;const o=yield dereferenceDefinitionForTryIt(e,q.definition);S(o),null===(t=i.current)||void 0===t||t.setValues({})})))),useEffect((()=>{T&&T!==e&&(w(void 0),P(void 0),m(0))}),[e,T]);const x=!(!I&&!R);return React.createElement(ConsoleWrapper,{shaking:h,className:o,rootElement:r},React.createElement(StyledCodeHeader,null,React.createElement(ConsoleTabs,{active:d,hasResponse:x,onChange:F}),a&&React.createElement(CloseButton,{onClick:a}," ✕ ")),React.createElement(ConsoleBody,{hidden:0!==d,"data-cy":"console-request-body"},React.createElement(Request,{operation:e,properties:s,securityDefaults:n,form:g,resolvedRawSpec:O,server:u,formApi:i.current,setFormApi:_,handleChange:k,handleServerChange:A})),React.createElement(ConsoleBody,{hidden:1!==d,"data-cy":"console-response-body"},React.createElement(ResponsePanel,{response:I,error:R,time:j})),React.createElement(ActionPanel,{hasResponse:x,params:g.values,operation:e,loading:v,execute:V}))}export const Console=memo(ConsoleComponent);
1
+ var __awaiter=this&&this.__awaiter||function(e,t,o,r){return new(o||(o=Promise))((function(s,n){function a(e){try{l(r.next(e))}catch(e){n(e)}}function i(e){try{l(r.throw(e))}catch(e){n(e)}}function l(e){var t;e.done?s(e.value):(t=e.value,t instanceof o?t:new o((function(e){e(t)}))).then(a,i)}l((r=r.apply(e,t||[])).next())}))},__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 s=0;for(r=Object.getOwnPropertySymbols(e);s<r.length;s++)t.indexOf(r[s])<0&&Object.prototype.propertyIsEnumerable.call(e,r[s])&&(o[r[s]]=e[r[s]])}return o};import Swagger from"swagger-client";import React,{useEffect,useState,useRef,useCallback,memo}from"react";import{useMount}from"@redocly/theme";import{useRecoilValue,useRecoilState}from"recoil";import{unescapeFormId}from"../../../utils";import{StyledCodeHeader}from"../../Panel";import{isFileUploadMime}from"../../common/FileUpload/helper";import{AnalyticsEventType}from"../../../events";import{dereferenceDefinitionForTryIt,getDefaultOrStoredVariables,getFileNameFromHeaders,getParameters,makeRequestInterceptor,unescapeQueryParams,updateStorage}from"../utils";import{ResponsePanel}from"../ResponsePanel";import{ConsoleTabs}from"../ConsoleTabs";import{ActionPanel}from"../ActionPanel";import{Request}from"./Request";import{CloseButton,ConsoleBody}from"../styled";import{ConsoleWrapper}from"./ConsoleWrapper";import{usePrevious}from"../../../hooks";import{globalStoreSelector}from"../../../recoil/store";import{getActiveMediaType}from"../../../models";import{operationStore}from"../../../recoil/operation";function normalizeUrlProtocol(e){return e.startsWith("//")?"https:"+e:e}function ConsoleComponent({operation:e,onResponse:t,className:o,rootElement:r,properties:s,securityDefaults:n,onClose:a}){let i=useRef();const[l,c]=useRecoilState(operationStore(e.pointer)),[u,p]=useState(l.activeServer||e.activeServer),[d,m]=useState(0),[v,y]=useState(!1),[h,f]=useState(!1),[g,b]=useState({values:{path:getParameters(e.parameters,"path"),cookie:getParameters(e.parameters,"cookie"),header:getParameters(e.parameters,"header"),query:getParameters(e.parameters,"query")}}),[O,S]=useState(),[j,C]=useState(),[R,P]=useState(),[I,w]=useState(),T=usePrevious(e),{parser:q,options:E}=useRecoilValue(globalStoreSelector),_=useCallback(((e,t=e.getState())=>{var{values:o}=t,r=__rest(t,["values"]);i.current=e,setTimeout((()=>{b(Object.assign(Object.assign({},r),{values:Object.assign(Object.assign({},o),{query:unescapeQueryParams(o.query||{})})}))}),0)}),[]),k=useCallback((e=>{var{values:t}=e,o=__rest(e,["values"]);const r=Object.assign(Object.assign({},o),{values:Object.assign(Object.assign({},t),{query:unescapeQueryParams(t.query||{})})});c((e=>Object.assign(Object.assign({},e),{requestValues:JSON.parse(JSON.stringify(t))}))),b(r),updateStorage(r)}),[c]),F=useCallback((e=>{m(e)}),[]),A=useCallback((e=>{p(e),c((t=>Object.assign(Object.assign({},t),{activeServer:e})))}),[c]),V=useCallback((()=>__awaiter(this,void 0,void 0,(function*(){var o,r,s,n,a,l,c,p,d,v,h,b,S,j,R,I,T;const{values:q,invalid:_}=(null===(o=null==i?void 0:i.current)||void 0===o?void 0:o.getState())||g||{};if(null===(r=i.current)||void 0===r||r.submitForm(),_)return f(!0),setTimeout((()=>f(!1)),1e3),void(null===(n=null===(s=E.events)||void 0===s?void 0:s.tryItSent)||void 0===n||n.call(s,{eventType:AnalyticsEventType.TryItSent,resource:"Redocly_OperationTryIt",action:"ValidationFailed",operationId:e.operationId,operationPath:e.path,operationHttpVerb:e.httpVerb,operationSummary:e.description}));const{servers:k,requestBody:F}=e,A=F&&F.content&&(null===(a=getActiveMediaType(F.content))||void 0===a?void 0:a.name)||"";let V=q.body;if(/json/.test(A))try{V=JSON.parse(V)}catch(e){console.error(e)}y(!0);const x=O,B=(e.httpVerb||"").toLowerCase();if(!k)throw console.error("Servers are not specified in your OpenAPI file. You can't use Try It Out console without specifying servers. If you use OpenAPI 2, make sure you configured host and basepath"),new Error("Servers are not specified");const D=k.find((e=>u.url.endsWith(e.url.endsWith("/")?e.url.substring(0,e.url.length-1):e.url))),M=Date.now(),N=!!window.document.documentMode;let U,H=q.auth;if(q.auth){const e=Object.keys(q.auth)[0],t=unescapeFormId(e);U=Object.assign(Object.assign({},x),{components:Object.assign(Object.assign({},null==x?void 0:x.components),{securitySchemes:Object.assign(Object.assign({},null===(l=null==x?void 0:x.components)||void 0===l?void 0:l.securitySchemes),{[t]:Object.assign(Object.assign({},null===(p=null===(c=null==x?void 0:x.components)||void 0===c?void 0:c.securitySchemes)||void 0===p?void 0:p[t]),{type:"openIdConnect"===(null===(h=null===(v=null===(d=null==x?void 0:x.components)||void 0===d?void 0:d.securitySchemes)||void 0===v?void 0:v[t])||void 0===h?void 0:h.type)?"oauth2":(null===(S=null===(b=null==x?void 0:x.components)||void 0===b?void 0:b.securitySchemes)||void 0===S?void 0:S[t]).type})})})}),H=Object.assign(Object.assign({},H),{[t]:H[e]})}else U=Object.assign({},x);U.servers=k;const W=E.corsProxyUrl;W&&k.length&&(U.servers=k.map((e=>Object.assign(Object.assign({},e),{url:W+normalizeUrlProtocol(e.url)}))),U.paths=Object.assign(Object.assign({},U.paths),{[e.path]:Object.assign(Object.assign({},U.paths[e.path]),{[B]:Object.assign(Object.assign({},U.paths[e.path][B]),{servers:void 0}),servers:void 0})}));const z=(null==F?void 0:F.content)&&(null===(j=getActiveMediaType(F.content))||void 0===j?void 0:j.name)||null;if(z&&V&&isFileUploadMime(z)){const e=Object.values(V);V=e.length>1?e:e[0]}const J={userFetch:N&&require("cross-fetch").fetch,server:W?W+normalizeUrlProtocol(D.url):D.url,serverVariables:getDefaultOrStoredVariables(D),spec:U,pathName:e.path,method:e.httpVerb,parameters:Object.assign(Object.assign(Object.assign(Object.assign({},q.path),q.query),q.header),q.cookie),securities:{authorized:H},requestBody:V,requestContentType:z,responseContentType:(null===(R=q.header)||void 0===R?void 0:R.Accept)||null,requestInterceptor:makeRequestInterceptor(E,e,null==H?void 0:H.Authorization)};try{const e=yield Swagger.execute(J),o=null==e?void 0:e.data;o instanceof Blob&&(isFileUploadMime(o.type)&&(e.fileInfo={rawData:o,fileName:getFileNameFromHeaders(e.headers)}),e.data=yield o.text()),null==t||t({request:J,response:e}),w(e),P(void 0)}catch(e){e&&e.response&&e.response.data instanceof Blob&&(e.response.data=yield e.response.data.text(),null==t||t({request:J,response:e.response})),w(void 0),P(e)}finally{y(!1),m(1),C(Date.now()-M),null===(T=null===(I=E.events)||void 0===I?void 0:I.tryItSent)||void 0===T||T.call(I,{eventType:AnalyticsEventType.TryItSent,resource:"Redocly_OperationTryIt",action:"Sent",operationId:e.operationId,operationPath:e.path,operationHttpVerb:e.httpVerb,operationSummary:e.description})}}))),[u.url,g,t,e,E,O]);useMount((()=>__awaiter(this,void 0,void 0,(function*(){var t;const o=yield dereferenceDefinitionForTryIt(e,q.definition);S(o),null===(t=i.current)||void 0===t||t.setValues({})})))),useEffect((()=>{T&&T!==e&&(w(void 0),P(void 0),m(0))}),[e,T]);const x=!(!I&&!R);return React.createElement(ConsoleWrapper,{shaking:h,className:o,rootElement:r},React.createElement(StyledCodeHeader,null,React.createElement(ConsoleTabs,{active:d,hasResponse:x,onChange:F}),a&&React.createElement(CloseButton,{onClick:a}," ✕ ")),React.createElement(ConsoleBody,{hidden:0!==d,"data-cy":"console-request-body"},React.createElement(Request,{operation:e,properties:s,securityDefaults:n,form:g,resolvedRawSpec:O,server:u,formApi:i.current,setFormApi:_,handleChange:k,handleServerChange:A})),React.createElement(ConsoleBody,{hidden:1!==d,"data-cy":"console-response-body"},React.createElement(ResponsePanel,{response:I,error:R,time:j})),React.createElement(ActionPanel,{hasResponse:x,params:g.values,operation:e,loading:v,execute:V}))}export const Console=memo(ConsoleComponent);
2
2
  //# sourceMappingURL=Console.js.map
@@ -1,2 +1,3 @@
1
+ /// <reference types="react" />
1
2
  import type { ConsoleProps } from './types';
2
3
  export declare function Console(props: ConsoleProps): JSX.Element;
@@ -1,3 +1,4 @@
1
+ /// <reference types="react" />
1
2
  export interface ConsoleTabsProps {
2
3
  onChange: (activeTab: number) => void;
3
4
  active: number;
@@ -1,3 +1,4 @@
1
+ /// <reference types="react" />
1
2
  export declare const Error: ({ token, loading, error, }: {
2
3
  token: {
3
4
  access_token: string;
@@ -1,2 +1,3 @@
1
+ /// <reference types="react" />
1
2
  import type { OAuth2FlowProps } from './types';
2
3
  export declare const OAuth2Flow: ({ usePkce, form, id, formApi, flow, tokenUrl: _tokenUrl, authCorsProxyUrl, tokenEndpointAuthMethod, server, scopes, authorizationUrl, defaultValues, clientId, }: OAuth2FlowProps) => JSX.Element;
@@ -1,3 +1,4 @@
1
+ /// <reference types="react" />
1
2
  import type { SecurityDetails } from '../../types';
2
3
  export interface OAuth2TokenInputProps {
3
4
  flow: {
@@ -1,3 +1,4 @@
1
+ /// <reference types="react" />
1
2
  import type { FormApi, FormState } from 'informed';
2
3
  import type { ExtendedOpenAPISecurityScheme } from '../../models';
3
4
  import type { SecurityDetails } from '../../types';
@@ -1,3 +1,4 @@
1
+ /// <reference types="react" />
1
2
  import type { FieldModel } from '../../models';
2
3
  interface ParameterArrayProps {
3
4
  name: string;
@@ -1,6 +1,7 @@
1
+ import React from 'react';
1
2
  interface ParameterEnumDropdownProps {
2
3
  initValue: string;
3
4
  paramEnum: Array<string>;
4
5
  }
5
- export declare const ParameterEnumDropdown: import("react").ComponentType<import("informed").FieldProps<string, any> & ParameterEnumDropdownProps>;
6
+ export declare const ParameterEnumDropdown: React.ComponentType<import("informed").FieldProps<string, any> & ParameterEnumDropdownProps>;
6
7
  export {};
@@ -1,3 +1,4 @@
1
+ /// <reference types="react" />
1
2
  import type { OpenApiResponseData } from './types';
2
3
  export declare function ResponseBody({ response }: {
3
4
  response: OpenApiResponseData;
@@ -1,3 +1,4 @@
1
+ /// <reference types="react" />
1
2
  export declare function ResponseHeadersList({ headers }: {
2
3
  headers: Record<string, string>;
3
4
  }): JSX.Element;
@@ -1,3 +1,4 @@
1
+ /// <reference types="react" />
1
2
  import type { OpenApiResponseData } from './types';
2
3
  export interface ResponsePanelProps {
3
4
  response?: OpenApiResponseData;
@@ -1,3 +1,4 @@
1
+ /// <reference types="react" />
1
2
  interface ScopeProps {
2
3
  scopes?: string[];
3
4
  id: string;
@@ -1,3 +1,4 @@
1
+ /// <reference types="react" />
1
2
  interface ServerVariableProps {
2
3
  onChange: (value: string) => void;
3
4
  name: string;
@@ -1,2 +1,2 @@
1
- import{resolve as urlResolve}from"url";import{isJsonLike}from"../utils";const ExternalExamplesCache={};export function getExternalExampleValue(e,r){return r?(r in ExternalExamplesCache||(ExternalExamplesCache[r]=fetch(r).then((r=>r.text().then((t=>{if(!r.ok)return Promise.reject(new Error(t));if(!isJsonLike(e))return t;try{return JSON.parse(t)}catch(e){return t}}))))),ExternalExamplesCache[r]):Promise.resolve(void 0)}export function getExamples({parser:e,infoOrRef:r,mime:t,encoding:n}){let l;const{resolved:a}=e.deref(r),o=a.value,i=a.value,s=a.summary,u=a.description;return a.externalValue&&(l=urlResolve(e.definitionUrl||"",a.externalValue)),{value:i,rawValue:o,externalValueUrl:l,summary:s,description:u,mime:t,encoding:n}}
1
+ import{resolve as urlResolve}from"url";import{getValueFromMdParsedExtension,isJsonLike}from"../utils";const ExternalExamplesCache={};export function getExternalExampleValue(e,r){return r?(r in ExternalExamplesCache||(ExternalExamplesCache[r]=fetch(r).then((r=>r.text().then((t=>{if(!r.ok)return Promise.reject(new Error(t));if(!isJsonLike(e))return t;try{return JSON.parse(t)}catch(e){return t}}))))),ExternalExamplesCache[r]):Promise.resolve(void 0)}export function getExamples({parser:e,infoOrRef:r,mime:t,encoding:n}){let a;const{resolved:l}=e.deref(r),o=l.value,s=l.value,i=getValueFromMdParsedExtension(l,"summary"),u=getValueFromMdParsedExtension(l,"description");return l.externalValue&&(a=urlResolve(e.definitionUrl||"",l.externalValue)),{value:s,rawValue:o,externalValueUrl:a,summary:i,description:u,mime:t,encoding:n}}
2
2
  //# sourceMappingURL=example.js.map
@@ -1,2 +1,2 @@
1
- import{extractExtensions,mapValues}from"../utils";import{getSchema}from"./schema";import{getExamples}from"./example";const DEFAULT_SERIALIZATION={path:{style:"simple",explode:!1},query:{style:"form",explode:!0},header:{style:"simple",explode:!1},cookie:{style:"form",explode:!0}};export function getField(e,o,l,t,i,n,s=l){var d,a,p,r,c,m,x;const{resolved:u}=e.deref(o),v=o.kind||"field",f=o.name||u.name,h=u.in,E=!!u.required;let g,F,y=u.schema,O="";if(!y&&u.in&&u.content){O=Object.keys(u.content)[0];const o=u.content[O];y=o&&(null==o?void 0:o.example)?Object.assign(Object.assign({},e.deref(o.schema,n,!0).resolved),{example:u.example||o.example}):o.schema}const A=(null==i?void 0:i.parentFieldFullPath)?i.parentFieldFullPath+"/"+f:f,I=getSchema({parser:e,schemaOrRef:y||{},pointer:l,options:t,baseRefsStack:n,absolutePointer:o.$ref||(null===(d=u.schema)||void 0===d?void 0:d.absolutePointer)||s,deps:Object.assign(Object.assign({},i),{parentFieldFullPath:A,in:h})}),b=void 0===u.description?I.description||"":u.description,L=u.example||I.example,P=u.examples||(null===(p=null===(a=u.content)||void 0===a?void 0:a[O])||void 0===p?void 0:p.examples),R=P?mapValues(P,((o,l)=>getExamples({parser:e,infoOrRef:o,mime:l,encoding:u.encoding}))):void 0;O?g=O:u.style?F=u.style:h&&(F=null!==(c=null===(r=DEFAULT_SERIALIZATION[h])||void 0===r?void 0:r.style)&&void 0!==c?c:"form");const S=void 0===u.explode&&h?null===(x=null===(m=DEFAULT_SERIALIZATION[h])||void 0===m?void 0:m.explode)||void 0===x||x:!!u.explode;return{deps:i||{},schema:I,name:f,required:E,description:b,example:L,examples:R,deprecated:void 0===u.deprecated?I.deprecated:u.deprecated,in:h,kind:v,extensions:t.showExtensions?extractExtensions(u,t.showExtensions):void 0,explode:S,style:F,const:(null==I?void 0:I.const)||(null==u?void 0:u.const)||"",serializationMime:g,fieldFullPath:A}}
1
+ import{extractExtensions,getValueFromMdParsedExtension,mapValues}from"../utils";import{getSchema}from"./schema";import{getExamples}from"./example";const DEFAULT_SERIALIZATION={path:{style:"simple",explode:!1},query:{style:"form",explode:!0},header:{style:"simple",explode:!1},cookie:{style:"form",explode:!0}};export function getField(e,o,t,l,i,n,s=t){var d,a,r,p,m,c,x;const{resolved:u}=e.deref(o),v=o.kind||"field",f=o.name||u.name,h=u.in,E=!!u.required;let g,F,y=u.schema,O="";if(!y&&u.in&&u.content){O=Object.keys(u.content)[0];const o=u.content[O];y=o&&(null==o?void 0:o.example)?Object.assign(Object.assign({},e.deref(o.schema,n,!0).resolved),{example:u.example||o.example}):o.schema}const A=(null==i?void 0:i.parentFieldFullPath)?i.parentFieldFullPath+"/"+f:f,I=getSchema({parser:e,schemaOrRef:y||{},pointer:t,options:l,baseRefsStack:n,absolutePointer:o.$ref||(null===(d=u.schema)||void 0===d?void 0:d.absolutePointer)||s,deps:Object.assign(Object.assign({},i),{parentFieldFullPath:A,in:h})}),P=void 0===u.description?getValueFromMdParsedExtension(I,"description")||"":getValueFromMdParsedExtension(u,"description"),b=u.example||I.example,L=u.examples||(null===(r=null===(a=u.content)||void 0===a?void 0:a[O])||void 0===r?void 0:r.examples),R=L?mapValues(L,((o,t)=>getExamples({parser:e,infoOrRef:o,mime:t,encoding:u.encoding}))):void 0;O?g=O:u.style?F=u.style:h&&(F=null!==(m=null===(p=DEFAULT_SERIALIZATION[h])||void 0===p?void 0:p.style)&&void 0!==m?m:"form");const S=void 0===u.explode&&h?null===(x=null===(c=DEFAULT_SERIALIZATION[h])||void 0===c?void 0:c.explode)||void 0===x||x:!!u.explode;return{deps:i||{},schema:I,name:f,required:E,description:P,example:b,examples:R,deprecated:void 0===u.deprecated?I.deprecated:u.deprecated,in:h,kind:v,extensions:l.showExtensions?extractExtensions(u,l.showExtensions):void 0,explode:S,style:F,const:(null==I?void 0:I.const)||(null==u?void 0:u.const)||"",serializationMime:g,fieldFullPath:A}}
2
2
  //# sourceMappingURL=field.js.map
@@ -1,2 +1,2 @@
1
- import{safeSlugify}from"../utils";import{getHref}from"../services/menu/operation";import{saveTextBeforeHeading}from"../utils/saveTextBeforeHeading";export function getGroup(e,t,{pagination:i,markdownHeadingsAnchorLevel:a},r){const n=t.id||e+"/"+safeSlugify(t.name),o=t["x-displayName"]||t.name,s=t.level||1,m=t.isSchema,p=t.ast||void 0;return{id:n,type:e,parent:r,name:o,level:s,depth:0,isSchema:m,description:saveTextBeforeHeading(t.description||"",a),items:t.items,ast:p,externalDocs:t.externalDocs,href:getHref({id:n,parent:r,type:e},i)}}
1
+ import{getValueFromMdParsedExtension,safeSlugify}from"../utils";import{getHref}from"../services/menu/operation";import{saveTextBeforeHeading}from"../utils/saveTextBeforeHeading";export function getGroup(e,t,{pagination:i,markdownHeadingsAnchorLevel:a},r){const n=t.id||e+"/"+safeSlugify(t.name),o=t["x-displayName"]||t.name,s=t.level||1,m=t.isSchema,d=t.ast||void 0;return{id:n,type:e,parent:r,name:o,level:s,depth:0,isSchema:m,description:saveTextBeforeHeading(getValueFromMdParsedExtension(t,"description")||"",a),items:t.items,ast:d,externalDocs:t.externalDocs,href:getHref({id:n,parent:r,type:e},i)}}
2
2
  //# sourceMappingURL=group.js.map
@@ -1,2 +1,2 @@
1
- import{extractExtensions,getOperationId,getOperationName,getStatusCodeType,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{getCodeSample}from"../services";import{getResponse}from"./response";export function isPayloadSample(e){return"payload"===e.lang&&"requestBodyContent"in e}let isCodeSamplesWarningPrinted=!1;export function getOperation(e,t,r,a,o,i){var s,n,l,p;const d=t.isWebhook,m={operationDefinition:t,parent:r,pointer:t.pointer,description:t.description,externalDocs:t.externalDocs,deprecated:!!t.deprecated,httpVerb:t.httpVerb,operationId:t.operationId,path:t.pathName,isWebhook:d,isCallback:Boolean(null==i?void 0:i.isCallback),isEvent:(null==i?void 0:i.isCallback)||d,name:getOperationName(t),defaultExampleName:t.defaultSampleName,type:"operation",callbackId:null==i?void 0:i.id,href:o,get callbacks(){return Object.keys(t.callbacks||[]).map((i=>{var s;return getCallback(e,i,null===(s=t.callbacks)||void 0===s?void 0:s[i],m.pointer,a,o,r)}))},get responses(){let r=!1;return Object.keys(t.responses||[]).filter((e=>"default"===e||("success"===getStatusCodeType(e)&&(r=!0),isStatusCode(e)))).map((o=>getResponse({parser:e,code:o,defaultAsError:r,infoOrRef:t.responses[o],options:a,isEvent:m.isEvent,operation:m})))},get parameters(){let r=mergeParams(e,t.pathParameters,t.parameters,{pathPointer:JsonPointer.dirName(m.pointer),operationPointer:m.pointer}).map((({paramOrRef:t,pointer:r})=>getField(e,t,r,a,{operation:m,type:"request"})));return a.sortPropsAlphabetically&&(r=sortByField(r,"name")),a.requiredPropsFirst&&(r=sortByRequired(r)),r}};(null==i?void 0:i.isCallback)?(m.security=(t.security||[]).map((t=>getSecurityRequirement({requirement:t,parser:e}))),m.servers=normalizeServers("",t.servers||t.pathServers||[])):(m.id=getOperationId(t,r),m.security=(t.security||e.definition.security||[]).map((t=>getSecurityRequirement({requirement:t,parser:e}))),m.servers=normalizeServers(e.definitionUrl,mergeInMockServer(t.servers||t.pathServers||e.definition.servers||[],a.mockServer))),a.showExtensions&&(m.extensions=extractExtensions(t,a.showExtensions)),m.activeServer=getInitialServerWithVariables(m.servers),m.requestBody=t.requestBody&&getRequestBody({parser:e,infoOrRef:t.requestBody,options:a,operation:m,isEvent:m.isEvent});const c=null===(n=null===(s=m.requestBody)||void 0===s?void 0:s.content)||void 0===n?void 0:n.mediaTypes,[u]=c||[],[g]=Object.keys((null==u?void 0:u.examples)||[]);m.activeExampleName=!1===t.defaultSampleName?void 0:t.defaultSampleName||g;const v=null===(l=m.requestBody)||void 0===l?void 0:l.content;m.payload=(null==v?void 0:v.hasSample)?{lang:"payload",label:"Payload",source:"",requestBodyContent:v}:void 0,m.definitionSamples=t["x-codeSamples"]||t["x-code-samples"]||[],t["x-code-samples"]&&!isCodeSamplesWarningPrinted&&(isCodeSamplesWarningPrinted=!0,console.warn('"x-code-samples" is deprecated. Use "x-codeSamples" instead')),m.hasSamples=(null==v?void 0:v.hasSample)||m.definitionSamples.length>0;const{payloadSampleIdx:S,hideRequestPayloadSample:y}=a;let f=[];if(!d){const t=a.generateCodeSamples||{},r=new Set(m.definitionSamples.map((({lang:e})=>e.toLowerCase())));f=generateCodeSamples((null===(p=t.languages)||void 0===p?void 0:p.filter((({lang:e})=>!r.has(e.toLowerCase()))))||[],t,e.definition,a.generatedPayloadSamplesMaxDepth)}const h=m.definitionSamples.concat(f),b=Math.min(h.length,S);return m.payload&&!y&&h.splice(b,0,m.payload),m.allCodeSamples=h,m.hideTryItPanel=!0===t["x-hideTryItPanel"],m}function generateCodeSamples(e,{skipOptionalParameters:t,withOAuth2Call:r},a,o){return e.map((({lang:e,label:i,options:s})=>({lang:e,label:i,get:i=>getCodeSample(Object.assign(Object.assign({},i),{lang:e,options:Object.assign(Object.assign({},s),{skipOptionalParameters:t,withOAuth2Call:r,spec:a,generatedPayloadSamplesMaxDepth:o})}))})))}function mergeInMockServer(e,t){if(!t)return e;const r={url:t.url,description:t.description};switch(t.position){case"first":return[r,...e];case"last":return[...e,r];case"replace":return[r];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}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
- import{getContentWithLegacyExamples,JsonPointer}from"../utils";import{getMediaContent}from"./mediaContent";export function getRequestBody({parser:e,infoOrRef:t,options:o,isEvent:n,operation:i}){const{resolved:r}=e.deref(t),s=r.description||"",p=!!r.required;let a;const d=!n,u=getContentWithLegacyExamples(r);return void 0!==u&&(a=getMediaContent({parser:e,info:u,isRequestType:d,options:o,data:{operation:i,type:"request",absolutePointer:t.$ref||JsonPointer.join(i.pointer,["requestBody"])}})),{description:s,required:p,content:a}}
1
+ import{getContentWithLegacyExamples,getValueFromMdParsedExtension,JsonPointer}from"../utils";import{getMediaContent}from"./mediaContent";export function getRequestBody({parser:e,infoOrRef:t,options:o,isEvent:n,operation:r}){const{resolved:i}=e.deref(t),s=getValueFromMdParsedExtension(i,"description")||"",a=!!i.required;let d;const p=!n,u=getContentWithLegacyExamples(i);return void 0!==u&&(d=getMediaContent({parser:e,info:u,isRequestType:p,options:o,data:{operation:r,type:"request",absolutePointer:t.$ref||JsonPointer.join(r.pointer,["requestBody"])}})),{description:s,required:a,content:d}}
2
2
  //# sourceMappingURL=request.js.map
@@ -1,2 +1,2 @@
1
- import{getStatusCodeType,getContentWithLegacyExamples,JsonPointer}from"../utils";import{getField}from"./field";import{getMediaContent}from"./mediaContent";export function getResponse({parser:e,code:o,defaultAsError:t,infoOrRef:n,options:s,isEvent:r,operation:i}){var p;const a=!!r,d="all"===s.expandResponses||(null===(p=s.expandResponses)||void 0===p?void 0:p[o])||!1,{resolved:m}=e.deref(n),c={code:o,expanded:d};void 0!==m["x-summary"]?(c.summary=m["x-summary"],c.description=m.description||""):(c.summary=m.description||"",c.description=""),c.type=getStatusCodeType(o,t);const l=m.headers,u=n.$ref||JsonPointer.join((null==i?void 0:i.pointer)||"",["responses",o]);void 0!==l&&(c.headers=Object.keys(l).map((o=>{const t=l[o];return getField(e,Object.assign(Object.assign({},t),{name:o}),JsonPointer.join(u,["headers",o]),s,{operation:i,type:"response",response:c})})));const g=getContentWithLegacyExamples(m);return void 0!==g&&(c.content=getMediaContent({parser:e,info:g,isRequestType:a,options:s,data:{operation:i,type:"response",response:c,absolutePointer:u}})),c}
1
+ import{getStatusCodeType,getContentWithLegacyExamples,JsonPointer,getValueFromMdParsedExtension}from"../utils";import{getField}from"./field";import{getMediaContent}from"./mediaContent";export function getResponse({parser:e,code:o,defaultAsError:t,infoOrRef:n,options:s,isEvent:r,operation:i}){var a;const d=!!r,p="all"===s.expandResponses||(null===(a=s.expandResponses)||void 0===a?void 0:a[o])||!1,{resolved:m}=e.deref(n),l={code:o,expanded:p};void 0!==m["x-summary"]?(l.summary=getValueFromMdParsedExtension(m,"x-summary"),l.description=getValueFromMdParsedExtension(m,"description")||""):(l.summary=getValueFromMdParsedExtension(m,"description")||"",l.description=""),l.type=getStatusCodeType(o,t);const u=m.headers,c=n.$ref||JsonPointer.join((null==i?void 0:i.pointer)||"",["responses",o]);void 0!==u&&(l.headers=Object.keys(u).map((o=>{const t=u[o];return getField(e,Object.assign(Object.assign({},t),{name:o}),JsonPointer.join(c,["headers",o]),s,{operation:i,type:"response",response:l})})));const g=getContentWithLegacyExamples(m);return void 0!==g&&(l.content=getMediaContent({parser:e,info:g,isRequestType:d,options:s,data:{operation:i,type:"response",response:l,absolutePointer:c}})),l}
2
2
  //# sourceMappingURL=response.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,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,c,f,m,y,u,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),j={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: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":g["x-enumDescriptions"],get fields(){if(hasType(j,"object")||hasType(j,"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(j.type)&&!j.type.some((e=>null===e||"null"===e))?j.type=[...j.type,"null"]:Array.isArray(j.type)||null===j.type&&"null"===j.type||(j.type=[j.type,"null"])),j.displayType=Array.isArray(j.type)?j.type.map((e=>null===e?"null":e)).join(" or "):j.type,j.isCircular)return j;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 j.oneOf=t,j.oneOfType=i,j}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 j.oneOf=t,j.discriminatorProp=i,j}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 j.oneOfType="One of",t&&(j.oneOf=t),j.displayType=i,void 0!==g.anyOf&&console.warn(`oneOf and anyOf are not supported on the same level. Skipping anyOf at ${v}`),j}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&&(j.oneOf=t),j.displayType=i,j.oneOfType="Any of",j}if(hasType(j,"array")&&(g.items&&(j.items=getSchema({parser:e,schemaOrRef:g.items,pointer:v+"/items",options:n,baseRefsStack:P,deps:o,absolutePointer:JsonPointer.join(g.absolutePointer||"",["items"])})),j.displayType=g.prefixItems||Array.isArray(g.items)?"items":pluralizeType((null===(p=j.items)||void 0===p?void 0:p.displayType)||j.displayType),j.displayFormat=(null===(d=j.items)||void 0===d?void 0:d.format)||"",j.typePrefix=(null===(c=j.items)||void 0===c?void 0:c.typePrefix)||""+l("arrayOf"),j.title=j.title||(null===(f=j.items)||void 0===f?void 0:f.title)||"",j.isPrimitive=void 0!==(null===(m=j.items)||void 0===m?void 0:m.isPrimitive)?null===(y=j.items)||void 0===y?void 0:y.isPrimitive:j.isPrimitive,void 0===j.example&&void 0!==(null===(u=j.items)||void 0===u?void 0:u.example)&&(j.example=[j.items.example]),(null===(O=j.items)||void 0===O?void 0:O.isPrimitive)&&(j.enum=j.items.enum,j["x-enumDescriptions"]=j.items["x-enumDescriptions"]),Array.isArray(j.type))){const e=j.type.filter((e=>"array"!==e));e.length&&(j.displayType+=` or ${e.join(" or ")}`)}return j.enum.length&&n.sortEnumValuesAlphabetically&&j.enum.sort(),n.showExtensions&&(j.extensions=extractExtensions(g,n.showExtensions)),j}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 c=(null==a?void 0:a["x-explicitMappingOnly"])||!1;0===Object.keys(d).length&&(c=!1);const f={};for(const e in d){const t=d[e];Array.isArray(f[t])?f[t].push(e):f[t]=[e]}const m=c?Object.assign({},f):Object.assign(Object.assign({},p),f);let y=[];for(const e of Object.keys(m)){const t=m[e];if(Array.isArray(t))for(const i of t)y.push({$ref:e,name:i});else y.push({$ref:e,name:t})}const u=Object.keys(d);0!==u.length&&(y=y.sort(((e,t)=>{const i=u.indexOf(e.name),n=u.indexOf(t.name);return i<0&&n<0?e.name.localeCompare(t.name):i<0?1:n<0?-1:i-n})));return{oneOf:y.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),c=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:c,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 c=Object.keys(o).map((a=>{var l;const p=normalizeField(o[a],a,i),c=void 0!==t.required&&t.required.indexOf(a)>-1;return getField(e,{name:t.properties?a:`[${a}]`,required:c,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&&(c=sortByField(c,"name")),n.requiredPropsFirst&&(c=sortByRequired(c,n.sortPropsAlphabetically?void 0:t.required)),c.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)&&c.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"]))),c.push(...buildAdditionalItems({parser:e,schema:p,fieldsCount:c.length,$ref:i,options:n,refsStack:r,deps:s})),c}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){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)}
2
2
  //# sourceMappingURL=schema.js.map
@@ -1,2 +1,2 @@
1
- export function getSecurityRequirement({requirement:e,parser:t}){const n=t.definition.components&&t.definition.components.securitySchemes||{};return{schemes:Object.keys(e||{}).map((r=>{const i=t.deref(n[r]).resolved,o=e[r]||[];if(i)return Object.assign(Object.assign({},i),{id:r,sectionId:r,scopes:o});console.warn(`Non existing security scheme referenced: ${r}. Skipping`)})).filter(Boolean)}}export function getSecurityScheme(e,t,n){if(!(null==e?void 0:e.deref))return{};const{resolved:r}=e.deref(n),i=t,o=r.type,c=r.description||"";let s,a,p,d={};switch(r.type){case"apiKey":s={name:r.name,in:r.in};break;case"http":a={scheme:r.scheme,bearerFormat:r.bearerFormat};break;case"openIdConnect":p={connectUrl:r.openIdConnectUrl};break;case"oauth2":d=r.flows}return{id:t,sectionId:i,type:o,description:c,apiKey:s,http:a,flows:d,openId:p}}export function getSecuritySchemes({parser:e}){var t,n;if(!e)return[];const r=(null===(n=null===(t=e.definition)||void 0===t?void 0:t.components)||void 0===n?void 0:n.securitySchemes)||{};return Object.keys(r).map((t=>getSecurityScheme(e,t,r[t])))}
1
+ import{getValueFromMdParsedExtension}from"../utils";export function getSecurityRequirement({requirement:e,parser:t}){const n=t.definition.components&&t.definition.components.securitySchemes||{};return{schemes:Object.keys(e||{}).map((r=>{const i=t.deref(n[r]).resolved,o=e[r]||[];if(i)return Object.assign(Object.assign({},i),{id:r,sectionId:r,scopes:o});console.warn(`Non existing security scheme referenced: ${r}. Skipping`)})).filter(Boolean)}}export function getSecurityScheme(e,t,n){if(!(null==e?void 0:e.deref))return{};const{resolved:r}=e.deref(n),i=t,o=r.type,s=getValueFromMdParsedExtension(r,"description")||"";let c,a,d,p={};switch(r.type){case"apiKey":c={name:r.name,in:r.in};break;case"http":a={scheme:r.scheme,bearerFormat:r.bearerFormat};break;case"openIdConnect":d={connectUrl:r.openIdConnectUrl};break;case"oauth2":p=r.flows}return{id:t,sectionId:i,type:o,description:s,apiKey:c,http:a,flows:p,openId:d}}export function getSecuritySchemes({parser:e}){var t,n;if(!e)return[];const r=(null===(n=null===(t=e.definition)||void 0===t?void 0:t.components)||void 0===n?void 0:n.securitySchemes)||{};return Object.keys(r).map((t=>getSecurityScheme(e,t,r[t])))}
2
2
  //# sourceMappingURL=security.js.map
@@ -142,9 +142,8 @@ export type OperationModel = {
142
142
  source: string;
143
143
  requestBodyContent: MediaContentModel;
144
144
  };
145
- definitionSamples?: OpenAPIXCodeSample[] | Unstable_ExternalCodeSample[];
145
+ definitionSamples: OpenAPIXCodeSample[] | Unstable_ExternalCodeSample[];
146
146
  hasSamples: boolean;
147
- allCodeSamples: OpenAPIXCodeSample[];
148
147
  parameters: FieldModel[];
149
148
  responses: ResponseModel[];
150
149
  callbacks: CallbackModel[];
@@ -1,5 +1,5 @@
1
1
  import type { Server } from '../types/server';
2
- type OperationStore = {
2
+ export type OperationStore = {
3
3
  activeExampleName?: string;
4
4
  activeOneOf: number;
5
5
  activeServer?: Server;
@@ -8,4 +8,3 @@ type OperationStore = {
8
8
  };
9
9
  };
10
10
  export declare const operationStore: (param: string) => import("recoil").RecoilState<OperationStore>;
11
- export {};
@@ -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){e.info&&this.options.hideInfoDescription&&(e.info.description="")}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:l}=this.deref(e,r,!0),f=e.$ref,a=f||JsonPointer.join(i,[String(t)]),c=this.mergeAllOf(s,f,l,a);if(!c["x-circular-ref"]||!c.allOf)return f&&(null===(n=o["x-parentRefs"])||void 0===n||n.push(...c["x-parentRefs"]||[],f)),{$ref:f,refsStack:pushRef(l,f),schema:c,absolutePointer:a}})).filter((e=>void 0!==e));for(const[e,{schema:r,refsStack:i,absolutePointer:l}]of s.entries()){const{type:s,enum:f,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!==f&&(Array.isArray(f)&&Array.isArray(o.enum)?o.enum=Array.from(new Set([...f,...o.enum])):o.enum=f),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(l,["allOf",String(e),"properties",r]));o.properties[r]=i}}else o.properties[r]=Object.assign(Object.assign({},a[r]),{absolutePointer:JsonPointer.join(l,["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 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}}
2
2
  //# sourceMappingURL=OpenAPIParser.js.map
@@ -1,2 +1,2 @@
1
- import{generateMediaQueries}from"@redocly/theme";import{DEFAULT_SEARCH_MAX_DEPTH,LayoutVariant,WindowReferenceOptions}from"../../constants";import{SearchMode}from"./types";import{argValueToBoolean,argValueToExpandLevel,argValueToInt,argValueToNumber,getWindowReferenceOptions,isUndefined}from"../../utils";import{normalizePath}from"../utils";import{addTrailingSlash,normalizeExpandResponses,normalizePayloadSampleIdx,normalizeShowExtensions,normalizeScrollYOffset}from"./helpers";import{Pagination,SideNavStyle}from"../types";export function normalizeOptions(e,a){var o,n,l,i,r,s,t,d,u,g,p,h;e=Object.assign(Object.assign(Object.assign({},a),e),{allowedMdComponents:Object.assign(Object.assign({},null==e?void 0:e.allowedMdComponents),{components:Object.assign(Object.assign({},null===(o=null==a?void 0:a.allowedMdComponents)||void 0===o?void 0:o.components),null===(n=null==e?void 0:e.allowedMdComponents)||void 0===n?void 0:n.components),tags:Object.assign(Object.assign({},null===(l=null==a?void 0:a.allowedMdComponents)||void 0===l?void 0:l.tags),null===(i=null==e?void 0:e.allowedMdComponents)||void 0===i?void 0:i.tags),nodes:Object.assign(Object.assign(Object.assign({},null===(r=null==a?void 0:a.allowedMdComponents)||void 0===r?void 0:r.nodes),null===(s=null==e?void 0:e.allowedMdComponents)||void 0===s?void 0:s.nodes),{heading:(null===(d=null===(t=null==a?void 0:a.allowedMdComponents)||void 0===t?void 0:t.nodes)||void 0===d?void 0:d.heading)||(null===(u=null==e?void 0:e.allowedMdComponents)||void 0===u?void 0:u.nodes.heading)})})});const m=Array.isArray(e.ignoreNamedSchemas)?e.ignoreNamedSchemas:null===(g=e.ignoreNamedSchemas)||void 0===g?void 0:g.split(",").map((e=>e.trim())),c={downloadDefinitionUrl:e.downloadDefinitionUrl,schemaDefinitionsTagName:e.schemaDefinitionsTagName,corsProxyUrl:addTrailingSlash(e.corsProxyUrl),authCorsProxyUrl:addTrailingSlash(e.authCorsProxyUrl),ctrlFHijack:argValueToBoolean(e.ctrlFHijack,!0),disableDeepLinks:argValueToBoolean(e.disableDeepLinks,!1),disableTryItRequestUrlEncoding:argValueToBoolean(e.disableTryItRequestUrlEncoding,!1),minCharacterLengthToInitSearch:argValueToNumber(e.minCharacterLengthToInitSearch,3),disableSearch:argValueToBoolean(e.disableSearch,!1),disableSidebar:argValueToBoolean(e.disableSidebar,!1),expandResponses:normalizeExpandResponses(e.expandResponses),jsonSampleExpandLevel:argValueToExpandLevel(e.jsonSampleExpandLevel,2),expandDefaultServerVariables:argValueToBoolean(e.expandDefaultServerVariables,!1),expandDefaultRequest:argValueToBoolean(e.expandDefaultRequest,!0),expandDefaultResponse:argValueToBoolean(e.expandDefaultResponse,!0),expandSingleSchemaField:argValueToBoolean(e.expandSingleSchemaField,!1),generatedPayloadSamplesMaxDepth:argValueToInt(e.generatedPayloadSamplesMaxDepth,8),hideDownloadButton:void 0===e.hideDownloadButton?null:argValueToBoolean(e.hideDownloadButton),hideInfoDescription:argValueToBoolean(e.hideInfoDescription),hideHostname:argValueToBoolean(e.hideHostname,!1),hideInfoSection:argValueToBoolean(e.hideInfoSection,!1),hideLoading:argValueToBoolean(e.hideLoading,!1),hideLogo:argValueToBoolean(e.hideLogo,!1),hideFab:argValueToBoolean(e.hideFab,!1),hideRequestPayloadSample:argValueToBoolean(e.hideRequestPayloadSample,!1),hideRightPanel:argValueToBoolean(e.hideRightPanel,!1),hideSchemaPattern:argValueToBoolean(e.hideSchemaPattern,!1),hideOneOfDescription:argValueToBoolean(e.hideOneOfDescription,!1),hideSchemaTitles:argValueToBoolean(e.hideSchemaTitles,!1),hideSingleRequestSampleTab:argValueToBoolean(e.hideSingleRequestSampleTab,!1),hideTryItPanel:argValueToBoolean(e.hideTryItPanel,!1),showObjectSchemaExamples:argValueToBoolean(e.showObjectSchemaExamples,!1),showAccessMode:argValueToBoolean(e.showAccessMode,!1),maxDisplayedEnumValues:argValueToNumber(e.maxDisplayedEnumValues),maxResponseHeadersToShowInTryIt:argValueToNumber(e.maxResponseHeadersToShowInTryIt,0),menuToggle:argValueToBoolean(e.menuToggle,!0),mockServer:(null===(p=e.mockServer)||void 0===p?void 0:p.url)?{url:e.mockServer.url,position:e.mockServer.position||"first",description:e.mockServer.description||"Mock server"}:void 0,nativeScrollbars:argValueToBoolean(e.nativeScrollbars,!1),oAuth2RedirectURI:e.oAuth2RedirectURI||null,onlyRequiredInSamples:argValueToBoolean(e.onlyRequiredInSamples,!1),pathInMiddlePanel:argValueToBoolean(e.pathInMiddlePanel,!1),onDeepLinkClick:e.onDeepLinkClick||getWindowReferenceOptions(WindowReferenceOptions.ON_DEEP_LINK_CLICK),requestInterceptor:e.requestInterceptor||getWindowReferenceOptions(WindowReferenceOptions.REQUEST_INTERCEPTOR),routingBasePath:isUndefined(e.enableRouter)?"":e.routingBasePath&&normalizePath(e.routingBasePath)||"",schemaExpansionLevel:argValueToExpandLevel(e.schemaExpansionLevel),pagination:e.pagination||Pagination.None,payloadSampleIdx:normalizePayloadSampleIdx(e.payloadSampleIdx,0),requiredPropsFirst:argValueToBoolean(e.requiredPropsFirst,!1),markdownHeadingsAnchorLevel:argValueToNumber(e.markdownHeadingsAnchorLevel,2),samplesTabsMaxCount:argValueToInt(e.samplesTabsMaxCount,5),scrollYOffset:normalizeScrollYOffset(e.scrollYOffset),searchAutoExpand:argValueToBoolean(e.searchAutoExpand,!0),searchFieldLevelBoost:argValueToNumber(e.searchFieldLevelBoost,.95),searchMaxDepth:argValueToNumber(e.searchMaxDepth,DEFAULT_SEARCH_MAX_DEPTH),searchOperationTitleBoost:argValueToNumber(e.searchOperationTitleBoost,4),searchTagTitleBoost:argValueToNumber(e.searchTagTitleBoost,8),sendXUserAgentInTryIt:argValueToBoolean(e.sendXUserAgentInTryIt,!1),showWebhookVerb:argValueToBoolean(e.showWebhookVerb,!1),showChangeLayoutButton:argValueToBoolean(e.showChangeLayoutButton,!0),showConsole:null!=e.hideTryItPanel?!e.hideTryItPanel:null===(h=e.showConsole)||void 0===h||h,showExtensions:normalizeShowExtensions(e.showExtensions),preserveOriginalExtensionsName:argValueToBoolean(e.preserveOriginalExtensionsName,!1),showNextButton:argValueToBoolean(e.showNextButton,!0),showRightPanelToggle:argValueToBoolean(e.showRightPanelToggle,!0),showSecuritySchemeType:argValueToBoolean(e.showSecuritySchemeType,!0),hideSecuritySection:argValueToBoolean(e.hideSecuritySection,!1),simpleOneOfTypeLabel:argValueToBoolean(e.simpleOneOfTypeLabel,!1),sortEnumValuesAlphabetically:argValueToBoolean(e.sortEnumValuesAlphabetically),sortOperationsAlphabetically:argValueToBoolean(e.sortOperationsAlphabetically),sortPropsAlphabetically:argValueToBoolean(e.sortPropsAlphabetically,!1),sortTagsAlphabetically:argValueToBoolean(e.sortTagsAlphabetically,!1),unstable_ignoreMimeParameters:argValueToBoolean(e.unstable_ignoreMimeParameters,!1),untrustedDefinition:argValueToBoolean(e.untrustedDefinition,!1),enumSkipQuotes:argValueToBoolean(e.enumSkipQuotes),whiteLabel:argValueToBoolean(e.whiteLabel),skipBundleAndConvert:argValueToBoolean(e.skipBundleAndConvert),disablePaginationLoadingAnimation:argValueToBoolean(!!e.disablePaginationLoadingAnimation),disableErrorBoundary:argValueToBoolean(e.disableErrorBoundary),ignoreNamedSchemas:new Set(m),mediaQueries:generateMediaQueries((null==e?void 0:e.breakpoints)||{}),showAtBreakpoint:e.showAtBreakpoint,allowedMdComponents:null==e?void 0:e.allowedMdComponents,defaultSampleLanguage:e.defaultSampleLanguage||"",generateCodeSamples:e.generateCodeSamples||{languages:[]},layout:e.layout||LayoutVariant.THREE_PANEL,sideNavStyle:e.sideNavStyle||SideNavStyle.SummaryOnly,searchMode:e.searchMode||SearchMode.Default,sidebarLinks:e.sidebarLinks||{},events:e.events||{},hooks:e.hooks||getWindowReferenceOptions(WindowReferenceOptions.HOOKS)||{},unstable_tryItButtonOverride:e.unstable_tryItButtonOverride||null,unstable_externalCodeSamples:e.unstable_externalCodeSamples||[],markdownItemsPagination:e.markdownItemsPagination||"none"};return null!=e.showConsole&&console.warn('"showConsole" option is deprecated. Please, use "hideTryItPanel" instead.'),c.disablePaginationLoadingAnimation=!!e.disablePaginationLoadingAnimation||c.pagination===Pagination.None,c}
1
+ import{generateMediaQueries}from"@redocly/theme";import{DEFAULT_SEARCH_MAX_DEPTH,LayoutVariant,WindowReferenceOptions}from"../../constants";import{SearchMode}from"./types";import{argValueToBoolean,argValueToExpandLevel,argValueToInt,argValueToNumber,getWindowReferenceOptions,isUndefined}from"../../utils";import{normalizePath}from"../utils";import{addTrailingSlash,normalizeExpandResponses,normalizePayloadSampleIdx,normalizeShowExtensions,normalizeScrollYOffset}from"./helpers";import{Pagination,SideNavStyle}from"../types";export function normalizeOptions(e,a){var o,n,l,i,r,s,t,d,u,g,p,h;e=Object.assign(Object.assign(Object.assign({},a),e),{allowedMdComponents:Object.assign(Object.assign({},null==e?void 0:e.allowedMdComponents),{components:Object.assign(Object.assign({},null===(o=null==a?void 0:a.allowedMdComponents)||void 0===o?void 0:o.components),null===(n=null==e?void 0:e.allowedMdComponents)||void 0===n?void 0:n.components),tags:Object.assign(Object.assign({},null===(l=null==a?void 0:a.allowedMdComponents)||void 0===l?void 0:l.tags),null===(i=null==e?void 0:e.allowedMdComponents)||void 0===i?void 0:i.tags),nodes:Object.assign(Object.assign(Object.assign({},null===(r=null==a?void 0:a.allowedMdComponents)||void 0===r?void 0:r.nodes),null===(s=null==e?void 0:e.allowedMdComponents)||void 0===s?void 0:s.nodes),{heading:(null===(d=null===(t=null==a?void 0:a.allowedMdComponents)||void 0===t?void 0:t.nodes)||void 0===d?void 0:d.heading)||(null===(u=null==e?void 0:e.allowedMdComponents)||void 0===u?void 0:u.nodes.heading)})})});const m=Array.isArray(e.ignoreNamedSchemas)?e.ignoreNamedSchemas:null===(g=e.ignoreNamedSchemas)||void 0===g?void 0:g.split(",").map((e=>e.trim())),c={downloadDefinitionUrl:e.downloadDefinitionUrl,schemaDefinitionsTagName:e.schemaDefinitionsTagName,corsProxyUrl:addTrailingSlash(e.corsProxyUrl),authCorsProxyUrl:addTrailingSlash(e.authCorsProxyUrl),ctrlFHijack:argValueToBoolean(e.ctrlFHijack,!0),disableDeepLinks:argValueToBoolean(e.disableDeepLinks,!1),disableTryItRequestUrlEncoding:argValueToBoolean(e.disableTryItRequestUrlEncoding,!1),minCharacterLengthToInitSearch:argValueToNumber(e.minCharacterLengthToInitSearch,3),disableSearch:argValueToBoolean(e.disableSearch,!1),disableSidebar:argValueToBoolean(e.disableSidebar,!1),expandResponses:normalizeExpandResponses(e.expandResponses),jsonSampleExpandLevel:argValueToExpandLevel(e.jsonSampleExpandLevel,2),expandDefaultServerVariables:argValueToBoolean(e.expandDefaultServerVariables,!1),expandDefaultRequest:argValueToBoolean(e.expandDefaultRequest,!0),expandDefaultResponse:argValueToBoolean(e.expandDefaultResponse,!0),expandSingleSchemaField:argValueToBoolean(e.expandSingleSchemaField,!1),generatedPayloadSamplesMaxDepth:argValueToInt(e.generatedPayloadSamplesMaxDepth,8),hideDownloadButton:void 0===e.hideDownloadButton?null:argValueToBoolean(e.hideDownloadButton),hideInfoDescription:argValueToBoolean(e.hideInfoDescription),hideHostname:argValueToBoolean(e.hideHostname,!1),hideInfoSection:argValueToBoolean(e.hideInfoSection,!1),hideLoading:argValueToBoolean(e.hideLoading,!1),hideLogo:argValueToBoolean(e.hideLogo,!1),hideFab:argValueToBoolean(e.hideFab,!1),hideRequestPayloadSample:argValueToBoolean(e.hideRequestPayloadSample,!1),hideRightPanel:argValueToBoolean(e.hideRightPanel,!1),hideSchemaPattern:argValueToBoolean(e.hideSchemaPattern,!1),hideOneOfDescription:argValueToBoolean(e.hideOneOfDescription,!1),hideSchemaTitles:argValueToBoolean(e.hideSchemaTitles,!1),hideSingleRequestSampleTab:argValueToBoolean(e.hideSingleRequestSampleTab,!1),hideTryItPanel:argValueToBoolean(e.hideTryItPanel,!1),showObjectSchemaExamples:argValueToBoolean(e.showObjectSchemaExamples,!1),showAccessMode:argValueToBoolean(e.showAccessMode,!1),maxDisplayedEnumValues:argValueToNumber(e.maxDisplayedEnumValues),maxResponseHeadersToShowInTryIt:argValueToNumber(e.maxResponseHeadersToShowInTryIt,0),menuToggle:argValueToBoolean(e.menuToggle,!0),mockServer:(null===(p=e.mockServer)||void 0===p?void 0:p.url)?{url:e.mockServer.url,position:e.mockServer.position||"first",description:e.mockServer.description||"Mock server"}:void 0,nativeScrollbars:argValueToBoolean(e.nativeScrollbars,!1),oAuth2RedirectURI:e.oAuth2RedirectURI||null,onlyRequiredInSamples:argValueToBoolean(e.onlyRequiredInSamples,!1),pathInMiddlePanel:argValueToBoolean(e.pathInMiddlePanel,!1),onDeepLinkClick:e.onDeepLinkClick||getWindowReferenceOptions(WindowReferenceOptions.ON_DEEP_LINK_CLICK),requestInterceptor:e.requestInterceptor||getWindowReferenceOptions(WindowReferenceOptions.REQUEST_INTERCEPTOR),routingBasePath:isUndefined(e.enableRouter)?"":e.routingBasePath&&normalizePath(e.routingBasePath)||"",schemaExpansionLevel:argValueToExpandLevel(e.schemaExpansionLevel),pagination:e.pagination||Pagination.None,feedback:e.feedback||{hide:!0},payloadSampleIdx:normalizePayloadSampleIdx(e.payloadSampleIdx,0),requiredPropsFirst:argValueToBoolean(e.requiredPropsFirst,!1),markdownHeadingsAnchorLevel:argValueToNumber(e.markdownHeadingsAnchorLevel,2),samplesTabsMaxCount:argValueToInt(e.samplesTabsMaxCount,5),scrollYOffset:normalizeScrollYOffset(e.scrollYOffset),searchAutoExpand:argValueToBoolean(e.searchAutoExpand,!0),searchFieldLevelBoost:argValueToNumber(e.searchFieldLevelBoost,.95),searchMaxDepth:argValueToNumber(e.searchMaxDepth,DEFAULT_SEARCH_MAX_DEPTH),searchOperationTitleBoost:argValueToNumber(e.searchOperationTitleBoost,4),searchTagTitleBoost:argValueToNumber(e.searchTagTitleBoost,8),sendXUserAgentInTryIt:argValueToBoolean(e.sendXUserAgentInTryIt,!1),showWebhookVerb:argValueToBoolean(e.showWebhookVerb,!1),showChangeLayoutButton:argValueToBoolean(e.showChangeLayoutButton,!0),showConsole:null!=e.hideTryItPanel?!e.hideTryItPanel:null===(h=e.showConsole)||void 0===h||h,showExtensions:normalizeShowExtensions(e.showExtensions),preserveOriginalExtensionsName:argValueToBoolean(e.preserveOriginalExtensionsName,!1),showNextButton:argValueToBoolean(e.showNextButton,!0),showRightPanelToggle:argValueToBoolean(e.showRightPanelToggle,!0),showSecuritySchemeType:argValueToBoolean(e.showSecuritySchemeType,!0),hideSecuritySection:argValueToBoolean(e.hideSecuritySection,!1),simpleOneOfTypeLabel:argValueToBoolean(e.simpleOneOfTypeLabel,!1),sortEnumValuesAlphabetically:argValueToBoolean(e.sortEnumValuesAlphabetically),sortOperationsAlphabetically:argValueToBoolean(e.sortOperationsAlphabetically),sortPropsAlphabetically:argValueToBoolean(e.sortPropsAlphabetically,!1),sortTagsAlphabetically:argValueToBoolean(e.sortTagsAlphabetically,!1),unstable_ignoreMimeParameters:argValueToBoolean(e.unstable_ignoreMimeParameters,!1),untrustedDefinition:argValueToBoolean(e.untrustedDefinition,!1),enumSkipQuotes:argValueToBoolean(e.enumSkipQuotes),whiteLabel:argValueToBoolean(e.whiteLabel),skipBundleAndConvert:argValueToBoolean(e.skipBundleAndConvert),disablePaginationLoadingAnimation:argValueToBoolean(!!e.disablePaginationLoadingAnimation),disableErrorBoundary:argValueToBoolean(e.disableErrorBoundary),ignoreNamedSchemas:new Set(m),mediaQueries:generateMediaQueries((null==e?void 0:e.breakpoints)||{}),showAtBreakpoint:e.showAtBreakpoint,allowedMdComponents:null==e?void 0:e.allowedMdComponents,defaultSampleLanguage:e.defaultSampleLanguage||"",generateCodeSamples:e.generateCodeSamples||{languages:[]},layout:e.layout||LayoutVariant.THREE_PANEL,sideNavStyle:e.sideNavStyle||SideNavStyle.SummaryOnly,searchMode:e.searchMode||SearchMode.Default,sidebarLinks:e.sidebarLinks||{},events:e.events||{},hooks:e.hooks||getWindowReferenceOptions(WindowReferenceOptions.HOOKS)||{},unstable_tryItButtonOverride:e.unstable_tryItButtonOverride||null,unstable_externalCodeSamples:e.unstable_externalCodeSamples||[],markdownItemsPagination:e.markdownItemsPagination||"none"};return null!=e.showConsole&&console.warn('"showConsole" option is deprecated. Please, use "hideTryItPanel" instead.'),c.disablePaginationLoadingAnimation=!!e.disablePaginationLoadingAnimation||c.pagination===Pagination.None,c}
2
2
  //# sourceMappingURL=normalizeOptions.js.map
@@ -131,6 +131,7 @@ export interface RawOptions {
131
131
  functions?: Record<string, ConfigFunction>;
132
132
  };
133
133
  enableRouter?: boolean;
134
+ feedback?: Record<string, any>;
134
135
  }
135
136
  export interface DefaultOptions {
136
137
  mediaQueries?: MediaQueries;
@@ -269,4 +270,5 @@ export interface Options {
269
270
  /** @deprecated */
270
271
  unstable_externalDescription?: string;
271
272
  searchMaxDepth: number;
273
+ feedback: Record<string, any>;
272
274
  }
@@ -1,2 +1,2 @@
1
- import{parse as parseQueryString,stringify as stringifyQueryString}from"query-string";import*as Sampler from"openapi-sampler";import merge from"deepmerge";import{getRecoil}from"recoil-nexus";import{deleteEmptyArrayItem,isArrayOfObjects,serializeParameterValue,getSecurityDetails,getParameterValue}from"../../utils";import{normalizeMimeType,arrayMergeStrategy}from"../utils";import{MediaTypes}from"../../constants";import{l}from"../labels";import{HTTPSnippet}from"./httpsnippet";import StringUtility from"./httpsnippet/helpers/string-utility";import{getActiveMediaType}from"../../models";import{operationStore}from"../../recoil/operation";function mapOperationToHAR(e,{exampleName:t="",skipOptionalParameters:a=!1,withOAuth2Call:r=!1,spec:i,generatedPayloadSamplesMaxDepth:s=8,pathParams:n={},properties:o={}}){var l,u,p;const{securityHeaders:c,securityCookies:d,securityQueries:m,securityOAuth2ExtraCalls:h,basicAuth:y}=getSecurityData(null===(l=e.security)||void 0===l?void 0:l[0],r),{activeServer:g,requestValues:f}=getRecoil(operationStore(e.pointer)),v=(null===(u=null==e?void 0:e.requestBody)||void 0===u?void 0:u.content)&&getActiveMediaType(e.requestBody.content),O={skipNonRequired:a,skipReadOnly:!0,maxSampleDepth:s},T={path:null==f?void 0:f.path,cookie:null==f?void 0:f.cookie,header:null==f?void 0:f.header,query:null==f?void 0:f.query,body:null==f?void 0:f.body};let S=!1;const C=e.parameters.filter((e=>"header"===e.in)).filter((e=>!(a&&!e.required))).map((e=>{var t;return{name:e.name,value:(null===(t=T.header)||void 0===t?void 0:t[e.name])||getParameterValue("header",e.name)||serializeParameterValue(e,Sampler.sample(e.schema.rawSchema,O,i))}})).map((e=>((null==v?void 0:v.name)&&"content-type"===e.name.toLowerCase()&&(S=!0,e.value=v.name),e))).concat(c);!S&&(null==v?void 0:v.name)&&C.unshift({name:"Content-Type",value:null==v?void 0:v.name});const b=e.parameters.filter((e=>"cookie"===e.in)).filter((e=>!(a&&!e.required))).map((e=>parseQueryString(serializeParameterValue(e,Sampler.sample(e.schema.rawSchema,O,i))))).reduce(((e,t)=>{var a;for(const[r,i]of Object.entries(t))e.push({name:r,value:String((null===(a=T.cookie)||void 0===a?void 0:a[r])||i)});return e}),[]).concat(d),E=e.parameters.filter((e=>"query"===e.in)).filter((e=>!(a&&!e.required))).map((e=>parseQueryString(serializeParameterValue(e,Sampler.sample(e.schema.rawSchema,O,i))))).reduce(((e,t)=>{var a,r,i;for(const[s,n]of Object.entries(t))e.push({name:s,value:isArrayOfObjects(null===(a=T.query)||void 0===a?void 0:a[s])&&JSON.stringify(deleteEmptyArrayItem(null===(r=T.query)||void 0===r?void 0:r[s]))||String((null===(i=T.query)||void 0===i?void 0:i[s])||n)});return e}),[]).concat(m),A=`${null==g?void 0:g.url.replace(/\/$/,"")}/${e.path.replace(/^\//,"")}`,_=e.parameters.filter((e=>"path"===e.in)).reduce(((e,t)=>{var a;const{in:r,name:i}=t;return e[i]=(null===(a=T.path)||void 0===a?void 0:a[i])||n[i]||getParameterValue(r,i),e}),{}),P=null===(p=null==v?void 0:v.examples)||void 0===p?void 0:p[t],R=(null==v?void 0:v.examples)||{},[w]=Object.values(R),D=T.body||(null==P?void 0:P.value)||(null==w?void 0:w.value)||(null==v?void 0:v.schema)&&Sampler.sample(null==v?void 0:v.schema.rawSchema,O,i),j=null==v?void 0:v.name.toLowerCase();let k="",M=[];switch(normalizeMimeType(j)){case MediaTypes.JSON:k=JSON.stringify(getDataRequest(D,o));break;case MediaTypes.URL_ENCODED:case MediaTypes.MULTIPART:k=stringifyQueryString(getDataRequest(D,o)),M=objectToHarParams(getDataRequest(D,o));break;default:k=String(D||"")}const H=k?{mimeType:(null==v?void 0:v.name)||MediaTypes.OCTET_STREAM,text:k,params:M}:void 0,q=e.responses.map((e=>e.code));return{method:e.httpVerb,url:A,httpVersion:"HTTP/1.1",cookies:b,headers:C,queryString:E,postData:H,headersSize:-1,bodySize:-1,securityOAuth2ExtraCalls:h,basicAuth:y,pathParameters:_,serverVariables:(null==g?void 0:g.variables)||e.activeServer.variables,allResponseCodes:q}}const defaultOptions={withImports:!0,withComments:!1},langToSnippetConfig={curl:{code:"shell",defaultTarget:"curl",defaultOptions:Object.assign(Object.assign({},defaultOptions),{short:!0})},JavaScript:{code:"javascript",defaultTarget:"fetch",defaultOptions:Object.assign(Object.assign({},defaultOptions),{withImports:!1})},"Node.js":{code:"node",defaultTarget:"fetch",defaultOptions:Object.assign({},defaultOptions)},Python:{code:"python",defaultTarget:"requests",defaultOptions:Object.assign({},defaultOptions)},"Java8+Apache":{code:"java8",defaultTarget:"apachehttp",defaultOptions:Object.assign({},defaultOptions)},Java:{code:"java",defaultTarget:"httpclient",defaultOptions:Object.assign({},defaultOptions)},"C#":{code:"csharp",defaultTarget:"httpclient",defaultOptions:Object.assign({},defaultOptions)},Go:{code:"go",defaultTarget:"http.DefaultClient",defaultOptions:Object.assign({},defaultOptions)},PHP:{code:"php",defaultTarget:"curl",defaultOptions:Object.assign({},defaultOptions)},Ruby:{code:"ruby",defaultTarget:"net::http",defaultOptions:Object.assign({},defaultOptions)},R:{code:"r",defaultTarget:"httr",defaultOptions:Object.assign({},defaultOptions)}};export function getCodeSample({lang:e,operation:t,exampleName:a,pathParams:r,properties:i,options:s={}}){try{const{skipOptionalParameters:n,withOAuth2Call:o,spec:l,generatedPayloadSamplesMaxDepth:u}=s,p=mapOperationToHAR(t,{exampleName:a,pathParams:r,properties:i,skipOptionalParameters:n,withOAuth2Call:o,spec:l,generatedPayloadSamplesMaxDepth:u}),c=new HTTPSnippet(p);return langToSnippetConfig[e]?c.convert(langToSnippetConfig[e].code,langToSnippetConfig[e].defaultTarget,Object.assign(Object.assign({},langToSnippetConfig[e].defaultOptions),s)):"Language is not supported."}catch(e){return console.error(e),"Failed to generate code sample."}}function getSecurityData(e,t){var a,r,i,s;const n={securityHeaders:[],securityCookies:[],securityQueries:[],securityOAuth2ExtraCalls:[],basicAuth:void 0};for(const o of(null==e?void 0:e.schemes)||[]){const e=getSecurityDetails(o.id);switch(o.type){case"openIdConnect":null===(a=n.securityHeaders)||void 0===a||a.push({name:"Authorization",value:"Bearer <YOUR_TOKEN_HERE>"});break;case"oauth2":{const a=e.token?`${e.token.token_type||"Bearer"} ${e.token.access_token}`:"Bearer <YOUR_TOKEN_HERE>";o.flows.clientCredentials&&t?n.securityOAuth2ExtraCalls.push(getOAuth2ClientCredsCallHar(o.flows.clientCredentials,o.scopes,e)):o.flows.password&&t&&n.securityOAuth2ExtraCalls.push(getOAuth2PasswordCallHar(o.flows.password,o.scopes,e)),null===(r=n.securityHeaders)||void 0===r||r.push({name:"Authorization",value:a});break}case"apiKey":{const t=e.raw||"YOUR_API_KEY_HERE";"header"===o.in&&(null===(i=n.securityHeaders)||void 0===i||i.push({name:o.name,value:t})),"cookie"===o.in&&n.securityCookies.push({name:o.name,value:t}),"query"===o.in&&n.securityQueries.push({name:o.name,value:t});break}case"http":"basic"===o.scheme?n.basicAuth={username:e.username||`<${StringUtility.toSnakeCase(l("tryItAuthBasicUsername"))}>`,password:e.password||`<${StringUtility.toSnakeCase(l("tryItAuthBasicPassword"))}>`}:null===(s=n.securityHeaders)||void 0===s||s.push({name:"Authorization",value:`${capitalizeFirst(o.scheme||"bearer")} <YOUR_${o.bearerFormat||"TOKEN"}_HERE>`})}}return n}function getOAuth2PasswordCallHar(e,t,a){return{method:"POST",url:e.tokenUrl,httpVersion:"HTTP/1.1",headers:[{name:"Content-Type",value:MediaTypes.URL_ENCODED},{name:"Accept",value:MediaTypes.JSON}],queryString:[],postData:{mimeType:MediaTypes.URL_ENCODED,text:"",params:[{name:"grant_type",value:"password"},{name:"client_id",value:a.client_id||"YOUR_CLIENT_ID"},{name:"client_secret",value:a.client_secret||"YOUR_CLIENT_SECRET"},{name:"username",value:a.username||"<username>"},{name:"password",value:a.password||"<password>"},t.length?{name:"scope",value:t.join(" ")}:void 0].filter(isDefined)},cookies:[],headersSize:-1,bodySize:-1,securityOAuth2ExtraCalls:[]}}function getOAuth2ClientCredsCallHar(e,t,a){return{method:"POST",url:e.tokenUrl,httpVersion:"HTTP/1.1",headers:[{name:"Content-Type",value:MediaTypes.URL_ENCODED},{name:"Accept",value:MediaTypes.JSON}],queryString:[],postData:{mimeType:MediaTypes.URL_ENCODED,text:"",params:[{name:"grant_type",value:"client_credentials"},{name:"client_id",value:a.client_id||"YOUR_CLIENT_ID"},{name:"client_secret",value:a.client_secret||"YOUR_CLIENT_SECRET"},t.length?{name:"scope",value:t.join(" ")}:void 0].filter(isDefined)},cookies:[],headersSize:-1,bodySize:-1,securityOAuth2ExtraCalls:[]}}function getDataRequest(e,t){if(e){if("object"==typeof e)return merge(e,t,{arrayMerge:arrayMergeStrategy});try{return merge(JSON.parse(e),t,{arrayMerge:arrayMergeStrategy})}catch(e){return!1}}return!1}function objectToHarParams(e){const t=[];for(const[a,r]of Object.entries(e))t.push({name:a,value:String(r)});return t}export function isDefined(e){return void 0!==e}export function capitalizeFirst(e){return e.charAt(0).toUpperCase()+e.slice(1)}
1
+ import{parse as parseQueryString,stringify as stringifyQueryString}from"query-string";import*as Sampler from"openapi-sampler";import merge from"deepmerge";import{deleteEmptyArrayItem,isArrayOfObjects,serializeParameterValue,getSecurityDetails,getParameterValue}from"../../utils";import{normalizeMimeType,arrayMergeStrategy}from"../utils";import{MediaTypes}from"../../constants";import{l}from"../labels";import{HTTPSnippet}from"./httpsnippet";import StringUtility from"./httpsnippet/helpers/string-utility";import{getActiveMediaType}from"../../models";function mapOperationToHAR(e,{exampleName:t="",skipOptionalParameters:a=!1,withOAuth2Call:r=!1,spec:i,generatedPayloadSamplesMaxDepth:s=8,pathParams:n={},properties:o={}},{activeServer:l,requestValues:u}){var p,c,d;const{securityHeaders:m,securityCookies:h,securityQueries:y,securityOAuth2ExtraCalls:g,basicAuth:f}=getSecurityData(null===(p=e.security)||void 0===p?void 0:p[0],r),v=(null===(c=null==e?void 0:e.requestBody)||void 0===c?void 0:c.content)&&getActiveMediaType(e.requestBody.content),O={skipNonRequired:a,skipReadOnly:!0,maxSampleDepth:s},T={path:null==u?void 0:u.path,cookie:null==u?void 0:u.cookie,header:null==u?void 0:u.header,query:null==u?void 0:u.query,body:null==u?void 0:u.body};let S=!1;const C=e.parameters.filter((e=>"header"===e.in)).filter((e=>!(a&&!e.required))).map((e=>{var t;return{name:e.name,value:(null===(t=T.header)||void 0===t?void 0:t[e.name])||getParameterValue("header",e.name)||serializeParameterValue(e,Sampler.sample(e.schema.rawSchema,O,i))}})).map((e=>((null==v?void 0:v.name)&&"content-type"===e.name.toLowerCase()&&(S=!0,e.value=v.name),e))).concat(m);!S&&(null==v?void 0:v.name)&&C.unshift({name:"Content-Type",value:null==v?void 0:v.name});const b=e.parameters.filter((e=>"cookie"===e.in)).filter((e=>!(a&&!e.required))).map((e=>parseQueryString(serializeParameterValue(e,Sampler.sample(e.schema.rawSchema,O,i))))).reduce(((e,t)=>{var a;for(const[r,i]of Object.entries(t))e.push({name:r,value:String((null===(a=T.cookie)||void 0===a?void 0:a[r])||i)});return e}),[]).concat(h),E=e.parameters.filter((e=>"query"===e.in)).filter((e=>!(a&&!e.required))).map((e=>parseQueryString(serializeParameterValue(e,Sampler.sample(e.schema.rawSchema,O,i))))).reduce(((e,t)=>{var a,r,i;for(const[s,n]of Object.entries(t))e.push({name:s,value:isArrayOfObjects(null===(a=T.query)||void 0===a?void 0:a[s])&&JSON.stringify(deleteEmptyArrayItem(null===(r=T.query)||void 0===r?void 0:r[s]))||String((null===(i=T.query)||void 0===i?void 0:i[s])||n)});return e}),[]).concat(y),A=`${null==l?void 0:l.url.replace(/\/$/,"")}/${e.path.replace(/^\//,"")}`,_=e.parameters.filter((e=>"path"===e.in)).reduce(((e,t)=>{var a;const{in:r,name:i}=t;return e[i]=(null===(a=T.path)||void 0===a?void 0:a[i])||n[i]||getParameterValue(r,i),e}),{}),P=null===(d=null==v?void 0:v.examples)||void 0===d?void 0:d[t],R=(null==v?void 0:v.examples)||{},[w]=Object.values(R),D=T.body||(null==P?void 0:P.value)||(null==w?void 0:w.value)||(null==v?void 0:v.schema)&&Sampler.sample(null==v?void 0:v.schema.rawSchema,O,i),j=null==v?void 0:v.name.toLowerCase();let k="",M=[];switch(normalizeMimeType(j)){case MediaTypes.JSON:k=JSON.stringify(getDataRequest(D,o));break;case MediaTypes.URL_ENCODED:case MediaTypes.MULTIPART:k=stringifyQueryString(getDataRequest(D,o)),M=objectToHarParams(getDataRequest(D,o));break;default:k=String(D||"")}const H=k?{mimeType:(null==v?void 0:v.name)||MediaTypes.OCTET_STREAM,text:k,params:M}:void 0,q=e.responses.map((e=>e.code));return{method:e.httpVerb,url:A,httpVersion:"HTTP/1.1",cookies:b,headers:C,queryString:E,postData:H,headersSize:-1,bodySize:-1,securityOAuth2ExtraCalls:g,basicAuth:f,pathParameters:_,serverVariables:(null==l?void 0:l.variables)||e.activeServer.variables,allResponseCodes:q}}const defaultOptions={withImports:!0,withComments:!1},langToSnippetConfig={curl:{code:"shell",defaultTarget:"curl",defaultOptions:Object.assign(Object.assign({},defaultOptions),{short:!0})},JavaScript:{code:"javascript",defaultTarget:"fetch",defaultOptions:Object.assign(Object.assign({},defaultOptions),{withImports:!1})},"Node.js":{code:"node",defaultTarget:"fetch",defaultOptions:Object.assign({},defaultOptions)},Python:{code:"python",defaultTarget:"requests",defaultOptions:Object.assign({},defaultOptions)},"Java8+Apache":{code:"java8",defaultTarget:"apachehttp",defaultOptions:Object.assign({},defaultOptions)},Java:{code:"java",defaultTarget:"httpclient",defaultOptions:Object.assign({},defaultOptions)},"C#":{code:"csharp",defaultTarget:"httpclient",defaultOptions:Object.assign({},defaultOptions)},Go:{code:"go",defaultTarget:"http.DefaultClient",defaultOptions:Object.assign({},defaultOptions)},PHP:{code:"php",defaultTarget:"curl",defaultOptions:Object.assign({},defaultOptions)},Ruby:{code:"ruby",defaultTarget:"net::http",defaultOptions:Object.assign({},defaultOptions)},R:{code:"r",defaultTarget:"httr",defaultOptions:Object.assign({},defaultOptions)}};export function getCodeSample({lang:e,operation:t,exampleName:a,pathParams:r,properties:i,options:s={}}){try{const{skipOptionalParameters:n,withOAuth2Call:o,spec:l,generatedPayloadSamplesMaxDepth:u,store:p}=s,c=mapOperationToHAR(t,{exampleName:a,pathParams:r,properties:i,skipOptionalParameters:n,withOAuth2Call:o,spec:l,generatedPayloadSamplesMaxDepth:u},p),d=new HTTPSnippet(c);return langToSnippetConfig[e]?d.convert(langToSnippetConfig[e].code,langToSnippetConfig[e].defaultTarget,Object.assign(Object.assign({},langToSnippetConfig[e].defaultOptions),s)):"Language is not supported."}catch(e){return console.error(e),"Failed to generate code sample."}}function getSecurityData(e,t){var a,r,i,s;const n={securityHeaders:[],securityCookies:[],securityQueries:[],securityOAuth2ExtraCalls:[],basicAuth:void 0};for(const o of(null==e?void 0:e.schemes)||[]){const e=getSecurityDetails(o.id);switch(o.type){case"openIdConnect":null===(a=n.securityHeaders)||void 0===a||a.push({name:"Authorization",value:"Bearer <YOUR_TOKEN_HERE>"});break;case"oauth2":{const a=e.token?`${e.token.token_type||"Bearer"} ${e.token.access_token}`:"Bearer <YOUR_TOKEN_HERE>";o.flows.clientCredentials&&t?n.securityOAuth2ExtraCalls.push(getOAuth2ClientCredsCallHar(o.flows.clientCredentials,o.scopes,e)):o.flows.password&&t&&n.securityOAuth2ExtraCalls.push(getOAuth2PasswordCallHar(o.flows.password,o.scopes,e)),null===(r=n.securityHeaders)||void 0===r||r.push({name:"Authorization",value:a});break}case"apiKey":{const t=e.raw||"YOUR_API_KEY_HERE";"header"===o.in&&(null===(i=n.securityHeaders)||void 0===i||i.push({name:o.name,value:t})),"cookie"===o.in&&n.securityCookies.push({name:o.name,value:t}),"query"===o.in&&n.securityQueries.push({name:o.name,value:t});break}case"http":"basic"===o.scheme?n.basicAuth={username:e.username||`<${StringUtility.toSnakeCase(l("tryItAuthBasicUsername"))}>`,password:e.password||`<${StringUtility.toSnakeCase(l("tryItAuthBasicPassword"))}>`}:null===(s=n.securityHeaders)||void 0===s||s.push({name:"Authorization",value:`${capitalizeFirst(o.scheme||"bearer")} <YOUR_${o.bearerFormat||"TOKEN"}_HERE>`})}}return n}function getOAuth2PasswordCallHar(e,t,a){return{method:"POST",url:e.tokenUrl,httpVersion:"HTTP/1.1",headers:[{name:"Content-Type",value:MediaTypes.URL_ENCODED},{name:"Accept",value:MediaTypes.JSON}],queryString:[],postData:{mimeType:MediaTypes.URL_ENCODED,text:"",params:[{name:"grant_type",value:"password"},{name:"client_id",value:a.client_id||"YOUR_CLIENT_ID"},{name:"client_secret",value:a.client_secret||"YOUR_CLIENT_SECRET"},{name:"username",value:a.username||"<username>"},{name:"password",value:a.password||"<password>"},t.length?{name:"scope",value:t.join(" ")}:void 0].filter(isDefined)},cookies:[],headersSize:-1,bodySize:-1,securityOAuth2ExtraCalls:[]}}function getOAuth2ClientCredsCallHar(e,t,a){return{method:"POST",url:e.tokenUrl,httpVersion:"HTTP/1.1",headers:[{name:"Content-Type",value:MediaTypes.URL_ENCODED},{name:"Accept",value:MediaTypes.JSON}],queryString:[],postData:{mimeType:MediaTypes.URL_ENCODED,text:"",params:[{name:"grant_type",value:"client_credentials"},{name:"client_id",value:a.client_id||"YOUR_CLIENT_ID"},{name:"client_secret",value:a.client_secret||"YOUR_CLIENT_SECRET"},t.length?{name:"scope",value:t.join(" ")}:void 0].filter(isDefined)},cookies:[],headersSize:-1,bodySize:-1,securityOAuth2ExtraCalls:[]}}function getDataRequest(e,t){if(e){if("object"==typeof e)return merge(e,t,{arrayMerge:arrayMergeStrategy});try{return merge(JSON.parse(e),t,{arrayMerge:arrayMergeStrategy})}catch(e){return!1}}return!1}function objectToHarParams(e){const t=[];for(const[a,r]of Object.entries(e))t.push({name:a,value:String(r)});return t}export function isDefined(e){return void 0!==e}export function capitalizeFirst(e){return e.charAt(0).toUpperCase()+e.slice(1)}
2
2
  //# sourceMappingURL=generator.js.map
@@ -1,2 +1,2 @@
1
- import{getTagGroupsItems,getTagsItems,getTagsWithOperations}from"./tags";import{addMarkdownItems}from"./markdown";import{flattenByProp}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 o.push(...addMarkdownItems(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")}}
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")}}
2
2
  //# sourceMappingURL=builder.js.map
@@ -1,2 +1,2 @@
1
- import{getGroup}from"../../models";import{GROUP_DEPTH}from"../../constants";import{alphabeticallyByProp,isOperationName,JsonPointer}from"../../utils";import{getOperationsItems}from"./operation";import{addMarkdownItems}from"./markdown";export function getTagsItems(e,t,n,o,a){let s;if(s=void 0===o?Object.keys(t):o.tags,!Array.isArray(s))return console.warn("Unexpected values of tags. Check tags or x-tagGroups in your definition."),[];const i=s.map((e=>t[e]?(t[e].used=!0,t[e]):(console.warn(`Non-existing tag "${e}" is added to the group "${null==o?void 0:o.name}"`),null))),r=[];for(const t of i){if(!t)continue;const o=getGroup("tag",t,{pagination:a.pagination,markdownHeadingsAnchorLevel:a.markdownHeadingsAnchorLevel},n);if(o.depth=GROUP_DEPTH+1,""===t.name){const e=[...addMarkdownItems(t.description||"",o,o.depth+1,a.markdownHeadingsAnchorLevel,a.pagination),...getOperationsItems(void 0,t,o.depth+1,a)];r.push(...e);continue}const s=getTagRelatedSchema({definition:e.definition,tag:t,parent:o,schemaDefinitionsTagName:a.schemaDefinitionsTagName,options:{pagination:a.pagination,markdownHeadingsAnchorLevel:a.markdownHeadingsAnchorLevel}});o.items=[...s,...addMarkdownItems(t.description||"",o,o.depth+1,a.markdownHeadingsAnchorLevel,a.pagination),...getOperationsItems(o,t,o.depth+1,a)],r.push(o)}return a.sortTagsAlphabetically&&r.sort(alphabeticallyByProp("name")),r}export function getTagGroupsItems(e,t,n,o,a){const s=[];for(const i of n){const n=getGroup("group",i,{pagination:a.pagination,markdownHeadingsAnchorLevel:a.markdownHeadingsAnchorLevel},t);n.depth=GROUP_DEPTH,n.items=getTagsItems(e,o,n,i,a),s.push(n)}return s}function getTagRelatedSchema({definition:e,tag:t,parent:n,schemaDefinitionsTagName:o,options:a}){var s;const i=o?[o]:[];return Object.entries((null===(s=e.components)||void 0===s?void 0:s.schemas)||{}).map((([e,o])=>{if(!(o["x-tags"]||i).includes(t.name))return null;const s=getGroup("schema",{name:e,"x-displayName":`${o.title||e}`,description:`{% schemaDefinition showWriteOnly="true" schemaRef="#/components/schemas/${e}" /%}`,isSchema:!0,level:2},a,n);return s.depth=n.depth+1,s})).filter(Boolean)}export function getTagsWithOperations(e,t){const{definition:n}=e,o={},a=n["x-webhooks"]||n.webhooks;for(const e of t||[])o[e.name]=Object.assign(Object.assign({},e),{operations:[]});return n.paths&&getTags(e,n.paths,o),a&&getTags(e,a,o,!0),o}function getTags(e,t,n,o){for(const a of Object.keys(t||{})){const s=t[a],i=Object.keys(s).filter(isOperationName);for(const t of i){const i=s[t];if(s.$ref){const{resolved:t}=e.deref(s);getTags(e,{[a]:t},n,o);continue}let r=null==i?void 0:i.tags;r&&r.length||(r=[""]);for(const e of r){let r=n[e];void 0===r&&(r={name:e,operations:[]},n[e]=r),r["x-traitTag"]||r.operations.push(Object.assign(Object.assign({},i),{pathName:a,pointer:JsonPointer.compile(["paths",a,t]),httpVerb:t,pathParameters:s.parameters||[],pathServers:s.servers,isWebhook:!!o}))}}}}
1
+ import{getGroup}from"../../models";import{GROUP_DEPTH}from"../../constants";import{alphabeticallyByProp,getValueFromMdParsedExtension,isOperationName,JsonPointer}from"../../utils";import{getOperationsItems}from"./operation";import{addMarkdownItems}from"./markdown";export function getTagsItems(e,t,n,o,a){let s;if(s=void 0===o?Object.keys(t):o.tags,!Array.isArray(s))return console.warn("Unexpected values of tags. Check tags or x-tagGroups in your definition."),[];const i=s.map((e=>t[e]?(t[e].used=!0,t[e]):(console.warn(`Non-existing tag "${e}" is added to the group "${null==o?void 0:o.name}"`),null))),r=[];for(const t of i){if(!t)continue;const o=getGroup("tag",t,{pagination:a.pagination,markdownHeadingsAnchorLevel:a.markdownHeadingsAnchorLevel},n);if(o.depth=GROUP_DEPTH+1,""===t.name){const e=[...addMarkdownItems(getValueFromMdParsedExtension(t,"description")||"",o,o.depth+1,a.markdownHeadingsAnchorLevel,a.pagination),...getOperationsItems(void 0,t,o.depth+1,a)];r.push(...e);continue}const s=getTagRelatedSchema({definition:e.definition,tag:t,parent:o,schemaDefinitionsTagName:a.schemaDefinitionsTagName,options:{pagination:a.pagination,markdownHeadingsAnchorLevel:a.markdownHeadingsAnchorLevel}});o.items=[...s,...addMarkdownItems(getValueFromMdParsedExtension(t,"description")||"",o,o.depth+1,a.markdownHeadingsAnchorLevel,a.pagination),...getOperationsItems(o,t,o.depth+1,a)],r.push(o)}return a.sortTagsAlphabetically&&r.sort(alphabeticallyByProp("name")),r}export function getTagGroupsItems(e,t,n,o,a){const s=[];for(const i of n){const n=getGroup("group",i,{pagination:a.pagination,markdownHeadingsAnchorLevel:a.markdownHeadingsAnchorLevel},t);n.depth=GROUP_DEPTH,n.items=getTagsItems(e,o,n,i,a),s.push(n)}return s}function getTagRelatedSchema({definition:e,tag:t,parent:n,schemaDefinitionsTagName:o,options:a}){var s;const i=o?[o]:[];return Object.entries((null===(s=e.components)||void 0===s?void 0:s.schemas)||{}).map((([e,o])=>{if(!(o["x-tags"]||i).includes(t.name))return null;const s=getGroup("schema",{name:e,"x-displayName":`${o.title||e}`,description:`{% schemaDefinition showWriteOnly="true" schemaRef="#/components/schemas/${e}" /%}`,isSchema:!0,level:2},a,n);return s.depth=n.depth+1,s})).filter(Boolean)}export function getTagsWithOperations(e,t){const{definition:n}=e,o={},a=n["x-webhooks"]||n.webhooks;for(const e of t||[])o[e.name]=Object.assign(Object.assign({},e),{operations:[]});return n.paths&&getTags(e,n.paths,o),a&&getTags(e,a,o,!0),o}function getTags(e,t,n,o){for(const a of Object.keys(t||{})){const s=t[a],i=Object.keys(s).filter(isOperationName);for(const t of i){const i=s[t];if(s.$ref){const{resolved:t}=e.deref(s);getTags(e,{[a]:t},n,o);continue}let r=null==i?void 0:i.tags;r&&r.length||(r=[""]);for(const e of r){let r=n[e];void 0===r&&(r={name:e,operations:[]},n[e]=r),r["x-traitTag"]||r.operations.push(Object.assign(Object.assign({},i),{pathName:a,pointer:JsonPointer.compile(["paths",a,t]),httpVerb:t,pathParameters:s.parameters||[],pathServers:s.servers,isWebhook:!!o}))}}}}
2
2
  //# sourceMappingURL=tags.js.map