@arquimedes.co/eureka-forms 2.0.17 → 2.0.19-test

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 (56) hide show
  1. package/dist/@Types/Form.d.ts +1 -0
  2. package/dist/@Types/FormStep.d.ts +1 -0
  3. package/dist/App/AppFunctions.js +11 -11
  4. package/dist/Form/Section/MaterialSection/MaterialSection.js +1 -1
  5. package/dist/Form/Terms/Term/MaterialTerm/MaterialTerm.js +9 -1
  6. package/dist/FormSteps/@Construction/CBRElementStep/CBRElementStep.js +2 -2
  7. package/dist/FormSteps/@Construction/CBRIncidentsStep/MaterialCBRIncidentsStep/Incident/Incident.d.ts +1 -1
  8. package/dist/FormSteps/@Construction/CBRIncidentsStep/MaterialCBRIncidentsStep/Incident/Incident.js +2 -2
  9. package/dist/FormSteps/@Construction/CBRIncidentsStep/MaterialCBRIncidentsStep/MaterialCBRIncidentsStep.js +13 -13
  10. package/dist/FormSteps/ApiSelectorStep/MaterialApiSelectorStep/MaterialApiSelectorStep.d.ts +2 -2
  11. package/dist/FormSteps/ApiSelectorStep/MaterialApiSelectorStep/MaterialApiSelectorStep.js +20 -63
  12. package/dist/FormSteps/ApiSelectorStep/MaterialApiSelectorStep/MaterialApiSelectorStep.module.css +0 -16
  13. package/dist/FormSteps/CheckBoxStep/MaterialCheckBoxStep/MaterialCheckBoxStep.d.ts +1 -1
  14. package/dist/FormSteps/CheckBoxStep/MaterialCheckBoxStep/MaterialCheckBoxStep.js +21 -76
  15. package/dist/FormSteps/CheckBoxStep/MaterialCheckBoxStep/MaterialCheckBoxStep.module.css +0 -28
  16. package/dist/FormSteps/ClassifierSelectorStep/MaterialClassifierSelectorStep/MaterialClassifierSelectorStep.d.ts +1 -1
  17. package/dist/FormSteps/ClassifierSelectorStep/MaterialClassifierSelectorStep/MaterialClassifierSelectorStep.js +39 -96
  18. package/dist/FormSteps/CollapsibleStep/MaterialTitleStep/MaterialCollapsibleStep.js +2 -2
  19. package/dist/FormSteps/DatePickerStep/MaterialDatePickerStep/MaterialDatePickerStep.js +7 -38
  20. package/dist/FormSteps/EntityValueStep/MaterialEntityValuePickerStep/MaterialEntityValuePickerStep.d.ts +1 -1
  21. package/dist/FormSteps/EntityValueStep/MaterialEntityValuePickerStep/MaterialEntityValuePickerStep.js +20 -74
  22. package/dist/FormSteps/FileUploadStep/MaterialFileUploadStep/MaterialFileUploadStep.d.ts +2 -2
  23. package/dist/FormSteps/FileUploadStep/MaterialFileUploadStep/MaterialFileUploadStep.js +18 -42
  24. package/dist/FormSteps/MapperStep/MaterialMapperStep/Element/MapperElementComponent.js +2 -2
  25. package/dist/FormSteps/MapperStep/MaterialMapperStep/MaterialMapperStep.js +9 -5
  26. package/dist/FormSteps/RatingStep/MaterialRatingStep/MaterialRatingStep.d.ts +1 -1
  27. package/dist/FormSteps/RatingStep/MaterialRatingStep/MaterialRatingStep.js +15 -43
  28. package/dist/FormSteps/SelectorStep/MaterialSelectorStep/MaterialSelectorStep.d.ts +2 -2
  29. package/dist/FormSteps/SelectorStep/MaterialSelectorStep/MaterialSelectorStep.js +22 -78
  30. package/dist/FormSteps/SelectorStep/MaterialSelectorStep/MaterialSelectorStep.module.css +0 -16
  31. package/dist/FormSteps/SmartSelectStep/MaterialSmartSelectStep/MaterialSmartSelectStep.d.ts +1 -9
  32. package/dist/FormSteps/SmartSelectStep/MaterialSmartSelectStep/MaterialSmartSelectStep.js +26 -57
  33. package/dist/FormSteps/Step.d.ts +0 -2
  34. package/dist/FormSteps/StepFunctions.d.ts +2 -1
  35. package/dist/FormSteps/StepFunctions.js +70 -63
  36. package/dist/FormSteps/StepHooks.d.ts +16 -0
  37. package/dist/FormSteps/StepHooks.js +58 -2
  38. package/dist/FormSteps/TextAreaStep/MaterialTextAreaStep/MaterialTextAreaEditorStep.js +1 -1
  39. package/dist/FormSteps/TextAreaStep/MaterialTextAreaStep/MaterialTextAreaStep.js +6 -37
  40. package/dist/FormSteps/TextInputStep/MaterialTextInputStep/MaterialTextInputStep.js +13 -39
  41. package/dist/FormSteps/TitleStep/MaterialTitleStep/MaterialTitleStep.d.ts +1 -1
  42. package/dist/FormSteps/TitleStep/MaterialTitleStep/MaterialTitleStep.js +4 -24
  43. package/dist/FormSteps/Utils/@StepFiller/StepFiller.d.ts +9 -0
  44. package/dist/FormSteps/Utils/@StepFiller/StepFiller.js +48 -0
  45. package/dist/FormSteps/{EntityValueStep/MaterialEntityValuePickerStep/MaterialEntityValuePickerStep.module.css → Utils/@StepFiller/StepFiller.module.css} +16 -16
  46. package/dist/FormSteps/Utils/MaterialInputContainer/MaterialInputContainer.d.ts +11 -0
  47. package/dist/FormSteps/Utils/MaterialInputContainer/MaterialInputContainer.js +32 -0
  48. package/dist/FormSteps/{DatePickerStep/MaterialDatePickerStep/MaterialDatePickerStep.module.css → Utils/MaterialInputContainer/MaterialInputContainer.module.css} +9 -9
  49. package/dist/Shared/RoundedCheckBox/RoundedCheckBox.d.ts +3 -3
  50. package/dist/Shared/RoundedSmartSelect/RoundedSmartSelect.d.ts +1 -4
  51. package/dist/Shared/RoundedSmartSelect/RoundedSmartSelect.js +1 -3
  52. package/dist/States/SiteSlice.d.ts +2 -1
  53. package/dist/States/SiteSlice.js +25 -6
  54. package/package.json +1 -1
  55. package/dist/FormSteps/ClassifierSelectorStep/MaterialClassifierSelectorStep/MaterialClassifierSelectorStep.module.css +0 -25
  56. package/dist/FormSteps/SmartSelectStep/MaterialSmartSelectStep/MaterialSmartSelectStep.module.css +0 -9
