codegen.js 1.7 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152
  1. import { JSXHRCodegen } from "./generators/js-xhr"
  2. import { JSFetchCodegen } from "./generators/js-fetch"
  3. import { CurlCodegen } from "./generators/curl"
  4. import { JSAxiosCodegen } from "./generators/js-axios"
  5. import { GoNativeCodegen } from "./generators/go-native"
  6. import { NodeJsRequestCodegen } from "./generators/nodejs-request"
  7. import { NodeJsNativeCodegen } from "./generators/nodejs-native"
  8. import { JSjQueryCodegen } from "./generators/js-jQuery"
  9. import { PowerShellRestMethod } from "./generators/powershell"
  10. import { PhpCurlCodegen } from "./generators/php-curl"
  11. import { PythonRequestsCodegen } from "./generators/python-requests"
  12. import { PythonHttpClientCodegen } from "./generators/python-http-client"
  13. import { WgetCodegen } from "./generators/wget"
  14. import { CsRestSharpCodegen } from "./generators/cs-restsharp"
  15. import { RubyNetHttpCodeGen } from "./generators/ruby-net-http"
  16. import { SalesforceApexCodegen } from "./generators/salesforce-apex"
  17. /* Register code generators here.
  18. * A code generator is defined as an object with the following structure.
  19. *
  20. * id: string
  21. * name: string
  22. * generator: (ctx) => string
  23. *
  24. */
  25. export const codegens = [
  26. CurlCodegen,
  27. CsRestSharpCodegen,
  28. GoNativeCodegen,
  29. JSAxiosCodegen,
  30. JSFetchCodegen,
  31. JSjQueryCodegen,
  32. JSXHRCodegen,
  33. NodeJsRequestCodegen,
  34. NodeJsNativeCodegen,
  35. PhpCurlCodegen,
  36. PowerShellRestMethod,
  37. PythonRequestsCodegen,
  38. PythonHttpClientCodegen,
  39. RubyNetHttpCodeGen,
  40. SalesforceApexCodegen,
  41. WgetCodegen,
  42. ]
  43. export function generateCodeWithGenerator(codegenID, context) {
  44. if (codegenID) {
  45. const gen = codegens.find(({ id }) => id === codegenID)
  46. return gen ? gen.generator(context) : ""
  47. }
  48. return ""
  49. }