@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,126 @@
1
+ [
2
+ {
3
+ "name": "Void",
4
+ "paramList": [
5
+ {
6
+ "name": "condition",
7
+ "type": "boolean",
8
+ "optional": true
9
+ }
10
+ ],
11
+ "code": "V101",
12
+ "description": "空事件,没有任何业务含义,只是做状态扭转填充空位"
13
+ },
14
+ {
15
+ "path": "Custom",
16
+ "name": "WatchAD",
17
+ "paramList": [
18
+ {
19
+ "name": "elemsNum",
20
+ "type": "number"
21
+ }
22
+ ],
23
+ "code": "C101",
24
+ "description": "观看广告"
25
+ },
26
+ {
27
+ "path": "Custom",
28
+ "name": "ShareResource",
29
+ "paramList": [
30
+ {
31
+ "name": "elemsNum",
32
+ "type": "number"
33
+ }
34
+ ],
35
+ "code": "C102",
36
+ "description": "分享资源,和观看广告类似,此处不再赘述"
37
+ },
38
+ {
39
+ "path": "Custom",
40
+ "name": "AcceptEvent",
41
+ "paramList": [
42
+ {
43
+ "name": "condition",
44
+ "type": "argsGroup"
45
+ }
46
+ ],
47
+ "code": "C103",
48
+ "description": "事件接收,和fun.sendEvent(args)配合使用"
49
+ },
50
+ {
51
+ "path": "Echo",
52
+ "name": "Labels",
53
+ "paramList": [
54
+ {
55
+ "name": "condition",
56
+ "type": "argsGroup"
57
+ }
58
+ ],
59
+ "code": "E101",
60
+ "description": "主动发起标签查询"
61
+ },
62
+ {
63
+ "path": "Transaction",
64
+ "name": "Pay",
65
+ "paramList": [
66
+ {
67
+ "name": "amount",
68
+ "type": "number"
69
+ },
70
+ {
71
+ "name": "elemsNum",
72
+ "type": "number"
73
+ }
74
+ ],
75
+ "code": "T101",
76
+ "description": "支付事件"
77
+ },
78
+ {
79
+ "path": "Transaction",
80
+ "name": "PayForRank",
81
+ "paramList": [
82
+ {
83
+ "name": "label",
84
+ "type": "string"
85
+ },
86
+ {
87
+ "name": "amount",
88
+ "type": "number"
89
+ },
90
+ {
91
+ "name": "ttl",
92
+ "type": "number"
93
+ }
94
+ ],
95
+ "code": "T102",
96
+ "description": "购买身份事件"
97
+ },
98
+ {
99
+ "path": "Time",
100
+ "name": "Relative",
101
+ "paramList": [
102
+ {
103
+ "name": "elapsed",
104
+ "type": "number"
105
+ },
106
+ {
107
+ "name": "timeUnit",
108
+ "type": "string"
109
+ }
110
+ ],
111
+ "code": "T201",
112
+ "description": "相对时间(计时器)"
113
+ },
114
+ {
115
+ "path": "Time",
116
+ "name": "Schedule",
117
+ "paramList": [
118
+ {
119
+ "name": "dateTime",
120
+ "type": "string"
121
+ }
122
+ ],
123
+ "code": "T202",
124
+ "description": "定时器,具体时间"
125
+ }
126
+ ]
@@ -0,0 +1,17 @@
1
+ import { FunctionHelperAware } from "../interface/FunctionHelperAware";
2
+ import { FunctionHelper } from "../helper/FunctionHelper";
3
+ import { ExpHelperAware } from "../interface/ExpHelperAware";
4
+ import { ExpHelper } from "../helper/ExpHelper";
5
+ import { Calculator } from "../interface/Calculator";
6
+ export declare class CalculatorFactory implements FunctionHelperAware, ExpHelperAware {
7
+ private expTypeMap;
8
+ private expCalculator;
9
+ private expBooleanCalculator;
10
+ private expConditionCalculator;
11
+ private expArgsGroupCalculator;
12
+ constructor();
13
+ init(): void;
14
+ setFunctionHelper(functionHelper: FunctionHelper): void;
15
+ setExpHelper(expHelper: ExpHelper): void;
16
+ getCalculatorByExpType(expType: string): Calculator;
17
+ }
@@ -0,0 +1,40 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.CalculatorFactory = void 0;
4
+ const ExpCalculator_1 = require("./ExpCalculator");
5
+ const ExpBooleanCalculator_1 = require("./ExpBooleanCalculator");
6
+ const ExpConditionCalculator_1 = require("./ExpConditionCalculator");
7
+ const ExpArgsGroupCalculator_1 = require("./ExpArgsGroupCalculator");
8
+ class CalculatorFactory {
9
+ constructor() {
10
+ this.expTypeMap = new Map();
11
+ this.expCalculator = new ExpCalculator_1.ExpCalculator();
12
+ this.expBooleanCalculator = new ExpBooleanCalculator_1.ExpBooleanCalculator();
13
+ this.expConditionCalculator = new ExpConditionCalculator_1.ExpConditionCalculator();
14
+ this.expArgsGroupCalculator = new ExpArgsGroupCalculator_1.ExpArgsGroupCalculator();
15
+ }
16
+ init() {
17
+ for (let expType of ["expOp", "number", "string", "entity", "variableChain", "functionCall", "expParen", "expSigned"]) {
18
+ this.expTypeMap.set(expType, this.expCalculator);
19
+ }
20
+ for (let expType of ["expBooleanOpLogic", "expBooleanOpCollection", "expBooleanOpCompare", "expBooleanParen", "boolean"]) {
21
+ this.expTypeMap.set(expType, this.expBooleanCalculator);
22
+ }
23
+ this.expTypeMap.set("expCondition", this.expConditionCalculator);
24
+ this.expTypeMap.set("expArgsGroup", this.expArgsGroupCalculator);
25
+ }
26
+ setFunctionHelper(functionHelper) {
27
+ this.expCalculator.setFunctionHelper(functionHelper);
28
+ }
29
+ setExpHelper(expHelper) {
30
+ this.expCalculator.setExpHelper(expHelper);
31
+ this.expBooleanCalculator.setExpHelper(expHelper);
32
+ this.expConditionCalculator.setExpHelper(expHelper);
33
+ this.expArgsGroupCalculator.setExpHelper(expHelper);
34
+ }
35
+ getCalculatorByExpType(expType) {
36
+ return this.expTypeMap.get(expType);
37
+ }
38
+ }
39
+ exports.CalculatorFactory = CalculatorFactory;
40
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiQ2FsY3VsYXRvckZhY3RvcnkuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvY2FsY3VsYXRvci9DYWxjdWxhdG9yRmFjdG9yeS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFBQSxtREFBOEM7QUFDOUMsaUVBQTREO0FBQzVELHFFQUFnRTtBQUNoRSxxRUFBZ0U7QUFPaEUsTUFBYSxpQkFBaUI7SUFZMUI7UUFWUSxlQUFVLEdBQUcsSUFBSSxHQUFHLEVBQXNCLENBQUM7UUFXL0MsSUFBSSxDQUFDLGFBQWEsR0FBRyxJQUFJLDZCQUFhLEVBQUUsQ0FBQztRQUN6QyxJQUFJLENBQUMsb0JBQW9CLEdBQUcsSUFBSSwyQ0FBb0IsRUFBRSxDQUFDO1FBQ3ZELElBQUksQ0FBQyxzQkFBc0IsR0FBRyxJQUFJLCtDQUFzQixFQUFFLENBQUM7UUFDM0QsSUFBSSxDQUFDLHNCQUFzQixHQUFHLElBQUksK0NBQXNCLEVBQUUsQ0FBQztJQUMvRCxDQUFDO0lBRUQsSUFBSTtRQUNBLEtBQUssSUFBSSxPQUFPLElBQUksQ0FBQyxPQUFPLEVBQUUsUUFBUSxFQUFFLFFBQVEsRUFBRSxRQUFRLEVBQUUsZUFBZSxFQUFFLGNBQWMsRUFBRSxVQUFVLEVBQUUsV0FBVyxDQUFDLEVBQUUsQ0FBQztZQUNwSCxJQUFJLENBQUMsVUFBVSxDQUFDLEdBQUcsQ0FBQyxPQUFPLEVBQUUsSUFBSSxDQUFDLGFBQWEsQ0FBQyxDQUFDO1FBQ3JELENBQUM7UUFDRCxLQUFLLElBQUksT0FBTyxJQUFJLENBQUMsbUJBQW1CLEVBQUUsd0JBQXdCLEVBQUUscUJBQXFCLEVBQUUsaUJBQWlCLEVBQUUsU0FBUyxDQUFDLEVBQUUsQ0FBQztZQUN2SCxJQUFJLENBQUMsVUFBVSxDQUFDLEdBQUcsQ0FBQyxPQUFPLEVBQUUsSUFBSSxDQUFDLG9CQUFvQixDQUFDLENBQUM7UUFDNUQsQ0FBQztRQUNELElBQUksQ0FBQyxVQUFVLENBQUMsR0FBRyxDQUFDLGNBQWMsRUFBRSxJQUFJLENBQUMsc0JBQXNCLENBQUMsQ0FBQztRQUNqRSxJQUFJLENBQUMsVUFBVSxDQUFDLEdBQUcsQ0FBQyxjQUFjLEVBQUUsSUFBSSxDQUFDLHNCQUFzQixDQUFDLENBQUM7SUFDckUsQ0FBQztJQUVELGlCQUFpQixDQUFDLGNBQThCO1FBQzVDLElBQUksQ0FBQyxhQUFhLENBQUMsaUJBQWlCLENBQUMsY0FBYyxDQUFDLENBQUM7SUFDekQsQ0FBQztJQUVELFlBQVksQ0FBQyxTQUFvQjtRQUM3QixJQUFJLENBQUMsYUFBYSxDQUFDLFlBQVksQ0FBQyxTQUFTLENBQUMsQ0FBQztRQUMzQyxJQUFJLENBQUMsb0JBQW9CLENBQUMsWUFBWSxDQUFDLFNBQVMsQ0FBQyxDQUFDO1FBQ2xELElBQUksQ0FBQyxzQkFBc0IsQ0FBQyxZQUFZLENBQUMsU0FBUyxDQUFDLENBQUM7UUFDcEQsSUFBSSxDQUFDLHNCQUFzQixDQUFDLFlBQVksQ0FBQyxTQUFTLENBQUMsQ0FBQztJQUN4RCxDQUFDO0lBRUQsc0JBQXNCLENBQUMsT0FBZTtRQUNsQyxPQUFPLElBQUksQ0FBQyxVQUFVLENBQUMsR0FBRyxDQUFDLE9BQU8sQ0FBQyxDQUFDO0lBQ3hDLENBQUM7Q0FDSjtBQTVDRCw4Q0E0Q0MifQ==
@@ -0,0 +1,4 @@
1
+ import { CalculatorFactory } from "./CalculatorFactory";
2
+ export declare class CalculatorFactoryBuilder {
3
+ build(): CalculatorFactory;
4
+ }
@@ -0,0 +1,13 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.CalculatorFactoryBuilder = void 0;
4
+ const CalculatorFactory_1 = require("./CalculatorFactory");
5
+ class CalculatorFactoryBuilder {
6
+ build() {
7
+ let calculatorFactory = new CalculatorFactory_1.CalculatorFactory();
8
+ calculatorFactory.init();
9
+ return calculatorFactory;
10
+ }
11
+ }
12
+ exports.CalculatorFactoryBuilder = CalculatorFactoryBuilder;
13
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiQ2FsY3VsYXRvckZhY3RvcnlCdWlsZGVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2NhbGN1bGF0b3IvQ2FsY3VsYXRvckZhY3RvcnlCdWlsZGVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQUFBLDJEQUFzRDtBQUV0RCxNQUFhLHdCQUF3QjtJQUVqQyxLQUFLO1FBQ0QsSUFBSSxpQkFBaUIsR0FBRyxJQUFJLHFDQUFpQixFQUFFLENBQUM7UUFDaEQsaUJBQWlCLENBQUMsSUFBSSxFQUFFLENBQUM7UUFFekIsT0FBTyxpQkFBaUIsQ0FBQztJQUM3QixDQUFDO0NBQ0o7QUFSRCw0REFRQyJ9
@@ -0,0 +1,12 @@
1
+ import { Calculator } from "../interface/Calculator";
2
+ import { AssignmentClauseInfo } from "../model/AssignmentClauseInfo";
3
+ import { VarContextCapable } from "../interface/VarContextCapable";
4
+ import { ExpHelper } from "../helper/ExpHelper";
5
+ import { ExpArgsGroup } from "../model/exp-args-group/ExpArgsGroup";
6
+ import { ExpHelperAware } from "../interface/ExpHelperAware";
7
+ export declare class ExpArgsGroupCalculator implements Calculator, ExpHelperAware {
8
+ private expHelper;
9
+ getExpValue(varObj: AssignmentClauseInfo, varContextCapable: VarContextCapable<any>): Promise<any>;
10
+ generateExpArgsGroupValue(expArgsGroup: ExpArgsGroup, varContextCapable: VarContextCapable<any>): Promise<{}>;
11
+ setExpHelper(expHelper: ExpHelper): void;
12
+ }
@@ -0,0 +1,25 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.ExpArgsGroupCalculator = void 0;
4
+ class ExpArgsGroupCalculator {
5
+ async getExpValue(varObj, varContextCapable) {
6
+ if (varObj.expType == "expArgsGroup") {
7
+ return this.generateExpArgsGroupValue(varObj, varContextCapable);
8
+ }
9
+ throw new Error("getExpValue fail [ExpArgsGroupCalculator]...");
10
+ }
11
+ async generateExpArgsGroupValue(expArgsGroup, varContextCapable) {
12
+ let result = {};
13
+ if (expArgsGroup.paramList.length != 0) {
14
+ for (let param of expArgsGroup.paramList) {
15
+ result[param.paramName] = await this.expHelper.getExpValue(param.paramValueObj, varContextCapable);
16
+ }
17
+ }
18
+ return result;
19
+ }
20
+ setExpHelper(expHelper) {
21
+ this.expHelper = expHelper;
22
+ }
23
+ }
24
+ exports.ExpArgsGroupCalculator = ExpArgsGroupCalculator;
25
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiRXhwQXJnc0dyb3VwQ2FsY3VsYXRvci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9jYWxjdWxhdG9yL0V4cEFyZ3NHcm91cENhbGN1bGF0b3IudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBT0EsTUFBYSxzQkFBc0I7SUFJL0IsS0FBSyxDQUFDLFdBQVcsQ0FBQyxNQUE0QixFQUFFLGlCQUF5QztRQUNyRixJQUFJLE1BQU0sQ0FBQyxPQUFPLElBQUksY0FBYyxFQUFFLENBQUM7WUFDbkMsT0FBTyxJQUFJLENBQUMseUJBQXlCLENBQUMsTUFBYSxFQUFFLGlCQUFpQixDQUFDLENBQUM7UUFDNUUsQ0FBQztRQUVELE1BQU0sSUFBSSxLQUFLLENBQUMsOENBQThDLENBQUMsQ0FBQztJQUNwRSxDQUFDO0lBRUQsS0FBSyxDQUFDLHlCQUF5QixDQUFDLFlBQTBCLEVBQUUsaUJBQXlDO1FBQ2pHLElBQUksTUFBTSxHQUFHLEVBQUUsQ0FBQztRQUNoQixJQUFJLFlBQVksQ0FBQyxTQUFTLENBQUMsTUFBTSxJQUFJLENBQUMsRUFBRSxDQUFDO1lBQ3JDLEtBQUssSUFBSSxLQUFLLElBQUksWUFBWSxDQUFDLFNBQVMsRUFBRSxDQUFDO2dCQUN2QyxNQUFNLENBQUMsS0FBSyxDQUFDLFNBQVMsQ0FBQyxHQUFHLE1BQU0sSUFBSSxDQUFDLFNBQVMsQ0FBQyxXQUFXLENBQUMsS0FBSyxDQUFDLGFBQWEsRUFBRSxpQkFBaUIsQ0FBQyxDQUFDO1lBQ3ZHLENBQUM7UUFDTCxDQUFDO1FBRUQsT0FBTyxNQUFNLENBQUM7SUFDbEIsQ0FBQztJQUVELFlBQVksQ0FBQyxTQUFvQjtRQUM3QixJQUFJLENBQUMsU0FBUyxHQUFHLFNBQVMsQ0FBQztJQUMvQixDQUFDO0NBQ0o7QUExQkQsd0RBMEJDIn0=
@@ -0,0 +1,13 @@
1
+ import { Calculator } from "../interface/Calculator";
2
+ import { AssignmentClauseInfo } from "../model/AssignmentClauseInfo";
3
+ import { VarContextCapable } from "../interface/VarContextCapable";
4
+ import { ExpHelper } from "../helper/ExpHelper";
5
+ import { ExpHelperAware } from "../interface/ExpHelperAware";
6
+ export declare class ExpBooleanCalculator implements Calculator, ExpHelperAware {
7
+ private expHelper;
8
+ getExpValue(varObj: AssignmentClauseInfo, varContextCapable: VarContextCapable<any>): Promise<boolean>;
9
+ private calculateExpBooleanOpLogic;
10
+ private calculateExpBooleanOpCollection;
11
+ private calculateExpBooleanOpCompare;
12
+ setExpHelper(expHelper: ExpHelper): void;
13
+ }
@@ -0,0 +1,81 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.ExpBooleanCalculator = void 0;
4
+ class ExpBooleanCalculator {
5
+ async getExpValue(varObj, varContextCapable) {
6
+ if (varObj.expType == "expBooleanOpLogic") {
7
+ return this.calculateExpBooleanOpLogic(varObj, varContextCapable);
8
+ }
9
+ if (varObj.expType == "expBooleanOpCollection") {
10
+ return this.calculateExpBooleanOpCollection(varObj, varContextCapable);
11
+ }
12
+ if (varObj.expType == "expBooleanOpCompare") {
13
+ return this.calculateExpBooleanOpCompare(varObj, varContextCapable);
14
+ }
15
+ if (varObj.expType == "expBooleanParen") {
16
+ return this.expHelper.getExpValue(varObj["var1"], varContextCapable);
17
+ }
18
+ if (varObj.expType == "boolean") {
19
+ return varObj["value"] == "true";
20
+ }
21
+ throw new Error("getExpValue fail [ExpBooleanCalculator]...");
22
+ }
23
+ async calculateExpBooleanOpLogic(expBooleanOpLogic, varContextCapable) {
24
+ let var1 = await this.expHelper.getExpValue(expBooleanOpLogic.var1, varContextCapable);
25
+ if (expBooleanOpLogic.op == "not") {
26
+ return !var1;
27
+ }
28
+ else {
29
+ let var2 = await this.expHelper.getExpValue(expBooleanOpLogic.var2, varContextCapable);
30
+ if (expBooleanOpLogic.op == "and") {
31
+ return var1 && var2;
32
+ }
33
+ if (expBooleanOpLogic.op == "or") {
34
+ return var1 || var2;
35
+ }
36
+ }
37
+ return false;
38
+ }
39
+ async calculateExpBooleanOpCollection(expBooleanOpCollection, varContextCapable) {
40
+ let var1 = await this.expHelper.getExpValue(expBooleanOpCollection.var1, varContextCapable);
41
+ let var2 = await this.expHelper.getExpValue(expBooleanOpCollection.var2, varContextCapable);
42
+ if (expBooleanOpCollection.op == "in") {
43
+ return var2.indexOf(var1) != -1;
44
+ }
45
+ return false;
46
+ }
47
+ async calculateExpBooleanOpCompare(expBooleanOpCompare, varContextCapable) {
48
+ let var1 = await this.expHelper.getExpValue(expBooleanOpCompare.var1, varContextCapable);
49
+ let var2 = await this.expHelper.getExpValue(expBooleanOpCompare.var2, varContextCapable);
50
+ if (expBooleanOpCompare.op == "less" || expBooleanOpCompare.op == "<") {
51
+ return var1 < var2;
52
+ }
53
+ if (expBooleanOpCompare.op == "before") {
54
+ return var1 < var2;
55
+ }
56
+ if (expBooleanOpCompare.op == "lessOrEqual" || expBooleanOpCompare.op == "<=") {
57
+ return var1 <= var2;
58
+ }
59
+ if (expBooleanOpCompare.op == "greater" || expBooleanOpCompare.op == ">") {
60
+ return var1 > var2;
61
+ }
62
+ if (expBooleanOpCompare.op == "after") {
63
+ return var1 > var2;
64
+ }
65
+ if (expBooleanOpCompare.op == "greaterOrEqual" || expBooleanOpCompare.op == ">=") {
66
+ return var1 >= var2;
67
+ }
68
+ if (expBooleanOpCompare.op == "equal" || expBooleanOpCompare.op == "==") {
69
+ return var1 == var2;
70
+ }
71
+ if (expBooleanOpCompare.op == "notEqual" || expBooleanOpCompare.op == "!=") {
72
+ return var1 != var2;
73
+ }
74
+ return false;
75
+ }
76
+ setExpHelper(expHelper) {
77
+ this.expHelper = expHelper;
78
+ }
79
+ }
80
+ exports.ExpBooleanCalculator = ExpBooleanCalculator;
81
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiRXhwQm9vbGVhbkNhbGN1bGF0b3IuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvY2FsY3VsYXRvci9FeHBCb29sZWFuQ2FsY3VsYXRvci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFTQSxNQUFhLG9CQUFvQjtJQUk3QixLQUFLLENBQUMsV0FBVyxDQUFDLE1BQTRCLEVBQUUsaUJBQXlDO1FBQ3JGLElBQUksTUFBTSxDQUFDLE9BQU8sSUFBSSxtQkFBbUIsRUFBRSxDQUFDO1lBQ3hDLE9BQU8sSUFBSSxDQUFDLDBCQUEwQixDQUFDLE1BQWEsRUFBRSxpQkFBaUIsQ0FBQyxDQUFDO1FBQzdFLENBQUM7UUFDRCxJQUFJLE1BQU0sQ0FBQyxPQUFPLElBQUksd0JBQXdCLEVBQUUsQ0FBQztZQUM3QyxPQUFPLElBQUksQ0FBQywrQkFBK0IsQ0FBQyxNQUFhLEVBQUUsaUJBQWlCLENBQUMsQ0FBQztRQUNsRixDQUFDO1FBQ0QsSUFBSSxNQUFNLENBQUMsT0FBTyxJQUFJLHFCQUFxQixFQUFFLENBQUM7WUFDMUMsT0FBTyxJQUFJLENBQUMsNEJBQTRCLENBQUMsTUFBYSxFQUFFLGlCQUFpQixDQUFDLENBQUM7UUFDL0UsQ0FBQztRQUNELElBQUksTUFBTSxDQUFDLE9BQU8sSUFBSSxpQkFBaUIsRUFBRSxDQUFDO1lBQ3RDLE9BQU8sSUFBSSxDQUFDLFNBQVMsQ0FBQyxXQUFXLENBQUMsTUFBTSxDQUFDLE1BQU0sQ0FBQyxFQUFFLGlCQUFpQixDQUFDLENBQUM7UUFDekUsQ0FBQztRQUNELElBQUksTUFBTSxDQUFDLE9BQU8sSUFBSSxTQUFTLEVBQUUsQ0FBQztZQUM5QixPQUFPLE1BQU0sQ0FBQyxPQUFPLENBQUMsSUFBSSxNQUFNLENBQUM7UUFDckMsQ0FBQztRQUVELE1BQU0sSUFBSSxLQUFLLENBQUMsNENBQTRDLENBQUMsQ0FBQztJQUNsRSxDQUFDO0lBRU8sS0FBSyxDQUFDLDBCQUEwQixDQUFDLGlCQUFvQyxFQUFF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
@@ -0,0 +1,17 @@
1
+ import { ExpOp } from "../model/exp/ExpOp";
2
+ import { VarContextCapable } from "../interface/VarContextCapable";
3
+ import { FunctionHelper } from "../helper/FunctionHelper";
4
+ import { AssignmentClauseInfo } from "../model/AssignmentClauseInfo";
5
+ import { Calculator } from "../interface/Calculator";
6
+ import { ExpHelper } from "../helper/ExpHelper";
7
+ import { FunctionHelperAware } from "../interface/FunctionHelperAware";
8
+ import { ExpHelperAware } from "../interface/ExpHelperAware";
9
+ export declare class ExpCalculator implements Calculator, FunctionHelperAware, ExpHelperAware {
10
+ private functionHelper;
11
+ private expHelper;
12
+ getExpValue(varObj: AssignmentClauseInfo, varContextCapable: VarContextCapable<any>): Promise<any>;
13
+ calculateExpOp(expOp: ExpOp, varContextCapable: VarContextCapable<any>): Promise<number>;
14
+ private calculateExpSigned;
15
+ setFunctionHelper(functionHelper: FunctionHelper): void;
16
+ setExpHelper(expHelper: ExpHelper): void;
17
+ }
@@ -0,0 +1,56 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.ExpCalculator = void 0;
4
+ class ExpCalculator {
5
+ async getExpValue(varObj, varContextCapable) {
6
+ if (varObj.expType == "expOp") {
7
+ return this.calculateExpOp(varObj, varContextCapable);
8
+ }
9
+ if (varObj.expType == "number") {
10
+ return Number(varObj["value"]);
11
+ // return parseInt(varObj["value"]);
12
+ }
13
+ if (varObj.expType == "string") {
14
+ return varObj["value"];
15
+ }
16
+ if (varObj.expType == "entity") {
17
+ return varObj;
18
+ }
19
+ if (varObj.expType == "variableChain") {
20
+ return varContextCapable.getVarContext(varObj["content"]);
21
+ }
22
+ if (varObj.expType == "functionCall") {
23
+ return this.functionHelper.getExpValue(varObj, varContextCapable);
24
+ }
25
+ if (varObj.expType == "expParen") {
26
+ return this.expHelper.getExpValue(varObj["var1"], varContextCapable);
27
+ }
28
+ if (varObj.expType == "expSigned") {
29
+ return this.calculateExpSigned(varObj, varContextCapable);
30
+ }
31
+ throw new Error("getExpValue fail [ExpCalculator]...");
32
+ }
33
+ async calculateExpOp(expOp, varContextCapable) {
34
+ let var1 = await this.expHelper.getExpValue(expOp.var1, varContextCapable);
35
+ let var2 = await this.expHelper.getExpValue(expOp.var2, varContextCapable);
36
+ let expStr = `${var1} ${expOp.op} ${var2}`;
37
+ return eval(expStr);
38
+ }
39
+ async calculateExpSigned(expSigned, varContextCapable) {
40
+ let var1 = this.expHelper.getExpValue(expSigned.var1, varContextCapable);
41
+ if (expSigned.symbol == "-") {
42
+ return -var1;
43
+ }
44
+ else {
45
+ return var1;
46
+ }
47
+ }
48
+ setFunctionHelper(functionHelper) {
49
+ this.functionHelper = functionHelper;
50
+ }
51
+ setExpHelper(expHelper) {
52
+ this.expHelper = expHelper;
53
+ }
54
+ }
55
+ exports.ExpCalculator = ExpCalculator;
56
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiRXhwQ2FsY3VsYXRvci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9jYWxjdWxhdG9yL0V4cENhbGN1bGF0b3IudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBVUEsTUFBYSxhQUFhO0lBTXRCLEtBQUssQ0FBQyxXQUFXLENBQUMsTUFBNEIsRUFBRSxpQkFBeUM7UUFDckYsSUFBSSxNQUFNLENBQUMsT0FBTyxJQUFJLE9BQU8sRUFBRSxDQUFDO1lBQzVCLE9BQU8sSUFBSSxDQUFDLGNBQWMsQ0FBQyxNQUFhLEVBQUUsaUJBQWlCLENBQUMsQ0FBQztRQUNqRSxDQUFDO1FBQ0QsSUFBSSxNQUFNLENBQUMsT0FBTyxJQUFJLFFBQVEsRUFBRSxDQUFDO1lBQzdCLE9BQU8sTUFBTSxDQUFDLE1BQU0sQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDO1lBQy9CLG9DQUFvQztRQUN4QyxDQUFDO1FBQ0QsSUFBSSxNQUFNLENBQUMsT0FBTyxJQUFJLFFBQVEsRUFBRSxDQUFDO1lBQzdCLE9BQU8sTUFBTSxDQUFDLE9BQU8sQ0FBQyxDQUFDO1FBQzNCLENBQUM7UUFDRCxJQUFJLE1BQU0sQ0FBQyxPQUFPLElBQUksUUFBUSxFQUFFLENBQUM7WUFDN0IsT0FBTyxNQUFNLENBQUM7UUFDbEIsQ0FBQztRQUNELElBQUksTUFBTSxDQUFDLE9BQU8sSUFBSSxlQUFlLEVBQUUsQ0FBQztZQUNwQyxPQUFPLGlCQUFpQixDQUFDLGFBQWEsQ0FBQyxNQUFNLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQztRQUM5RCxDQUFDO1FBQ0QsSUFBSSxNQUFNLENBQUMsT0FBTyxJQUFJLGNBQWMsRUFBRSxDQUFDO1lBQ25DLE9BQU8sSUFBSSxDQUFDLGNBQWMsQ0FBQyxXQUFXLENBQUMsTUFBTSxFQUFFLGlCQUFpQixDQUFDLENBQUM7UUFDdEUsQ0FBQztRQUNELElBQUksTUFBTSxDQUFDLE9BQU8sSUFBSSxVQUFVLEVBQUUsQ0FBQztZQUMvQixPQUFPLElBQUksQ0FBQyxTQUFTLENBQUMsV0FBVyxDQUFDLE1BQU0sQ0FBQyxNQUFNLENBQUMsRUFBRSxpQkFBaUIsQ0FBQyxDQUFDO1FBQ3pFLENBQUM7UUFDRCxJQUFJLE1BQU0sQ0FBQyxPQUFPLElBQUksV0FBVyxFQUFFLENBQUM7WUFDaEMsT0FBTyxJQUFJLENBQUMsa0JBQWtCLENBQUMsTUFBYSxFQUFFLGlCQUFpQixDQUFDLENBQUM7UUFDckUsQ0FBQztRQUVELE1BQU0sSUFBSSxLQUFLLENBQUMscUNBQXFDLENBQUMsQ0FBQztJQUMzRCxDQUFDO0lBRUQsS0FBSyxDQUFDLGNBQWMsQ0FBQyxLQUFZLEVBQUUsaUJBQXlDO1FBQ3hFLElBQUksSUFBSSxHQUFHLE1BQU0sSUFBSSxDQUFDLFNBQVMsQ0FBQyxXQUFXLENBQUMsS0FBSyxDQUFDLElBQUksRUFBRSxpQkFBaUIsQ0FBQyxDQUFDO1FBQzNFLElBQUksSUFBSSxHQUFHLE1BQU0sSUFBSSxDQUFDLFNBQVMsQ0FBQyxXQUFXLENBQUMsS0FBSyxDQUFDLElBQUksRUFBRSxpQkFBaUIsQ0FBQyxDQUFDO1FBQzNFLElBQUksTUFBTSxHQUFHLEdBQUcsSUFBSSxJQUFJLEtBQUssQ0FBQyxFQUFFLElBQUksSUFBSSxFQUFFLENBQUM7UUFFM0MsT0FBTyxJQUFJLENBQUMsTUFBTSxDQUFDLENBQUM7SUFDeEIsQ0FBQztJQUVPLEtBQUssQ0FBQyxrQkFBa0IsQ0FBQyxTQUFvQixFQUFFLGlCQUF5QztRQUM1RixJQUFJLElBQUksR0FBRyxJQUFJLENBQUMsU0FBUyxDQUFDLFdBQVcsQ0FBQyxTQUFTLENBQUMsSUFBSSxFQUFFLGlCQUFpQixDQUFDLENBQUM7UUFDekUsSUFBSSxTQUFTLENBQUMsTUFBTSxJQUFJLEdBQUcsRUFBRSxDQUFDO1lBQzFCLE9BQU8sQ0FBQyxJQUFJLENBQUM7UUFDakIsQ0FBQzthQUFNLENBQUM7WUFDSixPQUFPLElBQUksQ0FBQztRQUNoQixDQUFDO0lBQ0wsQ0FBQztJQUVELGlCQUFpQixDQUFDLGNBQThCO1FBQzVDLElBQUksQ0FBQyxjQUFjLEdBQUcsY0FBYyxDQUFDO0lBQ3pDLENBQUM7SUFFRCxZQUFZLENBQUMsU0FBb0I7UUFDN0IsSUFBSSxDQUFDLFNBQVMsR0FBRyxTQUFTLENBQUM7SUFDL0IsQ0FBQztDQUNKO0FBNURELHNDQTREQyJ9
@@ -0,0 +1 @@
1
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiRXhwQ29sbGVjdGlvbkNhbGN1bGF0b3IuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvY2FsY3VsYXRvci9FeHBDb2xsZWN0aW9uQ2FsY3VsYXRvci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiIn0=
@@ -0,0 +1,12 @@
1
+ import { Calculator } from "../interface/Calculator";
2
+ import { AssignmentClauseInfo } from "../model/AssignmentClauseInfo";
3
+ import { VarContextCapable } from "../interface/VarContextCapable";
4
+ import { ExpHelper } from "../helper/ExpHelper";
5
+ import { ExpCondition } from "../model/exp-condition/ExpCondition";
6
+ import { ExpHelperAware } from "../interface/ExpHelperAware";
7
+ export declare class ExpConditionCalculator implements Calculator, ExpHelperAware {
8
+ private expHelper;
9
+ getExpValue(varObj: AssignmentClauseInfo, varContextCapable: VarContextCapable<any>): Promise<any>;
10
+ generateExpConditionValue(expCondition: ExpCondition, varContextCapable: VarContextCapable<any>): Promise<any[]>;
11
+ setExpHelper(expHelper: ExpHelper): void;
12
+ }
@@ -0,0 +1,34 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.ExpConditionCalculator = void 0;
4
+ class ExpConditionCalculator {
5
+ async getExpValue(varObj, varContextCapable) {
6
+ if (varObj.expType == "expCondition") {
7
+ return await this.generateExpConditionValue(varObj, varContextCapable);
8
+ }
9
+ throw new Error("getExpValue fail [ExpConditionCalculator]...");
10
+ }
11
+ async generateExpConditionValue(expCondition, varContextCapable) {
12
+ let result = [];
13
+ for (let i = 0; i < expCondition.paramList.length; i++) {
14
+ let param = expCondition.paramList[i];
15
+ if (param.paramConditionObj == null) {
16
+ let paramV = await this.expHelper.getExpValue(param.paramValueObj, varContextCapable);
17
+ result.push(paramV);
18
+ }
19
+ else {
20
+ let paramC = await this.expHelper.getExpValue(param.paramConditionObj, varContextCapable);
21
+ if (paramC) {
22
+ let paramV = await this.expHelper.getExpValue(param.paramValueObj, varContextCapable);
23
+ result.push(paramV);
24
+ }
25
+ }
26
+ }
27
+ return result;
28
+ }
29
+ setExpHelper(expHelper) {
30
+ this.expHelper = expHelper;
31
+ }
32
+ }
33
+ exports.ExpConditionCalculator = ExpConditionCalculator;
34
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiRXhwQ29uZGl0aW9uQ2FsY3VsYXRvci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9jYWxjdWxhdG9yL0V4cENvbmRpdGlvbkNhbGN1bGF0b3IudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBT0EsTUFBYSxzQkFBc0I7SUFJL0IsS0FBSyxDQUFDLFdBQVcsQ0FBQyxNQUE0QixFQUFFLGlCQUF5QztRQUNyRixJQUFJLE1BQU0sQ0FBQyxPQUFPLElBQUksY0FBYyxFQUFFLENBQUM7WUFDbkMsT0FBTyxNQUFNLElBQUksQ0FBQyx5QkFBeUIsQ0FBQyxNQUFhLEVBQUUsaUJBQWlCLENBQUMsQ0FBQztRQUNsRixDQUFDO1FBRUQsTUFBTSxJQUFJLEtBQUssQ0FBQyw4Q0FBOEMsQ0FBQyxDQUFDO0lBQ3BFLENBQUM7SUFFRCxLQUFLLENBQUMseUJBQXlCLENBQUMsWUFBMEIsRUFBRSxpQkFBeUM7UUFDakcsSUFBSSxNQUFNLEdBQUcsRUFBRSxDQUFDO1FBQ2hCLEtBQUssSUFBSSxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsR0FBRyxZQUFZLENBQUMsU0FBUyxDQUFDLE1BQU0sRUFBRSxDQUFDLEVBQUUsRUFBRSxDQUFDO1lBQ3JELElBQUksS0FBSyxHQUFHLFlBQVksQ0FBQyxTQUFTLENBQUMsQ0FBQyxDQUFDLENBQUM7WUFDdEMsSUFBSSxLQUFLLENBQUMsaUJBQWlCLElBQUksSUFBSSxFQUFFLENBQUM7Z0JBQ2xDLElBQUksTUFBTSxHQUFHLE1BQU0sSUFBSSxDQUFDLFNBQVMsQ0FBQyxXQUFXLENBQUMsS0FBSyxDQUFDLGFBQWEsRUFBRSxpQkFBaUIsQ0FBQyxDQUFDO2dCQUN0RixNQUFNLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxDQUFDO1lBQ3hCLENBQUM7aUJBQU0sQ0FBQztnQkFDSixJQUFJLE1BQU0sR0FBRyxNQUFNLElBQUksQ0FBQyxTQUFTLENBQUMsV0FBVyxDQUFDLEtBQUssQ0FBQyxpQkFBaUIsRUFBRSxpQkFBaUIsQ0FBQyxDQUFDO2dCQUMxRixJQUFJLE1BQU0sRUFBRSxDQUFDO29CQUNULElBQUksTUFBTSxHQUFHLE1BQU0sSUFBSSxDQUFDLFNBQVMsQ0FBQyxXQUFXLENBQUMsS0FBSyxDQUFDLGFBQWEsRUFBRSxpQkFBaUIsQ0FBQyxDQUFDO29CQUN0RixNQUFNLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxDQUFDO2dCQUN4QixDQUFDO1lBQ0wsQ0FBQztRQUNMLENBQUM7UUFFRCxPQUFPLE1BQU0sQ0FBQztJQUNsQixDQUFDO0lBRUQsWUFBWSxDQUFDLFNBQW9CO1FBQzdCLElBQUksQ0FBQyxTQUFTLEdBQUcsU0FBUyxDQUFDO0lBQy9CLENBQUM7Q0FDSjtBQWxDRCx3REFrQ0MifQ==
@@ -0,0 +1,8 @@
1
+ import { ContractDeclarationExecute } from "../interface/ContractDeclarationExecute";
2
+ import { OutsideApiServiceAware } from "../interface/OutsideApiServiceAware";
3
+ import { OutsideApiService } from "../service/OutsideApiService";
4
+ export declare abstract class DefaultContractDeclarationExecutor implements ContractDeclarationExecute, OutsideApiServiceAware {
5
+ protected outsideApiService: OutsideApiService;
6
+ execute(keyword: string, dataObj: any): Promise<any>;
7
+ setOutsideApiService(outsideApiService: OutsideApiService): void;
8
+ }
@@ -0,0 +1,13 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.DefaultContractDeclarationExecutor = void 0;
4
+ class DefaultContractDeclarationExecutor {
5
+ async execute(keyword, dataObj) {
6
+ throw new Error("这是个空实现,不能被调用!");
7
+ }
8
+ setOutsideApiService(outsideApiService) {
9
+ this.outsideApiService = outsideApiService;
10
+ }
11
+ }
12
+ exports.DefaultContractDeclarationExecutor = DefaultContractDeclarationExecutor;
13
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiRGVmYXVsdENvbnRyYWN0RGVjbGFyYXRpb25FeGVjdXRvci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9jb250cmFjdC1kZWNsYXJhdGlvbi1leGVjdXRvci9EZWZhdWx0Q29udHJhY3REZWNsYXJhdGlvbkV4ZWN1dG9yLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQUlBLE1BQXNCLGtDQUFrQztJQUlwRCxLQUFLLENBQUMsT0FBTyxDQUFDLE9BQWUsRUFBRSxPQUFZO1FBQ3ZDLE1BQU0sSUFBSSxLQUFLLENBQUMsZUFBZSxDQUFDLENBQUM7SUFDckMsQ0FBQztJQUVELG9CQUFvQixDQUFDLGlCQUFvQztRQUNyRCxJQUFJLENBQUMsaUJBQWlCLEdBQUcsaUJBQWlCLENBQUM7SUFDL0MsQ0FBQztDQUNKO0FBWEQsZ0ZBV0MifQ==
@@ -0,0 +1,7 @@
1
+ import { ContractDeclarationExecute } from "../interface/ContractDeclarationExecute";
2
+ import { DefaultContractDeclarationExecutor } from "./DefaultContractDeclarationExecutor";
3
+ export declare class DynamicContractDeclarationExecutor extends DefaultContractDeclarationExecutor {
4
+ protected executorMap: Map<string, ContractDeclarationExecute>;
5
+ execute(keyword: string, dataObj: any): Promise<any>;
6
+ addExecutor(keyword: string, executor: ContractDeclarationExecute): void;
7
+ }
@@ -0,0 +1,21 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.DynamicContractDeclarationExecutor = void 0;
4
+ const DefaultContractDeclarationExecutor_1 = require("./DefaultContractDeclarationExecutor");
5
+ class DynamicContractDeclarationExecutor extends DefaultContractDeclarationExecutor_1.DefaultContractDeclarationExecutor {
6
+ constructor() {
7
+ super(...arguments);
8
+ this.executorMap = new Map();
9
+ }
10
+ async execute(keyword, dataObj) {
11
+ if (this.executorMap.has(keyword)) {
12
+ return this.executorMap.get(keyword).execute(keyword, dataObj);
13
+ }
14
+ throw new Error(`该关键字未实现【${keyword}】!`);
15
+ }
16
+ addExecutor(keyword, executor) {
17
+ this.executorMap.set(keyword, executor);
18
+ }
19
+ }
20
+ exports.DynamicContractDeclarationExecutor = DynamicContractDeclarationExecutor;
21
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiRHluYW1pY0NvbnRyYWN0RGVjbGFyYXRpb25FeGVjdXRvci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9jb250cmFjdC1kZWNsYXJhdGlvbi1leGVjdXRvci9EeW5hbWljQ29udHJhY3REZWNsYXJhdGlvbkV4ZWN1dG9yLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQUNBLDZGQUF3RjtBQUV4RixNQUFhLGtDQUFtQyxTQUFRLHVFQUFrQztJQUExRjs7UUFFYyxnQkFBVyxHQUFHLElBQUksR0FBRyxFQUFzQyxDQUFDO0lBYTFFLENBQUM7SUFYRyxLQUFLLENBQUMsT0FBTyxDQUFDLE9BQWUsRUFBRSxPQUFZO1FBQ3ZDLElBQUksSUFBSSxDQUFDLFdBQVcsQ0FBQyxHQUFHLENBQUMsT0FBTyxDQUFDLEVBQUUsQ0FBQztZQUNoQyxPQUFPLElBQUksQ0FBQyxXQUFXLENBQUMsR0FBRyxDQUFDLE9BQU8sQ0FBQyxDQUFDLE9BQU8sQ0FBQyxPQUFPLEVBQUUsT0FBTyxDQUFDLENBQUM7UUFDbkUsQ0FBQztRQUVELE1BQU0sSUFBSSxLQUFLLENBQUMsV0FBVyxPQUFPLElBQUksQ0FBQyxDQUFDO0lBQzVDLENBQUM7SUFFRCxXQUFXLENBQUMsT0FBZSxFQUFFLFFBQW9DO1FBQzdELElBQUksQ0FBQyxXQUFXLENBQUMsR0FBRyxDQUFDLE9BQU8sRUFBRSxRQUFRLENBQUMsQ0FBQztJQUM1QyxDQUFDO0NBQ0o7QUFmRCxnRkFlQyJ9
@@ -0,0 +1,4 @@
1
+ import { DefaultContractDeclarationExecutor } from "./DefaultContractDeclarationExecutor";
2
+ export declare class USEContractDeclaration extends DefaultContractDeclarationExecutor {
3
+ execute(keyword: string, dataObj: any): Promise<any>;
4
+ }
@@ -0,0 +1,23 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.USEContractDeclaration = void 0;
4
+ const DefaultContractDeclarationExecutor_1 = require("./DefaultContractDeclarationExecutor");
5
+ class USEContractDeclaration extends DefaultContractDeclarationExecutor_1.DefaultContractDeclarationExecutor {
6
+ async execute(keyword, dataObj) {
7
+ let conditions = dataObj["conditions"];
8
+ let infos = await this.outsideApiService.contractInfos({
9
+ subject: conditions["subject"],
10
+ policyId: conditions["policyId"],
11
+ licensee: conditions["licensee"],
12
+ status: 0
13
+ });
14
+ if (infos.length != 0) {
15
+ return infos[0];
16
+ }
17
+ else {
18
+ return null;
19
+ }
20
+ }
21
+ }
22
+ exports.USEContractDeclaration = USEContractDeclaration;
23
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiVVNFQ29udHJhY3REZWNsYXJhdGlvbi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9jb250cmFjdC1kZWNsYXJhdGlvbi1leGVjdXRvci9VU0VDb250cmFjdERlY2xhcmF0aW9uLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQUFBLDZGQUF3RjtBQUV4RixNQUFhLHNCQUF1QixTQUFRLHVFQUFrQztJQUUxRSxLQUFLLENBQUMsT0FBTyxDQUFDLE9BQWUsRUFBRSxPQUFZO1FBQ3ZDLElBQUksVUFBVSxHQUFHLE9BQU8sQ0FBQyxZQUFZLENBQUMsQ0FBQztRQUN2QyxJQUFJLEtBQUssR0FBRyxNQUFNLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxhQUFhLENBQUM7WUFDbkQsT0FBTyxFQUFFLFVBQVUsQ0FBQyxTQUFTLENBQUM7WUFDOUIsUUFBUSxFQUFFLFVBQVUsQ0FBQyxVQUFVLENBQUM7WUFDaEMsUUFBUSxFQUFFLFVBQVUsQ0FBQyxVQUFVLENBQUM7WUFDaEMsTUFBTSxFQUFFLENBQUM7U0FDWixDQUFDLENBQUM7UUFDSCxJQUFJLEtBQUssQ0FBQyxNQUFNLElBQUksQ0FBQyxFQUFFLENBQUM7WUFDcEIsT0FBTyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUM7UUFDcEIsQ0FBQzthQUFNLENBQUM7WUFDSixPQUFPLElBQUksQ0FBQztRQUNoQixDQUFDO0lBQ0wsQ0FBQztDQUNKO0FBaEJELHdEQWdCQyJ9
@@ -0,0 +1,11 @@
1
+ import { DynamicFunctionExecutor } from "./DynamicFunctionExecutor";
2
+ export declare class ApiFunctionExecutor extends DynamicFunctionExecutor {
3
+ getFunctionCodeMap(): Map<string, string>;
4
+ F_001(args: {
5
+ node?: string;
6
+ subject?: any;
7
+ policyId?: string;
8
+ status?: number;
9
+ licensee: any;
10
+ }): Promise<number>;
11
+ }
@@ -0,0 +1,17 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.ApiFunctionExecutor = void 0;
4
+ const DynamicFunctionExecutor_1 = require("./DynamicFunctionExecutor");
5
+ class ApiFunctionExecutor extends DynamicFunctionExecutor_1.DynamicFunctionExecutor {
6
+ getFunctionCodeMap() {
7
+ return new Map([
8
+ ["api.contract.querySignCount", "F_001"]
9
+ ]);
10
+ }
11
+ async F_001(args) {
12
+ return this.outsideApiService.contractSignCount(args);
13
+ // throw new Error("该函数未实现【api.contract.querySignCount】");
14
+ }
15
+ }
16
+ exports.ApiFunctionExecutor = ApiFunctionExecutor;
17
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiQXBpRnVuY3Rpb25FeGVjdXRvci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9mdW5jdGlvbi1leGVjdXRvci9BcGlGdW5jdGlvbkV4ZWN1dG9yLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQUFBLHVFQUFrRTtBQUVsRSxNQUFhLG1CQUFvQixTQUFRLGlEQUF1QjtJQUU1RCxrQkFBa0I7UUFDZCxPQUFPLElBQUksR0FBRyxDQUFpQjtZQUMzQixDQUFDLDZCQUE2QixFQUFFLE9BQU8sQ0FBQztTQUMzQyxDQUFDLENBQUM7SUFDUCxDQUFDO0lBRUQsS0FBSyxDQUFDLEtBQUssQ0FBQyxJQU1YO1FBQ0csT0FBTyxJQUFJLENBQUMsaUJBQWlCLENBQUMsaUJBQWlCLENBQUMsSUFBSSxDQUFDLENBQUM7UUFDdEQsMERBQTBEO0lBQzlELENBQUM7Q0FDSjtBQWxCRCxrREFrQkMifQ==
@@ -0,0 +1,11 @@
1
+ import { FunctionInvoke } from "../interface/FunctionInvoke";
2
+ import { OutsideApiService } from "../service/OutsideApiService";
3
+ import { VarContextCapable } from "../interface/VarContextCapable";
4
+ import { OutsideApiServiceAware } from "../interface/OutsideApiServiceAware";
5
+ export declare abstract class DefaultFunctionExecutor implements FunctionInvoke, OutsideApiServiceAware, VarContextCapable<any> {
6
+ protected outsideApiService: OutsideApiService;
7
+ setOutsideApiService(outsideApiService: OutsideApiService): void;
8
+ invoke(functionName: string, args: any[]): Promise<any>;
9
+ invokeEnable(functionName: string): boolean;
10
+ getVarContext(varName: string): Promise<any>;
11
+ }