@@ -8,6 +8,7 @@ import { useMainContext } from 'components/context/MainContext'
8
8
type CodeExamples = Record < string , any >
9
9
/*
10
10
Generates a curl example
11
+
11
12
For example:
12
13
curl \
13
14
-X POST \
@@ -23,11 +24,6 @@ export function getShellExample(operation: Operation, codeSample: CodeSample) {
23
24
? codeSample . response . contentType
24
25
: 'application/vnd.github+json'
25
26
26
- const contentTypeHeader =
27
- codeSample ?. request ?. contentType === 'application/octet-stream'
28
- ? '-H "Content-Type: application/octet-stream"'
29
- : ''
30
-
31
27
let requestPath = codeSample ?. request ?. parameters
32
28
? parseTemplate ( operation . requestPath ) . expand ( codeSample . request . parameters )
33
29
: operation . requestPath
@@ -50,22 +46,14 @@ export function getShellExample(operation: Operation, codeSample: CodeSample) {
50
46
const CURL_CONTENT_TYPE_MAPPING : { [ key : string ] : string } = {
51
47
'application/x-www-form-urlencoded' : '--data-urlencode' ,
52
48
'multipart/form-data' : '--form' ,
53
- 'application/octet-stream' : '--data-binary' ,
54
49
}
55
50
const contentType = codeSample . request . contentType
56
51
if ( codeSample . request . contentType in CURL_CONTENT_TYPE_MAPPING ) {
57
52
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
+ } )
69
57
}
70
58
}
71
59
@@ -83,7 +71,6 @@ export function getShellExample(operation: Operation, codeSample: CodeSample) {
83
71
const args = [
84
72
operation . verb !== 'get' && `-X ${ operation . verb . toUpperCase ( ) } ` ,
85
73
`-H "Accept: ${ defaultAcceptHeader } " \\\n ${ authHeader } ${ apiVersionHeader } ` ,
86
- contentTypeHeader ,
87
74
`${ operation . serverUrl } ${ requestPath } ` ,
88
75
requestBodyParams ,
89
76
] . filter ( Boolean )
@@ -114,10 +101,7 @@ export function getGHExample(operation: Operation, codeSample: CodeSample) {
114
101
requestPath += requiredQueryParams ? `?${ requiredQueryParams } ` : ''
115
102
116
103
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 ) {
121
105
const bodyParamValues = Object . values ( codeSample . request . bodyParameters )
122
106
// GitHub CLI does not support sending Objects and arrays using the -F or
123
107
// -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) {
136
120
}
137
121
} )
138
122
. join ( '\\\n ' )
139
- } else {
140
- requestBodyParams = `-f '${ codeSample . request . bodyParameters } '`
141
123
}
142
124
const args = [
143
125
operation . verb !== 'get' && `--method ${ operation . verb . toUpperCase ( ) } ` ,
@@ -165,15 +147,9 @@ export function getGHExample(operation: Operation, codeSample: CodeSample) {
165
147
166
148
*/
167
149
export 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
+ : { }
177
153
178
154
let queryParameters = ''
179
155
0 commit comments