@inseefr/lunatic 2.4.2-beta → 2.4.3-beta

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 (606) hide show
  1. package/lib/components/button/__snapshots__/lunatic-button.spec.tsx.snap +80 -0
  2. package/lib/components/button/lunatic-button.js +1 -7
  3. package/lib/components/checkbox/checkbox-boolean/html/checkbox-boolean.js +7 -27
  4. package/lib/components/checkbox/checkbox-boolean/html/checkbox-boolean.spec.js +10 -7
  5. package/lib/components/checkbox/checkbox-boolean/lunatic-checkbox-boolean.js +2 -4
  6. package/lib/components/checkbox/checkbox-group/checkbox-group-content.js +22 -26
  7. package/lib/components/checkbox/checkbox-group/html/checkbox-group-content.js +18 -29
  8. package/lib/components/checkbox/checkbox-group/html/checkbox-group.js +0 -17
  9. package/lib/components/checkbox/checkbox-group/lunatic-checkbox-group.js +9 -4
  10. package/lib/components/checkbox/checkbox-one/html/checkbox-one.js +0 -19
  11. package/lib/components/checkbox/checkbox-one/html/checkbox-one.spec.js +6 -11
  12. package/lib/components/checkbox/checkbox-one/lunatic-checkbox-one.js +0 -2
  13. package/lib/components/checkbox/commons/checkbox-option.js +3 -21
  14. package/lib/components/checkbox/commons/checkbox-option.spec.js +8 -9
  15. package/lib/components/commons/components/combo-box/combo-box-container.js +4 -16
  16. package/lib/components/commons/components/combo-box/combo-box-container.spec.js +5 -5
  17. package/lib/components/commons/components/combo-box/combo-box-content.js +10 -8
  18. package/lib/components/commons/components/combo-box/combo-box.js +43 -77
  19. package/lib/components/commons/components/combo-box/combo-box.scss +2 -3
  20. package/lib/components/commons/components/combo-box/{state-management/reducer/reduce-on-blur.js → combo-box.stories.js} +43 -8
  21. package/lib/components/commons/components/combo-box/combo-box.type.js +5 -0
  22. package/lib/components/commons/components/combo-box/panel/option-container.js +5 -10
  23. package/lib/components/commons/components/combo-box/panel/option-container.spec.js +3 -4
  24. package/lib/components/commons/components/combo-box/panel/panel-container.js +4 -7
  25. package/lib/components/commons/components/combo-box/panel/panel-container.spec.js +14 -16
  26. package/lib/components/commons/components/combo-box/panel/panel.js +26 -46
  27. package/lib/components/commons/components/combo-box/panel/panel.spec.js +22 -20
  28. package/lib/components/commons/components/combo-box/selection/__snapshots__/selection.spec.jsx.snap +1 -1
  29. package/lib/components/commons/components/combo-box/selection/__snapshots__/selection.spec.tsx.snap +82 -0
  30. package/lib/components/commons/components/combo-box/selection/delete.js +22 -30
  31. package/lib/components/commons/components/combo-box/selection/delete.spec.js +9 -9
  32. package/lib/components/commons/components/combo-box/selection/displayLabelOrInput.js +6 -9
  33. package/lib/components/commons/components/combo-box/selection/displayLabelOrInput.spec.js +9 -10
  34. package/lib/components/commons/components/combo-box/selection/input.js +5 -5
  35. package/lib/components/commons/components/combo-box/selection/label-selection.js +3 -2
  36. package/lib/components/commons/components/combo-box/selection/label-selection.spec.js +22 -18
  37. package/lib/components/commons/components/combo-box/selection/selection-container.js +5 -8
  38. package/lib/components/commons/components/combo-box/selection/selection-container.spec.js +4 -5
  39. package/lib/components/commons/components/combo-box/selection/selection.js +11 -18
  40. package/lib/components/commons/components/combo-box/selection/selection.spec.js +25 -36
  41. package/lib/components/commons/components/combo-box/state-management/actions.js +21 -24
  42. package/lib/components/commons/components/combo-box/state-management/index.js +10 -18
  43. package/lib/components/commons/components/combo-box/state-management/{reducer/reduce-on-keydown → reduce-on-keydown}/keyboard-key-codes.js +2 -4
  44. package/lib/components/commons/components/combo-box/state-management/{reducer/reduce-on-keydown → reduce-on-keydown}/on-arrow-down.js +5 -7
  45. package/lib/components/commons/components/combo-box/state-management/{reducer/reduce-on-keydown → reduce-on-keydown}/on-arrow-up.js +5 -7
  46. package/lib/components/commons/components/combo-box/state-management/{reducer/reduce-on-keydown → reduce-on-keydown}/on-end.js +4 -6
  47. package/lib/components/commons/components/combo-box/state-management/{reducer/reduce-on-keydown → reduce-on-keydown}/on-enter.js +4 -6
  48. package/lib/components/commons/components/combo-box/state-management/{reducer/reduce-on-keydown → reduce-on-keydown}/on-escape.js +3 -5
  49. package/lib/components/commons/components/combo-box/state-management/{reducer/reduce-on-keydown → reduce-on-keydown}/on-home.js +4 -6
  50. package/lib/components/commons/components/combo-box/state-management/{reducer/reduce-on-keydown → reduce-on-keydown}/on-tab.js +3 -5
  51. package/lib/components/commons/components/combo-box/state-management/reduce-on-keydown/reduce-on-keydown.js +40 -0
  52. package/lib/components/commons/components/combo-box/state-management/reducer.js +53 -0
  53. package/lib/components/commons/components/default-label-renderer.js +0 -10
  54. package/lib/components/commons/components/default-label-renderer.spec.js +1 -1
  55. package/lib/components/commons/components/default-option-renderer.js +1 -2
  56. package/lib/components/commons/components/description.js +9 -7
  57. package/lib/components/commons/components/dragger/dragger.js +5 -15
  58. package/lib/components/commons/components/dragger/dragger.spec.js +10 -1
  59. package/lib/components/commons/components/errors/errors.js +26 -30
  60. package/lib/components/commons/components/errors/errors.spec.js +13 -7
  61. package/lib/components/commons/components/fab/fab.js +7 -21
  62. package/lib/components/commons/components/fab/fab.spec.js +1 -1
  63. package/lib/components/commons/components/field-container/field-container.js +5 -19
  64. package/lib/components/commons/components/html-table/index.js +12 -13
  65. package/lib/components/commons/components/html-table/table.js +3 -11
  66. package/lib/components/commons/components/html-table/table.spec.js +4 -6
  67. package/lib/components/commons/components/html-table/tbody.js +3 -13
  68. package/lib/components/commons/components/html-table/tbody.spec.js +4 -6
  69. package/lib/components/commons/components/html-table/td.js +3 -18
  70. package/lib/components/commons/components/html-table/td.spec.js +4 -6
  71. package/lib/components/commons/components/html-table/th.js +3 -17
  72. package/lib/components/commons/components/html-table/th.spec.js +6 -8
  73. package/lib/components/commons/components/html-table/thead.js +3 -12
  74. package/lib/components/commons/components/html-table/thead.spec.js +3 -4
  75. package/lib/components/commons/components/html-table/tr.js +3 -13
  76. package/lib/components/commons/components/html-table/tr.spec.js +8 -14
  77. package/lib/components/commons/components/is-network/is-network.js +2 -2
  78. package/lib/components/commons/components/is-network/use-online-status.js +2 -2
  79. package/lib/components/commons/components/is-network/use-online-status.spec.js +0 -1
  80. package/lib/components/commons/components/label/label.spec.js +4 -5
  81. package/lib/components/commons/components/lunatic-component-with-label.js +2 -21
  82. package/lib/components/commons/components/lunatic-component-without-label.js +11 -38
  83. package/lib/components/commons/components/missing/missing.js +3 -1
  84. package/lib/components/commons/components/nothing-to-display.spec.js +2 -3
  85. package/lib/components/commons/components/orchestrated-component.js +1 -3
  86. package/lib/components/commons/components/variable-status/variable-status.js +7 -2
  87. package/lib/components/commons/create-customizable-field.js +2 -3
  88. package/lib/components/commons/create-row-orchestrator.js +10 -8
  89. package/lib/components/commons/icons/{checkbox-checked.icon.js → checkbox-checked-icon.js} +4 -8
  90. package/lib/components/commons/icons/{checkbox-unchecked.icon.js → checkbox-unchecked-icon.js} +4 -8
  91. package/lib/components/commons/icons/{closed.icon.js → closed-icon.js} +4 -6
  92. package/lib/components/commons/icons/{cross.icon.js → cross-icon.js} +4 -6
  93. package/lib/components/commons/icons/icon-props.js +5 -0
  94. package/lib/components/commons/icons/index.js +20 -21
  95. package/lib/components/commons/icons/{load.icon.js → load-icon.js} +5 -9
  96. package/lib/components/commons/icons/lunatic-icon.js +3 -6
  97. package/lib/components/commons/icons/{network.icon.js → network-icon.js} +5 -9
  98. package/lib/components/commons/icons/{on-drag.icon.js → on-drag-icon.js} +5 -9
  99. package/lib/components/commons/icons/{opened.icon.js → opened-icon.js} +4 -8
  100. package/lib/components/commons/icons/{radio-checked.icon.js → radio-checked-icon.js} +3 -4
  101. package/lib/components/commons/icons/{radio-unchecked.icon.js → radio-unchecked-icon.js} +4 -8
  102. package/lib/components/commons/index.js +6 -23
  103. package/lib/components/commons/safety-label.js +5 -6
  104. package/lib/components/commons/use-document-add-event-listener.js +11 -71
  105. package/lib/components/commons/use-on-handle-change.spec.js +6 -2
  106. package/lib/components/commons/use-options-keydown.js +1 -2
  107. package/lib/components/component-set/html/component-set-component-container.js +20 -0
  108. package/lib/components/component-set/html/component-set-components.js +68 -0
  109. package/lib/components/component-set/html/component-set.js +30 -0
  110. package/lib/components/{commons/components/combo-box/panel → component-set/html/legend}/index.js +2 -2
  111. package/lib/components/component-set/html/legend/legend.js +30 -0
  112. package/lib/components/{commons/components/combo-box/state-management/reducer → component-set}/index.js +2 -2
  113. package/lib/components/component-set/lunatic-component-set.js +58 -0
  114. package/lib/components/datepicker/html/datepicker-input.js +1 -1
  115. package/lib/components/datepicker/html/datepicker.js +2 -15
  116. package/lib/components/datepicker/lunatic-datepicker.js +1 -1
  117. package/lib/components/declarations/declarations-after-text.js +0 -2
  118. package/lib/components/declarations/declarations.js +5 -11
  119. package/lib/components/declarations/declarations.scss +8 -2
  120. package/lib/components/dropdown/html/dropdown-simple/simple-label-renderer.js +0 -8
  121. package/lib/components/dropdown/html/dropdown-simple/simple-option-renderer.js +1 -1
  122. package/lib/components/dropdown/html/dropdown-writable/filter-tools/filter-options.js +11 -19
  123. package/lib/components/dropdown/html/dropdown-writable/filter-tools/filter-options.spec.js +106 -0
  124. package/lib/components/dropdown/html/dropdown-writable/filter-tools/get-label.js +4 -3
  125. package/lib/components/dropdown/html/dropdown-writable/filter-tools/letters-matching.js +1 -1
  126. package/lib/components/dropdown/html/dropdown-writable/filter-tools/prepare-prefix.js +4 -1
  127. package/lib/components/dropdown/html/dropdown-writable/writable-label-renderer.js +0 -9
  128. package/lib/components/dropdown/lunatic-dropdown.js +0 -17
  129. package/lib/components/index.js +159 -14
  130. package/lib/components/input/html/input.js +4 -24
  131. package/lib/components/input/html/input.scss +1 -1
  132. package/lib/components/input/lunatic-input.js +0 -1
  133. package/lib/components/input-number/html/__snapshots__/input-number.spec.tsx.snap +94 -0
  134. package/lib/components/input-number/html/input-number-default.js +7 -28
  135. package/lib/components/input-number/html/input-number-thousand.js +5 -4
  136. package/lib/components/input-number/html/input-number.js +12 -35
  137. package/lib/components/input-number/html/{inpute-number.spec.js → input-number.spec.js} +15 -16
  138. package/lib/components/input-number/lunatic-input-number.js +0 -1
  139. package/lib/components/loop/block-for-loop/block-for-loop.js +41 -46
  140. package/lib/components/loop/block-for-loop/row.js +31 -33
  141. package/lib/components/loop/commons/handle-row-button.js +2 -2
  142. package/lib/components/loop/commons/row-component.js +4 -2
  143. package/lib/components/loop/loop.js +2 -5
  144. package/lib/components/loop/roster-for-loop/body.js +17 -21
  145. package/lib/components/loop/roster-for-loop/header.js +16 -16
  146. package/lib/components/loop/roster-for-loop/roster-for-loop.js +7 -12
  147. package/lib/components/loop/roster-for-loop/roster-table.js +22 -21
  148. package/lib/components/loop/roster-for-loop/row.js +45 -35
  149. package/lib/components/modal-controls/close-or-skip.js +1 -2
  150. package/lib/components/modal-controls/close-or-skip.spec.js +0 -16
  151. package/lib/components/modal-controls/modal-container.spec.js +0 -1
  152. package/lib/components/modal-controls/modal-controls.js +3 -5
  153. package/lib/components/modal-controls/modal-controls.spec.js +25 -16
  154. package/lib/components/pairwise-links/orchestrator.js +10 -8
  155. package/lib/components/pairwise-links/pairwise-links.js +8 -11
  156. package/lib/components/pairwise-links/row.js +15 -18
  157. package/lib/components/radio/html/radio-group-content.js +27 -21
  158. package/lib/components/radio/html/radio-group-content.spec.js +15 -2
  159. package/lib/components/radio/html/radio-group.js +4 -27
  160. package/lib/components/radio/html/radio-option.js +30 -22
  161. package/lib/components/radio/html/radio-option.spec.js +8 -0
  162. package/lib/components/radio/lunatic-radio-group.js +5 -6
  163. package/lib/components/roundabout/components/roundabout-it-button.js +2 -4
  164. package/lib/components/roundabout/lunatic-roundabout.js +0 -12
  165. package/lib/components/roundabout/roundabout.js +7 -21
  166. package/lib/components/sequence/sequence.js +0 -2
  167. package/lib/components/sequence/sequence.spec.js +9 -6
  168. package/lib/components/subsequence/subsequence.spec.js +7 -6
  169. package/lib/components/suggester/find-best-label/find-best-label.js +8 -13
  170. package/lib/components/suggester/html/suggester.js +24 -52
  171. package/lib/components/suggester/idb-suggester/check-store.js +3 -1
  172. package/lib/components/suggester/idb-suggester/idb-suggester.js +4 -22
  173. package/lib/components/suggester/idb-suggester/suggester-status.js +3 -3
  174. package/lib/components/suggester/lunatic-suggester.js +20 -63
  175. package/lib/components/suggester/searching/create-searching.js +6 -8
  176. package/lib/components/suggester-loader-widget/loader-row.js +4 -29
  177. package/lib/components/suggester-loader-widget/loader.js +8 -10
  178. package/lib/components/suggester-loader-widget/widget.js +6 -16
  179. package/lib/components/switch/html/switch.js +7 -29
  180. package/lib/components/switch/lunatic-switch.js +6 -14
  181. package/lib/components/table/cell.js +12 -23
  182. package/lib/components/table/header.js +23 -23
  183. package/lib/components/table/lunatic-table.js +4 -40
  184. package/lib/components/table/row.js +2 -4
  185. package/lib/components/table/table-orchestrator.js +10 -20
  186. package/lib/components/textarea/html/textarea.js +3 -3
  187. package/lib/components/textarea/lunatic-textarea.js +0 -1
  188. package/lib/hooks/use-ref-sync.js +15 -0
  189. package/lib/i18n/dictionary.js +4 -0
  190. package/lib/src/components/button/index.d.ts +1 -0
  191. package/lib/src/components/button/lunatic-button.d.ts +10 -0
  192. package/lib/src/components/button/lunatic-button.spec.d.ts +1 -0
  193. package/lib/src/components/checkbox/checkbox-boolean/html/checkbox-boolean.d.ts +13 -0
  194. package/lib/src/components/checkbox/checkbox-boolean/html/checkbox-boolean.spec.d.ts +1 -0
  195. package/lib/src/components/checkbox/checkbox-boolean/index.d.ts +1 -0
  196. package/lib/src/components/checkbox/checkbox-boolean/lunatic-checkbox-boolean.d.ts +9 -0
  197. package/lib/src/components/checkbox/checkbox-group/checkbox-group-content.d.ts +9 -0
  198. package/lib/src/components/checkbox/checkbox-group/html/checkbox-group-content.d.ts +9 -0
  199. package/lib/src/components/checkbox/checkbox-group/html/checkbox-group-content.spec.d.ts +1 -0
  200. package/lib/src/components/checkbox/checkbox-group/html/checkbox-group.d.ts +14 -0
  201. package/lib/src/components/checkbox/checkbox-group/index.d.ts +1 -0
  202. package/lib/src/components/checkbox/checkbox-group/lunatic-checkbox-group.d.ts +11 -0
  203. package/lib/src/components/checkbox/checkbox-one/html/checkbox-one.d.ts +5 -0
  204. package/lib/src/components/checkbox/checkbox-one/html/checkbox-one.spec.d.ts +1 -0
  205. package/lib/src/components/checkbox/checkbox-one/index.d.ts +1 -0
  206. package/lib/src/components/checkbox/checkbox-one/lunatic-checkbox-one.d.ts +4 -0
  207. package/lib/src/components/checkbox/commons/checkbox-option.d.ts +15 -0
  208. package/lib/src/components/checkbox/commons/checkbox-option.spec.d.ts +1 -0
  209. package/lib/src/components/checkbox/commons/getShortcutKey.d.ts +1 -0
  210. package/lib/src/components/checkbox/commons/index.d.ts +1 -0
  211. package/lib/src/components/checkbox/index.d.ts +3 -0
  212. package/lib/src/components/commons/components/combo-box/combo-box-container.d.ts +8 -0
  213. package/lib/src/components/commons/components/combo-box/combo-box-container.spec.d.ts +1 -0
  214. package/lib/src/components/commons/components/combo-box/combo-box-content.d.ts +9 -0
  215. package/lib/src/components/commons/components/combo-box/combo-box.d.ts +21 -0
  216. package/lib/src/components/commons/components/combo-box/combo-box.stories.d.ts +27 -0
  217. package/lib/src/components/commons/components/combo-box/combo-box.type.d.ts +8 -0
  218. package/lib/src/components/commons/components/combo-box/index.d.ts +1 -0
  219. package/lib/src/components/commons/components/combo-box/panel/option-container.d.ts +8 -0
  220. package/lib/src/components/commons/components/combo-box/panel/option-container.spec.d.ts +1 -0
  221. package/lib/src/components/commons/components/combo-box/panel/panel-container.d.ts +8 -0
  222. package/lib/src/components/commons/components/combo-box/panel/panel-container.spec.d.ts +1 -0
  223. package/lib/src/components/commons/components/combo-box/panel/panel.d.ts +17 -0
  224. package/lib/src/components/commons/components/combo-box/panel/panel.spec.d.ts +1 -0
  225. package/lib/src/components/commons/components/combo-box/selection/delete.d.ts +9 -0
  226. package/lib/src/components/commons/components/combo-box/selection/delete.spec.d.ts +1 -0
  227. package/lib/src/components/commons/components/combo-box/selection/displayLabelOrInput.d.ts +5 -0
  228. package/lib/src/components/commons/components/combo-box/selection/displayLabelOrInput.spec.d.ts +1 -0
  229. package/lib/src/components/commons/components/combo-box/selection/input.d.ts +6 -0
  230. package/lib/src/components/commons/components/combo-box/selection/label-selection.d.ts +20 -0
  231. package/lib/src/components/commons/components/combo-box/selection/label-selection.spec.d.ts +1 -0
  232. package/lib/src/components/commons/components/combo-box/selection/selection-container.d.ts +10 -0
  233. package/lib/src/components/commons/components/combo-box/selection/selection-container.spec.d.ts +1 -0
  234. package/lib/src/components/commons/components/combo-box/selection/selection.d.ts +11 -0
  235. package/lib/src/components/commons/components/combo-box/selection/selection.spec.d.ts +1 -0
  236. package/lib/src/components/commons/components/combo-box/state-management/actions.d.ts +78 -0
  237. package/lib/src/components/commons/components/combo-box/state-management/index.d.ts +9 -0
  238. package/lib/src/components/commons/components/combo-box/state-management/reduce-on-init.d.ts +4 -0
  239. package/lib/src/components/commons/components/combo-box/state-management/reduce-on-keydown/keyboard-key-codes.d.ts +9 -0
  240. package/lib/src/components/commons/components/combo-box/state-management/reduce-on-keydown/on-arrow-down.d.ts +2 -0
  241. package/lib/src/components/commons/components/combo-box/state-management/reduce-on-keydown/on-arrow-up.d.ts +2 -0
  242. package/lib/src/components/commons/components/combo-box/state-management/reduce-on-keydown/on-end.d.ts +2 -0
  243. package/lib/src/components/commons/components/combo-box/state-management/reduce-on-keydown/on-enter.d.ts +2 -0
  244. package/lib/src/components/commons/components/combo-box/state-management/reduce-on-keydown/on-escape.d.ts +2 -0
  245. package/lib/src/components/commons/components/combo-box/state-management/reduce-on-keydown/on-home.d.ts +2 -0
  246. package/lib/src/components/commons/components/combo-box/state-management/reduce-on-keydown/on-tab.d.ts +2 -0
  247. package/lib/src/components/commons/components/combo-box/state-management/reduce-on-keydown/reduce-on-keydown.d.ts +9 -0
  248. package/lib/src/components/commons/components/combo-box/state-management/reducer.d.ts +3 -0
  249. package/lib/src/components/commons/components/default-label-renderer.d.ts +9 -0
  250. package/lib/src/components/commons/components/default-label-renderer.spec.d.ts +1 -0
  251. package/lib/src/components/commons/components/default-option-renderer.d.ts +8 -0
  252. package/lib/src/components/commons/components/default-option-renderer.spec.d.ts +1 -0
  253. package/lib/src/components/commons/components/description.d.ts +22 -0
  254. package/lib/src/components/commons/components/description.spec.d.ts +1 -0
  255. package/lib/src/components/commons/components/dragger/dragger.d.ts +17 -0
  256. package/lib/src/components/commons/components/dragger/dragger.spec.d.ts +1 -0
  257. package/lib/src/components/commons/components/dragger/index.d.ts +1 -0
  258. package/lib/src/components/commons/components/errors/errors.d.ts +9 -0
  259. package/lib/src/components/commons/components/errors/errors.spec.d.ts +1 -0
  260. package/lib/src/components/commons/components/errors/index.d.ts +1 -0
  261. package/lib/src/components/commons/components/fab/fab.d.ts +7 -0
  262. package/lib/src/components/commons/components/fab/fab.spec.d.ts +1 -0
  263. package/lib/src/components/commons/components/fab/index.d.ts +1 -0
  264. package/lib/src/components/commons/components/field-container/field-container.d.ts +6 -0
  265. package/lib/src/components/commons/components/field-container/filed-container.spec.d.ts +1 -0
  266. package/lib/src/components/commons/components/field-container/index.d.ts +1 -0
  267. package/lib/src/components/commons/components/fieldset.d.ts +13 -0
  268. package/lib/src/components/commons/components/fieldset.spec.d.ts +1 -0
  269. package/lib/src/components/commons/components/html-table/index.d.ts +6 -0
  270. package/lib/src/components/commons/components/html-table/table.d.ts +8 -0
  271. package/lib/src/components/commons/components/html-table/table.spec.d.ts +1 -0
  272. package/lib/src/components/commons/components/html-table/tbody.d.ts +7 -0
  273. package/lib/src/components/commons/components/html-table/tbody.spec.d.ts +1 -0
  274. package/lib/src/components/commons/components/html-table/td.d.ts +11 -0
  275. package/lib/src/components/commons/components/html-table/td.spec.d.ts +1 -0
  276. package/lib/src/components/commons/components/html-table/th.d.ts +11 -0
  277. package/lib/src/components/commons/components/html-table/th.spec.d.ts +1 -0
  278. package/lib/src/components/commons/components/html-table/thead.d.ts +7 -0
  279. package/lib/src/components/commons/components/html-table/thead.spec.d.ts +1 -0
  280. package/lib/src/components/commons/components/html-table/tr.d.ts +8 -0
  281. package/lib/src/components/commons/components/html-table/tr.spec.d.ts +1 -0
  282. package/lib/src/components/commons/components/is-network/index.d.ts +1 -0
  283. package/lib/src/components/commons/components/is-network/is-network.d.ts +7 -0
  284. package/lib/src/components/commons/components/is-network/is-network.spec.d.ts +1 -0
  285. package/lib/src/components/commons/components/is-network/use-online-status.d.ts +2 -0
  286. package/lib/src/components/commons/components/is-network/use-online-status.spec.d.ts +1 -0
  287. package/lib/src/components/commons/components/label/index.d.ts +1 -0
  288. package/lib/src/components/commons/components/label/label.d.ts +14 -0
  289. package/lib/src/components/commons/components/label/label.spec.d.ts +1 -0
  290. package/lib/src/components/commons/components/lunatic-component-with-label.d.ts +12 -0
  291. package/lib/src/components/commons/components/lunatic-component-without-label.d.ts +12 -0
  292. package/lib/src/components/commons/components/missing/index.d.ts +1 -0
  293. package/lib/src/components/commons/components/missing/missing.d.ts +14 -0
  294. package/lib/src/components/commons/components/missing/missing.spec.d.ts +1 -0
  295. package/lib/src/components/commons/components/nothing-to-display.d.ts +3 -0
  296. package/lib/src/components/commons/components/nothing-to-display.spec.d.ts +1 -0
  297. package/lib/src/components/commons/components/orchestrated-component.d.ts +10 -0
  298. package/lib/src/components/commons/components/variable-status/img/index.d.ts +2 -0
  299. package/lib/src/components/commons/components/variable-status/index.d.ts +1 -0
  300. package/lib/src/components/commons/components/variable-status/variable-status.d.ts +16 -0
  301. package/lib/src/components/commons/components/variable-status/variable-status.spec.d.ts +1 -0
  302. package/lib/src/components/commons/create-customizable-field.d.ts +3 -0
  303. package/lib/src/components/commons/create-row-orchestrator.d.ts +31 -0
  304. package/lib/src/components/commons/icons/checkbox-checked-icon.d.ts +3 -0
  305. package/lib/src/components/commons/icons/checkbox-unchecked-icon.d.ts +3 -0
  306. package/lib/src/components/commons/icons/closed-icon.d.ts +3 -0
  307. package/lib/src/components/commons/icons/cross-icon.d.ts +3 -0
  308. package/lib/src/components/commons/icons/icon-props.d.ts +5 -0
  309. package/lib/src/components/commons/icons/index.d.ts +10 -0
  310. package/lib/src/components/commons/icons/load-icon.d.ts +3 -0
  311. package/lib/src/components/commons/icons/lunatic-icon.d.ts +5 -0
  312. package/lib/src/components/commons/icons/network-icon.d.ts +3 -0
  313. package/lib/src/components/commons/icons/on-drag-icon.d.ts +3 -0
  314. package/lib/src/components/commons/icons/opened-icon.d.ts +3 -0
  315. package/lib/src/components/commons/icons/radio-checked-icon.d.ts +4 -0
  316. package/lib/src/components/commons/icons/radio-unchecked-icon.d.ts +3 -0
  317. package/lib/src/components/commons/index.d.ts +17 -0
  318. package/lib/src/components/commons/safety-label.d.ts +3 -0
  319. package/lib/src/components/commons/use-document-add-event-listener.d.ts +2 -0
  320. package/lib/src/components/commons/use-on-handle-change.d.ts +12 -0
  321. package/lib/src/components/commons/use-on-handle-change.spec.d.ts +1 -0
  322. package/lib/src/components/commons/use-options-keydown.d.ts +7 -0
  323. package/lib/src/components/component-set/html/component-set-component-container.d.ts +6 -0
  324. package/lib/src/components/component-set/html/component-set-components.d.ts +7 -0
  325. package/lib/src/components/component-set/html/component-set.d.ts +9 -0
  326. package/lib/src/components/component-set/html/legend/index.d.ts +1 -0
  327. package/lib/src/components/component-set/html/legend/legend.d.ts +8 -0
  328. package/lib/src/components/component-set/index.d.ts +1 -0
  329. package/lib/src/components/component-set/lunatic-component-set.d.ts +4 -0
  330. package/lib/src/components/datepicker/html/datepicker-container.d.ts +3 -0
  331. package/lib/src/components/datepicker/html/datepicker-input.d.ts +13 -0
  332. package/lib/src/components/datepicker/html/datepicker.d.ts +17 -0
  333. package/lib/src/components/datepicker/index.d.ts +1 -0
  334. package/lib/src/components/datepicker/lunatic-datepicker.d.ts +9 -0
  335. package/lib/src/components/declarations/declaration.d.ts +6 -0
  336. package/lib/src/components/declarations/declaration.spec.d.ts +1 -0
  337. package/lib/src/components/declarations/declarations-after-text.d.ts +4 -0
  338. package/lib/src/components/declarations/declarations-before-text.d.ts +4 -0
  339. package/lib/src/components/declarations/declarations-detachable.d.ts +4 -0
  340. package/lib/src/components/declarations/declarations.d.ts +15 -0
  341. package/lib/src/components/declarations/declarations.spec.d.ts +1 -0
  342. package/lib/src/components/declarations/index.d.ts +4 -0
  343. package/lib/src/components/dropdown/html/dropdown-simple/dropdown-simple.d.ts +4 -0
  344. package/lib/src/components/dropdown/html/dropdown-simple/index.d.ts +1 -0
  345. package/lib/src/components/dropdown/html/dropdown-simple/simple-label-renderer.d.ts +9 -0
  346. package/lib/src/components/dropdown/html/dropdown-simple/simple-option-renderer.d.ts +8 -0
  347. package/lib/src/components/dropdown/html/dropdown-writable/dropdown-writable.d.ts +16 -0
  348. package/lib/src/components/dropdown/html/dropdown-writable/filter-tools/filter-options.d.ts +6 -0
  349. package/lib/src/components/dropdown/html/dropdown-writable/filter-tools/filter-options.spec.d.ts +1 -0
  350. package/lib/src/components/dropdown/html/dropdown-writable/filter-tools/get-label.d.ts +9 -0
  351. package/lib/src/components/dropdown/html/dropdown-writable/filter-tools/letters-matching.d.ts +2 -0
  352. package/lib/src/components/dropdown/html/dropdown-writable/filter-tools/match.d.ts +2 -0
  353. package/lib/src/components/dropdown/html/dropdown-writable/filter-tools/prepare-prefix.d.ts +2 -0
  354. package/lib/src/components/dropdown/html/dropdown-writable/index.d.ts +1 -0
  355. package/lib/src/components/dropdown/html/dropdown-writable/writable-label-renderer.d.ts +9 -0
  356. package/lib/src/components/dropdown/html/dropdown-writable/writable-option-renderer.d.ts +9 -0
  357. package/lib/src/components/dropdown/html/dropdown.d.ts +9 -0
  358. package/lib/src/components/dropdown/index.d.ts +1 -0
  359. package/lib/src/components/dropdown/lunatic-dropdown.d.ts +4 -0
  360. package/lib/src/components/filter-description/component.d.ts +7 -0
  361. package/lib/src/components/filter-description/component.spec.d.ts +1 -0
  362. package/lib/src/components/filter-description/index.d.ts +1 -0
  363. package/lib/src/components/index.d.ts +24 -0
  364. package/lib/src/components/input/html/input.d.ts +16 -0
  365. package/lib/src/components/input/index.d.ts +1 -0
  366. package/lib/src/components/input/lunatic-input.d.ts +4 -0
  367. package/lib/src/components/input-number/html/input-number-default.d.ts +14 -0
  368. package/lib/src/components/input-number/html/input-number-thousand.d.ts +14 -0
  369. package/lib/src/components/input-number/html/input-number.d.ts +20 -0
  370. package/lib/src/components/input-number/html/input-number.spec.d.ts +1 -0
  371. package/lib/src/components/input-number/index.d.ts +1 -0
  372. package/lib/src/components/input-number/lunatic-input-number.d.ts +4 -0
  373. package/lib/src/components/loop/block-for-loop/block-for-loop-ochestrator.d.ts +50 -0
  374. package/lib/src/components/loop/block-for-loop/block-for-loop.d.ts +21 -0
  375. package/lib/src/components/loop/block-for-loop/index.d.ts +1 -0
  376. package/lib/src/components/loop/block-for-loop/row.d.ts +23 -0
  377. package/lib/src/components/loop/commons/get-init-length.d.ts +2 -0
  378. package/lib/src/components/loop/commons/handle-row-button.d.ts +8 -0
  379. package/lib/src/components/loop/commons/index.d.ts +2 -0
  380. package/lib/src/components/loop/commons/row-component.d.ts +10 -0
  381. package/lib/src/components/loop/index.d.ts +1 -0
  382. package/lib/src/components/loop/loop.d.ts +4 -0
  383. package/lib/src/components/loop/roster-for-loop/body.d.ts +13 -0
  384. package/lib/src/components/loop/roster-for-loop/header.d.ts +9 -0
  385. package/lib/src/components/loop/roster-for-loop/index.d.ts +1 -0
  386. package/lib/src/components/loop/roster-for-loop/roster-for-loop-orchestrator.d.ts +50 -0
  387. package/lib/src/components/loop/roster-for-loop/roster-for-loop.d.ts +21 -0
  388. package/lib/src/components/loop/roster-for-loop/roster-table.d.ts +14 -0
  389. package/lib/src/components/loop/roster-for-loop/row.d.ts +24 -0
  390. package/lib/src/components/modal-controls/close-or-skip.d.ts +8 -0
  391. package/lib/src/components/modal-controls/close-or-skip.spec.d.ts +1 -0
  392. package/lib/src/components/modal-controls/index.d.ts +1 -0
  393. package/lib/src/components/modal-controls/modal-container.d.ts +3 -0
  394. package/lib/src/components/modal-controls/modal-container.spec.d.ts +1 -0
  395. package/lib/src/components/modal-controls/modal-controls.d.ts +11 -0
  396. package/lib/src/components/modal-controls/modal-controls.spec.d.ts +1 -0
  397. package/lib/src/components/pairwise-links/index.d.ts +1 -0
  398. package/lib/src/components/pairwise-links/orchestrator.d.ts +7 -0
  399. package/lib/src/components/pairwise-links/pairwise-links.d.ts +4 -0
  400. package/lib/src/components/pairwise-links/row.d.ts +8 -0
  401. package/lib/src/components/radio/html/radio-group-content.d.ts +17 -0
  402. package/lib/src/components/radio/html/radio-group-content.spec.d.ts +1 -0
  403. package/lib/src/components/radio/html/radio-group.d.ts +22 -0
  404. package/lib/src/components/radio/html/radio-option.d.ts +21 -0
  405. package/lib/src/components/radio/html/radio-option.spec.d.ts +1 -0
  406. package/lib/src/components/radio/index.d.ts +1 -0
  407. package/lib/src/components/radio/lunatic-radio-group.d.ts +13 -0
  408. package/lib/src/components/roundabout/components/roundabout-container.d.ts +6 -0
  409. package/lib/src/components/roundabout/components/roundabout-container.spec.d.ts +1 -0
  410. package/lib/src/components/roundabout/components/roundabout-it-button.d.ts +11 -0
  411. package/lib/src/components/roundabout/components/roundabout-it-button.spec.d.ts +1 -0
  412. package/lib/src/components/roundabout/components/roundabout-it-container.d.ts +5 -0
  413. package/lib/src/components/roundabout/components/roundabout-it-container.spec.d.ts +1 -0
  414. package/lib/src/components/roundabout/components/roundabout-it-title.d.ts +5 -0
  415. package/lib/src/components/roundabout/components/roundabout-it-title.spec.d.ts +1 -0
  416. package/lib/src/components/roundabout/components/roundabout-label.d.ts +5 -0
  417. package/lib/src/components/roundabout/components/roundabout-label.spec.d.ts +1 -0
  418. package/lib/src/components/roundabout/components/roundabout-pending.d.ts +3 -0
  419. package/lib/src/components/roundabout/components/roundabout-pending.spec.d.ts +1 -0
  420. package/lib/src/components/roundabout/index.d.ts +1 -0
  421. package/lib/src/components/roundabout/lunatic-roundabout.d.ts +7 -0
  422. package/lib/src/components/roundabout/redirect.d.ts +7 -0
  423. package/lib/src/components/roundabout/redirect.spec.d.ts +1 -0
  424. package/lib/src/components/roundabout/roundabout.d.ts +15 -0
  425. package/lib/src/components/roundabout/roundabout.spec.d.ts +1 -0
  426. package/lib/src/components/sequence/index.d.ts +1 -0
  427. package/lib/src/components/sequence/sequence.d.ts +4 -0
  428. package/lib/src/components/sequence/sequence.spec.d.ts +1 -0
  429. package/lib/src/components/subsequence/index.d.ts +1 -0
  430. package/lib/src/components/subsequence/subsequence.d.ts +3 -0
  431. package/lib/src/components/subsequence/subsequence.spec.d.ts +1 -0
  432. package/lib/src/components/suggester/find-best-label/find-best-label.d.ts +2 -0
  433. package/lib/src/components/suggester/find-best-label/index.d.ts +1 -0
  434. package/lib/src/components/suggester/html/notification.d.ts +8 -0
  435. package/lib/src/components/suggester/html/suggester.d.ts +23 -0
  436. package/lib/src/components/suggester/idb-suggester/check-store.d.ts +8 -0
  437. package/lib/src/components/suggester/idb-suggester/idb-suggester.d.ts +7 -0
  438. package/lib/src/components/suggester/idb-suggester/index.d.ts +1 -0
  439. package/lib/src/components/suggester/idb-suggester/suggester-notification.d.ts +12 -0
  440. package/lib/src/components/suggester/idb-suggester/suggester-status.d.ts +26 -0
  441. package/lib/src/components/suggester/index.d.ts +1 -0
  442. package/lib/src/components/suggester/lunatic-suggester.d.ts +4 -0
  443. package/lib/src/components/suggester/searching/create-searching.d.ts +6 -0
  444. package/lib/src/components/suggester/searching/index.d.ts +1 -0
  445. package/lib/src/components/suggester-loader-widget/index.d.ts +1 -0
  446. package/lib/src/components/suggester-loader-widget/loader-row.d.ts +11 -0
  447. package/lib/src/components/suggester-loader-widget/loader.d.ts +13 -0
  448. package/lib/src/components/suggester-loader-widget/progress.d.ts +8 -0
  449. package/lib/src/components/suggester-loader-widget/tools/action-tool.d.ts +9 -0
  450. package/lib/src/components/suggester-loader-widget/tools/index.d.ts +2 -0
  451. package/lib/src/components/suggester-loader-widget/tools/tools.d.ts +3 -0
  452. package/lib/src/components/suggester-loader-widget/widget-container.d.ts +8 -0
  453. package/lib/src/components/suggester-loader-widget/widget.d.ts +16 -0
  454. package/lib/src/components/switch/html/switch.d.ts +17 -0
  455. package/lib/src/components/switch/index.d.ts +1 -0
  456. package/lib/src/components/switch/lunatic-switch.d.ts +4 -0
  457. package/lib/src/components/table/cell.d.ts +20 -0
  458. package/lib/src/components/table/header.d.ts +11 -0
  459. package/lib/src/components/table/index.d.ts +1 -0
  460. package/lib/src/components/table/lunatic-table.d.ts +4 -0
  461. package/lib/src/components/table/row.d.ts +19 -0
  462. package/lib/src/components/table/table-orchestrator.d.ts +5 -0
  463. package/lib/src/components/textarea/html/textarea.d.ts +17 -0
  464. package/lib/src/components/textarea/index.d.ts +1 -0
  465. package/lib/src/components/textarea/lunatic-textarea.d.ts +19 -0
  466. package/lib/src/components/type.d.ts +85 -36
  467. package/lib/src/hooks/use-ref-sync.d.ts +5 -0
  468. package/lib/src/i18n/dictionary.d.ts +4 -0
  469. package/lib/src/i18n/index.d.ts +1 -1
  470. package/lib/src/index.d.ts +1 -0
  471. package/lib/src/type.utils.d.ts +4 -0
  472. package/lib/src/use-lunatic/commons/execute-expression/create-refresh-calculated.d.ts +2 -2
  473. package/lib/src/use-lunatic/commons/execute-expression/create-refresh-calculated.spec.d.ts +1 -0
  474. package/lib/src/use-lunatic/commons/fill-components/fill-component-expressions.d.ts +4 -1
  475. package/lib/src/use-lunatic/commons/fill-components/fill-from-state.d.ts +53 -30
  476. package/lib/src/use-lunatic/commons/fill-components/fill-specific-expression.d.ts +27 -45
  477. package/lib/src/use-lunatic/commons/use-components-from-state.d.ts +1 -1
  478. package/lib/src/use-lunatic/reducer/commons/is-loop-component.d.ts +2 -4
  479. package/lib/src/use-lunatic/reducer/overview/overview-on-init.d.ts +10 -1
  480. package/lib/src/use-lunatic/reducer/reduce-roundabout.d.ts +1 -98
  481. package/lib/src/use-lunatic/reducer/resolve-component-controls/index.d.ts +1 -0
  482. package/lib/src/use-lunatic/reducer/resolve-component-controls/resolve-roundabout-control.d.ts +10 -0
  483. package/lib/src/use-lunatic/reducer/resolve-component-controls/resolve-simple-control.d.ts +3 -0
  484. package/lib/src/use-lunatic/replace-component-sequence.d.ts +11 -0
  485. package/lib/src/use-lunatic/type-source.d.ts +16 -5
  486. package/lib/src/use-lunatic/type.d.ts +11 -3
  487. package/lib/src/use-lunatic/use-lunatic.d.ts +1 -1
  488. package/lib/src/utils/constants/alphabet.d.ts +1 -0
  489. package/lib/src/utils/function.d.ts +4 -0
  490. package/lib/src/utils/idb-tools/create-db-opener.d.ts +13 -0
  491. package/lib/src/utils/idb-tools/create-open-db.d.ts +2 -0
  492. package/lib/src/utils/idb-tools/get-entity.d.ts +2 -0
  493. package/lib/src/utils/idb-tools/idb-bulk-insert.d.ts +16 -0
  494. package/lib/src/utils/idb-tools/idb-types.d.ts +16 -0
  495. package/lib/src/utils/idb-tools/index.d.ts +7 -0
  496. package/lib/src/utils/idb-tools/open-db.d.ts +2 -0
  497. package/lib/src/utils/idb-tools/open-or-create-db.d.ts +2 -0
  498. package/lib/src/utils/store-tools/auto-load.d.ts +6 -0
  499. package/lib/src/utils/store-tools/clear-store-data.d.ts +2 -0
  500. package/lib/src/utils/store-tools/clear-store-info.d.ts +2 -0
  501. package/lib/src/utils/store-tools/create/create.d.ts +4 -0
  502. package/lib/src/utils/store-tools/create/index.d.ts +2 -0
  503. package/lib/src/utils/store-tools/create/update-store-info.d.ts +2 -0
  504. package/lib/src/utils/store-tools/get-store-count.d.ts +2 -0
  505. package/lib/src/utils/store-tools/index.d.ts +7 -0
  506. package/lib/src/utils/store-tools/use-store-index.d.ts +4 -0
  507. package/lib/src/utils/suggester-workers/append-to-index/append.d.ts +6 -0
  508. package/lib/src/utils/suggester-workers/append-to-index/index.d.ts +2 -0
  509. package/lib/src/utils/suggester-workers/commons-tokenizer/prepare-string-indexation.d.ts +2 -0
  510. package/lib/src/utils/suggester-workers/searching/compute-score.d.ts +3 -0
  511. package/lib/src/utils/suggester-workers/searching/meloto-order.d.ts +24 -0
  512. package/lib/stories/Introduction.stories.mdx +4 -4
  513. package/lib/stories/checkboxGroup/source.json +4 -5
  514. package/lib/{components/commons/components/combo-box/state-management/reducer/reduce-on-delete.js → stories/component-set/component-set.stories.js} +45 -10
  515. package/lib/stories/component-set/data.json +18 -0
  516. package/lib/stories/component-set/data1.json +18 -0
  517. package/lib/stories/component-set/data2.json +18 -0
  518. package/lib/stories/component-set/source.json +99 -0
  519. package/lib/stories/component-set/source1.json +287 -0
  520. package/lib/stories/component-set/source2.json +413 -0
  521. package/lib/stories/custom-mui/suggester-mui/suggester-mui.js +1 -2
  522. package/lib/stories/declaration/source.json +24 -0
  523. package/lib/{components/commons/components/combo-box/state-management/reducer/reduce-on-focus.js → stories/loop/paginated-loop.stories.js} +23 -9
  524. package/lib/stories/loop/source-paginated.json +126 -0
  525. package/lib/stories/paste-questionnaire/test.stories.js +1 -1
  526. package/lib/stories/questionnaires/simpsons/simpsons.stories.js +5 -5
  527. package/lib/stories/questionnaires-test/controls/controls-externes.json +75 -0
  528. package/lib/{components/commons/components/combo-box/state-management/reducer/reduce-on-change.js → stories/questionnaires-test/controls/controls-externes.stories.js} +51 -11
  529. package/lib/stories/questionnaires-test/controls/controls.stories.js +1 -1
  530. package/lib/stories/questionnaires-test/test.stories.js +1 -1
  531. package/lib/stories/questionnaires2023/bySequence/source.json +5054 -0
  532. package/lib/stories/questionnaires2023/bySequence/ticWeb.stories.js +64 -0
  533. package/lib/stories/questionnaires2023/famille/famille.stories.js +64 -0
  534. package/lib/stories/questionnaires2023/famille/source.json +50344 -0
  535. package/lib/stories/questionnaires2023/simpsons/simpsons.stories.js +64 -0
  536. package/lib/stories/questionnaires2023/simpsons/source.json +5176 -0
  537. package/lib/stories/questionnaires2023/ticTel/source.json +12888 -0
  538. package/lib/stories/questionnaires2023/ticTel/ticWeb.stories.js +64 -0
  539. package/lib/stories/questionnaires2023/ticWeb/source.json +11331 -0
  540. package/lib/stories/questionnaires2023/ticWeb/ticWeb.stories.js +64 -0
  541. package/lib/stories/resizing-questionnaire/source.json +789 -0
  542. package/lib/stories/resizing-questionnaire/test.stories.js +84 -0
  543. package/lib/stories/roundabout/source.json +16 -0
  544. package/lib/stories/suggester/SuggesterNotification.js +26 -0
  545. package/lib/stories/suggester/suggester-workers.stories.js +16 -9
  546. package/lib/stories/suggester/suggester.stories.js +1 -0
  547. package/lib/use-lunatic/actions.js +4 -4
  548. package/lib/use-lunatic/commons/calculated-variables.js +1 -1
  549. package/lib/use-lunatic/commons/compile-controls.js +4 -3
  550. package/lib/use-lunatic/commons/execute-expression/create-execute-expression.spec.js +155 -0
  551. package/lib/use-lunatic/commons/execute-expression/create-refresh-calculated.js +3 -2
  552. package/lib/use-lunatic/commons/execute-expression/create-refresh-calculated.spec.js +128 -0
  553. package/lib/use-lunatic/commons/fill-components/fill-component-expressions.js +4 -1
  554. package/lib/use-lunatic/commons/fill-components/fill-component-expressions.spec.js +0 -2
  555. package/lib/use-lunatic/reducer/reduce-on-init.js +1 -2
  556. package/lib/use-lunatic/reducer/resolve-component-controls/index.js +12 -0
  557. package/lib/use-lunatic/reducer/{validate-controls/validation-utils.js → resolve-component-controls/resolve-component-control.js} +10 -34
  558. package/lib/use-lunatic/reducer/resolve-component-controls/resolve-roundabout-control.js +54 -0
  559. package/lib/use-lunatic/reducer/resolve-component-controls/resolve-simple-control.js +44 -0
  560. package/lib/use-lunatic/replace-component-sequence.js +28 -0
  561. package/lib/use-lunatic/type-source.js +15 -9
  562. package/lib/use-lunatic/use-lunatic.js +1 -1
  563. package/lib/use-lunatic/use-suggesters.js +5 -5
  564. package/lib/utils/function.js +11 -0
  565. package/lib/utils/idb-tools/create-db-opener.js +12 -5
  566. package/lib/utils/idb-tools/idb-bulk-insert.js +0 -6
  567. package/lib/utils/idb-tools/idb-types.js +5 -0
  568. package/lib/utils/idb-tools/open-db.js +2 -1
  569. package/lib/utils/idb-tools/open-or-create-db.js +5 -3
  570. package/lib/utils/store-tools/auto-load.js +2 -2
  571. package/lib/utils/store-tools/use-store-index.js +1 -1
  572. package/lib/utils/suggester-workers/append-to-index/append.js +3 -2
  573. package/lib/utils/suggester-workers/append-to-index/create-append-task.js +4 -2
  574. package/lib/utils/suggester-workers/commons-tokenizer/get-stemmer.spec.js +11 -0
  575. package/lib/utils/suggester-workers/commons-tokenizer/prepare-string-indexation.spec.js +10 -0
  576. package/lib/utils/suggester-workers/searching/compute-score.js +7 -12
  577. package/lib/utils/suggester-workers/searching/meloto-order.js +53 -0
  578. package/lib/utils/suggester-workers/searching/meloto-order.spec.js +67 -0
  579. package/lib/utils/suggester-workers/searching/searching.js +3 -3
  580. package/lib/utils/suggester-workers/searching/searching.worker.js +4 -2
  581. package/package.json +7 -3
  582. package/lib/components/commons/build-style-object.js +0 -25
  583. package/lib/components/commons/components/combo-box/selection/index.js +0 -13
  584. package/lib/components/commons/components/combo-box/state-management/combo-box-context.js +0 -16
  585. package/lib/components/commons/components/combo-box/state-management/initial-state.js +0 -14
  586. package/lib/components/commons/components/combo-box/state-management/reducer/reduce-on-keydown/index.js +0 -13
  587. package/lib/components/commons/components/combo-box/state-management/reducer/reduce-on-keydown/reduce-on-keydown.js +0 -40
  588. package/lib/components/commons/components/combo-box/state-management/reducer/reduce-on-select.js +0 -22
  589. package/lib/components/commons/components/combo-box/state-management/reducer/reducer.js +0 -41
  590. package/lib/components/commons/prop-types/declarations.js +0 -19
  591. package/lib/components/commons/prop-types/index.js +0 -41
  592. package/lib/components/commons/prop-types/lines.js +0 -13
  593. package/lib/components/commons/prop-types/options.js +0 -13
  594. package/lib/components/commons/prop-types/response.js +0 -13
  595. package/lib/components/commons/prop-types/value-type.js +0 -14
  596. package/lib/components/commons/use-previous.js +0 -16
  597. package/lib/components/components.js +0 -171
  598. package/lib/components/radio/html/dist/radio-group.css +0 -12
  599. package/lib/components/radio/radio-group.js +0 -48
  600. package/lib/components/suggester/idb-suggester/dist/index.dev.js +0 -12
  601. package/lib/dist/index.dev.js +0 -31
  602. package/lib/utils/suggester-workers/append-to-index/dist/append.worker.dev.js +0 -37
  603. package/lib/utils/suggester-workers/append-to-index/dist/create-append-task.js +0 -69
  604. package/lib/utils/suggester-workers/append-to-index/dist/index.dev.js +0 -24
  605. /package/lib/components/commons/components/combo-box/state-management/{reducer/reduce-on-init.js → reduce-on-init.js} +0 -0
  606. /package/lib/src/use-lunatic/reducer/{validate-controls/validation-utils.d.ts → resolve-component-controls/resolve-component-control.d.ts} +0 -0
