oak-domain 3.0.1 → 3.0.2
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/lib/actions/action.d.ts +16 -16
- package/lib/actions/action.js +17 -17
- package/lib/actions/relation.d.ts +5 -5
- package/lib/actions/relation.js +38 -38
- package/lib/base-app-domain/ActionAuth/Schema.d.ts +160 -160
- package/lib/base-app-domain/ActionAuth/Schema.js +2 -2
- package/lib/base-app-domain/ActionAuth/Storage.d.ts +3 -3
- package/lib/base-app-domain/ActionAuth/Storage.js +42 -42
- package/lib/base-app-domain/ActionDefDict.d.ts +9 -9
- package/lib/base-app-domain/ActionDefDict.js +11 -11
- package/lib/base-app-domain/EntityDict.d.ts +24 -24
- package/lib/base-app-domain/EntityDict.js +2 -2
- package/lib/base-app-domain/I18n/Schema.d.ts +129 -129
- package/lib/base-app-domain/I18n/Schema.js +2 -2
- package/lib/base-app-domain/I18n/Storage.d.ts +3 -3
- package/lib/base-app-domain/I18n/Storage.js +59 -59
- package/lib/base-app-domain/Modi/Action.d.ts +10 -10
- package/lib/base-app-domain/Modi/Action.js +14 -14
- package/lib/base-app-domain/Modi/Schema.d.ts +136 -136
- package/lib/base-app-domain/Modi/Schema.js +2 -2
- package/lib/base-app-domain/Modi/Storage.d.ts +3 -3
- package/lib/base-app-domain/Modi/Storage.js +63 -63
- package/lib/base-app-domain/ModiEntity/Schema.d.ts +311 -311
- package/lib/base-app-domain/ModiEntity/Schema.js +2 -2
- package/lib/base-app-domain/ModiEntity/Storage.d.ts +3 -3
- package/lib/base-app-domain/ModiEntity/Storage.js +30 -30
- package/lib/base-app-domain/Oper/Schema.d.ts +152 -152
- package/lib/base-app-domain/Oper/Schema.js +2 -2
- package/lib/base-app-domain/Oper/Storage.d.ts +3 -3
- package/lib/base-app-domain/Oper/Storage.js +38 -38
- package/lib/base-app-domain/OperEntity/Schema.d.ts +300 -300
- package/lib/base-app-domain/OperEntity/Schema.js +2 -2
- package/lib/base-app-domain/OperEntity/Storage.d.ts +3 -3
- package/lib/base-app-domain/OperEntity/Storage.js +30 -30
- package/lib/base-app-domain/Relation/Schema.d.ts +188 -188
- package/lib/base-app-domain/Relation/Schema.js +2 -2
- package/lib/base-app-domain/Relation/Storage.d.ts +3 -3
- package/lib/base-app-domain/Relation/Storage.js +54 -54
- package/lib/base-app-domain/Relation.d.ts +10 -10
- package/lib/base-app-domain/Relation.js +10 -10
- package/lib/base-app-domain/RelationAuth/Schema.d.ts +180 -180
- package/lib/base-app-domain/RelationAuth/Schema.js +2 -2
- package/lib/base-app-domain/RelationAuth/Storage.d.ts +3 -3
- package/lib/base-app-domain/RelationAuth/Storage.js +46 -46
- package/lib/base-app-domain/Storage.d.ts +3 -3
- package/lib/base-app-domain/Storage.js +27 -27
- package/lib/base-app-domain/User/Action.d.ts +10 -10
- package/lib/base-app-domain/User/Action.js +12 -12
- package/lib/base-app-domain/User/Schema.d.ts +197 -197
- package/lib/base-app-domain/User/Schema.js +2 -2
- package/lib/base-app-domain/User/Storage.d.ts +3 -3
- package/lib/base-app-domain/User/Storage.js +33 -33
- package/lib/base-app-domain/UserEntityGrant/Action.d.ts +5 -5
- package/lib/base-app-domain/UserEntityGrant/Action.js +5 -5
- package/lib/base-app-domain/UserEntityGrant/Schema.d.ts +157 -157
- package/lib/base-app-domain/UserEntityGrant/Schema.js +2 -2
- package/lib/base-app-domain/UserEntityGrant/Storage.d.ts +3 -3
- package/lib/base-app-domain/UserEntityGrant/Storage.js +29 -29
- package/lib/base-app-domain/UserRelation/Schema.d.ts +194 -194
- package/lib/base-app-domain/UserRelation/Schema.js +2 -2
- package/lib/base-app-domain/UserRelation/Storage.d.ts +3 -3
- package/lib/base-app-domain/UserRelation/Storage.js +56 -56
- package/lib/base-app-domain/_SubQuery.d.ts +112 -112
- package/lib/base-app-domain/_SubQuery.js +2 -2
- package/lib/base-app-domain/index.d.ts +4 -4
- package/lib/base-app-domain/index.js +7 -7
- package/lib/checkers/index.d.ts +5 -5
- package/lib/checkers/index.js +14 -14
- package/lib/compiler/env.d.ts +14 -14
- package/lib/compiler/env.js +50 -50
- package/lib/compiler/localeBuilder.d.ts +22 -22
- package/lib/compiler/localeBuilder.js +169 -169
- package/lib/compiler/schemalBuilder.d.ts +11 -11
- package/lib/compiler/schemalBuilder.js +3787 -3787
- package/lib/compiler/uiBuilder.d.ts +1 -1
- package/lib/compiler/uiBuilder.js +3 -3
- package/lib/entities/ActionAuth.d.ts +12 -12
- package/lib/entities/ActionAuth.js +29 -29
- package/lib/entities/I18n.d.ts +9 -9
- package/lib/entities/I18n.js +37 -37
- package/lib/entities/Modi.d.ts +11 -11
- package/lib/entities/Modi.js +49 -49
- package/lib/entities/ModiEntity.d.ts +8 -8
- package/lib/entities/ModiEntity.js +18 -18
- package/lib/entities/Oper.d.ts +11 -11
- package/lib/entities/Oper.js +21 -21
- package/lib/entities/OperEntity.d.ts +8 -8
- package/lib/entities/OperEntity.js +18 -18
- package/lib/entities/Relation.d.ts +8 -8
- package/lib/entities/Relation.js +35 -35
- package/lib/entities/RelationAuth.d.ts +8 -8
- package/lib/entities/RelationAuth.js +34 -34
- package/lib/entities/User.d.ts +8 -8
- package/lib/entities/User.js +31 -31
- package/lib/entities/UserEntityGrant.d.ts +8 -8
- package/lib/entities/UserEntityGrant.js +18 -18
- package/lib/entities/UserRelation.d.ts +10 -10
- package/lib/entities/UserRelation.js +38 -38
- package/lib/store/AsyncRowStore.d.ts +58 -58
- package/lib/store/AsyncRowStore.js +190 -190
- package/lib/store/CascadeStore.d.ts +103 -103
- package/lib/store/CascadeStore.js +2035 -2035
- package/lib/store/RelationAuth.d.ts +103 -103
- package/lib/store/RelationAuth.js +1492 -1492
- package/lib/store/SyncRowStore.d.ts +29 -29
- package/lib/store/SyncRowStore.js +49 -48
- package/lib/store/TriggerExecutor.d.ts +31 -31
- package/lib/store/TriggerExecutor.js +532 -532
- package/lib/store/actionAuth.d.ts +4 -4
- package/lib/store/actionAuth.js +40 -40
- package/lib/store/actionDef.d.ts +10 -10
- package/lib/store/actionDef.js +351 -351
- package/lib/store/checker.d.ts +26 -26
- package/lib/store/checker.js +623 -623
- package/lib/store/filter.d.ts +123 -123
- package/lib/store/filter.js +1761 -1761
- package/lib/store/modi.d.ts +13 -13
- package/lib/store/modi.js +315 -315
- package/lib/store/relation.d.ts +12 -12
- package/lib/store/relation.js +67 -67
- package/lib/timers/oper.d.ts +18 -18
- package/lib/timers/oper.js +60 -60
- package/lib/timers/vaccum.d.ts +20 -20
- package/lib/timers/vaccum.js +176 -176
- package/lib/triggers/index.d.ts +5 -5
- package/lib/triggers/index.js +8 -8
- package/lib/types/Action.d.ts +20 -20
- package/lib/types/Action.js +2 -2
- package/lib/types/AppLoader.d.ts +11 -11
- package/lib/types/AppLoader.js +10 -10
- package/lib/types/Aspect.d.ts +13 -13
- package/lib/types/Aspect.js +4 -4
- package/lib/types/Auth.d.ts +74 -74
- package/lib/types/Auth.js +2 -2
- package/lib/types/Connector.d.ts +33 -33
- package/lib/types/Connector.js +9 -9
- package/lib/types/Context.d.ts +7 -7
- package/lib/types/Context.js +3 -3
- package/lib/types/DataType.d.ts +24 -24
- package/lib/types/DataType.js +6 -6
- package/lib/types/Demand.d.ts +88 -88
- package/lib/types/Demand.js +10 -10
- package/lib/types/Endpoint.d.ts +11 -11
- package/lib/types/Endpoint.js +3 -3
- package/lib/types/Entity.d.ts +193 -193
- package/lib/types/Entity.js +14 -14
- package/lib/types/EntityDesc.d.ts +8 -8
- package/lib/types/EntityDesc.js +2 -2
- package/lib/types/Environment.d.ts +57 -57
- package/lib/types/Environment.js +2 -2
- package/lib/types/Exception.d.ts +115 -115
- package/lib/types/Exception.js +389 -389
- package/lib/types/Expression.d.ts +163 -163
- package/lib/types/Expression.js +427 -427
- package/lib/types/Geo.d.ts +18 -18
- package/lib/types/Geo.js +2 -2
- package/lib/types/Locale.d.ts +25 -25
- package/lib/types/Locale.js +2 -2
- package/lib/types/Logger.d.ts +6 -6
- package/lib/types/Logger.js +3 -3
- package/lib/types/Polyfill.d.ts +24 -24
- package/lib/types/Polyfill.js +2 -2
- package/lib/types/Port.d.ts +18 -18
- package/lib/types/Port.js +2 -2
- package/lib/types/RowStore.d.ts +18 -18
- package/lib/types/RowStore.js +34 -34
- package/lib/types/Storage.d.ts +57 -57
- package/lib/types/Storage.js +2 -2
- package/lib/types/Style.d.ts +11 -11
- package/lib/types/Style.js +2 -2
- package/lib/types/Timer.d.ts +14 -14
- package/lib/types/Timer.js +2 -2
- package/lib/types/Trigger.d.ts +108 -108
- package/lib/types/Trigger.js +54 -54
- package/lib/types/Txn.d.ts +2 -2
- package/lib/types/Txn.js +3 -3
- package/lib/types/Watcher.d.ts +19 -19
- package/lib/types/Watcher.js +4 -4
- package/lib/types/index.d.ts +24 -24
- package/lib/types/index.js +27 -27
- package/lib/types/schema/DataTypes.d.ts +34 -34
- package/lib/types/schema/DataTypes.js +3 -3
- package/lib/utils/SimpleConnector.d.ts +48 -48
- package/lib/utils/SimpleConnector.js +180 -180
- package/lib/utils/assert.d.ts +5 -5
- package/lib/utils/assert.js +9 -9
- package/lib/utils/concurrent.d.ts +15 -15
- package/lib/utils/concurrent.js +89 -89
- package/lib/utils/date.d.ts +1 -1
- package/lib/utils/date.js +18 -18
- package/lib/utils/geo.d.ts +4 -4
- package/lib/utils/geo.js +24 -24
- package/lib/utils/lodash.d.ts +20 -20
- package/lib/utils/lodash.js +55 -55
- package/lib/utils/mask.d.ts +5 -5
- package/lib/utils/mask.js +35 -35
- package/lib/utils/money.d.ts +6 -6
- package/lib/utils/money.js +40 -40
- package/lib/utils/random/random.d.ts +1 -1
- package/lib/utils/random/random.js +24 -24
- package/lib/utils/random/random.mp.d.ts +1 -1
- package/lib/utils/random/random.mp.js +25 -25
- package/lib/utils/random/random.web.d.ts +1 -1
- package/lib/utils/random/random.web.js +17 -17
- package/lib/utils/string.d.ts +28 -28
- package/lib/utils/string.js +82 -82
- package/lib/utils/url.d.ts +1 -1
- package/lib/utils/url.js +12 -12
- package/lib/utils/uuid.d.ts +17 -17
- package/lib/utils/uuid.js +257 -257
- package/lib/utils/validator.d.ts +25 -25
- package/lib/utils/validator.js +128 -128
- package/lib/utils/version.d.ts +7 -7
- package/lib/utils/version.js +21 -21
- package/package.json +49 -49
- package/src/entities/ActionAuth.ts +41 -41
- package/src/entities/I18n.ts +46 -46
- package/src/entities/Modi.ts +69 -69
- package/src/entities/ModiEntity.ts +26 -26
- package/src/entities/Oper.ts +32 -32
- package/src/entities/OperEntity.ts +27 -27
- package/src/entities/Relation.ts +43 -43
- package/src/entities/RelationAuth.ts +43 -43
- package/src/entities/User.ts +48 -48
- package/src/entities/UserEntityGrant.ts +27 -27
- package/src/entities/UserRelation.ts +50 -50
package/lib/entities/User.d.ts
CHANGED
|
@@ -1,8 +1,8 @@
|
|
|
1
|
-
import { String, Text } from '../types/DataType';
|
|
2
|
-
import { EntityShape } from '../types/Entity';
|
|
3
|
-
export interface Schema extends EntityShape {
|
|
4
|
-
name?: String<16>;
|
|
5
|
-
nickname?: String<64>;
|
|
6
|
-
password?: Text;
|
|
7
|
-
ref?: Schema;
|
|
8
|
-
}
|
|
1
|
+
import { String, Text } from '../types/DataType';
|
|
2
|
+
import { EntityShape } from '../types/Entity';
|
|
3
|
+
export interface Schema extends EntityShape {
|
|
4
|
+
name?: String<16>;
|
|
5
|
+
nickname?: String<64>;
|
|
6
|
+
password?: Text;
|
|
7
|
+
ref?: Schema;
|
|
8
|
+
}
|
package/lib/entities/User.js
CHANGED
|
@@ -1,31 +1,31 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
;
|
|
4
|
-
var UserActionDef = {
|
|
5
|
-
stm: {
|
|
6
|
-
mergeTo: ['normal', 'merged'],
|
|
7
|
-
},
|
|
8
|
-
};
|
|
9
|
-
var entityDesc = {
|
|
10
|
-
locales: {
|
|
11
|
-
zh_CN: {
|
|
12
|
-
name: '用户',
|
|
13
|
-
attr: {
|
|
14
|
-
name: '姓名',
|
|
15
|
-
nickname: '昵称',
|
|
16
|
-
password: '密码',
|
|
17
|
-
ref: '指向用户',
|
|
18
|
-
userState: '状态',
|
|
19
|
-
},
|
|
20
|
-
action: {
|
|
21
|
-
mergeTo: '合并',
|
|
22
|
-
},
|
|
23
|
-
v: {
|
|
24
|
-
userState: {
|
|
25
|
-
normal: '正常',
|
|
26
|
-
merged: '已被合并',
|
|
27
|
-
},
|
|
28
|
-
}
|
|
29
|
-
},
|
|
30
|
-
},
|
|
31
|
-
};
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
;
|
|
4
|
+
var UserActionDef = {
|
|
5
|
+
stm: {
|
|
6
|
+
mergeTo: ['normal', 'merged'],
|
|
7
|
+
},
|
|
8
|
+
};
|
|
9
|
+
var entityDesc = {
|
|
10
|
+
locales: {
|
|
11
|
+
zh_CN: {
|
|
12
|
+
name: '用户',
|
|
13
|
+
attr: {
|
|
14
|
+
name: '姓名',
|
|
15
|
+
nickname: '昵称',
|
|
16
|
+
password: '密码',
|
|
17
|
+
ref: '指向用户',
|
|
18
|
+
userState: '状态',
|
|
19
|
+
},
|
|
20
|
+
action: {
|
|
21
|
+
mergeTo: '合并',
|
|
22
|
+
},
|
|
23
|
+
v: {
|
|
24
|
+
userState: {
|
|
25
|
+
normal: '正常',
|
|
26
|
+
merged: '已被合并',
|
|
27
|
+
},
|
|
28
|
+
}
|
|
29
|
+
},
|
|
30
|
+
},
|
|
31
|
+
};
|
|
@@ -1,8 +1,8 @@
|
|
|
1
|
-
import { String } from '../types/DataType';
|
|
2
|
-
import { EntityShape } from '../types/Entity';
|
|
3
|
-
import { Schema as Relation } from './Relation';
|
|
4
|
-
export interface Schema extends EntityShape {
|
|
5
|
-
entity: String<32>;
|
|
6
|
-
entityId: String<64>;
|
|
7
|
-
relation: Relation;
|
|
8
|
-
}
|
|
1
|
+
import { String } from '../types/DataType';
|
|
2
|
+
import { EntityShape } from '../types/Entity';
|
|
3
|
+
import { Schema as Relation } from './Relation';
|
|
4
|
+
export interface Schema extends EntityShape {
|
|
5
|
+
entity: String<32>;
|
|
6
|
+
entityId: String<64>;
|
|
7
|
+
relation: Relation;
|
|
8
|
+
}
|
|
@@ -1,18 +1,18 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
;
|
|
4
|
-
var entityDesc = {
|
|
5
|
-
locales: {
|
|
6
|
-
zh_CN: {
|
|
7
|
-
name: '用户授权',
|
|
8
|
-
attr: {
|
|
9
|
-
relation: '关系',
|
|
10
|
-
entity: '关联对象',
|
|
11
|
-
entityId: '关联对象id',
|
|
12
|
-
},
|
|
13
|
-
action: {
|
|
14
|
-
confirm: '领取',
|
|
15
|
-
},
|
|
16
|
-
},
|
|
17
|
-
},
|
|
18
|
-
};
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
;
|
|
4
|
+
var entityDesc = {
|
|
5
|
+
locales: {
|
|
6
|
+
zh_CN: {
|
|
7
|
+
name: '用户授权',
|
|
8
|
+
attr: {
|
|
9
|
+
relation: '关系',
|
|
10
|
+
entity: '关联对象',
|
|
11
|
+
entityId: '关联对象id',
|
|
12
|
+
},
|
|
13
|
+
action: {
|
|
14
|
+
confirm: '领取',
|
|
15
|
+
},
|
|
16
|
+
},
|
|
17
|
+
},
|
|
18
|
+
};
|
|
@@ -1,10 +1,10 @@
|
|
|
1
|
-
import { String } from '../types/DataType';
|
|
2
|
-
import { EntityShape } from '../types/Entity';
|
|
3
|
-
import { Schema as User } from './User';
|
|
4
|
-
import { Schema as Relation } from './Relation';
|
|
5
|
-
export interface Schema extends EntityShape {
|
|
6
|
-
user: User;
|
|
7
|
-
relation: Relation;
|
|
8
|
-
entity: String<32>;
|
|
9
|
-
entityId: String<64>;
|
|
10
|
-
}
|
|
1
|
+
import { String } from '../types/DataType';
|
|
2
|
+
import { EntityShape } from '../types/Entity';
|
|
3
|
+
import { Schema as User } from './User';
|
|
4
|
+
import { Schema as Relation } from './Relation';
|
|
5
|
+
export interface Schema extends EntityShape {
|
|
6
|
+
user: User;
|
|
7
|
+
relation: Relation;
|
|
8
|
+
entity: String<32>;
|
|
9
|
+
entityId: String<64>;
|
|
10
|
+
}
|
|
@@ -1,38 +1,38 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
;
|
|
4
|
-
var entityDesc = {
|
|
5
|
-
locales: {
|
|
6
|
-
zh_CN: {
|
|
7
|
-
name: '用户对象关系',
|
|
8
|
-
attr: {
|
|
9
|
-
user: '关系',
|
|
10
|
-
relation: '目标关系',
|
|
11
|
-
entity: '目标对象',
|
|
12
|
-
entityId: '目标对象ID',
|
|
13
|
-
},
|
|
14
|
-
},
|
|
15
|
-
},
|
|
16
|
-
indexes: [
|
|
17
|
-
{
|
|
18
|
-
name: 'index_user_entity_entityId_relation',
|
|
19
|
-
attributes: [
|
|
20
|
-
{
|
|
21
|
-
name: 'user',
|
|
22
|
-
},
|
|
23
|
-
{
|
|
24
|
-
name: 'entity',
|
|
25
|
-
},
|
|
26
|
-
{
|
|
27
|
-
name: 'entityId',
|
|
28
|
-
},
|
|
29
|
-
{
|
|
30
|
-
name: 'relation',
|
|
31
|
-
},
|
|
32
|
-
],
|
|
33
|
-
config: {
|
|
34
|
-
unique: true,
|
|
35
|
-
},
|
|
36
|
-
},
|
|
37
|
-
]
|
|
38
|
-
};
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
;
|
|
4
|
+
var entityDesc = {
|
|
5
|
+
locales: {
|
|
6
|
+
zh_CN: {
|
|
7
|
+
name: '用户对象关系',
|
|
8
|
+
attr: {
|
|
9
|
+
user: '关系',
|
|
10
|
+
relation: '目标关系',
|
|
11
|
+
entity: '目标对象',
|
|
12
|
+
entityId: '目标对象ID',
|
|
13
|
+
},
|
|
14
|
+
},
|
|
15
|
+
},
|
|
16
|
+
indexes: [
|
|
17
|
+
{
|
|
18
|
+
name: 'index_user_entity_entityId_relation',
|
|
19
|
+
attributes: [
|
|
20
|
+
{
|
|
21
|
+
name: 'user',
|
|
22
|
+
},
|
|
23
|
+
{
|
|
24
|
+
name: 'entity',
|
|
25
|
+
},
|
|
26
|
+
{
|
|
27
|
+
name: 'entityId',
|
|
28
|
+
},
|
|
29
|
+
{
|
|
30
|
+
name: 'relation',
|
|
31
|
+
},
|
|
32
|
+
],
|
|
33
|
+
config: {
|
|
34
|
+
unique: true,
|
|
35
|
+
},
|
|
36
|
+
},
|
|
37
|
+
]
|
|
38
|
+
};
|
|
@@ -1,58 +1,58 @@
|
|
|
1
|
-
/// <reference types="node" />
|
|
2
|
-
import { EntityDict, RowStore, OperateOption, OperationResult, SelectOption, Context, TxnOption, OpRecord, AggregationResult } from "../types";
|
|
3
|
-
import { IncomingHttpHeaders } from "http";
|
|
4
|
-
export declare abstract class AsyncContext<ED extends EntityDict> implements Context {
|
|
5
|
-
rowStore: AsyncRowStore<ED, this>;
|
|
6
|
-
private uuid?;
|
|
7
|
-
opRecords: OpRecord<ED>[];
|
|
8
|
-
private scene?;
|
|
9
|
-
private headers?;
|
|
10
|
-
private message?;
|
|
11
|
-
events: {
|
|
12
|
-
commit: Array<() => Promise<void>>;
|
|
13
|
-
rollback: Array<() => Promise<void>>;
|
|
14
|
-
};
|
|
15
|
-
/**
|
|
16
|
-
* 在返回结果前调用,对数据行进行一些预处理,比如将一些敏感的列隐藏
|
|
17
|
-
*/
|
|
18
|
-
abstract refineOpRecords(): Promise<void>;
|
|
19
|
-
constructor(store: AsyncRowStore<ED, AsyncContext<ED>>, headers?: IncomingHttpHeaders);
|
|
20
|
-
setHeaders(headers: IncomingHttpHeaders): void;
|
|
21
|
-
getHeader(key: string): string | string[] | undefined;
|
|
22
|
-
getScene(): string | undefined;
|
|
23
|
-
setScene(scene?: string): void;
|
|
24
|
-
private resetEvents;
|
|
25
|
-
on(event: 'commit' | 'rollback', callback: () => Promise<void>): void;
|
|
26
|
-
/**
|
|
27
|
-
* 一个context中不应该有并发的事务,这里将事务串行化,使用的时候千万要注意不要自己等自己
|
|
28
|
-
* @param options
|
|
29
|
-
*/
|
|
30
|
-
begin(options?: TxnOption): Promise<void>;
|
|
31
|
-
commit(): Promise<void>;
|
|
32
|
-
rollback(): Promise<void>;
|
|
33
|
-
operate<T extends keyof ED, OP extends OperateOption>(entity: T, operation: ED[T]['Operation'], option: OP): Promise<OperationResult<ED>>;
|
|
34
|
-
select<T extends keyof ED, OP extends SelectOption>(entity: T, selection: ED[T]['Selection'], option: OP): Promise<Partial<ED[T]["Schema"]>[]>;
|
|
35
|
-
aggregate<T extends keyof ED, OP extends SelectOption>(entity: T, aggregation: ED[T]['Aggregation'], option: OP): Promise<AggregationResult<ED[T]["Schema"]>>;
|
|
36
|
-
count<T extends keyof ED, OP extends SelectOption>(entity: T, selection: Pick<ED[T]['Selection'], 'filter' | 'count'>, option: OP): Promise<number>;
|
|
37
|
-
exec(script: string, txnId?: string): Promise<void>;
|
|
38
|
-
mergeMultipleResults(toBeMerged: OperationResult<ED>[]): OperationResult<ED>;
|
|
39
|
-
getCurrentTxnId(): string | undefined;
|
|
40
|
-
getSchema(): import("../types").StorageSchema<ED>;
|
|
41
|
-
setMessage(message: string): void;
|
|
42
|
-
getMessage(): string | undefined;
|
|
43
|
-
abstract isRoot(): boolean;
|
|
44
|
-
abstract getCurrentUserId(allowUnloggedIn?: boolean): string | undefined;
|
|
45
|
-
abstract toString(): string;
|
|
46
|
-
abstract allowUserUpdate(): boolean;
|
|
47
|
-
abstract openRootMode(): () => void;
|
|
48
|
-
}
|
|
49
|
-
export interface AsyncRowStore<ED extends EntityDict, Cxt extends Context> extends RowStore<ED> {
|
|
50
|
-
operate<T extends keyof ED, OP extends OperateOption>(entity: T, operation: ED[T]['Operation'], context: Cxt, option: OP): Promise<OperationResult<ED>>;
|
|
51
|
-
select<T extends keyof ED, OP extends SelectOption>(entity: T, selection: ED[T]['Selection'], context: Cxt, option: OP): Promise<Partial<ED[T]['Schema']>[]>;
|
|
52
|
-
aggregate<T extends keyof ED, OP extends SelectOption>(entity: T, aggregation: ED[T]['Aggregation'], context: Cxt, option: OP): Promise<AggregationResult<ED[T]['Schema']>>;
|
|
53
|
-
count<T extends keyof ED, OP extends SelectOption>(entity: T, selection: Pick<ED[T]['Selection'], 'filter' | 'count'>, context: Cxt, option: OP): Promise<number>;
|
|
54
|
-
begin(option?: TxnOption): Promise<string>;
|
|
55
|
-
commit(txnId: string): Promise<void>;
|
|
56
|
-
rollback(txnId: string): Promise<void>;
|
|
57
|
-
exec(script: string, txnId?: string): Promise<void>;
|
|
58
|
-
}
|
|
1
|
+
/// <reference types="node" />
|
|
2
|
+
import { EntityDict, RowStore, OperateOption, OperationResult, SelectOption, Context, TxnOption, OpRecord, AggregationResult } from "../types";
|
|
3
|
+
import { IncomingHttpHeaders } from "http";
|
|
4
|
+
export declare abstract class AsyncContext<ED extends EntityDict> implements Context {
|
|
5
|
+
rowStore: AsyncRowStore<ED, this>;
|
|
6
|
+
private uuid?;
|
|
7
|
+
opRecords: OpRecord<ED>[];
|
|
8
|
+
private scene?;
|
|
9
|
+
private headers?;
|
|
10
|
+
private message?;
|
|
11
|
+
events: {
|
|
12
|
+
commit: Array<() => Promise<void>>;
|
|
13
|
+
rollback: Array<() => Promise<void>>;
|
|
14
|
+
};
|
|
15
|
+
/**
|
|
16
|
+
* 在返回结果前调用,对数据行进行一些预处理,比如将一些敏感的列隐藏
|
|
17
|
+
*/
|
|
18
|
+
abstract refineOpRecords(): Promise<void>;
|
|
19
|
+
constructor(store: AsyncRowStore<ED, AsyncContext<ED>>, headers?: IncomingHttpHeaders);
|
|
20
|
+
setHeaders(headers: IncomingHttpHeaders): void;
|
|
21
|
+
getHeader(key: string): string | string[] | undefined;
|
|
22
|
+
getScene(): string | undefined;
|
|
23
|
+
setScene(scene?: string): void;
|
|
24
|
+
private resetEvents;
|
|
25
|
+
on(event: 'commit' | 'rollback', callback: () => Promise<void>): void;
|
|
26
|
+
/**
|
|
27
|
+
* 一个context中不应该有并发的事务,这里将事务串行化,使用的时候千万要注意不要自己等自己
|
|
28
|
+
* @param options
|
|
29
|
+
*/
|
|
30
|
+
begin(options?: TxnOption): Promise<void>;
|
|
31
|
+
commit(): Promise<void>;
|
|
32
|
+
rollback(): Promise<void>;
|
|
33
|
+
operate<T extends keyof ED, OP extends OperateOption>(entity: T, operation: ED[T]['Operation'], option: OP): Promise<OperationResult<ED>>;
|
|
34
|
+
select<T extends keyof ED, OP extends SelectOption>(entity: T, selection: ED[T]['Selection'], option: OP): Promise<Partial<ED[T]["Schema"]>[]>;
|
|
35
|
+
aggregate<T extends keyof ED, OP extends SelectOption>(entity: T, aggregation: ED[T]['Aggregation'], option: OP): Promise<AggregationResult<ED[T]["Schema"]>>;
|
|
36
|
+
count<T extends keyof ED, OP extends SelectOption>(entity: T, selection: Pick<ED[T]['Selection'], 'filter' | 'count'>, option: OP): Promise<number>;
|
|
37
|
+
exec(script: string, txnId?: string): Promise<void>;
|
|
38
|
+
mergeMultipleResults(toBeMerged: OperationResult<ED>[]): OperationResult<ED>;
|
|
39
|
+
getCurrentTxnId(): string | undefined;
|
|
40
|
+
getSchema(): import("../types").StorageSchema<ED>;
|
|
41
|
+
setMessage(message: string): void;
|
|
42
|
+
getMessage(): string | undefined;
|
|
43
|
+
abstract isRoot(): boolean;
|
|
44
|
+
abstract getCurrentUserId(allowUnloggedIn?: boolean): string | undefined;
|
|
45
|
+
abstract toString(): string;
|
|
46
|
+
abstract allowUserUpdate(): boolean;
|
|
47
|
+
abstract openRootMode(): () => void;
|
|
48
|
+
}
|
|
49
|
+
export interface AsyncRowStore<ED extends EntityDict, Cxt extends Context> extends RowStore<ED> {
|
|
50
|
+
operate<T extends keyof ED, OP extends OperateOption>(entity: T, operation: ED[T]['Operation'], context: Cxt, option: OP): Promise<OperationResult<ED>>;
|
|
51
|
+
select<T extends keyof ED, OP extends SelectOption>(entity: T, selection: ED[T]['Selection'], context: Cxt, option: OP): Promise<Partial<ED[T]['Schema']>[]>;
|
|
52
|
+
aggregate<T extends keyof ED, OP extends SelectOption>(entity: T, aggregation: ED[T]['Aggregation'], context: Cxt, option: OP): Promise<AggregationResult<ED[T]['Schema']>>;
|
|
53
|
+
count<T extends keyof ED, OP extends SelectOption>(entity: T, selection: Pick<ED[T]['Selection'], 'filter' | 'count'>, context: Cxt, option: OP): Promise<number>;
|
|
54
|
+
begin(option?: TxnOption): Promise<string>;
|
|
55
|
+
commit(txnId: string): Promise<void>;
|
|
56
|
+
rollback(txnId: string): Promise<void>;
|
|
57
|
+
exec(script: string, txnId?: string): Promise<void>;
|
|
58
|
+
}
|