diff --git a/frontend/src/components/Settings/SettingFields.vue b/frontend/src/components/Settings/SettingFields.vue
index 7dfacb3d..11a9a3f3 100644
--- a/frontend/src/components/Settings/SettingFields.vue
+++ b/frontend/src/components/Settings/SettingFields.vue
@@ -20,6 +20,7 @@
:doctype="field.doctype"
:label="__(field.label)"
:description="__(field.description)"
+ :required="field.reqd"
/>
@@ -115,6 +116,7 @@
:rows="field.rows"
:options="field.options"
:description="field.description"
+ :required="field.reqd"
placeholder=""
/>
diff --git a/lms/lms/api.py b/lms/lms/api.py
index b38ee35e..22cad460 100644
--- a/lms/lms/api.py
+++ b/lms/lms/api.py
@@ -751,13 +751,25 @@ def get_transformed_fields(meta: list, data: dict = None):
else:
fieldtype = row.fieldtype
- transformed_fields.append(
- {
- "label": row.label,
- "name": row.fieldname,
- "type": fieldtype,
- }
- )
+ field = {
+ "label": row.label,
+ "name": row.fieldname,
+ "type": fieldtype,
+ }
+
+ if row.reqd:
+ field["reqd"] = 1
+
+ if row.options:
+ field["options"] = row.options
+
+ if row.default:
+ field["default"] = row.default
+
+ if row.description:
+ field["description"] = row.description
+
+ transformed_fields.append(field)
return transformed_fields