@digigov/form 0.6.9 → 0.6.10
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/CHANGELOG.md +8 -1
- package/Field/index.js +107 -34
- package/Field/types.js +5 -0
- package/Fieldset/FieldsetWithContext.js +63 -0
- package/Fieldset/index.js +4 -63
- package/Fieldset/types.js +5 -0
- package/FormBuilder.js +178 -0
- package/FormContext.js +14 -0
- package/Questions/Questions.js +105 -0
- package/Questions/QuestionsContext.js +20 -0
- package/Questions/Step/ReviewStep.js +11 -7
- package/Questions/Step/Step.js +93 -0
- package/Questions/Step/StepArrayReview.js +79 -0
- package/Questions/Step/StepContext.js +37 -0
- package/Questions/Step/StepDescription.js +2 -2
- package/Questions/Step/StepForm.js +10 -6
- package/Questions/Step/StepTitle.js +2 -2
- package/Questions/Step/getAddMoreFields.js +31 -0
- package/Questions/Step/index.js +81 -200
- package/Questions/Step/types.js +5 -0
- package/Questions/getNextStep.js +30 -0
- package/Questions/index.js +4 -150
- package/Questions/types.js +5 -0
- package/es/Field/index.js +102 -30
- package/es/Field/types.js +1 -0
- package/es/Fieldset/FieldsetWithContext.js +41 -0
- package/es/Fieldset/index.js +3 -51
- package/es/Fieldset/types.js +1 -0
- package/es/FormBuilder.js +148 -0
- package/es/FormContext.js +5 -0
- package/es/Questions/Questions.js +84 -0
- package/es/Questions/QuestionsContext.js +11 -0
- package/es/Questions/Step/ReviewStep.js +5 -3
- package/es/Questions/Step/Step.js +69 -0
- package/es/Questions/Step/StepArrayReview.js +50 -0
- package/es/Questions/Step/StepContext.js +27 -0
- package/es/Questions/Step/StepDescription.js +1 -1
- package/es/Questions/Step/StepForm.js +4 -2
- package/es/Questions/Step/StepTitle.js +1 -1
- package/es/Questions/Step/getAddMoreFields.js +22 -0
- package/es/Questions/Step/index.js +13 -165
- package/es/Questions/Step/types.js +1 -0
- package/es/Questions/getNextStep.js +23 -0
- package/es/Questions/index.js +2 -119
- package/es/Questions/index.spec.js +2 -1
- package/es/Questions/types.js +1 -0
- package/es/index.js +2 -153
- package/es/inputs/index.js +5 -4
- package/es/internal.js +29 -0
- package/es/types.js +1 -0
- package/esm/Field/index.js +102 -30
- package/esm/Field/types.js +1 -0
- package/esm/Fieldset/FieldsetWithContext.js +41 -0
- package/esm/Fieldset/index.js +3 -51
- package/esm/Fieldset/types.js +1 -0
- package/esm/FormBuilder.js +148 -0
- package/esm/FormContext.js +5 -0
- package/esm/Questions/Questions.js +84 -0
- package/esm/Questions/QuestionsContext.js +11 -0
- package/esm/Questions/Step/ReviewStep.js +5 -3
- package/esm/Questions/Step/Step.js +69 -0
- package/esm/Questions/Step/StepArrayReview.js +50 -0
- package/esm/Questions/Step/StepContext.js +27 -0
- package/esm/Questions/Step/StepDescription.js +1 -1
- package/esm/Questions/Step/StepForm.js +4 -2
- package/esm/Questions/Step/StepTitle.js +1 -1
- package/esm/Questions/Step/getAddMoreFields.js +22 -0
- package/esm/Questions/Step/index.js +13 -165
- package/esm/Questions/Step/types.js +1 -0
- package/esm/Questions/getNextStep.js +23 -0
- package/esm/Questions/index.js +2 -119
- package/esm/Questions/index.spec.js +2 -1
- package/esm/Questions/types.js +1 -0
- package/esm/index.js +3 -154
- package/esm/inputs/index.js +5 -4
- package/esm/internal.js +29 -0
- package/esm/types.js +1 -0
- package/index.js +8 -191
- package/inputs/index.js +13 -5
- package/internal.js +335 -0
- package/libs/form/src/Field/index.d.ts +2 -61
- package/libs/form/src/Field/types.d.ts +75 -0
- package/libs/form/src/Fieldset/FieldsetWithContext.d.ts +4 -0
- package/libs/form/src/Fieldset/index.d.ts +2 -12
- package/libs/form/src/Fieldset/types.d.ts +6 -0
- package/libs/form/src/FormBuilder.d.ts +5 -0
- package/libs/form/src/FormContext.d.ts +3 -0
- package/libs/form/src/Questions/Questions.d.ts +8 -0
- package/libs/form/src/Questions/QuestionsContext.d.ts +3 -0
- package/libs/form/src/Questions/Step/ReviewStep.d.ts +1 -0
- package/libs/form/src/Questions/Step/Step.d.ts +9 -0
- package/libs/form/src/Questions/Step/StepArrayReview.d.ts +4 -0
- package/libs/form/src/Questions/Step/StepContext.d.ts +4 -0
- package/libs/form/src/Questions/Step/StepForm.d.ts +2 -1
- package/libs/form/src/Questions/Step/getAddMoreFields.d.ts +3 -0
- package/libs/form/src/Questions/Step/index.d.ts +12 -47
- package/libs/form/src/Questions/Step/types.d.ts +31 -0
- package/libs/form/src/Questions/getNextStep.d.ts +2 -0
- package/libs/form/src/Questions/index.d.ts +1 -28
- package/libs/form/src/Questions/types.d.ts +19 -0
- package/libs/form/src/index.d.ts +2 -73
- package/libs/form/src/inputs/Checkboxes/index.d.ts +1 -1
- package/libs/form/src/inputs/DateInput/index.d.ts +1 -1
- package/libs/form/src/inputs/FileInput/index.d.ts +1 -1
- package/libs/form/src/inputs/Input/index.d.ts +1 -1
- package/libs/form/src/inputs/Label/index.d.ts +2 -1
- package/libs/form/src/inputs/Radio/index.d.ts +1 -1
- package/libs/form/src/inputs/Select/index.d.ts +1 -1
- package/libs/form/src/inputs/index.d.ts +4 -3
- package/libs/form/src/internal.d.ts +29 -0
- package/libs/form/src/types.d.ts +69 -0
- package/libs/form/src/validators.d.ts +1 -1
- package/libs/ui/src/core/Button/index.d.ts +1 -1
- package/libs/ui/src/core/NavList/NavList.d.ts +1 -14
- package/libs/ui/src/core/NavList/NavListBase.d.ts +4 -0
- package/libs/ui/src/core/NavList/NavListSubMenu.d.ts +1 -1
- package/libs/ui/src/core/NavList/types.d.ts +13 -0
- package/libs/ui/src/core/Table/TableFloatingScroll.d.ts +3 -0
- package/libs/ui/src/core/Table/index.d.ts +1 -0
- package/libs/ui/src/layouts/Grid/index.d.ts +1 -0
- package/libs-ui/react-core/src/Button/index.d.ts +1 -1
- package/libs-ui/react-core/src/CheckboxItem/index.d.ts +1 -1
- package/libs-ui/react-core/src/DateInputItem/index.d.ts +1 -1
- package/libs-ui/react-core/src/Fieldset/index.d.ts +1 -1
- package/libs-ui/react-core/src/FileUpload/index.d.ts +1 -1
- package/libs-ui/react-core/src/RadioItem/index.d.ts +1 -1
- package/libs-ui/react-core/src/Select/index.d.ts +1 -1
- package/libs-ui/react-core/src/SvgIcon/index.d.ts +1 -1
- package/libs-ui/react-core/src/Table/index.d.ts +1 -1
- package/libs-ui/react-core/src/TextArea/index.d.ts +1 -1
- package/libs-ui/react-core/src/TextInput/index.d.ts +1 -1
- package/package.json +2 -2
- package/types.js +5 -0
- package/Field/ConditionalField.js +0 -92
- package/es/Field/ConditionalField.js +0 -77
- package/esm/Field/ConditionalField.js +0 -77
- package/libs/form/src/Field/ConditionalField.d.ts +0 -17
|
@@ -0,0 +1,105 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
4
|
+
|
|
5
|
+
var _typeof = require("@babel/runtime/helpers/typeof");
|
|
6
|
+
|
|
7
|
+
Object.defineProperty(exports, "__esModule", {
|
|
8
|
+
value: true
|
|
9
|
+
});
|
|
10
|
+
exports.Questions = void 0;
|
|
11
|
+
|
|
12
|
+
var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
|
|
13
|
+
|
|
14
|
+
var _react = _interopRequireWildcard(require("react"));
|
|
15
|
+
|
|
16
|
+
var _QuestionsContext = require("@digigov/form/Questions/QuestionsContext");
|
|
17
|
+
|
|
18
|
+
var _getNextStep = require("@digigov/form/Questions/getNextStep");
|
|
19
|
+
|
|
20
|
+
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); }
|
|
21
|
+
|
|
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
|
+
|
|
24
|
+
var isBrowser = typeof window !== 'undefined';
|
|
25
|
+
/**
|
|
26
|
+
* The Question component accepts question data as props
|
|
27
|
+
* uses composable components to provide a wholesome UX
|
|
28
|
+
*
|
|
29
|
+
*/
|
|
30
|
+
|
|
31
|
+
var Questions = function Questions(_ref) {
|
|
32
|
+
var name = _ref.name,
|
|
33
|
+
steps = _ref.steps,
|
|
34
|
+
_ref$initialData = _ref.initialData,
|
|
35
|
+
initialData = _ref$initialData === void 0 ? {} : _ref$initialData,
|
|
36
|
+
onChange = _ref.onChange,
|
|
37
|
+
onSubmit = _ref.onSubmit,
|
|
38
|
+
onActiveStep = _ref.onActiveStep,
|
|
39
|
+
forceStepName = _ref.forceStepName,
|
|
40
|
+
_ref$localDraft = _ref.localDraft,
|
|
41
|
+
localDraft = _ref$localDraft === void 0 ? false : _ref$localDraft,
|
|
42
|
+
children = _ref.children;
|
|
43
|
+
|
|
44
|
+
var _useState = (0, _react.useState)({
|
|
45
|
+
name: ''
|
|
46
|
+
}),
|
|
47
|
+
_useState2 = (0, _slicedToArray2["default"])(_useState, 2),
|
|
48
|
+
currentStep = _useState2[0],
|
|
49
|
+
setCurrentStep = _useState2[1];
|
|
50
|
+
|
|
51
|
+
(0, _react.useEffect)(function () {
|
|
52
|
+
if (!forceStepName) {
|
|
53
|
+
setCurrentStep(steps[0]);
|
|
54
|
+
}
|
|
55
|
+
}, [forceStepName, steps]);
|
|
56
|
+
(0, _react.useEffect)(function () {
|
|
57
|
+
if (forceStepName !== currentStep.name) {
|
|
58
|
+
var forceStep = steps.find(function (_ref2) {
|
|
59
|
+
var name = _ref2.name;
|
|
60
|
+
return name === forceStepName;
|
|
61
|
+
});
|
|
62
|
+
forceStep && setCurrentStep(forceStep);
|
|
63
|
+
}
|
|
64
|
+
}, [forceStepName]);
|
|
65
|
+
var localData = isBrowser && localDraft && window.localStorage.getItem("questions-".concat(name));
|
|
66
|
+
|
|
67
|
+
var _useState3 = (0, _react.useState)(localData && JSON.parse(localData) || initialData),
|
|
68
|
+
_useState4 = (0, _slicedToArray2["default"])(_useState3, 2),
|
|
69
|
+
data = _useState4[0],
|
|
70
|
+
setData = _useState4[1];
|
|
71
|
+
|
|
72
|
+
var submitStep = function submitStep(stepName, stepData) {
|
|
73
|
+
data[stepName] = stepData;
|
|
74
|
+
|
|
75
|
+
if (localDraft) {
|
|
76
|
+
isBrowser && window.localStorage.setItem("questions-".concat(name), JSON.stringify(data));
|
|
77
|
+
}
|
|
78
|
+
|
|
79
|
+
if (onChange) {
|
|
80
|
+
onChange && onChange(data);
|
|
81
|
+
}
|
|
82
|
+
|
|
83
|
+
setData(data);
|
|
84
|
+
var nextStep = (0, _getNextStep.getNextStep)(currentStep, steps, data);
|
|
85
|
+
|
|
86
|
+
if (nextStep) {
|
|
87
|
+
onActiveStep && onActiveStep(nextStep);
|
|
88
|
+
setCurrentStep(nextStep);
|
|
89
|
+
} else {
|
|
90
|
+
onSubmit(data);
|
|
91
|
+
}
|
|
92
|
+
};
|
|
93
|
+
|
|
94
|
+
return /*#__PURE__*/_react["default"].createElement(_QuestionsContext.QuestionsContext.Provider, {
|
|
95
|
+
value: {
|
|
96
|
+
steps: steps,
|
|
97
|
+
currentStep: currentStep,
|
|
98
|
+
submitStep: submitStep,
|
|
99
|
+
data: data,
|
|
100
|
+
onActiveStep: onActiveStep
|
|
101
|
+
}
|
|
102
|
+
}, children);
|
|
103
|
+
};
|
|
104
|
+
|
|
105
|
+
exports.Questions = Questions;
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.QuestionsContext = void 0;
|
|
7
|
+
|
|
8
|
+
var _react = require("react");
|
|
9
|
+
|
|
10
|
+
var defaultStep = {
|
|
11
|
+
name: ''
|
|
12
|
+
};
|
|
13
|
+
var QuestionsContext = /*#__PURE__*/(0, _react.createContext)({
|
|
14
|
+
currentStep: defaultStep,
|
|
15
|
+
steps: [],
|
|
16
|
+
submitStep: function submitStep() {
|
|
17
|
+
return null;
|
|
18
|
+
}
|
|
19
|
+
});
|
|
20
|
+
exports.QuestionsContext = QuestionsContext;
|
|
@@ -7,7 +7,7 @@ var _typeof = require("@babel/runtime/helpers/typeof");
|
|
|
7
7
|
Object.defineProperty(exports, "__esModule", {
|
|
8
8
|
value: true
|
|
9
9
|
});
|
|
10
|
-
exports.ReviewStep = void 0;
|
|
10
|
+
exports["default"] = exports.ReviewStep = void 0;
|
|
11
11
|
|
|
12
12
|
var _react = _interopRequireWildcard(require("react"));
|
|
13
13
|
|
|
@@ -17,9 +17,11 @@ var _Title = _interopRequireDefault(require("@digigov/ui/typography/Title"));
|
|
|
17
17
|
|
|
18
18
|
var _core = require("@digigov/ui/core");
|
|
19
19
|
|
|
20
|
-
var
|
|
20
|
+
var _QuestionsContext = require("@digigov/form/Questions/QuestionsContext");
|
|
21
21
|
|
|
22
|
-
var
|
|
22
|
+
var _StepTitle = require("@digigov/form/Questions/Step/StepTitle");
|
|
23
|
+
|
|
24
|
+
var _StepContext = require("@digigov/form/Questions/Step/StepContext");
|
|
23
25
|
|
|
24
26
|
var _i18n = require("@digigov/ui/app/i18n");
|
|
25
27
|
|
|
@@ -31,11 +33,11 @@ var ReviewStep = function ReviewStep() {
|
|
|
31
33
|
var _useTranslation = (0, _i18n.useTranslation)(),
|
|
32
34
|
t = _useTranslation.t;
|
|
33
35
|
|
|
34
|
-
var _useContext = (0, _react.useContext)(
|
|
36
|
+
var _useContext = (0, _react.useContext)(_StepContext.StepContext),
|
|
35
37
|
submitStep = _useContext.submitStep,
|
|
36
38
|
title = _useContext.title;
|
|
37
39
|
|
|
38
|
-
var _useContext2 = (0, _react.useContext)(
|
|
40
|
+
var _useContext2 = (0, _react.useContext)(_QuestionsContext.QuestionsContext),
|
|
39
41
|
data = _useContext2.data,
|
|
40
42
|
steps = _useContext2.steps,
|
|
41
43
|
onActiveStep = _useContext2.onActiveStep;
|
|
@@ -43,7 +45,7 @@ var ReviewStep = function ReviewStep() {
|
|
|
43
45
|
var filledSteps = steps.filter(function (step) {
|
|
44
46
|
return !!data[step.name];
|
|
45
47
|
});
|
|
46
|
-
return /*#__PURE__*/_react["default"].createElement(_react["default"].Fragment, null, /*#__PURE__*/_react["default"].createElement(
|
|
48
|
+
return /*#__PURE__*/_react["default"].createElement(_react["default"].Fragment, null, /*#__PURE__*/_react["default"].createElement(_StepTitle.StepTitleBase, {
|
|
47
49
|
title: title || 'Review answers'
|
|
48
50
|
}), filledSteps.map(function (step) {
|
|
49
51
|
return /*#__PURE__*/_react["default"].createElement("div", {
|
|
@@ -72,4 +74,6 @@ var ReviewStep = function ReviewStep() {
|
|
|
72
74
|
}, t('button.submit')));
|
|
73
75
|
};
|
|
74
76
|
|
|
75
|
-
exports.ReviewStep = ReviewStep;
|
|
77
|
+
exports.ReviewStep = ReviewStep;
|
|
78
|
+
var _default = ReviewStep;
|
|
79
|
+
exports["default"] = _default;
|
|
@@ -0,0 +1,93 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
4
|
+
|
|
5
|
+
var _typeof = require("@babel/runtime/helpers/typeof");
|
|
6
|
+
|
|
7
|
+
Object.defineProperty(exports, "__esModule", {
|
|
8
|
+
value: true
|
|
9
|
+
});
|
|
10
|
+
exports["default"] = exports.Step = void 0;
|
|
11
|
+
|
|
12
|
+
var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
|
|
13
|
+
|
|
14
|
+
var _toConsumableArray2 = _interopRequireDefault(require("@babel/runtime/helpers/toConsumableArray"));
|
|
15
|
+
|
|
16
|
+
var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
|
|
17
|
+
|
|
18
|
+
var _react = _interopRequireWildcard(require("react"));
|
|
19
|
+
|
|
20
|
+
var _QuestionsContext = require("@digigov/form/Questions/QuestionsContext");
|
|
21
|
+
|
|
22
|
+
var _StepContext = require("@digigov/form/Questions/Step/StepContext");
|
|
23
|
+
|
|
24
|
+
var _StepArrayReview = require("@digigov/form/Questions/Step/StepArrayReview");
|
|
25
|
+
|
|
26
|
+
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); }
|
|
27
|
+
|
|
28
|
+
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; }
|
|
29
|
+
|
|
30
|
+
/**
|
|
31
|
+
* The Step component accepts Step data as props
|
|
32
|
+
* uses composable components to provide a wholesome UX
|
|
33
|
+
*
|
|
34
|
+
*/
|
|
35
|
+
var Step = function Step(props) {
|
|
36
|
+
// or return all Questions and currentStepName
|
|
37
|
+
// or return a specific Step object
|
|
38
|
+
var _useContext = (0, _react.useContext)(_QuestionsContext.QuestionsContext),
|
|
39
|
+
currentStep = _useContext.currentStep,
|
|
40
|
+
submitStep = _useContext.submitStep,
|
|
41
|
+
data = _useContext.data;
|
|
42
|
+
|
|
43
|
+
var _useState = (0, _react.useState)([]),
|
|
44
|
+
_useState2 = (0, _slicedToArray2["default"])(_useState, 2),
|
|
45
|
+
stepData = _useState2[0],
|
|
46
|
+
setStepData = _useState2[1];
|
|
47
|
+
|
|
48
|
+
var _useState3 = (0, _react.useState)(false),
|
|
49
|
+
_useState4 = (0, _slicedToArray2["default"])(_useState3, 2),
|
|
50
|
+
reviewActive = _useState4[0],
|
|
51
|
+
setReviewActive = _useState4[1];
|
|
52
|
+
|
|
53
|
+
var handleArraySubmit = function handleArraySubmit(_name, data) {
|
|
54
|
+
setStepData([].concat((0, _toConsumableArray2["default"])(stepData), [data]));
|
|
55
|
+
setReviewActive(true);
|
|
56
|
+
};
|
|
57
|
+
|
|
58
|
+
var handleArrayDeleteItem = function handleArrayDeleteItem(deleteIndex) {
|
|
59
|
+
var nextStepData = stepData.filter(function (_item, stepIndex) {
|
|
60
|
+
return stepIndex !== deleteIndex;
|
|
61
|
+
});
|
|
62
|
+
setStepData(nextStepData);
|
|
63
|
+
|
|
64
|
+
if (nextStepData.length === 0) {
|
|
65
|
+
setReviewActive(false);
|
|
66
|
+
}
|
|
67
|
+
};
|
|
68
|
+
|
|
69
|
+
var handleArrayReviewStep = function handleArrayReviewStep(data) {
|
|
70
|
+
if (data.addMore === 'yes') {
|
|
71
|
+
setReviewActive(false);
|
|
72
|
+
} else if (data.addMore === 'no') {
|
|
73
|
+
submitStep(currentStep.name, stepData);
|
|
74
|
+
}
|
|
75
|
+
};
|
|
76
|
+
|
|
77
|
+
if (!currentStep || props.name !== currentStep.name) return null; // then provide the currentStep object
|
|
78
|
+
|
|
79
|
+
return /*#__PURE__*/_react["default"].createElement(_StepContext.StepContext.Provider, {
|
|
80
|
+
value: (0, _extends2["default"])({}, currentStep, {
|
|
81
|
+
submitStep: currentStep.type === 'array' ? handleArraySubmit : submitStep,
|
|
82
|
+
initial: data[props.name]
|
|
83
|
+
})
|
|
84
|
+
}, reviewActive ? /*#__PURE__*/_react["default"].createElement(_StepArrayReview.StepArrayReview, {
|
|
85
|
+
array: stepData,
|
|
86
|
+
handleSubmit: handleArrayReviewStep,
|
|
87
|
+
handleDelete: handleArrayDeleteItem
|
|
88
|
+
}) : props.children);
|
|
89
|
+
};
|
|
90
|
+
|
|
91
|
+
exports.Step = Step;
|
|
92
|
+
var _default = Step;
|
|
93
|
+
exports["default"] = _default;
|
|
@@ -0,0 +1,79 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
4
|
+
|
|
5
|
+
var _typeof = require("@babel/runtime/helpers/typeof");
|
|
6
|
+
|
|
7
|
+
Object.defineProperty(exports, "__esModule", {
|
|
8
|
+
value: true
|
|
9
|
+
});
|
|
10
|
+
exports["default"] = exports.StepArrayReview = void 0;
|
|
11
|
+
|
|
12
|
+
var _react = _interopRequireWildcard(require("react"));
|
|
13
|
+
|
|
14
|
+
var _QuestionsContext = require("@digigov/form/Questions/QuestionsContext");
|
|
15
|
+
|
|
16
|
+
var _PageTitle = _interopRequireWildcard(require("@digigov/ui/app/PageTitle"));
|
|
17
|
+
|
|
18
|
+
var _Button = _interopRequireDefault(require("@digigov/ui/core/Button"));
|
|
19
|
+
|
|
20
|
+
var _FormBuilder = require("@digigov/form/FormBuilder");
|
|
21
|
+
|
|
22
|
+
var _Field = require("@digigov/form/Field");
|
|
23
|
+
|
|
24
|
+
var _Fieldset = require("@digigov/form/Fieldset");
|
|
25
|
+
|
|
26
|
+
var _Label = _interopRequireDefault(require("@digigov/form/inputs/Label"));
|
|
27
|
+
|
|
28
|
+
var _SummaryList = require("@digigov/ui/core/SummaryList");
|
|
29
|
+
|
|
30
|
+
var _i18n = require("@digigov/ui/app/i18n");
|
|
31
|
+
|
|
32
|
+
var _getAddMoreFields = require("@digigov/form/Questions/Step/getAddMoreFields");
|
|
33
|
+
|
|
34
|
+
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); }
|
|
35
|
+
|
|
36
|
+
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; }
|
|
37
|
+
|
|
38
|
+
var StepArrayReview = function StepArrayReview(props) {
|
|
39
|
+
var _currentStep$review2, _currentStep$review3, _currentStep$review4;
|
|
40
|
+
|
|
41
|
+
var _useTranslation = (0, _i18n.useTranslation)(),
|
|
42
|
+
t = _useTranslation.t;
|
|
43
|
+
|
|
44
|
+
var _useContext = (0, _react.useContext)(_QuestionsContext.QuestionsContext),
|
|
45
|
+
currentStep = _useContext.currentStep;
|
|
46
|
+
|
|
47
|
+
var fields = (0, _getAddMoreFields.getAddMoreFields)(currentStep);
|
|
48
|
+
var primaryField = currentStep.fields.find(function (field) {
|
|
49
|
+
var _currentStep$review;
|
|
50
|
+
|
|
51
|
+
return field.key === ((_currentStep$review = currentStep.review) === null || _currentStep$review === void 0 ? void 0 : _currentStep$review.primaryFieldKey);
|
|
52
|
+
}) || {};
|
|
53
|
+
return /*#__PURE__*/_react["default"].createElement(_react["default"].Fragment, null, /*#__PURE__*/_react["default"].createElement(_PageTitle["default"], null, /*#__PURE__*/_react["default"].createElement(_PageTitle.PageTitleHeading, null, ((_currentStep$review2 = currentStep.review) === null || _currentStep$review2 === void 0 ? void 0 : _currentStep$review2.title) && t((_currentStep$review3 = currentStep.review) === null || _currentStep$review3 === void 0 ? void 0 : _currentStep$review3.title))), /*#__PURE__*/_react["default"].createElement(_SummaryList.SummaryList, null, props.array.map(function (item, idx) {
|
|
54
|
+
return /*#__PURE__*/_react["default"].createElement(_SummaryList.SummaryListItem, {
|
|
55
|
+
key: idx
|
|
56
|
+
}, /*#__PURE__*/_react["default"].createElement(_SummaryList.SummaryListItemKey, null, t(primaryField.label.primary)), /*#__PURE__*/_react["default"].createElement(_SummaryList.SummaryListItemValue, null, item[primaryField.key]), /*#__PURE__*/_react["default"].createElement(_SummaryList.SummaryListItemAction, {
|
|
57
|
+
onClick: function onClick() {
|
|
58
|
+
return props.handleDelete(idx);
|
|
59
|
+
}
|
|
60
|
+
}, t('button.delete')));
|
|
61
|
+
})), /*#__PURE__*/_react["default"].createElement(_FormBuilder.FormBuilder, {
|
|
62
|
+
key: "addmore",
|
|
63
|
+
fields: fields,
|
|
64
|
+
onSubmit: props.handleSubmit
|
|
65
|
+
}, /*#__PURE__*/_react["default"].createElement(_Fieldset.Fieldset, null, /*#__PURE__*/_react["default"].createElement(_Label["default"], {
|
|
66
|
+
label: (_currentStep$review4 = currentStep.review) === null || _currentStep$review4 === void 0 ? void 0 : _currentStep$review4.addMore.title
|
|
67
|
+
}), fields.map(function (field) {
|
|
68
|
+
return /*#__PURE__*/_react["default"].createElement(_Field.Field, {
|
|
69
|
+
key: field.key,
|
|
70
|
+
name: field.key
|
|
71
|
+
});
|
|
72
|
+
})), /*#__PURE__*/_react["default"].createElement(_Button["default"], {
|
|
73
|
+
type: "submit"
|
|
74
|
+
}, t('button.submit'))));
|
|
75
|
+
};
|
|
76
|
+
|
|
77
|
+
exports.StepArrayReview = StepArrayReview;
|
|
78
|
+
var _default = StepArrayReview;
|
|
79
|
+
exports["default"] = _default;
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports["default"] = exports.StepContext = void 0;
|
|
7
|
+
|
|
8
|
+
var _react = require("react");
|
|
9
|
+
|
|
10
|
+
var StepContext = /*#__PURE__*/(0, _react.createContext)({
|
|
11
|
+
name: '',
|
|
12
|
+
fields: [],
|
|
13
|
+
initial: [],
|
|
14
|
+
errorLabels: [],
|
|
15
|
+
submitStep: '',
|
|
16
|
+
review: {
|
|
17
|
+
title: '',
|
|
18
|
+
primaryFieldKey: '',
|
|
19
|
+
addMore: {
|
|
20
|
+
title: {
|
|
21
|
+
primary: ''
|
|
22
|
+
},
|
|
23
|
+
answers: {
|
|
24
|
+
positive: {
|
|
25
|
+
primary: 'Yes'
|
|
26
|
+
},
|
|
27
|
+
negative: {
|
|
28
|
+
primary: 'No'
|
|
29
|
+
}
|
|
30
|
+
}
|
|
31
|
+
}
|
|
32
|
+
},
|
|
33
|
+
type: 'object'
|
|
34
|
+
});
|
|
35
|
+
exports.StepContext = StepContext;
|
|
36
|
+
var _default = StepContext;
|
|
37
|
+
exports["default"] = _default;
|
|
@@ -15,7 +15,7 @@ var _objectWithoutProperties2 = _interopRequireDefault(require("@babel/runtime/h
|
|
|
15
15
|
|
|
16
16
|
var _react = _interopRequireWildcard(require("react"));
|
|
17
17
|
|
|
18
|
-
var
|
|
18
|
+
var _StepContext = require("@digigov/form/Questions/Step/StepContext");
|
|
19
19
|
|
|
20
20
|
var _Paragraph = _interopRequireDefault(require("@digigov/ui/typography/Paragraph"));
|
|
21
21
|
|
|
@@ -41,7 +41,7 @@ var StepDescriptionBase = function StepDescriptionBase(_ref) {
|
|
|
41
41
|
exports.StepDescriptionBase = StepDescriptionBase;
|
|
42
42
|
|
|
43
43
|
var StepDescription = function StepDescription(props) {
|
|
44
|
-
var _useContext = (0, _react.useContext)(
|
|
44
|
+
var _useContext = (0, _react.useContext)(_StepContext.StepContext),
|
|
45
45
|
descriptionContext = _useContext.description;
|
|
46
46
|
|
|
47
47
|
var description = props.description || descriptionContext;
|
|
@@ -13,9 +13,13 @@ var _objectWithoutProperties2 = _interopRequireDefault(require("@babel/runtime/h
|
|
|
13
13
|
|
|
14
14
|
var _react = _interopRequireWildcard(require("react"));
|
|
15
15
|
|
|
16
|
-
var
|
|
16
|
+
var _StepContext = require("@digigov/form/Questions/Step/StepContext");
|
|
17
17
|
|
|
18
|
-
var
|
|
18
|
+
var _FormBuilder = _interopRequireDefault(require("@digigov/form/FormBuilder"));
|
|
19
|
+
|
|
20
|
+
var _Fieldset = _interopRequireDefault(require("@digigov/form/Fieldset"));
|
|
21
|
+
|
|
22
|
+
var _Field = _interopRequireDefault(require("@digigov/form/Field"));
|
|
19
23
|
|
|
20
24
|
var _Button = _interopRequireDefault(require("@digigov/ui/core/Button"));
|
|
21
25
|
|
|
@@ -40,14 +44,14 @@ var StepForm = function StepForm(_ref) {
|
|
|
40
44
|
var _useTranslation = (0, _i18n.useTranslation)(),
|
|
41
45
|
t = _useTranslation.t;
|
|
42
46
|
|
|
43
|
-
var _useContext = (0, _react.useContext)(
|
|
47
|
+
var _useContext = (0, _react.useContext)(_StepContext.StepContext),
|
|
44
48
|
name = _useContext.name,
|
|
45
49
|
submitStep = _useContext.submitStep,
|
|
46
50
|
rest = (0, _objectWithoutProperties2["default"])(_useContext, _excluded2);
|
|
47
51
|
|
|
48
52
|
var fields = rest.fields.length ? rest.fields : props.fields;
|
|
49
53
|
var initial = rest.initial ? rest.initial : props.initial;
|
|
50
|
-
return /*#__PURE__*/_react["default"].createElement(
|
|
54
|
+
return /*#__PURE__*/_react["default"].createElement(_FormBuilder["default"], {
|
|
51
55
|
initial: initial,
|
|
52
56
|
fields: fields,
|
|
53
57
|
onSubmit: function onSubmit(data) {
|
|
@@ -55,8 +59,8 @@ var StepForm = function StepForm(_ref) {
|
|
|
55
59
|
}
|
|
56
60
|
}, children ? /*#__PURE__*/_react["default"].createElement(_react["default"].Fragment, null, children, submitButton && /*#__PURE__*/_react["default"].createElement(_Button["default"], {
|
|
57
61
|
type: "submit"
|
|
58
|
-
}, t('button.continue'))) : /*#__PURE__*/_react["default"].createElement(_react["default"].Fragment, null, /*#__PURE__*/_react["default"].createElement(
|
|
59
|
-
return /*#__PURE__*/_react["default"].createElement(
|
|
62
|
+
}, t('button.continue'))) : /*#__PURE__*/_react["default"].createElement(_react["default"].Fragment, null, /*#__PURE__*/_react["default"].createElement(_Fieldset["default"], null, fields.map(function (field) {
|
|
63
|
+
return /*#__PURE__*/_react["default"].createElement(_Field["default"], {
|
|
60
64
|
key: field.key,
|
|
61
65
|
name: field.key
|
|
62
66
|
});
|
|
@@ -11,7 +11,7 @@ exports["default"] = exports.StepTitleHeading = exports.StepTitleBase = exports.
|
|
|
11
11
|
|
|
12
12
|
var _react = _interopRequireWildcard(require("react"));
|
|
13
13
|
|
|
14
|
-
var
|
|
14
|
+
var _StepContext = require("@digigov/form/Questions/Step/StepContext");
|
|
15
15
|
|
|
16
16
|
var _PageTitle = _interopRequireWildcard(require("@digigov/ui/app/PageTitle"));
|
|
17
17
|
|
|
@@ -51,7 +51,7 @@ var StepTitleBase = function StepTitleBase(_ref) {
|
|
|
51
51
|
exports.StepTitleBase = StepTitleBase;
|
|
52
52
|
|
|
53
53
|
var StepTitle = function StepTitle(props) {
|
|
54
|
-
var _useContext = (0, _react.useContext)(
|
|
54
|
+
var _useContext = (0, _react.useContext)(_StepContext.StepContext),
|
|
55
55
|
caption = _useContext.caption,
|
|
56
56
|
title = _useContext.title,
|
|
57
57
|
step = _useContext.step;
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.getAddMoreFields = void 0;
|
|
7
|
+
|
|
8
|
+
var getAddMoreFields = function getAddMoreFields(currentStep) {
|
|
9
|
+
var _currentStep$review, _currentStep$review2;
|
|
10
|
+
|
|
11
|
+
return [{
|
|
12
|
+
key: 'addMore',
|
|
13
|
+
type: 'choice:single',
|
|
14
|
+
required: true,
|
|
15
|
+
extra: {
|
|
16
|
+
options: [{
|
|
17
|
+
label: ((_currentStep$review = currentStep.review) === null || _currentStep$review === void 0 ? void 0 : _currentStep$review.addMore.answers.positive) || {
|
|
18
|
+
primary: 'Yes'
|
|
19
|
+
},
|
|
20
|
+
value: 'yes'
|
|
21
|
+
}, {
|
|
22
|
+
label: ((_currentStep$review2 = currentStep.review) === null || _currentStep$review2 === void 0 ? void 0 : _currentStep$review2.addMore.answers.negative) || {
|
|
23
|
+
primary: 'No'
|
|
24
|
+
},
|
|
25
|
+
value: 'no'
|
|
26
|
+
}]
|
|
27
|
+
}
|
|
28
|
+
}];
|
|
29
|
+
};
|
|
30
|
+
|
|
31
|
+
exports.getAddMoreFields = getAddMoreFields;
|