@@ -25,7 +25,7 @@ function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { va
25
25
  function _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
26
26
  function _toPropertyKey(arg) { var key = _toPrimitive(arg, "string"); return _typeof(key) === "symbol" ? key : String(key); }
27
27
  function _toPrimitive(input, hint) { if (_typeof(input) !== "object" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || "default"); if (_typeof(res) !== "object") return res; throw new TypeError("@@toPrimitive must return a primitive value."); } return (hint === "string" ? String : Number)(input); }
28
- function ErrorItem(_ref) {
28
+ function Error(_ref) {
29
29
  var criticality = _ref.criticality,
30
30
  errorMessage = _ref.errorMessage;
31
31
  return /*#__PURE__*/(0, _jsxRuntime.jsx)("li", {
@@ -36,7 +36,7 @@ function ErrorItem(_ref) {
36
36
  function ComponentErrors(_ref2) {
37
37
  var errors = _ref2.errors;
38
38
  var content = errors.map(function (error, index) {
39
- return /*#__PURE__*/(0, _react.createElement)(ErrorItem, _objectSpread(_objectSpread({}, error), {}, {
39
+ return /*#__PURE__*/(0, _react.createElement)(Error, _objectSpread(_objectSpread({}, error), {}, {
40
40
  key: index
41
41
  }));
42
42
  }, []);
@@ -46,8 +46,7 @@ function ComponentErrors(_ref2) {
46
46
  });
47
47
  }
48
48
  function ModalControls(_ref3) {
49
- var title = _ref3.title,
50
- errors = _ref3.errors,
49
+ var errors = _ref3.errors,
51
50
  isCritical = _ref3.isCritical,
52
51
  goNext = _ref3.goNext,
53
52
  onClose = _ref3.onClose;
@@ -67,7 +66,6 @@ function ModalControls(_ref3) {
67
66
  }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_closeOrSkip["default"], {
68
67
  onSkip: goNext,
69
68
  onClose: onClose,
70
- errors: errors,
71
69
  isCritical: isCritical
72
70
  })]
73
71
  });
@@ -4,26 +4,30 @@ var _react = _interopRequireDefault(require("react"));
4
4
  var _react2 = require("@testing-library/react");
5
5
  var _modalControls = _interopRequireDefault(require("./modal-controls"));
6
6
  var _vitest = require("vitest");
7
- var _i18n = _interopRequireDefault(require("../../i18n"));
7
+ var _typeSource = require("../../use-lunatic/type-source");
8
8
  var _jsxRuntime = require("react/jsx-runtime");
9
9
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; }
10
10
  (0, _vitest.describe)('ModalControls component', function () {
11
11
  (0, _vitest.it)('should render correctly when there are errors', function () {
12
12
  var errors = {
13
13
  field1: [{
14
- criticality: 'ERROR',
15
- errorMessage: 'Error message 1'
14
+ id: 'message1',
15
+ criticality: _typeSource.Criticality.ERROR,
16
+ errorMessage: 'Error message 1',
17
+ typeOfControl: _typeSource.TypeOfControl.CONSISTENCY
16
18
  }],
17
19
  field2: [{
18
- criticality: 'ERROR',
19
- errorMessage: 'Error message 2'
20
+ id: 'message2',
21
+ criticality: _typeSource.Criticality.ERROR,
22
+ errorMessage: 'Error message 2',
23
+ typeOfControl: _typeSource.TypeOfControl.CONSISTENCY
20
24
  }]
21
25
  };
22
26
  var goNext = _vitest.vi.fn();
23
27
  var _render = (0, _react2.render)( /*#__PURE__*/(0, _jsxRuntime.jsx)(_modalControls["default"], {
24
- title: "Test Modal",
25
28
  errors: errors,
26
- goNext: goNext
29
+ goNext: goNext,
30
+ onClose: function onClose() {}
27
31
  })),
28
32
  getByText = _render.getByText;
29
33
  (0, _vitest.expect)(getByText('Error message 1')).toBeInTheDocument();
@@ -32,8 +36,9 @@ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "d
32
36
  (0, _vitest.it)('should render correctly when there are no errors', function () {
33
37
  var goNext = _vitest.vi.fn();
34
38
  var _render2 = (0, _react2.render)( /*#__PURE__*/(0, _jsxRuntime.jsx)(_modalControls["default"], {
35
- title: "Test Modal",
36
- goNext: goNext
39
+ errors: {},
40
+ goNext: goNext,
41
+ onClose: function onClose() {}
37
42
  })),
38
43
  queryByText = _render2.queryByText;
39
44
  (0, _vitest.expect)(queryByText('Error message 1')).toBeNull();
@@ -47,7 +52,7 @@ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "d
47
52
  };
48
53
  const goNext = vi.fn();
49
54
  const { getByText } = render(
50
- <ModalControls title="Test Modal" errors={errors} goNext={goNext} />
55
+ <ModalControls errors={errors} goNext={goNext} />
51
56
  );
52
57
  fireEvent.click(getByText('Correct'));
53
58
  expect(goNext).toHaveBeenCalledWith({ block: true });
@@ -56,19 +61,23 @@ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "d
56
61
  (0, _vitest.it)('should call the goNext function when the skip button is clicked', function () {
57
62
  var errors = {
58
63
  field1: [{
59
- criticality: 'ERROR',
60
- errorMessage: 'Error message 1'
64
+ criticality: _typeSource.Criticality.ERROR,
65
+ errorMessage: 'Error message 1',
66
+ id: 'message1',
67
+ typeOfControl: _typeSource.TypeOfControl.CONSISTENCY
61
68
  }],
62
69
  field2: [{
63
- criticality: 'ERROR',
64
- errorMessage: 'Error message 2'
70
+ criticality: _typeSource.Criticality.ERROR,
71
+ errorMessage: 'Error message 2',
72
+ id: 'message2',
73
+ typeOfControl: _typeSource.TypeOfControl.CONSISTENCY
65
74
  }]
66
75
  };
67
76
  var goNext = _vitest.vi.fn();
68
77
  var _render3 = (0, _react2.render)( /*#__PURE__*/(0, _jsxRuntime.jsx)(_modalControls["default"], {
69
- title: "Test Modal",
70
78
  errors: errors,
71
- goNext: goNext
79
+ goNext: goNext,
80
+ onClose: function onClose() {}
72
81
  })),
73
82
  getByText = _render3.getByText;
74
83
  _react2.fireEvent.click(getByText('Ignore'));
@@ -21,7 +21,7 @@ function LinksOrchestrator(props) {
21
21
  var id = props.id,
22
22
  components = props.components,
23
23
  nbRows = props.nbRows,
24
- valueMap = props.valueMap,
24
+ valueMap = props.value,
25
25
  handleChange = props.handleChange,
26
26
  features = props.features,
27
27
  missing = props.missing,
@@ -40,15 +40,18 @@ function LinksOrchestrator(props) {
40
40
  (0, _react.useEffect)(function () {
41
41
  setLenghts([xAxisIterations, yAxisIterations]);
42
42
  }, [xAxisIterations, yAxisIterations]);
43
- if (nbRows > 0) {
44
- return new Array(nbRows).fill(null).map(function (_, index) {
43
+ if (nbRows <= 0) {
44
+ return null;
45
+ }
46
+ var items = new Array(nbRows).fill(null);
47
+ return /*#__PURE__*/(0, _jsxRuntime.jsx)(_jsxRuntime.Fragment, {
48
+ children: items.map(function (_, index) {
45
49
  var i = Math.trunc(index / xAxisIterations);
46
50
  var j = index % xAxisIterations;
47
51
  return /*#__PURE__*/(0, _jsxRuntime.jsx)(_row["default"], {
48
52
  id: id,
49
- rowIndex: index,
50
53
  components: components,
51
- valueMap: valueMap,
54
+ value: valueMap,
52
55
  handleChange: handleChange,
53
56
  executeExpression: executeExpression,
54
57
  iteration: iteration,
@@ -62,9 +65,8 @@ function LinksOrchestrator(props) {
62
65
  errors: errors,
63
66
  symLinks: symLinks
64
67
  }, index);
65
- });
66
- }
67
- return null;
68
+ })
69
+ });
68
70
  }
69
71
  var _default = LinksOrchestrator;
70
72
  exports["default"] = _default;
@@ -1,18 +1,15 @@
1
1
  "use strict";
2
2
 
3
- function _typeof(obj) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && "function" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }, _typeof(obj); }
4
3
  Object.defineProperty(exports, "__esModule", {
5
4
  value: true
6
5
  });
7
6
  exports["default"] = void 0;
8
- var _react = _interopRequireWildcard(require("react"));
7
+ var _react = _interopRequireDefault(require("react"));
9
8
  var _orchestrator = _interopRequireDefault(require("./orchestrator"));
10
9
  var _declarations = require("../declarations");
11
10
  var _nothingToDisplay = _interopRequireDefault(require("../commons/components/nothing-to-display"));
12
11
  var _jsxRuntime = require("react/jsx-runtime");
13
12
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; }
14
- function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
15
- function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== "object" && typeof obj !== "function") { return { "default": obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj["default"] = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
16
13
  var PairwiseLinks = function PairwiseLinks(_ref) {
17
14
  var declarations = _ref.declarations,
18
15
  components = _ref.components,
@@ -29,10 +26,11 @@ var PairwiseLinks = function PairwiseLinks(_ref) {
29
26
  id = _ref.id,
30
27
  symLinks = _ref.symLinks;
31
28
  var nbRows = xAxisIterations * yAxisIterations;
32
- var handleChangeLinks = (0, _react.useCallback)(function (response, value, args) {
33
- handleChange(response, value, args);
34
- }, [handleChange]);
35
- if (nbRows > 1) return /*#__PURE__*/(0, _jsxRuntime.jsxs)(_jsxRuntime.Fragment, {
29
+ console.log('lunatic', 'pairwise', value);
30
+ if (nbRows <= 1) {
31
+ return /*#__PURE__*/(0, _jsxRuntime.jsx)(_nothingToDisplay["default"], {});
32
+ }
33
+ return /*#__PURE__*/(0, _jsxRuntime.jsxs)(_jsxRuntime.Fragment, {
36
34
  children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_declarations.DeclarationsBeforeText, {
37
35
  declarations: declarations,
38
36
  id: id
@@ -42,9 +40,9 @@ var PairwiseLinks = function PairwiseLinks(_ref) {
42
40
  }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_orchestrator["default"], {
43
41
  id: id,
44
42
  components: components,
45
- handleChange: handleChangeLinks,
43
+ handleChange: handleChange,
46
44
  nbRows: nbRows,
47
- valueMap: value,
45
+ value: value,
48
46
  management: management,
49
47
  missing: missing,
50
48
  shortcut: shortcut,
@@ -59,7 +57,6 @@ var PairwiseLinks = function PairwiseLinks(_ref) {
59
57
  id: id
60
58
  })]
61
59
  });
62
- return /*#__PURE__*/(0, _jsxRuntime.jsx)(_nothingToDisplay["default"], {});
63
60
  };
64
61
  var _default = PairwiseLinks;
65
62
  exports["default"] = _default;
@@ -10,20 +10,17 @@ var _commons = require("../commons");
10
10
  var _jsxRuntime = require("react/jsx-runtime");
11
11
  function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
12
12
  function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== "object" && typeof obj !== "function") { return { "default": obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj["default"] = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
13
- function _toConsumableArray(arr) { return _arrayWithoutHoles(arr) || _iterableToArray(arr) || _unsupportedIterableToArray(arr) || _nonIterableSpread(); }
14
- function _nonIterableSpread() { throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
15
- function _iterableToArray(iter) { if (typeof Symbol !== "undefined" && iter[Symbol.iterator] != null || iter["@@iterator"] != null) return Array.from(iter); }
16
- function _arrayWithoutHoles(arr) { if (Array.isArray(arr)) return _arrayLikeToArray(arr); }
17
13
  function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }
18
14
  function _nonIterableRest() { throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
19
15
  function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }
20
16
  function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) arr2[i] = arr[i]; return arr2; }
21
17
  function _iterableToArrayLimit(arr, i) { var _i = null == arr ? null : "undefined" != typeof Symbol && arr[Symbol.iterator] || arr["@@iterator"]; if (null != _i) { var _s, _e, _x, _r, _arr = [], _n = !0, _d = !1; try { if (_x = (_i = _i.call(arr)).next, 0 === i) { if (Object(_i) !== _i) return; _n = !1; } else for (; !(_n = (_s = _x.call(_i)).done) && (_arr.push(_s.value), _arr.length !== i); _n = !0); } catch (err) { _d = !0, _e = err; } finally { try { if (!_n && null != _i["return"] && (_r = _i["return"](), Object(_r) !== _r)) return; } finally { if (_d) throw _e; } } return _arr; } }
22
18
  function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
19
+ var empty = {};
23
20
  function Row(_ref) {
24
21
  var components = _ref.components,
25
- _ref$valueMap = _ref.valueMap,
26
- valueMap = _ref$valueMap === void 0 ? {} : _ref$valueMap,
22
+ _ref$value = _ref.value,
23
+ valueMap = _ref$value === void 0 ? empty : _ref$value,
27
24
  handleChange = _ref.handleChange,
28
25
  features = _ref.features,
29
26
  missing = _ref.missing,
@@ -44,20 +41,21 @@ function Row(_ref) {
44
41
  lengths: lengths
45
42
  });
46
43
  }, [handleChange, linksIterations, symLinks, lengths]);
47
- if (x !== y) {
48
- return components.reduce(function (row, component) {
49
- var response = component.response,
50
- id = component.id;
51
- var idComponent = "".concat(id, "-").concat(x + 1, "-").concat(y + 1, " ");
44
+ if (x === y) {
45
+ return null;
46
+ }
47
+ return /*#__PURE__*/(0, _jsxRuntime.jsx)(_jsxRuntime.Fragment, {
48
+ children: components.map(function (component) {
49
+ var idComponent = "".concat(component.id, "-").concat(x + 1, "-").concat(y + 1, " ");
52
50
  var value = undefined;
53
- if (response) {
54
- var name = response.name;
51
+ if ('response' in component) {
52
+ var name = component.response.name;
55
53
  var valueArray = valueMap[name];
56
54
  if (Array.isArray(valueArray) && Array.isArray(valueArray[x])) {
57
55
  value = valueArray[x][y] || '';
58
56
  }
59
57
  }
60
- return [].concat(_toConsumableArray(row), [/*#__PURE__*/(0, _jsxRuntime.jsx)(_commons.OrchestratedComponent, {
58
+ return /*#__PURE__*/(0, _jsxRuntime.jsx)(_commons.OrchestratedComponent, {
61
59
  component: component,
62
60
  handleChange: handleChangeRow,
63
61
  features: features,
@@ -69,10 +67,9 @@ function Row(_ref) {
69
67
  preferences: preferences,
70
68
  linksIterations: linksIterations,
71
69
  executeExpression: executeExpression
72
- }, idComponent)]);
73
- }, []);
74
- }
75
- return null;
70
+ }, idComponent);
71
+ })
72
+ });
76
73
  }
77
74
  var _default = Row;
78
75
  exports["default"] = _default;
@@ -8,37 +8,43 @@ var _react = _interopRequireDefault(require("react"));
8
8
  var _radioOption = _interopRequireDefault(require("./radio-option"));
9
9
  var _commons = require("../../commons");
10
10
  var _getShortcutKey = require("../../checkbox/commons/getShortcutKey");
11
+ var _function = require("../../../utils/function");
11
12
  var _jsxRuntime = require("react/jsx-runtime");
12
13
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; }
13
14
  function RadioGroupContent(_ref) {
14
15
  var options = _ref.options,
15
16
  value = _ref.value,
16
17
  id = _ref.id,
17
- onClick = _ref.onClick,
18
+ _ref$onClick = _ref.onClick,
19
+ onClick = _ref$onClick === void 0 ? _function.voidFunction : _ref$onClick,
18
20
  _ref$checkboxStyle = _ref.checkboxStyle,
19
21
  checkboxStyle = _ref$checkboxStyle === void 0 ? false : _ref$checkboxStyle,
20
- shortcut = _ref.shortcut;
22
+ shortcut = _ref.shortcut,
23
+ disabled = _ref.disabled;
21
24
  var onKeyDown = (0, _commons.useOptionsKeydown)(options, onClick);
22
25
  var maxIndex = options.length;
23
- return options.map(function (option, index) {
24
- var valueOption = option.value,
25
- label = option.label,
26
- description = option.description;
27
- var radioId = "lunatic-radio-".concat(id, "-").concat(valueOption);
28
- var codeModality = (0, _getShortcutKey.getShortcutKey)(index, maxIndex);
29
- return /*#__PURE__*/(0, _jsxRuntime.jsx)(_radioOption["default"], {
30
- id: radioId,
31
- index: index,
32
- checked: value === valueOption,
33
- onClick: onClick,
34
- value: valueOption,
35
- onKeyDown: onKeyDown,
36
- checkboxStyle: checkboxStyle,
37
- label: label,
38
- description: description,
39
- codeModality: shortcut && codeModality,
40
- shortcut: shortcut
41
- }, radioId);
26
+ return /*#__PURE__*/(0, _jsxRuntime.jsx)(_jsxRuntime.Fragment, {
27
+ children: options.map(function (option, index) {
28
+ var valueOption = option.value,
29
+ label = option.label,
30
+ description = option.description;
31
+ var radioId = "lunatic-radio-".concat(id, "-").concat(valueOption);
32
+ var codeModality = (0, _getShortcutKey.getShortcutKey)(index, maxIndex);
33
+ return /*#__PURE__*/(0, _jsxRuntime.jsx)(_radioOption["default"], {
34
+ id: radioId,
35
+ index: index,
36
+ checked: value === valueOption,
37
+ onClick: onClick,
38
+ value: valueOption,
39
+ onKeyDown: onKeyDown,
40
+ checkboxStyle: checkboxStyle,
41
+ label: label,
42
+ description: description,
43
+ codeModality: shortcut ? codeModality : undefined,
44
+ shortcut: shortcut,
45
+ disabled: disabled
46
+ }, radioId);
47
+ })
42
48
  });
43
49
  }
44
50
  var _default = RadioGroupContent;
@@ -23,8 +23,7 @@ var options = [{
23
23
  (0, _vitest.it)('renders all options', function () {
24
24
  var _render = (0, _react2.render)( /*#__PURE__*/(0, _jsxRuntime.jsx)(_radioGroupContent["default"], {
25
25
  options: options,
26
- value: "option4",
27
- checked: false
26
+ value: "option4"
28
27
  })),
29
28
  getAllByRole = _render.getAllByRole;
30
29
  var radioOptions = getAllByRole('radio');
@@ -83,4 +82,18 @@ var options = [{
83
82
  });
84
83
  (0, _vitest.expect)(option1.parentNode).toHaveAttribute('aria-checked', 'true');
85
84
  });
85
+ (0, _vitest.it)('Click not working when disabled', function () {
86
+ var _render6 = (0, _react2.render)( /*#__PURE__*/(0, _jsxRuntime.jsx)(_radioGroupContent["default"], {
87
+ options: options,
88
+ value: "option1",
89
+ disabled: true
90
+ })),
91
+ getByText = _render6.getByText;
92
+ var option1 = getByText('Option 1');
93
+ (0, _vitest.expect)(option1.parentNode).toHaveAttribute('tabIndex', '0');
94
+ _react2.fireEvent.keyDown(option1, {
95
+ key: '1'
96
+ });
97
+ (0, _vitest.expect)(option1.parentNode).toHaveAttribute('aria-checked', 'true');
98
+ });
86
99
  });
@@ -4,8 +4,6 @@ Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
6
  exports["default"] = void 0;
7
- var _react = _interopRequireDefault(require("react"));
8
- var _propTypes = _interopRequireDefault(require("prop-types"));
9
7
  var _radioGroupContent = _interopRequireDefault(require("./radio-group-content"));
10
8
  var _commons = require("../../commons");
11
9
  require("./radio-group.scss");
@@ -22,8 +20,8 @@ function RadioGroup(_ref) {
22
20
  checkboxStyle = _ref$checkboxStyle === void 0 ? false : _ref$checkboxStyle,
23
21
  errors = _ref.errors,
24
22
  className = _ref.className,
25
- shortcut = _ref.shortcut;
26
- var onKeyDown = (0, _commons.useOptionsKeydown)(options, onSelect);
23
+ shortcut = _ref.shortcut,
24
+ disabled = _ref.disabled;
27
25
  return /*#__PURE__*/(0, _jsxRuntime.jsxs)(_commons.Fieldset, {
28
26
  className: className,
29
27
  legend: label,
@@ -32,36 +30,15 @@ function RadioGroup(_ref) {
32
30
  id: id,
33
31
  onClick: onSelect,
34
32
  value: value,
35
- onKeyDown: onKeyDown,
36
33
  checkboxStyle: checkboxStyle,
37
- label: label,
38
34
  options: options,
39
- shortcut: shortcut
35
+ shortcut: shortcut,
36
+ disabled: disabled
40
37
  }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_commons.Errors, {
41
38
  errors: errors,
42
39
  activeId: id
43
40
  })]
44
41
  });
45
42
  }
46
- RadioGroup.propTypes = {
47
- options: _propTypes["default"].arrayOf(_propTypes["default"].shape({
48
- label: _propTypes["default"].oneOfType([_propTypes["default"].string, _propTypes["default"].element]),
49
- description: _propTypes["default"].oneOfType([_propTypes["default"].string, _propTypes["default"].element, _propTypes["default"].array]),
50
- value: _propTypes["default"].oneOfType([_propTypes["default"].string, _propTypes["default"].number, _propTypes["default"].bool])
51
- })),
52
- id: _propTypes["default"].string.isRequired,
53
- onSelect: _propTypes["default"].func.isRequired,
54
- label: _propTypes["default"].oneOfType([_propTypes["default"].string, _propTypes["default"].element]),
55
- value: _propTypes["default"].oneOfType([_propTypes["default"].string, _propTypes["default"].number, _propTypes["default"].bool, _propTypes["default"].array]),
56
- className: _propTypes["default"].string,
57
- errors: _propTypes["default"].object,
58
- shortcut: _propTypes["default"].bool
59
- };
60
- RadioGroup.defaultProps = {
61
- errors: undefined,
62
- value: undefined,
63
- label: undefined,
64
- className: undefined
65
- };
66
43
  var _default = (0, _commons.createCustomizableLunaticField)(RadioGroup, 'Radio');
67
44
  exports["default"] = _default;
@@ -10,51 +10,47 @@ var _classnames = _interopRequireDefault(require("classnames"));
10
10
  var _commons = require("../../commons");
11
11
  var _icons = require("../../commons/icons");
12
12
  var _reactKeyboardEventHandler = _interopRequireDefault(require("react-keyboard-event-handler"));
13
+ var _function = require("../../../utils/function");
13
14
  var _jsxRuntime = require("react/jsx-runtime");
14
15
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; }
15
16
  function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
16
17
  function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== "object" && typeof obj !== "function") { return { "default": obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj["default"] = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
17
- function getIcon(checked, checkboxStyle) {
18
- if (checked) {
19
- if (checkboxStyle) {
20
- return _icons.CheckboxChecked;
21
- }
22
- return _icons.RadioChecked;
23
- }
24
- if (checkboxStyle) {
25
- return _icons.CheckboxUnchecked;
26
- }
27
- return _icons.RadioUnchecked;
28
- }
29
18
  function RadioOption(_ref) {
30
19
  var checked = _ref.checked,
31
- onClick = _ref.onClick,
32
- value = _ref.value,
20
+ _ref$onClick = _ref.onClick,
21
+ onClick = _ref$onClick === void 0 ? _function.voidFunction : _ref$onClick,
22
+ _ref$value = _ref.value,
23
+ value = _ref$value === void 0 ? null : _ref$value,
33
24
  id = _ref.id,
34
25
  disabled = _ref.disabled,
35
- onKeyDown = _ref.onKeyDown,
36
- index = _ref.index,
26
+ _ref$onKeyDown = _ref.onKeyDown,
27
+ onKeyDown = _ref$onKeyDown === void 0 ? _function.voidFunction : _ref$onKeyDown,
28
+ _ref$index = _ref.index,
29
+ index = _ref$index === void 0 ? -1 : _ref$index,
37
30
  labelledBy = _ref.labelledBy,
38
31
  checkboxStyle = _ref.checkboxStyle,
39
32
  label = _ref.label,
40
33
  description = _ref.description,
41
34
  shortcut = _ref.shortcut,
42
35
  codeModality = _ref.codeModality;
43
- var spanEl = (0, _react.useRef)();
36
+ var spanEl = (0, _react.useRef)(null);
44
37
  var Icon = getIcon(checked, checkboxStyle);
45
- var tabIndex = checked ? '0' : '-1';
38
+ var tabIndex = checked ? 0 : -1;
46
39
  var onClickOption = (0, _react.useCallback)(function () {
40
+ if (disabled) {
41
+ return;
42
+ }
47
43
  // on checkboxStyle, clicking on checked value unchecks it, so it acts as if empty answer was clicked
48
44
  checkboxStyle && checked ? onClick(null) : onClick(value);
49
- }, [value, onClick, checked, checkboxStyle]);
45
+ }, [value, onClick, checked, checkboxStyle, disabled]);
50
46
  var handleKeyDown = (0, _react.useCallback)(function (e) {
47
+ var _spanEl$current;
51
48
  var key = e.key;
52
- var current = spanEl.current;
53
49
  onKeyDown({
54
50
  key: key,
55
51
  index: index
56
52
  });
57
- current.blur();
53
+ (_spanEl$current = spanEl.current) === null || _spanEl$current === void 0 ? void 0 : _spanEl$current.blur();
58
54
  }, [onKeyDown, index, spanEl]);
59
55
  (0, _react.useEffect)(function () {
60
56
  var current = spanEl.current;
@@ -91,7 +87,7 @@ function RadioOption(_ref) {
91
87
  })]
92
88
  })
93
89
  })
94
- }), shortcut && /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactKeyboardEventHandler["default"], {
90
+ }), shortcut && codeModality && /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactKeyboardEventHandler["default"], {
95
91
  handleKeys: [codeModality],
96
92
  onKeyEvent: function onKeyEvent(key, e) {
97
93
  e.preventDefault();
@@ -101,5 +97,17 @@ function RadioOption(_ref) {
101
97
  })]
102
98
  });
