@inseefr/lunatic 2.3.1 → 2.4.1

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 (1039) hide show
  1. package/LICENSE +21 -21
  2. package/README.md +169 -22
  3. package/lib/components/button/__snapshots__/lunatic-button.spec.jsx.snap +80 -0
  4. package/lib/components/button/button.scss +24 -0
  5. package/lib/components/button/index.js +13 -0
  6. package/lib/components/button/lunatic-button.js +56 -0
  7. package/lib/components/button/lunatic-button.spec.js +87 -0
  8. package/lib/components/checkbox/checkbox-boolean/html/checkbox-boolean.js +55 -0
  9. package/lib/components/checkbox/checkbox-boolean/html/checkbox-boolean.spec.js +57 -0
  10. package/lib/components/checkbox/checkbox-boolean/index.js +13 -0
  11. package/lib/components/checkbox/checkbox-boolean/lunatic-checkbox-boolean.js +58 -0
  12. package/lib/components/checkbox/checkbox-group/checkbox-group-content.js +41 -0
  13. package/lib/components/checkbox/checkbox-group/html/checkbox-group-content.js +51 -0
  14. package/lib/components/checkbox/checkbox-group/html/checkbox-group-content.spec.js +44 -0
  15. package/lib/components/checkbox/checkbox-group/html/checkbox-group.js +52 -0
  16. package/lib/components/checkbox/checkbox-group/html/checkbox-group.scss +12 -0
  17. package/lib/components/checkbox/checkbox-group/index.js +13 -0
  18. package/lib/components/checkbox/checkbox-group/lunatic-checkbox-group.js +64 -0
  19. package/lib/components/checkbox/checkbox-one/html/checkbox-one.js +54 -0
  20. package/lib/components/checkbox/checkbox-one/html/checkbox-one.scss +19 -0
  21. package/lib/components/checkbox/checkbox-one/html/checkbox-one.spec.js +51 -0
  22. package/lib/components/checkbox/checkbox-one/index.js +13 -0
  23. package/lib/components/checkbox/checkbox-one/lunatic-checkbox-one.js +58 -0
  24. package/lib/components/checkbox/commons/checkbox-option.js +89 -0
  25. package/lib/components/checkbox/commons/checkbox-option.scss +19 -0
  26. package/lib/components/checkbox/commons/checkbox-option.spec.js +71 -0
  27. package/lib/components/checkbox/commons/getShortcutKey.js +11 -0
  28. package/lib/components/checkbox/commons/index.js +13 -0
  29. package/lib/components/checkbox/index.js +27 -0
  30. package/lib/components/commons/build-style-object.js +25 -0
  31. package/lib/components/commons/components/combo-box/combo-box-container.js +33 -0
  32. package/lib/components/commons/components/combo-box/combo-box-container.spec.js +45 -0
  33. package/lib/components/commons/components/combo-box/combo-box-content.js +63 -0
  34. package/lib/components/commons/components/combo-box/combo-box.js +199 -0
  35. package/lib/components/commons/components/combo-box/combo-box.scss +206 -0
  36. package/lib/components/commons/components/combo-box/index.js +13 -0
  37. package/lib/components/commons/components/combo-box/panel/index.js +13 -0
  38. package/lib/components/commons/components/combo-box/panel/option-container.js +61 -0
  39. package/lib/components/commons/components/combo-box/panel/option-container.spec.js +27 -0
  40. package/lib/components/commons/components/combo-box/panel/panel-container.js +28 -0
  41. package/lib/components/commons/components/combo-box/panel/panel-container.spec.js +59 -0
  42. package/lib/components/commons/components/combo-box/panel/panel.js +63 -0
  43. package/lib/components/commons/components/combo-box/panel/panel.spec.js +93 -0
  44. package/lib/components/commons/components/combo-box/selection/__snapshots__/selection.spec.jsx.snap +81 -0
  45. package/lib/components/commons/components/combo-box/selection/delete.js +55 -0
  46. package/lib/components/commons/components/combo-box/selection/delete.spec.js +88 -0
  47. package/lib/components/commons/components/combo-box/selection/displayLabelOrInput.js +29 -0
  48. package/lib/components/commons/components/combo-box/selection/displayLabelOrInput.spec.js +57 -0
  49. package/lib/components/commons/components/combo-box/selection/index.js +13 -0
  50. package/lib/components/commons/components/combo-box/selection/input.js +56 -0
  51. package/lib/components/commons/components/combo-box/selection/label-selection.js +32 -0
  52. package/lib/components/commons/components/combo-box/selection/label-selection.spec.js +45 -0
  53. package/lib/components/commons/components/combo-box/selection/selection-container.js +39 -0
  54. package/lib/components/commons/components/combo-box/selection/selection-container.spec.js +53 -0
  55. package/lib/components/commons/components/combo-box/selection/selection.js +60 -0
  56. package/lib/components/commons/components/combo-box/selection/selection.spec.js +104 -0
  57. package/lib/components/commons/components/combo-box/state-management/actions.js +82 -0
  58. package/lib/components/commons/components/combo-box/state-management/combo-box-context.js +16 -0
  59. package/lib/components/commons/components/combo-box/state-management/index.js +33 -0
  60. package/lib/components/commons/components/combo-box/state-management/initial-state.js +14 -0
  61. package/lib/components/commons/components/combo-box/state-management/reducer/index.js +13 -0
  62. package/lib/components/commons/components/combo-box/state-management/reducer/reduce-on-blur.js +20 -0
  63. package/lib/components/commons/components/combo-box/state-management/reducer/reduce-on-change.js +22 -0
  64. package/lib/components/commons/components/combo-box/state-management/reducer/reduce-on-delete.js +21 -0
  65. package/lib/components/commons/components/combo-box/state-management/reducer/reduce-on-focus.js +20 -0
  66. package/lib/components/commons/components/combo-box/state-management/reducer/reduce-on-init.js +38 -0
  67. package/lib/components/commons/components/combo-box/state-management/reducer/reduce-on-keydown/index.js +13 -0
  68. package/lib/components/commons/components/combo-box/state-management/reducer/reduce-on-keydown/keyboard-key-codes.js +18 -0
  69. package/lib/components/commons/components/combo-box/state-management/reducer/reduce-on-keydown/on-arrow-down.js +32 -0
  70. package/lib/components/commons/components/combo-box/state-management/reducer/reduce-on-keydown/on-arrow-up.js +32 -0
  71. package/lib/components/commons/components/combo-box/state-management/reducer/reduce-on-keydown/on-end.js +25 -0
  72. package/lib/components/commons/components/combo-box/state-management/reducer/reduce-on-keydown/on-enter.js +21 -0
  73. package/lib/components/commons/components/combo-box/state-management/reducer/reduce-on-keydown/on-escape.js +20 -0
  74. package/lib/components/commons/components/combo-box/state-management/reducer/reduce-on-keydown/on-home.js +25 -0
  75. package/lib/components/commons/components/combo-box/state-management/reducer/reduce-on-keydown/on-tab.js +20 -0
  76. package/lib/components/commons/components/combo-box/state-management/reducer/reduce-on-keydown/reduce-on-keydown.js +40 -0
  77. package/lib/components/commons/components/combo-box/state-management/reducer/reduce-on-select.js +22 -0
  78. package/lib/components/commons/components/combo-box/state-management/reducer/reducer.js +41 -0
  79. package/lib/components/commons/components/default-label-renderer.js +47 -0
  80. package/lib/components/commons/components/default-label-renderer.spec.js +43 -0
  81. package/lib/components/commons/components/default-option-renderer.js +44 -0
  82. package/lib/components/commons/components/default-option-renderer.spec.js +65 -0
  83. package/lib/components/commons/components/description.js +52 -0
  84. package/lib/components/commons/components/description.spec.js +45 -0
  85. package/lib/components/commons/components/dragger/dragger.js +95 -0
  86. package/lib/components/commons/components/dragger/dragger.scss +8 -0
  87. package/lib/components/commons/components/dragger/dragger.spec.js +80 -0
  88. package/lib/components/commons/components/dragger/index.js +13 -0
  89. package/lib/components/commons/components/errors/errors.js +53 -0
  90. package/lib/components/commons/components/errors/errors.scss +5 -0
  91. package/lib/components/commons/components/errors/errors.spec.js +40 -0
  92. package/lib/components/commons/components/errors/index.js +13 -0
  93. package/lib/components/commons/components/fab/fab.js +50 -0
  94. package/lib/components/commons/components/fab/fab.scss +32 -0
  95. package/lib/components/commons/components/fab/fab.spec.js +76 -0
  96. package/lib/components/commons/components/fab/index.js +13 -0
  97. package/lib/components/commons/components/field-container/field-container.js +41 -0
  98. package/lib/components/commons/components/field-container/filed-container.spec.js +37 -0
  99. package/lib/components/commons/components/field-container/index.js +13 -0
  100. package/lib/components/commons/components/fieldset.js +30 -0
  101. package/lib/components/commons/components/fieldset.scss +5 -0
  102. package/lib/components/commons/components/fieldset.spec.js +51 -0
  103. package/lib/components/commons/components/html-table/index.js +48 -0
  104. package/lib/components/commons/components/html-table/table.js +32 -0
  105. package/lib/components/commons/components/html-table/table.scss +27 -0
  106. package/lib/components/commons/components/html-table/table.spec.js +25 -0
  107. package/lib/components/commons/components/html-table/tbody.js +32 -0
  108. package/lib/components/commons/components/html-table/tbody.spec.js +34 -0
  109. package/lib/components/commons/components/html-table/td.js +43 -0
  110. package/lib/components/commons/components/html-table/td.spec.js +43 -0
  111. package/lib/components/commons/components/html-table/th.js +41 -0
  112. package/lib/components/commons/components/html-table/th.spec.js +46 -0
  113. package/lib/components/commons/components/html-table/thead.js +31 -0
  114. package/lib/components/commons/components/html-table/thead.spec.js +30 -0
  115. package/lib/components/commons/components/html-table/tr.js +33 -0
  116. package/lib/components/commons/components/html-table/tr.spec.js +45 -0
  117. package/lib/components/commons/components/is-network/index.js +13 -0
  118. package/lib/components/commons/components/is-network/is-network.js +53 -0
  119. package/lib/components/commons/components/is-network/is-network.spec.js +34 -0
  120. package/lib/components/commons/components/is-network/use-online-status.js +46 -0
  121. package/lib/components/commons/components/is-network/use-online-status.spec.js +45 -0
  122. package/lib/components/commons/components/label/index.js +13 -0
  123. package/lib/components/commons/components/label/label.js +35 -0
  124. package/lib/components/commons/components/label/label.scss +6 -0
  125. package/lib/components/commons/components/label/label.spec.js +78 -0
  126. package/lib/components/commons/components/lunatic-component-with-label.js +88 -0
  127. package/lib/components/commons/components/lunatic-component-without-label.js +87 -0
  128. package/lib/components/commons/components/md-label/index.js +13 -0
  129. package/lib/components/commons/components/md-label/link.js +54 -0
  130. package/lib/components/commons/components/md-label/md-label.js +45 -0
  131. package/lib/components/commons/components/missing/index.js +13 -0
  132. package/lib/components/commons/components/missing/missing.js +87 -0
  133. package/lib/components/commons/components/missing/missing.scss +30 -0
  134. package/lib/components/commons/components/missing/missing.spec.js +81 -0
  135. package/lib/components/commons/components/nothing-to-display.js +16 -0
  136. package/lib/components/commons/components/nothing-to-display.spec.js +16 -0
  137. package/lib/components/commons/components/orchestrated-component.js +62 -0
  138. package/lib/components/commons/components/variable-status/img/index.js +20 -0
  139. package/lib/components/commons/components/variable-status/index.js +13 -0
  140. package/lib/components/commons/components/variable-status/variable-status.js +85 -0
  141. package/lib/components/commons/components/variable-status/variable-status.scss +39 -0
  142. package/lib/components/commons/components/variable-status/variable-status.spec.js +24 -0
  143. package/lib/components/commons/create-customizable-field.js +29 -0
  144. package/lib/components/commons/create-row-orchestrator.js +51 -0
  145. package/lib/components/commons/icons/checkbox-checked.icon.js +39 -0
  146. package/lib/components/commons/icons/checkbox-unchecked.icon.js +39 -0
  147. package/lib/components/commons/icons/closed.icon.js +36 -0
  148. package/lib/components/commons/icons/cross.icon.js +36 -0
  149. package/lib/components/commons/icons/index.js +76 -0
  150. package/lib/components/commons/icons/load.icon.js +36 -0
  151. package/lib/components/commons/icons/lunatic-icon.js +21 -0
  152. package/lib/components/commons/icons/lunatic-icon.scss +3 -0
  153. package/lib/components/commons/icons/network.icon.js +36 -0
  154. package/lib/components/commons/icons/on-drag.icon.js +36 -0
  155. package/lib/components/commons/icons/opened.icon.js +36 -0
  156. package/lib/components/commons/icons/radio-checked.icon.js +39 -0
  157. package/lib/components/commons/icons/radio-unchecked.icon.js +39 -0
  158. package/lib/components/commons/index.js +131 -0
  159. package/lib/components/commons/prop-types/declarations.js +19 -0
  160. package/lib/components/commons/prop-types/index.js +41 -0
  161. package/lib/components/commons/prop-types/lines.js +13 -0
  162. package/lib/components/commons/prop-types/options.js +13 -0
  163. package/lib/components/commons/prop-types/response.js +13 -0
  164. package/lib/components/commons/prop-types/value-type.js +14 -0
  165. package/lib/components/commons/safety-label.js +26 -0
  166. package/lib/components/commons/use-document-add-event-listener.js +84 -0
  167. package/lib/components/commons/use-on-handle-change.js +19 -0
  168. package/lib/components/commons/use-on-handle-change.spec.js +46 -0
  169. package/lib/components/commons/use-options-keydown.js +24 -0
  170. package/lib/components/commons/use-previous.js +16 -0
  171. package/lib/components/components.js +171 -0
  172. package/lib/components/datepicker/html/datepicker-container.js +18 -0
  173. package/lib/components/datepicker/html/datepicker-input.js +37 -0
  174. package/lib/components/datepicker/html/datepicker.js +69 -0
  175. package/lib/components/datepicker/html/datepicker.scss +1 -0
  176. package/lib/components/datepicker/index.js +13 -0
  177. package/lib/components/datepicker/lunatic-datepicker.js +61 -0
  178. package/lib/components/declarations/declaration.js +22 -0
  179. package/lib/components/declarations/declaration.spec.js +30 -0
  180. package/lib/components/declarations/declarations-after-text.js +25 -0
  181. package/lib/components/declarations/declarations-before-text.js +25 -0
  182. package/lib/components/declarations/declarations-detachable.js +25 -0
  183. package/lib/components/declarations/declarations.js +50 -0
  184. package/lib/components/declarations/declarations.scss +36 -0
  185. package/lib/components/declarations/declarations.spec.js +79 -0
  186. package/lib/components/declarations/index.js +43 -0
  187. package/lib/components/dropdown/html/dropdown-simple/dropdown-simple.js +39 -0
  188. package/lib/components/dropdown/html/dropdown-simple/index.js +13 -0
  189. package/lib/components/dropdown/html/dropdown-simple/simple-label-renderer.js +46 -0
  190. package/lib/components/dropdown/html/dropdown-simple/simple-option-renderer.js +45 -0
  191. package/lib/components/dropdown/html/dropdown-writable/dropdown-writable.js +62 -0
  192. package/lib/components/dropdown/html/dropdown-writable/filter-tools/filter-options.js +37 -0
  193. package/lib/components/dropdown/html/dropdown-writable/filter-tools/get-label.js +24 -0
  194. package/lib/components/dropdown/html/dropdown-writable/filter-tools/letters-matching.js +29 -0
  195. package/lib/components/dropdown/html/dropdown-writable/filter-tools/match.js +22 -0
  196. package/lib/components/dropdown/html/dropdown-writable/filter-tools/prepare-prefix.js +13 -0
  197. package/lib/components/dropdown/html/dropdown-writable/index.js +13 -0
  198. package/lib/components/dropdown/html/dropdown-writable/writable-label-renderer.js +52 -0
  199. package/lib/components/dropdown/html/dropdown-writable/writable-option-renderer.js +146 -0
  200. package/lib/components/dropdown/html/dropdown.js +51 -0
  201. package/lib/components/dropdown/html/dropdown.scss +41 -0
  202. package/lib/components/dropdown/index.js +13 -0
  203. package/lib/components/dropdown/lunatic-dropdown.js +75 -0
  204. package/lib/components/filter-description/component.js +22 -0
  205. package/lib/components/filter-description/component.spec.js +23 -0
  206. package/lib/components/filter-description/index.js +13 -0
  207. package/lib/components/index.js +28 -0
  208. package/lib/components/index.scss +136 -0
  209. package/lib/components/input/html/input.js +79 -0
  210. package/lib/components/input/html/input.scss +42 -0
  211. package/lib/components/input/index.js +13 -0
  212. package/lib/components/input/lunatic-input.js +57 -0
  213. package/lib/components/input-number/html/__snapshots__/inpute-number.spec.jsx.snap +92 -0
  214. package/lib/components/input-number/html/input-number-default.js +78 -0
  215. package/lib/components/input-number/html/input-number-thousand.js +54 -0
  216. package/lib/components/input-number/html/input-number.js +102 -0
  217. package/lib/components/input-number/html/input-number.scss +11 -0
  218. package/lib/components/input-number/html/inpute-number.spec.js +110 -0
  219. package/lib/components/input-number/index.js +13 -0
  220. package/lib/components/input-number/lunatic-input-number.js +64 -0
  221. package/lib/components/loop/block-for-loop/block-for-loop-ochestrator.js +12 -0
  222. package/lib/components/loop/block-for-loop/block-for-loop.js +140 -0
  223. package/lib/components/loop/block-for-loop/index.js +13 -0
  224. package/lib/components/loop/block-for-loop/row.js +66 -0
  225. package/lib/components/loop/commons/get-init-length.js +16 -0
  226. package/lib/components/loop/commons/handle-row-button.js +22 -0
  227. package/lib/components/loop/commons/index.js +20 -0
  228. package/lib/components/loop/commons/row-component.js +70 -0
  229. package/lib/components/loop/index.js +13 -0
  230. package/lib/components/loop/loop.js +82 -0
  231. package/lib/components/loop/roster-for-loop/body.js +56 -0
  232. package/lib/components/loop/roster-for-loop/header.js +34 -0
  233. package/lib/components/loop/roster-for-loop/index.js +13 -0
  234. package/lib/components/loop/roster-for-loop/roster-for-loop-orchestrator.js +12 -0
  235. package/lib/components/loop/roster-for-loop/roster-for-loop.js +124 -0
  236. package/lib/components/loop/roster-for-loop/roster-table.js +48 -0
  237. package/lib/components/loop/roster-for-loop/roster.scss +42 -0
  238. package/lib/components/loop/roster-for-loop/row.js +73 -0
  239. package/lib/components/modal-controls/close-or-skip.js +41 -0
  240. package/lib/components/modal-controls/close-or-skip.spec.js +52 -0
  241. package/lib/components/modal-controls/index.js +13 -0
  242. package/lib/components/modal-controls/modal-container.js +22 -0
  243. package/lib/components/modal-controls/modal-container.spec.js +24 -0
  244. package/lib/components/modal-controls/modal-controls.js +78 -0
  245. package/lib/components/modal-controls/modal-controls.scss +48 -0
  246. package/lib/components/modal-controls/modal-controls.spec.js +77 -0
  247. package/lib/components/pairwise-links/index.js +13 -0
  248. package/lib/components/pairwise-links/orchestrator.js +70 -0
  249. package/lib/components/pairwise-links/pairwise-links.js +65 -0
  250. package/lib/components/pairwise-links/row.js +78 -0
  251. package/lib/components/radio/html/dist/radio-group.css +12 -0
  252. package/lib/components/radio/html/radio-group-content.js +45 -0
  253. package/lib/components/radio/html/radio-group-content.spec.js +86 -0
  254. package/lib/components/radio/html/radio-group.js +67 -0
  255. package/lib/components/radio/html/radio-group.scss +21 -0
  256. package/lib/components/radio/html/radio-option.js +105 -0
  257. package/lib/components/radio/html/radio-option.spec.js +80 -0
  258. package/lib/components/radio/index.js +13 -0
  259. package/lib/components/radio/lunatic-radio-group.js +64 -0
  260. package/lib/components/radio/radio-group.js +48 -0
  261. package/lib/components/radio/radio.scss +19 -0
  262. package/lib/components/roundabout/components/roundabout-container.js +20 -0
  263. package/lib/components/roundabout/components/roundabout-container.spec.js +23 -0
  264. package/lib/components/roundabout/components/roundabout-it-button.js +80 -0
  265. package/lib/components/roundabout/components/roundabout-it-button.spec.js +102 -0
  266. package/lib/components/roundabout/components/roundabout-it-container.js +19 -0
  267. package/lib/components/roundabout/components/roundabout-it-container.spec.js +23 -0
  268. package/lib/components/roundabout/components/roundabout-it-title.js +19 -0
  269. package/lib/components/roundabout/components/roundabout-it-title.spec.js +18 -0
  270. package/lib/components/roundabout/components/roundabout-label.js +19 -0
  271. package/lib/components/roundabout/components/roundabout-label.spec.js +18 -0
  272. package/lib/components/roundabout/components/roundabout-pending.js +18 -0
  273. package/lib/components/roundabout/components/roundabout-pending.spec.js +15 -0
  274. package/lib/components/roundabout/components/roundabout.scss +16 -0
  275. package/lib/components/roundabout/index.js +13 -0
  276. package/lib/components/roundabout/lunatic-roundabout.js +62 -0
  277. package/lib/components/roundabout/redirect.js +23 -0
  278. package/lib/components/roundabout/redirect.spec.js +19 -0
  279. package/lib/components/roundabout/roundabout.js +89 -0
  280. package/lib/components/roundabout/roundabout.spec.js +71 -0
  281. package/lib/components/sequence/index.js +13 -0
  282. package/lib/components/sequence/sequence.js +37 -0
  283. package/lib/components/sequence/sequence.scss +10 -0
  284. package/lib/components/sequence/sequence.spec.js +79 -0
  285. package/lib/components/subsequence/index.js +13 -0
  286. package/lib/components/subsequence/subsequence.js +35 -0
  287. package/lib/components/subsequence/subsequence.spec.js +79 -0
  288. package/lib/components/suggester/find-best-label/find-best-label.js +55 -0
  289. package/lib/components/suggester/find-best-label/index.js +13 -0
  290. package/lib/components/suggester/html/alert-icon.svg +2 -0
  291. package/lib/components/suggester/html/default-style.scss +175 -0
  292. package/lib/components/suggester/html/notification.js +31 -0
  293. package/lib/components/suggester/html/suggester.js +142 -0
  294. package/lib/components/suggester/html/wait-icon.svg +17 -0
  295. package/lib/components/suggester/html/warn-icon.svg +1 -0
  296. package/lib/components/suggester/idb-suggester/check-store.js +107 -0
  297. package/lib/components/suggester/idb-suggester/dist/index.dev.js +12 -0
  298. package/lib/components/suggester/idb-suggester/idb-suggester.js +90 -0
  299. package/lib/components/suggester/idb-suggester/index.js +12 -0
  300. package/lib/components/suggester/idb-suggester/suggester-notification.js +61 -0
  301. package/lib/components/suggester/idb-suggester/suggester-status.js +52 -0
  302. package/lib/components/suggester/index.js +13 -0
  303. package/lib/components/suggester/lunatic-suggester.js +106 -0
  304. package/lib/components/suggester/searching/create-searching.js +73 -0
  305. package/lib/components/suggester/searching/index.js +13 -0
  306. package/lib/components/suggester-loader-widget/index.js +13 -0
  307. package/lib/components/suggester-loader-widget/loader-row.js +129 -0
  308. package/lib/components/suggester-loader-widget/loader.js +136 -0
  309. package/lib/components/suggester-loader-widget/progress.js +41 -0
  310. package/lib/components/suggester-loader-widget/tools/action-tool.js +30 -0
  311. package/lib/components/suggester-loader-widget/tools/index.js +20 -0
  312. package/lib/components/suggester-loader-widget/tools/tools.js +18 -0
  313. package/lib/components/suggester-loader-widget/widget-container.js +44 -0
  314. package/lib/components/suggester-loader-widget/widget.js +145 -0
  315. package/lib/components/suggester-loader-widget/widget.scss +176 -0
  316. package/lib/components/switch/html/switch.js +95 -0
  317. package/lib/components/switch/html/switch.scss +47 -0
  318. package/lib/components/switch/index.js +13 -0
  319. package/lib/components/switch/lunatic-switch.js +66 -0
  320. package/lib/components/table/cell.js +102 -0
  321. package/lib/components/table/header.js +40 -0
  322. package/lib/components/table/index.js +13 -0
  323. package/lib/components/table/lunatic-table.js +97 -0
  324. package/lib/components/table/row.js +43 -0
  325. package/lib/components/table/table-orchestrator.js +48 -0
  326. package/lib/components/textarea/html/textarea.js +54 -0
  327. package/lib/components/textarea/html/textarea.scss +8 -0
  328. package/lib/components/textarea/index.js +13 -0
  329. package/lib/components/textarea/lunatic-textarea.js +72 -0
  330. package/lib/components/type.js +5 -0
  331. package/lib/constants/component-types.js +8 -0
  332. package/lib/constants/declarations.js +28 -0
  333. package/lib/constants/event-types.js +29 -0
  334. package/lib/constants/index.js +60 -0
  335. package/lib/constants/supported-preferences.js +13 -0
  336. package/lib/constants/value-types.js +16 -0
  337. package/lib/constants/variable-types.js +12 -0
  338. package/lib/dist/index.dev.js +31 -0
  339. package/lib/i18n/build-dictionary.js +59 -0
  340. package/lib/i18n/dictionary.js +34 -0
  341. package/lib/i18n/index.js +28 -0
  342. package/lib/i18n/inputNumberProps.js +20 -0
  343. package/lib/index.js +28 -33
  344. package/lib/insee.d.js +1 -0
  345. package/lib/src/components/commons/components/md-label/index.d.ts +1 -0
  346. package/lib/src/components/commons/components/md-label/link.d.ts +7 -0
  347. package/lib/src/components/commons/components/md-label/md-label.d.ts +8 -0
  348. package/lib/src/components/type.d.ts +195 -0
  349. package/lib/src/constants/component-types.d.ts +1 -0
  350. package/lib/src/constants/declarations.d.ts +9 -0
  351. package/lib/src/constants/event-types.d.ts +10 -0
  352. package/lib/src/constants/index.d.ts +5 -0
  353. package/lib/src/constants/supported-preferences.d.ts +1 -0
  354. package/lib/src/constants/value-types.d.ts +5 -0
  355. package/lib/src/constants/variable-types.d.ts +2 -0
  356. package/lib/src/i18n/build-dictionary.d.ts +24 -0
  357. package/lib/src/i18n/dictionary.d.ts +37 -0
  358. package/lib/src/i18n/index.d.ts +7 -0
  359. package/lib/src/i18n/inputNumberProps.d.ts +13 -0
  360. package/lib/src/index.d.ts +3 -0
  361. package/lib/src/type.utils.d.ts +1 -0
  362. package/lib/src/use-lunatic/actions.d.ts +289 -0
  363. package/lib/src/use-lunatic/commons/calculated-variables.d.ts +8 -0
  364. package/lib/src/use-lunatic/commons/check-loops.d.ts +3 -0
  365. package/lib/src/use-lunatic/commons/check-pager.d.ts +5 -0
  366. package/lib/src/use-lunatic/commons/compile-controls.d.ts +7 -0
  367. package/lib/src/use-lunatic/commons/compose.d.ts +3 -0
  368. package/lib/src/use-lunatic/commons/create-map-pages.d.ts +7 -0
  369. package/lib/src/use-lunatic/commons/execute-condition-filter.d.ts +3 -0
  370. package/lib/src/use-lunatic/commons/execute-expression/create-execute-expression.d.ts +9 -0
  371. package/lib/src/use-lunatic/commons/execute-expression/create-memoizer.d.ts +8 -0
  372. package/lib/src/use-lunatic/commons/execute-expression/create-refresh-calculated.d.ts +24 -0
  373. package/lib/src/use-lunatic/commons/execute-expression/execute-expression.d.ts +11 -0
  374. package/lib/src/use-lunatic/commons/execute-expression/execute-expression.spec.d.ts +1 -0
  375. package/lib/src/use-lunatic/commons/execute-expression/get-expressions-variables.d.ts +7 -0
  376. package/lib/src/use-lunatic/commons/execute-expression/get-expressions-variables.spec.d.ts +1 -0
  377. package/lib/src/use-lunatic/commons/execute-expression/get-safety-expression.d.ts +6 -0
  378. package/lib/src/use-lunatic/commons/execute-expression/index.d.ts +1 -0
  379. package/lib/src/use-lunatic/commons/fill-components/fill-component-expressions.d.ts +9 -0
  380. package/lib/src/use-lunatic/commons/fill-components/fill-component-expressions.spec.d.ts +1 -0
  381. package/lib/src/use-lunatic/commons/fill-components/fill-component-value.d.ts +6 -0
  382. package/lib/src/use-lunatic/commons/fill-components/fill-components.d.ts +12 -0
  383. package/lib/src/use-lunatic/commons/fill-components/fill-from-state.d.ts +699 -0
  384. package/lib/src/use-lunatic/commons/fill-components/fill-management.d.ts +6 -0
  385. package/lib/src/use-lunatic/commons/fill-components/fill-missing-response.d.ts +11 -0
  386. package/lib/src/use-lunatic/commons/fill-components/fill-pagination.d.ts +9 -0
  387. package/lib/src/use-lunatic/commons/fill-components/fill-specific-expression.d.ts +571 -0
  388. package/lib/src/use-lunatic/commons/fill-components/index.d.ts +1 -0
  389. package/lib/src/use-lunatic/commons/get-compatible-vtl-expression.d.ts +6 -0
  390. package/lib/src/use-lunatic/commons/get-component-value/get-component-value.d.ts +6 -0
  391. package/lib/src/use-lunatic/commons/get-component-value/index.d.ts +1 -0
  392. package/lib/src/use-lunatic/commons/get-components-from-state.d.ts +7 -0
  393. package/lib/src/use-lunatic/commons/get-data.d.ts +26 -0
  394. package/lib/src/use-lunatic/commons/get-errors-without-empty-value.d.ts +6 -0
  395. package/lib/src/use-lunatic/commons/getOverview.d.ts +19 -0
  396. package/lib/src/use-lunatic/commons/index.d.ts +13 -0
  397. package/lib/src/use-lunatic/commons/is-First-last-page.d.ts +6 -0
  398. package/lib/src/use-lunatic/commons/is-paginated-loop.d.ts +6 -0
  399. package/lib/src/use-lunatic/commons/is-roundabout.d.ts +2 -0
  400. package/lib/src/use-lunatic/commons/page-tag.d.ts +12 -0
  401. package/lib/src/use-lunatic/commons/use-components-from-state.d.ts +4 -0
  402. package/lib/src/use-lunatic/hooks/use-loop-variables.d.ts +5 -0
  403. package/lib/src/use-lunatic/index.d.ts +1 -0
  404. package/lib/src/use-lunatic/initial-state.d.ts +3 -0
  405. package/lib/src/use-lunatic/lunatic-context.d.ts +31 -0
  406. package/lib/src/use-lunatic/reducer/commons/index.d.ts +4 -0
  407. package/lib/src/use-lunatic/reducer/commons/is-empty-on-empty-page.d.ts +3 -0
  408. package/lib/src/use-lunatic/reducer/commons/is-loop-component.d.ts +12 -0
  409. package/lib/src/use-lunatic/reducer/commons/resize-array-variable.d.ts +5 -0
  410. package/lib/src/use-lunatic/reducer/commons/validate-condition-filter.d.ts +6 -0
  411. package/lib/src/use-lunatic/reducer/index.d.ts +1 -0
  412. package/lib/src/use-lunatic/reducer/overview/overview-on-change.d.ts +2 -0
  413. package/lib/src/use-lunatic/reducer/overview/overview-on-init.d.ts +99 -0
  414. package/lib/src/use-lunatic/reducer/reduce-go-next-page.d.ts +4 -0
  415. package/lib/src/use-lunatic/reducer/reduce-go-previous-page.d.ts +3 -0
  416. package/lib/src/use-lunatic/reducer/reduce-go-to-page.d.ts +4 -0
  417. package/lib/src/use-lunatic/reducer/reduce-handle-change/index.d.ts +1 -0
  418. package/lib/src/use-lunatic/reducer/reduce-handle-change/reduce-cleaning.d.ts +7 -0
  419. package/lib/src/use-lunatic/reducer/reduce-handle-change/reduce-cleaning.spec.d.ts +1 -0
  420. package/lib/src/use-lunatic/reducer/reduce-handle-change/reduce-handle-change.d.ts +4 -0
  421. package/lib/src/use-lunatic/reducer/reduce-handle-change/reduce-links-variable.d.ts +15 -0
  422. package/lib/src/use-lunatic/reducer/reduce-handle-change/reduce-missing.d.ts +7 -0
  423. package/lib/src/use-lunatic/reducer/reduce-handle-change/reduce-resizing.d.ts +4 -0
  424. package/lib/src/use-lunatic/reducer/reduce-handle-change/reduce-variables-array.d.ts +14 -0
  425. package/lib/src/use-lunatic/reducer/reduce-handle-change/reduce-variables-simple.d.ts +9 -0
  426. package/lib/src/use-lunatic/reducer/reduce-on-init.d.ts +15 -0
  427. package/lib/src/use-lunatic/reducer/reduce-on-set-waiting.d.ts +4 -0
  428. package/lib/src/use-lunatic/reducer/reduce-roundabout.d.ts +99 -0
  429. package/lib/src/use-lunatic/reducer/reduce-update-state.d.ts +3 -0
  430. package/lib/src/use-lunatic/reducer/reducer.d.ts +4 -0
  431. package/lib/src/use-lunatic/reducer/validate-controls/validation-utils.d.ts +6 -0
  432. package/lib/src/use-lunatic/type-source.d.ts +281 -0
  433. package/lib/src/use-lunatic/type.d.ts +143 -0
  434. package/lib/src/use-lunatic/use-lunatic.d.ts +84 -0
  435. package/lib/src/use-lunatic/use-lunatic.test.d.ts +1 -0
  436. package/lib/src/use-lunatic/use-suggesters.d.ts +19 -0
  437. package/lib/src/utils/constants/features.d.ts +3 -0
  438. package/lib/src/utils/constants/index.d.ts +5 -0
  439. package/lib/src/utils/constants/links.d.ts +2 -0
  440. package/lib/src/utils/constants/missing.d.ts +2 -0
  441. package/lib/src/utils/constants/variable-status.d.ts +5 -0
  442. package/lib/src/utils/constants/variable-types.d.ts +1 -0
  443. package/lib/src/utils/idb-tools/clear-store.d.ts +2 -0
  444. package/lib/src/utils/idb-tools/get-idb.d.ts +2 -0
  445. package/lib/src/utils/idb-tools/insert-entity.d.ts +2 -0
  446. package/lib/src/utils/is-element.d.ts +3 -0
  447. package/lib/src/utils/is-object.d.ts +4 -0
  448. package/lib/src/utils/object.d.ts +4 -0
  449. package/lib/src/utils/store-tools/constantes.d.ts +21 -0
  450. package/lib/src/utils/store-tools/initStore.d.ts +2 -0
  451. package/lib/src/utils/store-tools/open-or-create-store.d.ts +2 -0
  452. package/lib/src/utils/suggester-workers/append-to-index/create-append-task.d.ts +7 -0
  453. package/lib/src/utils/suggester-workers/create-worker-ts.d.ts +1 -0
  454. package/lib/src/utils/to-number.d.ts +4 -0
  455. package/lib/src/utils/vtl/dataset-builder.d.ts +5 -0
  456. package/lib/src/utils/vtl/index.d.ts +1 -0
  457. package/lib/stories/Introduction.stories.mdx +114 -0
  458. package/lib/stories/checkbox-boolean/checkboxBoolean.stories.js +34 -0
  459. package/lib/stories/checkbox-boolean/source.json +58 -0
  460. package/lib/stories/checkbox-group/checkbox-group.stories.js +34 -0
  461. package/lib/stories/checkbox-group/source.json +86 -0
  462. package/lib/stories/checkbox-one/checkboxOne.stories.js +43 -0
  463. package/lib/stories/checkbox-one/source.json +52 -0
  464. package/lib/stories/checkboxGroup/checkboxGroup.stories.js +43 -0
  465. package/lib/stories/checkboxGroup/source.json +403 -0
  466. package/lib/stories/custom-mui/checkbox-boolean-mui.js +32 -0
  467. package/lib/stories/custom-mui/checkbox-group-mui.js +68 -0
  468. package/lib/stories/custom-mui/checkbox-one-mui.js +16 -0
  469. package/lib/stories/custom-mui/index.js +111 -0
  470. package/lib/stories/custom-mui/input-mui.js +52 -0
  471. package/lib/stories/custom-mui/input-number-mui.js +40 -0
  472. package/lib/stories/custom-mui/radio-mui.js +62 -0
  473. package/lib/stories/custom-mui/suggester-mui/index.js +13 -0
  474. package/lib/stories/custom-mui/suggester-mui/suggester-mui.js +304 -0
  475. package/lib/stories/custom-mui/switch-mui.js +47 -0
  476. package/lib/stories/custom-mui/table-mui.js +28 -0
  477. package/lib/stories/custom-mui/tbody-mui.js +23 -0
  478. package/lib/stories/custom-mui/td-mui.js +25 -0
  479. package/lib/stories/custom-mui/textarea-mui.js +43 -0
  480. package/lib/stories/custom-mui/th-mui.js +24 -0
  481. package/lib/stories/custom-mui/thead-mui.js +23 -0
  482. package/lib/stories/custom-mui/tr-mui.js +33 -0
  483. package/lib/stories/date-picker/data.json +3 -0
  484. package/lib/stories/date-picker/datepicker.stories.js +38 -0
  485. package/lib/stories/date-picker/source.json +110 -0
  486. package/lib/stories/declaration/data.json +1 -0
  487. package/lib/stories/declaration/input.stories.js +36 -0
  488. package/lib/stories/declaration/source.json +74 -0
  489. package/lib/stories/dropdown/data.json +16 -0
  490. package/lib/stories/dropdown/dropdown.stories.js +39 -0
  491. package/lib/stories/dropdown/source.json +158 -0
  492. package/lib/stories/filter-description/filter-description.stories.js +50 -0
  493. package/lib/stories/filter-description/source-options.json +81 -0
  494. package/lib/stories/filter-description/source.json +11 -0
  495. package/lib/stories/input/data.json +1 -0
  496. package/lib/stories/input/input.stories.js +36 -0
  497. package/lib/stories/input/source.json +91 -0
  498. package/lib/stories/input-number/input-number.stories.js +56 -0
  499. package/lib/stories/input-number/source-euros.json +37 -0
  500. package/lib/stories/input-number/source-thansand.json +34 -0
  501. package/lib/stories/input-number/source.json +33 -0
  502. package/lib/stories/loop/block-for-loop.stories.js +41 -0
  503. package/lib/stories/loop/roster-for-loop.stories.js +34 -0
  504. package/lib/stories/loop/source-bloc.json +114 -0
  505. package/lib/stories/loop/source-roster.json +114 -0
  506. package/lib/stories/loop/source-with-header.json +127 -0
  507. package/lib/stories/overview/data.json +1 -0
  508. package/lib/stories/overview/overview.stories.js +37 -0
  509. package/lib/stories/overview/source.json +28 -0
  510. package/lib/stories/overview/sourceWithHierarchy.json +6290 -0
  511. package/lib/stories/pairwise/data.json +12 -0
  512. package/lib/stories/pairwise/links.json +270 -0
  513. package/lib/stories/pairwise/pairwise-links.stories.js +137 -0
  514. package/lib/stories/paste-questionnaire/source.json +6290 -0
  515. package/lib/stories/paste-questionnaire/test.stories.js +84 -0
  516. package/lib/stories/questionnaires/logement/data.json +2686 -0
  517. package/lib/stories/questionnaires/logement/logement.stories.js +76 -0
  518. package/lib/stories/questionnaires/logement/source-sequence.json +34181 -0
  519. package/lib/stories/questionnaires/logement/source-sum.json +34612 -0
  520. package/lib/stories/questionnaires/logement/source.json +34191 -0
  521. package/lib/stories/questionnaires/recensement/data.json +12 -0
  522. package/lib/stories/questionnaires/recensement/recensement.stories.js +52 -0
  523. package/lib/stories/questionnaires/recensement/source.json +15190 -0
  524. package/lib/stories/questionnaires/rp/data.json +5 -0
  525. package/lib/stories/questionnaires/rp/rp.stories.js +37 -0
  526. package/lib/stories/questionnaires/rp/source.json +262 -0
  527. package/lib/stories/questionnaires/simpsons/simpsons.stories.js +553 -0
  528. package/lib/stories/questionnaires/simpsons/source.json +6296 -0
  529. package/lib/stories/questionnaires-test/V2_DeclarationsSimples.json +848 -0
  530. package/lib/stories/questionnaires-test/V2_MinMaxSum_Boucles.json +509 -0
  531. package/lib/stories/questionnaires-test/V2_QuestSimple_Boucles.json +4091 -0
  532. package/lib/stories/questionnaires-test/V2_TCMRallyeGames.json +2892 -0
  533. package/lib/stories/questionnaires-test/controls/V2_ControlesNonNum_horsBoucle_PasPageFin.json +666 -0
  534. package/lib/stories/questionnaires-test/controls/V2_ControlesNum_horsBoucle_PasPageFin.json +1966 -0
  535. package/lib/stories/questionnaires-test/controls/V2_Controles_BouclesLiees2_PasPageFin.json +709 -0
  536. package/lib/stories/questionnaires-test/controls/V2_Controles_BouclesLiees_PasPageFin.json +533 -0
  537. package/lib/stories/questionnaires-test/controls/boucles-n.json +202 -0
  538. package/lib/stories/questionnaires-test/controls/controls.stories.js +97 -0
  539. package/lib/stories/questionnaires-test/test-dylan.json +558 -0
  540. package/lib/stories/questionnaires-test/test.stories.js +93 -0
  541. package/lib/stories/radio/radio.stories.js +43 -0
  542. package/lib/stories/radio/source.json +51 -0
  543. package/lib/stories/roundabout/data.json +25 -0
  544. package/lib/stories/roundabout/roundabout.stories.js +36 -0
  545. package/lib/stories/roundabout/source.json +273 -0
  546. package/lib/stories/suggester/simple.json +146 -0
  547. package/lib/stories/suggester/source.json +254 -0
  548. package/lib/stories/suggester/suggester-workers.stories.js +208 -0
  549. package/lib/stories/suggester/suggester.stories.js +84 -0
  550. package/lib/stories/switch/README.md +31 -0
  551. package/lib/stories/switch/data-forced.json +48 -0
  552. package/lib/stories/switch/source.json +80 -0
  553. package/lib/stories/switch/switch.stories.js +39 -0
  554. package/lib/stories/table/data-roster.json +1 -0
  555. package/lib/stories/table/data.json +1 -0
  556. package/lib/stories/table/source-roster.json +513 -0
  557. package/lib/stories/table/source.json +31 -0
  558. package/lib/stories/table/table-dynamique.json +67 -0
  559. package/lib/stories/table/table.stories.js +63 -0
  560. package/lib/stories/textarea/data.json +1 -0
  561. package/lib/stories/textarea/source.json +51 -0
  562. package/lib/stories/textarea/textarea.stories.js +36 -0
  563. package/lib/stories/utils/custom-lunatic.scss +28 -0
  564. package/lib/stories/utils/default-arg-types.js +22 -0
  565. package/lib/stories/utils/options.js +32 -0
  566. package/lib/stories/utils/orchestrator.js +263 -0
  567. package/lib/stories/utils/orchestrator.scss +5 -0
  568. package/lib/stories/utils/overview.js +54 -0
  569. package/lib/stories/utils/overview.scss +30 -0
  570. package/lib/stories/utils/waiting/index.js +13 -0
  571. package/lib/stories/utils/waiting/preloader.svg +1 -0
  572. package/lib/stories/utils/waiting/waiting.js +33 -0
  573. package/lib/stories/utils/waiting/waiting.scss +21 -0
  574. package/lib/tests/utils/lunatic.d.ts +11 -0
  575. package/lib/type.utils.js +5 -0
  576. package/lib/use-lunatic/actions.js +60 -0
  577. package/lib/use-lunatic/commons/calculated-variables.js +104 -0
  578. package/lib/use-lunatic/commons/check-loops.js +99 -0
  579. package/lib/use-lunatic/commons/check-pager.js +24 -0
  580. package/lib/use-lunatic/commons/compile-controls.js +72 -0
  581. package/lib/use-lunatic/commons/compose.js +20 -0
  582. package/lib/use-lunatic/commons/create-map-pages.js +81 -0
  583. package/lib/use-lunatic/commons/execute-condition-filter.js +27 -0
  584. package/lib/use-lunatic/commons/execute-expression/create-execute-expression.js +268 -0
  585. package/lib/use-lunatic/commons/execute-expression/create-memoizer.js +63 -0
  586. package/lib/use-lunatic/commons/execute-expression/create-refresh-calculated.js +148 -0
  587. package/lib/use-lunatic/commons/execute-expression/execute-expression.js +91 -0
  588. package/lib/use-lunatic/commons/execute-expression/execute-expression.spec.js +38 -0
  589. package/lib/use-lunatic/commons/execute-expression/get-expressions-variables.js +40 -0
  590. package/lib/use-lunatic/commons/execute-expression/get-expressions-variables.spec.js +31 -0
  591. package/lib/use-lunatic/commons/execute-expression/get-safety-expression.js +35 -0
  592. package/lib/use-lunatic/commons/execute-expression/index.js +13 -0
  593. package/lib/use-lunatic/commons/fill-components/fill-component-expressions.js +111 -0
  594. package/lib/use-lunatic/commons/fill-components/fill-component-expressions.spec.js +42 -0
  595. package/lib/use-lunatic/commons/fill-components/fill-component-value.js +22 -0
  596. package/lib/use-lunatic/commons/fill-components/fill-components.js +45 -0
  597. package/lib/use-lunatic/commons/fill-components/fill-from-state.js +30 -0
  598. package/lib/use-lunatic/commons/fill-components/fill-management.js +23 -0
  599. package/lib/use-lunatic/commons/fill-components/fill-missing-response.js +35 -0
  600. package/lib/use-lunatic/commons/fill-components/fill-pagination.js +24 -0
  601. package/lib/use-lunatic/commons/fill-components/fill-specific-expression.js +46 -0
  602. package/lib/use-lunatic/commons/fill-components/index.js +13 -0
  603. package/lib/use-lunatic/commons/get-compatible-vtl-expression.js +28 -0
  604. package/lib/use-lunatic/commons/get-component-value/get-component-value.js +176 -0
  605. package/lib/use-lunatic/commons/get-component-value/index.js +13 -0
  606. package/lib/use-lunatic/commons/get-components-from-state.js +47 -0
  607. package/lib/use-lunatic/commons/get-data.js +80 -0
  608. package/lib/use-lunatic/commons/get-errors-without-empty-value.js +25 -0
  609. package/lib/use-lunatic/commons/getOverview.js +40 -0
  610. package/lib/use-lunatic/commons/index.js +109 -0
  611. package/lib/use-lunatic/commons/is-First-last-page.js +18 -0
  612. package/lib/use-lunatic/commons/is-paginated-loop.js +11 -0
  613. package/lib/use-lunatic/commons/is-roundabout.js +10 -0
  614. package/lib/use-lunatic/commons/load-suggesters.js +158 -0
  615. package/lib/use-lunatic/commons/page-tag.js +72 -0
  616. package/lib/use-lunatic/commons/use-components-from-state.js +41 -0
  617. package/lib/use-lunatic/hooks/use-loop-variables.js +26 -0
  618. package/lib/use-lunatic/index.js +13 -0
  619. package/lib/use-lunatic/initial-state.js +49 -0
  620. package/lib/use-lunatic/lunatic-context.js +83 -0
  621. package/lib/use-lunatic/reducer/commons/index.js +44 -0
  622. package/lib/use-lunatic/reducer/commons/is-empty-on-empty-page.js +32 -0
  623. package/lib/use-lunatic/reducer/commons/is-loop-component.js +10 -0
  624. package/lib/use-lunatic/reducer/commons/resize-array-variable.js +32 -0
  625. package/lib/use-lunatic/reducer/commons/validate-condition-filter.js +29 -0
  626. package/lib/use-lunatic/reducer/index.js +13 -0
  627. package/lib/use-lunatic/reducer/overview/overview-on-change.js +49 -0
  628. package/lib/use-lunatic/reducer/overview/overview-on-init.js +104 -0
  629. package/lib/use-lunatic/reducer/reduce-go-next-page.js +181 -0
  630. package/lib/use-lunatic/reducer/reduce-go-previous-page.js +146 -0
  631. package/lib/use-lunatic/reducer/reduce-go-to-page.js +79 -0
  632. package/lib/use-lunatic/reducer/reduce-handle-change/__mocks__/source-cleaning-loop.json +926 -0
  633. package/lib/use-lunatic/reducer/reduce-handle-change/index.js +13 -0
  634. package/lib/use-lunatic/reducer/reduce-handle-change/reduce-cleaning.js +72 -0
  635. package/lib/use-lunatic/reducer/reduce-handle-change/reduce-cleaning.spec.js +46 -0
  636. package/lib/use-lunatic/reducer/reduce-handle-change/reduce-handle-change.js +115 -0
  637. package/lib/use-lunatic/reducer/reduce-handle-change/reduce-links-variable.js +89 -0
  638. package/lib/use-lunatic/reducer/reduce-handle-change/reduce-missing.js +88 -0
  639. package/lib/use-lunatic/reducer/reduce-handle-change/reduce-resizing.js +113 -0
  640. package/lib/use-lunatic/reducer/reduce-handle-change/reduce-variables-array.js +44 -0
  641. package/lib/use-lunatic/reducer/reduce-handle-change/reduce-variables-simple.js +28 -0
  642. package/lib/use-lunatic/reducer/reduce-on-init.js +238 -0
  643. package/lib/use-lunatic/reducer/reduce-on-set-waiting.js +21 -0
  644. package/lib/use-lunatic/reducer/reduce-roundabout.js +29 -0
  645. package/lib/use-lunatic/reducer/reduce-update-state.js +22 -0
  646. package/lib/use-lunatic/reducer/reducer.js +37 -0
  647. package/lib/use-lunatic/reducer/validate-controls/validation-utils.js +62 -0
  648. package/lib/use-lunatic/type-source.js +24 -0
  649. package/lib/use-lunatic/type.js +5 -0
  650. package/lib/use-lunatic/use-lunatic.js +189 -0
  651. package/lib/use-lunatic/use-lunatic.test.js +168 -0
  652. package/lib/use-lunatic/use-suggesters.js +158 -0
  653. package/lib/utils/constants/alphabet.js +8 -0
  654. package/lib/utils/constants/features.js +12 -0
  655. package/lib/utils/constants/index.js +60 -0
  656. package/lib/utils/constants/links.js +10 -0
  657. package/lib/utils/constants/missing.js +10 -0
  658. package/lib/utils/constants/variable-status.js +16 -0
  659. package/lib/utils/constants/variable-types.js +8 -0
  660. package/lib/utils/idb-tools/clear-store.js +40 -0
  661. package/lib/utils/idb-tools/create-db-opener.js +47 -0
  662. package/lib/utils/idb-tools/create-open-db.js +29 -0
  663. package/lib/utils/idb-tools/get-entity.js +21 -0
  664. package/lib/utils/idb-tools/get-idb.js +13 -0
  665. package/lib/utils/idb-tools/idb-bulk-insert.js +134 -0
  666. package/lib/utils/idb-tools/index.js +64 -0
  667. package/lib/utils/idb-tools/insert-entity.js +21 -0
  668. package/lib/utils/idb-tools/open-db.js +24 -0
  669. package/lib/utils/idb-tools/open-or-create-db.js +42 -0
  670. package/lib/utils/is-element.js +10 -0
  671. package/lib/utils/is-object.js +13 -0
  672. package/lib/utils/object.js +31 -0
  673. package/lib/utils/store-tools/auto-load.js +162 -0
  674. package/lib/utils/store-tools/clear-store-data.js +33 -0
  675. package/lib/utils/store-tools/clear-store-info.js +33 -0
  676. package/lib/utils/store-tools/constantes.js +31 -0
  677. package/lib/utils/store-tools/create/create.js +51 -0
  678. package/lib/utils/store-tools/create/index.js +20 -0
  679. package/lib/utils/store-tools/create/update-store-info.js +27 -0
  680. package/lib/utils/store-tools/get-store-count.js +24 -0
  681. package/lib/utils/store-tools/index.js +54 -0
  682. package/lib/utils/store-tools/initStore.js +56 -0
  683. package/lib/utils/store-tools/open-or-create-store.js +52 -0
  684. package/lib/utils/store-tools/use-store-index.js +58 -0
  685. package/lib/utils/suggester-workers/append-to-index/append.js +78 -0
  686. package/lib/utils/suggester-workers/append-to-index/append.worker.js +33 -0
  687. package/lib/utils/suggester-workers/append-to-index/create-append-task.js +66 -0
  688. package/lib/utils/suggester-workers/append-to-index/dist/append.worker.dev.js +37 -0
  689. package/lib/utils/suggester-workers/append-to-index/dist/create-append-task.js +69 -0
  690. package/lib/utils/suggester-workers/append-to-index/dist/index.dev.js +24 -0
  691. package/lib/utils/suggester-workers/append-to-index/index.js +20 -0
  692. package/lib/utils/suggester-workers/append-to-index/prepare-entities.js +88 -0
  693. package/lib/utils/suggester-workers/append-to-index/store-messages.js +45 -0
  694. package/lib/utils/suggester-workers/commons-tokenizer/create-entity-tokenizer.js +54 -0
  695. package/lib/utils/suggester-workers/commons-tokenizer/create-fields-tokenizer.js +77 -0
  696. package/lib/utils/suggester-workers/commons-tokenizer/create-filter-stop-words.js +36 -0
  697. package/lib/utils/suggester-workers/commons-tokenizer/filters/compose-filters.js +21 -0
  698. package/lib/utils/suggester-workers/commons-tokenizer/filters/create-filter-stop-words.js +36 -0
  699. package/lib/utils/suggester-workers/commons-tokenizer/filters/create-filter-stop-words.spec.js +15 -0
  700. package/lib/utils/suggester-workers/commons-tokenizer/filters/filter-accents.js +19 -0
  701. package/lib/utils/suggester-workers/commons-tokenizer/filters/filter-accents.spec.js +17 -0
  702. package/lib/utils/suggester-workers/commons-tokenizer/filters/filter-double.js +25 -0
  703. package/lib/utils/suggester-workers/commons-tokenizer/filters/filter-double.spec.js +24 -0
  704. package/lib/utils/suggester-workers/commons-tokenizer/filters/filter-length.js +15 -0
  705. package/lib/utils/suggester-workers/commons-tokenizer/filters/filter-length.spec.js +24 -0
  706. package/lib/utils/suggester-workers/commons-tokenizer/filters/filter-stemmer.js +23 -0
  707. package/lib/utils/suggester-workers/commons-tokenizer/filters/filter-stemmer.spec.js +17 -0
  708. package/lib/utils/suggester-workers/commons-tokenizer/filters/filter-synonyms.js +53 -0
  709. package/lib/utils/suggester-workers/commons-tokenizer/filters/filter-synonyms.spec.js +15 -0
  710. package/lib/utils/suggester-workers/commons-tokenizer/filters/filter-to-lower.js +16 -0
  711. package/lib/utils/suggester-workers/commons-tokenizer/filters/filter-to-lower.spec.js +15 -0
  712. package/lib/utils/suggester-workers/commons-tokenizer/filters/index.js +20 -0
  713. package/lib/utils/suggester-workers/commons-tokenizer/filters/stop-words.js +9 -0
  714. package/lib/utils/suggester-workers/commons-tokenizer/get-regexp-from-pattern.js +14 -0
  715. package/lib/utils/suggester-workers/commons-tokenizer/get-stemmer.js +23 -0
  716. package/lib/utils/suggester-workers/commons-tokenizer/index.js +69 -0
  717. package/lib/utils/suggester-workers/commons-tokenizer/prepare-string-indexation.js +18 -0
  718. package/lib/utils/suggester-workers/commons-tokenizer/soft-tokenizer.js +12 -0
  719. package/lib/utils/suggester-workers/create-worker-ts.js +54 -0
  720. package/lib/utils/suggester-workers/create-worker.js +54 -0
  721. package/lib/utils/suggester-workers/find-best-label/find-best-label.js +63 -0
  722. package/lib/utils/suggester-workers/find-best-label/find-best-label.worker.js +53 -0
  723. package/lib/utils/suggester-workers/find-best-label/index.js +1 -0
  724. package/lib/utils/suggester-workers/find-best-label/tokenize.js +45 -0
  725. package/lib/utils/suggester-workers/find-best-label/tokenize.spec.js +25 -0
  726. package/lib/utils/suggester-workers/searching/compute-score.js +36 -0
  727. package/lib/utils/suggester-workers/searching/get-db.js +48 -0
  728. package/lib/utils/suggester-workers/searching/index.js +13 -0
  729. package/lib/utils/suggester-workers/searching/order/create-alphanumeric-orderer.js +28 -0
  730. package/lib/utils/suggester-workers/searching/order/index.js +25 -0
  731. package/lib/utils/suggester-workers/searching/query-parser/index.js +20 -0
  732. package/lib/utils/suggester-workers/searching/query-parser/query-parser-soft.js +12 -0
  733. package/lib/utils/suggester-workers/searching/query-parser/query-parser-soft.spec.js +27 -0
  734. package/lib/utils/suggester-workers/searching/query-parser/query-parser-tokenized.js +35 -0
  735. package/lib/utils/suggester-workers/searching/resolve-query-parser.js +57 -0
  736. package/lib/utils/suggester-workers/searching/search-in-index.js +22 -0
  737. package/lib/utils/suggester-workers/searching/searching.js +141 -0
  738. package/lib/utils/suggester-workers/searching/searching.worker.js +20 -0
  739. package/lib/utils/to-number.js +18 -0
  740. package/lib/utils/vtl/dataset-builder.js +27 -0
  741. package/lib/utils/vtl/index.js +13 -0
  742. package/package.json +164 -143
  743. package/lib/index.js.map +0 -1
  744. package/src/components/breadcrumb/breadcrumb.scss +0 -20
  745. package/src/components/breadcrumb/component.js +0 -29
  746. package/src/components/breadcrumb/index.js +0 -1
  747. package/src/components/button/button.scss +0 -24
  748. package/src/components/button/component.js +0 -25
  749. package/src/components/button/index.js +0 -1
  750. package/src/components/checkbox/boolean.js +0 -152
  751. package/src/components/checkbox/checkbox.scss +0 -71
  752. package/src/components/checkbox/group.js +0 -187
  753. package/src/components/checkbox/index.js +0 -3
  754. package/src/components/checkbox/one.js +0 -10
  755. package/src/components/components.js +0 -17
  756. package/src/components/datepicker/component.js +0 -10
  757. package/src/components/datepicker/datepicker.scss +0 -1
  758. package/src/components/datepicker/index.js +0 -1
  759. package/src/components/declarations/component.js +0 -38
  760. package/src/components/declarations/declarations.scss +0 -38
  761. package/src/components/declarations/index.js +0 -1
  762. package/src/components/declarations/wrappers/index.js +0 -3
  763. package/src/components/declarations/wrappers/input-declarations-wrapper.js +0 -229
  764. package/src/components/declarations/wrappers/list-declarations-wrapper.js +0 -203
  765. package/src/components/declarations/wrappers/simple-declarations-wrapper.js +0 -54
  766. package/src/components/dropdown/commons/actions.js +0 -56
  767. package/src/components/dropdown/commons/children-to-option.js +0 -9
  768. package/src/components/dropdown/commons/cleaner-callbacks.js +0 -58
  769. package/src/components/dropdown/commons/components/closed.icon.js +0 -24
  770. package/src/components/dropdown/commons/components/dropdown-container.js +0 -29
  771. package/src/components/dropdown/commons/components/dropdown-field.js +0 -46
  772. package/src/components/dropdown/commons/components/dropdown.js +0 -183
  773. package/src/components/dropdown/commons/components/label.js +0 -28
  774. package/src/components/dropdown/commons/components/opened.icon.js +0 -24
  775. package/src/components/dropdown/commons/components/panel.js +0 -78
  776. package/src/components/dropdown/commons/event-callbacks/index.js +0 -5
  777. package/src/components/dropdown/commons/event-callbacks/on-keydown-callback.js +0 -29
  778. package/src/components/dropdown/commons/event-callbacks/on-mousedown-callback.js +0 -11
  779. package/src/components/dropdown/commons/reducer.js +0 -149
  780. package/src/components/dropdown/commons/tools/index.js +0 -17
  781. package/src/components/dropdown/component.js +0 -125
  782. package/src/components/dropdown/dropdown-edit/cross.icon.js +0 -20
  783. package/src/components/dropdown/dropdown-edit/dropdown-edit.js +0 -190
  784. package/src/components/dropdown/dropdown-edit/icone.js +0 -33
  785. package/src/components/dropdown/dropdown-edit/index.js +0 -11
  786. package/src/components/dropdown/dropdown-edit/option.js +0 -62
  787. package/src/components/dropdown/dropdown-edit/prefix-tools.js +0 -51
  788. package/src/components/dropdown/dropdown-simple/dropdown.js +0 -155
  789. package/src/components/dropdown/dropdown-simple/index.js +0 -20
  790. package/src/components/dropdown/dropdown-simple/option.js +0 -15
  791. package/src/components/dropdown/dropdown.scss +0 -175
  792. package/src/components/dropdown/index.js +0 -1
  793. package/src/components/filter-description/component.js +0 -41
  794. package/src/components/filter-description/index.js +0 -1
  795. package/src/components/icon/assets/checkbox-checked.js +0 -16
  796. package/src/components/icon/assets/checkbox-unchecked.js +0 -16
  797. package/src/components/icon/assets/index.js +0 -4
  798. package/src/components/icon/assets/radio-checked.js +0 -16
  799. package/src/components/icon/assets/radio-unchecked.js +0 -16
  800. package/src/components/icon/component.js +0 -33
  801. package/src/components/icon/icon.scss +0 -13
  802. package/src/components/icon/index.js +0 -1
  803. package/src/components/index.js +0 -4
  804. package/src/components/index.scss +0 -141
  805. package/src/components/input/index.js +0 -2
  806. package/src/components/input/input-number.js +0 -44
  807. package/src/components/input/input.js +0 -10
  808. package/src/components/input/input.scss +0 -35
  809. package/src/components/loop/component.js +0 -105
  810. package/src/components/loop/index.js +0 -1
  811. package/src/components/loop/loop.scss +0 -11
  812. package/src/components/loop/paginated-component.js +0 -205
  813. package/src/components/loop/wrapper.js +0 -15
  814. package/src/components/loop-constructor/block/block.scss +0 -8
  815. package/src/components/loop-constructor/block/component.js +0 -8
  816. package/src/components/loop-constructor/block/index.js +0 -1
  817. package/src/components/loop-constructor/index.js +0 -1
  818. package/src/components/loop-constructor/roster/component.js +0 -7
  819. package/src/components/loop-constructor/roster/index.js +0 -1
  820. package/src/components/loop-constructor/wrapper/body-component.js +0 -118
  821. package/src/components/loop-constructor/wrapper/build-components.js +0 -33
  822. package/src/components/loop-constructor/wrapper/component.js +0 -154
  823. package/src/components/loop-constructor/wrapper/index.js +0 -1
  824. package/src/components/progress-bar/component.js +0 -28
  825. package/src/components/progress-bar/index.js +0 -1
  826. package/src/components/progress-bar/progress-bar.scss +0 -52
  827. package/src/components/radio/component.js +0 -8
  828. package/src/components/radio/index.js +0 -1
  829. package/src/components/radio/radio.scss +0 -57
  830. package/src/components/sequence/component.js +0 -41
  831. package/src/components/sequence/index.js +0 -1
  832. package/src/components/sequence/sequence.scss +0 -8
  833. package/src/components/subsequence/component.js +0 -47
  834. package/src/components/subsequence/index.js +0 -1
  835. package/src/components/suggester/component.js +0 -103
  836. package/src/components/suggester/index.js +0 -1
  837. package/src/components/table/index.js +0 -1
  838. package/src/components/table/table.js +0 -162
  839. package/src/components/table/table.scss +0 -24
  840. package/src/components/textarea/component.js +0 -10
  841. package/src/components/textarea/index.js +0 -1
  842. package/src/components/textarea/textarea.scss +0 -6
  843. package/src/components/tooltip/img/index.js +0 -4
  844. package/src/components/tooltip/index.js +0 -1
  845. package/src/components/tooltip/response.js +0 -52
  846. package/src/components/tooltip/tooltip.scss +0 -27
  847. package/src/constants/component-types.js +0 -1
  848. package/src/constants/declarations.js +0 -14
  849. package/src/constants/index.js +0 -4
  850. package/src/constants/supported-preferences.js +0 -10
  851. package/src/constants/value-types.js +0 -5
  852. package/src/constants/variable-types.js +0 -4
  853. package/src/stories/breadcrumb/README.md +0 -14
  854. package/src/stories/breadcrumb/breadcrumb.stories.js +0 -19
  855. package/src/stories/button/README.md +0 -14
  856. package/src/stories/button/button.stories.js +0 -27
  857. package/src/stories/checkbox-boolean/README.md +0 -27
  858. package/src/stories/checkbox-boolean/checkbox-boolean.stories.js +0 -30
  859. package/src/stories/checkbox-boolean/data.json +0 -48
  860. package/src/stories/checkbox-group/README.md +0 -29
  861. package/src/stories/checkbox-group/checkbox-group.stories.js +0 -35
  862. package/src/stories/checkbox-group/data-vtl.json +0 -89
  863. package/src/stories/checkbox-group/data.json +0 -89
  864. package/src/stories/checkbox-one/README.md +0 -31
  865. package/src/stories/checkbox-one/checkbox-one.stories.js +0 -32
  866. package/src/stories/checkbox-one/data-vtl.json +0 -33
  867. package/src/stories/checkbox-one/data.json +0 -33
  868. package/src/stories/datepicker/README.md +0 -31
  869. package/src/stories/datepicker/data.json +0 -28
  870. package/src/stories/datepicker/datepicker.stories.js +0 -36
  871. package/src/stories/declarations/README.md +0 -19
  872. package/src/stories/declarations/declarations.stories.js +0 -112
  873. package/src/stories/dropdown/README.md +0 -44
  874. package/src/stories/dropdown/data-naf.json +0 -6963
  875. package/src/stories/dropdown/data-props.json +0 -81
  876. package/src/stories/dropdown/data.json +0 -78
  877. package/src/stories/dropdown/dropdown.stories.js +0 -65
  878. package/src/stories/filter-description/README.md +0 -15
  879. package/src/stories/filter-description/filter-description.stories.js +0 -53
  880. package/src/stories/input/README.md +0 -33
  881. package/src/stories/input/data.json +0 -28
  882. package/src/stories/input/input.stories.js +0 -44
  883. package/src/stories/input-number/README.md +0 -37
  884. package/src/stories/input-number/data.json +0 -30
  885. package/src/stories/input-number/input-number.stories.js +0 -53
  886. package/src/stories/loop/README.md +0 -25
  887. package/src/stories/loop/loop.stories.js +0 -80
  888. package/src/stories/loop/with-loop/data-loop-deeper.json +0 -298
  889. package/src/stories/loop/with-loop/data-loop.json +0 -211
  890. package/src/stories/loop/with-loop/data-vqs.json +0 -1384
  891. package/src/stories/loop/with-loop/index.js +0 -3
  892. package/src/stories/loop/with-roster/data-loop-deeper.json +0 -298
  893. package/src/stories/loop/with-roster/data-loop.json +0 -213
  894. package/src/stories/loop/with-roster/data-vqs.json +0 -1383
  895. package/src/stories/loop/with-roster/index.js +0 -3
  896. package/src/stories/loop-constructor/README.md +0 -27
  897. package/src/stories/loop-constructor/data-input.json +0 -64
  898. package/src/stories/loop-constructor/data-loop.json +0 -66
  899. package/src/stories/loop-constructor/data-roster.json +0 -68
  900. package/src/stories/loop-constructor/loop-constructor.stories.js +0 -59
  901. package/src/stories/pagination/deeper-loop.json +0 -327
  902. package/src/stories/pagination/pagination.stories.js +0 -57
  903. package/src/stories/pagination/simple-loop.json +0 -277
  904. package/src/stories/pagination/simpsons-question.json +0 -4262
  905. package/src/stories/pagination/simpsons-sequence.json +0 -4362
  906. package/src/stories/progress-bar/README.md +0 -13
  907. package/src/stories/progress-bar/progress-bar.stories.js +0 -24
  908. package/src/stories/questionnaire/fat.json +0 -6558
  909. package/src/stories/questionnaire/questionnaire.stories.js +0 -25
  910. package/src/stories/radio/README.md +0 -31
  911. package/src/stories/radio/data-vtl.json +0 -32
  912. package/src/stories/radio/data.json +0 -32
  913. package/src/stories/radio/radio.stories.js +0 -35
  914. package/src/stories/sequence/README.md +0 -18
  915. package/src/stories/sequence/sequence.stories.js +0 -28
  916. package/src/stories/subsequence/README.md +0 -18
  917. package/src/stories/subsequence/subsequence.stories.js +0 -28
  918. package/src/stories/suggester/README.md +0 -29
  919. package/src/stories/suggester/data-vtl.json +0 -28
  920. package/src/stories/suggester/data.json +0 -28
  921. package/src/stories/suggester/suggester.stories.js +0 -38
  922. package/src/stories/table/README.md +0 -29
  923. package/src/stories/table/data-default.json +0 -19
  924. package/src/stories/table/data-one-axis-one-measure.json +0 -124
  925. package/src/stories/table/data-one-axis-two-measures.json +0 -193
  926. package/src/stories/table/data-one-hierarchical-axis.json +0 -204
  927. package/src/stories/table/data-roster.json +0 -471
  928. package/src/stories/table/data-two-axis-one-measure.json +0 -492
  929. package/src/stories/table/table.stories.js +0 -77
  930. package/src/stories/textarea/README.md +0 -33
  931. package/src/stories/textarea/data-forced.json +0 -28
  932. package/src/stories/textarea/data.json +0 -28
  933. package/src/stories/textarea/textarea.stories.js +0 -67
  934. package/src/stories/tooltip-response/README.md +0 -14
  935. package/src/stories/tooltip-response/md-link.json +0 -31
  936. package/src/stories/tooltip-response/md-tooltip.json +0 -31
  937. package/src/stories/tooltip-response/tooltip.stories.js +0 -83
  938. package/src/stories/utils/custom-lunatic.scss +0 -23
  939. package/src/stories/utils/img/arrow.png +0 -0
  940. package/src/stories/utils/img/check_box.svg +0 -1
  941. package/src/stories/utils/img/check_box_outline.svg +0 -1
  942. package/src/stories/utils/img/lunatic-logo.png +0 -0
  943. package/src/stories/utils/img/menu-down.svg +0 -1
  944. package/src/stories/utils/img/menu-up.svg +0 -1
  945. package/src/stories/utils/img/radio_button_checked.svg +0 -1
  946. package/src/stories/utils/img/radio_button_unchecked.svg +0 -1
  947. package/src/stories/utils/options.js +0 -25
  948. package/src/stories/utils/orchestrator.js +0 -83
  949. package/src/tests/components/breadcrumb.spec.js +0 -13
  950. package/src/tests/components/button.spec.js +0 -11
  951. package/src/tests/components/checkbox-boolean.spec.js +0 -45
  952. package/src/tests/components/checkbox-group.spec.js +0 -53
  953. package/src/tests/components/checkbox-one.spec.js +0 -32
  954. package/src/tests/components/datepicker.spec.js +0 -22
  955. package/src/tests/components/declarations-wrappers/input-declarations-wrapper.spec.js +0 -67
  956. package/src/tests/components/declarations-wrappers/list-declarations-wrapper.spec.js +0 -52
  957. package/src/tests/components/declarations-wrappers/simple-declarations-wrapper.spec.js +0 -21
  958. package/src/tests/components/declarations.spec.js +0 -46
  959. package/src/tests/components/input-number.spec.js +0 -194
  960. package/src/tests/components/input.spec.js +0 -18
  961. package/src/tests/components/progress-bar.spec.js +0 -15
  962. package/src/tests/components/radio.spec.js +0 -27
  963. package/src/tests/components/sequence.spec.js +0 -9
  964. package/src/tests/components/subsequence.spec.js +0 -9
  965. package/src/tests/components/table.spec.js +0 -11
  966. package/src/tests/components/textarea.spec.js +0 -18
  967. package/src/tests/components/tooltip.spec.js +0 -25
  968. package/src/tests/setup/setupTests.js +0 -4
  969. package/src/tests/utils/lib/alphabet.spec.js +0 -36
  970. package/src/tests/utils/lib/checkbox/group.spec.js +0 -72
  971. package/src/tests/utils/lib/decorator/title-decorator.spec.js +0 -12
  972. package/src/tests/utils/lib/items-positioning.spec.js +0 -17
  973. package/src/tests/utils/lib/label-position.spec.js +0 -22
  974. package/src/tests/utils/lib/loops/bindings.spec.js +0 -60
  975. package/src/tests/utils/lib/loops/shared.spec.js +0 -78
  976. package/src/tests/utils/lib/pagination/shared.spec.js +0 -42
  977. package/src/tests/utils/lib/responses.spec.js +0 -64
  978. package/src/tests/utils/lib/style.spec.js +0 -26
  979. package/src/tests/utils/lib/table/roster.spec.js +0 -25
  980. package/src/tests/utils/lib/tooltip/build-response.spec.js +0 -95
  981. package/src/tests/utils/lib/tooltip/content.spec.js +0 -109
  982. package/src/tests/utils/to-expose/handler/handler.spec.js +0 -86
  983. package/src/tests/utils/to-expose/handler/questionnaire.json +0 -154
  984. package/src/tests/utils/to-expose/handler/results/index.js +0 -6
  985. package/src/tests/utils/to-expose/handler/results/res-double.json +0 -157
  986. package/src/tests/utils/to-expose/handler/results/res-input-collected.json +0 -154
  987. package/src/tests/utils/to-expose/handler/results/res-input-edited.json +0 -157
  988. package/src/tests/utils/to-expose/handler/results/res-loop.json +0 -157
  989. package/src/tests/utils/to-expose/handler/results/res-matrix.json +0 -157
  990. package/src/tests/utils/to-expose/handler/results/res-responses.json +0 -157
  991. package/src/tests/utils/to-expose/init-questionnaire/data.json +0 -12
  992. package/src/tests/utils/to-expose/init-questionnaire/init-questionnaire.spec.js +0 -19
  993. package/src/tests/utils/to-expose/init-questionnaire/questionnaire.json +0 -129
  994. package/src/tests/utils/to-expose/init-questionnaire/result.json +0 -162
  995. package/src/tests/utils/to-expose/interpret/interpret.spec.js +0 -66
  996. package/src/tests/utils/to-expose/state/questionnaire.json +0 -61
  997. package/src/tests/utils/to-expose/state/results.js +0 -78
  998. package/src/tests/utils/to-expose/state/state.spec.js +0 -59
  999. package/src/utils/lib/alphabet.js +0 -1
  1000. package/src/utils/lib/checkbox/group.js +0 -21
  1001. package/src/utils/lib/checkbox/index.js +0 -1
  1002. package/src/utils/lib/decorator/index.js +0 -1
  1003. package/src/utils/lib/decorator/title-decorator.js +0 -16
  1004. package/src/utils/lib/index.js +0 -13
  1005. package/src/utils/lib/label-position.js +0 -12
  1006. package/src/utils/lib/loops/bindings.js +0 -53
  1007. package/src/utils/lib/loops/build-components.js +0 -33
  1008. package/src/utils/lib/loops/index.js +0 -3
  1009. package/src/utils/lib/loops/shared.js +0 -43
  1010. package/src/utils/lib/memo-check.js +0 -24
  1011. package/src/utils/lib/options-positioning.js +0 -9
  1012. package/src/utils/lib/pagination/flow.js +0 -2
  1013. package/src/utils/lib/pagination/index.js +0 -2
  1014. package/src/utils/lib/pagination/navigation/index.js +0 -1
  1015. package/src/utils/lib/pagination/navigation/shared.js +0 -107
  1016. package/src/utils/lib/prop-types/declarations.js +0 -22
  1017. package/src/utils/lib/prop-types/index.js +0 -5
  1018. package/src/utils/lib/prop-types/lines.js +0 -6
  1019. package/src/utils/lib/prop-types/options.js +0 -8
  1020. package/src/utils/lib/prop-types/response.js +0 -6
  1021. package/src/utils/lib/prop-types/value-type.js +0 -9
  1022. package/src/utils/lib/responses.js +0 -9
  1023. package/src/utils/lib/style.js +0 -10
  1024. package/src/utils/lib/table/index.js +0 -1
  1025. package/src/utils/lib/table/roster.js +0 -23
  1026. package/src/utils/lib/tooltip/build-response.js +0 -41
  1027. package/src/utils/lib/tooltip/content.js +0 -55
  1028. package/src/utils/lib/tooltip/index.js +0 -6
  1029. package/src/utils/to-expose/handler.js +0 -99
  1030. package/src/utils/to-expose/hook.js +0 -153
  1031. package/src/utils/to-expose/index.js +0 -11
  1032. package/src/utils/to-expose/init-questionnaire.js +0 -116
  1033. package/src/utils/to-expose/interpret/index.js +0 -1
  1034. package/src/utils/to-expose/interpret/main.js +0 -36
  1035. package/src/utils/to-expose/interpret/md.js +0 -42
  1036. package/src/utils/to-expose/interpret/vtl.js +0 -43
  1037. package/src/utils/to-expose/state.js +0 -58
  1038. /package/{src/components/tooltip → lib/components/commons/components/variable-status}/img/edited.png +0 -0
  1039. /package/{src/components/tooltip → lib/components/commons/components/variable-status}/img/forced.png +0 -0
