@redocly/reference-docs 2.45.5 → 2.45.7

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,3 +1,7 @@
1
1
  /// <reference types="react" />
2
2
  import type { TabsProps } from './CollapsingTabsBase';
3
- export declare const CollapsingTabs: ({ children, ...props }: TabsProps) => JSX.Element;
3
+ declare type CollapsingTabsProps = TabsProps & {
4
+ onChange?: (key: string) => void;
5
+ };
6
+ export declare const CollapsingTabs: ({ children, ...props }: CollapsingTabsProps) => JSX.Element;
7
+ export {};
@@ -1,2 +1,2 @@
1
- "use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.CollapsingTabs=void 0;var tslib_1=require("tslib"),jsx_runtime_1=require("react/jsx-runtime"),react_1=require("react"),mobx_react_1=require("mobx-react"),CollapsingTabsBase_1=require("./CollapsingTabsBase");function getActiveIndexFromOperation(e,t,r){var a;return t?"number"==typeof r&&r>0?hasActiveExampleName(null===(a=e[r])||void 0===a?void 0:a.content,t)?r:getActiveIndexFromOperation(e,t):e.findIndex((function(e){return hasActiveExampleName(e.content,t)})):-1}function hasActiveExampleName(e,t){return!!(null==e?void 0:e.mediaTypes.find((function(e){return Object.keys(e.examples||[]).includes(t||"")})))}exports.CollapsingTabs=(0,mobx_react_1.observer)((function(e){var t=e.children,r=(0,tslib_1.__rest)(e,["children"]),a=(0,react_1.useState)(0),n=a[0],i=a[1],s=r.operation,o=r.operation.activeExampleName;(0,react_1.useEffect)((function(){var e=getActiveIndexFromOperation(s.responses,o,n);e>-1&&i(e)}),[o]);var c=(0,react_1.useCallback)((function(e){n!==e&&i(e)}),[n]);return(0,jsx_runtime_1.jsx)(CollapsingTabsBase_1.CollapsingTabsBase,(0,tslib_1.__assign)({},r,{activeIndex:n,onChange:c},{children:t}),void 0)}));
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.CollapsingTabs=void 0;var tslib_1=require("tslib"),jsx_runtime_1=require("react/jsx-runtime"),react_1=require("react"),mobx_react_1=require("mobx-react"),CollapsingTabsBase_1=require("./CollapsingTabsBase");function getActiveIndexFromOperation(e,t,r){var n;return t?"number"==typeof r&&r>0?hasActiveExampleName(null===(n=e[r])||void 0===n?void 0:n.content,t)?r:getActiveIndexFromOperation(e,t):e.findIndex((function(e){return hasActiveExampleName(e.content,t)})):-1}function hasActiveExampleName(e,t){return!!(null==e?void 0:e.mediaTypes.find((function(e){return Object.keys(e.examples||[]).includes(t||"")})))}exports.CollapsingTabs=(0,mobx_react_1.observer)((function(e){var t=e.children,r=(0,tslib_1.__rest)(e,["children"]),n=(0,react_1.useState)(0),a=n[0],i=n[1],s=r.operation,o=r.operation.activeExampleName,c=r.onChange;(0,react_1.useEffect)((function(){var e=getActiveIndexFromOperation(s.responses,o,a);e>-1&&i(e)}),[o]);var l=(0,react_1.useCallback)((function(e){a!==e&&i(e),c&&c(e)}),[a,c]);return(0,jsx_runtime_1.jsx)(CollapsingTabsBase_1.CollapsingTabsBase,(0,tslib_1.__assign)({},r,{activeIndex:a,onChange:l},{children:t}),void 0)}));
2
2
  //# sourceMappingURL=CollapsingTabs.js.map
@@ -1,2 +1,2 @@
1
- "use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.ResponseSamples=void 0;var tslib_1=require("tslib"),jsx_runtime_1=require("react/jsx-runtime"),react_1=require("react"),Panel_1=require("../../../../components/Panel"),Tabs_1=require("../../../../components/Tabs"),OptionsProvider_1=require("../OptionsProvider"),PayloadSamples_1=require("../PayloadSamples"),Labels_1=require("../../services/Labels"),events_1=require("../../../../events"),ResponseSamples=function(e){var s=e.operation,n=(0,react_1.useContext)(OptionsProvider_1.OptionsContext),a=n.events,r=n.collapseResponseSamplePanel,o=s.responses.filter((function(e){var s,n;return null!==(n=null===(s=e.content)||void 0===s?void 0:s.hasSample)&&void 0!==n&&n})),l=(0,react_1.useCallback)((function(){var e,n=(0,events_1.createCodeSampleCopyEvent)({operation:s,type:"response"});null===(e=null==a?void 0:a.codeSamplesCopy)||void 0===e||e.call(a,n)}),[s,a]);if(!o.length)return null;var t=o.map((function(e){var s=e.code;return{key:s,title:s}}));return(0,jsx_runtime_1.jsx)(Panel_1.CodePanel,(0,tslib_1.__assign)({dataHeaderTestId:"response-samples",header:(0,Labels_1.l)("responseSamples"),onToggle:function(e){var n,r=(0,events_1.createPanelToggleEvent)({operation:s,isExpanded:e,panelType:"response-samples"});null===(n=null==a?void 0:a.panelToggle)||void 0===n||n.call(a,r)},expanded:!r},{children:(0,jsx_runtime_1.jsx)(Tabs_1.CollapsingTabs,(0,tslib_1.__assign)({tabs:t,operation:s},{children:o.map((function(e){return(0,jsx_runtime_1.jsx)(Tabs_1.TabPanel,(0,tslib_1.__assign)({value:e.code},{children:(0,jsx_runtime_1.jsx)("div",{children:(0,jsx_runtime_1.jsx)(PayloadSamples_1.PayloadSamples,{content:e.content,onCopyClick:l},void 0)},void 0)}),e.code)}))}),void 0)}),void 0)};exports.ResponseSamples=ResponseSamples;
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.ResponseSamples=void 0;var tslib_1=require("tslib"),jsx_runtime_1=require("react/jsx-runtime"),react_1=require("react"),Panel_1=require("../../../../components/Panel"),Tabs_1=require("../../../../components/Tabs"),OptionsProvider_1=require("../OptionsProvider"),PayloadSamples_1=require("../PayloadSamples"),Labels_1=require("../../services/Labels"),events_1=require("../../../../events"),ResponseSamples=function(e){var n=e.operation,s=(0,react_1.useContext)(OptionsProvider_1.OptionsContext),a=s.events,o=s.collapseResponseSamplePanel,t=n.responses.filter((function(e){var n,s;return null!==(s=null===(n=e.content)||void 0===n?void 0:n.hasSample)&&void 0!==s&&s})),l=(0,react_1.useCallback)((function(){var e,s=(0,events_1.createCodeSampleCopyEvent)({operation:n,type:"response"});null===(e=null==a?void 0:a.codeSamplesCopy)||void 0===e||e.call(a,s)}),[n,a]),r=(0,react_1.useCallback)((function(e){var n,s,a;(null===(a=null===(s=null===(n=t[e])||void 0===n?void 0:n.content)||void 0===s?void 0:s.active)||void 0===a?void 0:a.examples)&&"object"==typeof t[e].content.active.examples&&t[e].content.activateExampleName(Object.keys(t[e].content.active.examples)[0])}),[t]);if(!t.length)return null;var i=t.map((function(e){var n=e.code;return{key:n,title:n}}));return(0,jsx_runtime_1.jsx)(Panel_1.CodePanel,(0,tslib_1.__assign)({dataHeaderTestId:"response-samples",header:(0,Labels_1.l)("responseSamples"),onToggle:function(e){var s,o=(0,events_1.createPanelToggleEvent)({operation:n,isExpanded:e,panelType:"response-samples"});null===(s=null==a?void 0:a.panelToggle)||void 0===s||s.call(a,o)},expanded:!o},{children:(0,jsx_runtime_1.jsx)(Tabs_1.CollapsingTabs,(0,tslib_1.__assign)({tabs:i,operation:n,onChange:r},{children:t.map((function(e){return(0,jsx_runtime_1.jsx)(Tabs_1.TabPanel,(0,tslib_1.__assign)({value:e.code},{children:(0,jsx_runtime_1.jsx)("div",{children:(0,jsx_runtime_1.jsx)(PayloadSamples_1.PayloadSamples,{content:e.content,onCopyClick:l},void 0)},void 0)}),e.code)}))}),void 0)}),void 0)};exports.ResponseSamples=ResponseSamples;
2
2
  //# sourceMappingURL=ResponseSamples.js.map
