@ukhomeoffice/cop-react-form-renderer 5.90.0 → 5.90.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 (382) hide show
  1. package/dist/components/CheckYourAnswers/Answer.js +15 -15
  2. package/dist/components/CheckYourAnswers/Answer.test.js +132 -181
  3. package/dist/components/CheckYourAnswers/CheckYourAnswers.js +106 -142
  4. package/dist/components/CheckYourAnswers/CheckYourAnswers.test.js +563 -941
  5. package/dist/components/CheckYourAnswers/index.js +1 -1
  6. package/dist/components/CollectionPage/CollectionPage.js +76 -66
  7. package/dist/components/CollectionPage/CollectionPage.test.js +318 -369
  8. package/dist/components/CollectionPage/index.js +1 -1
  9. package/dist/components/CollectionSummary/BannerStrip.js +15 -15
  10. package/dist/components/CollectionSummary/BannerStrip.test.js +83 -79
  11. package/dist/components/CollectionSummary/CollectionSummary.js +109 -131
  12. package/dist/components/CollectionSummary/CollectionSummary.test.js +198 -180
  13. package/dist/components/CollectionSummary/Confirmation.js +15 -13
  14. package/dist/components/CollectionSummary/Confirmation.test.js +68 -63
  15. package/dist/components/CollectionSummary/RenderListView.js +47 -55
  16. package/dist/components/CollectionSummary/RenderListView.test.js +82 -81
  17. package/dist/components/CollectionSummary/SummaryCard.js +121 -157
  18. package/dist/components/CollectionSummary/SummaryCard.test.js +970 -1000
  19. package/dist/components/CollectionSummary/SummaryCardDetails.js +103 -94
  20. package/dist/components/CollectionSummary/SummaryCardDetails.test.js +187 -195
  21. package/dist/components/CollectionSummary/SummaryCardValidationContext.js +31 -36
  22. package/dist/components/CollectionSummary/SummaryCardValidationContext.test.js +64 -76
  23. package/dist/components/CollectionSummary/index.js +1 -1
  24. package/dist/components/FormComponent/Collection.js +81 -117
  25. package/dist/components/FormComponent/Collection.test.js +910 -1082
  26. package/dist/components/FormComponent/Container.js +43 -38
  27. package/dist/components/FormComponent/Container.test.js +379 -411
  28. package/dist/components/FormComponent/FormComponent.js +71 -74
  29. package/dist/components/FormComponent/FormComponent.test.js +354 -415
  30. package/dist/components/FormComponent/helpers/addLabel.js +4 -7
  31. package/dist/components/FormComponent/helpers/getComponentDisabled.js +1 -1
  32. package/dist/components/FormComponent/helpers/getComponentDisabled.test.js +8 -8
  33. package/dist/components/FormComponent/helpers/getComponentError.js +3 -5
  34. package/dist/components/FormComponent/helpers/getComponentError.test.js +15 -15
  35. package/dist/components/FormComponent/helpers/getComponentFieldSet.js +3 -4
  36. package/dist/components/FormComponent/helpers/getComponentFieldSet.test.js +7 -7
  37. package/dist/components/FormComponent/helpers/index.js +5 -5
  38. package/dist/components/FormComponent/index.js +1 -1
  39. package/dist/components/FormPage/FormPage.js +71 -87
  40. package/dist/components/FormPage/FormPage.test.js +133 -170
  41. package/dist/components/FormPage/index.js +1 -1
  42. package/dist/components/FormRenderer/FormRenderer.js +153 -198
  43. package/dist/components/FormRenderer/FormRenderer.test.js +731 -1116
  44. package/dist/components/FormRenderer/handlers/cyaAction.js +3 -3
  45. package/dist/components/FormRenderer/handlers/getPageId.js +1 -3
  46. package/dist/components/FormRenderer/handlers/getPageId.test.js +15 -15
  47. package/dist/components/FormRenderer/handlers/handlers.test.js +33 -33
  48. package/dist/components/FormRenderer/handlers/index.js +2 -2
  49. package/dist/components/FormRenderer/handlers/navigate.js +4 -4
  50. package/dist/components/FormRenderer/handlers/submissionError.js +1 -1
  51. package/dist/components/FormRenderer/helpers/canActionProceed.js +1 -1
  52. package/dist/components/FormRenderer/helpers/canActionProceed.test.js +16 -16
  53. package/dist/components/FormRenderer/helpers/canCYASubmit.js +1 -3
  54. package/dist/components/FormRenderer/helpers/canCYASubmit.test.js +17 -21
  55. package/dist/components/FormRenderer/helpers/cleanHiddenNestedData.js +27 -30
  56. package/dist/components/FormRenderer/helpers/cleanHiddenNestedData.test.js +21 -21
  57. package/dist/components/FormRenderer/helpers/getCYA.js +5 -7
  58. package/dist/components/FormRenderer/helpers/getCYA.test.js +12 -12
  59. package/dist/components/FormRenderer/helpers/getFormState.js +6 -8
  60. package/dist/components/FormRenderer/helpers/getFormState.test.js +11 -11
  61. package/dist/components/FormRenderer/helpers/getNextPageId.js +18 -32
  62. package/dist/components/FormRenderer/helpers/getNextPageId.test.js +68 -68
  63. package/dist/components/FormRenderer/helpers/getPage.js +2 -4
  64. package/dist/components/FormRenderer/helpers/getPage.test.js +12 -12
  65. package/dist/components/FormRenderer/helpers/getRelevantPages.js +8 -11
  66. package/dist/components/FormRenderer/helpers/getRelevantPages.test.js +15 -15
  67. package/dist/components/FormRenderer/helpers/getSubmissionStatus.js +12 -13
  68. package/dist/components/FormRenderer/helpers/getSubmissionStatus.test.js +104 -98
  69. package/dist/components/FormRenderer/helpers/getUpdatedSectionStates.js +65 -64
  70. package/dist/components/FormRenderer/helpers/getUpdatedSectionStates.test.js +72 -79
  71. package/dist/components/FormRenderer/helpers/index.js +2 -2
  72. package/dist/components/FormRenderer/index.js +1 -1
  73. package/dist/components/FormRenderer/onCYAAction.js +61 -54
  74. package/dist/components/FormRenderer/onCYAAction.test.js +165 -153
  75. package/dist/components/FormRenderer/onPageAction.js +45 -41
  76. package/dist/components/FormRenderer/onPageAction.test.js +225 -210
  77. package/dist/components/FormRenderer/onTaskAction.js +11 -15
  78. package/dist/components/FormRenderer/onTaskAction.test.js +94 -89
  79. package/dist/components/PageActions/ActionButton.js +13 -16
  80. package/dist/components/PageActions/ActionButton.test.js +57 -79
  81. package/dist/components/PageActions/PageActions.js +11 -11
  82. package/dist/components/PageActions/PageActions.test.js +87 -116
  83. package/dist/components/PageActions/index.js +1 -1
  84. package/dist/components/SummaryList/GroupAction.js +13 -21
  85. package/dist/components/SummaryList/GroupAction.test.js +41 -37
  86. package/dist/components/SummaryList/RowAction.js +12 -17
  87. package/dist/components/SummaryList/RowAction.test.js +41 -37
  88. package/dist/components/SummaryList/SummaryList.js +23 -28
  89. package/dist/components/SummaryList/SummaryList.test.js +179 -206
  90. package/dist/components/SummaryList/SummaryListHeadingRow.js +8 -6
  91. package/dist/components/SummaryList/SummaryListHeadingRowWithAction.js +7 -5
  92. package/dist/components/SummaryList/SummaryListRow.js +8 -6
  93. package/dist/components/SummaryList/SummaryListTitleRow.js +7 -5
  94. package/dist/components/SummaryList/helpers/getGroupActionAttributes.js +4 -6
  95. package/dist/components/SummaryList/helpers/getGroupActionAttributes.test.js +24 -24
  96. package/dist/components/SummaryList/helpers/getRowActionAttributes.js +4 -6
  97. package/dist/components/SummaryList/helpers/getRowActionAttributes.test.js +24 -24
  98. package/dist/components/SummaryList/helpers/index.js +2 -2
  99. package/dist/components/SummaryList/index.js +1 -1
  100. package/dist/components/TaskList/Task.js +20 -30
  101. package/dist/components/TaskList/Task.test.js +84 -77
  102. package/dist/components/TaskList/TaskList.js +53 -84
  103. package/dist/components/TaskList/TaskList.test.js +150 -150
  104. package/dist/components/TaskList/TaskState.js +8 -6
  105. package/dist/components/TaskList/TaskState.test.js +56 -49
  106. package/dist/components/TaskList/index.js +1 -1
  107. package/dist/components/index.js +8 -8
  108. package/dist/context/HooksContext/HooksContext.js +58 -81
  109. package/dist/context/HooksContext/HooksContext.test.js +27 -36
  110. package/dist/context/HooksContext/index.js +3 -4
  111. package/dist/context/ValidationContext/ValidationContext.js +44 -95
  112. package/dist/context/ValidationContext/ValidationContext.test.js +58 -70
  113. package/dist/context/ValidationContext/index.js +3 -4
  114. package/dist/context/index.js +3 -3
  115. package/dist/hooks/index.js +10 -11
  116. package/dist/hooks/useAxios.js +15 -41
  117. package/dist/hooks/useGetRequest.js +62 -98
  118. package/dist/hooks/useHooks.js +1 -3
  119. package/dist/hooks/useRefData.js +28 -41
  120. package/dist/hooks/useValidation.js +1 -3
  121. package/dist/index.js +14 -15
  122. package/dist/models/CollectionLabels.js +1 -1
  123. package/dist/models/ComponentTypes.js +25 -25
  124. package/dist/models/EventTypes.js +4 -4
  125. package/dist/models/FormPages.js +4 -4
  126. package/dist/models/FormTypes.js +8 -8
  127. package/dist/models/HubFormats.js +3 -3
  128. package/dist/models/PageAction.js +44 -38
  129. package/dist/models/TaskStates.js +29 -28
  130. package/dist/models/index.js +10 -10
  131. package/dist/setupTests.js +31 -32
  132. package/dist/utils/CheckYourAnswers/getCYAAction.js +5 -5
  133. package/dist/utils/CheckYourAnswers/getCYAAction.test.js +53 -55
  134. package/dist/utils/CheckYourAnswers/getCYACollectionChangeAction.js +17 -27
  135. package/dist/utils/CheckYourAnswers/getCYACollectionChangeAction.test.js +34 -36
  136. package/dist/utils/CheckYourAnswers/getCYACollectionDeleteAction.js +20 -34
  137. package/dist/utils/CheckYourAnswers/getCYACollectionDeleteAction.test.js +43 -45
  138. package/dist/utils/CheckYourAnswers/getCYARow.js +8 -10
  139. package/dist/utils/CheckYourAnswers/getCYARow.test.js +87 -87
  140. package/dist/utils/CheckYourAnswers/getCYARowForGroup.js +19 -25
  141. package/dist/utils/CheckYourAnswers/getCYARowForGroup.test.js +16 -17
  142. package/dist/utils/CheckYourAnswers/getCYARowsForCollection.js +39 -45
  143. package/dist/utils/CheckYourAnswers/getCYARowsForCollection.test.js +72 -75
  144. package/dist/utils/CheckYourAnswers/getCYARowsForCollectionPage.js +100 -105
  145. package/dist/utils/CheckYourAnswers/getCYARowsForCollectionPage.test.js +218 -182
  146. package/dist/utils/CheckYourAnswers/getCYARowsForContainer.js +26 -21
  147. package/dist/utils/CheckYourAnswers/getCYARowsForContainer.test.js +112 -106
  148. package/dist/utils/CheckYourAnswers/getCYARowsForPage.js +15 -21
  149. package/dist/utils/CheckYourAnswers/getCYARowsForPage.test.js +77 -83
  150. package/dist/utils/CheckYourAnswers/getSummaryListRowForDetails.js +13 -13
  151. package/dist/utils/CheckYourAnswers/getSummaryListRowForDetails.test.js +14 -19
  152. package/dist/utils/CheckYourAnswers/index.js +2 -2
  153. package/dist/utils/CheckYourAnswers/showComponentCYA.js +6 -6
  154. package/dist/utils/CheckYourAnswers/showComponentCYA.test.js +26 -26
  155. package/dist/utils/CollectionPage/addCollectionPageEntry.js +3 -3
  156. package/dist/utils/CollectionPage/addCollectionPageEntry.test.js +6 -6
  157. package/dist/utils/CollectionPage/duplicateCollectionPageActiveEntry.js +3 -3
  158. package/dist/utils/CollectionPage/duplicateCollectionPageActiveEntry.test.js +21 -22
  159. package/dist/utils/CollectionPage/duplicateCollectionPageEntry.js +15 -24
  160. package/dist/utils/CollectionPage/duplicateCollectionPageEntry.test.js +52 -43
  161. package/dist/utils/CollectionPage/getCollectionPageActiveId.js +3 -3
  162. package/dist/utils/CollectionPage/getCollectionPageActiveId.test.js +11 -11
  163. package/dist/utils/CollectionPage/getCollectionPageActiveIndex.js +7 -12
  164. package/dist/utils/CollectionPage/getCollectionPageActiveIndex.test.js +23 -23
  165. package/dist/utils/CollectionPage/getCollectionPageData.js +8 -13
  166. package/dist/utils/CollectionPage/getCollectionPageData.test.js +20 -20
  167. package/dist/utils/CollectionPage/getErrorsForCollection.js +25 -26
  168. package/dist/utils/CollectionPage/getErrorsForCollection.test.js +21 -23
  169. package/dist/utils/CollectionPage/getQuickEditPage.js +37 -32
  170. package/dist/utils/CollectionPage/getQuickEditPage.test.js +18 -22
  171. package/dist/utils/CollectionPage/index.js +2 -2
  172. package/dist/utils/CollectionPage/mergeCollectionPages.js +37 -42
  173. package/dist/utils/CollectionPage/mergeCollectionPages.test.js +26 -22
  174. package/dist/utils/CollectionPage/removeCollectionPageEntry.js +5 -7
  175. package/dist/utils/CollectionPage/removeCollectionPageEntry.test.js +11 -11
  176. package/dist/utils/CollectionPage/setCollectionPageData.js +13 -19
  177. package/dist/utils/CollectionPage/setCollectionPageData.test.js +26 -26
  178. package/dist/utils/Component/addShowWhen.js +4 -8
  179. package/dist/utils/Component/addShowWhen.test.js +38 -38
  180. package/dist/utils/Component/applyToComponentTree.js +19 -20
  181. package/dist/utils/Component/applyToComponentTree.test.js +28 -33
  182. package/dist/utils/Component/cleanAttributes.js +10 -13
  183. package/dist/utils/Component/cleanAttributes.test.js +17 -18
  184. package/dist/utils/Component/elevateNestedComponents.js +6 -7
  185. package/dist/utils/Component/elevateNestedComponents.test.js +34 -34
  186. package/dist/utils/Component/getComponent.js +90 -97
  187. package/dist/utils/Component/getComponentTests/getComponent.autocomplete.test.js +19 -18
  188. package/dist/utils/Component/getComponentTests/getComponent.calculation.test.js +50 -63
  189. package/dist/utils/Component/getComponentTests/getComponent.checkboxes.test.js +40 -49
  190. package/dist/utils/Component/getComponentTests/getComponent.date.test.js +30 -40
  191. package/dist/utils/Component/getComponentTests/getComponent.details.test.js +21 -19
  192. package/dist/utils/Component/getComponentTests/getComponent.email.test.js +18 -23
  193. package/dist/utils/Component/getComponentTests/getComponent.file.test.js +22 -27
  194. package/dist/utils/Component/getComponentTests/getComponent.heading.test.js +12 -11
  195. package/dist/utils/Component/getComponentTests/getComponent.html.test.js +18 -16
  196. package/dist/utils/Component/getComponentTests/getComponent.insetText.test.js +10 -9
  197. package/dist/utils/Component/getComponentTests/getComponent.list.test.js +18 -16
  198. package/dist/utils/Component/getComponentTests/getComponent.multifile.test.js +23 -27
  199. package/dist/utils/Component/getComponentTests/getComponent.nested.test.js +155 -175
  200. package/dist/utils/Component/getComponentTests/getComponent.paragraph.test.js +18 -16
  201. package/dist/utils/Component/getComponentTests/getComponent.phoneNumber.test.js +18 -23
  202. package/dist/utils/Component/getComponentTests/getComponent.radios.test.js +58 -73
  203. package/dist/utils/Component/getComponentTests/getComponent.select.test.js +18 -23
  204. package/dist/utils/Component/getComponentTests/getComponent.text.test.js +18 -23
  205. package/dist/utils/Component/getComponentTests/getComponent.textArea.test.js +34 -41
  206. package/dist/utils/Component/getComponentTests/getComponent.time.test.js +23 -32
  207. package/dist/utils/Component/getComponentTests/getComponent.unknown.test.js +3 -3
  208. package/dist/utils/Component/getComponentTests/getComponent.warningText.test.js +10 -9
  209. package/dist/utils/Component/getDefaultValue.js +7 -9
  210. package/dist/utils/Component/getDefaultValue.test.js +13 -13
  211. package/dist/utils/Component/getDefaultValueFromConfig.js +24 -24
  212. package/dist/utils/Component/getDefaultValueFromConfig.test.js +32 -32
  213. package/dist/utils/Component/index.js +2 -2
  214. package/dist/utils/Component/isEditable.js +2 -4
  215. package/dist/utils/Component/isEditable.test.js +14 -15
  216. package/dist/utils/Component/optionIsSelected.js +2 -4
  217. package/dist/utils/Component/optionIsSelected.test.js +12 -12
  218. package/dist/utils/Component/setupContainerComponentsPath.js +29 -31
  219. package/dist/utils/Component/setupContainerComponentsPath.test.js +16 -16
  220. package/dist/utils/Component/showComponent.js +3 -4
  221. package/dist/utils/Component/showComponent.test.js +29 -29
  222. package/dist/utils/Component/wrapInFormGroup.js +4 -4
  223. package/dist/utils/Condition/index.js +2 -2
  224. package/dist/utils/Condition/meetsAllConditions.js +9 -9
  225. package/dist/utils/Condition/meetsAllConditions.test.js +21 -21
  226. package/dist/utils/Condition/meetsCondition.js +20 -31
  227. package/dist/utils/Condition/meetsCondition.test.js +403 -403
  228. package/dist/utils/Condition/meetsOneCondition.js +6 -6
  229. package/dist/utils/Condition/meetsOneCondition.test.js +17 -17
  230. package/dist/utils/Condition/setupConditions.js +14 -19
  231. package/dist/utils/Condition/setupConditions.test.js +8 -8
  232. package/dist/utils/Container/getEditableComponents.js +4 -6
  233. package/dist/utils/Container/getEditableComponents.test.js +44 -46
  234. package/dist/utils/Container/index.js +2 -2
  235. package/dist/utils/Container/setupNesting.js +16 -22
  236. package/dist/utils/Container/setupNesting.test.js +28 -31
  237. package/dist/utils/Container/showContainer.js +4 -8
  238. package/dist/utils/Container/showContainer.test.js +31 -31
  239. package/dist/utils/Data/applyFormula.js +40 -50
  240. package/dist/utils/Data/applyFormula.test.js +26 -26
  241. package/dist/utils/Data/deleteValues.js +4 -8
  242. package/dist/utils/Data/deleteValues.test.js +11 -11
  243. package/dist/utils/Data/getAutocompleteSource.js +20 -29
  244. package/dist/utils/Data/getAutocompleteSource.test.js +81 -87
  245. package/dist/utils/Data/getDataPath.js +20 -30
  246. package/dist/utils/Data/getDataPath.test.js +20 -20
  247. package/dist/utils/Data/getOptions.js +27 -34
  248. package/dist/utils/Data/getOptions.test.js +28 -28
  249. package/dist/utils/Data/getSourceData.js +6 -19
  250. package/dist/utils/Data/getSourceData.test.js +85 -81
  251. package/dist/utils/Data/index.js +2 -2
  252. package/dist/utils/Data/nestInRefdataOptions.js +9 -16
  253. package/dist/utils/Data/nestInRefdataOptions.test.js +17 -17
  254. package/dist/utils/Data/refDataToOptions.js +11 -15
  255. package/dist/utils/Data/refDataToOptions.test.js +20 -20
  256. package/dist/utils/Data/setDataItem.js +7 -8
  257. package/dist/utils/Data/setDataItem.test.js +38 -38
  258. package/dist/utils/Data/setupFormData.js +14 -22
  259. package/dist/utils/Data/setupFormData.test.js +52 -51
  260. package/dist/utils/Data/setupRefDataUrlForComponent.js +21 -28
  261. package/dist/utils/Data/setupRefDataUrlForComponent.test.js +28 -28
  262. package/dist/utils/FormPage/applyConditionalProperties.js +6 -10
  263. package/dist/utils/FormPage/applyConditionalProperties.test.js +16 -19
  264. package/dist/utils/FormPage/getConditionalText.js +4 -4
  265. package/dist/utils/FormPage/getConditionalText.test.js +35 -35
  266. package/dist/utils/FormPage/getFormPage.js +16 -17
  267. package/dist/utils/FormPage/getFormPage.test.js +49 -48
  268. package/dist/utils/FormPage/getFormPages.js +8 -13
  269. package/dist/utils/FormPage/getFormPages.test.js +22 -25
  270. package/dist/utils/FormPage/getPageActions.js +10 -17
  271. package/dist/utils/FormPage/getPageActions.test.js +33 -33
  272. package/dist/utils/FormPage/getParagraphFromText.js +5 -7
  273. package/dist/utils/FormPage/getParagraphFromText.test.js +7 -7
  274. package/dist/utils/FormPage/index.js +3 -5
  275. package/dist/utils/FormPage/showFormPage.js +4 -8
  276. package/dist/utils/FormPage/showFormPage.test.js +33 -33
  277. package/dist/utils/FormPage/showFormPageCYA.js +3 -3
  278. package/dist/utils/FormPage/showFormPageCYA.test.js +9 -9
  279. package/dist/utils/FormPage/useComponent.js +21 -28
  280. package/dist/utils/FormPage/useComponent.test.js +78 -80
  281. package/dist/utils/Format/formatData.js +1 -1
  282. package/dist/utils/Format/formatData.test.js +19 -19
  283. package/dist/utils/Format/formatDataForComponent.js +6 -7
  284. package/dist/utils/Format/formatDataForComponent.test.js +50 -78
  285. package/dist/utils/Format/formatDataForForm.js +6 -8
  286. package/dist/utils/Format/formatDataForForm.test.js +14 -17
  287. package/dist/utils/Format/formatDataForPage.js +4 -5
  288. package/dist/utils/Format/formatDataForPage.test.js +20 -25
  289. package/dist/utils/Format/index.js +2 -2
  290. package/dist/utils/Hub/getFormHub.js +2 -2
  291. package/dist/utils/Hub/getFormHub.test.js +29 -32
  292. package/dist/utils/Hub/index.js +2 -2
  293. package/dist/utils/Meta/constants.js +2 -2
  294. package/dist/utils/Meta/documents/getDocuments.js +1 -4
  295. package/dist/utils/Meta/documents/getDocuments.test.js +25 -17
  296. package/dist/utils/Meta/documents/index.js +2 -2
  297. package/dist/utils/Meta/documents/setDocumentsForField.js +15 -17
  298. package/dist/utils/Meta/documents/setDocumentsForField.test.js +69 -35
  299. package/dist/utils/Meta/index.js +2 -2
  300. package/dist/utils/Operate/checkValueIsTruthy.js +4 -4
  301. package/dist/utils/Operate/checkValueIsTruthy.test.js +17 -17
  302. package/dist/utils/Operate/deleteValueInFormData.js +3 -3
  303. package/dist/utils/Operate/deleteValueInFormData.test.js +15 -15
  304. package/dist/utils/Operate/getFirstOf.js +8 -8
  305. package/dist/utils/Operate/getFirstOf.test.js +33 -33
  306. package/dist/utils/Operate/getIndexOfMatchingValueIn.js +12 -12
  307. package/dist/utils/Operate/getIndexOfMatchingValueIn.test.js +47 -53
  308. package/dist/utils/Operate/getLength.js +11 -11
  309. package/dist/utils/Operate/getLength.test.js +19 -19
  310. package/dist/utils/Operate/index.js +2 -2
  311. package/dist/utils/Operate/persistValueInFormData.js +6 -6
  312. package/dist/utils/Operate/persistValueInFormData.test.js +23 -21
  313. package/dist/utils/Operate/runPageOperations.js +9 -9
  314. package/dist/utils/Operate/runPageOperations.test.js +36 -37
  315. package/dist/utils/Operate/setValueInFormData.js +5 -5
  316. package/dist/utils/Operate/setValueInFormData.test.js +17 -17
  317. package/dist/utils/Operate/shouldRun.js +8 -8
  318. package/dist/utils/Operate/shouldRun.test.js +22 -28
  319. package/dist/utils/Validate/additional/conditionallyPermittedChange.js +1 -1
  320. package/dist/utils/Validate/additional/conditionallyPermittedChange.test.js +15 -15
  321. package/dist/utils/Validate/additional/conditionallyRequired.js +4 -5
  322. package/dist/utils/Validate/additional/conditionallyRequired.test.js +19 -19
  323. package/dist/utils/Validate/additional/index.js +8 -8
  324. package/dist/utils/Validate/additional/index.test.js +22 -22
  325. package/dist/utils/Validate/additional/mustBeAfter.js +3 -3
  326. package/dist/utils/Validate/additional/mustBeAfter.test.js +41 -41
  327. package/dist/utils/Validate/additional/mustBeBefore.js +3 -3
  328. package/dist/utils/Validate/additional/mustBeBefore.test.js +29 -29
  329. package/dist/utils/Validate/additional/mustBeEarlierDateTime.js +9 -14
  330. package/dist/utils/Validate/additional/mustBeEarlierDateTime.test.js +38 -42
  331. package/dist/utils/Validate/additional/mustBeGreaterThan.js +2 -2
  332. package/dist/utils/Validate/additional/mustBeGreaterThan.test.js +19 -19
  333. package/dist/utils/Validate/additional/mustBeInTheFuture.js +4 -4
  334. package/dist/utils/Validate/additional/mustBeInTheFuture.test.js +13 -13
  335. package/dist/utils/Validate/additional/mustBeInThePast.js +5 -5
  336. package/dist/utils/Validate/additional/mustBeInThePast.test.js +13 -13
  337. package/dist/utils/Validate/additional/mustBeLessThan.js +2 -2
  338. package/dist/utils/Validate/additional/mustBeLessThan.test.js +18 -18
  339. package/dist/utils/Validate/additional/mustBeLongerThan.js +1 -1
  340. package/dist/utils/Validate/additional/mustBeLongerThan.test.js +17 -17
  341. package/dist/utils/Validate/additional/mustBeNumbersOnly.js +2 -2
  342. package/dist/utils/Validate/additional/mustBeNumbersOnly.test.js +21 -21
  343. package/dist/utils/Validate/additional/mustBeOneOf.js +1 -1
  344. package/dist/utils/Validate/additional/mustBeOneOf.test.js +13 -13
  345. package/dist/utils/Validate/additional/mustBeShorterThan.js +1 -1
  346. package/dist/utils/Validate/additional/mustBeShorterThan.test.js +17 -17
  347. package/dist/utils/Validate/additional/mustBeUniqueInCollection.js +5 -5
  348. package/dist/utils/Validate/additional/mustBeUniqueInCollection.test.js +36 -40
  349. package/dist/utils/Validate/additional/mustEnterAtLeastOne.js +3 -5
  350. package/dist/utils/Validate/additional/mustEnterAtLeastOne.test.js +15 -17
  351. package/dist/utils/Validate/additional/mustHaveLessThanDecimalPlaces.js +1 -1
  352. package/dist/utils/Validate/additional/mustHaveLessThanDecimalPlaces.test.js +13 -13
  353. package/dist/utils/Validate/additional/mustNotContainSql.js +3 -4
  354. package/dist/utils/Validate/additional/mustNotContainSql.test.js +15 -15
  355. package/dist/utils/Validate/additional/mustSelectOnlyOne.js +3 -5
  356. package/dist/utils/Validate/additional/mustSelectOnlyOne.test.js +29 -27
  357. package/dist/utils/Validate/additional/utils.js +11 -24
  358. package/dist/utils/Validate/index.js +2 -2
  359. package/dist/utils/Validate/validateCollection.js +21 -27
  360. package/dist/utils/Validate/validateCollection.test.js +85 -77
  361. package/dist/utils/Validate/validateComponent.js +22 -23
  362. package/dist/utils/Validate/validateComponent.test.js +188 -165
  363. package/dist/utils/Validate/validateContainer.js +16 -21
  364. package/dist/utils/Validate/validateContainer.test.js +62 -56
  365. package/dist/utils/Validate/validateDate.js +17 -23
  366. package/dist/utils/Validate/validateDate.test.js +31 -32
  367. package/dist/utils/Validate/validateEmail.js +7 -9
  368. package/dist/utils/Validate/validateEmail.test.js +26 -26
  369. package/dist/utils/Validate/validateMultifile.js +5 -7
  370. package/dist/utils/Validate/validateMultifile.test.js +17 -18
  371. package/dist/utils/Validate/validatePage.js +20 -24
  372. package/dist/utils/Validate/validatePage.test.js +227 -215
  373. package/dist/utils/Validate/validateRegex.js +5 -8
  374. package/dist/utils/Validate/validateRegex.test.js +17 -17
  375. package/dist/utils/Validate/validateRequired.js +5 -7
  376. package/dist/utils/Validate/validateRequired.test.js +19 -19
  377. package/dist/utils/Validate/validateTextArea.js +5 -7
  378. package/dist/utils/Validate/validateTextArea.test.js +21 -21
  379. package/dist/utils/Validate/validateTime.js +12 -19
  380. package/dist/utils/Validate/validateTime.test.js +27 -27
  381. package/dist/utils/index.js +8 -10
  382. package/package.json +3 -2
