@ukhomeoffice/cop-react-form-renderer 3.19.0 → 3.23.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (81) hide show
  1. package/dist/components/CheckYourAnswers/Answer.js +2 -2
  2. package/dist/components/CheckYourAnswers/CheckYourAnswers.js +3 -3
  3. package/dist/components/CheckYourAnswers/CheckYourAnswers.test.js +3 -3
  4. package/dist/components/FormComponent/Collection.js +3 -3
  5. package/dist/components/FormComponent/Container.js +3 -3
  6. package/dist/components/FormComponent/Container.test.js +2 -2
  7. package/dist/components/FormComponent/FormComponent.js +4 -4
  8. package/dist/components/FormPage/FormPage.js +3 -3
  9. package/dist/components/FormPage/FormPage.test.js +1 -1
  10. package/dist/components/FormRenderer/FormRenderer.js +17 -7
  11. package/dist/components/FormRenderer/FormRenderer.test.js +2 -2
  12. package/dist/components/FormRenderer/helpers/getCYA.js +11 -1
  13. package/dist/components/FormRenderer/helpers/getCYA.test.js +13 -4
  14. package/dist/components/FormRenderer/helpers/getFormState.js +1 -1
  15. package/dist/components/FormRenderer/helpers/getNextPageId.js +20 -3
  16. package/dist/components/FormRenderer/helpers/getNextPageId.test.js +62 -0
  17. package/dist/components/FormRenderer/helpers/getRelevantPages.js +27 -0
  18. package/dist/components/FormRenderer/helpers/getRelevantPages.test.js +71 -0
  19. package/dist/components/FormRenderer/helpers/index.js +3 -0
  20. package/dist/components/PageActions/ActionButton.js +1 -1
  21. package/dist/components/PageActions/ActionButton.test.js +1 -1
  22. package/dist/components/SummaryList/GroupAction.js +2 -2
  23. package/dist/components/SummaryList/RowAction.js +1 -1
  24. package/dist/components/SummaryList/SummaryList.js +1 -1
  25. package/dist/components/SummaryList/SummaryList.test.js +1 -1
  26. package/dist/components/TaskList/Task.js +1 -1
  27. package/dist/components/TaskList/TaskList.js +2 -2
  28. package/dist/context/HooksContext/HooksContext.js +3 -3
  29. package/dist/context/HooksContext/HooksContext.test.js +1 -1
  30. package/dist/context/HooksContext/index.js +1 -1
  31. package/dist/context/ValidationContext/ValidationContext.js +1 -1
  32. package/dist/context/ValidationContext/ValidationContext.test.js +1 -1
  33. package/dist/context/ValidationContext/index.js +1 -1
  34. package/dist/hooks/index.js +1 -1
  35. package/dist/hooks/useRefData.js +3 -3
  36. package/dist/models/FormPages.js +3 -1
  37. package/dist/utils/CheckYourAnswers/getCYARowForGroup.js +2 -2
  38. package/dist/utils/CheckYourAnswers/getCYARowsForCollection.js +5 -3
  39. package/dist/utils/CheckYourAnswers/getCYARowsForCollection.test.js +2 -2
  40. package/dist/utils/CheckYourAnswers/getCYARowsForContainer.js +2 -2
  41. package/dist/utils/CheckYourAnswers/getCYARowsForPage.js +1 -1
  42. package/dist/utils/CheckYourAnswers/getCYARowsForPage.test.js +2 -2
  43. package/dist/utils/Component/cleanAttributes.js +1 -1
  44. package/dist/utils/Component/cleanAttributes.test.js +1 -1
  45. package/dist/utils/Component/getComponent.js +1 -1
  46. package/dist/utils/Component/getComponentTests/getComponent.calculation.test.js +2 -2
  47. package/dist/utils/Component/isEditable.test.js +1 -1
  48. package/dist/utils/Component/wrapInFormGroup.js +1 -1
  49. package/dist/utils/Condition/meetsCondition.js +1 -1
  50. package/dist/utils/Condition/setupConditions.js +2 -2
  51. package/dist/utils/Container/setupNesting.js +2 -2
  52. package/dist/utils/Container/setupNesting.test.js +2 -2
  53. package/dist/utils/Data/applyFormula.js +2 -2
  54. package/dist/utils/Data/getOptions.js +2 -2
  55. package/dist/utils/Data/refDataToOptions.js +2 -2
  56. package/dist/utils/Data/setDataItem.js +1 -1
  57. package/dist/utils/Data/setupFormData.js +2 -2
  58. package/dist/utils/Data/setupFormData.test.js +2 -2
  59. package/dist/utils/Data/setupRefDataUrlForComponent.js +2 -2
  60. package/dist/utils/FormPage/getFormPage.js +2 -2
  61. package/dist/utils/FormPage/getFormPage.test.js +2 -2
  62. package/dist/utils/FormPage/getFormPages.js +2 -2
  63. package/dist/utils/FormPage/getFormPages.test.js +2 -2
  64. package/dist/utils/FormPage/getPageActions.js +3 -3
  65. package/dist/utils/FormPage/index.js +4 -1
  66. package/dist/utils/FormPage/showFormPageCYA.js +27 -0
  67. package/dist/utils/FormPage/showFormPageCYA.test.js +30 -0
  68. package/dist/utils/FormPage/useComponent.js +2 -2
  69. package/dist/utils/FormPage/useComponent.test.js +2 -2
  70. package/dist/utils/Format/formatDataForComponent.test.js +1 -1
  71. package/dist/utils/Format/formatDataForForm.js +2 -2
  72. package/dist/utils/Format/formatDataForPage.test.js +1 -1
  73. package/dist/utils/Hub/getFormHub.test.js +2 -2
  74. package/dist/utils/Meta/documents/setDocumentForField.js +2 -2
  75. package/dist/utils/Validate/validateCollection.js +2 -2
  76. package/dist/utils/Validate/validateComponent.js +1 -1
  77. package/dist/utils/Validate/validateDate.test.js +1 -1
  78. package/dist/utils/Validate/validatePage.js +2 -2
  79. package/dist/utils/Validate/validatePage.test.js +2 -2
  80. package/dist/utils/index.js +2 -2
  81. package/package.json +2 -2
