ublo-lib 1.12.10 → 1.12.12

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.
@@ -68,7 +68,7 @@ const CustomContactForm = ({
68
68
  message: Messages.get(lang, "sent")
69
69
  });
70
70
  Plausible.sendGoal("Contact-us (other requests)");
71
- setData(getInitialFormState(fields));
71
+ setData(currentData => getInitialFormState(fields, undefined, currentData.subject?.value));
72
72
  resetForm();
73
73
  }
74
74
  setSending(false);
@@ -80,7 +80,7 @@ const CustomContactForm = ({
80
80
  };
81
81
  const resetForm = () => {
82
82
  presets?.setter?.(undefined);
83
- setData(getInitialFormState(fields));
83
+ setData(currentData => getInitialFormState(fields, undefined, currentData.subject?.value));
84
84
  };
85
85
  const blurForm = () => {
86
86
  document.activeElement.blur();
@@ -101,7 +101,7 @@ const CustomContactForm = ({
101
101
  }
102
102
  }, [customSend, ready, settings, site]);
103
103
  React.useEffect(() => {
104
- setData(getInitialFormState(fields, presets?.values));
104
+ setData(currentData => getInitialFormState(fields, presets?.values, currentData.subject?.value));
105
105
  }, [fields, presets?.values]);
106
106
  const classes = classNames(styles.root, className);
107
107
  const innerClasses = classNames(styles.inner, {
@@ -17,7 +17,7 @@ export const FIELD_TESTS_ERROR_CODES = {
17
17
  "multiple-select": "TESTS_MULTIPLE_SELECT_ERROR"
18
18
  };
19
19
  const IGNORED_FIELDS = ["title", "subject", "attachment", "checkbox"];
20
- export const getInitialFormState = (fields, presets) => Object.keys(fields).reduce((acc, key) => {
20
+ export const getInitialFormState = (fields, presets, existingSubject) => Object.keys(fields).reduce((acc, key) => {
21
21
  const field = fields[key];
22
22
  const {
23
23
  required,
@@ -25,7 +25,14 @@ export const getInitialFormState = (fields, presets) => Object.keys(fields).redu
25
25
  } = field;
26
26
  if (type === "title") return acc;
27
27
  if (key === "subject") {
28
- return acc;
28
+ const value = (existingSubject || presets?.[key]) ?? "";
29
+ return {
30
+ ...acc,
31
+ [key]: {
32
+ value,
33
+ valid: true
34
+ }
35
+ };
29
36
  }
30
37
  if (type === "checkbox") {
31
38
  const value = presets?.[key] ?? false;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "ublo-lib",
3
- "version": "1.12.10",
3
+ "version": "1.12.12",
4
4
  "peerDependencies": {
5
5
  "dt-design-system": "^2.1.0",
6
6
  "leaflet": "^1.9.1",