@ukhomeoffice/cop-react-form-renderer 5.51.0 → 6.0.0

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.
@@ -1,4 +1,4 @@
1
- @import "node_modules/govuk-frontend/govuk/_base";
1
+ @import "govuk-frontend/dist/govuk/_base";
2
2
 
3
3
  .hods-form {
4
4
  &__page {
@@ -1,4 +1,4 @@
1
- @import "node_modules/govuk-frontend/govuk/_base";
1
+ @import "govuk-frontend/dist/govuk/_base";
2
2
 
3
3
  .hods-form {
4
4
  display: block;
@@ -9,6 +9,7 @@ var _getNextPageId = _interopRequireDefault(require("./getNextPageId"));
9
9
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
10
10
  var getSubmissionStatus = function getSubmissionStatus(formType, pages, currentPageId, action, formData, currentTask, isCompleted, sections) {
11
11
  if (formType === _models.FormTypes.TASK || formType === _models.FormTypes.FORM_WITH_TASK) {
12
+ var _currentTask$pages;
12
13
  var formStatus = formData.formStatus || {};
13
14
  formStatus.tasks = formStatus.tasks || {};
14
15
  formStatus.tasks[currentTask.name] = formStatus.tasks[currentTask.name] || {};
@@ -42,7 +43,7 @@ var getSubmissionStatus = function getSubmissionStatus(formType, pages, currentP
42
43
  complete: false,
43
44
  currentPage: (0, _getNextPageId.default)(formType, pages, currentPageId, action, formData)
44
45
  };
45
- } else {
46
+ } else if ((_currentTask$pages = currentTask.pages) !== null && _currentTask$pages !== void 0 && _currentTask$pages.includes(currentPageId)) {
46
47
  formStatus.tasks[currentTask.name] = {
47
48
  complete: !!(action !== null && action !== void 0 && action.complete),
48
49
  currentPage: currentPageId
@@ -275,6 +275,26 @@ describe('components', function () {
275
275
  })
276
276
  });
277
277
  });
278
+ it('should not update the current task state if the current page does not belong in the task', function () {
279
+ var CUSTOM_FORM_TYPE = _models.FormTypes.FORM_WITH_TASK;
280
+ var ACTION = _models.PageAction.DEFAULTS.saveAndContinue;
281
+ var CURRENT_TASK = {
282
+ name: 'test-task',
283
+ pages: ['page-a']
284
+ };
285
+ var CURRENT_PAGE_ID = 'page-b';
286
+ var CUSTOM_FORM_DATA = {
287
+ formStatus: {
288
+ tasks: {
289
+ 'test-task': {
290
+ complete: false,
291
+ currentPage: 'page-a'
292
+ }
293
+ }
294
+ }
295
+ };
296
+ expect((0, _getSubmissionStatus.default)(CUSTOM_FORM_TYPE, PAGES, CURRENT_PAGE_ID, ACTION, CUSTOM_FORM_DATA, CURRENT_TASK, true, [])).toMatchObject(CUSTOM_FORM_DATA.formStatus);
297
+ });
278
298
  });
279
299
  });
280
300
  });
@@ -1,5 +1,5 @@
1
- @import 'node_modules/govuk-frontend/govuk/_base';
2
- @import 'node_modules/govuk-frontend/govuk/components/summary-list/_summary-list';
1
+ @import 'govuk-frontend/dist/govuk/_base';
2
+ @import 'govuk-frontend/dist/govuk/components/summary-list/_summary-list';
3
3
 
4
4
  .govuk-summary-list__title {
5
5
  width: 100%;
@@ -1,4 +1,4 @@
1
- @import 'node_modules/govuk-frontend/govuk/_base';
1
+ @import 'govuk-frontend/dist/govuk/_base';
2
2
 
3
3
  // Task list pattern
4
4
 
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@ukhomeoffice/cop-react-form-renderer",
3
- "version": "5.51.0",
3
+ "version": "6.0.0",
4
4
  "private": false,
5
5
  "scripts": {
6
6
  "clean": "rimraf dist",
@@ -16,10 +16,11 @@
16
16
  "post-compile": "rimraf dist/*.test.* dist/**/*.test.* dist/**/*.stories.* dist/docs dist/assets"
17
17
  },
18
18
  "dependencies": {
19
- "@ukhomeoffice/cop-react-components": "^3.15.7",
19
+ "@ukhomeoffice/cop-react-components": "^4.0.0",
20
20
  "axios": "^0.23.0",
21
21
  "dayjs": "^1.11.0",
22
- "govuk-frontend": "^4.3.1",
22
+ "govuk-frontend": "^5.0.0",
23
+ "sass": "^1.69.5",
23
24
  "web-vitals": "^1.0.1"
24
25
  },
25
26
  "devDependencies": {
@@ -48,7 +49,6 @@
48
49
  "eslint-config-airbnb": "^19.0.4",
49
50
  "eslint-config-prettier": "^8.6.0",
50
51
  "html-react-parser": "^0.10.5",
51
- "node-sass": "^6.0.1",
52
52
  "prop-types": "^15.8.1",
53
53
  "react": "^16.13.1",
54
54
  "react-dom": "^16.13.1",