@scalar/snippetz 0.7.4 → 0.7.6
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/clients/index.js +168 -169
- package/dist/httpsnippet-lite/helpers/code-builder.js +86 -74
- package/dist/httpsnippet-lite/helpers/escape.js +69 -44
- package/dist/httpsnippet-lite/helpers/headers.js +17 -14
- package/dist/httpsnippet-lite/helpers/reducer.js +1 -1
- package/dist/httpsnippet-lite/helpers/shell.js +13 -13
- package/dist/httpsnippet-lite/helpers/snippet-request.js +1 -1
- package/dist/httpsnippet-lite/helpers/url.js +4 -8
- package/dist/httpsnippet-lite/targets/c/libcurl/client.js +69 -67
- package/dist/httpsnippet-lite/targets/clojure/clj_http/client.js +165 -154
- package/dist/httpsnippet-lite/targets/csharp/restsharp/client.js +35 -38
- package/dist/httpsnippet-lite/targets/go/native/client.js +151 -147
- package/dist/httpsnippet-lite/targets/java/asynchttp/client.js +32 -35
- package/dist/httpsnippet-lite/targets/java/nethttp/client.js +40 -39
- package/dist/httpsnippet-lite/targets/java/okhttp/client.js +83 -73
- package/dist/httpsnippet-lite/targets/java/unirest/client.js +41 -34
- package/dist/httpsnippet-lite/targets/javascript/axios/client.js +81 -76
- package/dist/httpsnippet-lite/targets/javascript/jquery/client.js +77 -71
- package/dist/httpsnippet-lite/targets/javascript/xhr/client.js +73 -71
- package/dist/httpsnippet-lite/targets/kotlin/okhttp/client.js +83 -73
- package/dist/httpsnippet-lite/targets/node/axios/client.js +74 -69
- package/dist/httpsnippet-lite/targets/objc/helpers.js +52 -33
- package/dist/httpsnippet-lite/targets/objc/nsurlsession/client.js +123 -121
- package/dist/httpsnippet-lite/targets/ocaml/cohttp/client.js +60 -49
- package/dist/httpsnippet-lite/targets/powershell/common.js +46 -56
- package/dist/httpsnippet-lite/targets/powershell/restmethod/client.js +9 -13
- package/dist/httpsnippet-lite/targets/powershell/webrequest/client.js +9 -13
- package/dist/httpsnippet-lite/targets/python/python3/client.js +85 -68
- package/dist/httpsnippet-lite/targets/r/httr/client.js +114 -95
- package/dist/httpsnippet-lite/targets/ruby/native/client.js +66 -70
- package/dist/httpsnippet-lite/targets/shell/httpie/client.js +121 -107
- package/dist/httpsnippet-lite/targets/shell/wget/client.js +48 -43
- package/dist/httpsnippet-lite/targets/swift/helpers.js +62 -44
- package/dist/httpsnippet-lite/targets/swift/nsurlsession/client.js +126 -112
- package/dist/httpsnippet-lite/targets/target.js +1 -1
- package/dist/index.js +2 -9
- package/dist/libs/http.js +68 -56
- package/dist/libs/javascript.js +77 -60
- package/dist/libs/php.js +59 -49
- package/dist/libs/rust.js +60 -33
- package/dist/libs/shell.js +14 -5
- package/dist/plugins/c/libcurl/index.js +1 -5
- package/dist/plugins/c/libcurl/libcurl.js +13 -13
- package/dist/plugins/clojure/clj_http/clj_http.js +13 -13
- package/dist/plugins/clojure/clj_http/index.js +1 -5
- package/dist/plugins/csharp/httpclient/httpclient.js +206 -150
- package/dist/plugins/csharp/httpclient/index.js +1 -5
- package/dist/plugins/csharp/restsharp/index.js +1 -5
- package/dist/plugins/csharp/restsharp/restsharp.js +13 -13
- package/dist/plugins/dart/http/http.js +95 -93
- package/dist/plugins/dart/http/index.js +1 -5
- package/dist/plugins/fsharp/httpclient/httpclient.js +169 -122
- package/dist/plugins/fsharp/httpclient/index.js +1 -5
- package/dist/plugins/go/native/index.js +1 -5
- package/dist/plugins/go/native/native.js +13 -13
- package/dist/plugins/http/http11/http11.d.ts.map +1 -1
- package/dist/plugins/http/http11/http11.js +104 -85
- package/dist/plugins/http/http11/index.js +1 -5
- package/dist/plugins/java/asynchttp/asynchttp.js +13 -13
- package/dist/plugins/java/asynchttp/index.js +1 -5
- package/dist/plugins/java/nethttp/index.js +1 -5
- package/dist/plugins/java/nethttp/nethttp.js +13 -13
- package/dist/plugins/java/okhttp/index.js +1 -5
- package/dist/plugins/java/okhttp/okhttp.js +13 -13
- package/dist/plugins/java/unirest/index.js +1 -5
- package/dist/plugins/java/unirest/unirest.js +13 -13
- package/dist/plugins/js/axios/axios.js +13 -13
- package/dist/plugins/js/axios/index.js +1 -5
- package/dist/plugins/js/fetch/fetch.js +82 -68
- package/dist/plugins/js/fetch/index.js +1 -5
- package/dist/plugins/js/jquery/index.js +1 -5
- package/dist/plugins/js/jquery/jquery.js +13 -13
- package/dist/plugins/js/ofetch/index.js +1 -5
- package/dist/plugins/js/ofetch/ofetch.js +61 -48
- package/dist/plugins/js/xhr/index.js +1 -5
- package/dist/plugins/js/xhr/xhr.js +13 -13
- package/dist/plugins/kotlin/okhttp/index.js +1 -5
- package/dist/plugins/kotlin/okhttp/okhttp.js +13 -13
- package/dist/plugins/node/axios/axios.js +13 -13
- package/dist/plugins/node/axios/index.js +1 -5
- package/dist/plugins/node/fetch/fetch.js +86 -74
- package/dist/plugins/node/fetch/index.js +1 -5
- package/dist/plugins/node/ofetch/index.js +1 -5
- package/dist/plugins/node/ofetch/ofetch.js +61 -48
- package/dist/plugins/node/undici/index.js +1 -5
- package/dist/plugins/node/undici/undici.js +60 -47
- package/dist/plugins/objc/nsurlsession/index.js +1 -5
- package/dist/plugins/objc/nsurlsession/nsurlsession.js +13 -13
- package/dist/plugins/ocaml/cohttp/cohttp.js +13 -13
- package/dist/plugins/ocaml/cohttp/index.js +1 -5
- package/dist/plugins/php/curl/curl.js +143 -101
- package/dist/plugins/php/curl/index.js +1 -5
- package/dist/plugins/php/guzzle/guzzle.d.ts.map +1 -1
- package/dist/plugins/php/guzzle/guzzle.js +109 -83
- package/dist/plugins/php/guzzle/index.js +1 -5
- package/dist/plugins/powershell/restmethod/index.js +1 -5
- package/dist/plugins/powershell/restmethod/restmethod.js +13 -13
- package/dist/plugins/powershell/webrequest/index.js +1 -5
- package/dist/plugins/powershell/webrequest/webrequest.js +13 -13
- package/dist/plugins/python/httpx/async.js +17 -15
- package/dist/plugins/python/httpx/index.js +2 -7
- package/dist/plugins/python/httpx/sync.js +11 -12
- package/dist/plugins/python/python3/index.js +1 -5
- package/dist/plugins/python/python3/python3.js +13 -13
- package/dist/plugins/python/requests/index.js +1 -5
- package/dist/plugins/python/requests/requests.js +11 -12
- package/dist/plugins/python/requestsLike.d.ts.map +1 -1
- package/dist/plugins/python/requestsLike.js +145 -112
- package/dist/plugins/r/httr/httr.js +13 -13
- package/dist/plugins/r/httr/index.js +1 -5
- package/dist/plugins/ruby/native/index.js +1 -5
- package/dist/plugins/ruby/native/native.js +13 -13
- package/dist/plugins/rust/reqwest/index.js +1 -5
- package/dist/plugins/rust/reqwest/reqwest.js +126 -83
- package/dist/plugins/shell/curl/curl.d.ts.map +1 -1
- package/dist/plugins/shell/curl/curl.js +129 -97
- package/dist/plugins/shell/curl/index.js +1 -5
- package/dist/plugins/shell/httpie/httpie.js +13 -13
- package/dist/plugins/shell/httpie/index.js +1 -5
- package/dist/plugins/shell/wget/index.js +1 -5
- package/dist/plugins/shell/wget/wget.js +13 -13
- package/dist/plugins/swift/nsurlsession/index.js +1 -5
- package/dist/plugins/swift/nsurlsession/nsurlsession.js +13 -13
- package/dist/snippetz.js +25 -28
- package/dist/utils/convertWithHttpSnippetLite.js +100 -96
- package/dist/utils/index.js +1 -5
- package/package.json +8 -12
- package/dist/clients/index.js.map +0 -7
- package/dist/httpsnippet-lite/helpers/code-builder.js.map +0 -7
- package/dist/httpsnippet-lite/helpers/escape.js.map +0 -7
- package/dist/httpsnippet-lite/helpers/headers.js.map +0 -7
- package/dist/httpsnippet-lite/helpers/reducer.js.map +0 -7
- package/dist/httpsnippet-lite/helpers/shell.js.map +0 -7
- package/dist/httpsnippet-lite/helpers/snippet-request.js.map +0 -7
- package/dist/httpsnippet-lite/helpers/url.js.map +0 -7
- package/dist/httpsnippet-lite/targets/c/libcurl/client.js.map +0 -7
- package/dist/httpsnippet-lite/targets/clojure/clj_http/client.js.map +0 -7
- package/dist/httpsnippet-lite/targets/csharp/restsharp/client.js.map +0 -7
- package/dist/httpsnippet-lite/targets/go/native/client.js.map +0 -7
- package/dist/httpsnippet-lite/targets/java/asynchttp/client.js.map +0 -7
- package/dist/httpsnippet-lite/targets/java/nethttp/client.js.map +0 -7
- package/dist/httpsnippet-lite/targets/java/okhttp/client.js.map +0 -7
- package/dist/httpsnippet-lite/targets/java/unirest/client.js.map +0 -7
- package/dist/httpsnippet-lite/targets/javascript/axios/client.js.map +0 -7
- package/dist/httpsnippet-lite/targets/javascript/jquery/client.js.map +0 -7
- package/dist/httpsnippet-lite/targets/javascript/xhr/client.js.map +0 -7
- package/dist/httpsnippet-lite/targets/kotlin/okhttp/client.js.map +0 -7
- package/dist/httpsnippet-lite/targets/node/axios/client.js.map +0 -7
- package/dist/httpsnippet-lite/targets/objc/helpers.js.map +0 -7
- package/dist/httpsnippet-lite/targets/objc/nsurlsession/client.js.map +0 -7
- package/dist/httpsnippet-lite/targets/ocaml/cohttp/client.js.map +0 -7
- package/dist/httpsnippet-lite/targets/powershell/common.js.map +0 -7
- package/dist/httpsnippet-lite/targets/powershell/restmethod/client.js.map +0 -7
- package/dist/httpsnippet-lite/targets/powershell/webrequest/client.js.map +0 -7
- package/dist/httpsnippet-lite/targets/python/python3/client.js.map +0 -7
- package/dist/httpsnippet-lite/targets/r/httr/client.js.map +0 -7
- package/dist/httpsnippet-lite/targets/ruby/native/client.js.map +0 -7
- package/dist/httpsnippet-lite/targets/shell/httpie/client.js.map +0 -7
- package/dist/httpsnippet-lite/targets/shell/wget/client.js.map +0 -7
- package/dist/httpsnippet-lite/targets/swift/helpers.js.map +0 -7
- package/dist/httpsnippet-lite/targets/swift/nsurlsession/client.js.map +0 -7
- package/dist/httpsnippet-lite/targets/target.js.map +0 -7
- package/dist/index.js.map +0 -7
- package/dist/libs/http.js.map +0 -7
- package/dist/libs/javascript.js.map +0 -7
- package/dist/libs/php.js.map +0 -7
- package/dist/libs/rust.js.map +0 -7
- package/dist/libs/shell.js.map +0 -7
- package/dist/plugins/c/libcurl/index.js.map +0 -7
- package/dist/plugins/c/libcurl/libcurl.js.map +0 -7
- package/dist/plugins/clojure/clj_http/clj_http.js.map +0 -7
- package/dist/plugins/clojure/clj_http/index.js.map +0 -7
- package/dist/plugins/csharp/httpclient/httpclient.js.map +0 -7
- package/dist/plugins/csharp/httpclient/index.js.map +0 -7
- package/dist/plugins/csharp/restsharp/index.js.map +0 -7
- package/dist/plugins/csharp/restsharp/restsharp.js.map +0 -7
- package/dist/plugins/dart/http/http.js.map +0 -7
- package/dist/plugins/dart/http/index.js.map +0 -7
- package/dist/plugins/fsharp/httpclient/httpclient.js.map +0 -7
- package/dist/plugins/fsharp/httpclient/index.js.map +0 -7
- package/dist/plugins/go/native/index.js.map +0 -7
- package/dist/plugins/go/native/native.js.map +0 -7
- package/dist/plugins/http/http11/http11.js.map +0 -7
- package/dist/plugins/http/http11/index.js.map +0 -7
- package/dist/plugins/java/asynchttp/asynchttp.js.map +0 -7
- package/dist/plugins/java/asynchttp/index.js.map +0 -7
- package/dist/plugins/java/nethttp/index.js.map +0 -7
- package/dist/plugins/java/nethttp/nethttp.js.map +0 -7
- package/dist/plugins/java/okhttp/index.js.map +0 -7
- package/dist/plugins/java/okhttp/okhttp.js.map +0 -7
- package/dist/plugins/java/unirest/index.js.map +0 -7
- package/dist/plugins/java/unirest/unirest.js.map +0 -7
- package/dist/plugins/js/axios/axios.js.map +0 -7
- package/dist/plugins/js/axios/index.js.map +0 -7
- package/dist/plugins/js/fetch/fetch.js.map +0 -7
- package/dist/plugins/js/fetch/index.js.map +0 -7
- package/dist/plugins/js/jquery/index.js.map +0 -7
- package/dist/plugins/js/jquery/jquery.js.map +0 -7
- package/dist/plugins/js/ofetch/index.js.map +0 -7
- package/dist/plugins/js/ofetch/ofetch.js.map +0 -7
- package/dist/plugins/js/xhr/index.js.map +0 -7
- package/dist/plugins/js/xhr/xhr.js.map +0 -7
- package/dist/plugins/kotlin/okhttp/index.js.map +0 -7
- package/dist/plugins/kotlin/okhttp/okhttp.js.map +0 -7
- package/dist/plugins/node/axios/axios.js.map +0 -7
- package/dist/plugins/node/axios/index.js.map +0 -7
- package/dist/plugins/node/fetch/fetch.js.map +0 -7
- package/dist/plugins/node/fetch/index.js.map +0 -7
- package/dist/plugins/node/ofetch/index.js.map +0 -7
- package/dist/plugins/node/ofetch/ofetch.js.map +0 -7
- package/dist/plugins/node/undici/index.js.map +0 -7
- package/dist/plugins/node/undici/undici.js.map +0 -7
- package/dist/plugins/objc/nsurlsession/index.js.map +0 -7
- package/dist/plugins/objc/nsurlsession/nsurlsession.js.map +0 -7
- package/dist/plugins/ocaml/cohttp/cohttp.js.map +0 -7
- package/dist/plugins/ocaml/cohttp/index.js.map +0 -7
- package/dist/plugins/php/curl/curl.js.map +0 -7
- package/dist/plugins/php/curl/index.js.map +0 -7
- package/dist/plugins/php/guzzle/guzzle.js.map +0 -7
- package/dist/plugins/php/guzzle/index.js.map +0 -7
- package/dist/plugins/powershell/restmethod/index.js.map +0 -7
- package/dist/plugins/powershell/restmethod/restmethod.js.map +0 -7
- package/dist/plugins/powershell/webrequest/index.js.map +0 -7
- package/dist/plugins/powershell/webrequest/webrequest.js.map +0 -7
- package/dist/plugins/python/httpx/async.js.map +0 -7
- package/dist/plugins/python/httpx/index.js.map +0 -7
- package/dist/plugins/python/httpx/sync.js.map +0 -7
- package/dist/plugins/python/python3/index.js.map +0 -7
- package/dist/plugins/python/python3/python3.js.map +0 -7
- package/dist/plugins/python/requests/index.js.map +0 -7
- package/dist/plugins/python/requests/requests.js.map +0 -7
- package/dist/plugins/python/requestsLike.js.map +0 -7
- package/dist/plugins/r/httr/httr.js.map +0 -7
- package/dist/plugins/r/httr/index.js.map +0 -7
- package/dist/plugins/ruby/native/index.js.map +0 -7
- package/dist/plugins/ruby/native/native.js.map +0 -7
- package/dist/plugins/rust/reqwest/index.js.map +0 -7
- package/dist/plugins/rust/reqwest/reqwest.js.map +0 -7
- package/dist/plugins/shell/curl/curl.js.map +0 -7
- package/dist/plugins/shell/curl/index.js.map +0 -7
- package/dist/plugins/shell/httpie/httpie.js.map +0 -7
- package/dist/plugins/shell/httpie/index.js.map +0 -7
- package/dist/plugins/shell/wget/index.js.map +0 -7
- package/dist/plugins/shell/wget/wget.js.map +0 -7
- package/dist/plugins/swift/nsurlsession/index.js.map +0 -7
- package/dist/plugins/swift/nsurlsession/nsurlsession.js.map +0 -7
- package/dist/snippetz.js.map +0 -7
- package/dist/utils/convertWithHttpSnippetLite.js.map +0 -7
- package/dist/utils/index.js.map +0 -7
package/package.json
CHANGED
|
@@ -9,7 +9,7 @@
|
|
|
9
9
|
"url": "git+https://github.com/scalar/scalar.git",
|
|
10
10
|
"directory": "packages/snippetz"
|
|
11
11
|
},
|
|
12
|
-
"version": "0.7.
|
|
12
|
+
"version": "0.7.6",
|
|
13
13
|
"engines": {
|
|
14
14
|
"node": ">=22"
|
|
15
15
|
},
|
|
@@ -230,23 +230,19 @@
|
|
|
230
230
|
"dependencies": {
|
|
231
231
|
"js-base64": "^3.7.8",
|
|
232
232
|
"stringify-object": "^6.0.0",
|
|
233
|
-
"@scalar/types": "0.7.
|
|
233
|
+
"@scalar/types": "0.7.4"
|
|
234
234
|
},
|
|
235
235
|
"devDependencies": {
|
|
236
236
|
"@types/stringify-object": "^4.0.5",
|
|
237
|
-
"vite": "
|
|
238
|
-
"@scalar/build-tooling": "0.5.0"
|
|
237
|
+
"vite": "8.0.0"
|
|
239
238
|
},
|
|
240
239
|
"scripts": {
|
|
241
|
-
"build": "
|
|
242
|
-
"generate:dotnet-enums": "
|
|
243
|
-
"generate:java-enums": "
|
|
244
|
-
"generate:markdown-docs": "
|
|
245
|
-
"lint:check": "scalar-lint-check",
|
|
246
|
-
"lint:fix": "scalar-lint-fix",
|
|
240
|
+
"build": "tsc -p tsconfig.build.json && tsc-alias -p tsconfig.build.json",
|
|
241
|
+
"generate:dotnet-enums": "tsx scripts/generate-dotnet-enums.ts",
|
|
242
|
+
"generate:java-enums": "tsx scripts/generate-java-enums.ts",
|
|
243
|
+
"generate:markdown-docs": "tsx scripts/generate-markdown-docs.ts",
|
|
247
244
|
"postbuild": "pnpm generate:dotnet-enums && pnpm generate:java-enums && pnpm generate:markdown-docs",
|
|
248
245
|
"test": "vitest",
|
|
249
|
-
"types:
|
|
250
|
-
"types:check": "scalar-types-check"
|
|
246
|
+
"types:check": "tsc --noEmit"
|
|
251
247
|
}
|
|
252
248
|
}
|
|
@@ -1,7 +0,0 @@
|
|
|
1
|
-
{
|
|
2
|
-
"version": 3,
|
|
3
|
-
"sources": ["../../src/clients/index.ts"],
|
|
4
|
-
"sourcesContent": ["import type { Target } from '@scalar/types/snippetz'\n\nimport { cLibcurl } from '@/plugins/c/libcurl'\nimport { clojureCljhttp } from '@/plugins/clojure/clj_http'\nimport { csharpHttpclient } from '@/plugins/csharp/httpclient'\nimport { csharpRestsharp } from '@/plugins/csharp/restsharp'\nimport { dartHttp } from '@/plugins/dart/http'\nimport { fsharpHttpclient } from '@/plugins/fsharp/httpclient'\nimport { goNative } from '@/plugins/go/native'\nimport { httpHttp11 } from '@/plugins/http/http11'\nimport { javaAsynchttp } from '@/plugins/java/asynchttp'\nimport { javaNethttp } from '@/plugins/java/nethttp'\nimport { javaOkhttp } from '@/plugins/java/okhttp'\nimport { javaUnirest } from '@/plugins/java/unirest'\nimport { jsAxios } from '@/plugins/js/axios'\nimport { jsFetch } from '@/plugins/js/fetch'\nimport { jsJquery } from '@/plugins/js/jquery'\nimport { jsOfetch } from '@/plugins/js/ofetch'\nimport { jsXhr } from '@/plugins/js/xhr'\nimport { kotlinOkhttp } from '@/plugins/kotlin/okhttp'\nimport { nodeAxios } from '@/plugins/node/axios'\nimport { nodeFetch } from '@/plugins/node/fetch'\nimport { nodeOfetch } from '@/plugins/node/ofetch'\nimport { nodeUndici } from '@/plugins/node/undici'\nimport { objcNsurlsession } from '@/plugins/objc/nsurlsession'\nimport { ocamlCohttp } from '@/plugins/ocaml/cohttp'\nimport { phpCurl } from '@/plugins/php/curl'\nimport { phpGuzzle } from '@/plugins/php/guzzle'\nimport { powershellRestmethod } from '@/plugins/powershell/restmethod'\nimport { powershellWebrequest } from '@/plugins/powershell/webrequest'\nimport { pythonHttpxAsync, pythonHttpxSync } from '@/plugins/python/httpx'\nimport { pythonPython3 } from '@/plugins/python/python3'\nimport { pythonRequests } from '@/plugins/python/requests'\nimport { rHttr } from '@/plugins/r/httr'\nimport { rubyNative } from '@/plugins/ruby/native'\nimport { rustReqwest } from '@/plugins/rust/reqwest'\nimport { shellCurl } from '@/plugins/shell/curl'\nimport { shellHttpie } from '@/plugins/shell/httpie'\nimport { shellWget } from '@/plugins/shell/wget'\nimport { swiftNsurlsession } from '@/plugins/swift/nsurlsession'\n\n/**\n * All available clients\n */\nexport const clients: Target[] = [\n {\n key: 'c',\n title: 'C',\n default: 'libcurl',\n clients: [cLibcurl],\n },\n {\n key: 'csharp',\n title: 'C#',\n default: 'restsharp',\n clients: [csharpHttpclient, csharpRestsharp],\n },\n {\n key: 'clojure',\n title: 'Clojure',\n default: 'clj_http',\n clients: [clojureCljhttp],\n },\n {\n key: 'dart',\n title: 'Dart',\n default: 'http',\n clients: [dartHttp],\n },\n {\n key: 'fsharp',\n title: 'F#',\n default: 'httpclient',\n clients: [fsharpHttpclient],\n },\n {\n key: 'go',\n title: 'Go',\n default: 'native',\n clients: [goNative],\n },\n {\n key: 'http',\n title: 'HTTP',\n default: 'http1.1',\n clients: [httpHttp11],\n },\n {\n key: 'java',\n title: 'Java',\n default: 'unirest',\n clients: [javaAsynchttp, javaNethttp, javaOkhttp, javaUnirest],\n },\n {\n key: 'js',\n title: 'JavaScript',\n default: 'fetch',\n clients: [jsFetch, jsAxios, jsOfetch, jsJquery, jsXhr],\n },\n {\n key: 'kotlin',\n title: 'Kotlin',\n default: 'okhttp',\n clients: [kotlinOkhttp],\n },\n {\n key: 'node',\n title: 'Node.js',\n default: 'fetch',\n clients: [nodeFetch, nodeAxios, nodeOfetch, nodeUndici],\n },\n {\n key: 'objc',\n title: 'Objective-C',\n default: 'nsurlsession',\n clients: [objcNsurlsession],\n },\n {\n key: 'ocaml',\n title: 'OCaml',\n default: 'cohttp',\n clients: [ocamlCohttp],\n },\n {\n key: 'php',\n title: 'PHP',\n default: 'curl',\n clients: [phpCurl, phpGuzzle],\n },\n {\n key: 'powershell',\n title: 'PowerShell',\n default: 'webrequest',\n clients: [powershellWebrequest, powershellRestmethod],\n },\n {\n key: 'python',\n title: 'Python',\n default: 'python3',\n clients: [pythonPython3, pythonRequests, pythonHttpxSync, pythonHttpxAsync],\n },\n {\n key: 'r',\n title: 'R',\n default: 'httr',\n clients: [rHttr],\n },\n {\n key: 'ruby',\n title: 'Ruby',\n default: 'native',\n clients: [rubyNative],\n },\n {\n key: 'rust',\n title: 'Rust',\n default: 'reqwest',\n clients: [rustReqwest],\n },\n {\n key: 'shell',\n title: 'Shell',\n default: 'curl',\n clients: [shellCurl, shellWget, shellHttpie],\n },\n {\n key: 'swift',\n title: 'Swift',\n default: 'nsurlsession',\n clients: [swiftNsurlsession],\n },\n]\n"],
|
|
5
|
-
"mappings": "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",
|
|
6
|
-
"names": []
|
|
7
|
-
}
|
|
@@ -1,7 +0,0 @@
|
|
|
1
|
-
{
|
|
2
|
-
"version": 3,
|
|
3
|
-
"sources": ["../../../src/httpsnippet-lite/helpers/code-builder.ts"],
|
|
4
|
-
"sourcesContent": ["type PostProcessor = (unreplacedCode: string) => string\n\nexport type CodeBuilderOptions = {\n /**\n * Desired indentation character for aggregated lines of code\n * @default ''\n */\n indent?: string\n /**\n * Desired character to join each line of code\n * @default \\n\n */\n join?: string\n}\n\nconst DEFAULT_INDENTATION_CHARACTER = ''\nconst DEFAULT_LINE_JOIN = '\\n'\n\nexport class CodeBuilder {\n postProcessors: PostProcessor[]\n code: string[]\n indentationCharacter: string\n lineJoin: string\n\n /**\n * Add given indentation level to given line of code\n */\n indentLine: (line: string, indentationLevel?: number) => string\n /**\n * Add the line at the beginning of the current lines\n */\n unshift: (line: string, indentationLevel?: number) => void\n /**\n * Add the line at the end of the current lines\n */\n push: (line: string, indentationLevel?: number) => void\n /**\n * Add an empty line at the end of current lines\n */\n blank: () => void\n /**\n * Concatenate all current lines using the given lineJoin, then apply any replacers that may have been added\n */\n join: () => string\n /**\n * Often when writing modules you may wish to add a literal tag or bit of metadata that you wish to transform after other processing as a final step.\n * To do so, you can provide a PostProcessor function and it will be run automatically for you when you call `join()` later on.\n */\n addPostProcessor: (postProcessor: PostProcessor) => void\n\n /**\n * Helper object to format and aggragate lines of code.\n * Lines are aggregated in a `code` array, and need to be joined to obtain a proper code snippet.\n */\n constructor({ indent, join }: CodeBuilderOptions = {}) {\n this.postProcessors = []\n this.code = []\n this.indentationCharacter = DEFAULT_INDENTATION_CHARACTER\n this.lineJoin = DEFAULT_LINE_JOIN\n\n /**\n * Add given indentation level to given line of code\n */\n this.indentLine = (line, indentationLevel = 0) => {\n const whitespace = this.indentationCharacter.repeat(indentationLevel)\n return `${whitespace}${line}`\n }\n /**\n * Add the line at the beginning of the current lines\n */\n this.unshift = (line, indentationLevel) => {\n const newLine = this.indentLine(line, indentationLevel)\n this.code.unshift(newLine)\n }\n /**\n * Add the line at the end of the current lines\n */\n this.push = (line, indentationLevel) => {\n const newLine = this.indentLine(line, indentationLevel)\n this.code.push(newLine)\n }\n /**\n * Add an empty line at the end of current lines\n */\n this.blank = () => {\n this.code.push('')\n }\n /**\n * Concatenate all current lines using the given lineJoin, then apply any replacers that may have been added\n */\n this.join = () => {\n const unreplacedCode = this.code.join(this.lineJoin)\n const replacedOutput = this.postProcessors.reduce(\n (accumulator, replacer) => replacer(accumulator),\n unreplacedCode,\n )\n return replacedOutput\n }\n /**\n * Often when writing modules you may wish to add a literal tag or bit of metadata that you wish to transform after other processing as a final step.\n * To do so, you can provide a PostProcessor function and it will be run automatically for you when you call `join()` later on.\n */\n this.addPostProcessor = (postProcessor) => {\n this.postProcessors = [...this.postProcessors, postProcessor]\n }\n this.indentationCharacter = indent || DEFAULT_INDENTATION_CHARACTER\n this.lineJoin = join !== null && join !== void 0 ? join : DEFAULT_LINE_JOIN\n }\n}\n"],
|
|
5
|
-
"mappings": "AAeA,MAAM,gCAAgC;AACtC,MAAM,oBAAoB;AAEnB,MAAM,YAAY;AAAA,EACvB;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA;AAAA;AAAA;AAAA,EAKA;AAAA;AAAA;AAAA;AAAA,EAIA;AAAA;AAAA;AAAA;AAAA,EAIA;AAAA;AAAA;AAAA;AAAA,EAIA;AAAA;AAAA;AAAA;AAAA,EAIA;AAAA;AAAA;AAAA;AAAA;AAAA,EAKA;AAAA;AAAA;AAAA;AAAA;AAAA,EAMA,YAAY,EAAE,QAAQ,KAAK,IAAwB,CAAC,GAAG;AACrD,SAAK,iBAAiB,CAAC;AACvB,SAAK,OAAO,CAAC;AACb,SAAK,uBAAuB;AAC5B,SAAK,WAAW;AAKhB,SAAK,aAAa,CAAC,MAAM,mBAAmB,MAAM;AAChD,YAAM,aAAa,KAAK,qBAAqB,OAAO,gBAAgB;AACpE,aAAO,GAAG,UAAU,GAAG,IAAI;AAAA,IAC7B;AAIA,SAAK,UAAU,CAAC,MAAM,qBAAqB;AACzC,YAAM,UAAU,KAAK,WAAW,MAAM,gBAAgB;AACtD,WAAK,KAAK,QAAQ,OAAO;AAAA,IAC3B;AAIA,SAAK,OAAO,CAAC,MAAM,qBAAqB;AACtC,YAAM,UAAU,KAAK,WAAW,MAAM,gBAAgB;AACtD,WAAK,KAAK,KAAK,OAAO;AAAA,IACxB;AAIA,SAAK,QAAQ,MAAM;AACjB,WAAK,KAAK,KAAK,EAAE;AAAA,IACnB;AAIA,SAAK,OAAO,MAAM;AAChB,YAAM,iBAAiB,KAAK,KAAK,KAAK,KAAK,QAAQ;AACnD,YAAM,iBAAiB,KAAK,eAAe;AAAA,QACzC,CAAC,aAAa,aAAa,SAAS,WAAW;AAAA,QAC/C;AAAA,MACF;AACA,aAAO;AAAA,IACT;AAKA,SAAK,mBAAmB,CAAC,kBAAkB;AACzC,WAAK,iBAAiB,CAAC,GAAG,KAAK,gBAAgB,aAAa;AAAA,IAC9D;AACA,SAAK,uBAAuB,UAAU;AACtC,SAAK,WAAW,SAAS,QAAQ,SAAS,SAAS,OAAO;AAAA,EAC5D;AACF;",
|
|
6
|
-
"names": []
|
|
7
|
-
}
|
|
@@ -1,7 +0,0 @@
|
|
|
1
|
-
{
|
|
2
|
-
"version": 3,
|
|
3
|
-
"sources": ["../../../src/httpsnippet-lite/helpers/escape.ts"],
|
|
4
|
-
"sourcesContent": ["type EscapeOptions = {\n /**\n * The delimiter that will be used to wrap the string (and so must be escaped\n * when used within the string).\n * Defaults to \"\n */\n delimiter?: string\n /**\n * The char to use to escape the delimiter and other special characters.\n * Defaults to \\\n */\n escapeChar?: string\n /**\n * Whether newlines (\\n and \\r) should be escaped within the string.\n * Defaults to true.\n */\n escapeNewlines?: boolean\n}\n\n/**\n * Escape characters within a value to make it safe to insert directly into a\n * snippet. Takes options which define the escape requirements.\n *\n * This is closely based on the JSON-stringify string serialization algorithm,\n * but generalized for other string delimiters (e.g. \" or ') and different escape\n * characters (e.g. Powershell uses `)\n *\n * See https://tc39.es/ecma262/multipage/structured-data.html#sec-quotejsonstring\n * for the complete original algorithm.\n */\nexport function escapeString(rawValue: string, options: EscapeOptions = {}) {\n const { delimiter = '\"', escapeChar = '\\\\', escapeNewlines = true } = options\n const stringValue = rawValue.toString()\n return [...stringValue]\n .map((c) => {\n if (c === '\\b') {\n return `${escapeChar}b`\n }\n if (c === '\\t') {\n return `${escapeChar}t`\n }\n if (c === '\\n') {\n if (escapeNewlines) {\n return `${escapeChar}n`\n }\n return c // Don't just continue, or this is caught by < \\u0020\n }\n if (c === '\\f') {\n return `${escapeChar}f`\n }\n if (c === '\\r') {\n if (escapeNewlines) {\n return `${escapeChar}r`\n }\n return c // Don't just continue, or this is caught by < \\u0020\n }\n if (c === escapeChar) {\n return escapeChar + escapeChar\n }\n if (c === delimiter) {\n return escapeChar + delimiter\n }\n if (c < '\\u0020' || c > '\\u007E') {\n // Delegate the trickier non-ASCII cases to the normal algorithm. Some of these\n // are escaped as \\uXXXX, whilst others are represented literally. Since we're\n // using this primarily for header values that are generally (though not 100%\n // strictly?) ASCII-only, this should almost never happen.\n return JSON.stringify(c).slice(1, -1)\n }\n return c\n })\n .join('')\n}\n/**\n * Make a string value safe to insert literally into a snippet within single quotes,\n * by escaping problematic characters, including single quotes inside the string,\n * backslashes, newlines, and other special characters.\n *\n * If value is not a string, it will be stringified with .toString() first.\n */\nexport const escapeForSingleQuotes = (value: string): string => escapeString(value, { delimiter: \"'\" })\n/**\n * Make a string value safe to insert literally into a snippet within double quotes,\n * by escaping problematic characters, including double quotes inside the string,\n * backslashes, newlines, and other special characters.\n *\n * If value is not a string, it will be stringified with .toString() first.\n */\nexport const escapeForDoubleQuotes = (value: string): string => escapeString(value, { delimiter: '\"' })\n"],
|
|
5
|
-
"mappings": "AA8BO,SAAS,aAAa,UAAkB,UAAyB,CAAC,GAAG;AAC1E,QAAM,EAAE,YAAY,KAAK,aAAa,MAAM,iBAAiB,KAAK,IAAI;AACtE,QAAM,cAAc,SAAS,SAAS;AACtC,SAAO,CAAC,GAAG,WAAW,EACnB,IAAI,CAAC,MAAM;AACV,QAAI,MAAM,MAAM;AACd,aAAO,GAAG,UAAU;AAAA,IACtB;AACA,QAAI,MAAM,KAAM;AACd,aAAO,GAAG,UAAU;AAAA,IACtB;AACA,QAAI,MAAM,MAAM;AACd,UAAI,gBAAgB;AAClB,eAAO,GAAG,UAAU;AAAA,MACtB;AACA,aAAO;AAAA,IACT;AACA,QAAI,MAAM,MAAM;AACd,aAAO,GAAG,UAAU;AAAA,IACtB;AACA,QAAI,MAAM,MAAM;AACd,UAAI,gBAAgB;AAClB,eAAO,GAAG,UAAU;AAAA,MACtB;AACA,aAAO;AAAA,IACT;AACA,QAAI,MAAM,YAAY;AACpB,aAAO,aAAa;AAAA,IACtB;AACA,QAAI,MAAM,WAAW;AACnB,aAAO,aAAa;AAAA,IACtB;AACA,QAAI,IAAI,OAAY,IAAI,KAAU;AAKhC,aAAO,KAAK,UAAU,CAAC,EAAE,MAAM,GAAG,EAAE;AAAA,IACtC;AACA,WAAO;AAAA,EACT,CAAC,EACA,KAAK,EAAE;AACZ;AAQO,MAAM,wBAAwB,CAAC,UAA0B,aAAa,OAAO,EAAE,WAAW,IAAI,CAAC;AAQ/F,MAAM,wBAAwB,CAAC,UAA0B,aAAa,OAAO,EAAE,WAAW,IAAI,CAAC;",
|
|
6
|
-
"names": []
|
|
7
|
-
}
|
|
@@ -1,7 +0,0 @@
|
|
|
1
|
-
{
|
|
2
|
-
"version": 3,
|
|
3
|
-
"sources": ["../../../src/httpsnippet-lite/helpers/headers.ts"],
|
|
4
|
-
"sourcesContent": ["type Headers<T> = Record<string, T>\n\n/**\n * Given a headers object retrieve a specific header out of it via a case-insensitive key.\n */\nexport const getHeaderName = <T>(headers: Headers<T>, name: string): string | undefined =>\n Object.keys(headers).find((header) => header.toLowerCase() === name.toLowerCase())\n\n/**\n * Given a headers object retrieve the contents of a header out of it via a case-insensitive key.\n */\nexport const getHeader = <T>(headers: Headers<T>, name: string): T => {\n const headerName = getHeaderName(headers, name)\n if (!headerName) {\n return undefined as T\n }\n return headers[headerName] as T\n}\n/**\n * Determine if a given case-insensitive header exists within a header object.\n */\nexport const hasHeader = <T>(headers: Headers<T>, name: string): boolean => Boolean(getHeaderName(headers, name))\n"],
|
|
5
|
-
"mappings": "AAKO,MAAM,gBAAgB,CAAI,SAAqB,SACpD,OAAO,KAAK,OAAO,EAAE,KAAK,CAAC,WAAW,OAAO,YAAY,MAAM,KAAK,YAAY,CAAC;AAK5E,MAAM,YAAY,CAAI,SAAqB,SAAoB;AACpE,QAAM,aAAa,cAAc,SAAS,IAAI;AAC9C,MAAI,CAAC,YAAY;AACf,WAAO;AAAA,EACT;AACA,SAAO,QAAQ,UAAU;AAC3B;AAIO,MAAM,YAAY,CAAI,SAAqB,SAA0B,QAAQ,cAAc,SAAS,IAAI,CAAC;",
|
|
6
|
-
"names": []
|
|
7
|
-
}
|
|
@@ -1,7 +0,0 @@
|
|
|
1
|
-
{
|
|
2
|
-
"version": 3,
|
|
3
|
-
"sources": ["../../../src/httpsnippet-lite/helpers/shell.ts"],
|
|
4
|
-
"sourcesContent": ["/**\n * Use 'strong quoting' using single quotes so that we only need to deal with nested single quote characters.\n * see: http://wiki.bash-hackers.org/syntax/quoting#strong_quoting\n */\nexport const shellQuote = (value = ''): string => {\n const safe = /^[a-z0-9-_/.@%^=:]+$/i\n const isShellSafe = safe.test(value)\n if (isShellSafe) {\n return value\n }\n // if the value is not shell safe, then quote it\n return `'${value.replace(/'/g, \"'\\\\''\")}'`\n}\nexport const shellEscape = (value: string): string => value.replace(/\\r/g, '\\\\r').replace(/\\n/g, '\\\\n')\n"],
|
|
5
|
-
"mappings": "AAIO,MAAM,aAAa,CAAC,QAAQ,OAAe;AAChD,QAAM,OAAO;AACb,QAAM,cAAc,KAAK,KAAK,KAAK;AACnC,MAAI,aAAa;AACf,WAAO;AAAA,EACT;AAEA,SAAO,IAAI,MAAM,QAAQ,MAAM,OAAO,CAAC;AACzC;AACO,MAAM,cAAc,CAAC,UAA0B,MAAM,QAAQ,OAAO,KAAK,EAAE,QAAQ,OAAO,KAAK;",
|
|
6
|
-
"names": []
|
|
7
|
-
}
|
|
@@ -1,7 +0,0 @@
|
|
|
1
|
-
{
|
|
2
|
-
"version": 3,
|
|
3
|
-
"sources": ["../../../src/httpsnippet-lite/helpers/url.ts"],
|
|
4
|
-
"sourcesContent": ["export class ExtendedURL extends URL {\n get path() {\n return this.pathname + this.search\n }\n}\n"],
|
|
5
|
-
"mappings": "AAAO,MAAM,oBAAoB,IAAI;AAAA,EACnC,IAAI,OAAO;AACT,WAAO,KAAK,WAAW,KAAK;AAAA,EAC9B;AACF;",
|
|
6
|
-
"names": []
|
|
7
|
-
}
|
|
@@ -1,7 +0,0 @@
|
|
|
1
|
-
{
|
|
2
|
-
"version": 3,
|
|
3
|
-
"sources": ["../../../../../src/httpsnippet-lite/targets/c/libcurl/client.ts"],
|
|
4
|
-
"sourcesContent": ["import { CodeBuilder } from '@/httpsnippet-lite/helpers/code-builder'\nimport { escapeForDoubleQuotes } from '@/httpsnippet-lite/helpers/escape'\nimport type { Client } from '@/httpsnippet-lite/targets/target'\nimport { createSearchParams } from '@/libs/http'\n\nexport const libcurl: Client = {\n info: {\n key: 'libcurl',\n title: 'Libcurl',\n link: 'http://curl.haxx.se/libcurl',\n description: 'Simple REST and HTTP API Client for C',\n },\n convert: ({ method, fullUrl, headersObj, allHeaders, postData }) => {\n const { push, blank, join } = new CodeBuilder({ indent: ' ' })\n push('CURL *hnd = curl_easy_init();')\n blank()\n push(`curl_easy_setopt(hnd, CURLOPT_CUSTOMREQUEST, \"${method.toUpperCase()}\");`)\n push(`curl_easy_setopt(hnd, CURLOPT_URL, \"${fullUrl}\");`)\n // Add headers, including the cookies\n const headers = Object.keys(headersObj)\n // construct headers\n if (headers.length) {\n blank()\n push('struct curl_slist *headers = NULL;')\n headers.forEach((header) => {\n // See https://curl.se/libcurl/c/httpcustomheader.html for syntax\n if (headersObj[header]) {\n push(\n `headers = curl_slist_append(headers, \"${header}: ${escapeForDoubleQuotes(headersObj[header] as string)}\");`,\n )\n } else {\n push(`headers = curl_slist_append(headers, \"${header};\");`)\n }\n })\n push('curl_easy_setopt(hnd, CURLOPT_HTTPHEADER, headers);')\n }\n // construct cookies\n if (allHeaders.cookie) {\n blank()\n push(`curl_easy_setopt(hnd, CURLOPT_COOKIE, \"${allHeaders.cookie}\");`)\n }\n if (postData !== null && postData !== void 0) {\n blank()\n if (postData.text) {\n push(`curl_easy_setopt(hnd, CURLOPT_POSTFIELDS, ${JSON.stringify(postData.text)});`)\n } else if (postData.mimeType === 'application/x-www-form-urlencoded' && postData.params) {\n push(`curl_easy_setopt(hnd, CURLOPT_POSTFIELDS, \"${createSearchParams(postData.params as never).toString()}\");`)\n } else if (postData.mimeType === 'multipart/form-data' && postData.params) {\n push('curl_mime *mime = curl_mime_init(hnd);')\n postData.params.forEach((param) => {\n blank()\n push('{')\n push('curl_mimepart *part = curl_mime_addpart(mime);', 1)\n if (param.name) {\n push(`curl_mime_name(part, \"${param.name}\");`, 1)\n }\n if (param.fileName) {\n push(`curl_mime_filedata(part, \"${param.fileName}\");`, 1)\n } else if (param.value) {\n push(`curl_mime_data(part, \"${escapeForDoubleQuotes(param.value)}\", CURL_ZERO_TERMINATED);`, 1)\n }\n push('}')\n })\n blank()\n push('curl_easy_setopt(hnd, CURLOPT_MIMEPOST, mime);')\n }\n }\n blank()\n push('CURLcode ret = curl_easy_perform(hnd);')\n return join()\n },\n}\n"],
|
|
5
|
-
"mappings": "AAAA,SAAS,mBAAmB;AAC5B,SAAS,6BAA6B;AAEtC,SAAS,0BAA0B;AAE5B,MAAM,UAAkB;AAAA,EAC7B,MAAM;AAAA,IACJ,KAAK;AAAA,IACL,OAAO;AAAA,IACP,MAAM;AAAA,IACN,aAAa;AAAA,EACf;AAAA,EACA,SAAS,CAAC,EAAE,QAAQ,SAAS,YAAY,YAAY,SAAS,MAAM;AAClE,UAAM,EAAE,MAAM,OAAO,KAAK,IAAI,IAAI,YAAY,EAAE,QAAQ,KAAK,CAAC;AAC9D,SAAK,+BAA+B;AACpC,UAAM;AACN,SAAK,iDAAiD,OAAO,YAAY,CAAC,KAAK;AAC/E,SAAK,uCAAuC,OAAO,KAAK;AAExD,UAAM,UAAU,OAAO,KAAK,UAAU;AAEtC,QAAI,QAAQ,QAAQ;AAClB,YAAM;AACN,WAAK,oCAAoC;AACzC,cAAQ,QAAQ,CAAC,WAAW;AAE1B,YAAI,WAAW,MAAM,GAAG;AACtB;AAAA,YACE,yCAAyC,MAAM,KAAK,sBAAsB,WAAW,MAAM,CAAW,CAAC;AAAA,UACzG;AAAA,QACF,OAAO;AACL,eAAK,yCAAyC,MAAM,MAAM;AAAA,QAC5D;AAAA,MACF,CAAC;AACD,WAAK,qDAAqD;AAAA,IAC5D;AAEA,QAAI,WAAW,QAAQ;AACrB,YAAM;AACN,WAAK,0CAA0C,WAAW,MAAM,KAAK;AAAA,IACvE;AACA,QAAI,aAAa,QAAQ,aAAa,QAAQ;AAC5C,YAAM;AACN,UAAI,SAAS,MAAM;AACjB,aAAK,6CAA6C,KAAK,UAAU,SAAS,IAAI,CAAC,IAAI;AAAA,MACrF,WAAW,SAAS,aAAa,uCAAuC,SAAS,QAAQ;AACvF,aAAK,8CAA8C,mBAAmB,SAAS,MAAe,EAAE,SAAS,CAAC,KAAK;AAAA,MACjH,WAAW,SAAS,aAAa,yBAAyB,SAAS,QAAQ;AACzE,aAAK,wCAAwC;AAC7C,iBAAS,OAAO,QAAQ,CAAC,UAAU;AACjC,gBAAM;AACN,eAAK,GAAG;AACR,eAAK,kDAAkD,CAAC;AACxD,cAAI,MAAM,MAAM;AACd,iBAAK,yBAAyB,MAAM,IAAI,OAAO,CAAC;AAAA,UAClD;AACA,cAAI,MAAM,UAAU;AAClB,iBAAK,6BAA6B,MAAM,QAAQ,OAAO,CAAC;AAAA,UAC1D,WAAW,MAAM,OAAO;AACtB,iBAAK,yBAAyB,sBAAsB,MAAM,KAAK,CAAC,6BAA6B,CAAC;AAAA,UAChG;AACA,eAAK,GAAG;AAAA,QACV,CAAC;AACD,cAAM;AACN,aAAK,gDAAgD;AAAA,MACvD;AAAA,IACF;AACA,UAAM;AACN,SAAK,wCAAwC;AAC7C,WAAO,KAAK;AAAA,EACd;AACF;",
|
|
6
|
-
"names": []
|
|
7
|
-
}
|
|
@@ -1,7 +0,0 @@
|
|
|
1
|
-
{
|
|
2
|
-
"version": 3,
|
|
3
|
-
"sources": ["../../../../../src/httpsnippet-lite/targets/clojure/clj_http/client.ts"],
|
|
4
|
-
"sourcesContent": ["/**\n * @description\n * HTTP code snippet generator for Clojure using clj-http.\n *\n * @author\n * @tggreene\n *\n * for any questions or issues regarding the generated code snippet, please open an issue mentioning the author.\n */\n\nimport { CodeBuilder } from '@/httpsnippet-lite/helpers/code-builder'\nimport { getHeader, getHeaderName } from '@/httpsnippet-lite/helpers/headers'\nimport type { ReducedHelperObject } from '@/httpsnippet-lite/helpers/reducer'\nimport type { Client } from '@/httpsnippet-lite/targets/target'\n\nclass Keyword {\n name: string\n toString: () => string\n\n constructor(name: string) {\n this.name = ''\n this.toString = () => `:${this.name}`\n this.name = name\n }\n}\nclass File {\n path: string\n toString: () => string\n\n constructor(path: string) {\n this.path = ''\n this.toString = () => `(clojure.java.io/file \"${this.path}\")`\n this.path = path\n }\n}\nconst jsType = (input: unknown): string | null => {\n if (input === undefined) {\n return null\n }\n if (input === null) {\n return 'null'\n }\n return input.constructor.name.toLowerCase()\n}\nconst objEmpty = (input: unknown): boolean => {\n if (jsType(input) === 'object') {\n return Object.keys(input as {}).length === 0\n }\n return false\n}\nconst filterEmpty = (input: Record<string, unknown>) => {\n Object.keys(input)\n .filter((x) => objEmpty(input[x]))\n .forEach((x) => {\n delete input[x]\n })\n return input\n}\nconst padBlock = (padSize: number, input: string): string => {\n const padding = ' '.repeat(padSize)\n return input.replace(/\\n/g, `\\n${padding}`)\n}\nconst jsToEdn = (js: any) => {\n switch (jsType(js)) {\n case 'string':\n return `\"${js.replace(/\"/g, '\\\\\"')}\"`\n case 'file':\n return js.toString()\n case 'keyword':\n return js.toString()\n case 'null':\n return 'nil'\n case 'regexp':\n return `#\"${js.source}\"`\n case 'object': {\n // simple vertical format\n const obj = Object.keys(js)\n .reduce((accumulator, key) => {\n const val = padBlock(key.length + 2, jsToEdn(js[key]))\n return `${accumulator}:${key} ${val}\\n `\n }, '')\n .trim()\n return `{${padBlock(1, obj)}}`\n }\n case 'array': {\n // simple horizontal format\n const arr = js.reduce((accumulator: string, value: any) => `${accumulator} ${jsToEdn(value)}`, '').trim()\n return `[${padBlock(1, arr)}]`\n }\n default: // 'number' 'boolean'\n return js.toString()\n }\n}\nexport const clj_http: Client = {\n info: {\n key: 'clj_http',\n title: 'clj-http',\n link: 'https://github.com/dakrone/clj-http',\n description: 'An idiomatic clojure http client wrapping the apache client.',\n },\n convert: ({ queryObj, method, postData, url, allHeaders }, options) => {\n const { push, join } = new CodeBuilder({\n indent: options === null || options === void 0 ? void 0 : options.indent,\n })\n const methods = ['get', 'post', 'put', 'delete', 'patch', 'head', 'options']\n method = method.toLowerCase()\n if (!methods.includes(method)) {\n push('Method not supported')\n return join()\n }\n const params: {\n 'headers': ReducedHelperObject\n 'query-params': ReducedHelperObject\n [key: string]: unknown\n } = {\n 'headers': allHeaders,\n 'query-params': queryObj,\n }\n\n // Remove query string from URL if queryObj has parameters\n if (queryObj && Object.keys(queryObj).length > 0) {\n url = url.split('?')[0]!\n }\n\n switch (postData === null || postData === void 0 ? void 0 : postData.mimeType) {\n case 'application/json':\n {\n params['content-type'] = new Keyword('json')\n params['form-params'] = postData!.jsonObj\n const header = getHeaderName(params.headers, 'content-type')\n if (header) {\n delete params.headers[header]\n }\n }\n break\n case 'application/x-www-form-urlencoded':\n {\n params['form-params'] = postData!.paramsObj\n const header = getHeaderName(params.headers, 'content-type')\n if (header) {\n delete params.headers[header]\n }\n }\n break\n case 'text/plain':\n {\n params.body = postData!.text\n const header = getHeaderName(params.headers, 'content-type')\n if (header) {\n delete params.headers[header]\n }\n }\n break\n case 'multipart/form-data': {\n if (postData?.params) {\n params.multipart = postData.params.map((param) => {\n if (param.fileName && !param.value) {\n return {\n name: param.name,\n content: new File(param.fileName),\n }\n }\n return {\n name: param.name,\n content: param.value,\n }\n })\n const header = getHeaderName(params.headers as Record<string, unknown>, 'content-type')\n if (header) {\n delete params.headers[header]\n }\n }\n break\n }\n }\n switch (getHeader(params.headers as Record<string, unknown>, 'accept')) {\n case 'application/json':\n {\n params.accept = new Keyword('json')\n const header = getHeaderName(params.headers as Record<string, unknown>, 'accept')\n if (header) {\n delete params.headers[header]\n }\n }\n break\n }\n push(\"(require '[clj-http.client :as client])\\n\")\n if (objEmpty(filterEmpty(params))) {\n push(`(client/${method} \"${url}\")`)\n } else {\n const padding = 11 + method.length + url.length\n const formattedParams = padBlock(padding, jsToEdn(filterEmpty(params)))\n push(`(client/${method} \"${url}\" ${formattedParams})`)\n }\n return join()\n },\n}\n"],
|
|
5
|
-
"mappings": "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",
|
|
6
|
-
"names": []
|
|
7
|
-
}
|
|
@@ -1,7 +0,0 @@
|
|
|
1
|
-
{
|
|
2
|
-
"version": 3,
|
|
3
|
-
"sources": ["../../../../../src/httpsnippet-lite/targets/csharp/restsharp/client.ts"],
|
|
4
|
-
"sourcesContent": ["import { CodeBuilder } from '@/httpsnippet-lite/helpers/code-builder'\nimport { escapeForDoubleQuotes } from '@/httpsnippet-lite/helpers/escape'\nimport { getHeader } from '@/httpsnippet-lite/helpers/headers'\nimport type { Client } from '@/httpsnippet-lite/targets/target'\n\nexport const restsharp: Client = {\n info: {\n key: 'restsharp',\n title: 'RestSharp',\n link: 'http://restsharp.org/',\n description: 'Simple REST and HTTP API Client for .NET',\n },\n convert: ({ allHeaders, method, fullUrl, headersObj, cookies, postData }) => {\n const { push, join } = new CodeBuilder()\n const isSupportedMethod = ['GET', 'POST', 'PUT', 'DELETE', 'PATCH', 'HEAD', 'OPTIONS'].includes(\n method.toUpperCase(),\n )\n if (!isSupportedMethod) {\n return 'Method not supported'\n }\n push(`var client = new RestClient(\"${fullUrl}\");`)\n push(`var request = new RestRequest(Method.${method.toUpperCase()});`)\n // Add headers, including the cookies\n Object.keys(headersObj).forEach((key) => {\n push(`request.AddHeader(\"${key}\", \"${escapeForDoubleQuotes(headersObj[key] as string)}\");`)\n })\n cookies === null || cookies === void 0\n ? void 0\n : cookies.forEach(({ name, value }) => {\n push(`request.AddCookie(\"${name}\", \"${value}\");`)\n })\n if (postData === null || postData === void 0 ? void 0 : postData.text) {\n const header = getHeader(allHeaders, 'content-type')\n const text = JSON.stringify(postData!.text)\n push(`request.AddParameter(\"${header}\", ${text}, ParameterType.RequestBody);`)\n }\n push('IRestResponse response = client.Execute(request);')\n return join()\n },\n}\n"],
|
|
5
|
-
"mappings": "AAAA,SAAS,mBAAmB;AAC5B,SAAS,6BAA6B;AACtC,SAAS,iBAAiB;AAGnB,MAAM,YAAoB;AAAA,EAC/B,MAAM;AAAA,IACJ,KAAK;AAAA,IACL,OAAO;AAAA,IACP,MAAM;AAAA,IACN,aAAa;AAAA,EACf;AAAA,EACA,SAAS,CAAC,EAAE,YAAY,QAAQ,SAAS,YAAY,SAAS,SAAS,MAAM;AAC3E,UAAM,EAAE,MAAM,KAAK,IAAI,IAAI,YAAY;AACvC,UAAM,oBAAoB,CAAC,OAAO,QAAQ,OAAO,UAAU,SAAS,QAAQ,SAAS,EAAE;AAAA,MACrF,OAAO,YAAY;AAAA,IACrB;AACA,QAAI,CAAC,mBAAmB;AACtB,aAAO;AAAA,IACT;AACA,SAAK,gCAAgC,OAAO,KAAK;AACjD,SAAK,wCAAwC,OAAO,YAAY,CAAC,IAAI;AAErE,WAAO,KAAK,UAAU,EAAE,QAAQ,CAAC,QAAQ;AACvC,WAAK,sBAAsB,GAAG,OAAO,sBAAsB,WAAW,GAAG,CAAW,CAAC,KAAK;AAAA,IAC5F,CAAC;AACD,gBAAY,QAAQ,YAAY,SAC5B,SACA,QAAQ,QAAQ,CAAC,EAAE,MAAM,MAAM,MAAM;AACnC,WAAK,sBAAsB,IAAI,OAAO,KAAK,KAAK;AAAA,IAClD,CAAC;AACL,QAAI,aAAa,QAAQ,aAAa,SAAS,SAAS,SAAS,MAAM;AACrE,YAAM,SAAS,UAAU,YAAY,cAAc;AACnD,YAAM,OAAO,KAAK,UAAU,SAAU,IAAI;AAC1C,WAAK,yBAAyB,MAAM,MAAM,IAAI,+BAA+B;AAAA,IAC/E;AACA,SAAK,mDAAmD;AACxD,WAAO,KAAK;AAAA,EACd;AACF;",
|
|
6
|
-
"names": []
|
|
7
|
-
}
|
|
@@ -1,7 +0,0 @@
|
|
|
1
|
-
{
|
|
2
|
-
"version": 3,
|
|
3
|
-
"sources": ["../../../../../src/httpsnippet-lite/targets/go/native/client.ts"],
|
|
4
|
-
"sourcesContent": ["/**\n * @description\n * HTTP code snippet generator for native Go.\n *\n * @author\n * @montanaflynn\n *\n * for any questions or issues regarding the generated code snippet, please open an issue mentioning the author.\n */\n\nimport { CodeBuilder } from '@/httpsnippet-lite/helpers/code-builder'\nimport { escapeForDoubleQuotes } from '@/httpsnippet-lite/helpers/escape'\nimport type { Client } from '@/httpsnippet-lite/targets/target'\n\nexport const native: Client = {\n info: {\n key: 'native',\n title: 'NewRequest',\n link: 'http://golang.org/pkg/net/http/#NewRequest',\n description: 'Golang HTTP client request',\n },\n convert: ({ postData, method, allHeaders, fullUrl }, options = {}) => {\n const { blank, push, join, addPostProcessor } = new CodeBuilder({ indent: '\\t' })\n const {\n showBoilerplate = true,\n checkErrors = false,\n printBody = true,\n timeout = -1,\n insecureSkipVerify = false,\n } = options\n const errorPlaceholder = checkErrors ? 'err' : '_'\n const indent = showBoilerplate ? 1 : 0\n const errorCheck = () => {\n if (checkErrors) {\n push('if err != nil {', indent)\n push('panic(err)', indent + 1)\n push('}', indent)\n }\n }\n // Create boilerplate\n const imports = new Set()\n if (showBoilerplate) {\n push('package main')\n blank()\n\n push('import ()')\n addPostProcessor((code) => {\n const importArray = [...imports]\n importArray.sort()\n const importBlock = importArray.map((line) => `\\t\"${line}\"`).join('\\n')\n return code.replace(/import \\(\\)/, `import (\\n${importBlock}\\n)`)\n })\n\n imports.add('fmt')\n imports.add('net/http')\n\n blank()\n push('func main() {')\n }\n // Create an insecure transport for the client\n if (insecureSkipVerify) {\n imports.add('crypto/tls')\n push('insecureTransport := http.DefaultTransport.(*http.Transport).Clone()', indent)\n push('insecureTransport.TLSClientConfig = &tls.Config{InsecureSkipVerify: true}', indent)\n }\n // Create client\n const hasTimeout = timeout > 0\n const hasClient = hasTimeout || insecureSkipVerify\n const client = hasClient ? 'client' : 'http.DefaultClient'\n if (hasClient) {\n push('client := http.Client{', indent)\n if (hasTimeout) {\n imports.add('time')\n push(`Timeout: time.Duration(${timeout} * time.Second),`, indent + 1)\n }\n if (insecureSkipVerify) {\n push('Transport: insecureTransport,', indent + 1)\n }\n push('}', indent)\n blank()\n }\n push(`url := \"${fullUrl}\"`, indent)\n blank()\n // If we have body content or not create the var and reader or nil\n if (postData !== null && postData !== void 0 && (postData.params || postData.text)) {\n if (postData.mimeType === 'application/x-www-form-urlencoded' && postData.params) {\n imports.add('net/url')\n imports.add('strings')\n\n push('postData := url.Values{}', indent)\n postData.params.forEach((param) => {\n push(`postData.Set(\"${param.name}\", \"${escapeForDoubleQuotes(param.value as string)}\")`, indent)\n })\n blank()\n push(\n `req, ${errorPlaceholder} := http.NewRequest(\"${method}\", url, strings.NewReader(postData.Encode()))`,\n indent,\n )\n } else if (postData.mimeType === 'multipart/form-data' && postData.params) {\n imports.add('bytes')\n imports.add('mime/multipart')\n\n push('payload := &bytes.Buffer{}', indent)\n push('writer := multipart.NewWriter(payload)', indent)\n postData.params.forEach((param) => {\n blank()\n if (param.fileName) {\n push(`part, ${errorPlaceholder} := writer.CreateFormFile(\"${param.name}\", \"${param.fileName}\")`, indent)\n errorCheck()\n blank()\n push(`f, ${errorPlaceholder} := os.Open(\"${param.fileName}\")`, indent)\n errorCheck()\n push('defer f.Close()', indent)\n blank()\n push(`_, ${errorPlaceholder} = io.Copy(part, f)`, indent)\n errorCheck()\n } else {\n push(\n `${errorPlaceholder} = writer.WriteField(\"${param.name}\", \"${escapeForDoubleQuotes(param.value as string)}\")`,\n indent,\n )\n errorCheck()\n }\n })\n push('writer.Close()', indent)\n blank()\n push(`req, ${errorPlaceholder} := http.NewRequest(\"${method}\", url, payload)`, indent)\n } else {\n imports.add('strings')\n\n push(`payload := strings.NewReader(${JSON.stringify(postData.text)})`, indent)\n blank()\n push(`req, ${errorPlaceholder} := http.NewRequest(\"${method}\", url, payload)`, indent)\n }\n } else {\n push(`req, ${errorPlaceholder} := http.NewRequest(\"${method}\", url, nil)`, indent)\n }\n errorCheck()\n blank()\n // Add headers\n if (postData !== null && postData !== void 0 && postData.mimeType === 'multipart/form-data' && postData.params) {\n push(`req.Header.Set(\"Content-Type\", writer.FormDataContentType())`, indent)\n }\n if (Object.keys(allHeaders).length) {\n Object.keys(allHeaders).forEach((key) => {\n push(`req.Header.Add(\"${key}\", \"${escapeForDoubleQuotes(allHeaders[key] as string)}\")`, indent)\n })\n blank()\n }\n // Make request\n push(`res, ${errorPlaceholder} := ${client}.Do(req)`, indent)\n errorCheck()\n // Get Body\n if (printBody) {\n imports.add('io')\n blank()\n push('defer res.Body.Close()', indent)\n push(`body, ${errorPlaceholder} := io.ReadAll(res.Body)`, indent)\n errorCheck()\n }\n // Print it\n blank()\n push('fmt.Println(res)', indent)\n if (printBody) {\n push('fmt.Println(string(body))', indent)\n }\n // End main block\n if (showBoilerplate) {\n blank()\n push('}')\n }\n return join()\n },\n}\n"],
|
|
5
|
-
"mappings": "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",
|
|
6
|
-
"names": []
|
|
7
|
-
}
|
|
@@ -1,7 +0,0 @@
|
|
|
1
|
-
{
|
|
2
|
-
"version": 3,
|
|
3
|
-
"sources": ["../../../../../src/httpsnippet-lite/targets/java/asynchttp/client.ts"],
|
|
4
|
-
"sourcesContent": ["/**\n * @description\n * Asynchronous Http and WebSocket Client library for Java\n *\n * @author\n * @windard\n *\n * for any questions or issues regarding the generated code snippet, please open an issue mentioning the author.\n */\nimport type { Client } from '@/httpsnippet-lite/targets/target.js'\n\nimport { CodeBuilder } from '../../../helpers/code-builder.js'\nimport { escapeForDoubleQuotes } from '../../../helpers/escape.js'\n\nexport const asynchttp: Client = {\n info: {\n key: 'asynchttp',\n title: 'AsyncHttp',\n link: 'https://github.com/AsyncHttpClient/async-http-client',\n description: 'Asynchronous Http and WebSocket Client library for Java',\n },\n convert: ({ method, allHeaders, postData, fullUrl }, options) => {\n const opts = {\n indent: ' ',\n ...options,\n }\n const { blank, push, join } = new CodeBuilder({ indent: opts.indent })\n push('AsyncHttpClient client = new DefaultAsyncHttpClient();')\n push(`client.prepare(\"${method.toUpperCase()}\", \"${fullUrl}\")`)\n // Add headers, including the cookies\n Object.keys(allHeaders).forEach((key) => {\n push(`.setHeader(\"${key}\", \"${escapeForDoubleQuotes(allHeaders[key] as string)}\")`, 1)\n })\n if (postData === null || postData === void 0 ? void 0 : postData.text) {\n push(`.setBody(${JSON.stringify(postData!.text)})`, 1)\n }\n push('.execute()', 1)\n push('.toCompletableFuture()', 1)\n push('.thenAccept(System.out::println)', 1)\n push('.join();', 1)\n blank()\n push('client.close();')\n return join()\n },\n}\n"],
|
|
5
|
-
"mappings": "AAWA,SAAS,mBAAmB;AAC5B,SAAS,6BAA6B;AAE/B,MAAM,YAAoB;AAAA,EAC/B,MAAM;AAAA,IACJ,KAAK;AAAA,IACL,OAAO;AAAA,IACP,MAAM;AAAA,IACN,aAAa;AAAA,EACf;AAAA,EACA,SAAS,CAAC,EAAE,QAAQ,YAAY,UAAU,QAAQ,GAAG,YAAY;AAC/D,UAAM,OAAO;AAAA,MACX,QAAQ;AAAA,MACR,GAAG;AAAA,IACL;AACA,UAAM,EAAE,OAAO,MAAM,KAAK,IAAI,IAAI,YAAY,EAAE,QAAQ,KAAK,OAAO,CAAC;AACrE,SAAK,wDAAwD;AAC7D,SAAK,mBAAmB,OAAO,YAAY,CAAC,OAAO,OAAO,IAAI;AAE9D,WAAO,KAAK,UAAU,EAAE,QAAQ,CAAC,QAAQ;AACvC,WAAK,eAAe,GAAG,OAAO,sBAAsB,WAAW,GAAG,CAAW,CAAC,MAAM,CAAC;AAAA,IACvF,CAAC;AACD,QAAI,aAAa,QAAQ,aAAa,SAAS,SAAS,SAAS,MAAM;AACrE,WAAK,YAAY,KAAK,UAAU,SAAU,IAAI,CAAC,KAAK,CAAC;AAAA,IACvD;AACA,SAAK,cAAc,CAAC;AACpB,SAAK,0BAA0B,CAAC;AAChC,SAAK,oCAAoC,CAAC;AAC1C,SAAK,YAAY,CAAC;AAClB,UAAM;AACN,SAAK,iBAAiB;AACtB,WAAO,KAAK;AAAA,EACd;AACF;",
|
|
6
|
-
"names": []
|
|
7
|
-
}
|
|
@@ -1,7 +0,0 @@
|
|
|
1
|
-
{
|
|
2
|
-
"version": 3,
|
|
3
|
-
"sources": ["../../../../../src/httpsnippet-lite/targets/java/nethttp/client.ts"],
|
|
4
|
-
"sourcesContent": ["/**\n * @description\n * HTTP code snippet generator for Java using java.net.http.\n *\n * @author\n * @wtetsu\n *\n * for any questions or issues regarding the generated code snippet, please open an issue mentioning the author.\n */\nimport { CodeBuilder } from '@/httpsnippet-lite/helpers/code-builder'\nimport { escapeForDoubleQuotes } from '@/httpsnippet-lite/helpers/escape'\nimport type { Client } from '@/httpsnippet-lite/targets/target.js'\n\nexport const nethttp: Client = {\n info: {\n key: 'nethttp',\n title: 'java.net.http',\n link: 'https://openjdk.java.net/groups/net/httpclient/intro.html',\n description: 'Java Standardized HTTP Client API',\n },\n convert: ({ allHeaders, fullUrl, method, postData }, options) => {\n const opts = {\n indent: ' ',\n ...options,\n }\n const { push, join } = new CodeBuilder({ indent: opts.indent })\n push('HttpRequest request = HttpRequest.newBuilder()')\n push(`.uri(URI.create(\"${fullUrl}\"))`, 2)\n Object.keys(allHeaders).forEach((key) => {\n push(`.header(\"${key}\", \"${escapeForDoubleQuotes(allHeaders[key] as string)}\")`, 2)\n })\n if (postData === null || postData === void 0 ? void 0 : postData.text) {\n push(\n `.method(\"${method.toUpperCase()}\", HttpRequest.BodyPublishers.ofString(${JSON.stringify(postData!.text)}))`,\n 2,\n )\n } else {\n push(`.method(\"${method.toUpperCase()}\", HttpRequest.BodyPublishers.noBody())`, 2)\n }\n push('.build();', 2)\n push(\n 'HttpResponse<String> response = HttpClient.newHttpClient().send(request, HttpResponse.BodyHandlers.ofString());',\n )\n push('System.out.println(response.body());')\n return join()\n },\n}\n"],
|
|
5
|
-
"mappings": "AASA,SAAS,mBAAmB;AAC5B,SAAS,6BAA6B;AAG/B,MAAM,UAAkB;AAAA,EAC7B,MAAM;AAAA,IACJ,KAAK;AAAA,IACL,OAAO;AAAA,IACP,MAAM;AAAA,IACN,aAAa;AAAA,EACf;AAAA,EACA,SAAS,CAAC,EAAE,YAAY,SAAS,QAAQ,SAAS,GAAG,YAAY;AAC/D,UAAM,OAAO;AAAA,MACX,QAAQ;AAAA,MACR,GAAG;AAAA,IACL;AACA,UAAM,EAAE,MAAM,KAAK,IAAI,IAAI,YAAY,EAAE,QAAQ,KAAK,OAAO,CAAC;AAC9D,SAAK,gDAAgD;AACrD,SAAK,oBAAoB,OAAO,OAAO,CAAC;AACxC,WAAO,KAAK,UAAU,EAAE,QAAQ,CAAC,QAAQ;AACvC,WAAK,YAAY,GAAG,OAAO,sBAAsB,WAAW,GAAG,CAAW,CAAC,MAAM,CAAC;AAAA,IACpF,CAAC;AACD,QAAI,aAAa,QAAQ,aAAa,SAAS,SAAS,SAAS,MAAM;AACrE;AAAA,QACE,YAAY,OAAO,YAAY,CAAC,0CAA0C,KAAK,UAAU,SAAU,IAAI,CAAC;AAAA,QACxG;AAAA,MACF;AAAA,IACF,OAAO;AACL,WAAK,YAAY,OAAO,YAAY,CAAC,2CAA2C,CAAC;AAAA,IACnF;AACA,SAAK,aAAa,CAAC;AACnB;AAAA,MACE;AAAA,IACF;AACA,SAAK,sCAAsC;AAC3C,WAAO,KAAK;AAAA,EACd;AACF;",
|
|
6
|
-
"names": []
|
|
7
|
-
}
|
|
@@ -1,7 +0,0 @@
|
|
|
1
|
-
{
|
|
2
|
-
"version": 3,
|
|
3
|
-
"sources": ["../../../../../src/httpsnippet-lite/targets/java/okhttp/client.ts"],
|
|
4
|
-
"sourcesContent": ["/**\n * @description\n * HTTP code snippet generator for Java using OkHttp.\n *\n * @author\n * @shashiranjan84\n *\n * for any questions or issues regarding the generated code snippet, please open an issue mentioning the author.\n */\n\nimport { CodeBuilder } from '@/httpsnippet-lite/helpers/code-builder'\nimport { escapeForDoubleQuotes } from '@/httpsnippet-lite/helpers/escape'\nimport type { Client } from '@/httpsnippet-lite/targets/target'\n\nexport const okhttp: Client = {\n info: {\n key: 'okhttp',\n title: 'OkHttp',\n link: 'http://square.github.io/okhttp/',\n description: 'An HTTP Request Client Library',\n },\n convert: ({ postData, method, fullUrl, allHeaders }, options) => {\n const opts = {\n indent: ' ',\n ...options,\n }\n const { push, blank, join } = new CodeBuilder({ indent: opts.indent })\n const methods = ['GET', 'POST', 'PUT', 'DELETE', 'PATCH', 'HEAD']\n const methodsWithBody = ['POST', 'PUT', 'DELETE', 'PATCH']\n push('OkHttpClient client = new OkHttpClient();')\n blank()\n if (postData !== null && postData !== void 0) {\n if (postData.mimeType === 'application/x-www-form-urlencoded' && postData.params) {\n push('FormBody formBody = new FormBody.Builder()')\n postData.params.forEach((param) => {\n push(`.addEncoded(\"${param.name}\", \"${param.value}\")`, 1)\n })\n push('.build();', 1)\n blank()\n } else if (postData.mimeType === 'multipart/form-data' && postData.params) {\n push('MultipartBody body = new MultipartBody.Builder()')\n push('.setType(MultipartBody.FORM)', 1)\n postData.params.forEach((param) => {\n if (param.fileName !== undefined) {\n push(\n `.addFormDataPart(\"${param.name}\", \"${param.fileName}\", RequestBody.create(MediaType.parse(\"application/octet-stream\"), new File(\"${param.fileName}\")))`,\n 1,\n )\n } else if (param.value !== undefined) {\n push(`.addFormDataPart(\"${param.name}\", \"${param.value}\")`, 1)\n }\n })\n push('.build();', 1)\n blank()\n } else {\n push(`MediaType mediaType = MediaType.parse(\"${postData.mimeType}\");`)\n push(`RequestBody body = RequestBody.create(mediaType, ${JSON.stringify(postData.text)});`)\n }\n }\n push('Request request = new Request.Builder()')\n push(`.url(\"${fullUrl}\")`, 1)\n if (!methods.includes(method.toUpperCase())) {\n if (postData === null || postData === void 0 ? void 0 : postData.text) {\n push(`.method(\"${method.toUpperCase()}\", body)`, 1)\n } else {\n push(`.method(\"${method.toUpperCase()}\", null)`, 1)\n }\n } else if (methodsWithBody.includes(method.toUpperCase())) {\n if (postData === null || postData === void 0 ? void 0 : postData.text || postData.params) {\n push(`.${method.toLowerCase()}(body)`, 1)\n } else {\n push(`.${method.toLowerCase()}(null)`, 1)\n }\n } else {\n push(`.${method.toLowerCase()}()`, 1)\n }\n // Add headers, including the cookies\n Object.keys(allHeaders).forEach((key) => {\n push(`.addHeader(\"${key}\", \"${escapeForDoubleQuotes(allHeaders[key] as string)}\")`, 1)\n })\n push('.build();', 1)\n blank()\n push('Response response = client.newCall(request).execute();')\n return join()\n },\n}\n"],
|
|
5
|
-
"mappings": "AAUA,SAAS,mBAAmB;AAC5B,SAAS,6BAA6B;AAG/B,MAAM,SAAiB;AAAA,EAC5B,MAAM;AAAA,IACJ,KAAK;AAAA,IACL,OAAO;AAAA,IACP,MAAM;AAAA,IACN,aAAa;AAAA,EACf;AAAA,EACA,SAAS,CAAC,EAAE,UAAU,QAAQ,SAAS,WAAW,GAAG,YAAY;AAC/D,UAAM,OAAO;AAAA,MACX,QAAQ;AAAA,MACR,GAAG;AAAA,IACL;AACA,UAAM,EAAE,MAAM,OAAO,KAAK,IAAI,IAAI,YAAY,EAAE,QAAQ,KAAK,OAAO,CAAC;AACrE,UAAM,UAAU,CAAC,OAAO,QAAQ,OAAO,UAAU,SAAS,MAAM;AAChE,UAAM,kBAAkB,CAAC,QAAQ,OAAO,UAAU,OAAO;AACzD,SAAK,2CAA2C;AAChD,UAAM;AACN,QAAI,aAAa,QAAQ,aAAa,QAAQ;AAC5C,UAAI,SAAS,aAAa,uCAAuC,SAAS,QAAQ;AAChF,aAAK,4CAA4C;AACjD,iBAAS,OAAO,QAAQ,CAAC,UAAU;AACjC,eAAK,gBAAgB,MAAM,IAAI,OAAO,MAAM,KAAK,MAAM,CAAC;AAAA,QAC1D,CAAC;AACD,aAAK,aAAa,CAAC;AACnB,cAAM;AAAA,MACR,WAAW,SAAS,aAAa,yBAAyB,SAAS,QAAQ;AACzE,aAAK,kDAAkD;AACvD,aAAK,gCAAgC,CAAC;AACtC,iBAAS,OAAO,QAAQ,CAAC,UAAU;AACjC,cAAI,MAAM,aAAa,QAAW;AAChC;AAAA,cACE,qBAAqB,MAAM,IAAI,OAAO,MAAM,QAAQ,gFAAgF,MAAM,QAAQ;AAAA,cAClJ;AAAA,YACF;AAAA,UACF,WAAW,MAAM,UAAU,QAAW;AACpC,iBAAK,qBAAqB,MAAM,IAAI,OAAO,MAAM,KAAK,MAAM,CAAC;AAAA,UAC/D;AAAA,QACF,CAAC;AACD,aAAK,aAAa,CAAC;AACnB,cAAM;AAAA,MACR,OAAO;AACL,aAAK,0CAA0C,SAAS,QAAQ,KAAK;AACrE,aAAK,oDAAoD,KAAK,UAAU,SAAS,IAAI,CAAC,IAAI;AAAA,MAC5F;AAAA,IACF;AACA,SAAK,yCAAyC;AAC9C,SAAK,SAAS,OAAO,MAAM,CAAC;AAC5B,QAAI,CAAC,QAAQ,SAAS,OAAO,YAAY,CAAC,GAAG;AAC3C,UAAI,aAAa,QAAQ,aAAa,SAAS,SAAS,SAAS,MAAM;AACrE,aAAK,YAAY,OAAO,YAAY,CAAC,YAAY,CAAC;AAAA,MACpD,OAAO;AACL,aAAK,YAAY,OAAO,YAAY,CAAC,YAAY,CAAC;AAAA,MACpD;AAAA,IACF,WAAW,gBAAgB,SAAS,OAAO,YAAY,CAAC,GAAG;AACzD,UAAI,aAAa,QAAQ,aAAa,SAAS,SAAS,SAAS,QAAQ,SAAS,QAAQ;AACxF,aAAK,IAAI,OAAO,YAAY,CAAC,UAAU,CAAC;AAAA,MAC1C,OAAO;AACL,aAAK,IAAI,OAAO,YAAY,CAAC,UAAU,CAAC;AAAA,MAC1C;AAAA,IACF,OAAO;AACL,WAAK,IAAI,OAAO,YAAY,CAAC,MAAM,CAAC;AAAA,IACtC;AAEA,WAAO,KAAK,UAAU,EAAE,QAAQ,CAAC,QAAQ;AACvC,WAAK,eAAe,GAAG,OAAO,sBAAsB,WAAW,GAAG,CAAW,CAAC,MAAM,CAAC;AAAA,IACvF,CAAC;AACD,SAAK,aAAa,CAAC;AACnB,UAAM;AACN,SAAK,wDAAwD;AAC7D,WAAO,KAAK;AAAA,EACd;AACF;",
|
|
6
|
-
"names": []
|
|
7
|
-
}
|
|
@@ -1,7 +0,0 @@
|
|
|
1
|
-
{
|
|
2
|
-
"version": 3,
|
|
3
|
-
"sources": ["../../../../../src/httpsnippet-lite/targets/java/unirest/client.ts"],
|
|
4
|
-
"sourcesContent": ["/**\n * @description\n * HTTP code snippet generator for Java using Unirest.\n *\n * @author\n * @shashiranjan84\n *\n * for any questions or issues regarding the generated code snippet, please open an issue mentioning the author.\n */\n\nimport { CodeBuilder } from '@/httpsnippet-lite/helpers/code-builder'\nimport { escapeForDoubleQuotes } from '@/httpsnippet-lite/helpers/escape'\nimport type { Client } from '@/httpsnippet-lite/targets/target'\n\nexport const unirest: Client = {\n info: {\n key: 'unirest',\n title: 'Unirest',\n link: 'http://unirest.io/java.html',\n description: 'Lightweight HTTP Request Client Library',\n },\n convert: ({ method, allHeaders, postData, fullUrl }, options) => {\n const opts = {\n indent: ' ',\n ...options,\n }\n const { join, push } = new CodeBuilder({ indent: opts.indent })\n const methods = ['GET', 'POST', 'PUT', 'DELETE', 'PATCH', 'HEAD', 'OPTIONS']\n if (!methods.includes(method.toUpperCase())) {\n push(`HttpResponse<String> response = Unirest.customMethod(\"${method.toUpperCase()}\",\"${fullUrl}\")`)\n } else {\n push(`HttpResponse<String> response = Unirest.${method.toLowerCase()}(\"${fullUrl}\")`)\n }\n // Add headers, including the cookies\n Object.keys(allHeaders).forEach((key) => {\n push(`.header(\"${key}\", \"${escapeForDoubleQuotes(allHeaders[key] as string)}\")`, 1)\n })\n if (postData === null || postData === void 0 ? void 0 : postData.text) {\n push(`.body(${JSON.stringify(postData!.text)})`, 1)\n }\n push('.asString();', 1)\n return join()\n },\n}\n"],
|
|
5
|
-
"mappings": "AAUA,SAAS,mBAAmB;AAC5B,SAAS,6BAA6B;AAG/B,MAAM,UAAkB;AAAA,EAC7B,MAAM;AAAA,IACJ,KAAK;AAAA,IACL,OAAO;AAAA,IACP,MAAM;AAAA,IACN,aAAa;AAAA,EACf;AAAA,EACA,SAAS,CAAC,EAAE,QAAQ,YAAY,UAAU,QAAQ,GAAG,YAAY;AAC/D,UAAM,OAAO;AAAA,MACX,QAAQ;AAAA,MACR,GAAG;AAAA,IACL;AACA,UAAM,EAAE,MAAM,KAAK,IAAI,IAAI,YAAY,EAAE,QAAQ,KAAK,OAAO,CAAC;AAC9D,UAAM,UAAU,CAAC,OAAO,QAAQ,OAAO,UAAU,SAAS,QAAQ,SAAS;AAC3E,QAAI,CAAC,QAAQ,SAAS,OAAO,YAAY,CAAC,GAAG;AAC3C,WAAK,yDAAyD,OAAO,YAAY,CAAC,MAAM,OAAO,IAAI;AAAA,IACrG,OAAO;AACL,WAAK,2CAA2C,OAAO,YAAY,CAAC,KAAK,OAAO,IAAI;AAAA,IACtF;AAEA,WAAO,KAAK,UAAU,EAAE,QAAQ,CAAC,QAAQ;AACvC,WAAK,YAAY,GAAG,OAAO,sBAAsB,WAAW,GAAG,CAAW,CAAC,MAAM,CAAC;AAAA,IACpF,CAAC;AACD,QAAI,aAAa,QAAQ,aAAa,SAAS,SAAS,SAAS,MAAM;AACrE,WAAK,SAAS,KAAK,UAAU,SAAU,IAAI,CAAC,KAAK,CAAC;AAAA,IACpD;AACA,SAAK,gBAAgB,CAAC;AACtB,WAAO,KAAK;AAAA,EACd;AACF;",
|
|
6
|
-
"names": []
|
|
7
|
-
}
|
|
@@ -1,7 +0,0 @@
|
|
|
1
|
-
{
|
|
2
|
-
"version": 3,
|
|
3
|
-
"sources": ["../../../../../src/httpsnippet-lite/targets/javascript/axios/client.ts"],
|
|
4
|
-
"sourcesContent": ["/**\n * @description\n * HTTP code snippet generator for Javascript & Node.js using Axios.\n *\n * @author\n * @rohit-gohri\n *\n * for any questions or issues regarding the generated code snippet, please open an issue mentioning the author.\n */\n\nimport stringifyObject from 'stringify-object'\n\nimport { CodeBuilder } from '@/httpsnippet-lite/helpers/code-builder'\nimport type { ReducedHelperObject } from '@/httpsnippet-lite/helpers/reducer'\nimport type { Client } from '@/httpsnippet-lite/targets/target'\n\nexport const axios: Client = {\n info: {\n key: 'axios',\n title: 'Axios',\n link: 'https://github.com/axios/axios',\n description: 'Promise based HTTP client for the browser and node.js',\n },\n convert: ({ allHeaders, method, url, queryObj, postData }, options) => {\n const opts = {\n indent: ' ',\n ...options,\n }\n const { blank, push, join, addPostProcessor } = new CodeBuilder({\n indent: opts.indent,\n })\n push(\"import axios from 'axios';\")\n blank()\n const requestOptions: {\n method: string\n url: string\n params?: ReducedHelperObject\n headers?: ReducedHelperObject\n data?: string | ReducedHelperObject\n } = {\n method,\n url,\n }\n if (Object.keys(queryObj).length) {\n requestOptions.params = queryObj\n }\n if (Object.keys(allHeaders).length) {\n requestOptions.headers = allHeaders\n }\n switch (postData === null || postData === void 0 ? void 0 : postData.mimeType) {\n case 'application/x-www-form-urlencoded':\n if (postData?.params) {\n push('const encodedParams = new URLSearchParams();')\n postData.params.forEach((param) => {\n push(`encodedParams.set('${param.name}', '${param.value}');`)\n })\n blank()\n requestOptions.data = 'encodedParams,'\n addPostProcessor((code) => code.replace(/'encodedParams,'/, 'encodedParams,'))\n }\n break\n case 'application/json':\n if (postData?.jsonObj) {\n requestOptions.data = postData.jsonObj\n }\n break\n case 'multipart/form-data':\n if (!postData?.params) {\n break\n }\n push('const form = new FormData();')\n postData!.params.forEach((param) => {\n push(`form.append('${param.name}', '${param.value || param.fileName || ''}');`)\n })\n blank()\n requestOptions.data = '[form]'\n break\n default:\n if (postData === null || postData === void 0 ? void 0 : postData.text) {\n requestOptions.data = postData!.text\n }\n }\n const optionString = stringifyObject(requestOptions, {\n indent: ' ',\n inlineCharacterLimit: 80,\n }).replace('\"[form]\"', 'form')\n push(`const options = ${optionString};`)\n blank()\n push('try {')\n push('const { data } = await axios.request(options);', 1)\n push('console.log(data);', 1)\n push('} catch (error) {')\n push('console.error(error);', 1)\n push('}')\n return join()\n },\n}\n"],
|
|
5
|
-
"mappings": "AAUA,OAAO,qBAAqB;AAE5B,SAAS,mBAAmB;AAIrB,MAAM,QAAgB;AAAA,EAC3B,MAAM;AAAA,IACJ,KAAK;AAAA,IACL,OAAO;AAAA,IACP,MAAM;AAAA,IACN,aAAa;AAAA,EACf;AAAA,EACA,SAAS,CAAC,EAAE,YAAY,QAAQ,KAAK,UAAU,SAAS,GAAG,YAAY;AACrE,UAAM,OAAO;AAAA,MACX,QAAQ;AAAA,MACR,GAAG;AAAA,IACL;AACA,UAAM,EAAE,OAAO,MAAM,MAAM,iBAAiB,IAAI,IAAI,YAAY;AAAA,MAC9D,QAAQ,KAAK;AAAA,IACf,CAAC;AACD,SAAK,4BAA4B;AACjC,UAAM;AACN,UAAM,iBAMF;AAAA,MACF;AAAA,MACA;AAAA,IACF;AACA,QAAI,OAAO,KAAK,QAAQ,EAAE,QAAQ;AAChC,qBAAe,SAAS;AAAA,IAC1B;AACA,QAAI,OAAO,KAAK,UAAU,EAAE,QAAQ;AAClC,qBAAe,UAAU;AAAA,IAC3B;AACA,YAAQ,aAAa,QAAQ,aAAa,SAAS,SAAS,SAAS,UAAU;AAAA,MAC7E,KAAK;AACH,YAAI,UAAU,QAAQ;AACpB,eAAK,8CAA8C;AACnD,mBAAS,OAAO,QAAQ,CAAC,UAAU;AACjC,iBAAK,sBAAsB,MAAM,IAAI,OAAO,MAAM,KAAK,KAAK;AAAA,UAC9D,CAAC;AACD,gBAAM;AACN,yBAAe,OAAO;AACtB,2BAAiB,CAAC,SAAS,KAAK,QAAQ,oBAAoB,gBAAgB,CAAC;AAAA,QAC/E;AACA;AAAA,MACF,KAAK;AACH,YAAI,UAAU,SAAS;AACrB,yBAAe,OAAO,SAAS;AAAA,QACjC;AACA;AAAA,MACF,KAAK;AACH,YAAI,CAAC,UAAU,QAAQ;AACrB;AAAA,QACF;AACA,aAAK,8BAA8B;AACnC,iBAAU,OAAO,QAAQ,CAAC,UAAU;AAClC,eAAK,gBAAgB,MAAM,IAAI,OAAO,MAAM,SAAS,MAAM,YAAY,EAAE,KAAK;AAAA,QAChF,CAAC;AACD,cAAM;AACN,uBAAe,OAAO;AACtB;AAAA,MACF;AACE,YAAI,aAAa,QAAQ,aAAa,SAAS,SAAS,SAAS,MAAM;AACrE,yBAAe,OAAO,SAAU;AAAA,QAClC;AAAA,IACJ;AACA,UAAM,eAAe,gBAAgB,gBAAgB;AAAA,MACnD,QAAQ;AAAA,MACR,sBAAsB;AAAA,IACxB,CAAC,EAAE,QAAQ,YAAY,MAAM;AAC7B,SAAK,mBAAmB,YAAY,GAAG;AACvC,UAAM;AACN,SAAK,OAAO;AACZ,SAAK,kDAAkD,CAAC;AACxD,SAAK,sBAAsB,CAAC;AAC5B,SAAK,mBAAmB;AACxB,SAAK,yBAAyB,CAAC;AAC/B,SAAK,GAAG;AACR,WAAO,KAAK;AAAA,EACd;AACF;",
|
|
6
|
-
"names": []
|
|
7
|
-
}
|
|
@@ -1,7 +0,0 @@
|
|
|
1
|
-
{
|
|
2
|
-
"version": 3,
|
|
3
|
-
"sources": ["../../../../../src/httpsnippet-lite/targets/javascript/jquery/client.ts"],
|
|
4
|
-
"sourcesContent": ["/**\n * @description\n * HTTP code snippet generator for native XMLHttpRequest\n *\n * @author\n * @AhmadNassri\n *\n * for any questions or issues regarding the generated code snippet, please open an issue mentioning the author.\n */\nimport stringifyObject from 'stringify-object'\n\nimport { CodeBuilder } from '@/httpsnippet-lite/helpers/code-builder'\nimport { getHeader, getHeaderName, hasHeader } from '@/httpsnippet-lite/helpers/headers'\nimport type { ReducedHelperObject } from '@/httpsnippet-lite/helpers/reducer'\nimport type { Client } from '@/httpsnippet-lite/targets/target'\n\nexport const jquery: Client = {\n info: {\n key: 'jquery',\n title: 'jQuery',\n link: 'http://api.jquery.com/jquery.ajax/',\n description: 'Perform an asynchronous HTTP (Ajax) requests with jQuery',\n },\n convert: ({ fullUrl, method, allHeaders, postData }, options) => {\n let _a\n const opts = {\n indent: ' ',\n ...options,\n }\n const { blank, push, join } = new CodeBuilder({ indent: opts.indent })\n const settings: {\n async: boolean\n crossDomain: boolean\n url: string\n method: string\n headers: ReducedHelperObject\n data?: unknown\n processData?: boolean\n contentType?: boolean\n mimeType?: string\n } = {\n async: true,\n crossDomain: true,\n url: fullUrl,\n method,\n headers: allHeaders,\n }\n switch (postData === null || postData === void 0 ? void 0 : postData.mimeType) {\n case 'application/x-www-form-urlencoded':\n settings.data = postData?.paramsObj ? postData.paramsObj : postData!.text\n break\n case 'application/json':\n settings.processData = false\n settings.data = postData!.text\n break\n case 'multipart/form-data':\n if (!postData?.params) {\n break\n }\n push('const form = new FormData();')\n postData.params.forEach((param) => {\n push(`form.append('${param.name}', '${param.value || param.fileName || ''}');`)\n })\n settings.processData = false\n settings.contentType = false\n settings.mimeType = 'multipart/form-data'\n settings.data = '[form]'\n // remove the contentType header\n if (hasHeader(allHeaders, 'content-type')) {\n if (\n (_a = getHeader(allHeaders, 'content-type')) === null || _a === void 0 ? void 0 : _a.includes('boundary')\n ) {\n const headerName = getHeaderName(allHeaders, 'content-type')\n if (headerName) {\n delete settings.headers[headerName]\n }\n }\n }\n blank()\n break\n default:\n if (postData === null || postData === void 0 ? void 0 : postData.text) {\n settings.data = postData!.text\n }\n }\n const stringifiedSettings = stringifyObject(settings, {\n indent: opts.indent,\n }).replace(\"'[form]'\", 'form')\n push(`const settings = ${stringifiedSettings};`)\n blank()\n push('$.ajax(settings).done(function (response) {')\n push('console.log(response);', 1)\n push('});')\n return join()\n },\n}\n"],
|
|
5
|
-
"mappings": "AASA,OAAO,qBAAqB;AAE5B,SAAS,mBAAmB;AAC5B,SAAS,WAAW,eAAe,iBAAiB;AAI7C,MAAM,SAAiB;AAAA,EAC5B,MAAM;AAAA,IACJ,KAAK;AAAA,IACL,OAAO;AAAA,IACP,MAAM;AAAA,IACN,aAAa;AAAA,EACf;AAAA,EACA,SAAS,CAAC,EAAE,SAAS,QAAQ,YAAY,SAAS,GAAG,YAAY;AAC/D,QAAI;AACJ,UAAM,OAAO;AAAA,MACX,QAAQ;AAAA,MACR,GAAG;AAAA,IACL;AACA,UAAM,EAAE,OAAO,MAAM,KAAK,IAAI,IAAI,YAAY,EAAE,QAAQ,KAAK,OAAO,CAAC;AACrE,UAAM,WAUF;AAAA,MACF,OAAO;AAAA,MACP,aAAa;AAAA,MACb,KAAK;AAAA,MACL;AAAA,MACA,SAAS;AAAA,IACX;AACA,YAAQ,aAAa,QAAQ,aAAa,SAAS,SAAS,SAAS,UAAU;AAAA,MAC7E,KAAK;AACH,iBAAS,OAAO,UAAU,YAAY,SAAS,YAAY,SAAU;AACrE;AAAA,MACF,KAAK;AACH,iBAAS,cAAc;AACvB,iBAAS,OAAO,SAAU;AAC1B;AAAA,MACF,KAAK;AACH,YAAI,CAAC,UAAU,QAAQ;AACrB;AAAA,QACF;AACA,aAAK,8BAA8B;AACnC,iBAAS,OAAO,QAAQ,CAAC,UAAU;AACjC,eAAK,gBAAgB,MAAM,IAAI,OAAO,MAAM,SAAS,MAAM,YAAY,EAAE,KAAK;AAAA,QAChF,CAAC;AACD,iBAAS,cAAc;AACvB,iBAAS,cAAc;AACvB,iBAAS,WAAW;AACpB,iBAAS,OAAO;AAEhB,YAAI,UAAU,YAAY,cAAc,GAAG;AACzC,eACG,KAAK,UAAU,YAAY,cAAc,OAAO,QAAQ,OAAO,SAAS,SAAS,GAAG,SAAS,UAAU,GACxG;AACA,kBAAM,aAAa,cAAc,YAAY,cAAc;AAC3D,gBAAI,YAAY;AACd,qBAAO,SAAS,QAAQ,UAAU;AAAA,YACpC;AAAA,UACF;AAAA,QACF;AACA,cAAM;AACN;AAAA,MACF;AACE,YAAI,aAAa,QAAQ,aAAa,SAAS,SAAS,SAAS,MAAM;AACrE,mBAAS,OAAO,SAAU;AAAA,QAC5B;AAAA,IACJ;AACA,UAAM,sBAAsB,gBAAgB,UAAU;AAAA,MACpD,QAAQ,KAAK;AAAA,IACf,CAAC,EAAE,QAAQ,YAAY,MAAM;AAC7B,SAAK,oBAAoB,mBAAmB,GAAG;AAC/C,UAAM;AACN,SAAK,6CAA6C;AAClD,SAAK,0BAA0B,CAAC;AAChC,SAAK,KAAK;AACV,WAAO,KAAK;AAAA,EACd;AACF;",
|
|
6
|
-
"names": []
|
|
7
|
-
}
|
|
@@ -1,7 +0,0 @@
|
|
|
1
|
-
{
|
|
2
|
-
"version": 3,
|
|
3
|
-
"sources": ["../../../../../src/httpsnippet-lite/targets/javascript/xhr/client.ts"],
|
|
4
|
-
"sourcesContent": ["/**\n * @description\n * HTTP code snippet generator for native XMLHttpRequest\n *\n * @author\n * @AhmadNassri\n *\n * for any questions or issues regarding the generated code snippet, please open an issue mentioning the author.\n */\nimport stringifyObject from 'stringify-object'\n\nimport { CodeBuilder } from '@/httpsnippet-lite/helpers/code-builder'\nimport { escapeForSingleQuotes } from '@/httpsnippet-lite/helpers/escape'\nimport { getHeader, getHeaderName, hasHeader } from '@/httpsnippet-lite/helpers/headers'\nimport type { Client } from '@/httpsnippet-lite/targets/target'\n\nexport const xhr: Client = {\n info: {\n key: 'xhr',\n title: 'XMLHttpRequest',\n link: 'https://developer.mozilla.org/en-US/docs/Web/API/XMLHttpRequest',\n description: 'W3C Standard API that provides scripted client functionality',\n },\n convert: ({ postData, allHeaders, method, fullUrl }, options) => {\n let _a\n const opts = {\n indent: ' ',\n cors: true,\n ...options,\n }\n const { blank, push, join } = new CodeBuilder({ indent: opts.indent })\n switch (postData === null || postData === void 0 ? void 0 : postData.mimeType) {\n case 'application/json':\n push(\n `const data = JSON.stringify(${stringifyObject(postData?.jsonObj, {\n indent: opts.indent,\n })});`,\n )\n blank()\n break\n case 'multipart/form-data':\n if (!postData?.params) {\n break\n }\n push('const data = new FormData();')\n postData.params.forEach((param) => {\n push(`data.append('${param.name}', '${param.value || param.fileName || ''}');`)\n })\n // remove the contentType header\n if (hasHeader(allHeaders, 'content-type')) {\n if (\n (_a = getHeader(allHeaders, 'content-type')) === null || _a === void 0 ? void 0 : _a.includes('boundary')\n ) {\n const headerName = getHeaderName(allHeaders, 'content-type')\n if (headerName) {\n delete allHeaders[headerName]\n }\n }\n }\n blank()\n break\n default:\n push(\n `const data = ${(postData === null || postData === void 0 ? void 0 : postData.text) ? `'${postData!.text}'` : 'null'};`,\n )\n blank()\n }\n push('const xhr = new XMLHttpRequest();')\n if (opts.cors) {\n push('xhr.withCredentials = true;')\n }\n blank()\n push(\"xhr.addEventListener('readystatechange', function () {\")\n push('if (this.readyState === this.DONE) {', 1)\n push('console.log(this.responseText);', 2)\n push('}', 1)\n push('});')\n blank()\n push(`xhr.open('${method}', '${fullUrl}');`)\n Object.keys(allHeaders).forEach((key) => {\n push(`xhr.setRequestHeader('${key}', '${escapeForSingleQuotes(allHeaders[key] as string)}');`)\n })\n blank()\n push('xhr.send(data);')\n return join()\n },\n}\n"],
|
|
5
|
-
"mappings": "AASA,OAAO,qBAAqB;AAE5B,SAAS,mBAAmB;AAC5B,SAAS,6BAA6B;AACtC,SAAS,WAAW,eAAe,iBAAiB;AAG7C,MAAM,MAAc;AAAA,EACzB,MAAM;AAAA,IACJ,KAAK;AAAA,IACL,OAAO;AAAA,IACP,MAAM;AAAA,IACN,aAAa;AAAA,EACf;AAAA,EACA,SAAS,CAAC,EAAE,UAAU,YAAY,QAAQ,QAAQ,GAAG,YAAY;AAC/D,QAAI;AACJ,UAAM,OAAO;AAAA,MACX,QAAQ;AAAA,MACR,MAAM;AAAA,MACN,GAAG;AAAA,IACL;AACA,UAAM,EAAE,OAAO,MAAM,KAAK,IAAI,IAAI,YAAY,EAAE,QAAQ,KAAK,OAAO,CAAC;AACrE,YAAQ,aAAa,QAAQ,aAAa,SAAS,SAAS,SAAS,UAAU;AAAA,MAC7E,KAAK;AACH;AAAA,UACE,+BAA+B,gBAAgB,UAAU,SAAS;AAAA,YAChE,QAAQ,KAAK;AAAA,UACf,CAAC,CAAC;AAAA,QACJ;AACA,cAAM;AACN;AAAA,MACF,KAAK;AACH,YAAI,CAAC,UAAU,QAAQ;AACrB;AAAA,QACF;AACA,aAAK,8BAA8B;AACnC,iBAAS,OAAO,QAAQ,CAAC,UAAU;AACjC,eAAK,gBAAgB,MAAM,IAAI,OAAO,MAAM,SAAS,MAAM,YAAY,EAAE,KAAK;AAAA,QAChF,CAAC;AAED,YAAI,UAAU,YAAY,cAAc,GAAG;AACzC,eACG,KAAK,UAAU,YAAY,cAAc,OAAO,QAAQ,OAAO,SAAS,SAAS,GAAG,SAAS,UAAU,GACxG;AACA,kBAAM,aAAa,cAAc,YAAY,cAAc;AAC3D,gBAAI,YAAY;AACd,qBAAO,WAAW,UAAU;AAAA,YAC9B;AAAA,UACF;AAAA,QACF;AACA,cAAM;AACN;AAAA,MACF;AACE;AAAA,UACE,iBAAiB,aAAa,QAAQ,aAAa,SAAS,SAAS,SAAS,QAAQ,IAAI,SAAU,IAAI,MAAM,MAAM;AAAA,QACtH;AACA,cAAM;AAAA,IACV;AACA,SAAK,mCAAmC;AACxC,QAAI,KAAK,MAAM;AACb,WAAK,6BAA6B;AAAA,IACpC;AACA,UAAM;AACN,SAAK,wDAAwD;AAC7D,SAAK,wCAAwC,CAAC;AAC9C,SAAK,mCAAmC,CAAC;AACzC,SAAK,KAAK,CAAC;AACX,SAAK,KAAK;AACV,UAAM;AACN,SAAK,aAAa,MAAM,OAAO,OAAO,KAAK;AAC3C,WAAO,KAAK,UAAU,EAAE,QAAQ,CAAC,QAAQ;AACvC,WAAK,yBAAyB,GAAG,OAAO,sBAAsB,WAAW,GAAG,CAAW,CAAC,KAAK;AAAA,IAC/F,CAAC;AACD,UAAM;AACN,SAAK,iBAAiB;AACtB,WAAO,KAAK;AAAA,EACd;AACF;",
|
|
6
|
-
"names": []
|
|
7
|
-
}
|
|
@@ -1,7 +0,0 @@
|
|
|
1
|
-
{
|
|
2
|
-
"version": 3,
|
|
3
|
-
"sources": ["../../../../../src/httpsnippet-lite/targets/kotlin/okhttp/client.ts"],
|
|
4
|
-
"sourcesContent": ["/**\n * @description\n * HTTP code snippet generator for Kotlin using OkHttp.\n *\n * @author\n * @seanghay\n *\n * for any questions or issues regarding the generated code snippet, please open an issue mentioning the author.\n */\n\nimport { CodeBuilder } from '@/httpsnippet-lite/helpers/code-builder'\nimport { escapeForDoubleQuotes } from '@/httpsnippet-lite/helpers/escape'\nimport type { Client } from '@/httpsnippet-lite/targets/target'\n\nexport const okhttp: Client = {\n info: {\n key: 'okhttp',\n title: 'OkHttp',\n link: 'http://square.github.io/okhttp/',\n description: 'An HTTP Request Client Library',\n },\n convert: ({ postData, fullUrl, method, allHeaders }, options) => {\n const opts = {\n indent: ' ',\n ...options,\n }\n const { blank, join, push } = new CodeBuilder({ indent: opts.indent })\n const methods = ['GET', 'POST', 'PUT', 'DELETE', 'PATCH', 'HEAD']\n const methodsWithBody = ['POST', 'PUT', 'DELETE', 'PATCH']\n push('val client = OkHttpClient()')\n blank()\n if (postData !== null && postData !== void 0) {\n if (postData.mimeType === 'application/x-www-form-urlencoded' && postData.params) {\n push('val formBody = FormBody.Builder()')\n postData.params.forEach((param) => {\n push(`.addEncoded(\"${param.name}\", \"${param.value}\")`, 1)\n })\n push('.build()', 1)\n blank()\n } else if (postData.mimeType === 'multipart/form-data' && postData.params) {\n push('val body = MultipartBody.Builder()')\n push('.setType(MultipartBody.FORM)', 1)\n postData.params.forEach((param) => {\n if (param.fileName !== undefined) {\n push(\n `.addFormDataPart(\"${param.name}\", \"${param.fileName}\", RequestBody.create(MediaType.parse(\"application/octet-stream\"), File(\"${param.fileName}\")))`,\n 1,\n )\n } else if (param.value !== undefined) {\n push(`.addFormDataPart(\"${param.name}\", \"${param.value}\")`, 1)\n }\n })\n push('.build()', 1)\n blank()\n } else {\n push(`val mediaType = MediaType.parse(\"${postData.mimeType}\")`)\n push(`val body = RequestBody.create(mediaType, ${JSON.stringify(postData.text)})`)\n }\n }\n push('val request = Request.Builder()')\n push(`.url(\"${fullUrl}\")`, 1)\n if (!methods.includes(method.toUpperCase())) {\n if (postData === null || postData === void 0 ? void 0 : postData.text) {\n push(`.method(\"${method.toUpperCase()}\", body)`, 1)\n } else {\n push(`.method(\"${method.toUpperCase()}\", null)`, 1)\n }\n } else if (methodsWithBody.includes(method.toUpperCase())) {\n if (postData === null || postData === void 0 ? void 0 : postData.text || postData.params) {\n push(`.${method.toLowerCase()}(body)`, 1)\n } else {\n push(`.${method.toLowerCase()}(null)`, 1)\n }\n } else {\n push(`.${method.toLowerCase()}()`, 1)\n }\n // Add headers, including the cookies\n Object.keys(allHeaders).forEach((key) => {\n push(`.addHeader(\"${key}\", \"${escapeForDoubleQuotes(allHeaders[key] as string)}\")`, 1)\n })\n push('.build()', 1)\n blank()\n push('val response = client.newCall(request).execute()')\n return join()\n },\n}\n"],
|
|
5
|
-
"mappings": "AAUA,SAAS,mBAAmB;AAC5B,SAAS,6BAA6B;AAG/B,MAAM,SAAiB;AAAA,EAC5B,MAAM;AAAA,IACJ,KAAK;AAAA,IACL,OAAO;AAAA,IACP,MAAM;AAAA,IACN,aAAa;AAAA,EACf;AAAA,EACA,SAAS,CAAC,EAAE,UAAU,SAAS,QAAQ,WAAW,GAAG,YAAY;AAC/D,UAAM,OAAO;AAAA,MACX,QAAQ;AAAA,MACR,GAAG;AAAA,IACL;AACA,UAAM,EAAE,OAAO,MAAM,KAAK,IAAI,IAAI,YAAY,EAAE,QAAQ,KAAK,OAAO,CAAC;AACrE,UAAM,UAAU,CAAC,OAAO,QAAQ,OAAO,UAAU,SAAS,MAAM;AAChE,UAAM,kBAAkB,CAAC,QAAQ,OAAO,UAAU,OAAO;AACzD,SAAK,6BAA6B;AAClC,UAAM;AACN,QAAI,aAAa,QAAQ,aAAa,QAAQ;AAC5C,UAAI,SAAS,aAAa,uCAAuC,SAAS,QAAQ;AAChF,aAAK,mCAAmC;AACxC,iBAAS,OAAO,QAAQ,CAAC,UAAU;AACjC,eAAK,gBAAgB,MAAM,IAAI,OAAO,MAAM,KAAK,MAAM,CAAC;AAAA,QAC1D,CAAC;AACD,aAAK,YAAY,CAAC;AAClB,cAAM;AAAA,MACR,WAAW,SAAS,aAAa,yBAAyB,SAAS,QAAQ;AACzE,aAAK,oCAAoC;AACzC,aAAK,gCAAgC,CAAC;AACtC,iBAAS,OAAO,QAAQ,CAAC,UAAU;AACjC,cAAI,MAAM,aAAa,QAAW;AAChC;AAAA,cACE,qBAAqB,MAAM,IAAI,OAAO,MAAM,QAAQ,4EAA4E,MAAM,QAAQ;AAAA,cAC9I;AAAA,YACF;AAAA,UACF,WAAW,MAAM,UAAU,QAAW;AACpC,iBAAK,qBAAqB,MAAM,IAAI,OAAO,MAAM,KAAK,MAAM,CAAC;AAAA,UAC/D;AAAA,QACF,CAAC;AACD,aAAK,YAAY,CAAC;AAClB,cAAM;AAAA,MACR,OAAO;AACL,aAAK,oCAAoC,SAAS,QAAQ,IAAI;AAC9D,aAAK,4CAA4C,KAAK,UAAU,SAAS,IAAI,CAAC,GAAG;AAAA,MACnF;AAAA,IACF;AACA,SAAK,iCAAiC;AACtC,SAAK,SAAS,OAAO,MAAM,CAAC;AAC5B,QAAI,CAAC,QAAQ,SAAS,OAAO,YAAY,CAAC,GAAG;AAC3C,UAAI,aAAa,QAAQ,aAAa,SAAS,SAAS,SAAS,MAAM;AACrE,aAAK,YAAY,OAAO,YAAY,CAAC,YAAY,CAAC;AAAA,MACpD,OAAO;AACL,aAAK,YAAY,OAAO,YAAY,CAAC,YAAY,CAAC;AAAA,MACpD;AAAA,IACF,WAAW,gBAAgB,SAAS,OAAO,YAAY,CAAC,GAAG;AACzD,UAAI,aAAa,QAAQ,aAAa,SAAS,SAAS,SAAS,QAAQ,SAAS,QAAQ;AACxF,aAAK,IAAI,OAAO,YAAY,CAAC,UAAU,CAAC;AAAA,MAC1C,OAAO;AACL,aAAK,IAAI,OAAO,YAAY,CAAC,UAAU,CAAC;AAAA,MAC1C;AAAA,IACF,OAAO;AACL,WAAK,IAAI,OAAO,YAAY,CAAC,MAAM,CAAC;AAAA,IACtC;AAEA,WAAO,KAAK,UAAU,EAAE,QAAQ,CAAC,QAAQ;AACvC,WAAK,eAAe,GAAG,OAAO,sBAAsB,WAAW,GAAG,CAAW,CAAC,MAAM,CAAC;AAAA,IACvF,CAAC;AACD,SAAK,YAAY,CAAC;AAClB,UAAM;AACN,SAAK,kDAAkD;AACvD,WAAO,KAAK;AAAA,EACd;AACF;",
|
|
6
|
-
"names": []
|
|
7
|
-
}
|
|
@@ -1,7 +0,0 @@
|
|
|
1
|
-
{
|
|
2
|
-
"version": 3,
|
|
3
|
-
"sources": ["../../../../../src/httpsnippet-lite/targets/node/axios/client.ts"],
|
|
4
|
-
"sourcesContent": ["/**\n * @description\n * HTTP code snippet generator for Javascript & Node.js using Axios.\n *\n * @author\n * @rohit-gohri\n *\n * for any questions or issues regarding the generated code snippet, please open an issue mentioning the author.\n */\nimport stringifyObject from 'stringify-object'\n\nimport { CodeBuilder } from '@/httpsnippet-lite/helpers/code-builder'\nimport type { ReducedHelperObject } from '@/httpsnippet-lite/helpers/reducer'\nimport type { Client } from '@/httpsnippet-lite/targets/target'\n\nexport const axios: Client = {\n info: {\n key: 'axios',\n title: 'Axios',\n link: 'https://github.com/axios/axios',\n description: 'Promise based HTTP client for the browser and node.js',\n },\n convert: ({ method, url, queryObj, allHeaders, postData }, options) => {\n const opts = {\n indent: ' ',\n ...options,\n }\n const { blank, join, push, addPostProcessor } = new CodeBuilder({\n indent: opts.indent,\n })\n push(\"const axios = require('axios').default;\")\n const reqOpts: {\n method: string\n url: string\n params?: ReducedHelperObject\n headers?: ReducedHelperObject\n data?: string | ReducedHelperObject\n } = {\n method,\n url,\n }\n if (Object.keys(queryObj).length) {\n reqOpts.params = queryObj\n }\n if (Object.keys(allHeaders).length) {\n reqOpts.headers = allHeaders\n }\n switch (postData === null || postData === void 0 ? void 0 : postData.mimeType) {\n case 'application/x-www-form-urlencoded':\n if (postData!.params) {\n push(\"const { URLSearchParams } = require('url');\")\n blank()\n push('const encodedParams = new URLSearchParams();')\n postData!.params.forEach((param) => {\n push(`encodedParams.set('${param.name}', '${param.value}');`)\n })\n blank()\n reqOpts.data = 'encodedParams,'\n addPostProcessor((code) => code.replace(/'encodedParams,'/, 'encodedParams,'))\n }\n break\n case 'application/json':\n blank()\n if (postData?.jsonObj) {\n reqOpts.data = postData.jsonObj\n }\n break\n default:\n blank()\n if (postData === null || postData === void 0 ? void 0 : postData.text) {\n reqOpts.data = postData!.text\n }\n }\n const stringifiedOptions = stringifyObject(reqOpts, {\n indent: ' ',\n inlineCharacterLimit: 80,\n })\n push(`const options = ${stringifiedOptions};`)\n blank()\n push('try {')\n push('const { data } = await axios.request(options);', 1)\n push('console.log(data);', 1)\n push('} catch (error) {')\n push('console.error(error);', 1)\n push('}')\n return join()\n },\n}\n"],
|
|
5
|
-
"mappings": "AASA,OAAO,qBAAqB;AAE5B,SAAS,mBAAmB;AAIrB,MAAM,QAAgB;AAAA,EAC3B,MAAM;AAAA,IACJ,KAAK;AAAA,IACL,OAAO;AAAA,IACP,MAAM;AAAA,IACN,aAAa;AAAA,EACf;AAAA,EACA,SAAS,CAAC,EAAE,QAAQ,KAAK,UAAU,YAAY,SAAS,GAAG,YAAY;AACrE,UAAM,OAAO;AAAA,MACX,QAAQ;AAAA,MACR,GAAG;AAAA,IACL;AACA,UAAM,EAAE,OAAO,MAAM,MAAM,iBAAiB,IAAI,IAAI,YAAY;AAAA,MAC9D,QAAQ,KAAK;AAAA,IACf,CAAC;AACD,SAAK,yCAAyC;AAC9C,UAAM,UAMF;AAAA,MACF;AAAA,MACA;AAAA,IACF;AACA,QAAI,OAAO,KAAK,QAAQ,EAAE,QAAQ;AAChC,cAAQ,SAAS;AAAA,IACnB;AACA,QAAI,OAAO,KAAK,UAAU,EAAE,QAAQ;AAClC,cAAQ,UAAU;AAAA,IACpB;AACA,YAAQ,aAAa,QAAQ,aAAa,SAAS,SAAS,SAAS,UAAU;AAAA,MAC7E,KAAK;AACH,YAAI,SAAU,QAAQ;AACpB,eAAK,6CAA6C;AAClD,gBAAM;AACN,eAAK,8CAA8C;AACnD,mBAAU,OAAO,QAAQ,CAAC,UAAU;AAClC,iBAAK,sBAAsB,MAAM,IAAI,OAAO,MAAM,KAAK,KAAK;AAAA,UAC9D,CAAC;AACD,gBAAM;AACN,kBAAQ,OAAO;AACf,2BAAiB,CAAC,SAAS,KAAK,QAAQ,oBAAoB,gBAAgB,CAAC;AAAA,QAC/E;AACA;AAAA,MACF,KAAK;AACH,cAAM;AACN,YAAI,UAAU,SAAS;AACrB,kBAAQ,OAAO,SAAS;AAAA,QAC1B;AACA;AAAA,MACF;AACE,cAAM;AACN,YAAI,aAAa,QAAQ,aAAa,SAAS,SAAS,SAAS,MAAM;AACrE,kBAAQ,OAAO,SAAU;AAAA,QAC3B;AAAA,IACJ;AACA,UAAM,qBAAqB,gBAAgB,SAAS;AAAA,MAClD,QAAQ;AAAA,MACR,sBAAsB;AAAA,IACxB,CAAC;AACD,SAAK,mBAAmB,kBAAkB,GAAG;AAC7C,UAAM;AACN,SAAK,OAAO;AACZ,SAAK,kDAAkD,CAAC;AACxD,SAAK,sBAAsB,CAAC;AAC5B,SAAK,mBAAmB;AACxB,SAAK,yBAAyB,CAAC;AAC/B,SAAK,GAAG;AACR,WAAO,KAAK;AAAA,EACd;AACF;",
|
|
6
|
-
"names": []
|
|
7
|
-
}
|
|
@@ -1,7 +0,0 @@
|
|
|
1
|
-
{
|
|
2
|
-
"version": 3,
|
|
3
|
-
"sources": ["../../../../src/httpsnippet-lite/targets/objc/helpers.ts"],
|
|
4
|
-
"sourcesContent": ["/**\n * Create a string corresponding to a valid declaration and initialization of an Objective-C object literal.\n *\n * @param nsClass Class of the literal\n * @param name Desired name of the instance\n * @param parameters Key-value object of parameters to translate to an Objective-C object literal\n * @param indent If true, will declare the literal by indenting each new key/value pair.\n * @return A valid Objective-C declaration and initialization of an Objective-C object literal.\n *\n * @example\n * nsDeclaration('NSDictionary', 'params', {a: 'b', c: 'd'}, true)\n * // returns:\n * NSDictionary *params = @{ @\"a\": @\"b\",\n * @\"c\": @\"d\" };\n *\n * nsDeclaration('NSDictionary', 'params', {a: 'b', c: 'd'})\n * // returns:\n * NSDictionary *params = @{ @\"a\": @\"b\", @\"c\": @\"d\" };\n */\nexport const nsDeclaration = (nsClass: string, name: string, parameters: unknown, indent: boolean): string => {\n const opening = `${nsClass} *${name} = `\n const literal = literalRepresentation(parameters, indent ? opening.length : undefined)\n return `${opening}${literal};`\n}\n\n/**\n * Create a valid Objective-C string of a literal value according to its type.\n *\n * @param value Any JavaScript literal\n */\nconst literalRepresentation = (value: unknown, indentation?: number): string => {\n const join = indentation === undefined ? ', ' : `,\\n ${' '.repeat(indentation)}`\n switch (Object.prototype.toString.call(value)) {\n case '[object Number]':\n return `@${value}`\n case '[object Array]': {\n const valuesRepresentation = (value as Array<unknown>).map((value) => literalRepresentation(value))\n return `@[ ${valuesRepresentation.join(join)} ]`\n }\n case '[object Object]': {\n const keyValuePairs = []\n const _value = value as Record<string, unknown>\n for (const key in _value) {\n if (Object.hasOwn(_value, key)) {\n keyValuePairs.push(`@\"${key}\": ${literalRepresentation(_value[key])}`)\n }\n }\n return `@{ ${keyValuePairs.join(join)} }`\n }\n case '[object Boolean]':\n return value ? '@YES' : '@NO'\n default:\n if (value === null || value === undefined) {\n return ''\n }\n return `@\"${value.toString().replace(/\"/g, '\\\\\"')}\"`\n }\n}\n"],
|
|
5
|
-
"mappings": "AAmBO,MAAM,gBAAgB,CAAC,SAAiB,MAAc,YAAqB,WAA4B;AAC5G,QAAM,UAAU,GAAG,OAAO,KAAK,IAAI;AACnC,QAAM,UAAU,sBAAsB,YAAY,SAAS,QAAQ,SAAS,MAAS;AACrF,SAAO,GAAG,OAAO,GAAG,OAAO;AAC7B;AAOA,MAAM,wBAAwB,CAAC,OAAgB,gBAAiC;AAC9E,QAAM,OAAO,gBAAgB,SAAY,OAAO;AAAA,KAAS,IAAI,OAAO,WAAW,CAAC;AAChF,UAAQ,OAAO,UAAU,SAAS,KAAK,KAAK,GAAG;AAAA,IAC7C,KAAK;AACH,aAAO,IAAI,KAAK;AAAA,IAClB,KAAK,kBAAkB;AACrB,YAAM,uBAAwB,MAAyB,IAAI,CAACA,WAAU,sBAAsBA,MAAK,CAAC;AAClG,aAAO,MAAM,qBAAqB,KAAK,IAAI,CAAC;AAAA,IAC9C;AAAA,IACA,KAAK,mBAAmB;AACtB,YAAM,gBAAgB,CAAC;AACvB,YAAM,SAAS;AACf,iBAAW,OAAO,QAAQ;AACxB,YAAI,OAAO,OAAO,QAAQ,GAAG,GAAG;AAC9B,wBAAc,KAAK,KAAK,GAAG,MAAM,sBAAsB,OAAO,GAAG,CAAC,CAAC,EAAE;AAAA,QACvE;AAAA,MACF;AACA,aAAO,MAAM,cAAc,KAAK,IAAI,CAAC;AAAA,IACvC;AAAA,IACA,KAAK;AACH,aAAO,QAAQ,SAAS;AAAA,IAC1B;AACE,UAAI,UAAU,QAAQ,UAAU,QAAW;AACzC,eAAO;AAAA,MACT;AACA,aAAO,KAAK,MAAM,SAAS,EAAE,QAAQ,MAAM,KAAK,CAAC;AAAA,EACrD;AACF;",
|
|
6
|
-
"names": ["value"]
|
|
7
|
-
}
|
|
@@ -1,7 +0,0 @@
|
|
|
1
|
-
{
|
|
2
|
-
"version": 3,
|
|
3
|
-
"sources": ["../../../../../src/httpsnippet-lite/targets/objc/nsurlsession/client.ts"],
|
|
4
|
-
"sourcesContent": ["/**\n * @description\n * HTTP code snippet generator for Objective-C using NSURLSession.\n *\n * @author\n * @thibaultCha\n *\n * for any questions or issues regarding the generated code snippet, please open an issue mentioning the author.\n */\n\nimport { CodeBuilder } from '@/httpsnippet-lite/helpers/code-builder'\nimport { nsDeclaration } from '@/httpsnippet-lite/targets/objc/helpers'\nimport type { Client } from '@/httpsnippet-lite/targets/target'\n\nexport const nsurlsession: Client = {\n info: {\n key: 'nsurlsession',\n title: 'NSURLSession',\n link: 'https://developer.apple.com/library/mac/documentation/Foundation/Reference/NSURLSession_class/index.html',\n description: \"Foundation's NSURLSession request\",\n },\n convert: ({ allHeaders, postData, method, fullUrl }, options) => {\n let _a\n const opts = {\n indent: ' ',\n pretty: true,\n timeout: 10,\n ...options,\n }\n const { push, join, blank } = new CodeBuilder({ indent: opts.indent })\n // Markers for headers to be created as literal objects and later be set on the NSURLRequest if exist\n const req = {\n hasHeaders: false,\n hasBody: false,\n }\n // We just want to make sure people understand that is the only dependency\n push('#import <Foundation/Foundation.h>')\n if (Object.keys(allHeaders).length) {\n req.hasHeaders = true\n blank()\n push(nsDeclaration('NSDictionary', 'headers', allHeaders, opts.pretty))\n }\n if (postData && (postData.text || postData.jsonObj || postData.params)) {\n req.hasBody = true\n switch (postData.mimeType) {\n case 'application/x-www-form-urlencoded':\n if ((_a = postData.params) === null || _a === void 0 ? void 0 : _a.length) {\n // By appending parameters one by one in the resulting snippet,\n // we make it easier for the user to edit it according to his or her needs after pasting.\n // The user can just add/remove lines adding/removing body parameters.\n blank()\n const [head, ...tail] = postData.params!\n push(\n `NSMutableData *postData = [[NSMutableData alloc] initWithData:[@\"${head!.name}=${head!.value}\" dataUsingEncoding:NSUTF8StringEncoding]];`,\n )\n tail.forEach(({ name, value }) => {\n push(`[postData appendData:[@\"&${name}=${value}\" dataUsingEncoding:NSUTF8StringEncoding]];`)\n })\n } else {\n req.hasBody = false\n }\n break\n case 'application/json':\n if (postData.jsonObj) {\n push(nsDeclaration('NSDictionary', 'parameters', postData.jsonObj, opts.pretty))\n blank()\n push('NSData *postData = [NSJSONSerialization dataWithJSONObject:parameters options:0 error:nil];')\n }\n break\n case 'multipart/form-data':\n // By appending multipart parameters one by one in the resulting snippet,\n // we make it easier for the user to edit it according to his or her needs after pasting.\n // The user can just edit the parameters NSDictionary or put this part of a snippet in a multipart builder method.\n push(nsDeclaration('NSArray', 'parameters', postData.params || [], opts.pretty))\n push(`NSString *boundary = @\"${postData.boundary}\";`)\n blank()\n push('NSError *error;')\n push('NSMutableString *body = [NSMutableString string];')\n push('for (NSDictionary *param in parameters) {')\n push('[body appendFormat:@\"--%@\\\\r\\\\n\", boundary];', 1)\n push('if (param[@\"fileName\"]) {', 1)\n push(\n '[body appendFormat:@\"Content-Disposition:form-data; name=\\\\\"%@\\\\\"; filename=\\\\\"%@\\\\\"\\\\r\\\\n\", param[@\"name\"], param[@\"fileName\"]];',\n 2,\n )\n push('[body appendFormat:@\"Content-Type: %@\\\\r\\\\n\\\\r\\\\n\", param[@\"contentType\"]];', 2)\n push(\n '[body appendFormat:@\"%@\", [NSString stringWithContentsOfFile:param[@\"fileName\"] encoding:NSUTF8StringEncoding error:&error]];',\n 2,\n )\n push('if (error) {', 2)\n push('NSLog(@\"%@\", error);', 3)\n push('}', 2)\n push('} else {', 1)\n push('[body appendFormat:@\"Content-Disposition:form-data; name=\\\\\"%@\\\\\"\\\\r\\\\n\\\\r\\\\n\", param[@\"name\"]];', 2)\n push('[body appendFormat:@\"%@\", param[@\"value\"]];', 2)\n push('}', 1)\n push('}')\n push('[body appendFormat:@\"\\\\r\\\\n--%@--\\\\r\\\\n\", boundary];')\n push('NSData *postData = [body dataUsingEncoding:NSUTF8StringEncoding];')\n break\n default:\n blank()\n push(\n `NSData *postData = [[NSData alloc] initWithData:[@\"${postData.text}\" dataUsingEncoding:NSUTF8StringEncoding]];`,\n )\n }\n }\n blank()\n push(`NSMutableURLRequest *request = [NSMutableURLRequest requestWithURL:[NSURL URLWithString:@\"${fullUrl}\"]`)\n // NSURLRequestUseProtocolCachePolicy is the default policy, let's just always set it to avoid confusion.\n push(' cachePolicy:NSURLRequestUseProtocolCachePolicy')\n push(` timeoutInterval:${opts.timeout.toFixed(1)}];`)\n push(`[request setHTTPMethod:@\"${method}\"];`)\n if (req.hasHeaders) {\n push('[request setAllHTTPHeaderFields:headers];')\n }\n if (req.hasBody) {\n push('[request setHTTPBody:postData];')\n }\n blank()\n // Retrieving the shared session will be less verbose than creating a new one.\n push('NSURLSession *session = [NSURLSession sharedSession];')\n push('NSURLSessionDataTask *dataTask = [session dataTaskWithRequest:request')\n push(\n ' completionHandler:^(NSData *data, NSURLResponse *response, NSError *error) {',\n )\n push(' if (error) {', 1)\n push(' NSLog(@\"%@\", error);', 2)\n push(' } else {', 1)\n // Casting the NSURLResponse to NSHTTPURLResponse so the user can see the status .\n push(\n ' NSHTTPURLResponse *httpResponse = (NSHTTPURLResponse *) response;',\n 2,\n )\n push(' NSLog(@\"%@\", httpResponse);', 2)\n push(' }', 1)\n push(' }];')\n push('[dataTask resume];')\n return join()\n },\n}\n"],
|
|
5
|
-
"mappings": "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",
|
|
6
|
-
"names": []
|
|
7
|
-
}
|
|
@@ -1,7 +0,0 @@
|
|
|
1
|
-
{
|
|
2
|
-
"version": 3,
|
|
3
|
-
"sources": ["../../../../../src/httpsnippet-lite/targets/ocaml/cohttp/client.ts"],
|
|
4
|
-
"sourcesContent": ["/**\n * @description\n * HTTP code snippet generator for OCaml using CoHTTP.\n *\n * @author\n * @SGrondin\n *\n * for any questions or issues regarding the generated code snippet, please open an issue mentioning the author.\n */\nimport { CodeBuilder } from '@/httpsnippet-lite/helpers/code-builder'\nimport { escapeForDoubleQuotes } from '@/httpsnippet-lite/helpers/escape'\nimport type { Client } from '@/httpsnippet-lite/targets/target'\n\nexport const cohttp: Client = {\n info: {\n key: 'cohttp',\n title: 'CoHTTP',\n link: 'https://github.com/mirage/ocaml-cohttp',\n description: 'Cohttp is a very lightweight HTTP server using Lwt or Async for OCaml',\n },\n convert: ({ fullUrl, allHeaders, postData, method }, options) => {\n const opts = {\n indent: ' ',\n ...options,\n }\n const methods = ['get', 'post', 'head', 'delete', 'patch', 'put', 'options']\n const { push, blank, join } = new CodeBuilder({ indent: opts.indent })\n push('open Cohttp_lwt_unix')\n push('open Cohttp')\n push('open Lwt')\n blank()\n push(`let uri = Uri.of_string \"${fullUrl}\" in`)\n // Add headers, including the cookies\n const headers = Object.keys(allHeaders)\n if (headers.length === 1) {\n push(\n `let headers = Header.add (Header.init ()) \"${headers[0]}\" \"${escapeForDoubleQuotes(allHeaders[headers[0]!] as string)}\" in`,\n )\n } else if (headers.length > 1) {\n push('let headers = Header.add_list (Header.init ()) [')\n headers.forEach((key) => {\n push(`(\"${key}\", \"${escapeForDoubleQuotes(allHeaders[key] as string)}\");`, 1)\n })\n push('] in')\n }\n // Add body\n if (postData === null || postData === void 0 ? void 0 : postData.text) {\n // Just text\n push(`let body = Cohttp_lwt_body.of_string ${JSON.stringify(postData!.text)} in`)\n }\n // Do the request\n blank()\n const h = headers.length ? '~headers ' : ''\n const b = (postData === null || postData === void 0 ? void 0 : postData.text) ? '~body ' : ''\n const m = methods.includes(method.toLowerCase())\n ? `\\`${method.toUpperCase()}`\n : `(Code.method_of_string \"${method}\")`\n push(`Client.call ${h}${b}${m} uri`)\n // Catch result\n push('>>= fun (res, body_stream) ->')\n push('(* Do stuff with the result *)', 1)\n return join()\n },\n}\n"],
|
|
5
|
-
"mappings": "AASA,SAAS,mBAAmB;AAC5B,SAAS,6BAA6B;AAG/B,MAAM,SAAiB;AAAA,EAC5B,MAAM;AAAA,IACJ,KAAK;AAAA,IACL,OAAO;AAAA,IACP,MAAM;AAAA,IACN,aAAa;AAAA,EACf;AAAA,EACA,SAAS,CAAC,EAAE,SAAS,YAAY,UAAU,OAAO,GAAG,YAAY;AAC/D,UAAM,OAAO;AAAA,MACX,QAAQ;AAAA,MACR,GAAG;AAAA,IACL;AACA,UAAM,UAAU,CAAC,OAAO,QAAQ,QAAQ,UAAU,SAAS,OAAO,SAAS;AAC3E,UAAM,EAAE,MAAM,OAAO,KAAK,IAAI,IAAI,YAAY,EAAE,QAAQ,KAAK,OAAO,CAAC;AACrE,SAAK,sBAAsB;AAC3B,SAAK,aAAa;AAClB,SAAK,UAAU;AACf,UAAM;AACN,SAAK,4BAA4B,OAAO,MAAM;AAE9C,UAAM,UAAU,OAAO,KAAK,UAAU;AACtC,QAAI,QAAQ,WAAW,GAAG;AACxB;AAAA,QACE,8CAA8C,QAAQ,CAAC,CAAC,MAAM,sBAAsB,WAAW,QAAQ,CAAC,CAAE,CAAW,CAAC;AAAA,MACxH;AAAA,IACF,WAAW,QAAQ,SAAS,GAAG;AAC7B,WAAK,kDAAkD;AACvD,cAAQ,QAAQ,CAAC,QAAQ;AACvB,aAAK,KAAK,GAAG,OAAO,sBAAsB,WAAW,GAAG,CAAW,CAAC,OAAO,CAAC;AAAA,MAC9E,CAAC;AACD,WAAK,MAAM;AAAA,IACb;AAEA,QAAI,aAAa,QAAQ,aAAa,SAAS,SAAS,SAAS,MAAM;AAErE,WAAK,wCAAwC,KAAK,UAAU,SAAU,IAAI,CAAC,KAAK;AAAA,IAClF;AAEA,UAAM;AACN,UAAM,IAAI,QAAQ,SAAS,cAAc;AACzC,UAAM,KAAK,aAAa,QAAQ,aAAa,SAAS,SAAS,SAAS,QAAQ,WAAW;AAC3F,UAAM,IAAI,QAAQ,SAAS,OAAO,YAAY,CAAC,IAC3C,KAAK,OAAO,YAAY,CAAC,KACzB,2BAA2B,MAAM;AACrC,SAAK,eAAe,CAAC,GAAG,CAAC,GAAG,CAAC,MAAM;AAEnC,SAAK,+BAA+B;AACpC,SAAK,kCAAkC,CAAC;AACxC,WAAO,KAAK;AAAA,EACd;AACF;",
|
|
6
|
-
"names": []
|
|
7
|
-
}
|
|
@@ -1,7 +0,0 @@
|
|
|
1
|
-
{
|
|
2
|
-
"version": 3,
|
|
3
|
-
"sources": ["../../../../src/httpsnippet-lite/targets/powershell/common.ts"],
|
|
4
|
-
"sourcesContent": ["import { CodeBuilder } from '@/httpsnippet-lite/helpers/code-builder'\nimport { escapeString } from '@/httpsnippet-lite/helpers/escape'\nimport { getHeader } from '@/httpsnippet-lite/helpers/headers'\nimport type { Converter } from '@/httpsnippet-lite/targets/target'\n\nexport const generatePowershellConvert = (command: string): Converter<Record<string, any>> => {\n const convert: Converter<Record<string, any>> = ({\n method,\n headersObj,\n cookies,\n uriObj,\n fullUrl,\n postData,\n allHeaders,\n }) => {\n const { push, join } = new CodeBuilder()\n const methods = ['GET', 'POST', 'PUT', 'DELETE', 'PATCH', 'HEAD', 'OPTIONS']\n if (!methods.includes(method.toUpperCase())) {\n return 'Method not supported'\n }\n const commandOptions = []\n // Add headers, including the cookies\n const headers = Object.keys(headersObj)\n // construct headers\n if (headers.length) {\n push('$headers=@{}')\n headers.forEach((key) => {\n if (key !== 'connection') {\n // Not allowed\n push(`$headers.Add(\"${key}\", \"${escapeString(headersObj[key] as string, { escapeChar: '`' })}\")`)\n }\n })\n commandOptions.push('-Headers $headers')\n }\n // construct cookies\n if (cookies.length) {\n push('$session = New-Object Microsoft.PowerShell.Commands.WebRequestSession')\n cookies.forEach((cookie) => {\n push('$cookie = New-Object System.Net.Cookie')\n push(`$cookie.Name = '${cookie.name}'`)\n push(`$cookie.Value = '${cookie.value}'`)\n push(`$cookie.Domain = '${uriObj.host}'`)\n push('$session.Cookies.Add($cookie)')\n })\n commandOptions.push('-WebSession $session')\n }\n if (postData === null || postData === void 0 ? void 0 : postData.text) {\n commandOptions.push(\n `-ContentType '${escapeString(getHeader(allHeaders, 'content-type') as string, {\n delimiter: \"'\",\n escapeChar: '`',\n })}'`,\n )\n commandOptions.push(`-Body '${postData!.text}'`)\n }\n push(`$response = ${command} -Uri '${fullUrl}' -Method ${method} ${commandOptions.join(' ')}`)\n return join()\n }\n return convert\n}\n"],
|
|
5
|
-
"mappings": "AAAA,SAAS,mBAAmB;AAC5B,SAAS,oBAAoB;AAC7B,SAAS,iBAAiB;AAGnB,MAAM,4BAA4B,CAAC,YAAoD;AAC5F,QAAM,UAA0C,CAAC;AAAA,IAC/C;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACF,MAAM;AACJ,UAAM,EAAE,MAAM,KAAK,IAAI,IAAI,YAAY;AACvC,UAAM,UAAU,CAAC,OAAO,QAAQ,OAAO,UAAU,SAAS,QAAQ,SAAS;AAC3E,QAAI,CAAC,QAAQ,SAAS,OAAO,YAAY,CAAC,GAAG;AAC3C,aAAO;AAAA,IACT;AACA,UAAM,iBAAiB,CAAC;AAExB,UAAM,UAAU,OAAO,KAAK,UAAU;AAEtC,QAAI,QAAQ,QAAQ;AAClB,WAAK,cAAc;AACnB,cAAQ,QAAQ,CAAC,QAAQ;AACvB,YAAI,QAAQ,cAAc;AAExB,eAAK,iBAAiB,GAAG,OAAO,aAAa,WAAW,GAAG,GAAa,EAAE,YAAY,IAAI,CAAC,CAAC,IAAI;AAAA,QAClG;AAAA,MACF,CAAC;AACD,qBAAe,KAAK,mBAAmB;AAAA,IACzC;AAEA,QAAI,QAAQ,QAAQ;AAClB,WAAK,uEAAuE;AAC5E,cAAQ,QAAQ,CAAC,WAAW;AAC1B,aAAK,wCAAwC;AAC7C,aAAK,mBAAmB,OAAO,IAAI,GAAG;AACtC,aAAK,oBAAoB,OAAO,KAAK,GAAG;AACxC,aAAK,qBAAqB,OAAO,IAAI,GAAG;AACxC,aAAK,+BAA+B;AAAA,MACtC,CAAC;AACD,qBAAe,KAAK,sBAAsB;AAAA,IAC5C;AACA,QAAI,aAAa,QAAQ,aAAa,SAAS,SAAS,SAAS,MAAM;AACrE,qBAAe;AAAA,QACb,iBAAiB,aAAa,UAAU,YAAY,cAAc,GAAa;AAAA,UAC7E,WAAW;AAAA,UACX,YAAY;AAAA,QACd,CAAC,CAAC;AAAA,MACJ;AACA,qBAAe,KAAK,UAAU,SAAU,IAAI,GAAG;AAAA,IACjD;AACA,SAAK,eAAe,OAAO,UAAU,OAAO,aAAa,MAAM,IAAI,eAAe,KAAK,GAAG,CAAC,EAAE;AAC7F,WAAO,KAAK;AAAA,EACd;AACA,SAAO;AACT;",
|
|
6
|
-
"names": []
|
|
7
|
-
}
|
|
@@ -1,7 +0,0 @@
|
|
|
1
|
-
{
|
|
2
|
-
"version": 3,
|
|
3
|
-
"sources": ["../../../../../src/httpsnippet-lite/targets/powershell/restmethod/client.ts"],
|
|
4
|
-
"sourcesContent": ["import type { Client } from '@/httpsnippet-lite/targets/target.js'\n\nimport { generatePowershellConvert } from '../common.js'\n\nexport const restmethod: Client = {\n info: {\n key: 'restmethod',\n title: 'Invoke-RestMethod',\n link: 'https://docs.microsoft.com/en-us/powershell/module/Microsoft.PowerShell.Utility/Invoke-RestMethod',\n description: 'Powershell Invoke-RestMethod client',\n },\n convert: generatePowershellConvert('Invoke-RestMethod'),\n}\n"],
|
|
5
|
-
"mappings": "AAEA,SAAS,iCAAiC;AAEnC,MAAM,aAAqB;AAAA,EAChC,MAAM;AAAA,IACJ,KAAK;AAAA,IACL,OAAO;AAAA,IACP,MAAM;AAAA,IACN,aAAa;AAAA,EACf;AAAA,EACA,SAAS,0BAA0B,mBAAmB;AACxD;",
|
|
6
|
-
"names": []
|
|
7
|
-
}
|
|
@@ -1,7 +0,0 @@
|
|
|
1
|
-
{
|
|
2
|
-
"version": 3,
|
|
3
|
-
"sources": ["../../../../../src/httpsnippet-lite/targets/powershell/webrequest/client.ts"],
|
|
4
|
-
"sourcesContent": ["import type { Client } from '@/httpsnippet-lite/targets/target.js'\n\nimport { generatePowershellConvert } from '../common.js'\n\nexport const webrequest: Client = {\n info: {\n key: 'webrequest',\n title: 'Invoke-WebRequest',\n link: 'https://docs.microsoft.com/en-us/powershell/module/Microsoft.PowerShell.Utility/Invoke-WebRequest',\n description: 'Powershell Invoke-WebRequest client',\n },\n convert: generatePowershellConvert('Invoke-WebRequest'),\n}\n"],
|
|
5
|
-
"mappings": "AAEA,SAAS,iCAAiC;AAEnC,MAAM,aAAqB;AAAA,EAChC,MAAM;AAAA,IACJ,KAAK;AAAA,IACL,OAAO;AAAA,IACP,MAAM;AAAA,IACN,aAAa;AAAA,EACf;AAAA,EACA,SAAS,0BAA0B,mBAAmB;AACxD;",
|
|
6
|
-
"names": []
|
|
7
|
-
}
|
|
@@ -1,7 +0,0 @@
|
|
|
1
|
-
{
|
|
2
|
-
"version": 3,
|
|
3
|
-
"sources": ["../../../../../src/httpsnippet-lite/targets/python/python3/client.ts"],
|
|
4
|
-
"sourcesContent": ["/**\n * @description\n * HTTP code snippet generator for native Python3.\n *\n * @author\n * @montanaflynn\n *\n * for any questions or issues regarding the generated code snippet, please open an issue mentioning the author.\n */\n\nimport { CodeBuilder } from '@/httpsnippet-lite/helpers/code-builder'\nimport { escapeForDoubleQuotes } from '@/httpsnippet-lite/helpers/escape'\nimport type { Client } from '@/httpsnippet-lite/targets/target'\n\nexport const python3: Client = {\n info: {\n key: 'python3',\n title: 'http.client',\n link: 'https://docs.python.org/3/library/http.client.html',\n description: 'Python3 HTTP Client',\n },\n convert: ({ uriObj: { path, protocol, host }, postData, allHeaders, method }, options = {}) => {\n const { insecureSkipVerify = false } = options\n const { push, blank, join } = new CodeBuilder()\n // Start Request\n push('import http.client')\n if (insecureSkipVerify) {\n push('import ssl')\n }\n blank()\n // Check which protocol to be used for the client connection\n if (protocol === 'https:') {\n const sslContext = insecureSkipVerify ? ', context = ssl._create_unverified_context()' : ''\n push(`conn = http.client.HTTPSConnection(\"${host}\"${sslContext})`)\n blank()\n } else {\n push(`conn = http.client.HTTPConnection(\"${host}\")`)\n blank()\n }\n // Create payload string if it exists\n const payload = JSON.stringify(postData === null || postData === void 0 ? void 0 : postData.text)\n if (payload) {\n push(`payload = ${payload}`)\n blank()\n }\n // Create Headers\n const headers = allHeaders\n const headerCount = Object.keys(headers).length\n if (headerCount === 1) {\n for (const header in headers) {\n push(`headers = { '${header}': \"${escapeForDoubleQuotes(headers[header] as string)}\" }`)\n blank()\n }\n } else if (headerCount > 1) {\n let count = 1\n push('headers = {')\n for (const header in headers) {\n if (count++ !== headerCount) {\n push(` '${header}': \"${escapeForDoubleQuotes(headers[header] as string)}\",`)\n } else {\n push(` '${header}': \"${escapeForDoubleQuotes(headers[header] as string)}\"`)\n }\n }\n push('}')\n blank()\n }\n // Make Request\n if (payload && headerCount) {\n push(`conn.request(\"${method}\", \"${path}\", payload, headers)`)\n } else if (payload && !headerCount) {\n push(`conn.request(\"${method}\", \"${path}\", payload)`)\n } else if (!payload && headerCount) {\n push(`conn.request(\"${method}\", \"${path}\", headers=headers)`)\n } else {\n push(`conn.request(\"${method}\", \"${path}\")`)\n }\n // Get Response\n blank()\n push('res = conn.getresponse()')\n push('data = res.read()')\n blank()\n push('print(data.decode(\"utf-8\"))')\n return join()\n },\n}\n"],
|
|
5
|
-
"mappings": "AAUA,SAAS,mBAAmB;AAC5B,SAAS,6BAA6B;AAG/B,MAAM,UAAkB;AAAA,EAC7B,MAAM;AAAA,IACJ,KAAK;AAAA,IACL,OAAO;AAAA,IACP,MAAM;AAAA,IACN,aAAa;AAAA,EACf;AAAA,EACA,SAAS,CAAC,EAAE,QAAQ,EAAE,MAAM,UAAU,KAAK,GAAG,UAAU,YAAY,OAAO,GAAG,UAAU,CAAC,MAAM;AAC7F,UAAM,EAAE,qBAAqB,MAAM,IAAI;AACvC,UAAM,EAAE,MAAM,OAAO,KAAK,IAAI,IAAI,YAAY;AAE9C,SAAK,oBAAoB;AACzB,QAAI,oBAAoB;AACtB,WAAK,YAAY;AAAA,IACnB;AACA,UAAM;AAEN,QAAI,aAAa,UAAU;AACzB,YAAM,aAAa,qBAAqB,iDAAiD;AACzF,WAAK,uCAAuC,IAAI,IAAI,UAAU,GAAG;AACjE,YAAM;AAAA,IACR,OAAO;AACL,WAAK,sCAAsC,IAAI,IAAI;AACnD,YAAM;AAAA,IACR;AAEA,UAAM,UAAU,KAAK,UAAU,aAAa,QAAQ,aAAa,SAAS,SAAS,SAAS,IAAI;AAChG,QAAI,SAAS;AACX,WAAK,aAAa,OAAO,EAAE;AAC3B,YAAM;AAAA,IACR;AAEA,UAAM,UAAU;AAChB,UAAM,cAAc,OAAO,KAAK,OAAO,EAAE;AACzC,QAAI,gBAAgB,GAAG;AACrB,iBAAW,UAAU,SAAS;AAC5B,aAAK,gBAAgB,MAAM,OAAO,sBAAsB,QAAQ,MAAM,CAAW,CAAC,KAAK;AACvF,cAAM;AAAA,MACR;AAAA,IACF,WAAW,cAAc,GAAG;AAC1B,UAAI,QAAQ;AACZ,WAAK,aAAa;AAClB,iBAAW,UAAU,SAAS;AAC5B,YAAI,YAAY,aAAa;AAC3B,eAAK,QAAQ,MAAM,OAAO,sBAAsB,QAAQ,MAAM,CAAW,CAAC,IAAI;AAAA,QAChF,OAAO;AACL,eAAK,QAAQ,MAAM,OAAO,sBAAsB,QAAQ,MAAM,CAAW,CAAC,GAAG;AAAA,QAC/E;AAAA,MACF;AACA,WAAK,GAAG;AACR,YAAM;AAAA,IACR;AAEA,QAAI,WAAW,aAAa;AAC1B,WAAK,iBAAiB,MAAM,OAAO,IAAI,sBAAsB;AAAA,IAC/D,WAAW,WAAW,CAAC,aAAa;AAClC,WAAK,iBAAiB,MAAM,OAAO,IAAI,aAAa;AAAA,IACtD,WAAW,CAAC,WAAW,aAAa;AAClC,WAAK,iBAAiB,MAAM,OAAO,IAAI,qBAAqB;AAAA,IAC9D,OAAO;AACL,WAAK,iBAAiB,MAAM,OAAO,IAAI,IAAI;AAAA,IAC7C;AAEA,UAAM;AACN,SAAK,0BAA0B;AAC/B,SAAK,mBAAmB;AACxB,UAAM;AACN,SAAK,6BAA6B;AAClC,WAAO,KAAK;AAAA,EACd;AACF;",
|
|
6
|
-
"names": []
|
|
7
|
-
}
|
|
@@ -1,7 +0,0 @@
|
|
|
1
|
-
{
|
|
2
|
-
"version": 3,
|
|
3
|
-
"sources": ["../../../../../src/httpsnippet-lite/targets/r/httr/client.ts"],
|
|
4
|
-
"sourcesContent": ["/**\n * @description\n * HTTP code snippet generator for R using httr\n *\n * @author\n * @gabrielakoreeda\n *\n * for any questions or issues regarding the generated code snippet, please open an issue mentioning the author.\n */\n\nimport { CodeBuilder } from '@/httpsnippet-lite/helpers/code-builder'\nimport { escapeForDoubleQuotes, escapeForSingleQuotes } from '@/httpsnippet-lite/helpers/escape'\nimport { getHeader } from '@/httpsnippet-lite/helpers/headers'\nimport type { Client } from '@/httpsnippet-lite/targets/target'\n\nexport const httr: Client = {\n info: {\n key: 'httr',\n title: 'httr',\n link: 'https://cran.r-project.org/web/packages/httr/vignettes/quickstart.html',\n description: 'httr: Tools for Working with URLs and HTTP',\n },\n convert: ({ url, queryObj, queryString, postData, allHeaders, method }, options = {}) => {\n let _a, _b\n // Start snippet\n const { push, blank, join } = new CodeBuilder({\n indent: (_a = options.indent) !== null && _a !== void 0 ? _a : ' ',\n })\n // Import httr\n push('library(httr)')\n blank()\n // Set URL\n push(`url <- \"${url}\"`)\n blank()\n // Construct query string\n const qs = queryObj\n delete queryObj.key\n const entries = Object.entries(qs).flatMap(([key, value]) =>\n Array.isArray(value) ? value.map((item) => [key, item] as const) : ([[key, value]] as const),\n )\n const entriesCount = entries.length\n if (entriesCount === 1) {\n const entry = entries[0]!\n push(`queryString <- list(${entry[0]} = \"${entry[1]}\")`)\n blank()\n } else if (entriesCount > 1) {\n push('queryString <- list(')\n entries.forEach(([key, value], i) => {\n const isLastItem = i !== entriesCount - 1\n const maybeComma = isLastItem ? ',' : ''\n push(`${key} = \"${value}\"${maybeComma}`, 1)\n })\n push(')')\n blank()\n }\n // Construct payload\n const payload = JSON.stringify(postData === null || postData === void 0 ? void 0 : postData.text)\n if (payload) {\n push(`payload <- ${payload}`)\n blank()\n }\n // Define encode\n if (postData && (postData.text || postData.jsonObj || postData.params)) {\n switch (postData.mimeType) {\n case 'application/x-www-form-urlencoded':\n push('encode <- \"form\"')\n blank()\n break\n case 'application/json':\n push('encode <- \"json\"')\n blank()\n break\n case 'multipart/form-data':\n push('encode <- \"multipart\"')\n blank()\n break\n default:\n push('encode <- \"raw\"')\n blank()\n break\n }\n }\n // Construct headers\n const cookieHeader = getHeader(allHeaders, 'cookie')\n const acceptHeader = getHeader(allHeaders, 'accept')\n const setCookies = cookieHeader\n ? `set_cookies(\\`${String(cookieHeader).replace(/;/g, '\", `').replace(/` /g, '`').replace(/[=]/g, '` = \"')}\")`\n : undefined\n const setAccept = acceptHeader ? `accept(\"${escapeForDoubleQuotes(acceptHeader as string)}\")` : undefined\n const setContentType = `content_type(\"${escapeForDoubleQuotes((_b = postData === null || postData === void 0 ? void 0 : postData.mimeType) !== null && _b !== void 0 ? _b : 'application/octet-stream')}\")`\n const otherHeaders = Object.entries(allHeaders)\n // These headers are all handled separately:\n .filter(([key]) => !['cookie', 'accept', 'content-type'].includes(key.toLowerCase()))\n .map(([key, value]) => `'${key}' = '${escapeForSingleQuotes(value as string)}'`)\n .join(', ')\n const setHeaders = otherHeaders ? `add_headers(${otherHeaders})` : undefined\n // Construct request\n let request = `response <- VERB(\"${method}\", url`\n if (payload) {\n request += ', body = payload'\n }\n if (queryString.length) {\n request += ', query = queryString'\n }\n const headerAdditions = [setHeaders, setContentType, setAccept, setCookies].filter((x) => !!x).join(', ')\n if (headerAdditions) {\n request += `, ${headerAdditions}`\n }\n if (postData && (postData.text || postData.jsonObj || postData.params)) {\n request += ', encode = encode'\n }\n request += ')'\n push(request)\n blank()\n // Print response\n push('content(response, \"text\")')\n return join()\n },\n}\n"],
|
|
5
|
-
"mappings": "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",
|
|
6
|
-
"names": []
|
|
7
|
-
}
|
|
@@ -1,7 +0,0 @@
|
|
|
1
|
-
{
|
|
2
|
-
"version": 3,
|
|
3
|
-
"sources": ["../../../../../src/httpsnippet-lite/targets/ruby/native/client.ts"],
|
|
4
|
-
"sourcesContent": ["import { CodeBuilder } from '@/httpsnippet-lite/helpers/code-builder'\nimport { escapeForSingleQuotes } from '@/httpsnippet-lite/helpers/escape'\nimport type { Client } from '@/httpsnippet-lite/targets/target'\n\nexport const native: Client = {\n info: {\n key: 'native',\n title: 'net::http',\n link: 'http://ruby-doc.org/stdlib-2.2.1/libdoc/net/http/rdoc/Net/HTTP.html',\n description: 'Ruby HTTP client',\n },\n convert: ({ uriObj, method: rawMethod, fullUrl, postData, allHeaders }, options = {}) => {\n const { insecureSkipVerify = false } = options\n const { push, blank, join } = new CodeBuilder()\n push(\"require 'uri'\")\n push(\"require 'net/http'\")\n blank()\n // To support custom methods we check for the supported methods\n // and if doesn't exist then we build a custom class for it\n const method = rawMethod.toUpperCase()\n const methods = [\n 'GET',\n 'POST',\n 'HEAD',\n 'DELETE',\n 'PATCH',\n 'PUT',\n 'OPTIONS',\n 'COPY',\n 'LOCK',\n 'UNLOCK',\n 'MOVE',\n 'TRACE',\n ]\n const capMethod = method.charAt(0) + method.substring(1).toLowerCase()\n if (!methods.includes(method)) {\n push(`class Net::HTTP::${capMethod} < Net::HTTPRequest`)\n push(` METHOD = '${method.toUpperCase()}'`)\n push(\n ` REQUEST_HAS_BODY = '${(postData === null || postData === void 0 ? void 0 : postData.text) ? 'true' : 'false'}'`,\n )\n push(' RESPONSE_HAS_BODY = true')\n push('end')\n blank()\n }\n push(`url = URI(\"${fullUrl}\")`)\n blank()\n push('http = Net::HTTP.new(url.host, url.port)')\n if (uriObj.protocol === 'https:') {\n push('http.use_ssl = true')\n if (insecureSkipVerify) {\n push('http.verify_mode = OpenSSL::SSL::VERIFY_NONE')\n }\n }\n blank()\n push(`request = Net::HTTP::${capMethod}.new(url)`)\n const headers = Object.keys(allHeaders)\n if (headers.length) {\n headers.forEach((key) => {\n push(`request[\"${key}\"] = '${escapeForSingleQuotes(allHeaders[key] as string)}'`)\n })\n }\n if (postData === null || postData === void 0 ? void 0 : postData.text) {\n push(`request.body = ${JSON.stringify(postData!.text)}`)\n }\n blank()\n push('response = http.request(request)')\n push('puts response.read_body')\n return join()\n },\n}\n"],
|
|
5
|
-
"mappings": "AAAA,SAAS,mBAAmB;AAC5B,SAAS,6BAA6B;AAG/B,MAAM,SAAiB;AAAA,EAC5B,MAAM;AAAA,IACJ,KAAK;AAAA,IACL,OAAO;AAAA,IACP,MAAM;AAAA,IACN,aAAa;AAAA,EACf;AAAA,EACA,SAAS,CAAC,EAAE,QAAQ,QAAQ,WAAW,SAAS,UAAU,WAAW,GAAG,UAAU,CAAC,MAAM;AACvF,UAAM,EAAE,qBAAqB,MAAM,IAAI;AACvC,UAAM,EAAE,MAAM,OAAO,KAAK,IAAI,IAAI,YAAY;AAC9C,SAAK,eAAe;AACpB,SAAK,oBAAoB;AACzB,UAAM;AAGN,UAAM,SAAS,UAAU,YAAY;AACrC,UAAM,UAAU;AAAA,MACd;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,IACF;AACA,UAAM,YAAY,OAAO,OAAO,CAAC,IAAI,OAAO,UAAU,CAAC,EAAE,YAAY;AACrE,QAAI,CAAC,QAAQ,SAAS,MAAM,GAAG;AAC7B,WAAK,oBAAoB,SAAS,qBAAqB;AACvD,WAAK,eAAe,OAAO,YAAY,CAAC,GAAG;AAC3C;AAAA,QACE,0BAA0B,aAAa,QAAQ,aAAa,SAAS,SAAS,SAAS,QAAQ,SAAS,OAAO;AAAA,MACjH;AACA,WAAK,4BAA4B;AACjC,WAAK,KAAK;AACV,YAAM;AAAA,IACR;AACA,SAAK,cAAc,OAAO,IAAI;AAC9B,UAAM;AACN,SAAK,0CAA0C;AAC/C,QAAI,OAAO,aAAa,UAAU;AAChC,WAAK,qBAAqB;AAC1B,UAAI,oBAAoB;AACtB,aAAK,8CAA8C;AAAA,MACrD;AAAA,IACF;AACA,UAAM;AACN,SAAK,wBAAwB,SAAS,WAAW;AACjD,UAAM,UAAU,OAAO,KAAK,UAAU;AACtC,QAAI,QAAQ,QAAQ;AAClB,cAAQ,QAAQ,CAAC,QAAQ;AACvB,aAAK,YAAY,GAAG,SAAS,sBAAsB,WAAW,GAAG,CAAW,CAAC,GAAG;AAAA,MAClF,CAAC;AAAA,IACH;AACA,QAAI,aAAa,QAAQ,aAAa,SAAS,SAAS,SAAS,MAAM;AACrE,WAAK,kBAAkB,KAAK,UAAU,SAAU,IAAI,CAAC,EAAE;AAAA,IACzD;AACA,UAAM;AACN,SAAK,kCAAkC;AACvC,SAAK,yBAAyB;AAC9B,WAAO,KAAK;AAAA,EACd;AACF;",
|
|
6
|
-
"names": []
|
|
7
|
-
}
|