@inseefr/lunatic 3.6.9 → 3.6.11

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 (35) hide show
  1. package/components/shared/Checkbox/CheckboxOption.js +2 -1
  2. package/components/shared/Checkbox/CheckboxOption.js.map +1 -1
  3. package/components/shared/Radio/RadioOption.js +2 -1
  4. package/components/shared/Radio/RadioOption.js.map +1 -1
  5. package/esm/components/shared/Checkbox/CheckboxOption.js +2 -1
  6. package/esm/components/shared/Checkbox/CheckboxOption.js.map +1 -1
  7. package/esm/components/shared/Radio/RadioOption.js +2 -1
  8. package/esm/components/shared/Radio/RadioOption.js.map +1 -1
  9. package/esm/hooks/useKeyboardKey.d.ts +1 -1
  10. package/esm/hooks/useKeyboardKey.js +11 -1
  11. package/esm/hooks/useKeyboardKey.js.map +1 -1
  12. package/esm/use-lunatic/props/propValue.js +20 -5
  13. package/esm/use-lunatic/props/propValue.js.map +1 -1
  14. package/esm/use-lunatic/props/propValue.spec.js +19 -1
  15. package/esm/use-lunatic/props/propValue.spec.js.map +1 -1
  16. package/esm/use-lunatic/reducer/commons/auto-explore-loop.js +14 -1
  17. package/esm/use-lunatic/reducer/commons/auto-explore-loop.js.map +1 -1
  18. package/hooks/useKeyboardKey.d.ts +1 -1
  19. package/hooks/useKeyboardKey.js +10 -1
  20. package/hooks/useKeyboardKey.js.map +1 -1
  21. package/package.json +1 -1
  22. package/src/components/shared/Checkbox/CheckboxOption.tsx +2 -1
  23. package/src/components/shared/Radio/RadioOption.tsx +2 -1
  24. package/src/hooks/useKeyboardKey.ts +14 -1
  25. package/src/stories/roundabout/roundabout.stories.tsx +1 -1
  26. package/src/use-lunatic/props/propValue.spec.ts +19 -1
  27. package/src/use-lunatic/props/propValue.ts +25 -5
  28. package/src/use-lunatic/reducer/commons/auto-explore-loop.ts +17 -1
  29. package/tsconfig.build.tsbuildinfo +1 -1
  30. package/use-lunatic/props/propValue.js +19 -5
  31. package/use-lunatic/props/propValue.js.map +1 -1
  32. package/use-lunatic/props/propValue.spec.js +19 -1
  33. package/use-lunatic/props/propValue.spec.js.map +1 -1
  34. package/use-lunatic/reducer/commons/auto-explore-loop.js +13 -1
  35. package/use-lunatic/reducer/commons/auto-explore-loop.js.map +1 -1
