@redocly/openapi-docs 3.3.15 → 3.3.16

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1,2 +1,2 @@
1
- "use strict";var __rest=this&&this.__rest||function(e,t){var r={};for(var a in e)Object.prototype.hasOwnProperty.call(e,a)&&t.indexOf(a)<0&&(r[a]=e[a]);if(null!=e&&"function"==typeof Object.getOwnPropertySymbols){var o=0;for(a=Object.getOwnPropertySymbols(e);o<a.length;o++)t.indexOf(a[o])<0&&Object.prototype.propertyIsEnumerable.call(e,a[o])&&(r[a[o]]=e[a[o]])}return r};Object.defineProperty(exports,"__esModule",{value:!0}),exports.PayloadSamples=void 0;const jsx_runtime_1=require("react/jsx-runtime"),react_1=require("react"),jotai_1=require("jotai"),SelectOrLabel_1=require("../SelectOrLabel"),MediaTypeSwitch_1=require("../MediaTypeSwitch"),common_1=require("../common"),MediaTypeSamples_1=require("./MediaTypeSamples"),styled_1=require("./styled"),app_1=require("../../jotai/app"),hooks_1=require("../../hooks");function PayloadSamplesComponent(e){var{onlyDefaultMimeType:t,content:r}=e,a=__rest(e,["onlyDefaultMimeType","content"]);const o=(0,hooks_1.useActivateExample)(r),l=(0,jotai_1.useAtomValue)(app_1.activeMimeNameAtom),i=t&&l,s=(0,react_1.useCallback)((e=>i?null:(0,jsx_runtime_1.jsx)(styled_1.SelectWrapper,{children:(0,jsx_runtime_1.jsx)(SelectOrLabel_1.SelectOrLabel,Object.assign({Label:common_1.MimeLabel,Select:common_1.Select,variant:"dark",fullWidth:!0},e))})),[i]),n=e=>o(e);return r?(0,jsx_runtime_1.jsx)(MediaTypeSwitch_1.MediaTypesSwitch,{content:r,renderSelect:s,children:e=>(0,jsx_runtime_1.jsx)(MediaTypeSamples_1.MediaTypeSamples,Object.assign({mediaType:e},a,{onChange:n}),"samples")}):(0,jsx_runtime_1.jsx)(styled_1.StyledCodeBlock,{lang:"text",source:"No request payload",header:{controls:!1}})}exports.PayloadSamples=(0,react_1.memo)(PayloadSamplesComponent);
1
+ "use strict";var __rest=this&&this.__rest||function(e,t){var r={};for(var a in e)Object.prototype.hasOwnProperty.call(e,a)&&t.indexOf(a)<0&&(r[a]=e[a]);if(null!=e&&"function"==typeof Object.getOwnPropertySymbols){var o=0;for(a=Object.getOwnPropertySymbols(e);o<a.length;o++)t.indexOf(a[o])<0&&Object.prototype.propertyIsEnumerable.call(e,a[o])&&(r[a[o]]=e[a[o]])}return r};Object.defineProperty(exports,"__esModule",{value:!0}),exports.PayloadSamples=void 0;const jsx_runtime_1=require("react/jsx-runtime"),react_1=require("react"),jotai_1=require("jotai"),SelectOrLabel_1=require("../SelectOrLabel"),MediaTypeSwitch_1=require("../MediaTypeSwitch"),common_1=require("../common"),MediaTypeSamples_1=require("./MediaTypeSamples"),styled_1=require("./styled"),app_1=require("../../jotai/app"),hooks_1=require("../../hooks"),convertExamplesFormat_1=require("../../utils/convertExamplesFormat");function PayloadSamplesComponent(e){var{onlyDefaultMimeType:t,content:r}=e,a=__rest(e,["onlyDefaultMimeType","content"]);const o=(0,hooks_1.useActivateExample)(r),l=(0,jotai_1.useAtomValue)(app_1.activeMimeNameAtom),s=t&&l,i=(0,react_1.useCallback)((e=>s?null:(0,jsx_runtime_1.jsx)(styled_1.SelectWrapper,{children:(0,jsx_runtime_1.jsx)(SelectOrLabel_1.SelectOrLabel,Object.assign({Label:common_1.MimeLabel,Select:common_1.Select,variant:"dark",fullWidth:!0},e))})),[s]),n=e=>o(e);return r?(0,jsx_runtime_1.jsx)(MediaTypeSwitch_1.MediaTypesSwitch,{content:r,renderSelect:i,children:e=>{const t=(0,convertExamplesFormat_1.convertExamplesFormat)(e);return(0,jsx_runtime_1.jsx)(MediaTypeSamples_1.MediaTypeSamples,Object.assign({mediaType:t},a,{onChange:n}),"samples")}}):(0,jsx_runtime_1.jsx)(styled_1.StyledCodeBlock,{lang:"text",source:"No request payload",header:{controls:!1}})}exports.PayloadSamples=(0,react_1.memo)(PayloadSamplesComponent);
2
2
  //# sourceMappingURL=PayloadSamples.js.map
@@ -1,2 +1,2 @@
1
- "use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.ServerListDropdown=void 0;const jsx_runtime_1=require("react/jsx-runtime"),react_1=require("react"),theme_1=require("@redocly/theme"),jotai_1=require("jotai"),common_1=require("../common"),styled_1=require("./styled"),PanelItem_1=require("../PanelItem"),services_1=require("../../services"),utils_1=require("../../utils"),app_1=require("../../jotai/app"),hooks_1=require("../../hooks"),environments_1=require("../../utils/environments"),ServerListDropdown=({operation:e,className:r})=>{const[[t],s]=(0,jotai_1.useAtom)(app_1.environmentAtom),i=(0,hooks_1.useActiveWithFallback)(e.servers.map((e=>Object.assign(Object.assign({},e),{key:e.url}))),t.server),n=(0,react_1.useCallback)((e=>{e.stopPropagation()}),[]),o=(0,react_1.useCallback)((r=>()=>{1!==e.servers.length&&s({environment:(0,environments_1.getServerEnvName)(r)})}),[e.servers.length,s]),a=(0,react_1.useMemo)((()=>e.servers.map((r=>{const t=(0,utils_1.replaceVariables)(r),s=(0,services_1.joinWithSeparator)(t,e.path);return(0,jsx_runtime_1.jsx)(styled_1.StyledDropdownMenuItem,{onAction:o(r),children:(0,jsx_runtime_1.jsx)(PanelItem_1.PanelItem,{header:r.description,title:(0,utils_1.replaceVariables)(r),actions:[(0,jsx_runtime_1.jsx)(styled_1.StyledCopyButton,{data:s,toasterPlacement:"left",onCopyClick:n},s)],active:r.url===i,withCheckmark:!0})},s)}))),[e.servers,e.path,o,n,i]);return(0,jsx_runtime_1.jsx)(theme_1.Dropdown,{className:r,trigger:(0,jsx_runtime_1.jsxs)(styled_1.PathWrapper,{variant:"ghost",children:[(0,jsx_runtime_1.jsx)(common_1.HttpVerb,{color:e.httpVerb,children:e.httpVerb}),(0,jsx_runtime_1.jsx)(styled_1.Path,{children:e.path})]}),withArrow:!0,children:(0,jsx_runtime_1.jsx)(theme_1.DropdownMenu,{children:a})})};exports.ServerListDropdown=ServerListDropdown;
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.ServerListDropdown=void 0;const jsx_runtime_1=require("react/jsx-runtime"),react_1=require("react"),theme_1=require("@redocly/theme"),jotai_1=require("jotai"),common_1=require("../common"),styled_1=require("./styled"),PanelItem_1=require("../PanelItem"),services_1=require("../../services"),utils_1=require("../../utils"),app_1=require("../../jotai/app"),hooks_1=require("../../hooks"),environments_1=require("../../utils/environments"),ServerListDropdown=({operation:e,className:r})=>{const[[t],s]=(0,jotai_1.useAtom)(app_1.environmentAtom),i=(0,hooks_1.useActiveWithFallback)(e.servers.map((e=>Object.assign(Object.assign({},e),{key:e.url}))),t.server),n=(0,react_1.useCallback)((e=>{e.stopPropagation()}),[]),o=(0,react_1.useCallback)((r=>()=>{1!==e.servers.length&&s({environment:(0,environments_1.getServerEnvName)(r)})}),[e.servers.length,s]),a=(0,react_1.useMemo)((()=>e.servers.map((r=>{const t=(0,services_1.joinWithSeparator)((0,utils_1.replaceVariables)(r),e.path);return(0,jsx_runtime_1.jsx)(styled_1.StyledDropdownMenuItem,{onAction:o(r),children:(0,jsx_runtime_1.jsx)(PanelItem_1.PanelItem,{header:r.description,title:t,actions:[(0,jsx_runtime_1.jsx)(styled_1.StyledCopyButton,{data:t,toasterPlacement:"left",onCopyClick:n},t)],active:r.url===i,withCheckmark:!0})},t)}))),[e.servers,e.path,o,n,i]);return(0,jsx_runtime_1.jsx)(theme_1.Dropdown,{className:r,trigger:(0,jsx_runtime_1.jsxs)(styled_1.PathWrapper,{variant:"ghost",children:[(0,jsx_runtime_1.jsx)(common_1.HttpVerb,{color:e.httpVerb,children:e.httpVerb}),(0,jsx_runtime_1.jsx)(styled_1.Path,{children:e.path})]}),withArrow:!0,children:(0,jsx_runtime_1.jsx)(theme_1.DropdownMenu,{children:a})})};exports.ServerListDropdown=ServerListDropdown;
2
2
  //# sourceMappingURL=ServerListDropdown.js.map
@@ -1,2 +1,2 @@
1
- "use strict";var __createBinding=this&&this.__createBinding||(Object.create?function(e,t,a,i){void 0===i&&(i=a);var r=Object.getOwnPropertyDescriptor(t,a);r&&!("get"in r?!t.__esModule:r.writable||r.configurable)||(r={enumerable:!0,get:function(){return t[a]}}),Object.defineProperty(e,i,r)}:function(e,t,a,i){void 0===i&&(i=a),e[i]=t[a]}),__setModuleDefault=this&&this.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),__importStar=this&&this.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var a in e)"default"!==a&&Object.prototype.hasOwnProperty.call(e,a)&&__createBinding(t,e,a);return __setModuleDefault(t,e),t};Object.defineProperty(exports,"__esModule",{value:!0}),exports.getMediaType=void 0;const Sampler=__importStar(require("openapi-sampler")),schema_1=require("./schema"),utils_1=require("../utils"),example_1=require("./example");function generateExamples({parser:e,info:{encoding:t,schema:a},schema:i,mime:r,isRequestType:n,onlyRequiredInSamples:s,generatedSamplesMaxDepth:o}){const l={skipReadOnly:n,skipWriteOnly:!n,skipNonRequired:n&&s,maxSampleDepth:o,quiet:!0};let p={};if(i&&i.oneOf)for(const a of i.oneOf){const n=Sampler.sample(a.rawSchema,l,e.definition);i.discriminatorProp&&"object"==typeof n&&n&&n[i.discriminatorProp]&&(n[i.discriminatorProp]=a.title),p[a.title]=(0,example_1.getExamples)({parser:e,infoOrRef:{value:n},mime:r,encoding:t})}else p=i?{default:(0,example_1.getExamples)({parser:e,infoOrRef:{value:Sampler.sample(a,l,e.definition)},mime:r,encoding:t})}:{default:{value:null,rawValue:"null"}};return p}function getMediaType(e,t,a,i,r,{operation:n,type:s,response:o,absolutePointer:l=""}){let p,m;const u=i.schema&&(0,schema_1.getSchema)({parser:e,schemaOrRef:i.schema,pointer:"",absolutePointer:utils_1.JsonPointer.join(l,["content",t,"schema"]),options:r,deps:{operation:n,type:s,response:o}}),{onlyRequiredInSamples:c,generatedSamplesMaxDepth:d}=r,{encoding:f,examples:_,example:g}=i;return r.unstable_skipSamples||(void 0!==_?p=(0,utils_1.mapValues)(_,(a=>(0,example_1.getExamples)({parser:e,infoOrRef:a,mime:t,encoding:f}))):void 0!==g?p={default:(0,example_1.getExamples)({parser:e,infoOrRef:{value:e.deref(g).resolved},mime:t,encoding:f})}:(0,utils_1.isJsonLike)(t)?p=generateExamples({parser:e,info:i,schema:u,mime:t,isRequestType:a,onlyRequiredInSamples:c,generatedSamplesMaxDepth:d}):((0,utils_1.isFormUrlEncoded)(t)||(0,utils_1.isMultipartFormData)(t))&&(m=generateExamples({parser:e,info:i,schema:u,mime:t,isRequestType:a,onlyRequiredInSamples:c,generatedSamplesMaxDepth:d}))),{examples:p,schema:u,name:t,isRequestType:a,formExamples:m,onlyRequiredInSamples:c,operation:n}}exports.getMediaType=getMediaType;
1
+ "use strict";var __createBinding=this&&this.__createBinding||(Object.create?function(e,t,i,a){void 0===a&&(a=i);var r=Object.getOwnPropertyDescriptor(t,i);r&&!("get"in r?!t.__esModule:r.writable||r.configurable)||(r={enumerable:!0,get:function(){return t[i]}}),Object.defineProperty(e,a,r)}:function(e,t,i,a){void 0===a&&(a=i),e[a]=t[i]}),__setModuleDefault=this&&this.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),__importStar=this&&this.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var i in e)"default"!==i&&Object.prototype.hasOwnProperty.call(e,i)&&__createBinding(t,e,i);return __setModuleDefault(t,e),t};Object.defineProperty(exports,"__esModule",{value:!0}),exports.getMediaType=void 0;const Sampler=__importStar(require("openapi-sampler")),schema_1=require("./schema"),utils_1=require("../utils"),example_1=require("./example");function generateExamples({parser:e,info:{encoding:t,schema:i},schema:a,mime:r,isRequestType:n,onlyRequiredInSamples:s,generatedSamplesMaxDepth:o}){const l={skipReadOnly:n,skipWriteOnly:!n,skipNonRequired:n&&s,maxSampleDepth:o,quiet:!0};let p={};if(a&&a.oneOf)for(const i of a.oneOf){const n=Sampler.sample(i.rawSchema,l,e.definition);a.discriminatorProp&&"object"==typeof n&&n&&n[a.discriminatorProp]&&(n[a.discriminatorProp]=i.title),p[i.title]=(0,example_1.getExamples)({parser:e,infoOrRef:{value:n},mime:r,encoding:t})}else p=a?{default:(0,example_1.getExamples)({parser:e,infoOrRef:{value:Sampler.sample(i,l,e.definition)},mime:r,encoding:t})}:{default:{value:null,rawValue:"null"}};return p}function getMediaType(e,t,i,a,r,{operation:n,type:s,response:o,absolutePointer:l=""}){let p,m;const u=a.schema&&(0,schema_1.getSchema)({parser:e,schemaOrRef:a.schema,pointer:"",absolutePointer:utils_1.JsonPointer.join(l,["content",t,"schema"]),options:r,deps:{operation:n,type:s,response:o}}),{onlyRequiredInSamples:c,generatedSamplesMaxDepth:d}=r,{encoding:f,examples:_,example:g}=a;return r.unstable_skipSamples||(void 0!==_?p=(0,utils_1.mapValues)(_,(i=>(0,example_1.getExamples)({parser:e,infoOrRef:i,mime:t,encoding:f}))):void 0!==g?p={default:(0,example_1.getExamples)({parser:e,infoOrRef:{value:e.deref(g).resolved},mime:t,encoding:f})}:(0,utils_1.isJsonLike)(t)||(0,utils_1.isXmlLike)(t)?p=generateExamples({parser:e,info:a,schema:u,mime:t,isRequestType:i,onlyRequiredInSamples:c,generatedSamplesMaxDepth:d}):((0,utils_1.isFormUrlEncoded)(t)||(0,utils_1.isMultipartFormData)(t))&&(m=generateExamples({parser:e,info:a,schema:u,mime:t,isRequestType:i,onlyRequiredInSamples:c,generatedSamplesMaxDepth:d}))),{examples:p,schema:u,name:t,isRequestType:i,formExamples:m,onlyRequiredInSamples:c,operation:n}}exports.getMediaType=getMediaType;
2
2
  //# sourceMappingURL=mediaType.js.map
