@inseefr/lunatic 3.5.0-rc.0 → 3.5.0-rc.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (392) hide show
  1. package/components/Datepicker/Datepicker.js +1 -1
  2. package/components/Datepicker/Datepicker.js.map +1 -1
  3. package/components/Duration/Duration.js +3 -2
  4. package/components/Duration/Duration.js.map +1 -1
  5. package/components/Input/Input.js +6 -3
  6. package/components/Input/Input.js.map +1 -1
  7. package/components/Input/Input.spec.js +25 -0
  8. package/components/Input/Input.spec.js.map +1 -1
  9. package/components/InputNumber/InputNumber.js +1 -1
  10. package/components/InputNumber/InputNumber.js.map +1 -1
  11. package/components/InputNumber/InputNumber.spec.js +9 -1
  12. package/components/InputNumber/InputNumber.spec.js.map +1 -1
  13. package/components/InputNumber/InputNumberThousand.d.ts +2 -1
  14. package/components/InputNumber/InputNumberThousand.js +8 -2
  15. package/components/InputNumber/InputNumberThousand.js.map +1 -1
  16. package/components/Loop/Loop.js +1 -1
  17. package/components/Loop/Loop.js.map +1 -1
  18. package/components/Loop/Loop.spec.d.ts +1 -0
  19. package/components/Loop/Loop.spec.js +39 -0
  20. package/components/Loop/Loop.spec.js.map +1 -0
  21. package/components/Roundabout/CustomRoundabout.d.ts +1 -1
  22. package/components/Roundabout/CustomRoundabout.js +4 -3
  23. package/components/Roundabout/CustomRoundabout.js.map +1 -1
  24. package/components/Roundabout/roundabout.spec.js +3 -1
  25. package/components/Roundabout/roundabout.spec.js.map +1 -1
  26. package/components/Textarea/Textarea.js +4 -1
  27. package/components/Textarea/Textarea.js.map +1 -1
  28. package/components/Textarea/Textarea.spec.js +13 -0
  29. package/components/Textarea/Textarea.spec.js.map +1 -1
  30. package/components/shared/CharactersCount/CharactersCount.d.ts +7 -0
  31. package/components/shared/CharactersCount/CharactersCount.js +20 -0
  32. package/components/shared/CharactersCount/CharactersCount.js.map +1 -0
  33. package/components/shared/CharactersCount/CharactersCount.spec.d.ts +1 -0
  34. package/components/shared/CharactersCount/CharactersCount.spec.js +28 -0
  35. package/components/shared/CharactersCount/CharactersCount.spec.js.map +1 -0
  36. package/components/shared/Label/Label.js +1 -1
  37. package/components/shared/Label/Label.js.map +1 -1
  38. package/components/shared/Label/Label.spec.js +11 -3
  39. package/components/shared/Label/Label.spec.js.map +1 -1
  40. package/components/shared/utils/getCharactersCountId.d.ts +4 -0
  41. package/components/shared/utils/getCharactersCountId.js +10 -0
  42. package/components/shared/utils/getCharactersCountId.js.map +1 -0
  43. package/components/type.d.ts +1 -0
  44. package/esm/components/Datepicker/Datepicker.js +1 -1
  45. package/esm/components/Datepicker/Datepicker.js.map +1 -1
  46. package/esm/components/Duration/Duration.js +3 -2
  47. package/esm/components/Duration/Duration.js.map +1 -1
  48. package/esm/components/Input/Input.js +6 -3
  49. package/esm/components/Input/Input.js.map +1 -1
  50. package/esm/components/Input/Input.spec.js +25 -0
  51. package/esm/components/Input/Input.spec.js.map +1 -1
  52. package/esm/components/InputNumber/InputNumber.js +1 -1
  53. package/esm/components/InputNumber/InputNumber.js.map +1 -1
  54. package/esm/components/InputNumber/InputNumber.spec.js +9 -1
  55. package/esm/components/InputNumber/InputNumber.spec.js.map +1 -1
  56. package/esm/components/InputNumber/InputNumberThousand.d.ts +2 -1
  57. package/esm/components/InputNumber/InputNumberThousand.js +8 -2
  58. package/esm/components/InputNumber/InputNumberThousand.js.map +1 -1
  59. package/esm/components/Loop/Loop.js +1 -1
  60. package/esm/components/Loop/Loop.js.map +1 -1
  61. package/esm/components/Loop/Loop.spec.d.ts +1 -0
  62. package/esm/components/Loop/Loop.spec.js +37 -0
  63. package/esm/components/Loop/Loop.spec.js.map +1 -0
  64. package/esm/components/Roundabout/CustomRoundabout.d.ts +1 -1
  65. package/esm/components/Roundabout/CustomRoundabout.js +4 -3
  66. package/esm/components/Roundabout/CustomRoundabout.js.map +1 -1
  67. package/esm/components/Roundabout/roundabout.spec.js +3 -1
  68. package/esm/components/Roundabout/roundabout.spec.js.map +1 -1
  69. package/esm/components/Textarea/Textarea.js +4 -1
  70. package/esm/components/Textarea/Textarea.js.map +1 -1
  71. package/esm/components/Textarea/Textarea.spec.js +13 -0
  72. package/esm/components/Textarea/Textarea.spec.js.map +1 -1
  73. package/esm/components/shared/CharactersCount/CharactersCount.d.ts +7 -0
  74. package/esm/components/shared/CharactersCount/CharactersCount.js +15 -0
  75. package/esm/components/shared/CharactersCount/CharactersCount.js.map +1 -0
  76. package/esm/components/shared/CharactersCount/CharactersCount.spec.d.ts +1 -0
  77. package/esm/components/shared/CharactersCount/CharactersCount.spec.js +26 -0
  78. package/esm/components/shared/CharactersCount/CharactersCount.spec.js.map +1 -0
  79. package/esm/components/shared/Label/Label.js +1 -1
  80. package/esm/components/shared/Label/Label.js.map +1 -1
  81. package/esm/components/shared/Label/Label.spec.js +11 -3
  82. package/esm/components/shared/Label/Label.spec.js.map +1 -1
  83. package/esm/components/shared/utils/getCharactersCountId.d.ts +4 -0
  84. package/esm/components/shared/utils/getCharactersCountId.js +7 -0
  85. package/esm/components/shared/utils/getCharactersCountId.js.map +1 -0
  86. package/esm/components/type.d.ts +1 -0
  87. package/esm/main.css +20 -0
  88. package/esm/main.css.map +1 -1
  89. package/esm/stories/overview/sourceWithHierarchy.json +5151 -0
  90. package/esm/tests/utils/lunatic.d.ts +0 -4
  91. package/esm/tests/utils/lunatic.js +0 -4
  92. package/esm/tests/utils/lunatic.js.map +1 -1
  93. package/esm/type.source.d.ts +6 -6
  94. package/esm/type.source.js +0 -1
  95. package/esm/type.source.js.map +1 -1
  96. package/esm/use-lunatic/commons/page.js +8 -0
  97. package/esm/use-lunatic/commons/page.js.map +1 -1
  98. package/esm/use-lunatic/commons/variables/behaviours/cleaning-behaviour.d.ts +1 -1
  99. package/esm/use-lunatic/commons/variables/behaviours/cleaning-behaviour.js +111 -14
  100. package/esm/use-lunatic/commons/variables/behaviours/cleaning-behaviour.js.map +1 -1
  101. package/esm/use-lunatic/commons/variables/get-questionnaire-data.js +0 -8
  102. package/esm/use-lunatic/commons/variables/get-questionnaire-data.js.map +1 -1
  103. package/esm/use-lunatic/commons/variables/lunatic-variables-store.d.ts +2 -2
  104. package/esm/use-lunatic/commons/variables/lunatic-variables-store.js +5 -3
  105. package/esm/use-lunatic/commons/variables/lunatic-variables-store.js.map +1 -1
  106. package/esm/use-lunatic/commons/variables/lunatic-variables-store.spec.js +164 -8
  107. package/esm/use-lunatic/commons/variables/lunatic-variables-store.spec.js.map +1 -1
  108. package/esm/use-lunatic/hooks/use-page-has-response.js +50 -35
  109. package/esm/use-lunatic/hooks/use-page-has-response.js.map +1 -1
  110. package/esm/use-lunatic/hooks/useOverview.d.ts +1 -1
  111. package/esm/use-lunatic/hooks/useOverview.js +19 -14
  112. package/esm/use-lunatic/hooks/useOverview.js.map +1 -1
  113. package/esm/use-lunatic/hooks/useOverview.spec.d.ts +1 -0
  114. package/esm/use-lunatic/hooks/useOverview.spec.js +38 -0
  115. package/esm/use-lunatic/hooks/useOverview.spec.js.map +1 -0
  116. package/esm/use-lunatic/props/getComponentTypeProps.d.ts +1 -0
  117. package/esm/use-lunatic/props/propValue.js +18 -6
  118. package/esm/use-lunatic/props/propValue.js.map +1 -1
  119. package/esm/use-lunatic/props/propValue.spec.js +97 -2
  120. package/esm/use-lunatic/props/propValue.spec.js.map +1 -1
  121. package/esm/use-lunatic/reducer/reducerInitializer.d.ts +2 -2
  122. package/esm/use-lunatic/reducer/reducerInitializer.js +25 -32
  123. package/esm/use-lunatic/reducer/reducerInitializer.js.map +1 -1
  124. package/esm/use-lunatic/test.utils.d.ts +2 -0
  125. package/esm/use-lunatic/test.utils.js +13 -0
  126. package/esm/use-lunatic/test.utils.js.map +1 -0
  127. package/esm/use-lunatic/type.d.ts +0 -4
  128. package/esm/use-lunatic/use-lunatic.d.ts +1 -2
  129. package/esm/use-lunatic/use-lunatic.js.map +1 -1
  130. package/esm/utils/cast.d.ts +19 -0
  131. package/esm/utils/cast.js +63 -0
  132. package/esm/utils/cast.js.map +1 -0
  133. package/esm/utils/constants/variable-status.d.ts +0 -4
  134. package/esm/utils/constants/variable-status.js +0 -4
  135. package/esm/utils/constants/variable-status.js.map +1 -1
  136. package/esm/utils/variables.spec.js +0 -8
  137. package/esm/utils/variables.spec.js.map +1 -1
  138. package/main.css +20 -0
  139. package/main.css.map +1 -1
  140. package/package.json +61 -69
  141. package/src/components/Datepicker/Datepicker.tsx +1 -1
  142. package/src/components/Datepicker/__snapshots__/Datepicker.spec.tsx.snap +2 -2
  143. package/src/components/Duration/Duration.test.tsx +52 -0
  144. package/src/components/Duration/Duration.tsx +17 -4
  145. package/src/components/Input/Input.spec.tsx +34 -0
  146. package/src/components/Input/Input.tsx +26 -18
  147. package/src/components/Input/__snapshots__/Input.spec.tsx.snap +38 -19
  148. package/src/components/InputNumber/InputNumber.spec.tsx +15 -1
  149. package/src/components/InputNumber/InputNumber.tsx +1 -0
  150. package/src/components/InputNumber/InputNumberThousand.tsx +11 -1
  151. package/src/components/Loop/Loop.spec.tsx +77 -0
  152. package/src/components/Loop/Loop.tsx +1 -1
  153. package/src/components/RosterForLoop/__snapshots__/RosterForLoop.spec.tsx.snap +42 -20
  154. package/src/components/Roundabout/CustomRoundabout.tsx +13 -4
  155. package/src/components/Roundabout/roundabout.spec.tsx +3 -0
  156. package/src/components/Textarea/Textarea.spec.tsx +18 -0
  157. package/src/components/Textarea/Textarea.tsx +21 -13
  158. package/src/components/Textarea/__snapshots__/Textarea.spec.tsx.snap +21 -11
  159. package/src/components/shared/CharactersCount/CharactersCount.spec.tsx +31 -0
  160. package/src/components/shared/CharactersCount/CharactersCount.tsx +27 -0
  161. package/src/components/shared/Label/Label.spec.tsx +15 -3
  162. package/src/components/shared/Label/Label.tsx +1 -1
  163. package/src/components/shared/utils/getCharactersCountId.test.ts +14 -0
  164. package/src/components/shared/utils/getCharactersCountId.ts +6 -0
  165. package/src/components/type.ts +1 -0
  166. package/src/css/components/Input.scss +10 -0
  167. package/src/css/components/Roundabout.scss +10 -0
  168. package/src/stories/accordion/source.json +1 -5
  169. package/src/stories/behaviour/cleaning/cleaning.stories.jsx +11 -0
  170. package/src/stories/behaviour/cleaning/loop.json +246 -0
  171. package/src/stories/behaviour/cleaning/source-loop.json +3 -15
  172. package/src/stories/behaviour/cleaning/source.json +2 -10
  173. package/src/stories/behaviour/controls/boucles-n.json +2 -10
  174. package/src/stories/behaviour/controls/loop.json +2 -10
  175. package/src/stories/behaviour/controls/roundabout.json +3 -15
  176. package/src/stories/behaviour/controls/simple-numeric.json +19 -95
  177. package/src/stories/behaviour/controls/simple.json +7 -35
  178. package/src/stories/behaviour/filter/dataLoop.json +0 -8
  179. package/src/stories/behaviour/filter/source.json +0 -12
  180. package/src/stories/behaviour/filter/sourceLoop.json +0 -12
  181. package/src/stories/behaviour/missing/source.json +12 -60
  182. package/src/stories/behaviour/others/V2_DeclarationsSimples.json +14 -70
  183. package/src/stories/behaviour/others/V2_MinMaxSum_Boucles.json +5 -25
  184. package/src/stories/behaviour/others/V2_QuestSimple_Boucles.json +107 -535
  185. package/src/stories/behaviour/others/V2_TCMRallyeGames.json +33 -165
  186. package/src/stories/behaviour/others/test-dylan.json +5 -25
  187. package/src/stories/behaviour/paste/source.json +1 -5
  188. package/src/stories/behaviour/performance/performance.stories.jsx +9 -1
  189. package/src/stories/behaviour/performance/source.json +4 -20
  190. package/src/stories/behaviour/performance/srcv.json +44747 -0
  191. package/src/stories/behaviour/resizing/source-resizing-cleaning.json +2 -10
  192. package/src/stories/behaviour/resizing/source.json +5 -25
  193. package/src/stories/checkbox-boolean/source.json +1 -5
  194. package/src/stories/checkbox-group/source.json +16 -80
  195. package/src/stories/checkbox-group/sourceCondition.json +3 -15
  196. package/src/stories/checkbox-group/sourceDetail.json +18 -90
  197. package/src/stories/checkbox-group/sourceLoop.json +2 -10
  198. package/src/stories/checkbox-one/source.json +1 -5
  199. package/src/stories/checkbox-one/sourceDetail.json +2 -10
  200. package/src/stories/date-picker/source.json +1 -5
  201. package/src/stories/declaration/source.json +2 -10
  202. package/src/stories/disabled/data.json +0 -16
  203. package/src/stories/disabled/source.json +7 -35
  204. package/src/stories/dropdown/data.json +2 -10
  205. package/src/stories/dropdown/source.json +2 -10
  206. package/src/stories/duration/mois.json +1 -5
  207. package/src/stories/duration/time.json +1 -5
  208. package/src/stories/filter-description/source-options.json +3 -15
  209. package/src/stories/input/source.json +1 -5
  210. package/src/stories/input-number/input-number.stories.jsx +5 -0
  211. package/src/stories/input-number/source-big-number.json +27 -0
  212. package/src/stories/input-number/source-euro.json +2 -6
  213. package/src/stories/input-number/source.json +1 -5
  214. package/src/stories/loop/source-bloc.json +2 -10
  215. package/src/stories/loop/source-paginated.json +2 -10
  216. package/src/stories/loop/source-roster.json +2 -10
  217. package/src/stories/loop/source-with-header.json +2 -10
  218. package/src/stories/overview/dataLoop.json +24 -120
  219. package/src/stories/overview/overview.stories.jsx +9 -0
  220. package/src/stories/overview/source.json +1 -5
  221. package/src/stories/overview/sourceLoop.json +24 -120
  222. package/src/stories/overview/sourceWithHierarchy.json +164 -820
  223. package/src/stories/pairwise/source.json +5 -25
  224. package/src/stories/question/source.json +2 -10
  225. package/src/stories/questionnaires/logement/data.json +0 -1288
  226. package/src/stories/questionnaires/logement/source-sequence.json +564 -2820
  227. package/src/stories/questionnaires/logement/source-sum.json +280 -1400
  228. package/src/stories/questionnaires/logement/source.json +564 -2820
  229. package/src/stories/questionnaires/recensement/source.json +106 -530
  230. package/src/stories/questionnaires/rp/source.json +8 -40
  231. package/src/stories/questionnaires/simpsons/source.json +104 -520
  232. package/src/stories/radio/source.json +1 -5
  233. package/src/stories/radio/sourceCondition.json +2 -10
  234. package/src/stories/radio/sourceDetail.json +2 -10
  235. package/src/stories/radio/sourceHorizontal.json +1 -5
  236. package/src/stories/roundabout/data1.json +0 -12
  237. package/src/stories/roundabout/data2.json +0 -16
  238. package/src/stories/roundabout/source.json +11 -35
  239. package/src/stories/suggester/source-arbitrary-response.json +6 -30
  240. package/src/stories/suggester/source-error.json +6 -30
  241. package/src/stories/suggester/source-multiline.json +0 -16
  242. package/src/stories/suggester/source-option-responses.json +5 -25
  243. package/src/stories/suggester/source.json +7 -35
  244. package/src/stories/summary/data.json +0 -16
  245. package/src/stories/summary/source.json +7 -35
  246. package/src/stories/switch/data-forced.json +2 -10
  247. package/src/stories/switch/source.json +4 -20
  248. package/src/stories/table/source-colspan.json +8 -40
  249. package/src/stories/table/table-dynamique.json +1 -5
  250. package/src/stories/text/source-roster.json +3 -15
  251. package/src/stories/text/source-table.json +9 -45
  252. package/src/stories/textarea/source.json +1 -5
  253. package/src/stories/utils/{SchemaValidator.tsx → SchemaValidator.jsx} +1 -1
  254. package/src/stories/utils/{orchestrator.tsx → orchestrator.jsx} +9 -13
  255. package/src/stories/utils/{overview.tsx → overview.jsx} +0 -2
  256. package/src/tests/utils/lunatic.ts +0 -4
  257. package/src/type.source.ts +8 -7
  258. package/src/use-lunatic/__snapshots__/use-lunatic.test.ts.snap +0 -1159
  259. package/src/use-lunatic/commons/page.ts +10 -0
  260. package/src/use-lunatic/commons/variables/behaviours/cleaning-behaviour.ts +182 -24
  261. package/src/use-lunatic/commons/variables/get-questionnaire-data.ts +0 -12
  262. package/src/use-lunatic/commons/variables/lunatic-variables-store.spec.ts +190 -8
  263. package/src/use-lunatic/commons/variables/lunatic-variables-store.ts +7 -4
  264. package/src/use-lunatic/hooks/use-page-has-response.test.ts +200 -0
  265. package/src/use-lunatic/hooks/use-page-has-response.ts +67 -44
  266. package/src/use-lunatic/hooks/useOverview.spec.ts +42 -0
  267. package/src/use-lunatic/hooks/useOverview.ts +41 -18
  268. package/src/use-lunatic/props/propValue.spec.ts +105 -2
  269. package/src/use-lunatic/props/propValue.ts +26 -8
  270. package/src/use-lunatic/reducer/reducerInitializer.tsx +31 -41
  271. package/src/use-lunatic/test.utils.ts +17 -0
  272. package/src/use-lunatic/type.ts +0 -4
  273. package/src/use-lunatic/use-lunatic.test.ts +2 -21
  274. package/src/use-lunatic/use-lunatic.ts +5 -4
  275. package/src/utils/cast.ts +67 -0
  276. package/src/utils/constants/variable-status.ts +0 -4
  277. package/src/utils/variables.spec.ts +0 -8
  278. package/stories/overview/sourceWithHierarchy.json +5151 -0
  279. package/tests/utils/lunatic.d.ts +0 -4
  280. package/tests/utils/lunatic.js +0 -4
  281. package/tests/utils/lunatic.js.map +1 -1
  282. package/tsconfig.build.tsbuildinfo +1 -1
  283. package/type.source.d.ts +6 -6
  284. package/type.source.js +0 -1
  285. package/type.source.js.map +1 -1
  286. package/use-lunatic/commons/page.js +8 -0
  287. package/use-lunatic/commons/page.js.map +1 -1
  288. package/use-lunatic/commons/variables/behaviours/cleaning-behaviour.d.ts +1 -1
  289. package/use-lunatic/commons/variables/behaviours/cleaning-behaviour.js +111 -14
  290. package/use-lunatic/commons/variables/behaviours/cleaning-behaviour.js.map +1 -1
  291. package/use-lunatic/commons/variables/get-questionnaire-data.js +0 -8
  292. package/use-lunatic/commons/variables/get-questionnaire-data.js.map +1 -1
  293. package/use-lunatic/commons/variables/lunatic-variables-store.d.ts +2 -2
  294. package/use-lunatic/commons/variables/lunatic-variables-store.js +5 -3
  295. package/use-lunatic/commons/variables/lunatic-variables-store.js.map +1 -1
  296. package/use-lunatic/commons/variables/lunatic-variables-store.spec.js +187 -8
  297. package/use-lunatic/commons/variables/lunatic-variables-store.spec.js.map +1 -1
  298. package/use-lunatic/hooks/use-page-has-response.js +49 -34
  299. package/use-lunatic/hooks/use-page-has-response.js.map +1 -1
  300. package/use-lunatic/hooks/useOverview.d.ts +1 -1
  301. package/use-lunatic/hooks/useOverview.js +19 -14
  302. package/use-lunatic/hooks/useOverview.js.map +1 -1
  303. package/use-lunatic/hooks/useOverview.spec.d.ts +1 -0
  304. package/use-lunatic/hooks/useOverview.spec.js +43 -0
  305. package/use-lunatic/hooks/useOverview.spec.js.map +1 -0
  306. package/use-lunatic/props/getComponentTypeProps.d.ts +1 -0
  307. package/use-lunatic/props/propValue.js +18 -6
  308. package/use-lunatic/props/propValue.js.map +1 -1
  309. package/use-lunatic/props/propValue.spec.js +97 -2
  310. package/use-lunatic/props/propValue.spec.js.map +1 -1
  311. package/use-lunatic/reducer/reducerInitializer.d.ts +2 -2
  312. package/use-lunatic/reducer/reducerInitializer.js +25 -32
  313. package/use-lunatic/reducer/reducerInitializer.js.map +1 -1
  314. package/use-lunatic/test.utils.d.ts +2 -0
  315. package/use-lunatic/test.utils.js +17 -0
  316. package/use-lunatic/test.utils.js.map +1 -0
  317. package/use-lunatic/type.d.ts +0 -4
  318. package/use-lunatic/use-lunatic.d.ts +1 -2
  319. package/use-lunatic/use-lunatic.js.map +1 -1
  320. package/utils/cast.d.ts +19 -0
  321. package/utils/cast.js +70 -0
  322. package/utils/cast.js.map +1 -0
  323. package/utils/constants/variable-status.d.ts +0 -4
  324. package/utils/constants/variable-status.js +1 -5
  325. package/utils/constants/variable-status.js.map +1 -1
  326. package/utils/variables.spec.js +0 -8
  327. package/utils/variables.spec.js.map +1 -1
  328. package/constants/component-types.d.ts +0 -1
  329. package/constants/component-types.js +0 -5
  330. package/constants/component-types.js.map +0 -1
  331. package/constants/declarations.d.ts +0 -9
  332. package/constants/declarations.js +0 -15
  333. package/constants/declarations.js.map +0 -1
  334. package/constants/event-types.d.ts +0 -10
  335. package/constants/event-types.js +0 -16
  336. package/constants/event-types.js.map +0 -1
  337. package/constants/index.d.ts +0 -5
  338. package/constants/index.js +0 -22
  339. package/constants/index.js.map +0 -1
  340. package/constants/indexedDBStore.d.ts +0 -21
  341. package/constants/indexedDBStore.js +0 -22
  342. package/constants/indexedDBStore.js.map +0 -1
  343. package/constants/supported-preferences.d.ts +0 -1
  344. package/constants/supported-preferences.js +0 -36
  345. package/constants/supported-preferences.js.map +0 -1
  346. package/constants/value-types.d.ts +0 -5
  347. package/constants/value-types.js +0 -9
  348. package/constants/value-types.js.map +0 -1
  349. package/constants/variable-types.d.ts +0 -2
  350. package/constants/variable-types.js +0 -8
  351. package/constants/variable-types.js.map +0 -1
  352. package/esm/constants/component-types.d.ts +0 -1
  353. package/esm/constants/component-types.js +0 -2
  354. package/esm/constants/component-types.js.map +0 -1
  355. package/esm/constants/declarations.d.ts +0 -9
  356. package/esm/constants/declarations.js +0 -12
  357. package/esm/constants/declarations.js.map +0 -1
  358. package/esm/constants/event-types.d.ts +0 -10
  359. package/esm/constants/event-types.js +0 -13
  360. package/esm/constants/event-types.js.map +0 -1
  361. package/esm/constants/index.d.ts +0 -5
  362. package/esm/constants/index.js +0 -6
  363. package/esm/constants/index.js.map +0 -1
  364. package/esm/constants/indexedDBStore.d.ts +0 -21
  365. package/esm/constants/indexedDBStore.js +0 -19
  366. package/esm/constants/indexedDBStore.js.map +0 -1
  367. package/esm/constants/supported-preferences.d.ts +0 -1
  368. package/esm/constants/supported-preferences.js +0 -10
  369. package/esm/constants/supported-preferences.js.map +0 -1
  370. package/esm/constants/value-types.d.ts +0 -5
  371. package/esm/constants/value-types.js +0 -6
  372. package/esm/constants/value-types.js.map +0 -1
  373. package/esm/constants/variable-types.d.ts +0 -2
  374. package/esm/constants/variable-types.js +0 -5
  375. package/esm/constants/variable-types.js.map +0 -1
  376. package/esm/hooks/useArticulation.d.ts +0 -58
  377. package/esm/hooks/useArticulation.js +0 -81
  378. package/esm/hooks/useArticulation.js.map +0 -1
  379. package/hooks/useArticulation.d.ts +0 -58
  380. package/hooks/useArticulation.js +0 -81
  381. package/hooks/useArticulation.js.map +0 -1
  382. package/src/constants/component-types.ts +0 -1
  383. package/src/constants/declarations.ts +0 -14
  384. package/src/constants/event-types.ts +0 -13
  385. package/src/constants/index.ts +0 -5
  386. package/src/constants/indexedDBStore.ts +0 -20
  387. package/src/constants/supported-preferences.ts +0 -10
  388. package/src/constants/value-types.ts +0 -5
  389. package/src/constants/variable-types.ts +0 -4
  390. package/src/hooks/useArticulation.ts +0 -124
  391. package/src/stories/behaviour/articulation/articulation.stories.tsx +0 -105
  392. package/src/stories/behaviour/articulation/roundabout.json +0 -348
