Skip to content

Commit 2a76bf3

Browse files
committed
move dependencies to root where possible
1 parent 474fc33 commit 2a76bf3

17 files changed

Lines changed: 49 additions & 157 deletions

File tree

docs/package.json

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,6 @@
44
"nhsuk-frontend": "^10.1.0"
55
},
66
"description": "",
7-
"devDependencies": {},
87
"engines": {},
98
"keywords": [],
109
"license": "ISC",

eslint.config.mjs

Lines changed: 21 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -20,13 +20,31 @@ import {
2020
} from 'eslint-config-airbnb-extended';
2121
import { rules as prettierConfigRules } from 'eslint-config-prettier';
2222

23-
import { dirname } from 'node:path';
23+
import { readFileSync } from 'node:fs';
24+
import { dirname, resolve } from 'node:path';
2425
import { fileURLToPath } from 'node:url';
2526
import { FlatCompat } from '@eslint/eslintrc';
27+
import { globSync } from 'glob';
2628

2729
const __filename = fileURLToPath(import.meta.url);
2830
const __dirname = dirname(__filename);
2931

32+
const rootPackageJson = JSON.parse(
33+
readFileSync(new URL('./package.json', import.meta.url), 'utf8'),
34+
);
35+
const workspacePatterns = rootPackageJson.workspaces ?? [];
36+
const workspacePackageDirs = workspacePatterns.flatMap((pattern) =>
37+
globSync(`${pattern}/package.json`, {
38+
cwd: __dirname,
39+
ignore: ['**/node_modules/**'],
40+
}).map((packageJsonPath) =>
41+
resolve(__dirname, packageJsonPath.replace(/\/package\.json$/, '')),
42+
),
43+
);
44+
const monorepoPackageDirs = Array.from(
45+
new Set([__dirname, ...workspacePackageDirs]),
46+
);
47+
3048
const compat = new FlatCompat({
3149
baseDirectory: __dirname,
3250
});
@@ -171,7 +189,7 @@ export default defineConfig([
171189
rules: {
172190
'import-x/no-extraneous-dependencies': [
173191
2,
174-
{ devDependencies: true },
192+
{ devDependencies: true, packageDir: monorepoPackageDirs },
175193
],
176194
},
177195
},
@@ -188,7 +206,7 @@ export default defineConfig([
188206
rules: {
189207
'import-x/no-extraneous-dependencies': [
190208
'error',
191-
{ devDependencies: true },
209+
{ devDependencies: true, packageDir: monorepoPackageDirs },
192210
],
193211
},
194212
},

internal/datastore/package.json

Lines changed: 0 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -7,21 +7,6 @@
77
"zod": "^4.1.11",
88
"zod-mermaid": "^1.0.9"
99
},
10-
"devDependencies": {
11-
"@stylistic/eslint-plugin": "^5.8.0",
12-
"@tsconfig/node22": "^22.0.2",
13-
"@types/jest": "^30.0.0",
14-
"@typescript-eslint/eslint-plugin": "^8.46.2",
15-
"@typescript-eslint/parser": "^8.27.0",
16-
"eslint": "^9.27.0",
17-
"eslint-plugin-jest": "^29.0.1",
18-
"jest": "^30.2.0",
19-
"jest-mock-extended": "^4.0.0",
20-
"testcontainers": "^11.4.0",
21-
"ts-jest": "^29.4.0",
22-
"ts-node": "^10.9.2",
23-
"typescript": "^5.9.3"
24-
},
2510
"license": "MIT",
2611
"main": "src/index.ts",
2712
"name": "@internal/datastore",

internal/events/package.json

Lines changed: 0 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -5,20 +5,6 @@
55
"zod": "^4.1.11"
66
},
77
"description": "Schemas for NHS Notify Supplier API events",
8-
"devDependencies": {
9-
"@stoplight/spectral-cli": "^6.15.0",
10-
"@stylistic/eslint-plugin": "^5.8.0",
11-
"@tsconfig/node22": "^22.0.2",
12-
"@types/jest": "^30.0.0",
13-
"@typescript-eslint/eslint-plugin": "^8.27.0",
14-
"@typescript-eslint/parser": "^8.27.0",
15-
"eslint": "^9.27.0",
16-
"eslint-plugin-jest": "^29.0.1",
17-
"jest": "^30.2.0",
18-
"ts-jest": "^29.4.0",
19-
"ts-node": "^10.9.2",
20-
"typescript": "^5.9.3"
21-
},
228
"license": "MIT",
239
"main": "dist/index.js",
2410
"name": "@nhsdigital/nhs-notify-event-schemas-supplier-api",

