@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.
Files changed (137) hide show
  1. package/CHANGELOG.md +8 -1
  2. package/Field/index.js +107 -34
  3. package/Field/types.js +5 -0
  4. package/Fieldset/FieldsetWithContext.js +63 -0
  5. package/Fieldset/index.js +4 -63
  6. package/Fieldset/types.js +5 -0
  7. package/FormBuilder.js +178 -0
  8. package/FormContext.js +14 -0
  9. package/Questions/Questions.js +105 -0
  10. package/Questions/QuestionsContext.js +20 -0
  11. package/Questions/Step/ReviewStep.js +11 -7
  12. package/Questions/Step/Step.js +93 -0
  13. package/Questions/Step/StepArrayReview.js +79 -0
  14. package/Questions/Step/StepContext.js +37 -0
  15. package/Questions/Step/StepDescription.js +2 -2
  16. package/Questions/Step/StepForm.js +10 -6
  17. package/Questions/Step/StepTitle.js +2 -2
  18. package/Questions/Step/getAddMoreFields.js +31 -0
  19. package/Questions/Step/index.js +81 -200
  20. package/Questions/Step/types.js +5 -0
  21. package/Questions/getNextStep.js +30 -0
  22. package/Questions/index.js +4 -150
  23. package/Questions/types.js +5 -0
  24. package/es/Field/index.js +102 -30
  25. package/es/Field/types.js +1 -0
  26. package/es/Fieldset/FieldsetWithContext.js +41 -0
  27. package/es/Fieldset/index.js +3 -51
  28. package/es/Fieldset/types.js +1 -0
  29. package/es/FormBuilder.js +148 -0
  30. package/es/FormContext.js +5 -0
  31. package/es/Questions/Questions.js +84 -0
  32. package/es/Questions/QuestionsContext.js +11 -0
  33. package/es/Questions/Step/ReviewStep.js +5 -3
  34. package/es/Questions/Step/Step.js +69 -0
  35. package/es/Questions/Step/StepArrayReview.js +50 -0
  36. package/es/Questions/Step/StepContext.js +27 -0
  37. package/es/Questions/Step/StepDescription.js +1 -1
  38. package/es/Questions/Step/StepForm.js +4 -2
  39. package/es/Questions/Step/StepTitle.js +1 -1
  40. package/es/Questions/Step/getAddMoreFields.js +22 -0
  41. package/es/Questions/Step/index.js +13 -165
  42. package/es/Questions/Step/types.js +1 -0
  43. package/es/Questions/getNextStep.js +23 -0
  44. package/es/Questions/index.js +2 -119
  45. package/es/Questions/index.spec.js +2 -1
  46. package/es/Questions/types.js +1 -0
  47. package/es/index.js +2 -153
  48. package/es/inputs/index.js +5 -4
  49. package/es/internal.js +29 -0
  50. package/es/types.js +1 -0
  51. package/esm/Field/index.js +102 -30
  52. package/esm/Field/types.js +1 -0
  53. package/esm/Fieldset/FieldsetWithContext.js +41 -0
  54. package/esm/Fieldset/index.js +3 -51
  55. package/esm/Fieldset/types.js +1 -0
  56. package/esm/FormBuilder.js +148 -0
  57. package/esm/FormContext.js +5 -0
  58. package/esm/Questions/Questions.js +84 -0
  59. package/esm/Questions/QuestionsContext.js +11 -0
  60. package/esm/Questions/Step/ReviewStep.js +5 -3
  61. package/esm/Questions/Step/Step.js +69 -0
  62. package/esm/Questions/Step/StepArrayReview.js +50 -0
  63. package/esm/Questions/Step/StepContext.js +27 -0
  64. package/esm/Questions/Step/StepDescription.js +1 -1
  65. package/esm/Questions/Step/StepForm.js +4 -2
  66. package/esm/Questions/Step/StepTitle.js +1 -1
  67. package/esm/Questions/Step/getAddMoreFields.js +22 -0
  68. package/esm/Questions/Step/index.js +13 -165
  69. package/esm/Questions/Step/types.js +1 -0
  70. package/esm/Questions/getNextStep.js +23 -0
  71. package/esm/Questions/index.js +2 -119
  72. package/esm/Questions/index.spec.js +2 -1
  73. package/esm/Questions/types.js +1 -0
  74. package/esm/index.js +3 -154
  75. package/esm/inputs/index.js +5 -4
  76. package/esm/internal.js +29 -0
  77. package/esm/types.js +1 -0
  78. package/index.js +8 -191
  79. package/inputs/index.js +13 -5
  80. package/internal.js +335 -0
  81. package/libs/form/src/Field/index.d.ts +2 -61
  82. package/libs/form/src/Field/types.d.ts +75 -0
  83. package/libs/form/src/Fieldset/FieldsetWithContext.d.ts +4 -0
  84. package/libs/form/src/Fieldset/index.d.ts +2 -12
  85. package/libs/form/src/Fieldset/types.d.ts +6 -0
  86. package/libs/form/src/FormBuilder.d.ts +5 -0
  87. package/libs/form/src/FormContext.d.ts +3 -0
  88. package/libs/form/src/Questions/Questions.d.ts +8 -0
  89. package/libs/form/src/Questions/QuestionsContext.d.ts +3 -0
  90. package/libs/form/src/Questions/Step/ReviewStep.d.ts +1 -0
  91. package/libs/form/src/Questions/Step/Step.d.ts +9 -0
  92. package/libs/form/src/Questions/Step/StepArrayReview.d.ts +4 -0
  93. package/libs/form/src/Questions/Step/StepContext.d.ts +4 -0
  94. package/libs/form/src/Questions/Step/StepForm.d.ts +2 -1
  95. package/libs/form/src/Questions/Step/getAddMoreFields.d.ts +3 -0
  96. package/libs/form/src/Questions/Step/index.d.ts +12 -47
  97. package/libs/form/src/Questions/Step/types.d.ts +31 -0
  98. package/libs/form/src/Questions/getNextStep.d.ts +2 -0
  99. package/libs/form/src/Questions/index.d.ts +1 -28
  100. package/libs/form/src/Questions/types.d.ts +19 -0
  101. package/libs/form/src/index.d.ts +2 -73
  102. package/libs/form/src/inputs/Checkboxes/index.d.ts +1 -1
  103. package/libs/form/src/inputs/DateInput/index.d.ts +1 -1
  104. package/libs/form/src/inputs/FileInput/index.d.ts +1 -1
  105. package/libs/form/src/inputs/Input/index.d.ts +1 -1
  106. package/libs/form/src/inputs/Label/index.d.ts +2 -1
  107. package/libs/form/src/inputs/Radio/index.d.ts +1 -1
  108. package/libs/form/src/inputs/Select/index.d.ts +1 -1
  109. package/libs/form/src/inputs/index.d.ts +4 -3
  110. package/libs/form/src/internal.d.ts +29 -0
  111. package/libs/form/src/types.d.ts +69 -0
  112. package/libs/form/src/validators.d.ts +1 -1
  113. package/libs/ui/src/core/Button/index.d.ts +1 -1
  114. package/libs/ui/src/core/NavList/NavList.d.ts +1 -14
  115. package/libs/ui/src/core/NavList/NavListBase.d.ts +4 -0
  116. package/libs/ui/src/core/NavList/NavListSubMenu.d.ts +1 -1
  117. package/libs/ui/src/core/NavList/types.d.ts +13 -0
  118. package/libs/ui/src/core/Table/TableFloatingScroll.d.ts +3 -0
  119. package/libs/ui/src/core/Table/index.d.ts +1 -0
  120. package/libs/ui/src/layouts/Grid/index.d.ts +1 -0
  121. package/libs-ui/react-core/src/Button/index.d.ts +1 -1
  122. package/libs-ui/react-core/src/CheckboxItem/index.d.ts +1 -1
  123. package/libs-ui/react-core/src/DateInputItem/index.d.ts +1 -1
  124. package/libs-ui/react-core/src/Fieldset/index.d.ts +1 -1
  125. package/libs-ui/react-core/src/FileUpload/index.d.ts +1 -1
  126. package/libs-ui/react-core/src/RadioItem/index.d.ts +1 -1
  127. package/libs-ui/react-core/src/Select/index.d.ts +1 -1
  128. package/libs-ui/react-core/src/SvgIcon/index.d.ts +1 -1
  129. package/libs-ui/react-core/src/Table/index.d.ts +1 -1
  130. package/libs-ui/react-core/src/TextArea/index.d.ts +1 -1
  131. package/libs-ui/react-core/src/TextInput/index.d.ts +1 -1
  132. package/package.json +2 -2
  133. package/types.js +5 -0
  134. package/Field/ConditionalField.js +0 -92
  135. package/es/Field/ConditionalField.js +0 -77
  136. package/esm/Field/ConditionalField.js +0 -77
  137. 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 _Questions = require("@digigov/form/Questions/");
20
+ var _QuestionsContext = require("@digigov/form/Questions/QuestionsContext");
21
21
 
22
- var _Step = require("@digigov/form/Questions/Step");
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)(_Step.StepContext),
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)(_Questions.QuestionsContext),
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(_Step.StepTitleBase, {
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 _Step = require("@digigov/form/Questions/Step");
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)(_Step.StepContext),
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 _Step = require("@digigov/form/Questions/Step");
16
+ var _StepContext = require("@digigov/form/Questions/Step/StepContext");
17
17
 
18
- var _form = _interopRequireWildcard(require("@digigov/form"));
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)(_Step.StepContext),
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(_form["default"], {
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(_form.Fieldset, null, fields.map(function (field) {
59
- return /*#__PURE__*/_react["default"].createElement(_form.Field, {
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 _Step = require("@digigov/form/Questions/Step");
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)(_Step.StepContext),
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;