@neurodevs/eslint-config-ndx 0.0.8 → 0.0.9

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.
@@ -1,58 +1,53 @@
1
1
  {
2
- "version": "0.2.0",
3
- "configurations": [
4
- {
5
- "type": "node",
6
- "request": "attach",
7
- "name": "attach.tests",
8
- "port": 5200,
9
- "restart": true,
10
- "timeout": 10000
11
- },
12
- {
13
- "type": "node",
14
- "request": "launch",
15
- "name": "test.file",
16
- "runtimeExecutable": "node",
17
- "runtimeArgs": [
18
- "--inspect-brk",
19
- "--trace-warnings",
20
- "${workspaceFolder}/node_modules/.bin/jest",
21
- "${fileBasenameNoExtension}",
22
- "--detectOpenHandles"
23
- ],
24
- "cwd": "${workspaceFolder}",
25
- "console": "integratedTerminal",
26
- "internalConsoleOptions": "neverOpen"
27
- },
28
- {
29
- "type": "node",
30
- "request": "launch",
31
- "name": "test.all",
32
- "runtimeExecutable": "node",
33
- "runtimeArgs": [
34
- "--inspect-brk",
35
- "--trace-warnings",
36
- "${workspaceFolder}/node_modules/.bin/jest"
37
- ],
38
- "cwd": "${workspaceFolder}",
39
- "console": "integratedTerminal",
40
- "internalConsoleOptions": "neverOpen"
41
- },
42
- {
43
- "type": "node",
44
- "request": "launch",
45
- "name": "boot",
46
- "runtimeExecutable": "yarn",
47
- "runtimeArgs": [
48
- "run",
49
- "--inspect-brk",
50
- "--trace-warnings",
51
- "boot"
52
- ],
53
- "cwd": "${workspaceFolder}",
54
- "console": "integratedTerminal",
55
- "internalConsoleOptions": "neverOpen"
56
- }
57
- ]
58
- }
2
+ "version": "0.2.0",
3
+ "configurations": [
4
+ {
5
+ "type": "node",
6
+ "request": "attach",
7
+ "name": "attach.tests",
8
+ "port": 5200,
9
+ "restart": true,
10
+ "timeout": 10000
11
+ },
12
+ {
13
+ "type": "node",
14
+ "request": "launch",
15
+ "name": "test.file",
16
+ "runtimeExecutable": "node",
17
+ "runtimeArgs": [
18
+ "--inspect-brk",
19
+ "--trace-warnings",
20
+ "${workspaceFolder}/node_modules/.bin/jest",
21
+ "${fileBasenameNoExtension}",
22
+ "--detectOpenHandles"
23
+ ],
24
+ "cwd": "${workspaceFolder}",
25
+ "console": "integratedTerminal",
26
+ "internalConsoleOptions": "neverOpen"
27
+ },
28
+ {
29
+ "type": "node",
30
+ "request": "launch",
31
+ "name": "test.all",
32
+ "runtimeExecutable": "node",
33
+ "runtimeArgs": [
34
+ "--inspect-brk",
35
+ "--trace-warnings",
36
+ "${workspaceFolder}/node_modules/.bin/jest"
37
+ ],
38
+ "cwd": "${workspaceFolder}",
39
+ "console": "integratedTerminal",
40
+ "internalConsoleOptions": "neverOpen"
41
+ },
42
+ {
43
+ "type": "node",
44
+ "request": "launch",
45
+ "name": "boot",
46
+ "runtimeExecutable": "yarn",
47
+ "runtimeArgs": ["run", "--inspect-brk", "--trace-warnings", "boot"],
48
+ "cwd": "${workspaceFolder}",
49
+ "console": "integratedTerminal",
50
+ "internalConsoleOptions": "neverOpen"
51
+ }
52
+ ]
53
+ }
@@ -1,67 +1,63 @@
1
1
  {
2
- "debug.node.autoAttach": "on",
3
- "git.ignoreLimitWarning": true,
4
- "javascript.validate.enable": false,
5
- "files.watcherExclude": {
6
- "**/.git/objects/**": true,
7
- "**/.git/subtree-cache/**": true,
8
- "**/build/**": true,
9
- "**/node_modules/**": true,
10
- },
11
- "search.exclude": {
12
- "**/build/**": true,
13
- "**/node_modules/**": true,
14
- "**/.next/**": true
15
- },
16
- "editor.maxTokenizationLineLength": 20000000,
17
- "[javascript]": {
18
- "editor.formatOnSave": false
19
- },
20
- "[javascriptreact]": {
21
- "editor.formatOnSave": false
22
- },
23
- "[typescript]": {
24
- "editor.formatOnSave": false
25
- },
26
- "[typescriptreact]": {
27
- "editor.formatOnSave": false
28
- },
29
- "[handlebars]": {
30
- "editor.formatOnSave": false
31
- },
32
- "typescript.tsdk": "node_modules/typescript/lib",
33
- "cSpell.ignorePaths": [
34
- "**/package-lock.json",
35
- "**/node_modules/**",
36
- "**/build/**",
37
- "**/vscode-extension/**",
38
- "**/.git/objects/**",
39
- ".vscode",
40
- ".spruce"
41
- ],
42
- "cSpell.words": [
43
- "arkit",
44
- "autogenerated",
45
- "scrollable",
46
- "serializable"
47
- ],
48
- "debug.javascript.unmapMissingSources": true,
49
- "javascript.preferences.importModuleSpecifier": "relative",
50
- "typescript.preferences.importModuleSpecifier": "relative",
51
- "eslint.useFlatConfig": true,
52
- "eslint.enable": true,
53
- "eslint.validate": [
54
- "javascript",
55
- "javascriptreact",
56
- "typescript",
57
- "typescriptreact"
58
- ],
59
- "eslint.workingDirectories": [
60
- "./"
61
- ],
62
- "typescript.validate.enable": true,
63
- "editor.formatOnSave": false,
64
- "editor.codeActionsOnSave": {
65
- "source.fixAll.eslint": "always"
66
- }
67
- }
2
+ "debug.node.autoAttach": "on",
3
+ "git.ignoreLimitWarning": true,
4
+ "javascript.validate.enable": false,
5
+ "files.watcherExclude": {
6
+ "**/.git/objects/**": true,
7
+ "**/.git/subtree-cache/**": true,
8
+ "**/build/**": true,
9
+ "**/node_modules/**": true
10
+ },
11
+ "search.exclude": {
12
+ "**/build/**": true,
13
+ "**/node_modules/**": true,
14
+ "**/.next/**": true
15
+ },
16
+ "editor.codeActionsOnSave": {
17
+ "source.fixAll.eslint": "always"
18
+ },
19
+ "editor.defaultFormatter": "esbenp.prettier-vscode",
20
+ "editor.formatOnSave": true,
21
+ "editor.formatOnSaveMode": "file",
22
+ "editor.maxTokenizationLineLength": 20000000,
23
+ "[javascript]": {
24
+ "editor.defaultFormatter": "esbenp.prettier-vscode",
25
+ "editor.formatOnSave": true
26
+ },
27
+ "[javascriptreact]": {
28
+ "editor.defaultFormatter": "esbenp.prettier-vscode",
29
+ "editor.formatOnSave": true
30
+ },
31
+ "[typescript]": {
32
+ "editor.defaultFormatter": "esbenp.prettier-vscode",
33
+ "editor.formatOnSave": true
34
+ },
35
+ "[typescriptreact]": {
36
+ "editor.defaultFormatter": "esbenp.prettier-vscode",
37
+ "editor.formatOnSave": true
38
+ },
39
+ "eslint.enable": true,
40
+ "eslint.useFlatConfig": true,
41
+ "eslint.validate": [
42
+ "javascript",
43
+ "javascriptreact",
44
+ "typescript",
45
+ "typescriptreact"
46
+ ],
47
+ "eslint.workingDirectories": ["./"],
48
+ "debug.javascript.unmapMissingSources": true,
49
+ "javascript.preferences.importModuleSpecifier": "relative",
50
+ "typescript.preferences.importModuleSpecifier": "relative",
51
+ "typescript.tsdk": "node_modules/typescript/lib",
52
+ "typescript.validate.enable": true,
53
+ "cSpell.ignorePaths": [
54
+ "**/package-lock.json",
55
+ "**/node_modules/**",
56
+ "**/build/**",
57
+ "**/vscode-extension/**",
58
+ "**/.git/objects/**",
59
+ ".vscode",
60
+ ".spruce"
61
+ ],
62
+ "cSpell.words": ["arkit", "autogenerated", "scrollable", "serializable"]
63
+ }
@@ -127,4 +127,4 @@
127
127
  "type": "promptString"
