@bindu-dashing/dam-solution-v2 5.9.223 → 5.9.224

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.
@@ -105,20 +105,14 @@ export default function EditAssetTemplate({ assetTemplate, inputTypes, }) {
105
105
  }
106
106
  }
107
107
  });
108
- const payload = {
109
- name: get(updatedValues, "name"),
110
- placeholder: get(updatedValues, "placeholder"),
111
- isMandatory: get(updatedValues, "isMandatory", false),
112
- inputTypeSettings,
113
- label: get(field, "label", get(field, "name", "")),
114
- defaultName: get(field, "defaultName"),
115
- mapId,
116
- defaultValue: get(updatedValues, "defaultValue"),
117
- };
108
+ const defaultName = get(field, "defaultName");
109
+ const skipPlaceholder = includes([InputTypes.CHECKBOX, InputTypes.RADIO], defaultName);
110
+ const payload = Object.assign(Object.assign({ name: get(updatedValues, "name") }, (skipPlaceholder ? {} : { placeholder: get(updatedValues, "placeholder") })), { isMandatory: get(updatedValues, "isMandatory", false), inputTypeSettings, label: get(field, "label", get(field, "name", "")), defaultName,
111
+ mapId, defaultValue: get(updatedValues, "defaultValue") });
118
112
  if (get(updatedValues, "_id", null)) {
119
113
  payload["_id"] = get(updatedValues, "_id");
120
114
  }
121
- if (includes([InputTypes.CHECKBOX, InputTypes.RADIO, InputTypes.SELECT], get(field, "defaultName"))) {
115
+ if (includes([InputTypes.CHECKBOX, InputTypes.RADIO, InputTypes.SELECT], defaultName)) {
122
116
  payload["options"] = get(updatedValues, "options", []);
123
117
  }
124
118
  return payload;
@@ -145,7 +139,9 @@ export default function EditAssetTemplate({ assetTemplate, inputTypes, }) {
145
139
  showNotification(`Field ${i + 1}: Name is required`, NotificationStatus.ERROR);
146
140
  return false;
147
141
  }
148
- if (!get(field, "placeholder") || get(field, "placeholder", "").trim() === "") {
142
+ // Checkbox and radio don't have placeholders - skip validation for them
143
+ const skipPlaceholder = includes([InputTypes.CHECKBOX, InputTypes.RADIO], get(field, "defaultName"));
144
+ if (!skipPlaceholder && (!get(field, "placeholder") || get(field, "placeholder", "").trim() === "")) {
149
145
  showNotification(`Field ${i + 1}: Placeholder is required`, NotificationStatus.ERROR);
150
146
  return false;
151
147
  }
@@ -12,15 +12,16 @@ import { useDamConfig } from "../../hocs/DamConfigContext";
12
12
  const { RangePicker } = DatePicker;
13
13
  export const buildInitialValues = (formData, metaFields, isEditMode) => {
14
14
  const dataWithDefaultValues = metaFields.reduce((acc, field) => {
15
- const id = get(field, "_id");
15
+ const id = get(field, "_id") || get(field, "mapId");
16
16
  const defaultValue = get(field, "defaultValue");
17
- if (defaultValue) {
17
+ // Include when defaultValue is set (allow 0, exclude only null/undefined)
18
+ if (id && defaultValue !== undefined && defaultValue !== null) {
18
19
  acc[id] = defaultValue;
19
20
  }
20
21
  return acc;
21
22
  }, {});
22
23
  return mapValues(isEditMode ? formData : dataWithDefaultValues, (value, key) => {
23
- const field = find(metaFields, { _id: key });
24
+ const field = find(metaFields, (f) => get(f, "_id") === key || get(f, "mapId") === key);
24
25
  if (!field)
25
26
  return value;
26
27
  const defaultName = get(field, "defaultName");
@@ -37,13 +38,22 @@ export const buildInitialValues = (formData, metaFields, isEditMode) => {
37
38
  return allowMultiple ? value || [] : value !== null && value !== void 0 ? value : undefined;
38
39
  case InputTypes.CHECKBOX:
39
40
  return value || [];
41
+ case InputTypes.NUMBERS:
42
+ if (value === null || value === undefined || value === "")
43
+ return undefined;
44
+ const num = Number(value);
45
+ return !Number.isNaN(num) && isFinite(num) ? num : value;
46
+ case InputTypes.TEXT:
47
+ case InputTypes.PARAGRAPH:
48
+ case InputTypes.LINK:
49
+ return value != null ? String(value) : undefined;
40
50
  default:
41
51
  return value;
42
52
  }
43
53
  });
44
54
  };
45
55
  export const getFormItem = (item, fromDefaultValue, userOptions, teamOptions) => {
46
- const name = get(item, "_id");
56
+ const name = get(item, "_id") || get(item, "mapId");
47
57
  const label = get(item, "name");
48
58
  const placeholder = get(item, "placeholder", "");
49
59
  const defaultName = get(item, "defaultName");
@@ -227,7 +237,7 @@ const MetaForm = ({ metaFields, metaData, form, isEditMode, }) => {
227
237
  metadata: buildInitialValues(metaData, metaFields, isEditMode),
228
238
  };
229
239
  form.setFieldsValue(formData);
230
- }, [metaData, metaFields]);
240
+ }, [metaData, metaFields, isEditMode, form]);
231
241
  const userOptions = useMemo(() => {
232
242
  return map(brandUsers, (user) => getUserAvatar(user));
233
243
  }, [brandUsers, brandId]);
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@bindu-dashing/dam-solution-v2",
3
- "version": "5.9.223",
3
+ "version": "5.9.224",
4
4
  "dependencies": {
5
5
  "@ant-design/icons": "^5.0.1",
6
6
  "@emoji-mart/data": "^1.2.1",