@navikt/aksel
Version:
Aksel command line interface. Codemods and other utilities for Aksel users.
22 lines (21 loc) • 794 B
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.default = transformer;
const legacy_tokens_1 = require("../config/legacy.tokens");
function transformer(file) {
let src = file.source;
/*
Replace usages: --a-token -> --ax-replacement
Matches "--a-token" with word boundaries.
Uses negative lookahead to skip definitions (--a-token:)
*/
src = src.replace(/(?<![\w-])(--a-[\w-]+)(?![\w-])(?!\s*:)/g, (match, tokenName) => {
const key = tokenName.replace("--a-", "");
const config = legacy_tokens_1.legacyTokenConfig[key];
if (config === null || config === void 0 ? void 0 : config.replacement) {
return `--ax-${config.replacement}`;
}
return match;
});
return src;
}