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.
Files changed (203) hide show
  1. package/lib/actions/action.d.ts +16 -16
  2. package/lib/actions/action.js +17 -17
  3. package/lib/actions/relation.d.ts +5 -5
  4. package/lib/actions/relation.js +25 -38
  5. package/lib/base-app-domain/ActionAuth/Schema.d.ts +186 -160
  6. package/lib/base-app-domain/ActionAuth/Storage.js +39 -42
  7. package/lib/base-app-domain/ActionDefDict.d.ts +8 -9
  8. package/lib/base-app-domain/ActionDefDict.js +9 -11
  9. package/lib/base-app-domain/EntityDict.d.ts +28 -24
  10. package/lib/base-app-domain/I18n/Schema.d.ts +129 -129
  11. package/lib/base-app-domain/I18n/Schema.js +2 -2
  12. package/lib/base-app-domain/I18n/Storage.d.ts +3 -3
  13. package/lib/base-app-domain/I18n/Storage.js +59 -59
  14. package/lib/base-app-domain/Modi/Action.d.ts +10 -10
  15. package/lib/base-app-domain/Modi/Action.js +14 -14
  16. package/lib/base-app-domain/Modi/Schema.d.ts +136 -136
  17. package/lib/base-app-domain/Modi/Storage.js +63 -63
  18. package/lib/base-app-domain/ModiEntity/Schema.d.ts +384 -311
  19. package/lib/base-app-domain/ModiEntity/Storage.js +30 -30
  20. package/lib/base-app-domain/Oper/Schema.d.ts +153 -152
  21. package/lib/base-app-domain/Oper/Storage.js +38 -38
  22. package/lib/base-app-domain/OperEntity/Schema.d.ts +373 -300
  23. package/lib/base-app-domain/OperEntity/Storage.js +30 -30
  24. package/lib/base-app-domain/Path/Schema.d.ts +149 -0
  25. package/lib/base-app-domain/Path/Schema.js +2 -0
  26. package/lib/base-app-domain/Path/Storage.d.ts +3 -0
  27. package/lib/base-app-domain/Path/Storage.js +54 -0
  28. package/lib/base-app-domain/Relation/Schema.d.ts +188 -188
  29. package/lib/base-app-domain/Relation/Storage.js +54 -54
  30. package/lib/base-app-domain/Relation.d.ts +2 -10
  31. package/lib/base-app-domain/Relation.js +4 -10
  32. package/lib/base-app-domain/RelationAuth/Schema.d.ts +214 -180
  33. package/lib/base-app-domain/RelationAuth/Storage.js +44 -46
  34. package/lib/base-app-domain/Storage.js +31 -27
  35. package/lib/base-app-domain/User/Action.d.ts +10 -10
  36. package/lib/base-app-domain/User/Action.js +12 -12
  37. package/lib/base-app-domain/User/Schema.d.ts +210 -197
  38. package/lib/base-app-domain/User/Storage.js +33 -33
  39. package/lib/base-app-domain/UserEntityClaim/Schema.d.ts +264 -0
  40. package/lib/base-app-domain/UserEntityClaim/Schema.js +2 -0
  41. package/lib/base-app-domain/UserEntityClaim/Storage.d.ts +3 -0
  42. package/lib/base-app-domain/UserEntityClaim/Storage.js +37 -0
  43. package/lib/base-app-domain/UserEntityGrant/Action.d.ts +5 -5
  44. package/lib/base-app-domain/UserEntityGrant/Action.js +5 -5
  45. package/lib/base-app-domain/UserEntityGrant/Schema.d.ts +131 -157
  46. package/lib/base-app-domain/UserEntityGrant/Storage.js +25 -29
  47. package/lib/base-app-domain/UserRelation/Schema.d.ts +208 -194
  48. package/lib/base-app-domain/UserRelation/Storage.js +56 -56
  49. package/lib/base-app-domain/_SubQuery.d.ts +142 -112
  50. package/lib/base-app-domain/index.d.ts +4 -4
  51. package/lib/base-app-domain/index.js +7 -7
  52. package/lib/checkers/index.d.ts +5 -5
  53. package/lib/checkers/index.js +13 -14
  54. package/lib/compiler/entities.d.ts +2 -0
  55. package/lib/compiler/entities.js +7 -0
  56. package/lib/compiler/env.d.ts +13 -14
  57. package/lib/compiler/env.js +45 -50
  58. package/lib/compiler/localeBuilder.d.ts +27 -22
  59. package/lib/compiler/localeBuilder.js +184 -169
  60. package/lib/compiler/schemalBuilder.d.ts +27 -11
  61. package/lib/compiler/schemalBuilder.js +3569 -3787
  62. package/lib/entities/ActionAuth.d.ts +10 -12
  63. package/lib/entities/ActionAuth.js +31 -29
  64. package/lib/entities/I18n.d.ts +9 -9
  65. package/lib/entities/I18n.js +36 -37
  66. package/lib/entities/Modi.js +49 -49
  67. package/lib/entities/ModiEntity.js +18 -18
  68. package/lib/entities/Oper.js +21 -21
  69. package/lib/entities/OperEntity.js +18 -18
  70. package/lib/entities/Path.d.ts +8 -0
  71. package/lib/entities/Path.js +35 -0
  72. package/lib/entities/Relation.d.ts +8 -8
  73. package/lib/entities/Relation.js +35 -35
  74. package/lib/entities/RelationAuth.d.ts +8 -8
  75. package/lib/entities/RelationAuth.js +34 -34
  76. package/lib/entities/User.js +31 -31
  77. package/lib/entities/UserEntityClaim.d.ts +13 -0
  78. package/lib/entities/UserEntityClaim.js +17 -0
  79. package/lib/entities/UserEntityGrant.d.ts +9 -8
  80. package/lib/entities/UserEntityGrant.js +15 -18
  81. package/lib/entities/UserRelation.d.ts +10 -10
  82. package/lib/entities/UserRelation.js +38 -38
  83. package/lib/index.d.ts +23 -0
  84. package/lib/index.js +37 -0
  85. package/lib/store/AsyncRowStore.d.ts +60 -58
  86. package/lib/store/AsyncRowStore.js +118 -190
  87. package/lib/store/CascadeStore.d.ts +104 -103
  88. package/lib/store/CascadeStore.js +1688 -2036
  89. package/lib/store/RelationAuth.d.ts +96 -103
  90. package/lib/store/RelationAuth.js +1336 -1492
  91. package/lib/store/SyncRowStore.d.ts +29 -29
  92. package/lib/store/SyncRowStore.js +50 -49
  93. package/lib/store/TriggerExecutor.d.ts +38 -31
  94. package/lib/store/TriggerExecutor.js +459 -532
  95. package/lib/store/actionAuth.d.ts +4 -4
  96. package/lib/store/actionAuth.js +25 -40
  97. package/lib/store/actionDef.d.ts +10 -10
  98. package/lib/store/actionDef.js +278 -353
  99. package/lib/store/checker.d.ts +26 -26
  100. package/lib/store/checker.js +487 -623
  101. package/lib/store/filter.d.ts +85 -123
  102. package/lib/store/filter.js +1651 -1761
  103. package/lib/store/modi.d.ts +13 -13
  104. package/lib/store/modi.js +254 -315
  105. package/lib/store/relation.d.ts +12 -12
  106. package/lib/store/relation.js +67 -67
  107. package/lib/timers/oper.d.ts +18 -18
  108. package/lib/timers/oper.js +57 -60
  109. package/lib/timers/vaccum.d.ts +20 -20
  110. package/lib/timers/vaccum.js +111 -176
  111. package/lib/triggers/index.d.ts +5 -5
  112. package/lib/triggers/index.js +8 -8
  113. package/lib/types/Action.d.ts +20 -20
  114. package/lib/types/AppLoader.d.ts +17 -11
  115. package/lib/types/AppLoader.js +10 -10
  116. package/lib/types/Aspect.d.ts +1 -3
  117. package/lib/types/Auth.d.ts +70 -74
  118. package/lib/types/Cluster.d.ts +5 -0
  119. package/lib/types/Cluster.js +2 -0
  120. package/lib/types/Connector.d.ts +38 -34
  121. package/lib/types/Connector.js +2 -9
  122. package/lib/types/DataType.d.ts +25 -24
  123. package/lib/types/DataType.js +6 -6
  124. package/lib/types/Demand.d.ts +88 -88
  125. package/lib/types/Demand.js +10 -10
  126. package/lib/types/Endpoint.d.ts +11 -11
  127. package/lib/types/Entity.d.ts +203 -198
  128. package/lib/types/Entity.js +15 -15
  129. package/lib/types/EntityDesc.d.ts +9 -8
  130. package/lib/types/EntityDesc.js +2 -2
  131. package/lib/types/Environment.d.ts +88 -57
  132. package/lib/types/Environment.js +2 -2
  133. package/lib/types/Exception.d.ts +147 -120
  134. package/lib/types/Exception.js +406 -406
  135. package/lib/types/Expression.d.ts +163 -163
  136. package/lib/types/Expression.js +397 -427
  137. package/lib/types/Geo.d.ts +18 -18
  138. package/lib/types/Locale.d.ts +25 -25
  139. package/lib/types/Logger.d.ts +6 -6
  140. package/lib/types/Polyfill.d.ts +24 -24
  141. package/lib/types/Port.d.ts +18 -18
  142. package/lib/types/RowStore.d.ts +18 -18
  143. package/lib/types/RowStore.js +33 -34
  144. package/lib/types/Storage.d.ts +58 -57
  145. package/lib/types/Style.d.ts +11 -11
  146. package/lib/types/Timer.d.ts +14 -14
  147. package/lib/types/Trigger.d.ts +124 -108
  148. package/lib/types/Trigger.js +58 -54
  149. package/lib/types/Watcher.d.ts +19 -19
  150. package/lib/types/index.d.ts +26 -24
  151. package/lib/types/index.js +29 -27
  152. package/lib/types/schema/DataTypes.d.ts +34 -34
  153. package/lib/utils/SimpleConnector.d.ts +64 -50
  154. package/lib/utils/SimpleConnector.js +206 -184
  155. package/lib/utils/assert.d.ts +5 -5
  156. package/lib/utils/assert.js +9 -9
  157. package/lib/utils/concurrent.d.ts +15 -15
  158. package/lib/utils/concurrent.js +63 -89
  159. package/lib/utils/date.js +18 -18
  160. package/lib/utils/{url.d.ts → domain.d.ts} +1 -1
  161. package/lib/utils/{url.js → domain.js} +11 -12
  162. package/lib/utils/geo.js +24 -24
  163. package/lib/utils/lodash.d.ts +24 -20
  164. package/lib/utils/lodash.js +46 -55
  165. package/lib/utils/mask.js +34 -35
  166. package/lib/utils/money.d.ts +6 -6
  167. package/lib/utils/money.js +51 -40
  168. package/lib/utils/projection.d.ts +4 -0
  169. package/lib/utils/projection.js +15 -0
  170. package/lib/utils/random/random.js +19 -24
  171. package/lib/utils/random/random.mp.js +14 -25
  172. package/lib/utils/random/random.native.d.ts +1 -0
  173. package/lib/utils/random/random.native.js +14 -0
  174. package/lib/utils/random/random.web.js +11 -17
  175. package/lib/utils/string.d.ts +28 -28
  176. package/lib/utils/string.js +69 -82
  177. package/lib/utils/url/index.d.ts +7 -0
  178. package/lib/utils/url/index.js +8 -0
  179. package/lib/utils/url/index.mp.d.ts +4 -0
  180. package/lib/utils/url/index.mp.js +8 -0
  181. package/lib/utils/url/index.native.d.ts +12 -0
  182. package/lib/utils/url/index.native.js +7 -0
  183. package/lib/utils/url/index.web.d.ts +12 -0
  184. package/lib/utils/url/index.web.js +7 -0
  185. package/lib/utils/uuid.d.ts +17 -17
  186. package/lib/utils/uuid.js +218 -257
  187. package/lib/utils/validator.d.ts +26 -25
  188. package/lib/utils/validator.js +131 -128
  189. package/lib/utils/version.js +21 -21
  190. package/package.json +51 -49
  191. package/src/entities/ActionAuth.ts +41 -41
  192. package/src/entities/I18n.ts +45 -46
  193. package/src/entities/Modi.ts +69 -69
  194. package/src/entities/ModiEntity.ts +26 -26
  195. package/src/entities/Oper.ts +32 -32
  196. package/src/entities/OperEntity.ts +27 -27
  197. package/src/entities/Path.ts +43 -0
  198. package/src/entities/Relation.ts +43 -43
  199. package/src/entities/RelationAuth.ts +44 -43
  200. package/src/entities/User.ts +48 -48
  201. package/src/entities/UserEntityClaim.ts +30 -0
  202. package/src/entities/UserEntityGrant.ts +24 -27
  203. package/src/entities/UserRelation.ts +50 -50