@@ -9,120 +9,63 @@ var __assign = (this && this.__assign) || function () {
9
9
  };
10
10
  return __assign.apply(this, arguments);
11
11
  };
12
- var __rest = (this && this.__rest) || function (s, e) {
13
- var t = {};
14
- for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
15
- t[p] = s[p];
16
- if (s != null && typeof Object.getOwnPropertySymbols === "function")
17
- for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
18
- if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
19
- t[p[i]] = s[p[i]];
20
- }
21
- return t;
22
- };
23
12
  import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
24
- import React, { useCallback, useContext, useState } from 'react';
13
+ import React, { useContext, useMemo } from 'react';
25
14
  import { ClassifierOptionTypes } from '../../../constants/FormStepTypes';
26
- import styles from './MaterialClassifierSelectorStep.module.css';
27
15
  import StepComponent from '../../Step';
28
- import { useController, useFormContext } from 'react-hook-form';
29
- import { calcFillerSize, calcStepWidth } from '../../StepFunctions';
30
16
  import RoundedSmartSelect from '../../../Shared/RoundedSmartSelect/RoundedSmartSelect';
31
17
  import FormContext from '../../../Contexts/FormContext';
32
- import { selectBreakPoint, useAppSelector } from '../../../hooks';
33
- import { useStepDependency } from '../../StepHooks';
34
- function ClassifierSelector(_a) {
35
- var _b, _c;
36
- var step = _a.step, level = _a.level, value = _a.value, onBlur = _a.onBlur, onChange = _a.onChange, inputRef = _a.inputRef, editable = _a.editable, handleSizeChange = _a.handleSizeChange;
37
- var _d = useAppSelector(function (state) { return state.global; }), formStyle = _d.formStyle, postview = _d.postview, preview = _d.preview;
18
+ import { useAppSelector } from '../../../hooks';
19
+ import { useFormStep } from '../../StepHooks';
20
+ import StepFillerContainer from '../../Utils/@StepFiller/StepFiller';
21
+ import MaterialInputContainer from '../../Utils/MaterialInputContainer/MaterialInputContainer';
22
+ function ClassifierSelectorStep(_a) {
23
+ var _b, _c, _d, _e;
24
+ var step = _a.step, editable = _a.editable;
25
+ var _f = useFormStep(step, {
26
+ sizeChange: true,
27
+ rules: {
28
+ required: step.required ? 'Este campo es obligatorio' : undefined,
29
+ },
30
+ }), ref = _f.ref, value = _f.value, onChange = _f.onChange, error = _f.error, field = _f.field;
31
+ var _g = useAppSelector(function (state) { return state.global; }), formStyle = _g.formStyle, postview = _g.postview, preview = _g.preview;
38
32
  var form = useContext(FormContext);
39
- var currentBreakPoint = useAppSelector(selectBreakPoint);
40
- var _e = useFormContext(), getValues = _e.getValues, errors = _e.formState.errors;
41
- var _f = useState(level === 0
42
- ? calcFillerSize(step, form.steps, getValues(), form.size)
43
- : 0), fillerSize = _f[0], setFillerSize = _f[1];
44
- if (!step.idClassifier) {
33
+ if (!step.idClassifier)
45
34
  return _jsx("div", {});
46
- }
47
35
  var classifier = (_b = form.classifiers) === null || _b === void 0 ? void 0 : _b[step.idClassifier];
48
- if (!classifier) {
36
+ if (!classifier)
49
37
  return _jsx("div", {});
50
- }
51
- var options = (_c = classifier.children) === null || _c === void 0 ? void 0 : _c.filter(function (idClassifier) {
52
- var _a, _b;
53
- return ((_a = step.options[idClassifier]) === null || _a === void 0 ? void 0 : _a.type) !==
54
- ClassifierOptionTypes.HIDE &&
55
- ((_b = form.classifiers) === null || _b === void 0 ? void 0 : _b[idClassifier]);
56
- }).map(function (idClassifier) {
57
- var _a, _b, _c;
58
- var classifier = (_a = form.classifiers) === null || _a === void 0 ? void 0 : _a[idClassifier];
59
- return {
60
- value: classifier === null || classifier === void 0 ? void 0 : classifier._id,
61
- label: ((_c = (_b = classifier === null || classifier === void 0 ? void 0 : classifier.clientName) === null || _b === void 0 ? void 0 : _b.trim) === null || _c === void 0 ? void 0 : _c.call(_b)) && preview
62
- ? classifier === null || classifier === void 0 ? void 0 : classifier.clientName
63
- : classifier === null || classifier === void 0 ? void 0 : classifier.name,
64
- };
65
- });
66
- var sizeChange = function () {
67
- handleSizeChange === null || handleSizeChange === void 0 ? void 0 : handleSizeChange();
68
- if (level === 0) {
69
- setFillerSize(calcFillerSize(step, form.steps, getValues(), form.size));
70
- }
71
- };
72
- var renderSelect = function () {
73
- var _a, _b, _c, _d;
74
- return (_jsx("div", __assign({ className: styles.container, style: {
75
- width: currentBreakPoint <= step.size
76
- ? '100%'
77
- : calcStepWidth(step.size, form.size),
78
- minHeight: step.description ||
79
- (!postview && editable && step.required)
80
- ? '55px'
81
- : '43px',
82
- }, "data-testid": step.id }, { children: _jsx(RoundedSmartSelect, { value: value, onBlur: onBlur, disabled: false, loading: false, options: options, inputRef: inputRef, cantEdit: !editable || postview, fullWidth: true, backgroundColor: (_a = formStyle.stepBackgroundColor) !== null && _a !== void 0 ? _a : 'white', label: step.label ? step.label : classifier.name, required: step.required, height: '31px', searchable: step.searchable, icon: undefined, helperTextColor: formStyle.descriptionTextColor, focusColor: formStyle.primaryColor, outlineColor: formStyle.outlineColor, errorColor: formStyle.errorColor, color: formStyle.textColor, containerMargin: "0px", handleUpdate: function (value) {
83
- onChange(value);
84
- sizeChange();
85
- }, getOptionSelected: function (option, value) {
86
- return option.value === (value === null || value === void 0 ? void 0 : value.value);
87
- }, helperText: (_d = (_c = (_b = errors[step.id]) === null || _b === void 0 ? void 0 : _b.message) === null || _c === void 0 ? void 0 : _c.toString()) !== null && _d !== void 0 ? _d : step.description, error: !!errors[step.id] }) }), step.id));
88
- };
38
+ var options = useMemo(function () {
39
+ var _a;
40
+ return (_a = classifier.children) === null || _a === void 0 ? void 0 : _a.filter(function (idClassifier) {
41
+ var _a, _b;
42
+ return ((_a = step.options[idClassifier]) === null || _a === void 0 ? void 0 : _a.type) !==
43
+ ClassifierOptionTypes.HIDE &&
44
+ ((_b = form.classifiers) === null || _b === void 0 ? void 0 : _b[idClassifier]);
45
+ }).map(function (idClassifier) {
46
+ var _a, _b, _c;
47
+ var classifier = (_a = form.classifiers) === null || _a === void 0 ? void 0 : _a[idClassifier];
48
+ return {
49
+ value: classifier === null || classifier === void 0 ? void 0 : classifier._id,
50
+ label: ((_c = (_b = classifier === null || classifier === void 0 ? void 0 : classifier.clientName) === null || _b === void 0 ? void 0 : _b.trim) === null || _c === void 0 ? void 0 : _c.call(_b)) && preview
51
+ ? classifier === null || classifier === void 0 ? void 0 : classifier.clientName
52
+ : classifier === null || classifier === void 0 ? void 0 : classifier.name,
53
+ };
54
+ });
55
+ }, []);
89
56
  var mapNestedOption = function () {
90
57
  if (value) {
91
58
  var currentOption = step.options[value.value];
92
59
  if ((currentOption === null || currentOption === void 0 ? void 0 : currentOption.type) === ClassifierOptionTypes.NESTED) {
93
60
  return (_jsx(React.Fragment, { children: currentOption.steps.map(function (idStep) {
94
61
  var subStep = form.steps[idStep];
95
- return (_jsx(StepComponent, { step: subStep, level: level + 1, editable: editable, handleSizeChange: sizeChange }, idStep));
62
+ return (_jsx(StepComponent, { step: subStep, editable: editable }, idStep));
96
63
  }) }));
97
64
  }
98
65
  }
99
66
  };
100
- if (level === 0 && step.maxSize && step.maxSize < form.size.blockNum) {
101
- return (_jsxs("div", __assign({ className: styles.firstLvlContainer, style: {
102
- width: currentBreakPoint <= step.size ? '100%' : 'fit-content',
103
- } }, { children: [renderSelect(), mapNestedOption(), level === 0 && step.maxSize < form.size.blockNum && (_jsx("div", { className: styles.smallSeparator, style: {
104
- width: fillerSize,
105
- } }, "SEPARATOR"))] })));
106
- }
107
- else {
108
- return (_jsxs(React.Fragment, { children: [renderSelect(), mapNestedOption(), level === 0 && step.maxSize && (_jsx("div", { className: styles.separator }))] }));
109
- }
67
+ return (_jsxs(StepFillerContainer, __assign({ step: step }, { children: [_jsx(MaterialInputContainer, __assign({ step: step, editable: editable }, { children: _jsx(RoundedSmartSelect, __assign({}, field, { inputRef: ref, value: value, disabled: false, loading: false, options: options, cantEdit: !editable || postview, fullWidth: true, backgroundColor: (_c = formStyle.stepBackgroundColor) !== null && _c !== void 0 ? _c : 'white', label: step.label ? step.label : classifier.name, required: step.required, height: '31px', searchable: step.searchable, icon: undefined, helperTextColor: formStyle.descriptionTextColor, focusColor: formStyle.primaryColor, outlineColor: formStyle.outlineColor, errorColor: formStyle.errorColor, color: formStyle.textColor, containerMargin: "0px", handleUpdate: onChange, getOptionSelected: function (option, value) {
68
+ return option.value === (value === null || value === void 0 ? void 0 : value.value);
69
+ }, helperText: (_e = (_d = error === null || error === void 0 ? void 0 : error.message) === null || _d === void 0 ? void 0 : _d.toString()) !== null && _e !== void 0 ? _e : step.description, error: !!error })) })), mapNestedOption()] })));
110
70
  }
111
71
  export default ClassifierSelectorStep;
112
- function ClassifierSelectorStep(props) {
113
- var step = props.step;
114
- var _a = useStepDependency(step), handleStepDep = _a.handleStepDep, originalValue = _a.originalValue;
115
- var _b = useController({
116
- name: step.id,
117
- rules: {
118
- required: step.required ? 'Este campo es obligatorio' : undefined,
119
- },
120
- shouldUnregister: true,
121
- defaultValue: originalValue,
122
- }).field, ref = _b.ref, field = __rest(_b, ["ref"]);
123
- var onChange = useCallback(function (value) {
124
- handleStepDep(value);
125
- field.onChange(value);
126
- }, [handleStepDep, field]);
127
- return (_jsx(ClassifierSelector, __assign({}, props, field, { inputRef: ref, onChange: onChange })));
128
- }
@@ -32,7 +32,7 @@ import FormContext from '../../../Contexts/FormContext';
32
32
  import { useAppSelector } from '../../../hooks';
33
33
  function Collapsible(_a) {
34
34
  var _b, _c, _d, _e;
35
- var step = _a.step, open = _a.open, setOpen = _a.setOpen, level = _a.level, others = __rest(_a, ["step", "open", "setOpen", "level"]);
35
+ var step = _a.step, open = _a.open, setOpen = _a.setOpen, others = __rest(_a, ["step", "open", "setOpen"]);
36
36
  var formStyle = useAppSelector(function (state) { return state.global; }).formStyle;
37
37
  var form = useContext(FormContext);
38
38
  var errors = useFormContext().formState.errors;
@@ -58,7 +58,7 @@ function Collapsible(_a) {
58
58
  : 0,
59
59
  } }, { children: _jsx("div", __assign({ className: styles.contentContainer, ref: contentRef }, { children: step.steps.map(function (idSubStep) {
60
60
  var subStep = form.steps[idSubStep];
61
- return (_createElement(StepComponent, __assign({}, others, { step: subStep, key: idSubStep, level: level + 1 })));
61
+ return (_createElement(StepComponent, __assign({}, others, { step: subStep, key: idSubStep })));
62
62
  }) })) })), _jsx("div", { className: styles.separator, style: {
63
63
  backgroundColor: formStyle.primaryColor,
64
64
  } })] }));
