dinegg 2.10.2 → 2.11.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.
@@ -27,15 +27,7 @@ exports.default = () => {
27
27
  config.jwtLogin = {
28
28
  expires: 2000,
29
29
  };
30
- config.sequelize = {
31
- dialect: "mysql",
32
- host: "127.0.0.1",
33
- port: 3306,
34
- database: "",
35
- username: "",
36
- password: "",
37
- timezone: "+08:00",
38
- };
30
+ config.sequelize = {};
39
31
  config.status_code = {
40
32
  20000: {
41
33
  code: 20000,
@@ -58,4 +50,4 @@ exports.default = () => {
58
50
  config.route_white_list = [];
59
51
  return config;
60
52
  };
61
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29uZmlnLmRlZmF1bHQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyJjb25maWcuZGVmYXVsdC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFRQSxZQUFZLENBQUM7O0FBR2IsNkJBQTZCO0FBRTdCLGtCQUFlLEdBQUcsRUFBRTtJQUNsQixNQUFNLE1BQU0sR0FBRyxFQUFnQyxDQUFDO0lBT2hELE1BQU0sQ0FBQyxRQUFRLEdBQUc7UUFDaEIsSUFBSSxFQUFFLEtBQUs7UUFDWCxlQUFlLEVBQUUsQ0FBQyxHQUFHLENBQUM7S0FDdkIsQ0FBQztJQUVGLE1BQU0sQ0FBQyxJQUFJLEdBQUc7UUFDWixNQUFNLEVBQUUsR0FBRztRQUNYLFlBQVksRUFBRSx3Q0FBd0M7S0FDdkQsQ0FBQztJQUdGLE1BQU0sQ0FBQyxVQUFVLEdBQUc7UUFDbEIsU0FBUyxFQUFFLEtBQUs7UUFDaEIsU0FBUyxFQUFFLEtBQUs7S0FDakIsQ0FBQztJQUdGLE1BQU0sQ0FBQyxNQUFNLEdBQUc7UUFDZCxHQUFHLEVBQUUsSUFBSSxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsR0FBRyxFQUFFLEVBQUMsTUFBTSxDQUFDO1FBQ3BDLFVBQVUsRUFBRSxLQUFLO1FBQ2pCLFlBQVksRUFBRSxNQUFNO0tBRXJCLENBQUM7SUFDRixNQUFNLENBQUMsWUFBWSxHQUFHLEVBSXJCLENBQUE7SUFLRCxNQUFNLENBQUMsR0FBRyxHQUFHO1FBQ1gsTUFBTSxFQUFFLGdEQUFnRDtLQUN6RCxDQUFDO0lBRUYsTUFBTSxDQUFDLFFBQVEsR0FBRztRQUNoQixPQUFPLEVBQUUsSUFBSTtLQUNkLENBQUM7SUFHRixNQUFNLENBQUMsU0FBUyxHQUFHO1FBQ2pCLE9BQU8sRUFBRSxPQUFPO1FBQ2hCLElBQUksRUFBRSxXQUFXO1FBQ2pCLElBQUksRUFBRSxJQUFJO1FBQ1YsUUFBUSxFQUFFLEVBQUU7UUFDWixRQUFRLEVBQUUsRUFBRTtRQUNaLFFBQVEsRUFBRSxFQUFFO1FBQ1osUUFBUSxFQUFFLFFBQVE7S0FDbkIsQ0FBQztJQUdGLE1BQU0sQ0FBQyxXQUFXLEdBQUc7UUFDbkIsS0FBSyxFQUFFO1lBQ0wsSUFBSSxFQUFFLEtBQUs7WUFDWCxHQUFHLEVBQUUsU0FBUztZQUNkLElBQUksRUFBRSxJQUFJO1NBQ1g7UUFDRCxLQUFLLEVBQUU7WUFDTCxJQUFJLEVBQUUsS0FBSztZQUNYLEdBQUcsRUFBRSxPQUFPO1lBQ1osSUFBSSxFQUFFLElBQUk7WUFDVixRQUFRLEVBQUUsSUFBSTtTQUNmO1FBQ0QsS0FBSyxFQUFFO1lBQ0wsSUFBSSxFQUFFLEtBQUs7WUFDWCxHQUFHLEVBQUUsY0FBYztZQUNuQixJQUFJLEVBQUUsSUFBSTtZQUNWLFFBQVEsRUFBRSxJQUFJO1NBQ2Y7S0FDRixDQUFDO0lBRUYsTUFBTSxDQUFDLGdCQUFnQixHQUFHLEVBQUUsQ0FBQztJQUU3QixPQUFPLE1BQU0sQ0FBQztBQUNoQixDQUFDLENBQUMifQ==
53
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29uZmlnLmRlZmF1bHQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyJjb25maWcuZGVmYXVsdC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFRQSxZQUFZLENBQUM7O0FBR2IsNkJBQTZCO0FBRTdCLGtCQUFlLEdBQUcsRUFBRTtJQUNsQixNQUFNLE1BQU0sR0FBRyxFQUFnQyxDQUFDO0lBTWhELE1BQU0sQ0FBQyxRQUFRLEdBQUc7UUFDaEIsSUFBSSxFQUFFLEtBQUs7UUFDWCxlQUFlLEVBQUUsQ0FBQyxHQUFHLENBQUM7S0FDdkIsQ0FBQztJQUVGLE1BQU0sQ0FBQyxJQUFJLEdBQUc7UUFDWixNQUFNLEVBQUUsR0FBRztRQUNYLFlBQVksRUFBRSx3Q0FBd0M7S0FDdkQsQ0FBQztJQUdGLE1BQU0sQ0FBQyxVQUFVLEdBQUc7UUFDbEIsU0FBUyxFQUFFLEtBQUs7UUFDaEIsU0FBUyxFQUFFLEtBQUs7S0FDakIsQ0FBQztJQUdGLE1BQU0sQ0FBQyxNQUFNLEdBQUc7UUFDZCxHQUFHLEVBQUUsSUFBSSxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsR0FBRyxFQUFFLEVBQUUsTUFBTSxDQUFDO1FBQ3JDLFVBQVUsRUFBRSxLQUFLO1FBQ2pCLFlBQVksRUFBRSxNQUFNO0tBQ3JCLENBQUM7SUFDRixNQUFNLENBQUMsWUFBWSxHQUFHLEVBSXJCLENBQUM7SUFHRixNQUFNLENBQUMsR0FBRyxHQUFHO1FBQ1gsTUFBTSxFQUFFLGdEQUFnRDtLQUN6RCxDQUFDO0lBRUYsTUFBTSxDQUFDLFFBQVEsR0FBRztRQUNoQixPQUFPLEVBQUUsSUFBSTtLQUNkLENBQUM7SUFHRixNQUFNLENBQUMsU0FBUyxHQUFHLEVBQUUsQ0FBQztJQUd0QixNQUFNLENBQUMsV0FBVyxHQUFHO1FBQ25CLEtBQUssRUFBRTtZQUNMLElBQUksRUFBRSxLQUFLO1lBQ1gsR0FBRyxFQUFFLFNBQVM7WUFDZCxJQUFJLEVBQUUsSUFBSTtTQUNYO1FBQ0QsS0FBSyxFQUFFO1lBQ0wsSUFBSSxFQUFFLEtBQUs7WUFDWCxHQUFHLEVBQUUsT0FBTztZQUNaLElBQUksRUFBRSxJQUFJO1lBQ1YsUUFBUSxFQUFFLElBQUk7U0FDZjtRQUNELEtBQUssRUFBRTtZQUNMLElBQUksRUFBRSxLQUFLO1lBQ1gsR0FBRyxFQUFFLGNBQWM7WUFDbkIsSUFBSSxFQUFFLElBQUk7WUFDVixRQUFRLEVBQUUsSUFBSTtTQUNmO0tBQ0YsQ0FBQztJQUVGLE1BQU0sQ0FBQyxnQkFBZ0IsR0FBRyxFQUFFLENBQUM7SUFFN0IsT0FBTyxNQUFNLENBQUM7QUFDaEIsQ0FBQyxDQUFDIn0=
package/config/plugin.js CHANGED
@@ -13,5 +13,9 @@ exp.sequelize = {
13
13
  enable: true,
14
14
  package: "egg-sequelize",
15
15
  };
16
+ exp.validate = {
17
+ enable: true,
18
+ package: "egg-validate",
19
+ };
16
20
  exports.default = exp;
17
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGx1Z2luLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsicGx1Z2luLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQVFBLFlBQVksQ0FBQzs7QUFVYixNQUFNLEdBQUcsR0FBRyxFQUFlLENBQUM7QUFDNUIsR0FBRyxDQUFDLElBQUksR0FBRztJQUNULE1BQU0sRUFBRSxJQUFJO0lBQ1osT0FBTyxFQUFFLFVBQVU7Q0FDcEIsQ0FBQztBQUVGLEdBQUcsQ0FBQyxHQUFHLEdBQUc7SUFDUixNQUFNLEVBQUUsSUFBSTtJQUNaLE9BQU8sRUFBRSxTQUFTO0NBQ25CLENBQUM7QUFFRixHQUFHLENBQUMsU0FBUyxHQUFHO0lBQ2QsTUFBTSxFQUFFLElBQUk7SUFDWixPQUFPLEVBQUUsZUFBZTtDQUN6QixDQUFDO0FBRUYsa0JBQWUsR0FBRyxDQUFDIn0=
21
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGx1Z2luLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsicGx1Z2luLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQVFBLFlBQVksQ0FBQzs7QUFVYixNQUFNLEdBQUcsR0FBRyxFQUFlLENBQUM7QUFDNUIsR0FBRyxDQUFDLElBQUksR0FBRztJQUNULE1BQU0sRUFBRSxJQUFJO0lBQ1osT0FBTyxFQUFFLFVBQVU7Q0FDcEIsQ0FBQztBQUVGLEdBQUcsQ0FBQyxHQUFHLEdBQUc7SUFDUixNQUFNLEVBQUUsSUFBSTtJQUNaLE9BQU8sRUFBRSxTQUFTO0NBQ25CLENBQUM7QUFFRixHQUFHLENBQUMsU0FBUyxHQUFHO0lBQ2QsTUFBTSxFQUFFLElBQUk7SUFDWixPQUFPLEVBQUUsZUFBZTtDQUN6QixDQUFDO0FBRUYsR0FBRyxDQUFDLFFBQVEsR0FBRztJQUNiLE1BQU0sRUFBRSxJQUFJO0lBQ1osT0FBTyxFQUFFLGNBQWM7Q0FDeEIsQ0FBQztBQUVGLGtCQUFlLEdBQUcsQ0FBQyJ9
package/index.d.ts CHANGED
@@ -3,7 +3,7 @@
3
3
  * @Author: ding-cx
4
4
  * @Date: 2021-01-29 18:12:25
5
5
  * @LastEditors: ding
6
- * @LastEditTime: 2022-07-28 11:52:59
6
+ * @LastEditTime: 2022-08-19 10:08:32
7
7
  * @Description: file content
8
8
  */
9
9
  // {framework_root}/index.d.ts
@@ -15,6 +15,7 @@ import "egg-sequelize";
15
15
  import "egg-cors";
16
16
  import "egg-jwt";
17
17
  import "./lib/typings/shim.schedule";
18
+ import "./lib/typings/shim.validate";
18
19
 
19
20
  // import "./typings/sequelize";//不需要自定义的sequelize类型定义了。
20
21
 
@@ -0,0 +1,135 @@
1
+ /*
2
+ * @copyright: ChengXuan
3
+ * @Author: ding
4
+ * @Date: 2022-08-19 10:06:04
5
+ * @LastEditors: ding
6
+ * @LastEditTime: 2022-08-19 11:02:40
7
+ * @Description: egg-validate 插件补充类型声明
8
+ *
9
+ */
10
+
11
+ import { type } from "os";
12
+
13
+ declare module "egg" {
14
+ interface Context {
15
+ // validate(rule: { [key: string]: TAttrValidateType }, data?: any): void;
16
+ // validate(rule: { [key: string]: any[] }, data?: any): void;
17
+ // validate(rule: { [key: string]: RegExp }, data?: any): void;
18
+ /**
19
+ *
20
+ * 参数验证插件
21
+ * - see https://github.com/node-modules/parameter#rule
22
+ *
23
+ * @param {IvalidateRules} rule
24
+ * @param {*} [data] 要验证的数据,默认是ctx.request.body
25
+ * @memberof Context
26
+ */
27
+ validate(rule: IvalidateRules, data?: any): void;
28
+ }
29
+
30
+ interface Application {
31
+ /** 参数对象验证器 */
32
+ validator: {
33
+ /** 添加规则 */
34
+ addRule: (type: string, check: RegExp | CheckHandlerFunc) => void;
35
+ /** app上验证,但不会抛出错误,而是返回错误 */
36
+ validate: (rules: IvalidateRules, data: any) => ValidateError[];
37
+ };
38
+ }
39
+ }
40
+
41
+ /** egg-validate 抛出的校验异常信息 */
42
+ interface ValidateError {
43
+ code: string;
44
+ field?: string;
45
+ message: string;
46
+ }
47
+
48
+ /** 添加规则处理函数,返回字符串表示错误信息,不返回表示验证通过 */
49
+ type CheckHandlerFunc = (rule: IvalidateRules, value: any) => string | void;
50
+
51
+ /** 验证插件的验证规则
52
+ *
53
+ * - see https://github.com/node-modules/parameter#rule
54
+ */
55
+ interface IvalidateRules {
56
+ [key: string]:
57
+ | {
58
+ type: TenumValidateDataType;
59
+ required?: boolean;
60
+ default?: any;
61
+ /** use addRules added rule use test field get the addRule name. */
62
+ test?: string;
63
+ widelyUndefined?: any;
64
+ convertType?: "int" | "number" | "string" | "boolean" | ((...args: any[]) => any);
65
+ /** for int integer number string password and array. approve it to limit. */
66
+ max?: number;
67
+ /** for int integer number string password and array. approve it to limit. */
68
+ min?: number;
69
+ /** for string email.*/
70
+ allowEmpty?: boolean;
71
+ /** for string email. equal to allowEmpty */
72
+ empty?: boolean;
73
+ /** for string. - A RegExp to check string's format. */
74
+ format?: RegExp;
75
+ /** for string. - Trim the string before check, default is false. */
76
+ trim?: boolean;
77
+ /** for password. - Compare field to check equal, default null, not check. */
78
+ compare?: string;
79
+ /** for enum. An array of data, value must be one on them. this rule is required.
80
+ */
81
+ values?: any[];
82
+
83
+ /**
84
+ * for object. An object that validate the properties ot the object.
85
+ *
86
+ * for array. It's array of object. An object that validate the items of the array. Only work with itemType.
87
+ *
88
+ */
89
+ rule?: IvalidateRules | IvalidateRules[];
90
+ /** for array. The type of every item in this array. */
91
+ itemType?: TenumValidateDataType;
92
+ }
93
+ | TAttrValidateType
94
+ | any[]
95
+ | RegExp;
96
+ }
97
+
98
+ /** 数据类型 */
99
+ type TenumValidateDataType =
100
+ | "int"
101
+ | "integer"
102
+ | "number"
103
+ | "string"
104
+ | "boolean"
105
+ | "bool"
106
+ | "date"
107
+ | "datetime"
108
+ | "dateTime"
109
+ | "id"
110
+ | "password"
111
+ | "email"
112
+ | "url"
113
+ | "enum"
114
+ | "object"
115
+ | "array";
116
+
117
+ /** 简写的验证类型 省略写对象*/
118
+ type TAttrValidateType =
119
+ | "int"
120
+ | "int?"
121
+ | "integer"
122
+ | "number"
123
+ | "string"
124
+ | "string?"
125
+ | "password"
126
+ | "boolean"
127
+ | "bool"
128
+ | "date"
129
+ | "dateTime"
130
+ | "id"
131
+ | "email"
132
+ | "url"
133
+ | "enum"
134
+ | "object"
135
+ | "array";
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "dinegg",
3
- "version": "2.10.2",
3
+ "version": "2.11.0",
4
4
  "description": "egg framework dinegg.",
5
5
  "dependencies": {
6
6
  "egg": "^2.31.0",