wok-server 0.5.0 → 0.6.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.en.md +61 -0
- package/README.md +44 -29
- package/dist/cache/cache.js +98 -98
- package/dist/cache/config.js +19 -19
- package/dist/cache/index.js +27 -27
- package/dist/cache/purge-task.js +46 -46
- package/dist/cache/stat.js +47 -47
- package/dist/config/convert.js +36 -36
- package/dist/config/exception.js +14 -14
- package/dist/config/index.js +81 -81
- package/dist/http-client/index.js +136 -136
- package/dist/i18n/ar.js +17 -17
- package/dist/i18n/de.js +17 -17
- package/dist/i18n/en-us.js +17 -17
- package/dist/i18n/es.js +17 -17
- package/dist/i18n/fr.js +17 -17
- package/dist/i18n/i18n.js +231 -231
- package/dist/i18n/index.js +52 -52
- package/dist/i18n/ja.js +17 -17
- package/dist/i18n/ko.js +17 -17
- package/dist/i18n/msg.js +2 -2
- package/dist/i18n/pt.js +17 -17
- package/dist/i18n/ru.js +17 -17
- package/dist/i18n/tag.js +18 -18
- package/dist/i18n/zh-HK.js +17 -17
- package/dist/i18n/zh-TW.js +17 -17
- package/dist/i18n/zh-cn.js +17 -17
- package/dist/index.js +14 -14
- package/dist/lock/index.js +114 -114
- package/dist/log/config.js +35 -35
- package/dist/log/date.js +21 -21
- package/dist/log/file.js +198 -198
- package/dist/log/index.js +135 -135
- package/dist/log/level.js +33 -33
- package/dist/log/log.js +56 -56
- package/dist/log/store.js +19 -19
- package/dist/mongodb/collection.js +2 -2
- package/dist/mongodb/config.js +34 -34
- package/dist/mongodb/doc.js +2 -2
- package/dist/mongodb/exception.js +14 -14
- package/dist/mongodb/index.js +58 -58
- package/dist/mongodb/manager/base.js +563 -563
- package/dist/mongodb/manager/index.js +63 -63
- package/dist/mongodb/manager/tx-strict.js +84 -84
- package/dist/mongodb/manager/tx.js +30 -30
- package/dist/mongodb/migration.js +52 -52
- package/dist/mvc/access-log.js +33 -33
- package/dist/mvc/config.js +27 -27
- package/dist/mvc/exchange.js +113 -113
- package/dist/mvc/handler/index.js +7 -6
- package/dist/mvc/handler/json.js +65 -65
- package/dist/mvc/handler/restful.js +35 -35
- package/dist/mvc/handler/sse.js +65 -0
- package/dist/mvc/handler/upload.js +31 -31
- package/dist/mvc/index.js +50 -50
- package/dist/mvc/interceptor.js +2 -2
- package/dist/mvc/query.js +43 -43
- package/dist/mvc/render/file.js +132 -132
- package/dist/mvc/render/html/html.js +90 -90
- package/dist/mvc/render/html/index.js +18 -18
- package/dist/mvc/render/html/style.js +2 -2
- package/dist/mvc/render/index.js +7 -7
- package/dist/mvc/render/json.js +26 -26
- package/dist/mvc/render/text.js +16 -16
- package/dist/mvc/router.js +2 -2
- package/dist/mvc/server.js +272 -272
- package/dist/mvc/static/header.js +67 -67
- package/dist/mvc/static/index.js +6 -6
- package/dist/mvc/static/mime-type.js +84 -84
- package/dist/mvc/static/server-cache-config.js +66 -66
- package/dist/mvc/static/server-cache.js +133 -133
- package/dist/mvc/static/static-handler.js +372 -372
- package/dist/mysql/config.js +51 -51
- package/dist/mysql/exception.js +14 -14
- package/dist/mysql/index.js +87 -87
- package/dist/mysql/manager/base.js +239 -239
- package/dist/mysql/manager/index.js +107 -107
- package/dist/mysql/manager/ops/count.js +20 -20
- package/dist/mysql/manager/ops/criteria.js +356 -356
- package/dist/mysql/manager/ops/delete.js +65 -65
- package/dist/mysql/manager/ops/exist.js +26 -26
- package/dist/mysql/manager/ops/find.js +169 -169
- package/dist/mysql/manager/ops/index.js +14 -14
- package/dist/mysql/manager/ops/insert.js +106 -106
- package/dist/mysql/manager/ops/modify.js +10 -10
- package/dist/mysql/manager/ops/paginate.js +23 -23
- package/dist/mysql/manager/ops/query.js +9 -9
- package/dist/mysql/manager/ops/update.js +216 -216
- package/dist/mysql/manager/ops/utils.js +24 -24
- package/dist/mysql/manager/tx-strict.js +103 -103
- package/dist/mysql/manager/tx.js +30 -30
- package/dist/mysql/manager/utils.js +56 -56
- package/dist/mysql/migration.js +136 -136
- package/dist/mysql/table-info.js +8 -8
- package/dist/task/daily.js +59 -59
- package/dist/task/fixed-delay.js +38 -38
- package/dist/task/fixed-rate.js +42 -42
- package/dist/task/index.js +9 -9
- package/dist/task/task.js +56 -56
- package/dist/validation/exception.js +36 -36
- package/dist/validation/index.js +40 -40
- package/dist/validation/validator/array.js +34 -34
- package/dist/validation/validator/enum.js +28 -28
- package/dist/validation/validator/index.js +14 -14
- package/dist/validation/validator/length.js +40 -40
- package/dist/validation/validator/max-length.js +35 -35
- package/dist/validation/validator/max.js +29 -29
- package/dist/validation/validator/min-length.js +33 -33
- package/dist/validation/validator/min.js +29 -29
- package/dist/validation/validator/not-blank.js +33 -33
- package/dist/validation/validator/not-null.js +21 -21
- package/dist/validation/validator/plain-obj.js +32 -32
- package/dist/validation/validator/regexp.js +34 -34
- package/documentation/en/cache.md +56 -0
- package/documentation/en/config.md +96 -0
- package/documentation/en/engineering.md +256 -0
- package/documentation/en/http-client.md +32 -0
- package/documentation/en/i18n.md +143 -0
- package/documentation/en/index.md +24 -0
- package/documentation/en/lock.md +51 -0
- package/documentation/en/log.md +109 -0
- package/documentation/en/mongodb.md +256 -0
- package/documentation/en/mvc.md +688 -0
- package/documentation/en/mysql.md +552 -0
- package/documentation/en/task.md +45 -0
- package/documentation/en/test.md +56 -0
- package/documentation/en/validate.md +130 -0
- package/documentation/zh-cn/mvc.md +66 -24
- package/package.json +3 -1
- package/skills/wok-server-api-rules/SKILL.md +350 -0
- package/skills/wok-server-cache/SKILL.md +216 -0
- package/skills/wok-server-config/SKILL.md +200 -0
- package/skills/wok-server-getting-started/SKILL.md +123 -0
- package/skills/wok-server-getting-started/references/engineering.md +169 -0
- package/skills/wok-server-http-client/SKILL.md +164 -0
- package/skills/wok-server-i18n/SKILL.md +214 -0
- package/skills/wok-server-lock/SKILL.md +144 -0
- package/skills/wok-server-log/SKILL.md +218 -0
- package/skills/wok-server-mongodb/SKILL.md +235 -0
- package/skills/wok-server-mvc/SKILL.md +251 -0
- package/skills/wok-server-mvc/references/respond-html.md +157 -0
- package/skills/wok-server-mvc/references/sse.md +121 -0
- package/skills/wok-server-mvc/references/static-files.md +47 -0
- package/skills/wok-server-mvc/references/upload.md +62 -0
- package/skills/wok-server-mvc/references/websocket.md +30 -0
- package/skills/wok-server-mysql/SKILL.md +315 -0
- package/skills/wok-server-mysql/references/multi-datasource.md +76 -0
- package/skills/wok-server-mysql/references/version-control.md +22 -0
- package/skills/wok-server-task/SKILL.md +158 -0
- package/skills/wok-server-validate/SKILL.md +167 -0
- package/src/cache/cache.ts +118 -0
- package/src/cache/config.ts +53 -0
- package/src/cache/index.ts +27 -0
- package/src/cache/purge-task.ts +53 -0
- package/src/cache/stat.ts +47 -0
- package/src/config/convert.ts +27 -0
- package/src/config/exception.ts +8 -0
- package/src/config/index.ts +92 -0
- package/src/http-client/index.ts +202 -0
- package/src/i18n/ar.ts +16 -0
- package/src/i18n/de.ts +16 -0
- package/src/i18n/en-us.ts +16 -0
- package/src/i18n/es.ts +16 -0
- package/src/i18n/fr.ts +16 -0
- package/src/i18n/i18n.ts +230 -0
- package/src/i18n/index.ts +50 -0
- package/src/i18n/ja.ts +16 -0
- package/src/i18n/ko.ts +16 -0
- package/src/i18n/msg.ts +50 -0
- package/src/i18n/pt.ts +16 -0
- package/src/i18n/ru.ts +16 -0
- package/src/i18n/tag.ts +18 -0
- package/src/i18n/zh-HK.ts +16 -0
- package/src/i18n/zh-TW.ts +16 -0
- package/src/i18n/zh-cn.ts +16 -0
- package/src/index.ts +11 -0
- package/src/lock/index.ts +164 -0
- package/src/log/config.ts +71 -0
- package/src/log/date.ts +19 -0
- package/src/log/file.ts +215 -0
- package/src/log/index.ts +136 -0
- package/src/log/level.ts +29 -0
- package/src/log/log.ts +77 -0
- package/src/log/store.ts +31 -0
- package/src/mongodb/collection.ts +25 -0
- package/src/mongodb/config.ts +69 -0
- package/src/mongodb/doc.ts +12 -0
- package/src/mongodb/exception.ts +8 -0
- package/src/mongodb/index.ts +71 -0
- package/src/mongodb/manager/base.ts +674 -0
- package/src/mongodb/manager/index.ts +80 -0
- package/src/mongodb/manager/tx-strict.ts +153 -0
- package/src/mongodb/manager/tx.ts +34 -0
- package/src/mongodb/migration.ts +66 -0
- package/src/mvc/access-log.ts +33 -0
- package/src/mvc/config.ts +70 -0
- package/src/mvc/exchange.ts +126 -0
- package/src/mvc/handler/index.ts +4 -0
- package/src/mvc/handler/json.ts +96 -0
- package/src/mvc/handler/restful.ts +39 -0
- package/src/mvc/handler/sse.ts +90 -0
- package/src/mvc/handler/upload.ts +54 -0
- package/src/mvc/index.ts +48 -0
- package/src/mvc/interceptor.ts +12 -0
- package/src/mvc/query.ts +36 -0
- package/src/mvc/render/file.ts +148 -0
- package/src/mvc/render/html/html.ts +187 -0
- package/src/mvc/render/html/index.ts +16 -0
- package/src/mvc/render/html/style.ts +1201 -0
- package/src/mvc/render/index.ts +4 -0
- package/src/mvc/render/json.ts +24 -0
- package/src/mvc/render/text.ts +14 -0
- package/src/mvc/router.ts +13 -0
- package/src/mvc/server.ts +315 -0
- package/src/mvc/static/header.ts +86 -0
- package/src/mvc/static/index.ts +3 -0
- package/src/mvc/static/mime-type.ts +81 -0
- package/src/mvc/static/server-cache-config.ts +92 -0
- package/src/mvc/static/server-cache.ts +171 -0
- package/src/mvc/static/static-handler.ts +445 -0
- package/src/mysql/config.ts +130 -0
- package/src/mysql/exception.ts +8 -0
- package/src/mysql/index.ts +88 -0
- package/src/mysql/manager/base.ts +285 -0
- package/src/mysql/manager/index.ts +112 -0
- package/src/mysql/manager/ops/count.ts +30 -0
- package/src/mysql/manager/ops/criteria.ts +412 -0
- package/src/mysql/manager/ops/delete.ts +96 -0
- package/src/mysql/manager/ops/exist.ts +41 -0
- package/src/mysql/manager/ops/find.ts +226 -0
- package/src/mysql/manager/ops/index.ts +11 -0
- package/src/mysql/manager/ops/insert.ts +120 -0
- package/src/mysql/manager/ops/modify.ts +14 -0
- package/src/mysql/manager/ops/paginate.ts +60 -0
- package/src/mysql/manager/ops/query.ts +13 -0
- package/src/mysql/manager/ops/update.ts +294 -0
- package/src/mysql/manager/ops/utils.ts +20 -0
- package/src/mysql/manager/tx-strict.ts +138 -0
- package/src/mysql/manager/tx.ts +31 -0
- package/src/mysql/manager/utils.ts +75 -0
- package/src/mysql/migration.ts +149 -0
- package/src/mysql/table-info.ts +41 -0
- package/src/task/daily.ts +70 -0
- package/src/task/fixed-delay.ts +45 -0
- package/src/task/fixed-rate.ts +49 -0
- package/src/task/index.ts +4 -0
- package/src/task/task.ts +70 -0
- package/src/validation/exception.ts +27 -0
- package/src/validation/index.ts +61 -0
- package/src/validation/validator/array.ts +32 -0
- package/src/validation/validator/enum.ts +25 -0
- package/src/validation/validator/index.ts +11 -0
- package/src/validation/validator/length.ts +42 -0
- package/src/validation/validator/max-length.ts +33 -0
- package/src/validation/validator/max.ts +26 -0
- package/src/validation/validator/min-length.ts +31 -0
- package/src/validation/validator/min.ts +26 -0
- package/src/validation/validator/not-blank.ts +31 -0
- package/src/validation/validator/not-null.ts +19 -0
- package/src/validation/validator/plain-obj.ts +30 -0
- package/src/validation/validator/regexp.ts +32 -0
- package/types/cache/cache.d.ts +52 -52
- package/types/cache/config.d.ts +32 -32
- package/types/cache/index.d.ts +2 -2
- package/types/cache/purge-task.d.ts +11 -11
- package/types/cache/stat.d.ts +26 -26
- package/types/config/convert.d.ts +6 -6
- package/types/config/exception.d.ts +7 -7
- package/types/config/index.d.ts +25 -25
- package/types/http-client/index.d.ts +71 -71
- package/types/i18n/ar.d.ts +2 -2
- package/types/i18n/de.d.ts +2 -2
- package/types/i18n/en-us.d.ts +2 -2
- package/types/i18n/es.d.ts +2 -2
- package/types/i18n/fr.d.ts +2 -2
- package/types/i18n/i18n.d.ts +102 -102
- package/types/i18n/index.d.ts +9 -9
- package/types/i18n/ja.d.ts +2 -2
- package/types/i18n/ko.d.ts +2 -2
- package/types/i18n/msg.d.ts +50 -50
- package/types/i18n/pt.d.ts +2 -2
- package/types/i18n/ru.d.ts +2 -2
- package/types/i18n/tag.d.ts +11 -11
- package/types/i18n/zh-HK.d.ts +2 -2
- package/types/i18n/zh-TW.d.ts +2 -2
- package/types/i18n/zh-cn.d.ts +2 -2
- package/types/index.d.ts +11 -11
- package/types/lock/index.d.ts +64 -64
- package/types/log/config.d.ts +35 -35
- package/types/log/date.d.ts +2 -2
- package/types/log/file.d.ts +13 -13
- package/types/log/index.d.ts +53 -53
- package/types/log/level.d.ts +14 -14
- package/types/log/log.d.ts +40 -40
- package/types/log/store.d.ts +19 -19
- package/types/mongodb/collection.d.ts +25 -25
- package/types/mongodb/config.d.ts +45 -45
- package/types/mongodb/doc.d.ts +11 -11
- package/types/mongodb/exception.d.ts +7 -7
- package/types/mongodb/index.d.ts +29 -29
- package/types/mongodb/manager/base.d.ts +188 -188
- package/types/mongodb/manager/index.d.ts +38 -38
- package/types/mongodb/manager/tx-strict.d.ts +41 -41
- package/types/mongodb/manager/tx.d.ts +21 -21
- package/types/mongodb/migration.d.ts +12 -12
- package/types/mvc/access-log.d.ts +7 -7
- package/types/mvc/config.d.ts +42 -42
- package/types/mvc/exchange.d.ts +72 -72
- package/types/mvc/handler/index.d.ts +4 -3
- package/types/mvc/handler/json.d.ts +44 -44
- package/types/mvc/handler/restful.d.ts +11 -11
- package/types/mvc/handler/sse.d.ts +34 -0
- package/types/mvc/handler/upload.d.ts +36 -36
- package/types/mvc/index.d.ts +22 -22
- package/types/mvc/interceptor.d.ts +11 -11
- package/types/mvc/query.d.ts +13 -13
- package/types/mvc/render/file.d.ts +10 -10
- package/types/mvc/render/html/html.d.ts +98 -98
- package/types/mvc/render/html/index.d.ts +11 -11
- package/types/mvc/render/html/style.d.ts +1201 -1201
- package/types/mvc/render/index.d.ts +4 -4
- package/types/mvc/render/json.d.ts +17 -17
- package/types/mvc/render/text.d.ts +10 -10
- package/types/mvc/router.d.ts +11 -11
- package/types/mvc/server.d.ts +90 -90
- package/types/mvc/static/header.d.ts +27 -27
- package/types/mvc/static/index.d.ts +3 -3
- package/types/mvc/static/mime-type.d.ts +2 -2
- package/types/mvc/static/server-cache-config.d.ts +30 -30
- package/types/mvc/static/server-cache.d.ts +76 -76
- package/types/mvc/static/static-handler.d.ts +77 -77
- package/types/mysql/config.d.ts +90 -90
- package/types/mysql/exception.d.ts +7 -7
- package/types/mysql/index.d.ts +16 -16
- package/types/mysql/manager/base.d.ts +165 -165
- package/types/mysql/manager/index.d.ts +36 -36
- package/types/mysql/manager/ops/count.d.ts +13 -13
- package/types/mysql/manager/ops/criteria.d.ts +134 -134
- package/types/mysql/manager/ops/delete.d.ts +46 -46
- package/types/mysql/manager/ops/exist.d.ts +6 -6
- package/types/mysql/manager/ops/find.d.ts +86 -86
- package/types/mysql/manager/ops/index.d.ts +10 -10
- package/types/mysql/manager/ops/insert.d.ts +18 -18
- package/types/mysql/manager/ops/modify.d.ts +3 -3
- package/types/mysql/manager/ops/paginate.d.ts +36 -36
- package/types/mysql/manager/ops/query.d.ts +3 -3
- package/types/mysql/manager/ops/update.d.ts +76 -76
- package/types/mysql/manager/ops/utils.d.ts +5 -5
- package/types/mysql/manager/tx-strict.d.ts +36 -36
- package/types/mysql/manager/tx.d.ts +15 -15
- package/types/mysql/manager/utils.d.ts +17 -17
- package/types/mysql/migration.d.ts +8 -8
- package/types/mysql/table-info.d.ts +36 -36
- package/types/task/daily.d.ts +16 -16
- package/types/task/fixed-delay.d.ts +9 -9
- package/types/task/fixed-rate.d.ts +9 -9
- package/types/task/index.d.ts +4 -4
- package/types/task/task.d.ts +34 -34
- package/types/validation/exception.d.ts +38 -38
- package/types/validation/index.d.ts +32 -32
- package/types/validation/validator/array.d.ts +5 -5
- package/types/validation/validator/enum.d.ts +8 -8
- package/types/validation/validator/index.d.ts +11 -11
- package/types/validation/validator/length.d.ts +10 -10
- package/types/validation/validator/max-length.d.ts +8 -8
- package/types/validation/validator/max.d.ts +7 -7
- package/types/validation/validator/min-length.d.ts +6 -6
- package/types/validation/validator/min.d.ts +7 -7
- package/types/validation/validator/not-blank.d.ts +7 -7
- package/types/validation/validator/not-null.d.ts +6 -6
- package/types/validation/validator/plain-obj.d.ts +7 -7
- package/types/validation/validator/regexp.d.ts +8 -8
|
@@ -1,36 +1,36 @@
|
|
|
1
|
-
import { PoolConnection } from 'mysql2';
|
|
2
|
-
import { Table } from '../../table-info';
|
|
3
|
-
import { MixCriteria } from './criteria';
|
|
4
|
-
import { MysqlConfig } from '../../config';
|
|
5
|
-
export interface MysqlPaginateOpts<T> {
|
|
6
|
-
/**
|
|
7
|
-
* 表
|
|
8
|
-
*/
|
|
9
|
-
table: Table<T>;
|
|
10
|
-
/**
|
|
11
|
-
* 查询条件
|
|
12
|
-
* @param criteria
|
|
13
|
-
* @returns
|
|
14
|
-
*/
|
|
15
|
-
criteria?: MixCriteria<T>;
|
|
16
|
-
/**
|
|
17
|
-
* 而码,默认1
|
|
18
|
-
*/
|
|
19
|
-
pn?: number;
|
|
20
|
-
/**
|
|
21
|
-
* 每页的数据量大小,默认 20, 必须在 1-1000 之间
|
|
22
|
-
*/
|
|
23
|
-
pz?: number;
|
|
24
|
-
/**
|
|
25
|
-
* 排序规则,按先后顺序放入,每个规则是一个元组,第一个元素是字段名称,第二个元素是顺序
|
|
26
|
-
*/
|
|
27
|
-
orderBy?: Array<[keyof T, 'asc' | 'desc']>;
|
|
28
|
-
}
|
|
29
|
-
/**
|
|
30
|
-
* mysql 分页查询结果
|
|
31
|
-
*/
|
|
32
|
-
export interface MysqlPage<T> {
|
|
33
|
-
total: number;
|
|
34
|
-
list: T[];
|
|
35
|
-
}
|
|
36
|
-
export declare function paginate<T>(config: MysqlConfig, conn: PoolConnection, opts: MysqlPaginateOpts<T>): Promise<MysqlPage<T>>;
|
|
1
|
+
import { PoolConnection } from 'mysql2';
|
|
2
|
+
import { Table } from '../../table-info';
|
|
3
|
+
import { MixCriteria } from './criteria';
|
|
4
|
+
import { MysqlConfig } from '../../config';
|
|
5
|
+
export interface MysqlPaginateOpts<T> {
|
|
6
|
+
/**
|
|
7
|
+
* 表
|
|
8
|
+
*/
|
|
9
|
+
table: Table<T>;
|
|
10
|
+
/**
|
|
11
|
+
* 查询条件
|
|
12
|
+
* @param criteria
|
|
13
|
+
* @returns
|
|
14
|
+
*/
|
|
15
|
+
criteria?: MixCriteria<T>;
|
|
16
|
+
/**
|
|
17
|
+
* 而码,默认1
|
|
18
|
+
*/
|
|
19
|
+
pn?: number;
|
|
20
|
+
/**
|
|
21
|
+
* 每页的数据量大小,默认 20, 必须在 1-1000 之间
|
|
22
|
+
*/
|
|
23
|
+
pz?: number;
|
|
24
|
+
/**
|
|
25
|
+
* 排序规则,按先后顺序放入,每个规则是一个元组,第一个元素是字段名称,第二个元素是顺序
|
|
26
|
+
*/
|
|
27
|
+
orderBy?: Array<[keyof T, 'asc' | 'desc']>;
|
|
28
|
+
}
|
|
29
|
+
/**
|
|
30
|
+
* mysql 分页查询结果
|
|
31
|
+
*/
|
|
32
|
+
export interface MysqlPage<T> {
|
|
33
|
+
total: number;
|
|
34
|
+
list: T[];
|
|
35
|
+
}
|
|
36
|
+
export declare function paginate<T>(config: MysqlConfig, conn: PoolConnection, opts: MysqlPaginateOpts<T>): Promise<MysqlPage<T>>;
|
|
@@ -1,3 +1,3 @@
|
|
|
1
|
-
import { PoolConnection } from 'mysql2';
|
|
2
|
-
import { MysqlConfig } from '../../config';
|
|
3
|
-
export declare function query<T>(config: MysqlConfig, connection: PoolConnection, sql: string, values?: any[]): Promise<T[]>;
|
|
1
|
+
import { PoolConnection } from 'mysql2';
|
|
2
|
+
import { MysqlConfig } from '../../config';
|
|
3
|
+
export declare function query<T>(config: MysqlConfig, connection: PoolConnection, sql: string, values?: any[]): Promise<T[]>;
|
|
@@ -1,76 +1,76 @@
|
|
|
1
|
-
import { PoolConnection } from 'mysql2';
|
|
2
|
-
import { Table } from '../../table-info';
|
|
3
|
-
import { MixCriteria } from './criteria';
|
|
4
|
-
import { MysqlConfig } from '../../config';
|
|
5
|
-
/**
|
|
6
|
-
* 更新
|
|
7
|
-
* @param config
|
|
8
|
-
* @param connection
|
|
9
|
-
* @param mapping
|
|
10
|
-
* @param data
|
|
11
|
-
* @returns
|
|
12
|
-
*/
|
|
13
|
-
export declare function update<T>(config: MysqlConfig, connection: PoolConnection, table: Table<T>, data: T): Promise<T>;
|
|
14
|
-
/**
|
|
15
|
-
* 更新器
|
|
16
|
-
*/
|
|
17
|
-
export type Updater<T> = Partial<{
|
|
18
|
-
[key in keyof T]: T[key] | undefined | ['setNull'] | ['inc', number]
|
|
19
|
-
/**
|
|
20
|
-
* 设置一个字段的值,和直接赋值是一样的,作用是解决一些特殊的情况的冲突
|
|
21
|
-
* 比如将 json 字段的值设置为 ['setNull'] ,这就会被认为是要置空,
|
|
22
|
-
* 使用 ['set',['setNull']] 就可以解决这个问题
|
|
23
|
-
*/
|
|
24
|
-
| ['set', T[key]];
|
|
25
|
-
}>;
|
|
26
|
-
/**
|
|
27
|
-
* 部分更新
|
|
28
|
-
* @param connection
|
|
29
|
-
* @param mapping
|
|
30
|
-
* @param type
|
|
31
|
-
* @param data
|
|
32
|
-
*/
|
|
33
|
-
export declare function partialUpdate<T>(config: MysqlConfig, connection: PoolConnection, table: Table<T>, data: Updater<T>): Promise<boolean>;
|
|
34
|
-
/**
|
|
35
|
-
* 更新指定的一条记录
|
|
36
|
-
* @param config
|
|
37
|
-
* @param connection
|
|
38
|
-
* @param table
|
|
39
|
-
* @param query
|
|
40
|
-
* @param data
|
|
41
|
-
*/
|
|
42
|
-
export declare function updateOne<T>(config: MysqlConfig, connection: PoolConnection, table: Table<T>, query: MixCriteria<T>, updater: Updater<T>): Promise<boolean>;
|
|
43
|
-
/**
|
|
44
|
-
* 更新选项
|
|
45
|
-
*/
|
|
46
|
-
export interface UpdateOpts<T> {
|
|
47
|
-
/**
|
|
48
|
-
* 表
|
|
49
|
-
*/
|
|
50
|
-
table: Table<T>;
|
|
51
|
-
/**
|
|
52
|
-
* 查询条件
|
|
53
|
-
*/
|
|
54
|
-
query: MixCriteria<T>;
|
|
55
|
-
/**
|
|
56
|
-
* 限制数量
|
|
57
|
-
*/
|
|
58
|
-
limit?: number;
|
|
59
|
-
/**
|
|
60
|
-
* 排序规则,按先后顺序放入,每个规则是一个元组,第一个元素是字段名称,第二个元素是顺序
|
|
61
|
-
*/
|
|
62
|
-
orderBy?: Array<[keyof T, 'asc' | 'desc']>;
|
|
63
|
-
/**
|
|
64
|
-
* 更新设置
|
|
65
|
-
*/
|
|
66
|
-
updater: Updater<T>;
|
|
67
|
-
}
|
|
68
|
-
/**
|
|
69
|
-
* 更新所有匹配条件的记录
|
|
70
|
-
* @param config
|
|
71
|
-
* @param connection 连接
|
|
72
|
-
* @param table 表
|
|
73
|
-
* @param query 查询条件
|
|
74
|
-
* @param updater 更新操作,支持置空和递增(需要使用元组)
|
|
75
|
-
*/
|
|
76
|
-
export declare function updateMany<T>(config: MysqlConfig, connection: PoolConnection, opts: UpdateOpts<T>): Promise<number>;
|
|
1
|
+
import { PoolConnection } from 'mysql2';
|
|
2
|
+
import { Table } from '../../table-info';
|
|
3
|
+
import { MixCriteria } from './criteria';
|
|
4
|
+
import { MysqlConfig } from '../../config';
|
|
5
|
+
/**
|
|
6
|
+
* 更新
|
|
7
|
+
* @param config
|
|
8
|
+
* @param connection
|
|
9
|
+
* @param mapping
|
|
10
|
+
* @param data
|
|
11
|
+
* @returns
|
|
12
|
+
*/
|
|
13
|
+
export declare function update<T>(config: MysqlConfig, connection: PoolConnection, table: Table<T>, data: T): Promise<T>;
|
|
14
|
+
/**
|
|
15
|
+
* 更新器
|
|
16
|
+
*/
|
|
17
|
+
export type Updater<T> = Partial<{
|
|
18
|
+
[key in keyof T]: T[key] | undefined | ['setNull'] | ['inc', number]
|
|
19
|
+
/**
|
|
20
|
+
* 设置一个字段的值,和直接赋值是一样的,作用是解决一些特殊的情况的冲突
|
|
21
|
+
* 比如将 json 字段的值设置为 ['setNull'] ,这就会被认为是要置空,
|
|
22
|
+
* 使用 ['set',['setNull']] 就可以解决这个问题
|
|
23
|
+
*/
|
|
24
|
+
| ['set', T[key]];
|
|
25
|
+
}>;
|
|
26
|
+
/**
|
|
27
|
+
* 部分更新
|
|
28
|
+
* @param connection
|
|
29
|
+
* @param mapping
|
|
30
|
+
* @param type
|
|
31
|
+
* @param data
|
|
32
|
+
*/
|
|
33
|
+
export declare function partialUpdate<T>(config: MysqlConfig, connection: PoolConnection, table: Table<T>, data: Updater<T>): Promise<boolean>;
|
|
34
|
+
/**
|
|
35
|
+
* 更新指定的一条记录
|
|
36
|
+
* @param config
|
|
37
|
+
* @param connection
|
|
38
|
+
* @param table
|
|
39
|
+
* @param query
|
|
40
|
+
* @param data
|
|
41
|
+
*/
|
|
42
|
+
export declare function updateOne<T>(config: MysqlConfig, connection: PoolConnection, table: Table<T>, query: MixCriteria<T>, updater: Updater<T>): Promise<boolean>;
|
|
43
|
+
/**
|
|
44
|
+
* 更新选项
|
|
45
|
+
*/
|
|
46
|
+
export interface UpdateOpts<T> {
|
|
47
|
+
/**
|
|
48
|
+
* 表
|
|
49
|
+
*/
|
|
50
|
+
table: Table<T>;
|
|
51
|
+
/**
|
|
52
|
+
* 查询条件
|
|
53
|
+
*/
|
|
54
|
+
query: MixCriteria<T>;
|
|
55
|
+
/**
|
|
56
|
+
* 限制数量
|
|
57
|
+
*/
|
|
58
|
+
limit?: number;
|
|
59
|
+
/**
|
|
60
|
+
* 排序规则,按先后顺序放入,每个规则是一个元组,第一个元素是字段名称,第二个元素是顺序
|
|
61
|
+
*/
|
|
62
|
+
orderBy?: Array<[keyof T, 'asc' | 'desc']>;
|
|
63
|
+
/**
|
|
64
|
+
* 更新设置
|
|
65
|
+
*/
|
|
66
|
+
updater: Updater<T>;
|
|
67
|
+
}
|
|
68
|
+
/**
|
|
69
|
+
* 更新所有匹配条件的记录
|
|
70
|
+
* @param config
|
|
71
|
+
* @param connection 连接
|
|
72
|
+
* @param table 表
|
|
73
|
+
* @param query 查询条件
|
|
74
|
+
* @param updater 更新操作,支持置空和递增(需要使用元组)
|
|
75
|
+
*/
|
|
76
|
+
export declare function updateMany<T>(config: MysqlConfig, connection: PoolConnection, opts: UpdateOpts<T>): Promise<number>;
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* 处理列的值,对特殊类型 json 进行加工处理后返回
|
|
3
|
-
* @param value
|
|
4
|
-
*/
|
|
5
|
-
export declare function processColumnValue(value: any): any;
|
|
1
|
+
/**
|
|
2
|
+
* 处理列的值,对特殊类型 json 进行加工处理后返回
|
|
3
|
+
* @param value
|
|
4
|
+
*/
|
|
5
|
+
export declare function processColumnValue(value: any): any;
|
|
@@ -1,36 +1,36 @@
|
|
|
1
|
-
import { PoolConnection } from 'mysql2';
|
|
2
|
-
import { MysqlConfig } from '../config';
|
|
3
|
-
import { MysqlTxSession } from './tx';
|
|
4
|
-
import { Table } from '../table-info';
|
|
5
|
-
import { DeleteManyOpts, FindOpts, FindSelectOpts, MixCriteria, MysqlPage, MysqlPaginateOpts, UpdateOpts, Updater } from './ops';
|
|
6
|
-
/**
|
|
7
|
-
* 严格 mysql 事务会话,会禁用一些操作.
|
|
8
|
-
*/
|
|
9
|
-
export declare class MysqlStrictTxSession extends MysqlTxSession {
|
|
10
|
-
#private;
|
|
11
|
-
private config;
|
|
12
|
-
constructor(config: MysqlConfig, conn: PoolConnection);
|
|
13
|
-
findById<T>(table: Table<T>, id: string | number): Promise<T | null>;
|
|
14
|
-
findByIdIn<T>(table: Table<T>, ids: (string | number)[]): Promise<T[]>;
|
|
15
|
-
existsBy<T>(table: Table<T>, criteria?: MixCriteria<T> | undefined): Promise<boolean>;
|
|
16
|
-
existsById<T>(table: Table<T>, id: string | number): Promise<boolean>;
|
|
17
|
-
deleteById<T>(table: Table<T>, id: string | number): Promise<boolean>;
|
|
18
|
-
deleteOne<T>(table: Table<T>, criteria: Partial<T>): Promise<boolean>;
|
|
19
|
-
deleteMany<T>(opts: DeleteManyOpts<T>): Promise<number>;
|
|
20
|
-
findAll<T>(table: Table<T>): Promise<T[]>;
|
|
21
|
-
findFirst<T>(table: Table<T>, criteria?: MixCriteria<T> | undefined): Promise<T | null>;
|
|
22
|
-
insert<T>(table: Table<T>, data: T): Promise<T>;
|
|
23
|
-
insertMany<T>(table: Table<T>, list: T[]): Promise<void>;
|
|
24
|
-
update<T>(table: Table<T>, data: T): Promise<T>;
|
|
25
|
-
updateMany<T>(opts: UpdateOpts<T>): Promise<number>;
|
|
26
|
-
updateOne<T>(table: Table<T>, query: Partial<T>, updater: Partial<{
|
|
27
|
-
[key in keyof T]: ['setNull'] | ['inc', number] | T[key] | undefined;
|
|
28
|
-
}>): Promise<boolean>;
|
|
29
|
-
partialUpdate<T>(table: Table<T>, data: Updater<T>): Promise<boolean>;
|
|
30
|
-
find<T>(opts: FindOpts<T>): Promise<T[]>;
|
|
31
|
-
findSelect<T, K extends keyof T>(opts: FindSelectOpts<T, K>): Promise<Pick<T, K>[]>;
|
|
32
|
-
count<T>(table: Table<T>, criteria?: MixCriteria<T> | undefined): Promise<number>;
|
|
33
|
-
paginate<T>(opts: MysqlPaginateOpts<T>): Promise<MysqlPage<T>>;
|
|
34
|
-
query<T>(sql: string, values?: any[] | undefined): Promise<T[]>;
|
|
35
|
-
modify(sql: string, values?: any[] | undefined): Promise<number>;
|
|
36
|
-
}
|
|
1
|
+
import { PoolConnection } from 'mysql2';
|
|
2
|
+
import { MysqlConfig } from '../config';
|
|
3
|
+
import { MysqlTxSession } from './tx';
|
|
4
|
+
import { Table } from '../table-info';
|
|
5
|
+
import { DeleteManyOpts, FindOpts, FindSelectOpts, MixCriteria, MysqlPage, MysqlPaginateOpts, UpdateOpts, Updater } from './ops';
|
|
6
|
+
/**
|
|
7
|
+
* 严格 mysql 事务会话,会禁用一些操作.
|
|
8
|
+
*/
|
|
9
|
+
export declare class MysqlStrictTxSession extends MysqlTxSession {
|
|
10
|
+
#private;
|
|
11
|
+
private config;
|
|
12
|
+
constructor(config: MysqlConfig, conn: PoolConnection);
|
|
13
|
+
findById<T>(table: Table<T>, id: string | number): Promise<T | null>;
|
|
14
|
+
findByIdIn<T>(table: Table<T>, ids: (string | number)[]): Promise<T[]>;
|
|
15
|
+
existsBy<T>(table: Table<T>, criteria?: MixCriteria<T> | undefined): Promise<boolean>;
|
|
16
|
+
existsById<T>(table: Table<T>, id: string | number): Promise<boolean>;
|
|
17
|
+
deleteById<T>(table: Table<T>, id: string | number): Promise<boolean>;
|
|
18
|
+
deleteOne<T>(table: Table<T>, criteria: Partial<T>): Promise<boolean>;
|
|
19
|
+
deleteMany<T>(opts: DeleteManyOpts<T>): Promise<number>;
|
|
20
|
+
findAll<T>(table: Table<T>): Promise<T[]>;
|
|
21
|
+
findFirst<T>(table: Table<T>, criteria?: MixCriteria<T> | undefined): Promise<T | null>;
|
|
22
|
+
insert<T>(table: Table<T>, data: T): Promise<T>;
|
|
23
|
+
insertMany<T>(table: Table<T>, list: T[]): Promise<void>;
|
|
24
|
+
update<T>(table: Table<T>, data: T): Promise<T>;
|
|
25
|
+
updateMany<T>(opts: UpdateOpts<T>): Promise<number>;
|
|
26
|
+
updateOne<T>(table: Table<T>, query: Partial<T>, updater: Partial<{
|
|
27
|
+
[key in keyof T]: ['setNull'] | ['inc', number] | T[key] | undefined;
|
|
28
|
+
}>): Promise<boolean>;
|
|
29
|
+
partialUpdate<T>(table: Table<T>, data: Updater<T>): Promise<boolean>;
|
|
30
|
+
find<T>(opts: FindOpts<T>): Promise<T[]>;
|
|
31
|
+
findSelect<T, K extends keyof T>(opts: FindSelectOpts<T, K>): Promise<Pick<T, K>[]>;
|
|
32
|
+
count<T>(table: Table<T>, criteria?: MixCriteria<T> | undefined): Promise<number>;
|
|
33
|
+
paginate<T>(opts: MysqlPaginateOpts<T>): Promise<MysqlPage<T>>;
|
|
34
|
+
query<T>(sql: string, values?: any[] | undefined): Promise<T[]>;
|
|
35
|
+
modify(sql: string, values?: any[] | undefined): Promise<number>;
|
|
36
|
+
}
|
|
@@ -1,15 +1,15 @@
|
|
|
1
|
-
import { PoolConnection } from 'mysql2';
|
|
2
|
-
import { BaseMysqlManager } from './base';
|
|
3
|
-
import { MysqlConfig } from '../config';
|
|
4
|
-
/**
|
|
5
|
-
* mysql 事务会话.
|
|
6
|
-
*/
|
|
7
|
-
export declare class MysqlTxSession extends BaseMysqlManager {
|
|
8
|
-
#private;
|
|
9
|
-
constructor(config: MysqlConfig, conn: PoolConnection);
|
|
10
|
-
protected queryWithConnection<T>(queryFn: (conn: PoolConnection) => Promise<T>): Promise<T>;
|
|
11
|
-
/**
|
|
12
|
-
* 中止,被中止后的会话不能再进行任何操作
|
|
13
|
-
*/
|
|
14
|
-
abort(): void;
|
|
15
|
-
}
|
|
1
|
+
import { PoolConnection } from 'mysql2';
|
|
2
|
+
import { BaseMysqlManager } from './base';
|
|
3
|
+
import { MysqlConfig } from '../config';
|
|
4
|
+
/**
|
|
5
|
+
* mysql 事务会话.
|
|
6
|
+
*/
|
|
7
|
+
export declare class MysqlTxSession extends BaseMysqlManager {
|
|
8
|
+
#private;
|
|
9
|
+
constructor(config: MysqlConfig, conn: PoolConnection);
|
|
10
|
+
protected queryWithConnection<T>(queryFn: (conn: PoolConnection) => Promise<T>): Promise<T>;
|
|
11
|
+
/**
|
|
12
|
+
* 中止,被中止后的会话不能再进行任何操作
|
|
13
|
+
*/
|
|
14
|
+
abort(): void;
|
|
15
|
+
}
|
|
@@ -1,17 +1,17 @@
|
|
|
1
|
-
import { Connection, OkPacket, Pool, PoolConnection, ResultSetHeader, RowDataPacket } from 'mysql2';
|
|
2
|
-
import { MysqlConfig } from '../config';
|
|
3
|
-
/**
|
|
4
|
-
* 查询,适用于各种 sql 的执行
|
|
5
|
-
* @param config
|
|
6
|
-
* @param conn
|
|
7
|
-
* @param sql
|
|
8
|
-
* @param values
|
|
9
|
-
* @returns
|
|
10
|
-
*/
|
|
11
|
-
export declare function promiseQuery(config: MysqlConfig, conn: Connection, sql: string, values?: any[]): Promise<OkPacket | ResultSetHeader | RowDataPacket[] | [RowDataPacket[], ResultSetHeader] | ResultSetHeader[] | RowDataPacket[][] | OkPacket[]>;
|
|
12
|
-
/**
|
|
13
|
-
* 获取连接
|
|
14
|
-
* @param pool
|
|
15
|
-
* @returns
|
|
16
|
-
*/
|
|
17
|
-
export declare function promiseGetConnection(pool: Pool): Promise<PoolConnection>;
|
|
1
|
+
import { Connection, OkPacket, Pool, PoolConnection, ResultSetHeader, RowDataPacket } from 'mysql2';
|
|
2
|
+
import { MysqlConfig } from '../config';
|
|
3
|
+
/**
|
|
4
|
+
* 查询,适用于各种 sql 的执行
|
|
5
|
+
* @param config
|
|
6
|
+
* @param conn
|
|
7
|
+
* @param sql
|
|
8
|
+
* @param values
|
|
9
|
+
* @returns
|
|
10
|
+
*/
|
|
11
|
+
export declare function promiseQuery(config: MysqlConfig, conn: Connection, sql: string, values?: any[]): Promise<OkPacket | ResultSetHeader | RowDataPacket[] | [RowDataPacket[], ResultSetHeader] | ResultSetHeader[] | RowDataPacket[][] | OkPacket[]>;
|
|
12
|
+
/**
|
|
13
|
+
* 获取连接
|
|
14
|
+
* @param pool
|
|
15
|
+
* @returns
|
|
16
|
+
*/
|
|
17
|
+
export declare function promiseGetConnection(pool: Pool): Promise<PoolConnection>;
|
|
@@ -1,8 +1,8 @@
|
|
|
1
|
-
import { Connection } from 'mysql2';
|
|
2
|
-
import { MysqlConfig } from './config';
|
|
3
|
-
/**
|
|
4
|
-
* 迁移.
|
|
5
|
-
* @param config
|
|
6
|
-
* @param conn
|
|
7
|
-
*/
|
|
8
|
-
export declare function migrate(config: MysqlConfig, conn: Connection): Promise<void>;
|
|
1
|
+
import { Connection } from 'mysql2';
|
|
2
|
+
import { MysqlConfig } from './config';
|
|
3
|
+
/**
|
|
4
|
+
* 迁移.
|
|
5
|
+
* @param config
|
|
6
|
+
* @param conn
|
|
7
|
+
*/
|
|
8
|
+
export declare function migrate(config: MysqlConfig, conn: Connection): Promise<void>;
|
|
@@ -1,36 +1,36 @@
|
|
|
1
|
-
import { ValidationOpts } from '../validation';
|
|
2
|
-
/**
|
|
3
|
-
* 表信息. 表的字段分为三个部分:主键、普通列、时间列,分别对应的属性是:id、columns
|
|
4
|
-
* 和 createDate 还有 updatedDate,这三部分配置的字段名称不允许有重叠,否则会产生错误.
|
|
5
|
-
*/
|
|
6
|
-
export interface Table<T> {
|
|
7
|
-
/**
|
|
8
|
-
* 表名.
|
|
9
|
-
*/
|
|
10
|
-
tableName: string;
|
|
11
|
-
/**
|
|
12
|
-
* id 字段名称.
|
|
13
|
-
*/
|
|
14
|
-
id: keyof T;
|
|
15
|
-
/**
|
|
16
|
-
* 列字段名称.只有配置了名称的字段才会参与数据库的查询与更新,没有配置的其它字段可作其它用途。
|
|
17
|
-
* 注意:columns 配置的字段不能和 id 或更新时间和创建时间重叠,否则在更新时产生错误,将数据改错。
|
|
18
|
-
* 程序本身是不会做检查的,编写的时候必须要注意。
|
|
19
|
-
*/
|
|
20
|
-
columns: Array<keyof T>;
|
|
21
|
-
/**
|
|
22
|
-
* 创建时间字段信息.
|
|
23
|
-
*/
|
|
24
|
-
createdDate?: {
|
|
25
|
-
column: keyof T;
|
|
26
|
-
type: 'number' | 'date';
|
|
27
|
-
};
|
|
28
|
-
/**
|
|
29
|
-
* 更新时间字段信息.
|
|
30
|
-
*/
|
|
31
|
-
updatedDate?: {
|
|
32
|
-
column: keyof T;
|
|
33
|
-
type: 'number' | 'date';
|
|
34
|
-
};
|
|
35
|
-
}
|
|
36
|
-
export declare const tableValidation: ValidationOpts<Table<any>>;
|
|
1
|
+
import { ValidationOpts } from '../validation';
|
|
2
|
+
/**
|
|
3
|
+
* 表信息. 表的字段分为三个部分:主键、普通列、时间列,分别对应的属性是:id、columns
|
|
4
|
+
* 和 createDate 还有 updatedDate,这三部分配置的字段名称不允许有重叠,否则会产生错误.
|
|
5
|
+
*/
|
|
6
|
+
export interface Table<T> {
|
|
7
|
+
/**
|
|
8
|
+
* 表名.
|
|
9
|
+
*/
|
|
10
|
+
tableName: string;
|
|
11
|
+
/**
|
|
12
|
+
* id 字段名称.
|
|
13
|
+
*/
|
|
14
|
+
id: keyof T;
|
|
15
|
+
/**
|
|
16
|
+
* 列字段名称.只有配置了名称的字段才会参与数据库的查询与更新,没有配置的其它字段可作其它用途。
|
|
17
|
+
* 注意:columns 配置的字段不能和 id 或更新时间和创建时间重叠,否则在更新时产生错误,将数据改错。
|
|
18
|
+
* 程序本身是不会做检查的,编写的时候必须要注意。
|
|
19
|
+
*/
|
|
20
|
+
columns: Array<keyof T>;
|
|
21
|
+
/**
|
|
22
|
+
* 创建时间字段信息.
|
|
23
|
+
*/
|
|
24
|
+
createdDate?: {
|
|
25
|
+
column: keyof T;
|
|
26
|
+
type: 'number' | 'date';
|
|
27
|
+
};
|
|
28
|
+
/**
|
|
29
|
+
* 更新时间字段信息.
|
|
30
|
+
*/
|
|
31
|
+
updatedDate?: {
|
|
32
|
+
column: keyof T;
|
|
33
|
+
type: 'number' | 'date';
|
|
34
|
+
};
|
|
35
|
+
}
|
|
36
|
+
export declare const tableValidation: ValidationOpts<Table<any>>;
|
package/types/task/daily.d.ts
CHANGED
|
@@ -1,16 +1,16 @@
|
|
|
1
|
-
import { Task, TaskController } from './task';
|
|
2
|
-
/**
|
|
3
|
-
* 每日任务.
|
|
4
|
-
* @param hours 时
|
|
5
|
-
* @param minutes 分
|
|
6
|
-
* @param task 要执行的任务
|
|
7
|
-
* @param timeout 任务超时时间,单位毫秒
|
|
8
|
-
* @returns
|
|
9
|
-
*/
|
|
10
|
-
export declare function scheduleDailyTask(hours: number, minutes: number, task: Task, timeout?: number): TaskController;
|
|
11
|
-
/**
|
|
12
|
-
* 计算到下次指定时间点的延迟
|
|
13
|
-
* @param hours
|
|
14
|
-
* @param minutes
|
|
15
|
-
*/
|
|
16
|
-
export declare function dailyTaskDelay(hours: number, minutes: number): number;
|
|
1
|
+
import { Task, TaskController } from './task';
|
|
2
|
+
/**
|
|
3
|
+
* 每日任务.
|
|
4
|
+
* @param hours 时
|
|
5
|
+
* @param minutes 分
|
|
6
|
+
* @param task 要执行的任务
|
|
7
|
+
* @param timeout 任务超时时间,单位毫秒
|
|
8
|
+
* @returns
|
|
9
|
+
*/
|
|
10
|
+
export declare function scheduleDailyTask(hours: number, minutes: number, task: Task, timeout?: number): TaskController;
|
|
11
|
+
/**
|
|
12
|
+
* 计算到下次指定时间点的延迟
|
|
13
|
+
* @param hours
|
|
14
|
+
* @param minutes
|
|
15
|
+
*/
|
|
16
|
+
export declare function dailyTaskDelay(hours: number, minutes: number): number;
|
|
@@ -1,9 +1,9 @@
|
|
|
1
|
-
import { Task, TaskController } from './task';
|
|
2
|
-
/**
|
|
3
|
-
* 固定延迟执行任务
|
|
4
|
-
* @param initialDelay 第一次执行延迟的时间,单位秒
|
|
5
|
-
* @param delay 每次的延迟时间,单位秒
|
|
6
|
-
* @param task 任务
|
|
7
|
-
* @param timeout 任务超时时间,单位毫秒
|
|
8
|
-
*/
|
|
9
|
-
export declare function scheduleWithFixedDelay(initialDelay: number, delay: number, task: Task, timeout?: number): TaskController;
|
|
1
|
+
import { Task, TaskController } from './task';
|
|
2
|
+
/**
|
|
3
|
+
* 固定延迟执行任务
|
|
4
|
+
* @param initialDelay 第一次执行延迟的时间,单位秒
|
|
5
|
+
* @param delay 每次的延迟时间,单位秒
|
|
6
|
+
* @param task 任务
|
|
7
|
+
* @param timeout 任务超时时间,单位毫秒
|
|
8
|
+
*/
|
|
9
|
+
export declare function scheduleWithFixedDelay(initialDelay: number, delay: number, task: Task, timeout?: number): TaskController;
|
|
@@ -1,9 +1,9 @@
|
|
|
1
|
-
import { Task, TaskController } from './task';
|
|
2
|
-
/**
|
|
3
|
-
* 固定延迟执行任务
|
|
4
|
-
* @param initialDelay 第一次执行延迟的时间,单位秒
|
|
5
|
-
* @param period 每次的延迟时间,单位秒
|
|
6
|
-
* @param task 任务
|
|
7
|
-
* @param timeout 任务超时时间,单位毫秒
|
|
8
|
-
*/
|
|
9
|
-
export declare function scheduleWithFixedRate(initialDelay: number, period: number, task: Task, timeout?: number): TaskController;
|
|
1
|
+
import { Task, TaskController } from './task';
|
|
2
|
+
/**
|
|
3
|
+
* 固定延迟执行任务
|
|
4
|
+
* @param initialDelay 第一次执行延迟的时间,单位秒
|
|
5
|
+
* @param period 每次的延迟时间,单位秒
|
|
6
|
+
* @param task 任务
|
|
7
|
+
* @param timeout 任务超时时间,单位毫秒
|
|
8
|
+
*/
|
|
9
|
+
export declare function scheduleWithFixedRate(initialDelay: number, period: number, task: Task, timeout?: number): TaskController;
|
package/types/task/index.d.ts
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
export { Task, TaskController } from './task';
|
|
2
|
-
export * from './fixed-delay';
|
|
3
|
-
export * from './fixed-rate';
|
|
4
|
-
export * from './daily';
|
|
1
|
+
export { Task, TaskController } from './task';
|
|
2
|
+
export * from './fixed-delay';
|
|
3
|
+
export * from './fixed-rate';
|
|
4
|
+
export * from './daily';
|
package/types/task/task.d.ts
CHANGED
|
@@ -1,34 +1,34 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* 任务.
|
|
3
|
-
*/
|
|
4
|
-
export interface Task {
|
|
5
|
-
/**
|
|
6
|
-
* 任务的名称,用于跟踪任务的执行情况,定位错误.
|
|
7
|
-
* 当任务执行时间过长或任务失败时,相关的错误提示信息会显示名称,以便于排查.
|
|
8
|
-
*/
|
|
9
|
-
name: string;
|
|
10
|
-
/**
|
|
11
|
-
* 任务运行.
|
|
12
|
-
* @returns
|
|
13
|
-
*/
|
|
14
|
-
run: () => Promise<void>;
|
|
15
|
-
}
|
|
16
|
-
/**
|
|
17
|
-
* 任务控制器
|
|
18
|
-
*/
|
|
19
|
-
export declare class TaskController {
|
|
20
|
-
#private;
|
|
21
|
-
isStopped(): boolean;
|
|
22
|
-
stop(): void;
|
|
23
|
-
}
|
|
24
|
-
/**
|
|
25
|
-
* 任务执行,封装任务执行过程中的一些通用信息输出和异常控制.
|
|
26
|
-
* @param task
|
|
27
|
-
* @param timeout 任务超时时间,单位毫秒
|
|
28
|
-
* @returns
|
|
29
|
-
*/
|
|
30
|
-
export declare function execTask(task: Task, timeout?: number): Promise<{
|
|
31
|
-
start: number;
|
|
32
|
-
cost: number;
|
|
33
|
-
end: number;
|
|
34
|
-
}>;
|
|
1
|
+
/**
|
|
2
|
+
* 任务.
|
|
3
|
+
*/
|
|
4
|
+
export interface Task {
|
|
5
|
+
/**
|
|
6
|
+
* 任务的名称,用于跟踪任务的执行情况,定位错误.
|
|
7
|
+
* 当任务执行时间过长或任务失败时,相关的错误提示信息会显示名称,以便于排查.
|
|
8
|
+
*/
|
|
9
|
+
name: string;
|
|
10
|
+
/**
|
|
11
|
+
* 任务运行.
|
|
12
|
+
* @returns
|
|
13
|
+
*/
|
|
14
|
+
run: () => Promise<void>;
|
|
15
|
+
}
|
|
16
|
+
/**
|
|
17
|
+
* 任务控制器
|
|
18
|
+
*/
|
|
19
|
+
export declare class TaskController {
|
|
20
|
+
#private;
|
|
21
|
+
isStopped(): boolean;
|
|
22
|
+
stop(): void;
|
|
23
|
+
}
|
|
24
|
+
/**
|
|
25
|
+
* 任务执行,封装任务执行过程中的一些通用信息输出和异常控制.
|
|
26
|
+
* @param task
|
|
27
|
+
* @param timeout 任务超时时间,单位毫秒
|
|
28
|
+
* @returns
|
|
29
|
+
*/
|
|
30
|
+
export declare function execTask(task: Task, timeout?: number): Promise<{
|
|
31
|
+
start: number;
|
|
32
|
+
cost: number;
|
|
33
|
+
end: number;
|
|
34
|
+
}>;
|