@zengenti/contensis-react-base 3.0.0-beta.75 → 3.0.0-beta.78
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/cjs/forms.js +52 -22
- package/cjs/forms.js.map +1 -1
- package/esm/forms.js +52 -22
- package/esm/forms.js.map +1 -1
- package/package.json +1 -1
package/cjs/forms.js
CHANGED
|
@@ -44,7 +44,7 @@ const initialSettings = {
|
|
|
44
44
|
}
|
|
45
45
|
};
|
|
46
46
|
const initialStatus = {
|
|
47
|
-
isLoading:
|
|
47
|
+
isLoading: true,
|
|
48
48
|
isSubmitting: false,
|
|
49
49
|
hasSuccess: false,
|
|
50
50
|
successMessage: null,
|
|
@@ -95,6 +95,7 @@ var reducer = immer.produce((state, action) => {
|
|
|
95
95
|
state[formId].groups = groups;
|
|
96
96
|
state[formId].defaultLanguage = defaultLanguage;
|
|
97
97
|
state[formId].status.isSubmitting = false;
|
|
98
|
+
state[formId].status.isLoading = false;
|
|
98
99
|
state[formId].status.hasSuccess = false;
|
|
99
100
|
state[formId].status.hasError = false;
|
|
100
101
|
state[formId].settings = settings;
|
|
@@ -288,30 +289,35 @@ const makeSelectIsLoading = formId => reselect.createSelector(selectForms, forms
|
|
|
288
289
|
|
|
289
290
|
return (_forms$formId = forms[formId]) === null || _forms$formId === void 0 ? void 0 : _forms$formId.status.isLoading;
|
|
290
291
|
});
|
|
291
|
-
const
|
|
292
|
+
const makeSelectIsSubmitting = formId => reselect.createSelector(selectForms, forms => {
|
|
292
293
|
var _forms$formId2;
|
|
293
294
|
|
|
294
|
-
return (_forms$formId2 = forms[formId]) === null || _forms$formId2 === void 0 ? void 0 : _forms$formId2.status.
|
|
295
|
+
return (_forms$formId2 = forms[formId]) === null || _forms$formId2 === void 0 ? void 0 : _forms$formId2.status.isSubmitting;
|
|
295
296
|
});
|
|
296
|
-
const
|
|
297
|
+
const makeSelectHasSuccess = formId => reselect.createSelector(selectForms, forms => {
|
|
297
298
|
var _forms$formId3;
|
|
298
299
|
|
|
299
|
-
return (_forms$formId3 = forms[formId]) === null || _forms$formId3 === void 0 ? void 0 : _forms$formId3.
|
|
300
|
+
return (_forms$formId3 = forms[formId]) === null || _forms$formId3 === void 0 ? void 0 : _forms$formId3.status.hasSuccess;
|
|
300
301
|
});
|
|
301
|
-
const
|
|
302
|
+
const makeSelectFormFields = formId => reselect.createSelector(selectForms, forms => {
|
|
302
303
|
var _forms$formId4;
|
|
303
304
|
|
|
304
|
-
return (_forms$formId4 = forms[formId]) === null || _forms$formId4 === void 0 ? void 0 : _forms$formId4.
|
|
305
|
+
return (_forms$formId4 = forms[formId]) === null || _forms$formId4 === void 0 ? void 0 : _forms$formId4.fields;
|
|
305
306
|
});
|
|
306
|
-
const
|
|
307
|
+
const makeSelectDefaultLang = formId => reselect.createSelector(selectForms, forms => {
|
|
307
308
|
var _forms$formId5;
|
|
308
309
|
|
|
309
|
-
return (_forms$formId5 = forms[formId]) === null || _forms$formId5 === void 0 ? void 0 : _forms$formId5.
|
|
310
|
+
return (_forms$formId5 = forms[formId]) === null || _forms$formId5 === void 0 ? void 0 : _forms$formId5.defaultLanguage;
|
|
310
311
|
});
|
|
311
|
-
const
|
|
312
|
+
const makeSelectFormSuccessMessage = formId => reselect.createSelector(selectForms, forms => {
|
|
312
313
|
var _forms$formId6;
|
|
313
314
|
|
|
314
|
-
return (_forms$formId6 = forms[formId]) === null || _forms$formId6 === void 0 ? void 0 : _forms$formId6.
|
|
315
|
+
return (_forms$formId6 = forms[formId]) === null || _forms$formId6 === void 0 ? void 0 : _forms$formId6.status.successMessage;
|
|
316
|
+
});
|
|
317
|
+
const makeSelectFormGroup$1 = formId => reselect.createSelector(selectForms, forms => {
|
|
318
|
+
var _forms$formId7;
|
|
319
|
+
|
|
320
|
+
return (_forms$formId7 = forms[formId]) === null || _forms$formId7 === void 0 ? void 0 : _forms$formId7.groups;
|
|
315
321
|
});
|
|
316
322
|
const selectors = {
|
|
317
323
|
selectForms,
|
|
@@ -323,6 +329,7 @@ const selectors = {
|
|
|
323
329
|
makeSelectFormEntries,
|
|
324
330
|
makeSelectFormPostData,
|
|
325
331
|
makeSelectIsLoading,
|
|
332
|
+
makeSelectIsSubmitting,
|
|
326
333
|
makeSelectHasSuccess,
|
|
327
334
|
makeSelectFormFields,
|
|
328
335
|
makeSelectDefaultLang,
|
|
@@ -484,13 +491,15 @@ const isBusinessEmailValid = (field, value) => {
|
|
|
484
491
|
};
|
|
485
492
|
|
|
486
493
|
const MakeFieldType = field => {
|
|
494
|
+
var _field$editor, _field$editor$propert;
|
|
495
|
+
|
|
487
496
|
if (!field) return null;
|
|
488
497
|
|
|
489
498
|
if (field.dataType === 'string' && field.editor && field.editor.id === 'multiline') {
|
|
490
499
|
return 'textarea';
|
|
491
500
|
} else if (field.dataType === 'string' && field.editor && field.editor.id === 'list-dropdown') {
|
|
492
501
|
return 'dropdown';
|
|
493
|
-
} else if (field
|
|
502
|
+
} else if (field !== null && field !== void 0 && (_field$editor = field.editor) !== null && _field$editor !== void 0 && (_field$editor$propert = _field$editor.properties) !== null && _field$editor$propert !== void 0 && _field$editor$propert.readOnly || (field === null || field === void 0 ? void 0 : field.groupId) === 'private' || (field === null || field === void 0 ? void 0 : field.groupId) === 'settings') {
|
|
494
503
|
return 'hidden';
|
|
495
504
|
} else if (field.dataType === 'stringArray' || field.dataType === 'boolean') {
|
|
496
505
|
return 'checkbox';
|
|
@@ -631,7 +640,7 @@ function* fetchForm(action) {
|
|
|
631
640
|
|
|
632
641
|
const formId = action.formId;
|
|
633
642
|
const schema = yield getFormSchema(formId);
|
|
634
|
-
const groups = schema === null || schema === void 0 ? void 0 : (_schema$groups = schema.groups) === null || _schema$groups === void 0 ? void 0 : _schema$groups.filter(group => group.id !== 'private');
|
|
643
|
+
const groups = schema === null || schema === void 0 ? void 0 : (_schema$groups = schema.groups) === null || _schema$groups === void 0 ? void 0 : _schema$groups.filter(group => group.id !== 'private' && group.id !== 'settings');
|
|
635
644
|
|
|
636
645
|
if (formId && schema) {
|
|
637
646
|
var _schema$groups2, _submitButtonText$def;
|
|
@@ -1912,17 +1921,23 @@ FormComposer.propTypes = {
|
|
|
1912
1921
|
setCheckboxValue: PropTypes__default["default"].func
|
|
1913
1922
|
};
|
|
1914
1923
|
|
|
1915
|
-
const LoadingSpinner = (
|
|
1924
|
+
const LoadingSpinner = ({
|
|
1925
|
+
className,
|
|
1926
|
+
color = '#fff',
|
|
1927
|
+
width = 20,
|
|
1928
|
+
height = 20
|
|
1929
|
+
}) => {
|
|
1916
1930
|
return /*#__PURE__*/React__default["default"].createElement("svg", {
|
|
1917
|
-
|
|
1918
|
-
|
|
1931
|
+
className: className,
|
|
1932
|
+
width: `${width}px`,
|
|
1933
|
+
height: `${height}px`,
|
|
1919
1934
|
viewBox: "0 0 100 100",
|
|
1920
1935
|
preserveAspectRatio: "xMidYMid"
|
|
1921
1936
|
}, /*#__PURE__*/React__default["default"].createElement("circle", {
|
|
1922
1937
|
cx: "50",
|
|
1923
1938
|
cy: "50",
|
|
1924
1939
|
fill: "none",
|
|
1925
|
-
stroke:
|
|
1940
|
+
stroke: color,
|
|
1926
1941
|
strokeWidth: "10",
|
|
1927
1942
|
r: "35",
|
|
1928
1943
|
strokeDasharray: "164.93361431346415 56.97787143782138",
|
|
@@ -1969,7 +1984,10 @@ const Button = ({
|
|
|
1969
1984
|
onClick: () => action(),
|
|
1970
1985
|
disabled: loading,
|
|
1971
1986
|
useDefaultTheme: useDefaultTheme
|
|
1972
|
-
}, text, loading && /*#__PURE__*/React__default["default"].createElement(LoadingSpinner,
|
|
1987
|
+
}, text, loading && /*#__PURE__*/React__default["default"].createElement(LoadingSpinner, {
|
|
1988
|
+
height: 18,
|
|
1989
|
+
width: 18
|
|
1990
|
+
}));
|
|
1973
1991
|
};
|
|
1974
1992
|
Button.propTypes = {
|
|
1975
1993
|
className: PropTypes__default["default"].string,
|
|
@@ -2137,7 +2155,7 @@ const Form = ({
|
|
|
2137
2155
|
className: className,
|
|
2138
2156
|
id: formId,
|
|
2139
2157
|
useDefaultTheme: useDefaultTheme
|
|
2140
|
-
}, !status || status &&
|
|
2158
|
+
}, !status || !(status !== null && status !== void 0 && status.hasSuccess) && !(status !== null && status !== void 0 && status.isLoading) ? /*#__PURE__*/React__default["default"].createElement(React__default["default"].Fragment, null, pagingInfo.pageIndex > 0 && /*#__PURE__*/React__default["default"].createElement(Button, {
|
|
2141
2159
|
type: "button",
|
|
2142
2160
|
text: "Go Back",
|
|
2143
2161
|
action: () => _togglePageBack(formId, pagingInfo.pageIndex - 1),
|
|
@@ -2163,13 +2181,19 @@ const Form = ({
|
|
|
2163
2181
|
}), isLastPage && /*#__PURE__*/React__default["default"].createElement(Button, {
|
|
2164
2182
|
text: (settings === null || settings === void 0 ? void 0 : settings.submitButtonText) || "Submit",
|
|
2165
2183
|
type: "button",
|
|
2184
|
+
loading: status === null || status === void 0 ? void 0 : status.isLoading,
|
|
2166
2185
|
action: () => {
|
|
2167
2186
|
_submitForm(formId);
|
|
2168
2187
|
|
|
2169
2188
|
if (customSubmit) customSubmit();
|
|
2170
2189
|
},
|
|
2171
2190
|
useDefaultTheme: useDefaultTheme
|
|
2172
|
-
}))
|
|
2191
|
+
})) : /*#__PURE__*/React__default["default"].createElement(LoadingSpinner, {
|
|
2192
|
+
className: "loading",
|
|
2193
|
+
height: 24,
|
|
2194
|
+
width: 24,
|
|
2195
|
+
color: "#333"
|
|
2196
|
+
}), (status === null || status === void 0 ? void 0 : status.hasSuccess) && (status === null || status === void 0 ? void 0 : status.successMessage) && /*#__PURE__*/React__default["default"].createElement("p", {
|
|
2173
2197
|
className: "success-message"
|
|
2174
2198
|
}, status.successMessage)));
|
|
2175
2199
|
} else {
|
|
@@ -2179,7 +2203,7 @@ const Form = ({
|
|
|
2179
2203
|
className: className,
|
|
2180
2204
|
id: formId,
|
|
2181
2205
|
useDefaultTheme: useDefaultTheme
|
|
2182
|
-
}, !status || status &&
|
|
2206
|
+
}, !status || !(status !== null && status !== void 0 && status.hasSuccess) && !(status !== null && status !== void 0 && status.isLoading) ? /*#__PURE__*/React__default["default"].createElement(React__default["default"].Fragment, null, /*#__PURE__*/React__default["default"].createElement(FormComposer, {
|
|
2183
2207
|
fields: fields,
|
|
2184
2208
|
formId: formId,
|
|
2185
2209
|
setValue: _setValue,
|
|
@@ -2191,6 +2215,7 @@ const Form = ({
|
|
|
2191
2215
|
entries: entries,
|
|
2192
2216
|
setCheckboxValue: _setCheckboxValue
|
|
2193
2217
|
}), /*#__PURE__*/React__default["default"].createElement(Button, {
|
|
2218
|
+
loading: status === null || status === void 0 ? void 0 : status.isSubmitting,
|
|
2194
2219
|
text: (settings === null || settings === void 0 ? void 0 : settings.submitButtonText) || "Submit",
|
|
2195
2220
|
type: "button",
|
|
2196
2221
|
action: () => {
|
|
@@ -2199,7 +2224,12 @@ const Form = ({
|
|
|
2199
2224
|
if (customSubmit) customSubmit();
|
|
2200
2225
|
},
|
|
2201
2226
|
useDefaultTheme: useDefaultTheme
|
|
2202
|
-
}))
|
|
2227
|
+
})) : /*#__PURE__*/React__default["default"].createElement(LoadingSpinner, {
|
|
2228
|
+
className: "loading",
|
|
2229
|
+
height: 24,
|
|
2230
|
+
width: 24,
|
|
2231
|
+
color: "#333"
|
|
2232
|
+
}), (status === null || status === void 0 ? void 0 : status.hasSuccess) && (status === null || status === void 0 ? void 0 : status.successMessage) && /*#__PURE__*/React__default["default"].createElement("p", {
|
|
2203
2233
|
className: "success-message"
|
|
2204
2234
|
}, status.successMessage)));
|
|
2205
2235
|
}
|