@@ -1,30 +1,30 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.desc = void 0;
4
- var action_1 = require("../../actions/action");
5
- exports.desc = {
6
- attributes: {
7
- modiId: {
8
- notNull: true,
9
- type: "ref",
10
- ref: "modi"
11
- },
12
- entity: {
13
- notNull: true,
14
- type: "varchar",
15
- params: {
16
- length: 32
17
- },
18
- ref: ["actionAuth", "i18n", "relation", "relationAuth", "user", "userEntityGrant", "userRelation"]
19
- },
20
- entityId: {
21
- notNull: true,
22
- type: "varchar",
23
- params: {
24
- length: 64
25
- }
26
- }
27
- },
28
- actionType: "appendOnly",
29
- actions: action_1.appendOnlyActions
30
- };
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.desc = void 0;
4
+ const action_1 = require("../../actions/action");
5
+ exports.desc = {
6
+ attributes: {
7
+ modiId: {
8
+ notNull: true,
9
+ type: "ref",
10
+ ref: "modi"
11
+ },
12
+ entity: {
13
+ notNull: true,
14
+ type: "varchar",
15
+ params: {
16
+ length: 32
17
+ },
18
+ ref: ["actionAuth", "i18n", "path", "relation", "relationAuth", "user", "userEntityClaim", "userEntityGrant", "userRelation"]
19
+ },
20
+ entityId: {
21
+ notNull: true,
22
+ type: "varchar",
23
+ params: {
24
+ length: 64
25
+ }
26
+ }
27
+ },
28
+ actionType: "appendOnly",
29
+ actions: action_1.appendOnlyActions
30
+ };
@@ -1,152 +1,153 @@
1
- import { ForeignKey } from "../../types/DataType";
2
- import { Q_DateValue, Q_StringValue, NodeId, MakeFilter, ExprOp, ExpressionKey, SubQueryPredicateMetadata } from "../../types/Demand";
3
- import { OneOf } from "../../types/Polyfill";
4
- import { FormCreateData, FormUpdateData, DeduceAggregation, Operation as OakOperation, Selection as OakSelection, MakeAction as OakMakeAction, AggregationResult } from "../../types/Entity";
5
- import { AppendOnlyAction } from "../../actions/action";
6
- import { String } from "../../types/DataType";
7
- import { EntityShape } from "../../types/Entity";
8
- import * as User from "../User/Schema";
9
- import * as OperEntity from "../OperEntity/Schema";
10
- export declare type OpSchema = EntityShape & {
11
- action: String<16>;
12
- data: Object;
13
- filter?: Object | null;
14
- extra?: Object | null;
15
- operatorId?: ForeignKey<"user"> | null;
16
- targetEntity: String<32>;
17
- };
18
- export declare type OpAttr = keyof OpSchema;
19
- export declare type Schema = EntityShape & {
20
- action: String<16>;
21
- data: Object;
22
- filter?: Object | null;
23
- extra?: Object | null;
24
- operatorId?: ForeignKey<"user"> | null;
25
- targetEntity: String<32>;
26
- operator?: User.Schema | null;
27
- operEntity$oper?: Array<OperEntity.Schema>;
28
- operEntity$oper$$aggr?: AggregationResult<OperEntity.Schema>;
29
- } & {
30
- [A in ExpressionKey]?: any;
31
- };
32
- declare type AttrFilter = {
33
- id: Q_StringValue;
34
- $$createAt$$: Q_DateValue;
35
- $$seq$$: Q_StringValue;
36
- $$updateAt$$: Q_DateValue;
37
- action: Q_StringValue;
38
- data: Object;
39
- filter: Object;
40
- extra: Object;
41
- operatorId: Q_StringValue;
42
- operator: User.Filter;
43
- targetEntity: Q_StringValue;
44
- operEntity$oper: OperEntity.Filter & SubQueryPredicateMetadata;
45
- };
46
- export declare type Filter = MakeFilter<AttrFilter & ExprOp<OpAttr | string>>;
47
- export declare type Projection = {
48
- "#id"?: NodeId;
49
- [k: string]: any;
50
- id?: number;
51
- $$createAt$$?: number;
52
- $$updateAt$$?: number;
53
- $$seq$$?: number;
54
- action?: number;
55
- data?: number | Object;
56
- filter?: number | Object;
57
- extra?: number | Object;
58
- operatorId?: number;
59
- operator?: User.Projection;
60
- targetEntity?: number;
61
- operEntity$oper?: OperEntity.Selection & {
62
- $entity: "operEntity";
63
- };
64
- operEntity$oper$$aggr?: OperEntity.Aggregation & {
65
- $entity: "operEntity";
66
- };
67
- } & Partial<ExprOp<OpAttr | string>>;
68
- declare type OperIdProjection = OneOf<{
69
- id: number;
70
- }>;
71
- declare type UserIdProjection = OneOf<{
72
- operatorId: number;
73
- }>;
74
- export declare type SortAttr = {
75
- id: number;
76
- } | {
77
- $$createAt$$: number;
78
- } | {
79
- $$seq$$: number;
80
- } | {
81
- $$updateAt$$: number;
82
- } | {
83
- action: number;
84
- } | {
85
- operatorId: number;
86
- } | {
87
- operator: User.SortAttr;
88
- } | {
89
- targetEntity: number;
90
- } | {
91
- [k: string]: any;
92
- } | OneOf<ExprOp<OpAttr | string>>;
93
- export declare type SortNode = {
94
- $attr: SortAttr;
95
- $direction?: "asc" | "desc";
96
- };
97
- export declare type Sorter = SortNode[];
98
- export declare type SelectOperation<P extends Object = Projection> = OakSelection<"select", P, Filter, Sorter>;
99
- export declare type Selection<P extends Object = Projection> = SelectOperation<P>;
100
- export declare type Aggregation = DeduceAggregation<Projection, Filter, Sorter>;
101
- export declare type CreateOperationData = FormCreateData<Omit<OpSchema, "operatorId">> & (({
102
- operatorId?: never;
103
- operator?: User.CreateSingleOperation;
104
- } | {
105
- operatorId: ForeignKey<"operator">;
106
- operator?: User.UpdateOperation;
107
- } | {
108
- operatorId?: ForeignKey<"operator">;
109
- })) & {
110
- operEntity$oper?: OakOperation<"create", Omit<OperEntity.CreateOperationData, "oper" | "operId">[]> | Array<OakOperation<"create", Omit<OperEntity.CreateOperationData, "oper" | "operId">>>;
111
- };
112
- export declare type CreateSingleOperation = OakOperation<"create", CreateOperationData>;
113
- export declare type CreateMultipleOperation = OakOperation<"create", Array<CreateOperationData>>;
114
- export declare type CreateOperation = CreateSingleOperation | CreateMultipleOperation;
115
- export declare type UpdateOperationData = FormUpdateData<Omit<OpSchema, "operatorId">> & (({
116
- operator: User.CreateSingleOperation;
117
- operatorId?: never;
118
- } | {
119
- operator: User.UpdateOperation;
120
- operatorId?: never;
121
- } | {
122
- operator: User.RemoveOperation;
123
- operatorId?: never;
124
- } | {
125
- operator?: never;
126
- operatorId?: ForeignKey<"operator"> | null;
127
- })) & {
128
- [k: string]: any;
129
- operEntity$oper?: OakOperation<"create", Omit<OperEntity.CreateOperationData, "oper" | "operId">[]> | Array<OakOperation<"create", Omit<OperEntity.CreateOperationData, "oper" | "operId">>>;
130
- };
131
- export declare type UpdateOperation = OakOperation<"update" | string, UpdateOperationData, Filter, Sorter>;
132
- export declare type RemoveOperationData = {} & (({
133
- operator?: User.UpdateOperation | User.RemoveOperation;
134
- }));
135
- export declare type RemoveOperation = OakOperation<"remove", RemoveOperationData, Filter, Sorter>;
136
- export declare type Operation = CreateOperation | UpdateOperation | RemoveOperation;
137
- export declare type UserIdSubQuery = Selection<UserIdProjection>;
138
- export declare type OperIdSubQuery = Selection<OperIdProjection>;
139
- export declare type EntityDef = {
140
- Schema: Schema;
141
- OpSchema: OpSchema;
142
- Action: OakMakeAction<AppendOnlyAction> | string;
143
- Selection: Selection;
144
- Aggregation: Aggregation;
145
- Operation: Operation;
146
- Create: CreateOperation;
147
- Update: UpdateOperation;
148
- Remove: RemoveOperation;
149
- CreateSingle: CreateSingleOperation;
150
- CreateMulti: CreateMultipleOperation;
151
- };
152
- export {};
1
+ import { ForeignKey } from "../../types/DataType";
2
+ import { Q_DateValue, Q_NumberValue, Q_StringValue, NodeId, MakeFilter, ExprOp, ExpressionKey, SubQueryPredicateMetadata } from "../../types/Demand";
3
+ import { OneOf } from "../../types/Polyfill";
4
+ import { FormCreateData, FormUpdateData, DeduceAggregation, Operation as OakOperation, Selection as OakSelection, MakeAction as OakMakeAction, AggregationResult } from "../../types/Entity";
5
+ import { AppendOnlyAction } from "../../actions/action";
6
+ import { String } from "../../types/DataType";
7
+ import { EntityShape } from "../../types/Entity";
8
+ import * as User from "../User/Schema";
9
+ import * as OperEntity from "../OperEntity/Schema";
10
+ export type OpSchema = EntityShape & {
11
+ action: String<16>;
12
+ data: Object;
13
+ filter?: Object | null;
14
+ extra?: Object | null;
15
+ operatorId?: ForeignKey<"user"> | null;
16
+ targetEntity: String<32>;
17
+ };
18
+ export type OpAttr = keyof OpSchema;
19
+ export type Schema = EntityShape & {
20
+ action: String<16>;
21
+ data: Object;
22
+ filter?: Object | null;
23
+ extra?: Object | null;
24
+ operatorId?: ForeignKey<"user"> | null;
25
+ targetEntity: String<32>;
26
+ operator?: User.Schema | null;
27
+ operEntity$oper?: Array<OperEntity.Schema>;
28
+ operEntity$oper$$aggr?: AggregationResult<OperEntity.Schema>;
29
+ } & {
30
+ [A in ExpressionKey]?: any;
31
+ };
32
+ type AttrFilter = {
33
+ id: Q_StringValue;
34
+ $$createAt$$: Q_DateValue;
35
+ $$seq$$: Q_NumberValue;
36
+ $$updateAt$$: Q_DateValue;
37
+ action: Q_StringValue;
38
+ data: Object;
39
+ filter: Object;
40
+ extra: Object;
41
+ operatorId: Q_StringValue;
42
+ operator: User.Filter;
43
+ targetEntity: Q_StringValue;
44
+ operEntity$oper: OperEntity.Filter & SubQueryPredicateMetadata;
45
+ };
46
+ export type Filter = MakeFilter<AttrFilter & ExprOp<OpAttr | string>>;
47
+ export type Projection = {
48
+ "#id"?: NodeId;
49
+ [k: string]: any;
50
+ id?: number;
51
+ $$createAt$$?: number;
52
+ $$updateAt$$?: number;
53
+ $$seq$$?: number;
54
+ action?: number;
55
+ data?: number | Object;
56
+ filter?: number | Object;
57
+ extra?: number | Object;
58
+ operatorId?: number;
59
+ operator?: User.Projection;
60
+ targetEntity?: number;
61
+ operEntity$oper?: OperEntity.Selection & {
62
+ $entity: "operEntity";
63
+ };
64
+ operEntity$oper$$aggr?: OperEntity.Aggregation & {
65
+ $entity: "operEntity";
66
+ };
67
+ } & Partial<ExprOp<OpAttr | string>>;
68
+ type OperIdProjection = OneOf<{
69
+ id: number;
70
+ }>;
71
+ type UserIdProjection = OneOf<{
72
+ operatorId: number;
73
+ }>;
74
+ export type SortAttr = {
75
+ id: number;
76
+ } | {
77
+ $$createAt$$: number;
78
+ } | {
79
+ $$seq$$: number;
80
+ } | {
81
+ $$updateAt$$: number;
82
+ } | {
83
+ action: number;
84
+ } | {
85
+ operatorId: number;
86
+ } | {
87
+ operator: User.SortAttr;
88
+ } | {
89
+ targetEntity: number;
90
+ } | {
91
+ [k: string]: any;
92
+ } | OneOf<ExprOp<OpAttr | string>>;
93
+ export type SortNode = {
94
+ $attr: SortAttr;
95
+ $direction?: "asc" | "desc";
96
+ };
97
+ export type Sorter = SortNode[];
98
+ export type SelectOperation<P extends Object = Projection> = OakSelection<"select", P, Filter, Sorter>;
99
+ export type Selection<P extends Object = Projection> = SelectOperation<P>;
100
+ export type Aggregation = DeduceAggregation<Projection, Filter, Sorter>;
101
+ export type CreateOperationData = FormCreateData<Omit<OpSchema, "operatorId">> & (({
102
+ operatorId?: never;
103
+ operator?: User.CreateSingleOperation;
104
+ } | {
105
+ operatorId: ForeignKey<"operator">;
106
+ operator?: User.UpdateOperation;
107
+ } | {
108
+ operator?: never;
109
+ operatorId?: ForeignKey<"operator">;
110
+ })) & {
111
+ operEntity$oper?: OakOperation<"create", Omit<OperEntity.CreateOperationData, "oper" | "operId">[]> | Array<OakOperation<"create", Omit<OperEntity.CreateOperationData, "oper" | "operId">>>;
112
+ };
113
+ export type CreateSingleOperation = OakOperation<"create", CreateOperationData>;
114
+ export type CreateMultipleOperation = OakOperation<"create", Array<CreateOperationData>>;
115
+ export type CreateOperation = CreateSingleOperation | CreateMultipleOperation;
116
+ export type UpdateOperationData = FormUpdateData<Omit<OpSchema, "operatorId">> & (({
117
+ operator?: User.CreateSingleOperation;
118
+ operatorId?: never;
119
+ } | {
120
+ operator?: User.UpdateOperation;
121
+ operatorId?: never;
122
+ } | {
123
+ operator?: User.RemoveOperation;
124
+ operatorId?: never;
125
+ } | {
126
+ operator?: never;
127
+ operatorId?: ForeignKey<"operator"> | null;
128
+ })) & {
129
+ [k: string]: any;
130
+ operEntity$oper?: OakOperation<"create", Omit<OperEntity.CreateOperationData, "oper" | "operId">[]> | Array<OakOperation<"create", Omit<OperEntity.CreateOperationData, "oper" | "operId">>>;
131
+ };
132
+ export type UpdateOperation = OakOperation<"update" | string, UpdateOperationData, Filter, Sorter>;
133
+ export type RemoveOperationData = {} & (({
134
+ operator?: User.UpdateOperation | User.RemoveOperation;
135
+ }));
136
+ export type RemoveOperation = OakOperation<"remove", RemoveOperationData, Filter, Sorter>;
137
+ export type Operation = CreateOperation | UpdateOperation | RemoveOperation;
138
+ export type UserIdSubQuery = Selection<UserIdProjection>;
139
+ export type OperIdSubQuery = Selection<OperIdProjection>;
140
+ export type EntityDef = {
141
+ Schema: Schema;
142
+ OpSchema: OpSchema;
143
+ Action: OakMakeAction<AppendOnlyAction> | string;
144
+ Selection: Selection;
145
+ Aggregation: Aggregation;
146
+ Operation: Operation;
147
+ Create: CreateOperation;
148
+ Update: UpdateOperation;
149
+ Remove: RemoveOperation;
150
+ CreateSingle: CreateSingleOperation;
151
+ CreateMulti: CreateMultipleOperation;
152
+ };
153
+ export {};
@@ -1,38 +1,38 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.desc = void 0;
4
- var action_1 = require("../../actions/action");
5
- exports.desc = {
6
- attributes: {
7
- action: {
8
- notNull: true,
9
- type: "varchar",
10
- params: {
11
- length: 16
12
- }
13
- },
14
- data: {
15
- notNull: true,
16
- type: "object"
17
- },
18
- filter: {
19
- type: "object"
20
- },
21
- extra: {
22
- type: "object"
23
- },
24
- operatorId: {
25
- type: "ref",
26
- ref: "user"
27
- },
28
- targetEntity: {
29
- notNull: true,
30
- type: "varchar",
31
- params: {
32
- length: 32
33
- }
34
- }
35
- },
36
- actionType: "appendOnly",
37
- actions: action_1.appendOnlyActions
38
- };
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.desc = void 0;
4
+ const action_1 = require("../../actions/action");
5
+ exports.desc = {
6
+ attributes: {
7
+ action: {
8
+ notNull: true,
9
+ type: "varchar",
10
+ params: {
11
+ length: 16
12
+ }
13
+ },
14
+ data: {
15
+ notNull: true,
16
+ type: "object"
17
+ },
18
+ filter: {
19
+ type: "object"
20
+ },
21
+ extra: {
22
+ type: "object"
23
+ },
24
+ operatorId: {
25
+ type: "ref",
26
+ ref: "user"
27
+ },
28
+ targetEntity: {
29
+ notNull: true,
30
+ type: "varchar",
31
+ params: {
32
+ length: 32
33
+ }
34
+ }
35
+ },
36
+ actionType: "appendOnly",
37
+ actions: action_1.appendOnlyActions
38
+ };