{"version":3,"sources":["../../scripts/import-openapi.ts"],"names":["value","swagger2openapi","mkdir","writeFile","Command","readFile"],"mappings":"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","file":"import-openapi.cjs","sourcesContent":["#!/usr/bin/env node\nimport { Command } from \"commander\";\nimport { mkdir, readFile, writeFile } from \"fs/promises\";\nimport swagger2openapi from \"swagger2openapi\";\nimport type { OpenAPIV3 } from \"openapi-types\";\n\n// Simple YAML parser to avoid node:process dependency\nfunction parseYaml(yamlString: string): any {\n  try {\n    // Very basic YAML parser for simple YAML structures\n    const lines = yamlString.split(\"\\n\");\n    const result: any = {};\n    let currentObject = result;\n    const stack: any[] = [result];\n    let currentIndent = 0;\n    let currentArray: any[] | null = null;\n    let arrayIndent = -1;\n\n    for (let i = 0; i < lines.length; i++) {\n      const line = lines[i];\n      // Skip empty lines and comments\n      if (line.trim() === \"\" || line.trim().startsWith(\"#\")) continue;\n\n      // Calculate indent\n      const indent = line.search(/\\S/);\n      if (indent < 0) continue;\n\n      // Check if this is an array item\n      if (line.trim().startsWith(\"-\")) {\n        // Array item\n        const arrayItemMatch = line.trim().match(/^-\\s*(.*)$/);\n        if (!arrayItemMatch) continue;\n\n        const value = arrayItemMatch[1].trim();\n\n        // Starting a new array\n        if (arrayIndent === -1 || indent !== arrayIndent) {\n          // Find the array key from the previous line\n          let j = i - 1;\n          while (j >= 0) {\n            const prevLine = lines[j].trim();\n            if (prevLine === \"\" || prevLine.startsWith(\"#\")) {\n              j--;\n              continue;\n            }\n\n            const keyMatch = prevLine.match(/^([\\w-]+):(?:\\s*)?$/);\n            if (keyMatch) {\n              const arrayKey = keyMatch[1];\n              currentObject[arrayKey] = [];\n              currentArray = currentObject[arrayKey];\n              arrayIndent = indent;\n              break;\n            }\n            j--;\n          }\n        }\n\n        if (currentArray) {\n          if (value === \"\") {\n            // This is an object in the array\n            const newObj = {};\n            currentArray.push(newObj);\n            stack.push(currentObject);\n            currentObject = newObj;\n            currentIndent = indent;\n            currentArray = null; // We're now working with an object\n          } else {\n            // Simple value in array\n            let parsedValue: any = value;\n            if (parsedValue === \"true\") parsedValue = true;\n            else if (parsedValue === \"false\") parsedValue = false;\n            else if (!isNaN(Number(parsedValue)) && parsedValue !== \"\")\n              parsedValue = Number(parsedValue);\n            else if (parsedValue.startsWith(\"'\") && parsedValue.endsWith(\"'\"))\n              parsedValue = parsedValue.slice(1, -1);\n            else if (parsedValue.startsWith('\"') && parsedValue.endsWith('\"'))\n              parsedValue = parsedValue.slice(1, -1);\n\n            currentArray.push(parsedValue);\n          }\n        }\n        continue;\n      } else {\n        // If we're back to regular objects after array\n        if (indent <= arrayIndent) {\n          arrayIndent = -1;\n          currentArray = null;\n        }\n      }\n\n      // Get key and value for objects\n      const match = line.trim().match(/^([\\w-]+):(?:\\s(.+))?$/);\n      if (!match) continue;\n\n      const [_, key, value] = match;\n\n      if (value === undefined || value.trim() === \"\") {\n        // New object\n        currentObject[key] = {};\n        if (indent > currentIndent) {\n          stack.push(currentObject);\n          currentObject = currentObject[key];\n          currentIndent = indent;\n        } else if (indent < currentIndent) {\n          // Go back up the stack\n          while (stack.length > 1 && indent <= currentIndent) {\n            stack.pop();\n            currentObject = stack[stack.length - 1];\n            currentIndent -= 2; // Assuming 2-space indentation\n          }\n          currentObject[key] = {};\n          stack.push(currentObject);\n          currentObject = currentObject[key];\n        } else {\n          currentObject = stack[stack.length - 1];\n          currentObject[key] = {};\n          currentObject = currentObject[key];\n        }\n      } else {\n        // Simple key-value pair\n        // Handle string, number, boolean values\n        let parsedValue: any = value.trim();\n        if (parsedValue === \"true\") parsedValue = true;\n        else if (parsedValue === \"false\") parsedValue = false;\n        else if (!isNaN(Number(parsedValue)) && parsedValue !== \"\")\n          parsedValue = Number(parsedValue);\n        else if (parsedValue.startsWith(\"'\") && parsedValue.endsWith(\"'\"))\n          parsedValue = parsedValue.slice(1, -1);\n        else if (parsedValue.startsWith('\"') && parsedValue.endsWith('\"'))\n          parsedValue = parsedValue.slice(1, -1);\n\n        currentObject[key] = parsedValue;\n      }\n    }\n\n    return result;\n  } catch (error) {\n    console.error(\"Error parsing YAML:\", error);\n    throw error;\n  }\n}\n\ninterface GenerateOptions {\n  outDir?: string;\n}\n\nexport async function convertToOpenAPI3(doc: any): Promise<OpenAPIV3.Document> {\n  if (doc.openapi && doc.openapi.startsWith(\"3.\")) {\n    return doc as OpenAPIV3.Document;\n  }\n\n  const result = await swagger2openapi.convert(doc, {});\n  return result.openapi;\n}\n\nexport function isReferenceObject(obj: any): obj is OpenAPIV3.ReferenceObject {\n  return obj !== null && obj !== undefined && \"$ref\" in obj;\n}\n\n// Function to extract the schema name from a reference\nexport function getRefName(ref: string): string {\n  if (!ref) return \"\";\n  const parts = ref.split(\"/\");\n  return parts[parts.length - 1];\n}\n\n// Function to resolve references in the OpenAPI schema\nexport function resolveRef(\n  ref: string,\n  spec: OpenAPIV3.Document\n): OpenAPIV3.SchemaObject | undefined {\n  if (!ref.startsWith(\"#/\")) return undefined;\n\n  const parts = ref.substring(2).split(\"/\");\n  let current: any = spec;\n\n  for (const part of parts) {\n    if (!current[part]) return undefined;\n    current = current[part];\n  }\n\n  return current as OpenAPIV3.SchemaObject;\n}\n\n// Process schema definitions from the OpenAPI spec\nexport function processSchemaDefinitions(\n  spec: OpenAPIV3.Document\n): Map<string, OpenAPIV3.SchemaObject> {\n  const schemas = new Map<string, OpenAPIV3.SchemaObject>();\n\n  // Extract schemas from components section\n  if (spec.components?.schemas) {\n    for (const [name, schema] of Object.entries(spec.components.schemas)) {\n      if (!isReferenceObject(schema)) {\n        schemas.set(name, schema);\n      }\n    }\n  }\n\n  return schemas;\n}\n\nexport async function generateRoutes(\n  spec: OpenAPIV3.Document,\n  options: GenerateOptions\n) {\n  const routes = new Map<string, Record<string, any>>();\n  const schemas = processSchemaDefinitions(spec);\n\n  // Process each path in the OpenAPI spec\n  for (const [path, pathItem] of Object.entries(spec.paths || {})) {\n    if (!pathItem) continue;\n\n    const routePath = path.replace(/{([^}]+)}/g, \"[$1]\");\n    const methods: Record<string, any> = {};\n\n    // Process each HTTP method\n    for (const [method, operation] of Object.entries(pathItem)) {\n      if (\n        method === \"parameters\" ||\n        !operation ||\n        typeof operation === \"string\" ||\n        Array.isArray(operation)\n      )\n        continue;\n\n      const upperMethod = method.toUpperCase();\n      const response = operation.responses?.[200];\n      const requestBody = operation.requestBody;\n\n      methods[upperMethod] = {\n        method: upperMethod,\n        response: processResponseSchema(response, spec),\n        body: processRequestBodySchema(requestBody, spec),\n        query: {},\n        params: {},\n      };\n\n      // Extract query parameters\n      const queryParams =\n        operation.parameters?.filter((p) => {\n          if (!p || typeof p === \"string\") return false;\n          return \"in\" in p && p.in === \"query\";\n        }) || [];\n\n      if (queryParams.length > 0) {\n        methods[upperMethod].query = {\n          type: \"object\",\n          properties: Object.fromEntries(\n            queryParams.map((p) => {\n              if (typeof p === \"string\" || isReferenceObject(p))\n                return [\"\", {}];\n              return [\"name\" in p ? p.name : \"\", \"schema\" in p ? p.schema : {}];\n            })\n          ),\n        };\n      }\n\n      // Extract path parameters\n      const pathParams =\n        operation.parameters?.filter((p) => {\n          if (!p || typeof p === \"string\") return false;\n          return \"in\" in p && p.in === \"path\";\n        }) || [];\n\n      if (pathParams.length > 0) {\n        methods[upperMethod].params = {\n          type: \"object\",\n          properties: Object.fromEntries(\n            pathParams.map((p) => [\n              \"name\" in p ? p.name : \"\",\n              \"schema\" in p ? p.schema : {},\n            ])\n          ),\n        };\n      }\n    }\n\n    routes.set(routePath, methods);\n  }\n\n  await generateSingleFile(\n    routes,\n    schemas,\n    options.outDir || \"src\",\n    spec.servers?.[0]?.url || \"\"\n  );\n}\n\n// Process response schema and resolve any references\nfunction processResponseSchema(\n  response: OpenAPIV3.ReferenceObject | OpenAPIV3.ResponseObject | undefined,\n  spec: OpenAPIV3.Document\n): OpenAPIV3.SchemaObject {\n  if (!response) return {};\n\n  if (isReferenceObject(response)) {\n    const resolvedSchema = resolveRef(response.$ref, spec);\n    return resolvedSchema || {};\n  }\n\n  const contentSchema = response.content?.[\"application/json\"]?.schema;\n\n  if (!contentSchema) return {};\n\n  if (isReferenceObject(contentSchema)) {\n    const resolvedSchema = resolveRef(contentSchema.$ref, spec);\n    return resolvedSchema || {};\n  }\n\n  // Process allOf if present in the schema\n  if (contentSchema.allOf) {\n    return processAllOf(contentSchema, spec);\n  }\n\n  // Process oneOf if present in the schema (keep as is for later Zod union conversion)\n  if (contentSchema.oneOf) {\n    return contentSchema;\n  }\n\n  return contentSchema;\n}\n\n// Process request body schema and resolve any references\nfunction processRequestBodySchema(\n  requestBody:\n    | OpenAPIV3.ReferenceObject\n    | OpenAPIV3.RequestBodyObject\n    | undefined,\n  spec: OpenAPIV3.Document\n): OpenAPIV3.SchemaObject {\n  if (!requestBody) return {};\n\n  if (isReferenceObject(requestBody)) {\n    const resolvedSchema = resolveRef(requestBody.$ref, spec);\n    return resolvedSchema || {};\n  }\n\n  const contentSchema = requestBody.content?.[\"application/json\"]?.schema;\n\n  if (!contentSchema) return {};\n\n  if (isReferenceObject(contentSchema)) {\n    const resolvedSchema = resolveRef(contentSchema.$ref, spec);\n    return resolvedSchema || {};\n  }\n\n  // Process allOf if present in the schema\n  if (contentSchema.allOf) {\n    return processAllOf(contentSchema, spec);\n  }\n\n  // Process oneOf if present in the schema (keep as is for later Zod union conversion)\n  if (contentSchema.oneOf) {\n    return contentSchema;\n  }\n\n  return contentSchema;\n}\n\n// Process allOf keyword by merging schemas\nfunction processAllOf(\n  schema: OpenAPIV3.SchemaObject,\n  spec: OpenAPIV3.Document\n): OpenAPIV3.SchemaObject {\n  if (\n    !schema.allOf ||\n    !Array.isArray(schema.allOf) ||\n    schema.allOf.length === 0\n  ) {\n    return schema;\n  }\n\n  // Create a copy of the schema without the allOf property\n  const { allOf, ...baseSchema } = schema;\n  const mergedSchema = { ...baseSchema };\n\n  // Merge all sub-schemas\n  for (const subSchema of allOf) {\n    let resolvedSubSchema: OpenAPIV3.SchemaObject;\n\n    if (isReferenceObject(subSchema)) {\n      const resolved = resolveRef(subSchema.$ref, spec);\n      if (!resolved) continue;\n      resolvedSubSchema = resolved;\n    } else {\n      resolvedSubSchema = subSchema;\n    }\n\n    // Recursively process nested allOf\n    if (resolvedSubSchema.allOf) {\n      resolvedSubSchema = processAllOf(resolvedSubSchema, spec);\n    }\n\n    // Merge properties\n    if (resolvedSubSchema.properties) {\n      mergedSchema.properties = {\n        ...mergedSchema.properties,\n        ...resolvedSubSchema.properties,\n      };\n    }\n\n    // Merge required fields\n    if (resolvedSubSchema.required && resolvedSubSchema.required.length > 0) {\n      mergedSchema.required = [\n        ...(mergedSchema.required || []),\n        ...resolvedSubSchema.required,\n      ];\n    }\n\n    // Merge other attributes (type, format, etc.)\n    if (resolvedSubSchema.type && !mergedSchema.type) {\n      // @ts-expect-error - We're carefully handling schema type merging\n      mergedSchema.type = resolvedSubSchema.type;\n    }\n    if (resolvedSubSchema.format && !mergedSchema.format) {\n      mergedSchema.format = resolvedSubSchema.format;\n    }\n    if (resolvedSubSchema.description && !mergedSchema.description) {\n      mergedSchema.description = resolvedSubSchema.description;\n    }\n  }\n\n  return mergedSchema;\n}\n\n// Add helper function to convert OpenAPI schema to Zod type\nfunction convertToZodSchema(\n  schema: OpenAPIV3.SchemaObject | OpenAPIV3.ReferenceObject | undefined,\n  _isRequired = false,\n  schemas: Map<string, OpenAPIV3.SchemaObject> = new Map()\n): string {\n  if (!schema) return \"z.void()\";\n\n  // Handle reference objects\n  if (isReferenceObject(schema)) {\n    const refName = getRefName(schema.$ref);\n    if (schemas.has(refName)) {\n      // For referenced schemas, create a reusable Zod schema\n      return `z.lazy(() => ${refName}Schema)`;\n    }\n    return \"z.unknown()\";\n  }\n\n  // Process allOf if present and didn't get merged earlier\n  if (schema.allOf) {\n    // Convert each subSchema in allOf to a Zod schema\n    const allOfSchemas = schema.allOf.map((subSchema) =>\n      convertToZodSchema(subSchema, _isRequired, schemas)\n    );\n\n    // For a single schema, just return it\n    if (allOfSchemas.length === 1) {\n      return allOfSchemas[0];\n    }\n\n    // For multiple schemas, nest the intersections\n    // z.intersection takes exactly two arguments, so we need to nest them for 3+ schemas\n    let result = `z.intersection(${allOfSchemas[0]}, ${allOfSchemas[1]})`;\n\n    // Add additional schemas by nesting intersections\n    for (let i = 2; i < allOfSchemas.length; i++) {\n      result = `z.intersection(${result}, ${allOfSchemas[i]})`;\n    }\n\n    return result;\n  }\n\n  // Process oneOf schemas using Zod union\n  if (schema.oneOf && schema.oneOf.length > 0) {\n    // Convert each subSchema in oneOf to a Zod schema\n    const oneOfSchemas = schema.oneOf.map((subSchema) =>\n      convertToZodSchema(subSchema, _isRequired, schemas)\n    );\n\n    // For a single schema, just return it\n    if (oneOfSchemas.length === 1) {\n      return oneOfSchemas[0];\n    }\n\n    // For multiple schemas, use z.union\n    // z.union([A, B]) is equivalent to A.or(B)\n    return oneOfSchemas.reduce((acc, current, index) => {\n      if (index === 0) return current;\n      return `${acc}.or(${current})`;\n    }, \"\");\n  }\n\n  let numberType: string;\n  let itemType: string;\n  let properties: string[];\n  let zodSchema: string;\n\n  // Handle nullable types using union type syntax\n  if (Array.isArray(schema.type)) {\n    if (schema.type.includes(\"null\")) {\n      const nonNullTypes = schema.type.filter((t) => t !== \"null\");\n      if (nonNullTypes.length === 1) {\n        const nonNullSchema = { ...schema, type: nonNullTypes[0] };\n        return `${convertToZodSchema(nonNullSchema, _isRequired, schemas)}.nullable()`;\n      }\n    }\n    // Default to string if multiple non-null types\n    schema.type = \"string\";\n  }\n\n  switch (schema.type) {\n    case \"string\":\n      if (schema.enum) {\n        zodSchema = `z.enum([${schema.enum.map((e) => `'${e}'`).join(\", \")}])`;\n      } else if (schema.format === \"date-time\") {\n        zodSchema = \"z.string().datetime()\";\n      } else if (schema.format === \"email\") {\n        zodSchema = \"z.string().email()\";\n      } else {\n        zodSchema = \"z.string()\";\n        if (schema.minLength !== undefined) {\n          zodSchema += `.min(${schema.minLength})`;\n        }\n        if (schema.maxLength !== undefined) {\n          zodSchema += `.max(${schema.maxLength})`;\n        }\n      }\n      break;\n\n    case \"number\":\n    case \"integer\":\n      numberType = \"z.number()\";\n      if (schema.minimum !== undefined) {\n        numberType += `.min(${schema.minimum})`;\n      }\n      if (schema.maximum !== undefined) {\n        numberType += `.max(${schema.maximum})`;\n      }\n      zodSchema = numberType;\n      break;\n\n    case \"boolean\":\n      zodSchema = \"z.boolean()\";\n      break;\n\n    case \"array\":\n      if (schema.items) {\n        itemType = convertToZodSchema(schema.items, true, schemas);\n        zodSchema = `z.array(${itemType})`;\n      } else {\n        zodSchema = \"z.array(z.unknown())\";\n      }\n      break;\n\n    case \"object\":\n      if (!schema.properties) return \"z.object({})\";\n\n      properties = Object.entries(schema.properties).map(([key, prop]) => {\n        const propIsRequired = schema.required?.includes(key);\n        const propType = convertToZodSchema(prop, propIsRequired, schemas);\n        return `${key}: ${propIsRequired ? propType : `${propType}.optional()`}`;\n      });\n\n      zodSchema = `z.object({\\n        ${properties.join(\",\\n        \")}\\n      })`;\n      break;\n\n    default:\n      zodSchema = \"z.unknown()\";\n  }\n\n  if (schema.nullable) {\n    zodSchema += \".nullable()\";\n  }\n\n  if (schema.description) {\n    const escapedDescription = schema.description.replace(/[`'\\\\]/g, \"\\\\$&\");\n    zodSchema += `.describe(\\`${escapedDescription}\\`)`;\n  }\n\n  return zodSchema;\n}\n\nexport async function generateSingleFile(\n  routes: Map<string, Record<string, any>>,\n  schemas: Map<string, OpenAPIV3.SchemaObject>,\n  outDir: string,\n  baseUrl: string\n) {\n  await mkdir(outDir, { recursive: true });\n\n  const getRoutes = new Map<string, Map<string, any>>();\n  const otherRoutes = new Map<string, Map<string, any>>();\n\n  // Separate GET methods from other methods\n  for (const [path, methods] of routes) {\n    for (const [method, schema] of Object.entries(methods)) {\n      if (method === \"GET\") {\n        if (!getRoutes.has(path)) {\n          getRoutes.set(path, new Map());\n        }\n        getRoutes.get(path)?.set(method, schema);\n      } else {\n        if (!otherRoutes.has(path)) {\n          otherRoutes.set(path, new Map());\n        }\n        otherRoutes.get(path)?.set(method, schema);\n      }\n    }\n  }\n\n  let content = `import { createApi, createApiEndpoint } from '@danstackme/apity';\\n`;\n  content += `import { z } from 'zod';\\n\\n`;\n\n  // Generate schema type definitions first\n  if (schemas.size > 0) {\n    content += `// Schema definitions\\n`;\n    for (const [name, schema] of schemas) {\n      content += `export const ${name}Schema = ${convertToZodSchema(schema, true, schemas)};\\n\\n`;\n    }\n  }\n\n  const fetchEndpointNames = new Map<string, string[]>();\n\n  for (const [path, methods] of getRoutes) {\n    const endpointNames = [];\n\n    for (const [method, schema] of methods) {\n      const pathParams = Object.keys(schema.params.properties || {});\n      const endpointName = `${method}_${path.replace(/\\//g, \"\").replace(/\\[.*?\\]/g, \"\")}${pathParams.length > 0 ? `_${pathParams.join(\"_\")}` : \"\"}`;\n      endpointNames.push(endpointName);\n\n      content += `const ${endpointName} = createApiEndpoint({\\n`;\n      content += `  method: '${method}',\\n`;\n\n      // Convert response schema\n      if (Object.keys(schema.response).length > 0) {\n        if (isReferenceObject(schema.response)) {\n          const refName = getRefName(schema.response.$ref);\n          content += `  response: ${refName}Schema,\\n`;\n        } else {\n          content += `  response: ${convertToZodSchema(schema.response, true, schemas)},\\n`;\n        }\n      } else {\n        content += `  response: z.void(),\\n`;\n      }\n\n      // Convert query parameters\n      if (Object.keys(schema.query).length > 0) {\n        content += `  query: ${convertToZodSchema(schema.query, false, schemas)},\\n`;\n      }\n\n      content += `});\\n\\n`;\n    }\n\n    if (endpointNames.length > 0) {\n      fetchEndpointNames.set(path, endpointNames);\n    }\n  }\n\n  const mutateEndpointNames = new Map<string, string[]>();\n\n  for (const [path, methods] of otherRoutes) {\n    const endpointNames = [];\n\n    for (const [method, schema] of methods) {\n      const pathParams = Object.keys(schema.params.properties || {});\n      const endpointName = `${method}_${path.replace(/\\//g, \"\").replace(/\\[.*?\\]/g, \"\")}${pathParams.length > 0 ? `_${pathParams.join(\"_\")}` : \"\"}`;\n      endpointNames.push(endpointName);\n\n      content += `const ${endpointName} = createApiEndpoint({\\n`;\n      content += `  method: '${method}',\\n`;\n\n      // Convert response schema\n      if (Object.keys(schema.response).length > 0) {\n        if (isReferenceObject(schema.response)) {\n          const refName = getRefName(schema.response.$ref);\n          content += `  response: ${refName}Schema,\\n`;\n        } else {\n          content += `  response: ${convertToZodSchema(schema.response, true, schemas)},\\n`;\n        }\n      } else {\n        content += `  response: z.void(),\\n`;\n      }\n\n      // Convert request body schema\n      if (Object.keys(schema.body).length > 0) {\n        if (isReferenceObject(schema.body)) {\n          const refName = getRefName(schema.body.$ref);\n          content += `  body: ${refName}Schema,\\n`;\n        } else {\n          content += `  body: ${convertToZodSchema(schema.body, false, schemas)},\\n`;\n        }\n      }\n\n      // Convert query parameters\n      if (Object.keys(schema.query).length > 0) {\n        content += `  query: ${convertToZodSchema(schema.query, false, schemas)},\\n`;\n      }\n\n      content += `});\\n\\n`;\n    }\n\n    if (endpointNames.length > 0) {\n      mutateEndpointNames.set(path, endpointNames);\n    }\n  }\n\n  content += `export const fetchEndpoints = {\\n`;\n  for (const [path, endpointNames] of fetchEndpointNames) {\n    content += `  '${path}': [${endpointNames.join(\", \")}],\\n`;\n  }\n  content += `} as const;\\n\\n`;\n\n  content += `export const mutateEndpoints = {\\n`;\n  for (const [path, endpointNames] of mutateEndpointNames) {\n    content += `  '${path}': [${endpointNames.join(\", \")}],\\n`;\n  }\n  content += `} as const;\\n\\n`;\n\n  content += `export const api = createApi({\\n`;\n  content += `  baseUrl: '${baseUrl}',\\n`;\n  content += `  fetchEndpoints,\\n`;\n  content += `  mutateEndpoints,\\n`;\n  content += `});\\n`;\n\n  await writeFile(`${outDir}/endpoints.ts`, content);\n}\n\nasync function main() {\n  const program = new Command();\n\n  program\n    .name(\"import-openapi\")\n    .description(\"Import OpenAPI/Swagger specification and generate API routes\")\n    .argument(\"<file>\", \"OpenAPI/Swagger specification file (JSON or YAML)\")\n    .option(\"-d, --outDir <directory>\", \"Output directory\", undefined);\n\n  program.parse();\n\n  const options = program.opts();\n  const [file] = program.args;\n\n  try {\n    const content = await readFile(file, \"utf-8\");\n    const doc =\n      file.endsWith(\".yaml\") || file.endsWith(\".yml\")\n        ? parseYaml(content)\n        : JSON.parse(content);\n\n    const openapi = await convertToOpenAPI3(doc);\n    await generateRoutes(openapi, {\n      outDir: options.outDir,\n    });\n\n    console.log(\"Successfully generated API routes!\");\n  } catch (error) {\n    console.error(\"Error:\", error);\n    process.exit(1);\n  }\n}\n\n// Only run main() if not in test mode\nif (process.env.NODE_ENV !== \"test\") {\n  main();\n}\n"]}