@inseefr/lunatic 2.4.2-beta → 2.4.3-beta

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (606) hide show
  1. package/lib/components/button/__snapshots__/lunatic-button.spec.tsx.snap +80 -0
  2. package/lib/components/button/lunatic-button.js +1 -7
  3. package/lib/components/checkbox/checkbox-boolean/html/checkbox-boolean.js +7 -27
  4. package/lib/components/checkbox/checkbox-boolean/html/checkbox-boolean.spec.js +10 -7
  5. package/lib/components/checkbox/checkbox-boolean/lunatic-checkbox-boolean.js +2 -4
  6. package/lib/components/checkbox/checkbox-group/checkbox-group-content.js +22 -26
  7. package/lib/components/checkbox/checkbox-group/html/checkbox-group-content.js +18 -29
  8. package/lib/components/checkbox/checkbox-group/html/checkbox-group.js +0 -17
  9. package/lib/components/checkbox/checkbox-group/lunatic-checkbox-group.js +9 -4
  10. package/lib/components/checkbox/checkbox-one/html/checkbox-one.js +0 -19
  11. package/lib/components/checkbox/checkbox-one/html/checkbox-one.spec.js +6 -11
  12. package/lib/components/checkbox/checkbox-one/lunatic-checkbox-one.js +0 -2
  13. package/lib/components/checkbox/commons/checkbox-option.js +3 -21
  14. package/lib/components/checkbox/commons/checkbox-option.spec.js +8 -9
  15. package/lib/components/commons/components/combo-box/combo-box-container.js +4 -16
  16. package/lib/components/commons/components/combo-box/combo-box-container.spec.js +5 -5
  17. package/lib/components/commons/components/combo-box/combo-box-content.js +10 -8
  18. package/lib/components/commons/components/combo-box/combo-box.js +43 -77
  19. package/lib/components/commons/components/combo-box/combo-box.scss +2 -3
  20. package/lib/components/commons/components/combo-box/{state-management/reducer/reduce-on-blur.js → combo-box.stories.js} +43 -8
  21. package/lib/components/commons/components/combo-box/combo-box.type.js +5 -0
  22. package/lib/components/commons/components/combo-box/panel/option-container.js +5 -10
  23. package/lib/components/commons/components/combo-box/panel/option-container.spec.js +3 -4
  24. package/lib/components/commons/components/combo-box/panel/panel-container.js +4 -7
  25. package/lib/components/commons/components/combo-box/panel/panel-container.spec.js +14 -16
  26. package/lib/components/commons/components/combo-box/panel/panel.js +26 -46
  27. package/lib/components/commons/components/combo-box/panel/panel.spec.js +22 -20
  28. package/lib/components/commons/components/combo-box/selection/__snapshots__/selection.spec.jsx.snap +1 -1
  29. package/lib/components/commons/components/combo-box/selection/__snapshots__/selection.spec.tsx.snap +82 -0
  30. package/lib/components/commons/components/combo-box/selection/delete.js +22 -30
  31. package/lib/components/commons/components/combo-box/selection/delete.spec.js +9 -9
  32. package/lib/components/commons/components/combo-box/selection/displayLabelOrInput.js +6 -9
  33. package/lib/components/commons/components/combo-box/selection/displayLabelOrInput.spec.js +9 -10
  34. package/lib/components/commons/components/combo-box/selection/input.js +5 -5
  35. package/lib/components/commons/components/combo-box/selection/label-selection.js +3 -2
  36. package/lib/components/commons/components/combo-box/selection/label-selection.spec.js +22 -18
  37. package/lib/components/commons/components/combo-box/selection/selection-container.js +5 -8
  38. package/lib/components/commons/components/combo-box/selection/selection-container.spec.js +4 -5
  39. package/lib/components/commons/components/combo-box/selection/selection.js +11 -18
  40. package/lib/components/commons/components/combo-box/selection/selection.spec.js +25 -36
  41. package/lib/components/commons/components/combo-box/state-management/actions.js +21 -24
  42. package/lib/components/commons/components/combo-box/state-management/index.js +10 -18
  43. package/lib/components/commons/components/combo-box/state-management/{reducer/reduce-on-keydown → reduce-on-keydown}/keyboard-key-codes.js +2 -4
  44. package/lib/components/commons/components/combo-box/state-management/{reducer/reduce-on-keydown → reduce-on-keydown}/on-arrow-down.js +5 -7
  45. package/lib/components/commons/components/combo-box/state-management/{reducer/reduce-on-keydown → reduce-on-keydown}/on-arrow-up.js +5 -7
  46. package/lib/components/commons/components/combo-box/state-management/{reducer/reduce-on-keydown → reduce-on-keydown}/on-end.js +4 -6
  47. package/lib/components/commons/components/combo-box/state-management/{reducer/reduce-on-keydown → reduce-on-keydown}/on-enter.js +4 -6
  48. package/lib/components/commons/components/combo-box/state-management/{reducer/reduce-on-keydown → reduce-on-keydown}/on-escape.js +3 -5
  49. package/lib/components/commons/components/combo-box/state-management/{reducer/reduce-on-keydown → reduce-on-keydown}/on-home.js +4 -6
  50. package/lib/components/commons/components/combo-box/state-management/{reducer/reduce-on-keydown → reduce-on-keydown}/on-tab.js +3 -5
  51. package/lib/components/commons/components/combo-box/state-management/reduce-on-keydown/reduce-on-keydown.js +40 -0
  52. package/lib/components/commons/components/combo-box/state-management/reducer.js +53 -0
  53. package/lib/components/commons/components/default-label-renderer.js +0 -10
  54. package/lib/components/commons/components/default-label-renderer.spec.js +1 -1
  55. package/lib/components/commons/components/default-option-renderer.js +1 -2
  56. package/lib/components/commons/components/description.js +9 -7
  57. package/lib/components/commons/components/dragger/dragger.js +5 -15
  58. package/lib/components/commons/components/dragger/dragger.spec.js +10 -1
  59. package/lib/components/commons/components/errors/errors.js +26 -30
  60. package/lib/components/commons/components/errors/errors.spec.js +13 -7
  61. package/lib/components/commons/components/fab/fab.js +7 -21
  62. package/lib/components/commons/components/fab/fab.spec.js +1 -1
  63. package/lib/components/commons/components/field-container/field-container.js +5 -19
  64. package/lib/components/commons/components/html-table/index.js +12 -13
  65. package/lib/components/commons/components/html-table/table.js +3 -11
  66. package/lib/components/commons/components/html-table/table.spec.js +4 -6
  67. package/lib/components/commons/components/html-table/tbody.js +3 -13
  68. package/lib/components/commons/components/html-table/tbody.spec.js +4 -6
  69. package/lib/components/commons/components/html-table/td.js +3 -18
  70. package/lib/components/commons/components/html-table/td.spec.js +4 -6
  71. package/lib/components/commons/components/html-table/th.js +3 -17
  72. package/lib/components/commons/components/html-table/th.spec.js +6 -8
  73. package/lib/components/commons/components/html-table/thead.js +3 -12
  74. package/lib/components/commons/components/html-table/thead.spec.js +3 -4
  75. package/lib/components/commons/components/html-table/tr.js +3 -13
  76. package/lib/components/commons/components/html-table/tr.spec.js +8 -14
  77. package/lib/components/commons/components/is-network/is-network.js +2 -2
  78. package/lib/components/commons/components/is-network/use-online-status.js +2 -2
  79. package/lib/components/commons/components/is-network/use-online-status.spec.js +0 -1
  80. package/lib/components/commons/components/label/label.spec.js +4 -5
  81. package/lib/components/commons/components/lunatic-component-with-label.js +2 -21
  82. package/lib/components/commons/components/lunatic-component-without-label.js +11 -38
  83. package/lib/components/commons/components/missing/missing.js +3 -1
  84. package/lib/components/commons/components/nothing-to-display.spec.js +2 -3
  85. package/lib/components/commons/components/orchestrated-component.js +1 -3
  86. package/lib/components/commons/components/variable-status/variable-status.js +7 -2
  87. package/lib/components/commons/create-customizable-field.js +2 -3
  88. package/lib/components/commons/create-row-orchestrator.js +10 -8
  89. package/lib/components/commons/icons/{checkbox-checked.icon.js → checkbox-checked-icon.js} +4 -8
  90. package/lib/components/commons/icons/{checkbox-unchecked.icon.js → checkbox-unchecked-icon.js} +4 -8
  91. package/lib/components/commons/icons/{closed.icon.js → closed-icon.js} +4 -6
  92. package/lib/components/commons/icons/{cross.icon.js → cross-icon.js} +4 -6
  93. package/lib/components/commons/icons/icon-props.js +5 -0
  94. package/lib/components/commons/icons/index.js +20 -21
  95. package/lib/components/commons/icons/{load.icon.js → load-icon.js} +5 -9
  96. package/lib/components/commons/icons/lunatic-icon.js +3 -6
  97. package/lib/components/commons/icons/{network.icon.js → network-icon.js} +5 -9
  98. package/lib/components/commons/icons/{on-drag.icon.js → on-drag-icon.js} +5 -9
  99. package/lib/components/commons/icons/{opened.icon.js → opened-icon.js} +4 -8
  100. package/lib/components/commons/icons/{radio-checked.icon.js → radio-checked-icon.js} +3 -4
  101. package/lib/components/commons/icons/{radio-unchecked.icon.js → radio-unchecked-icon.js} +4 -8
  102. package/lib/components/commons/index.js +6 -23
  103. package/lib/components/commons/safety-label.js +5 -6
  104. package/lib/components/commons/use-document-add-event-listener.js +11 -71
  105. package/lib/components/commons/use-on-handle-change.spec.js +6 -2
  106. package/lib/components/commons/use-options-keydown.js +1 -2
  107. package/lib/components/component-set/html/component-set-component-container.js +20 -0
  108. package/lib/components/component-set/html/component-set-components.js +68 -0
  109. package/lib/components/component-set/html/component-set.js +30 -0
  110. package/lib/components/{commons/components/combo-box/panel → component-set/html/legend}/index.js +2 -2
  111. package/lib/components/component-set/html/legend/legend.js +30 -0
  112. package/lib/components/{commons/components/combo-box/state-management/reducer → component-set}/index.js +2 -2
  113. package/lib/components/component-set/lunatic-component-set.js +58 -0
  114. package/lib/components/datepicker/html/datepicker-input.js +1 -1
  115. package/lib/components/datepicker/html/datepicker.js +2 -15
  116. package/lib/components/datepicker/lunatic-datepicker.js +1 -1
  117. package/lib/components/declarations/declarations-after-text.js +0 -2
  118. package/lib/components/declarations/declarations.js +5 -11
  119. package/lib/components/declarations/declarations.scss +8 -2
  120. package/lib/components/dropdown/html/dropdown-simple/simple-label-renderer.js +0 -8
  121. package/lib/components/dropdown/html/dropdown-simple/simple-option-renderer.js +1 -1
  122. package/lib/components/dropdown/html/dropdown-writable/filter-tools/filter-options.js +11 -19
  123. package/lib/components/dropdown/html/dropdown-writable/filter-tools/filter-options.spec.js +106 -0
  124. package/lib/components/dropdown/html/dropdown-writable/filter-tools/get-label.js +4 -3
  125. package/lib/components/dropdown/html/dropdown-writable/filter-tools/letters-matching.js +1 -1
  126. package/lib/components/dropdown/html/dropdown-writable/filter-tools/prepare-prefix.js +4 -1
  127. package/lib/components/dropdown/html/dropdown-writable/writable-label-renderer.js +0 -9
  128. package/lib/components/dropdown/lunatic-dropdown.js +0 -17
  129. package/lib/components/index.js +159 -14
  130. package/lib/components/input/html/input.js +4 -24
  131. package/lib/components/input/html/input.scss +1 -1
  132. package/lib/components/input/lunatic-input.js +0 -1
  133. package/lib/components/input-number/html/__snapshots__/input-number.spec.tsx.snap +94 -0
  134. package/lib/components/input-number/html/input-number-default.js +7 -28
  135. package/lib/components/input-number/html/input-number-thousand.js +5 -4
  136. package/lib/components/input-number/html/input-number.js +12 -35
  137. package/lib/components/input-number/html/{inpute-number.spec.js → input-number.spec.js} +15 -16
  138. package/lib/components/input-number/lunatic-input-number.js +0 -1
  139. package/lib/components/loop/block-for-loop/block-for-loop.js +41 -46
  140. package/lib/components/loop/block-for-loop/row.js +31 -33
  141. package/lib/components/loop/commons/handle-row-button.js +2 -2
  142. package/lib/components/loop/commons/row-component.js +4 -2
  143. package/lib/components/loop/loop.js +2 -5
  144. package/lib/components/loop/roster-for-loop/body.js +17 -21
  145. package/lib/components/loop/roster-for-loop/header.js +16 -16
  146. package/lib/components/loop/roster-for-loop/roster-for-loop.js +7 -12
  147. package/lib/components/loop/roster-for-loop/roster-table.js +22 -21
  148. package/lib/components/loop/roster-for-loop/row.js +45 -35
  149. package/lib/components/modal-controls/close-or-skip.js +1 -2
  150. package/lib/components/modal-controls/close-or-skip.spec.js +0 -16
  151. package/lib/components/modal-controls/modal-container.spec.js +0 -1
  152. package/lib/components/modal-controls/modal-controls.js +3 -5
  153. package/lib/components/modal-controls/modal-controls.spec.js +25 -16
  154. package/lib/components/pairwise-links/orchestrator.js +10 -8
  155. package/lib/components/pairwise-links/pairwise-links.js +8 -11
  156. package/lib/components/pairwise-links/row.js +15 -18
  157. package/lib/components/radio/html/radio-group-content.js +27 -21
  158. package/lib/components/radio/html/radio-group-content.spec.js +15 -2
  159. package/lib/components/radio/html/radio-group.js +4 -27
  160. package/lib/components/radio/html/radio-option.js +30 -22
  161. package/lib/components/radio/html/radio-option.spec.js +8 -0
  162. package/lib/components/radio/lunatic-radio-group.js +5 -6
  163. package/lib/components/roundabout/components/roundabout-it-button.js +2 -4
  164. package/lib/components/roundabout/lunatic-roundabout.js +0 -12
  165. package/lib/components/roundabout/roundabout.js +7 -21
  166. package/lib/components/sequence/sequence.js +0 -2
  167. package/lib/components/sequence/sequence.spec.js +9 -6
  168. package/lib/components/subsequence/subsequence.spec.js +7 -6
  169. package/lib/components/suggester/find-best-label/find-best-label.js +8 -13
  170. package/lib/components/suggester/html/suggester.js +24 -52
  171. package/lib/components/suggester/idb-suggester/check-store.js +3 -1
  172. package/lib/components/suggester/idb-suggester/idb-suggester.js +4 -22
  173. package/lib/components/suggester/idb-suggester/suggester-status.js +3 -3
  174. package/lib/components/suggester/lunatic-suggester.js +20 -63
  175. package/lib/components/suggester/searching/create-searching.js +6 -8
  176. package/lib/components/suggester-loader-widget/loader-row.js +4 -29
  177. package/lib/components/suggester-loader-widget/loader.js +8 -10
  178. package/lib/components/suggester-loader-widget/widget.js +6 -16
  179. package/lib/components/switch/html/switch.js +7 -29
  180. package/lib/components/switch/lunatic-switch.js +6 -14
  181. package/lib/components/table/cell.js +12 -23
  182. package/lib/components/table/header.js +23 -23
  183. package/lib/components/table/lunatic-table.js +4 -40
  184. package/lib/components/table/row.js +2 -4
  185. package/lib/components/table/table-orchestrator.js +10 -20
  186. package/lib/components/textarea/html/textarea.js +3 -3
  187. package/lib/components/textarea/lunatic-textarea.js +0 -1
  188. package/lib/hooks/use-ref-sync.js +15 -0
  189. package/lib/i18n/dictionary.js +4 -0
  190. package/lib/src/components/button/index.d.ts +1 -0
  191. package/lib/src/components/button/lunatic-button.d.ts +10 -0
  192. package/lib/src/components/button/lunatic-button.spec.d.ts +1 -0
  193. package/lib/src/components/checkbox/checkbox-boolean/html/checkbox-boolean.d.ts +13 -0
  194. package/lib/src/components/checkbox/checkbox-boolean/html/checkbox-boolean.spec.d.ts +1 -0
  195. package/lib/src/components/checkbox/checkbox-boolean/index.d.ts +1 -0
  196. package/lib/src/components/checkbox/checkbox-boolean/lunatic-checkbox-boolean.d.ts +9 -0
  197. package/lib/src/components/checkbox/checkbox-group/checkbox-group-content.d.ts +9 -0
  198. package/lib/src/components/checkbox/checkbox-group/html/checkbox-group-content.d.ts +9 -0
  199. package/lib/src/components/checkbox/checkbox-group/html/checkbox-group-content.spec.d.ts +1 -0
  200. package/lib/src/components/checkbox/checkbox-group/html/checkbox-group.d.ts +14 -0
  201. package/lib/src/components/checkbox/checkbox-group/index.d.ts +1 -0
  202. package/lib/src/components/checkbox/checkbox-group/lunatic-checkbox-group.d.ts +11 -0
  203. package/lib/src/components/checkbox/checkbox-one/html/checkbox-one.d.ts +5 -0
  204. package/lib/src/components/checkbox/checkbox-one/html/checkbox-one.spec.d.ts +1 -0
  205. package/lib/src/components/checkbox/checkbox-one/index.d.ts +1 -0
  206. package/lib/src/components/checkbox/checkbox-one/lunatic-checkbox-one.d.ts +4 -0
  207. package/lib/src/components/checkbox/commons/checkbox-option.d.ts +15 -0
  208. package/lib/src/components/checkbox/commons/checkbox-option.spec.d.ts +1 -0
  209. package/lib/src/components/checkbox/commons/getShortcutKey.d.ts +1 -0
  210. package/lib/src/components/checkbox/commons/index.d.ts +1 -0
  211. package/lib/src/components/checkbox/index.d.ts +3 -0
  212. package/lib/src/components/commons/components/combo-box/combo-box-container.d.ts +8 -0
  213. package/lib/src/components/commons/components/combo-box/combo-box-container.spec.d.ts +1 -0
  214. package/lib/src/components/commons/components/combo-box/combo-box-content.d.ts +9 -0
  215. package/lib/src/components/commons/components/combo-box/combo-box.d.ts +21 -0
  216. package/lib/src/components/commons/components/combo-box/combo-box.stories.d.ts +27 -0
  217. package/lib/src/components/commons/components/combo-box/combo-box.type.d.ts +8 -0
  218. package/lib/src/components/commons/components/combo-box/index.d.ts +1 -0
  219. package/lib/src/components/commons/components/combo-box/panel/option-container.d.ts +8 -0
  220. package/lib/src/components/commons/components/combo-box/panel/option-container.spec.d.ts +1 -0
  221. package/lib/src/components/commons/components/combo-box/panel/panel-container.d.ts +8 -0
  222. package/lib/src/components/commons/components/combo-box/panel/panel-container.spec.d.ts +1 -0
  223. package/lib/src/components/commons/components/combo-box/panel/panel.d.ts +17 -0
  224. package/lib/src/components/commons/components/combo-box/panel/panel.spec.d.ts +1 -0
  225. package/lib/src/components/commons/components/combo-box/selection/delete.d.ts +9 -0
  226. package/lib/src/components/commons/components/combo-box/selection/delete.spec.d.ts +1 -0
  227. package/lib/src/components/commons/components/combo-box/selection/displayLabelOrInput.d.ts +5 -0
  228. package/lib/src/components/commons/components/combo-box/selection/displayLabelOrInput.spec.d.ts +1 -0
  229. package/lib/src/components/commons/components/combo-box/selection/input.d.ts +6 -0
  230. package/lib/src/components/commons/components/combo-box/selection/label-selection.d.ts +20 -0
  231. package/lib/src/components/commons/components/combo-box/selection/label-selection.spec.d.ts +1 -0
  232. package/lib/src/components/commons/components/combo-box/selection/selection-container.d.ts +10 -0
  233. package/lib/src/components/commons/components/combo-box/selection/selection-container.spec.d.ts +1 -0
  234. package/lib/src/components/commons/components/combo-box/selection/selection.d.ts +11 -0
  235. package/lib/src/components/commons/components/combo-box/selection/selection.spec.d.ts +1 -0
  236. package/lib/src/components/commons/components/combo-box/state-management/actions.d.ts +78 -0
  237. package/lib/src/components/commons/components/combo-box/state-management/index.d.ts +9 -0
  238. package/lib/src/components/commons/components/combo-box/state-management/reduce-on-init.d.ts +4 -0
  239. package/lib/src/components/commons/components/combo-box/state-management/reduce-on-keydown/keyboard-key-codes.d.ts +9 -0
  240. package/lib/src/components/commons/components/combo-box/state-management/reduce-on-keydown/on-arrow-down.d.ts +2 -0
  241. package/lib/src/components/commons/components/combo-box/state-management/reduce-on-keydown/on-arrow-up.d.ts +2 -0
  242. package/lib/src/components/commons/components/combo-box/state-management/reduce-on-keydown/on-end.d.ts +2 -0
  243. package/lib/src/components/commons/components/combo-box/state-management/reduce-on-keydown/on-enter.d.ts +2 -0
  244. package/lib/src/components/commons/components/combo-box/state-management/reduce-on-keydown/on-escape.d.ts +2 -0
  245. package/lib/src/components/commons/components/combo-box/state-management/reduce-on-keydown/on-home.d.ts +2 -0
  246. package/lib/src/components/commons/components/combo-box/state-management/reduce-on-keydown/on-tab.d.ts +2 -0
  247. package/lib/src/components/commons/components/combo-box/state-management/reduce-on-keydown/reduce-on-keydown.d.ts +9 -0
  248. package/lib/src/components/commons/components/combo-box/state-management/reducer.d.ts +3 -0
  249. package/lib/src/components/commons/components/default-label-renderer.d.ts +9 -0
  250. package/lib/src/components/commons/components/default-label-renderer.spec.d.ts +1 -0
  251. package/lib/src/components/commons/components/default-option-renderer.d.ts +8 -0
  252. package/lib/src/components/commons/components/default-option-renderer.spec.d.ts +1 -0
  253. package/lib/src/components/commons/components/description.d.ts +22 -0
  254. package/lib/src/components/commons/components/description.spec.d.ts +1 -0
  255. package/lib/src/components/commons/components/dragger/dragger.d.ts +17 -0
  256. package/lib/src/components/commons/components/dragger/dragger.spec.d.ts +1 -0
  257. package/lib/src/components/commons/components/dragger/index.d.ts +1 -0
  258. package/lib/src/components/commons/components/errors/errors.d.ts +9 -0
  259. package/lib/src/components/commons/components/errors/errors.spec.d.ts +1 -0
  260. package/lib/src/components/commons/components/errors/index.d.ts +1 -0
  261. package/lib/src/components/commons/components/fab/fab.d.ts +7 -0
  262. package/lib/src/components/commons/components/fab/fab.spec.d.ts +1 -0
  263. package/lib/src/components/commons/components/fab/index.d.ts +1 -0
  264. package/lib/src/components/commons/components/field-container/field-container.d.ts +6 -0
  265. package/lib/src/components/commons/components/field-container/filed-container.spec.d.ts +1 -0
  266. package/lib/src/components/commons/components/field-container/index.d.ts +1 -0
  267. package/lib/src/components/commons/components/fieldset.d.ts +13 -0
  268. package/lib/src/components/commons/components/fieldset.spec.d.ts +1 -0
  269. package/lib/src/components/commons/components/html-table/index.d.ts +6 -0
  270. package/lib/src/components/commons/components/html-table/table.d.ts +8 -0
  271. package/lib/src/components/commons/components/html-table/table.spec.d.ts +1 -0
  272. package/lib/src/components/commons/components/html-table/tbody.d.ts +7 -0
  273. package/lib/src/components/commons/components/html-table/tbody.spec.d.ts +1 -0
  274. package/lib/src/components/commons/components/html-table/td.d.ts +11 -0
  275. package/lib/src/components/commons/components/html-table/td.spec.d.ts +1 -0
  276. package/lib/src/components/commons/components/html-table/th.d.ts +11 -0
  277. package/lib/src/components/commons/components/html-table/th.spec.d.ts +1 -0
  278. package/lib/src/components/commons/components/html-table/thead.d.ts +7 -0
  279. package/lib/src/components/commons/components/html-table/thead.spec.d.ts +1 -0
  280. package/lib/src/components/commons/components/html-table/tr.d.ts +8 -0
  281. package/lib/src/components/commons/components/html-table/tr.spec.d.ts +1 -0
  282. package/lib/src/components/commons/components/is-network/index.d.ts +1 -0
  283. package/lib/src/components/commons/components/is-network/is-network.d.ts +7 -0
  284. package/lib/src/components/commons/components/is-network/is-network.spec.d.ts +1 -0
  285. package/lib/src/components/commons/components/is-network/use-online-status.d.ts +2 -0
  286. package/lib/src/components/commons/components/is-network/use-online-status.spec.d.ts +1 -0
  287. package/lib/src/components/commons/components/label/index.d.ts +1 -0
  288. package/lib/src/components/commons/components/label/label.d.ts +14 -0
  289. package/lib/src/components/commons/components/label/label.spec.d.ts +1 -0
  290. package/lib/src/components/commons/components/lunatic-component-with-label.d.ts +12 -0
  291. package/lib/src/components/commons/components/lunatic-component-without-label.d.ts +12 -0
  292. package/lib/src/components/commons/components/missing/index.d.ts +1 -0
  293. package/lib/src/components/commons/components/missing/missing.d.ts +14 -0
  294. package/lib/src/components/commons/components/missing/missing.spec.d.ts +1 -0
  295. package/lib/src/components/commons/components/nothing-to-display.d.ts +3 -0
  296. package/lib/src/components/commons/components/nothing-to-display.spec.d.ts +1 -0
  297. package/lib/src/components/commons/components/orchestrated-component.d.ts +10 -0
  298. package/lib/src/components/commons/components/variable-status/img/index.d.ts +2 -0
  299. package/lib/src/components/commons/components/variable-status/index.d.ts +1 -0
  300. package/lib/src/components/commons/components/variable-status/variable-status.d.ts +16 -0
  301. package/lib/src/components/commons/components/variable-status/variable-status.spec.d.ts +1 -0
  302. package/lib/src/components/commons/create-customizable-field.d.ts +3 -0
  303. package/lib/src/components/commons/create-row-orchestrator.d.ts +31 -0
  304. package/lib/src/components/commons/icons/checkbox-checked-icon.d.ts +3 -0
  305. package/lib/src/components/commons/icons/checkbox-unchecked-icon.d.ts +3 -0
  306. package/lib/src/components/commons/icons/closed-icon.d.ts +3 -0
  307. package/lib/src/components/commons/icons/cross-icon.d.ts +3 -0
  308. package/lib/src/components/commons/icons/icon-props.d.ts +5 -0
  309. package/lib/src/components/commons/icons/index.d.ts +10 -0
  310. package/lib/src/components/commons/icons/load-icon.d.ts +3 -0
  311. package/lib/src/components/commons/icons/lunatic-icon.d.ts +5 -0
  312. package/lib/src/components/commons/icons/network-icon.d.ts +3 -0
  313. package/lib/src/components/commons/icons/on-drag-icon.d.ts +3 -0
  314. package/lib/src/components/commons/icons/opened-icon.d.ts +3 -0
  315. package/lib/src/components/commons/icons/radio-checked-icon.d.ts +4 -0
  316. package/lib/src/components/commons/icons/radio-unchecked-icon.d.ts +3 -0
  317. package/lib/src/components/commons/index.d.ts +17 -0
  318. package/lib/src/components/commons/safety-label.d.ts +3 -0
  319. package/lib/src/components/commons/use-document-add-event-listener.d.ts +2 -0
  320. package/lib/src/components/commons/use-on-handle-change.d.ts +12 -0
  321. package/lib/src/components/commons/use-on-handle-change.spec.d.ts +1 -0
  322. package/lib/src/components/commons/use-options-keydown.d.ts +7 -0
  323. package/lib/src/components/component-set/html/component-set-component-container.d.ts +6 -0
  324. package/lib/src/components/component-set/html/component-set-components.d.ts +7 -0
  325. package/lib/src/components/component-set/html/component-set.d.ts +9 -0
  326. package/lib/src/components/component-set/html/legend/index.d.ts +1 -0
  327. package/lib/src/components/component-set/html/legend/legend.d.ts +8 -0
  328. package/lib/src/components/component-set/index.d.ts +1 -0
  329. package/lib/src/components/component-set/lunatic-component-set.d.ts +4 -0
  330. package/lib/src/components/datepicker/html/datepicker-container.d.ts +3 -0
  331. package/lib/src/components/datepicker/html/datepicker-input.d.ts +13 -0
  332. package/lib/src/components/datepicker/html/datepicker.d.ts +17 -0
  333. package/lib/src/components/datepicker/index.d.ts +1 -0
  334. package/lib/src/components/datepicker/lunatic-datepicker.d.ts +9 -0
  335. package/lib/src/components/declarations/declaration.d.ts +6 -0
  336. package/lib/src/components/declarations/declaration.spec.d.ts +1 -0
  337. package/lib/src/components/declarations/declarations-after-text.d.ts +4 -0
  338. package/lib/src/components/declarations/declarations-before-text.d.ts +4 -0
  339. package/lib/src/components/declarations/declarations-detachable.d.ts +4 -0
  340. package/lib/src/components/declarations/declarations.d.ts +15 -0
  341. package/lib/src/components/declarations/declarations.spec.d.ts +1 -0
  342. package/lib/src/components/declarations/index.d.ts +4 -0
  343. package/lib/src/components/dropdown/html/dropdown-simple/dropdown-simple.d.ts +4 -0
  344. package/lib/src/components/dropdown/html/dropdown-simple/index.d.ts +1 -0
  345. package/lib/src/components/dropdown/html/dropdown-simple/simple-label-renderer.d.ts +9 -0
  346. package/lib/src/components/dropdown/html/dropdown-simple/simple-option-renderer.d.ts +8 -0
  347. package/lib/src/components/dropdown/html/dropdown-writable/dropdown-writable.d.ts +16 -0
  348. package/lib/src/components/dropdown/html/dropdown-writable/filter-tools/filter-options.d.ts +6 -0
  349. package/lib/src/components/dropdown/html/dropdown-writable/filter-tools/filter-options.spec.d.ts +1 -0
  350. package/lib/src/components/dropdown/html/dropdown-writable/filter-tools/get-label.d.ts +9 -0
  351. package/lib/src/components/dropdown/html/dropdown-writable/filter-tools/letters-matching.d.ts +2 -0
  352. package/lib/src/components/dropdown/html/dropdown-writable/filter-tools/match.d.ts +2 -0
  353. package/lib/src/components/dropdown/html/dropdown-writable/filter-tools/prepare-prefix.d.ts +2 -0
  354. package/lib/src/components/dropdown/html/dropdown-writable/index.d.ts +1 -0
  355. package/lib/src/components/dropdown/html/dropdown-writable/writable-label-renderer.d.ts +9 -0
  356. package/lib/src/components/dropdown/html/dropdown-writable/writable-option-renderer.d.ts +9 -0
  357. package/lib/src/components/dropdown/html/dropdown.d.ts +9 -0
  358. package/lib/src/components/dropdown/index.d.ts +1 -0
  359. package/lib/src/components/dropdown/lunatic-dropdown.d.ts +4 -0
  360. package/lib/src/components/filter-description/component.d.ts +7 -0
  361. package/lib/src/components/filter-description/component.spec.d.ts +1 -0
  362. package/lib/src/components/filter-description/index.d.ts +1 -0
  363. package/lib/src/components/index.d.ts +24 -0
  364. package/lib/src/components/input/html/input.d.ts +16 -0
  365. package/lib/src/components/input/index.d.ts +1 -0
  366. package/lib/src/components/input/lunatic-input.d.ts +4 -0
  367. package/lib/src/components/input-number/html/input-number-default.d.ts +14 -0
  368. package/lib/src/components/input-number/html/input-number-thousand.d.ts +14 -0
  369. package/lib/src/components/input-number/html/input-number.d.ts +20 -0
  370. package/lib/src/components/input-number/html/input-number.spec.d.ts +1 -0
  371. package/lib/src/components/input-number/index.d.ts +1 -0
  372. package/lib/src/components/input-number/lunatic-input-number.d.ts +4 -0
  373. package/lib/src/components/loop/block-for-loop/block-for-loop-ochestrator.d.ts +50 -0
  374. package/lib/src/components/loop/block-for-loop/block-for-loop.d.ts +21 -0
  375. package/lib/src/components/loop/block-for-loop/index.d.ts +1 -0
  376. package/lib/src/components/loop/block-for-loop/row.d.ts +23 -0
  377. package/lib/src/components/loop/commons/get-init-length.d.ts +2 -0
  378. package/lib/src/components/loop/commons/handle-row-button.d.ts +8 -0
  379. package/lib/src/components/loop/commons/index.d.ts +2 -0
  380. package/lib/src/components/loop/commons/row-component.d.ts +10 -0
  381. package/lib/src/components/loop/index.d.ts +1 -0
  382. package/lib/src/components/loop/loop.d.ts +4 -0
  383. package/lib/src/components/loop/roster-for-loop/body.d.ts +13 -0
  384. package/lib/src/components/loop/roster-for-loop/header.d.ts +9 -0
  385. package/lib/src/components/loop/roster-for-loop/index.d.ts +1 -0
  386. package/lib/src/components/loop/roster-for-loop/roster-for-loop-orchestrator.d.ts +50 -0
  387. package/lib/src/components/loop/roster-for-loop/roster-for-loop.d.ts +21 -0
  388. package/lib/src/components/loop/roster-for-loop/roster-table.d.ts +14 -0
  389. package/lib/src/components/loop/roster-for-loop/row.d.ts +24 -0
  390. package/lib/src/components/modal-controls/close-or-skip.d.ts +8 -0
  391. package/lib/src/components/modal-controls/close-or-skip.spec.d.ts +1 -0
  392. package/lib/src/components/modal-controls/index.d.ts +1 -0
  393. package/lib/src/components/modal-controls/modal-container.d.ts +3 -0
  394. package/lib/src/components/modal-controls/modal-container.spec.d.ts +1 -0
  395. package/lib/src/components/modal-controls/modal-controls.d.ts +11 -0
  396. package/lib/src/components/modal-controls/modal-controls.spec.d.ts +1 -0
  397. package/lib/src/components/pairwise-links/index.d.ts +1 -0
  398. package/lib/src/components/pairwise-links/orchestrator.d.ts +7 -0
  399. package/lib/src/components/pairwise-links/pairwise-links.d.ts +4 -0
  400. package/lib/src/components/pairwise-links/row.d.ts +8 -0
  401. package/lib/src/components/radio/html/radio-group-content.d.ts +17 -0
  402. package/lib/src/components/radio/html/radio-group-content.spec.d.ts +1 -0
  403. package/lib/src/components/radio/html/radio-group.d.ts +22 -0
  404. package/lib/src/components/radio/html/radio-option.d.ts +21 -0
  405. package/lib/src/components/radio/html/radio-option.spec.d.ts +1 -0
  406. package/lib/src/components/radio/index.d.ts +1 -0
  407. package/lib/src/components/radio/lunatic-radio-group.d.ts +13 -0
  408. package/lib/src/components/roundabout/components/roundabout-container.d.ts +6 -0
  409. package/lib/src/components/roundabout/components/roundabout-container.spec.d.ts +1 -0
  410. package/lib/src/components/roundabout/components/roundabout-it-button.d.ts +11 -0
  411. package/lib/src/components/roundabout/components/roundabout-it-button.spec.d.ts +1 -0
  412. package/lib/src/components/roundabout/components/roundabout-it-container.d.ts +5 -0
  413. package/lib/src/components/roundabout/components/roundabout-it-container.spec.d.ts +1 -0
  414. package/lib/src/components/roundabout/components/roundabout-it-title.d.ts +5 -0
  415. package/lib/src/components/roundabout/components/roundabout-it-title.spec.d.ts +1 -0
  416. package/lib/src/components/roundabout/components/roundabout-label.d.ts +5 -0
  417. package/lib/src/components/roundabout/components/roundabout-label.spec.d.ts +1 -0
  418. package/lib/src/components/roundabout/components/roundabout-pending.d.ts +3 -0
  419. package/lib/src/components/roundabout/components/roundabout-pending.spec.d.ts +1 -0
  420. package/lib/src/components/roundabout/index.d.ts +1 -0
  421. package/lib/src/components/roundabout/lunatic-roundabout.d.ts +7 -0
  422. package/lib/src/components/roundabout/redirect.d.ts +7 -0
  423. package/lib/src/components/roundabout/redirect.spec.d.ts +1 -0
  424. package/lib/src/components/roundabout/roundabout.d.ts +15 -0
  425. package/lib/src/components/roundabout/roundabout.spec.d.ts +1 -0
  426. package/lib/src/components/sequence/index.d.ts +1 -0
  427. package/lib/src/components/sequence/sequence.d.ts +4 -0
  428. package/lib/src/components/sequence/sequence.spec.d.ts +1 -0
  429. package/lib/src/components/subsequence/index.d.ts +1 -0
  430. package/lib/src/components/subsequence/subsequence.d.ts +3 -0
  431. package/lib/src/components/subsequence/subsequence.spec.d.ts +1 -0
  432. package/lib/src/components/suggester/find-best-label/find-best-label.d.ts +2 -0
  433. package/lib/src/components/suggester/find-best-label/index.d.ts +1 -0
  434. package/lib/src/components/suggester/html/notification.d.ts +8 -0
  435. package/lib/src/components/suggester/html/suggester.d.ts +23 -0
  436. package/lib/src/components/suggester/idb-suggester/check-store.d.ts +8 -0
  437. package/lib/src/components/suggester/idb-suggester/idb-suggester.d.ts +7 -0
  438. package/lib/src/components/suggester/idb-suggester/index.d.ts +1 -0
  439. package/lib/src/components/suggester/idb-suggester/suggester-notification.d.ts +12 -0
  440. package/lib/src/components/suggester/idb-suggester/suggester-status.d.ts +26 -0
  441. package/lib/src/components/suggester/index.d.ts +1 -0
  442. package/lib/src/components/suggester/lunatic-suggester.d.ts +4 -0
  443. package/lib/src/components/suggester/searching/create-searching.d.ts +6 -0
  444. package/lib/src/components/suggester/searching/index.d.ts +1 -0
  445. package/lib/src/components/suggester-loader-widget/index.d.ts +1 -0
  446. package/lib/src/components/suggester-loader-widget/loader-row.d.ts +11 -0
  447. package/lib/src/components/suggester-loader-widget/loader.d.ts +13 -0
  448. package/lib/src/components/suggester-loader-widget/progress.d.ts +8 -0
  449. package/lib/src/components/suggester-loader-widget/tools/action-tool.d.ts +9 -0
  450. package/lib/src/components/suggester-loader-widget/tools/index.d.ts +2 -0
  451. package/lib/src/components/suggester-loader-widget/tools/tools.d.ts +3 -0
  452. package/lib/src/components/suggester-loader-widget/widget-container.d.ts +8 -0
  453. package/lib/src/components/suggester-loader-widget/widget.d.ts +16 -0
  454. package/lib/src/components/switch/html/switch.d.ts +17 -0
  455. package/lib/src/components/switch/index.d.ts +1 -0
  456. package/lib/src/components/switch/lunatic-switch.d.ts +4 -0
  457. package/lib/src/components/table/cell.d.ts +20 -0
  458. package/lib/src/components/table/header.d.ts +11 -0
  459. package/lib/src/components/table/index.d.ts +1 -0
  460. package/lib/src/components/table/lunatic-table.d.ts +4 -0
  461. package/lib/src/components/table/row.d.ts +19 -0
  462. package/lib/src/components/table/table-orchestrator.d.ts +5 -0
  463. package/lib/src/components/textarea/html/textarea.d.ts +17 -0
  464. package/lib/src/components/textarea/index.d.ts +1 -0
  465. package/lib/src/components/textarea/lunatic-textarea.d.ts +19 -0
  466. package/lib/src/components/type.d.ts +85 -36
  467. package/lib/src/hooks/use-ref-sync.d.ts +5 -0
  468. package/lib/src/i18n/dictionary.d.ts +4 -0
  469. package/lib/src/i18n/index.d.ts +1 -1
  470. package/lib/src/index.d.ts +1 -0
  471. package/lib/src/type.utils.d.ts +4 -0
  472. package/lib/src/use-lunatic/commons/execute-expression/create-refresh-calculated.d.ts +2 -2
  473. package/lib/src/use-lunatic/commons/execute-expression/create-refresh-calculated.spec.d.ts +1 -0
  474. package/lib/src/use-lunatic/commons/fill-components/fill-component-expressions.d.ts +4 -1
  475. package/lib/src/use-lunatic/commons/fill-components/fill-from-state.d.ts +53 -30
  476. package/lib/src/use-lunatic/commons/fill-components/fill-specific-expression.d.ts +27 -45
  477. package/lib/src/use-lunatic/commons/use-components-from-state.d.ts +1 -1
  478. package/lib/src/use-lunatic/reducer/commons/is-loop-component.d.ts +2 -4
  479. package/lib/src/use-lunatic/reducer/overview/overview-on-init.d.ts +10 -1
  480. package/lib/src/use-lunatic/reducer/reduce-roundabout.d.ts +1 -98
  481. package/lib/src/use-lunatic/reducer/resolve-component-controls/index.d.ts +1 -0
  482. package/lib/src/use-lunatic/reducer/resolve-component-controls/resolve-roundabout-control.d.ts +10 -0
  483. package/lib/src/use-lunatic/reducer/resolve-component-controls/resolve-simple-control.d.ts +3 -0
  484. package/lib/src/use-lunatic/replace-component-sequence.d.ts +11 -0
  485. package/lib/src/use-lunatic/type-source.d.ts +16 -5
  486. package/lib/src/use-lunatic/type.d.ts +11 -3
  487. package/lib/src/use-lunatic/use-lunatic.d.ts +1 -1
  488. package/lib/src/utils/constants/alphabet.d.ts +1 -0
  489. package/lib/src/utils/function.d.ts +4 -0
  490. package/lib/src/utils/idb-tools/create-db-opener.d.ts +13 -0
  491. package/lib/src/utils/idb-tools/create-open-db.d.ts +2 -0
  492. package/lib/src/utils/idb-tools/get-entity.d.ts +2 -0
  493. package/lib/src/utils/idb-tools/idb-bulk-insert.d.ts +16 -0
  494. package/lib/src/utils/idb-tools/idb-types.d.ts +16 -0
  495. package/lib/src/utils/idb-tools/index.d.ts +7 -0
  496. package/lib/src/utils/idb-tools/open-db.d.ts +2 -0
  497. package/lib/src/utils/idb-tools/open-or-create-db.d.ts +2 -0
  498. package/lib/src/utils/store-tools/auto-load.d.ts +6 -0
  499. package/lib/src/utils/store-tools/clear-store-data.d.ts +2 -0
  500. package/lib/src/utils/store-tools/clear-store-info.d.ts +2 -0
  501. package/lib/src/utils/store-tools/create/create.d.ts +4 -0
  502. package/lib/src/utils/store-tools/create/index.d.ts +2 -0
  503. package/lib/src/utils/store-tools/create/update-store-info.d.ts +2 -0
  504. package/lib/src/utils/store-tools/get-store-count.d.ts +2 -0
  505. package/lib/src/utils/store-tools/index.d.ts +7 -0
  506. package/lib/src/utils/store-tools/use-store-index.d.ts +4 -0
  507. package/lib/src/utils/suggester-workers/append-to-index/append.d.ts +6 -0
  508. package/lib/src/utils/suggester-workers/append-to-index/index.d.ts +2 -0
  509. package/lib/src/utils/suggester-workers/commons-tokenizer/prepare-string-indexation.d.ts +2 -0
  510. package/lib/src/utils/suggester-workers/searching/compute-score.d.ts +3 -0
  511. package/lib/src/utils/suggester-workers/searching/meloto-order.d.ts +24 -0
  512. package/lib/stories/Introduction.stories.mdx +4 -4
  513. package/lib/stories/checkboxGroup/source.json +4 -5
  514. package/lib/{components/commons/components/combo-box/state-management/reducer/reduce-on-delete.js → stories/component-set/component-set.stories.js} +45 -10
  515. package/lib/stories/component-set/data.json +18 -0
  516. package/lib/stories/component-set/data1.json +18 -0
  517. package/lib/stories/component-set/data2.json +18 -0
  518. package/lib/stories/component-set/source.json +99 -0
  519. package/lib/stories/component-set/source1.json +287 -0
  520. package/lib/stories/component-set/source2.json +413 -0
  521. package/lib/stories/custom-mui/suggester-mui/suggester-mui.js +1 -2
  522. package/lib/stories/declaration/source.json +24 -0
  523. package/lib/{components/commons/components/combo-box/state-management/reducer/reduce-on-focus.js → stories/loop/paginated-loop.stories.js} +23 -9
  524. package/lib/stories/loop/source-paginated.json +126 -0
  525. package/lib/stories/paste-questionnaire/test.stories.js +1 -1
  526. package/lib/stories/questionnaires/simpsons/simpsons.stories.js +5 -5
  527. package/lib/stories/questionnaires-test/controls/controls-externes.json +75 -0
  528. package/lib/{components/commons/components/combo-box/state-management/reducer/reduce-on-change.js → stories/questionnaires-test/controls/controls-externes.stories.js} +51 -11
  529. package/lib/stories/questionnaires-test/controls/controls.stories.js +1 -1
  530. package/lib/stories/questionnaires-test/test.stories.js +1 -1
  531. package/lib/stories/questionnaires2023/bySequence/source.json +5054 -0
  532. package/lib/stories/questionnaires2023/bySequence/ticWeb.stories.js +64 -0
  533. package/lib/stories/questionnaires2023/famille/famille.stories.js +64 -0
  534. package/lib/stories/questionnaires2023/famille/source.json +50344 -0
  535. package/lib/stories/questionnaires2023/simpsons/simpsons.stories.js +64 -0
  536. package/lib/stories/questionnaires2023/simpsons/source.json +5176 -0
  537. package/lib/stories/questionnaires2023/ticTel/source.json +12888 -0
  538. package/lib/stories/questionnaires2023/ticTel/ticWeb.stories.js +64 -0
  539. package/lib/stories/questionnaires2023/ticWeb/source.json +11331 -0
  540. package/lib/stories/questionnaires2023/ticWeb/ticWeb.stories.js +64 -0
  541. package/lib/stories/resizing-questionnaire/source.json +789 -0
  542. package/lib/stories/resizing-questionnaire/test.stories.js +84 -0
  543. package/lib/stories/roundabout/source.json +16 -0
  544. package/lib/stories/suggester/SuggesterNotification.js +26 -0
  545. package/lib/stories/suggester/suggester-workers.stories.js +16 -9
  546. package/lib/stories/suggester/suggester.stories.js +1 -0
  547. package/lib/use-lunatic/actions.js +4 -4
  548. package/lib/use-lunatic/commons/calculated-variables.js +1 -1
  549. package/lib/use-lunatic/commons/compile-controls.js +4 -3
  550. package/lib/use-lunatic/commons/execute-expression/create-execute-expression.spec.js +155 -0
  551. package/lib/use-lunatic/commons/execute-expression/create-refresh-calculated.js +3 -2
  552. package/lib/use-lunatic/commons/execute-expression/create-refresh-calculated.spec.js +128 -0
  553. package/lib/use-lunatic/commons/fill-components/fill-component-expressions.js +4 -1
  554. package/lib/use-lunatic/commons/fill-components/fill-component-expressions.spec.js +0 -2
  555. package/lib/use-lunatic/reducer/reduce-on-init.js +1 -2
  556. package/lib/use-lunatic/reducer/resolve-component-controls/index.js +12 -0
  557. package/lib/use-lunatic/reducer/{validate-controls/validation-utils.js → resolve-component-controls/resolve-component-control.js} +10 -34
  558. package/lib/use-lunatic/reducer/resolve-component-controls/resolve-roundabout-control.js +54 -0
  559. package/lib/use-lunatic/reducer/resolve-component-controls/resolve-simple-control.js +44 -0
  560. package/lib/use-lunatic/replace-component-sequence.js +28 -0
  561. package/lib/use-lunatic/type-source.js +15 -9
  562. package/lib/use-lunatic/use-lunatic.js +1 -1
  563. package/lib/use-lunatic/use-suggesters.js +5 -5
  564. package/lib/utils/function.js +11 -0
  565. package/lib/utils/idb-tools/create-db-opener.js +12 -5
  566. package/lib/utils/idb-tools/idb-bulk-insert.js +0 -6
  567. package/lib/utils/idb-tools/idb-types.js +5 -0
  568. package/lib/utils/idb-tools/open-db.js +2 -1
  569. package/lib/utils/idb-tools/open-or-create-db.js +5 -3
  570. package/lib/utils/store-tools/auto-load.js +2 -2
  571. package/lib/utils/store-tools/use-store-index.js +1 -1
  572. package/lib/utils/suggester-workers/append-to-index/append.js +3 -2
  573. package/lib/utils/suggester-workers/append-to-index/create-append-task.js +4 -2
  574. package/lib/utils/suggester-workers/commons-tokenizer/get-stemmer.spec.js +11 -0
  575. package/lib/utils/suggester-workers/commons-tokenizer/prepare-string-indexation.spec.js +10 -0
  576. package/lib/utils/suggester-workers/searching/compute-score.js +7 -12
  577. package/lib/utils/suggester-workers/searching/meloto-order.js +53 -0
  578. package/lib/utils/suggester-workers/searching/meloto-order.spec.js +67 -0
  579. package/lib/utils/suggester-workers/searching/searching.js +3 -3
  580. package/lib/utils/suggester-workers/searching/searching.worker.js +4 -2
  581. package/package.json +7 -3
  582. package/lib/components/commons/build-style-object.js +0 -25
  583. package/lib/components/commons/components/combo-box/selection/index.js +0 -13
  584. package/lib/components/commons/components/combo-box/state-management/combo-box-context.js +0 -16
  585. package/lib/components/commons/components/combo-box/state-management/initial-state.js +0 -14
  586. package/lib/components/commons/components/combo-box/state-management/reducer/reduce-on-keydown/index.js +0 -13
  587. package/lib/components/commons/components/combo-box/state-management/reducer/reduce-on-keydown/reduce-on-keydown.js +0 -40
  588. package/lib/components/commons/components/combo-box/state-management/reducer/reduce-on-select.js +0 -22
  589. package/lib/components/commons/components/combo-box/state-management/reducer/reducer.js +0 -41
  590. package/lib/components/commons/prop-types/declarations.js +0 -19
  591. package/lib/components/commons/prop-types/index.js +0 -41
  592. package/lib/components/commons/prop-types/lines.js +0 -13
  593. package/lib/components/commons/prop-types/options.js +0 -13
  594. package/lib/components/commons/prop-types/response.js +0 -13
  595. package/lib/components/commons/prop-types/value-type.js +0 -14
  596. package/lib/components/commons/use-previous.js +0 -16
  597. package/lib/components/components.js +0 -171
  598. package/lib/components/radio/html/dist/radio-group.css +0 -12
  599. package/lib/components/radio/radio-group.js +0 -48
  600. package/lib/components/suggester/idb-suggester/dist/index.dev.js +0 -12
  601. package/lib/dist/index.dev.js +0 -31
  602. package/lib/utils/suggester-workers/append-to-index/dist/append.worker.dev.js +0 -37
  603. package/lib/utils/suggester-workers/append-to-index/dist/create-append-task.js +0 -69
  604. package/lib/utils/suggester-workers/append-to-index/dist/index.dev.js +0 -24
  605. /package/lib/components/commons/components/combo-box/state-management/{reducer/reduce-on-init.js → reduce-on-init.js} +0 -0
  606. /package/lib/src/use-lunatic/reducer/{validate-controls/validation-utils.d.ts → resolve-component-controls/resolve-component-control.d.ts} +0 -0
