@steedos/objectql 3.0.13-beta.3 → 3.0.13-beta.32

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 (136) hide show
  1. package/lib/actions/field_updates.js +84 -153
  2. package/lib/actions/field_updates.js.map +1 -1
  3. package/lib/actions/index.js +1 -1
  4. package/lib/actions/workflow_notifications.js +50 -111
  5. package/lib/actions/workflow_notifications.js.map +1 -1
  6. package/lib/actions/workflow_outbound_messages.js +43 -94
  7. package/lib/actions/workflow_outbound_messages.js.map +1 -1
  8. package/lib/actions/workflow_rule.js +80 -177
  9. package/lib/actions/workflow_rule.js.map +1 -1
  10. package/lib/broker.js +19 -49
  11. package/lib/broker.js.map +1 -1
  12. package/lib/driver/field-encrytion/index.js +1 -1
  13. package/lib/driver/field-encrytion/mongosharedconst.js +17 -17
  14. package/lib/driver/field-encrytion/mongosharedconst.js.map +1 -1
  15. package/lib/driver/format.js +3 -3
  16. package/lib/driver/format.js.map +1 -1
  17. package/lib/driver/index.js +1 -1
  18. package/lib/driver/metadata.js +283 -387
  19. package/lib/driver/metadata.js.map +1 -1
  20. package/lib/driver/metadataOld.js +104 -105
  21. package/lib/driver/metadataOld.js.map +1 -1
  22. package/lib/driver/meteorMongo.js +5 -8
  23. package/lib/driver/meteorMongo.js.map +1 -1
  24. package/lib/driver/mongo.js +321 -506
  25. package/lib/driver/mongo.js.map +1 -1
  26. package/lib/driver/mysql.js +16 -20
  27. package/lib/driver/mysql.js.map +1 -1
  28. package/lib/driver/oracle.js +25 -38
  29. package/lib/driver/oracle.js.map +1 -1
  30. package/lib/driver/postgres.js +16 -20
  31. package/lib/driver/postgres.js.map +1 -1
  32. package/lib/driver/sqlite3.js +15 -19
  33. package/lib/driver/sqlite3.js.map +1 -1
  34. package/lib/driver/sqlserver.js +20 -33
  35. package/lib/driver/sqlserver.js.map +1 -1
  36. package/lib/errors/index.js +10 -11
  37. package/lib/errors/index.js.map +1 -1
  38. package/lib/formula/core.js +307 -594
  39. package/lib/formula/core.js.map +1 -1
  40. package/lib/formula/field_formula.js +80 -126
  41. package/lib/formula/field_formula.js.map +1 -1
  42. package/lib/formula/index.js +56 -97
  43. package/lib/formula/index.js.map +1 -1
  44. package/lib/formula/params.js +11 -11
  45. package/lib/formula/params.js.map +1 -1
  46. package/lib/formula/recompute.js +41 -166
  47. package/lib/formula/recompute.js.map +1 -1
  48. package/lib/formula/simple_params.js +12 -12
  49. package/lib/formula/simple_params.js.map +1 -1
  50. package/lib/formula/util.js +43 -67
  51. package/lib/formula/util.js.map +1 -1
  52. package/lib/functions/function.js +62 -87
  53. package/lib/functions/function.js.map +1 -1
  54. package/lib/index.js +3 -3
  55. package/lib/index.js.map +1 -1
  56. package/lib/services/datasourceServiceFactory.js +77 -111
  57. package/lib/services/datasourceServiceFactory.js.map +1 -1
  58. package/lib/services/index.js +3 -3
  59. package/lib/services/index.js.map +1 -1
  60. package/lib/summary/core.js +162 -355
  61. package/lib/summary/core.js.map +1 -1
  62. package/lib/summary/field_summary.js +44 -71
  63. package/lib/summary/field_summary.js.map +1 -1
  64. package/lib/summary/index.js +65 -80
  65. package/lib/summary/index.js.map +1 -1
  66. package/lib/summary/recompute.js +19 -47
  67. package/lib/summary/recompute.js.map +1 -1
  68. package/lib/triggers/trigger.js +101 -142
  69. package/lib/triggers/trigger.js.map +1 -1
  70. package/lib/ts-types/index.js +1 -1
  71. package/lib/typeorm/driver.js +250 -450
  72. package/lib/typeorm/driver.js.map +1 -1
  73. package/lib/typeorm/index.js +1 -1
  74. package/lib/typeorm/util.js +28 -28
  75. package/lib/typeorm/util.js.map +1 -1
  76. package/lib/types/action.js +24 -33
  77. package/lib/types/action.js.map +1 -1
  78. package/lib/types/app.js +210 -355
  79. package/lib/types/app.js.map +1 -1
  80. package/lib/types/connection.js +42 -78
  81. package/lib/types/connection.js.map +1 -1
  82. package/lib/types/dashboard.js +56 -77
  83. package/lib/types/dashboard.js.map +1 -1
  84. package/lib/types/datasource.js +359 -705
  85. package/lib/types/datasource.js.map +1 -1
  86. package/lib/types/defaultValue.js +53 -65
  87. package/lib/types/defaultValue.js.map +1 -1
  88. package/lib/types/field.js +165 -137
  89. package/lib/types/field.js.map +1 -1
  90. package/lib/types/field_permission.js +35 -66
  91. package/lib/types/field_permission.js.map +1 -1
  92. package/lib/types/index.js +1 -1
  93. package/lib/types/list_view.js +36 -43
  94. package/lib/types/list_view.js.map +1 -1
  95. package/lib/types/metadata.js +6 -6
  96. package/lib/types/metadata.js.map +1 -1
  97. package/lib/types/method_base.js +95 -128
  98. package/lib/types/method_base.js.map +1 -1
  99. package/lib/types/object.js +2005 -3015
  100. package/lib/types/object.js.map +1 -1
  101. package/lib/types/object_events.js +24 -37
  102. package/lib/types/object_events.js.map +1 -1
  103. package/lib/types/object_layouts.js +15 -38
  104. package/lib/types/object_layouts.js.map +1 -1
  105. package/lib/types/object_permission.js +99 -85
  106. package/lib/types/object_permission.js.map +1 -1
  107. package/lib/types/report.js +70 -98
  108. package/lib/types/report.js.map +1 -1
  109. package/lib/types/restrictionRule.js +47 -96
  110. package/lib/types/restrictionRule.js.map +1 -1
  111. package/lib/types/schema.js +115 -177
  112. package/lib/types/schema.js.map +1 -1
  113. package/lib/types/shareRule.js +53 -102
  114. package/lib/types/shareRule.js.map +1 -1
  115. package/lib/types/trigger.js +43 -56
  116. package/lib/types/trigger.js.map +1 -1
  117. package/lib/types/validation_rules.js +18 -56
  118. package/lib/types/validation_rules.js.map +1 -1
  119. package/lib/util/convert.js +24 -24
  120. package/lib/util/convert.js.map +1 -1
  121. package/lib/util/field.js +16 -28
  122. package/lib/util/field.js.map +1 -1
  123. package/lib/util/function_expression.js +7 -8
  124. package/lib/util/function_expression.js.map +1 -1
  125. package/lib/util/index.js +79 -97
  126. package/lib/util/index.js.map +1 -1
  127. package/lib/util/locale.js +4 -4
  128. package/lib/util/locale.js.map +1 -1
  129. package/lib/util/permission_shares.js +7 -7
  130. package/lib/util/permission_shares.js.map +1 -1
  131. package/lib/util/suffix.js +19 -19
  132. package/lib/util/suffix.js.map +1 -1
  133. package/lib/util/transform.js +1 -1
  134. package/lib/validators/index.js +10 -10
  135. package/lib/validators/index.js.map +1 -1
  136. package/package.json +12 -12
