@jterrazz/typescript 7.1.0 → 7.2.0
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/package.json +1 -1
- package/presets/oxlint/base.js +4 -0
- package/presets/oxlint/expo.js +3 -0
- package/presets/oxlint/next.js +12 -4
package/package.json
CHANGED
package/presets/oxlint/base.js
CHANGED
|
@@ -108,6 +108,10 @@ export default defineConfig({
|
|
|
108
108
|
'import/no-unassigned-import': 'off',
|
|
109
109
|
'import/no-named-default': 'off',
|
|
110
110
|
'import/no-nodejs-modules': 'off',
|
|
111
|
+
// Exports-at-end fights how these files actually read everywhere in
|
|
112
|
+
// The ecosystem — three repos had disabled it locally (jterrazz-web,
|
|
113
|
+
// Package-test, package-attestation) before it moved here.
|
|
114
|
+
'import/exports-last': 'off',
|
|
111
115
|
|
|
112
116
|
// ============================================
|
|
113
117
|
// ENABLED - Code style enforcement
|
package/presets/oxlint/expo.js
CHANGED
|
@@ -9,6 +9,9 @@ export default defineConfig({
|
|
|
9
9
|
extends: [base],
|
|
10
10
|
plugins: ['typescript', 'import', 'react'],
|
|
11
11
|
jsPlugins: [pluginPath],
|
|
12
|
+
// `.expo/` is the toolchain cache and `assets/` is scaffolded by Expo
|
|
13
|
+
// Itself (icons, splash, fonts) — never source.
|
|
14
|
+
ignorePatterns: ['dist/**', 'node_modules/**', '.expo/**', 'assets/**'],
|
|
12
15
|
rules: {
|
|
13
16
|
'typescript/no-require-imports': [
|
|
14
17
|
'error',
|
package/presets/oxlint/next.js
CHANGED
|
@@ -9,7 +9,17 @@ export default defineConfig({
|
|
|
9
9
|
extends: [base],
|
|
10
10
|
plugins: ['typescript', 'import', 'react', 'nextjs'],
|
|
11
11
|
jsPlugins: [pluginPath],
|
|
12
|
-
|
|
12
|
+
// `public/` is Next's static dir and `assets/` is the stack's convention
|
|
13
|
+
// For content trees (jterrazz-web: signed attestation bytes live there —
|
|
14
|
+
// A formatter pass would invalidate every proof). Neither is source.
|
|
15
|
+
ignorePatterns: [
|
|
16
|
+
'dist/**',
|
|
17
|
+
'node_modules/**',
|
|
18
|
+
'.next/**',
|
|
19
|
+
'next-env.d.ts',
|
|
20
|
+
'assets/**',
|
|
21
|
+
'public/**',
|
|
22
|
+
],
|
|
13
23
|
rules: {
|
|
14
24
|
'codestyle/imports-without-ext': 'error',
|
|
15
25
|
'react/react-in-jsx-scope': 'off',
|
|
@@ -20,9 +30,7 @@ export default defineConfig({
|
|
|
20
30
|
'react/jsx-max-depth': 'off',
|
|
21
31
|
'unicorn/no-nested-ternary': 'off',
|
|
22
32
|
// -- Rules that fight the Next idiom itself, not bad code --
|
|
23
|
-
//
|
|
24
|
-
// Default export — exports-at-end is not how these files read.
|
|
25
|
-
'import/exports-last': 'off',
|
|
33
|
+
// (import/exports-last is off in base: it fights the whole ecosystem.)
|
|
26
34
|
// Immutable serialization maps (`.map((x) => ({ ...x, url }))`) are
|
|
27
35
|
// The dominant React idiom; the Object.assign form is strictly worse
|
|
28
36
|
// For the build-time collection sizes a site actually maps over.
|