@ukhomeoffice/cop-react-form-renderer 6.0.6-peter → 6.7.0-alpha

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 (390) hide show
  1. package/dist/components/CheckYourAnswers/Answer.js +12 -12
  2. package/dist/components/CheckYourAnswers/Answer.test.js +92 -127
  3. package/dist/components/CheckYourAnswers/CheckYourAnswers.js +101 -131
  4. package/dist/components/CheckYourAnswers/CheckYourAnswers.scss +2 -2
  5. package/dist/components/CheckYourAnswers/CheckYourAnswers.test.js +463 -769
  6. package/dist/components/CollectionPage/CollectionPage.js +75 -59
  7. package/dist/components/CollectionPage/CollectionPage.test.js +316 -366
  8. package/dist/components/CollectionSummary/BannerStrip.js +15 -14
  9. package/dist/components/CollectionSummary/BannerStrip.scss +2 -2
  10. package/dist/components/CollectionSummary/BannerStrip.test.js +98 -59
  11. package/dist/components/CollectionSummary/CollectionSummary.js +144 -135
  12. package/dist/components/CollectionSummary/CollectionSummary.scss +1 -1
  13. package/dist/components/CollectionSummary/CollectionSummary.test.js +167 -197
  14. package/dist/components/CollectionSummary/Confirmation.js +14 -12
  15. package/dist/components/CollectionSummary/Confirmation.scss +1 -1
  16. package/dist/components/CollectionSummary/Confirmation.test.js +68 -63
  17. package/dist/components/CollectionSummary/RenderListView.js +54 -56
  18. package/dist/components/CollectionSummary/RenderListView.scss +10 -1
  19. package/dist/components/CollectionSummary/RenderListView.test.js +89 -78
  20. package/dist/components/CollectionSummary/SummaryCard.js +135 -145
  21. package/dist/components/CollectionSummary/SummaryCard.scss +2 -1
  22. package/dist/components/CollectionSummary/SummaryCard.test.js +943 -932
  23. package/dist/components/CollectionSummary/SummaryCardDetails.js +120 -62
  24. package/dist/components/CollectionSummary/SummaryCardDetails.scss +43 -6
  25. package/dist/components/CollectionSummary/SummaryCardDetails.test.js +261 -120
  26. package/dist/components/CollectionSummary/SummaryCardValidationContext.js +38 -33
  27. package/dist/components/CollectionSummary/SummaryCardValidationContext.test.js +62 -73
  28. package/dist/components/FormComponent/Collection.js +81 -108
  29. package/dist/components/FormComponent/Collection.test.js +909 -943
  30. package/dist/components/FormComponent/Container.js +40 -38
  31. package/dist/components/FormComponent/Container.test.js +314 -345
  32. package/dist/components/FormComponent/FormComponent.js +80 -71
  33. package/dist/components/FormComponent/FormComponent.test.js +353 -414
  34. package/dist/components/FormComponent/helpers/addLabel.js +4 -7
  35. package/dist/components/FormComponent/helpers/getComponentDisabled.js +1 -1
  36. package/dist/components/FormComponent/helpers/getComponentDisabled.test.js +7 -7
  37. package/dist/components/FormComponent/helpers/getComponentError.js +3 -5
  38. package/dist/components/FormComponent/helpers/getComponentError.test.js +14 -14
  39. package/dist/components/FormComponent/helpers/getComponentFieldSet.js +3 -4
  40. package/dist/components/FormComponent/helpers/getComponentFieldSet.test.js +6 -6
  41. package/dist/components/FormComponent/helpers/index.js +4 -4
  42. package/dist/components/FormPage/FormPage.js +65 -80
  43. package/dist/components/FormPage/FormPage.scss +1 -1
  44. package/dist/components/FormPage/FormPage.test.js +127 -163
  45. package/dist/components/FormRenderer/FormRenderer.js +150 -183
  46. package/dist/components/FormRenderer/FormRenderer.scss +1 -1
  47. package/dist/components/FormRenderer/FormRenderer.test.js +730 -1115
  48. package/dist/components/FormRenderer/handlers/cyaAction.js +2 -2
  49. package/dist/components/FormRenderer/handlers/getPageId.js +1 -3
  50. package/dist/components/FormRenderer/handlers/getPageId.test.js +14 -14
  51. package/dist/components/FormRenderer/handlers/handlers.test.js +32 -32
  52. package/dist/components/FormRenderer/handlers/index.js +1 -1
  53. package/dist/components/FormRenderer/handlers/navigate.js +3 -3
  54. package/dist/components/FormRenderer/handlers/submissionError.js +1 -1
  55. package/dist/components/FormRenderer/helpers/canActionProceed.js +1 -1
  56. package/dist/components/FormRenderer/helpers/canActionProceed.test.js +15 -15
  57. package/dist/components/FormRenderer/helpers/canCYASubmit.js +1 -3
  58. package/dist/components/FormRenderer/helpers/canCYASubmit.test.js +16 -20
  59. package/dist/components/FormRenderer/helpers/cleanHiddenNestedData.js +17 -22
  60. package/dist/components/FormRenderer/helpers/cleanHiddenNestedData.test.js +16 -16
  61. package/dist/components/FormRenderer/helpers/getCYA.js +3 -5
  62. package/dist/components/FormRenderer/helpers/getCYA.test.js +11 -11
  63. package/dist/components/FormRenderer/helpers/getFormState.js +5 -7
  64. package/dist/components/FormRenderer/helpers/getFormState.test.js +10 -10
  65. package/dist/components/FormRenderer/helpers/getNextPageId.js +13 -24
  66. package/dist/components/FormRenderer/helpers/getNextPageId.test.js +67 -67
  67. package/dist/components/FormRenderer/helpers/getPage.js +2 -4
  68. package/dist/components/FormRenderer/helpers/getPage.test.js +11 -11
  69. package/dist/components/FormRenderer/helpers/getRelevantPages.js +7 -9
  70. package/dist/components/FormRenderer/helpers/getRelevantPages.test.js +14 -14
  71. package/dist/components/FormRenderer/helpers/getSubmissionStatus.js +5 -5
  72. package/dist/components/FormRenderer/helpers/getSubmissionStatus.test.js +103 -97
  73. package/dist/components/FormRenderer/helpers/getUpdatedSectionStates.js +62 -60
  74. package/dist/components/FormRenderer/helpers/getUpdatedSectionStates.test.js +71 -78
  75. package/dist/components/FormRenderer/helpers/index.js +2 -4
  76. package/dist/components/FormRenderer/onCYAAction.js +59 -51
  77. package/dist/components/FormRenderer/onCYAAction.test.js +164 -152
  78. package/dist/components/FormRenderer/onPageAction.js +50 -48
  79. package/dist/components/FormRenderer/onPageAction.test.js +241 -217
  80. package/dist/components/FormRenderer/onTaskAction.js +9 -13
  81. package/dist/components/FormRenderer/onTaskAction.test.js +93 -88
  82. package/dist/components/PageActions/ActionButton.js +12 -15
  83. package/dist/components/PageActions/ActionButton.test.js +56 -78
  84. package/dist/components/PageActions/PageActions.js +10 -10
  85. package/dist/components/PageActions/PageActions.test.js +86 -115
  86. package/dist/components/SummaryList/GroupAction.js +9 -17
  87. package/dist/components/SummaryList/GroupAction.test.js +37 -33
  88. package/dist/components/SummaryList/RowAction.js +11 -16
  89. package/dist/components/SummaryList/RowAction.test.js +37 -33
  90. package/dist/components/SummaryList/SummaryList.js +21 -26
  91. package/dist/components/SummaryList/SummaryList.scss +2 -2
  92. package/dist/components/SummaryList/SummaryList.test.js +143 -166
  93. package/dist/components/SummaryList/SummaryListHeadingRow.js +6 -4
  94. package/dist/components/SummaryList/SummaryListRow.js +6 -4
  95. package/dist/components/SummaryList/SummaryListTitleRow.js +5 -3
  96. package/dist/components/SummaryList/helpers/getGroupActionAttributes.js +3 -5
  97. package/dist/components/SummaryList/helpers/getGroupActionAttributes.test.js +22 -22
  98. package/dist/components/SummaryList/helpers/getRowActionAttributes.js +3 -5
  99. package/dist/components/SummaryList/helpers/getRowActionAttributes.test.js +22 -22
  100. package/dist/components/SummaryList/helpers/index.js +1 -1
  101. package/dist/components/TaskList/Task.js +19 -29
  102. package/dist/components/TaskList/Task.test.js +83 -76
  103. package/dist/components/TaskList/TaskList.js +45 -71
  104. package/dist/components/TaskList/TaskList.scss +1 -1
  105. package/dist/components/TaskList/TaskList.test.js +113 -111
  106. package/dist/components/TaskList/TaskState.js +7 -5
  107. package/dist/components/TaskList/TaskState.test.js +52 -45
  108. package/dist/components/index.js +7 -7
  109. package/dist/context/HooksContext/HooksContext.js +57 -80
  110. package/dist/context/HooksContext/HooksContext.test.js +26 -35
  111. package/dist/context/HooksContext/index.js +3 -4
  112. package/dist/context/ValidationContext/ValidationContext.js +65 -72
  113. package/dist/context/ValidationContext/ValidationContext.test.js +58 -61
  114. package/dist/context/ValidationContext/index.js +3 -4
  115. package/dist/context/index.js +2 -2
  116. package/dist/hooks/index.js +9 -10
  117. package/dist/hooks/useAxios.js +14 -40
  118. package/dist/hooks/useGetRequest.js +61 -97
  119. package/dist/hooks/useHooks.js +1 -3
  120. package/dist/hooks/useRefData.js +27 -40
  121. package/dist/hooks/useValidation.js +1 -3
  122. package/dist/index.js +13 -14
  123. package/dist/models/CollectionLabels.js +1 -1
  124. package/dist/models/ComponentTypes.js +25 -25
  125. package/dist/models/EventTypes.js +4 -4
  126. package/dist/models/FormPages.js +4 -4
  127. package/dist/models/FormTypes.js +8 -8
  128. package/dist/models/HubFormats.js +3 -3
  129. package/dist/models/PageAction.js +44 -38
  130. package/dist/models/TaskStates.js +29 -28
  131. package/dist/models/index.js +9 -9
  132. package/dist/setupTests.js +30 -31
  133. package/dist/utils/CheckYourAnswers/getCYAAction.js +5 -5
  134. package/dist/utils/CheckYourAnswers/getCYAAction.test.js +52 -54
  135. package/dist/utils/CheckYourAnswers/getCYACollectionChangeAction.js +15 -25
  136. package/dist/utils/CheckYourAnswers/getCYACollectionChangeAction.test.js +33 -35
  137. package/dist/utils/CheckYourAnswers/getCYACollectionDeleteAction.js +17 -31
  138. package/dist/utils/CheckYourAnswers/getCYACollectionDeleteAction.test.js +42 -44
  139. package/dist/utils/CheckYourAnswers/getCYARow.js +6 -6
  140. package/dist/utils/CheckYourAnswers/getCYARow.test.js +86 -86
  141. package/dist/utils/CheckYourAnswers/getCYARowForGroup.js +18 -24
  142. package/dist/utils/CheckYourAnswers/getCYARowForGroup.test.js +15 -16
  143. package/dist/utils/CheckYourAnswers/getCYARowsForCollection.js +33 -36
  144. package/dist/utils/CheckYourAnswers/getCYARowsForCollection.test.js +58 -61
  145. package/dist/utils/CheckYourAnswers/getCYARowsForCollectionPage.js +83 -89
  146. package/dist/utils/CheckYourAnswers/getCYARowsForCollectionPage.test.js +164 -138
  147. package/dist/utils/CheckYourAnswers/getCYARowsForContainer.js +25 -20
  148. package/dist/utils/CheckYourAnswers/getCYARowsForContainer.test.js +103 -97
  149. package/dist/utils/CheckYourAnswers/getCYARowsForPage.js +13 -18
  150. package/dist/utils/CheckYourAnswers/getCYARowsForPage.test.js +70 -76
  151. package/dist/utils/CheckYourAnswers/getComponentRowForCYA.js +11 -11
  152. package/dist/utils/CheckYourAnswers/getComponentRowForCYA.test.js +7 -7
  153. package/dist/utils/CheckYourAnswers/index.js +1 -1
  154. package/dist/utils/CheckYourAnswers/showComponentCYA.js +4 -5
  155. package/dist/utils/CheckYourAnswers/showComponentCYA.test.js +29 -24
  156. package/dist/utils/CollectionPage/addCollectionPageEntry.js +3 -4
  157. package/dist/utils/CollectionPage/addCollectionPageEntry.test.js +7 -27
  158. package/dist/utils/CollectionPage/duplicateCollectionPageActiveEntry.js +2 -2
  159. package/dist/utils/CollectionPage/duplicateCollectionPageActiveEntry.test.js +17 -18
  160. package/dist/utils/CollectionPage/duplicateCollectionPageEntry.js +29 -19
  161. package/dist/utils/CollectionPage/duplicateCollectionPageEntry.test.js +66 -22
  162. package/dist/utils/CollectionPage/getCollectionPageActiveId.js +2 -2
  163. package/dist/utils/CollectionPage/getCollectionPageActiveId.test.js +10 -10
  164. package/dist/utils/CollectionPage/getCollectionPageActiveIndex.js +7 -11
  165. package/dist/utils/CollectionPage/getCollectionPageActiveIndex.test.js +22 -22
  166. package/dist/utils/CollectionPage/getCollectionPageData.js +8 -12
  167. package/dist/utils/CollectionPage/getCollectionPageData.test.js +19 -19
  168. package/dist/utils/CollectionPage/getErrorsForCollection.js +55 -0
  169. package/dist/utils/CollectionPage/getErrorsForCollection.test.js +153 -0
  170. package/dist/utils/CollectionPage/getQuickEditPage.js +37 -23
  171. package/dist/utils/CollectionPage/getQuickEditPage.test.js +26 -45
  172. package/dist/utils/CollectionPage/index.js +3 -1
  173. package/dist/utils/CollectionPage/mergeCollectionPages.js +31 -35
  174. package/dist/utils/CollectionPage/mergeCollectionPages.test.js +20 -20
  175. package/dist/utils/CollectionPage/removeCollectionPageEntry.js +4 -6
  176. package/dist/utils/CollectionPage/removeCollectionPageEntry.test.js +10 -10
  177. package/dist/utils/CollectionPage/setCollectionPageData.js +16 -17
  178. package/dist/utils/CollectionPage/setCollectionPageData.test.js +38 -20
  179. package/dist/utils/Component/addShowWhen.js +4 -8
  180. package/dist/utils/Component/addShowWhen.test.js +37 -37
  181. package/dist/utils/Component/applyToComponentTree.js +18 -18
  182. package/dist/utils/Component/applyToComponentTree.test.js +27 -32
  183. package/dist/utils/Component/cleanAttributes.js +10 -13
  184. package/dist/utils/Component/cleanAttributes.test.js +17 -18
  185. package/dist/utils/Component/elevateNestedComponents.js +5 -5
  186. package/dist/utils/Component/elevateNestedComponents.test.js +30 -30
  187. package/dist/utils/Component/getComponent.js +88 -94
  188. package/dist/utils/Component/getComponentTests/getComponent.autocomplete.test.js +18 -17
  189. package/dist/utils/Component/getComponentTests/getComponent.calculation.test.js +46 -59
  190. package/dist/utils/Component/getComponentTests/getComponent.checkboxes.test.js +39 -48
  191. package/dist/utils/Component/getComponentTests/getComponent.date.test.js +23 -33
  192. package/dist/utils/Component/getComponentTests/getComponent.details.test.js +20 -18
  193. package/dist/utils/Component/getComponentTests/getComponent.email.test.js +17 -22
  194. package/dist/utils/Component/getComponentTests/getComponent.file.test.js +20 -25
  195. package/dist/utils/Component/getComponentTests/getComponent.heading.test.js +10 -9
  196. package/dist/utils/Component/getComponentTests/getComponent.html.test.js +17 -15
  197. package/dist/utils/Component/getComponentTests/getComponent.insetText.test.js +9 -8
  198. package/dist/utils/Component/getComponentTests/getComponent.list.test.js +17 -15
  199. package/dist/utils/Component/getComponentTests/getComponent.multifile.test.js +22 -26
  200. package/dist/utils/Component/getComponentTests/getComponent.nested.test.js +155 -175
  201. package/dist/utils/Component/getComponentTests/getComponent.paragraph.test.js +17 -15
  202. package/dist/utils/Component/getComponentTests/getComponent.phoneNumber.test.js +17 -22
  203. package/dist/utils/Component/getComponentTests/getComponent.radios.test.js +57 -72
  204. package/dist/utils/Component/getComponentTests/getComponent.select.test.js +17 -22
  205. package/dist/utils/Component/getComponentTests/getComponent.text.test.js +17 -22
  206. package/dist/utils/Component/getComponentTests/getComponent.textArea.test.js +31 -38
  207. package/dist/utils/Component/getComponentTests/getComponent.time.test.js +20 -29
  208. package/dist/utils/Component/getComponentTests/getComponent.unknown.test.js +2 -2
  209. package/dist/utils/Component/getComponentTests/getComponent.warningText.test.js +9 -8
  210. package/dist/utils/Component/getDefaultValue.js +6 -8
  211. package/dist/utils/Component/getDefaultValue.test.js +12 -12
  212. package/dist/utils/Component/getDefaultValueFromConfig.js +22 -21
  213. package/dist/utils/Component/getDefaultValueFromConfig.test.js +31 -31
  214. package/dist/utils/Component/index.js +1 -1
  215. package/dist/utils/Component/isEditable.js +2 -4
  216. package/dist/utils/Component/isEditable.test.js +14 -15
  217. package/dist/utils/Component/optionIsSelected.js +1 -1
  218. package/dist/utils/Component/optionIsSelected.test.js +9 -9
  219. package/dist/utils/Component/setupContainerComponentsPath.js +27 -29
  220. package/dist/utils/Component/setupContainerComponentsPath.test.js +11 -11
  221. package/dist/utils/Component/showComponent.js +1 -1
  222. package/dist/utils/Component/showComponent.test.js +28 -28
  223. package/dist/utils/Component/wrapInFormGroup.js +2 -2
  224. package/dist/utils/Condition/index.js +1 -1
  225. package/dist/utils/Condition/meetsAllConditions.js +8 -8
  226. package/dist/utils/Condition/meetsAllConditions.test.js +20 -20
  227. package/dist/utils/Condition/meetsCondition.js +28 -19
  228. package/dist/utils/Condition/meetsCondition.test.js +476 -376
  229. package/dist/utils/Condition/meetsOneCondition.js +5 -5
  230. package/dist/utils/Condition/meetsOneCondition.test.js +16 -16
  231. package/dist/utils/Condition/setupConditions.js +13 -18
  232. package/dist/utils/Condition/setupConditions.test.js +7 -7
  233. package/dist/utils/Container/getEditableComponents.js +3 -5
  234. package/dist/utils/Container/getEditableComponents.test.js +43 -45
  235. package/dist/utils/Container/index.js +1 -1
  236. package/dist/utils/Container/setupNesting.js +16 -20
  237. package/dist/utils/Container/setupNesting.test.js +27 -30
  238. package/dist/utils/Container/showContainer.js +3 -7
  239. package/dist/utils/Container/showContainer.test.js +30 -30
  240. package/dist/utils/Data/applyFormula.js +38 -48
  241. package/dist/utils/Data/applyFormula.test.js +20 -20
  242. package/dist/utils/Data/getAutocompleteSource.js +18 -26
  243. package/dist/utils/Data/getAutocompleteSource.test.js +80 -86
  244. package/dist/utils/Data/getDataPath.js +18 -28
  245. package/dist/utils/Data/getDataPath.test.js +12 -12
  246. package/dist/utils/Data/getOptions.js +29 -25
  247. package/dist/utils/Data/getOptions.test.js +93 -20
  248. package/dist/utils/Data/getSourceData.js +6 -19
  249. package/dist/utils/Data/getSourceData.test.js +84 -80
  250. package/dist/utils/Data/index.js +1 -1
  251. package/dist/utils/Data/nestInRefdataOptions.js +42 -0
  252. package/dist/utils/Data/nestInRefdataOptions.test.js +236 -0
  253. package/dist/utils/Data/refDataToOptions.js +10 -13
  254. package/dist/utils/Data/refDataToOptions.test.js +19 -19
  255. package/dist/utils/Data/setDataItem.js +7 -8
  256. package/dist/utils/Data/setDataItem.test.js +37 -37
  257. package/dist/utils/Data/setupFormData.js +13 -21
  258. package/dist/utils/Data/setupFormData.test.js +51 -50
  259. package/dist/utils/Data/setupRefDataUrlForComponent.js +20 -26
  260. package/dist/utils/Data/setupRefDataUrlForComponent.test.js +24 -24
  261. package/dist/utils/FormPage/applyConditionalProperties.js +5 -9
  262. package/dist/utils/FormPage/applyConditionalProperties.test.js +15 -18
  263. package/dist/utils/FormPage/getConditionalText.js +3 -3
  264. package/dist/utils/FormPage/getConditionalText.test.js +29 -29
  265. package/dist/utils/FormPage/getFormPage.js +15 -16
  266. package/dist/utils/FormPage/getFormPage.test.js +47 -46
  267. package/dist/utils/FormPage/getFormPages.js +7 -12
  268. package/dist/utils/FormPage/getFormPages.test.js +20 -23
  269. package/dist/utils/FormPage/getPageActions.js +9 -15
  270. package/dist/utils/FormPage/getPageActions.test.js +32 -32
  271. package/dist/utils/FormPage/getParagraphFromText.js +5 -7
  272. package/dist/utils/FormPage/getParagraphFromText.test.js +6 -6
  273. package/dist/utils/FormPage/index.js +2 -4
  274. package/dist/utils/FormPage/showFormPage.js +3 -7
  275. package/dist/utils/FormPage/showFormPage.test.js +32 -32
  276. package/dist/utils/FormPage/showFormPageCYA.js +1 -1
  277. package/dist/utils/FormPage/showFormPageCYA.test.js +8 -8
  278. package/dist/utils/FormPage/useComponent.js +21 -28
  279. package/dist/utils/FormPage/useComponent.test.js +77 -79
  280. package/dist/utils/Format/formatData.js +1 -1
  281. package/dist/utils/Format/formatData.test.js +18 -18
  282. package/dist/utils/Format/formatDataForComponent.js +5 -6
  283. package/dist/utils/Format/formatDataForComponent.test.js +50 -78
  284. package/dist/utils/Format/formatDataForForm.js +6 -8
  285. package/dist/utils/Format/formatDataForForm.test.js +13 -16
  286. package/dist/utils/Format/formatDataForPage.js +4 -5
  287. package/dist/utils/Format/formatDataForPage.test.js +20 -25
  288. package/dist/utils/Format/index.js +1 -1
  289. package/dist/utils/Hub/getFormHub.js +1 -1
  290. package/dist/utils/Hub/getFormHub.test.js +28 -31
  291. package/dist/utils/Hub/index.js +1 -1
  292. package/dist/utils/Meta/constants.js +2 -2
  293. package/dist/utils/Meta/documents/getDocuments.js +1 -1
  294. package/dist/utils/Meta/documents/getDocuments.test.js +24 -16
  295. package/dist/utils/Meta/documents/index.js +1 -1
  296. package/dist/utils/Meta/documents/setDocumentsForField.js +14 -16
  297. package/dist/utils/Meta/documents/setDocumentsForField.test.js +68 -34
  298. package/dist/utils/Meta/index.js +1 -1
  299. package/dist/utils/Operate/checkValueIsTruthy.js +2 -2
  300. package/dist/utils/Operate/checkValueIsTruthy.test.js +16 -16
  301. package/dist/utils/Operate/getFirstOf.js +5 -5
  302. package/dist/utils/Operate/getFirstOf.test.js +31 -31
  303. package/dist/utils/Operate/getIndexOfMatchingValueIn.js +10 -10
  304. package/dist/utils/Operate/getIndexOfMatchingValueIn.test.js +46 -52
  305. package/dist/utils/Operate/index.js +1 -1
  306. package/dist/utils/Operate/persistValueInFormData.js +3 -3
  307. package/dist/utils/Operate/persistValueInFormData.test.js +22 -20
  308. package/dist/utils/Operate/runPageOperations.js +7 -7
  309. package/dist/utils/Operate/runPageOperations.test.js +35 -36
  310. package/dist/utils/Operate/setValueInFormData.js +2 -2
  311. package/dist/utils/Operate/setValueInFormData.test.js +16 -16
  312. package/dist/utils/Operate/shouldRun.js +6 -6
  313. package/dist/utils/Operate/shouldRun.test.js +21 -27
  314. package/dist/utils/Validate/additional/conditionallyRequired.js +4 -4
  315. package/dist/utils/Validate/additional/conditionallyRequired.test.js +18 -18
  316. package/dist/utils/Validate/additional/index.js +6 -6
  317. package/dist/utils/Validate/additional/index.test.js +12 -12
  318. package/dist/utils/Validate/additional/mustBeAfter.js +2 -2
  319. package/dist/utils/Validate/additional/mustBeAfter.test.js +40 -40
  320. package/dist/utils/Validate/additional/mustBeBefore.js +2 -2
  321. package/dist/utils/Validate/additional/mustBeBefore.test.js +28 -28
  322. package/dist/utils/Validate/additional/mustBeEarlierDateTime.js +7 -11
  323. package/dist/utils/Validate/additional/mustBeEarlierDateTime.test.js +37 -41
  324. package/dist/utils/Validate/additional/mustBeGreaterThan.js +2 -2
  325. package/dist/utils/Validate/additional/mustBeGreaterThan.test.js +18 -18
  326. package/dist/utils/Validate/additional/mustBeInTheFuture.js +2 -2
  327. package/dist/utils/Validate/additional/mustBeInTheFuture.test.js +12 -12
  328. package/dist/utils/Validate/additional/mustBeInThePast.js +3 -3
  329. package/dist/utils/Validate/additional/mustBeInThePast.test.js +12 -12
  330. package/dist/utils/Validate/additional/mustBeLessThan.js +2 -2
  331. package/dist/utils/Validate/additional/mustBeLessThan.test.js +17 -17
  332. package/dist/utils/Validate/additional/mustBeLongerThan.js +1 -1
  333. package/dist/utils/Validate/additional/mustBeLongerThan.test.js +16 -16
  334. package/dist/utils/Validate/additional/mustBeNumbersOnly.js +2 -2
  335. package/dist/utils/Validate/additional/mustBeNumbersOnly.test.js +20 -20
  336. package/dist/utils/Validate/additional/mustBeShorterThan.js +1 -1
  337. package/dist/utils/Validate/additional/mustBeShorterThan.test.js +16 -16
  338. package/dist/utils/Validate/additional/mustBeUniqueInCollection.js +8 -4
  339. package/dist/utils/Validate/additional/mustBeUniqueInCollection.test.js +64 -32
  340. package/dist/utils/Validate/additional/mustEnterAtLeastOne.js +2 -2
  341. package/dist/utils/Validate/additional/mustEnterAtLeastOne.test.js +14 -16
  342. package/dist/utils/Validate/additional/mustHaveLessThanDecimalPlaces.js +1 -1
  343. package/dist/utils/Validate/additional/mustHaveLessThanDecimalPlaces.test.js +12 -12
  344. package/dist/utils/Validate/additional/mustNotContainSql.js +3 -4
  345. package/dist/utils/Validate/additional/mustNotContainSql.test.js +14 -14
  346. package/dist/utils/Validate/additional/mustSelectOnlyOne.js +2 -2
  347. package/dist/utils/Validate/additional/mustSelectOnlyOne.test.js +28 -26
  348. package/dist/utils/Validate/additional/utils.js +9 -22
  349. package/dist/utils/Validate/index.js +1 -1
  350. package/dist/utils/Validate/validateCollection.js +19 -25
  351. package/dist/utils/Validate/validateCollection.test.js +74 -66
  352. package/dist/utils/Validate/validateComponent.js +17 -15
  353. package/dist/utils/Validate/validateComponent.test.js +167 -146
  354. package/dist/utils/Validate/validateContainer.js +16 -19
  355. package/dist/utils/Validate/validateContainer.test.js +84 -45
  356. package/dist/utils/Validate/validateDate.js +15 -21
  357. package/dist/utils/Validate/validateDate.test.js +31 -32
  358. package/dist/utils/Validate/validateEmail.js +6 -8
  359. package/dist/utils/Validate/validateEmail.test.js +25 -25
  360. package/dist/utils/Validate/validateMultifile.js +5 -7
  361. package/dist/utils/Validate/validateMultifile.test.js +17 -18
  362. package/dist/utils/Validate/validatePage.js +24 -18
  363. package/dist/utils/Validate/validatePage.test.js +263 -182
  364. package/dist/utils/Validate/validateRegex.js +3 -5
  365. package/dist/utils/Validate/validateRegex.test.js +14 -14
  366. package/dist/utils/Validate/validateRequired.js +4 -6
  367. package/dist/utils/Validate/validateRequired.test.js +18 -18
  368. package/dist/utils/Validate/validateTextArea.js +4 -6
  369. package/dist/utils/Validate/validateTextArea.test.js +20 -20
  370. package/dist/utils/Validate/validateTime.js +11 -18
  371. package/dist/utils/Validate/validateTime.test.js +16 -16
  372. package/dist/utils/index.js +7 -9
  373. package/package.json +5 -5
  374. package/dist/components/FormRenderer/clear-uncompleted-routes/test-data/component-used-in-multiple-pages-data.json +0 -4
  375. package/dist/components/FormRenderer/clear-uncompleted-routes/test-data/component-used-in-multiple-pages-form.json +0 -61
  376. package/dist/components/FormRenderer/clear-uncompleted-routes/test-data/data-with-collection-data-removed.json +0 -4
  377. package/dist/components/FormRenderer/clear-uncompleted-routes/test-data/data-with-collections.json +0 -8
  378. package/dist/components/FormRenderer/clear-uncompleted-routes/test-data/data-with-components-removed.json +0 -3
  379. package/dist/components/FormRenderer/clear-uncompleted-routes/test-data/data-with-components.json +0 -5
  380. package/dist/components/FormRenderer/clear-uncompleted-routes/test-data/data-with-entire-collection-removed.json +0 -3
  381. package/dist/components/FormRenderer/clear-uncompleted-routes/test-data/data-with-nested-component-removed.json +0 -10
  382. package/dist/components/FormRenderer/clear-uncompleted-routes/test-data/data-with-nested-components.json +0 -11
  383. package/dist/components/FormRenderer/clear-uncompleted-routes/test-data/form-for-nested-components.json +0 -96
  384. package/dist/components/FormRenderer/clear-uncompleted-routes/test-data/form-with-collections-delete-entire.json +0 -47
  385. package/dist/components/FormRenderer/clear-uncompleted-routes/test-data/form-with-collections.json +0 -46
  386. package/dist/components/FormRenderer/clear-uncompleted-routes/test-data/form-with-components.json +0 -48
  387. package/dist/components/FormRenderer/helpers/clearOutUncompletedRoutes.js +0 -175
  388. package/dist/components/FormRenderer/helpers/clearOutUncompletedRoutes.test.js +0 -113
  389. package/dist/components/FormRenderer/helpers/deleteNodeByPath.js +0 -20
  390. package/dist/components/FormRenderer/helpers/deleteNodeByPath.test.js +0 -56