@@ -4,6 +4,9 @@ Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
6
  exports.resolveComponentControls = resolveComponentControls;
7
+ var _resolveRoundaboutControl = require("./resolve-roundabout-control");
8
+ var _typeSource = require("../../type-source");
9
+ var _resolveSimpleControl = require("./resolve-simple-control");
7
10
  function _toConsumableArray(arr) { return _arrayWithoutHoles(arr) || _iterableToArray(arr) || _unsupportedIterableToArray(arr) || _nonIterableSpread(); }
8
11
  function _nonIterableSpread() { throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
9
12
  function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }
@@ -11,40 +14,13 @@ function _iterableToArray(iter) { if (typeof Symbol !== "undefined" && iter[Symb
11
14
  function _arrayWithoutHoles(arr) { if (Array.isArray(arr)) return _arrayLikeToArray(arr); }
12
15
  function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) arr2[i] = arr[i]; return arr2; }
13
16
  function resolveControl(state, control) {
14
- var _state$pager;
15
- var executeExpression = state.executeExpression;
16
- var _ref = (_state$pager = state.pager) !== null && _state$pager !== void 0 ? _state$pager : {},
17
- iteration = _ref.iteration,
18
- linksIterations = _ref.linksIterations;
19
- var criticality = control.criticality,
20
- errorMessage = control.errorMessage,
21
- id = control.id,
22
- typeOfControl = control.typeOfControl;
23
- var _control$control = control.control,
24
- _control$control2 = _control$control === void 0 ? {} : _control$control,
25
- _control$control2$val = _control$control2.value,
26
- value = _control$control2$val === void 0 ? 'true' : _control$control2$val;
27
- try {
28
- var result = executeExpression(value, {
29
- iteration: iteration,
30
- linksIterations: linksIterations
31
- });
32
- if (!result) {
33
- var label = executeExpression(errorMessage, {
34
- iteration: iteration,
35
- linksIterations: linksIterations
36
- });
37
- return {
38
- criticality: criticality,
39
- errorMessage: label,
40
- id: id,
41
- typeOfControl: typeOfControl
42
- };
43
- }
44
- return undefined;
45
- } catch (e) {
46
- console.warn("Error on validating control ".concat(value));
47
- return undefined;
17
+ var type = control.type;
18
+ switch (type) {
19
+ case _typeSource.ControlTypeEnum.roundabout:
20
+ return (0, _resolveRoundaboutControl.resolveRoundaboutControl)(state, control);
21
+ case _typeSource.ControlTypeEnum.simple:
22
+ default:
23
+ return (0, _resolveSimpleControl.resolveSimpleControl)(state, control);
48
24
  }
49
25
  }
50
26
 
@@ -0,0 +1,54 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.resolveRoundaboutControl = resolveRoundaboutControl;
7
+ /**
8
+ * Pour le Roundabout, le controle doit être validé pour chaque itération
9
+ * composants l'unité enquêtée.
10
+ * Itération prend pour valeur le rang de l'unité stat au sein de l'unité enquêté.
11
+ * Le rondpoint ne peut pas être placé dans une boucle car l'itération est effacée.
12
+ * TODO intégrer cela dans le cadre de boucle de bloucle.
13
+ */
14
+ function resolveRoundaboutControl(state, control) {
15
+ var _control$control$valu, _control$control;
16
+ var executeExpression = state.executeExpression;
17
+ var criticality = control.criticality,
18
+ errorMessage = control.errorMessage,
19
+ id = control.id,
20
+ typeOfControl = control.typeOfControl,
21
+ iterations = control.iterations;
22
+ var value = (_control$control$valu = control === null || control === void 0 ? void 0 : (_control$control = control.control) === null || _control$control === void 0 ? void 0 : _control$control.value) !== null && _control$control$valu !== void 0 ? _control$control$valu : 'true';
23
+ if (!iterations || iterations <= 0) {
24
+ return undefined;
25
+ }
26
+ var errors = Array.from({
27
+ length: iterations
28
+ }, function (_, k) {
29
+ return k;
30
+ })
31
+ /**
32
+ * Currently, the controls are lifted when the condition is false.
33
+ * An evolution is planned on the questionnaire generation side (Eno) to come back to a more coherent logic (i.e. lift the control when the condition is true)
34
+ *
35
+ * After this change, we have to change the next line to `.filter((iteration) => executeExpression(value, { iteration }))`
36
+ */.filter(function (iteration) {
37
+ return !executeExpression(value, {
38
+ iteration: iteration
39
+ });
40
+ }).map(function (iteration) {
41
+ return executeExpression(errorMessage, {
42
+ iteration: iteration
43
+ });
44
+ });
45
+ if (errors.length) {
46
+ return {
47
+ criticality: criticality,
48
+ errorMessage: errors,
49
+ id: id,
50
+ typeOfControl: typeOfControl
51
+ };
52
+ }
53
+ return undefined;
54
+ }
@@ -0,0 +1,44 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.resolveSimpleControl = resolveSimpleControl;
7
+ function resolveSimpleControl(state, control) {
8
+ var _state$pager, _control$control$valu, _control$control;
9
+ var executeExpression = state.executeExpression;
10
+ var _ref = (_state$pager = state.pager) !== null && _state$pager !== void 0 ? _state$pager : {},
11
+ iteration = _ref.iteration,
12
+ linksIterations = _ref.linksIterations;
13
+ var criticality = control.criticality,
14
+ errorMessage = control.errorMessage,
15
+ id = control.id,
16
+ typeOfControl = control.typeOfControl;
17
+ var value = (_control$control$valu = control === null || control === void 0 ? void 0 : (_control$control = control.control) === null || _control$control === void 0 ? void 0 : _control$control.value) !== null && _control$control$valu !== void 0 ? _control$control$valu : 'true';
18
+ var result = executeExpression(value, {
19
+ iteration: iteration,
20
+ linksIterations: linksIterations
21
+ });
22
+ try {
23
+ /**
24
+ * Currently, the controls are lifted when the condition is false.
25
+ * An evolution is planned on the questionnaire generation side (Eno) to come back to a more coherent logic (i.e. lift the control when the condition is true)
26
+ *
27
+ * After this change, we have to change the next line to `if (!result) return undefined;`
28
+ */
29
+ if (result) return undefined;
30
+ var label = executeExpression(errorMessage, {
31
+ iteration: iteration,
32
+ linksIterations: linksIterations
33
+ });
34
+ return {
35
+ criticality: criticality,
36
+ errorMessage: label,
37
+ id: id,
38
+ typeOfControl: typeOfControl
39
+ };
40
+ } catch (e) {
41
+ console.warn("Error on validating control ".concat(value));
42
+ return undefined;
43
+ }
44
+ }
@@ -0,0 +1,28 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.replaceComponentSequence = replaceComponentSequence;
7
+ function _toConsumableArray(arr) { return _arrayWithoutHoles(arr) || _iterableToArray(arr) || _unsupportedIterableToArray(arr) || _nonIterableSpread(); }
8
+ function _nonIterableSpread() { throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
9
+ function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }
10
+ function _iterableToArray(iter) { if (typeof Symbol !== "undefined" && iter[Symbol.iterator] != null || iter["@@iterator"] != null) return Array.from(iter); }
11
+ function _arrayWithoutHoles(arr) { if (Array.isArray(arr)) return _arrayLikeToArray(arr); }
12
+ function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) arr2[i] = arr[i]; return arr2; }
13
+ /**
14
+ * Pour le ComponentSet : les composants du fieldset n'existe pas dans pages.
15
+ * Ils échappent donc aux controls. On les substitue ici au ComponentSet.
16
+ * On ne peut pas les ajouter directement dans pages (en spécifiant un page), car ils s'afficheraient 2 fois : dans le fieldset et en dessus, comme
17
+ * des composant à part entière.
18
+ * D'autres composant pourraient un jour figurer ici.
19
+ */
20
+ function replaceComponentSequence(components) {
21
+ return components.reduce(function (acc, component) {
22
+ var componentType = component.componentType;
23
+ if (componentType === 'ComponentSet') {
24
+ return [].concat(_toConsumableArray(acc), _toConsumableArray(component.components));
25
+ }
26
+ return [].concat(_toConsumableArray(acc), [component]);
27
+ }, []);
28
+ }
@@ -3,22 +3,28 @@
3
3
  Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
