@kontur.candy/generator 4.271.0 → 4.272.0-server-normalization-fixes.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (2) hide show
  1. package/dist/index.js +334 -141
  2. package/package.json +1 -1
package/dist/index.js CHANGED
@@ -115386,7 +115386,7 @@ class KCLangAntlrVisitor {
115386
115386
  const expression = ctx.expression();
115387
115387
  const withBlocks = ctx.withBlock().map(i => i.accept(this));
115388
115388
  let description = "";
115389
- let errorLevel = "warning";
115389
+ let errorLevel = undefined;
115390
115390
 
115391
115391
  for (const withBlock of withBlocks) {
115392
115392
  if (withBlock) {
@@ -121532,10 +121532,12 @@ __webpack_require__.r(__webpack_exports__);
121532
121532
  /* harmony import */ var _Common_Errors__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../../Common/Errors */ "./Common/Errors.ts");
121533
121533
  /* harmony import */ var _Common_TypingUtils__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../../Common/TypingUtils */ "./Common/TypingUtils.ts");
121534
121534
  /* harmony import */ var _Common_IndentString__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../../../Common/IndentString */ "./Common/IndentString.ts");
121535
- /* harmony import */ var _IKCLangExpressionVisitor__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./IKCLangExpressionVisitor */ "./Generator/src/common/KCLang/IKCLangExpressionVisitor.ts");
121536
- /* harmony import */ var _KCLangDescriptionParser__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./KCLangDescriptionParser */ "./Generator/src/common/KCLang/KCLangDescriptionParser.ts");
121537
- /* harmony import */ var _KCLangNodes__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./KCLangNodes */ "./Generator/src/common/KCLang/KCLangNodes.ts");
121538
- /* harmony import */ var _Antlr_KCLangAntlrParser__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ./Antlr/KCLangAntlrParser */ "./Generator/src/common/KCLang/Antlr/KCLangAntlrParser.ts");
121535
+ /* harmony import */ var _StringUtils__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../StringUtils */ "./Generator/src/common/StringUtils.ts");
121536
+ /* harmony import */ var _IKCLangExpressionVisitor__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./IKCLangExpressionVisitor */ "./Generator/src/common/KCLang/IKCLangExpressionVisitor.ts");
121537
+ /* harmony import */ var _KCLangDescriptionParser__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./KCLangDescriptionParser */ "./Generator/src/common/KCLang/KCLangDescriptionParser.ts");
121538
+ /* harmony import */ var _KCLangNodes__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ./KCLangNodes */ "./Generator/src/common/KCLang/KCLangNodes.ts");
121539
+ /* harmony import */ var _Antlr_KCLangAntlrParser__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ./Antlr/KCLangAntlrParser */ "./Generator/src/common/KCLang/Antlr/KCLangAntlrParser.ts");
121540
+
121539
121541
 
121540
121542
 
121541
121543
 
@@ -121640,7 +121642,7 @@ function generateKCXmlExpression(expression) {
121640
121642
  }
121641
121643
 