@@ -1,2 +1,2 @@
1
- "use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.capitalizeFirst=exports.isDefined=exports.getCodeSample=void 0;var tslib_1=require("tslib"),query_string_1=require("query-string"),Sampler=(0,tslib_1.__importStar)(require("openapi-sampler")),deepmerge_1=(0,tslib_1.__importDefault)(require("deepmerge")),mobx_1=require("mobx"),redoc_lib_1=require("../../redoc-lib"),utils_1=require("../../utils"),utils_2=require("../utils"),types_1=require("../../types"),Labels_1=require("../../redoc-lib/src/services/Labels"),httpsnippet_1=require("./httpsnippet"),string_utility_1=(0,tslib_1.__importDefault)(require("./httpsnippet/helpers/string-utility"));function mapOperationToHAR(e,t){var a,r,i,s,l,n,o,u,p,d,c=t.exampleName,_=void 0===c?"":c,m=t.skipOptionalParameters,v=void 0!==m&&m,h=t.withOAuth2Call,y=void 0!==h&&h,f=t.spec,g=t.generatedPayloadSamplesMaxDepth,O=void 0===g?8:g,b=t.pathParams,T=void 0===b?{}:b,S=t.properties,C=void 0===S?{}:S,q=getSecurityData(null===(a=e.security)||void 0===a?void 0:a[0],y),E=q.securityHeaders,D=q.securityCookies,A=q.securityQueries,w=q.securityOAuth2ExtraCalls,x=q.basicAuth,P=null===(i=null===(r=e.requestBody)||void 0===r?void 0:r.content)||void 0===i?void 0:i.active,R={skipNonRequired:v,skipReadOnly:!0,maxSampleDepth:O},k={path:(0,mobx_1.toJS)(null===(s=null==e?void 0:e.requestValues)||void 0===s?void 0:s.path),cookie:(0,mobx_1.toJS)(null===(l=null==e?void 0:e.requestValues)||void 0===l?void 0:l.cookie),header:(0,mobx_1.toJS)(null===(n=null==e?void 0:e.requestValues)||void 0===n?void 0:n.header),query:(0,mobx_1.toJS)(null===(o=null==e?void 0:e.requestValues)||void 0===o?void 0:o.query),body:(0,mobx_1.toJS)(null===(u=null==e?void 0:e.requestValues)||void 0===u?void 0:u.body)},N=!1,H=e.parameters.filter((function(e){return"header"===e.in})).filter((function(e){return!(v&&!e.required)})).map((function(e){var t;return{name:e.name,value:(null===(t=k.header)||void 0===t?void 0:t[e.name])||(0,utils_1.getParameterValue)("header",e.name)||(0,redoc_lib_1.serializeParameterValue)(e,Sampler.sample(e.schema.rawSchema,R,f))}})).map((function(e){return(null==P?void 0:P.name)&&"content-type"===e.name.toLowerCase()&&(N=!0,e.value=P.name),e})).concat(E);!N&&(null==P?void 0:P.name)&&H.unshift({name:"Content-Type",value:null==P?void 0:P.name});var M,z=e.parameters.filter((function(e){return"cookie"===e.in})).filter((function(e){return!(v&&!e.required)})).map((function(e){return(0,query_string_1.parse)((0,redoc_lib_1.serializeParameterValue)(e,Sampler.sample(e.schema.rawSchema,R,f)))})).reduce((function(e,t){for(var a,r=0,i=Object.entries(t);r<i.length;r++){var s=i[r],l=s[0],n=s[1];e.push({name:l,value:String((null===(a=k.cookie)||void 0===a?void 0:a[l])||n)})}return e}),[]).concat(D),L=e.parameters.filter((function(e){return"query"===e.in})).filter((function(e){return!(v&&!e.required)})).map((function(e){return(0,query_string_1.parse)((0,redoc_lib_1.serializeParameterValue)(e,Sampler.sample(e.schema.rawSchema,R,f)))})).reduce((function(e,t){for(var a,r,i,s=0,l=Object.entries(t);s<l.length;s++){var n=l[s],o=n[0],u=n[1];e.push({name:o,value:(0,redoc_lib_1.isArrayOfObjects)(null===(a=k.query)||void 0===a?void 0:a[o])&&JSON.stringify((0,redoc_lib_1.deleteEmptyArrayItem)(null===(r=k.query)||void 0===r?void 0:r[o]))||String((null===(i=k.query)||void 0===i?void 0:i[o])||u)})}return e}),[]).concat(A),U=null===(p=e.activeServer)||void 0===p?void 0:p.url.replace(/\/$/,""),j=e.path.replace(/^\//,""),V=U.split("#")[0]+"/"+j,I=e.parameters.filter((function(e){return"path"===e.in})).reduce((function(e,t){var a,r=t.in,i=t.name;return e[i]=(null===(a=k.path)||void 0===a?void 0:a[i])||T[i]||(0,utils_1.getParameterValue)(r,i),e}),{}),J=null===(d=null==P?void 0:P.examples)||void 0===d?void 0:d[_],Y=(null==P?void 0:P.examples)||{},F=Object.values(Y)[0],B=k.body||(null==J?void 0:J.value)||(null==F?void 0:F.value)||(null==P?void 0:P.schema)&&Sampler.sample(null==P?void 0:P.schema.rawSchema,R,f),K=null==P?void 0:P.name.toLowerCase(),Q=[];switch((0,utils_2.normalizeMimeType)(K)){case types_1.MediaTypes.JSON:case types_1.MediaTypes.XML:M=JSON.stringify(getDataRequest(B,C));break;case types_1.MediaTypes.URL_ENCODED:case types_1.MediaTypes.MULTIPART:M=(0,query_string_1.stringify)(getDataRequest(B,C)),Q=objectToHarParams(getDataRequest(B,C));break;default:M=String(B||"")}var G=M?{mimeType:(null==P?void 0:P.name)||types_1.MediaTypes.OCTET_STREAM,text:M,params:Q}:void 0,X=e.responses.map((function(e){return e.code}));return{method:e.httpVerb,url:V,httpVersion:"HTTP/1.1",cookies:z,headers:H,queryString:L,postData:G,headersSize:-1,bodySize:-1,securityOAuth2ExtraCalls:w,basicAuth:x,pathParameters:I,serverVariables:e.activeServer.variables,allResponseCodes:X}}var defaultOptions={withImports:!0,withComments:!1},langToSnippetConfig={curl:{code:"shell",defaultTarget:"curl",defaultOptions:(0,tslib_1.__assign)((0,tslib_1.__assign)({},defaultOptions),{short:!0})},JavaScript:{code:"javascript",defaultTarget:"fetch",defaultOptions:(0,tslib_1.__assign)((0,tslib_1.__assign)({},defaultOptions),{withImports:!1})},"Node.js":{code:"node",defaultTarget:"fetch",defaultOptions:(0,tslib_1.__assign)({},defaultOptions)},Python:{code:"python",defaultTarget:"requests",defaultOptions:(0,tslib_1.__assign)({},defaultOptions)},"Java8+Apache":{code:"java8",defaultTarget:"apachehttp",defaultOptions:(0,tslib_1.__assign)({},defaultOptions)},Java:{code:"java",defaultTarget:"httpclient",defaultOptions:(0,tslib_1.__assign)({},defaultOptions)},"C#":{code:"csharp",defaultTarget:"httpclient",defaultOptions:(0,tslib_1.__assign)({},defaultOptions)},"C#+Newtonsoft":{code:"csharpNewtonsoft",defaultTarget:"httpclient",defaultOptions:(0,tslib_1.__assign)({},defaultOptions)},Go:{code:"go",defaultTarget:"http.DefaultClient",defaultOptions:(0,tslib_1.__assign)({},defaultOptions)},PHP:{code:"php",defaultTarget:"curl",defaultOptions:(0,tslib_1.__assign)({},defaultOptions)},Ruby:{code:"ruby",defaultTarget:"net::http",defaultOptions:(0,tslib_1.__assign)({},defaultOptions)},R:{code:"r",defaultTarget:"httr",defaultOptions:(0,tslib_1.__assign)({},defaultOptions)}};function getCodeSample(e){var t=e.lang,a=e.operation,r=e.exampleName,i=e.pathParams,s=e.properties,l=e.options,n=void 0===l?{}:l;try{var o=mapOperationToHAR(a,{exampleName:r,pathParams:i,properties:s,skipOptionalParameters:n.skipOptionalParameters,withOAuth2Call:n.withOAuth2Call,spec:n.spec,generatedPayloadSamplesMaxDepth:n.generatedPayloadSamplesMaxDepth}),u=new httpsnippet_1.HTTPSnippet(o);return langToSnippetConfig[t]?u.convert(langToSnippetConfig[t].code,langToSnippetConfig[t].defaultTarget,(0,tslib_1.__assign)((0,tslib_1.__assign)({},langToSnippetConfig[t].defaultOptions),n)):"Language is not supported."}catch(e){return console.error(e),"Failed to generate code sample."}}function getSecurityData(e,t){for(var a,r,i,s,l={securityHeaders:[],securityCookies:[],securityQueries:[],securityOAuth2ExtraCalls:[],basicAuth:void 0},n=0,o=(null==e?void 0:e.schemes)||[];n<o.length;n++){var u=o[n],p=(0,utils_1.getSecurityDetails)(u.id);switch(u.type){case"openIdConnect":null===(a=l.securityHeaders)||void 0===a||a.push({name:"Authorization",value:"Bearer <YOUR_TOKEN_HERE>"});break;case"oauth2":var d=p.token?(p.token.token_type||"Bearer")+" "+p.token.access_token:"Bearer <YOUR_TOKEN_HERE>";u.flows.clientCredentials&&t?l.securityOAuth2ExtraCalls.push(getOAuth2ClientCredsCallHar(u.flows.clientCredentials,u.scopes,p)):u.flows.password&&t&&l.securityOAuth2ExtraCalls.push(getOAuth2PasswordCallHar(u.flows.password,u.scopes,p)),null===(r=l.securityHeaders)||void 0===r||r.push({name:"Authorization",value:d});break;case"apiKey":var c=p.raw||"YOUR_API_KEY_HERE";"header"===u.in&&(null===(i=l.securityHeaders)||void 0===i||i.push({name:u.name,value:c})),"cookie"===u.in&&l.securityCookies.push({name:u.name,value:c}),"query"===u.in&&l.securityQueries.push({name:u.name,value:c});break;case"http":"basic"===u.scheme?l.basicAuth={username:p.username||"<"+string_utility_1.default.toSnakeCase((0,Labels_1.l)("tryItAuthBasicUsername"))+">",password:p.password||"<"+string_utility_1.default.toSnakeCase((0,Labels_1.l)("tryItAuthBasicPassword"))+">"}:null===(s=l.securityHeaders)||void 0===s||s.push({name:"Authorization",value:capitalizeFirst(u.scheme||"bearer")+" <YOUR_"+(u.bearerFormat||"TOKEN")+"_HERE>"})}}return l}function getOAuth2PasswordCallHar(e,t,a){return{method:"POST",url:e.tokenUrl,httpVersion:"HTTP/1.1",headers:[{name:"Content-Type",value:types_1.MediaTypes.URL_ENCODED},{name:"Accept",value:types_1.MediaTypes.JSON}],queryString:[],postData:{mimeType:types_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:types_1.MediaTypes.URL_ENCODED},{name:"Accept",value:types_1.MediaTypes.JSON}],queryString:[],postData:{mimeType:types_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){void 0===t&&(t="");for(var a=[],r=0,i=Object.entries(e);r<i.length;r++){var s=i[r],l=s[0],n=s[1],o=t?t+"["+l+"]":l;"object"==typeof n&&null!==n?a.push.apply(a,objectToHarParams(n,o)):a.push({name:o,value:String(n)})}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";Object.defineProperty(exports,"__esModule",{value:!0}),exports.capitalizeFirst=exports.isDefined=exports.getCodeSample=void 0;var tslib_1=require("tslib"),query_string_1=require("query-string"),Sampler=(0,tslib_1.__importStar)(require("openapi-sampler")),deepmerge_1=(0,tslib_1.__importDefault)(require("deepmerge")),mobx_1=require("mobx"),redoc_lib_1=require("../../redoc-lib"),utils_1=require("../../utils"),utils_2=require("../utils"),types_1=require("../../types"),Labels_1=require("../../redoc-lib/src/services/Labels"),httpsnippet_1=require("./httpsnippet"),string_utility_1=(0,tslib_1.__importDefault)(require("./httpsnippet/helpers/string-utility"));function mapOperationToHAR(e,t){var a,r,i,s,n,l,o,u,p,d,c=t.exampleName,_=void 0===c?"":c,m=t.skipOptionalParameters,v=void 0!==m&&m,h=t.withOAuth2Call,y=void 0!==h&&h,f=t.spec,g=t.generatedPayloadSamplesMaxDepth,O=void 0===g?8:g,b=t.pathParams,T=void 0===b?{}:b,S=t.properties,C=void 0===S?{}:S,q=getSecurityData(null===(a=e.security)||void 0===a?void 0:a[0],y),E=q.securityHeaders,A=q.securityCookies,D=q.securityQueries,w=q.securityOAuth2ExtraCalls,x=q.basicAuth,P=null===(i=null===(r=e.requestBody)||void 0===r?void 0:r.content)||void 0===i?void 0:i.active,R={skipNonRequired:v,skipReadOnly:!0,maxSampleDepth:O},k={path:(0,mobx_1.toJS)(null===(s=null==e?void 0:e.requestValues)||void 0===s?void 0:s.path),cookie:(0,mobx_1.toJS)(null===(n=null==e?void 0:e.requestValues)||void 0===n?void 0:n.cookie),header:(0,mobx_1.toJS)(null===(l=null==e?void 0:e.requestValues)||void 0===l?void 0:l.header),query:(0,mobx_1.toJS)(null===(o=null==e?void 0:e.requestValues)||void 0===o?void 0:o.query),body:(0,mobx_1.toJS)(null===(u=null==e?void 0:e.requestValues)||void 0===u?void 0:u.body)},N=!1,H=e.parameters.filter((function(e){return"header"===e.in})).filter((function(e){return!(v&&!e.required)})).map((function(e){var t;return{name:e.name,value:(null===(t=k.header)||void 0===t?void 0:t[e.name])||(0,utils_1.getParameterValue)("header",e.name)||(0,redoc_lib_1.serializeParameterValue)(e,Sampler.sample(e.schema.rawSchema,R,f))}})).map((function(e){return(null==P?void 0:P.name)&&"content-type"===e.name.toLowerCase()&&(N=!0,e.value=P.name),e})).concat(E);!N&&(null==P?void 0:P.name)&&H.unshift({name:"Content-Type",value:null==P?void 0:P.name});var M,z=e.parameters.filter((function(e){return"cookie"===e.in})).filter((function(e){return!(v&&!e.required)})).map((function(e){return(0,query_string_1.parse)((0,redoc_lib_1.serializeParameterValue)(e,Sampler.sample(e.schema.rawSchema,R,f)))})).reduce((function(e,t){for(var a,r=0,i=Object.entries(t);r<i.length;r++){var s=i[r],n=s[0],l=s[1];e.push({name:n,value:String((null===(a=k.cookie)||void 0===a?void 0:a[n])||l)})}return e}),[]).concat(A),L=e.parameters.filter((function(e){return"query"===e.in})).filter((function(e){return!(v&&!e.required)})).map((function(e){return(0,query_string_1.parse)((0,redoc_lib_1.serializeParameterValue)(e,Sampler.sample(e.schema.rawSchema,R,f)))})).reduce((function(e,t){for(var a,r,i,s=0,n=Object.entries(t);s<n.length;s++){var l=n[s],o=l[0],u=l[1];e.push({name:o,value:(0,redoc_lib_1.isArrayOfObjects)(null===(a=k.query)||void 0===a?void 0:a[o])&&JSON.stringify((0,redoc_lib_1.deleteEmptyArrayItem)(null===(r=k.query)||void 0===r?void 0:r[o]))||String((null===(i=k.query)||void 0===i?void 0:i[o])||u)})}return e}),[]).concat(D),U=null===(p=e.activeServer)||void 0===p?void 0:p.url.replace(/\/$/,""),j=e.path.replace(/^\//,""),V=U.split("#")[0]+"/"+j,I=e.parameters.filter((function(e){return"path"===e.in})).reduce((function(e,t){var a,r=t.in,i=t.name;return e[i]=(null===(a=k.path)||void 0===a?void 0:a[i])||T[i]||(0,utils_1.getParameterValue)(r,i),e}),{}),J=null===(d=null==P?void 0:P.examples)||void 0===d?void 0:d[_],Y=(null==P?void 0:P.examples)||{},F=Object.values(Y)[0],B=k.body||(null==J?void 0:J.value)||(null==F?void 0:F.value)||(null==P?void 0:P.schema)&&Sampler.sample(null==P?void 0:P.schema.rawSchema,R,f),K=null==P?void 0:P.name.toLowerCase(),Q=[];switch((0,utils_2.normalizeMimeType)(K)){case types_1.MediaTypes.JSON:case types_1.MediaTypes.XML:M=JSON.stringify(getDataRequest(B,C));break;case types_1.MediaTypes.URL_ENCODED:case types_1.MediaTypes.MULTIPART:M=(0,query_string_1.stringify)(getDataRequest(B,C)),Q=objectToHarParams(getDataRequest(B,C));break;default:M=String(B||"")}var G=M?{mimeType:(null==P?void 0:P.name)||types_1.MediaTypes.OCTET_STREAM,text:M,params:Q}:void 0,X=e.responses.map((function(e){return e.code}));return{method:e.httpVerb,url:V,httpVersion:"HTTP/1.1",cookies:z,headers:H,queryString:L,postData:G,headersSize:-1,bodySize:-1,securityOAuth2ExtraCalls:w,basicAuth:x,pathParameters:I,serverVariables:e.activeServer.variables,allResponseCodes:X}}var defaultOptions={withImports:!0,withComments:!1},langToSnippetConfig={curl:{code:"shell",defaultTarget:"curl",defaultOptions:(0,tslib_1.__assign)((0,tslib_1.__assign)({},defaultOptions),{short:!0})},JavaScript:{code:"javascript",defaultTarget:"fetch",defaultOptions:(0,tslib_1.__assign)((0,tslib_1.__assign)({},defaultOptions),{withImports:!1})},"Node.js":{code:"node",defaultTarget:"fetch",defaultOptions:(0,tslib_1.__assign)({},defaultOptions)},Python:{code:"python",defaultTarget:"requests",defaultOptions:(0,tslib_1.__assign)({},defaultOptions)},"Java8+Apache":{code:"java8",defaultTarget:"apachehttp",defaultOptions:(0,tslib_1.__assign)({},defaultOptions)},Java:{code:"java",defaultTarget:"httpclient",defaultOptions:(0,tslib_1.__assign)({},defaultOptions)},"C#":{code:"csharp",defaultTarget:"httpclient",defaultOptions:(0,tslib_1.__assign)({},defaultOptions)},"C#+Newtonsoft":{code:"csharpNewtonsoft",defaultTarget:"httpclient",defaultOptions:(0,tslib_1.__assign)({},defaultOptions)},Go:{code:"go",defaultTarget:"http.DefaultClient",defaultOptions:(0,tslib_1.__assign)({},defaultOptions)},PHP:{code:"php",defaultTarget:"curl",defaultOptions:(0,tslib_1.__assign)({},defaultOptions)},Ruby:{code:"ruby",defaultTarget:"net::http",defaultOptions:(0,tslib_1.__assign)({},defaultOptions)},R:{code:"r",defaultTarget:"httr",defaultOptions:(0,tslib_1.__assign)({},defaultOptions)}};function getCodeSample(e){var t=e.lang,a=e.operation,r=e.exampleName,i=e.pathParams,s=e.properties,n=e.options,l=void 0===n?{}:n;try{var o=mapOperationToHAR(a,{exampleName:r,pathParams:i,properties:s,skipOptionalParameters:l.skipOptionalParameters,withOAuth2Call:l.withOAuth2Call,spec:l.spec,generatedPayloadSamplesMaxDepth:l.generatedPayloadSamplesMaxDepth}),u=new httpsnippet_1.HTTPSnippet(o);return langToSnippetConfig[t]?u.convert(langToSnippetConfig[t].code,langToSnippetConfig[t].defaultTarget,(0,tslib_1.__assign)((0,tslib_1.__assign)({},langToSnippetConfig[t].defaultOptions),l)):"Language is not supported."}catch(e){return console.error(e),"Failed to generate code sample."}}function getSecurityData(e,t){for(var a,r,i,s,n={securityHeaders:[],securityCookies:[],securityQueries:[],securityOAuth2ExtraCalls:[],basicAuth:void 0},l=0,o=(null==e?void 0:e.schemes)||[];l<o.length;l++){var u=o[l],p=(0,utils_1.getSecurityDetails)(u.id);switch(u.type){case"openIdConnect":null===(a=n.securityHeaders)||void 0===a||a.push({name:"Authorization",value:"Bearer <YOUR_TOKEN_HERE>"});break;case"oauth2":var d=p.token?(p.token.token_type||"Bearer")+" "+p.token.access_token:"Bearer <YOUR_TOKEN_HERE>";u.flows.clientCredentials&&t?n.securityOAuth2ExtraCalls.push(getOAuth2ClientCredsCallHar(u.flows.clientCredentials,u.scopes,p)):u.flows.password&&t&&n.securityOAuth2ExtraCalls.push(getOAuth2PasswordCallHar(u.flows.password,u.scopes,p)),null===(r=n.securityHeaders)||void 0===r||r.push({name:"Authorization",value:d});break;case"apiKey":var c=p.raw||"YOUR_API_KEY_HERE";"header"===u.in&&(null===(i=n.securityHeaders)||void 0===i||i.push({name:u.name,value:c})),"cookie"===u.in&&n.securityCookies.push({name:u.name,value:c}),"query"===u.in&&n.securityQueries.push({name:u.name,value:c});break;case"http":"basic"===u.scheme?n.basicAuth={username:p.username||"<"+string_utility_1.default.toSnakeCase((0,Labels_1.l)("tryItAuthBasicUsername"))+">",password:p.password||"<"+string_utility_1.default.toSnakeCase((0,Labels_1.l)("tryItAuthBasicPassword"))+">"}:null===(s=n.securityHeaders)||void 0===s||s.push({name:"Authorization",value:capitalizeFirst(u.scheme||"bearer")+" <YOUR_"+(u.bearerFormat||"TOKEN")+"_HERE>"})}}return n}function getOAuth2PasswordCallHar(e,t,a){return{method:"POST",url:e.tokenUrl,httpVersion:"HTTP/1.1",headers:[{name:"Content-Type",value:types_1.MediaTypes.URL_ENCODED},{name:"Accept",value:types_1.MediaTypes.JSON}],queryString:[],postData:{mimeType:types_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:types_1.MediaTypes.URL_ENCODED},{name:"Accept",value:types_1.MediaTypes.JSON}],queryString:[],postData:{mimeType:types_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){void 0===t&&(t="");var a=[];if(Array.isArray(e))return e.map((function(e){return{name:""+t,value:String(e)}}));for(var r=0,i=Object.entries(e);r<i.length;r++){var s=i[r],n=s[0],l=s[1],o=t?t+"["+n+"]":n;"object"==typeof l&&null!==l?a.push.apply(a,objectToHarParams(l,o)):a.push({name:o,value:String(l)})}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,3 +1,7 @@
1
1
  /// <reference types="react" />