- exports.TypeOfControl = exports.Criticality = void 0;
6
+ exports.TypeOfControl = exports.Criticality = exports.ControlTypeEnum = void 0;
7
7
  /**
8
8
  * Types used for source data (lunatic models and data.json)
9
9
  *
10
10
  * These types should not be used outside of use-lunatic
11
11
  */
12
- var Criticality;
13
- exports.Criticality = Criticality;
14
- (function (Criticality) {
12
+ var Criticality = /*#__PURE__*/function (Criticality) {
15
13
  Criticality["INFO"] = "INFO";
16
14
  Criticality["WARN"] = "WARN";
17
15
  Criticality["ERROR"] = "ERROR";
18
- })(Criticality || (exports.Criticality = Criticality = {}));
19
- var TypeOfControl;
20
- exports.TypeOfControl = TypeOfControl;
21
- (function (TypeOfControl) {
16
+ return Criticality;
17
+ }({});
18
+ exports.Criticality = Criticality;
19
+ var TypeOfControl = /*#__PURE__*/function (TypeOfControl) {
22
20
  TypeOfControl["FORMAT"] = "FORMAT";
23
21
  TypeOfControl["CONSISTENCY"] = "CONSISTENCY";
24
- })(TypeOfControl || (exports.TypeOfControl = TypeOfControl = {}));
22
+ return TypeOfControl;
23
+ }({});
24
+ exports.TypeOfControl = TypeOfControl;
25
+ var ControlTypeEnum = /*#__PURE__*/function (ControlTypeEnum) {
26
+ ControlTypeEnum["roundabout"] = "roundabout";
27
+ ControlTypeEnum["simple"] = "simple";
28
+ return ControlTypeEnum;
29
+ }({});
30
+ exports.ControlTypeEnum = ControlTypeEnum;
@@ -26,7 +26,7 @@ function _nonIterableRest() { throw new TypeError("Invalid attempt to destructur
26
26
  function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }
27
27
  function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) arr2[i] = arr[i]; return arr2; }
