@inseefr/lunatic 3.4.5 → 3.4.6-rc.0

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 (1660) hide show
  1. package/README.md +60 -13
  2. package/components/Accordion/Accordion.js +7 -4
  3. package/components/Accordion/Accordion.js.map +1 -1
  4. package/components/CheckboxBoolean/CheckboxBoolean.js +14 -10
  5. package/components/CheckboxBoolean/CheckboxBoolean.js.map +1 -1
  6. package/components/CheckboxBoolean/CheckboxBoolean.spec.js +26 -24
  7. package/components/CheckboxBoolean/CheckboxBoolean.spec.js.map +1 -1
  8. package/components/CheckboxGroup/CheckboxGroup.js +8 -5
  9. package/components/CheckboxGroup/CheckboxGroup.js.map +1 -1
  10. package/components/CheckboxGroup/CustomCheckboxGroup.js +15 -12
  11. package/components/CheckboxGroup/CustomCheckboxGroup.js.map +1 -1
  12. package/components/CheckboxGroup/CustomCheckboxGroup.spec.js +21 -19
  13. package/components/CheckboxGroup/CustomCheckboxGroup.spec.js.map +1 -1
  14. package/components/CheckboxOne/CheckboxOne.js +8 -5
  15. package/components/CheckboxOne/CheckboxOne.js.map +1 -1
  16. package/components/CheckboxOne/CheckboxOne.spec.js +17 -15
  17. package/components/CheckboxOne/CheckboxOne.spec.js.map +1 -1
  18. package/components/Datepicker/Datepicker.js +16 -12
  19. package/components/Datepicker/Datepicker.js.map +1 -1
  20. package/components/Datepicker/Datepicker.spec.js +30 -28
  21. package/components/Datepicker/Datepicker.spec.js.map +1 -1
  22. package/components/Datepicker/DatepickerField.js +10 -4
  23. package/components/Datepicker/DatepickerField.js.map +1 -1
  24. package/components/Dropdown/Dropdown.js +18 -11
  25. package/components/Dropdown/Dropdown.js.map +1 -1
  26. package/components/Dropdown/Dropdown.spec.js +17 -15
  27. package/components/Dropdown/Dropdown.spec.js.map +1 -1
  28. package/components/Dropdown/renderer/SimpleLabelRenderer.js +7 -4
  29. package/components/Dropdown/renderer/SimpleLabelRenderer.js.map +1 -1
  30. package/components/Dropdown/renderer/SimpleOptionRenderer.js +11 -5
  31. package/components/Dropdown/renderer/SimpleOptionRenderer.js.map +1 -1
  32. package/components/Duration/Duration.js +24 -17
  33. package/components/Duration/Duration.js.map +1 -1
  34. package/components/Duration/durationUtils.js +8 -4
  35. package/components/Duration/durationUtils.js.map +1 -1
  36. package/components/Duration/formatDuration.js +5 -2
  37. package/components/Duration/formatDuration.js.map +1 -1
  38. package/components/Duration/formatDuration.spec.js +14 -12
  39. package/components/Duration/formatDuration.spec.js.map +1 -1
  40. package/components/Duration/getDurationFromValue.js +5 -2
  41. package/components/Duration/getDurationFromValue.js.map +1 -1
  42. package/components/FilterDescription/FilterDescription.js +6 -3
  43. package/components/FilterDescription/FilterDescription.js.map +1 -1
  44. package/components/FilterDescription/FilterDescription.spec.js +12 -10
  45. package/components/FilterDescription/FilterDescription.spec.js.map +1 -1
  46. package/components/Input/Input.js +17 -10
  47. package/components/Input/Input.js.map +1 -1
  48. package/components/Input/Input.spec.js +31 -29
  49. package/components/Input/Input.spec.js.map +1 -1
  50. package/components/InputNumber/InputNumber.js +14 -10
  51. package/components/InputNumber/InputNumber.js.map +1 -1
  52. package/components/InputNumber/InputNumber.spec.js +43 -41
  53. package/components/InputNumber/InputNumber.spec.js.map +1 -1
  54. package/components/InputNumber/InputNumberThousand.js +16 -9
  55. package/components/InputNumber/InputNumberThousand.js.map +1 -1
  56. package/components/Loop/Loop.js +25 -18
  57. package/components/Loop/Loop.js.map +1 -1
  58. package/components/Loop/constant.js +4 -1
  59. package/components/Loop/constant.js.map +1 -1
  60. package/components/LunaticComponents.js +33 -29
  61. package/components/LunaticComponents.js.map +1 -1
  62. package/components/PairwiseLinks/PairwiseLinks.js +18 -14
  63. package/components/PairwiseLinks/PairwiseLinks.js.map +1 -1
  64. package/components/Question/Question.js +12 -8
  65. package/components/Question/Question.js.map +1 -1
  66. package/components/Radio/Radio.js +9 -6
  67. package/components/Radio/Radio.js.map +1 -1
  68. package/components/RosterForLoop/RosterForLoop.js +20 -16
  69. package/components/RosterForLoop/RosterForLoop.js.map +1 -1
  70. package/components/RosterForLoop/RosterForLoop.spec.js +13 -11
  71. package/components/RosterForLoop/RosterForLoop.spec.js.map +1 -1
  72. package/components/Roundabout/CustomRoundabout.js +15 -9
  73. package/components/Roundabout/CustomRoundabout.js.map +1 -1
  74. package/components/Roundabout/Roundabout.js +9 -6
  75. package/components/Roundabout/Roundabout.js.map +1 -1
  76. package/components/Roundabout/roundabout.spec.js +25 -23
  77. package/components/Roundabout/roundabout.spec.js.map +1 -1
  78. package/components/Sequence/Sequence.js +9 -6
  79. package/components/Sequence/Sequence.js.map +1 -1
  80. package/components/Subsequence/Subsequence.js +9 -6
  81. package/components/Subsequence/Subsequence.js.map +1 -1
  82. package/components/Subsequence/Subsequence.spec.js +20 -18
  83. package/components/Subsequence/Subsequence.spec.js.map +1 -1
  84. package/components/Suggester/CustomSuggester.js +13 -8
  85. package/components/Suggester/CustomSuggester.js.map +1 -1
  86. package/components/Suggester/Suggester.js +20 -14
  87. package/components/Suggester/Suggester.js.map +1 -1
  88. package/components/Suggester/SuggesterNotification.js +11 -9
  89. package/components/Suggester/SuggesterNotification.js.map +1 -1
  90. package/components/Suggester/SuggesterType.js +2 -1
  91. package/components/Suggester/useSuggestions.js +20 -16
  92. package/components/Suggester/useSuggestions.js.map +1 -1
  93. package/components/Summary/Summary.js +11 -8
  94. package/components/Summary/Summary.js.map +1 -1
  95. package/components/Switch/Switch.js +18 -13
  96. package/components/Switch/Switch.js.map +1 -1
  97. package/components/Table/Table.js +9 -6
  98. package/components/Table/Table.js.map +1 -1
  99. package/components/Text/Text.js +4 -1
  100. package/components/Text/Text.js.map +1 -1
  101. package/components/Textarea/Textarea.js +13 -9
  102. package/components/Textarea/Textarea.js.map +1 -1
  103. package/components/Textarea/Textarea.spec.js +18 -16
  104. package/components/Textarea/Textarea.spec.js.map +1 -1
  105. package/components/library.js +52 -49
  106. package/components/library.js.map +1 -1
  107. package/components/shared/Button/Button.js +16 -11
  108. package/components/shared/Button/Button.js.map +1 -1
  109. package/components/shared/Button/Button.spec.js +36 -34
  110. package/components/shared/Button/Button.spec.js.map +1 -1
  111. package/components/shared/Button/IconButton.js +11 -5
  112. package/components/shared/Button/IconButton.js.map +1 -1
  113. package/components/shared/Button/IconButton.spec.js +55 -50
  114. package/components/shared/Button/IconButton.spec.js.map +1 -1
  115. package/components/shared/Checkbox/CheckboxOption.js +10 -8
  116. package/components/shared/Checkbox/CheckboxOption.js.map +1 -1
  117. package/components/shared/Checkbox/CheckboxOption.spec.js +29 -27
  118. package/components/shared/Checkbox/CheckboxOption.spec.js.map +1 -1
  119. package/components/shared/Checkbox/getShortcutKey.js +6 -2
  120. package/components/shared/Checkbox/getShortcutKey.js.map +1 -1
  121. package/components/shared/Combobox/Combobox.js +32 -26
  122. package/components/shared/Combobox/Combobox.js.map +1 -1
  123. package/components/shared/Combobox/Combobox.stories.js +19 -17
  124. package/components/shared/Combobox/Combobox.stories.js.map +1 -1
  125. package/components/shared/Combobox/ComboboxContainer.js +11 -5
  126. package/components/shared/Combobox/ComboboxContainer.js.map +1 -1
  127. package/components/shared/Combobox/ComboboxContainer.spec.js +20 -18
  128. package/components/shared/Combobox/ComboboxContainer.spec.js.map +1 -1
  129. package/components/shared/Combobox/ComboboxContent.js +21 -15
  130. package/components/shared/Combobox/ComboboxContent.js.map +1 -1
  131. package/components/shared/Combobox/ComboboxContentBox.js +10 -5
  132. package/components/shared/Combobox/ComboboxContentBox.js.map +1 -1
  133. package/components/shared/Combobox/ComboboxType.js +2 -1
  134. package/components/shared/Combobox/Panel/ComboboxOption.js +14 -8
  135. package/components/shared/Combobox/Panel/ComboboxOption.js.map +1 -1
  136. package/components/shared/Combobox/Panel/ComboboxOption.spec.js +21 -19
  137. package/components/shared/Combobox/Panel/ComboboxOption.spec.js.map +1 -1
  138. package/components/shared/Combobox/Panel/ComboboxOptionContainer.js +14 -8
  139. package/components/shared/Combobox/Panel/ComboboxOptionContainer.js.map +1 -1
  140. package/components/shared/Combobox/Panel/ComboboxOptionContainer.spec.js +11 -9
  141. package/components/shared/Combobox/Panel/ComboboxOptionContainer.spec.js.map +1 -1
  142. package/components/shared/Combobox/Panel/ComboboxPanel.js +17 -11
  143. package/components/shared/Combobox/Panel/ComboboxPanel.js.map +1 -1
  144. package/components/shared/Combobox/Panel/ComboboxPanel.spec.js +27 -22
  145. package/components/shared/Combobox/Panel/ComboboxPanel.spec.js.map +1 -1
  146. package/components/shared/Combobox/Panel/ComboboxPanelContainer.js +10 -5
  147. package/components/shared/Combobox/Panel/ComboboxPanelContainer.js.map +1 -1
  148. package/components/shared/Combobox/Panel/ComboboxPanelContainer.spec.js +25 -23
  149. package/components/shared/Combobox/Panel/ComboboxPanelContainer.spec.js.map +1 -1
  150. package/components/shared/Combobox/Selection/ComboboxClearButton.js +15 -9
  151. package/components/shared/Combobox/Selection/ComboboxClearButton.js.map +1 -1
  152. package/components/shared/Combobox/Selection/ComboboxClearButton.spec.js +47 -42
  153. package/components/shared/Combobox/Selection/ComboboxClearButton.spec.js.map +1 -1
  154. package/components/shared/Combobox/Selection/ComboboxInput.js +14 -8
  155. package/components/shared/Combobox/Selection/ComboboxInput.js.map +1 -1
  156. package/components/shared/Combobox/Selection/ComboboxLabelSelection.js +14 -8
  157. package/components/shared/Combobox/Selection/ComboboxLabelSelection.js.map +1 -1
  158. package/components/shared/Combobox/Selection/ComboboxLabelSelection.spec.js +17 -15
  159. package/components/shared/Combobox/Selection/ComboboxLabelSelection.spec.js.map +1 -1
  160. package/components/shared/Combobox/Selection/ComboboxSelection.js +14 -8
  161. package/components/shared/Combobox/Selection/ComboboxSelection.js.map +1 -1
  162. package/components/shared/Combobox/Selection/ComboboxSelection.spec.js +25 -23
  163. package/components/shared/Combobox/Selection/ComboboxSelection.spec.js.map +1 -1
  164. package/components/shared/Combobox/constants.js +4 -1
  165. package/components/shared/Combobox/constants.js.map +1 -1
  166. package/components/shared/ComponentErrors/ComponentErrors.js +8 -4
  167. package/components/shared/ComponentErrors/ComponentErrors.js.map +1 -1
  168. package/components/shared/ComponentErrors/ComponentErrors.spec.js +14 -12
  169. package/components/shared/ComponentErrors/ComponentErrors.spec.js.map +1 -1
  170. package/components/shared/ComponentWrapper.js +14 -9
  171. package/components/shared/ComponentWrapper.js.map +1 -1
  172. package/components/shared/Declarations/Declarations.js +12 -7
  173. package/components/shared/Declarations/Declarations.js.map +1 -1
  174. package/components/shared/Declarations/Declarations.spec.js +22 -20
  175. package/components/shared/Declarations/Declarations.spec.js.map +1 -1
  176. package/components/shared/Fieldset/Fieldset.js +14 -9
  177. package/components/shared/Fieldset/Fieldset.js.map +1 -1
  178. package/components/shared/Fieldset/Fieldset.spec.js +16 -14
  179. package/components/shared/Fieldset/Fieldset.spec.js.map +1 -1
  180. package/components/shared/HOC/slottableComponent.js +15 -10
  181. package/components/shared/HOC/slottableComponent.js.map +1 -1
  182. package/components/shared/Icons/checkbox-checked-icon.js +7 -5
  183. package/components/shared/Icons/checkbox-checked-icon.js.map +1 -1
  184. package/components/shared/Icons/checkbox-disabled-icon.js +7 -5
  185. package/components/shared/Icons/checkbox-disabled-icon.js.map +1 -1
  186. package/components/shared/Icons/checkbox-unchecked-icon.js +7 -5
  187. package/components/shared/Icons/checkbox-unchecked-icon.js.map +1 -1
  188. package/components/shared/Icons/closed-icon.js +7 -5
  189. package/components/shared/Icons/closed-icon.js.map +1 -1
  190. package/components/shared/Icons/cross-icon.js +7 -5
  191. package/components/shared/Icons/cross-icon.js.map +1 -1
  192. package/components/shared/Icons/icon-props.js +2 -1
  193. package/components/shared/Icons/index.js +23 -10
  194. package/components/shared/Icons/index.js.map +1 -1
  195. package/components/shared/Icons/load-icon.js +7 -5
  196. package/components/shared/Icons/load-icon.js.map +1 -1
  197. package/components/shared/Icons/lunatic-icon.js +10 -5
  198. package/components/shared/Icons/lunatic-icon.js.map +1 -1
  199. package/components/shared/Icons/network-icon.js +7 -5
  200. package/components/shared/Icons/network-icon.js.map +1 -1
  201. package/components/shared/Icons/on-drag-icon.js +7 -5
  202. package/components/shared/Icons/on-drag-icon.js.map +1 -1
  203. package/components/shared/Icons/opened-icon.js +7 -5
  204. package/components/shared/Icons/opened-icon.js.map +1 -1
  205. package/components/shared/Icons/radio-checked-icon.js +8 -6
  206. package/components/shared/Icons/radio-checked-icon.js.map +1 -1
  207. package/components/shared/Icons/radio-unchecked-icon.js +7 -5
  208. package/components/shared/Icons/radio-unchecked-icon.js.map +1 -1
  209. package/components/shared/Label/Label.js +12 -7
  210. package/components/shared/Label/Label.js.map +1 -1
  211. package/components/shared/Label/Label.spec.js +15 -13
  212. package/components/shared/Label/Label.spec.js.map +1 -1
  213. package/components/shared/LabelDescription.js +12 -6
  214. package/components/shared/LabelDescription.js.map +1 -1
  215. package/components/shared/MDLabel/MDLabel.js +17 -11
  216. package/components/shared/MDLabel/MDLabel.js.map +1 -1
  217. package/components/shared/MDLabel/MDLabel.spec.js +44 -39
  218. package/components/shared/MDLabel/MDLabel.spec.js.map +1 -1
  219. package/components/shared/MDLabel/MarkdownLink.js +11 -8
  220. package/components/shared/MDLabel/MarkdownLink.js.map +1 -1
  221. package/components/shared/MDLabel/RouterLink.js +7 -4
  222. package/components/shared/MDLabel/RouterLink.js.map +1 -1
  223. package/components/shared/Missing/Missing.js +21 -16
  224. package/components/shared/Missing/Missing.js.map +1 -1
  225. package/components/shared/Missing/Missing.spec.js +26 -24
  226. package/components/shared/Missing/Missing.spec.js.map +1 -1
  227. package/components/shared/ModalControls/ModalControls.js +19 -14
  228. package/components/shared/ModalControls/ModalControls.js.map +1 -1
  229. package/components/shared/ModalControls/ModalControls.spec.js +22 -20
  230. package/components/shared/ModalControls/ModalControls.spec.js.map +1 -1
  231. package/components/shared/Notification.js +11 -6
  232. package/components/shared/Notification.js.map +1 -1
  233. package/components/shared/Radio/RadioGroup.js +18 -15
  234. package/components/shared/Radio/RadioGroup.js.map +1 -1
  235. package/components/shared/Radio/RadioOption.js +18 -12
  236. package/components/shared/Radio/RadioOption.js.map +1 -1
  237. package/components/shared/Radio/RadioOption.spec.js +44 -42
  238. package/components/shared/Radio/RadioOption.spec.js.map +1 -1
  239. package/components/shared/Table/Table.js +14 -9
  240. package/components/shared/Table/Table.js.map +1 -1
  241. package/components/shared/Table/Table.spec.js +13 -11
  242. package/components/shared/Table/Table.spec.js.map +1 -1
  243. package/components/shared/Table/TableHeader.js +10 -7
  244. package/components/shared/Table/TableHeader.js.map +1 -1
  245. package/components/shared/Table/Tbody.js +11 -5
  246. package/components/shared/Table/Tbody.js.map +1 -1
  247. package/components/shared/Table/Tbody.spec.js +16 -14
  248. package/components/shared/Table/Tbody.spec.js.map +1 -1
  249. package/components/shared/Table/Td.js +11 -5
  250. package/components/shared/Table/Td.js.map +1 -1
  251. package/components/shared/Table/Td.spec.js +13 -11
  252. package/components/shared/Table/Td.spec.js.map +1 -1
  253. package/components/shared/Table/Th.js +11 -5
  254. package/components/shared/Table/Th.js.map +1 -1
  255. package/components/shared/Table/Th.spec.js +15 -13
  256. package/components/shared/Table/Th.spec.js.map +1 -1
  257. package/components/shared/Table/Thead.js +11 -6
  258. package/components/shared/Table/Thead.js.map +1 -1
  259. package/components/shared/Table/Thead.spec.js +10 -8
  260. package/components/shared/Table/Thead.spec.js.map +1 -1
  261. package/components/shared/Table/Tr.js +11 -5
  262. package/components/shared/Table/Tr.js.map +1 -1
  263. package/components/shared/Table/Tr.spec.js +17 -15
  264. package/components/shared/Table/Tr.spec.js.map +1 -1
  265. package/components/shared/Table/index.js +17 -7
  266. package/components/shared/Table/index.js.map +1 -1
  267. package/components/type.js +2 -1
  268. package/components/type.js.map +1 -1
  269. package/constants/component-types.js +4 -1
  270. package/constants/component-types.js.map +1 -1
  271. package/constants/declarations.js +12 -9
  272. package/constants/declarations.js.map +1 -1
  273. package/constants/event-types.js +13 -10
  274. package/constants/event-types.js.map +1 -1
  275. package/constants/index.js +21 -5
  276. package/constants/index.js.map +1 -1
  277. package/constants/indexedDBStore.js +16 -13
  278. package/constants/indexedDBStore.js.map +1 -1
  279. package/constants/supported-preferences.js +28 -2
  280. package/constants/supported-preferences.js.map +1 -1
  281. package/constants/value-types.js +8 -5
  282. package/constants/value-types.js.map +1 -1
  283. package/constants/variable-types.js +5 -2
  284. package/constants/variable-types.js.map +1 -1
  285. package/esm/components/Accordion/Accordion.d.ts +7 -0
  286. package/esm/components/Accordion/Accordion.js +6 -0
  287. package/esm/components/Accordion/Accordion.js.map +1 -0
  288. package/esm/components/CheckboxBoolean/CheckboxBoolean.d.ts +10 -0
  289. package/esm/components/CheckboxBoolean/CheckboxBoolean.js +19 -0
  290. package/esm/components/CheckboxBoolean/CheckboxBoolean.js.map +1 -0
  291. package/esm/components/CheckboxBoolean/CheckboxBoolean.spec.d.ts +1 -0
  292. package/esm/components/CheckboxBoolean/CheckboxBoolean.spec.js +37 -0
  293. package/esm/components/CheckboxBoolean/CheckboxBoolean.spec.js.map +1 -0
  294. package/esm/components/CheckboxGroup/CheckboxGroup.d.ts +2 -0
  295. package/esm/components/CheckboxGroup/CheckboxGroup.js +7 -0
  296. package/esm/components/CheckboxGroup/CheckboxGroup.js.map +1 -0
  297. package/esm/components/CheckboxGroup/CustomCheckboxGroup.d.ts +7 -0
  298. package/esm/components/CheckboxGroup/CustomCheckboxGroup.js +17 -0
  299. package/esm/components/CheckboxGroup/CustomCheckboxGroup.js.map +1 -0
  300. package/esm/components/CheckboxGroup/CustomCheckboxGroup.spec.d.ts +1 -0
  301. package/esm/components/CheckboxGroup/CustomCheckboxGroup.spec.js +45 -0
  302. package/esm/components/CheckboxGroup/CustomCheckboxGroup.spec.js.map +1 -0
  303. package/esm/components/CheckboxOne/CheckboxOne.d.ts +5 -0
  304. package/esm/components/CheckboxOne/CheckboxOne.js +10 -0
  305. package/esm/components/CheckboxOne/CheckboxOne.js.map +1 -0
  306. package/esm/components/CheckboxOne/CheckboxOne.spec.d.ts +1 -0
  307. package/esm/components/CheckboxOne/CheckboxOne.spec.js +24 -0
  308. package/esm/components/CheckboxOne/CheckboxOne.spec.js.map +1 -0
  309. package/esm/components/Datepicker/Datepicker.d.ts +9 -0
  310. package/esm/components/Datepicker/Datepicker.js +66 -0
  311. package/esm/components/Datepicker/Datepicker.js.map +1 -0
  312. package/esm/components/Datepicker/Datepicker.spec.d.ts +1 -0
  313. package/esm/components/Datepicker/Datepicker.spec.js +75 -0
  314. package/esm/components/Datepicker/Datepicker.spec.js.map +1 -0
  315. package/esm/components/Datepicker/DatepickerField.d.ts +12 -0
  316. package/esm/components/Datepicker/DatepickerField.js +13 -0
  317. package/esm/components/Datepicker/DatepickerField.js.map +1 -0
  318. package/esm/components/Dropdown/Dropdown.d.ts +9 -0
  319. package/esm/components/Dropdown/Dropdown.js +15 -0
  320. package/esm/components/Dropdown/Dropdown.js.map +1 -0
  321. package/esm/components/Dropdown/Dropdown.spec.d.ts +1 -0
  322. package/esm/components/Dropdown/Dropdown.spec.js +38 -0
  323. package/esm/components/Dropdown/Dropdown.spec.js.map +1 -0
  324. package/esm/components/Dropdown/renderer/SimpleLabelRenderer.d.ts +8 -0
  325. package/esm/components/Dropdown/renderer/SimpleLabelRenderer.js +19 -0
  326. package/esm/components/Dropdown/renderer/SimpleLabelRenderer.js.map +1 -0
  327. package/esm/components/Dropdown/renderer/SimpleOptionRenderer.d.ts +7 -0
  328. package/esm/components/Dropdown/renderer/SimpleOptionRenderer.js +10 -0
  329. package/esm/components/Dropdown/renderer/SimpleOptionRenderer.js.map +1 -0
  330. package/esm/components/Duration/Duration.d.ts +9 -0
  331. package/esm/components/Duration/Duration.js +34 -0
  332. package/esm/components/Duration/Duration.js.map +1 -0
  333. package/esm/components/Duration/durationUtils.d.ts +47 -0
  334. package/esm/components/Duration/durationUtils.js +26 -0
  335. package/esm/components/Duration/durationUtils.js.map +1 -0
  336. package/esm/components/Duration/formatDuration.d.ts +2 -0
  337. package/esm/components/Duration/formatDuration.js +18 -0
  338. package/esm/components/Duration/formatDuration.js.map +1 -0
  339. package/esm/components/Duration/formatDuration.spec.d.ts +1 -0
  340. package/esm/components/Duration/formatDuration.spec.js +16 -0
  341. package/esm/components/Duration/formatDuration.spec.js.map +1 -0
  342. package/esm/components/Duration/getDurationFromValue.d.ts +8 -0
  343. package/esm/components/Duration/getDurationFromValue.js +36 -0
  344. package/esm/components/Duration/getDurationFromValue.js.map +1 -0
  345. package/esm/components/FilterDescription/FilterDescription.d.ts +7 -0
  346. package/esm/components/FilterDescription/FilterDescription.js +3 -0
  347. package/esm/components/FilterDescription/FilterDescription.js.map +1 -0
  348. package/esm/components/FilterDescription/FilterDescription.spec.d.ts +1 -0
  349. package/esm/components/FilterDescription/FilterDescription.spec.js +16 -0
  350. package/esm/components/FilterDescription/FilterDescription.spec.js.map +1 -0
  351. package/esm/components/Input/Input.d.ts +9 -0
  352. package/esm/components/Input/Input.js +15 -0
  353. package/esm/components/Input/Input.js.map +1 -0
  354. package/esm/components/Input/Input.spec.d.ts +1 -0
  355. package/esm/components/Input/Input.spec.js +52 -0
  356. package/esm/components/Input/Input.spec.js.map +1 -0
  357. package/esm/components/InputNumber/InputNumber.d.ts +9 -0
  358. package/esm/components/InputNumber/InputNumber.js +15 -0
  359. package/esm/components/InputNumber/InputNumber.js.map +1 -0
  360. package/esm/components/InputNumber/InputNumber.spec.d.ts +1 -0
  361. package/esm/components/InputNumber/InputNumber.spec.js +76 -0
  362. package/esm/components/InputNumber/InputNumber.spec.js.map +1 -0
  363. package/esm/components/InputNumber/InputNumberThousand.d.ts +14 -0
  364. package/esm/components/InputNumber/InputNumberThousand.js +20 -0
  365. package/esm/components/InputNumber/InputNumberThousand.js.map +1 -0
  366. package/esm/components/Loop/Loop.d.ts +15 -0
  367. package/esm/components/Loop/Loop.js +56 -0
  368. package/esm/components/Loop/Loop.js.map +1 -0
  369. package/esm/components/Loop/constant.d.ts +4 -0
  370. package/esm/components/Loop/constant.js +10 -0
  371. package/esm/components/Loop/constant.js.map +1 -0
  372. package/esm/components/LunaticComponents.d.ts +22 -0
  373. package/esm/components/LunaticComponents.js +83 -0
  374. package/esm/components/LunaticComponents.js.map +1 -0
  375. package/esm/components/PairwiseLinks/PairwiseLinks.d.ts +2 -0
  376. package/esm/components/PairwiseLinks/PairwiseLinks.js +42 -0
  377. package/esm/components/PairwiseLinks/PairwiseLinks.js.map +1 -0
  378. package/esm/components/Question/Question.d.ts +9 -0
  379. package/esm/components/Question/Question.js +16 -0
  380. package/esm/components/Question/Question.js.map +1 -0
  381. package/esm/components/Radio/Radio.d.ts +9 -0
  382. package/esm/components/Radio/Radio.js +10 -0
  383. package/esm/components/Radio/Radio.js.map +1 -0
  384. package/esm/components/RosterForLoop/RosterForLoop.d.ts +5 -0
  385. package/esm/components/RosterForLoop/RosterForLoop.js +63 -0
  386. package/esm/components/RosterForLoop/RosterForLoop.js.map +1 -0
  387. package/esm/components/RosterForLoop/RosterForLoop.spec.d.ts +1 -0
  388. package/esm/components/RosterForLoop/RosterForLoop.spec.js +28 -0
  389. package/esm/components/RosterForLoop/RosterForLoop.spec.js.map +1 -0
  390. package/esm/components/Roundabout/CustomRoundabout.d.ts +16 -0
  391. package/esm/components/Roundabout/CustomRoundabout.js +31 -0
  392. package/esm/components/Roundabout/CustomRoundabout.js.map +1 -0
  393. package/esm/components/Roundabout/Roundabout.d.ts +5 -0
  394. package/esm/components/Roundabout/Roundabout.js +28 -0
  395. package/esm/components/Roundabout/Roundabout.js.map +1 -0
  396. package/esm/components/Roundabout/roundabout.spec.d.ts +1 -0
  397. package/esm/components/Roundabout/roundabout.spec.js +47 -0
  398. package/esm/components/Roundabout/roundabout.spec.js.map +1 -0
  399. package/esm/components/Sequence/Sequence.d.ts +3 -0
  400. package/esm/components/Sequence/Sequence.js +9 -0
  401. package/esm/components/Sequence/Sequence.js.map +1 -0
  402. package/esm/components/Subsequence/Subsequence.d.ts +3 -0
  403. package/esm/components/Subsequence/Subsequence.js +9 -0
  404. package/esm/components/Subsequence/Subsequence.js.map +1 -0
  405. package/esm/components/Subsequence/Subsequence.spec.d.ts +1 -0
  406. package/esm/components/Subsequence/Subsequence.spec.js +43 -0
  407. package/esm/components/Subsequence/Subsequence.spec.js.map +1 -0
  408. package/esm/components/Suggester/CustomSuggester.d.ts +29 -0
  409. package/esm/components/Suggester/CustomSuggester.js +19 -0
  410. package/esm/components/Suggester/CustomSuggester.js.map +1 -0
  411. package/esm/components/Suggester/Suggester.d.ts +2 -0
  412. package/esm/components/Suggester/Suggester.js +104 -0
  413. package/esm/components/Suggester/Suggester.js.map +1 -0
  414. package/esm/components/Suggester/SuggesterNotification.d.ts +9 -0
  415. package/esm/components/Suggester/SuggesterNotification.js +15 -0
  416. package/esm/components/Suggester/SuggesterNotification.js.map +1 -0
  417. package/esm/components/Suggester/SuggesterType.d.ts +5 -0
  418. package/esm/components/Suggester/SuggesterType.js +2 -0
  419. package/esm/components/Suggester/SuggesterType.js.map +1 -0
  420. package/esm/components/Suggester/useSuggestions.d.ts +17 -0
  421. package/esm/components/Suggester/useSuggestions.js +85 -0
  422. package/esm/components/Suggester/useSuggestions.js.map +1 -0
  423. package/esm/components/Summary/Summary.d.ts +25 -0
  424. package/esm/components/Summary/Summary.js +65 -0
  425. package/esm/components/Summary/Summary.js.map +1 -0
  426. package/esm/components/Switch/Switch.d.ts +20 -0
  427. package/esm/components/Switch/Switch.js +30 -0
  428. package/esm/components/Switch/Switch.js.map +1 -0
  429. package/esm/components/Table/Table.d.ts +2 -0
  430. package/esm/components/Table/Table.js +9 -0
  431. package/esm/components/Table/Table.js.map +1 -0
  432. package/esm/components/Text/Text.d.ts +2 -0
  433. package/esm/components/Text/Text.js +4 -0
  434. package/esm/components/Text/Text.js.map +1 -0
  435. package/esm/components/Textarea/Textarea.d.ts +9 -0
  436. package/esm/components/Textarea/Textarea.js +14 -0
  437. package/esm/components/Textarea/Textarea.js.map +1 -0
  438. package/esm/components/Textarea/Textarea.spec.d.ts +1 -0
  439. package/esm/components/Textarea/Textarea.spec.js +31 -0
  440. package/esm/components/Textarea/Textarea.spec.js.map +1 -0
  441. package/esm/components/library.d.ts +73 -0
  442. package/esm/components/library.js +52 -0
  443. package/esm/components/library.js.map +1 -0
  444. package/esm/components/shared/Button/Button.d.ts +14 -0
  445. package/esm/components/shared/Button/Button.js +13 -0
  446. package/esm/components/shared/Button/Button.js.map +1 -0
  447. package/esm/components/shared/Button/Button.spec.d.ts +1 -0
  448. package/esm/components/shared/Button/Button.spec.js +51 -0
  449. package/esm/components/shared/Button/Button.spec.js.map +1 -0
  450. package/esm/components/shared/Button/IconButton.d.ts +6 -0
  451. package/esm/components/shared/Button/IconButton.js +7 -0
  452. package/esm/components/shared/Button/IconButton.js.map +1 -0
  453. package/esm/components/shared/Button/IconButton.spec.d.ts +1 -0
  454. package/esm/components/shared/Button/IconButton.spec.js +53 -0
  455. package/esm/components/shared/Button/IconButton.spec.js.map +1 -0
  456. package/esm/components/shared/Checkbox/CheckboxOption.d.ts +15 -0
  457. package/esm/components/shared/Checkbox/CheckboxOption.js +26 -0
  458. package/esm/components/shared/Checkbox/CheckboxOption.js.map +1 -0
  459. package/esm/components/shared/Checkbox/CheckboxOption.spec.d.ts +1 -0
  460. package/esm/components/shared/Checkbox/CheckboxOption.spec.js +52 -0
  461. package/esm/components/shared/Checkbox/CheckboxOption.spec.js.map +1 -0
  462. package/esm/components/shared/Checkbox/getShortcutKey.d.ts +1 -0
  463. package/esm/components/shared/Checkbox/getShortcutKey.js +3 -0
  464. package/esm/components/shared/Checkbox/getShortcutKey.js.map +1 -0
  465. package/esm/components/shared/Combobox/Combobox.d.ts +25 -0
  466. package/esm/components/shared/Combobox/Combobox.js +97 -0
  467. package/esm/components/shared/Combobox/Combobox.js.map +1 -0
  468. package/esm/components/shared/Combobox/Combobox.stories.d.ts +6 -0
  469. package/esm/components/shared/Combobox/Combobox.stories.js +47 -0
  470. package/esm/components/shared/Combobox/Combobox.stories.js.map +1 -0
  471. package/esm/components/shared/Combobox/ComboboxContainer.d.ts +11 -0
  472. package/esm/components/shared/Combobox/ComboboxContainer.js +6 -0
  473. package/esm/components/shared/Combobox/ComboboxContainer.js.map +1 -0
  474. package/esm/components/shared/Combobox/ComboboxContainer.spec.d.ts +1 -0
  475. package/esm/components/shared/Combobox/ComboboxContainer.spec.js +24 -0
  476. package/esm/components/shared/Combobox/ComboboxContainer.spec.js.map +1 -0
  477. package/esm/components/shared/Combobox/ComboboxContent.d.ts +10 -0
  478. package/esm/components/shared/Combobox/ComboboxContent.js +35 -0
  479. package/esm/components/shared/Combobox/ComboboxContent.js.map +1 -0
  480. package/esm/components/shared/Combobox/ComboboxContentBox.d.ts +7 -0
  481. package/esm/components/shared/Combobox/ComboboxContentBox.js +7 -0
  482. package/esm/components/shared/Combobox/ComboboxContentBox.js.map +1 -0
  483. package/esm/components/shared/Combobox/ComboboxType.d.ts +51 -0
  484. package/esm/components/shared/Combobox/ComboboxType.js +2 -0
  485. package/esm/components/shared/Combobox/ComboboxType.js.map +1 -0
  486. package/esm/components/shared/Combobox/Panel/ComboboxOption.d.ts +7 -0
  487. package/esm/components/shared/Combobox/Panel/ComboboxOption.js +15 -0
  488. package/esm/components/shared/Combobox/Panel/ComboboxOption.js.map +1 -0
  489. package/esm/components/shared/Combobox/Panel/ComboboxOption.spec.d.ts +1 -0
  490. package/esm/components/shared/Combobox/Panel/ComboboxOption.spec.js +33 -0
  491. package/esm/components/shared/Combobox/Panel/ComboboxOption.spec.js.map +1 -0
  492. package/esm/components/shared/Combobox/Panel/ComboboxOptionContainer.d.ts +8 -0
  493. package/esm/components/shared/Combobox/Panel/ComboboxOptionContainer.js +36 -0
  494. package/esm/components/shared/Combobox/Panel/ComboboxOptionContainer.js.map +1 -0
  495. package/esm/components/shared/Combobox/Panel/ComboboxOptionContainer.spec.d.ts +1 -0
  496. package/esm/components/shared/Combobox/Panel/ComboboxOptionContainer.spec.js +18 -0
  497. package/esm/components/shared/Combobox/Panel/ComboboxOptionContainer.spec.js.map +1 -0
  498. package/esm/components/shared/Combobox/Panel/ComboboxPanel.d.ts +5 -0
  499. package/esm/components/shared/Combobox/Panel/ComboboxPanel.js +30 -0
  500. package/esm/components/shared/Combobox/Panel/ComboboxPanel.js.map +1 -0
  501. package/esm/components/shared/Combobox/Panel/ComboboxPanel.spec.d.ts +1 -0
  502. package/esm/components/shared/Combobox/Panel/ComboboxPanel.spec.js +57 -0
  503. package/esm/components/shared/Combobox/Panel/ComboboxPanel.spec.js.map +1 -0
  504. package/esm/components/shared/Combobox/Panel/ComboboxPanelContainer.d.ts +8 -0
  505. package/esm/components/shared/Combobox/Panel/ComboboxPanelContainer.js +8 -0
  506. package/esm/components/shared/Combobox/Panel/ComboboxPanelContainer.js.map +1 -0
  507. package/esm/components/shared/Combobox/Panel/ComboboxPanelContainer.spec.d.ts +1 -0
  508. package/esm/components/shared/Combobox/Panel/ComboboxPanelContainer.spec.js +31 -0
  509. package/esm/components/shared/Combobox/Panel/ComboboxPanelContainer.spec.js.map +1 -0
  510. package/esm/components/shared/Combobox/Selection/ComboboxClearButton.d.ts +8 -0
  511. package/esm/components/shared/Combobox/Selection/ComboboxClearButton.js +28 -0
  512. package/esm/components/shared/Combobox/Selection/ComboboxClearButton.js.map +1 -0
  513. package/esm/components/shared/Combobox/Selection/ComboboxClearButton.spec.d.ts +1 -0
  514. package/esm/components/shared/Combobox/Selection/ComboboxClearButton.spec.js +53 -0
  515. package/esm/components/shared/Combobox/Selection/ComboboxClearButton.spec.js.map +1 -0
  516. package/esm/components/shared/Combobox/Selection/ComboboxInput.d.ts +11 -0
  517. package/esm/components/shared/Combobox/Selection/ComboboxInput.js +21 -0
  518. package/esm/components/shared/Combobox/Selection/ComboboxInput.js.map +1 -0
  519. package/esm/components/shared/Combobox/Selection/ComboboxLabelSelection.d.ts +10 -0
  520. package/esm/components/shared/Combobox/Selection/ComboboxLabelSelection.js +31 -0
  521. package/esm/components/shared/Combobox/Selection/ComboboxLabelSelection.js.map +1 -0
  522. package/esm/components/shared/Combobox/Selection/ComboboxLabelSelection.spec.d.ts +1 -0
  523. package/esm/components/shared/Combobox/Selection/ComboboxLabelSelection.spec.js +27 -0
  524. package/esm/components/shared/Combobox/Selection/ComboboxLabelSelection.spec.js.map +1 -0
  525. package/esm/components/shared/Combobox/Selection/ComboboxSelection.d.ts +6 -0
  526. package/esm/components/shared/Combobox/Selection/ComboboxSelection.js +18 -0
  527. package/esm/components/shared/Combobox/Selection/ComboboxSelection.js.map +1 -0
  528. package/esm/components/shared/Combobox/Selection/ComboboxSelection.spec.d.ts +1 -0
  529. package/esm/components/shared/Combobox/Selection/ComboboxSelection.spec.js +36 -0
  530. package/esm/components/shared/Combobox/Selection/ComboboxSelection.spec.js.map +1 -0
  531. package/esm/components/shared/Combobox/constants.d.ts +9 -0
  532. package/esm/components/shared/Combobox/constants.js +10 -0
  533. package/esm/components/shared/Combobox/constants.js.map +1 -0
  534. package/esm/components/shared/Combobox/index.d.ts +0 -0
  535. package/esm/components/shared/Combobox/index.js +2 -0
  536. package/esm/components/shared/Combobox/index.js.map +1 -0
  537. package/esm/components/shared/ComponentErrors/ComponentErrors.d.ts +14 -0
  538. package/esm/components/shared/ComponentErrors/ComponentErrors.js +24 -0
  539. package/esm/components/shared/ComponentErrors/ComponentErrors.js.map +1 -0
  540. package/esm/components/shared/ComponentErrors/ComponentErrors.spec.d.ts +1 -0
  541. package/esm/components/shared/ComponentErrors/ComponentErrors.spec.js +40 -0
  542. package/esm/components/shared/ComponentErrors/ComponentErrors.spec.js.map +1 -0
  543. package/esm/components/shared/ComponentWrapper.d.ts +25 -0
  544. package/esm/components/shared/ComponentWrapper.js +28 -0
  545. package/esm/components/shared/ComponentWrapper.js.map +1 -0
  546. package/esm/components/shared/Declarations/Declarations.d.ts +16 -0
  547. package/esm/components/shared/Declarations/Declarations.js +14 -0
  548. package/esm/components/shared/Declarations/Declarations.js.map +1 -0
  549. package/esm/components/shared/Declarations/Declarations.spec.d.ts +1 -0
  550. package/esm/components/shared/Declarations/Declarations.spec.js +66 -0
  551. package/esm/components/shared/Declarations/Declarations.spec.js.map +1 -0
  552. package/esm/components/shared/Fieldset/Fieldset.d.ts +9 -0
  553. package/esm/components/shared/Fieldset/Fieldset.js +28 -0
  554. package/esm/components/shared/Fieldset/Fieldset.js.map +1 -0
  555. package/esm/components/shared/Fieldset/Fieldset.spec.d.ts +1 -0
  556. package/esm/components/shared/Fieldset/Fieldset.spec.js +25 -0
  557. package/esm/components/shared/Fieldset/Fieldset.spec.js.map +1 -0
  558. package/esm/components/shared/HOC/slottableComponent.d.ts +101 -0
  559. package/esm/components/shared/HOC/slottableComponent.js +31 -0
  560. package/esm/components/shared/HOC/slottableComponent.js.map +1 -0
  561. package/esm/components/shared/Icons/checkbox-checked-icon.d.ts +2 -0
  562. package/esm/components/shared/Icons/checkbox-checked-icon.js +6 -0
  563. package/esm/components/shared/Icons/checkbox-checked-icon.js.map +1 -0
  564. package/esm/components/shared/Icons/checkbox-disabled-icon.d.ts +2 -0
  565. package/esm/components/shared/Icons/checkbox-disabled-icon.js +6 -0
  566. package/esm/components/shared/Icons/checkbox-disabled-icon.js.map +1 -0
  567. package/esm/components/shared/Icons/checkbox-unchecked-icon.d.ts +2 -0
  568. package/esm/components/shared/Icons/checkbox-unchecked-icon.js +6 -0
  569. package/esm/components/shared/Icons/checkbox-unchecked-icon.js.map +1 -0
  570. package/esm/components/shared/Icons/closed-icon.d.ts +2 -0
  571. package/esm/components/shared/Icons/closed-icon.js +6 -0
  572. package/esm/components/shared/Icons/closed-icon.js.map +1 -0
  573. package/esm/components/shared/Icons/cross-icon.d.ts +2 -0
  574. package/esm/components/shared/Icons/cross-icon.js +6 -0
  575. package/esm/components/shared/Icons/cross-icon.js.map +1 -0
  576. package/esm/components/shared/Icons/icon-props.d.ts +5 -0
  577. package/esm/components/shared/Icons/icon-props.js +2 -0
  578. package/esm/components/shared/Icons/icon-props.js.map +1 -0
  579. package/esm/components/shared/Icons/index.d.ts +10 -0
  580. package/esm/components/shared/Icons/index.js +11 -0
  581. package/esm/components/shared/Icons/index.js.map +1 -0
  582. package/esm/components/shared/Icons/load-icon.d.ts +2 -0
  583. package/esm/components/shared/Icons/load-icon.js +6 -0
  584. package/esm/components/shared/Icons/load-icon.js.map +1 -0
  585. package/esm/components/shared/Icons/lunatic-icon.d.ts +4 -0
  586. package/esm/components/shared/Icons/lunatic-icon.js +6 -0
  587. package/esm/components/shared/Icons/lunatic-icon.js.map +1 -0
  588. package/esm/components/shared/Icons/network-icon.d.ts +2 -0
  589. package/esm/components/shared/Icons/network-icon.js +6 -0
  590. package/esm/components/shared/Icons/network-icon.js.map +1 -0
  591. package/esm/components/shared/Icons/on-drag-icon.d.ts +2 -0
  592. package/esm/components/shared/Icons/on-drag-icon.js +6 -0
  593. package/esm/components/shared/Icons/on-drag-icon.js.map +1 -0
  594. package/esm/components/shared/Icons/opened-icon.d.ts +2 -0
  595. package/esm/components/shared/Icons/opened-icon.js +6 -0
  596. package/esm/components/shared/Icons/opened-icon.js.map +1 -0
  597. package/esm/components/shared/Icons/radio-checked-icon.d.ts +3 -0
  598. package/esm/components/shared/Icons/radio-checked-icon.js +7 -0
  599. package/esm/components/shared/Icons/radio-checked-icon.js.map +1 -0
  600. package/esm/components/shared/Icons/radio-unchecked-icon.d.ts +2 -0
  601. package/esm/components/shared/Icons/radio-unchecked-icon.js +6 -0
  602. package/esm/components/shared/Icons/radio-unchecked-icon.js.map +1 -0
  603. package/esm/components/shared/Label/Label.d.ts +10 -0
  604. package/esm/components/shared/Label/Label.js +15 -0
  605. package/esm/components/shared/Label/Label.js.map +1 -0
  606. package/esm/components/shared/Label/Label.spec.d.ts +1 -0
  607. package/esm/components/shared/Label/Label.spec.js +19 -0
  608. package/esm/components/shared/Label/Label.spec.js.map +1 -0
  609. package/esm/components/shared/LabelDescription.d.ts +7 -0
  610. package/esm/components/shared/LabelDescription.js +11 -0
  611. package/esm/components/shared/LabelDescription.js.map +1 -0
  612. package/esm/components/shared/MDLabel/MDLabel.d.ts +5 -0
  613. package/esm/components/shared/MDLabel/MDLabel.js +20 -0
  614. package/esm/components/shared/MDLabel/MDLabel.js.map +1 -0
  615. package/esm/components/shared/MDLabel/MDLabel.spec.d.ts +1 -0
  616. package/esm/components/shared/MDLabel/MDLabel.spec.js +107 -0
  617. package/esm/components/shared/MDLabel/MDLabel.spec.js.map +1 -0
  618. package/esm/components/shared/MDLabel/MarkdownLink.d.ts +7 -0
  619. package/esm/components/shared/MDLabel/MarkdownLink.js +14 -0
  620. package/esm/components/shared/MDLabel/MarkdownLink.js.map +1 -0
  621. package/esm/components/shared/MDLabel/RouterLink.d.ts +6 -0
  622. package/esm/components/shared/MDLabel/RouterLink.js +7 -0
  623. package/esm/components/shared/MDLabel/RouterLink.js.map +1 -0
  624. package/esm/components/shared/Missing/Missing.d.ts +14 -0
  625. package/esm/components/shared/Missing/Missing.js +52 -0
  626. package/esm/components/shared/Missing/Missing.js.map +1 -0
  627. package/esm/components/shared/Missing/Missing.spec.d.ts +1 -0
  628. package/esm/components/shared/Missing/Missing.spec.js +45 -0
  629. package/esm/components/shared/Missing/Missing.spec.js.map +1 -0
  630. package/esm/components/shared/ModalControls/ModalControls.d.ts +10 -0
  631. package/esm/components/shared/ModalControls/ModalControls.js +29 -0
  632. package/esm/components/shared/ModalControls/ModalControls.js.map +1 -0
  633. package/esm/components/shared/ModalControls/ModalControls.spec.d.ts +1 -0
  634. package/esm/components/shared/ModalControls/ModalControls.spec.js +61 -0
  635. package/esm/components/shared/ModalControls/ModalControls.spec.js.map +1 -0
  636. package/esm/components/shared/Notification.d.ts +8 -0
  637. package/esm/components/shared/Notification.js +8 -0
  638. package/esm/components/shared/Notification.js.map +1 -0
  639. package/esm/components/shared/Radio/RadioGroup.d.ts +7 -0
  640. package/esm/components/shared/Radio/RadioGroup.js +23 -0
  641. package/esm/components/shared/Radio/RadioGroup.js.map +1 -0
  642. package/esm/components/shared/Radio/RadioOption.d.ts +17 -0
  643. package/esm/components/shared/Radio/RadioOption.js +38 -0
  644. package/esm/components/shared/Radio/RadioOption.js.map +1 -0
  645. package/esm/components/shared/Radio/RadioOption.spec.d.ts +1 -0
  646. package/esm/components/shared/Radio/RadioOption.spec.js +46 -0
  647. package/esm/components/shared/Radio/RadioOption.spec.js.map +1 -0
  648. package/esm/components/shared/Table/Table.d.ts +8 -0
  649. package/esm/components/shared/Table/Table.js +13 -0
  650. package/esm/components/shared/Table/Table.js.map +1 -0
  651. package/esm/components/shared/Table/Table.spec.d.ts +1 -0
  652. package/esm/components/shared/Table/Table.spec.js +15 -0
  653. package/esm/components/shared/Table/Table.spec.js.map +1 -0
  654. package/esm/components/shared/Table/TableHeader.d.ts +2 -0
  655. package/esm/components/shared/Table/TableHeader.js +14 -0
  656. package/esm/components/shared/Table/TableHeader.js.map +1 -0
  657. package/esm/components/shared/Table/Tbody.d.ts +6 -0
  658. package/esm/components/shared/Table/Tbody.js +8 -0
  659. package/esm/components/shared/Table/Tbody.js.map +1 -0
  660. package/esm/components/shared/Table/Tbody.spec.d.ts +1 -0
  661. package/esm/components/shared/Table/Tbody.spec.js +22 -0
  662. package/esm/components/shared/Table/Tbody.spec.js.map +1 -0
  663. package/esm/components/shared/Table/Td.d.ts +11 -0
  664. package/esm/components/shared/Table/Td.js +8 -0
  665. package/esm/components/shared/Table/Td.js.map +1 -0
  666. package/esm/components/shared/Table/Td.spec.d.ts +1 -0
  667. package/esm/components/shared/Table/Td.spec.js +21 -0
  668. package/esm/components/shared/Table/Td.spec.js.map +1 -0
  669. package/esm/components/shared/Table/Th.d.ts +10 -0
  670. package/esm/components/shared/Table/Th.js +8 -0
  671. package/esm/components/shared/Table/Th.js.map +1 -0
  672. package/esm/components/shared/Table/Th.spec.d.ts +1 -0
  673. package/esm/components/shared/Table/Th.spec.js +25 -0
  674. package/esm/components/shared/Table/Th.spec.js.map +1 -0
  675. package/esm/components/shared/Table/Thead.d.ts +6 -0
  676. package/esm/components/shared/Table/Thead.js +8 -0
  677. package/esm/components/shared/Table/Thead.js.map +1 -0
  678. package/esm/components/shared/Table/Thead.spec.d.ts +1 -0
  679. package/esm/components/shared/Table/Thead.spec.js +12 -0
  680. package/esm/components/shared/Table/Thead.spec.js.map +1 -0
  681. package/esm/components/shared/Table/Tr.d.ts +7 -0
  682. package/esm/components/shared/Table/Tr.js +8 -0
  683. package/esm/components/shared/Table/Tr.js.map +1 -0
  684. package/esm/components/shared/Table/Tr.spec.d.ts +1 -0
  685. package/esm/components/shared/Table/Tr.spec.js +19 -0
  686. package/esm/components/shared/Table/Tr.spec.js.map +1 -0
  687. package/esm/components/shared/Table/index.d.ts +7 -0
  688. package/esm/components/shared/Table/index.js +8 -0
  689. package/esm/components/shared/Table/index.js.map +1 -0
  690. package/esm/components/type.d.ts +305 -0
  691. package/esm/components/type.js +2 -0
  692. package/esm/components/type.js.map +1 -0
  693. package/esm/constants/component-types.d.ts +1 -0
  694. package/esm/constants/component-types.js +2 -0
  695. package/esm/constants/component-types.js.map +1 -0
  696. package/esm/constants/declarations.d.ts +9 -0
  697. package/esm/constants/declarations.js +12 -0
  698. package/esm/constants/declarations.js.map +1 -0
  699. package/esm/constants/event-types.d.ts +10 -0
  700. package/esm/constants/event-types.js +13 -0
  701. package/esm/constants/event-types.js.map +1 -0
  702. package/esm/constants/index.d.ts +5 -0
  703. package/esm/constants/index.js +6 -0
  704. package/esm/constants/index.js.map +1 -0
  705. package/esm/constants/indexedDBStore.d.ts +21 -0
  706. package/esm/constants/indexedDBStore.js +19 -0
  707. package/esm/constants/indexedDBStore.js.map +1 -0
  708. package/esm/constants/supported-preferences.d.ts +1 -0
  709. package/esm/constants/supported-preferences.js +10 -0
  710. package/esm/constants/supported-preferences.js.map +1 -0
  711. package/esm/constants/value-types.d.ts +5 -0
  712. package/esm/constants/value-types.js +6 -0
  713. package/esm/constants/value-types.js.map +1 -0
  714. package/esm/constants/variable-types.d.ts +2 -0
  715. package/esm/constants/variable-types.js +5 -0
  716. package/esm/constants/variable-types.js.map +1 -0
  717. package/esm/hooks/use-auto-focus.d.ts +6 -0
  718. package/esm/hooks/use-auto-focus.js +19 -0
  719. package/esm/hooks/use-auto-focus.js.map +1 -0
  720. package/esm/hooks/use-track-changes.d.ts +11 -0
  721. package/esm/hooks/use-track-changes.js +41 -0
  722. package/esm/hooks/use-track-changes.js.map +1 -0
  723. package/esm/hooks/use-why-render.d.ts +4 -0
  724. package/esm/hooks/use-why-render.js +14 -0
  725. package/esm/hooks/use-why-render.js.map +1 -0
  726. package/esm/hooks/useDebounce.d.ts +4 -0
  727. package/esm/hooks/useDebounce.js +24 -0
  728. package/esm/hooks/useDebounce.js.map +1 -0
  729. package/esm/hooks/useDocumentEvent.d.ts +2 -0
  730. package/esm/hooks/useDocumentEvent.js +18 -0
  731. package/esm/hooks/useDocumentEvent.js.map +1 -0
  732. package/esm/hooks/useKeyboardKey.d.ts +4 -0
  733. package/esm/hooks/useKeyboardKey.js +25 -0
  734. package/esm/hooks/useKeyboardKey.js.map +1 -0
  735. package/esm/hooks/useListKeyboardHandler.d.ts +11 -0
  736. package/esm/hooks/useListKeyboardHandler.js +28 -0
  737. package/esm/hooks/useListKeyboardHandler.js.map +1 -0
  738. package/esm/hooks/useRefSync.d.ts +4 -0
  739. package/esm/hooks/useRefSync.js +10 -0
  740. package/esm/hooks/useRefSync.js.map +1 -0
  741. package/esm/i18n/build-dictionary.d.ts +24 -0
  742. package/esm/i18n/build-dictionary.js +37 -0
  743. package/esm/i18n/build-dictionary.js.map +1 -0
  744. package/esm/i18n/dictionary.d.ts +57 -0
  745. package/esm/i18n/dictionary.js +27 -0
  746. package/esm/i18n/dictionary.js.map +1 -0
  747. package/esm/i18n/index.d.ts +7 -0
  748. package/esm/i18n/index.js +13 -0
  749. package/esm/i18n/index.js.map +1 -0
  750. package/esm/i18n/inputNumberProps.d.ts +13 -0
  751. package/esm/i18n/inputNumberProps.js +7 -0
  752. package/esm/i18n/inputNumberProps.js.map +1 -0
  753. package/esm/index.d.ts +14 -0
  754. package/esm/index.js +12 -0
  755. package/esm/index.js.map +1 -0
  756. package/esm/tests/setup.d.ts +1 -0
  757. package/esm/tests/setup.js +18 -0
  758. package/esm/tests/setup.js.map +1 -0
  759. package/esm/tests/utils/lunatic.d.ts +19 -0
  760. package/esm/tests/utils/lunatic.js +31 -0
  761. package/esm/tests/utils/lunatic.js.map +1 -0
  762. package/esm/tests/utils/timer.d.ts +1 -0
  763. package/esm/tests/utils/timer.js +4 -0
  764. package/esm/tests/utils/timer.js.map +1 -0
  765. package/esm/tsconfig-esm.tsbuildinfo +1 -0
  766. package/esm/type.source.d.ts +408 -0
  767. package/esm/type.source.js +7 -0
  768. package/esm/type.source.js.map +1 -0
  769. package/esm/type.utils.d.ts +5 -0
  770. package/esm/type.utils.js +2 -0
  771. package/esm/type.utils.js.map +1 -0
  772. package/esm/use-lunatic/actions.d.ts +50 -0
  773. package/esm/use-lunatic/actions.js +26 -0
  774. package/esm/use-lunatic/actions.js.map +1 -0
  775. package/esm/use-lunatic/commons/check-loops.d.ts +30 -0
  776. package/esm/use-lunatic/commons/check-loops.js +63 -0
  777. package/esm/use-lunatic/commons/check-loops.js.map +1 -0
  778. package/esm/use-lunatic/commons/check-pager.d.ts +5 -0
  779. package/esm/use-lunatic/commons/check-pager.js +17 -0
  780. package/esm/use-lunatic/commons/check-pager.js.map +1 -0
  781. package/esm/use-lunatic/commons/compile-controls.d.ts +9 -0
  782. package/esm/use-lunatic/commons/compile-controls.js +156 -0
  783. package/esm/use-lunatic/commons/compile-controls.js.map +1 -0
  784. package/esm/use-lunatic/commons/component.d.ts +22 -0
  785. package/esm/use-lunatic/commons/component.js +22 -0
  786. package/esm/use-lunatic/commons/component.js.map +1 -0
  787. package/esm/use-lunatic/commons/create-map-pages.d.ts +6 -0
  788. package/esm/use-lunatic/commons/create-map-pages.js +58 -0
  789. package/esm/use-lunatic/commons/create-map-pages.js.map +1 -0
  790. package/esm/use-lunatic/commons/execute-condition-filter.d.ts +3 -0
  791. package/esm/use-lunatic/commons/execute-condition-filter.js +11 -0
  792. package/esm/use-lunatic/commons/execute-condition-filter.js.map +1 -0
  793. package/esm/use-lunatic/commons/fill-components/fill-component-expressions.d.ts +34 -0
  794. package/esm/use-lunatic/commons/fill-components/fill-component-expressions.js +149 -0
  795. package/esm/use-lunatic/commons/fill-components/fill-component-expressions.js.map +1 -0
  796. package/esm/use-lunatic/commons/fill-components/fill-component-expressions.spec.d.ts +1 -0
  797. package/esm/use-lunatic/commons/fill-components/fill-component-expressions.spec.js +83 -0
  798. package/esm/use-lunatic/commons/fill-components/fill-component-expressions.spec.js.map +1 -0
  799. package/esm/use-lunatic/commons/fill-components/fill-components.d.ts +25 -0
  800. package/esm/use-lunatic/commons/fill-components/fill-components.js +41 -0
  801. package/esm/use-lunatic/commons/fill-components/fill-components.js.map +1 -0
  802. package/esm/use-lunatic/commons/get-compatible-vtl-expression.d.ts +7 -0
  803. package/esm/use-lunatic/commons/get-compatible-vtl-expression.js +19 -0
  804. package/esm/use-lunatic/commons/get-compatible-vtl-expression.js.map +1 -0
  805. package/esm/use-lunatic/commons/get-components-from-state.d.ts +5 -0
  806. package/esm/use-lunatic/commons/get-components-from-state.js +22 -0
  807. package/esm/use-lunatic/commons/get-components-from-state.js.map +1 -0
  808. package/esm/use-lunatic/commons/index.d.ts +6 -0
  809. package/esm/use-lunatic/commons/index.js +7 -0
  810. package/esm/use-lunatic/commons/index.js.map +1 -0
  811. package/esm/use-lunatic/commons/is-First-last-page.d.ts +6 -0
  812. package/esm/use-lunatic/commons/is-First-last-page.js +8 -0
  813. package/esm/use-lunatic/commons/is-First-last-page.js.map +1 -0
  814. package/esm/use-lunatic/commons/is-paginated-loop.d.ts +6 -0
  815. package/esm/use-lunatic/commons/is-paginated-loop.js +5 -0
  816. package/esm/use-lunatic/commons/is-paginated-loop.js.map +1 -0
  817. package/esm/use-lunatic/commons/is-roundabout.d.ts +2 -0
  818. package/esm/use-lunatic/commons/is-roundabout.js +5 -0
  819. package/esm/use-lunatic/commons/is-roundabout.js.map +1 -0
  820. package/esm/use-lunatic/commons/page-navigation.d.ts +7 -0
  821. package/esm/use-lunatic/commons/page-navigation.js +95 -0
  822. package/esm/use-lunatic/commons/page-navigation.js.map +1 -0
  823. package/esm/use-lunatic/commons/page-navigation.spec.d.ts +1 -0
  824. package/esm/use-lunatic/commons/page-navigation.spec.js +136 -0
  825. package/esm/use-lunatic/commons/page-navigation.spec.js.map +1 -0
  826. package/esm/use-lunatic/commons/page-tag.d.ts +23 -0
  827. package/esm/use-lunatic/commons/page-tag.js +56 -0
  828. package/esm/use-lunatic/commons/page-tag.js.map +1 -0
  829. package/esm/use-lunatic/commons/page-tag.spec.d.ts +1 -0
  830. package/esm/use-lunatic/commons/page-tag.spec.js +38 -0
  831. package/esm/use-lunatic/commons/page-tag.spec.js.map +1 -0
  832. package/esm/use-lunatic/commons/page.d.ts +11 -0
  833. package/esm/use-lunatic/commons/page.js +35 -0
  834. package/esm/use-lunatic/commons/page.js.map +1 -0
  835. package/esm/use-lunatic/commons/variables/behaviours/cleaning-behaviour.d.ts +7 -0
  836. package/esm/use-lunatic/commons/variables/behaviours/cleaning-behaviour.js +55 -0
  837. package/esm/use-lunatic/commons/variables/behaviours/cleaning-behaviour.js.map +1 -0
  838. package/esm/use-lunatic/commons/variables/behaviours/missing-behaviour.d.ts +7 -0
  839. package/esm/use-lunatic/commons/variables/behaviours/missing-behaviour.js +26 -0
  840. package/esm/use-lunatic/commons/variables/behaviours/missing-behaviour.js.map +1 -0
  841. package/esm/use-lunatic/commons/variables/behaviours/resizing-behaviour.d.ts +7 -0
  842. package/esm/use-lunatic/commons/variables/behaviours/resizing-behaviour.js +62 -0
  843. package/esm/use-lunatic/commons/variables/behaviours/resizing-behaviour.js.map +1 -0
  844. package/esm/use-lunatic/commons/variables/errors.d.ts +19 -0
  845. package/esm/use-lunatic/commons/variables/errors.js +28 -0
  846. package/esm/use-lunatic/commons/variables/errors.js.map +1 -0
  847. package/esm/use-lunatic/commons/variables/get-questionnaire-data.d.ts +3 -0
  848. package/esm/use-lunatic/commons/variables/get-questionnaire-data.js +53 -0
  849. package/esm/use-lunatic/commons/variables/get-questionnaire-data.js.map +1 -0
  850. package/esm/use-lunatic/commons/variables/lunatic-variables-store.d.ts +90 -0
  851. package/esm/use-lunatic/commons/variables/lunatic-variables-store.js +349 -0
  852. package/esm/use-lunatic/commons/variables/lunatic-variables-store.js.map +1 -0
  853. package/esm/use-lunatic/commons/variables/lunatic-variables-store.spec.d.ts +1 -0
  854. package/esm/use-lunatic/commons/variables/lunatic-variables-store.spec.js +438 -0
  855. package/esm/use-lunatic/commons/variables/lunatic-variables-store.spec.js.map +1 -0
  856. package/esm/use-lunatic/hooks/use-loop-variables.d.ts +5 -0
  857. package/esm/use-lunatic/hooks/use-loop-variables.js +18 -0
  858. package/esm/use-lunatic/hooks/use-loop-variables.js.map +1 -0
  859. package/esm/use-lunatic/hooks/use-page-has-response.d.ts +6 -0
  860. package/esm/use-lunatic/hooks/use-page-has-response.js +89 -0
  861. package/esm/use-lunatic/hooks/use-page-has-response.js.map +1 -0
  862. package/esm/use-lunatic/hooks/useOverview.d.ts +16 -0
  863. package/esm/use-lunatic/hooks/useOverview.js +92 -0
  864. package/esm/use-lunatic/hooks/useOverview.js.map +1 -0
  865. package/esm/use-lunatic/hooks/useWarnDepChange.d.ts +6 -0
  866. package/esm/use-lunatic/hooks/useWarnDepChange.js +17 -0
  867. package/esm/use-lunatic/hooks/useWarnDepChange.js.map +1 -0
  868. package/esm/use-lunatic/logger/ConsoleLogger.d.ts +5 -0
  869. package/esm/use-lunatic/logger/ConsoleLogger.js +12 -0
  870. package/esm/use-lunatic/logger/ConsoleLogger.js.map +1 -0
  871. package/esm/use-lunatic/logger/type.d.ts +9 -0
  872. package/esm/use-lunatic/logger/type.js +2 -0
  873. package/esm/use-lunatic/logger/type.js.map +1 -0
  874. package/esm/use-lunatic/lunatic-context.d.ts +28 -0
  875. package/esm/use-lunatic/lunatic-context.js +44 -0
  876. package/esm/use-lunatic/lunatic-context.js.map +1 -0
  877. package/esm/use-lunatic/props/getComponentTypeProps.d.ts +291 -0
  878. package/esm/use-lunatic/props/getComponentTypeProps.js +165 -0
  879. package/esm/use-lunatic/props/getComponentTypeProps.js.map +1 -0
  880. package/esm/use-lunatic/props/propIterations.d.ts +7 -0
  881. package/esm/use-lunatic/props/propIterations.js +26 -0
  882. package/esm/use-lunatic/props/propIterations.js.map +1 -0
  883. package/esm/use-lunatic/props/propMissingResponse.d.ts +9 -0
  884. package/esm/use-lunatic/props/propMissingResponse.js +13 -0
  885. package/esm/use-lunatic/props/propMissingResponse.js.map +1 -0
  886. package/esm/use-lunatic/props/propOptions.d.ts +37 -0
  887. package/esm/use-lunatic/props/propOptions.js +75 -0
  888. package/esm/use-lunatic/props/propOptions.js.map +1 -0
  889. package/esm/use-lunatic/props/propOptions.spec.d.ts +1 -0
  890. package/esm/use-lunatic/props/propOptions.spec.js +57 -0
  891. package/esm/use-lunatic/props/propOptions.spec.js.map +1 -0
  892. package/esm/use-lunatic/props/propValue.d.ts +6 -0
  893. package/esm/use-lunatic/props/propValue.js +29 -0
  894. package/esm/use-lunatic/props/propValue.js.map +1 -0
  895. package/esm/use-lunatic/props/propValue.spec.d.ts +1 -0
  896. package/esm/use-lunatic/props/propValue.spec.js +54 -0
  897. package/esm/use-lunatic/props/propValue.spec.js.map +1 -0
  898. package/esm/use-lunatic/reducer/commons/auto-explore-loop.d.ts +5 -0
  899. package/esm/use-lunatic/reducer/commons/auto-explore-loop.js +52 -0
  900. package/esm/use-lunatic/reducer/commons/auto-explore-loop.js.map +1 -0
  901. package/esm/use-lunatic/reducer/commons/index.d.ts +2 -0
  902. package/esm/use-lunatic/reducer/commons/index.js +3 -0
  903. package/esm/use-lunatic/reducer/commons/index.js.map +1 -0
  904. package/esm/use-lunatic/reducer/commons/resize-array-variable.d.ts +5 -0
  905. package/esm/use-lunatic/reducer/commons/resize-array-variable.js +21 -0
  906. package/esm/use-lunatic/reducer/commons/resize-array-variable.js.map +1 -0
  907. package/esm/use-lunatic/reducer/commons/validate-condition-filter.d.ts +6 -0
  908. package/esm/use-lunatic/reducer/commons/validate-condition-filter.js +12 -0
  909. package/esm/use-lunatic/reducer/commons/validate-condition-filter.js.map +1 -0
  910. package/esm/use-lunatic/reducer/controls/check-base-control.d.ts +2 -0
  911. package/esm/use-lunatic/reducer/controls/check-base-control.js +35 -0
  912. package/esm/use-lunatic/reducer/controls/check-base-control.js.map +1 -0
  913. package/esm/use-lunatic/reducer/controls/check-roundabout-control.d.ts +9 -0
  914. package/esm/use-lunatic/reducer/controls/check-roundabout-control.js +22 -0
  915. package/esm/use-lunatic/reducer/controls/check-roundabout-control.js.map +1 -0
  916. package/esm/use-lunatic/reducer/overview/overviewOnInit.d.ts +6 -0
  917. package/esm/use-lunatic/reducer/overview/overviewOnInit.js +50 -0
  918. package/esm/use-lunatic/reducer/overview/overviewOnInit.js.map +1 -0
  919. package/esm/use-lunatic/reducer/reduce-go-next-page.d.ts +2 -0
  920. package/esm/use-lunatic/reducer/reduce-go-next-page.js +62 -0
  921. package/esm/use-lunatic/reducer/reduce-go-next-page.js.map +1 -0
  922. package/esm/use-lunatic/reducer/reduce-go-previous-page.d.ts +2 -0
  923. package/esm/use-lunatic/reducer/reduce-go-previous-page.js +31 -0
  924. package/esm/use-lunatic/reducer/reduce-go-previous-page.js.map +1 -0
  925. package/esm/use-lunatic/reducer/reduce-go-to-page.d.ts +3 -0
  926. package/esm/use-lunatic/reducer/reduce-go-to-page.js +55 -0
  927. package/esm/use-lunatic/reducer/reduce-go-to-page.js.map +1 -0
  928. package/esm/use-lunatic/reducer/reduce-handle-changes.d.ts +6 -0
  929. package/esm/use-lunatic/reducer/reduce-handle-changes.js +26 -0
  930. package/esm/use-lunatic/reducer/reduce-handle-changes.js.map +1 -0
  931. package/esm/use-lunatic/reducer/reducer.d.ts +3 -0
  932. package/esm/use-lunatic/reducer/reducer.js +20 -0
  933. package/esm/use-lunatic/reducer/reducer.js.map +1 -0
  934. package/esm/use-lunatic/reducer/reducerInitializer.d.ts +14 -0
  935. package/esm/use-lunatic/reducer/reducerInitializer.js +130 -0
  936. package/esm/use-lunatic/reducer/reducerInitializer.js.map +1 -0
  937. package/esm/use-lunatic/replace-component-sequence.d.ts +36 -0
  938. package/esm/use-lunatic/replace-component-sequence.js +19 -0
  939. package/esm/use-lunatic/replace-component-sequence.js.map +1 -0
  940. package/esm/use-lunatic/type.d.ts +166 -0
  941. package/esm/use-lunatic/type.js +2 -0
  942. package/esm/use-lunatic/type.js.map +1 -0
  943. package/esm/use-lunatic/use-lunatic.d.ts +37 -0
  944. package/esm/use-lunatic/use-lunatic.js +140 -0
  945. package/esm/use-lunatic/use-lunatic.js.map +1 -0
  946. package/esm/utils/array.d.ts +32 -0
  947. package/esm/utils/array.js +107 -0
  948. package/esm/utils/array.js.map +1 -0
  949. package/esm/utils/array.spec.d.ts +1 -0
  950. package/esm/utils/array.spec.js +42 -0
  951. package/esm/utils/array.spec.js.map +1 -0
  952. package/esm/utils/constants/alphabet.d.ts +1 -0
  953. package/esm/utils/constants/alphabet.js +2 -0
  954. package/esm/utils/constants/alphabet.js.map +1 -0
  955. package/esm/utils/constants/features.d.ts +4 -0
  956. package/esm/utils/constants/features.js +5 -0
  957. package/esm/utils/constants/features.js.map +1 -0
  958. package/esm/utils/constants/index.d.ts +5 -0
  959. package/esm/utils/constants/index.js +6 -0
  960. package/esm/utils/constants/index.js.map +1 -0
  961. package/esm/utils/constants/links.d.ts +2 -0
  962. package/esm/utils/constants/links.js +3 -0
  963. package/esm/utils/constants/links.js.map +1 -0
  964. package/esm/utils/constants/missing.d.ts +2 -0
  965. package/esm/utils/constants/missing.js +3 -0
  966. package/esm/utils/constants/missing.js.map +1 -0
  967. package/esm/utils/constants/variable-status.d.ts +5 -0
  968. package/esm/utils/constants/variable-status.js +6 -0
  969. package/esm/utils/constants/variable-status.js.map +1 -0
  970. package/esm/utils/constants/variable-types.d.ts +1 -0
  971. package/esm/utils/constants/variable-types.js +2 -0
  972. package/esm/utils/constants/variable-types.js.map +1 -0
  973. package/esm/utils/dom.d.ts +14 -0
  974. package/esm/utils/dom.js +23 -0
  975. package/esm/utils/dom.js.map +1 -0
  976. package/esm/utils/env.d.ts +1 -0
  977. package/esm/utils/env.js +13 -0
  978. package/esm/utils/env.js.map +1 -0
  979. package/esm/utils/function.d.ts +5 -0
  980. package/esm/utils/function.js +23 -0
  981. package/esm/utils/function.js.map +1 -0
  982. package/esm/utils/is-element.d.ts +3 -0
  983. package/esm/utils/is-element.js +6 -0
  984. package/esm/utils/is-element.js.map +1 -0
  985. package/esm/utils/is-object.d.ts +4 -0
  986. package/esm/utils/is-object.js +7 -0
  987. package/esm/utils/is-object.js.map +1 -0
  988. package/esm/utils/logger.d.ts +6 -0
  989. package/esm/utils/logger.js +15 -0
  990. package/esm/utils/logger.js.map +1 -0
  991. package/esm/utils/number.d.ts +9 -0
  992. package/esm/utils/number.js +32 -0
  993. package/esm/utils/number.js.map +1 -0
  994. package/esm/utils/number.spec.d.ts +1 -0
  995. package/esm/utils/number.spec.js +10 -0
  996. package/esm/utils/number.spec.js.map +1 -0
  997. package/esm/utils/object.d.ts +6 -0
  998. package/esm/utils/object.js +27 -0
  999. package/esm/utils/object.js.map +1 -0
  1000. package/esm/utils/search/SearchInterface.d.ts +12 -0
  1001. package/esm/utils/search/SearchInterface.js +2 -0
  1002. package/esm/utils/search/SearchInterface.js.map +1 -0
  1003. package/esm/utils/search/SearchMinisearch.d.ts +11 -0
  1004. package/esm/utils/search/SearchMinisearch.js +39 -0
  1005. package/esm/utils/search/SearchMinisearch.js.map +1 -0
  1006. package/esm/utils/search/SuggestersDatabase.d.ts +15 -0
  1007. package/esm/utils/search/SuggestersDatabase.js +38 -0
  1008. package/esm/utils/search/SuggestersDatabase.js.map +1 -0
  1009. package/esm/utils/search/melauto.d.ts +15 -0
  1010. package/esm/utils/search/melauto.js +44 -0
  1011. package/esm/utils/search/melauto.js.map +1 -0
  1012. package/esm/utils/search/tokenizer.d.ts +14 -0
  1013. package/esm/utils/search/tokenizer.js +57 -0
  1014. package/esm/utils/search/tokenizer.js.map +1 -0
  1015. package/esm/utils/to-number.d.ts +4 -0
  1016. package/esm/utils/to-number.js +13 -0
  1017. package/esm/utils/to-number.js.map +1 -0
  1018. package/esm/utils/variables.d.ts +5 -0
  1019. package/esm/utils/variables.js +21 -0
  1020. package/esm/utils/variables.js.map +1 -0
  1021. package/esm/utils/variables.spec.d.ts +1 -0
  1022. package/esm/utils/variables.spec.js +83 -0
  1023. package/esm/utils/variables.spec.js.map +1 -0
  1024. package/esm/utils/vtl.d.ts +14 -0
  1025. package/esm/utils/vtl.js +93 -0
  1026. package/esm/utils/vtl.js.map +1 -0
  1027. package/hooks/use-auto-focus.js +6 -3
  1028. package/hooks/use-auto-focus.js.map +1 -1
  1029. package/hooks/use-track-changes.js +12 -9
  1030. package/hooks/use-track-changes.js.map +1 -1
  1031. package/hooks/use-why-render.js +6 -3
  1032. package/hooks/use-why-render.js.map +1 -1
  1033. package/hooks/useDebounce.js +20 -14
  1034. package/hooks/useDebounce.js.map +1 -1
  1035. package/hooks/useDocumentEvent.js +8 -6
  1036. package/hooks/useDocumentEvent.js.map +1 -1
  1037. package/hooks/useKeyboardKey.js +9 -6
  1038. package/hooks/useKeyboardKey.js.map +1 -1
  1039. package/hooks/useListKeyboardHandler.js +6 -3
  1040. package/hooks/useListKeyboardHandler.js.map +1 -1
  1041. package/hooks/useRefSync.js +6 -3
  1042. package/hooks/useRefSync.js.map +1 -1
  1043. package/i18n/build-dictionary.js +9 -6
  1044. package/i18n/build-dictionary.js.map +1 -1
  1045. package/i18n/dictionary.js +3 -1
  1046. package/i18n/dictionary.js.map +1 -1
  1047. package/i18n/index.js +40 -11
  1048. package/i18n/index.js.map +1 -1
  1049. package/i18n/inputNumberProps.js +5 -2
  1050. package/i18n/inputNumberProps.js.map +1 -1
  1051. package/index.js +18 -6
  1052. package/index.js.map +1 -1
  1053. package/package.json +1187 -9
  1054. package/src/components/Accordion/Accordion.tsx +18 -0
  1055. package/src/components/CheckboxBoolean/CheckboxBoolean.spec.tsx +84 -0
  1056. package/src/components/CheckboxBoolean/CheckboxBoolean.tsx +81 -0
  1057. package/src/components/CheckboxGroup/CheckboxGroup.tsx +31 -0
  1058. package/src/components/CheckboxGroup/CustomCheckboxGroup.spec.tsx +51 -0
  1059. package/src/components/CheckboxGroup/CustomCheckboxGroup.tsx +84 -0
  1060. package/src/components/CheckboxOne/CheckboxOne.spec.tsx +44 -0
  1061. package/src/components/CheckboxOne/CheckboxOne.tsx +39 -0
  1062. package/src/components/Datepicker/Datepicker.spec.tsx +105 -0
  1063. package/src/components/Datepicker/Datepicker.tsx +165 -0
  1064. package/src/components/Datepicker/DatepickerField.tsx +58 -0
  1065. package/src/components/Datepicker/__snapshots__/Datepicker.spec.tsx.snap +166 -0
  1066. package/src/components/Dropdown/Dropdown.spec.tsx +42 -0
  1067. package/src/components/Dropdown/Dropdown.tsx +69 -0
  1068. package/src/components/Dropdown/__snapshots__/Dropdown.spec.tsx.snap +73 -0
  1069. package/src/components/Dropdown/renderer/SimpleLabelRenderer.tsx +26 -0
  1070. package/src/components/Dropdown/renderer/SimpleOptionRenderer.tsx +26 -0
  1071. package/src/components/Duration/Duration.tsx +97 -0
  1072. package/src/components/Duration/durationUtils.ts +39 -0
  1073. package/src/components/Duration/formatDuration.spec.ts +15 -0
  1074. package/src/components/Duration/formatDuration.ts +19 -0
  1075. package/src/components/Duration/getDurationFromValue.ts +43 -0
  1076. package/src/components/FilterDescription/FilterDescription.spec.tsx +20 -0
  1077. package/src/components/FilterDescription/FilterDescription.tsx +16 -0
  1078. package/src/components/Input/Input.spec.tsx +76 -0
  1079. package/src/components/Input/Input.tsx +77 -0
  1080. package/src/components/Input/__snapshots__/Input.spec.tsx.snap +36 -0
  1081. package/src/components/InputNumber/InputNumber.spec.tsx +115 -0
  1082. package/src/components/InputNumber/InputNumber.tsx +83 -0
  1083. package/src/components/InputNumber/InputNumberThousand.tsx +73 -0
  1084. package/src/components/InputNumber/__snapshots__/InputNumber.spec.tsx.snap +40 -0
  1085. package/src/components/Loop/Loop.tsx +137 -0
  1086. package/src/components/Loop/constant.ts +9 -0
  1087. package/src/components/LunaticComponents.tsx +187 -0
  1088. package/src/components/PairwiseLinks/PairwiseLinks.tsx +93 -0
  1089. package/src/components/Question/Question.tsx +45 -0
  1090. package/src/components/Radio/Radio.tsx +41 -0
  1091. package/src/components/RosterForLoop/RosterForLoop.spec.tsx +42 -0
  1092. package/src/components/RosterForLoop/RosterForLoop.tsx +123 -0
  1093. package/src/components/RosterForLoop/__snapshots__/RosterForLoop.spec.tsx.snap +90 -0
  1094. package/src/components/Roundabout/CustomRoundabout.tsx +117 -0
  1095. package/src/components/Roundabout/Roundabout.tsx +39 -0
  1096. package/src/components/Roundabout/roundabout.spec.tsx +77 -0
  1097. package/src/components/Sequence/Sequence.tsx +28 -0
  1098. package/src/components/Subsequence/Subsequence.spec.tsx +50 -0
  1099. package/src/components/Subsequence/Subsequence.tsx +34 -0
  1100. package/src/components/Suggester/CustomSuggester.tsx +93 -0
  1101. package/src/components/Suggester/Suggester.tsx +160 -0
  1102. package/src/components/Suggester/SuggesterNotification.tsx +58 -0
  1103. package/src/components/Suggester/SuggesterType.ts +5 -0
  1104. package/src/components/Suggester/useSuggestions.ts +113 -0
  1105. package/src/components/Summary/Summary.tsx +121 -0
  1106. package/src/components/Switch/Switch.tsx +108 -0
  1107. package/src/components/Table/Table.tsx +48 -0
  1108. package/src/components/Text/Text.tsx +5 -0
  1109. package/src/components/Textarea/Textarea.spec.tsx +46 -0
  1110. package/src/components/Textarea/Textarea.tsx +82 -0
  1111. package/src/components/Textarea/__snapshots__/Textarea.spec.tsx.snap +32 -0
  1112. package/src/components/library.ts +58 -0
  1113. package/src/components/shared/Button/Button.spec.tsx +75 -0
  1114. package/src/components/shared/Button/Button.tsx +61 -0
  1115. package/src/components/shared/Button/IconButton.spec.tsx +59 -0
  1116. package/src/components/shared/Button/IconButton.tsx +32 -0
  1117. package/src/components/shared/Button/__snapshots__/Button.spec.tsx.snap +80 -0
  1118. package/src/components/shared/Checkbox/CheckboxOption.spec.tsx +58 -0
  1119. package/src/components/shared/Checkbox/CheckboxOption.tsx +98 -0
  1120. package/src/components/shared/Checkbox/getShortcutKey.ts +6 -0
  1121. package/src/components/shared/Combobox/Combobox.stories.tsx +74 -0
  1122. package/src/components/shared/Combobox/Combobox.tsx +225 -0
  1123. package/src/components/shared/Combobox/ComboboxContainer.spec.tsx +37 -0
  1124. package/src/components/shared/Combobox/ComboboxContainer.tsx +40 -0
  1125. package/src/components/shared/Combobox/ComboboxContent.tsx +74 -0
  1126. package/src/components/shared/Combobox/ComboboxContentBox.tsx +21 -0
  1127. package/src/components/shared/Combobox/ComboboxType.ts +54 -0
  1128. package/src/components/shared/Combobox/Panel/ComboboxOption.spec.tsx +37 -0
  1129. package/src/components/shared/Combobox/Panel/ComboboxOption.tsx +41 -0
  1130. package/src/components/shared/Combobox/Panel/ComboboxOptionContainer.spec.tsx +18 -0
  1131. package/src/components/shared/Combobox/Panel/ComboboxOptionContainer.tsx +67 -0
  1132. package/src/components/shared/Combobox/Panel/ComboboxPanel.spec.tsx +97 -0
  1133. package/src/components/shared/Combobox/Panel/ComboboxPanel.tsx +94 -0
  1134. package/src/components/shared/Combobox/Panel/ComboboxPanelContainer.spec.tsx +61 -0
  1135. package/src/components/shared/Combobox/Panel/ComboboxPanelContainer.tsx +26 -0
  1136. package/src/components/shared/Combobox/Selection/ComboboxClearButton.spec.tsx +74 -0
  1137. package/src/components/shared/Combobox/Selection/ComboboxClearButton.tsx +55 -0
  1138. package/src/components/shared/Combobox/Selection/ComboboxInput.tsx +71 -0
  1139. package/src/components/shared/Combobox/Selection/ComboboxLabelSelection.spec.tsx +44 -0
  1140. package/src/components/shared/Combobox/Selection/ComboboxLabelSelection.tsx +70 -0
  1141. package/src/components/shared/Combobox/Selection/ComboboxSelection.spec.tsx +65 -0
  1142. package/src/components/shared/Combobox/Selection/ComboboxSelection.tsx +77 -0
  1143. package/src/components/shared/Combobox/Selection/__snapshots__/ComboboxSelection.spec.tsx.snap +76 -0
  1144. package/src/components/shared/Combobox/constants.ts +9 -0
  1145. package/src/components/shared/Combobox/index.ts +0 -0
  1146. package/src/components/shared/ComponentErrors/ComponentErrors.spec.tsx +46 -0
  1147. package/src/components/shared/ComponentErrors/ComponentErrors.tsx +48 -0
  1148. package/src/components/shared/ComponentWrapper.tsx +66 -0
  1149. package/src/components/shared/Declarations/Declarations.spec.tsx +101 -0
  1150. package/src/components/shared/Declarations/Declarations.tsx +70 -0
  1151. package/src/components/shared/Fieldset/Fieldset.spec.tsx +28 -0
  1152. package/src/components/shared/Fieldset/Fieldset.tsx +47 -0
  1153. package/src/components/shared/HOC/slottableComponent.tsx +155 -0
  1154. package/src/components/shared/Icons/checkbox-checked-icon.tsx +27 -0
  1155. package/src/components/shared/Icons/checkbox-disabled-icon.tsx +27 -0
  1156. package/src/components/shared/Icons/checkbox-unchecked-icon.tsx +27 -0
  1157. package/src/components/shared/Icons/closed-icon.tsx +22 -0
  1158. package/src/components/shared/Icons/cross-icon.tsx +22 -0
  1159. package/src/components/shared/Icons/icon-props.ts +5 -0
  1160. package/src/components/shared/Icons/index.ts +10 -0
  1161. package/src/components/shared/Icons/load-icon.tsx +22 -0
  1162. package/src/components/shared/Icons/lunatic-icon.tsx +9 -0
  1163. package/src/components/shared/Icons/network-icon.tsx +22 -0
  1164. package/src/components/shared/Icons/on-drag-icon.tsx +22 -0
  1165. package/src/components/shared/Icons/opened-icon.tsx +22 -0
  1166. package/src/components/shared/Icons/radio-checked-icon.tsx +29 -0
  1167. package/src/components/shared/Icons/radio-unchecked-icon.tsx +27 -0
  1168. package/src/components/shared/Label/Label.spec.tsx +41 -0
  1169. package/src/components/shared/Label/Label.tsx +46 -0
  1170. package/src/components/shared/LabelDescription.tsx +22 -0
  1171. package/src/components/shared/MDLabel/MDLabel.spec.tsx +145 -0
  1172. package/src/components/shared/MDLabel/MDLabel.tsx +36 -0
  1173. package/src/components/shared/MDLabel/MarkdownLink.tsx +43 -0
  1174. package/src/components/shared/MDLabel/RouterLink.tsx +13 -0
  1175. package/src/components/shared/Missing/Missing.spec.tsx +78 -0
  1176. package/src/components/shared/Missing/Missing.tsx +128 -0
  1177. package/src/components/shared/ModalControls/ModalControls.spec.tsx +69 -0
  1178. package/src/components/shared/ModalControls/ModalControls.tsx +66 -0
  1179. package/src/components/shared/Notification.tsx +25 -0
  1180. package/src/components/shared/Radio/RadioGroup.tsx +80 -0
  1181. package/src/components/shared/Radio/RadioOption.spec.tsx +76 -0
  1182. package/src/components/shared/Radio/RadioOption.tsx +132 -0
  1183. package/src/components/shared/Table/Table.spec.tsx +17 -0
  1184. package/src/components/shared/Table/Table.tsx +48 -0
  1185. package/src/components/shared/Table/TableHeader.tsx +24 -0
  1186. package/src/components/shared/Table/Tbody.spec.tsx +24 -0
  1187. package/src/components/shared/Table/Tbody.tsx +17 -0
  1188. package/src/components/shared/Table/Td.spec.tsx +37 -0
  1189. package/src/components/shared/Table/Td.tsx +28 -0
  1190. package/src/components/shared/Table/Th.spec.tsx +38 -0
  1191. package/src/components/shared/Table/Th.tsx +25 -0
  1192. package/src/components/shared/Table/Thead.spec.tsx +13 -0
  1193. package/src/components/shared/Table/Thead.tsx +17 -0
  1194. package/src/components/shared/Table/Tr.spec.tsx +30 -0
  1195. package/src/components/shared/Table/Tr.tsx +16 -0
  1196. package/src/components/shared/Table/index.ts +7 -0
  1197. package/src/components/type.ts +317 -0
  1198. package/src/constants/component-types.ts +1 -0
  1199. package/src/constants/declarations.ts +14 -0
  1200. package/src/constants/event-types.ts +13 -0
  1201. package/src/constants/index.ts +5 -0
  1202. package/src/constants/indexedDBStore.ts +20 -0
  1203. package/src/constants/supported-preferences.ts +10 -0
  1204. package/src/constants/value-types.ts +5 -0
  1205. package/src/constants/variable-types.ts +4 -0
  1206. package/src/css/components/Button.scss +24 -0
  1207. package/src/css/components/CheckboxGroup.scss +13 -0
  1208. package/src/css/components/CheckboxOne.scss +19 -0
  1209. package/src/css/components/CheckboxOption.scss +87 -0
  1210. package/src/css/components/Combobox.scss +203 -0
  1211. package/src/css/components/ComponentErrors.scss +5 -0
  1212. package/src/css/components/Datepicker.scss +19 -0
  1213. package/src/css/components/Declarations.scss +42 -0
  1214. package/src/css/components/Dragger.scss +8 -0
  1215. package/src/css/components/Dropdown.scss +38 -0
  1216. package/src/css/components/Duration.scss +9 -0
  1217. package/src/css/components/Fieldset.scss +5 -0
  1218. package/src/css/components/IconButton.scss +38 -0
  1219. package/src/css/components/Input.scss +42 -0
  1220. package/src/css/components/InputNumber.scss +11 -0
  1221. package/src/css/components/Label.scss +6 -0
  1222. package/src/css/components/Missing.scss +27 -0
  1223. package/src/css/components/ModalControls.scss +48 -0
  1224. package/src/css/components/RosterForLoop.scss +39 -0
  1225. package/src/css/components/Roundabout.scss +31 -0
  1226. package/src/css/components/Sequence.scss +10 -0
  1227. package/src/css/components/Suggester.scss +170 -0
  1228. package/src/css/components/SuggesterWidget.scss +176 -0
  1229. package/src/css/components/Table.scss +43 -0
  1230. package/src/css/components/Textarea.scss +8 -0
  1231. package/src/css/components/VariableStatus.scss +36 -0
  1232. package/src/css/icons/alert-icon.svg +2 -0
  1233. package/src/css/icons/wait-icon.svg +17 -0
  1234. package/src/css/icons/warn-icon.svg +1 -0
  1235. package/src/css/main.scss +183 -0
  1236. package/src/hooks/use-auto-focus.ts +29 -0
  1237. package/src/hooks/use-track-changes.ts +59 -0
  1238. package/src/hooks/use-why-render.ts +14 -0
  1239. package/src/hooks/useDebounce.ts +39 -0
  1240. package/src/hooks/useDocumentEvent.ts +27 -0
  1241. package/src/hooks/useKeyboardKey.ts +31 -0
  1242. package/src/hooks/useListKeyboardHandler.ts +31 -0
  1243. package/src/hooks/useRefSync.ts +10 -0
  1244. package/src/i18n/build-dictionary.ts +52 -0
  1245. package/src/i18n/dictionary.ts +39 -0
  1246. package/src/i18n/index.ts +19 -0
  1247. package/src/i18n/inputNumberProps.ts +10 -0
  1248. package/src/index.ts +41 -0
  1249. package/src/insee.d.ts +29 -0
  1250. package/src/stories/accordion/accordion.stories.jsx +17 -0
  1251. package/src/stories/accordion/source.json +48 -0
  1252. package/src/stories/behaviour/cleaning/cleaning.stories.jsx +58 -0
  1253. package/src/stories/behaviour/cleaning/source-loop.json +138 -0
  1254. package/src/stories/behaviour/cleaning/source.json +152 -0
  1255. package/src/stories/behaviour/controls/boucles-n.json +202 -0
  1256. package/src/stories/behaviour/controls/controls.stories.jsx +81 -0
  1257. package/src/stories/behaviour/controls/loop.json +141 -0
  1258. package/src/stories/behaviour/controls/roundabout.json +114 -0
  1259. package/src/stories/behaviour/controls/simple-numeric.json +1944 -0
  1260. package/src/stories/behaviour/controls/simple.json +667 -0
  1261. package/src/stories/behaviour/missing/missing.stories.jsx +60 -0
  1262. package/src/stories/behaviour/missing/source.json +818 -0
  1263. package/src/stories/behaviour/others/V2_DeclarationsSimples.json +964 -0
  1264. package/src/stories/behaviour/others/V2_MinMaxSum_Boucles.json +509 -0
  1265. package/src/stories/behaviour/others/V2_QuestSimple_Boucles.json +4347 -0
  1266. package/src/stories/behaviour/others/V2_TCMRallyeGames.json +2892 -0
  1267. package/src/stories/behaviour/others/test-dylan.json +558 -0
  1268. package/src/stories/behaviour/others/test.stories.jsx +78 -0
  1269. package/src/stories/behaviour/paste/source.json +36 -0
  1270. package/src/stories/behaviour/paste/test.stories.jsx +52 -0
  1271. package/src/stories/behaviour/performance/performance.stories.jsx +26 -0
  1272. package/src/stories/behaviour/performance/source.json +179 -0
  1273. package/src/stories/behaviour/resizing/resizing.stories.jsx +60 -0
  1274. package/src/stories/behaviour/resizing/source-resizing-cleaning.json +173 -0
  1275. package/src/stories/behaviour/resizing/source.json +789 -0
  1276. package/src/stories/behaviour/slots.stories.jsx +32 -0
  1277. package/src/stories/checkbox-boolean/checkboxBoolean.stories.jsx +17 -0
  1278. package/src/stories/checkbox-boolean/source.json +58 -0
  1279. package/src/stories/checkbox-group/checkbox-group.stories.jsx +58 -0
  1280. package/src/stories/checkbox-group/source.json +403 -0
  1281. package/src/stories/checkbox-group/sourceCondition.json +87 -0
  1282. package/src/stories/checkbox-group/sourceDetail.json +310 -0
  1283. package/src/stories/checkbox-group/sourceLoop.json +85 -0
  1284. package/src/stories/checkbox-one/checkboxOne.stories.jsx +31 -0
  1285. package/src/stories/checkbox-one/source.json +54 -0
  1286. package/src/stories/checkbox-one/sourceDetail.json +78 -0
  1287. package/src/stories/date-picker/data.json +3 -0
  1288. package/src/stories/date-picker/datepicker.stories.jsx +26 -0
  1289. package/src/stories/date-picker/source.json +65 -0
  1290. package/src/stories/declaration/data.json +1 -0
  1291. package/src/stories/declaration/input.stories.jsx +18 -0
  1292. package/src/stories/declaration/source.json +86 -0
  1293. package/src/stories/disabled/data.json +32 -0
  1294. package/src/stories/disabled/disabled.stories.jsx +18 -0
  1295. package/src/stories/disabled/source.json +383 -0
  1296. package/src/stories/dropdown/data.json +16 -0
  1297. package/src/stories/dropdown/dropdown.stories.jsx +25 -0
  1298. package/src/stories/dropdown/source.json +141 -0
  1299. package/src/stories/duration/duration.stories.jsx +25 -0
  1300. package/src/stories/duration/mois.json +32 -0
  1301. package/src/stories/duration/time.json +32 -0
  1302. package/src/stories/filter-description/filter-description.stories.jsx +33 -0
  1303. package/src/stories/filter-description/source-options.json +81 -0
  1304. package/src/stories/filter-description/source.json +12 -0
  1305. package/src/stories/input/data.json +1 -0
  1306. package/src/stories/input/input.stories.jsx +18 -0
  1307. package/src/stories/input/source.json +35 -0
  1308. package/src/stories/input-number/input-number.stories.jsx +18 -0
  1309. package/src/stories/input-number/source-euro.json +46 -0
  1310. package/src/stories/input-number/source.json +32 -0
  1311. package/src/stories/loop/loop.stories.jsx +29 -0
  1312. package/src/stories/loop/roster-for-loop.stories.jsx +49 -0
  1313. package/src/stories/loop/source-bloc.json +87 -0
  1314. package/src/stories/loop/source-paginated.json +115 -0
  1315. package/src/stories/loop/source-roster.json +115 -0
  1316. package/src/stories/loop/source-with-header.json +136 -0
  1317. package/src/stories/markdown/markdown.stories.jsx +20 -0
  1318. package/src/stories/markdown/source.json +43 -0
  1319. package/src/stories/overview/data.json +1 -0
  1320. package/src/stories/overview/dataLoop.json +189 -0
  1321. package/src/stories/overview/overview.stories.jsx +28 -0
  1322. package/src/stories/overview/source.json +29 -0
  1323. package/src/stories/overview/sourceLoop.json +1424 -0
  1324. package/src/stories/overview/sourceWithHierarchy.json +6289 -0
  1325. package/src/stories/pairwise/data.json +12 -0
  1326. package/src/stories/pairwise/pairwise-links.stories.jsx +48 -0
  1327. package/src/stories/pairwise/source.json +347 -0
  1328. package/src/stories/question/question.stories.jsx +16 -0
  1329. package/src/stories/question/source.json +212 -0
  1330. package/src/stories/questionnaires/logement/data.json +2686 -0
  1331. package/src/stories/questionnaires/logement/logement.stories.jsx +59 -0
  1332. package/src/stories/questionnaires/logement/source-sequence.json +34175 -0
  1333. package/src/stories/questionnaires/logement/source-sum.json +31800 -0
  1334. package/src/stories/questionnaires/logement/source.json +34185 -0
  1335. package/src/stories/questionnaires/recensement/data.json +12 -0
  1336. package/src/stories/questionnaires/recensement/recensement.stories.jsx +35 -0
  1337. package/src/stories/questionnaires/recensement/source.json +15190 -0
  1338. package/src/stories/questionnaires/rp/data.json +5 -0
  1339. package/src/stories/questionnaires/rp/rp.stories.jsx +23 -0
  1340. package/src/stories/questionnaires/rp/source.json +262 -0
  1341. package/src/stories/questionnaires/simpsons/simpsons.stories.jsx +246 -0
  1342. package/src/stories/questionnaires/simpsons/source.json +5078 -0
  1343. package/src/stories/radio/radio.stories.jsx +38 -0
  1344. package/src/stories/radio/source.json +51 -0
  1345. package/src/stories/radio/sourceCondition.json +75 -0
  1346. package/src/stories/radio/sourceDetail.json +97 -0
  1347. package/src/stories/radio/sourceHorizontal.json +42 -0
  1348. package/src/stories/roundabout/data1.json +25 -0
  1349. package/src/stories/roundabout/data2.json +32 -0
  1350. package/src/stories/roundabout/roundabout.stories.jsx +32 -0
  1351. package/src/stories/roundabout/source.json +294 -0
  1352. package/src/stories/sequence/sequence.stories.jsx +29 -0
  1353. package/src/stories/sequence/source-declarations.json +43 -0
  1354. package/src/stories/sequence/source.json +21 -0
  1355. package/src/stories/suggester/fakeReferentiel.json +12 -0
  1356. package/src/stories/suggester/source-arbitrary-response.json +178 -0
  1357. package/src/stories/suggester/source-error.json +155 -0
  1358. package/src/stories/suggester/source-multiline.json +338 -0
  1359. package/src/stories/suggester/source-option-responses.json +156 -0
  1360. package/src/stories/suggester/source.json +425 -0
  1361. package/src/stories/suggester/suggester.stories.jsx +71 -0
  1362. package/src/stories/summary/data.json +32 -0
  1363. package/src/stories/summary/source.json +370 -0
  1364. package/src/stories/summary/summary.stories.jsx +23 -0
  1365. package/src/stories/switch/README.md +29 -0
  1366. package/src/stories/switch/data-forced.json +48 -0
  1367. package/src/stories/switch/source.json +80 -0
  1368. package/src/stories/switch/switch.stories.jsx +17 -0
  1369. package/src/stories/table/data.json +1 -0
  1370. package/src/stories/table/source-colspan.json +315 -0
  1371. package/src/stories/table/source.json +34 -0
  1372. package/src/stories/table/table-dynamique.json +66 -0
  1373. package/src/stories/table/table.stories.jsx +30 -0
  1374. package/src/stories/text/data-roster.json +5 -0
  1375. package/src/stories/text/source-roster.json +187 -0
  1376. package/src/stories/text/source-table.json +293 -0
  1377. package/src/stories/text/source.json +14 -0
  1378. package/src/stories/text/text.stories.jsx +20 -0
  1379. package/src/stories/textarea/data.json +1 -0
  1380. package/src/stories/textarea/source.json +36 -0
  1381. package/src/stories/textarea/textarea.stories.jsx +18 -0
  1382. package/src/stories/utils/SchemaValidator.jsx +40 -0
  1383. package/src/stories/utils/custom-lunatic.scss +28 -0
  1384. package/src/stories/utils/default-arg-types.js +28 -0
  1385. package/src/stories/utils/options.js +19 -0
  1386. package/src/stories/utils/orchestrator.jsx +260 -0
  1387. package/src/stories/utils/orchestrator.scss +64 -0
  1388. package/src/stories/utils/overview.jsx +39 -0
  1389. package/src/stories/utils/overview.scss +38 -0
  1390. package/src/stories/utils/referentiel.js +7 -0
  1391. package/src/test.d.ts +8 -0
  1392. package/src/tests/setup.ts +20 -0
  1393. package/src/tests/utils/e2e.js +91 -0
  1394. package/src/tests/utils/lunatic.ts +37 -0
  1395. package/src/tests/utils/timer.ts +3 -0
  1396. package/src/type.source.ts +468 -0
  1397. package/src/type.utils.ts +8 -0
  1398. package/src/use-lunatic/__snapshots__/use-lunatic.test.ts.snap +2502 -0
  1399. package/src/use-lunatic/actions.ts +72 -0
  1400. package/src/use-lunatic/commons/check-loops.ts +95 -0
  1401. package/src/use-lunatic/commons/check-pager.ts +20 -0
  1402. package/src/use-lunatic/commons/compile-controls.ts +231 -0
  1403. package/src/use-lunatic/commons/component.ts +47 -0
  1404. package/src/use-lunatic/commons/create-map-pages.ts +83 -0
  1405. package/src/use-lunatic/commons/execute-condition-filter.ts +17 -0
  1406. package/src/use-lunatic/commons/fill-components/fill-component-expressions.spec.ts +88 -0
  1407. package/src/use-lunatic/commons/fill-components/fill-component-expressions.ts +205 -0
  1408. package/src/use-lunatic/commons/fill-components/fill-components.ts +75 -0
  1409. package/src/use-lunatic/commons/get-compatible-vtl-expression.ts +23 -0
  1410. package/src/use-lunatic/commons/get-components-from-state.ts +25 -0
  1411. package/src/use-lunatic/commons/index.ts +6 -0
  1412. package/src/use-lunatic/commons/is-First-last-page.ts +10 -0
  1413. package/src/use-lunatic/commons/is-paginated-loop.ts +12 -0
  1414. package/src/use-lunatic/commons/is-roundabout.ts +8 -0
  1415. package/src/use-lunatic/commons/page-navigation.spec.ts +140 -0
  1416. package/src/use-lunatic/commons/page-navigation.ts +126 -0
  1417. package/src/use-lunatic/commons/page-tag.spec.ts +43 -0
  1418. package/src/use-lunatic/commons/page-tag.ts +78 -0
  1419. package/src/use-lunatic/commons/page.ts +47 -0
  1420. package/src/use-lunatic/commons/variables/behaviours/cleaning-behaviour.ts +73 -0
  1421. package/src/use-lunatic/commons/variables/behaviours/missing-behaviour.ts +36 -0
  1422. package/src/use-lunatic/commons/variables/behaviours/resizing-behaviour.ts +89 -0
  1423. package/src/use-lunatic/commons/variables/errors.ts +35 -0
  1424. package/src/use-lunatic/commons/variables/get-questionnaire-data.ts +73 -0
  1425. package/src/use-lunatic/commons/variables/lunatic-variables-store.spec.ts +492 -0
  1426. package/src/use-lunatic/commons/variables/lunatic-variables-store.ts +493 -0
  1427. package/src/use-lunatic/hooks/use-loop-variables.ts +23 -0
  1428. package/src/use-lunatic/hooks/use-page-has-response.ts +122 -0
  1429. package/src/use-lunatic/hooks/useOverview.ts +152 -0
  1430. package/src/use-lunatic/hooks/useWarnDepChange.ts +22 -0
  1431. package/src/use-lunatic/logger/ConsoleLogger.ts +13 -0
  1432. package/src/use-lunatic/logger/type.ts +11 -0
  1433. package/src/use-lunatic/lunatic-context.tsx +78 -0
  1434. package/src/use-lunatic/props/getComponentTypeProps.ts +230 -0
  1435. package/src/use-lunatic/props/propIterations.ts +51 -0
  1436. package/src/use-lunatic/props/propMissingResponse.ts +28 -0
  1437. package/src/use-lunatic/props/propOptions.spec.ts +98 -0
  1438. package/src/use-lunatic/props/propOptions.ts +99 -0
  1439. package/src/use-lunatic/props/propValue.spec.ts +67 -0
  1440. package/src/use-lunatic/props/propValue.ts +40 -0
  1441. package/src/use-lunatic/reducer/commons/auto-explore-loop.ts +68 -0
  1442. package/src/use-lunatic/reducer/commons/index.ts +2 -0
  1443. package/src/use-lunatic/reducer/commons/resize-array-variable.ts +28 -0
  1444. package/src/use-lunatic/reducer/commons/validate-condition-filter.ts +21 -0
  1445. package/src/use-lunatic/reducer/controls/check-base-control.ts +47 -0
  1446. package/src/use-lunatic/reducer/controls/check-roundabout-control.ts +40 -0
  1447. package/src/use-lunatic/reducer/overview/overviewOnInit.ts +74 -0
  1448. package/src/use-lunatic/reducer/reduce-go-next-page.ts +72 -0
  1449. package/src/use-lunatic/reducer/reduce-go-previous-page.ts +39 -0
  1450. package/src/use-lunatic/reducer/reduce-go-to-page.ts +69 -0
  1451. package/src/use-lunatic/reducer/reduce-handle-changes.ts +33 -0
  1452. package/src/use-lunatic/reducer/reducer.ts +24 -0
  1453. package/src/use-lunatic/reducer/reducerInitializer.tsx +178 -0
  1454. package/src/use-lunatic/replace-component-sequence.ts +25 -0
  1455. package/src/use-lunatic/type.ts +212 -0
  1456. package/src/use-lunatic/use-lunatic.test.ts +368 -0
  1457. package/src/use-lunatic/use-lunatic.ts +221 -0
  1458. package/src/utils/array.spec.ts +48 -0
  1459. package/src/utils/array.ts +130 -0
  1460. package/src/utils/constants/alphabet.ts +1 -0
  1461. package/src/utils/constants/features.ts +4 -0
  1462. package/src/utils/constants/index.ts +5 -0
  1463. package/src/utils/constants/links.ts +2 -0
  1464. package/src/utils/constants/missing.ts +2 -0
  1465. package/src/utils/constants/variable-status.ts +5 -0
  1466. package/src/utils/constants/variable-types.ts +1 -0
  1467. package/src/utils/dom.ts +33 -0
  1468. package/src/utils/env.ts +11 -0
  1469. package/src/utils/function.ts +32 -0
  1470. package/src/utils/is-element.ts +7 -0
  1471. package/src/utils/is-object.ts +6 -0
  1472. package/src/utils/logger.ts +17 -0
  1473. package/src/utils/number.spec.ts +10 -0
  1474. package/src/utils/number.ts +33 -0
  1475. package/src/utils/object.ts +35 -0
  1476. package/src/utils/search/SearchInterface.ts +17 -0
  1477. package/src/utils/search/SearchMinisearch.ts +54 -0
  1478. package/src/utils/search/SuggestersDatabase.ts +46 -0
  1479. package/src/utils/search/melauto.ts +48 -0
  1480. package/src/utils/search/tokenizer.ts +77 -0
  1481. package/src/utils/to-number.ts +12 -0
  1482. package/src/utils/variables.spec.ts +94 -0
  1483. package/src/utils/variables.ts +24 -0
  1484. package/src/utils/vtl.ts +116 -0
  1485. package/tests/setup.js +11 -9
  1486. package/tests/setup.js.map +1 -1
  1487. package/tests/utils/lunatic.js +6 -2
  1488. package/tests/utils/lunatic.js.map +1 -1
  1489. package/tests/utils/timer.js +4 -1
  1490. package/tests/utils/timer.js.map +1 -1
  1491. package/type.source.js +2 -1
  1492. package/type.source.js.map +1 -1
  1493. package/type.utils.js +2 -1
  1494. package/use-lunatic/actions.js +11 -6
  1495. package/use-lunatic/actions.js.map +1 -1
  1496. package/use-lunatic/commons/check-loops.js +10 -5
  1497. package/use-lunatic/commons/check-loops.js.map +1 -1
  1498. package/use-lunatic/commons/check-pager.js +4 -1
  1499. package/use-lunatic/commons/check-pager.js.map +1 -1
  1500. package/use-lunatic/commons/compile-controls.js +13 -10
  1501. package/use-lunatic/commons/compile-controls.js.map +1 -1
  1502. package/use-lunatic/commons/component.js +10 -4
  1503. package/use-lunatic/commons/component.js.map +1 -1
  1504. package/use-lunatic/commons/create-map-pages.js +9 -4
  1505. package/use-lunatic/commons/create-map-pages.js.map +1 -1
  1506. package/use-lunatic/commons/execute-condition-filter.js +5 -3
  1507. package/use-lunatic/commons/execute-condition-filter.js.map +1 -1
  1508. package/use-lunatic/commons/fill-components/fill-component-expressions.js +6 -3
  1509. package/use-lunatic/commons/fill-components/fill-component-expressions.js.map +1 -1
  1510. package/use-lunatic/commons/fill-components/fill-component-expressions.spec.js +9 -7
  1511. package/use-lunatic/commons/fill-components/fill-component-expressions.spec.js.map +1 -1
  1512. package/use-lunatic/commons/fill-components/fill-components.js +20 -15
  1513. package/use-lunatic/commons/fill-components/fill-components.js.map +1 -1
  1514. package/use-lunatic/commons/get-compatible-vtl-expression.js +6 -4
  1515. package/use-lunatic/commons/get-compatible-vtl-expression.js.map +1 -1
  1516. package/use-lunatic/commons/get-components-from-state.js +4 -1
  1517. package/use-lunatic/commons/get-components-from-state.js.map +1 -1
  1518. package/use-lunatic/commons/index.js +20 -6
  1519. package/use-lunatic/commons/index.js.map +1 -1
  1520. package/use-lunatic/commons/is-First-last-page.js +3 -1
  1521. package/use-lunatic/commons/is-First-last-page.js.map +1 -1
  1522. package/use-lunatic/commons/is-paginated-loop.js +3 -1
  1523. package/use-lunatic/commons/is-paginated-loop.js.map +1 -1
  1524. package/use-lunatic/commons/is-roundabout.js +4 -1
  1525. package/use-lunatic/commons/is-roundabout.js.map +1 -1
  1526. package/use-lunatic/commons/page-navigation.js +6 -2
  1527. package/use-lunatic/commons/page-navigation.js.map +1 -1
  1528. package/use-lunatic/commons/page-navigation.spec.js +32 -30
  1529. package/use-lunatic/commons/page-navigation.spec.js.map +1 -1
  1530. package/use-lunatic/commons/page-tag.js +12 -5
  1531. package/use-lunatic/commons/page-tag.js.map +1 -1
  1532. package/use-lunatic/commons/page-tag.spec.js +12 -10
  1533. package/use-lunatic/commons/page-tag.spec.js.map +1 -1
  1534. package/use-lunatic/commons/page.js +15 -7
  1535. package/use-lunatic/commons/page.js.map +1 -1
  1536. package/use-lunatic/commons/variables/behaviours/cleaning-behaviour.js +7 -4
  1537. package/use-lunatic/commons/variables/behaviours/cleaning-behaviour.js.map +1 -1
  1538. package/use-lunatic/commons/variables/behaviours/missing-behaviour.js +4 -1
  1539. package/use-lunatic/commons/variables/behaviours/missing-behaviour.js.map +1 -1
  1540. package/use-lunatic/commons/variables/behaviours/resizing-behaviour.js +13 -10
  1541. package/use-lunatic/commons/variables/behaviours/resizing-behaviour.js.map +1 -1
  1542. package/use-lunatic/commons/variables/errors.js +11 -4
  1543. package/use-lunatic/commons/variables/errors.js.map +1 -1
  1544. package/use-lunatic/commons/variables/get-questionnaire-data.js +4 -1
  1545. package/use-lunatic/commons/variables/get-questionnaire-data.js.map +1 -1
  1546. package/use-lunatic/commons/variables/lunatic-variables-store.js +30 -26
  1547. package/use-lunatic/commons/variables/lunatic-variables-store.js.map +1 -1
  1548. package/use-lunatic/commons/variables/lunatic-variables-store.spec.js +156 -154
  1549. package/use-lunatic/commons/variables/lunatic-variables-store.spec.js.map +1 -1
  1550. package/use-lunatic/hooks/use-loop-variables.js +6 -3
  1551. package/use-lunatic/hooks/use-loop-variables.js.map +1 -1
  1552. package/use-lunatic/hooks/use-page-has-response.js +8 -5
  1553. package/use-lunatic/hooks/use-page-has-response.js.map +1 -1
  1554. package/use-lunatic/hooks/useOverview.js +12 -8
  1555. package/use-lunatic/hooks/useOverview.js.map +1 -1
  1556. package/use-lunatic/hooks/useWarnDepChange.js +9 -6
  1557. package/use-lunatic/hooks/useWarnDepChange.js.map +1 -1
  1558. package/use-lunatic/logger/ConsoleLogger.js +5 -1
  1559. package/use-lunatic/logger/ConsoleLogger.js.map +1 -1
  1560. package/use-lunatic/logger/type.js +2 -1
  1561. package/use-lunatic/lunatic-context.js +21 -12
  1562. package/use-lunatic/lunatic-context.js.map +1 -1
  1563. package/use-lunatic/props/getComponentTypeProps.js +13 -11
  1564. package/use-lunatic/props/getComponentTypeProps.js.map +1 -1
  1565. package/use-lunatic/props/propIterations.js +9 -6
  1566. package/use-lunatic/props/propIterations.js.map +1 -1
  1567. package/use-lunatic/props/propMissingResponse.js +6 -3
  1568. package/use-lunatic/props/propMissingResponse.js.map +1 -1
  1569. package/use-lunatic/props/propOptions.js +6 -3
  1570. package/use-lunatic/props/propOptions.js.map +1 -1
  1571. package/use-lunatic/props/propOptions.spec.js +24 -22
  1572. package/use-lunatic/props/propOptions.spec.js.map +1 -1
  1573. package/use-lunatic/props/propValue.js +9 -6
  1574. package/use-lunatic/props/propValue.js.map +1 -1
  1575. package/use-lunatic/props/propValue.spec.js +15 -13
  1576. package/use-lunatic/props/propValue.spec.js.map +1 -1
  1577. package/use-lunatic/reducer/commons/auto-explore-loop.js +7 -4
  1578. package/use-lunatic/reducer/commons/auto-explore-loop.js.map +1 -1
  1579. package/use-lunatic/reducer/commons/index.js +23 -2
  1580. package/use-lunatic/reducer/commons/index.js.map +1 -1
  1581. package/use-lunatic/reducer/commons/resize-array-variable.js +3 -1
  1582. package/use-lunatic/reducer/commons/resize-array-variable.js.map +1 -1
  1583. package/use-lunatic/reducer/commons/validate-condition-filter.js +5 -3
  1584. package/use-lunatic/reducer/commons/validate-condition-filter.js.map +1 -1
  1585. package/use-lunatic/reducer/controls/check-base-control.js +4 -2
  1586. package/use-lunatic/reducer/controls/check-base-control.js.map +1 -1
  1587. package/use-lunatic/reducer/controls/check-roundabout-control.js +4 -2
  1588. package/use-lunatic/reducer/controls/check-roundabout-control.js.map +1 -1
  1589. package/use-lunatic/reducer/overview/overviewOnInit.js +4 -1
  1590. package/use-lunatic/reducer/overview/overviewOnInit.js.map +1 -1
  1591. package/use-lunatic/reducer/reduce-go-next-page.js +18 -15
  1592. package/use-lunatic/reducer/reduce-go-next-page.js.map +1 -1
  1593. package/use-lunatic/reducer/reduce-go-previous-page.js +12 -9
  1594. package/use-lunatic/reducer/reduce-go-previous-page.js.map +1 -1
  1595. package/use-lunatic/reducer/reduce-go-to-page.js +11 -9
  1596. package/use-lunatic/reducer/reduce-go-to-page.js.map +1 -1
  1597. package/use-lunatic/reducer/reduce-handle-changes.js +6 -3
  1598. package/use-lunatic/reducer/reduce-handle-changes.js.map +1 -1
  1599. package/use-lunatic/reducer/reducer.js +17 -14
  1600. package/use-lunatic/reducer/reducer.js.map +1 -1
  1601. package/use-lunatic/reducer/reducerInitializer.js +27 -24
  1602. package/use-lunatic/reducer/reducerInitializer.js.map +1 -1
  1603. package/use-lunatic/replace-component-sequence.js +4 -1
  1604. package/use-lunatic/replace-component-sequence.js.map +1 -1
  1605. package/use-lunatic/type.js +2 -1
  1606. package/use-lunatic/use-lunatic.js +55 -49
  1607. package/use-lunatic/use-lunatic.js.map +1 -1
  1608. package/utils/array.js +18 -8
  1609. package/utils/array.js.map +1 -1
  1610. package/utils/array.spec.js +25 -23
  1611. package/utils/array.spec.js.map +1 -1
  1612. package/utils/constants/alphabet.js +4 -1
  1613. package/utils/constants/alphabet.js.map +1 -1
  1614. package/utils/constants/features.js +7 -4
  1615. package/utils/constants/features.js.map +1 -1
  1616. package/utils/constants/index.js +21 -5
  1617. package/utils/constants/index.js.map +1 -1
  1618. package/utils/constants/links.js +5 -2
  1619. package/utils/constants/links.js.map +1 -1
  1620. package/utils/constants/missing.js +5 -2
  1621. package/utils/constants/missing.js.map +1 -1
  1622. package/utils/constants/variable-status.js +8 -5
  1623. package/utils/constants/variable-status.js.map +1 -1
  1624. package/utils/constants/variable-types.js +4 -1
  1625. package/utils/constants/variable-types.js.map +1 -1
  1626. package/utils/dom.js +6 -2
  1627. package/utils/dom.js.map +1 -1
  1628. package/utils/env.js +4 -1
  1629. package/utils/env.js.map +1 -1
  1630. package/utils/function.js +7 -2
  1631. package/utils/function.js.map +1 -1
  1632. package/utils/is-element.js +5 -3
  1633. package/utils/is-element.js.map +1 -1
  1634. package/utils/is-object.js +4 -1
  1635. package/utils/is-object.js.map +1 -1
  1636. package/utils/logger.js +5 -1
  1637. package/utils/logger.js.map +1 -1
  1638. package/utils/number.js +8 -3
  1639. package/utils/number.js.map +1 -1
  1640. package/utils/number.spec.js +9 -7
  1641. package/utils/number.spec.js.map +1 -1
  1642. package/utils/object.js +8 -3
  1643. package/utils/object.js.map +1 -1
  1644. package/utils/search/SearchInterface.js +2 -1
  1645. package/utils/search/SearchMinisearch.js +14 -7
  1646. package/utils/search/SearchMinisearch.js.map +1 -1
  1647. package/utils/search/SuggestersDatabase.js +8 -4
  1648. package/utils/search/SuggestersDatabase.js.map +1 -1
  1649. package/utils/search/melauto.js +6 -2
  1650. package/utils/search/melauto.js.map +1 -1
  1651. package/utils/search/tokenizer.js +11 -5
  1652. package/utils/search/tokenizer.js.map +1 -1
  1653. package/utils/to-number.js +4 -1
  1654. package/utils/to-number.js.map +1 -1
  1655. package/utils/variables.js +4 -1
  1656. package/utils/variables.js.map +1 -1
  1657. package/utils/variables.spec.js +17 -15
  1658. package/utils/variables.spec.js.map +1 -1
  1659. package/utils/vtl.js +23 -13
  1660. package/utils/vtl.js.map +1 -1