2
2
  import type { TabsProps } from './CollapsingTabsBase';
3
- export declare const CollapsingTabs: ({ children, ...props }: TabsProps) => JSX.Element;
3
+ declare type CollapsingTabsProps = TabsProps & {
4
+ onChange?: (key: string) => void;
5
+ };
6
+ export declare const CollapsingTabs: ({ children, ...props }: CollapsingTabsProps) => JSX.Element;
7
+ export {};
@@ -1,2 +1,2 @@
1
- import{__rest}from"tslib";import{jsx as _jsx}from"react/jsx-runtime";import{useCallback,useEffect,useState}from"react";import{observer}from"mobx-react";import{CollapsingTabsBase}from"./CollapsingTabsBase";function getActiveIndexFromOperation(e,t,r){var a;if(!t)return-1;if("number"==typeof r&&r>0){return hasActiveExampleName(null===(a=e[r])||void 0===a?void 0:a.content,t)?r:getActiveIndexFromOperation(e,t)}return e.findIndex((({content:e})=>hasActiveExampleName(e,t)))}function hasActiveExampleName(e,t){return!!(null==e?void 0:e.mediaTypes.find((e=>Object.keys(e.examples||[]).includes(t||""))))}export const CollapsingTabs=observer((e=>{var{children:t}=e,r=__rest(e,["children"]);const[a,n]=useState(0),{operation:o,operation:{activeExampleName:s}}=r;useEffect((()=>{const e=getActiveIndexFromOperation(o.responses,s,a);e>-1&&n(e)}),[s]);const i=useCallback((e=>{a!==e&&n(e)}),[a]);return _jsx(CollapsingTabsBase,Object.assign({},r,{activeIndex:a,onChange:i},{children:t}),void 0)}));
1
+ import{__rest}from"tslib";import{jsx as _jsx}from"react/jsx-runtime";import{useCallback,useEffect,useState}from"react";import{observer}from"mobx-react";import{CollapsingTabsBase}from"./CollapsingTabsBase";function getActiveIndexFromOperation(e,t,n){var a;if(!t)return-1;if("number"==typeof n&&n>0){return hasActiveExampleName(null===(a=e[n])||void 0===a?void 0:a.content,t)?n:getActiveIndexFromOperation(e,t)}return e.findIndex((({content:e})=>hasActiveExampleName(e,t)))}function hasActiveExampleName(e,t){return!!(null==e?void 0:e.mediaTypes.find((e=>Object.keys(e.examples||[]).includes(t||""))))}export const CollapsingTabs=observer((e=>{var{children:t}=e,n=__rest(e,["children"]);const[a,r]=useState(0),{operation:o,operation:{activeExampleName:s},onChange:i}=n;useEffect((()=>{const e=getActiveIndexFromOperation(o.responses,s,a);e>-1&&r(e)}),[s]);const c=useCallback((e=>{a!==e&&r(e),i&&i(e)}),[a,i]);return _jsx(CollapsingTabsBase,Object.assign({},n,{activeIndex:a,onChange:c},{children:t}),void 0)}));
2
2
  //# sourceMappingURL=CollapsingTabs.js.map
