@inseefr/lunatic 2.7.5 → 2.7.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 (77) hide show
  1. package/README.fr.md +1 -1
  2. package/README.md +6 -1
  3. package/lib/components/loop/block-for-loop.js +2 -0
  4. package/lib/components/loop/constant.js +10 -0
  5. package/lib/components/loop/roster-for-loop/roster-for-loop.js +42 -20
  6. package/lib/components/lunatic-components.js +45 -7
  7. package/lib/components/table/lunatic-table.js +5 -1
  8. package/lib/src/components/datepicker/lunatic-datepicker.d.ts +1 -1
  9. package/lib/src/components/loop/constant.d.ts +4 -0
  10. package/lib/src/components/loop/roster-for-loop/roster-for-loop.d.ts +1 -0
  11. package/lib/src/components/lunatic-components.d.ts +12 -5
  12. package/lib/src/components/type.d.ts +4 -1
  13. package/lib/src/use-lunatic/commons/compile-controls.d.ts +4 -3
  14. package/lib/src/use-lunatic/commons/fill-components/fill-component-required.d.ts +75 -70
  15. package/lib/src/use-lunatic/commons/fill-components/fill-from-state.d.ts +55 -50
  16. package/lib/src/use-lunatic/commons/fill-components/fill-iterations.d.ts +31 -26
  17. package/lib/src/use-lunatic/commons/fill-components/fill-specific-expression.d.ts +680 -73
  18. package/lib/src/use-lunatic/commons/use-components-from-state.d.ts +1 -1
  19. package/lib/src/use-lunatic/reducer/commons/is-loop-component.d.ts +2 -2
  20. package/lib/src/use-lunatic/reducer/controls/check-base-control.d.ts +2 -0
  21. package/lib/src/use-lunatic/reducer/{resolve-component-controls/resolve-roundabout-control.d.ts → controls/check-roundabout-control.d.ts} +2 -2
  22. package/lib/src/use-lunatic/type-source.d.ts +16 -10
  23. package/lib/src/use-lunatic/use-lunatic.d.ts +11 -5
  24. package/lib/stories/behaviour/controls/controls.stories.js +14 -7
  25. package/lib/stories/behaviour/controls/loop.json +130 -0
  26. package/lib/stories/behaviour/controls/{V2_ControlesNonNum_horsBoucle_PasPageFin.json → simple.json} +2 -2
  27. package/lib/stories/date-picker/source.json +22 -67
  28. package/lib/stories/declaration/source.json +14 -28
  29. package/lib/stories/dropdown/source.json +11 -28
  30. package/lib/stories/filter-description/source.json +3 -2
  31. package/lib/stories/input/input.stories.js +1 -8
  32. package/lib/stories/input/source.json +1 -63
  33. package/lib/stories/input-number/input-number.stories.js +2 -22
  34. package/lib/stories/input-number/source.json +4 -6
  35. package/lib/stories/loop/{block-for-loop.stories.js → loop.stories.js} +10 -8
  36. package/lib/stories/loop/roster-for-loop.stories.js +8 -2
  37. package/lib/stories/loop/source-bloc.json +10 -39
  38. package/lib/stories/loop/source-paginated.json +65 -78
  39. package/lib/stories/overview/overview.stories.js +1 -1
  40. package/lib/stories/pairwise/pairwise-links.stories.js +4 -4
  41. package/lib/stories/pairwise/{links.json → source.json} +2 -6
  42. package/lib/stories/{loop/not-paginated-loop.stories.js → question-context/question-context.stories.js} +5 -9
  43. package/lib/stories/question-context/source.json +13 -0
  44. package/lib/stories/question-explication/source.json +1 -1
  45. package/lib/stories/{loop/paginated-loop.stories.js → question-information/question-information.stories.js} +4 -4
  46. package/lib/stories/question-information/source.json +14 -0
  47. package/lib/stories/roundabout/source.json +21 -31
  48. package/lib/stories/sequence/sequence.stories.js +7 -1
  49. package/lib/stories/sequence/source.json +17 -0
  50. package/lib/stories/suggester/simple.json +1 -1
  51. package/lib/stories/table/source-colspan.json +314 -0
  52. package/lib/stories/table/table.stories.js +7 -1
  53. package/lib/stories/textarea/source.json +6 -22
  54. package/lib/use-lunatic/commons/compile-controls.js +135 -34
  55. package/lib/use-lunatic/commons/fill-components/fill-component-value.js +10 -0
  56. package/lib/use-lunatic/commons/fill-components/fill-specific-expression.js +4 -1
  57. package/lib/use-lunatic/hooks/use-page-has-response.js +17 -0
  58. package/lib/use-lunatic/reducer/{resolve-component-controls/resolve-simple-control.js → controls/check-base-control.js} +5 -7
  59. package/lib/use-lunatic/reducer/{resolve-component-controls/resolve-roundabout-control.js → controls/check-roundabout-control.js} +2 -3
  60. package/lib/use-lunatic/reducer/overview/overview-on-init.js +6 -4
  61. package/lib/use-lunatic/type-source.js +1 -0
  62. package/package.json +1 -1
  63. package/lib/src/use-lunatic/commons/get-errors-without-empty-value.d.ts +0 -6
  64. package/lib/src/use-lunatic/reducer/resolve-component-controls/index.d.ts +0 -1
  65. package/lib/src/use-lunatic/reducer/resolve-component-controls/resolve-component-control.d.ts +0 -6
  66. package/lib/src/use-lunatic/reducer/resolve-component-controls/resolve-simple-control.d.ts +0 -3
  67. package/lib/stories/Introduction.stories.mdx +0 -112
  68. package/lib/stories/behaviour/controls/V2_Controles_BouclesLiees_PasPageFin.json +0 -533
  69. package/lib/stories/input/source-with-question.json +0 -80
  70. package/lib/stories/input-number/source-euros.json +0 -37
  71. package/lib/stories/input-number/source-thansand.json +0 -34
  72. package/lib/stories/loop/source-not-paginated.json +0 -138
  73. package/lib/use-lunatic/commons/get-errors-without-empty-value.js +0 -24
  74. package/lib/use-lunatic/reducer/resolve-component-controls/index.js +0 -12
  75. package/lib/use-lunatic/reducer/resolve-component-controls/resolve-component-control.js +0 -38
  76. /package/lib/stories/behaviour/controls/{V2_ControlesNum_horsBoucle_PasPageFin.json → simple-numeric.json} +0 -0
  77. /package/lib/stories/pairwise/{links-componentset.json → source-componentset.json} +0 -0