28
28
  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; } }
29
- function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
29
+ function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; } // @ts-ignore
30
30
  var empty = {}; // Keep the same empty object (to avoid problem with useEffect dependencies)
31
31
  var emptyFn = function emptyFn() {};
32
32
  var DEFAULT_DATA = empty;
@@ -23,16 +23,16 @@ function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o =
23
23
  function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) arr2[i] = arr[i]; return arr2; }
24
24
  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; } }
25
25
  function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
26
- var SuggesterStatus;
27
- exports.SuggesterStatus = SuggesterStatus;
28
- (function (SuggesterStatus) {
26
+ var SuggesterStatus = /*#__PURE__*/function (SuggesterStatus) {
29
27
  SuggesterStatus[SuggesterStatus["unused"] = 0] = "unused";
30
28
  SuggesterStatus[SuggesterStatus["idle"] = 1] = "idle";
31
29
  SuggesterStatus[SuggesterStatus["pending"] = 2] = "pending";
32
30
  SuggesterStatus[SuggesterStatus["success"] = 3] = "success";
33
31
  SuggesterStatus[SuggesterStatus["unknown"] = 4] = "unknown";
34
32
  SuggesterStatus[SuggesterStatus["error"] = 5] = "error";
35
- })(SuggesterStatus || (exports.SuggesterStatus = SuggesterStatus = {}));
33
+ return SuggesterStatus;
34
+ }({});
35
+ exports.SuggesterStatus = SuggesterStatus;
36
36
  function nothing() {}
