@kontur.candy/generator 4.278.0-efs-partial-load.9 → 4.278.0-efs-partial-load.11
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 +130 -83
- package/package.json +1 -1
package/dist/index.js
CHANGED
|
@@ -122473,13 +122473,13 @@ class FormSchemaRng {
|
|
|
122473
122473
|
return children;
|
|
122474
122474
|
}
|
|
122475
122475
|
|
|
122476
|
-
getPath(element) {
|
|
122476
|
+
getPath(element, multiplicityToken = _Common_ModelPath_ModelPath__WEBPACK_IMPORTED_MODULE_1__.PathTokens.current) {
|
|
122477
122477
|
const result = [];
|
|
122478
122478
|
let currentElement = element;
|
|
122479
122479
|
|
|
122480
122480
|
while (currentElement !== RootParent) {
|
|
122481
122481
|
if (currentElement instanceof FormSchemaRngElement && currentElement.multiple) {
|
|
122482
|
-
result.unshift(
|
|
122482
|
+
result.unshift(multiplicityToken);
|
|
122483
122483
|
}
|
|
122484
122484
|
|
|
122485
122485
|
result.unshift(currentElement.name);
|
|
@@ -131824,18 +131824,22 @@ __webpack_require__.r(__webpack_exports__);
|
|
|
131824
131824
|
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
|
|
131825
131825
|
/* harmony export */ "FLangValidationBuildContext": () => (/* binding */ FLangValidationBuildContext)
|
|
131826
131826
|
/* harmony export */ });
|
|
131827
|
-
/* harmony import */ var
|
|
131828
|
-
/* harmony import */ var
|
|
131829
|
-
/* harmony import */ var
|
|
131830
|
-
/* harmony import */ var
|
|
131831
|
-
/* harmony import */ var
|
|
131832
|
-
/* harmony import */ var
|
|
131833
|
-
/* harmony import */ var
|
|
131834
|
-
/* harmony import */ var
|
|
131835
|
-
/* harmony import */ var
|
|
131836
|
-
/* harmony import */ var
|
|
131837
|
-
/* harmony import */ var
|
|
131838
|
-
/* harmony import */ var
|
|
131827
|
+
/* harmony import */ var _common_SchemaRng_FormSchemaRng__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../common/SchemaRng/FormSchemaRng */ "./Generator/src/common/SchemaRng/FormSchemaRng.ts");
|
|
131828
|
+
/* harmony import */ var _Common_ModelPath_ModelPath__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../../Common/ModelPath/ModelPath */ "./Common/ModelPath/ModelPath.ts");
|
|
131829
|
+
/* harmony import */ var _validationGenerator_Nodes_TypeNode__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../validationGenerator/Nodes/TypeNode */ "./Generator/src/generators/validationGenerator/Nodes/TypeNode.ts");
|
|
131830
|
+
/* harmony import */ var _Common_IterableUtils__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../../../Common/IterableUtils */ "./Common/IterableUtils.ts");
|
|
131831
|
+
/* harmony import */ var _common_XmlParser_XmlNode__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../../common/XmlParser/XmlNode */ "./Generator/src/common/XmlParser/XmlNode.ts");
|
|
131832
|
+
/* harmony import */ var _Common_ModelPath_Set_AbsoluteModelPathSet__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../../../../Common/ModelPath/Set/AbsoluteModelPathSet */ "./Common/ModelPath/Set/AbsoluteModelPathSet.ts");
|
|
131833
|
+
/* harmony import */ var _Common_TypingUtils__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ../../../../Common/TypingUtils */ "./Common/TypingUtils.ts");
|
|
131834
|
+
/* harmony import */ var _common_SchemaRng_StringTypeMessageGenerator__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ../../common/SchemaRng/StringTypeMessageGenerator */ "./Generator/src/common/SchemaRng/StringTypeMessageGenerator.ts");
|
|
131835
|
+
/* harmony import */ var _common_KCLang_KCLangToXmlTranspiler__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ../../common/KCLang/KCLangToXmlTranspiler */ "./Generator/src/common/KCLang/KCLangToXmlTranspiler.ts");
|
|
131836
|
+
/* harmony import */ var _AutoCalculationsGenerator_AutoCalculationsFromFormulas_KCXmlContract_FormulaReader__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! ../AutoCalculationsGenerator/AutoCalculationsFromFormulas/KCXmlContract/FormulaReader */ "./Generator/src/generators/AutoCalculationsGenerator/AutoCalculationsFromFormulas/KCXmlContract/FormulaReader.ts");
|
|
131837
|
+
/* harmony import */ var _Common_Errors__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(/*! ../../../../Common/Errors */ "./Common/Errors.ts");
|
|
131838
|
+
/* harmony import */ var _Common_ModelPath_PathSplitHelper__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(/*! ../../../../Common/ModelPath/PathSplitHelper */ "./Common/ModelPath/PathSplitHelper.ts");
|
|
131839
|
+
/* harmony import */ var _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_12__ = __webpack_require__(/*! ./FLang/FLangCodeDom */ "./Generator/src/generators/ServerSideFLangNormalization/FLang/FLangCodeDom.ts");
|
|
131840
|
+
/* harmony import */ var _FLang_FlangUtils__WEBPACK_IMPORTED_MODULE_13__ = __webpack_require__(/*! ./FLang/FlangUtils */ "./Generator/src/generators/ServerSideFLangNormalization/FLang/FlangUtils.ts");
|
|
131841
|
+
|
|
131842
|
+
|
|
131839
131843
|
|
|
131840
131844
|
|
|
131841
131845
|
|
|
@@ -131851,7 +131855,7 @@ __webpack_require__.r(__webpack_exports__);
|
|
|
131851
131855
|
class FLangValidationBuildContext {
|
|
131852
131856
|
constructor(typesRegistry, schemaRng, useSchemaValidations, formulaExprConverter) {
|
|
131853
131857
|
this.typesRegistry = void 0;
|
|
131854
|
-
this.pathsWithValidations = new
|
|
131858
|
+
this.pathsWithValidations = new _Common_ModelPath_Set_AbsoluteModelPathSet__WEBPACK_IMPORTED_MODULE_5__.AbsoluteModelPathSet();
|
|
131855
131859
|
this.formulaExprConverter = void 0;
|
|
131856
131860
|
this.schemaRng = void 0;
|
|
131857
131861
|
this.useSchemaValidations = void 0;
|
|
@@ -131878,7 +131882,7 @@ class FLangValidationBuildContext {
|
|
|
131878
131882
|
var _typeNode$base, _typeNode$checkType;
|
|
131879
131883
|
|
|
131880
131884
|
const validations = [];
|
|
131881
|
-
const valueReference = new
|
|
131885
|
+
const valueReference = new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_12__.ValueReferenceExpression(targetPath.toCurrentIteration(), "value");
|
|
131882
131886
|
const baseName = (_typeNode$base = typeNode === null || typeNode === void 0 ? void 0 : typeNode.base) !== null && _typeNode$base !== void 0 ? _typeNode$base : schemaTypeNode === null || schemaTypeNode === void 0 ? void 0 : schemaTypeNode.baseType;
|
|
131883
131887
|
|
|
131884
131888
|
if (baseName != undefined) {
|
|
@@ -131900,25 +131904,67 @@ class FLangValidationBuildContext {
|
|
|
131900
131904
|
}
|
|
131901
131905
|
|
|
131902
131906
|
this.pathsWithValidations.add(targetPath);
|
|
131903
|
-
let errorExpression = (0,
|
|
131907
|
+
let errorExpression = (0,_Common_IterableUtils__WEBPACK_IMPORTED_MODULE_3__.reverseArray)(validations).reduce((result, [condition, message]) => new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_12__.ConditionalExpression(condition, message, result), new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_12__.NullLiteralExpression());
|
|
131904
131908
|
|
|
131905
131909
|
if (!optional) {
|
|
131906
131910
|
const requiredDescription = typeNode === null || typeNode === void 0 ? void 0 : typeNode.requiredDescription;
|
|
131907
|
-
|
|
131911
|
+
|
|
131912
|
+
const getFirstAcceptedParent = schemaNode => {
|
|
131913
|
+
let parentNode = schemaNode === null || schemaNode === void 0 ? void 0 : schemaNode.parent;
|
|
131914
|
+
|
|
131915
|
+
while (parentNode != undefined) {
|
|
131916
|
+
if (parentNode instanceof _common_SchemaRng_FormSchemaRng__WEBPACK_IMPORTED_MODULE_0__.FormSchemaRngElement) {
|
|
131917
|
+
var _parentNode$multiple;
|
|
131918
|
+
|
|
131919
|
+
if ((_parentNode$multiple = parentNode.multiple) !== null && _parentNode$multiple !== void 0 ? _parentNode$multiple : false) {
|
|
131920
|
+
return undefined;
|
|
131921
|
+
}
|
|
131922
|
+
|
|
131923
|
+
if (parentNode.isOptional()) {
|
|
131924
|
+
return parentNode;
|
|
131925
|
+
}
|
|
131926
|
+
|
|
131927
|
+
parentNode = parentNode.parent;
|
|
131928
|
+
} else {
|
|
131929
|
+
return undefined;
|
|
131930
|
+
}
|
|
131931
|
+
}
|
|
131932
|
+
|
|
131933
|
+
return undefined;
|
|
131934
|
+
};
|
|
131935
|
+
|
|
131936
|
+
const schemaNode = this.schemaRng.getElementByPath(targetPath);
|
|
131937
|
+
const parentNode = schemaNode != undefined ? getFirstAcceptedParent(schemaNode) : undefined;
|
|
131938
|
+
const requiredExpression = new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_12__.ConditionalExpression(new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_12__.OrBinaryExpression(new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_12__.IsEqualsBinaryExpression(valueReference, new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_12__.NullLiteralExpression()), new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_12__.IsEqualsBinaryExpression(valueReference, new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_12__.StringLiteralExpression(""))), new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_12__.StringLiteralExpression("[" + JSON.stringify(requiredDescription !== null && requiredDescription !== void 0 ? requiredDescription : "Поле должно быть заполнено") + "]"), errorExpression);
|
|
131939
|
+
|
|
131940
|
+
if (parentNode instanceof _common_SchemaRng_FormSchemaRng__WEBPACK_IMPORTED_MODULE_0__.FormSchemaRngElement) {
|
|
131941
|
+
const targetCheck = new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_12__.OrBinaryExpression(new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_12__.EqExpression(valueReference, new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_12__.NullLiteralExpression()), new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_12__.EqExpression(valueReference, new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_12__.StringLiteralExpression("")));
|
|
131942
|
+
const allChildrenPaths = this.schemaRng.getAllChildren(parentNode).map(x => this.schemaRng.getPath(x, _Common_ModelPath_ModelPath__WEBPACK_IMPORTED_MODULE_1__.PathTokens.each)).filter(x => !(0,_Common_ModelPath_PathSplitHelper__WEBPACK_IMPORTED_MODULE_11__.getMatchedAndDifferentModelPaths)(targetPath, x).differentPath.isContainIteration());
|
|
131943
|
+
const restChecks = allChildrenPaths.map(childPath => new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_12__.EqExpression(new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_12__.ValueReferenceExpression(childPath.toCurrentIteration(), "value"), new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_12__.StringLiteralExpression(""))).reduce((acc, current) => acc != undefined ? new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_12__.AndBinaryExpression(acc, current) : current, undefined);
|
|
131944
|
+
|
|
131945
|
+
if (restChecks != undefined) {
|
|
131946
|
+
const finalChildrenCondition = new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_12__.AndBinaryExpression(targetCheck, restChecks);
|
|
131947
|
+
errorExpression = new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_12__.ConditionalExpression(finalChildrenCondition, new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_12__.NullLiteralExpression(), requiredExpression);
|
|
131948
|
+
} else {
|
|
131949
|
+
errorExpression = requiredExpression;
|
|
131950
|
+
}
|
|
131951
|
+
} else {
|
|
131952
|
+
errorExpression = new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_12__.ConditionalExpression(new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_12__.OrBinaryExpression(new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_12__.IsEqualsBinaryExpression(valueReference, new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_12__.NullLiteralExpression()), new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_12__.IsEqualsBinaryExpression(valueReference, new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_12__.StringLiteralExpression(""))), new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_12__.StringLiteralExpression("[" + JSON.stringify(requiredDescription !== null && requiredDescription !== void 0 ? requiredDescription : "Поле должно быть заполнено") + "]"), errorExpression);
|
|
131953
|
+
}
|
|
131908
131954
|
} else {
|
|
131909
|
-
errorExpression = new
|
|
131955
|
+
errorExpression = new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_12__.ConditionalExpression(new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_12__.OrBinaryExpression(new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_12__.IsEqualsBinaryExpression(valueReference, new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_12__.NullLiteralExpression()), new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_12__.IsEqualsBinaryExpression(valueReference, new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_12__.StringLiteralExpression(""))), new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_12__.NullLiteralExpression(), errorExpression);
|
|
131910
131956
|
}
|
|
131911
131957
|
|
|
131912
131958
|
const checkType = (_typeNode$checkType = typeNode === null || typeNode === void 0 ? void 0 : typeNode.checkType) !== null && _typeNode$checkType !== void 0 ? _typeNode$checkType : "error";
|
|
131913
131959
|
const visibilityFlangCondition = this.visibilityConditions.map(x => {
|
|
131914
|
-
const target = new
|
|
131915
|
-
const prefix = (0,
|
|
131960
|
+
const target = new _Common_ModelPath_ModelPath__WEBPACK_IMPORTED_MODULE_1__.AbsoluteModelFieldPath(targetPath, checkType);
|
|
131961
|
+
const prefix = (0,_Common_ModelPath_ModelPath__WEBPACK_IMPORTED_MODULE_1__.createAbsoluteFromTokens)(x.path.getPathPartsAsArray().filter(_Common_ModelPath_ModelPath__WEBPACK_IMPORTED_MODULE_1__.PathTokens.isSimpleToken));
|
|
131916
131962
|
const flangExpr = this.getFlangExpressionFromKclangCondition(prefix, target, x.condition, x.invertRequired);
|
|
131917
131963
|
return flangExpr;
|
|
131918
|
-
}).filter(
|
|
131919
|
-
const finalExpression = visibilityFlangCondition != undefined ? new
|
|
131964
|
+
}).filter(_Common_TypingUtils__WEBPACK_IMPORTED_MODULE_6__.isNotNullOrUndefined).reduce((acc, current) => acc != undefined ? new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_12__.AndBinaryExpression(acc, current) : current, undefined);
|
|
131965
|
+
const finalExpression = visibilityFlangCondition != undefined ? new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_12__.ConditionalExpression(visibilityFlangCondition, errorExpression, new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_12__.NullLiteralExpression()) : errorExpression;
|
|
131920
131966
|
return [{
|
|
131921
|
-
statement: new
|
|
131967
|
+
statement: new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_12__.SetStatement(new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_12__.ValueReferenceExpression(targetPath, checkType), finalExpression),
|
|
131922
131968
|
checkType: checkType
|
|
131923
131969
|
}];
|
|
131924
131970
|
}
|
|
@@ -131933,21 +131979,21 @@ class FLangValidationBuildContext {
|
|
|
131933
131979
|
try {
|
|
131934
131980
|
var _kcLangMathContainer$, _kcLangMathContainer$2, _kcLangMathContainer$3;
|
|
131935
131981
|
|
|
131936
|
-
const formulaReader = new
|
|
131937
|
-
const kcLangMathContainer = formulaReader.readFormulas(
|
|
131938
|
-
const formulaNode = (_kcLangMathContainer$ = kcLangMathContainer === null || kcLangMathContainer === void 0 ? void 0 : (_kcLangMathContainer$2 = kcLangMathContainer.formulas) === null || _kcLangMathContainer$2 === void 0 ? void 0 : (_kcLangMathContainer$3 = _kcLangMathContainer$2.items) === null || _kcLangMathContainer$3 === void 0 ? void 0 : _kcLangMathContainer$3[0]) !== null && _kcLangMathContainer$ !== void 0 ? _kcLangMathContainer$ : (0,
|
|
131982
|
+
const formulaReader = new _AutoCalculationsGenerator_AutoCalculationsFromFormulas_KCXmlContract_FormulaReader__WEBPACK_IMPORTED_MODULE_9__.FormulaReader();
|
|
131983
|
+
const kcLangMathContainer = formulaReader.readFormulas(_common_KCLang_KCLangToXmlTranspiler__WEBPACK_IMPORTED_MODULE_8__.KCLangToXmlTranspiler.transpile(fullKcLangExpr));
|
|
131984
|
+
const formulaNode = (_kcLangMathContainer$ = kcLangMathContainer === null || kcLangMathContainer === void 0 ? void 0 : (_kcLangMathContainer$2 = kcLangMathContainer.formulas) === null || _kcLangMathContainer$2 === void 0 ? void 0 : (_kcLangMathContainer$3 = _kcLangMathContainer$2.items) === null || _kcLangMathContainer$3 === void 0 ? void 0 : _kcLangMathContainer$3[0]) !== null && _kcLangMathContainer$ !== void 0 ? _kcLangMathContainer$ : (0,_Common_TypingUtils__WEBPACK_IMPORTED_MODULE_6__.reject)();
|
|
131939
131985
|
const formulaExpr = this.formulaExprConverter.compileExpressionToFlangExpression(formulaNode.expression, prefix, target, value => {
|
|
131940
|
-
throw new
|
|
131986
|
+
throw new _Common_Errors__WEBPACK_IMPORTED_MODULE_10__.NotSupportedError("In contextual KcLang conditions should not be summation.");
|
|
131941
131987
|
});
|
|
131942
|
-
const flangExpr = formulaExpr instanceof
|
|
131988
|
+
const flangExpr = formulaExpr instanceof _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_12__.ConditionalExpression ? formulaExpr.condition : (0,_Common_TypingUtils__WEBPACK_IMPORTED_MODULE_6__.reject)();
|
|
131943
131989
|
|
|
131944
131990
|
const getTypeCorrectedExpression = () => {
|
|
131945
|
-
const argExpr = (0,
|
|
131946
|
-
return new
|
|
131991
|
+
const argExpr = (0,_FLang_FlangUtils__WEBPACK_IMPORTED_MODULE_13__.castOperandToStringIfNeed)((0,_FLang_FlangUtils__WEBPACK_IMPORTED_MODULE_13__.tryExtractValueReferenceAsStringFromDecimal)(flangExpr));
|
|
131992
|
+
return new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_12__.AndBinaryExpression(new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_12__.NotEqExpression(argExpr, new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_12__.NullLiteralExpression()), new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_12__.NotEqExpression(argExpr, new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_12__.StringLiteralExpression("")));
|
|
131947
131993
|
};
|
|
131948
131994
|
|
|
131949
|
-
const correctedFLangExpr = flangExpr.getType() ===
|
|
131950
|
-
return invertRequired ? new
|
|
131995
|
+
const correctedFLangExpr = flangExpr.getType() === _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_12__.BuildInTypeExpression.bool ? flangExpr : getTypeCorrectedExpression();
|
|
131996
|
+
return invertRequired ? new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_12__.NegateUnaryExpression(correctedFLangExpr) : correctedFLangExpr;
|
|
131951
131997
|
} catch (e) {
|
|
131952
131998
|
try {
|
|
131953
131999
|
var _match$, _match$2, _match$3;
|
|
@@ -131959,33 +132005,33 @@ class FLangValidationBuildContext {
|
|
|
131959
132005
|
const value = match === null || match === void 0 ? void 0 : (_match$3 = match[0]) === null || _match$3 === void 0 ? void 0 : _match$3[3];
|
|
131960
132006
|
|
|
131961
132007
|
if (path != undefined && sign != undefined && value != undefined) {
|
|
131962
|
-
const fullPath = this.schemaRng.adjustPathMultiplicity(prefix.joinWith((0,
|
|
131963
|
-
const valueRef = new
|
|
131964
|
-
const len = new
|
|
131965
|
-
const argument = new
|
|
132008
|
+
const fullPath = this.schemaRng.adjustPathMultiplicity(prefix.joinWith((0,_Common_ModelPath_ModelPath__WEBPACK_IMPORTED_MODULE_1__.createModelPath)(path, false)).normalize()).toCurrentIteration();
|
|
132009
|
+
const valueRef = new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_12__.ValueReferenceExpression(fullPath, "children");
|
|
132010
|
+
const len = new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_12__.LenExpression(valueRef);
|
|
132011
|
+
const argument = new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_12__.DecimalLiteralExpression(value);
|
|
131966
132012
|
|
|
131967
132013
|
const getOperation = () => {
|
|
131968
132014
|
switch (sign) {
|
|
131969
132015
|
case ">":
|
|
131970
|
-
return new
|
|
132016
|
+
return new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_12__.GtExpression(len, argument);
|
|
131971
132017
|
|
|
131972
132018
|
case "<":
|
|
131973
|
-
return new
|
|
132019
|
+
return new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_12__.LtExpression(len, argument);
|
|
131974
132020
|
|
|
131975
132021
|
case "==":
|
|
131976
132022
|
case "===":
|
|
131977
|
-
return new
|
|
132023
|
+
return new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_12__.EqExpression(len, argument);
|
|
131978
132024
|
|
|
131979
132025
|
case "!=":
|
|
131980
132026
|
case "!==":
|
|
131981
|
-
return new
|
|
132027
|
+
return new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_12__.NotEqExpression(len, argument);
|
|
131982
132028
|
|
|
131983
132029
|
default:
|
|
131984
|
-
throw new
|
|
132030
|
+
throw new _Common_Errors__WEBPACK_IMPORTED_MODULE_10__.NotImplementedError();
|
|
131985
132031
|
}
|
|
131986
132032
|
};
|
|
131987
132033
|
|
|
131988
|
-
return invertRequired ? new
|
|
132034
|
+
return invertRequired ? new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_12__.NegateUnaryExpression(getOperation()) : getOperation();
|
|
131989
132035
|
}
|
|
131990
132036
|
} catch {
|
|
131991
132037
|
// eslint-disable-next-line no-console
|
|
@@ -132002,96 +132048,96 @@ class FLangValidationBuildContext {
|
|
|
132002
132048
|
var _typeNode$children$fi, _typeNode$children, _typeNode$children$fi2, _schemaTypeNode$enume, _typeNode$children2, _typeNodeLength$value, _typeNode$children3, _typeNodeMinLength$va, _typeNode$children4, _typeNodeMaxLength$va, _typeNode$children5, _typeNodeMinInclusive, _typeNode$children6, _typeNodeMaxInclusive, _typeNode$children7, _typeNodeTotalDigits$, _typeNode$children$fi3, _typeNode$children8, _schemaTypeNode$patte, _typeNode$children9, _typeNodeFractional$v;
|
|
132003
132049
|
|
|
132004
132050
|
//const baseCheckType = typeNode?.checkType;
|
|
132005
|
-
const typeNodeEnumerations = (_typeNode$children$fi = typeNode === null || typeNode === void 0 ? void 0 : (_typeNode$children = typeNode.children) === null || _typeNode$children === void 0 ? void 0 : (_typeNode$children$fi2 = _typeNode$children.filter(x => x instanceof
|
|
132006
|
-
const enumerationItems = (0,
|
|
132051
|
+
const typeNodeEnumerations = (_typeNode$children$fi = typeNode === null || typeNode === void 0 ? void 0 : (_typeNode$children = typeNode.children) === null || _typeNode$children === void 0 ? void 0 : (_typeNode$children$fi2 = _typeNode$children.filter(x => x instanceof _validationGenerator_Nodes_TypeNode__WEBPACK_IMPORTED_MODULE_2__.EnumerationTypeCheckNode)) === null || _typeNode$children$fi2 === void 0 ? void 0 : _typeNode$children$fi2.map(x => x.value)) !== null && _typeNode$children$fi !== void 0 ? _typeNode$children$fi : [];
|
|
132052
|
+
const enumerationItems = (0,_Common_TypingUtils__WEBPACK_IMPORTED_MODULE_6__.arrayIsNotEmpty)(typeNodeEnumerations) ? typeNodeEnumerations : (_schemaTypeNode$enume = schemaTypeNode === null || schemaTypeNode === void 0 ? void 0 : schemaTypeNode.enumeration) !== null && _schemaTypeNode$enume !== void 0 ? _schemaTypeNode$enume : [];
|
|
132007
132053
|
|
|
132008
|
-
if ((0,
|
|
132054
|
+
if ((0,_Common_TypingUtils__WEBPACK_IMPORTED_MODULE_6__.arrayIsNotEmpty)(enumerationItems)) {
|
|
132009
132055
|
var _ref, _typeNode$description;
|
|
132010
132056
|
|
|
132011
|
-
const enumerationRuleBody = new
|
|
132057
|
+
const enumerationRuleBody = new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_12__.OneOfExpression(valueReference, enumerationItems.map(item => new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_12__.StringLiteralExpression(item)));
|
|
132012
132058
|
const validationErrorMessage = (_ref = (_typeNode$description = typeNode === null || typeNode === void 0 ? void 0 : typeNode.description) !== null && _typeNode$description !== void 0 ? _typeNode$description : schemaTypeNode === null || schemaTypeNode === void 0 ? void 0 : schemaTypeNode.description) !== null && _ref !== void 0 ? _ref : "Поле заполнено не по справочнику";
|
|
132013
|
-
yield [new
|
|
132059
|
+
yield [new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_12__.NegateUnaryExpression(enumerationRuleBody), new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_12__.StringLiteralExpression(`["${validationErrorMessage}"]`)];
|
|
132014
132060
|
}
|
|
132015
132061
|
|
|
132016
|
-
const makeArrayLiteral = text => new
|
|
132062
|
+
const makeArrayLiteral = text => new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_12__.StringLiteralExpression(`["${text}"]`);
|
|
132017
132063
|
|
|
132018
132064
|
const makeMessage = constraints => {
|
|
132019
132065
|
var _StringTypeMessageGen;
|
|
132020
132066
|
|
|
132021
|
-
return makeArrayLiteral((_StringTypeMessageGen =
|
|
132067
|
+
return makeArrayLiteral((_StringTypeMessageGen = _common_SchemaRng_StringTypeMessageGenerator__WEBPACK_IMPORTED_MODULE_7__.StringTypeMessageGenerator.generate(constraints !== null && constraints !== void 0 ? constraints : {})) !== null && _StringTypeMessageGen !== void 0 ? _StringTypeMessageGen : "Поле должно быть заполнено");
|
|
132022
132068
|
};
|
|
132023
132069
|
|
|
132024
|
-
const typeNodeLength = typeNode === null || typeNode === void 0 ? void 0 : (_typeNode$children2 = typeNode.children) === null || _typeNode$children2 === void 0 ? void 0 : _typeNode$children2.find((0,
|
|
132070
|
+
const typeNodeLength = typeNode === null || typeNode === void 0 ? void 0 : (_typeNode$children2 = typeNode.children) === null || _typeNode$children2 === void 0 ? void 0 : _typeNode$children2.find((0,_validationGenerator_Nodes_TypeNode__WEBPACK_IMPORTED_MODULE_2__.ofType)(_validationGenerator_Nodes_TypeNode__WEBPACK_IMPORTED_MODULE_2__.LengthTypeCheckNode));
|
|
132025
132071
|
const lengthValue = (_typeNodeLength$value = typeNodeLength === null || typeNodeLength === void 0 ? void 0 : typeNodeLength.value) !== null && _typeNodeLength$value !== void 0 ? _typeNodeLength$value : schemaTypeNode === null || schemaTypeNode === void 0 ? void 0 : schemaTypeNode.length;
|
|
132026
132072
|
|
|
132027
132073
|
if (lengthValue != undefined) {
|
|
132028
|
-
const lengthExprRuleBody = new
|
|
132074
|
+
const lengthExprRuleBody = new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_12__.NegateUnaryExpression(new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_12__.EqExpression(new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_12__.LenExpression(valueReference), new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_12__.DecimalLiteralExpression(lengthValue)));
|
|
132029
132075
|
yield [lengthExprRuleBody, makeMessage({
|
|
132030
132076
|
length: lengthValue
|
|
132031
132077
|
})];
|
|
132032
132078
|
}
|
|
132033
132079
|
|
|
132034
|
-
const typeNodeMinLength = typeNode === null || typeNode === void 0 ? void 0 : (_typeNode$children3 = typeNode.children) === null || _typeNode$children3 === void 0 ? void 0 : _typeNode$children3.find((0,
|
|
132080
|
+
const typeNodeMinLength = typeNode === null || typeNode === void 0 ? void 0 : (_typeNode$children3 = typeNode.children) === null || _typeNode$children3 === void 0 ? void 0 : _typeNode$children3.find((0,_validationGenerator_Nodes_TypeNode__WEBPACK_IMPORTED_MODULE_2__.ofType)(_validationGenerator_Nodes_TypeNode__WEBPACK_IMPORTED_MODULE_2__.MinlengthTypeCheckNode));
|
|
132035
132081
|
const minLengthValue = (_typeNodeMinLength$va = typeNodeMinLength === null || typeNodeMinLength === void 0 ? void 0 : typeNodeMinLength.value) !== null && _typeNodeMinLength$va !== void 0 ? _typeNodeMinLength$va : schemaTypeNode === null || schemaTypeNode === void 0 ? void 0 : schemaTypeNode.minLength;
|
|
132036
132082
|
|
|
132037
132083
|
if (minLengthValue != undefined) {
|
|
132038
|
-
const lengthExprRuleBody = new
|
|
132084
|
+
const lengthExprRuleBody = new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_12__.NegateUnaryExpression(new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_12__.GeExpression(new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_12__.LenExpression(valueReference), new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_12__.DecimalLiteralExpression(minLengthValue)));
|
|
132039
132085
|
yield [lengthExprRuleBody, makeMessage({
|
|
132040
132086
|
minLength: minLengthValue
|
|
132041
132087
|
})];
|
|
132042
132088
|
}
|
|
132043
132089
|
|
|
132044
|
-
const typeNodeMaxLength = typeNode === null || typeNode === void 0 ? void 0 : (_typeNode$children4 = typeNode.children) === null || _typeNode$children4 === void 0 ? void 0 : _typeNode$children4.find((0,
|
|
132090
|
+
const typeNodeMaxLength = typeNode === null || typeNode === void 0 ? void 0 : (_typeNode$children4 = typeNode.children) === null || _typeNode$children4 === void 0 ? void 0 : _typeNode$children4.find((0,_validationGenerator_Nodes_TypeNode__WEBPACK_IMPORTED_MODULE_2__.ofType)(_validationGenerator_Nodes_TypeNode__WEBPACK_IMPORTED_MODULE_2__.MaxlengthTypeCheckNode));
|
|
132045
132091
|
const maxLengthValue = (_typeNodeMaxLength$va = typeNodeMaxLength === null || typeNodeMaxLength === void 0 ? void 0 : typeNodeMaxLength.value) !== null && _typeNodeMaxLength$va !== void 0 ? _typeNodeMaxLength$va : schemaTypeNode === null || schemaTypeNode === void 0 ? void 0 : schemaTypeNode.maxLength;
|
|
132046
132092
|
|
|
132047
132093
|
if (maxLengthValue != undefined) {
|
|
132048
|
-
const lengthExprRuleBody = new
|
|
132094
|
+
const lengthExprRuleBody = new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_12__.NegateUnaryExpression(new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_12__.LeExpression(new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_12__.LenExpression(valueReference), new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_12__.DecimalLiteralExpression(maxLengthValue)));
|
|
132049
132095
|
yield [lengthExprRuleBody, makeMessage({
|
|
132050
132096
|
maxLength: maxLengthValue
|
|
132051
132097
|
})];
|
|
132052
132098
|
}
|
|
132053
132099
|
|
|
132054
|
-
const typeNodeMinInclusive = typeNode === null || typeNode === void 0 ? void 0 : (_typeNode$children5 = typeNode.children) === null || _typeNode$children5 === void 0 ? void 0 : _typeNode$children5.find((0,
|
|
132100
|
+
const typeNodeMinInclusive = typeNode === null || typeNode === void 0 ? void 0 : (_typeNode$children5 = typeNode.children) === null || _typeNode$children5 === void 0 ? void 0 : _typeNode$children5.find((0,_validationGenerator_Nodes_TypeNode__WEBPACK_IMPORTED_MODULE_2__.ofType)(_validationGenerator_Nodes_TypeNode__WEBPACK_IMPORTED_MODULE_2__.MininclusiveTypeCheckNode));
|
|
132055
132101
|
const minInclusiveValue = (_typeNodeMinInclusive = typeNodeMinInclusive === null || typeNodeMinInclusive === void 0 ? void 0 : typeNodeMinInclusive.value) !== null && _typeNodeMinInclusive !== void 0 ? _typeNodeMinInclusive : schemaTypeNode === null || schemaTypeNode === void 0 ? void 0 : schemaTypeNode.minInclusive;
|
|
132056
132102
|
|
|
132057
132103
|
if (minInclusiveValue != undefined) {
|
|
132058
|
-
const minInclusiveRuleBody = new
|
|
132059
|
-
yield [minInclusiveRuleBody, new
|
|
132104
|
+
const minInclusiveRuleBody = new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_12__.NegateUnaryExpression(new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_12__.GeExpression((0,_FLang_FlangUtils__WEBPACK_IMPORTED_MODULE_13__.castOperandToDecimalIfNeed)(valueReference), new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_12__.DecimalLiteralExpression(minInclusiveValue)));
|
|
132105
|
+
yield [minInclusiveRuleBody, new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_12__.StringLiteralExpression(`["Поле должно быть больше либо равно ${minInclusiveValue}"]`)];
|
|
132060
132106
|
}
|
|
132061
132107
|
|
|
132062
|
-
const typeNodeMaxInclusive = typeNode === null || typeNode === void 0 ? void 0 : (_typeNode$children6 = typeNode.children) === null || _typeNode$children6 === void 0 ? void 0 : _typeNode$children6.find((0,
|
|
132108
|
+
const typeNodeMaxInclusive = typeNode === null || typeNode === void 0 ? void 0 : (_typeNode$children6 = typeNode.children) === null || _typeNode$children6 === void 0 ? void 0 : _typeNode$children6.find((0,_validationGenerator_Nodes_TypeNode__WEBPACK_IMPORTED_MODULE_2__.ofType)(_validationGenerator_Nodes_TypeNode__WEBPACK_IMPORTED_MODULE_2__.MaxinclusiveTypeCheckNode));
|
|
132063
132109
|
const maxInclusiveValue = (_typeNodeMaxInclusive = typeNodeMaxInclusive === null || typeNodeMaxInclusive === void 0 ? void 0 : typeNodeMaxInclusive.value) !== null && _typeNodeMaxInclusive !== void 0 ? _typeNodeMaxInclusive : schemaTypeNode === null || schemaTypeNode === void 0 ? void 0 : schemaTypeNode.maxInclusive;
|
|
132064
132110
|
|
|
132065
132111
|
if (maxInclusiveValue != undefined) {
|
|
132066
|
-
const maxInclusiveRuleBody = new
|
|
132067
|
-
yield [maxInclusiveRuleBody, new
|
|
132112
|
+
const maxInclusiveRuleBody = new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_12__.NegateUnaryExpression(new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_12__.LeExpression((0,_FLang_FlangUtils__WEBPACK_IMPORTED_MODULE_13__.castOperandToDecimalIfNeed)(valueReference), new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_12__.DecimalLiteralExpression(maxInclusiveValue)));
|
|
132113
|
+
yield [maxInclusiveRuleBody, new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_12__.StringLiteralExpression(`["Поле должно быть меньше либо равно ${maxInclusiveValue}"]`)];
|
|
132068
132114
|
}
|
|
132069
132115
|
|
|
132070
|
-
const typeNodeTotalDigits = typeNode === null || typeNode === void 0 ? void 0 : (_typeNode$children7 = typeNode.children) === null || _typeNode$children7 === void 0 ? void 0 : _typeNode$children7.find((0,
|
|
132116
|
+
const typeNodeTotalDigits = typeNode === null || typeNode === void 0 ? void 0 : (_typeNode$children7 = typeNode.children) === null || _typeNode$children7 === void 0 ? void 0 : _typeNode$children7.find((0,_validationGenerator_Nodes_TypeNode__WEBPACK_IMPORTED_MODULE_2__.ofType)(_validationGenerator_Nodes_TypeNode__WEBPACK_IMPORTED_MODULE_2__.TotaldigitsTypeCheckNode));
|
|
132071
132117
|
const totalDigitsValue = (_typeNodeTotalDigits$ = typeNodeTotalDigits === null || typeNodeTotalDigits === void 0 ? void 0 : typeNodeTotalDigits.value) !== null && _typeNodeTotalDigits$ !== void 0 ? _typeNodeTotalDigits$ : schemaTypeNode === null || schemaTypeNode === void 0 ? void 0 : schemaTypeNode.totalDigits;
|
|
132072
132118
|
|
|
132073
132119
|
if (totalDigitsValue != undefined) {
|
|
132074
|
-
const totalDigitsRuleBody = new
|
|
132075
|
-
yield [totalDigitsRuleBody, new
|
|
132120
|
+
const totalDigitsRuleBody = new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_12__.NegateUnaryExpression(new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_12__.LeExpression(new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_12__.NumLenExpression(valueReference), new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_12__.DecimalLiteralExpression(totalDigitsValue)));
|
|
132121
|
+
yield [totalDigitsRuleBody, new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_12__.StringLiteralExpression(`["Число не может содержать более ${totalDigitsValue} знаков"]`)];
|
|
132076
132122
|
}
|
|
132077
132123
|
|
|
132078
|
-
const typeNodePatterns = (_typeNode$children$fi3 = typeNode === null || typeNode === void 0 ? void 0 : (_typeNode$children8 = typeNode.children) === null || _typeNode$children8 === void 0 ? void 0 : _typeNode$children8.filter((0,
|
|
132079
|
-
const patterns = ((0,
|
|
132124
|
+
const typeNodePatterns = (_typeNode$children$fi3 = typeNode === null || typeNode === void 0 ? void 0 : (_typeNode$children8 = typeNode.children) === null || _typeNode$children8 === void 0 ? void 0 : _typeNode$children8.filter((0,_validationGenerator_Nodes_TypeNode__WEBPACK_IMPORTED_MODULE_2__.ofType)(_validationGenerator_Nodes_TypeNode__WEBPACK_IMPORTED_MODULE_2__.PatternTypeCheckNode)).map(x => x.value).filter(_Common_TypingUtils__WEBPACK_IMPORTED_MODULE_6__.isNotNullOrUndefined)) !== null && _typeNode$children$fi3 !== void 0 ? _typeNode$children$fi3 : [];
|
|
132125
|
+
const patterns = ((0,_Common_TypingUtils__WEBPACK_IMPORTED_MODULE_6__.arrayIsNotEmpty)(typeNodePatterns) ? typeNodePatterns : (_schemaTypeNode$patte = schemaTypeNode === null || schemaTypeNode === void 0 ? void 0 : schemaTypeNode.patterns) !== null && _schemaTypeNode$patte !== void 0 ? _schemaTypeNode$patte : []).filter(_Common_TypingUtils__WEBPACK_IMPORTED_MODULE_6__.isNotNullOrUndefined).map(pattern => new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_12__.RegexMatchExpression(valueReference, new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_12__.StringLiteralExpression(pattern))).reduce((acc, current) => acc != undefined ? new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_12__.OrBinaryExpression(acc, current) : current, undefined);
|
|
132080
132126
|
|
|
132081
132127
|
if (patterns != undefined) {
|
|
132082
132128
|
var _ref2, _typeNode$description2;
|
|
132083
132129
|
|
|
132084
|
-
const totalDigitsRuleBody = new
|
|
132130
|
+
const totalDigitsRuleBody = new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_12__.NegateUnaryExpression(patterns);
|
|
132085
132131
|
const validationErrorMessage = (_ref2 = (_typeNode$description2 = typeNode === null || typeNode === void 0 ? void 0 : typeNode.description) !== null && _typeNode$description2 !== void 0 ? _typeNode$description2 : schemaTypeNode === null || schemaTypeNode === void 0 ? void 0 : schemaTypeNode.description) !== null && _ref2 !== void 0 ? _ref2 : "Поле заполнено неверно";
|
|
132086
|
-
yield [totalDigitsRuleBody, new
|
|
132132
|
+
yield [totalDigitsRuleBody, new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_12__.StringLiteralExpression(`["${validationErrorMessage}"]`)];
|
|
132087
132133
|
}
|
|
132088
132134
|
|
|
132089
|
-
const typeNodeFractional = typeNode === null || typeNode === void 0 ? void 0 : (_typeNode$children9 = typeNode.children) === null || _typeNode$children9 === void 0 ? void 0 : _typeNode$children9.find((0,
|
|
132135
|
+
const typeNodeFractional = typeNode === null || typeNode === void 0 ? void 0 : (_typeNode$children9 = typeNode.children) === null || _typeNode$children9 === void 0 ? void 0 : _typeNode$children9.find((0,_validationGenerator_Nodes_TypeNode__WEBPACK_IMPORTED_MODULE_2__.ofType)(_validationGenerator_Nodes_TypeNode__WEBPACK_IMPORTED_MODULE_2__.FractiondigitsTypeCheckNode));
|
|
132090
132136
|
const fractionalDigits = (_typeNodeFractional$v = typeNodeFractional === null || typeNodeFractional === void 0 ? void 0 : typeNodeFractional.value) !== null && _typeNodeFractional$v !== void 0 ? _typeNodeFractional$v : schemaTypeNode === null || schemaTypeNode === void 0 ? void 0 : schemaTypeNode.fractionDigits;
|
|
132091
132137
|
|
|
132092
132138
|
if (fractionalDigits != undefined) {
|
|
132093
|
-
const fractionalDigitsRuleBody = new
|
|
132094
|
-
yield [fractionalDigitsRuleBody, new
|
|
132139
|
+
const fractionalDigitsRuleBody = new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_12__.NegateUnaryExpression(new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_12__.LeExpression(new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_12__.FractionalLenExpression((0,_FLang_FlangUtils__WEBPACK_IMPORTED_MODULE_13__.castOperandToDecimalIfNeed)(valueReference)), new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_12__.DecimalLiteralExpression(fractionalDigits)));
|
|
132140
|
+
yield [fractionalDigitsRuleBody, new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_12__.StringLiteralExpression(`["Число не может содержать более ${fractionalDigits} знаков в дробной части"]`)];
|
|
132095
132141
|
}
|
|
132096
132142
|
}
|
|
132097
132143
|
|
|
@@ -132104,27 +132150,27 @@ class FLangValidationBuildContext {
|
|
|
132104
132150
|
|
|
132105
132151
|
case "integer":
|
|
132106
132152
|
{
|
|
132107
|
-
return [new
|
|
132153
|
+
return [new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_12__.NegateUnaryExpression(new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_12__.RegexMatchExpression(valueReference, new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_12__.StringLiteralExpression("^-?\\d+$"))), new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_12__.StringLiteralExpression('["Значение должно быть целым числом"]')];
|
|
132108
132154
|
}
|
|
132109
132155
|
|
|
132110
132156
|
case "decimal":
|
|
132111
132157
|
{
|
|
132112
|
-
return [new
|
|
132158
|
+
return [new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_12__.NegateUnaryExpression(new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_12__.RegexMatchExpression(valueReference, new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_12__.StringLiteralExpression("^-?\\d+(([.]\\d+$)|($))"))), new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_12__.StringLiteralExpression('["Значение должно быть числом"]')];
|
|
132113
132159
|
}
|
|
132114
132160
|
|
|
132115
132161
|
case "date":
|
|
132116
132162
|
{
|
|
132117
|
-
return [new
|
|
132163
|
+
return [new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_12__.NegateUnaryExpression(new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_12__.RegexMatchExpression(valueReference, new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_12__.StringLiteralExpression("^(0[1-9]|[12][0-9]|3[01])\\.(0[1-9]|1[012])\\.(19|20)[0-9]{2}$"))), new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_12__.StringLiteralExpression('["Значение должно быть корректной датой"]')];
|
|
132118
132164
|
}
|
|
132119
132165
|
|
|
132120
132166
|
case "gYear":
|
|
132121
132167
|
{
|
|
132122
|
-
return [new
|
|
132168
|
+
return [new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_12__.NegateUnaryExpression(new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_12__.RegexMatchExpression(valueReference, new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_12__.StringLiteralExpression("^\\d{4}$"))), new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_12__.StringLiteralExpression('["Значение должно быть корректным годом длиной 4 знака"]')];
|
|
132123
132169
|
}
|
|
132124
132170
|
|
|
132125
132171
|
case "gMonth":
|
|
132126
132172
|
{
|
|
132127
|
-
return [new
|
|
132173
|
+
return [new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_12__.NegateUnaryExpression(new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_12__.RegexMatchExpression(valueReference, new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_12__.StringLiteralExpression("^(--(0[1-9]|1[0-2]))$"))), new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_12__.StringLiteralExpression('["Значение должно быть месяцем в формате --00"]')];
|
|
132128
132174
|
}
|
|
132129
132175
|
|
|
132130
132176
|
default:
|
|
@@ -132137,8 +132183,8 @@ class FLangValidationBuildContext {
|
|
|
132137
132183
|
}
|
|
132138
132184
|
|
|
132139
132185
|
addErrorCondition(targetPath, errorCondition) {
|
|
132140
|
-
const errorReference = new
|
|
132141
|
-
return new
|
|
132186
|
+
const errorReference = new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_12__.ValueReferenceExpression(targetPath, "error");
|
|
132187
|
+
return new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_12__.SetStatement(errorReference, errorCondition);
|
|
132142
132188
|
}
|
|
132143
132189
|
|
|
132144
132190
|
getSchemaTypeInfo(bindingPath) {
|
|
@@ -132154,7 +132200,7 @@ class FLangValidationBuildContext {
|
|
|
132154
132200
|
const result = this.typesRegistry.getByName(node.type);
|
|
132155
132201
|
|
|
132156
132202
|
if (result == undefined) {
|
|
132157
|
-
throw new
|
|
132203
|
+
throw new _common_XmlParser_XmlNode__WEBPACK_IMPORTED_MODULE_4__.SugarAttributeReadError(`Type with name '${node.type}' not found`, node, "type");
|
|
132158
132204
|
}
|
|
132159
132205
|
|
|
132160
132206
|
return result;
|
|
@@ -134210,12 +134256,13 @@ class OptionalSectionRulesBuilder {
|
|
|
134210
134256
|
const page = pagesToProcess.pop();
|
|
134211
134257
|
|
|
134212
134258
|
if (page != null && (0,_Common_TypingUtils__WEBPACK_IMPORTED_MODULE_4__.isNotNullOrUndefined)(page.path)) {
|
|
134213
|
-
var _page$optional;
|
|
134259
|
+
var _page$optional, _page$multiple;
|
|
134214
134260
|
|
|
134215
134261
|
yield {
|
|
134216
134262
|
sectionId: page.id,
|
|
134217
134263
|
path: (0,_Common_ModelPath_ModelPath__WEBPACK_IMPORTED_MODULE_0__.createAbsoluteFromMask)(page.path, _Common_ModelPath_ModelPath__WEBPACK_IMPORTED_MODULE_0__.PathTokens.each),
|
|
134218
|
-
optional: (_page$optional = page.optional) !== null && _page$optional !== void 0 ? _page$optional : false
|
|
134264
|
+
optional: (_page$optional = page.optional) !== null && _page$optional !== void 0 ? _page$optional : false,
|
|
134265
|
+
multiple: (_page$multiple = page.multiple) !== null && _page$multiple !== void 0 ? _page$multiple : false
|
|
134219
134266
|
};
|
|
134220
134267
|
pagesToProcess.push(...page.pages);
|
|
134221
134268
|
}
|
|
@@ -134232,7 +134279,7 @@ class OptionalSectionRulesBuilder {
|
|
|
134232
134279
|
const targetPath = rule.left.modePath;
|
|
134233
134280
|
const targetOptionalSection = orderedSections.find(x => _Engine_src_Engine_Core_PathUtils_PathUtils__WEBPACK_IMPORTED_MODULE_6__.PathUtils.isPrefix(x.path.toLegacyPath(), targetPath.toLegacyPath()));
|
|
134234
134281
|
|
|
134235
|
-
if (targetOptionalSection != undefined && targetOptionalSection.optional) {
|
|
134282
|
+
if (targetOptionalSection != undefined && targetOptionalSection.optional && !targetOptionalSection.multiple) {
|
|
134236
134283
|
const targetIsFilledPath = targetOptionalSection.path.joinWith(OptionalSectionRulesBuilder.optionalSectionFilledFieldName);
|
|
134237
134284
|
|
|
134238
134285
|
if (!targetIsFilledPath.isEquals(targetPath)) {
|