@@ -15,9 +15,9 @@ var _FormComponent = _interopRequireDefault(require("../FormComponent"));
15
15
 
16
16
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
17
17
 
18
- function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) { symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); } keys.push.apply(keys, symbols); } return keys; }
18
+ function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
19
19
 
20
- function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(Object(source), true).forEach(function (key) { _defineProperty(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }
20
+ function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
21
21
 
22
22
  function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
23
23
 
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
 
3
- function _typeof(obj) { "@babel/helpers - typeof"; if (typeof Symbol === "function" && typeof Symbol.iterator === "symbol") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }; } return _typeof(obj); }
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
4
 
5
5
  Object.defineProperty(exports, "__esModule", {
6
6
  value: true
@@ -31,9 +31,9 @@ function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj &&
31
31
 
32
32
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
33
33
 
34
- function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) { symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); } keys.push.apply(keys, symbols); } return keys; }
34
+ function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
35
35
 
36
- function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(Object(source), true).forEach(function (key) { _defineProperty(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }
36
+ function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
37
37
 
38
38
  function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
39
39
 
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
 
3
- function _typeof(obj) { "@babel/helpers - typeof"; if (typeof Symbol === "function" && typeof Symbol.iterator === "symbol") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }; } return _typeof(obj); }
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
4
 
5
5
  var _axios = _interopRequireDefault(require("axios"));
6
6
 
@@ -56,9 +56,9 @@ function asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) { try
56
56
 
57
57
  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); }); }; }
58
58
 
59
- function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) { symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); } keys.push.apply(keys, symbols); } return keys; }
59
+ function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
60
60
 
61
- function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(Object(source), true).forEach(function (key) { _defineProperty(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }
61
+ function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
62
62
 
63
63
  function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
64
64
 
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
 
3
- function _typeof(obj) { "@babel/helpers - typeof"; if (typeof Symbol === "function" && typeof Symbol.iterator === "symbol") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }; } return _typeof(obj); }
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
4
 
5
5
  Object.defineProperty(exports, "__esModule", {
6
6
  value: true
@@ -27,9 +27,9 @@ function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj &&
27
27
 
28
28
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
29
29
 
30
- function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) { symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); } keys.push.apply(keys, symbols); } return keys; }
30
+ function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
31
31
 