package/lib/index.js.map DELETED
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","sources":["../src/utils/lib/alphabet.js","../src/utils/lib/checkbox/group.js","../src/utils/lib/label-position.js","../src/utils/lib/loops/bindings.js","../src/utils/lib/loops/build-components.js","../src/constants/declarations.js","../src/constants/value-types.js","../src/constants/variable-types.js","../src/utils/lib/loops/shared.js","../src/utils/lib/memo-check.js","../src/utils/lib/options-positioning.js","../src/utils/lib/pagination/flow.js","../src/utils/to-expose/interpret/vtl.js","../src/utils/to-expose/interpret/md.js","../src/utils/to-expose/interpret/main.js","../src/utils/lib/pagination/navigation/shared.js","../src/utils/lib/prop-types/declarations.js","../src/utils/lib/prop-types/options.js","../src/utils/lib/prop-types/response.js","../src/utils/lib/prop-types/value-type.js","../src/utils/lib/prop-types/lines.js","../src/utils/lib/responses.js","../src/utils/lib/style.js","../src/utils/lib/table/roster.js","../src/utils/lib/tooltip/content.js","../src/utils/to-expose/init-questionnaire.js","../src/constants/supported-preferences.js","../src/utils/to-expose/handler.js","../src/utils/lib/tooltip/build-response.js","../node_modules/style-inject/dist/style-inject.es.js","../src/components/breadcrumb/component.js","../src/components/button/component.js","../src/utils/to-expose/state.js","../src/utils/to-expose/hook.js","../src/components/declarations/component.js","../src/components/icon/assets/radio-checked.js","../src/components/icon/assets/radio-unchecked.js","../src/components/icon/assets/checkbox-checked.js","../src/components/icon/assets/checkbox-unchecked.js","../src/components/icon/component.js","../src/components/tooltip/img/edited.png","../src/components/tooltip/img/forced.png","../src/components/tooltip/response.js","../src/components/checkbox/group.js","../src/components/checkbox/boolean.js","../src/components/declarations/wrappers/input-declarations-wrapper.js","../src/components/declarations/wrappers/list-declarations-wrapper.js","../src/components/declarations/wrappers/simple-declarations-wrapper.js","../src/components/checkbox/one.js","../src/components/datepicker/component.js","../node_modules/classnames/index.js","../src/components/dropdown/commons/actions.js","../src/components/dropdown/commons/components/panel.js","../src/components/dropdown/commons/components/closed.icon.js","../src/components/dropdown/commons/components/opened.icon.js","../src/components/dropdown/commons/components/label.js","../src/components/dropdown/commons/cleaner-callbacks.js","../src/components/dropdown/commons/components/dropdown-field.js","../src/components/dropdown/commons/components/dropdown-container.js","../src/components/dropdown/commons/event-callbacks/on-keydown-callback.js","../src/components/dropdown/commons/event-callbacks/on-mousedown-callback.js","../src/components/dropdown/commons/components/dropdown.js","../src/components/dropdown/commons/tools/index.js","../src/components/dropdown/dropdown-edit/prefix-tools.js","../src/components/dropdown/commons/reducer.js","../src/components/dropdown/dropdown-simple/option.js","../src/components/dropdown/dropdown-simple/dropdown.js","../src/components/dropdown/dropdown-simple/index.js","../src/components/dropdown/dropdown-edit/option.js","../src/components/dropdown/dropdown-edit/cross.icon.js","../src/components/dropdown/dropdown-edit/icone.js","../src/components/dropdown/dropdown-edit/dropdown-edit.js","../src/components/dropdown/commons/children-to-option.js","../src/components/dropdown/dropdown-edit/index.js","../src/components/dropdown/component.js","../src/components/input/input.js","../src/components/input/input-number.js","../src/components/filter-description/component.js","../src/components/progress-bar/component.js","../src/components/radio/component.js","../src/components/loop/component.js","../src/components/loop/paginated-component.js","../src/components/loop-constructor/wrapper/build-components.js","../src/components/loop-constructor/wrapper/body-component.js","../src/components/loop-constructor/wrapper/component.js","../src/components/loop-constructor/block/component.js","../src/components/loop/wrapper.js","../src/components/loop-constructor/roster/component.js","../src/components/sequence/component.js","../src/components/subsequence/component.js","../src/components/suggester/component.js","../src/components/textarea/component.js","../src/components/table/table.js"],"sourcesContent":["export const getAlphabet = () => 'abcdefghijklmnopqrstuvwxyz'.split('');\r\n","export const responseToClean = (response) => (preferences) => {\r\n\tif (!preferences || !response.values) return false;\r\n\tconst { values } = response;\r\n\tif (!values) return false;\r\n\tconst cutedValues = {\r\n\t\t...values,\r\n\t\t[preferences[preferences.length - 1]]: null,\r\n\t};\r\n\treturn Object.values(cutedValues).filter((v) => v !== null).length === 0;\r\n};\r\n\r\nexport const responsesToClean = (responses) => (preferences) => (key) => {\r\n\tif (!preferences || !key) return false;\r\n\tconst values = responses.find((r) => r.response.name === key).response.values;\r\n\tif (!values) return false;\r\n\tconst cutedValues = {\r\n\t\t...values,\r\n\t\t[preferences[preferences.length - 1]]: null,\r\n\t};\r\n\treturn Object.values(cutedValues).filter((v) => v !== null).length === 0;\r\n};\r\n","export const getLabelPositionClass = (position) => {\r\n\tswitch (position) {\r\n\t\tcase 'LEFT':\r\n\t\t\treturn 'label-left';\r\n\t\tcase 'BOTTOM':\r\n\t\t\treturn 'label-bottom';\r\n\t\tcase 'RIGHT':\r\n\t\t\treturn 'label-right';\r\n\t\tdefault:\r\n\t\t\treturn 'label-top';\r\n\t}\r\n};\r\n","export const buildBindingsForDeeperComponents = (index) => (bindings) =>\r\n\tbindings\r\n\t\t? Object.entries(bindings).reduce((_, [name, value]) => {\r\n\t\t\t\tif (Array.isArray(value)) return { ..._, [name]: value[index] || null };\r\n\t\t\t\treturn { ..._, [name]: value };\r\n\t\t }, {})\r\n\t\t: {};\r\n\r\nconst getDefaultDatasetStructure = (name, value) => ({\r\n\t[name]: { dataStructure: {}, dataPoints: { [name]: value } },\r\n});\r\n\r\nexport const buildVectorialBindings = (bindings) =>\r\n\tbindings\r\n\t\t? Object.entries(bindings).reduce((_, [name, value]) => {\r\n\t\t\t\tif (Array.isArray(value))\r\n\t\t\t\t\treturn {\r\n\t\t\t\t\t\t..._,\r\n\t\t\t\t\t\t...getDefaultDatasetStructure(name, value),\r\n\t\t\t\t\t};\r\n\t\t\t\treturn { ..._, [name]: value };\r\n\t\t }, {})\r\n\t\t: {};\r\n\r\nexport const displayLoop = (dependencyList) => (bindings) => {\r\n\tif (!Array.isArray(dependencyList) || !bindings) return false;\r\n\tif (\r\n\t\tdependencyList.length === 1 &&\r\n\t\t(parseInt(bindings[dependencyList[0]], 10) ||\r\n\t\t\tbindings[dependencyList[0]] === null)\r\n\t)\r\n\t\treturn true;\r\n\treturn !(\r\n\t\tdependencyList\r\n\t\t\t.map((iv) =>\r\n\t\t\t\tArray.isArray(bindings[iv][0])\r\n\t\t\t\t\t? bindings[iv][0].flat()[0]\r\n\t\t\t\t\t: bindings[iv][0]\r\n\t\t\t)\r\n\t\t\t.filter((v) => v).length === 0\r\n\t);\r\n};\r\n\r\nexport const displayLoopQuestion = (dependencyList) => (bindings) => {\r\n\tif (!Array.isArray(dependencyList) || !bindings) return false;\r\n\treturn !(\r\n\t\tdependencyList\r\n\t\t\t.map((iv) =>\r\n\t\t\t\tArray.isArray(bindings[iv]) ? bindings[iv].flat()[0] : bindings[iv]\r\n\t\t\t)\r\n\t\t\t.filter((v) => v).length === 0\r\n\t);\r\n};\r\n","export const buildLoopComponents = (iterations) => (components) => {\r\n\tconst toFlat = [...Array(iterations).keys()].map((rowNumber) =>\r\n\t\tbuildFlatten(rowNumber)(components).map((c) => ({ ...c, rowNumber }))\r\n\t);\r\n\treturn toFlat.flat();\r\n};\r\n\r\nconst buildFlatten = (i) => (parentComponents) =>\r\n\tparentComponents.map((component) => {\r\n\t\tconst { response, responses, components } = component;\r\n\t\tif (response) return buildFlattenResponse(i)(component);\r\n\t\telse if (responses)\r\n\t\t\treturn {\r\n\t\t\t\t...component,\r\n\t\t\t\tresponses: responses.map((r) => buildFlattenResponse(i)(r)),\r\n\t\t\t};\r\n\t\telse if (components)\r\n\t\t\treturn { ...component, components: buildFlatten(i)(components) };\r\n\t\telse return component;\r\n\t});\r\n\r\nconst buildFlattenResponse = (i) => (component) => {\r\n\tconst { response, ...other } = component;\r\n\tconst { name, values } = response;\r\n\tconst newValues = Object.entries(values).reduce(\r\n\t\t(acc, [key, value]) => ({ ...acc, [key]: value ? value[i] : null }),\r\n\t\t{}\r\n\t);\r\n\treturn {\r\n\t\t...other,\r\n\t\tresponse: { name, values: newValues },\r\n\t};\r\n};\r\n","// Declaration position\r\n\r\nexport const BEFORE_QUESTION_TEXT = 'BEFORE_QUESTION_TEXT';\r\nexport const AFTER_QUESTION_TEXT = 'AFTER_QUESTION_TEXT';\r\nexport const DETACHABLE = 'DETACHABLE';\r\n\r\n// Declaration types\r\n\r\nexport const INSTRUCTION = 'INSTRUCTION';\r\nexport const COMMENT = 'COMMENT';\r\nexport const HELP = 'HELP';\r\nexport const WARNING = 'WARNING';\r\nexport const MESSAGE_FILTER = 'MESSAGE_FILTER';\r\nexport const STATEMENT = 'STATEMENT';\r\n","export const PREVIOUS = 'PREVIOUS';\r\nexport const COLLECTED = 'COLLECTED';\r\nexport const FORCED = 'FORCED';\r\nexport const EDITED = 'EDITED';\r\nexport const INPUTED = 'INPUTED';\r\n","export const EXTERNAL = 'EXTERNAL';\r\nexport const CALCULATED = 'CALCULATED';\r\n// Already define in value-types\r\n//export const COLLECTED = 'COLLECTED';\r\n","import * as C from '../../../constants';\r\n\r\nexport const getLoopConstructorInitLines = (components) =>\r\n\tArray.isArray(components)\r\n\t\t? components.reduce(\r\n\t\t\t\t(_, c) =>\r\n\t\t\t\t\tc.response &&\r\n\t\t\t\t\tc.response.values[C.COLLECTED] &&\r\n\t\t\t\t\tc.response.values[C.COLLECTED].length > _\r\n\t\t\t\t\t\t? c.response.values[C.COLLECTED].length\r\n\t\t\t\t\t\t: _,\r\n\t\t\t\t0\r\n\t\t )\r\n\t\t: 0;\r\n\r\nexport const getInvolvedVariables = (parentComponents) =>\r\n\tArray.isArray(parentComponents)\r\n\t\t? parentComponents\r\n\t\t\t\t.reduce((_, c) => {\r\n\t\t\t\t\tconst { response, responses, components, depth } = c;\r\n\t\t\t\t\tif (response && response.name)\r\n\t\t\t\t\t\treturn [..._, { name: response.name, depth }];\r\n\t\t\t\t\tif (responses || components)\r\n\t\t\t\t\t\treturn [..._, getInvolvedVariables(responses || components)];\r\n\t\t\t\t\treturn _;\r\n\t\t\t\t}, [])\r\n\t\t\t\t.flat()\r\n\t\t: [];\r\n\r\nexport const lastLoopChildLineIsEmpty = (bindings) => (involvedVariables) =>\r\n\tbindings && involvedVariables\r\n\t\t? involvedVariables\r\n\t\t\t\t.map((iv) => iv.name)\r\n\t\t\t\t.filter((iv) => bindings[iv] && bindings[iv][bindings[iv].length - 1])\r\n\t\t\t\t.length === 0\r\n\t\t: true;\r\n\r\nexport const buildEmptyValue = (depth) => {\r\n\tif (!Number(depth) || depth <= 2) return null;\r\n\treturn new Array(depth - 2)\r\n\t\t.fill(null)\r\n\t\t.reduce((acc) => new Array(1).fill(acc), null);\r\n};\r\n","import isEqual from 'lodash.isequal';\r\n\r\nconst VarsHasBeenUpdated = (prevProps, props) => {\r\n\tconst { response: oldR, responses: oldRs, cells: oldC } = prevProps;\r\n\tconst { response: newR, responses: newRs, cells: newC } = props;\r\n\tif (!newR && !newRs && !newC) return true;\r\n\treturn !(\r\n\t\t(newR && isEqual(oldR, newR)) ||\r\n\t\t(newRs && isEqual(oldRs, newRs)) ||\r\n\t\t(newC && isEqual(oldC, newC))\r\n\t);\r\n};\r\nexport const areEqual = (prevProps, props) => {\r\n\tif (VarsHasBeenUpdated(prevProps, props)) return false;\r\n\tconst { bindingDependencies } = props;\r\n\tif (Array.isArray(bindingDependencies) && bindingDependencies.length > 0) {\r\n\t\tconst { bindings: oldB } = prevProps;\r\n\t\tconst { bindings: newB } = props;\r\n\t\treturn !bindingDependencies\r\n\t\t\t.map((d) => isEqual(oldB[d], newB[d]))\r\n\t\t\t.includes(false);\r\n\t}\r\n\treturn true;\r\n};\r\n","export const getItemsPositioningClass = positioning => {\r\n\tswitch (positioning) {\r\n\t\tcase 'HORIZONTAL':\r\n\t\t\treturn 'horizontal-options';\r\n\t\tcase 'VERTICAL':\r\n\t\tdefault:\r\n\t\t\treturn '';\r\n\t}\r\n};\r\n","export const FLOW_NEXT = 'FLOW_NEXT';\r\nexport const FLOW_PREVIOUS = 'FLOW_PREVIOUS';\r\n","import { interpret } from '@inseefr/trevas';\r\n\r\nexport const interpretVTL = (bindings, doNotReplaceNullBindings) => (\r\n\texpression\r\n) => {\r\n\ttry {\r\n\t\tconst VTLExpr = interpret(\r\n\t\t\texpression,\r\n\t\t\tdoNotReplaceNullBindings ? bindings : replaceNullBindings(bindings)\r\n\t\t);\r\n\t\tif (!VTLExpr) return expression;\r\n\t\treturn VTLExpr;\r\n\t} catch (e) {\r\n\t\treturn expression;\r\n\t}\r\n};\r\n\r\nexport const interpretVTLWithEmptyDefault = (\r\n\tbindings,\r\n\tdoNotReplaceNullBindings\r\n) => (expression) => {\r\n\ttry {\r\n\t\tconst VTLExpr = interpret(\r\n\t\t\texpression,\r\n\t\t\tdoNotReplaceNullBindings ? bindings : replaceNullBindings(bindings, '')\r\n\t\t);\r\n\t\tif (!VTLExpr) return '';\r\n\t\treturn VTLExpr;\r\n\t} catch (e) {\r\n\t\treturn '';\r\n\t}\r\n};\r\n\r\nexport const replaceNullBindings = (bindings, defaultValue) =>\r\n\tbindings\r\n\t\t? Object.entries(bindings).reduce(\r\n\t\t\t\t(acc, [key, value]) => ({\r\n\t\t\t\t\t...acc,\r\n\t\t\t\t\t[key]: value === null ? defaultValue || key : value,\r\n\t\t\t\t}),\r\n\t\t\t\t{}\r\n\t\t )\r\n\t\t: {};\r\n","import React from 'react';\r\nimport ReactMarkdown from 'react-markdown';\r\nimport ReactTooltip from 'react-tooltip';\r\n\r\nconst Link = (props) => {\r\n\tconst { href, children, title } = props;\r\n\tif (href.trim().startsWith('http'))\r\n\t\treturn (\r\n\t\t\t<a href={href} target=\"_blank\" rel=\"noreferrer noopener\">\r\n\t\t\t\t{children}\r\n\t\t\t</a>\r\n\t\t);\r\n\treturn (\r\n\t\t<span className=\"link-md\">\r\n\t\t\t<span\r\n\t\t\t\tdata-for={`${children}-tooltip`}\r\n\t\t\t\tdata-tip={title}\r\n\t\t\t\tdata-event=\"click focus\"\r\n\t\t\t\tdata-multiline\r\n\t\t\t\tclassName=\"field-md\"\r\n\t\t\t>\r\n\t\t\t\t{children}\r\n\t\t\t</span>\r\n\t\t\t<ReactTooltip\r\n\t\t\t\tid={`${children}-tooltip`}\r\n\t\t\t\tclassName=\"tooltip-content\"\r\n\t\t\t\tplace=\"bottom\"\r\n\t\t\t\teffect=\"solid\"\r\n\t\t\t\tglobalEventOff=\"click\"\r\n\t\t\t/>\r\n\t\t</span>\r\n\t);\r\n};\r\n\r\nconst renderers = {\r\n\tparagraph: (props) => <p style={{ margin: '0' }}>{props.children}</p>,\r\n\tlink: Link,\r\n};\r\n\r\nexport const interpretMD = (expression) => (\r\n\t<ReactMarkdown source={expression} renderers={renderers} />\r\n);\r\n","import { interpretVTL, interpretVTLWithEmptyDefault } from './vtl';\r\nimport { interpretMD } from './md';\r\n\r\nexport const interpret = (features) => (bindings, doNotReplaceNullBindings) => (\r\n\texpression\r\n) => {\r\n\tif (!expression) return '';\r\n\tif (!Array.isArray(features)) return expression;\r\n\tif (features.includes('VTL')) {\r\n\t\tconst vtl = interpretVTL(bindings, doNotReplaceNullBindings)(expression);\r\n\t\tif (features.includes('MD')) {\r\n\t\t\treturn interpretMD(vtl);\r\n\t\t}\r\n\t\treturn vtl;\r\n\t}\r\n\treturn expression;\r\n};\r\n\r\nexport const interpretWithEmptyDefault = (features) => (\r\n\tbindings,\r\n\tdoNotReplaceNullBindings\r\n) => (expression) => {\r\n\tif (!expression) return '';\r\n\tif (!Array.isArray(features)) return '';\r\n\tif (features.includes('VTL')) {\r\n\t\tconst vtl = interpretVTLWithEmptyDefault(\r\n\t\t\tbindings,\r\n\t\t\tdoNotReplaceNullBindings\r\n\t\t)(expression);\r\n\t\tif (features.includes('MD')) {\r\n\t\t\treturn interpretMD(vtl);\r\n\t\t}\r\n\t\treturn vtl;\r\n\t}\r\n\treturn '';\r\n};\r\n","import { interpret } from '../../../to-expose/interpret';\r\nimport { FLOW_NEXT, FLOW_PREVIOUS } from '../flow';\r\n\r\nexport const getPage = ({\r\n\tcomponents,\r\n\tbindings,\r\n\tcurrentPage,\r\n\tfeatures,\r\n\tdepth,\r\n\tflow,\r\n\tmanagement,\r\n}) => {\r\n\tif (currentPage.includes('#')) {\r\n\t\tconst {\r\n\t\t\tcurrentRootPage,\r\n\t\t\tcurrentComponentIndex,\r\n\t\t\tcurrentIteration,\r\n\t\t} = splitPage(currentPage, depth);\r\n\r\n\t\tif (flow === FLOW_NEXT)\r\n\t\t\treturn `${currentRootPage}.${\r\n\t\t\t\tcurrentComponentIndex + 1\r\n\t\t\t}#${currentIteration}`;\r\n\t\tif (flow === FLOW_PREVIOUS)\r\n\t\t\treturn `${currentRootPage}.${\r\n\t\t\t\tcurrentComponentIndex - 1\r\n\t\t\t}#${currentIteration}`;\r\n\t\tthrow new Error(`Unknown flow type: ${flow}`);\r\n\t} else {\r\n\t\tconst newPage = getSimpleNewPage({\r\n\t\t\tcomponents,\r\n\t\t\tbindings,\r\n\t\t\tcurrentPage,\r\n\t\t\tfeatures,\r\n\t\t\tflow,\r\n\t\t\tmanagement,\r\n\t\t});\r\n\t\treturn `${parseInt(newPage, 10)}`;\r\n\t}\r\n};\r\n\r\nconst getSimpleNewPage = ({\r\n\tcomponents,\r\n\tbindings,\r\n\tcurrentPage,\r\n\tfeatures,\r\n\tflow,\r\n\tmanagement,\r\n}) =>\r\n\t(flow === FLOW_PREVIOUS ? components.slice().reverse() : components)\r\n\t\t.filter(({ page }) => {\r\n\t\t\tswitch (flow) {\r\n\t\t\t\tcase FLOW_NEXT:\r\n\t\t\t\t\treturn parseInt(page, 10) > parseInt(currentPage, 10);\r\n\t\t\t\tcase FLOW_PREVIOUS:\r\n\t\t\t\t\treturn parseInt(page, 10) < parseInt(currentPage, 10);\r\n\t\t\t\tdefault:\r\n\t\t\t\t\tthrow new Error('Unknown type');\r\n\t\t\t}\r\n\t\t})\r\n\t\t.reduce((acc, { conditionFilter, page }) => {\r\n\t\t\tif (acc) return acc;\r\n\t\t\tif (management) return page;\r\n\t\t\tif (\r\n\t\t\t\t!conditionFilter ||\r\n\t\t\t\tinterpret(features)(bindings, true)(conditionFilter) === 'normal'\r\n\t\t\t)\r\n\t\t\t\treturn page;\r\n\t\t\telse return null;\r\n\t\t}, null);\r\n\r\nexport const splitPage = (currentPage, depth) => {\r\n\tconst currentPageWithDepth = depth\r\n\t\t? currentPage\r\n\t\t\t\t.split('.')\r\n\t\t\t\t.slice(0, depth + 1) // scoped\r\n\t\t\t\t.join('.')\r\n\t\t: currentPage;\r\n\r\n\tconst currentPageWithoutIteration = currentPageWithDepth\r\n\t\t.split('#')\r\n\t\t.slice(0, -1)\r\n\t\t.join('#');\r\n\r\n\tconst currentPageWithoutAnyIteration = currentPageWithDepth\r\n\t\t.split('.')\r\n\t\t.map((e) => e.split('#')[0])\r\n\t\t.join('.');\r\n\r\n\tconst currentRootPage = currentPageWithoutIteration\r\n\t\t.split('.')\r\n\t\t.slice(0, -1)\r\n\t\t.join('.');\r\n\r\n\tconst [currentComponentIndex, currentIteration] = currentPageWithDepth\r\n\t\t.split('.')\r\n\t\t.pop()\r\n\t\t.split('#')\r\n\t\t.map((c) => parseInt(c, 10));\r\n\r\n\treturn {\r\n\t\tcurrentRootPage,\r\n\t\tcurrentComponentIndex,\r\n\t\tcurrentIteration,\r\n\t\tcurrentPageWithoutAnyIteration,\r\n\t};\r\n};\r\n","import PropTypes from 'prop-types';\r\nimport * as C from '../../../constants';\r\n\r\nexport default PropTypes.arrayOf(\r\n\tPropTypes.shape({\r\n\t\tid: PropTypes.string.isRequired,\r\n\t\tdeclarationType: PropTypes.oneOf([\r\n\t\t\tC.INSTRUCTION,\r\n\t\t\tC.COMMENT,\r\n\t\t\tC.HELP,\r\n\t\t\tC.WARNING,\r\n\t\t\tC.MESSAGE_FILTER,\r\n\t\t\tC.STATEMENT,\r\n\t\t]),\r\n\t\tposition: PropTypes.oneOf([\r\n\t\t\tC.BEFORE_QUESTION_TEXT,\r\n\t\t\tC.AFTER_QUESTION_TEXT,\r\n\t\t\tC.DETACHABLE,\r\n\t\t]),\r\n\t\tlabel: PropTypes.string.isRequired,\r\n\t})\r\n).isRequired;\r\n","import PropTypes from 'prop-types';\r\n\r\nexport default PropTypes.arrayOf(\r\n\tPropTypes.shape({\r\n\t\tlabel: PropTypes.string.isRequired,\r\n\t\tvalue: PropTypes.string.isRequired,\r\n\t})\r\n);\r\n","import PropTypes from 'prop-types';\r\n\r\nexport default PropTypes.shape({\r\n\tname: PropTypes.string,\r\n\tvalues: PropTypes.shape({}),\r\n});\r\n","import PropTypes from 'prop-types';\r\n\r\nexport default PropTypes.oneOf([\r\n\t'COLLECTED',\r\n\t'PREVIOUS',\r\n\t'FORCED',\r\n\t'EDITED',\r\n\t'INPUTED',\r\n]);\r\n","import PropTypes from 'prop-types';\r\n\r\nexport default PropTypes.shape({\r\n\tmin: PropTypes.number,\r\n\tmax: PropTypes.number,\r\n});\r\n","export const getResponseName = (response) => (response && response.name) || '';\r\n\r\nexport const getResponseByPreference = (preferences) => (response) => {\r\n\tif (!(response && response.values)) return null;\r\n\treturn preferences.reduce((acc, p) => {\r\n\t\tconst value = response.values[p];\r\n\t\treturn value !== null ? value : acc;\r\n\t}, null);\r\n};\r\n","import camelCase from 'lodash.camelcase';\r\n\r\nexport const buildStyleObject = obj =>\r\n\tobj\r\n\t\t? Object.entries(obj).reduce((_, [key, value]) => {\r\n\t\t\t\tif (key.startsWith(':')) _[key] = buildStyleObject(value);\r\n\t\t\t\telse _[camelCase(key)] = value;\r\n\t\t\t\treturn _;\r\n\t\t }, {})\r\n\t\t: {};\r\n","const isResponseEmpty = (response) =>\r\n\tObject.values(response.values).filter((v) => v !== null).length === 0;\r\n\r\nexport const getRosterInitLines = (cells) =>\r\n\tArray.isArray(cells)\r\n\t\t? cells\r\n\t\t\t\t.filter(\r\n\t\t\t\t\t(line) =>\r\n\t\t\t\t\t\tline.filter(({ response }) => !response).length !== line.length\r\n\t\t\t\t)\r\n\t\t\t\t.reduce(\r\n\t\t\t\t\t(_, line) => [\r\n\t\t\t\t\t\t..._,\r\n\t\t\t\t\t\tline.reduce((__, { response, label }) => {\r\n\t\t\t\t\t\t\tif (label) return true;\r\n\t\t\t\t\t\t\tif (__ || !response) return __;\r\n\t\t\t\t\t\t\treturn !isResponseEmpty(response);\r\n\t\t\t\t\t\t}, false),\r\n\t\t\t\t\t],\r\n\t\t\t\t\t[]\r\n\t\t\t\t)\r\n\t\t\t\t.filter((b) => b).length\r\n\t\t: 0;\r\n","import * as C from '../../../constants';\r\n\r\nexport const buildTooltip = (response) => {\r\n\tif (\r\n\t\t!response ||\r\n\t\t!response.values ||\r\n\t\tObject.keys(response.values).length === 0\r\n\t)\r\n\t\treturn {};\r\n\tconst { values } = response;\r\n\tconst edited = values[C.EDITED];\r\n\tconst forced = values[C.FORCED];\r\n\tconst collected = values[C.COLLECTED];\r\n\r\n\tif (edited === '' && !has(forced) && !has(collected)) return {};\r\n\r\n\tif (has(edited)) {\r\n\t\tif (!has(forced))\r\n\t\t\treturn {\r\n\t\t\t\tcontent: [\r\n\t\t\t\t\t{\r\n\t\t\t\t\t\tkey: 'Brute',\r\n\t\t\t\t\t\tvalue: collected || ' - ',\r\n\t\t\t\t\t},\r\n\t\t\t\t],\r\n\t\t\t\timgName: 'editedImg',\r\n\t\t\t};\r\n\t\treturn {\r\n\t\t\tcontent: [\r\n\t\t\t\t{\r\n\t\t\t\t\tkey: 'Brute',\r\n\t\t\t\t\tvalue: collected || ' - ',\r\n\t\t\t\t},\r\n\t\t\t\t{\r\n\t\t\t\t\tkey: 'Correction automatique',\r\n\t\t\t\t\tvalue: forced,\r\n\t\t\t\t},\r\n\t\t\t],\r\n\t\t\timgName: 'editedImg',\r\n\t\t};\r\n\t}\r\n\tif (has(forced))\r\n\t\treturn {\r\n\t\t\tcontent: [\r\n\t\t\t\t{\r\n\t\t\t\t\tkey: 'Brute',\r\n\t\t\t\t\tvalue: collected || ' - ',\r\n\t\t\t\t},\r\n\t\t\t],\r\n\t\t\timgName: 'forcedImg',\r\n\t\t};\r\n\treturn {};\r\n};\r\n\r\nconst has = (status) => ![null, undefined].includes(status);\r\n","import * as C from '../../constants';\r\nimport { interpret } from './interpret';\r\n\r\nconst INITIAL_DEPTH = 1;\r\n\r\nexport const mergeQuestionnaireAndData = (questionnaire) => (data) => {\r\n\tif (!questionnaire || !questionnaire.components) return {};\r\n\tif (questionnaire.components.length === 0) return questionnaire;\r\n\tconst { components, variables, ...props } = questionnaire;\r\n\r\n\tconst vars = buildVars(data || {})(variables);\r\n\tconst filledComponents = buildFilledComponents(vars[C.COLLECTED])(components)(\r\n\t\tINITIAL_DEPTH\r\n\t);\r\n\r\n\treturn { ...props, components: filledComponents, variables: vars };\r\n};\r\n\r\nconst buildVars = (data) => (variables) => {\r\n\tif (!Array.isArray(variables)) return {};\r\n\tconst { COLLECTED: collectedData } = data;\r\n\tconst collected = variables\r\n\t\t.filter(({ variableType }) => variableType === C.COLLECTED)\r\n\t\t.reduce((acc, { values, name, componentRef }) => {\r\n\t\t\tconst d = (collectedData && collectedData[name]) || {};\r\n\t\t\treturn {\r\n\t\t\t\t...acc,\r\n\t\t\t\t[name]: {\r\n\t\t\t\t\tcomponentRef,\r\n\t\t\t\t\tvalues: { ...values, ...d },\r\n\t\t\t\t},\r\n\t\t\t};\r\n\t\t}, {});\r\n\tconst EXTERNAL = variables\r\n\t\t.filter(({ variableType }) => variableType === C.EXTERNAL)\r\n\t\t.reduce((_, v) => ({ ..._, ...initExternalVariable(v)(data) }), {});\r\n\treturn {\r\n\t\tEXTERNAL,\r\n\t\tCOLLECTED: collected,\r\n\t\tCALCULATED: variables\r\n\t\t\t.filter(({ variableType }) => variableType === C.CALCULATED)\r\n\t\t\t.reduce(\r\n\t\t\t\t(_, v) => ({\r\n\t\t\t\t\t..._,\r\n\t\t\t\t\t...initCalculatedVariable(v)({ ...EXTERNAL, ...collected }),\r\n\t\t\t\t}),\r\n\t\t\t\t{}\r\n\t\t\t),\r\n\t};\r\n};\r\n\r\nconst buildFilledComponents = (vars) => (components) => (depth) =>\r\n\tcomponents.map((c) => {\r\n\t\tconst component = { depth, ...c };\r\n\t\treturn buildFilledComponent(vars)(component);\r\n\t});\r\n\r\nexport const buildFilledComponent = (vars) => (component) => {\r\n\tif (component.response) return buildResponseComponent(vars)(component);\r\n\telse if (component.responses) return buildResponsesComponent(vars)(component);\r\n\telse if (component.cells) return buildCellsComponent(vars)(component);\r\n\telse if (component.components)\r\n\t\treturn buildComponentsComponent(vars)(component);\r\n\treturn component;\r\n};\r\n\r\nexport const buildResponseComponent = (vars) => (c) => ({\r\n\t...c,\r\n\tresponse: {\r\n\t\tname: c.response.name,\r\n\t\tvalues: vars[c.response.name].values,\r\n\t},\r\n});\r\n\r\nexport const buildResponsesComponent = (vars) => (c) => {\r\n\tconst { responses, ...rest } = c;\r\n\tconst filledResponses = responses.map((r) => buildResponseComponent(vars)(r));\r\n\treturn { ...rest, responses: filledResponses };\r\n};\r\n\r\nexport const buildCellsComponent = (vars) => (c) => {\r\n\tconst { cells, depth, ...rest } = c;\r\n\tconst filledCells = cells.map((row) =>\r\n\t\tbuildFilledComponents(vars)(row)(depth)\r\n\t);\r\n\treturn { ...rest, depth, cells: filledCells };\r\n};\r\n\r\nexport const buildComponentsComponent = (vars) => (component) => {\r\n\tconst { components, depth, ...rest } = component;\r\n\tconst filledComponents = buildFilledComponents(vars)(components)(depth + 1);\r\n\treturn { ...rest, depth, components: filledComponents };\r\n};\r\n\r\nconst initExternalVariable = ({ name }) => (data) => ({\r\n\t[name]: (data && data.EXTERNAL && data.EXTERNAL[name]) || null,\r\n});\r\n\r\nconst initCalculatedVariable = ({ name, expression }) => (data) => {\r\n\tconst bindings = Object.entries(data).reduce(\r\n\t\t(acc, [key, value]) => ({\r\n\t\t\t...acc,\r\n\t\t\t[key]:\r\n\t\t\t\ttypeof value === 'string' || value === null\r\n\t\t\t\t\t? value\r\n\t\t\t\t\t: value.values[C.COLLECTED],\r\n\t\t}),\r\n\t\t{}\r\n\t);\r\n\treturn {\r\n\t\t[name]: {\r\n\t\t\texpression,\r\n\t\t\tvalue: interpret(['VTL'])(bindings)(expression),\r\n\t\t},\r\n\t};\r\n};\r\n","import * as C from './value-types';\r\n\r\n// ORDERED ARRAY\r\nexport const supportedPreferences = [\r\n\tC.PREVIOUS,\r\n\tC.COLLECTED,\r\n\tC.FORCED,\r\n\tC.EDITED,\r\n\tC.INPUTED,\r\n];\r\n","import * as C from '../../constants';\r\nimport { buildFilledComponent } from './init-questionnaire';\r\nimport { supportedPreferences } from '../../constants/supported-preferences';\r\nimport { interpret } from './interpret';\r\nimport { buildVectorialBindings } from '../lib/loops/bindings';\r\n\r\nexport const updateQuestionnaire = (valueType) => (questionnaire) => (\r\n\tpreferences\r\n) => (updatedValues) => {\r\n\tif (\r\n\t\t!supportedPreferences.includes(valueType) ||\r\n\t\tpreferences.length === 0 ||\r\n\t\t!updatedValues\r\n\t)\r\n\t\treturn questionnaire;\r\n\tconst { variables, components, ...other } = questionnaire;\r\n\tif (!components || components.length === 0) return questionnaire;\r\n\tconst varsAndRefs = Object.entries(updatedValues).reduce(\r\n\t\t(acc, [key, value]) => {\r\n\t\t\tconst {\r\n\t\t\t\tnewVariables: { COLLECTED, ...otherVars },\r\n\t\t\t\trefs,\r\n\t\t\t} = acc;\r\n\t\t\tconst { componentRef, values } = COLLECTED[key];\r\n\t\t\tconst updated = {\r\n\t\t\t\tcomponentRef,\r\n\t\t\t\tvalues: {\r\n\t\t\t\t\t...values,\r\n\t\t\t\t\t[valueType]: buildNewValue(preferences)(valueType)(values)(value),\r\n\t\t\t\t},\r\n\t\t\t};\r\n\t\t\tconst newCollected = { ...COLLECTED, [key]: updated };\r\n\t\t\treturn {\r\n\t\t\t\tnewVariables: {\r\n\t\t\t\t\t...otherVars,\r\n\t\t\t\t\tCOLLECTED: newCollected,\r\n\t\t\t\t},\r\n\t\t\t\trefs: [...refs, componentRef],\r\n\t\t\t};\r\n\t\t},\r\n\t\t{ newVariables: variables, refs: [] }\r\n\t);\r\n\tconst { newVariables, refs: r } = varsAndRefs;\r\n\tconst newVariablesWithCalculated =\r\n\t\tvalueType === C.COLLECTED ? addCalculatedVars(newVariables) : newVariables;\r\n\tconst collectedVars = newVariables[C.COLLECTED];\r\n\tconst newComponents = components.map((c) => {\r\n\t\tif (r.includes(c.id)) return buildFilledComponent(collectedVars)(c);\r\n\t\treturn c;\r\n\t});\r\n\treturn {\r\n\t\t...other,\r\n\t\tvariables: newVariablesWithCalculated,\r\n\t\tcomponents: newComponents,\r\n\t};\r\n};\r\n\r\nexport const buildNewValue = (preferences) => (valueType) => (oldValues) => (\r\n\tvalue\r\n) => {\r\n\tif (preferences.length === 1) return value;\r\n\tconst index = preferences.indexOf(valueType);\r\n\tif (index < 1) return value;\r\n\tconst valuesByPreference = preferences\r\n\t\t.slice(0, index)\r\n\t\t.map((p) => oldValues[p])\r\n\t\t.filter((v) => v !== null);\r\n\tconst lastValue = valuesByPreference[valuesByPreference.length - 1];\r\n\treturn lastValue === value ? null : value;\r\n};\r\n\r\nconst addCalculatedVars = (variables) => {\r\n\tif (\r\n\t\t!variables[C.CALCULATED] ||\r\n\t\tObject.keys(variables[C.CALCULATED]).length === 0\r\n\t)\r\n\t\treturn variables;\r\n\tconst { COLLECTED, EXTERNAL, CALCULATED } = variables;\r\n\tconst collected = Object.entries(COLLECTED).reduce(\r\n\t\t(acc, [key, { values }]) => ({ ...acc, [key]: values[C.COLLECTED] }),\r\n\t\t{}\r\n\t);\r\n\tconst bindings = buildVectorialBindings({ ...collected, ...EXTERNAL });\r\n\tconst calculated = Object.entries(CALCULATED).reduce(\r\n\t\t(acc, [key, { expression }]) => {\r\n\t\t\t// Assume that a calculated variable has a first level scope\r\n\t\t\t// If we need to handle deep calculated variables, we have to\r\n\t\t\t// update the shape of bindings, grouping vars by type\r\n\t\t\tconst res = interpret(['VTL'])(bindings)(expression);\r\n\t\t\tconst value = Array.isArray(res) ? res.join(',') : res;\r\n\t\t\treturn {\r\n\t\t\t\t...acc,\r\n\t\t\t\t[key]: { expression, value },\r\n\t\t\t};\r\n\t\t},\r\n\t\t{}\r\n\t);\r\n\treturn { EXTERNAL, COLLECTED, CALCULATED: calculated };\r\n};\r\n","import { buildNewValue } from '../../to-expose/handler';\r\nimport * as C from '../../../constants/value-types';\r\n\r\nexport const buildMultiTooltipResponse = (options) => (response) => {\r\n\tif (!response || Object.keys(response).length === 0 || !options) return {};\r\n\tconst { name, values } = response;\r\n\tconst newValues = Object.entries(values).reduce(\r\n\t\t(acc, [k, v]) =>\r\n\t\t\tv === null\r\n\t\t\t\t? { ...acc, [k]: v }\r\n\t\t\t\t: { ...acc, [k]: options.find((o) => o.value === v).label },\r\n\t\t{}\r\n\t);\r\n\treturn { name, values: newValues };\r\n};\r\n\r\nexport const buildBooleanTooltipResponse = (response) => {\r\n\tif (!response || Object.keys(response).length === 0) return {};\r\n\tconst { name, values } = response;\r\n\tconst newValues = Object.entries(values).reduce(\r\n\t\t(acc, [k, v]) =>\r\n\t\t\tv === null ? { ...acc, [k]: v } : { ...acc, [k]: v ? 'Vrai' : 'Faux' },\r\n\t\t{}\r\n\t);\r\n\treturn { name, values: newValues };\r\n};\r\n\r\n/**\r\n * Assume we use this tool in management mode only\r\n */\r\nexport const buildLocalResponse = (response, value) => {\r\n\tif (!response || Object.keys(response).length === 0) return {};\r\n\tconst { name, values } = response;\r\n\tconst newValue = buildNewValue([C.COLLECTED, C.FORCED, C.EDITED])(C.EDITED)(\r\n\t\tvalues\r\n\t)(value);\r\n\treturn {\r\n\t\tname,\r\n\t\tvalues: { ...values, EDITED: newValue },\r\n\t};\r\n};\r\n","function styleInject(css, ref) {\n if ( ref === void 0 ) ref = {};\n var insertAt = ref.insertAt;\n\n if (!css || typeof document === 'undefined') { return; }\n\n var head = document.head || document.getElementsByTagName('head')[0];\n var style = document.createElement('style');\n style.type = 'text/css';\n\n if (insertAt === 'top') {\n if (head.firstChild) {\n head.insertBefore(style, head.firstChild);\n } else {\n head.appendChild(style);\n }\n } else {\n head.appendChild(style);\n }\n\n if (style.styleSheet) {\n style.styleSheet.cssText = css;\n } else {\n style.appendChild(document.createTextNode(css));\n }\n}\n\nexport default styleInject;\n","import React from 'react';\r\nimport PropTypes from 'prop-types';\r\nimport { buildStyleObject } from '../../utils/lib';\r\nimport './breadcrumb.scss';\r\n\r\nconst Breadcrumb = ({ elements, style }) => (\r\n\t<div\r\n\t\taria-label={`breadcrumb`}\r\n\t\tclassName=\"breadcrumb-lunatic\"\r\n\t\tstyle={buildStyleObject(style)}\r\n\t>\r\n\t\t{elements.map((e, i) => (\r\n\t\t\t<React.Fragment key={`breadcrumb-${e.toLowerCase()}`}>\r\n\t\t\t\t{e && (\r\n\t\t\t\t\t<span className={i !== 0 ? 'breadcrumb-element-lunatic' : undefined}>\r\n\t\t\t\t\t\t{e}\r\n\t\t\t\t\t</span>\r\n\t\t\t\t)}\r\n\t\t\t</React.Fragment>\r\n\t\t))}\r\n\t</div>\r\n);\r\n\r\nBreadcrumb.propTypes = {\r\n\telements: PropTypes.arrayOf(PropTypes.string).isRequired,\r\n\tstyle: PropTypes.object,\r\n};\r\n\r\nexport default Breadcrumb;\r\n","import React from 'react';\r\nimport PropTypes from 'prop-types';\r\nimport { buildStyleObject } from '../../utils/lib';\r\nimport './button.scss';\r\n\r\nconst Button = ({ label, value, onClick, disabled, style }) => (\r\n\t<button\r\n\t\ttype=\"button\"\r\n\t\taria-label={label || 'button'}\r\n\t\tclassName=\"button-lunatic\"\r\n\t\tstyle={buildStyleObject(style)}\r\n\t\tdisabled={disabled}\r\n\t\tonClick={onClick}\r\n\t>\r\n\t\t{value}\r\n\t</button>\r\n);\r\n\r\nButton.propTypes = {\r\n\tvalue: PropTypes.string.isRequired,\r\n\tdisabled: PropTypes.bool,\r\n\tonClick: PropTypes.func.isRequired,\r\n};\r\n\r\nexport default Button;\r\n","import * as C from '../../constants';\r\n\r\nexport const getState = (questionnaire) => {\r\n\tconst { variables } = questionnaire;\r\n\treturn {\r\n\t\t[C.CALCULATED]: getCalculatedFromVariables(variables),\r\n\t\t[C.COLLECTED]: getCollectedState(questionnaire),\r\n\t\t[C.EXTERNAL]: getExternalFromVariables(variables),\r\n\t};\r\n};\r\n\r\nexport const getCollectedState = (questionnaire) => {\r\n\tconst { variables } = questionnaire;\r\n\treturn (\r\n\t\t(variables &&\r\n\t\t\tvariables[C.COLLECTED] &&\r\n\t\t\tObject.entries(variables[C.COLLECTED]).reduce(\r\n\t\t\t\t(acc, [name, { values }]) => ({ ...acc, [name]: values }),\r\n\t\t\t\t{}\r\n\t\t\t)) ||\r\n\t\t{}\r\n\t);\r\n};\r\n\r\nconst getCalculatedFromVariables = (variables) =>\r\n\tvariables && variables[C.CALCULATED]\r\n\t\t? Object.entries(variables[C.CALCULATED]).reduce(\r\n\t\t\t\t(_, [name, { value }]) => ({ ..._, [name]: value }),\r\n\t\t\t\t{}\r\n\t\t )\r\n\t\t: {};\r\n\r\nconst getExternalFromVariables = (variables) =>\r\n\t(variables && variables[C.EXTERNAL]) || {};\r\n\r\nexport const getCollectedStateByValueType = (questionnaire) => (\r\n\tvalueType,\r\n\tdisplayNull\r\n) =>\r\n\t['PREVIOUS', 'COLLECTED', 'FORCED', 'EDITED', 'INPUTED'].includes(valueType)\r\n\t\t? Object.entries(getCollectedState(questionnaire)).reduce((_, v) => {\r\n\t\t\t\tif (displayNull || v[1][valueType] !== null)\r\n\t\t\t\t\treturn {\r\n\t\t\t\t\t\t..._,\r\n\t\t\t\t\t\t[v[0]]: v[1][valueType],\r\n\t\t\t\t\t};\r\n\t\t\t\treturn _;\r\n\t\t }, {})\r\n\t\t: {};\r\n\r\nexport const getBindings = (questionnaire) => {\r\n\tconst { variables } = questionnaire;\r\n\treturn {\r\n\t\t...getCollectedStateByValueType(questionnaire)('COLLECTED', true),\r\n\t\t...getCalculatedFromVariables(variables),\r\n\t\t...getExternalFromVariables(variables),\r\n\t};\r\n};\r\n","import { useState, useEffect, useCallback } from 'react';\r\nimport { interpret } from './interpret';\r\nimport { mergeQuestionnaireAndData } from './init-questionnaire';\r\nimport { getBindings } from './state';\r\nimport { updateQuestionnaire } from './handler';\r\nimport { getPage, FLOW_NEXT, FLOW_PREVIOUS } from '../lib';\r\nimport { COLLECTED } from '../../constants';\r\n\r\nconst customFilterPagination = ({ page }, pagination, currentPage) => {\r\n\treturn pagination ? currentPage.split('.')[0] === page : true;\r\n};\r\n\r\nconst filterComponents = (\r\n\tcomponents,\r\n\tmanagement,\r\n\tbindings,\r\n\tfeatures,\r\n\tcurrentPage,\r\n\tpagination\r\n) => {\r\n\tif (management && !pagination) return components;\r\n\tif (management && pagination)\r\n\t\treturn components.filter((c) =>\r\n\t\t\tcustomFilterPagination(c, pagination, currentPage)\r\n\t\t);\r\n\r\n\tif (!pagination)\r\n\t\treturn components.filter(\r\n\t\t\t({ conditionFilter }) =>\r\n\t\t\t\t!conditionFilter ||\r\n\t\t\t\tinterpret(features)(bindings, true)(conditionFilter) === 'normal'\r\n\t\t);\r\n\r\n\treturn components\r\n\t\t.filter((c) => customFilterPagination(c, pagination, currentPage))\r\n\t\t.filter(\r\n\t\t\t({ conditionFilter }) =>\r\n\t\t\t\t!conditionFilter ||\r\n\t\t\t\tinterpret(features)(bindings, true)(conditionFilter) === 'normal'\r\n\t\t);\r\n};\r\n\r\nconst useLunatic = (\r\n\tsource,\r\n\tdata,\r\n\t{\r\n\t\tsavingType = COLLECTED,\r\n\t\tpreferences = [COLLECTED],\r\n\t\tfeatures = ['VTL'],\r\n\t\tmanagement = false,\r\n\t\tpagination = false,\r\n\t\tinitialPage = '1',\r\n\t}\r\n) => {\r\n\tconst [questionnaire, setQuestionnaire] = useState(\r\n\t\tmergeQuestionnaireAndData(source)(data || {})\r\n\t);\r\n\tconst [todo, setTodo] = useState({});\r\n\tconst [page, setPage] = useState(initialPage);\r\n\tconst [flow, setFlow] = useState(FLOW_NEXT);\r\n\r\n\t// TODO: dynamic because of filters (kind of last accessible page)\r\n\tconst { maxPage } = source;\r\n\r\n\tconst featuresWithoutMD = features.filter((f) => f !== 'MD');\r\n\r\n\tconst isFirstPage = page === '1';\r\n\tconst isLastPage = page === maxPage;\r\n\r\n\tconst goNext = () => {\r\n\t\tif (!isLastPage) {\r\n\t\t\tif (flow !== FLOW_NEXT) {\r\n\t\t\t\tsetFlow(FLOW_NEXT);\r\n\t\t\t}\r\n\t\t\tconst nextPage = getPage({\r\n\t\t\t\tcomponents: questionnaire.components,\r\n\t\t\t\tbindings,\r\n\t\t\t\tcurrentPage: page,\r\n\t\t\t\tfeatures: featuresWithoutMD,\r\n\t\t\t\tflow: FLOW_NEXT,\r\n\t\t\t\tmanagement,\r\n\t\t\t});\r\n\t\t\tsetPage(nextPage);\r\n\t\t}\r\n\t};\r\n\r\n\tconst goPrevious = () => {\r\n\t\tif (!isFirstPage) {\r\n\t\t\tif (flow !== FLOW_PREVIOUS) {\r\n\t\t\t\tsetFlow(FLOW_PREVIOUS);\r\n\t\t\t}\r\n\t\t\tconst previousPage = getPage({\r\n\t\t\t\tcomponents: questionnaire.components,\r\n\t\t\t\tbindings,\r\n\t\t\t\tcurrentPage: page,\r\n\t\t\t\tfeatures: featuresWithoutMD,\r\n\t\t\t\tflow: FLOW_PREVIOUS,\r\n\t\t\t\tmanagement,\r\n\t\t\t});\r\n\t\t\tsetPage(previousPage);\r\n\t\t}\r\n\t};\r\n\r\n\tconst handleChange = useCallback((updatedValue) => {\r\n\t\tsetTodo(updatedValue);\r\n\t}, []);\r\n\r\n\t// Assume we only want to handle source update\r\n\tuseEffect(() => {\r\n\t\tsetQuestionnaire(mergeQuestionnaireAndData(source)(data));\r\n\t\t// eslint-disable-next-line react-hooks/exhaustive-deps\r\n\t}, [source]);\r\n\r\n\tuseEffect(() => {\r\n\t\tif (Object.keys(todo).length !== 0) {\r\n\t\t\tconst newQ = updateQuestionnaire(savingType)(questionnaire)(preferences)(\r\n\t\t\t\ttodo\r\n\t\t\t);\r\n\t\t\tsetQuestionnaire(newQ);\r\n\t\t\tsetTodo({});\r\n\t\t}\r\n\t}, [todo, preferences, questionnaire, savingType, features, management]);\r\n\r\n\tconst bindings = getBindings(questionnaire);\r\n\r\n\tconst components = filterComponents(\r\n\t\tquestionnaire.components,\r\n\t\tmanagement,\r\n\t\tbindings,\r\n\t\tfeaturesWithoutMD,\r\n\t\tpage,\r\n\t\tpagination\r\n\t);\r\n\r\n\treturn {\r\n\t\tquestionnaire,\r\n\t\thandleChange,\r\n\t\tcomponents,\r\n\t\tbindings,\r\n\t\tpagination: {\r\n\t\t\tpage,\r\n\t\t\tsetPage,\r\n\t\t\tmaxPage,\r\n\t\t\tgoNext,\r\n\t\t\tgoPrevious,\r\n\t\t\tisFirstPage,\r\n\t\t\tisLastPage,\r\n\t\t\tflow,\r\n\t\t},\r\n\t};\r\n};\r\n\r\nexport default useLunatic;\r\n","import React from 'react';\r\nimport PropTypes from 'prop-types';\r\nimport * as U from '../../utils/lib';\r\nimport { interpret } from '../../utils/to-expose';\r\nimport './declarations.scss';\r\n\r\nconst Declarations = ({ id, type, declarations, features, bindings }) => {\r\n\tconst filtered = declarations.filter(({ position }) => position === type);\r\n\treturn (\r\n\t\t<div id={`declarations-${id}-${type}`} className=\"declarations-lunatic\">\r\n\t\t\t{filtered.map(({ id: idD, label, declarationType }) => (\r\n\t\t\t\t<div\r\n\t\t\t\t\tkey={`${idD}`}\r\n\t\t\t\t\tclassName={`declaration-lunatic declaration-${declarationType.toLowerCase()}`}\r\n\t\t\t\t>\r\n\t\t\t\t\t{interpret(features)(bindings)(label)}\r\n\t\t\t\t</div>\r\n\t\t\t))}\r\n\t\t</div>\r\n\t);\r\n};\r\n\r\nDeclarations.defaultProps = {\r\n\ttype: 'AFTER_QUESTION_TEXT',\r\n\tdeclarations: [],\r\n\tfeatures: [],\r\n\tbindings: {},\r\n};\r\n\r\nDeclarations.propTypes = {\r\n\tid: PropTypes.string.isRequired,\r\n\ttype: PropTypes.string,\r\n\tdeclarations: U.declarationsPropTypes,\r\n\tfeatures: PropTypes.arrayOf(PropTypes.string),\r\n\tbindings: PropTypes.object,\r\n};\r\n\r\nexport default Declarations;\r\n","import React from 'react';\r\n\r\nconst RadioChecked = () => (\r\n\t<svg\r\n\t\txmlns=\"http://www.w3.org/2000/svg\"\r\n\t\twidth=\"24\"\r\n\t\theight=\"24\"\r\n\t\tviewBox=\"0 0 24 24\"\r\n\t\tfill=\"rgb(74,118,168)\"\r\n\t>\r\n\t\t<path d=\"M12 7c-2.76 0-5 2.24-5 5s2.24 5 5 5 5-2.24 5-5-2.24-5-5-5zm0-5C6.48 2 2 6.48 2 12s4.48 10 10 10 10-4.48 10-10S17.52 2 12 2zm0 18c-4.42 0-8-3.58-8-8s3.58-8 8-8 8 3.58 8 8-3.58 8-8 8z\" />\r\n\t\t<path d=\"M0 0h24v24H0z\" fill=\"none\" />\r\n\t</svg>\r\n);\r\n\r\nexport default RadioChecked;\r\n","import React from 'react';\r\n\r\nconst RadioUnchecked = () => (\r\n\t<svg\r\n\t\txmlns=\"http://www.w3.org/2000/svg\"\r\n\t\twidth=\"24\"\r\n\t\theight=\"24\"\r\n\t\tviewBox=\"0 0 24 24\"\r\n\t\tfill=\"rgb(74,118,168)\"\r\n\t>\r\n\t\t<path d=\"M12 2C6.48 2 2 6.48 2 12s4.48 10 10 10 10-4.48 10-10S17.52 2 12 2zm0 18c-4.42 0-8-3.58-8-8s3.58-8 8-8 8 3.58 8 8-3.58 8-8 8z\" />\r\n\t\t<path d=\"M0 0h24v24H0z\" fill=\"none\" />\r\n\t</svg>\r\n);\r\n\r\nexport default RadioUnchecked;\r\n","import React from 'react';\r\n\r\nconst CheckboxChecked = () => (\r\n\t<svg\r\n\t\txmlns=\"http://www.w3.org/2000/svg\"\r\n\t\twidth=\"24\"\r\n\t\theight=\"24\"\r\n\t\tviewBox=\"0 0 24 24\"\r\n\t\tfill=\"rgb(74,118,168)\"\r\n\t>\r\n\t\t<path d=\"M0 0h24v24H0z\" fill=\"none\" />\r\n\t\t<path d=\"M19 3H5c-1.11 0-2 .9-2 2v14c0 1.1.89 2 2 2h14c1.11 0 2-.9 2-2V5c0-1.1-.89-2-2-2zm-9 14l-5-5 1.41-1.41L10 14.17l7.59-7.59L19 8l-9 9z\" />\r\n\t</svg>\r\n);\r\n\r\nexport default CheckboxChecked;\r\n","import React from 'react';\r\n\r\nconst CheckboxUnchecked = () => (\r\n\t<svg\r\n\t\txmlns=\"http://www.w3.org/2000/svg\"\r\n\t\twidth=\"24\"\r\n\t\theight=\"24\"\r\n\t\tviewBox=\"0 0 24 24\"\r\n\t\tfill=\"rgb(74,118,168)\"\r\n\t>\r\n\t\t<path d=\"M19 5v14H5V5h14m0-2H5c-1.1 0-2 .9-2 2v14c0 1.1.9 2 2 2h14c1.1 0 2-.9 2-2V5c0-1.1-.9-2-2-2z\" />\r\n\t\t<path d=\"M0 0h24v24H0z\" fill=\"none\" />\r\n\t</svg>\r\n);\r\n\r\nexport default CheckboxUnchecked;\r\n","import React from 'react';\r\nimport {\r\n\tCheckboxChecked,\r\n\tCheckboxUnchecked,\r\n\tRadioChecked,\r\n\tRadioUnchecked,\r\n} from './assets';\r\nimport './icon.scss';\r\n\r\nconst Content = ({ type, checked }) => {\r\n\tif (type === 'radio') {\r\n\t\tif (checked) return <RadioChecked />;\r\n\t\treturn <RadioUnchecked />;\r\n\t}\r\n\tif (type === 'checkbox') {\r\n\t\tif (checked) return <CheckboxChecked />;\r\n\t\treturn <CheckboxUnchecked />;\r\n\t}\r\n\treturn null;\r\n};\r\n\r\nconst Icon = ({ type, checked, disabled, children }) => (\r\n\t<>\r\n\t\t<span className={`list-icon-wrapper`}>\r\n\t\t\t<span className={`list-icon ${disabled ? 'list-icon-disabled' : ''}`}>\r\n\t\t\t\t<Content type={type} checked={checked} />\r\n\t\t\t</span>\r\n\t\t\t{children}\r\n\t\t</span>\r\n\t</>\r\n);\r\n\r\nexport default Icon;\r\n","var img = new Image(); img.src = 'data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABkAAAAZCAMAAAGEMEXHAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAABjUExURf///8Xn9XrH6Va44zKp3Eiy4GW+5b7j9Kja8Bme2CSj2p7W7vH5/UGv34XM69vw+czq9iCh2ZbT7bfg82W94+33/Njt92zB5k+14XPE6On2+4vN6sLl9Mno9i+n3Cum2wAAAIfAWccAAAAhdFJOU///////////////////////////////////////////AJ/B0CEAAAAJcEhZcwAADsQAAA7EAZUrDhsAAAEVSURBVChTVVIBcsMgDFODm2JKIFnTbvv/Ryfb0F11Z4ptWYBSYL8wFBk34A7kLwDCUIbBfkcIHppsM2tIVy61exRoQ0LFaa2NhLSiP7l/MA7no6rsdd+UI5SINQSvZKVsBXSB7N4plnFRyihxxrFdtxeep5qwYRFZx1ZK6735IMrmJSQOZR9sXKWZSKeaVdQVfftOirdG8kHjhXlFxZ0ZWezpwrclo4Q69ZUWZj28BPyobmbCQPYxR6HdE53leLyBpGIGEELHP7GGtB/DIyds+mathZ/BEBefyNSRMJxDwRggcXbMlSlGsPM9uWHpgKnRgPB/zBCd/yStLB3z1hK6wO+8zn7o+7sx47v/s9oOdgdoLAD8AWlNC8M57XWRAAAAAElFTkSuQmCC'; export default img;","var img = new Image(); img.src = 'data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABwAAAAZCAMAAAFiGY6DAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAABUUExURf///6zc8Uiy4PH5/d/x+b7j9Bme2DKp3CSj2la442W+5YnN61O34nrH6Z7W7tDr9yCh2bfg8+33/HPE6EGv35bT7U+14czq9nDD56XZ7+n2+wAAAJWny4EAAAAcdFJOU////////////////////////////////////wAXsuLXAAAACXBIWXMAAA7EAAAOxAGVKw4bAAABKElEQVQoU2VSC3bDIAwzJRM0hCb0ldfd/6STDFm7TgnEX2GbGHExQ4PZoc0scT0MgC/6xkqZ+tC0x6y4E4zlU5VAs8I2Wrv0/PL/xzih4gKsCJVB1RZKsvXYrJntG7gXrM/ddgZ3JPDtBRHFSQYG1Ylgy9cUhStwdaGKO6tAdX0wCQi5tUyzK6oYYNHB+aDDBXhHcjtu09uHKgfTYGTUXMRDtCOU7HUU8ShH1CdWdj1FoS/3k+4vyB3Se6KV8tv6Bamm2Z3d+GWvuNmel4WC7A9+OUcV9AKr5PHEJHIxavjui4mOisf0/B7uiqwTrp9/gisa0wuycLTs3zlI2yl7QpTvDR8FlXy3jWq3hqBYjYpXPy/A7Lmu33GIMR1r3z6OPnFngYFXbfYDTw4LkdQNpj4AAAAASUVORK5CYII='; export default img;","import React, { useState, useEffect } from 'react';\r\nimport PropTypes from 'prop-types';\r\nimport ReactTooltip from 'react-tooltip';\r\nimport * as U from '../../utils/lib';\r\nimport * as img from './img';\r\nimport './tooltip.scss';\r\n\r\nconst TooltipResponse = ({ id, response }) => {\r\n\tconst [tooltipElements, setTooltipElements] = useState(() =>\r\n\t\tU.buildTooltip(response)\r\n\t);\r\n\r\n\tuseEffect(() => {\r\n\t\tsetTooltipElements(U.buildTooltip(response));\r\n\t}, [response]);\r\n\r\n\tconst { content, imgName } = tooltipElements;\r\n\r\n\tif (!content) return null;\r\n\r\n\tconst text = content\r\n\t\t.map(({ key, value }) => `${key} : ${value}<br />`)\r\n\t\t.join('');\r\n\r\n\treturn (\r\n\t\t<div className=\"tooltip-lunatic\">\r\n\t\t\t<span\r\n\t\t\t\tdata-for={`${id}-management-tooltip`}\r\n\t\t\t\tdata-tip={text}\r\n\t\t\t\tdata-multiline\r\n\t\t\t>\r\n\t\t\t\t<img id={id} alt=\"img-tooltip\" src={img[imgName].src || img[imgName]} />\r\n\t\t\t</span>\r\n\t\t\t<ReactTooltip\r\n\t\t\t\tid={`${id}-management-tooltip`}\r\n\t\t\t\tclassName=\"tooltip-text\"\r\n\t\t\t\tplace=\"left\"\r\n\t\t\t/>\r\n\t\t</div>\r\n\t);\r\n};\r\n\r\nTooltipResponse.defaultProps = {\r\n\tresponse: {},\r\n};\r\n\r\nTooltipResponse.propTypes = {\r\n\tid: PropTypes.string,\r\n\tresponse: U.responsePropTypes,\r\n};\r\n\r\nexport default TooltipResponse;\r\n","import React, { useState, useRef, useEffect } from 'react';\r\nimport PropTypes from 'prop-types';\r\nimport debounce from 'lodash.debounce';\r\nimport Declarations from '../declarations';\r\nimport Icon from '../icon';\r\nimport { TooltipResponse } from '../tooltip';\r\nimport * as U from '../../utils/lib';\r\nimport * as C from '../../constants';\r\nimport { interpret } from '../../utils/to-expose';\r\nimport './checkbox.scss';\r\n\r\nconst CheckboxGroup = ({\r\n\tid,\r\n\tlabel,\r\n\tpreferences,\r\n\tresponses,\r\n\thandleChange: propsHandleChange,\r\n\tdisabled,\r\n\tfocused,\r\n\tkeyboardSelection,\r\n\tpositioning,\r\n\tdeclarations,\r\n\tfeatures,\r\n\tbindings,\r\n\tmanagement,\r\n\tstyle,\r\n}) => {\r\n\tconst { fieldsetStyle, modalityStyle } = style;\r\n\tconst inputRef = useRef();\r\n\r\n\tconst [values, setValues] = useState(() =>\r\n\t\tresponses.map(({ response }) =>\r\n\t\t\tU.getResponseByPreference(preferences)(response)\r\n\t\t)\r\n\t);\r\n\r\n\tconst handleChange = debounce((obj) => propsHandleChange(obj), 50);\r\n\r\n\tconst specificHandleChange = (e) => {\r\n\t\tconst [key, value] = Object.entries(e)[0];\r\n\t\tif (value === false && U.responsesToClean(responses)(preferences)(key))\r\n\t\t\thandleChange({ [key]: null });\r\n\t\telse handleChange(e);\r\n\t};\r\n\r\n\tuseEffect(() => {\r\n\t\tif (focused) inputRef.current.focus();\r\n\t}, [focused]);\r\n\r\n\tconst checkedArray = [];\r\n\r\n\treturn (\r\n\t\t<>\r\n\t\t\t<Declarations\r\n\t\t\t\tid={id}\r\n\t\t\t\ttype={C.BEFORE_QUESTION_TEXT}\r\n\t\t\t\tdeclarations={declarations}\r\n\t\t\t\tfeatures={features}\r\n\t\t\t\tbindings={bindings}\r\n\t\t\t/>\r\n\t\t\t<fieldset\r\n\t\t\t\tkey={`checkbox-${id}`}\r\n\t\t\t\tclassName=\"checkbox-group-list\"\r\n\t\t\t\tstyle={U.buildStyleObject(fieldsetStyle)}\r\n\t\t\t>\r\n\t\t\t\t<legend>{interpret(features)(bindings)(label)}</legend>\r\n\t\t\t\t<Declarations\r\n\t\t\t\t\tid={id}\r\n\t\t\t\t\ttype={C.AFTER_QUESTION_TEXT}\r\n\t\t\t\t\tdeclarations={declarations}\r\n\t\t\t\t\tfeatures={features}\r\n\t\t\t\t\tbindings={bindings}\r\n\t\t\t\t/>\r\n\t\t\t\t{responses.map(({ id: modId, label: modLabel, response }, i) => {\r\n\t\t\t\t\tconst checked = values[i];\r\n\t\t\t\t\tif (checked) checkedArray.push(modId);\r\n\t\t\t\t\tconst toRef =\r\n\t\t\t\t\t\ti === 0 || (checkedArray[0] && checkedArray[0] === modId);\r\n\t\t\t\t\tconst interpretedLabel = interpret(features)(bindings)(modLabel);\r\n\t\t\t\t\treturn (\r\n\t\t\t\t\t\t<div\r\n\t\t\t\t\t\t\tclassName={`${U.getItemsPositioningClass(positioning)}`}\r\n\t\t\t\t\t\t\tkey={`checkbox-${id}-${modId}`}\r\n\t\t\t\t\t\t>\r\n\t\t\t\t\t\t\t<div className=\"field-container\">\r\n\t\t\t\t\t\t\t\t<div\r\n\t\t\t\t\t\t\t\t\tclassName={`${management ? 'field-with-tooltip' : 'field'}`}\r\n\t\t\t\t\t\t\t\t>\r\n\t\t\t\t\t\t\t\t\t<div\r\n\t\t\t\t\t\t\t\t\t\tclassName={`checkbox-modality ${\r\n\t\t\t\t\t\t\t\t\t\t\tchecked ? 'content-checked' : ''\r\n\t\t\t\t\t\t\t\t\t\t}`}\r\n\t\t\t\t\t\t\t\t\t>\r\n\t\t\t\t\t\t\t\t\t\t<Icon type=\"checkbox\" checked={checked} disabled={disabled}>\r\n\t\t\t\t\t\t\t\t\t\t\t<input\r\n\t\t\t\t\t\t\t\t\t\t\t\ttype=\"checkbox\"\r\n\t\t\t\t\t\t\t\t\t\t\t\tid={`checkbox-${id}-${modId}`}\r\n\t\t\t\t\t\t\t\t\t\t\t\tref={toRef ? inputRef : null}\r\n\t\t\t\t\t\t\t\t\t\t\t\tkey={`checkbox-${id}-${modId}`}\r\n\t\t\t\t\t\t\t\t\t\t\t\taria-labelledby={`input-label-${id}-${modId}`}\r\n\t\t\t\t\t\t\t\t\t\t\t\tclassName=\"checkbox-lunatic\"\r\n\t\t\t\t\t\t\t\t\t\t\t\tchecked={checked || false}\r\n\t\t\t\t\t\t\t\t\t\t\t\tdisabled={disabled}\r\n\t\t\t\t\t\t\t\t\t\t\t\tonChange={({ target: { checked } }) => {\r\n\t\t\t\t\t\t\t\t\t\t\t\t\tsetValues(\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\tvalues.map((v, j) => (i === j ? checked : v))\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t);\r\n\t\t\t\t\t\t\t\t\t\t\t\t\tspecificHandleChange({\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t[U.getResponseName(response)]: checked,\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t});\r\n\t\t\t\t\t\t\t\t\t\t\t\t}}\r\n\t\t\t\t\t\t\t\t\t\t\t/>\r\n\t\t\t\t\t\t\t\t\t\t\t<label\r\n\t\t\t\t\t\t\t\t\t\t\t\thtmlFor={`checkbox-${id}-${modId}`}\r\n\t\t\t\t\t\t\t\t\t\t\t\tid={`input-label-${id}-${modId}`}\r\n\t\t\t\t\t\t\t\t\t\t\t\tstyle={checked ? U.buildStyleObject(modalityStyle) : {}}\r\n\t\t\t\t\t\t\t\t\t\t\t\tclassName=\"modality-label\"\r\n\t\t\t\t\t\t\t\t\t\t\t>\r\n\t\t\t\t\t\t\t\t\t\t\t\t{keyboardSelection && (\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t<span className=\"code-modality\">\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t{responses.length < 10\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t? i + 1\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t: U.getAlphabet()[i].toUpperCase()}\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t</span>\r\n\t\t\t\t\t\t\t\t\t\t\t\t)}\r\n\t\t\t\t\t\t\t\t\t\t\t\t{interpretedLabel}\r\n\t\t\t\t\t\t\t\t\t\t\t</label>\r\n\t\t\t\t\t\t\t\t\t\t</Icon>\r\n\t\t\t\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t\t\t{management && (\r\n\t\t\t\t\t\t\t\t\t<div className=\"tooltip\">\r\n\t\t\t\t\t\t\t\t\t\t<TooltipResponse\r\n\t\t\t\t\t\t\t\t\t\t\tid={id}\r\n\t\t\t\t\t\t\t\t\t\t\tresponse={U.buildBooleanTooltipResponse(response)}\r\n\t\t\t\t\t\t\t\t\t\t/>\r\n\t\t\t\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t\t\t)}\r\n\t\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t</div>\r\n\t\t\t\t\t);\r\n\t\t\t\t})}\r\n\t\t\t</fieldset>\r\n\t\t\t<Declarations\r\n\t\t\t\tid={id}\r\n\t\t\t\ttype={C.DETACHABLE}\r\n\t\t\t\tdeclarations={declarations}\r\n\t\t\t\tfeatures={features}\r\n\t\t\t\tbindings={bindings}\r\n\t\t\t/>\r\n\t\t</>\r\n\t);\r\n};\r\n\r\nCheckboxGroup.defaultProps = {\r\n\tlabel: '',\r\n\tpreferences: ['COLLECTED'],\r\n\tresponses: [],\r\n\tdisabled: false,\r\n\tfocused: false,\r\n\tkeyboardSelection: false,\r\n\tpositioning: 'DEFAULT',\r\n\tdeclarations: [],\r\n\tfeatures: [],\r\n\tbindings: {},\r\n\tmanagement: false,\r\n\tstyle: { fieldsetStyle: {}, modalityStyle: {} },\r\n};\r\n\r\nCheckboxGroup.propTypes = {\r\n\tid: PropTypes.string.isRequired,\r\n\tlabel: PropTypes.string,\r\n\tpreferences: PropTypes.arrayOf(U.valueTypePropTypes),\r\n\tresponse: U.responsePropTypes,\r\n\thandleChange: PropTypes.func.isRequired,\r\n\tdisabled: PropTypes.bool,\r\n\tfocused: PropTypes.bool,\r\n\tkeyboardSelection: PropTypes.bool,\r\n\tpositioning: PropTypes.oneOf(['DEFAULT', 'HORIZONTAL', 'VERTICAL']),\r\n\tdeclarations: U.declarationsPropTypes,\r\n\tfeatures: PropTypes.arrayOf(PropTypes.string),\r\n\tbindings: PropTypes.object,\r\n\tmanagement: PropTypes.bool,\r\n\tstyle: PropTypes.object,\r\n};\r\n\r\nexport default React.memo(CheckboxGroup, U.areEqual);\r\n","import React, { useState, useEffect, useRef } from 'react';\r\nimport PropTypes from 'prop-types';\r\nimport debounce from 'lodash.debounce';\r\nimport Declarations from '../declarations';\r\nimport Icon from '../icon';\r\nimport { TooltipResponse } from '../tooltip';\r\nimport * as U from '../../utils/lib';\r\nimport * as C from '../../constants';\r\nimport { interpret } from '../../utils/to-expose';\r\nimport './checkbox.scss';\r\n\r\nconst CheckboxBoolean = ({\r\n\tid,\r\n\tlabel,\r\n\tpreferences,\r\n\tresponse,\r\n\thandleChange: propsHandleChange,\r\n\tdisabled,\r\n\tpositioning,\r\n\tfocused,\r\n\tdeclarations,\r\n\tfeatures,\r\n\tbindings,\r\n\tmanagement,\r\n\tstyle,\r\n}) => {\r\n\tconst inputRef = useRef();\r\n\r\n\tconst [value, setValue] = useState(() =>\r\n\t\tU.getResponseByPreference(preferences)(response)\r\n\t);\r\n\r\n\tconst handleChange = debounce((obj) => propsHandleChange(obj), 50);\r\n\r\n\tconst specificHandleChange = (e) => {\r\n\t\tconst [key, value] = Object.entries(e)[0];\r\n\t\tif (value === false && U.responseToClean(response)(preferences))\r\n\t\t\thandleChange({ [key]: null });\r\n\t\telse handleChange(e);\r\n\t};\r\n\r\n\tuseEffect(() => {\r\n\t\tif (focused) inputRef.current.focus();\r\n\t}, [focused]);\r\n\r\n\tconst interpretedLabel = interpret(features)(bindings)(label);\r\n\r\n\tconst isVertical = positioning === 'VERTICAL';\r\n\tconst isHorizontal = positioning === 'HORIZONTAL';\r\n\tconst input = (\r\n\t\t<>\r\n\t\t\t<Icon type=\"checkbox\" checked={value} disabled={disabled}>\r\n\t\t\t\t<input\r\n\t\t\t\t\ttype=\"checkbox\"\r\n\t\t\t\t\tid={`checkbox-boolean-${id}`}\r\n\t\t\t\t\tref={inputRef}\r\n\t\t\t\t\ttitle={interpretedLabel ? interpretedLabel : 'empty-label'}\r\n\t\t\t\t\tclassName={`checkbox-boolean-lunatic`}\r\n\t\t\t\t\tstyle={U.buildStyleObject(style)}\r\n\t\t\t\t\tchecked={value || false}\r\n\t\t\t\t\tdisabled={disabled}\r\n\t\t\t\t\tonChange={({ target: { checked } }) => {\r\n\t\t\t\t\t\tsetValue(checked);\r\n\t\t\t\t\t\tspecificHandleChange({\r\n\t\t\t\t\t\t\t[U.getResponseName(response)]: checked,\r\n\t\t\t\t\t\t});\r\n\t\t\t\t\t}}\r\n\t\t\t\t/>\r\n\t\t\t\t{interpretedLabel && (\r\n\t\t\t\t\t<label htmlFor={`checkbox-boolean-${id}`}>\r\n\t\t\t\t\t\t{isHorizontal ? interpretedLabel : ''}\r\n\t\t\t\t\t</label>\r\n\t\t\t\t)}\r\n\t\t\t</Icon>\r\n\t\t</>\r\n\t);\r\n\treturn (\r\n\t\t<div key={`checkbox-boolean-${id}`} className={`checkbox-boolean-modality`}>\r\n\t\t\t<Declarations\r\n\t\t\t\tid={id}\r\n\t\t\t\ttype={C.BEFORE_QUESTION_TEXT}\r\n\t\t\t\tdeclarations={declarations}\r\n\t\t\t\tfeatures={features}\r\n\t\t\t\tbindings={bindings}\r\n\t\t\t/>\r\n\t\t\t{label && !isHorizontal && (\r\n\t\t\t\t<label htmlFor={`checkbox-boolean-${id}`}>\r\n\t\t\t\t\t{interpret(features)(bindings)(label)}\r\n\t\t\t\t</label>\r\n\t\t\t)}\r\n\t\t\t<Declarations\r\n\t\t\t\tid={id}\r\n\t\t\t\ttype={C.AFTER_QUESTION_TEXT}\r\n\t\t\t\tdeclarations={declarations}\r\n\t\t\t\tfeatures={features}\r\n\t\t\t\tbindings={bindings}\r\n\t\t\t/>\r\n\t\t\t<div className=\"field-container\">\r\n\t\t\t\t<div className={`${management ? 'field-with-tooltip' : 'field'}`}>\r\n\t\t\t\t\t{isVertical ? <div>{input}</div> : input}\r\n\t\t\t\t</div>\r\n\t\t\t\t{management && (\r\n\t\t\t\t\t<div className=\"tooltip\">\r\n\t\t\t\t\t\t<TooltipResponse\r\n\t\t\t\t\t\t\tid={id}\r\n\t\t\t\t\t\t\tresponse={U.buildBooleanTooltipResponse(response)}\r\n\t\t\t\t\t\t/>\r\n\t\t\t\t\t</div>\r\n\t\t\t\t)}\r\n\t\t\t</div>\r\n\t\t\t<Declarations\r\n\t\t\t\tid={id}\r\n\t\t\t\ttype={C.DETACHABLE}\r\n\t\t\t\tdeclarations={declarations}\r\n\t\t\t\tfeatures={features}\r\n\t\t\t\tbindings={bindings}\r\n\t\t\t/>\r\n\t\t</div>\r\n\t);\r\n};\r\n\r\nCheckboxBoolean.defaultProps = {\r\n\tlabel: '',\r\n\tpreferences: ['COLLECTED'],\r\n\tresponse: {},\r\n\tdisabled: false,\r\n\tpositioning: 'DEFAULT',\r\n\tfocused: false,\r\n\tdeclarations: [],\r\n\tfeatures: [],\r\n\tbindings: {},\r\n\tmanagement: false,\r\n\tstyle: {},\r\n};\r\n\r\nCheckboxBoolean.propTypes = {\r\n\tid: PropTypes.string.isRequired,\r\n\tlabel: PropTypes.string,\r\n\tpreferences: PropTypes.arrayOf(U.valueTypePropTypes),\r\n\tresponse: U.responsePropTypes,\r\n\thandleChange: PropTypes.func.isRequired,\r\n\tdisabled: PropTypes.bool,\r\n\tpositioning: PropTypes.oneOf(['DEFAULT', 'HORIZONTAL', 'VERTICAL']),\r\n\tfocused: PropTypes.bool,\r\n\tdeclarations: U.declarationsPropTypes,\r\n\tfeatures: PropTypes.arrayOf(PropTypes.string),\r\n\tbindings: PropTypes.object,\r\n\tmanagement: PropTypes.bool,\r\n\tstyle: PropTypes.object,\r\n};\r\n\r\nexport default React.memo(CheckboxBoolean, U.areEqual);\r\n","import React, { useState, useEffect, useRef } from 'react';\r\nimport PropTypes from 'prop-types';\r\nimport Declarations from '../';\r\nimport { TooltipResponse } from '../../tooltip';\r\nimport * as U from '../../../utils/lib';\r\nimport * as C from '../../../constants';\r\nimport { interpret } from '../../../utils/to-expose';\r\n\r\nconst InputDeclarationsWrapper = ({\r\n\tid,\r\n\tlabel,\r\n\tpreferences,\r\n\tresponse,\r\n\tplaceholder,\r\n\thandleChange,\r\n\tmaxLength,\r\n\treadOnly,\r\n\tdisabled,\r\n\tautoComplete,\r\n\tlabelPosition,\r\n\tmandatory,\r\n\tdeclarations,\r\n\tfeatures,\r\n\tbindings,\r\n\tfocused,\r\n\tmanagement,\r\n\tstyle,\r\n\ttype,\r\n\troleType,\r\n\tmin,\r\n\tmax,\r\n\tdecimals,\r\n\tunit,\r\n\tunitPosition,\r\n\tvalidators,\r\n\tisInputNumber,\r\n}) => {\r\n\tconst inputRef = useRef();\r\n\r\n\tconst [value, setValue] = useState(() =>\r\n\t\tU.getResponseByPreference(preferences)(response)\r\n\t);\r\n\r\n\tconst [messagesError, setMessagesError] = useState(\r\n\t\tvalidators.map((v) => v(value)).filter((m) => m !== undefined)\r\n\t);\r\n\r\n\tuseEffect(() => {\r\n\t\tif (focused) inputRef.current.focus();\r\n\t}, [focused]);\r\n\r\n\t// Assume we only want to handle enable external updates\r\n\t// Don't need to check all value changes\r\n\tuseEffect(() => {\r\n\t\tif (U.getResponseByPreference(preferences)(response) !== value)\r\n\t\t\tsetValue(U.getResponseByPreference(preferences)(response));\r\n\t\t// eslint-disable-next-line react-hooks/exhaustive-deps\r\n\t}, [response, preferences]);\r\n\r\n\tconst validate = (v) => {\r\n\t\tsetMessagesError(\r\n\t\t\tvalidators.map((f) => f(v)).filter((m) => m !== undefined)\r\n\t\t);\r\n\t};\r\n\r\n\tuseEffect(() => {\r\n\t\tif (isInputNumber) {\r\n\t\t\tsetMessagesError(\r\n\t\t\t\tvalidators.map((v) => v(value)).filter((m) => m !== undefined)\r\n\t\t\t);\r\n\t\t}\r\n\t}, [value, min, max, validators, isInputNumber]);\r\n\r\n\tconst handleChangeOnBlur = () => {\r\n\t\thandleChange({\r\n\t\t\t[U.getResponseName(response)]: value,\r\n\t\t});\r\n\t};\r\n\r\n\tconst Component = roleType === 'textarea' ? 'textarea' : 'input';\r\n\r\n\treturn (\r\n\t\t<>\r\n\t\t\t<Declarations\r\n\t\t\t\tid={id}\r\n\t\t\t\ttype={C.BEFORE_QUESTION_TEXT}\r\n\t\t\t\tdeclarations={declarations}\r\n\t\t\t\tfeatures={features}\r\n\t\t\t\tbindings={bindings}\r\n\t\t\t/>\r\n\t\t\t<div className={U.getLabelPositionClass(labelPosition)}>\r\n\t\t\t\t{label && (\r\n\t\t\t\t\t<label\r\n\t\t\t\t\t\thtmlFor={`${roleType}-${id}`}\r\n\t\t\t\t\t\tid={`${roleType}-label-${id}`}\r\n\t\t\t\t\t\tclassName={`${mandatory ? 'mandatory' : ''}`}\r\n\t\t\t\t\t>\r\n\t\t\t\t\t\t{interpret(features)(bindings)(label)}\r\n\t\t\t\t\t\t{isInputNumber &&\r\n\t\t\t\t\t\t\tunit &&\r\n\t\t\t\t\t\t\t['DEFAULT', 'BEFORE'].includes(unitPosition) && (\r\n\t\t\t\t\t\t\t\t<span className=\"unit\">{` (${unit})`}</span>\r\n\t\t\t\t\t\t\t)}\r\n\t\t\t\t\t</label>\r\n\t\t\t\t)}\r\n\t\t\t\t<Declarations\r\n\t\t\t\t\tid={id}\r\n\t\t\t\t\ttype={C.AFTER_QUESTION_TEXT}\r\n\t\t\t\t\tdeclarations={declarations}\r\n\t\t\t\t\tfeatures={features}\r\n\t\t\t\t\tbindings={bindings}\r\n\t\t\t\t/>\r\n\t\t\t\t<div className=\"field-container\">\r\n\t\t\t\t\t<div className={`${management ? 'field-with-tooltip' : 'field'}`}>\r\n\t\t\t\t\t\t<Component\r\n\t\t\t\t\t\t\ttype={type}\r\n\t\t\t\t\t\t\tid={`${roleType}-${id}`}\r\n\t\t\t\t\t\t\tref={inputRef}\r\n\t\t\t\t\t\t\tvalue={value || ''}\r\n\t\t\t\t\t\t\tmin={min}\r\n\t\t\t\t\t\t\tmax={max}\r\n\t\t\t\t\t\t\tstep={decimals ? `${Math.pow(10, -decimals)}` : '0'}\r\n\t\t\t\t\t\t\tplaceholder={placeholder}\r\n\t\t\t\t\t\t\tautoComplete={autoComplete ? 'on' : 'off'}\r\n\t\t\t\t\t\t\tclassName={`${roleType}-lunatic ${\r\n\t\t\t\t\t\t\t\tisInputNumber && messagesError.length > 0 ? 'warning' : ''\r\n\t\t\t\t\t\t\t}`}\r\n\t\t\t\t\t\t\tstyle={U.buildStyleObject(style)}\r\n\t\t\t\t\t\t\treadOnly={readOnly}\r\n\t\t\t\t\t\t\tdisabled={disabled}\r\n\t\t\t\t\t\t\tmaxLength={maxLength || 524288}\r\n\t\t\t\t\t\t\trequired={mandatory}\r\n\t\t\t\t\t\t\taria-required={mandatory}\r\n\t\t\t\t\t\t\tonChange={({ target: { value: v } }) => {\r\n\t\t\t\t\t\t\t\tif (isInputNumber) validate(v);\r\n\t\t\t\t\t\t\t\tif (management) setValue(v);\r\n\t\t\t\t\t\t\t\telse setValue(v === '' ? null : v);\r\n\t\t\t\t\t\t\t}}\r\n\t\t\t\t\t\t\tonBlur={handleChangeOnBlur}\r\n\t\t\t\t\t\t/>\r\n\t\t\t\t\t\t{isInputNumber && unit && unitPosition === 'AFTER' && (\r\n\t\t\t\t\t\t\t<span className=\"unit\">{unit}</span>\r\n\t\t\t\t\t\t)}\r\n\t\t\t\t\t</div>\r\n\t\t\t\t\t{management && (\r\n\t\t\t\t\t\t<div className=\"tooltip\">\r\n\t\t\t\t\t\t\t<TooltipResponse\r\n\t\t\t\t\t\t\t\tid={id}\r\n\t\t\t\t\t\t\t\tresponse={U.buildLocalResponse(response, value)}\r\n\t\t\t\t\t\t\t/>\r\n\t\t\t\t\t\t</div>\r\n\t\t\t\t\t)}\r\n\t\t\t\t</div>\r\n\t\t\t\t{isInputNumber && (\r\n\t\t\t\t\t<div className=\"lunatic-input-number-errors\">\r\n\t\t\t\t\t\t{messagesError.map((m, i) => (\r\n\t\t\t\t\t\t\t<div key={i} className=\"error\">\r\n\t\t\t\t\t\t\t\t{m}\r\n\t\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t))}\r\n\t\t\t\t\t</div>\r\n\t\t\t\t)}\r\n\t\t\t</div>\r\n\t\t\t<Declarations\r\n\t\t\t\tid={id}\r\n\t\t\t\ttype={C.DETACHABLE}\r\n\t\t\t\tdeclarations={declarations}\r\n\t\t\t\tfeatures={features}\r\n\t\t\t\tbindings={bindings}\r\n\t\t\t/>\r\n\t\t</>\r\n\t);\r\n};\r\n\r\nInputDeclarationsWrapper.defaultProps = {\r\n\tlabel: '',\r\n\tpreferences: ['COLLECTED'],\r\n\tresponse: {},\r\n\tplaceholder: '',\r\n\treadOnly: false,\r\n\tdisabled: false,\r\n\tautoComplete: false,\r\n\tlabelPosition: 'DEFAULT',\r\n\tmandatory: false,\r\n\tfocused: false,\r\n\tdeclarations: [],\r\n\tfeatures: [],\r\n\tbindings: {},\r\n\tmanagement: false,\r\n\tstyle: {},\r\n\tvalidators: [],\r\n\tisInputNumber: false,\r\n};\r\n\r\nInputDeclarationsWrapper.propTypes = {\r\n\tid: PropTypes.string.isRequired,\r\n\tlabel: PropTypes.string,\r\n\tpreferences: PropTypes.arrayOf(U.valueTypePropTypes),\r\n\tresponse: U.responsePropTypes,\r\n\tmin: PropTypes.oneOfType([PropTypes.number, PropTypes.string]),\r\n\tmax: PropTypes.oneOfType([PropTypes.number, PropTypes.string]),\r\n\tdecimals: PropTypes.oneOfType([PropTypes.number, PropTypes.string]),\r\n\tplaceholder: PropTypes.string,\r\n\thandleChange: PropTypes.func.isRequired,\r\n\treadOnly: PropTypes.bool,\r\n\tdisabled: PropTypes.bool,\r\n\tmaxLength: PropTypes.oneOfType([PropTypes.number, PropTypes.string]),\r\n\tautoComplete: PropTypes.bool,\r\n\tlabelPosition: PropTypes.oneOf(['DEFAULT', 'TOP', 'BOTTOM', 'LEFT', 'RIGHT']),\r\n\tunitPosition: PropTypes.oneOf(['DEFAULT', 'BEFORE', 'AFTER']),\r\n\tmandatory: PropTypes.bool,\r\n\tfocused: PropTypes.bool,\r\n\tdeclarations: U.declarationsPropTypes,\r\n\tfeatures: PropTypes.arrayOf(PropTypes.string),\r\n\tbindings: PropTypes.object,\r\n\tmanagement: PropTypes.bool,\r\n\tstyle: PropTypes.object,\r\n\ttype: PropTypes.oneOf(['text', 'date', 'number', null]),\r\n\troleType: PropTypes.oneOf([\r\n\t\t'input',\r\n\t\t'datepicker',\r\n\t\t'input-number',\r\n\t\t'textarea',\r\n\t]),\r\n\tvalidators: PropTypes.arrayOf(PropTypes.func),\r\n\tisInputNumber: PropTypes.bool,\r\n};\r\n\r\nexport default InputDeclarationsWrapper;\r\n","import React, { useState, useEffect, useRef } from 'react';\r\nimport PropTypes from 'prop-types';\r\nimport debounce from 'lodash.debounce';\r\nimport Declarations from '../';\r\nimport Icon from '../../icon';\r\nimport { TooltipResponse } from '../../tooltip';\r\nimport * as U from '../../../utils/lib';\r\nimport * as C from '../../../constants';\r\nimport { interpret } from '../../../utils/to-expose';\r\n\r\nconst ListDeclarationsWrapper = ({\r\n\tid,\r\n\tlabel,\r\n\tpreferences,\r\n\tresponse,\r\n\toptions,\r\n\thandleChange: propsHandleChange,\r\n\tdisabled,\r\n\tfocused,\r\n\tkeyboardSelection,\r\n\tdeclarations,\r\n\tfeatures,\r\n\tbindings,\r\n\tmanagement,\r\n\tstyle,\r\n\tpositioning,\r\n\ttype,\r\n\thasSpecificHandler,\r\n}) => {\r\n\tconst inputRef = useRef();\r\n\r\n\tconst [value, setValue] = useState(() =>\r\n\t\tU.getResponseByPreference(preferences)(response)\r\n\t);\r\n\r\n\tconst filledOptions =\r\n\t\tmanagement && type === 'checkbox'\r\n\t\t\t? [...options, { label: 'NR', value: '_N_R_' }]\r\n\t\t\t: options;\r\n\r\n\tconst specificHandleChange = (e) => {\r\n\t\tconst { values } = response;\r\n\t\tconst [key, value] = Object.entries(e)[0];\r\n\t\tconst newValue =\r\n\t\t\tvalues[preferences[preferences.length - 1]] === value ? null : value;\r\n\t\thandleChange({ [key]: newValue });\r\n\t\tif (management) {\r\n\t\t\tsetValue(\r\n\t\t\t\tU.getResponseByPreference(preferences)(\r\n\t\t\t\t\tU.buildLocalResponse(response, newValue)\r\n\t\t\t\t)\r\n\t\t\t);\r\n\t\t} else setValue(newValue);\r\n\t};\r\n\r\n\tconst handleChange = debounce((obj) => propsHandleChange(obj), 50);\r\n\r\n\tconst onChange = (v) => {\r\n\t\tconst update = {\r\n\t\t\t[U.getResponseName(response)]: v,\r\n\t\t};\r\n\t\tif (hasSpecificHandler) specificHandleChange(update);\r\n\t\telse {\r\n\t\t\tsetValue(v);\r\n\t\t\thandleChange(update);\r\n\t\t}\r\n\t};\r\n\r\n\tuseEffect(() => {\r\n\t\tif (focused) inputRef.current.focus();\r\n\t}, [focused]);\r\n\r\n\tconst { fieldsetStyle, modalityStyle } = style;\r\n\treturn (\r\n\t\t<>\r\n\t\t\t<Declarations\r\n\t\t\t\tid={id}\r\n\t\t\t\ttype={C.BEFORE_QUESTION_TEXT}\r\n\t\t\t\tdeclarations={declarations}\r\n\t\t\t\tfeatures={features}\r\n\t\t\t\tbindings={bindings}\r\n\t\t\t/>\r\n\t\t\t<div className=\"field-container\">\r\n\t\t\t\t<div className={`${management ? 'field-with-tooltip' : 'field'}`}>\r\n\t\t\t\t\t<fieldset\r\n\t\t\t\t\t\tkey={`${type}-${id}`}\r\n\t\t\t\t\t\tclassName={`${type}-group-list`}\r\n\t\t\t\t\t\tstyle={U.buildStyleObject(fieldsetStyle)}\r\n\t\t\t\t\t>\r\n\t\t\t\t\t\t<legend>{interpret(features)(bindings)(label)}</legend>\r\n\t\t\t\t\t\t<Declarations\r\n\t\t\t\t\t\t\tid={id}\r\n\t\t\t\t\t\t\ttype={C.AFTER_QUESTION_TEXT}\r\n\t\t\t\t\t\t\tdeclarations={declarations}\r\n\t\t\t\t\t\t\tfeatures={features}\r\n\t\t\t\t\t\t\tbindings={bindings}\r\n\t\t\t\t\t\t/>\r\n\t\t\t\t\t\t{filledOptions.map(\r\n\t\t\t\t\t\t\t({ label: optionLabel, value: optionValue }, i) => {\r\n\t\t\t\t\t\t\t\tconst checked = value === optionValue;\r\n\t\t\t\t\t\t\t\tconst interpretedLabel = interpret(features)(bindings)(\r\n\t\t\t\t\t\t\t\t\toptionLabel\r\n\t\t\t\t\t\t\t\t);\r\n\t\t\t\t\t\t\t\treturn (\r\n\t\t\t\t\t\t\t\t\t<div\r\n\t\t\t\t\t\t\t\t\t\tkey={`${type}-${id}-${optionValue}`}\r\n\t\t\t\t\t\t\t\t\t\tclassName={`${type}-modality ${type}-modality-block ${U.getItemsPositioningClass(\r\n\t\t\t\t\t\t\t\t\t\t\tpositioning\r\n\t\t\t\t\t\t\t\t\t\t)} ${checked ? 'content-checked' : ''} ${\r\n\t\t\t\t\t\t\t\t\t\t\toptionValue === '_N_R_' ? 'modality_NR' : ''\r\n\t\t\t\t\t\t\t\t\t\t}`}\r\n\t\t\t\t\t\t\t\t\t>\r\n\t\t\t\t\t\t\t\t\t\t<Icon type={type} checked={checked} disabled={disabled}>\r\n\t\t\t\t\t\t\t\t\t\t\t<input\r\n\t\t\t\t\t\t\t\t\t\t\t\ttype={type}\r\n\t\t\t\t\t\t\t\t\t\t\t\tname={`${type}-${id}`}\r\n\t\t\t\t\t\t\t\t\t\t\t\tref={i === 0 || checked ? inputRef : null}\r\n\t\t\t\t\t\t\t\t\t\t\t\tid={`${type}-${id}-${optionValue}`}\r\n\t\t\t\t\t\t\t\t\t\t\t\taria-labelledby={`input-label-${id}-${optionValue}`}\r\n\t\t\t\t\t\t\t\t\t\t\t\tclassName={`${type}-lunatic`}\r\n\t\t\t\t\t\t\t\t\t\t\t\tstyle={U.buildStyleObject(style)}\r\n\t\t\t\t\t\t\t\t\t\t\t\tchecked={checked}\r\n\t\t\t\t\t\t\t\t\t\t\t\tdisabled={disabled}\r\n\t\t\t\t\t\t\t\t\t\t\t\tonChange={(optionLabel) => onChange(optionValue)}\r\n\t\t\t\t\t\t\t\t\t\t\t/>\r\n\t\t\t\t\t\t\t\t\t\t\t<label\r\n\t\t\t\t\t\t\t\t\t\t\t\thtmlFor={`${type}-${id}-${optionValue}`}\r\n\t\t\t\t\t\t\t\t\t\t\t\tid={`input-label-${id}-${optionValue}`}\r\n\t\t\t\t\t\t\t\t\t\t\t\tstyle={checked ? U.buildStyleObject(modalityStyle) : {}}\r\n\t\t\t\t\t\t\t\t\t\t\t\tclassName=\"modality-label\"\r\n\t\t\t\t\t\t\t\t\t\t\t>\r\n\t\t\t\t\t\t\t\t\t\t\t\t{keyboardSelection && (\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t<span className=\"code-modality\">\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t{options.length < 10\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t? i + 1\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t: U.getAlphabet()[i].toUpperCase()}\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t</span>\r\n\t\t\t\t\t\t\t\t\t\t\t\t)}\r\n\t\t\t\t\t\t\t\t\t\t\t\t{interpretedLabel}\r\n\t\t\t\t\t\t\t\t\t\t\t</label>\r\n\t\t\t\t\t\t\t\t\t\t</Icon>\r\n\t\t\t\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t\t\t);\r\n\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t)}\r\n\t\t\t\t\t</fieldset>\r\n\t\t\t\t</div>\r\n\t\t\t\t{management && (\r\n\t\t\t\t\t<div className=\"tooltip\">\r\n\t\t\t\t\t\t<TooltipResponse\r\n\t\t\t\t\t\t\tid={id}\r\n\t\t\t\t\t\t\tresponse={U.buildMultiTooltipResponse(filledOptions)(response)}\r\n\t\t\t\t\t\t/>\r\n\t\t\t\t\t</div>\r\n\t\t\t\t)}\r\n\t\t\t</div>\r\n\t\t\t<Declarations\r\n\t\t\t\tid={id}\r\n\t\t\t\ttype={C.DETACHABLE}\r\n\t\t\t\tdeclarations={declarations}\r\n\t\t\t\tfeatures={features}\r\n\t\t\t\tbindings={bindings}\r\n\t\t\t/>\r\n\t\t</>\r\n\t);\r\n};\r\n\r\nListDeclarationsWrapper.defaultProps = {\r\n\tlabel: '',\r\n\tpreferences: ['COLLECTED'],\r\n\tresponse: {},\r\n\toptions: [],\r\n\tdisabled: false,\r\n\tfocused: false,\r\n\tkeyboardSelection: false,\r\n\tpositioning: 'DEFAULT',\r\n\tdeclarations: [],\r\n\tfeatures: [],\r\n\tbindings: {},\r\n\tmanagement: false,\r\n\tstyle: { fieldsetStyle: {}, modalityStyle: {} },\r\n};\r\n\r\nListDeclarationsWrapper.propTypes = {\r\n\tid: PropTypes.string.isRequired,\r\n\tlabel: PropTypes.string,\r\n\tpreferences: PropTypes.arrayOf(U.valueTypePropTypes),\r\n\tresponse: U.responsePropTypes,\r\n\toptions: U.optionsPropTypes,\r\n\thandleChange: PropTypes.func.isRequired,\r\n\tdisabled: PropTypes.bool,\r\n\tfocused: PropTypes.bool,\r\n\tkeyboardSelection: PropTypes.bool,\r\n\tpositioning: PropTypes.oneOf(['DEFAULT', 'HORIZONTAL', 'VERTICAL']),\r\n\tdeclarations: U.declarationsPropTypes,\r\n\tfeatures: PropTypes.arrayOf(PropTypes.string),\r\n\tbindings: PropTypes.object,\r\n\tmanagement: PropTypes.bool,\r\n\tstyle: PropTypes.object,\r\n\ttype: PropTypes.oneOf(['radio', 'checkbox']),\r\n};\r\n\r\nexport default ListDeclarationsWrapper;\r\n","import React from 'react';\r\nimport PropTypes from 'prop-types';\r\nimport Declarations from '../';\r\nimport * as U from '../../../utils/lib';\r\nimport * as C from '../../../constants';\r\n\r\nconst SimpleDeclarationsWrapper = ({\r\n\tid,\r\n\tdeclarations,\r\n\tfeatures,\r\n\tbindings,\r\n\tchildren,\r\n}) => (\r\n\t<>\r\n\t\t<Declarations\r\n\t\t\tid={id}\r\n\t\t\ttype={C.BEFORE_QUESTION_TEXT}\r\n\t\t\tdeclarations={declarations}\r\n\t\t\tfeatures={features}\r\n\t\t\tbindings={bindings}\r\n\t\t/>\r\n\t\t{children}\r\n\t\t<Declarations\r\n\t\t\tid={id}\r\n\t\t\ttype={C.AFTER_QUESTION_TEXT}\r\n\t\t\tdeclarations={declarations}\r\n\t\t\tfeatures={features}\r\n\t\t\tbindings={bindings}\r\n\t\t/>\r\n\t\t<Declarations\r\n\t\t\tid={id}\r\n\t\t\ttype={C.DETACHABLE}\r\n\t\t\tdeclarations={declarations}\r\n\t\t\tfeatures={features}\r\n\t\t\tbindings={bindings}\r\n\t\t/>\r\n\t</>\r\n);\r\n\r\nSimpleDeclarationsWrapper.defaultProps = {\r\n\tdeclarations: [],\r\n\tfeatures: [],\r\n\tbindings: {},\r\n};\r\n\r\nSimpleDeclarationsWrapper.propTypes = {\r\n\tid: PropTypes.string.isRequired,\r\n\tdeclarations: U.declarationsPropTypes,\r\n\tfeatures: PropTypes.arrayOf(PropTypes.string),\r\n\tbindings: PropTypes.object,\r\n\tchildren: PropTypes.element.isRequired,\r\n};\r\n\r\nexport default SimpleDeclarationsWrapper;\r\n","import React from 'react';\r\nimport { ListDeclarationsWrapper } from '../declarations/wrappers';\r\nimport { areEqual } from '../../utils/lib';\r\nimport './checkbox.scss';\r\n\r\nconst CheckboxOne = (props) => (\r\n\t<ListDeclarationsWrapper type=\"checkbox\" {...props} hasSpecificHandler />\r\n);\r\n\r\nexport default React.memo(CheckboxOne, areEqual);\r\n","import React from 'react';\r\nimport { InputDeclarationsWrapper } from '../declarations/wrappers';\r\nimport { areEqual } from '../../utils/lib';\r\nimport './datepicker.scss';\r\n\r\nconst Datepicker = (props) => (\r\n\t<InputDeclarationsWrapper type=\"date\" roleType=\"datepicker\" {...props} />\r\n);\r\n\r\nexport default React.memo(Datepicker, areEqual);\r\n","/*!\n Copyright (c) 2017 Jed Watson.\n Licensed under the MIT License (MIT), see\n http://jedwatson.github.io/classnames\n*/\n/* global define */\n\n(function () {\n\t'use strict';\n\n\tvar hasOwn = {}.hasOwnProperty;\n\n\tfunction classNames () {\n\t\tvar classes = [];\n\n\t\tfor (var i = 0; i < arguments.length; i++) {\n\t\t\tvar arg = arguments[i];\n\t\t\tif (!arg) continue;\n\n\t\t\tvar argType = typeof arg;\n\n\t\t\tif (argType === 'string' || argType === 'number') {\n\t\t\t\tclasses.push(arg);\n\t\t\t} else if (Array.isArray(arg) && arg.length) {\n\t\t\t\tvar inner = classNames.apply(null, arg);\n\t\t\t\tif (inner) {\n\t\t\t\t\tclasses.push(inner);\n\t\t\t\t}\n\t\t\t} else if (argType === 'object') {\n\t\t\t\tfor (var key in arg) {\n\t\t\t\t\tif (hasOwn.call(arg, key) && arg[key]) {\n\t\t\t\t\t\tclasses.push(key);\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\n\t\treturn classes.join(' ');\n\t}\n\n\tif (typeof module !== 'undefined' && module.exports) {\n\t\tclassNames.default = classNames;\n\t\tmodule.exports = classNames;\n\t} else if (typeof define === 'function' && typeof define.amd === 'object' && define.amd) {\n\t\t// register as 'classnames', consistent with npm package name\n\t\tdefine('classnames', [], function () {\n\t\t\treturn classNames;\n\t\t});\n\t} else {\n\t\twindow.classNames = classNames;\n\t}\n}());\n","export const SHOW_PANEL = \"dropdown/show-panel\";\r\nexport const showPanel = () => ({ type: SHOW_PANEL });\r\n\r\nexport const HIDE_PANEL = \"dropdown/hide-panel\";\r\nexport const hidePanel = () => ({ type: HIDE_PANEL });\r\n\r\nexport const SET_ACTIVE_OPTION = \"dropdown/set-active-option\";\r\nexport const setActiveOption = index => ({\r\n type: SET_ACTIVE_OPTION,\r\n payload: { index }\r\n});\r\n\r\nexport const SET_OPTIONS = \"dropdown/set-options\";\r\nexport const setOptions = options => ({\r\n type: SET_OPTIONS,\r\n payload: { options }\r\n});\r\n\r\nexport const SET_VALUE = \"dropdown/set-value\";\r\nexport const setValue = value => ({ type: SET_VALUE, payload: { value } });\r\n\r\nexport const SET_FOCUSED = \"dropdown/set-focused\";\r\nexport const setFocused = focused => ({\r\n type: SET_FOCUSED,\r\n payload: { focused }\r\n});\r\n\r\nexport const SET_SELECTED_OPTION = \"dropdown/set-selectted-option\";\r\nexport const setSelectedOption = option => ({\r\n type: SET_SELECTED_OPTION,\r\n payload: { option }\r\n});\r\n\r\nexport const RESET_SELECTION = \"dropdown/reset-selection\";\r\nexport const resetSelection = option => ({\r\n type: RESET_SELECTION\r\n});\r\n\r\n/* */\r\nexport const ARROW_UP_PRESSED = \"dropdown/arrow-up-ressed\";\r\nexport const arrowUpPressed = () => ({ type: ARROW_UP_PRESSED });\r\n\r\n/* */\r\nexport const ARROW_DOWN_PRESSED = \"dropdown/arrow-down-pressed\";\r\nexport const arrowDownPressed = () => ({ type: ARROW_DOWN_PRESSED });\r\n\r\n/* */\r\nexport const ENTER_PRESSED = \"dropdown/enter-pressed\";\r\nexport const enterPressed = callback => ({\r\n type: ENTER_PRESSED,\r\n payload: { callback }\r\n});\r\n\r\n/* */\r\nexport const SET_PREFIX = \"dropdown/set-prefix\";\r\nexport const setPrefix = prefix => ({ type: SET_PREFIX, payload: { prefix } });\r\n","import React, { useRef } from 'react';\r\nimport PropTypes from 'prop-types';\r\n\r\n/**\r\n *\r\n */\r\nfunction Panel({\r\n\toptions = [],\r\n\tdisplay,\r\n\thandleActive,\r\n\tprefix,\r\n\tactiveIndex,\r\n\tselectedOption,\r\n\tonSelect,\r\n\tidDropdown,\r\n\toptionComponent: Option,\r\n}) {\r\n\tconst ulRef = useRef();\r\n\r\n\treturn display ? (\r\n\t\t<div className=\"lunatic-dropdown-panel-container\">\r\n\t\t\t<ul className=\"lunatic-dropdown-panel\" ref={ulRef} tabIndex=\"-1\">\r\n\t\t\t\t{options.map(({ label, value }, index) => (\r\n\t\t\t\t\t<li\r\n\t\t\t\t\t\tkey={value}\r\n\t\t\t\t\t\tid={`${idDropdown}-option-${value}`}\r\n\t\t\t\t\t\tonMouseEnter={() => handleActive(index)}\r\n\t\t\t\t\t\tonMouseDown={(e) => {\r\n\t\t\t\t\t\t\te.stopPropagation();\r\n\t\t\t\t\t\t\te.preventDefault();\r\n\t\t\t\t\t\t\tif (e.button === 0) {\r\n\t\t\t\t\t\t\t\tonSelect({ label, value });\r\n\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t}}\r\n\t\t\t\t\t>\r\n\t\t\t\t\t\t<Option\r\n\t\t\t\t\t\t\tlabel={label}\r\n\t\t\t\t\t\t\tvalue={value}\r\n\t\t\t\t\t\t\tprefix={prefix}\r\n\t\t\t\t\t\t\tactive={activeIndex === index}\r\n\t\t\t\t\t\t\tselected={selectedOption && selectedOption.value === value}\r\n\t\t\t\t\t\t/>\r\n\t\t\t\t\t</li>\r\n\t\t\t\t))}\r\n\t\t\t</ul>\r\n\t\t</div>\r\n\t) : null;\r\n}\r\n\r\nconst propTypesOption = PropTypes.shape({\r\n\tlabel: PropTypes.string,\r\n\tvalue: PropTypes.oneOfType([\r\n\t\tPropTypes.string,\r\n\t\tPropTypes.object,\r\n\t\tPropTypes.number,\r\n\t\tPropTypes.symbol,\r\n\t\tPropTypes.bool,\r\n\t]),\r\n});\r\n\r\nPanel.propTypes = {\r\n\tidDropdown: PropTypes.string.isRequired,\r\n\tprefix: PropTypes.string,\r\n\tonSelect: PropTypes.func,\r\n\thandleActive: PropTypes.func.isRequired,\r\n\tactiveIndex: PropTypes.number,\r\n\tselectedOption: propTypesOption,\r\n\tdisplay: PropTypes.bool.isRequired,\r\n\toptions: PropTypes.arrayOf(propTypesOption),\r\n};\r\n\r\nPanel.defaultProps = {\r\n\toptions: [],\r\n\tonSelect: () => null,\r\n\tselectedOption: undefined,\r\n};\r\n\r\nexport default Panel;\r\n","import React from \"react\";\r\n\r\nfunction Icon({ height = 20, width = 20, color = \"#aaa\" }) {\r\n return (\r\n <svg\r\n xmlns=\"http://www.w3.org/2000/svg\"\r\n width={width}\r\n height={height}\r\n x=\"0\"\r\n y=\"0\"\r\n enableBackground=\"new 0 0 292.362 292.362\"\r\n version=\"1.1\"\r\n viewBox=\"0 0 292.362 292.362\"\r\n xmlSpace=\"preserve\"\r\n >\r\n <path\r\n fill={color}\r\n d=\"M286.935 69.377c-3.614-3.617-7.898-5.424-12.848-5.424H18.274c-4.952 0-9.233 1.807-12.85 5.424C1.807 72.998 0 77.279 0 82.228c0 4.948 1.807 9.229 5.424 12.847l127.907 127.907c3.621 3.617 7.902 5.428 12.85 5.428s9.233-1.811 12.847-5.428L286.935 95.074c3.613-3.617 5.427-7.898 5.427-12.847 0-4.948-1.814-9.229-5.427-12.85z\"\r\n ></path>\r\n </svg>\r\n );\r\n}\r\n\r\nexport default Icon;\r\n","import React from \"react\";\r\n\r\nfunction Icon({ height = 20, width = 20, color = \"#aaa\" }) {\r\n return (\r\n <svg\r\n xmlns=\"http://www.w3.org/2000/svg\"\r\n width={width}\r\n height={height}\r\n x=\"0\"\r\n y=\"0\"\r\n enableBackground=\"new 0 0 292.362 292.362\"\r\n version=\"1.1\"\r\n viewBox=\"0 0 292.362 292.362\"\r\n xmlSpace=\"preserve\"\r\n >\r\n <path\r\n fill={color}\r\n d=\"M286.935 197.286L159.028 69.379c-3.613-3.617-7.895-5.424-12.847-5.424s-9.233 1.807-12.85 5.424L5.424 197.286C1.807 200.9 0 205.184 0 210.132s1.807 9.233 5.424 12.847c3.621 3.617 7.902 5.428 12.85 5.428h255.813c4.949 0 9.233-1.811 12.848-5.428 3.613-3.613 5.427-7.898 5.427-12.847s-1.814-9.232-5.427-12.846z\"\r\n ></path>\r\n </svg>\r\n );\r\n}\r\n\r\nexport default Icon;\r\n","import React from 'react';\r\nimport classnames from 'classnames';\r\nimport PropTypes from 'prop-types';\r\n\r\nfunction Label({ content, focused, mandatory }) {\r\n\tif (!content) {\r\n\t\treturn null;\r\n\t}\r\n\treturn (\r\n\t\t<div\r\n\t\t\tclassName={classnames('lunatic-dropdown-label', { focused, mandatory })}\r\n\t\t>\r\n\t\t\t{content}\r\n\t\t</div>\r\n\t);\r\n}\r\n\r\nLabel.defaultProps = {\r\n\tmandatory: false,\r\n};\r\n\r\nLabel.propTypes = {\r\n\tcontent: PropTypes.string,\r\n\tfocused: PropTypes.bool.isRequired,\r\n\tmandatory: PropTypes.bool,\r\n};\r\n\r\nexport default Label;\r\n","let CLEANER_CALLBACKS = {};\r\n\r\n/**\r\n *\r\n * @param {string} id identifiant de dropdown\r\n * @param {function} hook fonction de rappelle à invoquer\r\n */\r\nexport const setCallback = (id, hook) => {\r\n CLEANER_CALLBACKS[id] = hook;\r\n};\r\n\r\n/**\r\n *\r\n * @param {...any} execpt identifiants de dropdownn a ne pas appliquer\r\n */\r\nexport const applyAll = (...execpt) => {\r\n Object.entries(CLEANER_CALLBACKS).forEach(([k, todo]) => {\r\n if (execpt.indexOf(k) === -1) {\r\n apply(k);\r\n }\r\n });\r\n};\r\n\r\n/**\r\n * Applique une fonction pour l'identifiant transmis\r\n * @param {string} id\r\n */\r\nexport const apply = id => {\r\n if (id in CLEANER_CALLBACKS && typeof CLEANER_CALLBACKS[id] === \"function\") {\r\n CLEANER_CALLBACKS[id]();\r\n }\r\n};\r\n\r\n/**\r\n *\r\n * @param {string} id\r\n * @param {function} callback\r\n */\r\nexport const add = (id, callback) => {\r\n if (typeof callback === \"function\") {\r\n CLEANER_CALLBACKS[id] = callback;\r\n }\r\n};\r\n\r\n/**\r\n *\r\n */\r\nexport const clearAll = () => {\r\n CLEANER_CALLBACKS = [];\r\n};\r\n\r\n/**\r\n *\r\n * @param {string} id\r\n */\r\nexport const clear = id => {\r\n delete CLEANER_CALLBACKS[id];\r\n};\r\n","import React from 'react';\r\nimport classnames from 'classnames';\r\nimport { TooltipResponse } from '../../../tooltip';\r\nimport * as U from '../../../../utils/lib';\r\n\r\nfunction DropdownFieldContainer({\r\n\tchildren,\r\n\tid,\r\n\tresponse,\r\n\toptions,\r\n\tmanagement,\r\n\tfocused,\r\n\tvisible,\r\n\tdisabled,\r\n}) {\r\n\treturn (\r\n\t\t<div className=\"field-container\">\r\n\t\t\t<div className={`${management ? 'field-with-tooltip' : 'field'}`}>\r\n\t\t\t\t<div\r\n\t\t\t\t\ttabIndex=\"-1\"\r\n\t\t\t\t\tclassName={classnames('lunatic-dropdown-container', { focused })}\r\n\t\t\t\t>\r\n\t\t\t\t\t<span\r\n\t\t\t\t\t\tclassName={classnames(`lunatic-dropdown-content`, {\r\n\t\t\t\t\t\t\tfocused,\r\n\t\t\t\t\t\t\tvisible,\r\n\t\t\t\t\t\t\tdisabled,\r\n\t\t\t\t\t\t})}\r\n\t\t\t\t\t>\r\n\t\t\t\t\t\t{children}\r\n\t\t\t\t\t</span>\r\n\t\t\t\t</div>\r\n\t\t\t</div>\r\n\t\t\t{management && (\r\n\t\t\t\t<div className=\"tooltip\">\r\n\t\t\t\t\t<TooltipResponse\r\n\t\t\t\t\t\tid={id}\r\n\t\t\t\t\t\tresponse={U.buildMultiTooltipResponse(options)(response)}\r\n\t\t\t\t\t/>\r\n\t\t\t\t</div>\r\n\t\t\t)}\r\n\t\t</div>\r\n\t);\r\n}\r\n\r\nexport default DropdownFieldContainer;\r\n","import React from 'react';\r\n\r\nconst DropdownContainer = React.forwardRef(function (props, ref) {\r\n\tconst {\r\n\t\tchildren,\r\n\t\tclassName,\r\n\t\tid,\r\n\t\tonMouseDown,\r\n\t\tonKeyDown,\r\n\t\tonFocus,\r\n\t\tonBlur,\r\n\t} = props;\r\n\treturn (\r\n\t\t<div\r\n\t\t\tclassName={className}\r\n\t\t\ttabIndex=\"-1\"\r\n\t\t\tid={id}\r\n\t\t\tonMouseDown={onMouseDown}\r\n\t\t\tonKeyDown={onKeyDown}\r\n\t\t\tonFocus={onFocus}\r\n\t\t\tonBlur={onBlur}\r\n\t\t\tref={ref}\r\n\t\t>\r\n\t\t\t{children}\r\n\t\t</div>\r\n\t);\r\n});\r\n\r\nexport default DropdownContainer;\r\n","import * as actions from '../actions';\r\n\r\nexport const BINDED_KEYS = {\r\n\tarrowUp: 'ArrowUp',\r\n\tarrowDown: 'ArrowDown',\r\n\tenter: 'Enter',\r\n\ttab: 'Tab',\r\n};\r\n\r\n/** */\r\nexport default (_, dispatch, onSelect) => (key) => {\r\n\tswitch (key) {\r\n\t\tcase BINDED_KEYS.arrowUp:\r\n\t\t\tdispatch(actions.arrowUpPressed());\r\n\t\t\tbreak;\r\n\t\tcase BINDED_KEYS.arrowDown:\r\n\t\t\tdispatch(actions.arrowDownPressed());\r\n\t\t\tdispatch(actions.showPanel());\r\n\t\t\tbreak;\r\n\t\tcase BINDED_KEYS.enter:\r\n\t\t\tdispatch(actions.enterPressed(onSelect));\r\n\t\t\tbreak;\r\n\t\tcase BINDED_KEYS.tab:\r\n\t\t\tdispatch(actions.setFocused(false));\r\n\t\t\tdispatch(actions.hidePanel());\r\n\t\t\tbreak;\r\n\t\tdefault:\r\n\t}\r\n};\r\n","import * as CLEAN from '../cleaner-callbacks';\r\nimport * as actions from '../actions';\r\n\r\n/** */\r\nexport default ({ visible, id, disabled }, dispatch) => e => {\r\n\te.stopPropagation();\r\n\tif (!visible && !disabled) {\r\n\t\tCLEAN.applyAll(id);\r\n\t\tdispatch(actions.showPanel());\r\n\t}\r\n};\r\n","import React, { useEffect, useCallback } from 'react';\r\nimport PropTypes from 'prop-types';\r\nimport classnames from 'classnames';\r\nimport Label from './label';\r\nimport * as U from '../../../../utils/lib';\r\nimport * as CLEAN from '../cleaner-callbacks';\r\nimport * as actions from '../actions';\r\nimport DropdownField from './dropdown-field';\r\nimport DropdownContainer from './dropdown-container';\r\nimport {\r\n\tcreateOnKeyDownCallback,\r\n\tcreateOnMouseDownCallback,\r\n\tBINDED_KEYS,\r\n} from '../event-callbacks';\r\n\r\n/** */\r\nfunction stopAndPrevent(e) {\r\n\te.preventDefault();\r\n\te.stopPropagation();\r\n}\r\n\r\n/** */\r\nfunction prepareOptions(options, valueFromProps) {\r\n\treturn options.reduce(\r\n\t\t(a, o, i) =>\r\n\t\t\to.value === valueFromProps && a.index === -1\r\n\t\t\t\t? { index: i, option: o }\r\n\t\t\t\t: a,\r\n\t\t{ index: -1, option: {} }\r\n\t);\r\n}\r\n\r\n/** */\r\nfunction onKeyDownCallbackProxy(state, dispatch, onSelect) {\r\n\tconst callback = createOnKeyDownCallback(state, dispatch, onSelect);\r\n\treturn function (e) {\r\n\t\tswitch (e.key) {\r\n\t\t\tcase BINDED_KEYS.enter:\r\n\t\t\tcase BINDED_KEYS.arrowUp:\r\n\t\t\tcase BINDED_KEYS.arrowDown:\r\n\t\t\t\tstopAndPrevent(e);\r\n\t\t\t\tcallback(e.key);\r\n\t\t\t\tbreak;\r\n\t\t\tcase BINDED_KEYS.tab:\r\n\t\t\t\tcallback(e.key);\r\n\t\t\t\tbreak;\r\n\t\t\tdefault:\r\n\t\t\t\treturn;\r\n\t\t}\r\n\t\treturn false;\r\n\t};\r\n}\r\n\r\nfunction Dropdown({\r\n\toptions,\r\n\tchildren,\r\n\tonSelect,\r\n\tresponse,\r\n\tclassName,\r\n\tlabel,\r\n\tlabelPosition,\r\n\tmandatory,\r\n\tvalue: valueFromProps,\r\n\tmanagement,\r\n\tstate,\r\n\tdispatch,\r\n\trefs,\r\n}) {\r\n\tconst { visible, focused, id, disabled } = state;\r\n\r\n\tCLEAN.add(id, function () {\r\n\t\tdispatch(actions.hidePanel());\r\n\t\tdispatch(actions.setFocused(false));\r\n\t});\r\n\tuseEffect(\r\n\t\tfunction () {\r\n\t\t\tconst hook = function () {\r\n\t\t\t\tdispatch(actions.hidePanel());\r\n\t\t\t\tdispatch(actions.setFocused(false));\r\n\t\t\t};\r\n\t\t\twindow.addEventListener('mousedown', hook);\r\n\r\n\t\t\treturn function () {\r\n\t\t\t\twindow.removeEventListener('mousedown', hook);\r\n\t\t\t\tCLEAN.clear(id);\r\n\t\t\t};\r\n\t\t},\r\n\t\t[id, dispatch]\r\n\t);\r\n\r\n\tuseEffect(\r\n\t\tfunction () {\r\n\t\t\tdispatch(actions.setOptions(options));\r\n\t\t},\r\n\t\t[options, dispatch]\r\n\t);\r\n\r\n\tuseEffect(\r\n\t\tfunction () {\r\n\t\t\tif (valueFromProps) {\r\n\t\t\t\tconst { option, index } = prepareOptions(options, valueFromProps);\r\n\t\t\t\tdispatch(actions.setSelectedOption(option));\r\n\t\t\t\tdispatch(actions.setActiveOption(index));\r\n\t\t\t}\r\n\t\t},\r\n\t\t[valueFromProps, options, dispatch]\r\n\t);\r\n\r\n\tconst onFocus = useCallback(\r\n\t\tfunction () {\r\n\t\t\tdispatch(actions.setFocused(true && !disabled));\r\n\t\t},\r\n\t\t[dispatch, disabled]\r\n\t);\r\n\r\n\tconst onBlur = useCallback(\r\n\t\tfunction () {\r\n\t\t\tdispatch(actions.setFocused(false));\r\n\t\t},\r\n\t\t[dispatch]\r\n\t);\r\n\r\n\tconst onMouseDownCallback = useCallback(\r\n\t\tcreateOnMouseDownCallback(state, dispatch),\r\n\t\t[state, dispatch]\r\n\t);\r\n\r\n\tconst onKeyDownCallback = useCallback(\r\n\t\tonKeyDownCallbackProxy(state, dispatch, onSelect),\r\n\t\t[state, dispatch, onSelect]\r\n\t);\r\n\r\n\treturn (\r\n\t\t<DropdownContainer\r\n\t\t\tclassName={classnames(className, U.getLabelPositionClass(labelPosition), {\r\n\t\t\t\tfocused,\r\n\t\t\t\tdisabled,\r\n\t\t\t})}\r\n\t\t\tid={id}\r\n\t\t\tonMouseDown={onMouseDownCallback}\r\n\t\t\tonKeyDown={onKeyDownCallback}\r\n\t\t\tonFocus={onFocus}\r\n\t\t\tonBlur={onBlur}\r\n\t\t\tref={refs}\r\n\t\t>\r\n\t\t\t<Label content={label} focused={focused} mandatory={mandatory} />\r\n\t\t\t<DropdownField\r\n\t\t\t\tid={id}\r\n\t\t\t\tresponse={response}\r\n\t\t\t\toptions={options}\r\n\t\t\t\tmanagement={management}\r\n\t\t\t\tfocused={focused}\r\n\t\t\t\tvisible={visible}\r\n\t\t\t\tdisabled={disabled}\r\n\t\t\t>\r\n\t\t\t\t{children}\r\n\t\t\t</DropdownField>\r\n\t\t</DropdownContainer>\r\n\t);\r\n}\r\n\r\nDropdown.propTypes = {\r\n\tzIndex: PropTypes.number,\r\n\tclassName: PropTypes.string,\r\n\tid: PropTypes.string,\r\n\toptions: PropTypes.array.isRequired,\r\n\tonSelect: PropTypes.func,\r\n\tvalue: PropTypes.oneOfType([\r\n\t\tPropTypes.string,\r\n\t\tPropTypes.number,\r\n\t\tPropTypes.object,\r\n\t\tPropTypes.bool,\r\n\t]),\r\n};\r\n\r\nDropdown.defaultProps = {\r\n\toptions: [],\r\n\tonSelect: () => null,\r\n};\r\n\r\nexport default React.forwardRef((props, ref) => (\r\n\t<Dropdown {...props} refs={ref} />\r\n));\r\n","/** */\r\nexport const scrollTo = id => {\r\n const li = document.getElementById(id);\r\n if (li) {\r\n const parent = li.parentNode;\r\n const pr = parent.getBoundingClientRect();\r\n const lr = li.getBoundingClientRect();\r\n const top = lr.top - pr.top + parent.scrollTop;\r\n const bottom = lr.bottom - pr.top + parent.scrollTop;\r\n\r\n if (bottom > parent.scrollTop + pr.height) {\r\n parent.scrollTo(0, bottom - pr.height);\r\n } else if (top < parent.scrollTop) {\r\n parent.scrollTo(0, top);\r\n }\r\n }\r\n};\r\n","import removeAccents from 'remove-accents';\r\n\r\nexport const preparePrefix = (prefix) =>\r\n\ttypeof prefix === 'string'\r\n\t\t? removeAccents(prefix.toLowerCase()).replace(/[- ']/g, '')\r\n\t\t: prefix;\r\n\r\nexport const lettersMatching = (label, prefix = '') => {\r\n\tconst pref = prefix.split('');\r\n\tlet pos = -1;\r\n\tconst clean = preparePrefix(label);\r\n\treturn clean.split('').reduce((a, c, idx) => {\r\n\t\tif (pos < pref.length && pref[pos + 1] === c) {\r\n\t\t\tpos++;\r\n\t\t\treturn [...a, c];\r\n\t\t}\r\n\t\treturn a;\r\n\t}, []);\r\n};\r\n\r\nexport const match = (label, prefix) => {\r\n\tconst pref = prefix.split('');\r\n\tlet pos = -1;\r\n\tconst clean = preparePrefix(label);\r\n\treturn (\r\n\t\tclean.split('').reduce((a, c, idx) => {\r\n\t\t\tif (pos < pref.length && pref[pos + 1] === c) {\r\n\t\t\t\tpos++;\r\n\t\t\t\treturn a + 1;\r\n\t\t\t}\r\n\t\t\treturn a / (idx * 0.0001 + 1);\r\n\t\t}, 0) / prefix.length\r\n\t);\r\n};\r\n\r\n/** */\r\nexport const filterOption = (options, prefix) => {\r\n\tif (!prefix || prefix.length === 0) {\r\n\t\treturn options;\r\n\t}\r\n\r\n\treturn options\r\n\t\t.reduce((acc, o) => {\r\n\t\t\tconst { label, search } = o;\r\n\t\t\tconst how = match(search || label, prefix);\r\n\t\t\treturn how >= 0.6\r\n\t\t\t\t? [{ o, how }, ...acc].sort((a, b) => a.how <= b.how)\r\n\t\t\t\t: acc;\r\n\t\t}, [])\r\n\t\t.map(({ o }) => o);\r\n};\r\n","import * as actions from './actions';\r\nimport { scrollTo } from './tools';\r\nimport { filterOption } from '../dropdown-edit/prefix-tools';\r\nimport { preparePrefix } from '../dropdown-edit/prefix-tools';\r\n\r\nexport const initial = {\r\n\tprefix: undefined,\r\n\toptions: [],\r\n\tvisibleOptions: [],\r\n\tvisible: false,\r\n\tactiveIndex: undefined,\r\n\tselectedOption: undefined,\r\n\tfocused: false,\r\n\tvalue: '',\r\n};\r\n\r\n/** */\r\nconst isPrefix = (prefix) => prefix !== undefined && prefix.length > 0;\r\n\r\n/** */\r\nconst reduceArrowDownPressed = (state) => {\r\n\tconst { visibleOptions, activeIndex } = state;\r\n\tconst next = visibleOptions.length\r\n\t\t? Math.min(\r\n\t\t\t\tvisibleOptions.length - 1,\r\n\t\t\t\tactiveIndex === undefined ? 0 : activeIndex + 1\r\n\t\t )\r\n\t\t: undefined;\r\n\tif (next !== undefined) {\r\n\t\tscrollTo(`${state.id}-option-${visibleOptions[next].value}`);\r\n\t}\r\n\treturn { ...state, activeIndex: next };\r\n};\r\n\r\n/** */\r\nconst reduceArrowUpPressed = (state) => {\r\n\tconst { visibleOptions, activeIndex } = state;\r\n\tconst next = visibleOptions.length\r\n\t\t? Math.max(0, activeIndex === undefined ? 0 : activeIndex - 1)\r\n\t\t: undefined;\r\n\r\n\tif (next !== undefined) {\r\n\t\tscrollTo(`${state.id}-option-${visibleOptions[next].value}`);\r\n\t}\r\n\treturn { ...state, activeIndex: next };\r\n};\r\n\r\n/** */\r\nconst reduceEnterPressed = (state, callback) => {\r\n\tconst { activeIndex, visibleOptions, visible } = state;\r\n\tif (!visible) {\r\n\t\treturn { ...state, visible: true };\r\n\t}\r\n\tif (activeIndex !== undefined) {\r\n\t\tconst option = visibleOptions[activeIndex];\r\n\t\tcallback(option);\r\n\t\treturn {\r\n\t\t\t...state,\r\n\t\t\tselectedOption: option,\r\n\t\t\tvalue: option.label,\r\n\t\t\tprefix: preparePrefix(option.label),\r\n\t\t\tvisible: false,\r\n\t\t};\r\n\t}\r\n\treturn state;\r\n};\r\n\r\n/** */\r\nconst reducer = (state, action) => {\r\n\tconst { type, payload } = action;\r\n\tswitch (type) {\r\n\t\tcase actions.SHOW_PANEL: {\r\n\t\t\treturn { ...state, visible: true };\r\n\t\t}\r\n\t\tcase actions.HIDE_PANEL: {\r\n\t\t\treturn { ...state, visible: false };\r\n\t\t}\r\n\t\tcase actions.SET_ACTIVE_OPTION: {\r\n\t\t\tconst { index } = payload;\r\n\t\t\treturn {\r\n\t\t\t\t...state,\r\n\t\t\t\tactiveIndex: index,\r\n\t\t\t};\r\n\t\t}\r\n\t\tcase actions.SET_OPTIONS: {\r\n\t\t\tconst { options } = payload;\r\n\t\t\tconst { prefix } = state;\r\n\t\t\treturn {\r\n\t\t\t\t...state,\r\n\t\t\t\toptions,\r\n\t\t\t\tvisibleOptions: isPrefix(prefix) ? filterOption(options) : options,\r\n\t\t\t};\r\n\t\t}\r\n\t\tcase actions.SET_PREFIX: {\r\n\t\t\tconst { prefix } = payload;\r\n\t\t\tconst { options } = state;\r\n\t\t\treturn {\r\n\t\t\t\t...state,\r\n\t\t\t\tprefix,\r\n\t\t\t\tactiveIndex: undefined,\r\n\t\t\t\tvisibleOptions: isPrefix(prefix)\r\n\t\t\t\t\t? filterOption(options, prefix)\r\n\t\t\t\t\t: options,\r\n\t\t\t};\r\n\t\t}\r\n\t\tcase actions.SET_VALUE: {\r\n\t\t\tconst { value } = payload;\r\n\t\t\treturn { ...state, value };\r\n\t\t}\r\n\t\tcase actions.SET_SELECTED_OPTION: {\r\n\t\t\tconst { option } = payload;\r\n\t\t\treturn {\r\n\t\t\t\t...state,\r\n\t\t\t\tvalue: option.label,\r\n\t\t\t\tselectedOption: option,\r\n\t\t\t\tprefix: preparePrefix(option.label),\r\n\t\t\t};\r\n\t\t}\r\n\t\tcase actions.SET_FOCUSED: {\r\n\t\t\tconst { focused } = payload;\r\n\t\t\treturn { ...state, focused };\r\n\t\t}\r\n\t\tcase actions.RESET_SELECTION: {\r\n\t\t\treturn {\r\n\t\t\t\t...state,\r\n\t\t\t\tprefix: undefined,\r\n\t\t\t\tvalue: '',\r\n\t\t\t\tselectedOption: undefined,\r\n\t\t\t\tactiveIndex: undefined,\r\n\t\t\t\tactiveOption: undefined,\r\n\t\t\t\tvisibleOptions: state.options,\r\n\t\t\t};\r\n\t\t}\r\n\t\tcase actions.ARROW_UP_PRESSED: {\r\n\t\t\treturn reduceArrowUpPressed(state);\r\n\t\t}\r\n\t\tcase actions.ARROW_DOWN_PRESSED: {\r\n\t\t\treturn reduceArrowDownPressed(state);\r\n\t\t}\r\n\t\tcase actions.ENTER_PRESSED: {\r\n\t\t\tconst { callback } = payload;\r\n\t\t\treturn reduceEnterPressed(state, callback);\r\n\t\t}\r\n\t\tdefault:\r\n\t\t\treturn state;\r\n\t}\r\n};\r\n\r\nexport default reducer;\r\n","import React from 'react';\r\nimport classnames from 'classnames';\r\n\r\nexport default ({ label, active, selected }) => {\r\n\treturn (\r\n\t\t<span\r\n\t\t\tclassName={classnames('lunatic-dropdown-option', {\r\n\t\t\t\t'lunatic-dropdown-option-active': active,\r\n\t\t\t\t'lunatic-dropdown-option-selected': selected,\r\n\t\t\t})}\r\n\t\t>\r\n\t\t\t{label}\r\n\t\t</span>\r\n\t);\r\n};\r\n","import React, { useReducer, useRef } from 'react';\r\nimport classnames from 'classnames';\r\nimport PropTypes from 'prop-types';\r\nimport * as actions from '../commons/actions';\r\nimport Panel from '../commons/components/panel';\r\nimport ClosedIcon from '../commons/components/closed.icon';\r\nimport OpenedIcon from '../commons/components/opened.icon';\r\nimport DropdownContainer from '../commons/components/dropdown';\r\nimport reducer, { initial } from '../commons/reducer';\r\nimport Option from './option';\r\n\r\nconst Dropdown = ({\r\n\twidthAuto,\r\n\tid: initId,\r\n\tlabel,\r\n\tvalue,\r\n\toptions,\r\n\tresponse,\r\n\tonSelect,\r\n\tplaceholder,\r\n\tdisabled,\r\n\tfocused: initFocused,\r\n\tmandatory,\r\n\tlabelPosition,\r\n\tmanagement,\r\n\tclassName,\r\n\tzIndex,\r\n}) => {\r\n\tconst containerEl = useRef();\r\n\tconst [state, dispatch] = useReducer(reducer, {\r\n\t\t...initial,\r\n\t\tid: `dropdown-${initId}-${new Date().getMilliseconds()}`,\r\n\t\tdisabled,\r\n\t\tfocused: initFocused,\r\n\t});\r\n\tconst { focused, visible, activeIndex, id } = state;\r\n\tconst onSelect_ = createOnSelect(state, dispatch, onSelect);\r\n\tconst selectedOption = options.find((o) => o.value === value);\r\n\treturn (\r\n\t\t<DropdownContainer\r\n\t\t\tclassName={className || 'lunatic-dropdown'}\r\n\t\t\tref={containerEl}\r\n\t\t\tstate={state}\r\n\t\t\tdispatch={dispatch}\r\n\t\t\toptions={options}\r\n\t\t\tresponse={response}\r\n\t\t\tmanagement={management}\r\n\t\t\tlabel={label}\r\n\t\t\tlabelPosition={labelPosition}\r\n\t\t\tmandatory={mandatory}\r\n\t\t\tonSelect={onSelect_}\r\n\t\t\tvalue={value}\r\n\t\t\tzIndex={zIndex}\r\n\t\t>\r\n\t\t\t<span className={classnames('lunatic-dropdown-input', { focused })}>\r\n\t\t\t\t<input\r\n\t\t\t\t\ttype=\"button\"\r\n\t\t\t\t\tdisabled={disabled}\r\n\t\t\t\t\tvalue={selectedOption ? selectedOption.label : placeholder || ''}\r\n\t\t\t\t/>\r\n\t\t\t</span>\r\n\t\t\t{getIcon(state, dispatch)(visible, containerEl)}\r\n\t\t\t<div\r\n\t\t\t\ttabIndex=\"0\"\r\n\t\t\t\tclassName={classnames('lunatic-transition', {\r\n\t\t\t\t\tvisible: isDisplay(state),\r\n\t\t\t\t\t'width-auto': widthAuto,\r\n\t\t\t\t})}\r\n\t\t\t>\r\n\t\t\t\t<Panel\r\n\t\t\t\t\tidDropdown={id}\r\n\t\t\t\t\toptions={options}\r\n\t\t\t\t\tdisplay={isDisplay(state)}\r\n\t\t\t\t\tactiveIndex={activeIndex}\r\n\t\t\t\t\toptionComponent={Option}\r\n\t\t\t\t\tselectedOption={selectedOption}\r\n\t\t\t\t\tonSelect={onSelect_}\r\n\t\t\t\t\thandleActive={(index) => dispatch(actions.setActiveOption(index))}\r\n\t\t\t\t/>\r\n\t\t\t</div>\r\n\t\t</DropdownContainer>\r\n\t);\r\n};\r\n\r\nDropdown.propTypes = {\r\n\twidthAuto: PropTypes.bool,\r\n\tdisabled: PropTypes.bool,\r\n\tfocused: PropTypes.bool,\r\n\tzIndex: PropTypes.number,\r\n\tclassName: PropTypes.string,\r\n\tid: PropTypes.string,\r\n\toptions: PropTypes.array.isRequired,\r\n\tonSelect: PropTypes.func,\r\n\tplaceholder: PropTypes.string,\r\n\tvalue: PropTypes.oneOfType([\r\n\t\tPropTypes.string,\r\n\t\tPropTypes.number,\r\n\t\tPropTypes.bool,\r\n\t]),\r\n};\r\n\r\nDropdown.defaultProps = {\r\n\tdisabled: false,\r\n\tfocused: false,\r\n\toptions: [],\r\n\tzIndex: 0,\r\n\tonSelect: () => null,\r\n\tplaceholder: 'Search...',\r\n\twidthAuto: false,\r\n};\r\n\r\nexport default Dropdown;\r\n\r\n/* **/\r\nconst isDisplay = ({ visible, options }) => visible && options.length > 0;\r\n\r\n/** */\r\nconst getIcon = ({ disabled }, dispatch) => (visible, containerEl) => {\r\n\tif (disabled) {\r\n\t\treturn (\r\n\t\t\t<span className=\"lunatic-icon\">\r\n\t\t\t\t<ClosedIcon width={10} height={10} />\r\n\t\t\t</span>\r\n\t\t);\r\n\t}\r\n\treturn (\r\n\t\t<span\r\n\t\t\tclassName=\"lunatic-icon\"\r\n\t\t\ttabIndex=\"-1\"\r\n\t\t\tonMouseDown={(e) => {\r\n\t\t\t\te.stopPropagation();\r\n\t\t\t\te.preventDefault();\r\n\r\n\t\t\t\tif (visible) {\r\n\t\t\t\t\tdispatch(actions.hidePanel());\r\n\t\t\t\t} else {\r\n\t\t\t\t\tdispatch(actions.showPanel());\r\n\t\t\t\t\tcontainerEl.current.focus();\r\n\t\t\t\t}\r\n\t\t\t}}\r\n\t\t>\r\n\t\t\t{visible ? (\r\n\t\t\t\t<OpenedIcon width={10} height={10} />\r\n\t\t\t) : (\r\n\t\t\t\t<ClosedIcon width={10} height={10} />\r\n\t\t\t)}\r\n\t\t</span>\r\n\t);\r\n};\r\n\r\nconst createOnSelect = (_, dispatch, onSelect) => (option) => {\r\n\tdispatch(actions.setSelectedOption(option));\r\n\tdispatch(actions.hidePanel());\r\n\tonSelect(option);\r\n};\r\n","import React from 'react';\r\nimport Dropdown from './dropdown';\r\n\r\nconst childrenToOption = (children = []) =>\r\n\t(Array.isArray(children) ? children : [children]).map(child => {\r\n\t\tconst { value } = child.props;\r\n\t\tconst label = child.props.children;\r\n\t\tif (label === undefined || value === undefined) {\r\n\t\t\tthrow new Error('Ooops');\r\n\t\t}\r\n\t\treturn { label, value };\r\n\t});\r\n\r\nconst createDropdown = Component => ({ children, options, ...props }) => {\r\n\tconst o = options || childrenToOption(children);\r\n\treturn <Component options={o} {...props} />;\r\n};\r\n\r\nexport default createDropdown(Dropdown);\r\nexport { default as Option } from './option';\r\n","import React from 'react';\r\nimport classnames from 'classnames';\r\nimport { lettersMatching, preparePrefix } from './prefix-tools';\r\n\r\nexport default ({ label, active, prefix, selected }) => {\r\n\tconst initLetters = lettersMatching(label, prefix);\r\n\tconst what = label\r\n\t\t.split('')\r\n\t\t.reduce(\r\n\t\t\t({ letters, stack }, c) => {\r\n\t\t\t\tconst m = preparePrefix(c);\r\n\t\t\t\tconst [first, ...rest] = letters;\r\n\t\t\t\tif (m === first) {\r\n\t\t\t\t\treturn {\r\n\t\t\t\t\t\tletters: rest,\r\n\t\t\t\t\t\tstack: [...stack, { char: c, className: 'lunatic-prefix' }],\r\n\t\t\t\t\t};\r\n\t\t\t\t}\r\n\r\n\t\t\t\treturn {\r\n\t\t\t\t\tletters,\r\n\t\t\t\t\tstack: [...stack, { char: c, className: 'lunatic-normal' }],\r\n\t\t\t\t};\r\n\t\t\t},\r\n\t\t\t{ letters: initLetters, stack: [] }\r\n\t\t)\r\n\t\t.stack.reduce(\r\n\t\t\t({ last, stack }, { char, className }) => {\r\n\t\t\t\tif (!last) {\r\n\t\t\t\t\treturn { last: className, stack: [{ part: char, className }] };\r\n\t\t\t\t}\r\n\t\t\t\tif (last !== className) {\r\n\t\t\t\t\treturn {\r\n\t\t\t\t\t\tlast: className,\r\n\t\t\t\t\t\tstack: [{ part: char, className }, ...stack],\r\n\t\t\t\t\t};\r\n\t\t\t\t}\r\n\t\t\t\tconst [first, ...rest] = stack;\r\n\t\t\t\treturn {\r\n\t\t\t\t\tlast: className,\r\n\t\t\t\t\tstack: [{ ...first, part: `${first.part}${char}` }, ...rest],\r\n\t\t\t\t};\r\n\t\t\t},\r\n\t\t\t{ last: undefined, stack: [] }\r\n\t\t)\r\n\t\t.stack.reverse()\r\n\t\t.map(({ part, className }, i) => (\r\n\t\t\t<span className={className} key={i}>\r\n\t\t\t\t{part}\r\n\t\t\t</span>\r\n\t\t));\r\n\treturn (\r\n\t\t<span\r\n\t\t\tclassName={classnames('lunatic-dropdown-option', {\r\n\t\t\t\t'lunatic-dropdown-option-active': active,\r\n\t\t\t\t'lunatic-dropdown-option-selected': selected,\r\n\t\t\t})}\r\n\t\t>\r\n\t\t\t{what}\r\n\t\t</span>\r\n\t);\r\n};\r\n","import React from \"react\";\r\n\r\nexport default ({ width = 20, height = 20, color = \"#aaa\" }) => (\r\n <svg\r\n xmlns=\"http://www.w3.org/2000/svg\"\r\n width={width}\r\n height={height}\r\n x=\"0\"\r\n y=\"0\"\r\n enableBackground=\"new 0 0 612 612\"\r\n version=\"1.1\"\r\n viewBox=\"0 0 612 612\"\r\n xmlSpace=\"preserve\"\r\n >\r\n <path\r\n fill={color}\r\n d=\"M444.644 306l138.644-138.644c38.284-38.284 38.284-100.36 0-138.644-38.283-38.284-100.359-38.284-138.644 0L306 167.356 167.356 28.713c-38.284-38.284-100.36-38.284-138.644 0s-38.284 100.36 0 138.644L167.356 306 28.713 444.644c-38.284 38.283-38.284 100.36 0 138.644 38.284 38.284 100.36 38.284 138.644 0L306 444.644l138.644 138.644c38.283 38.284 100.36 38.284 138.644 0 38.284-38.283 38.284-100.36 0-138.644L444.644 306z\"\r\n ></path>\r\n </svg>\r\n);\r\n","import React from 'react';\r\nimport OpenedIcon from '../commons/components/opened.icon';\r\nimport CrossIcon from './cross.icon';\r\nimport ClosedIcon from '../commons/components/closed.icon';\r\n\r\n/** */\r\nconst getIcon = (visible) =>\r\n\tvisible ? (\r\n\t\t<OpenedIcon width={10} height={10} />\r\n\t) : (\r\n\t\t<ClosedIcon width={10} height={10} />\r\n\t);\r\n\r\nconst Icone = ({ prefix, visible, disabled, onDelete, onSwitch }) => {\r\n\tif (disabled) {\r\n\t\treturn (\r\n\t\t\t<span className=\"lunatic-icon\" tabIndex=\"-1\" onMouseDown={onSwitch}>\r\n\t\t\t\t<ClosedIcon width={10} height={10} />\r\n\t\t\t</span>\r\n\t\t);\r\n\t}\r\n\treturn prefix && prefix.length > 0 ? (\r\n\t\t<span className=\"lunatic-icon\" tabIndex=\"-1\" onMouseDown={onDelete}>\r\n\t\t\t<CrossIcon width={10} height={10} />\r\n\t\t</span>\r\n\t) : (\r\n\t\t<span className=\"lunatic-icon\" tabIndex=\"-1\" onMouseDown={onSwitch}>\r\n\t\t\t{getIcon(visible)}\r\n\t\t</span>\r\n\t);\r\n};\r\n\r\nexport default Icone;\r\n","import React, { useReducer, useRef, useEffect } from 'react';\r\nimport classnames from 'classnames';\r\nimport PropTypes from 'prop-types';\r\nimport * as actions from '../commons/actions';\r\nimport Panel from '../commons/components/panel';\r\nimport DropdownContainer from '../commons/components/dropdown';\r\nimport { preparePrefix } from './prefix-tools';\r\nimport reducer, { initial } from '../commons/reducer';\r\nimport Option from './option';\r\nimport Icone from './icone';\r\n\r\n/* **/\r\nconst isDisplay = ({ visible, visibleOptions }) =>\r\n\tvisible && visibleOptions.length > 0;\r\n\r\n/** */\r\nconst onChangeCallback = (state, dispatch) => (e) => {\r\n\te.stopPropagation();\r\n\te.preventDefault();\r\n\tconst {\r\n\t\ttarget: { value },\r\n\t} = e;\r\n\tdispatch(actions.setValue(value));\r\n\tdispatch(actions.setPrefix(preparePrefix(value)));\r\n\tif (value && value.length > 1) dispatch(actions.showPanel());\r\n};\r\n\r\n/** */\r\nconst createOnSelect = (_, dispatch, onSelect) => (option) => {\r\n\tdispatch(actions.setSelectedOption(option));\r\n\tdispatch(actions.hidePanel());\r\n\tonSelect(option);\r\n};\r\n\r\n/**\r\n *\r\n * @param {props}\r\n */\r\nfunction Dropdown({\r\n\twidthAuto,\r\n\toptions = [],\r\n\tonSelect,\r\n\tresponse,\r\n\tclassName,\r\n\tplaceholder,\r\n\tlabel,\r\n\tlabelPosition,\r\n\tmandatory,\r\n\tvalue: valueFromProps,\r\n\tzIndex,\r\n\tmanagement,\r\n\tdisabled,\r\n\tfocused: initFocused,\r\n}) {\r\n\tconst [state, dispatch] = useReducer(reducer, {\r\n\t\t...initial,\r\n\t\tid: `dropdown-${new Date().getMilliseconds()}`,\r\n\t\tdisabled,\r\n\t\tfocused: initFocused,\r\n\t});\r\n\tconst {\r\n\t\tprefix,\r\n\t\tvisible,\r\n\t\tactiveIndex,\r\n\t\tvisibleOptions,\r\n\t\tvalue,\r\n\t\tfocused,\r\n\t\tid,\r\n\t} = state;\r\n\tconst inputEl = useRef();\r\n\tconst containerEl = useRef();\r\n\tconst onSelect_ = createOnSelect(state, dispatch, onSelect);\r\n\r\n\tconst selectedOption = options.find((o) => o.label === value);\r\n\r\n\tuseEffect(\r\n\t\tfunction () {\r\n\t\t\tconst { current } = inputEl;\r\n\t\t\tif (current && focused) {\r\n\t\t\t\tcurrent.focus();\r\n\t\t\t}\r\n\t\t},\r\n\t\t[inputEl, focused]\r\n\t);\r\n\r\n\treturn (\r\n\t\t<DropdownContainer\r\n\t\t\tclassName={className || 'lunatic-dropdown'}\r\n\t\t\tstate={state}\r\n\t\t\tref={containerEl}\r\n\t\t\tdispatch={dispatch}\r\n\t\t\toptions={options}\r\n\t\t\tlabel={label}\r\n\t\t\tlabelPosition={labelPosition}\r\n\t\t\tmandatory={mandatory}\r\n\t\t\tresponse={response}\r\n\t\t\tonSelect={onSelect_}\r\n\t\t\tvalue={valueFromProps}\r\n\t\t\tzIndex={zIndex}\r\n\t\t\tmanagement={management}\r\n\t\t>\r\n\t\t\t<span\r\n\t\t\t\tclassName={classnames('lunatic-dropdown-input', { focused, disabled })}\r\n\t\t\t>\r\n\t\t\t\t<input\r\n\t\t\t\t\ttype=\"text\"\r\n\t\t\t\t\tref={inputEl}\r\n\t\t\t\t\tvalue={value || ''}\r\n\t\t\t\t\tdisabled={disabled}\r\n\t\t\t\t\tplaceholder={placeholder}\r\n\t\t\t\t\tautoComplete=\"list\"\r\n\t\t\t\t\tautoCorrect=\"off\"\r\n\t\t\t\t\tautoCapitalize=\"off\"\r\n\t\t\t\t\tspellCheck=\"false\"\r\n\t\t\t\t\ttabIndex=\"0\"\r\n\t\t\t\t\tonChange={onChangeCallback(state, dispatch)}\r\n\t\t\t\t/>\r\n\t\t\t</span>\r\n\t\t\t<Icone\r\n\t\t\t\tprefix={prefix}\r\n\t\t\t\tvisible={visible}\r\n\t\t\t\tdisabled={disabled}\r\n\t\t\t\tonDelete={(e) => {\r\n\t\t\t\t\te.stopPropagation();\r\n\t\t\t\t\tinputEl.current.value = '';\r\n\t\t\t\t\tdispatch(actions.resetSelection());\r\n\t\t\t\t\tonSelect_({ value: null });\r\n\t\t\t\t}}\r\n\t\t\t\tonSwitch={(e) => {\r\n\t\t\t\t\te.stopPropagation();\r\n\t\t\t\t\te.preventDefault();\r\n\t\t\t\t\tif (visible) {\r\n\t\t\t\t\t\tdispatch(actions.hidePanel());\r\n\t\t\t\t\t} else {\r\n\t\t\t\t\t\tdispatch(actions.showPanel());\r\n\t\t\t\t\t\tcontainerEl.current.focus();\r\n\t\t\t\t\t}\r\n\t\t\t\t}}\r\n\t\t\t/>\r\n\t\t\t<div\r\n\t\t\t\ttabIndex=\"-1\"\r\n\t\t\t\tclassName={classnames('lunatic-transition', {\r\n\t\t\t\t\tvisible: isDisplay(state),\r\n\t\t\t\t\t'width-auto': widthAuto,\r\n\t\t\t\t})}\r\n\t\t\t>\r\n\t\t\t\t<Panel\r\n\t\t\t\t\tidDropdown={id}\r\n\t\t\t\t\toptions={visibleOptions}\r\n\t\t\t\t\tdisplay={isDisplay(state) && !disabled}\r\n\t\t\t\t\tprefix={prefix}\r\n\t\t\t\t\tactiveIndex={activeIndex}\r\n\t\t\t\t\toptionComponent={Option}\r\n\t\t\t\t\tselectedOption={selectedOption}\r\n\t\t\t\t\tonSelect={onSelect_}\r\n\t\t\t\t\thandleActive={(index) => dispatch(actions.setActiveOption(index))}\r\n\t\t\t\t/>\r\n\t\t\t</div>\r\n\t\t</DropdownContainer>\r\n\t);\r\n}\r\n\r\nDropdown.propTypes = {\r\n\twidthAuto: PropTypes.bool,\r\n\tzIndex: PropTypes.number,\r\n\tdisabled: PropTypes.bool,\r\n\tfocused: PropTypes.bool,\r\n\tclassName: PropTypes.string,\r\n\tid: PropTypes.string,\r\n\toptions: PropTypes.array.isRequired,\r\n\tonSelect: PropTypes.func,\r\n\tplaceholder: PropTypes.string,\r\n\tvalue: PropTypes.oneOfType([\r\n\t\tPropTypes.string,\r\n\t\tPropTypes.number,\r\n\t\tPropTypes.bool,\r\n\t]),\r\n};\r\n\r\nDropdown.defaultProps = {\r\n\toptions: [],\r\n\tzIndex: 0,\r\n\tonSelect: () => null,\r\n\tplaceholder: 'Search...',\r\n\tdisabled: false,\r\n\tfocused: false,\r\n\twidthAuto: false,\r\n};\r\n\r\nexport default Dropdown;\r\n","export default (children = []) =>\r\n (Array.isArray(children) ? children : [children]).map(child => {\r\n const { value } = child.props;\r\n const label = child.props.children;\r\n if (label === undefined || value === undefined) {\r\n throw new Error(\"Ooops\");\r\n }\r\n return { label, value };\r\n });\r\n","import React from \"react\";\r\nimport DropdownEdit from \"./dropdown-edit\";\r\nimport childrenToOption from \"../commons/children-to-option\";\r\n\r\nconst createDropDown = Component => ({ children, options, ...props }) => {\r\n const o = options || childrenToOption(children);\r\n return <Component options={o} {...props} />;\r\n};\r\n\r\nexport default createDropDown(DropdownEdit);\r\nexport { default as Option } from \"./option\";\r\n","import React, { useState, useEffect } from 'react';\r\nimport PropTypes from 'prop-types';\r\nimport DropdownSimple from './dropdown-simple';\r\nimport DropdownEdit from './dropdown-edit';\r\nimport Declarations from '../declarations';\r\nimport * as U from '../../utils/lib';\r\nimport * as C from '../../constants';\r\nimport { interpret } from '../../utils/to-expose';\r\nimport './dropdown.scss';\r\n\r\nconst Dropdown = ({\r\n\tid,\r\n\tlabel,\r\n\tpreferences,\r\n\tresponse,\r\n\thandleChange,\r\n\toptions,\r\n\twritable,\r\n\tdeclarations,\r\n\tfeatures,\r\n\tbindings,\r\n\tmanagement,\r\n\tfreezeOptions,\r\n\t...rest\r\n}) => {\r\n\tconst [opts, setOpts] = useState(options);\r\n\r\n\t//TODO: improve feature support for MD, adding plainText to options & search input\r\n\tconst updatedFeatures = features.reduce(\r\n\t\t(acc, f) => (f === 'MD' ? acc : [...acc, f]),\r\n\t\t[]\r\n\t);\r\n\r\n\tuseEffect(() => {\r\n\t\tif (!freezeOptions) {\r\n\t\t\tconst featOptions = options.map(\r\n\t\t\t\t({ label: labelOption, ...restOpts }) => ({\r\n\t\t\t\t\tlabel: interpret(updatedFeatures)(bindings)(labelOption),\r\n\t\t\t\t\t...restOpts,\r\n\t\t\t\t})\r\n\t\t\t);\r\n\t\t\tsetOpts(featOptions);\r\n\t\t}\r\n\t}, [freezeOptions, features, bindings, options]);\r\n\r\n\tconst interpretedLabel = interpret(features)(bindings)(label);\r\n\tconst value = U.getResponseByPreference(preferences)(response);\r\n\r\n\tconst onSelect = (e) =>\r\n\t\thandleChange({\r\n\t\t\t[U.getResponseName(response)]: e.value,\r\n\t\t});\r\n\treturn (\r\n\t\t<>\r\n\t\t\t<Declarations\r\n\t\t\t\tid={id}\r\n\t\t\t\ttype={C.BEFORE_QUESTION_TEXT}\r\n\t\t\t\tdeclarations={declarations}\r\n\t\t\t\tfeatures={features}\r\n\t\t\t\tbindings={bindings}\r\n\t\t\t/>\r\n\t\t\t<Declarations\r\n\t\t\t\tid={id}\r\n\t\t\t\ttype={C.AFTER_QUESTION_TEXT}\r\n\t\t\t\tdeclarations={declarations}\r\n\t\t\t\tfeatures={features}\r\n\t\t\t\tbindings={bindings}\r\n\t\t\t/>\r\n\t\t\t{writable ? (\r\n\t\t\t\t<DropdownEdit\r\n\t\t\t\t\t{...rest}\r\n\t\t\t\t\tid={id}\r\n\t\t\t\t\tvalue={value}\r\n\t\t\t\t\tresponse={response}\r\n\t\t\t\t\tlabel={interpretedLabel}\r\n\t\t\t\t\toptions={opts}\r\n\t\t\t\t\tonSelect={onSelect}\r\n\t\t\t\t\tmanagement={management}\r\n\t\t\t\t/>\r\n\t\t\t) : (\r\n\t\t\t\t<DropdownSimple\r\n\t\t\t\t\t{...rest}\r\n\t\t\t\t\tid={id}\r\n\t\t\t\t\tvalue={value}\r\n\t\t\t\t\tresponse={response}\r\n\t\t\t\t\tlabel={interpretedLabel}\r\n\t\t\t\t\toptions={opts}\r\n\t\t\t\t\tonSelect={onSelect}\r\n\t\t\t\t\tmanagement={management}\r\n\t\t\t\t/>\r\n\t\t\t)}\r\n\t\t\t<Declarations\r\n\t\t\t\tid={id}\r\n\t\t\t\ttype={C.DETACHABLE}\r\n\t\t\t\tdeclarations={declarations}\r\n\t\t\t\tfeatures={features}\r\n\t\t\t\tbindings={bindings}\r\n\t\t\t/>\r\n\t\t</>\r\n\t);\r\n};\r\n\r\nDropdown.propTypes = {\r\n\tdisabled: PropTypes.bool,\r\n\twritable: PropTypes.bool,\r\n\tfeatures: PropTypes.arrayOf(PropTypes.string),\r\n\thandleChange: PropTypes.func,\r\n\tlabel: PropTypes.oneOfType([PropTypes.string, PropTypes.element]),\r\n\tclassName: PropTypes.string,\r\n\tzIndex: PropTypes.number,\r\n\tfreezeOptions: PropTypes.bool,\r\n};\r\n\r\nDropdown.defaultProps = {\r\n\twritable: false,\r\n\thandleChange: () => null,\r\n\tfeatures: [],\r\n\tlabel: undefined,\r\n\tclassName: undefined,\r\n\tzIndex: 0,\r\n\tdisabled: false,\r\n\tfreezeOptions: false,\r\n};\r\n\r\nexport default React.memo(Dropdown, U.areEqual);\r\n","import React from 'react';\r\nimport { InputDeclarationsWrapper } from '../declarations/wrappers';\r\nimport { areEqual } from '../../utils/lib';\r\nimport './input.scss';\r\n\r\nconst Input = (props) => (\r\n\t<InputDeclarationsWrapper type=\"text\" roleType=\"input\" {...props} />\r\n);\r\n\r\nexport default React.memo(Input, areEqual);\r\n","import React from 'react';\r\nimport PropTypes from 'prop-types';\r\nimport { InputDeclarationsWrapper } from '../declarations/wrappers';\r\nimport { areEqual } from '../../utils/lib';\r\nimport './input.scss';\r\n\r\nconst InputNumber = ({ numberAsTextfield, ...props }) => {\r\n\tconst { min, max, validators } = props;\r\n\treturn (\r\n\t\t<InputDeclarationsWrapper\r\n\t\t\ttype={numberAsTextfield ? 'text' : 'number'}\r\n\t\t\troleType=\"input\"\r\n\t\t\t{...props}\r\n\t\t\tvalidators={[minMaxValidator({ min, max }), ...validators]}\r\n\t\t\tisInputNumber\r\n\t\t/>\r\n\t);\r\n};\r\n\r\nconst minMaxValidator = ({ min, max }) => (value) => {\r\n\tif (!value) {\r\n\t\treturn undefined;\r\n\t}\r\n\tconst valueNumber = Number(value);\r\n\tif (!min && isDef(max) && valueNumber > max)\r\n\t\treturn <span>{`La valeur doit être inférieure à ${max}`}</span>;\r\n\telse if (isDef(min) && !max && valueNumber < min)\r\n\t\treturn <span>{`La valeur doit être supérieure à ${min}`}</span>;\r\n\telse if (isDef(min) && isDef(max) && (valueNumber < min || valueNumber > max))\r\n\t\treturn <span>{`La valeur doit être comprise entre ${min} et ${max}`}</span>;\r\n\treturn undefined;\r\n};\r\n\r\nconst isDef = (number) => number || number === 0;\r\n\r\nInputNumber.defaultProps = {\r\n\tvalidators: [],\r\n};\r\n\r\nInputNumber.propTypes = {\r\n\tvalidators: PropTypes.arrayOf(PropTypes.func),\r\n};\r\n\r\nexport default React.memo(InputNumber, areEqual);\r\n","import React from 'react';\r\nimport PropTypes from 'prop-types';\r\nimport { interpret } from '../../utils/to-expose';\r\nimport { buildStyleObject } from '../../utils/lib';\r\n\r\nconst FilterDescription = ({\r\n\tid,\r\n\tlabel,\r\n\tfilterDescription,\r\n\tfeatures,\r\n\tbindings,\r\n\tstyle,\r\n}) =>\r\n\tfilterDescription ? (\r\n\t\t<div\r\n\t\t\tid={`filter-description-${id}`}\r\n\t\t\taria-label={`filter-description`}\r\n\t\t\tclassName=\"filter-description-lunatic\"\r\n\t\t\tstyle={buildStyleObject(style)}\r\n\t\t>\r\n\t\t\t{interpret(features)(bindings)(label)}\r\n\t\t</div>\r\n\t) : null;\r\n\r\nFilterDescription.defaultProps = {\r\n\tfilterDescription: false,\r\n\tfeatures: [],\r\n\tbindings: {},\r\n\tstyle: {},\r\n};\r\n\r\nFilterDescription.propTypes = {\r\n\tid: PropTypes.string.isRequired,\r\n\tlabel: PropTypes.string.isRequired,\r\n\tfilterDescription: PropTypes.bool,\r\n\tfeatures: PropTypes.arrayOf(PropTypes.string),\r\n\tbindings: PropTypes.object,\r\n\tstyle: PropTypes.object,\r\n};\r\n\r\nexport default FilterDescription;\r\n","import React from 'react';\r\nimport PropTypes from 'prop-types';\r\nimport { buildStyleObject } from '../../utils/lib';\r\nimport './progress-bar.scss';\r\n\r\nconst ProgressBar = ({ id, value, style }) => {\r\n\tlet controledValue = value;\r\n\tif (value < 0) controledValue = 0;\r\n\tif (value > 100) controledValue = 100;\r\n\treturn (\r\n\t\t<div\r\n\t\t\tid={`progress-${id}`}\r\n\t\t\tclassName=\"progress-lunatic\"\r\n\t\t\tstyle={buildStyleObject(style)}\r\n\t\t>\r\n\t\t\t{`${controledValue.toFixed(0)} %`}\r\n\t\t\t<span style={{ width: `${controledValue}%` }} />\r\n\t\t</div>\r\n\t);\r\n};\r\n\r\nProgressBar.propTypes = {\r\n\tid: PropTypes.string.isRequired,\r\n\tvalue: PropTypes.number.isRequired,\r\n\tstyle: PropTypes.object,\r\n};\r\n\r\nexport default ProgressBar;\r\n","import React from 'react';\r\nimport { ListDeclarationsWrapper } from '../declarations/wrappers';\r\nimport { areEqual } from '../../utils/lib';\r\nimport './radio.scss';\r\n\r\nconst Radio = (props) => <ListDeclarationsWrapper type=\"radio\" {...props} />;\r\n\r\nexport default React.memo(Radio, areEqual);\r\n","import React, { useState, useEffect } from 'react';\r\nimport * as lunatic from '../components';\r\nimport { interpret } from '../../utils/to-expose';\r\nimport * as U from '../../utils/lib';\r\nimport './loop.scss';\r\n\r\nconst Loop = ({\r\n\tid,\r\n\tlabel,\r\n\titerations,\r\n\tcomponents,\r\n\tbindings,\r\n\thandleChange,\r\n\tloopDependencies,\r\n\tmaxPage,\r\n\tpagination,\r\n\tpaginatedLoop,\r\n\tcurrentPage,\r\n\tsetPage,\r\n\tdepth: loopDepth,\r\n\t...orchetratorProps\r\n}) => {\r\n\tconst [todo, setTodo] = useState({});\r\n\tconst vectorialBindings = U.buildVectorialBindings(bindings);\r\n\tconst { features } = orchetratorProps;\r\n\tconst featuresWithoutMD = features.filter((f) => f !== 'MD');\r\n\tconst iterationNb =\r\n\t\tparseInt(interpret(featuresWithoutMD)(vectorialBindings)(iterations), 10) ||\r\n\t\t0;\r\n\tconst involvedVariables = U.getInvolvedVariables(components);\r\n\r\n\t/**\r\n\t * Handle the increase in the number of iterations\r\n\t * Assume we only want to update if iterationNb changes\r\n\t */\r\n\tuseEffect(() => {\r\n\t\tconst toUpdate = involvedVariables.reduce((acc, { name: iv, depth }) => {\r\n\t\t\tif (bindings[iv] && iterationNb > bindings[iv].length)\r\n\t\t\t\treturn {\r\n\t\t\t\t\t...acc,\r\n\t\t\t\t\t[iv]: [\r\n\t\t\t\t\t\t...bindings[iv],\r\n\t\t\t\t\t\t...new Array(iterationNb - bindings[iv].length).fill(\r\n\t\t\t\t\t\t\tU.buildEmptyValue(depth - loopDepth + 1)\r\n\t\t\t\t\t\t),\r\n\t\t\t\t\t],\r\n\t\t\t\t};\r\n\t\t\treturn acc;\r\n\t\t}, {});\r\n\t\tif (Object.keys(toUpdate).length !== 0) handleChange(toUpdate);\r\n\t\t// eslint-disable-next-line react-hooks/exhaustive-deps\r\n\t}, [iterationNb]);\r\n\r\n\tuseEffect(() => {\r\n\t\tif (Object.keys(todo).length !== 0) {\r\n\t\t\tconst { up, rowNumber } = todo;\r\n\t\t\tconst todos = Object.entries(up).reduce((acc, [k, value], i) => {\r\n\t\t\t\tconst previousValue = bindings[k];\r\n\t\t\t\tconst newValue = previousValue.map((v, i) =>\r\n\t\t\t\t\ti === rowNumber ? value : v\r\n\t\t\t\t);\r\n\t\t\t\treturn { ...acc, [k]: newValue };\r\n\t\t\t}, {});\r\n\t\t\thandleChange(todos);\r\n\t\t\tsetTodo({});\r\n\t\t}\r\n\t}, [bindings, todo, handleChange]);\r\n\r\n\tconst flattenComponents = U.buildLoopComponents(iterationNb)(components);\r\n\r\n\tconst loopComponents = flattenComponents.map(\r\n\t\t({ componentType, id: idC, rowNumber, conditionFilter, page, ...rest }) => {\r\n\t\t\tconst loopBindings = U.buildBindingsForDeeperComponents(rowNumber)(\r\n\t\t\t\tbindings\r\n\t\t\t);\r\n\t\t\tif (!U.displayLoopQuestion(loopDependencies)(loopBindings)) return null;\r\n\t\t\tconst Component = lunatic[componentType];\r\n\t\t\tif (\r\n\t\t\t\tinterpret(featuresWithoutMD)(loopBindings, true)(conditionFilter) !==\r\n\t\t\t\t'normal'\r\n\t\t\t)\r\n\t\t\t\treturn null;\r\n\t\t\treturn (\r\n\t\t\t\t<div key={`${idC}-loop-${rowNumber}`} className=\"loop-component\">\r\n\t\t\t\t\t<Component\r\n\t\t\t\t\t\t{...orchetratorProps}\r\n\t\t\t\t\t\t{...rest}\r\n\t\t\t\t\t\tid={`${idC}-loop-${rowNumber}`}\r\n\t\t\t\t\t\thandleChange={(up) => setTodo({ up, rowNumber })}\r\n\t\t\t\t\t\tbindings={loopBindings}\r\n\t\t\t\t\t\tcomponentType={componentType}\r\n\t\t\t\t\t/>\r\n\t\t\t\t</div>\r\n\t\t\t);\r\n\t\t}\r\n\t);\r\n\r\n\treturn (\r\n\t\t<div id={`loop-${id}`} className=\"lunatic-loop\">\r\n\t\t\t{loopComponents}\r\n\t\t</div>\r\n\t);\r\n};\r\n\r\nexport default React.memo(Loop, U.areEqual);\r\n","import React, { useState, useEffect } from 'react';\r\nimport * as lunatic from '../components';\r\nimport { interpret } from '../../utils/to-expose';\r\nimport * as U from '../../utils/lib';\r\nimport './loop.scss';\r\n\r\nconst PaginatedLoop = ({\r\n\tid,\r\n\tlabel,\r\n\titerations,\r\n\tcomponents,\r\n\tbindings,\r\n\thandleChange,\r\n\tloopDependencies,\r\n\tmaxPage,\r\n\tpagination,\r\n\tpaginatedLoop,\r\n\tcurrentPage,\r\n\tsetPage,\r\n\tflow,\r\n\tdepth: loopDepth,\r\n\t...orchetratorProps\r\n}) => {\r\n\tconst [todo, setTodo] = useState({});\r\n\tconst vectorialBindings = U.buildVectorialBindings(bindings);\r\n\tconst { features } = orchetratorProps;\r\n\tconst featuresWithoutMD = features.filter((f) => f !== 'MD');\r\n\tconst iterationNb =\r\n\t\tparseInt(interpret(featuresWithoutMD)(vectorialBindings)(iterations), 10) ||\r\n\t\t0;\r\n\tconst involvedVariables = U.getInvolvedVariables(components);\r\n\r\n\t/**\r\n\t * Handle the increase in the number of iterations\r\n\t * Assume we only want to update if iterationNb changes\r\n\t */\r\n\tuseEffect(() => {\r\n\t\tconst toUpdate = involvedVariables.reduce((acc, { name: iv, depth }) => {\r\n\t\t\tif (bindings[iv] && iterationNb > bindings[iv].length)\r\n\t\t\t\treturn {\r\n\t\t\t\t\t...acc,\r\n\t\t\t\t\t[iv]: [\r\n\t\t\t\t\t\t...bindings[iv],\r\n\t\t\t\t\t\t...new Array(iterationNb - bindings[iv].length).fill(\r\n\t\t\t\t\t\t\tU.buildEmptyValue(depth)\r\n\t\t\t\t\t\t),\r\n\t\t\t\t\t],\r\n\t\t\t\t};\r\n\t\t\treturn acc;\r\n\t\t}, {});\r\n\t\tif (Object.keys(toUpdate).length !== 0) handleChange(toUpdate);\r\n\t\t// eslint-disable-next-line react-hooks/exhaustive-deps\r\n\t}, [iterationNb]);\r\n\r\n\tuseEffect(() => {\r\n\t\tif (Object.keys(todo).length !== 0) {\r\n\t\t\tconst { up, rowNumber } = todo;\r\n\t\t\tconst todos = Object.entries(up).reduce((acc, [k, value], i) => {\r\n\t\t\t\tconst previousValue = bindings[k];\r\n\t\t\t\tconst newValue = previousValue.map((v, i) =>\r\n\t\t\t\t\ti === rowNumber ? value : v\r\n\t\t\t\t);\r\n\t\t\t\treturn { ...acc, [k]: newValue };\r\n\t\t\t}, {});\r\n\t\t\thandleChange(todos);\r\n\t\t\tsetTodo({});\r\n\t\t}\r\n\t}, [bindings, todo, handleChange]);\r\n\r\n\t/**\r\n\t * Handle init page\r\n\t */\r\n\r\n\tif (paginatedLoop && loopDepth > currentPage.split('.').length - 1) {\r\n\t\tif (flow === U.FLOW_NEXT) {\r\n\t\t\tsetPage(`${currentPage}.1#1`);\r\n\t\t} else if (flow === U.FLOW_PREVIOUS) {\r\n\t\t\tsetPage(`${currentPage}.${maxPage}#${iterationNb}`);\r\n\t\t}\r\n\t\treturn null;\r\n\t}\r\n\r\n\tconst flattenComponents = U.buildLoopComponents(iterationNb)(components);\r\n\r\n\t// if (!U.displayLoop(loopDependencies)(bindings)) {\r\n\t// \treturn <div>Pas de questionnaire individuel, passez à la suite</div>;\r\n\t// }\r\n\r\n\tconst {\r\n\t\tcurrentRootPage,\r\n\t\tcurrentComponentIndex,\r\n\t\tcurrentIteration,\r\n\t\tcurrentPageWithoutAnyIteration,\r\n\t} = U.splitPage(currentPage, loopDepth);\r\n\r\n\tif (paginatedLoop && loopDepth === currentPage.split('.').length - 1) {\r\n\t\t// Previous at first component\r\n\t\tif (currentComponentIndex < 1) {\r\n\t\t\tsetPage(`${currentRootPage}.${maxPage}#${currentIteration - 1}`);\r\n\t\t\treturn null;\r\n\t\t}\r\n\r\n\t\t// Next at last component\r\n\t\tif (currentComponentIndex > maxPage) {\r\n\t\t\tsetPage(`${currentRootPage}.1#${currentIteration + 1}`);\r\n\t\t\treturn null;\r\n\t\t}\r\n\r\n\t\t// Previous at first iteration\r\n\t\tif (currentIteration < 1) {\r\n\t\t\tconst splitRoot = currentRootPage.split('.');\r\n\t\t\tif (splitRoot.length === 1) setPage(`${parseInt(splitRoot[0], 10) - 1}`);\r\n\t\t\telse {\r\n\t\t\t\tconst subPagesToUpdate = splitRoot.slice().pop().split('#');\r\n\t\t\t\tconst newSubPage = `${parseInt(subPagesToUpdate[0], 10) - 1}#${\r\n\t\t\t\t\tsubPagesToUpdate[1]\r\n\t\t\t\t}`;\r\n\t\t\t\tconst newPage = [\r\n\t\t\t\t\t...splitRoot.slice(0, splitRoot.length - 1),\r\n\t\t\t\t\tnewSubPage,\r\n\t\t\t\t].join('.');\r\n\t\t\t\tsetPage(`${newPage}`);\r\n\t\t\t}\r\n\t\t\treturn null;\r\n\t\t}\r\n\r\n\t\t// Next at last iteration\r\n\t\tif (currentIteration > iterationNb) {\r\n\t\t\tconst splitRoot = currentRootPage.split('#');\r\n\t\t\tconst newRootPage =\r\n\t\t\t\tsplitRoot.length === 1\r\n\t\t\t\t\t? parseInt(splitRoot[0], 10) + 1\r\n\t\t\t\t\t: splitRoot.slice(0, -1).join('#');\r\n\t\t\tif (splitRoot.length === 1) setPage(`${newRootPage}`);\r\n\t\t\telse {\r\n\t\t\t\tconst {\r\n\t\t\t\t\tcurrentRootPage: newCurrentRootPage,\r\n\t\t\t\t\tcurrentIteration: newCurrentIteration,\r\n\t\t\t\t} = U.splitPage(currentRootPage, loopDepth);\r\n\t\t\t\tsetPage(`${newCurrentRootPage}.1#${newCurrentIteration + 1}`);\r\n\t\t\t}\r\n\t\t\treturn null;\r\n\t\t}\r\n\t}\r\n\r\n\tconst loopComponents = flattenComponents.reduce(\r\n\t\t(\r\n\t\t\tacc,\r\n\t\t\t{ componentType, id: idC, rowNumber, conditionFilter, page, ...rest }\r\n\t\t) => {\r\n\t\t\tconst loopBindings = U.buildBindingsForDeeperComponents(rowNumber)(\r\n\t\t\t\tbindings\r\n\t\t\t);\r\n\t\t\tif (!U.displayLoopQuestion(loopDependencies)(loopBindings)) return acc;\r\n\t\t\tconst Component = lunatic[componentType];\r\n\r\n\t\t\tif (\r\n\t\t\t\tinterpret(featuresWithoutMD)(loopBindings, true)(conditionFilter) !==\r\n\t\t\t\t\t'normal' ||\r\n\t\t\t\t(pagination && !currentPageWithoutAnyIteration.startsWith(page)) ||\r\n\t\t\t\t(paginatedLoop && rowNumber + 1 !== currentIteration)\r\n\t\t\t)\r\n\t\t\t\treturn acc;\r\n\t\t\treturn [\r\n\t\t\t\t...acc,\r\n\t\t\t\t<div key={`${idC}-loop-${rowNumber}`} className=\"loop-component\">\r\n\t\t\t\t\t<Component\r\n\t\t\t\t\t\t{...orchetratorProps}\r\n\t\t\t\t\t\t{...rest}\r\n\t\t\t\t\t\tid={`${idC}-loop-${rowNumber}`}\r\n\t\t\t\t\t\thandleChange={(up) => setTodo({ up, rowNumber })}\r\n\t\t\t\t\t\tbindings={loopBindings}\r\n\t\t\t\t\t\tcomponentType={componentType}\r\n\t\t\t\t\t\tpagination={pagination}\r\n\t\t\t\t\t\tcurrentPage={currentPage}\r\n\t\t\t\t\t\tsetPage={setPage}\r\n\t\t\t\t\t\tflow={flow}\r\n\t\t\t\t\t/>\r\n\t\t\t\t</div>,\r\n\t\t\t];\r\n\t\t},\r\n\t\t[]\r\n\t);\r\n\r\n\tif (paginatedLoop && loopComponents.length === 0) {\r\n\t\tif (flow === U.FLOW_NEXT) {\r\n\t\t\tsetPage(\r\n\t\t\t\t`${currentRootPage}.${currentComponentIndex + 1}#${currentIteration}`\r\n\t\t\t);\r\n\t\t} else if (flow === U.FLOW_PREVIOUS) {\r\n\t\t\tsetPage(\r\n\t\t\t\t`${currentRootPage}.${currentComponentIndex - 1}#${currentIteration}`\r\n\t\t\t);\r\n\t\t}\r\n\t\treturn null;\r\n\t}\r\n\r\n\treturn (\r\n\t\t<div id={`loop-${id}`} className=\"lunatic-loop\">\r\n\t\t\t{loopComponents}\r\n\t\t</div>\r\n\t);\r\n};\r\n\r\nexport default React.memo(PaginatedLoop, U.areEqual);\r\n","import * as C from '../../../constants';\r\n\r\nexport const buildContentForLoopConstructor = ({ components, headers }) => {\r\n\t// Start hack to find interation number\r\n\t// Refactor if we have to handle complex components (vector, matrix)\r\n\tconst iterations =\r\n\t\tcomponents.find((c) => c.response).response.values[C.COLLECTED].length || 1;\r\n\t// End\r\n\tconst initialArray = [...Array(iterations).keys()];\r\n\tconst uiComponents = components.map((comp) => {\r\n\t\tconst { response, ...other } = comp;\r\n\t\tif (!response) return initialArray.map(() => comp);\r\n\t\t// Handle reponses & cells components ?\r\n\t\tconst { name, values } = response;\r\n\t\treturn initialArray.map((rowNumber) => {\r\n\t\t\tconst newValues = Object.entries(values).reduce(\r\n\t\t\t\t(acc, [key, value]) => ({\r\n\t\t\t\t\t...acc,\r\n\t\t\t\t\t[key]: value ? value[rowNumber] : null,\r\n\t\t\t\t}),\r\n\t\t\t\t{}\r\n\t\t\t);\r\n\t\t\treturn {\r\n\t\t\t\t...other,\r\n\t\t\t\tresponse: { name, values: newValues },\r\n\t\t\t\trowNumber,\r\n\t\t\t};\r\n\t\t});\r\n\t}, []);\r\n\tconst transpose = (m) => m[0].map((_, i) => m.map((x) => x[i]));\r\n\tconst rows = transpose(uiComponents);\r\n\treturn headers ? [headers, ...rows] : rows;\r\n};\r\n","import React from 'react';\r\nimport * as lunatic from '../../components';\r\nimport * as U from '../../../utils/lib';\r\nimport { interpret } from '../../../utils/to-expose';\r\nimport { buildContentForLoopConstructor } from './build-components';\r\n\r\nconst BodyComponent = ({\r\n\tcomponentType,\r\n\tmainId,\r\n\theaders,\r\n\tcomponents,\r\n\tbindings,\r\n\twidth,\r\n\tpreferences,\r\n\tpositioning,\r\n\tmanagement,\r\n\tfeatures,\r\n\tsetTodo,\r\n}) => {\r\n\tconst uiComponents = buildContentForLoopConstructor({\r\n\t\tcomponents,\r\n\t\theaders,\r\n\t});\r\n\tif (componentType === 'RosterForLoop')\r\n\t\treturn (\r\n\t\t\t<table id={`table-${mainId}`} className=\"table-lunatic\">\r\n\t\t\t\t<tbody>\r\n\t\t\t\t\t{uiComponents.map((row, i) => (\r\n\t\t\t\t\t\t<tr key={`table-${mainId}-row${i}`}>\r\n\t\t\t\t\t\t\t{row.map((component, j) => {\r\n\t\t\t\t\t\t\t\tconst {\r\n\t\t\t\t\t\t\t\t\tlabel,\r\n\t\t\t\t\t\t\t\t\theaderCell,\r\n\t\t\t\t\t\t\t\t\tcolspan,\r\n\t\t\t\t\t\t\t\t\trowspan,\r\n\t\t\t\t\t\t\t\t\tcomponentType,\r\n\t\t\t\t\t\t\t\t\tid,\r\n\t\t\t\t\t\t\t\t\trowNumber,\r\n\t\t\t\t\t\t\t\t\t...componentProps\r\n\t\t\t\t\t\t\t\t} = component;\r\n\t\t\t\t\t\t\t\tconst localBindings = U.buildBindingsForDeeperComponents(\r\n\t\t\t\t\t\t\t\t\trowNumber\r\n\t\t\t\t\t\t\t\t)(bindings);\r\n\t\t\t\t\t\t\t\tif (componentType) {\r\n\t\t\t\t\t\t\t\t\tconst Component = lunatic[componentType];\r\n\t\t\t\t\t\t\t\t\treturn (\r\n\t\t\t\t\t\t\t\t\t\t<td\r\n\t\t\t\t\t\t\t\t\t\t\tkey={`table-${mainId}-row-${i}-cell-${j}`}\r\n\t\t\t\t\t\t\t\t\t\t\tstyle={{ width }}\r\n\t\t\t\t\t\t\t\t\t\t>\r\n\t\t\t\t\t\t\t\t\t\t\t<Component\r\n\t\t\t\t\t\t\t\t\t\t\t\t{...componentProps}\r\n\t\t\t\t\t\t\t\t\t\t\t\tid={`${id}-row-${i}`}\r\n\t\t\t\t\t\t\t\t\t\t\t\tlabel={label}\r\n\t\t\t\t\t\t\t\t\t\t\t\thandleChange={(up) => {\r\n\t\t\t\t\t\t\t\t\t\t\t\t\tsetTodo({ up, rowNumber });\r\n\t\t\t\t\t\t\t\t\t\t\t\t}}\r\n\t\t\t\t\t\t\t\t\t\t\t\tpreferences={preferences}\r\n\t\t\t\t\t\t\t\t\t\t\t\tpositioning={positioning}\r\n\t\t\t\t\t\t\t\t\t\t\t\tmanagement={management}\r\n\t\t\t\t\t\t\t\t\t\t\t\tfeatures={features}\r\n\t\t\t\t\t\t\t\t\t\t\t\tbindings={localBindings}\r\n\t\t\t\t\t\t\t\t\t\t\t\tzIndex={uiComponents.length - i || 0}\r\n\t\t\t\t\t\t\t\t\t\t\t/>\r\n\t\t\t\t\t\t\t\t\t\t</td>\r\n\t\t\t\t\t\t\t\t\t);\r\n\t\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\t\tconst cellOptions = {\r\n\t\t\t\t\t\t\t\t\tkey: `table-${mainId}-row-${i}-cell-${j}`,\r\n\t\t\t\t\t\t\t\t\tstyle: { width },\r\n\t\t\t\t\t\t\t\t\tcolSpan: colspan || 1,\r\n\t\t\t\t\t\t\t\t\trowSpan: rowspan || 1,\r\n\t\t\t\t\t\t\t\t};\r\n\t\t\t\t\t\t\t\tconst interpretedLabel = interpret(features)(bindings)(label);\r\n\t\t\t\t\t\t\t\treturn headerCell ? (\r\n\t\t\t\t\t\t\t\t\t<th {...cellOptions}>{interpretedLabel}</th>\r\n\t\t\t\t\t\t\t\t) : (\r\n\t\t\t\t\t\t\t\t\t<td {...cellOptions}>{interpretedLabel}</td>\r\n\t\t\t\t\t\t\t\t);\r\n\t\t\t\t\t\t\t})}\r\n\t\t\t\t\t\t</tr>\r\n\t\t\t\t\t))}\r\n\t\t\t\t</tbody>\r\n\t\t\t</table>\r\n\t\t);\r\n\telse\r\n\t\treturn (\r\n\t\t\t<div className=\"block-for-loop\">\r\n\t\t\t\t{uiComponents.map((row, i) =>\r\n\t\t\t\t\trow.map(({ componentType, id, label, ...componentProps }) => {\r\n\t\t\t\t\t\tconst Component = lunatic[componentType];\r\n\t\t\t\t\t\tconst localBindings = U.buildBindingsForDeeperComponents(i)(\r\n\t\t\t\t\t\t\tbindings\r\n\t\t\t\t\t\t);\r\n\t\t\t\t\t\treturn (\r\n\t\t\t\t\t\t\t<div className=\"block-component\" key={`${id}-row-${i}`}>\r\n\t\t\t\t\t\t\t\t<Component\r\n\t\t\t\t\t\t\t\t\t{...componentProps}\r\n\t\t\t\t\t\t\t\t\tid={`${id}-row-${i}`}\r\n\t\t\t\t\t\t\t\t\tlabel={label}\r\n\t\t\t\t\t\t\t\t\thandleChange={(up) => {\r\n\t\t\t\t\t\t\t\t\t\tsetTodo({ up, rowNumber: i });\r\n\t\t\t\t\t\t\t\t\t}}\r\n\t\t\t\t\t\t\t\t\tpreferences={preferences}\r\n\t\t\t\t\t\t\t\t\tpositioning={positioning}\r\n\t\t\t\t\t\t\t\t\tmanagement={management}\r\n\t\t\t\t\t\t\t\t\tfeatures={features}\r\n\t\t\t\t\t\t\t\t\tbindings={localBindings}\r\n\t\t\t\t\t\t\t\t/>\r\n\t\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t);\r\n\t\t\t\t\t})\r\n\t\t\t\t)}\r\n\t\t\t</div>\r\n\t\t);\r\n};\r\n\r\nexport default BodyComponent;\r\n","import React, { useState, useEffect } from 'react';\r\nimport PropTypes from 'prop-types';\r\nimport * as lunatic from '../../components';\r\nimport BodyComponent from './body-component';\r\nimport Declarations from '../../declarations';\r\nimport * as U from '../../../utils/lib';\r\nimport * as C from '../../../constants';\r\nimport { interpret } from '../../../utils/to-expose';\r\n\r\nconst LoopConstructorWrapper = ({\r\n\tid: mainId,\r\n\tlabel: mainLabel,\r\n\tcomponents,\r\n\thandleChange,\r\n\tlines,\r\n\tdeclarations,\r\n\tfeatures,\r\n\tbindings,\r\n\taddBtnLabel,\r\n\thideBtn,\r\n\tcomponentType,\r\n\t...otherProps\r\n}) => {\r\n\tconst [todo, setTodo] = useState({});\r\n\tconst minLines = Math.max(\r\n\t\tlines.min || 0,\r\n\t\tU.getLoopConstructorInitLines(components)\r\n\t);\r\n\tconst maxLines = lines ? lines.max : undefined;\r\n\r\n\tconst width = `${100 / Math.max(...components.map((row) => row.length))}%`;\r\n\tconst Button = lunatic.Button;\r\n\tconst involvedVariables = U.getInvolvedVariables(components);\r\n\r\n\tuseEffect(() => {\r\n\t\tif (Object.keys(todo).length !== 0) {\r\n\t\t\tconst { up, rowNumber } = todo;\r\n\t\t\tconst [key, value] = Object.entries(up)[0];\r\n\t\t\tconst previousValue = bindings[key];\r\n\t\t\tconst newValue = previousValue.map((v, i) =>\r\n\t\t\t\ti === rowNumber ? value : v\r\n\t\t\t);\r\n\t\t\thandleChange({ [key]: newValue });\r\n\t\t\tsetTodo({});\r\n\t\t}\r\n\t}, [bindings, todo, handleChange]);\r\n\r\n\tconst addLine = () => {\r\n\t\tconst toHandle = involvedVariables.reduce(\r\n\t\t\t(acc, { name: iv, depth }) => ({\r\n\t\t\t\t...acc,\r\n\t\t\t\t[iv]: [...bindings[iv], null],\r\n\t\t\t}),\r\n\t\t\t{}\r\n\t\t);\r\n\t\thandleChange(toHandle);\r\n\t};\r\n\r\n\tconst customBtnLabel =\r\n\t\t(componentType === 'Loop' && interpret(features)(bindings)(mainLabel)) ||\r\n\t\taddBtnLabel;\r\n\r\n\treturn (\r\n\t\t<>\r\n\t\t\t<Declarations\r\n\t\t\t\tid={mainId}\r\n\t\t\t\ttype={C.BEFORE_QUESTION_TEXT}\r\n\t\t\t\tdeclarations={declarations}\r\n\t\t\t\tfeatures={features}\r\n\t\t\t\tbindings={bindings}\r\n\t\t\t/>\r\n\t\t\t{componentType === 'RosterForLoop' && mainLabel && (\r\n\t\t\t\t<label\r\n\t\t\t\t\thtmlFor={`loops-constructor-${mainId}`}\r\n\t\t\t\t\tid={`loops-constructor-label-${mainId}`}\r\n\t\t\t\t>\r\n\t\t\t\t\t{interpret(features)(bindings)(mainLabel)}\r\n\t\t\t\t</label>\r\n\t\t\t)}\r\n\t\t\t<Declarations\r\n\t\t\t\tid={mainId}\r\n\t\t\t\ttype={C.AFTER_QUESTION_TEXT}\r\n\t\t\t\tdeclarations={declarations}\r\n\t\t\t\tfeatures={features}\r\n\t\t\t\tbindings={bindings}\r\n\t\t\t/>\r\n\t\t\t<BodyComponent\r\n\t\t\t\tmainId={mainId}\r\n\t\t\t\tcomponentType={componentType}\r\n\t\t\t\tcomponents={components}\r\n\t\t\t\tbindings={bindings}\r\n\t\t\t\twidth={width}\r\n\t\t\t\tfeatures={features}\r\n\t\t\t\tsetTodo={setTodo}\r\n\t\t\t\t{...otherProps}\r\n\t\t\t/>\r\n\t\t\t{!hideBtn && (\r\n\t\t\t\t<Button\r\n\t\t\t\t\tlabel=\"addLine\"\r\n\t\t\t\t\tvalue={customBtnLabel}\r\n\t\t\t\t\tdisabled={\r\n\t\t\t\t\t\tNumber.isInteger(minLines) && minLines === maxLines\r\n\t\t\t\t\t\t//||\r\n\t\t\t\t\t\t// Want to enable addition depsite of empty lines?\r\n\t\t\t\t\t\t// \tU.lastLoopChildLineIsEmpty(bindings)(involvedVariables)\r\n\t\t\t\t\t}\r\n\t\t\t\t\tonClick={addLine}\r\n\t\t\t\t/>\r\n\t\t\t)}\r\n\t\t\t<Declarations\r\n\t\t\t\tid={mainId}\r\n\t\t\t\ttype={C.DETACHABLE}\r\n\t\t\t\tdeclarations={declarations}\r\n\t\t\t\tfeatures={features}\r\n\t\t\t\tbindings={bindings}\r\n\t\t\t/>\r\n\t\t</>\r\n\t);\r\n};\r\n\r\nLoopConstructorWrapper.defaultProps = {\r\n\tlabel: '',\r\n\tpreferences: ['COLLECTED'],\r\n\tcomponents: [],\r\n\tlines: {},\r\n\tpositioning: 'DEFAULT',\r\n\tdeclarations: [],\r\n\tfeatures: [],\r\n\tbindings: {},\r\n\taddBtnLabel: 'Add a line',\r\n\tmanagement: false,\r\n\thideBtn: false,\r\n\tstyle: {},\r\n};\r\n\r\nLoopConstructorWrapper.propTypes = {\r\n\tcomponentType: PropTypes.string.isRequired,\r\n\tid: PropTypes.string.isRequired,\r\n\tlabel: PropTypes.string,\r\n\tpreferences: PropTypes.arrayOf(U.valueTypePropTypes),\r\n\tcomponents: PropTypes.array,\r\n\thandleChange: PropTypes.func.isRequired,\r\n\tlines: U.linesPropTypes,\r\n\tpositioning: PropTypes.oneOf(['DEFAULT', 'HORIZONTAL', 'VERTICAL']),\r\n\tdeclarations: U.declarationsPropTypes,\r\n\tfeatures: PropTypes.arrayOf(PropTypes.string),\r\n\tbindings: PropTypes.object,\r\n\taddBtnLabel: PropTypes.string,\r\n\thideBtn: PropTypes.bool,\r\n\tmanagement: PropTypes.bool,\r\n\tstyle: PropTypes.object,\r\n};\r\n\r\nexport default React.memo(LoopConstructorWrapper, U.areEqual);\r\n","import React from 'react';\r\nimport LoopConstructorWrapper from '../wrapper';\r\nimport * as U from '../../../utils/lib';\r\nimport './block.scss';\r\n\r\nconst BlockForLoop = (props) => <LoopConstructorWrapper {...props} />;\r\n\r\nexport default React.memo(BlockForLoop, U.areEqual);\r\n","import React from 'react';\r\nimport Loop from '../loop/component';\r\nimport PaginatedLoop from '../loop/paginated-component';\r\nimport BlockForLoop from '../loop-constructor/block';\r\n\r\nconst LoopWrapper = (props) => {\r\n\tconst { iterations, pagination } = props;\r\n\tif (iterations) {\r\n\t\tif (pagination) return <PaginatedLoop {...props} />;\r\n\t\treturn <Loop {...props} />;\r\n\t}\r\n\treturn <BlockForLoop {...props} />;\r\n};\r\n\r\nexport default LoopWrapper;\r\n","import React from 'react';\r\nimport LoopConstructorWrapper from '../wrapper';\r\nimport * as U from '../../../utils/lib';\r\n\r\nconst RosterForLoop = (props) => <LoopConstructorWrapper {...props} />;\r\n\r\nexport default React.memo(RosterForLoop, U.areEqual);\r\n","import React from 'react';\r\nimport PropTypes from 'prop-types';\r\nimport { SimpleDeclarationsWrapper } from '../declarations/wrappers';\r\nimport * as U from '../../utils/lib';\r\nimport { interpret } from '../../utils/to-expose';\r\nimport './sequence.scss';\r\n\r\nconst Sequence = ({ id, label, declarations, features, bindings, style }) => (\r\n\t<SimpleDeclarationsWrapper\r\n\t\tid={id}\r\n\t\tdeclarations={declarations}\r\n\t\tfeatures={features}\r\n\t\tbindings={bindings}\r\n\t>\r\n\t\t<div\r\n\t\t\taria-label={`sequence-${id}`}\r\n\t\t\tclassName=\"sequence-lunatic\"\r\n\t\t\tstyle={U.buildStyleObject(style)}\r\n\t\t>\r\n\t\t\t{interpret(features)(bindings)(label)}\r\n\t\t</div>\r\n\t</SimpleDeclarationsWrapper>\r\n);\r\n\r\nSequence.defaultProps = {\r\n\tdeclarations: [],\r\n\tfeatures: [],\r\n\tbindings: {},\r\n\tstyle: {},\r\n};\r\n\r\nSequence.propTypes = {\r\n\tid: PropTypes.string.isRequired,\r\n\tlabel: PropTypes.string.isRequired,\r\n\tdeclarations: U.declarationsPropTypes,\r\n\tfeatures: PropTypes.arrayOf(PropTypes.string),\r\n\tbindings: PropTypes.object,\r\n\tstyle: PropTypes.object,\r\n};\r\n\r\nexport default React.memo(Sequence, U.areEqual);\r\n","import React from 'react';\r\nimport PropTypes from 'prop-types';\r\nimport { SimpleDeclarationsWrapper } from '../declarations/wrappers';\r\nimport * as U from '../../utils/lib';\r\nimport { interpret } from '../../utils/to-expose';\r\n\r\nconst Subsequence = ({\r\n\tid,\r\n\tlabel,\r\n\tdeclarations,\r\n\tfeatures,\r\n\tbindings,\r\n\tstyle,\r\n}) => (\r\n\t<SimpleDeclarationsWrapper\r\n\t\tid={id}\r\n\t\tdeclarations={declarations}\r\n\t\tfeatures={features}\r\n\t\tbindings={bindings}\r\n\t>\r\n\t\t<div\r\n\t\t\taria-label={`subsequence-${id}`}\r\n\t\t\tclassName=\"subsequence-lunatic\"\r\n\t\t\tstyle={U.buildStyleObject(style)}\r\n\t\t>\r\n\t\t\t{interpret(features)(bindings)(label)}\r\n\t\t</div>\r\n\t</SimpleDeclarationsWrapper>\r\n);\r\n\r\nSubsequence.defaultProps = {\r\n\tdeclarations: [],\r\n\tfeatures: [],\r\n\tbindings: {},\r\n\tstyle: {},\r\n};\r\n\r\nSubsequence.propTypes = {\r\n\tid: PropTypes.string.isRequired,\r\n\tlabel: PropTypes.string.isRequired,\r\n\tdeclarations: U.declarationsPropTypes,\r\n\tfeatures: PropTypes.arrayOf(PropTypes.string),\r\n\tbindings: PropTypes.object,\r\n\tstyle: PropTypes.object,\r\n};\r\n\r\nexport default React.memo(Subsequence, U.areEqual);\r\n","import React from 'react';\r\nimport PropTypes from 'prop-types';\r\nimport Declarations from '../declarations';\r\nimport { TooltipResponse } from '../tooltip';\r\nimport * as U from '../../utils/lib';\r\nimport * as C from '../../constants';\r\nimport { interpret } from '../../utils/to-expose';\r\n\r\nconst Suggester = ({\r\n\tid,\r\n\tlabel,\r\n\tpreferences,\r\n\tresponse,\r\n\thandleChange: propsHandleChange,\r\n\tdisabled,\r\n\tpositioning,\r\n\tfocused,\r\n\tdeclarations,\r\n\tfeatures,\r\n\tbindings,\r\n\tmanagement,\r\n\tlabelPosition,\r\n\tstyle,\r\n}) => {\r\n\treturn (\r\n\t\t<>\r\n\t\t\t<Declarations\r\n\t\t\t\tid={id}\r\n\t\t\t\ttype={C.BEFORE_QUESTION_TEXT}\r\n\t\t\t\tdeclarations={declarations}\r\n\t\t\t\tfeatures={features}\r\n\t\t\t\tbindings={bindings}\r\n\t\t\t/>\r\n\t\t\t<div className={U.getLabelPositionClass(labelPosition)}>\r\n\t\t\t\t{label && (\r\n\t\t\t\t\t<label htmlFor={`suggester-${id}`}>\r\n\t\t\t\t\t\t{interpret(features)(bindings)(label)}\r\n\t\t\t\t\t</label>\r\n\t\t\t\t)}\r\n\t\t\t\t<Declarations\r\n\t\t\t\t\tid={id}\r\n\t\t\t\t\ttype={C.AFTER_QUESTION_TEXT}\r\n\t\t\t\t\tdeclarations={declarations}\r\n\t\t\t\t\tfeatures={features}\r\n\t\t\t\t\tbindings={bindings}\r\n\t\t\t\t/>\r\n\t\t\t\t<div className=\"field-container\">\r\n\t\t\t\t\t<div className={`${management ? 'field-with-tooltip' : 'field'}`}>\r\n\t\t\t\t\t\tTODO: Add suggester component\r\n\t\t\t\t\t</div>\r\n\t\t\t\t\t{management && (\r\n\t\t\t\t\t\t<div className=\"tooltip\">\r\n\t\t\t\t\t\t\t<TooltipResponse\r\n\t\t\t\t\t\t\t\tid={id}\r\n\t\t\t\t\t\t\t\tresponse={U.buildBooleanTooltipResponse(response)}\r\n\t\t\t\t\t\t\t/>\r\n\t\t\t\t\t\t</div>\r\n\t\t\t\t\t)}\r\n\t\t\t\t</div>\r\n\t\t\t</div>\r\n\t\t\t<Declarations\r\n\t\t\t\tid={id}\r\n\t\t\t\ttype={C.DETACHABLE}\r\n\t\t\t\tdeclarations={declarations}\r\n\t\t\t\tfeatures={features}\r\n\t\t\t\tbindings={bindings}\r\n\t\t\t/>\r\n\t\t</>\r\n\t);\r\n};\r\n\r\nSuggester.defaultProps = {\r\n\tlabel: '',\r\n\tpreferences: ['COLLECTED'],\r\n\tresponse: {},\r\n\tdisabled: false,\r\n\tfocused: false,\r\n\tdeclarations: [],\r\n\tfeatures: [],\r\n\tbindings: {},\r\n\tmanagement: false,\r\n\tlabelPosition: 'DEFAULT',\r\n\tstyle: {},\r\n};\r\n\r\nSuggester.propTypes = {\r\n\tid: PropTypes.string.isRequired,\r\n\tlabel: PropTypes.string,\r\n\tpreferences: PropTypes.arrayOf(U.valueTypePropTypes),\r\n\tresponse: U.responsePropTypes,\r\n\thandleChange: PropTypes.func.isRequired,\r\n\tdisabled: PropTypes.bool,\r\n\tfocused: PropTypes.bool,\r\n\tdeclarations: U.declarationsPropTypes,\r\n\tfeatures: PropTypes.arrayOf(PropTypes.string),\r\n\tbindings: PropTypes.object,\r\n\tmanagement: PropTypes.bool,\r\n\tpath: PropTypes.string.isRequired,\r\n\tlabelPosition: PropTypes.oneOf(['DEFAULT', 'TOP', 'BOTTOM', 'LEFT', 'RIGHT']),\r\n\tstyle: PropTypes.object,\r\n};\r\n\r\nexport default React.memo(Suggester, U.areEqual);\r\n","import React from 'react';\r\nimport { InputDeclarationsWrapper } from '../declarations/wrappers';\r\nimport { areEqual } from '../../utils/lib';\r\nimport './textarea.scss';\r\n\r\nconst Textarea = (props) => (\r\n\t<InputDeclarationsWrapper type={null} roleType=\"textarea\" {...props} />\r\n);\r\n\r\nexport default React.memo(Textarea, areEqual);\r\n","import React, { useState } from 'react';\r\nimport PropTypes from 'prop-types';\r\nimport * as lunatic from '../components';\r\nimport Declarations from '../declarations';\r\nimport * as U from '../../utils/lib';\r\nimport * as C from '../../constants';\r\nimport { interpret } from '../../utils/to-expose';\r\nimport './table.scss';\r\n\r\nconst Table = ({\r\n\tid: tableId,\r\n\tlabel: tableLabel,\r\n\tpreferences,\r\n\tcells,\r\n\thandleChange,\r\n\tlines: initLines,\r\n\tpositioning,\r\n\tdeclarations,\r\n\tfeatures,\r\n\tbindings,\r\n\taddBtnLabel,\r\n\thideBtn,\r\n\tmanagement,\r\n\tnumberAsTextfield,\r\n}) => {\r\n\tconst minLines = initLines\r\n\t\t? Math.max(initLines.min, U.getRosterInitLines(cells))\r\n\t\t: undefined;\r\n\tconst maxLines = initLines ? initLines.max : undefined;\r\n\tconst [lines, setLines] = useState(minLines);\r\n\r\n\tconst width = `${100 / Math.max(...cells.map((line) => line.length))}%`;\r\n\tconst Button = lunatic.Button;\r\n\treturn (\r\n\t\t<>\r\n\t\t\t<Declarations\r\n\t\t\t\tid={tableId}\r\n\t\t\t\ttype={C.BEFORE_QUESTION_TEXT}\r\n\t\t\t\tdeclarations={declarations}\r\n\t\t\t\tfeatures={features}\r\n\t\t\t\tbindings={bindings}\r\n\t\t\t/>\r\n\t\t\t{tableLabel && (\r\n\t\t\t\t<label\r\n\t\t\t\t\thtmlFor={`table-one-axis-${tableId}`}\r\n\t\t\t\t\tid={`table-one-axis-label-${tableId}`}\r\n\t\t\t\t>\r\n\t\t\t\t\t{interpret(features)(bindings)(tableLabel)}\r\n\t\t\t\t</label>\r\n\t\t\t)}\r\n\t\t\t<Declarations\r\n\t\t\t\tid={tableId}\r\n\t\t\t\ttype={C.AFTER_QUESTION_TEXT}\r\n\t\t\t\tdeclarations={declarations}\r\n\t\t\t\tfeatures={features}\r\n\t\t\t\tbindings={bindings}\r\n\t\t\t/>\r\n\t\t\t<table id={`table-${tableId}`} className=\"table-lunatic\">\r\n\t\t\t\t<tbody>\r\n\t\t\t\t\t{(minLines || minLines === 0 ? cells.slice(0, lines + 1) : cells).map(\r\n\t\t\t\t\t\t(line, i) => (\r\n\t\t\t\t\t\t\t<tr key={`table-${tableId}-line${i}`}>\r\n\t\t\t\t\t\t\t\t{line.map((component, j) => {\r\n\t\t\t\t\t\t\t\t\tconst {\r\n\t\t\t\t\t\t\t\t\t\tlabel,\r\n\t\t\t\t\t\t\t\t\t\theaderCell,\r\n\t\t\t\t\t\t\t\t\t\tcolspan,\r\n\t\t\t\t\t\t\t\t\t\trowspan,\r\n\t\t\t\t\t\t\t\t\t\tcomponentType,\r\n\t\t\t\t\t\t\t\t\t\t...componentProps\r\n\t\t\t\t\t\t\t\t\t} = component;\r\n\t\t\t\t\t\t\t\t\tif (componentType) {\r\n\t\t\t\t\t\t\t\t\t\tconst Component = lunatic[componentType];\r\n\t\t\t\t\t\t\t\t\t\treturn (\r\n\t\t\t\t\t\t\t\t\t\t\t<td\r\n\t\t\t\t\t\t\t\t\t\t\t\tkey={`table-${tableId}-line${i}-cell-${j}`}\r\n\t\t\t\t\t\t\t\t\t\t\t\tstyle={{ width }}\r\n\t\t\t\t\t\t\t\t\t\t\t>\r\n\t\t\t\t\t\t\t\t\t\t\t\t<Component\r\n\t\t\t\t\t\t\t\t\t\t\t\t\tlabel={label || ' '}\r\n\t\t\t\t\t\t\t\t\t\t\t\t\thandleChange={handleChange}\r\n\t\t\t\t\t\t\t\t\t\t\t\t\tpreferences={preferences}\r\n\t\t\t\t\t\t\t\t\t\t\t\t\tpositioning={positioning}\r\n\t\t\t\t\t\t\t\t\t\t\t\t\tmanagement={management}\r\n\t\t\t\t\t\t\t\t\t\t\t\t\tfeatures={features}\r\n\t\t\t\t\t\t\t\t\t\t\t\t\tbindings={bindings}\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t{...componentProps}\r\n\t\t\t\t\t\t\t\t\t\t\t\t\tzIndex={cells.length - i || 0}\r\n\t\t\t\t\t\t\t\t\t\t\t\t\tnumberAsTextfield\r\n\t\t\t\t\t\t\t\t\t\t\t\t/>\r\n\t\t\t\t\t\t\t\t\t\t\t</td>\r\n\t\t\t\t\t\t\t\t\t\t);\r\n\t\t\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\t\t\tconst cellOptions = {\r\n\t\t\t\t\t\t\t\t\t\tkey: `table-${tableId}-line${i}-cell-${j}`,\r\n\t\t\t\t\t\t\t\t\t\tstyle: { width },\r\n\t\t\t\t\t\t\t\t\t\tcolSpan: colspan || 1,\r\n\t\t\t\t\t\t\t\t\t\trowSpan: rowspan || 1,\r\n\t\t\t\t\t\t\t\t\t};\r\n\t\t\t\t\t\t\t\t\tconst interpretedLabel = interpret(features)(bindings)(label);\r\n\t\t\t\t\t\t\t\t\treturn headerCell ? (\r\n\t\t\t\t\t\t\t\t\t\t<th {...cellOptions}>{interpretedLabel}</th>\r\n\t\t\t\t\t\t\t\t\t) : (\r\n\t\t\t\t\t\t\t\t\t\t<td {...cellOptions}>{interpretedLabel}</td>\r\n\t\t\t\t\t\t\t\t\t);\r\n\t\t\t\t\t\t\t\t})}\r\n\t\t\t\t\t\t\t</tr>\r\n\t\t\t\t\t\t)\r\n\t\t\t\t\t)}\r\n\t\t\t\t</tbody>\r\n\t\t\t</table>\r\n\t\t\t{Number.isInteger(minLines) && lines < maxLines && !hideBtn && (\r\n\t\t\t\t<Button\r\n\t\t\t\t\tlabel=\"addLine\"\r\n\t\t\t\t\tvalue={addBtnLabel}\r\n\t\t\t\t\tonClick={() => setLines(lines + 1)}\r\n\t\t\t\t/>\r\n\t\t\t)}\r\n\t\t\t<Declarations\r\n\t\t\t\tid={tableId}\r\n\t\t\t\ttype={C.DETACHABLE}\r\n\t\t\t\tdeclarations={declarations}\r\n\t\t\t\tfeatures={features}\r\n\t\t\t\tbindings={bindings}\r\n\t\t\t/>\r\n\t\t</>\r\n\t);\r\n};\r\n\r\nTable.defaultProps = {\r\n\tlabel: '',\r\n\tpreferences: ['COLLECTED'],\r\n\tcells: [],\r\n\tlines: {},\r\n\tpositioning: 'DEFAULT',\r\n\tdeclarations: [],\r\n\tfeatures: [],\r\n\tbindings: {},\r\n\taddBtnLabel: 'Add a line',\r\n\tmanagement: false,\r\n\thideBtn: false,\r\n\tstyle: {},\r\n};\r\n\r\nTable.propTypes = {\r\n\tid: PropTypes.string.isRequired,\r\n\tlabel: PropTypes.string,\r\n\tpreferences: PropTypes.arrayOf(U.valueTypePropTypes),\r\n\tcells: PropTypes.array,\r\n\thandleChange: PropTypes.func.isRequired,\r\n\tlines: U.linesPropTypes,\r\n\tpositioning: PropTypes.oneOf(['DEFAULT', 'HORIZONTAL', 'VERTICAL']),\r\n\tdeclarations: U.declarationsPropTypes,\r\n\tfeatures: PropTypes.arrayOf(PropTypes.string),\r\n\tbindings: PropTypes.object,\r\n\taddBtnLabel: PropTypes.string,\r\n\thideBtn: PropTypes.bool,\r\n\tmanagement: PropTypes.bool,\r\n\tstyle: PropTypes.object,\r\n};\r\n\r\nexport default React.memo(Table, U.areEqual);\r\n"],"names":["getAlphabet","responseToClean","response","preferences","values","cutedValues","length","Object","filter","v","responsesToClean","responses","key","find","r","name","getLabelPositionClass","position","buildBindingsForDeeperComponents","index","bindings","entries","reduce","_","value","Array","isArray","getDefaultDatasetStructure","dataStructure","dataPoints","buildVectorialBindings","displayLoopQuestion","dependencyList","map","iv","flat","buildLoopComponents","iterations","components","toFlat","_toConsumableArray","keys","rowNumber","buildFlatten","c","i","parentComponents","component","buildFlattenResponse","other","newValues","acc","BEFORE_QUESTION_TEXT","AFTER_QUESTION_TEXT","DETACHABLE","INSTRUCTION","COMMENT","HELP","WARNING","MESSAGE_FILTER","STATEMENT","PREVIOUS","COLLECTED","FORCED","EDITED","INPUTED","EXTERNAL","CALCULATED","getLoopConstructorInitLines","C","getInvolvedVariables","depth","buildEmptyValue","fill","VarsHasBeenUpdated","prevProps","props","oldR","oldRs","oldC","cells","newR","newRs","newC","isEqual","areEqual","bindingDependencies","oldB","newB","d","includes","getItemsPositioningClass","positioning","FLOW_NEXT","FLOW_PREVIOUS","interpretVTL","doNotReplaceNullBindings","expression","VTLExpr","interpret","replaceNullBindings","e","interpretVTLWithEmptyDefault","defaultValue","Link","href","children","title","trim","startsWith","React","target","rel","className","ReactTooltip","id","place","effect","globalEventOff","renderers","paragraph","style","margin","link","interpretMD","ReactMarkdown","source","features","vtl","interpretWithEmptyDefault","getPage","currentPage","flow","management","splitPage","currentRootPage","currentComponentIndex","currentIteration","Error","newPage","getSimpleNewPage","parseInt","slice","reverse","page","conditionFilter","currentPageWithDepth","split","join","currentPageWithoutIteration","currentPageWithoutAnyIteration","pop","PropTypes","arrayOf","shape","string","isRequired","declarationType","oneOf","label","min","number","max","getResponseName","getResponseByPreference","p","buildStyleObject","obj","camelCase","isResponseEmpty","getRosterInitLines","line","__","b","buildTooltip","edited","forced","collected","has","content","imgName","status","INITIAL_DEPTH","mergeQuestionnaireAndData","questionnaire","data","variables","vars","buildVars","filledComponents","buildFilledComponents","collectedData","variableType","componentRef","initExternalVariable","initCalculatedVariable","buildFilledComponent","buildResponseComponent","buildResponsesComponent","buildCellsComponent","buildComponentsComponent","rest","filledResponses","filledCells","row","supportedPreferences","updateQuestionnaire","valueType","updatedValues","varsAndRefs","newVariables","otherVars","refs","updated","buildNewValue","newCollected","newVariablesWithCalculated","addCalculatedVars","collectedVars","newComponents","oldValues","indexOf","valuesByPreference","lastValue","calculated","res","buildMultiTooltipResponse","options","k","o","buildBooleanTooltipResponse","buildLocalResponse","newValue","styleInject","css","ref","insertAt","document","head","getElementsByTagName","createElement","type","firstChild","insertBefore","appendChild","styleSheet","cssText","createTextNode","Breadcrumb","elements","Fragment","toLowerCase","propTypes","object","Button","onClick","disabled","bool","func","getState","getCalculatedFromVariables","getCollectedState","getExternalFromVariables","getCollectedStateByValueType","displayNull","getBindings","customFilterPagination","pagination","filterComponents","useLunatic","savingType","initialPage","useState","setQuestionnaire","todo","setTodo","setPage","setFlow","maxPage","featuresWithoutMD","f","isFirstPage","isLastPage","handleChange","useCallback","updatedValue","useEffect","newQ","goNext","nextPage","goPrevious","previousPage","Declarations","declarations","filtered","idD","defaultProps","U","RadioChecked","xmlns","width","height","viewBox","RadioUnchecked","CheckboxChecked","CheckboxUnchecked","Content","checked","Icon","img","Image","src","TooltipResponse","tooltipElements","setTooltipElements","text","alt","CheckboxGroup","propsHandleChange","focused","keyboardSelection","fieldsetStyle","modalityStyle","inputRef","useRef","setValues","debounce","specificHandleChange","current","focus","checkedArray","modId","modLabel","push","toRef","interpretedLabel","onChange","j","htmlFor","toUpperCase","memo","CheckboxBoolean","setValue","isHorizontal","input","isVertical","InputDeclarationsWrapper","placeholder","maxLength","readOnly","autoComplete","labelPosition","mandatory","roleType","decimals","unit","unitPosition","validators","isInputNumber","m","messagesError","setMessagesError","validate","Component","step","Math","pow","required","onBlur","oneOfType","ListDeclarationsWrapper","hasSpecificHandler","filledOptions","update","optionLabel","optionValue","SimpleDeclarationsWrapper","element","CheckboxOne","Datepicker","classNames","arg","classes","arguments","argType","inner","apply","hasOwn","call","hasOwnProperty","module","exports","default","window","SHOW_PANEL","showPanel","HIDE_PANEL","hidePanel","SET_ACTIVE_OPTION","setActiveOption","payload","SET_OPTIONS","setOptions","SET_VALUE","SET_FOCUSED","setFocused","SET_SELECTED_OPTION","setSelectedOption","option","RESET_SELECTION","resetSelection","ARROW_UP_PRESSED","arrowUpPressed","ARROW_DOWN_PRESSED","arrowDownPressed","ENTER_PRESSED","enterPressed","callback","SET_PREFIX","setPrefix","prefix","Panel","display","handleActive","activeIndex","selectedOption","onSelect","idDropdown","Option","optionComponent","ulRef","tabIndex","onMouseEnter","onMouseDown","stopPropagation","preventDefault","button","active","selected","propTypesOption","symbol","color","x","y","enableBackground","version","xmlSpace","Label","classnames","CLEANER_CALLBACKS","applyAll","execpt","forEach","add","clear","DropdownFieldContainer","visible","DropdownContainer","forwardRef","onKeyDown","onFocus","BINDED_KEYS","arrowUp","arrowDown","enter","tab","dispatch","actions","CLEAN","stopAndPrevent","prepareOptions","valueFromProps","a","onKeyDownCallbackProxy","state","createOnKeyDownCallback","Dropdown","hook","addEventListener","removeEventListener","onMouseDownCallback","createOnMouseDownCallback","onKeyDownCallback","DropdownField","zIndex","array","scrollTo","li","getElementById","parent","parentNode","pr","getBoundingClientRect","lr","top","scrollTop","bottom","preparePrefix","removeAccents","replace","lettersMatching","pref","pos","clean","match","idx","filterOption","search","how","sort","initial","visibleOptions","isPrefix","reduceArrowDownPressed","next","reduceArrowUpPressed","reduceEnterPressed","reducer","action","activeOption","widthAuto","initId","initFocused","containerEl","useReducer","Date","getMilliseconds","onSelect_","createOnSelect","getIcon","isDisplay","ClosedIcon","OpenedIcon","childrenToOption","child","createDropdown","initLetters","what","letters","stack","first","last","char","part","Icone","onDelete","onSwitch","CrossIcon","onChangeCallback","inputEl","autoCorrect","autoCapitalize","spellCheck","createDropDown","DropdownEdit","writable","freezeOptions","opts","setOpts","updatedFeatures","featOptions","labelOption","restOpts","DropdownSimple","Input","InputNumber","numberAsTextfield","minMaxValidator","valueNumber","isDef","FilterDescription","filterDescription","ProgressBar","controledValue","toFixed","Radio","Loop","loopDependencies","paginatedLoop","loopDepth","orchetratorProps","vectorialBindings","iterationNb","involvedVariables","toUpdate","up","todos","previousValue","flattenComponents","loopComponents","componentType","idC","loopBindings","lunatic","PaginatedLoop","splitRoot","subPagesToUpdate","newSubPage","newRootPage","newCurrentRootPage","newCurrentIteration","buildContentForLoopConstructor","headers","initialArray","uiComponents","comp","rows","transpose","BodyComponent","mainId","headerCell","colspan","rowspan","componentProps","localBindings","cellOptions","colSpan","rowSpan","LoopConstructorWrapper","mainLabel","lines","addBtnLabel","hideBtn","otherProps","minLines","maxLines","customBtnLabel","Number","isInteger","toHandle","BlockForLoop","LoopWrapper","RosterForLoop","Sequence","Subsequence","Suggester","path","Textarea","Table","tableId","tableLabel","initLines","setLines"],"mappings":"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"}