@ukhomeoffice/cop-react-form-renderer 5.45.2-alpha → 5.48.1-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.
- package/dist/components/CheckYourAnswers/Answer.js +12 -12
- package/dist/components/CheckYourAnswers/Answer.test.js +127 -92
- package/dist/components/CheckYourAnswers/CheckYourAnswers.js +131 -101
- package/dist/components/CheckYourAnswers/CheckYourAnswers.test.js +769 -464
- package/dist/components/CollectionPage/CollectionPage.js +58 -66
- package/dist/components/CollectionPage/CollectionPage.test.js +342 -300
- package/dist/components/CollectionSummary/BannerStrip.js +12 -12
- package/dist/components/CollectionSummary/BannerStrip.test.js +59 -63
- package/dist/components/CollectionSummary/CollectionSummary.js +88 -61
- package/dist/components/CollectionSummary/CollectionSummary.test.js +96 -102
- package/dist/components/CollectionSummary/Confirmation.js +12 -14
- package/dist/components/CollectionSummary/Confirmation.test.js +63 -68
- package/dist/components/CollectionSummary/SummaryCard.js +148 -109
- package/dist/components/CollectionSummary/SummaryCard.scss +1 -1
- package/dist/components/CollectionSummary/SummaryCard.test.js +927 -905
- package/dist/components/CollectionSummary/SummaryCardValidationContext.js +29 -23
- package/dist/components/CollectionSummary/SummaryCardValidationContext.test.js +73 -61
- package/dist/components/FormComponent/Collection.js +107 -73
- package/dist/components/FormComponent/Collection.test.js +945 -809
- package/dist/components/FormComponent/Container.js +38 -40
- package/dist/components/FormComponent/Container.test.js +345 -314
- package/dist/components/FormComponent/FormComponent.js +70 -67
- package/dist/components/FormComponent/FormComponent.test.js +342 -284
- package/dist/components/FormComponent/helpers/addLabel.js +7 -4
- package/dist/components/FormComponent/helpers/getComponentDisabled.js +1 -1
- package/dist/components/FormComponent/helpers/getComponentDisabled.test.js +7 -7
- package/dist/components/FormComponent/helpers/getComponentError.js +5 -3
- package/dist/components/FormComponent/helpers/getComponentError.test.js +14 -14
- package/dist/components/FormComponent/helpers/getComponentFieldSet.js +4 -3
- package/dist/components/FormComponent/helpers/getComponentFieldSet.test.js +6 -6
- package/dist/components/FormComponent/helpers/index.js +4 -4
- package/dist/components/FormPage/FormPage.js +80 -65
- package/dist/components/FormPage/FormPage.test.js +163 -127
- package/dist/components/FormRenderer/FormRenderer.js +181 -144
- package/dist/components/FormRenderer/FormRenderer.test.js +1115 -730
- package/dist/components/FormRenderer/handlers/cyaAction.js +2 -2
- package/dist/components/FormRenderer/handlers/getPageId.js +3 -1
- package/dist/components/FormRenderer/handlers/getPageId.test.js +14 -14
- package/dist/components/FormRenderer/handlers/handlers.test.js +32 -32
- package/dist/components/FormRenderer/handlers/index.js +1 -1
- package/dist/components/FormRenderer/handlers/navigate.js +3 -3
- package/dist/components/FormRenderer/handlers/submissionError.js +1 -1
- package/dist/components/FormRenderer/helpers/canActionProceed.js +5 -1
- package/dist/components/FormRenderer/helpers/canActionProceed.test.js +47 -11
- package/dist/components/FormRenderer/helpers/canCYASubmit.js +3 -1
- package/dist/components/FormRenderer/helpers/canCYASubmit.test.js +20 -16
- package/dist/components/FormRenderer/helpers/cleanHiddenNestedData.js +22 -17
- package/dist/components/FormRenderer/helpers/cleanHiddenNestedData.test.js +16 -16
- package/dist/components/FormRenderer/helpers/getCYA.js +5 -3
- package/dist/components/FormRenderer/helpers/getCYA.test.js +11 -11
- package/dist/components/FormRenderer/helpers/getFormState.js +7 -5
- package/dist/components/FormRenderer/helpers/getFormState.test.js +10 -10
- package/dist/components/FormRenderer/helpers/getNextPageId.js +24 -13
- package/dist/components/FormRenderer/helpers/getNextPageId.test.js +67 -67
- package/dist/components/FormRenderer/helpers/getPage.js +4 -2
- package/dist/components/FormRenderer/helpers/getPage.test.js +11 -11
- package/dist/components/FormRenderer/helpers/getRelevantPages.js +9 -7
- package/dist/components/FormRenderer/helpers/getRelevantPages.test.js +14 -14
- package/dist/components/FormRenderer/helpers/getSubmissionStatus.js +5 -5
- package/dist/components/FormRenderer/helpers/getSubmissionStatus.test.js +91 -97
- package/dist/components/FormRenderer/helpers/getUpdatedSectionStates.js +60 -62
- package/dist/components/FormRenderer/helpers/getUpdatedSectionStates.test.js +73 -71
- package/dist/components/FormRenderer/helpers/index.js +1 -1
- package/dist/components/FormRenderer/onCYAAction.js +51 -59
- package/dist/components/FormRenderer/onCYAAction.test.js +152 -164
- package/dist/components/FormRenderer/onPageAction.js +40 -44
- package/dist/components/FormRenderer/onPageAction.test.js +206 -223
- package/dist/components/FormRenderer/onTaskAction.js +13 -9
- package/dist/components/FormRenderer/onTaskAction.test.js +88 -93
- package/dist/components/PageActions/ActionButton.js +15 -12
- package/dist/components/PageActions/ActionButton.test.js +78 -56
- package/dist/components/PageActions/PageActions.js +10 -10
- package/dist/components/PageActions/PageActions.test.js +115 -86
- package/dist/components/SummaryList/GroupAction.js +17 -9
- package/dist/components/SummaryList/GroupAction.test.js +33 -37
- package/dist/components/SummaryList/RowAction.js +16 -11
- package/dist/components/SummaryList/RowAction.test.js +33 -37
- package/dist/components/SummaryList/SummaryList.js +26 -21
- package/dist/components/SummaryList/SummaryList.test.js +166 -143
- package/dist/components/SummaryList/SummaryListHeadingRow.js +4 -6
- package/dist/components/SummaryList/SummaryListRow.js +4 -6
- package/dist/components/SummaryList/SummaryListTitleRow.js +3 -5
- package/dist/components/SummaryList/helpers/getGroupActionAttributes.js +5 -3
- package/dist/components/SummaryList/helpers/getGroupActionAttributes.test.js +22 -22
- package/dist/components/SummaryList/helpers/getRowActionAttributes.js +5 -3
- package/dist/components/SummaryList/helpers/getRowActionAttributes.test.js +22 -22
- package/dist/components/SummaryList/helpers/index.js +1 -1
- package/dist/components/TaskList/Task.js +29 -19
- package/dist/components/TaskList/Task.test.js +76 -83
- package/dist/components/TaskList/TaskList.js +71 -45
- package/dist/components/TaskList/TaskList.test.js +111 -113
- package/dist/components/TaskList/TaskState.js +5 -7
- package/dist/components/TaskList/TaskState.test.js +45 -52
- package/dist/components/index.js +7 -7
- package/dist/context/HooksContext/HooksContext.js +79 -58
- package/dist/context/HooksContext/HooksContext.test.js +35 -26
- package/dist/context/HooksContext/index.js +4 -3
- package/dist/context/ValidationContext/ValidationContext.js +72 -32
- package/dist/context/ValidationContext/ValidationContext.test.js +59 -47
- package/dist/context/ValidationContext/index.js +4 -3
- package/dist/context/index.js +2 -2
- package/dist/hooks/index.js +10 -9
- package/dist/hooks/useAxios.js +40 -14
- package/dist/hooks/useGetRequest.js +97 -61
- package/dist/hooks/useHooks.js +3 -1
- package/dist/hooks/useRefData.js +39 -26
- package/dist/hooks/useValidation.js +3 -1
- package/dist/index.js +14 -13
- package/dist/models/CollectionLabels.js +1 -1
- package/dist/models/ComponentTypes.js +25 -25
- package/dist/models/EventTypes.js +4 -4
- package/dist/models/FormPages.js +4 -4
- package/dist/models/FormTypes.js +8 -8
- package/dist/models/HubFormats.js +3 -3
- package/dist/models/PageAction.js +38 -44
- package/dist/models/TaskStates.js +28 -30
- package/dist/models/index.js +9 -9
- package/dist/setupTests.js +31 -30
- package/dist/utils/CheckYourAnswers/getCYAAction.js +5 -5
- package/dist/utils/CheckYourAnswers/getCYAAction.test.js +54 -52
- package/dist/utils/CheckYourAnswers/getCYACollectionChangeAction.js +25 -15
- package/dist/utils/CheckYourAnswers/getCYACollectionChangeAction.test.js +35 -33
- package/dist/utils/CheckYourAnswers/getCYACollectionDeleteAction.js +31 -17
- package/dist/utils/CheckYourAnswers/getCYACollectionDeleteAction.test.js +44 -42
- package/dist/utils/CheckYourAnswers/getCYARow.js +6 -6
- package/dist/utils/CheckYourAnswers/getCYARow.test.js +86 -86
- package/dist/utils/CheckYourAnswers/getCYARowForGroup.js +24 -18
- package/dist/utils/CheckYourAnswers/getCYARowForGroup.test.js +16 -15
- package/dist/utils/CheckYourAnswers/getCYARowsForCollection.js +36 -33
- package/dist/utils/CheckYourAnswers/getCYARowsForCollection.test.js +60 -58
- package/dist/utils/CheckYourAnswers/getCYARowsForCollectionPage.js +88 -79
- package/dist/utils/CheckYourAnswers/getCYARowsForCollectionPage.test.js +124 -146
- package/dist/utils/CheckYourAnswers/getCYARowsForContainer.js +20 -25
- package/dist/utils/CheckYourAnswers/getCYARowsForContainer.test.js +97 -103
- package/dist/utils/CheckYourAnswers/getCYARowsForPage.js +18 -13
- package/dist/utils/CheckYourAnswers/getCYARowsForPage.test.js +76 -70
- package/dist/utils/CheckYourAnswers/index.js +1 -1
- package/dist/utils/CheckYourAnswers/showComponentCYA.js +4 -4
- package/dist/utils/CheckYourAnswers/showComponentCYA.test.js +24 -24
- package/dist/utils/CollectionPage/addCollectionPageEntry.js +1 -1
- package/dist/utils/CollectionPage/addCollectionPageEntry.test.js +5 -5
- package/dist/utils/CollectionPage/duplicateCollectionPageActiveEntry.js +2 -2
- package/dist/utils/CollectionPage/duplicateCollectionPageActiveEntry.test.js +17 -17
- package/dist/utils/CollectionPage/duplicateCollectionPageEntry.js +18 -9
- package/dist/utils/CollectionPage/duplicateCollectionPageEntry.test.js +22 -27
- package/dist/utils/CollectionPage/getCollectionPageActiveId.js +2 -2
- package/dist/utils/CollectionPage/getCollectionPageActiveId.test.js +10 -10
- package/dist/utils/CollectionPage/getCollectionPageActiveIndex.js +11 -7
- package/dist/utils/CollectionPage/getCollectionPageActiveIndex.test.js +22 -22
- package/dist/utils/CollectionPage/getCollectionPageData.js +12 -8
- package/dist/utils/CollectionPage/getCollectionPageData.test.js +19 -19
- package/dist/utils/CollectionPage/getQuickEditPage.js +19 -19
- package/dist/utils/CollectionPage/getQuickEditPage.test.js +16 -12
- package/dist/utils/CollectionPage/index.js +1 -1
- package/dist/utils/CollectionPage/mergeCollectionPages.js +30 -29
- package/dist/utils/CollectionPage/mergeCollectionPages.test.js +17 -17
- package/dist/utils/CollectionPage/removeCollectionPageEntry.js +6 -4
- package/dist/utils/CollectionPage/removeCollectionPageEntry.test.js +10 -10
- package/dist/utils/CollectionPage/setCollectionPageData.js +12 -8
- package/dist/utils/CollectionPage/setCollectionPageData.test.js +17 -17
- package/dist/utils/Component/addShowWhen.js +8 -4
- package/dist/utils/Component/addShowWhen.test.js +37 -37
- package/dist/utils/Component/applyToComponentTree.js +18 -18
- package/dist/utils/Component/applyToComponentTree.test.js +32 -27
- package/dist/utils/Component/cleanAttributes.js +13 -10
- package/dist/utils/Component/cleanAttributes.test.js +18 -17
- package/dist/utils/Component/elevateNestedComponents.js +5 -5
- package/dist/utils/Component/elevateNestedComponents.test.js +30 -30
- package/dist/utils/Component/getComponent.js +94 -88
- package/dist/utils/Component/getComponentTests/getComponent.autocomplete.test.js +17 -18
- package/dist/utils/Component/getComponentTests/getComponent.calculation.test.js +59 -46
- package/dist/utils/Component/getComponentTests/getComponent.checkboxes.test.js +48 -39
- package/dist/utils/Component/getComponentTests/getComponent.date.test.js +33 -23
- package/dist/utils/Component/getComponentTests/getComponent.details.test.js +18 -20
- package/dist/utils/Component/getComponentTests/getComponent.email.test.js +22 -17
- package/dist/utils/Component/getComponentTests/getComponent.file.test.js +25 -20
- package/dist/utils/Component/getComponentTests/getComponent.heading.test.js +9 -10
- package/dist/utils/Component/getComponentTests/getComponent.html.test.js +15 -17
- package/dist/utils/Component/getComponentTests/getComponent.insetText.test.js +8 -9
- package/dist/utils/Component/getComponentTests/getComponent.list.test.js +15 -17
- package/dist/utils/Component/getComponentTests/getComponent.multifile.test.js +26 -22
- package/dist/utils/Component/getComponentTests/getComponent.nested.test.js +175 -155
- package/dist/utils/Component/getComponentTests/getComponent.paragraph.test.js +15 -17
- package/dist/utils/Component/getComponentTests/getComponent.phoneNumber.test.js +22 -17
- package/dist/utils/Component/getComponentTests/getComponent.radios.test.js +70 -57
- package/dist/utils/Component/getComponentTests/getComponent.select.test.js +22 -17
- package/dist/utils/Component/getComponentTests/getComponent.text.test.js +22 -17
- package/dist/utils/Component/getComponentTests/getComponent.textArea.test.js +38 -31
- package/dist/utils/Component/getComponentTests/getComponent.time.test.js +29 -20
- package/dist/utils/Component/getComponentTests/getComponent.unknown.test.js +2 -2
- package/dist/utils/Component/getComponentTests/getComponent.warningText.test.js +8 -9
- package/dist/utils/Component/getDefaultValue.js +8 -6
- package/dist/utils/Component/getDefaultValue.test.js +12 -12
- package/dist/utils/Component/getDefaultValueFromConfig.js +21 -22
- package/dist/utils/Component/getDefaultValueFromConfig.test.js +31 -31
- package/dist/utils/Component/index.js +1 -1
- package/dist/utils/Component/isEditable.js +4 -2
- package/dist/utils/Component/isEditable.test.js +15 -14
- package/dist/utils/Component/optionIsSelected.js +1 -1
- package/dist/utils/Component/optionIsSelected.test.js +9 -9
- package/dist/utils/Component/setupContainerComponentsPath.js +29 -27
- package/dist/utils/Component/setupContainerComponentsPath.test.js +11 -11
- package/dist/utils/Component/showComponent.js +1 -1
- package/dist/utils/Component/showComponent.test.js +28 -28
- package/dist/utils/Component/wrapInFormGroup.js +2 -2
- package/dist/utils/Condition/index.js +1 -1
- package/dist/utils/Condition/meetsAllConditions.js +7 -7
- package/dist/utils/Condition/meetsAllConditions.test.js +17 -17
- package/dist/utils/Condition/meetsCondition.js +17 -14
- package/dist/utils/Condition/meetsCondition.test.js +376 -376
- package/dist/utils/Condition/meetsOneCondition.js +5 -5
- package/dist/utils/Condition/meetsOneCondition.test.js +16 -16
- package/dist/utils/Condition/setupConditions.js +18 -13
- package/dist/utils/Condition/setupConditions.test.js +7 -7
- package/dist/utils/Container/getEditableComponents.js +5 -3
- package/dist/utils/Container/getEditableComponents.test.js +45 -43
- package/dist/utils/Container/index.js +1 -1
- package/dist/utils/Container/setupNesting.js +20 -16
- package/dist/utils/Container/setupNesting.test.js +30 -27
- package/dist/utils/Container/showContainer.js +7 -3
- package/dist/utils/Container/showContainer.test.js +30 -30
- package/dist/utils/Data/applyFormula.js +48 -38
- package/dist/utils/Data/applyFormula.test.js +20 -20
- package/dist/utils/Data/getAutocompleteSource.js +26 -18
- package/dist/utils/Data/getAutocompleteSource.test.js +86 -80
- package/dist/utils/Data/getDataPath.js +28 -18
- package/dist/utils/Data/getDataPath.test.js +12 -12
- package/dist/utils/Data/getOptions.js +25 -19
- package/dist/utils/Data/getOptions.test.js +20 -20
- package/dist/utils/Data/getSourceData.js +19 -6
- package/dist/utils/Data/getSourceData.test.js +80 -84
- package/dist/utils/Data/index.js +1 -1
- package/dist/utils/Data/refDataToOptions.js +13 -10
- package/dist/utils/Data/refDataToOptions.test.js +19 -19
- package/dist/utils/Data/setDataItem.js +8 -7
- package/dist/utils/Data/setDataItem.test.js +37 -37
- package/dist/utils/Data/setupFormData.js +21 -13
- package/dist/utils/Data/setupFormData.test.js +50 -51
- package/dist/utils/Data/setupRefDataUrlForComponent.js +26 -20
- package/dist/utils/Data/setupRefDataUrlForComponent.test.js +24 -24
- package/dist/utils/FormPage/applyConditionalProperties.js +9 -5
- package/dist/utils/FormPage/applyConditionalProperties.test.js +18 -15
- package/dist/utils/FormPage/getFormPage.js +16 -15
- package/dist/utils/FormPage/getFormPage.test.js +46 -47
- package/dist/utils/FormPage/getFormPages.js +12 -7
- package/dist/utils/FormPage/getFormPages.test.js +23 -20
- package/dist/utils/FormPage/getPageActions.js +15 -9
- package/dist/utils/FormPage/getPageActions.test.js +32 -32
- package/dist/utils/FormPage/getPageTitle.js +2 -2
- package/dist/utils/FormPage/getPageTitle.test.js +22 -22
- package/dist/utils/FormPage/getParagraphFromText.js +7 -5
- package/dist/utils/FormPage/getParagraphFromText.test.js +6 -6
- package/dist/utils/FormPage/index.js +1 -1
- package/dist/utils/FormPage/showFormPage.js +7 -3
- package/dist/utils/FormPage/showFormPage.test.js +32 -32
- package/dist/utils/FormPage/showFormPageCYA.js +1 -1
- package/dist/utils/FormPage/showFormPageCYA.test.js +8 -8
- package/dist/utils/FormPage/useComponent.js +28 -21
- package/dist/utils/FormPage/useComponent.test.js +79 -78
- package/dist/utils/Format/formatData.js +1 -1
- package/dist/utils/Format/formatData.test.js +18 -18
- package/dist/utils/Format/formatDataForComponent.js +6 -5
- package/dist/utils/Format/formatDataForComponent.test.js +77 -50
- package/dist/utils/Format/formatDataForForm.js +8 -6
- package/dist/utils/Format/formatDataForForm.test.js +15 -13
- package/dist/utils/Format/formatDataForPage.js +5 -4
- package/dist/utils/Format/formatDataForPage.test.js +23 -20
- package/dist/utils/Format/index.js +1 -1
- package/dist/utils/Hub/getFormHub.js +1 -1
- package/dist/utils/Hub/getFormHub.test.js +31 -28
- package/dist/utils/Hub/index.js +1 -1
- package/dist/utils/Meta/constants.js +2 -2
- package/dist/utils/Meta/documents/getDocuments.js +1 -1
- package/dist/utils/Meta/documents/getDocuments.test.js +16 -24
- package/dist/utils/Meta/documents/index.js +1 -1
- package/dist/utils/Meta/documents/setDocumentsForField.js +16 -14
- package/dist/utils/Meta/documents/setDocumentsForField.test.js +34 -68
- package/dist/utils/Meta/index.js +1 -1
- package/dist/utils/Operate/checkValueIsTruthy.js +2 -2
- package/dist/utils/Operate/checkValueIsTruthy.test.js +16 -16
- package/dist/utils/Operate/getFirstOf.js +5 -5
- package/dist/utils/Operate/getFirstOf.test.js +31 -31
- package/dist/utils/Operate/getIndexOfMatchingValueIn.js +10 -10
- package/dist/utils/Operate/getIndexOfMatchingValueIn.test.js +46 -46
- package/dist/utils/Operate/index.js +1 -1
- package/dist/utils/Operate/persistValueInFormData.js +3 -3
- package/dist/utils/Operate/persistValueInFormData.test.js +20 -22
- package/dist/utils/Operate/runPageOperations.js +7 -7
- package/dist/utils/Operate/runPageOperations.test.js +36 -35
- package/dist/utils/Operate/setValueInFormData.js +2 -2
- package/dist/utils/Operate/setValueInFormData.test.js +16 -16
- package/dist/utils/Operate/shouldRun.js +6 -6
- package/dist/utils/Operate/shouldRun.test.js +26 -21
- package/dist/utils/Validate/additional/conditionallyRequired.js +4 -4
- package/dist/utils/Validate/additional/conditionallyRequired.test.js +18 -18
- package/dist/utils/Validate/additional/index.js +10 -8
- package/dist/utils/Validate/additional/index.test.js +12 -12
- package/dist/utils/Validate/additional/mustBeAfter.js +2 -2
- package/dist/utils/Validate/additional/mustBeAfter.test.js +40 -40
- package/dist/utils/Validate/additional/mustBeBefore.js +2 -2
- package/dist/utils/Validate/additional/mustBeBefore.test.js +28 -28
- package/dist/utils/Validate/additional/mustBeEarlierDateTime.js +11 -7
- package/dist/utils/Validate/additional/mustBeEarlierDateTime.test.js +41 -37
- package/dist/utils/Validate/additional/mustBeGreaterThan.js +2 -2
- package/dist/utils/Validate/additional/mustBeGreaterThan.test.js +18 -18
- package/dist/utils/Validate/additional/mustBeInTheFuture.js +2 -2
- package/dist/utils/Validate/additional/mustBeInTheFuture.test.js +12 -12
- package/dist/utils/Validate/additional/mustBeInThePast.js +3 -3
- package/dist/utils/Validate/additional/mustBeInThePast.test.js +12 -12
- package/dist/utils/Validate/additional/mustBeLessThan.js +2 -2
- package/dist/utils/Validate/additional/mustBeLessThan.test.js +17 -17
- package/dist/utils/Validate/additional/mustBeLongerThan.js +1 -1
- package/dist/utils/Validate/additional/mustBeLongerThan.test.js +16 -16
- package/dist/utils/Validate/additional/mustBeNumbersOnly.js +2 -2
- package/dist/utils/Validate/additional/mustBeNumbersOnly.test.js +20 -20
- package/dist/utils/Validate/additional/mustBeShorterThan.js +1 -1
- package/dist/utils/Validate/additional/mustBeShorterThan.test.js +16 -16
- package/dist/utils/Validate/additional/mustBeUniqueInCollection.js +35 -0
- package/dist/utils/Validate/additional/mustBeUniqueInCollection.test.js +127 -0
- package/dist/utils/Validate/additional/mustEnterAtLeastOne.js +2 -2
- package/dist/utils/Validate/additional/mustEnterAtLeastOne.test.js +16 -14
- package/dist/utils/Validate/additional/mustHaveLessThanDecimalPlaces.js +1 -1
- package/dist/utils/Validate/additional/mustHaveLessThanDecimalPlaces.test.js +12 -12
- package/dist/utils/Validate/additional/mustNotContainSql.js +4 -3
- package/dist/utils/Validate/additional/mustNotContainSql.test.js +14 -14
- package/dist/utils/Validate/additional/mustSelectOnlyOne.js +2 -2
- package/dist/utils/Validate/additional/mustSelectOnlyOne.test.js +26 -28
- package/dist/utils/Validate/additional/utils.js +22 -9
- package/dist/utils/Validate/index.js +1 -1
- package/dist/utils/Validate/validateCollection.js +25 -19
- package/dist/utils/Validate/validateCollection.test.js +66 -74
- package/dist/utils/Validate/validateComponent.js +16 -18
- package/dist/utils/Validate/validateComponent.test.js +146 -167
- package/dist/utils/Validate/validateContainer.js +19 -14
- package/dist/utils/Validate/validateContainer.test.js +45 -49
- package/dist/utils/Validate/validateDate.js +17 -11
- package/dist/utils/Validate/validateDate.test.js +29 -28
- package/dist/utils/Validate/validateEmail.js +8 -6
- package/dist/utils/Validate/validateEmail.test.js +25 -25
- package/dist/utils/Validate/validateMultifile.js +7 -5
- package/dist/utils/Validate/validateMultifile.test.js +18 -17
- package/dist/utils/Validate/validatePage.js +18 -17
- package/dist/utils/Validate/validatePage.test.js +182 -185
- package/dist/utils/Validate/validateRegex.js +5 -3
- package/dist/utils/Validate/validateRegex.test.js +14 -14
- package/dist/utils/Validate/validateRequired.js +6 -4
- package/dist/utils/Validate/validateRequired.test.js +18 -18
- package/dist/utils/Validate/validateTextArea.js +6 -4
- package/dist/utils/Validate/validateTextArea.test.js +20 -20
- package/dist/utils/Validate/validateTime.js +14 -7
- package/dist/utils/Validate/validateTime.test.js +14 -14
- package/dist/utils/index.js +9 -7
- package/package.json +2 -2
|
@@ -2,25 +2,25 @@
|
|
|
2
2
|
|
|
3
3
|
var _getRowActionAttributes = _interopRequireDefault(require("./getRowActionAttributes"));
|
|
4
4
|
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
5
|
-
describe('components', ()
|
|
6
|
-
describe('SummaryList', ()
|
|
7
|
-
describe('helpers', ()
|
|
8
|
-
describe('getRowActionAttributes', ()
|
|
9
|
-
it('should handle a null row', ()
|
|
5
|
+
describe('components', function () {
|
|
6
|
+
describe('SummaryList', function () {
|
|
7
|
+
describe('helpers', function () {
|
|
8
|
+
describe('getRowActionAttributes', function () {
|
|
9
|
+
it('should handle a null row', function () {
|
|
10
10
|
expect((0, _getRowActionAttributes.default)(null)).toEqual({});
|
|
11
11
|
});
|
|
12
|
-
it('should handle a row without an action', ()
|
|
12
|
+
it('should handle a row without an action', function () {
|
|
13
13
|
expect((0, _getRowActionAttributes.default)({})).toEqual({});
|
|
14
14
|
});
|
|
15
|
-
it('should handle a row with an empty action', ()
|
|
16
|
-
|
|
15
|
+
it('should handle a row with an empty action', function () {
|
|
16
|
+
var ROW = {
|
|
17
17
|
action: {}
|
|
18
18
|
};
|
|
19
19
|
expect((0, _getRowActionAttributes.default)(ROW)).toEqual({});
|
|
20
20
|
});
|
|
21
|
-
it('should handle a row with a page', ()
|
|
22
|
-
|
|
23
|
-
|
|
21
|
+
it('should handle a row with a page', function () {
|
|
22
|
+
var PAGE = 'alpha';
|
|
23
|
+
var ROW = {
|
|
24
24
|
action: {
|
|
25
25
|
page: PAGE
|
|
26
26
|
}
|
|
@@ -29,36 +29,36 @@ describe('components', () => {
|
|
|
29
29
|
href: "/".concat(PAGE)
|
|
30
30
|
});
|
|
31
31
|
});
|
|
32
|
-
it('should handle a row with an onAction function', ()
|
|
33
|
-
|
|
34
|
-
|
|
32
|
+
it('should handle a row with an onAction function', function () {
|
|
33
|
+
var ON_ACTION_CALLS = [];
|
|
34
|
+
var ON_ACTION = function ON_ACTION(row) {
|
|
35
35
|
ON_ACTION_CALLS.push(row);
|
|
36
36
|
};
|
|
37
|
-
|
|
37
|
+
var ROW = {
|
|
38
38
|
action: {
|
|
39
39
|
onAction: ON_ACTION
|
|
40
40
|
}
|
|
41
41
|
};
|
|
42
|
-
|
|
42
|
+
var ATTRS = (0, _getRowActionAttributes.default)(ROW);
|
|
43
43
|
expect(ATTRS.onClick).toBeDefined();
|
|
44
44
|
expect(ATTRS.href).not.toBeDefined();
|
|
45
45
|
ATTRS.onClick();
|
|
46
46
|
expect(ON_ACTION_CALLS.length).toEqual(1);
|
|
47
47
|
expect(ON_ACTION_CALLS[0]).toEqual(ROW);
|
|
48
48
|
});
|
|
49
|
-
it('should favour onAction over href', ()
|
|
50
|
-
|
|
51
|
-
|
|
49
|
+
it('should favour onAction over href', function () {
|
|
50
|
+
var ON_ACTION_CALLS = [];
|
|
51
|
+
var ON_ACTION = function ON_ACTION(row) {
|
|
52
52
|
ON_ACTION_CALLS.push(row);
|
|
53
53
|
};
|
|
54
|
-
|
|
55
|
-
|
|
54
|
+
var HREF = 'http://alpha.homeoffice.gov.uk';
|
|
55
|
+
var ROW = {
|
|
56
56
|
action: {
|
|
57
57
|
href: HREF,
|
|
58
58
|
onAction: ON_ACTION
|
|
59
59
|
}
|
|
60
60
|
};
|
|
61
|
-
|
|
61
|
+
var ATTRS = (0, _getRowActionAttributes.default)(ROW);
|
|
62
62
|
expect(ATTRS.onClick).toBeDefined();
|
|
63
63
|
expect(ATTRS.href).not.toBeDefined();
|
|
64
64
|
ATTRS.onClick();
|
|
@@ -1,5 +1,6 @@
|
|
|
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
|
Object.defineProperty(exports, "__esModule", {
|
|
4
5
|
value: true
|
|
5
6
|
});
|
|
@@ -9,36 +10,45 @@ var _react = _interopRequireWildcard(require("react"));
|
|
|
9
10
|
var _copReactComponents = require("@ukhomeoffice/cop-react-components");
|
|
10
11
|
var _models = require("../../models");
|
|
11
12
|
var _TaskState = _interopRequireDefault(require("./TaskState"));
|
|
12
|
-
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); }
|
|
13
|
-
function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" !=
|
|
13
|
+
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); }
|
|
14
|
+
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; }
|
|
14
15
|
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
15
|
-
|
|
16
|
-
|
|
16
|
+
function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }
|
|
17
|
+
function _nonIterableRest() { throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
|
|
18
|
+
function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }
|
|
19
|
+
function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) arr2[i] = arr[i]; return arr2; }
|
|
20
|
+
function _iterableToArrayLimit(r, l) { var t = null == r ? null : "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"]; if (null != t) { var e, n, i, u, a = [], f = !0, o = !1; try { if (i = (t = t.call(r)).next, 0 === l) { if (Object(t) !== t) return; f = !1; } else for (; !(f = (e = i.call(t)).done) && (a.push(e.value), a.length !== l); f = !0); } catch (r) { o = !0, n = r; } finally { try { if (!f && null != t.return && (u = t.return(), Object(u) !== u)) return; } finally { if (o) throw n; } } return a; } }
|
|
21
|
+
function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; } // Global Imports
|
|
17
22
|
// Local imports
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
23
|
+
var DEFAULT_CLASS = exports.DEFAULT_CLASS = 'hods-task-list';
|
|
24
|
+
var Task = function Task(_ref) {
|
|
25
|
+
var task = _ref.task,
|
|
26
|
+
_onClick = _ref.onClick;
|
|
27
|
+
var classes = _copReactComponents.Utils.classBuilder(DEFAULT_CLASS, undefined, undefined);
|
|
28
|
+
var _useState = (0, _react.useState)(task.state !== _models.TaskStates.TYPES.CANNOT_START_YET),
|
|
29
|
+
_useState2 = _slicedToArray(_useState, 2),
|
|
30
|
+
linkActive = _useState2[0],
|
|
31
|
+
setLinkActive = _useState2[1];
|
|
32
|
+
var _useState3 = (0, _react.useState)(task.state),
|
|
33
|
+
_useState4 = _slicedToArray(_useState3, 2),
|
|
34
|
+
currentState = _useState4[0],
|
|
35
|
+
setCurrentState = _useState4[1];
|
|
36
|
+
(0, _react.useEffect)(function () {
|
|
29
37
|
setLinkActive(task.state !== _models.TaskStates.TYPES.CANNOT_START_YET);
|
|
30
38
|
setCurrentState(task.state);
|
|
31
39
|
}, [task.state, setLinkActive, setCurrentState]);
|
|
32
|
-
|
|
40
|
+
var displayName = task.displayName || task.name;
|
|
33
41
|
return /*#__PURE__*/_react.default.createElement("li", {
|
|
34
42
|
className: classes('item')
|
|
35
43
|
}, /*#__PURE__*/_react.default.createElement("span", {
|
|
36
44
|
className: classes('task-name')
|
|
37
45
|
}, linkActive ? /*#__PURE__*/_react.default.createElement(_copReactComponents.Link, {
|
|
38
|
-
onClick:
|
|
39
|
-
|
|
46
|
+
onClick: function onClick() {
|
|
47
|
+
return _onClick(task);
|
|
48
|
+
},
|
|
49
|
+
onKeyPress: function onKeyPress(event) {
|
|
40
50
|
if (event.key === 'Enter') {
|
|
41
|
-
|
|
51
|
+
_onClick(task);
|
|
42
52
|
}
|
|
43
53
|
},
|
|
44
54
|
tabIndex: "0"
|
|
@@ -9,128 +9,122 @@ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { de
|
|
|
9
9
|
|
|
10
10
|
// Local imports
|
|
11
11
|
|
|
12
|
-
describe('components', ()
|
|
13
|
-
describe('TaskList.Task', ()
|
|
14
|
-
it('should render a task', ()
|
|
15
|
-
|
|
16
|
-
|
|
12
|
+
describe('components', function () {
|
|
13
|
+
describe('TaskList.Task', function () {
|
|
14
|
+
it('should render a task', function () {
|
|
15
|
+
var STATE = _models.TaskStates.TYPES.COMPLETE;
|
|
16
|
+
var TASK = {
|
|
17
17
|
name: 'taskName',
|
|
18
18
|
pages: ['pageName'],
|
|
19
19
|
state: STATE
|
|
20
20
|
};
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
}));
|
|
21
|
+
var ON_CLICK = function ON_CLICK() {};
|
|
22
|
+
var _render = (0, _react.render)( /*#__PURE__*/_react2.default.createElement(_Task.default, {
|
|
23
|
+
task: TASK,
|
|
24
|
+
onClick: ON_CLICK
|
|
25
|
+
})),
|
|
26
|
+
container = _render.container;
|
|
28
27
|
expect(container.childNodes.length).toEqual(1);
|
|
29
28
|
expect(container.childNodes[0].classList).toContain('hods-task-list__item');
|
|
30
|
-
|
|
31
|
-
|
|
29
|
+
var span = container.childNodes[0].childNodes[0];
|
|
30
|
+
var state = container.childNodes[0].childNodes[1];
|
|
32
31
|
expect(span.classList).toContain('hods-task-list__task-name');
|
|
33
32
|
expect(span.textContent).toEqual(TASK.name);
|
|
34
33
|
expect(state.textContent).toEqual('Completed');
|
|
35
34
|
});
|
|
36
|
-
it('should render a task with a displayName', ()
|
|
37
|
-
|
|
38
|
-
|
|
35
|
+
it('should render a task with a displayName', function () {
|
|
36
|
+
var STATE = _models.TaskStates.TYPES.COMPLETE;
|
|
37
|
+
var TASK = {
|
|
39
38
|
name: 'taskName',
|
|
40
39
|
displayName: 'Alpha Bravo',
|
|
41
40
|
pages: ['pageName'],
|
|
42
41
|
state: STATE
|
|
43
42
|
};
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
}));
|
|
43
|
+
var ON_CLICK = function ON_CLICK() {};
|
|
44
|
+
var _render2 = (0, _react.render)( /*#__PURE__*/_react2.default.createElement(_Task.default, {
|
|
45
|
+
task: TASK,
|
|
46
|
+
onClick: ON_CLICK
|
|
47
|
+
})),
|
|
48
|
+
container = _render2.container;
|
|
51
49
|
expect(container.childNodes.length).toEqual(1);
|
|
52
50
|
expect(container.childNodes[0].classList).toContain('hods-task-list__item');
|
|
53
|
-
|
|
54
|
-
|
|
51
|
+
var span = container.childNodes[0].childNodes[0];
|
|
52
|
+
var state = container.childNodes[0].childNodes[1];
|
|
55
53
|
expect(span.classList).toContain('hods-task-list__task-name');
|
|
56
54
|
expect(span.textContent).toEqual(TASK.displayName);
|
|
57
55
|
expect(state.textContent).toEqual('Completed');
|
|
58
56
|
});
|
|
59
|
-
it('should render a task with inactive link if state is cannotStartYet', ()
|
|
60
|
-
|
|
61
|
-
|
|
57
|
+
it('should render a task with inactive link if state is cannotStartYet', function () {
|
|
58
|
+
var STATE = _models.TaskStates.TYPES.CANNOT_START_YET;
|
|
59
|
+
var TASK = {
|
|
62
60
|
name: 'taskName',
|
|
63
61
|
pages: ['pageName'],
|
|
64
62
|
state: STATE
|
|
65
63
|
};
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
const span = container.childNodes[0].childNodes[0];
|
|
64
|
+
var ON_CLICK = function ON_CLICK() {};
|
|
65
|
+
var _render3 = (0, _react.render)( /*#__PURE__*/_react2.default.createElement(_Task.default, {
|
|
66
|
+
task: TASK,
|
|
67
|
+
onClick: ON_CLICK
|
|
68
|
+
})),
|
|
69
|
+
container = _render3.container;
|
|
70
|
+
var span = container.childNodes[0].childNodes[0];
|
|
74
71
|
expect(span.childNodes[0].tagName).toEqual(undefined);
|
|
75
72
|
expect(span.textContent).toEqual(TASK.name);
|
|
76
73
|
});
|
|
77
|
-
it('should render a task with a link if state is not cannotStartYet', ()
|
|
78
|
-
|
|
79
|
-
|
|
74
|
+
it('should render a task with a link if state is not cannotStartYet', function () {
|
|
75
|
+
var STATE = _models.TaskStates.TYPES.IN_PROGRESS;
|
|
76
|
+
var TASK = {
|
|
80
77
|
name: 'taskName',
|
|
81
78
|
pages: ['pageName'],
|
|
82
79
|
state: STATE
|
|
83
80
|
};
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
const span = container.childNodes[0].childNodes[0];
|
|
81
|
+
var ON_CLICK = function ON_CLICK() {};
|
|
82
|
+
var _render4 = (0, _react.render)( /*#__PURE__*/_react2.default.createElement(_Task.default, {
|
|
83
|
+
task: TASK,
|
|
84
|
+
onClick: ON_CLICK
|
|
85
|
+
})),
|
|
86
|
+
container = _render4.container;
|
|
87
|
+
var span = container.childNodes[0].childNodes[0];
|
|
92
88
|
expect(span.childNodes.length).toEqual(1);
|
|
93
89
|
expect(span.childNodes[0].tagName).toEqual('A');
|
|
94
90
|
expect(span.textContent).toEqual(TASK.name);
|
|
95
91
|
});
|
|
96
|
-
it('should render the displayName of a task with a link if state is not cannotStartYet', ()
|
|
97
|
-
|
|
98
|
-
|
|
92
|
+
it('should render the displayName of a task with a link if state is not cannotStartYet', function () {
|
|
93
|
+
var STATE = _models.TaskStates.TYPES.IN_PROGRESS;
|
|
94
|
+
var TASK = {
|
|
99
95
|
name: 'taskName',
|
|
100
96
|
displayName: 'Charlie Delta',
|
|
101
97
|
pages: ['pageName'],
|
|
102
98
|
state: STATE
|
|
103
99
|
};
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
const span = container.childNodes[0].childNodes[0];
|
|
100
|
+
var ON_CLICK = function ON_CLICK() {};
|
|
101
|
+
var _render5 = (0, _react.render)( /*#__PURE__*/_react2.default.createElement(_Task.default, {
|
|
102
|
+
task: TASK,
|
|
103
|
+
onClick: ON_CLICK
|
|
104
|
+
})),
|
|
105
|
+
container = _render5.container;
|
|
106
|
+
var span = container.childNodes[0].childNodes[0];
|
|
112
107
|
expect(span.childNodes.length).toEqual(1);
|
|
113
108
|
expect(span.childNodes[0].tagName).toEqual('A');
|
|
114
109
|
expect(span.textContent).toEqual(TASK.displayName);
|
|
115
110
|
});
|
|
116
|
-
it('should call the given onClick function when the link is clicked', ()
|
|
117
|
-
|
|
118
|
-
|
|
111
|
+
it('should call the given onClick function when the link is clicked', function () {
|
|
112
|
+
var STATE = _models.TaskStates.TYPES.IN_PROGRESS;
|
|
113
|
+
var TASK = {
|
|
119
114
|
name: 'taskName',
|
|
120
115
|
pages: ['pageName'],
|
|
121
116
|
state: STATE
|
|
122
117
|
};
|
|
123
|
-
|
|
124
|
-
|
|
118
|
+
var ON_CLICK_CALLS = [];
|
|
119
|
+
var ON_CLICK = function ON_CLICK(value) {
|
|
125
120
|
ON_CLICK_CALLS.push(value);
|
|
126
121
|
};
|
|
127
|
-
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
|
|
132
|
-
|
|
133
|
-
const link = container.childNodes[0].childNodes[0].childNodes[0];
|
|
122
|
+
var _render6 = (0, _react.render)( /*#__PURE__*/_react2.default.createElement(_Task.default, {
|
|
123
|
+
task: TASK,
|
|
124
|
+
onClick: ON_CLICK
|
|
125
|
+
})),
|
|
126
|
+
container = _render6.container;
|
|
127
|
+
var link = container.childNodes[0].childNodes[0].childNodes[0];
|
|
134
128
|
_react.fireEvent.click(link);
|
|
135
129
|
expect(ON_CLICK_CALLS.length).toEqual(1);
|
|
136
130
|
expect(ON_CLICK_CALLS[0]).toEqual({
|
|
@@ -139,24 +133,23 @@ describe('components', () => {
|
|
|
139
133
|
state: STATE
|
|
140
134
|
});
|
|
141
135
|
});
|
|
142
|
-
it('should call the given onClick function when the enter key is pressed on the link', ()
|
|
143
|
-
|
|
144
|
-
|
|
136
|
+
it('should call the given onClick function when the enter key is pressed on the link', function () {
|
|
137
|
+
var STATE = _models.TaskStates.TYPES.IN_PROGRESS;
|
|
138
|
+
var TASK = {
|
|
145
139
|
name: 'taskName',
|
|
146
140
|
pages: ['pageName'],
|
|
147
141
|
state: STATE
|
|
148
142
|
};
|
|
149
|
-
|
|
150
|
-
|
|
143
|
+
var ON_CLICK_CALLS = [];
|
|
144
|
+
var ON_CLICK = function ON_CLICK(value) {
|
|
151
145
|
ON_CLICK_CALLS.push(value);
|
|
152
146
|
};
|
|
153
|
-
|
|
154
|
-
|
|
155
|
-
|
|
156
|
-
|
|
157
|
-
|
|
158
|
-
|
|
159
|
-
const link = container.childNodes[0].childNodes[0].childNodes[0];
|
|
147
|
+
var _render7 = (0, _react.render)( /*#__PURE__*/_react2.default.createElement(_Task.default, {
|
|
148
|
+
task: TASK,
|
|
149
|
+
onClick: ON_CLICK
|
|
150
|
+
})),
|
|
151
|
+
container = _render7.container;
|
|
152
|
+
var link = container.childNodes[0].childNodes[0].childNodes[0];
|
|
160
153
|
// The keyPress event needs charCode: 13 or it fails; bug with the library.
|
|
161
154
|
_react.fireEvent.keyPress(link, {
|
|
162
155
|
key: 'Enter',
|
|
@@ -1,5 +1,6 @@
|
|
|
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
|
Object.defineProperty(exports, "__esModule", {
|
|
4
5
|
value: true
|
|
5
6
|
});
|
|
@@ -11,42 +12,59 @@ var _models = require("../../models");
|
|
|
11
12
|
var _Task = _interopRequireDefault(require("./Task"));
|
|
12
13
|
var _showComponent = _interopRequireDefault(require("../../utils/Component/showComponent"));
|
|
13
14
|
require("./TaskList.scss");
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
function _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); } /* eslint-disable import/no-duplicates */ // Global Imports
|
|
15
|
+
var _excluded = ["id", "refTitle", "refNumber", "notes", "incompleteTitle", "sections", "fieldId", "onTaskAction", "classBlock", "classModifiers", "className", "formData"];
|
|
16
|
+
/* eslint-disable import/no-duplicates */
|
|
17
|
+
// Global Imports
|
|
18
18
|
// Local Imports
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
19
|
+
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); }
|
|
20
|
+
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; }
|
|
21
|
+
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
22
|
+
function _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }
|
|
23
|
+
function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }
|
|
24
|
+
function _nonIterableRest() { throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
|
|
25
|
+
function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }
|
|
26
|
+
function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) arr2[i] = arr[i]; return arr2; }
|
|
27
|
+
function _iterableToArrayLimit(r, l) { var t = null == r ? null : "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"]; if (null != t) { var e, n, i, u, a = [], f = !0, o = !1; try { if (i = (t = t.call(r)).next, 0 === l) { if (Object(t) !== t) return; f = !1; } else for (; !(f = (e = i.call(t)).done) && (a.push(e.value), a.length !== l); f = !0); } catch (r) { o = !0, n = r; } finally { try { if (!f && null != t.return && (u = t.return(), Object(u) !== u)) return; } finally { if (o) throw n; } } return a; } }
|
|
28
|
+
function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
|
|
29
|
+
function _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }
|
|
30
|
+
function _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }
|
|
31
|
+
var DEFAULT_CLASS = exports.DEFAULT_CLASS = 'hods-task-list';
|
|
32
|
+
var DEFAULT_INCOMPLETE_TITLE = exports.DEFAULT_INCOMPLETE_TITLE = 'Incomplete form';
|
|
33
|
+
var TaskList = function TaskList(_ref) {
|
|
34
|
+
var id = _ref.id,
|
|
35
|
+
refTitle = _ref.refTitle,
|
|
36
|
+
refNumber = _ref.refNumber,
|
|
37
|
+
notes = _ref.notes,
|
|
38
|
+
incompleteTitle = _ref.incompleteTitle,
|
|
39
|
+
sections = _ref.sections,
|
|
40
|
+
fieldId = _ref.fieldId,
|
|
41
|
+
onTaskAction = _ref.onTaskAction,
|
|
42
|
+
classBlock = _ref.classBlock,
|
|
43
|
+
classModifiers = _ref.classModifiers,
|
|
44
|
+
className = _ref.className,
|
|
45
|
+
formData = _ref.formData,
|
|
46
|
+
attrs = _objectWithoutProperties(_ref, _excluded);
|
|
47
|
+
var classes = _copReactComponents.Utils.classBuilder(classBlock, classModifiers, className);
|
|
48
|
+
var cleanedHtmlAttrs = _copReactComponents.Utils.cleanHtmlAttributes(attrs);
|
|
39
49
|
// TODO state will be retrieved from a document in S3 rather than given in the component definition, covered under COP-9885
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
+
var _sections$filter$redu = sections.filter(function (section) {
|
|
51
|
+
return !section.skipped;
|
|
52
|
+
}).reduce(function (acc, current) {
|
|
53
|
+
var _current$tasks$filter, _current$tasks, _current$tasks$filter2, _current$tasks2;
|
|
54
|
+
return [acc[0] + ((_current$tasks$filter = (_current$tasks = current.tasks) === null || _current$tasks === void 0 ? void 0 : _current$tasks.filter(function (t) {
|
|
55
|
+
return t.state === _models.TaskStates.TYPES.COMPLETE;
|
|
56
|
+
}).length) !== null && _current$tasks$filter !== void 0 ? _current$tasks$filter : 0), acc[1] + ((_current$tasks$filter2 = (_current$tasks2 = current.tasks) === null || _current$tasks2 === void 0 ? void 0 : _current$tasks2.filter(function (task) {
|
|
57
|
+
return task.state !== _models.TaskStates.TYPES.SKIPPED;
|
|
58
|
+
}).length) !== null && _current$tasks$filter2 !== void 0 ? _current$tasks$filter2 : 0)];
|
|
59
|
+
}, [0, 0]),
|
|
60
|
+
_sections$filter$redu2 = _slicedToArray(_sections$filter$redu, 2),
|
|
61
|
+
completeSections = _sections$filter$redu2[0],
|
|
62
|
+
totalSections = _sections$filter$redu2[1];
|
|
63
|
+
var notesId = "".concat(id, "Notes");
|
|
64
|
+
var _ref2 = notes && notes || {},
|
|
65
|
+
notesTitle = _ref2.title,
|
|
66
|
+
notesText = _ref2.text;
|
|
67
|
+
var onClick = function onClick(task) {
|
|
50
68
|
if (typeof onTaskAction === 'function') {
|
|
51
69
|
onTaskAction(task);
|
|
52
70
|
}
|
|
@@ -75,17 +93,25 @@ const TaskList = _ref => {
|
|
|
75
93
|
fieldId: notesId,
|
|
76
94
|
readOnly: true,
|
|
77
95
|
value: _copReactComponents.Utils.interpolateString(notesText, formData)
|
|
78
|
-
})), sections.filter(
|
|
79
|
-
|
|
80
|
-
}
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
96
|
+
})), sections.filter(function (section) {
|
|
97
|
+
return !section.skipped;
|
|
98
|
+
}).map(function (section, index) {
|
|
99
|
+
return /*#__PURE__*/_react.default.createElement(_react.Fragment, {
|
|
100
|
+
key: "".concat(section.name)
|
|
101
|
+
}, /*#__PURE__*/_react.default.createElement("h2", {
|
|
102
|
+
className: classes('section')
|
|
103
|
+
}, sections.length > 1 ? "".concat(index + 1, ". ") : '', section.name), section.label && /*#__PURE__*/_react.default.createElement(_copReactComponents.Hint, null, section.label), /*#__PURE__*/_react.default.createElement("ol", {
|
|
104
|
+
className: classes('items')
|
|
105
|
+
}, section.tasks.filter(function (task) {
|
|
106
|
+
return task.state !== _models.TaskStates.TYPES.SKIPPED;
|
|
107
|
+
}).map(function (task) {
|
|
108
|
+
return /*#__PURE__*/_react.default.createElement(_Task.default, {
|
|
109
|
+
key: "".concat(section.name, "-").concat(task.name),
|
|
110
|
+
task: task,
|
|
111
|
+
onClick: onClick
|
|
112
|
+
});
|
|
113
|
+
})));
|
|
114
|
+
}));
|
|
89
115
|
};
|
|
90
116
|
TaskList.propTypes = {
|
|
91
117
|
classBlock: _propTypes.default.string,
|