@rdyl/node-koa-controller 0.0.3 → 0.0.5
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/CHANGELOG.md +1 -1
- package/dist/controller/index.js +17 -12
- package/package.json +9 -7
- package/types/controller/index.d.ts +3 -3
- package/types/controller/meta.d.ts +3 -2
package/CHANGELOG.md
CHANGED
package/dist/controller/index.js
CHANGED
|
@@ -78,6 +78,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
78
78
|
exports.ASTCache = void 0;
|
|
79
79
|
exports.useController = useController;
|
|
80
80
|
var koa_router_1 = __importDefault(require("koa-router"));
|
|
81
|
+
var koa_static_1 = __importDefault(require("koa-static"));
|
|
81
82
|
var fs_1 = __importDefault(require("fs"));
|
|
82
83
|
var path_1 = require("path");
|
|
83
84
|
exports.ASTCache = {
|
|
@@ -90,10 +91,10 @@ function RegisterASTCacheRoutes(router) {
|
|
|
90
91
|
var handlers = route.handlers, prefix = route.prefix, Instance = route.Instance;
|
|
91
92
|
handlers.forEach(function (handler) {
|
|
92
93
|
var method = handler.method, url = handler.url, name = handler.name;
|
|
93
|
-
var path = (0, path_1.join)("/" + prefix, url);
|
|
94
|
+
var path = (0, path_1.join)("/" + exports.ASTCache.prefix, prefix, url);
|
|
94
95
|
var isPublic = route.isPublic || route.isPublic;
|
|
95
96
|
if (isPublic) {
|
|
96
|
-
exports.ASTCache.whitelist.push(
|
|
97
|
+
exports.ASTCache.whitelist.push(path);
|
|
97
98
|
}
|
|
98
99
|
// @ts-ignore
|
|
99
100
|
router[method.toLowerCase()](path, function (_ctx) {
|
|
@@ -108,18 +109,16 @@ function RegisterASTCacheRoutes(router) {
|
|
|
108
109
|
});
|
|
109
110
|
});
|
|
110
111
|
}
|
|
111
|
-
function useController(
|
|
112
|
-
return __awaiter(this,
|
|
113
|
-
var router, rootDir, initAST;
|
|
112
|
+
function useController(app, opts) {
|
|
113
|
+
return __awaiter(this, void 0, void 0, function () {
|
|
114
|
+
var root, _a, prefix, router, rootDir, initAST;
|
|
114
115
|
var _this = this;
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
switch (_d.label) {
|
|
116
|
+
return __generator(this, function (_b) {
|
|
117
|
+
switch (_b.label) {
|
|
118
118
|
case 0:
|
|
119
|
+
root = opts.root, _a = opts.prefix, prefix = _a === void 0 ? "" : _a;
|
|
119
120
|
exports.ASTCache.prefix = prefix;
|
|
120
|
-
router = new koa_router_1.default(
|
|
121
|
-
prefix: prefix,
|
|
122
|
-
});
|
|
121
|
+
router = new koa_router_1.default();
|
|
123
122
|
rootDir = (0, path_1.resolve)(process.cwd(), root);
|
|
124
123
|
initAST = function (dir) { return __awaiter(_this, void 0, void 0, function () {
|
|
125
124
|
var list, _i, list_1, p, url, stat, isDir, sp, ext, _a;
|
|
@@ -167,9 +166,15 @@ function useController(app_1, _a) {
|
|
|
167
166
|
}); };
|
|
168
167
|
return [4 /*yield*/, initAST(rootDir)];
|
|
169
168
|
case 1:
|
|
170
|
-
|
|
169
|
+
_b.sent();
|
|
171
170
|
// 注册路由
|
|
172
171
|
RegisterASTCacheRoutes(router);
|
|
172
|
+
if (opts.static) {
|
|
173
|
+
app.use((0, koa_static_1.default)(process.cwd(), {
|
|
174
|
+
root: opts.static,
|
|
175
|
+
}));
|
|
176
|
+
exports.ASTCache.whitelist.unshift(new RegExp("/".concat(opts.static)));
|
|
177
|
+
}
|
|
173
178
|
app.use(router.routes()).use(router.allowedMethods());
|
|
174
179
|
return [2 /*return*/, Promise.resolve({
|
|
175
180
|
whitelist: exports.ASTCache.whitelist,
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@rdyl/node-koa-controller",
|
|
3
|
-
"version": "0.0.
|
|
3
|
+
"version": "0.0.5",
|
|
4
4
|
"license": "MIT",
|
|
5
5
|
"main": "dist/index.js",
|
|
6
6
|
"types": "types/index.d.ts",
|
|
@@ -20,15 +20,17 @@
|
|
|
20
20
|
"dependencies": {
|
|
21
21
|
"@types/koa": "^2.15.0",
|
|
22
22
|
"@types/koa-router": "^7.4.8",
|
|
23
|
+
"@types/koa-static": "^4.0.4",
|
|
23
24
|
"koa": "^2.15.3",
|
|
24
|
-
"koa-router": "^13.0.1"
|
|
25
|
+
"koa-router": "^13.0.1",
|
|
26
|
+
"koa-static": "^5.0.0"
|
|
25
27
|
},
|
|
26
28
|
"devDependencies": {
|
|
27
|
-
"@types/node": "^22.9.0",
|
|
28
|
-
"copyfiles": "^2.4.1",
|
|
29
|
-
"typescript": "^5.6.3",
|
|
30
29
|
"@commitlint/cli": "^19.6.1",
|
|
31
30
|
"@commitlint/config-conventional": "^19.6.0",
|
|
32
|
-
"
|
|
31
|
+
"@types/node": "^22.9.0",
|
|
32
|
+
"conventional-changelog-cli": "^5.0.0",
|
|
33
|
+
"copyfiles": "^2.4.1",
|
|
34
|
+
"typescript": "^5.6.3"
|
|
33
35
|
}
|
|
34
|
-
}
|
|
36
|
+
}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import Koa from "koa";
|
|
2
|
-
import { ASTCacheProp,
|
|
2
|
+
import { ASTCacheProp, UseProps } from "./meta";
|
|
3
3
|
export declare const ASTCache: ASTCacheProp;
|
|
4
|
-
export declare function useController(app: Koa,
|
|
5
|
-
whitelist: string[];
|
|
4
|
+
export declare function useController(app: Koa, opts: UseProps): Promise<{
|
|
5
|
+
whitelist: (string | RegExp)[];
|
|
6
6
|
}>;
|
|
7
7
|
export * from "./meta";
|
|
@@ -37,9 +37,10 @@ export interface ResData<T> {
|
|
|
37
37
|
code: number;
|
|
38
38
|
data: T;
|
|
39
39
|
}
|
|
40
|
-
export interface
|
|
40
|
+
export interface UseProps {
|
|
41
41
|
root: string;
|
|
42
42
|
prefix?: string;
|
|
43
|
+
static?: string;
|
|
43
44
|
}
|
|
44
45
|
export interface ASTCacheHandler {
|
|
45
46
|
url: string;
|
|
@@ -56,5 +57,5 @@ export interface ASTCacheRoute {
|
|
|
56
57
|
export interface ASTCacheProp {
|
|
57
58
|
prefix: string;
|
|
58
59
|
routes: ASTCacheRoute[];
|
|
59
|
-
whitelist: string[];
|
|
60
|
+
whitelist: (string | RegExp)[];
|
|
60
61
|
}
|