@unocss/core 0.22.2 → 0.22.6
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/index.cjs +17 -10
- package/dist/index.mjs +17 -10
- package/package.json +1 -1
package/dist/index.cjs
CHANGED
|
@@ -388,7 +388,7 @@ function resolveConfig(userConfig = {}, defaults = {}) {
|
|
|
388
388
|
};
|
|
389
389
|
}
|
|
390
390
|
|
|
391
|
-
const version = "0.22.
|
|
391
|
+
const version = "0.22.6";
|
|
392
392
|
|
|
393
393
|
class UnoGenerator {
|
|
394
394
|
constructor(userConfig = {}, defaults = {}) {
|
|
@@ -517,10 +517,10 @@ class UnoGenerator {
|
|
|
517
517
|
if (!sorted.length)
|
|
518
518
|
return void 0;
|
|
519
519
|
const rules = sorted.reverse().map(([selector, body, noMerge], idx) => {
|
|
520
|
-
if (selector && this.config.mergeSelectors) {
|
|
520
|
+
if (!noMerge && selector && this.config.mergeSelectors) {
|
|
521
521
|
for (let i = idx + 1; i < size; i++) {
|
|
522
522
|
const current = sorted[i];
|
|
523
|
-
if (
|
|
523
|
+
if (current && !current[2] && current[0] && current[1] === body) {
|
|
524
524
|
current[0].push(...selector);
|
|
525
525
|
return null;
|
|
526
526
|
}
|
|
@@ -690,18 +690,25 @@ class UnoGenerator {
|
|
|
690
690
|
continue;
|
|
691
691
|
const { selector, entries, parent: parent2 } = this.applyVariants(item, [...item[4], ...parentVariants], raw);
|
|
692
692
|
const mapItem = selectorMap.getFallback(selector, parent2, [[], item[0]]);
|
|
693
|
-
mapItem[0].push(entries);
|
|
693
|
+
mapItem[0].push([entries, !!item[3]?.noMerge]);
|
|
694
694
|
}
|
|
695
695
|
return selectorMap.map(([e2, index], selector, mediaQuery) => {
|
|
696
|
-
const
|
|
697
|
-
const rest = e2.filter((entries) => entries.every((entry) => entry[0] !== CONTROL_SHORTCUT_NO_MERGE));
|
|
698
|
-
return [...split, rest.flat(1)].map((entries) => {
|
|
696
|
+
const stringify = (noMerge) => (entries) => {
|
|
699
697
|
const body = entriesToCss(entries);
|
|
700
698
|
if (body)
|
|
701
|
-
return [index, selector, body, mediaQuery, meta];
|
|
699
|
+
return [index, selector, body, mediaQuery, { ...meta, noMerge }];
|
|
702
700
|
return void 0;
|
|
701
|
+
};
|
|
702
|
+
const merges = [
|
|
703
|
+
[e2.filter(([, noMerge]) => noMerge).map(([entries]) => entries), true],
|
|
704
|
+
[e2.filter(([, noMerge]) => !noMerge).map(([entries]) => entries), false]
|
|
705
|
+
];
|
|
706
|
+
return merges.map(([e3, noMerge]) => {
|
|
707
|
+
const splits = e3.filter((entries) => entries.some((entry) => entry[0] === CONTROL_SHORTCUT_NO_MERGE));
|
|
708
|
+
const rests = e3.filter((entries) => entries.every((entry) => entry[0] !== CONTROL_SHORTCUT_NO_MERGE));
|
|
709
|
+
return [...splits.map(stringify(noMerge)), ...[rests.flat(1)].map(stringify(noMerge))];
|
|
703
710
|
});
|
|
704
|
-
}).flat(
|
|
711
|
+
}).flat(2).filter(Boolean);
|
|
705
712
|
}
|
|
706
713
|
isBlocked(raw) {
|
|
707
714
|
return !raw || this.config.blocklist.some((e2) => typeof e2 === "string" ? e2 === raw : e2.test(raw));
|
|
@@ -720,7 +727,7 @@ function applyScope(css, scope) {
|
|
|
720
727
|
}
|
|
721
728
|
const attributifyRe = /^\[(.+?)(~?=)"(.*)"\]$/;
|
|
722
729
|
function toEscapedSelector(raw) {
|
|
723
|
-
if (
|
|
730
|
+
if (attributifyRe.test(raw))
|
|
724
731
|
return raw.replace(attributifyRe, (_, n, s, i) => `[${e(n)}${s}"${e(i)}"]`);
|
|
725
732
|
return `.${e(raw)}`;
|
|
726
733
|
}
|
package/dist/index.mjs
CHANGED
|
@@ -384,7 +384,7 @@ function resolveConfig(userConfig = {}, defaults = {}) {
|
|
|
384
384
|
};
|
|
385
385
|
}
|
|
386
386
|
|
|
387
|
-
const version = "0.22.
|
|
387
|
+
const version = "0.22.6";
|
|
388
388
|
|
|
389
389
|
class UnoGenerator {
|
|
390
390
|
constructor(userConfig = {}, defaults = {}) {
|
|
@@ -513,10 +513,10 @@ class UnoGenerator {
|
|
|
513
513
|
if (!sorted.length)
|
|
514
514
|
return void 0;
|
|
515
515
|
const rules = sorted.reverse().map(([selector, body, noMerge], idx) => {
|
|
516
|
-
if (selector && this.config.mergeSelectors) {
|
|
516
|
+
if (!noMerge && selector && this.config.mergeSelectors) {
|
|
517
517
|
for (let i = idx + 1; i < size; i++) {
|
|
518
518
|
const current = sorted[i];
|
|
519
|
-
if (
|
|
519
|
+
if (current && !current[2] && current[0] && current[1] === body) {
|
|
520
520
|
current[0].push(...selector);
|
|
521
521
|
return null;
|
|
522
522
|
}
|
|
@@ -686,18 +686,25 @@ class UnoGenerator {
|
|
|
686
686
|
continue;
|
|
687
687
|
const { selector, entries, parent: parent2 } = this.applyVariants(item, [...item[4], ...parentVariants], raw);
|
|
688
688
|
const mapItem = selectorMap.getFallback(selector, parent2, [[], item[0]]);
|
|
689
|
-
mapItem[0].push(entries);
|
|
689
|
+
mapItem[0].push([entries, !!item[3]?.noMerge]);
|
|
690
690
|
}
|
|
691
691
|
return selectorMap.map(([e2, index], selector, mediaQuery) => {
|
|
692
|
-
const
|
|
693
|
-
const rest = e2.filter((entries) => entries.every((entry) => entry[0] !== CONTROL_SHORTCUT_NO_MERGE));
|
|
694
|
-
return [...split, rest.flat(1)].map((entries) => {
|
|
692
|
+
const stringify = (noMerge) => (entries) => {
|
|
695
693
|
const body = entriesToCss(entries);
|
|
696
694
|
if (body)
|
|
697
|
-
return [index, selector, body, mediaQuery, meta];
|
|
695
|
+
return [index, selector, body, mediaQuery, { ...meta, noMerge }];
|
|
698
696
|
return void 0;
|
|
697
|
+
};
|
|
698
|
+
const merges = [
|
|
699
|
+
[e2.filter(([, noMerge]) => noMerge).map(([entries]) => entries), true],
|
|
700
|
+
[e2.filter(([, noMerge]) => !noMerge).map(([entries]) => entries), false]
|
|
701
|
+
];
|
|
702
|
+
return merges.map(([e3, noMerge]) => {
|
|
703
|
+
const splits = e3.filter((entries) => entries.some((entry) => entry[0] === CONTROL_SHORTCUT_NO_MERGE));
|
|
704
|
+
const rests = e3.filter((entries) => entries.every((entry) => entry[0] !== CONTROL_SHORTCUT_NO_MERGE));
|
|
705
|
+
return [...splits.map(stringify(noMerge)), ...[rests.flat(1)].map(stringify(noMerge))];
|
|
699
706
|
});
|
|
700
|
-
}).flat(
|
|
707
|
+
}).flat(2).filter(Boolean);
|
|
701
708
|
}
|
|
702
709
|
isBlocked(raw) {
|
|
703
710
|
return !raw || this.config.blocklist.some((e2) => typeof e2 === "string" ? e2 === raw : e2.test(raw));
|
|
@@ -716,7 +723,7 @@ function applyScope(css, scope) {
|
|
|
716
723
|
}
|
|
717
724
|
const attributifyRe = /^\[(.+?)(~?=)"(.*)"\]$/;
|
|
718
725
|
function toEscapedSelector(raw) {
|
|
719
|
-
if (
|
|
726
|
+
if (attributifyRe.test(raw))
|
|
720
727
|
return raw.replace(attributifyRe, (_, n, s, i) => `[${e(n)}${s}"${e(i)}"]`);
|
|
721
728
|
return `.${e(raw)}`;
|
|
722
729
|
}
|