@ukhomeoffice/cop-react-form-renderer 6.7.0-alpha → 6.11.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 (372) hide show
  1. package/dist/components/CheckYourAnswers/Answer.js +22 -16
  2. package/dist/components/CheckYourAnswers/Answer.test.js +180 -92
  3. package/dist/components/CheckYourAnswers/CheckYourAnswers.js +137 -103
  4. package/dist/components/CheckYourAnswers/CheckYourAnswers.test.js +861 -463
  5. package/dist/components/CollectionPage/CollectionPage.js +63 -73
  6. package/dist/components/CollectionPage/CollectionPage.test.js +366 -316
  7. package/dist/components/CollectionSummary/BannerStrip.js +13 -13
  8. package/dist/components/CollectionSummary/BannerStrip.test.js +76 -80
  9. package/dist/components/CollectionSummary/CollectionSummary.js +126 -99
  10. package/dist/components/CollectionSummary/CollectionSummary.test.js +188 -152
  11. package/dist/components/CollectionSummary/Confirmation.js +12 -14
  12. package/dist/components/CollectionSummary/Confirmation.test.js +63 -68
  13. package/dist/components/CollectionSummary/RenderListView.js +52 -46
  14. package/dist/components/CollectionSummary/RenderListView.scss +1 -1
  15. package/dist/components/CollectionSummary/RenderListView.test.js +77 -78
  16. package/dist/components/CollectionSummary/SummaryCard.js +152 -110
  17. package/dist/components/CollectionSummary/SummaryCard.test.js +1018 -929
  18. package/dist/components/CollectionSummary/SummaryCardDetails.js +137 -94
  19. package/dist/components/CollectionSummary/SummaryCardDetails.scss +13 -4
  20. package/dist/components/CollectionSummary/SummaryCardDetails.test.js +331 -128
  21. package/dist/components/CollectionSummary/SummaryCardValidationContext.js +35 -30
  22. package/dist/components/CollectionSummary/SummaryCardValidationContext.test.js +74 -62
  23. package/dist/components/FormComponent/Collection.js +108 -74
  24. package/dist/components/FormComponent/Collection.test.js +1081 -909
  25. package/dist/components/FormComponent/Container.js +39 -40
  26. package/dist/components/FormComponent/Container.test.js +412 -312
  27. package/dist/components/FormComponent/FormComponent.js +72 -69
  28. package/dist/components/FormComponent/FormComponent.test.js +414 -353
  29. package/dist/components/FormComponent/helpers/addLabel.js +7 -4
  30. package/dist/components/FormComponent/helpers/getComponentDisabled.js +1 -1
  31. package/dist/components/FormComponent/helpers/getComponentDisabled.test.js +7 -7
  32. package/dist/components/FormComponent/helpers/getComponentError.js +5 -3
  33. package/dist/components/FormComponent/helpers/getComponentError.test.js +14 -14
  34. package/dist/components/FormComponent/helpers/getComponentFieldSet.js +4 -3
  35. package/dist/components/FormComponent/helpers/getComponentFieldSet.test.js +6 -6
  36. package/dist/components/FormComponent/helpers/index.js +4 -4
  37. package/dist/components/FormPage/FormPage.js +80 -65
  38. package/dist/components/FormPage/FormPage.test.js +163 -127
  39. package/dist/components/FormRenderer/FormRenderer.js +180 -143
  40. package/dist/components/FormRenderer/FormRenderer.test.js +1115 -730
  41. package/dist/components/FormRenderer/handlers/cyaAction.js +2 -2
  42. package/dist/components/FormRenderer/handlers/getPageId.js +3 -1
  43. package/dist/components/FormRenderer/handlers/getPageId.test.js +14 -14
  44. package/dist/components/FormRenderer/handlers/handlers.test.js +32 -32
  45. package/dist/components/FormRenderer/handlers/index.js +1 -1
  46. package/dist/components/FormRenderer/handlers/navigate.js +3 -3
  47. package/dist/components/FormRenderer/handlers/submissionError.js +1 -1
  48. package/dist/components/FormRenderer/helpers/canActionProceed.js +1 -1
  49. package/dist/components/FormRenderer/helpers/canActionProceed.test.js +15 -15
  50. package/dist/components/FormRenderer/helpers/canCYASubmit.js +3 -1
  51. package/dist/components/FormRenderer/helpers/canCYASubmit.test.js +20 -16
  52. package/dist/components/FormRenderer/helpers/cleanHiddenNestedData.js +22 -17
  53. package/dist/components/FormRenderer/helpers/cleanHiddenNestedData.test.js +16 -16
  54. package/dist/components/FormRenderer/helpers/getCYA.js +5 -3
  55. package/dist/components/FormRenderer/helpers/getCYA.test.js +11 -11
  56. package/dist/components/FormRenderer/helpers/getFormState.js +7 -5
  57. package/dist/components/FormRenderer/helpers/getFormState.test.js +10 -10
  58. package/dist/components/FormRenderer/helpers/getNextPageId.js +24 -13
  59. package/dist/components/FormRenderer/helpers/getNextPageId.test.js +67 -67
  60. package/dist/components/FormRenderer/helpers/getPage.js +4 -2
  61. package/dist/components/FormRenderer/helpers/getPage.test.js +11 -11
  62. package/dist/components/FormRenderer/helpers/getRelevantPages.js +9 -7
  63. package/dist/components/FormRenderer/helpers/getRelevantPages.test.js +14 -14
  64. package/dist/components/FormRenderer/helpers/getSubmissionStatus.js +5 -5
  65. package/dist/components/FormRenderer/helpers/getSubmissionStatus.test.js +97 -103
  66. package/dist/components/FormRenderer/helpers/getUpdatedSectionStates.js +60 -62
  67. package/dist/components/FormRenderer/helpers/getUpdatedSectionStates.test.js +78 -71
  68. package/dist/components/FormRenderer/helpers/index.js +1 -1
  69. package/dist/components/FormRenderer/onCYAAction.js +51 -59
  70. package/dist/components/FormRenderer/onCYAAction.test.js +152 -164
  71. package/dist/components/FormRenderer/onPageAction.js +39 -43
  72. package/dist/components/FormRenderer/onPageAction.test.js +208 -223
  73. package/dist/components/FormRenderer/onTaskAction.js +13 -9
  74. package/dist/components/FormRenderer/onTaskAction.test.js +88 -93
  75. package/dist/components/PageActions/ActionButton.js +15 -12
  76. package/dist/components/PageActions/ActionButton.test.js +78 -56
  77. package/dist/components/PageActions/PageActions.js +10 -10
  78. package/dist/components/PageActions/PageActions.test.js +115 -86
  79. package/dist/components/SummaryList/GroupAction.js +17 -9
  80. package/dist/components/SummaryList/GroupAction.test.js +33 -37
  81. package/dist/components/SummaryList/RowAction.js +16 -11
  82. package/dist/components/SummaryList/RowAction.test.js +33 -37
  83. package/dist/components/SummaryList/SummaryList.js +34 -21
  84. package/dist/components/SummaryList/SummaryList.scss +15 -0
  85. package/dist/components/SummaryList/SummaryList.test.js +226 -143
  86. package/dist/components/SummaryList/SummaryListHeadingRow.js +4 -6
  87. package/dist/components/SummaryList/SummaryListHeadingRowWithAction.js +53 -0
  88. package/dist/components/SummaryList/SummaryListHeadingRowWithAction.scss +38 -0
  89. package/dist/components/SummaryList/SummaryListRow.js +4 -6
  90. package/dist/components/SummaryList/SummaryListTitleRow.js +3 -5
  91. package/dist/components/SummaryList/helpers/getGroupActionAttributes.js +5 -3
  92. package/dist/components/SummaryList/helpers/getGroupActionAttributes.test.js +22 -22
  93. package/dist/components/SummaryList/helpers/getRowActionAttributes.js +5 -3
  94. package/dist/components/SummaryList/helpers/getRowActionAttributes.test.js +22 -22
  95. package/dist/components/SummaryList/helpers/index.js +1 -1
  96. package/dist/components/TaskList/Task.js +29 -19
  97. package/dist/components/TaskList/Task.test.js +76 -83
  98. package/dist/components/TaskList/TaskList.js +92 -49
  99. package/dist/components/TaskList/TaskList.scss +24 -0
  100. package/dist/components/TaskList/TaskList.test.js +255 -113
  101. package/dist/components/TaskList/TaskState.js +5 -7
  102. package/dist/components/TaskList/TaskState.test.js +45 -52
  103. package/dist/components/index.js +7 -7
  104. package/dist/context/HooksContext/HooksContext.js +80 -57
  105. package/dist/context/HooksContext/HooksContext.test.js +35 -26
  106. package/dist/context/HooksContext/index.js +4 -3
  107. package/dist/context/ValidationContext/ValidationContext.js +94 -43
  108. package/dist/context/ValidationContext/ValidationContext.test.js +68 -56
  109. package/dist/context/ValidationContext/index.js +4 -3
  110. package/dist/context/index.js +2 -2
  111. package/dist/hooks/index.js +10 -9
  112. package/dist/hooks/useAxios.js +40 -14
  113. package/dist/hooks/useGetRequest.js +97 -61
  114. package/dist/hooks/useHooks.js +3 -1
  115. package/dist/hooks/useRefData.js +39 -26
  116. package/dist/hooks/useValidation.js +3 -1
  117. package/dist/index.js +14 -13
  118. package/dist/models/CollectionLabels.js +1 -1
  119. package/dist/models/ComponentTypes.js +25 -25
  120. package/dist/models/EventTypes.js +4 -4
  121. package/dist/models/FormPages.js +4 -4
  122. package/dist/models/FormTypes.js +8 -8
  123. package/dist/models/HubFormats.js +3 -3
  124. package/dist/models/PageAction.js +38 -44
  125. package/dist/models/TaskStates.js +28 -29
  126. package/dist/models/index.js +9 -9
  127. package/dist/setupTests.js +31 -30
  128. package/dist/utils/CheckYourAnswers/getCYAAction.js +5 -5
  129. package/dist/utils/CheckYourAnswers/getCYAAction.test.js +54 -52
  130. package/dist/utils/CheckYourAnswers/getCYACollectionChangeAction.js +25 -15
  131. package/dist/utils/CheckYourAnswers/getCYACollectionChangeAction.test.js +35 -33
  132. package/dist/utils/CheckYourAnswers/getCYACollectionDeleteAction.js +31 -17
  133. package/dist/utils/CheckYourAnswers/getCYACollectionDeleteAction.test.js +44 -42
  134. package/dist/utils/CheckYourAnswers/getCYARow.js +6 -6
  135. package/dist/utils/CheckYourAnswers/getCYARow.test.js +86 -86
  136. package/dist/utils/CheckYourAnswers/getCYARowForGroup.js +24 -18
  137. package/dist/utils/CheckYourAnswers/getCYARowForGroup.test.js +16 -15
  138. package/dist/utils/CheckYourAnswers/getCYARowsForCollection.js +36 -33
  139. package/dist/utils/CheckYourAnswers/getCYARowsForCollection.test.js +61 -58
  140. package/dist/utils/CheckYourAnswers/getCYARowsForCollectionPage.js +108 -87
  141. package/dist/utils/CheckYourAnswers/getCYARowsForCollectionPage.test.js +281 -162
  142. package/dist/utils/CheckYourAnswers/getCYARowsForContainer.js +20 -25
  143. package/dist/utils/CheckYourAnswers/getCYARowsForContainer.test.js +97 -103
  144. package/dist/utils/CheckYourAnswers/getCYARowsForPage.js +18 -13
  145. package/dist/utils/CheckYourAnswers/getCYARowsForPage.test.js +76 -70
  146. package/dist/utils/CheckYourAnswers/getSummaryListRowForDetails.js +42 -0
  147. package/dist/utils/CheckYourAnswers/getSummaryListRowForDetails.test.js +56 -0
  148. package/dist/utils/CheckYourAnswers/index.js +1 -1
  149. package/dist/utils/CheckYourAnswers/showComponentCYA.js +4 -4
  150. package/dist/utils/CheckYourAnswers/showComponentCYA.test.js +25 -25
  151. package/dist/utils/CollectionPage/addCollectionPageEntry.js +2 -2
  152. package/dist/utils/CollectionPage/addCollectionPageEntry.test.js +5 -5
  153. package/dist/utils/CollectionPage/duplicateCollectionPageActiveEntry.js +2 -2
  154. package/dist/utils/CollectionPage/duplicateCollectionPageActiveEntry.test.js +18 -17
  155. package/dist/utils/CollectionPage/duplicateCollectionPageEntry.js +22 -12
  156. package/dist/utils/CollectionPage/duplicateCollectionPageEntry.test.js +38 -47
  157. package/dist/utils/CollectionPage/getCollectionPageActiveId.js +2 -2
  158. package/dist/utils/CollectionPage/getCollectionPageActiveId.test.js +10 -10
  159. package/dist/utils/CollectionPage/getCollectionPageActiveIndex.js +11 -7
  160. package/dist/utils/CollectionPage/getCollectionPageActiveIndex.test.js +22 -22
  161. package/dist/utils/CollectionPage/getCollectionPageData.js +12 -8
  162. package/dist/utils/CollectionPage/getCollectionPageData.test.js +19 -19
  163. package/dist/utils/CollectionPage/getErrorsForCollection.js +24 -24
  164. package/dist/utils/CollectionPage/getErrorsForCollection.test.js +22 -20
  165. package/dist/utils/CollectionPage/getQuickEditPage.js +31 -35
  166. package/dist/utils/CollectionPage/getQuickEditPage.test.js +27 -15
  167. package/dist/utils/CollectionPage/index.js +1 -1
  168. package/dist/utils/CollectionPage/mergeCollectionPages.js +43 -31
  169. package/dist/utils/CollectionPage/mergeCollectionPages.test.js +26 -26
  170. package/dist/utils/CollectionPage/removeCollectionPageEntry.js +6 -4
  171. package/dist/utils/CollectionPage/removeCollectionPageEntry.test.js +10 -10
  172. package/dist/utils/CollectionPage/setCollectionPageData.js +16 -10
  173. package/dist/utils/CollectionPage/setCollectionPageData.test.js +24 -24
  174. package/dist/utils/Component/addShowWhen.js +8 -4
  175. package/dist/utils/Component/addShowWhen.test.js +37 -37
  176. package/dist/utils/Component/applyToComponentTree.js +18 -18
  177. package/dist/utils/Component/applyToComponentTree.test.js +32 -27
  178. package/dist/utils/Component/cleanAttributes.js +13 -10
  179. package/dist/utils/Component/cleanAttributes.test.js +18 -17
  180. package/dist/utils/Component/elevateNestedComponents.js +7 -6
  181. package/dist/utils/Component/elevateNestedComponents.test.js +68 -30
  182. package/dist/utils/Component/getComponent.js +94 -88
  183. package/dist/utils/Component/getComponentTests/getComponent.autocomplete.test.js +17 -18
  184. package/dist/utils/Component/getComponentTests/getComponent.calculation.test.js +59 -46
  185. package/dist/utils/Component/getComponentTests/getComponent.checkboxes.test.js +48 -39
  186. package/dist/utils/Component/getComponentTests/getComponent.date.test.js +33 -23
  187. package/dist/utils/Component/getComponentTests/getComponent.details.test.js +18 -20
  188. package/dist/utils/Component/getComponentTests/getComponent.email.test.js +22 -17
  189. package/dist/utils/Component/getComponentTests/getComponent.file.test.js +25 -20
  190. package/dist/utils/Component/getComponentTests/getComponent.heading.test.js +9 -10
  191. package/dist/utils/Component/getComponentTests/getComponent.html.test.js +15 -17
  192. package/dist/utils/Component/getComponentTests/getComponent.insetText.test.js +8 -9
  193. package/dist/utils/Component/getComponentTests/getComponent.list.test.js +15 -17
  194. package/dist/utils/Component/getComponentTests/getComponent.multifile.test.js +26 -22
  195. package/dist/utils/Component/getComponentTests/getComponent.nested.test.js +175 -155
  196. package/dist/utils/Component/getComponentTests/getComponent.paragraph.test.js +15 -17
  197. package/dist/utils/Component/getComponentTests/getComponent.phoneNumber.test.js +22 -17
  198. package/dist/utils/Component/getComponentTests/getComponent.radios.test.js +72 -57
  199. package/dist/utils/Component/getComponentTests/getComponent.select.test.js +22 -17
  200. package/dist/utils/Component/getComponentTests/getComponent.text.test.js +22 -17
  201. package/dist/utils/Component/getComponentTests/getComponent.textArea.test.js +38 -31
  202. package/dist/utils/Component/getComponentTests/getComponent.time.test.js +29 -20
  203. package/dist/utils/Component/getComponentTests/getComponent.unknown.test.js +2 -2
  204. package/dist/utils/Component/getComponentTests/getComponent.warningText.test.js +8 -9
  205. package/dist/utils/Component/getDefaultValue.js +8 -6
  206. package/dist/utils/Component/getDefaultValue.test.js +12 -12
  207. package/dist/utils/Component/getDefaultValueFromConfig.js +21 -22
  208. package/dist/utils/Component/getDefaultValueFromConfig.test.js +31 -31
  209. package/dist/utils/Component/index.js +1 -1
  210. package/dist/utils/Component/isEditable.js +4 -2
  211. package/dist/utils/Component/isEditable.test.js +15 -14
  212. package/dist/utils/Component/optionIsSelected.js +6 -1
  213. package/dist/utils/Component/optionIsSelected.test.js +35 -9
  214. package/dist/utils/Component/setupContainerComponentsPath.js +29 -27
  215. package/dist/utils/Component/setupContainerComponentsPath.test.js +11 -11
  216. package/dist/utils/Component/showComponent.js +1 -1
  217. package/dist/utils/Component/showComponent.test.js +28 -28
  218. package/dist/utils/Component/wrapInFormGroup.js +2 -2
  219. package/dist/utils/Condition/index.js +1 -1
  220. package/dist/utils/Condition/meetsAllConditions.js +8 -8
  221. package/dist/utils/Condition/meetsAllConditions.test.js +20 -20
  222. package/dist/utils/Condition/meetsCondition.js +25 -16
  223. package/dist/utils/Condition/meetsCondition.test.js +402 -402
  224. package/dist/utils/Condition/meetsOneCondition.js +5 -5
  225. package/dist/utils/Condition/meetsOneCondition.test.js +16 -16
  226. package/dist/utils/Condition/setupConditions.js +18 -13
  227. package/dist/utils/Condition/setupConditions.test.js +7 -7
  228. package/dist/utils/Container/getEditableComponents.js +5 -3
  229. package/dist/utils/Container/getEditableComponents.test.js +45 -43
  230. package/dist/utils/Container/index.js +1 -1
  231. package/dist/utils/Container/setupNesting.js +20 -16
  232. package/dist/utils/Container/setupNesting.test.js +30 -27
  233. package/dist/utils/Container/showContainer.js +7 -3
  234. package/dist/utils/Container/showContainer.test.js +30 -30
  235. package/dist/utils/Data/applyFormula.js +48 -38
  236. package/dist/utils/Data/applyFormula.test.js +20 -20
  237. package/dist/utils/Data/getAutocompleteSource.js +26 -18
  238. package/dist/utils/Data/getAutocompleteSource.test.js +86 -80
  239. package/dist/utils/Data/getDataPath.js +28 -18
  240. package/dist/utils/Data/getDataPath.test.js +12 -12
  241. package/dist/utils/Data/getOptions.js +30 -24
  242. package/dist/utils/Data/getOptions.test.js +27 -27
  243. package/dist/utils/Data/getSourceData.js +19 -6
  244. package/dist/utils/Data/getSourceData.test.js +80 -84
  245. package/dist/utils/Data/index.js +1 -1
  246. package/dist/utils/Data/nestInRefdataOptions.js +16 -9
  247. package/dist/utils/Data/nestInRefdataOptions.test.js +16 -16
  248. package/dist/utils/Data/refDataToOptions.js +13 -10
  249. package/dist/utils/Data/refDataToOptions.test.js +19 -19
  250. package/dist/utils/Data/setDataItem.js +8 -7
  251. package/dist/utils/Data/setDataItem.test.js +37 -37
  252. package/dist/utils/Data/setupFormData.js +21 -13
  253. package/dist/utils/Data/setupFormData.test.js +50 -51
  254. package/dist/utils/Data/setupRefDataUrlForComponent.js +26 -20
  255. package/dist/utils/Data/setupRefDataUrlForComponent.test.js +24 -24
  256. package/dist/utils/FormPage/applyConditionalProperties.js +9 -5
  257. package/dist/utils/FormPage/applyConditionalProperties.test.js +18 -15
  258. package/dist/utils/FormPage/getConditionalText.js +3 -3
  259. package/dist/utils/FormPage/getConditionalText.test.js +29 -29
  260. package/dist/utils/FormPage/getFormPage.js +16 -15
  261. package/dist/utils/FormPage/getFormPage.test.js +46 -47
  262. package/dist/utils/FormPage/getFormPages.js +12 -7
  263. package/dist/utils/FormPage/getFormPages.test.js +23 -20
  264. package/dist/utils/FormPage/getPageActions.js +15 -9
  265. package/dist/utils/FormPage/getPageActions.test.js +32 -32
  266. package/dist/utils/FormPage/getParagraphFromText.js +7 -5
  267. package/dist/utils/FormPage/getParagraphFromText.test.js +6 -6
  268. package/dist/utils/FormPage/index.js +4 -2
  269. package/dist/utils/FormPage/showFormPage.js +7 -3
  270. package/dist/utils/FormPage/showFormPage.test.js +32 -32
  271. package/dist/utils/FormPage/showFormPageCYA.js +1 -1
  272. package/dist/utils/FormPage/showFormPageCYA.test.js +8 -8
  273. package/dist/utils/FormPage/useComponent.js +28 -21
  274. package/dist/utils/FormPage/useComponent.test.js +79 -77
  275. package/dist/utils/Format/formatData.js +1 -1
  276. package/dist/utils/Format/formatData.test.js +18 -18
  277. package/dist/utils/Format/formatDataForComponent.js +6 -5
  278. package/dist/utils/Format/formatDataForComponent.test.js +78 -50
  279. package/dist/utils/Format/formatDataForForm.js +8 -6
  280. package/dist/utils/Format/formatDataForForm.test.js +16 -13
  281. package/dist/utils/Format/formatDataForPage.js +5 -4
  282. package/dist/utils/Format/formatDataForPage.test.js +25 -20
  283. package/dist/utils/Format/index.js +1 -1
  284. package/dist/utils/Hub/getFormHub.js +1 -1
  285. package/dist/utils/Hub/getFormHub.test.js +31 -28
  286. package/dist/utils/Hub/index.js +1 -1
  287. package/dist/utils/Meta/constants.js +2 -2
  288. package/dist/utils/Meta/documents/getDocuments.js +1 -1
  289. package/dist/utils/Meta/documents/getDocuments.test.js +16 -24
  290. package/dist/utils/Meta/documents/index.js +1 -1
  291. package/dist/utils/Meta/documents/setDocumentsForField.js +16 -14
  292. package/dist/utils/Meta/documents/setDocumentsForField.test.js +34 -68
  293. package/dist/utils/Meta/index.js +1 -1
  294. package/dist/utils/Operate/checkValueIsTruthy.js +2 -2
  295. package/dist/utils/Operate/checkValueIsTruthy.test.js +16 -16
  296. package/dist/utils/Operate/getFirstOf.js +5 -5
  297. package/dist/utils/Operate/getFirstOf.test.js +31 -31
  298. package/dist/utils/Operate/getIndexOfMatchingValueIn.js +10 -10
  299. package/dist/utils/Operate/getIndexOfMatchingValueIn.test.js +52 -46
  300. package/dist/utils/Operate/getLength.js +50 -0
  301. package/dist/utils/Operate/getLength.test.js +89 -0
  302. package/dist/utils/Operate/index.js +1 -1
  303. package/dist/utils/Operate/persistValueInFormData.js +3 -3
  304. package/dist/utils/Operate/persistValueInFormData.test.js +20 -22
  305. package/dist/utils/Operate/runPageOperations.js +9 -7
  306. package/dist/utils/Operate/runPageOperations.test.js +36 -35
  307. package/dist/utils/Operate/setValueInFormData.js +2 -2
  308. package/dist/utils/Operate/setValueInFormData.test.js +16 -16
  309. package/dist/utils/Operate/shouldRun.js +6 -6
  310. package/dist/utils/Operate/shouldRun.test.js +27 -21
  311. package/dist/utils/Validate/additional/conditionallyRequired.js +4 -4
  312. package/dist/utils/Validate/additional/conditionallyRequired.test.js +18 -18
  313. package/dist/utils/Validate/additional/index.js +6 -6
  314. package/dist/utils/Validate/additional/index.test.js +12 -12
  315. package/dist/utils/Validate/additional/mustBeAfter.js +2 -2
  316. package/dist/utils/Validate/additional/mustBeAfter.test.js +40 -40
  317. package/dist/utils/Validate/additional/mustBeBefore.js +2 -2
  318. package/dist/utils/Validate/additional/mustBeBefore.test.js +28 -28
  319. package/dist/utils/Validate/additional/mustBeEarlierDateTime.js +11 -7
  320. package/dist/utils/Validate/additional/mustBeEarlierDateTime.test.js +41 -37
  321. package/dist/utils/Validate/additional/mustBeGreaterThan.js +2 -2
  322. package/dist/utils/Validate/additional/mustBeGreaterThan.test.js +18 -18
  323. package/dist/utils/Validate/additional/mustBeInTheFuture.js +2 -2
  324. package/dist/utils/Validate/additional/mustBeInTheFuture.test.js +12 -12
  325. package/dist/utils/Validate/additional/mustBeInThePast.js +3 -3
  326. package/dist/utils/Validate/additional/mustBeInThePast.test.js +12 -12
  327. package/dist/utils/Validate/additional/mustBeLessThan.js +2 -2
  328. package/dist/utils/Validate/additional/mustBeLessThan.test.js +17 -17
  329. package/dist/utils/Validate/additional/mustBeLongerThan.js +1 -1
  330. package/dist/utils/Validate/additional/mustBeLongerThan.test.js +16 -16
  331. package/dist/utils/Validate/additional/mustBeNumbersOnly.js +2 -2
  332. package/dist/utils/Validate/additional/mustBeNumbersOnly.test.js +20 -20
  333. package/dist/utils/Validate/additional/mustBeShorterThan.js +1 -1
  334. package/dist/utils/Validate/additional/mustBeShorterThan.test.js +16 -16
  335. package/dist/utils/Validate/additional/mustBeUniqueInCollection.js +4 -4
  336. package/dist/utils/Validate/additional/mustBeUniqueInCollection.test.js +39 -35
  337. package/dist/utils/Validate/additional/mustEnterAtLeastOne.js +2 -2
  338. package/dist/utils/Validate/additional/mustEnterAtLeastOne.test.js +16 -14
  339. package/dist/utils/Validate/additional/mustHaveLessThanDecimalPlaces.js +1 -1
  340. package/dist/utils/Validate/additional/mustHaveLessThanDecimalPlaces.test.js +12 -12
  341. package/dist/utils/Validate/additional/mustNotContainSql.js +4 -3
  342. package/dist/utils/Validate/additional/mustNotContainSql.test.js +14 -14
  343. package/dist/utils/Validate/additional/mustSelectOnlyOne.js +2 -2
  344. package/dist/utils/Validate/additional/mustSelectOnlyOne.test.js +26 -28
  345. package/dist/utils/Validate/additional/utils.js +22 -9
  346. package/dist/utils/Validate/index.js +1 -1
  347. package/dist/utils/Validate/validateCollection.js +25 -19
  348. package/dist/utils/Validate/validateCollection.test.js +66 -74
  349. package/dist/utils/Validate/validateComponent.js +21 -18
  350. package/dist/utils/Validate/validateComponent.test.js +176 -166
  351. package/dist/utils/Validate/validateContainer.js +20 -15
  352. package/dist/utils/Validate/validateContainer.test.js +52 -58
  353. package/dist/utils/Validate/validateDate.js +21 -15
  354. package/dist/utils/Validate/validateDate.test.js +32 -31
  355. package/dist/utils/Validate/validateEmail.js +8 -6
  356. package/dist/utils/Validate/validateEmail.test.js +25 -25
  357. package/dist/utils/Validate/validateMultifile.js +7 -5
  358. package/dist/utils/Validate/validateMultifile.test.js +18 -17
  359. package/dist/utils/Validate/validatePage.js +22 -19
  360. package/dist/utils/Validate/validatePage.test.js +203 -215
  361. package/dist/utils/Validate/validateRegex.js +5 -3
  362. package/dist/utils/Validate/validateRegex.test.js +14 -14
  363. package/dist/utils/Validate/validateRequired.js +6 -4
  364. package/dist/utils/Validate/validateRequired.test.js +18 -18
  365. package/dist/utils/Validate/validateTextArea.js +6 -4
  366. package/dist/utils/Validate/validateTextArea.test.js +20 -20
  367. package/dist/utils/Validate/validateTime.js +26 -11
  368. package/dist/utils/Validate/validateTime.test.js +62 -16
  369. package/dist/utils/index.js +9 -7
  370. package/package.json +2 -2
  371. package/dist/utils/CheckYourAnswers/getComponentRowForCYA.js +0 -37
  372. package/dist/utils/CheckYourAnswers/getComponentRowForCYA.test.js +0 -41