@@ -31,13 +31,27 @@ function getValueProp(component, args) {
31
31
  */
32
32
  function getChildResponseValues(components, variables) {
33
33
  return Object.fromEntries(components.flatMap((c) => {
34
- if ('response' in c) {
35
- return [[c.response.name, variables.get(c.response.name)]];
34
+ const entries = [];
35
+ // Handle main response
36
+ if ('response' in c && c.response?.name) {
37
+ entries.push([c.response.name, variables.get(c.response.name)]);
36
38
  }
37
- if ('components' in c) {
38
- return Object.entries(getChildResponseValues(c.components, variables));
39
+ // Handle optionResponses safely
40
+ if (c.componentType === 'Suggester' && c.optionResponses) {
41
+ for (const optionResponse of c.optionResponses) {
42
+ if (optionResponse?.name) {
43
+ entries.push([
44
+ optionResponse.name,
45
+ variables.get(optionResponse.name),
46
+ ]);
47
+ }
48
+ }
39
49
  }
40
- return [];
50
+ // Handle nested components
51
+ if ('components' in c && Array.isArray(c.components)) {
52
+ entries.push(...Object.entries(getChildResponseValues(c.components, variables)));
53
+ }
54
+ return entries;
41
55
  }));
42
56
  }
43
57
  //# sourceMappingURL=propValue.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"propValue.js","sourceRoot":"","sources":["../../src/use-lunatic/props/propValue.ts"],"names":[],"mappings":";;AAKA,oCAgCC;AArCD,+CAA8C;AAC9C,oDAAiE;AAIjE,SAAgB,YAAY,CAC3B,SAAqC,EACrC,IAGC;IAED,IAAI,SAAS,GAAG,IAAA,iBAAQ,EAAC,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC;QAC7C,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC;QACxB,CAAC,CAAC,SAAS,CAAC;IACb,IAAI,IAAI,CAAC,KAAK,CAAC,eAAe,EAAE,CAAC;QAChC,SAAS,GAAG,IAAI,CAAC,KAAK,CAAC,eAAe,CAAC;IACxC,CAAC;IACD,IAAI,IAAA,wBAAY,EAAC,SAAS,CAAC,EAAE,CAAC;QAC7B,OAAO,MAAM,CAAC,WAAW,CACxB,SAAS,CAAC,SAAS,EAAE,GAAG,CAAC,CAAC,EAAE,QAAQ,EAAE,EAAE,EAAE,CAAC;YAC1C,QAAQ,CAAC,IAAI;YACb,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,QAAQ,CAAC,IAAI,EAAE,SAAS,CAAC;SAC5C,CAAC,IAAI,EAAE,CACR,CAAC;IACH,CAAC;IACD,IAAI,IAAA,uBAAW,EAAC,SAAS,CAAC,EAAE,CAAC;QAC5B,OAAO,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,SAAS,CAAC,QAAQ,CAAC,IAAI,EAAE,SAAS,CAAC,CAAC;IAC/D,CAAC;IACD,4EAA4E;IAC5E,IACC,SAAS,CAAC,aAAa,KAAK,MAAM;QAClC,SAAS,CAAC,aAAa,KAAK,eAAe,EAC1C,CAAC;QACF,OAAO,sBAAsB,CAAC,SAAS,CAAC,UAAU,EAAE,IAAI,CAAC,SAAS,CAAC,CAAC;IACrE,CAAC;IACD,OAAO,IAAI,CAAC;AACb,CAAC;AAED;;GAEG;AACH,SAAS,sBAAsB,CAC9B,UAAwC,EACxC,SAAgC;IAEhC,OAAO,MAAM,CAAC,WAAW,CACxB,UAAU,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,EAAE;QACxB,IAAI,UAAU,IAAI,CAAC,EAAE,CAAC;YACrB,OAAO,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,IAAI,EAAE,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAC5D,CAAC;QACD,IAAI,YAAY,IAAI,CAAC,EAAE,CAAC;YACvB,OAAO,MAAM,CAAC,OAAO,CAAC,sBAAsB,CAAC,CAAC,CAAC,UAAU,EAAE,SAAS,CAAC,CAAC,CAAC;QACxE,CAAC;QACD,OAAO,EAAE,CAAC;IACX,CAAC,CAAC,CACF,CAAC;AACH,CAAC"}
1
+ {"version":3,"file":"propValue.js","sourceRoot":"","sources":["../../src/use-lunatic/props/propValue.ts"],"names":[],"mappings":";;AAKA,oCAgCC;AArCD,+CAA8C;AAC9C,oDAAiE;AAIjE,SAAgB,YAAY,CAC3B,SAAqC,EACrC,IAGC;IAED,IAAI,SAAS,GAAG,IAAA,iBAAQ,EAAC,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC;QAC7C,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC;QACxB,CAAC,CAAC,SAAS,CAAC;IACb,IAAI,IAAI,CAAC,KAAK,CAAC,eAAe,EAAE,CAAC;QAChC,SAAS,GAAG,IAAI,CAAC,KAAK,CAAC,eAAe,CAAC;IACxC,CAAC;IACD,IAAI,IAAA,wBAAY,EAAC,SAAS,CAAC,EAAE,CAAC;QAC7B,OAAO,MAAM,CAAC,WAAW,CACxB,SAAS,CAAC,SAAS,EAAE,GAAG,CAAC,CAAC,EAAE,QAAQ,EAAE,EAAE,EAAE,CAAC;YAC1C,QAAQ,CAAC,IAAI;YACb,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,QAAQ,CAAC,IAAI,EAAE,SAAS,CAAC;SAC5C,CAAC,IAAI,EAAE,CACR,CAAC;IACH,CAAC;IACD,IAAI,IAAA,uBAAW,EAAC,SAAS,CAAC,EAAE,CAAC;QAC5B,OAAO,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,SAAS,CAAC,QAAQ,CAAC,IAAI,EAAE,SAAS,CAAC,CAAC;IAC/D,CAAC;IACD,4EAA4E;IAC5E,IACC,SAAS,CAAC,aAAa,KAAK,MAAM;QAClC,SAAS,CAAC,aAAa,KAAK,eAAe,EAC1C,CAAC;QACF,OAAO,sBAAsB,CAAC,SAAS,CAAC,UAAU,EAAE,IAAI,CAAC,SAAS,CAAC,CAAC;IACrE,CAAC;IACD,OAAO,IAAI,CAAC;AACb,CAAC;AAED;;GAEG;AACH,SAAS,sBAAsB,CAC9B,UAAwC,EACxC,SAAgC;IAEhC,OAAO,MAAM,CAAC,WAAW,CACxB,UAAU,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,EAAE;QACxB,MAAM,OAAO,GAAwB,EAAE,CAAC;QAExC,uBAAuB;QACvB,IAAI,UAAU,IAAI,CAAC,IAAI,CAAC,CAAC,QAAQ,EAAE,IAAI,EAAE,CAAC;YACzC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,IAAI,EAAE,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QACjE,CAAC;QAED,gCAAgC;QAChC,IAAI,CAAC,CAAC,aAAa,KAAK,WAAW,IAAI,CAAC,CAAC,eAAe,EAAE,CAAC;YAC1D,KAAK,MAAM,cAAc,IAAI,CAAC,CAAC,eAAe,EAAE,CAAC;gBAChD,IAAI,cAAc,EAAE,IAAI,EAAE,CAAC;oBAC1B,OAAO,CAAC,IAAI,CAAC;wBACZ,cAAc,CAAC,IAAI;wBACnB,SAAS,CAAC,GAAG,CAAC,cAAc,CAAC,IAAI,CAAC;qBAClC,CAAC,CAAC;gBACJ,CAAC;YACF,CAAC;QACF,CAAC;QAED,2BAA2B;QAC3B,IAAI,YAAY,IAAI,CAAC,IAAI,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,UAAU,CAAC,EAAE,CAAC;YACtD,OAAO,CAAC,IAAI,CACX,GAAG,MAAM,CAAC,OAAO,CAAC,sBAAsB,CAAC,CAAC,CAAC,UAAU,EAAE,SAAS,CAAC,CAAC,CAClE,CAAC;QACH,CAAC;QAED,OAAO,OAAO,CAAC;IAChB,CAAC,CAAC,CACF,CAAC;AACH,CAAC"}
@@ -99,7 +99,7 @@ const array_1 = require("../../utils/array");
99
99
  });
100
100
  });
