astro-ghostcms/.pnpm-store/v3/files/88/1ecae21f76def90338d8b85d782...

41 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 stylus = loadStylus(context);
if (!stylus) {
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)}.stylus`;
try {
let output;
const style = stylus(code, {
filename,
}).set("sourcemap", {});
style.render((_error, code) => {
output = code;
});
if (output == null) {
return null;
}
return {
inputRange,
output,
mappings: style.sourcemap
.mappings,
};
}
catch (_e) {
return null;
}
}
exports.transform = transform;
function loadStylus(context) {
return (0, utils_1.loadModule)(context, "stylus");
}