@@ -8,6 +8,7 @@ import { useMainContext } from 'components/context/MainContext'
88type CodeExamples = Record < string , any >
99/*
1010 Generates a curl example
11+
1112 For example:
1213 curl \
1314 -X POST \
@@ -23,11 +24,6 @@ export function getShellExample(operation: Operation, codeSample: CodeSample) {
2324 ? codeSample . response . contentType
2425 : 'application/vnd.github+json'
2526
26- const contentTypeHeader =
27- codeSample ?. request ?. contentType === 'application/octet-stream'
28- ? '-H "Content-Type: application/octet-stream"'
29- : ''
30-
3127 let requestPath = codeSample ?. request ?. parameters
3228 ? parseTemplate ( operation . requestPath ) . expand ( codeSample . request . parameters )
3329 : operation . requestPath
@@ -50,22 +46,14 @@ export function getShellExample(operation: Operation, codeSample: CodeSample) {
5046 const CURL_CONTENT_TYPE_MAPPING : { [ key : string ] : string } = {
5147 'application/x-www-form-urlencoded' : '--data-urlencode' ,
5248 'multipart/form-data' : '--form' ,
53- 'application/octet-stream' : '--data-binary' ,
5449 }
5550 const contentType = codeSample . request . contentType
5651 if ( codeSample . request . contentType in CURL_CONTENT_TYPE_MAPPING ) {
5752 requestBodyParams = ''
58- // Most of the time the example body parameters have a name and value
59- // and are included in an object. But, some cases are a single value
60- // and the type is a string.
61- if ( typeof codeSample . request . bodyParameters === 'object' ) {
62- const paramNames = Object . keys ( codeSample . request . bodyParameters )
63- paramNames . forEach ( ( elem ) => {
64- requestBodyParams = `${ requestBodyParams } ${ CURL_CONTENT_TYPE_MAPPING [ contentType ] } "${ elem } =${ codeSample . request . bodyParameters [ elem ] } "`
65- } )
66- } else {
67- requestBodyParams = `${ CURL_CONTENT_TYPE_MAPPING [ contentType ] } "${ codeSample . request . bodyParameters } "`
68- }
53+ const paramNames = Object . keys ( codeSample . request . bodyParameters )
54+ paramNames . forEach ( ( elem ) => {
55+ requestBodyParams = `${ requestBodyParams } ${ CURL_CONTENT_TYPE_MAPPING [ contentType ] } "${ elem } =${ codeSample . request . bodyParameters [ elem ] } "`
56+ } )
6957 }
7058 }
7159
@@ -83,7 +71,6 @@ export function getShellExample(operation: Operation, codeSample: CodeSample) {
8371 const args = [
8472 operation . verb !== 'get' && `-X ${ operation . verb . toUpperCase ( ) } ` ,
8573 `-H "Accept: ${ defaultAcceptHeader } " \\\n ${ authHeader } ${ apiVersionHeader } ` ,
86- contentTypeHeader ,
8774 `${ operation . serverUrl } ${ requestPath } ` ,
8875 requestBodyParams ,
8976 ] . filter ( Boolean )
@@ -114,10 +101,7 @@ export function getGHExample(operation: Operation, codeSample: CodeSample) {
114101 requestPath += requiredQueryParams ? `?${ requiredQueryParams } ` : ''
115102
116103 let requestBodyParams = ''
117- // Most of the time the example body parameters have a name and value
118- // and are included in an object. But, some cases are a single value
119- // and the type is a string.
120- if ( typeof codeSample ?. request ?. bodyParameters === 'object' ) {
104+ if ( codeSample ?. request ?. bodyParameters ) {
121105 const bodyParamValues = Object . values ( codeSample . request . bodyParameters )
122106 // GitHub CLI does not support sending Objects and arrays using the -F or
123107 // -f flags. That support may be added in the future. It is possible to
@@ -136,8 +120,6 @@ export function getGHExample(operation: Operation, codeSample: CodeSample) {
136120 }
137121 } )
138122 . join ( '\\\n ' )
139- } else {
140- requestBodyParams = `-f '${ codeSample . request . bodyParameters } '`
141123 }
142124 const args = [
143125 operation . verb !== 'get' && `--method ${ operation . verb . toUpperCase ( ) } ` ,
@@ -165,15 +147,9 @@ export function getGHExample(operation: Operation, codeSample: CodeSample) {
165147
166148*/
167149export function getJSExample ( operation : Operation , codeSample : CodeSample ) {
168- const parameters =
169- // Most of the time the example body parameters have a name and value
170- // and are included in an object. But, some cases are a single value
171- // and the type is a string.
172- typeof codeSample . request . bodyParameters === 'object'
173- ? codeSample . request
174- ? { ...codeSample . request . parameters , ...codeSample . request . bodyParameters }
175- : { }
176- : { ...codeSample . request . parameters , data : codeSample . request . bodyParameters }
150+ const parameters = codeSample . request
151+ ? { ...codeSample . request . parameters , ...codeSample . request . bodyParameters }
152+ : { }
177153
178154 let queryParameters = ''
179155
0 commit comments