@arquimedes.co/eureka-forms 1.9.33-test → 1.9.34-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.
package/dist/App.js CHANGED
@@ -68,6 +68,7 @@ import widgetInstance from './AxiosWidget';
68
68
  import InternalFormStyle from './constants/InternalFormStyle';
69
69
  import { calcCbrForm } from './utils/CbrFunctions';
70
70
  import CBRStepTypes from './constants/CBRFormStepTypes';
71
+ import { nanoid } from 'nanoid';
71
72
  function App(_a) {
72
73
  var _this = this;
73
74
  var _b, _c, _d, _e;
@@ -89,7 +90,7 @@ function App(_a) {
89
90
  setForm(form);
90
91
  }
91
92
  if (valuesData !== undefined) {
92
- setOriginalValues(valuesData);
93
+ setOriginalValues(mapOriginalValues(valuesData, form));
93
94
  }
94
95
  };
95
96
  function fetchPreview(formData, valuesData) {
@@ -351,3 +352,61 @@ function getStaticWidth(step) {
351
352
  return 4;
352
353
  }
353
354
  }
355
+ var mapOriginalValues = function (originalValues, form) {
356
+ var newValues = {};
357
+ for (var _i = 0, _a = Object.keys(originalValues); _i < _a.length; _i++) {
358
+ var idValue = _a[_i];
359
+ var step = form.steps[idValue];
360
+ if (step) {
361
+ if (step.type === StepTypes.MAPPER) {
362
+ var elements = originalValues[step.id];
363
+ var mappedElements = [];
364
+ for (var _b = 0, elements_1 = elements; _b < elements_1.length; _b++) {
365
+ var element = elements_1[_b];
366
+ var idElement = nanoid();
367
+ var mappedElement = {
368
+ ids: {},
369
+ };
370
+ for (var _c = 0, _d = Object.keys(step.steps); _c < _d.length; _c++) {
371
+ var idStep = _d[_c];
372
+ var newIdStep = step.id + '-' + idStep + '-' + idElement;
373
+ mappedElement.ids[idStep] = newIdStep;
374
+ if (element[idStep] !== undefined) {
375
+ var value = mapOriginalValue(step.steps[idStep], element[idStep]);
376
+ if (value !== undefined) {
377
+ newValues[newIdStep] = value;
378
+ }
379
+ }
380
+ }
381
+ mappedElements.push(mappedElement);
382
+ }
383
+ newValues[step.id] = mappedElements;
384
+ }
385
+ else {
386
+ var value = mapOriginalValue(step, originalValues[step.id]);
387
+ if (value !== undefined) {
388
+ newValues[step.id] = value;
389
+ }
390
+ }
391
+ }
392
+ }
393
+ return newValues;
394
+ };
395
+ var mapOriginalValue = function (step, value) {
396
+ switch (step === null || step === void 0 ? void 0 : step.type) {
397
+ case StepTypes.TEXTAREA: {
398
+ if (step.hasTextEditor) {
399
+ return;
400
+ }
401
+ return value.value;
402
+ }
403
+ case StepTypes.SELECTOR: {
404
+ var option = step.options.find(function (option) { return option.value == value; });
405
+ if (!(value === null || value === void 0 ? void 0 : value.value))
406
+ return option;
407
+ return value;
408
+ }
409
+ default:
410
+ return value;
411
+ }
412
+ };
@@ -1,8 +1,6 @@
1
1
  /// <reference types="react" />
2
- import { Form } from '../../../@Types/Form';
3
2
  import { FormComponentProps } from '../Form';
4
3
  import { FormStep } from '../../../@Types/FormStep';
5
4
  declare function ColumnForm({ form, apiKey, reload, domain, postview, internal, formStyle, sendLabel, widthStats, customSteps, customSend, customSubmit, handleLoaded, originalValues, ...others }: FormComponentProps): JSX.Element;
6
5
  export default ColumnForm;
7
- export declare const mapOriginalValues: (originalValues: Record<string, any>, form: Form) => any;
8
6
  export declare function calcStepDependencyValue(depStep: FormStep, originalValues: Record<string, any>): any;
