@redocly/reference-docs 2.43.2 → 2.43.4

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (38) hide show
  1. package/bin/cli/commands/redocly-docs-cli.min.js +4 -4
  2. package/bin/cli/commands/redocly-docs-cli.min.js.LICENSE.txt +1 -1
  3. package/dist/console.redocly-reference-docs.min.js +1 -1
  4. package/dist/oauth2-redirect.js +1 -1
  5. package/dist/redocly-reference-docs.min.js +529 -528
  6. package/lib/redoc-lib/src/utils/helpers.d.ts +2 -0
  7. package/lib/redoc-lib/src/utils/helpers.js +1 -1
  8. package/lib/redoc-lib/src/utils/object.d.ts +3 -0
  9. package/lib/redoc-lib/src/utils/object.js +2 -0
  10. package/lib/services/code-samples/generator.js +1 -1
  11. package/lib/services/code-samples/httpsnippet/helpers/code-builder.js +1 -1
  12. package/lib/services/code-samples/httpsnippet/helpers/constants.d.ts +1 -0
  13. package/lib/services/code-samples/httpsnippet/helpers/constants.js +1 -1
  14. package/lib/services/code-samples/httpsnippet/targets/csharp/httpclient.js +1 -1
  15. package/lib/services/code-samples/httpsnippet/targets/csharpNewtonsoft/httpclient.d.ts +10 -0
  16. package/lib/services/code-samples/httpsnippet/targets/csharpNewtonsoft/httpclient.js +2 -0
  17. package/lib/services/code-samples/httpsnippet/targets/csharpNewtonsoft/index.d.ts +10 -0
  18. package/lib/services/code-samples/httpsnippet/targets/csharpNewtonsoft/index.js +2 -0
  19. package/lib/services/code-samples/httpsnippet/targets/index.d.ts +9 -0
  20. package/lib/services/code-samples/httpsnippet/targets/index.js +1 -1
  21. package/lib/services/code-samples/types.d.ts +5 -2
  22. package/lib-esm/redoc-lib/src/utils/helpers.d.ts +2 -0
  23. package/lib-esm/redoc-lib/src/utils/helpers.js +1 -1
  24. package/lib-esm/redoc-lib/src/utils/object.d.ts +3 -0
  25. package/lib-esm/redoc-lib/src/utils/object.js +2 -0
  26. package/lib-esm/services/code-samples/generator.js +1 -1
  27. package/lib-esm/services/code-samples/httpsnippet/helpers/code-builder.js +1 -1
  28. package/lib-esm/services/code-samples/httpsnippet/helpers/constants.d.ts +1 -0
  29. package/lib-esm/services/code-samples/httpsnippet/helpers/constants.js +1 -1
  30. package/lib-esm/services/code-samples/httpsnippet/targets/csharp/httpclient.js +1 -1
  31. package/lib-esm/services/code-samples/httpsnippet/targets/csharpNewtonsoft/httpclient.d.ts +10 -0
  32. package/lib-esm/services/code-samples/httpsnippet/targets/csharpNewtonsoft/httpclient.js +2 -0
  33. package/lib-esm/services/code-samples/httpsnippet/targets/csharpNewtonsoft/index.d.ts +10 -0
  34. package/lib-esm/services/code-samples/httpsnippet/targets/csharpNewtonsoft/index.js +2 -0
  35. package/lib-esm/services/code-samples/httpsnippet/targets/index.d.ts +9 -0
  36. package/lib-esm/services/code-samples/httpsnippet/targets/index.js +1 -1
  37. package/lib-esm/services/code-samples/types.d.ts +5 -2
  38. package/package.json +1 -1
@@ -44,3 +44,5 @@ export declare function escapeHTMLAttrChars(str: string): string;
44
44
  export declare function unescapeHTMLChars(str: string): string;
45
45
  export declare function sanitizeItemId(id: string): string;
46
46
  export declare function getSchemaTitle(pointer: string, title?: string): string;
