koa-micro-ts 5.2.1 → 6.0.0
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.
- package/README.md +40 -0
- package/dist/autoRoute.js +19 -8
- package/dist/autoRoute.js.map +1 -1
- package/package.json +4 -4
package/README.md
CHANGED
|
@@ -60,6 +60,46 @@ payloads, the generated API doc page is HTML-escaped and request stats can no
|
|
|
60
60
|
longer grow memory unbounded. It also moves to koa 3 and Node 18+. Most apps
|
|
61
61
|
run unchanged — see the breaking changes and the upgrade path below.
|
|
62
62
|
|
|
63
|
+
## Version 6 - Breaking Changes
|
|
64
|
+
|
|
65
|
+
- Dependencies: `@koa/router` 15 (path-to-regexp 8)
|
|
66
|
+
- Wildcard routes (`exports.star`) now generate a **named** wildcard
|
|
67
|
+
`{/*path}` instead of a bare `/*`. A bare `*` is rejected by path-to-regexp 8
|
|
68
|
+
and threw on route registration (`Missing parameter name at index ...`)
|
|
69
|
+
- The matched remainder is no longer an unnamed index param: use
|
|
70
|
+
`ctx.params.path` instead of `ctx.params[0]`. It is `undefined` (not `''`)
|
|
71
|
+
when nothing follows the base, so default it when you post-process it
|
|
72
|
+
|
|
73
|
+
Before (v5):
|
|
74
|
+
|
|
75
|
+
```ts
|
|
76
|
+
// routes/wikis/index.route.ts → GET /api/v1/wikis/*
|
|
77
|
+
exports.star = async (ctx: any, next: any) => {
|
|
78
|
+
const rest = ctx.params[0]; // 'pages/intro', '' at the base
|
|
79
|
+
ctx.body = { segments: rest.split('/') };
|
|
80
|
+
};
|
|
81
|
+
```
|
|
82
|
+
|
|
83
|
+
After (v6):
|
|
84
|
+
|
|
85
|
+
```ts
|
|
86
|
+
// routes/wikis/index.route.ts → GET /api/v1/wikis{/*path}
|
|
87
|
+
exports.star = async (ctx: any, next: any) => {
|
|
88
|
+
const rest = ctx.params.path ?? ''; // 'pages/intro', undefined at the base
|
|
89
|
+
ctx.body = { segments: rest.split('/') };
|
|
90
|
+
};
|
|
91
|
+
```
|
|
92
|
+
|
|
93
|
+
Routes you register manually via `newRouter()`/`useRouter()` follow the same
|
|
94
|
+
rule: replace `router.get('/files/*', ...)` with
|
|
95
|
+
`router.get('/files{/*path}', ...)`.
|
|
96
|
+
|
|
97
|
+
- `autoRoute()` now logs a **warning** when it registers a route below an
|
|
98
|
+
already registered wildcard. That combination is a silent authorization
|
|
99
|
+
hole: a public wildcard swallows authenticated routes mounted at the same
|
|
100
|
+
prefix afterwards, so their `jwt.middleware()` never runs — see
|
|
101
|
+
[AUTOROUTES.md](docs/AUTOROUTES.md)
|
|
102
|
+
|
|
63
103
|
## Version 5 - Breaking Changes
|
|
64
104
|
|
|
65
105
|
- Dependencies: koa 3
|
package/dist/autoRoute.js
CHANGED
|
@@ -17,7 +17,7 @@ const heads = {
|
|
|
17
17
|
list: { method: 'get' },
|
|
18
18
|
get: { method: 'get', seg: 'get' },
|
|
19
19
|
set: { method: 'get', seg: 'set' },
|
|
20
|
-
star: { method: 'get', seg: '*' },
|
|
20
|
+
star: { method: 'get', seg: '{*path}' },
|
|
21
21
|
detail: { method: 'get', seg: 'detail' },
|
|
22
22
|
post: { method: 'post' },
|
|
23
23
|
put: { method: 'put' },
|
|
@@ -42,6 +42,7 @@ const routeFromExport = (baseUrl, key) => {
|
|
|
42
42
|
n += 1;
|
|
43
43
|
return n === 1 ? '/:id' : `/:id${n}`;
|
|
44
44
|
});
|
|
45
|
+
url = url.replace('/{*path}', '{/*path}');
|
|
45
46
|
return { method: head.method, url };
|
|
46
47
|
};
|
|
47
48
|
exports.routeFromExport = routeFromExport;
|
|
@@ -62,15 +63,17 @@ const readdirSyncRecursive = (filePath, allFiles) => {
|
|
|
62
63
|
catch (_a) { }
|
|
63
64
|
};
|
|
64
65
|
const autoRoute = async (app, routepath, mountpoint, auth) => {
|
|
65
|
-
var _a, _b, _c, _d, _e;
|
|
66
|
+
var _a, _b, _c, _d, _e, _f, _g;
|
|
66
67
|
mountpoint = mountpoint !== null && mountpoint !== void 0 ? mountpoint : '';
|
|
67
68
|
auth = auth !== null && auth !== void 0 ? auth : false;
|
|
69
|
+
app.wildcardPrefixes = (_a = app.wildcardPrefixes) !== null && _a !== void 0 ? _a : [];
|
|
70
|
+
const shadowedBy = (url) => app.wildcardPrefixes.find((p) => url === p || url.startsWith(`${p}/`));
|
|
68
71
|
const routes = new router_1.default({
|
|
69
72
|
prefix: mountpoint
|
|
70
73
|
});
|
|
71
74
|
const files = [];
|
|
72
75
|
let docObj = app.apiDocObj;
|
|
73
|
-
if (((
|
|
76
|
+
if (((_b = app === null || app === void 0 ? void 0 : app.log) === null || _b === void 0 ? void 0 : _b.level) && app.log.level === log_1.LogLevels.all) {
|
|
74
77
|
app.log.note(`\n Auto-Install Routes: (${auth ? 'private/auth' : 'public'})\n Path: ${routepath}\n`, false, false);
|
|
75
78
|
}
|
|
76
79
|
readdirSyncRecursive(routepath, files);
|
|
@@ -85,7 +88,7 @@ const autoRoute = async (app, routepath, mountpoint, auth) => {
|
|
|
85
88
|
}
|
|
86
89
|
const reducedDocs = app.apiDoc ? (0, apiDoc_1.parseReducedDocs)(fileName) : {};
|
|
87
90
|
const obj = await import(fileName);
|
|
88
|
-
const docsMeta = obj._docs || ((
|
|
91
|
+
const docsMeta = obj._docs || ((_c = obj.default) === null || _c === void 0 ? void 0 : _c._docs) || {};
|
|
89
92
|
let baseUrl = relfile;
|
|
90
93
|
if (baseUrl.endsWith(routerSuffixJs)) {
|
|
91
94
|
baseUrl = baseUrl.substring(0, baseUrl.length - routerSuffixJs.length);
|
|
@@ -107,17 +110,25 @@ const autoRoute = async (app, routepath, mountpoint, auth) => {
|
|
|
107
110
|
routes[route.method](route.url, obj[key]);
|
|
108
111
|
}
|
|
109
112
|
if (app.apiDoc) {
|
|
110
|
-
(0, apiDoc_1.autoDocEntry)(docObj, group, route.method, `${mountpoint}${route.url}`, auth, (
|
|
113
|
+
(0, apiDoc_1.autoDocEntry)(docObj, group, route.method, `${mountpoint}${route.url}`, auth, (_d = docsMeta[key]) !== null && _d !== void 0 ? _d : reducedDocs[key]);
|
|
111
114
|
}
|
|
112
|
-
|
|
113
|
-
|
|
115
|
+
const fullUrl = `${mountpoint}${route.url}`;
|
|
116
|
+
const shadow = shadowedBy(fullUrl);
|
|
117
|
+
if (shadow) {
|
|
118
|
+
(_e = app === null || app === void 0 ? void 0 : app.log) === null || _e === void 0 ? void 0 : _e.warn(`autoRoute: ${route.method.toUpperCase()} ${fullUrl} is shadowed by the wildcard route ${shadow}{/*path}${auth ? ' — its jwt auth will never run' : ''}`);
|
|
119
|
+
}
|
|
120
|
+
if (key === 'star') {
|
|
121
|
+
app.wildcardPrefixes.push(fullUrl.replace('{/*path}', ''));
|
|
122
|
+
}
|
|
123
|
+
if (((_f = app === null || app === void 0 ? void 0 : app.log) === null || _f === void 0 ? void 0 : _f.level) && app.log.level === log_1.LogLevels.all) {
|
|
124
|
+
app.log.note(` ${fullUrl} --- ${route.method} - Function: ${key}`, false, false);
|
|
114
125
|
}
|
|
115
126
|
}
|
|
116
127
|
}
|
|
117
128
|
}
|
|
118
129
|
}
|
|
119
130
|
app.use(routes.routes()).use(routes.allowedMethods());
|
|
120
|
-
if (((
|
|
131
|
+
if (((_g = app === null || app === void 0 ? void 0 : app.log) === null || _g === void 0 ? void 0 : _g.level) && app.log.level === log_1.LogLevels.all) {
|
|
121
132
|
app.log.note('', false, false);
|
|
122
133
|
}
|
|
123
134
|
if (app.apiDoc) {
|
package/dist/autoRoute.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"autoRoute.js","sourceRoot":"","sources":["../src/autoRoute.ts"],"names":[],"mappings":";;;;;;AAsBA,yDAAiC;AACjC,qCAAgD;AAChD,yCAAiC;AACjC,qCAAsF;AACtF,gDAAwB;AACxB,+BAAkC;AAGlC,MAAM,cAAc,GAAG,WAAW,CAAC;AACnC,MAAM,cAAc,GAAG,WAAW,CAAC;AAKnC,MAAM,KAAK,GAAwD;IACjE,KAAK,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE;IACxB,IAAI,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE;IACvB,GAAG,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE,GAAG,EAAE,KAAK,EAAE;IAClC,GAAG,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE,GAAG,EAAE,KAAK,EAAE;IAClC,IAAI,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE,GAAG,EAAE,
|
|
1
|
+
{"version":3,"file":"autoRoute.js","sourceRoot":"","sources":["../src/autoRoute.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "koa-micro-ts",
|
|
3
|
-
"version": "
|
|
3
|
+
"version": "6.0.0",
|
|
4
4
|
"description": "Microservice Typescript Framework - based on koa",
|
|
5
5
|
"main": "dist/index.js",
|
|
6
6
|
"scripts": {
|
|
@@ -49,15 +49,15 @@
|
|
|
49
49
|
"http-graceful-shutdown": "^4.0.0",
|
|
50
50
|
"jsonwebtoken": "^9.0.3",
|
|
51
51
|
"koa": "^3.2.1",
|
|
52
|
-
"koa-body": "^8.0.
|
|
52
|
+
"koa-body": "^8.0.1",
|
|
53
53
|
"koa-helmet": "^9.0.0",
|
|
54
54
|
"koa-send": "^5.0.1"
|
|
55
55
|
},
|
|
56
56
|
"devDependencies": {
|
|
57
|
-
"@biomejs/biome": "2.5.
|
|
57
|
+
"@biomejs/biome": "2.5.13",
|
|
58
58
|
"@types/jsonwebtoken": "^9.0.10",
|
|
59
59
|
"@types/koa": "^3.0.3",
|
|
60
|
-
"@types/koa__router": "^
|
|
60
|
+
"@types/koa__router": "^15.0.0",
|
|
61
61
|
"@types/koa-send": "^4.1.6",
|
|
62
62
|
"@types/node": "^26.1.1"
|
|
63
63
|
},
|