101
101
  });
102
- (0, vitest_1.describe)('RosterForLoop', () => {
102
+ (0, vitest_1.describe)('RosterForLoop with suggester having optionResponses', () => {
103
103
  const rosterForLoopComponent = {
104
104
  id: 'loop-prenom',
105
105
  componentType: 'RosterForLoop',
@@ -133,17 +133,35 @@ const array_1 = require("../../utils/array");
133
133
  name: 'PRENOM',
134
134
  },
135
135
  },
136
+ {
137
+ id: 'commune',
138
+ response: {
139
+ name: 'COMMUNE',
140
+ },
141
+ storeName: 'nomenclature-commune',
142
+ componentType: 'Suggester',
143
+ optionResponses: [
144
+ {
145
+ name: 'LABEL_COMMUNE',
146
+ attribute: 'label_attribute',
147
+ },
148
+ ],
149
+ },
136
150
  ],
137
151
  };
138
152
  (0, vitest_1.it)('should correctly extract values from nested responses as arrays', () => {
139
153
  const values = {
140
154
  PRENOM: ['Alice', 'Bob', 'Charlie'],
155
+ COMMUNE: ['59000', '25000', '54000'],
156
+ LABEL_COMMUNE: ['Lille', 'Besançon', 'Nancy'],
141
157
  };
142
158
  expectFilledComponent(rosterForLoopComponent, values).toEqual(values);
143
159
  });
144
160
  (0, vitest_1.it)('should return null for missing responses', () => {
145
161
  expectFilledComponent(rosterForLoopComponent).toEqual({
146
162
  PRENOM: null,
163
+ COMMUNE: null,
164
+ LABEL_COMMUNE: null,
147
165
  });
148
166
  });
149
167
  });