@@ -1,175 +1,50 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.recomputeFieldFormulaValues = exports.recomputeFormulaValues = void 0;
4
- var tslib_1 = require("tslib");
5
- var index_1 = require("../index");
6
- var util_1 = require("./util");
7
- var field_formula_1 = require("./field_formula");
8
- var core_1 = require("./core");
9
- var summary_1 = require("../summary");
10
- var runCurrentFieldFormulas = function (fieldFormulaConfig, userSession) {
11
- return tslib_1.__awaiter(this, void 0, void 0, function () {
12
- var fieldName, objectName, formulaVarFields, docs, docs_1, docs_1_1, doc, value, setDoc, e_1_1;
13
- var e_1, _a;
14
- return tslib_1.__generator(this, function (_b) {
15
- switch (_b.label) {
16
- case 0:
17
- fieldName = fieldFormulaConfig.field_name, objectName = fieldFormulaConfig.object_name;
18
- formulaVarFields = (0, core_1.pickFieldFormulaVarFields)(fieldFormulaConfig);
19
- return [4, (0, index_1.getSteedosSchema)().getObject(objectName).find({ filters: [], fields: formulaVarFields })];
20
- case 1:
21
- docs = _b.sent();
22
- _b.label = 2;
23
- case 2:
24
- _b.trys.push([2, 9, 10, 11]);
25
- docs_1 = tslib_1.__values(docs), docs_1_1 = docs_1.next();
26
- _b.label = 3;
27
- case 3:
28
- if (!!docs_1_1.done) return [3, 8];
29
- doc = docs_1_1.value;
30
- return [4, (0, core_1.computeFieldFormulaValue)(doc, fieldFormulaConfig, userSession)];
31
- case 4:
32
- value = _b.sent();
33
- setDoc = {};
34
- setDoc[fieldName] = value;
35
- return [4, (0, index_1.getSteedosSchema)().getObject(objectName).directUpdate(doc._id, setDoc)];
36
- case 5:
37
- _b.sent();
38
- return [4, runQuotedFieldFormulas(doc._id, fieldFormulaConfig, userSession)];
39
- case 6:
40
- _b.sent();
41
- _b.label = 7;
42
- case 7:
43
- docs_1_1 = docs_1.next();
44
- return [3, 3];
45
- case 8: return [3, 11];
46
- case 9:
47
- e_1_1 = _b.sent();
48
- e_1 = { error: e_1_1 };
49
- return [3, 11];
50
- case 10:
51
- try {
52
- if (docs_1_1 && !docs_1_1.done && (_a = docs_1.return)) _a.call(docs_1);
53
- }
54
- finally { if (e_1) throw e_1.error; }
55
- return [7];
56
- case 11: return [4, runQuotedFieldSummaries(fieldFormulaConfig, userSession)];
57
- case 12:
58
- _b.sent();
59
- return [2];
60
- }
61
- });
62
- });
4
+ const index_1 = require("../index");
5
+ const util_1 = require("./util");
6
+ const field_formula_1 = require("./field_formula");
7
+ const core_1 = require("./core");
8
+ const summary_1 = require("../summary");
9
+ const runCurrentFieldFormulas = async function (fieldFormulaConfig, userSession) {
10
+ const { field_name: fieldName, object_name: objectName } = fieldFormulaConfig;
11
+ const formulaVarFields = (0, core_1.pickFieldFormulaVarFields)(fieldFormulaConfig);
12
+ const docs = await (0, index_1.getSteedosSchema)().getObject(objectName).find({ filters: [], fields: formulaVarFields });
13
+ for (const doc of docs) {
14
+ const value = await (0, core_1.computeFieldFormulaValue)(doc, fieldFormulaConfig, userSession);
15
+ let setDoc = {};
16
+ setDoc[fieldName] = value;
17
+ await (0, index_1.getSteedosSchema)().getObject(objectName).directUpdate(doc._id, setDoc);
18
+ await runQuotedFieldFormulas(doc._id, fieldFormulaConfig, userSession);
19
+ }
20
+ await runQuotedFieldSummaries(fieldFormulaConfig, userSession);
63
21
  };
64
- var runQuotedFieldFormulas = function (recordId, fieldFormulaConfig, userSession) {
65
- return tslib_1.__awaiter(this, void 0, void 0, function () {
66
- var formulaQuotedBys, _a, _b, config, e_2_1;
67
- var e_2, _c;
68
- return tslib_1.__generator(this, function (_d) {
69
- switch (_d.label) {
70
- case 0: return [4, (0, field_formula_1.getQuotedByFieldFormulaConfigs)(fieldFormulaConfig)];
71
- case 1:
72
- formulaQuotedBys = _d.sent();
73
- _d.label = 2;
74
- case 2:
75
- _d.trys.push([2, 7, 8, 9]);
76
- _a = tslib_1.__values(formulaQuotedBys.allConfigs), _b = _a.next();
77
- _d.label = 3;
78
- case 3:
79
- if (!!_b.done) return [3, 6];
80
- config = _b.value;
81
- return [4, (0, core_1.updateQuotedByObjectFieldFormulaValue)(fieldFormulaConfig.object_name, recordId, config, userSession)];
82
- case 4:
83
- _d.sent();
84
- _d.label = 5;
85
- case 5:
86
- _b = _a.next();
87
- return [3, 3];
88
- case 6: return [3, 9];
89
- case 7:
90
- e_2_1 = _d.sent();
91
- e_2 = { error: e_2_1 };
92
- return [3, 9];
93
- case 8:
94
- try {
95
- if (_b && !_b.done && (_c = _a.return)) _c.call(_a);
96
- }
97
- finally { if (e_2) throw e_2.error; }
98
- return [7];
99
- case 9: return [2];
100
- }
101
- });
102
- });
22
+ const runQuotedFieldFormulas = async function (recordId, fieldFormulaConfig, userSession) {
23
+ const formulaQuotedBys = await (0, field_formula_1.getQuotedByFieldFormulaConfigs)(fieldFormulaConfig);
24
+ for (const config of formulaQuotedBys.allConfigs) {
25
+ await (0, core_1.updateQuotedByObjectFieldFormulaValue)(fieldFormulaConfig.object_name, recordId, config, userSession);
26
+ }
103
27
  };
104
- var runQuotedFieldSummaries = function (fieldFormulaConfig, userSession) {
105
- return tslib_1.__awaiter(this, void 0, void 0, function () {
106
- var summaryQuotedBys, summaryQuotedBys_1, summaryQuotedBys_1_1, config, e_3_1;
107
- var e_3, _a;
108
- return tslib_1.__generator(this, function (_b) {
109
- switch (_b.label) {
110
- case 0: return [4, (0, summary_1.getQuotedByFieldSummaryConfigs)(fieldFormulaConfig)];
111
- case 1:
112
- summaryQuotedBys = _b.sent();
113
- _b.label = 2;
114
- case 2:
115
- _b.trys.push([2, 7, 8, 9]);
116
- summaryQuotedBys_1 = tslib_1.__values(summaryQuotedBys), summaryQuotedBys_1_1 = summaryQuotedBys_1.next();
117
- _b.label = 3;
118
- case 3:
119
- if (!!summaryQuotedBys_1_1.done) return [3, 6];
120
- config = summaryQuotedBys_1_1.value;
121
- return [4, (0, summary_1.recomputeFieldSummaryValues)(config, userSession)];
122
- case 4:
123
- _b.sent();
124
- _b.label = 5;
125
- case 5:
126
- summaryQuotedBys_1_1 = summaryQuotedBys_1.next();
127
- return [3, 3];
128
- case 6: return [3, 9];
129
- case 7:
130
- e_3_1 = _b.sent();
131
- e_3 = { error: e_3_1 };
132
- return [3, 9];
133
- case 8:
134
- try {
135
- if (summaryQuotedBys_1_1 && !summaryQuotedBys_1_1.done && (_a = summaryQuotedBys_1.return)) _a.call(summaryQuotedBys_1);
136
- }
137
- finally { if (e_3) throw e_3.error; }
138
- return [7];
139
- case 9: return [2];
140
- }
141
- });
142
- });
28
+ const runQuotedFieldSummaries = async function (fieldFormulaConfig, userSession) {
29
+ const summaryQuotedBys = await (0, summary_1.getQuotedByFieldSummaryConfigs)(fieldFormulaConfig);
30
+ for (const config of summaryQuotedBys) {
31
+ await (0, summary_1.recomputeFieldSummaryValues)(config, userSession);
32
+ }
33
+ };
34
+ const recomputeFormulaValues = async (fieldId, userSession) => {
35
+ let config = await (0, field_formula_1.getFieldFormulaConfig)(fieldId);
36
+ if (!config) {
37
+ throw new Error(`recomputeFormulaValues:${fieldId} not found in field_formula configs.`);
38
+ }
39
+ return await (0, exports.recomputeFieldFormulaValues)(config, userSession);
143
40
  };
144
- var recomputeFormulaValues = function (fieldId, userSession) { return tslib_1.__awaiter(void 0, void 0, void 0, function () {
145
- var config;
146
- return tslib_1.__generator(this, function (_a) {
147
- switch (_a.label) {
148
- case 0: return [4, (0, field_formula_1.getFieldFormulaConfig)(fieldId)];
149
- case 1:
150
- config = _a.sent();
151
- if (!config) {
152
- throw new Error("recomputeFormulaValues:".concat(fieldId, " not found in field_formula configs."));
153
- }
154
- return [4, (0, exports.recomputeFieldFormulaValues)(config, userSession)];
155
- case 2: return [2, _a.sent()];
156
- }
157
- });
158
- }); };
159
41
  exports.recomputeFormulaValues = recomputeFormulaValues;
160
- var recomputeFieldFormulaValues = function (fieldFormulaConfig, userSession) { return tslib_1.__awaiter(void 0, void 0, void 0, function () {
161
- return tslib_1.__generator(this, function (_a) {
162
- switch (_a.label) {
163
- case 0:
164
- if (!userSession) {
165
- (0, util_1.checkUserSessionNotRequiredForFieldFormulas)(fieldFormulaConfig);
166
- }
167
- return [4, runCurrentFieldFormulas(fieldFormulaConfig, userSession)];
168
- case 1:
169
- _a.sent();
170
- return [2, true];
171
- }
172
- });
173
- }); };
42
+ const recomputeFieldFormulaValues = async (fieldFormulaConfig, userSession) => {
43
+ if (!userSession) {
44
+ (0, util_1.checkUserSessionNotRequiredForFieldFormulas)(fieldFormulaConfig);
45
+ }
46
+ await runCurrentFieldFormulas(fieldFormulaConfig, userSession);
47
+ return true;
48
+ };
174
49
  exports.recomputeFieldFormulaValues = recomputeFieldFormulaValues;
175
50
  //# sourceMappingURL=recompute.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"recompute.js","sourceRoot":"","sources":["../../src/formula/recompute.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"recompute.js","sourceRoot":"","sources":["../../src/formula/recompute.ts"],"names":[],"mappings":";;;AAAA,oCAA4C;AAE5C,iCAAqE;AACrE,mDAAwF;AACxF,iCAAoH;AACpH,wCAAyF;AAEzF,MAAM,uBAAuB,GAAG,KAAK,WAAW,kBAAiD,EAAE,WAAgB;IAC/G,MAAM,EAAE,UAAU,EAAE,SAAS,EAAE,WAAW,EAAE,UAAU,EAAE,GAAG,kBAAkB,CAAC;IAC9E,MAAM,gBAAgB,GAAG,IAAA,gCAAyB,EAAC,kBAAkB,CAAC,CAAC;IACvE,MAAM,IAAI,GAAG,MAAM,IAAA,wBAAgB,GAAE,CAAC,SAAS,CAAC,UAAU,CAAC,CAAC,IAAI,CAAC,EAAE,OAAO,EAAE,EAAE,EAAE,MAAM,EAAE,gBAAgB,EAAE,CAAC,CAAA;IAC3G,KAAK,MAAM,GAAG,IAAI,IAAI,EAAE,CAAC;QACrB,MAAM,KAAK,GAAG,MAAM,IAAA,+BAAwB,EAAC,GAAG,EAAE,kBAAkB,EAAE,WAAW,CAAC,CAAC;QACnF,IAAI,MAAM,GAAG,EAAE,CAAC;QAChB,MAAM,CAAC,SAAS,CAAC,GAAG,KAAK,CAAC;QAC1B,MAAM,IAAA,wBAAgB,GAAE,CAAC,SAAS,CAAC,UAAU,CAAC,CAAC,YAAY,CAAC,GAAG,CAAC,GAAG,EAAE,MAAM,CAAC,CAAC;QAC7E,MAAM,sBAAsB,CAAC,GAAG,CAAC,GAAG,EAAE,kBAAkB,EAAE,WAAW,CAAC,CAAC;IAC3E,CAAC;IACD,MAAM,uBAAuB,CAAC,kBAAkB,EAAE,WAAW,CAAC,CAAC;AACnE,CAAC,CAAA;AAED,MAAM,sBAAsB,GAAG,KAAK,WAAW,QAAgB,EAAE,kBAAiD,EAAE,WAAgB;IAChI,MAAM,gBAAgB,GAAG,MAAM,IAAA,8CAA8B,EAAC,kBAAkB,CAAC,CAAC;IAClF,KAAK,MAAM,MAAM,IAAI,gBAAgB,CAAC,UAAU,EAAE,CAAC;QAC/C,MAAM,IAAA,4CAAqC,EAAC,kBAAkB,CAAC,WAAW,EAAE,QAAQ,EAAE,MAAM,EAAE,WAAW,CAAC,CAAC;IAC/G,CAAC;AACL,CAAC,CAAA;AAOD,MAAM,uBAAuB,GAAG,KAAK,WAAW,kBAAiD,EAAE,WAAgB;IAC/G,MAAM,gBAAgB,GAAG,MAAM,IAAA,wCAA8B,EAAC,kBAAkB,CAAC,CAAC;IAClF,KAAK,MAAM,MAAM,IAAI,gBAAgB,EAAE,CAAC;QACpC,MAAM,IAAA,qCAA2B,EAAC,MAAM,EAAE,WAAW,CAAC,CAAC;IAC3D,CAAC;AACL,CAAC,CAAA;AAMM,MAAM,sBAAsB,GAAG,KAAK,EAAE,OAAe,EAAE,WAAgB,EAAE,EAAE;IAC9E,IAAI,MAAM,GAAG,MAAM,IAAA,qCAAqB,EAAC,OAAO,CAAC,CAAC;IAClD,IAAI,CAAC,MAAM,EAAE,CAAC;QACV,MAAM,IAAI,KAAK,CAAC,0BAA0B,OAAO,sCAAsC,CAAC,CAAC;IAC7F,CAAC;IACD,OAAO,MAAM,IAAA,mCAA2B,EAAC,MAAM,EAAE,WAAW,CAAC,CAAC;AAClE,CAAC,CAAA;AANY,QAAA,sBAAsB,0BAMlC;AAMM,MAAM,2BAA2B,GAAG,KAAK,EAAE,kBAAiD,EAAE,WAAgB,EAAE,EAAE;IACrH,IAAI,CAAC,WAAW,EAAE,CAAC;QACf,IAAA,kDAA2C,EAAC,kBAAkB,CAAC,CAAC;IACpE,CAAC;IACD,MAAM,uBAAuB,CAAC,kBAAkB,EAAE,WAAW,CAAC,CAAC;IAC/D,OAAO,IAAI,CAAC;AAChB,CAAC,CAAA;AANY,QAAA,2BAA2B,+BAMvC"}
@@ -1,13 +1,13 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.getSimpleParamSubstitution = getSimpleParamSubstitution;
4
- var type_1 = require("./type");
5
- var VALUE_TYPES_NOT_SUPPORTED = ["function"];
4
+ const type_1 = require("./type");
5
+ const VALUE_TYPES_NOT_SUPPORTED = ["function"];
6
6
  function getSubstitutionDataType(value) {
7
- var valueType = typeof value;
8
- var dateType;
7
+ const valueType = typeof value;
8
+ let dateType;
9
9
  if (VALUE_TYPES_NOT_SUPPORTED.indexOf(dateType) > -1) {
10
- throw new Error("runFormula:Catch an error the param type \"".concat(valueType, "\" is not supported while eval formula with the params value: \"").concat(value, "\""));
10
+ throw new Error(`runFormula:Catch an error the param type "${valueType}" is not supported while eval formula with the params value: "${value}"`);
11
11
  }
12
12
  switch (valueType) {
13
13
  case 'string':
@@ -27,7 +27,7 @@ function getSubstitutionDataType(value) {
27
27
  dateType = "datetime";
28
28
  }
29
29
  else {
30
- throw new Error("runFormula:Catch an error the param type \"".concat(valueType, "\" is not supported while eval formula with the params value: \"").concat(value, "\""));
30
+ throw new Error(`runFormula:Catch an error the param type "${valueType}" is not supported while eval formula with the params value: "${value}"`);
31
31
  }
32
32
  break;
33
33
  case 'undefined':
@@ -41,14 +41,14 @@ function getSubstitutionDataType(value) {
41
41
  function getSubstitutionOptions(dataType, value) {
42
42
  switch (dataType) {
43
43
  case "number":
44
- var scale = 0;
45
- var str = value.toString();
46
- var dotStr = str.toString().split(".")[1];
47
- var dotCount = dotStr && dotStr.length;
44
+ let scale = 0;
45
+ let str = value.toString();
46
+ let dotStr = str.toString().split(".")[1];
47
+ let dotCount = dotStr && dotStr.length;
48
48
  if (dotCount > 0) {
49
49
  scale = dotCount;
50
50
  }
51
- return { scale: scale };
51
+ return { scale };
52
52
  case "text":
53
53
  return { length: Number.MAX_VALUE };
54
54
  default:
@@ -78,7 +78,7 @@ function getSubstitutionValue(dataType, value, blankValue) {
78
78
  return value;
79
79
  }
80
80
  function getSimpleParamSubstitution(value, blankValue) {
81
- var fieldSubstitution = {
81
+ let fieldSubstitution = {
82
82
  type: 'literal',
83
83
  value: value
84
84
  };
@@ -1 +1 @@
1
- {"version":3,"file":"simple_params.js","sourceRoot":"","sources":["../../src/formula/simple_params.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"simple_params.js","sourceRoot":"","sources":["../../src/formula/simple_params.ts"],"names":[],"mappings":";;AAkFA,gEASC;AA3FD,iCAAkD;AAGlD,MAAM,yBAAyB,GAAG,CAAC,UAAU,CAAC,CAAC;AAE/C,SAAS,uBAAuB,CAAC,KAAU;IACvC,MAAM,SAAS,GAAG,OAAO,KAAK,CAAC;IAC/B,IAAI,QAA0B,CAAC;IAC/B,IAAG,yBAAyB,CAAC,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,EAAC,CAAC;QACjD,MAAM,IAAI,KAAK,CAAC,6CAA6C,SAAS,iEAAiE,KAAK,GAAG,CAAC,CAAC;IACrJ,CAAC;IACD,QAAQ,SAAS,EAAE,CAAC;QAChB,KAAK,QAAQ;YACT,QAAQ,SAAwB,CAAC;YACjC,MAAM;QACV,KAAK,QAAQ;YACT,QAAQ,WAA0B,CAAC;YACnC,MAAM;QACV,KAAK,SAAS;YACV,QAAQ,aAA4B,CAAC;YACrC,MAAM;QACV,KAAK,QAAQ;YACT,IAAG,KAAK,KAAK,IAAI,EAAC,CAAC;gBACf,QAAQ,SAAwB,CAAC;YACrC,CAAC;iBACI,IAAI,KAAK,YAAY,IAAI,EAAC,CAAC;gBAC5B,QAAQ,aAA4B,CAAC;YACzC,CAAC;iBACG,CAAC;gBACD,MAAM,IAAI,KAAK,CAAC,6CAA6C,SAAS,iEAAiE,KAAK,GAAG,CAAC,CAAC;YACrJ,CAAC;YACD,MAAM;QACV,KAAK,WAAW;YACZ,QAAQ,SAAwB,CAAC;YACjC,MAAM;QACV;YACI,MAAM;IACd,CAAC;IACD,OAAO,QAAQ,CAAC;AACpB,CAAC;AAED,SAAS,sBAAsB,CAAC,QAAgB,EAAE,KAAU;IACxD,QAAQ,QAAQ,EAAE,CAAC;QACf;YACI,IAAI,KAAK,GAAG,CAAC,CAAC;YACd,IAAI,GAAG,GAAG,KAAK,CAAC,QAAQ,EAAE,CAAC;YAC3B,IAAI,MAAM,GAAG,GAAG,CAAC,QAAQ,EAAE,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;YAC1C,IAAI,QAAQ,GAAG,MAAM,IAAI,MAAM,CAAC,MAAM,CAAC;YACvC,IAAG,QAAQ,GAAG,CAAC,EAAC,CAAC;gBACb,KAAK,GAAG,QAAQ,CAAC;YACrB,CAAC;YACD,OAAO,EAAE,KAAK,EAAE,CAAC;QACrB;YACI,OAAO,EAAC,MAAM,EAAE,MAAM,CAAC,SAAS,EAAC,CAAC;QACtC;YACI,OAAQ;IAChB,CAAC;AACL,CAAC;AAED,SAAS,oBAAoB,CAAC,QAAgB,EAAE,KAAU,EAAE,UAAoC;IAC5F,QAAQ,QAAQ,EAAE,CAAC;QACf;YACI,IAAG,KAAK,KAAK,IAAI,IAAI,KAAK,KAAK,SAAS,EAAC,CAAC;gBACtC,OAAO,EAAE,CAAC;YACd,CAAC;YACD,MAAM;QACV;YACI,IAAG,KAAK,KAAK,IAAI,IAAI,KAAK,KAAK,SAAS,EAAC,CAAC;gBACtC,IAAG,UAAU,KAAK,+BAAwB,CAAC,MAAM,EAAC,CAAC;oBAC/C,OAAO,IAAI,CAAC;gBAChB,CAAC;qBACG,CAAC;oBACD,OAAO,CAAC,CAAC;gBACb,CAAC;YACL,CAAC;YACD,MAAM;QACV;YACI,MAAM;IACd,CAAC;IACD,OAAO,KAAK,CAAC;AACjB,CAAC;AAED,SAAgB,0BAA0B,CAAC,KAAU,EAAE,UAAoC;IACvF,IAAI,iBAAiB,GAAQ;QACzB,IAAI,EAAE,SAAS;QACf,KAAK,EAAE,KAAK;KACf,CAAA;IACD,iBAAiB,CAAC,QAAQ,GAAG,uBAAuB,CAAC,KAAK,CAAC,CAAC;IAC5D,iBAAiB,CAAC,OAAO,GAAG,sBAAsB,CAAC,iBAAiB,CAAC,QAAQ,EAAE,KAAK,CAAC,CAAC;IACtF,iBAAiB,CAAC,KAAK,GAAI,oBAAoB,CAAC,iBAAiB,CAAC,QAAQ,EAAE,KAAK,EAAE,UAAU,CAAC,CAAC;IAC/F,OAAO,iBAAiB,CAAC;AAC7B,CAAC"}
@@ -1,13 +1,12 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.getFormulaVarPathsAggregateLookups = exports.isUserSessionRequiredForFormulaVars = exports.checkUserSessionNotRequiredForFieldFormulas = exports.sortFieldFormulaConfigs = exports.addToFieldFormulaConfigs = exports.isFieldFormulaConfigQuotedTwoWay = exports.isFieldFormulaConfigQuotedTwoWays = exports.isFieldFormulaConfigQuotingObjectAndFields = exports.isFieldFormulaConfigQuoted = exports.getQuotedFieldFormulaConfigs = void 0;
4
- var tslib_1 = require("tslib");
5
- var _ = require("lodash");
6
- var getQuotedFieldFormulaConfigs = function (config, sourceConfigs) {
7
- var quotes = config.quotes;
4
+ const _ = require("lodash");
5
+ const getQuotedFieldFormulaConfigs = (config, sourceConfigs) => {
6
+ const { quotes } = config;
8
7
  if (quotes && quotes.length) {
9
- return sourceConfigs.filter(function (sourceConfig) {
10
- return !!quotes.find(function (quote) {
8
+ return sourceConfigs.filter((sourceConfig) => {
9
+ return !!quotes.find((quote) => {
11
10
  return quote.object_name === sourceConfig.object_name && quote.field_name === sourceConfig.field_name;
12
11
  });
13
12
  });
@@ -17,18 +16,18 @@ var getQuotedFieldFormulaConfigs = function (config, sourceConfigs) {
17
16
  }
18
17
  };
19
18
  exports.getQuotedFieldFormulaConfigs = getQuotedFieldFormulaConfigs;
20
- var isFieldFormulaConfigQuoted = function (configA, configB) {
21
- var configAQuoteds = (0, exports.getQuotedFieldFormulaConfigs)(configA, [configB]);
19
+ const isFieldFormulaConfigQuoted = (configA, configB) => {
20
+ let configAQuoteds = (0, exports.getQuotedFieldFormulaConfigs)(configA, [configB]);
22
21
  return !!configAQuoteds.length;
23
22
  };
24
23
  exports.isFieldFormulaConfigQuoted = isFieldFormulaConfigQuoted;
25
24
  function includesAny(mainString, stringArray) {
26
- return _.some(stringArray, function (substr) { return mainString.includes(substr); });
25
+ return _.some(stringArray, (substr) => mainString.includes(substr));
27
26
  }
28
- var isFieldFormulaConfigQuotingObjectAndFields = function (config, objectName, fieldNames) {
29
- var quotes = config.quotes;
27
+ const isFieldFormulaConfigQuotingObjectAndFields = (config, objectName, fieldNames) => {
28
+ const { quotes } = config;
30
29
  if (quotes && quotes.length) {
31
- return !!quotes.find(function (quote) {
30
+ return !!quotes.find((quote) => {
32
31
  if (fieldNames && fieldNames.length) {
33
32
  return quote.object_name === objectName && fieldNames.indexOf(quote.field_name) > -1;
34
33
  }
@@ -45,38 +44,27 @@ var isFieldFormulaConfigQuotingObjectAndFields = function (config, objectName, f
45
44
  }
46
45
  };
47
46
  exports.isFieldFormulaConfigQuotingObjectAndFields = isFieldFormulaConfigQuotingObjectAndFields;
48
- var isFieldFormulaConfigQuotedTwoWays = function (config, sourceConfigs) {
49
- var e_1, _a;
50
- var quotedConfigs = (0, exports.getQuotedFieldFormulaConfigs)(config, sourceConfigs);
47
+ const isFieldFormulaConfigQuotedTwoWays = (config, sourceConfigs) => {
48
+ let quotedConfigs = (0, exports.getQuotedFieldFormulaConfigs)(config, sourceConfigs);
51
49
  if (!quotedConfigs.length) {
52
50
  return false;
53
51
  }
54
- try {
55
- for (var quotedConfigs_1 = tslib_1.__values(quotedConfigs), quotedConfigs_1_1 = quotedConfigs_1.next(); !quotedConfigs_1_1.done; quotedConfigs_1_1 = quotedConfigs_1.next()) {
56
- var quotedConfig = quotedConfigs_1_1.value;
57
- var isQuotedConfigQuoted = (0, exports.isFieldFormulaConfigQuoted)(quotedConfig, config);
58
- if (isQuotedConfigQuoted) {
59
- throw new Error("isFieldFormulaConfigQuotedTwoWays:The field formula config '".concat(config._id, "' and '").concat(quotedConfig._id, "' is quoted each other."));
60
- return true;
61
- }
62
- }
63
- }
64
- catch (e_1_1) { e_1 = { error: e_1_1 }; }
65
- finally {
66
- try {
67
- if (quotedConfigs_1_1 && !quotedConfigs_1_1.done && (_a = quotedConfigs_1.return)) _a.call(quotedConfigs_1);
52
+ for (let quotedConfig of quotedConfigs) {
53
+ let isQuotedConfigQuoted = (0, exports.isFieldFormulaConfigQuoted)(quotedConfig, config);
54
+ if (isQuotedConfigQuoted) {
55
+ throw new Error(`isFieldFormulaConfigQuotedTwoWays:The field formula config '${config._id}' and '${quotedConfig._id}' is quoted each other.`);
56
+ return true;
68
57
  }
69
- finally { if (e_1) throw e_1.error; }
70
58
  }
71
59
  return false;
72
60
  };
73
61
  exports.isFieldFormulaConfigQuotedTwoWays = isFieldFormulaConfigQuotedTwoWays;
74
- var isFieldFormulaConfigQuotedTwoWay = function (configA, configB) {
62
+ const isFieldFormulaConfigQuotedTwoWay = (configA, configB) => {
75
63
  return (0, exports.isFieldFormulaConfigQuotedTwoWays)(configA, [configB]);
76
64
  };
77
65
  exports.isFieldFormulaConfigQuotedTwoWay = isFieldFormulaConfigQuotedTwoWay;
78
- var addToFieldFormulaConfigs = function (config, configs) {
79
- var existedConfig = configs.find(function (item) {
66
+ const addToFieldFormulaConfigs = (config, configs) => {
67
+ let existedConfig = configs.find((item) => {
80
68
  return item._id === config._id;
81
69
  });
82
70
  if (!existedConfig) {
@@ -84,82 +72,70 @@ var addToFieldFormulaConfigs = function (config, configs) {
84
72
  }
85
73
  };
86
74
  exports.addToFieldFormulaConfigs = addToFieldFormulaConfigs;
87
- var addSortedFieldFormulaConfig = function (config, sourceConfigs, sortedConfigs) {
88
- var quotedConfigs = (0, exports.getQuotedFieldFormulaConfigs)(config, sourceConfigs);
89
- quotedConfigs.forEach(function (quotedConfig) {
75
+ const addSortedFieldFormulaConfig = (config, sourceConfigs, sortedConfigs) => {
76
+ const quotedConfigs = (0, exports.getQuotedFieldFormulaConfigs)(config, sourceConfigs);
77
+ quotedConfigs.forEach((quotedConfig) => {
90
78
  addSortedFieldFormulaConfig(quotedConfig, sourceConfigs, sortedConfigs);
91
79
  });
92
80
  (0, exports.addToFieldFormulaConfigs)(config, sortedConfigs);
93
81
  };
94
- var sortFieldFormulaConfigs = function (configs) {
82
+ const sortFieldFormulaConfigs = (configs) => {
95
83
  if (configs.length <= 1) {
96
84
  return configs;
97
85
  }
98
- var sortedConfigs = [];
99
- configs.forEach(function (config) {
86
+ let sortedConfigs = [];
87
+ configs.forEach((config) => {
100
88
  addSortedFieldFormulaConfig(config, configs, sortedConfigs);
101
89
  });
102
90
  return sortedConfigs;
103
91
  };
104
92
  exports.sortFieldFormulaConfigs = sortFieldFormulaConfigs;
105
- var checkUserSessionNotRequiredForFieldFormulas = function (configs) {
106
- var e_2, _a;
93
+ const checkUserSessionNotRequiredForFieldFormulas = (configs) => {
107
94
  if (!_.isArray(configs)) {
108
95
  configs = [configs];
109
96
  }
110
97
  if (!configs.length) {
111
98
  return;
112
99
  }
113
- try {
114
- for (var configs_1 = tslib_1.__values(configs), configs_1_1 = configs_1.next(); !configs_1_1.done; configs_1_1 = configs_1.next()) {
115
- var config = configs_1_1.value;
116
- var vars = config.vars, objectName = config.object_name, fieldName = config.field_name, formula = config.formula;
117
- var required = (0, exports.isUserSessionRequiredForFormulaVars)(vars);
118
- if (required) {
119
- throw new Error("The param 'userSession' is required while running the formula '".concat(formula.replace("$", "\\$"), "' of field '").concat(fieldName, "' on the object '").concat(objectName, "'"));
120
- }
121
- }
122
- }
123
- catch (e_2_1) { e_2 = { error: e_2_1 }; }
124
- finally {
125
- try {
126
- if (configs_1_1 && !configs_1_1.done && (_a = configs_1.return)) _a.call(configs_1);
100
+ for (let config of configs) {
101
+ let { vars, object_name: objectName, field_name: fieldName, formula } = config;
102
+ let required = (0, exports.isUserSessionRequiredForFormulaVars)(vars);
103
+ if (required) {
104
+ throw new Error(`The param 'userSession' is required while running the formula '${formula.replace("$", "\\$")}' of field '${fieldName}' on the object '${objectName}'`);
127
105
  }
128
- finally { if (e_2) throw e_2.error; }
129
106
  }
130
107
  };
131
108
  exports.checkUserSessionNotRequiredForFieldFormulas = checkUserSessionNotRequiredForFieldFormulas;
132
- var isUserSessionRequiredForFormulaVars = function (vars) {
133
- var required = !!vars.find(function (_a) {
134
- var isUserVar = _a.is_user_var, isUserSessionVar = _a.is_user_session_var;
109
+ const isUserSessionRequiredForFormulaVars = (vars) => {
110
+ let required = !!vars.find(({ is_user_var: isUserVar, is_user_session_var: isUserSessionVar }) => {
135
111
  return isUserVar || isUserSessionVar;
136
112
  });
137
113
  return required;
138
114
  };
139
115
  exports.isUserSessionRequiredForFormulaVars = isUserSessionRequiredForFormulaVars;
140
- var getFormulaVarPathsAggregateLookups = function (paths) {
116
+ const getFormulaVarPathsAggregateLookups = (paths) => {
141
117
  if (!paths.length) {
142
118
  return [];
143
119
  }
144
- var lookups = [], currentPath, nextPath;
145
- var tempLookupAs = "", tempLookupLocalField = "";
146
- for (var i = 0; i < paths.length - 1; i++) {
120
+ let lookups = [], currentPath, nextPath;
121
+ let tempLookupAs = "", tempLookupLocalField = "";
122
+ for (let i = 0; i < paths.length - 1; i++) {
147
123
  currentPath = paths[i];
148
124
  nextPath = paths[i + 1];
149
125
  tempLookupLocalField = currentPath.field_name;
150
126
  if (tempLookupAs) {
151
- tempLookupLocalField = "".concat(tempLookupAs, ".").concat(tempLookupLocalField);
127
+ tempLookupLocalField = `${tempLookupAs}.${tempLookupLocalField}`;
152
128
  tempLookupAs = tempLookupLocalField;
153
129
  }
154
130
  else {
155
- tempLookupAs = "__lookup__".concat(currentPath.field_name);
131
+ tempLookupAs = `__lookup__${currentPath.field_name}`;
156
132
  }
157
- var foreignField = currentPath.reference_to_field ? currentPath.reference_to_field : '_id';
133
+ let foreignField = currentPath.reference_to_field ? currentPath.reference_to_field : '_id';
158
134
  lookups.push({
159
135
  $lookup: {
160
136
  from: nextPath.reference_from,
161
137
  localField: tempLookupLocalField,
162
- foreignField: foreignField,
138
+ foreignField,
163
139
  as: tempLookupAs
164
140
  }
165
141
  });
@@ -1 +1 @@
1
- {"version":3,"file":"util.js","sourceRoot":"","sources":["../../src/formula/util.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"util.js","sourceRoot":"","sources":["../../src/formula/util.ts"],"names":[],"mappings":"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"}