@@ -70,14 +70,13 @@ import Loader from '../../../shared/Loader/Loader';
70
70
  import axiosInstance from '../../../AxiosAPI';
71
71
  import widgetInstance from '../../../AxiosWidget';
72
72
  import React from 'react';
73
- import { nanoid } from 'nanoid';
74
73
  function ColumnForm(_a) {
75
74
  var _this = this;
76
75
  var form = _a.form, apiKey = _a.apiKey, reload = _a.reload, domain = _a.domain, postview = _a.postview, internal = _a.internal, formStyle = _a.formStyle, sendLabel = _a.sendLabel, widthStats = _a.widthStats, customSteps = _a.customSteps, customSend = _a.customSend, customSubmit = _a.customSubmit, handleLoaded = _a.handleLoaded, originalValues = _a.originalValues, others = __rest(_a, ["form", "apiKey", "reload", "domain", "postview", "internal", "formStyle", "sendLabel", "widthStats", "customSteps", "customSend", "customSubmit", "handleLoaded", "originalValues"]);
77
76
  var _b = useState(false), tempError = _b[0], setTempError = _b[1];
78
77
  var _c = useState(calcDependencies(form.steps, originalValues)), dependencyStore = _c[0], setDependencyStore = _c[1];
79
78
  var _d = useForm({
80
- defaultValues: mapOriginalValues(originalValues, form),
79
+ defaultValues: originalValues,
81
80
  mode: 'onTouched',
82
81
  shouldFocusError: true,
83
82
  }), getValues = _d.getValues, setValue = _d.setValue, clearErrors = _d.clearErrors, control = _d.control, errors = _d.formState.errors, trigger = _d.trigger;
@@ -95,7 +94,7 @@ function ColumnForm(_a) {
95
94
  return _jsx("div", {});
96
95
  }
97
96
  var onSubmit = function (token) { return __awaiter(_this, void 0, void 0, function () {
98
- var valid, values, newValues, _i, _a, idStep, step, payload, url, resp, _b, error_1;
97
+ var valid, values, newValues, _i, _a, idStep, step, test_1, payload, url, resp, _b, error_1;
99
98
  return __generator(this, function (_c) {
100
99
  switch (_c.label) {
101
100
  case 0:
@@ -120,6 +119,10 @@ function ColumnForm(_a) {
120
119
  step = form.steps[idStep];
121
120
  newValues[idStep] = calcValue(step, values, customSteps);
122
121
  }
122
+ test_1 = true;
123
+ setLoading(false);
124
+ if (test_1)
125
+ return [2 /*return*/];
123
126
  if (!customSend) return [3 /*break*/, 4];
124
127
  return [4 /*yield*/, customSend(newValues, reload)];
125
128
  case 3:
@@ -221,59 +224,6 @@ function calcNextSection(form, idSection, sections) {
221
224
  }
222
225
  }
223
226
  }
224
- export var mapOriginalValues = function (originalValues, form) {
225
- var newValues = __assign({}, originalValues);
226
- var _loop_1 = function (val) {
227
- var step = form.steps[val];
228
- if (step) {
229
- switch (step === null || step === void 0 ? void 0 : step.type) {
230
- case Types.TEXTAREA: {
231
- var value = originalValues[step.id];
232
- if (step.hasTextEditor) {
233
- delete newValues[step.id];
234
- }
235
- else {
236
- newValues[step.id] = value.value;
237
- }
238
- break;
239
- }
240
- case Types.SELECTOR: {
241
- var value_1 = originalValues[step.id];
242
- var option = step.options.find(function (option) { return option.value == value_1; });
243
- if (!(value_1 === null || value_1 === void 0 ? void 0 : value_1.value))
244
- newValues[step.id] = option;
245
- break;
246
- }
247
- case Types.MAPPER: {
248
- var valueArr = originalValues[step.id];
249
- var elements = [];
250
- for (var _b = 0, valueArr_1 = valueArr; _b < valueArr_1.length; _b++) {
251
- var values = valueArr_1[_b];
252
- var idElement = nanoid();
253
- var newElement = {
254
- ids: {},
255
- };
256
- for (var _c = 0, _d = Object.keys(step.steps); _c < _d.length; _c++) {
257
- var idStep = _d[_c];
258
- var newIdStep = step.id + '-' + idStep + '-' + idElement;
259
- newElement.ids[idStep] = newIdStep;
260
- newValues[newIdStep] = values[idStep];
261
- }
262
- }
263
- newValues[step.id] = elements;
264
- break;
265
- }
266
- default:
267
- break;
268
- }
269
- }
270
- };
271
- for (var _i = 0, _a = Object.keys(originalValues); _i < _a.length; _i++) {
272
- var val = _a[_i];
273
- _loop_1(val);
274
- }
275
- return newValues;
276
- };
277
227
  var calcValue = function (step, values, customSteps, value) {
278
228
  var _a, _b, _c;
279
229
  if (value === void 0) { value = values[(_a = step === null || step === void 0 ? void 0 : step.id) !== null && _a !== void 0 ? _a : '']; }
@@ -320,7 +270,9 @@ var calcValue = function (step, values, customSteps, value) {
320
270
  var idStep = _e[_d];
321
271
  var mappedId = element.ids[idStep];
322
272
  if (values[mappedId] !== undefined) {
323
- newValue[idStep] = calcValue(step.steps[idStep], values, customSteps, values[mappedId]);
273
+ var substep = step.steps[idStep];
274
+ var test_2 = calcValue(substep, values, customSteps, values[mappedId]);
275
+ newValue[idStep] = test_2;
324
276
  }
325
277
  }
326
278
  mappedValues.push(newValue);
@@ -2,7 +2,7 @@
2
2
  import { MapperStepProps } from '../../MapperStep';
3
3
  import { MapperElement } from '../MaterialMapperStep';
4
4
  declare function MapperElementComponent({ step, form, level, element, handleDelete, ...others }: MapperStepProps & {
5
- index: number;
5
+ num: number;
6
6
  element: MapperElement;
7
7
  handleDelete: Function;
8
8
  }): JSX.Element;
@@ -2,9 +2,9 @@
2
2
  import { MapperStepProps } from '../../../MapperStep';
3
3
  import { Form } from '../../../../../../@Types';
4
4
  import { Mapper } from '../../../../../../@Types/FormStep';
5
- declare function PillElementContainer({ step, size, index, children, editable, postview, formStyle, handleDelete, widthStats, }: Pick<MapperStepProps, 'editable' | 'postview' | 'widthStats'> & {
5
+ declare function PillElementContainer({ step, size, num, children, editable, postview, formStyle, handleDelete, widthStats, }: Pick<MapperStepProps, 'editable' | 'postview' | 'widthStats'> & {
6
6
  step: Mapper;
7
- index: number;
7
+ num: number;
8
8
  formStyle: {
9
9
  textColor: string;
10
10
  };
@@ -13,13 +13,13 @@ import { jsxs as _jsxs, jsx as _jsx } from "react/jsx-runtime";
13
13
  import styles from './PillElementContainer.module.css';
14
14
  import DeleteRoundedIcon from '@material-ui/icons/DeleteRounded';
15
15
  function PillElementContainer(_a) {
16
- var step = _a.step, size = _a.size, index = _a.index, children = _a.children, editable = _a.editable, postview = _a.postview, formStyle = _a.formStyle, handleDelete = _a.handleDelete, widthStats = _a.widthStats;
16
+ var step = _a.step, size = _a.size, num = _a.num, children = _a.children, editable = _a.editable, postview = _a.postview, formStyle = _a.formStyle, handleDelete = _a.handleDelete, widthStats = _a.widthStats;
17
17
  return (_jsx("div", __assign({ className: widthStats.isMobile || size.blockNum < 3
18
18
  ? styles.mobileContainer
19
19
  : styles.container }, { children: _jsxs("div", __assign({ className: styles.contentContainer, style: {
20
20
  width: (size.blockSize + size.spacingSize) *
21
21
  (size.blockNum - 1),
22
- } }, { children: [_jsxs("div", __assign({ className: styles.titleLbl, style: { color: formStyle.textColor } }, { children: [step.unitLabel + ' ' + index + 1, ":"] })), _jsx("div", __assign({ className: !editable || postview
22
+ } }, { children: [_jsxs("div", __assign({ className: styles.titleLbl, style: { color: formStyle.textColor } }, { children: [step.unitLabel + ' ' + (num + 1), ":"] })), _jsx("div", __assign({ className: !editable || postview
23
23
  ? styles.disabledDeleteBtn
24
24
  : styles.deleteBtn, style: { color: formStyle.textColor }, onClick: function () {
25
25
  if (editable && !postview) {
@@ -45,26 +45,31 @@ function Elements(_a) {
45
45
  var _c = useState(), localSteps = _c[0], setLocalSteps = _c[1];
46
46
  useEffect(function () {
47
47
  setFirstRender(true);
48
- var steps = {};
49
- var deps = __assign({}, dependencyStore);
50
- for (var _i = 0, elements_1 = elements; _i < elements_1.length; _i++) {
51
- var element = elements_1[_i];
52
- var newSteps = {};
53
- for (var _a = 0, _b = Object.keys(step.steps); _a < _b.length; _a++) {
54
- var idStep = _b[_a];
55
- var baseStep = step.steps[idStep];
56
- var newIdStep = element.ids[idStep];
57
- newSteps[newIdStep] = __assign(__assign({}, baseStep), { id: newIdStep });
58
- steps[newIdStep] = newSteps[newIdStep];
59
- }
60
- calcRecursiveData(element, newSteps, deps);
61
- }
62
- setDependencyStore(deps);
63
- setLocalSteps(steps);
64
48
  }, []);
65
49
  useEffect(function () {
66
- if (firstRender && elements.length === 0 && !postview && editable) {
67
- handleAddElement();
50
+ if (firstRender) {
51
+ if (elements.length > 0) {
52
+ var newSteps = {};
53
+ var deps = __assign({}, dependencyStore);
54
+ for (var _i = 0, elements_1 = elements; _i < elements_1.length; _i++) {
55
+ var element = elements_1[_i];
56
+ var elemSteps = {};
57
+ for (var _a = 0, _b = Object.keys(step.steps); _a < _b.length; _a++) {
58
+ var idStep = _b[_a];
59
+ var baseStep = JSON.parse(JSON.stringify(form.steps[idStep]));
60
+ var newIdStep = element.ids[idStep];
61
+ baseStep.id = newIdStep;
62
+ elemSteps[newIdStep] = baseStep;
63
+ newSteps[newIdStep] = baseStep;
64
+ }
65
+ calcRecursiveData(element, elemSteps, deps);
66
+ }
67
+ setDependencyStore(deps);
68
+ setLocalSteps(__assign(__assign({}, localSteps), newSteps));
69
+ }
70
+ else if (elements.length === 0 && !postview && editable) {
71
+ handleAddElement();
72
+ }
68
73
  }
69
74
  }, [firstRender]);
70
75
  var handleAddElement = function () {
@@ -103,7 +108,7 @@ function Elements(_a) {
103
108
  margin: step.description
104
109
  ? '10px 0px'
105
110
  : '0px 0px 5px 0px',
106
- } }, { children: step.description }))), elements.map(function (incident, index) { return (_jsx(MapperElementComponent, __assign({ index: index, element: incident, formStyle: formStyle, step: step, form: __assign(__assign({}, form), { steps: localSteps }), editable: editable, postview: postview, dependencyStore: dependencyStore, setDependencyStore: setDependencyStore, handleDelete: function () {
111
+ } }, { children: step.description }))), elements.map(function (incident, index) { return (_jsx(MapperElementComponent, __assign({ num: index, element: incident, formStyle: formStyle, step: step, form: __assign(__assign({}, form), { steps: localSteps }), editable: editable, postview: postview, dependencyStore: dependencyStore, setDependencyStore: setDependencyStore, handleDelete: function () {
107
112
  var tempElements = __spreadArray([], elements, true);
108
113
  tempElements[index].deleted = true;
109
114
  onChange(tempElements);
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@arquimedes.co/eureka-forms",
3
3
  "repository": "git://github.com/Arquimede5/Eureka-Forms.git",
4
- "version":"1.9.33-test",
4
+ "version":"1.9.34-test",
5
5
  "scripts": {
6
6
  "start": "react-scripts start",
7
7
  "build": "react-scripts build",