| import { n as __toESM, t as require_binding } from "./binding-Dh6LYCIB.mjs"; | |
| import { a as bindingifySourcemap, n as normalizeBindingError } from "./error-B68YLzl3.mjs"; | |
| //#region src/utils/minify.ts | |
| var import_binding = /* @__PURE__ */ __toESM(require_binding(), 1); | |
| /** | |
| * Minify asynchronously. | |
| * | |
| * Note: This function can be slower than {@linkcode minifySync} due to the overhead of spawning a thread. | |
| * | |
| * @category Utilities | |
| * @experimental | |
| */ | |
| async function minify(filename, sourceText, options) { | |
| const inputMap = bindingifySourcemap(options?.inputMap); | |
| const result = await (0, import_binding.minify)(filename, sourceText, options); | |
| if (result.map && inputMap) result.map = { | |
| version: 3, | |
| ...(0, import_binding.collapseSourcemaps)([inputMap, bindingifySourcemap(result.map)]) | |
| }; | |
| return result; | |
| } | |
| /** | |
| * Minify synchronously. | |
| * | |
| * @category Utilities | |
| * @experimental | |
| */ | |
| function minifySync(filename, sourceText, options) { | |
| const inputMap = bindingifySourcemap(options?.inputMap); | |
| const result = (0, import_binding.minifySync)(filename, sourceText, options); | |
| if (result.map && inputMap) result.map = { | |
| version: 3, | |
| ...(0, import_binding.collapseSourcemaps)([inputMap, bindingifySourcemap(result.map)]) | |
| }; | |
| return result; | |
| } | |
| //#endregion | |
| //#region src/utils/transform.ts | |
| const yarnPnp$1 = typeof process === "object" && !!process.versions?.pnp; | |
| function normalizeBindingWarning(warning) { | |
| if (warning.type === "JsError") return warning.field0; | |
| return { | |
| code: warning.field0.kind, | |
| message: warning.field0.message, | |
| id: warning.field0.id, | |
| exporter: warning.field0.exporter, | |
| loc: warning.field0.loc, | |
| pos: warning.field0.pos | |
| }; | |
| } | |
| /** | |
| * Transpile a JavaScript or TypeScript into a target ECMAScript version, asynchronously. | |
| * | |
| * Note: This function can be slower than `transformSync` due to the overhead of spawning a thread. | |
| * | |
| * @param filename The name of the file being transformed. If this is a | |
| * relative path, consider setting the {@linkcode TransformOptions#cwd} option. | |
| * @param sourceText The source code to transform. | |
| * @param options The transform options including tsconfig and inputMap. See {@linkcode TransformOptions} for more information. | |
| * @param cache Optional tsconfig cache for reusing resolved tsconfig across multiple transforms. | |
| * Only used when `options.tsconfig` is `true`. | |
| * | |
| * @returns a promise that resolves to an object containing the transformed code, | |
| * source maps, and any errors that occurred during parsing or transformation. | |
| * | |
| * @category Utilities | |
| * @experimental | |
| */ | |
| async function transform(filename, sourceText, options, cache) { | |
| const result = await (0, import_binding.enhancedTransform)(filename, sourceText, options, cache, yarnPnp$1); | |
| return { | |
| ...result, | |
| errors: result.errors.map(normalizeBindingError), | |
| warnings: result.warnings.map(normalizeBindingWarning) | |
| }; | |
| } | |
| /** | |
| * Transpile a JavaScript or TypeScript into a target ECMAScript version. | |
| * | |
| * @param filename The name of the file being transformed. If this is a | |
| * relative path, consider setting the {@linkcode TransformOptions#cwd} option. | |
| * @param sourceText The source code to transform. | |
| * @param options The transform options including tsconfig and inputMap. See {@linkcode TransformOptions} for more information. | |
| * @param cache Optional tsconfig cache for reusing resolved tsconfig across multiple transforms. | |
| * Only used when `options.tsconfig` is `true`. | |
| * | |
| * @returns an object containing the transformed code, source maps, and any errors | |
| * that occurred during parsing or transformation. | |
| * | |
| * @category Utilities | |
| * @experimental | |
| */ | |
| function transformSync(filename, sourceText, options, cache) { | |
| const result = (0, import_binding.enhancedTransformSync)(filename, sourceText, options, cache, yarnPnp$1); | |
| return { | |
| ...result, | |
| errors: result.errors.map(normalizeBindingError), | |
| warnings: result.warnings.map(normalizeBindingWarning) | |
| }; | |
| } | |
| //#endregion | |
| //#region src/utils/resolve-tsconfig.ts | |
| const yarnPnp = typeof process === "object" && !!process.versions?.pnp; | |
| /** | |
| * Cache for tsconfig resolution to avoid redundant file system operations. | |
| * | |
| * The cache stores resolved tsconfig configurations keyed by their file paths. | |
| * When transforming multiple files in the same project, tsconfig lookups are | |
| * deduplicated, improving performance. | |
| * | |
| * @category Utilities | |
| * @experimental | |
| */ | |
| var TsconfigCache = class extends import_binding.TsconfigCache { | |
| constructor() { | |
| super(yarnPnp); | |
| } | |
| }; | |
| /** @hidden This is only expected to be used by Vite */ | |
| function resolveTsconfig(filename, cache) { | |
| return (0, import_binding.resolveTsconfig)(filename, cache, yarnPnp); | |
| } | |
| //#endregion | |
| export { minify as a, transformSync as i, resolveTsconfig as n, minifySync as o, transform as r, TsconfigCache as t }; | |