@@ -9,52 +9,21 @@ var __assign = (this && this.__assign) || function () {
9
9
  };
10
10
  return __assign.apply(this, arguments);
11
11
  };
12
- var __rest = (this && this.__rest) || function (s, e) {
13
- var t = {};
14
- for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
15
- t[p] = s[p];
16
- if (s != null && typeof Object.getOwnPropertySymbols === "function")
17
- for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
18
- if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
19
- t[p[i]] = s[p[i]];
20
- }
21
- return t;
22
- };
23
12
  import { jsx as _jsx } from "react/jsx-runtime";
24
- import styles from './MaterialDatePickerStep.module.css';
25
- import { useController } from 'react-hook-form';
26
13
  import RoundedDatePicker from '../../../Shared/RoundedDatePicker/RoundedDatePicker';
27
- import { calcStepWidth } from '../../StepFunctions';
28
- import { selectBreakPoint, useAppSelector } from '../../../hooks';
29
- import FormContext from '../../../Contexts/FormContext';
30
- import { useCallback, useContext } from 'react';
31
- import { useStepDependency } from '../../StepHooks';
14
+ import { useAppSelector } from '../../../hooks';
15
+ import { useFormStep } from '../../StepHooks';
16
+ import MaterialInputContainer from '../../Utils/MaterialInputContainer/MaterialInputContainer';
32
17
  function DatePickerStep(_a) {
33
18
  var _b;
34
19
  var step = _a.step, editable = _a.editable, defaultValue = _a.defaultValue;
35
- var currentBreakPoint = useAppSelector(selectBreakPoint);
36
20
  var _c = useAppSelector(function (state) { return state.global; }), formStyle = _c.formStyle, postview = _c.postview;
37
- var form = useContext(FormContext);
38
- var _d = useStepDependency(step, defaultValue), handleStepDep = _d.handleStepDep, originalValue = _d.originalValue;
39
- var _e = useController({
40
- name: step.id,
21
+ var _d = useFormStep(step, {
22
+ defaultValue: defaultValue,
41
23
  rules: {
42
24
  required: step.required ? 'Este campo es obligatorio' : undefined,
43
25
  },
44
- shouldUnregister: true,
45
- defaultValue: originalValue,
46
- }), _f = _e.field, ref = _f.ref, field = __rest(_f, ["ref"]), error = _e.fieldState.error;
47
- var onChange = useCallback(function (value) {
48
- handleStepDep(value);
49
- field.onChange(value);
50
- }, [handleStepDep, field]);
51
- return (_jsx("div", __assign({ className: styles.container, style: {
52
- width: currentBreakPoint <= step.size
53
- ? '100%'
54
- : calcStepWidth(step.size, form.size),
55
- minHeight: step.description || (!postview && editable && step.required)
56
- ? '55px'
57
- : '43px',
58
- } }, { children: _jsx(RoundedDatePicker, __assign({}, field, { onChange: onChange, pickTime: step.pickTime, clearable: !step.required, clearLabel: "Borrar", inputRef: ref, cantEdit: !editable || postview, "data-testid": step.id, secondaryColor: formStyle.secondaryColor, contrastColor: formStyle.secondaryContrastColor, accentColor: formStyle.textColor, focusColor: formStyle.primaryColor, outlineColor: formStyle.outlineColor, textColor: formStyle.textColor, errorColor: formStyle.errorColor, helperTextColor: formStyle.descriptionTextColor, fontWeight: 400, label: step.label, helperText: (_b = error === null || error === void 0 ? void 0 : error.message) !== null && _b !== void 0 ? _b : step.description, error: !!error, required: step.required })) })));
26
+ }), ref = _d.ref, value = _d.value, onChange = _d.onChange, error = _d.error, field = _d.field;
27
+ return (_jsx(MaterialInputContainer, __assign({ step: step, editable: editable }, { children: _jsx(RoundedDatePicker, __assign({}, field, { value: value, onChange: onChange, pickTime: step.pickTime, clearable: !step.required, clearLabel: "Borrar", inputRef: ref, cantEdit: !editable || postview, secondaryColor: formStyle.secondaryColor, contrastColor: formStyle.secondaryContrastColor, accentColor: formStyle.textColor, focusColor: formStyle.primaryColor, outlineColor: formStyle.outlineColor, textColor: formStyle.textColor, errorColor: formStyle.errorColor, helperTextColor: formStyle.descriptionTextColor, fontWeight: 400, label: step.label, helperText: (_b = error === null || error === void 0 ? void 0 : error.message) !== null && _b !== void 0 ? _b : step.description, error: !!error, required: step.required })) })));
59
28
  }