@@ -1 +1 @@
1
- {"version":3,"file":"propValue.spec.js","sourceRoot":"","sources":["../../src/use-lunatic/props/propValue.spec.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"propValue.spec.js","sourceRoot":"","sources":["../../src/use-lunatic/props/propValue.spec.ts"],"names":[],"mappings":"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"}
@@ -39,7 +39,19 @@ function autoExploreLoop(state, direction = 'forward') {
39
39
  page.subPages.length > 0) {
40
40
  const nbIterations = state.executeExpression(page.iterations);
41
41
  if (nbIterations === 1) {
42
- goInsideSubpage(page.subPages, 1);
42
+ const roundaboutComponent = page.components[0];
43
+ let isFirstIterationDisabled = false;
44
+ // check if the roundabout has a condition for disabling iterations
45
+ if (roundaboutComponent.item.disabled) {
46
+ const firstIterationPager = {
47
+ ...state.pager,
48
+ iteration: 0,
49
+ };
50
+ // check if the first iteration should be disabled
51
+ isFirstIterationDisabled = state.executeExpression({ value: roundaboutComponent.item.disabled?.value, type: 'VTL' }, firstIterationPager);
52
+ }
53
+ // if the only iteration is disabled, we skip it, loop is empty. Else go to first iteration
54
+ goInsideSubpage(page.subPages, isFirstIterationDisabled ? 0 : 1);
43
55
  }
44
56
  }
45
57
  // No loop were explored, don't mutate the state
@@ -1 +1 @@
1
- {"version":3,"file":"auto-explore-loop.js","sourceRoot":"","sources":["../../../src/use-lunatic/reducer/commons/auto-explore-loop.ts"],"names":[],"mappings":";;AAMA,0CA6DC;AAlED,6CAAoE;AAEpE;;GAEG;AACH,SAAgB,eAAe,CAC9B,KAA0B,EAC1B,YAAoC,SAAS;IAE7C,MAAM,QAAQ,GAAG;QAChB,GAAG,KAAK,CAAC,KAAK;KACd,CAAC;IACF,MAAM,MAAM,GAAG,IAAA,gBAAS,EAAC,QAAQ,CAAC,CAAC;IACnC,MAAM,IAAI,GAAG,KAAK,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;IACjC,IAAI,eAAe,GAAG,KAAK,CAAC;IAC5B,MAAM,SAAS,GAAG,SAAS,KAAK,SAAS,CAAC;IAE1C,MAAM,eAAe,GAAG,CAAC,QAAkB,EAAE,WAAmB,EAAE,EAAE;QACnE,uCAAuC;QACvC,IAAI,WAAW,KAAK,CAAC,EAAE,CAAC;YACvB,QAAQ,CAAC,IAAI,IAAI,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;YACpC,eAAe,GAAG,IAAI,CAAC;YACvB,OAAO;QACR,CAAC;QACD,MAAM,UAAU,GAAG,QAAQ,CAAC,MAAM,CAAC;QACnC,MAAM,YAAY,GAAG,IAAA,0BAAmB,EACvC,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
+ {"version":3,"file":"auto-explore-loop.js","sourceRoot":"","sources":["../../../src/use-lunatic/reducer/commons/auto-explore-loop.ts"],"names":[],"mappings":"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"}