@@ -1,2 +1,2 @@
1
- "use strict";var __createBinding=this&&this.__createBinding||(Object.create?function(e,t,a,r){void 0===r&&(r=a);var s=Object.getOwnPropertyDescriptor(t,a);s&&!("get"in s?!t.__esModule:s.writable||s.configurable)||(s={enumerable:!0,get:function(){return t[a]}}),Object.defineProperty(e,r,s)}:function(e,t,a,r){void 0===r&&(r=a),e[r]=t[a]}),__setModuleDefault=this&&this.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),__importStar=this&&this.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var a in e)"default"!==a&&Object.prototype.hasOwnProperty.call(e,a)&&__createBinding(t,e,a);return __setModuleDefault(t,e),t},__importDefault=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(exports,"__esModule",{value:!0}),exports.capitalizeFirst=exports.isDefined=exports.getCodeSample=void 0;const Sampler=__importStar(require("openapi-sampler")),deepmerge_1=__importDefault(require("deepmerge")),utils_1=require("../../utils"),utils_2=require("../utils"),constants_1=require("../../constants"),httpsnippet_1=require("./httpsnippet"),mediaContent_1=require("../../models/mediaContent"),string_utility_1=__importDefault(require("./httpsnippet/helpers/string-utility"));function getSelectedSecurityScheme(e,t){return e.find((e=>{const a=e.schemes.map((e=>e.id));return(0,utils_1.areArraysEqual)(a,t||[])}))}function mapOperationToHAR(e,{exampleName:t="",skipOptionalParameters:a=!1,withOAuth2Call:r=!1,spec:s,generatedPayloadSamplesMaxDepth:i=8,pathParams:n={},properties:o={}},{environment:l,requestValues:u,activeSecuritySchemeIds:c}){var p,d,m;const f=l.server,h=e.servers.find((e=>e.url===f))||e.servers[0],_=getSelectedSecurityScheme(e.security,c),{securityHeaders:y,securityCookies:v,securityQueries:g,securityOAuth2ExtraCalls:O,basicAuth:S}=getSecurityData(_||(null===(p=e.security)||void 0===p?void 0:p[0]),r,l),T=(null===(d=null==e?void 0:e.requestBody)||void 0===d?void 0:d.content)&&(0,mediaContent_1.getActiveMediaType)(e.requestBody.content),C={skipNonRequired:a,skipReadOnly:!0,maxSampleDepth:i,quiet:!0},b=u;let D=!1;const E=e.parameters.filter((e=>"header"===e.in)).filter((e=>!(a&&!e.required))).map((e=>{var t;return{name:e.name,value:(null===(t=b.header)||void 0===t?void 0:t[e.name])||(0,utils_1.getParameterValue)("header",e.name)||(0,utils_1.serializeParameterValue)(e,Sampler.sample(e.schema.rawSchema,C,s))}})).map((e=>((null==T?void 0:T.name)&&"content-type"===e.name.toLowerCase()&&(D=!0,e.value=T.name),e))).concat(y);!D&&(null==T?void 0:T.name)&&E.unshift({name:"Content-Type",value:null==T?void 0:T.name});const j=e.parameters.filter((e=>"cookie"===e.in)).filter((e=>!(a&&!e.required))).map((e=>utils_1.queryString.parse((0,utils_1.serializeParameterValue)(e,Sampler.sample(e.schema.rawSchema,C,s))))).reduce(((e,t)=>{var a;for(const[r,s]of Object.entries(t))e.push({name:r,value:String((null===(a=b.cookie)||void 0===a?void 0:a[r])||s)});return e}),[]).concat(v),P=e.parameters.filter((e=>"query"===e.in)).filter((e=>!(a&&!e.required))).map((e=>utils_1.queryString.parse((0,utils_1.serializeParameterValue)(e,Sampler.sample(e.schema.rawSchema,C,s))))).reduce(((e,t)=>{var a,r,s;for(const[i,n]of Object.entries(t))e.push({name:i,value:(0,utils_1.isArrayOfObjects)(null===(a=b.query)||void 0===a?void 0:a[i])&&JSON.stringify((0,utils_1.deleteEmptyArrayItem)(null===(r=b.query)||void 0===r?void 0:r[i]))||String((null===(s=b.query)||void 0===s?void 0:s[i])||n)});return e}),[]).concat(g),w=`${null==h?void 0:h.url.replace(/\/$/,"")}/${e.path.replace(/^\//,"")}`,k=e.parameters.filter((e=>"path"===e.in)).reduce(((e,t)=>{var a;const{in:r,name:s}=t;return e[s]=(null===(a=b.path)||void 0===a?void 0:a[s])||n[s]||(0,utils_1.getParameterValue)(r,s),e}),{}),q=null===(m=null==T?void 0:T.examples)||void 0===m?void 0:m[t],A=(null==T?void 0:T.examples)||{},[R]=Object.values(A),M=(null==b?void 0:b.body)||(null==q?void 0:q.value)||(null==R?void 0:R.value)||(null==T?void 0:T.schema)&&Sampler.sample(null==T?void 0:T.schema.rawSchema,C,s),x=null==T?void 0:T.name.toLowerCase();let N="",H=[];switch((0,utils_2.normalizeMimeType)(x)){case constants_1.MediaTypes.JSON:case constants_1.MediaTypes.XML:N=JSON.stringify(getDataRequest(M,o));break;case constants_1.MediaTypes.URL_ENCODED:case constants_1.MediaTypes.MULTIPART:N=utils_1.queryString.stringify(getDataRequest(M,o)),H=objectToHarParams(getDataRequest(M,o));break;default:N=String(M||"")}const z=N?{mimeType:(null==T?void 0:T.name)||constants_1.MediaTypes.OCTET_STREAM,text:N,params:H}:void 0,U=e.responses.map((e=>e.code));return{method:e.httpVerb,url:w,httpVersion:"HTTP/1.1",cookies:j,headers:E,queryString:P,postData:z,headersSize:-1,bodySize:-1,securityOAuth2ExtraCalls:O,basicAuth:S,pathParameters:k,serverVariables:l,allResponseCodes:U}}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)},"C#+Newtonsoft":{code:"csharpNewtonsoft",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)}};function getCodeSample({lang:e,operation:t,exampleName:a,pathParams:r,properties:s,options:i={},environment:n}){try{const{skipOptionalParameters:o,withOAuth2Call:l,spec:u,generatedPayloadSamplesMaxDepth:c,store:p}=i,d=mapOperationToHAR(t,{exampleName:a,pathParams:r,properties:s,skipOptionalParameters:o,withOAuth2Call:l,spec:u,generatedPayloadSamplesMaxDepth:c},{environment:n,requestValues:p.requestValues,activeSecuritySchemeIds:p.activeSecuritySchemeIds}),m=new httpsnippet_1.HTTPSnippet(d);return langToSnippetConfig[e]?m.convert(langToSnippetConfig[e].code,langToSnippetConfig[e].defaultTarget,Object.assign(Object.assign({},langToSnippetConfig[e].defaultOptions),i)):"Language is not supported."}catch(e){return console.error(e),"Failed to generate code sample."}}function getSecurityData(e,t,a){var r,s,i,n,o;const l={securityHeaders:[],securityCookies:[],securityQueries:[],securityOAuth2ExtraCalls:[],basicAuth:void 0};for(const u of(null==e?void 0:e.schemes)||[]){const e=(0,utils_1.getSecurityDetails)(u.id,a);switch(u.type){case"openIdConnect":null===(r=l.securityHeaders)||void 0===r||r.push({name:"Authorization",value:e.token?`${e.token.token_type||"Bearer"} ${e.token.access_token}`:"Bearer <YOUR_TOKEN_HERE>"});break;case"oauth2":{const a=e.token?`${e.token.token_type||"Bearer"} ${e.token.access_token}`:"Bearer <YOUR_TOKEN_HERE>";u.flows.clientCredentials&&t?l.securityOAuth2ExtraCalls.push(getOAuth2ClientCredsCallHar(u.flows.clientCredentials,u.scopes,e)):u.flows.password&&t&&l.securityOAuth2ExtraCalls.push(getOAuth2PasswordCallHar(u.flows.password,u.scopes,e)),null===(s=l.securityHeaders)||void 0===s||s.push({name:"Authorization",value:a});break}case"apiKey":{const t=e.raw||"YOUR_API_KEY_HERE";"header"===u.in&&(null===(i=l.securityHeaders)||void 0===i||i.push({name:u.name,value:t})),"cookie"===u.in&&l.securityCookies.push({name:u.name,value:t}),"query"===u.in&&l.securityQueries.push({name:u.name,value:t});break}case"http":if("basic"===u.scheme)l.basicAuth={username:e.username||`<${string_utility_1.default.toSnakeCase("Username")}>`,password:e.password||`<${string_utility_1.default.toSnakeCase("Password")}>`};else{const t=(null===(n=e.token)||void 0===n?void 0:n.access_token)||`<YOUR_${u.bearerFormat||"TOKEN"}_HERE>`;null===(o=l.securityHeaders)||void 0===o||o.push({name:"Authorization",value:`${capitalizeFirst(u.scheme||"bearer")} ${t}`})}}}return l}function getOAuth2PasswordCallHar(e,t,a){return{method:"POST",url:e.tokenUrl,httpVersion:"HTTP/1.1",headers:[{name:"Content-Type",value:constants_1.MediaTypes.URL_ENCODED},{name:"Accept",value:constants_1.MediaTypes.JSON}],queryString:[],postData:{mimeType:constants_1.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:constants_1.MediaTypes.URL_ENCODED},{name:"Accept",value:constants_1.MediaTypes.JSON}],queryString:[],postData:{mimeType:constants_1.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(0,deepmerge_1.default)(e,t,{arrayMerge:utils_2.arrayMergeStrategy});try{return(0,deepmerge_1.default)(JSON.parse(e),t,{arrayMerge:utils_2.arrayMergeStrategy})}catch(e){return!1}}return!1}function objectToHarParams(e,t=""){const a=[];for(const[r,s]of Object.entries(e)){const e=t?`${t}[${r}]`:r;"object"==typeof s&&null!==s?a.push(...objectToHarParams(s,e)):a.push({name:e,value:String(s)})}return a}function isDefined(e){return void 0!==e}function capitalizeFirst(e){return e.charAt(0).toUpperCase()+e.slice(1)}exports.getCodeSample=getCodeSample,exports.isDefined=isDefined,exports.capitalizeFirst=capitalizeFirst;
1
+ "use strict";var __createBinding=this&&this.__createBinding||(Object.create?function(e,t,a,r){void 0===r&&(r=a);var s=Object.getOwnPropertyDescriptor(t,a);s&&!("get"in s?!t.__esModule:s.writable||s.configurable)||(s={enumerable:!0,get:function(){return t[a]}}),Object.defineProperty(e,r,s)}:function(e,t,a,r){void 0===r&&(r=a),e[r]=t[a]}),__setModuleDefault=this&&this.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),__importStar=this&&this.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var a in e)"default"!==a&&Object.prototype.hasOwnProperty.call(e,a)&&__createBinding(t,e,a);return __setModuleDefault(t,e),t},__importDefault=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(exports,"__esModule",{value:!0}),exports.capitalizeFirst=exports.isDefined=exports.getCodeSample=void 0;const Sampler=__importStar(require("openapi-sampler")),deepmerge_1=__importDefault(require("deepmerge")),jstoxml_1=require("jstoxml"),utils_1=require("../../utils"),utils_2=require("../utils"),constants_1=require("../../constants"),httpsnippet_1=require("./httpsnippet"),mediaContent_1=require("../../models/mediaContent"),string_utility_1=__importDefault(require("./httpsnippet/helpers/string-utility"));function getSelectedSecurityScheme(e,t){return e.find((e=>{const a=e.schemes.map((e=>e.id));return(0,utils_1.areArraysEqual)(a,t||[])}))}function mapOperationToHAR(e,{exampleName:t="",skipOptionalParameters:a=!1,withOAuth2Call:r=!1,spec:s,generatedPayloadSamplesMaxDepth:i=8,pathParams:n={},properties:o={}},{environment:l,requestValues:u,activeSecuritySchemeIds:c}){var p,d,m;const f=l.server,h=e.servers.find((e=>e.url===f))||e.servers[0],_=getSelectedSecurityScheme(e.security,c),{securityHeaders:y,securityCookies:g,securityQueries:v,securityOAuth2ExtraCalls:O,basicAuth:S}=getSecurityData(_||(null===(p=e.security)||void 0===p?void 0:p[0]),r,l),T=(null===(d=null==e?void 0:e.requestBody)||void 0===d?void 0:d.content)&&(0,mediaContent_1.getActiveMediaType)(e.requestBody.content),C={skipNonRequired:a,skipReadOnly:!0,maxSampleDepth:i,quiet:!0},b=u;let j=!1;const D=e.parameters.filter((e=>"header"===e.in)).filter((e=>!(a&&!e.required))).map((e=>{var t;return{name:e.name,value:(null===(t=b.header)||void 0===t?void 0:t[e.name])||(0,utils_1.getParameterValue)("header",e.name)||(0,utils_1.serializeParameterValue)(e,Sampler.sample(e.schema.rawSchema,C,s))}})).map((e=>((null==T?void 0:T.name)&&"content-type"===e.name.toLowerCase()&&(j=!0,e.value=T.name),e))).concat(y);!j&&(null==T?void 0:T.name)&&D.unshift({name:"Content-Type",value:null==T?void 0:T.name});const E=e.parameters.filter((e=>"cookie"===e.in)).filter((e=>!(a&&!e.required))).map((e=>utils_1.queryString.parse((0,utils_1.serializeParameterValue)(e,Sampler.sample(e.schema.rawSchema,C,s))))).reduce(((e,t)=>{var a;for(const[r,s]of Object.entries(t))e.push({name:r,value:String((null===(a=b.cookie)||void 0===a?void 0:a[r])||s)});return e}),[]).concat(g),q=e.parameters.filter((e=>"query"===e.in)).filter((e=>!(a&&!e.required))).map((e=>utils_1.queryString.parse((0,utils_1.serializeParameterValue)(e,Sampler.sample(e.schema.rawSchema,C,s))))).reduce(((e,t)=>{var a,r,s;for(const[i,n]of Object.entries(t))e.push({name:i,value:(0,utils_1.isArrayOfObjects)(null===(a=b.query)||void 0===a?void 0:a[i])&&JSON.stringify((0,utils_1.deleteEmptyArrayItem)(null===(r=b.query)||void 0===r?void 0:r[i]))||String((null===(s=b.query)||void 0===s?void 0:s[i])||n)});return e}),[]).concat(v),P=`${null==h?void 0:h.url.replace(/\/$/,"")}/${e.path.replace(/^\//,"")}`,k=e.parameters.filter((e=>"path"===e.in)).reduce(((e,t)=>{var a;const{in:r,name:s}=t;return e[s]=(null===(a=b.path)||void 0===a?void 0:a[s])||n[s]||(0,utils_1.getParameterValue)(r,s),e}),{}),w=null===(m=null==T?void 0:T.examples)||void 0===m?void 0:m[t],A=(null==T?void 0:T.examples)||{},[R]=Object.values(A),M=(null==b?void 0:b.body)||(null==w?void 0:w.value)||(null==R?void 0:R.value)||(null==T?void 0:T.schema)&&Sampler.sample(null==T?void 0:T.schema.rawSchema,C,s),x=null==T?void 0:T.name.toLowerCase();let N="",H=[];switch((0,utils_2.normalizeMimeType)(x)){case constants_1.MediaTypes.JSON:N=JSON.stringify(getDataRequest(M,o));break;case constants_1.MediaTypes.XML:N="object"==typeof M?(0,jstoxml_1.toXML)(getDataRequest(M,o),{indent:" "}):M;break;case constants_1.MediaTypes.URL_ENCODED:case constants_1.MediaTypes.MULTIPART:N=utils_1.queryString.stringify(getDataRequest(M,o)),H=objectToHarParams(getDataRequest(M,o));break;default:N=String(M||"")}const z=N?{mimeType:(null==T?void 0:T.name)||constants_1.MediaTypes.OCTET_STREAM,text:N,params:H}:void 0,U=e.responses.map((e=>e.code));return{method:e.httpVerb,url:P,httpVersion:"HTTP/1.1",cookies:E,headers:D,queryString:q,postData:z,headersSize:-1,bodySize:-1,securityOAuth2ExtraCalls:O,basicAuth:S,pathParameters:k,serverVariables:l,allResponseCodes:U}}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)},"C#+Newtonsoft":{code:"csharpNewtonsoft",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)}};function getCodeSample({lang:e,operation:t,exampleName:a,pathParams:r,properties:s,options:i={},environment:n}){try{const{skipOptionalParameters:o,withOAuth2Call:l,spec:u,generatedPayloadSamplesMaxDepth:c,store:p}=i,d=mapOperationToHAR(t,{exampleName:a,pathParams:r,properties:s,skipOptionalParameters:o,withOAuth2Call:l,spec:u,generatedPayloadSamplesMaxDepth:c},{environment:n,requestValues:p.requestValues,activeSecuritySchemeIds:p.activeSecuritySchemeIds}),m=new httpsnippet_1.HTTPSnippet(d);return langToSnippetConfig[e]?m.convert(langToSnippetConfig[e].code,langToSnippetConfig[e].defaultTarget,Object.assign(Object.assign({},langToSnippetConfig[e].defaultOptions),i)):"Language is not supported."}catch(e){return console.error(e),"Failed to generate code sample."}}function getSecurityData(e,t,a){var r,s,i,n,o;const l={securityHeaders:[],securityCookies:[],securityQueries:[],securityOAuth2ExtraCalls:[],basicAuth:void 0};for(const u of(null==e?void 0:e.schemes)||[]){const e=(0,utils_1.getSecurityDetails)(u.id,a);switch(u.type){case"openIdConnect":null===(r=l.securityHeaders)||void 0===r||r.push({name:"Authorization",value:e.token?`${e.token.token_type||"Bearer"} ${e.token.access_token}`:"Bearer <YOUR_TOKEN_HERE>"});break;case"oauth2":{const a=e.token?`${e.token.token_type||"Bearer"} ${e.token.access_token}`:"Bearer <YOUR_TOKEN_HERE>";u.flows.clientCredentials&&t?l.securityOAuth2ExtraCalls.push(getOAuth2ClientCredsCallHar(u.flows.clientCredentials,u.scopes,e)):u.flows.password&&t&&l.securityOAuth2ExtraCalls.push(getOAuth2PasswordCallHar(u.flows.password,u.scopes,e)),null===(s=l.securityHeaders)||void 0===s||s.push({name:"Authorization",value:a});break}case"apiKey":{const t=e.raw||"YOUR_API_KEY_HERE";"header"===u.in&&(null===(i=l.securityHeaders)||void 0===i||i.push({name:u.name,value:t})),"cookie"===u.in&&l.securityCookies.push({name:u.name,value:t}),"query"===u.in&&l.securityQueries.push({name:u.name,value:t});break}case"http":if("basic"===u.scheme)l.basicAuth={username:e.username||`<${string_utility_1.default.toSnakeCase("Username")}>`,password:e.password||`<${string_utility_1.default.toSnakeCase("Password")}>`};else{const t=(null===(n=e.token)||void 0===n?void 0:n.access_token)||`<YOUR_${u.bearerFormat||"TOKEN"}_HERE>`;null===(o=l.securityHeaders)||void 0===o||o.push({name:"Authorization",value:`${capitalizeFirst(u.scheme||"bearer")} ${t}`})}}}return l}function getOAuth2PasswordCallHar(e,t,a){return{method:"POST",url:e.tokenUrl,httpVersion:"HTTP/1.1",headers:[{name:"Content-Type",value:constants_1.MediaTypes.URL_ENCODED},{name:"Accept",value:constants_1.MediaTypes.JSON}],queryString:[],postData:{mimeType:constants_1.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:constants_1.MediaTypes.URL_ENCODED},{name:"Accept",value:constants_1.MediaTypes.JSON}],queryString:[],postData:{mimeType:constants_1.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(0,deepmerge_1.default)(e,t,{arrayMerge:utils_2.arrayMergeStrategy});try{return(0,deepmerge_1.default)(JSON.parse(e),t,{arrayMerge:utils_2.arrayMergeStrategy})}catch(e){return!1}}return!1}function objectToHarParams(e,t=""){const a=[];for(const[r,s]of Object.entries(e)){const e=t?`${t}[${r}]`:r;"object"==typeof s&&null!==s?a.push(...objectToHarParams(s,e)):a.push({name:e,value:String(s)})}return a}function isDefined(e){return void 0!==e}function capitalizeFirst(e){return e.charAt(0).toUpperCase()+e.slice(1)}exports.getCodeSample=getCodeSample,exports.isDefined=isDefined,exports.capitalizeFirst=capitalizeFirst;
2
2
  //# sourceMappingURL=generator.js.map