@@ -39,11 +39,11 @@ declare function fillFromState(component: LunaticComponentDefinition, state: Lun
39
39
  goPreviousPage: () => void;
40
40
  label: import("../../type-source").LabelType;
41
41
  declarations?: import("../../type-source").DeclarationType[] | undefined;
42
- conditionFilter: import("../../type-source").ConditionFilterType;
42
+ conditionFilter?: import("../../type-source").ConditionFilterType | undefined;
43
43
  controls?: import("../../type-source").ControlType[] | undefined;
44
44
  id: string;
45
45
  bindingDependencies?: string[] | undefined;
46
- hierarchy: import("../../type-source").Hierarchy;
46
+ hierarchy?: import("../../type-source").Hierarchy | undefined;
47
47
  mandatory?: boolean | undefined;
48
48
  page: string;
49
49
  componentType: "Sequence";
@@ -75,11 +75,11 @@ declare function fillFromState(component: LunaticComponentDefinition, state: Lun
75
75
  goPreviousPage: () => void;
76
76
  label: import("../../type-source").LabelType;
77
77
  declarations?: import("../../type-source").DeclarationType[] | undefined;
78
- conditionFilter: import("../../type-source").ConditionFilterType;
78
+ conditionFilter?: import("../../type-source").ConditionFilterType | undefined;
79
79
  controls?: import("../../type-source").ControlType[] | undefined;
80
80
  id: string;
81
81
  bindingDependencies?: string[] | undefined;
82
- hierarchy: import("../../type-source").Hierarchy;
82
+ hierarchy?: import("../../type-source").Hierarchy | undefined;
83
83
  mandatory?: boolean | undefined;
84
84
  page: string;
85
85
  componentType: "Subsequence";
@@ -112,11 +112,11 @@ declare function fillFromState(component: LunaticComponentDefinition, state: Lun
112
112
  goPreviousPage: () => void;
113
113
  label: import("../../type-source").LabelType;
114
114
  declarations?: import("../../type-source").DeclarationType[] | undefined;
115
- conditionFilter: import("../../type-source").ConditionFilterType;
115
+ conditionFilter?: import("../../type-source").ConditionFilterType | undefined;
116
116
  controls?: import("../../type-source").ControlType[] | undefined;
117
117
  id: string;
118
118
  bindingDependencies?: string[] | undefined;
119
- hierarchy: import("../../type-source").Hierarchy;
119
+ hierarchy?: import("../../type-source").Hierarchy | undefined;
120
120
  mandatory?: boolean | undefined;
121
121
  page: string;
122
122
  componentType: "RosterForLoop";
@@ -135,9 +135,14 @@ declare function fillFromState(component: LunaticComponentDefinition, state: Lun
135
135
  colspan?: number | undefined;
136
136
  rowspan?: number | undefined;
137
137
  }[];
138
- body: (import("../../type-source").ComponentType | {
138
+ body: ({
139
139
  label: import("../../type-source").LabelType;
140
- })[][];
140
+ colspan?: number | undefined;
141
+ rowspan?: number | undefined;
142
+ } | (import("../../type-source").ComponentType & {
143
+ colspan?: number | undefined;
144
+ rowspan?: number | undefined;
145
+ }))[][];
141
146
  positioning: "HORIZONTAL";
142
147
  } | {
143
148
  handleChange: (response: {
@@ -167,11 +172,11 @@ declare function fillFromState(component: LunaticComponentDefinition, state: Lun
167
172
  goPreviousPage: () => void;
168
173
  label: import("../../type-source").LabelType;
169
174
  declarations?: import("../../type-source").DeclarationType[] | undefined;
170
- conditionFilter: import("../../type-source").ConditionFilterType;
175
+ conditionFilter?: import("../../type-source").ConditionFilterType | undefined;
171
176
  controls?: import("../../type-source").ControlType[] | undefined;
172
177
  id: string;
173
178
  bindingDependencies?: string[] | undefined;
174
- hierarchy: import("../../type-source").Hierarchy;
179
+ hierarchy?: import("../../type-source").Hierarchy | undefined;
175
180
  mandatory?: boolean | undefined;
176
181
  page: string;
177
182
  componentType: "Loop";
@@ -213,18 +218,14 @@ declare function fillFromState(component: LunaticComponentDefinition, state: Lun
213
218
  goPreviousPage: () => void;
214
219
  label: import("../../type-source").LabelType;
215
220
  declarations?: import("../../type-source").DeclarationType[] | undefined;
216
- conditionFilter: import("../../type-source").ConditionFilterType;
221
+ conditionFilter?: import("../../type-source").ConditionFilterType | undefined;
217
222
  controls?: import("../../type-source").ControlType[] | undefined;
218
223
  id: string;
219
224
  bindingDependencies?: string[] | undefined;
220
- hierarchy: import("../../type-source").Hierarchy;
225
+ hierarchy?: import("../../type-source").Hierarchy | undefined;
221
226
  mandatory?: boolean | undefined;
222
227
  page: string;
223
228
  componentType: "Table";
224
- lines: {
225
- min: import("../../type-source").LabelType;
226
- max: import("../../type-source").LabelType;
227
- };
228
229
  header: {
229
230
  value: string;
230
231
  label: string | import("../../type-source").LabelType;
@@ -235,10 +236,14 @@ declare function fillFromState(component: LunaticComponentDefinition, state: Lun
235
236
  colspan?: number | undefined;
236
237
  rowspan?: number | undefined;
237
238
  }[];
238
- body: (import("../../type-source").ComponentType | {
239
+ body: ({
239
240
  label: import("../../type-source").LabelType;
240
- })[][];
241
- positioning: "HORIZONTAL";
241
+ colspan?: number | undefined;
242
+ rowspan?: number | undefined;
243
+ } | (import("../../type-source").ComponentType & {
244
+ colspan?: number | undefined;
245
+ rowspan?: number | undefined;
246
+ }))[][];
242
247
  } | {
243
248
  handleChange: (response: {
244
249
  name: string;
@@ -267,11 +272,11 @@ declare function fillFromState(component: LunaticComponentDefinition, state: Lun
267
272
  goPreviousPage: () => void;
268
273
  label: import("../../type-source").LabelType;
269
274
  declarations?: import("../../type-source").DeclarationType[] | undefined;
270
- conditionFilter: import("../../type-source").ConditionFilterType;
275
+ conditionFilter?: import("../../type-source").ConditionFilterType | undefined;
271
276
  controls?: import("../../type-source").ControlType[] | undefined;
272
277
  id: string;
273
278
  bindingDependencies?: string[] | undefined;
274
- hierarchy: import("../../type-source").Hierarchy;
279
+ hierarchy?: import("../../type-source").Hierarchy | undefined;
275
280
  mandatory?: boolean | undefined;
276
281
  page: string;
277
282
  componentType: "InputNumber";
@@ -308,15 +313,15 @@ declare function fillFromState(component: LunaticComponentDefinition, state: Lun
308
313
  goPreviousPage: () => void;
309
314
  label: import("../../type-source").LabelType;
310
315
  declarations?: import("../../type-source").DeclarationType[] | undefined;
311
- conditionFilter: import("../../type-source").ConditionFilterType;
316
+ conditionFilter?: import("../../type-source").ConditionFilterType | undefined;
312
317
  controls?: import("../../type-source").ControlType[] | undefined;
313
318
  id: string;
314
319
  bindingDependencies?: string[] | undefined;
315
- hierarchy: import("../../type-source").Hierarchy;
320
+ hierarchy?: import("../../type-source").Hierarchy | undefined;
316
321
  mandatory?: boolean | undefined;
317
322
  page: string;
318
323
  componentType: "Datepicker";
319
- dateFormat: string;
324
+ dateFormat: "YYYY-MM-DD" | "YYYY" | "YYYY-MM";
320
325
  response: import("../../type-source").ResponseType;
321
326
  min?: string | undefined;
322
327
  max?: string | undefined;
@@ -348,11 +353,11 @@ declare function fillFromState(component: LunaticComponentDefinition, state: Lun
348
353
  goPreviousPage: () => void;
349
354
  label: import("../../type-source").LabelType;
350
355
  declarations?: import("../../type-source").DeclarationType[] | undefined;
351
- conditionFilter: import("../../type-source").ConditionFilterType;
356
+ conditionFilter?: import("../../type-source").ConditionFilterType | undefined;
352
357
  controls?: import("../../type-source").ControlType[] | undefined;
353
358
  id: string;
354
359
  bindingDependencies?: string[] | undefined;
355
- hierarchy: import("../../type-source").Hierarchy;
360
+ hierarchy?: import("../../type-source").Hierarchy | undefined;
356
361
  mandatory?: boolean | undefined;
357
362
  page: string;
358
363
  componentType: "CheckboxGroup";
@@ -389,11 +394,11 @@ declare function fillFromState(component: LunaticComponentDefinition, state: Lun
389
394
  goPreviousPage: () => void;
390
395
  label: import("../../type-source").LabelType;
391
396
  declarations?: import("../../type-source").DeclarationType[] | undefined;
392
- conditionFilter: import("../../type-source").ConditionFilterType;
397
+ conditionFilter?: import("../../type-source").ConditionFilterType | undefined;
393
398
  controls?: import("../../type-source").ControlType[] | undefined;
394
399
  id: string;
395
400
  bindingDependencies?: string[] | undefined;
396
- hierarchy: import("../../type-source").Hierarchy;
401
+ hierarchy?: import("../../type-source").Hierarchy | undefined;
397
402
  mandatory?: boolean | undefined;
398
403
  page: string;
399
404
  componentType: "CheckboxBoolean";
@@ -427,11 +432,11 @@ declare function fillFromState(component: LunaticComponentDefinition, state: Lun
427
432
  goPreviousPage: () => void;
428
433
  label: import("../../type-source").LabelType;
429
434
  declarations?: import("../../type-source").DeclarationType[] | undefined;
430
- conditionFilter: import("../../type-source").ConditionFilterType;
435
+ conditionFilter?: import("../../type-source").ConditionFilterType | undefined;
431
436
  controls?: import("../../type-source").ControlType[] | undefined;
432
437
  id: string;
433
438
  bindingDependencies?: string[] | undefined;
434
- hierarchy: import("../../type-source").Hierarchy;
439
+ hierarchy?: import("../../type-source").Hierarchy | undefined;
435
440
  mandatory?: boolean | undefined;
436
441
  page: string;
437
442
  componentType: "Radio";
@@ -469,11 +474,11 @@ declare function fillFromState(component: LunaticComponentDefinition, state: Lun
469
474
  goPreviousPage: () => void;
470
475
  label: import("../../type-source").LabelType;
471
476
  declarations?: import("../../type-source").DeclarationType[] | undefined;
472
- conditionFilter: import("../../type-source").ConditionFilterType;
477
+ conditionFilter?: import("../../type-source").ConditionFilterType | undefined;
473
478
  controls?: import("../../type-source").ControlType[] | undefined;
474
479
  id: string;
475
480
  bindingDependencies?: string[] | undefined;
476
- hierarchy: import("../../type-source").Hierarchy;
481
+ hierarchy?: import("../../type-source").Hierarchy | undefined;
477
482
  mandatory?: boolean | undefined;
478
483
  page: string;
479
484
  componentType: "FilterDescription";
@@ -506,11 +511,11 @@ declare function fillFromState(component: LunaticComponentDefinition, state: Lun
506
511
  goPreviousPage: () => void;
507
512
  label: import("../../type-source").LabelType;
508
513
  declarations?: import("../../type-source").DeclarationType[] | undefined;
509
- conditionFilter: import("../../type-source").ConditionFilterType;
514
+ conditionFilter?: import("../../type-source").ConditionFilterType | undefined;
510
515
  controls?: import("../../type-source").ControlType[] | undefined;
511
516
  id: string;
512
517
  bindingDependencies?: string[] | undefined;
513
- hierarchy: import("../../type-source").Hierarchy;
518
+ hierarchy?: import("../../type-source").Hierarchy | undefined;
514
519
  mandatory?: boolean | undefined;
515
520
  page: string;
516
521
  componentType: "Dropdown";
@@ -548,11 +553,11 @@ declare function fillFromState(component: LunaticComponentDefinition, state: Lun
548
553
  goPreviousPage: () => void;
549
554
  label: import("../../type-source").LabelType;
550
555
  declarations?: import("../../type-source").DeclarationType[] | undefined;
551
- conditionFilter: import("../../type-source").ConditionFilterType;
556
+ conditionFilter?: import("../../type-source").ConditionFilterType | undefined;
552
557
  controls?: import("../../type-source").ControlType[] | undefined;
553
558
  id: string;
554
559
  bindingDependencies?: string[] | undefined;
555
- hierarchy: import("../../type-source").Hierarchy;
560
+ hierarchy?: import("../../type-source").Hierarchy | undefined;
556
561
  mandatory?: boolean | undefined;
557
562
  page: string;
558
563
  componentType: "PairwiseLinks";
@@ -590,11 +595,11 @@ declare function fillFromState(component: LunaticComponentDefinition, state: Lun
590
595
  goPreviousPage: () => void;
591
596
  label: import("../../type-source").LabelType;
592
597
  declarations?: import("../../type-source").DeclarationType[] | undefined;
593
- conditionFilter: import("../../type-source").ConditionFilterType;
598
+ conditionFilter?: import("../../type-source").ConditionFilterType | undefined;
594
599
  controls?: import("../../type-source").ControlType[] | undefined;
595
600
  id: string;
596
601
  bindingDependencies?: string[] | undefined;
597
- hierarchy: import("../../type-source").Hierarchy;
602
+ hierarchy?: import("../../type-source").Hierarchy | undefined;
598
603
  mandatory?: boolean | undefined;
599
604
  page: string;
600
605
  componentType: "Roundabout";
@@ -630,11 +635,11 @@ declare function fillFromState(component: LunaticComponentDefinition, state: Lun
630
635
  goPreviousPage: () => void;
631
636
  label: import("../../type-source").LabelType;
632
637
  declarations?: import("../../type-source").DeclarationType[] | undefined;
633
- conditionFilter: import("../../type-source").ConditionFilterType;
638
+ conditionFilter?: import("../../type-source").ConditionFilterType | undefined;
634
639
  controls?: import("../../type-source").ControlType[] | undefined;
635
640
  id: string;
636
641
  bindingDependencies?: string[] | undefined;
637
- hierarchy: import("../../type-source").Hierarchy;
642
+ hierarchy?: import("../../type-source").Hierarchy | undefined;
638
643
  mandatory?: boolean | undefined;
639
644
  page: string;
640
645
  componentType: "Suggester";
@@ -667,11 +672,11 @@ declare function fillFromState(component: LunaticComponentDefinition, state: Lun
667
672
  goPreviousPage: () => void;
668
673
  label: import("../../type-source").LabelType;
669
674
  declarations?: import("../../type-source").DeclarationType[] | undefined;
670
- conditionFilter: import("../../type-source").ConditionFilterType;
675
+ conditionFilter?: import("../../type-source").ConditionFilterType | undefined;
671
676
  controls?: import("../../type-source").ControlType[] | undefined;
672
677
  id: string;
673
678
  bindingDependencies?: string[] | undefined;
674
- hierarchy: import("../../type-source").Hierarchy;
679
+ hierarchy?: import("../../type-source").Hierarchy | undefined;
675
680
  mandatory?: boolean | undefined;
676
681
  page: string;
677
682
  componentType: "Input" | "Textarea";
@@ -706,11 +711,11 @@ declare function fillFromState(component: LunaticComponentDefinition, state: Lun
706
711
  goPreviousPage: () => void;
707
712
  label: import("../../type-source").LabelType;
708
713
  declarations?: import("../../type-source").DeclarationType[] | undefined;
709
- conditionFilter: import("../../type-source").ConditionFilterType;
714
+ conditionFilter?: import("../../type-source").ConditionFilterType | undefined;
710
715
  controls?: import("../../type-source").ControlType[] | undefined;
711
716
  id: string;
712
717
  bindingDependencies?: string[] | undefined;
713
- hierarchy: import("../../type-source").Hierarchy;
718
+ hierarchy?: import("../../type-source").Hierarchy | undefined;
714
719
  mandatory?: boolean | undefined;
715
720
  page: string;
716
721
  componentType: "CheckboxOne";
@@ -742,11 +747,11 @@ declare function fillFromState(component: LunaticComponentDefinition, state: Lun
742
747
  goPreviousPage: () => void;
743
748
  label: import("../../type-source").LabelType;
744
749
  declarations?: import("../../type-source").DeclarationType[] | undefined;
745
- conditionFilter: import("../../type-source").ConditionFilterType;
750
+ conditionFilter?: import("../../type-source").ConditionFilterType | undefined;
746
751
  controls?: import("../../type-source").ControlType[] | undefined;
747
752
  id: string;
748
753
  bindingDependencies?: string[] | undefined;
749
- hierarchy: import("../../type-source").Hierarchy;
754
+ hierarchy?: import("../../type-source").Hierarchy | undefined;
750
755
  mandatory?: boolean | undefined;
751
756
  page: string;
752
757
  componentType: "ConfirmationModal";
@@ -778,11 +783,11 @@ declare function fillFromState(component: LunaticComponentDefinition, state: Lun
778
783
  goPreviousPage: () => void;
779
784
  label: import("../../type-source").LabelType;
780
785
  declarations?: import("../../type-source").DeclarationType[] | undefined;
781
- conditionFilter: import("../../type-source").ConditionFilterType;
786
+ conditionFilter?: import("../../type-source").ConditionFilterType | undefined;
782
787
  controls?: import("../../type-source").ControlType[] | undefined;
783
788
  id: string;
784
789
  bindingDependencies?: string[] | undefined;
785
- hierarchy: import("../../type-source").Hierarchy;
790
+ hierarchy?: import("../../type-source").Hierarchy | undefined;
786
791
  mandatory?: boolean | undefined;
787
792
  page: string;
788
793
  componentType: "ComponentSet";
@@ -815,11 +820,11 @@ declare function fillFromState(component: LunaticComponentDefinition, state: Lun
815
820
  goPreviousPage: () => void;
816
821
  label: import("../../type-source").LabelType;
817
822
  declarations?: import("../../type-source").DeclarationType[] | undefined;
818
- conditionFilter: import("../../type-source").ConditionFilterType;
823
+ conditionFilter?: import("../../type-source").ConditionFilterType | undefined;
819
824
  controls?: import("../../type-source").ControlType[] | undefined;
820
825
  id: string;
821
826
  bindingDependencies?: string[] | undefined;
822
- hierarchy: import("../../type-source").Hierarchy;
827
+ hierarchy?: import("../../type-source").Hierarchy | undefined;
823
828
  mandatory?: boolean | undefined;
824
829
  page: string;
825
830
  componentType: "QuestionExplication";
@@ -3,54 +3,54 @@ import type { LunaticComponentDefinition, LunaticState } from '../../type';
3
3
  * Fill the number of iterations for loop components without "iterations" expression
4
4
  */
5
5
  export declare function fillIterations(component: LunaticComponentDefinition, state: LunaticState): (import("../../type-source").ComponentTypeBase & import("../../type-source").ComponentSequenceType & {
6
- componentType: "Sequence" | "Subsequence" | "RosterForLoop" | "Loop" | "Table" | "Input" | "InputNumber" | "Datepicker" | "CheckboxGroup" | "CheckboxOne" | "CheckboxBoolean" | "Radio" | "Dropdown" | "Textarea" | "FilterDescription" | "PairwiseLinks" | "Suggester" | "ConfirmationModal" | "ComponentSet" | "Roundabout" | "QuestionExplication";
6
+ componentType: "CheckboxOne" | "ConfirmationModal" | "Sequence" | "Subsequence" | "RosterForLoop" | "Loop" | "Table" | "InputNumber" | "Datepicker" | "CheckboxGroup" | "CheckboxBoolean" | "Radio" | "FilterDescription" | "Dropdown" | "PairwiseLinks" | "Roundabout" | "Suggester" | "Input" | "Textarea" | "ComponentSet" | "QuestionExplication";
7
7
  }) | (import("../../type-source").ComponentTypeBase & import("../../type-source").ComponentSubSequenceType & {
8
- componentType: "Sequence" | "Subsequence" | "RosterForLoop" | "Loop" | "Table" | "Input" | "InputNumber" | "Datepicker" | "CheckboxGroup" | "CheckboxOne" | "CheckboxBoolean" | "Radio" | "Dropdown" | "Textarea" | "FilterDescription" | "PairwiseLinks" | "Suggester" | "ConfirmationModal" | "ComponentSet" | "Roundabout" | "QuestionExplication";
8
+ componentType: "CheckboxOne" | "ConfirmationModal" | "Sequence" | "Subsequence" | "RosterForLoop" | "Loop" | "Table" | "InputNumber" | "Datepicker" | "CheckboxGroup" | "CheckboxBoolean" | "Radio" | "FilterDescription" | "Dropdown" | "PairwiseLinks" | "Roundabout" | "Suggester" | "Input" | "Textarea" | "ComponentSet" | "QuestionExplication";
9
9
  }) | (import("../../type-source").ComponentTypeBase & import("../../type-source").ComponentTableType & {
10
- componentType: "Sequence" | "Subsequence" | "RosterForLoop" | "Loop" | "Table" | "Input" | "InputNumber" | "Datepicker" | "CheckboxGroup" | "CheckboxOne" | "CheckboxBoolean" | "Radio" | "Dropdown" | "Textarea" | "FilterDescription" | "PairwiseLinks" | "Suggester" | "ConfirmationModal" | "ComponentSet" | "Roundabout" | "QuestionExplication";
10
+ componentType: "CheckboxOne" | "ConfirmationModal" | "Sequence" | "Subsequence" | "RosterForLoop" | "Loop" | "Table" | "InputNumber" | "Datepicker" | "CheckboxGroup" | "CheckboxBoolean" | "Radio" | "FilterDescription" | "Dropdown" | "PairwiseLinks" | "Roundabout" | "Suggester" | "Input" | "Textarea" | "ComponentSet" | "QuestionExplication";
11
11
  }) | (import("../../type-source").ComponentTypeBase & import("../../type-source").ComponentNumberType & {
12
- componentType: "Sequence" | "Subsequence" | "RosterForLoop" | "Loop" | "Table" | "Input" | "InputNumber" | "Datepicker" | "CheckboxGroup" | "CheckboxOne" | "CheckboxBoolean" | "Radio" | "Dropdown" | "Textarea" | "FilterDescription" | "PairwiseLinks" | "Suggester" | "ConfirmationModal" | "ComponentSet" | "Roundabout" | "QuestionExplication";
12
+ componentType: "CheckboxOne" | "ConfirmationModal" | "Sequence" | "Subsequence" | "RosterForLoop" | "Loop" | "Table" | "InputNumber" | "Datepicker" | "CheckboxGroup" | "CheckboxBoolean" | "Radio" | "FilterDescription" | "Dropdown" | "PairwiseLinks" | "Roundabout" | "Suggester" | "Input" | "Textarea" | "ComponentSet" | "QuestionExplication";
13
13
  }) | (import("../../type-source").ComponentTypeBase & import("../../type-source").ComponentDatePickerType & {
14
- componentType: "Sequence" | "Subsequence" | "RosterForLoop" | "Loop" | "Table" | "Input" | "InputNumber" | "Datepicker" | "CheckboxGroup" | "CheckboxOne" | "CheckboxBoolean" | "Radio" | "Dropdown" | "Textarea" | "FilterDescription" | "PairwiseLinks" | "Suggester" | "ConfirmationModal" | "ComponentSet" | "Roundabout" | "QuestionExplication";
14
+ componentType: "CheckboxOne" | "ConfirmationModal" | "Sequence" | "Subsequence" | "RosterForLoop" | "Loop" | "Table" | "InputNumber" | "Datepicker" | "CheckboxGroup" | "CheckboxBoolean" | "Radio" | "FilterDescription" | "Dropdown" | "PairwiseLinks" | "Roundabout" | "Suggester" | "Input" | "Textarea" | "ComponentSet" | "QuestionExplication";
15
15
  }) | (import("../../type-source").ComponentTypeBase & import("../../type-source").ComponentCheckboxGroupType & {
16
- componentType: "Sequence" | "Subsequence" | "RosterForLoop" | "Loop" | "Table" | "Input" | "InputNumber" | "Datepicker" | "CheckboxGroup" | "CheckboxOne" | "CheckboxBoolean" | "Radio" | "Dropdown" | "Textarea" | "FilterDescription" | "PairwiseLinks" | "Suggester" | "ConfirmationModal" | "ComponentSet" | "Roundabout" | "QuestionExplication";
16
+ componentType: "CheckboxOne" | "ConfirmationModal" | "Sequence" | "Subsequence" | "RosterForLoop" | "Loop" | "Table" | "InputNumber" | "Datepicker" | "CheckboxGroup" | "CheckboxBoolean" | "Radio" | "FilterDescription" | "Dropdown" | "PairwiseLinks" | "Roundabout" | "Suggester" | "Input" | "Textarea" | "ComponentSet" | "QuestionExplication";
17
17
  }) | (import("../../type-source").ComponentTypeBase & import("../../type-source").ComponentCheckboxBooleanType & {
18
- componentType: "Sequence" | "Subsequence" | "RosterForLoop" | "Loop" | "Table" | "Input" | "InputNumber" | "Datepicker" | "CheckboxGroup" | "CheckboxOne" | "CheckboxBoolean" | "Radio" | "Dropdown" | "Textarea" | "FilterDescription" | "PairwiseLinks" | "Suggester" | "ConfirmationModal" | "ComponentSet" | "Roundabout" | "QuestionExplication";
18
+ componentType: "CheckboxOne" | "ConfirmationModal" | "Sequence" | "Subsequence" | "RosterForLoop" | "Loop" | "Table" | "InputNumber" | "Datepicker" | "CheckboxGroup" | "CheckboxBoolean" | "Radio" | "FilterDescription" | "Dropdown" | "PairwiseLinks" | "Roundabout" | "Suggester" | "Input" | "Textarea" | "ComponentSet" | "QuestionExplication";
19
19
  }) | (import("../../type-source").ComponentTypeBase & import("../../type-source").ComponentRadioType & {
20
- componentType: "Sequence" | "Subsequence" | "RosterForLoop" | "Loop" | "Table" | "Input" | "InputNumber" | "Datepicker" | "CheckboxGroup" | "CheckboxOne" | "CheckboxBoolean" | "Radio" | "Dropdown" | "Textarea" | "FilterDescription" | "PairwiseLinks" | "Suggester" | "ConfirmationModal" | "ComponentSet" | "Roundabout" | "QuestionExplication";
20
+ componentType: "CheckboxOne" | "ConfirmationModal" | "Sequence" | "Subsequence" | "RosterForLoop" | "Loop" | "Table" | "InputNumber" | "Datepicker" | "CheckboxGroup" | "CheckboxBoolean" | "Radio" | "FilterDescription" | "Dropdown" | "PairwiseLinks" | "Roundabout" | "Suggester" | "Input" | "Textarea" | "ComponentSet" | "QuestionExplication";
21
21
  }) | (import("../../type-source").ComponentTypeBase & import("../../type-source").ComponentFilterDescriptionType & {
22
- componentType: "Sequence" | "Subsequence" | "RosterForLoop" | "Loop" | "Table" | "Input" | "InputNumber" | "Datepicker" | "CheckboxGroup" | "CheckboxOne" | "CheckboxBoolean" | "Radio" | "Dropdown" | "Textarea" | "FilterDescription" | "PairwiseLinks" | "Suggester" | "ConfirmationModal" | "ComponentSet" | "Roundabout" | "QuestionExplication";
22
+ componentType: "CheckboxOne" | "ConfirmationModal" | "Sequence" | "Subsequence" | "RosterForLoop" | "Loop" | "Table" | "InputNumber" | "Datepicker" | "CheckboxGroup" | "CheckboxBoolean" | "Radio" | "FilterDescription" | "Dropdown" | "PairwiseLinks" | "Roundabout" | "Suggester" | "Input" | "Textarea" | "ComponentSet" | "QuestionExplication";
23
23
  }) | (import("../../type-source").ComponentTypeBase & import("../../type-source").ComponentDropdownType & {
24
- componentType: "Sequence" | "Subsequence" | "RosterForLoop" | "Loop" | "Table" | "Input" | "InputNumber" | "Datepicker" | "CheckboxGroup" | "CheckboxOne" | "CheckboxBoolean" | "Radio" | "Dropdown" | "Textarea" | "FilterDescription" | "PairwiseLinks" | "Suggester" | "ConfirmationModal" | "ComponentSet" | "Roundabout" | "QuestionExplication";
24
+ componentType: "CheckboxOne" | "ConfirmationModal" | "Sequence" | "Subsequence" | "RosterForLoop" | "Loop" | "Table" | "InputNumber" | "Datepicker" | "CheckboxGroup" | "CheckboxBoolean" | "Radio" | "FilterDescription" | "Dropdown" | "PairwiseLinks" | "Roundabout" | "Suggester" | "Input" | "Textarea" | "ComponentSet" | "QuestionExplication";
25
25
  }) | (import("../../type-source").ComponentTypeBase & import("../../type-source").ComponentPairWiseLinksType & {
26
- componentType: "Sequence" | "Subsequence" | "RosterForLoop" | "Loop" | "Table" | "Input" | "InputNumber" | "Datepicker" | "CheckboxGroup" | "CheckboxOne" | "CheckboxBoolean" | "Radio" | "Dropdown" | "Textarea" | "FilterDescription" | "PairwiseLinks" | "Suggester" | "ConfirmationModal" | "ComponentSet" | "Roundabout" | "QuestionExplication";
26
+ componentType: "CheckboxOne" | "ConfirmationModal" | "Sequence" | "Subsequence" | "RosterForLoop" | "Loop" | "Table" | "InputNumber" | "Datepicker" | "CheckboxGroup" | "CheckboxBoolean" | "Radio" | "FilterDescription" | "Dropdown" | "PairwiseLinks" | "Roundabout" | "Suggester" | "Input" | "Textarea" | "ComponentSet" | "QuestionExplication";
27
27
  }) | (import("../../type-source").ComponentTypeBase & import("../../type-source").ComponentRoundaboutType & {
28
- componentType: "Sequence" | "Subsequence" | "RosterForLoop" | "Loop" | "Table" | "Input" | "InputNumber" | "Datepicker" | "CheckboxGroup" | "CheckboxOne" | "CheckboxBoolean" | "Radio" | "Dropdown" | "Textarea" | "FilterDescription" | "PairwiseLinks" | "Suggester" | "ConfirmationModal" | "ComponentSet" | "Roundabout" | "QuestionExplication";
28
+ componentType: "CheckboxOne" | "ConfirmationModal" | "Sequence" | "Subsequence" | "RosterForLoop" | "Loop" | "Table" | "InputNumber" | "Datepicker" | "CheckboxGroup" | "CheckboxBoolean" | "Radio" | "FilterDescription" | "Dropdown" | "PairwiseLinks" | "Roundabout" | "Suggester" | "Input" | "Textarea" | "ComponentSet" | "QuestionExplication";
29
29
  }) | (import("../../type-source").ComponentTypeBase & import("../../type-source").ComponentSuggesterType & {
30
- componentType: "Sequence" | "Subsequence" | "RosterForLoop" | "Loop" | "Table" | "Input" | "InputNumber" | "Datepicker" | "CheckboxGroup" | "CheckboxOne" | "CheckboxBoolean" | "Radio" | "Dropdown" | "Textarea" | "FilterDescription" | "PairwiseLinks" | "Suggester" | "ConfirmationModal" | "ComponentSet" | "Roundabout" | "QuestionExplication";
30
+ componentType: "CheckboxOne" | "ConfirmationModal" | "Sequence" | "Subsequence" | "RosterForLoop" | "Loop" | "Table" | "InputNumber" | "Datepicker" | "CheckboxGroup" | "CheckboxBoolean" | "Radio" | "FilterDescription" | "Dropdown" | "PairwiseLinks" | "Roundabout" | "Suggester" | "Input" | "Textarea" | "ComponentSet" | "QuestionExplication";
31
31
  }) | (import("../../type-source").ComponentTypeBase & import("../../type-source").ComponentInputOrTextareaType & {
32
- componentType: "Sequence" | "Subsequence" | "RosterForLoop" | "Loop" | "Table" | "Input" | "InputNumber" | "Datepicker" | "CheckboxGroup" | "CheckboxOne" | "CheckboxBoolean" | "Radio" | "Dropdown" | "Textarea" | "FilterDescription" | "PairwiseLinks" | "Suggester" | "ConfirmationModal" | "ComponentSet" | "Roundabout" | "QuestionExplication";
32
+ componentType: "CheckboxOne" | "ConfirmationModal" | "Sequence" | "Subsequence" | "RosterForLoop" | "Loop" | "Table" | "InputNumber" | "Datepicker" | "CheckboxGroup" | "CheckboxBoolean" | "Radio" | "FilterDescription" | "Dropdown" | "PairwiseLinks" | "Roundabout" | "Suggester" | "Input" | "Textarea" | "ComponentSet" | "QuestionExplication";
33
33
  }) | (import("../../type-source").ComponentTypeBase & {
34
34
  componentType: "CheckboxOne";
35
35
  } & {
36
- componentType: "Sequence" | "Subsequence" | "RosterForLoop" | "Loop" | "Table" | "Input" | "InputNumber" | "Datepicker" | "CheckboxGroup" | "CheckboxOne" | "CheckboxBoolean" | "Radio" | "Dropdown" | "Textarea" | "FilterDescription" | "PairwiseLinks" | "Suggester" | "ConfirmationModal" | "ComponentSet" | "Roundabout" | "QuestionExplication";
36
+ componentType: "CheckboxOne" | "ConfirmationModal" | "Sequence" | "Subsequence" | "RosterForLoop" | "Loop" | "Table" | "InputNumber" | "Datepicker" | "CheckboxGroup" | "CheckboxBoolean" | "Radio" | "FilterDescription" | "Dropdown" | "PairwiseLinks" | "Roundabout" | "Suggester" | "Input" | "Textarea" | "ComponentSet" | "QuestionExplication";
37
37
  }) | (import("../../type-source").ComponentTypeBase & {
38
38
  componentType: "ConfirmationModal";
39
39
  } & {
40
- componentType: "Sequence" | "Subsequence" | "RosterForLoop" | "Loop" | "Table" | "Input" | "InputNumber" | "Datepicker" | "CheckboxGroup" | "CheckboxOne" | "CheckboxBoolean" | "Radio" | "Dropdown" | "Textarea" | "FilterDescription" | "PairwiseLinks" | "Suggester" | "ConfirmationModal" | "ComponentSet" | "Roundabout" | "QuestionExplication";
40
+ componentType: "CheckboxOne" | "ConfirmationModal" | "Sequence" | "Subsequence" | "RosterForLoop" | "Loop" | "Table" | "InputNumber" | "Datepicker" | "CheckboxGroup" | "CheckboxBoolean" | "Radio" | "FilterDescription" | "Dropdown" | "PairwiseLinks" | "Roundabout" | "Suggester" | "Input" | "Textarea" | "ComponentSet" | "QuestionExplication";
41
41
  }) | (import("../../type-source").ComponentTypeBase & import("../../type-source").ComponentComponentSetType & {
42
- componentType: "Sequence" | "Subsequence" | "RosterForLoop" | "Loop" | "Table" | "Input" | "InputNumber" | "Datepicker" | "CheckboxGroup" | "CheckboxOne" | "CheckboxBoolean" | "Radio" | "Dropdown" | "Textarea" | "FilterDescription" | "PairwiseLinks" | "Suggester" | "ConfirmationModal" | "ComponentSet" | "Roundabout" | "QuestionExplication";
42
+ componentType: "CheckboxOne" | "ConfirmationModal" | "Sequence" | "Subsequence" | "RosterForLoop" | "Loop" | "Table" | "InputNumber" | "Datepicker" | "CheckboxGroup" | "CheckboxBoolean" | "Radio" | "FilterDescription" | "Dropdown" | "PairwiseLinks" | "Roundabout" | "Suggester" | "Input" | "Textarea" | "ComponentSet" | "QuestionExplication";
43
43
  }) | (import("../../type-source").ComponentTypeBase & import("../../type-source").ComponentQuestionExplicationType & {
44
- componentType: "Sequence" | "Subsequence" | "RosterForLoop" | "Loop" | "Table" | "Input" | "InputNumber" | "Datepicker" | "CheckboxGroup" | "CheckboxOne" | "CheckboxBoolean" | "Radio" | "Dropdown" | "Textarea" | "FilterDescription" | "PairwiseLinks" | "Suggester" | "ConfirmationModal" | "ComponentSet" | "Roundabout" | "QuestionExplication";
44
+ componentType: "CheckboxOne" | "ConfirmationModal" | "Sequence" | "Subsequence" | "RosterForLoop" | "Loop" | "Table" | "InputNumber" | "Datepicker" | "CheckboxGroup" | "CheckboxBoolean" | "Radio" | "FilterDescription" | "Dropdown" | "PairwiseLinks" | "Roundabout" | "Suggester" | "Input" | "Textarea" | "ComponentSet" | "QuestionExplication";
45
45
  }) | {
46
46
  iterations: number;
47
47
  label: import("../../type-source").LabelType;
48
48
  declarations?: import("../../type-source").DeclarationType[] | undefined;
49
- conditionFilter: import("../../type-source").ConditionFilterType;
49
+ conditionFilter?: import("../../type-source").ConditionFilterType | undefined;
50
50
  controls?: import("../../type-source").ControlType[] | undefined;
51
51
  id: string;
52
52
  bindingDependencies?: string[] | undefined;
53
- hierarchy: import("../../type-source").Hierarchy;
53
+ hierarchy?: import("../../type-source").Hierarchy | undefined;
54
54
  mandatory?: boolean | undefined;
55
55
  page: string;
56
56
  componentType: "Loop";
@@ -67,11 +67,11 @@ export declare function fillIterations(component: LunaticComponentDefinition, st
67
67
  iterations: number;
68
68
  label: import("../../type-source").LabelType;
69
69
  declarations?: import("../../type-source").DeclarationType[] | undefined;
70
- conditionFilter: import("../../type-source").ConditionFilterType;
70
+ conditionFilter?: import("../../type-source").ConditionFilterType | undefined;
71
71
  controls?: import("../../type-source").ControlType[] | undefined;
72
72
  id: string;
73
73
  bindingDependencies?: string[] | undefined;
74
- hierarchy: import("../../type-source").Hierarchy;
74
+ hierarchy?: import("../../type-source").Hierarchy | undefined;
75
75
  mandatory?: boolean | undefined;
76
76
  page: string;
77
77
  componentType: "Roundabout";
@@ -82,11 +82,11 @@ export declare function fillIterations(component: LunaticComponentDefinition, st
82
82
  iterations: number;
83
83
  label: import("../../type-source").LabelType;
84
84
  declarations?: import("../../type-source").DeclarationType[] | undefined;
85
- conditionFilter: import("../../type-source").ConditionFilterType;
85
+ conditionFilter?: import("../../type-source").ConditionFilterType | undefined;
86
86
  controls?: import("../../type-source").ControlType[] | undefined;
87
87
  id: string;
88
88
  bindingDependencies?: string[] | undefined;
89
- hierarchy: import("../../type-source").Hierarchy;
89
+ hierarchy?: import("../../type-source").Hierarchy | undefined;
90
90
  mandatory?: boolean | undefined;
91
91
  page: string;
92
92
  componentType: "RosterForLoop";
@@ -105,8 +105,13 @@ export declare function fillIterations(component: LunaticComponentDefinition, st
105
105
  colspan?: number | undefined;
106
106
  rowspan?: number | undefined;
107
107
  }[];
108
- body: (import("../../type-source").ComponentType | {
108
+ body: ({
109
109
  label: import("../../type-source").LabelType;
110
- })[][];
110
+ colspan?: number | undefined;
111
+ rowspan?: number | undefined;
112
+ } | (import("../../type-source").ComponentType & {
113
+ colspan?: number | undefined;
114
+ rowspan?: number | undefined;
115
+ }))[][];
111
116
  positioning: "HORIZONTAL";
112
117
  };