@@ -4,56 +4,56 @@ var _showComponent = _interopRequireDefault(require("./showComponent"));
4
4
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
5
5
  // Local imports
6
6
 
7
- describe('utils', function () {
8
- describe('Component', function () {
9
- describe('show', function () {
10
- it('should not show when there are no options', function () {
7
+ describe('utils', () => {
8
+ describe('Component', () => {
9
+ describe('show', () => {
10
+ it('should not show when there are no options', () => {
11
11
  expect((0, _showComponent.default)(null, null)).toBeFalsy();
12
12
  });
13
- it('should not show when hidden and disabled', function () {
13
+ it('should not show when hidden and disabled', () => {
14
14
  expect((0, _showComponent.default)({
15
15
  hidden: true,
16
16
  disabled: true
17
17
  }, null)).toBeFalsy();
18
18
  });
19
- it('should show when hidden but not disabled', function () {
19
+ it('should show when hidden but not disabled', () => {
20
20
  expect((0, _showComponent.default)({
21
21
  hidden: true
22
22
  }, null)).toBeTruthy();
23
23
  });
24
- it('should show when disabled but not hidden', function () {
24
+ it('should show when disabled but not hidden', () => {
25
25
  expect((0, _showComponent.default)({
26
26
  disabled: true
27
27
  }, null)).toBeTruthy();
28
28
  });
29
- it('should show when a single show_when condition is met', function () {
30
- var COMPONENT = {
29
+ it('should show when a single show_when condition is met', () => {
30
+ const COMPONENT = {
31
31
  show_when: {
32
32
  field: 'alpha',
33
33
  op: 'eq',
34
34
  value: 'bravo'
35
35
  }
36
36
  };
37
- var DATA = {
37
+ const DATA = {
38
38
  alpha: 'bravo'
39
39
  };
40
40
  expect((0, _showComponent.default)(COMPONENT, DATA)).toBeTruthy();
41
41
  });
42
- it('should not show when a single show_when condition is not met', function () {
43
- var COMPONENT = {
42
+ it('should not show when a single show_when condition is not met', () => {
43
+ const COMPONENT = {
44
44
  show_when: {
45
45
  field: 'alpha',
46
46
  op: 'eq',
47
47
  value: 'bravo'
48
48
  }
49
49
  };
50
- var DATA = {
50
+ const DATA = {
51
51
  alpha: 'charlie'
52
52
  };
53
53
  expect((0, _showComponent.default)(COMPONENT, DATA)).toBeFalsy();
54
54
  });
55
- it('should show when multiple show_when conditions are met', function () {
56
- var COMPONENT = {
55
+ it('should show when multiple show_when conditions are met', () => {
56
+ const COMPONENT = {
57
57
  show_when: [{
58
58
  field: 'alpha',
59
59
  op: 'eq',
@@ -64,14 +64,14 @@ describe('utils', function () {
64
64
  value: 'delta'
65
65
  }]
66
66
  };
67
- var DATA = {
67
+ const DATA = {
68
68
  alpha: 'bravo',
69
69
  charlie: 'delta'
70
70
  };
71
71
  expect((0, _showComponent.default)(COMPONENT, DATA)).toBeTruthy();
72
72
  });
73
- it('should not show when one of multiple show_when conditions is not met', function () {
74
- var COMPONENT = {
73
+ it('should not show when one of multiple show_when conditions is not met', () => {
74
+ const COMPONENT = {
75
75
  show_when: [{
76
76
  field: 'alpha',
77
77
  op: 'eq',
@@ -82,14 +82,14 @@ describe('utils', function () {
82
82
  value: 'delta'
83
83
  }]
84
84
  };
85
- var DATA = {
85
+ const DATA = {
86
86
  alpha: 'bravo',
87
87
  charlie: 'echo'
88
88
  };
89
89
  expect((0, _showComponent.default)(COMPONENT, DATA)).toBeFalsy();
90
90
  });
91
- it('SHOULD be shown when the component has multiple show_when conditions, with type "or" provided and ALL are matched', function () {
92
- var COMPONENT = {
91
+ it('SHOULD be shown when the component has multiple show_when conditions, with type "or" provided and ALL are matched', () => {
92
+ const COMPONENT = {
93
93
  show_when: {
94
94
  "type": "or",
95
95
  "conditions": [{
@@ -103,14 +103,14 @@ describe('utils', function () {
103
103
  }]
104
104
  }
105
105
  };
106
- var DATA = {
106
+ const DATA = {
107
107
  alpha: 'Alpha',
108
108
  bravo: 'Bravo'
109
109
  };
110
110
  expect((0, _showComponent.default)(COMPONENT, DATA)).toBeTruthy();
111
111
  });
112
- it('SHOULD be shown when the component has multiple show_when conditions, with type "or" provided and at least ONE is matched', function () {
113
- var COMPONENT = {
112
+ it('SHOULD be shown when the component has multiple show_when conditions, with type "or" provided and at least ONE is matched', () => {
113
+ const COMPONENT = {
114
114
  show_when: {
115
115
  "type": "or",
116
116
  "conditions": [{
@@ -124,14 +124,14 @@ describe('utils', function () {
124
124
  }]
125
125
  }
126
126
  };
127
- var DATA = {
127
+ const DATA = {
128
128
  alpha: 'Alpha',
129
129
  bravo: 'Bravo'
130
130
  };
131
131
  expect((0, _showComponent.default)(COMPONENT, DATA)).toBeTruthy();
132
132
  });
133
- it('should NOT be shown when the component has multiple show_when conditions, with type "or" provided and NONE are matched', function () {
134
- var COMPONENT = {
133
+ it('should NOT be shown when the component has multiple show_when conditions, with type "or" provided and NONE are matched', () => {
134
+ const COMPONENT = {
135
135
  show_when: {
136
136
  "type": "or",
137
137
  "conditions": [{
@@ -145,7 +145,7 @@ describe('utils', function () {
145
145
  }]
146
146
  }
147
147
  };
148
- var DATA = {
148
+ const DATA = {
149
149
  alpha: 'Alpha',
150
150
  bravo: 'Bravo'
151
151
  };
@@ -10,8 +10,8 @@ var _cleanAttributes = _interopRequireDefault(require("./cleanAttributes"));
10
10
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
11
11
  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); } // Global imports
12
12
  // Local imports
13
- var wrapInFormGroup = function wrapInFormGroup(config, children) {
14
- var attrs = (0, _cleanAttributes.default)(config, ['fieldId', 'displayMenu', 'showCharacterCount', 'readonly']);
13
+ const wrapInFormGroup = (config, children) => {
14
+ const attrs = (0, _cleanAttributes.default)(config, ['fieldId', 'displayMenu', 'showCharacterCount', 'readonly']);
15
15
  return /*#__PURE__*/_react.default.createElement(_copReactComponents.FormGroup, _extends({}, attrs, {
16
16
  onChange: null
17
17
  }), children);
@@ -8,7 +8,7 @@ var _meetsAllConditions = _interopRequireDefault(require("./meetsAllConditions")
8
8
  var _meetsCondition = _interopRequireDefault(require("./meetsCondition"));
9
9
  var _meetsOneCondition = _interopRequireDefault(require("./meetsOneCondition"));
10
10
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
11
- var Condition = {
11
+ const Condition = {
12
12
  meetsOne: _meetsOneCondition.default,
13
13
  meetsAll: _meetsAllConditions.default,
14
14
  met: _meetsCondition.default
@@ -13,15 +13,15 @@ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { de
13
13
 
14
14
  // Local imports
15
15
 
16
- var testConditions = function testConditions(conditions, data) {
17
- var type = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : 'and';
18
- var arr = Array.isArray(conditions) ? conditions : [conditions];
19
- var testCallback = function testCallback(condition) {
16
+ const testConditions = function (conditions, data) {
17
+ let type = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : 'and';
18
+ const arr = Array.isArray(conditions) ? conditions : [conditions];
19
+ const testCallback = condition => {
20
20
  if (Array.isArray(condition.conditions)) {
21
21
  return testConditions(condition.conditions, data, condition.type);
22
22
  }
23
- var field = condition.field.startsWith('interpolate::') ? _copReactComponents.Utils.interpolateString(condition.field, data).replace('interpolate::', '') : condition.field;
24
- var sourceDataValue = _Data.default.getSource(data, field);
23
+ const field = condition.field.startsWith('interpolate::') ? _copReactComponents.Utils.interpolateString(condition.field, data).replace('interpolate::', '') : condition.field;
24
+ const sourceDataValue = _Data.default.getSource(data, field);
25
25
  return (0, _meetsCondition.default)(condition, sourceDataValue, data);
26
26
  };
27
27
  return type === 'and' ? arr.every(testCallback) : arr.some(testCallback);
@@ -33,8 +33,8 @@ var testConditions = function testConditions(conditions, data) {
33
33
  * @param {object} data The top-level form data.
34
34
  * @returns Boolean true if all conditions are met; false otherwise.
35
35
  */
36
- var meetsAllConditions = function meetsAllConditions(options, data) {
37
- var conditions = (0, _setupConditions.default)(options);
36
+ const meetsAllConditions = (options, data) => {
37
+ const conditions = (0, _setupConditions.default)(options);
38
38
  if (conditions) {
39
39
  return testConditions(conditions, data);
40
40
  }
@@ -4,38 +4,38 @@ var _meetsAllConditions = _interopRequireDefault(require("./meetsAllConditions")
4
4
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
5
5
  // Local imports
6
6
 
7
- describe('utils.Condition.meetsAllConditions', function () {
8
- var DATA = {
7
+ describe('utils.Condition.meetsAllConditions', () => {
8
+ const DATA = {
9
9
  alpha: 'bravo',
10
10
  charlie: 'delta'
11
11
  };
12
- it('should evaluate to true when conditions are null', function () {
12
+ it('should evaluate to true when conditions are null', () => {
13
13
  expect((0, _meetsAllConditions.default)(null, DATA)).toBeTruthy();
14
14
  });
15
- it('should evaluate to true when conditions are undefined', function () {
15
+ it('should evaluate to true when conditions are undefined', () => {
16
16
  expect((0, _meetsAllConditions.default)(undefined, DATA)).toBeTruthy();
17
17
  });
18
- it('should evaluate to true when conditions is an empty array', function () {
18
+ it('should evaluate to true when conditions is an empty array', () => {
19
19
  expect((0, _meetsAllConditions.default)([], DATA)).toBeTruthy();
20
20
  });
21
- it('should evaluate to true when a single condition is met', function () {
22
- var CONDITION = {
21
+ it('should evaluate to true when a single condition is met', () => {
22
+ const CONDITION = {
23
23
  field: 'alpha',
24
24
  op: 'eq',
25
25
  value: 'bravo'
26
26
  };
27
27
  expect((0, _meetsAllConditions.default)(CONDITION, DATA)).toBeTruthy();
28
28
  });
29
- it('should evaluate to false when a single condition is not met', function () {
30
- var CONDITION = {
29
+ it('should evaluate to false when a single condition is not met', () => {
30
+ const CONDITION = {
31
31
  field: 'alpha',
32
32
  op: 'ne',
33
33
  value: 'bravo'
34
34
  };
35
35
  expect((0, _meetsAllConditions.default)(CONDITION, DATA)).toBeFalsy();
36
36
  });
37
- it('should evaluate to true when all conditions are met', function () {
38
- var CONDITIONS = [{
37
+ it('should evaluate to true when all conditions are met', () => {
38
+ const CONDITIONS = [{
39
39
  field: 'alpha',
40
40
  op: 'eq',
41
41
  value: 'bravo'
@@ -46,8 +46,8 @@ describe('utils.Condition.meetsAllConditions', function () {
46
46
  }];
47
47
  expect((0, _meetsAllConditions.default)(CONDITIONS, DATA)).toBeTruthy();
48
48
  });
49
- it('should evaluate to false when one of the conditions is not met', function () {
50
- var CONDITIONS = [{
49
+ it('should evaluate to false when one of the conditions is not met', () => {
50
+ const CONDITIONS = [{
51
51
  field: 'alpha',
52
52
  op: 'eq',
53
53
  value: 'bravo'
@@ -58,18 +58,18 @@ describe('utils.Condition.meetsAllConditions', function () {
58
58
  }];
59
59
  expect((0, _meetsAllConditions.default)(CONDITIONS, DATA)).toBeFalsy();
60
60
  });
61
- it('should handle nested conditions', function () {
62
- var VALID_DATA = {
61
+ it('should handle nested conditions', () => {
62
+ const VALID_DATA = {
63
63
  shouldBeAlpha: 'alpha',
64
64
  shouldBeBravo: 'bravo',
65
65
  canBeCharlieOrDelta: 'charlie'
66
66
  };
67
- var INVALID_DATA = {
67
+ const INVALID_DATA = {
68
68
  shouldBeAlpha: 'alpha',
69
69
  shouldBeBravo: 'bravo',
70
70
  canBeCharlieOrDelta: 'echo'
71
71
  };
72
- var CONDITIONS = [{
72
+ const CONDITIONS = [{
73
73
  type: 'or',
74
74
  conditions: [{
75
75
  field: 'canBeCharlieOrDelta',
@@ -92,12 +92,12 @@ describe('utils.Condition.meetsAllConditions', function () {
92
92
  expect((0, _meetsAllConditions.default)(CONDITIONS, VALID_DATA)).toBeTruthy();
93
93
  expect((0, _meetsAllConditions.default)(CONDITIONS, INVALID_DATA)).toBeFalsy();
94
94
  });
95
- it('should evaluate conditions correctly using interpolated fields', function () {
96
- var NEW_DATA = {
95
+ it('should evaluate conditions correctly using interpolated fields', () => {
96
+ const NEW_DATA = {
97
97
  role: 'admin',
98
98
  'admin_status': 'active'
99
99
  };
100
- var CONDITION = {
100
+ const CONDITION = {
101
101
  // eslint-disable-next-line no-template-curly-in-string
102
102
  field: 'interpolate::${role}_status',
103
103
  op: 'eq',
@@ -6,14 +6,15 @@ Object.defineProperty(exports, "__esModule", {
6
6
  exports.default = void 0;
7
7
  var _Data = _interopRequireDefault(require("../Data"));
8
8
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
9
- 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); } // Local imports
10
- var getComparisonValue = function getComparisonValue(condition, data) {
9
+ // Local imports
10
+
11
+ const getComparisonValue = (condition, data) => {
11
12
  var _condition$value;
12
13
  if (['in', 'nin', 'includesAllOf', '!includesAllOf'].includes(condition.op)) {
13
14
  return condition.values;
14
15
  }
15
16
  if (typeof condition.value === 'string' && (_condition$value = condition.value) !== null && _condition$value !== void 0 && _condition$value.startsWith('field::')) {
16
- var comparisonField = condition.value.replace('field::', '');
17
+ const comparisonField = condition.value.replace('field::', '');
17
18
  return _Data.default.getSource(data, comparisonField);
18
19
  }
19
20
  return condition.value;
@@ -31,9 +32,9 @@ var getComparisonValue = function getComparisonValue(condition, data) {
31
32
  *
32
33
  * @returns A boolean indicating whether the value meets the condition.
33
34
  */
34
- var meetsCondition = function meetsCondition(condition, value, data) {
35
- if (condition && _typeof(condition) === 'object') {
36
- var compare = getComparisonValue(condition, data);
35
+ const meetsCondition = (condition, value, data) => {
36
+ if (condition && typeof condition === 'object') {
37
+ const compare = getComparisonValue(condition, data);
37
38
  switch (condition.op) {
38
39
  case '=':
39
40
  case 'eq':
@@ -68,8 +69,8 @@ var meetsCondition = function meetsCondition(condition, value, data) {
68
69
  if (!value || !compare) {
69
70
  return false;
70
71
  }
71
- var valFloat = parseFloat(value.replace(',', ''));
72
- var compareFloat = parseFloat(compare.replace(',', ''));
72
+ const valFloat = parseFloat(value.replace(',', ''));
73
+ const compareFloat = parseFloat(compare.replace(',', ''));
73
74
  return valFloat < compareFloat;
74
75
  }
75
76
  case '>':
@@ -77,23 +78,21 @@ var meetsCondition = function meetsCondition(condition, value, data) {
77
78
  if (!value || !compare) {
78
79
  return false;
79
80
  }
80
- var _valFloat = parseFloat(value.replace(/,/g, ''));
81
- var _compareFloat = parseFloat(compare.replace(/,/g, ''));
82
- return _valFloat > _compareFloat;
81
+ const valFloat = parseFloat(value.replace(/,/g, ''));
82
+ const compareFloat = parseFloat(compare.replace(/,/g, ''));
83
+ return valFloat > compareFloat;
83
84
  }
84
85
  case 'contains':
85
86
  {
86
87
  return value === null || value === void 0 ? void 0 : value.toString().toLowerCase().includes(compare);
87
88
  // If no value is provided, the field cannot contain it, so it must fail the condition.
88
89
  }
89
-
90
90
  case '!contains':
91
91
  {
92
92
  var _value$toString$toLow;
93
93
  return (_value$toString$toLow = !(value !== null && value !== void 0 && value.toString().toLowerCase().includes(compare))) !== null && _value$toString$toLow !== void 0 ? _value$toString$toLow : true;
94
94
  // If no value is provided, the field cannot contain it, so it must meet the condition.
95
95
  }
96
-
97
96
  case 'includes':
98
97
  {
99
98
  if (Array.isArray(value)) {
@@ -108,15 +107,27 @@ var meetsCondition = function meetsCondition(condition, value, data) {
108
107
  }
109
108
  return true;
110
109
  }
110
+ case 'includesObjectProp':
111
+ {
112
+ if (Array.isArray(value)) {
113
+ return value.some(v => v[condition.key] === compare);
114
+ }
115
+ return false;
116
+ }
117
+ case '!includesObjectProp':
118
+ {
119
+ if (Array.isArray(value)) {
120
+ return !value.some(v => v[condition.key] === compare);
121
+ }
122
+ return true;
123
+ }
111
124
  case 'includesAllOf':
112
125
  {
113
126
  if (Array.isArray(value)) {
114
127
  // This will break if compare is not an array, meaning
115
128
  // the form JSON has been written incorrectly. Seemed silly
116
129
  // to try and hide the configuration error with type checking.
117
- return compare.every(function (entry) {
118
- return value.includes(entry);
119
- });
130
+ return compare.every(entry => value.includes(entry));
120
131
  }
121
132
  return false;
122
133
  }
@@ -126,9 +137,7 @@ var meetsCondition = function meetsCondition(condition, value, data) {
126
137
  // This will break if compare is not an array, meaning
127
138
  // the form JSON has been written incorrectly. Seemed silly
128
139
  // to try and hide the configuration error with type checking.
129
- return !compare.every(function (entry) {
130
- return value.includes(entry);
131
- });
140
+ return !compare.every(entry => value.includes(entry));
132
141
  }
133
142
  return true;
134
143
  }