internal/helpers/package.json

Lines changed: 0 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -4,19 +4,6 @@
44
"zod": "^4.1.11"
55
},
66
"description": "Common helper utilities for NHS Notify Supplier API",
7-
"devDependencies": {
8-
"@stylistic/eslint-plugin": "^5.8.0",
9-
"@tsconfig/node22": "^22.0.2",
10-
"@types/jest": "^30.0.0",
11-
"@typescript-eslint/eslint-plugin": "^8.27.0",
12-
"@typescript-eslint/parser": "^8.27.0",
13-
"eslint": "^9.27.0",
14-
"eslint-plugin-jest": "^29.0.1",
15-
"jest": "^30.2.0",
16-
"ts-jest": "^29.4.0",
17-
"ts-node": "^10.9.2",
18-
"typescript": "^5.9.3"
19-
},
207
"license": "MIT",
218
"main": "src/index.ts",
229
"name": "@internal/helpers",

lambdas/api-handler/package.json

Lines changed: 0 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -15,16 +15,6 @@
1515
"pino": "^10.3.0",
1616
"zod": "^4.1.11"
1717
},
18-
"devDependencies": {
19-
"@tsconfig/node22": "^22.0.2",
20-
"@types/aws-lambda": "^8.10.148",
21-
"@types/jest": "^30.0.0",
22-
"jest": "^30.2.0",
23-
"jest-mock-extended": "^4.0.0",
24-
"ts-jest": "^29.4.0",
25-
"typescript": "^5.9.3",
26-
"zod": "^4.1.11"
27-
},
2818
"name": "nhs-notify-supplier-api-handler",
2919
"private": true,
3020
"scripts": {

lambdas/authorizer/package.json

Lines changed: 0 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -10,15 +10,6 @@
1010
"pino": "^10.3.0",
1111
"zod": "^4.1.11"
1212
},
13-
"devDependencies": {
14-
"@tsconfig/node22": "^22.0.2",
15-
"@types/aws-lambda": "^8.10.148",
16-
"@types/jest": "^30.0.0",
17-
"jest": "^30.2.0",
18-
"jest-mock-extended": "^4.0.0",
19-
"ts-jest": "^29.4.0",
20-
"typescript": "^5.9.3"
21-
},
2213
"name": "nhs-notify-supplier-authorizer",
2314
"private": true,
2415
"scripts": {

lambdas/letter-updates-transformer/package.json

Lines changed: 0 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -11,15 +11,6 @@
1111
"pino": "^10.3.0",
1212
"zod": "^4.1.13"
1313
},
14-
"devDependencies": {
15-
"@tsconfig/node22": "^22.0.2",
16-
"@types/aws-lambda": "^8.10.148",
17-
"@types/jest": "^30.0.0",
18-
"jest": "^30.2.0",
19-
"jest-mock-extended": "^4.0.0",
20-
"ts-jest": "^29.4.0",
21-
"typescript": "^5.8.3"
22-
},
2314
"name": "nhs-notify-supplier-api-letter-updates-transformer",
2415
"private": true,
2516
"scripts": {

lambdas/mi-updates-transformer/package.json

Lines changed: 0 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -11,14 +11,6 @@
1111
"pino": "^10.3.0",
1212
"zod": "^4.1.13"
1313
},
14-
"devDependencies": {
15-
"@tsconfig/node22": "^22.0.2",
16-
"@types/aws-lambda": "^8.10.148",
17-
"@types/jest": "^30.0.0",
18-
"jest": "^30.2.0",
19-
"jest-mock-extended": "^4.0.0",
20-
"typescript": "^5.8.3"
21-
},
2214
"name": "nhs-notify-supplier-api-mi-updates-transformer",
2315
"private": true,
2416
"scripts": {

lambdas/supplier-allocator/package.json

Lines changed: 0 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -14,15 +14,6 @@
1414
"pino": "^9.7.0",
1515
"zod": "^4.1.11"
1616
},
17-
"devDependencies": {
18-
"@tsconfig/node22": "^22.0.2",
19-
"@types/aws-lambda": "^8.10.148",
20-
"@types/jest": "^30.0.0",
21-
"jest": "^30.2.0",
22-
"jest-mock-extended": "^4.0.0",
23-
"ts-jest": "^29.4.0",
24-
"typescript": "^5.8.3"
25-
},
2617
"name": "nhs-notify-supplier-api-allocate-letter",
2718
"private": true,
2819
"scripts": {

0 commit comments

Comments
 (0)