@scalar/snippetz 0.5.3 → 0.5.4

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (81) hide show
  1. package/dist/clients/index.d.ts.map +1 -1
  2. package/dist/clients/index.js +1 -1
  3. package/dist/clients/index.js.map +2 -2
  4. package/dist/httpsnippet-lite/esm/targets/c/libcurl/client.js +1 -1
  5. package/dist/httpsnippet-lite/esm/targets/c/libcurl/client.js.map +1 -1
  6. package/dist/libs/http.d.ts +27 -0
  7. package/dist/libs/http.d.ts.map +1 -0
  8. package/dist/libs/http.js +46 -0
  9. package/dist/libs/http.js.map +7 -0
  10. package/dist/{utils/objectToString.d.ts → libs/javascript.d.ts} +2 -2
  11. package/dist/libs/javascript.d.ts.map +1 -0
  12. package/dist/{utils/objectToString.js → libs/javascript.js} +7 -5
  13. package/dist/libs/javascript.js.map +7 -0
  14. package/dist/libs/php.d.ts +17 -0
  15. package/dist/libs/php.d.ts.map +1 -0
  16. package/dist/libs/php.js +57 -0
  17. package/dist/libs/php.js.map +7 -0
  18. package/dist/libs/rust.d.ts +23 -0
  19. package/dist/libs/rust.d.ts.map +1 -0
  20. package/dist/libs/rust.js +39 -0
  21. package/dist/libs/rust.js.map +7 -0
  22. package/dist/libs/shell.d.ts +15 -0
  23. package/dist/libs/shell.d.ts.map +1 -0
  24. package/dist/libs/shell.js +5 -0
  25. package/dist/libs/shell.js.map +7 -0
  26. package/dist/plugins/c/libcurl/libcurl.d.ts.map +1 -1
  27. package/dist/plugins/c/libcurl/libcurl.js.map +2 -2
  28. package/dist/plugins/csharp/httpclient/httpclient.js +1 -1
  29. package/dist/plugins/csharp/httpclient/httpclient.js.map +1 -1
  30. package/dist/plugins/js/axios/axios.d.ts.map +1 -1
  31. package/dist/plugins/js/axios/axios.js.map +2 -2
  32. package/dist/plugins/js/fetch/fetch.d.ts.map +1 -1
  33. package/dist/plugins/js/fetch/fetch.js +6 -6
  34. package/dist/plugins/js/fetch/fetch.js.map +2 -2
  35. package/dist/plugins/js/ofetch/ofetch.d.ts.map +1 -1
  36. package/dist/plugins/js/ofetch/ofetch.js +1 -1
  37. package/dist/plugins/js/ofetch/ofetch.js.map +2 -2
  38. package/dist/plugins/node/axios/axios.d.ts.map +1 -1
  39. package/dist/plugins/node/axios/axios.js.map +2 -2
  40. package/dist/plugins/node/fetch/fetch.d.ts.map +1 -1
  41. package/dist/plugins/node/fetch/fetch.js +6 -6
  42. package/dist/plugins/node/fetch/fetch.js.map +2 -2
  43. package/dist/plugins/node/ofetch/ofetch.d.ts.map +1 -1
  44. package/dist/plugins/node/ofetch/ofetch.js +1 -1
  45. package/dist/plugins/node/ofetch/ofetch.js.map +2 -2
  46. package/dist/plugins/node/undici/undici.d.ts.map +1 -1
  47. package/dist/plugins/node/undici/undici.js +3 -3
  48. package/dist/plugins/node/undici/undici.js.map +2 -2
  49. package/dist/plugins/php/curl/curl.d.ts.map +1 -1
  50. package/dist/plugins/php/curl/curl.js +3 -36
  51. package/dist/plugins/php/curl/curl.js.map +2 -2
  52. package/dist/plugins/php/guzzle/guzzle.d.ts.map +1 -1
  53. package/dist/plugins/php/guzzle/guzzle.js +5 -39
  54. package/dist/plugins/php/guzzle/guzzle.js.map +2 -2
  55. package/dist/plugins/rust/reqwest/reqwest.d.ts.map +1 -1
  56. package/dist/plugins/rust/reqwest/reqwest.js +19 -72
  57. package/dist/plugins/rust/reqwest/reqwest.js.map +2 -2
  58. package/dist/plugins/shell/curl/curl.d.ts.map +1 -1
  59. package/dist/plugins/shell/curl/curl.js +26 -11
  60. package/dist/plugins/shell/curl/curl.js.map +2 -2
  61. package/dist/utils/convertWithHttpSnippetLite.d.ts.map +1 -1
  62. package/dist/utils/convertWithHttpSnippetLite.js.map +2 -2
  63. package/dist/utils/index.d.ts +0 -2
  64. package/dist/utils/index.d.ts.map +1 -1
  65. package/dist/utils/index.js +0 -2
  66. package/dist/utils/index.js.map +2 -2
  67. package/package.json +3 -3
  68. package/dist/plugins/rust/rustString.d.ts +0 -9
  69. package/dist/plugins/rust/rustString.d.ts.map +0 -1
  70. package/dist/plugins/rust/rustString.js +0 -10
  71. package/dist/plugins/rust/rustString.js.map +0 -7
  72. package/dist/utils/create-search-params.d.ts +0 -4
  73. package/dist/utils/create-search-params.d.ts.map +0 -1
  74. package/dist/utils/create-search-params.js +0 -11
  75. package/dist/utils/create-search-params.js.map +0 -7
  76. package/dist/utils/needsQuotes.d.ts +0 -7
  77. package/dist/utils/needsQuotes.d.ts.map +0 -1
  78. package/dist/utils/needsQuotes.js +0 -7
  79. package/dist/utils/needsQuotes.js.map +0 -7
  80. package/dist/utils/objectToString.d.ts.map +0 -1
  81. package/dist/utils/objectToString.js.map +0 -7
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/clients/index.ts"],"names":[],"mappings":"AAsCA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,wBAAwB,CAAA;AAEpD;;GAEG;AACH,eAAO,MAAM,OAAO,EAAE,MAAM,EA+H3B,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/clients/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,wBAAwB,CAAA;AAyCpD;;GAEG;AACH,eAAO,MAAM,OAAO,EAAE,MAAM,EA+H3B,CAAA"}
@@ -26,9 +26,9 @@ import { phpCurl } from "../plugins/php/curl/index.js";
26
26
  import { phpGuzzle } from "../plugins/php/guzzle/index.js";
27
27
  import { powershellRestmethod } from "../plugins/powershell/restmethod/index.js";
28
28
  import { powershellWebrequest } from "../plugins/powershell/webrequest/index.js";
29
+ import { pythonHttpxAsync, pythonHttpxSync } from "../plugins/python/httpx/index.js";
29
30
  import { pythonPython3 } from "../plugins/python/python3/index.js";
30
31
  import { pythonRequests } from "../plugins/python/requests/index.js";
31
- import { pythonHttpxSync, pythonHttpxAsync } from "../plugins/python/httpx/index.js";
32
32
  import { rHttr } from "../plugins/r/httr/index.js";
33
33
  import { rubyNative } from "../plugins/ruby/native/index.js";