@@ -10,10 +10,6 @@ export declare function generateVariable({ type, name }: {
10
10
  variableType: string;
11
11
  name: string;
12
12
  values: {
13
- PREVIOUS: null;
14
13
  COLLECTED: null;
15
- FORCED: null;
16
- EDITED: null;
17
- INPUTTED: null;
18
14
  };
19
15
  };
@@ -20,11 +20,7 @@ export function generateVariable({ type = 'COLLECTED', name = 'VARIABLE' }) {
20
20
  variableType: type,
21
21
  name: name,
22
22
  values: {
23
- PREVIOUS: null,
24
23
  COLLECTED: null,
25
- FORCED: null,
26
- EDITED: null,
27
- INPUTTED: null,
28
24
  },
29
25
  };
30
26
  }
@@ -1 +1 @@
1
- {"version":3,"file":"lunatic.js","sourceRoot":"","sources":["../../../src/tests/utils/lunatic.ts"],"names":[],"mappings":"AAEA;;GAEG;AACH,MAAM,UAAU,YAAY,CAC3B,IAAO;IAEP,OAAO;QACN,SAAS,EAAE,MAAM,CAAC,WAAW,CAC5B,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,EAAE,KAAK,CAAC,EAAE,EAAE,CAAC;YAC1C,GAAG;YACH;gBACC,UAAU,EAAE,IAAI;gBAChB,QAAQ,EAAE,IAAI;gBACd,SAAS,EAAE,KAAK;aAChB;SACD,CAAC,CACqB;QACxB,UAAU,EAAE,EAAE;QACd,QAAQ,EAAE,EAAE;KACZ,CAAC;AACH,CAAC;AAED,MAAM,UAAU,gBAAgB,CAAC,EAAE,IAAI,GAAG,WAAW,EAAE,IAAI,GAAG,UAAU,EAAE;IACzE,OAAO;QACN,YAAY,EAAE,IAAI;QAClB,IAAI,EAAE,IAAI;QACV,MAAM,EAAE;YACP,QAAQ,EAAE,IAAI;YACd,SAAS,EAAE,IAAI;YACf,MAAM,EAAE,IAAI;YACZ,MAAM,EAAE,IAAI;YACZ,QAAQ,EAAE,IAAI;SACd;KACD,CAAC;AACH,CAAC"}
1
+ {"version":3,"file":"lunatic.js","sourceRoot":"","sources":["../../../src/tests/utils/lunatic.ts"],"names":[],"mappings":"AAEA;;GAEG;AACH,MAAM,UAAU,YAAY,CAC3B,IAAO;IAEP,OAAO;QACN,SAAS,EAAE,MAAM,CAAC,WAAW,CAC5B,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,EAAE,KAAK,CAAC,EAAE,EAAE,CAAC;YAC1C,GAAG;YACH;gBACC,UAAU,EAAE,IAAI;gBAChB,QAAQ,EAAE,IAAI;gBACd,SAAS,EAAE,KAAK;aAChB;SACD,CAAC,CACqB;QACxB,UAAU,EAAE,EAAE;QACd,QAAQ,EAAE,EAAE;KACZ,CAAC;AACH,CAAC;AAED,MAAM,UAAU,gBAAgB,CAAC,EAAE,IAAI,GAAG,WAAW,EAAE,IAAI,GAAG,UAAU,EAAE;IACzE,OAAO;QACN,YAAY,EAAE,IAAI;QAClB,IAAI,EAAE,IAAI;QACV,MAAM,EAAE;YACP,SAAS,EAAE,IAAI;SACf;KACD,CAAC;AACH,CAAC"}
@@ -205,11 +205,7 @@ export type Variable = {
205
205
  variableType: 'COLLECTED';
206
206
  name: string;
207
207
  values?: {
208
- PREVIOUS: VariableValue;
209
208
  COLLECTED: VariableValue;
210
- FORCED: VariableValue;
211
- EDITED: VariableValue;
212
- INPUTTED: VariableValue;
213
209
  };
214
210
  } | {
215
211
  variableType: 'CALCULATED';
@@ -221,7 +217,7 @@ export type Variable = {
221
217
  export type VariableValue = VariableScalarValue | unknown[];
222
218
  export type VariableScalarValue = string | number | null;
223
219
  /**
224
- * A lunatic survey unit
220
+ * Representation of a Lunatic questionnaire.
225
221
  */
226
222
  export type LunaticSource = {
227
223
  label?: VTLExpression;
@@ -236,7 +232,11 @@ export type LunaticSource = {
236
232
  suggesters?: SuggesterDefinition[];
237
233
  cleaning?: {
238
234
  [k: string]: {
239
- [k: string]: string;
235
+ [k: string]: string | {
236
+ expression: string;
237
+ shapeFrom?: string;
238
+ isAggregatorUsed: boolean;
239
+ }[];
240
240
  };
241
241
  };
242
242
  missingBlock?: {
@@ -1,4 +1,3 @@
1
- /* eslint-disable */
2
1
  /**
3
2
  * This file was automatically generated by json-schema-to-typescript.
4
3
  * DO NOT MODIFY IT BY HAND. Instead, modify the source JSONSchema file,
@@ -1 +1 @@
1
- {"version":3,"file":"type.source.js","sourceRoot":"","sources":["../src/type.source.ts"],"names":[],"mappings":"AAAA,oBAAoB;AACpB;;;;GAIG"}
1
+ {"version":3,"file":"type.source.js","sourceRoot":"","sources":["../src/type.source.ts"],"names":[],"mappings":"AAAA;;;;GAIG"}
@@ -24,6 +24,14 @@ export function isPageEmpty(state) {
24
24
  if (options.disableFilters) {
25
25
  return true;
26
26
  }
27
+ // The component is a paginated loop, consider it invisible if iteration size is 0
28
+ if ('paginatedLoop' in component && component.paginatedLoop) {
29
+ const iterations = state.executeExpression(component.iterations);
30
+ if (!iterations) {
31
+ return false;
32
+ }
33
+ }
34
+ // Use condition filter if present
27
35
  if ('conditionFilter' in component && component.conditionFilter) {
28
36
  return executeConditionFilter(component.conditionFilter, executeExpression, iteration);
29
37
  }
@@ -1 +1 @@
1
- {"version":3,"file":"page.js","sourceRoot":"","sources":["../../../src/use-lunatic/commons/page.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,sBAAsB,EAAE,MAAM,6BAA6B,CAAC;AACrE,OAAO,sBAAsB,MAAM,4BAA4B,CAAC;AAEhE,MAAM,UAAU,SAAS,CAAC,EACzB,OAAO,EACP,IAAI,GACoD;IACxD,IAAI,OAAO,KAAK,SAAS,EAAE,CAAC;QAC3B,OAAO,IAAI,CAAC;IACb,CAAC;IACD,OAAO,GAAG,IAAI,IAAI,OAAO,GAAG,CAAC,EAAE,CAAC;AACjC,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,mBAAmB,CAAC,IAAY;IAC/C,OAAO,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,QAAQ,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC;AACpD,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,WAAW,CAAC,KAA0B;IACrD,MAAM,EAAE,iBAAiB,EAAE,KAAK,EAAE,OAAO,EAAE,GAAG,KAAK,CAAC;IACpD,MAAM,EAAE,SAAS,EAAE,GAAG,KAAK,CAAC;IAC5B,MAAM,UAAU,GAAG,sBAAsB,CAAC,KAAK,CAAC,CAAC;IACjD,MAAM,iBAAiB,GAAG,UAAU,CAAC,MAAM,CAAC,CAAC,SAAS,EAAE,EAAE;QACzD,IAAI,OAAO,CAAC,cAAc,EAAE,CAAC;YAC5B,OAAO,IAAI,CAAC;QACb,CAAC;QACD,IAAI,iBAAiB,IAAI,SAAS,IAAI,SAAS,CAAC,eAAe,EAAE,CAAC;YACjE,OAAO,sBAAsB,CAC5B,SAAS,CAAC,eAAe,EACzB,iBAAiB,EACjB,SAAS,CACT,CAAC;QACH,CAAC;QACD,OAAO,IAAI,CAAC;IACb,CAAC,CAAC,CAAC;IAEH,6CAA6C;IAC7C,IAAI,iBAAiB,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACpC,OAAO,IAAI,CAAC;IACb,CAAC;IAED,OAAO,KAAK,CAAC;AACd,CAAC"}
1
+ {"version":3,"file":"page.js","sourceRoot":"","sources":["../../../src/use-lunatic/commons/page.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,sBAAsB,EAAE,MAAM,6BAA6B,CAAC;AACrE,OAAO,sBAAsB,MAAM,4BAA4B,CAAC;AAEhE,MAAM,UAAU,SAAS,CAAC,EACzB,OAAO,EACP,IAAI,GACoD;IACxD,IAAI,OAAO,KAAK,SAAS,EAAE,CAAC;QAC3B,OAAO,IAAI,CAAC;IACb,CAAC;IACD,OAAO,GAAG,IAAI,IAAI,OAAO,GAAG,CAAC,EAAE,CAAC;AACjC,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,mBAAmB,CAAC,IAAY;IAC/C,OAAO,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,QAAQ,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC;AACpD,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,WAAW,CAAC,KAA0B;IACrD,MAAM,EAAE,iBAAiB,EAAE,KAAK,EAAE,OAAO,EAAE,GAAG,KAAK,CAAC;IACpD,MAAM,EAAE,SAAS,EAAE,GAAG,KAAK,CAAC;IAC5B,MAAM,UAAU,GAAG,sBAAsB,CAAC,KAAK,CAAC,CAAC;IACjD,MAAM,iBAAiB,GAAG,UAAU,CAAC,MAAM,CAAC,CAAC,SAAS,EAAE,EAAE;QACzD,IAAI,OAAO,CAAC,cAAc,EAAE,CAAC;YAC5B,OAAO,IAAI,CAAC;QACb,CAAC;QAED,kFAAkF;QAClF,IAAI,eAAe,IAAI,SAAS,IAAI,SAAS,CAAC,aAAa,EAAE,CAAC;YAC7D,MAAM,UAAU,GAAG,KAAK,CAAC,iBAAiB,CAAS,SAAS,CAAC,UAAU,CAAC,CAAC;YACzE,IAAI,CAAC,UAAU,EAAE,CAAC;gBACjB,OAAO,KAAK,CAAC;YACd,CAAC;QACF,CAAC;QAED,kCAAkC;QAClC,IAAI,iBAAiB,IAAI,SAAS,IAAI,SAAS,CAAC,eAAe,EAAE,CAAC;YACjE,OAAO,sBAAsB,CAC5B,SAAS,CAAC,eAAe,EACzB,iBAAiB,EACjB,SAAS,CACT,CAAC;QACH,CAAC;QACD,OAAO,IAAI,CAAC;IACb,CAAC,CAAC,CAAC;IAEH,6CAA6C;IAC7C,IAAI,iBAAiB,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACpC,OAAO,IAAI,CAAC;IACb,CAAC;IAED,OAAO,KAAK,CAAC;AACd,CAAC"}
@@ -4,4 +4,4 @@ import type { LunaticSource } from '../../../type';
4
4
  * Cleaning behaviour for the store
5
5
  * When a variable changes, other variables can be reset
6
6
  */
7
- export declare function cleaningBehaviour(store: LunaticVariablesStore, cleaning: LunaticSource['cleaning'], initialValues?: Record<string, unknown>): void;
7
+ export declare function cleaningBehaviour(store: LunaticVariablesStore, cleaning: LunaticSource['cleaning'], sourceValues?: Record<string, unknown>): void;
@@ -1,14 +1,27 @@
1
1
  import { depth } from '../../../../utils/array';
2
+ import { castBool } from '../../../../utils/cast';
2
3
  /**
3
4
  * Cleaning behaviour for the store
4
5
  * When a variable changes, other variables can be reset
5
6
  */
6
7
  export function cleaningBehaviour(store, cleaning,
7
- // Value used as default when cleaning a variable
8
- initialValues = {}) {
8
+ // Value used as default when cleaning a variable, correspoding to value of variable in source.json (not data)
9
+ sourceValues = {}) {
9
10
  if (!cleaning) {
10
11
  return;
11
12
  }
13
+ // Create calculated variables from cleaning expressions
14
+ for (const source in cleaning) {
15
+ for (const target in cleaning[source]) {
16
+ if (Array.isArray(cleaning[source][target])) {
17
+ for (const cleaningInfo of cleaning[source][target]) {
18
+ store.setCalculated(cleaningInfo.expression, cleaningInfo.expression, {
19
+ shapeFrom: cleaningInfo.shapeFrom,
20
+ });
21
+ }
22
+ }
23
+ }
24
+ }
12
25
  // Create a map to improve performance
13
26
  const cleaningMap = new Map(Object.entries(cleaning));
14
27
  store.on('change', (e) => {
@@ -20,21 +33,22 @@ initialValues = {}) {
20
33
  }
21
34
  for (const variableName in cleaningInfo) {
22
35
  try {
23
- const skipCleaning = store.run(cleaningInfo[variableName], {
24
- iteration,
36
+ // First: check if variable is already cleaned i.e, value is `null`, empty or list of `null`
37
+ if (isAlreadyCleaned(store, variableName))
38
+ continue;
39
+ // Second: check if variable should be clean i.e one of expressions is true
40
+ // shouldClean is simple boolean or array of boolean if there have a shapeFrom
41
+ const shouldCleanResult = shouldClean(store, {
42
+ expressions: cleaningInfo[variableName],
43
+ iteration: iteration,
44
+ isResizing: e.detail.cause === 'resizing',
25
45
  });
26
- if (skipCleaning) {
46
+ if (Array.isArray(shouldCleanResult)) {
47
+ cleanArrayVariableAccordingCondition(store, sourceValues, variableName, shouldCleanResult);
27
48
  continue;
28
49
  }
29
- // Variable may be top level, so we need to deduce expected iteration
30
- const variableDepth = depth(initialValues[variableName]);
31
- const variableIteration = variableDepth === 0
32
- ? undefined
33
- : iteration === null || iteration === void 0 ? void 0 : iteration.slice(0, depth(initialValues[variableName]));
34
- store.set(variableName, getValueAtIteration(initialValues[variableName], variableIteration), {
35
- iteration: variableIteration,
36
- cause: 'cleaning',
37
- });
50
+ if (shouldCleanResult)
51
+ cleanVariable(store, sourceValues, variableName, iteration);
38
52
  }
39
53
  catch (e) {
40
54
  // If we have an error, skip this cleaning
@@ -43,6 +57,55 @@ initialValues = {}) {
43
57
  }
44
58
  });
45
59
  }
60
+ function isAlreadyCleaned(store, variableName) {
61
+ const value = store.get(variableName);
62
+ if (Array.isArray(value))
63
+ return value.every((v) => v === null);
64
+ if (value === null)
65
+ return true;
66
+ }
67
+ /**
68
+ * Check if a variable need to be cleaned
69
+ */
70
+ function shouldClean(store, {
71
+ // The expressions are a list of condition filter to display the variable, so we should clean if the filter is evaluated to false (false = variable is not visible)
72
+ expressions, iteration, isResizing, }) {
73
+ // Legacy cleaning used a simple string
74
+ if (typeof expressions === 'string') {
75
+ return !castBool(store.run(expressions, {
76
+ iteration,
77
+ }));
78
+ }
79
+ // New format use tuples { expression, shapeFrom, isAggregatorUsed }
80
+ if (isResizing) {
81
+ // If we are resizing a variable, only run expression containing aggregators (count(), sum()...)
82
+ expressions = expressions.filter((expr) => expr.isAggregatorUsed);
83
+ }
84
+ // here, value has change in root scope, but we have to to check for each iteration of variable
85
+ if (hasShapeFrom(expressions) && !iteration) {
86
+ const shapeFromVariable = store.get(expressions[0].shapeFrom);
87
+ const shouldCleanArray = new Array(shapeFromVariable.length).fill(false);
88
+ for (const [iterationIndex] of shouldCleanArray.entries()) {
89
+ shouldCleanArray[iterationIndex] = shouldClean(store, {
90
+ expressions,
91
+ iteration: [iterationIndex],
92
+ isResizing,
93
+ });
94
+ }
95
+ return shouldCleanArray;
96
+ }
97
+ else {
98
+ // if only one expression is false, we have to clean (condition is display condition)
99
+ for (const expression of expressions) {
100
+ // Run the expression to check if cleaning should happen
101
+ if (!store.run(expression.expression, {
102
+ iteration,
103
+ }))
104
+ return true;
105
+ }
106
+ return false;
107
+ }
108
+ }
46
109
  function getValueAtIteration(value, iteration) {
47
110
  if (!iteration || iteration.length === 0) {
48
111
  return value !== null && value !== void 0 ? value : null;
@@ -52,4 +115,38 @@ function getValueAtIteration(value, iteration) {
52
115
  }
53
116
  return getValueAtIteration(value[iteration[0]], iteration.slice(1));
54
117
  }
118
+ /**
119
+ * hasShapeFrom
120
+ * actually, in cleaning modelisation,
121
+ * all expressions have no shapeFrom or have the **same** shapeFrom
122
+ * @param expressions
123
+ * @returns boolean if all expression has shapeFrom
124
+ *
125
+ */
126
+ function hasShapeFrom(expressions) {
127
+ return expressions.every((expression) => expression.shapeFrom !== null && expression.shapeFrom !== undefined);
128
+ }
129
+ function cleanArrayVariableAccordingCondition(store, sourceValues, variableName, shouldClean) {
130
+ for (const [iteration, shouldCleanByIteration] of shouldClean.entries()) {
131
+ if (shouldCleanByIteration)
132
+ cleanVariable(store, sourceValues, variableName, [iteration]);
133
+ }
134
+ }
135
+ /**
136
+ * cleanVariable: this function set to null (and not initalValue) the variable at iteration
137
+ * @param store
138
+ * @param variableName
139
+ * @param iteration
140
+ */
141
+ function cleanVariable(store, sourceValues, variableName, iteration) {
142
+ // Variable may be top level, so we need to deduce expected iteration
143
+ const variableDepth = depth(sourceValues[variableName]);
144
+ const variableIteration = variableDepth === 0
145
+ ? undefined
146
+ : iteration === null || iteration === void 0 ? void 0 : iteration.slice(0, depth(sourceValues[variableName]));
147
+ store.set(variableName, getValueAtIteration(sourceValues[variableName], variableIteration), {
148
+ iteration: variableIteration,
149
+ cause: 'cleaning',
150
+ });
151
+ }
55
152
  //# sourceMappingURL=cleaning-behaviour.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"cleaning-behaviour.js","sourceRoot":"","sources":["../../../../../src/use-lunatic/commons/variables/behaviours/cleaning-behaviour.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,KAAK,EAAE,MAAM,yBAAyB,CAAC;AAEhD;;;GAGG;AACH,MAAM,UAAU,iBAAiB,CAChC,KAA4B,EAC5B,QAAmC;AACnC,iDAAiD;AACjD,gBAAyC,EAAE;IAE3C,IAAI,CAAC,QAAQ,EAAE,CAAC;QACf,OAAO;IACR,CAAC;IAED,sCAAsC;IACtC,MAAM,WAAW,GAAG,IAAI,GAAG,CAAC,MAAM,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,CAAC;IAEtD,KAAK,CAAC,EAAE,CAAC,QAAQ,EAAE,CAAC,CAAC,EAAE,EAAE;QACxB,MAAM,YAAY,GAAG,WAAW,CAAC,GAAG,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;QACpD,MAAM,SAAS,GAAG,CAAC,CAAC,MAAM,CAAC,SAAS,CAAC;QAErC,sCAAsC;QACtC,IAAI,CAAC,YAAY,EAAE,CAAC;YACnB,OAAO;QACR,CAAC;QAED,KAAK,MAAM,YAAY,IAAI,YAAY,EAAE,CAAC;YACzC,IAAI,CAAC;gBACJ,MAAM,YAAY,GAAG,KAAK,CAAC,GAAG,CAAC,YAAY,CAAC,YAAY,CAAC,EAAE;oBAC1D,SAAS;iBACT,CAAC,CAAC;gBACH,IAAI,YAAY,EAAE,CAAC;oBAClB,SAAS;gBACV,CAAC;gBAED,qEAAqE;gBACrE,MAAM,aAAa,GAAG,KAAK,CAAC,aAAa,CAAC,YAAY,CAAC,CAAC,CAAC;gBACzD,MAAM,iBAAiB,GACtB,aAAa,KAAK,CAAC;oBAClB,CAAC,CAAC,SAAS;oBACX,CAAC,CAAC,SAAS,aAAT,SAAS,uBAAT,SAAS,CAAE,KAAK,CAAC,CAAC,EAAE,KAAK,CAAC,aAAa,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC;gBAE5D,KAAK,CAAC,GAAG,CACR,YAAY,EACZ,mBAAmB,CAAC,aAAa,CAAC,YAAY,CAAC,EAAE,iBAAiB,CAAC,EACnE;oBACC,SAAS,EAAE,iBAAiB;oBAC5B,KAAK,EAAE,UAAU;iBACjB,CACD,CAAC;YACH,CAAC;YAAC,OAAO,CAAC,EAAE,CAAC;gBACZ,0CAA0C;gBAC1C,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;YAClB,CAAC;QACF,CAAC;IACF,CAAC,CAAC,CAAC;AACJ,CAAC;AAED,SAAS,mBAAmB,CAAC,KAAc,EAAE,SAAoB;IAChE,IAAI,CAAC,SAAS,IAAI,SAAS,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAC1C,OAAO,KAAK,aAAL,KAAK,cAAL,KAAK,GAAI,IAAI,CAAC;IACtB,CAAC;IAED,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC;QAC3B,OAAO,IAAI,CAAC;IACb,CAAC;IAED,OAAO,mBAAmB,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,EAAE,SAAS,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;AACrE,CAAC"}
1
+ {"version":3,"file":"cleaning-behaviour.js","sourceRoot":"","sources":["../../../../../src/use-lunatic/commons/variables/behaviours/cleaning-behaviour.ts"],"names":[],"mappings":"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"}
@@ -14,10 +14,6 @@ export function getQuestionnaireData(store, variables, withCalculated = false, v
14
14
  COLLECTED: Object.fromEntries(variableNames.map((name) => [
15
15
  name,
16
16
  {
17
- EDITED: null,
18
- FORCED: null,
19
- INPUTTED: null,
20
- PREVIOUS: null,
21
17
  COLLECTED: store.get(name),
22
18
  },
23
19
  ])),
@@ -30,10 +26,6 @@ export function getQuestionnaireData(store, variables, withCalculated = false, v
30
26
  }
31
27
  if (variable.variableType === 'COLLECTED') {
32
28
  result.COLLECTED[variable.name] = {
33
- PREVIOUS: null,
34
- FORCED: null,
35
- EDITED: null,
36
- INPUTTED: null,
37
29
  ...variable.values,
38
30
  COLLECTED: store.get(variable.name),
39
31
  };
@@ -1 +1 @@
1
- {"version":3,"file":"get-questionnaire-data.js","sourceRoot":"","sources":["../../../../src/use-lunatic/commons/variables/get-questionnaire-data.ts"],"names":[],"mappings":"AAGA,MAAM,UAAU,oBAAoB,CACnC,KAA4B,EAC5B,SAAqC,EACrC,iBAA0B,KAAK,EAC/B,aAAwB;IAExB,MAAM,MAAM,GAAG;QACd,QAAQ,EAAE,EAA6B;QACvC,UAAU,EAAE,EAA6B;QACzC,SAAS,EAAE,EASV;KACD,CAAC;IAEF,IAAI,CAAC,SAAS,EAAE,CAAC;QAChB,OAAO,MAAM,CAAC;IACf,CAAC;IAED,kCAAkC;IAClC,IAAI,aAAa,EAAE,CAAC;QACnB,OAAO;YACN,GAAG,MAAM;YACT,SAAS,EAAE,MAAM,CAAC,WAAW,CAC5B,aAAa,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC;gBAC3B,IAAI;gBACJ;oBACC,MAAM,EAAE,IAAI;oBACZ,MAAM,EAAE,IAAI;oBACZ,QAAQ,EAAE,IAAI;oBACd,QAAQ,EAAE,IAAI;oBACd,SAAS,EAAE,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC;iBAC1B;aACD,CAAC,CACF;SACD,CAAC;IACH,CAAC;IAED,KAAK,MAAM,QAAQ,IAAI,SAAS,EAAE,CAAC;QAClC,qCAAqC;QACrC,IAAI,QAAQ,CAAC,YAAY,KAAK,YAAY,IAAI,CAAC,cAAc,EAAE,CAAC;YAC/D,SAAS;QACV,CAAC;QAED,IAAI,QAAQ,CAAC,YAAY,KAAK,WAAW,EAAE,CAAC;YAC3C,MAAM,CAAC,SAAS,CAAC,QAAQ,CAAC,IAAI,CAAC,GAAG;gBACjC,QAAQ,EAAE,IAAI;gBACd,MAAM,EAAE,IAAI;gBACZ,MAAM,EAAE,IAAI;gBACZ,QAAQ,EAAE,IAAI;gBACd,GAAG,QAAQ,CAAC,MAAM;gBAClB,SAAS,EAAE,KAAK,CAAC,GAAG,CAAC,QAAQ,CAAC,IAAI,CAAC;aACnC,CAAC;QACH,CAAC;aAAM,CAAC;YACP,IAAI,CAAC;gBACJ,MAAM,CAAC,QAAQ,CAAC,YAAY,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC,GAAG,KAAK,CAAC,GAAG,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;YACzE,CAAC;YAAC,WAAM,CAAC;gBACR,sFAAsF;gBACtF,MAAM,CAAC,QAAQ,CAAC,YAAY,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC;YACrD,CAAC;QACF,CAAC;IACF,CAAC;IACD,OAAO,MAAM,CAAC;AACf,CAAC"}
1
+ {"version":3,"file":"get-questionnaire-data.js","sourceRoot":"","sources":["../../../../src/use-lunatic/commons/variables/get-questionnaire-data.ts"],"names":[],"mappings":"AAGA,MAAM,UAAU,oBAAoB,CACnC,KAA4B,EAC5B,SAAqC,EACrC,iBAA0B,KAAK,EAC/B,aAAwB;IAExB,MAAM,MAAM,GAAG;QACd,QAAQ,EAAE,EAA6B;QACvC,UAAU,EAAE,EAA6B;QACzC,SAAS,EAAE,EAKV;KACD,CAAC;IAEF,IAAI,CAAC,SAAS,EAAE,CAAC;QAChB,OAAO,MAAM,CAAC;IACf,CAAC;IAED,kCAAkC;IAClC,IAAI,aAAa,EAAE,CAAC;QACnB,OAAO;YACN,GAAG,MAAM;YACT,SAAS,EAAE,MAAM,CAAC,WAAW,CAC5B,aAAa,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC;gBAC3B,IAAI;gBACJ;oBACC,SAAS,EAAE,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC;iBAC1B;aACD,CAAC,CACF;SACD,CAAC;IACH,CAAC;IAED,KAAK,MAAM,QAAQ,IAAI,SAAS,EAAE,CAAC;QAClC,qCAAqC;QACrC,IAAI,QAAQ,CAAC,YAAY,KAAK,YAAY,IAAI,CAAC,cAAc,EAAE,CAAC;YAC/D,SAAS;QACV,CAAC;QAED,IAAI,QAAQ,CAAC,YAAY,KAAK,WAAW,EAAE,CAAC;YAC3C,MAAM,CAAC,SAAS,CAAC,QAAQ,CAAC,IAAI,CAAC,GAAG;gBACjC,GAAG,QAAQ,CAAC,MAAM;gBAClB,SAAS,EAAE,KAAK,CAAC,GAAG,CAAC,QAAQ,CAAC,IAAI,CAAC;aACnC,CAAC;QACH,CAAC;aAAM,CAAC;YACP,IAAI,CAAC;gBACJ,MAAM,CAAC,QAAQ,CAAC,YAAY,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC,GAAG,KAAK,CAAC,GAAG,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;YACzE,CAAC;YAAC,WAAM,CAAC;gBACR,sFAAsF;gBACtF,MAAM,CAAC,QAAQ,CAAC,YAAY,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC;YACrD,CAAC;QACF,CAAC;IACF,CAAC;IACD,OAAO,MAAM,CAAC;AACf,CAAC"}
@@ -1,6 +1,6 @@
1
1
  import type { LunaticData, LunaticOptions, LunaticSource } from '../../type';
2
2
  import type { RefObject } from 'react';
3
- type IterationLevel = number[];
3
+ export type IterationLevel = number[];
4
4
  export type EventArgs = {
5
5
  change: {
6
6
  /** Name of the changed variable. */
@@ -22,7 +22,7 @@ export declare class LunaticVariablesStore {
22
22
  private dictionary;
23
23
  private eventTarget;
24
24
  constructor();
25
- static makeFromSource(source: LunaticSource, data: LunaticData, changeHandler: RefObject<LunaticOptions['onVariableChange']>): LunaticVariablesStore;
25
+ static makeFromSource(source: LunaticSource, data: LunaticData, changeHandler: RefObject<LunaticOptions['onVariableChange']>, disableCleaning?: boolean): LunaticVariablesStore;
26
26
  /**
27
27
  * Create a new store from an object (useful for testing)
28
28
  */
@@ -17,13 +17,13 @@ export class LunaticVariablesStore {
17
17
  this.eventTarget = new EventTarget();
18
18
  interpretCount = 0;
19
19
  }
20
- static makeFromSource(source, data, changeHandler) {
20
+ static makeFromSource(source, data, changeHandler, disableCleaning) {
21
21
  var _a, _b;
22
22
  const store = new LunaticVariablesStore();
23
23
  if (!source.variables) {
24
24
  return store;
25
25
  }
26
- // Source data (picked from "variables" in the source.json)
26
+ // Source data (picked from "variables" in the source.json)s
27
27
  const sourceValues = {};
28
28
  // Starting data for the form (merged with data.json or injected data)
29
29
  const initialValues = {};
@@ -55,7 +55,9 @@ export class LunaticVariablesStore {
55
55
  }
56
56
  }
57
57
  store.on('change', (e) => { var _a; return (_a = changeHandler === null || changeHandler === void 0 ? void 0 : changeHandler.current) === null || _a === void 0 ? void 0 : _a.call(changeHandler, e.detail); });
58
- cleaningBehaviour(store, source.cleaning, sourceValues);
58
+ if (!disableCleaning) {
59
+ cleaningBehaviour(store, source.cleaning, sourceValues);
60
+ }
59
61
  resizingBehaviour(store, source.resizing);
60
62
  missingBehaviour(store, source.missingBlock);
61
63
  return store;
@@ -1 +1 @@
1
- {"version":3,"file":"lunatic-variables-store.js","sourceRoot":"","sources":["../../../../src/use-lunatic/commons/variables/lunatic-variables-store.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"lunatic-variables-store.js","sourceRoot":"","sources":["../../../../src/use-lunatic/commons/variables/lunatic-variables-store.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,6 @@
1
1
  import { beforeEach, describe, expect, it, vi } from 'vitest';
2
2
  import { cleaningBehaviour } from './behaviours/cleaning-behaviour';
3
+ import * as cleaningModule from './behaviours/cleaning-behaviour';
3
4
  import { missingBehaviour } from './behaviours/missing-behaviour';
4
5
  import { resizingBehaviour } from './behaviours/resizing-behaviour';
5
6
  import { LunaticVariablesStore } from './lunatic-variables-store';
@@ -91,6 +92,16 @@ describe('lunatic-variables-store', () => {
91
92
  it('should throw an exception when calculated incorrect VTL', () => {
92
93
  expect(() => variables.run('Hello world')).toThrowError();
93
94
  });
95
+ it('should handle calculated with aggregates', () => {
96
+ variables.set('AGES', [1, 2, 3]);
97
+ variables.setCalculated('NB_HAB', 'count(AGES)');
98
+ variables.setCalculated('AGES_PLUS_NBHAB', 'NB_HAB + AGES', {
99
+ shapeFrom: 'AGES',
100
+ });
101
+ expect(variables.get('NB_HAB')).toBe(3);
102
+ expect(variables.get('AGES_PLUS_NBHAB', [0])).toBe(4);
103
+ expect(variables.get('AGES_PLUS_NBHAB')).toEqual([4, 5, 6]);
104
+ });
94
105
  describe('event listener', () => {
95
106
  it('should trigger onChange', () => {
96
107
  variables.set('FIRSTNAME', 'John');
@@ -365,6 +376,89 @@ describe('lunatic-variables-store', () => {
365
376
  variables.set('READY', false, { iteration: [1] });
366
377
  expect(variables.get('PRENOM')).toEqual(null);
367
378
  });
379
+ it('should handle the new array format', () => {
380
+ variables.set('PRENOM', ['John', 'Jane', 'Marc']);
381
+ variables.set('READY', [true, true, true]);
382
+ cleaningBehaviour(variables, {
383
+ READY: {
384
+ PRENOM: [
385
+ {
386
+ expression: 'READY',
387
+ shapeFrom: 'READY',
388
+ isAggregatorUsed: false,
389
+ },
390
+ ],
391
+ },
392
+ }, { PRENOM: [null] });
393
+ variables.set('READY', false, { iteration: [1] });
394
+ expect(variables.get('PRENOM')).toEqual(['John', null, 'Marc']);
395
+ });
396
+ it('should handle cleaning on aggregations', () => {
397
+ variables.set('PRENOM', ['John', 'Jane', 'Marc']);
398
+ variables.set('READY', [true, true, true]);
399
+ variables.setCalculated('NB_HAB', 'count(PRENOM)');
400
+ cleaningBehaviour(variables, {
401
+ READY: {
402
+ PRENOM: [
403
+ {
404
+ expression: 'READY',
405
+ shapeFrom: 'READY',
406
+ isAggregatorUsed: false,
407
+ },
408
+ {
409
+ expression: 'NB_HAB > 1',
410
+ isAggregatorUsed: true,
411
+ },
412
+ ],
413
+ },
414
+ }, { PRENOM: [null] });
415
+ variables.set('READY', false, { iteration: [1], cause: 'resizing' });
416
+ expect(variables.get('PRENOM')).toEqual(['John', 'Jane', 'Marc']);
417
+ variables.set('PRENOM', ['John'], { cause: 'resizing' });
418
+ variables.set('READY', [true], { cause: 'resizing' });
419
+ expect(variables.get('PRENOM')).toEqual([null]);
420
+ });
421
+ it('should evaluate cleaning for each iteration', () => {
422
+ variables.set('PRENOM', ['John', 'Jane', 'Marc']);
423
+ variables.set('READY', [true, true, true]);
424
+ cleaningBehaviour(variables, {
425
+ READY: {
426
+ PRENOM: [
427
+ {
428
+ expression: 'READY',
429
+ shapeFrom: 'READY',
430
+ isAggregatorUsed: false,
431
+ },
432
+ ],
433
+ },
434
+ }, { PRENOM: [null] });
435
+ variables.set('READY', [true, true, false]);
436
+ expect(variables.get('PRENOM')).toEqual(['John', 'Jane', null]);
437
+ });
438
+ it('should evaluate cleaning for each iteration at root levl', () => {
439
+ variables.set('PRENOM', ['John', 'Jane', 'Marc']);
440
+ variables.set('AGE', [18, 21, 23]);
441
+ variables.setCalculated('NB_HAB', 'count(PRENOM)');
442
+ resizingBehaviour(variables, {
443
+ PRENOM: {
444
+ size: 'count(PRENOM)',
445
+ variables: ['AGE'],
446
+ },
447
+ });
448
+ cleaningBehaviour(variables, {
449
+ PRENOM: {
450
+ AGE: [
451
+ {
452
+ expression: 'NB_HAB >= 3',
453
+ shapeFrom: 'PRENOM',
454
+ isAggregatorUsed: true,
455
+ },
456
+ ],
457
+ },
458
+ }, { PRENOM: [], AGE: [] });
459
+ variables.set('PRENOM', ['John', 'Jane']);
460
+ expect(variables.get('AGE')).toEqual([null, null]);
461
+ });
368
462
  });
369
463
  describe('missing', () => {
370
464
  beforeEach(() => {
@@ -397,10 +491,6 @@ describe('lunatic-variables-store', () => {
397
491
  {
398
492
  name: 'PRENOM',
399
493
  values: {
400
- EDITED: null,
401
- FORCED: null,
402
- INPUTTED: null,
403
- PREVIOUS: null,
404
494
  COLLECTED: 'John',
405
495
  },
406
496
  variableType: 'COLLECTED',
@@ -408,10 +498,6 @@ describe('lunatic-variables-store', () => {
408
498
  {
409
499
  name: 'NOM',
410
500
  values: {
411
- EDITED: null,
412
- FORCED: null,
413
- INPUTTED: null,
414
- PREVIOUS: null,
415
501
  COLLECTED: '',
416
502
  },
417
503
  variableType: 'COLLECTED',
@@ -433,6 +519,76 @@ describe('lunatic-variables-store', () => {
433
519
  store.set('NOM', 'Doe');
434
520
  expect(store.get('PRENOM')).toEqual('John');
435
521
  });
522
+ it('should enable cleaning when disableCleaning = false', () => {
523
+ const cleaningSpy = vi.spyOn(cleaningModule, 'cleaningBehaviour');
524
+ LunaticVariablesStore.makeFromSource({
525
+ components: [],
526
+ variables: [
527
+ {
528
+ name: 'PRENOM',
529
+ values: {
530
+ COLLECTED: 'John',
531
+ },
532
+ variableType: 'COLLECTED',
533
+ },
534
+ {
535
+ name: 'NOM',
536
+ values: {
537
+ COLLECTED: '',
538
+ },
539
+ variableType: 'COLLECTED',
540
+ },
541
+ ],
542
+ cleaning: {
543
+ NOM: {
544
+ PRENOM: 'false',
545
+ },
546
+ },
547
+ }, {
548
+ COLLECTED: {
549
+ PRENOM: {
550
+ COLLECTED: 'Jane',
551
+ },
552
+ },
553
+ }, { current: () => { } }, false // enable cleaning
554
+ );
555
+ expect(cleaningSpy).toHaveBeenCalled();
556
+ });
557
+ it('should disable cleaning when disableCleaning = true', () => {
558
+ const cleaningSpy = vi.spyOn(cleaningModule, 'cleaningBehaviour');
559
+ LunaticVariablesStore.makeFromSource({
560
+ components: [],
561
+ variables: [
562
+ {
563
+ name: 'PRENOM',
564
+ values: {
565
+ COLLECTED: 'John',
566
+ },
567
+ variableType: 'COLLECTED',
568
+ },
569
+ {
570
+ name: 'NOM',
571
+ values: {
572
+ COLLECTED: '',
573
+ },
574
+ variableType: 'COLLECTED',
575
+ },
576
+ ],
577
+ cleaning: {
578
+ NOM: {
579
+ PRENOM: 'false',
580
+ },
581
+ },
582
+ }, {
583
+ COLLECTED: {
584
+ PRENOM: {
585
+ COLLECTED: 'Jane',
586
+ },
587
+ },
588
+ }, { current: () => { } }, true // disable cleaning
589
+ );
590
+ expect(cleaningSpy).not.toHaveBeenCalled();
591
+ });
436
592
  });
437
593
  });
438
594
  //# sourceMappingURL=lunatic-variables-store.spec.js.map