32
- function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(Object(source), true).forEach(function (key) { _defineProperty(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }
32
+ function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
33
33
 
34
34
  function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
35
35
 
@@ -19,11 +19,11 @@ var _excluded = ["container", "value", "formData", "onChange", "wrap"];
19
19
 
20
20
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
21
21
 
22
- function _extends() { _extends = Object.assign || 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); }
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
23
 
24
- function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) { symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); } keys.push.apply(keys, symbols); } return keys; }
24
+ function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
25
25
 
26
- function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(Object(source), true).forEach(function (key) { _defineProperty(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }
26
+ function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
27
27
 
28
28
  function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
29
29
 
@@ -18,9 +18,9 @@ var _FormComponent = _interopRequireDefault(require("./FormComponent"));
18
18
 
19
19
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
20
20
 
21
- function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) { symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); } keys.push.apply(keys, symbols); } return keys; }
21
+ function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
22
22
 
23
- function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(Object(source), true).forEach(function (key) { _defineProperty(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }
23
+ function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
24
24
 
25
25
  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); } }
26
26
 
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
 
3
- function _typeof(obj) { "@babel/helpers - typeof"; if (typeof Symbol === "function" && typeof Symbol.iterator === "symbol") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }; } return _typeof(obj); }
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
4
 
5
5
  Object.defineProperty(exports, "__esModule", {
6
6
  value: true
@@ -31,13 +31,13 @@ function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj &&
31
31
 
32
32
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
33
33
 
34
- function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) { symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); } keys.push.apply(keys, symbols); } return keys; }
34
+ function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
35
35
 
36
- function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(Object(source), true).forEach(function (key) { _defineProperty(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }
36
+ function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
37
37
 
38
38
  function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
39
39
 
40
- function _extends() { _extends = Object.assign || 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); }
40
+ 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); }
41
41
 
42
42
  function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }
43
43
 
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
 
3
- function _typeof(obj) { "@babel/helpers - typeof"; if (typeof Symbol === "function" && typeof Symbol.iterator === "symbol") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }; } return _typeof(obj); }
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
4
 
5
5
  Object.defineProperty(exports, "__esModule", {
6
6
  value: true
@@ -29,9 +29,9 @@ function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj &&
29
29
 
30
30
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
31
31
 
32
- function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) { symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); } keys.push.apply(keys, symbols); } return keys; }
32
+ function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
33
33
 
34
- function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(Object(source), true).forEach(function (key) { _defineProperty(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }
34
+ function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
35
35
 
36
36
  function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
37
37
 
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
 
3
- function _typeof(obj) { "@babel/helpers - typeof"; if (typeof Symbol === "function" && typeof Symbol.iterator === "symbol") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }; } return _typeof(obj); }
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
4
 
5
5
  var _react = require("@testing-library/react");
6
6
 
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
 
3
- function _typeof(obj) { "@babel/helpers - typeof"; if (typeof Symbol === "function" && typeof Symbol.iterator === "symbol") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }; } return _typeof(obj); }
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
4
 
5
5
  Object.defineProperty(exports, "__esModule", {
6
6
  value: true
@@ -39,11 +39,11 @@ function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj &&
39
39
 
40
40
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
41
41
 
42
- function _extends() { _extends = Object.assign || 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); }
42
+ 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); }
43
43
 
44
- function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) { symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); } keys.push.apply(keys, symbols); } return keys; }
44
+ function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
45
45
 