@@ -0,0 +1,34 @@
1
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
+ import { useState } from 'react';
3
+ import { getDurationFromValue } from './getDurationFromValue';
4
+ import { clampDuration, labelByUnit, propsByUnit } from './durationUtils';
5
+ import { formatDuration } from './formatDuration';
6
+ import classnames from 'classnames';
7
+ import { objectKeys } from '../../utils/object';
8
+ import { slottableComponent } from '../shared/HOC/slottableComponent';
9
+ import { ComponentErrors, getComponentErrors, } from '../shared/ComponentErrors/ComponentErrors';
10
+ import { Declarations } from '../shared/Declarations/Declarations';
11
+ export function Duration({ handleChanges, response, errors, ...props }) {
12
+ return (_jsx(CustomDuration, { ...props, onChange: (value) => handleChanges([{ name: response.name, value }]), errors: getComponentErrors(errors, props.id) }));
13
+ }
14
+ export const CustomDuration = slottableComponent('Duration', (props) => {
15
+ const { errors, value, label, format, onChange, declarations, id } = props;
16
+ // We need to keep an internal state since one field can be empty (null value in duration)
17
+ // but we still send "0" and we don't want the field to display "0"
18
+ const [duration, setDuration] = useState(getDurationFromValue(value, format));
19
+ // Generate handler for a specific unit field (year, month...)
20
+ const changeHandler = (unit) => (e) => {
21
+ if (!e.target.checkValidity()) {
22
+ return;
23
+ }
24
+ const fieldValue = clampDuration(Number.isNaN(e.target.valueAsNumber) ? null : e.target.valueAsNumber, unit);
25
+ const newDuration = { ...duration, [unit]: fieldValue };
26
+ onChange(formatDuration(newDuration));
27
+ setDuration(newDuration);
28
+ };
29
+ return (_jsxs("fieldset", { className: classnames('lunatic-input'), children: [label && _jsx("legend", { children: label }), _jsx(Declarations, { type: "AFTER_QUESTION_TEXT", declarations: declarations, id: id }), _jsx("div", { className: "duration-fields", children: objectKeys(duration).map((unit) => {
30
+ var _a;
31
+ return (_jsxs("div", { className: "duration-field", children: [_jsx("label", { htmlFor: `${unit}Input`, className: "input-label", children: labelByUnit[unit] }), _jsx("input", { id: `${unit}Input`, type: "number", value: (_a = duration[unit]) !== null && _a !== void 0 ? _a : '', className: "input-field", onChange: changeHandler(unit), ...propsByUnit[unit] })] }, unit));
32
+ }) }), _jsx(ComponentErrors, { errors: errors })] }));
33
+ });
34
+ //# sourceMappingURL=Duration.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Duration.js","sourceRoot":"","sources":["../../../src/components/Duration/Duration.tsx"],"names":[],"mappings":"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"}
@@ -0,0 +1,47 @@
1
+ export type DurationValue = {
2
+ hours?: number | null;
3
+ minutes?: number | null;
4
+ years?: number | null;
5
+ months?: number | null;
6
+ };
7
+ export type Formats = 'PTnHnM' | 'PnYnM';
8
+ export declare const propsByUnit: {
9
+ hours: {
10
+ min: number;
11
+ max: number;
12
+ size: number;
13
+ style: {
14
+ width: string;
15
+ };
16
+ };
17
+ minutes: {
18
+ min: number;
19
+ max: number;
20
+ size: number;
21
+ style: {
22
+ width: string;
23
+ };
24
+ };
25
+ months: {
26
+ min: number;
27
+ max: number;
28
+ size: number;
29
+ style: {
30
+ width: string;
31
+ };
32
+ };
33
+ years: {
34
+ min: number;
35
+ size: number;
36
+ style: {
37
+ width: string;
38
+ };
39
+ };
40
+ };
41
+ export declare const labelByUnit: {
42
+ hours: string;
43
+ minutes: string;
44
+ months: string;
45
+ years: string;
46
+ };
47
+ export declare function clampDuration(value: number | null, unit: keyof typeof propsByUnit): number | null;
@@ -0,0 +1,26 @@
1
+ export const propsByUnit = {
2
+ hours: { min: 0, max: 99, size: 2, style: { width: '2.5em' } },
3
+ minutes: { min: 0, max: 59, size: 2, style: { width: '2.5em' } },
4
+ months: { min: 0, max: 11, size: 2, style: { width: '2.5em' } },
5
+ years: { min: 0, size: 4, style: { width: '4em' } },
6
+ };
7
+ export const labelByUnit = {
8
+ hours: 'Heures :',
9
+ minutes: 'Minutes :',
10
+ months: 'Mois : ',
11
+ years: 'Années :',
12
+ };
13
+ export function clampDuration(value, unit) {
14
+ if (value === null) {
15
+ return value;
16
+ }
17
+ const props = propsByUnit[unit];
18
+ if (value < props.min) {
19
+ return props.min;
20
+ }
21
+ if ('max' in props && value > props.max) {
22
+ return props.max;
23
+ }
24
+ return value;
25
+ }
26
+ //# sourceMappingURL=durationUtils.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"durationUtils.js","sourceRoot":"","sources":["../../../src/components/Duration/durationUtils.ts"],"names":[],"mappings":"AASA,MAAM,CAAC,MAAM,WAAW,GAAG;IAC1B,KAAK,EAAE,EAAE,GAAG,EAAE,CAAC,EAAE,GAAG,EAAE,EAAE,EAAE,IAAI,EAAE,CAAC,EAAE,KAAK,EAAE,EAAE,KAAK,EAAE,OAAO,EAAE,EAAE;IAC9D,OAAO,EAAE,EAAE,GAAG,EAAE,CAAC,EAAE,GAAG,EAAE,EAAE,EAAE,IAAI,EAAE,CAAC,EAAE,KAAK,EAAE,EAAE,KAAK,EAAE,OAAO,EAAE,EAAE;IAChE,MAAM,EAAE,EAAE,GAAG,EAAE,CAAC,EAAE,GAAG,EAAE,EAAE,EAAE,IAAI,EAAE,CAAC,EAAE,KAAK,EAAE,EAAE,KAAK,EAAE,OAAO,EAAE,EAAE;IAC/D,KAAK,EAAE,EAAE,GAAG,EAAE,CAAC,EAAE,IAAI,EAAE,CAAC,EAAE,KAAK,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,EAAE;CACnD,CAAC;AAEF,MAAM,CAAC,MAAM,WAAW,GAAG;IAC1B,KAAK,EAAE,UAAU;IACjB,OAAO,EAAE,WAAW;IACpB,MAAM,EAAE,SAAS;IACjB,KAAK,EAAE,UAAU;CACjB,CAAC;AAEF,MAAM,UAAU,aAAa,CAC5B,KAAoB,EACpB,IAA8B;IAE9B,IAAI,KAAK,KAAK,IAAI,EAAE,CAAC;QACpB,OAAO,KAAK,CAAC;IACd,CAAC;IACD,MAAM,KAAK,GAAG,WAAW,CAAC,IAAI,CAAC,CAAC;IAChC,IAAI,KAAK,GAAG,KAAK,CAAC,GAAG,EAAE,CAAC;QACvB,OAAO,KAAK,CAAC,GAAG,CAAC;IAClB,CAAC;IACD,IAAI,KAAK,IAAI,KAAK,IAAI,KAAK,GAAG,KAAK,CAAC,GAAG,EAAE,CAAC;QACzC,OAAO,KAAK,CAAC,GAAG,CAAC;IAClB,CAAC;IACD,OAAO,KAAK,CAAC;AACd,CAAC"}
@@ -0,0 +1,2 @@
1
+ import { type DurationValue } from './durationUtils';
2
+ export declare const formatDuration: (duration: DurationValue) => string | null;
@@ -0,0 +1,18 @@
1
+ export const formatDuration = (duration) => {
2
+ var _a;
3
+ const prefix = 'hours' in duration && 'minutes' in duration ? 'PT' : 'P';
4
+ // The duration has no numeric value (all nulls), then return null
5
+ if (Object.values(duration).filter((v) => v !== null).length === 0) {
6
+ return null;
7
+ }
8
+ // Recreate unit so we can control the unit order for formatting
9
+ const units = ['years', 'months', 'hours', 'minutes'];
10
+ let durationParts = '';
11
+ for (const unit of units) {
12
+ if (unit in duration) {
13
+ durationParts += ((_a = duration[unit]) !== null && _a !== void 0 ? _a : 0) + unit[0].toUpperCase();
14
+ }
15
+ }
16
+ return prefix + durationParts;
17
+ };
18
+ //# sourceMappingURL=formatDuration.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"formatDuration.js","sourceRoot":"","sources":["../../../src/components/Duration/formatDuration.ts"],"names":[],"mappings":"AAEA,MAAM,CAAC,MAAM,cAAc,GAAG,CAAC,QAAuB,EAAiB,EAAE;;IACxE,MAAM,MAAM,GAAG,OAAO,IAAI,QAAQ,IAAI,SAAS,IAAI,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,GAAG,CAAC;IACzE,kEAAkE;IAClE,IAAI,MAAM,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,KAAK,IAAI,CAAC,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACpE,OAAO,IAAI,CAAC;IACb,CAAC;IAED,gEAAgE;IAChE,MAAM,KAAK,GAAG,CAAC,OAAO,EAAE,QAAQ,EAAE,OAAO,EAAE,SAAS,CAAU,CAAC;IAC/D,IAAI,aAAa,GAAG,EAAE,CAAC;IACvB,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;QAC1B,IAAI,IAAI,IAAI,QAAQ,EAAE,CAAC;YACtB,aAAa,IAAI,CAAC,MAAA,QAAQ,CAAC,IAAI,CAAC,mCAAI,CAAC,CAAC,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,CAAC;QAChE,CAAC;IACF,CAAC;IACD,OAAO,MAAM,GAAG,aAAa,CAAC;AAC/B,CAAC,CAAC"}
@@ -0,0 +1 @@
1
+ export {};
@@ -0,0 +1,16 @@
1
+ import { describe, it, expect } from 'vitest';
2
+ import { formatDuration } from './formatDuration';
3
+ describe('formatDuration', () => {
4
+ it('should format time correctly', () => {
5
+ expect(formatDuration({ hours: 12, minutes: 15 })).toEqual('PT12H15M');
6
+ expect(formatDuration({ hours: 14, minutes: 50 })).toEqual('PT14H50M');
7
+ expect(formatDuration({ hours: null, minutes: null })).toEqual(null);
8
+ });
9
+ it('should format date correctly', () => {
10
+ expect(formatDuration({ years: 12, months: 15 })).toEqual('P12Y15M');
11
+ expect(formatDuration({ years: 14, months: 50 })).toEqual('P14Y50M');
12
+ expect(formatDuration({ years: 14, months: null })).toEqual('P14Y0M');
13
+ expect(formatDuration({ years: null, months: null })).toEqual(null);
14
+ });
15
+ });
16
+ //# sourceMappingURL=formatDuration.spec.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"formatDuration.spec.js","sourceRoot":"","sources":["../../../src/components/Duration/formatDuration.spec.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,EAAE,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAC9C,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAClD,QAAQ,CAAC,gBAAgB,EAAE,GAAG,EAAE;IAC/B,EAAE,CAAC,8BAA8B,EAAE,GAAG,EAAE;QACvC,MAAM,CAAC,cAAc,CAAC,EAAE,KAAK,EAAE,EAAE,EAAE,OAAO,EAAE,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC;QACvE,MAAM,CAAC,cAAc,CAAC,EAAE,KAAK,EAAE,EAAE,EAAE,OAAO,EAAE,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC;QACvE,MAAM,CAAC,cAAc,CAAC,EAAE,KAAK,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;IACtE,CAAC,CAAC,CAAC;IACH,EAAE,CAAC,8BAA8B,EAAE,GAAG,EAAE;QACvC,MAAM,CAAC,cAAc,CAAC,EAAE,KAAK,EAAE,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;QACrE,MAAM,CAAC,cAAc,CAAC,EAAE,KAAK,EAAE,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;QACrE,MAAM,CAAC,cAAc,CAAC,EAAE,KAAK,EAAE,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;QACtE,MAAM,CAAC,cAAc,CAAC,EAAE,KAAK,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;IACrE,CAAC,CAAC,CAAC;AACJ,CAAC,CAAC,CAAC"}
@@ -0,0 +1,8 @@
1
+ import { type Formats, type DurationValue } from './durationUtils';
2
+ /**
3
+ * Convert a string into a duration
4
+ *
5
+ * ## Example
6
+ * - "P12Y5M" => {year: 12, month: 5}
7
+ */
8
+ export declare const getDurationFromValue: (value: string | null, format: Formats) => DurationValue;
@@ -0,0 +1,36 @@
1
+ /**
2
+ * Convert a string into a duration
3
+ *
4
+ * ## Example
5
+ * - "P12Y5M" => {year: 12, month: 5}
6
+ */
7
+ export const getDurationFromValue = (value, format) => {
8
+ // Handle nulls value
9
+ if (value === null && format === 'PTnHnM') {
10
+ return { hours: null, minutes: null };
11
+ }
12
+ else if (value === null) {
13
+ return { years: null, months: null };
14
+ }
15
+ const match = matchFromFormat(value, format);
16
+ if (format === 'PTnHnM') {
17
+ return { hours: match[0], minutes: match[1] };
18
+ }
19
+ return { years: match[0], months: match[1] };
20
+ };
21
+ /**
22
+ * Generate a regexp from the format to extract the numbers from the string
23
+ *
24
+ * ## Example :
25
+ * - "P12Y3M" => [12, 3]
26
+ */
27
+ const matchFromFormat = (value, format) => {
28
+ const regex = new RegExp(format.replaceAll('n', '(\\d+)'));
29
+ const match = value.match(regex);
30
+ if (!match) {
31
+ throw new Error(`Invalid duration value "${value}" does not match the format "${format}"`);
32
+ }
33
+ const [, ...matches] = match;
34
+ return matches.map((v) => parseInt(v, 10));
35
+ };
36
+ //# sourceMappingURL=getDurationFromValue.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"getDurationFromValue.js","sourceRoot":"","sources":["../../../src/components/Duration/getDurationFromValue.ts"],"names":[],"mappings":"AAEA;;;;;GAKG;AACH,MAAM,CAAC,MAAM,oBAAoB,GAAG,CACnC,KAAoB,EACpB,MAAe,EACC,EAAE;IAClB,qBAAqB;IACrB,IAAI,KAAK,KAAK,IAAI,IAAI,MAAM,KAAK,QAAQ,EAAE,CAAC;QAC3C,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;IACvC,CAAC;SAAM,IAAI,KAAK,KAAK,IAAI,EAAE,CAAC;QAC3B,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC;IACtC,CAAC;IAED,MAAM,KAAK,GAAG,eAAe,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC;IAC7C,IAAI,MAAM,KAAK,QAAQ,EAAE,CAAC;QACzB,OAAO,EAAE,KAAK,EAAE,KAAK,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC;IAC/C,CAAC;IACD,OAAO,EAAE,KAAK,EAAE,KAAK,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC;AAC9C,CAAC,CAAC;AAEF;;;;;GAKG;AACH,MAAM,eAAe,GAAG,CAAC,KAAa,EAAE,MAAe,EAAY,EAAE;IACpE,MAAM,KAAK,GAAG,IAAI,MAAM,CAAC,MAAM,CAAC,UAAU,CAAC,GAAG,EAAE,QAAQ,CAAC,CAAC,CAAC;IAC3D,MAAM,KAAK,GAAG,KAAK,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;IACjC,IAAI,CAAC,KAAK,EAAE,CAAC;QACZ,MAAM,IAAI,KAAK,CACd,2BAA2B,KAAK,gCAAgC,MAAM,GAAG,CACzE,CAAC;IACH,CAAC;IACD,MAAM,CAAC,EAAE,GAAG,OAAO,CAAC,GAAG,KAAK,CAAC;IAC7B,OAAO,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,QAAQ,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC;AAC5C,CAAC,CAAC"}
@@ -0,0 +1,7 @@
1
+ import { type ReactNode } from 'react';
2
+ type Props = {
3
+ id: string;
4
+ label?: ReactNode;
5
+ };
6
+ export declare const FilterDescription: ({ id, label }: Props) => import("react/jsx-runtime").JSX.Element;
7
+ export {};
@@ -0,0 +1,3 @@
1
+ import { jsx as _jsx } from "react/jsx-runtime";
2
+ export const FilterDescription = ({ id, label }) => (_jsx("div", { id: `filter-description-${id}`, "aria-label": `filter-description`, className: "filter-description-lunatic", children: label }));
3
+ //# sourceMappingURL=FilterDescription.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"FilterDescription.js","sourceRoot":"","sources":["../../../src/components/FilterDescription/FilterDescription.tsx"],"names":[],"mappings":";AAOA,MAAM,CAAC,MAAM,iBAAiB,GAAG,CAAC,EAAE,EAAE,EAAE,KAAK,EAAS,EAAE,EAAE,CAAC,CAC1D,cACC,EAAE,EAAE,sBAAsB,EAAE,EAAE,gBAClB,oBAAoB,EAChC,SAAS,EAAC,4BAA4B,YAErC,KAAK,GACD,CACN,CAAC"}
@@ -0,0 +1,16 @@
1
+ import { jsx as _jsx } from "react/jsx-runtime";
2
+ import { render } from '@testing-library/react';
3
+ import { FilterDescription } from './FilterDescription';
4
+ import { describe, it, expect } from 'vitest';
5
+ describe('FilterDescription component', () => {
6
+ it('renders with correct label and aria-label', () => {
7
+ const id = '1';
8
+ const label = 'Filter description';
9
+ const { getByLabelText } = render(_jsx(FilterDescription, { id: id, label: label }));
10
+ const filterDescriptionElement = getByLabelText('filter-description');
11
+ expect(filterDescriptionElement).toHaveTextContent(label);
12
+ expect(filterDescriptionElement).toHaveClass('filter-description-lunatic');
13
+ expect(filterDescriptionElement).toHaveAttribute('id', `filter-description-${id}`);
14
+ });
15
+ });
16
+ //# sourceMappingURL=FilterDescription.spec.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"FilterDescription.spec.js","sourceRoot":"","sources":["../../../src/components/FilterDescription/FilterDescription.spec.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,wBAAwB,CAAC;AAChD,OAAO,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AACxD,OAAO,EAAE,QAAQ,EAAE,EAAE,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAE9C,QAAQ,CAAC,6BAA6B,EAAE,GAAG,EAAE;IAC5C,EAAE,CAAC,2CAA2C,EAAE,GAAG,EAAE;QACpD,MAAM,EAAE,GAAG,GAAG,CAAC;QACf,MAAM,KAAK,GAAG,oBAAoB,CAAC;QACnC,MAAM,EAAE,cAAc,EAAE,GAAG,MAAM,CAChC,KAAC,iBAAiB,IAAC,EAAE,EAAE,EAAE,EAAE,KAAK,EAAE,KAAK,GAAI,CAC3C,CAAC;QACF,MAAM,wBAAwB,GAAG,cAAc,CAAC,oBAAoB,CAAC,CAAC;QACtE,MAAM,CAAC,wBAAwB,CAAC,CAAC,iBAAiB,CAAC,KAAK,CAAC,CAAC;QAC1D,MAAM,CAAC,wBAAwB,CAAC,CAAC,WAAW,CAAC,4BAA4B,CAAC,CAAC;QAC3E,MAAM,CAAC,wBAAwB,CAAC,CAAC,eAAe,CAC/C,IAAI,EACJ,sBAAsB,EAAE,EAAE,CAC1B,CAAC;IACH,CAAC,CAAC,CAAC;AACJ,CAAC,CAAC,CAAC"}
@@ -0,0 +1,9 @@
1
+ import type { LunaticComponentProps } from '../type';
2
+ import type { LunaticError } from '../../use-lunatic/type';
3
+ export declare function Input({ handleChanges, response, errors, ...props }: LunaticComponentProps<'Input'>): import("react/jsx-runtime").JSX.Element;
4
+ type CustomProps = Omit<LunaticComponentProps<'Input'>, 'response' | 'handleChanges' | 'errors'> & {
5
+ onChange: (v: string) => void;
6
+ errors?: LunaticError[];
7
+ };
8
+ export declare const CustomInput: import("react").ComponentType<CustomProps>;
9
+ export {};
@@ -0,0 +1,15 @@
1
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
+ import classnames from 'classnames';
3
+ import { Label } from '../shared/Label/Label';
4
+ import { slottableComponent } from '../shared/HOC/slottableComponent';
5
+ import { ComponentErrors, getComponentErrors, } from '../shared/ComponentErrors/ComponentErrors';
6
+ import { Declarations } from '../shared/Declarations/Declarations';
7
+ export function Input({ handleChanges, response, errors, ...props }) {
8
+ return (_jsx(CustomInput, { ...props, onChange: (value) => handleChanges([{ name: response.name, value }]), errors: getComponentErrors(errors, props.id) }));
9
+ }
10
+ export const CustomInput = slottableComponent('Input', (props) => {
11
+ const { value, onChange, disabled, required, maxLength, label, description, id, errors, readOnly, declarations, } = props;
12
+ const labelId = `label-${id}`;
13
+ return (_jsxs("div", { className: classnames('lunatic-input'), children: [_jsx(Label, { htmlFor: id, id: labelId, description: description, children: label }), _jsx(Declarations, { type: "AFTER_QUESTION_TEXT", declarations: declarations, id: id }), _jsx("input", { id: id, "aria-labelledby": labelId, autoComplete: "off", type: "text", disabled: disabled, readOnly: readOnly, value: (value !== null && value !== void 0 ? value : '').toString(), onChange: (e) => onChange(e.target.value), "aria-required": required, required: required, maxLength: maxLength, "aria-invalid": !!errors }), _jsx(ComponentErrors, { errors: errors })] }));
14
+ });
15
+ //# sourceMappingURL=Input.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Input.js","sourceRoot":"","sources":["../../../src/components/Input/Input.tsx"],"names":[],"mappings":";AAAA,OAAO,UAAU,MAAM,YAAY,CAAC;AAEpC,OAAO,EAAE,KAAK,EAAE,MAAM,uBAAuB,CAAC;AAC9C,OAAO,EAAE,kBAAkB,EAAE,MAAM,kCAAkC,CAAC;AACtE,OAAO,EACN,eAAe,EACf,kBAAkB,GAClB,MAAM,2CAA2C,CAAC;AACnD,OAAO,EAAE,YAAY,EAAE,MAAM,qCAAqC,CAAC;AAGnE,MAAM,UAAU,KAAK,CAAC,EACrB,aAAa,EACb,QAAQ,EACR,MAAM,EACN,GAAG,KAAK,EACwB;IAChC,OAAO,CACN,KAAC,WAAW,OACP,KAAK,EACT,QAAQ,EAAE,CAAC,KAAK,EAAE,EAAE,CAAC,aAAa,CAAC,CAAC,EAAE,IAAI,EAAE,QAAQ,CAAC,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC,EACpE,MAAM,EAAE,kBAAkB,CAAC,MAAM,EAAE,KAAK,CAAC,EAAE,CAAC,GAC3C,CACF,CAAC;AACH,CAAC;AAUD,MAAM,CAAC,MAAM,WAAW,GAAG,kBAAkB,CAAc,OAAO,EAAE,CAAC,KAAK,EAAE,EAAE;IAC7E,MAAM,EACL,KAAK,EACL,QAAQ,EACR,QAAQ,EACR,QAAQ,EACR,SAAS,EACT,KAAK,EACL,WAAW,EACX,EAAE,EACF,MAAM,EACN,QAAQ,EACR,YAAY,GACZ,GAAG,KAAK,CAAC;IACV,MAAM,OAAO,GAAG,SAAS,EAAE,EAAE,CAAC;IAC9B,OAAO,CACN,eAAK,SAAS,EAAE,UAAU,CAAC,eAAe,CAAC,aAC1C,KAAC,KAAK,IAAC,OAAO,EAAE,EAAE,EAAE,EAAE,EAAE,OAAO,EAAE,WAAW,EAAE,WAAW,YACvD,KAAK,GACC,EACR,KAAC,YAAY,IACZ,IAAI,EAAC,qBAAqB,EAC1B,YAAY,EAAE,YAAY,EAC1B,EAAE,EAAE,EAAE,GACL,EACF,gBACC,EAAE,EAAE,EAAE,qBACW,OAAO,EACxB,YAAY,EAAC,KAAK,EAClB,IAAI,EAAC,MAAM,EACX,QAAQ,EAAE,QAAQ,EAClB,QAAQ,EAAE,QAAQ,EAClB,KAAK,EAAE,CAAC,KAAK,aAAL,KAAK,cAAL,KAAK,GAAI,EAAE,CAAC,CAAC,QAAQ,EAAE,EAC/B,QAAQ,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,mBAC1B,QAAQ,EACvB,QAAQ,EAAE,QAAQ,EAClB,SAAS,EAAE,SAAS,kBACN,CAAC,CAAC,MAAM,GACrB,EACF,KAAC,eAAe,IAAC,MAAM,EAAE,MAAM,GAAI,IAC9B,CACN,CAAC;AACH,CAAC,CAAC,CAAC"}
@@ -0,0 +1 @@
1
+ export {};
@@ -0,0 +1,52 @@
1
+ import { jsx as _jsx } from "react/jsx-runtime";
2
+ import { fireEvent, render, screen } from '@testing-library/react';
3
+ import { beforeEach, describe, expect, it, vi } from 'vitest';
4
+ import { Input } from './Input';
5
+ describe('Input', () => {
6
+ const mockOnChange = vi.fn();
7
+ const baseProps = {
8
+ value: 'input',
9
+ id: 'input',
10
+ response: { name: 'demo' },
11
+ handleChanges: mockOnChange,
12
+ };
13
+ beforeEach(() => {
14
+ mockOnChange.mockClear();
15
+ });
16
+ it('renders without crashing', () => {
17
+ const { container } = render(_jsx(Input, { ...baseProps, errors: undefined, description: "description" }));
18
+ expect(container).toMatchSnapshot();
19
+ });
20
+ it('renders label and input', () => {
21
+ const labelText = 'Enter a number';
22
+ const { container } = render(_jsx(Input, { ...baseProps, label: labelText, errors: undefined }));
23
+ const label = screen.getByText(labelText);
24
+ const input = container.querySelector('input[type="text"]');
25
+ expect(label).toBeInTheDocument();
26
+ expect(input).toBeInTheDocument();
27
+ });
28
+ it('calls onChange with parsed value', () => {
29
+ const { container } = render(_jsx(Input, { ...baseProps, errors: undefined }));
30
+ const input = container.querySelector('input[type="text"]');
31
+ fireEvent.change(input, { target: { value: 'Dupont' } });
32
+ expect(mockOnChange).toHaveBeenCalledTimes(1);
33
+ expect(mockOnChange).toHaveBeenCalledWith([
34
+ { ...baseProps.response, value: 'Dupont' },
35
+ ]);
36
+ });
37
+ it('disables input when disabled prop is true', () => {
38
+ const { container } = render(_jsx(Input, { ...baseProps, disabled: true, errors: undefined }));
39
+ const input = container.querySelector('input[type="text"]');
40
+ expect(input).toBeDisabled();
41
+ });
42
+ it('should handle readOnly', () => {
43
+ const { container } = render(_jsx(Input, { ...baseProps, id: "number", value: "toto", readOnly: true, errors: undefined }));
44
+ expect(container).toMatchSnapshot();
45
+ const input = container.querySelector('input[type="text"]');
46
+ expect(input).toHaveAttribute('readonly');
47
+ input.focus();
48
+ expect(input).toHaveFocus();
49
+ expect(input).toHaveValue('toto');
50
+ });
51
+ });
52
+ //# sourceMappingURL=Input.spec.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Input.spec.js","sourceRoot":"","sources":["../../../src/components/Input/Input.spec.tsx"],"names":[],"mappings":"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"}
@@ -0,0 +1,9 @@
1
+ import type { LunaticComponentProps } from '../type';
2
+ import type { LunaticError } from '../../use-lunatic/type';
3
+ export declare function InputNumber({ handleChanges, response, errors, decimals, ...props }: LunaticComponentProps<'InputNumber'>): import("react/jsx-runtime").JSX.Element;
4
+ type CustomProps = Omit<LunaticComponentProps<'InputNumber'>, 'response' | 'handleChanges' | 'errors'> & {
5
+ onChange: (v: number | null) => void;
6
+ errors?: LunaticError[];
7
+ };
8
+ export declare const CustomInputNumber: import("react").ComponentType<CustomProps>;
9
+ export {};
@@ -0,0 +1,15 @@
1
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
+ import { InputNumberThousand } from './InputNumberThousand';
3
+ import { Label } from '../shared/Label/Label';
4
+ import { ComponentErrors, getComponentErrors, } from '../shared/ComponentErrors/ComponentErrors';
5
+ import { slottableComponent } from '../shared/HOC/slottableComponent';
6
+ import { Declarations } from '../shared/Declarations/Declarations';
7
+ export function InputNumber({ handleChanges, response, errors, decimals, ...props }) {
8
+ return (_jsx(CustomInputNumber, { ...props, decimals: decimals !== null && decimals !== void 0 ? decimals : 0, onChange: (value) => handleChanges([{ name: response.name, value }]), errors: getComponentErrors(errors, props.id) }));
9
+ }
10
+ export const CustomInputNumber = slottableComponent('InputNumber', (props) => {
11
+ const { id, value, onChange, disabled, readOnly, max, decimals, unit, label, errors, required, description, declarations, } = props;
12
+ const labelId = `label-${id}`;
13
+ return (_jsxs("div", { className: "lunatic-input-number", children: [_jsx(Label, { htmlFor: id, id: labelId, description: description, children: label }), _jsx(Declarations, { type: "AFTER_QUESTION_TEXT", declarations: declarations, id: id }), _jsx(InputNumberThousand, { id: id, value: value, onChange: onChange, disabled: !!disabled, readOnly: !!readOnly, required: !!required, labelId: labelId, max: max, decimals: decimals, invalid: !!errors }), unit && _jsx("span", { children: unit }), _jsx(ComponentErrors, { errors: errors })] }));
14
+ });
15
+ //# sourceMappingURL=InputNumber.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"InputNumber.js","sourceRoot":"","sources":["../../../src/components/InputNumber/InputNumber.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AAE5D,OAAO,EAAE,KAAK,EAAE,MAAM,uBAAuB,CAAC;AAC9C,OAAO,EACN,eAAe,EACf,kBAAkB,GAClB,MAAM,2CAA2C,CAAC;AACnD,OAAO,EAAE,kBAAkB,EAAE,MAAM,kCAAkC,CAAC;AACtE,OAAO,EAAE,YAAY,EAAE,MAAM,qCAAqC,CAAC;AAGnE,MAAM,UAAU,WAAW,CAAC,EAC3B,aAAa,EACb,QAAQ,EACR,MAAM,EACN,QAAQ,EACR,GAAG,KAAK,EAC8B;IACtC,OAAO,CACN,KAAC,iBAAiB,OACb,KAAK,EACT,QAAQ,EAAE,QAAQ,aAAR,QAAQ,cAAR,QAAQ,GAAI,CAAC,EACvB,QAAQ,EAAE,CAAC,KAAK,EAAE,EAAE,CAAC,aAAa,CAAC,CAAC,EAAE,IAAI,EAAE,QAAQ,CAAC,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC,EACpE,MAAM,EAAE,kBAAkB,CAAC,MAAM,EAAE,KAAK,CAAC,EAAE,CAAC,GAC3C,CACF,CAAC;AACH,CAAC;AAUD,MAAM,CAAC,MAAM,iBAAiB,GAAG,kBAAkB,CAClD,aAAa,EACb,CAAC,KAAK,EAAE,EAAE;IACT,MAAM,EACL,EAAE,EACF,KAAK,EACL,QAAQ,EACR,QAAQ,EACR,QAAQ,EACR,GAAG,EACH,QAAQ,EACR,IAAI,EACJ,KAAK,EACL,MAAM,EACN,QAAQ,EACR,WAAW,EACX,YAAY,GACZ,GAAG,KAAK,CAAC;IACV,MAAM,OAAO,GAAG,SAAS,EAAE,EAAE,CAAC;IAC9B,OAAO,CACN,eAAK,SAAS,EAAC,sBAAsB,aACpC,KAAC,KAAK,IAAC,OAAO,EAAE,EAAE,EAAE,EAAE,EAAE,OAAO,EAAE,WAAW,EAAE,WAAW,YACvD,KAAK,GACC,EACR,KAAC,YAAY,IACZ,IAAI,EAAC,qBAAqB,EAC1B,YAAY,EAAE,YAAY,EAC1B,EAAE,EAAE,EAAE,GACL,EACF,KAAC,mBAAmB,IACnB,EAAE,EAAE,EAAE,EACN,KAAK,EAAE,KAAK,EACZ,QAAQ,EAAE,QAAQ,EAClB,QAAQ,EAAE,CAAC,CAAC,QAAQ,EACpB,QAAQ,EAAE,CAAC,CAAC,QAAQ,EACpB,QAAQ,EAAE,CAAC,CAAC,QAAQ,EACpB,OAAO,EAAE,OAAO,EAChB,GAAG,EAAE,GAAG,EACR,QAAQ,EAAE,QAAQ,EAClB,OAAO,EAAE,CAAC,CAAC,MAAM,GAChB,EACD,IAAI,IAAI,yBAAO,IAAI,GAAQ,EAC5B,KAAC,eAAe,IAAC,MAAM,EAAE,MAAM,GAAI,IAC9B,CACN,CAAC;AACH,CAAC,CACD,CAAC"}
@@ -0,0 +1 @@
1
+ export {};
@@ -0,0 +1,76 @@
1
+ import { jsx as _jsx } from "react/jsx-runtime";
2
+ import { fireEvent, render, screen } from '@testing-library/react';
3
+ import { beforeEach, describe, expect, it, vi } from 'vitest';
4
+ import { InputNumber } from './InputNumber';
5
+ describe('InputNumber', () => {
6
+ const mockOnChange = vi.fn();
7
+ const baseProps = {
8
+ handleChanges: mockOnChange,
9
+ response: { name: 'demo' },
10
+ value: 10,
11
+ id: 'number',
12
+ 'aria-labelledby': 'input',
13
+ };
14
+ beforeEach(() => {
15
+ mockOnChange.mockClear();
16
+ });
17
+ it('renders without crashing', () => {
18
+ const { container } = render(_jsx(InputNumber, { ...baseProps }));
19
+ expect(container).toMatchSnapshot();
20
+ });
21
+ it('renders label and input', () => {
22
+ const labelText = 'Enter a number';
23
+ const { container } = render(_jsx(InputNumber, { ...baseProps, label: labelText, handleChanges: mockOnChange }));
24
+ const label = screen.getByText(labelText);
25
+ const input = container.querySelector('input[type="text"]');
26
+ expect(label).toBeInTheDocument();
27
+ expect(input).toBeInTheDocument();
28
+ });
29
+ it('renders with value', () => {
30
+ const { container } = render(_jsx(InputNumber, { ...baseProps }));
31
+ const input = container.querySelector('input[type="text"]');
32
+ expect(input).toHaveValue('10');
33
+ });
34
+ it('renders with big value', () => {
35
+ const { container } = render(_jsx(InputNumber, { ...baseProps, value: 10000.45, decimals: 2 }));
36
+ const input = container.querySelector('input[type="text"]');
37
+ expect(input).toHaveValue('10,000.45');
38
+ });
39
+ it('calls onChange with parsed value', () => {
40
+ const { container } = render(_jsx(InputNumber, { ...baseProps, id: "number" }));
41
+ const input = container.querySelector('input[type="text"]');
42
+ fireEvent.change(input, { target: { value: '12' } });
43
+ expect(mockOnChange).toHaveBeenCalledTimes(1);
44
+ expect(mockOnChange).toHaveBeenCalledWith([
45
+ {
46
+ ...baseProps.response,
47
+ value: 12,
48
+ },
49
+ ]);
50
+ });
51
+ it('renders unit element if provided', () => {
52
+ const { getByText } = render(_jsx(InputNumber, { ...baseProps, id: "input-number-test", value: 5, label: "Input Number", unit: "kg" }));
53
+ const unit = getByText('kg');
54
+ expect(unit).toBeInTheDocument();
55
+ });
56
+ it('disables input when disabled prop is true', () => {
57
+ const { container } = render(_jsx(InputNumber, { ...baseProps, disabled: true }));
58
+ const input = container.querySelector('input[type="text"]');
59
+ expect(input).toBeDisabled();
60
+ });
61
+ it('should handle readOnly', () => {
62
+ const { container } = render(_jsx(InputNumber, { ...baseProps, value: 123, readOnly: true }));
63
+ expect(container).toMatchSnapshot();
64
+ const input = container.querySelector('input[type="text"]');
65
+ expect(input).toHaveAttribute('readonly');
66
+ input.focus();
67
+ expect(input).toHaveFocus();
68
+ expect(input).toHaveValue('123');
69
+ });
70
+ it('renders with unit', () => {
71
+ const { container } = render(_jsx(InputNumber, { ...baseProps, unit: "kg" }));
72
+ const unit = container.querySelector('span');
73
+ expect(unit).toHaveTextContent('kg');
74
+ });
75
+ });
76
+ //# sourceMappingURL=InputNumber.spec.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"InputNumber.spec.js","sourceRoot":"","sources":["../../../src/components/InputNumber/InputNumber.spec.tsx"],"names":[],"mappings":"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"}
@@ -0,0 +1,14 @@
1
+ type Props = {
2
+ id?: string;
3
+ onChange: (n: number | null) => void;
4
+ value?: number | null;
5
+ disabled?: boolean;
6
+ readOnly?: boolean;
7
+ required?: boolean;
8
+ labelId?: string;
9
+ max?: number;
10
+ decimals?: number;
11
+ invalid?: boolean;
12
+ };
13
+ export declare const InputNumberThousand: ({ id, onChange, value, disabled, readOnly, required, labelId, max, decimals, invalid, }: Props) => import("react/jsx-runtime").JSX.Element;
14
+ export {};
@@ -0,0 +1,20 @@
1
+ import { jsx as _jsx } from "react/jsx-runtime";
2
+ import classNames from 'classnames';
3
+ import { useCallback } from 'react';
4
+ import { NumericFormat, } from 'react-number-format';
5
+ import { inputNumberPropsI18N } from '../../i18n';
6
+ export const InputNumberThousand = ({ id, onChange, value, disabled, readOnly, required, labelId, max, decimals, invalid, }) => {
7
+ const handleChange = useCallback(function (e) {
8
+ var _a;
9
+ const val = (_a = e.floatValue) !== null && _a !== void 0 ? _a : null;
10
+ onChange(Number.isNaN(val) ? null : val);
11
+ }, [onChange]);
12
+ const isAllowed = useCallback((values) => {
13
+ const { floatValue } = values;
14
+ if (Number.isInteger(max) && floatValue && max)
15
+ return floatValue <= max || false;
16
+ return true;
17
+ }, [max]);
18
+ return (_jsx(NumericFormat, { id: id, className: classNames({ disabled }), onValueChange: handleChange, value: value !== null && value !== void 0 ? value : '', "aria-labelledby": labelId, disabled: disabled, readOnly: readOnly, required: required, lang: "en", isAllowed: isAllowed, allowedDecimalSeparators: inputNumberPropsI18N.allDecimalSeparators, decimalSeparator: inputNumberPropsI18N.decimalSeparator, decimalScale: decimals, allowLeadingZeros: true, thousandSeparator: inputNumberPropsI18N.thousandSeparator, inputMode: decimals ? 'decimal' : 'numeric', "aria-invalid": invalid }));
19
+ };
20
+ //# sourceMappingURL=InputNumberThousand.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"InputNumberThousand.js","sourceRoot":"","sources":["../../../src/components/InputNumber/InputNumberThousand.tsx"],"names":[],"mappings":";AAAA,OAAO,UAAU,MAAM,YAAY,CAAC;AACpC,OAAO,EAAE,WAAW,EAAE,MAAM,OAAO,CAAC;AACpC,OAAO,EACN,aAAa,GAGb,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EAAE,oBAAoB,EAAE,MAAM,YAAY,CAAC;AAelD,MAAM,CAAC,MAAM,mBAAmB,GAAG,CAAC,EACnC,EAAE,EACF,QAAQ,EACR,KAAK,EACL,QAAQ,EACR,QAAQ,EACR,QAAQ,EACR,OAAO,EACP,GAAG,EACH,QAAQ,EACR,OAAO,GACA,EAAE,EAAE;IACX,MAAM,YAAY,GAAG,WAAW,CAC/B,UAAU,CAAC;;QACV,MAAM,GAAG,GAAG,MAAA,CAAC,CAAC,UAAU,mCAAI,IAAI,CAAC;QACjC,QAAQ,CAAC,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC;IAC1C,CAAC,EACD,CAAC,QAAQ,CAAC,CACV,CAAC;IAEF,MAAM,SAAS,GAAG,WAAW,CAC5B,CAAC,MAA0B,EAAE,EAAE;QAC9B,MAAM,EAAE,UAAU,EAAE,GAAG,MAAM,CAAC;QAC9B,IAAI,MAAM,CAAC,SAAS,CAAC,GAAG,CAAC,IAAI,UAAU,IAAI,GAAG;YAC7C,OAAO,UAAU,IAAI,GAAG,IAAI,KAAK,CAAC;QACnC,OAAO,IAAI,CAAC;IACb,CAAC,EACD,CAAC,GAAG,CAAC,CACL,CAAC;IACF,OAAO,CACN,KAAC,aAAa,IACb,EAAE,EAAE,EAAE,EACN,SAAS,EAAE,UAAU,CAAC,EAAE,QAAQ,EAAE,CAAC,EACnC,aAAa,EAAE,YAAY,EAC3B,KAAK,EAAE,KAAK,aAAL,KAAK,cAAL,KAAK,GAAI,EAAE,qBACD,OAAO,EACxB,QAAQ,EAAE,QAAQ,EAClB,QAAQ,EAAE,QAAQ,EAClB,QAAQ,EAAE,QAAQ,EAClB,IAAI,EAAC,IAAI,EACT,SAAS,EAAE,SAAS,EACpB,wBAAwB,EAAE,oBAAoB,CAAC,oBAAoB,EACnE,gBAAgB,EAAE,oBAAoB,CAAC,gBAAgB,EACvD,YAAY,EAAE,QAAQ,EACtB,iBAAiB,QACjB,iBAAiB,EAAE,oBAAoB,CAAC,iBAAiB,EACzD,SAAS,EAAE,QAAQ,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,SAAS,kBAC7B,OAAO,GACpB,CACF,CAAC;AACH,CAAC,CAAC"}
@@ -0,0 +1,15 @@
1
+ import { type PropsWithChildren } from 'react';
2
+ import type { LunaticComponentProps } from '../type';
3
+ import type { LunaticError } from '../../use-lunatic/type';
4
+ /**
5
+ * Loop without specific markup (stack of subcomponents)
6
+ */
7
+ export declare function Loop({ lines, iterations, value, handleChanges, getComponents, errors, ...props }: LunaticComponentProps<'Loop'>): import("react/jsx-runtime").JSX.Element | null;
8
+ type CustomProps = Omit<LunaticComponentProps<'RosterForLoop' | 'Loop'>, 'response' | 'handleChanges' | 'errors' | 'lines' | 'iterations' | 'value' | 'getComponents'> & PropsWithChildren<{
9
+ errors?: LunaticError[];
10
+ addRow?: () => void;
11
+ removeRow?: () => void;
12
+ canControlRows?: boolean;
13
+ }>;
14
+ export declare const CustomLoop: import("react").ComponentType<CustomProps>;
15
+ export {};
@@ -0,0 +1,56 @@
1
+ import { jsx as _jsx, Fragment as _Fragment, jsxs as _jsxs } from "react/jsx-runtime";
2
+ import { useCallback, useState } from 'react';
3
+ import D from '../../i18n';
4
+ import { times } from '../../utils/array';
5
+ import { LunaticComponents } from '../LunaticComponents';
6
+ import { blockedInLoopComponents } from './constant';
7
+ import { slottableComponent } from '../shared/HOC/slottableComponent';
8
+ import { Label } from '../shared/Label/Label';
9
+ import { Declarations } from '../shared/Declarations/Declarations';
10
+ import { Button } from '../shared/Button/Button';
11
+ import { ComponentErrors, getComponentErrors, } from '../shared/ComponentErrors/ComponentErrors';
12
+ /**
13
+ * Loop without specific markup (stack of subcomponents)
14
+ */
15
+ export function Loop({ lines, iterations, value, handleChanges, getComponents, errors, ...props }) {
16
+ var _a, _b;
17
+ const min = (_a = lines === null || lines === void 0 ? void 0 : lines.min) !== null && _a !== void 0 ? _a : 0;
18
+ const max = (_b = lines === null || lines === void 0 ? void 0 : lines.max) !== null && _b !== void 0 ? _b : Infinity;
19
+ const [nbRows, setNbRows] = useState(() => {
20
+ return Math.max(iterations, min);
21
+ });
22
+ const addRow = useCallback(() => {
23
+ if (nbRows < max) {
24
+ setNbRows(nbRows + 1);
25
+ }
26
+ }, [max, nbRows]);
27
+ const removeRow = useCallback(() => {
28
+ if (nbRows > 1) {
29
+ const newNbRows = nbRows - 1;
30
+ setNbRows(newNbRows);
31
+ // Downsize all variables by 1
32
+ const newResponses = Object.entries(value).map(([k, v]) => {
33
+ return {
34
+ name: k,
35
+ value: v === null || v === void 0 ? void 0 : v.filter((_, i) => i < newNbRows),
36
+ };
37
+ });
38
+ handleChanges(newResponses);
39
+ }
40
+ }, [nbRows, handleChanges, value]);
41
+ if (nbRows <= 0) {
42
+ return null;
43
+ }
44
+ return (_jsx(CustomLoop, { ...props, errors: getComponentErrors(errors, props.id), addRow: nbRows === max ? undefined : addRow, removeRow: nbRows === 1 ? undefined : removeRow, canControlRows: min !== max && Number.isFinite(max), children: times(nbRows, (n) => (_jsx(LunaticComponents, { blocklist: blockedInLoopComponents, components: getComponents(n), componentProps: (c) => ({
45
+ ...props,
46
+ ...c,
47
+ iteration: n,
48
+ id: `${c.id}-${n}`,
49
+ errors,
50
+ }) }, n))) }));
51
+ }
52
+ export const CustomLoop = slottableComponent('Loop', (props) => {
53
+ const { declarations, id, label, canControlRows, children, errors, addRow, removeRow, } = props;
54
+ return (_jsxs(_Fragment, { children: [_jsx(Label, { htmlFor: id, id: `label-${id}`, children: label }), _jsx(Declarations, { type: "AFTER_QUESTION_TEXT", declarations: declarations, id: id }), children, _jsx(ComponentErrors, { errors: errors }), canControlRows && (_jsxs(_Fragment, { children: [_jsx(Button, { onClick: addRow, disabled: !addRow, children: D.DEFAULT_BUTTON_ADD }), _jsx(Button, { onClick: removeRow, disabled: !removeRow, children: D.DEFAULT_BUTTON_REMOVE })] }))] }));
55
+ });
56
+ //# sourceMappingURL=Loop.js.map