@inseefr/lunatic 3.0.0-rc.12 → 3.0.0-rc.13
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/package.json +1 -1
- package/lib/src/components/Duration/durationUtils.js +1 -1
- package/lib/src/components/Radio/Radio.js +2 -2
- package/lib/src/components/Radio/Radio.js.map +1 -1
- package/lib/src/components/type.d.ts +1 -1
- package/lib/src/use-lunatic/actions.d.ts +6 -6
- package/lib/src/use-lunatic/commons/check-pager.js +1 -1
- package/lib/src/use-lunatic/commons/check-pager.js.map +1 -1
- package/lib/src/use-lunatic/commons/fill-components/fill-component-required.d.ts +36 -19
- package/lib/src/use-lunatic/commons/fill-components/fill-component-value.spec.js +2 -2
- package/lib/src/use-lunatic/commons/fill-components/fill-component-value.spec.js.map +1 -1
- package/lib/src/use-lunatic/commons/fill-components/fill-from-state.d.ts +58 -19
- package/lib/src/use-lunatic/commons/fill-components/fill-iterations.d.ts +18 -16
- package/lib/src/use-lunatic/commons/fill-components/fill-specific-expression.d.ts +61 -5
- package/lib/src/use-lunatic/commons/is-First-last-page.js +1 -1
- package/lib/src/use-lunatic/commons/is-First-last-page.js.map +1 -1
- package/lib/src/use-lunatic/commons/page-navigation.js +11 -11
- package/lib/src/use-lunatic/commons/page-navigation.js.map +1 -1
- package/lib/src/use-lunatic/commons/page-navigation.spec.js +21 -21
- package/lib/src/use-lunatic/commons/page-navigation.spec.js.map +1 -1
- package/lib/src/use-lunatic/commons/page-tag.d.ts +9 -5
- package/lib/src/use-lunatic/commons/page-tag.js +19 -12
- package/lib/src/use-lunatic/commons/page-tag.js.map +1 -1
- package/lib/src/use-lunatic/commons/page-tag.spec.d.ts +1 -0
- package/lib/src/use-lunatic/commons/page-tag.spec.js +19 -0
- package/lib/src/use-lunatic/commons/page-tag.spec.js.map +1 -0
- package/lib/src/use-lunatic/commons/page.d.ts +1 -1
- package/lib/src/use-lunatic/commons/use-components-from-state.d.ts +1 -1
- package/lib/src/use-lunatic/initial-state.js +2 -2
- package/lib/src/use-lunatic/initial-state.js.map +1 -1
- package/lib/src/use-lunatic/reducer/commons/auto-explore-loop.js +1 -1
- package/lib/src/use-lunatic/reducer/commons/auto-explore-loop.js.map +1 -1
- package/lib/src/use-lunatic/reducer/overview/overview-on-change.js +2 -2
- package/lib/src/use-lunatic/reducer/overview/overview-on-change.js.map +1 -1
- package/lib/src/use-lunatic/reducer/overview/overview-on-init.d.ts +4 -4
- package/lib/src/use-lunatic/reducer/overview/overview-on-init.js +1 -1
- package/lib/src/use-lunatic/reducer/overview/overview-on-init.js.map +1 -1
- package/lib/src/use-lunatic/reducer/reduce-go-to-page.js +7 -10
- package/lib/src/use-lunatic/reducer/reduce-go-to-page.js.map +1 -1
- package/lib/src/use-lunatic/reducer/reduce-on-init.js +2 -2
- package/lib/src/use-lunatic/reducer/reduce-on-init.js.map +1 -1
- package/lib/src/use-lunatic/replace-component-sequence.d.ts +1 -1
- package/lib/src/use-lunatic/type-source.d.ts +6 -1
- package/lib/src/use-lunatic/type.d.ts +5 -4
- package/lib/src/use-lunatic/use-lunatic.d.ts +15 -15
- package/lib/src/use-lunatic/use-lunatic.test.js +5 -5
- package/lib/src/use-lunatic/use-lunatic.test.js.map +1 -1
- package/package.json +1 -1
|
@@ -32,7 +32,7 @@ declare function fillSpecificExpressions(component: DeepTranslateExpression<Luna
|
|
|
32
32
|
iterations: import("react").ReactNode;
|
|
33
33
|
locked: boolean;
|
|
34
34
|
} | {
|
|
35
|
-
components: import("./fill-components").FilledLunaticComponentProps<"Sequence" | "Subsequence" | "RosterForLoop" | "Loop" | "Table" | "InputNumber" | "Datepicker" | "CheckboxGroup" | "CheckboxBoolean" | "Radio" | "FilterDescription" | "Dropdown" | "PairwiseLinks" | "Roundabout" | "Suggester" | "Input" | "Textarea" | "CheckboxOne" | "Question">[];
|
|
35
|
+
components: import("./fill-components").FilledLunaticComponentProps<"Sequence" | "Subsequence" | "RosterForLoop" | "Loop" | "Table" | "InputNumber" | "Datepicker" | "Duration" | "CheckboxGroup" | "CheckboxBoolean" | "Radio" | "FilterDescription" | "Dropdown" | "PairwiseLinks" | "Roundabout" | "Suggester" | "Input" | "Textarea" | "CheckboxOne" | "Question">[];
|
|
36
36
|
label: import("react").ReactNode;
|
|
37
37
|
description: import("react").ReactNode;
|
|
38
38
|
declarations?: import("../../type-source").DeclarationType[] | undefined;
|
|
@@ -56,7 +56,7 @@ declare function fillSpecificExpressions(component: DeepTranslateExpression<Luna
|
|
|
56
56
|
page: string;
|
|
57
57
|
componentType: "Question";
|
|
58
58
|
} | {
|
|
59
|
-
getComponents: (iteration: number) => import("./fill-components").FilledLunaticComponentProps<"Sequence" | "Subsequence" | "RosterForLoop" | "Loop" | "Table" | "InputNumber" | "Datepicker" | "CheckboxGroup" | "CheckboxBoolean" | "Radio" | "FilterDescription" | "Dropdown" | "PairwiseLinks" | "Roundabout" | "Suggester" | "Input" | "Textarea" | "CheckboxOne" | "Question">[];
|
|
59
|
+
getComponents: (iteration: number) => import("./fill-components").FilledLunaticComponentProps<"Sequence" | "Subsequence" | "RosterForLoop" | "Loop" | "Table" | "InputNumber" | "Datepicker" | "Duration" | "CheckboxGroup" | "CheckboxBoolean" | "Radio" | "FilterDescription" | "Dropdown" | "PairwiseLinks" | "Roundabout" | "Suggester" | "Input" | "Textarea" | "CheckboxOne" | "Question">[];
|
|
60
60
|
label: import("react").ReactNode;
|
|
61
61
|
description?: import("react").ReactNode;
|
|
62
62
|
declarations?: import("../../type-source").DeclarationType[] | undefined;
|
|
@@ -98,7 +98,7 @@ declare function fillSpecificExpressions(component: DeepTranslateExpression<Luna
|
|
|
98
98
|
positioning: "HORIZONTAL";
|
|
99
99
|
value?: Record<string, unknown[]> | undefined;
|
|
100
100
|
} | {
|
|
101
|
-
getComponents: (iteration: number) => import("./fill-components").FilledLunaticComponentProps<"Sequence" | "Subsequence" | "RosterForLoop" | "Loop" | "Table" | "InputNumber" | "Datepicker" | "CheckboxGroup" | "CheckboxBoolean" | "Radio" | "FilterDescription" | "Dropdown" | "PairwiseLinks" | "Roundabout" | "Suggester" | "Input" | "Textarea" | "CheckboxOne" | "Question">[];
|
|
101
|
+
getComponents: (iteration: number) => import("./fill-components").FilledLunaticComponentProps<"Sequence" | "Subsequence" | "RosterForLoop" | "Loop" | "Table" | "InputNumber" | "Datepicker" | "Duration" | "CheckboxGroup" | "CheckboxBoolean" | "Radio" | "FilterDescription" | "Dropdown" | "PairwiseLinks" | "Roundabout" | "Suggester" | "Input" | "Textarea" | "CheckboxOne" | "Question">[];
|
|
102
102
|
label: import("react").ReactNode;
|
|
103
103
|
description?: import("react").ReactNode;
|
|
104
104
|
declarations?: import("../../type-source").DeclarationType[] | undefined;
|
|
@@ -129,7 +129,7 @@ declare function fillSpecificExpressions(component: DeepTranslateExpression<Luna
|
|
|
129
129
|
iterations: import("react").ReactNode;
|
|
130
130
|
value?: Record<string, unknown[]> | undefined;
|
|
131
131
|
} | {
|
|
132
|
-
getComponents: (iteration: number) => import("./fill-components").FilledLunaticComponentProps<"Sequence" | "Subsequence" | "RosterForLoop" | "Loop" | "Table" | "InputNumber" | "Datepicker" | "CheckboxGroup" | "CheckboxBoolean" | "Radio" | "FilterDescription" | "Dropdown" | "PairwiseLinks" | "Roundabout" | "Suggester" | "Input" | "Textarea" | "CheckboxOne" | "Question">[];
|
|
132
|
+
getComponents: (iteration: number) => import("./fill-components").FilledLunaticComponentProps<"Sequence" | "Subsequence" | "RosterForLoop" | "Loop" | "Table" | "InputNumber" | "Datepicker" | "Duration" | "CheckboxGroup" | "CheckboxBoolean" | "Radio" | "FilterDescription" | "Dropdown" | "PairwiseLinks" | "Roundabout" | "Suggester" | "Input" | "Textarea" | "CheckboxOne" | "Question">[];
|
|
133
133
|
label: import("react").ReactNode;
|
|
134
134
|
description?: import("react").ReactNode;
|
|
135
135
|
declarations?: import("../../type-source").DeclarationType[] | undefined;
|
|
@@ -162,7 +162,7 @@ declare function fillSpecificExpressions(component: DeepTranslateExpression<Luna
|
|
|
162
162
|
};
|
|
163
163
|
value?: Record<string, unknown[]> | undefined;
|
|
164
164
|
} | {
|
|
165
|
-
getComponents: (x: number, y: number) => import("./fill-components").FilledLunaticComponentProps<"Sequence" | "Subsequence" | "RosterForLoop" | "Loop" | "Table" | "InputNumber" | "Datepicker" | "CheckboxGroup" | "CheckboxBoolean" | "Radio" | "FilterDescription" | "Dropdown" | "PairwiseLinks" | "Roundabout" | "Suggester" | "Input" | "Textarea" | "CheckboxOne" | "Question">[];
|
|
165
|
+
getComponents: (x: number, y: number) => import("./fill-components").FilledLunaticComponentProps<"Sequence" | "Subsequence" | "RosterForLoop" | "Loop" | "Table" | "InputNumber" | "Datepicker" | "Duration" | "CheckboxGroup" | "CheckboxBoolean" | "Radio" | "FilterDescription" | "Dropdown" | "PairwiseLinks" | "Roundabout" | "Suggester" | "Input" | "Textarea" | "CheckboxOne" | "Question">[];
|
|
166
166
|
description?: import("react").ReactNode;
|
|
167
167
|
declarations?: import("../../type-source").DeclarationType[] | undefined;
|
|
168
168
|
conditionFilter?: import("react").ReactNode;
|
|
@@ -457,6 +457,35 @@ declare function fillSpecificExpressions(component: DeepTranslateExpression<Luna
|
|
|
457
457
|
max?: string | undefined;
|
|
458
458
|
} & import("./fill-management").FilledProps & import("./fill-component-value").FilledProps & import("./fill-missing-response").FilledProps & import("./fill-from-state").FilledProps & import("./fill-pagination").FilledProps & {
|
|
459
459
|
conditionFilter?: boolean | undefined;
|
|
460
|
+
}) | ({
|
|
461
|
+
label: import("react").ReactNode;
|
|
462
|
+
description?: import("react").ReactNode;
|
|
463
|
+
declarations?: import("../../type-source").DeclarationType[] | undefined;
|
|
464
|
+
conditionFilter?: import("react").ReactNode;
|
|
465
|
+
controls?: import("../../type-source").ControlType[] | undefined;
|
|
466
|
+
id: string;
|
|
467
|
+
bindingDependencies?: string[] | undefined;
|
|
468
|
+
hierarchy?: {
|
|
469
|
+
sequence: {
|
|
470
|
+
label: import("react").ReactNode;
|
|
471
|
+
id: string;
|
|
472
|
+
page: string;
|
|
473
|
+
};
|
|
474
|
+
subSequence?: {
|
|
475
|
+
label: import("react").ReactNode;
|
|
476
|
+
id: string;
|
|
477
|
+
page: string;
|
|
478
|
+
} | undefined;
|
|
479
|
+
} | undefined;
|
|
480
|
+
mandatory?: boolean | undefined;
|
|
481
|
+
page: string;
|
|
482
|
+
componentType: "Duration";
|
|
483
|
+
format: "PnYnM" | "PTnHnM";
|
|
484
|
+
response: {
|
|
485
|
+
name: string;
|
|
486
|
+
};
|
|
487
|
+
} & import("./fill-management").FilledProps & import("./fill-component-value").FilledProps & import("./fill-missing-response").FilledProps & import("./fill-from-state").FilledProps & import("./fill-pagination").FilledProps & {
|
|
488
|
+
conditionFilter?: boolean | undefined;
|
|
460
489
|
}) | ({
|
|
461
490
|
label: import("react").ReactNode;
|
|
462
491
|
description?: import("react").ReactNode;
|
|
@@ -951,6 +980,33 @@ declare function fillSpecificExpressions(component: DeepTranslateExpression<Luna
|
|
|
951
980
|
};
|
|
952
981
|
min?: string | undefined;
|
|
953
982
|
max?: string | undefined;
|
|
983
|
+
} | {
|
|
984
|
+
label: import("react").ReactNode;
|
|
985
|
+
description?: import("react").ReactNode;
|
|
986
|
+
declarations?: import("../../type-source").DeclarationType[] | undefined;
|
|
987
|
+
conditionFilter?: import("react").ReactNode;
|
|
988
|
+
controls?: import("../../type-source").ControlType[] | undefined;
|
|
989
|
+
id: string;
|
|
990
|
+
bindingDependencies?: string[] | undefined;
|
|
991
|
+
hierarchy?: {
|
|
992
|
+
sequence: {
|
|
993
|
+
label: import("react").ReactNode;
|
|
994
|
+
id: string;
|
|
995
|
+
page: string;
|
|
996
|
+
};
|
|
997
|
+
subSequence?: {
|
|
998
|
+
label: import("react").ReactNode;
|
|
999
|
+
id: string;
|
|
1000
|
+
page: string;
|
|
1001
|
+
} | undefined;
|
|
1002
|
+
} | undefined;
|
|
1003
|
+
mandatory?: boolean | undefined;
|
|
1004
|
+
page: string;
|
|
1005
|
+
componentType: "Duration";
|
|
1006
|
+
format: "PnYnM" | "PTnHnM";
|
|
1007
|
+
response: {
|
|
1008
|
+
name: string;
|
|
1009
|
+
};
|
|
954
1010
|
} | {
|
|
955
1011
|
label: import("react").ReactNode;
|
|
956
1012
|
description?: import("react").ReactNode;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"is-First-last-page.js","sourceRoot":"","sources":["../../../../src/use-lunatic/commons/is-First-last-page.ts"],"names":[],"mappings":"AAEA,SAAS,eAAe,CAAC,KAA4B;IACpD,MAAM,EAAE,IAAI,EAAE,OAAO,EAAE,GAAG,KAAK,CAAC;IAChC,MAAM,WAAW,GAAG,IAAI,KAAK,
|
|
1
|
+
{"version":3,"file":"is-First-last-page.js","sourceRoot":"","sources":["../../../../src/use-lunatic/commons/is-First-last-page.ts"],"names":[],"mappings":"AAEA,SAAS,eAAe,CAAC,KAA4B;IACpD,MAAM,EAAE,IAAI,EAAE,OAAO,EAAE,GAAG,KAAK,CAAC;IAChC,MAAM,WAAW,GAAG,IAAI,KAAK,CAAC,CAAC;IAC/B,MAAM,UAAU,GAAG,IAAI,KAAK,OAAO,CAAC;IACpC,OAAO,EAAE,WAAW,EAAE,UAAU,EAAE,CAAC;AACpC,CAAC;AAED,eAAe,eAAe,CAAC"}
|
|
@@ -10,11 +10,11 @@ const resetIteration = {
|
|
|
10
10
|
export function getNextPager(pager, parent) {
|
|
11
11
|
// Increment the page or subPage
|
|
12
12
|
let [page, subPage] = pager.subPage !== undefined
|
|
13
|
-
? [
|
|
14
|
-
: [
|
|
13
|
+
? [pager.page, pager.subPage + 1]
|
|
14
|
+
: [pager.page + 1, undefined];
|
|
15
15
|
let iteration = pager.iteration;
|
|
16
16
|
// We reached the end of the questionnaire
|
|
17
|
-
if (page >
|
|
17
|
+
if (page > pager.maxPage) {
|
|
18
18
|
return pager;
|
|
19
19
|
}
|
|
20
20
|
// We reached the end of the sequence
|
|
@@ -24,7 +24,7 @@ export function getNextPager(pager, parent) {
|
|
|
24
24
|
if (isEndSequence && moveUpOnEnd) {
|
|
25
25
|
return {
|
|
26
26
|
...pager,
|
|
27
|
-
page: page
|
|
27
|
+
page: page,
|
|
28
28
|
...resetIteration,
|
|
29
29
|
};
|
|
30
30
|
}
|
|
@@ -39,13 +39,13 @@ export function getNextPager(pager, parent) {
|
|
|
39
39
|
iteration >= pager.nbIterations) {
|
|
40
40
|
return getNextPager({
|
|
41
41
|
...pager,
|
|
42
|
-
page: page
|
|
42
|
+
page: page,
|
|
43
43
|
...resetIteration,
|
|
44
44
|
}, parent);
|
|
45
45
|
}
|
|
46
46
|
return {
|
|
47
47
|
...pager,
|
|
48
|
-
page: page
|
|
48
|
+
page: page,
|
|
49
49
|
subPage,
|
|
50
50
|
iteration,
|
|
51
51
|
};
|
|
@@ -53,8 +53,8 @@ export function getNextPager(pager, parent) {
|
|
|
53
53
|
export function getPrevPager(pager, parent) {
|
|
54
54
|
// Decrement the page or subPage
|
|
55
55
|
let [page, subPage] = pager.subPage !== undefined
|
|
56
|
-
? [
|
|
57
|
-
: [
|
|
56
|
+
? [pager.page, pager.subPage - 1]
|
|
57
|
+
: [pager.page - 1, undefined];
|
|
58
58
|
let iteration = pager.iteration;
|
|
59
59
|
const moveUpOnStart = parent === 'Roundabout' && pager.nbIterations && pager.nbIterations > 1;
|
|
60
60
|
// We reached the start of the questionnaire
|
|
@@ -67,7 +67,7 @@ export function getPrevPager(pager, parent) {
|
|
|
67
67
|
if (moveUpOnStart) {
|
|
68
68
|
return {
|
|
69
69
|
...pager,
|
|
70
|
-
page: page
|
|
70
|
+
page: page,
|
|
71
71
|
...resetIteration,
|
|
72
72
|
};
|
|
73
73
|
}
|
|
@@ -79,13 +79,13 @@ export function getPrevPager(pager, parent) {
|
|
|
79
79
|
if (isStartSequence) {
|
|
80
80
|
return getPrevPager({
|
|
81
81
|
...pager,
|
|
82
|
-
page: page
|
|
82
|
+
page: page,
|
|
83
83
|
...resetIteration,
|
|
84
84
|
}, parent);
|
|
85
85
|
}
|
|
86
86
|
return {
|
|
87
87
|
...pager,
|
|
88
|
-
page: page
|
|
88
|
+
page: page,
|
|
89
89
|
subPage,
|
|
90
90
|
iteration,
|
|
91
91
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"page-navigation.js","sourceRoot":"","sources":["../../../../src/use-lunatic/commons/page-navigation.ts"],"names":[],"mappings":"AAGA,MAAM,cAAc,GAAG;IACtB,OAAO,EAAE,SAAS;IAClB,UAAU,EAAE,SAAS;IACrB,SAAS,EAAE,SAAS;IACpB,YAAY,EAAE,SAAS;CACvB,CAAC;AAEF;;GAEG;AACH,MAAM,UAAU,YAAY,CAC3B,KAA4B,EAC5B,MAA6B;IAE7B,gCAAgC;IAChC,IAAI,CAAC,IAAI,EAAE,OAAO,CAAC,GAClB,KAAK,CAAC,OAAO,KAAK,SAAS;QAC1B,CAAC,CAAC,CAAC,
|
|
1
|
+
{"version":3,"file":"page-navigation.js","sourceRoot":"","sources":["../../../../src/use-lunatic/commons/page-navigation.ts"],"names":[],"mappings":"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"}
|
|
@@ -3,8 +3,8 @@ import { getNextPager, getPrevPager } from './page-navigation';
|
|
|
3
3
|
describe('page-navigation', () => {
|
|
4
4
|
describe('getNextPager', () => {
|
|
5
5
|
const base = {
|
|
6
|
-
page:
|
|
7
|
-
maxPage:
|
|
6
|
+
page: 2,
|
|
7
|
+
maxPage: 3,
|
|
8
8
|
subPage: 0,
|
|
9
9
|
nbSubPages: 3,
|
|
10
10
|
iteration: 0,
|
|
@@ -39,35 +39,35 @@ describe('page-navigation', () => {
|
|
|
39
39
|
expect(getNextPager(pager)).toEqual({
|
|
40
40
|
...pager,
|
|
41
41
|
...reset,
|
|
42
|
-
page:
|
|
42
|
+
page: 3,
|
|
43
43
|
});
|
|
44
44
|
expect(getNextPager(pager, 'Roundabout')).toEqual({
|
|
45
45
|
...pager,
|
|
46
46
|
...reset,
|
|
47
|
-
page:
|
|
47
|
+
page: 2,
|
|
48
48
|
});
|
|
49
49
|
});
|
|
50
50
|
it('should navigate on simple page without iteration', () => {
|
|
51
51
|
const pager = {
|
|
52
|
-
page:
|
|
53
|
-
maxPage:
|
|
52
|
+
page: 1,
|
|
53
|
+
maxPage: 3,
|
|
54
54
|
iteration: undefined,
|
|
55
55
|
};
|
|
56
|
-
expect(getNextPager(pager).page).toEqual(
|
|
56
|
+
expect(getNextPager(pager).page).toEqual(2);
|
|
57
57
|
});
|
|
58
58
|
it('should stop at the last page', () => {
|
|
59
59
|
const pager = {
|
|
60
|
-
page:
|
|
61
|
-
maxPage:
|
|
60
|
+
page: 3,
|
|
61
|
+
maxPage: 3,
|
|
62
62
|
iteration: undefined,
|
|
63
63
|
};
|
|
64
|
-
expect(getNextPager(pager).page).toEqual(
|
|
64
|
+
expect(getNextPager(pager).page).toEqual(3);
|
|
65
65
|
});
|
|
66
66
|
});
|
|
67
67
|
describe('getPrevPager', () => {
|
|
68
68
|
const base = {
|
|
69
|
-
page:
|
|
70
|
-
maxPage:
|
|
69
|
+
page: 2,
|
|
70
|
+
maxPage: 3,
|
|
71
71
|
subPage: 2,
|
|
72
72
|
nbSubPages: 3,
|
|
73
73
|
iteration: 1,
|
|
@@ -102,34 +102,34 @@ describe('page-navigation', () => {
|
|
|
102
102
|
expect(getPrevPager(pager)).toEqual({
|
|
103
103
|
...pager,
|
|
104
104
|
...reset,
|
|
105
|
-
page:
|
|
105
|
+
page: 1,
|
|
106
106
|
});
|
|
107
107
|
expect(getPrevPager(pager, 'Roundabout')).toEqual({
|
|
108
108
|
...pager,
|
|
109
109
|
...reset,
|
|
110
|
-
page:
|
|
110
|
+
page: 2,
|
|
111
111
|
});
|
|
112
112
|
expect(getPrevPager({ ...pager, iteration: 1 }, 'Roundabout')).toEqual({
|
|
113
113
|
...pager,
|
|
114
114
|
...reset,
|
|
115
|
-
page:
|
|
115
|
+
page: 2,
|
|
116
116
|
});
|
|
117
117
|
});
|
|
118
118
|
it('should navigate on simple page without iteration', () => {
|
|
119
119
|
const pager = {
|
|
120
|
-
page:
|
|
121
|
-
maxPage:
|
|
120
|
+
page: 2,
|
|
121
|
+
maxPage: 3,
|
|
122
122
|
iteration: undefined,
|
|
123
123
|
};
|
|
124
|
-
expect(getPrevPager(pager).page).toEqual(
|
|
124
|
+
expect(getPrevPager(pager).page).toEqual(1);
|
|
125
125
|
});
|
|
126
126
|
it('should stop at the first page', () => {
|
|
127
127
|
const pager = {
|
|
128
|
-
page:
|
|
129
|
-
maxPage:
|
|
128
|
+
page: 1,
|
|
129
|
+
maxPage: 3,
|
|
130
130
|
iteration: undefined,
|
|
131
131
|
};
|
|
132
|
-
expect(getPrevPager(pager).page).toEqual(
|
|
132
|
+
expect(getPrevPager(pager).page).toEqual(1);
|
|
133
133
|
});
|
|
134
134
|
});
|
|
135
135
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"page-navigation.spec.js","sourceRoot":"","sources":["../../../../src/use-lunatic/commons/page-navigation.spec.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,QAAQ,CAAC;AAC9C,OAAO,EAAE,YAAY,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AAG/D,QAAQ,CAAC,iBAAiB,EAAE,GAAG,EAAE;IAChC,QAAQ,CAAC,cAAc,EAAE,GAAG,EAAE;QAC7B,MAAM,IAAI,GAAG;YACZ,IAAI,EAAE,
|
|
1
|
+
{"version":3,"file":"page-navigation.spec.js","sourceRoot":"","sources":["../../../../src/use-lunatic/commons/page-navigation.spec.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,12 +1,16 @@
|
|
|
1
|
-
import type { LunaticState } from '../type';
|
|
1
|
+
import type { LunaticState, PageTag } from '../type';
|
|
2
2
|
/**
|
|
3
3
|
* Generate page name from the pager
|
|
4
4
|
*/
|
|
5
|
-
export declare function getPageTag(pager: LunaticState['pager']):
|
|
6
|
-
export declare function getPagerFromPageTag(pageTag?: string): {
|
|
7
|
-
page:
|
|
5
|
+
export declare function getPageTag(pager: LunaticState['pager']): PageTag;
|
|
6
|
+
export declare function getPagerFromPageTag(pageTag?: string | number): {
|
|
7
|
+
page: number;
|
|
8
|
+
subPage?: undefined;
|
|
9
|
+
iteration?: undefined;
|
|
10
|
+
} | {
|
|
11
|
+
page: number;
|
|
8
12
|
subPage: number;
|
|
9
13
|
iteration: number;
|
|
10
14
|
} | null;
|
|
11
15
|
export declare function isNewReachedPage(pager: LunaticState['pager']): boolean;
|
|
12
|
-
export declare function getNewReachedPage(pager: LunaticState['pager']):
|
|
16
|
+
export declare function getNewReachedPage(pager: LunaticState['pager']): PageTag | undefined;
|
|
@@ -8,15 +8,21 @@ export function getPageTag(pager) {
|
|
|
8
8
|
}
|
|
9
9
|
return `${page}`;
|
|
10
10
|
}
|
|
11
|
-
export function getPagerFromPageTag(pageTag =
|
|
11
|
+
export function getPagerFromPageTag(pageTag = 1) {
|
|
12
|
+
if (typeof pageTag === 'number') {
|
|
13
|
+
return { page: pageTag };
|
|
14
|
+
}
|
|
12
15
|
const pattern = /(?<page>\d+)\.?(?<subPagePlusUn>\d+)?#?(?<iterationPlusUn>\d+)?/g;
|
|
13
|
-
const match = [...pageTag?.matchAll(pattern)];
|
|
16
|
+
const match = [...pageTag?.toString().matchAll(pattern)];
|
|
14
17
|
if (match.length === 0) {
|
|
15
18
|
return null;
|
|
16
19
|
}
|
|
17
20
|
const [{ groups: { page, subPagePlusUn, iterationPlusUn }, },] = match;
|
|
21
|
+
if (!subPagePlusUn) {
|
|
22
|
+
return { page: parseInt(page, 10) };
|
|
23
|
+
}
|
|
18
24
|
return {
|
|
19
|
-
page,
|
|
25
|
+
page: parseInt(page, 10),
|
|
20
26
|
subPage: parseInt(subPagePlusUn, 10) - 1,
|
|
21
27
|
iteration: parseInt(iterationPlusUn, 10) - 1,
|
|
22
28
|
};
|
|
@@ -27,15 +33,16 @@ export function isNewReachedPage(pager) {
|
|
|
27
33
|
if (!reachedPager) {
|
|
28
34
|
return false;
|
|
29
35
|
}
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
36
|
+
if (page > reachedPager.page) {
|
|
37
|
+
return true;
|
|
38
|
+
}
|
|
39
|
+
if ((subPage ?? 0) > (reachedPager.subPage ?? 0)) {
|
|
40
|
+
return true;
|
|
41
|
+
}
|
|
42
|
+
if ((iteration ?? 0) > (reachedPager.iteration ?? 0)) {
|
|
43
|
+
return true;
|
|
44
|
+
}
|
|
45
|
+
return false;
|
|
39
46
|
}
|
|
40
47
|
export function getNewReachedPage(pager) {
|
|
41
48
|
return isNewReachedPage(pager) ? getPageTag(pager) : pager.lastReachedPage;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"page-tag.js","sourceRoot":"","sources":["../../../../src/use-lunatic/commons/page-tag.ts"],"names":[],"mappings":"AAEA;;GAEG;AACH,MAAM,UAAU,UAAU,CAAC,KAA4B;IACtD,MAAM,EAAE,IAAI,EAAE,OAAO,EAAE,SAAS,EAAE,GAAG,KAAK,CAAC;IAC3C,IAAI,OAAO,KAAK,SAAS,IAAI,SAAS,KAAK,SAAS,EAAE,CAAC;QACtD,OAAO,GAAG,IAAI,IAAI,OAAO,GAAG,CAAC,IAAI,SAAS,GAAG,CAAC,EAAE,CAAC;IAClD,CAAC;IAED,OAAO,GAAG,IAAI,EAAE,CAAC;AAClB,CAAC;AAED,MAAM,UAAU,mBAAmB,CAAC,
|
|
1
|
+
{"version":3,"file":"page-tag.js","sourceRoot":"","sources":["../../../../src/use-lunatic/commons/page-tag.ts"],"names":[],"mappings":"AAEA;;GAEG;AACH,MAAM,UAAU,UAAU,CAAC,KAA4B;IACtD,MAAM,EAAE,IAAI,EAAE,OAAO,EAAE,SAAS,EAAE,GAAG,KAAK,CAAC;IAC3C,IAAI,OAAO,KAAK,SAAS,IAAI,SAAS,KAAK,SAAS,EAAE,CAAC;QACtD,OAAO,GAAG,IAAI,IAAI,OAAO,GAAG,CAAC,IAAI,SAAS,GAAG,CAAC,EAAE,CAAC;IAClD,CAAC;IAED,OAAO,GAAG,IAAI,EAAE,CAAC;AAClB,CAAC;AAED,MAAM,UAAU,mBAAmB,CAAC,UAA2B,CAAC;IAC/D,IAAI,OAAO,OAAO,KAAK,QAAQ,EAAE,CAAC;QACjC,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC;IAC1B,CAAC;IACD,MAAM,OAAO,GACZ,kEAAkE,CAAC;IACpE,MAAM,KAAK,GAAG,CAAC,GAAI,OAAO,EAAE,QAAQ,EAAE,CAAC,QAAQ,CAAC,OAAO,CAAS,CAU3D,CAAC;IACN,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACxB,OAAO,IAAI,CAAC;IACb,CAAC;IACD,MAAM,CACL,EACC,MAAM,EAAE,EAAE,IAAI,EAAE,aAAa,EAAE,eAAe,EAAE,GAChD,EACD,GAAG,KAAK,CAAC;IACV,IAAI,CAAC,aAAa,EAAE,CAAC;QACpB,OAAO,EAAE,IAAI,EAAE,QAAQ,CAAC,IAAI,EAAE,EAAE,CAAC,EAAE,CAAC;IACrC,CAAC;IACD,OAAO;QACN,IAAI,EAAE,QAAQ,CAAC,IAAI,EAAE,EAAE,CAAC;QACxB,OAAO,EAAE,QAAQ,CAAC,aAAa,EAAE,EAAE,CAAC,GAAG,CAAC;QACxC,SAAS,EAAE,QAAQ,CAAC,eAAe,EAAE,EAAE,CAAC,GAAG,CAAC;KAC5C,CAAC;AACH,CAAC;AAED,MAAM,UAAU,gBAAgB,CAAC,KAA4B;IAC5D,MAAM,EAAE,eAAe,EAAE,IAAI,EAAE,OAAO,EAAE,SAAS,EAAE,GAAG,KAAK,CAAC;IAC5D,MAAM,YAAY,GAAG,mBAAmB,CAAC,eAAe,IAAI,GAAG,CAAC,CAAC;IAEjE,IAAI,CAAC,YAAY,EAAE,CAAC;QACnB,OAAO,KAAK,CAAC;IACd,CAAC;IAED,IAAI,IAAI,GAAG,YAAY,CAAC,IAAI,EAAE,CAAC;QAC9B,OAAO,IAAI,CAAC;IACb,CAAC;IAED,IAAI,CAAC,OAAO,IAAI,CAAC,CAAC,GAAG,CAAC,YAAY,CAAC,OAAO,IAAI,CAAC,CAAC,EAAE,CAAC;QAClD,OAAO,IAAI,CAAC;IACb,CAAC;IAED,IAAI,CAAC,SAAS,IAAI,CAAC,CAAC,GAAG,CAAC,YAAY,CAAC,SAAS,IAAI,CAAC,CAAC,EAAE,CAAC;QACtD,OAAO,IAAI,CAAC;IACb,CAAC;IAED,OAAO,KAAK,CAAC;AACd,CAAC;AAED,MAAM,UAAU,iBAAiB,CAChC,KAA4B;IAE5B,OAAO,gBAAgB,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,eAAe,CAAC;AAC5E,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
import { describe, it, expect } from 'vitest';
|
|
2
|
+
import { getPagerFromPageTag } from './page-tag';
|
|
3
|
+
describe('page-tag', () => {
|
|
4
|
+
describe('getPagerFromPageTag', () => {
|
|
5
|
+
it('should handle simple page', () => {
|
|
6
|
+
expect(getPagerFromPageTag('2')).toEqual({
|
|
7
|
+
page: 2,
|
|
8
|
+
});
|
|
9
|
+
});
|
|
10
|
+
it('should handle page with iteration', () => {
|
|
11
|
+
expect(getPagerFromPageTag('2.1#3')).toEqual({
|
|
12
|
+
page: 2,
|
|
13
|
+
subPage: 0,
|
|
14
|
+
iteration: 2,
|
|
15
|
+
});
|
|
16
|
+
});
|
|
17
|
+
});
|
|
18
|
+
});
|
|
19
|
+
//# sourceMappingURL=page-tag.spec.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"page-tag.spec.js","sourceRoot":"","sources":["../../../../src/use-lunatic/commons/page-tag.spec.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,EAAE,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAC9C,OAAO,EAAE,mBAAmB,EAAE,MAAM,YAAY,CAAC;AAEjD,QAAQ,CAAC,UAAU,EAAE,GAAG,EAAE;IACzB,QAAQ,CAAC,qBAAqB,EAAE,GAAG,EAAE;QACpC,EAAE,CAAC,2BAA2B,EAAE,GAAG,EAAE;YACpC,MAAM,CAAC,mBAAmB,CAAC,GAAG,CAAC,CAAC,CAAC,OAAO,CAAC;gBACxC,IAAI,EAAE,CAAC;aACP,CAAC,CAAC;QACJ,CAAC,CAAC,CAAC;QACH,EAAE,CAAC,mCAAmC,EAAE,GAAG,EAAE;YAC5C,MAAM,CAAC,mBAAmB,CAAC,OAAO,CAAC,CAAC,CAAC,OAAO,CAAC;gBAC5C,IAAI,EAAE,CAAC;gBACP,OAAO,EAAE,CAAC;gBACV,SAAS,EAAE,CAAC;aACZ,CAAC,CAAC;QACJ,CAAC,CAAC,CAAC;IACJ,CAAC,CAAC,CAAC;AACJ,CAAC,CAAC,CAAC"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import type { LunaticState } from '../type';
|
|
2
|
-
export declare function getPageId({ subPage, page, }: Pick<LunaticState['pager'], 'page' | 'subPage'>): string;
|
|
2
|
+
export declare function getPageId({ subPage, page, }: Pick<LunaticState['pager'], 'page' | 'subPage'>): string | number;
|
|
3
3
|
/**
|
|
4
4
|
* Converts a page number (3.1.2) to an array of numbers [3, 1, 2]
|
|
5
5
|
*/
|
|
@@ -1,3 +1,3 @@
|
|
|
1
1
|
import type { LunaticState } from '../type';
|
|
2
|
-
declare function useComponentsFromState(state: LunaticState): import("./fill-components/fill-components").FilledLunaticComponentProps<"Sequence" | "Subsequence" | "RosterForLoop" | "Loop" | "Table" | "InputNumber" | "Datepicker" | "CheckboxGroup" | "CheckboxBoolean" | "Radio" | "FilterDescription" | "Dropdown" | "PairwiseLinks" | "Roundabout" | "Suggester" | "Input" | "Textarea" | "CheckboxOne" | "Question">[];
|
|
2
|
+
declare function useComponentsFromState(state: LunaticState): import("./fill-components/fill-components").FilledLunaticComponentProps<"Sequence" | "Subsequence" | "RosterForLoop" | "Loop" | "Table" | "InputNumber" | "Datepicker" | "Duration" | "CheckboxGroup" | "CheckboxBoolean" | "Radio" | "FilterDescription" | "Dropdown" | "PairwiseLinks" | "Roundabout" | "Suggester" | "Input" | "Textarea" | "CheckboxOne" | "Question">[];
|
|
3
3
|
export default useComponentsFromState;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"initial-state.js","sourceRoot":"","sources":["../../../src/use-lunatic/initial-state.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,GAAG,EAAE,MAAM,oBAAoB,CAAC;AAEpD,OAAO,EAAE,eAAe,EAAE,MAAM,kBAAkB,CAAC;AACnD,OAAO,EAAE,qBAAqB,EAAE,MAAM,6CAA6C,CAAC;AACpF,OAAO,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AAEzC,MAAM,aAAa,GAAiB;IACnC,SAAS,EAAE,CAAC;IACZ,iDAAiD;IACjD,SAAS,EAAE,SAAS,EAAE,CAAC,CAAC,CAAE,IAAY,CAAC,CAAC,CAAC,IAAI,qBAAqB,EAAE;IACpE,KAAK,EAAE,EAAE;IACT,QAAQ,EAAE,KAAK;IACf,WAAW,EAAE,KAAK;IAClB,UAAU,EAAE,KAAK;IACjB,QAAQ,EAAE,CAAC,GAAG,CAAC;IACf,WAAW,EAAE,CAAC,SAAS,CAAC;IACxB,UAAU,EAAE,SAAS;IACrB,QAAQ,EAAE,EAAE;IACZ,YAAY,EAAE,EAAE;IAChB,QAAQ,EAAE,EAAE;IACZ,QAAQ,EAAE,EAAE;IACZ,KAAK,EAAE;QACN,IAAI,EAAE,
|
|
1
|
+
{"version":3,"file":"initial-state.js","sourceRoot":"","sources":["../../../src/use-lunatic/initial-state.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,GAAG,EAAE,MAAM,oBAAoB,CAAC;AAEpD,OAAO,EAAE,eAAe,EAAE,MAAM,kBAAkB,CAAC;AACnD,OAAO,EAAE,qBAAqB,EAAE,MAAM,6CAA6C,CAAC;AACpF,OAAO,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AAEzC,MAAM,aAAa,GAAiB;IACnC,SAAS,EAAE,CAAC;IACZ,iDAAiD;IACjD,SAAS,EAAE,SAAS,EAAE,CAAC,CAAC,CAAE,IAAY,CAAC,CAAC,CAAC,IAAI,qBAAqB,EAAE;IACpE,KAAK,EAAE,EAAE;IACT,QAAQ,EAAE,KAAK;IACf,WAAW,EAAE,KAAK;IAClB,UAAU,EAAE,KAAK;IACjB,QAAQ,EAAE,CAAC,GAAG,CAAC;IACf,WAAW,EAAE,CAAC,SAAS,CAAC;IACxB,UAAU,EAAE,SAAS;IACrB,QAAQ,EAAE,EAAE;IACZ,YAAY,EAAE,EAAE;IAChB,QAAQ,EAAE,EAAE;IACZ,QAAQ,EAAE,EAAE;IACZ,KAAK,EAAE;QACN,IAAI,EAAE,CAAC;QACP,OAAO,EAAE,CAAC;QACV,OAAO,EAAE,SAAS;QAClB,UAAU,EAAE,SAAS;QACrB,SAAS,EAAE,SAAS;QACpB,gBAAgB,EAAE,SAAS;QAC3B,YAAY,EAAE,SAAS;KACvB;IACD,OAAO,EAAE,KAAK;IACd,8BAA8B;IAC9B,cAAc,EAAE,GAAG,EAAE,GAAE,CAAC;IACxB,iBAAiB,EAAE,CAAC,GAAG,EAAE,GAAE,CAAC,CAAsC;IAClE,YAAY,EAAE,GAAG,EAAE,GAAE,CAAC;IACtB,QAAQ,EAAE,GAAG,EAAE,CAAC,SAAS;IACzB,UAAU,EAAE,GAAG,EAAE,GAAE,CAAC;IACpB,cAAc,EAAE,GAAG,EAAE,GAAE,CAAC;IACxB,cAAc,EAAE,KAAK;IACrB,kBAAkB,EAAE,CAAC,IAAY,EAAE,EAAE,CAAC,CAAC;QACtC,MAAM,EAAE,eAAe,CAAC,MAAM;QAC9B,SAAS,EAAE,CAAC;KACZ,CAAC;IACF,eAAe,EAAE,SAAS;CAC1B,CAAC;AAEF,eAAe,aAAa,CAAC"}
|
|
@@ -13,7 +13,7 @@ export function autoExploreLoop(state, direction = 'forward') {
|
|
|
13
13
|
const goInsideSubpage = (subPages, nbIteration) => {
|
|
14
14
|
const maxSubPage = subPages.length;
|
|
15
15
|
const firstSubPage = pageStringToNumbers(subPages[isForward ? 0 : maxSubPage - 1]);
|
|
16
|
-
newPager.page = firstSubPage[0]
|
|
16
|
+
newPager.page = firstSubPage[0];
|
|
17
17
|
newPager.subPage = firstSubPage[1] - 1; // Subpage starts at 0
|
|
18
18
|
newPager.nbSubPages = maxSubPage;
|
|
19
19
|
newPager.nbIterations = nbIteration;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"auto-explore-loop.js","sourceRoot":"","sources":["../../../../../src/use-lunatic/reducer/commons/auto-explore-loop.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,SAAS,EAAE,mBAAmB,EAAE,MAAM,oBAAoB,CAAC;AAEpE;;GAEG;AACH,MAAM,UAAU,eAAe,CAC9B,KAAmB,EACnB,YAAoC,SAAS;IAE7C,MAAM,QAAQ,GAAG;QAChB,GAAG,KAAK,CAAC,KAAK;KACd,CAAC;IACF,MAAM,MAAM,GAAG,SAAS,CAAC,QAAQ,CAAC,CAAC;IACnC,IAAI,IAAI,GAAG,KAAK,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;IAC/B,IAAI,eAAe,GAAG,KAAK,CAAC;IAC5B,MAAM,SAAS,GAAG,SAAS,KAAK,SAAS,CAAC;IAE1C,MAAM,eAAe,GAAG,CAAC,QAAkB,EAAE,WAAmB,EAAE,EAAE;QACnE,MAAM,UAAU,GAAG,QAAQ,CAAC,MAAM,CAAC;QACnC,MAAM,YAAY,GAAG,mBAAmB,CACvC,QAAQ,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,UAAU,GAAG,CAAC,CAAC,CACxC,CAAC;QACF,QAAQ,CAAC,IAAI,GAAG,YAAY,CAAC,CAAC,CAAC,CAAC
|
|
1
|
+
{"version":3,"file":"auto-explore-loop.js","sourceRoot":"","sources":["../../../../../src/use-lunatic/reducer/commons/auto-explore-loop.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,SAAS,EAAE,mBAAmB,EAAE,MAAM,oBAAoB,CAAC;AAEpE;;GAEG;AACH,MAAM,UAAU,eAAe,CAC9B,KAAmB,EACnB,YAAoC,SAAS;IAE7C,MAAM,QAAQ,GAAG;QAChB,GAAG,KAAK,CAAC,KAAK;KACd,CAAC;IACF,MAAM,MAAM,GAAG,SAAS,CAAC,QAAQ,CAAC,CAAC;IACnC,IAAI,IAAI,GAAG,KAAK,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;IAC/B,IAAI,eAAe,GAAG,KAAK,CAAC;IAC5B,MAAM,SAAS,GAAG,SAAS,KAAK,SAAS,CAAC;IAE1C,MAAM,eAAe,GAAG,CAAC,QAAkB,EAAE,WAAmB,EAAE,EAAE;QACnE,MAAM,UAAU,GAAG,QAAQ,CAAC,MAAM,CAAC;QACnC,MAAM,YAAY,GAAG,mBAAmB,CACvC,QAAQ,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,UAAU,GAAG,CAAC,CAAC,CACxC,CAAC;QACF,QAAQ,CAAC,IAAI,GAAG,YAAY,CAAC,CAAC,CAAC,CAAC;QAChC,QAAQ,CAAC,OAAO,GAAG,YAAY,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,sBAAsB;QAC9D,QAAQ,CAAC,UAAU,GAAG,UAAU,CAAC;QACjC,QAAQ,CAAC,YAAY,GAAG,WAAW,CAAC;QACpC,QAAQ,CAAC,SAAS,GAAG,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,YAAY,GAAG,CAAC,CAAC;QAC/D,eAAe,GAAG,IAAI,CAAC;IACxB,CAAC,CAAC;IAEF,qBAAqB;IACrB,IAAI,IAAI,CAAC,MAAM,IAAI,IAAI,CAAC,QAAQ,IAAI,IAAI,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAC9D,eAAe,CACd,IAAI,CAAC,QAAQ,EACb,KAAK,CAAC,iBAAiB,CAAS,IAAI,CAAC,UAAU,CAAC,CAChD,CAAC;IACH,CAAC;IAED,yFAAyF;IACzF,IACC,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,aAAa,KAAK,YAAY;QACjD,IAAI,CAAC,QAAQ;QACb,IAAI,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC,EACvB,CAAC;QACF,MAAM,YAAY,GAAG,KAAK,CAAC,iBAAiB,CAAS,IAAI,CAAC,UAAU,CAAC,CAAC;QACtE,IAAI,YAAY,KAAK,CAAC,EAAE,CAAC;YACxB,eAAe,CAAC,IAAI,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC;QACnC,CAAC;IACF,CAAC;IAED,gDAAgD;IAChD,IAAI,CAAC,eAAe,EAAE,CAAC;QACtB,OAAO,KAAK,CAAC;IACd,CAAC;IAED,OAAO;QACN,GAAG,KAAK;QACR,QAAQ,EAAE,QAAQ,CAAC,YAAY,KAAK,SAAS;QAC7C,KAAK,EAAE,QAAQ;KACf,CAAC;AACH,CAAC"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
const isPageReached = (page, lastReachedPage) =>
|
|
1
|
+
const isPageReached = (page, lastReachedPage) => page.toString() <= lastReachedPage;
|
|
2
2
|
export const overviewOnChange = (state) => {
|
|
3
3
|
// The breadcrumb was not initialized, do nothing
|
|
4
4
|
if (state.overview.length === 0) {
|
|
@@ -7,7 +7,7 @@ export const overviewOnChange = (state) => {
|
|
|
7
7
|
const { overview, pager: { page, lastReachedPage }, executeExpression, } = state;
|
|
8
8
|
const updatedOverview = overview.map((overviewEntry) => {
|
|
9
9
|
// page avant la page courante : pas de changement de state possible
|
|
10
|
-
if (parseInt(overviewEntry.page, 10) <
|
|
10
|
+
if (parseInt(overviewEntry.page, 10) < page) {
|
|
11
11
|
if (!overviewEntry.reached) {
|
|
12
12
|
return {
|
|
13
13
|
...overviewEntry,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"overview-on-change.js","sourceRoot":"","sources":["../../../../../src/use-lunatic/reducer/overview/overview-on-change.ts"],"names":[],"mappings":"AAEA,MAAM,aAAa,GAAG,CAAC,IAAY,EAAE,
|
|
1
|
+
{"version":3,"file":"overview-on-change.js","sourceRoot":"","sources":["../../../../../src/use-lunatic/reducer/overview/overview-on-change.ts"],"names":[],"mappings":"AAEA,MAAM,aAAa,GAAG,CAAC,IAAY,EAAE,eAAwB,EAAE,EAAE,CAChE,IAAI,CAAC,QAAQ,EAAE,IAAI,eAAe,CAAC;AAEpC,MAAM,CAAC,MAAM,gBAAgB,GAAG,CAAC,KAAmB,EAAgB,EAAE;IACrE,iDAAiD;IACjD,IAAI,KAAK,CAAC,QAAQ,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACjC,OAAO,KAAK,CAAC;IACd,CAAC;IAED,MAAM,EACL,QAAQ,EACR,KAAK,EAAE,EAAE,IAAI,EAAE,eAAe,EAAE,EAChC,iBAAiB,GACjB,GAAG,KAAK,CAAC;IAEV,MAAM,eAAe,GAAG,QAAQ,CAAC,GAAG,CAAC,CAAC,aAAa,EAAE,EAAE;QACtD,oEAAoE;QACpE,IAAI,QAAQ,CAAC,aAAa,CAAC,IAAI,EAAE,EAAE,CAAC,GAAG,IAAI,EAAE,CAAC;YAC7C,IAAI,CAAC,aAAa,CAAC,OAAO,EAAE,CAAC;gBAC5B,OAAO;oBACN,GAAG,aAAa;oBAChB,OAAO,EAAE,aAAa,CAAC,aAAa,CAAC,IAAI,EAAE,eAAe,IAAI,GAAG,CAAC;iBAClE,CAAC;YACH,CAAC;YACD,OAAO,aAAa,CAAC;QACtB,CAAC;QACD,OAAO;YACN,GAAG,aAAa;YAChB,OAAO,EAAE,aAAa,CAAC,aAAa,CAAC,IAAI,EAAE,eAAe,IAAI,GAAG,CAAC;YAClE,OAAO,EACN,iBAAiB,CAAC,aAAa,CAAC,eAAe,EAAE;gBAChD,IAAI,EAAE,aAAa,CAAC,eAAe,EAAE,mBAAmB;aACxD,CAAC,IAAI,KAAK;YACZ,cAAc,EAAE,iBAAiB,CAAC,aAAa,CAAC,KAAK,CAAC;SACtD,CAAC;IACH,CAAC,CAAoC,CAAC;IACtC,OAAO,EAAE,GAAG,KAAK,EAAE,QAAQ,EAAE,eAAe,EAAE,CAAC;AAChD,CAAC,CAAC"}
|
|
@@ -55,10 +55,10 @@ export declare function reduceOverviewOnInit(state: LunaticState, action: Action
|
|
|
55
55
|
};
|
|
56
56
|
};
|
|
57
57
|
pager: {
|
|
58
|
-
lastReachedPage?:
|
|
59
|
-
maxPage:
|
|
58
|
+
lastReachedPage?: import("../../type").PageTag | undefined;
|
|
59
|
+
maxPage: number;
|
|
60
60
|
nbSubPages?: number | undefined;
|
|
61
|
-
page:
|
|
61
|
+
page: number;
|
|
62
62
|
subPage?: number | undefined;
|
|
63
63
|
iteration?: number | undefined;
|
|
64
64
|
nbIterations?: number | undefined;
|
|
@@ -92,7 +92,7 @@ export declare function reduceOverviewOnInit(state: LunaticState, action: Action
|
|
|
92
92
|
shortcut?: boolean | undefined;
|
|
93
93
|
management?: boolean | undefined;
|
|
94
94
|
goToPage: (page: {
|
|
95
|
-
page:
|
|
95
|
+
page: number | import("../../type").PageTag;
|
|
96
96
|
iteration?: number | undefined;
|
|
97
97
|
nbIterations?: number | undefined;
|
|
98
98
|
subPage?: number | undefined;
|
|
@@ -4,7 +4,7 @@ const isSequence = (sourceComponent) => sourceComponent.components.length > 0 &&
|
|
|
4
4
|
const isSequenceSamePage = (sourceComponent, page) => sourceComponent.components[0].hierarchy?.sequence.page === page;
|
|
5
5
|
const isSubsequenceSamePage = (sourceComponent, page) => sourceComponent.components[0].hierarchy?.subSequence !== undefined &&
|
|
6
6
|
sourceComponent.components[0].hierarchy?.subSequence.page === page;
|
|
7
|
-
const isPageReached = (page, lastReachedPage) =>
|
|
7
|
+
const isPageReached = (page, lastReachedPage) => page <= lastReachedPage;
|
|
8
8
|
function getOverview(state) {
|
|
9
9
|
const { pages, executeExpression, pager } = state;
|
|
10
10
|
// prevent misordered pages by extracting forbidden pages
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"overview-on-init.js","sourceRoot":"","sources":["../../../../../src/use-lunatic/reducer/overview/overview-on-init.ts"],"names":[],"mappings":"AAKA,OAAO,EAAmB,MAAM,eAAe,CAAC;AAIhD,MAAM,UAAU,GAAG,CAAC,eAAqB,EAAE,EAAE,CAC5C,eAAe,CAAC,UAAU,CAAC,MAAM,GAAG,CAAC;IACrC,WAAW,IAAI,eAAe,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC;AAE9C,MAAM,kBAAkB,GAAG,CAAC,eAAqB,EAAE,IAAY,EAAE,EAAE,CAClE,eAAe,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,SAAS,EAAE,QAAQ,CAAC,IAAI,KAAK,IAAI,CAAC;AAEjE,MAAM,qBAAqB,GAAG,CAAC,eAAqB,EAAE,IAAY,EAAE,EAAE,CACrE,eAAe,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,SAAS,EAAE,WAAW,KAAK,SAAS;IAClE,eAAe,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,SAAS,EAAE,WAAW,CAAC,IAAI,KAAK,IAAI,CAAC;AAEpE,MAAM,aAAa,GAAG,CAAC,IAAY,EAAE,eAAuB,EAAE,EAAE,CAC/D,
|
|
1
|
+
{"version":3,"file":"overview-on-init.js","sourceRoot":"","sources":["../../../../../src/use-lunatic/reducer/overview/overview-on-init.ts"],"names":[],"mappings":"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"}
|