UNPKG

@storm-stack/core

Version:

A build toolkit and runtime used by Storm Software in TypeScript applications

48 lines (46 loc) 1.59 kB
import { __name } from './chunk-43IZMM3W.js'; import ts from 'typescript'; async function isolatedDeclarations(id, code, transformOptions, sourceMap) { if (!ts.transpileDeclaration) { return { code: "", errors: [ "TypeScript version is too low, please upgrade to TypeScript 5.5.2+." ] }; } const compilerOptions = { declarationMap: sourceMap, ...transformOptions?.compilerOptions }; let { outputText, diagnostics, sourceMapText } = ts.transpileDeclaration(code, { fileName: id, reportDiagnostics: true, ...transformOptions, compilerOptions }); if (compilerOptions.declarationMap) { if (outputText.split("\n").at(-1)?.startsWith("//# sourceMappingURL=")) { outputText = outputText.split("\n").slice(0, -1).join("\n"); } } const errors = diagnostics?.length ? [ ts.formatDiagnostics(diagnostics, { getCanonicalFileName: /* @__PURE__ */ __name((fileName) => ts.sys.useCaseSensitiveFileNames ? fileName : fileName.toLowerCase(), "getCanonicalFileName"), getCurrentDirectory: /* @__PURE__ */ __name(() => ts.sys.getCurrentDirectory(), "getCurrentDirectory"), getNewLine: /* @__PURE__ */ __name(() => ts.sys.newLine, "getNewLine") }) ] : []; if (sourceMapText) { sourceMapText = JSON.parse(sourceMapText).mappings; } return { code: outputText, errors, map: sourceMapText }; } __name(isolatedDeclarations, "isolatedDeclarations"); export { isolatedDeclarations }; //# sourceMappingURL=chunk-7NDQO62H.js.map //# sourceMappingURL=chunk-7NDQO62H.js.map