@inseefr/lunatic 2.6.5 → 2.6.7
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/lib/components/summary/html/summary-responses.js +3 -5
- package/lib/src/components/loop/block-for-loop.d.ts +1 -0
- package/lib/src/components/loop/roster-for-loop/roster-for-loop.d.ts +1 -0
- package/lib/src/use-lunatic/commons/execute-expression/create-refresh-calculated.d.ts +2 -1
- package/lib/src/use-lunatic/commons/fill-components/fill-from-state.d.ts +20 -0
- package/lib/src/use-lunatic/reducer/overview/overview-on-init.d.ts +1 -0
- package/lib/src/use-lunatic/type.d.ts +1 -0
- package/lib/src/use-lunatic/use-lunatic.d.ts +8 -0
- package/lib/stories/behaviour/cleaning/{test.stories.js → cleaning.stories.js} +10 -2
- package/lib/stories/behaviour/cleaning/source-loop.json +130 -0
- package/lib/stories/roundabout/source.json +25 -18
- package/lib/use-lunatic/commons/execute-expression/create-execute-expression.js +2 -1
- package/lib/use-lunatic/commons/execute-expression/create-refresh-calculated.js +3 -2
- package/lib/use-lunatic/commons/execute-expression/create-refresh-calculated.spec.js +3 -2
- package/lib/use-lunatic/commons/fill-components/fill-specific-expression.js +4 -4
- package/lib/use-lunatic/reducer/reduce-handle-change/reduce-cleaning.js +1 -1
- package/lib/use-lunatic/use-lunatic.test.js +34 -4
- package/package.json +1 -1
|
@@ -19,8 +19,7 @@ function ListResponses(_ref) {
|
|
|
19
19
|
});
|
|
20
20
|
}
|
|
21
21
|
function Responses(_ref2) {
|
|
22
|
-
var values = _ref2.values
|
|
23
|
-
sectionIndex = _ref2.sectionIndex;
|
|
22
|
+
var values = _ref2.values;
|
|
24
23
|
if (!values) {
|
|
25
24
|
return null;
|
|
26
25
|
}
|
|
@@ -31,7 +30,7 @@ function Responses(_ref2) {
|
|
|
31
30
|
id = _ref3.id;
|
|
32
31
|
return /*#__PURE__*/(0, _jsxRuntime.jsxs)("li", {
|
|
33
32
|
children: [label, " : ", value]
|
|
34
|
-
}, "
|
|
33
|
+
}, "response-".concat(index));
|
|
35
34
|
})
|
|
36
35
|
});
|
|
37
36
|
}
|
|
@@ -48,8 +47,7 @@ function SummaryResponses(_ref4) {
|
|
|
48
47
|
return /*#__PURE__*/(0, _jsxRuntime.jsx)(ListResponses, {
|
|
49
48
|
title: title,
|
|
50
49
|
children: /*#__PURE__*/(0, _jsxRuntime.jsx)(Responses, {
|
|
51
|
-
values: values
|
|
52
|
-
sectionIndex: index
|
|
50
|
+
values: values
|
|
53
51
|
})
|
|
54
52
|
}, "".concat(id, "-").concat(index));
|
|
55
53
|
})
|
|
@@ -14,6 +14,7 @@ export declare const BlockForLoop: import("react").ComponentType<import("../type
|
|
|
14
14
|
linksIterations?: number[] | undefined;
|
|
15
15
|
logging?: import("../../use-lunatic/commons/execute-expression/create-execute-expression").ExpressionLogger | undefined;
|
|
16
16
|
bindingDependencies?: string[] | undefined;
|
|
17
|
+
skipCleaningRefresh?: boolean | undefined;
|
|
17
18
|
} | undefined) => T;
|
|
18
19
|
value: Record<string, unknown[]>;
|
|
19
20
|
headers?: {
|
|
@@ -14,6 +14,7 @@ export declare const RosterForLoop: import("react").ComponentType<import("../../
|
|
|
14
14
|
linksIterations?: number[] | undefined;
|
|
15
15
|
logging?: import("../../../use-lunatic/commons/execute-expression/create-execute-expression").ExpressionLogger | undefined;
|
|
16
16
|
bindingDependencies?: string[] | undefined;
|
|
17
|
+
skipCleaningRefresh?: boolean | undefined;
|
|
17
18
|
} | undefined) => T;
|
|
18
19
|
value: Record<string, unknown[]>;
|
|
19
20
|
headers?: {
|
|
@@ -16,9 +16,10 @@ type Args = {
|
|
|
16
16
|
*/
|
|
17
17
|
declare function createRefreshCalculated({ variables, execute, bindings }: Args): readonly [(map: {
|
|
18
18
|
[variableName: string]: unknown;
|
|
19
|
-
}, { rootExpression, iteration, linksIterations, }?: {
|
|
19
|
+
}, { rootExpression, iteration, linksIterations, skipCleaningRefresh, }?: {
|
|
20
20
|
rootExpression?: string | undefined;
|
|
21
21
|
iteration?: number | undefined;
|
|
22
22
|
linksIterations?: number[] | undefined;
|
|
23
|
+
skipCleaningRefresh?: boolean | undefined;
|
|
23
24
|
}) => Record<string, unknown>, (name: string, variable: LunaticVariable) => void];
|
|
24
25
|
export default createRefreshCalculated;
|
|
@@ -20,6 +20,7 @@ declare function fillFromState(component: LunaticComponentDefinition, state: Lun
|
|
|
20
20
|
linksIterations?: number[] | undefined;
|
|
21
21
|
logging?: import("../execute-expression/create-execute-expression").ExpressionLogger | undefined;
|
|
22
22
|
bindingDependencies?: string[] | undefined;
|
|
23
|
+
skipCleaningRefresh?: boolean | undefined;
|
|
23
24
|
} | undefined) => T;
|
|
24
25
|
preferences: ["COLLECTED"];
|
|
25
26
|
goToPage: (page: {
|
|
@@ -55,6 +56,7 @@ declare function fillFromState(component: LunaticComponentDefinition, state: Lun
|
|
|
55
56
|
linksIterations?: number[] | undefined;
|
|
56
57
|
logging?: import("../execute-expression/create-execute-expression").ExpressionLogger | undefined;
|
|
57
58
|
bindingDependencies?: string[] | undefined;
|
|
59
|
+
skipCleaningRefresh?: boolean | undefined;
|
|
58
60
|
} | undefined) => T;
|
|
59
61
|
preferences: ["COLLECTED"];
|
|
60
62
|
goToPage: (page: {
|
|
@@ -91,6 +93,7 @@ declare function fillFromState(component: LunaticComponentDefinition, state: Lun
|
|
|
91
93
|
linksIterations?: number[] | undefined;
|
|
92
94
|
logging?: import("../execute-expression/create-execute-expression").ExpressionLogger | undefined;
|
|
93
95
|
bindingDependencies?: string[] | undefined;
|
|
96
|
+
skipCleaningRefresh?: boolean | undefined;
|
|
94
97
|
} | undefined) => T;
|
|
95
98
|
preferences: ["COLLECTED"];
|
|
96
99
|
goToPage: (page: {
|
|
@@ -163,6 +166,7 @@ declare function fillFromState(component: LunaticComponentDefinition, state: Lun
|
|
|
163
166
|
linksIterations?: number[] | undefined;
|
|
164
167
|
logging?: import("../execute-expression/create-execute-expression").ExpressionLogger | undefined;
|
|
165
168
|
bindingDependencies?: string[] | undefined;
|
|
169
|
+
skipCleaningRefresh?: boolean | undefined;
|
|
166
170
|
} | undefined) => T;
|
|
167
171
|
preferences: ["COLLECTED"];
|
|
168
172
|
goToPage: (page: {
|
|
@@ -208,6 +212,7 @@ declare function fillFromState(component: LunaticComponentDefinition, state: Lun
|
|
|
208
212
|
linksIterations?: number[] | undefined;
|
|
209
213
|
logging?: import("../execute-expression/create-execute-expression").ExpressionLogger | undefined;
|
|
210
214
|
bindingDependencies?: string[] | undefined;
|
|
215
|
+
skipCleaningRefresh?: boolean | undefined;
|
|
211
216
|
} | undefined) => T;
|
|
212
217
|
preferences: ["COLLECTED"];
|
|
213
218
|
goToPage: (page: {
|
|
@@ -279,6 +284,7 @@ declare function fillFromState(component: LunaticComponentDefinition, state: Lun
|
|
|
279
284
|
linksIterations?: number[] | undefined;
|
|
280
285
|
logging?: import("../execute-expression/create-execute-expression").ExpressionLogger | undefined;
|
|
281
286
|
bindingDependencies?: string[] | undefined;
|
|
287
|
+
skipCleaningRefresh?: boolean | undefined;
|
|
282
288
|
} | undefined) => T;
|
|
283
289
|
preferences: ["COLLECTED"];
|
|
284
290
|
goToPage: (page: {
|
|
@@ -319,6 +325,7 @@ declare function fillFromState(component: LunaticComponentDefinition, state: Lun
|
|
|
319
325
|
linksIterations?: number[] | undefined;
|
|
320
326
|
logging?: import("../execute-expression/create-execute-expression").ExpressionLogger | undefined;
|
|
321
327
|
bindingDependencies?: string[] | undefined;
|
|
328
|
+
skipCleaningRefresh?: boolean | undefined;
|
|
322
329
|
} | undefined) => T;
|
|
323
330
|
preferences: ["COLLECTED"];
|
|
324
331
|
goToPage: (page: {
|
|
@@ -358,6 +365,7 @@ declare function fillFromState(component: LunaticComponentDefinition, state: Lun
|
|
|
358
365
|
linksIterations?: number[] | undefined;
|
|
359
366
|
logging?: import("../execute-expression/create-execute-expression").ExpressionLogger | undefined;
|
|
360
367
|
bindingDependencies?: string[] | undefined;
|
|
368
|
+
skipCleaningRefresh?: boolean | undefined;
|
|
361
369
|
} | undefined) => T;
|
|
362
370
|
preferences: ["COLLECTED"];
|
|
363
371
|
goToPage: (page: {
|
|
@@ -398,6 +406,7 @@ declare function fillFromState(component: LunaticComponentDefinition, state: Lun
|
|
|
398
406
|
linksIterations?: number[] | undefined;
|
|
399
407
|
logging?: import("../execute-expression/create-execute-expression").ExpressionLogger | undefined;
|
|
400
408
|
bindingDependencies?: string[] | undefined;
|
|
409
|
+
skipCleaningRefresh?: boolean | undefined;
|
|
401
410
|
} | undefined) => T;
|
|
402
411
|
preferences: ["COLLECTED"];
|
|
403
412
|
goToPage: (page: {
|
|
@@ -435,6 +444,7 @@ declare function fillFromState(component: LunaticComponentDefinition, state: Lun
|
|
|
435
444
|
linksIterations?: number[] | undefined;
|
|
436
445
|
logging?: import("../execute-expression/create-execute-expression").ExpressionLogger | undefined;
|
|
437
446
|
bindingDependencies?: string[] | undefined;
|
|
447
|
+
skipCleaningRefresh?: boolean | undefined;
|
|
438
448
|
} | undefined) => T;
|
|
439
449
|
preferences: ["COLLECTED"];
|
|
440
450
|
goToPage: (page: {
|
|
@@ -476,6 +486,7 @@ declare function fillFromState(component: LunaticComponentDefinition, state: Lun
|
|
|
476
486
|
linksIterations?: number[] | undefined;
|
|
477
487
|
logging?: import("../execute-expression/create-execute-expression").ExpressionLogger | undefined;
|
|
478
488
|
bindingDependencies?: string[] | undefined;
|
|
489
|
+
skipCleaningRefresh?: boolean | undefined;
|
|
479
490
|
} | undefined) => T;
|
|
480
491
|
preferences: ["COLLECTED"];
|
|
481
492
|
goToPage: (page: {
|
|
@@ -512,6 +523,7 @@ declare function fillFromState(component: LunaticComponentDefinition, state: Lun
|
|
|
512
523
|
linksIterations?: number[] | undefined;
|
|
513
524
|
logging?: import("../execute-expression/create-execute-expression").ExpressionLogger | undefined;
|
|
514
525
|
bindingDependencies?: string[] | undefined;
|
|
526
|
+
skipCleaningRefresh?: boolean | undefined;
|
|
515
527
|
} | undefined) => T;
|
|
516
528
|
preferences: ["COLLECTED"];
|
|
517
529
|
goToPage: (page: {
|
|
@@ -553,6 +565,7 @@ declare function fillFromState(component: LunaticComponentDefinition, state: Lun
|
|
|
553
565
|
linksIterations?: number[] | undefined;
|
|
554
566
|
logging?: import("../execute-expression/create-execute-expression").ExpressionLogger | undefined;
|
|
555
567
|
bindingDependencies?: string[] | undefined;
|
|
568
|
+
skipCleaningRefresh?: boolean | undefined;
|
|
556
569
|
} | undefined) => T;
|
|
557
570
|
preferences: ["COLLECTED"];
|
|
558
571
|
goToPage: (page: {
|
|
@@ -593,6 +606,7 @@ declare function fillFromState(component: LunaticComponentDefinition, state: Lun
|
|
|
593
606
|
linksIterations?: number[] | undefined;
|
|
594
607
|
logging?: import("../execute-expression/create-execute-expression").ExpressionLogger | undefined;
|
|
595
608
|
bindingDependencies?: string[] | undefined;
|
|
609
|
+
skipCleaningRefresh?: boolean | undefined;
|
|
596
610
|
} | undefined) => T;
|
|
597
611
|
preferences: ["COLLECTED"];
|
|
598
612
|
goToPage: (page: {
|
|
@@ -632,6 +646,7 @@ declare function fillFromState(component: LunaticComponentDefinition, state: Lun
|
|
|
632
646
|
linksIterations?: number[] | undefined;
|
|
633
647
|
logging?: import("../execute-expression/create-execute-expression").ExpressionLogger | undefined;
|
|
634
648
|
bindingDependencies?: string[] | undefined;
|
|
649
|
+
skipCleaningRefresh?: boolean | undefined;
|
|
635
650
|
} | undefined) => T;
|
|
636
651
|
preferences: ["COLLECTED"];
|
|
637
652
|
goToPage: (page: {
|
|
@@ -668,6 +683,7 @@ declare function fillFromState(component: LunaticComponentDefinition, state: Lun
|
|
|
668
683
|
linksIterations?: number[] | undefined;
|
|
669
684
|
logging?: import("../execute-expression/create-execute-expression").ExpressionLogger | undefined;
|
|
670
685
|
bindingDependencies?: string[] | undefined;
|
|
686
|
+
skipCleaningRefresh?: boolean | undefined;
|
|
671
687
|
} | undefined) => T;
|
|
672
688
|
preferences: ["COLLECTED"];
|
|
673
689
|
goToPage: (page: {
|
|
@@ -706,6 +722,7 @@ declare function fillFromState(component: LunaticComponentDefinition, state: Lun
|
|
|
706
722
|
linksIterations?: number[] | undefined;
|
|
707
723
|
logging?: import("../execute-expression/create-execute-expression").ExpressionLogger | undefined;
|
|
708
724
|
bindingDependencies?: string[] | undefined;
|
|
725
|
+
skipCleaningRefresh?: boolean | undefined;
|
|
709
726
|
} | undefined) => T;
|
|
710
727
|
preferences: ["COLLECTED"];
|
|
711
728
|
goToPage: (page: {
|
|
@@ -741,6 +758,7 @@ declare function fillFromState(component: LunaticComponentDefinition, state: Lun
|
|
|
741
758
|
linksIterations?: number[] | undefined;
|
|
742
759
|
logging?: import("../execute-expression/create-execute-expression").ExpressionLogger | undefined;
|
|
743
760
|
bindingDependencies?: string[] | undefined;
|
|
761
|
+
skipCleaningRefresh?: boolean | undefined;
|
|
744
762
|
} | undefined) => T;
|
|
745
763
|
preferences: ["COLLECTED"];
|
|
746
764
|
goToPage: (page: {
|
|
@@ -776,6 +794,7 @@ declare function fillFromState(component: LunaticComponentDefinition, state: Lun
|
|
|
776
794
|
linksIterations?: number[] | undefined;
|
|
777
795
|
logging?: import("../execute-expression/create-execute-expression").ExpressionLogger | undefined;
|
|
778
796
|
bindingDependencies?: string[] | undefined;
|
|
797
|
+
skipCleaningRefresh?: boolean | undefined;
|
|
779
798
|
} | undefined) => T;
|
|
780
799
|
preferences: ["COLLECTED"];
|
|
781
800
|
goToPage: (page: {
|
|
@@ -812,6 +831,7 @@ declare function fillFromState(component: LunaticComponentDefinition, state: Lun
|
|
|
812
831
|
linksIterations?: number[] | undefined;
|
|
813
832
|
logging?: import("../execute-expression/create-execute-expression").ExpressionLogger | undefined;
|
|
814
833
|
bindingDependencies?: string[] | undefined;
|
|
834
|
+
skipCleaningRefresh?: boolean | undefined;
|
|
815
835
|
} | undefined) => T;
|
|
816
836
|
preferences: ["COLLECTED"];
|
|
817
837
|
goToPage: (page: {
|
|
@@ -84,6 +84,7 @@ export declare function reduceOverviewOnInit(state: LunaticState, action: Action
|
|
|
84
84
|
linksIterations?: number[] | undefined;
|
|
85
85
|
logging?: import("../../commons/execute-expression/create-execute-expression").ExpressionLogger | undefined;
|
|
86
86
|
bindingDependencies?: string[] | undefined;
|
|
87
|
+
skipCleaningRefresh?: boolean | undefined;
|
|
87
88
|
} | undefined) => T;
|
|
88
89
|
updateBindings: (variableName: string, value: unknown) => unknown;
|
|
89
90
|
activeControls: boolean;
|
|
@@ -125,6 +125,7 @@ export type LunaticState = {
|
|
|
125
125
|
linksIterations?: number[];
|
|
126
126
|
logging?: ExpressionLogger;
|
|
127
127
|
bindingDependencies?: string[];
|
|
128
|
+
skipCleaningRefresh?: boolean;
|
|
128
129
|
}) => T;
|
|
129
130
|
updateBindings: (variableName: string, value: unknown) => unknown;
|
|
130
131
|
activeControls: boolean;
|
|
@@ -72,6 +72,7 @@ declare function useLunatic(source: LunaticSource, data: Partial<Record<"CALCULA
|
|
|
72
72
|
linksIterations?: number[] | undefined;
|
|
73
73
|
logging?: import("./commons/execute-expression/create-execute-expression").ExpressionLogger | undefined;
|
|
74
74
|
bindingDependencies?: string[] | undefined;
|
|
75
|
+
skipCleaningRefresh?: boolean | undefined;
|
|
75
76
|
} | undefined) => T;
|
|
76
77
|
value: Record<string, unknown[]>;
|
|
77
78
|
headers?: {
|
|
@@ -91,6 +92,7 @@ declare function useLunatic(source: LunaticSource, data: Partial<Record<"CALCULA
|
|
|
91
92
|
linksIterations?: number[] | undefined;
|
|
92
93
|
logging?: import("./commons/execute-expression/create-execute-expression").ExpressionLogger | undefined;
|
|
93
94
|
bindingDependencies?: string[] | undefined;
|
|
95
|
+
skipCleaningRefresh?: boolean | undefined;
|
|
94
96
|
} | undefined) => T;
|
|
95
97
|
value: Record<string, unknown[]>;
|
|
96
98
|
headers?: {
|
|
@@ -113,6 +115,7 @@ declare function useLunatic(source: LunaticSource, data: Partial<Record<"CALCULA
|
|
|
113
115
|
linksIterations?: number[] | undefined;
|
|
114
116
|
logging?: import("./commons/execute-expression/create-execute-expression").ExpressionLogger | undefined;
|
|
115
117
|
bindingDependencies?: string[] | undefined;
|
|
118
|
+
skipCleaningRefresh?: boolean | undefined;
|
|
116
119
|
} | undefined) => T;
|
|
117
120
|
iteration: number | undefined;
|
|
118
121
|
};
|
|
@@ -225,6 +228,7 @@ declare function useLunatic(source: LunaticSource, data: Partial<Record<"CALCULA
|
|
|
225
228
|
linksIterations?: number[] | undefined;
|
|
226
229
|
logging?: import("./commons/execute-expression/create-execute-expression").ExpressionLogger | undefined;
|
|
227
230
|
bindingDependencies?: string[] | undefined;
|
|
231
|
+
skipCleaningRefresh?: boolean | undefined;
|
|
228
232
|
} | undefined) => T;
|
|
229
233
|
xAxisIterations: number;
|
|
230
234
|
yAxisIterations: number;
|
|
@@ -321,6 +325,7 @@ declare function useLunatic(source: LunaticSource, data: Partial<Record<"CALCULA
|
|
|
321
325
|
linksIterations?: number[] | undefined;
|
|
322
326
|
logging?: import("./commons/execute-expression/create-execute-expression").ExpressionLogger | undefined;
|
|
323
327
|
bindingDependencies?: string[] | undefined;
|
|
328
|
+
skipCleaningRefresh?: boolean | undefined;
|
|
324
329
|
} | undefined) => T;
|
|
325
330
|
value: Record<string, unknown[]>;
|
|
326
331
|
headers?: {
|
|
@@ -340,6 +345,7 @@ declare function useLunatic(source: LunaticSource, data: Partial<Record<"CALCULA
|
|
|
340
345
|
linksIterations?: number[] | undefined;
|
|
341
346
|
logging?: import("./commons/execute-expression/create-execute-expression").ExpressionLogger | undefined;
|
|
342
347
|
bindingDependencies?: string[] | undefined;
|
|
348
|
+
skipCleaningRefresh?: boolean | undefined;
|
|
343
349
|
} | undefined) => T;
|
|
344
350
|
value: Record<string, unknown[]>;
|
|
345
351
|
headers?: {
|
|
@@ -362,6 +368,7 @@ declare function useLunatic(source: LunaticSource, data: Partial<Record<"CALCULA
|
|
|
362
368
|
linksIterations?: number[] | undefined;
|
|
363
369
|
logging?: import("./commons/execute-expression/create-execute-expression").ExpressionLogger | undefined;
|
|
364
370
|
bindingDependencies?: string[] | undefined;
|
|
371
|
+
skipCleaningRefresh?: boolean | undefined;
|
|
365
372
|
} | undefined) => T;
|
|
366
373
|
iteration: number | undefined;
|
|
367
374
|
};
|
|
@@ -474,6 +481,7 @@ declare function useLunatic(source: LunaticSource, data: Partial<Record<"CALCULA
|
|
|
474
481
|
linksIterations?: number[] | undefined;
|
|
475
482
|
logging?: import("./commons/execute-expression/create-execute-expression").ExpressionLogger | undefined;
|
|
476
483
|
bindingDependencies?: string[] | undefined;
|
|
484
|
+
skipCleaningRefresh?: boolean | undefined;
|
|
477
485
|
} | undefined) => T;
|
|
478
486
|
xAxisIterations: number;
|
|
479
487
|
yAxisIterations: number;
|
|
@@ -3,10 +3,11 @@
|
|
|
3
3
|
Object.defineProperty(exports, "__esModule", {
|
|
4
4
|
value: true
|
|
5
5
|
});
|
|
6
|
-
exports["default"] = exports.Default = void 0;
|
|
6
|
+
exports["default"] = exports.Loop = exports.Default = void 0;
|
|
7
7
|
var _react = _interopRequireDefault(require("react"));
|
|
8
8
|
var _orchestrator = _interopRequireDefault(require("../../utils/orchestrator"));
|
|
9
9
|
var _source = _interopRequireDefault(require("./source.json"));
|
|
10
|
+
var _sourceLoop = _interopRequireDefault(require("./source-loop.json"));
|
|
10
11
|
var _defaultArgTypes = _interopRequireDefault(require("../../utils/default-arg-types"));
|
|
11
12
|
var _jsxRuntime = require("react/jsx-runtime");
|
|
12
13
|
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; }
|
|
@@ -79,6 +80,13 @@ var Template = function Template(args) {
|
|
|
79
80
|
var Default = Template.bind({});
|
|
80
81
|
exports.Default = Default;
|
|
81
82
|
Default.args = {
|
|
82
|
-
id: '
|
|
83
|
+
id: 'cleaning-default',
|
|
83
84
|
pagination: true
|
|
85
|
+
};
|
|
86
|
+
var Loop = Template.bind({});
|
|
87
|
+
exports.Loop = Loop;
|
|
88
|
+
Loop.args = {
|
|
89
|
+
id: 'cleaning-loop',
|
|
90
|
+
pagination: true,
|
|
91
|
+
source: _sourceLoop["default"]
|
|
84
92
|
};
|
|
@@ -0,0 +1,130 @@
|
|
|
1
|
+
{
|
|
2
|
+
"resizing": {
|
|
3
|
+
"PRENOM": {
|
|
4
|
+
"variables": ["AGE", "HIDE_AGE"],
|
|
5
|
+
"size": "count(PRENOM)"
|
|
6
|
+
}
|
|
7
|
+
},
|
|
8
|
+
"cleaning": {
|
|
9
|
+
"HIDE_AGE": {
|
|
10
|
+
"AGE": "false"
|
|
11
|
+
}
|
|
12
|
+
},
|
|
13
|
+
"variables": [
|
|
14
|
+
{
|
|
15
|
+
"variableType": "COLLECTED",
|
|
16
|
+
"values": {
|
|
17
|
+
"COLLECTED": ["John", "Jane"],
|
|
18
|
+
"EDITED": null,
|
|
19
|
+
"INPUTED": null,
|
|
20
|
+
"FORCED": null,
|
|
21
|
+
"PREVIOUS": null
|
|
22
|
+
},
|
|
23
|
+
"name": "PRENOM"
|
|
24
|
+
},
|
|
25
|
+
{
|
|
26
|
+
"variableType": "COLLECTED",
|
|
27
|
+
"values": {
|
|
28
|
+
"COLLECTED": [null],
|
|
29
|
+
"EDITED": null,
|
|
30
|
+
"INPUTED": null,
|
|
31
|
+
"FORCED": null,
|
|
32
|
+
"PREVIOUS": null
|
|
33
|
+
},
|
|
34
|
+
"name": "AGE"
|
|
35
|
+
},
|
|
36
|
+
{
|
|
37
|
+
"variableType": "COLLECTED",
|
|
38
|
+
"values": {
|
|
39
|
+
"COLLECTED": [null],
|
|
40
|
+
"EDITED": null,
|
|
41
|
+
"INPUTED": null,
|
|
42
|
+
"FORCED": null,
|
|
43
|
+
"PREVIOUS": null
|
|
44
|
+
},
|
|
45
|
+
"name": "HIDE_AGE"
|
|
46
|
+
}
|
|
47
|
+
],
|
|
48
|
+
"components": [
|
|
49
|
+
{
|
|
50
|
+
"componentType": "Loop",
|
|
51
|
+
"id": "loop",
|
|
52
|
+
"label": "Ajouter",
|
|
53
|
+
"bindingDependencies": ["PRENOM"],
|
|
54
|
+
"lines": {
|
|
55
|
+
"min": { "value": 1, "type": "VTL" },
|
|
56
|
+
"max": { "value": 10, "type": "VTL" }
|
|
57
|
+
},
|
|
58
|
+
"page": "1",
|
|
59
|
+
"components": [
|
|
60
|
+
{
|
|
61
|
+
"componentType": "Input",
|
|
62
|
+
"label": "Prénom",
|
|
63
|
+
"bindingDependencies": ["PRENOM"],
|
|
64
|
+
"id": "prenom",
|
|
65
|
+
"response": {
|
|
66
|
+
"name": "PRENOM"
|
|
67
|
+
}
|
|
68
|
+
}
|
|
69
|
+
]
|
|
70
|
+
},
|
|
71
|
+
{
|
|
72
|
+
"componentType": "Loop",
|
|
73
|
+
"id": "loop2",
|
|
74
|
+
"paginatedLoop": true,
|
|
75
|
+
"bindingDependencies": ["PRENOM"],
|
|
76
|
+
"iterations": { "value": "count(PRENOM)", "type": "VTL" },
|
|
77
|
+
"page": "2",
|
|
78
|
+
"maxPage": "2",
|
|
79
|
+
"components": [
|
|
80
|
+
{
|
|
81
|
+
"componentType": "Input",
|
|
82
|
+
"label": {
|
|
83
|
+
"value": "\"Age de \" || PRENOM",
|
|
84
|
+
"type": "VTL"
|
|
85
|
+
},
|
|
86
|
+
"bindingDependencies": ["AGE"],
|
|
87
|
+
"id": "age",
|
|
88
|
+
"page": "2.1",
|
|
89
|
+
"response": {
|
|
90
|
+
"name": "AGE"
|
|
91
|
+
}
|
|
92
|
+
},
|
|
93
|
+
{
|
|
94
|
+
"componentType": "CheckboxBoolean",
|
|
95
|
+
"label": {
|
|
96
|
+
"value": "\"Masquer l'age de \" || PRENOM || \" ?\"",
|
|
97
|
+
"type": "VTL"
|
|
98
|
+
},
|
|
99
|
+
"bindingDependencies": ["HIDE_AGE"],
|
|
100
|
+
"id": "hideage",
|
|
101
|
+
"page": "2.2",
|
|
102
|
+
"response": {
|
|
103
|
+
"name": "HIDE_AGE"
|
|
104
|
+
}
|
|
105
|
+
}
|
|
106
|
+
]
|
|
107
|
+
},
|
|
108
|
+
{
|
|
109
|
+
"componentType": "Sequence",
|
|
110
|
+
"conditionFilter": {
|
|
111
|
+
"type": "VTL",
|
|
112
|
+
"value": "true"
|
|
113
|
+
},
|
|
114
|
+
"id": "ksyjs7vy",
|
|
115
|
+
"page": "3",
|
|
116
|
+
"label": {
|
|
117
|
+
"type": "VTL|MD",
|
|
118
|
+
"value": "\"END\""
|
|
119
|
+
}
|
|
120
|
+
}
|
|
121
|
+
],
|
|
122
|
+
"pagination": "question",
|
|
123
|
+
"lunaticModelVersion": "2.3.2-rc4",
|
|
124
|
+
"modele": "TESTSURSUM",
|
|
125
|
+
"enoCoreVersion": "2.4.1-pairwise",
|
|
126
|
+
"generatingDate": "14-04-2023 09:00:09",
|
|
127
|
+
"missing": false,
|
|
128
|
+
"id": "lb3ei722",
|
|
129
|
+
"maxPage": "3"
|
|
130
|
+
}
|
|
@@ -84,11 +84,11 @@
|
|
|
84
84
|
"type": "VTL"
|
|
85
85
|
},
|
|
86
86
|
"complete": {
|
|
87
|
-
"value": "
|
|
87
|
+
"value": "COMPLETE",
|
|
88
88
|
"type": "VTL"
|
|
89
89
|
},
|
|
90
90
|
"partial": {
|
|
91
|
-
"value": "
|
|
91
|
+
"value": "PARTIAL",
|
|
92
92
|
"type": "VTL"
|
|
93
93
|
},
|
|
94
94
|
"label": {
|
|
@@ -96,22 +96,7 @@
|
|
|
96
96
|
"type": "VTL"
|
|
97
97
|
}
|
|
98
98
|
},
|
|
99
|
-
"controls": [
|
|
100
|
-
{
|
|
101
|
-
"id": "roundabout-Carefull",
|
|
102
|
-
"criticality": "WARN",
|
|
103
|
-
"control": {
|
|
104
|
-
"value": "not(isnull(KNOWREC)) and not(isnull(SEXE)) and not(isnull(SOMETHING))",
|
|
105
|
-
"type": "VTL"
|
|
106
|
-
},
|
|
107
|
-
"type": "roundabout",
|
|
108
|
-
"iterations": { "value": "NB_HAB", "type": "VTL" },
|
|
109
|
-
"errorMessage": {
|
|
110
|
-
"value": "\"Le formulaire n'est pas complet pour \" || PRENOMS",
|
|
111
|
-
"type": "VTL|MD"
|
|
112
|
-
}
|
|
113
|
-
}
|
|
114
|
-
],
|
|
99
|
+
"controls": [],
|
|
115
100
|
"components": [
|
|
116
101
|
{
|
|
117
102
|
"id": "radio",
|
|
@@ -278,6 +263,28 @@
|
|
|
278
263
|
"expression": { "value": "first_value(PRENOMS over())", "type": "VTL" },
|
|
279
264
|
"bindingDependencies": ["PRENOMS"],
|
|
280
265
|
"inFilter": "true"
|
|
266
|
+
},
|
|
267
|
+
{
|
|
268
|
+
"variableType": "CALCULATED",
|
|
269
|
+
"name": "COMPLETE",
|
|
270
|
+
"expression": {
|
|
271
|
+
"value": "not(isnull(KNOWREC)) and not(isnull(SEXE)) and not(isnull(SOMETHING))",
|
|
272
|
+
"type": "VTL"
|
|
273
|
+
},
|
|
274
|
+
"bindingDependencies": ["KNOWREC", "SEXE", "SOMETHING"],
|
|
275
|
+
"shapeFrom": "PRENOMS",
|
|
276
|
+
"inFilter": "true"
|
|
277
|
+
},
|
|
278
|
+
{
|
|
279
|
+
"variableType": "CALCULATED",
|
|
280
|
+
"name": "PARTIAL",
|
|
281
|
+
"expression": {
|
|
282
|
+
"value": "not(isnull(KNOWREC)) or not(isnull(SEXE)) or not(isnull(SOMETHING))",
|
|
283
|
+
"type": "VTL"
|
|
284
|
+
},
|
|
285
|
+
"bindingDependencies": ["KNOWREC", "SEXE", "SOMETHING"],
|
|
286
|
+
"shapeFrom": "PRENOMS",
|
|
287
|
+
"inFilter": "true"
|
|
281
288
|
}
|
|
282
289
|
],
|
|
283
290
|
"resizing": {
|
|
@@ -214,7 +214,8 @@ function createExecuteExpression(variables, features) {
|
|
|
214
214
|
}), {
|
|
215
215
|
rootExpression: expression,
|
|
216
216
|
iteration: iteration,
|
|
217
|
-
linksIterations: linksIterations
|
|
217
|
+
linksIterations: linksIterations,
|
|
218
|
+
skipCleaningRefresh: args.skipCleaningRefresh
|
|
218
219
|
});
|
|
219
220
|
// Add index has a specific variable
|
|
220
221
|
vtlBindings['GLOBAL_ITERATION_INDEX'] = (((_args$iteration = args === null || args === void 0 ? void 0 : args.iteration) !== null && _args$iteration !== void 0 ? _args$iteration : 0) + 1).toString();
|
|
@@ -107,7 +107,8 @@ function createRefreshCalculated(_ref) {
|
|
|
107
107
|
var _ref4 = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {},
|
|
108
108
|
rootExpression = _ref4.rootExpression,
|
|
109
109
|
iteration = _ref4.iteration,
|
|
110
|
-
linksIterations = _ref4.linksIterations
|
|
110
|
+
linksIterations = _ref4.linksIterations,
|
|
111
|
+
skipCleaningRefresh = _ref4.skipCleaningRefresh;
|
|
111
112
|
return Object.entries(map).reduce(function (sub, _ref5) {
|
|
112
113
|
var _ref6 = _slicedToArray(_ref5, 2),
|
|
113
114
|
name = _ref6[0],
|
|
@@ -134,7 +135,7 @@ function createRefreshCalculated(_ref) {
|
|
|
134
135
|
iteration: iteration,
|
|
135
136
|
linksIterations: linksIterations
|
|
136
137
|
});
|
|
137
|
-
if (
|
|
138
|
+
if (!skipCleaningRefresh) toRefreshVariables["delete"](name);
|
|
138
139
|
return _objectSpread(_objectSpread({}, sub), {}, _defineProperty({}, name, value));
|
|
139
140
|
}
|
|
140
141
|
return _objectSpread(_objectSpread({}, sub), {}, _defineProperty({}, name, current));
|
|
@@ -88,8 +88,9 @@ var fakeExecute = function fakeExecute(bindings) {
|
|
|
88
88
|
}),
|
|
89
89
|
_createRefreshCalcula2 = _slicedToArray(_createRefreshCalcula, 1),
|
|
90
90
|
refresh = _createRefreshCalcula2[0];
|
|
91
|
-
|
|
92
|
-
(0, _vitest.expect)(
|
|
91
|
+
var refreshedVariables = refresh(variables, {});
|
|
92
|
+
(0, _vitest.expect)(refreshedVariables.COUNT_AGES).toBe(3);
|
|
93
|
+
(0, _vitest.expect)(refresh(refreshedVariables, {
|
|
93
94
|
iteration: 1
|
|
94
95
|
}).COUNT_AGES).toBe(3);
|
|
95
96
|
(0, _vitest.expect)(bindings.AGE).toEqual([10, 20, 30]);
|
|
@@ -24,15 +24,15 @@ function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
|
|
|
24
24
|
* - expressions, VTL that states the level of completion for each iteration
|
|
25
25
|
*/
|
|
26
26
|
function fillRoundaboutProps(component, state) {
|
|
27
|
-
var iterations = component.iterations
|
|
28
|
-
|
|
29
|
-
var compiled = Object.entries(expressions).reduce(function (result, _ref) {
|
|
27
|
+
var iterations = component.iterations; // iterations is the result of an expression but we know it's a number
|
|
28
|
+
var compiled = Object.entries(component.expressions).reduce(function (result, _ref) {
|
|
30
29
|
var _ref2 = _slicedToArray(_ref, 2),
|
|
31
30
|
name = _ref2[0],
|
|
32
31
|
expression = _ref2[1];
|
|
33
32
|
var values = new Array(iterations).fill(null).map(function (_, iteration) {
|
|
34
33
|
return state.executeExpression(expression, {
|
|
35
|
-
iteration: iteration
|
|
34
|
+
iteration: iteration,
|
|
35
|
+
skipCleaningRefresh: iteration < iterations - 1
|
|
36
36
|
});
|
|
37
37
|
});
|
|
38
38
|
return _objectSpread(_objectSpread({}, result), {}, _defineProperty({}, name, values));
|
|
@@ -65,7 +65,7 @@ function cleanedValue(variable, iteration) {
|
|
|
65
65
|
var _variable$variable$va;
|
|
66
66
|
initialValue = (_variable$variable$va = variable.variable.values.COLLECTED) !== null && _variable$variable$va !== void 0 ? _variable$variable$va : null;
|
|
67
67
|
}
|
|
68
|
-
if (
|
|
68
|
+
if (iteration === undefined || !Array.isArray(variable.value)) {
|
|
69
69
|
return initialValue;
|
|
70
70
|
}
|
|
71
71
|
|
|
@@ -8,6 +8,7 @@ var _source2 = _interopRequireDefault(require("../stories/questionnaires/logemen
|
|
|
8
8
|
var _source3 = _interopRequireDefault(require("../stories/questionnaires/simpsons/source.json"));
|
|
9
9
|
var _source4 = _interopRequireDefault(require("../stories/component-set/source.json"));
|
|
10
10
|
var _source5 = _interopRequireDefault(require("../stories/behaviour/cleaning/source.json"));
|
|
11
|
+
var _sourceLoop = _interopRequireDefault(require("../stories/behaviour/cleaning/source-loop.json"));
|
|
11
12
|
var _sourceResizingCleaning = _interopRequireDefault(require("../stories/behaviour/resizing/source-resizing-cleaning.json"));
|
|
12
13
|
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; }
|
|
13
14
|
function _typeof(obj) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && "function" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }, _typeof(obj); }
|
|
@@ -206,6 +207,35 @@ var dataFromObject = function dataFromObject(o) {
|
|
|
206
207
|
});
|
|
207
208
|
(0, _vitest.expect)(spy.mock.calls[2][1]).toEqual('US');
|
|
208
209
|
});
|
|
210
|
+
(0, _vitest.it)('should handle cleaning in a loop', function () {
|
|
211
|
+
var _renderHook11 = (0, _reactHooks.renderHook)(function () {
|
|
212
|
+
return (0, _useLunatic["default"])(_sourceLoop["default"], undefined, {});
|
|
213
|
+
}),
|
|
214
|
+
result = _renderHook11.result;
|
|
215
|
+
(0, _reactHooks.act)(function () {
|
|
216
|
+
result.current.onChange({
|
|
217
|
+
name: 'PRENOM'
|
|
218
|
+
}, ['John', 'Doe', 'Marc']);
|
|
219
|
+
result.current.onChange({
|
|
220
|
+
name: 'AGE'
|
|
221
|
+
}, [18, 18, 18]);
|
|
222
|
+
// Go in the first iteration
|
|
223
|
+
result.current.goNextPage();
|
|
224
|
+
result.current.goNextPage();
|
|
225
|
+
});
|
|
226
|
+
var expectCollectedAgeToEqual = function expectCollectedAgeToEqual(expectation) {
|
|
227
|
+
(0, _vitest.expect)(result.current.getData(false).COLLECTED.AGE.COLLECTED).toEqual(expectation);
|
|
228
|
+
};
|
|
229
|
+
expectCollectedAgeToEqual([18, 18, 18]);
|
|
230
|
+
(0, _reactHooks.act)(function () {
|
|
231
|
+
result.current.onChange({
|
|
232
|
+
name: 'HIDE_AGE'
|
|
233
|
+
}, true, {
|
|
234
|
+
iteration: 0
|
|
235
|
+
});
|
|
236
|
+
});
|
|
237
|
+
expectCollectedAgeToEqual([null, 18, 18]);
|
|
238
|
+
});
|
|
209
239
|
});
|
|
210
240
|
(0, _vitest.describe)('resizing', function () {
|
|
211
241
|
var expectValueForResponse = function expectValueForResponse(spy, responseName, expectedValue) {
|
|
@@ -217,12 +247,12 @@ var dataFromObject = function dataFromObject(o) {
|
|
|
217
247
|
};
|
|
218
248
|
(0, _vitest.it)('should resize after cleaning', function () {
|
|
219
249
|
var spy = _vitest.vi.fn();
|
|
220
|
-
var
|
|
250
|
+
var _renderHook12 = (0, _reactHooks.renderHook)(function () {
|
|
221
251
|
return (0, _useLunatic["default"])(_sourceResizingCleaning["default"], undefined, {
|
|
222
252
|
onChange: spy
|
|
223
253
|
});
|
|
224
254
|
}),
|
|
225
|
-
result =
|
|
255
|
+
result = _renderHook12.result;
|
|
226
256
|
result.current.onChange({
|
|
227
257
|
name: 'NB'
|
|
228
258
|
}, 3);
|
|
@@ -235,10 +265,10 @@ var dataFromObject = function dataFromObject(o) {
|
|
|
235
265
|
});
|
|
236
266
|
(0, _vitest.describe)('getComponents()', function () {
|
|
237
267
|
(0, _vitest.describe)('componentSet', function () {
|
|
238
|
-
var
|
|
268
|
+
var _renderHook13 = (0, _reactHooks.renderHook)(function () {
|
|
239
269
|
return (0, _useLunatic["default"])(_source4["default"], undefined, {});
|
|
240
270
|
}),
|
|
241
|
-
result =
|
|
271
|
+
result = _renderHook13.result;
|
|
242
272
|
var getComponents = function getComponents() {
|
|
243
273
|
return result.current.getComponents();
|
|
244
274
|
};
|