@inseefr/lunatic 3.6.1 → 3.6.3

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 (63) hide show
  1. package/components/PairwiseLinks/PairwiseLinks.js +2 -0
  2. package/components/PairwiseLinks/PairwiseLinks.js.map +1 -1
  3. package/components/shared/Checkbox/CheckboxOption.d.ts +1 -0
  4. package/components/shared/Checkbox/CheckboxOption.js +2 -2
  5. package/components/shared/Checkbox/CheckboxOption.js.map +1 -1
  6. package/components/shared/Radio/RadioOption.js +2 -2
  7. package/components/shared/Radio/RadioOption.js.map +1 -1
  8. package/components/type.d.ts +4 -1
  9. package/esm/components/PairwiseLinks/PairwiseLinks.js +2 -0
  10. package/esm/components/PairwiseLinks/PairwiseLinks.js.map +1 -1
  11. package/esm/components/shared/Checkbox/CheckboxOption.d.ts +1 -0
  12. package/esm/components/shared/Checkbox/CheckboxOption.js +2 -2
  13. package/esm/components/shared/Checkbox/CheckboxOption.js.map +1 -1
  14. package/esm/components/shared/Radio/RadioOption.js +2 -2
  15. package/esm/components/shared/Radio/RadioOption.js.map +1 -1
  16. package/esm/components/type.d.ts +4 -1
  17. package/esm/type.source.d.ts +3 -0
  18. package/esm/use-lunatic/commons/variables/behaviours/cleaning-behaviour.d.ts +7 -2
  19. package/esm/use-lunatic/commons/variables/behaviours/cleaning-behaviour.js +106 -33
  20. package/esm/use-lunatic/commons/variables/behaviours/cleaning-behaviour.js.map +1 -1
  21. package/esm/use-lunatic/commons/variables/get-questionnaire-data.js +2 -1
  22. package/esm/use-lunatic/commons/variables/get-questionnaire-data.js.map +1 -1
  23. package/esm/use-lunatic/commons/variables/lunatic-variables-store.js +8 -1
  24. package/esm/use-lunatic/commons/variables/lunatic-variables-store.js.map +1 -1
  25. package/esm/use-lunatic/commons/variables/lunatic-variables-store.spec.js +76 -2
  26. package/esm/use-lunatic/commons/variables/lunatic-variables-store.spec.js.map +1 -1
  27. package/esm/use-lunatic/props/getComponentTypeProps.d.ts +4 -1
  28. package/esm/use-lunatic/props/propOptions.d.ts +6 -2
  29. package/esm/use-lunatic/props/propOptions.js +9 -7
  30. package/esm/use-lunatic/props/propOptions.js.map +1 -1
  31. package/esm/use-lunatic/props/propOptions.spec.js +68 -0
  32. package/esm/use-lunatic/props/propOptions.spec.js.map +1 -1
  33. package/package.json +1 -1
  34. package/src/components/PairwiseLinks/PairwiseLinks.tsx +1 -0
  35. package/src/components/shared/Checkbox/CheckboxOption.tsx +3 -0
  36. package/src/components/shared/Radio/RadioOption.tsx +2 -0
  37. package/src/components/type.ts +4 -1
  38. package/src/stories/pairwise/source.json +4 -1
  39. package/src/stories/questionnaires/simpsons/source.json +6 -0
  40. package/src/type.source.ts +3 -0
  41. package/src/use-lunatic/commons/variables/behaviours/cleaning-behaviour.ts +120 -30
  42. package/src/use-lunatic/commons/variables/get-questionnaire-data.ts +4 -1
  43. package/src/use-lunatic/commons/variables/lunatic-variables-store.spec.ts +87 -2
  44. package/src/use-lunatic/commons/variables/lunatic-variables-store.ts +9 -1
  45. package/src/use-lunatic/props/propOptions.spec.ts +88 -0
  46. package/src/use-lunatic/props/propOptions.ts +10 -5
  47. package/tsconfig.build.tsbuildinfo +1 -1
  48. package/type.source.d.ts +3 -0
  49. package/use-lunatic/commons/variables/behaviours/cleaning-behaviour.d.ts +7 -2
  50. package/use-lunatic/commons/variables/behaviours/cleaning-behaviour.js +105 -32
  51. package/use-lunatic/commons/variables/behaviours/cleaning-behaviour.js.map +1 -1
  52. package/use-lunatic/commons/variables/get-questionnaire-data.js +2 -1
  53. package/use-lunatic/commons/variables/get-questionnaire-data.js.map +1 -1
  54. package/use-lunatic/commons/variables/lunatic-variables-store.js +8 -1
  55. package/use-lunatic/commons/variables/lunatic-variables-store.js.map +1 -1
  56. package/use-lunatic/commons/variables/lunatic-variables-store.spec.js +76 -2
  57. package/use-lunatic/commons/variables/lunatic-variables-store.spec.js.map +1 -1
  58. package/use-lunatic/props/getComponentTypeProps.d.ts +4 -1
  59. package/use-lunatic/props/propOptions.d.ts +6 -2
  60. package/use-lunatic/props/propOptions.js +6 -4
  61. package/use-lunatic/props/propOptions.js.map +1 -1
  62. package/use-lunatic/props/propOptions.spec.js +68 -0
  63. package/use-lunatic/props/propOptions.spec.js.map +1 -1