60
29
  export default DatePickerStep;
@@ -1,4 +1,4 @@
1
1
  /// <reference types="react" />
2
2
  import { EntityValuePickerStepProps } from '../EntityValuePickerStep';
3
+ declare function EntityValuePickerStep({ step, editable, }: EntityValuePickerStepProps): JSX.Element;
3
4
  export default EntityValuePickerStep;
4
- declare function EntityValuePickerStep(props: EntityValuePickerStepProps): JSX.Element;
@@ -45,46 +45,19 @@ var __generator = (this && this.__generator) || function (thisArg, body) {
45
45
  if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
46
46
  }
47
47
  };
48
- var __rest = (this && this.__rest) || function (s, e) {
49
- var t = {};
50
- for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
51
- t[p] = s[p];
52
- if (s != null && typeof Object.getOwnPropertySymbols === "function")
53
- for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
54
- if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
55
- t[p[i]] = s[p[i]];
56
- }
57
- return t;
58
- };
59
- import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
60
- import React, { useCallback, useContext, useState } from 'react';
48
+ import { jsx as _jsx, Fragment as _Fragment } from "react/jsx-runtime";
49
+ import React, { useContext } from 'react';
61
50
  import FormStepTypes, { EntityValueDataTypes, EntityValueOptionTypes, } from '../../../constants/FormStepTypes';