@@ -1,28 +1,28 @@
1
1
  "use strict";
2
2
 
3
3
  var _elevateNestedComponents = _interopRequireDefault(require("./elevateNestedComponents"));
4
- function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
5
- describe('utils.Component.elevateNestedComponents', function () {
6
- it('should return an empty array if components is undefined', function () {
7
- var DATA = {
4
+ function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
5
+ describe('utils.Component.elevateNestedComponents', () => {
6
+ it('should return an empty array if components is undefined', () => {
7
+ const DATA = {
8
8
  alpha: 'abc'
9
9
  };
10
10
  expect((0, _elevateNestedComponents.default)(undefined, DATA)).toEqual([]);
11
11
  });
12
- it('should return an empty array if components is null', function () {
13
- var DATA = {
12
+ it('should return an empty array if components is null', () => {
13
+ const DATA = {
14
14
  alpha: 'abc'
15
15
  };
16
16
  expect((0, _elevateNestedComponents.default)(null, DATA)).toEqual([]);
17
17
  });
18
- it('should return an empty array if components is empty', function () {
19
- var DATA = {
18
+ it('should return an empty array if components is empty', () => {
19
+ const DATA = {
20
20
  alpha: 'abc'
21
21
  };
22
22
  expect((0, _elevateNestedComponents.default)([], DATA)).toEqual([]);
23
23
  });
24
- it('should return the original components if none have nested components', function () {
25
- var COMPONENTS = [{
24
+ it('should return the original components if none have nested components', () => {
25
+ const COMPONENTS = [{
26
26
  id: 'textComp'
27
27
  }, {
28
28
  id: 'radiosComp',
@@ -36,13 +36,13 @@ describe('utils.Component.elevateNestedComponents', function () {
36
36
  }]
37
37
  }
38
38
  }];
39
- var DATA = {
39
+ const DATA = {
40
40
  alpha: 'abc'
41
41
  };
42
42
  expect((0, _elevateNestedComponents.default)(COMPONENTS, DATA)).toEqual(COMPONENTS);
43
43
  });
44
- it('should return the original components if data is null', function () {
45
- var COMPONENTS = [{
44
+ it('should return the original components if data is null', () => {
45
+ const COMPONENTS = [{
46
46
  id: 'textComp'
47
47
  }, {
48
48
  id: 'radiosComp',
@@ -58,8 +58,8 @@ describe('utils.Component.elevateNestedComponents', function () {
58
58
  }];
59
59
  expect((0, _elevateNestedComponents.default)(COMPONENTS, null)).toEqual(COMPONENTS);
60
60
  });
61
- it('should return the original array with elevated nested components when they are visible', function () {
62
- var COMPONENTS = [{
61
+ it('should return the original array with elevated nested components when they are visible', () => {
62
+ const COMPONENTS = [{
63
63
  id: 'textComp'
64
64
  }, {
65
65
  id: 'radiosComp',
@@ -78,7 +78,7 @@ describe('utils.Component.elevateNestedComponents', function () {
78
78
  }]
79
79
  }
80
80
  }];
81
- var DATA = {
81
+ const DATA = {
82
82
  radiosComp: 'yes'
83
83
  };
84
84
  expect((0, _elevateNestedComponents.default)(COMPONENTS, DATA)).toEqual([].concat(COMPONENTS, [{
@@ -87,8 +87,8 @@ describe('utils.Component.elevateNestedComponents', function () {
87
87
  id: 'nestedTwo'
88
88
  }]));
89
89
  });
90
- it('should return the original array with elevated nested components when a component has a full_path', function () {
91
- var COMPONENTS = [{
90
+ it('should return the original array with elevated nested components when a component has a full_path', () => {
91
+ const COMPONENTS = [{
92
92
  id: 'textComp'
93
93
  }, {
94
94
  id: 'radiosComp',
@@ -108,7 +108,7 @@ describe('utils.Component.elevateNestedComponents', function () {
108
108
  },
109
109
  full_path: 'component.radiosComp'
110
110
  }];
111
- var DATA = {
111
+ const DATA = {
112
112
  component: {
113
113
  radiosComp: 'yes'
114
114
  }
@@ -119,8 +119,8 @@ describe('utils.Component.elevateNestedComponents', function () {
119
119
  id: 'nestedTwo'
120
120
  }]));
121
121
  });
122
- it('should not elevate nested components under a component which is hidden with a show_when', function () {
123
- var COMPONENTS = [{
122
+ it('should not elevate nested components under a component which is hidden with a show_when', () => {
123
+ const COMPONENTS = [{
124
124
  id: 'textComp'
125
125
  }, {
126
126
  id: 'radiosComp',
@@ -144,14 +144,14 @@ describe('utils.Component.elevateNestedComponents', function () {
144
144
  }]
145
145
  }
146
146
  }];
147
- var DATA = {
147
+ const DATA = {
148
148
  radiosComp: 'yes',
149
149
  testField: 'red'
150
150
  };
151
151
  expect((0, _elevateNestedComponents.default)(COMPONENTS, DATA)).toEqual([].concat(COMPONENTS));
152
152
  });
153
- it('should elevate nested components under a component which is shown with a show_When', function () {
154
- var COMPONENTS = [{
153
+ it('should elevate nested components under a component which is shown with a show_When', () => {
154
+ const COMPONENTS = [{
155
155
  id: 'textComp'
156
156
  }, {
157
157
  id: 'radiosComp',
@@ -175,7 +175,7 @@ describe('utils.Component.elevateNestedComponents', function () {
175
175
  }]
176
176
  }
177
177
  }];
178
- var DATA = {
178
+ const DATA = {
179
179
  radiosComp: 'yes',
180
180
  testField: 'red'
181
181
  };
@@ -185,8 +185,8 @@ describe('utils.Component.elevateNestedComponents', function () {
185
185
  id: 'nestedTwo'
186
186
  }]));
187
187
  });
188
- it('should elevate nested components under an option which is shown with a show_When', function () {
189
- var COMPONENTS = [{
188
+ it('should elevate nested components under an option which is shown with a show_When', () => {
189
+ const COMPONENTS = [{
190
190
  id: 'textComp'
191
191
  }, {
192
192
  id: 'radiosComp',
@@ -215,7 +215,7 @@ describe('utils.Component.elevateNestedComponents', function () {
215
215
  }]
216
216
  }
217
217
  }];
218
- var DATA = {
218
+ const DATA = {
219
219
  radiosComp: 'yes',
220
220
  testField: 'red',
221
221
  testFieldTwo: 'purple'
@@ -226,8 +226,8 @@ describe('utils.Component.elevateNestedComponents', function () {
226
226
  id: 'nestedTwo'
227
227
  }]));
228
228
  });
229
- it('should not elevate nested components under an option which is hidden with a show_When', function () {
230
- var COMPONENTS = [{
229
+ it('should not elevate nested components under an option which is hidden with a show_When', () => {
230
+ const COMPONENTS = [{
231
231
  id: 'textComp'
232
232
  }, {
233
233
  id: 'radiosComp',
@@ -256,15 +256,15 @@ describe('utils.Component.elevateNestedComponents', function () {
256
256
  }]
257
257
  }
258
258
  }];
259
- var DATA = {
259
+ const DATA = {
260
260
  radiosComp: 'yes',
261
261
  testField: 'red',
262
262
  testFieldTwo: 'orange'
263
263
  };
264
264
  expect((0, _elevateNestedComponents.default)(COMPONENTS, DATA)).toEqual([].concat(COMPONENTS));
265
265
  });
266
- it('should return the original array with elevated nested components that are defined using refdata_match when they are visible', function () {
267
- var COMPONENTS = [{
266
+ it('should return the original array with elevated nested components that are defined using refdata_match when they are visible', () => {
267
+ const COMPONENTS = [{
268
268
  id: 'textComp'
269
269
  }, {
270
270
  id: 'checkboxComp',
@@ -289,7 +289,7 @@ describe('utils.Component.elevateNestedComponents', function () {
289
289
  }]
290
290
  }
291
291
  }];
292
- var DATA = {
292
+ const DATA = {
293
293
  checkboxComp: [{
294
294
  value: 'yes',
295
295
  id: 99
@@ -1,6 +1,5 @@
1
1
  "use strict";
2
2
 
3
- function _typeof(o) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (o) { return typeof o; } : function (o) { return o && "function" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? "symbol" : typeof o; }, _typeof(o); }
4
3
  Object.defineProperty(exports, "__esModule", {
5
4
  value: true
6
5
  });
@@ -13,16 +12,11 @@ var _cleanAttributes = _interopRequireDefault(require("./cleanAttributes"));
13
12
  var _isEditable = _interopRequireDefault(require("./isEditable"));
14
13
  var _FormComponent = _interopRequireDefault(require("../../components/FormComponent"));
15
14
  var _wrapInFormGroup = _interopRequireDefault(require("./wrapInFormGroup"));
16
- function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
17
- function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
18
- function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
19
- 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; }
20
- function _toPropertyKey(arg) { var key = _toPrimitive(arg, "string"); return _typeof(key) === "symbol" ? key : String(key); }
21
- 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); }
22
- function _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); } /* eslint-disable no-use-before-define */ // Global imports
15
+ function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
16
+ function _extends() { return _extends = Object.assign ? Object.assign.bind() : function (n) { for (var e = 1; e < arguments.length; e++) { var t = arguments[e]; for (var r in t) ({}).hasOwnProperty.call(t, r) && (n[r] = t[r]); } return n; }, _extends.apply(null, arguments); } /* eslint-disable no-use-before-define */ // Global imports
23
17
  // Local imports
24
- var LIST_CLASS = 'govuk-list';
25
- var BODY_CLASS = 'govuk-body';
18
+ const LIST_CLASS = 'govuk-list';
19
+ const BODY_CLASS = 'govuk-body';
26
20
 
27
21
  /**
28
22
  * Separate function for each component type for the sake of
@@ -31,155 +25,155 @@ var BODY_CLASS = 'govuk-body';
31
25
  * makes it much harder to follow what's going on.
32
26
  */
33
27
 
34
- var getAlert = function getAlert(config) {
35
- var attrs = (0, _cleanAttributes.default)(config);
36
- var heading = _copReactComponents.Utils.interpolateString(config.heading, config.formData);
37
- var children = _copReactComponents.Utils.interpolateString(config.text, config.formData);
28
+ const getAlert = config => {
29
+ const attrs = (0, _cleanAttributes.default)(config);
30
+ const heading = _copReactComponents.Utils.interpolateString(config.heading, config.formData);
31
+ const children = _copReactComponents.Utils.interpolateString(config.text, config.formData);
38
32
  return /*#__PURE__*/_react.default.createElement(_copReactComponents.Alert, _extends({}, attrs, {
39
33
  heading: heading
40
34
  }), children);
41
35
  };
42
- var getAutocomplete = function getAutocomplete(config) {
43
- var attrs = (0, _cleanAttributes.default)(config);
44
- var source = _Data.default.getAutocompleteSource(config);
36
+ const getAutocomplete = config => {
37
+ const attrs = (0, _cleanAttributes.default)(config);
38
+ const source = _Data.default.getAutocompleteSource(config);
45
39
  return /*#__PURE__*/_react.default.createElement(_copReactComponents.Autocomplete, _extends({}, attrs, {
46
40
  source: source
47
41
  }));
48
42
  };
49
- var getCheckboxes = function getCheckboxes(config) {
50
- var options = [];
51
- _Data.default.getOptions(config, function (val) {
43
+ const getCheckboxes = config => {
44
+ let options = [];
45
+ _Data.default.getOptions(config, val => {
52
46
  options = val;
53
47
  });
54
- options = options.map(function (paramOption) {
48
+ options = options.map(paramOption => {
55
49
  if (!Array.isArray(paramOption.nested)) {
56
50
  return paramOption;
57
51
  }
58
- return _objectSpread(_objectSpread({}, paramOption), {}, {
52
+ return {
53
+ ...paramOption,
59
54
  children: getChildrenJsx(config, paramOption.nested)
60
- });
55
+ };
61
56
  });
62
- var attrs = (0, _cleanAttributes.default)(config);
57
+ const attrs = (0, _cleanAttributes.default)(config);
63
58
  return /*#__PURE__*/_react.default.createElement(_copReactComponents.Checkboxes, _extends({}, attrs, {
64
59
  options: options
65
60
  }));
66
61
  };
67
- var getCalculation = function getCalculation(config) {
68
- var value = _Data.default.applyFormula(config);
62
+ const getCalculation = config => {
63
+ const value = _Data.default.applyFormula(config);
69
64
  if (typeof config.onChange === 'function') {
70
65
  if (value !== config.value) {
71
66
  config.onChange({
72
67
  target: {
73
68
  name: config.fieldId,
74
- value: value
69
+ value
75
70
  }
76
71
  });
77
72
  }
78
73
  }
79
- var attrs = (0, _cleanAttributes.default)(config, ['formula']);
74
+ const attrs = (0, _cleanAttributes.default)(config, ['formula']);
80
75
  return /*#__PURE__*/_react.default.createElement(_copReactComponents.TextInput, _extends({}, attrs, {
81
76
  readonly: true
82
77
  }));
83
78
  };
84
- var getDate = function getDate(config) {
85
- var attrs = (0, _cleanAttributes.default)(config);
79
+ const getDate = config => {
80
+ const attrs = (0, _cleanAttributes.default)(config);
86
81
  return /*#__PURE__*/_react.default.createElement(_copReactComponents.DateInput, attrs);
87
82
  };
88
- var getDetails = function getDetails(config) {
89
- var attrs = (0, _cleanAttributes.default)(config, ['tagName']);
90
- var html = getHTML(config);
83
+ const getDetails = config => {
84
+ const attrs = (0, _cleanAttributes.default)(config, ['tagName']);
85
+ const html = getHTML(config);
91
86
  return /*#__PURE__*/_react.default.createElement(_copReactComponents.Details, attrs, html);
92
87
  };
93
- var getFileUpload = function getFileUpload(config) {
94
- var attrs = (0, _cleanAttributes.default)(config);
88
+ const getFileUpload = config => {
89
+ const attrs = (0, _cleanAttributes.default)(config);
95
90
  return /*#__PURE__*/_react.default.createElement(_copReactComponents.FileUpload, attrs);
96
91
  };
97
- var getMultiFileUpload = function getMultiFileUpload(config) {
98
- var attrs = (0, _cleanAttributes.default)(config);
92
+ const getMultiFileUpload = config => {
93
+ const attrs = (0, _cleanAttributes.default)(config);
99
94
  return /*#__PURE__*/_react.default.createElement(_copReactComponents.MultiFileUpload, attrs);
100
95
  };
101
- var getHeading = function getHeading(config) {
102
- var attrs = (0, _cleanAttributes.default)(config);
96
+ const getHeading = config => {
97
+ const attrs = (0, _cleanAttributes.default)(config);
103
98
  return /*#__PURE__*/_react.default.createElement(_copReactComponents.Heading, attrs, config.content);
104
99
  };
105
- var getHTML = function getHTML(config) {
106
- var attrs = (0, _cleanAttributes.default)(config);
100
+ const getHTML = config => {
101
+ const attrs = (0, _cleanAttributes.default)(config);
107
102
  return /*#__PURE__*/_react.default.createElement(_copReactComponents.Markup, attrs);
108
103
  };
109
- var getInsetText = function getInsetText(config) {
110
- var attrs = (0, _cleanAttributes.default)(config);
104
+ const getInsetText = config => {
105
+ const attrs = (0, _cleanAttributes.default)(config);
111
106
  return /*#__PURE__*/_react.default.createElement(_copReactComponents.InsetText, attrs, config.content);
112
107
  };
113
- var getList = function getList(config) {
114
- var _attrs$items;
115
- var attrs = (0, _cleanAttributes.default)(config, ['ordered']);
116
- var tagName = config.ordered ? 'ol' : 'ul';
117
- var bullet = config.ordered ? 'number' : 'bullet';
118
- var classes = _copReactComponents.Utils.classBuilder(LIST_CLASS, bullet);
119
- var content = (_attrs$items = attrs.items) === null || _attrs$items === void 0 ? void 0 : _attrs$items.map(function (item) {
120
- return "<li>".concat(item, "</li>");
121
- }).join('');
122
- return getHTML(_objectSpread(_objectSpread({}, attrs), {}, {
108
+ const getList = config => {
109
+ const attrs = (0, _cleanAttributes.default)(config, ['ordered']);
110
+ const tagName = config.ordered ? 'ol' : 'ul';
111
+ const bullet = config.ordered ? 'number' : 'bullet';
112
+ const classes = _copReactComponents.Utils.classBuilder(LIST_CLASS, bullet);
113
+ const content = attrs.items?.map(item => `<li>${item}</li>`).join('');
114
+ return getHTML({
115
+ ...attrs,
123
116
  className: classes(),
124
- tagName: tagName,
125
- content: content,
117
+ tagName,
118
+ content,
126
119
  type: _models.ComponentTypes.HTML
127
- }));
120
+ });
128
121
  };
129
- var getParagraph = function getParagraph(config) {
130
- var attrs = (0, _cleanAttributes.default)(config);
131
- return getHTML(_objectSpread(_objectSpread({
132
- className: BODY_CLASS
133
- }, attrs), {}, {
122
+ const getParagraph = config => {
123
+ const attrs = (0, _cleanAttributes.default)(config);
124
+ return getHTML({
125
+ className: BODY_CLASS,
126
+ ...attrs,
134
127
  tagName: 'p',
135
128
  type: _models.ComponentTypes.HTML
136
- }));
129
+ });
137
130
  };
138
- var getRadios = function getRadios(config) {
139
- var options = [];
140
- _Data.default.getOptions(config, function (val) {
131
+ const getRadios = config => {
132
+ let options = [];
133
+ _Data.default.getOptions(config, val => {
141
134
  options = val;
142
135
  });
143
- options = options.map(function (paramOption) {
136
+ options = options.map(paramOption => {
144
137
  if (!Array.isArray(paramOption.nested)) {
145
138
  return paramOption;
146
139
  }
147
- return _objectSpread(_objectSpread({}, paramOption), {}, {
140
+ return {
141
+ ...paramOption,
148
142
  children: getChildrenJsx(config, paramOption.nested)
149
- });
143
+ };
150
144
  });
151
- var attrs = (0, _cleanAttributes.default)(config);
145
+ const attrs = (0, _cleanAttributes.default)(config);
152
146
  return /*#__PURE__*/_react.default.createElement(_copReactComponents.Radios, _extends({}, attrs, {
153
147
  options: options
154
148
  }));
155
149
  };
156
- var getTextArea = function getTextArea(config) {
157
- var attrs = (0, _cleanAttributes.default)(config);
150
+ const getTextArea = config => {
151
+ const attrs = (0, _cleanAttributes.default)(config);
158
152
  return /*#__PURE__*/_react.default.createElement(_copReactComponents.TextArea, attrs);
159
153
  };
160
- var getTextInput = function getTextInput(config) {
161
- var attrs = (0, _cleanAttributes.default)(config);
154
+ const getTextInput = config => {
155
+ const attrs = (0, _cleanAttributes.default)(config);
162
156
  return /*#__PURE__*/_react.default.createElement(_copReactComponents.TextInput, attrs);
163
157
  };
164
- var getTime = function getTime(config) {
165
- var attrs = (0, _cleanAttributes.default)(config);
158
+ const getTime = config => {
159
+ const attrs = (0, _cleanAttributes.default)(config);
166
160
  return /*#__PURE__*/_react.default.createElement(_copReactComponents.TimeInput, attrs);
167
161
  };
168
- var getSelect = function getSelect(config) {
169
- var options = [];
170
- _Data.default.getOptions(config, function (val) {
162
+ const getSelect = config => {
163
+ let options = [];
164
+ _Data.default.getOptions(config, val => {
171
165
  options = val;
172
166
  });
173
- var attrs = (0, _cleanAttributes.default)(config);
167
+ const attrs = (0, _cleanAttributes.default)(config);
174
168
  return /*#__PURE__*/_react.default.createElement(_copReactComponents.Select, _extends({}, attrs, {
175
169
  options: options
176
170
  }));
177
171
  };
178
- var getWarningText = function getWarningText(config) {
179
- var attrs = (0, _cleanAttributes.default)(config);
172
+ const getWarningText = config => {
173
+ const attrs = (0, _cleanAttributes.default)(config);
180
174
  return /*#__PURE__*/_react.default.createElement(_copReactComponents.WarningText, attrs, config.content);
181
175
  };
182
- var getComponentByType = function getComponentByType(config) {
176
+ const getComponentByType = config => {
183
177
  switch (config.type) {
184
178
  case _models.ComponentTypes.HTML:
185
179
  return getHTML(config);
@@ -233,10 +227,12 @@ var getComponentByType = function getComponentByType(config) {
233
227
  * @param {*} parent the parent configuration
234
228
  * @param {*} child the child configuration
235
229
  */
236
- var getChildJsx = function getChildJsx(parent, paramChild) {
237
- var child = _objectSpread({}, paramChild);
230
+ const getChildJsx = (parent, paramChild) => {
231
+ const child = {
232
+ ...paramChild
233
+ };
238
234
  if (parent.full_path) {
239
- var pathParts = parent.full_path.split('.');
235
+ const pathParts = parent.full_path.split('.');
240
236
  pathParts.pop();
241
237
  pathParts.push(child.fieldId);
242
238
  child.full_path = pathParts.join('.');
@@ -264,13 +260,10 @@ var getChildJsx = function getChildJsx(parent, paramChild) {
264
260
  * @param {*} parentConfig parent component which the childrenConfigs will be under
265
261
  * @param {*} childrenConfigs array of configurations for the child components
266
262
  */
267
- var getChildrenJsx = exports.getChildrenJsx = function getChildrenJsx(parentConfig, childrenConfigs) {
268
- return /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, childrenConfigs.map(function (config) {
269
- return /*#__PURE__*/_react.default.createElement(_react.default.Fragment, {
270
- key: config.id
271
- }, getChildJsx(parentConfig, config));
272
- }));
273
- };
263
+ const getChildrenJsx = (parentConfig, childrenConfigs) => /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, childrenConfigs.map(config => /*#__PURE__*/_react.default.createElement(_react.default.Fragment, {
264
+ key: config.id
265
+ }, getChildJsx(parentConfig, config))));
266
+ exports.getChildrenJsx = getChildrenJsx;
274
267
  /**
275
268
  * Get a renderable component, based on a configuration object.
276
269
  * @param {object} config The configuration object for the component.
@@ -278,16 +271,16 @@ var getChildrenJsx = exports.getChildrenJsx = function getChildrenJsx(parentConf
278
271
  * @param {Function} fnOverride An optional override function for component rendering.
279
272
  * @returns A renderable component.
280
273
  */
281
- var getComponent = function getComponent(config) {
282
- var wrap = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : true;
283
- var fnOverride = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : undefined;
274
+ const getComponent = function (config) {
275
+ let wrap = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : true;
276
+ let fnOverride = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : undefined;
284
277
  if (typeof fnOverride === 'function') {
285
- var overrideComponent = fnOverride(config, wrap);
278
+ const overrideComponent = fnOverride(config, wrap);
286
279
  if (overrideComponent) {
287
280
  return overrideComponent;
288
281
  }
289
282
  }
290
- var component = getComponentByType(config);
283
+ const component = getComponentByType(config);
291
284
  if (component && wrap && (0, _isEditable.default)(config)) {
292
285
  return (0, _wrapInFormGroup.default)(config, component);
293
286
  }
@@ -3,18 +3,18 @@
3
3
  var _react = require("@testing-library/react");
4
4
  var _models = require("../../../models");
5
5
  var _getComponent = _interopRequireDefault(require("../getComponent"));
6
- function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
6
+ function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
7
7
  // Global imports
8
8
 
9
9
  // Local imports
10
10
 
11
- describe('utils.Component.get', function () {
12
- it('should return an appropriately rendered autocomplete component', function () {
13
- var ID = 'test-id';
14
- var FIELD_ID = 'field-id';
15
- var LABEL = 'label';
16
- var OPTIONS = [];
17
- var COMPONENT = {
11
+ describe('utils.Component.get', () => {
12
+ it('should return an appropriately rendered autocomplete component', () => {
13
+ const ID = 'test-id';
14
+ const FIELD_ID = 'field-id';
15
+ const LABEL = 'label';
16
+ const OPTIONS = [];
17
+ const COMPONENT = {
18
18
  type: _models.ComponentTypes.AUTOCOMPLETE,
19
19
  id: ID,
20
20
  fieldId: FIELD_ID,
@@ -24,26 +24,27 @@ describe('utils.Component.get', function () {
24
24
  },
25
25
  'data-testid': ID
26
26
  };
27
- var _render = (0, _react.render)((0, _getComponent.default)(COMPONENT)),
28
- container = _render.container;
29
- var formGroup = (0, _react.getByTestId)(container, ID);
27
+ const {
28
+ container
29
+ } = (0, _react.render)((0, _getComponent.default)(COMPONENT));
30
+ const formGroup = (0, _react.getByTestId)(container, ID);
30
31
  expect(formGroup.tagName).toEqual('DIV');
31
32
  expect(formGroup.classList).toContain('govuk-form-group');
32
- var label;
33
- var autocompleteWrapper;
34
- var autocomplete;
35
- var autocompleteInput;
36
- formGroup.childNodes.forEach(function (node) {
33
+ let label;
34
+ let autocompleteWrapper;
35
+ let autocomplete;
36
+ let autocompleteInput;
37
+ formGroup.childNodes.forEach(node => {
37
38
  // Check if it's an element.
38
39
  if (node instanceof Element) {
39
40
  if (node.tagName === 'LABEL') {
40
41
  label = node;
41
42
  } else if (node.classList.contains('hods-autocomplete__outer-wrapper')) {
42
43
  autocompleteWrapper = node;
43
- var autocompleteInner = node.childNodes[0];
44
+ const autocompleteInner = node.childNodes[0];
44
45
  if (autocompleteInner instanceof Element) {
45
46
  autocomplete = autocompleteInner;
46
- autocomplete.childNodes.forEach(function (grandchild) {
47
+ autocomplete.childNodes.forEach(grandchild => {
47
48
  if (grandchild instanceof Element) {
48
49
  if (grandchild.tagName === 'INPUT') {
49
50
  autocompleteInput = grandchild;