34
34
  import { rustReqwest } from "../plugins/rust/reqwest/index.js";
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../src/clients/index.ts"],
4
- "sourcesContent": ["import { cLibcurl } from '@/plugins/c/libcurl/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/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/nethttp'\nimport { javaOkhttp } from '@/plugins/java/okhttp/okhttp'\nimport { javaUnirest } from '@/plugins/java/unirest/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 { pythonPython3 } from '@/plugins/python/python3'\nimport { pythonRequests } from '@/plugins/python/requests'\nimport { pythonHttpxSync, pythonHttpxAsync } from '@/plugins/python/httpx'\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'\nimport type { Target } from '@scalar/types/snippetz'\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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",
4
+ "sourcesContent": ["import type { Target } from '@scalar/types/snippetz'\n\nimport { cLibcurl } from '@/plugins/c/libcurl/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/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/nethttp'\nimport { javaOkhttp } from '@/plugins/java/okhttp/okhttp'\nimport { javaUnirest } from '@/plugins/java/unirest/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": "AAEA,SAAS,gBAAgB;AACzB,SAAS,sBAAsB;AAC/B,SAAS,wBAAwB;AACjC,SAAS,uBAAuB;AAChC,SAAS,gBAAgB;AACzB,SAAS,wBAAwB;AACjC,SAAS,gBAAgB;AACzB,SAAS,kBAAkB;AAC3B,SAAS,qBAAqB;AAC9B,SAAS,mBAAmB;AAC5B,SAAS,kBAAkB;AAC3B,SAAS,mBAAmB;AAC5B,SAAS,eAAe;AACxB,SAAS,eAAe;AACxB,SAAS,gBAAgB;AACzB,SAAS,gBAAgB;AACzB,SAAS,aAAa;AACtB,SAAS,oBAAoB;AAC7B,SAAS,iBAAiB;AAC1B,SAAS,iBAAiB;AAC1B,SAAS,kBAAkB;AAC3B,SAAS,kBAAkB;AAC3B,SAAS,wBAAwB;AACjC,SAAS,mBAAmB;AAC5B,SAAS,eAAe;AACxB,SAAS,iBAAiB;AAC1B,SAAS,4BAA4B;AACrC,SAAS,4BAA4B;AACrC,SAAS,kBAAkB,uBAAuB;AAClD,SAAS,qBAAqB;AAC9B,SAAS,sBAAsB;AAC/B,SAAS,aAAa;AACtB,SAAS,kBAAkB;AAC3B,SAAS,mBAAmB;AAC5B,SAAS,iBAAiB;AAC1B,SAAS,mBAAmB;AAC5B,SAAS,iBAAiB;AAC1B,SAAS,yBAAyB;AAK3B,MAAM,UAAoB;AAAA,EAC/B;AAAA,IACE,KAAK;AAAA,IACL,OAAO;AAAA,IACP,SAAS;AAAA,IACT,SAAS,CAAC,QAAQ;AAAA,EACpB;AAAA,EACA;AAAA,IACE,KAAK;AAAA,IACL,OAAO;AAAA,IACP,SAAS;AAAA,IACT,SAAS,CAAC,kBAAkB,eAAe;AAAA,EAC7C;AAAA,EACA;AAAA,IACE,KAAK;AAAA,IACL,OAAO;AAAA,IACP,SAAS;AAAA,IACT,SAAS,CAAC,cAAc;AAAA,EAC1B;AAAA,EACA;AAAA,IACE,KAAK;AAAA,IACL,OAAO;AAAA,IACP,SAAS;AAAA,IACT,SAAS,CAAC,QAAQ;AAAA,EACpB;AAAA,EACA;AAAA,IACE,KAAK;AAAA,IACL,OAAO;AAAA,IACP,SAAS;AAAA,IACT,SAAS,CAAC,gBAAgB;AAAA,EAC5B;AAAA,EACA;AAAA,IACE,KAAK;AAAA,IACL,OAAO;AAAA,IACP,SAAS;AAAA,IACT,SAAS,CAAC,QAAQ;AAAA,EACpB;AAAA,EACA;AAAA,IACE,KAAK;AAAA,IACL,OAAO;AAAA,IACP,SAAS;AAAA,IACT,SAAS,CAAC,UAAU;AAAA,EACtB;AAAA,EACA;AAAA,IACE,KAAK;AAAA,IACL,OAAO;AAAA,IACP,SAAS;AAAA,IACT,SAAS,CAAC,eAAe,aAAa,YAAY,WAAW;AAAA,EAC/D;AAAA,EACA;AAAA,IACE,KAAK;AAAA,IACL,OAAO;AAAA,IACP,SAAS;AAAA,IACT,SAAS,CAAC,SAAS,SAAS,UAAU,UAAU,KAAK;AAAA,EACvD;AAAA,EACA;AAAA,IACE,KAAK;AAAA,IACL,OAAO;AAAA,IACP,SAAS;AAAA,IACT,SAAS,CAAC,YAAY;AAAA,EACxB;AAAA,EACA;AAAA,IACE,KAAK;AAAA,IACL,OAAO;AAAA,IACP,SAAS;AAAA,IACT,SAAS,CAAC,WAAW,WAAW,YAAY,UAAU;AAAA,EACxD;AAAA,EACA;AAAA,IACE,KAAK;AAAA,IACL,OAAO;AAAA,IACP,SAAS;AAAA,IACT,SAAS,CAAC,gBAAgB;AAAA,EAC5B;AAAA,EACA;AAAA,IACE,KAAK;AAAA,IACL,OAAO;AAAA,IACP,SAAS;AAAA,IACT,SAAS,CAAC,WAAW;AAAA,EACvB;AAAA,EACA;AAAA,IACE,KAAK;AAAA,IACL,OAAO;AAAA,IACP,SAAS;AAAA,IACT,SAAS,CAAC,SAAS,SAAS;AAAA,EAC9B;AAAA,EACA;AAAA,IACE,KAAK;AAAA,IACL,OAAO;AAAA,IACP,SAAS;AAAA,IACT,SAAS,CAAC,sBAAsB,oBAAoB;AAAA,EACtD;AAAA,EACA;AAAA,IACE,KAAK;AAAA,IACL,OAAO;AAAA,IACP,SAAS;AAAA,IACT,SAAS,CAAC,eAAe,gBAAgB,iBAAiB,gBAAgB;AAAA,EAC5E;AAAA,EACA;AAAA,IACE,KAAK;AAAA,IACL,OAAO;AAAA,IACP,SAAS;AAAA,IACT,SAAS,CAAC,KAAK;AAAA,EACjB;AAAA,EACA;AAAA,IACE,KAAK;AAAA,IACL,OAAO;AAAA,IACP,SAAS;AAAA,IACT,SAAS,CAAC,UAAU;AAAA,EACtB;AAAA,EACA;AAAA,IACE,KAAK;AAAA,IACL,OAAO;AAAA,IACP,SAAS;AAAA,IACT,SAAS,CAAC,WAAW;AAAA,EACvB;AAAA,EACA;AAAA,IACE,KAAK;AAAA,IACL,OAAO;AAAA,IACP,SAAS;AAAA,IACT,SAAS,CAAC,WAAW,WAAW,WAAW;AAAA,EAC7C;AAAA,EACA;AAAA,IACE,KAAK;AAAA,IACL,OAAO;AAAA,IACP,SAAS;AAAA,IACT,SAAS,CAAC,iBAAiB;AAAA,EAC7B;AACF;",
6
6
  "names": []
7
7
  }
@@ -1,4 +1,4 @@
1
- import { createSearchParams } from "../../../../../utils/create-search-params.js";
1
+ import { createSearchParams } from "../../../../../libs/http.js";
2
2
  import { CodeBuilder } from "../../../helpers/code-builder.js";
3
3
  import { escapeForDoubleQuotes } from "../../../helpers/escape.js";
4
4
  const libcurl = {
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../../../../src/httpsnippet-lite/esm/targets/c/libcurl/client.ts"],
4
- "sourcesContent": ["// @ts-nocheck\nimport { createSearchParams } from '../../../../../utils/create-search-params.js'\nimport { CodeBuilder } from '../../../helpers/code-builder.js'\nimport { escapeForDoubleQuotes } from '../../../helpers/escape.js'\n\nexport const libcurl = {\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(\n `curl_easy_setopt(hnd, CURLOPT_CUSTOMREQUEST, \"${method.toUpperCase()}\");`,\n )\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])}\");`,\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(\n `curl_easy_setopt(hnd, CURLOPT_POSTFIELDS, ${JSON.stringify(postData.text)});`,\n )\n } else if (postData.mimeType === 'application/x-www-form-urlencoded' && postData.params) {\n push(\n `curl_easy_setopt(hnd, CURLOPT_POSTFIELDS, \"${createSearchParams(postData.params).toString()}\");`,\n )\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"],
4
+ "sourcesContent": ["// @ts-nocheck\nimport { createSearchParams } from '../../../../../libs/http.js'\nimport { CodeBuilder } from '../../../helpers/code-builder.js'\nimport { escapeForDoubleQuotes } from '../../../helpers/escape.js'\n\nexport const libcurl = {\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(\n `curl_easy_setopt(hnd, CURLOPT_CUSTOMREQUEST, \"${method.toUpperCase()}\");`,\n )\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])}\");`,\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(\n `curl_easy_setopt(hnd, CURLOPT_POSTFIELDS, ${JSON.stringify(postData.text)});`,\n )\n } else if (postData.mimeType === 'application/x-www-form-urlencoded' && postData.params) {\n push(\n `curl_easy_setopt(hnd, CURLOPT_POSTFIELDS, \"${createSearchParams(postData.params).toString()}\");`,\n )\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
5
  "mappings": "AACA,SAAS,0BAA0B;AACnC,SAAS,mBAAmB;AAC5B,SAAS,6BAA6B;AAE/B,MAAM,UAAU;AAAA,EACrB,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;AAAA,MACE,iDAAiD,OAAO,YAAY,CAAC;AAAA,IACvE;AACA,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,CAAC,CAAC;AAAA,UAC/F;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;AAAA,UACE,6CAA6C,KAAK,UAAU,SAAS,IAAI,CAAC;AAAA,QAC5E;AAAA,MACF,WAAW,SAAS,aAAa,uCAAuC,SAAS,QAAQ;AACvF;AAAA,UACE,8CAA8C,mBAAmB,SAAS,MAAM,EAAE,SAAS,CAAC;AAAA,QAC9F;AAAA,MACF,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
6
  "names": []
7
7
  }
@@ -0,0 +1,27 @@
1
+ import type { HarRequest } from '@scalar/types/snippetz';
2
+ /**
3
+ * Normalizes the request object with defaults
4
+ */
5
+ export declare function normalizeRequest(request: Partial<HarRequest>): Partial<HarRequest> & {
6
+ method: string;
7
+ };
8
+ /**
9
+ * Builds the query string from request parameters
10
+ */
11
+ export declare function buildQueryString(queryParams?: Array<{
12
+ name: string;
13
+ value: string;
14
+ }>): string;
15
+ /**
16
+ * Creates a new URL search params object and sets query params so we can handle arrays
17
+ */
18
+ export declare const createSearchParams: (query?: HarRequest["queryString"]) => URLSearchParams;
19
+ /**
20
+ * Builds the complete URL with query string
21
+ */
22
+ export declare function buildUrl(baseUrl: string, queryString: string): string;
23
+ /**
24
+ * Processes headers and cookies into a headers object
25
+ */
26
+ export declare function processHeaders(request: Partial<HarRequest>): Record<string, string>;
27
+ //# sourceMappingURL=http.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"http.d.ts","sourceRoot":"","sources":["../../src/libs/http.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,wBAAwB,CAAA;AAExD;;GAEG;AACH,wBAAgB,gBAAgB,CAAC,OAAO,EAAE,OAAO,CAAC,UAAU,CAAC,GAAG,OAAO,CAAC,UAAU,CAAC,GAAG;IAAE,MAAM,EAAE,MAAM,CAAA;CAAE,CAKvG;AAED;;GAEG;AACH,wBAAgB,gBAAgB,CAAC,WAAW,CAAC,EAAE,KAAK,CAAC;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,MAAM,CAAA;CAAE,CAAC,GAAG,MAAM,CAO7F;AAED;;GAEG;AACH,eAAO,MAAM,kBAAkB,GAAI,QAAO,UAAU,CAAC,aAAa,CAAM,oBAQvE,CAAA;AAED;;GAEG;AACH,wBAAgB,QAAQ,CAAC,OAAO,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,GAAG,MAAM,CAErE;AAED;;GAEG;AACH,wBAAgB,cAAc,CAAC,OAAO,EAAE,OAAO,CAAC,UAAU,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAqBnF"}
@@ -0,0 +1,46 @@
1
+ function normalizeRequest(request) {
2
+ return {
3
+ ...request,
4
+ method: (request.method || "GET").toUpperCase()
5
+ };
6
+ }
7
+ function buildQueryString(queryParams) {
8
+ if (!queryParams?.length) {
9
+ return "";
10
+ }
11
+ const queryPairs = queryParams.map((param) => `${encodeURIComponent(param.name)}=${encodeURIComponent(param.value)}`);
12
+ return `?${queryPairs.join("&")}`;
13
+ }
14
+ const createSearchParams = (query = []) => {
15
+ const searchParams = new URLSearchParams();
16
+ query.forEach((q) => {
17
+ searchParams.append(q.name, q.value);
18
+ });
19
+ return searchParams;
20
+ };
21
+ function buildUrl(baseUrl, queryString) {
22
+ return `${baseUrl}${queryString}`;
23
+ }
24
+ function processHeaders(request) {
25
+ const headers = {};
26
+ if (request.headers) {
27
+ for (const header of request.headers) {
28
+ if (header.value && !/[; ]/.test(header.name)) {
29
+ headers[header.name] = header.value;
30
+ }
31
+ }
32
+ }
33
+ if (request.cookies && request.cookies.length > 0) {
34
+ const cookieString = request.cookies.map((cookie) => `${encodeURIComponent(cookie.name)}=${encodeURIComponent(cookie.value)}`).join("; ");
35
+ headers["Cookie"] = cookieString;
36
+ }
37
+ return headers;
38
+ }
39
+ export {
40
+ buildQueryString,
41
+ buildUrl,
42
+ createSearchParams,
43
+ normalizeRequest,
44
+ processHeaders
45
+ };
46
+ //# sourceMappingURL=http.js.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../src/libs/http.ts"],
4
+ "sourcesContent": ["import type { HarRequest } from '@scalar/types/snippetz'\n\n/**\n * Normalizes the request object with defaults\n */\nexport function normalizeRequest(request: Partial<HarRequest>): Partial<HarRequest> & { method: string } {\n return {\n ...request,\n method: (request.method || 'GET').toUpperCase(),\n }\n}\n\n/**\n * Builds the query string from request parameters\n */\nexport function buildQueryString(queryParams?: Array<{ name: string; value: string }>): string {\n if (!queryParams?.length) {\n return ''\n }\n\n const queryPairs = queryParams.map((param) => `${encodeURIComponent(param.name)}=${encodeURIComponent(param.value)}`)\n return `?${queryPairs.join('&')}`\n}\n\n/**\n * Creates a new URL search params object and sets query params so we can handle arrays\n */\nexport const createSearchParams = (query: HarRequest['queryString'] = []) => {\n const searchParams = new URLSearchParams()\n\n query.forEach((q: { name: string; value: string }) => {\n searchParams.append(q.name, q.value)\n })\n\n return searchParams\n}\n\n/**\n * Builds the complete URL with query string\n */\nexport function buildUrl(baseUrl: string, queryString: string): string {\n return `${baseUrl}${queryString}`\n}\n\n/**\n * Processes headers and cookies into a headers object\n */\nexport function processHeaders(request: Partial<HarRequest>): Record<string, string> {\n const headers: Record<string, string> = {}\n\n // Process regular headers\n if (request.headers) {\n for (const header of request.headers) {\n if (header.value && !/[; ]/.test(header.name)) {\n headers[header.name] = header.value\n }\n }\n }\n\n // Process cookies\n if (request.cookies && request.cookies.length > 0) {\n const cookieString = request.cookies\n .map((cookie) => `${encodeURIComponent(cookie.name)}=${encodeURIComponent(cookie.value)}`)\n .join('; ')\n headers['Cookie'] = cookieString\n }\n\n return headers\n}\n"],
5
+ "mappings": "AAKO,SAAS,iBAAiB,SAAwE;AACvG,SAAO;AAAA,IACL,GAAG;AAAA,IACH,SAAS,QAAQ,UAAU,OAAO,YAAY;AAAA,EAChD;AACF;AAKO,SAAS,iBAAiB,aAA8D;AAC7F,MAAI,CAAC,aAAa,QAAQ;AACxB,WAAO;AAAA,EACT;AAEA,QAAM,aAAa,YAAY,IAAI,CAAC,UAAU,GAAG,mBAAmB,MAAM,IAAI,CAAC,IAAI,mBAAmB,MAAM,KAAK,CAAC,EAAE;AACpH,SAAO,IAAI,WAAW,KAAK,GAAG,CAAC;AACjC;AAKO,MAAM,qBAAqB,CAAC,QAAmC,CAAC,MAAM;AAC3E,QAAM,eAAe,IAAI,gBAAgB;AAEzC,QAAM,QAAQ,CAAC,MAAuC;AACpD,iBAAa,OAAO,EAAE,MAAM,EAAE,KAAK;AAAA,EACrC,CAAC;AAED,SAAO;AACT;AAKO,SAAS,SAAS,SAAiB,aAA6B;AACrE,SAAO,GAAG,OAAO,GAAG,WAAW;AACjC;AAKO,SAAS,eAAe,SAAsD;AACnF,QAAM,UAAkC,CAAC;AAGzC,MAAI,QAAQ,SAAS;AACnB,eAAW,UAAU,QAAQ,SAAS;AACpC,UAAI,OAAO,SAAS,CAAC,OAAO,KAAK,OAAO,IAAI,GAAG;AAC7C,gBAAQ,OAAO,IAAI,IAAI,OAAO;AAAA,MAChC;AAAA,IACF;AAAA,EACF;AAGA,MAAI,QAAQ,WAAW,QAAQ,QAAQ,SAAS,GAAG;AACjD,UAAM,eAAe,QAAQ,QAC1B,IAAI,CAAC,WAAW,GAAG,mBAAmB,OAAO,IAAI,CAAC,IAAI,mBAAmB,OAAO,KAAK,CAAC,EAAE,EACxF,KAAK,IAAI;AACZ,YAAQ,QAAQ,IAAI;AAAA,EACtB;AAEA,SAAO;AACT;",
6
+ "names": []
7
+ }
@@ -2,7 +2,7 @@
2
2
  * Represents a raw code that should not be quoted, e.g. `JSON.stringify(...)`.
3
3
  * If consists of multiple lines, they will be indented properly.
4
4
  */
5
- export declare class Unquoted {
5
+ export declare class Raw {
6
6
  value: string;
7
7
  constructor(value: string);
8
8
  }
@@ -12,4 +12,4 @@ export declare class Unquoted {
12
12
  * Handles nested objects, arrays, and special string values
13
13
  */
14
14
  export declare function objectToString(obj: Record<string, any>, indent?: number): string;
15
- //# sourceMappingURL=objectToString.d.ts.map
15
+ //# sourceMappingURL=javascript.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"javascript.d.ts","sourceRoot":"","sources":["../../src/libs/javascript.ts"],"names":[],"mappings":"AASA;;;GAGG;AACH,qBAAa,GAAG;IACK,KAAK,EAAE,MAAM;gBAAb,KAAK,EAAE,MAAM;CACjC;AAED;;;;GAIG;AACH,wBAAgB,cAAc,CAAC,GAAG,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,EAAE,MAAM,SAAI,GAAG,MAAM,CA2D3E"}
@@ -1,5 +1,7 @@
1
- import { needsQuotes } from "./needsQuotes.js";
2
- class Unquoted {
1
+ function needsQuotes(key) {
2
+ return /\s|-/.test(key);
3
+ }
4
+ class Raw {
3
5
  constructor(value) {
4
6
  this.value = value;
5
7
  }
@@ -13,7 +15,7 @@ function objectToString(obj, indent = 0) {
13
15
  }
14
16
  for (const [key, value] of Object.entries(obj)) {
15
17
  const formattedKey = needsQuotes(key) ? `'${key}'` : key;
16
- if (value instanceof Unquoted) {
18
+ if (value instanceof Raw) {
17
19
  const lines = value.value.split("\n");
18
20
  let formattedValue = `${value.value}`;
19
21
  if (lines.length > 1) {
@@ -61,7 +63,7 @@ function indentString(str, indent) {
61
63
  return str.split("\n").map((line) => `${indentation}${line}`).join("\n");
62
64
  }
63
65
  export {
64
- Unquoted,
66
+ Raw,
65
67
  objectToString
66
68
  };
67
- //# sourceMappingURL=objectToString.js.map
69
+ //# sourceMappingURL=javascript.js.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../src/libs/javascript.ts"],
4
+ "sourcesContent": ["/**\n * Checks if a key needs to be wrapped in quotes when used as an object property\n *\n * Returns true if the key contains spaces or hyphens\n */\nfunction needsQuotes(key: string) {\n return /\\s|-/.test(key)\n}\n\n/**\n * Represents a raw code that should not be quoted, e.g. `JSON.stringify(...)`.\n * If consists of multiple lines, they will be indented properly.\n */\nexport class Raw {\n constructor(public value: string) {}\n}\n\n/**\n * Converts an object into a string representation with proper formatting and indentation\n *\n * Handles nested objects, arrays, and special string values\n */\nexport function objectToString(obj: Record<string, any>, indent = 0): string {\n const parts = []\n const indentation = ' '.repeat(indent)\n const innerIndentation = ' '.repeat(indent + 2)\n\n if (Object.keys(obj).length === 0) {\n return '{}'\n }\n\n for (const [key, value] of Object.entries(obj)) {\n const formattedKey = needsQuotes(key) ? `'${key}'` : key\n\n if (value instanceof Raw) {\n const lines = value.value.split('\\n')\n let formattedValue = `${value.value}`\n\n if (lines.length > 1) {\n formattedValue = lines\n .map((line, index) => {\n if (index === 0) {\n return line\n }\n\n return `${innerIndentation}${line}`\n })\n .join('\\n')\n }\n\n parts.push(`${innerIndentation}${formattedKey}: ${formattedValue}`)\n } else if (Array.isArray(value)) {\n const items = value.map((item) => {\n if (typeof item === 'string') {\n return `'${item}'`\n }\n if (item && typeof item === 'object') {\n return objectToString(item)\n }\n return JSON.stringify(item)\n })\n\n if (items.some((item) => item.includes('\\n'))) {\n // format vertically if any array element contains a newline\n const arrayString = items.map((item) => indentString(item, indent + 4)).join(',\\n')\n parts.push(`${innerIndentation}${formattedKey}: [\\n${arrayString}\\n${innerIndentation}]`)\n } else {\n parts.push(`${innerIndentation}${formattedKey}: [${items.join(', ')}]`)\n }\n } else if (value && typeof value === 'object') {\n parts.push(`${innerIndentation}${formattedKey}: ${objectToString(value, indent + 2)}`)\n } else if (typeof value === 'string') {\n const formattedValue = `'${value}'`\n\n parts.push(`${innerIndentation}${formattedKey}: ${formattedValue}`)\n } else {\n parts.push(`${innerIndentation}${formattedKey}: ${value}`)\n }\n }\n\n return `{\\n${parts.join(',\\n')}\\n${indentation}}`\n}\n\nfunction indentString(str: string, indent: number) {\n const indentation = ' '.repeat(indent)\n return str\n .split('\\n')\n .map((line) => `${indentation}${line}`)\n .join('\\n')\n}\n"],
5
+ "mappings": "AAKA,SAAS,YAAY,KAAa;AAChC,SAAO,OAAO,KAAK,GAAG;AACxB;AAMO,MAAM,IAAI;AAAA,EACf,YAAmB,OAAe;AAAf;AAAA,EAAgB;AACrC;AAOO,SAAS,eAAe,KAA0B,SAAS,GAAW;AAC3E,QAAM,QAAQ,CAAC;AACf,QAAM,cAAc,IAAI,OAAO,MAAM;AACrC,QAAM,mBAAmB,IAAI,OAAO,SAAS,CAAC;AAE9C,MAAI,OAAO,KAAK,GAAG,EAAE,WAAW,GAAG;AACjC,WAAO;AAAA,EACT;AAEA,aAAW,CAAC,KAAK,KAAK,KAAK,OAAO,QAAQ,GAAG,GAAG;AAC9C,UAAM,eAAe,YAAY,GAAG,IAAI,IAAI,GAAG,MAAM;AAErD,QAAI,iBAAiB,KAAK;AACxB,YAAM,QAAQ,MAAM,MAAM,MAAM,IAAI;AACpC,UAAI,iBAAiB,GAAG,MAAM,KAAK;AAEnC,UAAI,MAAM,SAAS,GAAG;AACpB,yBAAiB,MACd,IAAI,CAAC,MAAM,UAAU;AACpB,cAAI,UAAU,GAAG;AACf,mBAAO;AAAA,UACT;AAEA,iBAAO,GAAG,gBAAgB,GAAG,IAAI;AAAA,QACnC,CAAC,EACA,KAAK,IAAI;AAAA,MACd;AAEA,YAAM,KAAK,GAAG,gBAAgB,GAAG,YAAY,KAAK,cAAc,EAAE;AAAA,IACpE,WAAW,MAAM,QAAQ,KAAK,GAAG;AAC/B,YAAM,QAAQ,MAAM,IAAI,CAAC,SAAS;AAChC,YAAI,OAAO,SAAS,UAAU;AAC5B,iBAAO,IAAI,IAAI;AAAA,QACjB;AACA,YAAI,QAAQ,OAAO,SAAS,UAAU;AACpC,iBAAO,eAAe,IAAI;AAAA,QAC5B;AACA,eAAO,KAAK,UAAU,IAAI;AAAA,MAC5B,CAAC;AAED,UAAI,MAAM,KAAK,CAAC,SAAS,KAAK,SAAS,IAAI,CAAC,GAAG;AAE7C,cAAM,cAAc,MAAM,IAAI,CAAC,SAAS,aAAa,MAAM,SAAS,CAAC,CAAC,EAAE,KAAK,KAAK;AAClF,cAAM,KAAK,GAAG,gBAAgB,GAAG,YAAY;AAAA,EAAQ,WAAW;AAAA,EAAK,gBAAgB,GAAG;AAAA,MAC1F,OAAO;AACL,cAAM,KAAK,GAAG,gBAAgB,GAAG,YAAY,MAAM,MAAM,KAAK,IAAI,CAAC,GAAG;AAAA,MACxE;AAAA,IACF,WAAW,SAAS,OAAO,UAAU,UAAU;AAC7C,YAAM,KAAK,GAAG,gBAAgB,GAAG,YAAY,KAAK,eAAe,OAAO,SAAS,CAAC,CAAC,EAAE;AAAA,IACvF,WAAW,OAAO,UAAU,UAAU;AACpC,YAAM,iBAAiB,IAAI,KAAK;AAEhC,YAAM,KAAK,GAAG,gBAAgB,GAAG,YAAY,KAAK,cAAc,EAAE;AAAA,IACpE,OAAO;AACL,YAAM,KAAK,GAAG,gBAAgB,GAAG,YAAY,KAAK,KAAK,EAAE;AAAA,IAC3D;AAAA,EACF;AAEA,SAAO;AAAA,EAAM,MAAM,KAAK,KAAK,CAAC;AAAA,EAAK,WAAW;AAChD;AAEA,SAAS,aAAa,KAAa,QAAgB;AACjD,QAAM,cAAc,IAAI,OAAO,MAAM;AACrC,SAAO,IACJ,MAAM,IAAI,EACV,IAAI,CAAC,SAAS,GAAG,WAAW,GAAG,IAAI,EAAE,EACrC,KAAK,IAAI;AACd;",
6
+ "names": []
7
+ }
@@ -0,0 +1,17 @@
1
+ /**
2
+ * Represents a raw PHP code that should not be quoted, e.g. `fopen('test.txt', 'r')`.
3
+ * If it consists of multiple lines, they will be indented properly.
4
+ */
5
+ export declare class Raw {
6
+ value: string;
7
+ constructor(value: string);
8
+ }
9
+ /**
10
+ * Converts a JavaScript object or value into a PHP array or scalar string representation.
11
+ * Handles nested arrays and objects, proper string escaping, and preserves indentation for readability.
12
+ *
13
+ * @example
14
+ * objectToString({ foo: 'bar', baz: 'qux' }) // => "['foo' => 'bar', 'baz' => 'qux']"
15
+ */
16
+ export declare function objectToString(data: unknown, level?: number): string;
17
+ //# sourceMappingURL=php.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"php.d.ts","sourceRoot":"","sources":["../../src/libs/php.ts"],"names":[],"mappings":"AAOA;;;GAGG;AACH,qBAAa,GAAG;IACK,KAAK,EAAE,MAAM;gBAAb,KAAK,EAAE,MAAM;CACjC;AAED;;;;;;GAMG;AACH,wBAAgB,cAAc,CAAC,IAAI,EAAE,OAAO,EAAE,KAAK,SAAI,GAAG,MAAM,CAqD/D"}
@@ -0,0 +1,57 @@
1
+ function indent(level) {
2
+ return " ".repeat(level * 2);
3
+ }
4
+ class Raw {
5
+ constructor(value) {
6
+ this.value = value;
7
+ }
8
+ }
9
+ function objectToString(data, level = 0) {
10
+ if (data === null || data === void 0) {
11
+ return "null";
12
+ }
13
+ if (data instanceof Raw) {
14
+ const lines = data.value.split("\n");
15
+ if (lines.length > 1) {
16
+ const innerIndentation = indent(level + 1);
17
+ return lines.map((line, index) => {
18
+ if (index === 0) {
19
+ return line;
20
+ }
21
+ return `${innerIndentation}${line}`;
22
+ }).join("\n");
23
+ }
24
+ return data.value;
25
+ }
26
+ if (typeof data === "string") {
27
+ return `'${data.replace(/\\/g, "\\\\").replace(/'/g, "\\'")}'`;
28
+ }
29
+ if (typeof data === "number" || typeof data === "boolean") {
30
+ return String(data);
31
+ }
32
+ if (Array.isArray(data)) {
33
+ if (data.length === 0) {
34
+ return "[]";
35
+ }
36
+ const items = data.map((item) => objectToString(item, level + 1)).join(",\n" + indent(level + 1));
37
+ return `[
38
+ ${indent(level + 1)}${items}
39
+ ${indent(level)}]`;
40
+ }
41
+ if (typeof data === "object") {
42
+ const entries = Object.entries(data);
43
+ if (entries.length === 0) {
44
+ return "[]";
45
+ }
46
+ const items = entries.map(([key, value]) => `'${key}' => ${objectToString(value, level + 1)}`).join(",\n" + indent(level + 1));
47
+ return `[
48
+ ${indent(level + 1)}${items}
49
+ ${indent(level)}]`;
50
+ }
51
+ return "null";
52
+ }
53
+ export {
54
+ Raw,
55
+ objectToString
56
+ };
57
+ //# sourceMappingURL=php.js.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../src/libs/php.ts"],
4
+ "sourcesContent": ["/**\n * Generates a consistent indentation string based on the specified indentation level.\n */\nfunction indent(level: number): string {\n return ' '.repeat(level * 2)\n}\n\n/**\n * Represents a raw PHP code that should not be quoted, e.g. `fopen('test.txt', 'r')`.\n * If it consists of multiple lines, they will be indented properly.\n */\nexport class Raw {\n constructor(public value: string) {}\n}\n\n/**\n * Converts a JavaScript object or value into a PHP array or scalar string representation.\n * Handles nested arrays and objects, proper string escaping, and preserves indentation for readability.\n *\n * @example\n * objectToString({ foo: 'bar', baz: 'qux' }) // => \"['foo' => 'bar', 'baz' => 'qux']\"\n */\nexport function objectToString(data: unknown, level = 0): string {\n if (data === null || data === undefined) {\n return 'null'\n }\n\n if (data instanceof Raw) {\n const lines = data.value.split('\\n')\n if (lines.length > 1) {\n const innerIndentation = indent(level + 1)\n return lines\n .map((line, index) => {\n if (index === 0) {\n return line\n }\n return `${innerIndentation}${line}`\n })\n .join('\\n')\n }\n return data.value\n }\n\n if (typeof data === 'string') {\n return `'${data.replace(/\\\\/g, '\\\\\\\\').replace(/'/g, \"\\\\'\")}'`\n }\n\n if (typeof data === 'number' || typeof data === 'boolean') {\n return String(data)\n }\n\n if (Array.isArray(data)) {\n if (data.length === 0) {\n return '[]'\n }\n\n const items = data.map((item) => objectToString(item, level + 1)).join(',\\n' + indent(level + 1))\n\n return `[\\n${indent(level + 1)}${items}\\n${indent(level)}]`\n }\n\n if (typeof data === 'object') {\n const entries = Object.entries(data)\n if (entries.length === 0) {\n return '[]'\n }\n\n const items = entries\n .map(([key, value]) => `'${key}' => ${objectToString(value, level + 1)}`)\n .join(',\\n' + indent(level + 1))\n\n return `[\\n${indent(level + 1)}${items}\\n${indent(level)}]`\n }\n\n return 'null'\n}\n"],
5
+ "mappings": "AAGA,SAAS,OAAO,OAAuB;AACrC,SAAO,IAAI,OAAO,QAAQ,CAAC;AAC7B;AAMO,MAAM,IAAI;AAAA,EACf,YAAmB,OAAe;AAAf;AAAA,EAAgB;AACrC;AASO,SAAS,eAAe,MAAe,QAAQ,GAAW;AAC/D,MAAI,SAAS,QAAQ,SAAS,QAAW;AACvC,WAAO;AAAA,EACT;AAEA,MAAI,gBAAgB,KAAK;AACvB,UAAM,QAAQ,KAAK,MAAM,MAAM,IAAI;AACnC,QAAI,MAAM,SAAS,GAAG;AACpB,YAAM,mBAAmB,OAAO,QAAQ,CAAC;AACzC,aAAO,MACJ,IAAI,CAAC,MAAM,UAAU;AACpB,YAAI,UAAU,GAAG;AACf,iBAAO;AAAA,QACT;AACA,eAAO,GAAG,gBAAgB,GAAG,IAAI;AAAA,MACnC,CAAC,EACA,KAAK,IAAI;AAAA,IACd;AACA,WAAO,KAAK;AAAA,EACd;AAEA,MAAI,OAAO,SAAS,UAAU;AAC5B,WAAO,IAAI,KAAK,QAAQ,OAAO,MAAM,EAAE,QAAQ,MAAM,KAAK,CAAC;AAAA,EAC7D;AAEA,MAAI,OAAO,SAAS,YAAY,OAAO,SAAS,WAAW;AACzD,WAAO,OAAO,IAAI;AAAA,EACpB;AAEA,MAAI,MAAM,QAAQ,IAAI,GAAG;AACvB,QAAI,KAAK,WAAW,GAAG;AACrB,aAAO;AAAA,IACT;AAEA,UAAM,QAAQ,KAAK,IAAI,CAAC,SAAS,eAAe,MAAM,QAAQ,CAAC,CAAC,EAAE,KAAK,QAAQ,OAAO,QAAQ,CAAC,CAAC;AAEhG,WAAO;AAAA,EAAM,OAAO,QAAQ,CAAC,CAAC,GAAG,KAAK;AAAA,EAAK,OAAO,KAAK,CAAC;AAAA,EAC1D;AAEA,MAAI,OAAO,SAAS,UAAU;AAC5B,UAAM,UAAU,OAAO,QAAQ,IAAI;AACnC,QAAI,QAAQ,WAAW,GAAG;AACxB,aAAO;AAAA,IACT;AAEA,UAAM,QAAQ,QACX,IAAI,CAAC,CAAC,KAAK,KAAK,MAAM,IAAI,GAAG,QAAQ,eAAe,OAAO,QAAQ,CAAC,CAAC,EAAE,EACvE,KAAK,QAAQ,OAAO,QAAQ,CAAC,CAAC;AAEjC,WAAO;AAAA,EAAM,OAAO,QAAQ,CAAC,CAAC,GAAG,KAAK;AAAA,EAAK,OAAO,KAAK,CAAC;AAAA,EAC1D;AAEA,SAAO;AACT;",
6
+ "names": []
7
+ }
@@ -0,0 +1,23 @@
1
+ /**
2
+ * Formats and escapes a string safely for use in Rust string literals.
3
+ * The returned value is the escaped string, surrounded by double quotes,
4
+ * making it ready for direct insertion into Rust source code.
5
+ */
6
+ export declare function wrapInDoubleQuotes(str: string): string;
7
+ /**
8
+ * Produces an indented string using 4 spaces per indent level,
9
+ * in accordance with rustfmt style guidelines.
10
+ * Useful for code generation scenarios requiring precise formatting.
11
+ */
12
+ export declare function indent(level: number, text: string): string;
13
+ /**
14
+ * Formats a Rust chained method call with standard 4-space indentation.
15
+ * Useful for fluent API or builder patterns in generated Rust code.
16
+ */
17
+ export declare function createChain(method: string, ...args: string[]): string;
18
+ /**
19
+ * Properly formats a JSON snippet for Rust's `serde_json::json!` macro,
20
+ * applying idiomatic 4-space indentation to each line for improved readability.
21
+ */
22
+ export declare function formatJson(jsonText: string): string;
23
+ //# sourceMappingURL=rust.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"rust.d.ts","sourceRoot":"","sources":["../../src/libs/rust.ts"],"names":[],"mappings":"AAcA;;;;GAIG;AACH,wBAAgB,kBAAkB,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAEtD;AAED;;;;GAIG;AACH,wBAAgB,MAAM,CAAC,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,MAAM,CAG1D;AAED;;;GAGG;AACH,wBAAgB,WAAW,CAAC,MAAM,EAAE,MAAM,EAAE,GAAG,IAAI,EAAE,MAAM,EAAE,GAAG,MAAM,CAErE;AAED;;;GAGG;AACH,wBAAgB,UAAU,CAAC,QAAQ,EAAE,MAAM,GAAG,MAAM,CAyBnD"}
@@ -0,0 +1,39 @@
1
+ function escapeString(str) {
2
+ return str.replace(/\\/g, "\\\\").replace(/"/g, '\\"').replace(/\n/g, "\\n").replace(/\r/g, "\\r").replace(/\t/g, "\\t").replace(/\0/g, "\\0");
3
+ }
4
+ function wrapInDoubleQuotes(str) {
5
+ return `"${escapeString(str)}"`;
6
+ }
7
+ function indent(level, text) {
8
+ const spaces = " ".repeat(level * 4);
9
+ return `${spaces}${text}`;
10
+ }
11
+ function createChain(method, ...args) {
12
+ return indent(1, `.${method}(${args.join(", ")})`);
13
+ }
14
+ function formatJson(jsonText) {
15
+ try {
16
+ const jsonData = JSON.parse(jsonText);
17
+ const prettyJson = JSON.stringify(jsonData, null, 4);
18
+ const lines = prettyJson.split("\n");
19
+ const rustLines = lines.map((line, index) => {
20
+ if (index === 0) {
21
+ return line;
22
+ }
23
+ if (index === lines.length - 1) {
24
+ return indent(1, line);
25
+ }
26
+ return indent(1, line);
27
+ });
28
+ return rustLines.join("\n");
29
+ } catch {
30
+ return jsonText;
31
+ }
32
+ }
33
+ export {
34
+ createChain,
35
+ formatJson,
36
+ indent,
37
+ wrapInDoubleQuotes
38
+ };
39
+ //# sourceMappingURL=rust.js.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../src/libs/rust.ts"],
4
+ "sourcesContent": ["/**\n * Escapes a string for use in Rust string literals\n * Handles quotes, backslashes, newlines, and other special characters\n */\nfunction escapeString(str: string): string {\n return str\n .replace(/\\\\/g, '\\\\\\\\') // Escape backslashes first\n .replace(/\"/g, '\\\\\"') // Escape double quotes\n .replace(/\\n/g, '\\\\n') // Escape newlines\n .replace(/\\r/g, '\\\\r') // Escape carriage returns\n .replace(/\\t/g, '\\\\t') // Escape tabs\n .replace(/\\0/g, '\\\\0') // Escape null bytes\n}\n\n/**\n * Formats and escapes a string safely for use in Rust string literals.\n * The returned value is the escaped string, surrounded by double quotes,\n * making it ready for direct insertion into Rust source code.\n */\nexport function wrapInDoubleQuotes(str: string): string {\n return `\"${escapeString(str)}\"`\n}\n\n/**\n * Produces an indented string using 4 spaces per indent level,\n * in accordance with rustfmt style guidelines.\n * Useful for code generation scenarios requiring precise formatting.\n */\nexport function indent(level: number, text: string): string {\n const spaces = ' '.repeat(level * 4)\n return `${spaces}${text}`\n}\n\n/**\n * Formats a Rust chained method call with standard 4-space indentation.\n * Useful for fluent API or builder patterns in generated Rust code.\n */\nexport function createChain(method: string, ...args: string[]): string {\n return indent(1, `.${method}(${args.join(', ')})`)\n}\n\n/**\n * Properly formats a JSON snippet for Rust's `serde_json::json!` macro,\n * applying idiomatic 4-space indentation to each line for improved readability.\n */\nexport function formatJson(jsonText: string): string {\n try {\n const jsonData = JSON.parse(jsonText)\n const prettyJson = JSON.stringify(jsonData, null, 4)\n\n // Split into lines and add proper indentation for Rust\n const lines = prettyJson.split('\\n')\n const rustLines = lines.map((line, index) => {\n if (index === 0) {\n // First line (opening brace)\n return line\n }\n if (index === lines.length - 1) {\n // Last line (closing brace)\n return indent(1, line)\n }\n // Middle lines\n return indent(1, line)\n })\n\n return rustLines.join('\\n')\n } catch {\n // If JSON parsing fails, return the original text\n return jsonText\n }\n}\n"],
5
+ "mappings": "AAIA,SAAS,aAAa,KAAqB;AACzC,SAAO,IACJ,QAAQ,OAAO,MAAM,EACrB,QAAQ,MAAM,KAAK,EACnB,QAAQ,OAAO,KAAK,EACpB,QAAQ,OAAO,KAAK,EACpB,QAAQ,OAAO,KAAK,EACpB,QAAQ,OAAO,KAAK;AACzB;AAOO,SAAS,mBAAmB,KAAqB;AACtD,SAAO,IAAI,aAAa,GAAG,CAAC;AAC9B;AAOO,SAAS,OAAO,OAAe,MAAsB;AAC1D,QAAM,SAAS,IAAI,OAAO,QAAQ,CAAC;AACnC,SAAO,GAAG,MAAM,GAAG,IAAI;AACzB;AAMO,SAAS,YAAY,WAAmB,MAAwB;AACrE,SAAO,OAAO,GAAG,IAAI,MAAM,IAAI,KAAK,KAAK,IAAI,CAAC,GAAG;AACnD;AAMO,SAAS,WAAW,UAA0B;AACnD,MAAI;AACF,UAAM,WAAW,KAAK,MAAM,QAAQ;AACpC,UAAM,aAAa,KAAK,UAAU,UAAU,MAAM,CAAC;AAGnD,UAAM,QAAQ,WAAW,MAAM,IAAI;AACnC,UAAM,YAAY,MAAM,IAAI,CAAC,MAAM,UAAU;AAC3C,UAAI,UAAU,GAAG;AAEf,eAAO;AAAA,MACT;AACA,UAAI,UAAU,MAAM,SAAS,GAAG;AAE9B,eAAO,OAAO,GAAG,IAAI;AAAA,MACvB;AAEA,aAAO,OAAO,GAAG,IAAI;AAAA,IACvB,CAAC;AAED,WAAO,UAAU,KAAK,IAAI;AAAA,EAC5B,QAAQ;AAEN,WAAO;AAAA,EACT;AACF;",
6
+ "names": []
7
+ }
@@ -0,0 +1,15 @@
1
+ /**
2
+ * Escapes single quotes in a string for safe use inside bash single-quoted strings.
3
+ * In bash, you cannot directly escape a single quote inside single quotes (i.e., 'hell\'o' is invalid).
4
+ * Instead, you must close the single quotes, insert an escaped single quote, then reopen the single quotes:
5
+ *
6
+ * ```bash
7
+ * 'hell'\''o'
8
+ * ```
9
+ *
10
+ * This is why escaping a single quote in bash is not as simple as just using a backslash (\' does not work).
11
+ *
12
+ * @example "hell'o" becomes "hell'\''o"
13
+ */
14
+ export declare const escapeSingleQuotes: (value: string) => string;
15
+ //# sourceMappingURL=shell.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"shell.d.ts","sourceRoot":"","sources":["../../src/libs/shell.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AACH,eAAO,MAAM,kBAAkB,GAAI,OAAO,MAAM,KAAG,MAAsC,CAAA"}
@@ -0,0 +1,5 @@
1
+ const escapeSingleQuotes = (value) => value.replace(/'/g, "'\\''");
2
+ export {
3
+ escapeSingleQuotes
4
+ };
5
+ //# sourceMappingURL=shell.js.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../src/libs/shell.ts"],
4
+ "sourcesContent": ["/**\n * Escapes single quotes in a string for safe use inside bash single-quoted strings.\n * In bash, you cannot directly escape a single quote inside single quotes (i.e., 'hell\\'o' is invalid).\n * Instead, you must close the single quotes, insert an escaped single quote, then reopen the single quotes:\n *\n * ```bash\n * 'hell'\\''o'\n * ```\n *\n * This is why escaping a single quote in bash is not as simple as just using a backslash (\\' does not work).\n *\n * @example \"hell'o\" becomes \"hell'\\''o\"\n */\nexport const escapeSingleQuotes = (value: string): string => value.replace(/'/g, \"'\\\\''\")\n"],
5
+ "mappings": "AAaO,MAAM,qBAAqB,CAAC,UAA0B,MAAM,QAAQ,MAAM,OAAO;",
6
+ "names": []
7
+ }
@@ -1 +1 @@
1
- {"version":3,"file":"libcurl.d.ts","sourceRoot":"","sources":["../../../../src/plugins/c/libcurl/libcurl.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,wBAAwB,CAAA;AAEpD;;GAEG;AACH,eAAO,MAAM,QAAQ,EAAE,MAQtB,CAAA"}
1
+ {"version":3,"file":"libcurl.d.ts","sourceRoot":"","sources":["../../../../src/plugins/c/libcurl/libcurl.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,wBAAwB,CAAA;AAKpD;;GAEG;AACH,eAAO,MAAM,QAAQ,EAAE,MAQtB,CAAA"}
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../../src/plugins/c/libcurl/libcurl.ts"],
4
- "sourcesContent": ["import { libcurl } from '@/httpsnippet-lite/esm/targets/c/libcurl/client'\nimport { convertWithHttpSnippetLite } from '@/utils/convertWithHttpSnippetLite'\nimport type { Plugin } from '@scalar/types/snippetz'\n\n/**\n * c/libcurl\n */\nexport const cLibcurl: Plugin = {\n target: 'c',\n client: 'libcurl',\n title: 'Libcurl',\n generate(request) {\n // TODO: Write an own converter\n return convertWithHttpSnippetLite(libcurl, request)\n },\n}\n"],
5
- "mappings": "AAAA,SAAS,eAAe;AACxB,SAAS,kCAAkC;AAMpC,MAAM,WAAmB;AAAA,EAC9B,QAAQ;AAAA,EACR,QAAQ;AAAA,EACR,OAAO;AAAA,EACP,SAAS,SAAS;AAEhB,WAAO,2BAA2B,SAAS,OAAO;AAAA,EACpD;AACF;",
4
+ "sourcesContent": ["import type { Plugin } from '@scalar/types/snippetz'\n\nimport { libcurl } from '@/httpsnippet-lite/esm/targets/c/libcurl/client'\nimport { convertWithHttpSnippetLite } from '@/utils/convertWithHttpSnippetLite'\n\n/**\n * c/libcurl\n */\nexport const cLibcurl: Plugin = {\n target: 'c',\n client: 'libcurl',\n title: 'Libcurl',\n generate(request) {\n // TODO: Write an own converter\n return convertWithHttpSnippetLite(libcurl, request)\n },\n}\n"],
5
+ "mappings": "AAEA,SAAS,eAAe;AACxB,SAAS,kCAAkC;AAKpC,MAAM,WAAmB;AAAA,EAC9B,QAAQ;AAAA,EACR,QAAQ;AAAA,EACR,OAAO;AAAA,EACP,SAAS,SAAS;AAEhB,WAAO,2BAA2B,SAAS,OAAO;AAAA,EACpD;AACF;",
6
6
  "names": []
7
7
  }
@@ -1,5 +1,5 @@
1
1
  import { encode } from "js-base64";
2
- import { createSearchParams } from "../../../utils/create-search-params.js";
2
+ import { createSearchParams } from "../../../libs/http.js";
3
3
  const csharpHttpclient = {
4
4
  target: "csharp",
5
5
  client: "httpclient",
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../../src/plugins/csharp/httpclient/httpclient.ts"],
4
- "sourcesContent": ["import type { Plugin, PluginConfiguration } from '@scalar/types/snippetz'\nimport { encode } from 'js-base64'\n\nimport { createSearchParams } from '@/utils/create-search-params'\n\n/**\n * csharp/httpclient\n */\nexport const csharpHttpclient: Plugin = {\n target: 'csharp',\n client: 'httpclient',\n title: 'HttpClient',\n generate(request, configuration) {\n // Defaults\n const normalizedRequest = {\n method: 'GET',\n url: '',\n ...request,\n }\n\n // Normalization\n normalizedRequest.method = normalizedRequest.method.toUpperCase()\n\n // Build URL with query string\n const searchParams = createSearchParams(normalizedRequest.queryString)\n const queryString = searchParams.size ? `?${searchParams.toString()}` : ''\n\n const url = `${normalizedRequest.url}${queryString}`\n\n // Start building the snippet\n const lines: string[] = []\n\n // HttpClient declaration\n lines.push('using var client = new HttpClient();')\n lines.push('')\n\n // HttpRequestMessage\n const httpMethod = getHttpMethod(normalizedRequest.method)\n lines.push(`var request = new HttpRequestMessage(${httpMethod}, \"${url}\");`)\n\n // Headers and auth\n addHeadersAndAuth(lines, normalizedRequest, configuration)\n\n // Body content\n addBodyContent(lines, normalizedRequest)\n\n // Send request and read response\n lines.push('')\n lines.push('using var response = await client.SendAsync(request);')\n\n return lines.join('\\n')\n },\n}\n\n/**\n * Convert HTTP method to HttpMethod constant\n */\nfunction getHttpMethod(method: string): string {\n switch (method) {\n case 'GET':\n return 'HttpMethod.Get'\n case 'POST':\n return 'HttpMethod.Post'\n case 'PUT':\n return 'HttpMethod.Put'\n case 'DELETE':\n return 'HttpMethod.Delete'\n case 'PATCH':\n return 'HttpMethod.Patch'\n case 'HEAD':\n return 'HttpMethod.Head'\n case 'OPTIONS':\n return 'HttpMethod.Options'\n default:\n return `new HttpMethod(\"${method}\")`\n }\n}\n\n/**\n * Add headers and authentication to the request\n */\nfunction addHeadersAndAuth(lines: string[], request: any, configuration?: PluginConfiguration): void {\n const headers = request.headers || []\n const cookies = request.cookies || []\n\n // Check for explicit Authorization header first\n const authHeader = headers.find((h: any) => h.name.toLowerCase() === 'authorization')\n\n if (authHeader) {\n const [scheme, parameter] = authHeader.value.split(' ', 2)\n if (scheme && parameter) {\n lines.push(`request.Headers.Authorization = new AuthenticationHeaderValue(\"${scheme}\", \"${parameter}\");`)\n }\n } else if (configuration?.auth?.username && configuration?.auth?.password) {\n // Use configuration auth if no explicit header\n const credentials = encode(`${configuration.auth.username}:${configuration.auth.password}`)\n lines.push(`request.Headers.Authorization = new AuthenticationHeaderValue(\"Basic\", \"${credentials}\");`)\n }\n\n // Process other headers (keep only the last value for duplicates)\n const processedHeaders = new Map<string, string>()\n for (const header of headers) {\n const name = header.name\n const value = header.value\n\n if (name.toLowerCase() === 'authorization') {\n // Already handled above\n continue\n }\n\n processedHeaders.set(name, value)\n }\n\n for (const [name, value] of processedHeaders) {\n if (name.toLowerCase() === 'accept' && isMediaType(value)) {\n lines.push(`request.Headers.Accept.Add(new MediaTypeWithQualityHeaderValue(\"${value}\"));`)\n } else if (name.toLowerCase() === 'content-type' && request.postData) {\n // Content-Type will be set on content object\n continue\n } else {\n lines.push(`request.Headers.TryAddWithoutValidation(\"${name}\", \"${value}\");`)\n }\n }\n\n // Add cookies\n if (cookies.length > 0) {\n const cookieString = cookies.map((cookie: any) => `${cookie.name}=${cookie.value}`).join('; ')\n lines.push(`request.Headers.TryAddWithoutValidation(\"Cookie\", \"${cookieString}\");`)\n }\n}\n\n/**\n * Add body content to the request\n */\nfunction addBodyContent(lines: string[], request: any): void {\n if (!request.postData) {\n return\n }\n\n const { mimeType, text, params } = request.postData\n\n if (mimeType === 'application/json' && text) {\n try {\n const jsonData = JSON.parse(text)\n const prettyJson = JSON.stringify(jsonData, null, 2)\n const rawStringLiteral = createRawStringLiteral(prettyJson)\n lines.push('request.Content = new StringContent(')\n lines.push(`${rawStringLiteral},`)\n lines.push('System.Text.Encoding.UTF8, \"application/json\");')\n } catch {\n const rawStringLiteral = createRawStringLiteral(text)\n lines.push('request.Content = new StringContent(')\n lines.push(`${rawStringLiteral},`)\n lines.push('System.Text.Encoding.UTF8, \"application/json\");')\n }\n } else if (mimeType === 'application/x-www-form-urlencoded' && params) {\n // Check for duplicate field names\n const fieldNames = params.map((p: any) => p.name)\n const hasDuplicates = fieldNames.length !== new Set(fieldNames).size\n\n if (hasDuplicates) {\n // Use List<KeyValuePair> for duplicates\n lines.push('var formParams = new List<KeyValuePair<string, string>>')\n lines.push('{')\n for (const param of params) {\n lines.push(` new(\"${param.name}\", \"${param.value}\"),`)\n }\n lines.push('};')\n lines.push('request.Content = new FormUrlEncodedContent(formParams);')\n } else {\n // Use Dictionary for clean syntax\n lines.push('var formParams = new Dictionary<string, string>')\n lines.push('{')\n for (const param of params) {\n lines.push(` [\"${param.name}\"] = \"${param.value}\",`)\n }\n lines.push('};')\n lines.push('request.Content = new FormUrlEncodedContent(formParams);')\n }\n } else if (mimeType === 'multipart/form-data' && params) {\n lines.push('var content = new MultipartFormDataContent();')\n for (const param of params) {\n if (param.fileName !== undefined) {\n lines.push(\n `content.Add(new StreamContent(File.OpenRead(\"${param.fileName}\")), \"${param.name}\", \"${param.fileName}\");`,\n )\n } else {\n lines.push(`content.Add(new StringContent(\"${param.value}\"), \"${param.name}\");`)\n }\n }\n lines.push('request.Content = content;')\n } else if (mimeType === 'application/octet-stream' && text) {\n lines.push(\n 'var content = new ByteArrayContent(System.Text.Encoding.UTF8.GetBytes(\"' + text.replace(/\"/g, '\\\\\"') + '\"));',\n )\n lines.push('content.Headers.ContentType = new MediaTypeHeaderValue(\"application/octet-stream\");')\n lines.push('request.Content = content;')\n } else if (text) {\n // Fallback for other content types\n const rawStringLiteral = createRawStringLiteral(text)\n lines.push('request.Content = new StringContent(')\n lines.push(`${rawStringLiteral},`)\n lines.push(`System.Text.Encoding.UTF8, \"${mimeType}\");`)\n }\n}\n\n/**\n * Create a C# raw string literal with minimal quote count\n */\nfunction createRawStringLiteral(text: string): string {\n // Find the minimum number of quotes needed\n let quoteCount = 3\n while (text.includes('\"'.repeat(quoteCount))) {\n quoteCount++\n }\n\n const quotes = '\"'.repeat(quoteCount)\n return `${quotes}\\n${text}\\n${quotes}`\n}\n\n/**\n * Check if a value looks like a media type\n */\nfunction isMediaType(value: string): boolean {\n return /^[a-zA-Z0-9][a-zA-Z0-9!#$&\\-\\^_]*\\/[a-zA-Z0-9][a-zA-Z0-9!#$&\\-\\^_]*(\\s*;\\s*[a-zA-Z0-9][a-zA-Z0-9!#$&\\-\\^_]*=.*)?$/.test(\n value,\n )\n}\n"],
4
+ "sourcesContent": ["import type { Plugin, PluginConfiguration } from '@scalar/types/snippetz'\nimport { encode } from 'js-base64'\n\nimport { createSearchParams } from '@/libs/http'\n\n/**\n * csharp/httpclient\n */\nexport const csharpHttpclient: Plugin = {\n target: 'csharp',\n client: 'httpclient',\n title: 'HttpClient',\n generate(request, configuration) {\n // Defaults\n const normalizedRequest = {\n method: 'GET',\n url: '',\n ...request,\n }\n\n // Normalization\n normalizedRequest.method = normalizedRequest.method.toUpperCase()\n\n // Build URL with query string\n const searchParams = createSearchParams(normalizedRequest.queryString)\n const queryString = searchParams.size ? `?${searchParams.toString()}` : ''\n\n const url = `${normalizedRequest.url}${queryString}`\n\n // Start building the snippet\n const lines: string[] = []\n\n // HttpClient declaration\n lines.push('using var client = new HttpClient();')\n lines.push('')\n\n // HttpRequestMessage\n const httpMethod = getHttpMethod(normalizedRequest.method)\n lines.push(`var request = new HttpRequestMessage(${httpMethod}, \"${url}\");`)\n\n // Headers and auth\n addHeadersAndAuth(lines, normalizedRequest, configuration)\n\n // Body content\n addBodyContent(lines, normalizedRequest)\n\n // Send request and read response\n lines.push('')\n lines.push('using var response = await client.SendAsync(request);')\n\n return lines.join('\\n')\n },\n}\n\n/**\n * Convert HTTP method to HttpMethod constant\n */\nfunction getHttpMethod(method: string): string {\n switch (method) {\n case 'GET':\n return 'HttpMethod.Get'\n case 'POST':\n return 'HttpMethod.Post'\n case 'PUT':\n return 'HttpMethod.Put'\n case 'DELETE':\n return 'HttpMethod.Delete'\n case 'PATCH':\n return 'HttpMethod.Patch'\n case 'HEAD':\n return 'HttpMethod.Head'\n case 'OPTIONS':\n return 'HttpMethod.Options'\n default:\n return `new HttpMethod(\"${method}\")`\n }\n}\n\n/**\n * Add headers and authentication to the request\n */\nfunction addHeadersAndAuth(lines: string[], request: any, configuration?: PluginConfiguration): void {\n const headers = request.headers || []\n const cookies = request.cookies || []\n\n // Check for explicit Authorization header first\n const authHeader = headers.find((h: any) => h.name.toLowerCase() === 'authorization')\n\n if (authHeader) {\n const [scheme, parameter] = authHeader.value.split(' ', 2)\n if (scheme && parameter) {\n lines.push(`request.Headers.Authorization = new AuthenticationHeaderValue(\"${scheme}\", \"${parameter}\");`)\n }\n } else if (configuration?.auth?.username && configuration?.auth?.password) {\n // Use configuration auth if no explicit header\n const credentials = encode(`${configuration.auth.username}:${configuration.auth.password}`)\n lines.push(`request.Headers.Authorization = new AuthenticationHeaderValue(\"Basic\", \"${credentials}\");`)\n }\n\n // Process other headers (keep only the last value for duplicates)\n const processedHeaders = new Map<string, string>()\n for (const header of headers) {\n const name = header.name\n const value = header.value\n\n if (name.toLowerCase() === 'authorization') {\n // Already handled above\n continue\n }\n\n processedHeaders.set(name, value)\n }\n\n for (const [name, value] of processedHeaders) {\n if (name.toLowerCase() === 'accept' && isMediaType(value)) {\n lines.push(`request.Headers.Accept.Add(new MediaTypeWithQualityHeaderValue(\"${value}\"));`)\n } else if (name.toLowerCase() === 'content-type' && request.postData) {\n // Content-Type will be set on content object\n continue\n } else {\n lines.push(`request.Headers.TryAddWithoutValidation(\"${name}\", \"${value}\");`)\n }\n }\n\n // Add cookies\n if (cookies.length > 0) {\n const cookieString = cookies.map((cookie: any) => `${cookie.name}=${cookie.value}`).join('; ')\n lines.push(`request.Headers.TryAddWithoutValidation(\"Cookie\", \"${cookieString}\");`)\n }\n}\n\n/**\n * Add body content to the request\n */\nfunction addBodyContent(lines: string[], request: any): void {\n if (!request.postData) {\n return\n }\n\n const { mimeType, text, params } = request.postData\n\n if (mimeType === 'application/json' && text) {\n try {\n const jsonData = JSON.parse(text)\n const prettyJson = JSON.stringify(jsonData, null, 2)\n const rawStringLiteral = createRawStringLiteral(prettyJson)\n lines.push('request.Content = new StringContent(')\n lines.push(`${rawStringLiteral},`)\n lines.push('System.Text.Encoding.UTF8, \"application/json\");')\n } catch {\n const rawStringLiteral = createRawStringLiteral(text)\n lines.push('request.Content = new StringContent(')\n lines.push(`${rawStringLiteral},`)\n lines.push('System.Text.Encoding.UTF8, \"application/json\");')\n }\n } else if (mimeType === 'application/x-www-form-urlencoded' && params) {\n // Check for duplicate field names\n const fieldNames = params.map((p: any) => p.name)\n const hasDuplicates = fieldNames.length !== new Set(fieldNames).size\n\n if (hasDuplicates) {\n // Use List<KeyValuePair> for duplicates\n lines.push('var formParams = new List<KeyValuePair<string, string>>')\n lines.push('{')\n for (const param of params) {\n lines.push(` new(\"${param.name}\", \"${param.value}\"),`)\n }\n lines.push('};')\n lines.push('request.Content = new FormUrlEncodedContent(formParams);')\n } else {\n // Use Dictionary for clean syntax\n lines.push('var formParams = new Dictionary<string, string>')\n lines.push('{')\n for (const param of params) {\n lines.push(` [\"${param.name}\"] = \"${param.value}\",`)\n }\n lines.push('};')\n lines.push('request.Content = new FormUrlEncodedContent(formParams);')\n }\n } else if (mimeType === 'multipart/form-data' && params) {\n lines.push('var content = new MultipartFormDataContent();')\n for (const param of params) {\n if (param.fileName !== undefined) {\n lines.push(\n `content.Add(new StreamContent(File.OpenRead(\"${param.fileName}\")), \"${param.name}\", \"${param.fileName}\");`,\n )\n } else {\n lines.push(`content.Add(new StringContent(\"${param.value}\"), \"${param.name}\");`)\n }\n }\n lines.push('request.Content = content;')\n } else if (mimeType === 'application/octet-stream' && text) {\n lines.push(\n 'var content = new ByteArrayContent(System.Text.Encoding.UTF8.GetBytes(\"' + text.replace(/\"/g, '\\\\\"') + '\"));',\n )\n lines.push('content.Headers.ContentType = new MediaTypeHeaderValue(\"application/octet-stream\");')\n lines.push('request.Content = content;')\n } else if (text) {\n // Fallback for other content types\n const rawStringLiteral = createRawStringLiteral(text)\n lines.push('request.Content = new StringContent(')\n lines.push(`${rawStringLiteral},`)\n lines.push(`System.Text.Encoding.UTF8, \"${mimeType}\");`)\n }\n}\n\n/**\n * Create a C# raw string literal with minimal quote count\n */\nfunction createRawStringLiteral(text: string): string {\n // Find the minimum number of quotes needed\n let quoteCount = 3\n while (text.includes('\"'.repeat(quoteCount))) {\n quoteCount++\n }\n\n const quotes = '\"'.repeat(quoteCount)\n return `${quotes}\\n${text}\\n${quotes}`\n}\n\n/**\n * Check if a value looks like a media type\n */\nfunction isMediaType(value: string): boolean {\n return /^[a-zA-Z0-9][a-zA-Z0-9!#$&\\-\\^_]*\\/[a-zA-Z0-9][a-zA-Z0-9!#$&\\-\\^_]*(\\s*;\\s*[a-zA-Z0-9][a-zA-Z0-9!#$&\\-\\^_]*=.*)?$/.test(\n value,\n )\n}\n"],
5
5
  "mappings": "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",
6
6
  "names": []
7
7
  }
@@ -1 +1 @@
1
- {"version":3,"file":"axios.d.ts","sourceRoot":"","sources":["../../../../src/plugins/js/axios/axios.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,wBAAwB,CAAA;AAEpD;;GAEG;AACH,eAAO,MAAM,OAAO,EAAE,MAQrB,CAAA"}
1
+ {"version":3,"file":"axios.d.ts","sourceRoot":"","sources":["../../../../src/plugins/js/axios/axios.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,wBAAwB,CAAA;AAKpD;;GAEG;AACH,eAAO,MAAM,OAAO,EAAE,MAQrB,CAAA"}
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../../src/plugins/js/axios/axios.ts"],
4
- "sourcesContent": ["import { axios } from '@/httpsnippet-lite/esm/targets/javascript/axios/client'\nimport { convertWithHttpSnippetLite } from '@/utils/convertWithHttpSnippetLite'\nimport type { Plugin } from '@scalar/types/snippetz'\n\n/**\n * js/axios\n */\nexport const jsAxios: Plugin = {\n target: 'js',\n client: 'axios',\n title: 'Axios',\n generate(request) {\n // TODO: Write an own converter\n return convertWithHttpSnippetLite(axios, request)\n },\n}\n"],
5
- "mappings": "AAAA,SAAS,aAAa;AACtB,SAAS,kCAAkC;AAMpC,MAAM,UAAkB;AAAA,EAC7B,QAAQ;AAAA,EACR,QAAQ;AAAA,EACR,OAAO;AAAA,EACP,SAAS,SAAS;AAEhB,WAAO,2BAA2B,OAAO,OAAO;AAAA,EAClD;AACF;",
4
+ "sourcesContent": ["import type { Plugin } from '@scalar/types/snippetz'\n\nimport { axios } from '@/httpsnippet-lite/esm/targets/javascript/axios/client'\nimport { convertWithHttpSnippetLite } from '@/utils/convertWithHttpSnippetLite'\n\n/**\n * js/axios\n */\nexport const jsAxios: Plugin = {\n target: 'js',\n client: 'axios',\n title: 'Axios',\n generate(request) {\n // TODO: Write an own converter\n return convertWithHttpSnippetLite(axios, request)\n },\n}\n"],
5
+ "mappings": "AAEA,SAAS,aAAa;AACtB,SAAS,kCAAkC;AAKpC,MAAM,UAAkB;AAAA,EAC7B,QAAQ;AAAA,EACR,QAAQ;AAAA,EACR,OAAO;AAAA,EACP,SAAS,SAAS;AAEhB,WAAO,2BAA2B,OAAO,OAAO;AAAA,EAClD;AACF;",
6
6
  "names": []
7
7
  }
@@ -1 +1 @@
1
- {"version":3,"file":"fetch.d.ts","sourceRoot":"","sources":["../../../../src/plugins/js/fetch/fetch.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,wBAAwB,CAAA;AAEpD;;GAEG;AACH,eAAO,MAAM,OAAO,EAAE,MAuFrB,CAAA"}
1
+ {"version":3,"file":"fetch.d.ts","sourceRoot":"","sources":["../../../../src/plugins/js/fetch/fetch.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,wBAAwB,CAAA;AAKpD;;GAEG;AACH,eAAO,MAAM,OAAO,EAAE,MAuFrB,CAAA"}