@inseefr/lunatic 2.4.2 → 2.4.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (539) hide show
  1. package/lib/components/button/__snapshots__/lunatic-button.spec.tsx.snap +80 -0
  2. package/lib/components/button/lunatic-button.js +1 -7
  3. package/lib/components/checkbox/checkbox-boolean/html/checkbox-boolean.js +7 -27
  4. package/lib/components/checkbox/checkbox-boolean/html/checkbox-boolean.spec.js +10 -7
  5. package/lib/components/checkbox/checkbox-boolean/lunatic-checkbox-boolean.js +2 -4
  6. package/lib/components/checkbox/checkbox-group/checkbox-group-content.js +22 -26
  7. package/lib/components/checkbox/checkbox-group/html/checkbox-group-content.js +18 -29
  8. package/lib/components/checkbox/checkbox-group/html/checkbox-group.js +0 -17
  9. package/lib/components/checkbox/checkbox-group/lunatic-checkbox-group.js +9 -4
  10. package/lib/components/checkbox/checkbox-one/html/checkbox-one.js +0 -19
  11. package/lib/components/checkbox/checkbox-one/html/checkbox-one.spec.js +6 -11
  12. package/lib/components/checkbox/checkbox-one/lunatic-checkbox-one.js +0 -2
  13. package/lib/components/checkbox/commons/checkbox-option.js +3 -21
  14. package/lib/components/checkbox/commons/checkbox-option.spec.js +8 -9
  15. package/lib/components/commons/components/combo-box/combo-box-container.js +4 -16
  16. package/lib/components/commons/components/combo-box/combo-box-container.spec.js +5 -5
  17. package/lib/components/commons/components/combo-box/combo-box-content.js +10 -8
  18. package/lib/components/commons/components/combo-box/combo-box.js +43 -77
  19. package/lib/components/commons/components/combo-box/combo-box.scss +2 -3
  20. package/lib/components/commons/components/combo-box/{state-management/reducer/reduce-on-focus.js → combo-box.stories.js} +43 -8
  21. package/lib/components/commons/components/combo-box/combo-box.type.js +5 -0
  22. package/lib/components/commons/components/combo-box/panel/option-container.js +5 -10
  23. package/lib/components/commons/components/combo-box/panel/option-container.spec.js +3 -4
  24. package/lib/components/commons/components/combo-box/panel/panel-container.js +4 -7
  25. package/lib/components/commons/components/combo-box/panel/panel-container.spec.js +14 -16
  26. package/lib/components/commons/components/combo-box/panel/panel.js +26 -46
  27. package/lib/components/commons/components/combo-box/panel/panel.spec.js +22 -20
  28. package/lib/components/commons/components/combo-box/selection/__snapshots__/selection.spec.jsx.snap +1 -1
  29. package/lib/components/commons/components/combo-box/selection/__snapshots__/selection.spec.tsx.snap +82 -0
  30. package/lib/components/commons/components/combo-box/selection/delete.js +22 -30
  31. package/lib/components/commons/components/combo-box/selection/delete.spec.js +9 -9
  32. package/lib/components/commons/components/combo-box/selection/displayLabelOrInput.js +6 -9
  33. package/lib/components/commons/components/combo-box/selection/displayLabelOrInput.spec.js +9 -10
  34. package/lib/components/commons/components/combo-box/selection/input.js +5 -5
  35. package/lib/components/commons/components/combo-box/selection/label-selection.js +3 -2
  36. package/lib/components/commons/components/combo-box/selection/label-selection.spec.js +22 -18
  37. package/lib/components/commons/components/combo-box/selection/selection-container.js +5 -8
  38. package/lib/components/commons/components/combo-box/selection/selection-container.spec.js +4 -5
  39. package/lib/components/commons/components/combo-box/selection/selection.js +11 -18
  40. package/lib/components/commons/components/combo-box/selection/selection.spec.js +25 -36
  41. package/lib/components/commons/components/combo-box/state-management/actions.js +21 -24
  42. package/lib/components/commons/components/combo-box/state-management/index.js +10 -18
  43. package/lib/components/commons/components/combo-box/state-management/{reducer/reduce-on-keydown → reduce-on-keydown}/keyboard-key-codes.js +2 -4
  44. package/lib/components/commons/components/combo-box/state-management/{reducer/reduce-on-keydown → reduce-on-keydown}/on-arrow-down.js +5 -7
  45. package/lib/components/commons/components/combo-box/state-management/{reducer/reduce-on-keydown → reduce-on-keydown}/on-arrow-up.js +5 -7
  46. package/lib/components/commons/components/combo-box/state-management/{reducer/reduce-on-keydown → reduce-on-keydown}/on-end.js +4 -6
  47. package/lib/components/commons/components/combo-box/state-management/{reducer/reduce-on-keydown → reduce-on-keydown}/on-enter.js +4 -6
  48. package/lib/components/commons/components/combo-box/state-management/{reducer/reduce-on-keydown → reduce-on-keydown}/on-escape.js +3 -5
  49. package/lib/components/commons/components/combo-box/state-management/{reducer/reduce-on-keydown → reduce-on-keydown}/on-home.js +4 -6
  50. package/lib/components/commons/components/combo-box/state-management/{reducer/reduce-on-keydown → reduce-on-keydown}/on-tab.js +3 -5
  51. package/lib/components/commons/components/combo-box/state-management/reduce-on-keydown/reduce-on-keydown.js +40 -0
  52. package/lib/components/commons/components/combo-box/state-management/reducer.js +53 -0
  53. package/lib/components/commons/components/default-label-renderer.js +0 -10
  54. package/lib/components/commons/components/default-label-renderer.spec.js +1 -1
  55. package/lib/components/commons/components/default-option-renderer.js +1 -2
  56. package/lib/components/commons/components/description.js +9 -7
  57. package/lib/components/commons/components/dragger/dragger.js +5 -15
  58. package/lib/components/commons/components/dragger/dragger.spec.js +10 -1
  59. package/lib/components/commons/components/errors/errors.js +26 -30
  60. package/lib/components/commons/components/errors/errors.spec.js +13 -7
  61. package/lib/components/commons/components/fab/fab.js +7 -21
  62. package/lib/components/commons/components/fab/fab.spec.js +1 -1
  63. package/lib/components/commons/components/field-container/field-container.js +5 -19
  64. package/lib/components/commons/components/html-table/index.js +12 -13
  65. package/lib/components/commons/components/html-table/table.js +3 -11
  66. package/lib/components/commons/components/html-table/table.spec.js +4 -6
  67. package/lib/components/commons/components/html-table/tbody.js +3 -13
  68. package/lib/components/commons/components/html-table/tbody.spec.js +4 -6
  69. package/lib/components/commons/components/html-table/td.js +3 -18
  70. package/lib/components/commons/components/html-table/td.spec.js +4 -6
  71. package/lib/components/commons/components/html-table/th.js +3 -17
  72. package/lib/components/commons/components/html-table/th.spec.js +6 -8
  73. package/lib/components/commons/components/html-table/thead.js +3 -12
  74. package/lib/components/commons/components/html-table/thead.spec.js +3 -4
  75. package/lib/components/commons/components/html-table/tr.js +3 -13
  76. package/lib/components/commons/components/html-table/tr.spec.js +8 -14
  77. package/lib/components/commons/components/is-network/is-network.js +2 -2
  78. package/lib/components/commons/components/is-network/use-online-status.js +2 -2
  79. package/lib/components/commons/components/is-network/use-online-status.spec.js +0 -1
  80. package/lib/components/commons/components/label/label.spec.js +4 -5
  81. package/lib/components/commons/components/lunatic-component-with-label.js +5 -23
  82. package/lib/components/commons/components/lunatic-component-without-label.js +11 -38
  83. package/lib/components/commons/components/missing/missing.js +3 -1
  84. package/lib/components/commons/components/nothing-to-display.spec.js +2 -3
  85. package/lib/components/commons/components/orchestrated-component.js +1 -3
  86. package/lib/components/commons/components/variable-status/variable-status.js +7 -2
  87. package/lib/components/commons/create-customizable-field.js +2 -3
  88. package/lib/components/commons/create-row-orchestrator.js +10 -8
  89. package/lib/components/commons/icons/{checkbox-checked.icon.js → checkbox-checked-icon.js} +4 -8
  90. package/lib/components/commons/icons/{checkbox-unchecked.icon.js → checkbox-unchecked-icon.js} +4 -8
  91. package/lib/components/commons/icons/{closed.icon.js → closed-icon.js} +4 -6
  92. package/lib/components/commons/icons/{cross.icon.js → cross-icon.js} +4 -6
  93. package/lib/components/commons/icons/icon-props.js +5 -0
  94. package/lib/components/commons/icons/index.js +20 -21
  95. package/lib/components/commons/icons/{load.icon.js → load-icon.js} +5 -9
  96. package/lib/components/commons/icons/lunatic-icon.js +3 -6
  97. package/lib/components/commons/icons/{network.icon.js → network-icon.js} +5 -9
  98. package/lib/components/commons/icons/{on-drag.icon.js → on-drag-icon.js} +5 -9
  99. package/lib/components/commons/icons/{opened.icon.js → opened-icon.js} +4 -8
  100. package/lib/components/commons/icons/{radio-checked.icon.js → radio-checked-icon.js} +3 -4
  101. package/lib/components/commons/icons/{radio-unchecked.icon.js → radio-unchecked-icon.js} +4 -8
  102. package/lib/components/commons/index.js +6 -23
  103. package/lib/components/commons/safety-label.js +5 -6
  104. package/lib/components/commons/use-document-add-event-listener.js +11 -71
  105. package/lib/components/commons/use-on-handle-change.spec.js +6 -2
  106. package/lib/components/commons/use-options-keydown.js +1 -2
  107. package/lib/components/component-set/html/component-set-component-container.js +3 -3
  108. package/lib/components/component-set/html/component-set-components.js +15 -6
  109. package/lib/components/component-set/html/component-set.js +0 -2
  110. package/lib/components/component-set/html/legend/legend.js +11 -12
  111. package/lib/components/component-set/index.js +0 -7
  112. package/lib/components/component-set/lunatic-component-set.js +3 -14
  113. package/lib/components/datepicker/html/datepicker-input.js +1 -1
  114. package/lib/components/datepicker/html/datepicker.js +2 -15
  115. package/lib/components/datepicker/lunatic-datepicker.js +1 -1
  116. package/lib/components/declarations/declarations-after-text.js +0 -2
  117. package/lib/components/declarations/declarations.js +5 -11
  118. package/lib/components/dropdown/html/dropdown-simple/simple-label-renderer.js +0 -8
  119. package/lib/components/dropdown/html/dropdown-simple/simple-option-renderer.js +1 -1
  120. package/lib/components/dropdown/html/dropdown-writable/filter-tools/filter-options.js +11 -19
  121. package/lib/components/dropdown/html/dropdown-writable/filter-tools/filter-options.spec.js +106 -0
  122. package/lib/components/dropdown/html/dropdown-writable/filter-tools/get-label.js +4 -3
  123. package/lib/components/dropdown/html/dropdown-writable/filter-tools/letters-matching.js +1 -1
  124. package/lib/components/dropdown/html/dropdown-writable/filter-tools/prepare-prefix.js +4 -1
  125. package/lib/components/dropdown/html/dropdown-writable/writable-label-renderer.js +0 -9
  126. package/lib/components/dropdown/lunatic-dropdown.js +0 -17
  127. package/lib/components/index.js +159 -14
  128. package/lib/components/input/html/input.js +4 -24
  129. package/lib/components/input/lunatic-input.js +0 -1
  130. package/lib/components/input-number/html/__snapshots__/input-number.spec.tsx.snap +94 -0
  131. package/lib/components/input-number/html/input-number-default.js +7 -28
  132. package/lib/components/input-number/html/input-number-thousand.js +5 -4
  133. package/lib/components/input-number/html/input-number.js +12 -35
  134. package/lib/components/input-number/html/{inpute-number.spec.js → input-number.spec.js} +15 -16
  135. package/lib/components/input-number/lunatic-input-number.js +0 -1
  136. package/lib/components/loop/block-for-loop/block-for-loop.js +41 -46
  137. package/lib/components/loop/block-for-loop/row.js +31 -33
  138. package/lib/components/loop/commons/handle-row-button.js +2 -2
  139. package/lib/components/loop/commons/row-component.js +4 -2
  140. package/lib/components/loop/loop.js +2 -5
  141. package/lib/components/loop/roster-for-loop/body.js +17 -21
  142. package/lib/components/loop/roster-for-loop/header.js +16 -16
  143. package/lib/components/loop/roster-for-loop/roster-for-loop.js +7 -12
  144. package/lib/components/loop/roster-for-loop/roster-table.js +22 -21
  145. package/lib/components/loop/roster-for-loop/row.js +45 -35
  146. package/lib/components/modal-controls/close-or-skip.js +1 -2
  147. package/lib/components/modal-controls/close-or-skip.spec.js +0 -16
  148. package/lib/components/modal-controls/modal-container.spec.js +0 -1
  149. package/lib/components/modal-controls/modal-controls.js +3 -5
  150. package/lib/components/modal-controls/modal-controls.spec.js +25 -16
  151. package/lib/components/pairwise-links/orchestrator.js +10 -8
  152. package/lib/components/pairwise-links/pairwise-links.js +8 -11
  153. package/lib/components/pairwise-links/row.js +15 -18
  154. package/lib/components/radio/html/radio-group-content.js +25 -21
  155. package/lib/components/radio/html/radio-group-content.spec.js +1 -2
  156. package/lib/components/radio/html/radio-group.js +0 -27
  157. package/lib/components/radio/html/radio-option.js +36 -32
  158. package/lib/components/radio/html/radio-option.spec.js +8 -0
  159. package/lib/components/radio/lunatic-radio-group.js +2 -6
  160. package/lib/components/roundabout/components/roundabout-it-button.js +2 -4
  161. package/lib/components/roundabout/lunatic-roundabout.js +0 -12
  162. package/lib/components/roundabout/roundabout.js +7 -21
  163. package/lib/components/sequence/sequence.js +0 -2
  164. package/lib/components/sequence/sequence.spec.js +9 -6
  165. package/lib/components/subsequence/subsequence.spec.js +7 -6
  166. package/lib/components/suggester/find-best-label/find-best-label.js +8 -13
  167. package/lib/components/suggester/html/suggester.js +24 -53
  168. package/lib/components/suggester/idb-suggester/check-store.js +3 -1
  169. package/lib/components/suggester/idb-suggester/idb-suggester.js +4 -22
  170. package/lib/components/suggester/idb-suggester/suggester-status.js +3 -3
  171. package/lib/components/suggester/lunatic-suggester.js +20 -63
  172. package/lib/components/suggester/searching/create-searching.js +6 -8
  173. package/lib/components/suggester-loader-widget/loader-row.js +4 -29
  174. package/lib/components/suggester-loader-widget/loader.js +8 -10
  175. package/lib/components/suggester-loader-widget/widget.js +6 -16
  176. package/lib/components/switch/html/switch.js +7 -29
  177. package/lib/components/switch/lunatic-switch.js +6 -14
  178. package/lib/components/table/cell.js +12 -23
  179. package/lib/components/table/header.js +23 -23
  180. package/lib/components/table/lunatic-table.js +3 -40
  181. package/lib/components/table/row.js +2 -4
  182. package/lib/components/table/table-orchestrator.js +10 -22
  183. package/lib/components/textarea/html/textarea.js +3 -3
  184. package/lib/components/textarea/lunatic-textarea.js +0 -1
  185. package/lib/hooks/use-ref-sync.js +15 -0
  186. package/lib/src/components/button/index.d.ts +1 -0
  187. package/lib/src/components/button/lunatic-button.d.ts +10 -0
  188. package/lib/src/components/button/lunatic-button.spec.d.ts +1 -0
  189. package/lib/src/components/checkbox/checkbox-boolean/html/checkbox-boolean.d.ts +13 -0
  190. package/lib/src/components/checkbox/checkbox-boolean/html/checkbox-boolean.spec.d.ts +1 -0
  191. package/lib/src/components/checkbox/checkbox-boolean/index.d.ts +1 -0
  192. package/lib/src/components/checkbox/checkbox-boolean/lunatic-checkbox-boolean.d.ts +9 -0
  193. package/lib/src/components/checkbox/checkbox-group/checkbox-group-content.d.ts +9 -0
  194. package/lib/src/components/checkbox/checkbox-group/html/checkbox-group-content.d.ts +9 -0
  195. package/lib/src/components/checkbox/checkbox-group/html/checkbox-group-content.spec.d.ts +1 -0
  196. package/lib/src/components/checkbox/checkbox-group/html/checkbox-group.d.ts +14 -0
  197. package/lib/src/components/checkbox/checkbox-group/index.d.ts +1 -0
  198. package/lib/src/components/checkbox/checkbox-group/lunatic-checkbox-group.d.ts +11 -0
  199. package/lib/src/components/checkbox/checkbox-one/html/checkbox-one.d.ts +5 -0
  200. package/lib/src/components/checkbox/checkbox-one/html/checkbox-one.spec.d.ts +1 -0
  201. package/lib/src/components/checkbox/checkbox-one/index.d.ts +1 -0
  202. package/lib/src/components/checkbox/checkbox-one/lunatic-checkbox-one.d.ts +4 -0
  203. package/lib/src/components/checkbox/commons/checkbox-option.d.ts +15 -0
  204. package/lib/src/components/checkbox/commons/checkbox-option.spec.d.ts +1 -0
  205. package/lib/src/components/checkbox/commons/getShortcutKey.d.ts +1 -0
  206. package/lib/src/components/checkbox/commons/index.d.ts +1 -0
  207. package/lib/src/components/checkbox/index.d.ts +3 -0
  208. package/lib/src/components/commons/components/combo-box/combo-box-container.d.ts +8 -0
  209. package/lib/src/components/commons/components/combo-box/combo-box-container.spec.d.ts +1 -0
  210. package/lib/src/components/commons/components/combo-box/combo-box-content.d.ts +9 -0
  211. package/lib/src/components/commons/components/combo-box/combo-box.d.ts +21 -0
  212. package/lib/src/components/commons/components/combo-box/combo-box.stories.d.ts +27 -0
  213. package/lib/src/components/commons/components/combo-box/combo-box.type.d.ts +8 -0
  214. package/lib/src/components/commons/components/combo-box/index.d.ts +1 -0
  215. package/lib/src/components/commons/components/combo-box/panel/option-container.d.ts +8 -0
  216. package/lib/src/components/commons/components/combo-box/panel/option-container.spec.d.ts +1 -0
  217. package/lib/src/components/commons/components/combo-box/panel/panel-container.d.ts +8 -0
  218. package/lib/src/components/commons/components/combo-box/panel/panel-container.spec.d.ts +1 -0
  219. package/lib/src/components/commons/components/combo-box/panel/panel.d.ts +17 -0
  220. package/lib/src/components/commons/components/combo-box/panel/panel.spec.d.ts +1 -0
  221. package/lib/src/components/commons/components/combo-box/selection/delete.d.ts +9 -0
  222. package/lib/src/components/commons/components/combo-box/selection/delete.spec.d.ts +1 -0
  223. package/lib/src/components/commons/components/combo-box/selection/displayLabelOrInput.d.ts +5 -0
  224. package/lib/src/components/commons/components/combo-box/selection/displayLabelOrInput.spec.d.ts +1 -0
  225. package/lib/src/components/commons/components/combo-box/selection/input.d.ts +6 -0
  226. package/lib/src/components/commons/components/combo-box/selection/label-selection.d.ts +20 -0
  227. package/lib/src/components/commons/components/combo-box/selection/label-selection.spec.d.ts +1 -0
  228. package/lib/src/components/commons/components/combo-box/selection/selection-container.d.ts +10 -0
  229. package/lib/src/components/commons/components/combo-box/selection/selection-container.spec.d.ts +1 -0
  230. package/lib/src/components/commons/components/combo-box/selection/selection.d.ts +11 -0
  231. package/lib/src/components/commons/components/combo-box/selection/selection.spec.d.ts +1 -0
  232. package/lib/src/components/commons/components/combo-box/state-management/actions.d.ts +78 -0
  233. package/lib/src/components/commons/components/combo-box/state-management/index.d.ts +9 -0
  234. package/lib/src/components/commons/components/combo-box/state-management/reduce-on-init.d.ts +4 -0
  235. package/lib/src/components/commons/components/combo-box/state-management/reduce-on-keydown/keyboard-key-codes.d.ts +9 -0
  236. package/lib/src/components/commons/components/combo-box/state-management/reduce-on-keydown/on-arrow-down.d.ts +2 -0
  237. package/lib/src/components/commons/components/combo-box/state-management/reduce-on-keydown/on-arrow-up.d.ts +2 -0
  238. package/lib/src/components/commons/components/combo-box/state-management/reduce-on-keydown/on-end.d.ts +2 -0
  239. package/lib/src/components/commons/components/combo-box/state-management/reduce-on-keydown/on-enter.d.ts +2 -0
  240. package/lib/src/components/commons/components/combo-box/state-management/reduce-on-keydown/on-escape.d.ts +2 -0
  241. package/lib/src/components/commons/components/combo-box/state-management/reduce-on-keydown/on-home.d.ts +2 -0
  242. package/lib/src/components/commons/components/combo-box/state-management/reduce-on-keydown/on-tab.d.ts +2 -0
  243. package/lib/src/components/commons/components/combo-box/state-management/reduce-on-keydown/reduce-on-keydown.d.ts +9 -0
  244. package/lib/src/components/commons/components/combo-box/state-management/reducer.d.ts +3 -0
  245. package/lib/src/components/commons/components/default-label-renderer.d.ts +9 -0
  246. package/lib/src/components/commons/components/default-label-renderer.spec.d.ts +1 -0
  247. package/lib/src/components/commons/components/default-option-renderer.d.ts +8 -0
  248. package/lib/src/components/commons/components/default-option-renderer.spec.d.ts +1 -0
  249. package/lib/src/components/commons/components/description.d.ts +22 -0
  250. package/lib/src/components/commons/components/description.spec.d.ts +1 -0
  251. package/lib/src/components/commons/components/dragger/dragger.d.ts +17 -0
  252. package/lib/src/components/commons/components/dragger/dragger.spec.d.ts +1 -0
  253. package/lib/src/components/commons/components/dragger/index.d.ts +1 -0
  254. package/lib/src/components/commons/components/errors/errors.d.ts +9 -0
  255. package/lib/src/components/commons/components/errors/errors.spec.d.ts +1 -0
  256. package/lib/src/components/commons/components/errors/index.d.ts +1 -0
  257. package/lib/src/components/commons/components/fab/fab.d.ts +7 -0
  258. package/lib/src/components/commons/components/fab/fab.spec.d.ts +1 -0
  259. package/lib/src/components/commons/components/fab/index.d.ts +1 -0
  260. package/lib/src/components/commons/components/field-container/field-container.d.ts +6 -0
  261. package/lib/src/components/commons/components/field-container/filed-container.spec.d.ts +1 -0
  262. package/lib/src/components/commons/components/field-container/index.d.ts +1 -0
  263. package/lib/src/components/commons/components/fieldset.d.ts +13 -0
  264. package/lib/src/components/commons/components/fieldset.spec.d.ts +1 -0
  265. package/lib/src/components/commons/components/html-table/index.d.ts +6 -0
  266. package/lib/src/components/commons/components/html-table/table.d.ts +8 -0
  267. package/lib/src/components/commons/components/html-table/table.spec.d.ts +1 -0
  268. package/lib/src/components/commons/components/html-table/tbody.d.ts +7 -0
  269. package/lib/src/components/commons/components/html-table/tbody.spec.d.ts +1 -0
  270. package/lib/src/components/commons/components/html-table/td.d.ts +11 -0
  271. package/lib/src/components/commons/components/html-table/td.spec.d.ts +1 -0
  272. package/lib/src/components/commons/components/html-table/th.d.ts +11 -0
  273. package/lib/src/components/commons/components/html-table/th.spec.d.ts +1 -0
  274. package/lib/src/components/commons/components/html-table/thead.d.ts +7 -0
  275. package/lib/src/components/commons/components/html-table/thead.spec.d.ts +1 -0
  276. package/lib/src/components/commons/components/html-table/tr.d.ts +8 -0
  277. package/lib/src/components/commons/components/html-table/tr.spec.d.ts +1 -0
  278. package/lib/src/components/commons/components/is-network/index.d.ts +1 -0
  279. package/lib/src/components/commons/components/is-network/is-network.d.ts +7 -0
  280. package/lib/src/components/commons/components/is-network/is-network.spec.d.ts +1 -0
  281. package/lib/src/components/commons/components/is-network/use-online-status.d.ts +2 -0
  282. package/lib/src/components/commons/components/is-network/use-online-status.spec.d.ts +1 -0
  283. package/lib/src/components/commons/components/label/index.d.ts +1 -0
  284. package/lib/src/components/commons/components/label/label.d.ts +14 -0
  285. package/lib/src/components/commons/components/label/label.spec.d.ts +1 -0
  286. package/lib/src/components/commons/components/lunatic-component-with-label.d.ts +12 -0
  287. package/lib/src/components/commons/components/lunatic-component-without-label.d.ts +12 -0
  288. package/lib/src/components/commons/components/missing/index.d.ts +1 -0
  289. package/lib/src/components/commons/components/missing/missing.d.ts +14 -0
  290. package/lib/src/components/commons/components/missing/missing.spec.d.ts +1 -0
  291. package/lib/src/components/commons/components/nothing-to-display.d.ts +3 -0
  292. package/lib/src/components/commons/components/nothing-to-display.spec.d.ts +1 -0
  293. package/lib/src/components/commons/components/orchestrated-component.d.ts +10 -0
  294. package/lib/src/components/commons/components/variable-status/img/index.d.ts +2 -0
  295. package/lib/src/components/commons/components/variable-status/index.d.ts +1 -0
  296. package/lib/src/components/commons/components/variable-status/variable-status.d.ts +16 -0
  297. package/lib/src/components/commons/components/variable-status/variable-status.spec.d.ts +1 -0
  298. package/lib/src/components/commons/create-customizable-field.d.ts +3 -0
  299. package/lib/src/components/commons/create-row-orchestrator.d.ts +31 -0
  300. package/lib/src/components/commons/icons/checkbox-checked-icon.d.ts +3 -0
  301. package/lib/src/components/commons/icons/checkbox-unchecked-icon.d.ts +3 -0
  302. package/lib/src/components/commons/icons/closed-icon.d.ts +3 -0
  303. package/lib/src/components/commons/icons/cross-icon.d.ts +3 -0
  304. package/lib/src/components/commons/icons/icon-props.d.ts +5 -0
  305. package/lib/src/components/commons/icons/index.d.ts +10 -0
  306. package/lib/src/components/commons/icons/load-icon.d.ts +3 -0
  307. package/lib/src/components/commons/icons/lunatic-icon.d.ts +5 -0
  308. package/lib/src/components/commons/icons/network-icon.d.ts +3 -0
  309. package/lib/src/components/commons/icons/on-drag-icon.d.ts +3 -0
  310. package/lib/src/components/commons/icons/opened-icon.d.ts +3 -0
  311. package/lib/src/components/commons/icons/radio-checked-icon.d.ts +4 -0
  312. package/lib/src/components/commons/icons/radio-unchecked-icon.d.ts +3 -0
  313. package/lib/src/components/commons/index.d.ts +17 -0
  314. package/lib/src/components/commons/safety-label.d.ts +3 -0
  315. package/lib/src/components/commons/use-document-add-event-listener.d.ts +2 -0
  316. package/lib/src/components/commons/use-on-handle-change.d.ts +12 -0
  317. package/lib/src/components/commons/use-on-handle-change.spec.d.ts +1 -0
  318. package/lib/src/components/commons/use-options-keydown.d.ts +7 -0
  319. package/lib/src/components/component-set/html/component-set-component-container.d.ts +6 -0
  320. package/lib/src/components/component-set/html/component-set-components.d.ts +7 -0
  321. package/lib/src/components/component-set/html/component-set.d.ts +9 -0
  322. package/lib/src/components/component-set/html/legend/index.d.ts +1 -0
  323. package/lib/src/components/component-set/html/legend/legend.d.ts +8 -0
  324. package/lib/src/components/component-set/index.d.ts +1 -0
  325. package/lib/src/components/component-set/lunatic-component-set.d.ts +4 -0
  326. package/lib/src/components/datepicker/html/datepicker-container.d.ts +3 -0
  327. package/lib/src/components/datepicker/html/datepicker-input.d.ts +13 -0
  328. package/lib/src/components/datepicker/html/datepicker.d.ts +17 -0
  329. package/lib/src/components/datepicker/index.d.ts +1 -0
  330. package/lib/src/components/datepicker/lunatic-datepicker.d.ts +9 -0
  331. package/lib/src/components/declarations/declaration.d.ts +6 -0
  332. package/lib/src/components/declarations/declaration.spec.d.ts +1 -0
  333. package/lib/src/components/declarations/declarations-after-text.d.ts +4 -0
  334. package/lib/src/components/declarations/declarations-before-text.d.ts +4 -0
  335. package/lib/src/components/declarations/declarations-detachable.d.ts +4 -0
  336. package/lib/src/components/declarations/declarations.d.ts +15 -0
  337. package/lib/src/components/declarations/declarations.spec.d.ts +1 -0
  338. package/lib/src/components/declarations/index.d.ts +4 -0
  339. package/lib/src/components/dropdown/html/dropdown-simple/dropdown-simple.d.ts +4 -0
  340. package/lib/src/components/dropdown/html/dropdown-simple/index.d.ts +1 -0
  341. package/lib/src/components/dropdown/html/dropdown-simple/simple-label-renderer.d.ts +9 -0
  342. package/lib/src/components/dropdown/html/dropdown-simple/simple-option-renderer.d.ts +8 -0
  343. package/lib/src/components/dropdown/html/dropdown-writable/dropdown-writable.d.ts +16 -0
  344. package/lib/src/components/dropdown/html/dropdown-writable/filter-tools/filter-options.d.ts +6 -0
  345. package/lib/src/components/dropdown/html/dropdown-writable/filter-tools/filter-options.spec.d.ts +1 -0
  346. package/lib/src/components/dropdown/html/dropdown-writable/filter-tools/get-label.d.ts +9 -0
  347. package/lib/src/components/dropdown/html/dropdown-writable/filter-tools/letters-matching.d.ts +2 -0
  348. package/lib/src/components/dropdown/html/dropdown-writable/filter-tools/match.d.ts +2 -0
  349. package/lib/src/components/dropdown/html/dropdown-writable/filter-tools/prepare-prefix.d.ts +2 -0
  350. package/lib/src/components/dropdown/html/dropdown-writable/index.d.ts +1 -0
  351. package/lib/src/components/dropdown/html/dropdown-writable/writable-label-renderer.d.ts +9 -0
  352. package/lib/src/components/dropdown/html/dropdown-writable/writable-option-renderer.d.ts +9 -0
  353. package/lib/src/components/dropdown/html/dropdown.d.ts +9 -0
  354. package/lib/src/components/dropdown/index.d.ts +1 -0
  355. package/lib/src/components/dropdown/lunatic-dropdown.d.ts +4 -0
  356. package/lib/src/components/filter-description/component.d.ts +7 -0
  357. package/lib/src/components/filter-description/component.spec.d.ts +1 -0
  358. package/lib/src/components/filter-description/index.d.ts +1 -0
  359. package/lib/src/components/index.d.ts +24 -0
  360. package/lib/src/components/input/html/input.d.ts +16 -0
  361. package/lib/src/components/input/index.d.ts +1 -0
  362. package/lib/src/components/input/lunatic-input.d.ts +4 -0
  363. package/lib/src/components/input-number/html/input-number-default.d.ts +14 -0
  364. package/lib/src/components/input-number/html/input-number-thousand.d.ts +14 -0
  365. package/lib/src/components/input-number/html/input-number.d.ts +20 -0
  366. package/lib/src/components/input-number/html/input-number.spec.d.ts +1 -0
  367. package/lib/src/components/input-number/index.d.ts +1 -0
  368. package/lib/src/components/input-number/lunatic-input-number.d.ts +4 -0
  369. package/lib/src/components/loop/block-for-loop/block-for-loop-ochestrator.d.ts +50 -0
  370. package/lib/src/components/loop/block-for-loop/block-for-loop.d.ts +21 -0
  371. package/lib/src/components/loop/block-for-loop/index.d.ts +1 -0
  372. package/lib/src/components/loop/block-for-loop/row.d.ts +23 -0
  373. package/lib/src/components/loop/commons/get-init-length.d.ts +2 -0
  374. package/lib/src/components/loop/commons/handle-row-button.d.ts +8 -0
  375. package/lib/src/components/loop/commons/index.d.ts +2 -0
  376. package/lib/src/components/loop/commons/row-component.d.ts +10 -0
  377. package/lib/src/components/loop/index.d.ts +1 -0
  378. package/lib/src/components/loop/loop.d.ts +4 -0
  379. package/lib/src/components/loop/roster-for-loop/body.d.ts +13 -0
  380. package/lib/src/components/loop/roster-for-loop/header.d.ts +9 -0
  381. package/lib/src/components/loop/roster-for-loop/index.d.ts +1 -0
  382. package/lib/src/components/loop/roster-for-loop/roster-for-loop-orchestrator.d.ts +50 -0
  383. package/lib/src/components/loop/roster-for-loop/roster-for-loop.d.ts +21 -0
  384. package/lib/src/components/loop/roster-for-loop/roster-table.d.ts +14 -0
  385. package/lib/src/components/loop/roster-for-loop/row.d.ts +24 -0
  386. package/lib/src/components/modal-controls/close-or-skip.d.ts +8 -0
  387. package/lib/src/components/modal-controls/close-or-skip.spec.d.ts +1 -0
  388. package/lib/src/components/modal-controls/index.d.ts +1 -0
  389. package/lib/src/components/modal-controls/modal-container.d.ts +3 -0
  390. package/lib/src/components/modal-controls/modal-container.spec.d.ts +1 -0
  391. package/lib/src/components/modal-controls/modal-controls.d.ts +11 -0
  392. package/lib/src/components/modal-controls/modal-controls.spec.d.ts +1 -0
  393. package/lib/src/components/pairwise-links/index.d.ts +1 -0
  394. package/lib/src/components/pairwise-links/orchestrator.d.ts +7 -0
  395. package/lib/src/components/pairwise-links/pairwise-links.d.ts +4 -0
  396. package/lib/src/components/pairwise-links/row.d.ts +8 -0
  397. package/lib/src/components/radio/html/radio-group-content.d.ts +17 -0
  398. package/lib/src/components/radio/html/radio-group-content.spec.d.ts +1 -0
  399. package/lib/src/components/radio/html/radio-group.d.ts +22 -0
  400. package/lib/src/components/radio/html/radio-option.d.ts +21 -0
  401. package/lib/src/components/radio/html/radio-option.spec.d.ts +1 -0
  402. package/lib/src/components/radio/index.d.ts +1 -0
  403. package/lib/src/components/radio/lunatic-radio-group.d.ts +13 -0
  404. package/lib/src/components/roundabout/components/roundabout-container.d.ts +6 -0
  405. package/lib/src/components/roundabout/components/roundabout-container.spec.d.ts +1 -0
  406. package/lib/src/components/roundabout/components/roundabout-it-button.d.ts +11 -0
  407. package/lib/src/components/roundabout/components/roundabout-it-button.spec.d.ts +1 -0
  408. package/lib/src/components/roundabout/components/roundabout-it-container.d.ts +5 -0
  409. package/lib/src/components/roundabout/components/roundabout-it-container.spec.d.ts +1 -0
  410. package/lib/src/components/roundabout/components/roundabout-it-title.d.ts +5 -0
  411. package/lib/src/components/roundabout/components/roundabout-it-title.spec.d.ts +1 -0
  412. package/lib/src/components/roundabout/components/roundabout-label.d.ts +5 -0
  413. package/lib/src/components/roundabout/components/roundabout-label.spec.d.ts +1 -0
  414. package/lib/src/components/roundabout/components/roundabout-pending.d.ts +3 -0
  415. package/lib/src/components/roundabout/components/roundabout-pending.spec.d.ts +1 -0
  416. package/lib/src/components/roundabout/index.d.ts +1 -0
  417. package/lib/src/components/roundabout/lunatic-roundabout.d.ts +7 -0
  418. package/lib/src/components/roundabout/redirect.d.ts +7 -0
  419. package/lib/src/components/roundabout/redirect.spec.d.ts +1 -0
  420. package/lib/src/components/roundabout/roundabout.d.ts +15 -0
  421. package/lib/src/components/roundabout/roundabout.spec.d.ts +1 -0
  422. package/lib/src/components/sequence/index.d.ts +1 -0
  423. package/lib/src/components/sequence/sequence.d.ts +4 -0
  424. package/lib/src/components/sequence/sequence.spec.d.ts +1 -0
  425. package/lib/src/components/subsequence/index.d.ts +1 -0
  426. package/lib/src/components/subsequence/subsequence.d.ts +3 -0
  427. package/lib/src/components/subsequence/subsequence.spec.d.ts +1 -0
  428. package/lib/src/components/suggester/find-best-label/find-best-label.d.ts +2 -0
  429. package/lib/src/components/suggester/find-best-label/index.d.ts +1 -0
  430. package/lib/src/components/suggester/html/notification.d.ts +8 -0
  431. package/lib/src/components/suggester/html/suggester.d.ts +23 -0
  432. package/lib/src/components/suggester/idb-suggester/check-store.d.ts +8 -0
  433. package/lib/src/components/suggester/idb-suggester/idb-suggester.d.ts +7 -0
  434. package/lib/src/components/suggester/idb-suggester/index.d.ts +1 -0
  435. package/lib/src/components/suggester/idb-suggester/suggester-notification.d.ts +12 -0
  436. package/lib/src/components/suggester/idb-suggester/suggester-status.d.ts +26 -0
  437. package/lib/src/components/suggester/index.d.ts +1 -0
  438. package/lib/src/components/suggester/lunatic-suggester.d.ts +4 -0
  439. package/lib/src/components/suggester/searching/create-searching.d.ts +6 -0
  440. package/lib/src/components/suggester/searching/index.d.ts +1 -0
  441. package/lib/src/components/suggester-loader-widget/index.d.ts +1 -0
  442. package/lib/src/components/suggester-loader-widget/loader-row.d.ts +11 -0
  443. package/lib/src/components/suggester-loader-widget/loader.d.ts +13 -0
  444. package/lib/src/components/suggester-loader-widget/progress.d.ts +8 -0
  445. package/lib/src/components/suggester-loader-widget/tools/action-tool.d.ts +9 -0
  446. package/lib/src/components/suggester-loader-widget/tools/index.d.ts +2 -0
  447. package/lib/src/components/suggester-loader-widget/tools/tools.d.ts +3 -0
  448. package/lib/src/components/suggester-loader-widget/widget-container.d.ts +8 -0
  449. package/lib/src/components/suggester-loader-widget/widget.d.ts +16 -0
  450. package/lib/src/components/switch/html/switch.d.ts +17 -0
  451. package/lib/src/components/switch/index.d.ts +1 -0
  452. package/lib/src/components/switch/lunatic-switch.d.ts +4 -0
  453. package/lib/src/components/table/cell.d.ts +20 -0
  454. package/lib/src/components/table/header.d.ts +11 -0
  455. package/lib/src/components/table/index.d.ts +1 -0
  456. package/lib/src/components/table/lunatic-table.d.ts +4 -0
  457. package/lib/src/components/table/row.d.ts +19 -0
  458. package/lib/src/components/table/table-orchestrator.d.ts +5 -0
  459. package/lib/src/components/textarea/html/textarea.d.ts +17 -0
  460. package/lib/src/components/textarea/index.d.ts +1 -0
  461. package/lib/src/components/textarea/lunatic-textarea.d.ts +19 -0
  462. package/lib/src/components/type.d.ts +85 -36
  463. package/lib/src/hooks/use-ref-sync.d.ts +5 -0
  464. package/lib/src/index.d.ts +1 -0
  465. package/lib/src/type.utils.d.ts +4 -0
  466. package/lib/src/use-lunatic/commons/fill-components/fill-component-expressions.d.ts +4 -1
  467. package/lib/src/use-lunatic/commons/fill-components/fill-from-state.d.ts +16 -32
  468. package/lib/src/use-lunatic/commons/fill-components/fill-specific-expression.d.ts +0 -48
  469. package/lib/src/use-lunatic/commons/use-components-from-state.d.ts +1 -1
  470. package/lib/src/use-lunatic/reducer/commons/is-loop-component.d.ts +2 -4
  471. package/lib/src/use-lunatic/reducer/overview/overview-on-init.d.ts +10 -1
  472. package/lib/src/use-lunatic/reducer/reduce-roundabout.d.ts +1 -98
  473. package/lib/src/use-lunatic/replace-component-sequence.d.ts +3 -1
  474. package/lib/src/use-lunatic/type-source.d.ts +2 -2
  475. package/lib/src/use-lunatic/type.d.ts +11 -3
  476. package/lib/src/use-lunatic/use-lunatic.d.ts +1 -1
  477. package/lib/src/utils/constants/alphabet.d.ts +1 -0
  478. package/lib/src/utils/function.d.ts +4 -0
  479. package/lib/src/utils/idb-tools/create-db-opener.d.ts +13 -0
  480. package/lib/src/utils/idb-tools/create-open-db.d.ts +2 -0
  481. package/lib/src/utils/idb-tools/get-entity.d.ts +2 -0
  482. package/lib/src/utils/idb-tools/idb-bulk-insert.d.ts +16 -0
  483. package/lib/src/utils/idb-tools/idb-types.d.ts +16 -0
  484. package/lib/src/utils/idb-tools/index.d.ts +7 -0
  485. package/lib/src/utils/idb-tools/open-db.d.ts +2 -0
  486. package/lib/src/utils/idb-tools/open-or-create-db.d.ts +2 -0
  487. package/lib/src/utils/store-tools/auto-load.d.ts +6 -0
  488. package/lib/src/utils/store-tools/clear-store-data.d.ts +2 -0
  489. package/lib/src/utils/store-tools/clear-store-info.d.ts +2 -0
  490. package/lib/src/utils/store-tools/create/create.d.ts +4 -0
  491. package/lib/src/utils/store-tools/create/index.d.ts +2 -0
  492. package/lib/src/utils/store-tools/create/update-store-info.d.ts +2 -0
  493. package/lib/src/utils/store-tools/get-store-count.d.ts +2 -0
  494. package/lib/src/utils/store-tools/index.d.ts +7 -0
  495. package/lib/src/utils/store-tools/use-store-index.d.ts +4 -0
  496. package/lib/src/utils/suggester-workers/append-to-index/append.d.ts +6 -0
  497. package/lib/src/utils/suggester-workers/append-to-index/index.d.ts +2 -0
  498. package/lib/stories/questionnaires/simpsons/simpsons.stories.js +5 -5
  499. package/lib/stories/suggester/suggester-workers.stories.js +8 -4
  500. package/lib/use-lunatic/commons/fill-components/fill-component-expressions.spec.js +0 -2
  501. package/lib/utils/function.js +11 -0
  502. package/lib/utils/idb-tools/create-db-opener.js +12 -5
  503. package/lib/utils/idb-tools/idb-bulk-insert.js +0 -6
  504. package/lib/utils/idb-tools/idb-types.js +5 -0
  505. package/lib/utils/idb-tools/open-db.js +2 -1
  506. package/lib/utils/idb-tools/open-or-create-db.js +5 -3
  507. package/lib/utils/store-tools/auto-load.js +2 -2
  508. package/lib/utils/store-tools/use-store-index.js +1 -1
  509. package/lib/utils/suggester-workers/append-to-index/append.js +3 -2
  510. package/package.json +7 -3
  511. package/lib/components/commons/build-style-object.js +0 -25
  512. package/lib/components/commons/components/combo-box/panel/index.js +0 -13
  513. package/lib/components/commons/components/combo-box/selection/index.js +0 -13
  514. package/lib/components/commons/components/combo-box/state-management/combo-box-context.js +0 -16
  515. package/lib/components/commons/components/combo-box/state-management/initial-state.js +0 -14
  516. package/lib/components/commons/components/combo-box/state-management/reducer/index.js +0 -13
  517. package/lib/components/commons/components/combo-box/state-management/reducer/reduce-on-blur.js +0 -20
  518. package/lib/components/commons/components/combo-box/state-management/reducer/reduce-on-change.js +0 -22
  519. package/lib/components/commons/components/combo-box/state-management/reducer/reduce-on-delete.js +0 -21
  520. package/lib/components/commons/components/combo-box/state-management/reducer/reduce-on-keydown/index.js +0 -13
  521. package/lib/components/commons/components/combo-box/state-management/reducer/reduce-on-keydown/reduce-on-keydown.js +0 -40
  522. package/lib/components/commons/components/combo-box/state-management/reducer/reduce-on-select.js +0 -22
  523. package/lib/components/commons/components/combo-box/state-management/reducer/reducer.js +0 -41
  524. package/lib/components/commons/prop-types/declarations.js +0 -19
  525. package/lib/components/commons/prop-types/index.js +0 -41
  526. package/lib/components/commons/prop-types/lines.js +0 -13
  527. package/lib/components/commons/prop-types/options.js +0 -13
  528. package/lib/components/commons/prop-types/response.js +0 -13
  529. package/lib/components/commons/prop-types/value-type.js +0 -14
  530. package/lib/components/commons/use-previous.js +0 -16
  531. package/lib/components/components.js +0 -179
  532. package/lib/components/radio/html/dist/radio-group.css +0 -12
  533. package/lib/components/radio/radio-group.js +0 -51
  534. package/lib/components/suggester/idb-suggester/dist/index.dev.js +0 -12
  535. package/lib/dist/index.dev.js +0 -31
  536. package/lib/utils/suggester-workers/append-to-index/dist/append.worker.dev.js +0 -37
  537. package/lib/utils/suggester-workers/append-to-index/dist/create-append-task.js +0 -71
  538. package/lib/utils/suggester-workers/append-to-index/dist/index.dev.js +0 -24
  539. /package/lib/components/commons/components/combo-box/state-management/{reducer/reduce-on-init.js → reduce-on-init.js} +0 -0