37
37
 
38
38
  // with side effect !
@@ -153,6 +153,6 @@ function useSuggesters(_ref) {
153
153
  });
154
154
  };
155
155
  }
156
- }, [suggesters, getReferentiel, status]);
156
+ }, [suggesters, auto, getReferentiel, status]);
157
157
  return getSuggesterStatus;
158
158
  }
@@ -0,0 +1,11 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.voidFunction = void 0;
7
+ /**
8
+ * Global void function to use as default parameters
9
+ */
10
+ var voidFunction = function voidFunction() {};
11
+ exports.voidFunction = voidFunction;
@@ -7,10 +7,10 @@ exports["default"] = void 0;
7
7
  var _getIdb = _interopRequireDefault(require("./get-idb"));
8
8
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; }
9
9
  var IDB_REF = (0, _getIdb["default"])();
10
- function onSuccessDefault(e, resolve) {
11
- resolve(e.result);
10
+ function onSuccessDefault(e, resolve, reject) {
11
+ resolve(e.target.result);
12
12
  }
13
- function onUpgradeNeededDefault() {
13
+ function onUpgradeNeededDefault(e, resolve, reject) {
14
14
  throw new Error('Upgrade needed hook required!');
15
15
  }
16
16
  function onErrorDefault(e, _, reject) {
@@ -32,10 +32,14 @@ function createDbOpener() {
32
32
  }
33
33
  var request = IDB_REF.open(name, version);
34
34
  request.onupgradeneeded = function (e) {
35
- onUpgradeNeeded(e, resolve, reject);
35
+ if (isOpenDBRequestEvent(e)) {
36
+ onUpgradeNeeded(e, resolve, reject);
37
+ }
36
38
  };
37
39
  request.onsuccess = function (e) {
38
- onSuccess(e, resolve, reject);
40
+ if (isOpenDBRequestEvent(e)) {
41
+ onSuccess(e, resolve, reject);
42
+ }
39
43
  };
40
44
  request.onerror = function (e) {
41
45
  onError(e, resolve, reject);
@@ -43,5 +47,8 @@ function createDbOpener() {
43
47
  });
44
48
  };
45
49
  }
50
+ function isOpenDBRequestEvent(e) {
51
+ return e.target instanceof IDBOpenDBRequest;
52
+ }
46
53
  var _default = createDbOpener;
47
54
  exports["default"] = _default;
@@ -31,8 +31,6 @@ var BULK_INSERT_MESSAGES = {
31
31
  type: 'bulk-insert/error'
32
32
  }
33
33
  };
