diff --git a/frappe/core/doctype/doctype/doctype_list.js b/frappe/core/doctype/doctype/doctype_list.js
index f3b494c2c6..be9e6a130f 100644
--- a/frappe/core/doctype/doctype/doctype_list.js
+++ b/frappe/core/doctype/doctype/doctype_list.js
@@ -4,14 +4,25 @@ frappe.listview_settings["DocType"] = {
},
new_doctype_dialog(args) {
+ const {
+ doctype_name = "",
+ doctype_module = "",
+ is_submittable = 0,
+ is_child = 0,
+ is_virtual = 0,
+ is_single = 0,
+ is_tree = 0,
+ editable_grid = 1,
+ } = args || {};
+
let non_developer = frappe.session.user !== "Administrator" || !frappe.boot.developer_mode;
- let prefill_child = args?.is_child || 0;
let fields = [
{
label: __("DocType Name"),
fieldname: "name",
fieldtype: "Data",
reqd: 1,
+ default: doctype_name,
},
{ fieldtype: "Column Break" },
{
@@ -20,6 +31,7 @@ frappe.listview_settings["DocType"] = {
fieldtype: "Link",
options: "Module Def",
reqd: 1,
+ default: doctype_module,
},
{ fieldtype: "Section Break" },
{
@@ -30,6 +42,7 @@ frappe.listview_settings["DocType"] = {
"Once submitted, submittable documents cannot be changed. They can only be Cancelled and Amended."
),
depends_on: "eval:!doc.istable && !doc.issingle",
+ default: is_submittable,
},
{
label: __("Is Child Table"),
@@ -37,14 +50,14 @@ frappe.listview_settings["DocType"] = {
fieldtype: "Check",
description: __("Child Tables are shown as a Grid in other DocTypes"),
depends_on: "eval:!doc.is_submittable && !doc.issingle",
- default: prefill_child,
+ default: is_child,
},
{
label: __("Editable Grid"),
fieldname: "editable_grid",
fieldtype: "Check",
depends_on: "istable",
- default: 1,
+ default: editable_grid,
},
{
label: __("Is Single"),
@@ -54,12 +67,13 @@ frappe.listview_settings["DocType"] = {
"Single Types have only one record no tables associated. Values are stored in tabSingles"
),
depends_on: "eval:!doc.istable && !doc.is_submittable",
+ default: is_single,
},
{
label: "Is Tree",
fieldname: "is_tree",
fieldtype: "Check",
- default: "0",
+ default: is_tree,
depends_on: "eval:!doc.istable",
description: "Tree structures are implemented using Nested Set",
},
@@ -77,7 +91,7 @@ frappe.listview_settings["DocType"] = {
label: "Is Virtual",
fieldname: "is_virtual",
fieldtype: "Check",
- default: "0",
+ default: is_virtual,
});
}
diff --git a/frappe/public/icons/timeless/icons.svg b/frappe/public/icons/timeless/icons.svg
index 58665bd20b..c4fa86572a 100644
--- a/frappe/public/icons/timeless/icons.svg
+++ b/frappe/public/icons/timeless/icons.svg
@@ -87,6 +87,12 @@