46
- function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(Object(source), true).forEach(function (key) { _defineProperty(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }
46
+ function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
47
47
 
48
48
  function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
49
49
 
@@ -101,6 +101,8 @@ var DEFAULT_CLASS = 'hods-form';
101
101
  exports.DEFAULT_CLASS = DEFAULT_CLASS;
102
102
 
103
103
  var InternalFormRenderer = function InternalFormRenderer(_ref2) {
104
+ var _formState$page2;
105
+
104
106
  var title = _ref2.title,
105
107
  type = _ref2.type,
106
108
  components = _ref2.components,
@@ -414,6 +416,12 @@ var InternalFormRenderer = function InternalFormRenderer(_ref2) {
414
416
  }
415
417
  }
416
418
 
419
+ if (action.type === _models.PageAction.TYPES.NAVIGATE) {
420
+ var _formState$page;
421
+
422
+ onPageChange(_helpers.default.getNextPageId(type, pages, pageId, action, (_formState$page = formState.page) === null || _formState$page === void 0 ? void 0 : _formState$page.formData));
423
+ }
424
+
417
425
  if (action.type === _models.PageAction.TYPES.CANCEL) {
418
426
  hooks.onCancel();
419
427
  }
@@ -428,8 +436,10 @@ var InternalFormRenderer = function InternalFormRenderer(_ref2) {
428
436
  return /*#__PURE__*/_react.default.createElement("div", {
429
437
  className: classes()
430
438
  }, title && !hide_title && pageId === _models.FormPages.HUB && /*#__PURE__*/_react.default.createElement(_copReactComponents.LargeHeading, null, title), formState.cya && /*#__PURE__*/_react.default.createElement(_CheckYourAnswers.default, _extends({
431
- pages: currentTask.fullPages ? currentTask.fullPages : pages
432
- }, cya, formState.cya, {
439
+ pages: _helpers.default.getRelevantPages(formState, pages, currentTask.fullPages)
440
+ }, cya, ((_formState$page2 = formState.page) === null || _formState$page2 === void 0 ? void 0 : _formState$page2.type) === _models.FormPages.PARTIAL_CYA && {
441
+ actions: formState.page.actions
442
+ }, formState.cya, {
433
443
  onAction: onCYAAction,
434
444
  onRowAction: onCYARowAction,
435
445
  summaryListClassModifiers: summaryListClassModifiers,
@@ -442,7 +452,7 @@ var InternalFormRenderer = function InternalFormRenderer(_ref2) {
442
452
  refNumber: data['businessKey'],
443
453
  refTitle: _hub.refTitle,
444
454
  onTaskAction: onTaskAction
445
- }), formState.page && /*#__PURE__*/_react.default.createElement(_FormPage.default, {
455
+ }), formState.page && !formState.cya && /*#__PURE__*/_react.default.createElement(_FormPage.default, {
446
456
  page: formState.page,
447
457
  onAction: onPageAction
448
458
  }));
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
 
3
- function _typeof(obj) { "@babel/helpers - typeof"; if (typeof Symbol === "function" && typeof Symbol.iterator === "symbol") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }; } return _typeof(obj); }
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
4
 
5
5
  var _react = require("@testing-library/react");
6
6
 
@@ -40,7 +40,7 @@ function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj &&
40
40
 
41
41
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
42
42
 
43
- function _extends() { _extends = Object.assign || 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); }
43
+ 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); }
44
44
 
45
45
  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); } }
46
46
 
@@ -15,7 +15,7 @@ var _models = require("../../../models");
15
15
  * @param {object} hub The hub, if there is one.
16
16
  * @returns A configuration object for the Check your answers screen.
17
17
  */