@@ -4,50 +4,50 @@ var _addShowWhen = _interopRequireDefault(require("./addShowWhen"));
4
4
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
5
5
  // Local imports
6
6
 
7
- describe('utils.Component.addShowWhen', () => {
8
- const NEW_SHOW_WHEN = {
7
+ describe('utils.Component.addShowWhen', function () {
8
+ var NEW_SHOW_WHEN = {
9
9
  field: 'field',
10
10
  op: '=',
11
11
  value: 'value'
12
12
  };
13
- it('should return null when component is undefined', () => {
14
- const result = (0, _addShowWhen.default)(undefined, {});
13
+ it('should return null when component is undefined', function () {
14
+ var result = (0, _addShowWhen.default)(undefined, {});
15
15
  expect(result).toEqual(null);
16
16
  });
17
- it('should return null when component is null', () => {
18
- const result = (0, _addShowWhen.default)(null, {});
17
+ it('should return null when component is null', function () {
18
+ var result = (0, _addShowWhen.default)(null, {});
19
19
  expect(result).toEqual(null);
20
20
  });
21
- it('should return component when condition is undefined', () => {
22
- const COMPONENT = {
21
+ it('should return component when condition is undefined', function () {
22
+ var COMPONENT = {
23
23
  alpha: 'bravo'
24
24
  };
25
- const result = (0, _addShowWhen.default)(COMPONENT, undefined);
25
+ var result = (0, _addShowWhen.default)(COMPONENT, undefined);
26
26
  expect(result).toEqual({
27
27
  alpha: 'bravo'
28
28
  });
29
29
  });
30
- it('should return component when condition is null', () => {
31
- const COMPONENT = {
30
+ it('should return component when condition is null', function () {
31
+ var COMPONENT = {
32
32
  alpha: 'bravo'
33
33
  };
34
- const result = (0, _addShowWhen.default)(COMPONENT, null);
34
+ var result = (0, _addShowWhen.default)(COMPONENT, null);
35
35
  expect(result).toEqual({
36
36
  alpha: 'bravo'
37
37
  });
38
38
  });
39
- it('should add the show_when to a component with no existing show_whens', () => {
40
- const COMPONENT = {
39
+ it('should add the show_when to a component with no existing show_whens', function () {
40
+ var COMPONENT = {
41
41
  alpha: 'bravo'
42
42
  };
43
- const result = (0, _addShowWhen.default)(COMPONENT, NEW_SHOW_WHEN);
43
+ var result = (0, _addShowWhen.default)(COMPONENT, NEW_SHOW_WHEN);
44
44
  expect(result).toEqual({
45
45
  alpha: 'bravo',
46
46
  show_when: NEW_SHOW_WHEN
47
47
  });
48
48
  });
49
- it('should add the array type show_when to a component with no existing show_whens', () => {
50
- const NEW_ARRAY_SHOW_WHEN = [{
49
+ it('should add the array type show_when to a component with no existing show_whens', function () {
50
+ var NEW_ARRAY_SHOW_WHEN = [{
51
51
  field: 'abc',
52
52
  op: '=',
53
53
  value: 'bcd'
@@ -56,17 +56,17 @@ describe('utils.Component.addShowWhen', () => {
56
56
  op: '=',
57
57
  value: 'efg'
58
58
  }];
59
- const COMPONENT = {
59
+ var COMPONENT = {
60
60
  alpha: 'bravo'
61
61
  };
62
- const result = (0, _addShowWhen.default)(COMPONENT, NEW_ARRAY_SHOW_WHEN);
62
+ var result = (0, _addShowWhen.default)(COMPONENT, NEW_ARRAY_SHOW_WHEN);
63
63
  expect(result).toEqual({
64
64
  alpha: 'bravo',
65
65
  show_when: NEW_ARRAY_SHOW_WHEN
66
66
  });
67
67
  });
68
- it('should add the show_when to a component with a single show_when', () => {
69
- const COMPONENT = {
68
+ it('should add the show_when to a component with a single show_when', function () {
69
+ var COMPONENT = {
70
70
  alpha: 'bravo',
71
71
  show_when: {
72
72
  field: 'abc',
@@ -74,7 +74,7 @@ describe('utils.Component.addShowWhen', () => {
74
74
  value: 'bcd'
75
75
  }
76
76
  };
77
- const result = (0, _addShowWhen.default)(COMPONENT, NEW_SHOW_WHEN);
77
+ var result = (0, _addShowWhen.default)(COMPONENT, NEW_SHOW_WHEN);
78
78
  expect(result).toEqual({
79
79
  alpha: 'bravo',
80
80
  show_when: [{
@@ -84,8 +84,8 @@ describe('utils.Component.addShowWhen', () => {
84
84
  }, NEW_SHOW_WHEN]
85
85
  });
86
86
  });
87
- it('should add the show_when to a component with an array of show_whens', () => {
88
- const COMPONENT = {
87
+ it('should add the show_when to a component with an array of show_whens', function () {
88
+ var COMPONENT = {
89
89
  alpha: 'bravo',
90
90
  show_when: [{
91
91
  field: 'abc',
@@ -97,7 +97,7 @@ describe('utils.Component.addShowWhen', () => {
97
97
  value: 'efg'
98
98
  }]
99
99
  };
100
- const result = (0, _addShowWhen.default)(COMPONENT, NEW_SHOW_WHEN);
100
+ var result = (0, _addShowWhen.default)(COMPONENT, NEW_SHOW_WHEN);
101
101
  expect(result).toEqual({
102
102
  alpha: 'bravo',
103
103
  show_when: [{
@@ -111,11 +111,11 @@ describe('utils.Component.addShowWhen', () => {
111
111
  }, NEW_SHOW_WHEN]
112
112
  });
113
113
  });
114
- it('should add the or type show_when to a component with no existing show_whens in an object not an array', () => {
115
- const COMPONENT = {
114
+ it('should add the or type show_when to a component with no existing show_whens in an object not an array', function () {
115
+ var COMPONENT = {
116
116
  alpha: 'bravo'
117
117
  };
118
- const SHOW_WHEN_OR = {
118
+ var SHOW_WHEN_OR = {
119
119
  type: 'or',
120
120
  condition: [{
121
121
  field: 'field1',
@@ -127,14 +127,14 @@ describe('utils.Component.addShowWhen', () => {
127
127
  value: 2
128
128
  }]
129
129
  };
130
- const result = (0, _addShowWhen.default)(COMPONENT, SHOW_WHEN_OR);
130
+ var result = (0, _addShowWhen.default)(COMPONENT, SHOW_WHEN_OR);
131
131
  expect(result).toEqual({
132
132
  alpha: 'bravo',
133
133
  show_when: SHOW_WHEN_OR
134
134
  });
135
135
  });
136
- it('should add an array of show_whens to a component with an array of show_whens', () => {
137
- const NEW_ARRAY_SHOW_WHEN = [{
136
+ it('should add an array of show_whens to a component with an array of show_whens', function () {
137
+ var NEW_ARRAY_SHOW_WHEN = [{
138
138
  field: 'hij',
139
139
  op: '=',
140
140
  value: 'klm'
@@ -143,7 +143,7 @@ describe('utils.Component.addShowWhen', () => {
143
143
  op: '=',
144
144
  value: 'qrs'
145
145
  }];
146
- const COMPONENT = {
146
+ var COMPONENT = {
147
147
  alpha: 'bravo',
148
148
  show_when: [{
149
149
  field: 'abc',
@@ -155,7 +155,7 @@ describe('utils.Component.addShowWhen', () => {
155
155
  value: 'efg'
156
156
  }]
157
157
  };
158
- const result = (0, _addShowWhen.default)(COMPONENT, NEW_ARRAY_SHOW_WHEN);
158
+ var result = (0, _addShowWhen.default)(COMPONENT, NEW_ARRAY_SHOW_WHEN);
159
159
  expect(result).toEqual({
160
160
  alpha: 'bravo',
161
161
  show_when: [{
@@ -177,8 +177,8 @@ describe('utils.Component.addShowWhen', () => {
177
177
  }]
178
178
  });
179
179
  });
180
- it('should add an array of show_whens to a component with a single show_when', () => {
181
- const NEW_ARRAY_SHOW_WHEN = [{
180
+ it('should add an array of show_whens to a component with a single show_when', function () {
181
+ var NEW_ARRAY_SHOW_WHEN = [{
182
182
  field: 'hij',
183
183
  op: '=',
184
184
  value: 'klm'
@@ -187,7 +187,7 @@ describe('utils.Component.addShowWhen', () => {
187
187
  op: '=',
188
188
  value: 'qrs'
189
189
  }];
190
- const COMPONENT = {
190
+ var COMPONENT = {
191
191
  alpha: 'bravo',
192
192
  show_when: {
193
193
  field: 'abc',
@@ -195,7 +195,7 @@ describe('utils.Component.addShowWhen', () => {
195
195
  value: 'bcd'
196
196
  }
197
197
  };
198
- const result = (0, _addShowWhen.default)(COMPONENT, NEW_ARRAY_SHOW_WHEN);
198
+ var result = (0, _addShowWhen.default)(COMPONENT, NEW_ARRAY_SHOW_WHEN);
199
199
  expect(result).toEqual({
200
200
  alpha: 'bravo',
201
201
  show_when: [{
@@ -5,8 +5,12 @@ Object.defineProperty(exports, "__esModule", {
5
5
  });
6
6
  exports.default = void 0;
7
7
  var _models = require("../../models");
8
- // Local imports.
9
-
8
+ 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); }
9
+ 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; }
10
+ 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; }
11
+ function _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
12
+ function _toPropertyKey(arg) { var key = _toPrimitive(arg, "string"); return _typeof(key) === "symbol" ? key : String(key); }
13
+ function _toPrimitive(input, hint) { if (_typeof(input) !== "object" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || "default"); if (_typeof(res) !== "object") return res; throw new TypeError("@@toPrimitive must return a primitive value."); } return (hint === "string" ? String : Number)(input); } // Local imports.
10
14
  /**
11
15
  * Call a callback on a component and all of its child/nested components.
12
16
  * At each stage, the value of the component is set to the returned value
@@ -20,7 +24,7 @@ var _models = require("../../models");
20
24
  * null if root is not valid.
21
25
  * root if callback is not valid.
22
26
  */
23
- const applyToComponentTree = (root, callback) => {
27
+ var applyToComponentTree = function applyToComponentTree(root, callback) {
24
28
  var _root$data;
25
29
  if (!root) {
26
30
  return null;
@@ -28,19 +32,17 @@ const applyToComponentTree = (root, callback) => {
28
32
  if (!callback) {
29
33
  return root;
30
34
  }
31
- const result = {
32
- ...root
33
- };
35
+ var result = _objectSpread({}, root);
34
36
  switch (root.type) {
35
37
  case _models.ComponentTypes.CONTAINER:
36
- result.components.forEach((c, index, containerArray) => {
37
- const array = containerArray;
38
+ result.components.forEach(function (c, index, containerArray) {
39
+ var array = containerArray;
38
40
  array[index] = applyToComponentTree(c, callback);
39
41
  });
40
42
  break;
41
43
  case _models.ComponentTypes.COLLECTION:
42
- result.item.forEach((c, index, collectionArray) => {
43
- const array = collectionArray;
44
+ result.item.forEach(function (c, index, collectionArray) {
45
+ var array = collectionArray;
44
46
  array[index] = applyToComponentTree(c, callback);
45
47
  });
46
48
  break;
@@ -49,15 +51,13 @@ const applyToComponentTree = (root, callback) => {
49
51
  if (!((_root$data = root.data) !== null && _root$data !== void 0 && _root$data.options)) {
50
52
  break;
51
53
  }
52
- result.data = {
53
- ...root.data
54
- };
55
- result.data.options = root.data.options.map(option => {
56
- const newOption = {
57
- ...option
58
- };
54
+ result.data = _objectSpread({}, root.data);
55
+ result.data.options = root.data.options.map(function (option) {
56
+ var newOption = _objectSpread({}, option);
59
57
  if (option.nested) {
60
- newOption.nested = option.nested.map(c => applyToComponentTree(c, callback));
58
+ newOption.nested = option.nested.map(function (c) {
59
+ return applyToComponentTree(c, callback);
60
+ });
61
61
  }
62
62
  return newOption;
63
63
  });
@@ -2,14 +2,18 @@
2
2
 
3
3
  var _applyToComponentTree = _interopRequireDefault(require("./applyToComponentTree"));
4
4
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
5
- // Local imports.
6
-
7
- describe('utils.Component.applyToComponentTree', () => {
8
- const SINGLE_COMP = {
5
+ 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); }
6
+ 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; }
7
+ 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; }
8
+ 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; }
9
+ function _toPropertyKey(arg) { var key = _toPrimitive(arg, "string"); return _typeof(key) === "symbol" ? key : String(key); }
10
+ 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); } // Local imports.
11
+ describe('utils.Component.applyToComponentTree', function () {
12
+ var SINGLE_COMP = {
9
13
  type: 'text',
10
14
  label: 'alpha'
11
15
  };
12
- const CONTAINER = {
16
+ var CONTAINER = {
13
17
  type: 'container',
14
18
  label: 'bravo',
15
19
  components: [{
@@ -17,7 +21,7 @@ describe('utils.Component.applyToComponentTree', () => {
17
21
  label: 'charlie'
18
22
  }]
19
23
  };
20
- const COLLECTION = {
24
+ var COLLECTION = {
21
25
  type: 'collection',
22
26
  label: 'delta',
23
27
  item: [{
@@ -25,7 +29,7 @@ describe('utils.Component.applyToComponentTree', () => {
25
29
  label: 'echo'
26
30
  }]
27
31
  };
28
- const COMP_WITH_NESTED = {
32
+ var COMP_WITH_NESTED = {
29
33
  type: 'radios',
30
34
  label: 'foxtrot',
31
35
  data: {
@@ -42,43 +46,44 @@ describe('utils.Component.applyToComponentTree', () => {
42
46
  }]
43
47
  }
44
48
  };
45
- const CALLBACK = component => ({
46
- ...component,
47
- label: component.label.toUpperCase()
48
- });
49
- it('should return null when root is undefined', () => {
50
- const result = (0, _applyToComponentTree.default)(undefined, CALLBACK);
49
+ var CALLBACK = function CALLBACK(component) {
50
+ return _objectSpread(_objectSpread({}, component), {}, {
51
+ label: component.label.toUpperCase()
52
+ });
53
+ };
54
+ it('should return null when root is undefined', function () {
55
+ var result = (0, _applyToComponentTree.default)(undefined, CALLBACK);
51
56
  expect(result).toEqual(null);
52
57
  });
53
- it('should return null when root is null', () => {
54
- const result = (0, _applyToComponentTree.default)(null, CALLBACK);
58
+ it('should return null when root is null', function () {
59
+ var result = (0, _applyToComponentTree.default)(null, CALLBACK);
55
60
  expect(result).toEqual(null);
56
61
  });
57
- it('should return root when callback is undefined', () => {
58
- const result = (0, _applyToComponentTree.default)({
62
+ it('should return root when callback is undefined', function () {
63
+ var result = (0, _applyToComponentTree.default)({
59
64
  type: 'text'
60
65
  }, undefined);
61
66
  expect(result).toEqual({
62
67
  type: 'text'
63
68
  });
64
69
  });
65
- it('should return root when callback is null', () => {
66
- const result = (0, _applyToComponentTree.default)({
70
+ it('should return root when callback is null', function () {
71
+ var result = (0, _applyToComponentTree.default)({
67
72
  type: 'text'
68
73
  }, null);
69
74
  expect(result).toEqual({
70
75
  type: 'text'
71
76
  });
72
77
  });
73
- it('should correctly call callback on a single component', () => {
74
- const result = (0, _applyToComponentTree.default)(SINGLE_COMP, CALLBACK);
78
+ it('should correctly call callback on a single component', function () {
79
+ var result = (0, _applyToComponentTree.default)(SINGLE_COMP, CALLBACK);
75
80
  expect(result).toEqual({
76
81
  type: 'text',
77
82
  label: 'ALPHA'
78
83
  });
79
84
  });
80
- it('should correctly call callback on a container component', () => {
81
- const result = (0, _applyToComponentTree.default)(CONTAINER, CALLBACK);
85
+ it('should correctly call callback on a container component', function () {
86
+ var result = (0, _applyToComponentTree.default)(CONTAINER, CALLBACK);
82
87
  expect(result).toEqual({
83
88
  type: 'container',
84
89
  label: 'BRAVO',
@@ -88,8 +93,8 @@ describe('utils.Component.applyToComponentTree', () => {
88
93
  }]
89
94
  });
90
95
  });
91
- it('should correctly call callback on a collection component', () => {
92
- const result = (0, _applyToComponentTree.default)(COLLECTION, CALLBACK);
96
+ it('should correctly call callback on a collection component', function () {
97
+ var result = (0, _applyToComponentTree.default)(COLLECTION, CALLBACK);
93
98
  expect(result).toEqual({
94
99
  type: 'collection',
95
100
  label: 'DELTA',
@@ -99,8 +104,8 @@ describe('utils.Component.applyToComponentTree', () => {
99
104
  }]
100
105
  });
101
106
  });
102
- it('should correctly call callback on a component with nested components', () => {
103
- const result = (0, _applyToComponentTree.default)(COMP_WITH_NESTED, CALLBACK);
107
+ it('should correctly call callback on a component with nested components', function () {
108
+ var result = (0, _applyToComponentTree.default)(COMP_WITH_NESTED, CALLBACK);
104
109
  expect(result).toEqual({
105
110
  type: 'radios',
106
111
  label: 'FOXTROT',
@@ -4,7 +4,13 @@ Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
6
  exports.default = exports.JSON_ONLY_PROPERTIES = void 0;
7
- const JSON_ONLY_PROPERTIES = exports.JSON_ONLY_PROPERTIES = ['source', 'use', 'show_when', 'options', 'additionalValidation', 'full_path', 'fullPath', 'formData'];
7
+ 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; }
8
+ 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; }
9
+ 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; }
10
+ function _toPropertyKey(arg) { var key = _toPrimitive(arg, "string"); return _typeof(key) === "symbol" ? key : String(key); }
11
+ 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); }
12
+ 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); }
13
+ var JSON_ONLY_PROPERTIES = exports.JSON_ONLY_PROPERTIES = ['source', 'use', 'show_when', 'options', 'additionalValidation', 'full_path', 'fullPath', 'formData'];
8
14
 
9
15
  /**
10
16
  * This method removes and properties that are entirely specific to the JSON
@@ -17,16 +23,13 @@ const JSON_ONLY_PROPERTIES = exports.JSON_ONLY_PROPERTIES = ['source', 'use', 's
17
23
  * @param {Array} alsoRemove An array of additional properties to remove.
18
24
  * @returns A clean(er) JSON object.
19
25
  */
20
- const cleanAttributes = function (options) {
21
- let alsoRemove = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : [];
22
- const removeKeys = Array.isArray(alsoRemove) ? [].concat(JSON_ONLY_PROPERTIES, alsoRemove) : JSON_ONLY_PROPERTIES;
23
- if (options && typeof options === 'object') {
24
- return Object.keys(options).reduce((obj, key) => {
26
+ var cleanAttributes = function cleanAttributes(options) {
27
+ var alsoRemove = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : [];
28
+ var removeKeys = Array.isArray(alsoRemove) ? [].concat(JSON_ONLY_PROPERTIES, alsoRemove) : JSON_ONLY_PROPERTIES;
29
+ if (options && _typeof(options) === 'object') {
30
+ return Object.keys(options).reduce(function (obj, key) {
25
31
  if (!removeKeys.includes(key)) {
26
- return {
27
- ...obj,
28
- [key]: options[key]
29
- };
32
+ return _objectSpread(_objectSpread({}, obj), {}, _defineProperty({}, key, options[key]));
30
33
  }
31
34
  ;
32
35
  return obj;
@@ -1,34 +1,35 @@
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); }
3
4
  var _cleanAttributes = _interopRequireWildcard(require("./cleanAttributes"));
4
- function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function (e) { return e ? t : r; })(e); }
5
- function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != typeof e && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && {}.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
5
+ function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(e) { return e ? t : r; })(e); }
6
+ function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != _typeof(e) && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && Object.prototype.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
6
7
  // Local imports
7
8
 
8
- describe('utils', () => {
9
- describe('Component', () => {
10
- describe('clean', () => {
11
- it('should handle null options', () => {
9
+ describe('utils', function () {
10
+ describe('Component', function () {
11
+ describe('clean', function () {
12
+ it('should handle null options', function () {
12
13
  expect((0, _cleanAttributes.default)(null)).toEqual({});
13
14
  });
14
- it('should handle undefined options', () => {
15
+ it('should handle undefined options', function () {
15
16
  expect((0, _cleanAttributes.default)(undefined)).toEqual({});
16
17
  });
17
- it('should handle empty options', () => {
18
+ it('should handle empty options', function () {
18
19
  expect((0, _cleanAttributes.default)({}, null)).toEqual({});
19
20
  });
20
- it('should handle a non-object options', () => {
21
+ it('should handle a non-object options', function () {
21
22
  expect((0, _cleanAttributes.default)(23, null)).toEqual({});
22
23
  });
23
- it('should only remove properties specific to JSON', () => {
24
- const OPTIONS = {
24
+ it('should only remove properties specific to JSON', function () {
25
+ var OPTIONS = {
25
26
  id: 'bob'
26
27
  };
27
28
  // Add a bunch of properties we know will need to be removed.
28
- _cleanAttributes.JSON_ONLY_PROPERTIES.forEach(p => {
29
+ _cleanAttributes.JSON_ONLY_PROPERTIES.forEach(function (p) {
29
30
  OPTIONS[p] = 'value';
30
31
  });
31
- const RESULT = (0, _cleanAttributes.default)(OPTIONS);
32
+ var RESULT = (0, _cleanAttributes.default)(OPTIONS);
32
33
 
33
34
  // The original options should remain untouched.
34
35
  expect(OPTIONS.id).toEqual('bob');
@@ -40,16 +41,16 @@ describe('utils', () => {
40
41
  id: 'bob'
41
42
  });
42
43
  });
43
- it('should also remove properties specified in the alsoRemove parameter', () => {
44
- const OPTIONS = {
44
+ it('should also remove properties specified in the alsoRemove parameter', function () {
45
+ var OPTIONS = {
45
46
  id: 'bob',
46
47
  fieldId: 'bobField'
47
48
  };
48
49
  // Add a bunch of properties we know will need to be removed.
49
- _cleanAttributes.JSON_ONLY_PROPERTIES.forEach(p => {
50
+ _cleanAttributes.JSON_ONLY_PROPERTIES.forEach(function (p) {
50
51
  OPTIONS[p] = 'value';
51
52
  });
52
- const RESULT = (0, _cleanAttributes.default)(OPTIONS, ['fieldId']);
53
+ var RESULT = (0, _cleanAttributes.default)(OPTIONS, ['fieldId']);
53
54
 
54
55
  // The original options should remain untouched.
55
56
  expect(OPTIONS.id).toEqual('bob');
@@ -5,6 +5,7 @@ Object.defineProperty(exports, "__esModule", {
5
5
  });
6
6
  exports.default = void 0;
7
7
  var _Data = _interopRequireDefault(require("../Data"));
8
+ var _optionIsSelected = _interopRequireDefault(require("./optionIsSelected"));
8
9
  var _showComponent = _interopRequireDefault(require("./showComponent"));
9
10
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
10
11
  /**
@@ -33,19 +34,19 @@ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { de
33
34
  * @returns A new array consisting of components interspersed
34
35
  * with any visible nested components.
35
36
  */
36
- const elevateNestedComponents = (components, data) => {
37
- let allComponents = [];
38
- components === null || components === void 0 || components.forEach(component => {
37
+ var elevateNestedComponents = function elevateNestedComponents(components, data) {
38
+ var allComponents = [];
39
+ components === null || components === void 0 || components.forEach(function (component) {
39
40
  allComponents.push(component);
40
41
  // If the component wasn't shown we shouldn't elevate anything nested under it
41
42
  if ((0, _showComponent.default)(component, data)) {
42
43
  var _component$data;
43
- (_component$data = component.data) === null || _component$data === void 0 || (_component$data = _component$data.options) === null || _component$data === void 0 || _component$data.forEach(option => {
44
+ (_component$data = component.data) === null || _component$data === void 0 || (_component$data = _component$data.options) === null || _component$data === void 0 || _component$data.forEach(function (option) {
44
45
  // If this option has nested components and is
45
46
  // selected, then add its nested components to the array.
46
- const sourceData = (data === null || data === void 0 ? void 0 : data[component.id]) || _Data.default.getSource(data, component.full_path);
47
+ var sourceData = (data === null || data === void 0 ? void 0 : data[component.id]) || _Data.default.getSource(data, component.full_path);
47
48
  // If the specific option wasn't shown we shouldn't elevate anything nested under it
48
- if (Array.isArray(option.nested) && sourceData === option.value && (0, _showComponent.default)(option, data)) {
49
+ if (Array.isArray(option.nested) && (0, _optionIsSelected.default)(sourceData, option) && (0, _showComponent.default)(option, data)) {
49
50
  allComponents = allComponents.concat(option.nested);
50
51
  }
51
52
  });