@nocobase/server 1.6.0-alpha.2 → 1.6.0-alpha.3

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.
@@ -6,4 +6,4 @@
6
6
  * This project is dual-licensed under AGPL-3.0 and NocoBase Commercial License.
7
7
  * For more information, please refer to: https://www.nocobase.com/agreement.
8
8
  */
9
- export default function validateFilterParams(ctx: any, next: any): Promise<void>;
9
+ export default function validateFilterParams(ctx: any, next: any): Promise<any>;
@@ -34,9 +34,35 @@ var import_utils = require("@nocobase/utils");
34
34
  async function validateFilterParams(ctx, next) {
35
35
  const { params } = ctx.action;
36
36
  const guardedActions = ["update", "destroy"];
37
+ const { actionName } = params;
38
+ if (skipValidate(params)) {
39
+ return await next();
40
+ }
41
+ if (emptyFilter(params) && emptyFilterByTk(params)) {
42
+ throw new Error(`to do ${actionName} action, filter or filterByTk is required`);
43
+ }
37
44
  if (params.filter && !(0, import_utils.isValidFilter)(params.filter) && guardedActions.includes(params.actionName)) {
38
45
  throw new Error(`Invalid filter: ${JSON.stringify(params.filter)}`);
39
46
  }
40
47
  await next();
41
48
  }
42
49
  __name(validateFilterParams, "validateFilterParams");
50
+ function emptyFilter(params) {
51
+ return !(0, import_utils.isValidFilter)(params.filter);
52
+ }
53
+ __name(emptyFilter, "emptyFilter");
54
+ function emptyFilterByTk(params) {
55
+ return !params.filterByTk;
56
+ }
57
+ __name(emptyFilterByTk, "emptyFilterByTk");
58
+ function skipValidate(actionParams) {
59
+ const { actionName } = actionParams;
60
+ if (actionName === "update") {
61
+ return actionParams.forceUpdate;
62
+ }
63
+ if (actionName === "destroy") {
64
+ return actionParams.truncate;
65
+ }
66
+ return true;
67
+ }
68
+ __name(skipValidate, "skipValidate");
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@nocobase/server",
3
- "version": "1.6.0-alpha.2",
3
+ "version": "1.6.0-alpha.3",
4
4
  "main": "lib/index.js",
5
5
  "types": "./lib/index.d.ts",
6
6
  "license": "AGPL-3.0",
@@ -10,19 +10,19 @@
10
10
  "@koa/cors": "^3.1.0",
11
11
  "@koa/multer": "^3.0.2",
12
12
  "@koa/router": "^9.4.0",
13
- "@nocobase/acl": "1.6.0-alpha.2",
14
- "@nocobase/actions": "1.6.0-alpha.2",
15
- "@nocobase/auth": "1.6.0-alpha.2",
16
- "@nocobase/cache": "1.6.0-alpha.2",
17
- "@nocobase/data-source-manager": "1.6.0-alpha.2",
18
- "@nocobase/database": "1.6.0-alpha.2",
19
- "@nocobase/evaluators": "1.6.0-alpha.2",
20
- "@nocobase/lock-manager": "1.6.0-alpha.2",
21
- "@nocobase/logger": "1.6.0-alpha.2",
22
- "@nocobase/resourcer": "1.6.0-alpha.2",
23
- "@nocobase/sdk": "1.6.0-alpha.2",
24
- "@nocobase/telemetry": "1.6.0-alpha.2",
25
- "@nocobase/utils": "1.6.0-alpha.2",
13
+ "@nocobase/acl": "1.6.0-alpha.3",
14
+ "@nocobase/actions": "1.6.0-alpha.3",
15
+ "@nocobase/auth": "1.6.0-alpha.3",
16
+ "@nocobase/cache": "1.6.0-alpha.3",
17
+ "@nocobase/data-source-manager": "1.6.0-alpha.3",
18
+ "@nocobase/database": "1.6.0-alpha.3",
19
+ "@nocobase/evaluators": "1.6.0-alpha.3",
20
+ "@nocobase/lock-manager": "1.6.0-alpha.3",
21
+ "@nocobase/logger": "1.6.0-alpha.3",
22
+ "@nocobase/resourcer": "1.6.0-alpha.3",
23
+ "@nocobase/sdk": "1.6.0-alpha.3",
24
+ "@nocobase/telemetry": "1.6.0-alpha.3",
25
+ "@nocobase/utils": "1.6.0-alpha.3",
26
26
  "@types/decompress": "4.2.7",
27
27
  "@types/ini": "^1.3.31",
28
28
  "@types/koa-send": "^4.1.3",
@@ -56,5 +56,5 @@
56
56
  "@types/serve-handler": "^6.1.1",
57
57
  "@types/ws": "^8.5.5"
58
58
  },
59
- "gitHead": "08bbc34c21727fc0ad0880f397a42bf7741091ee"
59
+ "gitHead": "205b4aca5556d5af70679fa401394943a9e51670"
60
60
  }