18
- var getCYA = function getCYA(pageId, hub) {
18
+ var getCYA = function getCYA(pageId, pages, hub) {
19
19
  if (pageId === _models.FormPages.HUB && hub === _models.HubFormats.CYA) {
20
20
  return {
21
21
  title: ''
@@ -24,6 +24,16 @@ var getCYA = function getCYA(pageId, hub) {
24
24
  return {};
25
25
  }
26
26
 
27
+ var currentPage = pages === null || pages === void 0 ? void 0 : pages.find(function (p) {
28
+ return p.id === pageId;
29
+ });
30
+
31
+ if ((currentPage === null || currentPage === void 0 ? void 0 : currentPage.type) === _models.FormPages.PARTIAL_CYA) {
32
+ return {
33
+ title: currentPage.title
34
+ };
35
+ }
36
+
27
37
  return undefined;
28
38
  };
29
39
 
@@ -19,18 +19,27 @@ describe('components', function () {
19
19
  expect((0, _getCYA.default)(_models.FormPages.CYA)).toEqual({});
20
20
  });
21
21
  it('should give an object with a blank title if the pageId is "hub" and the hub is the CYA', function () {
22
- expect((0, _getCYA.default)(_models.FormPages.HUB, _models.HubFormats.CYA)).toEqual({
22
+ expect((0, _getCYA.default)(_models.FormPages.HUB, [], _models.HubFormats.CYA)).toEqual({
23
23
  title: ''
24
24
  });
25
25
  });
26
26
  it('should give undefined if pageId is "hub" and the hub is NOT the CYA', function () {
27
- expect((0, _getCYA.default)(_models.FormPages.HUB, HUB)).toBeUndefined();
27
+ expect((0, _getCYA.default)(_models.FormPages.HUB, [], HUB)).toBeUndefined();
28
28
  });
29
29
  it('should give undefined if pageId is NOT "hub" and the hub is NOT the CYA', function () {
30
- expect((0, _getCYA.default)(_models.FormPages.HUB, HUB)).toBeUndefined();
30
+ expect((0, _getCYA.default)(_models.FormPages.HUB, [], HUB)).toBeUndefined();
31
31
  });
32
32
  it('should give undefined if pageId is NOT "hub" and the hub is the CYA', function () {
33
- expect((0, _getCYA.default)('bob', _models.HubFormats.CYA)).toBeUndefined();
33
+ expect((0, _getCYA.default)('bob', [], _models.HubFormats.CYA)).toBeUndefined();
34
+ });
35
+ it('should return an object with a title if the current page has type partial-cya', function () {
36
+ expect((0, _getCYA.default)('pageId', [{
37
+ id: 'pageId',
38
+ type: 'partial-cya',
39
+ title: 'page title'
40
+ }], _models.HubFormats.CYA)).toEqual({
41
+ title: 'page title'
42
+ });
34
43
  });
35
44
  });
36
45
  });
@@ -23,7 +23,7 @@ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { de
23
23
  var getFormState = function getFormState(pageId, pages, hub) {
24
24
  return {
25
25
  pageId: pageId,
26
- cya: (0, _getCYA.default)(pageId, hub),
26
+ cya: (0, _getCYA.default)(pageId, pages, hub),
27
27
  page: (0, _getPage.default)(pageId, pages, hub)
28
28
  };
29
29
  };
@@ -11,8 +11,24 @@ var _FormPage = _interopRequireDefault(require("../../../utils/FormPage"));
11
11
 
12
12
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
13
13
 
14
- var getNextHubPageId = function getNextHubPageId(action) {
15
- return (action === null || action === void 0 ? void 0 : action.page) || _models.FormPages.HUB;
14
+ var getNextHubPageId = function getNextHubPageId(action, currentPageId, pages, formData, formType) {
15
+ var _action$pages;
16
+
17
+ if (!currentPageId && formType === _models.FormTypes.FORM_WITH_TASK) {
18
+ return pages.length > 0 ? pages[0].id : undefined;
19
+ }
20
+
21
+ var nextPage = undefined;
22
+ action === null || action === void 0 ? void 0 : (_action$pages = action.pages) === null || _action$pages === void 0 ? void 0 : _action$pages.forEach(function (page) {
23
+ if (_FormPage.default.show({
24
+ show_when: page.show_when
25
+ }, formData)) {
26
+ nextPage = page.pageId;
27
+ }
28
+
29
+ ;
30
+ });
31
+ return nextPage || (action === null || action === void 0 ? void 0 : action.page) || _models.FormPages.HUB;
16
32
  };
17
33
 
18
34
  var getNextCYAPageId = function getNextCYAPageId(pages, currentPageId, formData) {
@@ -60,8 +76,9 @@ var getNextPageId = function getNextPageId(formType, pages, currentPageId, actio
60
76
  case _models.FormTypes.CYA:
61
77
  return getNextCYAPageId(pages, currentPageId, formData);
62
78
 
79
+ case _models.FormTypes.FORM_WITH_TASK:
63
80
  case _models.FormTypes.TASK:
64
- return getNextHubPageId(action);
81
+ return getNextHubPageId(action, currentPageId, pages, formData, formType);
65
82
 
66
83
  case _models.FormTypes.WIZARD:
67
84
  return getNextWizardPageId(pages, currentPageId, formData);
@@ -172,6 +172,68 @@ describe('components', function () {
172
172
  expect((0, _getNextPageId.default)(FORM_TYPE, PAGES)).toEqual(_models.FormPages.HUB);
173
173
  });
174
174
  });
175
+ describe("when the form type is '".concat(_models.FormTypes.FORM_WITH_TASK, "'"), function () {
176
+ var FORM_TYPE = _models.FormTypes.FORM_WITH_TASK;
177
+ var FORM_WITH_TASK_PAGES = [{
178
+ id: 'alpha',
179
+ 'actions': [{
180
+ 'type': 'saveAndNavigate',
181
+ 'page': 'bravo'
182
+ }]
183
+ }, {
184
+ id: 'bravo',
185
+ 'actions': [{
186
+ 'type': 'irregularType',
187
+ 'pages': [{
188
+ 'pageId': 'charlie',
189
+ 'show_when': {
190
+ 'field': 'fieldOne',
191
+ 'op': '=',
192
+ 'value': 'valueOne'
193
+ }
194
+ }, {
195
+ 'pageId': 'delta',
196
+ 'show_when': {
197
+ 'field': 'fieldOne',
198
+ 'op': '=',
199
+ 'value': 'valueTwo'
200
+ }
201
+ }]
202
+ }]
203
+ }, {
204
+ id: 'charlie',
205
+ 'actions': [{
206
+ 'type': 'saveAndNavigate',
207
+ 'page': 'hub'
208
+ }]
209
+ }, {
210
+ id: 'delta',
211
+ 'actions': [{
212
+ 'type': 'saveAndNavigate',
213
+ 'page': 'hub'
214
+ }]
215
+ }, {
216
+ id: 'echo'
217
+ }, {
218
+ id: 'foxtrot'
219
+ }];
220
+ it("should return the first page by default", function () {
221
+ expect((0, _getNextPageId.default)(FORM_TYPE, PAGES)).toEqual(FORM_WITH_TASK_PAGES[0].id);
222
+ });
223
+ it("should then return the second page", function () {
224
+ expect((0, _getNextPageId.default)(FORM_TYPE, PAGES, FORM_WITH_TASK_PAGES[0].id, FORM_WITH_TASK_PAGES[0].actions[0])).toEqual(FORM_WITH_TASK_PAGES[1].id);
225
+ });
226
+ it("should then move to the next page based on the form data", function () {
227
+ expect((0, _getNextPageId.default)(FORM_TYPE, PAGES, FORM_WITH_TASK_PAGES[1].id, FORM_WITH_TASK_PAGES[1].actions[0], {
228
+ fieldOne: 'valueOne'
229
+ })).toEqual(FORM_WITH_TASK_PAGES[2].id);
230
+ });
231
+ it("should then move to the other page based on the form data", function () {
232
+ expect((0, _getNextPageId.default)(FORM_TYPE, PAGES, FORM_WITH_TASK_PAGES[1].id, FORM_WITH_TASK_PAGES[1].actions[0], {
233
+ fieldOne: 'valueTwo'
234
+ })).toEqual(FORM_WITH_TASK_PAGES[3].id);
235
+ });
236
+ });
175
237
  });
176
238
  });