@@ -1,2 +1,2 @@
1
- import{jsx as _jsx}from"react/jsx-runtime";import{useContext,useCallback}from"react";import{CodePanel}from"../../../../components/Panel";import{CollapsingTabs,TabPanel}from"../../../../components/Tabs";import{OptionsContext}from"../OptionsProvider";import{PayloadSamples}from"../PayloadSamples";import{l}from"../../services/Labels";import{createCodeSampleCopyEvent,createPanelToggleEvent}from"../../../../events";export const ResponseSamples=({operation:e})=>{const{events:o,collapseResponseSamplePanel:n}=useContext(OptionsContext),a=e.responses.filter((e=>{var o,n;return null!==(n=null===(o=e.content)||void 0===o?void 0:o.hasSample)&&void 0!==n&&n})),s=useCallback((()=>{var n;const a=createCodeSampleCopyEvent({operation:e,type:"response"});null===(n=null==o?void 0:o.codeSamplesCopy)||void 0===n||n.call(o,a)}),[e,o]);if(!a.length)return null;const t=a.map((({code:e})=>({key:e,title:e})));return _jsx(CodePanel,Object.assign({dataHeaderTestId:"response-samples",header:l("responseSamples"),onToggle:n=>{var a;const l=createPanelToggleEvent({operation:e,isExpanded:n,panelType:"response-samples"});null===(a=null==o?void 0:o.panelToggle)||void 0===a||a.call(o,l)},expanded:!n},{children:_jsx(CollapsingTabs,Object.assign({tabs:t,operation:e},{children:a.map((e=>_jsx(TabPanel,Object.assign({value:e.code},{children:_jsx("div",{children:_jsx(PayloadSamples,{content:e.content,onCopyClick:s},void 0)},void 0)}),e.code)))}),void 0)}),void 0)};
1
+ import{jsx as _jsx}from"react/jsx-runtime";import{useContext,useCallback}from"react";import{CodePanel}from"../../../../components/Panel";import{CollapsingTabs,TabPanel}from"../../../../components/Tabs";import{OptionsContext}from"../OptionsProvider";import{PayloadSamples}from"../PayloadSamples";import{l}from"../../services/Labels";import{createCodeSampleCopyEvent,createPanelToggleEvent}from"../../../../events";export const ResponseSamples=({operation:e})=>{const{events:o,collapseResponseSamplePanel:n}=useContext(OptionsContext),a=e.responses.filter((e=>{var o,n;return null!==(n=null===(o=e.content)||void 0===o?void 0:o.hasSample)&&void 0!==n&&n})),t=useCallback((()=>{var n;const a=createCodeSampleCopyEvent({operation:e,type:"response"});null===(n=null==o?void 0:o.codeSamplesCopy)||void 0===n||n.call(o,a)}),[e,o]),s=useCallback((e=>{var o,n,l;(null===(l=null===(n=null===(o=a[e])||void 0===o?void 0:o.content)||void 0===n?void 0:n.active)||void 0===l?void 0:l.examples)&&"object"==typeof a[e].content.active.examples&&a[e].content.activateExampleName(Object.keys(a[e].content.active.examples)[0])}),[a]);if(!a.length)return null;const p=a.map((({code:e})=>({key:e,title:e})));return _jsx(CodePanel,Object.assign({dataHeaderTestId:"response-samples",header:l("responseSamples"),onToggle:n=>{var a;const l=createPanelToggleEvent({operation:e,isExpanded:n,panelType:"response-samples"});null===(a=null==o?void 0:o.panelToggle)||void 0===a||a.call(o,l)},expanded:!n},{children:_jsx(CollapsingTabs,Object.assign({tabs:p,operation:e,onChange:s},{children:a.map((e=>_jsx(TabPanel,Object.assign({value:e.code},{children:_jsx("div",{children:_jsx(PayloadSamples,{content:e.content,onCopyClick:t},void 0)},void 0)}),e.code)))}),void 0)}),void 0)};
2
2
  //# sourceMappingURL=ResponseSamples.js.map
