@byted-apaas/server-sdk-node 0.0.2-beta.1
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/LICENSE.md +0 -0
- package/README.md +1 -0
- package/application/application.d.ts +27 -0
- package/application/application.js +3 -0
- package/application/application.js.map +1 -0
- package/application/application.ts +40 -0
- package/application/function/function.d.ts +14 -0
- package/application/function/function.js +22 -0
- package/application/function/function.js.map +1 -0
- package/application/function/function.ts +37 -0
- package/application/impl/common.d.ts +2 -0
- package/application/impl/common.js +51 -0
- package/application/impl/common.js.map +1 -0
- package/application/impl/common.ts +50 -0
- package/application/impl/impl.d.ts +16 -0
- package/application/impl/impl.js +39 -0
- package/application/impl/impl.js.map +1 -0
- package/application/impl/impl.ts +48 -0
- package/constants/constants.d.ts +10 -0
- package/constants/constants.js +14 -0
- package/constants/constants.js.map +1 -0
- package/constants/constants.ts +12 -0
- package/context/context.d.ts +74 -0
- package/context/context.js +24 -0
- package/context/context.js.map +1 -0
- package/context/context.ts +127 -0
- package/context/db/db.d.ts +73 -0
- package/context/db/db.js +3 -0
- package/context/db/db.js.map +1 -0
- package/context/db/db.ts +77 -0
- package/context/db/impl/IObject.d.ts +251 -0
- package/context/db/impl/IObject.js +4 -0
- package/context/db/impl/IObject.js.map +1 -0
- package/context/db/impl/IObject.ts +244 -0
- package/context/db/impl/db.d.ts +61 -0
- package/context/db/impl/db.js +87 -0
- package/context/db/impl/db.js.map +1 -0
- package/context/db/impl/db.ts +95 -0
- package/context/db/impl/object.d.ts +92 -0
- package/context/db/impl/object.js +523 -0
- package/context/db/impl/object.js.map +1 -0
- package/context/db/impl/object.ts +628 -0
- package/context/db/impl/oql/ioql.d.ts +6 -0
- package/context/db/impl/oql/ioql.js +3 -0
- package/context/db/impl/oql/ioql.js.map +1 -0
- package/context/db/impl/oql/ioql.ts +6 -0
- package/context/db/impl/oql/oql.d.ts +8 -0
- package/context/db/impl/oql/oql.js +20 -0
- package/context/db/impl/oql/oql.js.map +1 -0
- package/context/db/impl/oql/oql.ts +22 -0
- package/context/db/impl/order.d.ts +9 -0
- package/context/db/impl/order.js +14 -0
- package/context/db/impl/order.js.map +1 -0
- package/context/db/impl/order.ts +16 -0
- package/context/db/impl/propertiesStore.d.ts +8 -0
- package/context/db/impl/propertiesStore.js +28 -0
- package/context/db/impl/propertiesStore.js.map +1 -0
- package/context/db/impl/propertiesStore.ts +28 -0
- package/context/db/impl/queryBuilder.d.ts +29 -0
- package/context/db/impl/queryBuilder.js +77 -0
- package/context/db/impl/queryBuilder.js.map +1 -0
- package/context/db/impl/queryBuilder.ts +103 -0
- package/context/db/impl/transaction/index.d.ts +20 -0
- package/context/db/impl/transaction/index.js +276 -0
- package/context/db/impl/transaction/index.js.map +1 -0
- package/context/db/impl/transaction/index.ts +337 -0
- package/context/db/impl/transaction/operation.d.ts +27 -0
- package/context/db/impl/transaction/operation.js +70 -0
- package/context/db/impl/transaction/operation.js.map +1 -0
- package/context/db/impl/transaction/operation.ts +72 -0
- package/context/db/impl/transaction.d.ts +67 -0
- package/context/db/impl/transaction.js +3 -0
- package/context/db/impl/transaction.js.map +1 -0
- package/context/db/impl/transaction.ts +76 -0
- package/context/globalConfig/globalConfig.d.ts +7 -0
- package/context/globalConfig/globalConfig.js +15 -0
- package/context/globalConfig/globalConfig.js.map +1 -0
- package/context/globalConfig/globalConfig.ts +11 -0
- package/context/metadata/components/common.d.ts +6 -0
- package/context/metadata/components/common.js +16 -0
- package/context/metadata/components/common.js.map +1 -0
- package/context/metadata/components/common.ts +19 -0
- package/context/metadata/components/components.d.ts +12 -0
- package/context/metadata/components/components.js +18 -0
- package/context/metadata/components/components.js.map +1 -0
- package/context/metadata/components/components.ts +19 -0
- package/context/metadata/components/desktop/list.d.ts +16 -0
- package/context/metadata/components/desktop/list.js +403 -0
- package/context/metadata/components/desktop/list.js.map +1 -0
- package/context/metadata/components/desktop/list.ts +457 -0
- package/context/metadata/components/desktop/recordDetail.d.ts +11 -0
- package/context/metadata/components/desktop/recordDetail.js +52 -0
- package/context/metadata/components/desktop/recordDetail.js.map +1 -0
- package/context/metadata/components/desktop/recordDetail.ts +64 -0
- package/context/metadata/components/mobile/list.d.ts +24 -0
- package/context/metadata/components/mobile/list.js +144 -0
- package/context/metadata/components/mobile/list.js.map +1 -0
- package/context/metadata/components/mobile/list.ts +176 -0
- package/context/metadata/metadata.d.ts +61 -0
- package/context/metadata/metadata.js +102 -0
- package/context/metadata/metadata.js.map +1 -0
- package/context/metadata/metadata.ts +175 -0
- package/context/metadata/objects/fields.d.ts +130 -0
- package/context/metadata/objects/fields.js +333 -0
- package/context/metadata/objects/fields.js.map +1 -0
- package/context/metadata/objects/fields.ts +454 -0
- package/context/metadata/objects/fields.util.d.ts +40 -0
- package/context/metadata/objects/fields.util.js +320 -0
- package/context/metadata/objects/fields.util.js.map +1 -0
- package/context/metadata/objects/fields.util.ts +360 -0
- package/context/metadata/objects/objects.d.ts +11 -0
- package/context/metadata/objects/objects.js +19 -0
- package/context/metadata/objects/objects.js.map +1 -0
- package/context/metadata/objects/objects.ts +27 -0
- package/context/metadata/types/common.d.ts +6 -0
- package/context/metadata/types/common.js +8 -0
- package/context/metadata/types/common.js.map +1 -0
- package/context/metadata/types/common.ts +10 -0
- package/context/metadata/types/components.d.ts +90 -0
- package/context/metadata/types/components.js +3 -0
- package/context/metadata/types/components.js.map +1 -0
- package/context/metadata/types/components.ts +105 -0
- package/context/metadata/types/objects.d.ts +226 -0
- package/context/metadata/types/objects.js +3 -0
- package/context/metadata/types/objects.js.map +1 -0
- package/context/metadata/types/objects.ts +251 -0
- package/context/msg/msg.d.ts +38 -0
- package/context/msg/msg.js +34 -0
- package/context/msg/msg.js.map +1 -0
- package/context/msg/msg.ts +49 -0
- package/context/resources/IResources.d.ts +66 -0
- package/context/resources/IResources.js +3 -0
- package/context/resources/IResources.js.map +1 -0
- package/context/resources/IResources.ts +73 -0
- package/context/resources/impl/resources.d.ts +42 -0
- package/context/resources/impl/resources.js +149 -0
- package/context/resources/impl/resources.js.map +1 -0
- package/context/resources/impl/resources.ts +170 -0
- package/context/tasks/tasks.d.ts +33 -0
- package/context/tasks/tasks.js +140 -0
- package/context/tasks/tasks.js.map +1 -0
- package/context/tasks/tasks.ts +159 -0
- package/data/index.d.ts +27 -0
- package/data/index.js +5 -0
- package/data/index.js.map +1 -0
- package/data/index.ts +30 -0
- package/hooks/api.d.ts +61 -0
- package/hooks/api.js +328 -0
- package/hooks/api.js.map +1 -0
- package/hooks/api.ts +341 -0
- package/hooks/hooks.d.ts +1 -0
- package/hooks/hooks.js +89 -0
- package/hooks/hooks.js.map +1 -0
- package/hooks/hooks.ts +100 -0
- package/kunlun/kunlun.d.ts +55 -0
- package/kunlun/kunlun.js +57 -0
- package/kunlun/kunlun.js.map +1 -0
- package/kunlun/kunlun.ts +69 -0
- package/kunlun/operator/IOperator.d.ts +158 -0
- package/kunlun/operator/IOperator.js +3 -0
- package/kunlun/operator/IOperator.js.map +1 -0
- package/kunlun/operator/IOperator.ts +163 -0
- package/kunlun/operator/impl/expression.d.ts +47 -0
- package/kunlun/operator/impl/expression.js +55 -0
- package/kunlun/operator/impl/expression.js.map +1 -0
- package/kunlun/operator/impl/expression.ts +71 -0
- package/kunlun/operator/impl/logic.d.ts +50 -0
- package/kunlun/operator/impl/logic.js +508 -0
- package/kunlun/operator/impl/logic.js.map +1 -0
- package/kunlun/operator/impl/logic.ts +595 -0
- package/kunlun/operator/impl/logicV2.d.ts +58 -0
- package/kunlun/operator/impl/logicV2.js +201 -0
- package/kunlun/operator/impl/logicV2.js.map +1 -0
- package/kunlun/operator/impl/logicV2.ts +254 -0
- package/kunlun/operator/impl/operator.d.ts +179 -0
- package/kunlun/operator/impl/operator.js +221 -0
- package/kunlun/operator/impl/operator.js.map +1 -0
- package/kunlun/operator/impl/operator.ts +255 -0
- package/kunlun/operator/impl/operatorV2.d.ts +180 -0
- package/kunlun/operator/impl/operatorV2.js +217 -0
- package/kunlun/operator/impl/operatorV2.js.map +1 -0
- package/kunlun/operator/impl/operatorV2.ts +249 -0
- package/lib/core.d.ts +4 -0
- package/lib/core.js +18 -0
- package/lib/core.js.map +1 -0
- package/lib/core.ts +4 -0
- package/package.json +50 -0
- package/request/common.d.ts +13 -0
- package/request/common.js +88 -0
- package/request/common.js.map +1 -0
- package/request/common.ts +91 -0
- package/request/constants.d.ts +10 -0
- package/request/constants.js +26 -0
- package/request/constants.js.map +1 -0
- package/request/constants.ts +25 -0
- package/request/faasinfra.d.ts +8 -0
- package/request/faasinfra.js +359 -0
- package/request/faasinfra.js.map +1 -0
- package/request/faasinfra.ts +393 -0
- package/request/innerapi.d.ts +67 -0
- package/request/innerapi.js +1411 -0
- package/request/innerapi.js.map +1 -0
- package/request/innerapi.ts +1645 -0
- package/request/interface.d.ts +95 -0
- package/request/interface.js +40 -0
- package/request/interface.js.map +1 -0
- package/request/interface.ts +166 -0
- package/request/openapi.d.ts +69 -0
- package/request/openapi.js +1013 -0
- package/request/openapi.js.map +1 -0
- package/request/openapi.ts +1220 -0
- package/types/types.d.ts +79 -0
- package/types/types.js +3 -0
- package/types/types.js.map +1 -0
- package/types/types.ts +105 -0
package/kunlun/kunlun.ts
ADDED
|
@@ -0,0 +1,69 @@
|
|
|
1
|
+
import { IOperator } from './operator/IOperator';
|
|
2
|
+
import { globalVariables } from '../data/index'
|
|
3
|
+
import { GMTOffset as GMT } from "@byted-apaas/server-common-node/constants/timeZone";
|
|
4
|
+
import { area2code } from "@byted-apaas/server-common-node/constants/countryCode";
|
|
5
|
+
import { ITool, IToolsExtra } from "@byted-apaas/server-common-node/kunlun/tool/Itool";
|
|
6
|
+
import { Tool } from "@byted-apaas/server-common-node/kunlun/tool/impl/tool";
|
|
7
|
+
import { errCodes } from "@byted-apaas/server-common-node/utils/exceptions";
|
|
8
|
+
import { Operator } from "./operator/impl/operator";
|
|
9
|
+
import * as common from "@byted-apaas/server-common-node";
|
|
10
|
+
import * as Request from "../request/interface";
|
|
11
|
+
|
|
12
|
+
declare global {
|
|
13
|
+
export namespace kunlun {
|
|
14
|
+
/**
|
|
15
|
+
* 指令操作符
|
|
16
|
+
*/
|
|
17
|
+
export let operator: IOperator;
|
|
18
|
+
}
|
|
19
|
+
}
|
|
20
|
+
|
|
21
|
+
export namespace kunlun {
|
|
22
|
+
/**
|
|
23
|
+
* 引用时区信息
|
|
24
|
+
*/
|
|
25
|
+
export const GMTOffset: typeof GMT = GMT;
|
|
26
|
+
|
|
27
|
+
/**
|
|
28
|
+
* 引用国际区号
|
|
29
|
+
*/
|
|
30
|
+
export const countryCode: typeof area2code = area2code;
|
|
31
|
+
|
|
32
|
+
/**
|
|
33
|
+
* 工具方法
|
|
34
|
+
*/
|
|
35
|
+
export let tool: ITool & IToolsExtra = new Tool();
|
|
36
|
+
|
|
37
|
+
/**
|
|
38
|
+
* 生成复杂数据结构
|
|
39
|
+
*/
|
|
40
|
+
export namespace type {
|
|
41
|
+
export import Multilingual = common.fieldType.Multilingual
|
|
42
|
+
export import Phone = common.fieldType.Phone
|
|
43
|
+
export import Date = common.fieldType.Date
|
|
44
|
+
export import DateTime = common.fieldType.DateTime
|
|
45
|
+
}
|
|
46
|
+
|
|
47
|
+
/**
|
|
48
|
+
* 错误码
|
|
49
|
+
*/
|
|
50
|
+
export const errorCode = {
|
|
51
|
+
/**
|
|
52
|
+
* 限流错误码
|
|
53
|
+
*/
|
|
54
|
+
RATE_LIMIT_ERROR: errCodes.RATE_LIMIT_ERROR,
|
|
55
|
+
}
|
|
56
|
+
|
|
57
|
+
/**
|
|
58
|
+
* 根据 key 获取对应的全局变量
|
|
59
|
+
* @param key 全局变量的 key
|
|
60
|
+
*/
|
|
61
|
+
export async function getVar(key: string): Promise<string> {
|
|
62
|
+
return await Request.GetInstance().getGlobalConfigByKey(key);
|
|
63
|
+
}
|
|
64
|
+
|
|
65
|
+
/**
|
|
66
|
+
* 指令操作符
|
|
67
|
+
*/
|
|
68
|
+
export const operator: IOperator = new Operator();
|
|
69
|
+
}
|
|
@@ -0,0 +1,158 @@
|
|
|
1
|
+
import { _Cond, _BooleanCond, _LogicalCond } from '../../types/types';
|
|
2
|
+
import { UserDataType } from './impl/expression';
|
|
3
|
+
export interface IOperator {
|
|
4
|
+
/**
|
|
5
|
+
* 逻辑与
|
|
6
|
+
* @param conditions 多个条件,用逗号分隔
|
|
7
|
+
* @example
|
|
8
|
+
* ```
|
|
9
|
+
* context.db.object("_user").where(kunlun.operator.and({
|
|
10
|
+
* age: "22"
|
|
11
|
+
* },{
|
|
12
|
+
* gender: "male"
|
|
13
|
+
* }))
|
|
14
|
+
* ```
|
|
15
|
+
*/
|
|
16
|
+
and<T>(...conditions: (_Cond<T> | _BooleanCond<T>)[]): _LogicalCond<T>;
|
|
17
|
+
/**
|
|
18
|
+
* 逻辑或
|
|
19
|
+
* @param conditions 多个条件,用逗号分隔
|
|
20
|
+
* @example
|
|
21
|
+
* ```
|
|
22
|
+
* context.db.object("_user").where(kunlun.operator.or({
|
|
23
|
+
* age: "22"
|
|
24
|
+
* },{
|
|
25
|
+
* age: "25"
|
|
26
|
+
* }))
|
|
27
|
+
* ```
|
|
28
|
+
*/
|
|
29
|
+
or<T>(...conditions: (_Cond<T> | _BooleanCond<T>)[]): _LogicalCond<T>;
|
|
30
|
+
/**
|
|
31
|
+
* 包含
|
|
32
|
+
* @param value 判定是否包含的文本值
|
|
33
|
+
* @example
|
|
34
|
+
* ```
|
|
35
|
+
* context.db.object("_user").where({_name: kunlun.operator.contain("a")})
|
|
36
|
+
* ```
|
|
37
|
+
*/
|
|
38
|
+
contain<T>(value: UserDataType): _BooleanCond<T>;
|
|
39
|
+
/**
|
|
40
|
+
* 不包含
|
|
41
|
+
* @param value 判定是否不包含的文本值
|
|
42
|
+
* @example
|
|
43
|
+
* ```
|
|
44
|
+
* context.db.object("_user").where({_name: kunlun.operator.notContain("a")})
|
|
45
|
+
* ```
|
|
46
|
+
*/
|
|
47
|
+
notContain<T>(value: UserDataType): _BooleanCond<T>;
|
|
48
|
+
/**
|
|
49
|
+
* 无需入参,判断是否为空
|
|
50
|
+
* @example
|
|
51
|
+
* ```
|
|
52
|
+
* context.db.object("_user").where({employeeType: kunlun.operator.empty()})
|
|
53
|
+
* ```
|
|
54
|
+
*/
|
|
55
|
+
empty(): _BooleanCond<any>;
|
|
56
|
+
/**
|
|
57
|
+
* 无需入参,判断是否为空
|
|
58
|
+
* @example
|
|
59
|
+
* ```
|
|
60
|
+
* context.db.object("_user").where({employeeType: kunlun.operator.notEmpty()})
|
|
61
|
+
* ```
|
|
62
|
+
*/
|
|
63
|
+
notEmpty(): _BooleanCond<any>;
|
|
64
|
+
/**
|
|
65
|
+
* 等于
|
|
66
|
+
* @param value 判定是否相等的值
|
|
67
|
+
* @example
|
|
68
|
+
* ```
|
|
69
|
+
* context.db.object("_user").where({age: kunlun.operator.eq(20)})
|
|
70
|
+
* ```
|
|
71
|
+
*/
|
|
72
|
+
eq<T>(value: UserDataType): _BooleanCond<T>;
|
|
73
|
+
/**
|
|
74
|
+
* 不等于
|
|
75
|
+
* @param value 判定是否不相等的值
|
|
76
|
+
* @example
|
|
77
|
+
* ```
|
|
78
|
+
* context.db.object("_user").where({age: kunlun.operator.neq(20)})
|
|
79
|
+
* ```
|
|
80
|
+
*/
|
|
81
|
+
neq<T>(value: UserDataType): _BooleanCond<T>;
|
|
82
|
+
/**
|
|
83
|
+
* 大于或晚于
|
|
84
|
+
* @param value 判定是否大于或晚于的值
|
|
85
|
+
* @example
|
|
86
|
+
* ```
|
|
87
|
+
* kunlun.operator.gt(new Date("2020-11-26").getTime())
|
|
88
|
+
* ```
|
|
89
|
+
*/
|
|
90
|
+
gt<T>(value: number | Date): _BooleanCond<T>;
|
|
91
|
+
/**
|
|
92
|
+
* 大于等于或晚于等于
|
|
93
|
+
* @param value 判定是否大于等于或晚于等于的值
|
|
94
|
+
* @example
|
|
95
|
+
* ```
|
|
96
|
+
* kunlun.operator.gte(new Date("2020-11-26").getTime())
|
|
97
|
+
* ```
|
|
98
|
+
*/
|
|
99
|
+
gte<T>(value: number | Date): _BooleanCond<T>;
|
|
100
|
+
/**
|
|
101
|
+
* 小于或早于
|
|
102
|
+
* @param value 判定是否小于或早于的值
|
|
103
|
+
* @example
|
|
104
|
+
* ```
|
|
105
|
+
* kunlun.operator.lt(new Date("2020-11-26").getTime())
|
|
106
|
+
* ```
|
|
107
|
+
*/
|
|
108
|
+
lt<T>(value: number | Date): _BooleanCond<T>;
|
|
109
|
+
/**
|
|
110
|
+
* 小于等于或早于等于
|
|
111
|
+
* @param value 判定是否小于等于或早于等于的值
|
|
112
|
+
* @example
|
|
113
|
+
* ```
|
|
114
|
+
* kunlun.operator.lte(new Date("2020-11-26").getTime())
|
|
115
|
+
* ```
|
|
116
|
+
*/
|
|
117
|
+
lte<T>(value: number | Date): _BooleanCond<T>;
|
|
118
|
+
/**
|
|
119
|
+
* 存在于给定的数组内
|
|
120
|
+
* @param values 判定是否存在于的一组值,用数组传递
|
|
121
|
+
*/
|
|
122
|
+
in<T>(values: UserDataType[]): _BooleanCond<T>;
|
|
123
|
+
/**
|
|
124
|
+
* 存在于给定的数组内
|
|
125
|
+
* @param values 判定是否存在于的一组值,用逗号分隔
|
|
126
|
+
*/
|
|
127
|
+
in<T>(...values: UserDataType[]): _BooleanCond<T>;
|
|
128
|
+
/**
|
|
129
|
+
* 不存在于给定的数组内
|
|
130
|
+
* @param values 判定是否不存在于的一组值,用数组传递
|
|
131
|
+
*/
|
|
132
|
+
notIn<T>(values: UserDataType[]): _BooleanCond<T>;
|
|
133
|
+
/**
|
|
134
|
+
* 不存在于给定的数组内
|
|
135
|
+
* @param values 判定是否不存在于的一组值,用逗号分隔
|
|
136
|
+
*/
|
|
137
|
+
notIn<T>(...values: UserDataType[]): _BooleanCond<T>;
|
|
138
|
+
/**
|
|
139
|
+
* 存在给定的多个值中的任何一个值
|
|
140
|
+
* @param values 判定是否不存在于的一组值,用逗号分隔
|
|
141
|
+
*/
|
|
142
|
+
hasAnyOf<T>(values: number[] | string[]): _BooleanCond<T>;
|
|
143
|
+
/**
|
|
144
|
+
* 存在给定的多个值中的任何一个值
|
|
145
|
+
* @param values 判定是否不存在于的一组值,用逗号分隔
|
|
146
|
+
*/
|
|
147
|
+
hasAnyOf<T>(...values: number[] | string[]): _BooleanCond<T>;
|
|
148
|
+
/**
|
|
149
|
+
* 不存在给定的多个值中的任何值
|
|
150
|
+
* @param values 判定是否不存在于的一组值,用逗号分隔
|
|
151
|
+
*/
|
|
152
|
+
hasNoneOf<T>(values: number[] | string[]): _BooleanCond<T>;
|
|
153
|
+
/**
|
|
154
|
+
* 不存在给定的多个值中的任何值
|
|
155
|
+
* @param values 判定是否不存在于的一组值,用逗号分隔
|
|
156
|
+
*/
|
|
157
|
+
hasNoneOf<T>(...values: number[] | string[]): _BooleanCond<T>;
|
|
158
|
+
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"IOperator.js","sourceRoot":"","sources":["IOperator.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,163 @@
|
|
|
1
|
+
import { _Cond, _BooleanCond, _LogicalCond } from '../../types/types'
|
|
2
|
+
import { UserDataType } from './impl/expression';
|
|
3
|
+
|
|
4
|
+
export interface IOperator {
|
|
5
|
+
/**
|
|
6
|
+
* 逻辑与
|
|
7
|
+
* @param conditions 多个条件,用逗号分隔
|
|
8
|
+
* @example
|
|
9
|
+
* ```
|
|
10
|
+
* context.db.object("_user").where(kunlun.operator.and({
|
|
11
|
+
* age: "22"
|
|
12
|
+
* },{
|
|
13
|
+
* gender: "male"
|
|
14
|
+
* }))
|
|
15
|
+
* ```
|
|
16
|
+
*/
|
|
17
|
+
and<T>(...conditions: (_Cond<T> | _BooleanCond<T>)[]): _LogicalCond<T>;
|
|
18
|
+
/**
|
|
19
|
+
* 逻辑或
|
|
20
|
+
* @param conditions 多个条件,用逗号分隔
|
|
21
|
+
* @example
|
|
22
|
+
* ```
|
|
23
|
+
* context.db.object("_user").where(kunlun.operator.or({
|
|
24
|
+
* age: "22"
|
|
25
|
+
* },{
|
|
26
|
+
* age: "25"
|
|
27
|
+
* }))
|
|
28
|
+
* ```
|
|
29
|
+
*/
|
|
30
|
+
or<T>(...conditions: (_Cond<T> | _BooleanCond<T>)[]): _LogicalCond<T>;
|
|
31
|
+
/**
|
|
32
|
+
* 包含
|
|
33
|
+
* @param value 判定是否包含的文本值
|
|
34
|
+
* @example
|
|
35
|
+
* ```
|
|
36
|
+
* context.db.object("_user").where({_name: kunlun.operator.contain("a")})
|
|
37
|
+
* ```
|
|
38
|
+
*/
|
|
39
|
+
contain<T>(value: UserDataType): _BooleanCond<T>;
|
|
40
|
+
/**
|
|
41
|
+
* 不包含
|
|
42
|
+
* @param value 判定是否不包含的文本值
|
|
43
|
+
* @example
|
|
44
|
+
* ```
|
|
45
|
+
* context.db.object("_user").where({_name: kunlun.operator.notContain("a")})
|
|
46
|
+
* ```
|
|
47
|
+
*/
|
|
48
|
+
notContain<T>(value: UserDataType): _BooleanCond<T>;
|
|
49
|
+
/**
|
|
50
|
+
* 无需入参,判断是否为空
|
|
51
|
+
* @example
|
|
52
|
+
* ```
|
|
53
|
+
* context.db.object("_user").where({employeeType: kunlun.operator.empty()})
|
|
54
|
+
* ```
|
|
55
|
+
*/
|
|
56
|
+
empty(): _BooleanCond<any>;
|
|
57
|
+
/**
|
|
58
|
+
* 无需入参,判断是否为空
|
|
59
|
+
* @example
|
|
60
|
+
* ```
|
|
61
|
+
* context.db.object("_user").where({employeeType: kunlun.operator.notEmpty()})
|
|
62
|
+
* ```
|
|
63
|
+
*/
|
|
64
|
+
notEmpty(): _BooleanCond<any>;
|
|
65
|
+
/**
|
|
66
|
+
* 等于
|
|
67
|
+
* @param value 判定是否相等的值
|
|
68
|
+
* @example
|
|
69
|
+
* ```
|
|
70
|
+
* context.db.object("_user").where({age: kunlun.operator.eq(20)})
|
|
71
|
+
* ```
|
|
72
|
+
*/
|
|
73
|
+
eq<T>(value: UserDataType): _BooleanCond<T>;
|
|
74
|
+
/**
|
|
75
|
+
* 不等于
|
|
76
|
+
* @param value 判定是否不相等的值
|
|
77
|
+
* @example
|
|
78
|
+
* ```
|
|
79
|
+
* context.db.object("_user").where({age: kunlun.operator.neq(20)})
|
|
80
|
+
* ```
|
|
81
|
+
*/
|
|
82
|
+
neq<T>(value: UserDataType): _BooleanCond<T>;
|
|
83
|
+
/**
|
|
84
|
+
* 大于或晚于
|
|
85
|
+
* @param value 判定是否大于或晚于的值
|
|
86
|
+
* @example
|
|
87
|
+
* ```
|
|
88
|
+
* kunlun.operator.gt(new Date("2020-11-26").getTime())
|
|
89
|
+
* ```
|
|
90
|
+
*/
|
|
91
|
+
gt<T>(value: number | Date): _BooleanCond<T>;
|
|
92
|
+
/**
|
|
93
|
+
* 大于等于或晚于等于
|
|
94
|
+
* @param value 判定是否大于等于或晚于等于的值
|
|
95
|
+
* @example
|
|
96
|
+
* ```
|
|
97
|
+
* kunlun.operator.gte(new Date("2020-11-26").getTime())
|
|
98
|
+
* ```
|
|
99
|
+
*/
|
|
100
|
+
gte<T>(value: number | Date): _BooleanCond<T>;
|
|
101
|
+
/**
|
|
102
|
+
* 小于或早于
|
|
103
|
+
* @param value 判定是否小于或早于的值
|
|
104
|
+
* @example
|
|
105
|
+
* ```
|
|
106
|
+
* kunlun.operator.lt(new Date("2020-11-26").getTime())
|
|
107
|
+
* ```
|
|
108
|
+
*/
|
|
109
|
+
lt<T>(value: number | Date): _BooleanCond<T>;
|
|
110
|
+
/**
|
|
111
|
+
* 小于等于或早于等于
|
|
112
|
+
* @param value 判定是否小于等于或早于等于的值
|
|
113
|
+
* @example
|
|
114
|
+
* ```
|
|
115
|
+
* kunlun.operator.lte(new Date("2020-11-26").getTime())
|
|
116
|
+
* ```
|
|
117
|
+
*/
|
|
118
|
+
lte<T>(value: number | Date): _BooleanCond<T>;
|
|
119
|
+
/**
|
|
120
|
+
* 存在于给定的数组内
|
|
121
|
+
* @param values 判定是否存在于的一组值,用数组传递
|
|
122
|
+
*/
|
|
123
|
+
in<T>(values: UserDataType[]): _BooleanCond<T>;
|
|
124
|
+
/**
|
|
125
|
+
* 存在于给定的数组内
|
|
126
|
+
* @param values 判定是否存在于的一组值,用逗号分隔
|
|
127
|
+
*/
|
|
128
|
+
in<T>(...values: UserDataType[]): _BooleanCond<T>;
|
|
129
|
+
/**
|
|
130
|
+
* 不存在于给定的数组内
|
|
131
|
+
* @param values 判定是否不存在于的一组值,用数组传递
|
|
132
|
+
*/
|
|
133
|
+
notIn<T>(values: UserDataType[]): _BooleanCond<T>;
|
|
134
|
+
/**
|
|
135
|
+
* 不存在于给定的数组内
|
|
136
|
+
* @param values 判定是否不存在于的一组值,用逗号分隔
|
|
137
|
+
*/
|
|
138
|
+
notIn<T>(...values: UserDataType[]): _BooleanCond<T>;
|
|
139
|
+
|
|
140
|
+
/**
|
|
141
|
+
* 存在给定的多个值中的任何一个值
|
|
142
|
+
* @param values 判定是否不存在于的一组值,用逗号分隔
|
|
143
|
+
*/
|
|
144
|
+
hasAnyOf<T>(values: number[] | string[]): _BooleanCond<T>;
|
|
145
|
+
|
|
146
|
+
/**
|
|
147
|
+
* 存在给定的多个值中的任何一个值
|
|
148
|
+
* @param values 判定是否不存在于的一组值,用逗号分隔
|
|
149
|
+
*/
|
|
150
|
+
hasAnyOf<T>(...values: number[] | string[]): _BooleanCond<T>;
|
|
151
|
+
|
|
152
|
+
/**
|
|
153
|
+
* 不存在给定的多个值中的任何值
|
|
154
|
+
* @param values 判定是否不存在于的一组值,用逗号分隔
|
|
155
|
+
*/
|
|
156
|
+
hasNoneOf<T>(values: number[] | string[]): _BooleanCond<T>;
|
|
157
|
+
|
|
158
|
+
/**
|
|
159
|
+
* 不存在给定的多个值中的任何值
|
|
160
|
+
* @param values 判定是否不存在于的一组值,用逗号分隔
|
|
161
|
+
*/
|
|
162
|
+
hasNoneOf<T>(...values: number[] | string[]): _BooleanCond<T>;
|
|
163
|
+
}
|
|
@@ -0,0 +1,47 @@
|
|
|
1
|
+
export declare type UserDataType = null | string | boolean | number | Date | object;
|
|
2
|
+
export declare class Expression {
|
|
3
|
+
index: number;
|
|
4
|
+
left: ExpressionField;
|
|
5
|
+
operator: string;
|
|
6
|
+
right: ExpressionField;
|
|
7
|
+
constructor(left: ExpressionField, operator: string, right: ExpressionField, index: number);
|
|
8
|
+
}
|
|
9
|
+
declare type SettingType = {
|
|
10
|
+
data?: UserDataType;
|
|
11
|
+
fieldPath?: PathType[];
|
|
12
|
+
};
|
|
13
|
+
export declare type PathType = {
|
|
14
|
+
objectApiName: string;
|
|
15
|
+
fieldApiName: string;
|
|
16
|
+
extendLogicTags: string[];
|
|
17
|
+
};
|
|
18
|
+
/**
|
|
19
|
+
* 总共有4种类型,当前仅支持constant,metadataVariable
|
|
20
|
+
*
|
|
21
|
+
* constant:不可为左值
|
|
22
|
+
* metadataVariable
|
|
23
|
+
* function
|
|
24
|
+
* customizedVariable
|
|
25
|
+
*/
|
|
26
|
+
declare class ExpressionField {
|
|
27
|
+
type: string;
|
|
28
|
+
settings: SettingType;
|
|
29
|
+
constructor(type: string, settings: SettingType);
|
|
30
|
+
}
|
|
31
|
+
/**
|
|
32
|
+
* 常量表达式字段
|
|
33
|
+
*
|
|
34
|
+
* 比如在 condition: user.name equal "bob" 中,"bob" 将被构建为 ConstantExpressionField
|
|
35
|
+
*/
|
|
36
|
+
export declare class ConstantExpressionField extends ExpressionField {
|
|
37
|
+
constructor(data: UserDataType);
|
|
38
|
+
}
|
|
39
|
+
/**
|
|
40
|
+
* 元数据表达式字段
|
|
41
|
+
*
|
|
42
|
+
* 比如在 condition: user.name equal "bob" 中,"user.name" 将被构建为 MetadataExpressionField
|
|
43
|
+
*/
|
|
44
|
+
export declare class MetadataExpressionField extends ExpressionField {
|
|
45
|
+
constructor(objectApiName: string, fieldApiName: string);
|
|
46
|
+
}
|
|
47
|
+
export {};
|
|
@@ -0,0 +1,55 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.MetadataExpressionField = exports.ConstantExpressionField = exports.Expression = void 0;
|
|
4
|
+
class Expression {
|
|
5
|
+
constructor(left, operator, right, index) {
|
|
6
|
+
this.index = index;
|
|
7
|
+
this.left = left;
|
|
8
|
+
this.operator = operator;
|
|
9
|
+
this.right = right;
|
|
10
|
+
}
|
|
11
|
+
}
|
|
12
|
+
exports.Expression = Expression;
|
|
13
|
+
/**
|
|
14
|
+
* 总共有4种类型,当前仅支持constant,metadataVariable
|
|
15
|
+
*
|
|
16
|
+
* constant:不可为左值
|
|
17
|
+
* metadataVariable
|
|
18
|
+
* function
|
|
19
|
+
* customizedVariable
|
|
20
|
+
*/
|
|
21
|
+
class ExpressionField {
|
|
22
|
+
constructor(type, settings) {
|
|
23
|
+
this.type = type;
|
|
24
|
+
this.settings = settings;
|
|
25
|
+
}
|
|
26
|
+
}
|
|
27
|
+
/**
|
|
28
|
+
* 常量表达式字段
|
|
29
|
+
*
|
|
30
|
+
* 比如在 condition: user.name equal "bob" 中,"bob" 将被构建为 ConstantExpressionField
|
|
31
|
+
*/
|
|
32
|
+
class ConstantExpressionField extends ExpressionField {
|
|
33
|
+
constructor(data) {
|
|
34
|
+
super("constant", { "data": data });
|
|
35
|
+
}
|
|
36
|
+
}
|
|
37
|
+
exports.ConstantExpressionField = ConstantExpressionField;
|
|
38
|
+
/**
|
|
39
|
+
* 元数据表达式字段
|
|
40
|
+
*
|
|
41
|
+
* 比如在 condition: user.name equal "bob" 中,"user.name" 将被构建为 MetadataExpressionField
|
|
42
|
+
*/
|
|
43
|
+
class MetadataExpressionField extends ExpressionField {
|
|
44
|
+
constructor(objectApiName, fieldApiName) {
|
|
45
|
+
super("metadataVariable", {
|
|
46
|
+
"fieldPath": [{
|
|
47
|
+
objectApiName: objectApiName,
|
|
48
|
+
fieldApiName: fieldApiName,
|
|
49
|
+
extendLogicTags: [],
|
|
50
|
+
}]
|
|
51
|
+
});
|
|
52
|
+
}
|
|
53
|
+
}
|
|
54
|
+
exports.MetadataExpressionField = MetadataExpressionField;
|
|
55
|
+
//# sourceMappingURL=expression.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"expression.js","sourceRoot":"","sources":["expression.ts"],"names":[],"mappings":";;;AAEA,MAAa,UAAU;IAMnB,YAAY,IAAqB,EAAE,QAAgB,EAAE,KAAsB,EAAE,KAAa;QACtF,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;QACnB,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;QACjB,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC;QACzB,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;IACvB,CAAC;CACJ;AAZD,gCAYC;AAaD;;;;;;;GAOG;AACH,MAAM,eAAe;IAGjB,YAAY,IAAY,EAAE,QAAqB;QAC3C,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;QACjB,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC;IAC7B,CAAC;CACJ;AAED;;;;GAIG;AACH,MAAa,uBAAwB,SAAQ,eAAe;IACxD,YAAY,IAAkB;QAC1B,KAAK,CAAC,UAAU,EAAE,EAAC,MAAM,EAAE,IAAI,EAAC,CAAC,CAAC;IACtC,CAAC;CACJ;AAJD,0DAIC;AAED;;;;GAIG;AACH,MAAa,uBAAwB,SAAQ,eAAe;IACxD,YAAY,aAAqB,EAAE,YAAoB;QACnD,KAAK,CAAC,kBAAkB,EAAE;YACtB,WAAW,EAAE,CAAC;oBACV,aAAa,EAAE,aAAa;oBAC5B,YAAY,EAAE,YAAY;oBAC1B,eAAe,EAAE,EAAE;iBACtB,CAAC;SACL,CAAC,CAAC;IACP,CAAC;CACJ;AAVD,0DAUC"}
|
|
@@ -0,0 +1,71 @@
|
|
|
1
|
+
export type UserDataType = null | string | boolean | number | Date | object
|
|
2
|
+
|
|
3
|
+
export class Expression {
|
|
4
|
+
index: number
|
|
5
|
+
left: ExpressionField
|
|
6
|
+
operator: string
|
|
7
|
+
right: ExpressionField
|
|
8
|
+
|
|
9
|
+
constructor(left: ExpressionField, operator: string, right: ExpressionField, index: number) {
|
|
10
|
+
this.index = index;
|
|
11
|
+
this.left = left;
|
|
12
|
+
this.operator = operator;
|
|
13
|
+
this.right = right;
|
|
14
|
+
}
|
|
15
|
+
}
|
|
16
|
+
|
|
17
|
+
type SettingType = {
|
|
18
|
+
data?: UserDataType
|
|
19
|
+
fieldPath?: PathType[]
|
|
20
|
+
}
|
|
21
|
+
|
|
22
|
+
export type PathType = {
|
|
23
|
+
objectApiName: string
|
|
24
|
+
fieldApiName: string
|
|
25
|
+
extendLogicTags: string[]
|
|
26
|
+
}
|
|
27
|
+
|
|
28
|
+
/**
|
|
29
|
+
* 总共有4种类型,当前仅支持constant,metadataVariable
|
|
30
|
+
*
|
|
31
|
+
* constant:不可为左值
|
|
32
|
+
* metadataVariable
|
|
33
|
+
* function
|
|
34
|
+
* customizedVariable
|
|
35
|
+
*/
|
|
36
|
+
class ExpressionField {
|
|
37
|
+
type: string
|
|
38
|
+
settings: SettingType
|
|
39
|
+
constructor(type: string, settings: SettingType) {
|
|
40
|
+
this.type = type;
|
|
41
|
+
this.settings = settings;
|
|
42
|
+
}
|
|
43
|
+
}
|
|
44
|
+
|
|
45
|
+
/**
|
|
46
|
+
* 常量表达式字段
|
|
47
|
+
*
|
|
48
|
+
* 比如在 condition: user.name equal "bob" 中,"bob" 将被构建为 ConstantExpressionField
|
|
49
|
+
*/
|
|
50
|
+
export class ConstantExpressionField extends ExpressionField {
|
|
51
|
+
constructor(data: UserDataType) {
|
|
52
|
+
super("constant", {"data": data});
|
|
53
|
+
}
|
|
54
|
+
}
|
|
55
|
+
|
|
56
|
+
/**
|
|
57
|
+
* 元数据表达式字段
|
|
58
|
+
*
|
|
59
|
+
* 比如在 condition: user.name equal "bob" 中,"user.name" 将被构建为 MetadataExpressionField
|
|
60
|
+
*/
|
|
61
|
+
export class MetadataExpressionField extends ExpressionField {
|
|
62
|
+
constructor(objectApiName: string, fieldApiName: string) {
|
|
63
|
+
super("metadataVariable", {
|
|
64
|
+
"fieldPath": [{
|
|
65
|
+
objectApiName: objectApiName,
|
|
66
|
+
fieldApiName: fieldApiName,
|
|
67
|
+
extendLogicTags: [],
|
|
68
|
+
}]
|
|
69
|
+
});
|
|
70
|
+
}
|
|
71
|
+
}
|
|
@@ -0,0 +1,50 @@
|
|
|
1
|
+
import { Expression, UserDataType } from './expression';
|
|
2
|
+
export declare class Condition {
|
|
3
|
+
left: string;
|
|
4
|
+
right: Condition | UserDataType;
|
|
5
|
+
op: string;
|
|
6
|
+
/**
|
|
7
|
+
*
|
|
8
|
+
* @param objectApiName 对象的ApiName
|
|
9
|
+
* @param fieldApiName 字段的ApiName,指左值,即key
|
|
10
|
+
* @param index 条件的排序
|
|
11
|
+
* @returns {Expression}
|
|
12
|
+
*/
|
|
13
|
+
toExpression(objectApiName: string, fieldApiName: string, index: number): Expression;
|
|
14
|
+
constructor(left: string, right: Condition | UserDataType, op?: string);
|
|
15
|
+
}
|
|
16
|
+
export declare type Criterion = {
|
|
17
|
+
conditions: Expression[];
|
|
18
|
+
logic: string;
|
|
19
|
+
};
|
|
20
|
+
/**
|
|
21
|
+
* 构造 criterion
|
|
22
|
+
*
|
|
23
|
+
* @param logic
|
|
24
|
+
* @param objectApiName
|
|
25
|
+
* @param maxId 添加 _id>maxId 条件,为 -1 表示不使用该参数
|
|
26
|
+
*/
|
|
27
|
+
export declare function buildCriterion(logic: Logic, objectApiName: string, maxId?: number): Criterion | string;
|
|
28
|
+
export declare function buildExpression(objectApiName: string, left: string, right: Condition | UserDataType, index?: number): Expression;
|
|
29
|
+
export declare class Logic {
|
|
30
|
+
value: string;
|
|
31
|
+
expressions: {
|
|
32
|
+
[index: string]: any;
|
|
33
|
+
};
|
|
34
|
+
logics: Logic[];
|
|
35
|
+
constructor(expressions?: {
|
|
36
|
+
[index: string]: any;
|
|
37
|
+
}, logicValue?: string);
|
|
38
|
+
/**
|
|
39
|
+
* 处理:右值包含逻辑表达式and|or的情况
|
|
40
|
+
*
|
|
41
|
+
* @param expressions
|
|
42
|
+
* @param lookupField
|
|
43
|
+
*/
|
|
44
|
+
handleRightLogic(expressions: {
|
|
45
|
+
[index: string]: any;
|
|
46
|
+
}, lookupField?: string): void;
|
|
47
|
+
addLogic(logic: Logic): void;
|
|
48
|
+
}
|
|
49
|
+
export declare function buildLogic(param: (Logic | object)[], logicValue?: string): Logic;
|
|
50
|
+
export declare function handleCriterion(criterion: string | Criterion): Promise<string | Criterion>;
|