177
239
  });
@@ -0,0 +1,27 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.default = void 0;
7
+
8
+ var _models = require("../../../models");
9
+
10
+ var slicePages = function slicePages(pages, currentPageId) {
11
+ return pages.slice(0, pages.findIndex(function (p) {
12
+ return p.pageId === currentPageId;
13
+ }));
14
+ };
15
+
16
+ var getRelevantPages = function getRelevantPages(formState, pages, currentTaskPages) {
17
+ var _formState$page;
18
+
19
+ if (((_formState$page = formState.page) === null || _formState$page === void 0 ? void 0 : _formState$page.type) === _models.FormPages.PARTIAL_CYA) {
20
+ return currentTaskPages ? slicePages(currentTaskPages, formState.pageId) : slicePages(pages, formState.pageId);
21
+ }
22
+
23
+ return currentTaskPages ? currentTaskPages : pages;
24
+ };
25
+
26
+ var _default = getRelevantPages;
27
+ exports.default = _default;
@@ -0,0 +1,71 @@
1
+ "use strict";
2
+
3
+ var _models = require("../../../models");
4
+
5
+ var _getRelevantPages = _interopRequireDefault(require("../helpers/getRelevantPages"));
6
+
7
+ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
8
+
9
+ // Local imports
10
+ describe('components', function () {
11
+ describe('FormRenderer', function () {
12
+ describe('helpers', function () {
13
+ describe('getRelevantPages', function () {
14
+ var pages = [{
15
+ pageId: 'page1'
16
+ }, {
17
+ pageId: 'page2'
18
+ }, {
19
+ pageId: 'page3'
20
+ }, {
21
+ pageId: 'page4'
22
+ }, {
23
+ pageId: 'page5'
24
+ }];
25
+ var taskListPages = [{
26
+ pageId: 'taskPage1'
27
+ }, {
28
+ pageId: 'taskPage2'
29
+ }, {
30
+ pageId: 'taskPage3'
31
+ }, {
32
+ pageId: 'taskPage4'
33
+ }, {
34
+ pageId: 'taskPage5'
35
+ }];
36
+ it('return all pages from the start of the given list to the current page outside of a task when the page type is partial-cya', function () {
37
+ var formState = {
38
+ page: {
39
+ type: _models.FormPages.PARTIAL_CYA
40
+ },
41
+ pageId: 'page3'
42
+ };
43
+ expect((0, _getRelevantPages.default)(formState, pages, undefined)).toEqual(pages.slice(0, 2));
44
+ });
45
+ it('return all pages from the start of the given list to the current page in a task when the page type is partial-cya', function () {
46
+ var formState = {
47
+ page: {
48
+ type: _models.FormPages.PARTIAL_CYA
49
+ },
50
+ pageId: 'taskPage4'
51
+ };
52
+ expect((0, _getRelevantPages.default)(formState, pages, taskListPages)).toEqual(taskListPages.slice(0, 3));
53
+ });
54
+ it('return all pages when the page type is not partial-cya', function () {
55
+ var formState = {
56
+ page: {},
57
+ pageId: 'page2'
58
+ };
59
+ expect((0, _getRelevantPages.default)(formState, pages, undefined)).toEqual(pages);
60
+ });
61
+ it('return all task pages when the page type is not partial-cya', function () {
62
+ var formState = {
63
+ page: {},
64
+ pageId: 'taskPage2'
65
+ };
66
+ expect((0, _getRelevantPages.default)(formState, pages, taskListPages)).toEqual(taskListPages);
67
+ });
68
+ });
69
+ });
70
+ });
71
+ });
@@ -13,6 +13,8 @@ var _cleanHiddenNestedData = _interopRequireDefault(require("./cleanHiddenNested
13
13
 
14
14
  var _getFormState = _interopRequireDefault(require("./getFormState"));
15
15
 
16
+ var _getRelevantPages = _interopRequireDefault(require("./getRelevantPages"));
17
+
16
18
  var _getNextPageId = _interopRequireDefault(require("./getNextPageId"));
17
19
 
18
20
  var _getPage = _interopRequireDefault(require("./getPage"));
@@ -29,6 +31,7 @@ var helpers = {
29
31
  canCYASubmit: _canCYASubmit.default,
30
32
  cleanHiddenNestedData: _cleanHiddenNestedData.default,
31
33
  getFormState: _getFormState.default,
34
+ getRelevantPages: _getRelevantPages.default,
32
35
  getNextPageId: _getNextPageId.default,
33
36
  getPage: _getPage.default,
34
37
  getSubmissionStatus: _getSubmissionStatus.default,
@@ -17,7 +17,7 @@ var _excluded = ["action", "onAction"];
17
17
 
18
18
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
19
19
 
20
- function _extends() { _extends = Object.assign || 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); }
20
+ 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); }
21
21
 
22
22
  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; }
23
23
 
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
 
3
- function _typeof(obj) { "@babel/helpers - typeof"; if (typeof Symbol === "function" && typeof Symbol.iterator === "symbol") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }; } return _typeof(obj); }
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
4
 
5
5
  var _react = require("@testing-library/react");
6
6
 
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
 
3
- function _typeof(obj) { "@babel/helpers - typeof"; if (typeof Symbol === "function" && typeof Symbol.iterator === "symbol") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }; } return _typeof(obj); }
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
4
 
5
5
  Object.defineProperty(exports, "__esModule", {
6
6
  value: true
@@ -21,7 +21,7 @@ function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "functio
21
21
 
22
22
  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; }
23
23
 
24
- function _extends() { _extends = Object.assign || 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); }
24
+ 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); }
25
25
 
26
26
  function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }
27
27