@@ -3,31 +3,19 @@
3
3
  Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
- exports["default"] = void 0;
7
- var _react = _interopRequireDefault(require("react"));
6
+ exports.ComboBoxContainer = ComboBoxContainer;
8
7
  var _classnames = _interopRequireDefault(require("classnames"));
9
- var _propTypes = _interopRequireDefault(require("prop-types"));
10
8
  var _jsxRuntime = require("react/jsx-runtime");
11
9
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; }
12
10
  function ComboBoxContainer(_ref) {
13
11
  var children = _ref.children,
14
12
  className = _ref.className,
15
13
  id = _ref.id,
16
- classStyle = _ref.classStyle;
14
+ _ref$classStyle = _ref.classStyle,
15
+ classStyle = _ref$classStyle === void 0 ? 'default-style' : _ref$classStyle;
17
16
  return /*#__PURE__*/(0, _jsxRuntime.jsx)("div", {
18
17
  id: "lunatic-combo-box-container-".concat(id),
19
18
  className: (0, _classnames["default"])('lunatic-combo-box-container', className, classStyle),
20
19
  children: children
21
20
  });
22
- }
23
- ComboBoxContainer.propTypes = {
24
- id: _propTypes["default"].string.isRequired,
25
- className: _propTypes["default"].string,
26
- classStyle: _propTypes["default"].string
27
- };
28
- ComboBoxContainer.defaultProps = {
29
- className: undefined,
30
- classStyle: 'default-style'
31
- };
32
- var _default = ComboBoxContainer;
33
- exports["default"] = _default;
21
+ }
@@ -2,13 +2,13 @@
2
2
 
