@redocly/openapi-docs 3.0.0-alpha.79 → 3.0.0-alpha.80
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.
- package/dist/console.redocly-openapi-docs.min.js +1 -1
- package/dist/oauth2-redirect.js +1 -1
- package/dist/redocly-openapi-docs.min.js +638 -637
- package/lib/services/code-samples/generator.js +1 -1
- package/lib/services/code-samples/httpsnippet/helpers/code-builder.js +1 -1
- package/lib/services/code-samples/httpsnippet/helpers/constants.d.ts +1 -0
- package/lib/services/code-samples/httpsnippet/helpers/constants.js +1 -1
- package/lib/services/code-samples/httpsnippet/helpers/mocks/code-helpers-mock.d.ts +2 -0
- package/lib/services/code-samples/httpsnippet/helpers/mocks/code-helpers-mock.js +1 -1
- package/lib/services/code-samples/httpsnippet/targets/csharp/httpclient.js +1 -1
- package/lib/services/code-samples/httpsnippet/targets/csharpNewtonsoft/httpclient.d.ts +10 -0
- package/lib/services/code-samples/httpsnippet/targets/csharpNewtonsoft/httpclient.js +2 -0
- package/lib/services/code-samples/httpsnippet/targets/csharpNewtonsoft/index.d.ts +10 -0
- package/lib/services/code-samples/httpsnippet/targets/csharpNewtonsoft/index.js +2 -0
- package/lib/services/code-samples/httpsnippet/targets/index.d.ts +9 -0
- package/lib/services/code-samples/httpsnippet/targets/index.js +1 -1
- package/lib/services/code-samples/types.d.ts +5 -2
- package/lib/utils/helpers.d.ts +2 -0
- package/lib/utils/helpers.js +1 -1
- package/lib/utils/typeGuards.d.ts +1 -0
- package/lib/utils/typeGuards.js +1 -1
- package/lib-esm/services/code-samples/generator.js +1 -1
- package/lib-esm/services/code-samples/httpsnippet/helpers/code-builder.js +1 -1
- package/lib-esm/services/code-samples/httpsnippet/helpers/constants.d.ts +1 -0
- package/lib-esm/services/code-samples/httpsnippet/helpers/constants.js +1 -1
- package/lib-esm/services/code-samples/httpsnippet/helpers/mocks/code-helpers-mock.d.ts +2 -0
- package/lib-esm/services/code-samples/httpsnippet/helpers/mocks/code-helpers-mock.js +1 -1
- package/lib-esm/services/code-samples/httpsnippet/targets/csharp/httpclient.js +1 -1
- package/lib-esm/services/code-samples/httpsnippet/targets/csharpNewtonsoft/httpclient.d.ts +10 -0
- package/lib-esm/services/code-samples/httpsnippet/targets/csharpNewtonsoft/httpclient.js +2 -0
- package/lib-esm/services/code-samples/httpsnippet/targets/csharpNewtonsoft/index.d.ts +10 -0
- package/lib-esm/services/code-samples/httpsnippet/targets/csharpNewtonsoft/index.js +2 -0
- package/lib-esm/services/code-samples/httpsnippet/targets/index.d.ts +9 -0
- package/lib-esm/services/code-samples/httpsnippet/targets/index.js +1 -1
- package/lib-esm/services/code-samples/types.d.ts +5 -2
- package/lib-esm/utils/helpers.d.ts +2 -0
- package/lib-esm/utils/helpers.js +1 -1
- package/lib-esm/utils/typeGuards.d.ts +1 -0
- package/lib-esm/utils/typeGuards.js +1 -1
- package/package.json +1 -1
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
"use strict";var __createBinding=this&&this.__createBinding||(Object.create?function(e,t,a,r){void 0===r&&(r=a);var i=Object.getOwnPropertyDescriptor(t,a);i&&!("get"in i?!t.__esModule:i.writable||i.configurable)||(i={enumerable:!0,get:function(){return t[a]}}),Object.defineProperty(e,r,i)}:function(e,t,a,r){void 0===r&&(r=a),e[r]=t[a]}),__setModuleDefault=this&&this.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),__importStar=this&&this.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var a in e)"default"!==a&&Object.prototype.hasOwnProperty.call(e,a)&&__createBinding(t,e,a);return __setModuleDefault(t,e),t},__importDefault=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(exports,"__esModule",{value:!0}),exports.capitalizeFirst=exports.isDefined=exports.getCodeSample=void 0;const Sampler=__importStar(require("openapi-sampler")),deepmerge_1=__importDefault(require("deepmerge")),utils_1=require("../../utils"),utils_2=require("../utils"),constants_1=require("../../constants"),labels_1=require("../labels"),httpsnippet_1=require("./httpsnippet"),string_utility_1=__importDefault(require("./httpsnippet/helpers/string-utility")),mediaContent_1=require("../../models/mediaContent");function mapOperationToHAR(e,{exampleName:t="",skipOptionalParameters:a=!1,withOAuth2Call:r=!1,spec:i,generatedPayloadSamplesMaxDepth:s=8,pathParams:n={},properties:l={}},{activeServer:o,requestValues:u}){var p,c,d,m;const{securityHeaders:h,securityCookies:f,securityQueries:_,securityOAuth2ExtraCalls:v,basicAuth:y}=getSecurityData(null===(p=e.security)||void 0===p?void 0:p[0],r),g=(null===(c=null==e?void 0:e.requestBody)||void 0===c?void 0:c.content)&&(0,mediaContent_1.getActiveMediaType)(e.requestBody.content),O={skipNonRequired:a,skipReadOnly:!0,maxSampleDepth:s},S={path:null==u?void 0:u.path,cookie:null==u?void 0:u.cookie,header:null==u?void 0:u.header,query:null==u?void 0:u.query,body:null==u?void 0:u.body};let T=!1;const b=e.parameters.filter((e=>"header"===e.in)).filter((e=>!(a&&!e.required))).map((e=>{var t;return{name:e.name,value:(null===(t=S.header)||void 0===t?void 0:t[e.name])||(0,utils_1.getParameterValue)("header",e.name)||(0,utils_1.serializeParameterValue)(e,Sampler.sample(e.schema.rawSchema,O,i))}})).map((e=>((null==g?void 0:g.name)&&"content-type"===e.name.toLowerCase()&&(T=!0,e.value=g.name),e))).concat(h);!T&&(null==g?void 0:g.name)&&b.unshift({name:"Content-Type",value:null==g?void 0:g.name});const C=e.parameters.filter((e=>"cookie"===e.in)).filter((e=>!(a&&!e.required))).map((e=>utils_1.queryString.parse((0,utils_1.serializeParameterValue)(e,Sampler.sample(e.schema.rawSchema,O,i))))).reduce(((e,t)=>{var a;for(const[r,i]of Object.entries(t))e.push({name:r,value:String((null===(a=S.cookie)||void 0===a?void 0:a[r])||i)});return e}),[]).concat(f),D=e.parameters.filter((e=>"query"===e.in)).filter((e=>!(a&&!e.required))).map((e=>utils_1.queryString.parse((0,utils_1.serializeParameterValue)(e,Sampler.sample(e.schema.rawSchema,O,i))))).reduce(((e,t)=>{var a,r,i;for(const[s,n]of Object.entries(t))e.push({name:s,value:(0,utils_1.isArrayOfObjects)(null===(a=S.query)||void 0===a?void 0:a[s])&&JSON.stringify((0,utils_1.deleteEmptyArrayItem)(null===(r=S.query)||void 0===r?void 0:r[s]))||String((null===(i=S.query)||void 0===i?void 0:i[s])||n)});return e}),[]).concat(_),E=`${null===(d=o||e.activeServer)||void 0===d?void 0:d.url.replace(/\/$/,"")}/${e.path.replace(/^\//,"")}`,j=e.parameters.filter((e=>"path"===e.in)).reduce(((e,t)=>{var a;const{in:r,name:i}=t;return e[i]=(null===(a=S.path)||void 0===a?void 0:a[i])||n[i]||(0,utils_1.getParameterValue)(r,i),e}),{}),P=null===(m=null==g?void 0:g.examples)||void 0===m?void 0:m[t],A=(null==g?void 0:g.examples)||{},[q]=Object.values(A),w=S.body||(null==P?void 0:P.value)||(null==q?void 0:q.value)||(null==g?void 0:g.schema)&&Sampler.sample(null==g?void 0:g.schema.rawSchema,O,i),R=null==g?void 0:g.name.toLowerCase();let k="",M=[];switch((0,utils_2.normalizeMimeType)(R)){case constants_1.MediaTypes.JSON:k=JSON.stringify(getDataRequest(w,l));break;case constants_1.MediaTypes.URL_ENCODED:case constants_1.MediaTypes.MULTIPART:k=utils_1.queryString.stringify(getDataRequest(w,l)),M=objectToHarParams(getDataRequest(w,l));break;default:k=String(w||"")}const x=k?{mimeType:(null==g?void 0:g.name)||constants_1.MediaTypes.OCTET_STREAM,text:k,params:M}:void 0,H=e.responses.map((e=>e.code));return{method:e.httpVerb,url:E,httpVersion:"HTTP/1.1",cookies:C,headers:b,queryString:D,postData:x,headersSize:-1,bodySize:-1,securityOAuth2ExtraCalls:v,basicAuth:y,pathParameters:j,serverVariables:(null==o?void 0:o.variables)||e.activeServer.variables,allResponseCodes:H}}const defaultOptions={withImports:!0,withComments:!1},langToSnippetConfig={curl:{code:"shell",defaultTarget:"curl",defaultOptions:Object.assign(Object.assign({},defaultOptions),{short:!0})},JavaScript:{code:"javascript",defaultTarget:"fetch",defaultOptions:Object.assign(Object.assign({},defaultOptions),{withImports:!1})},"Node.js":{code:"node",defaultTarget:"fetch",defaultOptions:Object.assign({},defaultOptions)},Python:{code:"python",defaultTarget:"requests",defaultOptions:Object.assign({},defaultOptions)},"Java8+Apache":{code:"java8",defaultTarget:"apachehttp",defaultOptions:Object.assign({},defaultOptions)},Java:{code:"java",defaultTarget:"httpclient",defaultOptions:Object.assign({},defaultOptions)},"C#":{code:"csharp",defaultTarget:"httpclient",defaultOptions:Object.assign({},defaultOptions)},Go:{code:"go",defaultTarget:"http.DefaultClient",defaultOptions:Object.assign({},defaultOptions)},PHP:{code:"php",defaultTarget:"curl",defaultOptions:Object.assign({},defaultOptions)},Ruby:{code:"ruby",defaultTarget:"net::http",defaultOptions:Object.assign({},defaultOptions)},R:{code:"r",defaultTarget:"httr",defaultOptions:Object.assign({},defaultOptions)}};function getCodeSample({lang:e,operation:t,exampleName:a,pathParams:r,properties:i,options:s={}}){try{const{skipOptionalParameters:n,withOAuth2Call:l,spec:o,generatedPayloadSamplesMaxDepth:u,store:p}=s,c=mapOperationToHAR(t,{exampleName:a,pathParams:r,properties:i,skipOptionalParameters:n,withOAuth2Call:l,spec:o,generatedPayloadSamplesMaxDepth:u},p),d=new httpsnippet_1.HTTPSnippet(c);return langToSnippetConfig[e]?d.convert(langToSnippetConfig[e].code,langToSnippetConfig[e].defaultTarget,Object.assign(Object.assign({},langToSnippetConfig[e].defaultOptions),s)):"Language is not supported."}catch(e){return console.error(e),"Failed to generate code sample."}}function getSecurityData(e,t){var a,r,i,s;const n={securityHeaders:[],securityCookies:[],securityQueries:[],securityOAuth2ExtraCalls:[],basicAuth:void 0};for(const l of(null==e?void 0:e.schemes)||[]){const e=(0,utils_1.getSecurityDetails)(l.id);switch(l.type){case"openIdConnect":null===(a=n.securityHeaders)||void 0===a||a.push({name:"Authorization",value:"Bearer <YOUR_TOKEN_HERE>"});break;case"oauth2":{const a=e.token?`${e.token.token_type||"Bearer"} ${e.token.access_token}`:"Bearer <YOUR_TOKEN_HERE>";l.flows.clientCredentials&&t?n.securityOAuth2ExtraCalls.push(getOAuth2ClientCredsCallHar(l.flows.clientCredentials,l.scopes,e)):l.flows.password&&t&&n.securityOAuth2ExtraCalls.push(getOAuth2PasswordCallHar(l.flows.password,l.scopes,e)),null===(r=n.securityHeaders)||void 0===r||r.push({name:"Authorization",value:a});break}case"apiKey":{const t=e.raw||"YOUR_API_KEY_HERE";"header"===l.in&&(null===(i=n.securityHeaders)||void 0===i||i.push({name:l.name,value:t})),"cookie"===l.in&&n.securityCookies.push({name:l.name,value:t}),"query"===l.in&&n.securityQueries.push({name:l.name,value:t});break}case"http":"basic"===l.scheme?n.basicAuth={username:e.username||`<${string_utility_1.default.toSnakeCase((0,labels_1.l)("tryItAuthBasicUsername"))}>`,password:e.password||`<${string_utility_1.default.toSnakeCase((0,labels_1.l)("tryItAuthBasicPassword"))}>`}:null===(s=n.securityHeaders)||void 0===s||s.push({name:"Authorization",value:`${capitalizeFirst(l.scheme||"bearer")} <YOUR_${l.bearerFormat||"TOKEN"}_HERE>`})}}return n}function getOAuth2PasswordCallHar(e,t,a){return{method:"POST",url:e.tokenUrl,httpVersion:"HTTP/1.1",headers:[{name:"Content-Type",value:constants_1.MediaTypes.URL_ENCODED},{name:"Accept",value:constants_1.MediaTypes.JSON}],queryString:[],postData:{mimeType:constants_1.MediaTypes.URL_ENCODED,text:"",params:[{name:"grant_type",value:"password"},{name:"client_id",value:a.client_id||"YOUR_CLIENT_ID"},{name:"client_secret",value:a.client_secret||"YOUR_CLIENT_SECRET"},{name:"username",value:a.username||"<username>"},{name:"password",value:a.password||"<password>"},t.length?{name:"scope",value:t.join(" ")}:void 0].filter(isDefined)},cookies:[],headersSize:-1,bodySize:-1,securityOAuth2ExtraCalls:[]}}function getOAuth2ClientCredsCallHar(e,t,a){return{method:"POST",url:e.tokenUrl,httpVersion:"HTTP/1.1",headers:[{name:"Content-Type",value:constants_1.MediaTypes.URL_ENCODED},{name:"Accept",value:constants_1.MediaTypes.JSON}],queryString:[],postData:{mimeType:constants_1.MediaTypes.URL_ENCODED,text:"",params:[{name:"grant_type",value:"client_credentials"},{name:"client_id",value:a.client_id||"YOUR_CLIENT_ID"},{name:"client_secret",value:a.client_secret||"YOUR_CLIENT_SECRET"},t.length?{name:"scope",value:t.join(" ")}:void 0].filter(isDefined)},cookies:[],headersSize:-1,bodySize:-1,securityOAuth2ExtraCalls:[]}}function getDataRequest(e,t){if(e){if("object"==typeof e)return(0,deepmerge_1.default)(e,t,{arrayMerge:utils_2.arrayMergeStrategy});try{return(0,deepmerge_1.default)(JSON.parse(e),t,{arrayMerge:utils_2.arrayMergeStrategy})}catch(e){return!1}}return!1}function objectToHarParams(e){const t=[];for(const[a,r]of Object.entries(e))t.push({name:a,value:String(r)});return t}function isDefined(e){return void 0!==e}function capitalizeFirst(e){return e.charAt(0).toUpperCase()+e.slice(1)}exports.getCodeSample=getCodeSample,exports.isDefined=isDefined,exports.capitalizeFirst=capitalizeFirst;
|
|
1
|
+
"use strict";var __createBinding=this&&this.__createBinding||(Object.create?function(e,t,a,r){void 0===r&&(r=a);var i=Object.getOwnPropertyDescriptor(t,a);i&&!("get"in i?!t.__esModule:i.writable||i.configurable)||(i={enumerable:!0,get:function(){return t[a]}}),Object.defineProperty(e,r,i)}:function(e,t,a,r){void 0===r&&(r=a),e[r]=t[a]}),__setModuleDefault=this&&this.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),__importStar=this&&this.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var a in e)"default"!==a&&Object.prototype.hasOwnProperty.call(e,a)&&__createBinding(t,e,a);return __setModuleDefault(t,e),t},__importDefault=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(exports,"__esModule",{value:!0}),exports.capitalizeFirst=exports.isDefined=exports.getCodeSample=void 0;const Sampler=__importStar(require("openapi-sampler")),deepmerge_1=__importDefault(require("deepmerge")),utils_1=require("../../utils"),utils_2=require("../utils"),constants_1=require("../../constants"),labels_1=require("../labels"),httpsnippet_1=require("./httpsnippet"),string_utility_1=__importDefault(require("./httpsnippet/helpers/string-utility")),mediaContent_1=require("../../models/mediaContent");function mapOperationToHAR(e,{exampleName:t="",skipOptionalParameters:a=!1,withOAuth2Call:r=!1,spec:i,generatedPayloadSamplesMaxDepth:s=8,pathParams:n={},properties:l={}},{activeServer:o,requestValues:u}){var p,c,d,m;const{securityHeaders:h,securityCookies:f,securityQueries:_,securityOAuth2ExtraCalls:v,basicAuth:g}=getSecurityData(null===(p=e.security)||void 0===p?void 0:p[0],r),y=(null===(c=null==e?void 0:e.requestBody)||void 0===c?void 0:c.content)&&(0,mediaContent_1.getActiveMediaType)(e.requestBody.content),O={skipNonRequired:a,skipReadOnly:!0,maxSampleDepth:s},S={path:null==u?void 0:u.path,cookie:null==u?void 0:u.cookie,header:null==u?void 0:u.header,query:null==u?void 0:u.query,body:null==u?void 0:u.body};let T=!1;const b=e.parameters.filter((e=>"header"===e.in)).filter((e=>!(a&&!e.required))).map((e=>{var t;return{name:e.name,value:(null===(t=S.header)||void 0===t?void 0:t[e.name])||(0,utils_1.getParameterValue)("header",e.name)||(0,utils_1.serializeParameterValue)(e,Sampler.sample(e.schema.rawSchema,O,i))}})).map((e=>((null==y?void 0:y.name)&&"content-type"===e.name.toLowerCase()&&(T=!0,e.value=y.name),e))).concat(h);!T&&(null==y?void 0:y.name)&&b.unshift({name:"Content-Type",value:null==y?void 0:y.name});const C=e.parameters.filter((e=>"cookie"===e.in)).filter((e=>!(a&&!e.required))).map((e=>utils_1.queryString.parse((0,utils_1.serializeParameterValue)(e,Sampler.sample(e.schema.rawSchema,O,i))))).reduce(((e,t)=>{var a;for(const[r,i]of Object.entries(t))e.push({name:r,value:String((null===(a=S.cookie)||void 0===a?void 0:a[r])||i)});return e}),[]).concat(f),D=e.parameters.filter((e=>"query"===e.in)).filter((e=>!(a&&!e.required))).map((e=>utils_1.queryString.parse((0,utils_1.serializeParameterValue)(e,Sampler.sample(e.schema.rawSchema,O,i))))).reduce(((e,t)=>{var a,r,i;for(const[s,n]of Object.entries(t))e.push({name:s,value:(0,utils_1.isArrayOfObjects)(null===(a=S.query)||void 0===a?void 0:a[s])&&JSON.stringify((0,utils_1.deleteEmptyArrayItem)(null===(r=S.query)||void 0===r?void 0:r[s]))||String((null===(i=S.query)||void 0===i?void 0:i[s])||n)});return e}),[]).concat(_),E=`${null===(d=o||e.activeServer)||void 0===d?void 0:d.url.replace(/\/$/,"")}/${e.path.replace(/^\//,"")}`,j=e.parameters.filter((e=>"path"===e.in)).reduce(((e,t)=>{var a;const{in:r,name:i}=t;return e[i]=(null===(a=S.path)||void 0===a?void 0:a[i])||n[i]||(0,utils_1.getParameterValue)(r,i),e}),{}),w=null===(m=null==y?void 0:y.examples)||void 0===m?void 0:m[t],P=(null==y?void 0:y.examples)||{},[A]=Object.values(P),q=S.body||(null==w?void 0:w.value)||(null==A?void 0:A.value)||(null==y?void 0:y.schema)&&Sampler.sample(null==y?void 0:y.schema.rawSchema,O,i),R=null==y?void 0:y.name.toLowerCase();let k="",M=[];switch((0,utils_2.normalizeMimeType)(R)){case constants_1.MediaTypes.JSON:k=JSON.stringify(getDataRequest(q,l));break;case constants_1.MediaTypes.URL_ENCODED:case constants_1.MediaTypes.MULTIPART:k=utils_1.queryString.stringify(getDataRequest(q,l)),M=objectToHarParams(getDataRequest(q,l));break;default:k=String(q||"")}const x=k?{mimeType:(null==y?void 0:y.name)||constants_1.MediaTypes.OCTET_STREAM,text:k,params:M}:void 0,N=e.responses.map((e=>e.code));return{method:e.httpVerb,url:E,httpVersion:"HTTP/1.1",cookies:C,headers:b,queryString:D,postData:x,headersSize:-1,bodySize:-1,securityOAuth2ExtraCalls:v,basicAuth:g,pathParameters:j,serverVariables:(null==o?void 0:o.variables)||e.activeServer.variables,allResponseCodes:N}}const defaultOptions={withImports:!0,withComments:!1},langToSnippetConfig={curl:{code:"shell",defaultTarget:"curl",defaultOptions:Object.assign(Object.assign({},defaultOptions),{short:!0})},JavaScript:{code:"javascript",defaultTarget:"fetch",defaultOptions:Object.assign(Object.assign({},defaultOptions),{withImports:!1})},"Node.js":{code:"node",defaultTarget:"fetch",defaultOptions:Object.assign({},defaultOptions)},Python:{code:"python",defaultTarget:"requests",defaultOptions:Object.assign({},defaultOptions)},"Java8+Apache":{code:"java8",defaultTarget:"apachehttp",defaultOptions:Object.assign({},defaultOptions)},Java:{code:"java",defaultTarget:"httpclient",defaultOptions:Object.assign({},defaultOptions)},"C#":{code:"csharp",defaultTarget:"httpclient",defaultOptions:Object.assign({},defaultOptions)},"C#+Newtonsoft":{code:"csharpNewtonsoft",defaultTarget:"httpclient",defaultOptions:Object.assign({},defaultOptions)},Go:{code:"go",defaultTarget:"http.DefaultClient",defaultOptions:Object.assign({},defaultOptions)},PHP:{code:"php",defaultTarget:"curl",defaultOptions:Object.assign({},defaultOptions)},Ruby:{code:"ruby",defaultTarget:"net::http",defaultOptions:Object.assign({},defaultOptions)},R:{code:"r",defaultTarget:"httr",defaultOptions:Object.assign({},defaultOptions)}};function getCodeSample({lang:e,operation:t,exampleName:a,pathParams:r,properties:i,options:s={}}){try{const{skipOptionalParameters:n,withOAuth2Call:l,spec:o,generatedPayloadSamplesMaxDepth:u,store:p}=s,c=mapOperationToHAR(t,{exampleName:a,pathParams:r,properties:i,skipOptionalParameters:n,withOAuth2Call:l,spec:o,generatedPayloadSamplesMaxDepth:u},p),d=new httpsnippet_1.HTTPSnippet(c);return langToSnippetConfig[e]?d.convert(langToSnippetConfig[e].code,langToSnippetConfig[e].defaultTarget,Object.assign(Object.assign({},langToSnippetConfig[e].defaultOptions),s)):"Language is not supported."}catch(e){return console.error(e),"Failed to generate code sample."}}function getSecurityData(e,t){var a,r,i,s;const n={securityHeaders:[],securityCookies:[],securityQueries:[],securityOAuth2ExtraCalls:[],basicAuth:void 0};for(const l of(null==e?void 0:e.schemes)||[]){const e=(0,utils_1.getSecurityDetails)(l.id);switch(l.type){case"openIdConnect":null===(a=n.securityHeaders)||void 0===a||a.push({name:"Authorization",value:"Bearer <YOUR_TOKEN_HERE>"});break;case"oauth2":{const a=e.token?`${e.token.token_type||"Bearer"} ${e.token.access_token}`:"Bearer <YOUR_TOKEN_HERE>";l.flows.clientCredentials&&t?n.securityOAuth2ExtraCalls.push(getOAuth2ClientCredsCallHar(l.flows.clientCredentials,l.scopes,e)):l.flows.password&&t&&n.securityOAuth2ExtraCalls.push(getOAuth2PasswordCallHar(l.flows.password,l.scopes,e)),null===(r=n.securityHeaders)||void 0===r||r.push({name:"Authorization",value:a});break}case"apiKey":{const t=e.raw||"YOUR_API_KEY_HERE";"header"===l.in&&(null===(i=n.securityHeaders)||void 0===i||i.push({name:l.name,value:t})),"cookie"===l.in&&n.securityCookies.push({name:l.name,value:t}),"query"===l.in&&n.securityQueries.push({name:l.name,value:t});break}case"http":"basic"===l.scheme?n.basicAuth={username:e.username||`<${string_utility_1.default.toSnakeCase((0,labels_1.l)("tryItAuthBasicUsername"))}>`,password:e.password||`<${string_utility_1.default.toSnakeCase((0,labels_1.l)("tryItAuthBasicPassword"))}>`}:null===(s=n.securityHeaders)||void 0===s||s.push({name:"Authorization",value:`${capitalizeFirst(l.scheme||"bearer")} <YOUR_${l.bearerFormat||"TOKEN"}_HERE>`})}}return n}function getOAuth2PasswordCallHar(e,t,a){return{method:"POST",url:e.tokenUrl,httpVersion:"HTTP/1.1",headers:[{name:"Content-Type",value:constants_1.MediaTypes.URL_ENCODED},{name:"Accept",value:constants_1.MediaTypes.JSON}],queryString:[],postData:{mimeType:constants_1.MediaTypes.URL_ENCODED,text:"",params:[{name:"grant_type",value:"password"},{name:"client_id",value:a.client_id||"YOUR_CLIENT_ID"},{name:"client_secret",value:a.client_secret||"YOUR_CLIENT_SECRET"},{name:"username",value:a.username||"<username>"},{name:"password",value:a.password||"<password>"},t.length?{name:"scope",value:t.join(" ")}:void 0].filter(isDefined)},cookies:[],headersSize:-1,bodySize:-1,securityOAuth2ExtraCalls:[]}}function getOAuth2ClientCredsCallHar(e,t,a){return{method:"POST",url:e.tokenUrl,httpVersion:"HTTP/1.1",headers:[{name:"Content-Type",value:constants_1.MediaTypes.URL_ENCODED},{name:"Accept",value:constants_1.MediaTypes.JSON}],queryString:[],postData:{mimeType:constants_1.MediaTypes.URL_ENCODED,text:"",params:[{name:"grant_type",value:"client_credentials"},{name:"client_id",value:a.client_id||"YOUR_CLIENT_ID"},{name:"client_secret",value:a.client_secret||"YOUR_CLIENT_SECRET"},t.length?{name:"scope",value:t.join(" ")}:void 0].filter(isDefined)},cookies:[],headersSize:-1,bodySize:-1,securityOAuth2ExtraCalls:[]}}function getDataRequest(e,t){if(e){if("object"==typeof e)return(0,deepmerge_1.default)(e,t,{arrayMerge:utils_2.arrayMergeStrategy});try{return(0,deepmerge_1.default)(JSON.parse(e),t,{arrayMerge:utils_2.arrayMergeStrategy})}catch(e){return!1}}return!1}function objectToHarParams(e){const t=[];for(const[a,r]of Object.entries(e))t.push({name:a,value:String(r)});return t}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 __createBinding=this&&this.__createBinding||(Object.create?function(
|
|
1
|
+
"use strict";var __createBinding=this&&this.__createBinding||(Object.create?function(n,a,t,e){void 0===e&&(e=t);var i=Object.getOwnPropertyDescriptor(a,t);i&&!("get"in i?!a.__esModule:i.writable||i.configurable)||(i={enumerable:!0,get:function(){return a[t]}}),Object.defineProperty(n,e,i)}:function(n,a,t,e){void 0===e&&(e=t),n[e]=a[t]}),__setModuleDefault=this&&this.__setModuleDefault||(Object.create?function(n,a){Object.defineProperty(n,"default",{enumerable:!0,value:a})}:function(n,a){n.default=a}),__importStar=this&&this.__importStar||function(n){if(n&&n.__esModule)return n;var a={};if(null!=n)for(var t in n)"default"!==t&&Object.prototype.hasOwnProperty.call(n,t)&&__createBinding(a,n,t);return __setModuleDefault(a,n),a},__importDefault=this&&this.__importDefault||function(n){return n&&n.__esModule?n:{default:n}};Object.defineProperty(exports,"__esModule",{value:!0}),exports.CodeBuilder=void 0;const util=__importStar(require("util")),constants_1=require("./constants"),string_utility_1=__importDefault(require("./string-utility")),langToVarNameConvention={[constants_1.Lang.NODEJS]:constants_1.NamingVariableConventions.CAMEL_CASE,[constants_1.Lang.JAVASCRIPT]:constants_1.NamingVariableConventions.CAMEL_CASE,[constants_1.Lang.PYTHON]:constants_1.NamingVariableConventions.UNDER_SCORES,[constants_1.Lang.JAVA8]:constants_1.NamingVariableConventions.CAMEL_CASE,[constants_1.Lang.JAVA]:constants_1.NamingVariableConventions.CAMEL_CASE,[constants_1.Lang.CSHARP]:constants_1.NamingVariableConventions.PASCAL_CASE,[constants_1.Lang.CSHARPNEWTONSOFT]:constants_1.NamingVariableConventions.PASCAL_CASE,[constants_1.Lang.CURL]:constants_1.NamingVariableConventions.CAMEL_CASE,[constants_1.Lang.GO]:constants_1.NamingVariableConventions.CAMEL_CASE,[constants_1.Lang.PHP]:constants_1.NamingVariableConventions.CAMEL_CASE,[constants_1.Lang.RUBY]:constants_1.NamingVariableConventions.UNDER_SCORES,[constants_1.Lang.R]:constants_1.NamingVariableConventions.UNDER_SCORES},langOptions={default:{joinSymbol:"",variableWrapperFn:n=>n,stringLiteral:n=>n,variableDeclaration:n=>n,urlFieldName:"url"},[constants_1.Lang.CSHARP]:{joinSymbol:" + ",stringLiteral:n=>`"${n}"`,variableDeclaration:n=>`var ${n} = "%s";`,urlFieldName:"fullUrl"},[constants_1.Lang.CSHARPNEWTONSOFT]:{joinSymbol:" + ",stringLiteral:n=>`"${n}"`,variableDeclaration:n=>`var ${n} = "%s";`,urlFieldName:"fullUrl"},[constants_1.Lang.GO]:{joinSymbol:" + ",stringLiteral:n=>`"${n}"`,variableDeclaration:n=>`${n} := "%s";`},[constants_1.Lang.JAVA]:{joinSymbol:" + ",stringLiteral:n=>`"${n}"`,variableDeclaration:n=>`var ${n} = "%s";`,urlFieldName:"pathname"},[constants_1.Lang.JAVA8]:{joinSymbol:" + ",stringLiteral:n=>`"${n}"`,variableDeclaration:n=>`String ${n} = "%s";`,urlFieldName:"fullUrl"},[constants_1.Lang.JAVASCRIPT]:{variableWrapperFn:n=>"${"+n+"}",variableDeclaration:n=>`const ${n} = '%s';`},[constants_1.Lang.NODEJS]:{variableWrapperFn:n=>"${"+n+"}",variableDeclaration:n=>`const ${n} = '%s';`},[constants_1.Lang.PHP]:{joinSymbol:" . ",stringLiteral:n=>`"${n}"`,variableDeclaration:n=>`const ${n} = "%s";`},[constants_1.Lang.PYTHON]:{stringLiteral:n=>`"${n}"`,joinSymbol:" + ",variableDeclaration:n=>`${n} = "%s"`},[constants_1.Lang.RUBY]:{joinSymbol:" + ",stringLiteral:n=>`'${n}'`,variableDeclaration:n=>`${n} = '%s'`},[constants_1.Lang.CURL]:{variableWrapperFn:(n,a)=>a||`{${n}}`,urlFieldName:"fullUrl",rawName:!0},[constants_1.Lang.R]:{joinSymbol:" %&% ",variableDeclaration:n=>`${n} = "%s"`,urlFieldName:"fullUrl",stringLiteral:n=>`"${n}"`,variableWrapperFn:n=>`${n}`}},reservedVariableNames=["response","request","requests","data","url","payload","main","accessToken","resp","Program","client","postData","App","httpClient","params","pathname","host","body","fetch","query"];class CodeBuilder{constructor({indentation:n,lineJoin:a="\n",variablesPrefix:t="",capitalize:e=!1,lang:i=constants_1.Lang.CURL}){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=e,this.lang=i,this.langOptions=Object.assign(Object.assign({},langOptions.default),langOptions[i])}buildLine(n,a){let t="",e=2;if("string"==typeof n)e=1,a=n,n=0;else if(null===n)return null;for(;n;)t+=this.indentation,n--;const i=Array.prototype.slice.call(arguments,e,arguments.length);return i.unshift(t+a),util.format.apply(this,i)}unshift(...n){return this.code.unshift(this.buildLine.apply(this,n)),this}push(...n){return this.code.push(this.buildLine.apply(this,n)),this}blank(){return this.code.push(null),this}join(){return this.code.join(this.lineJoin)}clean(){this.code.splice(1)}var(n,a=constants_1.VariableType.CUSTOM){if(a===constants_1.VariableType.PATH){let a=this.variablesPrefix+n;switch(reservedVariableNames.includes(a)&&(a=`${a}_path`),langToVarNameConvention[this.lang]){case constants_1.NamingVariableConventions.UNDER_SCORES:a=string_utility_1.default.toSnakeCase(a);break;case constants_1.NamingVariableConventions.PASCAL_CASE:a=string_utility_1.default.toPascalCase(a);break;case constants_1.NamingVariableConventions.CAMEL_CASE:default:a=string_utility_1.default.toCamelCase(a)}return a}return this.variablesPrefix?this.variablesPrefix+(this.capitalize?string_utility_1.default.toPascalCase(n):n):n}}exports.CodeBuilder=CodeBuilder;
|
|
2
2
|
//# sourceMappingURL=code-builder.js.map
|
|
@@ -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=Lang={})),function(a){a.UNDER_SCORES="under_scores",a.CAMEL_CASE="camelCase",a.PASCAL_CASE="PascalCase"}(NamingVariableConventions||(exports.NamingVariableConventions=NamingVariableConventions={})),function(a){a.IMPORT="import",a.CUSTOM="custom",a.PATH="path"}(VariableType||(exports.VariableType=VariableType={}));
|
|
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.CSHARPNEWTONSOFT="C#+Newtonsoft",a.CURL="curl",a.GO="Go",a.PHP="PHP",a.RUBY="Ruby",a.R="R"}(Lang||(exports.Lang=Lang={})),function(a){a.UNDER_SCORES="under_scores",a.CAMEL_CASE="camelCase",a.PASCAL_CASE="PascalCase"}(NamingVariableConventions||(exports.NamingVariableConventions=NamingVariableConventions={})),function(a){a.IMPORT="import",a.CUSTOM="custom",a.PATH="path"}(VariableType||(exports.VariableType=VariableType={}));
|
|
2
2
|
//# sourceMappingURL=constants.js.map
|
|
@@ -6,6 +6,7 @@ export declare const printUrlVariablesDeclarationsOutput: {
|
|
|
6
6
|
'Java8+Apache': string;
|
|
7
7
|
Java: string;
|
|
8
8
|
'C#': string;
|
|
9
|
+
'C#+Newtonsoft': string;
|
|
9
10
|
curl: string;
|
|
10
11
|
Go: string;
|
|
11
12
|
PHP: string;
|
|
@@ -20,6 +21,7 @@ export declare const buildUrlExpressionData: {
|
|
|
20
21
|
'Java8+Apache': string;
|
|
21
22
|
Java: string;
|
|
22
23
|
'C#': string;
|
|
24
|
+
'C#+Newtonsoft': string;
|
|
23
25
|
curl: string;
|
|
24
26
|
Go: string;
|
|
25
27
|
PHP: string;
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.buildUrlExpressionData=exports.buildUrlExpressionCases=exports.printUrlVariablesDeclarationsOutput=exports.commonVariablesInput=void 0,exports.commonVariablesInput={pathParameters:{pathParam1:"pathParam1Value",pathParam2:"pathParam2Value"},serverVariables:{serverVariable1:"serverVariable1Value",serverVariable2:"serverVariable2Value"}},exports.printUrlVariablesDeclarationsOutput={"Node.js":"const variablesPrefixpathParam1 = 'pathParam1Value';\nconst variablesPrefixpathParam2 = 'pathParam2Value';\nconst variablesPrefixserverVariable1 = 'serverVariable1Value';\nconst variablesPrefixserverVariable2 = 'serverVariable2Value';",javascript:"const variablesPrefixpathParam1 = 'pathParam1Value';\nconst variablesPrefixpathParam2 = 'pathParam2Value';\nconst variablesPrefixserverVariable1 = 'serverVariable1Value';\nconst variablesPrefixserverVariable2 = 'serverVariable2Value';",Python:'variables_prefixpath_param_1 = "pathParam1Value"\nvariables_prefixpath_param_2 = "pathParam2Value"\nvariables_prefixserver_variable_1 = "serverVariable1Value"\nvariables_prefixserver_variable_2 = "serverVariable2Value"',"Java8+Apache":'String variablesPrefixpathParam1 = "pathParam1Value";\nString variablesPrefixpathParam2 = "pathParam2Value";\nString variablesPrefixserverVariable1 = "serverVariable1Value";\nString variablesPrefixserverVariable2 = "serverVariable2Value";',Java:'var variablesPrefixpathParam1 = "pathParam1Value";\nvar variablesPrefixpathParam2 = "pathParam2Value";\nvar variablesPrefixserverVariable1 = "serverVariable1Value";\nvar variablesPrefixserverVariable2 = "serverVariable2Value";',"C#":'var VariablesPrefixpathParam1 = "pathParam1Value";\nvar VariablesPrefixpathParam2 = "pathParam2Value";\nvar VariablesPrefixserverVariable1 = "serverVariable1Value";\nvar VariablesPrefixserverVariable2 = "serverVariable2Value";',curl:"variablesPrefixpathParam1 pathParam1Value\nvariablesPrefixpathParam2 pathParam2Value\nvariablesPrefixserverVariable1 serverVariable1Value\nvariablesPrefixserverVariable2 serverVariable2Value",Go:'variablesPrefixpathParam1 := "pathParam1Value";\nvariablesPrefixpathParam2 := "pathParam2Value";\nvariablesPrefixserverVariable1 := "serverVariable1Value";\nvariablesPrefixserverVariable2 := "serverVariable2Value";',PHP:'const variablesPrefixpathParam1 = "pathParam1Value";\nconst variablesPrefixpathParam2 = "pathParam2Value";\nconst variablesPrefixserverVariable1 = "serverVariable1Value";\nconst variablesPrefixserverVariable2 = "serverVariable2Value";',Ruby:"variables_prefixpath_param_1 = 'pathParam1Value'\nvariables_prefixpath_param_2 = 'pathParam2Value'\nvariables_prefixserver_variable_1 = 'serverVariable1Value'\nvariables_prefixserver_variable_2 = 'serverVariable2Value'",R:'variables_prefixpath_param_1 = "pathParam1Value"\nvariables_prefixpath_param_2 = "pathParam2Value"\nvariables_prefixserver_variable_1 = "serverVariable1Value"\nvariables_prefixserver_variable_2 = "serverVariable2Value"'},exports.buildUrlExpressionCases={},exports.buildUrlExpressionData={"Node.js":"http://acme.com/${variablesPrefixpathParam1}/${variablesPrefixpathParam2}/${variablesPrefixserverVariable1}/${variablesPrefixserverVariable2}",javascript:"http://acme.com/${variablesPrefixpathParam1}/${variablesPrefixpathParam2}/${variablesPrefixserverVariable1}/${variablesPrefixserverVariable2}",Python:'"http://acme.com/" + variables_prefixpath_param_1 + "/" + variables_prefixpath_param_2 + "/" + variables_prefixserver_variable_1 + "/" + variables_prefixserver_variable_2',"Java8+Apache":'"http://acme.com/" + variablesPrefixpathParam1 + "/" + variablesPrefixpathParam2 + "/" + variablesPrefixserverVariable1 + "/" + variablesPrefixserverVariable2',Java:'"http://acme.com/" + variablesPrefixpathParam1 + "/" + variablesPrefixpathParam2 + "/" + variablesPrefixserverVariable1 + "/" + variablesPrefixserverVariable2',"C#":'"http://acme.com/" + VariablesPrefixpathParam1 + "/" + VariablesPrefixpathParam2 + "/" + VariablesPrefixserverVariable1 + "/" + VariablesPrefixserverVariable2',curl:"http://acme.com/pathParam1Value/pathParam2Value/serverVariable1Value/serverVariable2Value",Go:'"http://acme.com/" + variablesPrefixpathParam1 + "/" + variablesPrefixpathParam2 + "/" + variablesPrefixserverVariable1 + "/" + variablesPrefixserverVariable2',PHP:'"http://acme.com/" . variablesPrefixpathParam1 . "/" . variablesPrefixpathParam2 . "/" . variablesPrefixserverVariable1 . "/" . variablesPrefixserverVariable2',Ruby:"'http://acme.com/' + variables_prefixpath_param_1 + '/' + variables_prefixpath_param_2 + '/' + variables_prefixserver_variable_1 + '/' + variables_prefixserver_variable_2",R:'"http://acme.com/" %&% variables_prefixpath_param_1 %&% "/" %&% variables_prefixpath_param_2 %&% "/" %&% variables_prefixserver_variable_1 %&% "/" %&% variables_prefixserver_variable_2'};
|
|
1
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.buildUrlExpressionData=exports.buildUrlExpressionCases=exports.printUrlVariablesDeclarationsOutput=exports.commonVariablesInput=void 0,exports.commonVariablesInput={pathParameters:{pathParam1:"pathParam1Value",pathParam2:"pathParam2Value"},serverVariables:{serverVariable1:"serverVariable1Value",serverVariable2:"serverVariable2Value"}},exports.printUrlVariablesDeclarationsOutput={"Node.js":"const variablesPrefixpathParam1 = 'pathParam1Value';\nconst variablesPrefixpathParam2 = 'pathParam2Value';\nconst variablesPrefixserverVariable1 = 'serverVariable1Value';\nconst variablesPrefixserverVariable2 = 'serverVariable2Value';",javascript:"const variablesPrefixpathParam1 = 'pathParam1Value';\nconst variablesPrefixpathParam2 = 'pathParam2Value';\nconst variablesPrefixserverVariable1 = 'serverVariable1Value';\nconst variablesPrefixserverVariable2 = 'serverVariable2Value';",Python:'variables_prefixpath_param_1 = "pathParam1Value"\nvariables_prefixpath_param_2 = "pathParam2Value"\nvariables_prefixserver_variable_1 = "serverVariable1Value"\nvariables_prefixserver_variable_2 = "serverVariable2Value"',"Java8+Apache":'String variablesPrefixpathParam1 = "pathParam1Value";\nString variablesPrefixpathParam2 = "pathParam2Value";\nString variablesPrefixserverVariable1 = "serverVariable1Value";\nString variablesPrefixserverVariable2 = "serverVariable2Value";',Java:'var variablesPrefixpathParam1 = "pathParam1Value";\nvar variablesPrefixpathParam2 = "pathParam2Value";\nvar variablesPrefixserverVariable1 = "serverVariable1Value";\nvar variablesPrefixserverVariable2 = "serverVariable2Value";',"C#":'var VariablesPrefixpathParam1 = "pathParam1Value";\nvar VariablesPrefixpathParam2 = "pathParam2Value";\nvar VariablesPrefixserverVariable1 = "serverVariable1Value";\nvar VariablesPrefixserverVariable2 = "serverVariable2Value";',"C#+Newtonsoft":'var VariablesPrefixpathParam1 = "pathParam1Value";\nvar VariablesPrefixpathParam2 = "pathParam2Value";\nvar VariablesPrefixserverVariable1 = "serverVariable1Value";\nvar VariablesPrefixserverVariable2 = "serverVariable2Value";',curl:"variablesPrefixpathParam1 pathParam1Value\nvariablesPrefixpathParam2 pathParam2Value\nvariablesPrefixserverVariable1 serverVariable1Value\nvariablesPrefixserverVariable2 serverVariable2Value",Go:'variablesPrefixpathParam1 := "pathParam1Value";\nvariablesPrefixpathParam2 := "pathParam2Value";\nvariablesPrefixserverVariable1 := "serverVariable1Value";\nvariablesPrefixserverVariable2 := "serverVariable2Value";',PHP:'const variablesPrefixpathParam1 = "pathParam1Value";\nconst variablesPrefixpathParam2 = "pathParam2Value";\nconst variablesPrefixserverVariable1 = "serverVariable1Value";\nconst variablesPrefixserverVariable2 = "serverVariable2Value";',Ruby:"variables_prefixpath_param_1 = 'pathParam1Value'\nvariables_prefixpath_param_2 = 'pathParam2Value'\nvariables_prefixserver_variable_1 = 'serverVariable1Value'\nvariables_prefixserver_variable_2 = 'serverVariable2Value'",R:'variables_prefixpath_param_1 = "pathParam1Value"\nvariables_prefixpath_param_2 = "pathParam2Value"\nvariables_prefixserver_variable_1 = "serverVariable1Value"\nvariables_prefixserver_variable_2 = "serverVariable2Value"'},exports.buildUrlExpressionCases={},exports.buildUrlExpressionData={"Node.js":"http://acme.com/${variablesPrefixpathParam1}/${variablesPrefixpathParam2}/${variablesPrefixserverVariable1}/${variablesPrefixserverVariable2}",javascript:"http://acme.com/${variablesPrefixpathParam1}/${variablesPrefixpathParam2}/${variablesPrefixserverVariable1}/${variablesPrefixserverVariable2}",Python:'"http://acme.com/" + variables_prefixpath_param_1 + "/" + variables_prefixpath_param_2 + "/" + variables_prefixserver_variable_1 + "/" + variables_prefixserver_variable_2',"Java8+Apache":'"http://acme.com/" + variablesPrefixpathParam1 + "/" + variablesPrefixpathParam2 + "/" + variablesPrefixserverVariable1 + "/" + variablesPrefixserverVariable2',Java:'"http://acme.com/" + variablesPrefixpathParam1 + "/" + variablesPrefixpathParam2 + "/" + variablesPrefixserverVariable1 + "/" + variablesPrefixserverVariable2',"C#":'"http://acme.com/" + VariablesPrefixpathParam1 + "/" + VariablesPrefixpathParam2 + "/" + VariablesPrefixserverVariable1 + "/" + VariablesPrefixserverVariable2',"C#+Newtonsoft":'"http://acme.com/" + VariablesPrefixpathParam1 + "/" + VariablesPrefixpathParam2 + "/" + VariablesPrefixserverVariable1 + "/" + VariablesPrefixserverVariable2',curl:"http://acme.com/pathParam1Value/pathParam2Value/serverVariable1Value/serverVariable2Value",Go:'"http://acme.com/" + variablesPrefixpathParam1 + "/" + variablesPrefixpathParam2 + "/" + variablesPrefixserverVariable1 + "/" + variablesPrefixserverVariable2',PHP:'"http://acme.com/" . variablesPrefixpathParam1 . "/" . variablesPrefixpathParam2 . "/" . variablesPrefixserverVariable1 . "/" . variablesPrefixserverVariable2',Ruby:"'http://acme.com/' + variables_prefixpath_param_1 + '/' + variables_prefixpath_param_2 + '/' + variables_prefixserver_variable_1 + '/' + variables_prefixserver_variable_2",R:'"http://acme.com/" %&% variables_prefixpath_param_1 %&% "/" %&% variables_prefixpath_param_2 %&% "/" %&% variables_prefixserver_variable_1 %&% "/" %&% variables_prefixserver_variable_2'};
|
|
2
2
|
//# sourceMappingURL=code-helpers-mock.js.map
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
"use strict";
|
|
1
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.info=void 0;const 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"),constants_2=require("../../../../../constants"),utils_2=require("../../../../../utils"),handler=function(t,e,{target:s,client:a}){var n,i,r,o;const p=Object.assign({indent:" ",withWrapper:!0},e),u=new code_builder_1.CodeBuilder({indentation:p.indent,variablesPrefix:p.variablesPrefix,capitalize:!0,lang:constants_1.Lang.CSHARP}),l=formatHttpMethod(t.method);if(p.withComments&&addComments(u),p.withWrapper&&(u.push("using System;"),u.push("using System.Net.Http;"),u.push("using System.Threading.Tasks;"),(h(constants_2.MediaTypes.JSON)||h(constants_2.MediaTypes.XML)||t.basicAuth)&&u.push("using System.Text;"),(h(constants_2.MediaTypes.URL_ENCODED)||(null===(n=t.securityOAuth2ExtraCalls)||void 0===n?void 0:n.length))&&u.push("using System.Collections.Generic;"),(h(constants_2.MediaTypes.JSON)||(null===(i=t.securityOAuth2ExtraCalls)||void 0===i?void 0:i.length))&&u.push("using System.Text.Json;"),d()&&u.push("using System.IO;"),(d()||t.basicAuth)&&u.push("using System.Net.Http.Headers;"),u.blank(),u.push("public class Program"),u.push("{"),u.push(1,"public static async Task Main()"),u.push(1,"{")),null===(r=t.securityOAuth2ExtraCalls)||void 0===r?void 0:r.length){const e=new __1.HTTPSnippet(null===(o=t.securityOAuth2ExtraCalls)||void 0===o?void 0:o[0]).convert(s,a,Object.assign(Object.assign({},p),{withImports:!1,withWrapper:!1,withComments:!1,variablesPrefix:"oauth2"}));u.push(e),u.push(2,"var oauth2Response = await oauth2Request.Content.ReadAsStringAsync();"),u.push(2,"JObject inputJObject = JObject.Parse(oauth2Response);"),u.push(2,'var accessToken = inputJObject["access_token"].ToString();'),u.blank()}const c=Object.keys(t.allHeaders).filter((t=>{switch(t.toLowerCase()){case"content-type":case"content-length":case"accept-encoding":return!1;default:return!0}}));if(c.length?(u.push(2,"System.Net.Http.HttpClient client = new()"),u.push(2,"{"),u.push(3,"DefaultRequestHeaders ="),u.push(3,"{"),c.forEach((e=>{var s;u.push(4,'{"%s", %s},',e,(null===(s=t.securityOAuth2ExtraCalls)||void 0===s?void 0:s.length)?'"Bearer " + accessToken':`"${t.allHeaders[e]}"`)})),u.push(3,"}"),u.push(2,"};")):u.push(2,"System.Net.Http.HttpClient client = new();"),u.blank(),t.basicAuth){const{username:e,password:s}=t.basicAuth;u.push(2,`string base64String = Convert.ToBase64String(Encoding.ASCII.GetBytes("${e}:${s}"));`),u.push(2,'client.DefaultRequestHeaders.Authorization = new AuthenticationHeaderValue(@"Basic", base64String);'),u.blank()}if(t.postData)switch((0,utils_1.normalizeMimeType)(t.postData.mimeType)){case constants_2.MediaTypes.URL_ENCODED:t.postData.params&&(u.blank(),u.push(2,"List<KeyValuePair<string, string>> postData = new List<KeyValuePair<string, string>>();"),t.postData.params.forEach((t=>{u.push(2,'postData.Add(new KeyValuePair<string, string>("%s", "%s"));',t.name,t.value)})),u.blank());break;case constants_2.MediaTypes.MULTIPART:t.postData.params&&(u.blank(),u.push(2,"MultipartFormDataContent postData = new MultipartFormDataContent();"),t.postData.params.forEach((t=>{u.push(2,'postData.Add(new StringContent("%s"), "%s");',t.value,t.name)})));break;case constants_2.MediaTypes.JSON:t.postData.jsonObj&&(u.push(2,"string json = JsonSerializer.Serialize(new"),u.push(2,"{"),y(t.postData.jsonObj,3),u.push(2,"});"),u.blank(),u.push(2,'using StringContent postData = new(json, Encoding.UTF8, "%s");',t.postData.mimeType));break;case constants_2.MediaTypes.XML:t.postData.text&&(t.postData.text.trim().split("\n").forEach(((t,e)=>{const s=(0===e?'string xml = @"':"")+t.replace(/"/g,'""');u.push(0===e?2:3,s)})),u.push(2,'";'),u.push(2,'using StringContent postData = new StringContent(xml, Encoding.UTF8, "%s");',t.postData.mimeType))}else d()&&(u.push(2,"var ms = new MemoryStream();"),u.push(2,"var postData = new StreamContent(ms);"),u.push(2,'postData.Headers.ContentType = new MediaTypeHeaderValue("application/octet-stream");'));return(0,code_helpers_1.printUrlVariablesDeclarations)(t,u,3),u.push(2,"using HttpResponseMessage %s = await client.%sAsync(%s%s);",u.var("request"),l,(0,code_helpers_1.buildUrlExpression)(t,u),p.withImports?isDataMethod(t.method)?(0,utils_1.normalizeMimeType)(t.postData&&t.postData.mimeType)===constants_2.MediaTypes.URL_ENCODED?", new FormUrlEncodedContent(postData)":"delete"===t.method?"":t.postData&&t.postData.params||d()?", postData":", null":"":", new FormUrlEncodedContent(postData)"),p.withWrapper&&(u.push(2,"string response = await request.Content.ReadAsStringAsync();"),u.blank(),u.push(2,"Console.WriteLine(response);"),u.push(1,"}"),u.push("}")),u.join();function h(e){return t.postData&&(0,utils_1.normalizeMimeType)(t.postData.mimeType)===e}function d(){return t.headersObj&&t.headersObj["Content-Type"]===constants_2.MediaTypes.OCTET_STREAM}function m(t,e){t.forEach(((s,a)=>{const n=!(0,utils_2.isLastInArray)(t,a);Array.isArray(s)?m(s,e+1):(0,utils_2.checkIfIsObject)(s)?(u.push(e+1,"new {"),y(s,e+2),u.push(e+1,"}%s",n?",":"")):u.push(e+1,'"%s"%s',s,n?",":"")})),u.push(e,"},")}function y(t,e){for(const[s,a]of Object.entries(t)){const n=!(0,utils_2.isLastProperty)(t,s);if(Array.isArray(a))u.push(e,"%s = new[] {",s),m(a,e);else if((0,utils_2.checkIfIsObject)(a)){const t=(0,utils_1.isEmptyObject)(a);u.push(e,"%s = new %s",s,t?"{},":"{"),t||(y(a,e+1),u.push(e,"}%s",n?",":""))}else u.push(e,'%s = "%s"%s',s,a,n?",":"")}}};function addComments(t){t.push("// Requires >= .NET 5"),t.blank()}function formatHttpMethod(t){return(0,generator_1.capitalizeFirst)(t.toLowerCase())}function isDataMethod(t){return t&&["POST","PUT","DELETE","PATCH"].includes(t.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";var __importDefault=this&&this.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(exports,"__esModule",{value:!0}),exports.info=void 0;const stringify_object_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"),constants_2=require("../../../../../constants"),handler=function(t,e,{target:s,client:a}){var n,i,r,o;const p=Object.assign({indent:" ",withWrapper:!0},e),u=new code_builder_1.CodeBuilder({indentation:p.indent,variablesPrefix:p.variablesPrefix,capitalize:!0,lang:constants_1.Lang.CSHARPNEWTONSOFT}),l=formatHttpMethod(t.method);if(p.withComments&&addComments(u),p.withWrapper&&(u.push("using System;"),u.push("using System.Net.Http;"),u.push("using System.Threading.Tasks;"),(h(constants_2.MediaTypes.JSON)||h(constants_2.MediaTypes.XML)||t.basicAuth)&&u.push("using System.Text;"),(h(constants_2.MediaTypes.URL_ENCODED)||(null===(n=t.securityOAuth2ExtraCalls)||void 0===n?void 0:n.length))&&u.push("using System.Collections.Generic;"),(h(constants_2.MediaTypes.JSON)||(null===(i=t.securityOAuth2ExtraCalls)||void 0===i?void 0:i.length))&&u.push("using Newtonsoft.Json.Linq;"),d()&&u.push("using System.IO;"),(d()||t.basicAuth)&&u.push("using System.Net.Http.Headers;"),u.blank(),u.push("public class Program"),u.push("{"),u.push(1,"private readonly IHttpClientFactory _httpClientFactory;"),u.push(1,"public static async Task Main(string[] args)"),u.push(1,"{"),u.push(2,"var client = _httpClientFactory.CreateClient();")),null===(r=t.securityOAuth2ExtraCalls)||void 0===r?void 0:r.length){const e=new __1.HTTPSnippet(null===(o=t.securityOAuth2ExtraCalls)||void 0===o?void 0:o[0]).convert(s,a,Object.assign(Object.assign({},p),{withImports:!1,withWrapper:!1,withComments:!1,variablesPrefix:"oauth2"}));u.push(e),u.push(2,"var oauth2Response = await oauth2Request.Content.ReadAsStringAsync();"),u.push(2,"JObject inputJObject = JObject.Parse(oauth2Response);"),u.push(2,'var accessToken = inputJObject["access_token"].ToString();'),u.blank()}const c=Object.keys(t.allHeaders).filter((t=>{switch(t.toLowerCase()){case"content-type":case"content-length":case"accept-encoding":return!1;default:return!0}}));if(c.length&&c.forEach((e=>{var s;u.push(2,'client.DefaultRequestHeaders.Add("%s", %s);',e,(null===(s=t.securityOAuth2ExtraCalls)||void 0===s?void 0:s.length)?'"Bearer " + accessToken':`"${t.allHeaders[e]}"`)})),t.basicAuth){const{username:e,password:s}=t.basicAuth;u.push(2,`var base64String = Convert.ToBase64String(Encoding.ASCII.GetBytes("${e}:${s}"));`),u.push(2,'client.DefaultRequestHeaders.Authorization = new AuthenticationHeaderValue(@"Basic", base64String);')}if(t.postData)switch((0,utils_1.normalizeMimeType)(t.postData.mimeType)){case constants_2.MediaTypes.URL_ENCODED:t.postData.params&&(u.blank(),u.push(2,"List<KeyValuePair<string, string>> postData = new List<KeyValuePair<string, string>>();"),t.postData.params.forEach((t=>{u.push(2,'postData.Add(new KeyValuePair<string, string>("%s", "%s"));',t.name,t.value)})),u.blank());break;case constants_2.MediaTypes.MULTIPART:t.postData.params&&(u.blank(),u.push(2,"MultipartFormDataContent postData = new MultipartFormDataContent();"),t.postData.params.forEach((t=>{u.push(2,'postData.Add(new StringContent("%s"), "%s");',t.value,t.name)})));break;case constants_2.MediaTypes.JSON:t.postData.jsonObj&&(u.push(2,`JObject json = JObject.Parse(@"${(0,code_helpers_1.addIndentation)((0,stringify_object_1.default)(t.postData.jsonObj,{indent:p.indent,inlineCharacterLimit:25}).replace(/"/g,'""'),{level:3,firstLine:!1})}");`),u.push(2,'var postData = new StringContent(json.ToString(), Encoding.UTF8, "%s");',t.postData.mimeType));break;case constants_2.MediaTypes.XML:t.postData.text&&(t.postData.text.trim().split("\n").forEach(((t,e)=>{const s=(0===e?'string xml = @"':"")+t.replace(/"/g,'""');u.push(0===e?3:4,s)})),u.push(2,'";'),u.push(2,'var postData = new StringContent(xml, Encoding.UTF8, "%s");',t.postData.mimeType))}else d()&&(u.push(2,"var ms = new MemoryStream();"),u.push(2,"var postData = new StreamContent(ms);"),u.push(2,'postData.Headers.ContentType = new MediaTypeHeaderValue("application/octet-stream");'));return(0,code_helpers_1.printUrlVariablesDeclarations)(t,u,3),u.push(2,"var %s = await client.%sAsync(%s%s);",u.var("request"),l,(0,code_helpers_1.buildUrlExpression)(t,u),p.withImports?isDataMethod(t.method)?(0,utils_1.normalizeMimeType)(t.postData&&t.postData.mimeType)===constants_2.MediaTypes.URL_ENCODED?", new FormUrlEncodedContent(postData)":"delete"===t.method?"":t.postData&&t.postData.params||d()?", postData":", null":"":", new FormUrlEncodedContent(postData)"),p.withWrapper&&(u.push(2,"var response = await request.Content.ReadAsStringAsync();"),u.blank(),u.push(2,"Console.WriteLine(response);"),u.push(1,"}"),u.push("}")),u.join();function h(e){return t.postData&&(0,utils_1.normalizeMimeType)(t.postData.mimeType)===e}function d(){return t.headersObj&&t.headersObj["Content-Type"]===constants_2.MediaTypes.OCTET_STREAM}};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(0,generator_1.capitalizeFirst)(t.toLowerCase())}function isDataMethod(t){return t&&["POST","PUT","DELETE","PATCH"].includes(t.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,2 @@
|
|
|
1
|
+
"use strict";var __importDefault=this&&this.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(exports,"__esModule",{value:!0});const httpclient_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";var __importDefault=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(exports,"__esModule",{value:!0});const javascript_1=__importDefault(require("./javascript")),node_1=__importDefault(require("./node")),python_1=__importDefault(require("./python")),shell_1=__importDefault(require("./shell")),java8_1=__importDefault(require("./java8")),java_1=__importDefault(require("./java")),csharp_1=__importDefault(require("./csharp")),go_1=__importDefault(require("./go")),php_1=__importDefault(require("./php")),ruby_1=__importDefault(require("./ruby")),r_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";var __importDefault=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(exports,"__esModule",{value:!0});const javascript_1=__importDefault(require("./javascript")),node_1=__importDefault(require("./node")),python_1=__importDefault(require("./python")),shell_1=__importDefault(require("./shell")),java8_1=__importDefault(require("./java8")),java_1=__importDefault(require("./java")),csharp_1=__importDefault(require("./csharp")),csharpNewtonsoft_1=__importDefault(require("./csharpNewtonsoft")),go_1=__importDefault(require("./go")),php_1=__importDefault(require("./php")),ruby_1=__importDefault(require("./ruby")),r_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 type Languages = 'JavaScript' | 'Node.js' | 'curl' | 'Java8+Apache' | 'Java' | 'Python' | 'Go' | 'PHP' | 'C#' | 'Ruby' | 'R';
|
|
1
|
+
export 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 type CodeSampleConfig = CurlCodeSampleConfig | JavaScriptCodeSampleConfig | NodeJsCodeSampleConfig | PythonCodeSampleConfig | Java8CodeSampleConfig | JavaCodeSampleConfig | CSharpCodeSampleConfig | PHPCodeSampleConfig | GoCodeSampleConfig | RubyCodeSampleConfig | RCodeSampleConfig;
|
|
54
|
+
export type CodeSampleConfig = CurlCodeSampleConfig | 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
|
package/lib/utils/helpers.d.ts
CHANGED
|
@@ -45,3 +45,5 @@ export declare function getWindowReferenceOptions<T>(option: string): T | null;
|
|
|
45
45
|
export declare function getJsUrl(): string;
|
|
46
46
|
export declare const normalizeText: (text?: string | GenericObject) => string;
|
|
47
47
|
export declare const getValueFromMdParsedExtension: (item: GenericObject, key: 'description' | 'summary' | 'x-summary' | 'x-enumDescriptions') => any;
|
|
48
|
+
export declare function isLastInArray(arr: Array<unknown>, index: number): boolean;
|
|
49
|
+
export declare function isLastProperty(obj: Object, key: string): boolean;
|
package/lib/utils/helpers.js
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.getValueFromMdParsedExtension=exports.normalizeText=exports.getJsUrl=exports.getWindowReferenceOptions=exports.dottedString=exports.joinStringFactory=exports.get=exports.useSchemaTitle=exports.sanitizeItemId=exports.unescapeHTMLChars=exports.escapeHTMLAttrChars=exports.removeQueryStringAndHash=exports.titleize=exports.getBasePath=exports.resolveUrl=exports.isAbsoluteUrl=exports.isMergeableObject=exports.deleteEmptyArrayItem=exports.isArrayOfObjects=exports.isObject=exports.mergeObjects=exports.appendToMdHeading=exports.isNumeric=exports.stripTrailingSlash=exports.flattenByProp=exports.mapValues=exports.mapWithLast=void 0;const url_1=require("url"),media_css_1=require("./media-css"),openapi_1=require("./openapi"),JsonPointer_1=require("./JsonPointer"),dom_1=require("./dom"),typeGuards_1=require("./typeGuards");function mapWithLast(e,t){const r=[];for(let s=0;s<e.length-1;s++)r.push(t(e[s],!1));return 0!==e.length&&r.push(t(e[e.length-1],!0)),r}function mapValues(e,t){const r={};for(const s in e)Object.prototype.hasOwnProperty.call(e,s)&&(r[s]=t(e[s],s,e));return r}function flattenByProp(e,t){const r=[],s=e=>{for(const n of e)r.push(n),n[t]&&s(n[t])};return s(e),r}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,t,r){const s=new RegExp(`(^|\\n)#\\s?${t}\\s*\\n`,"i"),n=new RegExp(`((\\n|^)#\\s*${t}\\s*(\\n|$)(?:.|\\n)*?)(\\n#|$)`,"i");if(s.test(e))return e.replace(n,`$1\n\n${r}\n$4`);{const s=""===e||e.endsWith("\n\n")?"":e.endsWith("\n")?"\n":"\n\n";return`${e}${s}# ${t}\n\n${r}`}}exports.mapWithLast=mapWithLast,exports.mapValues=mapValues,exports.flattenByProp=flattenByProp,exports.stripTrailingSlash=stripTrailingSlash,exports.isNumeric=isNumeric,exports.appendToMdHeading=appendToMdHeading;const mergeObjects=(e,...t)=>{if(!t.length)return e;const r=t.shift();return void 0===r?e:((0,exports.isMergeableObject)(e)&&(0,exports.isMergeableObject)(r)&&Object.keys(r).forEach((t=>{(0,exports.isMergeableObject)(r[t])?(e[t]||(e[t]={}),["string","number"].includes(typeof e[t])&&(r[t][media_css_1.ZERO_BREAKPOINT]||0===r[t][media_css_1.ZERO_BREAKPOINT]||console.warn(`Theme resolver: using default value of "${e[t]}" for "${t}". This is not recommended. Prefer adding default value by providing "${media_css_1.ZERO_BREAKPOINT}" property to ${JSON.stringify(r[t])}.`),e[t]={[media_css_1.ZERO_BREAKPOINT]:e[t]}),(0,exports.mergeObjects)(e[t],r[t])):e[t]=r[t]})),(0,exports.mergeObjects)(e,...t))};exports.mergeObjects=mergeObjects;const isObject=e=>null!==e&&"object"==typeof e;exports.isObject=isObject;const isArrayOfObjects=e=>Array.isArray(e)&&e.some((e=>(0,exports.isObject)(e)));exports.isArrayOfObjects=isArrayOfObjects;const deleteEmptyArrayItem=e=>e.filter((e=>!!e));exports.deleteEmptyArrayItem=deleteEmptyArrayItem;const isMergeableObject=e=>(0,exports.isObject)(e)&&!Array.isArray(e);function isAbsoluteUrl(e){return/(?:^[a-z][a-z0-9+.-]*:|\/\/)/i.test(e)}function resolveUrl(e,t){let r;if(t.startsWith("//")){const{protocol:s}=(0,url_1.parse)(e);r=`${s||"https:"}${t}`}else if(isAbsoluteUrl(t))r=t;else if(t.startsWith("/")){const s=(0,url_1.parse)(e);r=(0,url_1.format)(Object.assign(Object.assign({},s),{pathname:t}))}else r=stripTrailingSlash(e)+"/"+t;return stripTrailingSlash(r)}function getBasePath(e){try{return parseURL(e).pathname}catch(t){return e}}function titleize(e){return e.charAt(0).toUpperCase()+e.slice(1)}function removeQueryStringAndHash(e){try{const t=parseURL(e);return t.search="",t.hash="",t.toString()}catch(t){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,((e,t)=>String.fromCharCode(parseInt(t,10)))).replace(/&/g,"&").replace(/"/g,'"')}function sanitizeItemId(e){return e&&e.replace(/#/g,"_")}function useSchemaTitle(e,t){return t||(0,openapi_1.isNamedDefinition)(e)&&JsonPointer_1.JsonPointer.baseName(e)||""}function get(e={},t,r){return"string"==typeof t&&(t=t.split(".")),t.reduce(((e,t)=>e&&e[t]?e[t]:r),e)}function joinStringFactory(e){return(...t)=>t.filter(Boolean).join(e)}function getWindowReferenceOptions(e){var t;return dom_1.IS_BROWSER?null===(t=null===window||void 0===window?void 0:window.REFERENCE_DOCS_OPTIONS)||void 0===t?void 0:t[e]:null}function getJsUrl(){var e;if(!dom_1.IS_BROWSER)return"";const t=+new Date+Math.random();try{return document.currentScript&&(document.currentScript.async||document.currentScript.defer)||document.write(`<script id="dummy${t}"><\/script>`),(null===(e=document.getElementById("dummy"+t))||void 0===e?void 0:e.previousSibling).src}catch(e){return""}}exports.isMergeableObject=isMergeableObject,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.useSchemaTitle=useSchemaTitle,exports.get=get,exports.joinStringFactory=joinStringFactory,exports.dottedString=joinStringFactory("."),exports.getWindowReferenceOptions=getWindowReferenceOptions,exports.getJsUrl=getJsUrl;const normalizeText=e=>(0,typeGuards_1.isString)(e)?e:null==e?void 0:e.raw;exports.normalizeText=normalizeText;const getValueFromMdParsedExtension=(e,t)=>{const r=e[`x-parsed-md-${t}`]||e[t];if("x-enumDescriptions"!==t)return r;let s={};for(const e in r)e.startsWith("x-parsed-md")||(s[e]=r[`x-parsed-md-${e}`]||r[e]);return Object.keys(s).length?s:r};exports.getValueFromMdParsedExtension=getValueFromMdParsedExtension;
|
|
1
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.isLastProperty=exports.isLastInArray=exports.getValueFromMdParsedExtension=exports.normalizeText=exports.getJsUrl=exports.getWindowReferenceOptions=exports.dottedString=exports.joinStringFactory=exports.get=exports.useSchemaTitle=exports.sanitizeItemId=exports.unescapeHTMLChars=exports.escapeHTMLAttrChars=exports.removeQueryStringAndHash=exports.titleize=exports.getBasePath=exports.resolveUrl=exports.isAbsoluteUrl=exports.isMergeableObject=exports.deleteEmptyArrayItem=exports.isArrayOfObjects=exports.isObject=exports.mergeObjects=exports.appendToMdHeading=exports.isNumeric=exports.stripTrailingSlash=exports.flattenByProp=exports.mapValues=exports.mapWithLast=void 0;const url_1=require("url"),media_css_1=require("./media-css"),openapi_1=require("./openapi"),JsonPointer_1=require("./JsonPointer"),dom_1=require("./dom"),typeGuards_1=require("./typeGuards");function mapWithLast(e,t){const r=[];for(let s=0;s<e.length-1;s++)r.push(t(e[s],!1));return 0!==e.length&&r.push(t(e[e.length-1],!0)),r}function mapValues(e,t){const r={};for(const s in e)Object.prototype.hasOwnProperty.call(e,s)&&(r[s]=t(e[s],s,e));return r}function flattenByProp(e,t){const r=[],s=e=>{for(const n of e)r.push(n),n[t]&&s(n[t])};return s(e),r}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,t,r){const s=new RegExp(`(^|\\n)#\\s?${t}\\s*\\n`,"i"),n=new RegExp(`((\\n|^)#\\s*${t}\\s*(\\n|$)(?:.|\\n)*?)(\\n#|$)`,"i");if(s.test(e))return e.replace(n,`$1\n\n${r}\n$4`);{const s=""===e||e.endsWith("\n\n")?"":e.endsWith("\n")?"\n":"\n\n";return`${e}${s}# ${t}\n\n${r}`}}exports.mapWithLast=mapWithLast,exports.mapValues=mapValues,exports.flattenByProp=flattenByProp,exports.stripTrailingSlash=stripTrailingSlash,exports.isNumeric=isNumeric,exports.appendToMdHeading=appendToMdHeading;const mergeObjects=(e,...t)=>{if(!t.length)return e;const r=t.shift();return void 0===r?e:((0,exports.isMergeableObject)(e)&&(0,exports.isMergeableObject)(r)&&Object.keys(r).forEach((t=>{(0,exports.isMergeableObject)(r[t])?(e[t]||(e[t]={}),["string","number"].includes(typeof e[t])&&(r[t][media_css_1.ZERO_BREAKPOINT]||0===r[t][media_css_1.ZERO_BREAKPOINT]||console.warn(`Theme resolver: using default value of "${e[t]}" for "${t}". This is not recommended. Prefer adding default value by providing "${media_css_1.ZERO_BREAKPOINT}" property to ${JSON.stringify(r[t])}.`),e[t]={[media_css_1.ZERO_BREAKPOINT]:e[t]}),(0,exports.mergeObjects)(e[t],r[t])):e[t]=r[t]})),(0,exports.mergeObjects)(e,...t))};exports.mergeObjects=mergeObjects;const isObject=e=>null!==e&&"object"==typeof e;exports.isObject=isObject;const isArrayOfObjects=e=>Array.isArray(e)&&e.some((e=>(0,exports.isObject)(e)));exports.isArrayOfObjects=isArrayOfObjects;const deleteEmptyArrayItem=e=>e.filter((e=>!!e));exports.deleteEmptyArrayItem=deleteEmptyArrayItem;const isMergeableObject=e=>(0,exports.isObject)(e)&&!Array.isArray(e);function isAbsoluteUrl(e){return/(?:^[a-z][a-z0-9+.-]*:|\/\/)/i.test(e)}function resolveUrl(e,t){let r;if(t.startsWith("//")){const{protocol:s}=(0,url_1.parse)(e);r=`${s||"https:"}${t}`}else if(isAbsoluteUrl(t))r=t;else if(t.startsWith("/")){const s=(0,url_1.parse)(e);r=(0,url_1.format)(Object.assign(Object.assign({},s),{pathname:t}))}else r=stripTrailingSlash(e)+"/"+t;return stripTrailingSlash(r)}function getBasePath(e){try{return parseURL(e).pathname}catch(t){return e}}function titleize(e){return e.charAt(0).toUpperCase()+e.slice(1)}function removeQueryStringAndHash(e){try{const t=parseURL(e);return t.search="",t.hash="",t.toString()}catch(t){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,((e,t)=>String.fromCharCode(parseInt(t,10)))).replace(/&/g,"&").replace(/"/g,'"')}function sanitizeItemId(e){return e&&e.replace(/#/g,"_")}function useSchemaTitle(e,t){return t||(0,openapi_1.isNamedDefinition)(e)&&JsonPointer_1.JsonPointer.baseName(e)||""}function get(e={},t,r){return"string"==typeof t&&(t=t.split(".")),t.reduce(((e,t)=>e&&e[t]?e[t]:r),e)}function joinStringFactory(e){return(...t)=>t.filter(Boolean).join(e)}function getWindowReferenceOptions(e){var t;return dom_1.IS_BROWSER?null===(t=null===window||void 0===window?void 0:window.REFERENCE_DOCS_OPTIONS)||void 0===t?void 0:t[e]:null}function getJsUrl(){var e;if(!dom_1.IS_BROWSER)return"";const t=+new Date+Math.random();try{return document.currentScript&&(document.currentScript.async||document.currentScript.defer)||document.write(`<script id="dummy${t}"><\/script>`),(null===(e=document.getElementById("dummy"+t))||void 0===e?void 0:e.previousSibling).src}catch(e){return""}}exports.isMergeableObject=isMergeableObject,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.useSchemaTitle=useSchemaTitle,exports.get=get,exports.joinStringFactory=joinStringFactory,exports.dottedString=joinStringFactory("."),exports.getWindowReferenceOptions=getWindowReferenceOptions,exports.getJsUrl=getJsUrl;const normalizeText=e=>(0,typeGuards_1.isString)(e)?e:null==e?void 0:e.raw;exports.normalizeText=normalizeText;const getValueFromMdParsedExtension=(e,t)=>{const r=e[`x-parsed-md-${t}`]||e[t];if("x-enumDescriptions"!==t)return r;let s={};for(const e in r)e.startsWith("x-parsed-md")||(s[e]=r[`x-parsed-md-${e}`]||r[e]);return Object.keys(s).length?s:r};function isLastInArray(e,t){return t===e.length-1}function isLastProperty(e,t){const r=Object.keys(e);return r.indexOf(t)===r.length-1}exports.getValueFromMdParsedExtension=getValueFromMdParsedExtension,exports.isLastInArray=isLastInArray,exports.isLastProperty=isLastProperty;
|
|
2
2
|
//# sourceMappingURL=helpers.js.map
|
|
@@ -2,3 +2,4 @@ export declare function isUndefined<T>(value: T | undefined): value is undefined
|
|
|
2
2
|
export declare function isNull<T>(value: T | null): value is null;
|
|
3
3
|
export declare function isString<T>(value: T | string): value is string;
|
|
4
4
|
export declare function isNotNull<T>(value: T): value is NonNullable<T>;
|
|
5
|
+
export declare function checkIfIsObject(item: unknown): item is Object;
|
package/lib/utils/typeGuards.js
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
"use strict";function isUndefined(
|
|
1
|
+
"use strict";function isUndefined(e){return void 0===e}function isNull(e){return null===e}function isString(e){return"string"==typeof e}function isNotNull(e){return!isNull(e)}function checkIfIsObject(e){return"object"==typeof e&&!Array.isArray(e)&&null!==e}Object.defineProperty(exports,"__esModule",{value:!0}),exports.checkIfIsObject=exports.isNotNull=exports.isString=exports.isNull=exports.isUndefined=void 0,exports.isUndefined=isUndefined,exports.isNull=isNull,exports.isString=isString,exports.isNotNull=isNotNull,exports.checkIfIsObject=checkIfIsObject;
|
|
2
2
|
//# sourceMappingURL=typeGuards.js.map
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import*as Sampler from"openapi-sampler";import merge from"deepmerge";import{deleteEmptyArrayItem,isArrayOfObjects,serializeParameterValue,getSecurityDetails,getParameterValue,queryString}from"../../utils";import{normalizeMimeType,arrayMergeStrategy}from"../utils";import{MediaTypes}from"../../constants";import{l}from"../labels";import{HTTPSnippet}from"./httpsnippet";import StringUtility from"./httpsnippet/helpers/string-utility";import{getActiveMediaType}from"../../models/mediaContent";function mapOperationToHAR(e,{exampleName:t="",skipOptionalParameters:a=!1,withOAuth2Call:r=!1,spec:i,generatedPayloadSamplesMaxDepth:s=8,pathParams:n={},properties:o={}},{activeServer:l,requestValues:u}){var p,c,d,m;const{securityHeaders:h,securityCookies:y,securityQueries:
|
|
1
|
+
import*as Sampler from"openapi-sampler";import merge from"deepmerge";import{deleteEmptyArrayItem,isArrayOfObjects,serializeParameterValue,getSecurityDetails,getParameterValue,queryString}from"../../utils";import{normalizeMimeType,arrayMergeStrategy}from"../utils";import{MediaTypes}from"../../constants";import{l}from"../labels";import{HTTPSnippet}from"./httpsnippet";import StringUtility from"./httpsnippet/helpers/string-utility";import{getActiveMediaType}from"../../models/mediaContent";function mapOperationToHAR(e,{exampleName:t="",skipOptionalParameters:a=!1,withOAuth2Call:r=!1,spec:i,generatedPayloadSamplesMaxDepth:s=8,pathParams:n={},properties:o={}},{activeServer:l,requestValues:u}){var p,c,d,m;const{securityHeaders:h,securityCookies:y,securityQueries:f,securityOAuth2ExtraCalls:v,basicAuth:g}=getSecurityData(null===(p=e.security)||void 0===p?void 0:p[0],r),O=(null===(c=null==e?void 0:e.requestBody)||void 0===c?void 0:c.content)&&getActiveMediaType(e.requestBody.content),T={skipNonRequired:a,skipReadOnly:!0,maxSampleDepth:s},S={path:null==u?void 0:u.path,cookie:null==u?void 0:u.cookie,header:null==u?void 0:u.header,query:null==u?void 0:u.query,body:null==u?void 0:u.body};let C=!1;const b=e.parameters.filter((e=>"header"===e.in)).filter((e=>!(a&&!e.required))).map((e=>{var t;return{name:e.name,value:(null===(t=S.header)||void 0===t?void 0:t[e.name])||getParameterValue("header",e.name)||serializeParameterValue(e,Sampler.sample(e.schema.rawSchema,T,i))}})).map((e=>((null==O?void 0:O.name)&&"content-type"===e.name.toLowerCase()&&(C=!0,e.value=O.name),e))).concat(h);!C&&(null==O?void 0:O.name)&&b.unshift({name:"Content-Type",value:null==O?void 0:O.name});const E=e.parameters.filter((e=>"cookie"===e.in)).filter((e=>!(a&&!e.required))).map((e=>queryString.parse(serializeParameterValue(e,Sampler.sample(e.schema.rawSchema,T,i))))).reduce(((e,t)=>{var a;for(const[r,i]of Object.entries(t))e.push({name:r,value:String((null===(a=S.cookie)||void 0===a?void 0:a[r])||i)});return e}),[]).concat(y),A=e.parameters.filter((e=>"query"===e.in)).filter((e=>!(a&&!e.required))).map((e=>queryString.parse(serializeParameterValue(e,Sampler.sample(e.schema.rawSchema,T,i))))).reduce(((e,t)=>{var a,r,i;for(const[s,n]of Object.entries(t))e.push({name:s,value:isArrayOfObjects(null===(a=S.query)||void 0===a?void 0:a[s])&&JSON.stringify(deleteEmptyArrayItem(null===(r=S.query)||void 0===r?void 0:r[s]))||String((null===(i=S.query)||void 0===i?void 0:i[s])||n)});return e}),[]).concat(f),_=`${null===(d=l||e.activeServer)||void 0===d?void 0:d.url.replace(/\/$/,"")}/${e.path.replace(/^\//,"")}`,P=e.parameters.filter((e=>"path"===e.in)).reduce(((e,t)=>{var a;const{in:r,name:i}=t;return e[i]=(null===(a=S.path)||void 0===a?void 0:a[i])||n[i]||getParameterValue(r,i),e}),{}),w=null===(m=null==O?void 0:O.examples)||void 0===m?void 0:m[t],R=(null==O?void 0:O.examples)||{},[j]=Object.values(R),D=S.body||(null==w?void 0:w.value)||(null==j?void 0:j.value)||(null==O?void 0:O.schema)&&Sampler.sample(null==O?void 0:O.schema.rawSchema,T,i),k=null==O?void 0:O.name.toLowerCase();let q="",M=[];switch(normalizeMimeType(k)){case MediaTypes.JSON:q=JSON.stringify(getDataRequest(D,o));break;case MediaTypes.URL_ENCODED:case MediaTypes.MULTIPART:q=queryString.stringify(getDataRequest(D,o)),M=objectToHarParams(getDataRequest(D,o));break;default:q=String(D||"")}const N=q?{mimeType:(null==O?void 0:O.name)||MediaTypes.OCTET_STREAM,text:q,params:M}:void 0,H=e.responses.map((e=>e.code));return{method:e.httpVerb,url:_,httpVersion:"HTTP/1.1",cookies:E,headers:b,queryString:A,postData:N,headersSize:-1,bodySize:-1,securityOAuth2ExtraCalls:v,basicAuth:g,pathParameters:P,serverVariables:(null==l?void 0:l.variables)||e.activeServer.variables,allResponseCodes:H}}const defaultOptions={withImports:!0,withComments:!1},langToSnippetConfig={curl:{code:"shell",defaultTarget:"curl",defaultOptions:Object.assign(Object.assign({},defaultOptions),{short:!0})},JavaScript:{code:"javascript",defaultTarget:"fetch",defaultOptions:Object.assign(Object.assign({},defaultOptions),{withImports:!1})},"Node.js":{code:"node",defaultTarget:"fetch",defaultOptions:Object.assign({},defaultOptions)},Python:{code:"python",defaultTarget:"requests",defaultOptions:Object.assign({},defaultOptions)},"Java8+Apache":{code:"java8",defaultTarget:"apachehttp",defaultOptions:Object.assign({},defaultOptions)},Java:{code:"java",defaultTarget:"httpclient",defaultOptions:Object.assign({},defaultOptions)},"C#":{code:"csharp",defaultTarget:"httpclient",defaultOptions:Object.assign({},defaultOptions)},"C#+Newtonsoft":{code:"csharpNewtonsoft",defaultTarget:"httpclient",defaultOptions:Object.assign({},defaultOptions)},Go:{code:"go",defaultTarget:"http.DefaultClient",defaultOptions:Object.assign({},defaultOptions)},PHP:{code:"php",defaultTarget:"curl",defaultOptions:Object.assign({},defaultOptions)},Ruby:{code:"ruby",defaultTarget:"net::http",defaultOptions:Object.assign({},defaultOptions)},R:{code:"r",defaultTarget:"httr",defaultOptions:Object.assign({},defaultOptions)}};export function getCodeSample({lang:e,operation:t,exampleName:a,pathParams:r,properties:i,options:s={}}){try{const{skipOptionalParameters:n,withOAuth2Call:o,spec:l,generatedPayloadSamplesMaxDepth:u,store:p}=s,c=mapOperationToHAR(t,{exampleName:a,pathParams:r,properties:i,skipOptionalParameters:n,withOAuth2Call:o,spec:l,generatedPayloadSamplesMaxDepth:u},p),d=new HTTPSnippet(c);return langToSnippetConfig[e]?d.convert(langToSnippetConfig[e].code,langToSnippetConfig[e].defaultTarget,Object.assign(Object.assign({},langToSnippetConfig[e].defaultOptions),s)):"Language is not supported."}catch(e){return console.error(e),"Failed to generate code sample."}}function getSecurityData(e,t){var a,r,i,s;const n={securityHeaders:[],securityCookies:[],securityQueries:[],securityOAuth2ExtraCalls:[],basicAuth:void 0};for(const o of(null==e?void 0:e.schemes)||[]){const e=getSecurityDetails(o.id);switch(o.type){case"openIdConnect":null===(a=n.securityHeaders)||void 0===a||a.push({name:"Authorization",value:"Bearer <YOUR_TOKEN_HERE>"});break;case"oauth2":{const a=e.token?`${e.token.token_type||"Bearer"} ${e.token.access_token}`:"Bearer <YOUR_TOKEN_HERE>";o.flows.clientCredentials&&t?n.securityOAuth2ExtraCalls.push(getOAuth2ClientCredsCallHar(o.flows.clientCredentials,o.scopes,e)):o.flows.password&&t&&n.securityOAuth2ExtraCalls.push(getOAuth2PasswordCallHar(o.flows.password,o.scopes,e)),null===(r=n.securityHeaders)||void 0===r||r.push({name:"Authorization",value:a});break}case"apiKey":{const t=e.raw||"YOUR_API_KEY_HERE";"header"===o.in&&(null===(i=n.securityHeaders)||void 0===i||i.push({name:o.name,value:t})),"cookie"===o.in&&n.securityCookies.push({name:o.name,value:t}),"query"===o.in&&n.securityQueries.push({name:o.name,value:t});break}case"http":"basic"===o.scheme?n.basicAuth={username:e.username||`<${StringUtility.toSnakeCase(l("tryItAuthBasicUsername"))}>`,password:e.password||`<${StringUtility.toSnakeCase(l("tryItAuthBasicPassword"))}>`}:null===(s=n.securityHeaders)||void 0===s||s.push({name:"Authorization",value:`${capitalizeFirst(o.scheme||"bearer")} <YOUR_${o.bearerFormat||"TOKEN"}_HERE>`})}}return n}function getOAuth2PasswordCallHar(e,t,a){return{method:"POST",url:e.tokenUrl,httpVersion:"HTTP/1.1",headers:[{name:"Content-Type",value:MediaTypes.URL_ENCODED},{name:"Accept",value:MediaTypes.JSON}],queryString:[],postData:{mimeType:MediaTypes.URL_ENCODED,text:"",params:[{name:"grant_type",value:"password"},{name:"client_id",value:a.client_id||"YOUR_CLIENT_ID"},{name:"client_secret",value:a.client_secret||"YOUR_CLIENT_SECRET"},{name:"username",value:a.username||"<username>"},{name:"password",value:a.password||"<password>"},t.length?{name:"scope",value:t.join(" ")}:void 0].filter(isDefined)},cookies:[],headersSize:-1,bodySize:-1,securityOAuth2ExtraCalls:[]}}function getOAuth2ClientCredsCallHar(e,t,a){return{method:"POST",url:e.tokenUrl,httpVersion:"HTTP/1.1",headers:[{name:"Content-Type",value:MediaTypes.URL_ENCODED},{name:"Accept",value:MediaTypes.JSON}],queryString:[],postData:{mimeType:MediaTypes.URL_ENCODED,text:"",params:[{name:"grant_type",value:"client_credentials"},{name:"client_id",value:a.client_id||"YOUR_CLIENT_ID"},{name:"client_secret",value:a.client_secret||"YOUR_CLIENT_SECRET"},t.length?{name:"scope",value:t.join(" ")}:void 0].filter(isDefined)},cookies:[],headersSize:-1,bodySize:-1,securityOAuth2ExtraCalls:[]}}function getDataRequest(e,t){if(e){if("object"==typeof e)return merge(e,t,{arrayMerge:arrayMergeStrategy});try{return merge(JSON.parse(e),t,{arrayMerge:arrayMergeStrategy})}catch(e){return!1}}return!1}function objectToHarParams(e){const t=[];for(const[a,r]of Object.entries(e))t.push({name:a,value:String(r)});return t}export function isDefined(e){return void 0!==e}export function capitalizeFirst(e){return e.charAt(0).toUpperCase()+e.slice(1)}
|
|
2
2
|
//# sourceMappingURL=generator.js.map
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import*as util from"util";import{Lang,NamingVariableConventions,VariableType}from"./constants";import StringUtility from"./string-utility";const langToVarNameConvention={[Lang.NODEJS]:NamingVariableConventions.CAMEL_CASE,[Lang.JAVASCRIPT]:NamingVariableConventions.CAMEL_CASE,[Lang.PYTHON]:NamingVariableConventions.UNDER_SCORES,[Lang.JAVA8]:NamingVariableConventions.CAMEL_CASE,[Lang.JAVA]:NamingVariableConventions.CAMEL_CASE,[Lang.CSHARP]:NamingVariableConventions.PASCAL_CASE,[Lang.CURL]:NamingVariableConventions.CAMEL_CASE,[Lang.GO]:NamingVariableConventions.CAMEL_CASE,[Lang.PHP]:NamingVariableConventions.CAMEL_CASE,[Lang.RUBY]:NamingVariableConventions.UNDER_SCORES,[Lang.R]:NamingVariableConventions.UNDER_SCORES},langOptions={default:{joinSymbol:"",variableWrapperFn:a=>a,stringLiteral:a=>a,variableDeclaration:a=>a,urlFieldName:"url"},[Lang.CSHARP]:{joinSymbol:" + ",stringLiteral:a=>`"${a}"`,variableDeclaration:a=>`var ${a} = "%s";`,urlFieldName:"fullUrl"},[Lang.GO]:{joinSymbol:" + ",stringLiteral:a=>`"${a}"`,variableDeclaration:a=>`${a} := "%s";`},[Lang.JAVA]:{joinSymbol:" + ",stringLiteral:a=>`"${a}"`,variableDeclaration:a=>`var ${a} = "%s";`,urlFieldName:"pathname"},[Lang.JAVA8]:{joinSymbol:" + ",stringLiteral:a=>`"${a}"`,variableDeclaration:a=>`String ${a} = "%s";`,urlFieldName:"fullUrl"},[Lang.JAVASCRIPT]:{variableWrapperFn:a=>"${"+a+"}",variableDeclaration:a=>`const ${a} = '%s';`},[Lang.NODEJS]:{variableWrapperFn:a=>"${"+a+"}",variableDeclaration:a=>`const ${a} = '%s';`},[Lang.PHP]:{joinSymbol:" . ",stringLiteral:a=>`"${a}"`,variableDeclaration:a=>`const ${a} = "%s";`},[Lang.PYTHON]:{stringLiteral:a=>`"${a}"`,joinSymbol:" + ",variableDeclaration:a=>`${a} = "%s"`},[Lang.RUBY]:{joinSymbol:" + ",stringLiteral:a=>`'${a}'`,variableDeclaration:a=>`${a} = '%s'`},[Lang.CURL]:{variableWrapperFn:(a,i)=>i||`{${a}}`,urlFieldName:"fullUrl",rawName:!0},[Lang.R]:{joinSymbol:" %&% ",variableDeclaration:a=>`${a} = "%s"`,urlFieldName:"fullUrl",stringLiteral:a=>`"${a}"`,variableWrapperFn:a=>`${a}`}},reservedVariableNames=["response","request","requests","data","url","payload","main","accessToken","resp","Program","client","postData","App","httpClient","params","pathname","host","body","fetch","query"];export class CodeBuilder{constructor({indentation:a,lineJoin:i="\n",variablesPrefix:e="",capitalize:n=!1,lang:
|
|
1
|
+
import*as util from"util";import{Lang,NamingVariableConventions,VariableType}from"./constants";import StringUtility from"./string-utility";const langToVarNameConvention={[Lang.NODEJS]:NamingVariableConventions.CAMEL_CASE,[Lang.JAVASCRIPT]:NamingVariableConventions.CAMEL_CASE,[Lang.PYTHON]:NamingVariableConventions.UNDER_SCORES,[Lang.JAVA8]:NamingVariableConventions.CAMEL_CASE,[Lang.JAVA]:NamingVariableConventions.CAMEL_CASE,[Lang.CSHARP]:NamingVariableConventions.PASCAL_CASE,[Lang.CSHARPNEWTONSOFT]:NamingVariableConventions.PASCAL_CASE,[Lang.CURL]:NamingVariableConventions.CAMEL_CASE,[Lang.GO]:NamingVariableConventions.CAMEL_CASE,[Lang.PHP]:NamingVariableConventions.CAMEL_CASE,[Lang.RUBY]:NamingVariableConventions.UNDER_SCORES,[Lang.R]:NamingVariableConventions.UNDER_SCORES},langOptions={default:{joinSymbol:"",variableWrapperFn:a=>a,stringLiteral:a=>a,variableDeclaration:a=>a,urlFieldName:"url"},[Lang.CSHARP]:{joinSymbol:" + ",stringLiteral:a=>`"${a}"`,variableDeclaration:a=>`var ${a} = "%s";`,urlFieldName:"fullUrl"},[Lang.CSHARPNEWTONSOFT]:{joinSymbol:" + ",stringLiteral:a=>`"${a}"`,variableDeclaration:a=>`var ${a} = "%s";`,urlFieldName:"fullUrl"},[Lang.GO]:{joinSymbol:" + ",stringLiteral:a=>`"${a}"`,variableDeclaration:a=>`${a} := "%s";`},[Lang.JAVA]:{joinSymbol:" + ",stringLiteral:a=>`"${a}"`,variableDeclaration:a=>`var ${a} = "%s";`,urlFieldName:"pathname"},[Lang.JAVA8]:{joinSymbol:" + ",stringLiteral:a=>`"${a}"`,variableDeclaration:a=>`String ${a} = "%s";`,urlFieldName:"fullUrl"},[Lang.JAVASCRIPT]:{variableWrapperFn:a=>"${"+a+"}",variableDeclaration:a=>`const ${a} = '%s';`},[Lang.NODEJS]:{variableWrapperFn:a=>"${"+a+"}",variableDeclaration:a=>`const ${a} = '%s';`},[Lang.PHP]:{joinSymbol:" . ",stringLiteral:a=>`"${a}"`,variableDeclaration:a=>`const ${a} = "%s";`},[Lang.PYTHON]:{stringLiteral:a=>`"${a}"`,joinSymbol:" + ",variableDeclaration:a=>`${a} = "%s"`},[Lang.RUBY]:{joinSymbol:" + ",stringLiteral:a=>`'${a}'`,variableDeclaration:a=>`${a} = '%s'`},[Lang.CURL]:{variableWrapperFn:(a,i)=>i||`{${a}}`,urlFieldName:"fullUrl",rawName:!0},[Lang.R]:{joinSymbol:" %&% ",variableDeclaration:a=>`${a} = "%s"`,urlFieldName:"fullUrl",stringLiteral:a=>`"${a}"`,variableWrapperFn:a=>`${a}`}},reservedVariableNames=["response","request","requests","data","url","payload","main","accessToken","resp","Program","client","postData","App","httpClient","params","pathname","host","body","fetch","query"];export class CodeBuilder{constructor({indentation:a,lineJoin:i="\n",variablesPrefix:e="",capitalize:n=!1,lang:r=Lang.CURL}){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=a,this.variablesPrefix=e,this.lineJoin=i||"\n",this.capitalize=n,this.lang=r,this.langOptions=Object.assign(Object.assign({},langOptions.default),langOptions[r])}buildLine(a,i){let e="",n=2;if("string"==typeof a)n=1,i=a,a=0;else if(null===a)return null;for(;a;)e+=this.indentation,a--;const r=Array.prototype.slice.call(arguments,n,arguments.length);return r.unshift(e+i),util.format.apply(this,r)}unshift(...a){return this.code.unshift(this.buildLine.apply(this,a)),this}push(...a){return this.code.push(this.buildLine.apply(this,a)),this}blank(){return this.code.push(null),this}join(){return this.code.join(this.lineJoin)}clean(){this.code.splice(1)}var(a,i=VariableType.CUSTOM){if(i===VariableType.PATH){let i=this.variablesPrefix+a;switch(reservedVariableNames.includes(i)&&(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(a):a):a}}
|
|
2
2
|
//# sourceMappingURL=code-builder.js.map
|
|
@@ -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
|
|
@@ -6,6 +6,7 @@ export declare const printUrlVariablesDeclarationsOutput: {
|
|
|
6
6
|
'Java8+Apache': string;
|
|
7
7
|
Java: string;
|
|
8
8
|
'C#': string;
|
|
9
|
+
'C#+Newtonsoft': string;
|
|
9
10
|
curl: string;
|
|
10
11
|
Go: string;
|
|
11
12
|
PHP: string;
|
|
@@ -20,6 +21,7 @@ export declare const buildUrlExpressionData: {
|
|
|
20
21
|
'Java8+Apache': string;
|
|
21
22
|
Java: string;
|
|
22
23
|
'C#': string;
|
|
24
|
+
'C#+Newtonsoft': string;
|
|
23
25
|
curl: string;
|
|
24
26
|
Go: string;
|
|
25
27
|
PHP: string;
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
export const commonVariablesInput={pathParameters:{pathParam1:"pathParam1Value",pathParam2:"pathParam2Value"},serverVariables:{serverVariable1:"serverVariable1Value",serverVariable2:"serverVariable2Value"}};export const printUrlVariablesDeclarationsOutput={"Node.js":"const variablesPrefixpathParam1 = 'pathParam1Value';\nconst variablesPrefixpathParam2 = 'pathParam2Value';\nconst variablesPrefixserverVariable1 = 'serverVariable1Value';\nconst variablesPrefixserverVariable2 = 'serverVariable2Value';",javascript:"const variablesPrefixpathParam1 = 'pathParam1Value';\nconst variablesPrefixpathParam2 = 'pathParam2Value';\nconst variablesPrefixserverVariable1 = 'serverVariable1Value';\nconst variablesPrefixserverVariable2 = 'serverVariable2Value';",Python:'variables_prefixpath_param_1 = "pathParam1Value"\nvariables_prefixpath_param_2 = "pathParam2Value"\nvariables_prefixserver_variable_1 = "serverVariable1Value"\nvariables_prefixserver_variable_2 = "serverVariable2Value"',"Java8+Apache":'String variablesPrefixpathParam1 = "pathParam1Value";\nString variablesPrefixpathParam2 = "pathParam2Value";\nString variablesPrefixserverVariable1 = "serverVariable1Value";\nString variablesPrefixserverVariable2 = "serverVariable2Value";',Java:'var variablesPrefixpathParam1 = "pathParam1Value";\nvar variablesPrefixpathParam2 = "pathParam2Value";\nvar variablesPrefixserverVariable1 = "serverVariable1Value";\nvar variablesPrefixserverVariable2 = "serverVariable2Value";',"C#":'var VariablesPrefixpathParam1 = "pathParam1Value";\nvar VariablesPrefixpathParam2 = "pathParam2Value";\nvar VariablesPrefixserverVariable1 = "serverVariable1Value";\nvar VariablesPrefixserverVariable2 = "serverVariable2Value";',curl:"variablesPrefixpathParam1 pathParam1Value\nvariablesPrefixpathParam2 pathParam2Value\nvariablesPrefixserverVariable1 serverVariable1Value\nvariablesPrefixserverVariable2 serverVariable2Value",Go:'variablesPrefixpathParam1 := "pathParam1Value";\nvariablesPrefixpathParam2 := "pathParam2Value";\nvariablesPrefixserverVariable1 := "serverVariable1Value";\nvariablesPrefixserverVariable2 := "serverVariable2Value";',PHP:'const variablesPrefixpathParam1 = "pathParam1Value";\nconst variablesPrefixpathParam2 = "pathParam2Value";\nconst variablesPrefixserverVariable1 = "serverVariable1Value";\nconst variablesPrefixserverVariable2 = "serverVariable2Value";',Ruby:"variables_prefixpath_param_1 = 'pathParam1Value'\nvariables_prefixpath_param_2 = 'pathParam2Value'\nvariables_prefixserver_variable_1 = 'serverVariable1Value'\nvariables_prefixserver_variable_2 = 'serverVariable2Value'",R:'variables_prefixpath_param_1 = "pathParam1Value"\nvariables_prefixpath_param_2 = "pathParam2Value"\nvariables_prefixserver_variable_1 = "serverVariable1Value"\nvariables_prefixserver_variable_2 = "serverVariable2Value"'};export const buildUrlExpressionCases={};export const buildUrlExpressionData={"Node.js":"http://acme.com/${variablesPrefixpathParam1}/${variablesPrefixpathParam2}/${variablesPrefixserverVariable1}/${variablesPrefixserverVariable2}",javascript:"http://acme.com/${variablesPrefixpathParam1}/${variablesPrefixpathParam2}/${variablesPrefixserverVariable1}/${variablesPrefixserverVariable2}",Python:'"http://acme.com/" + variables_prefixpath_param_1 + "/" + variables_prefixpath_param_2 + "/" + variables_prefixserver_variable_1 + "/" + variables_prefixserver_variable_2',"Java8+Apache":'"http://acme.com/" + variablesPrefixpathParam1 + "/" + variablesPrefixpathParam2 + "/" + variablesPrefixserverVariable1 + "/" + variablesPrefixserverVariable2',Java:'"http://acme.com/" + variablesPrefixpathParam1 + "/" + variablesPrefixpathParam2 + "/" + variablesPrefixserverVariable1 + "/" + variablesPrefixserverVariable2',"C#":'"http://acme.com/" + VariablesPrefixpathParam1 + "/" + VariablesPrefixpathParam2 + "/" + VariablesPrefixserverVariable1 + "/" + VariablesPrefixserverVariable2',curl:"http://acme.com/pathParam1Value/pathParam2Value/serverVariable1Value/serverVariable2Value",Go:'"http://acme.com/" + variablesPrefixpathParam1 + "/" + variablesPrefixpathParam2 + "/" + variablesPrefixserverVariable1 + "/" + variablesPrefixserverVariable2',PHP:'"http://acme.com/" . variablesPrefixpathParam1 . "/" . variablesPrefixpathParam2 . "/" . variablesPrefixserverVariable1 . "/" . variablesPrefixserverVariable2',Ruby:"'http://acme.com/' + variables_prefixpath_param_1 + '/' + variables_prefixpath_param_2 + '/' + variables_prefixserver_variable_1 + '/' + variables_prefixserver_variable_2",R:'"http://acme.com/" %&% variables_prefixpath_param_1 %&% "/" %&% variables_prefixpath_param_2 %&% "/" %&% variables_prefixserver_variable_1 %&% "/" %&% variables_prefixserver_variable_2'};
|
|
1
|
+
export const commonVariablesInput={pathParameters:{pathParam1:"pathParam1Value",pathParam2:"pathParam2Value"},serverVariables:{serverVariable1:"serverVariable1Value",serverVariable2:"serverVariable2Value"}};export const printUrlVariablesDeclarationsOutput={"Node.js":"const variablesPrefixpathParam1 = 'pathParam1Value';\nconst variablesPrefixpathParam2 = 'pathParam2Value';\nconst variablesPrefixserverVariable1 = 'serverVariable1Value';\nconst variablesPrefixserverVariable2 = 'serverVariable2Value';",javascript:"const variablesPrefixpathParam1 = 'pathParam1Value';\nconst variablesPrefixpathParam2 = 'pathParam2Value';\nconst variablesPrefixserverVariable1 = 'serverVariable1Value';\nconst variablesPrefixserverVariable2 = 'serverVariable2Value';",Python:'variables_prefixpath_param_1 = "pathParam1Value"\nvariables_prefixpath_param_2 = "pathParam2Value"\nvariables_prefixserver_variable_1 = "serverVariable1Value"\nvariables_prefixserver_variable_2 = "serverVariable2Value"',"Java8+Apache":'String variablesPrefixpathParam1 = "pathParam1Value";\nString variablesPrefixpathParam2 = "pathParam2Value";\nString variablesPrefixserverVariable1 = "serverVariable1Value";\nString variablesPrefixserverVariable2 = "serverVariable2Value";',Java:'var variablesPrefixpathParam1 = "pathParam1Value";\nvar variablesPrefixpathParam2 = "pathParam2Value";\nvar variablesPrefixserverVariable1 = "serverVariable1Value";\nvar variablesPrefixserverVariable2 = "serverVariable2Value";',"C#":'var VariablesPrefixpathParam1 = "pathParam1Value";\nvar VariablesPrefixpathParam2 = "pathParam2Value";\nvar VariablesPrefixserverVariable1 = "serverVariable1Value";\nvar VariablesPrefixserverVariable2 = "serverVariable2Value";',"C#+Newtonsoft":'var VariablesPrefixpathParam1 = "pathParam1Value";\nvar VariablesPrefixpathParam2 = "pathParam2Value";\nvar VariablesPrefixserverVariable1 = "serverVariable1Value";\nvar VariablesPrefixserverVariable2 = "serverVariable2Value";',curl:"variablesPrefixpathParam1 pathParam1Value\nvariablesPrefixpathParam2 pathParam2Value\nvariablesPrefixserverVariable1 serverVariable1Value\nvariablesPrefixserverVariable2 serverVariable2Value",Go:'variablesPrefixpathParam1 := "pathParam1Value";\nvariablesPrefixpathParam2 := "pathParam2Value";\nvariablesPrefixserverVariable1 := "serverVariable1Value";\nvariablesPrefixserverVariable2 := "serverVariable2Value";',PHP:'const variablesPrefixpathParam1 = "pathParam1Value";\nconst variablesPrefixpathParam2 = "pathParam2Value";\nconst variablesPrefixserverVariable1 = "serverVariable1Value";\nconst variablesPrefixserverVariable2 = "serverVariable2Value";',Ruby:"variables_prefixpath_param_1 = 'pathParam1Value'\nvariables_prefixpath_param_2 = 'pathParam2Value'\nvariables_prefixserver_variable_1 = 'serverVariable1Value'\nvariables_prefixserver_variable_2 = 'serverVariable2Value'",R:'variables_prefixpath_param_1 = "pathParam1Value"\nvariables_prefixpath_param_2 = "pathParam2Value"\nvariables_prefixserver_variable_1 = "serverVariable1Value"\nvariables_prefixserver_variable_2 = "serverVariable2Value"'};export const buildUrlExpressionCases={};export const buildUrlExpressionData={"Node.js":"http://acme.com/${variablesPrefixpathParam1}/${variablesPrefixpathParam2}/${variablesPrefixserverVariable1}/${variablesPrefixserverVariable2}",javascript:"http://acme.com/${variablesPrefixpathParam1}/${variablesPrefixpathParam2}/${variablesPrefixserverVariable1}/${variablesPrefixserverVariable2}",Python:'"http://acme.com/" + variables_prefixpath_param_1 + "/" + variables_prefixpath_param_2 + "/" + variables_prefixserver_variable_1 + "/" + variables_prefixserver_variable_2',"Java8+Apache":'"http://acme.com/" + variablesPrefixpathParam1 + "/" + variablesPrefixpathParam2 + "/" + variablesPrefixserverVariable1 + "/" + variablesPrefixserverVariable2',Java:'"http://acme.com/" + variablesPrefixpathParam1 + "/" + variablesPrefixpathParam2 + "/" + variablesPrefixserverVariable1 + "/" + variablesPrefixserverVariable2',"C#":'"http://acme.com/" + VariablesPrefixpathParam1 + "/" + VariablesPrefixpathParam2 + "/" + VariablesPrefixserverVariable1 + "/" + VariablesPrefixserverVariable2',"C#+Newtonsoft":'"http://acme.com/" + VariablesPrefixpathParam1 + "/" + VariablesPrefixpathParam2 + "/" + VariablesPrefixserverVariable1 + "/" + VariablesPrefixserverVariable2',curl:"http://acme.com/pathParam1Value/pathParam2Value/serverVariable1Value/serverVariable2Value",Go:'"http://acme.com/" + variablesPrefixpathParam1 + "/" + variablesPrefixpathParam2 + "/" + variablesPrefixserverVariable1 + "/" + variablesPrefixserverVariable2',PHP:'"http://acme.com/" . variablesPrefixpathParam1 . "/" . variablesPrefixpathParam2 . "/" . variablesPrefixserverVariable1 . "/" . variablesPrefixserverVariable2',Ruby:"'http://acme.com/' + variables_prefixpath_param_1 + '/' + variables_prefixpath_param_2 + '/' + variables_prefixserver_variable_1 + '/' + variables_prefixserver_variable_2",R:'"http://acme.com/" %&% variables_prefixpath_param_1 %&% "/" %&% variables_prefixpath_param_2 %&% "/" %&% variables_prefixserver_variable_1 %&% "/" %&% variables_prefixserver_variable_2'};
|
|
2
2
|
//# sourceMappingURL=code-helpers-mock.js.map
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import
|
|
1
|
+
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"../../../../../constants";import{checkIfIsObject,isLastInArray,isLastProperty}from"../../../../../utils";const handler=function(t,e,{target:s,client:a}){var n,i,r,o;const p=Object.assign({indent:" ",withWrapper:!0},e),u=new CodeBuilder({indentation:p.indent,variablesPrefix:p.variablesPrefix,capitalize:!0,lang:Lang.CSHARP}),l=formatHttpMethod(t.method);if(p.withComments&&addComments(u),p.withWrapper&&(u.push("using System;"),u.push("using System.Net.Http;"),u.push("using System.Threading.Tasks;"),(h(MediaTypes.JSON)||h(MediaTypes.XML)||t.basicAuth)&&u.push("using System.Text;"),(h(MediaTypes.URL_ENCODED)||(null===(n=t.securityOAuth2ExtraCalls)||void 0===n?void 0:n.length))&&u.push("using System.Collections.Generic;"),(h(MediaTypes.JSON)||(null===(i=t.securityOAuth2ExtraCalls)||void 0===i?void 0:i.length))&&u.push("using System.Text.Json;"),m()&&u.push("using System.IO;"),(m()||t.basicAuth)&&u.push("using System.Net.Http.Headers;"),u.blank(),u.push("public class Program"),u.push("{"),u.push(1,"public static async Task Main()"),u.push(1,"{")),null===(r=t.securityOAuth2ExtraCalls)||void 0===r?void 0:r.length){const e=new HTTPSnippet(null===(o=t.securityOAuth2ExtraCalls)||void 0===o?void 0:o[0]).convert(s,a,Object.assign(Object.assign({},p),{withImports:!1,withWrapper:!1,withComments:!1,variablesPrefix:"oauth2"}));u.push(e),u.push(2,"var oauth2Response = await oauth2Request.Content.ReadAsStringAsync();"),u.push(2,"JObject inputJObject = JObject.Parse(oauth2Response);"),u.push(2,'var accessToken = inputJObject["access_token"].ToString();'),u.blank()}const c=Object.keys(t.allHeaders).filter((t=>{switch(t.toLowerCase()){case"content-type":case"content-length":case"accept-encoding":return!1;default:return!0}}));if(c.length?(u.push(2,"System.Net.Http.HttpClient client = new()"),u.push(2,"{"),u.push(3,"DefaultRequestHeaders ="),u.push(3,"{"),c.forEach((e=>{var s;u.push(4,'{"%s", %s},',e,(null===(s=t.securityOAuth2ExtraCalls)||void 0===s?void 0:s.length)?'"Bearer " + accessToken':`"${t.allHeaders[e]}"`)})),u.push(3,"}"),u.push(2,"};")):u.push(2,"System.Net.Http.HttpClient client = new();"),u.blank(),t.basicAuth){const{username:e,password:s}=t.basicAuth;u.push(2,`string base64String = Convert.ToBase64String(Encoding.ASCII.GetBytes("${e}:${s}"));`),u.push(2,'client.DefaultRequestHeaders.Authorization = new AuthenticationHeaderValue(@"Basic", base64String);'),u.blank()}if(t.postData)switch(normalizeMimeType(t.postData.mimeType)){case MediaTypes.URL_ENCODED:t.postData.params&&(u.blank(),u.push(2,"List<KeyValuePair<string, string>> postData = new List<KeyValuePair<string, string>>();"),t.postData.params.forEach((t=>{u.push(2,'postData.Add(new KeyValuePair<string, string>("%s", "%s"));',t.name,t.value)})),u.blank());break;case MediaTypes.MULTIPART:t.postData.params&&(u.blank(),u.push(2,"MultipartFormDataContent postData = new MultipartFormDataContent();"),t.postData.params.forEach((t=>{u.push(2,'postData.Add(new StringContent("%s"), "%s");',t.value,t.name)})));break;case MediaTypes.JSON:t.postData.jsonObj&&(u.push(2,"string json = JsonSerializer.Serialize(new"),u.push(2,"{"),y(t.postData.jsonObj,3),u.push(2,"});"),u.blank(),u.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(((t,e)=>{const s=(0===e?'string xml = @"':"")+t.replace(/"/g,'""');u.push(0===e?2:3,s)})),u.push(2,'";'),u.push(2,'using StringContent postData = new StringContent(xml, Encoding.UTF8, "%s");',t.postData.mimeType))}else m()&&(u.push(2,"var ms = new MemoryStream();"),u.push(2,"var postData = new StreamContent(ms);"),u.push(2,'postData.Headers.ContentType = new MediaTypeHeaderValue("application/octet-stream");'));return printUrlVariablesDeclarations(t,u,3),u.push(2,"using HttpResponseMessage %s = await client.%sAsync(%s%s);",u.var("request"),l,buildUrlExpression(t,u),p.withImports?isDataMethod(t.method)?normalizeMimeType(t.postData&&t.postData.mimeType)===MediaTypes.URL_ENCODED?", new FormUrlEncodedContent(postData)":"delete"===t.method?"":t.postData&&t.postData.params||m()?", postData":", null":"":", new FormUrlEncodedContent(postData)"),p.withWrapper&&(u.push(2,"string response = await request.Content.ReadAsStringAsync();"),u.blank(),u.push(2,"Console.WriteLine(response);"),u.push(1,"}"),u.push("}")),u.join();function h(e){return t.postData&&normalizeMimeType(t.postData.mimeType)===e}function m(){return t.headersObj&&t.headersObj["Content-Type"]===MediaTypes.OCTET_STREAM}function d(t,e){t.forEach(((s,a)=>{const n=!isLastInArray(t,a);Array.isArray(s)?d(s,e+1):checkIfIsObject(s)?(u.push(e+1,"new {"),y(s,e+2),u.push(e+1,"}%s",n?",":"")):u.push(e+1,'"%s"%s',s,n?",":"")})),u.push(e,"},")}function y(t,e){for(const[s,a]of Object.entries(t)){const n=!isLastProperty(t,s);if(Array.isArray(a))u.push(e,"%s = new[] {",s),d(a,e);else if(checkIfIsObject(a)){const t=isEmptyObject(a);u.push(e,"%s = new %s",s,t?"{},":"{"),t||(y(a,e+1),u.push(e,"}%s",n?",":""))}else u.push(e,'%s = "%s"%s',s,a,n?",":"")}}};export const 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 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"../../../../../constants";const handler=function(t,e,{target:s,client:a}){var n,i,r,o;const p=Object.assign({indent:" ",withWrapper:!0},e),u=new CodeBuilder({indentation:p.indent,variablesPrefix:p.variablesPrefix,capitalize:!0,lang:Lang.CSHARPNEWTONSOFT}),l=formatHttpMethod(t.method);if(p.withComments&&addComments(u),p.withWrapper&&(u.push("using System;"),u.push("using System.Net.Http;"),u.push("using System.Threading.Tasks;"),(h(MediaTypes.JSON)||h(MediaTypes.XML)||t.basicAuth)&&u.push("using System.Text;"),(h(MediaTypes.URL_ENCODED)||(null===(n=t.securityOAuth2ExtraCalls)||void 0===n?void 0:n.length))&&u.push("using System.Collections.Generic;"),(h(MediaTypes.JSON)||(null===(i=t.securityOAuth2ExtraCalls)||void 0===i?void 0:i.length))&&u.push("using Newtonsoft.Json.Linq;"),d()&&u.push("using System.IO;"),(d()||t.basicAuth)&&u.push("using System.Net.Http.Headers;"),u.blank(),u.push("public class Program"),u.push("{"),u.push(1,"private readonly IHttpClientFactory _httpClientFactory;"),u.push(1,"public static async Task Main(string[] args)"),u.push(1,"{"),u.push(2,"var client = _httpClientFactory.CreateClient();")),null===(r=t.securityOAuth2ExtraCalls)||void 0===r?void 0:r.length){const e=new HTTPSnippet(null===(o=t.securityOAuth2ExtraCalls)||void 0===o?void 0:o[0]).convert(s,a,Object.assign(Object.assign({},p),{withImports:!1,withWrapper:!1,withComments:!1,variablesPrefix:"oauth2"}));u.push(e),u.push(2,"var oauth2Response = await oauth2Request.Content.ReadAsStringAsync();"),u.push(2,"JObject inputJObject = JObject.Parse(oauth2Response);"),u.push(2,'var accessToken = inputJObject["access_token"].ToString();'),u.blank()}const c=Object.keys(t.allHeaders).filter((t=>{switch(t.toLowerCase()){case"content-type":case"content-length":case"accept-encoding":return!1;default:return!0}}));if(c.length&&c.forEach((e=>{var s;u.push(2,'client.DefaultRequestHeaders.Add("%s", %s);',e,(null===(s=t.securityOAuth2ExtraCalls)||void 0===s?void 0:s.length)?'"Bearer " + accessToken':`"${t.allHeaders[e]}"`)})),t.basicAuth){const{username:e,password:s}=t.basicAuth;u.push(2,`var base64String = Convert.ToBase64String(Encoding.ASCII.GetBytes("${e}:${s}"));`),u.push(2,'client.DefaultRequestHeaders.Authorization = new AuthenticationHeaderValue(@"Basic", base64String);')}if(t.postData)switch(normalizeMimeType(t.postData.mimeType)){case MediaTypes.URL_ENCODED:t.postData.params&&(u.blank(),u.push(2,"List<KeyValuePair<string, string>> postData = new List<KeyValuePair<string, string>>();"),t.postData.params.forEach((t=>{u.push(2,'postData.Add(new KeyValuePair<string, string>("%s", "%s"));',t.name,t.value)})),u.blank());break;case MediaTypes.MULTIPART:t.postData.params&&(u.blank(),u.push(2,"MultipartFormDataContent postData = new MultipartFormDataContent();"),t.postData.params.forEach((t=>{u.push(2,'postData.Add(new StringContent("%s"), "%s");',t.value,t.name)})));break;case MediaTypes.JSON:t.postData.jsonObj&&(u.push(2,`JObject json = JObject.Parse(@"${addIndentation(stringifyObject(t.postData.jsonObj,{indent:p.indent,inlineCharacterLimit:25}).replace(/"/g,'""'),{level:3,firstLine:!1})}");`),u.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(((t,e)=>{const s=(0===e?'string xml = @"':"")+t.replace(/"/g,'""');u.push(0===e?3:4,s)})),u.push(2,'";'),u.push(2,'var postData = new StringContent(xml, Encoding.UTF8, "%s");',t.postData.mimeType))}else d()&&(u.push(2,"var ms = new MemoryStream();"),u.push(2,"var postData = new StreamContent(ms);"),u.push(2,'postData.Headers.ContentType = new MediaTypeHeaderValue("application/octet-stream");'));return printUrlVariablesDeclarations(t,u,3),u.push(2,"var %s = await client.%sAsync(%s%s);",u.var("request"),l,buildUrlExpression(t,u),p.withImports?isDataMethod(t.method)?normalizeMimeType(t.postData&&t.postData.mimeType)===MediaTypes.URL_ENCODED?", new FormUrlEncodedContent(postData)":"delete"===t.method?"":t.postData&&t.postData.params||d()?", postData":", null":"":", new FormUrlEncodedContent(postData)"),p.withWrapper&&(u.push(2,"var response = await request.Content.ReadAsStringAsync();"),u.blank(),u.push(2,"Console.WriteLine(response);"),u.push(1,"}"),u.push("}")),u.join();function h(e){return t.postData&&normalizeMimeType(t.postData.mimeType)===e}function d(){return t.headersObj&&t.headersObj["Content-Type"]===MediaTypes.OCTET_STREAM}};export const 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
|