@freelog/freelog-cg-collection 1.2.13 → 1.2.14

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 (131) hide show
  1. package/dist/resources/context_config/event_configs.json +126 -0
  2. package/dist/src/calculator/CalculatorFactory.d.ts +17 -0
  3. package/dist/src/calculator/CalculatorFactory.js +40 -0
  4. package/dist/src/calculator/CalculatorFactoryBuilder.d.ts +4 -0
  5. package/dist/src/calculator/CalculatorFactoryBuilder.js +13 -0
  6. package/dist/src/calculator/ExpArgsGroupCalculator.d.ts +12 -0
  7. package/dist/src/calculator/ExpArgsGroupCalculator.js +25 -0
  8. package/dist/src/calculator/ExpBooleanCalculator.d.ts +13 -0
  9. package/dist/src/calculator/ExpBooleanCalculator.js +81 -0
  10. package/dist/src/calculator/ExpCalculator.d.ts +17 -0
  11. package/dist/src/calculator/ExpCalculator.js +56 -0
  12. package/dist/src/calculator/ExpCollectionCalculator.d.ts +0 -0
  13. package/dist/src/calculator/ExpCollectionCalculator.js +1 -0
  14. package/dist/src/calculator/ExpConditionCalculator.d.ts +12 -0
  15. package/dist/src/calculator/ExpConditionCalculator.js +34 -0
  16. package/dist/src/contract-declaration-executor/DefaultContractDeclarationExecutor.d.ts +8 -0
  17. package/dist/src/contract-declaration-executor/DefaultContractDeclarationExecutor.js +13 -0
  18. package/dist/src/contract-declaration-executor/DynamicContractDeclarationExecutor.d.ts +7 -0
  19. package/dist/src/contract-declaration-executor/DynamicContractDeclarationExecutor.js +21 -0
  20. package/dist/src/contract-declaration-executor/USEContractDeclaration.d.ts +4 -0
  21. package/dist/src/contract-declaration-executor/USEContractDeclaration.js +23 -0
  22. package/dist/src/function-executor/ApiFunctionExecutor.d.ts +11 -0
  23. package/dist/src/function-executor/ApiFunctionExecutor.js +17 -0
  24. package/dist/src/function-executor/DefaultFunctionExecutor.d.ts +11 -0
  25. package/dist/src/function-executor/DefaultFunctionExecutor.js +19 -0
  26. package/dist/src/function-executor/DynamicFunctionExecutor.d.ts +13 -0
  27. package/dist/src/function-executor/DynamicFunctionExecutor.js +58 -0
  28. package/dist/src/function-executor/FunFunctionExecutor.d.ts +15 -0
  29. package/dist/src/function-executor/FunFunctionExecutor.js +48 -0
  30. package/dist/src/function-executor/KitFunctionExecutor.d.ts +9 -0
  31. package/dist/src/function-executor/KitFunctionExecutor.js +32 -0
  32. package/dist/src/function-executor/QueryFunctionExecutor.d.ts +40 -0
  33. package/dist/src/function-executor/QueryFunctionExecutor.js +42 -0
  34. package/dist/src/function-executor/TimeFunctionExecutor.d.ts +8 -0
  35. package/dist/src/function-executor/TimeFunctionExecutor.js +51 -0
  36. package/dist/src/helper/ContractDeclarationHelper.d.ts +7 -0
  37. package/dist/src/helper/ContractDeclarationHelper.js +28 -0
  38. package/dist/src/helper/ExpHelper.d.ts +16 -0
  39. package/dist/src/helper/ExpHelper.js +86 -0
  40. package/dist/src/helper/FunctionHelper.d.ts +41 -0
  41. package/dist/src/helper/FunctionHelper.js +161 -0
  42. package/dist/src/helper/GetPostHelper.d.ts +5 -0
  43. package/dist/src/helper/GetPostHelper.js +13 -0
  44. package/dist/src/helper/PolicyHelper.d.ts +102 -0
  45. package/dist/src/helper/PolicyHelper.js +519 -0
  46. package/dist/src/interface/Calculator.d.ts +5 -0
  47. package/dist/src/interface/Calculator.js +3 -0
  48. package/dist/src/interface/ConstantForApi.d.ts +12 -0
  49. package/dist/src/interface/ConstantForApi.js +17 -0
  50. package/dist/src/interface/ContractDeclarationExecute.d.ts +3 -0
  51. package/dist/src/interface/ContractDeclarationExecute.js +3 -0
  52. package/dist/src/interface/ExpHelperAware.d.ts +4 -0
  53. package/dist/src/interface/ExpHelperAware.js +3 -0
  54. package/dist/src/interface/FunctionHelperAware.d.ts +4 -0
  55. package/dist/src/interface/FunctionHelperAware.js +3 -0
  56. package/dist/src/interface/FunctionInvoke.d.ts +4 -0
  57. package/dist/src/interface/FunctionInvoke.js +3 -0
  58. package/dist/src/interface/GetPostInvoke.d.ts +4 -0
  59. package/dist/src/interface/GetPostInvoke.js +3 -0
  60. package/dist/src/interface/OutsideApiServiceAware.d.ts +4 -0
  61. package/dist/src/interface/OutsideApiServiceAware.js +3 -0
  62. package/dist/src/interface/VarContextCapable.d.ts +3 -0
  63. package/dist/src/interface/VarContextCapable.js +3 -0
  64. package/dist/src/model/AssignmentClauseInfo.d.ts +3 -0
  65. package/dist/src/model/AssignmentClauseInfo.js +3 -0
  66. package/dist/src/model/contract-declaration/VarContractDeclarationInfo.d.ts +17 -0
  67. package/dist/src/model/contract-declaration/VarContractDeclarationInfo.js +3 -0
  68. package/dist/src/model/exp/EntityInfo.d.ts +6 -0
  69. package/dist/src/model/exp/EntityInfo.js +3 -0
  70. package/dist/src/model/exp/Exp.d.ts +3 -0
  71. package/dist/src/model/exp/Exp.js +3 -0
  72. package/dist/src/model/exp/ExpAtom.d.ts +3 -0
  73. package/dist/src/model/exp/ExpAtom.js +3 -0
  74. package/dist/src/model/exp/ExpOp.d.ts +7 -0
  75. package/dist/src/model/exp/ExpOp.js +3 -0
  76. package/dist/src/model/exp/ExpParen.d.ts +5 -0
  77. package/dist/src/model/exp/ExpParen.js +3 -0
  78. package/dist/src/model/exp/ExpSigned.d.ts +6 -0
  79. package/dist/src/model/exp/ExpSigned.js +3 -0
  80. package/dist/src/model/exp/FunctionCallInfo.d.ts +12 -0
  81. package/dist/src/model/exp/FunctionCallInfo.js +3 -0
  82. package/dist/src/model/exp/NumberInfo.d.ts +5 -0
  83. package/dist/src/model/exp/NumberInfo.js +3 -0
  84. package/dist/src/model/exp/StringInfo.d.ts +5 -0
  85. package/dist/src/model/exp/StringInfo.js +3 -0
  86. package/dist/src/model/exp/VariableChainInfo.d.ts +6 -0
  87. package/dist/src/model/exp/VariableChainInfo.js +3 -0
  88. package/dist/src/model/exp-args-group/ExpArgsGroup.d.ts +9 -0
  89. package/dist/src/model/exp-args-group/ExpArgsGroup.js +3 -0
  90. package/dist/src/model/exp-boolean/BooleanInfo.d.ts +5 -0
  91. package/dist/src/model/exp-boolean/BooleanInfo.js +3 -0
  92. package/dist/src/model/exp-boolean/ExpBoolean.d.ts +3 -0
  93. package/dist/src/model/exp-boolean/ExpBoolean.js +3 -0
  94. package/dist/src/model/exp-boolean/ExpBooleanAtom.d.ts +3 -0
  95. package/dist/src/model/exp-boolean/ExpBooleanAtom.js +3 -0
  96. package/dist/src/model/exp-boolean/ExpBooleanOpCollection.d.ts +7 -0
  97. package/dist/src/model/exp-boolean/ExpBooleanOpCollection.js +3 -0
  98. package/dist/src/model/exp-boolean/ExpBooleanOpCompare.d.ts +7 -0
  99. package/dist/src/model/exp-boolean/ExpBooleanOpCompare.js +3 -0
  100. package/dist/src/model/exp-boolean/ExpBooleanOpLogic.d.ts +7 -0
  101. package/dist/src/model/exp-boolean/ExpBooleanOpLogic.js +3 -0
  102. package/dist/src/model/exp-boolean/ExpBooleanParen.d.ts +5 -0
  103. package/dist/src/model/exp-boolean/ExpBooleanParen.js +3 -0
  104. package/dist/src/model/exp-collection/ExpCollection.d.ts +9 -0
  105. package/dist/src/model/exp-collection/ExpCollection.js +3 -0
  106. package/dist/src/model/exp-condition/ExpCondition.d.ts +11 -0
  107. package/dist/src/model/exp-condition/ExpCondition.js +3 -0
  108. package/dist/src/model/policy/ActionInfo.d.ts +20 -0
  109. package/dist/src/model/policy/ActionInfo.js +3 -0
  110. package/dist/src/model/policy/ContractDeclarationInfo.d.ts +7 -0
  111. package/dist/src/model/policy/ContractDeclarationInfo.js +7 -0
  112. package/dist/src/model/policy/EventInfo.d.ts +27 -0
  113. package/dist/src/model/policy/EventInfo.js +3 -0
  114. package/dist/src/model/policy/PolicyInfo.d.ts +32 -0
  115. package/dist/src/model/policy/PolicyInfo.js +3 -0
  116. package/dist/src/model/policy/VarDeclarationInfo.d.ts +10 -0
  117. package/dist/src/model/policy/VarDeclarationInfo.js +3 -0
  118. package/dist/src/service/OutsideApiService.d.ts +58 -0
  119. package/dist/src/service/OutsideApiService.js +62 -0
  120. package/dist/src/state-machine/ContractFsmHook.d.ts +17 -0
  121. package/dist/src/state-machine/ContractFsmHook.js +33 -0
  122. package/dist/src/state-machine/ContractStateMachine.d.ts +51 -0
  123. package/dist/src/state-machine/ContractStateMachine.js +190 -0
  124. package/dist/src/tools/PolicyDecompiler.d.ts +26 -0
  125. package/dist/src/tools/PolicyDecompiler.js +298 -0
  126. package/dist/src/tools/PolicyMapper.d.ts +3 -0
  127. package/dist/src/tools/PolicyMapper.js +83 -0
  128. package/package.json +1 -1
  129. package/src/tools/PolicyMapper.ts +1 -2
  130. package/test/library/MomentTest.test.ts +12 -0
  131. package/tsconfig.json +2 -0