34
-
35
- /* */
36
34
  exports.BULK_INSERT_MESSAGES = BULK_INSERT_MESSAGES;
37
35
  var pushTask = function pushTask(store, transaction) {
38
36
  return function () {
@@ -53,8 +51,6 @@ var pushTask = function pushTask(store, transaction) {
53
51
  }
54
52
  };
55
53
  };
56
-
57
- /* */
58
54
  function split(entities) {
59
55
  var limit = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : BULK_LIMIT;
60
56
  return entities.reduce(function (_ref3, n, i) {
@@ -64,8 +60,6 @@ function split(entities) {
64
60
  return (i + 1) % limit === 0 ? [[n], f].concat(_toConsumableArray(r)) : [[n].concat(_toConsumableArray(f))].concat(_toConsumableArray(r));
65
61
  }, [[]]);
66
62
  }
67
-
68
- /* */
69
63
  var bulkPush = function bulkPush(db, name, hook, resolve, reject, max) {
70
64
  return function (lot) {
71
65
  var i = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 0;
@@ -0,0 +1,5 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
@@ -9,7 +9,8 @@ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "d
9
9
  /* eslint-disable no-restricted-globals */
10
10
 
11
11
  function onUpgradeNeeded(e, _, reject) {
12
- e.target.transaction.abort();
12
+ var _e$target$transaction;
13
+ (_e$target$transaction = e.target.transaction) === null || _e$target$transaction === void 0 ? void 0 : _e$target$transaction.abort();
13
14
  reject({
14
15
  message: 'base seems to need an upgrade!'
15
16
  });
@@ -25,9 +25,11 @@ function onUpgradeNeeded(e, resolve, reject) {
25
25
  multiEntry: true
26
26
  });
27
27
  var txn = e.target.transaction;
28
- txn.oncomplete = function () {
29
- resolve(db);
30
- };
28
+ if (txn) {
29
+ txn.oncomplete = function () {
30
+ resolve(db);
31
+ };
32
+ }
31
33
  } catch (e) {
32
34
  reject(e);
33
35
  }
@@ -19,7 +19,7 @@ function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len
19
19
  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; } }