128
128
  }
129
129
  ]
130
- }
130
+ }
package/README.md CHANGED
@@ -1,2 +1,3 @@
1
1
  # eslint-config-ndx
2
+
2
3
  ESLint flat-config preset for modern Node.js + TypeScript projects
@@ -1,8 +1,4 @@
1
1
  {
2
- "skipped": [
3
- "skill"
4
- ],
5
- "installed": [
6
- "test"
7
- ]
8
- }
2
+ "skipped": ["skill"],
3
+ "installed": ["test"]
4
+ }
@@ -0,0 +1,2 @@
1
+ declare const _default: any[];
2
+ export default _default;
@@ -1,11 +1,11 @@
1
1
  import globals from 'globals';
2
- import { defineConfig } from 'eslint/config';
3
2
  import prettierConfig from 'eslint-config-prettier/flat';
3
+ import biomeConfig from 'eslint-config-biome';
4
4
  import esTypescript from '@typescript-eslint/eslint-plugin';
5
5
  import esParser from '@typescript-eslint/parser';
6
6
  import esImport from 'eslint-plugin-import';
7
7
  import esReact from 'eslint-plugin-react';
8
- export default defineConfig([
8
+ export default [
9
9
  prettierConfig,
10
10
  {
11
11
  ignores: ['build/**'],
@@ -34,6 +34,11 @@ export default defineConfig([
34
34
  'react/prop-types': 'off',
35
35
  },
36
36
  settings: {
37
+ 'import/resolver': {
38
+ node: {
39
+ extensions: ['.js', '.mjs', '.ts', '.tsx'],
40
+ },
41
+ },
37
42
  react: {
38
43
  version: 'detect',
39
44
  },
@@ -66,11 +71,14 @@ export default defineConfig([
66
71
  },
67
72
  },
68
73
  {
69
- files: ['*.js'],
74
+ files: ['**/*.js', '**/*.mjs'],
70
75
  plugins: {
71
- '@typescript-eslint': esTypescript,
76
+ import: esImport,
77
+ },
78
+ rules: {
79
+ ...esImport.configs.recommended.rules,
72
80
  },
73
- rules: Object.assign(esImport.rules),
74
81
  },
75
- ]);
76
- //# sourceMappingURL=eslint.config.mjs.map
82
+ biomeConfig,
83
+ ];
84
+ //# sourceMappingURL=eslint.config.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"eslint.config.js","sourceRoot":"","sources":["../src/eslint.config.js"],"names":[],"mappings":"AAAA,OAAO,OAAO,MAAM,SAAS,CAAA;AAE7B,OAAO,cAAc,MAAM,6BAA6B,CAAA;AACxD,OAAO,WAAW,MAAM,qBAAqB,CAAA;AAE7C,OAAO,YAAY,MAAM,kCAAkC,CAAA;AAC3D,OAAO,QAAQ,MAAM,2BAA2B,CAAA;AAEhD,OAAO,QAAQ,MAAM,sBAAsB,CAAA;AAC3C,OAAO,OAAO,MAAM,qBAAqB,CAAA;AAEzC,eAAe;IACX,cAAc;IACd;QACI,OAAO,EAAE,CAAC,UAAU,CAAC;QACrB,OAAO,EAAE;YACL,MAAM,EAAE,QAAQ;YAChB,KAAK,EAAE,OAAO;SACjB;QACD,eAAe,EAAE;YACb,WAAW,EAAE,QAAQ;YACrB,UAAU,EAAE,QAAQ;YACpB,OAAO,EAAE;gBACL,GAAG,OAAO,CAAC,OAAO;gBAClB,GAAG,OAAO,CAAC,IAAI;gBACf,GAAG,OAAO,CAAC,IAAI;aAClB;SACJ;QACD,KAAK,EAAE;YACH,KAAK,EAAE,OAAO;YACd,YAAY,EAAE,KAAK;YACnB,UAAU,EAAE,KAAK;YACjB,QAAQ,EAAE,OAAO;YACjB,gBAAgB,EAAE,OAAO;YACzB,gBAAgB,EAAE,KAAK;YACvB,kBAAkB,EAAE,CAAC,OAAO,EAAE,QAAQ,CAAC;YACvC,oBAAoB,EAAE,OAAO;YAC7B,kBAAkB,EAAE,KAAK;SAC5B;QACD,QAAQ,EAAE;YACN,iBAAiB,EAAE;gBACf,IAAI,EAAE;oBACF,UAAU,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,CAAC;iBAC7C;aACJ;YACD,KAAK,EAAE;gBACH,OAAO,EAAE,QAAQ;aACpB;SACJ;KACJ;IACD;QACI,KAAK,EAAE,CAAC,SAAS,EAAE,UAAU,CAAC;QAC9B,OAAO,EAAE;YACL,oBAAoB,EAAE,YAAY;SACrC;QACD,eAAe,EAAE;YACb,MAAM,EAAE,QAAQ;SACnB;QACD,KAAK,EAAE;YACH,mCAAmC,EAAE;gBACjC,OAAO;gBACP;oBACI,iBAAiB,EAAE,IAAI;oBACvB,iBAAiB,EAAE,IAAI;oBACvB,yBAAyB,EAAE,IAAI;iBAClC;aACJ;YACD,uCAAuC,EAAE,CAAC;YAC1C,+DAA+D;YAC/D,kEAAkE;YAClE,kCAAkC,EAAE,CAAC;YACrC,sCAAsC,EAAE,CAAC;YACzC,kDAAkD,EAAE,CAAC;YACrD,oCAAoC,EAAE,CAAC;SAC1C;KACJ;IACD;QACI,KAAK,EAAE,CAAC,SAAS,EAAE,UAAU,CAAC;QAC9B,OAAO,EAAE;YACL,MAAM,EAAE,QAAQ;SACnB;QACD,KAAK,EAAE;YACH,GAAG,QAAQ,CAAC,OAAO,CAAC,WAAW,CAAC,KAAK;SACxC;KACJ;IACD,WAAW;CACd,CAAA"}
package/build/index.d.ts CHANGED
@@ -1 +1 @@
1
- export { default } from './eslint.config.mjs';
1
+ export { default } from './eslint.config.js';
package/build/index.js CHANGED
@@ -1,2 +1,2 @@
1
- export { default } from './eslint.config.mjs';
1
+ export { default } from './eslint.config.js';
2
2
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,qBAAqB,CAAA"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,oBAAoB,CAAA"}
@@ -1,7 +1,7 @@
1
1
  import globals from 'globals'
2
2
 
3
- import { defineConfig } from 'eslint/config'
4
3
  import prettierConfig from 'eslint-config-prettier/flat'
4
+ import biomeConfig from 'eslint-config-biome'
5
5
 
6
6
  import esTypescript from '@typescript-eslint/eslint-plugin'
7
7
  import esParser from '@typescript-eslint/parser'
@@ -9,8 +9,7 @@ import esParser from '@typescript-eslint/parser'
9
9
  import esImport from 'eslint-plugin-import'
10
10
  import esReact from 'eslint-plugin-react'
11
11
 
12
-
13
- export default defineConfig([
12
+ export default [
14
13
  prettierConfig,
15
14
  {
16
15
  ignores: ['build/**'],
@@ -27,7 +26,7 @@ export default defineConfig([
27
26
  ...globals.jest,
28
27
  },
29
28
  },
30
- rules: {
29
+ rules: {
31
30
  curly: 'error',
32
31
  'no-console': 'off',
33
32
  'no-undef': 'off',
@@ -71,10 +70,19 @@ export default defineConfig([
71
70
  },
72
71
  },
73
72
  {
74
- files: ['*.js'],
73
+ files: ['**/*.js', '**/*.mjs'],
75
74
  plugins: {
76
- '@typescript-eslint': esTypescript,
75
+ import: esImport,
76
+ },
77
+ rules: {
78
+ ...esImport.configs.recommended.rules,
79
+ },
80
+ },
81
+ {
82
+ files: ['**/eslint.config.js'],
83
+ rules: {
84
+ 'import/no-unresolved': 'off',
77
85
  },
78
- rules: Object.assign(esImport.rules),
79
86
  },
80
- ])
87
+ biomeConfig,
88
+ ]
package/package.json CHANGED
@@ -1,84 +1,85 @@
1
1
  {
2
- "name": "@neurodevs/eslint-config-ndx",
3
- "version": "0.0.8",
4
- "description": "ESLint flat-config preset for modern Node.js + TypeScript projects",
5
- "type": "module",
6
- "keywords": [
7
- "nodejs",
8
- "typescript",
9
- "tdd",
10
- "eslint"
11
- ],
12
- "license": "MIT",
13
- "author": "Eric Yates <hello@ericthecurious.com>",
14
- "homepage": "https://github.com/neurodevs/eslint-config-ndx",
15
- "repository": {
16
- "type": "git",
17
- "url": "git+https://github.com/neurodevs/eslint-config-ndx.git"
18
- },
19
- "bugs": {
20
- "url": "https://github.com/neurodevs/eslint-config-ndx/issues"
21
- },
22
- "main": "build/index.js",
23
- "scripts": {
24
- "build.ci": "yarn run build.tsc && yarn run lint",
25
- "build.dev": "yarn run build.tsc --sourceMap ; yarn run lint",
26
- "build.copy-files": "mkdir -p build && rsync -avzq --exclude='*.ts' ./src/ ./build/",
27
- "build.tsc": "yarn run build.copy-files && tsc",
28
- "clean": "yarn run clean.build",
29
- "clean.all": "yarn run clean.dependencies && yarn run clean.build",
30
- "clean.build": "rm -rf build/",
31
- "clean.dependencies": "rm -rf node_modules/ package-lock.json yarn.lock",
32
- "fix.lint": "eslint --fix --cache '**/*.ts'",
33
- "lint": "eslint --cache '**/*.ts'",
34
- "lint.tsc": "tsc -p . --noEmit",
35
- "post.watch.build": "yarn run build.copy-files",
36
- "rebuild": "yarn run clean.all && yarn install && yarn run build.dev",
37
- "update.dependencies": "yarn run clean.dependencies && yarn",
38
- "test": "jest",
39
- "watch.build.dev": "tsc-watch --sourceMap --onCompilationComplete 'yarn run post.watch.build'",
40
- "watch.rebuild": "yarn run clean.all && yarn install && yarn run watch.build.dev",
41
- "watch.tsc": "tsc -w"
42
- },
43
- "dependencies": {
44
- "@typescript-eslint/eslint-plugin": "^8.56.0",
45
- "@typescript-eslint/parser": "^8.56.0",
46
- "eslint": "^9.39.2",
47
- "eslint-config-prettier": "^10.1.8",
48
- "eslint-plugin-import": "^2.32.0",
49
- "eslint-plugin-react": "^7.37.5"
50
- },
51
- "devDependencies": {
52
- "@neurodevs/node-tdd": "^0.2.5",
53
- "@types/node": "^25.3.0",
54
- "chokidar-cli": "^3.0.0",
55
- "concurrently": "^9.2.1",
56
- "jest": "^30.2.0",
57
- "jest-circus": "^30.2.0",
58
- "prettier": "^3.8.1",
59
- "ts-node": "^10.9.2",
60
- "tsc-watch": "^7.2.0",
61
- "typescript": "^5.9.3"
62
- },
63
- "skill": {
64
- "namespace": "eslint-config-ndx"
65
- },
66
- "jest": {
67
- "testRunner": "jest-circus/runner",
68
- "maxWorkers": 4,
69
- "testTimeout": 120000,
70
- "testEnvironment": "node",
71
- "testPathIgnorePatterns": [
72
- "<rootDir>/tmp/",
73
- "<rootDir>/src/",
74
- "<rootDir>/node_modules/",
75
- "<rootDir>/build/__tests__/testDirsAndFiles/"
2
+ "name": "@neurodevs/eslint-config-ndx",
3
+ "version": "0.0.9",
4
+ "description": "ESLint config for the Neurodevs ecosystem",
5
+ "type": "module",
6
+ "keywords": [
7
+ "nodejs",
8
+ "typescript",
9
+ "tdd",
10
+ "eslint"
76
11
  ],
77
- "testMatch": [
78
- "**/__tests__/**/*.test.js?(x)"
79
- ],
80
- "moduleNameMapper": {
81
- "^#spruce/(.*)$": "<rootDir>/build/.spruce/$1"
12
+ "license": "MIT",
13
+ "author": "Eric Yates <hello@ericthecurious.com>",
14
+ "homepage": "https://github.com/neurodevs/eslint-config-ndx",
15
+ "repository": {
16
+ "type": "git",
17
+ "url": "git+https://github.com/neurodevs/eslint-config-ndx.git"
18
+ },
19
+ "bugs": {
20
+ "url": "https://github.com/neurodevs/eslint-config-ndx/issues"
21
+ },
22
+ "main": "build/index.js",
23
+ "scripts": {
24
+ "build.ci": "yarn run build.tsc && yarn run lint",
25
+ "build.dev": "yarn run build.tsc --sourceMap ; yarn run lint",
26
+ "build.copy-files": "mkdir -p build && rsync -avzq --exclude='*.ts' ./src/ ./build/",
27
+ "build.tsc": "yarn run build.copy-files && tsc",
28
+ "clean": "yarn run clean.build",
29
+ "clean.all": "yarn run clean.dependencies && yarn run clean.build",
30
+ "clean.build": "rm -rf build/",
31
+ "clean.dependencies": "rm -rf node_modules/ package-lock.json yarn.lock",
32
+ "fix.lint": "eslint --fix --cache '**/*.ts'",
33
+ "lint": "eslint --cache '**/*.ts'",
34
+ "lint.tsc": "tsc -p . --noEmit",
35
+ "post.watch.build": "yarn run build.copy-files",
36
+ "rebuild": "yarn run clean.all && yarn install && yarn run build.dev",
37
+ "update.dependencies": "yarn run clean.dependencies && yarn",
38
+ "test": "jest",
39
+ "watch.build.dev": "tsc-watch --sourceMap --onCompilationComplete 'yarn run post.watch.build'",
40
+ "watch.rebuild": "yarn run clean.all && yarn install && yarn run watch.build.dev",
41
+ "watch.tsc": "tsc -w"
42
+ },
43
+ "dependencies": {
44
+ "@typescript-eslint/eslint-plugin": "^8.56.0",
45
+ "@typescript-eslint/parser": "^8.56.0",
46
+ "eslint": "^9.39.2",
47
+ "eslint-config-biome": "^2.1.3",
48
+ "eslint-config-prettier": "^10.1.8",
49
+ "eslint-plugin-import": "^2.32.0",
50
+ "eslint-plugin-react": "^7.37.5"
51
+ },
52
+ "devDependencies": {
53
+ "@neurodevs/node-tdd": "^0.2.5",
54
+ "@neurodevs/prettier-config-ndx": "^0.0.1",
55
+ "@types/node": "^25.3.0",
56
+ "chokidar-cli": "^3.0.0",
57
+ "concurrently": "^9.2.1",
58
+ "jest": "^30.2.0",
59
+ "jest-circus": "^30.2.0",
60
+ "ts-node": "^10.9.2",
61
+ "tsc-watch": "^7.2.0",
62
+ "typescript": "^5.9.3"
63
+ },
64
+ "skill": {
65
+ "namespace": "eslint-config-ndx"
66
+ },
67
+ "jest": {
68
+ "testRunner": "jest-circus/runner",
69
+ "maxWorkers": 4,
70
+ "testTimeout": 120000,
71
+ "testEnvironment": "node",
72
+ "testPathIgnorePatterns": [
73
+ "<rootDir>/tmp/",
74
+ "<rootDir>/src/",
75
+ "<rootDir>/node_modules/",
76
+ "<rootDir>/build/__tests__/testDirsAndFiles/"
77
+ ],
78
+ "testMatch": [
79
+ "**/__tests__/**/*.test.js?(x)"
80
+ ],
81
+ "moduleNameMapper": {
82
+ "^#spruce/(.*)$": "<rootDir>/build/.spruce/$1"
83
+ }
82
84
  }
83
- }
84
85
  }
@@ -0,0 +1,3 @@
1
+ import prettierConfigNdx from '@neurodevs/prettier-config-ndx'
2
+
3
+ export default prettierConfigNdx
@@ -1,8 +1,4 @@
1
1
  {
2
- "skipped": [
3
- "skill"
4
- ],
5
- "installed": [
6
- "test"
7
- ]
8
- }
2
+ "skipped": ["skill"],
3
+ "installed": ["test"]
4
+ }
@@ -1,7 +1,7 @@
1
1
  import globals from 'globals'
2
2
 
3
- import { defineConfig } from 'eslint/config'
4
3
  import prettierConfig from 'eslint-config-prettier/flat'
4
+ import biomeConfig from 'eslint-config-biome'
5
5
 
6
6
  import esTypescript from '@typescript-eslint/eslint-plugin'
7
7
  import esParser from '@typescript-eslint/parser'
@@ -9,8 +9,7 @@ import esParser from '@typescript-eslint/parser'
9
9
  import esImport from 'eslint-plugin-import'
10
10
  import esReact from 'eslint-plugin-react'
11
11
 
12
-
13
- export default defineConfig([
12
+ export default [
14
13
  prettierConfig,
15
14
  {
16
15
  ignores: ['build/**'],
@@ -27,7 +26,7 @@ export default defineConfig([
27
26
  ...globals.jest,
28
27
  },
29
28
  },
30
- rules: {
29
+ rules: {
31
30
  curly: 'error',
32
31
  'no-console': 'off',
33
32
  'no-undef': 'off',
@@ -39,6 +38,11 @@ export default defineConfig([
39
38
  'react/prop-types': 'off',
40
39
  },
41
40
  settings: {
41
+ 'import/resolver': {
42
+ node: {
43
+ extensions: ['.js', '.mjs', '.ts', '.tsx'],
44
+ },
45
+ },
42
46
  react: {
43
47
  version: 'detect',
44
48
  },
@@ -71,10 +75,13 @@ export default defineConfig([
71
75
  },
72
76
  },
73
77
  {
74
- files: ['*.js'],
78
+ files: ['**/*.js', '**/*.mjs'],
75
79
  plugins: {
76
- '@typescript-eslint': esTypescript,
80
+ import: esImport,
81
+ },
82
+ rules: {
83
+ ...esImport.configs.recommended.rules,
77
84
  },
78
- rules: Object.assign(esImport.rules),
79
85
  },
80
- ])
86
+ biomeConfig,
87
+ ]
package/src/index.ts CHANGED
@@ -1 +1 @@
1
- export { default } from './eslint.config.mjs'
1
+ export { default } from './eslint.config.js'
package/tsconfig.json CHANGED
@@ -1,28 +1,25 @@
1
1
  {
2
- "compilerOptions": {
3
- "module": "nodenext",
4
- "moduleResolution": "nodenext",
5
- "target": "ES2022",
6
- "lib": ["ES2022"],
7
- "types": ["node"],
8
- "baseUrl": "src",
9
- "outDir": "build",
10
- "sourceMap": false,
11
- "strict": true,
12
- "noImplicitAny": true,
13
- "noImplicitReturns": true,
14
- "noUnusedLocals": true,
15
- "forceConsistentCasingInFileNames": true,
16
- "declaration": true,
17
- "skipLibCheck": true,
18
- "esModuleInterop": true,
19
- "moduleDetection": "force",
20
- "allowJs": true,
21
- "resolveJsonModule": true,
22
- "experimentalDecorators": true
23
- },
24
- "include": [
25
- "./src/*.ts",
26
- "./src/**/*.ts"
27
- ]
28
- }
2
+ "compilerOptions": {
3
+ "module": "nodenext",
4
+ "moduleResolution": "nodenext",
5
+ "target": "ES2022",
6
+ "lib": ["ES2022"],
7
+ "types": ["node"],
8
+ "baseUrl": "src",
9
+ "outDir": "build",
10
+ "sourceMap": false,
11
+ "strict": true,
12
+ "noImplicitAny": true,
13
+ "noImplicitReturns": true,
14
+ "noUnusedLocals": true,
15
+ "forceConsistentCasingInFileNames": true,
16
+ "declaration": true,
17
+ "skipLibCheck": true,
18
+ "esModuleInterop": true,
19
+ "moduleDetection": "force",
20
+ "allowJs": true,
21
+ "resolveJsonModule": true,
22
+ "experimentalDecorators": true
23
+ },
24
+ "include": ["./src/*.ts", "./src/**/*.ts"]
25
+ }
@@ -1,2 +0,0 @@
1
- declare const _default: import("eslint/config").Config[];
2
- export default _default;
@@ -1 +0,0 @@
1
- {"version":3,"file":"eslint.config.mjs","sourceRoot":"","sources":["../src/eslint.config.mjs"],"names":[],"mappings":"AAAA,OAAO,OAAO,MAAM,SAAS,CAAA;AAE7B,OAAO,EAAE,YAAY,EAAE,MAAM,eAAe,CAAA;AAC5C,OAAO,cAAc,MAAM,6BAA6B,CAAA;AAExD,OAAO,YAAY,MAAM,kCAAkC,CAAA;AAC3D,OAAO,QAAQ,MAAM,2BAA2B,CAAA;AAEhD,OAAO,QAAQ,MAAM,sBAAsB,CAAA;AAC3C,OAAO,OAAO,MAAM,qBAAqB,CAAA;AAGzC,eAAe,YAAY,CAAC;IACxB,cAAc;IACd;QACI,OAAO,EAAE,CAAC,UAAU,CAAC;QACrB,OAAO,EAAE;YACL,MAAM,EAAE,QAAQ;YAChB,KAAK,EAAE,OAAO;SACjB;QACD,eAAe,EAAE;YACb,WAAW,EAAE,QAAQ;YACrB,UAAU,EAAE,QAAQ;YACpB,OAAO,EAAE;gBACL,GAAG,OAAO,CAAC,OAAO;gBAClB,GAAG,OAAO,CAAC,IAAI;gBACf,GAAG,OAAO,CAAC,IAAI;aAClB;SACJ;QACD,KAAK,EAAE;YACH,KAAK,EAAE,OAAO;YACd,YAAY,EAAE,KAAK;YACnB,UAAU,EAAE,KAAK;YACjB,QAAQ,EAAE,OAAO;YACjB,gBAAgB,EAAE,OAAO;YACzB,gBAAgB,EAAE,KAAK;YACvB,kBAAkB,EAAE,CAAC,OAAO,EAAE,QAAQ,CAAC;YACvC,oBAAoB,EAAE,OAAO;YAC7B,kBAAkB,EAAE,KAAK;SAC5B;QACD,QAAQ,EAAE;YACN,KAAK,EAAE;gBACH,OAAO,EAAE,QAAQ;aACpB;SACJ;KACJ;IACD;QACI,KAAK,EAAE,CAAC,SAAS,EAAE,UAAU,CAAC;QAC9B,OAAO,EAAE;YACL,oBAAoB,EAAE,YAAY;SACrC;QACD,eAAe,EAAE;YACb,MAAM,EAAE,QAAQ;SACnB;QACD,KAAK,EAAE;YACH,mCAAmC,EAAE;gBACjC,OAAO;gBACP;oBACI,iBAAiB,EAAE,IAAI;oBACvB,iBAAiB,EAAE,IAAI;oBACvB,yBAAyB,EAAE,IAAI;iBAClC;aACJ;YACD,uCAAuC,EAAE,CAAC;YAC1C,+DAA+D;YAC/D,kEAAkE;YAClE,kCAAkC,EAAE,CAAC;YACrC,sCAAsC,EAAE,CAAC;YACzC,kDAAkD,EAAE,CAAC;YACrD,oCAAoC,EAAE,CAAC;SAC1C;KACJ;IACD;QACI,KAAK,EAAE,CAAC,MAAM,CAAC;QACf,OAAO,EAAE;YACL,oBAAoB,EAAE,YAAY;SACrC;QACD,KAAK,EAAE,MAAM,CAAC,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC;KACvC;CACJ,CAAC,CAAA"}