UNPKG

unnestcss

Version:
29 lines 877 B
export const nestSelector = (sl, parent) => { if (sl.includes("&")) { return sl.replace(/&/g, parent || ":scope"); } return parent ? parent + " " + sl : sl; }; export const combineSelectors = (sl, parent) => { if (!parent) { return sl.map((s0) => nestSelector(s0)); } return sl.map((s1) => parent.map((p1) => nestSelector(s1, p1))).flat(); }; export const combineAtRules = (...ats) => { const record = {}; ats.forEach(({ name, params }) => { record[name] || (record[name] = []); record[name].push(params); }); return Object.keys(record).map((name) => { const value = record[name]; if (name === "layer") { return { name, params: value.join(".") }; } return { name, params: value.join(" and ") }; }); }; //# sourceMappingURL=combine.js.map