62
- import styles from './MaterialEntityValuePickerStep.module.css';
63
51
  import StepComponent from '../../Step';
64
- import { useController, useFormContext } from 'react-hook-form';
65
- import { calcFillerSize } from '../../StepFunctions';
66
- import { SmartSelect } from '../../SmartSelectStep/MaterialSmartSelectStep/MaterialSmartSelectStep';
52
+ import SmartSelect from '../../SmartSelectStep/MaterialSmartSelectStep/MaterialSmartSelectStep';
67
53
  import widgetInstance from '../../../Utils/AxiosWidget';
68
54
  import InputIcon from '../../../Shared/InputIcon/InputIcon';
69
55
  import FormContext from '../../../Contexts/FormContext';
70
- import { selectBreakPoint, useAppSelector } from '../../../hooks';
71
- import { useStepDependency } from '../../StepHooks';
72
- function EntityValuePickerComponent(_a) {
73
- var step = _a.step, error = _a.error, level = _a.level, value = _a.value, editable = _a.editable, inputRef = _a.inputRef, onBlur = _a.onBlur, onChange = _a.onChange, handleSizeChange = _a.handleSizeChange;
56
+ import StepFillerContainer from '../../Utils/@StepFiller/StepFiller';
57
+ function EntityValuePickerStep(_a) {
58
+ var step = _a.step, editable = _a.editable;
74
59
  var form = useContext(FormContext);
75
- var getValues = useFormContext().getValues;
76
- var currentBreakPoint = useAppSelector(selectBreakPoint);
77
- var _b = useState(level === 0
78
- ? calcFillerSize(step, form.steps, getValues(), form.size)
79
- : 0), fillerSize = _b[0], setFillerSize = _b[1];
80
- var sizeChange = function () {
81
- handleSizeChange === null || handleSizeChange === void 0 ? void 0 : handleSizeChange();
82
- if (level === 0) {
83
- setFillerSize(calcFillerSize(step, form.steps, getValues(), form.size));
84
- }
85
- };
86
- var renderSelect = function () {
87
- return (_jsx(SmartSelect, { onBlur: onBlur, error: error, onChange: onChange, level: level, value: value, inputRef: inputRef, editable: editable, step: step, icon: step.icon ? _jsx(InputIcon, { icon: step.icon }) : undefined, getOptions: getEntityValueOptions, getOptionSelected: function (option, value) {
60
+ return (_jsx(StepFillerContainer, __assign({ step: step }, { children: _jsx(SmartSelect, { editable: editable, step: step, icon: step.icon ? _jsx(InputIcon, { icon: step.icon }) : undefined, getOptions: getEntityValueOptions, getOptionSelected: function (option, value) {
88
61
  return option._id === value._id;
89
62
  }, calcDepError: function (steps) {
90
63
  for (var _i = 0, steps_1 = steps; _i < steps_1.length; _i++) {
@@ -94,48 +67,21 @@ function EntityValuePickerComponent(_a) {
94
67
  }
95
68
  }
96
69
  return undefined;
97
- }, getValueString: function (value) { return value === null || value === void 0 ? void 0 : value._id; } }));
98
- };
99
- var mapNestedOption = function () {
100
- if (value) {
101
- var currentOption = step.options[value._id];
102
- if ((currentOption === null || currentOption === void 0 ? void 0 : currentOption.type) === EntityValueOptionTypes.NESTED) {
103
- return (_jsx(React.Fragment, { children: currentOption.steps.map(function (idStep) {
104
- var subStep = form.steps[idStep];
105
- return (_jsx(StepComponent, { editable: editable, step: subStep, level: level + 1, handleSizeChange: sizeChange }, idStep));
106
- }) }));
107
- }
108
- }
109
- };
110
- if (level === 0 && step.maxSize && step.maxSize < form.size.blockNum) {
111
- return (_jsxs("div", __assign({ className: styles.firstLvlContainer, style: {
112
- width: currentBreakPoint <= step.size ? '100%' : 'fit-content',
113
- } }, { children: [renderSelect(), mapNestedOption(), level === 0 && step.maxSize < form.size.blockNum && (_jsx("div", { className: styles.smallSeparator, style: {
114
- width: fillerSize,
115
- } }, "SEPARATOR"))] })));
116
- }
117
- else {
118
- return (_jsxs(React.Fragment, { children: [renderSelect(), mapNestedOption(), level === 0 && step.maxSize && (_jsx("div", { className: styles.separator }))] }));
119
- }
70
+ }, getValueString: function (value) { return value === null || value === void 0 ? void 0 : value._id; }, renderNestedSteps: function (value) {
71
+ if (!value)
72
+ return _jsx(_Fragment, {});
73
+ var currentOption = step.options[value._id];
74
+ if ((currentOption === null || currentOption === void 0 ? void 0 : currentOption.type) === EntityValueOptionTypes.NESTED) {
75
+ return (_jsx(React.Fragment, { children: currentOption.steps.map(function (idStep) {
76
+ var subStep = form.steps[idStep];
77
+ return (_jsx(StepComponent, { editable: editable, step: subStep }, idStep));
78
+ }) }));
79
+ }
80
+ else
81
+ return _jsx(_Fragment, {});
82
+ } }) })));
120
83
  }
121
84
  export default EntityValuePickerStep;
122
- function EntityValuePickerStep(props) {
123
- var step = props.step, defaultValue = props.defaultValue;
124
- var _a = useStepDependency(step, defaultValue), handleStepDep = _a.handleStepDep, originalValue = _a.originalValue;
125
- var _b = useController({
126
- name: step.id,
127
- rules: {
128
- required: step.required ? 'Este campo es obligatorio' : undefined,
129
- },
130
- shouldUnregister: true,
131
- defaultValue: originalValue,
132
- }), _c = _b.field, ref = _c.ref, field = __rest(_c, ["ref"]), error = _b.fieldState.error;
133
- var onChange = useCallback(function (value) {
134
- handleStepDep(value);
135
- field.onChange(value);
136
- }, [handleStepDep, field]);
137
- return (_jsx(EntityValuePickerComponent, __assign({}, props, field, { error: error, inputRef: ref, onChange: onChange })));
138
- }
139
85
  var getEntityValueOptions = function (idOrganization, step, dependencyStore) { return __awaiter(void 0, void 0, void 0, function () {
140
86
  var urlPath, _i, _a, path, idEntityValue, currentValue, params, _b, _c, filter, currentValue, url, response;
141
87
  var _d, _e, _f, _g, _h;
@@ -14,5 +14,5 @@ export interface UploadedFileObject {
14
14
  downloadUrl?: string;
15
15
  }
16
16
  export declare function isUploadedFileObject(file: UploadedFileObject | FileObject): file is UploadedFileObject;
17
- declare function UploadStepComponent(props: FileUploadStepProps): JSX.Element;
18
- export default UploadStepComponent;
17
+ declare function FileUploadStep({ step, editable }: FileUploadStepProps): JSX.Element;
18
+ export default FileUploadStep;
@@ -45,17 +45,6 @@ var __generator = (this && this.__generator) || function (thisArg, body) {
45
45
  if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
46
46
  }
47
47
  };
48
- var __rest = (this && this.__rest) || function (s, e) {
49
- var t = {};
50
- for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
51
- t[p] = s[p];
52
- if (s != null && typeof Object.getOwnPropertySymbols === "function")
53
- for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
54
- if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
55
- t[p[i]] = s[p[i]];
56
- }
57
- return t;
58
- };
59
48
  var __spreadArray = (this && this.__spreadArray) || function (to, from, pack) {
60
49
  if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {
61
50
  if (ar || !(i in from)) {
@@ -67,26 +56,34 @@ var __spreadArray = (this && this.__spreadArray) || function (to, from, pack) {
67
56
  };
68
57
  import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
69
58
  import styles from './MaterialFileUploadStep.module.css';
70
- import { useController, useFormContext } from 'react-hook-form';
59
+ import { useFormContext } from 'react-hook-form';
71
60
  import RoundedButton from '../../../Shared/RoundedButton/RoundedButton';
72
- import { useCallback, useContext, useEffect, useRef, useState } from 'react';
61
+ import { useContext, useEffect, useRef, useState } from 'react';
73
62
  import { getAcceptedExtensions } from '../../../constants/Files/FileExtensions';
74
63
  import { getUploadUrls, postFile } from '../../../Services/FileService';
75
64
  import FileComponent from './FileComponent/FileComponent';
76
65
  import maxSize from '../../../constants/Files/FileMaxSize';
77
66
  import { useAppSelector } from '../../../hooks';
78
67
  import CustomContext from '../../../Contexts/CustomContext';
79
- import { useStepDependency } from '../../StepHooks';
68
+ import { useFormStep } from '../../StepHooks';
80
69
  export function isUploadedFileObject(file) {
81
70
  return file.state === undefined && file.S3Key !== undefined;
82
71
  }
83
72
  function FileUploadStep(_a) {
84
- var step = _a.step, value = _a.value, btnRef = _a.btnRef, onChange = _a.onChange, editable = _a.editable, fieldError = _a.fieldError;
73
+ var step = _a.step, editable = _a.editable;
74
+ var _b = useFormStep(step, {
75
+ rules: {
76
+ validate: function (array) {
77
+ return ((step.required && array.length > 0) || !step.required) &&
78
+ array.find(function (file) { return !file.S3Key; }) === undefined;
79
+ },
80
+ },
81
+ }), ref = _b.ref, value = _b.value, onChange = _b.onChange, fieldError = _b.error;
85
82
  var fetchDownloadUrl = useContext(CustomContext).fetchDownloadUrl;
86
- var _b = useAppSelector(function (state) { return state.global; }), formStyle = _b.formStyle, idOrganization = _b.idOrganization, postview = _b.postview;
83
+ var _c = useAppSelector(function (state) { return state.global; }), formStyle = _c.formStyle, idOrganization = _c.idOrganization, postview = _c.postview;
87
84
  var clearErrors = useFormContext().clearErrors;
88
- var _c = useState(undefined), error = _c[0], setError = _c[1];
89
- var _d = useState([]), fileChange = _d[0], setFileChange = _d[1];
85
+ var _d = useState(undefined), error = _d[0], setError = _d[1];
86
+ var _e = useState([]), fileChange = _e[0], setFileChange = _e[1];
90
87
  var inputRef = useRef();
91
88
  useEffect(function () {
92
89
  var filesToFetchLink = [];
@@ -210,7 +207,7 @@ function FileUploadStep(_a) {
210
207
  }
211
208
  return '';
212
209
  };
213
- return (_jsxs("div", __assign({ className: styles.container + (error || !!fieldError ? ' EF-error' : ''), style: editable == false || postview
210
+ return (_jsxs("div", __assign({ className: styles.container + (error || !!fieldError ? ' EF-error' : ''), style: editable === false || postview
214
211
  ? {}
215
212
  : {
216
213
  minHeight: '100px',
@@ -240,7 +237,7 @@ function FileUploadStep(_a) {
240
237
  }
241
238
  inputRef.current.value = '';
242
239
  }
243
- }, multiple: true, accept: getAcceptedExtensions() }), _jsxs("div", __assign({ className: styles.btnContainer }, { children: [_jsx("input", { ref: btnRef, className: 'hidden-input' }), _jsx(RoundedButton, { disabled: !editable || postview, text: 'Examinar' + (step.required ? ' *' : ''), color: formStyle.primaryContrastColor, backgroundColor: formStyle.primaryColor, fontSize: '1rem', padding: '5px 15px 5px 15px', onClick: function () {
240
+ }, multiple: true, accept: getAcceptedExtensions() }), _jsxs("div", __assign({ className: styles.btnContainer }, { children: [_jsx("input", { ref: ref, className: 'hidden-input' }), _jsx(RoundedButton, { disabled: !editable || postview, text: 'Examinar' + (step.required ? ' *' : ''), color: formStyle.primaryContrastColor, backgroundColor: formStyle.primaryColor, fontSize: '1rem', padding: '5px 15px 5px 15px', onClick: function () {
244
241
  if (editable && !postview) {
245
242
  var input = inputRef.current;
246
243
  if (input !== null) {
@@ -265,25 +262,4 @@ function FileUploadStep(_a) {
265
262
  }
266
263
  }, fetchDownloadUrl: fetchDownloadUrl }, index)); }) })), _jsx("div", __assign({ className: styles.errorMsg, style: { color: formStyle.errorColor } }, { children: error !== null && error !== void 0 ? error : calcErrorMsg() }))] })));
267
264
  }
268
- function UploadStepComponent(props) {
269
- var step = props.step;
270
- var _a = useStepDependency(step), handleStepDep = _a.handleStepDep, originalValue = _a.originalValue;
271
- var _b = useController({
272
- name: step.id,
273
- rules: {
274
- validate: function (array) {
275
- return ((props.step.required && array.length > 0) ||
276
- !props.step.required) &&
277
- array.find(function (file) { return !file.S3Key; }) === undefined;
278
- },
279
- },
280
- shouldUnregister: true,
281
- defaultValue: originalValue,
282
- }), _c = _b.field, ref = _c.ref, field = __rest(_c, ["ref"]), error = _b.fieldState.error;
283
- var onChange = useCallback(function (value) {
284
- handleStepDep(value);
285
- field.onChange(value);
286
- }, [handleStepDep, field]);
287
- return (_jsx(FileUploadStep, __assign({}, props, field, { btnRef: ref, fieldError: error, onChange: onChange })));
288
- }
289
- export default UploadStepComponent;
265
+ export default FileUploadStep;
@@ -20,7 +20,7 @@ import FormContext from '../../../../Contexts/FormContext';
20
20
  import CustomContext from '../../../../Contexts/CustomContext';
21
21
  function MapperElementComponent(props) {
22
22
  var _a;
23
- var level = props.level, step = props.step, element = props.element, editable = props.editable;
23
+ var step = props.step, element = props.element, editable = props.editable;
24
24
  var customContext = useContext(CustomContext);
25
25
  var form = useContext(FormContext);
26
26
  if (element.deleted) {
@@ -35,7 +35,7 @@ function MapperElementComponent(props) {
35
35
  return (_jsx(CustomContext.Provider, __assign({ value: nestedCustomContext }, { children: step.rootSteps.map(function (idSubStep) {
36
36
  var _a;
37
37
  var subStep = form.steps[element.ids[idSubStep]];
38
- return (_createElement(StepComponent, __assign({}, props, { editable: editable ? (_a = step.editable) !== null && _a !== void 0 ? _a : true : false, step: subStep, key: element.ids[idSubStep], level: level + 1 })));
38
+ return (_createElement(StepComponent, __assign({}, props, { editable: editable ? (_a = step.editable) !== null && _a !== void 0 ? _a : true : false, step: subStep, key: element.ids[idSubStep] })));
39
39
  }) })));
40
40
  };
41
41
  switch ((_a = step.style) === null || _a === void 0 ? void 0 : _a.type) {
@@ -56,10 +56,10 @@ function MapperStep(_a) {
56
56
  name: step.id,
57
57
  rules: {
58
58
  validate: function (array) {
59
- return (step.required &&
60
- array.filter(function (elem) { return !elem.deleted; })
61
- .length > 0) ||
62
- !step.required;
59
+ return !step.required ||
60
+ (step.required &&
61
+ array.filter(function (elem) { return !elem.deleted; })
62
+ .length > 0);
63
63
  },
64
64
  },
65
65
  shouldUnregister: true,
@@ -122,7 +122,11 @@ function MapperStep(_a) {
122
122
  margin: step.description
123
123
  ? '10px 0px'
124
124
  : '0px 0px 5px 0px',
125
- } }, { children: step.description }))), mapElements(), _jsx("input", { id: step.id, ref: ref, className: 'hidden-input', readOnly: true, value: inputValue }), step.creatable !== false && (_jsxs("div", __assign({ className: styles.btnContainer }, { children: [!customAdd && (_jsx(RoundedButton, { disabled: !editable || postview, text: step.addBtnLabel + (step.required ? ' *' : ''), color: formStyle.primaryContrastColor, backgroundColor: formStyle.primaryColor, fontSize: '1rem', padding: '5px 15px 5px 15px', onClick: function () {
125
+ } }, { children: step.description }))), mapElements(), _jsx("input", { id: step.id, ref: ref, className: 'hidden-input', readOnly: true, value: inputValue }), step.creatable !== false &&
126
+ (!step.max ||
127
+ value.filter(function (elem) { return !elem.deleted; })
128
+ .length < step.max) && (_jsxs("div", __assign({ className: styles.btnContainer }, { children: [!customAdd && (_jsx(RoundedButton, { disabled: !editable || postview, text: step.addBtnLabel +
129
+ (step.required ? ' *' : ''), color: formStyle.primaryContrastColor, backgroundColor: formStyle.primaryColor, fontSize: '1rem', padding: '5px 15px 5px 15px', onClick: function () {
126
130
  if (editable && !postview) {
127
131
  handleAddElement();
128
132
  }
@@ -1,4 +1,4 @@
1
1
  /// <reference types="react" />
2
2
  import { RatingStepProps } from '../RatingStep';
3
- declare function RatingStep(props: RatingStepProps): JSX.Element;
3
+ declare function RatingStep({ step, editable }: RatingStepProps): JSX.Element;
4
4
  export default RatingStep;