UNPKG

@sirhc77/postman-sdk-gen

Version:

Generate a fully-typed TypeScript SDK from a Postman collection, with support for Axios or Fetch, folder-based namespacing, and auto-inferred types.

31 lines (26 loc) 1.01 kB
import fs from "fs/promises"; import path from "path"; export interface SdkGenConfig { collection: string; output: string; clientName: string; useFetch: boolean; singleFile: boolean; quiet: boolean; } export async function loadConfig(collectionArg: string, cliOpts: any): Promise<SdkGenConfig> { let configFileOpts: Record<string, any> = {}; if (cliOpts.config) { const filePath = path.resolve(cliOpts.config); const fileContent = await fs.readFile(filePath, "utf-8"); configFileOpts = JSON.parse(fileContent); } return { collection: collectionArg, output: cliOpts.output || configFileOpts["output"] || "./sdk", clientName: cliOpts.clientName || configFileOpts["clientName"] || "ApiClient", useFetch: cliOpts.useFetch || configFileOpts["useFetch"] || false, singleFile: cliOpts.singleFile || configFileOpts["singleFile"] || false, quiet: cliOpts.quiet || configFileOpts["quiet"] || false, }; }