UNPKG

@kubb/core

Version:

Core functionality for Kubb's plugin-based code generation system, providing the foundation for transforming OpenAPI specifications.

16 lines (13 loc) 561 B
import { readFileSync } from 'node:fs' import path from 'node:path' import { fileURLToPath } from 'node:url' import createJiti from 'jiti' export function resolveModuleSource(pkgName: string) { const parentURL = import.meta.url const jiti = createJiti(parentURL) const resolved = jiti.esmResolve(pkgName, parentURL) const filePath = resolved.startsWith('file:') ? fileURLToPath(resolved) : resolved const source = readFileSync(filePath, { encoding: 'utf-8' }) const ext = path.extname(filePath) return { path: filePath, source, ext } as const }