20
20
  function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
21
21
  function asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) { try { var info = gen[key](arg); var value = info.value; } catch (error) { reject(error); return; } if (info.done) { resolve(value); } else { Promise.resolve(value).then(_next, _throw); } }
22
- function _asyncToGenerator(fn) { return function () { var self = this, args = arguments; return new Promise(function (resolve, reject) { var gen = fn.apply(self, args); function _next(value) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, "next", value); } function _throw(err) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, "throw", err); } _next(undefined); }); }; }
22
+ function _asyncToGenerator(fn) { return function () { var self = this, args = arguments; return new Promise(function (resolve, reject) { var gen = fn.apply(self, args); function _next(value) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, "next", value); } function _throw(err) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, "throw", err); } _next(undefined); }); }; } // @ts-ignore
23
23
  var workerPath = process.env.LUNATIC_LOADER_WORKER_PATH || process.env.REACT_APP_LUNATIC_LOADER_WORKER_PATH || 'workers/lunatic-loader-worker-0.1.0.js';
24
24
  var loadSuggesters = function loadSuggesters(suggesterFetcher) {
25
25
  return /*#__PURE__*/function () {
@@ -27,7 +27,7 @@ var loadSuggesters = function loadSuggesters(suggesterFetcher) {
27
27
  return _regeneratorRuntime().wrap(function _callee3$(_context3) {
28
28
  while (1) switch (_context3.prev = _context3.next) {
29
29
  case 0:
30
- Object.entries(suggesters).forEach( /*#__PURE__*/function () {
30
+ Object.entries(suggesters).map( /*#__PURE__*/function () {
31
31
  var _ref3 = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee(_ref2) {
32
32
  var _ref4, name, attrs, version, db;
33
33
  return _regeneratorRuntime().wrap(function _callee$(_context) {
@@ -18,7 +18,7 @@ function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len
18
18
  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; } }
19
19
  function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
20
20
  function useStoreIndex(storeInfo, idbVersion) {
21
- var _useState = (0, _react.useState)(undefined),
21
+ var _useState = (0, _react.useState)(),
22
22
  _useState2 = _slicedToArray(_useState, 2),
23
23
  db = _useState2[0],
24
24
  setDb = _useState2[1];
@@ -12,7 +12,8 @@ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "d
12
12
  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); }
13
13
  function _regeneratorRuntime() { "use strict"; /*! regenerator-runtime -- Copyright (c) 2014-present, Facebook, Inc. -- license (MIT): https://github.com/facebook/regenerator/blob/main/LICENSE */ _regeneratorRuntime = function _regeneratorRuntime() { return exports; }; var exports = {}, Op = Object.prototype, hasOwn = Op.hasOwnProperty, defineProperty = Object.defineProperty || function (obj, key, desc) { obj[key] = desc.value; }, $Symbol = "function" == typeof Symbol ? Symbol : {}, iteratorSymbol = $Symbol.iterator || "@@iterator", asyncIteratorSymbol = $Symbol.asyncIterator || "@@asyncIterator", toStringTagSymbol = $Symbol.toStringTag || "@@toStringTag"; function define(obj, key, value) { return Object.defineProperty(obj, key, { value: value, enumerable: !0, configurable: !0, writable: !0 }), obj[key]; } try { define({}, ""); } catch (err) { define = function define(obj, key, value) { return obj[key] = value; }; } function wrap(innerFn, outerFn, self, tryLocsList) { var protoGenerator = outerFn && outerFn.prototype instanceof Generator ? outerFn : Generator, generator = Object.create(protoGenerator.prototype), context = new Context(tryLocsList || []); return defineProperty(generator, "_invoke", { value: makeInvokeMethod(innerFn, self, context) }), generator; } function tryCatch(fn, obj, arg) { try { return { type: "normal", arg: fn.call(obj, arg) }; } catch (err) { return { type: "throw", arg: err }; } } exports.wrap = wrap; var ContinueSentinel = {}; function Generator() {} function GeneratorFunction() {} function GeneratorFunctionPrototype() {} var IteratorPrototype = {}; define(IteratorPrototype, iteratorSymbol, function () { return this; }); var getProto = Object.getPrototypeOf, NativeIteratorPrototype = getProto && getProto(getProto(values([]))); NativeIteratorPrototype && NativeIteratorPrototype !== Op && hasOwn.call(NativeIteratorPrototype, iteratorSymbol) && (IteratorPrototype = NativeIteratorPrototype); var Gp = GeneratorFunctionPrototype.prototype = Generator.prototype = Object.create(IteratorPrototype); function defineIteratorMethods(prototype) { ["next", "throw", "return"].forEach(function (method) { define(prototype, method, function (arg) { return this._invoke(method, arg); }); }); } function AsyncIterator(generator, PromiseImpl) { function invoke(method, arg, resolve, reject) { var record = tryCatch(generator[method], generator, arg); if ("throw" !== record.type) { var result = record.arg, value = result.value; return value && "object" == _typeof(value) && hasOwn.call(value, "__await") ? PromiseImpl.resolve(value.__await).then(function (value) { invoke("next", value, resolve, reject); }, function (err) { invoke("throw", err, resolve, reject); }) : PromiseImpl.resolve(value).then(function (unwrapped) { result.value = unwrapped, resolve(result); }, function (error) { return invoke("throw", error, resolve, reject); }); } reject(record.arg); } var previousPromise; defineProperty(this, "_invoke", { value: function value(method, arg) { function callInvokeWithMethodAndArg() { return new PromiseImpl(function (resolve, reject) { invoke(method, arg, resolve, reject); }); } return previousPromise = previousPromise ? previousPromise.then(callInvokeWithMethodAndArg, callInvokeWithMethodAndArg) : callInvokeWithMethodAndArg(); } }); } function makeInvokeMethod(innerFn, self, context) { var state = "suspendedStart"; return function (method, arg) { if ("executing" === state) throw new Error("Generator is already running"); if ("completed" === state) { if ("throw" === method) throw arg; return doneResult(); } for (context.method = method, context.arg = arg;;) { var delegate = context.delegate; if (delegate) { var delegateResult = maybeInvokeDelegate(delegate, context); if (delegateResult) { if (delegateResult === ContinueSentinel) continue; return delegateResult; } } if ("next" === context.method) context.sent = context._sent = context.arg;else if ("throw" === context.method) { if ("suspendedStart" === state) throw state = "completed", context.arg; context.dispatchException(context.arg); } else "return" === context.method && context.abrupt("return", context.arg); state = "executing"; var record = tryCatch(innerFn, self, context); if ("normal" === record.type) { if (state = context.done ? "completed" : "suspendedYield", record.arg === ContinueSentinel) continue; return { value: record.arg, done: context.done }; } "throw" === record.type && (state = "completed", context.method = "throw", context.arg = record.arg); } }; } function maybeInvokeDelegate(delegate, context) { var methodName = context.method, method = delegate.iterator[methodName]; if (undefined === method) return context.delegate = null, "throw" === methodName && delegate.iterator["return"] && (context.method = "return", context.arg = undefined, maybeInvokeDelegate(delegate, context), "throw" === context.method) || "return" !== methodName && (context.method = "throw", context.arg = new TypeError("The iterator does not provide a '" + methodName + "' method")), ContinueSentinel; var record = tryCatch(method, delegate.iterator, context.arg); if ("throw" === record.type) return context.method = "throw", context.arg = record.arg, context.delegate = null, ContinueSentinel; var info = record.arg; return info ? info.done ? (context[delegate.resultName] = info.value, context.next = delegate.nextLoc, "return" !== context.method && (context.method = "next", context.arg = undefined), context.delegate = null, ContinueSentinel) : info : (context.method = "throw", context.arg = new TypeError("iterator result is not an object"), context.delegate = null, ContinueSentinel); } function pushTryEntry(locs) { var entry = { tryLoc: locs[0] }; 1 in locs && (entry.catchLoc = locs[1]), 2 in locs && (entry.finallyLoc = locs[2], entry.afterLoc = locs[3]), this.tryEntries.push(entry); } function resetTryEntry(entry) { var record = entry.completion || {}; record.type = "normal", delete record.arg, entry.completion = record; } function Context(tryLocsList) { this.tryEntries = [{ tryLoc: "root" }], tryLocsList.forEach(pushTryEntry, this), this.reset(!0); } function values(iterable) { if (iterable) { var iteratorMethod = iterable[iteratorSymbol]; if (iteratorMethod) return iteratorMethod.call(iterable); if ("function" == typeof iterable.next) return iterable; if (!isNaN(iterable.length)) { var i = -1, next = function next() { for (; ++i < iterable.length;) if (hasOwn.call(iterable, i)) return next.value = iterable[i], next.done = !1, next; return next.value = undefined, next.done = !0, next; }; return next.next = next; } } return { next: doneResult }; } function doneResult() { return { value: undefined, done: !0 }; } return GeneratorFunction.prototype = GeneratorFunctionPrototype, defineProperty(Gp, "constructor", { value: GeneratorFunctionPrototype, configurable: !0 }), defineProperty(GeneratorFunctionPrototype, "constructor", { value: GeneratorFunction, configurable: !0 }), GeneratorFunction.displayName = define(GeneratorFunctionPrototype, toStringTagSymbol, "GeneratorFunction"), exports.isGeneratorFunction = function (genFun) { var ctor = "function" == typeof genFun && genFun.constructor; return !!ctor && (ctor === GeneratorFunction || "GeneratorFunction" === (ctor.displayName || ctor.name)); }, exports.mark = function (genFun) { return Object.setPrototypeOf ? Object.setPrototypeOf(genFun, GeneratorFunctionPrototype) : (genFun.__proto__ = GeneratorFunctionPrototype, define(genFun, toStringTagSymbol, "GeneratorFunction")), genFun.prototype = Object.create(Gp), genFun; }, exports.awrap = function (arg) { return { __await: arg }; }, defineIteratorMethods(AsyncIterator.prototype), define(AsyncIterator.prototype, asyncIteratorSymbol, function () { return this; }), exports.AsyncIterator = AsyncIterator, exports.async = function (innerFn, outerFn, self, tryLocsList, PromiseImpl) { void 0 === PromiseImpl && (PromiseImpl = Promise); var iter = new AsyncIterator(wrap(innerFn, outerFn, self, tryLocsList), PromiseImpl); return exports.isGeneratorFunction(outerFn) ? iter : iter.next().then(function (result) { return result.done ? result.value : iter.next(); }); }, defineIteratorMethods(Gp), define(Gp, toStringTagSymbol, "Generator"), define(Gp, iteratorSymbol, function () { return this; }), define(Gp, "toString", function () { return "[object Generator]"; }), exports.keys = function (val) { var object = Object(val), keys = []; for (var key in object) keys.push(key); return keys.reverse(), function next() { for (; keys.length;) { var key = keys.pop(); if (key in object) return next.value = key, next.done = !1, next; } return next.done = !0, next; }; }, exports.values = values, Context.prototype = { constructor: Context, reset: function reset(skipTempReset) { if (this.prev = 0, this.next = 0, this.sent = this._sent = undefined, this.done = !1, this.delegate = null, this.method = "next", this.arg = undefined, this.tryEntries.forEach(resetTryEntry), !skipTempReset) for (var name in this) "t" === name.charAt(0) && hasOwn.call(this, name) && !isNaN(+name.slice(1)) && (this[name] = undefined); }, stop: function stop() { this.done = !0; var rootRecord = this.tryEntries[0].completion; if ("throw" === rootRecord.type) throw rootRecord.arg; return this.rval; }, dispatchException: function dispatchException(exception) { if (this.done) throw exception; var context = this; function handle(loc, caught) { return record.type = "throw", record.arg = exception, context.next = loc, caught && (context.method = "next", context.arg = undefined), !!caught; } for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i], record = entry.completion; if ("root" === entry.tryLoc) return handle("end"); if (entry.tryLoc <= this.prev) { var hasCatch = hasOwn.call(entry, "catchLoc"), hasFinally = hasOwn.call(entry, "finallyLoc"); if (hasCatch && hasFinally) { if (this.prev < entry.catchLoc) return handle(entry.catchLoc, !0); if (this.prev < entry.finallyLoc) return handle(entry.finallyLoc); } else if (hasCatch) { if (this.prev < entry.catchLoc) return handle(entry.catchLoc, !0); } else { if (!hasFinally) throw new Error("try statement without catch or finally"); if (this.prev < entry.finallyLoc) return handle(entry.finallyLoc); } } } }, abrupt: function abrupt(type, arg) { for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i]; if (entry.tryLoc <= this.prev && hasOwn.call(entry, "finallyLoc") && this.prev < entry.finallyLoc) { var finallyEntry = entry; break; } } finallyEntry && ("break" === type || "continue" === type) && finallyEntry.tryLoc <= arg && arg <= finallyEntry.finallyLoc && (finallyEntry = null); var record = finallyEntry ? finallyEntry.completion : {}; return record.type = type, record.arg = arg, finallyEntry ? (this.method = "next", this.next = finallyEntry.finallyLoc, ContinueSentinel) : this.complete(record); }, complete: function complete(record, afterLoc) { if ("throw" === record.type) throw record.arg; return "break" === record.type || "continue" === record.type ? this.next = record.arg : "return" === record.type ? (this.rval = this.arg = record.arg, this.method = "return", this.next = "end") : "normal" === record.type && afterLoc && (this.next = afterLoc), ContinueSentinel; }, finish: function finish(finallyLoc) { for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i]; if (entry.finallyLoc === finallyLoc) return this.complete(entry.completion, entry.afterLoc), resetTryEntry(entry), ContinueSentinel; } }, "catch": function _catch(tryLoc) { for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i]; if (entry.tryLoc === tryLoc) { var record = entry.completion; if ("throw" === record.type) { var thrown = record.arg; resetTryEntry(entry); } return thrown; } } throw new Error("illegal catch attempt"); }, delegateYield: function delegateYield(iterable, resultName, nextLoc) { return this.delegate = { iterator: values(iterable), resultName: resultName, nextLoc: nextLoc }, "next" === this.method && (this.arg = undefined), ContinueSentinel; } }, exports; }
14
14
  function asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) { try { var info = gen[key](arg); var value = info.value; } catch (error) { reject(error); return; } if (info.done) { resolve(value); } else { Promise.resolve(value).then(_next, _throw); } }
15
- function _asyncToGenerator(fn) { return function () { var self = this, args = arguments; return new Promise(function (resolve, reject) { var gen = fn.apply(self, args); function _next(value) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, "next", value); } function _throw(err) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, "throw", err); } _next(undefined); }); }; }
15
+ function _asyncToGenerator(fn) { return function () { var self = this, args = arguments; return new Promise(function (resolve, reject) { var gen = fn.apply(self, args); function _next(value) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, "next", value); } function _throw(err) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, "throw", err); } _next(undefined); }); }; } // @ts-ignore
16
+ // @ts-ignore
16
17
  function append(_x, _x2, _x3) {
17
18
  return _append.apply(this, arguments);
18
19
  }
