@kontur.candy/generator 5.46.0-incremental-dictionaries.4 → 5.46.0-incremental-dictionaries.6

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 +24 -7
  2. package/package.json +1 -1
package/dist/index.js CHANGED
@@ -68592,6 +68592,7 @@ __webpack_require__.r(__webpack_exports__);
68592
68592
  /* harmony export */ ArgumentDeclarationExpression: () => (/* binding */ ArgumentDeclarationExpression),
68593
68593
  /* harmony export */ ArgumentReferenceExpression: () => (/* binding */ ArgumentReferenceExpression),
68594
68594
  /* harmony export */ ArrayExpression: () => (/* binding */ ArrayExpression),
68595
+ /* harmony export */ ArrayLengthExpression: () => (/* binding */ ArrayLengthExpression),
68595
68596
  /* harmony export */ BinaryBooleanExpression: () => (/* binding */ BinaryBooleanExpression),
68596
68597
  /* harmony export */ BinaryExpression: () => (/* binding */ BinaryExpression),
68597
68598
  /* harmony export */ BoolLiteralExpression: () => (/* binding */ BoolLiteralExpression),
@@ -69798,6 +69799,22 @@ class ArrayExpression extends FLangExpression {
69798
69799
  return `makeArray(${items})`;
69799
69800
  }
69800
69801
  }
69802
+ class ArrayLengthExpression extends FLangExpression {
69803
+ constructor(expression) {
69804
+ super();
69805
+ this.expression = void 0;
69806
+ this.expression = expression;
69807
+ }
69808
+ getType() {
69809
+ return BuildInTypeExpression.decimal;
69810
+ }
69811
+ *getChildNodes() {
69812
+ yield this.expression;
69813
+ }
69814
+ convertToString() {
69815
+ return `arrayLength(${this.expression.convertToString()})`;
69816
+ }
69817
+ }
69801
69818
  class ExistsExpression extends FLangExpression {
69802
69819
  constructor(source) {
69803
69820
  super();
@@ -70032,7 +70049,7 @@ function wrapWithArgumentsCondition(expression) {
70032
70049
  const allValueRefNodes = _Common_IterableUtils__WEBPACK_IMPORTED_MODULE_1__.IterUtils.concat([expression], getAllExpressionChildren(expression, childFilter)).map(x => x instanceof _FLangCodeDom__WEBPACK_IMPORTED_MODULE_3__.ValueReferenceExpression ? x : undefined).filter(_Common_TypingUtils__WEBPACK_IMPORTED_MODULE_2__.isNotNullOrUndefined);
70033
70050
  const uniquePaths = _Common_IterableUtils__WEBPACK_IMPORTED_MODULE_1__.IterUtils.distinctBy(allValueRefNodes, x => x.convertToString());
70034
70051
  const conditionExpression = _Common_IterableUtils__WEBPACK_IMPORTED_MODULE_1__.IterUtils.reduce(uniquePaths, (acc, curr) => {
70035
- const currExpr = new _FLangCodeDom__WEBPACK_IMPORTED_MODULE_3__.AndBinaryExpression(new _FLangCodeDom__WEBPACK_IMPORTED_MODULE_3__.NotEqExpression(new _FLangCodeDom__WEBPACK_IMPORTED_MODULE_3__.ValueReferenceExpression(curr.modePath, curr.valueName), new _FLangCodeDom__WEBPACK_IMPORTED_MODULE_3__.NullLiteralExpression()), new _FLangCodeDom__WEBPACK_IMPORTED_MODULE_3__.NotEqExpression(new _FLangCodeDom__WEBPACK_IMPORTED_MODULE_3__.ValueReferenceExpression(curr.modePath, curr.valueName), new _FLangCodeDom__WEBPACK_IMPORTED_MODULE_3__.StringLiteralExpression("")));
70052
+ const currExpr = new _FLangCodeDom__WEBPACK_IMPORTED_MODULE_3__.ExistsExpression(new _FLangCodeDom__WEBPACK_IMPORTED_MODULE_3__.ValueReferenceExpression(curr.modePath, curr.valueName));
70036
70053
  return acc != undefined ? new _FLangCodeDom__WEBPACK_IMPORTED_MODULE_3__.OrBinaryExpression(acc, currExpr) : currExpr;
70037
70054
  }, undefined);
70038
70055
  if (conditionExpression == undefined) {
@@ -70605,7 +70622,7 @@ class FormulaExpressionToFlangExpressionConverter {
70605
70622
  // Сейчас в АР иногда проверку на decimal значение делаем через [Значение != "Какая-то строка"]
70606
70623
  // Поэтому при такой проверке вычитываем поле "Значение" как строку
70607
70624
  if (left.getType() === _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_10__.BuildInTypeExpression.decimal && right.getType() === _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_10__.BuildInTypeExpression.string && left instanceof _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_10__.CastExpression && left.targetExpression instanceof _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_10__.ValueReferenceExpression) {
70608
- return new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_10__.EqExpression(left.targetExpression, right);
70625
+ return new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_10__.EqExpression((0,_FLang_FlangUtils__WEBPACK_IMPORTED_MODULE_9__.castOperandToStringIfNeed)(left.targetExpression), right);
70609
70626
  }
70610
70627
  return new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_10__.EqExpression((0,_FLang_FlangUtils__WEBPACK_IMPORTED_MODULE_9__.castOperandToStringIfNeed)(left), (0,_FLang_FlangUtils__WEBPACK_IMPORTED_MODULE_9__.castOperandToStringIfNeed)(right));
70611
70628
  }
@@ -71338,8 +71355,8 @@ __webpack_require__.r(__webpack_exports__);
71338
71355
  /* harmony import */ var _Engine_src_Engine_Core_PathUtils_PathUtils__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ../../../../../Engine/src/Engine/Core/PathUtils/PathUtils */ "./Engine/src/Engine/Core/PathUtils/PathUtils.ts");
71339
71356
  /* harmony import */ var _Common_ModelPath_ModelPathHelper__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ../../../../../Common/ModelPath/ModelPathHelper */ "./Common/ModelPath/ModelPathHelper.ts");
71340
71357
  /* harmony import */ var _Common_PathConstants__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ../../../../../Common/PathConstants */ "./Common/PathConstants.ts");
71341
- /* harmony import */ var _BaseRuleBuilder__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! ./BaseRuleBuilder */ "./Generator/src/generators/ServerSideFLangNormalization/RuleBuilders/BaseRuleBuilder.ts");
71342
- /* harmony import */ var _FLang_FlangUtils__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(/*! ../FLang/FlangUtils */ "./Generator/src/generators/ServerSideFLangNormalization/FLang/FlangUtils.ts");
71358
+ /* harmony import */ var _FLang_FlangUtils__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! ../FLang/FlangUtils */ "./Generator/src/generators/ServerSideFLangNormalization/FLang/FlangUtils.ts");
71359
+ /* harmony import */ var _BaseRuleBuilder__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(/*! ./BaseRuleBuilder */ "./Generator/src/generators/ServerSideFLangNormalization/RuleBuilders/BaseRuleBuilder.ts");
71343
71360
 