@@ -23,6 +23,8 @@ const PairwiseLinks = ({ declarations, xAxisIterations, yAxisIterations, id, get
23
23
  .map(([x, y]) => {
24
24
  const components = getComponents(y, x);
25
25
  const firstComponent = components[0];
26
+ if (firstComponent === undefined || firstComponent === null)
27
+ return;
26
28
  if (firstComponent.componentType !== 'Dropdown') {
27
29
  return ((0, jsx_runtime_1.jsx)("div", { children: "First child component of a pairwise link must be a dropdown" }));
28
30
  }
@@ -1 +1 @@
1
- {"version":3,"file":"PairwiseLinks.js","sourceRoot":"","sources":["../../src/components/PairwiseLinks/PairwiseLinks.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"PairwiseLinks.js","sourceRoot":"","sources":["../../src/components/PairwiseLinks/PairwiseLinks.tsx"],"names":[],"mappings":"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"}
@@ -13,6 +13,7 @@ export type CheckboxOptionProps = {
13
13
  invalid?: boolean;
14
14
  detailAlwaysDisplayed?: boolean;
15
15
  detailLabel?: ReactNode;
16
+ detailMaxLength?: number;
16
17
  detailValue?: string | null;
17
18
  onDetailChange?: (value: string) => void;
18
19
  };
@@ -6,7 +6,7 @@ const slottableComponent_1 = require("../HOC/slottableComponent");
6
6
  const Label_1 = require("../Label/Label");
7
7
  const useKeyboardKey_1 = require("../../../hooks/useKeyboardKey");
8
8
  const Input_1 = require("../../Input/Input");
9
- function LunaticCheckboxOption({ disabled, readOnly, checked, id, onCheck, label, description, detailAlwaysDisplayed, detailLabel, detailValue, onDetailChange, codeModality, shortcut, invalid, }) {
9
+ function LunaticCheckboxOption({ disabled, readOnly, checked, id, onCheck, label, description, detailAlwaysDisplayed, detailLabel, detailMaxLength, detailValue, onDetailChange, codeModality, shortcut, invalid, }) {
10
10
  const isEnabled = !readOnly && !disabled;
11
11
  const hasDetail = !!onDetailChange;
12
12
  const hasKeyboardShortcut = Boolean(shortcut && codeModality && isEnabled);
@@ -25,7 +25,7 @@ function LunaticCheckboxOption({ disabled, readOnly, checked, id, onCheck, label
25
25
  e.preventDefault();
26
26
  onClickOption();
27
27
  }, hasKeyboardShortcut);
28
- return ((0, jsx_runtime_1.jsxs)(jsx_runtime_1.Fragment, { children: [(0, jsx_runtime_1.jsxs)("div", { id: id, role: "checkbox", "aria-invalid": invalid, "aria-disabled": disabled, "aria-readonly": readOnly, className: "lunatic-input-checkbox", "aria-checked": checked, tabIndex: 0, onClick: onClickOption, onKeyDown: handleKeyDown, "aria-labelledby": labelId, children: [(0, jsx_runtime_1.jsx)("div", { className: "lunatic-input-checkbox__icon", children: checked && ((0, jsx_runtime_1.jsx)("svg", { xmlns: "http://www.w3.org/2000/svg", fill: "none", viewBox: "0 0 14 11", children: (0, jsx_runtime_1.jsx)("path", { d: "M5 11 0 6l1.4-1.4L5 8.2 12.6.6 14 2l-9 9Z", fill: "currentColor" }) })) }), (0, jsx_runtime_1.jsxs)(Label_1.Label, { id: labelId, htmlFor: id, description: description, children: [codeModality && ((0, jsx_runtime_1.jsx)("span", { className: "code-modality", children: codeModality.toUpperCase() })), ' ', label] })] }), hasDetail && (checked || detailAlwaysDisplayed) && ((0, jsx_runtime_1.jsx)(Input_1.CustomInput, { id: "detailId", label: detailLabel ?? 'Précisez :', value: typeof detailValue === 'string' ? detailValue : '', onChange: onDetailChange, disabled: disabled }))] }));
28
+ return ((0, jsx_runtime_1.jsxs)(jsx_runtime_1.Fragment, { children: [(0, jsx_runtime_1.jsxs)("div", { id: id, role: "checkbox", "aria-invalid": invalid, "aria-disabled": disabled, "aria-readonly": readOnly, className: "lunatic-input-checkbox", "aria-checked": checked, tabIndex: 0, onClick: onClickOption, onKeyDown: handleKeyDown, "aria-labelledby": labelId, children: [(0, jsx_runtime_1.jsx)("div", { className: "lunatic-input-checkbox__icon", children: checked && ((0, jsx_runtime_1.jsx)("svg", { xmlns: "http://www.w3.org/2000/svg", fill: "none", viewBox: "0 0 14 11", children: (0, jsx_runtime_1.jsx)("path", { d: "M5 11 0 6l1.4-1.4L5 8.2 12.6.6 14 2l-9 9Z", fill: "currentColor" }) })) }), (0, jsx_runtime_1.jsxs)(Label_1.Label, { id: labelId, htmlFor: id, description: description, children: [codeModality && ((0, jsx_runtime_1.jsx)("span", { className: "code-modality", children: codeModality.toUpperCase() })), ' ', label] })] }), hasDetail && (checked || detailAlwaysDisplayed) && ((0, jsx_runtime_1.jsx)(Input_1.CustomInput, { id: "detailId", label: detailLabel ?? 'Précisez :', value: typeof detailValue === 'string' ? detailValue : '', maxLength: detailMaxLength, onChange: onDetailChange, disabled: disabled }))] }));
29
29
  }
30
30
  exports.CheckboxOption = (0, slottableComponent_1.slottableComponent)('CheckboxOption', LunaticCheckboxOption);
31
31
  //# sourceMappingURL=CheckboxOption.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"CheckboxOption.js","sourceRoot":"","sources":["../../../src/components/shared/Checkbox/CheckboxOption.tsx"],"names":[],"mappings":";;;;AAEA,kEAA+D;AAC/D,0CAAuC;AACvC,kEAA+D;AAC/D,6CAAgD;AAmBhD,SAAS,qBAAqB,CAAC,EAC9B,QAAQ,EACR,QAAQ,EACR,OAAO,EACP,EAAE,EACF,OAAO,EACP,KAAK,EACL,WAAW,EACX,qBAAqB,EACrB,WAAW,EACX,WAAW,EACX,cAAc,EACd,YAAY,EACZ,QAAQ,EACR,OAAO,GACc;IACrB,MAAM,SAAS,GAAG,CAAC,QAAQ,IAAI,CAAC,QAAQ,CAAC;IACzC,MAAM,SAAS,GAAG,CAAC,CAAC,cAAc,CAAC;IACnC,MAAM,mBAAmB,GAAG,OAAO,CAAC,QAAQ,IAAI,YAAY,IAAI,SAAS,CAAC,CAAC;IAC3E,MAAM,aAAa,GAAG,GAAG,EAAE;QAC1B,IAAI,SAAS,EAAE,CAAC;YACf,OAAO,CAAC,CAAC,OAAO,CAAC,CAAC;QACnB,CAAC;IACF,CAAC,CAAC;IAEF,MAAM,aAAa,GAAyC,CAAC,CAAC,EAAE,EAAE;QACjE,IAAI,CAAC,CAAC,IAAI,KAAK,OAAO,EAAE,CAAC;YACxB,aAAa,EAAE,CAAC;QACjB,CAAC;IACF,CAAC,CAAC;IAEF,MAAM,OAAO,GAAG,SAAS,EAAE,EAAE,CAAC;IAE9B,IAAA,+BAAc,EACb,YAAY,CAAC,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,EAAE,EAClC,CAAC,CAAC,EAAE,EAAE;QACL,CAAC,CAAC,cAAc,EAAE,CAAC;QACnB,aAAa,EAAE,CAAC;IACjB,CAAC,EACD,mBAAmB,CACnB,CAAC;IAEF,OAAO,CACN,6DACC,iCACC,EAAE,EAAE,EAAE,EACN,IAAI,EAAC,UAAU,kBACD,OAAO,mBACN,QAAQ,mBACR,QAAQ,EACvB,SAAS,EAAC,wBAAwB,kBACpB,OAAO,EACrB,QAAQ,EAAE,CAAC,EACX,OAAO,EAAE,aAAa,EACtB,SAAS,EAAE,aAAa,qBACP,OAAO,aAExB,gCAAK,SAAS,EAAC,8BAA8B,YAC3C,OAAO,IAAI,CACX,gCACC,KAAK,EAAC,4BAA4B,EAClC,IAAI,EAAC,MAAM,EACX,OAAO,EAAC,WAAW,YAEnB,iCACC,CAAC,EAAC,2CAA2C,EAC7C,IAAI,EAAC,cAAc,GAClB,GACG,CACN,GACI,EACN,wBAAC,aAAK,IAAC,EAAE,EAAE,OAAO,EAAE,OAAO,EAAE,EAAE,EAAE,WAAW,EAAE,WAAW,aACvD,YAAY,IAAI,CAChB,iCAAM,SAAS,EAAC,eAAe,YAAE,YAAY,CAAC,WAAW,EAAE,GAAQ,CACnE,EAAE,GAAG,EACL,KAAK,IACC,IACH,EACL,SAAS,IAAI,CAAC,OAAO,IAAI,qBAAqB,CAAC,IAAI,CACnD,uBAAC,mBAAW,IACX,EAAE,EAAC,UAAU,EACb,KAAK,EAAE,WAAW,IAAI,YAAY,EAClC,KAAK,EAAE,OAAO,WAAW,KAAK,QAAQ,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,EAAE,EACzD,QAAQ,EAAE,cAAc,EACxB,QAAQ,EAAE,QAAQ,GACjB,CACF,IACC,CACH,CAAC;AACH,CAAC;AAEY,QAAA,cAAc,GAAG,IAAA,uCAAkB,EAC/C,gBAAgB,EAChB,qBAAqB,CACrB,CAAC"}
1
+ {"version":3,"file":"CheckboxOption.js","sourceRoot":"","sources":["../../../src/components/shared/Checkbox/CheckboxOption.tsx"],"names":[],"mappings":";;;;AAEA,kEAA+D;AAC/D,0CAAuC;AACvC,kEAA+D;AAC/D,6CAAgD;AAoBhD,SAAS,qBAAqB,CAAC,EAC9B,QAAQ,EACR,QAAQ,EACR,OAAO,EACP,EAAE,EACF,OAAO,EACP,KAAK,EACL,WAAW,EACX,qBAAqB,EACrB,WAAW,EACX,eAAe,EACf,WAAW,EACX,cAAc,EACd,YAAY,EACZ,QAAQ,EACR,OAAO,GACc;IACrB,MAAM,SAAS,GAAG,CAAC,QAAQ,IAAI,CAAC,QAAQ,CAAC;IACzC,MAAM,SAAS,GAAG,CAAC,CAAC,cAAc,CAAC;IACnC,MAAM,mBAAmB,GAAG,OAAO,CAAC,QAAQ,IAAI,YAAY,IAAI,SAAS,CAAC,CAAC;IAC3E,MAAM,aAAa,GAAG,GAAG,EAAE;QAC1B,IAAI,SAAS,EAAE,CAAC;YACf,OAAO,CAAC,CAAC,OAAO,CAAC,CAAC;QACnB,CAAC;IACF,CAAC,CAAC;IAEF,MAAM,aAAa,GAAyC,CAAC,CAAC,EAAE,EAAE;QACjE,IAAI,CAAC,CAAC,IAAI,KAAK,OAAO,EAAE,CAAC;YACxB,aAAa,EAAE,CAAC;QACjB,CAAC;IACF,CAAC,CAAC;IAEF,MAAM,OAAO,GAAG,SAAS,EAAE,EAAE,CAAC;IAE9B,IAAA,+BAAc,EACb,YAAY,CAAC,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,EAAE,EAClC,CAAC,CAAC,EAAE,EAAE;QACL,CAAC,CAAC,cAAc,EAAE,CAAC;QACnB,aAAa,EAAE,CAAC;IACjB,CAAC,EACD,mBAAmB,CACnB,CAAC;IAEF,OAAO,CACN,6DACC,iCACC,EAAE,EAAE,EAAE,EACN,IAAI,EAAC,UAAU,kBACD,OAAO,mBACN,QAAQ,mBACR,QAAQ,EACvB,SAAS,EAAC,wBAAwB,kBACpB,OAAO,EACrB,QAAQ,EAAE,CAAC,EACX,OAAO,EAAE,aAAa,EACtB,SAAS,EAAE,aAAa,qBACP,OAAO,aAExB,gCAAK,SAAS,EAAC,8BAA8B,YAC3C,OAAO,IAAI,CACX,gCACC,KAAK,EAAC,4BAA4B,EAClC,IAAI,EAAC,MAAM,EACX,OAAO,EAAC,WAAW,YAEnB,iCACC,CAAC,EAAC,2CAA2C,EAC7C,IAAI,EAAC,cAAc,GAClB,GACG,CACN,GACI,EACN,wBAAC,aAAK,IAAC,EAAE,EAAE,OAAO,EAAE,OAAO,EAAE,EAAE,EAAE,WAAW,EAAE,WAAW,aACvD,YAAY,IAAI,CAChB,iCAAM,SAAS,EAAC,eAAe,YAAE,YAAY,CAAC,WAAW,EAAE,GAAQ,CACnE,EAAE,GAAG,EACL,KAAK,IACC,IACH,EACL,SAAS,IAAI,CAAC,OAAO,IAAI,qBAAqB,CAAC,IAAI,CACnD,uBAAC,mBAAW,IACX,EAAE,EAAC,UAAU,EACb,KAAK,EAAE,WAAW,IAAI,YAAY,EAClC,KAAK,EAAE,OAAO,WAAW,KAAK,QAAQ,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,EAAE,EACzD,SAAS,EAAE,eAAe,EAC1B,QAAQ,EAAE,cAAc,EACxB,QAAQ,EAAE,QAAQ,GACjB,CACF,IACC,CACH,CAAC;AACH,CAAC;AAEY,QAAA,cAAc,GAAG,IAAA,uCAAkB,EAC/C,gBAAgB,EAChB,qBAAqB,CACrB,CAAC"}
@@ -11,7 +11,7 @@ const useKeyboardKey_1 = require("../../../hooks/useKeyboardKey");
11
11
  const Label_1 = require("../Label/Label");
12
12
  const classnames_1 = __importDefault(require("classnames"));
13
13
  const Input_1 = require("../../Input/Input");
14
- function LunaticRadioOption({ checked, disabled, readOnly, checkboxStyle, value, onKeyDown, index, shortcut, codeModality, id, invalid, labelledBy, description, label, onDetailChange, detailAlwaysDisplayed, detailLabel, detailValue, onCheck, onUncheck, }) {
14
+ function LunaticRadioOption({ checked, disabled, readOnly, checkboxStyle, value, onKeyDown, index, shortcut, codeModality, id, invalid, labelledBy, description, label, onDetailChange, detailAlwaysDisplayed, detailLabel, detailMaxLength, detailValue, onCheck, onUncheck, }) {
15
15
  const divEl = (0, react_1.useRef)(null);
16
16
  const isEnabled = !disabled && !readOnly;
17
17
  const isRadio = !checkboxStyle;
@@ -41,7 +41,7 @@ function LunaticRadioOption({ checked, disabled, readOnly, checkboxStyle, value,
41
41
  e.preventDefault();
42
42
  onClickOption();
43
43
  }, hasKeyboardShortcut);
44
- return ((0, jsx_runtime_1.jsxs)("div", { className: "lunatic-input-checkbox-wrapper", children: [(0, jsx_runtime_1.jsxs)("div", { id: id, role: "radio", "aria-invalid": invalid, "aria-disabled": disabled, className: (0, classnames_1.default)('lunatic-input-checkbox', isRadio && 'lunatic-input-radio'), "aria-checked": checked, tabIndex: checked ? -1 : 0, onClick: onClickOption, onKeyDown: handleKeyDown, "aria-labelledby": labelledBy, ref: divEl, children: [(0, jsx_runtime_1.jsx)("div", { className: "lunatic-input-checkbox__icon", children: checked && checkboxStyle && ((0, jsx_runtime_1.jsx)("svg", { xmlns: "http://www.w3.org/2000/svg", fill: "none", viewBox: "0 0 14 11", children: (0, jsx_runtime_1.jsx)("path", { d: "M5 11 0 6l1.4-1.4L5 8.2 12.6.6 14 2l-9 9Z", fill: "currentColor" }) })) }), (0, jsx_runtime_1.jsxs)(Label_1.Label, { id: labelledBy, htmlFor: id, description: description, children: [codeModality && ((0, jsx_runtime_1.jsx)("span", { className: "code-modality", children: codeModality.toUpperCase() })), label] })] }), hasDetail && (checked || detailAlwaysDisplayed) && ((0, jsx_runtime_1.jsx)(Input_1.CustomInput, { id: "detailId", label: detailLabel ?? 'Précisez :', value: typeof detailValue === 'string' ? detailValue : '', onChange: onDetailChange, disabled: disabled }))] }));
44
+ return ((0, jsx_runtime_1.jsxs)("div", { className: "lunatic-input-checkbox-wrapper", children: [(0, jsx_runtime_1.jsxs)("div", { id: id, role: "radio", "aria-invalid": invalid, "aria-disabled": disabled, className: (0, classnames_1.default)('lunatic-input-checkbox', isRadio && 'lunatic-input-radio'), "aria-checked": checked, tabIndex: checked ? -1 : 0, onClick: onClickOption, onKeyDown: handleKeyDown, "aria-labelledby": labelledBy, ref: divEl, children: [(0, jsx_runtime_1.jsx)("div", { className: "lunatic-input-checkbox__icon", children: checked && checkboxStyle && ((0, jsx_runtime_1.jsx)("svg", { xmlns: "http://www.w3.org/2000/svg", fill: "none", viewBox: "0 0 14 11", children: (0, jsx_runtime_1.jsx)("path", { d: "M5 11 0 6l1.4-1.4L5 8.2 12.6.6 14 2l-9 9Z", fill: "currentColor" }) })) }), (0, jsx_runtime_1.jsxs)(Label_1.Label, { id: labelledBy, htmlFor: id, description: description, children: [codeModality && ((0, jsx_runtime_1.jsx)("span", { className: "code-modality", children: codeModality.toUpperCase() })), label] })] }), hasDetail && (checked || detailAlwaysDisplayed) && ((0, jsx_runtime_1.jsx)(Input_1.CustomInput, { id: "detailId", label: detailLabel ?? 'Précisez :', value: typeof detailValue === 'string' ? detailValue : '', maxLength: detailMaxLength, onChange: onDetailChange, disabled: disabled }))] }));
45
45
  }
46
46
  exports.RadioOption = (0, slottableComponent_1.slottableComponent)('RadioOption', LunaticRadioOption);
47
47
  //# sourceMappingURL=RadioOption.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"RadioOption.js","sourceRoot":"","sources":["../../../src/components/shared/Radio/RadioOption.tsx"],"names":[],"mappings":";;;;;;;AAAA,iCAAqE;AACrE,kEAA+D;AAC/D,kEAA+D;AAC/D,0CAAuC;AACvC,4DAAoC;AACpC,6CAAgD;AAiBhD,SAAS,kBAAkB,CAAC,EAC3B,OAAO,EACP,QAAQ,EACR,QAAQ,EACR,aAAa,EACb,KAAK,EACL,SAAS,EACT,KAAK,EACL,QAAQ,EACR,YAAY,EACZ,EAAE,EACF,OAAO,EACP,UAAU,EACV,WAAW,EACX,KAAK,EACL,cAAc,EACd,qBAAqB,EACrB,WAAW,EACX,WAAW,EACX,OAAO,EACP,SAAS,GACF;IACP,MAAM,KAAK,GAAG,IAAA,cAAM,EAAiB,IAAI,CAAC,CAAC;IAC3C,MAAM,SAAS,GAAG,CAAC,QAAQ,IAAI,CAAC,QAAQ,CAAC;IACzC,MAAM,OAAO,GAAG,CAAC,aAAa,CAAC;IAC/B,MAAM,SAAS,GAAG,CAAC,CAAC,cAAc,CAAC;IAEnC,MAAM,aAAa,GAAG,GAAG,EAAE;QAC1B,IAAI,CAAC,SAAS,IAAI,CAAC,OAAO,IAAI,OAAO,EAAE,CAAC;YACvC,uEAAuE;YACvE,IAAI,aAAa,IAAI,SAAS,EAAE,CAAC;gBAChC,SAAS,EAAE,CAAC;YACb,CAAC;YACD,OAAO;QACR,CAAC;QACD,OAAO,EAAE,CAAC;IACX,CAAC,CAAC;IAEF,MAAM,aAAa,GAAyC,CAAC,CAAC,EAAE,EAAE;QACjE,SAAS,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,CAAC,GAAG,EAAE,KAAK,EAAE,KAAK,IAAI,CAAC,CAAC,EAAE,CAAC,CAAC;QAChD,KAAK,CAAC,OAAO,EAAE,IAAI,EAAE,CAAC;IACvB,CAAC,CAAC;IAEF,IAAA,iBAAS,EACR;QACC,MAAM,EAAE,OAAO,EAAE,GAAG,KAAK,CAAC;QAC1B,IAAI,OAAO,IAAI,OAAO,EAAE,CAAC;YACxB,OAAO,CAAC,KAAK,EAAE,CAAC;QACjB,CAAC;IACF,CAAC,EACD,CAAC,OAAO,EAAE,KAAK,EAAE,KAAK,CAAC,CACvB,CAAC;IAEF,MAAM,mBAAmB,GAAG,OAAO,CAAC,QAAQ,IAAI,YAAY,IAAI,SAAS,CAAC,CAAC;IAC3E,IAAA,+BAAc,EACb,YAAY,CAAC,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,EAAE,EAClC,CAAC,CAAC,EAAE,EAAE;QACL,CAAC,CAAC,cAAc,EAAE,CAAC;QACnB,aAAa,EAAE,CAAC;IACjB,CAAC,EACD,mBAAmB,CACnB,CAAC;IAEF,OAAO,CACN,iCAAK,SAAS,EAAC,gCAAgC,aAC9C,iCACC,EAAE,EAAE,EAAE,EACN,IAAI,EAAC,OAAO,kBACE,OAAO,mBACN,QAAQ,EACvB,SAAS,EAAE,IAAA,oBAAU,EACpB,wBAAwB,EACxB,OAAO,IAAI,qBAAqB,CAChC,kBACa,OAAO,EACrB,QAAQ,EAAE,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAC1B,OAAO,EAAE,aAAa,EACtB,SAAS,EAAE,aAAa,qBACP,UAAU,EAC3B,GAAG,EAAE,KAAK,aAEV,gCAAK,SAAS,EAAC,8BAA8B,YAC3C,OAAO,IAAI,aAAa,IAAI,CAC5B,gCACC,KAAK,EAAC,4BAA4B,EAClC,IAAI,EAAC,MAAM,EACX,OAAO,EAAC,WAAW,YAEnB,iCACC,CAAC,EAAC,2CAA2C,EAC7C,IAAI,EAAC,cAAc,GAClB,GACG,CACN,GACI,EACN,wBAAC,aAAK,IAAC,EAAE,EAAE,UAAU,EAAE,OAAO,EAAE,EAAE,EAAE,WAAW,EAAE,WAAW,aAC1D,YAAY,IAAI,CAChB,iCAAM,SAAS,EAAC,eAAe,YAAE,YAAY,CAAC,WAAW,EAAE,GAAQ,CACnE,EACA,KAAK,IACC,IACH,EACL,SAAS,IAAI,CAAC,OAAO,IAAI,qBAAqB,CAAC,IAAI,CACnD,uBAAC,mBAAW,IACX,EAAE,EAAC,UAAU,EACb,KAAK,EAAE,WAAW,IAAI,YAAY,EAClC,KAAK,EAAE,OAAO,WAAW,KAAK,QAAQ,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,EAAE,EACzD,QAAQ,EAAE,cAAc,EACxB,QAAQ,EAAE,QAAQ,GACjB,CACF,IACI,CACN,CAAC;AACH,CAAC;AAEY,QAAA,WAAW,GAAG,IAAA,uCAAkB,EAC5C,aAAa,EACb,kBAAkB,CAClB,CAAC"}
1
+ {"version":3,"file":"RadioOption.js","sourceRoot":"","sources":["../../../src/components/shared/Radio/RadioOption.tsx"],"names":[],"mappings":"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"}
@@ -171,8 +171,10 @@ export type ComponentPropsByType = {
171
171
  description?: ReactNode;
172
172
  onCheck: (b: boolean) => void;
173
173
  onDetailChange?: (v: string) => void;
174
- detailValue?: string | null;
175
174
  detailLabel?: ReactNode;
175
+ detailMaxLength?: number;
176
+ detailValue?: string | null;
177
+ shouldBeFiltered?: boolean;
176
178
  }[];
177
179
  orientation?: 'horizontal' | 'vertical';
178
180
  detailAlwaysDisplayed?: boolean;
@@ -232,6 +234,7 @@ export type ComponentPropsByType = {
232
234
  description?: ReactNode;
233
235
  label: ReactNode;
234
236
  value: string;
237
+ shouldBeFiltered?: boolean;
235
238
  }>;
236
239
  response: {
237
240
  name: string;
@@ -20,6 +20,8 @@ export const PairwiseLinks = ({ declarations, xAxisIterations, yAxisIterations,
20
20
  .map(([x, y]) => {
21
21
  const components = getComponents(y, x);
22
22
  const firstComponent = components[0];
23
+ if (firstComponent === undefined || firstComponent === null)
24
+ return;
23
25
  if (firstComponent.componentType !== 'Dropdown') {
24
26
  return (_jsx("div", { children: "First child component of a pairwise link must be a dropdown" }));
25
27
  }
@@ -1 +1 @@
1
- {"version":3,"file":"PairwiseLinks.js","sourceRoot":"","sources":["../../../src/components/PairwiseLinks/PairwiseLinks.tsx"],"names":[],"mappings":";AACA,OAAO,EAAE,KAAK,EAAE,MAAM,mBAAmB,CAAC;AAC1C,OAAc,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC;AACxC,OAAO,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAC;AACzD,OAAO,EAAE,YAAY,EAAE,MAAM,qCAAqC,CAAC;AACnE,OAAO,EAAE,KAAK,EAAE,MAAM,uBAAuB,CAAC;AAE9C,MAAM,CAAC,MAAM,aAAa,GAAG,CAAC,EAC7B,YAAY,EACZ,eAAe,EACf,eAAe,EACf,EAAE,EACF,aAAa,GAC2B,EAAE,EAAE;IAC5C,MAAM,MAAM,GAAG,eAAe,GAAG,eAAe,CAAC;IAEjD,IAAI,MAAM,IAAI,CAAC,EAAE,CAAC;QACjB,OAAO,gDAA8B,CAAC;IACvC,CAAC;IAED,MAAM,YAAY,GAAG,eAAe,CAAC,eAAe,EAAE,eAAe,CAAC,CAAC;IAEvE,OAAO,CACN,8BACC,KAAC,YAAY,IACZ,IAAI,EAAC,qBAAqB,EAC1B,YAAY,EAAE,YAAY,EAC1B,EAAE,EAAE,EAAE,GACL,EACD,YAAY;iBACX,MAAM,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC;iBACzB,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAChB,KAAC,iBAAiB,IAEjB,UAAU,EAAE,aAAa,CAAC,CAAC,EAAE,CAAC,CAAC,EAC/B,cAAc,EAAE,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC;oBAC3B,GAAG,KAAK;oBACR,EAAE,EAAE,GAAG,KAAK,CAAC,EAAE,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG;iBACpC,CAAC,IALG,GAAG,CAAC,IAAI,CAAC,EAAE,CAMf,CACF,CAAC,EACF,YAAY;iBACX,MAAM,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC;iBACzB,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,EAAE;gBACf,MAAM,UAAU,GAAG,aAAa,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;gBACvC,MAAM,cAAc,GAAG,UAAU,CAAC,CAAC,CAAC,CAAC;gBACrC,IAAI,cAAc,CAAC,aAAa,KAAK,UAAU,EAAE,CAAC;oBACjD,OAAO,CACN,wFAEM,CACN,CAAC;gBACH,CAAC;gBACD,OAAO,CACN,MAAC,QAAQ,eACR,KAAC,cAAc,OAAK,cAAc,GAAI,EACtC,KAAC,iBAAiB,IACjB,UAAU,EAAE,UAAU,CAAC,KAAK,CAAC,CAAC,CAAC,EAC/B,cAAc,EAAE,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC;gCAC3B,GAAG,KAAK;gCACR,EAAE,EAAE,GAAG,KAAK,CAAC,EAAE,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG;6BACpC,CAAC,GACD,KARY,GAAG,CAAC,IAAI,CAAC,EAAE,CASf,CACX,CAAC;YACH,CAAC,CAAC,IACD,CACH,CAAC;AACH,CAAC,CAAC;AAEF,MAAM,cAAc,GAAG,CAAC,EACvB,KAAK,EACL,OAAO,EACP,KAAK,GAC8B,EAAE,EAAE;IACvC,MAAM,cAAc,GAAG,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,KAAK,KAAK,CAAC,CAAC;IAC/D,IAAI,CAAC,cAAc,EAAE,CAAC;QACrB,OAAO,IAAI,CAAC;IACb,CAAC;IACD,OAAO,CACN,eAAK,SAAS,EAAC,sFAAsF,aACpG,KAAC,KAAK,cAAE,KAAK,GAAS,EACtB,wBAAM,cAAc,aAAd,cAAc,uBAAd,cAAc,CAAE,KAAK,GAAO,IAC7B,CACN,CAAC;AACH,CAAC,CAAC;AAEF,MAAM,eAAe,GAAG,CACvB,KAAa,EACb,KAAa,EACmB,EAAE;IAClC,OAAO,KAAK,CAAC,KAAK,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,KAAK,CAAC,KAAK,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAU,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;AAC1E,CAAC,CAAC"}
1
+ {"version":3,"file":"PairwiseLinks.js","sourceRoot":"","sources":["../../../src/components/PairwiseLinks/PairwiseLinks.tsx"],"names":[],"mappings":"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"}
@@ -13,6 +13,7 @@ export type CheckboxOptionProps = {
13
13
  invalid?: boolean;
14
14
  detailAlwaysDisplayed?: boolean;
15
15
  detailLabel?: ReactNode;
16
+ detailMaxLength?: number;
16
17
  detailValue?: string | null;
17
18
  onDetailChange?: (value: string) => void;
18
19
  };
@@ -3,7 +3,7 @@ import { slottableComponent } from '../HOC/slottableComponent';
3
3
  import { Label } from '../Label/Label';
4
4
  import { useKeyboardKey } from '../../../hooks/useKeyboardKey';
5
5
  import { CustomInput } from '../../Input/Input';
6
- function LunaticCheckboxOption({ disabled, readOnly, checked, id, onCheck, label, description, detailAlwaysDisplayed, detailLabel, detailValue, onDetailChange, codeModality, shortcut, invalid, }) {
6
+ function LunaticCheckboxOption({ disabled, readOnly, checked, id, onCheck, label, description, detailAlwaysDisplayed, detailLabel, detailMaxLength, detailValue, onDetailChange, codeModality, shortcut, invalid, }) {
7
7
  const isEnabled = !readOnly && !disabled;
8
8
  const hasDetail = !!onDetailChange;
9
9
  const hasKeyboardShortcut = Boolean(shortcut && codeModality && isEnabled);
@@ -22,7 +22,7 @@ function LunaticCheckboxOption({ disabled, readOnly, checked, id, onCheck, label
22
22
  e.preventDefault();
23
23
  onClickOption();
24
24
  }, hasKeyboardShortcut);
25
- return (_jsxs(_Fragment, { children: [_jsxs("div", { id: id, role: "checkbox", "aria-invalid": invalid, "aria-disabled": disabled, "aria-readonly": readOnly, className: "lunatic-input-checkbox", "aria-checked": checked, tabIndex: 0, onClick: onClickOption, onKeyDown: handleKeyDown, "aria-labelledby": labelId, children: [_jsx("div", { className: "lunatic-input-checkbox__icon", children: checked && (_jsx("svg", { xmlns: "http://www.w3.org/2000/svg", fill: "none", viewBox: "0 0 14 11", children: _jsx("path", { d: "M5 11 0 6l1.4-1.4L5 8.2 12.6.6 14 2l-9 9Z", fill: "currentColor" }) })) }), _jsxs(Label, { id: labelId, htmlFor: id, description: description, children: [codeModality && (_jsx("span", { className: "code-modality", children: codeModality.toUpperCase() })), ' ', label] })] }), hasDetail && (checked || detailAlwaysDisplayed) && (_jsx(CustomInput, { id: "detailId", label: detailLabel !== null && detailLabel !== void 0 ? detailLabel : 'Précisez :', value: typeof detailValue === 'string' ? detailValue : '', onChange: onDetailChange, disabled: disabled }))] }));
25
+ return (_jsxs(_Fragment, { children: [_jsxs("div", { id: id, role: "checkbox", "aria-invalid": invalid, "aria-disabled": disabled, "aria-readonly": readOnly, className: "lunatic-input-checkbox", "aria-checked": checked, tabIndex: 0, onClick: onClickOption, onKeyDown: handleKeyDown, "aria-labelledby": labelId, children: [_jsx("div", { className: "lunatic-input-checkbox__icon", children: checked && (_jsx("svg", { xmlns: "http://www.w3.org/2000/svg", fill: "none", viewBox: "0 0 14 11", children: _jsx("path", { d: "M5 11 0 6l1.4-1.4L5 8.2 12.6.6 14 2l-9 9Z", fill: "currentColor" }) })) }), _jsxs(Label, { id: labelId, htmlFor: id, description: description, children: [codeModality && (_jsx("span", { className: "code-modality", children: codeModality.toUpperCase() })), ' ', label] })] }), hasDetail && (checked || detailAlwaysDisplayed) && (_jsx(CustomInput, { id: "detailId", label: detailLabel !== null && detailLabel !== void 0 ? detailLabel : 'Précisez :', value: typeof detailValue === 'string' ? detailValue : '', maxLength: detailMaxLength, onChange: onDetailChange, disabled: disabled }))] }));
26
26
  }
27
27
  export const CheckboxOption = slottableComponent('CheckboxOption', LunaticCheckboxOption);
28
28
  //# sourceMappingURL=CheckboxOption.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"CheckboxOption.js","sourceRoot":"","sources":["../../../../src/components/shared/Checkbox/CheckboxOption.tsx"],"names":[],"mappings":";AAEA,OAAO,EAAE,kBAAkB,EAAE,MAAM,2BAA2B,CAAC;AAC/D,OAAO,EAAE,KAAK,EAAE,MAAM,gBAAgB,CAAC;AACvC,OAAO,EAAE,cAAc,EAAE,MAAM,+BAA+B,CAAC;AAC/D,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAmBhD,SAAS,qBAAqB,CAAC,EAC9B,QAAQ,EACR,QAAQ,EACR,OAAO,EACP,EAAE,EACF,OAAO,EACP,KAAK,EACL,WAAW,EACX,qBAAqB,EACrB,WAAW,EACX,WAAW,EACX,cAAc,EACd,YAAY,EACZ,QAAQ,EACR,OAAO,GACc;IACrB,MAAM,SAAS,GAAG,CAAC,QAAQ,IAAI,CAAC,QAAQ,CAAC;IACzC,MAAM,SAAS,GAAG,CAAC,CAAC,cAAc,CAAC;IACnC,MAAM,mBAAmB,GAAG,OAAO,CAAC,QAAQ,IAAI,YAAY,IAAI,SAAS,CAAC,CAAC;IAC3E,MAAM,aAAa,GAAG,GAAG,EAAE;QAC1B,IAAI,SAAS,EAAE,CAAC;YACf,OAAO,CAAC,CAAC,OAAO,CAAC,CAAC;QACnB,CAAC;IACF,CAAC,CAAC;IAEF,MAAM,aAAa,GAAyC,CAAC,CAAC,EAAE,EAAE;QACjE,IAAI,CAAC,CAAC,IAAI,KAAK,OAAO,EAAE,CAAC;YACxB,aAAa,EAAE,CAAC;QACjB,CAAC;IACF,CAAC,CAAC;IAEF,MAAM,OAAO,GAAG,SAAS,EAAE,EAAE,CAAC;IAE9B,cAAc,CACb,YAAY,CAAC,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,EAAE,EAClC,CAAC,CAAC,EAAE,EAAE;QACL,CAAC,CAAC,cAAc,EAAE,CAAC;QACnB,aAAa,EAAE,CAAC;IACjB,CAAC,EACD,mBAAmB,CACnB,CAAC;IAEF,OAAO,CACN,8BACC,eACC,EAAE,EAAE,EAAE,EACN,IAAI,EAAC,UAAU,kBACD,OAAO,mBACN,QAAQ,mBACR,QAAQ,EACvB,SAAS,EAAC,wBAAwB,kBACpB,OAAO,EACrB,QAAQ,EAAE,CAAC,EACX,OAAO,EAAE,aAAa,EACtB,SAAS,EAAE,aAAa,qBACP,OAAO,aAExB,cAAK,SAAS,EAAC,8BAA8B,YAC3C,OAAO,IAAI,CACX,cACC,KAAK,EAAC,4BAA4B,EAClC,IAAI,EAAC,MAAM,EACX,OAAO,EAAC,WAAW,YAEnB,eACC,CAAC,EAAC,2CAA2C,EAC7C,IAAI,EAAC,cAAc,GAClB,GACG,CACN,GACI,EACN,MAAC,KAAK,IAAC,EAAE,EAAE,OAAO,EAAE,OAAO,EAAE,EAAE,EAAE,WAAW,EAAE,WAAW,aACvD,YAAY,IAAI,CAChB,eAAM,SAAS,EAAC,eAAe,YAAE,YAAY,CAAC,WAAW,EAAE,GAAQ,CACnE,EAAE,GAAG,EACL,KAAK,IACC,IACH,EACL,SAAS,IAAI,CAAC,OAAO,IAAI,qBAAqB,CAAC,IAAI,CACnD,KAAC,WAAW,IACX,EAAE,EAAC,UAAU,EACb,KAAK,EAAE,WAAW,aAAX,WAAW,cAAX,WAAW,GAAI,YAAY,EAClC,KAAK,EAAE,OAAO,WAAW,KAAK,QAAQ,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,EAAE,EACzD,QAAQ,EAAE,cAAc,EACxB,QAAQ,EAAE,QAAQ,GACjB,CACF,IACC,CACH,CAAC;AACH,CAAC;AAED,MAAM,CAAC,MAAM,cAAc,GAAG,kBAAkB,CAC/C,gBAAgB,EAChB,qBAAqB,CACrB,CAAC"}
1
+ {"version":3,"file":"CheckboxOption.js","sourceRoot":"","sources":["../../../../src/components/shared/Checkbox/CheckboxOption.tsx"],"names":[],"mappings":";AAEA,OAAO,EAAE,kBAAkB,EAAE,MAAM,2BAA2B,CAAC;AAC/D,OAAO,EAAE,KAAK,EAAE,MAAM,gBAAgB,CAAC;AACvC,OAAO,EAAE,cAAc,EAAE,MAAM,+BAA+B,CAAC;AAC/D,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAoBhD,SAAS,qBAAqB,CAAC,EAC9B,QAAQ,EACR,QAAQ,EACR,OAAO,EACP,EAAE,EACF,OAAO,EACP,KAAK,EACL,WAAW,EACX,qBAAqB,EACrB,WAAW,EACX,eAAe,EACf,WAAW,EACX,cAAc,EACd,YAAY,EACZ,QAAQ,EACR,OAAO,GACc;IACrB,MAAM,SAAS,GAAG,CAAC,QAAQ,IAAI,CAAC,QAAQ,CAAC;IACzC,MAAM,SAAS,GAAG,CAAC,CAAC,cAAc,CAAC;IACnC,MAAM,mBAAmB,GAAG,OAAO,CAAC,QAAQ,IAAI,YAAY,IAAI,SAAS,CAAC,CAAC;IAC3E,MAAM,aAAa,GAAG,GAAG,EAAE;QAC1B,IAAI,SAAS,EAAE,CAAC;YACf,OAAO,CAAC,CAAC,OAAO,CAAC,CAAC;QACnB,CAAC;IACF,CAAC,CAAC;IAEF,MAAM,aAAa,GAAyC,CAAC,CAAC,EAAE,EAAE;QACjE,IAAI,CAAC,CAAC,IAAI,KAAK,OAAO,EAAE,CAAC;YACxB,aAAa,EAAE,CAAC;QACjB,CAAC;IACF,CAAC,CAAC;IAEF,MAAM,OAAO,GAAG,SAAS,EAAE,EAAE,CAAC;IAE9B,cAAc,CACb,YAAY,CAAC,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,EAAE,EAClC,CAAC,CAAC,EAAE,EAAE;QACL,CAAC,CAAC,cAAc,EAAE,CAAC;QACnB,aAAa,EAAE,CAAC;IACjB,CAAC,EACD,mBAAmB,CACnB,CAAC;IAEF,OAAO,CACN,8BACC,eACC,EAAE,EAAE,EAAE,EACN,IAAI,EAAC,UAAU,kBACD,OAAO,mBACN,QAAQ,mBACR,QAAQ,EACvB,SAAS,EAAC,wBAAwB,kBACpB,OAAO,EACrB,QAAQ,EAAE,CAAC,EACX,OAAO,EAAE,aAAa,EACtB,SAAS,EAAE,aAAa,qBACP,OAAO,aAExB,cAAK,SAAS,EAAC,8BAA8B,YAC3C,OAAO,IAAI,CACX,cACC,KAAK,EAAC,4BAA4B,EAClC,IAAI,EAAC,MAAM,EACX,OAAO,EAAC,WAAW,YAEnB,eACC,CAAC,EAAC,2CAA2C,EAC7C,IAAI,EAAC,cAAc,GAClB,GACG,CACN,GACI,EACN,MAAC,KAAK,IAAC,EAAE,EAAE,OAAO,EAAE,OAAO,EAAE,EAAE,EAAE,WAAW,EAAE,WAAW,aACvD,YAAY,IAAI,CAChB,eAAM,SAAS,EAAC,eAAe,YAAE,YAAY,CAAC,WAAW,EAAE,GAAQ,CACnE,EAAE,GAAG,EACL,KAAK,IACC,IACH,EACL,SAAS,IAAI,CAAC,OAAO,IAAI,qBAAqB,CAAC,IAAI,CACnD,KAAC,WAAW,IACX,EAAE,EAAC,UAAU,EACb,KAAK,EAAE,WAAW,aAAX,WAAW,cAAX,WAAW,GAAI,YAAY,EAClC,KAAK,EAAE,OAAO,WAAW,KAAK,QAAQ,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,EAAE,EACzD,SAAS,EAAE,eAAe,EAC1B,QAAQ,EAAE,cAAc,EACxB,QAAQ,EAAE,QAAQ,GACjB,CACF,IACC,CACH,CAAC;AACH,CAAC;AAED,MAAM,CAAC,MAAM,cAAc,GAAG,kBAAkB,CAC/C,gBAAgB,EAChB,qBAAqB,CACrB,CAAC"}
@@ -5,7 +5,7 @@ import { useKeyboardKey } from '../../../hooks/useKeyboardKey';
5
5
  import { Label } from '../Label/Label';
6
6
  import classnames from 'classnames';
7
7
  import { CustomInput } from '../../Input/Input';
8
- function LunaticRadioOption({ checked, disabled, readOnly, checkboxStyle, value, onKeyDown, index, shortcut, codeModality, id, invalid, labelledBy, description, label, onDetailChange, detailAlwaysDisplayed, detailLabel, detailValue, onCheck, onUncheck, }) {
8
+ function LunaticRadioOption({ checked, disabled, readOnly, checkboxStyle, value, onKeyDown, index, shortcut, codeModality, id, invalid, labelledBy, description, label, onDetailChange, detailAlwaysDisplayed, detailLabel, detailMaxLength, detailValue, onCheck, onUncheck, }) {
9
9
  const divEl = useRef(null);
10
10
  const isEnabled = !disabled && !readOnly;
11
11
  const isRadio = !checkboxStyle;
@@ -36,7 +36,7 @@ function LunaticRadioOption({ checked, disabled, readOnly, checkboxStyle, value,
36
36
  e.preventDefault();
37
37
  onClickOption();
38
38
  }, hasKeyboardShortcut);
39
- return (_jsxs("div", { className: "lunatic-input-checkbox-wrapper", children: [_jsxs("div", { id: id, role: "radio", "aria-invalid": invalid, "aria-disabled": disabled, className: classnames('lunatic-input-checkbox', isRadio && 'lunatic-input-radio'), "aria-checked": checked, tabIndex: checked ? -1 : 0, onClick: onClickOption, onKeyDown: handleKeyDown, "aria-labelledby": labelledBy, ref: divEl, children: [_jsx("div", { className: "lunatic-input-checkbox__icon", children: checked && checkboxStyle && (_jsx("svg", { xmlns: "http://www.w3.org/2000/svg", fill: "none", viewBox: "0 0 14 11", children: _jsx("path", { d: "M5 11 0 6l1.4-1.4L5 8.2 12.6.6 14 2l-9 9Z", fill: "currentColor" }) })) }), _jsxs(Label, { id: labelledBy, htmlFor: id, description: description, children: [codeModality && (_jsx("span", { className: "code-modality", children: codeModality.toUpperCase() })), label] })] }), hasDetail && (checked || detailAlwaysDisplayed) && (_jsx(CustomInput, { id: "detailId", label: detailLabel !== null && detailLabel !== void 0 ? detailLabel : 'Précisez :', value: typeof detailValue === 'string' ? detailValue : '', onChange: onDetailChange, disabled: disabled }))] }));
39
+ return (_jsxs("div", { className: "lunatic-input-checkbox-wrapper", children: [_jsxs("div", { id: id, role: "radio", "aria-invalid": invalid, "aria-disabled": disabled, className: classnames('lunatic-input-checkbox', isRadio && 'lunatic-input-radio'), "aria-checked": checked, tabIndex: checked ? -1 : 0, onClick: onClickOption, onKeyDown: handleKeyDown, "aria-labelledby": labelledBy, ref: divEl, children: [_jsx("div", { className: "lunatic-input-checkbox__icon", children: checked && checkboxStyle && (_jsx("svg", { xmlns: "http://www.w3.org/2000/svg", fill: "none", viewBox: "0 0 14 11", children: _jsx("path", { d: "M5 11 0 6l1.4-1.4L5 8.2 12.6.6 14 2l-9 9Z", fill: "currentColor" }) })) }), _jsxs(Label, { id: labelledBy, htmlFor: id, description: description, children: [codeModality && (_jsx("span", { className: "code-modality", children: codeModality.toUpperCase() })), label] })] }), hasDetail && (checked || detailAlwaysDisplayed) && (_jsx(CustomInput, { id: "detailId", label: detailLabel !== null && detailLabel !== void 0 ? detailLabel : 'Précisez :', value: typeof detailValue === 'string' ? detailValue : '', maxLength: detailMaxLength, onChange: onDetailChange, disabled: disabled }))] }));
40
40
  }
41
41
  export const RadioOption = slottableComponent('RadioOption', LunaticRadioOption);
42
42
  //# sourceMappingURL=RadioOption.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"RadioOption.js","sourceRoot":"","sources":["../../../../src/components/shared/Radio/RadioOption.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"RadioOption.js","sourceRoot":"","sources":["../../../../src/components/shared/Radio/RadioOption.tsx"],"names":[],"mappings":"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"}
@@ -171,8 +171,10 @@ export type ComponentPropsByType = {
171
171
  description?: ReactNode;
172
172
  onCheck: (b: boolean) => void;
173
173
  onDetailChange?: (v: string) => void;
174
- detailValue?: string | null;
175
174
  detailLabel?: ReactNode;
175
+ detailMaxLength?: number;
176
+ detailValue?: string | null;
177
+ shouldBeFiltered?: boolean;
176
178
  }[];
177
179
  orientation?: 'horizontal' | 'vertical';
178
180
  detailAlwaysDisplayed?: boolean;
@@ -232,6 +234,7 @@ export type ComponentPropsByType = {
232
234
  description?: ReactNode;
233
235
  label: ReactNode;
234
236
  value: string;
237
+ shouldBeFiltered?: boolean;
235
238
  }>;
236
239
  response: {
237
240
  name: string;
@@ -112,6 +112,7 @@ export type ComponentCheckboxGroupDefinition = ComponentDefinitionBase & {
112
112
  id: string;
113
113
  detail?: {
114
114
  label?: VTLExpression;
115
+ maxLength?: number;
115
116
  response: ResponseDefinition;
116
117
  };
117
118
  }[];
@@ -130,6 +131,7 @@ export type OptionsWithDetail = {
130
131
  description?: VTLExpression;
131
132
  detail?: {
132
133
  label: VTLExpression;
134
+ maxLength?: number;
133
135
  response: {
134
136
  name: string;
135
137
  };
@@ -215,6 +217,7 @@ export type Variable = {
215
217
  variableType: 'CALCULATED';
216
218
  name: string;
217
219
  expression: VTLExpression;
220
+ isIgnoredByLunatic?: boolean;
218
221
  bindingDependencies?: string[];
219
222
  shapeFrom?: string[] | string;
220
223
  iterationReference?: string;
@@ -1,7 +1,12 @@
1
1
  import type { LunaticVariablesStore } from '../lunatic-variables-store';
2
2
  import type { LunaticSource } from '../../../type';
3
3
  /**
4
- * Cleaning behaviour for the store
5
- * When a variable changes, other variables can be reset
4
+ * Implements the cleaning behavior for the variable store.
5
+ * When a variable changes, this function determines which other variables
6
+ * should be reset based on the cleaning rules defined in the source.
7
+ *
8
+ * @param store - The variables store that manages all variable values
9
+ * @param cleaning - Cleaning rules from the Lunatic source
10
+ * @param sourceValues - Default values from source.json to use when cleaning variables
6
11
  */
7
12
  export declare function cleaningBehaviour(store: LunaticVariablesStore, cleaning: LunaticSource['cleaning'], sourceValues?: Record<string, unknown>): void;
@@ -1,12 +1,15 @@
1
- import { depth } from '../../../../utils/array';
1
+ import { depth, setAtIndex } from '../../../../utils/array';
2
2
  import { castBool } from '../../../../utils/cast';
3
3
  /**
4
- * Cleaning behaviour for the store
5
- * When a variable changes, other variables can be reset
4
+ * Implements the cleaning behavior for the variable store.
5
+ * When a variable changes, this function determines which other variables
6
+ * should be reset based on the cleaning rules defined in the source.
7
+ *
8
+ * @param store - The variables store that manages all variable values
9
+ * @param cleaning - Cleaning rules from the Lunatic source
10
+ * @param sourceValues - Default values from source.json to use when cleaning variables
6
11
  */
7
- export function cleaningBehaviour(store, cleaning,
8
- // Value used as default when cleaning a variable, correspoding to value of variable in source.json (not data)
9
- sourceValues = {}) {
12
+ export function cleaningBehaviour(store, cleaning, sourceValues = {}) {
10
13
  if (!cleaning) {
11
14
  return;
12
15
  }
@@ -22,66 +25,82 @@ sourceValues = {}) {
22
25
  }
23
26
  }
24
27
  }
25
- // Create a map to improve performance
28
+ // Convert cleaning object to Map for faster lookups
26
29
  const cleaningMap = new Map(Object.entries(cleaning));
27
30
  store.on('change', (e) => {
28
31
  const cleaningInfo = cleaningMap.get(e.detail.name);
29
32
  const iteration = e.detail.iteration;
30
- // The variable does not have cleaning
33
+ // Skip if the changed variable doesn't have any cleaning rules
31
34
  if (!cleaningInfo) {
32
35
  return;
33
36
  }
34
37
  for (const variableName in cleaningInfo) {
35
38
  try {
36
- // First: check if variable is already cleaned i.e, value is `null`, empty or list of `null`
39
+ // Skip if variable is already in a cleaned state
37
40
  if (isAlreadyCleaned(store, variableName))
38
41
  continue;
39
- // Second: check if variable should be clean i.e one of expressions is true
40
- // shouldClean is simple boolean or array of boolean if there have a shapeFrom
42
+ // Determine if the variable needs cleaning based on expressions
41
43
  const shouldCleanResult = shouldClean(store, {
42
44
  expressions: cleaningInfo[variableName],
43
45
  iteration: iteration,
44
46
  isResizing: e.detail.cause === 'resizing',
45
47
  });
48
+ // Handle array variables (where we might need to clean specific indexes)
46
49
  if (Array.isArray(shouldCleanResult)) {
47
50
  cleanArrayVariableAccordingCondition(store, sourceValues, variableName, shouldCleanResult);
48
51
  continue;
49
52
  }
53
+ // Clean regular variables if needed
50
54
  if (shouldCleanResult)
51
55
  cleanVariable(store, sourceValues, variableName, iteration);
52
56
  }
53
57
  catch (e) {
54
- // If we have an error, skip this cleaning
58
+ // Log error but continue processing other variables
55
59
  console.error(e);
56
60
  }
57
61
  }
58
62
  });
59
63
  }
64
+ /**
65
+ * Checks if a variable is already in a cleaned state
66
+ *
67
+ * @param store - The variables store
68
+ * @param variableName - Name of the variable to check
69
+ * @returns true if the variable is null or an array of nulls
70
+ */
60
71
  function isAlreadyCleaned(store, variableName) {
61
72
  const value = store.get(variableName);
62
73
  if (Array.isArray(value))
63
74
  return value.every((v) => v === null);
64
- if (value === null)
65
- return true;
75
+ return value === null;
66
76
  }
67
77
  /**
68
- * Check if a variable need to be cleaned
78
+ * Determines if a variable needs to be cleaned based on expressions
79
+ *
80
+ * @param store - The variables store
81
+ * @param options - Configuration options
82
+ * @param options.expressions - Conditions that determine if cleaning should occur
83
+ * (string for legacy format or array of expression objects)
84
+ * /!\ Expressions comes from conditionFilter so it evaluates to "true"
85
+ * if the variable is visible, meaning we need to clean if the expression
86
+ * is evaluated to false.
87
+ * @param options.iteration - Current iteration level for the variable
88
+ * @param options.isResizing - Whether the cleaning is triggered by a resize operation
89
+ * @returns Boolean or array of booleans indicating if cleaning should occur
69
90
  */
70
- function shouldClean(store, {
71
- // The expressions are a list of condition filter to display the variable, so we should clean if the filter is evaluated to false (false = variable is not visible)
72
- expressions, iteration, isResizing, }) {
73
- // Legacy cleaning used a simple string
91
+ function shouldClean(store, { expressions, iteration, isResizing, }) {
92
+ // Handle legacy format where expressions is a single string
74
93
  if (typeof expressions === 'string') {
75
94
  return !castBool(store.run(expressions, {
76
95
  iteration,
77
96
  }));
78
97
  }
79
- // New format use tuples { expression, shapeFrom, isAggregatorUsed }
98
+ // Handle a new format with expression objects shaped like this { expression, shapeFrom, isAggregatorUsed }
80
99
  if (isResizing) {
81
- // If we are resizing a variable, only run expression containing aggregators (count(), sum()...)
100
+ // During resize operations, only consider expressions with aggregators (count, sum...)
82
101
  expressions = expressions.filter((expr) => expr.isAggregatorUsed);
83
102
  }
84
- // here, value has change in root scope, but we have to to check for each iteration of variable
103
+ // If expressions have shapeFrom and we're at root level, we need to check each iteration individually
85
104
  if (hasShapeFrom(expressions) && !iteration) {
86
105
  const shapeFromVariable = store.get(expressions[0].shapeFrom);
87
106
  const shouldCleanArray = new Array(shapeFromVariable.length).fill(false);
@@ -95,17 +114,22 @@ expressions, iteration, isResizing, }) {
95
114
  return shouldCleanArray;
96
115
  }
97
116
  else {
98
- // if only one expression is false, we have to clean (condition is display condition)
117
+ // Clean the variable if any condition is false (variable is not visible),
99
118
  for (const expression of expressions) {
100
- // Run the expression to check if cleaning should happen
101
119
  if (!store.run(expression.expression, {
102
120
  iteration,
103
121
  }))
104
122
  return true;
105
123
  }
124
+ // All conditions are true, no cleaning needed
106
125
  return false;
107
126
  }
108
127
  }
128
+ /**
129
+ * Recursively retrieves a value at a specific iteration level in a nested structure
130
+ *
131
+ * @returns The value at the specified iteration path, or null if not found
132
+ */
109
133
  function getValueAtIteration(value, iteration) {
110
134
  if (!iteration || iteration.length === 0) {
111
135
  return value !== null && value !== void 0 ? value : null;
@@ -116,16 +140,24 @@ function getValueAtIteration(value, iteration) {
116
140
  return getValueAtIteration(value[iteration[0]], iteration.slice(1));
117
141
  }
118
142
  /**
119
- * hasShapeFrom
120
- * actually, in cleaning modelisation,
121
- * all expressions have no shapeFrom or have the **same** shapeFrom
122
- * @param expressions
123
- * @returns boolean if all expression has shapeFrom
143
+ * Checks if all expressions in the array have a shapeFrom property
144
+ *
145
+ * In the cleaning model, all expressions either have no shapeFrom
146
+ * or they all have the same shapeFrom value.
124
147
  *
148
+ * @returns true if all expressions have a non-null shapeFrom property
125
149
  */
126
150
  function hasShapeFrom(expressions) {
127
151
  return expressions.every((expression) => expression.shapeFrom !== null && expression.shapeFrom !== undefined);
128
152
  }
153
+ /**
154
+ * Cleans specific elements in an array variable based on a condition array
155
+ *
156
+ * @param store - The variables store
157
+ * @param sourceValues - Default values from source.json
158
+ * @param variableName - Name of the array variable to clean
159
+ * @param shouldClean - Array of booleans indicating which elements should be cleaned
160
+ */
129
161
  function cleanArrayVariableAccordingCondition(store, sourceValues, variableName, shouldClean) {
130
162
  for (const [iteration, shouldCleanByIteration] of shouldClean.entries()) {
131
163
  if (shouldCleanByIteration)
@@ -133,10 +165,11 @@ function cleanArrayVariableAccordingCondition(store, sourceValues, variableName,
133
165
  }
134
166
  }
135
167
  /**
136
- * cleanVariable: this function set to null (and not initalValue) the variable at iteration
137
- * @param store
138
- * @param variableName
139
- * @param iteration
168
+ * Resets a variable to its initial value at a specific iteration level
169
+ *
170
+ * This function retrieves the initial value from sourceValues and sets
171
+ * the variable to that value at the specified iteration. If the variable
172
+ * is a pairwise variable, it uses a special cleaning method to maintain symmetry.
140
173
  */
141
174
  function cleanVariable(store, sourceValues, variableName, iteration) {
142
175
  // Variable may be top level, so we need to deduce expected iteration
@@ -144,9 +177,49 @@ function cleanVariable(store, sourceValues, variableName, iteration) {
144
177
  const variableIteration = variableDepth === 0
145
178
  ? undefined
146
179
  : iteration === null || iteration === void 0 ? void 0 : iteration.slice(0, depth(sourceValues[variableName]));
180
+ if (cleanPairwise(store, variableName, variableIteration)) {
181
+ return;
182
+ }
147
183
  store.set(variableName, getValueAtIteration(sourceValues[variableName], variableIteration), {
148
184
  iteration: variableIteration,
149
185
  cause: 'cleaning',
150
186
  });
151
187
  }
188
+ /**
189
+ * Cleans a pairwise variable (2D array) at a specific iteration
190
+ *
191
+ * For pairwise variables, cleaning involves setting both the row and column
192
+ * at the specified index to null, maintaining the symmetry of the matrix.
193
+ *
194
+ * @returns true if the variable was a pairwise and was cleaned, false otherwise
195
+ */
196
+ function cleanPairwise(store, variableName, iteration) {
197
+ // We are not trying to clean a pairwise at a specific index
198
+ if (!iteration || iteration.length !== 1) {
199
+ return false;
200
+ }
201
+ const variableValue = store.get(variableName);
202
+ // The variable is pairwise if it's a 2D array
203
+ if (!Array.isArray(variableValue)) {
204
+ return false;
205
+ }
206
+ const variableDepth = depth(variableValue);
207
+ if (variableDepth !== 2) {
208
+ return false;
209
+ }
210
+ // Clean the row and the column corresponding to the index
211
+ store.set(variableName, variableValue.map((value, k) => {
212
+ // The value is not an array, this should not happen so we keep the original value
213
+ if (!Array.isArray(value)) {
214
+ return value;
215
+ }
216
+ // Empty the row corresponding to the index being deleted
217
+ if (k === iteration[0]) {
218
+ return value.fill(null);
219
+ }
220
+ // Nullify cells in the column corresponding to the index being deleted
221
+ return setAtIndex(value, iteration, null);
222
+ }));
223
+ return true;
224
+ }
152
225
  //# sourceMappingURL=cleaning-behaviour.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"cleaning-behaviour.js","sourceRoot":"","sources":["../../../../../src/use-lunatic/commons/variables/behaviours/cleaning-behaviour.ts"],"names":[],"mappings":"AAKA,OAAO,EAAE,KAAK,EAAE,MAAM,yBAAyB,CAAC;AAChD,OAAO,EAAE,QAAQ,EAAE,MAAM,wBAAwB,CAAC;AAElD;;;GAGG;AACH,MAAM,UAAU,iBAAiB,CAChC,KAA4B,EAC5B,QAAmC;AACnC,8GAA8G;AAC9G,eAAwC,EAAE;IAE1C,IAAI,CAAC,QAAQ,EAAE,CAAC;QACf,OAAO;IACR,CAAC;IAED,wDAAwD;IACxD,KAAK,MAAM,MAAM,IAAI,QAAQ,EAAE,CAAC;QAC/B,KAAK,MAAM,MAAM,IAAI,QAAQ,CAAC,MAAM,CAAC,EAAE,CAAC;YACvC,IAAI,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC;gBAC7C,KAAK,MAAM,YAAY,IAAI,QAAQ,CAAC,MAAM,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC;oBACrD,KAAK,CAAC,aAAa,CAClB,YAAY,CAAC,UAAU,EACvB,YAAY,CAAC,UAAU,EACvB;wBACC,SAAS,EAAE,YAAY,CAAC,SAAS;qBACjC,CACD,CAAC;gBACH,CAAC;YACF,CAAC;QACF,CAAC;IACF,CAAC;IAED,sCAAsC;IACtC,MAAM,WAAW,GAAG,IAAI,GAAG,CAAC,MAAM,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,CAAC;IAEtD,KAAK,CAAC,EAAE,CAAC,QAAQ,EAAE,CAAC,CAAC,EAAE,EAAE;QACxB,MAAM,YAAY,GAAG,WAAW,CAAC,GAAG,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;QACpD,MAAM,SAAS,GAAG,CAAC,CAAC,MAAM,CAAC,SAAS,CAAC;QAErC,sCAAsC;QACtC,IAAI,CAAC,YAAY,EAAE,CAAC;YACnB,OAAO;QACR,CAAC;QAED,KAAK,MAAM,YAAY,IAAI,YAAY,EAAE,CAAC;YACzC,IAAI,CAAC;gBACJ,4FAA4F;gBAC5F,IAAI,gBAAgB,CAAC,KAAK,EAAE,YAAY,CAAC;oBAAE,SAAS;gBACpD,2EAA2E;gBAE3E,8EAA8E;gBAC9E,MAAM,iBAAiB,GAAG,WAAW,CAAC,KAAK,EAAE;oBAC5C,WAAW,EAAE,YAAY,CAAC,YAAY,CAAC;oBACvC,SAAS,EAAE,SAAS;oBACpB,UAAU,EAAE,CAAC,CAAC,MAAM,CAAC,KAAK,KAAK,UAAU;iBACzC,CAAC,CAAC;gBAEH,IAAI,KAAK,CAAC,OAAO,CAAC,iBAAiB,CAAC,EAAE,CAAC;oBACtC,oCAAoC,CACnC,KAAK,EACL,YAAY,EACZ,YAAY,EACZ,iBAAiB,CACjB,CAAC;oBACF,SAAS;gBACV,CAAC;gBACD,IAAI,iBAAiB;oBACpB,aAAa,CAAC,KAAK,EAAE,YAAY,EAAE,YAAY,EAAE,SAAS,CAAC,CAAC;YAC9D,CAAC;YAAC,OAAO,CAAC,EAAE,CAAC;gBACZ,0CAA0C;gBAC1C,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;YAClB,CAAC;QACF,CAAC;IACF,CAAC,CAAC,CAAC;AACJ,CAAC;AAED,SAAS,gBAAgB,CAAC,KAA4B,EAAE,YAAoB;IAC3E,MAAM,KAAK,GAAG,KAAK,CAAC,GAAG,CAAC,YAAY,CAAC,CAAC;IACtC,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC;QAAE,OAAO,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,KAAK,IAAI,CAAC,CAAC;IAChE,IAAI,KAAK,KAAK,IAAI;QAAE,OAAO,IAAI,CAAC;AACjC,CAAC;AAED;;GAEG;AACH,SAAS,WAAW,CACnB,KAA4B,EAC5B;AACC,mKAAmK;AACnK,WAAW,EACX,SAAS,EACT,UAAU,GAWV;IAED,uCAAuC;IACvC,IAAI,OAAO,WAAW,KAAK,QAAQ,EAAE,CAAC;QACrC,OAAO,CAAC,QAAQ,CACf,KAAK,CAAC,GAAG,CAAC,WAAW,EAAE;YACtB,SAAS;SACT,CAAC,CACF,CAAC;IACH,CAAC;IAED,qEAAqE;IACrE,IAAI,UAAU,EAAE,CAAC;QAChB,gGAAgG;QAChG,WAAW,GAAG,WAAW,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC;IACnE,CAAC;IAED,+FAA+F;IAC/F,IAAI,YAAY,CAAC,WAAW,CAAC,IAAI,CAAC,SAAS,EAAE,CAAC;QAC7C,MAAM,iBAAiB,GAAG,KAAK,CAAC,GAAG,CAClC,WAAW,CAAC,CAAC,CAAC,CAAC,SAAmB,CAChB,CAAC;QAEpB,MAAM,gBAAgB,GAAG,IAAI,KAAK,CAAC,iBAAiB,CAAC,MAAM,CAAC,CAAC,IAAI,CAChE,KAAK,CACa,CAAC;QAEpB,KAAK,MAAM,CAAC,cAAc,CAAC,IAAI,gBAAgB,CAAC,OAAO,EAAE,EAAE,CAAC;YAC3D,gBAAgB,CAAC,cAAc,CAAC,GAAG,WAAW,CAAC,KAAK,EAAE;gBACrD,WAAW;gBACX,SAAS,EAAE,CAAC,cAAc,CAAC;gBAC3B,UAAU;aACV,CAAY,CAAC;QACf,CAAC;QACD,OAAO,gBAAgB,CAAC;IACzB,CAAC;SAAM,CAAC;QACP,qFAAqF;QACrF,KAAK,MAAM,UAAU,IAAI,WAAW,EAAE,CAAC;YACtC,wDAAwD;YACxD,IACC,CAAC,KAAK,CAAC,GAAG,CAAC,UAAU,CAAC,UAAU,EAAE;gBACjC,SAAS;aACT,CAAC;gBAEF,OAAO,IAAI,CAAC;QACd,CAAC;QAED,OAAO,KAAK,CAAC;IACd,CAAC;AACF,CAAC;AAED,SAAS,mBAAmB,CAAC,KAAc,EAAE,SAAoB;IAChE,IAAI,CAAC,SAAS,IAAI,SAAS,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAC1C,OAAO,KAAK,aAAL,KAAK,cAAL,KAAK,GAAI,IAAI,CAAC;IACtB,CAAC;IACD,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC;QAC3B,OAAO,IAAI,CAAC;IACb,CAAC;IACD,OAAO,mBAAmB,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,EAAE,SAAS,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;AACrE,CAAC;AAED;;;;;;;GAOG;AACH,SAAS,YAAY,CACpB,WAIG;IAEH,OAAO,WAAW,CAAC,KAAK,CACvB,CAAC,UAAU,EAAE,EAAE,CACd,UAAU,CAAC,SAAS,KAAK,IAAI,IAAI,UAAU,CAAC,SAAS,KAAK,SAAS,CACpE,CAAC;AACH,CAAC;AAED,SAAS,oCAAoC,CAC5C,KAA4B,EAC5B,YAAqC,EACrC,YAAoB,EACpB,WAAsB;IAEtB,KAAK,MAAM,CAAC,SAAS,EAAE,sBAAsB,CAAC,IAAI,WAAW,CAAC,OAAO,EAAE,EAAE,CAAC;QACzE,IAAI,sBAAsB;YACzB,aAAa,CAAC,KAAK,EAAE,YAAY,EAAE,YAAY,EAAE,CAAC,SAAS,CAAC,CAAC,CAAC;IAChE,CAAC;AACF,CAAC;AAED;;;;;GAKG;AACH,SAAS,aAAa,CACrB,KAA4B,EAC5B,YAAqC,EACrC,YAAoB,EACpB,SAAqC;IAErC,qEAAqE;IACrE,MAAM,aAAa,GAAG,KAAK,CAAC,YAAY,CAAC,YAAY,CAAC,CAAC,CAAC;IACxD,MAAM,iBAAiB,GACtB,aAAa,KAAK,CAAC;QAClB,CAAC,CAAC,SAAS;QACX,CAAC,CAAC,SAAS,aAAT,SAAS,uBAAT,SAAS,CAAE,KAAK,CAAC,CAAC,EAAE,KAAK,CAAC,YAAY,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC;IAE3D,KAAK,CAAC,GAAG,CACR,YAAY,EACZ,mBAAmB,CAAC,YAAY,CAAC,YAAY,CAAC,EAAE,iBAAiB,CAAC,EAClE;QACC,SAAS,EAAE,iBAAiB;QAC5B,KAAK,EAAE,UAAU;KACjB,CACD,CAAC;AACH,CAAC"}
1
+ {"version":3,"file":"cleaning-behaviour.js","sourceRoot":"","sources":["../../../../../src/use-lunatic/commons/variables/behaviours/cleaning-behaviour.ts"],"names":[],"mappings":"AAKA,OAAO,EAAE,KAAK,EAAE,UAAU,EAAE,MAAM,yBAAyB,CAAC;AAC5D,OAAO,EAAE,QAAQ,EAAE,MAAM,wBAAwB,CAAC;AAElD;;;;;;;;GAQG;AACH,MAAM,UAAU,iBAAiB,CAChC,KAA4B,EAC5B,QAAmC,EACnC,eAAwC,EAAE;IAE1C,IAAI,CAAC,QAAQ,EAAE,CAAC;QACf,OAAO;IACR,CAAC;IAED,wDAAwD;IACxD,KAAK,MAAM,MAAM,IAAI,QAAQ,EAAE,CAAC;QAC/B,KAAK,MAAM,MAAM,IAAI,QAAQ,CAAC,MAAM,CAAC,EAAE,CAAC;YACvC,IAAI,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC;gBAC7C,KAAK,MAAM,YAAY,IAAI,QAAQ,CAAC,MAAM,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC;oBACrD,KAAK,CAAC,aAAa,CAClB,YAAY,CAAC,UAAU,EACvB,YAAY,CAAC,UAAU,EACvB;wBACC,SAAS,EAAE,YAAY,CAAC,SAAS;qBACjC,CACD,CAAC;gBACH,CAAC;YACF,CAAC;QACF,CAAC;IACF,CAAC;IAED,oDAAoD;IACpD,MAAM,WAAW,GAAG,IAAI,GAAG,CAAC,MAAM,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,CAAC;IAEtD,KAAK,CAAC,EAAE,CAAC,QAAQ,EAAE,CAAC,CAAC,EAAE,EAAE;QACxB,MAAM,YAAY,GAAG,WAAW,CAAC,GAAG,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;QACpD,MAAM,SAAS,GAAG,CAAC,CAAC,MAAM,CAAC,SAAS,CAAC;QAErC,+DAA+D;QAC/D,IAAI,CAAC,YAAY,EAAE,CAAC;YACnB,OAAO;QACR,CAAC;QAED,KAAK,MAAM,YAAY,IAAI,YAAY,EAAE,CAAC;YACzC,IAAI,CAAC;gBACJ,iDAAiD;gBACjD,IAAI,gBAAgB,CAAC,KAAK,EAAE,YAAY,CAAC;oBAAE,SAAS;gBAEpD,gEAAgE;gBAChE,MAAM,iBAAiB,GAAG,WAAW,CAAC,KAAK,EAAE;oBAC5C,WAAW,EAAE,YAAY,CAAC,YAAY,CAAC;oBACvC,SAAS,EAAE,SAAS;oBACpB,UAAU,EAAE,CAAC,CAAC,MAAM,CAAC,KAAK,KAAK,UAAU;iBACzC,CAAC,CAAC;gBAEH,yEAAyE;gBACzE,IAAI,KAAK,CAAC,OAAO,CAAC,iBAAiB,CAAC,EAAE,CAAC;oBACtC,oCAAoC,CACnC,KAAK,EACL,YAAY,EACZ,YAAY,EACZ,iBAAiB,CACjB,CAAC;oBACF,SAAS;gBACV,CAAC;gBAED,oCAAoC;gBACpC,IAAI,iBAAiB;oBACpB,aAAa,CAAC,KAAK,EAAE,YAAY,EAAE,YAAY,EAAE,SAAS,CAAC,CAAC;YAC9D,CAAC;YAAC,OAAO,CAAC,EAAE,CAAC;gBACZ,oDAAoD;gBACpD,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;YAClB,CAAC;QACF,CAAC;IACF,CAAC,CAAC,CAAC;AACJ,CAAC;AAED;;;;;;GAMG;AACH,SAAS,gBAAgB,CACxB,KAA4B,EAC5B,YAAoB;IAEpB,MAAM,KAAK,GAAG,KAAK,CAAC,GAAG,CAAC,YAAY,CAAC,CAAC;IACtC,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC;QAAE,OAAO,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,KAAK,IAAI,CAAC,CAAC;IAChE,OAAO,KAAK,KAAK,IAAI,CAAC;AACvB,CAAC;AAED;;;;;;;;;;;;;GAaG;AACH,SAAS,WAAW,CACnB,KAA4B,EAC5B,EACC,WAAW,EACX,SAAS,EACT,UAAU,GAWV;IAED,4DAA4D;IAC5D,IAAI,OAAO,WAAW,KAAK,QAAQ,EAAE,CAAC;QACrC,OAAO,CAAC,QAAQ,CACf,KAAK,CAAC,GAAG,CAAC,WAAW,EAAE;YACtB,SAAS;SACT,CAAC,CACF,CAAC;IACH,CAAC;IAED,2GAA2G;IAC3G,IAAI,UAAU,EAAE,CAAC;QAChB,uFAAuF;QACvF,WAAW,GAAG,WAAW,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC;IACnE,CAAC;IAED,sGAAsG;IACtG,IAAI,YAAY,CAAC,WAAW,CAAC,IAAI,CAAC,SAAS,EAAE,CAAC;QAC7C,MAAM,iBAAiB,GAAG,KAAK,CAAC,GAAG,CAClC,WAAW,CAAC,CAAC,CAAC,CAAC,SAAmB,CAChB,CAAC;QAEpB,MAAM,gBAAgB,GAAG,IAAI,KAAK,CAAC,iBAAiB,CAAC,MAAM,CAAC,CAAC,IAAI,CAChE,KAAK,CACa,CAAC;QAEpB,KAAK,MAAM,CAAC,cAAc,CAAC,IAAI,gBAAgB,CAAC,OAAO,EAAE,EAAE,CAAC;YAC3D,gBAAgB,CAAC,cAAc,CAAC,GAAG,WAAW,CAAC,KAAK,EAAE;gBACrD,WAAW;gBACX,SAAS,EAAE,CAAC,cAAc,CAAC;gBAC3B,UAAU;aACV,CAAY,CAAC;QACf,CAAC;QACD,OAAO,gBAAgB,CAAC;IACzB,CAAC;SAAM,CAAC;QACP,0EAA0E;QAC1E,KAAK,MAAM,UAAU,IAAI,WAAW,EAAE,CAAC;YACtC,IACC,CAAC,KAAK,CAAC,GAAG,CAAC,UAAU,CAAC,UAAU,EAAE;gBACjC,SAAS;aACT,CAAC;gBAEF,OAAO,IAAI,CAAC;QACd,CAAC;QAED,8CAA8C;QAC9C,OAAO,KAAK,CAAC;IACd,CAAC;AACF,CAAC;AAED;;;;GAIG;AACH,SAAS,mBAAmB,CAAC,KAAc,EAAE,SAAoB;IAChE,IAAI,CAAC,SAAS,IAAI,SAAS,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAC1C,OAAO,KAAK,aAAL,KAAK,cAAL,KAAK,GAAI,IAAI,CAAC;IACtB,CAAC;IACD,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC;QAC3B,OAAO,IAAI,CAAC;IACb,CAAC;IACD,OAAO,mBAAmB,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,EAAE,SAAS,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;AACrE,CAAC;AAED;;;;;;;GAOG;AACH,SAAS,YAAY,CACpB,WAIG;IAEH,OAAO,WAAW,CAAC,KAAK,CACvB,CAAC,UAAU,EAAE,EAAE,CACd,UAAU,CAAC,SAAS,KAAK,IAAI,IAAI,UAAU,CAAC,SAAS,KAAK,SAAS,CACpE,CAAC;AACH,CAAC;AAED;;;;;;;GAOG;AACH,SAAS,oCAAoC,CAC5C,KAA4B,EAC5B,YAAqC,EACrC,YAAoB,EACpB,WAAsB;IAEtB,KAAK,MAAM,CAAC,SAAS,EAAE,sBAAsB,CAAC,IAAI,WAAW,CAAC,OAAO,EAAE,EAAE,CAAC;QACzE,IAAI,sBAAsB;YACzB,aAAa,CAAC,KAAK,EAAE,YAAY,EAAE,YAAY,EAAE,CAAC,SAAS,CAAC,CAAC,CAAC;IAChE,CAAC;AACF,CAAC;AAED;;;;;;GAMG;AACH,SAAS,aAAa,CACrB,KAA4B,EAC5B,YAAqC,EACrC,YAAoB,EACpB,SAAqC;IAErC,qEAAqE;IACrE,MAAM,aAAa,GAAG,KAAK,CAAC,YAAY,CAAC,YAAY,CAAC,CAAC,CAAC;IACxD,MAAM,iBAAiB,GACtB,aAAa,KAAK,CAAC;QAClB,CAAC,CAAC,SAAS;QACX,CAAC,CAAC,SAAS,aAAT,SAAS,uBAAT,SAAS,CAAE,KAAK,CAAC,CAAC,EAAE,KAAK,CAAC,YAAY,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC;IAE3D,IAAI,aAAa,CAAC,KAAK,EAAE,YAAY,EAAE,iBAAiB,CAAC,EAAE,CAAC;QAC3D,OAAO;IACR,CAAC;IACD,KAAK,CAAC,GAAG,CACR,YAAY,EACZ,mBAAmB,CAAC,YAAY,CAAC,YAAY,CAAC,EAAE,iBAAiB,CAAC,EAClE;QACC,SAAS,EAAE,iBAAiB;QAC5B,KAAK,EAAE,UAAU;KACjB,CACD,CAAC;AACH,CAAC;AAED;;;;;;;GAOG;AACH,SAAS,aAAa,CACrB,KAA4B,EAC5B,YAAoB,EACpB,SAA0B;IAE1B,4DAA4D;IAC5D,IAAI,CAAC,SAAS,IAAI,SAAS,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAC1C,OAAO,KAAK,CAAC;IACd,CAAC;IACD,MAAM,aAAa,GAAG,KAAK,CAAC,GAAG,CAAC,YAAY,CAAC,CAAC;IAE9C,8CAA8C;IAC9C,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,aAAa,CAAC,EAAE,CAAC;QACnC,OAAO,KAAK,CAAC;IACd,CAAC;IACD,MAAM,aAAa,GAAG,KAAK,CAAC,aAAa,CAAC,CAAC;IAC3C,IAAI,aAAa,KAAK,CAAC,EAAE,CAAC;QACzB,OAAO,KAAK,CAAC;IACd,CAAC;IAED,0DAA0D;IAC1D,KAAK,CAAC,GAAG,CACR,YAAY,EACZ,aAAa,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,CAAC,EAAE,EAAE;QAC9B,kFAAkF;QAClF,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC;YAC3B,OAAO,KAAK,CAAC;QACd,CAAC;QACD,yDAAyD;QACzD,IAAI,CAAC,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC;YACxB,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACzB,CAAC;QACD,uEAAuE;QACvE,OAAO,UAAU,CAAC,KAAK,EAAE,SAAS,EAAE,IAAI,CAAC,CAAC;IAC3C,CAAC,CAAC,CACF,CAAC;IACF,OAAO,IAAI,CAAC;AACb,CAAC"}
@@ -22,7 +22,8 @@ export function getQuestionnaireData(store, variables, withCalculated = false, v
22
22
  }
23
23
  for (const variable of variables) {
24
24
  // Skip calculated value if necessary
25
- if (variable.variableType === 'CALCULATED' && !withCalculated) {
25
+ if (variable.variableType === 'CALCULATED' &&
26
+ (variable.isIgnoredByLunatic || !withCalculated)) {
26
27
  continue;
27
28
  }
28
29
  if (variable.variableType === 'COLLECTED') {
@@ -1 +1 @@
1
- {"version":3,"file":"get-questionnaire-data.js","sourceRoot":"","sources":["../../../../src/use-lunatic/commons/variables/get-questionnaire-data.ts"],"names":[],"mappings":"AAGA,MAAM,UAAU,oBAAoB,CACnC,KAA4B,EAC5B,SAAqC,EACrC,iBAA0B,KAAK,EAC/B,aAAwB;IAExB,KAAK,CAAC,MAAM,EAAE,CAAC;IACf,MAAM,MAAM,GAAG;QACd,QAAQ,EAAE,EAA6B;QACvC,UAAU,EAAE,EAA6B;QACzC,SAAS,EAAE,EAKV;KACD,CAAC;IAEF,IAAI,CAAC,SAAS,EAAE,CAAC;QAChB,OAAO,MAAM,CAAC;IACf,CAAC;IAED,kCAAkC;IAClC,IAAI,aAAa,EAAE,CAAC;QACnB,OAAO;YACN,GAAG,MAAM;YACT,SAAS,EAAE,MAAM,CAAC,WAAW,CAC5B,aAAa,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC;gBAC3B,IAAI;gBACJ;oBACC,SAAS,EAAE,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC;iBAC1B;aACD,CAAC,CACF;SACD,CAAC;IACH,CAAC;IAED,KAAK,MAAM,QAAQ,IAAI,SAAS,EAAE,CAAC;QAClC,qCAAqC;QACrC,IAAI,QAAQ,CAAC,YAAY,KAAK,YAAY,IAAI,CAAC,cAAc,EAAE,CAAC;YAC/D,SAAS;QACV,CAAC;QAED,IAAI,QAAQ,CAAC,YAAY,KAAK,WAAW,EAAE,CAAC;YAC3C,MAAM,CAAC,SAAS,CAAC,QAAQ,CAAC,IAAI,CAAC,GAAG;gBACjC,GAAG,QAAQ,CAAC,MAAM;gBAClB,SAAS,EAAE,KAAK,CAAC,GAAG,CAAC,QAAQ,CAAC,IAAI,CAAC;aACnC,CAAC;QACH,CAAC;aAAM,CAAC;YACP,IAAI,CAAC;gBACJ,MAAM,CAAC,QAAQ,CAAC,YAAY,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC,GAAG,KAAK,CAAC,GAAG,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;YACzE,CAAC;YAAC,WAAM,CAAC;gBACR,sFAAsF;gBACtF,MAAM,CAAC,QAAQ,CAAC,YAAY,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC;YACrD,CAAC;QACF,CAAC;IACF,CAAC;IACD,OAAO,MAAM,CAAC;AACf,CAAC"}
1
+ {"version":3,"file":"get-questionnaire-data.js","sourceRoot":"","sources":["../../../../src/use-lunatic/commons/variables/get-questionnaire-data.ts"],"names":[],"mappings":"AAGA,MAAM,UAAU,oBAAoB,CACnC,KAA4B,EAC5B,SAAqC,EACrC,iBAA0B,KAAK,EAC/B,aAAwB;IAExB,KAAK,CAAC,MAAM,EAAE,CAAC;IACf,MAAM,MAAM,GAAG;QACd,QAAQ,EAAE,EAA6B;QACvC,UAAU,EAAE,EAA6B;QACzC,SAAS,EAAE,EAKV;KACD,CAAC;IAEF,IAAI,CAAC,SAAS,EAAE,CAAC;QAChB,OAAO,MAAM,CAAC;IACf,CAAC;IAED,kCAAkC;IAClC,IAAI,aAAa,EAAE,CAAC;QACnB,OAAO;YACN,GAAG,MAAM;YACT,SAAS,EAAE,MAAM,CAAC,WAAW,CAC5B,aAAa,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC;gBAC3B,IAAI;gBACJ;oBACC,SAAS,EAAE,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC;iBAC1B;aACD,CAAC,CACF;SACD,CAAC;IACH,CAAC;IAED,KAAK,MAAM,QAAQ,IAAI,SAAS,EAAE,CAAC;QAClC,qCAAqC;QACrC,IACC,QAAQ,CAAC,YAAY,KAAK,YAAY;YACtC,CAAC,QAAQ,CAAC,kBAAkB,IAAI,CAAC,cAAc,CAAC,EAC/C,CAAC;YACF,SAAS;QACV,CAAC;QAED,IAAI,QAAQ,CAAC,YAAY,KAAK,WAAW,EAAE,CAAC;YAC3C,MAAM,CAAC,SAAS,CAAC,QAAQ,CAAC,IAAI,CAAC,GAAG;gBACjC,GAAG,QAAQ,CAAC,MAAM;gBAClB,SAAS,EAAE,KAAK,CAAC,GAAG,CAAC,QAAQ,CAAC,IAAI,CAAC;aACnC,CAAC;QACH,CAAC;aAAM,CAAC;YACP,IAAI,CAAC;gBACJ,MAAM,CAAC,QAAQ,CAAC,YAAY,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC,GAAG,KAAK,CAAC,GAAG,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;YACzE,CAAC;YAAC,WAAM,CAAC;gBACR,sFAAsF;gBACtF,MAAM,CAAC,QAAQ,CAAC,YAAY,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC;YACrD,CAAC;QACF,CAAC;IACF,CAAC;IACD,OAAO,MAAM,CAAC;AACf,CAAC"}