@@ -28,7 +29,7 @@ function _append() {
28
29
  return _regeneratorRuntime().wrap(function _callee$(_context) {
29
30
  while (1) switch (_context.prev = _context.next) {
30
31
  case 0:
31
- log = _args.length > 3 && _args[3] !== undefined ? _args[3] : function () {
32
+ log = _args.length > 3 && _args[3] !== undefined ? _args[3] : function (v) {
32
33
  return null;
33
34
  };
34
35
  _context.prev = 1;
@@ -22,7 +22,8 @@ function createAppendTask(info, version) {
22
22
  var log = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : consoleLogging;
23
23
  var name = info.name,
24
24
  fields = info.fields,
25
- stopWords = info.stopWords;
25
+ stopWords = info.stopWords,
26
+ meloto = info.meloto;
26
27
  var worker = (0, _createWorkerTs.createWorker)(workerPath);
27
28
  var start = false;
28
29
  var stop = false;
@@ -49,7 +50,8 @@ function createAppendTask(info, version) {
49
50
  version: version,
50
51
  fields: fields,
51
52
  stopWords: stopWords,
52
- entities: entities
53
+ entities: entities,
54
+ meloto: meloto
53
55
  });
54
56
  }
55
57
  });
@@ -0,0 +1,11 @@
1
+ "use strict";
2
+
3
+ var _vitest = require("vitest");
4
+ var _getStemmer = _interopRequireDefault(require("./get-stemmer"));
5
+ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; }
6
+ (0, _vitest.describe)('common-tokenizer', function () {
7
+ (0, _vitest.it)('getStemmer', function () {
8
+ var stemmer = (0, _getStemmer["default"])();
9
+ (0, _vitest.expect)(stemmer('bâtiment')).toEqual('bât');
10
+ });
11
+ });
@@ -0,0 +1,10 @@
1
+ "use strict";
2
+
3
+ var _vitest = require("vitest");
4
+ var _prepareStringIndexation = _interopRequireDefault(require("./prepare-string-indexation"));
5
+ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; }
6
+ (0, _vitest.describe)('String indexation', function () {
7
+ (0, _vitest.it)('bâtiment', function () {
8
+ (0, _vitest.expect)((0, _prepareStringIndexation["default"])('bâtiment')).toEqual('batiment');
9
+ });
10
+ });
@@ -4,25 +4,20 @@ Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
6
  exports["default"] = void 0;
7
+ var _melotoOrder = require("./meloto-order");
7
8
  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
9
  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
10
  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
11
  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
12
  function _toPropertyKey(arg) { var key = _toPrimitive(arg, "string"); return _typeof(key) === "symbol" ? key : String(key); }
12
13
  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 sort(withScore, max) {
14
+ function sort(withScore) {
14
15
  return withScore.sort(function (a, b) {
15
- if (a.score > b.score) {
16
- return -1;
17
- }
18
- if (a.score < b.score) {
19
- return 1;
20
- }
21
- return 0;
22
- }).slice(0, max);
16
+ return b.score - a.score;
17
+ });
23
18
  }
24
- function computeScore(documents) {
25
- var max = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 30;
19
+ function computeScore(documents, tokens) {
20
+ var meloto = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : true;
26
21
  var withScore = documents.map(function (doc) {
27
22
  var tokensSearch = doc.tokensSearch;
28
23
  var score = Object.keys(tokensSearch).length;
@@ -30,7 +25,7 @@ function computeScore(documents) {
30
25
  score: score
31
26
  });
32
27
  });
33
- return sort(withScore, max);
28
+ return (0, _melotoOrder.melotoOrder)(sort(withScore), tokens, meloto);
34
29
  }
35
30
  var _default = computeScore;
36
31
  exports["default"] = _default;
@@ -0,0 +1,53 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.melotoOrder = melotoOrder;
7
+ exports.value = value;
8
+ var _prepareStringIndexation = _interopRequireDefault(require("../commons-tokenizer/prepare-string-indexation"));
9
+ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; }
10
+ function value(entity) {
11
+ var tokens = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : [];
12
+ var suggestion = entity.suggestion;
13
+ var label = suggestion.label;
14
+ var prepared = (0, _prepareStringIndexation["default"])(label);
15
+ if (label && label.length) {
16
+ return tokens.reduce(function (score, token, i) {
17
+ var index = prepared.search(token);
18
+ if (index >= 0) {
19
+ var how = label.length - index;
20
+ how /= label.length;
21
+ var weight = tokens.length - i;
22
+ weight /= tokens.length;
23
+ return score + how * weight;
24
+ }
25
+ return score;
26
+ }, 0);
27
+ }
28
+ return 0;
29
+ }
30
+
31
+ /**
32
+ * Applique une fonction de score supplémentaire pour approcher au mieux
33
+ * la classification obtenue avec l'outil Meloto, developpé par un prestataire
34
+ * pour le compte de l'Insee.
35
+ * Le nouveau classement favorise l'ordre d'apparation des token de recherche
36
+ * dans la chaine label des entités indéxées. Si la recherche contient électricien,
37
+ * la suggestion avec un label électricien sera mieux classée que celle avec chef électricien.
38
+ * S'il y a plusieur tokens de recherche, un poid dégréssif leur est appliqué lors du tri.
39
+ *
40
+ * @param {*} entities
41
+ * @param {*} tokens
42
+ * @param {*} active
43
+ * @returns
44
+ */
45
+ function melotoOrder(entities, tokens) {
46
+ var active = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : true;
47
+ if (active) {
48
+ return entities.sort(function (a, b) {
49
+ return value(b, tokens) - value(a, tokens);
50
+ });
51
+ }
52
+ return entities;
53
+ }