Skip to content

Commit 63e66a8

Browse files
authored
chore(linter): fix import resolver to support "exports" maps (#1000)
1 parent 6b5b042 commit 63e66a8

File tree

6 files changed

+21
-9
lines changed

6 files changed

+21
-9
lines changed

eslint.config.js

Lines changed: 17 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -43,5 +43,22 @@ export default [
4343
'n/no-process-exit': 'off',
4444
'n/no-unsupported-features/node-builtins': 'off',
4545
},
46+
settings: {
47+
'import/resolver': {
48+
node: {
49+
pathFilter(pkg, path, relativePath) {
50+
const pkgExport = relativePath
51+
? pkg.exports?.[`./${relativePath}`]
52+
: pkg.exports?.['.'];
53+
return pkgExport?.import?.default ??
54+
pkgExport?.import ??
55+
pkgExport?.[0]?.import ??
56+
pkgExport?.default ??
57+
pkgExport ??
58+
(relativePath || pkg.main);
59+
},
60+
},
61+
},
62+
},
4663
},
4764
];

lib/voting_session.js

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,6 @@ import {
1010
getEditor, isGhAvailable
1111
} from './utils.js';
1212

13-
// eslint-disable-next-line import/no-unresolved
1413
import voteUsingGit from '@node-core/caritat/voteUsingGit';
1514
import * as yaml from 'js-yaml';
1615

test/unit/ci_start.test.js

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,7 @@
1-
/* eslint-disable import/no-named-as-default-member */
21
import { describe, it, before, afterEach } from 'node:test';
32
import assert from 'assert';
43

5-
import sinon from 'sinon';
4+
import * as sinon from 'sinon';
65
import { FormData } from 'undici';
76

87
import {

test/unit/pr_checker.test.js

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,7 @@
1-
/* eslint-disable import/no-named-as-default-member */
21
import { describe, it, before, after, afterEach } from 'node:test';
32
import assert from 'node:assert';
43

5-
import sinon from 'sinon';
4+
import * as sinon from 'sinon';
65

76
import PRData from '../../lib/pr_data.js';
87
import PRChecker from '../../lib/pr_checker.js';

test/unit/pr_data.test.js

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,7 @@
1-
/* eslint-disable import/no-named-as-default-member */
21
import { describe, it } from 'node:test';
32
import assert from 'node:assert';
43

5-
import sinon from 'sinon';
4+
import * as sinon from 'sinon';
65

76
import PRData from '../../lib/pr_data.js';
87

test/unit/team_info.test.js

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,7 @@
1-
/* eslint-disable import/no-named-as-default-member */
21
import { describe, it, before, after } from 'node:test';
32
import assert from 'node:assert';
43

5-
import sinon from 'sinon';
4+
import * as sinon from 'sinon';
65

76
import TestCLI from '../fixtures/test_cli.js';
87
import TeamInfo from '../../lib/team_info.js';

0 commit comments

Comments
 (0)