@arquimedes.co/eureka-forms 2.0.10-test → 2.0.11-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.
@@ -1,10 +1,9 @@
1
1
  import { Form } from '../@Types';
2
2
  import { FormStep, Mapper } from '../@Types/FormStep';
3
3
  import { SiteState, ValuesStore } from '../States/SiteSlice';
4
- import { DependencyStore } from '../Form/Form';
5
4
  import { CustomStep } from '../FormSteps/CustomStep';
6
5
  import { MapperElement } from '../@Types/MapperElement';
7
- export declare const calcValuesStore: (originalValues: Record<string, any>, form: Form, dependencies: DependencyStore, customSteps: Record<string, CustomStep>) => ValuesStore;
6
+ export declare const calcValuesStore: (form: Form, originalValues?: Record<string, any>, postview?: boolean, customSteps?: Record<string, CustomStep>) => ValuesStore;
8
7
  export declare const addMapperStep: <Type>(step: Mapper, customSteps: Record<string, CustomStep>) => {
9
8
  element: MapperElement<Type>;
10
9
  /** Record of all the new mapper values created */
@@ -11,13 +11,14 @@ var __assign = (this && this.__assign) || function () {
11
11
  };
12
12
  import { nanoid } from 'nanoid';
13
13
  import StepTypes, { FormTypes } from '../constants/FormStepTypes';
14
- import { EditorState, convertFromRaw } from 'draft-js';
15
14
  import { getRawText, stringToDraft } from '../Utils/DraftFunctions';
16
- import { calcDependencies } from '../Form/FormFunctions';
17
15
  import { calcSubSteps } from '../FormSteps/StepFunctions';
18
- export var calcValuesStore = function (originalValues, form, dependencies, customSteps) {
16
+ export var calcValuesStore = function (form, originalValues, postview, customSteps) {
19
17
  var _a;
20
18
  var _b;
19
+ if (originalValues === void 0) { originalValues = {}; }
20
+ if (postview === void 0) { postview = false; }
21
+ if (customSteps === void 0) { customSteps = {}; }
21
22
  var values = {
22
23
  global: {},
23
24
  sections: {},
@@ -37,17 +38,21 @@ export var calcValuesStore = function (originalValues, form, dependencies, custo
37
38
  values.global[idValue] = originalValues[idValue];
38
39
  }
39
40
  }
40
- for (var _d = 0, _e = Object.values(form.steps); _d < _e.length; _d++) {
41
- var step = _e[_d];
42
- if (step.type !== StepTypes.MAPPER ||
43
- ((_b = values.sections[step.idSection]) === null || _b === void 0 ? void 0 : _b[step.id]) ||
44
- !step.required)
45
- continue;
46
- if (!values.sections[step.idSection])
47
- values.sections[step.idSection] = {};
48
- var _f = addMapperStep(step, customSteps), element = _f.element, steps = _f.steps, mappers = _f.mappers;
49
- values.sections[step.idSection] = __assign(__assign(__assign({}, values.sections[step.idSection]), mappers), (_a = {}, _a[step.id] = [element], _a));
50
- calcDependencies(steps, customSteps, __assign(__assign({}, form.steps), steps), dependencies, values);
41
+ if (postview)
42
+ return values;
43
+ for (var _d = 0, _e = Object.values(form.sections); _d < _e.length; _d++) {
44
+ var section = _e[_d];
45
+ for (var _f = 0, _g = section.steps; _f < _g.length; _f++) {
46
+ var idStep = _g[_f];
47
+ var step = form.steps[idStep];
48
+ if (step.type !== StepTypes.MAPPER ||
49
+ ((_b = values.sections[step.idSection]) === null || _b === void 0 ? void 0 : _b[step.id]))
50
+ continue;
51
+ if (!values.sections[step.idSection])
52
+ values.sections[step.idSection] = {};
53
+ var _h = addMapperStep(step, customSteps), element = _h.element, mappers = _h.mappers;
54
+ values.sections[step.idSection] = __assign(__assign(__assign({}, values.sections[step.idSection]), mappers), (_a = {}, _a[step.id] = [element], _a));
55
+ }
51
56
  }
52
57
  return values;
53
58
  };
@@ -70,9 +75,9 @@ export var addMapperStep = function (step, customSteps) {
70
75
  steps[newIdStep] = baseStep;
71
76
  }
72
77
  calcRecursiveData(element, steps, customSteps);
73
- for (var _b = 0, _c = Object.values(steps); _b < _c.length; _b++) {
78
+ for (var _b = 0, _c = Object.values(step.steps); _b < _c.length; _b++) {
74
79
  var nestedStep = _c[_b];
75
- if (nestedStep.type === StepTypes.MAPPER && nestedStep.required) {
80
+ if (nestedStep.type === StepTypes.MAPPER) {
76
81
  var nested = addMapperStep(nestedStep, customSteps);
77
82
  steps = __assign(__assign({}, steps), nested.steps);
78
83
  mappers = __assign(__assign({}, mappers), nested.mappers);
@@ -87,6 +92,7 @@ export function calcRecursiveData(element, newSteps, customSteps) {
87
92
  for (var _i = 0, _a = Object.keys(newSteps); _i < _a.length; _i++) {
88
93
  var idStep = _a[_i];
89
94
  var step = newSteps[idStep];
95
+ step.id = idStep;
90
96
  if (step.dependencies) {
91
97
  for (var i = 0; i < step.dependencies.length; i++) {
92
98
  var idDep = step.dependencies[i];
@@ -146,7 +152,10 @@ export var mapOriginalValue = function (step, value, values, form) {
146
152
  }
147
153
  case StepTypes.TEXTAREA: {
148
154
  if (step.hasTextEditor) {
149
- return calcDefaultDraftValue(value);
155
+ if (typeof value === 'string') {
156
+ return stringToDraft(value);
157
+ }
158
+ return getRawText(value === null || value === void 0 ? void 0 : value.draft, value === null || value === void 0 ? void 0 : value.text);
150
159
  }
151
160
  var defaultValue = (_b = value.value) !== null && _b !== void 0 ? _b : value;
152
161
  if (typeof defaultValue === 'string') {
@@ -180,14 +189,6 @@ export var mapOriginalValue = function (step, value, values, form) {
180
189
  return value;
181
190
  }
182
191
  };
183
- var calcDefaultDraftValue = function (defaultValue) {
184
- if (typeof defaultValue === 'string') {
185
- return EditorState.createWithContent(convertFromRaw(stringToDraft(defaultValue)));
186
- }
187
- else {
188
- return EditorState.createWithContent(convertFromRaw(getRawText(defaultValue === null || defaultValue === void 0 ? void 0 : defaultValue.draft, defaultValue === null || defaultValue === void 0 ? void 0 : defaultValue.text)));
189
- }
190
- };
191
192
  export var calcInitialSections = function (form) {
192
193
  var previousSections = [];
193
194
  var nextSections = calcNextSections(form.firstSection, form);
@@ -171,7 +171,7 @@ export var useSetupApp = function (isEmbedded, _a) {
171
171
  if (!form || !idOrganization)
172
172
  return [2 /*return*/];
173
173
  dependencies = {};
174
- values = calcValuesStore(valuesData !== null && valuesData !== void 0 ? valuesData : {}, form, dependencies, customSteps !== null && customSteps !== void 0 ? customSteps : {});
174
+ values = calcValuesStore(form, valuesData, postview, customSteps);
175
175
  dispatch(reset(__assign(__assign({ formStyle: internal
176
176
  ? InternalFormStyle
177
177
  : __assign(__assign({}, InternalFormStyle), ((_b = form === null || form === void 0 ? void 0 : form.style) !== null && _b !== void 0 ? _b : {})), internal: !!internal, idOrganization: idOrganization, preview: !!preview, partial: !!partial, postview: !!postview, editable: !!(editable !== null && editable !== void 0 ? editable : true), values: values }, calcInitialSections(form)), { dependencies: calcDependencies(form.steps, customSteps, form.steps, dependencies, values) })));
@@ -1,7 +1,9 @@
1
- import { FormStep } from '../@Types/FormStep';
1
+ import { FormStep, Mapper } from '../@Types/FormStep';
2
2
  import { DependencyStore } from './Form';
3
3
  import { CustomStep } from '../FormSteps/CustomStep';
4
4
  import { CBRFormStep } from '../@Types/CBRFormStep';
5
+ import { MapperElement } from '../@Types/MapperElement';
5
6
  import { ValuesStore } from '../States/SiteSlice';
6
7
  export declare const calcValue: (idStep: string, steps: Record<string, FormStep>, values: Record<string, any>, customSteps: Record<string, CustomStep> | undefined, deleteIds: string[], value?: any) => any;
7
8
  export declare function calcDependencies(steps: Record<string, FormStep | CBRFormStep>, customSteps?: Record<string, CustomStep>, allSteps?: Record<string, FormStep | CBRFormStep>, dependencies?: DependencyStore, values?: ValuesStore): DependencyStore;
9
+ export declare const calcMapperSubSteps: (step: Mapper, elements: MapperElement<any>[] | undefined, customSteps: Record<string, CustomStep>) => Record<string, FormStep>;
@@ -20,6 +20,7 @@ var __spreadArray = (this && this.__spreadArray) || function (to, from, pack) {
20
20
  };
21
21
  import { convertToRaw } from 'draft-js';
22
22
  import StepTypes, { EntityValueDataTypes } from '../constants/FormStepTypes';
23
+ import { calcRecursiveData } from '../App/AppFunctions';
23
24
  export var calcValue = function (idStep, steps, values, customSteps, deleteIds, value) {
24
25
  var _a, _b;
25
26
  if (value === void 0) { value = values[idStep]; }
@@ -113,7 +114,7 @@ function stringToDraft(text) {
113
114
  return draftStructure;
114
115
  }
115
116
  export function calcDependencies(steps, customSteps, allSteps, dependencies, values) {
116
- var _a, _b, _c;
117
+ var _a, _b;
117
118
  if (customSteps === void 0) { customSteps = {}; }
118
119
  if (allSteps === void 0) { allSteps = steps; }
119
120
  if (dependencies === void 0) { dependencies = {}; }
@@ -121,58 +122,63 @@ export function calcDependencies(steps, customSteps, allSteps, dependencies, val
121
122
  global: {},
122
123
  sections: {},
123
124
  }; }
124
- for (var _i = 0, _d = Object.values(steps); _i < _d.length; _i++) {
125
- var step = _d[_i];
125
+ for (var _i = 0, _c = Object.values(steps); _i < _c.length; _i++) {
126
+ var step = _c[_i];
126
127
  var originalValue = (_a = values.sections[step.idSection]) === null || _a === void 0 ? void 0 : _a[step.id];
127
128
  if (step.dependencies) {
128
- for (var _e = 0, _f = step.dependencies; _e < _f.length; _e++) {
129
- var idDep = _f[_e];
129
+ for (var _d = 0, _e = step.dependencies; _d < _e.length; _d++) {
130
+ var idDep = _e[_d];
130
131
  if (dependencies[idDep] === undefined)
131
- dependencies[idDep] = calcStepDependency(idDep, allSteps, originalValue, customSteps);
132
+ dependencies[idDep] = calcStepDependency(idDep, allSteps, values, customSteps);
132
133
  dependencies[idDep].dependents.push(step);
133
134
  }
134
135
  }
135
136
  if (step.type === StepTypes.ENTITYVALUEPICKER) {
136
- for (var _g = 0, _h = __spreadArray(__spreadArray([], step.path, true), step.filters, true); _g < _h.length; _g++) {
137
- var path = _h[_g];
137
+ for (var _f = 0, _g = __spreadArray(__spreadArray([], step.path, true), step.filters, true); _f < _g.length; _f++) {
138
+ var path = _g[_f];
138
139
  if (path.type !== EntityValueDataTypes.STEP)
139
140
  continue;
140
141
  if ((_b = step.dependencies) === null || _b === void 0 ? void 0 : _b.includes(path.idStep))
141
142
  continue;
142
143
  if (dependencies[path.idStep] === undefined) {
143
- dependencies[path.idStep] = calcStepDependency(path.idStep, allSteps, originalValue, customSteps);
144
+ dependencies[path.idStep] = calcStepDependency(path.idStep, allSteps, values, customSteps);
144
145
  }
145
146
  dependencies[path.idStep].dependents.push(step);
146
147
  }
147
148
  }
148
149
  if (step.type === StepTypes.MAPPER) {
149
- var newSteps = {};
150
- var elements = originalValue !== null && originalValue !== void 0 ? originalValue : [];
151
- var _loop_1 = function (element) {
152
- for (var _k = 0, _l = Object.keys(step.steps); _k < _l.length; _k++) {
153
- var idSubStep = _l[_k];
154
- var subStep = step.steps[idSubStep];
155
- var mappedId = element.ids[idSubStep];
156
- newSteps[mappedId] = __assign(__assign({}, subStep), { id: mappedId, dependencies: (_c = subStep.dependencies) === null || _c === void 0 ? void 0 : _c.map(function (dep) { var _a; return (_a = element.ids[dep]) !== null && _a !== void 0 ? _a : dep; }) });
157
- }
158
- };
159
- for (var _j = 0, elements_2 = elements; _j < elements_2.length; _j++) {
160
- var element = elements_2[_j];
161
- _loop_1(element);
162
- }
163
- if (elements.length === 0) {
164
- newSteps = step.steps;
165
- }
166
- calcDependencies(newSteps, customSteps, __assign(__assign({}, allSteps), newSteps), dependencies, values);
150
+ var subSteps = calcMapperSubSteps(step, originalValue, customSteps);
151
+ if (Object.keys(subSteps).length > 0)
152
+ calcDependencies(subSteps, customSteps, __assign(__assign({}, allSteps), subSteps), dependencies, values);
167
153
  }
168
154
  }
169
155
  return dependencies;
170
156
  }
171
- function calcStepDependency(idStep, steps, originalValue, customSteps) {
157
+ export var calcMapperSubSteps = function (step, elements, customSteps) {
172
158
  var _a;
159
+ if (elements === void 0) { elements = []; }
160
+ var newSteps = {};
161
+ for (var _i = 0, elements_2 = elements; _i < elements_2.length; _i++) {
162
+ var element = elements_2[_i];
163
+ var elemSteps = {};
164
+ for (var _b = 0, _c = Object.keys(step.steps); _b < _c.length; _b++) {
165
+ var idSubStep = _c[_b];
166
+ var baseStep = JSON.parse(JSON.stringify((_a = step.steps[idSubStep]) !== null && _a !== void 0 ? _a : '{}'));
167
+ var newIdStep = element.ids[idSubStep];
168
+ baseStep.id = newIdStep;
169
+ elemSteps[newIdStep] = baseStep;
170
+ newSteps[newIdStep] = baseStep;
171
+ }
172
+ calcRecursiveData(element, elemSteps, customSteps);
173
+ }
174
+ return newSteps;
175
+ };
176
+ function calcStepDependency(idStep, steps, values, customSteps) {
177
+ var _a, _b;
173
178
  var depStep = steps[idStep];
179
+ var originalValue = (_a = values.sections[depStep.idSection]) === null || _a === void 0 ? void 0 : _a[depStep.id];
174
180
  return {
175
- type: (_a = depStep === null || depStep === void 0 ? void 0 : depStep.type) !== null && _a !== void 0 ? _a : 'ORIGINAL',
181
+ type: (_b = depStep === null || depStep === void 0 ? void 0 : depStep.type) !== null && _b !== void 0 ? _b : 'ORIGINAL',
176
182
  value: depStep
177
183
  ? calcStepDependencyValue(depStep, originalValue, customSteps)
178
184
  : originalValue !== null && originalValue !== void 0 ? originalValue : null,
@@ -42,7 +42,8 @@ import FormContext from '../../../Contexts/FormContext';
42
42
  import { useAppDispatch, useAppSelector } from '../../../hooks';
43
43
  import CustomContext from '../../../Contexts/CustomContext';
44
44
  import { useStepDependency } from '../../StepHooks';
45
- import { addMapperStep, calcRecursiveData } from '../../../App/AppFunctions';
45
+ import { addMapperStep } from '../../../App/AppFunctions';
46
+ import { calcMapperSubSteps } from '../../../Form/FormFunctions';
46
47
  export function ElementsComponent(_a) {
47
48
  var step = _a.step, inputRef = _a.inputRef, editable = _a.editable, elements = _a.elements, customAdd = _a.customAdd, _b = _a.loading, loading = _b === void 0 ? false : _b, onChange = _a.onChange, others = __rest(_a, ["step", "inputRef", "editable", "elements", "customAdd", "loading", "onChange"]);
48
49
  var form = useContext(FormContext);
@@ -52,24 +53,7 @@ export function ElementsComponent(_a) {
52
53
  var _d = useFormContext(), setValue = _d.setValue, errors = _d.formState.errors;
53
54
  var handleStepDep = useStepDependency(step).handleStepDep;
54
55
  /** Mapper Steps to pass down */
55
- var _e = useState((function () {
56
- var _a;
57
- var newSteps = {};
58
- for (var _i = 0, elements_1 = elements; _i < elements_1.length; _i++) {
59
- var element = elements_1[_i];
60
- var elemSteps = {};
61
- for (var _b = 0, _c = Object.keys(step.steps); _b < _c.length; _b++) {
62
- var idStep = _c[_b];
63
- var baseStep = JSON.parse(JSON.stringify((_a = step.steps[idStep]) !== null && _a !== void 0 ? _a : '{}'));
64
- var newIdStep = element.ids[idStep];
65
- baseStep.id = newIdStep;
66
- elemSteps[newIdStep] = baseStep;
67
- newSteps[newIdStep] = baseStep;
68
- }
69
- calcRecursiveData(element, elemSteps, customSteps);
70
- }
71
- return newSteps;
72
- })()), localSteps = _e[0], setLocalSteps = _e[1];
56
+ var _e = useState(calcMapperSubSteps(step, elements, customSteps)), localSteps = _e[0], setLocalSteps = _e[1];
73
57
  useEffect(function () {
74
58
  if (elements.length === 0 && !postview && editable && step.creatable) {
75
59
  if (!customAdd)
@@ -101,7 +101,8 @@ export function SmartSelect(_a) {
101
101
  return __generator(this, function (_a) {
102
102
  switch (_a.label) {
103
103
  case 0:
104
- setOptions(undefined);
104
+ if (!firstTime)
105
+ setOptions(undefined);
105
106
  if (value && !firstTime)
106
107
  setLoading(true);
107
108
  _a.label = 1;
@@ -116,7 +117,7 @@ export function SmartSelect(_a) {
116
117
  newValue = resp.find(function (option) {
117
118
  return getValueString(option) === getValueString(value);
118
119
  });
119
- if (!firstTime || newValue)
120
+ if (!firstTime)
120
121
  onChange(newValue);
121
122
  }
122
123
  else if (!firstTime)
@@ -145,9 +146,9 @@ export function SmartSelect(_a) {
145
146
  }); };
146
147
  var warning = useMemo(function () { return getValueWarning === null || getValueWarning === void 0 ? void 0 : getValueWarning(value); }, [value]);
147
148
  var onFocus = useCallback(function () {
148
- if (disabled)
149
+ if (disabled || !editable || postview)
149
150
  return;
150
- if (options === null && !(!editable || postview)) {
151
+ if (options === null) {
151
152
  if (!value) {
152
153
  if (invalids.length > 0) {
153
154
  var depStep = form.steps[invalids[0]];
@@ -167,7 +168,7 @@ export function SmartSelect(_a) {
167
168
  }
168
169
  }
169
170
  }
170
- if (options === undefined && !(!editable || postview)) {
171
+ if (options === undefined) {
171
172
  setLoading(true);
172
173
  }
173
174
  if (!touched)
@@ -177,6 +178,8 @@ export function SmartSelect(_a) {
177
178
  valueOverwrite ? onChange(valueOverwrite(value)) : onChange(value);
178
179
  }, [valueOverwrite, onChange]);
179
180
  var errorMsg = useMemo(function () {
181
+ if (postview || loading)
182
+ return undefined;
180
183
  if (invalids.length > 0 && touched) {
181
184
  return calcDepError === null || calcDepError === void 0 ? void 0 : calcDepError(invalids.map(function (idDep) { return form.steps[idDep]; }));
182
185
  }
@@ -1,7 +1,7 @@
1
- import { EditorState } from 'draft-js';
2
1
  import Types, { ApiSelectorOptionTypes, ClassifierOptionTypes, EntityValueDataTypes, EntityValueOptionTypes, OptionTypes, StepTypes, } from '../constants/FormStepTypes';
3
2
  import CBRFormStepTypes from '../constants/CBRFormStepTypes';
4
3
  import AYFFormStepTypes from '../constants/AYFFormStepTypes';
4
+ import { getRawText } from '../Utils/DraftFunctions';
5
5
  export function calcFillerSize(step, steps, values, size) {
6
6
  var _a;
7
7
  var maxSize = (_a = step.maxSize) !== null && _a !== void 0 ? _a : size.blockNum;
@@ -110,7 +110,7 @@ export var calcDefaultValue = function (step) {
110
110
  return '';
111
111
  case StepTypes.TEXTAREA:
112
112
  if (step.hasTextEditor)
113
- return EditorState.createEmpty();
113
+ return getRawText();
114
114
  else
115
115
  return '';
116
116
  case StepTypes.RATING:
@@ -30,6 +30,7 @@ import { useCallback, useState } from 'react';
30
30
  import { ClickAwayListener } from '@material-ui/core';
31
31
  import { useAppSelector } from '../../../hooks';
32
32
  import { useStepDependency } from '../../StepHooks';
33
+ import { EditorState, convertFromRaw } from 'draft-js';
33
34
  function TextAreaStep(_a) {
34
35
  var _b;
35
36
  var step = _a.step, editable = _a.editable;
@@ -48,7 +49,7 @@ function TextAreaStep(_a) {
48
49
  },
49
50
  }
50
51
  : {},
51
- defaultValue: originalValue,
52
+ defaultValue: EditorState.createWithContent(convertFromRaw(originalValue)),
52
53
  }), _j = _h.field, ref = _j.ref, onChange = _j.onChange, field = __rest(_j, ["ref", "onChange"]), error = _h.fieldState.error;
53
54
  var handleChange = useCallback(function (value) {
54
55
  if (isDependency) {
@@ -52,7 +52,7 @@ function Title(_a) {
52
52
  }
53
53
  function TitleStep(props) {
54
54
  var step = props.step;
55
- var originalValue = useStepDependency(step);
55
+ var originalValue = useStepDependency(step).originalValue;
56
56
  return (_jsx(Controller, { name: step.id, defaultValue: originalValue, render: function (_a) {
57
57
  var _b = _a.field, ref = _b.ref, field = __rest(_b, ["ref"]);
58
58
  return (_jsx(Title, __assign({}, props, field, { inputRef: ref })));
@@ -1,3 +1,4 @@
1
+ import { nanoid } from '@reduxjs/toolkit';
1
2
  export function stringToDraft(text) {
2
3
  var draftStructure = {
3
4
  blocks: [],
@@ -27,7 +28,7 @@ export var getRawText = function (draft, text) {
27
28
  return {
28
29
  blocks: [
29
30
  {
30
- key: 'fudmo',
31
+ key: nanoid(5),
31
32
  text: '',
32
33
  type: 'unstyled',
33
34
  depth: 0,
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":"2.0.10-test",
4
+ "version":"2.0.11-test",
5
5
  "scripts": {
6
6
  "start": "react-scripts start",
7
7
  "build": "react-scripts build",