121642
121644
  function formatDescribeStatement(ast, matchPath, describe) {
121643
- return _KCLangDescriptionParser__WEBPACK_IMPORTED_MODULE_4__.KCLangDescriptionParser.parse(describe.text).map(item => {
121645
+ return _KCLangDescriptionParser__WEBPACK_IMPORTED_MODULE_5__.KCLangDescriptionParser.parse(describe.text).map(item => {
121644
121646
  if (typeof item === "string") {
121645
121647
  return item;
121646
121648
  } else {
@@ -121672,12 +121674,12 @@ function generateBlockKCXmlFormulas(block, parents) {
121672
121674
  let lastDescribeStatement;
121673
121675
 
121674
121676
  for (const statement of block.statements) {
121675
- if ((0,_KCLangNodes__WEBPACK_IMPORTED_MODULE_5__.isFormulaStatement)(statement)) {
121677
+ if ((0,_KCLangNodes__WEBPACK_IMPORTED_MODULE_6__.isFormulaStatement)(statement)) {
121676
121678
  result.push(generateKCXmlFormula(statement, matchPath, lastDescribeStatement));
121677
121679
  lastDescribeStatement = undefined;
121678
121680
  }
121679
121681
 
121680
- if ((0,_KCLangNodes__WEBPACK_IMPORTED_MODULE_5__.isEnsureStatement)(statement)) {
121682
+ if ((0,_KCLangNodes__WEBPACK_IMPORTED_MODULE_6__.isEnsureStatement)(statement)) {
121681
121683
  lastDescribeStatement = undefined;
121682
121684
  }
121683
121685
 
@@ -121685,11 +121687,11 @@ function generateBlockKCXmlFormulas(block, parents) {
121685
121687
  throw new Error("Describe should be placed before assign of ensure statements");
121686
121688
  }
121687
121689
 
121688
- if ((0,_KCLangNodes__WEBPACK_IMPORTED_MODULE_5__.isDescribeStatement)(statement)) {
121690
+ if ((0,_KCLangNodes__WEBPACK_IMPORTED_MODULE_6__.isDescribeStatement)(statement)) {
121689
121691
  lastDescribeStatement = statement;
121690
121692
  }
121691
121693
 
121692
- if ((0,_KCLangNodes__WEBPACK_IMPORTED_MODULE_5__.isBlockStatement)(statement)) {
121694
+ if ((0,_KCLangNodes__WEBPACK_IMPORTED_MODULE_6__.isBlockStatement)(statement)) {
121693
121695
  result.push(generateBlockKCXmlFormulas(statement, [...(parents !== null && parents !== void 0 ? parents : []), block]));
121694
121696
  }
121695
121697
  }
@@ -121700,7 +121702,7 @@ function generateBlockKCXmlFormulas(block, parents) {
121700
121702
  function guessConditionTarget(condition) {
121701
121703
  let result;
121702
121704
 
121703
- class GuessConditionTargetVisitor extends _IKCLangExpressionVisitor__WEBPACK_IMPORTED_MODULE_3__.DefaultKCLangExpressionVisitor {
121705
+ class GuessConditionTargetVisitor extends _IKCLangExpressionVisitor__WEBPACK_IMPORTED_MODULE_4__.DefaultKCLangExpressionVisitor {
121704
121706
  visitExistsKCLangNode(node) {
121705
121707
  if (result == undefined) {
121706
121708
  result = node.select;
@@ -121721,12 +121723,12 @@ function guessConditionTarget(condition) {
121721
121723
 
121722
121724
  }
121723
121725
 
121724
- (0,_IKCLangExpressionVisitor__WEBPACK_IMPORTED_MODULE_3__.traverseKCLangExpression)(condition.expression, new GuessConditionTargetVisitor());
121726
+ (0,_IKCLangExpressionVisitor__WEBPACK_IMPORTED_MODULE_4__.traverseKCLangExpression)(condition.expression, new GuessConditionTargetVisitor());
121725
121727
  return result;
121726
121728
  }
121727
121729
 
121728
121730
  function generateKCXmlCondition(ast, matchPath, parentConditions, describe) {
121729
- const levelAttr = ast.level === "error" ? ` errorLevel="Error"` : "";
121731
+ const levelAttr = ast.level === undefined ? "" : ` errorLevel="${(0,_StringUtils__WEBPACK_IMPORTED_MODULE_3__.capitalizeFirstLetter)(ast.level)}"`;
121730
121732
  const descriptionAttr = describe != undefined ? ` description="${formatDescribeStatement(ast, matchPath, describe)}"` : "";
121731
121733
  const guessedTarget = guessConditionTarget(ast);
121732
121734
  const targetAttr = guessedTarget != undefined ? ` target="${guessedTarget}"` : "";
@@ -121734,7 +121736,7 @@ function generateKCXmlCondition(ast, matchPath, parentConditions, describe) {
121734
121736
  if (parentConditions != undefined && (0,_Common_TypingUtils__WEBPACK_IMPORTED_MODULE_1__.arrayIsNotEmpty)(parentConditions)) {
121735
121737
  var _parentConditions$map;
121736
121738
 
121737
- const condition = parentConditions.length === 1 ? parentConditions[0].condition : (0,_KCLangNodes__WEBPACK_IMPORTED_MODULE_5__.andKCLangNode)(...((_parentConditions$map = parentConditions === null || parentConditions === void 0 ? void 0 : parentConditions.map(z => z.condition)) !== null && _parentConditions$map !== void 0 ? _parentConditions$map : []));
121739
+ const condition = parentConditions.length === 1 ? parentConditions[0].condition : (0,_KCLangNodes__WEBPACK_IMPORTED_MODULE_6__.andKCLangNode)(...((_parentConditions$map = parentConditions === null || parentConditions === void 0 ? void 0 : parentConditions.map(z => z.condition)) !== null && _parentConditions$map !== void 0 ? _parentConditions$map : []));
121738
121740
  return `<m:condition match="${matchPath}"${descriptionAttr}${levelAttr}${targetAttr}>\n` + ` <m:when>\n` + (0,_Common_IndentString__WEBPACK_IMPORTED_MODULE_2__.indent)(generateKCXmlExpression(condition), 2) + "\n" + (0,_Common_IndentString__WEBPACK_IMPORTED_MODULE_2__.indent)(generateKCXmlExpression(ast.expression), 2) + "\n" + ` </m:when>\n` + `</m:condition>`;
121739
121741
  }
121740
121742
 
@@ -121747,11 +121749,11 @@ function generateBlockKCXmlConditions(block, parents, parentConditions) {
121747
121749
  let lastDescribeStatement;
121748
121750
 
121749
121751
  for (const statement of block.statements) {
121750
- if ((0,_KCLangNodes__WEBPACK_IMPORTED_MODULE_5__.isFormulaStatement)(statement)) {
121752
+ if ((0,_KCLangNodes__WEBPACK_IMPORTED_MODULE_6__.isFormulaStatement)(statement)) {
121751
121753
  lastDescribeStatement = undefined;
121752
121754
  }
121753
121755
 
121754
- if ((0,_KCLangNodes__WEBPACK_IMPORTED_MODULE_5__.isEnsureStatement)(statement)) {
121756
+ if ((0,_KCLangNodes__WEBPACK_IMPORTED_MODULE_6__.isEnsureStatement)(statement)) {
121755
121757
  result.push(generateKCXmlCondition(statement, matchPath, parentConditions, lastDescribeStatement));
121756
121758
  lastDescribeStatement = undefined;
121757
121759
  }
@@ -121760,15 +121762,15 @@ function generateBlockKCXmlConditions(block, parents, parentConditions) {
121760
121762
  throw new Error("Describe should be placed before assign of ensure statements");
121761
121763
  }
121762
121764
 
121763
- if ((0,_KCLangNodes__WEBPACK_IMPORTED_MODULE_5__.isDescribeStatement)(statement)) {
121765
+ if ((0,_KCLangNodes__WEBPACK_IMPORTED_MODULE_6__.isDescribeStatement)(statement)) {
121764
121766
  lastDescribeStatement = statement;
121765
121767
  }
121766
121768
 
121767
- if ((0,_KCLangNodes__WEBPACK_IMPORTED_MODULE_5__.isConditionalStatement)(statement)) {
121769
+ if ((0,_KCLangNodes__WEBPACK_IMPORTED_MODULE_6__.isConditionalStatement)(statement)) {
121768
121770
  result.push(generateConditionalConditions(statement, [...(parents !== null && parents !== void 0 ? parents : []), block], parentConditions));
121769
121771
  }
121770
121772
 
121771
- if ((0,_KCLangNodes__WEBPACK_IMPORTED_MODULE_5__.isBlockStatement)(statement)) {
121773
+ if ((0,_KCLangNodes__WEBPACK_IMPORTED_MODULE_6__.isBlockStatement)(statement)) {
121772
121774
  result.push(generateBlockKCXmlConditions(statement, [...(parents !== null && parents !== void 0 ? parents : []), block], parentConditions));
121773
121775
  }
121774
121776
  }
@@ -121782,7 +121784,7 @@ function generateConditionalConditions(conditionalStatement, parents, parentCond
121782
121784
  let lastDescribeStatement;
121783
121785
 
121784
121786
  for (const x of conditionalStatement.statements) {
121785
- if ((0,_KCLangNodes__WEBPACK_IMPORTED_MODULE_5__.isEnsureStatement)(x)) {
121787
+ if ((0,_KCLangNodes__WEBPACK_IMPORTED_MODULE_6__.isEnsureStatement)(x)) {
121786
121788
  result.push(generateKCXmlCondition(x, matchPath, [...(parentConditions !== null && parentConditions !== void 0 ? parentConditions : []), conditionalStatement], lastDescribeStatement));
121787
121789
  lastDescribeStatement = undefined;
121788
121790
  }
@@ -121791,15 +121793,15 @@ function generateConditionalConditions(conditionalStatement, parents, parentCond
121791
121793
  throw new Error("Describe should be placed before assign of ensure statements");
121792
121794
  }
121793
121795
 
121794
- if ((0,_KCLangNodes__WEBPACK_IMPORTED_MODULE_5__.isDescribeStatement)(x)) {
121796
+ if ((0,_KCLangNodes__WEBPACK_IMPORTED_MODULE_6__.isDescribeStatement)(x)) {
121795
121797
  lastDescribeStatement = x;
121796
121798
  }
121797
121799
 
121798
- if ((0,_KCLangNodes__WEBPACK_IMPORTED_MODULE_5__.isConditionalStatement)(x)) {
121800
+ if ((0,_KCLangNodes__WEBPACK_IMPORTED_MODULE_6__.isConditionalStatement)(x)) {
121799
121801
  result.push(generateConditionalConditions(x, parents, [...(parentConditions !== null && parentConditions !== void 0 ? parentConditions : []), conditionalStatement]));
121800
121802
  }
121801
121803
 
121802
- if ((0,_KCLangNodes__WEBPACK_IMPORTED_MODULE_5__.isBlockStatement)(x)) {
121804
+ if ((0,_KCLangNodes__WEBPACK_IMPORTED_MODULE_6__.isBlockStatement)(x)) {
121803
121805
  result.push(generateBlockKCXmlConditions(x, parents, [...(parentConditions !== null && parentConditions !== void 0 ? parentConditions : []), conditionalStatement]));
121804
121806
  }
121805
121807
  }
@@ -121833,7 +121835,7 @@ function generateKCXml(blocks) {
121833
121835
 
121834
121836
  class KCLangToXmlTranspiler {
121835
121837
  static transpile(kcLang, customParser) {
121836
- const parser = customParser !== null && customParser !== void 0 ? customParser : _Antlr_KCLangAntlrParser__WEBPACK_IMPORTED_MODULE_6__.KCLangAntlrParser.parse;
121838
+ const parser = customParser !== null && customParser !== void 0 ? customParser : _Antlr_KCLangAntlrParser__WEBPACK_IMPORTED_MODULE_7__.KCLangAntlrParser.parse;
121837
121839
  const kcxml = generateKCXml(parser(kcLang).blocks);
121838
121840
  return kcxml;
121839
121841
  }
@@ -121927,6 +121929,10 @@ class FormSchemaRngAttribute {
121927
121929
  return this.optional || this.nillable || false;
121928
121930
  }
121929
121931
 
121932
+ isOptional() {
121933
+ return this.isOptionalOrNillable() || this.parent.isOptionalOrNillable();
121934
+ }
121935
+
121930
121936
  }
121931
121937
  const RootParent = Symbol.for("__ROOT_ELEMENT_PARENT__");
121932
121938
  class FormSchemaRngElement {
@@ -121978,6 +121984,10 @@ class FormSchemaRngElement {
121978
121984
  return this.optional || this.nillable || false;
121979
121985
  }
121980
121986
 
121987
+ isOptional() {
121988
+ return this.isOptionalOrNillable();
121989
+ }
121990
+
121981
121991
  getChildren() {
121982
121992
  return this.children;
121983
121993
  }
@@ -129415,7 +129425,8 @@ function isFileExists(directoryPath) {
129415
129425
  }
129416
129426
  function normalizeDocument(documentJson) {
129417
129427
  const availableChildren = documentJson.availableChildren != undefined ? documentJson.availableChildren : {
129418
- type: _DocumentationTypes__WEBPACK_IMPORTED_MODULE_1__.AvailableChildrenType.Any
129428
+ children: [],
129429
+ singleChild: []
129419
129430
  };
129420
129431
  const document = { ...documentJson,
129421
129432
  availableChildren: availableChildren
@@ -129665,7 +129676,13 @@ __webpack_require__.r(__webpack_exports__);
129665
129676
  /* harmony import */ var _markupGenerator_Serializer_Properties_SinglePropertyDeserializer__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../markupGenerator/Serializer/Properties/SinglePropertyDeserializer */ "./Generator/src/generators/markupGenerator/Serializer/Properties/SinglePropertyDeserializer.ts");
129666
129677
  /* harmony import */ var _markupGenerator_Serializer_Properties_ValuesSources_AttributeValueSource__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ../markupGenerator/Serializer/Properties/ValuesSources/AttributeValueSource */ "./Generator/src/generators/markupGenerator/Serializer/Properties/ValuesSources/AttributeValueSource.ts");
129667
129678
  /* harmony import */ var _markupGenerator_Serializer_Properties_ValuesSources_SkipAttributeValueSource__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ../markupGenerator/Serializer/Properties/ValuesSources/SkipAttributeValueSource */ "./Generator/src/generators/markupGenerator/Serializer/Properties/ValuesSources/SkipAttributeValueSource.ts");
129668
- /* harmony import */ var _DocumentationTypes__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ./DocumentationTypes */ "./Generator/src/generators/DocumentationGenerator/DocumentationTypes.ts");
129679
+ /* harmony import */ var _markupGenerator_Serializer_Properties_ValuesSources_MarkupOrAttributeValueSource__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ../markupGenerator/Serializer/Properties/ValuesSources/MarkupOrAttributeValueSource */ "./Generator/src/generators/markupGenerator/Serializer/Properties/ValuesSources/MarkupOrAttributeValueSource.ts");
129680
+ /* harmony import */ var _markupGenerator_Serializer_Properties_ValuesSources_ChildrenNodesValueSource__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! ../markupGenerator/Serializer/Properties/ValuesSources/ChildrenNodesValueSource */ "./Generator/src/generators/markupGenerator/Serializer/Properties/ValuesSources/ChildrenNodesValueSource.ts");
129681
+ /* harmony import */ var _markupGenerator_Serializer_Properties_ValuesSources_SingleChildValueSource__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(/*! ../markupGenerator/Serializer/Properties/ValuesSources/SingleChildValueSource */ "./Generator/src/generators/markupGenerator/Serializer/Properties/ValuesSources/SingleChildValueSource.ts");
129682
+ /* harmony import */ var _DocumentationTypes__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(/*! ./DocumentationTypes */ "./Generator/src/generators/DocumentationGenerator/DocumentationTypes.ts");
129683
+
129684
+
129685
+
129669
129686
 
129670
129687
 
129671
129688
 
@@ -129691,21 +129708,135 @@ function buildSugarNodeDocumentation(sugarNodeClass) {
129691
129708
  const documentationFilesContext = metadata.documentationFilesContext;
129692
129709
  const example = (0,_common_RequireContext_LoadDocumentationFileFormContext__WEBPACK_IMPORTED_MODULE_2__.loadDocumentationFileFormContext)(documentationFilesContext, "example.md");
129693
129710
  const markdownDescription = getMarkdownDescription(documentationFilesContext, metadata, sugarNodeClass);
129711
+ const {
129712
+ markupAttributes,
129713
+ attributes
129714
+ } = buildMarkupAndAttributesInfo(propertySerializers, documentationFilesContext);
129715
+ const {
129716
+ children,
129717
+ singleChild,
129718
+ availableAnyChildren
129719
+ } = buildAvailableChildrenInfo(propertySerializers, documentationFilesContext);
129694
129720
  return {
129695
129721
  name: metadata.sugarNodeName.toLowerCase(),
129696
129722
  availableChildren: {
129697
- type: _DocumentationTypes__WEBPACK_IMPORTED_MODULE_8__.AvailableChildrenType.Any
129723
+ children: children,
129724
+ singleChild: singleChild,
129725
+ availableAnyChildren: availableAnyChildren
129698
129726
  },
129699
129727
  example: example,
129700
129728
  shortMarkdownDescription: metadata.description,
129701
129729
  markdownDescription: markdownDescription,
129702
- attributes: propertySerializers.length === 0 ? [] : propertySerializers.map(x => buildAttributeDocs(x, documentationFilesContext)).flat()
129730
+ attributes: attributes,
129731
+ markupAttributes: markupAttributes
129703
129732
  };
129704
129733
  }
129705
129734
 
129706
- function buildAttributeDocs(propertyDeserializer, documentationFilesContext) {
129707
- var _propertyDeserializer2;
129735
+ function buildAvailableChildrenInfo(propertySerializers, documentationFilesContext) {
129736
+ if (propertySerializers.length === 0) {
129737
+ return {
129738
+ children: [],
129739
+ singleChild: []
129740
+ };
129741
+ }
129742
+
129743
+ const children = propertySerializers.map(x => buildAvailableChildrenDocs(x, documentationFilesContext)).flat();
129744
+ const singleChild = propertySerializers.map(x => buildAvailableSingleChildDocs(x, documentationFilesContext)).flat();
129745
+ const availableAnyChildren = propertySerializers.map(x => buildAvailableSugarChildrenDocs(x, documentationFilesContext)).some(x => x === true);
129746
+ return {
129747
+ children: children,
129748
+ singleChild: singleChild,
129749
+ availableAnyChildren: availableAnyChildren
129750
+ };
129751
+ }
129708
129752
 
129753
+ function buildAvailableChildrenDocs(propertyDeserializer, documentationFilesContext) {
129754
+ if (!(propertyDeserializer instanceof _markupGenerator_Serializer_Properties_SinglePropertyDeserializer__WEBPACK_IMPORTED_MODULE_5__.SinglePropertyDeserializer)) {
129755
+ return [];
129756
+ }
129757
+
129758
+ if (propertyDeserializer.propertyName === "children") {
129759
+ return [];
129760
+ }
129761
+
129762
+ if (propertyDeserializer.valueSource instanceof _markupGenerator_Serializer_Properties_ValuesSources_ChildrenNodesValueSource__WEBPACK_IMPORTED_MODULE_9__.ChildrenNodesValueSource) {
129763
+ const childrenNodes = propertyDeserializer.valueSource.nodeClasses.map(buildSugarNodeDocumentation);
129764
+ return childrenNodes;
129765
+ }
129766
+
129767
+ return [];
129768
+ }
129769
+
129770
+ function buildAvailableSugarChildrenDocs(propertyDeserializer, documentationFilesContext) {
129771
+ if (!(propertyDeserializer instanceof _markupGenerator_Serializer_Properties_SinglePropertyDeserializer__WEBPACK_IMPORTED_MODULE_5__.SinglePropertyDeserializer)) {
129772
+ return false;
129773
+ }
129774
+
129775
+ if (propertyDeserializer.propertyName === "children") {
129776
+ return true;
129777
+ }
129778
+
129779
+ return false;
129780
+ }
129781
+
129782
+ function buildAvailableSingleChildDocs(propertyDeserializer, documentationFilesContext) {
129783
+ if (!(propertyDeserializer instanceof _markupGenerator_Serializer_Properties_SinglePropertyDeserializer__WEBPACK_IMPORTED_MODULE_5__.SinglePropertyDeserializer)) {
129784
+ return [];
129785
+ }
129786
+
129787
+ if (propertyDeserializer.valueSource instanceof _markupGenerator_Serializer_Properties_ValuesSources_SingleChildValueSource__WEBPACK_IMPORTED_MODULE_10__.SingleChildValueSource) {
129788
+ const childrenNodes = propertyDeserializer.valueSource.nodeClasses.map(buildSugarNodeDocumentation);
129789
+ return childrenNodes;
129790
+ }
129791
+
129792
+ return [];
129793
+ }
129794
+
129795
+ function buildMarkupAndAttributesInfo(propertySerializers, documentationFilesContext) {
129796
+ if (propertySerializers.length === 0) {
129797
+ return {
129798
+ attributes: [],
129799
+ markupAttributes: []
129800
+ };
129801
+ }
129802
+
129803
+ const attributes = propertySerializers.map(x => buildAttributeDocs(x, documentationFilesContext)).flat();
129804
+ const markupAttributes = propertySerializers.map(x => buildMarkupAttributeDocs(x, documentationFilesContext)).flat();
129805
+ return {
129806
+ attributes: attributes,
129807
+ markupAttributes: markupAttributes
129808
+ };
129809
+ }
129810
+
129811
+ function buildMarkupAttributeDocs(propertyDeserializer, documentationFilesContext) {
129812
+ if (!(propertyDeserializer instanceof _markupGenerator_Serializer_Properties_SinglePropertyDeserializer__WEBPACK_IMPORTED_MODULE_5__.SinglePropertyDeserializer)) {
129813
+ return [];
129814
+ }
129815
+
129816
+ if (propertyDeserializer.valueSource instanceof _markupGenerator_Serializer_Properties_ValuesSources_MarkupOrAttributeValueSource__WEBPACK_IMPORTED_MODULE_8__.MarkupOrAttributeValueSource) {
129817
+ var _propertyDeserializer;
129818
+
129819
+ let markdownDescription = "";
129820
+
129821
+ if (documentationFilesContext != undefined) {
129822
+ markdownDescription = (0,_common_RequireContext_LoadDocumentationFileFormContext__WEBPACK_IMPORTED_MODULE_2__.loadDocumentationFileFormContext)(documentationFilesContext, `${propertyDeserializer.valueSource.attrName}.attr.md`);
129823
+ }
129824
+
129825
+ return [{
129826
+ name: propertyDeserializer.valueSource.attrName,
129827
+ valueTypes: (0,_DocumentationTypes__WEBPACK_IMPORTED_MODULE_11__.valueParserToAttributeType)(propertyDeserializer.valueSource.valueParser),
129828
+ shortMarkdownDescription: (_propertyDeserializer = propertyDeserializer.propertyDescription) !== null && _propertyDeserializer !== void 0 ? _propertyDeserializer : "--",
129829
+ markdownDescription: markdownDescription,
129830
+ defaultValue: undefined,
129831
+ required: (0,_DocumentationTypes__WEBPACK_IMPORTED_MODULE_11__.isRequiredValueParser)(propertyDeserializer.valueSource.valueParser),
129832
+ deprecated: false
129833
+ }];
129834
+ }
129835
+
129836
+ return [];
129837
+ }
129838
+
129839
+ function buildAttributeDocs(propertyDeserializer, documentationFilesContext) {
129709
129840
  if (propertyDeserializer instanceof _markupGenerator_Serializer_Properties_MixinPropertyDeserializer__WEBPACK_IMPORTED_MODULE_4__.MixinPropertyDeserializer) {
129710
129841
  return propertyDeserializer.getPropertyDeserializers().map(x => buildAttributeDocs(x, documentationFilesContext)).flat();
129711
129842
  }
@@ -129715,7 +129846,7 @@ function buildAttributeDocs(propertyDeserializer, documentationFilesContext) {
129715
129846
  }
129716
129847
 
129717
129848
  if (propertyDeserializer.valueSource instanceof _markupGenerator_Serializer_Properties_ValuesSources_AttributeValueSource__WEBPACK_IMPORTED_MODULE_6__.AttributeValueSource) {
129718
- var _propertyDeserializer;
129849
+ var _propertyDeserializer2;
129719
129850
 
129720
129851
  let markdownDescription = "";
129721
129852
 
@@ -129725,11 +129856,11 @@ function buildAttributeDocs(propertyDeserializer, documentationFilesContext) {
129725
129856
 
129726
129857
  return [{
129727
129858
  name: propertyDeserializer.valueSource.attrName,
129728
- valueTypes: (0,_DocumentationTypes__WEBPACK_IMPORTED_MODULE_8__.valueParserToAttributeType)(propertyDeserializer.valueSource.valueParser),
129729
- shortMarkdownDescription: (_propertyDeserializer = propertyDeserializer.propertyDescription) !== null && _propertyDeserializer !== void 0 ? _propertyDeserializer : "--",
129859
+ valueTypes: (0,_DocumentationTypes__WEBPACK_IMPORTED_MODULE_11__.valueParserToAttributeType)(propertyDeserializer.valueSource.valueParser),
129860
+ shortMarkdownDescription: (_propertyDeserializer2 = propertyDeserializer.propertyDescription) !== null && _propertyDeserializer2 !== void 0 ? _propertyDeserializer2 : "--",
129730
129861
  markdownDescription: markdownDescription,
129731
129862
  defaultValue: undefined,
129732
- required: (0,_DocumentationTypes__WEBPACK_IMPORTED_MODULE_8__.isRequiredValueParser)(propertyDeserializer.valueSource.valueParser),
129863
+ required: (0,_DocumentationTypes__WEBPACK_IMPORTED_MODULE_11__.isRequiredValueParser)(propertyDeserializer.valueSource.valueParser),
129733
129864
  deprecated: false
129734
129865
  }];
129735
129866
  }
@@ -129746,15 +129877,7 @@ function buildAttributeDocs(propertyDeserializer, documentationFilesContext) {
129746
129877
  }];
129747
129878
  }
129748
129879
 
129749
- return [{
129750
- name: propertyDeserializer.propertyName,
129751
- valueTypes: [],
129752
- shortMarkdownDescription: (_propertyDeserializer2 = propertyDeserializer.propertyDescription) !== null && _propertyDeserializer2 !== void 0 ? _propertyDeserializer2 : "--",
129753
- markdownDescription: "",
129754
- defaultValue: undefined,
129755
- required: undefined,
129756
- deprecated: false
129757
- }];
129880
+ return [];
129758
129881
  }
129759
129882
 
129760
129883
  /***/ }),
@@ -131388,7 +131511,7 @@ class FLangValidationBuildContext {
131388
131511
  }, undefined);
131389
131512
 
131390
131513
  if (enumerationRuleBody != undefined) {
131391
- yield [new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_6__.NegateUnaryExpression(enumerationRuleBody), new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_6__.StringLiteralExpression(`["Поле должно быть заполнено"]`)];
131514
+ yield [new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_6__.NegateUnaryExpression(enumerationRuleBody), new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_6__.StringLiteralExpression(`["Поле заполнено не по справочнику"]`)];
131392
131515
  }
131393
131516
 
131394
131517
  const makeArrayLiteral = text => new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_6__.StringLiteralExpression(`["${text}"]`);
@@ -131449,7 +131572,7 @@ class FLangValidationBuildContext {
131449
131572
  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;
131450
131573
 
131451
131574
  if (totalDigitsValue != undefined) {
131452
- const totalDigitsRuleBody = new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_6__.NegateUnaryExpression(new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_6__.LeExpression(new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_6__.LenExpression(valueReference), new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_6__.DecimalLiteralExpression(totalDigitsValue)));
131575
+ const totalDigitsRuleBody = new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_6__.NegateUnaryExpression(new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_6__.LeExpression(new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_6__.NumLenExpression(valueReference), new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_6__.DecimalLiteralExpression(totalDigitsValue)));
131453
131576
  yield [totalDigitsRuleBody, new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_6__.StringLiteralExpression(`["Число не может содержать более ${totalDigitsValue} знаков"]`)];
131454
131577
  }
131455
131578
 
@@ -131457,8 +131580,11 @@ class FLangValidationBuildContext {
131457
131580
  const pattern = (_typeNodePattern$valu = typeNodePattern === null || typeNodePattern === void 0 ? void 0 : typeNodePattern.value) !== null && _typeNodePattern$valu !== void 0 ? _typeNodePattern$valu : schemaTypeNode === null || schemaTypeNode === void 0 ? void 0 : (_schemaTypeNode$patte = schemaTypeNode.patterns) === null || _schemaTypeNode$patte === void 0 ? void 0 : _schemaTypeNode$patte[0];
131458
131581
 
131459
131582
  if (pattern != undefined) {
131583
+ var _schemaTypeNode$descr;
131584
+
131460
131585
  const totalDigitsRuleBody = new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_6__.NegateUnaryExpression(new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_6__.CallExpression("regexMatch", [valueReference, new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_6__.StringLiteralExpression(pattern)]));
131461
- yield [totalDigitsRuleBody, new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_6__.StringLiteralExpression(`["Поле должно быть заполнено"]`)];
131586
+ const validationErrorMessage = (_schemaTypeNode$descr = schemaTypeNode === null || schemaTypeNode === void 0 ? void 0 : schemaTypeNode.description) !== null && _schemaTypeNode$descr !== void 0 ? _schemaTypeNode$descr : "Поле заполнено неверно";
131587
+ yield [totalDigitsRuleBody, new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_6__.StringLiteralExpression(`["${validationErrorMessage}"]`)];
131462
131588
  }
131463
131589
 
131464
131590
  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_0__.ofType)(_validationGenerator_Nodes_TypeNode__WEBPACK_IMPORTED_MODULE_0__.FractiondigitsTypeCheckNode));
@@ -131591,6 +131717,7 @@ __webpack_require__.r(__webpack_exports__);
131591
131717
  /* harmony export */ "BoolLiteralExpression": () => (/* binding */ BoolLiteralExpression),
131592
131718
  /* harmony export */ "AbsExpression": () => (/* binding */ AbsExpression),
131593
131719
  /* harmony export */ "LenExpression": () => (/* binding */ LenExpression),
131720
+ /* harmony export */ "NumLenExpression": () => (/* binding */ NumLenExpression),
131594
131721
  /* harmony export */ "FractionalLenExpression": () => (/* binding */ FractionalLenExpression),
131595
131722
  /* harmony export */ "RoundExpression": () => (/* binding */ RoundExpression),
131596
131723
  /* harmony export */ "IntegerLiteralExpression": () => (/* binding */ IntegerLiteralExpression),
@@ -131947,6 +132074,18 @@ class LenExpression extends FLangExpression {
131947
132074
  return `len(${this.expression.convertToString()})`;
131948
132075
  }
131949
132076
 
132077
+ }
132078
+ class NumLenExpression extends FLangExpression {
132079
+ constructor(expression) {
132080
+ super();
132081
+ this.expression = void 0;
132082
+ this.expression = expression;
132083
+ }
132084
+
132085
+ convertToString() {
132086
+ return `numLen(${this.expression.convertToString()})`;
132087
+ }
132088
+
131950
132089
  }
131951
132090
  class FractionalLenExpression extends FLangExpression {
131952
132091
  constructor(expression) {
@@ -132213,7 +132352,7 @@ class NormalizationRulesGenerator {
132213
132352
  buildSugarFLangRules() {
132214
132353
  const converter = new _markupGenerator_ElementProcessors_FormParts_Form_FormConverter__WEBPACK_IMPORTED_MODULE_2__.FormConverter(this.sugarRoot);
132215
132354
  const builder = new _markupGenerator_FLangNormalizationRulesBuilder__WEBPACK_IMPORTED_MODULE_8__.FLangNormalizationRulesBuilder(this.controlCustomizationContext);
132216
- return converter.buildNormalizeRules(builder);
132355
+ return converter.buildNormalizeRules(builder, this.formSchemaRng);
132217
132356
  }
132218
132357
 
132219
132358
  *buildFormulaFLangRules() {
@@ -132401,15 +132540,35 @@ class NormalizationRulesGenerator {
132401
132540
  }
132402
132541
 
132403
132542
  compileSumExpression(expression, prefix, target, addPrecalculationRule) {
132404
- const result = expression.arguments.reduce((acc, curr) => {
132405
- const currExpr = this.castOperandToDecimalIfNeed(this.compileExpressionToFlashExpression(curr, prefix, target, addPrecalculationRule));
132543
+ const args = this.getFlatArgumentExpressions(expression.arguments);
132544
+ const conditionExpression = args.reduce((acc, curr) => {
132545
+ const currExpr = new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_13__.NotEqExpression(this.compileExpressionToFlashExpression(curr, prefix, target, addPrecalculationRule), new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_13__.NullLiteralExpression());
132546
+ return acc != undefined ? new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_13__.OrBinaryExpression(acc, currExpr) : currExpr;
132547
+ }, undefined);
132548
+
132549
+ if (conditionExpression == undefined) {
132550
+ const result = expression.arguments.reduce((acc, curr) => {
132551
+ const currExpr = this.castOperandToDecimalIfNeed(this.compileExpressionToFlashExpression(curr, prefix, target, addPrecalculationRule));
132552
+ return acc != undefined ? new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_13__.SumBinaryExpression(acc, currExpr) : currExpr;
132553
+ }, undefined);
132554
+
132555
+ if (result == undefined) {
132556
+ throw new _Common_Errors__WEBPACK_IMPORTED_MODULE_7__.InvalidProgramStateError();
132557
+ }
132558
+
132559
+ return new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_13__.CastExpression(result, "string");
132560
+ }
132561
+
132562
+ const trueResultExpression = expression.arguments.reduce((acc, curr) => {
132563
+ const currExpr = this.castOperandToDecimalIfNeed(this.compileExpressionToFlashExpression(curr, prefix, target, addPrecalculationRule), 0);
132406
132564
  return acc != undefined ? new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_13__.SumBinaryExpression(acc, currExpr) : currExpr;
132407
132565
  }, undefined);
132408
132566
 
132409
- if (result == undefined) {
132567
+ if (trueResultExpression == undefined) {
132410
132568
  throw new _Common_Errors__WEBPACK_IMPORTED_MODULE_7__.InvalidProgramStateError();
132411
132569
  }
132412
132570
 
132571
+ const result = new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_13__.ConditionalExpression(conditionExpression, trueResultExpression, new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_13__.NullLiteralExpression());
132413
132572
  return new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_13__.CastExpression(result, "string");
132414
132573
  }
132415
132574
 
@@ -132479,19 +132638,33 @@ class NormalizationRulesGenerator {
132479
132638
  return new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_13__.CastExpression(result, "string");
132480
132639
  }
132481
132640
 
132641
+ getFlatArgumentExpressions(expressions) {
132642
+ return expressions.reduce((acc, curr) => {
132643
+ if (curr instanceof _AutoCalculationsGenerator_AutoCalculationsFromFormulas_KCXmlContract_Formula__WEBPACK_IMPORTED_MODULE_3__.FormulaArgumentExpression) {
132644
+ return acc.concat(curr);
132645
+ }
132646
+
132647
+ if (curr instanceof _AutoCalculationsGenerator_AutoCalculationsFromFormulas_KCXmlContract_Formula__WEBPACK_IMPORTED_MODULE_3__.FormulaSumExpression || curr instanceof _AutoCalculationsGenerator_AutoCalculationsFromFormulas_KCXmlContract_Formula__WEBPACK_IMPORTED_MODULE_3__.FormulaDivisionExpression || curr instanceof _AutoCalculationsGenerator_AutoCalculationsFromFormulas_KCXmlContract_Formula__WEBPACK_IMPORTED_MODULE_3__.FormulaMultiplyExpression) {
132648
+ return acc.concat(this.getFlatArgumentExpressions(curr.arguments));
132649
+ }
132650
+
132651
+ return acc;
132652
+ }, []);
132653
+ }
132654
+
132482
132655
  castOperandToStringIfNeed(operandExpression) {
132483
132656
  return operandExpression instanceof _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_13__.StringLiteralExpression || operandExpression instanceof _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_13__.CastExpression && operandExpression.getTargetType() == "string" ? operandExpression : new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_13__.CastExpression(operandExpression, "string");
132484
132657
  }
132485
132658
 
132486
- castOperandToDecimalIfNeed(operandExpression) {
132487
- return operandExpression instanceof _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_13__.DecimalLiteralExpression ? operandExpression : new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_13__.CastExpression(operandExpression, "decimal");
132659
+ castOperandToDecimalIfNeed(operandExpression, defaultValue) {
132660
+ return operandExpression instanceof _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_13__.DecimalLiteralExpression ? operandExpression : new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_13__.CastExpression(operandExpression, "decimal", defaultValue != undefined ? new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_13__.DecimalLiteralExpression(defaultValue) : undefined);
132488
132661
  }
132489
132662
 
132490
132663
  *buildSugarValidationRules() {
132491
132664
  const converter = new _markupGenerator_ElementProcessors_FormParts_Form_FormConverter__WEBPACK_IMPORTED_MODULE_2__.FormConverter(this.sugarRoot);
132492
132665
  const context = new _FLangValidationBuildContext__WEBPACK_IMPORTED_MODULE_14__.FLangValidationBuildContext(this.typesRegistry, this.formSchemaRng, this.useSchemaValidations);
132493
132666
  const kcRules = this.buildKcValidationRules();
132494
- const allRules = Iterator.from(converter.buildFLangValidations(context)).reduce((ctx, current) => {
132667
+ const allRules = Iterator.from(converter.buildFLangValidations(context, this.formSchemaRng)).reduce((ctx, current) => {
132495
132668
  const statement = current.statement;
132496
132669
 
132497
132670
  if (!(statement instanceof _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_13__.SetStatement)) {
@@ -136976,6 +137149,7 @@ class FormConverter extends _SugarNodeConverter__WEBPACK_IMPORTED_MODULE_7__.Sug
136976
137149
  bindingPath: (0,_getBindingPath__WEBPACK_IMPORTED_MODULE_15__.getNewBindingPathExpression)(pageNode),
136977
137150
  optional: pageNode.optional,
136978
137151
  pageActions: pageNode.pageActions,
137152
+ hideEnableAutoValues: pageNode.hideEnableAutoValues,
136979
137153
  showOnDemand: pageNode.showOnDemand,
136980
137154
  onNavigateFromErrorLog: context.generateHelperFunctionExpressionWithoutContext(pageNode, "onNavigateFromErrorLog", pageNode.onNavigateFromErrorLog)
136981
137155
  };
@@ -137087,6 +137261,10 @@ class FormConverter extends _SugarNodeConverter__WEBPACK_IMPORTED_MODULE_7__.Sug
137087
137261
  markupBuilder.prop(x => x.pageActions).set(pageNode.pageActions);
137088
137262
  }
137089
137263
 
137264
+ if (pageNode.hideEnableAutoValues != undefined) {
137265
+ markupBuilder.prop(x => x.hideEnableAutoValues).set(pageNode.hideEnableAutoValues);
137266
+ }
137267
+
137090
137268
  const pageMarkupBuilder = (0,_ComponentMarkupBuilder_ComponentMarkupBuilder__WEBPACK_IMPORTED_MODULE_5__.componentMarkupBuilder)([], this.getPageName(pageNode));
137091
137269
  markupBuilder.appendChild(pageMarkupBuilder);
137092
137270
  markupBuilder.appendChildren(pageNode.pages.map(x => this.buildPageUnit(node, x)));
@@ -137924,19 +138102,18 @@ class PageConverter extends _SugarNodeConverter__WEBPACK_IMPORTED_MODULE_4__.Sug
137924
138102
  return false;
137925
138103
  }
137926
138104
 
137927
- *doBuildNormalizeRules(builder) {
138105
+ *doBuildNormalizeRules(builder, formSchemaRng) {
137928
138106
  const node = this.getCurrentNodeAs(_PageNode__WEBPACK_IMPORTED_MODULE_14__.PageNode);
138107
+ const element = formSchemaRng.getElementByPath(node.getFullPath());
137929
138108
 
137930
138109
  if (node.path == undefined) {
137931
138110
  return;
137932
138111
  }
137933
138112
 
137934
138113
  if (node.multiple) {
137935
- var _node$optional;
137936
-
137937
- yield* builder.childrenInitializer(node, (_node$optional = node.optional) !== null && _node$optional !== void 0 ? _node$optional : false);
138114
+ const isOptional = node.optional == undefined ? element === null || element === void 0 ? void 0 : element.isOptional() : node.optional;
138115
+ yield* builder.childrenInitializer(node, isOptional !== null && isOptional !== void 0 ? isOptional : false);
137938
138116
  yield* builder.specialFieldsInitializer(node, {
137939
- optional: node.optional,
137940
138117
  disabled: undefined
137941
138118
  });
137942
138119
  }
@@ -138094,7 +138271,7 @@ __webpack_require__.r(__webpack_exports__);
138094
138271
 
138095
138272
 
138096
138273
 
138097
- var _dec, _dec2, _dec3, _dec4, _dec5, _dec6, _dec7, _dec8, _dec9, _dec10, _dec11, _dec12, _dec13, _dec14, _dec15, _dec16, _dec17, _dec18, _dec19, _dec20, _dec21, _dec22, _dec23, _dec24, _class, _class2, _descriptor, _descriptor2, _descriptor3, _descriptor4, _descriptor5, _descriptor6, _descriptor7, _descriptor8, _descriptor9, _descriptor10, _descriptor11, _descriptor12, _descriptor13, _descriptor14, _descriptor15, _descriptor16, _descriptor17, _descriptor18, _descriptor19, _descriptor20, _descriptor21, _descriptor22, _descriptor23;
138274
+ var _dec, _dec2, _dec3, _dec4, _dec5, _dec6, _dec7, _dec8, _dec9, _dec10, _dec11, _dec12, _dec13, _dec14, _dec15, _dec16, _dec17, _dec18, _dec19, _dec20, _dec21, _dec22, _dec23, _dec24, _dec25, _class, _class2, _descriptor, _descriptor2, _descriptor3, _descriptor4, _descriptor5, _descriptor6, _descriptor7, _descriptor8, _descriptor9, _descriptor10, _descriptor11, _descriptor12, _descriptor13, _descriptor14, _descriptor15, _descriptor16, _descriptor17, _descriptor18, _descriptor19, _descriptor20, _descriptor21, _descriptor22, _descriptor23, _descriptor24;
138098
138275
 
138099
138276
 
138100
138277
 
@@ -138102,7 +138279,7 @@ var _dec, _dec2, _dec3, _dec4, _dec5, _dec6, _dec7, _dec8, _dec9, _dec10, _dec11
138102
138279
 
138103
138280
 
138104
138281
 
138105
- let PageNode = (_dec = (0,_Serializer_SugarSerializer__WEBPACK_IMPORTED_MODULE_5__.sugarNode)("page", `Страница (раздел)`, __webpack_require__("./Generator/src/generators/markupGenerator/ElementProcessors/FormParts/Page sync recursive .md$")), _dec2 = (0,_Serializer_SugarSerializer__WEBPACK_IMPORTED_MODULE_5__.attr)("id", _Serializer_SugarSerializer__WEBPACK_IMPORTED_MODULE_5__.attrType.string.required, `Уникальный идентификатор странцы. Все страницы в форме должны иметь уникальный идентификатор. 1111`), _dec3 = (0,_Serializer_SugarSerializer__WEBPACK_IMPORTED_MODULE_5__.attr)("template", _Serializer_SugarSerializer__WEBPACK_IMPORTED_MODULE_5__.attrType["enum"]("default", "title", "multiple", "diadoc"), 'Для множественных разделов необходимо указать `template="multiple"`, для обычных разделов `template="default"`'), _dec4 = (0,_Serializer_SugarSerializer__WEBPACK_IMPORTED_MODULE_5__.attr)("path", _Serializer_SugarSerializer__WEBPACK_IMPORTED_MODULE_5__.attrType.string, `${(0,_Commons_DocumentationLinks__WEBPACK_IMPORTED_MODULE_6__.docLink)(_Commons_DocumentationLinks__WEBPACK_IMPORTED_MODULE_6__.bindingPathLink)} данного элемента`), _dec5 = (0,_Serializer_SugarSerializer__WEBPACK_IMPORTED_MODULE_5__.singleChild)("headerpanel", [_UnitParts_HeaderPanel_HeaderPanelNode__WEBPACK_IMPORTED_MODULE_3__.HeaderPanelNode]), _dec6 = (0,_Serializer_SugarSerializer__WEBPACK_IMPORTED_MODULE_5__.deprecatedAttr)("title", _Serializer_DeprecationReason__WEBPACK_IMPORTED_MODULE_4__.DeprecationReason.Removed), _dec7 = (0,_Serializer_SugarSerializer__WEBPACK_IMPORTED_MODULE_5__.deprecatedAttr)("formName", _Serializer_DeprecationReason__WEBPACK_IMPORTED_MODULE_4__.DeprecationReason.Removed), _dec8 = (0,_Serializer_SugarSerializer__WEBPACK_IMPORTED_MODULE_5__.attr)("showOnDemand", _Serializer_SugarSerializer__WEBPACK_IMPORTED_MODULE_5__.attrType.boolean, `Раздел не будет отображаться на странице, пока не будет вызван явно. Например, через механизм отображения раздела в разделе.`), _dec9 = (0,_Serializer_SugarSerializer__WEBPACK_IMPORTED_MODULE_5__.attr)("onNavigateFromErrorLog", _Serializer_SugarSerializer__WEBPACK_IMPORTED_MODULE_5__.attrType.helperFunctionName, "Имя кастомной helpers функции, которая вызовется перед попыткой навигации в контрол внутри раздела"), _dec10 = (0,_Serializer_SugarSerializer__WEBPACK_IMPORTED_MODULE_5__.attr)("orientation", _Serializer_SugarSerializer__WEBPACK_IMPORTED_MODULE_5__.attrType["enum"]("landscape"), `Ориентация страницы. При значении landscape станницы займёт всю доступную ширину экрана`), _dec11 = (0,_Serializer_SugarSerializer__WEBPACK_IMPORTED_MODULE_5__.attr)("navigationName", _Serializer_SugarSerializer__WEBPACK_IMPORTED_MODULE_5__.attrType.localizedString, `Название Раздела в меню, если в сахаре есть отдельное описание навигации (unitList), то указывать не нужно`), _dec12 = (0,_Serializer_SugarSerializer__WEBPACK_IMPORTED_MODULE_5__.attr)("height", _Serializer_SugarSerializer__WEBPACK_IMPORTED_MODULE_5__.attrType.number, `Начальная высота раздела`), _dec13 = (0,_Serializer_SugarSerializer__WEBPACK_IMPORTED_MODULE_5__.attr)("minHeight", _Serializer_SugarSerializer__WEBPACK_IMPORTED_MODULE_5__.attrType.number, `Минимальная высота раздела`), _dec14 = (0,_Serializer_SugarSerializer__WEBPACK_IMPORTED_MODULE_5__.attr)("multiple", _Serializer_SugarSerializer__WEBPACK_IMPORTED_MODULE_5__.attrType.boolean, `Обозначение множественного раздела`), _dec15 = (0,_Serializer_SugarSerializer__WEBPACK_IMPORTED_MODULE_5__.attr)("unitsCountForPaging", _Serializer_SugarSerializer__WEBPACK_IMPORTED_MODULE_5__.attrType.number, `Количество инстансов множественного раздела на котором включается паджинация раздела`), _dec16 = (0,_Serializer_SugarSerializer__WEBPACK_IMPORTED_MODULE_5__.attr)("multipleAppearance", _Serializer_SugarSerializer__WEBPACK_IMPORTED_MODULE_5__.attrType["enum"]("nested", "flat"), "Представление множественных разделов: вложенное или плоское"), _dec17 = (0,_Serializer_SugarSerializer__WEBPACK_IMPORTED_MODULE_5__.attr)("optional", _Serializer_SugarSerializer__WEBPACK_IMPORTED_MODULE_5__.attrType.boolean, `Опциональный раздел`), _dec18 = (0,_Serializer_SugarSerializer__WEBPACK_IMPORTED_MODULE_5__.attr)("pageActions", _Serializer_SugarSerializer__WEBPACK_IMPORTED_MODULE_5__.attrType.objectLiteral(), `Атрибут для кастомизации действий с разделом`), _dec19 = (0,_Serializer_SugarSerializer__WEBPACK_IMPORTED_MODULE_5__.attr)("navigationLimit", _Serializer_SugarSerializer__WEBPACK_IMPORTED_MODULE_5__.attrType.number, `Количество экземпляров множественного раздела после которого в левом меню будет включаться компактный режим отображения разделов. По умолчанию: 15. Используется только для множественных разделов`), _dec20 = (0,_Serializer_SugarSerializer__WEBPACK_IMPORTED_MODULE_5__.attr)("addingHint", _Serializer_SugarSerializer__WEBPACK_IMPORTED_MODULE_5__.attrType.localizedString, `Подсказка на кнопке добавления раздела в боковом меню. Используется только для множественных разделов`), _dec21 = (0,_Serializer_SugarSerializer__WEBPACK_IMPORTED_MODULE_5__.children)("page"), _dec22 = (0,_Serializer_SugarSerializer__WEBPACK_IMPORTED_MODULE_5__.children)(), _dec23 = (0,_Serializer_SugarSerializer__WEBPACK_IMPORTED_MODULE_5__.singleChild)("title", [_PageTitleNode__WEBPACK_IMPORTED_MODULE_8__.PageTitleNode]), _dec24 = (0,_Serializer_SugarSerializer__WEBPACK_IMPORTED_MODULE_5__.attr)("visible", _Serializer_SugarSerializer__WEBPACK_IMPORTED_MODULE_5__.attrType.javascriptExpression, `${(0,_Commons_DocumentationLinks__WEBPACK_IMPORTED_MODULE_6__.docLink)(_Commons_DocumentationLinks__WEBPACK_IMPORTED_MODULE_6__.javaScriptExpressionLink)} для условного скрытия раздела`), _dec(_class = (_class2 = class PageNode extends _Serializer_SugarSerializer__WEBPACK_IMPORTED_MODULE_5__.SugarNodeBase {
138282
+ let PageNode = (_dec = (0,_Serializer_SugarSerializer__WEBPACK_IMPORTED_MODULE_5__.sugarNode)("page", `Страница (раздел)`, __webpack_require__("./Generator/src/generators/markupGenerator/ElementProcessors/FormParts/Page sync recursive .md$")), _dec2 = (0,_Serializer_SugarSerializer__WEBPACK_IMPORTED_MODULE_5__.attr)("id", _Serializer_SugarSerializer__WEBPACK_IMPORTED_MODULE_5__.attrType.string.required, `Уникальный идентификатор странцы. Все страницы в форме должны иметь уникальный идентификатор. 1111`), _dec3 = (0,_Serializer_SugarSerializer__WEBPACK_IMPORTED_MODULE_5__.attr)("template", _Serializer_SugarSerializer__WEBPACK_IMPORTED_MODULE_5__.attrType["enum"]("default", "title", "multiple", "diadoc"), 'Для множественных разделов необходимо указать `template="multiple"`, для обычных разделов `template="default"`'), _dec4 = (0,_Serializer_SugarSerializer__WEBPACK_IMPORTED_MODULE_5__.attr)("path", _Serializer_SugarSerializer__WEBPACK_IMPORTED_MODULE_5__.attrType.string, `${(0,_Commons_DocumentationLinks__WEBPACK_IMPORTED_MODULE_6__.docLink)(_Commons_DocumentationLinks__WEBPACK_IMPORTED_MODULE_6__.bindingPathLink)} данного элемента`), _dec5 = (0,_Serializer_SugarSerializer__WEBPACK_IMPORTED_MODULE_5__.singleChild)("headerpanel", [_UnitParts_HeaderPanel_HeaderPanelNode__WEBPACK_IMPORTED_MODULE_3__.HeaderPanelNode]), _dec6 = (0,_Serializer_SugarSerializer__WEBPACK_IMPORTED_MODULE_5__.deprecatedAttr)("title", _Serializer_DeprecationReason__WEBPACK_IMPORTED_MODULE_4__.DeprecationReason.Removed), _dec7 = (0,_Serializer_SugarSerializer__WEBPACK_IMPORTED_MODULE_5__.deprecatedAttr)("formName", _Serializer_DeprecationReason__WEBPACK_IMPORTED_MODULE_4__.DeprecationReason.Removed), _dec8 = (0,_Serializer_SugarSerializer__WEBPACK_IMPORTED_MODULE_5__.attr)("showOnDemand", _Serializer_SugarSerializer__WEBPACK_IMPORTED_MODULE_5__.attrType.boolean, `Раздел не будет отображаться на странице, пока не будет вызван явно. Например, через механизм отображения раздела в разделе.`), _dec9 = (0,_Serializer_SugarSerializer__WEBPACK_IMPORTED_MODULE_5__.attr)("onNavigateFromErrorLog", _Serializer_SugarSerializer__WEBPACK_IMPORTED_MODULE_5__.attrType.helperFunctionName, "Имя кастомной helpers функции, которая вызовется перед попыткой навигации в контрол внутри раздела"), _dec10 = (0,_Serializer_SugarSerializer__WEBPACK_IMPORTED_MODULE_5__.attr)("orientation", _Serializer_SugarSerializer__WEBPACK_IMPORTED_MODULE_5__.attrType["enum"]("landscape"), `Ориентация страницы. При значении landscape станницы займёт всю доступную ширину экрана`), _dec11 = (0,_Serializer_SugarSerializer__WEBPACK_IMPORTED_MODULE_5__.attr)("navigationName", _Serializer_SugarSerializer__WEBPACK_IMPORTED_MODULE_5__.attrType.localizedString, `Название Раздела в меню, если в сахаре есть отдельное описание навигации (unitList), то указывать не нужно`), _dec12 = (0,_Serializer_SugarSerializer__WEBPACK_IMPORTED_MODULE_5__.attr)("height", _Serializer_SugarSerializer__WEBPACK_IMPORTED_MODULE_5__.attrType.number, `Начальная высота раздела`), _dec13 = (0,_Serializer_SugarSerializer__WEBPACK_IMPORTED_MODULE_5__.attr)("minHeight", _Serializer_SugarSerializer__WEBPACK_IMPORTED_MODULE_5__.attrType.number, `Минимальная высота раздела`), _dec14 = (0,_Serializer_SugarSerializer__WEBPACK_IMPORTED_MODULE_5__.attr)("multiple", _Serializer_SugarSerializer__WEBPACK_IMPORTED_MODULE_5__.attrType.boolean, `Обозначение множественного раздела`), _dec15 = (0,_Serializer_SugarSerializer__WEBPACK_IMPORTED_MODULE_5__.attr)("unitsCountForPaging", _Serializer_SugarSerializer__WEBPACK_IMPORTED_MODULE_5__.attrType.number, `Количество инстансов множественного раздела на котором включается паджинация раздела`), _dec16 = (0,_Serializer_SugarSerializer__WEBPACK_IMPORTED_MODULE_5__.attr)("multipleAppearance", _Serializer_SugarSerializer__WEBPACK_IMPORTED_MODULE_5__.attrType["enum"]("nested", "flat"), "Представление множественных разделов: вложенное или плоское"), _dec17 = (0,_Serializer_SugarSerializer__WEBPACK_IMPORTED_MODULE_5__.attr)("optional", _Serializer_SugarSerializer__WEBPACK_IMPORTED_MODULE_5__.attrType.boolean, `Опциональный раздел`), _dec18 = (0,_Serializer_SugarSerializer__WEBPACK_IMPORTED_MODULE_5__.attr)("pageActions", _Serializer_SugarSerializer__WEBPACK_IMPORTED_MODULE_5__.attrType.objectLiteral(), `Атрибут для кастомизации действий с разделом`), _dec19 = (0,_Serializer_SugarSerializer__WEBPACK_IMPORTED_MODULE_5__.attr)("hideEnableAutoValues", _Serializer_SugarSerializer__WEBPACK_IMPORTED_MODULE_5__.attrType.boolean, `Всегда скрывать кнопку "Включить авторасчет", даже при включенной серверной нормализации`), _dec20 = (0,_Serializer_SugarSerializer__WEBPACK_IMPORTED_MODULE_5__.attr)("navigationLimit", _Serializer_SugarSerializer__WEBPACK_IMPORTED_MODULE_5__.attrType.number, `Количество экземпляров множественного раздела после которого в левом меню будет включаться компактный режим отображения разделов. По умолчанию: 15. Используется только для множественных разделов`), _dec21 = (0,_Serializer_SugarSerializer__WEBPACK_IMPORTED_MODULE_5__.attr)("addingHint", _Serializer_SugarSerializer__WEBPACK_IMPORTED_MODULE_5__.attrType.localizedString, `Подсказка на кнопке добавления раздела в боковом меню. Используется только для множественных разделов`), _dec22 = (0,_Serializer_SugarSerializer__WEBPACK_IMPORTED_MODULE_5__.children)("page"), _dec23 = (0,_Serializer_SugarSerializer__WEBPACK_IMPORTED_MODULE_5__.children)(), _dec24 = (0,_Serializer_SugarSerializer__WEBPACK_IMPORTED_MODULE_5__.singleChild)("title", [_PageTitleNode__WEBPACK_IMPORTED_MODULE_8__.PageTitleNode]), _dec25 = (0,_Serializer_SugarSerializer__WEBPACK_IMPORTED_MODULE_5__.attr)("visible", _Serializer_SugarSerializer__WEBPACK_IMPORTED_MODULE_5__.attrType.javascriptExpression, `${(0,_Commons_DocumentationLinks__WEBPACK_IMPORTED_MODULE_6__.docLink)(_Commons_DocumentationLinks__WEBPACK_IMPORTED_MODULE_6__.javaScriptExpressionLink)} для условного скрытия раздела`), _dec(_class = (_class2 = class PageNode extends _Serializer_SugarSerializer__WEBPACK_IMPORTED_MODULE_5__.SugarNodeBase {
138106
138283
  constructor(...args) {
138107
138284
  super(...args);
138108
138285
 
@@ -138140,17 +138317,19 @@ let PageNode = (_dec = (0,_Serializer_SugarSerializer__WEBPACK_IMPORTED_MODULE_5
138140
138317
 
138141
138318
  _babel_runtime_helpers_initializerDefineProperty__WEBPACK_IMPORTED_MODULE_0___default()(this, "pageActions", _descriptor17, this);
138142
138319
 
138143
- _babel_runtime_helpers_initializerDefineProperty__WEBPACK_IMPORTED_MODULE_0___default()(this, "navigationLimit", _descriptor18, this);
138320
+ _babel_runtime_helpers_initializerDefineProperty__WEBPACK_IMPORTED_MODULE_0___default()(this, "hideEnableAutoValues", _descriptor18, this);
138144
138321
 
138145
- _babel_runtime_helpers_initializerDefineProperty__WEBPACK_IMPORTED_MODULE_0___default()(this, "addingHint", _descriptor19, this);
138322
+ _babel_runtime_helpers_initializerDefineProperty__WEBPACK_IMPORTED_MODULE_0___default()(this, "navigationLimit", _descriptor19, this);
138146
138323
 
138147
- _babel_runtime_helpers_initializerDefineProperty__WEBPACK_IMPORTED_MODULE_0___default()(this, "pages", _descriptor20, this);
138324
+ _babel_runtime_helpers_initializerDefineProperty__WEBPACK_IMPORTED_MODULE_0___default()(this, "addingHint", _descriptor20, this);
138148
138325
 
138149
- _babel_runtime_helpers_initializerDefineProperty__WEBPACK_IMPORTED_MODULE_0___default()(this, "children", _descriptor21, this);
138326
+ _babel_runtime_helpers_initializerDefineProperty__WEBPACK_IMPORTED_MODULE_0___default()(this, "pages", _descriptor21, this);
138150
138327
 
138151
- _babel_runtime_helpers_initializerDefineProperty__WEBPACK_IMPORTED_MODULE_0___default()(this, "title", _descriptor22, this);
138328
+ _babel_runtime_helpers_initializerDefineProperty__WEBPACK_IMPORTED_MODULE_0___default()(this, "children", _descriptor22, this);
138152
138329
 
138153
- _babel_runtime_helpers_initializerDefineProperty__WEBPACK_IMPORTED_MODULE_0___default()(this, "visible", _descriptor23, this);
138330
+ _babel_runtime_helpers_initializerDefineProperty__WEBPACK_IMPORTED_MODULE_0___default()(this, "title", _descriptor23, this);
138331
+
138332
+ _babel_runtime_helpers_initializerDefineProperty__WEBPACK_IMPORTED_MODULE_0___default()(this, "visible", _descriptor24, this);
138154
138333
  }
138155
138334
 
138156
138335
  getOwnPath() {
@@ -138248,32 +138427,37 @@ let PageNode = (_dec = (0,_Serializer_SugarSerializer__WEBPACK_IMPORTED_MODULE_5
138248
138427
  enumerable: true,
138249
138428
  writable: true,
138250
138429
  initializer: null
138251
- }), _descriptor18 = _babel_runtime_helpers_applyDecoratedDescriptor__WEBPACK_IMPORTED_MODULE_1___default()(_class2.prototype, "navigationLimit", [_dec19], {
138430
+ }), _descriptor18 = _babel_runtime_helpers_applyDecoratedDescriptor__WEBPACK_IMPORTED_MODULE_1___default()(_class2.prototype, "hideEnableAutoValues", [_dec19], {
138252
138431
  configurable: true,
138253
138432
  enumerable: true,
138254
138433
  writable: true,
138255
138434
  initializer: null
138256
- }), _descriptor19 = _babel_runtime_helpers_applyDecoratedDescriptor__WEBPACK_IMPORTED_MODULE_1___default()(_class2.prototype, "addingHint", [_dec20], {
138435
+ }), _descriptor19 = _babel_runtime_helpers_applyDecoratedDescriptor__WEBPACK_IMPORTED_MODULE_1___default()(_class2.prototype, "navigationLimit", [_dec20], {
138257
138436
  configurable: true,
138258
138437
  enumerable: true,
138259
138438
  writable: true,
138260
138439
  initializer: null
138261
- }), _descriptor20 = _babel_runtime_helpers_applyDecoratedDescriptor__WEBPACK_IMPORTED_MODULE_1___default()(_class2.prototype, "pages", [_dec21], {
138440
+ }), _descriptor20 = _babel_runtime_helpers_applyDecoratedDescriptor__WEBPACK_IMPORTED_MODULE_1___default()(_class2.prototype, "addingHint", [_dec21], {
138262
138441
  configurable: true,
138263
138442
  enumerable: true,
138264
138443
  writable: true,
138265
138444
  initializer: null
138266
- }), _descriptor21 = _babel_runtime_helpers_applyDecoratedDescriptor__WEBPACK_IMPORTED_MODULE_1___default()(_class2.prototype, "children", [_dec22], {
138445
+ }), _descriptor21 = _babel_runtime_helpers_applyDecoratedDescriptor__WEBPACK_IMPORTED_MODULE_1___default()(_class2.prototype, "pages", [_dec22], {
138267
138446
  configurable: true,
138268
138447
  enumerable: true,
138269
138448
  writable: true,
138270
138449
  initializer: null
138271
- }), _descriptor22 = _babel_runtime_helpers_applyDecoratedDescriptor__WEBPACK_IMPORTED_MODULE_1___default()(_class2.prototype, "title", [_dec23], {
138450
+ }), _descriptor22 = _babel_runtime_helpers_applyDecoratedDescriptor__WEBPACK_IMPORTED_MODULE_1___default()(_class2.prototype, "children", [_dec23], {
138272
138451
  configurable: true,
138273
138452
  enumerable: true,
138274
138453
  writable: true,
138275
138454
  initializer: null
138276
- }), _descriptor23 = _babel_runtime_helpers_applyDecoratedDescriptor__WEBPACK_IMPORTED_MODULE_1___default()(_class2.prototype, "visible", [_dec24], {
138455
+ }), _descriptor23 = _babel_runtime_helpers_applyDecoratedDescriptor__WEBPACK_IMPORTED_MODULE_1___default()(_class2.prototype, "title", [_dec24], {
138456
+ configurable: true,
138457
+ enumerable: true,
138458
+ writable: true,
138459
+ initializer: null
138460
+ }), _descriptor24 = _babel_runtime_helpers_applyDecoratedDescriptor__WEBPACK_IMPORTED_MODULE_1___default()(_class2.prototype, "visible", [_dec25], {
138277
138461
  configurable: true,
138278
138462
  enumerable: true,
138279
138463
  writable: true,
@@ -143918,7 +144102,6 @@ class CrossfitTableConverter extends _SugarNodeConverter__WEBPACK_IMPORTED_MODUL
143918
144102
 
143919
144103
  yield* builder.childrenInitializer(rowNode, (_rowNode$optional = rowNode.optional) !== null && _rowNode$optional !== void 0 ? _rowNode$optional : false, rowNode.defaultChildren);
143920
144104
  yield* builder.specialFieldsInitializer(rowNode, {
143921
- optional: rowNode.optional,
143922
144105
  disabled: undefined
143923
144106
  });
143924
144107
  }
@@ -147235,6 +147418,20 @@ class StickyTableWithMultilineConverter extends _SugarNodeConverter__WEBPACK_IMP
147235
147418
  return _StickyTableNode__WEBPACK_IMPORTED_MODULE_17__.StickyTableNode;
147236
147419
  }
147237
147420
 
147421
+ *doBuildNormalizeRules(builder, formSchemaRng) {
147422
+ const node = this.getCurrentNodeAs(_StickyTableNode__WEBPACK_IMPORTED_MODULE_17__.StickyTableNode);
147423
+
147424
+ for (const row of node.rows) {
147425
+ if (row instanceof _StickyTableNode__WEBPACK_IMPORTED_MODULE_17__.StickyTableMultilineNode) {
147426
+ var _ref;
147427
+
147428
+ const element = formSchemaRng.getElementByPath(row.getFullPath());
147429
+ const isOptional = (_ref = row.optional == undefined ? element === null || element === void 0 ? void 0 : element.isOptional() : row.optional) !== null && _ref !== void 0 ? _ref : false;
147430
+ yield* builder.childrenInitializer(row, isOptional);
147431
+ }
147432
+ }
147433
+ }
147434
+
147238
147435
  *doTraverseChildren() {
147239
147436
  const node = this.getCurrentNodeAs(_StickyTableNode__WEBPACK_IMPORTED_MODULE_17__.StickyTableNode);
147240
147437
 
@@ -147342,9 +147539,9 @@ class StickyTableWithMultilineConverter extends _SugarNodeConverter__WEBPACK_IMP
147342
147539
 
147343
147540
  processMultilineNode(context, rowNode) {
147344
147541
  if (rowNode instanceof _StickyTableNode__WEBPACK_IMPORTED_MODULE_17__.StickyTableMultilineNode) {
147345
- var _ref, _rowNode$optional;
147542
+ var _ref2, _rowNode$optional;
147346
147543
 
147347
- return context.mergeDataDeclaration(context.addPathDeclEntry(rowNode, [["children", context.initSequenceFactory.children((_ref = (_rowNode$optional = rowNode.optional) !== null && _rowNode$optional !== void 0 ? _rowNode$optional : context.isMultipleNodeOptionalFromScheme(rowNode.getFullPath())) !== null && _ref !== void 0 ? _ref : false, rowNode.defaultChildren)]]), rowNode.maxOccurs != undefined && /^\d+$/.test(rowNode.maxOccurs) && context.maxOccurs(rowNode.getFullPath(), rowNode.maxOccurs), context.addSpecialFieldsEntry(rowNode, {
147544
+ return context.mergeDataDeclaration(context.addPathDeclEntry(rowNode, [["children", context.initSequenceFactory.children((_ref2 = (_rowNode$optional = rowNode.optional) !== null && _rowNode$optional !== void 0 ? _rowNode$optional : context.isMultipleNodeOptionalFromScheme(rowNode.getFullPath())) !== null && _ref2 !== void 0 ? _ref2 : false, rowNode.defaultChildren)]]), rowNode.maxOccurs != undefined && /^\d+$/.test(rowNode.maxOccurs) && context.maxOccurs(rowNode.getFullPath(), rowNode.maxOccurs), context.addSpecialFieldsEntry(rowNode, {
147348
147545
  optional: rowNode.optional
147349
147546
  }), context.addPathSectionDeclarationEntry(rowNode), context.addVisibilityPathDeclEntryNew(rowNode), context.processChildrenDataDeclaration(rowNode.rows, rowNode2 => this.processMultilineRowNode(context, rowNode2)));
147350
147547
  }
@@ -147417,11 +147614,11 @@ class StickyTableWithMultilineConverter extends _SugarNodeConverter__WEBPACK_IMP
147417
147614
  const sideSize = (_node$side2 = node.side) !== null && _node$side2 !== void 0 ? _node$side2 : 0;
147418
147615
 
147419
147616
  if (this.isSimpleForm()) {
147420
- var _ref2, _node$deprecatedDiado;
147617
+ var _ref3, _node$deprecatedDiado;
147421
147618
 
147422
147619
  mb.prop(x => x.maxWidth).set(orientation === "landscape" ? maxWidth : undefined);
147423
147620
  mb.prop(x => x.sideSize).set(this.hasActionButton(node) && sideSize !== 0 ? sideSize + 1 : sideSize);
147424
- const width = (_ref2 = (_node$deprecatedDiado = node.deprecatedDiadocWidth) !== null && _node$deprecatedDiado !== void 0 ? _node$deprecatedDiado : node.width) !== null && _ref2 !== void 0 ? _ref2 : maxWidthSimpleForm;
147621
+ const width = (_ref3 = (_node$deprecatedDiado = node.deprecatedDiadocWidth) !== null && _node$deprecatedDiado !== void 0 ? _node$deprecatedDiado : node.width) !== null && _ref3 !== void 0 ? _ref3 : maxWidthSimpleForm;
147425
147622
  mb.prop(x => x.width).set(width);
147426
147623
  mb.prop(x => x.footerHeight).set(160);
147427
147624
  } else {
@@ -147710,10 +147907,10 @@ BindingPath: ${errorPath}`));
147710
147907
  if (this.isSimpleForm()) {
147711
147908
  mb.prop(x => x.buttonType).set(undefined);
147712
147909
  } else {
147713
- var _multiline$rowmenu, _ref3, _tableNode$removeButt;
147910
+ var _multiline$rowmenu, _ref4, _tableNode$removeButt;
147714
147911
 
147715
147912
  const rowMenu = (_multiline$rowmenu = multiline.rowmenu) !== null && _multiline$rowmenu !== void 0 ? _multiline$rowmenu : false;
147716
- const removebutton = (_ref3 = (_tableNode$removeButt = tableNode.removeButton) !== null && _tableNode$removeButt !== void 0 ? _tableNode$removeButt : multiline.removebutton) !== null && _ref3 !== void 0 ? _ref3 : true;
147913
+ const removebutton = (_ref4 = (_tableNode$removeButt = tableNode.removeButton) !== null && _tableNode$removeButt !== void 0 ? _tableNode$removeButt : multiline.removebutton) !== null && _ref4 !== void 0 ? _ref4 : true;
147717
147914
  mb.prop(x => x.buttonType).set(rowMenu ? "RowMenu" : removebutton ? "RemoveRowButton" : undefined);
147718
147915
  }
147719
147916
 
@@ -147736,7 +147933,7 @@ BindingPath: ${errorPath}`));
147736
147933
  }
147737
147934
 
147738
147935
  getMultiline(context, node, multiline, start, end = Infinity) {
147739
- var _ref4, _node$removeButton, _multiline$rowmenu2, _ref5, _node$removeButton2, _context$popPathsCont2;
147936
+ var _ref5, _node$removeButton, _multiline$rowmenu2, _ref6, _node$removeButton2, _context$popPathsCont2;
147740
147937
 
147741
147938
  const overrideInfo = multiline.override ? context.controlCustomizationContext.getControlCustomizationInfo("multiline", multiline.override) : undefined;
147742
147939
  const mb = overrideInfo == undefined ? (0,_ComponentMarkupBuilder_ComponentMarkupBuilder__WEBPACK_IMPORTED_MODULE_5__.componentMarkupBuilder)("MultiLine") : (0,_ComponentMarkupBuilder_ComponentMarkupBuilder__WEBPACK_IMPORTED_MODULE_5__.componentMarkupBuilder)(overrideInfo.dependencies, overrideInfo.controlName);
@@ -147750,7 +147947,7 @@ BindingPath: ${errorPath}`));
147750
147947
  mb.prop(x => x.bindingPath).set((0,_getBindingPath__WEBPACK_IMPORTED_MODULE_13__.getNewBindingPathExpression)(multiline));
147751
147948
  mb.prop(x => x.showRowBorder).set(multiline.showRowBorder);
147752
147949
  mb.prop(x => x.onRowCLick).set(context.generateHelperFunctionExpression(multiline, "onRowClick", multiline.onRowClick));
147753
- const hasRemoveButton = ((_ref4 = (_node$removeButton = node.removeButton) !== null && _node$removeButton !== void 0 ? _node$removeButton : multiline.removebutton) !== null && _ref4 !== void 0 ? _ref4 : true) || ((_multiline$rowmenu2 = multiline.rowmenu) !== null && _multiline$rowmenu2 !== void 0 ? _multiline$rowmenu2 : false);
147950
+ const hasRemoveButton = ((_ref5 = (_node$removeButton = node.removeButton) !== null && _node$removeButton !== void 0 ? _node$removeButton : multiline.removebutton) !== null && _ref5 !== void 0 ? _ref5 : true) || ((_multiline$rowmenu2 = multiline.rowmenu) !== null && _multiline$rowmenu2 !== void 0 ? _multiline$rowmenu2 : false);
147754
147951
  const needAddButton = multiline.addbutton !== "false";
147755
147952
 
147756
147953
  if (this.isSimpleForm()) {
@@ -147763,7 +147960,7 @@ BindingPath: ${errorPath}`));
147763
147960
  mb.prop(x => x.removeButtonPosition).set(undefined);
147764
147961
  }
147765
147962
 
147766
- mb.prop(x => x.disableScroll).set(needAddButton || ((_ref5 = (_node$removeButton2 = node.removeButton) !== null && _node$removeButton2 !== void 0 ? _node$removeButton2 : multiline.removebutton) !== null && _ref5 !== void 0 ? _ref5 : true) ? undefined : true);
147963
+ mb.prop(x => x.disableScroll).set(needAddButton || ((_ref6 = (_node$removeButton2 = node.removeButton) !== null && _node$removeButton2 !== void 0 ? _node$removeButton2 : multiline.removebutton) !== null && _ref6 !== void 0 ? _ref6 : true) ? undefined : true);
147767
147964
  context.pushPathsContext();
147768
147965
 
147769
147966
  if ((0,_Common_TypingUtils__WEBPACK_IMPORTED_MODULE_3__.arrayHasLength)(multiline.rows, 1)) {
@@ -147789,9 +147986,9 @@ BindingPath: ${errorPath}`));
147789
147986
  hasActionButton(node) {
147790
147987
  const multilines = node.rows.map(child => (0,_StickyTableNode__WEBPACK_IMPORTED_MODULE_17__.isMultilineNode)(child) ? child : child.columns.find(_StickyTableNode__WEBPACK_IMPORTED_MODULE_17__.isMultilineNode)).filter(_Common_TypingUtils__WEBPACK_IMPORTED_MODULE_3__.isNotNullOrUndefined);
147791
147988
  return multilines.some(multiline => {
147792
- var _ref6, _node$removeButton3;
147989
+ var _ref7, _node$removeButton3;
147793
147990
 
147794
- return ((_ref6 = (_node$removeButton3 = node.removeButton) !== null && _node$removeButton3 !== void 0 ? _node$removeButton3 : multiline.removebutton) !== null && _ref6 !== void 0 ? _ref6 : true) || multiline.rowmenu;
147991
+ return ((_ref7 = (_node$removeButton3 = node.removeButton) !== null && _node$removeButton3 !== void 0 ? _node$removeButton3 : multiline.removebutton) !== null && _ref7 !== void 0 ? _ref7 : true) || multiline.rowmenu;
147795
147992
  });
147796
147993
  }
147797
147994
 
@@ -148042,13 +148239,14 @@ class Table2MultirowConverter extends _SugarNodeConverter__WEBPACK_IMPORTED_MODU
148042
148239
  return markupBuilder.buildConverterResult();
148043
148240
  }
148044
148241
 
148045
- *doBuildNormalizeRules(builder) {
148046
- var _node$optional2;
148242
+ *doBuildNormalizeRules(builder, formSchemaRng) {
148243
+ var _ref2;
148047
148244
 
148048
148245
  const node = this.getCurrentNodeAs(_Table2Node__WEBPACK_IMPORTED_MODULE_3__.Table2MultirowNode);
148049
- yield* builder.childrenInitializer(node, (_node$optional2 = node.optional) !== null && _node$optional2 !== void 0 ? _node$optional2 : false);
148246
+ const element = formSchemaRng.getElementByPath(node.getFullPath());
148247
+ const isOptional = (_ref2 = node.optional == undefined ? element === null || element === void 0 ? void 0 : element.isOptional() : node.optional) !== null && _ref2 !== void 0 ? _ref2 : false;
148248
+ yield* builder.childrenInitializer(node, isOptional);
148050
148249
  yield* builder.specialFieldsInitializer(node, {
148051
- optional: node.optional,
148052
148250
  disabled: undefined
148053
148251
  });
148054
148252
  }
@@ -148863,13 +149061,14 @@ class TabsConverter extends _SugarNodeConverter__WEBPACK_IMPORTED_MODULE_2__.Sug
148863
149061
  return context.mergeDataDeclaration(context.addPathDeclEntry(node, [["children", context.initSequenceFactory.children((_ref = (_node$optional = node.optional) !== null && _node$optional !== void 0 ? _node$optional : context.isMultipleNodeOptionalFromScheme(node.getFullPath())) !== null && _ref !== void 0 ? _ref : false)]]), context.maxOccurs(node.getFullPath(), node.maxOccurs), context.addPathSectionDeclarationEntry(node));
148864
149062
  }
148865
149063
 
148866
- *doBuildNormalizeRules(builder) {
148867
- var _node$optional2;
149064
+ *doBuildNormalizeRules(builder, formSchemaRng) {
149065
+ var _ref2;
148868
149066
 
148869
149067
  const node = this.getCurrentNodeAs(_TabsNode__WEBPACK_IMPORTED_MODULE_4__.TabsNode);
148870
- yield* builder.childrenInitializer(node, (_node$optional2 = node.optional) !== null && _node$optional2 !== void 0 ? _node$optional2 : false);
149068
+ const element = formSchemaRng.getElementByPath(node.getFullPath());
149069
+ const isOptional = (_ref2 = node.optional == undefined ? element === null || element === void 0 ? void 0 : element.isOptional() : node.optional) !== null && _ref2 !== void 0 ? _ref2 : false;
149070
+ yield* builder.childrenInitializer(node, isOptional);
148871
149071
  yield* builder.specialFieldsInitializer(node, {
148872
- optional: node.optional,
148873
149072
  disabled: undefined
148874
149073
  });
148875
149074
  }
@@ -150198,7 +150397,6 @@ class CheckboxConverter extends _SugarNodeConverter__WEBPACK_IMPORTED_MODULE_1__
150198
150397
  doBuildNormalizeRules(builder) {
150199
150398
  const node = this.getCurrentNodeAs(_CheckboxNode__WEBPACK_IMPORTED_MODULE_5__.CheckboxNode);
150200
150399
  return [builder.valueInitializer(node, node.dataBinding, false), ...builder.specialFieldsInitializer(node, {
150201
- optional: node.dataBinding.optional,
150202
150400
  disabled: false
150203
150401
  })];
150204
150402
  }
@@ -150430,13 +150628,13 @@ class ComboBoxConverter extends _SugarNodeConverter__WEBPACK_IMPORTED_MODULE_2__
150430
150628
  doBuildNormalizeRules(builder) {
150431
150629
  const node = this.getCurrentNodeAs(_ComboBoxNode__WEBPACK_IMPORTED_MODULE_7__.ComboBoxNode);
150432
150630
  return [builder.valueInitializer(node, node.dataBinding, node.disabled), ...builder.specialFieldsInitializer(node, {
150433
- optional: node.dataBinding.optional,
150434
150631
  disabled: node.disabled
150435
150632
  })];
150436
150633
  }
150437
150634
 
150438
- doBuildFLangValidations(buildContext) {
150635
+ doBuildFLangValidations(buildContext, formSchemaRng) {
150439
150636
  const node = this.getCurrentNodeAs(_ComboBoxNode__WEBPACK_IMPORTED_MODULE_7__.ComboBoxNode);
150637
+ const element = formSchemaRng.getElementByPath(node.getFullPath());
150440
150638
  const targetPath = (0,_Common_ModelPath_ModelPath__WEBPACK_IMPORTED_MODULE_6__.createAbsoluteFromMask)(this.getResolvedBindingPath(node), _Common_ModelPath_ModelPath__WEBPACK_IMPORTED_MODULE_6__.PathTokens.each);
150441
150639
  const typeNode = buildContext.getTypeNode(node.validationInfo);
150442
150640
  const schemaTypeNode = buildContext.getSchemaTypeInfo(targetPath);
@@ -150445,7 +150643,7 @@ class ComboBoxConverter extends _SugarNodeConverter__WEBPACK_IMPORTED_MODULE_2__
150445
150643
  return [];
150446
150644
  }
150447
150645
 
150448
- return buildContext.buildBasicValidations(targetPath, typeNode, schemaTypeNode, node.validationInfo.optional);
150646
+ return buildContext.buildBasicValidations(targetPath, typeNode, schemaTypeNode, node.validationInfo.optional == undefined ? element === null || element === void 0 ? void 0 : element.isOptional() : node.validationInfo.optional);
150449
150647
  }
150450
150648
 
150451
150649
  buildChildrenDataDeclaration(context) {
@@ -150916,8 +151114,9 @@ class DateConverter extends _SugarNodeConverter__WEBPACK_IMPORTED_MODULE_1__.Sug
150916
151114
  return _DateNode__WEBPACK_IMPORTED_MODULE_6__.DateNode;
150917
151115
  }
150918
151116
 
150919
- doBuildFLangValidations(buildContext) {
151117
+ doBuildFLangValidations(buildContext, formSchemaRng) {
150920
151118
  const node = this.getCurrentNodeAs(_DateNode__WEBPACK_IMPORTED_MODULE_6__.DateNode);
151119
+ const element = formSchemaRng.getElementByPath(node.getFullPath());
150921
151120
  const targetPath = (0,_Common_ModelPath_ModelPath__WEBPACK_IMPORTED_MODULE_2__.createAbsoluteFromMask)(this.getResolvedBindingPath(node), _Common_ModelPath_ModelPath__WEBPACK_IMPORTED_MODULE_2__.PathTokens.each);
150922
151121
  const typeNode = buildContext.getTypeNode(node.validationInfo);
150923
151122
  const schemaTypeNode = buildContext.getSchemaTypeInfo(targetPath);
@@ -150926,7 +151125,7 @@ class DateConverter extends _SugarNodeConverter__WEBPACK_IMPORTED_MODULE_1__.Sug
150926
151125
  return [];
150927
151126
  }
150928
151127
 
150929
- return buildContext.buildBasicValidations(targetPath, typeNode, schemaTypeNode, node.validationInfo.optional);
151128
+ return buildContext.buildBasicValidations(targetPath, typeNode, schemaTypeNode, node.validationInfo.optional == undefined ? element === null || element === void 0 ? void 0 : element.isOptional() : node.validationInfo.optional);
150930
151129
  }
150931
151130
 
150932
151131
  doBuildNodeValidations(validationGenerator) {
@@ -150942,7 +151141,6 @@ class DateConverter extends _SugarNodeConverter__WEBPACK_IMPORTED_MODULE_1__.Sug
150942
151141
  doBuildNormalizeRules(builder) {
150943
151142
  const node = this.getCurrentNodeAs(_DateNode__WEBPACK_IMPORTED_MODULE_6__.DateNode);
150944
151143
  return [builder.valueInitializer(node, node.dataBinding, node.disabled), ...builder.specialFieldsInitializer(node, {
150945
- optional: node.dataBinding.optional,
150946
151144
  disabled: node.disabled
150947
151145
  })];
150948
151146
  }
@@ -152797,8 +152995,9 @@ class InputConverter extends _SugarNodeConverter__WEBPACK_IMPORTED_MODULE_2__.Su
152797
152995
  return [(0,_getBindingPath__WEBPACK_IMPORTED_MODULE_4__.getNewBindingPathExpression)(node)];
152798
152996
  }
152799
152997
 
152800
- doBuildFLangValidations(buildContext) {
152998
+ doBuildFLangValidations(buildContext, formSchemaRng) {
152801
152999
  const node = this.getCurrentNodeAs(_InputNode__WEBPACK_IMPORTED_MODULE_7__.InputNode);
153000
+ const element = formSchemaRng.getElementByPath(node.getFullPath());
152802
153001
  const targetPath = (0,_Common_ModelPath_ModelPath__WEBPACK_IMPORTED_MODULE_0__.createAbsoluteFromMask)(this.getResolvedBindingPath(node), _Common_ModelPath_ModelPath__WEBPACK_IMPORTED_MODULE_0__.PathTokens.each);
152803
153002
  const typeNode = buildContext.getTypeNode(node.validationInfo);
152804
153003
  const schemaTypeNode = buildContext.getSchemaTypeInfo(targetPath);
@@ -152807,7 +153006,7 @@ class InputConverter extends _SugarNodeConverter__WEBPACK_IMPORTED_MODULE_2__.Su
152807
153006
  return [];
152808
153007
  }
152809
153008
 
152810
- return buildContext.buildBasicValidations(targetPath, typeNode, schemaTypeNode, node.validationInfo.optional);
153009
+ return buildContext.buildBasicValidations(targetPath, typeNode, schemaTypeNode, node.validationInfo.optional == undefined ? element === null || element === void 0 ? void 0 : element.isOptional() : node.validationInfo.optional);
152811
153010
  }
152812
153011
 
152813
153012
  doBuildNodeValidations(validationGenerator) {
@@ -152826,7 +153025,6 @@ class InputConverter extends _SugarNodeConverter__WEBPACK_IMPORTED_MODULE_2__.Su
152826
153025
  doBuildNormalizeRules(builder) {
152827
153026
  const node = this.getCurrentNodeAs(_InputNode__WEBPACK_IMPORTED_MODULE_7__.InputNode);
152828
153027
  return [builder.valueInitializer(node, node.dataBinding, node.disabled), ...builder.specialFieldsInitializer(node, {
152829
- optional: node.dataBinding.optional,
152830
153028
  disabled: node.disabled
152831
153029
  })];
152832
153030
  }
@@ -153887,8 +154085,9 @@ class PicklistConverter extends _SugarNodeConverter__WEBPACK_IMPORTED_MODULE_3__
153887
154085
  return _PicklistNode__WEBPACK_IMPORTED_MODULE_6__.PicklistNode;
153888
154086
  }
153889
154087
 
153890
- doBuildFLangValidations(buildContext) {
154088
+ doBuildFLangValidations(buildContext, formSchemaRng) {
153891
154089
  const node = this.getCurrentNodeAs(_PicklistNode__WEBPACK_IMPORTED_MODULE_6__.PicklistNode);
154090
+ const element = formSchemaRng.getElementByPath(node.getFullPath());
153892
154091
  const targetPath = (0,_Common_ModelPath_ModelPath__WEBPACK_IMPORTED_MODULE_5__.createAbsoluteFromMask)(this.getResolvedBindingPath(node), _Common_ModelPath_ModelPath__WEBPACK_IMPORTED_MODULE_5__.PathTokens.each);
153893
154092
  const typeNode = buildContext.getTypeNode(node.validationInfo);
153894
154093
  const schemaTypeNode = buildContext.getSchemaTypeInfo(targetPath);
@@ -153897,7 +154096,7 @@ class PicklistConverter extends _SugarNodeConverter__WEBPACK_IMPORTED_MODULE_3__
153897
154096
  return [];
153898
154097
  }
153899
154098
 
153900
- return buildContext.buildBasicValidations(targetPath, typeNode, schemaTypeNode, node.validationInfo.optional);
154099
+ return buildContext.buildBasicValidations(targetPath, typeNode, schemaTypeNode, node.validationInfo.optional == undefined ? element === null || element === void 0 ? void 0 : element.isOptional() : node.validationInfo.optional);
153901
154100
  }
153902
154101
 
153903
154102
  doBuildNodeValidations(validationGenerator) {
@@ -153905,27 +154104,27 @@ class PicklistConverter extends _SugarNodeConverter__WEBPACK_IMPORTED_MODULE_3__
153905
154104
  validationGenerator.processValidations(this.getResolvedBindingPath(node), node.validationInfo.optional, validationGenerator.getTypeNode(node.validationInfo), node.gId, node.validationInfo.emptydescription, undefined);
153906
154105
  }
153907
154106
 
153908
- *doBuildNormalizeRules(builder) {
154107
+ *doBuildNormalizeRules(builder, formSchemaRng) {
154108
+ var _ref;
154109
+
153909
154110
  const node = this.getCurrentNodeAs(_PicklistNode__WEBPACK_IMPORTED_MODULE_6__.PicklistNode);
154111
+ const element = formSchemaRng.getElementByPath(node.getFullPath());
153910
154112
  yield builder.valueInitializer(node, node.dataBinding, false);
153911
- yield* builder.specialFieldsInitializer(node, {
153912
- optional: node.dataBinding.optional
153913
- });
154113
+ const isOptional = (_ref = node.dataBinding.optional == undefined ? element === null || element === void 0 ? void 0 : element.isOptional() : node.dataBinding.optional) !== null && _ref !== void 0 ? _ref : false;
154114
+ yield* builder.specialFieldsInitializer(node, {});
153914
154115
 
153915
154116
  if (node.multiple) {
153916
- var _node$dataBinding$opt;
153917
-
153918
- yield* builder.childrenInitializerForPicklist(node, (_node$dataBinding$opt = node.dataBinding.optional) !== null && _node$dataBinding$opt !== void 0 ? _node$dataBinding$opt : false);
154117
+ yield* builder.childrenInitializerForPicklist(node, isOptional);
153919
154118
  }
153920
154119
  }
153921
154120
 
153922
154121
  doBuildDataDeclaration(context) {
153923
- var _node$dataBinding$opt2;
154122
+ var _node$dataBinding$opt;
153924
154123
 
153925
154124
  const node = this.getCurrentNodeAs(_PicklistNode__WEBPACK_IMPORTED_MODULE_6__.PicklistNode);
153926
154125
  return context.mergeDataDeclaration(context.addPathDeclEntry(node, [["value", context.initSequenceFactory.dataValue(node.dataBinding, false)]]), context.addSpecialFieldsEntry(node, {
153927
154126
  optional: node.dataBinding.optional
153928
- }), context.addPathSectionDeclarationEntry(node, node.dataBinding.requisite), context.addVisibilityPathDeclEntryNew(node, node.dataBinding.requisite), context.addChildrenPathDeclEntry(node, node.dataBinding.path, (_node$dataBinding$opt2 = node.dataBinding.optional) !== null && _node$dataBinding$opt2 !== void 0 ? _node$dataBinding$opt2 : false, node.dataBinding.requisite));
154127
+ }), context.addPathSectionDeclarationEntry(node, node.dataBinding.requisite), context.addVisibilityPathDeclEntryNew(node, node.dataBinding.requisite), context.addChildrenPathDeclEntry(node, node.dataBinding.path, (_node$dataBinding$opt = node.dataBinding.optional) !== null && _node$dataBinding$opt !== void 0 ? _node$dataBinding$opt : false, node.dataBinding.requisite));
153929
154128
  }
153930
154129
 
153931
154130
  get nodePaths() {
@@ -154365,9 +154564,7 @@ class RadioGroupConverter extends _SugarNodeConverter__WEBPACK_IMPORTED_MODULE_1
154365
154564
 
154366
154565
  doBuildNormalizeRules(builder) {
154367
154566
  const node = this.getCurrentNodeAs(_RadioGroupNode__WEBPACK_IMPORTED_MODULE_5__.RadioGroupNode);
154368
- return [builder.valueInitializer(node, node.dataBinding, false), ...builder.specialFieldsInitializer(node, {
154369
- optional: node.dataBinding.optional
154370
- })];
154567
+ return [builder.valueInitializer(node, node.dataBinding, false), ...builder.specialFieldsInitializer(node, {})];
154371
154568
  }
154372
154569
 
154373
154570
  doBuildDataDeclaration(context) {
@@ -155126,8 +155323,9 @@ class TaxRebateConverter extends _SugarNodeConverter__WEBPACK_IMPORTED_MODULE_3_
155126
155323
  return [(0,_getBindingPath__WEBPACK_IMPORTED_MODULE_5__.getNewBindingPathExpression)(node)];
155127
155324
  }
155128
155325
 
155129
- doBuildFLangValidations(buildContext) {
155326
+ doBuildFLangValidations(buildContext, formSchemaRng) {
155130
155327
  const node = this.getCurrentNodeAs(_TaxRebateNode__WEBPACK_IMPORTED_MODULE_7__.TaxRebateNode);
155328
+ const element = formSchemaRng.getElementByPath(node.getFullPath());
155131
155329
  const targetPath = (0,_Common_ModelPath_ModelPath__WEBPACK_IMPORTED_MODULE_0__.createAbsoluteFromMask)(this.getResolvedBindingPath(node), _Common_ModelPath_ModelPath__WEBPACK_IMPORTED_MODULE_0__.PathTokens.each);
155132
155330
  const typeNode = buildContext.getTypeNode(node.validationInfo);
155133
155331
  const schemaTypeNode = buildContext.getSchemaTypeInfo(targetPath);
@@ -155136,7 +155334,7 @@ class TaxRebateConverter extends _SugarNodeConverter__WEBPACK_IMPORTED_MODULE_3_
155136
155334
  return [];
155137
155335
  }
155138
155336
 
155139
- return buildContext.buildBasicValidations(targetPath, typeNode, schemaTypeNode, node.validationInfo.optional);
155337
+ return buildContext.buildBasicValidations(targetPath, typeNode, schemaTypeNode, node.validationInfo.optional == undefined ? element === null || element === void 0 ? void 0 : element.isOptional() : node.validationInfo.optional);
155140
155338
  }
155141
155339
 
155142
155340
  doBuildNodeValidations(validationGenerator) {
@@ -155153,9 +155351,7 @@ class TaxRebateConverter extends _SugarNodeConverter__WEBPACK_IMPORTED_MODULE_3_
155153
155351
 
155154
155352
  doBuildNormalizeRules(builder) {
155155
155353
  const node = this.getCurrentNodeAs(_TaxRebateNode__WEBPACK_IMPORTED_MODULE_7__.TaxRebateNode);
155156
- return [builder.valueInitializer(node, node.dataBinding, undefined), ...builder.specialFieldsInitializer(node, {
155157
- optional: node.dataBinding.optional
155158
- })];
155354
+ return [builder.valueInitializer(node, node.dataBinding, undefined), ...builder.specialFieldsInitializer(node, {})];
155159
155355
  }
155160
155356
 
155161
155357
  buildChildrenDataDeclaration(context) {
@@ -155348,8 +155544,9 @@ class TextAreaConverter extends _SugarNodeConverter__WEBPACK_IMPORTED_MODULE_1__
155348
155544
  validationGenerator.processValidations(this.getResolvedBindingPath(node), node.validationInfo.optional, validationGenerator.getTypeNode(node.validationInfo), undefined, node.validationInfo.emptydescription, undefined);
155349
155545
  }
155350
155546
 
155351
- doBuildFLangValidations(buildContext) {
155547
+ doBuildFLangValidations(buildContext, formSchemaRng) {
155352
155548
  const node = this.getCurrentNodeAs(_TextAreaNode__WEBPACK_IMPORTED_MODULE_8__.TextAreaNode);
155549
+ const element = formSchemaRng.getElementByPath(node.getFullPath());
155353
155550
  const targetPath = (0,_Common_ModelPath_ModelPath__WEBPACK_IMPORTED_MODULE_5__.createAbsoluteFromMask)(this.getResolvedBindingPath(node), _Common_ModelPath_ModelPath__WEBPACK_IMPORTED_MODULE_5__.PathTokens.each);
155354
155551
  const typeNode = buildContext.getTypeNode(node.validationInfo);
155355
155552
  const schemaTypeNode = buildContext.getSchemaTypeInfo(targetPath);
@@ -155358,7 +155555,7 @@ class TextAreaConverter extends _SugarNodeConverter__WEBPACK_IMPORTED_MODULE_1__
155358
155555
  return [];
155359
155556
  }
155360
155557
 
155361
- return buildContext.buildBasicValidations(targetPath, typeNode, schemaTypeNode, node.validationInfo.optional);
155558
+ return buildContext.buildBasicValidations(targetPath, typeNode, schemaTypeNode, node.validationInfo.optional == undefined ? element === null || element === void 0 ? void 0 : element.isOptional() : node.validationInfo.optional);
155362
155559
  }
155363
155560
 
155364
155561
  doBuildDataDeclaration(context) {
@@ -157443,23 +157640,19 @@ function getPropertyDeserializers(targetClass) {
157443
157640
  function setPropertyDeserializer( // tslint:disable-next-line:ban-types
157444
157641
  nodeClass, propertyKey, prop) {
157445
157642
  Reflect.defineMetadata("x:" + propertyKey.toString(), prop, nodeClass, "deserializers");
157446
- } // tslint:disable-next-line:ban-types
157447
-
157643
+ }
157448
157644
  function setSugarNodeMetadata(targetClass, metadata) {
157449
157645
  // eslint-disable-next-line @typescript-eslint/no-unsafe-argument
157450
157646
  Reflect.defineMetadata(metadataKey, metadata, targetClass.prototype);
157451
- } // tslint:disable-next-line:ban-types
157452
-
157647
+ }
157453
157648
  function getSugarNodeMetadata(targetClass) {
157454
157649
  // eslint-disable-next-line @typescript-eslint/no-unsafe-argument,@typescript-eslint/no-unsafe-return
157455
157650
  return Reflect.getMetadata(metadataKey, targetClass.prototype);
157456
- } // tslint:disable-next-line:ban-types
157457
-
157651
+ }
157458
157652
  function setPropertiesContainerMetadata(targetClass, metadata) {
157459
157653
  // eslint-disable-next-line @typescript-eslint/no-unsafe-argument
157460
157654
  Reflect.defineMetadata(metadataKey, metadata, targetClass.prototype);
157461
- } // tslint:disable-next-line:ban-types
157462
-
157655
+ }
157463
157656
  function getPropertiesContainerMetadata(targetClass) {
157464
157657
  // eslint-disable-next-line @typescript-eslint/no-unsafe-argument,@typescript-eslint/no-unsafe-return
157465
157658
  return Reflect.getMetadata(metadataKey, targetClass.prototype);
@@ -159146,15 +159339,15 @@ class SugarNodeConverterBase {
159146
159339
  *getAttachmentPaths() {// no paths by default
159147
159340
  }
159148
159341
 
159149
- *buildFLangValidations(buildContext) {
159150
- yield* this.doBuildFLangValidations(buildContext);
159151
- yield* this.buildChildrenFLangValidations(buildContext);
159342
+ *buildFLangValidations(buildContext, formSchemaRng) {
159343
+ yield* this.doBuildFLangValidations(buildContext, formSchemaRng);
159344
+ yield* this.buildChildrenFLangValidations(buildContext, formSchemaRng);
159152
159345
  }
159153
159346
 
159154
159347
  doBuildNodeValidations(validationGenerator) {// noop
159155
159348
  }
159156
159349
 
159157
- doBuildFLangValidations(buildContext) {
159350
+ doBuildFLangValidations(buildContext, formSchemaRng) {
159158
159351
  return [];
159159
159352
  }
159160
159353
 
@@ -159205,8 +159398,8 @@ class SugarNodeConverterBase {
159205
159398
  return this.node.sourceXmlNode;
159206
159399
  }
159207
159400
 
159208
- *buildNormalizeRules(builder) {
159209
- yield* this.doBuildNormalizeRules(builder);
159401
+ *buildNormalizeRules(builder, formSchemaRng) {
159402
+ yield* this.doBuildNormalizeRules(builder, formSchemaRng);
159210
159403
 
159211
159404
  for (const child of this.traverseChildren()) {
159212
159405
  const controlConverterClass = (0,_AllConverters__WEBPACK_IMPORTED_MODULE_3__.getConverterByNodeClass)((0,_Serializer_SugarSerializer__WEBPACK_IMPORTED_MODULE_7__.getNodeClass)(child));
@@ -159223,12 +159416,12 @@ class SugarNodeConverterBase {
159223
159416
  }
159224
159417
  } else {
159225
159418
  const converter = new controlConverterClass(child);
159226
- yield* converter.buildNormalizeRules(builder);
159419
+ yield* converter.buildNormalizeRules(builder, formSchemaRng);
159227
159420
  }
159228
159421
  }
159229
159422
  }
159230
159423
 
159231
- doBuildNormalizeRules(builder) {
159424
+ doBuildNormalizeRules(builder, formSchemaRng) {
159232
159425
  return [];
159233
159426
  }
159234
159427
 
@@ -159276,7 +159469,7 @@ class SugarNodeConverterBase {
159276
159469
  }
159277
159470
  }
159278
159471
 
159279
- *buildChildrenFLangValidations(buildContext) {
159472
+ *buildChildrenFLangValidations(buildContext, formSchemaRng) {
159280
159473
  for (const child of this.doTraverseChildren()) {
159281
159474
  const controlConverterClass = (0,_AllConverters__WEBPACK_IMPORTED_MODULE_3__.getConverterByNodeClass)((0,_Serializer_SugarSerializer__WEBPACK_IMPORTED_MODULE_7__.getNodeClass)(child));
159282
159475
 
@@ -159285,7 +159478,7 @@ class SugarNodeConverterBase {
159285
159478
  }
159286
159479
 
159287
159480
  const converter = new controlConverterClass(child);
159288
- yield* converter.buildFLangValidations(buildContext);
159481
+ yield* converter.buildFLangValidations(buildContext, formSchemaRng);
159289
159482
  }
159290
159483
  }
159291
159484
 
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@kontur.candy/generator",
3
- "version": "4.271.0",
3
+ "version": "4.272.0-server-normalization-fixes.0",
4
4
  "description": "Candy forms generator",
5
5
  "author": "SKBKontur Candy Team",
6
6
  "private": false,