@zengenti/contensis-react-base 3.0.0-beta.76 → 3.0.0-beta.79

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/esm/forms.js CHANGED
@@ -34,7 +34,7 @@ const initialSettings = {
34
34
  }
35
35
  };
36
36
  const initialStatus = {
37
- isLoading: false,
37
+ isLoading: true,
38
38
  isSubmitting: false,
39
39
  hasSuccess: false,
40
40
  successMessage: null,
@@ -85,6 +85,7 @@ var reducer = produce((state, action) => {
85
85
  state[formId].groups = groups;
86
86
  state[formId].defaultLanguage = defaultLanguage;
87
87
  state[formId].status.isSubmitting = false;
88
+ state[formId].status.isLoading = false;
88
89
  state[formId].status.hasSuccess = false;
89
90
  state[formId].status.hasError = false;
90
91
  state[formId].settings = settings;
@@ -278,30 +279,35 @@ const makeSelectIsLoading = formId => createSelector(selectForms, forms => {
278
279
 
279
280
  return (_forms$formId = forms[formId]) === null || _forms$formId === void 0 ? void 0 : _forms$formId.status.isLoading;
280
281
  });
281
- const makeSelectHasSuccess = formId => createSelector(selectForms, forms => {
282
+ const makeSelectIsSubmitting = formId => createSelector(selectForms, forms => {
282
283
  var _forms$formId2;
283
284
 
284
- return (_forms$formId2 = forms[formId]) === null || _forms$formId2 === void 0 ? void 0 : _forms$formId2.status.hasSuccess;
285
+ return (_forms$formId2 = forms[formId]) === null || _forms$formId2 === void 0 ? void 0 : _forms$formId2.status.isSubmitting;
285
286
  });
286
- const makeSelectFormFields = formId => createSelector(selectForms, forms => {
287
+ const makeSelectHasSuccess = formId => createSelector(selectForms, forms => {
287
288
  var _forms$formId3;
288
289
 
289
- return (_forms$formId3 = forms[formId]) === null || _forms$formId3 === void 0 ? void 0 : _forms$formId3.fields;
290
+ return (_forms$formId3 = forms[formId]) === null || _forms$formId3 === void 0 ? void 0 : _forms$formId3.status.hasSuccess;
290
291
  });
291
- const makeSelectDefaultLang = formId => createSelector(selectForms, forms => {
292
+ const makeSelectFormFields = formId => createSelector(selectForms, forms => {
292
293
  var _forms$formId4;
293
294
 
294
- return (_forms$formId4 = forms[formId]) === null || _forms$formId4 === void 0 ? void 0 : _forms$formId4.defaultLanguage;
295
+ return (_forms$formId4 = forms[formId]) === null || _forms$formId4 === void 0 ? void 0 : _forms$formId4.fields;
295
296
  });
296
- const makeSelectFormSuccessMessage = formId => createSelector(selectForms, forms => {
297
+ const makeSelectDefaultLang = formId => createSelector(selectForms, forms => {
297
298
  var _forms$formId5;
298
299
 
299
- return (_forms$formId5 = forms[formId]) === null || _forms$formId5 === void 0 ? void 0 : _forms$formId5.status.successMessage;
300
+ return (_forms$formId5 = forms[formId]) === null || _forms$formId5 === void 0 ? void 0 : _forms$formId5.defaultLanguage;
300
301
  });
301
- const makeSelectFormGroup$1 = formId => createSelector(selectForms, forms => {
302
+ const makeSelectFormSuccessMessage = formId => createSelector(selectForms, forms => {
302
303
  var _forms$formId6;
303
304
 
304
- return (_forms$formId6 = forms[formId]) === null || _forms$formId6 === void 0 ? void 0 : _forms$formId6.groups;
305
+ return (_forms$formId6 = forms[formId]) === null || _forms$formId6 === void 0 ? void 0 : _forms$formId6.status.successMessage;
306
+ });
307
+ const makeSelectFormGroup$1 = formId => createSelector(selectForms, forms => {
308
+ var _forms$formId7;
309
+
310
+ return (_forms$formId7 = forms[formId]) === null || _forms$formId7 === void 0 ? void 0 : _forms$formId7.groups;
305
311
  });
306
312
  const selectors = {
307
313
  selectForms,
@@ -313,6 +319,7 @@ const selectors = {
313
319
  makeSelectFormEntries,
314
320
  makeSelectFormPostData,
315
321
  makeSelectIsLoading,
322
+ makeSelectIsSubmitting,
316
323
  makeSelectHasSuccess,
317
324
  makeSelectFormFields,
318
325
  makeSelectDefaultLang,
@@ -623,7 +630,7 @@ function* fetchForm(action) {
623
630
 
624
631
  const formId = action.formId;
625
632
  const schema = yield getFormSchema(formId);
626
- 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');
633
+ 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');
627
634
 
628
635
  if (formId && schema) {
629
636
  var _schema$groups2, _submitButtonText$def;
@@ -1904,17 +1911,23 @@ FormComposer.propTypes = {
1904
1911
  setCheckboxValue: PropTypes.func
1905
1912
  };
1906
1913
 
1907
- const LoadingSpinner = () => {
1914
+ const LoadingSpinner = ({
1915
+ className,
1916
+ color = '#fff',
1917
+ width = 20,
1918
+ height = 20
1919
+ }) => {
1908
1920
  return /*#__PURE__*/React.createElement("svg", {
1909
- width: "20px",
1910
- height: "20px",
1921
+ className: className,
1922
+ width: `${width}px`,
1923
+ height: `${height}px`,
1911
1924
  viewBox: "0 0 100 100",
1912
1925
  preserveAspectRatio: "xMidYMid"
1913
1926
  }, /*#__PURE__*/React.createElement("circle", {
1914
1927
  cx: "50",
1915
1928
  cy: "50",
1916
1929
  fill: "none",
1917
- stroke: "#ffffff",
1930
+ stroke: color,
1918
1931
  strokeWidth: "10",
1919
1932
  r: "35",
1920
1933
  strokeDasharray: "164.93361431346415 56.97787143782138",
@@ -1961,7 +1974,10 @@ const Button = ({
1961
1974
  onClick: () => action(),
1962
1975
  disabled: loading,
1963
1976
  useDefaultTheme: useDefaultTheme
1964
- }, text, loading && /*#__PURE__*/React.createElement(LoadingSpinner, null));
1977
+ }, text, loading && /*#__PURE__*/React.createElement(LoadingSpinner, {
1978
+ height: 18,
1979
+ width: 18
1980
+ }));
1965
1981
  };
1966
1982
  Button.propTypes = {
1967
1983
  className: PropTypes.string,
@@ -2129,7 +2145,7 @@ const Form = ({
2129
2145
  className: className,
2130
2146
  id: formId,
2131
2147
  useDefaultTheme: useDefaultTheme
2132
- }, !status || status && !status.isLoading && !status.isSubmitting && !status.hasSuccess && /*#__PURE__*/React.createElement(React.Fragment, null, pagingInfo.pageIndex > 0 && /*#__PURE__*/React.createElement(Button, {
2148
+ }, !status || !(status !== null && status !== void 0 && status.hasSuccess) && !(status !== null && status !== void 0 && status.isLoading) ? /*#__PURE__*/React.createElement(React.Fragment, null, pagingInfo.pageIndex > 0 && /*#__PURE__*/React.createElement(Button, {
2133
2149
  type: "button",
2134
2150
  text: "Go Back",
2135
2151
  action: () => _togglePageBack(formId, pagingInfo.pageIndex - 1),
@@ -2155,13 +2171,19 @@ const Form = ({
2155
2171
  }), isLastPage && /*#__PURE__*/React.createElement(Button, {
2156
2172
  text: (settings === null || settings === void 0 ? void 0 : settings.submitButtonText) || "Submit",
2157
2173
  type: "button",
2174
+ loading: status === null || status === void 0 ? void 0 : status.isLoading,
2158
2175
  action: () => {
2159
2176
  _submitForm(formId);
2160
2177
 
2161
2178
  if (customSubmit) customSubmit();
2162
2179
  },
2163
2180
  useDefaultTheme: useDefaultTheme
2164
- })), status && status.hasSuccess && status.successMessage && /*#__PURE__*/React.createElement("p", {
2181
+ })) : /*#__PURE__*/React.createElement(LoadingSpinner, {
2182
+ className: "loading",
2183
+ height: 24,
2184
+ width: 24,
2185
+ color: "#333"
2186
+ }), (status === null || status === void 0 ? void 0 : status.hasSuccess) && (status === null || status === void 0 ? void 0 : status.successMessage) && /*#__PURE__*/React.createElement("p", {
2165
2187
  className: "success-message"
2166
2188
  }, status.successMessage)));
2167
2189
  } else {
@@ -2171,7 +2193,7 @@ const Form = ({
2171
2193
  className: className,
2172
2194
  id: formId,
2173
2195
  useDefaultTheme: useDefaultTheme
2174
- }, !status || status && !status.isLoading && !status.isSubmitting && !status.hasSuccess && /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(FormComposer, {
2196
+ }, !status || !(status !== null && status !== void 0 && status.hasSuccess) && !(status !== null && status !== void 0 && status.isLoading) ? /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(FormComposer, {
2175
2197
  fields: fields,
2176
2198
  formId: formId,
2177
2199
  setValue: _setValue,
@@ -2183,6 +2205,7 @@ const Form = ({
2183
2205
  entries: entries,
2184
2206
  setCheckboxValue: _setCheckboxValue
2185
2207
  }), /*#__PURE__*/React.createElement(Button, {
2208
+ loading: status === null || status === void 0 ? void 0 : status.isSubmitting,
2186
2209
  text: (settings === null || settings === void 0 ? void 0 : settings.submitButtonText) || "Submit",
2187
2210
  type: "button",
2188
2211
  action: () => {
@@ -2191,7 +2214,12 @@ const Form = ({
2191
2214
  if (customSubmit) customSubmit();
2192
2215
  },
2193
2216
  useDefaultTheme: useDefaultTheme
2194
- })), status && status.hasSuccess && status.successMessage && /*#__PURE__*/React.createElement("p", {
2217
+ })) : /*#__PURE__*/React.createElement(LoadingSpinner, {
2218
+ className: "loading",
2219
+ height: 24,
2220
+ width: 24,
2221
+ color: "#333"
2222
+ }), (status === null || status === void 0 ? void 0 : status.hasSuccess) && (status === null || status === void 0 ? void 0 : status.successMessage) && /*#__PURE__*/React.createElement("p", {
2195
2223
  className: "success-message"
2196
2224
  }, status.successMessage)));
2197
2225
  }