71344
71361
 
71345
71362
 
@@ -71351,7 +71368,7 @@ __webpack_require__.r(__webpack_exports__);
71351
71368
 
71352
71369
 
71353
71370
 
71354
- class OptionalSectionRulesBuilder extends _BaseRuleBuilder__WEBPACK_IMPORTED_MODULE_9__.BaseRuleBuilder {
71371
+ class OptionalSectionRulesBuilder extends _BaseRuleBuilder__WEBPACK_IMPORTED_MODULE_10__.BaseRuleBuilder {
71355
71372
  constructor(sugarRoot, dataDeclarationHelper) {
71356
71373
  super();
71357
71374
  this.sugarRoot = void 0;
@@ -71437,7 +71454,7 @@ class OptionalSectionRulesBuilder extends _BaseRuleBuilder__WEBPACK_IMPORTED_MOD
71437
71454
  const targetIsFilledPath = targetOptionalSection.path.joinWith(_Common_PathConstants__WEBPACK_IMPORTED_MODULE_8__.OptionalSectionFilledFieldName);
71438
71455
  if (!targetIsFilledPath.isEquals(targetPath)) {
71439
71456
  const targetIsFilledValueRef = new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_1__.ValueReferenceExpression(targetIsFilledPath.toCurrentIteration(), "value");
71440
- return new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_1__.SetStatement(rule.left, new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_1__.ConditionalExpression(new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_1__.EqExpression(targetIsFilledValueRef, new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_1__.StringLiteralExpression("1")), rule.right, new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_1__.NullLiteralExpression()));
71457
+ return new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_1__.SetStatement(rule.left, new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_1__.ConditionalExpression(new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_1__.EqExpression((0,_FLang_FlangUtils__WEBPACK_IMPORTED_MODULE_9__.castOperandToStringIfNeed)(targetIsFilledValueRef), new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_1__.StringLiteralExpression("1")), rule.right, new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_1__.NullLiteralExpression()));
71441
71458
  }
71442
71459
  }
71443
71460
  return rule;
@@ -71459,7 +71476,7 @@ class OptionalSectionRulesBuilder extends _BaseRuleBuilder__WEBPACK_IMPORTED_MOD
71459
71476
  var _pathGroup$, _pathGroup$map$reduce;
71460
71477
  const iterationEntry = (_pathGroup$ = pathGroup[0]) === null || _pathGroup$ === void 0 ? void 0 : _pathGroup$.lastIterationEntry;
71461
71478
  const pathCheckExpr = (_pathGroup$map$reduce = pathGroup.map(pathInfo => {
71462
- const pathValueRef = (0,_FLang_FlangUtils__WEBPACK_IMPORTED_MODULE_10__.makeNoDeps)(new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_1__.ValueReferenceExpression(pathInfo.path.toCurrentIteration(), "value"));
71479
+ const pathValueRef = (0,_FLang_FlangUtils__WEBPACK_IMPORTED_MODULE_9__.makeNoDeps)(new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_1__.ValueReferenceExpression(pathInfo.path.toCurrentIteration(), "value"));
71463
71480
  const checkExpression = new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_1__.NotEqExpression(pathValueRef, new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_1__.NullLiteralExpression());
71464
71481
  return checkExpression;
71465
71482
  }).reduce((acc, current) => acc == undefined ? current : new _FLang_FLangCodeDom__WEBPACK_IMPORTED_MODULE_1__.OrBinaryExpression(acc, current), undefined)) !== null && _pathGroup$map$reduce !== void 0 ? _pathGroup$map$reduce : (0,_Common_TypingUtils__WEBPACK_IMPORTED_MODULE_4__.reject)();
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@kontur.candy/generator",
3
- "version": "5.46.0-incremental-dictionaries.4",
3
+ "version": "5.46.0-incremental-dictionaries.6",
4
4
  "description": "Candy forms generator",
5
5
  "author": "SKBKontur Candy Team",
6
6
  "private": false,