From 51d77eb89836687e7b827b56e529e1d828ab9397 Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Fri, 11 Sep 2026 10:33:02 +0000 Subject: [PATCH 1/4] fix(deps): update dependency textlint-rule-apostrophe to v3 --- packages/textlint-rule-preset-alma/package.json | 2 +- yarn.lock | 10 +++++----- 2 files changed, 6 insertions(+), 6 deletions(-) diff --git a/packages/textlint-rule-preset-alma/package.json b/packages/textlint-rule-preset-alma/package.json index ccd6097..fde035f 100644 --- a/packages/textlint-rule-preset-alma/package.json +++ b/packages/textlint-rule-preset-alma/package.json @@ -33,7 +33,7 @@ "dependencies": { "textlint": "^15.0.0", "textlint-filter-rule-comments": "^1.2.2", - "textlint-rule-apostrophe": "^2.0.0", + "textlint-rule-apostrophe": "^3.0.0", "textlint-rule-common-misspellings": "^1.0.1", "textlint-rule-stop-words": "^3.0.0", "textlint-rule-terminology": "^5.0.0", diff --git a/yarn.lock b/yarn.lock index 8870b41..f0bcb31 100644 --- a/yarn.lock +++ b/yarn.lock @@ -143,7 +143,7 @@ __metadata: "@textlint/textlint-plugin-text": "npm:^15.0.0" textlint: "npm:^15.0.0" textlint-filter-rule-comments: "npm:^1.2.2" - textlint-rule-apostrophe: "npm:^2.0.0" + textlint-rule-apostrophe: "npm:^3.0.0" textlint-rule-common-misspellings: "npm:^1.0.1" textlint-rule-stop-words: "npm:^3.0.0" textlint-rule-terminology: "npm:^5.0.0" @@ -14766,10 +14766,10 @@ __metadata: languageName: node linkType: hard -"textlint-rule-apostrophe@npm:^2.0.0": - version: 2.0.0 - resolution: "textlint-rule-apostrophe@npm:2.0.0" - checksum: 10/e975b163bafdf35ed6f72e91ad3e05b6952ca5f7db618c0a6165769b6ee694f6631b6cdb4ea882ddb62a35b4fa56b525f281edd68753f741a7ab1b3196c82322 +"textlint-rule-apostrophe@npm:^3.0.0": + version: 3.0.0 + resolution: "textlint-rule-apostrophe@npm:3.0.0" + checksum: 10/75780336942a0a6397bdfd0bfc04b0796560d8478e9f9219d91d3b2ce517246bd6bc18c1d157af2b674586007d389825c4b2590a415c656476f963af3f2d1284 languageName: node linkType: hard From d788ec50c6a3a49d36eb9aa710489cc624e87e14 Mon Sep 17 00:00:00 2001 From: literat Date: Fri, 11 Sep 2026 13:38:22 +0200 Subject: [PATCH 2/4] style(repo): resolve exports-only packages via typescript resolver * eslint-import-resolver-node can't read package.json "exports" fields, so exports-only esm packages (e.g. textlint-rule-apostrophe v3) failed import/no-unresolved * add eslint-import-resolver-typescript as a fallback resolver, which supports exports via enhanced-resolve --- eslint.config.js | 13 +++++++++++++ package.json | 1 + yarn.lock | 3 ++- 3 files changed, 16 insertions(+), 1 deletion(-) diff --git a/eslint.config.js b/eslint.config.js index b8277a3..198828e 100644 --- a/eslint.config.js +++ b/eslint.config.js @@ -16,6 +16,19 @@ export default [ // Disabled because off node do not resolve 'import/extensions': 'off', }, + + settings: { + // The `node` resolver (via the `resolve` package) doesn't understand the + // package.json `exports` field, so exports-only ESM packages fail + // `import/no-unresolved`. Fall back to the typescript resolver + // (enhanced-resolve), which does support `exports`, for plain JS too. + 'import/resolver': { + node: { + extensions: ['.mjs', '.cjs', '.js', '.json', '.node'], + }, + typescript: {}, + }, + }, }, prettierConfig, ]; diff --git a/package.json b/package.json index 8b62289..8ec5f3f 100644 --- a/package.json +++ b/package.json @@ -45,6 +45,7 @@ "eslint": "9.39.4", "eslint-config-prettier": "9.1.2", "eslint-import-resolver-node": "0.3.9", + "eslint-import-resolver-typescript": "3.10.1", "eslint-plugin-jest-formatting": "3.1.0", "eslint-plugin-prettier": "5.5.5", "husky": "9.1.7", diff --git a/yarn.lock b/yarn.lock index f0bcb31..50b2af2 100644 --- a/yarn.lock +++ b/yarn.lock @@ -5369,6 +5369,7 @@ __metadata: eslint: "npm:9.39.4" eslint-config-prettier: "npm:9.1.2" eslint-import-resolver-node: "npm:0.3.9" + eslint-import-resolver-typescript: "npm:3.10.1" eslint-plugin-jest-formatting: "npm:3.1.0" eslint-plugin-prettier: "npm:5.5.5" husky: "npm:9.1.7" @@ -6478,7 +6479,7 @@ __metadata: languageName: node linkType: hard -"eslint-import-resolver-typescript@npm:^3.2.7": +"eslint-import-resolver-typescript@npm:3.10.1, eslint-import-resolver-typescript@npm:^3.2.7": version: 3.10.1 resolution: "eslint-import-resolver-typescript@npm:3.10.1" dependencies: From 8989af7a74fdaa54ab762d451cb6705ffdcb9df4 Mon Sep 17 00:00:00 2001 From: literat Date: Fri, 11 Sep 2026 13:38:36 +0200 Subject: [PATCH 3/4] style(eslint-config-typescript): drop stale import/no-unresolved disables * these disables worked around eslint-import-resolver-node not reading package.json exports fields, fixed by the previous commit's resolver fallback --- packages/eslint-config-typescript/index.js | 2 -- packages/eslint-config-typescript/react.js | 1 - 2 files changed, 3 deletions(-) diff --git a/packages/eslint-config-typescript/index.js b/packages/eslint-config-typescript/index.js index 0c5ecb8..8609cbd 100644 --- a/packages/eslint-config-typescript/index.js +++ b/packages/eslint-config-typescript/index.js @@ -1,8 +1,6 @@ import base from '@alma-oss/eslint-config-base'; import settings from '@alma-oss/eslint-config-base/settings'; -// eslint-disable-next-line import/no-unresolved import tsEslint from 'typescript-eslint'; -// eslint-disable-next-line import/no-unresolved import tsParser from '@typescript-eslint/parser'; import globs from '@alma-oss/eslint-config-base/globs'; diff --git a/packages/eslint-config-typescript/react.js b/packages/eslint-config-typescript/react.js index 82449d9..25c2038 100644 --- a/packages/eslint-config-typescript/react.js +++ b/packages/eslint-config-typescript/react.js @@ -1,6 +1,5 @@ import reactConfig from '@alma-oss/eslint-config-react'; import globs from '@alma-oss/eslint-config-base/globs'; -// eslint-disable-next-line import/no-unresolved import parser from '@typescript-eslint/parser'; export default [ From a92ed9931915f14f92323317b752cd3c895fd54f Mon Sep 17 00:00:00 2001 From: literat Date: Fri, 11 Sep 2026 13:38:43 +0200 Subject: [PATCH 4/4] style(textlint): drop stale import/no-unresolved disable * same resolver-related workaround removed now that exports-only packages resolve correctly --- packages/textlint-rule-preset-alma/rules/terminology.js | 1 - 1 file changed, 1 deletion(-) diff --git a/packages/textlint-rule-preset-alma/rules/terminology.js b/packages/textlint-rule-preset-alma/rules/terminology.js index add22db..5bde814 100644 --- a/packages/textlint-rule-preset-alma/rules/terminology.js +++ b/packages/textlint-rule-preset-alma/rules/terminology.js @@ -1,4 +1,3 @@ -// eslint-disable-next-line import/no-unresolved -- v5 only declares `exports`, which eslint-import-resolver-node@0.3.x can't read; Node resolves it fine at runtime. import textlintRuleTerminology from 'textlint-rule-terminology'; const defaultOptions = {