astro-ghostcms/.pnpm-store/v3/files/cd/634ed58ea0a3233d00c310a13a5...

42 lines
1.1 KiB
Plaintext

"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
exports.transform = void 0;
const utils_1 = require("./utils");
const compat_1 = require("../compat");
function transform(node, context) {
const less = loadLess(context);
if (!less) {
return null;
}
const inputRange = (0, utils_1.getContentRange)(node);
const sourceCode = (0, compat_1.getSourceCode)(context);
const code = sourceCode.text.slice(...inputRange);
const filename = `${(0, compat_1.getFilename)(context)}.less`;
try {
let output;
less.render(code, {
sourceMap: {},
syncImport: true,
filename,
lint: false,
}, (_error, result) => {
output = result;
});
if (!output) {
return null;
}
return {
inputRange,
output: output.css,
mappings: JSON.parse(output.map).mappings,
};
}
catch (_e) {
return null;
}
}
exports.transform = transform;
function loadLess(context) {
return (0, utils_1.loadModule)(context, "less");
}