vona-module-a-web 5.1.22 → 5.1.24
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/cli/controller/metadata/generate.ts +72 -28
- package/dist/bean/pipe.filter.d.ts +2 -0
- package/dist/bean/pipe.filter.d.ts.map +1 -1
- package/dist/index.js +68 -51
- package/dist/index.js.map +1 -1
- package/dist-cli/controller/metadata/generate.js +68 -29
- package/package.json +2 -2
- package/src/bean/pipe.filter.ts +85 -57
|
@@ -1,10 +1,11 @@
|
|
|
1
|
+
import type { types as t } from '@babel/core';
|
|
1
2
|
import type { IMetadataCustomGenerateOptions } from '@cabloy/cli';
|
|
2
3
|
|
|
3
4
|
import { combineApiPathControllerAndActionRaw } from '@cabloy/utils';
|
|
4
5
|
import { toUpperCaseFirstChar } from '@cabloy/word-utils';
|
|
5
6
|
|
|
6
7
|
export default async function (options: IMetadataCustomGenerateOptions): Promise<string> {
|
|
7
|
-
const { sceneName, moduleName, globFiles } = options;
|
|
8
|
+
const { sceneName, moduleName, globFiles, cli } = options;
|
|
8
9
|
const contentResources: string[] = [];
|
|
9
10
|
const contentImports: string[] = [];
|
|
10
11
|
const contentActions: string[] = [];
|
|
@@ -22,11 +23,25 @@ export default async function (options: IMetadataCustomGenerateOptions): Promise
|
|
|
22
23
|
export interface ${opionsName} {
|
|
23
24
|
actions?: TypeControllerOptionsActions<${className}>;
|
|
24
25
|
}`);
|
|
26
|
+
const file = cli.helper.gogocode(fileContent, {
|
|
27
|
+
parseOptions: { sourceType: 'module', plugins: ['typescript', 'decorators-legacy'] },
|
|
28
|
+
}).node as t.File;
|
|
29
|
+
const declaration = file.program.body
|
|
30
|
+
.map(statement =>
|
|
31
|
+
statement.type === 'ExportNamedDeclaration' || statement.type === 'ExportDefaultDeclaration'
|
|
32
|
+
? statement.declaration
|
|
33
|
+
: statement,
|
|
34
|
+
)
|
|
35
|
+
.find(
|
|
36
|
+
(node): node is t.ClassDeclaration =>
|
|
37
|
+
node?.type === 'ClassDeclaration' && node.id?.name === className,
|
|
38
|
+
);
|
|
39
|
+
if (!declaration) continue;
|
|
25
40
|
// controllerPath
|
|
26
|
-
const controllerPath = __parseControllerPath(
|
|
41
|
+
const controllerPath = __parseControllerPath(declaration);
|
|
27
42
|
if (controllerPath === false) continue;
|
|
28
43
|
// actionPath;
|
|
29
|
-
const actionPaths = __parseActionPaths(
|
|
44
|
+
const actionPaths = __parseActionPaths(declaration);
|
|
30
45
|
for (const [method, actionPath] of actionPaths) {
|
|
31
46
|
if (!contentPaths[method]) contentPaths[method] = [];
|
|
32
47
|
const apiPath = __combineApiPath(moduleName, controllerPath, actionPath);
|
|
@@ -81,36 +96,65 @@ ${contentResources2}
|
|
|
81
96
|
return content;
|
|
82
97
|
}
|
|
83
98
|
|
|
84
|
-
function __parseControllerPath(
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
99
|
+
function __parseControllerPath(declaration: t.ClassDeclaration): string | false {
|
|
100
|
+
for (const decorator of declaration.decorators ?? []) {
|
|
101
|
+
const call = decorator.expression;
|
|
102
|
+
if (
|
|
103
|
+
call.type !== 'CallExpression' ||
|
|
104
|
+
call.callee.type !== 'Identifier' ||
|
|
105
|
+
call.callee.name !== 'Controller'
|
|
106
|
+
) {
|
|
107
|
+
continue;
|
|
108
|
+
}
|
|
109
|
+
const argument = call.arguments[0];
|
|
110
|
+
if (!argument) return '';
|
|
111
|
+
if (argument.type === 'StringLiteral') return argument.value;
|
|
112
|
+
if (argument.type !== 'ObjectExpression') return false;
|
|
113
|
+
// Read the last explicit path; a later spread/computed key makes it dynamic.
|
|
114
|
+
for (const property of argument.properties.toReversed()) {
|
|
115
|
+
if (property.type === 'SpreadElement' || property.computed) return false;
|
|
116
|
+
const key = property.key;
|
|
117
|
+
if (
|
|
118
|
+
(key.type === 'Identifier' && key.name === 'path') ||
|
|
119
|
+
(key.type === 'StringLiteral' && key.value === 'path')
|
|
120
|
+
) {
|
|
121
|
+
return property.type === 'ObjectProperty' && property.value.type === 'StringLiteral'
|
|
122
|
+
? property.value.value
|
|
123
|
+
: false;
|
|
124
|
+
}
|
|
125
|
+
}
|
|
126
|
+
return '';
|
|
90
127
|
}
|
|
91
|
-
|
|
92
|
-
const controllerPath = matched[1];
|
|
93
|
-
if (controllerPath === '') return '';
|
|
94
|
-
return controllerPath.split(',')[0].replaceAll("'", '');
|
|
128
|
+
return false;
|
|
95
129
|
}
|
|
96
130
|
|
|
97
|
-
function __parseActionPaths(
|
|
131
|
+
function __parseActionPaths(declaration: t.ClassDeclaration): [string, string][] {
|
|
98
132
|
const actionPaths: [string, string][] = [];
|
|
99
|
-
const
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
133
|
+
for (const member of declaration.body.body) {
|
|
134
|
+
if (member.type !== 'ClassMethod') continue;
|
|
135
|
+
for (const decorator of member.decorators ?? []) {
|
|
136
|
+
const call = decorator.expression;
|
|
137
|
+
if (call.type !== 'CallExpression') continue;
|
|
138
|
+
const callee = call.callee;
|
|
139
|
+
if (
|
|
140
|
+
callee.type !== 'MemberExpression' ||
|
|
141
|
+
callee.computed ||
|
|
142
|
+
callee.object.type !== 'Identifier' ||
|
|
143
|
+
callee.object.name !== 'Web' ||
|
|
144
|
+
callee.property.type !== 'Identifier' ||
|
|
145
|
+
!['get', 'post', 'delete', 'put', 'patch'].includes(callee.property.name)
|
|
146
|
+
) {
|
|
147
|
+
continue;
|
|
148
|
+
}
|
|
149
|
+
const argument = call.arguments[0];
|
|
150
|
+
// Options-only and no-argument decorators map to the root action route.
|
|
151
|
+
// RegExp and other dynamic expressions cannot supply static route metadata.
|
|
152
|
+
if (!argument || argument.type === 'ObjectExpression') {
|
|
153
|
+
actionPaths.push([toUpperCaseFirstChar(callee.property.name), '']);
|
|
154
|
+
} else if (argument.type === 'StringLiteral') {
|
|
155
|
+
actionPaths.push([toUpperCaseFirstChar(callee.property.name), argument.value]);
|
|
156
|
+
}
|
|
111
157
|
}
|
|
112
|
-
const method = toUpperCaseFirstChar(matches2[1].substring(4));
|
|
113
|
-
actionPaths.push([method, actionPath]);
|
|
114
158
|
}
|
|
115
159
|
return actionPaths;
|
|
116
160
|
}
|
|
@@ -12,6 +12,8 @@ export declare class PipeFilter extends BeanBase implements IPipeTransform<TypeP
|
|
|
12
12
|
private _transform;
|
|
13
13
|
private _transformSystem;
|
|
14
14
|
private _transformOrders;
|
|
15
|
+
private _resolveField;
|
|
16
|
+
private _addJoin;
|
|
15
17
|
private _transformField;
|
|
16
18
|
private _transformFields;
|
|
17
19
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"pipe.filter.d.ts","sourceRoot":"","sources":["../../src/bean/pipe.filter.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,qBAAqB,EACrB,6BAA6B,EAC7B,cAAc,EACf,MAAM,sBAAsB,CAAC;AAC9B,OAAO,KAAK,EAEV,WAAW,EACX,wBAAwB,EACzB,MAAM,uBAAuB,CAAC;AAC/B,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,0BAA0B,CAAC;AAKjE,OAAO,EAAE,QAAQ,EAAmC,MAAM,MAAM,CAAC;AAGjE,OAAO,KAAK,EAGV,oBAAoB,EACrB,MAAM,6BAA6B,CAAC;AAErC,MAAM,MAAM,kBAAkB,GAAG,WAAW,CAAC;AAE7C,MAAM,MAAM,oBAAoB,GAAG,oBAAoB,CAAC;
|
|
1
|
+
{"version":3,"file":"pipe.filter.d.ts","sourceRoot":"","sources":["../../src/bean/pipe.filter.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,qBAAqB,EACrB,6BAA6B,EAC7B,cAAc,EACf,MAAM,sBAAsB,CAAC;AAC9B,OAAO,KAAK,EAEV,WAAW,EACX,wBAAwB,EACzB,MAAM,uBAAuB,CAAC;AAC/B,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,0BAA0B,CAAC;AAKjE,OAAO,EAAE,QAAQ,EAAmC,MAAM,MAAM,CAAC;AAGjE,OAAO,KAAK,EAGV,oBAAoB,EACrB,MAAM,6BAA6B,CAAC;AAErC,MAAM,MAAM,kBAAkB,GAAG,WAAW,CAAC;AAE7C,MAAM,MAAM,oBAAoB,GAAG,oBAAoB,CAAC;AAGxD,MAAM,WAAW,kBACf,SAAQ,qBAAqB,EAAE,6BAA6B,EAAE,gBAAgB;CAAG;AAInF,qBAOa,UACX,SAAQ,QACR,YAAW,cAAc,CAAC,kBAAkB,EAAE,oBAAoB,CAAC;IAE7D,SAAS,CACb,KAAK,EAAE,kBAAkB,EACzB,QAAQ,EAAE,wBAAwB,EAClC,OAAO,EAAE,kBAAkB,GAC1B,OAAO,CAAC,oBAAoB,CAAC;YAmBlB,UAAU;IAexB,OAAO,CAAC,gBAAgB;IA2BxB,OAAO,CAAC,gBAAgB;IAuBxB,OAAO,CAAC,aAAa;IAyCrB,OAAO,CAAC,QAAQ;YAQF,eAAe;YAuDf,gBAAgB;CAW/B;AAED,eAAO,MAAM,YAAY,4DAAqC,CAAC"}
|
package/dist/index.js
CHANGED
|
@@ -33,10 +33,11 @@ let PipeFilter = class PipeFilter extends BeanBase {
|
|
|
33
33
|
async _transform(value, options) {
|
|
34
34
|
// 1. system: columns/where/orders/pageNo/pageSize
|
|
35
35
|
const params = this._transformSystem(value);
|
|
36
|
+
const rootOpenapi = ZodMetadata.getOpenapiMetadata(options.schema);
|
|
36
37
|
// 2. fields
|
|
37
|
-
await this._transformFields(params, value, options);
|
|
38
|
+
await this._transformFields(params, value, options, rootOpenapi);
|
|
38
39
|
// 3. system: orders
|
|
39
|
-
this._transformOrders(params, options);
|
|
40
|
+
this._transformOrders(params, options, rootOpenapi);
|
|
40
41
|
// ok
|
|
41
42
|
return params;
|
|
42
43
|
}
|
|
@@ -67,58 +68,79 @@ let PipeFilter = class PipeFilter extends BeanBase {
|
|
|
67
68
|
// ok
|
|
68
69
|
return params;
|
|
69
70
|
}
|
|
70
|
-
_transformOrders(params, options) {
|
|
71
|
+
_transformOrders(params, options, rootOpenapi) {
|
|
71
72
|
if (!params.orders) return;
|
|
72
|
-
// openapi
|
|
73
|
-
const openapi = ZodMetadata.getOpenapiMetadata(options.schema);
|
|
74
|
-
const table = openapi?.filter?.table;
|
|
75
|
-
// loop
|
|
76
73
|
for (const order of params.orders) {
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
const openapi = ZodMetadata.getOpenapiMetadata(fieldSchema);
|
|
84
|
-
if (openapi?.filter?.table) {
|
|
85
|
-
tableCurrent = openapi?.filter?.table;
|
|
86
|
-
}
|
|
87
|
-
if (openapi?.filter?.originalName) {
|
|
88
|
-
fieldCurrent = openapi?.filter?.originalName;
|
|
89
|
-
}
|
|
74
|
+
if (!Array.isArray(order) || order.length !== 2) {
|
|
75
|
+
throw new Error('invalid order');
|
|
76
|
+
}
|
|
77
|
+
const [key, direction] = order;
|
|
78
|
+
if (typeof key !== 'string' || direction !== 'asc' && direction !== 'desc') {
|
|
79
|
+
throw new Error('invalid order');
|
|
90
80
|
}
|
|
91
|
-
|
|
81
|
+
const info = this._resolveField(key, options, rootOpenapi);
|
|
82
|
+
if (!info || info.openapi?.filter?.capabilities?.order === false) {
|
|
83
|
+
throw new Error(`invalid order field: ${key}`);
|
|
84
|
+
}
|
|
85
|
+
cast(order)[0] = info.orderFullName;
|
|
86
|
+
this._addJoin(params, info.joinInfo);
|
|
92
87
|
}
|
|
93
88
|
}
|
|
94
|
-
|
|
95
|
-
if (__FieldsSystem.includes(key)) return;
|
|
89
|
+
_resolveField(key, options, rootOpenapi) {
|
|
96
90
|
const fieldSchema = ZodMetadata.getFieldSchema(options.schema, key);
|
|
97
|
-
if (!fieldSchema)
|
|
91
|
+
if (!fieldSchema) {
|
|
92
|
+
if (!rootOpenapi?.filter?.table) {
|
|
93
|
+
return {
|
|
94
|
+
orderFullName: key
|
|
95
|
+
};
|
|
96
|
+
}
|
|
97
|
+
const keyParts = key.split('.');
|
|
98
|
+
const [table, field] = keyParts;
|
|
99
|
+
if (!table || !field || keyParts.length !== 2) return;
|
|
100
|
+
const resolved = this._resolveField(field, options, rootOpenapi);
|
|
101
|
+
if (!resolved || resolved.orderFullName !== key) return;
|
|
102
|
+
return resolved;
|
|
103
|
+
}
|
|
98
104
|
const fieldSchemaInner = ZodMetadata.unwrapChained(fieldSchema);
|
|
99
|
-
// openapi
|
|
100
105
|
const openapi = ZodMetadata.getOpenapiMetadata(fieldSchema);
|
|
101
|
-
const [transformName] = openapi?.filter?.transform ?? ['a-web:base', undefined];
|
|
102
|
-
const fieldNullable = fieldValue === null && isNullableSchema(fieldSchema);
|
|
103
|
-
if (isNilOrEmptyString(fieldValue) && !fieldNullable) return;
|
|
104
|
-
// name
|
|
105
106
|
const originalName = openapi?.filter?.originalName ?? key;
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
joinInfo
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
107
|
+
const table = openapi?.filter?.table ?? rootOpenapi?.filter?.table;
|
|
108
|
+
const joinInfo = openapi?.filter?.joinOn ? [openapi.filter.joinType ?? 'innerJoin', openapi.filter.table, openapi.filter.joinOn] : undefined;
|
|
109
|
+
return {
|
|
110
|
+
fieldSchema,
|
|
111
|
+
fieldSchemaInner,
|
|
112
|
+
openapi,
|
|
113
|
+
originalName,
|
|
114
|
+
fullName: joinInfo ? `${openapi?.filter?.table}.${originalName}` : originalName,
|
|
115
|
+
orderFullName: table ? `${table}.${originalName}` : originalName,
|
|
116
|
+
joinInfo
|
|
117
|
+
};
|
|
118
|
+
}
|
|
119
|
+
_addJoin(params, joinInfo) {
|
|
120
|
+
if (!joinInfo) return;
|
|
121
|
+
if (!params.joins) params.joins = [];
|
|
122
|
+
if (params.joins.findIndex(item => item[1] === joinInfo[1]) === -1) {
|
|
123
|
+
params.joins.push(joinInfo);
|
|
117
124
|
}
|
|
125
|
+
}
|
|
126
|
+
async _transformField(key, fieldValue, params, value, options, rootOpenapi) {
|
|
127
|
+
if (__FieldsSystem.includes(key)) return;
|
|
128
|
+
const info = this._resolveField(key, options, rootOpenapi);
|
|
129
|
+
if (!info) return;
|
|
130
|
+
const {
|
|
131
|
+
fieldSchema,
|
|
132
|
+
fieldSchemaInner,
|
|
133
|
+
openapi,
|
|
134
|
+
originalName,
|
|
135
|
+
fullName,
|
|
136
|
+
joinInfo
|
|
137
|
+
} = info;
|
|
138
|
+
const [transformName, transformOptions] = openapi?.filter?.transform ?? ['a-web:base', undefined];
|
|
139
|
+
const fieldNullable = fieldValue === null && isNullableSchema(fieldSchema);
|
|
140
|
+
if (isNilOrEmptyString(fieldValue) && !fieldNullable) return;
|
|
118
141
|
// check where
|
|
119
142
|
if (Object.prototype.hasOwnProperty.call(params.where, fullName)) return;
|
|
120
143
|
// filter transform
|
|
121
|
-
const [, transformOptions] = openapi?.filter?.transform ?? ['a-web:base', undefined];
|
|
122
144
|
const transformOptions2 = this.bean.onion.filterTransform.getOnionOptionsDynamic(transformName, transformOptions);
|
|
123
145
|
// execute
|
|
124
146
|
const beanFullName = beanFullNameFromOnionName(transformName, 'filterTransform');
|
|
@@ -129,7 +151,7 @@ let PipeFilter = class PipeFilter extends BeanBase {
|
|
|
129
151
|
if (!beanInstance.where) {
|
|
130
152
|
throw new Error(`filterTransform.where not found: ${beanFullName}`);
|
|
131
153
|
}
|
|
132
|
-
const
|
|
154
|
+
const transformInfo = {
|
|
133
155
|
params,
|
|
134
156
|
query: value,
|
|
135
157
|
options,
|
|
@@ -141,23 +163,18 @@ let PipeFilter = class PipeFilter extends BeanBase {
|
|
|
141
163
|
schema: fieldSchema,
|
|
142
164
|
openapi
|
|
143
165
|
};
|
|
144
|
-
const resTransform = await beanInstance.where(
|
|
166
|
+
const resTransform = await beanInstance.where(transformInfo, transformOptions2);
|
|
145
167
|
if (resTransform !== undefined) {
|
|
146
168
|
// where
|
|
147
169
|
params.where[fullName] = resTransform;
|
|
148
170
|
// join
|
|
149
|
-
|
|
150
|
-
if (!params.joins) params.joins = [];
|
|
151
|
-
if (params.joins.findIndex(item => item[1] === joinInfo.joinTable) === -1) {
|
|
152
|
-
params.joins.push(joinInfo);
|
|
153
|
-
}
|
|
154
|
-
}
|
|
171
|
+
this._addJoin(params, joinInfo);
|
|
155
172
|
}
|
|
156
173
|
}
|
|
157
|
-
async _transformFields(params, value, options) {
|
|
174
|
+
async _transformFields(params, value, options, rootOpenapi) {
|
|
158
175
|
// loop
|
|
159
176
|
for (const key in value) {
|
|
160
|
-
await this._transformField(key, value[key], params, value, options);
|
|
177
|
+
await this._transformField(key, value[key], params, value, options, rootOpenapi);
|
|
161
178
|
}
|
|
162
179
|
}
|
|
163
180
|
};
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sources":["../src/bean/pipe.filter.ts","../src/bean/pipe.valid.ts","../src/lib/const.ts","../src/lib/middleware/utils.ts","../src/lib/middleware/middlewareGuard.ts","../src/lib/middleware/middlewareInterceptor.ts","../src/lib/middleware/extractValue.ts","../src/lib/middleware/middlewarePipe.ts","../src/types/request.ts","../src/bean/bean.router.ts","../src/service/web.ts","../src/bean/hmr.controller.ts","../src/bean/hmr.dto.ts","../src/bean/startup.listen.ts","../src/lib/decorator/filterTransform.ts","../src/bean/filterTransform.base.ts","../src/bean/filterTransform.dateRange.ts","../src/config/config.ts","../src/.metadata/this.ts","../src/main.ts","../src/.metadata/index.ts","../src/lib/decorator/pipesArgument.ts","../src/lib/decorator/arguments.ts","../src/lib/decorator/bean.ts","../src/lib/decorator/request.ts"],"sourcesContent":[null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null],"names":["__FieldsSystem","PipeFilter","BeanBase","transform","value","metadata","options","schema","Error","controller","name","method","index","bean","validator","validateSchema","field","params","_transform","_transformSystem","_transformFields","_transformOrders","isNil","columns","where","orders","startsWith","endsWith","JSON","parse","cast","split","pageNo","pageSize","offset","limit","openapi","ZodMetadata","getOpenapiMetadata","table","filter","order","includes","tableCurrent","fieldCurrent","fieldSchema","getFieldSchema","originalName","_transformField","key","fieldValue","fieldSchemaInner","unwrapChained","transformName","undefined","fieldNullable","isNullableSchema","isNilOrEmptyString","fullName","joinInfo","joinOn","joinType","joinTable","Object","prototype","hasOwnProperty","call","transformOptions","transformOptions2","onion","filterTransform","getOnionOptionsDynamic","beanFullName","beanFullNameFromOnionName","beanInstance","_getBean","info","query","type","resTransform","joins","findIndex","item","push","__decorate","Pipe","disableErrorMessages","errorHttpStatusCode","loose","strict","__z_BeanInfo","module","ArgFilterPro","createArgumentPipe","PipeValid","ArgValid","SymbolCacheControllerRoutes","Symbol","recordResourceNameToRoutePath","getCacheControllerRoutes","app","meta","composeGuards","route","SymbolCacheComposeGuards","cacheComposeGuards","controllerBeanFullName","handlerName","action","guard","compose","middlewareGuard","ctx","next","handler","getHandler","result","throw","middlewareInterceptor","_composeInterceptors","SymbolCacheComposeInterceptors","cacheComposeInterceptors","interceptor","extractValue","argMeta","exchangeKeyForValue","req","request","res","response","modes","body","param","headers","toLowerCase","host","hosts","ip","rawBody","user","passport","currentUser","rbacScopeCurrent","rbacScope","current","fields","uploadValue","SymbolUploadValue","map","find","files","file","middlewarePipe","SymbolRouteHandlersArgumentsValue","_transformArguments","paramtypes","appMetadata","getMetadata","argsMeta","SymbolRouteHandlersArgumentsMeta","args","Array","from","length","_extractArgumentValue","metaType","_transformArgument","pipes","composePipes","_next","argIndex","pipe","_pipeNextDefault","executeCustom","SymbolCacheComposePipes","cacheComposePipes","onionPipe","middlewares","onionsGlobal","_wrapOnion","middlewaresLocal","_collectOnionsHandler","middlewaresArgument","_collectArgumentMiddlewares","pipeName","onionsNormal","sceneName","argumentPipe","SymbolRequestMappingHandler","BeanRouter","reRegisterController","cacheControllerRoutes","routes","router","off","routeMethod","toUpperCase","routePath","registerController","beanOptions","appResource","getBean","beanClass","controllerOptions","controllerPath","path","controllerMiddlewaresOptions","SymbolUseOnionOptions","descs","getOwnPropertyDescriptors","actionKey","desc","_registerControllerAction","register","moduleName","simplify","fn","_path","util","combineApiPath","on","unRegister","findByPath","findRoute","hasMetadata","handlerMetadata","actionPath","actionMethod","combineApiPathControllerAndAction","routePathRaw","combineApiPathControllerAndActionRaw","actionMiddlewaresOptions","deepExtend","defineMetadata","SymbolUseOnionOptionsRouteReal","_route","actionDescriptor","routePathOriginal","_req","_res","_store","searchParams","_composeMiddlewares","Bean","SymbolCacheComposeMiddlewares","cacheComposeMiddlewares","fnStart","routeStartMiddleware","fnMid","routeTailDoneMiddleware","fnEnd","classControllerMiddleware","middleware","getHandlerName","getControllerBean","commitsDone","ServiceWeb","combineControllerActionApiPath","prefix","Service","HmrController","reload","clearCacheComposesRouter","clearAllCaches","permission","Hmr","HmrDto","_beanOptions","worker","StartupListen","execute","config","server","listen","disable","_listen","port","hostname","http","createServer","_callback","listenerCount","onerror","executor","newCtx","handleRequest","dbInfo","level","innerAccess","Startup","after","FilterTransform","createBeanDecorator","FilterTransformBase","_options","op","FilterTransformDateRange","dateStartStr","dateEndStr","separator","dateStart","_parseDate","_gte_","toJSDate","dateEnd","plus","day","_lt_","str","date","DateTime","fromISO","zone","tz","isValid","format","fromFormat","_app","maxParamLength","defaultRoute","__ThisModule__","SymbolRouter","Main","BeanSimple","constructor","moduleLoading","moduleLoaded","scope","self","defineProperty","get","Router","getOnionsEnabledCached","use","_composeMiddlewareSystems","SymbolRouterMiddleware","routerMiddleware","configLoaded","_config","Promise","resolve","reject","lookup","err","SymbolCacheComposeMiddlewareSystems","middlewareSystem","getOnionsEnabledWrapped","_ctx","checkOnionOptionsEnabled","_name","ScopeModuleAWeb","BeanScopeBase","Scope","createPipesArgumentDecorator","paramType","schemaLikes","target","prop","hasParamField","paramField","paramSchemaLikes","z","string","array","argSchema","makeSchemaLikes","setArgumentPipe","Param","property","Query","Body","Headers","Fields","Field","Files","File","User","RbacScopeCurrent","ArgFilter","schemaLike","$schema","Arg","Controller","assign","optionsMeta","getOwnMetadataMap","SymbolOpenApiOptions","mergeControllerActionsOpenapiMetadata","onionName","onionNameFromBeanFullName","controllerResource","getOwnMetadata","SymbolControllerResource","useApp","apiPath","Dto","mergeDtoFieldsOpenapiMetadata","mergeDtoBlocksOpenapiMetadata","mergeDtoPipesOpenapiMetadata","actions","onionOptions","blocks","rest","schemaScene","getTargetDecoratorDtoOpenapi","mergeTargetDecoratorDtoOpenapi","getTargetDecoratorDtoPipes","setTargetDecoratorDtoPipes","defaultMetadata","RequestMapping","descriptor","createMappingDecorator","Post","Get","Delete","Put","Patch","Options","Head","Web","post","delete","put","patch","head"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.js","sources":["../src/bean/pipe.filter.ts","../src/bean/pipe.valid.ts","../src/lib/const.ts","../src/lib/middleware/utils.ts","../src/lib/middleware/middlewareGuard.ts","../src/lib/middleware/middlewareInterceptor.ts","../src/lib/middleware/extractValue.ts","../src/lib/middleware/middlewarePipe.ts","../src/types/request.ts","../src/bean/bean.router.ts","../src/service/web.ts","../src/bean/hmr.controller.ts","../src/bean/hmr.dto.ts","../src/bean/startup.listen.ts","../src/lib/decorator/filterTransform.ts","../src/bean/filterTransform.base.ts","../src/bean/filterTransform.dateRange.ts","../src/config/config.ts","../src/.metadata/this.ts","../src/main.ts","../src/.metadata/index.ts","../src/lib/decorator/pipesArgument.ts","../src/lib/decorator/arguments.ts","../src/lib/decorator/bean.ts","../src/lib/decorator/request.ts"],"sourcesContent":[null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null],"names":["__FieldsSystem","PipeFilter","BeanBase","transform","value","metadata","options","schema","Error","controller","name","method","index","bean","validator","validateSchema","field","params","_transform","_transformSystem","rootOpenapi","ZodMetadata","getOpenapiMetadata","_transformFields","_transformOrders","isNil","columns","where","orders","startsWith","endsWith","JSON","parse","cast","split","pageNo","pageSize","offset","limit","order","Array","isArray","length","key","direction","info","_resolveField","openapi","filter","capabilities","orderFullName","_addJoin","joinInfo","fieldSchema","getFieldSchema","table","keyParts","resolved","fieldSchemaInner","unwrapChained","originalName","joinOn","joinType","undefined","fullName","joins","findIndex","item","push","_transformField","fieldValue","includes","transformName","transformOptions","fieldNullable","isNullableSchema","isNilOrEmptyString","Object","prototype","hasOwnProperty","call","transformOptions2","onion","filterTransform","getOnionOptionsDynamic","beanFullName","beanFullNameFromOnionName","beanInstance","_getBean","transformInfo","query","type","resTransform","__decorate","Pipe","disableErrorMessages","errorHttpStatusCode","loose","strict","__z_BeanInfo","module","ArgFilterPro","createArgumentPipe","PipeValid","ArgValid","SymbolCacheControllerRoutes","Symbol","recordResourceNameToRoutePath","getCacheControllerRoutes","app","meta","composeGuards","route","SymbolCacheComposeGuards","cacheComposeGuards","controllerBeanFullName","handlerName","action","guard","compose","middlewareGuard","ctx","next","handler","getHandler","result","throw","middlewareInterceptor","_composeInterceptors","SymbolCacheComposeInterceptors","cacheComposeInterceptors","interceptor","extractValue","argMeta","exchangeKeyForValue","req","request","res","response","modes","body","param","headers","toLowerCase","host","hosts","ip","rawBody","user","passport","currentUser","rbacScopeCurrent","rbacScope","current","fields","uploadValue","SymbolUploadValue","map","find","files","file","middlewarePipe","SymbolRouteHandlersArgumentsValue","_transformArguments","paramtypes","appMetadata","getMetadata","argsMeta","SymbolRouteHandlersArgumentsMeta","args","from","_extractArgumentValue","metaType","_transformArgument","pipes","composePipes","_next","argIndex","pipe","_pipeNextDefault","executeCustom","SymbolCacheComposePipes","cacheComposePipes","onionPipe","middlewares","onionsGlobal","_wrapOnion","middlewaresLocal","_collectOnionsHandler","middlewaresArgument","_collectArgumentMiddlewares","pipeName","onionsNormal","sceneName","argumentPipe","SymbolRequestMappingHandler","BeanRouter","reRegisterController","cacheControllerRoutes","routes","router","off","routeMethod","toUpperCase","routePath","registerController","beanOptions","appResource","getBean","beanClass","controllerOptions","controllerPath","path","controllerMiddlewaresOptions","SymbolUseOnionOptions","descs","getOwnPropertyDescriptors","actionKey","desc","_registerControllerAction","register","moduleName","simplify","fn","_path","util","combineApiPath","on","unRegister","findByPath","findRoute","hasMetadata","handlerMetadata","actionPath","actionMethod","combineApiPathControllerAndAction","routePathRaw","combineApiPathControllerAndActionRaw","actionMiddlewaresOptions","deepExtend","defineMetadata","SymbolUseOnionOptionsRouteReal","_route","actionDescriptor","routePathOriginal","_req","_res","_store","searchParams","_composeMiddlewares","Bean","SymbolCacheComposeMiddlewares","cacheComposeMiddlewares","fnStart","routeStartMiddleware","fnMid","routeTailDoneMiddleware","fnEnd","classControllerMiddleware","middleware","getHandlerName","getControllerBean","commitsDone","ServiceWeb","combineControllerActionApiPath","prefix","Service","HmrController","reload","clearCacheComposesRouter","clearAllCaches","permission","Hmr","HmrDto","_beanOptions","worker","StartupListen","execute","config","server","listen","disable","_listen","port","hostname","http","createServer","_callback","listenerCount","onerror","executor","newCtx","handleRequest","dbInfo","level","innerAccess","Startup","after","FilterTransform","createBeanDecorator","FilterTransformBase","_options","op","FilterTransformDateRange","dateStartStr","dateEndStr","separator","dateStart","_parseDate","_gte_","toJSDate","dateEnd","plus","day","_lt_","str","date","DateTime","fromISO","zone","tz","isValid","format","fromFormat","_app","maxParamLength","defaultRoute","__ThisModule__","SymbolRouter","Main","BeanSimple","constructor","moduleLoading","moduleLoaded","scope","self","defineProperty","get","Router","getOnionsEnabledCached","use","_composeMiddlewareSystems","SymbolRouterMiddleware","routerMiddleware","configLoaded","_config","Promise","resolve","reject","lookup","err","SymbolCacheComposeMiddlewareSystems","middlewareSystem","getOnionsEnabledWrapped","_ctx","checkOnionOptionsEnabled","_name","ScopeModuleAWeb","BeanScopeBase","Scope","createPipesArgumentDecorator","paramType","schemaLikes","target","prop","hasParamField","paramField","paramSchemaLikes","z","string","array","argSchema","makeSchemaLikes","setArgumentPipe","Param","property","Query","Body","Headers","Fields","Field","Files","File","User","RbacScopeCurrent","ArgFilter","schemaLike","$schema","Arg","Controller","assign","optionsMeta","getOwnMetadataMap","SymbolOpenApiOptions","mergeControllerActionsOpenapiMetadata","onionName","onionNameFromBeanFullName","controllerResource","getOwnMetadata","SymbolControllerResource","useApp","apiPath","Dto","mergeDtoFieldsOpenapiMetadata","mergeDtoBlocksOpenapiMetadata","mergeDtoPipesOpenapiMetadata","actions","onionOptions","blocks","rest","schemaScene","getTargetDecoratorDtoOpenapi","mergeTargetDecoratorDtoOpenapi","getTargetDecoratorDtoPipes","setTargetDecoratorDtoPipes","defaultMetadata","RequestMapping","descriptor","createMappingDecorator","Post","Get","Delete","Put","Patch","Options","Head","Web","post","delete","put","patch","head"],"mappings":"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"}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { combineApiPathControllerAndActionRaw } from '@cabloy/utils';
|
|
2
2
|
import { toUpperCaseFirstChar } from '@cabloy/word-utils';
|
|
3
3
|
export default async function (options) {
|
|
4
|
-
const { sceneName, moduleName, globFiles } = options;
|
|
4
|
+
const { sceneName, moduleName, globFiles, cli } = options;
|
|
5
5
|
const contentResources = [];
|
|
6
6
|
const contentImports = [];
|
|
7
7
|
const contentActions = [];
|
|
@@ -17,12 +17,22 @@ export default async function (options) {
|
|
|
17
17
|
export interface ${opionsName} {
|
|
18
18
|
actions?: TypeControllerOptionsActions<${className}>;
|
|
19
19
|
}`);
|
|
20
|
+
const file = cli.helper.gogocode(fileContent, {
|
|
21
|
+
parseOptions: { sourceType: 'module', plugins: ['typescript', 'decorators-legacy'] },
|
|
22
|
+
}).node;
|
|
23
|
+
const declaration = file.program.body
|
|
24
|
+
.map(statement => statement.type === 'ExportNamedDeclaration' || statement.type === 'ExportDefaultDeclaration'
|
|
25
|
+
? statement.declaration
|
|
26
|
+
: statement)
|
|
27
|
+
.find((node) => node?.type === 'ClassDeclaration' && node.id?.name === className);
|
|
28
|
+
if (!declaration)
|
|
29
|
+
continue;
|
|
20
30
|
// controllerPath
|
|
21
|
-
const controllerPath = __parseControllerPath(
|
|
31
|
+
const controllerPath = __parseControllerPath(declaration);
|
|
22
32
|
if (controllerPath === false)
|
|
23
33
|
continue;
|
|
24
34
|
// actionPath;
|
|
25
|
-
const actionPaths = __parseActionPaths(
|
|
35
|
+
const actionPaths = __parseActionPaths(declaration);
|
|
26
36
|
for (const [method, actionPath] of actionPaths) {
|
|
27
37
|
if (!contentPaths[method])
|
|
28
38
|
contentPaths[method] = [];
|
|
@@ -77,36 +87,65 @@ ${contentResources2}
|
|
|
77
87
|
`;
|
|
78
88
|
return content;
|
|
79
89
|
}
|
|
80
|
-
function __parseControllerPath(
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
90
|
+
function __parseControllerPath(declaration) {
|
|
91
|
+
for (const decorator of declaration.decorators ?? []) {
|
|
92
|
+
const call = decorator.expression;
|
|
93
|
+
if (call.type !== 'CallExpression' ||
|
|
94
|
+
call.callee.type !== 'Identifier' ||
|
|
95
|
+
call.callee.name !== 'Controller') {
|
|
96
|
+
continue;
|
|
97
|
+
}
|
|
98
|
+
const argument = call.arguments[0];
|
|
99
|
+
if (!argument)
|
|
100
|
+
return '';
|
|
101
|
+
if (argument.type === 'StringLiteral')
|
|
102
|
+
return argument.value;
|
|
103
|
+
if (argument.type !== 'ObjectExpression')
|
|
104
|
+
return false;
|
|
105
|
+
// Read the last explicit path; a later spread/computed key makes it dynamic.
|
|
106
|
+
for (const property of argument.properties.toReversed()) {
|
|
107
|
+
if (property.type === 'SpreadElement' || property.computed)
|
|
108
|
+
return false;
|
|
109
|
+
const key = property.key;
|
|
110
|
+
if ((key.type === 'Identifier' && key.name === 'path') ||
|
|
111
|
+
(key.type === 'StringLiteral' && key.value === 'path')) {
|
|
112
|
+
return property.type === 'ObjectProperty' && property.value.type === 'StringLiteral'
|
|
113
|
+
? property.value.value
|
|
114
|
+
: false;
|
|
115
|
+
}
|
|
116
|
+
}
|
|
89
117
|
return '';
|
|
90
|
-
|
|
118
|
+
}
|
|
119
|
+
return false;
|
|
91
120
|
}
|
|
92
|
-
function __parseActionPaths(
|
|
121
|
+
function __parseActionPaths(declaration) {
|
|
93
122
|
const actionPaths = [];
|
|
94
|
-
const
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
123
|
+
for (const member of declaration.body.body) {
|
|
124
|
+
if (member.type !== 'ClassMethod')
|
|
125
|
+
continue;
|
|
126
|
+
for (const decorator of member.decorators ?? []) {
|
|
127
|
+
const call = decorator.expression;
|
|
128
|
+
if (call.type !== 'CallExpression')
|
|
129
|
+
continue;
|
|
130
|
+
const callee = call.callee;
|
|
131
|
+
if (callee.type !== 'MemberExpression' ||
|
|
132
|
+
callee.computed ||
|
|
133
|
+
callee.object.type !== 'Identifier' ||
|
|
134
|
+
callee.object.name !== 'Web' ||
|
|
135
|
+
callee.property.type !== 'Identifier' ||
|
|
136
|
+
!['get', 'post', 'delete', 'put', 'patch'].includes(callee.property.name)) {
|
|
137
|
+
continue;
|
|
138
|
+
}
|
|
139
|
+
const argument = call.arguments[0];
|
|
140
|
+
// Options-only and no-argument decorators map to the root action route.
|
|
141
|
+
// RegExp and other dynamic expressions cannot supply static route metadata.
|
|
142
|
+
if (!argument || argument.type === 'ObjectExpression') {
|
|
143
|
+
actionPaths.push([toUpperCaseFirstChar(callee.property.name), '']);
|
|
144
|
+
}
|
|
145
|
+
else if (argument.type === 'StringLiteral') {
|
|
146
|
+
actionPaths.push([toUpperCaseFirstChar(callee.property.name), argument.value]);
|
|
147
|
+
}
|
|
107
148
|
}
|
|
108
|
-
const method = toUpperCaseFirstChar(matches2[1].substring(4));
|
|
109
|
-
actionPaths.push([method, actionPath]);
|
|
110
149
|
}
|
|
111
150
|
return actionPaths;
|
|
112
151
|
}
|
package/package.json
CHANGED
package/src/bean/pipe.filter.ts
CHANGED
|
@@ -25,6 +25,7 @@ import type {
|
|
|
25
25
|
export type TypePipeFilterData = ITableQuery;
|
|
26
26
|
|
|
27
27
|
export type TypePipeFilterResult = TypeQueryParamsPatch;
|
|
28
|
+
type TypeQueryJoin = NonNullable<TypeQueryParamsPatch['joins']>[number];
|
|
28
29
|
|
|
29
30
|
export interface IPipeOptionsFilter
|
|
30
31
|
extends IDecoratorPipeOptions, IDecoratorPipeOptionsArgument, ValidatorOptions {}
|
|
@@ -68,10 +69,13 @@ export class PipeFilter
|
|
|
68
69
|
private async _transform(value: TypePipeFilterData, options: IPipeOptionsFilter) {
|
|
69
70
|
// 1. system: columns/where/orders/pageNo/pageSize
|
|
70
71
|
const params = this._transformSystem(value);
|
|
72
|
+
const rootOpenapi = ZodMetadata.getOpenapiMetadata(options.schema!) as
|
|
73
|
+
| ISchemaObjectExtensionField
|
|
74
|
+
| undefined;
|
|
71
75
|
// 2. fields
|
|
72
|
-
await this._transformFields(params, value, options);
|
|
76
|
+
await this._transformFields(params, value, options, rootOpenapi);
|
|
73
77
|
// 3. system: orders
|
|
74
|
-
this._transformOrders(params, options);
|
|
78
|
+
this._transformOrders(params, options, rootOpenapi);
|
|
75
79
|
// ok
|
|
76
80
|
return params;
|
|
77
81
|
}
|
|
@@ -104,32 +108,75 @@ export class PipeFilter
|
|
|
104
108
|
return params;
|
|
105
109
|
}
|
|
106
110
|
|
|
107
|
-
private _transformOrders(
|
|
111
|
+
private _transformOrders(
|
|
112
|
+
params: TypeQueryParamsPatch,
|
|
113
|
+
options: IPipeOptionsFilter,
|
|
114
|
+
rootOpenapi: ISchemaObjectExtensionField | undefined,
|
|
115
|
+
) {
|
|
108
116
|
if (!params.orders) return;
|
|
109
|
-
// openapi
|
|
110
|
-
const openapi: ISchemaObjectExtensionField | undefined = ZodMetadata.getOpenapiMetadata(
|
|
111
|
-
options.schema!,
|
|
112
|
-
) as ISchemaObjectExtensionField | undefined;
|
|
113
|
-
const table = openapi?.filter?.table;
|
|
114
|
-
// loop
|
|
115
117
|
for (const order of params.orders) {
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
tableCurrent = openapi?.filter?.table;
|
|
127
|
-
}
|
|
128
|
-
if (openapi?.filter?.originalName) {
|
|
129
|
-
fieldCurrent = openapi?.filter?.originalName;
|
|
130
|
-
}
|
|
118
|
+
if (!Array.isArray(order) || order.length !== 2) {
|
|
119
|
+
throw new Error('invalid order');
|
|
120
|
+
}
|
|
121
|
+
const [key, direction] = order;
|
|
122
|
+
if (typeof key !== 'string' || (direction !== 'asc' && direction !== 'desc')) {
|
|
123
|
+
throw new Error('invalid order');
|
|
124
|
+
}
|
|
125
|
+
const info = this._resolveField(key, options, rootOpenapi);
|
|
126
|
+
if (!info || info.openapi?.filter?.capabilities?.order === false) {
|
|
127
|
+
throw new Error(`invalid order field: ${key}`);
|
|
131
128
|
}
|
|
132
|
-
cast(order)[0] =
|
|
129
|
+
cast(order)[0] = info.orderFullName;
|
|
130
|
+
this._addJoin(params, info.joinInfo);
|
|
131
|
+
}
|
|
132
|
+
}
|
|
133
|
+
|
|
134
|
+
private _resolveField(
|
|
135
|
+
key: string,
|
|
136
|
+
options: IPipeOptionsFilter,
|
|
137
|
+
rootOpenapi: ISchemaObjectExtensionField | undefined,
|
|
138
|
+
) {
|
|
139
|
+
const fieldSchema = ZodMetadata.getFieldSchema(options.schema!, key);
|
|
140
|
+
if (!fieldSchema) {
|
|
141
|
+
if (!rootOpenapi?.filter?.table) {
|
|
142
|
+
return { orderFullName: key };
|
|
143
|
+
}
|
|
144
|
+
const keyParts = key.split('.');
|
|
145
|
+
const [table, field] = keyParts;
|
|
146
|
+
if (!table || !field || keyParts.length !== 2) return;
|
|
147
|
+
const resolved = this._resolveField(field, options, rootOpenapi);
|
|
148
|
+
if (!resolved || resolved.orderFullName !== key) return;
|
|
149
|
+
return resolved;
|
|
150
|
+
}
|
|
151
|
+
const fieldSchemaInner = ZodMetadata.unwrapChained(fieldSchema);
|
|
152
|
+
const openapi: ISchemaObjectExtensionField | undefined = ZodMetadata.getOpenapiMetadata(
|
|
153
|
+
fieldSchema,
|
|
154
|
+
) as ISchemaObjectExtensionField | undefined;
|
|
155
|
+
const originalName = openapi?.filter?.originalName ?? key;
|
|
156
|
+
const table = openapi?.filter?.table ?? rootOpenapi?.filter?.table;
|
|
157
|
+
const joinInfo = openapi?.filter?.joinOn
|
|
158
|
+
? ([
|
|
159
|
+
openapi.filter.joinType ?? 'innerJoin',
|
|
160
|
+
openapi.filter.table,
|
|
161
|
+
openapi.filter.joinOn,
|
|
162
|
+
] as TypeQueryJoin)
|
|
163
|
+
: undefined;
|
|
164
|
+
return {
|
|
165
|
+
fieldSchema,
|
|
166
|
+
fieldSchemaInner,
|
|
167
|
+
openapi,
|
|
168
|
+
originalName,
|
|
169
|
+
fullName: joinInfo ? `${openapi?.filter?.table}.${originalName}` : originalName,
|
|
170
|
+
orderFullName: table ? `${table}.${originalName}` : originalName,
|
|
171
|
+
joinInfo,
|
|
172
|
+
};
|
|
173
|
+
}
|
|
174
|
+
|
|
175
|
+
private _addJoin(params: TypeQueryParamsPatch, joinInfo: TypeQueryJoin | undefined) {
|
|
176
|
+
if (!joinInfo) return;
|
|
177
|
+
if (!params.joins) params.joins = [];
|
|
178
|
+
if (params.joins.findIndex(item => item[1] === joinInfo[1]) === -1) {
|
|
179
|
+
params.joins.push(joinInfo);
|
|
133
180
|
}
|
|
134
181
|
}
|
|
135
182
|
|
|
@@ -139,36 +186,21 @@ export class PipeFilter
|
|
|
139
186
|
params: TypeQueryParamsPatch,
|
|
140
187
|
value: any,
|
|
141
188
|
options: IPipeOptionsFilter,
|
|
189
|
+
rootOpenapi: ISchemaObjectExtensionField | undefined,
|
|
142
190
|
) {
|
|
143
191
|
if (__FieldsSystem.includes(key)) return;
|
|
144
|
-
const
|
|
145
|
-
if (!
|
|
146
|
-
const fieldSchemaInner =
|
|
147
|
-
|
|
148
|
-
|
|
149
|
-
|
|
150
|
-
|
|
151
|
-
const [transformName] = openapi?.filter?.transform ?? ['a-web:base', undefined];
|
|
192
|
+
const info = this._resolveField(key, options, rootOpenapi);
|
|
193
|
+
if (!info) return;
|
|
194
|
+
const { fieldSchema, fieldSchemaInner, openapi, originalName, fullName, joinInfo } = info;
|
|
195
|
+
const [transformName, transformOptions] = openapi?.filter?.transform ?? [
|
|
196
|
+
'a-web:base',
|
|
197
|
+
undefined,
|
|
198
|
+
];
|
|
152
199
|
const fieldNullable = fieldValue === null && isNullableSchema(fieldSchema);
|
|
153
200
|
if (isNilOrEmptyString(fieldValue) && !fieldNullable) return;
|
|
154
|
-
// name
|
|
155
|
-
const originalName = openapi?.filter?.originalName ?? key;
|
|
156
|
-
let fullName: string;
|
|
157
|
-
// joins
|
|
158
|
-
let joinInfo;
|
|
159
|
-
if (openapi?.filter?.joinOn) {
|
|
160
|
-
const joinType = openapi.filter.joinType ?? 'innerJoin';
|
|
161
|
-
const joinTable = openapi.filter.table;
|
|
162
|
-
const joinOn = openapi.filter.joinOn;
|
|
163
|
-
joinInfo = [joinType, joinTable, joinOn];
|
|
164
|
-
fullName = `${joinTable}.${originalName}`;
|
|
165
|
-
} else {
|
|
166
|
-
fullName = originalName;
|
|
167
|
-
}
|
|
168
201
|
// check where
|
|
169
202
|
if (Object.prototype.hasOwnProperty.call(params.where, fullName)) return;
|
|
170
203
|
// filter transform
|
|
171
|
-
const [, transformOptions] = openapi?.filter?.transform ?? ['a-web:base', undefined];
|
|
172
204
|
const transformOptions2 = this.bean.onion.filterTransform.getOnionOptionsDynamic(
|
|
173
205
|
transformName as keyof IFilterTransformRecord,
|
|
174
206
|
transformOptions,
|
|
@@ -182,7 +214,7 @@ export class PipeFilter
|
|
|
182
214
|
if (!beanInstance.where) {
|
|
183
215
|
throw new Error(`filterTransform.where not found: ${beanFullName}`);
|
|
184
216
|
}
|
|
185
|
-
const
|
|
217
|
+
const transformInfo = {
|
|
186
218
|
params,
|
|
187
219
|
query: value,
|
|
188
220
|
options,
|
|
@@ -194,17 +226,12 @@ export class PipeFilter
|
|
|
194
226
|
schema: fieldSchema,
|
|
195
227
|
openapi,
|
|
196
228
|
};
|
|
197
|
-
const resTransform = await beanInstance.where(
|
|
229
|
+
const resTransform = await beanInstance.where(transformInfo, transformOptions2);
|
|
198
230
|
if (resTransform !== undefined) {
|
|
199
231
|
// where
|
|
200
232
|
params.where[fullName] = resTransform;
|
|
201
233
|
// join
|
|
202
|
-
|
|
203
|
-
if (!params.joins) params.joins = [];
|
|
204
|
-
if (params.joins.findIndex(item => item[1] === joinInfo.joinTable) === -1) {
|
|
205
|
-
params.joins.push(joinInfo);
|
|
206
|
-
}
|
|
207
|
-
}
|
|
234
|
+
this._addJoin(params, joinInfo);
|
|
208
235
|
}
|
|
209
236
|
}
|
|
210
237
|
|
|
@@ -212,10 +239,11 @@ export class PipeFilter
|
|
|
212
239
|
params: TypeQueryParamsPatch,
|
|
213
240
|
value: any,
|
|
214
241
|
options: IPipeOptionsFilter,
|
|
242
|
+
rootOpenapi: ISchemaObjectExtensionField | undefined,
|
|
215
243
|
) {
|
|
216
244
|
// loop
|
|
217
245
|
for (const key in value) {
|
|
218
|
-
await this._transformField(key, value[key], params, value, options);
|
|
246
|
+
await this._transformField(key, value[key], params, value, options, rootOpenapi);
|
|
219
247
|
}
|
|
220
248
|
}
|
|
221
249
|
}
|