@kontur.candy/generator 4.261.0-error-log-lll.0 → 4.261.0-optional-nested-units.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 +14 -18
  2. package/package.json +1 -1
package/dist/index.js CHANGED
@@ -128659,14 +128659,16 @@ class DataDeclarationGenerationContext {
128659
128659
  const pageName = page === null || page === void 0 ? void 0 : page.id;
128660
128660
 
128661
128661
  if (!(node instanceof _markupGenerator_ElementProcessors_FormParts_Page_PageNode__WEBPACK_IMPORTED_MODULE_8__.PageNode)) {
128662
- if (page != undefined && page.multiple) {
128662
+ if (page != undefined) {
128663
128663
  return [{
128664
128664
  fn: `#getSectionFunction('${pageName}')#`
128665
128665
  }];
128666
128666
  }
128667
128667
  }
128668
128668
 
128669
- const sections = pageName != undefined ? [pageName] : [];
128669
+ const sections = pageName != undefined ? [{
128670
+ fn: `#getSectionFunction('${pageName}')#`
128671
+ }] : [];
128670
128672
 
128671
128673
  if (requisiteMode === RequisiteSectionMode.AsRequisiteAttribute) {
128672
128674
  if (requisite) {
@@ -136283,12 +136285,20 @@ class FormConverter extends _SugarNodeConverter__WEBPACK_IMPORTED_MODULE_7__.Sug
136283
136285
  }
136284
136286
 
136285
136287
  findOptionalSections(node) {
136286
- const optionalPages = node.pages.filter(page => page.optional && !page.multiple).map(page => page.id).filter(_Common_TypingUtils__WEBPACK_IMPORTED_MODULE_0__.isNotNullOrUndefined);
136288
+ const optionalPages = this.getAllPages(node.pages).filter(page => {
136289
+ var _page$optional;
136290
+
136291
+ return ((_page$optional = page.optional) !== null && _page$optional !== void 0 ? _page$optional : false) && !page.multiple;
136292
+ }).map(page => page.id).filter(_Common_TypingUtils__WEBPACK_IMPORTED_MODULE_0__.isNotNullOrUndefined);
136287
136293
  return optionalPages;
136288
136294
  }
136289
136295
 
136296
+ getAllPages(pages) {
136297
+ const allPages = pages.flatMap(page => this.getAllPages(page.pages));
136298
+ return pages.concat(allPages);
136299
+ }
136300
+
136290
136301
  buildBaseFormWithContent(context, formContent, formNode) {
136291
- this.assertHasNowOptionalNestedPagesInsideMultipleUnits(formNode);
136292
136302
  const pageNodes = this.getFormPages(formNode);
136293
136303
  const formMarkupBuilder = (0,_ComponentMarkupBuilder_ComponentMarkupBuilder__WEBPACK_IMPORTED_MODULE_5__.componentMarkupBuilder)("BaseForm");
136294
136304
 
@@ -136306,20 +136316,6 @@ class FormConverter extends _SugarNodeConverter__WEBPACK_IMPORTED_MODULE_7__.Sug
136306
136316
  return result;
136307
136317
  }
136308
136318
 
136309
- assertHasNowOptionalNestedPagesInsideMultipleUnits(formNode) {
136310
- function assert(pages, hasMultipleUnitsInParents) {
136311
- for (const page of pages) {
136312
- if (hasMultipleUnitsInParents && page.optional && !page.multiple) {
136313
- throw new Error(`Check page with id '${page.id}'. Optional nested pages not supported: actions 'add', 'remove', 'check is empty' does not work for optional nested of multiple instance`);
136314
- }
136315
-
136316
- assert(page.pages, hasMultipleUnitsInParents || !!page.multiple);
136317
- }
136318
- }
136319
-
136320
- assert(formNode.pages, false);
136321
- }
136322
-
136323
136319
  getFormPages(formNode) {
136324
136320
  const pages = [];
136325
136321
  const queue = [...formNode.pages];
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@kontur.candy/generator",
3
- "version": "4.261.0-error-log-lll.0",
3
+ "version": "4.261.0-optional-nested-units.0",
4
4
  "description": "Candy forms generator",
5
5
  "author": "SKBKontur Candy Team",
6
6
  "private": false,