oak-domain 3.0.3 → 4.0.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/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 +25 -38
- package/lib/base-app-domain/ActionAuth/Schema.d.ts +186 -160
- package/lib/base-app-domain/ActionAuth/Storage.js +39 -42
- package/lib/base-app-domain/ActionDefDict.d.ts +8 -9
- package/lib/base-app-domain/ActionDefDict.js +9 -11
- package/lib/base-app-domain/EntityDict.d.ts +28 -24
- 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/Storage.js +63 -63
- package/lib/base-app-domain/ModiEntity/Schema.d.ts +384 -311
- package/lib/base-app-domain/ModiEntity/Storage.js +30 -30
- package/lib/base-app-domain/Oper/Schema.d.ts +153 -152
- package/lib/base-app-domain/Oper/Storage.js +38 -38
- package/lib/base-app-domain/OperEntity/Schema.d.ts +373 -300
- package/lib/base-app-domain/OperEntity/Storage.js +30 -30
- package/lib/base-app-domain/Path/Schema.d.ts +149 -0
- package/lib/base-app-domain/Path/Schema.js +2 -0
- package/lib/base-app-domain/Path/Storage.d.ts +3 -0
- package/lib/base-app-domain/Path/Storage.js +54 -0
- package/lib/base-app-domain/Relation/Schema.d.ts +188 -188
- package/lib/base-app-domain/Relation/Storage.js +54 -54
- package/lib/base-app-domain/Relation.d.ts +2 -10
- package/lib/base-app-domain/Relation.js +4 -10
- package/lib/base-app-domain/RelationAuth/Schema.d.ts +214 -180
- package/lib/base-app-domain/RelationAuth/Storage.js +44 -46
- package/lib/base-app-domain/Storage.js +31 -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 +210 -197
- package/lib/base-app-domain/User/Storage.js +33 -33
- package/lib/base-app-domain/UserEntityClaim/Schema.d.ts +264 -0
- package/lib/base-app-domain/UserEntityClaim/Schema.js +2 -0
- package/lib/base-app-domain/UserEntityClaim/Storage.d.ts +3 -0
- package/lib/base-app-domain/UserEntityClaim/Storage.js +37 -0
- 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 +131 -157
- package/lib/base-app-domain/UserEntityGrant/Storage.js +25 -29
- package/lib/base-app-domain/UserRelation/Schema.d.ts +208 -194
- package/lib/base-app-domain/UserRelation/Storage.js +56 -56
- package/lib/base-app-domain/_SubQuery.d.ts +142 -112
- 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 +13 -14
- package/lib/compiler/entities.d.ts +2 -0
- package/lib/compiler/entities.js +7 -0
- package/lib/compiler/env.d.ts +13 -14
- package/lib/compiler/env.js +45 -50
- package/lib/compiler/localeBuilder.d.ts +27 -22
- package/lib/compiler/localeBuilder.js +184 -169
- package/lib/compiler/schemalBuilder.d.ts +27 -11
- package/lib/compiler/schemalBuilder.js +3569 -3787
- package/lib/entities/ActionAuth.d.ts +10 -12
- package/lib/entities/ActionAuth.js +31 -29
- package/lib/entities/I18n.d.ts +9 -9
- package/lib/entities/I18n.js +36 -37
- package/lib/entities/Modi.js +49 -49
- package/lib/entities/ModiEntity.js +18 -18
- package/lib/entities/Oper.js +21 -21
- package/lib/entities/OperEntity.js +18 -18
- package/lib/entities/Path.d.ts +8 -0
- package/lib/entities/Path.js +35 -0
- 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.js +31 -31
- package/lib/entities/UserEntityClaim.d.ts +13 -0
- package/lib/entities/UserEntityClaim.js +17 -0
- package/lib/entities/UserEntityGrant.d.ts +9 -8
- package/lib/entities/UserEntityGrant.js +15 -18
- package/lib/entities/UserRelation.d.ts +10 -10
- package/lib/entities/UserRelation.js +38 -38
- package/lib/index.d.ts +23 -0
- package/lib/index.js +37 -0
- package/lib/store/AsyncRowStore.d.ts +60 -58
- package/lib/store/AsyncRowStore.js +118 -190
- package/lib/store/CascadeStore.d.ts +104 -103
- package/lib/store/CascadeStore.js +1688 -2036
- package/lib/store/RelationAuth.d.ts +96 -103
- package/lib/store/RelationAuth.js +1336 -1492
- package/lib/store/SyncRowStore.d.ts +29 -29
- package/lib/store/SyncRowStore.js +50 -49
- package/lib/store/TriggerExecutor.d.ts +38 -31
- package/lib/store/TriggerExecutor.js +459 -532
- package/lib/store/actionAuth.d.ts +4 -4
- package/lib/store/actionAuth.js +25 -40
- package/lib/store/actionDef.d.ts +10 -10
- package/lib/store/actionDef.js +278 -353
- package/lib/store/checker.d.ts +26 -26
- package/lib/store/checker.js +487 -623
- package/lib/store/filter.d.ts +85 -123
- package/lib/store/filter.js +1651 -1761
- package/lib/store/modi.d.ts +13 -13
- package/lib/store/modi.js +254 -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 +57 -60
- package/lib/timers/vaccum.d.ts +20 -20
- package/lib/timers/vaccum.js +111 -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/AppLoader.d.ts +17 -11
- package/lib/types/AppLoader.js +10 -10
- package/lib/types/Aspect.d.ts +1 -3
- package/lib/types/Auth.d.ts +70 -74
- package/lib/types/Cluster.d.ts +5 -0
- package/lib/types/Cluster.js +2 -0
- package/lib/types/Connector.d.ts +38 -34
- package/lib/types/Connector.js +2 -9
- package/lib/types/DataType.d.ts +25 -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/Entity.d.ts +203 -198
- package/lib/types/Entity.js +15 -15
- package/lib/types/EntityDesc.d.ts +9 -8
- package/lib/types/EntityDesc.js +2 -2
- package/lib/types/Environment.d.ts +88 -57
- package/lib/types/Environment.js +2 -2
- package/lib/types/Exception.d.ts +147 -120
- package/lib/types/Exception.js +406 -406
- package/lib/types/Expression.d.ts +163 -163
- package/lib/types/Expression.js +397 -427
- package/lib/types/Geo.d.ts +18 -18
- package/lib/types/Locale.d.ts +25 -25
- package/lib/types/Logger.d.ts +6 -6
- package/lib/types/Polyfill.d.ts +24 -24
- package/lib/types/Port.d.ts +18 -18
- package/lib/types/RowStore.d.ts +18 -18
- package/lib/types/RowStore.js +33 -34
- package/lib/types/Storage.d.ts +58 -57
- package/lib/types/Style.d.ts +11 -11
- package/lib/types/Timer.d.ts +14 -14
- package/lib/types/Trigger.d.ts +124 -108
- package/lib/types/Trigger.js +58 -54
- package/lib/types/Watcher.d.ts +19 -19
- package/lib/types/index.d.ts +26 -24
- package/lib/types/index.js +29 -27
- package/lib/types/schema/DataTypes.d.ts +34 -34
- package/lib/utils/SimpleConnector.d.ts +64 -50
- package/lib/utils/SimpleConnector.js +206 -184
- 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 +63 -89
- package/lib/utils/date.js +18 -18
- package/lib/utils/{url.d.ts → domain.d.ts} +1 -1
- package/lib/utils/{url.js → domain.js} +11 -12
- package/lib/utils/geo.js +24 -24
- package/lib/utils/lodash.d.ts +24 -20
- package/lib/utils/lodash.js +46 -55
- package/lib/utils/mask.js +34 -35
- package/lib/utils/money.d.ts +6 -6
- package/lib/utils/money.js +51 -40
- package/lib/utils/projection.d.ts +4 -0
- package/lib/utils/projection.js +15 -0
- package/lib/utils/random/random.js +19 -24
- package/lib/utils/random/random.mp.js +14 -25
- package/lib/utils/random/random.native.d.ts +1 -0
- package/lib/utils/random/random.native.js +14 -0
- package/lib/utils/random/random.web.js +11 -17
- package/lib/utils/string.d.ts +28 -28
- package/lib/utils/string.js +69 -82
- package/lib/utils/url/index.d.ts +7 -0
- package/lib/utils/url/index.js +8 -0
- package/lib/utils/url/index.mp.d.ts +4 -0
- package/lib/utils/url/index.mp.js +8 -0
- package/lib/utils/url/index.native.d.ts +12 -0
- package/lib/utils/url/index.native.js +7 -0
- package/lib/utils/url/index.web.d.ts +12 -0
- package/lib/utils/url/index.web.js +7 -0
- package/lib/utils/uuid.d.ts +17 -17
- package/lib/utils/uuid.js +218 -257
- package/lib/utils/validator.d.ts +26 -25
- package/lib/utils/validator.js +131 -128
- package/lib/utils/version.js +21 -21
- package/package.json +51 -49
- package/src/entities/ActionAuth.ts +41 -41
- package/src/entities/I18n.ts +45 -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/Path.ts +43 -0
- package/src/entities/Relation.ts +43 -43
- package/src/entities/RelationAuth.ts +44 -43
- package/src/entities/User.ts +48 -48
- package/src/entities/UserEntityClaim.ts +30 -0
- package/src/entities/UserEntityGrant.ts +24 -27
- package/src/entities/UserRelation.ts +50 -50
package/src/entities/Modi.ts
CHANGED
|
@@ -1,69 +1,69 @@
|
|
|
1
|
-
import { ActionDef } from '../types/Action';
|
|
2
|
-
import { String } from '../types/DataType';
|
|
3
|
-
import { EntityShape } from '../types/Entity';
|
|
4
|
-
import { EntityDesc } from '../types/EntityDesc';
|
|
5
|
-
|
|
6
|
-
export interface Schema extends EntityShape {
|
|
7
|
-
targetEntity: String<32>; // 要操作的目标对象
|
|
8
|
-
entity: String<32>; // 关联的目标对象
|
|
9
|
-
entityId: String<64>; // 关联的目标对象id
|
|
10
|
-
action: String<16>;
|
|
11
|
-
data: Object;
|
|
12
|
-
filter?: Object;
|
|
13
|
-
extra?: Object;
|
|
14
|
-
};
|
|
15
|
-
|
|
16
|
-
type IState = 'active' | 'applied' | 'abandoned';
|
|
17
|
-
type IAction = 'apply' | 'abandon';
|
|
18
|
-
|
|
19
|
-
const IActionDef: ActionDef<IAction, IState> = {
|
|
20
|
-
stm: {
|
|
21
|
-
apply: ['active', 'applied'],
|
|
22
|
-
abandon: ['active', 'abandoned'],
|
|
23
|
-
},
|
|
24
|
-
is: 'active',
|
|
25
|
-
};
|
|
26
|
-
|
|
27
|
-
type Action = IAction;
|
|
28
|
-
|
|
29
|
-
const entityDesc: EntityDesc<Schema, Action, '', {
|
|
30
|
-
iState: IState,
|
|
31
|
-
}> = {
|
|
32
|
-
locales: {
|
|
33
|
-
zh_CN: {
|
|
34
|
-
name: '更新',
|
|
35
|
-
attr: {
|
|
36
|
-
targetEntity: '目标对象',
|
|
37
|
-
entity: '关联对象',
|
|
38
|
-
entityId: '关联对象Id',
|
|
39
|
-
action: '动作',
|
|
40
|
-
data: '数据',
|
|
41
|
-
filter: '条件',
|
|
42
|
-
extra: '其它',
|
|
43
|
-
iState: '状态',
|
|
44
|
-
},
|
|
45
|
-
action: {
|
|
46
|
-
abandon: '放弃',
|
|
47
|
-
apply: '应用',
|
|
48
|
-
},
|
|
49
|
-
v: {
|
|
50
|
-
iState: {
|
|
51
|
-
active: '活跃的',
|
|
52
|
-
abandoned: '放弃的',
|
|
53
|
-
applied: '应用的',
|
|
54
|
-
},
|
|
55
|
-
},
|
|
56
|
-
},
|
|
57
|
-
},
|
|
58
|
-
indexes: [
|
|
59
|
-
{
|
|
60
|
-
name: 'index_state',
|
|
61
|
-
attributes: [
|
|
62
|
-
{
|
|
63
|
-
name: 'iState',
|
|
64
|
-
direction: 'ASC',
|
|
65
|
-
}
|
|
66
|
-
],
|
|
67
|
-
},
|
|
68
|
-
],
|
|
69
|
-
};
|
|
1
|
+
import { ActionDef } from '../types/Action';
|
|
2
|
+
import { String } from '../types/DataType';
|
|
3
|
+
import { EntityShape } from '../types/Entity';
|
|
4
|
+
import { EntityDesc } from '../types/EntityDesc';
|
|
5
|
+
|
|
6
|
+
export interface Schema extends EntityShape {
|
|
7
|
+
targetEntity: String<32>; // 要操作的目标对象
|
|
8
|
+
entity: String<32>; // 关联的目标对象
|
|
9
|
+
entityId: String<64>; // 关联的目标对象id
|
|
10
|
+
action: String<16>;
|
|
11
|
+
data: Object;
|
|
12
|
+
filter?: Object;
|
|
13
|
+
extra?: Object;
|
|
14
|
+
};
|
|
15
|
+
|
|
16
|
+
type IState = 'active' | 'applied' | 'abandoned';
|
|
17
|
+
type IAction = 'apply' | 'abandon';
|
|
18
|
+
|
|
19
|
+
const IActionDef: ActionDef<IAction, IState> = {
|
|
20
|
+
stm: {
|
|
21
|
+
apply: ['active', 'applied'],
|
|
22
|
+
abandon: ['active', 'abandoned'],
|
|
23
|
+
},
|
|
24
|
+
is: 'active',
|
|
25
|
+
};
|
|
26
|
+
|
|
27
|
+
type Action = IAction;
|
|
28
|
+
|
|
29
|
+
const entityDesc: EntityDesc<Schema, Action, '', {
|
|
30
|
+
iState: IState,
|
|
31
|
+
}> = {
|
|
32
|
+
locales: {
|
|
33
|
+
zh_CN: {
|
|
34
|
+
name: '更新',
|
|
35
|
+
attr: {
|
|
36
|
+
targetEntity: '目标对象',
|
|
37
|
+
entity: '关联对象',
|
|
38
|
+
entityId: '关联对象Id',
|
|
39
|
+
action: '动作',
|
|
40
|
+
data: '数据',
|
|
41
|
+
filter: '条件',
|
|
42
|
+
extra: '其它',
|
|
43
|
+
iState: '状态',
|
|
44
|
+
},
|
|
45
|
+
action: {
|
|
46
|
+
abandon: '放弃',
|
|
47
|
+
apply: '应用',
|
|
48
|
+
},
|
|
49
|
+
v: {
|
|
50
|
+
iState: {
|
|
51
|
+
active: '活跃的',
|
|
52
|
+
abandoned: '放弃的',
|
|
53
|
+
applied: '应用的',
|
|
54
|
+
},
|
|
55
|
+
},
|
|
56
|
+
},
|
|
57
|
+
},
|
|
58
|
+
indexes: [
|
|
59
|
+
{
|
|
60
|
+
name: 'index_state',
|
|
61
|
+
attributes: [
|
|
62
|
+
{
|
|
63
|
+
name: 'iState',
|
|
64
|
+
direction: 'ASC',
|
|
65
|
+
}
|
|
66
|
+
],
|
|
67
|
+
},
|
|
68
|
+
],
|
|
69
|
+
};
|
|
@@ -1,26 +1,26 @@
|
|
|
1
|
-
import { String } from '../types/DataType';
|
|
2
|
-
import { EntityShape } from '../types/Entity';
|
|
3
|
-
import { Schema as Modi } from './Modi';
|
|
4
|
-
import { EntityDesc } from '../types/EntityDesc';
|
|
5
|
-
|
|
6
|
-
export interface Schema extends EntityShape {
|
|
7
|
-
modi: Modi,
|
|
8
|
-
entity: String<32>;
|
|
9
|
-
entityId: String<64>;
|
|
10
|
-
};
|
|
11
|
-
|
|
12
|
-
const entityDesc: EntityDesc<Schema> = {
|
|
13
|
-
locales: {
|
|
14
|
-
zh_CN: {
|
|
15
|
-
name: '更新对象连接',
|
|
16
|
-
attr: {
|
|
17
|
-
modi: '更新',
|
|
18
|
-
entity: '关联对象',
|
|
19
|
-
entityId: '关联对象id',
|
|
20
|
-
},
|
|
21
|
-
},
|
|
22
|
-
},
|
|
23
|
-
configuration: {
|
|
24
|
-
actionType: 'appendOnly',
|
|
25
|
-
}
|
|
26
|
-
};
|
|
1
|
+
import { String } from '../types/DataType';
|
|
2
|
+
import { EntityShape } from '../types/Entity';
|
|
3
|
+
import { Schema as Modi } from './Modi';
|
|
4
|
+
import { EntityDesc } from '../types/EntityDesc';
|
|
5
|
+
|
|
6
|
+
export interface Schema extends EntityShape {
|
|
7
|
+
modi: Modi,
|
|
8
|
+
entity: String<32>;
|
|
9
|
+
entityId: String<64>;
|
|
10
|
+
};
|
|
11
|
+
|
|
12
|
+
const entityDesc: EntityDesc<Schema> = {
|
|
13
|
+
locales: {
|
|
14
|
+
zh_CN: {
|
|
15
|
+
name: '更新对象连接',
|
|
16
|
+
attr: {
|
|
17
|
+
modi: '更新',
|
|
18
|
+
entity: '关联对象',
|
|
19
|
+
entityId: '关联对象id',
|
|
20
|
+
},
|
|
21
|
+
},
|
|
22
|
+
},
|
|
23
|
+
configuration: {
|
|
24
|
+
actionType: 'appendOnly',
|
|
25
|
+
}
|
|
26
|
+
};
|
package/src/entities/Oper.ts
CHANGED
|
@@ -1,32 +1,32 @@
|
|
|
1
|
-
import { String, Int, Datetime, Image, Boolean, Text } from '../types/DataType';
|
|
2
|
-
import { EntityShape } from '../types/Entity';
|
|
3
|
-
import { Schema as User } from './User';
|
|
4
|
-
import { EntityDesc } from '../types/EntityDesc';
|
|
5
|
-
|
|
6
|
-
export interface Schema extends EntityShape {
|
|
7
|
-
action: String<16>;
|
|
8
|
-
data: Object;
|
|
9
|
-
filter?: Object;
|
|
10
|
-
extra?: Object;
|
|
11
|
-
operator?: User;
|
|
12
|
-
targetEntity: String<32>;
|
|
13
|
-
};
|
|
14
|
-
|
|
15
|
-
const entityDesc: EntityDesc<Schema> = {
|
|
16
|
-
locales: {
|
|
17
|
-
zh_CN: {
|
|
18
|
-
name: '操作',
|
|
19
|
-
attr: {
|
|
20
|
-
action: '动作',
|
|
21
|
-
data: '数据',
|
|
22
|
-
filter: '选择条件',
|
|
23
|
-
extra: '其它',
|
|
24
|
-
operator: '操作者',
|
|
25
|
-
targetEntity: '关联对象',
|
|
26
|
-
},
|
|
27
|
-
},
|
|
28
|
-
},
|
|
29
|
-
configuration: {
|
|
30
|
-
actionType: 'appendOnly',
|
|
31
|
-
}
|
|
32
|
-
};
|
|
1
|
+
import { String, Int, Datetime, Image, Boolean, Text } from '../types/DataType';
|
|
2
|
+
import { EntityShape } from '../types/Entity';
|
|
3
|
+
import { Schema as User } from './User';
|
|
4
|
+
import { EntityDesc } from '../types/EntityDesc';
|
|
5
|
+
|
|
6
|
+
export interface Schema extends EntityShape {
|
|
7
|
+
action: String<16>;
|
|
8
|
+
data: Object;
|
|
9
|
+
filter?: Object;
|
|
10
|
+
extra?: Object;
|
|
11
|
+
operator?: User;
|
|
12
|
+
targetEntity: String<32>;
|
|
13
|
+
};
|
|
14
|
+
|
|
15
|
+
const entityDesc: EntityDesc<Schema> = {
|
|
16
|
+
locales: {
|
|
17
|
+
zh_CN: {
|
|
18
|
+
name: '操作',
|
|
19
|
+
attr: {
|
|
20
|
+
action: '动作',
|
|
21
|
+
data: '数据',
|
|
22
|
+
filter: '选择条件',
|
|
23
|
+
extra: '其它',
|
|
24
|
+
operator: '操作者',
|
|
25
|
+
targetEntity: '关联对象',
|
|
26
|
+
},
|
|
27
|
+
},
|
|
28
|
+
},
|
|
29
|
+
configuration: {
|
|
30
|
+
actionType: 'appendOnly',
|
|
31
|
+
}
|
|
32
|
+
};
|
|
@@ -1,27 +1,27 @@
|
|
|
1
|
-
import { String } from '../types/DataType';
|
|
2
|
-
import { EntityShape, Configuration } from '../types/Entity';
|
|
3
|
-
import { LocaleDef } from '../types/Locale';
|
|
4
|
-
import { Schema as Oper } from './Oper';
|
|
5
|
-
import { EntityDesc } from '../types/EntityDesc';
|
|
6
|
-
|
|
7
|
-
export interface Schema extends EntityShape {
|
|
8
|
-
oper: Oper,
|
|
9
|
-
entity: String<32>;
|
|
10
|
-
entityId: String<64>;
|
|
11
|
-
};
|
|
12
|
-
|
|
13
|
-
const entityDesc: EntityDesc<Schema> = {
|
|
14
|
-
locales: {
|
|
15
|
-
zh_CN: {
|
|
16
|
-
name: '操作对象连接',
|
|
17
|
-
attr: {
|
|
18
|
-
oper: '操作',
|
|
19
|
-
entity: '关联对象',
|
|
20
|
-
entityId: '关联对象id',
|
|
21
|
-
},
|
|
22
|
-
},
|
|
23
|
-
},
|
|
24
|
-
configuration: {
|
|
25
|
-
actionType: 'appendOnly',
|
|
26
|
-
}
|
|
27
|
-
};
|
|
1
|
+
import { String } from '../types/DataType';
|
|
2
|
+
import { EntityShape, Configuration } from '../types/Entity';
|
|
3
|
+
import { LocaleDef } from '../types/Locale';
|
|
4
|
+
import { Schema as Oper } from './Oper';
|
|
5
|
+
import { EntityDesc } from '../types/EntityDesc';
|
|
6
|
+
|
|
7
|
+
export interface Schema extends EntityShape {
|
|
8
|
+
oper: Oper,
|
|
9
|
+
entity: String<32>;
|
|
10
|
+
entityId: String<64>;
|
|
11
|
+
};
|
|
12
|
+
|
|
13
|
+
const entityDesc: EntityDesc<Schema> = {
|
|
14
|
+
locales: {
|
|
15
|
+
zh_CN: {
|
|
16
|
+
name: '操作对象连接',
|
|
17
|
+
attr: {
|
|
18
|
+
oper: '操作',
|
|
19
|
+
entity: '关联对象',
|
|
20
|
+
entityId: '关联对象id',
|
|
21
|
+
},
|
|
22
|
+
},
|
|
23
|
+
},
|
|
24
|
+
configuration: {
|
|
25
|
+
actionType: 'appendOnly',
|
|
26
|
+
}
|
|
27
|
+
};
|
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
import { String, Boolean, Text } from '../types/DataType';
|
|
2
|
+
import { EntityShape } from '../types/Entity';
|
|
3
|
+
import { EntityDesc } from '../types/EntityDesc';
|
|
4
|
+
|
|
5
|
+
export interface Schema extends EntityShape {
|
|
6
|
+
destEntity: String<32>;
|
|
7
|
+
value: String<256>;
|
|
8
|
+
recursive: Boolean;
|
|
9
|
+
sourceEntity: String<32>;
|
|
10
|
+
};
|
|
11
|
+
|
|
12
|
+
const entityDesc: EntityDesc<Schema> = {
|
|
13
|
+
indexes: [
|
|
14
|
+
{
|
|
15
|
+
name: 'index_source_dest_path',
|
|
16
|
+
attributes: [
|
|
17
|
+
{
|
|
18
|
+
name: 'sourceEntity',
|
|
19
|
+
},
|
|
20
|
+
{
|
|
21
|
+
name: 'value',
|
|
22
|
+
},
|
|
23
|
+
{
|
|
24
|
+
name: 'destEntity',
|
|
25
|
+
},
|
|
26
|
+
],
|
|
27
|
+
config: {
|
|
28
|
+
unique: true,
|
|
29
|
+
},
|
|
30
|
+
},
|
|
31
|
+
],
|
|
32
|
+
locales: {
|
|
33
|
+
zh_CN: {
|
|
34
|
+
name: '关系路径',
|
|
35
|
+
attr: {
|
|
36
|
+
sourceEntity: '源对象',
|
|
37
|
+
value: '路径(从dest到source)',
|
|
38
|
+
destEntity: '目标对象',
|
|
39
|
+
recursive: '是否递归(目标对象)',
|
|
40
|
+
},
|
|
41
|
+
},
|
|
42
|
+
}
|
|
43
|
+
};
|
package/src/entities/Relation.ts
CHANGED
|
@@ -1,43 +1,43 @@
|
|
|
1
|
-
import { String } from '../types/DataType';
|
|
2
|
-
import { EntityShape } from '../types/Entity';
|
|
3
|
-
import { EntityDesc } from '../types/EntityDesc';
|
|
4
|
-
|
|
5
|
-
export interface Schema extends EntityShape {
|
|
6
|
-
entity: String<32>;
|
|
7
|
-
entityId?: String<64>; // 可以为空
|
|
8
|
-
name?: String<32>;
|
|
9
|
-
display?: String<32>;
|
|
10
|
-
};
|
|
11
|
-
|
|
12
|
-
const entityDesc: EntityDesc<Schema> = {
|
|
13
|
-
locales: {
|
|
14
|
-
zh_CN: {
|
|
15
|
-
name: '用户授权',
|
|
16
|
-
attr: {
|
|
17
|
-
name: '关系',
|
|
18
|
-
entity: '目标对象',
|
|
19
|
-
entityId: '目标对象id',
|
|
20
|
-
display: '显示值',
|
|
21
|
-
},
|
|
22
|
-
},
|
|
23
|
-
},
|
|
24
|
-
indexes: [
|
|
25
|
-
{
|
|
26
|
-
name: 'index_targetEntity_entityId_name',
|
|
27
|
-
attributes: [
|
|
28
|
-
{
|
|
29
|
-
name: 'entity',
|
|
30
|
-
},
|
|
31
|
-
{
|
|
32
|
-
name: 'entityId',
|
|
33
|
-
},
|
|
34
|
-
{
|
|
35
|
-
name: 'name',
|
|
36
|
-
}
|
|
37
|
-
],
|
|
38
|
-
config: {
|
|
39
|
-
unique: true,
|
|
40
|
-
},
|
|
41
|
-
},
|
|
42
|
-
]
|
|
43
|
-
};
|
|
1
|
+
import { String } from '../types/DataType';
|
|
2
|
+
import { EntityShape } from '../types/Entity';
|
|
3
|
+
import { EntityDesc } from '../types/EntityDesc';
|
|
4
|
+
|
|
5
|
+
export interface Schema extends EntityShape {
|
|
6
|
+
entity: String<32>;
|
|
7
|
+
entityId?: String<64>; // 可以为空
|
|
8
|
+
name?: String<32>;
|
|
9
|
+
display?: String<32>;
|
|
10
|
+
};
|
|
11
|
+
|
|
12
|
+
const entityDesc: EntityDesc<Schema> = {
|
|
13
|
+
locales: {
|
|
14
|
+
zh_CN: {
|
|
15
|
+
name: '用户授权',
|
|
16
|
+
attr: {
|
|
17
|
+
name: '关系',
|
|
18
|
+
entity: '目标对象',
|
|
19
|
+
entityId: '目标对象id',
|
|
20
|
+
display: '显示值',
|
|
21
|
+
},
|
|
22
|
+
},
|
|
23
|
+
},
|
|
24
|
+
indexes: [
|
|
25
|
+
{
|
|
26
|
+
name: 'index_targetEntity_entityId_name',
|
|
27
|
+
attributes: [
|
|
28
|
+
{
|
|
29
|
+
name: 'entity',
|
|
30
|
+
},
|
|
31
|
+
{
|
|
32
|
+
name: 'entityId',
|
|
33
|
+
},
|
|
34
|
+
{
|
|
35
|
+
name: 'name',
|
|
36
|
+
}
|
|
37
|
+
],
|
|
38
|
+
config: {
|
|
39
|
+
unique: true,
|
|
40
|
+
},
|
|
41
|
+
},
|
|
42
|
+
]
|
|
43
|
+
};
|
|
@@ -1,43 +1,44 @@
|
|
|
1
|
-
import { String } from '../types/DataType';
|
|
2
|
-
import { EntityShape } from '../types/Entity';
|
|
3
|
-
import { Schema as Relation } from './Relation';
|
|
4
|
-
import { EntityDesc } from '../types/EntityDesc';
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
}
|
|
1
|
+
import { String } from '../types/DataType';
|
|
2
|
+
import { EntityShape } from '../types/Entity';
|
|
3
|
+
import { Schema as Relation } from './Relation';
|
|
4
|
+
import { EntityDesc } from '../types/EntityDesc';
|
|
5
|
+
import { Schema as Path } from './Path';
|
|
6
|
+
|
|
7
|
+
// destRelation需要有sourceRelation才能授权/除权
|
|
8
|
+
export interface Schema extends EntityShape {
|
|
9
|
+
sourceRelation: Relation;
|
|
10
|
+
path: Path;
|
|
11
|
+
destRelation: Relation;
|
|
12
|
+
};
|
|
13
|
+
|
|
14
|
+
const entityDesc: EntityDesc<Schema> = {
|
|
15
|
+
indexes: [
|
|
16
|
+
{
|
|
17
|
+
name: 'index_entity_relation_path',
|
|
18
|
+
attributes: [
|
|
19
|
+
{
|
|
20
|
+
name: 'sourceRelation',
|
|
21
|
+
},
|
|
22
|
+
{
|
|
23
|
+
name: 'path',
|
|
24
|
+
},
|
|
25
|
+
{
|
|
26
|
+
name: 'destRelation',
|
|
27
|
+
},
|
|
28
|
+
],
|
|
29
|
+
config: {
|
|
30
|
+
unique: true,
|
|
31
|
+
},
|
|
32
|
+
},
|
|
33
|
+
],
|
|
34
|
+
locales: {
|
|
35
|
+
zh_CN: {
|
|
36
|
+
name: '用户授权',
|
|
37
|
+
attr: {
|
|
38
|
+
sourceRelation: '源关系',
|
|
39
|
+
path: '路径',
|
|
40
|
+
destRelation: '目标关系',
|
|
41
|
+
},
|
|
42
|
+
},
|
|
43
|
+
}
|
|
44
|
+
};
|
package/src/entities/User.ts
CHANGED
|
@@ -1,49 +1,49 @@
|
|
|
1
|
-
import { String, Int, Text, Image, Datetime } from '../types/DataType';
|
|
2
|
-
import { EntityShape } from '../types/Entity';
|
|
3
|
-
import { ActionDef } from '../types/Action';
|
|
4
|
-
import { EntityDesc } from '../types/EntityDesc';
|
|
5
|
-
|
|
6
|
-
export interface Schema extends EntityShape {
|
|
7
|
-
name?: String<16>;
|
|
8
|
-
nickname?: String<64>;
|
|
9
|
-
password?: Text;
|
|
10
|
-
ref?: Schema;
|
|
11
|
-
};
|
|
12
|
-
|
|
13
|
-
type UserAction = 'mergeTo';
|
|
14
|
-
type UserState = 'normal' | 'merged';
|
|
15
|
-
|
|
16
|
-
type Action = UserAction;
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
const UserActionDef: ActionDef<UserAction, UserState> = {
|
|
20
|
-
stm: {
|
|
21
|
-
mergeTo: ['normal', 'merged'],
|
|
22
|
-
},
|
|
23
|
-
};
|
|
24
|
-
|
|
25
|
-
const entityDesc: EntityDesc<Schema, Action, '', {
|
|
26
|
-
userState: UserState,
|
|
27
|
-
}> = {
|
|
28
|
-
locales: {
|
|
29
|
-
zh_CN: {
|
|
30
|
-
name: '用户',
|
|
31
|
-
attr: {
|
|
32
|
-
name: '姓名',
|
|
33
|
-
nickname: '昵称',
|
|
34
|
-
password: '密码',
|
|
35
|
-
ref: '指向用户',
|
|
36
|
-
userState: '状态',
|
|
37
|
-
},
|
|
38
|
-
action: {
|
|
39
|
-
mergeTo: '合并',
|
|
40
|
-
},
|
|
41
|
-
v: {
|
|
42
|
-
userState: {
|
|
43
|
-
normal: '正常',
|
|
44
|
-
merged: '已被合并',
|
|
45
|
-
},
|
|
46
|
-
}
|
|
47
|
-
},
|
|
48
|
-
},
|
|
1
|
+
import { String, Int, Text, Image, Datetime } from '../types/DataType';
|
|
2
|
+
import { EntityShape } from '../types/Entity';
|
|
3
|
+
import { ActionDef } from '../types/Action';
|
|
4
|
+
import { EntityDesc } from '../types/EntityDesc';
|
|
5
|
+
|
|
6
|
+
export interface Schema extends EntityShape {
|
|
7
|
+
name?: String<16>;
|
|
8
|
+
nickname?: String<64>;
|
|
9
|
+
password?: Text;
|
|
10
|
+
ref?: Schema;
|
|
11
|
+
};
|
|
12
|
+
|
|
13
|
+
type UserAction = 'mergeTo';
|
|
14
|
+
type UserState = 'normal' | 'merged';
|
|
15
|
+
|
|
16
|
+
type Action = UserAction;
|
|
17
|
+
|
|
18
|
+
|
|
19
|
+
const UserActionDef: ActionDef<UserAction, UserState> = {
|
|
20
|
+
stm: {
|
|
21
|
+
mergeTo: ['normal', 'merged'],
|
|
22
|
+
},
|
|
23
|
+
};
|
|
24
|
+
|
|
25
|
+
const entityDesc: EntityDesc<Schema, Action, '', {
|
|
26
|
+
userState: UserState,
|
|
27
|
+
}> = {
|
|
28
|
+
locales: {
|
|
29
|
+
zh_CN: {
|
|
30
|
+
name: '用户',
|
|
31
|
+
attr: {
|
|
32
|
+
name: '姓名',
|
|
33
|
+
nickname: '昵称',
|
|
34
|
+
password: '密码',
|
|
35
|
+
ref: '指向用户',
|
|
36
|
+
userState: '状态',
|
|
37
|
+
},
|
|
38
|
+
action: {
|
|
39
|
+
mergeTo: '合并',
|
|
40
|
+
},
|
|
41
|
+
v: {
|
|
42
|
+
userState: {
|
|
43
|
+
normal: '正常',
|
|
44
|
+
merged: '已被合并',
|
|
45
|
+
},
|
|
46
|
+
}
|
|
47
|
+
},
|
|
48
|
+
},
|
|
49
49
|
};
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
import { String } from '../types/DataType';
|
|
2
|
+
import { EntityShape } from '../types/Entity';
|
|
3
|
+
import { EntityDesc } from '../types/EntityDesc';
|
|
4
|
+
import { Schema as UserEntityGrant } from './UserEntityGrant';
|
|
5
|
+
import { Schema as User } from './User';
|
|
6
|
+
import { Schema as Relation } from './Relation';
|
|
7
|
+
import { Schema as UserRelation } from './UserRelation';
|
|
8
|
+
|
|
9
|
+
export interface Schema extends EntityShape {
|
|
10
|
+
ueg: UserEntityGrant;
|
|
11
|
+
user: User;
|
|
12
|
+
relation: Relation;
|
|
13
|
+
claimEntityId: String<64>;
|
|
14
|
+
userRelation: UserRelation;
|
|
15
|
+
};
|
|
16
|
+
|
|
17
|
+
const entityDesc: EntityDesc<Schema, ''> = {
|
|
18
|
+
locales: {
|
|
19
|
+
zh_CN: {
|
|
20
|
+
name: '用户授权领取',
|
|
21
|
+
attr: {
|
|
22
|
+
ueg: '授权',
|
|
23
|
+
user: '用户',
|
|
24
|
+
relation: '关系',
|
|
25
|
+
claimEntityId: '对象Id',
|
|
26
|
+
userRelation: '用户关系',
|
|
27
|
+
},
|
|
28
|
+
},
|
|
29
|
+
},
|
|
30
|
+
};
|