@@ -0,0 +1,519 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.PolicyInfoResult = exports.PolicyHelper = void 0;
4
+ const ExpHelper_1 = require("./ExpHelper");
5
+ const FunctionHelper_1 = require("./FunctionHelper");
6
+ const ContractDeclarationHelper_1 = require("./ContractDeclarationHelper");
7
+ const OutsideApiService_1 = require("../service/OutsideApiService");
8
+ const lodash = require('lodash');
9
+ class PolicyHelper {
10
+ constructor(policyInfo) {
11
+ this.audienceInfo = {};
12
+ this.varContractDeclarationMap = new Map();
13
+ // 合约声明变量
14
+ this.varContractDeclarationList = [];
15
+ this.varGlobalMap = new Map();
16
+ // 全局变量
17
+ this.varGlobalList = [];
18
+ // 宏
19
+ this.varMacroList = [];
20
+ /*
21
+ * 当前状态下的信息
22
+ */
23
+ this.currentStateInfo = {
24
+ currentState: PolicyHelper.noneState,
25
+ currentServiceState: "",
26
+ varLocalAtStateList: [],
27
+ varLocalCurrentStateList: [],
28
+ currentEventInfos: []
29
+ };
30
+ this.currentStateInfoTransient = {
31
+ varLocalCurrentEventList: [],
32
+ varToStateList: []
33
+ };
34
+ this.policyInfo = policyInfo;
35
+ this.outsideApiService = new OutsideApiService_1.OutsideApiService();
36
+ this.contractDeclarationHelper = new ContractDeclarationHelper_1.ContractDeclarationHelper();
37
+ this.contractDeclarationHelper.setOutsideApiService(this.outsideApiService);
38
+ this.expHelper = new ExpHelper_1.ExpHelper();
39
+ this.functionHelper = new FunctionHelper_1.FunctionHelper();
40
+ this.expHelper.setFunctionHelper(this.functionHelper);
41
+ this.functionHelper.setExpHelper(this.expHelper);
42
+ this.functionHelper.setOutsideApiService(this.outsideApiService);
43
+ this.functionHelper.setVarContextProxy(this);
44
+ }
45
+ // 在合约签约的时候,可签约条件和全局申明的变量是已经计算完毕的,在这里做这件事
46
+ async init(varContextCapable, options) {
47
+ this.audienceInfo["audiences"] = this.policyInfo.audienceSection.audiences;
48
+ await this.buildSymbolTable();
49
+ await this.checkConditions(varContextCapable, options);
50
+ await this.doInit(varContextCapable);
51
+ }
52
+ /*
53
+ * 建立符号表
54
+ */
55
+ async buildSymbolTable() {
56
+ let contractDeclarations = this.policyInfo["contractDeclarationSection"]["contractDeclarations"];
57
+ for (let contractDeclaration of contractDeclarations) {
58
+ if (contractDeclaration["varValueObj"] != null && contractDeclaration["varValueObj"]["expType"] == "varContractDeclaration") {
59
+ this.varContractDeclarationMap.set(contractDeclaration["varValueObj"]["varName"], contractDeclaration["varValueObj"]);
60
+ }
61
+ }
62
+ let varDeclarationList = this.policyInfo.varDeclarationList;
63
+ for (let varDeclaration of varDeclarationList) {
64
+ if (varDeclaration.type == "varGlobal") {
65
+ this.varGlobalMap.set(varDeclaration.varName, varDeclaration);
66
+ }
67
+ if (varDeclaration.type == "varMacro") {
68
+ this.varMacroList.push({ varName: varDeclaration.varName, varValueObj: varDeclaration.varValueObj });
69
+ }
70
+ if (varDeclaration.type == "expCustom") {
71
+ this.functionHelper.setExpCustom({
72
+ varName: varDeclaration.varName,
73
+ paramList: varDeclaration.paramList,
74
+ varValueObj: varDeclaration.varValueObj
75
+ });
76
+ }
77
+ }
78
+ }
79
+ /*
80
+ * 签约条件验证,这里可能有部分初始化动作
81
+ * this.audienceInfo["condition"]
82
+ */
83
+ async checkConditions(varContextCapable, options) {
84
+ this.audienceInfo["condition"] = {};
85
+ // 格式校验
86
+ for (let c of this.policyInfo.audienceSection.conditions) {
87
+ let ev = await this.getExpValue(c.paramValueObj, varContextCapable);
88
+ // ${echoSubject} => entity
89
+ if (c.paramName == "echoSubject" && ev["expType"] != "entity") {
90
+ throw new Error(`【echoSubject】类型错误!`);
91
+ }
92
+ // ${echoPolicyId} => string
93
+ if (c.paramName == "echoPolicyId" && typeof ev != "string") {
94
+ throw new Error(`【echoPolicyId】类型错误!`);
95
+ }
96
+ // ${labels} => string[]
97
+ if (c.paramName == "labels") {
98
+ if (!Array.isArray(ev)) {
99
+ throw new Error(`【labels】类型错误!`);
100
+ }
101
+ if (ev.find(elem => typeof elem != "string") != null) {
102
+ throw new Error(`【labels】元素错误!`);
103
+ }
104
+ }
105
+ // ${exps} => boolean[]
106
+ if (c.paramName == "exps") {
107
+ if (!Array.isArray(ev)) {
108
+ throw new Error(`【exps】类型错误!`);
109
+ }
110
+ if (ev.find(elem => [true, false].indexOf(elem) == -1) != null) {
111
+ throw new Error(`【exps】元素错误!`);
112
+ }
113
+ }
114
+ this.audienceInfo["condition"][c.paramName] = ev;
115
+ }
116
+ if (options.isCheckConditions) {
117
+ // 值校验
118
+ if (this.audienceInfo["condition"]["exps"] != null) {
119
+ if (this.audienceInfo["condition"]["exps"].indexOf(false) != -1) {
120
+ throw new Error(`【exps】验证失败!`);
121
+ }
122
+ }
123
+ if (this.audienceInfo["condition"]["echoSubject"] != null && this.audienceInfo["condition"]["labels"] != null) {
124
+ let echoSubject = this.audienceInfo["condition"]["echoSubject"];
125
+ let contractLicensee = await this.getVarContext("contract.licensee");
126
+ let labels = await this.invoke("Query.EchoService.Labels", [{
127
+ subject: echoSubject,
128
+ licensee: contractLicensee
129
+ }]);
130
+ if (labels.filter(label => this.audienceInfo["condition"]["labels"].indexOf(label) != -1).length != this.audienceInfo["condition"]["labels"].length) {
131
+ throw new Error(`【echoSubject】【labels】验证失败!`);
132
+ }
133
+ }
134
+ }
135
+ }
136
+ /*
137
+ * 真正的初始化
138
+ */
139
+ async doInit(varContextCapable) {
140
+ let contractDeclarations = this.policyInfo["contractDeclarationSection"]["contractDeclarations"];
141
+ for (let contractDeclaration of contractDeclarations) {
142
+ if (contractDeclaration["varValueObj"] != null && contractDeclaration["varValueObj"]["expType"] == "varContractDeclaration") {
143
+ if (contractDeclaration["varValueObj"]["keyword"] == "USE") {
144
+ let value = await this.getVarObjValue(contractDeclaration["varValueObj"], varContextCapable);
145
+ this.setVarContractDeclaration(contractDeclaration["varValueObj"]["varName"], value);
146
+ }
147
+ }
148
+ }
149
+ let varDeclarationList = this.policyInfo.varDeclarationList;
150
+ for (let varDeclaration of varDeclarationList) {
151
+ if (varDeclaration.type == "varGlobal") {
152
+ if (this.getVarGlobal(varDeclaration.varName) == null) {
153
+ let value = await this.getExpValue(varDeclaration.varValueObj, varContextCapable);
154
+ this.setVarGlobal(varDeclaration.varName, value);
155
+ }
156
+ }
157
+ }
158
+ }
159
+ async snapshotRollback(policyInfoResult) {
160
+ this.audienceInfo = policyInfoResult.audienceInfo;
161
+ this.varContractDeclarationList = policyInfoResult.varContractDeclarationList;
162
+ this.setVarGlobalList(policyInfoResult.varGlobalList);
163
+ this.audienceInfo = policyInfoResult.audienceInfo;
164
+ this.currentStateInfo = policyInfoResult.currentStateInfo;
165
+ }
166
+ async enterState(stateName, varContextCapable) {
167
+ console.log('PolicyHelper - enterState..');
168
+ this.currentStateInfo.currentState = PolicyHelper.noneState;
169
+ this.currentStateInfo.currentServiceState = "";
170
+ this.clearVarLocalAtStateList();
171
+ this.clearVarLocalCurrentStateList();
172
+ this.currentStateInfo.currentEventInfos.length = 0;
173
+ let stateMachine = this.policyInfo["stateMachine"];
174
+ let stateInfo = stateMachine.find(sm => sm.stateName == stateName);
175
+ if (stateInfo == null) {
176
+ throw new Error(`enterState fail [PolicyHelper]... stateName = ${stateName}`);
177
+ }
178
+ this.currentStateInfo.currentState = stateName;
179
+ let serviceStateSection = stateInfo["serviceStateSection"];
180
+ this.currentStateInfo.currentServiceState = serviceStateSection["serviceState"];
181
+ for (let stateContextArg of stateInfo["stateContextArgs"]) {
182
+ let stateContextArgInfo = this.currentStateInfoTransient.varToStateList.find(v => v.varName == stateContextArg);
183
+ if (stateContextArgInfo == null) {
184
+ throw new Error(`传递参数 ${stateContextArg} 不存在`);
185
+ }
186
+ this.setVarLocalAtState(stateContextArg, stateContextArgInfo.varValue);
187
+ }
188
+ for (let assignmentInfo of stateInfo["assignments"]) {
189
+ let varValue = await this.getVarObjValue(assignmentInfo.varValueObj, varContextCapable);
190
+ this.setVarLocalCurrentState(assignmentInfo.varName, varValue);
191
+ }
192
+ for (let eventInfo of stateInfo["events"]) {
193
+ let varLocalAtEventList = [];
194
+ if (eventInfo["type"] == "normal") {
195
+ for (let i = 0; i < eventInfo.eventParamList.length; i++) {
196
+ let eventParam = eventInfo.eventParamList[i];
197
+ let eventParamConfig = eventInfo["config_params"][i];
198
+ let varName = eventParamConfig["name"];
199
+ let varValue = await this.getVarObjValue(eventParam.paramValueObj, varContextCapable);
200
+ varLocalAtEventList.push({ varName: varName, varValue: varValue });
201
+ }
202
+ }
203
+ this.currentStateInfo.currentEventInfos.push({
204
+ eventType: eventInfo.type,
205
+ eventCode: eventInfo.eventCode,
206
+ eventPath: eventInfo.eventPath,
207
+ eventName: eventInfo.eventName,
208
+ eventId: eventInfo.eventId,
209
+ toState: eventInfo.toState,
210
+ varLocalAtEventList: varLocalAtEventList
211
+ });
212
+ }
213
+ // 参数传递清理
214
+ this.currentStateInfoTransient.varToStateList.length = 0;
215
+ }
216
+ async getServiceStateCollection() {
217
+ let stateMachine = this.policyInfo["stateMachine"];
218
+ let stateInfo = stateMachine.find(sm => sm.stateName == this.currentStateInfo.currentState);
219
+ if (stateInfo == null) {
220
+ throw new Error(`enterState fail [PolicyHelper]... stateName = ${this.currentStateInfo.currentState}`);
221
+ }
222
+ let serviceStateCollection = [];
223
+ let serviceStateSection = stateInfo["serviceStateSection"];
224
+ if (serviceStateSection["serviceStateCollection"] != null) {
225
+ for (let ss of serviceStateSection["serviceStateCollection"]) {
226
+ let varValue = ss;
227
+ try {
228
+ varValue = await this.getVarContext(ss);
229
+ }
230
+ catch (e) {
231
+ }
232
+ serviceStateCollection.push({ varName: ss, varValue: varValue });
233
+ }
234
+ }
235
+ return serviceStateCollection;
236
+ }
237
+ async execEventTail(eventId, varContextCapable) {
238
+ if (this.currentStateInfo.currentState == PolicyHelper.noneState) {
239
+ throw new Error(`不在状态机内,不能执行该事件 eventId = ${eventId}`);
240
+ }
241
+ let stateMachine = this.policyInfo["stateMachine"];
242
+ let stateInfo = stateMachine.find(sm => sm.stateName == this.currentStateInfo.currentState);
243
+ let eventInfo = stateInfo["events"].find(event => event["eventId"] == eventId);
244
+ if (eventInfo == null) {
245
+ throw new Error(`该事件 eventId = ${eventId} 在当前状态内不存在 currentState = ${this.currentStateInfo.currentState}`);
246
+ }
247
+ // 事件参数处理
248
+ for (let i = 0; i < eventInfo.eventParamList.length; i++) {
249
+ let eventParam = eventInfo.eventParamList[i];
250
+ let eventParamConfig = eventInfo["config_params"][i];
251
+ let varName = eventParamConfig["name"];
252
+ let varValue = await this.getVarObjValue(eventParam.paramValueObj, varContextCapable);
253
+ this.setVarLocalCurrentEvent(`$event.${varName}`, varValue);
254
+ if (eventParam.paramValueObj.expType == "expArgsGroup") {
255
+ for (let k in varValue) {
256
+ this.setVarLocalCurrentEvent(`$event.${varName}.${k}`, varValue[k]);
257
+ }
258
+ }
259
+ }
260
+ // action
261
+ for (let actionInfo of eventInfo["actions"]) {
262
+ if (actionInfo["type"] == "varAssignment") {
263
+ let varName = actionInfo["actionObj"]["varName"];
264
+ let varValue = await this.getVarObjValue(actionInfo["actionObj"]["varValueObj"], varContextCapable);
265
+ await this.setVarContext(varName, varValue);
266
+ }
267
+ else if (actionInfo["type"] == "functionCall") {
268
+ await this.getExpValue(actionInfo["actionObj"], varContextCapable);
269
+ }
270
+ }
271
+ // 参数传递
272
+ for (let stateContextArgInfo of eventInfo["stateContextArgs"]) {
273
+ let varValue = await this.getVarObjValue(stateContextArgInfo.paramValueObj, varContextCapable);
274
+ this.currentStateInfoTransient.varToStateList.push({
275
+ varName: stateContextArgInfo.paramName,
276
+ varValue: varValue
277
+ });
278
+ }
279
+ // 事件参数清理
280
+ this.clearVarLocalCurrentEventList();
281
+ }
282
+ /*
283
+ * 合约声明变量
284
+ */
285
+ setVarContractDeclaration(varName, varValue) {
286
+ this.getVarContractDeclarationList().push({ varName, varValue });
287
+ }
288
+ getVarContractDeclarationList() {
289
+ return this.varContractDeclarationList;
290
+ }
291
+ getVarContractDeclaration(varName) {
292
+ let varContractDeclarationListTmp = [...this.getVarContractDeclarationList()].reverse();
293
+ return varContractDeclarationListTmp.find((elem) => {
294
+ return elem.varName == varName;
295
+ });
296
+ }
297
+ /*
298
+ * 签约条件变量
299
+ */
300
+ getVarAudienceConditionList() {
301
+ let varAudienceConditionList = [];
302
+ for (let varName in this.audienceInfo["condition"]) {
303
+ varAudienceConditionList.push({
304
+ varName: `policy.audienceCondition.${varName}`,
305
+ varValue: this.audienceInfo["condition"][varName]
306
+ });
307
+ }
308
+ return varAudienceConditionList;
309
+ }
310
+ getVarAudienceCondition(varName) {
311
+ let varAudienceConditionListTmp = [...this.getVarAudienceConditionList()].reverse();
312
+ return varAudienceConditionListTmp.find((elem) => {
313
+ return elem.varName == varName;
314
+ });
315
+ }
316
+ /*
317
+ * 全局变量
318
+ */
319
+ setVarGlobal(varName, varValue) {
320
+ lodash.remove(this.getVarGlobalList(), v => v.varName == varName);
321
+ this.getVarGlobalList().push({ varName, varValue });
322
+ }
323
+ setVarGlobalList(varGlobalList) {
324
+ this.varGlobalList = varGlobalList;
325
+ }
326
+ getVarGlobal(varName) {
327
+ let varGlobalListTmp = [...this.getVarGlobalList()].reverse();
328
+ return varGlobalListTmp.find((elem) => {
329
+ return elem.varName == varName;
330
+ });
331
+ }
332
+ getVarGlobalList() {
333
+ return this.varGlobalList;
334
+ }
335
+ /*
336
+ * 宏
337
+ */
338
+ getVarMacro(varName) {
339
+ let varMacroListTmp = [...this.varMacroList].reverse();
340
+ return varMacroListTmp.find((elem) => {
341
+ return elem.varName == varName;
342
+ });
343
+ }
344
+ // 状态机当前状态传递的参数
345
+ setVarLocalAtState(varName, varValue) {
346
+ lodash.remove(this.getVarLocalAtStateList(), v => v.varName == varName);
347
+ this.getVarLocalAtStateList().push({ varName, varValue });
348
+ }
349
+ getVarLocalAtState(varName) {
350
+ let varLocalAtStateListTmp = [...this.getVarLocalAtStateList()].reverse();
351
+ return varLocalAtStateListTmp.find((elem) => {
352
+ return elem.varName == varName;
353
+ });
354
+ }
355
+ getVarLocalAtStateList() {
356
+ return this.currentStateInfo.varLocalAtStateList;
357
+ }
358
+ clearVarLocalAtStateList() {
359
+ this.getVarLocalAtStateList().length = 0;
360
+ }
361
+ // 状态机当前状态内的局部变量
362
+ setVarLocalCurrentState(varName, varValue) {
363
+ lodash.remove(this.getVarLocalCurrentStateList(), v => v.varName == varName);
364
+ this.getVarLocalCurrentStateList().push({ varName, varValue });
365
+ }
366
+ getVarLocalCurrentState(varName) {
367
+ let varLocalCurrentStateListTmp = [...this.getVarLocalCurrentStateList()].reverse();
368
+ return varLocalCurrentStateListTmp.find((elem) => {
369
+ return elem.varName == varName;
370
+ });
371
+ }
372
+ getVarLocalCurrentStateList() {
373
+ return this.currentStateInfo.varLocalCurrentStateList;
374
+ }
375
+ clearVarLocalCurrentStateList() {
376
+ this.getVarLocalCurrentStateList().length = 0;
377
+ }
378
+ // 状态机当前事件内的局部变量(事件参数)
379
+ setVarLocalCurrentEvent(varName, varValue) {
380
+ lodash.remove(this.getVarLocalCurrentEventList(), v => v.varName == varName);
381
+ this.getVarLocalCurrentEventList().push({ varName, varValue });
382
+ }
383
+ getVarLocalCurrentEvent(varName) {
384
+ let varLocalCurrentEventListTmp = [...this.getVarLocalCurrentEventList()].reverse();
385
+ return varLocalCurrentEventListTmp.find((elem) => {
386
+ return elem.varName == varName;
387
+ });
388
+ }
389
+ getVarLocalCurrentEventList() {
390
+ return this.currentStateInfoTransient.varLocalCurrentEventList;
391
+ }
392
+ clearVarLocalCurrentEventList() {
393
+ this.getVarLocalCurrentEventList().length = 0;
394
+ }
395
+ async getPolicyInfoResult() {
396
+ return {
397
+ audienceInfo: this.audienceInfo,
398
+ varContractDeclarationList: this.varContractDeclarationList,
399
+ varGlobalList: this.varGlobalList,
400
+ currentStateInfo: {
401
+ currentState: this.currentStateInfo.currentState,
402
+ currentServiceState: this.currentStateInfo.currentServiceState,
403
+ serviceStateCollection: await this.getServiceStateCollection(),
404
+ varLocalAtStateList: this.currentStateInfo.varLocalAtStateList,
405
+ varLocalCurrentStateList: this.currentStateInfo.varLocalCurrentStateList,
406
+ currentEventInfos: this.currentStateInfo.currentEventInfos
407
+ }
408
+ };
409
+ }
410
+ async setVarContext(varName, varValue) {
411
+ let result = null;
412
+ result = this.getVarGlobal(varName);
413
+ if (result != null) {
414
+ this.setVarGlobal(varName, varValue);
415
+ return true;
416
+ }
417
+ result = this.getVarLocalCurrentState(varName);
418
+ if (result != null) {
419
+ this.setVarLocalCurrentState(varName, varValue);
420
+ return true;
421
+ }
422
+ return false;
423
+ }
424
+ async getVarContext(varName) {
425
+ let result = null;
426
+ result = await this.getVarContractDeclaration(varName);
427
+ if (result != null) {
428
+ return result["varValue"];
429
+ }
430
+ if (this.varContractDeclarationMap.has(varName)) {
431
+ let varValueObj = this.varContractDeclarationMap.get(varName);
432
+ if (varValueObj["keyword"] == "USE") {
433
+ let value = await this.getVarObjValue(varValueObj, this);
434
+ this.setVarContractDeclaration(varValueObj["varName"], value);
435
+ return value;
436
+ }
437
+ if (varValueObj["keyword"] == "DEMAND") {
438
+ return this.getVarObjValue(varValueObj, this);
439
+ }
440
+ }
441
+ result = this.getVarAudienceCondition(varName);
442
+ if (result != null) {
443
+ return result["varValue"];
444
+ }
445
+ result = this.getVarGlobal(varName);
446
+ if (result != null) {
447
+ return result["varValue"];
448
+ }
449
+ if (this.varGlobalMap.has(varName)) {
450
+ let varDeclaration = this.varGlobalMap.get(varName);
451
+ let value = await this.getExpValue(varDeclaration.varValueObj, this);
452
+ this.setVarGlobal(varDeclaration.varName, value);
453
+ return value;
454
+ }
455
+ let resultObj = this.getVarMacro(varName);
456
+ if (resultObj != null) {
457
+ return this.getExpValue(resultObj.varValueObj, this);
458
+ }
459
+ result = this.getVarLocalAtState(varName);
460
+ if (result != null) {
461
+ return result["varValue"];
462
+ }
463
+ result = this.getVarLocalCurrentState(varName);
464
+ if (result != null) {
465
+ return result["varValue"];
466
+ }
467
+ result = this.getVarLocalCurrentEvent(varName);
468
+ if (result != null) {
469
+ return result["varValue"];
470
+ }
471
+ throw new Error(`getVarContext fail [PolicyHelper]... varName = ${varName}`);
472
+ }
473
+ async getVarObjValue(varObj, varContextCapable) {
474
+ if (varObj["expType"] == "varContractDeclaration") {
475
+ return this.getContractDeclarationValue(varObj, varContextCapable);
476
+ }
477
+ else {
478
+ return this.getExpValue(varObj, varContextCapable);
479
+ }
480
+ }
481
+ async getContractDeclarationValue(varObj, varContextCapable) {
482
+ if (varObj["keyword"] == "USE" || varObj["keyword"] == "DEMAND") {
483
+ for (let condition of varObj["conditions"]) {
484
+ condition["paramValueData"] = await this.getExpValue(condition["paramValueObj"], varContextCapable);
485
+ }
486
+ }
487
+ return this.contractDeclarationHelper.execute(varObj["keyword"], varObj);
488
+ }
489
+ async getExpValue(varObj, varContextCapable) {
490
+ return this.expHelper.getExpValue(varObj, varContextCapable);
491
+ }
492
+ invokeEnable(functionName) {
493
+ throw new Error("这是个空实现,不能被调用!");
494
+ }
495
+ async invoke(functionName, args) {
496
+ return this.functionHelper.invoke(functionName, args);
497
+ }
498
+ addContractDeclarationExecutor(keyword, executor) {
499
+ this.contractDeclarationHelper.addExecutor(keyword, executor);
500
+ }
501
+ addExecutor(executorName, functionName, executor) {
502
+ this.functionHelper.addExecutor(executorName, functionName, executor);
503
+ }
504
+ setGetPostInvoke(getPostInvoke) {
505
+ this.outsideApiService.setGetPostInvoke(getPostInvoke);
506
+ }
507
+ setApiAddress(api, url) {
508
+ this.outsideApiService.setApiAddress(api, url);
509
+ }
510
+ setApiAddressMulti(tuples) {
511
+ this.outsideApiService.setApiAddressMulti(tuples);
512
+ }
513
+ }
514
+ exports.PolicyHelper = PolicyHelper;
515
+ PolicyHelper.noneState = "_none_";
516
+ class PolicyInfoResult {
517
+ }
518
+ exports.PolicyInfoResult = PolicyInfoResult;
519
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiUG9saWN5SGVscGVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2hlbHBlci9Qb2xpY3lIZWxwZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBQ0EsMkNBQXNDO0FBRXRDLHFEQUFnRDtBQUtoRCwyRUFBc0U7QUFHdEUsb0VBQStEO0FBRy9ELE1BQU0sTUFBTSxHQUFHLE9BQU8sQ0FBQyxRQUFRLENBQUMsQ0FBQztBQUVqQyxNQUFhLFlBQVk7SUE2Q3JCLFlBQVksVUFBc0I7UUF6Q3hCLGlCQUFZLEdBQUcsRUFBRSxDQUFDO1FBRWxCLDhCQUF5QixHQUFHLElBQUksR0FBRyxFQUFzQyxDQUFDO1FBRXBGLFNBQVM7UUFDQywrQkFBMEIsR0FBRyxFQUFFLENBQUM7UUFFaEMsaUJBQVksR0FBRyxJQUFJLEdBQUcsRUFBOEIsQ0FBQztRQUUvRCxPQUFPO1FBQ0csa0JBQWEsR0FBRyxFQUFFLENBQUM7UUFFN0IsSUFBSTtRQUNNLGlCQUFZLEdBQUcsRUFBRSxDQUFDO1FBSTVCOztXQUVHO1FBQ08scUJBQWdCLEdBQUc7WUFDekIsWUFBWSxFQUFFLFlBQVksQ0FBQyxTQUFTO1lBQ3BDLG1CQUFtQixFQUFFLEVBQUU7WUFDdkIsbUJBQW1CLEVBQUUsRUFBRTtZQUN2Qix3QkFBd0IsRUFBRSxFQUFFO1lBQzVCLGlCQUFpQixFQUFFLEVBQUU7U0FDeEIsQ0FBQztRQUVLLDhCQUF5QixHQUFHO1lBQy9CLHdCQUF3QixFQUFFLEVBQUU7WUFDNUIsY0FBYyxFQUFFLEVBQUU7U0FDckIsQ0FBQztRQVdFLElBQUksQ0FBQyxVQUFVLEdBQUcsVUFBVSxDQUFDO1FBQzdCLElBQUksQ0FBQyxpQkFBaUIsR0FBRyxJQUFJLHFDQUFpQixFQUFFLENBQUM7UUFDakQsSUFBSSxDQUFDLHlCQUF5QixHQUFHLElBQUkscURBQXlCLEVBQUUsQ0FBQztRQUNqRSxJQUFJLENBQUMseUJBQXlCLENBQUMsb0JBQW9CLENBQUMsSUFBSSxDQUFDLGlC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
@@ -0,0 +1,5 @@
1
+ import { AssignmentClauseInfo } from "../model/AssignmentClauseInfo";
2
+ import { VarContextCapable } from "./VarContextCapable";
3
+ export interface Calculator {
4
+ getExpValue(varObj: AssignmentClauseInfo, varContextCapable: VarContextCapable<any>): Promise<any>;
5
+ }
@@ -0,0 +1,3 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiQ2FsY3VsYXRvci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9pbnRlcmZhY2UvQ2FsY3VsYXRvci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiIn0=
@@ -0,0 +1,12 @@
1
+ export declare class ConstantForApi {
2
+ static ResourceCountOfUpdates: string;
3
+ static EchoLabels: string;
4
+ static EchoLabelInfos: string;
5
+ static ContractSignCount: string;
6
+ static ContractInfos: string;
7
+ static TransactionRecordsCount: string;
8
+ static TransactionAmountsSum: string;
9
+ static FunAppendTTL: string;
10
+ static FunSendEvent: string;
11
+ static FunSetLabel: string;
12
+ }
@@ -0,0 +1,17 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.ConstantForApi = void 0;
4
+ class ConstantForApi {
5
+ }
6
+ exports.ConstantForApi = ConstantForApi;
7
+ ConstantForApi.ResourceCountOfUpdates = "resourceCountOfUpdates";
8
+ ConstantForApi.EchoLabels = "echoLabels";
9
+ ConstantForApi.EchoLabelInfos = "echoLabelInfos";
10
+ ConstantForApi.ContractSignCount = "contractSignCount";
11
+ ConstantForApi.ContractInfos = "contractInfos";
12
+ ConstantForApi.TransactionRecordsCount = "transactionRecordsCount";
13
+ ConstantForApi.TransactionAmountsSum = "transactionAmountsSum";
14
+ ConstantForApi.FunAppendTTL = "funAppendTTL";
15
+ ConstantForApi.FunSendEvent = "funSendEvent";
16
+ ConstantForApi.FunSetLabel = "funSetLabel";
17
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiQ29uc3RhbnRGb3JBcGkuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvaW50ZXJmYWNlL0NvbnN0YW50Rm9yQXBpLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQUFBLE1BQWEsY0FBYzs7QUFBM0Isd0NBZUM7QUFkaUIscUNBQXNCLEdBQUcsd0JBQXdCLENBQUM7QUFFbEQseUJBQVUsR0FBRyxZQUFZLENBQUM7QUFDMUIsNkJBQWMsR0FBRyxnQkFBZ0IsQ0FBQztBQUVsQyxnQ0FBaUIsR0FBRyxtQkFBbUIsQ0FBQztBQUN4Qyw0QkFBYSxHQUFHLGVBQWUsQ0FBQztBQUVoQyxzQ0FBdUIsR0FBRyx5QkFBeUIsQ0FBQztBQUNwRCxvQ0FBcUIsR0FBRyx1QkFBdUIsQ0FBQztBQUVoRCwyQkFBWSxHQUFHLGNBQWMsQ0FBQztBQUM5QiwyQkFBWSxHQUFHLGNBQWMsQ0FBQztBQUM5QiwwQkFBVyxHQUFHLGFBQWEsQ0FBQyJ9
@@ -0,0 +1,3 @@
1
+ export interface ContractDeclarationExecute {
2
+ execute(keyword: string, dataObj: any): any;
3
+ }
@@ -0,0 +1,3 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiQ29udHJhY3REZWNsYXJhdGlvbkV4ZWN1dGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvaW50ZXJmYWNlL0NvbnRyYWN0RGVjbGFyYXRpb25FeGVjdXRlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiIifQ==
@@ -0,0 +1,4 @@
1
+ import { ExpHelper } from "../helper/ExpHelper";
2
+ export interface ExpHelperAware {
3
+ setExpHelper(expHelper: ExpHelper): void;
4
+ }
@@ -0,0 +1,3 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiRXhwSGVscGVyQXdhcmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvaW50ZXJmYWNlL0V4cEhlbHBlckF3YXJlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiIifQ==
@@ -0,0 +1,4 @@
1
+ import { FunctionHelper } from "../helper/FunctionHelper";
2
+ export interface FunctionHelperAware {
3
+ setFunctionHelper(functionHelper: FunctionHelper): void;
4
+ }
@@ -0,0 +1,3 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiRnVuY3Rpb25IZWxwZXJBd2FyZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9pbnRlcmZhY2UvRnVuY3Rpb25IZWxwZXJBd2FyZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiIn0=
@@ -0,0 +1,4 @@
1
+ export interface FunctionInvoke {
2
+ invokeEnable(functionName: string): boolean;
3
+ invoke(functionName: string, args: any[]): Promise<any>;
4
+ }
@@ -0,0 +1,3 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiRnVuY3Rpb25JbnZva2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvaW50ZXJmYWNlL0Z1bmN0aW9uSW52b2tlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiIifQ==