Skip to content

Commit d70badb

Browse files
committed
jsdoc; fix async handlers; fix custom decorator unexpected validation
1 parent 326690a commit d70badb

26 files changed

+943
-230
lines changed

.github/workflows/pr.yaml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -28,8 +28,8 @@ jobs:
2828
export NODE_OPTIONS="--max_old_space_size=4096"
2929
echo "$changed" | xargs pnpm eslint --max-warnings=0 --no-warn-ignored
3030
- name: Build
31-
run: ./build.sh
31+
run: ./scripts/build.sh
3232
- name: E2E tests
33-
run: ./test.sh
33+
run: ./scripts/test.sh
3434
env:
3535
FORCE_COLOR: true

.github/workflows/release.yaml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -27,7 +27,7 @@ jobs:
2727
npm version "$version" --no-git-tag-version
2828
2929
- name: Build package
30-
run: ./build.sh
30+
run: ./scripts/build.sh
3131

3232
- run: cp README.md ./packages/nestjs-endpoints/README.md
3333

.npmrc

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
auto-install-peers=false # default is true

.vscode/settings.json

Lines changed: 5 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -5,8 +5,11 @@
55
"editor.formatOnPaste": true,
66
"editor.formatOnSave": true,
77
"editor.formatOnSaveMode": "file", // required to format on save
8-
"eslint.rules.customizations": [{ "rule": "prettier/*", "severity": "off" }],
8+
"eslint.rules.customizations": [
9+
{ "rule": "prettier/*", "severity": "off" }
10+
],
911
"[typescript]": {
1012
"editor.defaultFormatter": "dbaeumer.vscode-eslint"
11-
}
13+
},
14+
"typescript.preferences.importModuleSpecifier": "relative"
1215
}

build.sh

Lines changed: 0 additions & 5 deletions
This file was deleted.

eslint.config.js

Lines changed: 13 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,9 @@ export default tseslint.config(
1010
ignores: [
1111
'**/node_modules',
1212
'**/dist',
13-
'packages/!(nestjs-endpoints)/**',
13+
'packages/*',
14+
'!packages/nestjs-endpoints/',
15+
'!packages/test-app-express-cjs/',
1416
],
1517
},
1618
eslint.configs.recommended,
@@ -63,6 +65,16 @@ export default tseslint.config(
6365
},
6466
],
6567
'@typescript-eslint/no-unsafe-assignment': 'off',
68+
'@typescript-eslint/no-unsafe-argument': 'off',
69+
'@typescript-eslint/no-unsafe-member-access': 'off',
70+
'@typescript-eslint/no-explicit-any': 'off',
71+
'@typescript-eslint/no-unsafe-call': 'off',
72+
},
73+
},
74+
{
75+
files: ['packages/nestjs-endpoints/**'],
76+
rules: {
77+
'no-console': 'error',
6678
},
6779
},
6880
);

package.json

Lines changed: 8 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -4,18 +4,23 @@
44
"private": true,
55
"type": "module",
66
"scripts": {
7-
"test": "./test.sh"
7+
"test": "./scripts/test.sh",
8+
"dev": "pnpm --filter nestjs-endpoints --filter test-app-express-cjs run --parallel dev"
89
},
910
"devDependencies": {
1011
"@eslint/js": "^9.20.0",
12+
"@nestjs/common": "^11.0.8",
13+
"@nestjs/core": "^11.0.8",
14+
"@nestjs/swagger": "^11.0.3",
1115
"@types/node": "^22.13.1",
1216
"@typescript-eslint/parser": "^8.23.0",
13-
"eslint": "^8.42.0",
17+
"eslint": "^9.20.1",
1418
"eslint-config-prettier": "^9.0.0",
1519
"eslint-plugin-import": "^2.31.0",
1620
"eslint-plugin-prettier": "^5.0.0",
1721
"eslint-plugin-unused-imports": "^4.1.4",
1822
"prettier": "^3.0.0",
19-
"typescript-eslint": "^8.23.0"
23+
"typescript-eslint": "^8.24.0",
24+
"zod": "^3.24.1"
2025
}
2126
}

packages/nestjs-endpoints/package.json

Lines changed: 6 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -26,25 +26,21 @@
2626
"main": "./dist/index.js",
2727
"types": "./dist/index.d.ts",
2828
"scripts": {
29-
"dev": "tsc --watch",
29+
"dev": "tsc --watch --preserveWatchOutput",
3030
"build": "tsc"
3131
},
3232
"dependencies": {
3333
"callsites": "^3.1.0",
3434
"nestjs-zod": "^4.2.0"
3535
},
3636
"peerDependencies": {
37-
"@nestjs/common": ">=11.0.0",
38-
"@nestjs/core": ">=11.0.0",
39-
"@nestjs/swagger": ">=11.0.0",
40-
"zod": ">=3.24.1"
37+
"@nestjs/common": ">=10.0.0",
38+
"@nestjs/core": ">=10.0.0",
39+
"@nestjs/swagger": ">=7.0.0",
40+
"zod": ">=3.0.0"
4141
},
4242
"devDependencies": {
43-
"@nestjs/common": "^11.0.0",
44-
"@nestjs/core": "^11.0.0",
45-
"@nestjs/swagger": "^11.0.0",
4643
"@types/node": "^22.13.1",
47-
"typescript": "^5.7.3",
48-
"zod": "^3.24.1"
44+
"typescript": "^5.7.3"
4945
}
5046
}

packages/nestjs-endpoints/src/decorators.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@ import { Module, ModuleMetadata, Type } from '@nestjs/common';
22

33
export function EndpointsModule(
44
metadata: Omit<ModuleMetadata, 'controllers'> & {
5-
endpoints: Type[];
5+
endpoints?: Type[];
66
},
77
): ClassDecorator {
88
const { endpoints = [], ...rest } = metadata;

0 commit comments

Comments
 (0)