pasika 0.10.26 → 0.10.27
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/eslint/pasika/index.js +34 -2
- package/package.json +1 -1
|
@@ -729,6 +729,7 @@ var noArbitraryTailwindRule = {
|
|
|
729
729
|
|
|
730
730
|
// eslint/rules/unknown-utility.ts
|
|
731
731
|
import { existsSync, readdirSync, readFileSync as readFileSync2, statSync } from "fs";
|
|
732
|
+
import { createRequire as createRequire2 } from "module";
|
|
732
733
|
import path5 from "path";
|
|
733
734
|
var PREFIX_NAMESPACES = {
|
|
734
735
|
bg: ["color"],
|
|
@@ -935,6 +936,31 @@ var STATIC_COLOR_SPECIALS = /* @__PURE__ */ new Set(["transparent", "current", "
|
|
|
935
936
|
var NUMERIC_TOKEN_RE = /^-?(?:\d+\.?\d*|\.\d+)(?:%|px|rem|em)?$/;
|
|
936
937
|
var SIDE_WIDTH_TOKEN_RE = /^(?:x|y|t|r|b|l|s|e)-(?:\d+\.?\d*|\.\d+)(?:%|px|rem|em)?$/;
|
|
937
938
|
var OFFSET_TOKEN_RE = /^offset-(?:\d+\.?\d*|\.\d+)(?:%|px|rem|em)?$/;
|
|
939
|
+
var require2 = createRequire2(import.meta.url);
|
|
940
|
+
var tailwindMerge;
|
|
941
|
+
function getTailwindMerge() {
|
|
942
|
+
if (tailwindMerge !== void 0) return tailwindMerge ?? void 0;
|
|
943
|
+
try {
|
|
944
|
+
const moduleValue = require2("tailwind-merge");
|
|
945
|
+
if (typeof moduleValue === "object" && moduleValue !== null && "twMerge" in moduleValue && typeof moduleValue.twMerge === "function") {
|
|
946
|
+
const merge = moduleValue.twMerge;
|
|
947
|
+
tailwindMerge = (...classLists) => {
|
|
948
|
+
const result = Reflect.apply(merge, void 0, classLists);
|
|
949
|
+
return typeof result === "string" ? result : classLists.join(" ");
|
|
950
|
+
};
|
|
951
|
+
} else {
|
|
952
|
+
tailwindMerge = null;
|
|
953
|
+
}
|
|
954
|
+
} catch {
|
|
955
|
+
tailwindMerge = null;
|
|
956
|
+
}
|
|
957
|
+
return tailwindMerge ?? void 0;
|
|
958
|
+
}
|
|
959
|
+
function isBuiltInTailwindUtility(utility) {
|
|
960
|
+
const twMerge = getTailwindMerge();
|
|
961
|
+
if (!twMerge) return void 0;
|
|
962
|
+
return twMerge(utility, utility) === utility;
|
|
963
|
+
}
|
|
938
964
|
function stylesheetFiles(dir) {
|
|
939
965
|
let entries;
|
|
940
966
|
try {
|
|
@@ -1124,7 +1150,7 @@ function isKnown(className, inventory) {
|
|
|
1124
1150
|
if (!inventory.defaultsReset && DEFAULT_TOKENS[prefix]?.includes(token)) return true;
|
|
1125
1151
|
return false;
|
|
1126
1152
|
}
|
|
1127
|
-
return !inventory.utilityPrefixes.has(prefix);
|
|
1153
|
+
return isBuiltInTailwindUtility(utility) ?? !inventory.utilityPrefixes.has(prefix);
|
|
1128
1154
|
}
|
|
1129
1155
|
if (NUMERIC_TOKEN_RE.test(token) || SIDE_WIDTH_TOKEN_RE.test(token) || OFFSET_TOKEN_RE.test(token)) return true;
|
|
1130
1156
|
if (PREFIX_BUILTINS[prefix]?.includes(token)) return true;
|
|
@@ -1184,7 +1210,13 @@ var unknownUtilityRule = {
|
|
|
1184
1210
|
return;
|
|
1185
1211
|
}
|
|
1186
1212
|
if (expression.type === "TemplateLiteral") {
|
|
1187
|
-
|
|
1213
|
+
const lastQuasi = expression.quasis.length - 1;
|
|
1214
|
+
for (const [index, quasi] of expression.quasis.entries()) {
|
|
1215
|
+
let value = quasi.value.raw;
|
|
1216
|
+
if (index > 0) value = value.replace(/^\S*/, "");
|
|
1217
|
+
if (index < lastQuasi) value = value.replace(/\S*$/, "");
|
|
1218
|
+
reportUnknownClasses(node, value);
|
|
1219
|
+
}
|
|
1188
1220
|
return;
|
|
1189
1221
|
}
|
|
1190
1222
|
if (expression.type === "LogicalExpression") {
|