@ukhomeoffice/cop-react-form-renderer 2.2.0 → 2.6.1-alpha
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/components/FormComponent/Container.test.js +250 -0
- package/dist/components/FormComponent/FormComponent.js +101 -22
- package/dist/components/FormPage/FormPage.js +2 -1
- package/dist/components/FormRenderer/FormRenderer.js +105 -6
- package/dist/components/FormRenderer/FormRenderer.test.js +235 -0
- package/dist/components/FormRenderer/helpers/getNextPageId.js +3 -0
- package/dist/components/FormRenderer/helpers/getNextPageId.test.js +6 -0
- package/dist/components/FormRenderer/helpers/getPage.js +1 -1
- package/dist/components/FormRenderer/helpers/getSubmissionStatus.js +18 -1
- package/dist/components/FormRenderer/helpers/getSubmissionStatus.test.js +44 -6
- package/dist/components/FormRenderer/helpers/getUpdatedSectionStates.js +50 -0
- package/dist/components/FormRenderer/helpers/getUpdatedSectionStates.test.js +122 -0
- package/dist/components/FormRenderer/helpers/index.js +7 -1
- package/dist/components/TaskList/Task.js +83 -0
- package/dist/components/TaskList/Task.test.js +112 -0
- package/dist/components/TaskList/TaskList.js +112 -0
- package/dist/components/TaskList/TaskList.scss +70 -0
- package/dist/components/TaskList/TaskList.stories.mdx +57 -0
- package/dist/components/TaskList/TaskList.test.js +223 -0
- package/dist/components/TaskList/TaskState.js +42 -0
- package/dist/components/TaskList/TaskState.test.js +99 -0
- package/dist/components/TaskList/index.js +13 -0
- package/dist/hooks/index.js +19 -1
- package/dist/json/taskList.json +228 -0
- package/dist/json/userProfile.data.json +2 -1
- package/dist/models/ComponentTypes.js +5 -1
- package/dist/models/FormTypes.js +2 -0
- package/dist/models/HubFormats.js +3 -1
- package/dist/models/PageAction.js +5 -0
- package/dist/models/TaskStates.js +41 -0
- package/dist/models/index.js +8 -0
- package/dist/utils/CheckYourAnswers/getCYARowsForContainer.js +40 -0
- package/dist/utils/CheckYourAnswers/getCYARowsForContainer.test.js +257 -0
- package/dist/utils/CheckYourAnswers/getCYARowsForPage.js +9 -1
- package/dist/utils/CheckYourAnswers/getCYARowsForPage.test.js +44 -0
- package/dist/utils/CheckYourAnswers/showComponentCYA.js +6 -0
- package/dist/utils/Component/cleanAttributes.js +1 -1
- package/dist/utils/Component/getComponent.js +8 -0
- package/dist/utils/Component/isEditable.js +1 -1
- package/dist/utils/Component/showComponent.js +2 -20
- package/dist/utils/Condition/index.js +19 -0
- package/dist/utils/Condition/meetsAllConditions.js +40 -0
- package/dist/utils/Condition/meetsAllConditions.test.js +62 -0
- package/dist/utils/{meetsCondition.js → Condition/meetsCondition.js} +0 -0
- package/dist/utils/Condition/meetsCondition.test.js +302 -0
- package/dist/utils/Condition/setupConditions.js +47 -0
- package/dist/utils/Condition/setupConditions.test.js +35 -0
- package/dist/utils/Container/getEditableComponents.js +38 -0
- package/dist/utils/Container/getEditableComponents.test.js +157 -0
- package/dist/utils/Container/index.js +22 -0
- package/dist/utils/Container/setupNesting.js +45 -0
- package/dist/utils/Container/setupNesting.test.js +92 -0
- package/dist/utils/Container/showContainer.js +61 -0
- package/dist/utils/Container/showContainer.test.js +128 -0
- package/dist/utils/Data/getDataPath.js +90 -0
- package/dist/utils/Data/getDataPath.test.js +52 -0
- package/dist/utils/Data/index.js +3 -0
- package/dist/utils/FormPage/getFormPage.js +4 -2
- package/dist/utils/FormPage/getFormPage.test.js +18 -7
- package/dist/utils/FormPage/getFormPages.test.js +5 -2
- package/dist/utils/FormPage/getPageActions.js +6 -0
- package/dist/utils/FormPage/index.js +0 -3
- package/dist/utils/FormPage/showFormPage.js +7 -27
- package/dist/utils/Hub/getFormHub.js +4 -0
- package/dist/utils/Hub/getFormHub.test.js +15 -4
- package/dist/utils/Validate/additional/index.js +55 -0
- package/dist/utils/Validate/additional/index.test.js +69 -0
- package/dist/utils/Validate/additional/mustBeAfter.js +37 -0
- package/dist/utils/Validate/additional/mustBeAfter.test.js +98 -0
- package/dist/utils/Validate/additional/mustBeBefore.js +35 -0
- package/dist/utils/Validate/additional/mustBeBefore.test.js +66 -0
- package/dist/utils/Validate/additional/mustBeInTheFuture.js +42 -0
- package/dist/utils/Validate/additional/mustBeInTheFuture.test.js +34 -0
- package/dist/utils/Validate/additional/mustBeInThePast.js +44 -0
- package/dist/utils/Validate/additional/mustBeInThePast.test.js +34 -0
- package/dist/utils/Validate/additional/utils.js +66 -0
- package/dist/utils/Validate/index.js +7 -1
- package/dist/utils/Validate/validateComponent.js +57 -0
- package/dist/utils/Validate/validateComponent.test.js +92 -2
- package/dist/utils/Validate/validateDate.js +155 -0
- package/dist/utils/Validate/validateDate.test.js +118 -0
- package/dist/utils/Validate/validatePage.js +6 -8
- package/dist/utils/Validate/validateTime.js +95 -0
- package/dist/utils/Validate/validateTime.test.js +61 -0
- package/dist/utils/index.js +6 -3
- package/package.json +5 -4
- package/dist/utils/FormPage/getEditableComponents.js +0 -28
- package/dist/utils/FormPage/getEditableComponents.test.js +0 -75
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.default = exports.DEFAULT_CLASS = void 0;
|
|
7
|
+
|
|
8
|
+
var _propTypes = _interopRequireDefault(require("prop-types"));
|
|
9
|
+
|
|
10
|
+
var _react = _interopRequireDefault(require("react"));
|
|
11
|
+
|
|
12
|
+
var _copReactComponents = require("@ukhomeoffice/cop-react-components");
|
|
13
|
+
|
|
14
|
+
var _models = require("../../models");
|
|
15
|
+
|
|
16
|
+
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
17
|
+
|
|
18
|
+
//Global Imports
|
|
19
|
+
//Local imports
|
|
20
|
+
var DEFAULT_CLASS = 'hods-task-list';
|
|
21
|
+
exports.DEFAULT_CLASS = DEFAULT_CLASS;
|
|
22
|
+
|
|
23
|
+
var TaskState = function TaskState(_ref) {
|
|
24
|
+
var state = _ref.state;
|
|
25
|
+
|
|
26
|
+
var classes = _copReactComponents.Utils.classBuilder(DEFAULT_CLASS, undefined, undefined);
|
|
27
|
+
|
|
28
|
+
if (!_models.TaskStates.DETAILS[state]) {
|
|
29
|
+
return null;
|
|
30
|
+
}
|
|
31
|
+
|
|
32
|
+
return /*#__PURE__*/_react.default.createElement(_copReactComponents.Tag, {
|
|
33
|
+
classModifiers: [_models.TaskStates.DETAILS[state].colour],
|
|
34
|
+
className: classes('tag')
|
|
35
|
+
}, _models.TaskStates.DETAILS[state].label);
|
|
36
|
+
};
|
|
37
|
+
|
|
38
|
+
TaskState.propTypes = {
|
|
39
|
+
state: _propTypes.default.string.isRequired
|
|
40
|
+
};
|
|
41
|
+
var _default = TaskState;
|
|
42
|
+
exports.default = _default;
|
|
@@ -0,0 +1,99 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
var _react = require("@testing-library/react");
|
|
4
|
+
|
|
5
|
+
var _react2 = _interopRequireDefault(require("react"));
|
|
6
|
+
|
|
7
|
+
var _TaskState = _interopRequireDefault(require("./TaskState"));
|
|
8
|
+
|
|
9
|
+
var _models = require("../../models");
|
|
10
|
+
|
|
11
|
+
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
12
|
+
|
|
13
|
+
// Global imports
|
|
14
|
+
// Local imports
|
|
15
|
+
describe('components', function () {
|
|
16
|
+
describe('TaskList.TaskState', function () {
|
|
17
|
+
it('should render a complete state icon', function () {
|
|
18
|
+
var STATE = _models.TaskStates.TYPES.COMPLETE;
|
|
19
|
+
|
|
20
|
+
var _render = (0, _react.render)( /*#__PURE__*/_react2.default.createElement(_TaskState.default, {
|
|
21
|
+
state: STATE
|
|
22
|
+
})),
|
|
23
|
+
container = _render.container;
|
|
24
|
+
|
|
25
|
+
expect(container.childNodes.length).toEqual(1);
|
|
26
|
+
expect(container.childNodes[0].classList).toContain('hods-tag');
|
|
27
|
+
expect(container.childNodes[0].textContent).toEqual(_models.TaskStates.DETAILS.complete.label);
|
|
28
|
+
});
|
|
29
|
+
it('should render an in progress state icon', function () {
|
|
30
|
+
var STATE = _models.TaskStates.TYPES.IN_PROGRESS;
|
|
31
|
+
|
|
32
|
+
var _render2 = (0, _react.render)( /*#__PURE__*/_react2.default.createElement(_TaskState.default, {
|
|
33
|
+
state: STATE
|
|
34
|
+
})),
|
|
35
|
+
container = _render2.container;
|
|
36
|
+
|
|
37
|
+
expect(container.childNodes.length).toEqual(1);
|
|
38
|
+
expect(container.childNodes[0].classList).toContain('hods-tag');
|
|
39
|
+
expect(container.childNodes[0].classList).toContain("hods-tag--".concat(_models.TaskStates.DETAILS.inProgress.colour));
|
|
40
|
+
expect(container.childNodes[0].textContent).toEqual(_models.TaskStates.DETAILS.inProgress.label);
|
|
41
|
+
});
|
|
42
|
+
it('should render a not started state icon', function () {
|
|
43
|
+
var STATE = _models.TaskStates.TYPES.NOT_STARTED;
|
|
44
|
+
|
|
45
|
+
var _render3 = (0, _react.render)( /*#__PURE__*/_react2.default.createElement(_TaskState.default, {
|
|
46
|
+
state: STATE
|
|
47
|
+
})),
|
|
48
|
+
container = _render3.container;
|
|
49
|
+
|
|
50
|
+
expect(container.childNodes.length).toEqual(1);
|
|
51
|
+
expect(container.childNodes[0].classList).toContain('hods-tag');
|
|
52
|
+
expect(container.childNodes[0].classList).toContain("hods-tag--".concat(_models.TaskStates.DETAILS.notStarted.colour));
|
|
53
|
+
expect(container.childNodes[0].textContent).toEqual(_models.TaskStates.DETAILS.notStarted.label);
|
|
54
|
+
});
|
|
55
|
+
it('should render a cannot start state icon', function () {
|
|
56
|
+
var STATE = _models.TaskStates.TYPES.CANNOT_START_YET;
|
|
57
|
+
|
|
58
|
+
var _render4 = (0, _react.render)( /*#__PURE__*/_react2.default.createElement(_TaskState.default, {
|
|
59
|
+
state: STATE
|
|
60
|
+
})),
|
|
61
|
+
container = _render4.container;
|
|
62
|
+
|
|
63
|
+
expect(container.childNodes.length).toEqual(1);
|
|
64
|
+
expect(container.childNodes[0].classList).toContain('hods-tag');
|
|
65
|
+
expect(container.childNodes[0].classList).toContain("hods-tag--".concat(_models.TaskStates.DETAILS.cannotStartYet.colour));
|
|
66
|
+
expect(container.childNodes[0].textContent).toEqual(_models.TaskStates.DETAILS.cannotStartYet.label);
|
|
67
|
+
});
|
|
68
|
+
it('should not render a state if given an unknown value', function () {
|
|
69
|
+
var STATE = 'spellingError';
|
|
70
|
+
|
|
71
|
+
var _render5 = (0, _react.render)( /*#__PURE__*/_react2.default.createElement(_TaskState.default, {
|
|
72
|
+
state: STATE
|
|
73
|
+
})),
|
|
74
|
+
container = _render5.container;
|
|
75
|
+
|
|
76
|
+
expect(container.childNodes.length).toEqual(0);
|
|
77
|
+
});
|
|
78
|
+
it('should not render a state if given null', function () {
|
|
79
|
+
var STATE = null;
|
|
80
|
+
|
|
81
|
+
var _render6 = (0, _react.render)( /*#__PURE__*/_react2.default.createElement(_TaskState.default, {
|
|
82
|
+
state: STATE
|
|
83
|
+
})),
|
|
84
|
+
container = _render6.container;
|
|
85
|
+
|
|
86
|
+
expect(container.childNodes.length).toEqual(0);
|
|
87
|
+
});
|
|
88
|
+
it('should not render a state if given undefined', function () {
|
|
89
|
+
var STATE = undefined;
|
|
90
|
+
|
|
91
|
+
var _render7 = (0, _react.render)( /*#__PURE__*/_react2.default.createElement(_TaskState.default, {
|
|
92
|
+
state: STATE
|
|
93
|
+
})),
|
|
94
|
+
container = _render7.container;
|
|
95
|
+
|
|
96
|
+
expect(container.childNodes.length).toEqual(0);
|
|
97
|
+
});
|
|
98
|
+
});
|
|
99
|
+
});
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.default = void 0;
|
|
7
|
+
|
|
8
|
+
var _TaskList = _interopRequireDefault(require("./TaskList"));
|
|
9
|
+
|
|
10
|
+
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
11
|
+
|
|
12
|
+
var _default = _TaskList.default;
|
|
13
|
+
exports.default = _default;
|
package/dist/hooks/index.js
CHANGED
|
@@ -1,8 +1,22 @@
|
|
|
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); }
|
|
4
|
+
|
|
3
5
|
Object.defineProperty(exports, "__esModule", {
|
|
4
6
|
value: true
|
|
5
7
|
});
|
|
8
|
+
Object.defineProperty(exports, "STATUS_COMPLETE", {
|
|
9
|
+
enumerable: true,
|
|
10
|
+
get: function get() {
|
|
11
|
+
return _useRefData.STATUS_COMPLETE;
|
|
12
|
+
}
|
|
13
|
+
});
|
|
14
|
+
Object.defineProperty(exports, "STATUS_LOADING", {
|
|
15
|
+
enumerable: true,
|
|
16
|
+
get: function get() {
|
|
17
|
+
return _useRefData.STATUS_LOADING;
|
|
18
|
+
}
|
|
19
|
+
});
|
|
6
20
|
Object.defineProperty(exports, "useAxios", {
|
|
7
21
|
enumerable: true,
|
|
8
22
|
get: function get() {
|
|
@@ -34,6 +48,10 @@ var _useHooks = _interopRequireDefault(require("./useHooks"));
|
|
|
34
48
|
|
|
35
49
|
var _useGetRequest = _interopRequireDefault(require("./useGetRequest"));
|
|
36
50
|
|
|
37
|
-
var _useRefData =
|
|
51
|
+
var _useRefData = _interopRequireWildcard(require("./useRefData"));
|
|
52
|
+
|
|
53
|
+
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); }
|
|
54
|
+
|
|
55
|
+
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; }
|
|
38
56
|
|
|
39
57
|
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
@@ -0,0 +1,228 @@
|
|
|
1
|
+
{
|
|
2
|
+
"id": "eventAtTheBorder",
|
|
3
|
+
"version": "1",
|
|
4
|
+
"name": "Event at the border",
|
|
5
|
+
"title": "Event at the border",
|
|
6
|
+
"type": "task-list",
|
|
7
|
+
"components": [
|
|
8
|
+
{
|
|
9
|
+
"id": "firstName",
|
|
10
|
+
"fieldId": "firstName",
|
|
11
|
+
"label": "First name",
|
|
12
|
+
"type": "text",
|
|
13
|
+
"required": true
|
|
14
|
+
},
|
|
15
|
+
{
|
|
16
|
+
"id": "surname",
|
|
17
|
+
"fieldId": "surname",
|
|
18
|
+
"label": "Last name",
|
|
19
|
+
"type": "text",
|
|
20
|
+
"required": true
|
|
21
|
+
},
|
|
22
|
+
{
|
|
23
|
+
"id": "date",
|
|
24
|
+
"fieldId": "date",
|
|
25
|
+
"label": "Date",
|
|
26
|
+
"type": "date",
|
|
27
|
+
"required": true
|
|
28
|
+
},
|
|
29
|
+
{
|
|
30
|
+
"id": "officerName",
|
|
31
|
+
"fieldId": "officerName",
|
|
32
|
+
"label": "Officer Name",
|
|
33
|
+
"type": "text"
|
|
34
|
+
},
|
|
35
|
+
{
|
|
36
|
+
"id": "immigrationDate",
|
|
37
|
+
"fieldId": "immigrationDate",
|
|
38
|
+
"label": "Immigration Date",
|
|
39
|
+
"type": "date",
|
|
40
|
+
"required": true
|
|
41
|
+
},
|
|
42
|
+
{
|
|
43
|
+
"id": "mode",
|
|
44
|
+
"fieldId": "mode",
|
|
45
|
+
"label": "Mode",
|
|
46
|
+
"type": "radios",
|
|
47
|
+
"data": {
|
|
48
|
+
"options": [
|
|
49
|
+
{
|
|
50
|
+
"value": "sea",
|
|
51
|
+
"label": "Sea"
|
|
52
|
+
},
|
|
53
|
+
{
|
|
54
|
+
"value": "air",
|
|
55
|
+
"label": "Air"
|
|
56
|
+
}
|
|
57
|
+
]
|
|
58
|
+
},
|
|
59
|
+
"required": true
|
|
60
|
+
}
|
|
61
|
+
],
|
|
62
|
+
"pages": [
|
|
63
|
+
{
|
|
64
|
+
"id": "eventDate",
|
|
65
|
+
"name": "eventDate",
|
|
66
|
+
"title": "Event Date",
|
|
67
|
+
"components": [
|
|
68
|
+
{
|
|
69
|
+
"use": "date"
|
|
70
|
+
}
|
|
71
|
+
],
|
|
72
|
+
"actions": [
|
|
73
|
+
{
|
|
74
|
+
"type": "saveAndNavigate",
|
|
75
|
+
"page": "eventMode"
|
|
76
|
+
}
|
|
77
|
+
],
|
|
78
|
+
"cya_link": {
|
|
79
|
+
"page": "eventDate",
|
|
80
|
+
"aria_suffix": "Event Date"
|
|
81
|
+
}
|
|
82
|
+
},
|
|
83
|
+
{
|
|
84
|
+
"id": "eventMode",
|
|
85
|
+
"name": "eventMode",
|
|
86
|
+
"title": "Event Mode",
|
|
87
|
+
"components": [
|
|
88
|
+
{
|
|
89
|
+
"use": "mode"
|
|
90
|
+
}
|
|
91
|
+
],
|
|
92
|
+
"actions": [
|
|
93
|
+
{
|
|
94
|
+
"type": "saveAndNavigate",
|
|
95
|
+
"page": "cya"
|
|
96
|
+
}
|
|
97
|
+
],
|
|
98
|
+
"cya_link": {
|
|
99
|
+
"page": "eventMode",
|
|
100
|
+
"aria_suffix": "Event Mode"
|
|
101
|
+
}
|
|
102
|
+
},
|
|
103
|
+
{
|
|
104
|
+
"id": "officeDetails",
|
|
105
|
+
"name": "officeDetails",
|
|
106
|
+
"title": "Officer Details",
|
|
107
|
+
"components": [
|
|
108
|
+
{
|
|
109
|
+
"use": "officerName"
|
|
110
|
+
}
|
|
111
|
+
],
|
|
112
|
+
"actions": [
|
|
113
|
+
{
|
|
114
|
+
"type": "saveAndNavigate",
|
|
115
|
+
"page": "cya"
|
|
116
|
+
}
|
|
117
|
+
],
|
|
118
|
+
"cya_link": {
|
|
119
|
+
"page": "officeDetails",
|
|
120
|
+
"aria_suffix": "Officer Details"
|
|
121
|
+
}
|
|
122
|
+
},
|
|
123
|
+
{
|
|
124
|
+
"id": "immigrationDate",
|
|
125
|
+
"name": "immigrationDate",
|
|
126
|
+
"title": "Immigration Date",
|
|
127
|
+
"components": [
|
|
128
|
+
{
|
|
129
|
+
"use": "immigrationDate"
|
|
130
|
+
}
|
|
131
|
+
],
|
|
132
|
+
"actions": [
|
|
133
|
+
{
|
|
134
|
+
"type": "saveAndNavigate",
|
|
135
|
+
"page": "cya"
|
|
136
|
+
}
|
|
137
|
+
],
|
|
138
|
+
"cya_link": {
|
|
139
|
+
"page": "immigrationDate",
|
|
140
|
+
"aria_suffix": "Immigration Date"
|
|
141
|
+
}
|
|
142
|
+
},
|
|
143
|
+
{
|
|
144
|
+
"id": "firstName",
|
|
145
|
+
"name": "firstName",
|
|
146
|
+
"title": "First Name",
|
|
147
|
+
"components": [
|
|
148
|
+
{
|
|
149
|
+
"use": "firstName"
|
|
150
|
+
}
|
|
151
|
+
],
|
|
152
|
+
"actions": [
|
|
153
|
+
{
|
|
154
|
+
"type": "saveAndNavigate",
|
|
155
|
+
"page": "surname"
|
|
156
|
+
}
|
|
157
|
+
],
|
|
158
|
+
"cya_link": {
|
|
159
|
+
"page": "firstName",
|
|
160
|
+
"aria_suffix": "First Name"
|
|
161
|
+
}
|
|
162
|
+
},
|
|
163
|
+
{
|
|
164
|
+
"id": "surname",
|
|
165
|
+
"name": "surname",
|
|
166
|
+
"title": "Surname",
|
|
167
|
+
"components": [
|
|
168
|
+
{
|
|
169
|
+
"use": "surname"
|
|
170
|
+
}
|
|
171
|
+
],
|
|
172
|
+
"actions": [
|
|
173
|
+
{
|
|
174
|
+
"type": "saveAndNavigate",
|
|
175
|
+
"page": "cya"
|
|
176
|
+
}
|
|
177
|
+
],
|
|
178
|
+
"cya_link": {
|
|
179
|
+
"page": "surname",
|
|
180
|
+
"aria_suffix": "Surname"
|
|
181
|
+
}
|
|
182
|
+
}
|
|
183
|
+
],
|
|
184
|
+
"hub": {
|
|
185
|
+
"format": "CYA",
|
|
186
|
+
"refTitle": "COP reference number",
|
|
187
|
+
"sections": [
|
|
188
|
+
{
|
|
189
|
+
"name": "Add event details",
|
|
190
|
+
"tasks": [
|
|
191
|
+
{
|
|
192
|
+
"name": "Date, location and mode details",
|
|
193
|
+
"pages": ["eventDate", "eventMode"],
|
|
194
|
+
"state": "complete"
|
|
195
|
+
},
|
|
196
|
+
{
|
|
197
|
+
"name": "Officer and agency details",
|
|
198
|
+
"pages": ["officeDetails"],
|
|
199
|
+
"state": "inProgress"
|
|
200
|
+
}
|
|
201
|
+
]
|
|
202
|
+
},
|
|
203
|
+
{
|
|
204
|
+
"name": "Add people details",
|
|
205
|
+
"tasks": [
|
|
206
|
+
{
|
|
207
|
+
"name": "People details",
|
|
208
|
+
"pages": ["firstName", "surname"],
|
|
209
|
+
"state": "complete"
|
|
210
|
+
},
|
|
211
|
+
{
|
|
212
|
+
"name": "Immigration details",
|
|
213
|
+
"pages": ["immigrationDate"],
|
|
214
|
+
"state": "inProgress"
|
|
215
|
+
},
|
|
216
|
+
{
|
|
217
|
+
"name": "Journey details",
|
|
218
|
+
"pages": ["none"],
|
|
219
|
+
"state": "cannotStartYet"
|
|
220
|
+
}
|
|
221
|
+
]
|
|
222
|
+
}
|
|
223
|
+
]
|
|
224
|
+
},
|
|
225
|
+
"cya": {
|
|
226
|
+
"hide_page_titles": false
|
|
227
|
+
}
|
|
228
|
+
}
|
|
@@ -6,6 +6,7 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
6
6
|
exports.default = void 0;
|
|
7
7
|
var TYPE_AUTOCOMPLETE = 'autocomplete';
|
|
8
8
|
var TYPE_CHECKBOXES = 'checkboxes';
|
|
9
|
+
var TYPE_CONTAINER = 'container';
|
|
9
10
|
var TYPE_DATE = 'date';
|
|
10
11
|
var TYPE_EMAIL = 'email';
|
|
11
12
|
var TYPE_HEADING = 'heading';
|
|
@@ -15,9 +16,11 @@ var TYPE_PHONE_NUMBER = 'phone-number';
|
|
|
15
16
|
var TYPE_RADIOS = 'radios';
|
|
16
17
|
var TYPE_TEXT = 'text';
|
|
17
18
|
var TYPE_TEXT_AREA = 'textarea';
|
|
19
|
+
var TYPE_TIME = 'time';
|
|
18
20
|
var ComponentTypes = {
|
|
19
21
|
AUTOCOMPLETE: TYPE_AUTOCOMPLETE,
|
|
20
22
|
CHECKBOXES: TYPE_CHECKBOXES,
|
|
23
|
+
CONTAINER: TYPE_CONTAINER,
|
|
21
24
|
DATE: TYPE_DATE,
|
|
22
25
|
EMAIL: TYPE_EMAIL,
|
|
23
26
|
HEADING: TYPE_HEADING,
|
|
@@ -26,7 +29,8 @@ var ComponentTypes = {
|
|
|
26
29
|
PHONE_NUMBER: TYPE_PHONE_NUMBER,
|
|
27
30
|
RADIOS: TYPE_RADIOS,
|
|
28
31
|
TEXT: TYPE_TEXT,
|
|
29
|
-
TEXT_AREA: TYPE_TEXT_AREA
|
|
32
|
+
TEXT_AREA: TYPE_TEXT_AREA,
|
|
33
|
+
TIME: TYPE_TIME
|
|
30
34
|
};
|
|
31
35
|
var _default = ComponentTypes;
|
|
32
36
|
exports.default = _default;
|
package/dist/models/FormTypes.js
CHANGED
|
@@ -7,11 +7,13 @@ exports.default = void 0;
|
|
|
7
7
|
var TYPE_FORM = 'form';
|
|
8
8
|
var TYPE_CHECK_YOUR_ANSWERS = 'cya';
|
|
9
9
|
var TYPE_HUB_AND_SPOKE = 'hub-and-spoke';
|
|
10
|
+
var TYPE_TASK_LIST = 'task-list';
|
|
10
11
|
var TYPE_WIZARD = 'wizard';
|
|
11
12
|
var FormTypes = {
|
|
12
13
|
FORM: TYPE_FORM,
|
|
13
14
|
CYA: TYPE_CHECK_YOUR_ANSWERS,
|
|
14
15
|
HUB: TYPE_HUB_AND_SPOKE,
|
|
16
|
+
TASK: TYPE_TASK_LIST,
|
|
15
17
|
WIZARD: TYPE_WIZARD
|
|
16
18
|
};
|
|
17
19
|
var _default = FormTypes;
|
|
@@ -5,8 +5,10 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
5
5
|
});
|
|
6
6
|
exports.default = void 0;
|
|
7
7
|
var HUB_FORMAT_CYA = 'CYA';
|
|
8
|
+
var HUB_FORMAT_TASK = 'TASK';
|
|
8
9
|
var HubFormats = {
|
|
9
|
-
CYA: HUB_FORMAT_CYA
|
|
10
|
+
CYA: HUB_FORMAT_CYA,
|
|
11
|
+
TASK: HUB_FORMAT_TASK
|
|
10
12
|
};
|
|
11
13
|
var _default = HubFormats;
|
|
12
14
|
exports.default = _default;
|
|
@@ -11,11 +11,13 @@ function _defineProperty(obj, key, value) { if (key in obj) { Object.definePrope
|
|
|
11
11
|
|
|
12
12
|
var TYPE_NAVIGATE = 'navigate';
|
|
13
13
|
var TYPE_SAVE_AND_CONTINUE = 'saveAndContinue';
|
|
14
|
+
var TYPE_SAVE_AND_NAVIGATE = 'saveAndNavigate';
|
|
14
15
|
var TYPE_SAVE_AND_RETURN = 'saveAndReturn';
|
|
15
16
|
var TYPE_SUBMIT = 'submit';
|
|
16
17
|
var PageActionTypes = {
|
|
17
18
|
NAVIGATE: TYPE_NAVIGATE,
|
|
18
19
|
SAVE_AND_CONTINUE: TYPE_SAVE_AND_CONTINUE,
|
|
20
|
+
SAVE_AND_NAVIGATE: TYPE_SAVE_AND_NAVIGATE,
|
|
19
21
|
SAVE_AND_RETURN: TYPE_SAVE_AND_RETURN,
|
|
20
22
|
SUBMIT: TYPE_SUBMIT
|
|
21
23
|
};
|
|
@@ -24,6 +26,9 @@ var DefaultPageActions = (_DefaultPageActions = {}, _defineProperty(_DefaultPage
|
|
|
24
26
|
type: TYPE_SAVE_AND_CONTINUE,
|
|
25
27
|
validate: true,
|
|
26
28
|
label: 'Save and continue'
|
|
29
|
+
}), _defineProperty(_DefaultPageActions, TYPE_SAVE_AND_NAVIGATE, {
|
|
30
|
+
type: TYPE_SAVE_AND_NAVIGATE,
|
|
31
|
+
validate: true
|
|
27
32
|
}), _defineProperty(_DefaultPageActions, TYPE_SAVE_AND_RETURN, {
|
|
28
33
|
type: TYPE_SAVE_AND_RETURN,
|
|
29
34
|
validate: false,
|
|
@@ -0,0 +1,41 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.default = exports.StateTypes = void 0;
|
|
7
|
+
|
|
8
|
+
var _StateDetails;
|
|
9
|
+
|
|
10
|
+
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; }
|
|
11
|
+
|
|
12
|
+
var TYPE_COMPLETE = 'complete';
|
|
13
|
+
var TYPE_IN_PROGRESS = 'inProgress';
|
|
14
|
+
var TYPE_NOT_STARTED = 'notStarted';
|
|
15
|
+
var TYPE_CANNOT_START_YET = 'cannotStartYet';
|
|
16
|
+
var StateTypes = {
|
|
17
|
+
COMPLETE: TYPE_COMPLETE,
|
|
18
|
+
IN_PROGRESS: TYPE_IN_PROGRESS,
|
|
19
|
+
NOT_STARTED: TYPE_NOT_STARTED,
|
|
20
|
+
CANNOT_START_YET: TYPE_CANNOT_START_YET
|
|
21
|
+
};
|
|
22
|
+
exports.StateTypes = StateTypes;
|
|
23
|
+
var StateDetails = (_StateDetails = {}, _defineProperty(_StateDetails, TYPE_COMPLETE, {
|
|
24
|
+
label: 'Completed',
|
|
25
|
+
colour: ''
|
|
26
|
+
}), _defineProperty(_StateDetails, TYPE_IN_PROGRESS, {
|
|
27
|
+
label: 'In Progress',
|
|
28
|
+
colour: 'blue'
|
|
29
|
+
}), _defineProperty(_StateDetails, TYPE_NOT_STARTED, {
|
|
30
|
+
label: 'Not Started',
|
|
31
|
+
colour: 'grey'
|
|
32
|
+
}), _defineProperty(_StateDetails, TYPE_CANNOT_START_YET, {
|
|
33
|
+
label: 'Cannot Start Yet',
|
|
34
|
+
colour: 'grey'
|
|
35
|
+
}), _StateDetails);
|
|
36
|
+
var TaskStates = {
|
|
37
|
+
TYPES: StateTypes,
|
|
38
|
+
DETAILS: StateDetails
|
|
39
|
+
};
|
|
40
|
+
var _default = TaskStates;
|
|
41
|
+
exports.default = _default;
|
package/dist/models/index.js
CHANGED
|
@@ -39,6 +39,12 @@ Object.defineProperty(exports, "PageAction", {
|
|
|
39
39
|
return _PageAction.default;
|
|
40
40
|
}
|
|
41
41
|
});
|
|
42
|
+
Object.defineProperty(exports, "TaskStates", {
|
|
43
|
+
enumerable: true,
|
|
44
|
+
get: function get() {
|
|
45
|
+
return _TaskStates.default;
|
|
46
|
+
}
|
|
47
|
+
});
|
|
42
48
|
|
|
43
49
|
var _ComponentTypes = _interopRequireDefault(require("./ComponentTypes"));
|
|
44
50
|
|
|
@@ -52,4 +58,6 @@ var _HubFormats = _interopRequireDefault(require("./HubFormats"));
|
|
|
52
58
|
|
|
53
59
|
var _PageAction = _interopRequireDefault(require("./PageAction"));
|
|
54
60
|
|
|
61
|
+
var _TaskStates = _interopRequireDefault(require("./TaskStates"));
|
|
62
|
+
|
|
55
63
|
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
@@ -0,0 +1,40 @@
|
|
|
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 _getCYARow = _interopRequireDefault(require("./getCYARow"));
|
|
11
|
+
|
|
12
|
+
var _showComponentCYA = _interopRequireDefault(require("./showComponentCYA"));
|
|
13
|
+
|
|
14
|
+
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
15
|
+
|
|
16
|
+
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; }
|
|
17
|
+
|
|
18
|
+
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; }
|
|
19
|
+
|
|
20
|
+
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; }
|
|
21
|
+
|
|
22
|
+
var getCYARowsForContainer = function getCYARowsForContainer(page, container, formData, onAction) {
|
|
23
|
+
if ((0, _showComponentCYA.default)(container, page.formData)) {
|
|
24
|
+
return container.components.filter(function (c) {
|
|
25
|
+
return (0, _showComponentCYA.default)(c, page.formData);
|
|
26
|
+
}).flatMap(function (component) {
|
|
27
|
+
if (component.type === _models.ComponentTypes.CONTAINER) {
|
|
28
|
+
var fd = formData ? formData[component.fieldId] : undefined;
|
|
29
|
+
return getCYARowsForContainer(page, component, fd, onAction);
|
|
30
|
+
}
|
|
31
|
+
|
|
32
|
+
return (0, _getCYARow.default)(_objectSpread(_objectSpread({}, page), {}, {
|
|
33
|
+
formData: formData
|
|
34
|
+
}), component, onAction);
|
|
35
|
+
});
|
|
36
|
+
}
|
|
37
|
+
};
|
|
38
|
+
|
|
39
|
+
var _default = getCYARowsForContainer;
|
|
40
|
+
exports.default = _default;
|