@kontur.candy/generator 6.11.0 → 6.12.0-kl-features.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/index.js +189 -189
- package/package.json +1 -1
package/dist/index.js
CHANGED
|
@@ -80922,15 +80922,17 @@ __webpack_require__.r(__webpack_exports__);
|
|
|
80922
80922
|
/* harmony import */ var _common_KCLang_CodeDom_KCLangExpressionVisitor__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../common/KCLang/CodeDom/KCLangExpressionVisitor */ "./Generator/src/common/KCLang/CodeDom/KCLangExpressionVisitor.ts");
|
|
80923
80923
|
/* harmony import */ var _common_KCLang_CodeDom_KCLangType__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../common/KCLang/CodeDom/KCLangType */ "./Generator/src/common/KCLang/CodeDom/KCLangType.ts");
|
|
80924
80924
|
/* harmony import */ var _common_KCLang_CodeDom_CastExpression__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../common/KCLang/CodeDom/CastExpression */ "./Generator/src/common/KCLang/CodeDom/CastExpression.ts");
|
|
80925
|
-
/* harmony import */ var
|
|
80926
|
-
/* harmony import */ var
|
|
80927
|
-
/* harmony import */ var
|
|
80928
|
-
/* harmony import */ var
|
|
80929
|
-
/* harmony import */ var
|
|
80930
|
-
/* harmony import */ var
|
|
80931
|
-
/* harmony import */ var
|
|
80932
|
-
/* harmony import */ var
|
|
80933
|
-
/* harmony import */ var
|
|
80925
|
+
/* harmony import */ var _common_KCLang_CodeDom_StringConstExpression__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../common/KCLang/CodeDom/StringConstExpression */ "./Generator/src/common/KCLang/CodeDom/StringConstExpression.ts");
|
|
80926
|
+
/* harmony import */ var _common_KCLang_CodeDom_ValueReferenceExpression__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../../common/KCLang/CodeDom/ValueReferenceExpression */ "./Generator/src/common/KCLang/CodeDom/ValueReferenceExpression.ts");
|
|
80927
|
+
/* harmony import */ var _Common_ModelPath_ModelPath__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../../../../Common/ModelPath/ModelPath */ "./Common/ModelPath/ModelPath.ts");
|
|
80928
|
+
/* harmony import */ var _Common_ModelPath_PathSplitHelper__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ../../../../Common/ModelPath/PathSplitHelper */ "./Common/ModelPath/PathSplitHelper.ts");
|
|
80929
|
+
/* harmony import */ var _Common_TypingUtils__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ../../../../Common/TypingUtils */ "./Common/TypingUtils.ts");
|
|
80930
|
+
/* harmony import */ var _Common_Errors__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ../../../../Common/Errors */ "./Common/Errors.ts");
|
|
80931
|
+
/* harmony import */ var _Common_IterableUtils__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! ../../../../Common/IterableUtils */ "./Common/IterableUtils.ts");
|
|
80932
|
+
/* harmony import */ var _Common_ModelPath_BuildIterationSequence__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(/*! ../../../../Common/ModelPath/BuildIterationSequence */ "./Common/ModelPath/BuildIterationSequence.ts");
|
|
80933
|
+
/* harmony import */ var _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(/*! ./FLang/FLangCodeDom */ "./Generator/src/generators/ServerSideFLangNormalization/FLang/FLangCodeDom.ts");
|
|
80934
|
+
/* harmony import */ var _FLang_FlangUtils__WEBPACK_IMPORTED_MODULE_12__ = __webpack_require__(/*! ./FLang/FlangUtils */ "./Generator/src/generators/ServerSideFLangNormalization/FLang/FlangUtils.ts");
|
|
80935
|
+
|
|
80934
80936
|
|
|
80935
80937
|
|
|
80936
80938
|
|
|
@@ -80961,7 +80963,7 @@ class KCLangExpressionToFlangExpressionConverter extends _common_KCLang_CodeDom_
|
|
|
80961
80963
|
const resultExpr = this.visit(expression, context);
|
|
80962
80964
|
|
|
80963
80965
|
// Если выражение это только прямое обращение к значению, то трактовать его как строку
|
|
80964
|
-
if (resultExpr instanceof
|
|
80966
|
+
if (resultExpr instanceof _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_11__.CastExpression && resultExpr.targetType === _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_11__.BuildInTypeExpression.decimal && resultExpr.targetExpression instanceof _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_11__.ValueReferenceExpression) {
|
|
80965
80967
|
return resultExpr.targetExpression;
|
|
80966
80968
|
}
|
|
80967
80969
|
return resultExpr;
|
|
@@ -80971,139 +80973,139 @@ class KCLangExpressionToFlangExpressionConverter extends _common_KCLang_CodeDom_
|
|
|
80971
80973
|
}
|
|
80972
80974
|
visitArrayExpression(expression, context) {
|
|
80973
80975
|
const items = expression.expressions.map(item => this.visit(item, context));
|
|
80974
|
-
return new
|
|
80976
|
+
return new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_11__.ArrayExpression(items);
|
|
80975
80977
|
}
|
|
80976
80978
|
visitBoolConstExpression(expression, _context) {
|
|
80977
|
-
return new
|
|
80979
|
+
return new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_11__.BoolLiteralExpression(expression.value);
|
|
80978
80980
|
}
|
|
80979
80981
|
visitCastExpression(expression, context) {
|
|
80980
|
-
if (expression.operand instanceof
|
|
80982
|
+
if (expression.operand instanceof _common_KCLang_CodeDom_ValueReferenceExpression__WEBPACK_IMPORTED_MODULE_4__.ValueReferenceExpression) {
|
|
80981
80983
|
return this.compiledArgumentExpression(context, expression.operand.path, expression.type);
|
|
80982
80984
|
}
|
|
80983
80985
|
const targetExpr = this.visit(expression.operand, context);
|
|
80984
80986
|
const targetType = this.convertKCLangTypeToFLangType(expression.type);
|
|
80985
|
-
return (0,
|
|
80987
|
+
return (0,_FLang_FlangUtils__WEBPACK_IMPORTED_MODULE_12__.castOperandIfNeed)(targetExpr, targetType);
|
|
80986
80988
|
}
|
|
80987
80989
|
visitConditionalExpression(expression, context) {
|
|
80988
80990
|
const condExpr = this.visit(expression.condition, context);
|
|
80989
80991
|
const thenExpr = this.visit(expression.trueResult, context);
|
|
80990
80992
|
const elseExpr = this.visit(expression.elseResult, context);
|
|
80991
|
-
const castToStringRequired = thenExpr.getType() ===
|
|
80992
|
-
return new
|
|
80993
|
+
const castToStringRequired = thenExpr.getType() === _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_11__.BuildInTypeExpression.string || elseExpr.getType() === _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_11__.BuildInTypeExpression.string;
|
|
80994
|
+
return new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_11__.ConditionalExpression(condExpr, castToStringRequired ? (0,_FLang_FlangUtils__WEBPACK_IMPORTED_MODULE_12__.castOperandToStringIfNeed)(thenExpr) : thenExpr, castToStringRequired ? (0,_FLang_FlangUtils__WEBPACK_IMPORTED_MODULE_12__.castOperandToStringIfNeed)(elseExpr) : elseExpr);
|
|
80993
80995
|
}
|
|
80994
80996
|
visitDecimalConstExpression(expression, _context) {
|
|
80995
|
-
return new
|
|
80997
|
+
return new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_11__.DecimalLiteralExpression(expression.value.toFixed());
|
|
80996
80998
|
}
|
|
80997
80999
|
visitKCLangRawStringExpression(_expression, _context) {
|
|
80998
|
-
throw new
|
|
81000
|
+
throw new _Common_Errors__WEBPACK_IMPORTED_MODULE_8__.NotSupportedError();
|
|
80999
81001
|
}
|
|
81000
81002
|
visitNotExpression(expression, context) {
|
|
81001
|
-
return new
|
|
81003
|
+
return new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_11__.NegateUnaryExpression(this.visit(expression.expression, context));
|
|
81002
81004
|
}
|
|
81003
81005
|
visitNullCoalesceExpression(expression, context) {
|
|
81004
81006
|
const left = this.visit(expression.left, context);
|
|
81005
81007
|
const right = this.visit(expression.right, context);
|
|
81006
|
-
return new
|
|
81008
|
+
return new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_11__.NullCoalesceExpression(left, right);
|
|
81007
81009
|
}
|
|
81008
81010
|
visitOneOfExpression(expression, context) {
|
|
81009
|
-
const arg = (0,
|
|
81010
|
-
const items = expression.inExpressions.map(item => (0,
|
|
81011
|
-
return new
|
|
81011
|
+
const arg = (0,_FLang_FlangUtils__WEBPACK_IMPORTED_MODULE_12__.extractOriginalStringValueOrCastToStringIfNeeded)(this.visit(expression.expression, context));
|
|
81012
|
+
const items = expression.inExpressions.map(item => (0,_FLang_FlangUtils__WEBPACK_IMPORTED_MODULE_12__.extractOriginalStringValueOrCastToStringIfNeeded)(this.visit(item, context)));
|
|
81013
|
+
return new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_11__.OneOfExpression(arg, items);
|
|
81012
81014
|
}
|
|
81013
81015
|
visitQuotedExpression(_expression, _context) {
|
|
81014
|
-
throw new
|
|
81016
|
+
throw new _Common_Errors__WEBPACK_IMPORTED_MODULE_8__.NotSupportedError();
|
|
81015
81017
|
}
|
|
81016
81018
|
visitStringArrayConstExpression(expression, context) {
|
|
81017
81019
|
const items = expression.expressions.map(value => this.visit(value, context));
|
|
81018
|
-
return new
|
|
81020
|
+
return new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_11__.ArrayExpression(items);
|
|
81019
81021
|
}
|
|
81020
81022
|
visitStringConstExpression(expression, _context) {
|
|
81021
|
-
return new
|
|
81023
|
+
return new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_11__.StringLiteralExpression(expression.value);
|
|
81022
81024
|
}
|
|
81023
81025
|
visitUnaryMinusExpression(expression, context) {
|
|
81024
|
-
return new
|
|
81026
|
+
return new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_11__.MinusUnaryExpression((0,_FLang_FlangUtils__WEBPACK_IMPORTED_MODULE_12__.castOperandToDecimalIfNeed)(this.visit(expression.expr, context)));
|
|
81025
81027
|
}
|
|
81026
81028
|
visitValueReferenceExpression(expression, context) {
|
|
81027
81029
|
return this.compiledArgumentExpression(context, expression.path, expression.getType());
|
|
81028
81030
|
}
|
|
81029
81031
|
visitVariableExpression(_expression, _context) {
|
|
81030
|
-
throw new
|
|
81032
|
+
throw new _Common_Errors__WEBPACK_IMPORTED_MODULE_8__.NotImplementedError();
|
|
81031
81033
|
}
|
|
81032
81034
|
visitAndExpression(expression, context) {
|
|
81033
81035
|
const left = this.visit(expression.left, context);
|
|
81034
81036
|
const right = this.visit(expression.right, context);
|
|
81035
|
-
return new
|
|
81037
|
+
return new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_11__.AndBinaryExpression(left, right);
|
|
81036
81038
|
}
|
|
81037
81039
|
visitDivExpression(expression, context) {
|
|
81038
|
-
const left = (0,
|
|
81039
|
-
const right = (0,
|
|
81040
|
-
return new
|
|
81040
|
+
const left = (0,_FLang_FlangUtils__WEBPACK_IMPORTED_MODULE_12__.castOperandToDecimalIfNeed)(this.visit(expression.left, context));
|
|
81041
|
+
const right = (0,_FLang_FlangUtils__WEBPACK_IMPORTED_MODULE_12__.castOperandToDecimalIfNeed)(this.visit(expression.right, context));
|
|
81042
|
+
return new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_11__.ConditionalExpression(new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_11__.NotEqExpression(right, new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_11__.DecimalLiteralExpression(0)), new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_11__.DivisionBinaryExpression(left, right), new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_11__.NullLiteralExpression());
|
|
81041
81043
|
}
|
|
81042
81044
|
visitEqExpression(expression, context) {
|
|
81043
81045
|
const left = this.visit(expression.left, context);
|
|
81044
81046
|
const right = this.visit(expression.right, context);
|
|
81045
81047
|
|
|
81046
81048
|
// Handle decimal vs string comparison like in original converter
|
|
81047
|
-
if (left.getType() ===
|
|
81048
|
-
return new
|
|
81049
|
+
if (left.getType() === _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_11__.BuildInTypeExpression.decimal && right.getType() === _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_11__.BuildInTypeExpression.string && left instanceof _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_11__.CastExpression && left.targetExpression instanceof _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_11__.ValueReferenceExpression) {
|
|
81050
|
+
return new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_11__.EqExpression((0,_FLang_FlangUtils__WEBPACK_IMPORTED_MODULE_12__.castOperandToStringIfNeed)(left.targetExpression), right);
|
|
81049
81051
|
}
|
|
81050
|
-
return new
|
|
81052
|
+
return new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_11__.EqExpression((0,_FLang_FlangUtils__WEBPACK_IMPORTED_MODULE_12__.castOperandToStringIfNeed)(left), (0,_FLang_FlangUtils__WEBPACK_IMPORTED_MODULE_12__.castOperandToStringIfNeed)(right));
|
|
81051
81053
|
}
|
|
81052
81054
|
visitGeExpression(expression, context) {
|
|
81053
81055
|
const left = this.castOperandForComparisonExpression(this.visit(expression.left, context));
|
|
81054
81056
|
const right = this.castOperandForComparisonExpression(this.visit(expression.right, context));
|
|
81055
|
-
return new
|
|
81057
|
+
return new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_11__.GeExpression(left, right);
|
|
81056
81058
|
}
|
|
81057
81059
|
visitGtExpression(expression, context) {
|
|
81058
81060
|
const left = this.castOperandForComparisonExpression(this.visit(expression.left, context));
|
|
81059
81061
|
const right = this.castOperandForComparisonExpression(this.visit(expression.right, context));
|
|
81060
|
-
return new
|
|
81062
|
+
return new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_11__.GtExpression(left, right);
|
|
81061
81063
|
}
|
|
81062
81064
|
visitLeExpression(expression, context) {
|
|
81063
81065
|
const left = this.castOperandForComparisonExpression(this.visit(expression.left, context));
|
|
81064
81066
|
const right = this.castOperandForComparisonExpression(this.visit(expression.right, context));
|
|
81065
|
-
return new
|
|
81067
|
+
return new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_11__.LeExpression(left, right);
|
|
81066
81068
|
}
|
|
81067
81069
|
visitLtExpression(expression, context) {
|
|
81068
81070
|
const left = this.castOperandForComparisonExpression(this.visit(expression.left, context));
|
|
81069
81071
|
const right = this.castOperandForComparisonExpression(this.visit(expression.right, context));
|
|
81070
|
-
return new
|
|
81072
|
+
return new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_11__.LtExpression(left, right);
|
|
81071
81073
|
}
|
|
81072
81074
|
visitMinusExpression(expression, context) {
|
|
81073
|
-
const left = (0,
|
|
81074
|
-
const right = (0,
|
|
81075
|
-
return new
|
|
81075
|
+
const left = (0,_FLang_FlangUtils__WEBPACK_IMPORTED_MODULE_12__.castOperandToDecimalIfNeed)(this.visit(expression.left, context));
|
|
81076
|
+
const right = (0,_FLang_FlangUtils__WEBPACK_IMPORTED_MODULE_12__.castOperandToDecimalIfNeed)(this.visit(expression.right, context));
|
|
81077
|
+
return new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_11__.MinusBinaryExpression(left, right);
|
|
81076
81078
|
}
|
|
81077
81079
|
visitMultiplyExpression(expression, context) {
|
|
81078
|
-
const left = (0,
|
|
81079
|
-
const right = (0,
|
|
81080
|
-
return new
|
|
81080
|
+
const left = (0,_FLang_FlangUtils__WEBPACK_IMPORTED_MODULE_12__.castOperandToDecimalIfNeed)(this.visit(expression.left, context));
|
|
81081
|
+
const right = (0,_FLang_FlangUtils__WEBPACK_IMPORTED_MODULE_12__.castOperandToDecimalIfNeed)(this.visit(expression.right, context));
|
|
81082
|
+
return new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_11__.MultiplyBinaryExpression(left, right);
|
|
81081
81083
|
}
|
|
81082
81084
|
visitNotEqExpression(expression, context) {
|
|
81083
|
-
const left = (0,
|
|
81084
|
-
const right = (0,
|
|
81085
|
-
return new
|
|
81085
|
+
const left = (0,_FLang_FlangUtils__WEBPACK_IMPORTED_MODULE_12__.castOperandToStringIfNeed)(this.visit(expression.left, context));
|
|
81086
|
+
const right = (0,_FLang_FlangUtils__WEBPACK_IMPORTED_MODULE_12__.castOperandToStringIfNeed)(this.visit(expression.right, context));
|
|
81087
|
+
return new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_11__.NotEqExpression(left, right);
|
|
81086
81088
|
}
|
|
81087
81089
|
visitOrExpression(expression, context) {
|
|
81088
81090
|
const left = this.visit(expression.left, context);
|
|
81089
81091
|
const right = this.visit(expression.right, context);
|
|
81090
|
-
return new
|
|
81092
|
+
return new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_11__.OrBinaryExpression(left, right);
|
|
81091
81093
|
}
|
|
81092
81094
|
visitSumExpression(expression, context) {
|
|
81093
|
-
const left = (0,
|
|
81094
|
-
const right = (0,
|
|
81095
|
-
return new
|
|
81095
|
+
const left = (0,_FLang_FlangUtils__WEBPACK_IMPORTED_MODULE_12__.castOperandToDecimalIfNeed)(this.visit(expression.left, context));
|
|
81096
|
+
const right = (0,_FLang_FlangUtils__WEBPACK_IMPORTED_MODULE_12__.castOperandToDecimalIfNeed)(this.visit(expression.right, context));
|
|
81097
|
+
return new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_11__.SumBinaryExpression(left, right);
|
|
81096
81098
|
}
|
|
81097
81099
|
visitFloorFunctionCall(expression, context) {
|
|
81098
|
-
return new
|
|
81100
|
+
return new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_11__.FloorExpression((0,_FLang_FlangUtils__WEBPACK_IMPORTED_MODULE_12__.castOperandToDecimalIfNeed)(this.visit(expression.argument, context)));
|
|
81099
81101
|
}
|
|
81100
81102
|
visitAbsFunctionCall(expression, context) {
|
|
81101
|
-
return new
|
|
81103
|
+
return new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_11__.AbsExpression((0,_FLang_FlangUtils__WEBPACK_IMPORTED_MODULE_12__.castOperandToDecimalIfNeed)(this.visit(expression.argument, context)));
|
|
81102
81104
|
}
|
|
81103
81105
|
visitConcatFunctionCall(expression, context) {
|
|
81104
81106
|
const result = expression.arguments.reduce((acc, curr) => {
|
|
81105
|
-
const currExpr = (0,
|
|
81106
|
-
return acc != undefined ? new
|
|
81107
|
+
const currExpr = (0,_FLang_FlangUtils__WEBPACK_IMPORTED_MODULE_12__.castOperandToStringIfNeed)(this.visit(curr, context));
|
|
81108
|
+
return acc != undefined ? new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_11__.ConcatStringsExpression(acc, currExpr) : currExpr;
|
|
81107
81109
|
}, undefined);
|
|
81108
81110
|
if (result == undefined) {
|
|
81109
81111
|
throw new Error("ConcatFunctionCall requires at least one argument");
|
|
@@ -81114,196 +81116,197 @@ class KCLangExpressionToFlangExpressionConverter extends _common_KCLang_CodeDom_
|
|
|
81114
81116
|
return this.compiledArgumentExpression(context, expression.expr.path, expression.expr.getType(), "Count");
|
|
81115
81117
|
}
|
|
81116
81118
|
visitDateNowFunctionCall(_expression, _context) {
|
|
81117
|
-
return new
|
|
81119
|
+
return new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_11__.DateNowExpression();
|
|
81118
81120
|
}
|
|
81119
81121
|
visitDateTimeFunctionCall(expression, context) {
|
|
81120
|
-
return new
|
|
81122
|
+
return new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_11__.CastExpression(this.visit(expression.argument, context), _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_11__.BuildInTypeExpression.dateTime);
|
|
81121
81123
|
}
|
|
81122
81124
|
visitExistsFunctionCall(expression, context) {
|
|
81123
|
-
const arg = (0,
|
|
81124
|
-
return new
|
|
81125
|
+
const arg = (0,_FLang_FlangUtils__WEBPACK_IMPORTED_MODULE_12__.extractValueReferenceFromCast)(this.visit(expression.argument, context));
|
|
81126
|
+
return new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_11__.ExistsExpression(arg);
|
|
81125
81127
|
}
|
|
81126
81128
|
visitGetDateTimeTicksFunctionCall(expression, context) {
|
|
81127
81129
|
const arg = this.visit(expression.argument, context);
|
|
81128
|
-
return new
|
|
81130
|
+
return new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_11__.GetDateTimeTicksExpression(arg);
|
|
81129
81131
|
}
|
|
81130
81132
|
visitGetExternalInfoFunctionalCall(expression, context) {
|
|
81131
|
-
const
|
|
81132
|
-
|
|
81133
|
+
const combinedKeyExpr = expression.key instanceof _common_KCLang_CodeDom_StringConstExpression__WEBPACK_IMPORTED_MODULE_3__.StringConstExpression ? expression.key.value.startsWith("@settings") || expression.key.value.startsWith("@featureFlags") || expression.key.value.startsWith("@contextVars") ? expression.key : new _common_KCLang_CodeDom_StringConstExpression__WEBPACK_IMPORTED_MODULE_3__.StringConstExpression(expression.key.value + ".value") : expression.key;
|
|
81134
|
+
const keyExpr = (0,_FLang_FlangUtils__WEBPACK_IMPORTED_MODULE_12__.castOperandToStringIfNeed)(this.visit(combinedKeyExpr, context));
|
|
81135
|
+
return new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_11__.GetExternalInfoExpression(keyExpr);
|
|
81133
81136
|
}
|
|
81134
81137
|
visitGetPicklistValuesFunctionCall(expression, context) {
|
|
81135
81138
|
const filterValues = this.visit(expression.filterValues, context);
|
|
81136
81139
|
const gIdExpr = this.visit(expression.gId, context);
|
|
81137
81140
|
const filterColumns = this.visit(expression.filterColumns, context);
|
|
81138
81141
|
const resultColumn = this.visit(expression.resultColumn, context);
|
|
81139
|
-
return new
|
|
81142
|
+
return new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_11__.GetPicklistValuesExpression(gIdExpr, filterColumns, filterValues, resultColumn);
|
|
81140
81143
|
}
|
|
81141
81144
|
visitGetPropertyFunctionCall(_expression, _context) {
|
|
81142
81145
|
// Property access - return empty string for now
|
|
81143
|
-
return new
|
|
81146
|
+
return new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_11__.StringLiteralExpression("");
|
|
81144
81147
|
}
|
|
81145
81148
|
visitGroupCountFunctionCall(_expression, _context) {
|
|
81146
|
-
throw new
|
|
81149
|
+
throw new _Common_Errors__WEBPACK_IMPORTED_MODULE_8__.NotImplementedError();
|
|
81147
81150
|
}
|
|
81148
81151
|
visitGroupSumFunctionCall(_expression, _context) {
|
|
81149
|
-
throw new
|
|
81152
|
+
throw new _Common_Errors__WEBPACK_IMPORTED_MODULE_8__.NotImplementedError();
|
|
81150
81153
|
}
|
|
81151
81154
|
visitIsEqualToAutoCalculatedFunctionCall(expression, context) {
|
|
81152
81155
|
const type = expression.expr.getType();
|
|
81153
|
-
const path = expression.expr instanceof
|
|
81156
|
+
const path = expression.expr instanceof _common_KCLang_CodeDom_ValueReferenceExpression__WEBPACK_IMPORTED_MODULE_4__.ValueReferenceExpression ? expression.expr.path : expression.expr instanceof _common_KCLang_CodeDom_CastExpression__WEBPACK_IMPORTED_MODULE_2__.CastExpression && expression.expr.operand instanceof _common_KCLang_CodeDom_ValueReferenceExpression__WEBPACK_IMPORTED_MODULE_4__.ValueReferenceExpression ? expression.expr.operand.path : (0,_Common_TypingUtils__WEBPACK_IMPORTED_MODULE_7__.reject)("IsEqualToAutoCalculatedFunctionCall: unsupported argument");
|
|
81154
81157
|
return this.compileIsEqualToAutoCalculatedExpression(context, path, type);
|
|
81155
81158
|
}
|
|
81156
81159
|
visitIsInnFunctionCall(expression, context) {
|
|
81157
81160
|
const arg = this.visit(expression.argument, context);
|
|
81158
|
-
return new
|
|
81161
|
+
return new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_11__.IsInnExpression((0,_FLang_FlangUtils__WEBPACK_IMPORTED_MODULE_12__.extractOriginalStringValueOrCastToStringIfNeeded)(arg));
|
|
81159
81162
|
}
|
|
81160
81163
|
visitIsNullFunctionCall(expression, context) {
|
|
81161
81164
|
const arg = this.visit(expression.argument, context);
|
|
81162
|
-
return new
|
|
81165
|
+
return new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_11__.EqExpression(arg, new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_11__.NullLiteralExpression());
|
|
81163
81166
|
}
|
|
81164
81167
|
visitIsSnilsFunctionCall(expression, context) {
|
|
81165
81168
|
const arg = this.visit(expression.argument, context);
|
|
81166
|
-
return new
|
|
81169
|
+
return new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_11__.IsSnilsExpression((0,_FLang_FlangUtils__WEBPACK_IMPORTED_MODULE_12__.extractOriginalStringValueOrCastToStringIfNeeded)(arg));
|
|
81167
81170
|
}
|
|
81168
81171
|
visitIsValidAccountNumberFunctionCall(expression, context) {
|
|
81169
81172
|
const bik = this.visit(expression.bik, context);
|
|
81170
81173
|
const account = this.visit(expression.account, context);
|
|
81171
|
-
return new
|
|
81174
|
+
return new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_11__.IsValidAccountNumberExpression((0,_FLang_FlangUtils__WEBPACK_IMPORTED_MODULE_12__.extractOriginalStringValueOrCastToStringIfNeeded)(bik), (0,_FLang_FlangUtils__WEBPACK_IMPORTED_MODULE_12__.extractOriginalStringValueOrCastToStringIfNeeded)(account));
|
|
81172
81175
|
}
|
|
81173
81176
|
visitIsValidMirCardNumberFunctionCall(expression, context) {
|
|
81174
81177
|
const arg = this.visit(expression.expr, context);
|
|
81175
|
-
return new
|
|
81178
|
+
return new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_11__.IsValidMirCardNumberExpression((0,_FLang_FlangUtils__WEBPACK_IMPORTED_MODULE_12__.extractOriginalStringValueOrCastToStringIfNeeded)(arg));
|
|
81176
81179
|
}
|
|
81177
81180
|
visitJoinFunctionCall(expression, context) {
|
|
81178
|
-
return new
|
|
81181
|
+
return new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_11__.JoinExpression(this.visit(expression.expr, context), new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_11__.StringLiteralExpression(""));
|
|
81179
81182
|
}
|
|
81180
81183
|
visitLengthFunctionCall(expression, context) {
|
|
81181
|
-
return new
|
|
81184
|
+
return new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_11__.LenExpression((0,_FLang_FlangUtils__WEBPACK_IMPORTED_MODULE_12__.castOperandToStringIfNeed)(this.visit(expression.argument, context)));
|
|
81182
81185
|
}
|
|
81183
81186
|
visitNewlineFunctionCall(_expression, _context) {
|
|
81184
|
-
return new
|
|
81187
|
+
return new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_11__.StringLiteralExpression("\\r\\n");
|
|
81185
81188
|
}
|
|
81186
81189
|
visitRegexMatchFunctionCall(expression, context) {
|
|
81187
81190
|
const arg = this.visit(expression.argument, context);
|
|
81188
|
-
const correctedArg = (0,
|
|
81191
|
+
const correctedArg = (0,_FLang_FlangUtils__WEBPACK_IMPORTED_MODULE_12__.tryExtractValueReferenceAsStringFromDecimal)(arg);
|
|
81189
81192
|
const pattern = this.visit(expression.patternExpression, context);
|
|
81190
|
-
return new
|
|
81193
|
+
return new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_11__.RegexMatchExpression((0,_FLang_FlangUtils__WEBPACK_IMPORTED_MODULE_12__.castOperandToStringIfNeed)(correctedArg), (0,_FLang_FlangUtils__WEBPACK_IMPORTED_MODULE_12__.castOperandToStringIfNeed)(pattern));
|
|
81191
81194
|
}
|
|
81192
81195
|
visitRoundFunctionCall(expression, context) {
|
|
81193
|
-
const fractionalDigitsValue = expression.fractionalDigits ? this.visit(expression.fractionalDigits, context) : new
|
|
81194
|
-
return new
|
|
81196
|
+
const fractionalDigitsValue = expression.fractionalDigits ? this.visit(expression.fractionalDigits, context) : new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_11__.DecimalLiteralExpression(0);
|
|
81197
|
+
return new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_11__.RoundExpression((0,_FLang_FlangUtils__WEBPACK_IMPORTED_MODULE_12__.castOperandToDecimalIfNeed)(this.visit(expression.argument, context)), (0,_FLang_FlangUtils__WEBPACK_IMPORTED_MODULE_12__.castOperandToDecimalIfNeed)(fractionalDigitsValue));
|
|
81195
81198
|
}
|
|
81196
81199
|
visitSubstringFunctionCall(expression, context) {
|
|
81197
81200
|
const arg = this.visit(expression.argument, context);
|
|
81198
|
-
const argAsString = (0,
|
|
81201
|
+
const argAsString = (0,_FLang_FlangUtils__WEBPACK_IMPORTED_MODULE_12__.castOperandToStringIfNeed)(arg, arg.getType() === _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_11__.BuildInTypeExpression.decimal ? "G29" : undefined);
|
|
81199
81202
|
const startValue = this.visit(expression.start, context);
|
|
81200
|
-
const lengthValue = expression.length ? this.visit(expression.length, context) : new
|
|
81201
|
-
return new
|
|
81203
|
+
const lengthValue = expression.length ? this.visit(expression.length, context) : new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_11__.DecimalLiteralExpression(0);
|
|
81204
|
+
return new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_11__.SubstringExpression(argAsString, (0,_FLang_FlangUtils__WEBPACK_IMPORTED_MODULE_12__.castOperandToDecimalIfNeed)(startValue), (0,_FLang_FlangUtils__WEBPACK_IMPORTED_MODULE_12__.castOperandToDecimalIfNeed)(lengthValue));
|
|
81202
81205
|
}
|
|
81203
81206
|
visitSumFunctionCall(expression, context) {
|
|
81204
81207
|
return this.compiledArgumentExpression(context, expression.expr.path, expression.expr.getType(), "Sum");
|
|
81205
81208
|
}
|
|
81206
81209
|
visitXabsFunctionCall(expression, context) {
|
|
81207
|
-
const expr = (0,
|
|
81208
|
-
return new
|
|
81210
|
+
const expr = (0,_FLang_FlangUtils__WEBPACK_IMPORTED_MODULE_12__.castOperandToDecimalIfNeed)(this.visit(expression.argument, context));
|
|
81211
|
+
return new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_11__.ConditionalExpression(new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_11__.LtExpression((0,_FLang_FlangUtils__WEBPACK_IMPORTED_MODULE_12__.castOperandToDecimalIfNeed)(expr), new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_11__.DecimalLiteralExpression(0)), new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_11__.DecimalLiteralExpression(0), new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_11__.AbsExpression(expr));
|
|
81209
81212
|
}
|
|
81210
81213
|
visitIsRegNumSfrFunctionCall(expression, context) {
|
|
81211
81214
|
const arg = this.visit(expression.argument, context);
|
|
81212
|
-
return new
|
|
81215
|
+
return new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_11__.IsRegNumSfrExpression((0,_FLang_FlangUtils__WEBPACK_IMPORTED_MODULE_12__.extractOriginalStringValueOrCastToStringIfNeeded)(arg));
|
|
81213
81216
|
}
|
|
81214
81217
|
visitIsOgrnFunctionCall(expression, context) {
|
|
81215
81218
|
const arg = this.visit(expression.argument, context);
|
|
81216
|
-
return new
|
|
81219
|
+
return new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_11__.IsOgrnExpression((0,_FLang_FlangUtils__WEBPACK_IMPORTED_MODULE_12__.extractOriginalStringValueOrCastToStringIfNeeded)(arg));
|
|
81217
81220
|
}
|
|
81218
81221
|
visitFirstOrDefaultFunctionCall(expression, context) {
|
|
81219
81222
|
const firstOrDefaultExpression = this.visit(expression.expr, context);
|
|
81220
|
-
return new
|
|
81223
|
+
return new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_11__.FirstOrDefaultExpression(firstOrDefaultExpression);
|
|
81221
81224
|
}
|
|
81222
81225
|
visitNodepsFunctionCall(expression, context) {
|
|
81223
81226
|
const noDepsExpression = this.visit(expression.expr, context);
|
|
81224
|
-
return (0,
|
|
81227
|
+
return (0,_FLang_FlangUtils__WEBPACK_IMPORTED_MODULE_12__.makeNoDeps)(noDepsExpression);
|
|
81225
81228
|
}
|
|
81226
81229
|
visitHashSetFunctionCall(expression, context) {
|
|
81227
81230
|
const hashSetExpression = this.visit(expression.expr, context);
|
|
81228
|
-
return new
|
|
81231
|
+
return new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_11__.HashSetExpression(hashSetExpression);
|
|
81229
81232
|
}
|
|
81230
81233
|
visitArrayFunctionCall(expression, context) {
|
|
81231
81234
|
const items = expression.expressions.map(arg => this.visit(arg, context));
|
|
81232
|
-
return new
|
|
81235
|
+
return new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_11__.ArrayExpression(items);
|
|
81233
81236
|
}
|
|
81234
81237
|
visitInstanceCountFunctionCall(expression, context) {
|
|
81235
81238
|
const selectPath = expression.expr.path.toString();
|
|
81236
81239
|
const adjustedSelectPath = this.preparePathAndAdjustMultiplicity(context.prefix, selectPath).trimLastStarIfLastToken();
|
|
81237
|
-
const splitInfo = (0,
|
|
81240
|
+
const splitInfo = (0,_Common_ModelPath_PathSplitHelper__WEBPACK_IMPORTED_MODULE_6__.getMatchedAndDifferentModelPaths)(context.target.path, adjustedSelectPath);
|
|
81238
81241
|
if (!splitInfo.differentPath.isContainIteration()) {
|
|
81239
81242
|
const countOfChildTarget = adjustedSelectPath.joinWith("InstanceCount");
|
|
81240
|
-
const countOfChildTargetValueRef = new
|
|
81241
|
-
const countOfChildExpression = (0,
|
|
81242
|
-
const requiredStatement = new
|
|
81243
|
+
const countOfChildTargetValueRef = new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_11__.ValueReferenceExpression(countOfChildTarget, "value");
|
|
81244
|
+
const countOfChildExpression = (0,_FLang_FlangUtils__WEBPACK_IMPORTED_MODULE_12__.castOperandToStringIfNeed)(new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_11__.NullCoalesceExpression(new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_11__.ArrayLengthExpression(new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_11__.DeserializeEnumerationExpression([(0,_FLang_FlangUtils__WEBPACK_IMPORTED_MODULE_12__.makeStringValueReference)(adjustedSelectPath.toCurrentIteration().normalize(), "children")], new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_11__.BoolLiteralExpression(true))), new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_11__.DecimalLiteralExpression(0)));
|
|
81245
|
+
const requiredStatement = new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_11__.SetStatement(countOfChildTargetValueRef, countOfChildExpression);
|
|
81243
81246
|
context.addPrecalculationRule(requiredStatement);
|
|
81244
|
-
const resultExpression = (0,
|
|
81247
|
+
const resultExpression = (0,_FLang_FlangUtils__WEBPACK_IMPORTED_MODULE_12__.castOperandToDecimalIfNeed)(new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_11__.ValueReferenceExpression(countOfChildTarget.toCurrentIteration(), "value"));
|
|
81245
81248
|
return resultExpression;
|
|
81246
81249
|
} else {
|
|
81247
81250
|
throw new Error(`Instance count with nested multiplicity is not supported: target: ${context.target.path}, select path: ${selectPath}}`);
|
|
81248
81251
|
}
|
|
81249
81252
|
}
|
|
81250
81253
|
visitGetDaysInMonthFunctionCall(expression, context) {
|
|
81251
|
-
return new
|
|
81254
|
+
return new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_11__.GetDaysInMonthExpression((0,_FLang_FlangUtils__WEBPACK_IMPORTED_MODULE_12__.castOperandToDateTimeIfNeed)(this.visit(expression.dateExpr, context)));
|
|
81252
81255
|
}
|
|
81253
81256
|
visitGetDayFunctionCall(expression, context) {
|
|
81254
|
-
return new
|
|
81257
|
+
return new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_11__.GetDayExpression((0,_FLang_FlangUtils__WEBPACK_IMPORTED_MODULE_12__.castOperandToDateTimeIfNeed)(this.visit(expression.dateExpr, context)));
|
|
81255
81258
|
}
|
|
81256
81259
|
visitGetMonthFunctionCall(expression, context) {
|
|
81257
|
-
return new
|
|
81260
|
+
return new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_11__.GetMonthExpression((0,_FLang_FlangUtils__WEBPACK_IMPORTED_MODULE_12__.castOperandToDateTimeIfNeed)(this.visit(expression.dateExpr, context)));
|
|
81258
81261
|
}
|
|
81259
81262
|
visitGetYearFunctionCall(expression, context) {
|
|
81260
|
-
return new
|
|
81263
|
+
return new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_11__.GetYearExpression((0,_FLang_FlangUtils__WEBPACK_IMPORTED_MODULE_12__.castOperandToDateTimeIfNeed)(this.visit(expression.dateExpr, context)));
|
|
81261
81264
|
}
|
|
81262
81265
|
visitIsDateFunctionCall(expression, context) {
|
|
81263
|
-
return new
|
|
81266
|
+
return new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_11__.IsDateExpression((0,_FLang_FlangUtils__WEBPACK_IMPORTED_MODULE_12__.castOperandToStringIfNeed)(this.visit(expression.expr, context)));
|
|
81264
81267
|
}
|
|
81265
81268
|
visitDifferenceInMonthsFunctionCall(expression, context) {
|
|
81266
|
-
const expressions = [expression.startDate, expression.endDate].map(x => (0,
|
|
81267
|
-
return new
|
|
81269
|
+
const expressions = [expression.startDate, expression.endDate].map(x => (0,_FLang_FlangUtils__WEBPACK_IMPORTED_MODULE_12__.castOperandToDateTimeIfNeed)(this.visit(x, context)));
|
|
81270
|
+
return new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_11__.DifferenceInMonthsExpression(expressions);
|
|
81268
81271
|
}
|
|
81269
81272
|
visitDifferenceInDaysFunctionCall(expression, context) {
|
|
81270
|
-
const expressions = [expression.startDate, expression.endDate].map(x => (0,
|
|
81271
|
-
return new
|
|
81273
|
+
const expressions = [expression.startDate, expression.endDate].map(x => (0,_FLang_FlangUtils__WEBPACK_IMPORTED_MODULE_12__.castOperandToDateTimeIfNeed)(this.visit(x, context)));
|
|
81274
|
+
return new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_11__.DifferenceInDaysExpression(expressions);
|
|
81272
81275
|
}
|
|
81273
81276
|
visitSumOfDayWeightsFunctionCall(expression, context) {
|
|
81274
|
-
const expressions = [expression.startDate, expression.endDate].map(x => (0,
|
|
81275
|
-
return new
|
|
81277
|
+
const expressions = [expression.startDate, expression.endDate].map(x => (0,_FLang_FlangUtils__WEBPACK_IMPORTED_MODULE_12__.castOperandToDateTimeIfNeed)(this.visit(x, context)));
|
|
81278
|
+
return new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_11__.SumOfDayWeightsExpression(expressions);
|
|
81276
81279
|
}
|
|
81277
81280
|
visitAddDaysFunctionCall(expression, context) {
|
|
81278
|
-
return new
|
|
81281
|
+
return new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_11__.AddDaysExpression((0,_FLang_FlangUtils__WEBPACK_IMPORTED_MODULE_12__.castOperandToDateTimeIfNeed)(this.visit(expression.dateExpression, context)), (0,_FLang_FlangUtils__WEBPACK_IMPORTED_MODULE_12__.castOperandToDecimalIfNeed)(this.visit(expression.daysExpression, context)));
|
|
81279
81282
|
}
|
|
81280
81283
|
visitAddMonthsFunctionCall(expression, context) {
|
|
81281
|
-
return new
|
|
81284
|
+
return new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_11__.AddMonthsExpression((0,_FLang_FlangUtils__WEBPACK_IMPORTED_MODULE_12__.castOperandToDateTimeIfNeed)(this.visit(expression.dateExpression, context)), (0,_FLang_FlangUtils__WEBPACK_IMPORTED_MODULE_12__.castOperandToDecimalIfNeed)(this.visit(expression.monthsExpression, context)));
|
|
81282
81285
|
}
|
|
81283
81286
|
visitAddYearsFunctionCall(expression, context) {
|
|
81284
|
-
return new
|
|
81287
|
+
return new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_11__.AddYearsExpression((0,_FLang_FlangUtils__WEBPACK_IMPORTED_MODULE_12__.castOperandToDateTimeIfNeed)(this.visit(expression.dateExpression, context)), (0,_FLang_FlangUtils__WEBPACK_IMPORTED_MODULE_12__.castOperandToDecimalIfNeed)(this.visit(expression.yearsExpression, context)));
|
|
81285
81288
|
}
|
|
81286
81289
|
visitDateToStringFunctionCall(expression, context) {
|
|
81287
|
-
const formatValue = expression.format ? this.visit(expression.format, context) : new
|
|
81288
|
-
return new
|
|
81290
|
+
const formatValue = expression.format ? this.visit(expression.format, context) : new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_11__.StringLiteralExpression("dd.MM.yyyy");
|
|
81291
|
+
return new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_11__.DateToStringExpression((0,_FLang_FlangUtils__WEBPACK_IMPORTED_MODULE_12__.castOperandToDateTimeIfNeed)(this.visit(expression.dateExpression, context)), (0,_FLang_FlangUtils__WEBPACK_IMPORTED_MODULE_12__.castOperandToStringIfNeed)(formatValue));
|
|
81289
81292
|
}
|
|
81290
81293
|
visitHasAutoFlagFunctionCall(expression, context) {
|
|
81291
|
-
const arg = (0,
|
|
81294
|
+
const arg = (0,_FLang_FlangUtils__WEBPACK_IMPORTED_MODULE_12__.castOperandToStringIfNeed)(this.visit(expression.expr, context));
|
|
81292
81295
|
const getValueReferenceExpression = () => {
|
|
81293
|
-
if (arg instanceof
|
|
81296
|
+
if (arg instanceof _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_11__.ValueReferenceExpression) {
|
|
81294
81297
|
return arg;
|
|
81295
81298
|
}
|
|
81296
|
-
if (arg instanceof
|
|
81299
|
+
if (arg instanceof _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_11__.CastExpression && arg.targetExpression instanceof _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_11__.ValueReferenceExpression) {
|
|
81297
81300
|
return arg.targetExpression;
|
|
81298
81301
|
}
|
|
81299
|
-
return (0,
|
|
81302
|
+
return (0,_Common_TypingUtils__WEBPACK_IMPORTED_MODULE_7__.reject)("hasAutoFlag supports only Argument expression (ValueReferenceExpression) as parameter.");
|
|
81300
81303
|
};
|
|
81301
81304
|
const valueRefExpression = getValueReferenceExpression();
|
|
81302
|
-
const expr = new
|
|
81305
|
+
const expr = new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_11__.OrBinaryExpression(new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_11__.EqExpression((0,_FLang_FlangUtils__WEBPACK_IMPORTED_MODULE_12__.makeNoDeps)(new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_11__.ValueReferenceExpression(valueRefExpression.modePath, "value")), new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_11__.NullLiteralExpression()), new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_11__.EqExpression((0,_FLang_FlangUtils__WEBPACK_IMPORTED_MODULE_12__.makeNoDeps)((0,_FLang_FlangUtils__WEBPACK_IMPORTED_MODULE_12__.makeStringValueReference)(valueRefExpression.modePath, "autoFlag")), new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_11__.StringLiteralExpression("true")));
|
|
81303
81306
|
return expr;
|
|
81304
81307
|
}
|
|
81305
81308
|
visitMakeDictFunctionCall(_expression, _context) {
|
|
81306
|
-
throw new
|
|
81309
|
+
throw new _Common_Errors__WEBPACK_IMPORTED_MODULE_8__.NotImplementedError();
|
|
81307
81310
|
}
|
|
81308
81311
|
visitGetSumByKeysFunctionCall(expression, context) {
|
|
81309
81312
|
const dictPath = this.preparePathAndAdjustMultiplicity(context.prefix, expression.dictPath.path.toString());
|
|
@@ -81311,47 +81314,47 @@ class KCLangExpressionToFlangExpressionConverter extends _common_KCLang_CodeDom_
|
|
|
81311
81314
|
return this.compileGetSumByKeysExpressionImpl(dictPath, targetKeysExpression);
|
|
81312
81315
|
}
|
|
81313
81316
|
visitNumeratorFunctionCall(expression, context) {
|
|
81314
|
-
return new
|
|
81317
|
+
return new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_11__.NumerationExpression((0,_FLang_FlangUtils__WEBPACK_IMPORTED_MODULE_12__.castOperandToStringIfNeed)(this.visit(expression.argument, context)));
|
|
81315
81318
|
}
|
|
81316
81319
|
visitDenominatorFunctionCall(expression, context) {
|
|
81317
|
-
return new
|
|
81320
|
+
return new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_11__.DenominatorExpression((0,_FLang_FlangUtils__WEBPACK_IMPORTED_MODULE_12__.castOperandToStringIfNeed)(this.visit(expression.argument, context)));
|
|
81318
81321
|
}
|
|
81319
81322
|
convertKCLangTypeToFLangType(type) {
|
|
81320
81323
|
if (type instanceof _common_KCLang_CodeDom_KCLangType__WEBPACK_IMPORTED_MODULE_1__.DecimalType) {
|
|
81321
|
-
return
|
|
81324
|
+
return _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_11__.BuildInTypeExpression.decimal;
|
|
81322
81325
|
}
|
|
81323
81326
|
if (type instanceof _common_KCLang_CodeDom_KCLangType__WEBPACK_IMPORTED_MODULE_1__.StringType) {
|
|
81324
|
-
return
|
|
81327
|
+
return _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_11__.BuildInTypeExpression.string;
|
|
81325
81328
|
}
|
|
81326
81329
|
if (type instanceof _common_KCLang_CodeDom_KCLangType__WEBPACK_IMPORTED_MODULE_1__.BoolType) {
|
|
81327
|
-
return
|
|
81330
|
+
return _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_11__.BuildInTypeExpression.bool;
|
|
81328
81331
|
}
|
|
81329
81332
|
if (type instanceof _common_KCLang_CodeDom_KCLangType__WEBPACK_IMPORTED_MODULE_1__.DateType) {
|
|
81330
|
-
return
|
|
81333
|
+
return _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_11__.BuildInTypeExpression.dateTime;
|
|
81331
81334
|
}
|
|
81332
81335
|
if (type instanceof _common_KCLang_CodeDom_KCLangType__WEBPACK_IMPORTED_MODULE_1__.ArrayType) {
|
|
81333
|
-
return
|
|
81336
|
+
return _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_11__.BuildInTypeExpression.array;
|
|
81334
81337
|
}
|
|
81335
81338
|
if (type instanceof _common_KCLang_CodeDom_KCLangType__WEBPACK_IMPORTED_MODULE_1__.StringArrayType) {
|
|
81336
|
-
return
|
|
81339
|
+
return _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_11__.BuildInTypeExpression.array;
|
|
81337
81340
|
}
|
|
81338
81341
|
if (type instanceof _common_KCLang_CodeDom_KCLangType__WEBPACK_IMPORTED_MODULE_1__.StringHashSetType) {
|
|
81339
|
-
return
|
|
81342
|
+
return _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_11__.BuildInTypeExpression.hashSet;
|
|
81340
81343
|
}
|
|
81341
81344
|
if (type instanceof _common_KCLang_CodeDom_KCLangType__WEBPACK_IMPORTED_MODULE_1__.StringDictType) {
|
|
81342
|
-
return
|
|
81345
|
+
return _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_11__.BuildInTypeExpression.dict;
|
|
81343
81346
|
}
|
|
81344
|
-
return
|
|
81347
|
+
return _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_11__.BuildInTypeExpression.string;
|
|
81345
81348
|
}
|
|
81346
81349
|
castOperandForComparisonExpression(flangExpression) {
|
|
81347
|
-
return (0,
|
|
81350
|
+
return (0,_FLang_FlangUtils__WEBPACK_IMPORTED_MODULE_12__.castOperandToDecimalIfNeed)(flangExpression);
|
|
81348
81351
|
}
|
|
81349
81352
|
preparePathAndAdjustMultiplicity(prefix, path) {
|
|
81350
|
-
const resultPath = this.adjustPathMultiplicity(prefix.joinWith((0,
|
|
81353
|
+
const resultPath = this.adjustPathMultiplicity(prefix.joinWith((0,_Common_ModelPath_ModelPath__WEBPACK_IMPORTED_MODULE_5__.createModelPath)(path.replace(/\\@/g, ""), "auto")).normalize());
|
|
81351
81354
|
return resultPath;
|
|
81352
81355
|
}
|
|
81353
81356
|
compileGetSumByKeysExpressionImpl(dictPath, targetKeys) {
|
|
81354
|
-
const finalValueExpression = new
|
|
81357
|
+
const finalValueExpression = new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_11__.GetSumByKeysExpression(new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_11__.DictLiteralExpression(new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_11__.ValueReferenceExpression(dictPath, "value")), targetKeys);
|
|
81355
81358
|
return finalValueExpression;
|
|
81356
81359
|
}
|
|
81357
81360
|
compiledArgumentExpression(context, selectPath, selectType, aggregationFunction = "Sum") {
|
|
@@ -81361,47 +81364,47 @@ class KCLangExpressionToFlangExpressionConverter extends _common_KCLang_CodeDom_
|
|
|
81361
81364
|
const builtInType = this.convertKCLangTypeToFLangType(selectType !== null && selectType !== void 0 ? selectType : "string");
|
|
81362
81365
|
const adjustedSelectPath = this.preparePathAndAdjustMultiplicity(prefix, selectPath.toString());
|
|
81363
81366
|
const isSelectEqualsTarget = target.path.isEquals(adjustedSelectPath);
|
|
81364
|
-
const splitInfo = (0,
|
|
81367
|
+
const splitInfo = (0,_Common_ModelPath_PathSplitHelper__WEBPACK_IMPORTED_MODULE_6__.getMatchedAndDifferentModelPaths)(target.path, adjustedSelectPath);
|
|
81365
81368
|
const baseSelectPath = splitInfo.matchedPath;
|
|
81366
81369
|
if (!splitInfo.differentPath.isContainIteration()) {
|
|
81367
|
-
const valueRefExpression = new
|
|
81368
|
-
const finalValue = isSelectEqualsTarget && target.field === "value" ? (0,
|
|
81369
|
-
return (0,
|
|
81370
|
+
const valueRefExpression = new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_11__.ValueReferenceExpression(adjustedSelectPath.toCurrentIteration().normalize(), "value");
|
|
81371
|
+
const finalValue = isSelectEqualsTarget && target.field === "value" ? (0,_FLang_FlangUtils__WEBPACK_IMPORTED_MODULE_12__.makeNoDeps)(valueRefExpression) : valueRefExpression;
|
|
81372
|
+
return (0,_FLang_FlangUtils__WEBPACK_IMPORTED_MODULE_12__.castOperandIfNeed)(finalValue, builtInType);
|
|
81370
81373
|
} else {
|
|
81371
81374
|
var _countValueExpression;
|
|
81372
|
-
let resultValueExpression = (0,
|
|
81375
|
+
let resultValueExpression = (0,_FLang_FlangUtils__WEBPACK_IMPORTED_MODULE_12__.makeStringValueReference)(adjustedSelectPath.toCurrentIteration().normalize(), "value");
|
|
81373
81376
|
let countValueExpression = undefined;
|
|
81374
|
-
const iterationEntries = [...(0,
|
|
81377
|
+
const iterationEntries = [...(0,_Common_IterableUtils__WEBPACK_IMPORTED_MODULE_9__.reverseArray)((0,_Common_ModelPath_BuildIterationSequence__WEBPACK_IMPORTED_MODULE_10__.buildIterationSequence)(splitInfo.differentPath))];
|
|
81375
81378
|
for (const iterationEntry of iterationEntries) {
|
|
81376
|
-
const iterablePath = baseSelectPath.joinWith((0,
|
|
81377
|
-
const suffixWithoutMultiple = iterationEntry.suffix.getPathPartsAsArray().filter(x =>
|
|
81378
|
-
const nextResultValueExpression = new
|
|
81379
|
-
const currentSumExpression = (0,
|
|
81380
|
-
const countResultValueExpression = new
|
|
81381
|
-
const currenCountExpression = (0,
|
|
81382
|
-
const sumReduceExpr = new
|
|
81383
|
-
addPrecalculationRule(new
|
|
81384
|
-
const countReduceExpr = new
|
|
81385
|
-
addPrecalculationRule(new
|
|
81379
|
+
const iterablePath = baseSelectPath.joinWith((0,_Common_ModelPath_ModelPath__WEBPACK_IMPORTED_MODULE_5__.createRelativeFromTokens)(iterationEntry.iterable.getPathPartsAsArray()));
|
|
81380
|
+
const suffixWithoutMultiple = iterationEntry.suffix.getPathPartsAsArray().filter(x => _Common_ModelPath_ModelPath__WEBPACK_IMPORTED_MODULE_5__.PathTokens.isSimpleToken(x));
|
|
81381
|
+
const nextResultValueExpression = new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_11__.ValueReferenceExpression(iterablePath.joinWith((0,_Common_ModelPath_ModelPath__WEBPACK_IMPORTED_MODULE_5__.createRelativeFromTokens)(suffixWithoutMultiple)).joinWith("Sum").normalize(), "value");
|
|
81382
|
+
const currentSumExpression = (0,_FLang_FlangUtils__WEBPACK_IMPORTED_MODULE_12__.makeStringValueReference)(iterablePath.joinWith((0,_Common_ModelPath_ModelPath__WEBPACK_IMPORTED_MODULE_5__.createRelativeFromTokens)(suffixWithoutMultiple)).joinWith("Sum").toCurrentIteration().normalize(), "value");
|
|
81383
|
+
const countResultValueExpression = new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_11__.ValueReferenceExpression(iterablePath.joinWith((0,_Common_ModelPath_ModelPath__WEBPACK_IMPORTED_MODULE_5__.createRelativeFromTokens)(suffixWithoutMultiple)).joinWith("Count").normalize(), "value");
|
|
81384
|
+
const currenCountExpression = (0,_FLang_FlangUtils__WEBPACK_IMPORTED_MODULE_12__.makeStringValueReference)(iterablePath.joinWith((0,_Common_ModelPath_ModelPath__WEBPACK_IMPORTED_MODULE_5__.createRelativeFromTokens)(suffixWithoutMultiple)).joinWith("Count").toCurrentIteration().normalize(), "value");
|
|
81385
|
+
const sumReduceExpr = new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_11__.ReduceCallExpression(iterablePath.toCurrentIteration(), new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_11__.AnonymousFunctionDeclarationExpression(_FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_11__.BuildInTypeExpression.decimal, [new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_11__.ArgumentDeclarationExpression("result", _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_11__.BuildInTypeExpression.decimal)], new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_11__.ConditionalExpression(new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_11__.OrBinaryExpression(new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_11__.NotEqExpression(new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_11__.ArgumentReferenceExpression("result"), new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_11__.NullLiteralExpression()), new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_11__.NotEqExpression(new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_11__.CastExpression(resultValueExpression, _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_11__.BuildInTypeExpression.decimal), new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_11__.NullLiteralExpression())), new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_11__.MinusBinaryExpression(new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_11__.SumBinaryExpression(new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_11__.NullCoalesceExpression(new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_11__.ArgumentReferenceExpression("result"), new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_11__.DecimalLiteralExpression(0)), new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_11__.CastExpression(resultValueExpression, _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_11__.BuildInTypeExpression.decimal, new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_11__.DecimalLiteralExpression(0))), new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_11__.ConditionalExpression(new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_11__.IncrementalFlagExpression(), new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_11__.CastExpression((0,_FLang_FlangUtils__WEBPACK_IMPORTED_MODULE_12__.makeGetOld)(resultValueExpression), _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_11__.BuildInTypeExpression.decimal, new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_11__.DecimalLiteralExpression(0)), new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_11__.DecimalLiteralExpression(0))), new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_11__.NullLiteralExpression())), new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_11__.ConditionalExpression(new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_11__.IncrementalFlagExpression(), (0,_FLang_FlangUtils__WEBPACK_IMPORTED_MODULE_12__.castOperandToDecimalIfNeed)((0,_FLang_FlangUtils__WEBPACK_IMPORTED_MODULE_12__.makeNoDeps)((0,_FLang_FlangUtils__WEBPACK_IMPORTED_MODULE_12__.makeStringValueReference)(nextResultValueExpression.modePath.toCurrentIteration(), nextResultValueExpression.valueName))), (0,_FLang_FlangUtils__WEBPACK_IMPORTED_MODULE_12__.castOperandToDecimalIfNeed)(new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_11__.NullLiteralExpression())));
|
|
81386
|
+
addPrecalculationRule(new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_11__.SetStatement(nextResultValueExpression, new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_11__.NullCoalesceExpression(new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_11__.CastExpression(sumReduceExpr, _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_11__.BuildInTypeExpression.string, new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_11__.StringLiteralExpression("G29")), new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_11__.StringLiteralExpression(""))));
|
|
81387
|
+
const countReduceExpr = new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_11__.ReduceCallExpression(iterablePath.toCurrentIteration(), new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_11__.AnonymousFunctionDeclarationExpression(_FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_11__.BuildInTypeExpression.decimal, [new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_11__.ArgumentDeclarationExpression("result", _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_11__.BuildInTypeExpression.decimal)], new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_11__.MinusBinaryExpression(new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_11__.SumBinaryExpression(new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_11__.NullCoalesceExpression(new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_11__.ArgumentReferenceExpression("result"), new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_11__.DecimalLiteralExpression(0)), countValueExpression == undefined ? new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_11__.ConditionalExpression(new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_11__.AndBinaryExpression(new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_11__.NotEqExpression(resultValueExpression, new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_11__.StringLiteralExpression("")), new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_11__.NotEqExpression(resultValueExpression, new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_11__.NullLiteralExpression())), new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_11__.DecimalLiteralExpression(1), new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_11__.DecimalLiteralExpression(0)) : new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_11__.CastExpression(countValueExpression, _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_11__.BuildInTypeExpression.decimal, new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_11__.DecimalLiteralExpression(0))), new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_11__.ConditionalExpression(new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_11__.IncrementalFlagExpression(), countValueExpression == undefined ? new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_11__.ConditionalExpression(new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_11__.AndBinaryExpression(new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_11__.NotEqExpression((0,_FLang_FlangUtils__WEBPACK_IMPORTED_MODULE_12__.makeGetOld)(resultValueExpression), new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_11__.StringLiteralExpression("")), new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_11__.NotEqExpression((0,_FLang_FlangUtils__WEBPACK_IMPORTED_MODULE_12__.makeGetOld)(resultValueExpression), new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_11__.NullLiteralExpression())), new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_11__.DecimalLiteralExpression(1), new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_11__.DecimalLiteralExpression(0)) : new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_11__.CastExpression((0,_FLang_FlangUtils__WEBPACK_IMPORTED_MODULE_12__.makeGetOld)(countValueExpression), _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_11__.BuildInTypeExpression.decimal, new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_11__.DecimalLiteralExpression(0)), new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_11__.DecimalLiteralExpression(0)))), new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_11__.ConditionalExpression(new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_11__.IncrementalFlagExpression(), (0,_FLang_FlangUtils__WEBPACK_IMPORTED_MODULE_12__.castOperandToDecimalIfNeed)((0,_FLang_FlangUtils__WEBPACK_IMPORTED_MODULE_12__.makeNoDeps)((0,_FLang_FlangUtils__WEBPACK_IMPORTED_MODULE_12__.makeStringValueReference)(countResultValueExpression.modePath.toCurrentIteration(), countResultValueExpression.valueName))), new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_11__.DecimalLiteralExpression(0)));
|
|
81388
|
+
addPrecalculationRule(new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_11__.SetStatement(countResultValueExpression, new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_11__.CastExpression(countReduceExpr, _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_11__.BuildInTypeExpression.string, new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_11__.StringLiteralExpression("G29"))));
|
|
81386
81389
|
resultValueExpression = currentSumExpression;
|
|
81387
81390
|
countValueExpression = currenCountExpression;
|
|
81388
81391
|
}
|
|
81389
|
-
const finalValue = aggregationFunction === "Sum" ? resultValueExpression : (_countValueExpression = countValueExpression) !== null && _countValueExpression !== void 0 ? _countValueExpression : (0,
|
|
81390
|
-
return (0,
|
|
81392
|
+
const finalValue = aggregationFunction === "Sum" ? resultValueExpression : (_countValueExpression = countValueExpression) !== null && _countValueExpression !== void 0 ? _countValueExpression : (0,_Common_TypingUtils__WEBPACK_IMPORTED_MODULE_7__.reject)();
|
|
81393
|
+
return (0,_FLang_FlangUtils__WEBPACK_IMPORTED_MODULE_12__.castOperandIfNeed)(finalValue, builtInType);
|
|
81391
81394
|
}
|
|
81392
81395
|
}
|
|
81393
81396
|
compileIsEqualToAutoCalculatedExpression(context, selectPath, selectType) {
|
|
81394
81397
|
const prefix = context.prefix;
|
|
81395
81398
|
const target = context.target;
|
|
81396
81399
|
const adjustedSelectPath = this.preparePathAndAdjustMultiplicity(prefix, selectPath.toString());
|
|
81397
|
-
const splitInfo = (0,
|
|
81400
|
+
const splitInfo = (0,_Common_ModelPath_PathSplitHelper__WEBPACK_IMPORTED_MODULE_6__.getMatchedAndDifferentModelPaths)(target.path, adjustedSelectPath);
|
|
81398
81401
|
if (!splitInfo.differentPath.isContainIteration()) {
|
|
81399
|
-
const valueRefExpression = new
|
|
81400
|
-
const autoValueRefExpression = new
|
|
81402
|
+
const valueRefExpression = new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_11__.ValueReferenceExpression(adjustedSelectPath.toCurrentIteration().normalize(), "value");
|
|
81403
|
+
const autoValueRefExpression = new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_11__.ValueReferenceExpression(adjustedSelectPath.toCurrentIteration().normalize(), "autoValue");
|
|
81401
81404
|
if (selectType == _common_KCLang_CodeDom_KCLangType__WEBPACK_IMPORTED_MODULE_1__.StringType.default) {
|
|
81402
|
-
return new
|
|
81405
|
+
return new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_11__.EqExpression((0,_FLang_FlangUtils__WEBPACK_IMPORTED_MODULE_12__.castOperandToStringIfNeed)(valueRefExpression), (0,_FLang_FlangUtils__WEBPACK_IMPORTED_MODULE_12__.castOperandToStringIfNeed)(autoValueRefExpression));
|
|
81403
81406
|
} else {
|
|
81404
|
-
return new
|
|
81407
|
+
return new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_11__.EqExpression((0,_FLang_FlangUtils__WEBPACK_IMPORTED_MODULE_12__.castOperandToDecimalIfNeed)(valueRefExpression), (0,_FLang_FlangUtils__WEBPACK_IMPORTED_MODULE_12__.castOperandToDecimalIfNeed)(autoValueRefExpression));
|
|
81405
81408
|
}
|
|
81406
81409
|
} else {
|
|
81407
81410
|
throw new Error(`IsEqualToAutoCalculated with nested multiplicity is not supported: target: ${target.path}, select path: ${selectPath}}`);
|
|
@@ -95754,20 +95757,17 @@ __webpack_require__.r(__webpack_exports__);
|
|
|
95754
95757
|
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
|
|
95755
95758
|
/* harmony export */ AddRowButtonConverter: () => (/* binding */ AddRowButtonConverter)
|
|
95756
95759
|
/* harmony export */ });
|
|
95757
|
-
/* harmony import */ var
|
|
95758
|
-
/* harmony import */ var
|
|
95759
|
-
/* harmony import */ var
|
|
95760
|
-
/* harmony import */ var
|
|
95761
|
-
/* harmony import */ var
|
|
95762
|
-
/* harmony import */ var
|
|
95763
|
-
/* harmony import */ var
|
|
95764
|
-
/* harmony import */ var
|
|
95765
|
-
/* harmony import */ var
|
|
95766
|
-
/* harmony import */ var
|
|
95767
|
-
/* harmony import */ var
|
|
95768
|
-
/* harmony import */ var _Common_ModelPath_ModelPath__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(/*! ../../../../../../../Common/ModelPath/ModelPath */ "./Common/ModelPath/ModelPath.ts");
|
|
95769
|
-
/* harmony import */ var _AddRowButtonNode__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(/*! ./AddRowButtonNode */ "./Generator/src/generators/markupGenerator/ElementProcessors/MultiControls/AddRowButton/AddRowButtonNode.ts");
|
|
95770
|
-
|
|
95760
|
+
/* harmony import */ var _DataDeclarationGenerator_DataDeclarationGenerationContext__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../../DataDeclarationGenerator/DataDeclarationGenerationContext */ "./Generator/src/generators/DataDeclarationGenerator/DataDeclarationGenerationContext.ts");
|
|
95761
|
+
/* harmony import */ var _ComponentMarkupBuilder_ComponentMarkupBuilder__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../ComponentMarkupBuilder/ComponentMarkupBuilder */ "./Generator/src/generators/markupGenerator/ComponentMarkupBuilder/ComponentMarkupBuilder.ts");
|
|
95762
|
+
/* harmony import */ var _SugarNodeConverter__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../../SugarNodeConverter */ "./Generator/src/generators/markupGenerator/SugarNodeConverter.ts");
|
|
95763
|
+
/* harmony import */ var _getBindingPath__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../../getBindingPath */ "./Generator/src/generators/markupGenerator/getBindingPath.ts");
|
|
95764
|
+
/* harmony import */ var _common_ConditionUtils__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../../../../../common/ConditionUtils */ "./Generator/src/common/ConditionUtils.ts");
|
|
95765
|
+
/* harmony import */ var _Common_KCLangRuntimeUtils__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../../../../../../../Common/KCLangRuntimeUtils */ "./Common/KCLangRuntimeUtils.ts");
|
|
95766
|
+
/* harmony import */ var _SugarNodes_SugarNodeUtils__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ../../../SugarNodes/SugarNodeUtils */ "./Generator/src/generators/markupGenerator/SugarNodes/SugarNodeUtils.ts");
|
|
95767
|
+
/* harmony import */ var _validationGenerator_Nodes_TypeNode__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ../../../../validationGenerator/Nodes/TypeNode */ "./Generator/src/generators/validationGenerator/Nodes/TypeNode.ts");
|
|
95768
|
+
/* harmony import */ var _Common_TypingUtils__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ../../../../../../../Common/TypingUtils */ "./Common/TypingUtils.ts");
|
|
95769
|
+
/* harmony import */ var _Common_ModelPath_ModelPath__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! ../../../../../../../Common/ModelPath/ModelPath */ "./Common/ModelPath/ModelPath.ts");
|
|
95770
|
+
/* harmony import */ var _AddRowButtonNode__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(/*! ./AddRowButtonNode */ "./Generator/src/generators/markupGenerator/ElementProcessors/MultiControls/AddRowButton/AddRowButtonNode.ts");
|
|
95771
95771
|
|
|
95772
95772
|
|
|
95773
95773
|
|
|
@@ -95779,40 +95779,40 @@ __webpack_require__.r(__webpack_exports__);
|
|
|
95779
95779
|
|
|
95780
95780
|
|
|
95781
95781
|
|
|
95782
|
-
class AddRowButtonConverter extends
|
|
95782
|
+
class AddRowButtonConverter extends _SugarNodeConverter__WEBPACK_IMPORTED_MODULE_2__.SugarNodeConverterBase {
|
|
95783
95783
|
static getAcceptNodeClass() {
|
|
95784
|
-
return
|
|
95784
|
+
return _AddRowButtonNode__WEBPACK_IMPORTED_MODULE_10__.AddRowButtonNode;
|
|
95785
95785
|
}
|
|
95786
95786
|
doBuildNodeValidations(validationGenerator) {
|
|
95787
|
-
const node = this.getCurrentNodeAs(
|
|
95787
|
+
const node = this.getCurrentNodeAs(_AddRowButtonNode__WEBPACK_IMPORTED_MODULE_10__.AddRowButtonNode);
|
|
95788
95788
|
const {
|
|
95789
95789
|
validationPath
|
|
95790
95790
|
} = this.getNodeBindingAndValidationPaths(node);
|
|
95791
|
-
if (
|
|
95791
|
+
if (validationPath == undefined) {
|
|
95792
95792
|
return;
|
|
95793
95793
|
}
|
|
95794
|
-
const fakeNode = new
|
|
95794
|
+
const fakeNode = new _validationGenerator_Nodes_TypeNode__WEBPACK_IMPORTED_MODULE_7__.TypeNode();
|
|
95795
95795
|
fakeNode.base = "string";
|
|
95796
95796
|
fakeNode.children = [];
|
|
95797
95797
|
validationGenerator.processValidations(validationPath.toLegacyPath(), node.validationInfo.optional, fakeNode, undefined, node.validationInfo.emptydescription, undefined);
|
|
95798
95798
|
}
|
|
95799
95799
|
*doBuildKCLangValidations(buildContext, formSchemaRng, prefixPath) {
|
|
95800
|
-
const node = this.getCurrentNodeAs(
|
|
95800
|
+
const node = this.getCurrentNodeAs(_AddRowButtonNode__WEBPACK_IMPORTED_MODULE_10__.AddRowButtonNode);
|
|
95801
95801
|
const element = formSchemaRng.getElementByPath(node.getFullPath());
|
|
95802
95802
|
|
|
95803
95803
|
// eslint-disable-next-line no-warning-comments
|
|
95804
|
-
// TODO(2026-
|
|
95805
|
-
const fakeNode = new
|
|
95804
|
+
// TODO(2026-05-01): Необходимо разобраться с тем, что тут конфликтят свойства в type. Подробности в задаче https://yt.skbkontur.ru/issue/FS-9234
|
|
95805
|
+
const fakeNode = new _validationGenerator_Nodes_TypeNode__WEBPACK_IMPORTED_MODULE_7__.TypeNode();
|
|
95806
95806
|
fakeNode.base = "string";
|
|
95807
95807
|
fakeNode.children = [];
|
|
95808
95808
|
const typeNode = fakeNode;
|
|
95809
95809
|
const {
|
|
95810
95810
|
validationPath
|
|
95811
95811
|
} = this.getNodeBindingAndValidationPaths(node);
|
|
95812
|
-
if (
|
|
95812
|
+
if (validationPath == undefined || node.validationPath == undefined) {
|
|
95813
95813
|
return;
|
|
95814
95814
|
}
|
|
95815
|
-
const targetPath = node.getFullPathForChildren().joinWith((0,
|
|
95815
|
+
const targetPath = node.getFullPathForChildren().joinWith((0,_Common_ModelPath_ModelPath__WEBPACK_IMPORTED_MODULE_9__.createRelativeFromMask)(node.validationPath, _Common_ModelPath_ModelPath__WEBPACK_IMPORTED_MODULE_9__.PathTokens.each));
|
|
95816
95816
|
const schemaTypeNode = buildContext.getSchemaTypeInfo(targetPath);
|
|
95817
95817
|
const ownPath = node.getOwnPathForKCLang();
|
|
95818
95818
|
if (typeNode == undefined && schemaTypeNode == undefined || ownPath == undefined) {
|
|
@@ -95821,22 +95821,22 @@ class AddRowButtonConverter extends _SugarNodeConverter__WEBPACK_IMPORTED_MODULE
|
|
|
95821
95821
|
yield* buildContext.buildBasicValidations(validationPath, targetPath, prefixPath, typeNode, schemaTypeNode, node.validationInfo.optional == undefined ? element === null || element === void 0 ? void 0 : element.isOptional() : node.validationInfo.optional, undefined, node.validationInfo.emptydescription);
|
|
95822
95822
|
}
|
|
95823
95823
|
doBuildDataDeclaration(context) {
|
|
95824
|
-
const node = this.getCurrentNodeAs(
|
|
95824
|
+
const node = this.getCurrentNodeAs(_AddRowButtonNode__WEBPACK_IMPORTED_MODULE_10__.AddRowButtonNode);
|
|
95825
95825
|
const pathDeclarations = [];
|
|
95826
|
-
if ((0,
|
|
95826
|
+
if ((0,_Common_TypingUtils__WEBPACK_IMPORTED_MODULE_8__.isNotNullOrUndefined)(node.maxOccurs) && /^\d+$/.test(node.maxOccurs)) {
|
|
95827
95827
|
pathDeclarations.push(context.maxOccurs(node.getFullPath(), node.maxOccurs));
|
|
95828
95828
|
}
|
|
95829
|
-
return pathDeclarations.length > 0 ? context.mergeDataDeclaration(...pathDeclarations) :
|
|
95829
|
+
return pathDeclarations.length > 0 ? context.mergeDataDeclaration(...pathDeclarations) : _DataDeclarationGenerator_DataDeclarationGenerationContext__WEBPACK_IMPORTED_MODULE_0__.emptyDataDeclarationCollection;
|
|
95830
95830
|
}
|
|
95831
95831
|
buildChildrenDataDeclaration() {
|
|
95832
|
-
return
|
|
95832
|
+
return _DataDeclarationGenerator_DataDeclarationGenerationContext__WEBPACK_IMPORTED_MODULE_0__.emptyDataDeclarationCollection;
|
|
95833
95833
|
}
|
|
95834
95834
|
*doTraverseChildren() {
|
|
95835
95835
|
// no children
|
|
95836
95836
|
}
|
|
95837
95837
|
doConvert(context) {
|
|
95838
|
-
const node = this.getCurrentNodeAs(
|
|
95839
|
-
const markupBuilder = (0,
|
|
95838
|
+
const node = this.getCurrentNodeAs(_AddRowButtonNode__WEBPACK_IMPORTED_MODULE_10__.AddRowButtonNode);
|
|
95839
|
+
const markupBuilder = (0,_ComponentMarkupBuilder_ComponentMarkupBuilder__WEBPACK_IMPORTED_MODULE_1__.componentMarkupBuilder)("AddRowButton");
|
|
95840
95840
|
const {
|
|
95841
95841
|
bindingPath,
|
|
95842
95842
|
validationPath
|
|
@@ -95848,8 +95848,8 @@ class AddRowButtonConverter extends _SugarNodeConverter__WEBPACK_IMPORTED_MODULE
|
|
|
95848
95848
|
markupBuilder.prop(x => x.filteredUniqKey).set(node.filteredUniqKey);
|
|
95849
95849
|
markupBuilder.prop("data-tid").set(node.tid);
|
|
95850
95850
|
if (node.maxOccurs != undefined) {
|
|
95851
|
-
const maxOccursWithDependencies = (0,
|
|
95852
|
-
const maxOccurs = (0,
|
|
95851
|
+
const maxOccursWithDependencies = (0,_common_ConditionUtils__WEBPACK_IMPORTED_MODULE_4__.convertConditionToJsOrFailWithFriendlySugarError)(node.maxOccurs, "path", "count", _Common_KCLangRuntimeUtils__WEBPACK_IMPORTED_MODULE_5__.KCLangRuntimeUtils.kcLangUtilsName, node, "maxOccurs");
|
|
95852
|
+
const maxOccurs = (0,_SugarNodes_SugarNodeUtils__WEBPACK_IMPORTED_MODULE_6__.buildExpressionPropValue)(maxOccursWithDependencies.condition, maxOccursWithDependencies.dependencies);
|
|
95853
95853
|
markupBuilder.prop(x => x.maxOccurs).set(maxOccurs);
|
|
95854
95854
|
markupBuilder.prop(x => x.evaluatorsContextPath).set(this.getEvaluatorsContextPathExpression());
|
|
95855
95855
|
} else {
|
|
@@ -95858,8 +95858,8 @@ class AddRowButtonConverter extends _SugarNodeConverter__WEBPACK_IMPORTED_MODULE
|
|
|
95858
95858
|
return markupBuilder.buildConverterResult();
|
|
95859
95859
|
}
|
|
95860
95860
|
getNodeBindingAndValidationPaths(node) {
|
|
95861
|
-
const bindingPath = (0,
|
|
95862
|
-
const validationPath = (0,
|
|
95861
|
+
const bindingPath = (0,_getBindingPath__WEBPACK_IMPORTED_MODULE_3__.getNewBindingPathExpression)(node);
|
|
95862
|
+
const validationPath = (0,_Common_TypingUtils__WEBPACK_IMPORTED_MODULE_8__.isNotNullOrEmpty)(node.validationPath) ? bindingPath.getParentPath().joinWith(node.validationPath).normalize() : undefined;
|
|
95863
95863
|
return {
|
|
95864
95864
|
bindingPath: bindingPath,
|
|
95865
95865
|
validationPath: validationPath
|