oak-domain 3.0.4 → 4.0.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.
Files changed (220) 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 -25
  5. package/lib/base-app-domain/ActionAuth/Schema.d.ts +186 -186
  6. package/lib/base-app-domain/ActionAuth/Storage.js +39 -39
  7. package/lib/base-app-domain/ActionDefDict.d.ts +8 -8
  8. package/lib/base-app-domain/ActionDefDict.js +9 -9
  9. package/lib/base-app-domain/EntityDict.d.ts +28 -28
  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 -384
  19. package/lib/base-app-domain/ModiEntity/Storage.js +30 -30
  20. package/lib/base-app-domain/Oper/Schema.d.ts +153 -153
  21. package/lib/base-app-domain/Oper/Storage.js +38 -38
  22. package/lib/base-app-domain/OperEntity/Schema.d.ts +373 -373
  23. package/lib/base-app-domain/OperEntity/Storage.js +30 -30
  24. package/lib/base-app-domain/Path/Schema.d.ts +149 -149
  25. package/lib/base-app-domain/Path/Schema.js +2 -2
  26. package/lib/base-app-domain/Path/Storage.d.ts +3 -3
  27. package/lib/base-app-domain/Path/Storage.js +54 -54
  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 -2
  31. package/lib/base-app-domain/Relation.js +4 -4
  32. package/lib/base-app-domain/RelationAuth/Schema.d.ts +214 -214
  33. package/lib/base-app-domain/RelationAuth/Storage.js +44 -44
  34. package/lib/base-app-domain/Storage.js +31 -31
  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 -210
  38. package/lib/base-app-domain/User/Storage.js +33 -33
  39. package/lib/base-app-domain/UserEntityClaim/Schema.d.ts +264 -264
  40. package/lib/base-app-domain/UserEntityClaim/Schema.js +2 -2
  41. package/lib/base-app-domain/UserEntityClaim/Storage.d.ts +3 -3
  42. package/lib/base-app-domain/UserEntityClaim/Storage.js +37 -37
  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 -131
  46. package/lib/base-app-domain/UserEntityGrant/Storage.js +25 -25
  47. package/lib/base-app-domain/UserRelation/Schema.d.ts +208 -208
  48. package/lib/base-app-domain/UserRelation/Storage.js +56 -56
  49. package/lib/base-app-domain/_SubQuery.d.ts +142 -142
  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 -13
  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 -48
  58. package/lib/compiler/localeBuilder.d.ts +27 -22
  59. package/lib/compiler/localeBuilder.js +184 -173
  60. package/lib/compiler/schemalBuilder.d.ts +27 -27
  61. package/lib/compiler/schemalBuilder.js +3569 -3569
  62. package/lib/entities/ActionAuth.d.ts +10 -10
  63. package/lib/entities/ActionAuth.js +31 -31
  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 -8
  71. package/lib/entities/Path.js +35 -35
  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 -13
  78. package/lib/entities/UserEntityClaim.js +17 -17
  79. package/lib/entities/UserEntityGrant.d.ts +9 -9
  80. package/lib/entities/UserEntityGrant.js +15 -15
  81. package/lib/entities/UserRelation.d.ts +10 -10
  82. package/lib/entities/UserRelation.js +38 -38
  83. package/lib/index.d.ts +23 -23
  84. package/lib/index.js +37 -37
  85. package/lib/store/AsyncRowStore.d.ts +65 -59
  86. package/lib/store/AsyncRowStore.js +176 -116
  87. package/lib/store/CascadeStore.d.ts +106 -103
  88. package/lib/store/CascadeStore.js +1740 -1662
  89. package/lib/store/RelationAuth.d.ts +96 -96
  90. package/lib/store/RelationAuth.js +1336 -1334
  91. package/lib/store/SyncRowStore.d.ts +29 -29
  92. package/lib/store/SyncRowStore.js +50 -50
  93. package/lib/store/TriggerExecutor.d.ts +41 -38
  94. package/lib/store/TriggerExecutor.js +468 -459
  95. package/lib/store/actionAuth.d.ts +4 -4
  96. package/lib/store/actionAuth.js +25 -25
  97. package/lib/store/actionDef.d.ts +10 -10
  98. package/lib/store/actionDef.js +278 -278
  99. package/lib/store/checker.d.ts +26 -26
  100. package/lib/store/checker.js +487 -487
  101. package/lib/store/filter.d.ts +85 -122
  102. package/lib/store/filter.js +1652 -1623
  103. package/lib/store/modi.d.ts +13 -13
  104. package/lib/store/modi.js +254 -254
  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 -57
  109. package/lib/timers/vaccum.d.ts +20 -20
  110. package/lib/timers/vaccum.js +111 -111
  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 -17
  115. package/lib/types/AppLoader.js +10 -10
  116. package/lib/types/Auth.d.ts +70 -70
  117. package/lib/types/Cluster.d.ts +5 -0
  118. package/lib/types/Cluster.js +2 -0
  119. package/lib/types/Connector.d.ts +38 -38
  120. package/lib/types/Connector.js +2 -2
  121. package/lib/types/DataType.d.ts +25 -25
  122. package/lib/types/DataType.js +6 -6
  123. package/lib/types/Demand.d.ts +89 -88
  124. package/lib/types/Demand.js +10 -10
  125. package/lib/types/Endpoint.d.ts +11 -11
  126. package/lib/types/Entity.d.ts +209 -202
  127. package/lib/types/Entity.js +15 -15
  128. package/lib/types/EntityDesc.d.ts +9 -9
  129. package/lib/types/EntityDesc.js +2 -2
  130. package/lib/types/Environment.d.ts +90 -57
  131. package/lib/types/Environment.js +2 -2
  132. package/lib/types/Exception.d.ts +147 -147
  133. package/lib/types/Exception.js +406 -406
  134. package/lib/types/Expression.d.ts +163 -163
  135. package/lib/types/Expression.js +397 -394
  136. package/lib/types/Geo.d.ts +18 -18
  137. package/lib/types/Locale.d.ts +25 -25
  138. package/lib/types/Logger.d.ts +6 -6
  139. package/lib/types/Polyfill.d.ts +24 -24
  140. package/lib/types/Port.d.ts +18 -18
  141. package/lib/types/RowStore.d.ts +19 -18
  142. package/lib/types/RowStore.js +33 -33
  143. package/lib/types/Storage.d.ts +58 -58
  144. package/lib/types/Style.d.ts +11 -11
  145. package/lib/types/Timer.d.ts +20 -14
  146. package/lib/types/Trigger.d.ts +118 -124
  147. package/lib/types/Trigger.js +35 -58
  148. package/lib/types/Watcher.d.ts +19 -19
  149. package/lib/types/index.d.ts +26 -25
  150. package/lib/types/index.js +29 -28
  151. package/lib/types/schema/DataTypes.d.ts +34 -34
  152. package/lib/utils/SimpleConnector.d.ts +64 -64
  153. package/lib/utils/SimpleConnector.js +206 -206
  154. package/lib/utils/assert.d.ts +5 -5
  155. package/lib/utils/assert.js +9 -9
  156. package/lib/utils/concurrent.d.ts +15 -15
  157. package/lib/utils/concurrent.js +63 -63
  158. package/lib/utils/date.js +18 -18
  159. package/lib/utils/{url.d.ts → domain.d.ts} +1 -1
  160. package/lib/utils/{url.js → domain.js} +11 -13
  161. package/lib/utils/geo.js +24 -24
  162. package/lib/utils/lodash.d.ts +24 -22
  163. package/lib/utils/lodash.js +46 -42
  164. package/lib/utils/mask.js +34 -34
  165. package/lib/utils/money.d.ts +6 -6
  166. package/lib/utils/money.js +51 -51
  167. package/lib/utils/projection.d.ts +4 -4
  168. package/lib/utils/projection.js +15 -15
  169. package/lib/utils/random/random.js +19 -19
  170. package/lib/utils/random/random.mp.js +14 -14
  171. package/lib/utils/random/random.native.d.ts +1 -0
  172. package/lib/utils/random/random.native.js +14 -0
  173. package/lib/utils/random/random.web.js +11 -11
  174. package/lib/utils/string.d.ts +28 -28
  175. package/lib/utils/string.js +69 -69
  176. package/lib/utils/url/index.d.ts +7 -0
  177. package/lib/utils/url/index.js +8 -0
  178. package/lib/utils/url/index.mp.d.ts +3 -0
  179. package/lib/utils/url/index.mp.js +8 -0
  180. package/lib/utils/url/index.native.d.ts +12 -0
  181. package/lib/utils/url/index.native.js +7 -0
  182. package/lib/utils/url/index.web.d.ts +12 -0
  183. package/lib/utils/url/index.web.js +7 -0
  184. package/lib/utils/url/whatwg-url/index.d.ts +3 -0
  185. package/lib/utils/url/whatwg-url/index.js +16 -0
  186. package/lib/utils/url/whatwg-url/lib/URL-impl.d.ts +20 -0
  187. package/lib/utils/url/whatwg-url/lib/URL-impl.js +175 -0
  188. package/lib/utils/url/whatwg-url/lib/URL.d.ts +1 -0
  189. package/lib/utils/url/whatwg-url/lib/URL.js +298 -0
  190. package/lib/utils/url/whatwg-url/lib/URLSearchParams-impl.d.ts +19 -0
  191. package/lib/utils/url/whatwg-url/lib/URLSearchParams-impl.js +126 -0
  192. package/lib/utils/url/whatwg-url/lib/URLSearchParams.d.ts +1 -0
  193. package/lib/utils/url/whatwg-url/lib/URLSearchParams.js +426 -0
  194. package/lib/utils/url/whatwg-url/lib/infra.d.ts +12 -0
  195. package/lib/utils/url/whatwg-url/lib/infra.js +25 -0
  196. package/lib/utils/url/whatwg-url/lib/url-state-machine.d.ts +24 -0
  197. package/lib/utils/url/whatwg-url/lib/url-state-machine.js +1238 -0
  198. package/lib/utils/url/whatwg-url/lib/urlencoded.d.ts +15 -0
  199. package/lib/utils/url/whatwg-url/lib/urlencoded.js +162 -0
  200. package/lib/utils/url/whatwg-url/lib/utils.d.ts +37 -0
  201. package/lib/utils/url/whatwg-url/lib/utils.js +101 -0
  202. package/lib/utils/uuid.d.ts +17 -17
  203. package/lib/utils/uuid.js +218 -218
  204. package/lib/utils/validator.d.ts +26 -26
  205. package/lib/utils/validator.js +131 -131
  206. package/lib/utils/version.js +21 -21
  207. package/package.json +50 -49
  208. package/src/entities/ActionAuth.ts +41 -41
  209. package/src/entities/I18n.ts +45 -46
  210. package/src/entities/Modi.ts +69 -69
  211. package/src/entities/ModiEntity.ts +26 -26
  212. package/src/entities/Oper.ts +32 -32
  213. package/src/entities/OperEntity.ts +27 -27
  214. package/src/entities/Path.ts +43 -43
  215. package/src/entities/Relation.ts +43 -43
  216. package/src/entities/RelationAuth.ts +44 -44
  217. package/src/entities/User.ts +48 -48
  218. package/src/entities/UserEntityClaim.ts +29 -29
  219. package/src/entities/UserEntityGrant.ts +24 -24
  220. package/src/entities/UserRelation.ts +50 -50
