UNPKG

genezio

Version:

Command line utility to interact with Genezio infrastructure.

31 lines (30 loc) 1.39 kB
import { UserError } from "../../errors.js"; import { Language } from "../../projectConfiguration/yaml/models.js"; import { basicFileWriter } from "./basicFileWriter.js"; import { writeSdkTs, writeSdkJs } from "./jsSdkWriter.js"; /** * Write the SDK files to disk. * @param input - The input data * @returns The path of the written SDK or undefined if the writing was not performed. * @throws Error if the language is not supported */ export async function writeSdk(input) { switch (input.language) { case Language.ts: return await writeSdkTs(input.packageName, input.packageVersion, input.sdkResponse, input.classUrls, input.publish, input.installPackage, input.outputPath, input.exportAsTarball); case Language.js: return await writeSdkJs(input.packageName, input.packageVersion, input.sdkResponse, input.classUrls, input.publish, input.installPackage, input.outputPath, input.exportAsTarball); case Language.go: case Language.kt: case Language.dart: case Language.swift: case Language.python: case Language.pythonAsgi: if (input.outputPath) { return await basicFileWriter(input.sdkResponse, input.classUrls, input.outputPath); } break; default: throw new UserError(`Language ${input.language} is not supported`); } }