3
3
  var _react = _interopRequireDefault(require("react"));
4
4
  var _react2 = require("@testing-library/react");
5
- var _comboBoxContainer = _interopRequireDefault(require("./combo-box-container"));
5
+ var _comboBoxContainer = require("./combo-box-container");
6
6
  var _vitest = require("vitest");
7
7
  var _jsxRuntime = require("react/jsx-runtime");
8
8
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; }
9
9
  (0, _vitest.describe)('ComboBoxContainer', function () {
10
10
  (0, _vitest.it)('renders with default styles when no classStyle prop is provided', function () {
11
- var _render = (0, _react2.render)( /*#__PURE__*/(0, _jsxRuntime.jsx)(_comboBoxContainer["default"], {
11
+ var _render = (0, _react2.render)( /*#__PURE__*/(0, _jsxRuntime.jsx)(_comboBoxContainer.ComboBoxContainer, {
12
12
  id: "test-id",
13
13
  children: "Content"
14
14
  })),
@@ -16,7 +16,7 @@ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "d
16
16
  (0, _vitest.expect)(container.firstChild).toHaveClass('default-style');
17
17
  });
18
18
  (0, _vitest.it)('renders with additional styles when classStyle prop is provided', function () {
19
- var _render2 = (0, _react2.render)( /*#__PURE__*/(0, _jsxRuntime.jsx)(_comboBoxContainer["default"], {
19
+ var _render2 = (0, _react2.render)( /*#__PURE__*/(0, _jsxRuntime.jsx)(_comboBoxContainer.ComboBoxContainer, {
20
20
  id: "test-id",
21
21
  classStyle: "custom-style",
22
22
  children: "Content"
@@ -26,7 +26,7 @@ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "d
26
26
  (0, _vitest.expect)(container.firstChild).toHaveClass('custom-style');
27
27
  });
28
28
  (0, _vitest.it)('renders children inside the component', function () {
29
- var _render3 = (0, _react2.render)( /*#__PURE__*/(0, _jsxRuntime.jsx)(_comboBoxContainer["default"], {
29
+ var _render3 = (0, _react2.render)( /*#__PURE__*/(0, _jsxRuntime.jsx)(_comboBoxContainer.ComboBoxContainer, {
30
30
  id: "test-id",
31
31
  children: "Content"
32
32
  })),
@@ -34,7 +34,7 @@ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "d
34
34
  (0, _vitest.expect)(getByText('Content')).toBeInTheDocument();
35
35
  });
36
36
  (0, _vitest.it)('passes className prop to the component', function () {
37
- var _render4 = (0, _react2.render)( /*#__PURE__*/(0, _jsxRuntime.jsx)(_comboBoxContainer["default"], {
37
+ var _render4 = (0, _react2.render)( /*#__PURE__*/(0, _jsxRuntime.jsx)(_comboBoxContainer.ComboBoxContainer, {
38
38
  id: "test-id",
39
39
  className: "test-class",
40
40
  children: "Content"
@@ -4,11 +4,12 @@ function _typeof(obj) { "@babel/helpers - typeof"; return _typeof = "function" =
4
4
  Object.defineProperty(exports, "__esModule", {
5
5
  value: true
6
6
  });
7
+ exports.ComboBoxContent = ComboBoxContent;
7
8
  exports["default"] = void 0;
8
9
  var _react = _interopRequireWildcard(require("react"));
9
10
  var _classnames = _interopRequireDefault(require("classnames"));
10
- var _useDocumentAddEventListener = _interopRequireDefault(require("../../use-document-add-event-listener"));
11
- var _keyboardKeyCodes = require("./state-management/reducer/reduce-on-keydown/keyboard-key-codes");
11
+ var _keyboardKeyCodes = require("./state-management/reduce-on-keydown/keyboard-key-codes");
12
+ var _index = require("../../index");
12
13
  var _jsxRuntime = require("react/jsx-runtime");
13
14
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; }
14
15
  function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
@@ -19,22 +20,23 @@ function ComboBoxContent(_ref) {
19
20
  onFocus = _ref.onFocus,
20
21
  onBlur = _ref.onBlur,
21
22
  onKeyDown = _ref.onKeyDown;
22
- var ref = (0, _react.useRef)();
23
+ var ref = (0, _react.useRef)(null);
23
24
  var onClick = (0, _react.useCallback)(function (e) {
24
- var current = ref.current;
25
- if (!current.contains(e.target)) {
25
+ var _ref$current;
26
+ if (!((_ref$current = ref.current) !== null && _ref$current !== void 0 && _ref$current.contains(e.target)) && onBlur) {
26
27
  onBlur();
27
28
  }
28
29
  }, [ref, onBlur]);
29
- (0, _useDocumentAddEventListener["default"])('mousedown', onClick);
30
+ (0, _index.useDocumentAddEventListener)('mousedown', onClick);
30
31
  var handleKeyDown = (0, _react.useCallback)(function (e) {
32
+ var _ref$current2;
31
33
  var key = e.key;
32
34
  e.stopPropagation();
33
35
  switch (key) {
34
36
  case _keyboardKeyCodes.KEYBOARD_KEY_CODES.Escape:
35
37
  case _keyboardKeyCodes.KEYBOARD_KEY_CODES.Enter:
36
38
  case _keyboardKeyCodes.KEYBOARD_KEY_CODES.Tab:
37
- ref.current.focus();
39
+ (_ref$current2 = ref.current) === null || _ref$current2 === void 0 ? void 0 : _ref$current2.focus();
38
40
  break;
39
41
  default:
40
42
  // e.preventDefault();
@@ -50,7 +52,7 @@ function ComboBoxContent(_ref) {
50
52
  onClick: onFocus,
51
53
  onKeyDown: handleKeyDown,
52
54
  ref: ref,
53
- tabIndex: "0",
55
+ tabIndex: 0,
54
56
  children: /*#__PURE__*/(0, _jsxRuntime.jsx)("div", {
55
57
  className: (0, _classnames["default"])('lunatic-combo-box-content', {
56
58
  focused: focused
@@ -5,23 +5,20 @@ Object.defineProperty(exports, "__esModule", {
5
5
  value: true
6
6
  });
7
7
  exports["default"] = void 0;
8
- var _react = _interopRequireWildcard(require("react"));
9
- var _propTypes = _interopRequireDefault(require("prop-types"));
8
+ var _react = require("react");
10
9
  var _classnames = _interopRequireDefault(require("classnames"));
11
- var _comboBoxContent = _interopRequireDefault(require("./combo-box-content"));
12
- var _selection = _interopRequireDefault(require("./selection"));
13
- var _panel = _interopRequireDefault(require("./panel"));
14
- var _delete = _interopRequireDefault(require("./selection/delete"));
15
- var _comboBoxContainer = _interopRequireDefault(require("./combo-box-container"));
16
- var _createCustomizableField = _interopRequireDefault(require("../../create-customizable-field"));
10
+ var _delete = require("./selection/delete");
17
11
  var _stateManagement = require("./state-management");
18
- var _errors = _interopRequireDefault(require("../errors"));
19
- var _label = _interopRequireDefault(require("../label"));
20
12
  require("./combo-box.scss");
13
+ var _selection = require("./selection/selection");
14
+ var _panel = require("./panel/panel");
15
+ var _comboBoxContainer = require("./combo-box-container");
16
+ var _comboBoxContent = _interopRequireDefault(require("./combo-box-content"));
17
+ var _label = _interopRequireDefault(require("../label"));
18
+ var _errors = _interopRequireDefault(require("../errors"));
19
+ var _index = require("../../index");
21
20
  var _jsxRuntime = require("react/jsx-runtime");
22
21
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; }
23
- function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
24
- function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== "object" && typeof obj !== "function") { return { "default": obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj["default"] = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
25
22
  function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
26
23
  function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
27
24
  function _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
@@ -34,17 +31,14 @@ function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len
34
31
  function _iterableToArrayLimit(arr, i) { var _i = null == arr ? null : "undefined" != typeof Symbol && arr[Symbol.iterator] || arr["@@iterator"]; if (null != _i) { var _s, _e, _x, _r, _arr = [], _n = !0, _d = !1; try { if (_x = (_i = _i.call(arr)).next, 0 === i) { if (Object(_i) !== _i) return; _n = !1; } else for (; !(_n = (_s = _x.call(_i)).done) && (_arr.push(_s.value), _arr.length !== i); _n = !0); } catch (err) { _d = !0, _e = err; } finally { try { if (!_n && null != _i["return"] && (_r = _i["return"](), Object(_r) !== _r)) return; } finally { if (_d) throw _e; } } return _arr; } }
35
32
  function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
36
33
  var EMPTY_SEARCH = '';
37
- function getDefaultOptionValue() {
38
- var option = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
39
- var id = option.id,
40
- value = option.value;
41
- return id || value;
42
- }
43
34
  function ComboBox(_ref) {
44
35
  var className = _ref.className,
45
- classStyle = _ref.classStyle,
46
- placeholder = _ref.placeholder,
47
- editable = _ref.editable,
36
+ _ref$classStyle = _ref.classStyle,
37
+ classStyle = _ref$classStyle === void 0 ? 'default-style' : _ref$classStyle,
38
+ _ref$placeholder = _ref.placeholder,
39
+ placeholder = _ref$placeholder === void 0 ? 'Please, do something...' : _ref$placeholder,
40
+ _ref$editable = _ref.editable,
41
+ editable = _ref$editable === void 0 ? false : _ref$editable,
48
42
  disabled = _ref.disabled,
49
43
  id = _ref.id,
50
44
  optionRenderer = _ref.optionRenderer,
@@ -54,8 +48,10 @@ function ComboBox(_ref) {
54
48
  value = _ref.value,
55
49
  options = _ref.options,
56
50
  messageError = _ref.messageError,
57
- searchProps = _ref.search,
58
- getOptionValue = _ref.getOptionValue,
51
+ _ref$search = _ref.search,
52
+ searchProps = _ref$search === void 0 ? EMPTY_SEARCH : _ref$search,
53
+ _ref$getOptionValue = _ref.getOptionValue,
54
+ getOptionValue = _ref$getOptionValue === void 0 ? getDefaultOptionValue : _ref$getOptionValue,
59
55
  label = _ref.label,
60
56
  description = _ref.description,
61
57
  errors = _ref.errors;
@@ -67,10 +63,9 @@ function ComboBox(_ref) {
67
63
  state = _useReducer2[0],
68
64
  dispatch = _useReducer2[1];
69
65
  var focused = state.focused,
70
- expended = state.expended,
66
+ expanded = state.expanded,
71
67
  search = state.search,
72
- selectedIndex = state.selectedIndex,
73
- displayLabel = state.displayLabel;
68
+ selectedIndex = state.selectedIndex;
74
69
  (0, _react.useEffect)(function () {
75
70
  dispatch(_stateManagement.actions.onInit({
76
71
  options: options,
@@ -85,13 +80,14 @@ function ComboBox(_ref) {
85
80
  dispatch(_stateManagement.actions.onBlur());
86
81
  }, []);
87
82
  var handleSelect = (0, _react.useCallback)(function (index) {
88
- var option = options[index];
89
- dispatch(_stateManagement.actions.onSelect(index));
83
+ var indexNumber = parseInt(index, 10);
84
+ var option = options[indexNumber];
85
+ dispatch(_stateManagement.actions.onSelect(indexNumber));
90
86
  onSelect(getOptionValue(option));
91
87
  }, [options, onSelect, getOptionValue]);
92
88
  var handleChange = (0, _react.useCallback)(function (s) {
93
89
  dispatch(_stateManagement.actions.onChange(s));
94
- onChange(s);
90
+ onChange === null || onChange === void 0 ? void 0 : onChange(s);
95
91
  }, [onChange]);
96
92
  var onKeyDown = (0, _react.useCallback)(function (key) {
97
93
  var length = options.length;
@@ -99,7 +95,7 @@ function ComboBox(_ref) {
99
95
  }, [options]);
100
96
  var onDelete = (0, _react.useCallback)(function () {
101
97
  dispatch(_stateManagement.actions.onDelete());
102
- onChange(EMPTY_SEARCH);
98
+ onChange === null || onChange === void 0 ? void 0 : onChange(EMPTY_SEARCH);
103
99
  }, [onChange]);
104
100
  if (messageError) {
105
101
  return /*#__PURE__*/(0, _jsxRuntime.jsx)("div", {
@@ -107,7 +103,7 @@ function ComboBox(_ref) {
107
103
  children: messageError
108
104
  });
109
105
  }
110
- return /*#__PURE__*/(0, _jsxRuntime.jsxs)(_comboBoxContainer["default"], {
106
+ return /*#__PURE__*/(0, _jsxRuntime.jsxs)(_comboBoxContainer.ComboBoxContainer, {
111
107
  id: id,
112
108
  classStyle: classStyle,
113
109
  className: className,
@@ -117,16 +113,15 @@ function ComboBox(_ref) {
117
113
  description: description,
118
114
  children: label
119
115
  }), /*#__PURE__*/(0, _jsxRuntime.jsxs)(_comboBoxContent["default"], {
120
- id: id,
121
116
  focused: focused,
122
117
  onFocus: onFocus,
123
118
  onBlur: onBlur,
124
119
  onKeyDown: onKeyDown,
125
- children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_selection["default"], {
120
+ children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_selection.Selection, {
126
121
  labelRenderer: labelRenderer,
127
122
  placeholder: placeholder,
128
123
  search: search,
129
- expended: expended,
124
+ expanded: expanded,
130
125
  id: id,
131
126
  labelId: labelId,
132
127
  disabled: disabled,
@@ -134,66 +129,37 @@ function ComboBox(_ref) {
134
129
  editable: editable,
135
130
  selectedIndex: selectedIndex,
136
131
  options: options,
137
- onChange: handleChange,
138
- displayLabel: displayLabel
139
- }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_panel["default"], {
132
+ onChange: handleChange
133
+ }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_panel.Panel, {
140
134
  optionRenderer: optionRenderer,
141
- value: value,
142
135
  options: options,
143
136
  focused: focused,
144
137
  selectedIndex: selectedIndex,
145
- expended: expended,
138
+ expanded: expanded,
146
139
  id: id,
147
140
  search: search,
148
141
  onSelect: handleSelect
149
142
  })]
150
- }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_delete["default"], {
143
+ }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_delete.Delete, {
151
144
  className: (0, _classnames["default"])({
152
145
  focused: focused
153
146
  }),
154
147
  search: search,
155
148
  onClick: onDelete,
156
149
  editable: editable
157
- }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_errors["default"], {
150
+ }), errors && /*#__PURE__*/(0, _jsxRuntime.jsx)(_errors["default"], {
158
151
  errors: errors,
159
152
  activeId: id
160
153
  })]
161
154
  });
162
155
  }
163
- ComboBox.propTypes = {
164
- classStyle: _propTypes["default"].string,
165
- placeholder: _propTypes["default"].string,
166
- description: _propTypes["default"].oneOfType([_propTypes["default"].string, _propTypes["default"].element, _propTypes["default"].array]),
167
- search: _propTypes["default"].string,
168
- editable: _propTypes["default"].bool,
169
- onSelect: _propTypes["default"].func,
170
- onChange: _propTypes["default"].func,
171
- options: _propTypes["default"].array,
172
- className: _propTypes["default"].string,
173
- disabled: _propTypes["default"].bool,
174
- id: _propTypes["default"].string.isRequired,
175
- optionRenderer: _propTypes["default"].elementType.isRequired,
176
- labelRenderer: _propTypes["default"].elementType.isRequired,
177
- getOptionValue: _propTypes["default"].func,
178
- label: _propTypes["default"].oneOfType([_propTypes["default"].string, _propTypes["default"].element]),
179
- errors: _propTypes["default"].object
180
- };
181
- ComboBox.defaultProps = {
182
- classStyle: 'default-style',
183
- placeholder: 'Please, do something...',
184
- editable: false,
185
- search: EMPTY_SEARCH,
186
- onSelect: function onSelect() {
187
- return null;
188
- },
189
- onChange: function onChange() {
190
- return null;
191
- },
192
- options: [],
193
- getOptionValue: getDefaultOptionValue,
194
- errors: undefined,
195
- label: undefined,
196
- description: undefined
197
- };
198
- var _default = (0, _createCustomizableField["default"])(ComboBox, 'ComboBox');
156
+ function getDefaultOptionValue() {
157
+ var option = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {
158
+ value: ''
159
+ };
160
+ var id = option.id,
161
+ value = option.value;
162
+ return id || value;
163
+ }
164
+ var _default = (0, _index.createCustomizableLunaticField)(ComboBox, 'ComboBox');
199
165
  exports["default"] = _default;
@@ -90,7 +90,7 @@
90
90
  transition: opacity 267ms cubic-bezier(0.4, 0, 0.2, 1) 0ms,
91
91
  transform 178ms cubic-bezier(0.4, 0, 0.2, 1) 0ms;
92
92
 
93
- &.expended {
93
+ &.expanded {
94
94
  border: solid 1px var(--color-primary-light);
95
95
  opacity: 1;
96
96
  min-height: 30px;
@@ -123,14 +123,13 @@
123
123
  .lunatic-combo-box-fab {
124
124
  position: absolute;
125
125
  right: 4px;
126
- top: 36px;
126
+ top: 8px;
127
127
  z-index: 0;
128
128
  &.focused {
129
129
  z-index: 1;
130
130
  }
131
131
 
132
132
  .lunatic-icon {
133
- padding-left: 1px;
134
133
  svg {
135
134
  fill: white;
136
135
  width: 16px;
@@ -3,18 +3,53 @@
3
3
  Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
- exports["default"] = void 0;
6
+ exports["default"] = exports.Default = void 0;
7
+ var _comboBox = _interopRequireDefault(require("./combo-box"));
8
+ var _jsxRuntime = require("react/jsx-runtime");
9
+ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; }
7
10
  function _typeof(obj) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && "function" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }, _typeof(obj); }
8
11
  function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
9
12
  function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
10
13
  function _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
11
14
  function _toPropertyKey(arg) { var key = _toPrimitive(arg, "string"); return _typeof(key) === "symbol" ? key : String(key); }
12
15
  function _toPrimitive(input, hint) { if (_typeof(input) !== "object" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || "default"); if (_typeof(res) !== "object") return res; throw new TypeError("@@toPrimitive must return a primitive value."); } return (hint === "string" ? String : Number)(input); }
13
- function reduceOnFocus(state) {
14
- return _objectSpread(_objectSpread({}, state), {}, {
15
- expended: true,
16
- focused: true
16
+ var stories = {
17
+ title: 'Components/Commons/ComboBox',
18
+ component: _comboBox["default"]
19
+ };
20
+ var _default = stories;
21
+ exports["default"] = _default;
22
+ var LabelRenderer = function LabelRenderer(_ref) {
23
+ var _option$label;
24
+ var option = _ref.option,
25
+ placeholder = _ref.placeholder;
26
+ return /*#__PURE__*/(0, _jsxRuntime.jsx)(_jsxRuntime.Fragment, {
27
+ children: (_option$label = option === null || option === void 0 ? void 0 : option.label) !== null && _option$label !== void 0 ? _option$label : placeholder
17
28
  });
18
- }
19
- var _default = reduceOnFocus;
20
- exports["default"] = _default;
29
+ };
30
+ var Template = function Template(args) {
31
+ return /*#__PURE__*/(0, _jsxRuntime.jsx)(_comboBox["default"], _objectSpread(_objectSpread({}, args), {}, {
32
+ labelRenderer: LabelRenderer,
33
+ optionRenderer: LabelRenderer
34
+ }));
35
+ };
36
+ var Default = Template.bind({});
37
+ exports.Default = Default;
38
+ Default.args = {
39
+ value: '1',
40
+ options: [{
41
+ id: '1',
42
+ value: 'Option 1',
43
+ label: /*#__PURE__*/(0, _jsxRuntime.jsx)("strong", {
44
+ children: "Option 1"
45
+ })
46
+ }, {
47
+ id: '2',
48
+ value: 'Option 2',
49
+ label: 'Option 2'
50
+ }, {
51
+ id: '3',
52
+ value: 'Option 3',
53
+ label: 'Option 3'
54
+ }]
55
+ };
@@ -0,0 +1,5 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
@@ -1,16 +1,13 @@
1
1
  "use strict";
2
2
 
3
- function _typeof(obj) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && "function" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }, _typeof(obj); }
4
3
  Object.defineProperty(exports, "__esModule", {
5
4
  value: true
6
5
  });
7
- exports["default"] = void 0;
8
- var _react = _interopRequireWildcard(require("react"));
6
+ exports.OptionContainer = OptionContainer;
7
+ var _react = require("react");
9
8
  var _classnames = _interopRequireDefault(require("classnames"));
10
9
  var _jsxRuntime = require("react/jsx-runtime");
11
10
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; }
12
- function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
13
- function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== "object" && typeof obj !== "function") { return { "default": obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj["default"] = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
14
11
  function getMin(rect) {
15
12
  var top = rect.top;
16
13
  return top;
@@ -30,7 +27,7 @@ function OptionContainer(_ref) {
30
27
  index = _ref.index,
31
28
  selected = _ref.selected,
32
29
  onSelect = _ref.onSelect;
33
- var ref = (0, _react.useRef)();
30
+ var ref = (0, _react.useRef)(null);
34
31
  var onClick = (0, _react.useCallback)(function (e) {
35
32
  e.stopPropagation();
36
33
  e.preventDefault();
@@ -38,7 +35,7 @@ function OptionContainer(_ref) {
38
35
  }, [onSelect, index]);
39
36
  (0, _react.useEffect)(function () {
40
37
  var current = ref.current;
41
- if (current && selected) {
38
+ if (current && selected && current.parentNode) {
42
39
  var oRect = current.getBoundingClientRect();
43
40
  var pRect = current.parentNode.getBoundingClientRect();
44
41
  if (!isVisible(oRect, pRect)) {
@@ -56,6 +53,4 @@ function OptionContainer(_ref) {
56
53
  ref: ref,
57
54
  children: children
58
55
  });
59
- }
60
- var _default = OptionContainer;
61
- exports["default"] = _default;
56
+ }
@@ -1,10 +1,9 @@
1
1
  "use strict";
2
2
 
3
3
  var _react = require("@testing-library/react");
4
- var _optionContainer = _interopRequireDefault(require("./option-container"));
4
+ var _optionContainer = require("./option-container");
5
5
  var _vitest = require("vitest");
6
6
  var _jsxRuntime = require("react/jsx-runtime");
7
- function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; }
8
7
  function _typeof(obj) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && "function" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }, _typeof(obj); }
9
8
  function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
10
9
  function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
@@ -14,12 +13,12 @@ function _toPrimitive(input, hint) { if (_typeof(input) !== "object" || input ==
14
13
  (0, _vitest.describe)('option-container', function () {
15
14
  var props = {
16
15
  children: 'Option 1',
17
- index: 0,
16
+ index: '0',
18
17
  selected: false,
19
18
  onSelect: _vitest.vi.fn()
20
19
  };
21
20
  (0, _vitest.it)('renders without crashing', function () {
22
- var _render = (0, _react.render)( /*#__PURE__*/(0, _jsxRuntime.jsx)(_optionContainer["default"], _objectSpread({}, props))),
21
+ var _render = (0, _react.render)( /*#__PURE__*/(0, _jsxRuntime.jsx)(_optionContainer.OptionContainer, _objectSpread({}, props))),
23
22
  getByRole = _render.getByRole;
24
23
  var optionContainer = getByRole('option');
25
24
  (0, _vitest.expect)(optionContainer).toBeInTheDocument();
@@ -3,26 +3,23 @@
3
3
  Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
- exports["default"] = void 0;
7
- var _react = _interopRequireDefault(require("react"));
6
+ exports.PanelContainer = PanelContainer;
8
7
  var _classnames = _interopRequireDefault(require("classnames"));
9
8
  var _jsxRuntime = require("react/jsx-runtime");
10
9
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; }
11
10
  function PanelContainer(_ref) {
12
11
  var children = _ref.children,
13
12
  focused = _ref.focused,
14
- expended = _ref.expended,
13
+ expanded = _ref.expanded,
15
14
  id = _ref.id;
16
15
  return /*#__PURE__*/(0, _jsxRuntime.jsx)("ul", {
17
16
  id: "lunatic-combo-box-panel-".concat(id),
18
17
  "aria-label": "suggestions",
19
18
  className: (0, _classnames["default"])('lunatic-combo-box-panel', {
20
19
  focused: focused,
21
- expended: expended
20
+ expanded: expanded
22
21
  }),
23
22
  role: "listbox",
24
23
  children: children
25
24
  });
26
- }
27
- var _default = PanelContainer;
28
- exports["default"] = _default;
25
+ }
@@ -1,59 +1,57 @@
1
1
  "use strict";
2
2
 
3
- var _react = _interopRequireDefault(require("react"));
4
- var _react2 = require("@testing-library/react");
3
+ var _react = require("@testing-library/react");
5
4
  var _vitest = require("vitest");
6
- var _panelContainer = _interopRequireDefault(require("./panel-container"));
5
+ var _panelContainer = require("./panel-container");
7
6
  var _jsxRuntime = require("react/jsx-runtime");
8
- function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; }
9
7
  (0, _vitest.describe)('PanelContainer', function () {
10
8
  (0, _vitest.it)('should render children', function () {
11
- (0, _react2.render)( /*#__PURE__*/(0, _jsxRuntime.jsxs)(_panelContainer["default"], {
9
+ (0, _react.render)( /*#__PURE__*/(0, _jsxRuntime.jsxs)(_panelContainer.PanelContainer, {
12
10
  children: [/*#__PURE__*/(0, _jsxRuntime.jsx)("li", {
13
11
  children: "Item 1"
14
12
  }), /*#__PURE__*/(0, _jsxRuntime.jsx)("li", {
15
13
  children: "Item 2"
16
14
  })]
17
15
  }));
18
- var items = _react2.screen.getAllByRole('listitem');
16
+ var items = _react.screen.getAllByRole('listitem');
19
17
  (0, _vitest.expect)(items).toHaveLength(2);
20
18
  (0, _vitest.expect)(items[0]).toHaveTextContent('Item 1');
21
19
  (0, _vitest.expect)(items[1]).toHaveTextContent('Item 2');
22
20
  });
23
21
  (0, _vitest.it)('should set the id attribute', function () {
24
22
  var id = 'test-panel';
25
- (0, _react2.render)( /*#__PURE__*/(0, _jsxRuntime.jsx)(_panelContainer["default"], {
23
+ (0, _react.render)( /*#__PURE__*/(0, _jsxRuntime.jsx)(_panelContainer.PanelContainer, {
26
24
  id: id,
27
25
  children: /*#__PURE__*/(0, _jsxRuntime.jsx)("li", {
28
26
  children: "Item 1"
29
27
  })
30
28
  }));
31
- (0, _vitest.expect)(_react2.screen.getByRole('listbox')).toHaveAttribute('id', "lunatic-combo-box-panel-".concat(id));
29
+ (0, _vitest.expect)(_react.screen.getByRole('listbox')).toHaveAttribute('id', "lunatic-combo-box-panel-".concat(id));
32
30
  });
33
31
  (0, _vitest.it)('should set the aria-label attribute', function () {
34
- (0, _react2.render)( /*#__PURE__*/(0, _jsxRuntime.jsx)(_panelContainer["default"], {
32
+ (0, _react.render)( /*#__PURE__*/(0, _jsxRuntime.jsx)(_panelContainer.PanelContainer, {
35
33
  children: /*#__PURE__*/(0, _jsxRuntime.jsx)("li", {
36
34
  children: "Item 1"
37
35
  })
38
36
  }));
39
- (0, _vitest.expect)(_react2.screen.getByRole('listbox')).toHaveAttribute('aria-label', 'suggestions');
37
+ (0, _vitest.expect)(_react.screen.getByRole('listbox')).toHaveAttribute('aria-label', 'suggestions');
40
38
  });
41
39
  (0, _vitest.it)('should set the focused class when focused prop is true', function () {
42
- (0, _react2.render)( /*#__PURE__*/(0, _jsxRuntime.jsx)(_panelContainer["default"], {
40
+ (0, _react.render)( /*#__PURE__*/(0, _jsxRuntime.jsx)(_panelContainer.PanelContainer, {
43
41
  focused: true,
44
42
  children: /*#__PURE__*/(0, _jsxRuntime.jsx)("li", {
45
43
  children: "Item 1"
46
44
  })
47
45
  }));
48
- (0, _vitest.expect)(_react2.screen.getByRole('listbox')).toHaveClass('focused');
46
+ (0, _vitest.expect)(_react.screen.getByRole('listbox')).toHaveClass('focused');
49
47
  });
50
- (0, _vitest.it)('should set the expended class when expended prop is true', function () {
51
- (0, _react2.render)( /*#__PURE__*/(0, _jsxRuntime.jsx)(_panelContainer["default"], {
52
- expended: true,
48
+ (0, _vitest.it)('should set the expanded class when expanded prop is true', function () {
49
+ (0, _react.render)( /*#__PURE__*/(0, _jsxRuntime.jsx)(_panelContainer.PanelContainer, {
50
+ expanded: true,
53
51
  children: /*#__PURE__*/(0, _jsxRuntime.jsx)("li", {
54
52
  children: "Item 1"
55
53
  })
56
54
  }));
57
- (0, _vitest.expect)(_react2.screen.getByRole('listbox')).toHaveClass('expended');
55
+ (0, _vitest.expect)(_react.screen.getByRole('listbox')).toHaveClass('expanded');
58
56
  });
59
57
  });