pasika 0.5.0 → 0.5.1
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 +29 -8
- package/package.json +1 -1
|
@@ -92,15 +92,17 @@ function jsxTagName(element) {
|
|
|
92
92
|
return ts.isIdentifier(tagName2) ? tagName2.text : void 0;
|
|
93
93
|
}
|
|
94
94
|
function rootFromExpression(expression) {
|
|
95
|
-
|
|
96
|
-
|
|
95
|
+
let unwrapped = expression;
|
|
96
|
+
while (ts.isParenthesizedExpression(unwrapped)) unwrapped = unwrapped.expression;
|
|
97
|
+
if (ts.isJsxSelfClosingElement(unwrapped)) {
|
|
98
|
+
const tagName2 = jsxTagName(unwrapped);
|
|
97
99
|
if (!tagName2?.startsWith(tagName2[0]?.toLowerCase() ?? "")) return void 0;
|
|
98
|
-
return { tagName: tagName2, attributes: [...
|
|
100
|
+
return { tagName: tagName2, attributes: [...unwrapped.attributes.properties] };
|
|
99
101
|
}
|
|
100
|
-
if (ts.isJsxElement(
|
|
101
|
-
const tagName2 = jsxTagName(
|
|
102
|
+
if (ts.isJsxElement(unwrapped)) {
|
|
103
|
+
const tagName2 = jsxTagName(unwrapped);
|
|
102
104
|
if (!tagName2?.startsWith(tagName2[0]?.toLowerCase() ?? "")) return void 0;
|
|
103
|
-
return { tagName: tagName2, attributes: [...
|
|
105
|
+
return { tagName: tagName2, attributes: [...unwrapped.openingElement.attributes.properties] };
|
|
104
106
|
}
|
|
105
107
|
return void 0;
|
|
106
108
|
}
|
|
@@ -141,12 +143,21 @@ var NEXT_ROUTING_FILES = /* @__PURE__ */ new Set([
|
|
|
141
143
|
"layout",
|
|
142
144
|
"loading",
|
|
143
145
|
"error",
|
|
146
|
+
"global-error",
|
|
144
147
|
"not-found",
|
|
145
148
|
"route",
|
|
146
149
|
"template",
|
|
147
150
|
"default",
|
|
148
151
|
"middleware",
|
|
149
|
-
"instrumentation"
|
|
152
|
+
"instrumentation",
|
|
153
|
+
// File conventions that Next.js requires to keep their exact kebab-case names
|
|
154
|
+
"apple-icon",
|
|
155
|
+
"icon",
|
|
156
|
+
"manifest",
|
|
157
|
+
"opengraph-image",
|
|
158
|
+
"robots",
|
|
159
|
+
"sitemap",
|
|
160
|
+
"twitter-image"
|
|
150
161
|
]);
|
|
151
162
|
var COMPOUND_SUFFIXES = /* @__PURE__ */ new Set(["example", "test", "spec", "stories"]);
|
|
152
163
|
function isKebabCase(str) {
|
|
@@ -1757,14 +1768,24 @@ var applicationStructureRule = {
|
|
|
1757
1768
|
// eslint/rules/named-exports.ts
|
|
1758
1769
|
import path13 from "path";
|
|
1759
1770
|
var FRAMEWORK_DEFAULT_EXPORT_FILES = /* @__PURE__ */ new Set([
|
|
1771
|
+
// App Router routing files
|
|
1760
1772
|
"default",
|
|
1761
1773
|
"error",
|
|
1774
|
+
"global-error",
|
|
1762
1775
|
"layout",
|
|
1763
1776
|
"loading",
|
|
1764
1777
|
"not-found",
|
|
1765
1778
|
"page",
|
|
1766
1779
|
"route",
|
|
1767
|
-
"template"
|
|
1780
|
+
"template",
|
|
1781
|
+
// File conventions (metadata, icons) that must default-export their handler
|
|
1782
|
+
"apple-icon",
|
|
1783
|
+
"icon",
|
|
1784
|
+
"manifest",
|
|
1785
|
+
"opengraph-image",
|
|
1786
|
+
"robots",
|
|
1787
|
+
"sitemap",
|
|
1788
|
+
"twitter-image"
|
|
1768
1789
|
]);
|
|
1769
1790
|
function isFrameworkDefaultExportFile(filename) {
|
|
1770
1791
|
const normalized = filename.replaceAll(path13.sep, "/");
|