@@ -1,2 +1,2 @@
1
- import{parse as parseQueryString,stringify as stringifyQueryString}from"query-string";import*as Sampler from"openapi-sampler";import merge from"deepmerge";import{toJS}from"mobx";import{deleteEmptyArrayItem,isArrayOfObjects,serializeParameterValue}from"../../redoc-lib";import{getSecurityDetails,getParameterValue}from"../../utils";import{normalizeMimeType,arrayMergeStrategy}from"../utils";import{MediaTypes}from"../../types";import{l}from"../../redoc-lib/src/services/Labels";import{HTTPSnippet}from"./httpsnippet";import StringUtility from"./httpsnippet/helpers/string-utility";function mapOperationToHAR(e,{exampleName:t="",skipOptionalParameters:a=!1,withOAuth2Call:r=!1,spec:i,generatedPayloadSamplesMaxDepth:s=8,pathParams:o={},properties:n={}}){var l,u,p,c,d,m,h,y,v,f;const{securityHeaders:g,securityCookies:O,securityQueries:S,securityOAuth2ExtraCalls:T,basicAuth:C}=getSecurityData(null===(l=e.security)||void 0===l?void 0:l[0],r),b=null===(p=null===(u=e.requestBody)||void 0===u?void 0:u.content)||void 0===p?void 0:p.active,E={skipNonRequired:a,skipReadOnly:!0,maxSampleDepth:s},A={path:toJS(null===(c=null==e?void 0:e.requestValues)||void 0===c?void 0:c.path),cookie:toJS(null===(d=null==e?void 0:e.requestValues)||void 0===d?void 0:d.cookie),header:toJS(null===(m=null==e?void 0:e.requestValues)||void 0===m?void 0:m.header),query:toJS(null===(h=null==e?void 0:e.requestValues)||void 0===h?void 0:h.query),body:toJS(null===(y=null==e?void 0:e.requestValues)||void 0===y?void 0:y.body)};let _=!1;const P=e.parameters.filter((e=>"header"===e.in)).filter((e=>!(a&&!e.required))).map((e=>{var t;return{name:e.name,value:(null===(t=A.header)||void 0===t?void 0:t[e.name])||getParameterValue("header",e.name)||serializeParameterValue(e,Sampler.sample(e.schema.rawSchema,E,i))}})).map((e=>((null==b?void 0:b.name)&&"content-type"===e.name.toLowerCase()&&(_=!0,e.value=b.name),e))).concat(g);!_&&(null==b?void 0:b.name)&&P.unshift({name:"Content-Type",value:null==b?void 0:b.name});const j=e.parameters.filter((e=>"cookie"===e.in)).filter((e=>!(a&&!e.required))).map((e=>parseQueryString(serializeParameterValue(e,Sampler.sample(e.schema.rawSchema,E,i))))).reduce(((e,t)=>{var a;for(const[r,i]of Object.entries(t))e.push({name:r,value:String((null===(a=A.cookie)||void 0===a?void 0:a[r])||i)});return e}),[]).concat(O),w=e.parameters.filter((e=>"query"===e.in)).filter((e=>!(a&&!e.required))).map((e=>parseQueryString(serializeParameterValue(e,Sampler.sample(e.schema.rawSchema,E,i))))).reduce(((e,t)=>{var a,r,i;for(const[s,o]of Object.entries(t))e.push({name:s,value:isArrayOfObjects(null===(a=A.query)||void 0===a?void 0:a[s])&&JSON.stringify(deleteEmptyArrayItem(null===(r=A.query)||void 0===r?void 0:r[s]))||String((null===(i=A.query)||void 0===i?void 0:i[s])||o)});return e}),[]).concat(S),R=null===(v=e.activeServer)||void 0===v?void 0:v.url.replace(/\/$/,""),D=e.path.replace(/^\//,""),[k]=R.split("#"),q=`${k}/${D}`,H=e.parameters.filter((e=>"path"===e.in)).reduce(((e,t)=>{var a;const{in:r,name:i}=t;return e[i]=(null===(a=A.path)||void 0===a?void 0:a[i])||o[i]||getParameterValue(r,i),e}),{}),M=null===(f=null==b?void 0:b.examples)||void 0===f?void 0:f[t],N=(null==b?void 0:b.examples)||{},[x]=Object.values(N),U=A.body||(null==M?void 0:M.value)||(null==x?void 0:x.value)||(null==b?void 0:b.schema)&&Sampler.sample(null==b?void 0:b.schema.rawSchema,E,i),z=null==b?void 0:b.name.toLowerCase();let V,I=[];switch(normalizeMimeType(z)){case MediaTypes.JSON:case MediaTypes.XML:V=JSON.stringify(getDataRequest(U,n));break;case MediaTypes.URL_ENCODED:case MediaTypes.MULTIPART:V=stringifyQueryString(getDataRequest(U,n)),I=objectToHarParams(getDataRequest(U,n));break;default:V=String(U||"")}const J=V?{mimeType:(null==b?void 0:b.name)||MediaTypes.OCTET_STREAM,text:V,params:I}:void 0,L=e.responses.map((e=>e.code));return{method:e.httpVerb,url:q,httpVersion:"HTTP/1.1",cookies:j,headers:P,queryString:w,postData:J,headersSize:-1,bodySize:-1,securityOAuth2ExtraCalls:T,basicAuth:C,pathParameters:H,serverVariables:e.activeServer.variables,allResponseCodes:L}}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:i,options:s={}}){try{const{skipOptionalParameters:o,withOAuth2Call:n,spec:l,generatedPayloadSamplesMaxDepth:u}=s,p=mapOperationToHAR(t,{exampleName:a,pathParams:r,properties:i,skipOptionalParameters:o,withOAuth2Call:n,spec:l,generatedPayloadSamplesMaxDepth:u}),c=new HTTPSnippet(p);return langToSnippetConfig[e]?c.convert(langToSnippetConfig[e].code,langToSnippetConfig[e].defaultTarget,Object.assign(Object.assign({},langToSnippetConfig[e].defaultOptions),s)):"Language is not supported."}catch(e){return console.error(e),"Failed to generate code sample."}}function getSecurityData(e,t){var a,r,i,s;const o={securityHeaders:[],securityCookies:[],securityQueries:[],securityOAuth2ExtraCalls:[],basicAuth:void 0};for(const n of(null==e?void 0:e.schemes)||[]){const e=getSecurityDetails(n.id);switch(n.type){case"openIdConnect":null===(a=o.securityHeaders)||void 0===a||a.push({name:"Authorization",value:"Bearer <YOUR_TOKEN_HERE>"});break;case"oauth2":{const a=e.token?`${e.token.token_type||"Bearer"} ${e.token.access_token}`:"Bearer <YOUR_TOKEN_HERE>";n.flows.clientCredentials&&t?o.securityOAuth2ExtraCalls.push(getOAuth2ClientCredsCallHar(n.flows.clientCredentials,n.scopes,e)):n.flows.password&&t&&o.securityOAuth2ExtraCalls.push(getOAuth2PasswordCallHar(n.flows.password,n.scopes,e)),null===(r=o.securityHeaders)||void 0===r||r.push({name:"Authorization",value:a});break}case"apiKey":{const t=e.raw||"YOUR_API_KEY_HERE";"header"===n.in&&(null===(i=o.securityHeaders)||void 0===i||i.push({name:n.name,value:t})),"cookie"===n.in&&o.securityCookies.push({name:n.name,value:t}),"query"===n.in&&o.securityQueries.push({name:n.name,value:t});break}case"http":"basic"===n.scheme?o.basicAuth={username:e.username||`<${StringUtility.toSnakeCase(l("tryItAuthBasicUsername"))}>`,password:e.password||`<${StringUtility.toSnakeCase(l("tryItAuthBasicPassword"))}>`}:null===(s=o.securityHeaders)||void 0===s||s.push({name:"Authorization",value:`${capitalizeFirst(n.scheme||"bearer")} <YOUR_${n.bearerFormat||"TOKEN"}_HERE>`})}}return o}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,i]of Object.entries(e)){const e=t?`${t}[${r}]`:r;"object"==typeof i&&null!==i?a.push(...objectToHarParams(i,e)):a.push({name:e,value:String(i)})}return a}export function isDefined(e){return void 0!==e}export function capitalizeFirst(e){return e.charAt(0).toUpperCase()+e.slice(1)}
1
+ import{parse as parseQueryString,stringify as stringifyQueryString}from"query-string";import*as Sampler from"openapi-sampler";import merge from"deepmerge";import{toJS}from"mobx";import{deleteEmptyArrayItem,isArrayOfObjects,serializeParameterValue}from"../../redoc-lib";import{getSecurityDetails,getParameterValue}from"../../utils";import{normalizeMimeType,arrayMergeStrategy}from"../utils";import{MediaTypes}from"../../types";import{l}from"../../redoc-lib/src/services/Labels";import{HTTPSnippet}from"./httpsnippet";import StringUtility from"./httpsnippet/helpers/string-utility";function mapOperationToHAR(e,{exampleName:t="",skipOptionalParameters:a=!1,withOAuth2Call:r=!1,spec:i,generatedPayloadSamplesMaxDepth:s=8,pathParams:n={},properties:o={}}){var l,u,p,c,d,m,h,y,v,f;const{securityHeaders:g,securityCookies:O,securityQueries:S,securityOAuth2ExtraCalls:T,basicAuth:C}=getSecurityData(null===(l=e.security)||void 0===l?void 0:l[0],r),b=null===(p=null===(u=e.requestBody)||void 0===u?void 0:u.content)||void 0===p?void 0:p.active,E={skipNonRequired:a,skipReadOnly:!0,maxSampleDepth:s},A={path:toJS(null===(c=null==e?void 0:e.requestValues)||void 0===c?void 0:c.path),cookie:toJS(null===(d=null==e?void 0:e.requestValues)||void 0===d?void 0:d.cookie),header:toJS(null===(m=null==e?void 0:e.requestValues)||void 0===m?void 0:m.header),query:toJS(null===(h=null==e?void 0:e.requestValues)||void 0===h?void 0:h.query),body:toJS(null===(y=null==e?void 0:e.requestValues)||void 0===y?void 0:y.body)};let _=!1;const P=e.parameters.filter((e=>"header"===e.in)).filter((e=>!(a&&!e.required))).map((e=>{var t;return{name:e.name,value:(null===(t=A.header)||void 0===t?void 0:t[e.name])||getParameterValue("header",e.name)||serializeParameterValue(e,Sampler.sample(e.schema.rawSchema,E,i))}})).map((e=>((null==b?void 0:b.name)&&"content-type"===e.name.toLowerCase()&&(_=!0,e.value=b.name),e))).concat(g);!_&&(null==b?void 0:b.name)&&P.unshift({name:"Content-Type",value:null==b?void 0:b.name});const j=e.parameters.filter((e=>"cookie"===e.in)).filter((e=>!(a&&!e.required))).map((e=>parseQueryString(serializeParameterValue(e,Sampler.sample(e.schema.rawSchema,E,i))))).reduce(((e,t)=>{var a;for(const[r,i]of Object.entries(t))e.push({name:r,value:String((null===(a=A.cookie)||void 0===a?void 0:a[r])||i)});return e}),[]).concat(O),w=e.parameters.filter((e=>"query"===e.in)).filter((e=>!(a&&!e.required))).map((e=>parseQueryString(serializeParameterValue(e,Sampler.sample(e.schema.rawSchema,E,i))))).reduce(((e,t)=>{var a,r,i;for(const[s,n]of Object.entries(t))e.push({name:s,value:isArrayOfObjects(null===(a=A.query)||void 0===a?void 0:a[s])&&JSON.stringify(deleteEmptyArrayItem(null===(r=A.query)||void 0===r?void 0:r[s]))||String((null===(i=A.query)||void 0===i?void 0:i[s])||n)});return e}),[]).concat(S),R=null===(v=e.activeServer)||void 0===v?void 0:v.url.replace(/\/$/,""),D=e.path.replace(/^\//,""),[k]=R.split("#"),q=`${k}/${D}`,H=e.parameters.filter((e=>"path"===e.in)).reduce(((e,t)=>{var a;const{in:r,name:i}=t;return e[i]=(null===(a=A.path)||void 0===a?void 0:a[i])||n[i]||getParameterValue(r,i),e}),{}),M=null===(f=null==b?void 0:b.examples)||void 0===f?void 0:f[t],N=(null==b?void 0:b.examples)||{},[x]=Object.values(N),U=A.body||(null==M?void 0:M.value)||(null==x?void 0:x.value)||(null==b?void 0:b.schema)&&Sampler.sample(null==b?void 0:b.schema.rawSchema,E,i),z=null==b?void 0:b.name.toLowerCase();let V,I=[];switch(normalizeMimeType(z)){case MediaTypes.JSON:case MediaTypes.XML:V=JSON.stringify(getDataRequest(U,o));break;case MediaTypes.URL_ENCODED:case MediaTypes.MULTIPART:V=stringifyQueryString(getDataRequest(U,o)),I=objectToHarParams(getDataRequest(U,o));break;default:V=String(U||"")}const J=V?{mimeType:(null==b?void 0:b.name)||MediaTypes.OCTET_STREAM,text:V,params:I}:void 0,L=e.responses.map((e=>e.code));return{method:e.httpVerb,url:q,httpVersion:"HTTP/1.1",cookies:j,headers:P,queryString:w,postData:J,headersSize:-1,bodySize:-1,securityOAuth2ExtraCalls:T,basicAuth:C,pathParameters:H,serverVariables:e.activeServer.variables,allResponseCodes:L}}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:i,options:s={}}){try{const{skipOptionalParameters:n,withOAuth2Call:o,spec:l,generatedPayloadSamplesMaxDepth:u}=s,p=mapOperationToHAR(t,{exampleName:a,pathParams:r,properties:i,skipOptionalParameters:n,withOAuth2Call:o,spec:l,generatedPayloadSamplesMaxDepth:u}),c=new HTTPSnippet(p);return langToSnippetConfig[e]?c.convert(langToSnippetConfig[e].code,langToSnippetConfig[e].defaultTarget,Object.assign(Object.assign({},langToSnippetConfig[e].defaultOptions),s)):"Language is not supported."}catch(e){return console.error(e),"Failed to generate code sample."}}function getSecurityData(e,t){var a,r,i,s;const n={securityHeaders:[],securityCookies:[],securityQueries:[],securityOAuth2ExtraCalls:[],basicAuth:void 0};for(const o of(null==e?void 0:e.schemes)||[]){const e=getSecurityDetails(o.id);switch(o.type){case"openIdConnect":null===(a=n.securityHeaders)||void 0===a||a.push({name:"Authorization",value:"Bearer <YOUR_TOKEN_HERE>"});break;case"oauth2":{const a=e.token?`${e.token.token_type||"Bearer"} ${e.token.access_token}`:"Bearer <YOUR_TOKEN_HERE>";o.flows.clientCredentials&&t?n.securityOAuth2ExtraCalls.push(getOAuth2ClientCredsCallHar(o.flows.clientCredentials,o.scopes,e)):o.flows.password&&t&&n.securityOAuth2ExtraCalls.push(getOAuth2PasswordCallHar(o.flows.password,o.scopes,e)),null===(r=n.securityHeaders)||void 0===r||r.push({name:"Authorization",value:a});break}case"apiKey":{const t=e.raw||"YOUR_API_KEY_HERE";"header"===o.in&&(null===(i=n.securityHeaders)||void 0===i||i.push({name:o.name,value:t})),"cookie"===o.in&&n.securityCookies.push({name:o.name,value:t}),"query"===o.in&&n.securityQueries.push({name:o.name,value:t});break}case"http":"basic"===o.scheme?n.basicAuth={username:e.username||`<${StringUtility.toSnakeCase(l("tryItAuthBasicUsername"))}>`,password:e.password||`<${StringUtility.toSnakeCase(l("tryItAuthBasicPassword"))}>`}:null===(s=n.securityHeaders)||void 0===s||s.push({name:"Authorization",value:`${capitalizeFirst(o.scheme||"bearer")} <YOUR_${o.bearerFormat||"TOKEN"}_HERE>`})}}return n}function getOAuth2PasswordCallHar(e,t,a){return{method:"POST",url:e.tokenUrl,httpVersion:"HTTP/1.1",headers:[{name:"Content-Type",value:MediaTypes.URL_ENCODED},{name:"Accept",value:MediaTypes.JSON}],queryString:[],postData:{mimeType:MediaTypes.URL_ENCODED,text:"",params:[{name:"grant_type",value:"password"},{name:"client_id",value:a.client_id||"YOUR_CLIENT_ID"},{name:"client_secret",value:a.client_secret||"YOUR_CLIENT_SECRET"},{name:"username",value:a.username||"<username>"},{name:"password",value:a.password||"<password>"},t.length?{name:"scope",value:t.join(" ")}:void 0].filter(isDefined)},cookies:[],headersSize:-1,bodySize:-1,securityOAuth2ExtraCalls:[]}}function getOAuth2ClientCredsCallHar(e,t,a){return{method:"POST",url:e.tokenUrl,httpVersion:"HTTP/1.1",headers:[{name:"Content-Type",value:MediaTypes.URL_ENCODED},{name:"Accept",value:MediaTypes.JSON}],queryString:[],postData:{mimeType:MediaTypes.URL_ENCODED,text:"",params:[{name:"grant_type",value:"client_credentials"},{name:"client_id",value:a.client_id||"YOUR_CLIENT_ID"},{name:"client_secret",value:a.client_secret||"YOUR_CLIENT_SECRET"},t.length?{name:"scope",value:t.join(" ")}:void 0].filter(isDefined)},cookies:[],headersSize:-1,bodySize:-1,securityOAuth2ExtraCalls:[]}}function getDataRequest(e,t){if(e){if("object"==typeof e)return merge(e,t,{arrayMerge:arrayMergeStrategy});try{return merge(JSON.parse(e),t,{arrayMerge:arrayMergeStrategy})}catch(e){return!1}}return!1}function objectToHarParams(e,t=""){const a=[];if(Array.isArray(e))return e.map((e=>({name:`${t}`,value:String(e)})));for(const[r,i]of Object.entries(e)){const e=t?`${t}[${r}]`:r;"object"==typeof i&&null!==i?a.push(...objectToHarParams(i,e)):a.push({name:e,value:String(i)})}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,3 +1,7 @@
1
1
  /// <reference types="react" />
2
2
  import type { TabsProps } from './CollapsingTabsBase';
3
- export declare const CollapsingTabs: ({ children, ...props }: TabsProps) => JSX.Element;
3
+ declare type CollapsingTabsProps = TabsProps & {
4
+ onChange?: (key: string) => void;
5
+ };
6
+ export declare const CollapsingTabs: ({ children, ...props }: CollapsingTabsProps) => JSX.Element;
7
+ export {};
@@ -1,2 +1,2 @@
1
- import{__rest}from"tslib";import{jsx as _jsx}from"react/jsx-runtime";import{useCallback,useEffect,useState}from"react";import{observer}from"mobx-react";import{CollapsingTabsBase}from"./CollapsingTabsBase";function getActiveIndexFromOperation(e,t,r){var a;if(!t)return-1;if("number"==typeof r&&r>0){return hasActiveExampleName(null===(a=e[r])||void 0===a?void 0:a.content,t)?r:getActiveIndexFromOperation(e,t)}return e.findIndex((({content:e})=>hasActiveExampleName(e,t)))}function hasActiveExampleName(e,t){return!!(null==e?void 0:e.mediaTypes.find((e=>Object.keys(e.examples||[]).includes(t||""))))}export const CollapsingTabs=observer((e=>{var{children:t}=e,r=__rest(e,["children"]);const[a,n]=useState(0),{operation:o,operation:{activeExampleName:s}}=r;useEffect((()=>{const e=getActiveIndexFromOperation(o.responses,s,a);e>-1&&n(e)}),[s]);const i=useCallback((e=>{a!==e&&n(e)}),[a]);return _jsx(CollapsingTabsBase,Object.assign({},r,{activeIndex:a,onChange:i},{children:t}),void 0)}));
1
+ import{__rest}from"tslib";import{jsx as _jsx}from"react/jsx-runtime";import{useCallback,useEffect,useState}from"react";import{observer}from"mobx-react";import{CollapsingTabsBase}from"./CollapsingTabsBase";function getActiveIndexFromOperation(e,t,n){var a;if(!t)return-1;if("number"==typeof n&&n>0){return hasActiveExampleName(null===(a=e[n])||void 0===a?void 0:a.content,t)?n:getActiveIndexFromOperation(e,t)}return e.findIndex((({content:e})=>hasActiveExampleName(e,t)))}function hasActiveExampleName(e,t){return!!(null==e?void 0:e.mediaTypes.find((e=>Object.keys(e.examples||[]).includes(t||""))))}export const CollapsingTabs=observer((e=>{var{children:t}=e,n=__rest(e,["children"]);const[a,r]=useState(0),{operation:o,operation:{activeExampleName:s},onChange:i}=n;useEffect((()=>{const e=getActiveIndexFromOperation(o.responses,s,a);e>-1&&r(e)}),[s]);const c=useCallback((e=>{a!==e&&r(e),i&&i(e)}),[a,i]);return _jsx(CollapsingTabsBase,Object.assign({},n,{activeIndex:a,onChange:c},{children:t}),void 0)}));
2
2
  //# sourceMappingURL=CollapsingTabs.js.map
@@ -1,2 +1,2 @@
1
- import{jsx as _jsx}from"react/jsx-runtime";import{useContext,useCallback}from"react";import{CodePanel}from"../../../../components/Panel";import{CollapsingTabs,TabPanel}from"../../../../components/Tabs";import{OptionsContext}from"../OptionsProvider";import{PayloadSamples}from"../PayloadSamples";import{l}from"../../services/Labels";import{createCodeSampleCopyEvent,createPanelToggleEvent}from"../../../../events";export const ResponseSamples=({operation:e})=>{const{events:o,collapseResponseSamplePanel:n}=useContext(OptionsContext),a=e.responses.filter((e=>{var o,n;return null!==(n=null===(o=e.content)||void 0===o?void 0:o.hasSample)&&void 0!==n&&n})),s=useCallback((()=>{var n;const a=createCodeSampleCopyEvent({operation:e,type:"response"});null===(n=null==o?void 0:o.codeSamplesCopy)||void 0===n||n.call(o,a)}),[e,o]);if(!a.length)return null;const t=a.map((({code:e})=>({key:e,title:e})));return _jsx(CodePanel,Object.assign({dataHeaderTestId:"response-samples",header:l("responseSamples"),onToggle:n=>{var a;const l=createPanelToggleEvent({operation:e,isExpanded:n,panelType:"response-samples"});null===(a=null==o?void 0:o.panelToggle)||void 0===a||a.call(o,l)},expanded:!n},{children:_jsx(CollapsingTabs,Object.assign({tabs:t,operation:e},{children:a.map((e=>_jsx(TabPanel,Object.assign({value:e.code},{children:_jsx("div",{children:_jsx(PayloadSamples,{content:e.content,onCopyClick:s},void 0)},void 0)}),e.code)))}),void 0)}),void 0)};
1
+ import{jsx as _jsx}from"react/jsx-runtime";import{useContext,useCallback}from"react";import{CodePanel}from"../../../../components/Panel";import{CollapsingTabs,TabPanel}from"../../../../components/Tabs";import{OptionsContext}from"../OptionsProvider";import{PayloadSamples}from"../PayloadSamples";import{l}from"../../services/Labels";import{createCodeSampleCopyEvent,createPanelToggleEvent}from"../../../../events";export const ResponseSamples=({operation:e})=>{const{events:o,collapseResponseSamplePanel:n}=useContext(OptionsContext),a=e.responses.filter((e=>{var o,n;return null!==(n=null===(o=e.content)||void 0===o?void 0:o.hasSample)&&void 0!==n&&n})),t=useCallback((()=>{var n;const a=createCodeSampleCopyEvent({operation:e,type:"response"});null===(n=null==o?void 0:o.codeSamplesCopy)||void 0===n||n.call(o,a)}),[e,o]),s=useCallback((e=>{var o,n,l;(null===(l=null===(n=null===(o=a[e])||void 0===o?void 0:o.content)||void 0===n?void 0:n.active)||void 0===l?void 0:l.examples)&&"object"==typeof a[e].content.active.examples&&a[e].content.activateExampleName(Object.keys(a[e].content.active.examples)[0])}),[a]);if(!a.length)return null;const p=a.map((({code:e})=>({key:e,title:e})));return _jsx(CodePanel,Object.assign({dataHeaderTestId:"response-samples",header:l("responseSamples"),onToggle:n=>{var a;const l=createPanelToggleEvent({operation:e,isExpanded:n,panelType:"response-samples"});null===(a=null==o?void 0:o.panelToggle)||void 0===a||a.call(o,l)},expanded:!n},{children:_jsx(CollapsingTabs,Object.assign({tabs:p,operation:e,onChange:s},{children:a.map((e=>_jsx(TabPanel,Object.assign({value:e.code},{children:_jsx("div",{children:_jsx(PayloadSamples,{content:e.content,onCopyClick:t},void 0)},void 0)}),e.code)))}),void 0)}),void 0)};
2
2
  //# sourceMappingURL=ResponseSamples.js.map
@@ -1,2 +1,2 @@
1
- import{parse as parseQueryString,stringify as stringifyQueryString}from"query-string";import*as Sampler from"openapi-sampler";import merge from"deepmerge";import{toJS}from"mobx";import{deleteEmptyArrayItem,isArrayOfObjects,serializeParameterValue}from"../../redoc-lib";import{getSecurityDetails,getParameterValue}from"../../utils";import{normalizeMimeType,arrayMergeStrategy}from"../utils";import{MediaTypes}from"../../types";import{l}from"../../redoc-lib/src/services/Labels";import{HTTPSnippet}from"./httpsnippet";import StringUtility from"./httpsnippet/helpers/string-utility";function mapOperationToHAR(e,{exampleName:t="",skipOptionalParameters:a=!1,withOAuth2Call:r=!1,spec:i,generatedPayloadSamplesMaxDepth:s=8,pathParams:o={},properties:n={}}){var l,u,p,c,d,m,h,y,v,f;const{securityHeaders:g,securityCookies:O,securityQueries:S,securityOAuth2ExtraCalls:T,basicAuth:C}=getSecurityData(null===(l=e.security)||void 0===l?void 0:l[0],r),b=null===(p=null===(u=e.requestBody)||void 0===u?void 0:u.content)||void 0===p?void 0:p.active,E={skipNonRequired:a,skipReadOnly:!0,maxSampleDepth:s},A={path:toJS(null===(c=null==e?void 0:e.requestValues)||void 0===c?void 0:c.path),cookie:toJS(null===(d=null==e?void 0:e.requestValues)||void 0===d?void 0:d.cookie),header:toJS(null===(m=null==e?void 0:e.requestValues)||void 0===m?void 0:m.header),query:toJS(null===(h=null==e?void 0:e.requestValues)||void 0===h?void 0:h.query),body:toJS(null===(y=null==e?void 0:e.requestValues)||void 0===y?void 0:y.body)};let _=!1;const P=e.parameters.filter((e=>"header"===e.in)).filter((e=>!(a&&!e.required))).map((e=>{var t;return{name:e.name,value:(null===(t=A.header)||void 0===t?void 0:t[e.name])||getParameterValue("header",e.name)||serializeParameterValue(e,Sampler.sample(e.schema.rawSchema,E,i))}})).map((e=>((null==b?void 0:b.name)&&"content-type"===e.name.toLowerCase()&&(_=!0,e.value=b.name),e))).concat(g);!_&&(null==b?void 0:b.name)&&P.unshift({name:"Content-Type",value:null==b?void 0:b.name});const j=e.parameters.filter((e=>"cookie"===e.in)).filter((e=>!(a&&!e.required))).map((e=>parseQueryString(serializeParameterValue(e,Sampler.sample(e.schema.rawSchema,E,i))))).reduce(((e,t)=>{var a;for(const[r,i]of Object.entries(t))e.push({name:r,value:String((null===(a=A.cookie)||void 0===a?void 0:a[r])||i)});return e}),[]).concat(O),w=e.parameters.filter((e=>"query"===e.in)).filter((e=>!(a&&!e.required))).map((e=>parseQueryString(serializeParameterValue(e,Sampler.sample(e.schema.rawSchema,E,i))))).reduce(((e,t)=>{var a,r,i;for(const[s,o]of Object.entries(t))e.push({name:s,value:isArrayOfObjects(null===(a=A.query)||void 0===a?void 0:a[s])&&JSON.stringify(deleteEmptyArrayItem(null===(r=A.query)||void 0===r?void 0:r[s]))||String((null===(i=A.query)||void 0===i?void 0:i[s])||o)});return e}),[]).concat(S),R=null===(v=e.activeServer)||void 0===v?void 0:v.url.replace(/\/$/,""),D=e.path.replace(/^\//,""),[k]=R.split("#"),q=`${k}/${D}`,H=e.parameters.filter((e=>"path"===e.in)).reduce(((e,t)=>{var a;const{in:r,name:i}=t;return e[i]=(null===(a=A.path)||void 0===a?void 0:a[i])||o[i]||getParameterValue(r,i),e}),{}),M=null===(f=null==b?void 0:b.examples)||void 0===f?void 0:f[t],N=(null==b?void 0:b.examples)||{},[x]=Object.values(N),U=A.body||(null==M?void 0:M.value)||(null==x?void 0:x.value)||(null==b?void 0:b.schema)&&Sampler.sample(null==b?void 0:b.schema.rawSchema,E,i),z=null==b?void 0:b.name.toLowerCase();let V,I=[];switch(normalizeMimeType(z)){case MediaTypes.JSON:case MediaTypes.XML:V=JSON.stringify(getDataRequest(U,n));break;case MediaTypes.URL_ENCODED:case MediaTypes.MULTIPART:V=stringifyQueryString(getDataRequest(U,n)),I=objectToHarParams(getDataRequest(U,n));break;default:V=String(U||"")}const J=V?{mimeType:(null==b?void 0:b.name)||MediaTypes.OCTET_STREAM,text:V,params:I}:void 0,L=e.responses.map((e=>e.code));return{method:e.httpVerb,url:q,httpVersion:"HTTP/1.1",cookies:j,headers:P,queryString:w,postData:J,headersSize:-1,bodySize:-1,securityOAuth2ExtraCalls:T,basicAuth:C,pathParameters:H,serverVariables:e.activeServer.variables,allResponseCodes:L}}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:i,options:s={}}){try{const{skipOptionalParameters:o,withOAuth2Call:n,spec:l,generatedPayloadSamplesMaxDepth:u}=s,p=mapOperationToHAR(t,{exampleName:a,pathParams:r,properties:i,skipOptionalParameters:o,withOAuth2Call:n,spec:l,generatedPayloadSamplesMaxDepth:u}),c=new HTTPSnippet(p);return langToSnippetConfig[e]?c.convert(langToSnippetConfig[e].code,langToSnippetConfig[e].defaultTarget,Object.assign(Object.assign({},langToSnippetConfig[e].defaultOptions),s)):"Language is not supported."}catch(e){return console.error(e),"Failed to generate code sample."}}function getSecurityData(e,t){var a,r,i,s;const o={securityHeaders:[],securityCookies:[],securityQueries:[],securityOAuth2ExtraCalls:[],basicAuth:void 0};for(const n of(null==e?void 0:e.schemes)||[]){const e=getSecurityDetails(n.id);switch(n.type){case"openIdConnect":null===(a=o.securityHeaders)||void 0===a||a.push({name:"Authorization",value:"Bearer <YOUR_TOKEN_HERE>"});break;case"oauth2":{const a=e.token?`${e.token.token_type||"Bearer"} ${e.token.access_token}`:"Bearer <YOUR_TOKEN_HERE>";n.flows.clientCredentials&&t?o.securityOAuth2ExtraCalls.push(getOAuth2ClientCredsCallHar(n.flows.clientCredentials,n.scopes,e)):n.flows.password&&t&&o.securityOAuth2ExtraCalls.push(getOAuth2PasswordCallHar(n.flows.password,n.scopes,e)),null===(r=o.securityHeaders)||void 0===r||r.push({name:"Authorization",value:a});break}case"apiKey":{const t=e.raw||"YOUR_API_KEY_HERE";"header"===n.in&&(null===(i=o.securityHeaders)||void 0===i||i.push({name:n.name,value:t})),"cookie"===n.in&&o.securityCookies.push({name:n.name,value:t}),"query"===n.in&&o.securityQueries.push({name:n.name,value:t});break}case"http":"basic"===n.scheme?o.basicAuth={username:e.username||`<${StringUtility.toSnakeCase(l("tryItAuthBasicUsername"))}>`,password:e.password||`<${StringUtility.toSnakeCase(l("tryItAuthBasicPassword"))}>`}:null===(s=o.securityHeaders)||void 0===s||s.push({name:"Authorization",value:`${capitalizeFirst(n.scheme||"bearer")} <YOUR_${n.bearerFormat||"TOKEN"}_HERE>`})}}return o}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,i]of Object.entries(e)){const e=t?`${t}[${r}]`:r;"object"==typeof i&&null!==i?a.push(...objectToHarParams(i,e)):a.push({name:e,value:String(i)})}return a}export function isDefined(e){return void 0!==e}export function capitalizeFirst(e){return e.charAt(0).toUpperCase()+e.slice(1)}
1
+ import{parse as parseQueryString,stringify as stringifyQueryString}from"query-string";import*as Sampler from"openapi-sampler";import merge from"deepmerge";import{toJS}from"mobx";import{deleteEmptyArrayItem,isArrayOfObjects,serializeParameterValue}from"../../redoc-lib";import{getSecurityDetails,getParameterValue}from"../../utils";import{normalizeMimeType,arrayMergeStrategy}from"../utils";import{MediaTypes}from"../../types";import{l}from"../../redoc-lib/src/services/Labels";import{HTTPSnippet}from"./httpsnippet";import StringUtility from"./httpsnippet/helpers/string-utility";function mapOperationToHAR(e,{exampleName:t="",skipOptionalParameters:a=!1,withOAuth2Call:r=!1,spec:i,generatedPayloadSamplesMaxDepth:s=8,pathParams:n={},properties:o={}}){var l,u,p,c,d,m,h,y,v,f;const{securityHeaders:g,securityCookies:O,securityQueries:S,securityOAuth2ExtraCalls:T,basicAuth:C}=getSecurityData(null===(l=e.security)||void 0===l?void 0:l[0],r),b=null===(p=null===(u=e.requestBody)||void 0===u?void 0:u.content)||void 0===p?void 0:p.active,E={skipNonRequired:a,skipReadOnly:!0,maxSampleDepth:s},A={path:toJS(null===(c=null==e?void 0:e.requestValues)||void 0===c?void 0:c.path),cookie:toJS(null===(d=null==e?void 0:e.requestValues)||void 0===d?void 0:d.cookie),header:toJS(null===(m=null==e?void 0:e.requestValues)||void 0===m?void 0:m.header),query:toJS(null===(h=null==e?void 0:e.requestValues)||void 0===h?void 0:h.query),body:toJS(null===(y=null==e?void 0:e.requestValues)||void 0===y?void 0:y.body)};let _=!1;const P=e.parameters.filter((e=>"header"===e.in)).filter((e=>!(a&&!e.required))).map((e=>{var t;return{name:e.name,value:(null===(t=A.header)||void 0===t?void 0:t[e.name])||getParameterValue("header",e.name)||serializeParameterValue(e,Sampler.sample(e.schema.rawSchema,E,i))}})).map((e=>((null==b?void 0:b.name)&&"content-type"===e.name.toLowerCase()&&(_=!0,e.value=b.name),e))).concat(g);!_&&(null==b?void 0:b.name)&&P.unshift({name:"Content-Type",value:null==b?void 0:b.name});const j=e.parameters.filter((e=>"cookie"===e.in)).filter((e=>!(a&&!e.required))).map((e=>parseQueryString(serializeParameterValue(e,Sampler.sample(e.schema.rawSchema,E,i))))).reduce(((e,t)=>{var a;for(const[r,i]of Object.entries(t))e.push({name:r,value:String((null===(a=A.cookie)||void 0===a?void 0:a[r])||i)});return e}),[]).concat(O),w=e.parameters.filter((e=>"query"===e.in)).filter((e=>!(a&&!e.required))).map((e=>parseQueryString(serializeParameterValue(e,Sampler.sample(e.schema.rawSchema,E,i))))).reduce(((e,t)=>{var a,r,i;for(const[s,n]of Object.entries(t))e.push({name:s,value:isArrayOfObjects(null===(a=A.query)||void 0===a?void 0:a[s])&&JSON.stringify(deleteEmptyArrayItem(null===(r=A.query)||void 0===r?void 0:r[s]))||String((null===(i=A.query)||void 0===i?void 0:i[s])||n)});return e}),[]).concat(S),R=null===(v=e.activeServer)||void 0===v?void 0:v.url.replace(/\/$/,""),D=e.path.replace(/^\//,""),[k]=R.split("#"),q=`${k}/${D}`,H=e.parameters.filter((e=>"path"===e.in)).reduce(((e,t)=>{var a;const{in:r,name:i}=t;return e[i]=(null===(a=A.path)||void 0===a?void 0:a[i])||n[i]||getParameterValue(r,i),e}),{}),M=null===(f=null==b?void 0:b.examples)||void 0===f?void 0:f[t],N=(null==b?void 0:b.examples)||{},[x]=Object.values(N),U=A.body||(null==M?void 0:M.value)||(null==x?void 0:x.value)||(null==b?void 0:b.schema)&&Sampler.sample(null==b?void 0:b.schema.rawSchema,E,i),z=null==b?void 0:b.name.toLowerCase();let V,I=[];switch(normalizeMimeType(z)){case MediaTypes.JSON:case MediaTypes.XML:V=JSON.stringify(getDataRequest(U,o));break;case MediaTypes.URL_ENCODED:case MediaTypes.MULTIPART:V=stringifyQueryString(getDataRequest(U,o)),I=objectToHarParams(getDataRequest(U,o));break;default:V=String(U||"")}const J=V?{mimeType:(null==b?void 0:b.name)||MediaTypes.OCTET_STREAM,text:V,params:I}:void 0,L=e.responses.map((e=>e.code));return{method:e.httpVerb,url:q,httpVersion:"HTTP/1.1",cookies:j,headers:P,queryString:w,postData:J,headersSize:-1,bodySize:-1,securityOAuth2ExtraCalls:T,basicAuth:C,pathParameters:H,serverVariables:e.activeServer.variables,allResponseCodes:L}}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:i,options:s={}}){try{const{skipOptionalParameters:n,withOAuth2Call:o,spec:l,generatedPayloadSamplesMaxDepth:u}=s,p=mapOperationToHAR(t,{exampleName:a,pathParams:r,properties:i,skipOptionalParameters:n,withOAuth2Call:o,spec:l,generatedPayloadSamplesMaxDepth:u}),c=new HTTPSnippet(p);return langToSnippetConfig[e]?c.convert(langToSnippetConfig[e].code,langToSnippetConfig[e].defaultTarget,Object.assign(Object.assign({},langToSnippetConfig[e].defaultOptions),s)):"Language is not supported."}catch(e){return console.error(e),"Failed to generate code sample."}}function getSecurityData(e,t){var a,r,i,s;const n={securityHeaders:[],securityCookies:[],securityQueries:[],securityOAuth2ExtraCalls:[],basicAuth:void 0};for(const o of(null==e?void 0:e.schemes)||[]){const e=getSecurityDetails(o.id);switch(o.type){case"openIdConnect":null===(a=n.securityHeaders)||void 0===a||a.push({name:"Authorization",value:"Bearer <YOUR_TOKEN_HERE>"});break;case"oauth2":{const a=e.token?`${e.token.token_type||"Bearer"} ${e.token.access_token}`:"Bearer <YOUR_TOKEN_HERE>";o.flows.clientCredentials&&t?n.securityOAuth2ExtraCalls.push(getOAuth2ClientCredsCallHar(o.flows.clientCredentials,o.scopes,e)):o.flows.password&&t&&n.securityOAuth2ExtraCalls.push(getOAuth2PasswordCallHar(o.flows.password,o.scopes,e)),null===(r=n.securityHeaders)||void 0===r||r.push({name:"Authorization",value:a});break}case"apiKey":{const t=e.raw||"YOUR_API_KEY_HERE";"header"===o.in&&(null===(i=n.securityHeaders)||void 0===i||i.push({name:o.name,value:t})),"cookie"===o.in&&n.securityCookies.push({name:o.name,value:t}),"query"===o.in&&n.securityQueries.push({name:o.name,value:t});break}case"http":"basic"===o.scheme?n.basicAuth={username:e.username||`<${StringUtility.toSnakeCase(l("tryItAuthBasicUsername"))}>`,password:e.password||`<${StringUtility.toSnakeCase(l("tryItAuthBasicPassword"))}>`}:null===(s=n.securityHeaders)||void 0===s||s.push({name:"Authorization",value:`${capitalizeFirst(o.scheme||"bearer")} <YOUR_${o.bearerFormat||"TOKEN"}_HERE>`})}}return n}function getOAuth2PasswordCallHar(e,t,a){return{method:"POST",url:e.tokenUrl,httpVersion:"HTTP/1.1",headers:[{name:"Content-Type",value:MediaTypes.URL_ENCODED},{name:"Accept",value:MediaTypes.JSON}],queryString:[],postData:{mimeType:MediaTypes.URL_ENCODED,text:"",params:[{name:"grant_type",value:"password"},{name:"client_id",value:a.client_id||"YOUR_CLIENT_ID"},{name:"client_secret",value:a.client_secret||"YOUR_CLIENT_SECRET"},{name:"username",value:a.username||"<username>"},{name:"password",value:a.password||"<password>"},t.length?{name:"scope",value:t.join(" ")}:void 0].filter(isDefined)},cookies:[],headersSize:-1,bodySize:-1,securityOAuth2ExtraCalls:[]}}function getOAuth2ClientCredsCallHar(e,t,a){return{method:"POST",url:e.tokenUrl,httpVersion:"HTTP/1.1",headers:[{name:"Content-Type",value:MediaTypes.URL_ENCODED},{name:"Accept",value:MediaTypes.JSON}],queryString:[],postData:{mimeType:MediaTypes.URL_ENCODED,text:"",params:[{name:"grant_type",value:"client_credentials"},{name:"client_id",value:a.client_id||"YOUR_CLIENT_ID"},{name:"client_secret",value:a.client_secret||"YOUR_CLIENT_SECRET"},t.length?{name:"scope",value:t.join(" ")}:void 0].filter(isDefined)},cookies:[],headersSize:-1,bodySize:-1,securityOAuth2ExtraCalls:[]}}function getDataRequest(e,t){if(e){if("object"==typeof e)return merge(e,t,{arrayMerge:arrayMergeStrategy});try{return merge(JSON.parse(e),t,{arrayMerge:arrayMergeStrategy})}catch(e){return!1}}return!1}function objectToHarParams(e,t=""){const a=[];if(Array.isArray(e))return e.map((e=>({name:`${t}`,value:String(e)})));for(const[r,i]of Object.entries(e)){const e=t?`${t}[${r}]`:r;"object"==typeof i&&null!==i?a.push(...objectToHarParams(i,e)):a.push({name:e,value:String(i)})}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
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@redocly/reference-docs",
3
- "version": "2.45.5",
3
+ "version": "2.45.7",
4
4
  "description": "Redocly Reference Docs",
5
5
  "main": "lib/index.js",
6
6
  "module": "lib-esm/index.js",