@@ -1,2 +1,2 @@
1
- "use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.info=void 0;const code_builder_1=require("../../helpers/code-builder"),__1=require("../.."),utils_1=require("../../../../utils"),code_helpers_1=require("../../helpers/code-helpers"),constants_1=require("../../helpers/constants"),constants_2=require("../../../../../constants"),hasQueryParams=e=>!(!e.uriObj.query||!Object.keys(e.uriObj.query).length),getBody=e=>e.postData&&e.postData.mimeType===constants_2.MediaTypes.URL_ENCODED?"HttpRequest.BodyPublishers.ofString(form)":e.postData?"HttpRequest.BodyPublishers.ofString(payload)":["POST","PUT","PATCH"].includes(e.method.toUpperCase())?'HttpRequest.BodyPublishers.ofString("some body text")':"",handler=function(e,t,{target:s,client:a}){var r,n,o;const i=Object.assign({indent:" ",withWrapper:!0},t),p=new code_builder_1.CodeBuilder({indentation:i.indent,variablesPrefix:i.variablesPrefix,capitalize:!0,lang:constants_1.Lang.JAVA});let l=!1;if(i.withComments&&addComments(p,e),i.withImports&&addImports(p,e),i.withWrapper&&(p.push("public class App {"),p.push(1,"public static void main(String[] args) throws Exception {"),p.push(2,"var httpClient = HttpClient.newBuilder().build();"),p.blank()),null===(r=e.securityOAuth2ExtraCalls)||void 0===r?void 0:r.length){const t=new __1.HTTPSnippet(null===(n=e.securityOAuth2ExtraCalls)||void 0===n?void 0:n[0]).convert(s,a,Object.assign(Object.assign({},i),{withImports:!1,withWrapper:!1,withComments:!1,variablesPrefix:"oauth2"}));p.push(t),p.blank(),p.push(2,"var oauth2Response = httpClient.send(oauth2Request, HttpResponse.BodyHandlers.ofString());"),p.push(2,'var accessToken = new JSONObject(oauth2Response.body()).getString("access_token");'),p.blank()}if(e.postData)switch((0,utils_1.normalizeMimeType)(e.postData.mimeType)){case constants_2.MediaTypes.URL_ENCODED:e.postData.params&&(p.push(2,"HashMap<String, String> params = new HashMap<>();"),e.postData.params.forEach((e=>{p.push(2,'params.put("%s", "%s");',e.name,e.value)})),p.blank(),p.push(2,"var form = params.keySet().stream()"),p.push(3,'.map(key -> key + "=" + URLEncoder.encode(params.get(key), StandardCharsets.UTF_8))'),p.push(3,'.collect(Collectors.joining("&"));'),p.blank());break;case constants_2.MediaTypes.JSON:e.postData.jsonObj&&(p.push(2,`var payload = String.join("\\n"\n ${(0,code_helpers_1.addIndentation)(JSON.stringify(e.postData.jsonObj,null,1).replace(/"/g,'\\"').replace(/^/gm,', "').replace(/$/gm,'"'),{level:3,indent:i.indent,firstLine:!1})}`),p.push(2,");"),p.blank());break;case constants_2.MediaTypes.XML:e.postData.text&&(p.push(2,'var payload = String.join("\\n"'),e.postData.text.trim().split("\n").forEach((e=>{const t=e.replace(/"/g,'\\"');p.push(3,`, "${t}"`)})),p.push(2,");"),p.blank());break;case constants_2.MediaTypes.MULTIPART:l=!0,p.unshift("# multipart/form-data is not supported yet\n")}if(hasQueryParams(e)){p.push(2,"HashMap<String, String> params = new HashMap<>();");for(const[t,s]of Object.entries(e.uriObj.query))p.push(2,'params.put("%s", "%s");',t,s);p.blank(),p.push(2,"var query = params.keySet().stream()"),p.push(3,'.map(key -> key + "=" + URLEncoder.encode(params.get(key), StandardCharsets.UTF_8))'),p.push(3,'.collect(Collectors.joining("&"));'),p.blank()}p.push(2,`var ${p.var("host")} = "%s";`,e.uriObj.protocol+"//"+e.uriObj.host),(0,code_helpers_1.printUrlVariablesDeclarations)(e,p,2);const u=Object.assign(Object.assign({},e),{pathname:e.uriObj.pathname});p.push(2,`var ${p.var("pathname")} = %s;`,(0,code_helpers_1.buildUrlExpression)(u,p)),p.push(2,`var ${p.var("request")} = HttpRequest.newBuilder()`),"PATCH"===e.method.toUpperCase()?p.push(3,'.method("PATCH", %s)',getBody(e)):p.push(3,".%s(%s)",e.method.toUpperCase(),getBody(e)),p.push(3,`.uri(URI.create(${p.var("host")} + ${p.var("pathname")} %s))`,hasQueryParams(e)?"+ '?' + query":""),(null===(o=e.securityOAuth2ExtraCalls)||void 0===o?void 0:o.length)&&(e.allHeaders.Authorization='"Bearer " + accessToken');const h=Object.keys(e.allHeaders);if(h.length&&h.forEach((t=>{var s;p.push(3,'.header("%s", %s)',t,"Authorization"===t&&(null===(s=e.securityOAuth2ExtraCalls)||void 0===s?void 0:s.length)?e.allHeaders[t]:`"${e.allHeaders[t]}"`)})),e.basicAuth){const{username:t,password:s}=e.basicAuth;p.push(3,`.header("Authorization", "Basic " + Base64.getEncoder().encodeToString(("${t}:${s}").getBytes()))`)}return p.push(3,".build();"),i.withWrapper&&(p.blank(),p.push(2,"var response = httpClient.send(request, HttpResponse.BodyHandlers.ofString());"),p.blank(),p.push(2,"System.out.println(response.body());"),p.push(1,"}"),p.push("}")),l&&p.clean(),p.join()};function addComments(e,t){var s;e.push("/**"),e.push(" * Requires JDK >= 11"),(null===(s=t.securityOAuth2ExtraCalls)||void 0===s?void 0:s.length)&&(e.push(" *"),e.push(' * Requires package "org.json" >= 20201115'),e.push(" * See here for installation details:"),e.push(" * https://search.maven.org/artifact/org.json/json")),e.push(" */"),e.blank()}function addImports(e,t){var s,a,r,n;e.push("import java.net.*;"),e.push("import java.net.http.*;"),e.push("import java.util.*;"),((0,utils_1.normalizeMimeType)(null===(s=t.postData)||void 0===s?void 0:s.mimeType)===constants_2.MediaTypes.URL_ENCODED&&(null===(a=t.postData)||void 0===a?void 0:a.params)||(null===(r=t.securityOAuth2ExtraCalls)||void 0===r?void 0:r.length)||hasQueryParams(t))&&(e.push("import java.nio.charset.StandardCharsets;"),e.push("import java.util.stream.Collectors;")),(null===(n=t.securityOAuth2ExtraCalls)||void 0===n?void 0:n.length)&&e.push("import org.json.JSONObject;"),e.blank()}exports.info={key:"httpclient",title:"HttpClient",link:"https://docs.oracle.com/en/java/javase/11/docs/api/java.net.http/java/net/http/HttpClient.html",description:"HttpClient (Java SE 11 & JDK 11 )"},exports.default=handler;
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.info=void 0;const code_builder_1=require("../../helpers/code-builder"),__1=require("../.."),utils_1=require("../../../../utils"),code_helpers_1=require("../../helpers/code-helpers"),constants_1=require("../../helpers/constants"),constants_2=require("../../../../../constants"),hasQueryParams=e=>!(!e.uriObj.query||!Object.keys(e.uriObj.query).length),getBody=e=>e.postData&&e.postData.mimeType===constants_2.MediaTypes.URL_ENCODED?"HttpRequest.BodyPublishers.ofString(form)":e.postData?"HttpRequest.BodyPublishers.ofString(payload)":["POST","PUT","PATCH"].includes(e.method.toUpperCase())?'HttpRequest.BodyPublishers.ofString("some body text")':"",handler=function(e,t,{target:s,client:a}){var r,n,o;const i=Object.assign({indent:" ",withWrapper:!0},t),p=new code_builder_1.CodeBuilder({indentation:i.indent,variablesPrefix:i.variablesPrefix,capitalize:!0,lang:constants_1.Lang.JAVA});let l=!1;if(i.withComments&&addComments(p,e),i.withImports&&addImports(p,e),i.withWrapper&&(p.push("public class App {"),p.push(1,"public static void main(String[] args) throws Exception {"),p.push(2,"var httpClient = HttpClient.newBuilder().build();"),p.blank()),null===(r=e.securityOAuth2ExtraCalls)||void 0===r?void 0:r.length){const t=new __1.HTTPSnippet(null===(n=e.securityOAuth2ExtraCalls)||void 0===n?void 0:n[0]).convert(s,a,Object.assign(Object.assign({},i),{withImports:!1,withWrapper:!1,withComments:!1,variablesPrefix:"oauth2"}));p.push(t),p.blank(),p.push(2,"var oauth2Response = httpClient.send(oauth2Request, HttpResponse.BodyHandlers.ofString());"),p.push(2,'var accessToken = new JSONObject(oauth2Response.body()).getString("access_token");'),p.blank()}if(e.postData)switch((0,utils_1.normalizeMimeType)(e.postData.mimeType)){case constants_2.MediaTypes.URL_ENCODED:e.postData.params&&(p.push(2,"HashMap<String, String> params = new HashMap<>();"),e.postData.params.forEach((e=>{p.push(2,'params.put("%s", "%s");',e.name,e.value)})),p.blank(),p.push(2,"var form = params.keySet().stream()"),p.push(3,'.map(key -> key + "=" + URLEncoder.encode(params.get(key), StandardCharsets.UTF_8))'),p.push(3,'.collect(Collectors.joining("&"));'),p.blank());break;case constants_2.MediaTypes.JSON:e.postData.jsonObj&&(p.push(2,`var payload = String.join("\\n"\n ${(0,code_helpers_1.addIndentation)(JSON.stringify(e.postData.jsonObj,null,1).replace(/"/g,'\\"').replace(/^/gm,', "').replace(/$/gm,'"'),{level:3,indent:i.indent,firstLine:!1})}`),p.push(2,");"),p.blank());break;case constants_2.MediaTypes.XML:e.postData.text&&(p.push(2,'var payload = String.join("\\n"'),e.postData.text.trim().split("\n").forEach((e=>{const t=e.replace(/"/g,'\\"');p.push(3,`"${t}", `)})),p.push(2,");"),p.blank());break;case constants_2.MediaTypes.MULTIPART:l=!0,p.unshift("# multipart/form-data is not supported yet\n")}if(hasQueryParams(e)){p.push(2,"HashMap<String, String> params = new HashMap<>();");for(const[t,s]of Object.entries(e.uriObj.query))p.push(2,'params.put("%s", "%s");',t,s);p.blank(),p.push(2,"var query = params.keySet().stream()"),p.push(3,'.map(key -> key + "=" + URLEncoder.encode(params.get(key), StandardCharsets.UTF_8))'),p.push(3,'.collect(Collectors.joining("&"));'),p.blank()}p.push(2,`var ${p.var("host")} = "%s";`,e.uriObj.protocol+"//"+e.uriObj.host),(0,code_helpers_1.printUrlVariablesDeclarations)(e,p,2);const u=Object.assign(Object.assign({},e),{pathname:e.uriObj.pathname});p.push(2,`var ${p.var("pathname")} = %s;`,(0,code_helpers_1.buildUrlExpression)(u,p)),p.push(2,`var ${p.var("request")} = HttpRequest.newBuilder()`),"PATCH"===e.method.toUpperCase()?p.push(3,'.method("PATCH", %s)',getBody(e)):p.push(3,".%s(%s)",e.method.toUpperCase(),getBody(e)),p.push(3,`.uri(URI.create(${p.var("host")} + ${p.var("pathname")} %s))`,hasQueryParams(e)?"+ '?' + query":""),(null===(o=e.securityOAuth2ExtraCalls)||void 0===o?void 0:o.length)&&(e.allHeaders.Authorization='"Bearer " + accessToken');const h=Object.keys(e.allHeaders);if(h.length&&h.forEach((t=>{var s;p.push(3,'.header("%s", %s)',t,"Authorization"===t&&(null===(s=e.securityOAuth2ExtraCalls)||void 0===s?void 0:s.length)?e.allHeaders[t]:`"${e.allHeaders[t]}"`)})),e.basicAuth){const{username:t,password:s}=e.basicAuth;p.push(3,`.header("Authorization", "Basic " + Base64.getEncoder().encodeToString(("${t}:${s}").getBytes()))`)}return p.push(3,".build();"),i.withWrapper&&(p.blank(),p.push(2,"var response = httpClient.send(request, HttpResponse.BodyHandlers.ofString());"),p.blank(),p.push(2,"System.out.println(response.body());"),p.push(1,"}"),p.push("}")),l&&p.clean(),p.join()};function addComments(e,t){var s;e.push("/**"),e.push(" * Requires JDK >= 11"),(null===(s=t.securityOAuth2ExtraCalls)||void 0===s?void 0:s.length)&&(e.push(" *"),e.push(' * Requires package "org.json" >= 20201115'),e.push(" * See here for installation details:"),e.push(" * https://search.maven.org/artifact/org.json/json")),e.push(" */"),e.blank()}function addImports(e,t){var s,a,r,n;e.push("import java.net.*;"),e.push("import java.net.http.*;"),e.push("import java.util.*;"),((0,utils_1.normalizeMimeType)(null===(s=t.postData)||void 0===s?void 0:s.mimeType)===constants_2.MediaTypes.URL_ENCODED&&(null===(a=t.postData)||void 0===a?void 0:a.params)||(null===(r=t.securityOAuth2ExtraCalls)||void 0===r?void 0:r.length)||hasQueryParams(t))&&(e.push("import java.nio.charset.StandardCharsets;"),e.push("import java.util.stream.Collectors;")),(null===(n=t.securityOAuth2ExtraCalls)||void 0===n?void 0:n.length)&&e.push("import org.json.JSONObject;"),e.blank()}exports.info={key:"httpclient",title:"HttpClient",link:"https://docs.oracle.com/en/java/javase/11/docs/api/java.net.http/java/net/http/HttpClient.html",description:"HttpClient (Java SE 11 & JDK 11 )"},exports.default=handler;
2
2
  //# sourceMappingURL=httpclient.js.map
@@ -1,2 +1,2 @@
1
- "use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.info=void 0;const code_builder_1=require("../../helpers/code-builder"),index_1=require("../../index"),utils_1=require("../../../../utils"),generator_1=require("../../../generator"),constants_1=require("../../helpers/constants"),code_helpers_1=require("../../helpers/code-helpers"),constants_2=require("../../../../../constants"),handler=function(t,e,{target:s,client:a}){var r,i;const n=Object.assign({indent:" ",withWrapper:!0},e),p=new code_builder_1.CodeBuilder({indentation:n.indent,variablesPrefix:n.variablesPrefix,capitalize:!0,lang:constants_1.Lang.JAVA8}),o=formatHttpMethod(t.method);if(n.withComments&&addComments(p),n.withImports&&addImports(p,t),n.withWrapper&&(p.push("public class App {"),p.push(1,"public static void main(String[] args ) throws java.io.IOException {"),p.push(2,"HttpClient httpClient = HttpClientBuilder.create().build();"),p.blank()),null===(r=t.securityOAuth2ExtraCalls)||void 0===r?void 0:r.length){const e=new index_1.HTTPSnippet(null===(i=t.securityOAuth2ExtraCalls)||void 0===i?void 0:i[0]).convert(s,a,Object.assign(Object.assign({},n),{withImports:!1,withWrapper:!1,withComments:!1,variablesPrefix:"oauth2"}));p.push(e),p.push(2,"JSONObject %s = new JSONObject(EntityUtils.toString(httpClient.execute(%s).getEntity()));","oauth2Response","oauth2Request"),p.push(2,'String accessToken = %s.getString("access_token");',"oauth2Response"),p.blank()}(0,code_helpers_1.printUrlVariablesDeclarations)(t,p,2);const u=(0,code_helpers_1.buildUrlExpression)(t,p);p.push(2,`%s ${p.var("request")} = new %s(%s);`,o,o,u);const h=Object.keys(t.allHeaders);if(!h.length||t.postData&&t.postData.mimeType==constants_2.MediaTypes.MULTIPART||h.forEach((e=>{var s;p.push(2,'%s.setHeader("%s", %s);',p.var("request"),e,(null===(s=t.securityOAuth2ExtraCalls)||void 0===s?void 0:s.length)?'"Bearer " + accessToken':`"${t.allHeaders[e]}"`)})),t.basicAuth){const{username:e,password:s}=t.basicAuth;p.push(2,`String encodedString = Base64.getEncoder().encodeToString("${e}:${s}".getBytes());`),p.push(2,'%s.setHeader("%s", "%s"+encodedString);',p.var("request"),"Authorization","Basic ")}if(t.postData)switch((0,utils_1.normalizeMimeType)(t.postData.mimeType)){case constants_2.MediaTypes.URL_ENCODED:t.postData.params&&(p.blank(),p.push(2,"List<NameValuePair> params = new ArrayList<NameValuePair>();"),t.postData.params.forEach((t=>{p.push(2,'params.add(new BasicNameValuePair("%s", "%s"));',t.name,t.value)})),p.push(2,"%s.setEntity(new UrlEncodedFormEntity(params));",p.var("request")),p.blank());break;case constants_2.MediaTypes.MULTIPART:t.postData.params&&(p.push(2,"MultipartEntity reqEntity = new MultipartEntity();"),t.postData.params.forEach((t=>{p.push(2,'reqEntity.addPart("%s", %s);',t.name,isString(t.value)?`new StringBody("${t.value}")`:t.value)})),p.push(2,"%s.setEntity(reqEntity);",p.var("request")));break;case constants_2.MediaTypes.JSON:if(t.postData.jsonObj){p.push(2,"JSONObject payload = new JSONObject();");for(const[e,s]of Object.entries(t.postData.jsonObj))Array.isArray(s)?(p.push(2,'payload.put("%s", new JSONArray()',e),s.forEach((t=>{isObject(t)?(p.push(3,".put(new JSONObject()"),c(t,4),p.push(3,")")):p.push(3,".put(%s)",formatValue(t))})),p.push(2,");")):isObject(s)?(p.push(2,'payload.put("%s", new JSONObject()%s',e,(0,utils_1.isEmptyObject)(s)?");":""),c(s,3),(0,utils_1.isEmptyObject)(s)||p.push(2,");")):p.push(2,'payload.put("%s", %s);',e,formatValue(s));p.push(2,"%s.setEntity(new StringEntity(payload.toString()));",p.var("request"))}break;case constants_2.MediaTypes.XML:t.postData.text&&(p.push(2,'String payload = String.join("\\n"'),t.postData.text.trim().split("\n").forEach((t=>{const e=t.replace(/"/g,'\\"');p.push(3,`, "${e}"`)})),p.push(2,");"),p.push(2,"%s.setEntity(new StringEntity(payload));",p.var("request")))}return n.withWrapper&&(p.push(2,`String ${p.var("response")} = EntityUtils.toString(httpClient.execute(request).getEntity());`),p.blank(),p.push(2,"System.out.println(response);"),p.push(1,"}"),p.push("}")),p.join();function c(t,e){for(const[s,a]of Object.entries(t))isObject(a)?(p.push(e,'.put("%s", new JSONObject()',s),c(a,e+1),p.push(e,")")):p.push(e,'.put("%s", %s)',s,formatValue(a))}};function addComments(t){t.push("/**"),t.push(" * Requires JDK >= 8"),t.push(" *"),t.push(" * Requires Apache HttpComponents Client >= 4.3.5"),t.push(" * See here for installation details:"),t.push(" * https://search.maven.org/artifact/org.apache.httpcomponents/httpcomponents-client"),t.push(" *"),t.push(' * Requires package "junit4"'),t.push(" * See here for installation details:"),t.push(" * https://junit.org/junit4"),t.push(" *"),t.push(' * Requires package "org.json" >= 20180130'),t.push(" * See here for installation details:"),t.push(" * https://search.maven.org/artifact/org.json/json"),t.push(" */"),t.blank()}function addImports(t,e){var s,a,r;t.push("import org.apache.http.util.EntityUtils;"),t.push("import org.apache.http.NameValuePair;"),t.push("import org.apache.http.client.HttpClient;"),t.push("import org.apache.http.client.entity.UrlEncodedFormEntity;"),e.method&&addHttpMethodImport(t,e.method),(null===(s=e.securityOAuth2ExtraCalls)||void 0===s?void 0:s.length)&&(null===(a=e.securityOAuth2ExtraCalls)||void 0===a?void 0:a[0].method.toLowerCase())!==e.method.toLowerCase()&&addHttpMethodImport(t,null===(r=e.securityOAuth2ExtraCalls)||void 0===r?void 0:r[0].method),t.push("import org.apache.http.impl.client.HttpClientBuilder;"),t.push("import org.apache.http.message.BasicNameValuePair;"),t.push("import org.apache.http.entity.StringEntity;"),t.push("import org.json.JSONObject;"),t.push("import org.json.JSONArray;"),t.push("import java.util.ArrayList;"),t.push("import java.util.List;"),t.push("import org.apache.http.entity.mime.MultipartEntity;"),t.push("import org.apache.http.entity.mime.content.StringBody;"),e.basicAuth&&t.push("import java.util.Base64;"),t.blank()}function addHttpMethodImport(t,e){const s=formatHttpMethod(e);t.push(`import org.apache.http.client.methods.${s};`)}function formatHttpMethod(t){return"Http"+(0,generator_1.capitalizeFirst)(t.toLowerCase())}function isString(t){return"[object String]"===Object.prototype.toString.call(t)}function isObject(t){const e=typeof t;return"function"===e||"object"===e&&!!t}function formatValue(t){return isString(t)?JSON.stringify(t):null==t?"JSONObject.NULL":t}exports.info={key:"apachehttp",title:"Apache http",link:"https://hc.apache.org/httpcomponents-client-4.5.x/",description:"Apache HttpClient"},exports.default=handler;
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.info=void 0;const code_builder_1=require("../../helpers/code-builder"),index_1=require("../../index"),utils_1=require("../../../../utils"),generator_1=require("../../../generator"),constants_1=require("../../helpers/constants"),code_helpers_1=require("../../helpers/code-helpers"),constants_2=require("../../../../../constants"),handler=function(t,e,{target:s,client:a}){var r,i;const n=Object.assign({indent:" ",withWrapper:!0},e),p=new code_builder_1.CodeBuilder({indentation:n.indent,variablesPrefix:n.variablesPrefix,capitalize:!0,lang:constants_1.Lang.JAVA8}),o=formatHttpMethod(t.method);if(n.withComments&&addComments(p),n.withImports&&addImports(p,t),n.withWrapper&&(p.push("public class App {"),p.push(1,"public static void main(String[] args ) throws java.io.IOException {"),p.push(2,"HttpClient httpClient = HttpClientBuilder.create().build();"),p.blank()),null===(r=t.securityOAuth2ExtraCalls)||void 0===r?void 0:r.length){const e=new index_1.HTTPSnippet(null===(i=t.securityOAuth2ExtraCalls)||void 0===i?void 0:i[0]).convert(s,a,Object.assign(Object.assign({},n),{withImports:!1,withWrapper:!1,withComments:!1,variablesPrefix:"oauth2"}));p.push(e),p.push(2,"JSONObject %s = new JSONObject(EntityUtils.toString(httpClient.execute(%s).getEntity()));","oauth2Response","oauth2Request"),p.push(2,'String accessToken = %s.getString("access_token");',"oauth2Response"),p.blank()}(0,code_helpers_1.printUrlVariablesDeclarations)(t,p,2);const u=(0,code_helpers_1.buildUrlExpression)(t,p);p.push(2,`%s ${p.var("request")} = new %s(%s);`,o,o,u);const h=Object.keys(t.allHeaders);if(!h.length||t.postData&&t.postData.mimeType==constants_2.MediaTypes.MULTIPART||h.forEach((e=>{var s;p.push(2,'%s.setHeader("%s", %s);',p.var("request"),e,(null===(s=t.securityOAuth2ExtraCalls)||void 0===s?void 0:s.length)?'"Bearer " + accessToken':`"${t.allHeaders[e]}"`)})),t.basicAuth){const{username:e,password:s}=t.basicAuth;p.push(2,`String encodedString = Base64.getEncoder().encodeToString("${e}:${s}".getBytes());`),p.push(2,'%s.setHeader("%s", "%s"+encodedString);',p.var("request"),"Authorization","Basic ")}if(t.postData)switch((0,utils_1.normalizeMimeType)(t.postData.mimeType)){case constants_2.MediaTypes.URL_ENCODED:t.postData.params&&(p.blank(),p.push(2,"List<NameValuePair> params = new ArrayList<NameValuePair>();"),t.postData.params.forEach((t=>{p.push(2,'params.add(new BasicNameValuePair("%s", "%s"));',t.name,t.value)})),p.push(2,"%s.setEntity(new UrlEncodedFormEntity(params));",p.var("request")),p.blank());break;case constants_2.MediaTypes.MULTIPART:t.postData.params&&(p.push(2,"MultipartEntity reqEntity = new MultipartEntity();"),t.postData.params.forEach((t=>{p.push(2,'reqEntity.addPart("%s", %s);',t.name,isString(t.value)?`new StringBody("${t.value}")`:t.value)})),p.push(2,"%s.setEntity(reqEntity);",p.var("request")));break;case constants_2.MediaTypes.JSON:if(t.postData.jsonObj){p.push(2,"JSONObject payload = new JSONObject();");for(const[e,s]of Object.entries(t.postData.jsonObj))Array.isArray(s)?(p.push(2,'payload.put("%s", new JSONArray()',e),s.forEach((t=>{isObject(t)?(p.push(3,".put(new JSONObject()"),c(t,4),p.push(3,")")):p.push(3,".put(%s)",formatValue(t))})),p.push(2,");")):isObject(s)?(p.push(2,'payload.put("%s", new JSONObject()%s',e,(0,utils_1.isEmptyObject)(s)?");":""),c(s,3),(0,utils_1.isEmptyObject)(s)||p.push(2,");")):p.push(2,'payload.put("%s", %s);',e,formatValue(s));p.push(2,"%s.setEntity(new StringEntity(payload.toString()));",p.var("request"))}break;case constants_2.MediaTypes.XML:t.postData.text&&(p.push(2,'String payload = String.join("\\n"'),t.postData.text.trim().split("\n").forEach((t=>{const e=t.replace(/"/g,'\\"');p.push(3,`"${e}", `)})),p.push(2,");"),p.push(2,"%s.setEntity(new StringEntity(payload));",p.var("request")))}return n.withWrapper&&(p.push(2,`String ${p.var("response")} = EntityUtils.toString(httpClient.execute(request).getEntity());`),p.blank(),p.push(2,"System.out.println(response);"),p.push(1,"}"),p.push("}")),p.join();function c(t,e){for(const[s,a]of Object.entries(t))isObject(a)?(p.push(e,'.put("%s", new JSONObject()',s),c(a,e+1),p.push(e,")")):p.push(e,'.put("%s", %s)',s,formatValue(a))}};function addComments(t){t.push("/**"),t.push(" * Requires JDK >= 8"),t.push(" *"),t.push(" * Requires Apache HttpComponents Client >= 4.3.5"),t.push(" * See here for installation details:"),t.push(" * https://search.maven.org/artifact/org.apache.httpcomponents/httpcomponents-client"),t.push(" *"),t.push(' * Requires package "junit4"'),t.push(" * See here for installation details:"),t.push(" * https://junit.org/junit4"),t.push(" *"),t.push(' * Requires package "org.json" >= 20180130'),t.push(" * See here for installation details:"),t.push(" * https://search.maven.org/artifact/org.json/json"),t.push(" */"),t.blank()}function addImports(t,e){var s,a,r;t.push("import org.apache.http.util.EntityUtils;"),t.push("import org.apache.http.NameValuePair;"),t.push("import org.apache.http.client.HttpClient;"),t.push("import org.apache.http.client.entity.UrlEncodedFormEntity;"),e.method&&addHttpMethodImport(t,e.method),(null===(s=e.securityOAuth2ExtraCalls)||void 0===s?void 0:s.length)&&(null===(a=e.securityOAuth2ExtraCalls)||void 0===a?void 0:a[0].method.toLowerCase())!==e.method.toLowerCase()&&addHttpMethodImport(t,null===(r=e.securityOAuth2ExtraCalls)||void 0===r?void 0:r[0].method),t.push("import org.apache.http.impl.client.HttpClientBuilder;"),t.push("import org.apache.http.message.BasicNameValuePair;"),t.push("import org.apache.http.entity.StringEntity;"),t.push("import org.json.JSONObject;"),t.push("import org.json.JSONArray;"),t.push("import java.util.ArrayList;"),t.push("import java.util.List;"),t.push("import org.apache.http.entity.mime.MultipartEntity;"),t.push("import org.apache.http.entity.mime.content.StringBody;"),e.basicAuth&&t.push("import java.util.Base64;"),t.blank()}function addHttpMethodImport(t,e){const s=formatHttpMethod(e);t.push(`import org.apache.http.client.methods.${s};`)}function formatHttpMethod(t){return"Http"+(0,generator_1.capitalizeFirst)(t.toLowerCase())}function isString(t){return"[object String]"===Object.prototype.toString.call(t)}function isObject(t){const e=typeof t;return"function"===e||"object"===e&&!!t}function formatValue(t){return isString(t)?JSON.stringify(t):null==t?"JSONObject.NULL":t}exports.info={key:"apachehttp",title:"Apache http",link:"https://hc.apache.org/httpcomponents-client-4.5.x/",description:"Apache HttpClient"},exports.default=handler;
2
2
  //# sourceMappingURL=apachehttp.js.map
@@ -0,0 +1,2 @@
1
+ import type { MediaTypeModel } from '../models';
2
+ export declare const convertExamplesFormat: (mediaType: MediaTypeModel) => MediaTypeModel;
@@ -0,0 +1,2 @@
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.convertExamplesFormat=void 0;const jstoxml_1=require("jstoxml"),openapi_1=require("./openapi"),convertExamplesFormat=e=>{if(!e.examples)return e;const t=Object.fromEntries(Object.entries(e.examples).map((([e,t])=>(0,openapi_1.isXmlLike)(t.mime)&&t.value&&"object"==typeof t.value?[e,Object.assign(Object.assign({},t),{value:(0,jstoxml_1.toXML)(t.value,{indent:" "})})]:[e,t])));return Object.assign(Object.assign({},e),{examples:t})};exports.convertExamplesFormat=convertExamplesFormat;
2
+ //# sourceMappingURL=convertExamplesFormat.js.map
@@ -10,6 +10,7 @@ export declare function getOperationId(operation: ExtendedOpenAPIOperation, pare
10
10
  export declare function detectType(schema: OpenAPISchema): string;
11
11
  export declare function isPrimitiveType(schema: OpenAPISchema, type?: string | string[] | undefined): boolean;
12
12
  export declare function isJsonLike(contentType: string): boolean;
13
+ export declare function isXmlLike(contentType: string): boolean;
13
14
  export declare function isFormUrlEncoded(contentType: string): boolean;
14
15
  export declare function isMultipartFormData(contentType: string): boolean;
15
16
  export declare function urlFormEncodePayload(payload: GenericObject, encoding?: {
@@ -1,2 +1,2 @@
1
- "use strict";var __importDefault=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(exports,"__esModule",{value:!0}),exports.getContentWithLegacyExamples=exports.pluralizeType=exports.extractExtensions=exports.isRedocExtension=exports.shortenHTTPVerb=exports.normalizeServers=exports.mergeParams=exports.sortByDeprecated=exports.sortByRequired=exports.humanizeConstraints=exports.humanizeNumberRange=exports.getDefinitionName=exports.isNamedDefinition=exports.langFromMime=exports.serializeParameterValue=exports.serializeParameterValueWithMime=exports.serializeQueryParameter=exports.urlFormEncodePayload=exports.isMultipartFormData=exports.isFormUrlEncoded=exports.isJsonLike=exports.isPrimitiveType=exports.detectType=exports.getOperationId=exports.getOperationName=exports.isOperationName=exports.getStatusCodeType=exports.isStatusCode=void 0;const path_1=require("path"),url_template_1=__importDefault(require("url-template")),theme_1=require("@redocly/theme"),helpers_1=require("./helpers"),constants_1=require("../constants"),JsonPointer_1=require("./JsonPointer"),services_1=require("../services");function isWildcardStatusCode(e){return"string"==typeof e&&/\dxx/i.test(e)}function isStatusCode(e){return"default"===e||(0,helpers_1.isNumeric)(e)||isWildcardStatusCode(e)}function getStatusCodeType(e,r=!1){if("default"===e)return r?"error":"success";let t="string"==typeof e?parseInt(e,10):e;if(isWildcardStatusCode(e)&&(t*=100),t<100||t>599)throw new Error("invalid HTTP code");let i="success";return t>=300&&t<400?i="redirect":t>=400?i="error":t<200&&(i="info"),i}exports.isStatusCode=isStatusCode,exports.getStatusCodeType=getStatusCodeType;const operationNames={get:!0,post:!0,put:!0,head:!0,patch:!0,delete:!0,options:!0,$ref:!0};function isOperationName(e){return e in operationNames}function getOperationName(e){const{operationId:r,pathName:t}=e,i=(0,helpers_1.normalizeText)((0,helpers_1.getValueFromMdParsedExtension)(e,"description"));return(0,helpers_1.normalizeText)((0,helpers_1.getValueFromMdParsedExtension)(e,"summary"))||r||i&&i.substring(0,50)||t||"<no summary>"}function getOperationId(e,r){var t;return(null==r?void 0:r.id)?(0,services_1.joinWithSeparator)(r.id,(0,helpers_1.sanitizeItemId)(e.operationId?e.operationId:pointerToId(e.pointer))).toLowerCase():(null===(t=e.tags)||void 0===t?void 0:t.length)?(0,helpers_1.sanitizeItemId)(e.operationId?e.operationId:pointerToId(e.pointer)):(0,helpers_1.sanitizeItemId)(e.operationId?(0,services_1.joinWithSeparator)(constants_1.DEFAULT_TAG_SLUG,e.operationId):pointerToId(e.pointer))}function pointerToId(e){return(null==e?void 0:e.startsWith("/"))?e.slice(1,e.length):e}exports.isOperationName=isOperationName,exports.getOperationName=getOperationName,exports.getOperationId=getOperationId;const schemaKeywordTypes={multipleOf:"number",maximum:"number",exclusiveMaximum:"number",minimum:"number",exclusiveMinimum:"number",maxLength:"string",minLength:"string",pattern:"string",contentEncoding:"string",contentMediaType:"string",items:"array",maxItems:"array",minItems:"array",uniqueItems:"array",maxProperties:"object",minProperties:"object",required:"object",additionalProperties:"object",unevaluatedProperties:"object",patternProperties:"object",properties:"object"};function detectType(e){if(void 0!==e.type&&!Array.isArray(e.type))return e.type;const r=Object.keys(schemaKeywordTypes);for(const t of r){const r=schemaKeywordTypes[t];if(void 0!==e[t])return r}return"any"}function isPrimitiveType(e,r=e.type){if(e["x-circular-ref"])return!0;if(void 0!==e.oneOf||void 0!==e.anyOf)return!1;if(e.if&&e.then||e.if&&e.else)return!1;let t=!0;const i=Array.isArray(r);return("object"===r||i&&(null==r?void 0:r.includes("object")))&&(t=void 0!==e.properties?0===Object.keys(e.properties).length:void 0===e.additionalProperties&&void 0===e.unevaluatedProperties&&void 0===e.patternProperties),!Array.isArray(e.items)&&!Array.isArray(e.prefixItems)&&(void 0!==e.items&&"boolean"!=typeof e.items&&("array"===r||i&&(null==r?void 0:r.includes("array")))&&(t=isPrimitiveType(e.items,e.items.type)),t)}function isJsonLike(e){return-1!==e.search(/json/i)}function isFormUrlEncoded(e){return e===constants_1.MediaTypes.URL_ENCODED}function isMultipartFormData(e){return e===constants_1.MediaTypes.MULTIPART}function delimitedEncodeField(e,r,t){return Array.isArray(e)?e.map((e=>e.toString())).join(t):"object"==typeof e?Object.keys(e).map((r=>`${r}${t}${e[r]}`)).join(t):r+"="+e.toString()}function deepObjectEncodeField(e,r){return Array.isArray(e)?(console.warn("deepObject style cannot be used with array value:"+e.toString()),""):"object"==typeof e?Object.keys(e).map((t=>e[t]?`${r}[${t}]=${e[t]}`:void 0)).filter(Boolean).join("&"):(console.warn("deepObject style cannot be used with non-object value:"+e.toString()),"")}function serializeFormValue(e,r,t){const i="__redoc_param_name__",n=r?"*":"";return url_template_1.default.parse(`{?${i}${n}}`).expand({[i]:t}).substring(1).replace(/__redoc_param_name__/g,e)}function serializeSimpleValue(e,r){const t=e?"*":"",i="__redoc_param_name__",n=url_template_1.default.parse(`{${i}${t}}`);return decodeURIComponent(n.expand({[i]:r}))}function urlFormEncodePayload(e,r={}){if(Array.isArray(e))throw new Error("Payload must have fields: "+e.toString());return Object.keys(e).map((t=>{const i=e[t],{style:n="form",explode:o=!0}=r[t]||{};switch(n){case"form":return serializeFormValue(t,o,i);case"spaceDelimited":return delimitedEncodeField(i,t,"%20");case"pipeDelimited":return delimitedEncodeField(i,t,"|");case"deepObject":return deepObjectEncodeField(i,t);default:return console.warn("Incorrect or unsupported encoding style: "+n),""}})).join("&")}function serializePathParameter(e,r,t,i){const n=t?"*":"";let o="";"label"===r?o=".":"matrix"===r&&(o=";");const a="__redoc_param_name__";return url_template_1.default.parse(`{${o}${a}${n}}`).expand({[a]:i}).replace(/__redoc_param_name__/g,e)}function serializeQueryParameter(e,r,t,i){const n=n=>{switch(r){case"form":return serializeFormValue(e,t,n);case"spaceDelimited":return Array.isArray(n)||"object"==typeof n?t?serializeFormValue(e,t,n):delimitedEncodeField(i,e,"%20"):(console.warn("The style spaceDelimited is applicable to arrays or objects"),"");case"pipeDelimited":return Array.isArray(n)||"object"==typeof n?t?serializeFormValue(e,t,n):delimitedEncodeField(i,e,"|"):(console.warn("The style pipeDelimited is applicable to arrays or objects"),"");case"deepObject":return!t||Array.isArray(n)||"object"!=typeof n?(console.warn("The style deepObject is only applicable for objects with explode=true"),""):deepObjectEncodeField(n,e);case"simple":return serializeSimpleValue(t,i);default:return console.warn("Unexpected style for query: "+r),""}};return(0,helpers_1.isArrayOfObjects)(i)&&(i=(0,helpers_1.deleteEmptyArrayItem)(i).map((e=>n(e)))),n(i)}function serializeHeaderParameter(e,r,t){return"simple"===e?serializeSimpleValue(r,t):(console.warn("Unexpected style for header: "+e),"")}function serializeCookieParameter(e,r,t,i){return"form"===r?serializeFormValue(e,t,i):(console.warn("Unexpected style for cookie: "+r),"")}function serializeParameterValueWithMime(e,r){return isJsonLike(r)?JSON.stringify(e):(console.warn(`Parameter serialization as ${r} is not supported`),"")}function serializeParameterValue(e,r){const{name:t,style:i,explode:n=!1,serializationMime:o}=e;if(o)switch(e.in){case"path":case"header":return serializeParameterValueWithMime(r,o);case"cookie":case"query":return`${t}=${serializeParameterValueWithMime(r,o)}`;default:return console.warn("Unexpected parameter location: "+e.in),""}if(!i)return console.warn(`Missing style attribute or content for parameter ${t}`),"";switch(e.in){case"path":return serializePathParameter(t,i,n,r);case"query":return serializeQueryParameter(t,i,n,r);case"header":return serializeHeaderParameter(i,n,r);case"cookie":return serializeCookieParameter(t,i,n,r);default:return console.warn("Unexpected parameter location: "+e.in),""}}function langFromMime(e){return-1!==e.search(/xml/i)?"xml":"clike"}exports.detectType=detectType,exports.isPrimitiveType=isPrimitiveType,exports.isJsonLike=isJsonLike,exports.isFormUrlEncoded=isFormUrlEncoded,exports.isMultipartFormData=isMultipartFormData,exports.urlFormEncodePayload=urlFormEncodePayload,exports.serializeQueryParameter=serializeQueryParameter,exports.serializeParameterValueWithMime=serializeParameterValueWithMime,exports.serializeParameterValue=serializeParameterValue,exports.langFromMime=langFromMime;const DEFINITION_NAME_REGEX=/^#\/components\/(schemas|pathItems)\/([^/]+)$/;function isNamedDefinition(e){return DEFINITION_NAME_REGEX.test(e||"")}function getDefinitionName(e){var r;return null===(r=null==e?void 0:e.match(DEFINITION_NAME_REGEX))||void 0===r?void 0:r.pop()}function humanizeMultipleOfConstraint(e){if(void 0===e)return;const r=e.toString(10);return/^0\.0*1$/.test(r)?`decimal places <= ${r.split(".")[1].length}`:`multiple of ${r}`}function humanizeRangeConstraint(e,r,t){let i;return void 0!==r&&void 0!==t?i=r===t?`= ${r} ${e}`:`[ ${r} .. ${t} ] ${e}`:void 0!==t?i=`<= ${t} ${e}`:void 0!==r&&(i=1===r?"non-empty":`>= ${r} ${e}`),i}function humanizeNumberRange(e){var r,t;const i="number"==typeof e.exclusiveMinimum?Math.min(e.exclusiveMinimum,null!==(r=e.minimum)&&void 0!==r?r:1/0):e.minimum,n="number"==typeof e.exclusiveMaximum?Math.max(e.exclusiveMaximum,null!==(t=e.maximum)&&void 0!==t?t:-1/0):e.maximum,o="number"==typeof e.exclusiveMinimum||e.exclusiveMinimum,a="number"==typeof e.exclusiveMaximum||e.exclusiveMaximum;return void 0!==i&&void 0!==n?`${o?"( ":"[ "}${i} .. ${n}${a?" )":" ]"}`:void 0!==n?`${a?"< ":"<= "}${n}`:void 0!==i?`${o?"> ":">= "}${i}`:void 0}function humanizeConstraints(e){const r=[],t=humanizeRangeConstraint("characters",e.minLength,e.maxLength);void 0!==t&&r.push(t);const i=humanizeRangeConstraint("items",e.minItems,e.maxItems);void 0!==i&&r.push(i);const n=humanizeRangeConstraint(1===e.minProperties&&1===e.maxProperties?"property":"properties",e.minProperties,e.maxProperties);void 0!==n&&r.push(n);const o=humanizeMultipleOfConstraint(e.multipleOf);void 0!==o&&r.push(o);const a=humanizeNumberRange(e);return void 0!==a&&r.push(a),e.uniqueItems&&r.push("unique"),r}function sortByRequired(e,r=[]){const t=[],i=[],n=[];return e.forEach((e=>{e.required?r.includes(e.name)?i.push(e):n.push(e):t.push(e)})),i.sort(((e,t)=>r.indexOf(e.name)-r.indexOf(t.name))),[...i,...n,...t]}function sortByDeprecated(e){return e.sort(((e,r)=>Number(e.deprecated)-Number(r.deprecated)))}function mergeParams(e,r=[],t=[],{pathPointer:i,operationPointer:n}){const o={};t.forEach((r=>{({resolved:r}=e.deref(r)),o[r.name+"_"+r.in]=!0}));return[...r.map(((e,r)=>({paramOrRef:e,pointer:JsonPointer_1.JsonPointer.join(i,["parameters",String(r)])}))).filter((({paramOrRef:r})=>(({resolved:r}=e.deref(r)),!o[r.name+"_"+r.in]))),...t.map(((e,r)=>({paramOrRef:e,pointer:JsonPointer_1.JsonPointer.join(n,["parameters",String(r)])})))]}function normalizeServers(e,r){const t=void 0===e?(0,helpers_1.removeQueryStringAndHash)((()=>{if(!theme_1.IS_BROWSER)return globalThis.SSR_HOSTNAME||"";const e=window.location.href;return e.endsWith(".html")?(0,path_1.dirname)(e):e})()):(0,path_1.dirname)(e);return 0===r.length&&(r=[{url:"/"}]),r.map((e=>{return Object.assign(Object.assign({},e),{url:(r=e.url,(0,helpers_1.resolveUrl)(t,r)),description:e.description||""});var r}))}exports.isNamedDefinition=isNamedDefinition,exports.getDefinitionName=getDefinitionName,exports.humanizeNumberRange=humanizeNumberRange,exports.humanizeConstraints=humanizeConstraints,exports.sortByRequired=sortByRequired,exports.sortByDeprecated=sortByDeprecated,exports.mergeParams=mergeParams,exports.normalizeServers=normalizeServers;const shortenHTTPVerb=e=>({delete:"del",options:"opts"}[e]||e);function isRedocExtension(e){return e in{"x-circular-ref":!0,"x-parentRefs":!0,"x-refsStack":!0,"x-codeSamples":!0,"x-displayName":!0,"x-examples":!0,"x-logo":!0,"x-nullable":!0,"x-servers":!0,"x-tagGroups":!0,"x-traitTag":!0,"x-additionalPropertiesName":!0,"x-explicitMappingOnly":!0,"x-enumDescriptions":!0,"x-hideReplay":!0,"x-tokenEndpointAuthMethod":!0,"x-feedback":!0,"x-badges":!0}||e.startsWith("x-parsed-md-")}function extractExtensions(e,r){return Object.keys(e).filter((e=>!0===r?e.startsWith("x-")&&!isRedocExtension(e):e.startsWith("x-")&&r.indexOf(e)>-1)).reduce(((r,t)=>(r[t]=e[t],r)),{})}function pluralizeType(e){return e.split(" or ").map((e=>e.replace(/^(string|object|number|integer|array|boolean)s?( ?.*)/,"$1s$2"))).join(" or ")}function getContentWithLegacyExamples(e){let r=e.content;const t=e["x-examples"],i=e["x-example"];if(t){r=Object.assign({},r);for(const e of Object.keys(t)){const i=t[e];r[e]=Object.assign(Object.assign({},r[e]),{examples:i})}}else if(i){r=Object.assign({},r);for(const e of Object.keys(i)){const t=i[e];r[e]=Object.assign(Object.assign({},r[e]),{example:t})}}return r}exports.shortenHTTPVerb=shortenHTTPVerb,exports.isRedocExtension=isRedocExtension,exports.extractExtensions=extractExtensions,exports.pluralizeType=pluralizeType,exports.getContentWithLegacyExamples=getContentWithLegacyExamples;
1
+ "use strict";var __importDefault=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(exports,"__esModule",{value:!0}),exports.getContentWithLegacyExamples=exports.pluralizeType=exports.extractExtensions=exports.isRedocExtension=exports.shortenHTTPVerb=exports.normalizeServers=exports.mergeParams=exports.sortByDeprecated=exports.sortByRequired=exports.humanizeConstraints=exports.humanizeNumberRange=exports.getDefinitionName=exports.isNamedDefinition=exports.langFromMime=exports.serializeParameterValue=exports.serializeParameterValueWithMime=exports.serializeQueryParameter=exports.urlFormEncodePayload=exports.isMultipartFormData=exports.isFormUrlEncoded=exports.isXmlLike=exports.isJsonLike=exports.isPrimitiveType=exports.detectType=exports.getOperationId=exports.getOperationName=exports.isOperationName=exports.getStatusCodeType=exports.isStatusCode=void 0;const path_1=require("path"),url_template_1=__importDefault(require("url-template")),theme_1=require("@redocly/theme"),helpers_1=require("./helpers"),constants_1=require("../constants"),JsonPointer_1=require("./JsonPointer"),services_1=require("../services");function isWildcardStatusCode(e){return"string"==typeof e&&/\dxx/i.test(e)}function isStatusCode(e){return"default"===e||(0,helpers_1.isNumeric)(e)||isWildcardStatusCode(e)}function getStatusCodeType(e,r=!1){if("default"===e)return r?"error":"success";let t="string"==typeof e?parseInt(e,10):e;if(isWildcardStatusCode(e)&&(t*=100),t<100||t>599)throw new Error("invalid HTTP code");let i="success";return t>=300&&t<400?i="redirect":t>=400?i="error":t<200&&(i="info"),i}exports.isStatusCode=isStatusCode,exports.getStatusCodeType=getStatusCodeType;const operationNames={get:!0,post:!0,put:!0,head:!0,patch:!0,delete:!0,options:!0,$ref:!0};function isOperationName(e){return e in operationNames}function getOperationName(e){const{operationId:r,pathName:t}=e,i=(0,helpers_1.normalizeText)((0,helpers_1.getValueFromMdParsedExtension)(e,"description"));return(0,helpers_1.normalizeText)((0,helpers_1.getValueFromMdParsedExtension)(e,"summary"))||r||i&&i.substring(0,50)||t||"<no summary>"}function getOperationId(e,r){var t;return(null==r?void 0:r.id)?(0,services_1.joinWithSeparator)(r.id,(0,helpers_1.sanitizeItemId)(e.operationId?e.operationId:pointerToId(e.pointer))).toLowerCase():(null===(t=e.tags)||void 0===t?void 0:t.length)?(0,helpers_1.sanitizeItemId)(e.operationId?e.operationId:pointerToId(e.pointer)):(0,helpers_1.sanitizeItemId)(e.operationId?(0,services_1.joinWithSeparator)(constants_1.DEFAULT_TAG_SLUG,e.operationId):pointerToId(e.pointer))}function pointerToId(e){return(null==e?void 0:e.startsWith("/"))?e.slice(1,e.length):e}exports.isOperationName=isOperationName,exports.getOperationName=getOperationName,exports.getOperationId=getOperationId;const schemaKeywordTypes={multipleOf:"number",maximum:"number",exclusiveMaximum:"number",minimum:"number",exclusiveMinimum:"number",maxLength:"string",minLength:"string",pattern:"string",contentEncoding:"string",contentMediaType:"string",items:"array",maxItems:"array",minItems:"array",uniqueItems:"array",maxProperties:"object",minProperties:"object",required:"object",additionalProperties:"object",unevaluatedProperties:"object",patternProperties:"object",properties:"object"};function detectType(e){if(void 0!==e.type&&!Array.isArray(e.type))return e.type;const r=Object.keys(schemaKeywordTypes);for(const t of r){const r=schemaKeywordTypes[t];if(void 0!==e[t])return r}return"any"}function isPrimitiveType(e,r=e.type){if(e["x-circular-ref"])return!0;if(void 0!==e.oneOf||void 0!==e.anyOf)return!1;if(e.if&&e.then||e.if&&e.else)return!1;let t=!0;const i=Array.isArray(r);return("object"===r||i&&(null==r?void 0:r.includes("object")))&&(t=void 0!==e.properties?0===Object.keys(e.properties).length:void 0===e.additionalProperties&&void 0===e.unevaluatedProperties&&void 0===e.patternProperties),!Array.isArray(e.items)&&!Array.isArray(e.prefixItems)&&(void 0!==e.items&&"boolean"!=typeof e.items&&("array"===r||i&&(null==r?void 0:r.includes("array")))&&(t=isPrimitiveType(e.items,e.items.type)),t)}function isJsonLike(e){return-1!==e.search(/json/i)}function isXmlLike(e){return-1!==(null==e?void 0:e.search(/xml/i))}function isFormUrlEncoded(e){return e===constants_1.MediaTypes.URL_ENCODED}function isMultipartFormData(e){return e===constants_1.MediaTypes.MULTIPART}function delimitedEncodeField(e,r,t){return Array.isArray(e)?e.map((e=>e.toString())).join(t):"object"==typeof e?Object.keys(e).map((r=>`${r}${t}${e[r]}`)).join(t):r+"="+e.toString()}function deepObjectEncodeField(e,r){return Array.isArray(e)?(console.warn("deepObject style cannot be used with array value:"+e.toString()),""):"object"==typeof e?Object.keys(e).map((t=>e[t]?`${r}[${t}]=${e[t]}`:void 0)).filter(Boolean).join("&"):(console.warn("deepObject style cannot be used with non-object value:"+e.toString()),"")}function serializeFormValue(e,r,t){const i="__redoc_param_name__",n=r?"*":"";return url_template_1.default.parse(`{?${i}${n}}`).expand({[i]:t}).substring(1).replace(/__redoc_param_name__/g,e)}function serializeSimpleValue(e,r){const t=e?"*":"",i="__redoc_param_name__",n=url_template_1.default.parse(`{${i}${t}}`);return decodeURIComponent(n.expand({[i]:r}))}function urlFormEncodePayload(e,r={}){if(Array.isArray(e))throw new Error("Payload must have fields: "+e.toString());return Object.keys(e).map((t=>{const i=e[t],{style:n="form",explode:o=!0}=r[t]||{};switch(n){case"form":return serializeFormValue(t,o,i);case"spaceDelimited":return delimitedEncodeField(i,t,"%20");case"pipeDelimited":return delimitedEncodeField(i,t,"|");case"deepObject":return deepObjectEncodeField(i,t);default:return console.warn("Incorrect or unsupported encoding style: "+n),""}})).join("&")}function serializePathParameter(e,r,t,i){const n=t?"*":"";let o="";"label"===r?o=".":"matrix"===r&&(o=";");const a="__redoc_param_name__";return url_template_1.default.parse(`{${o}${a}${n}}`).expand({[a]:i}).replace(/__redoc_param_name__/g,e)}function serializeQueryParameter(e,r,t,i){const n=n=>{switch(r){case"form":return serializeFormValue(e,t,n);case"spaceDelimited":return Array.isArray(n)||"object"==typeof n?t?serializeFormValue(e,t,n):delimitedEncodeField(i,e,"%20"):(console.warn("The style spaceDelimited is applicable to arrays or objects"),"");case"pipeDelimited":return Array.isArray(n)||"object"==typeof n?t?serializeFormValue(e,t,n):delimitedEncodeField(i,e,"|"):(console.warn("The style pipeDelimited is applicable to arrays or objects"),"");case"deepObject":return!t||Array.isArray(n)||"object"!=typeof n?(console.warn("The style deepObject is only applicable for objects with explode=true"),""):deepObjectEncodeField(n,e);case"simple":return serializeSimpleValue(t,i);default:return console.warn("Unexpected style for query: "+r),""}};return(0,helpers_1.isArrayOfObjects)(i)&&(i=(0,helpers_1.deleteEmptyArrayItem)(i).map((e=>n(e)))),n(i)}function serializeHeaderParameter(e,r,t){return"simple"===e?serializeSimpleValue(r,t):(console.warn("Unexpected style for header: "+e),"")}function serializeCookieParameter(e,r,t,i){return"form"===r?serializeFormValue(e,t,i):(console.warn("Unexpected style for cookie: "+r),"")}function serializeParameterValueWithMime(e,r){return isJsonLike(r)?JSON.stringify(e):(console.warn(`Parameter serialization as ${r} is not supported`),"")}function serializeParameterValue(e,r){const{name:t,style:i,explode:n=!1,serializationMime:o}=e;if(o)switch(e.in){case"path":case"header":return serializeParameterValueWithMime(r,o);case"cookie":case"query":return`${t}=${serializeParameterValueWithMime(r,o)}`;default:return console.warn("Unexpected parameter location: "+e.in),""}if(!i)return console.warn(`Missing style attribute or content for parameter ${t}`),"";switch(e.in){case"path":return serializePathParameter(t,i,n,r);case"query":return serializeQueryParameter(t,i,n,r);case"header":return serializeHeaderParameter(i,n,r);case"cookie":return serializeCookieParameter(t,i,n,r);default:return console.warn("Unexpected parameter location: "+e.in),""}}function langFromMime(e){return-1!==e.search(/xml/i)?"xml":"clike"}exports.detectType=detectType,exports.isPrimitiveType=isPrimitiveType,exports.isJsonLike=isJsonLike,exports.isXmlLike=isXmlLike,exports.isFormUrlEncoded=isFormUrlEncoded,exports.isMultipartFormData=isMultipartFormData,exports.urlFormEncodePayload=urlFormEncodePayload,exports.serializeQueryParameter=serializeQueryParameter,exports.serializeParameterValueWithMime=serializeParameterValueWithMime,exports.serializeParameterValue=serializeParameterValue,exports.langFromMime=langFromMime;const DEFINITION_NAME_REGEX=/^#\/components\/(schemas|pathItems)\/([^/]+)$/;function isNamedDefinition(e){return DEFINITION_NAME_REGEX.test(e||"")}function getDefinitionName(e){var r;return null===(r=null==e?void 0:e.match(DEFINITION_NAME_REGEX))||void 0===r?void 0:r.pop()}function humanizeMultipleOfConstraint(e){if(void 0===e)return;const r=e.toString(10);return/^0\.0*1$/.test(r)?`decimal places <= ${r.split(".")[1].length}`:`multiple of ${r}`}function humanizeRangeConstraint(e,r,t){let i;return void 0!==r&&void 0!==t?i=r===t?`= ${r} ${e}`:`[ ${r} .. ${t} ] ${e}`:void 0!==t?i=`<= ${t} ${e}`:void 0!==r&&(i=1===r?"non-empty":`>= ${r} ${e}`),i}function humanizeNumberRange(e){var r,t;const i="number"==typeof e.exclusiveMinimum?Math.min(e.exclusiveMinimum,null!==(r=e.minimum)&&void 0!==r?r:1/0):e.minimum,n="number"==typeof e.exclusiveMaximum?Math.max(e.exclusiveMaximum,null!==(t=e.maximum)&&void 0!==t?t:-1/0):e.maximum,o="number"==typeof e.exclusiveMinimum||e.exclusiveMinimum,a="number"==typeof e.exclusiveMaximum||e.exclusiveMaximum;return void 0!==i&&void 0!==n?`${o?"( ":"[ "}${i} .. ${n}${a?" )":" ]"}`:void 0!==n?`${a?"< ":"<= "}${n}`:void 0!==i?`${o?"> ":">= "}${i}`:void 0}function humanizeConstraints(e){const r=[],t=humanizeRangeConstraint("characters",e.minLength,e.maxLength);void 0!==t&&r.push(t);const i=humanizeRangeConstraint("items",e.minItems,e.maxItems);void 0!==i&&r.push(i);const n=humanizeRangeConstraint(1===e.minProperties&&1===e.maxProperties?"property":"properties",e.minProperties,e.maxProperties);void 0!==n&&r.push(n);const o=humanizeMultipleOfConstraint(e.multipleOf);void 0!==o&&r.push(o);const a=humanizeNumberRange(e);return void 0!==a&&r.push(a),e.uniqueItems&&r.push("unique"),r}function sortByRequired(e,r=[]){const t=[],i=[],n=[];return e.forEach((e=>{e.required?r.includes(e.name)?i.push(e):n.push(e):t.push(e)})),i.sort(((e,t)=>r.indexOf(e.name)-r.indexOf(t.name))),[...i,...n,...t]}function sortByDeprecated(e){return e.sort(((e,r)=>Number(e.deprecated)-Number(r.deprecated)))}function mergeParams(e,r=[],t=[],{pathPointer:i,operationPointer:n}){const o={};t.forEach((r=>{({resolved:r}=e.deref(r)),o[r.name+"_"+r.in]=!0}));return[...r.map(((e,r)=>({paramOrRef:e,pointer:JsonPointer_1.JsonPointer.join(i,["parameters",String(r)])}))).filter((({paramOrRef:r})=>(({resolved:r}=e.deref(r)),!o[r.name+"_"+r.in]))),...t.map(((e,r)=>({paramOrRef:e,pointer:JsonPointer_1.JsonPointer.join(n,["parameters",String(r)])})))]}function normalizeServers(e,r){const t=void 0===e?(0,helpers_1.removeQueryStringAndHash)((()=>{if(!theme_1.IS_BROWSER)return globalThis.SSR_HOSTNAME||"";const e=window.location.href;return e.endsWith(".html")?(0,path_1.dirname)(e):e})()):(0,path_1.dirname)(e);return 0===r.length&&(r=[{url:"/"}]),r.map((e=>{return Object.assign(Object.assign({},e),{url:(r=e.url,(0,helpers_1.resolveUrl)(t,r)),description:e.description||""});var r}))}exports.isNamedDefinition=isNamedDefinition,exports.getDefinitionName=getDefinitionName,exports.humanizeNumberRange=humanizeNumberRange,exports.humanizeConstraints=humanizeConstraints,exports.sortByRequired=sortByRequired,exports.sortByDeprecated=sortByDeprecated,exports.mergeParams=mergeParams,exports.normalizeServers=normalizeServers;const shortenHTTPVerb=e=>({delete:"del",options:"opts"}[e]||e);function isRedocExtension(e){return e in{"x-circular-ref":!0,"x-parentRefs":!0,"x-refsStack":!0,"x-codeSamples":!0,"x-displayName":!0,"x-examples":!0,"x-logo":!0,"x-nullable":!0,"x-servers":!0,"x-tagGroups":!0,"x-traitTag":!0,"x-additionalPropertiesName":!0,"x-explicitMappingOnly":!0,"x-enumDescriptions":!0,"x-hideReplay":!0,"x-tokenEndpointAuthMethod":!0,"x-feedback":!0,"x-badges":!0}||e.startsWith("x-parsed-md-")}function extractExtensions(e,r){return Object.keys(e).filter((e=>!0===r?e.startsWith("x-")&&!isRedocExtension(e):e.startsWith("x-")&&r.indexOf(e)>-1)).reduce(((r,t)=>(r[t]=e[t],r)),{})}function pluralizeType(e){return e.split(" or ").map((e=>e.replace(/^(string|object|number|integer|array|boolean)s?( ?.*)/,"$1s$2"))).join(" or ")}function getContentWithLegacyExamples(e){let r=e.content;const t=e["x-examples"],i=e["x-example"];if(t){r=Object.assign({},r);for(const e of Object.keys(t)){const i=t[e];r[e]=Object.assign(Object.assign({},r[e]),{examples:i})}}else if(i){r=Object.assign({},r);for(const e of Object.keys(i)){const t=i[e];r[e]=Object.assign(Object.assign({},r[e]),{example:t})}}return r}exports.shortenHTTPVerb=shortenHTTPVerb,exports.isRedocExtension=isRedocExtension,exports.extractExtensions=extractExtensions,exports.pluralizeType=pluralizeType,exports.getContentWithLegacyExamples=getContentWithLegacyExamples;
2
2
  //# sourceMappingURL=openapi.js.map
@@ -1,2 +1,2 @@
1
- var __rest=this&&this.__rest||function(e,t){var o={};for(var a in e)Object.prototype.hasOwnProperty.call(e,a)&&t.indexOf(a)<0&&(o[a]=e[a]);if(null!=e&&"function"==typeof Object.getOwnPropertySymbols){var r=0;for(a=Object.getOwnPropertySymbols(e);r<a.length;r++)t.indexOf(a[r])<0&&Object.prototype.propertyIsEnumerable.call(e,a[r])&&(o[a[r]]=e[a[r]])}return o};import{jsx as _jsx}from"react/jsx-runtime";import{memo,useCallback}from"react";import{useAtomValue}from"jotai";import{SelectOrLabel}from"../SelectOrLabel";import{MediaTypesSwitch}from"../MediaTypeSwitch";import{MimeLabel,Select}from"../common";import{MediaTypeSamples}from"./MediaTypeSamples";import{SelectWrapper,StyledCodeBlock}from"./styled";import{activeMimeNameAtom}from"../../jotai/app";import{useActivateExample}from"../../hooks";function PayloadSamplesComponent(e){var{onlyDefaultMimeType:t,content:o}=e,a=__rest(e,["onlyDefaultMimeType","content"]);const r=useActivateExample(o),l=useAtomValue(activeMimeNameAtom),m=t&&l,i=useCallback((e=>m?null:_jsx(SelectWrapper,{children:_jsx(SelectOrLabel,Object.assign({Label:MimeLabel,Select:Select,variant:"dark",fullWidth:!0},e))})),[m]),p=e=>r(e);return o?_jsx(MediaTypesSwitch,{content:o,renderSelect:i,children:e=>_jsx(MediaTypeSamples,Object.assign({mediaType:e},a,{onChange:p}),"samples")}):_jsx(StyledCodeBlock,{lang:"text",source:"No request payload",header:{controls:!1}})}export const PayloadSamples=memo(PayloadSamplesComponent);
1
+ var __rest=this&&this.__rest||function(e,t){var o={};for(var r in e)Object.prototype.hasOwnProperty.call(e,r)&&t.indexOf(r)<0&&(o[r]=e[r]);if(null!=e&&"function"==typeof Object.getOwnPropertySymbols){var a=0;for(r=Object.getOwnPropertySymbols(e);a<r.length;a++)t.indexOf(r[a])<0&&Object.prototype.propertyIsEnumerable.call(e,r[a])&&(o[r[a]]=e[r[a]])}return o};import{jsx as _jsx}from"react/jsx-runtime";import{memo,useCallback}from"react";import{useAtomValue}from"jotai";import{SelectOrLabel}from"../SelectOrLabel";import{MediaTypesSwitch}from"../MediaTypeSwitch";import{MimeLabel,Select}from"../common";import{MediaTypeSamples}from"./MediaTypeSamples";import{SelectWrapper,StyledCodeBlock}from"./styled";import{activeMimeNameAtom}from"../../jotai/app";import{useActivateExample}from"../../hooks";import{convertExamplesFormat}from"../../utils/convertExamplesFormat";function PayloadSamplesComponent(e){var{onlyDefaultMimeType:t,content:o}=e,r=__rest(e,["onlyDefaultMimeType","content"]);const a=useActivateExample(o),l=useAtomValue(activeMimeNameAtom),m=t&&l,p=useCallback((e=>m?null:_jsx(SelectWrapper,{children:_jsx(SelectOrLabel,Object.assign({Label:MimeLabel,Select:Select,variant:"dark",fullWidth:!0},e))})),[m]),i=e=>a(e);return o?_jsx(MediaTypesSwitch,{content:o,renderSelect:p,children:e=>{const t=convertExamplesFormat(e);return _jsx(MediaTypeSamples,Object.assign({mediaType:t},r,{onChange:i}),"samples")}}):_jsx(StyledCodeBlock,{lang:"text",source:"No request payload",header:{controls:!1}})}export const PayloadSamples=memo(PayloadSamplesComponent);
2
2
  //# sourceMappingURL=PayloadSamples.js.map
@@ -1,2 +1,2 @@
1
- import{jsx as _jsx,jsxs as _jsxs}from"react/jsx-runtime";import{useMemo,useCallback}from"react";import{Dropdown,DropdownMenu}from"@redocly/theme";import{useAtom}from"jotai";import{HttpVerb}from"../common";import{PathWrapper,Path,StyledCopyButton,StyledDropdownMenuItem}from"./styled";import{PanelItem}from"../PanelItem";import{joinWithSeparator}from"../../services";import{replaceVariables}from"../../utils";import{environmentAtom}from"../../jotai/app";import{useActiveWithFallback}from"../../hooks";import{getServerEnvName}from"../../utils/environments";export const ServerListDropdown=({operation:e,className:r})=>{const[[t],o]=useAtom(environmentAtom),a=useActiveWithFallback(e.servers.map((e=>Object.assign(Object.assign({},e),{key:e.url}))),t.server),s=useCallback((e=>{e.stopPropagation()}),[]),n=useCallback((r=>()=>{1!==e.servers.length&&o({environment:getServerEnvName(r)})}),[e.servers.length,o]),i=useMemo((()=>e.servers.map((r=>{const t=replaceVariables(r),o=joinWithSeparator(t,e.path);return _jsx(StyledDropdownMenuItem,{onAction:n(r),children:_jsx(PanelItem,{header:r.description,title:replaceVariables(r),actions:[_jsx(StyledCopyButton,{data:o,toasterPlacement:"left",onCopyClick:s},o)],active:r.url===a,withCheckmark:!0})},o)}))),[e.servers,e.path,n,s,a]);return _jsx(Dropdown,{className:r,trigger:_jsxs(PathWrapper,{variant:"ghost",children:[_jsx(HttpVerb,{color:e.httpVerb,children:e.httpVerb}),_jsx(Path,{children:e.path})]}),withArrow:!0,children:_jsx(DropdownMenu,{children:i})})};
1
+ import{jsx as _jsx,jsxs as _jsxs}from"react/jsx-runtime";import{useMemo,useCallback}from"react";import{Dropdown,DropdownMenu}from"@redocly/theme";import{useAtom}from"jotai";import{HttpVerb}from"../common";import{PathWrapper,Path,StyledCopyButton,StyledDropdownMenuItem}from"./styled";import{PanelItem}from"../PanelItem";import{joinWithSeparator}from"../../services";import{replaceVariables}from"../../utils";import{environmentAtom}from"../../jotai/app";import{useActiveWithFallback}from"../../hooks";import{getServerEnvName}from"../../utils/environments";export const ServerListDropdown=({operation:e,className:r})=>{const[[t],o]=useAtom(environmentAtom),s=useActiveWithFallback(e.servers.map((e=>Object.assign(Object.assign({},e),{key:e.url}))),t.server),a=useCallback((e=>{e.stopPropagation()}),[]),n=useCallback((r=>()=>{1!==e.servers.length&&o({environment:getServerEnvName(r)})}),[e.servers.length,o]),i=useMemo((()=>e.servers.map((r=>{const t=joinWithSeparator(replaceVariables(r),e.path);return _jsx(StyledDropdownMenuItem,{onAction:n(r),children:_jsx(PanelItem,{header:r.description,title:t,actions:[_jsx(StyledCopyButton,{data:t,toasterPlacement:"left",onCopyClick:a},t)],active:r.url===s,withCheckmark:!0})},t)}))),[e.servers,e.path,n,a,s]);return _jsx(Dropdown,{className:r,trigger:_jsxs(PathWrapper,{variant:"ghost",children:[_jsx(HttpVerb,{color:e.httpVerb,children:e.httpVerb}),_jsx(Path,{children:e.path})]}),withArrow:!0,children:_jsx(DropdownMenu,{children:i})})};
2
2
  //# sourceMappingURL=ServerListDropdown.js.map
@@ -1,2 +1,2 @@
1
- import*as Sampler from"openapi-sampler";import{getSchema}from"./schema";import{isFormUrlEncoded,isJsonLike,isMultipartFormData,JsonPointer,mapValues}from"../utils";import{getExamples}from"./example";function generateExamples({parser:e,info:{encoding:a,schema:s},schema:i,mime:r,isRequestType:n,onlyRequiredInSamples:o,generatedSamplesMaxDepth:t}){const m={skipReadOnly:n,skipWriteOnly:!n,skipNonRequired:n&&o,maxSampleDepth:t,quiet:!0};let p={};if(i&&i.oneOf)for(const s of i.oneOf){const n=Sampler.sample(s.rawSchema,m,e.definition);i.discriminatorProp&&"object"==typeof n&&n&&n[i.discriminatorProp]&&(n[i.discriminatorProp]=s.title),p[s.title]=getExamples({parser:e,infoOrRef:{value:n},mime:r,encoding:a})}else p=i?{default:getExamples({parser:e,infoOrRef:{value:Sampler.sample(s,m,e.definition)},mime:r,encoding:a})}:{default:{value:null,rawValue:"null"}};return p}export function getMediaType(e,a,s,i,r,{operation:n,type:o,response:t,absolutePointer:m=""}){let p,l;const d=i.schema&&getSchema({parser:e,schemaOrRef:i.schema,pointer:"",absolutePointer:JsonPointer.join(m,["content",a,"schema"]),options:r,deps:{operation:n,type:o,response:t}}),{onlyRequiredInSamples:u,generatedSamplesMaxDepth:c}=r,{encoding:f,examples:g,example:x}=i;return r.unstable_skipSamples||(void 0!==g?p=mapValues(g,(s=>getExamples({parser:e,infoOrRef:s,mime:a,encoding:f}))):void 0!==x?p={default:getExamples({parser:e,infoOrRef:{value:e.deref(x).resolved},mime:a,encoding:f})}:isJsonLike(a)?p=generateExamples({parser:e,info:i,schema:d,mime:a,isRequestType:s,onlyRequiredInSamples:u,generatedSamplesMaxDepth:c}):(isFormUrlEncoded(a)||isMultipartFormData(a))&&(l=generateExamples({parser:e,info:i,schema:d,mime:a,isRequestType:s,onlyRequiredInSamples:u,generatedSamplesMaxDepth:c}))),{examples:p,schema:d,name:a,isRequestType:s,formExamples:l,onlyRequiredInSamples:u,operation:n}}
1
+ import*as Sampler from"openapi-sampler";import{getSchema}from"./schema";import{isFormUrlEncoded,isJsonLike,isXmlLike,isMultipartFormData,JsonPointer,mapValues}from"../utils";import{getExamples}from"./example";function generateExamples({parser:e,info:{encoding:a,schema:i},schema:s,mime:r,isRequestType:n,onlyRequiredInSamples:o,generatedSamplesMaxDepth:m}){const t={skipReadOnly:n,skipWriteOnly:!n,skipNonRequired:n&&o,maxSampleDepth:m,quiet:!0};let p={};if(s&&s.oneOf)for(const i of s.oneOf){const n=Sampler.sample(i.rawSchema,t,e.definition);s.discriminatorProp&&"object"==typeof n&&n&&n[s.discriminatorProp]&&(n[s.discriminatorProp]=i.title),p[i.title]=getExamples({parser:e,infoOrRef:{value:n},mime:r,encoding:a})}else p=s?{default:getExamples({parser:e,infoOrRef:{value:Sampler.sample(i,t,e.definition)},mime:r,encoding:a})}:{default:{value:null,rawValue:"null"}};return p}export function getMediaType(e,a,i,s,r,{operation:n,type:o,response:m,absolutePointer:t=""}){let p,l;const d=s.schema&&getSchema({parser:e,schemaOrRef:s.schema,pointer:"",absolutePointer:JsonPointer.join(t,["content",a,"schema"]),options:r,deps:{operation:n,type:o,response:m}}),{onlyRequiredInSamples:u,generatedSamplesMaxDepth:c}=r,{encoding:f,examples:g,example:x}=s;return r.unstable_skipSamples||(void 0!==g?p=mapValues(g,(i=>getExamples({parser:e,infoOrRef:i,mime:a,encoding:f}))):void 0!==x?p={default:getExamples({parser:e,infoOrRef:{value:e.deref(x).resolved},mime:a,encoding:f})}:isJsonLike(a)||isXmlLike(a)?p=generateExamples({parser:e,info:s,schema:d,mime:a,isRequestType:i,onlyRequiredInSamples:u,generatedSamplesMaxDepth:c}):(isFormUrlEncoded(a)||isMultipartFormData(a))&&(l=generateExamples({parser:e,info:s,schema:d,mime:a,isRequestType:i,onlyRequiredInSamples:u,generatedSamplesMaxDepth:c}))),{examples:p,schema:d,name:a,isRequestType:i,formExamples:l,onlyRequiredInSamples:u,operation:n}}
2
2
  //# sourceMappingURL=mediaType.js.map
@@ -1,2 +1,2 @@
1
- import*as Sampler from"openapi-sampler";import merge from"deepmerge";import{areArraysEqual,serializeParameterValue,getSecurityDetails,getParameterValue,queryString,isArrayOfObjects,deleteEmptyArrayItem}from"../../utils";import{normalizeMimeType,arrayMergeStrategy}from"../utils";import{MediaTypes}from"../../constants";import{HTTPSnippet}from"./httpsnippet";import{getActiveMediaType}from"../../models/mediaContent";import StringUtility from"./httpsnippet/helpers/string-utility";function getSelectedSecurityScheme(e,t){return e.find((e=>{const a=e.schemes.map((e=>e.id));return areArraysEqual(a,t||[])}))}function mapOperationToHAR(e,{exampleName:t="",skipOptionalParameters:a=!1,withOAuth2Call:r=!1,spec:s,generatedPayloadSamplesMaxDepth:i=8,pathParams:n={},properties:o={}},{environment:l,requestValues:u,activeSecuritySchemeIds:p}){var c,d,m;const h=l.server,y=e.servers.find((e=>e.url===h))||e.servers[0],f=getSelectedSecurityScheme(e.security,p),{securityHeaders:g,securityCookies:v,securityQueries:O,securityOAuth2ExtraCalls:S,basicAuth:T}=getSecurityData(f||(null===(c=e.security)||void 0===c?void 0:c[0]),r,l),C=(null===(d=null==e?void 0:e.requestBody)||void 0===d?void 0:d.content)&&getActiveMediaType(e.requestBody.content),b={skipNonRequired:a,skipReadOnly:!0,maxSampleDepth:i,quiet:!0},E=u;let _=!1;const A=e.parameters.filter((e=>"header"===e.in)).filter((e=>!(a&&!e.required))).map((e=>{var t;return{name:e.name,value:(null===(t=E.header)||void 0===t?void 0:t[e.name])||getParameterValue("header",e.name)||serializeParameterValue(e,Sampler.sample(e.schema.rawSchema,b,s))}})).map((e=>((null==C?void 0:C.name)&&"content-type"===e.name.toLowerCase()&&(_=!0,e.value=C.name),e))).concat(g);!_&&(null==C?void 0:C.name)&&A.unshift({name:"Content-Type",value:null==C?void 0:C.name});const k=e.parameters.filter((e=>"cookie"===e.in)).filter((e=>!(a&&!e.required))).map((e=>queryString.parse(serializeParameterValue(e,Sampler.sample(e.schema.rawSchema,b,s))))).reduce(((e,t)=>{var a;for(const[r,s]of Object.entries(t))e.push({name:r,value:String((null===(a=E.cookie)||void 0===a?void 0:a[r])||s)});return e}),[]).concat(v),P=e.parameters.filter((e=>"query"===e.in)).filter((e=>!(a&&!e.required))).map((e=>queryString.parse(serializeParameterValue(e,Sampler.sample(e.schema.rawSchema,b,s))))).reduce(((e,t)=>{var a,r,s;for(const[i,n]of Object.entries(t))e.push({name:i,value:isArrayOfObjects(null===(a=E.query)||void 0===a?void 0:a[i])&&JSON.stringify(deleteEmptyArrayItem(null===(r=E.query)||void 0===r?void 0:r[i]))||String((null===(s=E.query)||void 0===s?void 0:s[i])||n)});return e}),[]).concat(O),j=`${null==y?void 0:y.url.replace(/\/$/,"")}/${e.path.replace(/^\//,"")}`,w=e.parameters.filter((e=>"path"===e.in)).reduce(((e,t)=>{var a;const{in:r,name:s}=t;return e[s]=(null===(a=E.path)||void 0===a?void 0:a[s])||n[s]||getParameterValue(r,s),e}),{}),R=null===(m=null==C?void 0:C.examples)||void 0===m?void 0:m[t],D=(null==C?void 0:C.examples)||{},[q]=Object.values(D),M=(null==E?void 0:E.body)||(null==R?void 0:R.value)||(null==q?void 0:q.value)||(null==C?void 0:C.schema)&&Sampler.sample(null==C?void 0:C.schema.rawSchema,b,s),H=null==C?void 0:C.name.toLowerCase();let N="",x=[];switch(normalizeMimeType(H)){case MediaTypes.JSON:case MediaTypes.XML:N=JSON.stringify(getDataRequest(M,o));break;case MediaTypes.URL_ENCODED:case MediaTypes.MULTIPART:N=queryString.stringify(getDataRequest(M,o)),x=objectToHarParams(getDataRequest(M,o));break;default:N=String(M||"")}const U=N?{mimeType:(null==C?void 0:C.name)||MediaTypes.OCTET_STREAM,text:N,params:x}:void 0,z=e.responses.map((e=>e.code));return{method:e.httpVerb,url:j,httpVersion:"HTTP/1.1",cookies:k,headers:A,queryString:P,postData:U,headersSize:-1,bodySize:-1,securityOAuth2ExtraCalls:S,basicAuth:T,pathParameters:w,serverVariables:l,allResponseCodes:z}}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)},"C#+Newtonsoft":{code:"csharpNewtonsoft",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:s,options:i={},environment:n}){try{const{skipOptionalParameters:o,withOAuth2Call:l,spec:u,generatedPayloadSamplesMaxDepth:p,store:c}=i,d=mapOperationToHAR(t,{exampleName:a,pathParams:r,properties:s,skipOptionalParameters:o,withOAuth2Call:l,spec:u,generatedPayloadSamplesMaxDepth:p},{environment:n,requestValues:c.requestValues,activeSecuritySchemeIds:c.activeSecuritySchemeIds}),m=new HTTPSnippet(d);return langToSnippetConfig[e]?m.convert(langToSnippetConfig[e].code,langToSnippetConfig[e].defaultTarget,Object.assign(Object.assign({},langToSnippetConfig[e].defaultOptions),i)):"Language is not supported."}catch(e){return console.error(e),"Failed to generate code sample."}}function getSecurityData(e,t,a){var r,s,i,n,o;const l={securityHeaders:[],securityCookies:[],securityQueries:[],securityOAuth2ExtraCalls:[],basicAuth:void 0};for(const u of(null==e?void 0:e.schemes)||[]){const e=getSecurityDetails(u.id,a);switch(u.type){case"openIdConnect":null===(r=l.securityHeaders)||void 0===r||r.push({name:"Authorization",value:e.token?`${e.token.token_type||"Bearer"} ${e.token.access_token}`:"Bearer <YOUR_TOKEN_HERE>"});break;case"oauth2":{const a=e.token?`${e.token.token_type||"Bearer"} ${e.token.access_token}`:"Bearer <YOUR_TOKEN_HERE>";u.flows.clientCredentials&&t?l.securityOAuth2ExtraCalls.push(getOAuth2ClientCredsCallHar(u.flows.clientCredentials,u.scopes,e)):u.flows.password&&t&&l.securityOAuth2ExtraCalls.push(getOAuth2PasswordCallHar(u.flows.password,u.scopes,e)),null===(s=l.securityHeaders)||void 0===s||s.push({name:"Authorization",value:a});break}case"apiKey":{const t=e.raw||"YOUR_API_KEY_HERE";"header"===u.in&&(null===(i=l.securityHeaders)||void 0===i||i.push({name:u.name,value:t})),"cookie"===u.in&&l.securityCookies.push({name:u.name,value:t}),"query"===u.in&&l.securityQueries.push({name:u.name,value:t});break}case"http":if("basic"===u.scheme)l.basicAuth={username:e.username||`<${StringUtility.toSnakeCase("Username")}>`,password:e.password||`<${StringUtility.toSnakeCase("Password")}>`};else{const t=(null===(n=e.token)||void 0===n?void 0:n.access_token)||`<YOUR_${u.bearerFormat||"TOKEN"}_HERE>`;null===(o=l.securityHeaders)||void 0===o||o.push({name:"Authorization",value:`${capitalizeFirst(u.scheme||"bearer")} ${t}`})}}}return l}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,t=""){const a=[];for(const[r,s]of Object.entries(e)){const e=t?`${t}[${r}]`:r;"object"==typeof s&&null!==s?a.push(...objectToHarParams(s,e)):a.push({name:e,value:String(s)})}return a}export function isDefined(e){return void 0!==e}export function capitalizeFirst(e){return e.charAt(0).toUpperCase()+e.slice(1)}
1
+ import*as Sampler from"openapi-sampler";import merge from"deepmerge";import{toXML}from"jstoxml";import{areArraysEqual,serializeParameterValue,getSecurityDetails,getParameterValue,queryString,isArrayOfObjects,deleteEmptyArrayItem}from"../../utils";import{normalizeMimeType,arrayMergeStrategy}from"../utils";import{MediaTypes}from"../../constants";import{HTTPSnippet}from"./httpsnippet";import{getActiveMediaType}from"../../models/mediaContent";import StringUtility from"./httpsnippet/helpers/string-utility";function getSelectedSecurityScheme(e,t){return e.find((e=>{const a=e.schemes.map((e=>e.id));return areArraysEqual(a,t||[])}))}function mapOperationToHAR(e,{exampleName:t="",skipOptionalParameters:a=!1,withOAuth2Call:r=!1,spec:s,generatedPayloadSamplesMaxDepth:i=8,pathParams:n={},properties:o={}},{environment:l,requestValues:u,activeSecuritySchemeIds:p}){var c,d,m;const h=l.server,y=e.servers.find((e=>e.url===h))||e.servers[0],f=getSelectedSecurityScheme(e.security,p),{securityHeaders:g,securityCookies:v,securityQueries:O,securityOAuth2ExtraCalls:S,basicAuth:T}=getSecurityData(f||(null===(c=e.security)||void 0===c?void 0:c[0]),r,l),C=(null===(d=null==e?void 0:e.requestBody)||void 0===d?void 0:d.content)&&getActiveMediaType(e.requestBody.content),b={skipNonRequired:a,skipReadOnly:!0,maxSampleDepth:i,quiet:!0},E=u;let _=!1;const A=e.parameters.filter((e=>"header"===e.in)).filter((e=>!(a&&!e.required))).map((e=>{var t;return{name:e.name,value:(null===(t=E.header)||void 0===t?void 0:t[e.name])||getParameterValue("header",e.name)||serializeParameterValue(e,Sampler.sample(e.schema.rawSchema,b,s))}})).map((e=>((null==C?void 0:C.name)&&"content-type"===e.name.toLowerCase()&&(_=!0,e.value=C.name),e))).concat(g);!_&&(null==C?void 0:C.name)&&A.unshift({name:"Content-Type",value:null==C?void 0:C.name});const k=e.parameters.filter((e=>"cookie"===e.in)).filter((e=>!(a&&!e.required))).map((e=>queryString.parse(serializeParameterValue(e,Sampler.sample(e.schema.rawSchema,b,s))))).reduce(((e,t)=>{var a;for(const[r,s]of Object.entries(t))e.push({name:r,value:String((null===(a=E.cookie)||void 0===a?void 0:a[r])||s)});return e}),[]).concat(v),j=e.parameters.filter((e=>"query"===e.in)).filter((e=>!(a&&!e.required))).map((e=>queryString.parse(serializeParameterValue(e,Sampler.sample(e.schema.rawSchema,b,s))))).reduce(((e,t)=>{var a,r,s;for(const[i,n]of Object.entries(t))e.push({name:i,value:isArrayOfObjects(null===(a=E.query)||void 0===a?void 0:a[i])&&JSON.stringify(deleteEmptyArrayItem(null===(r=E.query)||void 0===r?void 0:r[i]))||String((null===(s=E.query)||void 0===s?void 0:s[i])||n)});return e}),[]).concat(O),P=`${null==y?void 0:y.url.replace(/\/$/,"")}/${e.path.replace(/^\//,"")}`,w=e.parameters.filter((e=>"path"===e.in)).reduce(((e,t)=>{var a;const{in:r,name:s}=t;return e[s]=(null===(a=E.path)||void 0===a?void 0:a[s])||n[s]||getParameterValue(r,s),e}),{}),R=null===(m=null==C?void 0:C.examples)||void 0===m?void 0:m[t],D=(null==C?void 0:C.examples)||{},[q]=Object.values(D),M=(null==E?void 0:E.body)||(null==R?void 0:R.value)||(null==q?void 0:q.value)||(null==C?void 0:C.schema)&&Sampler.sample(null==C?void 0:C.schema.rawSchema,b,s),H=null==C?void 0:C.name.toLowerCase();let N="",x=[];switch(normalizeMimeType(H)){case MediaTypes.JSON:N=JSON.stringify(getDataRequest(M,o));break;case MediaTypes.XML:N="object"==typeof M?toXML(getDataRequest(M,o),{indent:" "}):M;break;case MediaTypes.URL_ENCODED:case MediaTypes.MULTIPART:N=queryString.stringify(getDataRequest(M,o)),x=objectToHarParams(getDataRequest(M,o));break;default:N=String(M||"")}const U=N?{mimeType:(null==C?void 0:C.name)||MediaTypes.OCTET_STREAM,text:N,params:x}:void 0,z=e.responses.map((e=>e.code));return{method:e.httpVerb,url:P,httpVersion:"HTTP/1.1",cookies:k,headers:A,queryString:j,postData:U,headersSize:-1,bodySize:-1,securityOAuth2ExtraCalls:S,basicAuth:T,pathParameters:w,serverVariables:l,allResponseCodes:z}}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)},"C#+Newtonsoft":{code:"csharpNewtonsoft",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:s,options:i={},environment:n}){try{const{skipOptionalParameters:o,withOAuth2Call:l,spec:u,generatedPayloadSamplesMaxDepth:p,store:c}=i,d=mapOperationToHAR(t,{exampleName:a,pathParams:r,properties:s,skipOptionalParameters:o,withOAuth2Call:l,spec:u,generatedPayloadSamplesMaxDepth:p},{environment:n,requestValues:c.requestValues,activeSecuritySchemeIds:c.activeSecuritySchemeIds}),m=new HTTPSnippet(d);return langToSnippetConfig[e]?m.convert(langToSnippetConfig[e].code,langToSnippetConfig[e].defaultTarget,Object.assign(Object.assign({},langToSnippetConfig[e].defaultOptions),i)):"Language is not supported."}catch(e){return console.error(e),"Failed to generate code sample."}}function getSecurityData(e,t,a){var r,s,i,n,o;const l={securityHeaders:[],securityCookies:[],securityQueries:[],securityOAuth2ExtraCalls:[],basicAuth:void 0};for(const u of(null==e?void 0:e.schemes)||[]){const e=getSecurityDetails(u.id,a);switch(u.type){case"openIdConnect":null===(r=l.securityHeaders)||void 0===r||r.push({name:"Authorization",value:e.token?`${e.token.token_type||"Bearer"} ${e.token.access_token}`:"Bearer <YOUR_TOKEN_HERE>"});break;case"oauth2":{const a=e.token?`${e.token.token_type||"Bearer"} ${e.token.access_token}`:"Bearer <YOUR_TOKEN_HERE>";u.flows.clientCredentials&&t?l.securityOAuth2ExtraCalls.push(getOAuth2ClientCredsCallHar(u.flows.clientCredentials,u.scopes,e)):u.flows.password&&t&&l.securityOAuth2ExtraCalls.push(getOAuth2PasswordCallHar(u.flows.password,u.scopes,e)),null===(s=l.securityHeaders)||void 0===s||s.push({name:"Authorization",value:a});break}case"apiKey":{const t=e.raw||"YOUR_API_KEY_HERE";"header"===u.in&&(null===(i=l.securityHeaders)||void 0===i||i.push({name:u.name,value:t})),"cookie"===u.in&&l.securityCookies.push({name:u.name,value:t}),"query"===u.in&&l.securityQueries.push({name:u.name,value:t});break}case"http":if("basic"===u.scheme)l.basicAuth={username:e.username||`<${StringUtility.toSnakeCase("Username")}>`,password:e.password||`<${StringUtility.toSnakeCase("Password")}>`};else{const t=(null===(n=e.token)||void 0===n?void 0:n.access_token)||`<YOUR_${u.bearerFormat||"TOKEN"}_HERE>`;null===(o=l.securityHeaders)||void 0===o||o.push({name:"Authorization",value:`${capitalizeFirst(u.scheme||"bearer")} ${t}`})}}}return l}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,t=""){const a=[];for(const[r,s]of Object.entries(e)){const e=t?`${t}[${r}]`:r;"object"==typeof s&&null!==s?a.push(...objectToHarParams(s,e)):a.push({name:e,value:String(s)})}return a}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{CodeBuilder}from"../../helpers/code-builder";import{HTTPSnippet}from"../..";import{normalizeMimeType}from"../../../../utils";import{addIndentation,buildUrlExpression,printUrlVariablesDeclarations}from"../../helpers/code-helpers";import{Lang}from"../../helpers/constants";import{MediaTypes}from"../../../../../constants";const hasQueryParams=e=>!(!e.uriObj.query||!Object.keys(e.uriObj.query).length),getBody=e=>e.postData&&e.postData.mimeType===MediaTypes.URL_ENCODED?"HttpRequest.BodyPublishers.ofString(form)":e.postData?"HttpRequest.BodyPublishers.ofString(payload)":["POST","PUT","PATCH"].includes(e.method.toUpperCase())?'HttpRequest.BodyPublishers.ofString("some body text")':"",handler=function(e,t,{target:a,client:s}){var r,n,o;const i=Object.assign({indent:" ",withWrapper:!0},t),p=new CodeBuilder({indentation:i.indent,variablesPrefix:i.variablesPrefix,capitalize:!0,lang:Lang.JAVA});let l=!1;if(i.withComments&&addComments(p,e),i.withImports&&addImports(p,e),i.withWrapper&&(p.push("public class App {"),p.push(1,"public static void main(String[] args) throws Exception {"),p.push(2,"var httpClient = HttpClient.newBuilder().build();"),p.blank()),null===(r=e.securityOAuth2ExtraCalls)||void 0===r?void 0:r.length){const t=new HTTPSnippet(null===(n=e.securityOAuth2ExtraCalls)||void 0===n?void 0:n[0]).convert(a,s,Object.assign(Object.assign({},i),{withImports:!1,withWrapper:!1,withComments:!1,variablesPrefix:"oauth2"}));p.push(t),p.blank(),p.push(2,"var oauth2Response = httpClient.send(oauth2Request, HttpResponse.BodyHandlers.ofString());"),p.push(2,'var accessToken = new JSONObject(oauth2Response.body()).getString("access_token");'),p.blank()}if(e.postData)switch(normalizeMimeType(e.postData.mimeType)){case MediaTypes.URL_ENCODED:e.postData.params&&(p.push(2,"HashMap<String, String> params = new HashMap<>();"),e.postData.params.forEach((e=>{p.push(2,'params.put("%s", "%s");',e.name,e.value)})),p.blank(),p.push(2,"var form = params.keySet().stream()"),p.push(3,'.map(key -> key + "=" + URLEncoder.encode(params.get(key), StandardCharsets.UTF_8))'),p.push(3,'.collect(Collectors.joining("&"));'),p.blank());break;case MediaTypes.JSON:e.postData.jsonObj&&(p.push(2,`var payload = String.join("\\n"\n ${addIndentation(JSON.stringify(e.postData.jsonObj,null,1).replace(/"/g,'\\"').replace(/^/gm,', "').replace(/$/gm,'"'),{level:3,indent:i.indent,firstLine:!1})}`),p.push(2,");"),p.blank());break;case MediaTypes.XML:e.postData.text&&(p.push(2,'var payload = String.join("\\n"'),e.postData.text.trim().split("\n").forEach((e=>{const t=e.replace(/"/g,'\\"');p.push(3,`, "${t}"`)})),p.push(2,");"),p.blank());break;case MediaTypes.MULTIPART:l=!0,p.unshift("# multipart/form-data is not supported yet\n")}if(hasQueryParams(e)){p.push(2,"HashMap<String, String> params = new HashMap<>();");for(const[t,a]of Object.entries(e.uriObj.query))p.push(2,'params.put("%s", "%s");',t,a);p.blank(),p.push(2,"var query = params.keySet().stream()"),p.push(3,'.map(key -> key + "=" + URLEncoder.encode(params.get(key), StandardCharsets.UTF_8))'),p.push(3,'.collect(Collectors.joining("&"));'),p.blank()}p.push(2,`var ${p.var("host")} = "%s";`,e.uriObj.protocol+"//"+e.uriObj.host),printUrlVariablesDeclarations(e,p,2);const u=Object.assign(Object.assign({},e),{pathname:e.uriObj.pathname});p.push(2,`var ${p.var("pathname")} = %s;`,buildUrlExpression(u,p)),p.push(2,`var ${p.var("request")} = HttpRequest.newBuilder()`),"PATCH"===e.method.toUpperCase()?p.push(3,'.method("PATCH", %s)',getBody(e)):p.push(3,".%s(%s)",e.method.toUpperCase(),getBody(e)),p.push(3,`.uri(URI.create(${p.var("host")} + ${p.var("pathname")} %s))`,hasQueryParams(e)?"+ '?' + query":""),(null===(o=e.securityOAuth2ExtraCalls)||void 0===o?void 0:o.length)&&(e.allHeaders.Authorization='"Bearer " + accessToken');const h=Object.keys(e.allHeaders);if(h.length&&h.forEach((t=>{var a;p.push(3,'.header("%s", %s)',t,"Authorization"===t&&(null===(a=e.securityOAuth2ExtraCalls)||void 0===a?void 0:a.length)?e.allHeaders[t]:`"${e.allHeaders[t]}"`)})),e.basicAuth){const{username:t,password:a}=e.basicAuth;p.push(3,`.header("Authorization", "Basic " + Base64.getEncoder().encodeToString(("${t}:${a}").getBytes()))`)}return p.push(3,".build();"),i.withWrapper&&(p.blank(),p.push(2,"var response = httpClient.send(request, HttpResponse.BodyHandlers.ofString());"),p.blank(),p.push(2,"System.out.println(response.body());"),p.push(1,"}"),p.push("}")),l&&p.clean(),p.join()};export const info={key:"httpclient",title:"HttpClient",link:"https://docs.oracle.com/en/java/javase/11/docs/api/java.net.http/java/net/http/HttpClient.html",description:"HttpClient (Java SE 11 & JDK 11 )"};export default handler;function addComments(e,t){var a;e.push("/**"),e.push(" * Requires JDK >= 11"),(null===(a=t.securityOAuth2ExtraCalls)||void 0===a?void 0:a.length)&&(e.push(" *"),e.push(' * Requires package "org.json" >= 20201115'),e.push(" * See here for installation details:"),e.push(" * https://search.maven.org/artifact/org.json/json")),e.push(" */"),e.blank()}function addImports(e,t){var a,s,r,n;e.push("import java.net.*;"),e.push("import java.net.http.*;"),e.push("import java.util.*;"),(normalizeMimeType(null===(a=t.postData)||void 0===a?void 0:a.mimeType)===MediaTypes.URL_ENCODED&&(null===(s=t.postData)||void 0===s?void 0:s.params)||(null===(r=t.securityOAuth2ExtraCalls)||void 0===r?void 0:r.length)||hasQueryParams(t))&&(e.push("import java.nio.charset.StandardCharsets;"),e.push("import java.util.stream.Collectors;")),(null===(n=t.securityOAuth2ExtraCalls)||void 0===n?void 0:n.length)&&e.push("import org.json.JSONObject;"),e.blank()}
1
+ import{CodeBuilder}from"../../helpers/code-builder";import{HTTPSnippet}from"../..";import{normalizeMimeType}from"../../../../utils";import{addIndentation,buildUrlExpression,printUrlVariablesDeclarations}from"../../helpers/code-helpers";import{Lang}from"../../helpers/constants";import{MediaTypes}from"../../../../../constants";const hasQueryParams=e=>!(!e.uriObj.query||!Object.keys(e.uriObj.query).length),getBody=e=>e.postData&&e.postData.mimeType===MediaTypes.URL_ENCODED?"HttpRequest.BodyPublishers.ofString(form)":e.postData?"HttpRequest.BodyPublishers.ofString(payload)":["POST","PUT","PATCH"].includes(e.method.toUpperCase())?'HttpRequest.BodyPublishers.ofString("some body text")':"",handler=function(e,t,{target:a,client:s}){var r,n,o;const i=Object.assign({indent:" ",withWrapper:!0},t),p=new CodeBuilder({indentation:i.indent,variablesPrefix:i.variablesPrefix,capitalize:!0,lang:Lang.JAVA});let l=!1;if(i.withComments&&addComments(p,e),i.withImports&&addImports(p,e),i.withWrapper&&(p.push("public class App {"),p.push(1,"public static void main(String[] args) throws Exception {"),p.push(2,"var httpClient = HttpClient.newBuilder().build();"),p.blank()),null===(r=e.securityOAuth2ExtraCalls)||void 0===r?void 0:r.length){const t=new HTTPSnippet(null===(n=e.securityOAuth2ExtraCalls)||void 0===n?void 0:n[0]).convert(a,s,Object.assign(Object.assign({},i),{withImports:!1,withWrapper:!1,withComments:!1,variablesPrefix:"oauth2"}));p.push(t),p.blank(),p.push(2,"var oauth2Response = httpClient.send(oauth2Request, HttpResponse.BodyHandlers.ofString());"),p.push(2,'var accessToken = new JSONObject(oauth2Response.body()).getString("access_token");'),p.blank()}if(e.postData)switch(normalizeMimeType(e.postData.mimeType)){case MediaTypes.URL_ENCODED:e.postData.params&&(p.push(2,"HashMap<String, String> params = new HashMap<>();"),e.postData.params.forEach((e=>{p.push(2,'params.put("%s", "%s");',e.name,e.value)})),p.blank(),p.push(2,"var form = params.keySet().stream()"),p.push(3,'.map(key -> key + "=" + URLEncoder.encode(params.get(key), StandardCharsets.UTF_8))'),p.push(3,'.collect(Collectors.joining("&"));'),p.blank());break;case MediaTypes.JSON:e.postData.jsonObj&&(p.push(2,`var payload = String.join("\\n"\n ${addIndentation(JSON.stringify(e.postData.jsonObj,null,1).replace(/"/g,'\\"').replace(/^/gm,', "').replace(/$/gm,'"'),{level:3,indent:i.indent,firstLine:!1})}`),p.push(2,");"),p.blank());break;case MediaTypes.XML:e.postData.text&&(p.push(2,'var payload = String.join("\\n"'),e.postData.text.trim().split("\n").forEach((e=>{const t=e.replace(/"/g,'\\"');p.push(3,`"${t}", `)})),p.push(2,");"),p.blank());break;case MediaTypes.MULTIPART:l=!0,p.unshift("# multipart/form-data is not supported yet\n")}if(hasQueryParams(e)){p.push(2,"HashMap<String, String> params = new HashMap<>();");for(const[t,a]of Object.entries(e.uriObj.query))p.push(2,'params.put("%s", "%s");',t,a);p.blank(),p.push(2,"var query = params.keySet().stream()"),p.push(3,'.map(key -> key + "=" + URLEncoder.encode(params.get(key), StandardCharsets.UTF_8))'),p.push(3,'.collect(Collectors.joining("&"));'),p.blank()}p.push(2,`var ${p.var("host")} = "%s";`,e.uriObj.protocol+"//"+e.uriObj.host),printUrlVariablesDeclarations(e,p,2);const u=Object.assign(Object.assign({},e),{pathname:e.uriObj.pathname});p.push(2,`var ${p.var("pathname")} = %s;`,buildUrlExpression(u,p)),p.push(2,`var ${p.var("request")} = HttpRequest.newBuilder()`),"PATCH"===e.method.toUpperCase()?p.push(3,'.method("PATCH", %s)',getBody(e)):p.push(3,".%s(%s)",e.method.toUpperCase(),getBody(e)),p.push(3,`.uri(URI.create(${p.var("host")} + ${p.var("pathname")} %s))`,hasQueryParams(e)?"+ '?' + query":""),(null===(o=e.securityOAuth2ExtraCalls)||void 0===o?void 0:o.length)&&(e.allHeaders.Authorization='"Bearer " + accessToken');const h=Object.keys(e.allHeaders);if(h.length&&h.forEach((t=>{var a;p.push(3,'.header("%s", %s)',t,"Authorization"===t&&(null===(a=e.securityOAuth2ExtraCalls)||void 0===a?void 0:a.length)?e.allHeaders[t]:`"${e.allHeaders[t]}"`)})),e.basicAuth){const{username:t,password:a}=e.basicAuth;p.push(3,`.header("Authorization", "Basic " + Base64.getEncoder().encodeToString(("${t}:${a}").getBytes()))`)}return p.push(3,".build();"),i.withWrapper&&(p.blank(),p.push(2,"var response = httpClient.send(request, HttpResponse.BodyHandlers.ofString());"),p.blank(),p.push(2,"System.out.println(response.body());"),p.push(1,"}"),p.push("}")),l&&p.clean(),p.join()};export const info={key:"httpclient",title:"HttpClient",link:"https://docs.oracle.com/en/java/javase/11/docs/api/java.net.http/java/net/http/HttpClient.html",description:"HttpClient (Java SE 11 & JDK 11 )"};export default handler;function addComments(e,t){var a;e.push("/**"),e.push(" * Requires JDK >= 11"),(null===(a=t.securityOAuth2ExtraCalls)||void 0===a?void 0:a.length)&&(e.push(" *"),e.push(' * Requires package "org.json" >= 20201115'),e.push(" * See here for installation details:"),e.push(" * https://search.maven.org/artifact/org.json/json")),e.push(" */"),e.blank()}function addImports(e,t){var a,s,r,n;e.push("import java.net.*;"),e.push("import java.net.http.*;"),e.push("import java.util.*;"),(normalizeMimeType(null===(a=t.postData)||void 0===a?void 0:a.mimeType)===MediaTypes.URL_ENCODED&&(null===(s=t.postData)||void 0===s?void 0:s.params)||(null===(r=t.securityOAuth2ExtraCalls)||void 0===r?void 0:r.length)||hasQueryParams(t))&&(e.push("import java.nio.charset.StandardCharsets;"),e.push("import java.util.stream.Collectors;")),(null===(n=t.securityOAuth2ExtraCalls)||void 0===n?void 0:n.length)&&e.push("import org.json.JSONObject;"),e.blank()}
2
2
  //# sourceMappingURL=httpclient.js.map
@@ -1,2 +1,2 @@
1
- import{CodeBuilder}from"../../helpers/code-builder";import{HTTPSnippet}from"../../index";import{isEmptyObject,normalizeMimeType}from"../../../../utils";import{capitalizeFirst}from"../../../generator";import{Lang}from"../../helpers/constants";import{buildUrlExpression,printUrlVariablesDeclarations}from"../../helpers/code-helpers";import{MediaTypes}from"../../../../../constants";const handler=function(t,e,{target:s,client:a}){var i,r;const p=Object.assign({indent:" ",withWrapper:!0},e),n=new CodeBuilder({indentation:p.indent,variablesPrefix:p.variablesPrefix,capitalize:!0,lang:Lang.JAVA8}),o=formatHttpMethod(t.method);if(p.withComments&&addComments(n),p.withImports&&addImports(n,t),p.withWrapper&&(n.push("public class App {"),n.push(1,"public static void main(String[] args ) throws java.io.IOException {"),n.push(2,"HttpClient httpClient = HttpClientBuilder.create().build();"),n.blank()),null===(i=t.securityOAuth2ExtraCalls)||void 0===i?void 0:i.length){const e=new HTTPSnippet(null===(r=t.securityOAuth2ExtraCalls)||void 0===r?void 0:r[0]).convert(s,a,Object.assign(Object.assign({},p),{withImports:!1,withWrapper:!1,withComments:!1,variablesPrefix:"oauth2"}));n.push(e),n.push(2,"JSONObject %s = new JSONObject(EntityUtils.toString(httpClient.execute(%s).getEntity()));","oauth2Response","oauth2Request"),n.push(2,'String accessToken = %s.getString("access_token");',"oauth2Response"),n.blank()}printUrlVariablesDeclarations(t,n,2);const u=buildUrlExpression(t,n);n.push(2,`%s ${n.var("request")} = new %s(%s);`,o,o,u);const h=Object.keys(t.allHeaders);if(!h.length||t.postData&&t.postData.mimeType==MediaTypes.MULTIPART||h.forEach((e=>{var s;n.push(2,'%s.setHeader("%s", %s);',n.var("request"),e,(null===(s=t.securityOAuth2ExtraCalls)||void 0===s?void 0:s.length)?'"Bearer " + accessToken':`"${t.allHeaders[e]}"`)})),t.basicAuth){const{username:e,password:s}=t.basicAuth;n.push(2,`String encodedString = Base64.getEncoder().encodeToString("${e}:${s}".getBytes());`),n.push(2,'%s.setHeader("%s", "%s"+encodedString);',n.var("request"),"Authorization","Basic ")}if(t.postData)switch(normalizeMimeType(t.postData.mimeType)){case MediaTypes.URL_ENCODED:t.postData.params&&(n.blank(),n.push(2,"List<NameValuePair> params = new ArrayList<NameValuePair>();"),t.postData.params.forEach((t=>{n.push(2,'params.add(new BasicNameValuePair("%s", "%s"));',t.name,t.value)})),n.push(2,"%s.setEntity(new UrlEncodedFormEntity(params));",n.var("request")),n.blank());break;case MediaTypes.MULTIPART:t.postData.params&&(n.push(2,"MultipartEntity reqEntity = new MultipartEntity();"),t.postData.params.forEach((t=>{n.push(2,'reqEntity.addPart("%s", %s);',t.name,isString(t.value)?`new StringBody("${t.value}")`:t.value)})),n.push(2,"%s.setEntity(reqEntity);",n.var("request")));break;case MediaTypes.JSON:if(t.postData.jsonObj){n.push(2,"JSONObject payload = new JSONObject();");for(const[e,s]of Object.entries(t.postData.jsonObj))Array.isArray(s)?(n.push(2,'payload.put("%s", new JSONArray()',e),s.forEach((t=>{isObject(t)?(n.push(3,".put(new JSONObject()"),l(t,4),n.push(3,")")):n.push(3,".put(%s)",formatValue(t))})),n.push(2,");")):isObject(s)?(n.push(2,'payload.put("%s", new JSONObject()%s',e,isEmptyObject(s)?");":""),l(s,3),isEmptyObject(s)||n.push(2,");")):n.push(2,'payload.put("%s", %s);',e,formatValue(s));n.push(2,"%s.setEntity(new StringEntity(payload.toString()));",n.var("request"))}break;case MediaTypes.XML:t.postData.text&&(n.push(2,'String payload = String.join("\\n"'),t.postData.text.trim().split("\n").forEach((t=>{const e=t.replace(/"/g,'\\"');n.push(3,`, "${e}"`)})),n.push(2,");"),n.push(2,"%s.setEntity(new StringEntity(payload));",n.var("request")))}return p.withWrapper&&(n.push(2,`String ${n.var("response")} = EntityUtils.toString(httpClient.execute(request).getEntity());`),n.blank(),n.push(2,"System.out.println(response);"),n.push(1,"}"),n.push("}")),n.join();function l(t,e){for(const[s,a]of Object.entries(t))isObject(a)?(n.push(e,'.put("%s", new JSONObject()',s),l(a,e+1),n.push(e,")")):n.push(e,'.put("%s", %s)',s,formatValue(a))}};export const info={key:"apachehttp",title:"Apache http",link:"https://hc.apache.org/httpcomponents-client-4.5.x/",description:"Apache HttpClient"};export default handler;function addComments(t){t.push("/**"),t.push(" * Requires JDK >= 8"),t.push(" *"),t.push(" * Requires Apache HttpComponents Client >= 4.3.5"),t.push(" * See here for installation details:"),t.push(" * https://search.maven.org/artifact/org.apache.httpcomponents/httpcomponents-client"),t.push(" *"),t.push(' * Requires package "junit4"'),t.push(" * See here for installation details:"),t.push(" * https://junit.org/junit4"),t.push(" *"),t.push(' * Requires package "org.json" >= 20180130'),t.push(" * See here for installation details:"),t.push(" * https://search.maven.org/artifact/org.json/json"),t.push(" */"),t.blank()}function addImports(t,e){var s,a,i;t.push("import org.apache.http.util.EntityUtils;"),t.push("import org.apache.http.NameValuePair;"),t.push("import org.apache.http.client.HttpClient;"),t.push("import org.apache.http.client.entity.UrlEncodedFormEntity;"),e.method&&addHttpMethodImport(t,e.method),(null===(s=e.securityOAuth2ExtraCalls)||void 0===s?void 0:s.length)&&(null===(a=e.securityOAuth2ExtraCalls)||void 0===a?void 0:a[0].method.toLowerCase())!==e.method.toLowerCase()&&addHttpMethodImport(t,null===(i=e.securityOAuth2ExtraCalls)||void 0===i?void 0:i[0].method),t.push("import org.apache.http.impl.client.HttpClientBuilder;"),t.push("import org.apache.http.message.BasicNameValuePair;"),t.push("import org.apache.http.entity.StringEntity;"),t.push("import org.json.JSONObject;"),t.push("import org.json.JSONArray;"),t.push("import java.util.ArrayList;"),t.push("import java.util.List;"),t.push("import org.apache.http.entity.mime.MultipartEntity;"),t.push("import org.apache.http.entity.mime.content.StringBody;"),e.basicAuth&&t.push("import java.util.Base64;"),t.blank()}function addHttpMethodImport(t,e){const s=formatHttpMethod(e);t.push(`import org.apache.http.client.methods.${s};`)}function formatHttpMethod(t){return"Http"+capitalizeFirst(t.toLowerCase())}function isString(t){return"[object String]"===Object.prototype.toString.call(t)}function isObject(t){const e=typeof t;return"function"===e||"object"===e&&!!t}function formatValue(t){return isString(t)?JSON.stringify(t):null==t?"JSONObject.NULL":t}
1
+ import{CodeBuilder}from"../../helpers/code-builder";import{HTTPSnippet}from"../../index";import{isEmptyObject,normalizeMimeType}from"../../../../utils";import{capitalizeFirst}from"../../../generator";import{Lang}from"../../helpers/constants";import{buildUrlExpression,printUrlVariablesDeclarations}from"../../helpers/code-helpers";import{MediaTypes}from"../../../../../constants";const handler=function(t,e,{target:s,client:a}){var i,r;const p=Object.assign({indent:" ",withWrapper:!0},e),n=new CodeBuilder({indentation:p.indent,variablesPrefix:p.variablesPrefix,capitalize:!0,lang:Lang.JAVA8}),o=formatHttpMethod(t.method);if(p.withComments&&addComments(n),p.withImports&&addImports(n,t),p.withWrapper&&(n.push("public class App {"),n.push(1,"public static void main(String[] args ) throws java.io.IOException {"),n.push(2,"HttpClient httpClient = HttpClientBuilder.create().build();"),n.blank()),null===(i=t.securityOAuth2ExtraCalls)||void 0===i?void 0:i.length){const e=new HTTPSnippet(null===(r=t.securityOAuth2ExtraCalls)||void 0===r?void 0:r[0]).convert(s,a,Object.assign(Object.assign({},p),{withImports:!1,withWrapper:!1,withComments:!1,variablesPrefix:"oauth2"}));n.push(e),n.push(2,"JSONObject %s = new JSONObject(EntityUtils.toString(httpClient.execute(%s).getEntity()));","oauth2Response","oauth2Request"),n.push(2,'String accessToken = %s.getString("access_token");',"oauth2Response"),n.blank()}printUrlVariablesDeclarations(t,n,2);const u=buildUrlExpression(t,n);n.push(2,`%s ${n.var("request")} = new %s(%s);`,o,o,u);const h=Object.keys(t.allHeaders);if(!h.length||t.postData&&t.postData.mimeType==MediaTypes.MULTIPART||h.forEach((e=>{var s;n.push(2,'%s.setHeader("%s", %s);',n.var("request"),e,(null===(s=t.securityOAuth2ExtraCalls)||void 0===s?void 0:s.length)?'"Bearer " + accessToken':`"${t.allHeaders[e]}"`)})),t.basicAuth){const{username:e,password:s}=t.basicAuth;n.push(2,`String encodedString = Base64.getEncoder().encodeToString("${e}:${s}".getBytes());`),n.push(2,'%s.setHeader("%s", "%s"+encodedString);',n.var("request"),"Authorization","Basic ")}if(t.postData)switch(normalizeMimeType(t.postData.mimeType)){case MediaTypes.URL_ENCODED:t.postData.params&&(n.blank(),n.push(2,"List<NameValuePair> params = new ArrayList<NameValuePair>();"),t.postData.params.forEach((t=>{n.push(2,'params.add(new BasicNameValuePair("%s", "%s"));',t.name,t.value)})),n.push(2,"%s.setEntity(new UrlEncodedFormEntity(params));",n.var("request")),n.blank());break;case MediaTypes.MULTIPART:t.postData.params&&(n.push(2,"MultipartEntity reqEntity = new MultipartEntity();"),t.postData.params.forEach((t=>{n.push(2,'reqEntity.addPart("%s", %s);',t.name,isString(t.value)?`new StringBody("${t.value}")`:t.value)})),n.push(2,"%s.setEntity(reqEntity);",n.var("request")));break;case MediaTypes.JSON:if(t.postData.jsonObj){n.push(2,"JSONObject payload = new JSONObject();");for(const[e,s]of Object.entries(t.postData.jsonObj))Array.isArray(s)?(n.push(2,'payload.put("%s", new JSONArray()',e),s.forEach((t=>{isObject(t)?(n.push(3,".put(new JSONObject()"),l(t,4),n.push(3,")")):n.push(3,".put(%s)",formatValue(t))})),n.push(2,");")):isObject(s)?(n.push(2,'payload.put("%s", new JSONObject()%s',e,isEmptyObject(s)?");":""),l(s,3),isEmptyObject(s)||n.push(2,");")):n.push(2,'payload.put("%s", %s);',e,formatValue(s));n.push(2,"%s.setEntity(new StringEntity(payload.toString()));",n.var("request"))}break;case MediaTypes.XML:t.postData.text&&(n.push(2,'String payload = String.join("\\n"'),t.postData.text.trim().split("\n").forEach((t=>{const e=t.replace(/"/g,'\\"');n.push(3,`"${e}", `)})),n.push(2,");"),n.push(2,"%s.setEntity(new StringEntity(payload));",n.var("request")))}return p.withWrapper&&(n.push(2,`String ${n.var("response")} = EntityUtils.toString(httpClient.execute(request).getEntity());`),n.blank(),n.push(2,"System.out.println(response);"),n.push(1,"}"),n.push("}")),n.join();function l(t,e){for(const[s,a]of Object.entries(t))isObject(a)?(n.push(e,'.put("%s", new JSONObject()',s),l(a,e+1),n.push(e,")")):n.push(e,'.put("%s", %s)',s,formatValue(a))}};export const info={key:"apachehttp",title:"Apache http",link:"https://hc.apache.org/httpcomponents-client-4.5.x/",description:"Apache HttpClient"};export default handler;function addComments(t){t.push("/**"),t.push(" * Requires JDK >= 8"),t.push(" *"),t.push(" * Requires Apache HttpComponents Client >= 4.3.5"),t.push(" * See here for installation details:"),t.push(" * https://search.maven.org/artifact/org.apache.httpcomponents/httpcomponents-client"),t.push(" *"),t.push(' * Requires package "junit4"'),t.push(" * See here for installation details:"),t.push(" * https://junit.org/junit4"),t.push(" *"),t.push(' * Requires package "org.json" >= 20180130'),t.push(" * See here for installation details:"),t.push(" * https://search.maven.org/artifact/org.json/json"),t.push(" */"),t.blank()}function addImports(t,e){var s,a,i;t.push("import org.apache.http.util.EntityUtils;"),t.push("import org.apache.http.NameValuePair;"),t.push("import org.apache.http.client.HttpClient;"),t.push("import org.apache.http.client.entity.UrlEncodedFormEntity;"),e.method&&addHttpMethodImport(t,e.method),(null===(s=e.securityOAuth2ExtraCalls)||void 0===s?void 0:s.length)&&(null===(a=e.securityOAuth2ExtraCalls)||void 0===a?void 0:a[0].method.toLowerCase())!==e.method.toLowerCase()&&addHttpMethodImport(t,null===(i=e.securityOAuth2ExtraCalls)||void 0===i?void 0:i[0].method),t.push("import org.apache.http.impl.client.HttpClientBuilder;"),t.push("import org.apache.http.message.BasicNameValuePair;"),t.push("import org.apache.http.entity.StringEntity;"),t.push("import org.json.JSONObject;"),t.push("import org.json.JSONArray;"),t.push("import java.util.ArrayList;"),t.push("import java.util.List;"),t.push("import org.apache.http.entity.mime.MultipartEntity;"),t.push("import org.apache.http.entity.mime.content.StringBody;"),e.basicAuth&&t.push("import java.util.Base64;"),t.blank()}function addHttpMethodImport(t,e){const s=formatHttpMethod(e);t.push(`import org.apache.http.client.methods.${s};`)}function formatHttpMethod(t){return"Http"+capitalizeFirst(t.toLowerCase())}function isString(t){return"[object String]"===Object.prototype.toString.call(t)}function isObject(t){const e=typeof t;return"function"===e||"object"===e&&!!t}function formatValue(t){return isString(t)?JSON.stringify(t):null==t?"JSONObject.NULL":t}
2
2
  //# sourceMappingURL=apachehttp.js.map
@@ -0,0 +1,2 @@
1
+ import type { MediaTypeModel } from '../models';
2
+ export declare const convertExamplesFormat: (mediaType: MediaTypeModel) => MediaTypeModel;
@@ -0,0 +1,2 @@
1
+ import{toXML}from"jstoxml";import{isXmlLike}from"./openapi";export const convertExamplesFormat=e=>{if(!e.examples)return e;const t=Object.fromEntries(Object.entries(e.examples).map((([e,t])=>isXmlLike(t.mime)&&t.value&&"object"==typeof t.value?[e,Object.assign(Object.assign({},t),{value:toXML(t.value,{indent:" "})})]:[e,t])));return Object.assign(Object.assign({},e),{examples:t})};
2
+ //# sourceMappingURL=convertExamplesFormat.js.map
@@ -10,6 +10,7 @@ export declare function getOperationId(operation: ExtendedOpenAPIOperation, pare
10
10
  export declare function detectType(schema: OpenAPISchema): string;
11
11
  export declare function isPrimitiveType(schema: OpenAPISchema, type?: string | string[] | undefined): boolean;
12
12
  export declare function isJsonLike(contentType: string): boolean;
13
+ export declare function isXmlLike(contentType: string): boolean;
13
14
  export declare function isFormUrlEncoded(contentType: string): boolean;
14
15
  export declare function isMultipartFormData(contentType: string): boolean;
15
16
  export declare function urlFormEncodePayload(payload: GenericObject, encoding?: {
@@ -1,2 +1,2 @@
1
- import{dirname}from"path";import UrlTemplate from"url-template";import{IS_BROWSER}from"@redocly/theme";import{deleteEmptyArrayItem,isArrayOfObjects,isNumeric,removeQueryStringAndHash,resolveUrl,sanitizeItemId,normalizeText,getValueFromMdParsedExtension}from"./helpers";import{DEFAULT_TAG_SLUG,MediaTypes}from"../constants";import{JsonPointer}from"./JsonPointer";import{joinWithSeparator}from"../services";function isWildcardStatusCode(e){return"string"==typeof e&&/\dxx/i.test(e)}export function isStatusCode(e){return"default"===e||isNumeric(e)||isWildcardStatusCode(e)}export function getStatusCodeType(e,r=!1){if("default"===e)return r?"error":"success";let t="string"==typeof e?parseInt(e,10):e;if(isWildcardStatusCode(e)&&(t*=100),t<100||t>599)throw new Error("invalid HTTP code");let i="success";return t>=300&&t<400?i="redirect":t>=400?i="error":t<200&&(i="info"),i}const operationNames={get:!0,post:!0,put:!0,head:!0,patch:!0,delete:!0,options:!0,$ref:!0};export function isOperationName(e){return e in operationNames}export function getOperationName(e){const{operationId:r,pathName:t}=e,i=normalizeText(getValueFromMdParsedExtension(e,"description"));return normalizeText(getValueFromMdParsedExtension(e,"summary"))||r||i&&i.substring(0,50)||t||"<no summary>"}export function getOperationId(e,r){var t;return(null==r?void 0:r.id)?joinWithSeparator(r.id,sanitizeItemId(e.operationId?e.operationId:pointerToId(e.pointer))).toLowerCase():(null===(t=e.tags)||void 0===t?void 0:t.length)?sanitizeItemId(e.operationId?e.operationId:pointerToId(e.pointer)):sanitizeItemId(e.operationId?joinWithSeparator(DEFAULT_TAG_SLUG,e.operationId):pointerToId(e.pointer))}function pointerToId(e){return(null==e?void 0:e.startsWith("/"))?e.slice(1,e.length):e}const schemaKeywordTypes={multipleOf:"number",maximum:"number",exclusiveMaximum:"number",minimum:"number",exclusiveMinimum:"number",maxLength:"string",minLength:"string",pattern:"string",contentEncoding:"string",contentMediaType:"string",items:"array",maxItems:"array",minItems:"array",uniqueItems:"array",maxProperties:"object",minProperties:"object",required:"object",additionalProperties:"object",unevaluatedProperties:"object",patternProperties:"object",properties:"object"};export function detectType(e){if(void 0!==e.type&&!Array.isArray(e.type))return e.type;const r=Object.keys(schemaKeywordTypes);for(const t of r){const r=schemaKeywordTypes[t];if(void 0!==e[t])return r}return"any"}export function isPrimitiveType(e,r=e.type){if(e["x-circular-ref"])return!0;if(void 0!==e.oneOf||void 0!==e.anyOf)return!1;if(e.if&&e.then||e.if&&e.else)return!1;let t=!0;const i=Array.isArray(r);return("object"===r||i&&(null==r?void 0:r.includes("object")))&&(t=void 0!==e.properties?0===Object.keys(e.properties).length:void 0===e.additionalProperties&&void 0===e.unevaluatedProperties&&void 0===e.patternProperties),!Array.isArray(e.items)&&!Array.isArray(e.prefixItems)&&(void 0!==e.items&&"boolean"!=typeof e.items&&("array"===r||i&&(null==r?void 0:r.includes("array")))&&(t=isPrimitiveType(e.items,e.items.type)),t)}export function isJsonLike(e){return-1!==e.search(/json/i)}export function isFormUrlEncoded(e){return e===MediaTypes.URL_ENCODED}export function isMultipartFormData(e){return e===MediaTypes.MULTIPART}function delimitedEncodeField(e,r,t){return Array.isArray(e)?e.map((e=>e.toString())).join(t):"object"==typeof e?Object.keys(e).map((r=>`${r}${t}${e[r]}`)).join(t):r+"="+e.toString()}function deepObjectEncodeField(e,r){return Array.isArray(e)?(console.warn("deepObject style cannot be used with array value:"+e.toString()),""):"object"==typeof e?Object.keys(e).map((t=>e[t]?`${r}[${t}]=${e[t]}`:void 0)).filter(Boolean).join("&"):(console.warn("deepObject style cannot be used with non-object value:"+e.toString()),"")}function serializeFormValue(e,r,t){const i="__redoc_param_name__",n=r?"*":"";return UrlTemplate.parse(`{?${i}${n}}`).expand({[i]:t}).substring(1).replace(/__redoc_param_name__/g,e)}function serializeSimpleValue(e,r){const t=e?"*":"",i="__redoc_param_name__",n=UrlTemplate.parse(`{${i}${t}}`);return decodeURIComponent(n.expand({[i]:r}))}export function urlFormEncodePayload(e,r={}){if(Array.isArray(e))throw new Error("Payload must have fields: "+e.toString());return Object.keys(e).map((t=>{const i=e[t],{style:n="form",explode:o=!0}=r[t]||{};switch(n){case"form":return serializeFormValue(t,o,i);case"spaceDelimited":return delimitedEncodeField(i,t,"%20");case"pipeDelimited":return delimitedEncodeField(i,t,"|");case"deepObject":return deepObjectEncodeField(i,t);default:return console.warn("Incorrect or unsupported encoding style: "+n),""}})).join("&")}function serializePathParameter(e,r,t,i){const n=t?"*":"";let o="";"label"===r?o=".":"matrix"===r&&(o=";");const a="__redoc_param_name__";return UrlTemplate.parse(`{${o}${a}${n}}`).expand({[a]:i}).replace(/__redoc_param_name__/g,e)}export function serializeQueryParameter(e,r,t,i){const n=n=>{switch(r){case"form":return serializeFormValue(e,t,n);case"spaceDelimited":return Array.isArray(n)||"object"==typeof n?t?serializeFormValue(e,t,n):delimitedEncodeField(i,e,"%20"):(console.warn("The style spaceDelimited is applicable to arrays or objects"),"");case"pipeDelimited":return Array.isArray(n)||"object"==typeof n?t?serializeFormValue(e,t,n):delimitedEncodeField(i,e,"|"):(console.warn("The style pipeDelimited is applicable to arrays or objects"),"");case"deepObject":return!t||Array.isArray(n)||"object"!=typeof n?(console.warn("The style deepObject is only applicable for objects with explode=true"),""):deepObjectEncodeField(n,e);case"simple":return serializeSimpleValue(t,i);default:return console.warn("Unexpected style for query: "+r),""}};return isArrayOfObjects(i)&&(i=deleteEmptyArrayItem(i).map((e=>n(e)))),n(i)}function serializeHeaderParameter(e,r,t){return"simple"===e?serializeSimpleValue(r,t):(console.warn("Unexpected style for header: "+e),"")}function serializeCookieParameter(e,r,t,i){return"form"===r?serializeFormValue(e,t,i):(console.warn("Unexpected style for cookie: "+r),"")}export function serializeParameterValueWithMime(e,r){return isJsonLike(r)?JSON.stringify(e):(console.warn(`Parameter serialization as ${r} is not supported`),"")}export function serializeParameterValue(e,r){const{name:t,style:i,explode:n=!1,serializationMime:o}=e;if(o)switch(e.in){case"path":case"header":return serializeParameterValueWithMime(r,o);case"cookie":case"query":return`${t}=${serializeParameterValueWithMime(r,o)}`;default:return console.warn("Unexpected parameter location: "+e.in),""}if(!i)return console.warn(`Missing style attribute or content for parameter ${t}`),"";switch(e.in){case"path":return serializePathParameter(t,i,n,r);case"query":return serializeQueryParameter(t,i,n,r);case"header":return serializeHeaderParameter(i,n,r);case"cookie":return serializeCookieParameter(t,i,n,r);default:return console.warn("Unexpected parameter location: "+e.in),""}}export function langFromMime(e){return-1!==e.search(/xml/i)?"xml":"clike"}const DEFINITION_NAME_REGEX=/^#\/components\/(schemas|pathItems)\/([^/]+)$/;export function isNamedDefinition(e){return DEFINITION_NAME_REGEX.test(e||"")}export function getDefinitionName(e){var r;return null===(r=null==e?void 0:e.match(DEFINITION_NAME_REGEX))||void 0===r?void 0:r.pop()}function humanizeMultipleOfConstraint(e){if(void 0===e)return;const r=e.toString(10);return/^0\.0*1$/.test(r)?`decimal places <= ${r.split(".")[1].length}`:`multiple of ${r}`}function humanizeRangeConstraint(e,r,t){let i;return void 0!==r&&void 0!==t?i=r===t?`= ${r} ${e}`:`[ ${r} .. ${t} ] ${e}`:void 0!==t?i=`<= ${t} ${e}`:void 0!==r&&(i=1===r?"non-empty":`>= ${r} ${e}`),i}export function humanizeNumberRange(e){var r,t;const i="number"==typeof e.exclusiveMinimum?Math.min(e.exclusiveMinimum,null!==(r=e.minimum)&&void 0!==r?r:1/0):e.minimum,n="number"==typeof e.exclusiveMaximum?Math.max(e.exclusiveMaximum,null!==(t=e.maximum)&&void 0!==t?t:-1/0):e.maximum,o="number"==typeof e.exclusiveMinimum||e.exclusiveMinimum,a="number"==typeof e.exclusiveMaximum||e.exclusiveMaximum;return void 0!==i&&void 0!==n?`${o?"( ":"[ "}${i} .. ${n}${a?" )":" ]"}`:void 0!==n?`${a?"< ":"<= "}${n}`:void 0!==i?`${o?"> ":">= "}${i}`:void 0}export function humanizeConstraints(e){const r=[],t=humanizeRangeConstraint("characters",e.minLength,e.maxLength);void 0!==t&&r.push(t);const i=humanizeRangeConstraint("items",e.minItems,e.maxItems);void 0!==i&&r.push(i);const n=humanizeRangeConstraint(1===e.minProperties&&1===e.maxProperties?"property":"properties",e.minProperties,e.maxProperties);void 0!==n&&r.push(n);const o=humanizeMultipleOfConstraint(e.multipleOf);void 0!==o&&r.push(o);const a=humanizeNumberRange(e);return void 0!==a&&r.push(a),e.uniqueItems&&r.push("unique"),r}export function sortByRequired(e,r=[]){const t=[],i=[],n=[];return e.forEach((e=>{e.required?r.includes(e.name)?i.push(e):n.push(e):t.push(e)})),i.sort(((e,t)=>r.indexOf(e.name)-r.indexOf(t.name))),[...i,...n,...t]}export function sortByDeprecated(e){return e.sort(((e,r)=>Number(e.deprecated)-Number(r.deprecated)))}export function mergeParams(e,r=[],t=[],{pathPointer:i,operationPointer:n}){const o={};t.forEach((r=>{({resolved:r}=e.deref(r)),o[r.name+"_"+r.in]=!0}));return[...r.map(((e,r)=>({paramOrRef:e,pointer:JsonPointer.join(i,["parameters",String(r)])}))).filter((({paramOrRef:r})=>(({resolved:r}=e.deref(r)),!o[r.name+"_"+r.in]))),...t.map(((e,r)=>({paramOrRef:e,pointer:JsonPointer.join(n,["parameters",String(r)])})))]}export function normalizeServers(e,r){const t=void 0===e?removeQueryStringAndHash((()=>{if(!IS_BROWSER)return globalThis.SSR_HOSTNAME||"";const e=window.location.href;return e.endsWith(".html")?dirname(e):e})()):dirname(e);return 0===r.length&&(r=[{url:"/"}]),r.map((e=>{return Object.assign(Object.assign({},e),{url:(r=e.url,resolveUrl(t,r)),description:e.description||""});var r}))}export const shortenHTTPVerb=e=>({delete:"del",options:"opts"}[e]||e);export function isRedocExtension(e){return e in{"x-circular-ref":!0,"x-parentRefs":!0,"x-refsStack":!0,"x-codeSamples":!0,"x-displayName":!0,"x-examples":!0,"x-logo":!0,"x-nullable":!0,"x-servers":!0,"x-tagGroups":!0,"x-traitTag":!0,"x-additionalPropertiesName":!0,"x-explicitMappingOnly":!0,"x-enumDescriptions":!0,"x-hideReplay":!0,"x-tokenEndpointAuthMethod":!0,"x-feedback":!0,"x-badges":!0}||e.startsWith("x-parsed-md-")}export function extractExtensions(e,r){return Object.keys(e).filter((e=>!0===r?e.startsWith("x-")&&!isRedocExtension(e):e.startsWith("x-")&&r.indexOf(e)>-1)).reduce(((r,t)=>(r[t]=e[t],r)),{})}export function pluralizeType(e){return e.split(" or ").map((e=>e.replace(/^(string|object|number|integer|array|boolean)s?( ?.*)/,"$1s$2"))).join(" or ")}export function getContentWithLegacyExamples(e){let r=e.content;const t=e["x-examples"],i=e["x-example"];if(t){r=Object.assign({},r);for(const e of Object.keys(t)){const i=t[e];r[e]=Object.assign(Object.assign({},r[e]),{examples:i})}}else if(i){r=Object.assign({},r);for(const e of Object.keys(i)){const t=i[e];r[e]=Object.assign(Object.assign({},r[e]),{example:t})}}return r}
1
+ import{dirname}from"path";import UrlTemplate from"url-template";import{IS_BROWSER}from"@redocly/theme";import{deleteEmptyArrayItem,isArrayOfObjects,isNumeric,removeQueryStringAndHash,resolveUrl,sanitizeItemId,normalizeText,getValueFromMdParsedExtension}from"./helpers";import{DEFAULT_TAG_SLUG,MediaTypes}from"../constants";import{JsonPointer}from"./JsonPointer";import{joinWithSeparator}from"../services";function isWildcardStatusCode(e){return"string"==typeof e&&/\dxx/i.test(e)}export function isStatusCode(e){return"default"===e||isNumeric(e)||isWildcardStatusCode(e)}export function getStatusCodeType(e,r=!1){if("default"===e)return r?"error":"success";let t="string"==typeof e?parseInt(e,10):e;if(isWildcardStatusCode(e)&&(t*=100),t<100||t>599)throw new Error("invalid HTTP code");let i="success";return t>=300&&t<400?i="redirect":t>=400?i="error":t<200&&(i="info"),i}const operationNames={get:!0,post:!0,put:!0,head:!0,patch:!0,delete:!0,options:!0,$ref:!0};export function isOperationName(e){return e in operationNames}export function getOperationName(e){const{operationId:r,pathName:t}=e,i=normalizeText(getValueFromMdParsedExtension(e,"description"));return normalizeText(getValueFromMdParsedExtension(e,"summary"))||r||i&&i.substring(0,50)||t||"<no summary>"}export function getOperationId(e,r){var t;return(null==r?void 0:r.id)?joinWithSeparator(r.id,sanitizeItemId(e.operationId?e.operationId:pointerToId(e.pointer))).toLowerCase():(null===(t=e.tags)||void 0===t?void 0:t.length)?sanitizeItemId(e.operationId?e.operationId:pointerToId(e.pointer)):sanitizeItemId(e.operationId?joinWithSeparator(DEFAULT_TAG_SLUG,e.operationId):pointerToId(e.pointer))}function pointerToId(e){return(null==e?void 0:e.startsWith("/"))?e.slice(1,e.length):e}const schemaKeywordTypes={multipleOf:"number",maximum:"number",exclusiveMaximum:"number",minimum:"number",exclusiveMinimum:"number",maxLength:"string",minLength:"string",pattern:"string",contentEncoding:"string",contentMediaType:"string",items:"array",maxItems:"array",minItems:"array",uniqueItems:"array",maxProperties:"object",minProperties:"object",required:"object",additionalProperties:"object",unevaluatedProperties:"object",patternProperties:"object",properties:"object"};export function detectType(e){if(void 0!==e.type&&!Array.isArray(e.type))return e.type;const r=Object.keys(schemaKeywordTypes);for(const t of r){const r=schemaKeywordTypes[t];if(void 0!==e[t])return r}return"any"}export function isPrimitiveType(e,r=e.type){if(e["x-circular-ref"])return!0;if(void 0!==e.oneOf||void 0!==e.anyOf)return!1;if(e.if&&e.then||e.if&&e.else)return!1;let t=!0;const i=Array.isArray(r);return("object"===r||i&&(null==r?void 0:r.includes("object")))&&(t=void 0!==e.properties?0===Object.keys(e.properties).length:void 0===e.additionalProperties&&void 0===e.unevaluatedProperties&&void 0===e.patternProperties),!Array.isArray(e.items)&&!Array.isArray(e.prefixItems)&&(void 0!==e.items&&"boolean"!=typeof e.items&&("array"===r||i&&(null==r?void 0:r.includes("array")))&&(t=isPrimitiveType(e.items,e.items.type)),t)}export function isJsonLike(e){return-1!==e.search(/json/i)}export function isXmlLike(e){return-1!==(null==e?void 0:e.search(/xml/i))}export function isFormUrlEncoded(e){return e===MediaTypes.URL_ENCODED}export function isMultipartFormData(e){return e===MediaTypes.MULTIPART}function delimitedEncodeField(e,r,t){return Array.isArray(e)?e.map((e=>e.toString())).join(t):"object"==typeof e?Object.keys(e).map((r=>`${r}${t}${e[r]}`)).join(t):r+"="+e.toString()}function deepObjectEncodeField(e,r){return Array.isArray(e)?(console.warn("deepObject style cannot be used with array value:"+e.toString()),""):"object"==typeof e?Object.keys(e).map((t=>e[t]?`${r}[${t}]=${e[t]}`:void 0)).filter(Boolean).join("&"):(console.warn("deepObject style cannot be used with non-object value:"+e.toString()),"")}function serializeFormValue(e,r,t){const i="__redoc_param_name__",n=r?"*":"";return UrlTemplate.parse(`{?${i}${n}}`).expand({[i]:t}).substring(1).replace(/__redoc_param_name__/g,e)}function serializeSimpleValue(e,r){const t=e?"*":"",i="__redoc_param_name__",n=UrlTemplate.parse(`{${i}${t}}`);return decodeURIComponent(n.expand({[i]:r}))}export function urlFormEncodePayload(e,r={}){if(Array.isArray(e))throw new Error("Payload must have fields: "+e.toString());return Object.keys(e).map((t=>{const i=e[t],{style:n="form",explode:o=!0}=r[t]||{};switch(n){case"form":return serializeFormValue(t,o,i);case"spaceDelimited":return delimitedEncodeField(i,t,"%20");case"pipeDelimited":return delimitedEncodeField(i,t,"|");case"deepObject":return deepObjectEncodeField(i,t);default:return console.warn("Incorrect or unsupported encoding style: "+n),""}})).join("&")}function serializePathParameter(e,r,t,i){const n=t?"*":"";let o="";"label"===r?o=".":"matrix"===r&&(o=";");const a="__redoc_param_name__";return UrlTemplate.parse(`{${o}${a}${n}}`).expand({[a]:i}).replace(/__redoc_param_name__/g,e)}export function serializeQueryParameter(e,r,t,i){const n=n=>{switch(r){case"form":return serializeFormValue(e,t,n);case"spaceDelimited":return Array.isArray(n)||"object"==typeof n?t?serializeFormValue(e,t,n):delimitedEncodeField(i,e,"%20"):(console.warn("The style spaceDelimited is applicable to arrays or objects"),"");case"pipeDelimited":return Array.isArray(n)||"object"==typeof n?t?serializeFormValue(e,t,n):delimitedEncodeField(i,e,"|"):(console.warn("The style pipeDelimited is applicable to arrays or objects"),"");case"deepObject":return!t||Array.isArray(n)||"object"!=typeof n?(console.warn("The style deepObject is only applicable for objects with explode=true"),""):deepObjectEncodeField(n,e);case"simple":return serializeSimpleValue(t,i);default:return console.warn("Unexpected style for query: "+r),""}};return isArrayOfObjects(i)&&(i=deleteEmptyArrayItem(i).map((e=>n(e)))),n(i)}function serializeHeaderParameter(e,r,t){return"simple"===e?serializeSimpleValue(r,t):(console.warn("Unexpected style for header: "+e),"")}function serializeCookieParameter(e,r,t,i){return"form"===r?serializeFormValue(e,t,i):(console.warn("Unexpected style for cookie: "+r),"")}export function serializeParameterValueWithMime(e,r){return isJsonLike(r)?JSON.stringify(e):(console.warn(`Parameter serialization as ${r} is not supported`),"")}export function serializeParameterValue(e,r){const{name:t,style:i,explode:n=!1,serializationMime:o}=e;if(o)switch(e.in){case"path":case"header":return serializeParameterValueWithMime(r,o);case"cookie":case"query":return`${t}=${serializeParameterValueWithMime(r,o)}`;default:return console.warn("Unexpected parameter location: "+e.in),""}if(!i)return console.warn(`Missing style attribute or content for parameter ${t}`),"";switch(e.in){case"path":return serializePathParameter(t,i,n,r);case"query":return serializeQueryParameter(t,i,n,r);case"header":return serializeHeaderParameter(i,n,r);case"cookie":return serializeCookieParameter(t,i,n,r);default:return console.warn("Unexpected parameter location: "+e.in),""}}export function langFromMime(e){return-1!==e.search(/xml/i)?"xml":"clike"}const DEFINITION_NAME_REGEX=/^#\/components\/(schemas|pathItems)\/([^/]+)$/;export function isNamedDefinition(e){return DEFINITION_NAME_REGEX.test(e||"")}export function getDefinitionName(e){var r;return null===(r=null==e?void 0:e.match(DEFINITION_NAME_REGEX))||void 0===r?void 0:r.pop()}function humanizeMultipleOfConstraint(e){if(void 0===e)return;const r=e.toString(10);return/^0\.0*1$/.test(r)?`decimal places <= ${r.split(".")[1].length}`:`multiple of ${r}`}function humanizeRangeConstraint(e,r,t){let i;return void 0!==r&&void 0!==t?i=r===t?`= ${r} ${e}`:`[ ${r} .. ${t} ] ${e}`:void 0!==t?i=`<= ${t} ${e}`:void 0!==r&&(i=1===r?"non-empty":`>= ${r} ${e}`),i}export function humanizeNumberRange(e){var r,t;const i="number"==typeof e.exclusiveMinimum?Math.min(e.exclusiveMinimum,null!==(r=e.minimum)&&void 0!==r?r:1/0):e.minimum,n="number"==typeof e.exclusiveMaximum?Math.max(e.exclusiveMaximum,null!==(t=e.maximum)&&void 0!==t?t:-1/0):e.maximum,o="number"==typeof e.exclusiveMinimum||e.exclusiveMinimum,a="number"==typeof e.exclusiveMaximum||e.exclusiveMaximum;return void 0!==i&&void 0!==n?`${o?"( ":"[ "}${i} .. ${n}${a?" )":" ]"}`:void 0!==n?`${a?"< ":"<= "}${n}`:void 0!==i?`${o?"> ":">= "}${i}`:void 0}export function humanizeConstraints(e){const r=[],t=humanizeRangeConstraint("characters",e.minLength,e.maxLength);void 0!==t&&r.push(t);const i=humanizeRangeConstraint("items",e.minItems,e.maxItems);void 0!==i&&r.push(i);const n=humanizeRangeConstraint(1===e.minProperties&&1===e.maxProperties?"property":"properties",e.minProperties,e.maxProperties);void 0!==n&&r.push(n);const o=humanizeMultipleOfConstraint(e.multipleOf);void 0!==o&&r.push(o);const a=humanizeNumberRange(e);return void 0!==a&&r.push(a),e.uniqueItems&&r.push("unique"),r}export function sortByRequired(e,r=[]){const t=[],i=[],n=[];return e.forEach((e=>{e.required?r.includes(e.name)?i.push(e):n.push(e):t.push(e)})),i.sort(((e,t)=>r.indexOf(e.name)-r.indexOf(t.name))),[...i,...n,...t]}export function sortByDeprecated(e){return e.sort(((e,r)=>Number(e.deprecated)-Number(r.deprecated)))}export function mergeParams(e,r=[],t=[],{pathPointer:i,operationPointer:n}){const o={};t.forEach((r=>{({resolved:r}=e.deref(r)),o[r.name+"_"+r.in]=!0}));return[...r.map(((e,r)=>({paramOrRef:e,pointer:JsonPointer.join(i,["parameters",String(r)])}))).filter((({paramOrRef:r})=>(({resolved:r}=e.deref(r)),!o[r.name+"_"+r.in]))),...t.map(((e,r)=>({paramOrRef:e,pointer:JsonPointer.join(n,["parameters",String(r)])})))]}export function normalizeServers(e,r){const t=void 0===e?removeQueryStringAndHash((()=>{if(!IS_BROWSER)return globalThis.SSR_HOSTNAME||"";const e=window.location.href;return e.endsWith(".html")?dirname(e):e})()):dirname(e);return 0===r.length&&(r=[{url:"/"}]),r.map((e=>{return Object.assign(Object.assign({},e),{url:(r=e.url,resolveUrl(t,r)),description:e.description||""});var r}))}export const shortenHTTPVerb=e=>({delete:"del",options:"opts"}[e]||e);export function isRedocExtension(e){return e in{"x-circular-ref":!0,"x-parentRefs":!0,"x-refsStack":!0,"x-codeSamples":!0,"x-displayName":!0,"x-examples":!0,"x-logo":!0,"x-nullable":!0,"x-servers":!0,"x-tagGroups":!0,"x-traitTag":!0,"x-additionalPropertiesName":!0,"x-explicitMappingOnly":!0,"x-enumDescriptions":!0,"x-hideReplay":!0,"x-tokenEndpointAuthMethod":!0,"x-feedback":!0,"x-badges":!0}||e.startsWith("x-parsed-md-")}export function extractExtensions(e,r){return Object.keys(e).filter((e=>!0===r?e.startsWith("x-")&&!isRedocExtension(e):e.startsWith("x-")&&r.indexOf(e)>-1)).reduce(((r,t)=>(r[t]=e[t],r)),{})}export function pluralizeType(e){return e.split(" or ").map((e=>e.replace(/^(string|object|number|integer|array|boolean)s?( ?.*)/,"$1s$2"))).join(" or ")}export function getContentWithLegacyExamples(e){let r=e.content;const t=e["x-examples"],i=e["x-example"];if(t){r=Object.assign({},r);for(const e of Object.keys(t)){const i=t[e];r[e]=Object.assign(Object.assign({},r[e]),{examples:i})}}else if(i){r=Object.assign({},r);for(const e of Object.keys(i)){const t=i[e];r[e]=Object.assign(Object.assign({},r[e]),{example:t})}}return r}
2
2
  //# sourceMappingURL=openapi.js.map
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@redocly/openapi-docs",
3
- "version": "3.3.15",
3
+ "version": "3.3.16",
4
4
  "description": "Redocly OpenAPI Docs",
5
5
  "main": "lib/index.js",
6
6
  "module": "lib-esm/index.js",
@@ -24,7 +24,7 @@
24
24
  },
25
25
  "dependencies": {
26
26
  "@markdoc/markdoc": "0.4.0",
27
- "@redocly/openapi-core": "1.22.1",
27
+ "@redocly/openapi-core": "1.25.1",
28
28
  "deepmerge": "^4.2.2",
29
29
  "dompurify": "^2.0.12",
30
30
  "fast-deep-equal": "^3.1.3",
@@ -41,10 +41,11 @@
41
41
  "styled-components": "^4.1.1 || ^5.3.11",
42
42
  "swagger2openapi": "^7.0.8",
43
43
  "tslib": "^2.2.0",
44
+ "jstoxml": "^5.0.2",
44
45
  "url": "~0.11.0",
45
46
  "url-template": "^2.0.8",
46
47
  "util": "~0.12.5",
47
- "@redocly/replay": "0.5.11",
48
+ "@redocly/replay": "0.5.12",
48
49
  "@redocly/config": "0.11.0"
49
50
  },
50
51
  "devDependencies": {
@@ -92,7 +93,7 @@
92
93
  "webpack": "5.91.0",
93
94
  "webpack-cli": "5.1.4",
94
95
  "webpack-dev-server": "4.15.2",
95
- "@redocly/theme": "0.42.0"
96
+ "@redocly/theme": "0.42.1"
96
97
  },
97
98
  "scripts": {
98
99
  "start": "webpack serve --mode=development --hot",