103
99
  }
100
+ function getIcon(checked, checkboxStyle) {
101
+ if (checked) {
102
+ if (checkboxStyle) {
103
+ return _icons.CheckboxChecked;
104
+ }
105
+ return _icons.RadioChecked;
106
+ }
107
+ if (checkboxStyle) {
108
+ return _icons.CheckboxUnchecked;
109
+ }
110
+ return _icons.RadioUnchecked;
111
+ }
104
112
  var _default = (0, _commons.createCustomizableLunaticField)(RadioOption, 'RadioOption');
105
113
  exports["default"] = _default;
@@ -9,6 +9,7 @@ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "d
9
9
  (0, _vitest.it)('renders the component with the correct label', function () {
10
10
  var label = 'Test Option';
11
11
  var _render = (0, _react.render)( /*#__PURE__*/(0, _jsxRuntime.jsx)(_radioOption["default"], {
12
+ id: "radio-option",
12
13
  label: label
13
14
  })),
14
15
  getByText = _render.getByText;
@@ -17,6 +18,7 @@ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "d
17
18
  (0, _vitest.it)('calls the onClick handler when clicked', function () {
18
19
  var onClickMock = _vitest.vi.fn();
19
20
  (0, _react.render)( /*#__PURE__*/(0, _jsxRuntime.jsx)(_radioOption["default"], {
21
+ id: "radio-option",
20
22
  label: "Test Option",
21
23
  onClick: onClickMock
22
24
  }));
@@ -26,6 +28,7 @@ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "d
26
28
  });
27
29
  (0, _vitest.it)('sets the tabIndex to -1 when unchecked', function () {
28
30
  var _render2 = (0, _react.render)( /*#__PURE__*/(0, _jsxRuntime.jsx)(_radioOption["default"], {
31
+ id: "radio-option",
29
32
  label: "Test Option",
30
33
  checked: false
31
34
  })),
@@ -34,6 +37,7 @@ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "d
34
37
  });
35
38
  (0, _vitest.it)('sets the tabIndex to 0 when checked', function () {
36
39
  var _render3 = (0, _react.render)( /*#__PURE__*/(0, _jsxRuntime.jsx)(_radioOption["default"], {
40
+ id: "radio-option",
37
41
  label: "Test Option",
38
42
  checked: true
39
43
  })),
@@ -42,6 +46,7 @@ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "d
42
46
  });
43
47
  (0, _vitest.it)('applies the disabled class when disabled prop is present', function () {
44
48
  var _render4 = (0, _react.render)( /*#__PURE__*/(0, _jsxRuntime.jsx)(_radioOption["default"], {
49
+ id: "radio-option",
45
50
  label: "Test Option",
46
51
  disabled: true
47
52
  })),
@@ -50,6 +55,7 @@ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "d
50
55
  });
51
56
  (0, _vitest.it)('applies the checked class when checked prop is present', function () {
52
57
  var _render5 = (0, _react.render)( /*#__PURE__*/(0, _jsxRuntime.jsx)(_radioOption["default"], {
58
+ id: "radio-option",
53
59
  label: "Test Option",
54
60
  checked: true
55
61
  })),
@@ -58,6 +64,7 @@ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "d
58
64
  });
59
65
  (0, _vitest.it)('applies the code-modality class when codeModality prop is present', function () {
60
66
  var _render6 = (0, _react.render)( /*#__PURE__*/(0, _jsxRuntime.jsx)(_radioOption["default"], {
67
+ id: "radio-option",
61
68
  label: "Test Option",
62
69
  codeModality: "html"
63
70
  })),
@@ -67,6 +74,7 @@ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "d
67
74
  (0, _vitest.it)('calls the onKeyDown handler when a key is pressed', function () {
68
75
  var onKeyDownMock = _vitest.vi.fn();
69
76
  (0, _react.render)( /*#__PURE__*/(0, _jsxRuntime.jsx)(_radioOption["default"], {
77
+ id: "radio-option",
70
78
  label: "Test Option",
71
79
  onKeyDown: onKeyDownMock
72
80
  }));
@@ -4,7 +4,6 @@ Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
6
  exports["default"] = void 0;
7
- var _react = _interopRequireDefault(require("react"));
8
7
  var _radioGroup = _interopRequireDefault(require("./html/radio-group"));
9
8
  var _lunaticComponentWithoutLabel = _interopRequireDefault(require("../commons/components/lunatic-component-without-label"));
10
9
  var _useOnHandleChange = _interopRequireDefault(require("../commons/use-on-handle-change"));
@@ -27,7 +26,9 @@ function LunaticRadioGroup(props) {
27
26
  missing = props.missing,
28
27
  shortcut = props.shortcut,
29
28
  management = props.management,
30
- className = props.className;
29
+ _props$className = props.className,
30
+ className = _props$className === void 0 ? 'lunatic-radio-group' : _props$className,
31
+ disabled = props.disabled;
31
32
  var onChange = (0, _useOnHandleChange["default"])({
32
33
  handleChange: handleChange,
33
34
  response: response,
@@ -53,12 +54,10 @@ function LunaticRadioGroup(props) {
53
54
  errors: errors,
54
55
  label: label,
55
56
  className: className,
56
- shortcut: shortcut
57
+ shortcut: shortcut,
58
+ disabled: disabled
57
59
  })
58
60
  });
59
61
  }
60
- LunaticRadioGroup.defaultProps = {
61
- className: 'lunatic-radio-group'
62
- };
63
62
  var _default = (0, _commons.createCustomizableLunaticField)(LunaticRadioGroup, 'LunaticRadioGroup');
64
63
  exports["default"] = _default;