@ukhomeoffice/cop-react-form-renderer 4.18.0 → 5.0.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.
- package/dist/components/CheckYourAnswers/Answer.js +1 -14
- package/dist/components/CheckYourAnswers/CheckYourAnswers.js +19 -57
- package/dist/components/CheckYourAnswers/index.js +0 -3
- package/dist/components/CollectionPage/CollectionPage.js +8 -38
- package/dist/components/CollectionPage/index.js +0 -3
- package/dist/components/FormComponent/Collection.js +13 -54
- package/dist/components/FormComponent/Container.js +6 -30
- package/dist/components/FormComponent/FormComponent.js +14 -57
- package/dist/components/FormComponent/helpers/addLabel.js +4 -7
- package/dist/components/FormComponent/helpers/getComponentDisabled.js +0 -4
- package/dist/components/FormComponent/helpers/getComponentDisabled.test.js +0 -2
- package/dist/components/FormComponent/helpers/getComponentError.js +0 -6
- package/dist/components/FormComponent/helpers/getComponentError.test.js +0 -2
- package/dist/components/FormComponent/helpers/index.js +0 -4
- package/dist/components/FormComponent/index.js +0 -3
- package/dist/components/FormPage/FormPage.js +14 -45
- package/dist/components/FormPage/index.js +0 -3
- package/dist/components/FormRenderer/FormRenderer.js +106 -189
- package/dist/components/FormRenderer/handlers/cyaAction.js +0 -5
- package/dist/components/FormRenderer/handlers/getPageId.js +0 -2
- package/dist/components/FormRenderer/handlers/getPageId.test.js +1 -2
- package/dist/components/FormRenderer/handlers/handlers.test.js +1 -18
- package/dist/components/FormRenderer/handlers/index.js +0 -5
- package/dist/components/FormRenderer/handlers/navigate.js +0 -5
- package/dist/components/FormRenderer/handlers/submissionError.js +0 -2
- package/dist/components/FormRenderer/helpers/canActionProceed.js +0 -3
- package/dist/components/FormRenderer/helpers/canActionProceed.test.js +1 -3
- package/dist/components/FormRenderer/helpers/canCYASubmit.js +0 -2
- package/dist/components/FormRenderer/helpers/canCYASubmit.test.js +1 -5
- package/dist/components/FormRenderer/helpers/cleanHiddenNestedData.js +0 -5
- package/dist/components/FormRenderer/helpers/cleanHiddenNestedData.test.js +1 -2
- package/dist/components/FormRenderer/helpers/getCYA.js +0 -6
- package/dist/components/FormRenderer/helpers/getCYA.test.js +1 -3
- package/dist/components/FormRenderer/helpers/getFormState.js +0 -5
- package/dist/components/FormRenderer/helpers/getFormState.test.js +1 -3
- package/dist/components/FormRenderer/helpers/getNextPageId.js +0 -25
- package/dist/components/FormRenderer/helpers/getNextPageId.test.js +1 -4
- package/dist/components/FormRenderer/helpers/getPage.js +0 -5
- package/dist/components/FormRenderer/helpers/getPage.test.js +1 -3
- package/dist/components/FormRenderer/helpers/getRelevantPages.js +0 -6
- package/dist/components/FormRenderer/helpers/getRelevantPages.test.js +1 -3
- package/dist/components/FormRenderer/helpers/getSubmissionStatus.js +0 -10
- package/dist/components/FormRenderer/helpers/getSubmissionStatus.test.js +0 -6
- package/dist/components/FormRenderer/helpers/getUpdatedSectionStates.js +6 -20
- package/dist/components/FormRenderer/helpers/getUpdatedSectionStates.test.js +3 -8
- package/dist/components/FormRenderer/helpers/index.js +1 -11
- package/dist/components/FormRenderer/index.js +0 -3
- package/dist/components/PageActions/ActionButton.js +2 -17
- package/dist/components/PageActions/PageActions.js +3 -10
- package/dist/components/PageActions/index.js +0 -3
- package/dist/components/SummaryList/GroupAction.js +3 -24
- package/dist/components/SummaryList/RowAction.js +3 -23
- package/dist/components/SummaryList/SummaryList.js +6 -28
- package/dist/components/SummaryList/SummaryListRow.js +4 -8
- package/dist/components/SummaryList/SummaryListTitleRow.js +2 -7
- package/dist/components/SummaryList/helpers/getGroupActionAttributes.js +0 -3
- package/dist/components/SummaryList/helpers/getGroupActionAttributes.test.js +0 -6
- package/dist/components/SummaryList/helpers/getRowActionAttributes.js +0 -3
- package/dist/components/SummaryList/helpers/getRowActionAttributes.test.js +0 -6
- package/dist/components/SummaryList/helpers/index.js +0 -2
- package/dist/components/SummaryList/index.js +0 -3
- package/dist/components/TaskList/Task.js +7 -29
- package/dist/components/TaskList/TaskList.js +12 -33
- package/dist/components/TaskList/TaskState.js +2 -10
- package/dist/components/TaskList/index.js +0 -3
- package/dist/components/index.js +0 -6
- package/dist/context/HooksContext/HooksContext.js +14 -34
- package/dist/context/HooksContext/index.js +0 -5
- package/dist/context/ValidationContext/ValidationContext.js +8 -34
- package/dist/context/ValidationContext/index.js +0 -5
- package/dist/context/index.js +0 -3
- package/dist/hooks/index.js +0 -9
- package/dist/hooks/useAxios.js +8 -25
- package/dist/hooks/useGetRequest.js +13 -47
- package/dist/hooks/useHooks.js +2 -4
- package/dist/hooks/useRefData.js +8 -37
- package/dist/hooks/useValidation.js +2 -4
- package/dist/index.js +0 -6
- package/dist/models/PageAction.js +0 -3
- package/dist/models/TaskStates.js +0 -3
- package/dist/models/index.js +0 -9
- package/dist/utils/CheckYourAnswers/getCYAAction.js +1 -9
- package/dist/utils/CheckYourAnswers/getCYACollectionChangeAction.js +0 -10
- package/dist/utils/CheckYourAnswers/getCYACollectionDeleteAction.js +0 -8
- package/dist/utils/CheckYourAnswers/getCYARow.js +1 -10
- package/dist/utils/CheckYourAnswers/getCYARowForGroup.js +2 -20
- package/dist/utils/CheckYourAnswers/getCYARowsForCollection.js +0 -18
- package/dist/utils/CheckYourAnswers/getCYARowsForCollectionPage.js +0 -20
- package/dist/utils/CheckYourAnswers/getCYARowsForContainer.js +0 -13
- package/dist/utils/CheckYourAnswers/getCYARowsForPage.js +2 -22
- package/dist/utils/CheckYourAnswers/index.js +1 -3
- package/dist/utils/CheckYourAnswers/showComponentCYA.js +2 -11
- package/dist/utils/CollectionPage/duplicateCollectionPageActiveEntry.js +0 -11
- package/dist/utils/CollectionPage/getCollectionPageActiveIndex.js +0 -6
- package/dist/utils/CollectionPage/index.js +1 -5
- package/dist/utils/CollectionPage/mergeCollectionPages.js +1 -12
- package/dist/utils/Component/cleanAttributes.js +1 -8
- package/dist/utils/Component/elevateNestedComponents.js +0 -3
- package/dist/utils/Component/getComponent.js +4 -68
- package/dist/utils/Component/getComponentTests/getComponent.autocomplete.test.js +6 -10
- package/dist/utils/Component/getComponentTests/getComponent.calculation.test.js +10 -28
- package/dist/utils/Component/getComponentTests/getComponent.checkboxes.test.js +6 -33
- package/dist/utils/Component/getComponentTests/getComponent.date.test.js +10 -27
- package/dist/utils/Component/getComponentTests/getComponent.details.test.js +4 -10
- package/dist/utils/Component/getComponentTests/getComponent.email.test.js +4 -21
- package/dist/utils/Component/getComponentTests/getComponent.file.test.js +4 -22
- package/dist/utils/Component/getComponentTests/getComponent.heading.test.js +3 -7
- package/dist/utils/Component/getComponentTests/getComponent.html.test.js +4 -10
- package/dist/utils/Component/getComponentTests/getComponent.insetText.test.js +3 -7
- package/dist/utils/Component/getComponentTests/getComponent.nested.test.js +6 -15
- package/dist/utils/Component/getComponentTests/getComponent.phoneNumber.test.js +4 -21
- package/dist/utils/Component/getComponentTests/getComponent.radios.test.js +6 -33
- package/dist/utils/Component/getComponentTests/getComponent.select.test.js +4 -21
- package/dist/utils/Component/getComponentTests/getComponent.text.test.js +4 -21
- package/dist/utils/Component/getComponentTests/getComponent.textarea.test.js +4 -21
- package/dist/utils/Component/getComponentTests/getComponent.time.test.js +10 -29
- package/dist/utils/Component/getComponentTests/getComponent.unknown.test.js +1 -2
- package/dist/utils/Component/getComponentTests/getComponent.warningText.test.js +3 -7
- package/dist/utils/Component/getDefaultValue.js +0 -7
- package/dist/utils/Component/index.js +0 -9
- package/dist/utils/Component/isEditable.js +1 -4
- package/dist/utils/Component/showComponent.js +1 -8
- package/dist/utils/Component/wrapInFormGroup.js +0 -7
- package/dist/utils/Condition/index.js +0 -5
- package/dist/utils/Condition/meetsAllConditions.js +0 -9
- package/dist/utils/Condition/meetsCondition.js +7 -19
- package/dist/utils/Condition/meetsOneCondition.js +1 -9
- package/dist/utils/Condition/setupConditions.js +0 -12
- package/dist/utils/Container/getEditableComponents.js +0 -7
- package/dist/utils/Container/index.js +0 -5
- package/dist/utils/Container/setupNesting.js +0 -11
- package/dist/utils/Container/showContainer.js +9 -18
- package/dist/utils/Data/applyFormula.js +2 -28
- package/dist/utils/Data/getAutocompleteSource.js +1 -4
- package/dist/utils/Data/getDataPath.js +3 -17
- package/dist/utils/Data/getOptions.js +0 -9
- package/dist/utils/Data/getSourceData.js +4 -19
- package/dist/utils/Data/index.js +1 -11
- package/dist/utils/Data/refDataToOptions.js +1 -12
- package/dist/utils/Data/setDataItem.js +0 -5
- package/dist/utils/Data/setupFormData.js +2 -20
- package/dist/utils/Data/setupRefDataUrlForComponent.js +0 -14
- package/dist/utils/FormPage/getFormPage.js +0 -15
- package/dist/utils/FormPage/getFormPages.js +0 -8
- package/dist/utils/FormPage/getPageActions.js +3 -18
- package/dist/utils/FormPage/getParagraphFromText.js +0 -3
- package/dist/utils/FormPage/index.js +0 -6
- package/dist/utils/FormPage/showFormPage.js +9 -18
- package/dist/utils/FormPage/showFormPageCYA.js +0 -5
- package/dist/utils/FormPage/useComponent.js +3 -18
- package/dist/utils/Format/formatData.js +0 -5
- package/dist/utils/Format/formatDataForComponent.js +1 -6
- package/dist/utils/Format/formatDataForForm.js +0 -8
- package/dist/utils/Format/formatDataForPage.js +1 -5
- package/dist/utils/Format/index.js +1 -6
- package/dist/utils/Hub/getFormHub.js +0 -8
- package/dist/utils/Hub/index.js +1 -3
- package/dist/utils/Meta/documents/getDocuments.js +1 -4
- package/dist/utils/Meta/documents/getDocuments.test.js +0 -9
- package/dist/utils/Meta/documents/index.js +1 -5
- package/dist/utils/Meta/documents/setDocumentForField.js +0 -11
- package/dist/utils/Meta/documents/setDocumentForField.test.js +0 -11
- package/dist/utils/Meta/index.js +2 -6
- package/dist/utils/Operate/checkValueIsTruthy.js +1 -7
- package/dist/utils/Operate/getIndexOfMatchingValueIn.js +7 -21
- package/dist/utils/Operate/index.js +0 -3
- package/dist/utils/Operate/persistValueInFormData.js +1 -8
- package/dist/utils/Operate/runPageOperations.js +3 -18
- package/dist/utils/Operate/setValueInFormData.js +2 -7
- package/dist/utils/Operate/shouldRun.js +1 -14
- package/dist/utils/Validate/additional/index.js +1 -18
- package/dist/utils/Validate/additional/index.test.js +0 -6
- package/dist/utils/Validate/additional/mustBeAfter.js +3 -8
- package/dist/utils/Validate/additional/mustBeAfter.test.js +0 -4
- package/dist/utils/Validate/additional/mustBeBefore.js +3 -8
- package/dist/utils/Validate/additional/mustBeBefore.test.js +0 -4
- package/dist/utils/Validate/additional/mustBeEarlierDateTime.js +5 -16
- package/dist/utils/Validate/additional/mustBeEarlierDateTime.test.js +0 -7
- package/dist/utils/Validate/additional/mustBeInTheFuture.js +3 -12
- package/dist/utils/Validate/additional/mustBeInTheFuture.test.js +0 -3
- package/dist/utils/Validate/additional/mustBeInThePast.js +5 -13
- package/dist/utils/Validate/additional/mustBeInThePast.test.js +0 -3
- package/dist/utils/Validate/additional/mustBeLessThan.js +0 -3
- package/dist/utils/Validate/additional/mustBeLessThan.test.js +0 -2
- package/dist/utils/Validate/additional/mustBeLongerThan.js +0 -3
- package/dist/utils/Validate/additional/mustBeLongerThan.test.js +0 -2
- package/dist/utils/Validate/additional/mustBeNumbersOnly.js +0 -4
- package/dist/utils/Validate/additional/mustBeNumbersOnly.test.js +0 -2
- package/dist/utils/Validate/additional/mustBeShorterThan.js +0 -3
- package/dist/utils/Validate/additional/mustBeShorterThan.test.js +0 -2
- package/dist/utils/Validate/additional/mustEnterAtLeastOne.js +0 -5
- package/dist/utils/Validate/additional/mustEnterAtLeastOne.test.js +0 -4
- package/dist/utils/Validate/additional/utils.js +8 -24
- package/dist/utils/Validate/index.js +1 -9
- package/dist/utils/Validate/validateCollection.js +0 -9
- package/dist/utils/Validate/validateComponent.js +2 -35
- package/dist/utils/Validate/validateContainer.js +0 -13
- package/dist/utils/Validate/validateDate.js +4 -36
- package/dist/utils/Validate/validateEmail.js +1 -7
- package/dist/utils/Validate/validatePage.js +0 -15
- package/dist/utils/Validate/validateRegex.js +0 -10
- package/dist/utils/Validate/validateRequired.js +0 -8
- package/dist/utils/Validate/validateTime.js +3 -20
- package/dist/utils/index.js +0 -19
- package/package.json +50 -34
- package/dist/components/CheckYourAnswers/Answer.test.js +0 -95
- package/dist/components/CheckYourAnswers/CheckYourAnswers.stories.mdx +0 -410
- package/dist/components/CheckYourAnswers/CheckYourAnswers.test.js +0 -680
- package/dist/components/CollectionPage/CollectionPage.test.js +0 -428
- package/dist/components/FormComponent/Collection.test.js +0 -381
- package/dist/components/FormComponent/Container.test.js +0 -423
- package/dist/components/FormComponent/FormComponent.stories.mdx +0 -184
- package/dist/components/FormComponent/FormComponent.test.js +0 -264
- package/dist/components/FormPage/FormPage.stories.mdx +0 -131
- package/dist/components/FormPage/FormPage.test.js +0 -368
- package/dist/components/FormRenderer/FormRenderer.stories.mdx +0 -183
- package/dist/components/FormRenderer/FormRenderer.test.js +0 -1006
- package/dist/components/PageActions/ActionButton.test.js +0 -116
- package/dist/components/PageActions/PageActions.stories.mdx +0 -74
- package/dist/components/PageActions/PageActions.test.js +0 -157
- package/dist/components/SummaryList/GroupAction.test.js +0 -94
- package/dist/components/SummaryList/RowAction.test.js +0 -94
- package/dist/components/SummaryList/SummaryList.stories.mdx +0 -90
- package/dist/components/SummaryList/SummaryList.test.js +0 -361
- package/dist/components/TaskList/Task.test.js +0 -194
- package/dist/components/TaskList/TaskList.stories.mdx +0 -164
- package/dist/components/TaskList/TaskList.test.js +0 -334
- package/dist/components/TaskList/TaskState.test.js +0 -104
- package/dist/context/HooksContext/HooksContext.test.js +0 -60
- package/dist/context/ValidationContext/ValidationContext.test.js +0 -98
- package/dist/json/areYouACivilServant.json +0 -7
- package/dist/json/firstForm.json +0 -94
- package/dist/json/grade.json +0 -108
- package/dist/json/group.data.json +0 -21
- package/dist/json/group.json +0 -402
- package/dist/json/groupOfRow.json +0 -137
- package/dist/json/groupOfRowData.json +0 -15
- package/dist/json/port.json +0 -346
- package/dist/json/saveAndContinue.json +0 -98
- package/dist/json/sublocation.json +0 -859
- package/dist/json/taskList.json +0 -265
- package/dist/json/team.json +0 -17351
- package/dist/json/terminal.json +0 -81
- package/dist/json/userProfile.data.json +0 -21
- package/dist/json/userProfile.json +0 -276
- package/dist/setupTests.js +0 -59
- package/dist/utils/CheckYourAnswers/getCYAAction.test.js +0 -139
- package/dist/utils/CheckYourAnswers/getCYACollectionChangeAction.test.js +0 -76
- package/dist/utils/CheckYourAnswers/getCYACollectionDeleteAction.test.js +0 -59
- package/dist/utils/CheckYourAnswers/getCYARow.test.js +0 -256
- package/dist/utils/CheckYourAnswers/getCYARowForGroup.test.js +0 -77
- package/dist/utils/CheckYourAnswers/getCYARowsForCollection.test.js +0 -199
- package/dist/utils/CheckYourAnswers/getCYARowsForCollectionPage.test.js +0 -170
- package/dist/utils/CheckYourAnswers/getCYARowsForContainer.test.js +0 -323
- package/dist/utils/CheckYourAnswers/getCYARowsForPage.test.js +0 -281
- package/dist/utils/CheckYourAnswers/showComponentCYA.test.js +0 -64
- package/dist/utils/CollectionPage/duplicateCollectionPageActiveEntry.test.js +0 -41
- package/dist/utils/CollectionPage/getCollectionPageActiveIndex.test.js +0 -54
- package/dist/utils/CollectionPage/mergeCollectionPages.test.js +0 -131
- package/dist/utils/Component/cleanAttributes.test.js +0 -69
- package/dist/utils/Component/elevateNestedComponents.test.js +0 -92
- package/dist/utils/Component/getDefaultValue.test.js +0 -53
- package/dist/utils/Component/isEditable.test.js +0 -42
- package/dist/utils/Component/showComponent.test.js +0 -157
- package/dist/utils/Condition/meetsAllConditions.test.js +0 -62
- package/dist/utils/Condition/meetsCondition.test.js +0 -391
- package/dist/utils/Condition/meetsOneCondition.test.js +0 -101
- package/dist/utils/Condition/setupConditions.test.js +0 -35
- package/dist/utils/Container/getEditableComponents.test.js +0 -146
- package/dist/utils/Container/setupNesting.test.js +0 -92
- package/dist/utils/Container/showContainer.test.js +0 -179
- package/dist/utils/Data/applyFormula.test.js +0 -264
- package/dist/utils/Data/getAutocompleteSource.test.js +0 -146
- package/dist/utils/Data/getDataPath.test.js +0 -52
- package/dist/utils/Data/getOptions.test.js +0 -71
- package/dist/utils/Data/getSourceData.test.js +0 -141
- package/dist/utils/Data/refDataToOptions.test.js +0 -197
- package/dist/utils/Data/setDataItem.test.js +0 -112
- package/dist/utils/Data/setupFormData.test.js +0 -276
- package/dist/utils/Data/setupRefDataUrlForComponent.test.js +0 -133
- package/dist/utils/FormPage/getFormPage.test.js +0 -205
- package/dist/utils/FormPage/getFormPages.test.js +0 -98
- package/dist/utils/FormPage/getPageActions.test.js +0 -89
- package/dist/utils/FormPage/getParagraphFromText.test.js +0 -29
- package/dist/utils/FormPage/showFormPage.test.js +0 -182
- package/dist/utils/FormPage/showFormPageCYA.test.js +0 -30
- package/dist/utils/FormPage/useComponent.test.js +0 -169
- package/dist/utils/Format/formatData.test.js +0 -46
- package/dist/utils/Format/formatDataForComponent.test.js +0 -161
- package/dist/utils/Format/formatDataForForm.test.js +0 -78
- package/dist/utils/Format/formatDataForPage.test.js +0 -96
- package/dist/utils/Hub/getFormHub.test.js +0 -107
- package/dist/utils/Operate/checkValueIsTruthy.test.js +0 -44
- package/dist/utils/Operate/getIndexOfMatchingValueIn.test.js +0 -159
- package/dist/utils/Operate/persistValueInFormData.test.js +0 -106
- package/dist/utils/Operate/runPageOperations.test.js +0 -107
- package/dist/utils/Operate/setValueInFormData.test.js +0 -46
- package/dist/utils/Operate/shouldRun.test.js +0 -69
- package/dist/utils/Validate/validateCollection.test.js +0 -74
- package/dist/utils/Validate/validateComponent.test.js +0 -267
- package/dist/utils/Validate/validateContainer.test.js +0 -81
- package/dist/utils/Validate/validateDate.test.js +0 -118
- package/dist/utils/Validate/validateEmail.test.js +0 -57
- package/dist/utils/Validate/validatePage.test.js +0 -383
- package/dist/utils/Validate/validateRegex.test.js +0 -41
- package/dist/utils/Validate/validateRequired.test.js +0 -62
- package/dist/utils/Validate/validateTime.test.js +0 -61
|
@@ -1,116 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
|
|
3
|
-
function _typeof(obj) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && "function" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }, _typeof(obj); }
|
|
4
|
-
|
|
5
|
-
var _react = require("@testing-library/react");
|
|
6
|
-
|
|
7
|
-
var _react2 = _interopRequireDefault(require("react"));
|
|
8
|
-
|
|
9
|
-
var _models = require("../../models");
|
|
10
|
-
|
|
11
|
-
var _ActionButton = _interopRequireWildcard(require("./ActionButton"));
|
|
12
|
-
|
|
13
|
-
function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
|
|
14
|
-
|
|
15
|
-
function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
|
|
16
|
-
|
|
17
|
-
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
18
|
-
|
|
19
|
-
function asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) { try { var info = gen[key](arg); var value = info.value; } catch (error) { reject(error); return; } if (info.done) { resolve(value); } else { Promise.resolve(value).then(_next, _throw); } }
|
|
20
|
-
|
|
21
|
-
function _asyncToGenerator(fn) { return function () { var self = this, args = arguments; return new Promise(function (resolve, reject) { var gen = fn.apply(self, args); function _next(value) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, "next", value); } function _throw(err) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, "throw", err); } _next(undefined); }); }; }
|
|
22
|
-
|
|
23
|
-
describe('components', function () {
|
|
24
|
-
describe('PageActions.ActionButton', function () {
|
|
25
|
-
var ON_ACTION_CALLS = [];
|
|
26
|
-
|
|
27
|
-
var ON_ACTION = function ON_ACTION(action) {
|
|
28
|
-
ON_ACTION_CALLS.push(action);
|
|
29
|
-
};
|
|
30
|
-
|
|
31
|
-
beforeEach(function () {
|
|
32
|
-
ON_ACTION_CALLS.length = 0;
|
|
33
|
-
});
|
|
34
|
-
it('should handle an unknown action identifier', /*#__PURE__*/_asyncToGenerator( /*#__PURE__*/regeneratorRuntime.mark(function _callee() {
|
|
35
|
-
var ACTION, _render, container;
|
|
36
|
-
|
|
37
|
-
return regeneratorRuntime.wrap(function _callee$(_context) {
|
|
38
|
-
while (1) {
|
|
39
|
-
switch (_context.prev = _context.next) {
|
|
40
|
-
case 0:
|
|
41
|
-
ACTION = 'unknown';
|
|
42
|
-
_render = (0, _react.render)( /*#__PURE__*/_react2.default.createElement(_ActionButton.default, {
|
|
43
|
-
action: ACTION,
|
|
44
|
-
onAction: ON_ACTION
|
|
45
|
-
})), container = _render.container;
|
|
46
|
-
expect(container.childNodes.length).toEqual(0);
|
|
47
|
-
|
|
48
|
-
case 3:
|
|
49
|
-
case "end":
|
|
50
|
-
return _context.stop();
|
|
51
|
-
}
|
|
52
|
-
}
|
|
53
|
-
}, _callee);
|
|
54
|
-
})));
|
|
55
|
-
it('should appropriately display a submit action', /*#__PURE__*/_asyncToGenerator( /*#__PURE__*/regeneratorRuntime.mark(function _callee2() {
|
|
56
|
-
var ACTION, _render2, container, button;
|
|
57
|
-
|
|
58
|
-
return regeneratorRuntime.wrap(function _callee2$(_context2) {
|
|
59
|
-
while (1) {
|
|
60
|
-
switch (_context2.prev = _context2.next) {
|
|
61
|
-
case 0:
|
|
62
|
-
ACTION = _models.PageAction.TYPES.SUBMIT;
|
|
63
|
-
_render2 = (0, _react.render)( /*#__PURE__*/_react2.default.createElement(_ActionButton.default, {
|
|
64
|
-
action: ACTION,
|
|
65
|
-
onAction: ON_ACTION
|
|
66
|
-
})), container = _render2.container;
|
|
67
|
-
button = container.childNodes[0];
|
|
68
|
-
expect(button.tagName).toEqual('BUTTON');
|
|
69
|
-
expect(button.textContent).toEqual(_ActionButton.DEFAULT_LABEL); // Click the button and make sure it fires the onAction handler.
|
|
70
|
-
|
|
71
|
-
_react.fireEvent.click(button, {});
|
|
72
|
-
|
|
73
|
-
expect(ON_ACTION_CALLS.length).toEqual(1);
|
|
74
|
-
expect(ON_ACTION_CALLS[0]).toEqual(_models.PageAction.DEFAULTS.submit);
|
|
75
|
-
|
|
76
|
-
case 8:
|
|
77
|
-
case "end":
|
|
78
|
-
return _context2.stop();
|
|
79
|
-
}
|
|
80
|
-
}
|
|
81
|
-
}, _callee2);
|
|
82
|
-
})));
|
|
83
|
-
it('should appropriately display a custom action', /*#__PURE__*/_asyncToGenerator( /*#__PURE__*/regeneratorRuntime.mark(function _callee3() {
|
|
84
|
-
var ACTION, _render3, container, button;
|
|
85
|
-
|
|
86
|
-
return regeneratorRuntime.wrap(function _callee3$(_context3) {
|
|
87
|
-
while (1) {
|
|
88
|
-
switch (_context3.prev = _context3.next) {
|
|
89
|
-
case 0:
|
|
90
|
-
ACTION = {
|
|
91
|
-
type: 'navigate',
|
|
92
|
-
url: '/alpha',
|
|
93
|
-
label: 'Alpha'
|
|
94
|
-
};
|
|
95
|
-
_render3 = (0, _react.render)( /*#__PURE__*/_react2.default.createElement(_ActionButton.default, {
|
|
96
|
-
action: ACTION,
|
|
97
|
-
onAction: ON_ACTION
|
|
98
|
-
})), container = _render3.container;
|
|
99
|
-
button = container.childNodes[0];
|
|
100
|
-
expect(button.tagName).toEqual('BUTTON');
|
|
101
|
-
expect(button.textContent).toEqual(ACTION.label); // Click the button and make sure it fires the onAction handler.
|
|
102
|
-
|
|
103
|
-
_react.fireEvent.click(button, {});
|
|
104
|
-
|
|
105
|
-
expect(ON_ACTION_CALLS.length).toEqual(1);
|
|
106
|
-
expect(ON_ACTION_CALLS[0]).toEqual(ACTION);
|
|
107
|
-
|
|
108
|
-
case 8:
|
|
109
|
-
case "end":
|
|
110
|
-
return _context3.stop();
|
|
111
|
-
}
|
|
112
|
-
}
|
|
113
|
-
}, _callee3);
|
|
114
|
-
})));
|
|
115
|
-
});
|
|
116
|
-
});
|
|
@@ -1,74 +0,0 @@
|
|
|
1
|
-
<!-- Global imports -->
|
|
2
|
-
import { ArgsTable, Canvas, Meta, Story } from '@storybook/addon-docs';
|
|
3
|
-
import { Details, Heading, Link } from '@ukhomeoffice/cop-react-components';
|
|
4
|
-
|
|
5
|
-
<!-- Local imports -->
|
|
6
|
-
import Utils from '../../utils';
|
|
7
|
-
import PageActions from './PageActions';
|
|
8
|
-
|
|
9
|
-
<!-- JSON documents -->
|
|
10
|
-
import CIVIL_SERVANT from '../../json/areYouACivilServant.json';
|
|
11
|
-
import GRADE from '../../json/grade.json';
|
|
12
|
-
import TEAMS from '../../json/team.json';
|
|
13
|
-
import USER_PROFILE_DATA from '../../json/userProfile.data.json';
|
|
14
|
-
import USER_PROFILE from '../../json/userProfile.json';
|
|
15
|
-
|
|
16
|
-
<Meta title="Components/Page actions" id="D-PageActions" component={ PageActions } />
|
|
17
|
-
|
|
18
|
-
<Heading size="xl" caption="Components">Page actions</Heading>
|
|
19
|
-
|
|
20
|
-
Renders the buttons at the bottom of a Page.
|
|
21
|
-
|
|
22
|
-
<Canvas withToolbar>
|
|
23
|
-
<Story name="Default">
|
|
24
|
-
{() => {
|
|
25
|
-
const ACTIONS = ['submit'];
|
|
26
|
-
const ON_ACTION = (action, patch, onError) => {
|
|
27
|
-
console.log('action invoked', action, patch);
|
|
28
|
-
};
|
|
29
|
-
return (
|
|
30
|
-
<PageActions actions={ACTIONS} onAction={ON_ACTION} />
|
|
31
|
-
);
|
|
32
|
-
}}
|
|
33
|
-
</Story>
|
|
34
|
-
</Canvas>
|
|
35
|
-
|
|
36
|
-
<Details summary="Properties" className="no-indent">
|
|
37
|
-
<ArgsTable of={ PageActions } />
|
|
38
|
-
</Details>
|
|
39
|
-
|
|
40
|
-
## Variations
|
|
41
|
-
### Custom action
|
|
42
|
-
|
|
43
|
-
<Canvas>
|
|
44
|
-
<Story name="Custom action">
|
|
45
|
-
{() => {
|
|
46
|
-
const ACTIONS = [{ type: 'navigate', page: 'profile', label: 'Go to profile' }];
|
|
47
|
-
const ON_ACTION = (action, patch, onError) => {
|
|
48
|
-
console.log('action invoked', action, patch);
|
|
49
|
-
};
|
|
50
|
-
return (
|
|
51
|
-
<PageActions actions={ACTIONS} onAction={ON_ACTION} />
|
|
52
|
-
);
|
|
53
|
-
}}
|
|
54
|
-
</Story>
|
|
55
|
-
</Canvas>
|
|
56
|
-
|
|
57
|
-
### Multiple actions
|
|
58
|
-
|
|
59
|
-
<Canvas>
|
|
60
|
-
<Story name="Multiple actions">
|
|
61
|
-
{() => {
|
|
62
|
-
const ACTIONS = [
|
|
63
|
-
{ type: 'navigate', label: 'Previous' },
|
|
64
|
-
{ type: 'submit', label: 'Next', validate: true }
|
|
65
|
-
];
|
|
66
|
-
const ON_ACTION = (action, patch, onError) => {
|
|
67
|
-
console.log('action invoked', action, patch);
|
|
68
|
-
};
|
|
69
|
-
return (
|
|
70
|
-
<PageActions actions={ACTIONS} onAction={ON_ACTION} />
|
|
71
|
-
);
|
|
72
|
-
}}
|
|
73
|
-
</Story>
|
|
74
|
-
</Canvas>
|
|
@@ -1,157 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
|
|
3
|
-
var _react = require("@testing-library/react");
|
|
4
|
-
|
|
5
|
-
var _react2 = _interopRequireDefault(require("react"));
|
|
6
|
-
|
|
7
|
-
var _models = require("../../models");
|
|
8
|
-
|
|
9
|
-
var _ActionButton = require("./ActionButton");
|
|
10
|
-
|
|
11
|
-
var _PageActions = _interopRequireDefault(require("./PageActions"));
|
|
12
|
-
|
|
13
|
-
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
14
|
-
|
|
15
|
-
function asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) { try { var info = gen[key](arg); var value = info.value; } catch (error) { reject(error); return; } if (info.done) { resolve(value); } else { Promise.resolve(value).then(_next, _throw); } }
|
|
16
|
-
|
|
17
|
-
function _asyncToGenerator(fn) { return function () { var self = this, args = arguments; return new Promise(function (resolve, reject) { var gen = fn.apply(self, args); function _next(value) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, "next", value); } function _throw(err) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, "throw", err); } _next(undefined); }); }; }
|
|
18
|
-
|
|
19
|
-
describe('components', function () {
|
|
20
|
-
describe('PageActions', function () {
|
|
21
|
-
var ON_ACTION_CALLS = [];
|
|
22
|
-
|
|
23
|
-
var ON_ACTION = function ON_ACTION(action) {
|
|
24
|
-
ON_ACTION_CALLS.push(action);
|
|
25
|
-
};
|
|
26
|
-
|
|
27
|
-
beforeEach(function () {
|
|
28
|
-
ON_ACTION_CALLS.length = 0;
|
|
29
|
-
});
|
|
30
|
-
it('should handle an empty array of actions', /*#__PURE__*/_asyncToGenerator( /*#__PURE__*/regeneratorRuntime.mark(function _callee() {
|
|
31
|
-
var ACTIONS, _render, container;
|
|
32
|
-
|
|
33
|
-
return regeneratorRuntime.wrap(function _callee$(_context) {
|
|
34
|
-
while (1) {
|
|
35
|
-
switch (_context.prev = _context.next) {
|
|
36
|
-
case 0:
|
|
37
|
-
ACTIONS = [];
|
|
38
|
-
_render = (0, _react.render)( /*#__PURE__*/_react2.default.createElement(_PageActions.default, {
|
|
39
|
-
actions: ACTIONS,
|
|
40
|
-
onAction: ON_ACTION
|
|
41
|
-
})), container = _render.container;
|
|
42
|
-
expect(container.childNodes.length).toEqual(0);
|
|
43
|
-
|
|
44
|
-
case 3:
|
|
45
|
-
case "end":
|
|
46
|
-
return _context.stop();
|
|
47
|
-
}
|
|
48
|
-
}
|
|
49
|
-
}, _callee);
|
|
50
|
-
})));
|
|
51
|
-
it('should appropriately display a single submit action', /*#__PURE__*/_asyncToGenerator( /*#__PURE__*/regeneratorRuntime.mark(function _callee2() {
|
|
52
|
-
var ACTIONS, _render2, container, buttonGroup, submit;
|
|
53
|
-
|
|
54
|
-
return regeneratorRuntime.wrap(function _callee2$(_context2) {
|
|
55
|
-
while (1) {
|
|
56
|
-
switch (_context2.prev = _context2.next) {
|
|
57
|
-
case 0:
|
|
58
|
-
ACTIONS = [_models.PageAction.TYPES.SUBMIT];
|
|
59
|
-
_render2 = (0, _react.render)( /*#__PURE__*/_react2.default.createElement(_PageActions.default, {
|
|
60
|
-
actions: ACTIONS,
|
|
61
|
-
onAction: ON_ACTION
|
|
62
|
-
})), container = _render2.container;
|
|
63
|
-
buttonGroup = container.childNodes[0];
|
|
64
|
-
expect(buttonGroup.childNodes.length).toEqual(ACTIONS.length);
|
|
65
|
-
submit = buttonGroup.childNodes[0];
|
|
66
|
-
expect(submit.tagName).toEqual('BUTTON');
|
|
67
|
-
expect(submit.textContent).toEqual(_ActionButton.DEFAULT_LABEL); // Click the button and make sure it fires the onAction handler.
|
|
68
|
-
|
|
69
|
-
_react.fireEvent.click(submit, {});
|
|
70
|
-
|
|
71
|
-
expect(ON_ACTION_CALLS.length).toEqual(1);
|
|
72
|
-
expect(ON_ACTION_CALLS[0]).toEqual(_models.PageAction.DEFAULTS.submit);
|
|
73
|
-
|
|
74
|
-
case 10:
|
|
75
|
-
case "end":
|
|
76
|
-
return _context2.stop();
|
|
77
|
-
}
|
|
78
|
-
}
|
|
79
|
-
}, _callee2);
|
|
80
|
-
})));
|
|
81
|
-
it('should appropriately display a custom action', /*#__PURE__*/_asyncToGenerator( /*#__PURE__*/regeneratorRuntime.mark(function _callee3() {
|
|
82
|
-
var ACTIONS, _render3, container, buttonGroup, navigate;
|
|
83
|
-
|
|
84
|
-
return regeneratorRuntime.wrap(function _callee3$(_context3) {
|
|
85
|
-
while (1) {
|
|
86
|
-
switch (_context3.prev = _context3.next) {
|
|
87
|
-
case 0:
|
|
88
|
-
ACTIONS = [{
|
|
89
|
-
type: 'navigate',
|
|
90
|
-
page: 'alpha',
|
|
91
|
-
label: 'Alpha'
|
|
92
|
-
}];
|
|
93
|
-
_render3 = (0, _react.render)( /*#__PURE__*/_react2.default.createElement(_PageActions.default, {
|
|
94
|
-
actions: ACTIONS,
|
|
95
|
-
onAction: ON_ACTION
|
|
96
|
-
})), container = _render3.container;
|
|
97
|
-
buttonGroup = container.childNodes[0];
|
|
98
|
-
expect(buttonGroup.childNodes.length).toEqual(1);
|
|
99
|
-
navigate = buttonGroup.childNodes[0];
|
|
100
|
-
expect(navigate.tagName).toEqual('BUTTON');
|
|
101
|
-
expect(buttonGroup.childNodes.length).toEqual(ACTIONS.length); // Click the button and make sure it fires the onAction handler.
|
|
102
|
-
|
|
103
|
-
_react.fireEvent.click(navigate, {});
|
|
104
|
-
|
|
105
|
-
expect(ON_ACTION_CALLS.length).toEqual(1);
|
|
106
|
-
expect(ON_ACTION_CALLS[0]).toEqual(ACTIONS[0]);
|
|
107
|
-
|
|
108
|
-
case 10:
|
|
109
|
-
case "end":
|
|
110
|
-
return _context3.stop();
|
|
111
|
-
}
|
|
112
|
-
}
|
|
113
|
-
}, _callee3);
|
|
114
|
-
})));
|
|
115
|
-
it('should appropriately display multiple actions', /*#__PURE__*/_asyncToGenerator( /*#__PURE__*/regeneratorRuntime.mark(function _callee4() {
|
|
116
|
-
var NAVIGATE, ACTIONS, _render4, container, buttonGroup, navigate, submit;
|
|
117
|
-
|
|
118
|
-
return regeneratorRuntime.wrap(function _callee4$(_context4) {
|
|
119
|
-
while (1) {
|
|
120
|
-
switch (_context4.prev = _context4.next) {
|
|
121
|
-
case 0:
|
|
122
|
-
NAVIGATE = {
|
|
123
|
-
type: _models.PageAction.TYPES.NAVIGATE,
|
|
124
|
-
page: 'alpha',
|
|
125
|
-
label: 'Alpha'
|
|
126
|
-
};
|
|
127
|
-
ACTIONS = [NAVIGATE, _models.PageAction.TYPES.SUBMIT];
|
|
128
|
-
_render4 = (0, _react.render)( /*#__PURE__*/_react2.default.createElement(_PageActions.default, {
|
|
129
|
-
actions: ACTIONS,
|
|
130
|
-
onAction: ON_ACTION
|
|
131
|
-
})), container = _render4.container;
|
|
132
|
-
buttonGroup = container.childNodes[0];
|
|
133
|
-
expect(buttonGroup.childNodes.length).toEqual(ACTIONS.length);
|
|
134
|
-
navigate = buttonGroup.childNodes[0];
|
|
135
|
-
expect(navigate.tagName).toEqual('BUTTON');
|
|
136
|
-
expect(navigate.textContent).toEqual(NAVIGATE.label);
|
|
137
|
-
submit = buttonGroup.childNodes[1];
|
|
138
|
-
expect(submit.tagName).toEqual('BUTTON');
|
|
139
|
-
expect(submit.textContent).toEqual(_ActionButton.DEFAULT_LABEL); // Click each button in turn button and make sure it fires the onAction handler.
|
|
140
|
-
|
|
141
|
-
_react.fireEvent.click(navigate, {});
|
|
142
|
-
|
|
143
|
-
_react.fireEvent.click(submit, {});
|
|
144
|
-
|
|
145
|
-
expect(ON_ACTION_CALLS.length).toEqual(2);
|
|
146
|
-
expect(ON_ACTION_CALLS[0]).toEqual(NAVIGATE);
|
|
147
|
-
expect(ON_ACTION_CALLS[1]).toEqual(_models.PageAction.DEFAULTS.submit);
|
|
148
|
-
|
|
149
|
-
case 16:
|
|
150
|
-
case "end":
|
|
151
|
-
return _context4.stop();
|
|
152
|
-
}
|
|
153
|
-
}
|
|
154
|
-
}, _callee4);
|
|
155
|
-
})));
|
|
156
|
-
});
|
|
157
|
-
});
|
|
@@ -1,94 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
|
|
3
|
-
var _react = require("@testing-library/react");
|
|
4
|
-
|
|
5
|
-
var _react2 = _interopRequireDefault(require("react"));
|
|
6
|
-
|
|
7
|
-
var _GroupAction = _interopRequireDefault(require("./GroupAction"));
|
|
8
|
-
|
|
9
|
-
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
10
|
-
|
|
11
|
-
// Global imports
|
|
12
|
-
// Local imports
|
|
13
|
-
describe('components', function () {
|
|
14
|
-
describe('SummaryList.GroupAction', function () {
|
|
15
|
-
it('should handle a group row without an action', function () {
|
|
16
|
-
var ROW = {};
|
|
17
|
-
|
|
18
|
-
var _render = (0, _react.render)( /*#__PURE__*/_react2.default.createElement(_GroupAction.default, {
|
|
19
|
-
group: ROW
|
|
20
|
-
})),
|
|
21
|
-
container = _render.container;
|
|
22
|
-
|
|
23
|
-
expect(container.childNodes.length).toEqual(0);
|
|
24
|
-
});
|
|
25
|
-
it('should handle a row with an href in the action', function () {
|
|
26
|
-
var PAGE = 'alpha';
|
|
27
|
-
var ROW = {
|
|
28
|
-
action: {
|
|
29
|
-
page: PAGE,
|
|
30
|
-
label: 'Change'
|
|
31
|
-
}
|
|
32
|
-
};
|
|
33
|
-
|
|
34
|
-
var _render2 = (0, _react.render)( /*#__PURE__*/_react2.default.createElement(_GroupAction.default, {
|
|
35
|
-
group: ROW
|
|
36
|
-
})),
|
|
37
|
-
container = _render2.container;
|
|
38
|
-
|
|
39
|
-
var link = container.childNodes[0];
|
|
40
|
-
expect(link.tagName).toEqual('A');
|
|
41
|
-
expect(link.getAttribute('href')).toEqual("/".concat(PAGE));
|
|
42
|
-
expect(link.textContent).toEqual(ROW.action.label);
|
|
43
|
-
});
|
|
44
|
-
it('should render an aria_suffix appropriately', function () {
|
|
45
|
-
var PAGE = 'alpha';
|
|
46
|
-
var ROW = {
|
|
47
|
-
action: {
|
|
48
|
-
page: PAGE,
|
|
49
|
-
label: 'Change',
|
|
50
|
-
aria_suffix: 'the thing'
|
|
51
|
-
}
|
|
52
|
-
};
|
|
53
|
-
|
|
54
|
-
var _render3 = (0, _react.render)( /*#__PURE__*/_react2.default.createElement(_GroupAction.default, {
|
|
55
|
-
group: ROW
|
|
56
|
-
})),
|
|
57
|
-
container = _render3.container;
|
|
58
|
-
|
|
59
|
-
var link = container.childNodes[0];
|
|
60
|
-
expect(link.tagName).toEqual('A');
|
|
61
|
-
expect(link.getAttribute('href')).toEqual("/".concat(PAGE));
|
|
62
|
-
expect(link.textContent).toEqual("".concat(ROW.action.label, " ").concat(ROW.action.aria_suffix));
|
|
63
|
-
});
|
|
64
|
-
it('should handle a row with an onAction in the action', function () {
|
|
65
|
-
var ON_ACTION_CALLS = [];
|
|
66
|
-
|
|
67
|
-
var ON_ACTION = function ON_ACTION(row) {
|
|
68
|
-
ON_ACTION_CALLS.push(row);
|
|
69
|
-
};
|
|
70
|
-
|
|
71
|
-
var ROW = {
|
|
72
|
-
action: {
|
|
73
|
-
onAction: ON_ACTION,
|
|
74
|
-
label: 'Change'
|
|
75
|
-
}
|
|
76
|
-
};
|
|
77
|
-
|
|
78
|
-
var _render4 = (0, _react.render)( /*#__PURE__*/_react2.default.createElement(_GroupAction.default, {
|
|
79
|
-
group: ROW
|
|
80
|
-
})),
|
|
81
|
-
container = _render4.container;
|
|
82
|
-
|
|
83
|
-
var link = container.childNodes[0];
|
|
84
|
-
expect(link.tagName).toEqual('A');
|
|
85
|
-
expect(link.getAttribute('onClick')).toBeDefined();
|
|
86
|
-
expect(link.textContent).toEqual(ROW.action.label);
|
|
87
|
-
|
|
88
|
-
_react.fireEvent.click(link, {});
|
|
89
|
-
|
|
90
|
-
expect(ON_ACTION_CALLS.length).toEqual(1);
|
|
91
|
-
expect(ON_ACTION_CALLS[0]).toEqual(ROW);
|
|
92
|
-
});
|
|
93
|
-
});
|
|
94
|
-
});
|
|
@@ -1,94 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
|
|
3
|
-
var _react = require("@testing-library/react");
|
|
4
|
-
|
|
5
|
-
var _react2 = _interopRequireDefault(require("react"));
|
|
6
|
-
|
|
7
|
-
var _RowAction = _interopRequireDefault(require("./RowAction"));
|
|
8
|
-
|
|
9
|
-
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
10
|
-
|
|
11
|
-
// Global imports
|
|
12
|
-
// Local imports
|
|
13
|
-
describe('components', function () {
|
|
14
|
-
describe('SummaryList.RowAction', function () {
|
|
15
|
-
it('should handle a row without an action', function () {
|
|
16
|
-
var ROW = {};
|
|
17
|
-
|
|
18
|
-
var _render = (0, _react.render)( /*#__PURE__*/_react2.default.createElement(_RowAction.default, {
|
|
19
|
-
row: ROW
|
|
20
|
-
})),
|
|
21
|
-
container = _render.container;
|
|
22
|
-
|
|
23
|
-
expect(container.childNodes.length).toEqual(0);
|
|
24
|
-
});
|
|
25
|
-
it('should handle a row with an href in the action', function () {
|
|
26
|
-
var PAGE = 'alpha';
|
|
27
|
-
var ROW = {
|
|
28
|
-
action: {
|
|
29
|
-
page: PAGE,
|
|
30
|
-
label: 'Change'
|
|
31
|
-
}
|
|
32
|
-
};
|
|
33
|
-
|
|
34
|
-
var _render2 = (0, _react.render)( /*#__PURE__*/_react2.default.createElement(_RowAction.default, {
|
|
35
|
-
row: ROW
|
|
36
|
-
})),
|
|
37
|
-
container = _render2.container;
|
|
38
|
-
|
|
39
|
-
var link = container.childNodes[0];
|
|
40
|
-
expect(link.tagName).toEqual('A');
|
|
41
|
-
expect(link.getAttribute('href')).toEqual("/".concat(PAGE));
|
|
42
|
-
expect(link.textContent).toEqual(ROW.action.label);
|
|
43
|
-
});
|
|
44
|
-
it('should render an aria_suffix appropriately', function () {
|
|
45
|
-
var PAGE = 'alpha';
|
|
46
|
-
var ROW = {
|
|
47
|
-
action: {
|
|
48
|
-
page: PAGE,
|
|
49
|
-
label: 'Change',
|
|
50
|
-
aria_suffix: 'the thing'
|
|
51
|
-
}
|
|
52
|
-
};
|
|
53
|
-
|
|
54
|
-
var _render3 = (0, _react.render)( /*#__PURE__*/_react2.default.createElement(_RowAction.default, {
|
|
55
|
-
row: ROW
|
|
56
|
-
})),
|
|
57
|
-
container = _render3.container;
|
|
58
|
-
|
|
59
|
-
var link = container.childNodes[0];
|
|
60
|
-
expect(link.tagName).toEqual('A');
|
|
61
|
-
expect(link.getAttribute('href')).toEqual("/".concat(PAGE));
|
|
62
|
-
expect(link.textContent).toEqual("".concat(ROW.action.label, " ").concat(ROW.action.aria_suffix));
|
|
63
|
-
});
|
|
64
|
-
it('should handle a row with an onAction in the action', function () {
|
|
65
|
-
var ON_ACTION_CALLS = [];
|
|
66
|
-
|
|
67
|
-
var ON_ACTION = function ON_ACTION(row) {
|
|
68
|
-
ON_ACTION_CALLS.push(row);
|
|
69
|
-
};
|
|
70
|
-
|
|
71
|
-
var ROW = {
|
|
72
|
-
action: {
|
|
73
|
-
onAction: ON_ACTION,
|
|
74
|
-
label: 'Change'
|
|
75
|
-
}
|
|
76
|
-
};
|
|
77
|
-
|
|
78
|
-
var _render4 = (0, _react.render)( /*#__PURE__*/_react2.default.createElement(_RowAction.default, {
|
|
79
|
-
row: ROW
|
|
80
|
-
})),
|
|
81
|
-
container = _render4.container;
|
|
82
|
-
|
|
83
|
-
var link = container.childNodes[0];
|
|
84
|
-
expect(link.tagName).toEqual('A');
|
|
85
|
-
expect(link.getAttribute('onClick')).toBeDefined();
|
|
86
|
-
expect(link.textContent).toEqual(ROW.action.label);
|
|
87
|
-
|
|
88
|
-
_react.fireEvent.click(link, {});
|
|
89
|
-
|
|
90
|
-
expect(ON_ACTION_CALLS.length).toEqual(1);
|
|
91
|
-
expect(ON_ACTION_CALLS[0]).toEqual(ROW);
|
|
92
|
-
});
|
|
93
|
-
});
|
|
94
|
-
});
|
|
@@ -1,90 +0,0 @@
|
|
|
1
|
-
<!-- Global imports -->
|
|
2
|
-
|
|
3
|
-
import { ArgsTable, Canvas, Meta, Story } from '@storybook/addon-docs';
|
|
4
|
-
import { Details, Heading } from '@ukhomeoffice/cop-react-components';
|
|
5
|
-
|
|
6
|
-
<!-- Local imports -->
|
|
7
|
-
|
|
8
|
-
import Utils from '../../utils';
|
|
9
|
-
import SummaryList from './SummaryList';
|
|
10
|
-
|
|
11
|
-
<Meta
|
|
12
|
-
title='Components/Summary list'
|
|
13
|
-
id='D-SummaryList'
|
|
14
|
-
component={SummaryList}
|
|
15
|
-
/>
|
|
16
|
-
|
|
17
|
-
<Heading size='xl' caption='Components'>
|
|
18
|
-
Summary list
|
|
19
|
-
</Heading>
|
|
20
|
-
|
|
21
|
-
Renders a list of key-value pairs, most commonly on the **Check your answers** screen, and optionally
|
|
22
|
-
display action links.
|
|
23
|
-
|
|
24
|
-
<Canvas withToolbar>
|
|
25
|
-
<Story name='Default'>
|
|
26
|
-
{() => {
|
|
27
|
-
const onAction = (row) => {
|
|
28
|
-
console.log('action clicked', row);
|
|
29
|
-
};
|
|
30
|
-
const ROWS = [
|
|
31
|
-
{
|
|
32
|
-
pageId: 'p1',
|
|
33
|
-
fieldId: 'forename',
|
|
34
|
-
key: 'Forename(s)',
|
|
35
|
-
value: 'John',
|
|
36
|
-
},
|
|
37
|
-
{ pageId: 'p1', fieldId: 'surname', key: 'Surname', value: 'Smith' },
|
|
38
|
-
{
|
|
39
|
-
pageId: 'p2',
|
|
40
|
-
fieldId: 'dob',
|
|
41
|
-
key: 'Date of birth',
|
|
42
|
-
value: '29/08/1993',
|
|
43
|
-
action: { label: 'Change', onAction },
|
|
44
|
-
},
|
|
45
|
-
];
|
|
46
|
-
return <SummaryList rows={ROWS} />;
|
|
47
|
-
}}
|
|
48
|
-
</Story>
|
|
49
|
-
</Canvas>
|
|
50
|
-
|
|
51
|
-
<Details summary='Properties' className='no-indent'>
|
|
52
|
-
<ArgsTable of={SummaryList} />
|
|
53
|
-
</Details>
|
|
54
|
-
|
|
55
|
-
## Variant
|
|
56
|
-
|
|
57
|
-
### Read-only style
|
|
58
|
-
|
|
59
|
-
<Canvas>
|
|
60
|
-
<Story name='Read-only style'>
|
|
61
|
-
{() => {
|
|
62
|
-
const onAction = (row) => {
|
|
63
|
-
console.log('action clicked', row);
|
|
64
|
-
};
|
|
65
|
-
const ROWS = [
|
|
66
|
-
{
|
|
67
|
-
pageId: 'p1',
|
|
68
|
-
fieldId: 'forename',
|
|
69
|
-
key: 'Forename(s)',
|
|
70
|
-
value: 'John',
|
|
71
|
-
},
|
|
72
|
-
{ pageId: 'p1', fieldId: 'surname', key: 'Surname', value: 'Smith' },
|
|
73
|
-
{
|
|
74
|
-
pageId: 'p2',
|
|
75
|
-
fieldId: 'dob',
|
|
76
|
-
key: 'Date of birth',
|
|
77
|
-
value: '29/08/1993',
|
|
78
|
-
action: { label: 'Change', onAction },
|
|
79
|
-
},
|
|
80
|
-
];
|
|
81
|
-
return (
|
|
82
|
-
<SummaryList
|
|
83
|
-
classModifiers='no-border'
|
|
84
|
-
rows={ROWS}
|
|
85
|
-
noChangeAction={true}
|
|
86
|
-
/>
|
|
87
|
-
);
|
|
88
|
-
}}
|
|
89
|
-
</Story>
|
|
90
|
-
</Canvas>
|