@@ -1,16 +1,16 @@
1
- import { ActionDef } from '../types/Action';
2
- export type ReadOnlyAction = 'select' | 'count' | 'stat' | 'download' | 'aggregate';
3
- export type AppendOnlyAction = ReadOnlyAction | 'create';
4
- export type ExcludeUpdateAction = AppendOnlyAction | 'remove';
5
- export type ExcludeRemoveAction = AppendOnlyAction | 'update';
6
- export type GenericAction = 'update' | ExcludeUpdateAction;
7
- export type RelationAction = 'grant' | 'revoke';
8
- export declare const readOnlyActions: string[];
9
- export declare const appendOnlyActions: string[];
10
- export declare const excludeUpdateActions: string[];
11
- export declare const excludeRemoveActions: string[];
12
- export declare const genericActions: string[];
13
- export declare const relationActions: string[];
14
- export type AbleAction = 'enable' | 'disable';
15
- export type AbleState = 'enabled' | 'disabled';
16
- export declare const makeAbleActionDef: (initialState?: AbleState) => ActionDef<AbleAction, AbleState>;
1
+ import { ActionDef } from '../types/Action';
2
+ export type ReadOnlyAction = 'select' | 'count' | 'stat' | 'download' | 'aggregate';
3
+ export type AppendOnlyAction = ReadOnlyAction | 'create';
4
+ export type ExcludeUpdateAction = AppendOnlyAction | 'remove';
5
+ export type ExcludeRemoveAction = AppendOnlyAction | 'update';
6
+ export type GenericAction = 'update' | ExcludeUpdateAction;
7
+ export type RelationAction = 'grant' | 'revoke';
8
+ export declare const readOnlyActions: string[];
9
+ export declare const appendOnlyActions: string[];
10
+ export declare const excludeUpdateActions: string[];
11
+ export declare const excludeRemoveActions: string[];
12
+ export declare const genericActions: string[];
13
+ export declare const relationActions: string[];
14
+ export type AbleAction = 'enable' | 'disable';
15
+ export type AbleState = 'enabled' | 'disabled';
16
+ export declare const makeAbleActionDef: (initialState?: AbleState) => ActionDef<AbleAction, AbleState>;
@@ -1,17 +1,17 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.makeAbleActionDef = exports.relationActions = exports.genericActions = exports.excludeRemoveActions = exports.excludeUpdateActions = exports.appendOnlyActions = exports.readOnlyActions = void 0;
4
- exports.readOnlyActions = ['count', 'stat', 'download', 'select', 'aggregate'];
5
- exports.appendOnlyActions = exports.readOnlyActions.concat('create');
6
- exports.excludeUpdateActions = exports.appendOnlyActions.concat('remove');
7
- exports.excludeRemoveActions = exports.appendOnlyActions.concat('update');
8
- exports.genericActions = exports.excludeUpdateActions.concat('update');
9
- exports.relationActions = ['grant', 'revoke'];
10
- const makeAbleActionDef = (initialState) => ({
11
- stm: {
12
- enable: ['disabled', 'enabled'],
13
- disable: ['enabled', 'disabled'],
14
- },
15
- is: initialState,
16
- });
17
- exports.makeAbleActionDef = makeAbleActionDef;
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.makeAbleActionDef = exports.relationActions = exports.genericActions = exports.excludeRemoveActions = exports.excludeUpdateActions = exports.appendOnlyActions = exports.readOnlyActions = void 0;
4
+ exports.readOnlyActions = ['count', 'stat', 'download', 'select', 'aggregate'];
5
+ exports.appendOnlyActions = exports.readOnlyActions.concat('create');
6
+ exports.excludeUpdateActions = exports.appendOnlyActions.concat('remove');
7
+ exports.excludeRemoveActions = exports.appendOnlyActions.concat('update');
8
+ exports.genericActions = exports.excludeUpdateActions.concat('update');
9
+ exports.relationActions = ['grant', 'revoke'];
10
+ const makeAbleActionDef = (initialState) => ({
11
+ stm: {
12
+ enable: ['disabled', 'enabled'],
13
+ disable: ['enabled', 'disabled'],
14
+ },
15
+ is: initialState,
16
+ });
17
+ exports.makeAbleActionDef = makeAbleActionDef;
@@ -1,5 +1,5 @@
1
- import { CascadeRelationItem, RelationHierarchy, EntityDict } from "../types/Entity";
2
- export type GenericRelation = 'owner';
3
- export declare function convertHierarchyToAuth<ED extends EntityDict, T extends keyof ED>(entity: T, hierarchy: RelationHierarchy<NonNullable<ED[T]['Relation']>>): {
4
- [K in NonNullable<ED[T]['Relation']>]?: CascadeRelationItem;
5
- };
1
+ import { CascadeRelationItem, RelationHierarchy, EntityDict } from "../types/Entity";
2
+ export type GenericRelation = 'owner';
3
+ export declare function convertHierarchyToAuth<ED extends EntityDict, T extends keyof ED>(entity: T, hierarchy: RelationHierarchy<NonNullable<ED[T]['Relation']>>): {
4
+ [K in NonNullable<ED[T]['Relation']>]?: CascadeRelationItem;
5
+ };
@@ -1,25 +1,25 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.convertHierarchyToAuth = void 0;
4
- function convertHierarchyToAuth(entity, hierarchy) {
5
- const reverseHierarchy = {};
6
- for (const r in hierarchy) {
7
- for (const r2 of hierarchy[r]) {
8
- if (reverseHierarchy[r2]) {
9
- reverseHierarchy[r2]?.push(r);
10
- }
11
- else {
12
- reverseHierarchy[r2] = [r];
13
- }
14
- }
15
- }
16
- const result = {};
17
- for (const r in reverseHierarchy) {
18
- result[r] = {
19
- cascadePath: '',
20
- relations: reverseHierarchy[r],
21
- };
22
- }
23
- return result;
24
- }
25
- exports.convertHierarchyToAuth = convertHierarchyToAuth;
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.convertHierarchyToAuth = void 0;
4
+ function convertHierarchyToAuth(entity, hierarchy) {
5
+ const reverseHierarchy = {};
6
+ for (const r in hierarchy) {
7
+ for (const r2 of hierarchy[r]) {
8
+ if (reverseHierarchy[r2]) {
9
+ reverseHierarchy[r2]?.push(r);
10
+ }
11
+ else {
12
+ reverseHierarchy[r2] = [r];
13
+ }
14
+ }
15
+ }
16
+ const result = {};
17
+ for (const r in reverseHierarchy) {
18
+ result[r] = {
19
+ cascadePath: '',
20
+ relations: reverseHierarchy[r],
21
+ };
22
+ }
23
+ return result;
24
+ }
25
+ exports.convertHierarchyToAuth = convertHierarchyToAuth;
@@ -1,186 +1,186 @@
1
- import { ForeignKey, JsonProjection } from "../../types/DataType";
2
- import { Q_DateValue, Q_StringValue, NodeId, MakeFilter, ExprOp, ExpressionKey, JsonFilter, 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 { GenericAction } from "../../actions/action";
6
- import { EntityShape } from "../../types/Entity";
7
- import * as Relation from "../Relation/Schema";
8
- import * as Path from "../Path/Schema";
9
- import * as ModiEntity from "../ModiEntity/Schema";
10
- import * as OperEntity from "../OperEntity/Schema";
11
- type Actions = string[];
12
- export type OpSchema = EntityShape & {
13
- relationId?: ForeignKey<"relation"> | null;
14
- pathId: ForeignKey<"path">;
15
- deActions: Actions;
16
- };
17
- export type OpAttr = keyof OpSchema;
18
- export type Schema = EntityShape & {
19
- relationId?: ForeignKey<"relation"> | null;
20
- pathId: ForeignKey<"path">;
21
- deActions: Actions;
22
- relation?: Relation.Schema | null;
23
- path: Path.Schema;
24
- modiEntity$entity?: Array<ModiEntity.Schema>;
25
- modiEntity$entity$$aggr?: AggregationResult<ModiEntity.Schema>;
26
- operEntity$entity?: Array<OperEntity.Schema>;
27
- operEntity$entity$$aggr?: AggregationResult<OperEntity.Schema>;
28
- } & {
29
- [A in ExpressionKey]?: any;
30
- };
31
- type AttrFilter = {
32
- id: Q_StringValue;
33
- $$createAt$$: Q_DateValue;
34
- $$seq$$: Q_StringValue;
35
- $$updateAt$$: Q_DateValue;
36
- relationId: Q_StringValue;
37
- relation: Relation.Filter;
38
- pathId: Q_StringValue;
39
- path: Path.Filter;
40
- deActions: JsonFilter<Actions>;
41
- modiEntity$entity: ModiEntity.Filter & SubQueryPredicateMetadata;
42
- operEntity$entity: OperEntity.Filter & SubQueryPredicateMetadata;
43
- };
44
- export type Filter = MakeFilter<AttrFilter & ExprOp<OpAttr | string>>;
45
- export type Projection = {
46
- "#id"?: NodeId;
47
- [k: string]: any;
48
- id?: number;
49
- $$createAt$$?: number;
50
- $$updateAt$$?: number;
51
- $$seq$$?: number;
52
- relationId?: number;
53
- relation?: Relation.Projection;
54
- pathId?: number;
55
- path?: Path.Projection;
56
- deActions?: number | JsonProjection<Actions>;
57
- modiEntity$entity?: ModiEntity.Selection & {
58
- $entity: "modiEntity";
59
- };
60
- modiEntity$entity$$aggr?: ModiEntity.Aggregation & {
61
- $entity: "modiEntity";
62
- };
63
- operEntity$entity?: OperEntity.Selection & {
64
- $entity: "operEntity";
65
- };
66
- operEntity$entity$$aggr?: OperEntity.Aggregation & {
67
- $entity: "operEntity";
68
- };
69
- } & Partial<ExprOp<OpAttr | string>>;
70
- type ActionAuthIdProjection = OneOf<{
71
- id: number;
72
- }>;
73
- type RelationIdProjection = OneOf<{
74
- relationId: number;
75
- }>;
76
- type PathIdProjection = OneOf<{
77
- pathId: number;
78
- }>;
79
- export type SortAttr = {
80
- id: number;
81
- } | {
82
- $$createAt$$: number;
83
- } | {
84
- $$seq$$: number;
85
- } | {
86
- $$updateAt$$: number;
87
- } | {
88
- relationId: number;
89
- } | {
90
- relation: Relation.SortAttr;
91
- } | {
92
- pathId: number;
93
- } | {
94
- path: Path.SortAttr;
95
- } | {
96
- deActions: number;
97
- } | {
98
- [k: string]: any;
99
- } | OneOf<ExprOp<OpAttr | string>>;
100
- export type SortNode = {
101
- $attr: SortAttr;
102
- $direction?: "asc" | "desc";
103
- };
104
- export type Sorter = SortNode[];
105
- export type SelectOperation<P extends Object = Projection> = OakSelection<"select", P, Filter, Sorter>;
106
- export type Selection<P extends Object = Projection> = SelectOperation<P>;
107
- export type Aggregation = DeduceAggregation<Projection, Filter, Sorter>;
108
- export type CreateOperationData = FormCreateData<Omit<OpSchema, "relationId" | "pathId">> & (({
109
- relationId?: never;
110
- relation?: Relation.CreateSingleOperation;
111
- } | {
112
- relationId: ForeignKey<"relation">;
113
- relation?: Relation.UpdateOperation;
114
- } | {
115
- relation?: never;
116
- relationId?: ForeignKey<"relation">;
117
- }) & ({
118
- pathId?: never;
119
- path: Path.CreateSingleOperation;
120
- } | {
121
- pathId: ForeignKey<"path">;
122
- path?: Path.UpdateOperation;
123
- } | {
124
- path?: never;
125
- pathId: ForeignKey<"path">;
126
- })) & {
127
- modiEntity$entity?: OakOperation<"create", Omit<ModiEntity.CreateOperationData, "entity" | "entityId">[]> | Array<OakOperation<"create", Omit<ModiEntity.CreateOperationData, "entity" | "entityId">>>;
128
- operEntity$entity?: OakOperation<"create", Omit<OperEntity.CreateOperationData, "entity" | "entityId">[]> | Array<OakOperation<"create", Omit<OperEntity.CreateOperationData, "entity" | "entityId">>>;
129
- };
130
- export type CreateSingleOperation = OakOperation<"create", CreateOperationData>;
131
- export type CreateMultipleOperation = OakOperation<"create", Array<CreateOperationData>>;
132
- export type CreateOperation = CreateSingleOperation | CreateMultipleOperation;
133
- export type UpdateOperationData = FormUpdateData<Omit<OpSchema, "relationId" | "pathId">> & (({
134
- relation?: Relation.CreateSingleOperation;
135
- relationId?: never;
136
- } | {
137
- relation?: Relation.UpdateOperation;
138
- relationId?: never;
139
- } | {
140
- relation?: Relation.RemoveOperation;
141
- relationId?: never;
142
- } | {
143
- relation?: never;
144
- relationId?: ForeignKey<"relation"> | null;
145
- }) & ({
146
- path?: Path.CreateSingleOperation;
147
- pathId?: never;
148
- } | {
149
- path?: Path.UpdateOperation;
150
- pathId?: never;
151
- } | {
152
- path?: Path.RemoveOperation;
153
- pathId?: never;
154
- } | {
155
- path?: never;
156
- pathId?: ForeignKey<"path">;
157
- })) & {
158
- [k: string]: any;
159
- modiEntity$entity?: OakOperation<"create", Omit<ModiEntity.CreateOperationData, "entity" | "entityId">[]> | Array<OakOperation<"create", Omit<ModiEntity.CreateOperationData, "entity" | "entityId">>>;
160
- operEntity$entity?: OakOperation<"create", Omit<OperEntity.CreateOperationData, "entity" | "entityId">[]> | Array<OakOperation<"create", Omit<OperEntity.CreateOperationData, "entity" | "entityId">>>;
161
- };
162
- export type UpdateOperation = OakOperation<"update" | string, UpdateOperationData, Filter, Sorter>;
163
- export type RemoveOperationData = {} & (({
164
- relation?: Relation.UpdateOperation | Relation.RemoveOperation;
165
- }) & ({
166
- path?: Path.UpdateOperation | Path.RemoveOperation;
167
- }));
168
- export type RemoveOperation = OakOperation<"remove", RemoveOperationData, Filter, Sorter>;
169
- export type Operation = CreateOperation | UpdateOperation | RemoveOperation;
170
- export type RelationIdSubQuery = Selection<RelationIdProjection>;
171
- export type PathIdSubQuery = Selection<PathIdProjection>;
172
- export type ActionAuthIdSubQuery = Selection<ActionAuthIdProjection>;
173
- export type EntityDef = {
174
- Schema: Schema;
175
- OpSchema: OpSchema;
176
- Action: OakMakeAction<GenericAction> | string;
177
- Selection: Selection;
178
- Aggregation: Aggregation;
179
- Operation: Operation;
180
- Create: CreateOperation;
181
- Update: UpdateOperation;
182
- Remove: RemoveOperation;
183
- CreateSingle: CreateSingleOperation;
184
- CreateMulti: CreateMultipleOperation;
185
- };
186
- export {};
1
+ import { ForeignKey, JsonProjection } from "../../types/DataType";
2
+ import { Q_DateValue, Q_NumberValue, Q_StringValue, NodeId, MakeFilter, ExprOp, ExpressionKey, JsonFilter, 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 { GenericAction } from "../../actions/action";
6
+ import { EntityShape } from "../../types/Entity";
7
+ import * as Relation from "../Relation/Schema";
8
+ import * as Path from "../Path/Schema";
9
+ import * as ModiEntity from "../ModiEntity/Schema";
10
+ import * as OperEntity from "../OperEntity/Schema";
11
+ type Actions = string[];
12
+ export type OpSchema = EntityShape & {
13
+ relationId?: ForeignKey<"relation"> | null;
14
+ pathId: ForeignKey<"path">;
15
+ deActions: Actions;
16
+ };
17
+ export type OpAttr = keyof OpSchema;
18
+ export type Schema = EntityShape & {
19
+ relationId?: ForeignKey<"relation"> | null;
20
+ pathId: ForeignKey<"path">;
21
+ deActions: Actions;
22
+ relation?: Relation.Schema | null;
23
+ path: Path.Schema;
24
+ modiEntity$entity?: Array<ModiEntity.Schema>;
25
+ modiEntity$entity$$aggr?: AggregationResult<ModiEntity.Schema>;
26
+ operEntity$entity?: Array<OperEntity.Schema>;
27
+ operEntity$entity$$aggr?: AggregationResult<OperEntity.Schema>;
28
+ } & {
29
+ [A in ExpressionKey]?: any;
30
+ };
31
+ type AttrFilter = {
32
+ id: Q_StringValue;
33
+ $$createAt$$: Q_DateValue;
34
+ $$seq$$: Q_NumberValue;
35
+ $$updateAt$$: Q_DateValue;
36
+ relationId: Q_StringValue;
37
+ relation: Relation.Filter;
38
+ pathId: Q_StringValue;
39
+ path: Path.Filter;
40
+ deActions: JsonFilter<Actions>;
41
+ modiEntity$entity: ModiEntity.Filter & SubQueryPredicateMetadata;
42
+ operEntity$entity: OperEntity.Filter & SubQueryPredicateMetadata;
43
+ };
44
+ export type Filter = MakeFilter<AttrFilter & ExprOp<OpAttr | string>>;
45
+ export type Projection = {
46
+ "#id"?: NodeId;
47
+ [k: string]: any;
48
+ id?: number;
49
+ $$createAt$$?: number;
50
+ $$updateAt$$?: number;
51
+ $$seq$$?: number;
52
+ relationId?: number;
53
+ relation?: Relation.Projection;
54
+ pathId?: number;
55
+ path?: Path.Projection;
56
+ deActions?: number | JsonProjection<Actions>;
57
+ modiEntity$entity?: ModiEntity.Selection & {
58
+ $entity: "modiEntity";
59
+ };
60
+ modiEntity$entity$$aggr?: ModiEntity.Aggregation & {
61
+ $entity: "modiEntity";
62
+ };
63
+ operEntity$entity?: OperEntity.Selection & {
64
+ $entity: "operEntity";
65
+ };
66
+ operEntity$entity$$aggr?: OperEntity.Aggregation & {
67
+ $entity: "operEntity";
68
+ };
69
+ } & Partial<ExprOp<OpAttr | string>>;
70
+ type ActionAuthIdProjection = OneOf<{
71
+ id: number;
72
+ }>;
73
+ type RelationIdProjection = OneOf<{
74
+ relationId: number;
75
+ }>;
76
+ type PathIdProjection = OneOf<{
77
+ pathId: number;
78
+ }>;
79
+ export type SortAttr = {
80
+ id: number;
81
+ } | {
82
+ $$createAt$$: number;
83
+ } | {
84
+ $$seq$$: number;
85
+ } | {
86
+ $$updateAt$$: number;
87
+ } | {
88
+ relationId: number;
89
+ } | {
90
+ relation: Relation.SortAttr;
91
+ } | {
92
+ pathId: number;
93
+ } | {
94
+ path: Path.SortAttr;
95
+ } | {
96
+ deActions: number;
97
+ } | {
98
+ [k: string]: any;
99
+ } | OneOf<ExprOp<OpAttr | string>>;
100
+ export type SortNode = {
101
+ $attr: SortAttr;
102
+ $direction?: "asc" | "desc";
103
+ };
104
+ export type Sorter = SortNode[];
105
+ export type SelectOperation<P extends Object = Projection> = OakSelection<"select", P, Filter, Sorter>;
106
+ export type Selection<P extends Object = Projection> = SelectOperation<P>;
107
+ export type Aggregation = DeduceAggregation<Projection, Filter, Sorter>;
108
+ export type CreateOperationData = FormCreateData<Omit<OpSchema, "relationId" | "pathId">> & (({
109
+ relationId?: never;
110
+ relation?: Relation.CreateSingleOperation;
111
+ } | {
112
+ relationId: ForeignKey<"relation">;
113
+ relation?: Relation.UpdateOperation;
114
+ } | {
115
+ relation?: never;
116
+ relationId?: ForeignKey<"relation">;
117
+ }) & ({
118
+ pathId?: never;
119
+ path: Path.CreateSingleOperation;
120
+ } | {
121
+ pathId: ForeignKey<"path">;
122
+ path?: Path.UpdateOperation;
123
+ } | {
124
+ path?: never;
125
+ pathId: ForeignKey<"path">;
126
+ })) & {
127
+ modiEntity$entity?: OakOperation<"create", Omit<ModiEntity.CreateOperationData, "entity" | "entityId">[]> | Array<OakOperation<"create", Omit<ModiEntity.CreateOperationData, "entity" | "entityId">>>;
128
+ operEntity$entity?: OakOperation<"create", Omit<OperEntity.CreateOperationData, "entity" | "entityId">[]> | Array<OakOperation<"create", Omit<OperEntity.CreateOperationData, "entity" | "entityId">>>;
129
+ };
130
+ export type CreateSingleOperation = OakOperation<"create", CreateOperationData>;
131
+ export type CreateMultipleOperation = OakOperation<"create", Array<CreateOperationData>>;
132
+ export type CreateOperation = CreateSingleOperation | CreateMultipleOperation;
133
+ export type UpdateOperationData = FormUpdateData<Omit<OpSchema, "relationId" | "pathId">> & (({
134
+ relation?: Relation.CreateSingleOperation;
135
+ relationId?: never;
136
+ } | {
137
+ relation?: Relation.UpdateOperation;
138
+ relationId?: never;
139
+ } | {
140
+ relation?: Relation.RemoveOperation;
141
+ relationId?: never;
142
+ } | {
143
+ relation?: never;
144
+ relationId?: ForeignKey<"relation"> | null;
145
+ }) & ({
146
+ path?: Path.CreateSingleOperation;
147
+ pathId?: never;
148
+ } | {
149
+ path?: Path.UpdateOperation;
150
+ pathId?: never;
151
+ } | {
152
+ path?: Path.RemoveOperation;
153
+ pathId?: never;
154
+ } | {
155
+ path?: never;
156
+ pathId?: ForeignKey<"path">;
157
+ })) & {
158
+ [k: string]: any;
159
+ modiEntity$entity?: OakOperation<"create", Omit<ModiEntity.CreateOperationData, "entity" | "entityId">[]> | Array<OakOperation<"create", Omit<ModiEntity.CreateOperationData, "entity" | "entityId">>>;
160
+ operEntity$entity?: OakOperation<"create", Omit<OperEntity.CreateOperationData, "entity" | "entityId">[]> | Array<OakOperation<"create", Omit<OperEntity.CreateOperationData, "entity" | "entityId">>>;
161
+ };
162
+ export type UpdateOperation = OakOperation<"update" | string, UpdateOperationData, Filter, Sorter>;
163
+ export type RemoveOperationData = {} & (({
164
+ relation?: Relation.UpdateOperation | Relation.RemoveOperation;
165
+ }) & ({
166
+ path?: Path.UpdateOperation | Path.RemoveOperation;
167
+ }));
168
+ export type RemoveOperation = OakOperation<"remove", RemoveOperationData, Filter, Sorter>;
169
+ export type Operation = CreateOperation | UpdateOperation | RemoveOperation;
170
+ export type RelationIdSubQuery = Selection<RelationIdProjection>;
171
+ export type PathIdSubQuery = Selection<PathIdProjection>;
172
+ export type ActionAuthIdSubQuery = Selection<ActionAuthIdProjection>;
173
+ export type EntityDef = {
174
+ Schema: Schema;
175
+ OpSchema: OpSchema;
176
+ Action: OakMakeAction<GenericAction> | string;
177
+ Selection: Selection;
178
+ Aggregation: Aggregation;
179
+ Operation: Operation;
180
+ Create: CreateOperation;
181
+ Update: UpdateOperation;
182
+ Remove: RemoveOperation;
183
+ CreateSingle: CreateSingleOperation;
184
+ CreateMulti: CreateMultipleOperation;
185
+ };
186
+ export {};
@@ -1,39 +1,39 @@
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
- relationId: {
8
- type: "ref",
9
- ref: "relation"
10
- },
11
- pathId: {
12
- notNull: true,
13
- type: "ref",
14
- ref: "path"
15
- },
16
- deActions: {
17
- notNull: true,
18
- type: "object"
19
- }
20
- },
21
- actionType: "crud",
22
- actions: action_1.genericActions,
23
- indexes: [
24
- {
25
- name: 'index_relation_path',
26
- attributes: [
27
- {
28
- name: "relationId",
29
- },
30
- {
31
- name: "pathId",
32
- }
33
- ],
34
- config: {
35
- unique: true,
36
- },
37
- }
38
- ]
39
- };
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
+ relationId: {
8
+ type: "ref",
9
+ ref: "relation"
10
+ },
11
+ pathId: {
12
+ notNull: true,
13
+ type: "ref",
14
+ ref: "path"
15
+ },
16
+ deActions: {
17
+ notNull: true,
18
+ type: "object"
19
+ }
20
+ },
21
+ actionType: "crud",
22
+ actions: action_1.genericActions,
23
+ indexes: [
24
+ {
25
+ name: 'index_relation_path',
26
+ attributes: [
27
+ {
28
+ name: "relationId",
29
+ },
30
+ {
31
+ name: "pathId",
32
+ }
33
+ ],
34
+ config: {
35
+ unique: true,
36
+ },
37
+ }
38
+ ]
39
+ };
@@ -1,8 +1,8 @@
1
- export declare const ActionDefDict: {
2
- modi: {
3
- iState: import("..").ActionDef<string, string>;
4
- };
5
- user: {
6
- userState: import("..").ActionDef<string, string>;
7
- };
8
- };
1
+ export declare const ActionDefDict: {
2
+ modi: {
3
+ iState: import("..").ActionDef<string, string>;
4
+ };
5
+ user: {
6
+ userState: import("..").ActionDef<string, string>;
7
+ };
8
+ };
@@ -1,9 +1,9 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.ActionDefDict = void 0;
4
- const Action_1 = require("./Modi/Action");
5
- const Action_2 = require("./User/Action");
6
- exports.ActionDefDict = {
7
- modi: Action_1.ActionDefDict,
8
- user: Action_2.ActionDefDict
9
- };
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.ActionDefDict = void 0;
4
+ const Action_1 = require("./Modi/Action");
5
+ const Action_2 = require("./User/Action");
6
+ exports.ActionDefDict = {
7
+ modi: Action_1.ActionDefDict,
8
+ user: Action_2.ActionDefDict
9
+ };