47
+ export declare function isLastInArray(arr: Array<unknown>, index: number): boolean;
48
+ export declare function isLastProperty(obj: Record<string, unknown>, key: string): boolean;
@@ -1,2 +1,2 @@
1
- "use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.getSchemaTitle=exports.sanitizeItemId=exports.unescapeHTMLChars=exports.escapeHTMLAttrChars=exports.removeQueryStringAndHash=exports.titleize=exports.getBasePath=exports.resolveUrl=exports.isAbsoluteUrl=exports.safeSlugify=exports.isMergeableObject=exports.deleteEmptyArrayItem=exports.isArrayOfObjects=exports.isObject=exports.mergeObjects=exports.appendToMdHeading=exports.isNumeric=exports.stripTrailingSlash=exports.flattenByProp=exports.mapValues=exports.mapWithLast=void 0;var tslib_1=require("tslib"),slugify_1=(0,tslib_1.__importDefault)(require("slugify")),url_1=require("url"),media_css_1=require("./media-css"),openapi_1=require("./openapi"),JsonPointer_1=(0,tslib_1.__importDefault)(require("./JsonPointer"));function mapWithLast(e,r){for(var t=[],s=0;s<e.length-1;s++)t.push(r(e[s],!1));return 0!==e.length&&t.push(r(e[e.length-1],!0)),t}function mapValues(e,r){var t={};for(var s in e)Object.prototype.hasOwnProperty.call(e,s)&&(t[s]=r(e[s],s,e));return t}function flattenByProp(e,r){var t=[],s=function(e){for(var i=0,a=e;i<a.length;i++){var n=a[i];t.push(n),n[r]&&s(n[r])}};return s(e),t}function stripTrailingSlash(e){return e.endsWith("/")?e.substring(0,e.length-1):e}function isNumeric(e){return!isNaN(parseFloat(e))&&isFinite(e)}function appendToMdHeading(e,r,t){var s=new RegExp("(^|\\n)#\\s?"+r+"\\s*\\n","i"),i=new RegExp("((\\n|^)#\\s*"+r+"\\s*(\\n|$)(?:.|\\n)*?)(\\n#|$)","i");if(s.test(e))return e.replace(i,"$1\n\n"+t+"\n$4");var a=""===e||e.endsWith("\n\n")?"":e.endsWith("\n")?"\n":"\n\n";return""+e+a+"# "+r+"\n\n"+t}exports.mapWithLast=mapWithLast,exports.mapValues=mapValues,exports.flattenByProp=flattenByProp,exports.stripTrailingSlash=stripTrailingSlash,exports.isNumeric=isNumeric,exports.appendToMdHeading=appendToMdHeading;var mergeObjects=function(e){for(var r=[],t=1;t<arguments.length;t++)r[t-1]=arguments[t];if(!r.length)return e;var s=r.shift();return void 0===s?e:((0,exports.isMergeableObject)(e)&&(0,exports.isMergeableObject)(s)&&Object.keys(s).forEach((function(r){var t;(0,exports.isMergeableObject)(s[r])?(e[r]||(e[r]={}),["string","number"].includes(typeof e[r])&&(s[r][media_css_1.ZERO_BREAKPOINT]||0===s[r][media_css_1.ZERO_BREAKPOINT]||console.warn('Theme resolver: using default value of "'+e[r]+'" for "'+r+'". This is not recommended. Prefer adding default value by providing "'+media_css_1.ZERO_BREAKPOINT+'" property to '+JSON.stringify(s[r])+"."),e[r]=((t={})[media_css_1.ZERO_BREAKPOINT]=e[r],t)),(0,exports.mergeObjects)(e[r],s[r])):e[r]=s[r]})),exports.mergeObjects.apply(void 0,(0,tslib_1.__spreadArray)([e],r,!1)))};exports.mergeObjects=mergeObjects;var isObject=function(e){return null!==e&&"object"==typeof e};exports.isObject=isObject;var isArrayOfObjects=function(e){return Array.isArray(e)&&e.some((function(e){return(0,exports.isObject)(e)}))};exports.isArrayOfObjects=isArrayOfObjects;var deleteEmptyArrayItem=function(e){return e.filter((function(e){return!!e}))};exports.deleteEmptyArrayItem=deleteEmptyArrayItem;var isMergeableObject=function(e){return(0,exports.isObject)(e)&&!Array.isArray(e)};function safeSlugify(e){return(0,slugify_1.default)(e)||e.toString().toLowerCase().replace(/\s+/g,"-").replace(/&/g,"-and-").replace(/--+/g,"-").replace(/^-+/,"").replace(/-+$/,"")}function isAbsoluteUrl(e){return/(?:^[a-z][a-z0-9+.-]*:|\/\/)/i.test(e)}function resolveUrl(e,r){var t;if(r.startsWith("//"))t=""+((0,url_1.parse)(e).protocol||"https:")+r;else if(isAbsoluteUrl(r))t=r;else if(r.startsWith("/")){var s=(0,url_1.parse)(e);t=(0,url_1.format)((0,tslib_1.__assign)((0,tslib_1.__assign)({},s),{pathname:r}))}else t=stripTrailingSlash(e)+"/"+r;return stripTrailingSlash(t)}function getBasePath(e){try{return parseURL(e).pathname}catch(r){return e}}function titleize(e){return e.charAt(0).toUpperCase()+e.slice(1)}function removeQueryStringAndHash(e){try{var r=parseURL(e);return r.search="",r.hash="",r.toString()}catch(r){return e}}function parseURL(e){return"undefined"==typeof URL?new(require("url").URL)(e):new URL(e)}function escapeHTMLAttrChars(e){return e.replace(/["\\]/g,"\\$&")}function unescapeHTMLChars(e){return e.replace(/&#(\d+);/g,(function(e,r){return String.fromCharCode(parseInt(r,10))})).replace(/&amp;/g,"&").replace(/&quot;/g,'"')}function sanitizeItemId(e){return e&&e.replace(/#/g,"_")}function getSchemaTitle(e,r){return r||(0,openapi_1.isNamedDefinition)(e)&&JsonPointer_1.default.baseName(e)||""}exports.isMergeableObject=isMergeableObject,exports.safeSlugify=safeSlugify,exports.isAbsoluteUrl=isAbsoluteUrl,exports.resolveUrl=resolveUrl,exports.getBasePath=getBasePath,exports.titleize=titleize,exports.removeQueryStringAndHash=removeQueryStringAndHash,exports.escapeHTMLAttrChars=escapeHTMLAttrChars,exports.unescapeHTMLChars=unescapeHTMLChars,exports.sanitizeItemId=sanitizeItemId,exports.getSchemaTitle=getSchemaTitle;
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.isLastProperty=exports.isLastInArray=exports.getSchemaTitle=exports.sanitizeItemId=exports.unescapeHTMLChars=exports.escapeHTMLAttrChars=exports.removeQueryStringAndHash=exports.titleize=exports.getBasePath=exports.resolveUrl=exports.isAbsoluteUrl=exports.safeSlugify=exports.isMergeableObject=exports.deleteEmptyArrayItem=exports.isArrayOfObjects=exports.isObject=exports.mergeObjects=exports.appendToMdHeading=exports.isNumeric=exports.stripTrailingSlash=exports.flattenByProp=exports.mapValues=exports.mapWithLast=void 0;var tslib_1=require("tslib"),slugify_1=(0,tslib_1.__importDefault)(require("slugify")),url_1=require("url"),media_css_1=require("./media-css"),openapi_1=require("./openapi"),JsonPointer_1=(0,tslib_1.__importDefault)(require("./JsonPointer"));function mapWithLast(e,r){for(var t=[],s=0;s<e.length-1;s++)t.push(r(e[s],!1));return 0!==e.length&&t.push(r(e[e.length-1],!0)),t}function mapValues(e,r){var t={};for(var s in e)Object.prototype.hasOwnProperty.call(e,s)&&(t[s]=r(e[s],s,e));return t}function flattenByProp(e,r){var t=[],s=function(e){for(var a=0,i=e;a<i.length;a++){var n=i[a];t.push(n),n[r]&&s(n[r])}};return s(e),t}function stripTrailingSlash(e){return e.endsWith("/")?e.substring(0,e.length-1):e}function isNumeric(e){return!isNaN(parseFloat(e))&&isFinite(e)}function appendToMdHeading(e,r,t){var s=new RegExp("(^|\\n)#\\s?"+r+"\\s*\\n","i"),a=new RegExp("((\\n|^)#\\s*"+r+"\\s*(\\n|$)(?:.|\\n)*?)(\\n#|$)","i");if(s.test(e))return e.replace(a,"$1\n\n"+t+"\n$4");var i=""===e||e.endsWith("\n\n")?"":e.endsWith("\n")?"\n":"\n\n";return""+e+i+"# "+r+"\n\n"+t}exports.mapWithLast=mapWithLast,exports.mapValues=mapValues,exports.flattenByProp=flattenByProp,exports.stripTrailingSlash=stripTrailingSlash,exports.isNumeric=isNumeric,exports.appendToMdHeading=appendToMdHeading;var mergeObjects=function(e){for(var r=[],t=1;t<arguments.length;t++)r[t-1]=arguments[t];if(!r.length)return e;var s=r.shift();return void 0===s?e:((0,exports.isMergeableObject)(e)&&(0,exports.isMergeableObject)(s)&&Object.keys(s).forEach((function(r){var t;(0,exports.isMergeableObject)(s[r])?(e[r]||(e[r]={}),["string","number"].includes(typeof e[r])&&(s[r][media_css_1.ZERO_BREAKPOINT]||0===s[r][media_css_1.ZERO_BREAKPOINT]||console.warn('Theme resolver: using default value of "'+e[r]+'" for "'+r+'". This is not recommended. Prefer adding default value by providing "'+media_css_1.ZERO_BREAKPOINT+'" property to '+JSON.stringify(s[r])+"."),e[r]=((t={})[media_css_1.ZERO_BREAKPOINT]=e[r],t)),(0,exports.mergeObjects)(e[r],s[r])):e[r]=s[r]})),exports.mergeObjects.apply(void 0,(0,tslib_1.__spreadArray)([e],r,!1)))};exports.mergeObjects=mergeObjects;var isObject=function(e){return null!==e&&"object"==typeof e};exports.isObject=isObject;var isArrayOfObjects=function(e){return Array.isArray(e)&&e.some((function(e){return(0,exports.isObject)(e)}))};exports.isArrayOfObjects=isArrayOfObjects;var deleteEmptyArrayItem=function(e){return e.filter((function(e){return!!e}))};exports.deleteEmptyArrayItem=deleteEmptyArrayItem;var isMergeableObject=function(e){return(0,exports.isObject)(e)&&!Array.isArray(e)};function safeSlugify(e){return(0,slugify_1.default)(e)||e.toString().toLowerCase().replace(/\s+/g,"-").replace(/&/g,"-and-").replace(/--+/g,"-").replace(/^-+/,"").replace(/-+$/,"")}function isAbsoluteUrl(e){return/(?:^[a-z][a-z0-9+.-]*:|\/\/)/i.test(e)}function resolveUrl(e,r){var t;if(r.startsWith("//"))t=""+((0,url_1.parse)(e).protocol||"https:")+r;else if(isAbsoluteUrl(r))t=r;else if(r.startsWith("/")){var s=(0,url_1.parse)(e);t=(0,url_1.format)((0,tslib_1.__assign)((0,tslib_1.__assign)({},s),{pathname:r}))}else t=stripTrailingSlash(e)+"/"+r;return stripTrailingSlash(t)}function getBasePath(e){try{return parseURL(e).pathname}catch(r){return e}}function titleize(e){return e.charAt(0).toUpperCase()+e.slice(1)}function removeQueryStringAndHash(e){try{var r=parseURL(e);return r.search="",r.hash="",r.toString()}catch(r){return e}}function parseURL(e){return"undefined"==typeof URL?new(require("url").URL)(e):new URL(e)}function escapeHTMLAttrChars(e){return e.replace(/["\\]/g,"\\$&")}function unescapeHTMLChars(e){return e.replace(/&#(\d+);/g,(function(e,r){return String.fromCharCode(parseInt(r,10))})).replace(/&amp;/g,"&").replace(/&quot;/g,'"')}function sanitizeItemId(e){return e&&e.replace(/#/g,"_")}function getSchemaTitle(e,r){return r||(0,openapi_1.isNamedDefinition)(e)&&JsonPointer_1.default.baseName(e)||""}function isLastInArray(e,r){return r===e.length-1}function isLastProperty(e,r){var t=Object.keys(e);return t.indexOf(r)===t.length-1}exports.isMergeableObject=isMergeableObject,exports.safeSlugify=safeSlugify,exports.isAbsoluteUrl=isAbsoluteUrl,exports.resolveUrl=resolveUrl,exports.getBasePath=getBasePath,exports.titleize=titleize,exports.removeQueryStringAndHash=removeQueryStringAndHash,exports.escapeHTMLAttrChars=escapeHTMLAttrChars,exports.unescapeHTMLChars=unescapeHTMLChars,exports.sanitizeItemId=sanitizeItemId,exports.getSchemaTitle=getSchemaTitle,exports.isLastInArray=isLastInArray,exports.isLastProperty=isLastProperty;
2
2
  //# sourceMappingURL=helpers.js.map
@@ -0,0 +1,3 @@
1
+ export declare function objectHas(object: GenericObject, path: string | Array<string>): boolean;
2
+ export declare function objectSet(object: GenericObject, path: string | Array<string>, value: unknown): void;
3
+ export declare function checkIfIsObject(item: unknown): item is Record<string, unknown>;
@@ -0,0 +1,2 @@
1
+ "use strict";function objectHas(e,t){var o=t;return"string"==typeof t&&(o=t.split(".")),o.every((function(t){return"object"==typeof e&&null!==e&&t in e&&(e=e[t],!0)}))}function objectSet(e,t,o){var c,r=t;"string"==typeof t&&(r=t.split("."));for(var s=r.length-1,n=0;n<s;++n){var b=r[n];e=null!==(c=e[b])&&void 0!==c?c:e[b]={}}e[r[s]]=o}function checkIfIsObject(e){return"object"==typeof e&&!Array.isArray(e)&&null!==e}Object.defineProperty(exports,"__esModule",{value:!0}),exports.checkIfIsObject=exports.objectSet=exports.objectHas=void 0,exports.objectHas=objectHas,exports.objectSet=objectSet,exports.checkIfIsObject=checkIfIsObject;
2
+ //# sourceMappingURL=object.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,x=q.securityOAuth2ExtraCalls,P=q.basicAuth,R=null===(i=null===(r=e.requestBody)||void 0===r?void 0:r.content)||void 0===i?void 0:i.active,w={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)},H=!1,M=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,w,f))}})).map((function(e){return(null==R?void 0:R.name)&&"content-type"===e.name.toLowerCase()&&(H=!0,e.value=R.name),e})).concat(E);!H&&(null==R?void 0:R.name)&&M.unshift({name:"Content-Type",value:null==R?void 0:R.name});var N,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,w,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,w,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==R?void 0:R.examples)||void 0===d?void 0:d[_],Y=(null==R?void 0:R.examples)||{},F=Object.values(Y)[0],B=k.body||(null==J?void 0:J.value)||(null==F?void 0:F.value)||(null==R?void 0:R.schema)&&Sampler.sample(null==R?void 0:R.schema.rawSchema,w,f),K=null==R?void 0:R.name.toLowerCase(),Q=[];switch((0,utils_2.normalizeMimeType)(K)){case types_1.MediaTypes.JSON:case types_1.MediaTypes.XML:N=JSON.stringify(getDataRequest(B,C));break;case types_1.MediaTypes.URL_ENCODED:case types_1.MediaTypes.MULTIPART:N=(0,query_string_1.stringify)(getDataRequest(B,C)),Q=objectToHarParams(getDataRequest(B,C));break;default:N=String(B||"")}var G=N?{mimeType:(null==R?void 0:R.name)||types_1.MediaTypes.OCTET_STREAM,text:N,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:M,queryString:L,postData:G,headersSize:-1,bodySize:-1,securityOAuth2ExtraCalls:x,basicAuth:P,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)},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,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;
2
2
  //# sourceMappingURL=generator.js.map
@@ -1,2 +1,2 @@
1
- "use strict";var _a,_b;Object.defineProperty(exports,"__esModule",{value:!0}),exports.CodeBuilder=void 0;var tslib_1=require("tslib"),util=(0,tslib_1.__importStar)(require("util")),constants_1=require("./constants"),string_utility_1=(0,tslib_1.__importDefault)(require("./string-utility")),langToVarNameConvention=((_a={})[constants_1.Lang.NODEJS]=constants_1.NamingVariableConventions.CAMEL_CASE,_a[constants_1.Lang.JAVASCRIPT]=constants_1.NamingVariableConventions.CAMEL_CASE,_a[constants_1.Lang.PYTHON]=constants_1.NamingVariableConventions.UNDER_SCORES,_a[constants_1.Lang.JAVA8]=constants_1.NamingVariableConventions.CAMEL_CASE,_a[constants_1.Lang.JAVA]=constants_1.NamingVariableConventions.CAMEL_CASE,_a[constants_1.Lang.CSHARP]=constants_1.NamingVariableConventions.PASCAL_CASE,_a[constants_1.Lang.CURL]=constants_1.NamingVariableConventions.CAMEL_CASE,_a[constants_1.Lang.GO]=constants_1.NamingVariableConventions.CAMEL_CASE,_a[constants_1.Lang.PHP]=constants_1.NamingVariableConventions.CAMEL_CASE,_a[constants_1.Lang.RUBY]=constants_1.NamingVariableConventions.UNDER_SCORES,_a[constants_1.Lang.R]=constants_1.NamingVariableConventions.UNDER_SCORES,_a),langOptions=((_b={default:{joinSymbol:"",variableWrapperFn:function(n){return n},stringLiteral:function(n){return n},variableDeclaration:function(n){return n},urlFieldName:"url"}})[constants_1.Lang.CSHARP]={joinSymbol:" + ",stringLiteral:function(n){return'"'+n+'"'},variableDeclaration:function(n){return"var "+n+' = "%s";'},urlFieldName:"fullUrl"},_b[constants_1.Lang.GO]={joinSymbol:" + ",stringLiteral:function(n){return'"'+n+'"'},variableDeclaration:function(n){return n+' := "%s";'}},_b[constants_1.Lang.JAVA]={joinSymbol:" + ",stringLiteral:function(n){return'"'+n+'"'},variableDeclaration:function(n){return"var "+n+' = "%s";'},urlFieldName:"pathname"},_b[constants_1.Lang.JAVA8]={joinSymbol:" + ",stringLiteral:function(n){return'"'+n+'"'},variableDeclaration:function(n){return"String "+n+' = "%s";'},urlFieldName:"fullUrl"},_b[constants_1.Lang.JAVASCRIPT]={variableWrapperFn:function(n){return"${"+n+"}"},variableDeclaration:function(n){return"const "+n+" = '%s';"}},_b[constants_1.Lang.NODEJS]={variableWrapperFn:function(n){return"${"+n+"}"},variableDeclaration:function(n){return"const "+n+" = '%s';"}},_b[constants_1.Lang.PHP]={joinSymbol:" . ",stringLiteral:function(n){return'"'+n+'"'},variableDeclaration:function(n){return"const "+n+' = "%s";'}},_b[constants_1.Lang.PYTHON]={stringLiteral:function(n){return'"'+n+'"'},joinSymbol:" + ",variableDeclaration:function(n){return n+' = "%s"'}},_b[constants_1.Lang.RUBY]={joinSymbol:" + ",stringLiteral:function(n){return"'"+n+"'"},variableDeclaration:function(n){return n+" = '%s'"}},_b[constants_1.Lang.CURL]={variableWrapperFn:function(n,e){return e||"{"+n+"}"},urlFieldName:"fullUrl",rawName:!0},_b[constants_1.Lang.R]={joinSymbol:" %&% ",variableDeclaration:function(n){return n+' = "%s"'},urlFieldName:"fullUrl",stringLiteral:function(n){return'"'+n+'"'},variableWrapperFn:function(n){return""+n}},_b),reservedVariableNames=["response","request","requests","data","url","payload","main","accessToken","resp","Program","client","postData","App","httpClient","params","pathname","host","body","fetch","query"],CodeBuilder=function(){function n(n){var e=n.indentation,t=n.lineJoin,a=void 0===t?"\n":t,i=n.variablesPrefix,r=void 0===i?"":i,o=n.capitalize,l=void 0!==o&&o,s=n.lang,u=void 0===s?constants_1.Lang.CURL:s;Object.defineProperty(this,"code",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"indentation",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"variablesPrefix",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"lineJoin",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"capitalize",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"lang",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"langOptions",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.code=[],this.indentation=e,this.variablesPrefix=r,this.lineJoin=a||"\n",this.capitalize=l,this.lang=u,this.langOptions=(0,tslib_1.__assign)((0,tslib_1.__assign)({},langOptions.default),langOptions[u])}return Object.defineProperty(n.prototype,"buildLine",{enumerable:!1,configurable:!0,writable:!0,value:function(n,e){var t="",a=2;if("string"==typeof n)a=1,e=n,n=0;else if(null===n)return null;for(;n;)t+=this.indentation,n--;var i=Array.prototype.slice.call(arguments,a,arguments.length);return i.unshift(t+e),util.format.apply(this,i)}}),Object.defineProperty(n.prototype,"unshift",{enumerable:!1,configurable:!0,writable:!0,value:function(){for(var n=[],e=0;e<arguments.length;e++)n[e]=arguments[e];return this.code.unshift(this.buildLine.apply(this,n)),this}}),Object.defineProperty(n.prototype,"push",{enumerable:!1,configurable:!0,writable:!0,value:function(){for(var n=[],e=0;e<arguments.length;e++)n[e]=arguments[e];return this.code.push(this.buildLine.apply(this,n)),this}}),Object.defineProperty(n.prototype,"blank",{enumerable:!1,configurable:!0,writable:!0,value:function(){return this.code.push(null),this}}),Object.defineProperty(n.prototype,"join",{enumerable:!1,configurable:!0,writable:!0,value:function(){return this.code.join(this.lineJoin)}}),Object.defineProperty(n.prototype,"clean",{enumerable:!1,configurable:!0,writable:!0,value:function(){this.code.splice(1)}}),Object.defineProperty(n.prototype,"var",{enumerable:!1,configurable:!0,writable:!0,value:function(n,e){if(void 0===e&&(e=constants_1.VariableType.CUSTOM),e===constants_1.VariableType.PATH){var t=this.variablesPrefix+n;switch(reservedVariableNames.includes(t)&&(t+="_path"),langToVarNameConvention[this.lang]){case constants_1.NamingVariableConventions.UNDER_SCORES:t=string_utility_1.default.toSnakeCase(t);break;case constants_1.NamingVariableConventions.PASCAL_CASE:t=string_utility_1.default.toPascalCase(t);break;case constants_1.NamingVariableConventions.CAMEL_CASE:default:t=string_utility_1.default.toCamelCase(t)}return t}return this.variablesPrefix?this.variablesPrefix+(this.capitalize?string_utility_1.default.toPascalCase(n):n):n}}),n}();exports.CodeBuilder=CodeBuilder;
1
+ "use strict";var _a,_b;Object.defineProperty(exports,"__esModule",{value:!0}),exports.CodeBuilder=void 0;var tslib_1=require("tslib"),util=(0,tslib_1.__importStar)(require("util")),constants_1=require("./constants"),string_utility_1=(0,tslib_1.__importDefault)(require("./string-utility")),langToVarNameConvention=((_a={})[constants_1.Lang.NODEJS]=constants_1.NamingVariableConventions.CAMEL_CASE,_a[constants_1.Lang.JAVASCRIPT]=constants_1.NamingVariableConventions.CAMEL_CASE,_a[constants_1.Lang.PYTHON]=constants_1.NamingVariableConventions.UNDER_SCORES,_a[constants_1.Lang.JAVA8]=constants_1.NamingVariableConventions.CAMEL_CASE,_a[constants_1.Lang.JAVA]=constants_1.NamingVariableConventions.CAMEL_CASE,_a[constants_1.Lang.CSHARP]=constants_1.NamingVariableConventions.PASCAL_CASE,_a[constants_1.Lang.CSHARPNEWTONSOFT]=constants_1.NamingVariableConventions.PASCAL_CASE,_a[constants_1.Lang.CURL]=constants_1.NamingVariableConventions.CAMEL_CASE,_a[constants_1.Lang.GO]=constants_1.NamingVariableConventions.CAMEL_CASE,_a[constants_1.Lang.PHP]=constants_1.NamingVariableConventions.CAMEL_CASE,_a[constants_1.Lang.RUBY]=constants_1.NamingVariableConventions.UNDER_SCORES,_a[constants_1.Lang.R]=constants_1.NamingVariableConventions.UNDER_SCORES,_a),langOptions=((_b={default:{joinSymbol:"",variableWrapperFn:function(n){return n},stringLiteral:function(n){return n},variableDeclaration:function(n){return n},urlFieldName:"url"}})[constants_1.Lang.CSHARP]={joinSymbol:" + ",stringLiteral:function(n){return'"'+n+'"'},variableDeclaration:function(n){return"var "+n+' = "%s";'},urlFieldName:"fullUrl"},_b[constants_1.Lang.CSHARPNEWTONSOFT]={joinSymbol:" + ",stringLiteral:function(n){return'"'+n+'"'},variableDeclaration:function(n){return"var "+n+' = "%s";'},urlFieldName:"fullUrl"},_b[constants_1.Lang.GO]={joinSymbol:" + ",stringLiteral:function(n){return'"'+n+'"'},variableDeclaration:function(n){return n+' := "%s";'}},_b[constants_1.Lang.JAVA]={joinSymbol:" + ",stringLiteral:function(n){return'"'+n+'"'},variableDeclaration:function(n){return"var "+n+' = "%s";'},urlFieldName:"pathname"},_b[constants_1.Lang.JAVA8]={joinSymbol:" + ",stringLiteral:function(n){return'"'+n+'"'},variableDeclaration:function(n){return"String "+n+' = "%s";'},urlFieldName:"fullUrl"},_b[constants_1.Lang.JAVASCRIPT]={variableWrapperFn:function(n){return"${"+n+"}"},variableDeclaration:function(n){return"const "+n+" = '%s';"}},_b[constants_1.Lang.NODEJS]={variableWrapperFn:function(n){return"${"+n+"}"},variableDeclaration:function(n){return"const "+n+" = '%s';"}},_b[constants_1.Lang.PHP]={joinSymbol:" . ",stringLiteral:function(n){return'"'+n+'"'},variableDeclaration:function(n){return"const "+n+' = "%s";'}},_b[constants_1.Lang.PYTHON]={stringLiteral:function(n){return'"'+n+'"'},joinSymbol:" + ",variableDeclaration:function(n){return n+' = "%s"'}},_b[constants_1.Lang.RUBY]={joinSymbol:" + ",stringLiteral:function(n){return"'"+n+"'"},variableDeclaration:function(n){return n+" = '%s'"}},_b[constants_1.Lang.CURL]={variableWrapperFn:function(n,e){return e||"{"+n+"}"},urlFieldName:"fullUrl",rawName:!0},_b[constants_1.Lang.R]={joinSymbol:" %&% ",variableDeclaration:function(n){return n+' = "%s"'},urlFieldName:"fullUrl",stringLiteral:function(n){return'"'+n+'"'},variableWrapperFn:function(n){return""+n}},_b),reservedVariableNames=["response","request","requests","data","url","payload","main","accessToken","resp","Program","client","postData","App","httpClient","params","pathname","host","body","fetch","query"],CodeBuilder=function(){function n(n){var e=n.indentation,t=n.lineJoin,a=void 0===t?"\n":t,i=n.variablesPrefix,r=void 0===i?"":i,o=n.capitalize,l=void 0!==o&&o,s=n.lang,u=void 0===s?constants_1.Lang.CURL:s;Object.defineProperty(this,"code",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"indentation",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"variablesPrefix",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"lineJoin",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"capitalize",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"lang",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"langOptions",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.code=[],this.indentation=e,this.variablesPrefix=r,this.lineJoin=a||"\n",this.capitalize=l,this.lang=u,this.langOptions=(0,tslib_1.__assign)((0,tslib_1.__assign)({},langOptions.default),langOptions[u])}return Object.defineProperty(n.prototype,"buildLine",{enumerable:!1,configurable:!0,writable:!0,value:function(n,e){var t="",a=2;if("string"==typeof n)a=1,e=n,n=0;else if(null===n)return null;for(;n;)t+=this.indentation,n--;var i=Array.prototype.slice.call(arguments,a,arguments.length);return i.unshift(t+e),util.format.apply(this,i)}}),Object.defineProperty(n.prototype,"unshift",{enumerable:!1,configurable:!0,writable:!0,value:function(){for(var n=[],e=0;e<arguments.length;e++)n[e]=arguments[e];return this.code.unshift(this.buildLine.apply(this,n)),this}}),Object.defineProperty(n.prototype,"push",{enumerable:!1,configurable:!0,writable:!0,value:function(){for(var n=[],e=0;e<arguments.length;e++)n[e]=arguments[e];return this.code.push(this.buildLine.apply(this,n)),this}}),Object.defineProperty(n.prototype,"blank",{enumerable:!1,configurable:!0,writable:!0,value:function(){return this.code.push(null),this}}),Object.defineProperty(n.prototype,"join",{enumerable:!1,configurable:!0,writable:!0,value:function(){return this.code.join(this.lineJoin)}}),Object.defineProperty(n.prototype,"clean",{enumerable:!1,configurable:!0,writable:!0,value:function(){this.code.splice(1)}}),Object.defineProperty(n.prototype,"var",{enumerable:!1,configurable:!0,writable:!0,value:function(n,e){if(void 0===e&&(e=constants_1.VariableType.CUSTOM),e===constants_1.VariableType.PATH){var t=this.variablesPrefix+n;switch(reservedVariableNames.includes(t)&&(t+="_path"),langToVarNameConvention[this.lang]){case constants_1.NamingVariableConventions.UNDER_SCORES:t=string_utility_1.default.toSnakeCase(t);break;case constants_1.NamingVariableConventions.PASCAL_CASE:t=string_utility_1.default.toPascalCase(t);break;case constants_1.NamingVariableConventions.CAMEL_CASE:default:t=string_utility_1.default.toCamelCase(t)}return t}return this.variablesPrefix?this.variablesPrefix+(this.capitalize?string_utility_1.default.toPascalCase(n):n):n}}),n}();exports.CodeBuilder=CodeBuilder;
2
2
  //# sourceMappingURL=code-builder.js.map
@@ -5,6 +5,7 @@ export declare enum Lang {
5
5
  JAVA8 = "Java8+Apache",
6
6
  JAVA = "Java",
7
7
  CSHARP = "C#",
8
+ CSHARPNEWTONSOFT = "C#+Newtonsoft",
8
9
  CURL = "curl",
9
10
  GO = "Go",
10
11
  PHP = "PHP",
@@ -1,2 +1,2 @@
1
- "use strict";var Lang,NamingVariableConventions,VariableType;Object.defineProperty(exports,"__esModule",{value:!0}),exports.VariableType=exports.NamingVariableConventions=exports.Lang=void 0,function(a){a.NODEJS="Node.js",a.JAVASCRIPT="javascript",a.PYTHON="Python",a.JAVA8="Java8+Apache",a.JAVA="Java",a.CSHARP="C#",a.CURL="curl",a.GO="Go",a.PHP="PHP",a.RUBY="Ruby",a.R="R"}(Lang=exports.Lang||(exports.Lang={})),function(a){a.UNDER_SCORES="under_scores",a.CAMEL_CASE="camelCase",a.PASCAL_CASE="PascalCase"}(NamingVariableConventions=exports.NamingVariableConventions||(exports.NamingVariableConventions={})),function(a){a.IMPORT="import",a.CUSTOM="custom",a.PATH="path"}(VariableType=exports.VariableType||(exports.VariableType={}));
1
+ "use strict";var Lang,NamingVariableConventions,VariableType;Object.defineProperty(exports,"__esModule",{value:!0}),exports.VariableType=exports.NamingVariableConventions=exports.Lang=void 0,function(e){e.NODEJS="Node.js",e.JAVASCRIPT="javascript",e.PYTHON="Python",e.JAVA8="Java8+Apache",e.JAVA="Java",e.CSHARP="C#",e.CSHARPNEWTONSOFT="C#+Newtonsoft",e.CURL="curl",e.GO="Go",e.PHP="PHP",e.RUBY="Ruby",e.R="R"}(Lang=exports.Lang||(exports.Lang={})),function(e){e.UNDER_SCORES="under_scores",e.CAMEL_CASE="camelCase",e.PASCAL_CASE="PascalCase"}(NamingVariableConventions=exports.NamingVariableConventions||(exports.NamingVariableConventions={})),function(e){e.IMPORT="import",e.CUSTOM="custom",e.PATH="path"}(VariableType=exports.VariableType||(exports.VariableType={}));
2
2
  //# sourceMappingURL=constants.js.map
@@ -1,2 +1,2 @@
1
- "use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.info=void 0;var tslib_1=require("tslib"),stringify_object_1=(0,tslib_1.__importDefault)(require("stringify-object")),code_builder_1=require("../../helpers/code-builder"),__1=require("../.."),code_helpers_1=require("../../helpers/code-helpers"),utils_1=require("../../../../utils"),generator_1=require("../../../generator"),constants_1=require("../../helpers/constants"),types_1=require("../../../../../types"),handler=function(e,t,s){var a,n,i,r,o=s.target,p=s.client,u=Object.assign({indent:" ",withWrapper:!0},t),l=new code_builder_1.CodeBuilder({indentation:u.indent,variablesPrefix:u.variablesPrefix,capitalize:!0,lang:constants_1.Lang.CSHARP}),c=formatHttpMethod(e.method);if(u.withComments&&addComments(l),u.withWrapper&&(l.push("using System;"),l.push("using System.Net.Http;"),l.push("using System.Threading.Tasks;"),(g(types_1.MediaTypes.JSON)||g(types_1.MediaTypes.XML)||e.basicAuth)&&l.push("using System.Text;"),(g(types_1.MediaTypes.URL_ENCODED)||(null===(a=e.securityOAuth2ExtraCalls)||void 0===a?void 0:a.length))&&l.push("using System.Collections.Generic;"),(g(types_1.MediaTypes.JSON)||(null===(n=e.securityOAuth2ExtraCalls)||void 0===n?void 0:n.length))&&l.push("using Newtonsoft.Json.Linq;"),e.headersObj&&e.headersObj["Content-Type"]===types_1.MediaTypes.OCTET_STREAM&&(l.push("using System.IO;"),l.push("using System.Net.Http.Headers;")),l.blank(),l.push("public class Program"),l.push("{"),l.push(1,"private readonly IHttpClientFactory _httpClientFactory;"),l.push(1,"public static async Task Main(string[] args)"),l.push(1,"{"),l.push(2,"var client = _httpClientFactory.CreateClient();")),null===(i=e.securityOAuth2ExtraCalls)||void 0===i?void 0:i.length){var h=new __1.HTTPSnippet(null===(r=e.securityOAuth2ExtraCalls)||void 0===r?void 0:r[0]).convert(o,p,(0,tslib_1.__assign)((0,tslib_1.__assign)({},u),{withImports:!1,withWrapper:!1,withComments:!1,variablesPrefix:"oauth2"}));l.push(h),l.push(2,"var oauth2Response = await oauth2Request.Content.ReadAsStringAsync();"),l.push(2,"JObject inputJObject = JObject.Parse(oauth2Response);"),l.push(2,'var accessToken = inputJObject["access_token"].ToString();'),l.blank()}var d=Object.keys(e.allHeaders).filter((function(e){switch(e.toLowerCase()){case"content-type":case"content-length":case"accept-encoding":return!1;default:return!0}}));if(d.length&&d.forEach((function(t){var s;l.push(2,'client.DefaultRequestHeaders.Add("%s", %s);',t,(null===(s=e.securityOAuth2ExtraCalls)||void 0===s?void 0:s.length)?'"Bearer " + accessToken':'"'+e.allHeaders[t]+'"')})),e.basicAuth){var y=e.basicAuth,m=y.username,_=y.password;l.push(2,'var base64String = Convert.ToBase64String(Encoding.ASCII.GetBytes("'+m+":"+_+'"));'),l.push(2,'client.DefaultRequestHeaders.Add("Authorization", "Basic "+ base64String);')}if(e.postData)switch((0,utils_1.normalizeMimeType)(e.postData.mimeType)){case types_1.MediaTypes.URL_ENCODED:e.postData.params&&(l.blank(),l.push(2,"List<KeyValuePair<string, string>> postData = new List<KeyValuePair<string, string>>();"),e.postData.params.forEach((function(e){l.push(2,'postData.Add(new KeyValuePair<string, string>("%s", "%s"));',e.name,e.value)})),l.blank());break;case types_1.MediaTypes.MULTIPART:e.postData.params&&(l.blank(),l.push(2,"MultipartFormDataContent postData = new MultipartFormDataContent();"),e.postData.params.forEach((function(e){l.push(2,'postData.Add(new StringContent("%s"), "%s");',e.value,e.name)})));break;case types_1.MediaTypes.JSON:e.postData.jsonObj&&(l.push(2,'JObject json = JObject.Parse(@"'+(0,code_helpers_1.addIndentation)((0,stringify_object_1.default)(e.postData.jsonObj,{indent:u.indent,inlineCharacterLimit:25}).replace(/"/g,'""'),{level:3,firstLine:!1})+'");'),l.push(2,'var postData = new StringContent(json.ToString(), Encoding.UTF8, "%s");',e.postData.mimeType));break;case types_1.MediaTypes.XML:e.postData.text&&(e.postData.text.trim().split("\n").forEach((function(e,t){var s=(0===t?'string xml = @"':"")+e.replace(/"/g,'""');l.push(0===t?3:4,s)})),l.push(2,'";'),l.push(2,'var postData = new StringContent(xml, Encoding.UTF8, "%s");',e.postData.mimeType))}else T()&&(l.push(2,"var ms = new MemoryStream();"),l.push(2,"var postData = new StreamContent(ms);"),l.push(2,'postData.Headers.ContentType = new MediaTypeHeaderValue("application/octet-stream");'));return(0,code_helpers_1.printUrlVariablesDeclarations)(e,l,3),l.push(2,"var %s = await client.%sAsync(%s%s);",l.var("request"),c,(0,code_helpers_1.buildUrlExpression)(e,l),u.withImports?isDataMethod(e.method)?(0,utils_1.normalizeMimeType)(e.postData&&e.postData.mimeType)===types_1.MediaTypes.URL_ENCODED?", new FormUrlEncodedContent(postData)":"delete"===e.method?"":e.postData&&e.postData.params||T()?", postData":", null":"":", new FormUrlEncodedContent(postData)"),u.withWrapper&&(l.push(2,"var response = await request.Content.ReadAsStringAsync();"),l.blank(),l.push(2,"Console.WriteLine(response);"),l.push(1,"}"),l.push("}")),l.join();function g(t){return e.postData&&(0,utils_1.normalizeMimeType)(e.postData.mimeType)===t}function T(){return e.headersObj&&e.headersObj["Content-Type"]===types_1.MediaTypes.OCTET_STREAM}};function addComments(e){e.push("/*"),e.push(" * Requires >= .NET 5"),e.push(" *"),e.push(' * Requires package "Newtonsoft.Json" >= 9.01'),e.push(" * See here for installation details:"),e.push(" * https://www.newtonsoft.com/json"),e.push(" */"),e.blank()}function formatHttpMethod(e){return(0,generator_1.capitalizeFirst)(e.toLowerCase())}function isDataMethod(e){return e&&["POST","PUT","DELETE","PATCH"].includes(e.toUpperCase())}exports.info={key:"httpclient",title:"HttpClient",link:"https://docs.microsoft.com/en-us/dotnet/api/system.net.http.httpclient",description:".NET Standard HTTP Client"},exports.default=handler;
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.info=void 0;var tslib_1=require("tslib"),code_builder_1=require("../../helpers/code-builder"),__1=require("../.."),code_helpers_1=require("../../helpers/code-helpers"),utils_1=require("../../../../utils"),generator_1=require("../../../generator"),constants_1=require("../../helpers/constants"),types_1=require("../../../../../types"),redoc_lib_1=require("../../../../../redoc-lib"),object_1=require("../../../../../redoc-lib/src/utils/object"),handler=function(e,t,s){var a,n,i,r,p=s.target,o=s.client,u=Object.assign({indent:" ",withWrapper:!0},t),l=new code_builder_1.CodeBuilder({indentation:u.indent,variablesPrefix:u.variablesPrefix,capitalize:!0,lang:constants_1.Lang.CSHARP}),c=formatHttpMethod(e.method);if(u.withComments&&addComments(l),u.withWrapper&&(l.push("using System;"),l.push("using System.Net.Http;"),l.push("using System.Threading.Tasks;"),(_(types_1.MediaTypes.JSON)||_(types_1.MediaTypes.XML)||e.basicAuth)&&l.push("using System.Text;"),(_(types_1.MediaTypes.URL_ENCODED)||(null===(a=e.securityOAuth2ExtraCalls)||void 0===a?void 0:a.length))&&l.push("using System.Collections.Generic;"),(_(types_1.MediaTypes.JSON)||(null===(n=e.securityOAuth2ExtraCalls)||void 0===n?void 0:n.length))&&l.push("using System.Text.Json;"),g()&&l.push("using System.IO;"),(g()||e.basicAuth)&&l.push("using System.Net.Http.Headers;"),l.blank(),l.push("public class Program"),l.push("{"),l.push(1,"public static async Task Main()"),l.push(1,"{")),null===(i=e.securityOAuth2ExtraCalls)||void 0===i?void 0:i.length){var h=new __1.HTTPSnippet(null===(r=e.securityOAuth2ExtraCalls)||void 0===r?void 0:r[0]).convert(p,o,(0,tslib_1.__assign)((0,tslib_1.__assign)({},u),{withImports:!1,withWrapper:!1,withComments:!1,variablesPrefix:"oauth2"}));l.push(h),l.push(2,"var oauth2Response = await oauth2Request.Content.ReadAsStringAsync();"),l.push(2,"JObject inputJObject = JObject.Parse(oauth2Response);"),l.push(2,'var accessToken = inputJObject["access_token"].ToString();'),l.blank()}var d=Object.keys(e.allHeaders).filter((function(e){switch(e.toLowerCase()){case"content-type":case"content-length":case"accept-encoding":return!1;default:return!0}}));if(d.length?(l.push(2,"System.Net.Http.HttpClient client = new()"),l.push(2,"{"),l.push(3,"DefaultRequestHeaders ="),l.push(3,"{"),d.forEach((function(t){var s;l.push(4,'{"%s", %s},',t,(null===(s=e.securityOAuth2ExtraCalls)||void 0===s?void 0:s.length)?'"Bearer " + accessToken':'"'+e.allHeaders[t]+'"')})),l.push(3,"}"),l.push(2,"};")):l.push(2,"System.Net.Http.HttpClient client = new();"),l.blank(),e.basicAuth){var y=e.basicAuth,m=y.username,b=y.password;l.push(2,'string base64String = Convert.ToBase64String(Encoding.ASCII.GetBytes("'+m+":"+b+'"));'),l.push(2,'client.DefaultRequestHeaders.Authorization = new AuthenticationHeaderValue(@"Basic", base64String);'),l.blank()}if(e.postData)switch((0,utils_1.normalizeMimeType)(e.postData.mimeType)){case types_1.MediaTypes.URL_ENCODED:e.postData.params&&(l.blank(),l.push(2,"List<KeyValuePair<string, string>> postData = new List<KeyValuePair<string, string>>();"),e.postData.params.forEach((function(e){l.push(2,'postData.Add(new KeyValuePair<string, string>("%s", "%s"));',e.name,e.value)})),l.blank());break;case types_1.MediaTypes.MULTIPART:e.postData.params&&(l.blank(),l.push(2,"MultipartFormDataContent postData = new MultipartFormDataContent();"),e.postData.params.forEach((function(e){l.push(2,'postData.Add(new StringContent("%s"), "%s");',e.value,e.name)})));break;case types_1.MediaTypes.JSON:e.postData.jsonObj&&(l.push(2,"string json = JsonSerializer.Serialize(new"),l.push(2,"{"),D(e.postData.jsonObj,3),l.push(2,"});"),l.blank(),l.push(2,'using StringContent postData = new(json, Encoding.UTF8, "%s");',e.postData.mimeType));break;case types_1.MediaTypes.XML:e.postData.text&&(e.postData.text.trim().split("\n").forEach((function(e,t){var s=(0===t?'string xml = @"':"")+e.replace(/"/g,'""');l.push(0===t?2:3,s)})),l.push(2,'";'),l.push(2,'using StringContent postData = new StringContent(xml, Encoding.UTF8, "%s");',e.postData.mimeType))}else g()&&(l.push(2,"var ms = new MemoryStream();"),l.push(2,"var postData = new StreamContent(ms);"),l.push(2,'postData.Headers.ContentType = new MediaTypeHeaderValue("application/octet-stream");'));return(0,code_helpers_1.printUrlVariablesDeclarations)(e,l,3),l.push(2,"using HttpResponseMessage %s = await client.%sAsync(%s%s);",l.var("request"),c,(0,code_helpers_1.buildUrlExpression)(e,l),u.withImports?isDataMethod(e.method)?(0,utils_1.normalizeMimeType)(e.postData&&e.postData.mimeType)===types_1.MediaTypes.URL_ENCODED?", new FormUrlEncodedContent(postData)":"delete"===e.method?"":e.postData&&e.postData.params||g()?", postData":", null":"":", new FormUrlEncodedContent(postData)"),u.withWrapper&&(l.push(2,"string response = await request.Content.ReadAsStringAsync();"),l.blank(),l.push(2,"Console.WriteLine(response);"),l.push(1,"}"),l.push("}")),l.join();function _(t){return e.postData&&(0,utils_1.normalizeMimeType)(e.postData.mimeType)===t}function g(){return e.headersObj&&e.headersObj["Content-Type"]===types_1.MediaTypes.OCTET_STREAM}function T(e,t){e.forEach((function(s,a){var n=!(0,redoc_lib_1.isLastInArray)(e,a);Array.isArray(s)?T(s,t+1):(0,object_1.checkIfIsObject)(s)?(l.push(t+1,"new {"),D(s,t+2),l.push(t+1,"}%s",n?",":"")):l.push(t+1,'"%s"%s',s,n?",":"")})),l.push(t,"},")}function D(e,t){for(var s=0,a=Object.entries(e);s<a.length;s++){var n=a[s],i=n[0],r=n[1],p=!(0,redoc_lib_1.isLastProperty)(e,i);if(Array.isArray(r))l.push(t,"%s = new[] {",i),T(r,t);else if((0,object_1.checkIfIsObject)(r)){var o=(0,utils_1.isEmptyObject)(r);l.push(t,"%s = new %s",i,o?"{},":"{"),o||(D(r,t+1),l.push(t,"}%s",p?",":""))}else l.push(t,'%s = "%s"%s',i,r,p?",":"")}}};function addComments(e){e.push("// Requires >= .NET 5"),e.blank()}function formatHttpMethod(e){return(0,generator_1.capitalizeFirst)(e.toLowerCase())}function isDataMethod(e){return e&&["POST","PUT","DELETE","PATCH"].includes(e.toUpperCase())}exports.info={key:"httpclient",title:"HttpClient",link:"https://docs.microsoft.com/en-us/dotnet/api/system.net.http.httpclient",description:".NET Standard HTTP Client"},exports.default=handler;
2
2
  //# sourceMappingURL=httpclient.js.map
@@ -0,0 +1,10 @@
1
+ import type { LanguageHandler } from '../..';
2
+ import type { CSharpNewtonsoftCodeSampleConfig } from '../../../types';
3
+ declare const handler: LanguageHandler<CSharpNewtonsoftCodeSampleConfig['options']>;
4
+ export declare const info: {
5
+ key: string;
6
+ title: string;
7
+ link: string;
8
+ description: string;
9
+ };
10
+ export default handler;
@@ -0,0 +1,2 @@
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.info=void 0;var tslib_1=require("tslib"),stringify_object_1=(0,tslib_1.__importDefault)(require("stringify-object")),code_builder_1=require("../../helpers/code-builder"),__1=require("../.."),code_helpers_1=require("../../helpers/code-helpers"),utils_1=require("../../../../utils"),generator_1=require("../../../generator"),constants_1=require("../../helpers/constants"),types_1=require("../../../../../types"),handler=function(e,t,s){var a,n,i,r,o=s.target,p=s.client,u=Object.assign({indent:" ",withWrapper:!0},t),l=new code_builder_1.CodeBuilder({indentation:u.indent,variablesPrefix:u.variablesPrefix,capitalize:!0,lang:constants_1.Lang.CSHARPNEWTONSOFT}),c=formatHttpMethod(e.method);if(u.withComments&&addComments(l),u.withWrapper&&(l.push("using System;"),l.push("using System.Net.Http;"),l.push("using System.Threading.Tasks;"),(g(types_1.MediaTypes.JSON)||g(types_1.MediaTypes.XML)||e.basicAuth)&&l.push("using System.Text;"),(g(types_1.MediaTypes.URL_ENCODED)||(null===(a=e.securityOAuth2ExtraCalls)||void 0===a?void 0:a.length))&&l.push("using System.Collections.Generic;"),(g(types_1.MediaTypes.JSON)||(null===(n=e.securityOAuth2ExtraCalls)||void 0===n?void 0:n.length))&&l.push("using Newtonsoft.Json.Linq;"),T()&&l.push("using System.IO;"),(T()||e.basicAuth)&&l.push("using System.Net.Http.Headers;"),l.blank(),l.push("public class Program"),l.push("{"),l.push(1,"private readonly IHttpClientFactory _httpClientFactory;"),l.push(1,"public static async Task Main(string[] args)"),l.push(1,"{"),l.push(2,"var client = _httpClientFactory.CreateClient();")),null===(i=e.securityOAuth2ExtraCalls)||void 0===i?void 0:i.length){var h=new __1.HTTPSnippet(null===(r=e.securityOAuth2ExtraCalls)||void 0===r?void 0:r[0]).convert(o,p,(0,tslib_1.__assign)((0,tslib_1.__assign)({},u),{withImports:!1,withWrapper:!1,withComments:!1,variablesPrefix:"oauth2"}));l.push(h),l.push(2,"var oauth2Response = await oauth2Request.Content.ReadAsStringAsync();"),l.push(2,"JObject inputJObject = JObject.Parse(oauth2Response);"),l.push(2,'var accessToken = inputJObject["access_token"].ToString();'),l.blank()}var d=Object.keys(e.allHeaders).filter((function(e){switch(e.toLowerCase()){case"content-type":case"content-length":case"accept-encoding":return!1;default:return!0}}));if(d.length&&d.forEach((function(t){var s;l.push(2,'client.DefaultRequestHeaders.Add("%s", %s);',t,(null===(s=e.securityOAuth2ExtraCalls)||void 0===s?void 0:s.length)?'"Bearer " + accessToken':'"'+e.allHeaders[t]+'"')})),e.basicAuth){var m=e.basicAuth,y=m.username,_=m.password;l.push(2,'var base64String = Convert.ToBase64String(Encoding.ASCII.GetBytes("'+y+":"+_+'"));'),l.push(2,'client.DefaultRequestHeaders.Authorization = new AuthenticationHeaderValue(@"Basic", base64String);')}if(e.postData)switch((0,utils_1.normalizeMimeType)(e.postData.mimeType)){case types_1.MediaTypes.URL_ENCODED:e.postData.params&&(l.blank(),l.push(2,"List<KeyValuePair<string, string>> postData = new List<KeyValuePair<string, string>>();"),e.postData.params.forEach((function(e){l.push(2,'postData.Add(new KeyValuePair<string, string>("%s", "%s"));',e.name,e.value)})),l.blank());break;case types_1.MediaTypes.MULTIPART:e.postData.params&&(l.blank(),l.push(2,"MultipartFormDataContent postData = new MultipartFormDataContent();"),e.postData.params.forEach((function(e){l.push(2,'postData.Add(new StringContent("%s"), "%s");',e.value,e.name)})));break;case types_1.MediaTypes.JSON:e.postData.jsonObj&&(l.push(2,'JObject json = JObject.Parse(@"'+(0,code_helpers_1.addIndentation)((0,stringify_object_1.default)(e.postData.jsonObj,{indent:u.indent,inlineCharacterLimit:25}).replace(/"/g,'""'),{level:3,firstLine:!1})+'");'),l.push(2,'var postData = new StringContent(json.ToString(), Encoding.UTF8, "%s");',e.postData.mimeType));break;case types_1.MediaTypes.XML:e.postData.text&&(e.postData.text.trim().split("\n").forEach((function(e,t){var s=(0===t?'string xml = @"':"")+e.replace(/"/g,'""');l.push(0===t?3:4,s)})),l.push(2,'";'),l.push(2,'var postData = new StringContent(xml, Encoding.UTF8, "%s");',e.postData.mimeType))}else T()&&(l.push(2,"var ms = new MemoryStream();"),l.push(2,"var postData = new StreamContent(ms);"),l.push(2,'postData.Headers.ContentType = new MediaTypeHeaderValue("application/octet-stream");'));return(0,code_helpers_1.printUrlVariablesDeclarations)(e,l,3),l.push(2,"var %s = await client.%sAsync(%s%s);",l.var("request"),c,(0,code_helpers_1.buildUrlExpression)(e,l),u.withImports?isDataMethod(e.method)?(0,utils_1.normalizeMimeType)(e.postData&&e.postData.mimeType)===types_1.MediaTypes.URL_ENCODED?", new FormUrlEncodedContent(postData)":"delete"===e.method?"":e.postData&&e.postData.params||T()?", postData":", null":"":", new FormUrlEncodedContent(postData)"),u.withWrapper&&(l.push(2,"var response = await request.Content.ReadAsStringAsync();"),l.blank(),l.push(2,"Console.WriteLine(response);"),l.push(1,"}"),l.push("}")),l.join();function g(t){return e.postData&&(0,utils_1.normalizeMimeType)(e.postData.mimeType)===t}function T(){return e.headersObj&&e.headersObj["Content-Type"]===types_1.MediaTypes.OCTET_STREAM}};function addComments(e){e.push("/*"),e.push(" * Requires >= .NET 5"),e.push(" *"),e.push(' * Requires package "Newtonsoft.Json" >= 9.01'),e.push(" * See here for installation details:"),e.push(" * https://www.newtonsoft.com/json"),e.push(" */"),e.blank()}function formatHttpMethod(e){return(0,generator_1.capitalizeFirst)(e.toLowerCase())}function isDataMethod(e){return e&&["POST","PUT","DELETE","PATCH"].includes(e.toUpperCase())}exports.info={key:"httpclient",title:"HttpClient",link:"https://docs.microsoft.com/en-us/dotnet/api/system.net.http.httpclient",description:".NET Standard HTTP Client"},exports.default=handler;
2
+ //# sourceMappingURL=httpclient.js.map
@@ -0,0 +1,10 @@
1
+ declare const _default: {
2
+ info: {
3
+ key: string;
4
+ title: string;
5
+ extname: string;
6
+ default: string;
7
+ };
8
+ httpclient: import("../..").LanguageHandler<import("../../..").BasicLanguageOptions | undefined>;
9
+ };
10
+ export default _default;
@@ -0,0 +1,2 @@
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var tslib_1=require("tslib"),httpclient_1=(0,tslib_1.__importDefault)(require("./httpclient"));exports.default={info:{key:"csharpNewtonsoft",title:"CSharpNewtonsoft",extname:".cs",default:"httpclient"},httpclient:httpclient_1.default};
2
+ //# sourceMappingURL=index.js.map
@@ -66,6 +66,15 @@ declare const targets: {
66
66
  };
67
67
  httpclient: import("..").LanguageHandler<import("../..").BasicLanguageOptions | undefined>;
68
68
  };
69
+ csharpNewtonsoft: {
70
+ info: {
71
+ key: string;
72
+ title: string;
73
+ extname: string;
74
+ default: string;
75
+ };
76
+ httpclient: import("..").LanguageHandler<import("../..").BasicLanguageOptions | undefined>;
77
+ };
69
78
  go: {
70
79
  info: {
71
80
  key: string;
@@ -1,2 +1,2 @@
1
- "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var tslib_1=require("tslib"),javascript_1=(0,tslib_1.__importDefault)(require("./javascript")),node_1=(0,tslib_1.__importDefault)(require("./node")),python_1=(0,tslib_1.__importDefault)(require("./python")),shell_1=(0,tslib_1.__importDefault)(require("./shell")),java8_1=(0,tslib_1.__importDefault)(require("./java8")),java_1=(0,tslib_1.__importDefault)(require("./java")),csharp_1=(0,tslib_1.__importDefault)(require("./csharp")),go_1=(0,tslib_1.__importDefault)(require("./go")),php_1=(0,tslib_1.__importDefault)(require("./php")),ruby_1=(0,tslib_1.__importDefault)(require("./ruby")),r_1=(0,tslib_1.__importDefault)(require("./r")),targets={javascript:javascript_1.default,node:node_1.default,python:python_1.default,shell:shell_1.default,java8:java8_1.default,java:java_1.default,csharp:csharp_1.default,go:go_1.default,php:php_1.default,ruby:ruby_1.default,r:r_1.default};exports.default=targets;
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var tslib_1=require("tslib"),javascript_1=(0,tslib_1.__importDefault)(require("./javascript")),node_1=(0,tslib_1.__importDefault)(require("./node")),python_1=(0,tslib_1.__importDefault)(require("./python")),shell_1=(0,tslib_1.__importDefault)(require("./shell")),java8_1=(0,tslib_1.__importDefault)(require("./java8")),java_1=(0,tslib_1.__importDefault)(require("./java")),csharp_1=(0,tslib_1.__importDefault)(require("./csharp")),csharpNewtonsoft_1=(0,tslib_1.__importDefault)(require("./csharpNewtonsoft")),go_1=(0,tslib_1.__importDefault)(require("./go")),php_1=(0,tslib_1.__importDefault)(require("./php")),ruby_1=(0,tslib_1.__importDefault)(require("./ruby")),r_1=(0,tslib_1.__importDefault)(require("./r")),targets={javascript:javascript_1.default,node:node_1.default,python:python_1.default,shell:shell_1.default,java8:java8_1.default,java:java_1.default,csharp:csharp_1.default,csharpNewtonsoft:csharpNewtonsoft_1.default,go:go_1.default,php:php_1.default,ruby:ruby_1.default,r:r_1.default};exports.default=targets;
2
2
  //# sourceMappingURL=index.js.map
@@ -1,4 +1,4 @@
1
- export declare type Languages = 'JavaScript' | 'Node.js' | 'curl' | 'Java8+Apache' | 'Java' | 'Python' | 'Go' | 'PHP' | 'C#' | 'Ruby' | 'R';
1
+ export declare type Languages = 'JavaScript' | 'Node.js' | 'curl' | 'Java8+Apache' | 'Java' | 'Python' | 'Go' | 'PHP' | 'C#' | 'C#+Newtonsoft' | 'Ruby' | 'R';
2
2
  export interface BasicLanguageOptions {
3
3
  indent?: string;
4
4
  withImports?: boolean;
@@ -39,6 +39,9 @@ export interface JavaCodeSampleConfig extends CodeSampleBasicConfig {
39
39
  export interface CSharpCodeSampleConfig extends CodeSampleBasicConfig {
40
40
  lang: 'C#';
41
41
  }
42
+ export interface CSharpNewtonsoftCodeSampleConfig extends CodeSampleBasicConfig {
43
+ lang: 'C#+Newtonsoft';
44
+ }
42
45
  export interface PHPCodeSampleConfig extends CodeSampleBasicConfig {
43
46
  lang: 'PHP';
44
47
  }
@@ -48,7 +51,7 @@ export interface RubyCodeSampleConfig extends CodeSampleBasicConfig {
48
51
  export interface RCodeSampleConfig extends CodeSampleBasicConfig {
49
52
  lang: 'R';
50
53
  }
51
- export declare type CodeSampleConfig = cURULCodeSampleConfig | JavaScriptCodeSampleConfig | NodeJsCodeSampleConfig | PythonCodeSampleConfig | Java8CodeSampleConfig | JavaCodeSampleConfig | CSharpCodeSampleConfig | PHPCodeSampleConfig | GoCodeSampleConfig | RubyCodeSampleConfig | RCodeSampleConfig;
54
+ export declare type CodeSampleConfig = cURULCodeSampleConfig | JavaScriptCodeSampleConfig | NodeJsCodeSampleConfig | PythonCodeSampleConfig | Java8CodeSampleConfig | JavaCodeSampleConfig | CSharpCodeSampleConfig | CSharpNewtonsoftCodeSampleConfig | PHPCodeSampleConfig | GoCodeSampleConfig | RubyCodeSampleConfig | RCodeSampleConfig;
52
55
  /**
53
56
  * Code Samples Generator rules
54
57
  * - Reference docs always displays all user custom x-code-samples
@@ -44,3 +44,5 @@ export declare function escapeHTMLAttrChars(str: string): string;
44
44
  export declare function unescapeHTMLChars(str: string): string;
45
45
  export declare function sanitizeItemId(id: string): string;
46
46
  export declare function getSchemaTitle(pointer: string, title?: string): string;
47
+ export declare function isLastInArray(arr: Array<unknown>, index: number): boolean;
48
+ export declare function isLastProperty(obj: Record<string, unknown>, key: string): boolean;
@@ -1,2 +1,2 @@
1
- import{__assign,__spreadArray}from"tslib";import slugify from"slugify";import{format,parse}from"url";import{ZERO_BREAKPOINT}from"./media-css";import{isNamedDefinition}from"./openapi";import JsonPointer from"./JsonPointer";export function mapWithLast(e,r){for(var t=[],n=0;n<e.length-1;n++)t.push(r(e[n],!1));return 0!==e.length&&t.push(r(e[e.length-1],!0)),t}export function mapValues(e,r){var t={};for(var n in e)Object.prototype.hasOwnProperty.call(e,n)&&(t[n]=r(e[n],n,e));return t}export function flattenByProp(e,r){var t=[],n=function(e){for(var i=0,a=e;i<a.length;i++){var o=a[i];t.push(o),o[r]&&n(o[r])}};return n(e),t}export function stripTrailingSlash(e){return e.endsWith("/")?e.substring(0,e.length-1):e}export function isNumeric(e){return!isNaN(parseFloat(e))&&isFinite(e)}export function appendToMdHeading(e,r,t){var n=new RegExp("(^|\\n)#\\s?"+r+"\\s*\\n","i"),i=new RegExp("((\\n|^)#\\s*"+r+"\\s*(\\n|$)(?:.|\\n)*?)(\\n#|$)","i");if(n.test(e))return e.replace(i,"$1\n\n"+t+"\n$4");var a=""===e||e.endsWith("\n\n")?"":e.endsWith("\n")?"\n":"\n\n";return""+e+a+"# "+r+"\n\n"+t}export var mergeObjects=function(e){for(var r=[],t=1;t<arguments.length;t++)r[t-1]=arguments[t];if(!r.length)return e;var n=r.shift();return void 0===n?e:(isMergeableObject(e)&&isMergeableObject(n)&&Object.keys(n).forEach((function(r){var t;isMergeableObject(n[r])?(e[r]||(e[r]={}),["string","number"].includes(typeof e[r])&&(n[r][ZERO_BREAKPOINT]||0===n[r][ZERO_BREAKPOINT]||console.warn('Theme resolver: using default value of "'+e[r]+'" for "'+r+'". This is not recommended. Prefer adding default value by providing "'+ZERO_BREAKPOINT+'" property to '+JSON.stringify(n[r])+"."),e[r]=((t={})[ZERO_BREAKPOINT]=e[r],t)),mergeObjects(e[r],n[r])):e[r]=n[r]})),mergeObjects.apply(void 0,__spreadArray([e],r,!1)))};export var isObject=function(e){return null!==e&&"object"==typeof e};export var isArrayOfObjects=function(e){return Array.isArray(e)&&e.some((function(e){return isObject(e)}))};export var deleteEmptyArrayItem=function(e){return e.filter((function(e){return!!e}))};export var isMergeableObject=function(e){return isObject(e)&&!Array.isArray(e)};export function safeSlugify(e){return slugify(e)||e.toString().toLowerCase().replace(/\s+/g,"-").replace(/&/g,"-and-").replace(/--+/g,"-").replace(/^-+/,"").replace(/-+$/,"")}export function isAbsoluteUrl(e){return/(?:^[a-z][a-z0-9+.-]*:|\/\/)/i.test(e)}export function resolveUrl(e,r){var t;if(r.startsWith("//"))t=""+(parse(e).protocol||"https:")+r;else if(isAbsoluteUrl(r))t=r;else if(r.startsWith("/")){var n=parse(e);t=format(__assign(__assign({},n),{pathname:r}))}else t=stripTrailingSlash(e)+"/"+r;return stripTrailingSlash(t)}export function getBasePath(e){try{return parseURL(e).pathname}catch(r){return e}}export function titleize(e){return e.charAt(0).toUpperCase()+e.slice(1)}export function removeQueryStringAndHash(e){try{var r=parseURL(e);return r.search="",r.hash="",r.toString()}catch(r){return e}}function parseURL(e){return"undefined"==typeof URL?new(require("url").URL)(e):new URL(e)}export function escapeHTMLAttrChars(e){return e.replace(/["\\]/g,"\\$&")}export function unescapeHTMLChars(e){return e.replace(/&#(\d+);/g,(function(e,r){return String.fromCharCode(parseInt(r,10))})).replace(/&amp;/g,"&").replace(/&quot;/g,'"')}export function sanitizeItemId(e){return e&&e.replace(/#/g,"_")}export function getSchemaTitle(e,r){return r||isNamedDefinition(e)&&JsonPointer.baseName(e)||""}
1
+ import{__assign,__spreadArray}from"tslib";import slugify from"slugify";import{format,parse}from"url";import{ZERO_BREAKPOINT}from"./media-css";import{isNamedDefinition}from"./openapi";import JsonPointer from"./JsonPointer";export function mapWithLast(r,e){for(var t=[],n=0;n<r.length-1;n++)t.push(e(r[n],!1));return 0!==r.length&&t.push(e(r[r.length-1],!0)),t}export function mapValues(r,e){var t={};for(var n in r)Object.prototype.hasOwnProperty.call(r,n)&&(t[n]=e(r[n],n,r));return t}export function flattenByProp(r,e){var t=[],n=function(r){for(var i=0,a=r;i<a.length;i++){var o=a[i];t.push(o),o[e]&&n(o[e])}};return n(r),t}export function stripTrailingSlash(r){return r.endsWith("/")?r.substring(0,r.length-1):r}export function isNumeric(r){return!isNaN(parseFloat(r))&&isFinite(r)}export function appendToMdHeading(r,e,t){var n=new RegExp("(^|\\n)#\\s?"+e+"\\s*\\n","i"),i=new RegExp("((\\n|^)#\\s*"+e+"\\s*(\\n|$)(?:.|\\n)*?)(\\n#|$)","i");if(n.test(r))return r.replace(i,"$1\n\n"+t+"\n$4");var a=""===r||r.endsWith("\n\n")?"":r.endsWith("\n")?"\n":"\n\n";return""+r+a+"# "+e+"\n\n"+t}export var mergeObjects=function(r){for(var e=[],t=1;t<arguments.length;t++)e[t-1]=arguments[t];if(!e.length)return r;var n=e.shift();return void 0===n?r:(isMergeableObject(r)&&isMergeableObject(n)&&Object.keys(n).forEach((function(e){var t;isMergeableObject(n[e])?(r[e]||(r[e]={}),["string","number"].includes(typeof r[e])&&(n[e][ZERO_BREAKPOINT]||0===n[e][ZERO_BREAKPOINT]||console.warn('Theme resolver: using default value of "'+r[e]+'" for "'+e+'". This is not recommended. Prefer adding default value by providing "'+ZERO_BREAKPOINT+'" property to '+JSON.stringify(n[e])+"."),r[e]=((t={})[ZERO_BREAKPOINT]=r[e],t)),mergeObjects(r[e],n[e])):r[e]=n[e]})),mergeObjects.apply(void 0,__spreadArray([r],e,!1)))};export var isObject=function(r){return null!==r&&"object"==typeof r};export var isArrayOfObjects=function(r){return Array.isArray(r)&&r.some((function(r){return isObject(r)}))};export var deleteEmptyArrayItem=function(r){return r.filter((function(r){return!!r}))};export var isMergeableObject=function(r){return isObject(r)&&!Array.isArray(r)};export function safeSlugify(r){return slugify(r)||r.toString().toLowerCase().replace(/\s+/g,"-").replace(/&/g,"-and-").replace(/--+/g,"-").replace(/^-+/,"").replace(/-+$/,"")}export function isAbsoluteUrl(r){return/(?:^[a-z][a-z0-9+.-]*:|\/\/)/i.test(r)}export function resolveUrl(r,e){var t;if(e.startsWith("//"))t=""+(parse(r).protocol||"https:")+e;else if(isAbsoluteUrl(e))t=e;else if(e.startsWith("/")){var n=parse(r);t=format(__assign(__assign({},n),{pathname:e}))}else t=stripTrailingSlash(r)+"/"+e;return stripTrailingSlash(t)}export function getBasePath(r){try{return parseURL(r).pathname}catch(e){return r}}export function titleize(r){return r.charAt(0).toUpperCase()+r.slice(1)}export function removeQueryStringAndHash(r){try{var e=parseURL(r);return e.search="",e.hash="",e.toString()}catch(e){return r}}function parseURL(r){return"undefined"==typeof URL?new(require("url").URL)(r):new URL(r)}export function escapeHTMLAttrChars(r){return r.replace(/["\\]/g,"\\$&")}export function unescapeHTMLChars(r){return r.replace(/&#(\d+);/g,(function(r,e){return String.fromCharCode(parseInt(e,10))})).replace(/&amp;/g,"&").replace(/&quot;/g,'"')}export function sanitizeItemId(r){return r&&r.replace(/#/g,"_")}export function getSchemaTitle(r,e){return e||isNamedDefinition(r)&&JsonPointer.baseName(r)||""}export function isLastInArray(r,e){return e===r.length-1}export function isLastProperty(r,e){var t=Object.keys(r);return t.indexOf(e)===t.length-1}
2
2
  //# sourceMappingURL=helpers.js.map
@@ -0,0 +1,3 @@
1
+ export declare function objectHas(object: GenericObject, path: string | Array<string>): boolean;
2
+ export declare function objectSet(object: GenericObject, path: string | Array<string>, value: unknown): void;
3
+ export declare function checkIfIsObject(item: unknown): item is Record<string, unknown>;
@@ -0,0 +1,2 @@
1
+ export function objectHas(t,r){var e=r;return"string"==typeof r&&(e=r.split(".")),e.every((function(r){return"object"==typeof t&&null!==t&&r in t&&(t=t[r],!0)}))}export function objectSet(t,r,e){var n,o=r;"string"==typeof r&&(o=r.split("."));for(var c=o.length-1,i=0;i<c;++i){var f=o[i];t=null!==(n=t[f])&&void 0!==n?n:t[f]={}}t[o[c]]=e}export function checkIfIsObject(t){return"object"==typeof t&&!Array.isArray(t)&&null!==t}
2
+ //# sourceMappingURL=object.js.map
@@ -1,2 +1,2 @@
1
- import{__assign}from"tslib";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,t){var a,r,i,n,s,o,l,u,p,d,c=t.exampleName,m=void 0===c?"":c,v=t.skipOptionalParameters,h=void 0!==v&&v,f=t.withOAuth2Call,y=void 0!==f&&f,g=t.spec,O=t.generatedPayloadSamplesMaxDepth,S=void 0===O?8:O,T=t.pathParams,_=void 0===T?{}:T,C=t.properties,E=void 0===C?{}:C,b=getSecurityData(null===(a=e.security)||void 0===a?void 0:a[0],y),A=b.securityHeaders,P=b.securityCookies,R=b.securityQueries,w=b.securityOAuth2ExtraCalls,D=b.basicAuth,k=null===(i=null===(r=e.requestBody)||void 0===r?void 0:r.content)||void 0===i?void 0:i.active,q={skipNonRequired:h,skipReadOnly:!0,maxSampleDepth:S},H={path:toJS(null===(n=null==e?void 0:e.requestValues)||void 0===n?void 0:n.path),cookie:toJS(null===(s=null==e?void 0:e.requestValues)||void 0===s?void 0:s.cookie),header:toJS(null===(o=null==e?void 0:e.requestValues)||void 0===o?void 0:o.header),query:toJS(null===(l=null==e?void 0:e.requestValues)||void 0===l?void 0:l.query),body:toJS(null===(u=null==e?void 0:e.requestValues)||void 0===u?void 0:u.body)},M=!1,x=e.parameters.filter((function(e){return"header"===e.in})).filter((function(e){return!(h&&!e.required)})).map((function(e){var t;return{name:e.name,value:(null===(t=H.header)||void 0===t?void 0:t[e.name])||getParameterValue("header",e.name)||serializeParameterValue(e,Sampler.sample(e.schema.rawSchema,q,g))}})).map((function(e){return(null==k?void 0:k.name)&&"content-type"===e.name.toLowerCase()&&(M=!0,e.value=k.name),e})).concat(A);!M&&(null==k?void 0:k.name)&&x.unshift({name:"Content-Type",value:null==k?void 0:k.name});var N,U=e.parameters.filter((function(e){return"cookie"===e.in})).filter((function(e){return!(h&&!e.required)})).map((function(e){return parseQueryString(serializeParameterValue(e,Sampler.sample(e.schema.rawSchema,q,g)))})).reduce((function(e,t){for(var a,r=0,i=Object.entries(t);r<i.length;r++){var n=i[r],s=n[0],o=n[1];e.push({name:s,value:String((null===(a=H.cookie)||void 0===a?void 0:a[s])||o)})}return e}),[]).concat(P),j=e.parameters.filter((function(e){return"query"===e.in})).filter((function(e){return!(h&&!e.required)})).map((function(e){return parseQueryString(serializeParameterValue(e,Sampler.sample(e.schema.rawSchema,q,g)))})).reduce((function(e,t){for(var a,r,i,n=0,s=Object.entries(t);n<s.length;n++){var o=s[n],l=o[0],u=o[1];e.push({name:l,value:isArrayOfObjects(null===(a=H.query)||void 0===a?void 0:a[l])&&JSON.stringify(deleteEmptyArrayItem(null===(r=H.query)||void 0===r?void 0:r[l]))||String((null===(i=H.query)||void 0===i?void 0:i[l])||u)})}return e}),[]).concat(R),z=null===(p=e.activeServer)||void 0===p?void 0:p.url.replace(/\/$/,""),V=e.path.replace(/^\//,""),I=z.split("#")[0]+"/"+V,J=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=H.path)||void 0===a?void 0:a[i])||_[i]||getParameterValue(r,i),e}),{}),L=null===(d=null==k?void 0:k.examples)||void 0===d?void 0:d[m],Y=(null==k?void 0:k.examples)||{},Q=Object.values(Y)[0],B=H.body||(null==L?void 0:L.value)||(null==Q?void 0:Q.value)||(null==k?void 0:k.schema)&&Sampler.sample(null==k?void 0:k.schema.rawSchema,q,g),K=null==k?void 0:k.name.toLowerCase(),F=[];switch(normalizeMimeType(K)){case MediaTypes.JSON:case MediaTypes.XML:N=JSON.stringify(getDataRequest(B,E));break;case MediaTypes.URL_ENCODED:case MediaTypes.MULTIPART:N=stringifyQueryString(getDataRequest(B,E)),F=objectToHarParams(getDataRequest(B,E));break;default:N=String(B||"")}var G=N?{mimeType:(null==k?void 0:k.name)||MediaTypes.OCTET_STREAM,text:N,params:F}:void 0,X=e.responses.map((function(e){return e.code}));return{method:e.httpVerb,url:I,httpVersion:"HTTP/1.1",cookies:U,headers:x,queryString:j,postData:G,headersSize:-1,bodySize:-1,securityOAuth2ExtraCalls:w,basicAuth:D,pathParameters:J,serverVariables:e.activeServer.variables,allResponseCodes:X}}var defaultOptions={withImports:!0,withComments:!1},langToSnippetConfig={curl:{code:"shell",defaultTarget:"curl",defaultOptions:__assign(__assign({},defaultOptions),{short:!0})},JavaScript:{code:"javascript",defaultTarget:"fetch",defaultOptions:__assign(__assign({},defaultOptions),{withImports:!1})},"Node.js":{code:"node",defaultTarget:"fetch",defaultOptions:__assign({},defaultOptions)},Python:{code:"python",defaultTarget:"requests",defaultOptions:__assign({},defaultOptions)},"Java8+Apache":{code:"java8",defaultTarget:"apachehttp",defaultOptions:__assign({},defaultOptions)},Java:{code:"java",defaultTarget:"httpclient",defaultOptions:__assign({},defaultOptions)},"C#":{code:"csharp",defaultTarget:"httpclient",defaultOptions:__assign({},defaultOptions)},Go:{code:"go",defaultTarget:"http.DefaultClient",defaultOptions:__assign({},defaultOptions)},PHP:{code:"php",defaultTarget:"curl",defaultOptions:__assign({},defaultOptions)},Ruby:{code:"ruby",defaultTarget:"net::http",defaultOptions:__assign({},defaultOptions)},R:{code:"r",defaultTarget:"httr",defaultOptions:__assign({},defaultOptions)}};export function getCodeSample(e){var t=e.lang,a=e.operation,r=e.exampleName,i=e.pathParams,n=e.properties,s=e.options,o=void 0===s?{}:s;try{var l=mapOperationToHAR(a,{exampleName:r,pathParams:i,properties:n,skipOptionalParameters:o.skipOptionalParameters,withOAuth2Call:o.withOAuth2Call,spec:o.spec,generatedPayloadSamplesMaxDepth:o.generatedPayloadSamplesMaxDepth}),u=new HTTPSnippet(l);return langToSnippetConfig[t]?u.convert(langToSnippetConfig[t].code,langToSnippetConfig[t].defaultTarget,__assign(__assign({},langToSnippetConfig[t].defaultOptions),o)):"Language is not supported."}catch(e){return console.error(e),"Failed to generate code sample."}}function getSecurityData(e,t){for(var a,r,i,n,s={securityHeaders:[],securityCookies:[],securityQueries:[],securityOAuth2ExtraCalls:[],basicAuth:void 0},o=0,u=(null==e?void 0:e.schemes)||[];o<u.length;o++){var p=u[o],d=getSecurityDetails(p.id);switch(p.type){case"openIdConnect":null===(a=s.securityHeaders)||void 0===a||a.push({name:"Authorization",value:"Bearer <YOUR_TOKEN_HERE>"});break;case"oauth2":var c=d.token?(d.token.token_type||"Bearer")+" "+d.token.access_token:"Bearer <YOUR_TOKEN_HERE>";p.flows.clientCredentials&&t?s.securityOAuth2ExtraCalls.push(getOAuth2ClientCredsCallHar(p.flows.clientCredentials,p.scopes,d)):p.flows.password&&t&&s.securityOAuth2ExtraCalls.push(getOAuth2PasswordCallHar(p.flows.password,p.scopes,d)),null===(r=s.securityHeaders)||void 0===r||r.push({name:"Authorization",value:c});break;case"apiKey":var m=d.raw||"YOUR_API_KEY_HERE";"header"===p.in&&(null===(i=s.securityHeaders)||void 0===i||i.push({name:p.name,value:m})),"cookie"===p.in&&s.securityCookies.push({name:p.name,value:m}),"query"===p.in&&s.securityQueries.push({name:p.name,value:m});break;case"http":"basic"===p.scheme?s.basicAuth={username:d.username||"<"+StringUtility.toSnakeCase(l("tryItAuthBasicUsername"))+">",password:d.password||"<"+StringUtility.toSnakeCase(l("tryItAuthBasicPassword"))+">"}:null===(n=s.securityHeaders)||void 0===n||n.push({name:"Authorization",value:capitalizeFirst(p.scheme||"bearer")+" <YOUR_"+(p.bearerFormat||"TOKEN")+"_HERE>"})}}return s}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){void 0===t&&(t="");for(var a=[],r=0,i=Object.entries(e);r<i.length;r++){var n=i[r],s=n[0],o=n[1],l=t?t+"["+s+"]":s;"object"==typeof o&&null!==o?a.push.apply(a,objectToHarParams(o,l)):a.push({name:l,value:String(o)})}return a}export function isDefined(e){return void 0!==e}export function capitalizeFirst(e){return e.charAt(0).toUpperCase()+e.slice(1)}
1
+ import{__assign}from"tslib";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,t){var a,r,i,n,s,o,l,u,p,d,c=t.exampleName,m=void 0===c?"":c,v=t.skipOptionalParameters,h=void 0!==v&&v,f=t.withOAuth2Call,y=void 0!==f&&f,g=t.spec,O=t.generatedPayloadSamplesMaxDepth,S=void 0===O?8:O,_=t.pathParams,T=void 0===_?{}:_,C=t.properties,E=void 0===C?{}:C,b=getSecurityData(null===(a=e.security)||void 0===a?void 0:a[0],y),A=b.securityHeaders,P=b.securityCookies,w=b.securityQueries,R=b.securityOAuth2ExtraCalls,D=b.basicAuth,k=null===(i=null===(r=e.requestBody)||void 0===r?void 0:r.content)||void 0===i?void 0:i.active,q={skipNonRequired:h,skipReadOnly:!0,maxSampleDepth:S},H={path:toJS(null===(n=null==e?void 0:e.requestValues)||void 0===n?void 0:n.path),cookie:toJS(null===(s=null==e?void 0:e.requestValues)||void 0===s?void 0:s.cookie),header:toJS(null===(o=null==e?void 0:e.requestValues)||void 0===o?void 0:o.header),query:toJS(null===(l=null==e?void 0:e.requestValues)||void 0===l?void 0:l.query),body:toJS(null===(u=null==e?void 0:e.requestValues)||void 0===u?void 0:u.body)},M=!1,N=e.parameters.filter((function(e){return"header"===e.in})).filter((function(e){return!(h&&!e.required)})).map((function(e){var t;return{name:e.name,value:(null===(t=H.header)||void 0===t?void 0:t[e.name])||getParameterValue("header",e.name)||serializeParameterValue(e,Sampler.sample(e.schema.rawSchema,q,g))}})).map((function(e){return(null==k?void 0:k.name)&&"content-type"===e.name.toLowerCase()&&(M=!0,e.value=k.name),e})).concat(A);!M&&(null==k?void 0:k.name)&&N.unshift({name:"Content-Type",value:null==k?void 0:k.name});var x,U=e.parameters.filter((function(e){return"cookie"===e.in})).filter((function(e){return!(h&&!e.required)})).map((function(e){return parseQueryString(serializeParameterValue(e,Sampler.sample(e.schema.rawSchema,q,g)))})).reduce((function(e,t){for(var a,r=0,i=Object.entries(t);r<i.length;r++){var n=i[r],s=n[0],o=n[1];e.push({name:s,value:String((null===(a=H.cookie)||void 0===a?void 0:a[s])||o)})}return e}),[]).concat(P),j=e.parameters.filter((function(e){return"query"===e.in})).filter((function(e){return!(h&&!e.required)})).map((function(e){return parseQueryString(serializeParameterValue(e,Sampler.sample(e.schema.rawSchema,q,g)))})).reduce((function(e,t){for(var a,r,i,n=0,s=Object.entries(t);n<s.length;n++){var o=s[n],l=o[0],u=o[1];e.push({name:l,value:isArrayOfObjects(null===(a=H.query)||void 0===a?void 0:a[l])&&JSON.stringify(deleteEmptyArrayItem(null===(r=H.query)||void 0===r?void 0:r[l]))||String((null===(i=H.query)||void 0===i?void 0:i[l])||u)})}return e}),[]).concat(w),z=null===(p=e.activeServer)||void 0===p?void 0:p.url.replace(/\/$/,""),V=e.path.replace(/^\//,""),I=z.split("#")[0]+"/"+V,J=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=H.path)||void 0===a?void 0:a[i])||T[i]||getParameterValue(r,i),e}),{}),L=null===(d=null==k?void 0:k.examples)||void 0===d?void 0:d[m],Y=(null==k?void 0:k.examples)||{},Q=Object.values(Y)[0],B=H.body||(null==L?void 0:L.value)||(null==Q?void 0:Q.value)||(null==k?void 0:k.schema)&&Sampler.sample(null==k?void 0:k.schema.rawSchema,q,g),K=null==k?void 0:k.name.toLowerCase(),F=[];switch(normalizeMimeType(K)){case MediaTypes.JSON:case MediaTypes.XML:x=JSON.stringify(getDataRequest(B,E));break;case MediaTypes.URL_ENCODED:case MediaTypes.MULTIPART:x=stringifyQueryString(getDataRequest(B,E)),F=objectToHarParams(getDataRequest(B,E));break;default:x=String(B||"")}var G=x?{mimeType:(null==k?void 0:k.name)||MediaTypes.OCTET_STREAM,text:x,params:F}:void 0,X=e.responses.map((function(e){return e.code}));return{method:e.httpVerb,url:I,httpVersion:"HTTP/1.1",cookies:U,headers:N,queryString:j,postData:G,headersSize:-1,bodySize:-1,securityOAuth2ExtraCalls:R,basicAuth:D,pathParameters:J,serverVariables:e.activeServer.variables,allResponseCodes:X}}var defaultOptions={withImports:!0,withComments:!1},langToSnippetConfig={curl:{code:"shell",defaultTarget:"curl",defaultOptions:__assign(__assign({},defaultOptions),{short:!0})},JavaScript:{code:"javascript",defaultTarget:"fetch",defaultOptions:__assign(__assign({},defaultOptions),{withImports:!1})},"Node.js":{code:"node",defaultTarget:"fetch",defaultOptions:__assign({},defaultOptions)},Python:{code:"python",defaultTarget:"requests",defaultOptions:__assign({},defaultOptions)},"Java8+Apache":{code:"java8",defaultTarget:"apachehttp",defaultOptions:__assign({},defaultOptions)},Java:{code:"java",defaultTarget:"httpclient",defaultOptions:__assign({},defaultOptions)},"C#":{code:"csharp",defaultTarget:"httpclient",defaultOptions:__assign({},defaultOptions)},"C#+Newtonsoft":{code:"csharpNewtonsoft",defaultTarget:"httpclient",defaultOptions:__assign({},defaultOptions)},Go:{code:"go",defaultTarget:"http.DefaultClient",defaultOptions:__assign({},defaultOptions)},PHP:{code:"php",defaultTarget:"curl",defaultOptions:__assign({},defaultOptions)},Ruby:{code:"ruby",defaultTarget:"net::http",defaultOptions:__assign({},defaultOptions)},R:{code:"r",defaultTarget:"httr",defaultOptions:__assign({},defaultOptions)}};export function getCodeSample(e){var t=e.lang,a=e.operation,r=e.exampleName,i=e.pathParams,n=e.properties,s=e.options,o=void 0===s?{}:s;try{var l=mapOperationToHAR(a,{exampleName:r,pathParams:i,properties:n,skipOptionalParameters:o.skipOptionalParameters,withOAuth2Call:o.withOAuth2Call,spec:o.spec,generatedPayloadSamplesMaxDepth:o.generatedPayloadSamplesMaxDepth}),u=new HTTPSnippet(l);return langToSnippetConfig[t]?u.convert(langToSnippetConfig[t].code,langToSnippetConfig[t].defaultTarget,__assign(__assign({},langToSnippetConfig[t].defaultOptions),o)):"Language is not supported."}catch(e){return console.error(e),"Failed to generate code sample."}}function getSecurityData(e,t){for(var a,r,i,n,s={securityHeaders:[],securityCookies:[],securityQueries:[],securityOAuth2ExtraCalls:[],basicAuth:void 0},o=0,u=(null==e?void 0:e.schemes)||[];o<u.length;o++){var p=u[o],d=getSecurityDetails(p.id);switch(p.type){case"openIdConnect":null===(a=s.securityHeaders)||void 0===a||a.push({name:"Authorization",value:"Bearer <YOUR_TOKEN_HERE>"});break;case"oauth2":var c=d.token?(d.token.token_type||"Bearer")+" "+d.token.access_token:"Bearer <YOUR_TOKEN_HERE>";p.flows.clientCredentials&&t?s.securityOAuth2ExtraCalls.push(getOAuth2ClientCredsCallHar(p.flows.clientCredentials,p.scopes,d)):p.flows.password&&t&&s.securityOAuth2ExtraCalls.push(getOAuth2PasswordCallHar(p.flows.password,p.scopes,d)),null===(r=s.securityHeaders)||void 0===r||r.push({name:"Authorization",value:c});break;case"apiKey":var m=d.raw||"YOUR_API_KEY_HERE";"header"===p.in&&(null===(i=s.securityHeaders)||void 0===i||i.push({name:p.name,value:m})),"cookie"===p.in&&s.securityCookies.push({name:p.name,value:m}),"query"===p.in&&s.securityQueries.push({name:p.name,value:m});break;case"http":"basic"===p.scheme?s.basicAuth={username:d.username||"<"+StringUtility.toSnakeCase(l("tryItAuthBasicUsername"))+">",password:d.password||"<"+StringUtility.toSnakeCase(l("tryItAuthBasicPassword"))+">"}:null===(n=s.securityHeaders)||void 0===n||n.push({name:"Authorization",value:capitalizeFirst(p.scheme||"bearer")+" <YOUR_"+(p.bearerFormat||"TOKEN")+"_HERE>"})}}return s}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){void 0===t&&(t="");for(var a=[],r=0,i=Object.entries(e);r<i.length;r++){var n=i[r],s=n[0],o=n[1],l=t?t+"["+s+"]":s;"object"==typeof o&&null!==o?a.push.apply(a,objectToHarParams(o,l)):a.push({name:l,value:String(o)})}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
- var _a,_b;import{__assign}from"tslib";import*as util from"util";import{Lang,NamingVariableConventions,VariableType}from"./constants";import StringUtility from"./string-utility";var langToVarNameConvention=((_a={})[Lang.NODEJS]=NamingVariableConventions.CAMEL_CASE,_a[Lang.JAVASCRIPT]=NamingVariableConventions.CAMEL_CASE,_a[Lang.PYTHON]=NamingVariableConventions.UNDER_SCORES,_a[Lang.JAVA8]=NamingVariableConventions.CAMEL_CASE,_a[Lang.JAVA]=NamingVariableConventions.CAMEL_CASE,_a[Lang.CSHARP]=NamingVariableConventions.PASCAL_CASE,_a[Lang.CURL]=NamingVariableConventions.CAMEL_CASE,_a[Lang.GO]=NamingVariableConventions.CAMEL_CASE,_a[Lang.PHP]=NamingVariableConventions.CAMEL_CASE,_a[Lang.RUBY]=NamingVariableConventions.UNDER_SCORES,_a[Lang.R]=NamingVariableConventions.UNDER_SCORES,_a),langOptions=((_b={default:{joinSymbol:"",variableWrapperFn:function(e){return e},stringLiteral:function(e){return e},variableDeclaration:function(e){return e},urlFieldName:"url"}})[Lang.CSHARP]={joinSymbol:" + ",stringLiteral:function(e){return'"'+e+'"'},variableDeclaration:function(e){return"var "+e+' = "%s";'},urlFieldName:"fullUrl"},_b[Lang.GO]={joinSymbol:" + ",stringLiteral:function(e){return'"'+e+'"'},variableDeclaration:function(e){return e+' := "%s";'}},_b[Lang.JAVA]={joinSymbol:" + ",stringLiteral:function(e){return'"'+e+'"'},variableDeclaration:function(e){return"var "+e+' = "%s";'},urlFieldName:"pathname"},_b[Lang.JAVA8]={joinSymbol:" + ",stringLiteral:function(e){return'"'+e+'"'},variableDeclaration:function(e){return"String "+e+' = "%s";'},urlFieldName:"fullUrl"},_b[Lang.JAVASCRIPT]={variableWrapperFn:function(e){return"${"+e+"}"},variableDeclaration:function(e){return"const "+e+" = '%s';"}},_b[Lang.NODEJS]={variableWrapperFn:function(e){return"${"+e+"}"},variableDeclaration:function(e){return"const "+e+" = '%s';"}},_b[Lang.PHP]={joinSymbol:" . ",stringLiteral:function(e){return'"'+e+'"'},variableDeclaration:function(e){return"const "+e+' = "%s";'}},_b[Lang.PYTHON]={stringLiteral:function(e){return'"'+e+'"'},joinSymbol:" + ",variableDeclaration:function(e){return e+' = "%s"'}},_b[Lang.RUBY]={joinSymbol:" + ",stringLiteral:function(e){return"'"+e+"'"},variableDeclaration:function(e){return e+" = '%s'"}},_b[Lang.CURL]={variableWrapperFn:function(e,n){return n||"{"+e+"}"},urlFieldName:"fullUrl",rawName:!0},_b[Lang.R]={joinSymbol:" %&% ",variableDeclaration:function(e){return e+' = "%s"'},urlFieldName:"fullUrl",stringLiteral:function(e){return'"'+e+'"'},variableWrapperFn:function(e){return""+e}},_b),reservedVariableNames=["response","request","requests","data","url","payload","main","accessToken","resp","Program","client","postData","App","httpClient","params","pathname","host","body","fetch","query"],CodeBuilder=function(){function e(e){var n=e.indentation,i=e.lineJoin,a=void 0===i?"\n":i,r=e.variablesPrefix,t=void 0===r?"":r,l=e.capitalize,o=void 0!==l&&l,u=e.lang,s=void 0===u?Lang.CURL:u;Object.defineProperty(this,"code",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"indentation",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"variablesPrefix",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"lineJoin",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"capitalize",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"lang",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"langOptions",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.code=[],this.indentation=n,this.variablesPrefix=t,this.lineJoin=a||"\n",this.capitalize=o,this.lang=s,this.langOptions=__assign(__assign({},langOptions.default),langOptions[s])}return Object.defineProperty(e.prototype,"buildLine",{enumerable:!1,configurable:!0,writable:!0,value:function(e,n){var i="",a=2;if("string"==typeof e)a=1,n=e,e=0;else if(null===e)return null;for(;e;)i+=this.indentation,e--;var r=Array.prototype.slice.call(arguments,a,arguments.length);return r.unshift(i+n),util.format.apply(this,r)}}),Object.defineProperty(e.prototype,"unshift",{enumerable:!1,configurable:!0,writable:!0,value:function(){for(var e=[],n=0;n<arguments.length;n++)e[n]=arguments[n];return this.code.unshift(this.buildLine.apply(this,e)),this}}),Object.defineProperty(e.prototype,"push",{enumerable:!1,configurable:!0,writable:!0,value:function(){for(var e=[],n=0;n<arguments.length;n++)e[n]=arguments[n];return this.code.push(this.buildLine.apply(this,e)),this}}),Object.defineProperty(e.prototype,"blank",{enumerable:!1,configurable:!0,writable:!0,value:function(){return this.code.push(null),this}}),Object.defineProperty(e.prototype,"join",{enumerable:!1,configurable:!0,writable:!0,value:function(){return this.code.join(this.lineJoin)}}),Object.defineProperty(e.prototype,"clean",{enumerable:!1,configurable:!0,writable:!0,value:function(){this.code.splice(1)}}),Object.defineProperty(e.prototype,"var",{enumerable:!1,configurable:!0,writable:!0,value:function(e,n){if(void 0===n&&(n=VariableType.CUSTOM),n===VariableType.PATH){var i=this.variablesPrefix+e;switch(reservedVariableNames.includes(i)&&(i+="_path"),langToVarNameConvention[this.lang]){case NamingVariableConventions.UNDER_SCORES:i=StringUtility.toSnakeCase(i);break;case NamingVariableConventions.PASCAL_CASE:i=StringUtility.toPascalCase(i);break;case NamingVariableConventions.CAMEL_CASE:default:i=StringUtility.toCamelCase(i)}return i}return this.variablesPrefix?this.variablesPrefix+(this.capitalize?StringUtility.toPascalCase(e):e):e}}),e}();export{CodeBuilder};
1
+ var _a,_b;import{__assign}from"tslib";import*as util from"util";import{Lang,NamingVariableConventions,VariableType}from"./constants";import StringUtility from"./string-utility";var langToVarNameConvention=((_a={})[Lang.NODEJS]=NamingVariableConventions.CAMEL_CASE,_a[Lang.JAVASCRIPT]=NamingVariableConventions.CAMEL_CASE,_a[Lang.PYTHON]=NamingVariableConventions.UNDER_SCORES,_a[Lang.JAVA8]=NamingVariableConventions.CAMEL_CASE,_a[Lang.JAVA]=NamingVariableConventions.CAMEL_CASE,_a[Lang.CSHARP]=NamingVariableConventions.PASCAL_CASE,_a[Lang.CSHARPNEWTONSOFT]=NamingVariableConventions.PASCAL_CASE,_a[Lang.CURL]=NamingVariableConventions.CAMEL_CASE,_a[Lang.GO]=NamingVariableConventions.CAMEL_CASE,_a[Lang.PHP]=NamingVariableConventions.CAMEL_CASE,_a[Lang.RUBY]=NamingVariableConventions.UNDER_SCORES,_a[Lang.R]=NamingVariableConventions.UNDER_SCORES,_a),langOptions=((_b={default:{joinSymbol:"",variableWrapperFn:function(e){return e},stringLiteral:function(e){return e},variableDeclaration:function(e){return e},urlFieldName:"url"}})[Lang.CSHARP]={joinSymbol:" + ",stringLiteral:function(e){return'"'+e+'"'},variableDeclaration:function(e){return"var "+e+' = "%s";'},urlFieldName:"fullUrl"},_b[Lang.CSHARPNEWTONSOFT]={joinSymbol:" + ",stringLiteral:function(e){return'"'+e+'"'},variableDeclaration:function(e){return"var "+e+' = "%s";'},urlFieldName:"fullUrl"},_b[Lang.GO]={joinSymbol:" + ",stringLiteral:function(e){return'"'+e+'"'},variableDeclaration:function(e){return e+' := "%s";'}},_b[Lang.JAVA]={joinSymbol:" + ",stringLiteral:function(e){return'"'+e+'"'},variableDeclaration:function(e){return"var "+e+' = "%s";'},urlFieldName:"pathname"},_b[Lang.JAVA8]={joinSymbol:" + ",stringLiteral:function(e){return'"'+e+'"'},variableDeclaration:function(e){return"String "+e+' = "%s";'},urlFieldName:"fullUrl"},_b[Lang.JAVASCRIPT]={variableWrapperFn:function(e){return"${"+e+"}"},variableDeclaration:function(e){return"const "+e+" = '%s';"}},_b[Lang.NODEJS]={variableWrapperFn:function(e){return"${"+e+"}"},variableDeclaration:function(e){return"const "+e+" = '%s';"}},_b[Lang.PHP]={joinSymbol:" . ",stringLiteral:function(e){return'"'+e+'"'},variableDeclaration:function(e){return"const "+e+' = "%s";'}},_b[Lang.PYTHON]={stringLiteral:function(e){return'"'+e+'"'},joinSymbol:" + ",variableDeclaration:function(e){return e+' = "%s"'}},_b[Lang.RUBY]={joinSymbol:" + ",stringLiteral:function(e){return"'"+e+"'"},variableDeclaration:function(e){return e+" = '%s'"}},_b[Lang.CURL]={variableWrapperFn:function(e,n){return n||"{"+e+"}"},urlFieldName:"fullUrl",rawName:!0},_b[Lang.R]={joinSymbol:" %&% ",variableDeclaration:function(e){return e+' = "%s"'},urlFieldName:"fullUrl",stringLiteral:function(e){return'"'+e+'"'},variableWrapperFn:function(e){return""+e}},_b),reservedVariableNames=["response","request","requests","data","url","payload","main","accessToken","resp","Program","client","postData","App","httpClient","params","pathname","host","body","fetch","query"],CodeBuilder=function(){function e(e){var n=e.indentation,i=e.lineJoin,a=void 0===i?"\n":i,r=e.variablesPrefix,t=void 0===r?"":r,l=e.capitalize,o=void 0!==l&&l,u=e.lang,b=void 0===u?Lang.CURL:u;Object.defineProperty(this,"code",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"indentation",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"variablesPrefix",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"lineJoin",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"capitalize",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"lang",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"langOptions",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.code=[],this.indentation=n,this.variablesPrefix=t,this.lineJoin=a||"\n",this.capitalize=o,this.lang=b,this.langOptions=__assign(__assign({},langOptions.default),langOptions[b])}return Object.defineProperty(e.prototype,"buildLine",{enumerable:!1,configurable:!0,writable:!0,value:function(e,n){var i="",a=2;if("string"==typeof e)a=1,n=e,e=0;else if(null===e)return null;for(;e;)i+=this.indentation,e--;var r=Array.prototype.slice.call(arguments,a,arguments.length);return r.unshift(i+n),util.format.apply(this,r)}}),Object.defineProperty(e.prototype,"unshift",{enumerable:!1,configurable:!0,writable:!0,value:function(){for(var e=[],n=0;n<arguments.length;n++)e[n]=arguments[n];return this.code.unshift(this.buildLine.apply(this,e)),this}}),Object.defineProperty(e.prototype,"push",{enumerable:!1,configurable:!0,writable:!0,value:function(){for(var e=[],n=0;n<arguments.length;n++)e[n]=arguments[n];return this.code.push(this.buildLine.apply(this,e)),this}}),Object.defineProperty(e.prototype,"blank",{enumerable:!1,configurable:!0,writable:!0,value:function(){return this.code.push(null),this}}),Object.defineProperty(e.prototype,"join",{enumerable:!1,configurable:!0,writable:!0,value:function(){return this.code.join(this.lineJoin)}}),Object.defineProperty(e.prototype,"clean",{enumerable:!1,configurable:!0,writable:!0,value:function(){this.code.splice(1)}}),Object.defineProperty(e.prototype,"var",{enumerable:!1,configurable:!0,writable:!0,value:function(e,n){if(void 0===n&&(n=VariableType.CUSTOM),n===VariableType.PATH){var i=this.variablesPrefix+e;switch(reservedVariableNames.includes(i)&&(i+="_path"),langToVarNameConvention[this.lang]){case NamingVariableConventions.UNDER_SCORES:i=StringUtility.toSnakeCase(i);break;case NamingVariableConventions.PASCAL_CASE:i=StringUtility.toPascalCase(i);break;case NamingVariableConventions.CAMEL_CASE:default:i=StringUtility.toCamelCase(i)}return i}return this.variablesPrefix?this.variablesPrefix+(this.capitalize?StringUtility.toPascalCase(e):e):e}}),e}();export{CodeBuilder};
2
2
  //# sourceMappingURL=code-builder.js.map
@@ -5,6 +5,7 @@ export declare enum Lang {
5
5
  JAVA8 = "Java8+Apache",
6
6
  JAVA = "Java",
7
7
  CSHARP = "C#",
8
+ CSHARPNEWTONSOFT = "C#+Newtonsoft",
8
9
  CURL = "curl",
9
10
  GO = "Go",
10
11
  PHP = "PHP",
@@ -1,2 +1,2 @@
1
- export var Lang;!function(a){a.NODEJS="Node.js",a.JAVASCRIPT="javascript",a.PYTHON="Python",a.JAVA8="Java8+Apache",a.JAVA="Java",a.CSHARP="C#",a.CURL="curl",a.GO="Go",a.PHP="PHP",a.RUBY="Ruby",a.R="R"}(Lang||(Lang={}));export var NamingVariableConventions;!function(a){a.UNDER_SCORES="under_scores",a.CAMEL_CASE="camelCase",a.PASCAL_CASE="PascalCase"}(NamingVariableConventions||(NamingVariableConventions={}));export var VariableType;!function(a){a.IMPORT="import",a.CUSTOM="custom",a.PATH="path"}(VariableType||(VariableType={}));
1
+ export var Lang;!function(a){a.NODEJS="Node.js",a.JAVASCRIPT="javascript",a.PYTHON="Python",a.JAVA8="Java8+Apache",a.JAVA="Java",a.CSHARP="C#",a.CSHARPNEWTONSOFT="C#+Newtonsoft",a.CURL="curl",a.GO="Go",a.PHP="PHP",a.RUBY="Ruby",a.R="R"}(Lang||(Lang={}));export var NamingVariableConventions;!function(a){a.UNDER_SCORES="under_scores",a.CAMEL_CASE="camelCase",a.PASCAL_CASE="PascalCase"}(NamingVariableConventions||(NamingVariableConventions={}));export var VariableType;!function(a){a.IMPORT="import",a.CUSTOM="custom",a.PATH="path"}(VariableType||(VariableType={}));
2
2
  //# sourceMappingURL=constants.js.map
@@ -1,2 +1,2 @@
1
- import{__assign}from"tslib";import stringifyObject from"stringify-object";import{CodeBuilder}from"../../helpers/code-builder";import{HTTPSnippet}from"../..";import{addIndentation,buildUrlExpression,printUrlVariablesDeclarations}from"../../helpers/code-helpers";import{normalizeMimeType}from"../../../../utils";import{capitalizeFirst}from"../../../generator";import{Lang}from"../../helpers/constants";import{MediaTypes}from"../../../../../types";var handler=function(t,e,a){var s,n,i,r,o=a.target,p=a.client,u=Object.assign({indent:" ",withWrapper:!0},e),l=new CodeBuilder({indentation:u.indent,variablesPrefix:u.variablesPrefix,capitalize:!0,lang:Lang.CSHARP}),h=formatHttpMethod(t.method);if(u.withComments&&addComments(l),u.withWrapper&&(l.push("using System;"),l.push("using System.Net.Http;"),l.push("using System.Threading.Tasks;"),(g(MediaTypes.JSON)||g(MediaTypes.XML)||t.basicAuth)&&l.push("using System.Text;"),(g(MediaTypes.URL_ENCODED)||(null===(s=t.securityOAuth2ExtraCalls)||void 0===s?void 0:s.length))&&l.push("using System.Collections.Generic;"),(g(MediaTypes.JSON)||(null===(n=t.securityOAuth2ExtraCalls)||void 0===n?void 0:n.length))&&l.push("using Newtonsoft.Json.Linq;"),t.headersObj&&t.headersObj["Content-Type"]===MediaTypes.OCTET_STREAM&&(l.push("using System.IO;"),l.push("using System.Net.Http.Headers;")),l.blank(),l.push("public class Program"),l.push("{"),l.push(1,"private readonly IHttpClientFactory _httpClientFactory;"),l.push(1,"public static async Task Main(string[] args)"),l.push(1,"{"),l.push(2,"var client = _httpClientFactory.CreateClient();")),null===(i=t.securityOAuth2ExtraCalls)||void 0===i?void 0:i.length){var c=new HTTPSnippet(null===(r=t.securityOAuth2ExtraCalls)||void 0===r?void 0:r[0]).convert(o,p,__assign(__assign({},u),{withImports:!1,withWrapper:!1,withComments:!1,variablesPrefix:"oauth2"}));l.push(c),l.push(2,"var oauth2Response = await oauth2Request.Content.ReadAsStringAsync();"),l.push(2,"JObject inputJObject = JObject.Parse(oauth2Response);"),l.push(2,'var accessToken = inputJObject["access_token"].ToString();'),l.blank()}var d=Object.keys(t.allHeaders).filter((function(t){switch(t.toLowerCase()){case"content-type":case"content-length":case"accept-encoding":return!1;default:return!0}}));if(d.length&&d.forEach((function(e){var a;l.push(2,'client.DefaultRequestHeaders.Add("%s", %s);',e,(null===(a=t.securityOAuth2ExtraCalls)||void 0===a?void 0:a.length)?'"Bearer " + accessToken':'"'+t.allHeaders[e]+'"')})),t.basicAuth){var m=t.basicAuth,y=m.username,T=m.password;l.push(2,'var base64String = Convert.ToBase64String(Encoding.ASCII.GetBytes("'+y+":"+T+'"));'),l.push(2,'client.DefaultRequestHeaders.Add("Authorization", "Basic "+ base64String);')}if(t.postData)switch(normalizeMimeType(t.postData.mimeType)){case MediaTypes.URL_ENCODED:t.postData.params&&(l.blank(),l.push(2,"List<KeyValuePair<string, string>> postData = new List<KeyValuePair<string, string>>();"),t.postData.params.forEach((function(t){l.push(2,'postData.Add(new KeyValuePair<string, string>("%s", "%s"));',t.name,t.value)})),l.blank());break;case MediaTypes.MULTIPART:t.postData.params&&(l.blank(),l.push(2,"MultipartFormDataContent postData = new MultipartFormDataContent();"),t.postData.params.forEach((function(t){l.push(2,'postData.Add(new StringContent("%s"), "%s");',t.value,t.name)})));break;case MediaTypes.JSON:t.postData.jsonObj&&(l.push(2,'JObject json = JObject.Parse(@"'+addIndentation(stringifyObject(t.postData.jsonObj,{indent:u.indent,inlineCharacterLimit:25}).replace(/"/g,'""'),{level:3,firstLine:!1})+'");'),l.push(2,'var postData = new StringContent(json.ToString(), Encoding.UTF8, "%s");',t.postData.mimeType));break;case MediaTypes.XML:t.postData.text&&(t.postData.text.trim().split("\n").forEach((function(t,e){var a=(0===e?'string xml = @"':"")+t.replace(/"/g,'""');l.push(0===e?3:4,a)})),l.push(2,'";'),l.push(2,'var postData = new StringContent(xml, Encoding.UTF8, "%s");',t.postData.mimeType))}else f()&&(l.push(2,"var ms = new MemoryStream();"),l.push(2,"var postData = new StreamContent(ms);"),l.push(2,'postData.Headers.ContentType = new MediaTypeHeaderValue("application/octet-stream");'));return printUrlVariablesDeclarations(t,l,3),l.push(2,"var %s = await client.%sAsync(%s%s);",l.var("request"),h,buildUrlExpression(t,l),u.withImports?isDataMethod(t.method)?normalizeMimeType(t.postData&&t.postData.mimeType)===MediaTypes.URL_ENCODED?", new FormUrlEncodedContent(postData)":"delete"===t.method?"":t.postData&&t.postData.params||f()?", postData":", null":"":", new FormUrlEncodedContent(postData)"),u.withWrapper&&(l.push(2,"var response = await request.Content.ReadAsStringAsync();"),l.blank(),l.push(2,"Console.WriteLine(response);"),l.push(1,"}"),l.push("}")),l.join();function g(e){return t.postData&&normalizeMimeType(t.postData.mimeType)===e}function f(){return t.headersObj&&t.headersObj["Content-Type"]===MediaTypes.OCTET_STREAM}};export var info={key:"httpclient",title:"HttpClient",link:"https://docs.microsoft.com/en-us/dotnet/api/system.net.http.httpclient",description:".NET Standard HTTP Client"};export default handler;function addComments(t){t.push("/*"),t.push(" * Requires >= .NET 5"),t.push(" *"),t.push(' * Requires package "Newtonsoft.Json" >= 9.01'),t.push(" * See here for installation details:"),t.push(" * https://www.newtonsoft.com/json"),t.push(" */"),t.blank()}function formatHttpMethod(t){return capitalizeFirst(t.toLowerCase())}function isDataMethod(t){return t&&["POST","PUT","DELETE","PATCH"].includes(t.toUpperCase())}
1
+ import{__assign}from"tslib";import{CodeBuilder}from"../../helpers/code-builder";import{HTTPSnippet}from"../..";import{buildUrlExpression,printUrlVariablesDeclarations}from"../../helpers/code-helpers";import{isEmptyObject,normalizeMimeType}from"../../../../utils";import{capitalizeFirst}from"../../../generator";import{Lang}from"../../helpers/constants";import{MediaTypes}from"../../../../../types";import{isLastInArray,isLastProperty}from"../../../../../redoc-lib";import{checkIfIsObject}from"../../../../../redoc-lib/src/utils/object";var handler=function(t,e,s){var a,n,i,r,p=s.target,o=s.client,u=Object.assign({indent:" ",withWrapper:!0},e),l=new CodeBuilder({indentation:u.indent,variablesPrefix:u.variablesPrefix,capitalize:!0,lang:Lang.CSHARP}),h=formatHttpMethod(t.method);if(u.withComments&&addComments(l),u.withWrapper&&(l.push("using System;"),l.push("using System.Net.Http;"),l.push("using System.Threading.Tasks;"),(T(MediaTypes.JSON)||T(MediaTypes.XML)||t.basicAuth)&&l.push("using System.Text;"),(T(MediaTypes.URL_ENCODED)||(null===(a=t.securityOAuth2ExtraCalls)||void 0===a?void 0:a.length))&&l.push("using System.Collections.Generic;"),(T(MediaTypes.JSON)||(null===(n=t.securityOAuth2ExtraCalls)||void 0===n?void 0:n.length))&&l.push("using System.Text.Json;"),f()&&l.push("using System.IO;"),(f()||t.basicAuth)&&l.push("using System.Net.Http.Headers;"),l.blank(),l.push("public class Program"),l.push("{"),l.push(1,"public static async Task Main()"),l.push(1,"{")),null===(i=t.securityOAuth2ExtraCalls)||void 0===i?void 0:i.length){var c=new HTTPSnippet(null===(r=t.securityOAuth2ExtraCalls)||void 0===r?void 0:r[0]).convert(p,o,__assign(__assign({},u),{withImports:!1,withWrapper:!1,withComments:!1,variablesPrefix:"oauth2"}));l.push(c),l.push(2,"var oauth2Response = await oauth2Request.Content.ReadAsStringAsync();"),l.push(2,"JObject inputJObject = JObject.Parse(oauth2Response);"),l.push(2,'var accessToken = inputJObject["access_token"].ToString();'),l.blank()}var m=Object.keys(t.allHeaders).filter((function(t){switch(t.toLowerCase()){case"content-type":case"content-length":case"accept-encoding":return!1;default:return!0}}));if(m.length?(l.push(2,"System.Net.Http.HttpClient client = new()"),l.push(2,"{"),l.push(3,"DefaultRequestHeaders ="),l.push(3,"{"),m.forEach((function(e){var s;l.push(4,'{"%s", %s},',e,(null===(s=t.securityOAuth2ExtraCalls)||void 0===s?void 0:s.length)?'"Bearer " + accessToken':'"'+t.allHeaders[e]+'"')})),l.push(3,"}"),l.push(2,"};")):l.push(2,"System.Net.Http.HttpClient client = new();"),l.blank(),t.basicAuth){var d=t.basicAuth,y=d.username,g=d.password;l.push(2,'string base64String = Convert.ToBase64String(Encoding.ASCII.GetBytes("'+y+":"+g+'"));'),l.push(2,'client.DefaultRequestHeaders.Authorization = new AuthenticationHeaderValue(@"Basic", base64String);'),l.blank()}if(t.postData)switch(normalizeMimeType(t.postData.mimeType)){case MediaTypes.URL_ENCODED:t.postData.params&&(l.blank(),l.push(2,"List<KeyValuePair<string, string>> postData = new List<KeyValuePair<string, string>>();"),t.postData.params.forEach((function(t){l.push(2,'postData.Add(new KeyValuePair<string, string>("%s", "%s"));',t.name,t.value)})),l.blank());break;case MediaTypes.MULTIPART:t.postData.params&&(l.blank(),l.push(2,"MultipartFormDataContent postData = new MultipartFormDataContent();"),t.postData.params.forEach((function(t){l.push(2,'postData.Add(new StringContent("%s"), "%s");',t.value,t.name)})));break;case MediaTypes.JSON:t.postData.jsonObj&&(l.push(2,"string json = JsonSerializer.Serialize(new"),l.push(2,"{"),D(t.postData.jsonObj,3),l.push(2,"});"),l.blank(),l.push(2,'using StringContent postData = new(json, Encoding.UTF8, "%s");',t.postData.mimeType));break;case MediaTypes.XML:t.postData.text&&(t.postData.text.trim().split("\n").forEach((function(t,e){var s=(0===e?'string xml = @"':"")+t.replace(/"/g,'""');l.push(0===e?2:3,s)})),l.push(2,'";'),l.push(2,'using StringContent postData = new StringContent(xml, Encoding.UTF8, "%s");',t.postData.mimeType))}else f()&&(l.push(2,"var ms = new MemoryStream();"),l.push(2,"var postData = new StreamContent(ms);"),l.push(2,'postData.Headers.ContentType = new MediaTypeHeaderValue("application/octet-stream");'));return printUrlVariablesDeclarations(t,l,3),l.push(2,"using HttpResponseMessage %s = await client.%sAsync(%s%s);",l.var("request"),h,buildUrlExpression(t,l),u.withImports?isDataMethod(t.method)?normalizeMimeType(t.postData&&t.postData.mimeType)===MediaTypes.URL_ENCODED?", new FormUrlEncodedContent(postData)":"delete"===t.method?"":t.postData&&t.postData.params||f()?", postData":", null":"":", new FormUrlEncodedContent(postData)"),u.withWrapper&&(l.push(2,"string response = await request.Content.ReadAsStringAsync();"),l.blank(),l.push(2,"Console.WriteLine(response);"),l.push(1,"}"),l.push("}")),l.join();function T(e){return t.postData&&normalizeMimeType(t.postData.mimeType)===e}function f(){return t.headersObj&&t.headersObj["Content-Type"]===MediaTypes.OCTET_STREAM}function b(t,e){t.forEach((function(s,a){var n=!isLastInArray(t,a);Array.isArray(s)?b(s,e+1):checkIfIsObject(s)?(l.push(e+1,"new {"),D(s,e+2),l.push(e+1,"}%s",n?",":"")):l.push(e+1,'"%s"%s',s,n?",":"")})),l.push(e,"},")}function D(t,e){for(var s=0,a=Object.entries(t);s<a.length;s++){var n=a[s],i=n[0],r=n[1],p=!isLastProperty(t,i);if(Array.isArray(r))l.push(e,"%s = new[] {",i),b(r,e);else if(checkIfIsObject(r)){var o=isEmptyObject(r);l.push(e,"%s = new %s",i,o?"{},":"{"),o||(D(r,e+1),l.push(e,"}%s",p?",":""))}else l.push(e,'%s = "%s"%s',i,r,p?",":"")}}};export var info={key:"httpclient",title:"HttpClient",link:"https://docs.microsoft.com/en-us/dotnet/api/system.net.http.httpclient",description:".NET Standard HTTP Client"};export default handler;function addComments(t){t.push("// Requires >= .NET 5"),t.blank()}function formatHttpMethod(t){return capitalizeFirst(t.toLowerCase())}function isDataMethod(t){return t&&["POST","PUT","DELETE","PATCH"].includes(t.toUpperCase())}
2
2
  //# sourceMappingURL=httpclient.js.map
@@ -0,0 +1,10 @@
1
+ import type { LanguageHandler } from '../..';
2
+ import type { CSharpNewtonsoftCodeSampleConfig } from '../../../types';
3
+ declare const handler: LanguageHandler<CSharpNewtonsoftCodeSampleConfig['options']>;
4
+ export declare const info: {
5
+ key: string;
6
+ title: string;
7
+ link: string;
8
+ description: string;
9
+ };
10
+ export default handler;
@@ -0,0 +1,2 @@
1
+ import{__assign}from"tslib";import stringifyObject from"stringify-object";import{CodeBuilder}from"../../helpers/code-builder";import{HTTPSnippet}from"../..";import{addIndentation,buildUrlExpression,printUrlVariablesDeclarations}from"../../helpers/code-helpers";import{normalizeMimeType}from"../../../../utils";import{capitalizeFirst}from"../../../generator";import{Lang}from"../../helpers/constants";import{MediaTypes}from"../../../../../types";var handler=function(t,e,a){var s,n,i,r,o=a.target,p=a.client,u=Object.assign({indent:" ",withWrapper:!0},e),l=new CodeBuilder({indentation:u.indent,variablesPrefix:u.variablesPrefix,capitalize:!0,lang:Lang.CSHARPNEWTONSOFT}),h=formatHttpMethod(t.method);if(u.withComments&&addComments(l),u.withWrapper&&(l.push("using System;"),l.push("using System.Net.Http;"),l.push("using System.Threading.Tasks;"),(T(MediaTypes.JSON)||T(MediaTypes.XML)||t.basicAuth)&&l.push("using System.Text;"),(T(MediaTypes.URL_ENCODED)||(null===(s=t.securityOAuth2ExtraCalls)||void 0===s?void 0:s.length))&&l.push("using System.Collections.Generic;"),(T(MediaTypes.JSON)||(null===(n=t.securityOAuth2ExtraCalls)||void 0===n?void 0:n.length))&&l.push("using Newtonsoft.Json.Linq;"),f()&&l.push("using System.IO;"),(f()||t.basicAuth)&&l.push("using System.Net.Http.Headers;"),l.blank(),l.push("public class Program"),l.push("{"),l.push(1,"private readonly IHttpClientFactory _httpClientFactory;"),l.push(1,"public static async Task Main(string[] args)"),l.push(1,"{"),l.push(2,"var client = _httpClientFactory.CreateClient();")),null===(i=t.securityOAuth2ExtraCalls)||void 0===i?void 0:i.length){var c=new HTTPSnippet(null===(r=t.securityOAuth2ExtraCalls)||void 0===r?void 0:r[0]).convert(o,p,__assign(__assign({},u),{withImports:!1,withWrapper:!1,withComments:!1,variablesPrefix:"oauth2"}));l.push(c),l.push(2,"var oauth2Response = await oauth2Request.Content.ReadAsStringAsync();"),l.push(2,"JObject inputJObject = JObject.Parse(oauth2Response);"),l.push(2,'var accessToken = inputJObject["access_token"].ToString();'),l.blank()}var d=Object.keys(t.allHeaders).filter((function(t){switch(t.toLowerCase()){case"content-type":case"content-length":case"accept-encoding":return!1;default:return!0}}));if(d.length&&d.forEach((function(e){var a;l.push(2,'client.DefaultRequestHeaders.Add("%s", %s);',e,(null===(a=t.securityOAuth2ExtraCalls)||void 0===a?void 0:a.length)?'"Bearer " + accessToken':'"'+t.allHeaders[e]+'"')})),t.basicAuth){var m=t.basicAuth,y=m.username,g=m.password;l.push(2,'var base64String = Convert.ToBase64String(Encoding.ASCII.GetBytes("'+y+":"+g+'"));'),l.push(2,'client.DefaultRequestHeaders.Authorization = new AuthenticationHeaderValue(@"Basic", base64String);')}if(t.postData)switch(normalizeMimeType(t.postData.mimeType)){case MediaTypes.URL_ENCODED:t.postData.params&&(l.blank(),l.push(2,"List<KeyValuePair<string, string>> postData = new List<KeyValuePair<string, string>>();"),t.postData.params.forEach((function(t){l.push(2,'postData.Add(new KeyValuePair<string, string>("%s", "%s"));',t.name,t.value)})),l.blank());break;case MediaTypes.MULTIPART:t.postData.params&&(l.blank(),l.push(2,"MultipartFormDataContent postData = new MultipartFormDataContent();"),t.postData.params.forEach((function(t){l.push(2,'postData.Add(new StringContent("%s"), "%s");',t.value,t.name)})));break;case MediaTypes.JSON:t.postData.jsonObj&&(l.push(2,'JObject json = JObject.Parse(@"'+addIndentation(stringifyObject(t.postData.jsonObj,{indent:u.indent,inlineCharacterLimit:25}).replace(/"/g,'""'),{level:3,firstLine:!1})+'");'),l.push(2,'var postData = new StringContent(json.ToString(), Encoding.UTF8, "%s");',t.postData.mimeType));break;case MediaTypes.XML:t.postData.text&&(t.postData.text.trim().split("\n").forEach((function(t,e){var a=(0===e?'string xml = @"':"")+t.replace(/"/g,'""');l.push(0===e?3:4,a)})),l.push(2,'";'),l.push(2,'var postData = new StringContent(xml, Encoding.UTF8, "%s");',t.postData.mimeType))}else f()&&(l.push(2,"var ms = new MemoryStream();"),l.push(2,"var postData = new StreamContent(ms);"),l.push(2,'postData.Headers.ContentType = new MediaTypeHeaderValue("application/octet-stream");'));return printUrlVariablesDeclarations(t,l,3),l.push(2,"var %s = await client.%sAsync(%s%s);",l.var("request"),h,buildUrlExpression(t,l),u.withImports?isDataMethod(t.method)?normalizeMimeType(t.postData&&t.postData.mimeType)===MediaTypes.URL_ENCODED?", new FormUrlEncodedContent(postData)":"delete"===t.method?"":t.postData&&t.postData.params||f()?", postData":", null":"":", new FormUrlEncodedContent(postData)"),u.withWrapper&&(l.push(2,"var response = await request.Content.ReadAsStringAsync();"),l.blank(),l.push(2,"Console.WriteLine(response);"),l.push(1,"}"),l.push("}")),l.join();function T(e){return t.postData&&normalizeMimeType(t.postData.mimeType)===e}function f(){return t.headersObj&&t.headersObj["Content-Type"]===MediaTypes.OCTET_STREAM}};export var info={key:"httpclient",title:"HttpClient",link:"https://docs.microsoft.com/en-us/dotnet/api/system.net.http.httpclient",description:".NET Standard HTTP Client"};export default handler;function addComments(t){t.push("/*"),t.push(" * Requires >= .NET 5"),t.push(" *"),t.push(' * Requires package "Newtonsoft.Json" >= 9.01'),t.push(" * See here for installation details:"),t.push(" * https://www.newtonsoft.com/json"),t.push(" */"),t.blank()}function formatHttpMethod(t){return capitalizeFirst(t.toLowerCase())}function isDataMethod(t){return t&&["POST","PUT","DELETE","PATCH"].includes(t.toUpperCase())}
2
+ //# sourceMappingURL=httpclient.js.map
@@ -0,0 +1,10 @@
1
+ declare const _default: {
2
+ info: {
3
+ key: string;
4
+ title: string;
5
+ extname: string;
6
+ default: string;
7
+ };
8
+ httpclient: import("../..").LanguageHandler<import("../../..").BasicLanguageOptions | undefined>;
9
+ };
10
+ export default _default;
@@ -0,0 +1,2 @@
1
+ import httpclient from"./httpclient";export default{info:{key:"csharpNewtonsoft",title:"CSharpNewtonsoft",extname:".cs",default:"httpclient"},httpclient:httpclient};
2
+ //# sourceMappingURL=index.js.map
@@ -66,6 +66,15 @@ declare const targets: {
66
66
  };
67
67
  httpclient: import("..").LanguageHandler<import("../..").BasicLanguageOptions | undefined>;
68
68
  };
69
+ csharpNewtonsoft: {
70
+ info: {
71
+ key: string;
72
+ title: string;
73
+ extname: string;
74
+ default: string;
75
+ };
76
+ httpclient: import("..").LanguageHandler<import("../..").BasicLanguageOptions | undefined>;
77
+ };
69
78
  go: {
70
79
  info: {
71
80
  key: string;
@@ -1,2 +1,2 @@
1
- import javascript from"./javascript";import node from"./node";import python from"./python";import shell from"./shell";import java8 from"./java8";import java from"./java";import csharp from"./csharp";import go from"./go";import php from"./php";import ruby from"./ruby";import r from"./r";var targets={javascript:javascript,node:node,python:python,shell:shell,java8:java8,java:java,csharp:csharp,go:go,php:php,ruby:ruby,r:r};export default targets;
1
+ import javascript from"./javascript";import node from"./node";import python from"./python";import shell from"./shell";import java8 from"./java8";import java from"./java";import csharp from"./csharp";import csharpNewtonsoft from"./csharpNewtonsoft";import go from"./go";import php from"./php";import ruby from"./ruby";import r from"./r";var targets={javascript:javascript,node:node,python:python,shell:shell,java8:java8,java:java,csharp:csharp,csharpNewtonsoft:csharpNewtonsoft,go:go,php:php,ruby:ruby,r:r};export default targets;
2
2
  //# sourceMappingURL=index.js.map