fix gen-form

This commit is contained in:
rizky 2024-07-31 03:56:12 -07:00
parent b2b34659c6
commit f44456cbdf
2 changed files with 74 additions and 56 deletions

View File

@ -147,8 +147,8 @@ export const generateForm = async (
walkGenForm(new_body, existing_childs as any);
}
if (item.edit) {
const current_body = propFromItem(item)?.body?.value as IItem;
const prop_item = propFromItem(item);
const current_body = prop_item?.body?.value as IItem;
if (current_body) {
const mapping = mapCompItemTree(new_body, {
@ -195,8 +195,7 @@ export const generateForm = async (
if (
mapping["32550d01-42a3-4b15-a04a-2c2d5c3c8e67"] &&
Object.keys(mapping["32550d01-42a3-4b15-a04a-2c2d5c3c8e67"]).length >
0
Object.keys(mapping["32550d01-42a3-4b15-a04a-2c2d5c3c8e67"]).length > 0
) {
for (const val of Object.values(
mapping["32550d01-42a3-4b15-a04a-2c2d5c3c8e67"]
@ -209,9 +208,7 @@ export const generateForm = async (
new_body = current_body;
}
}
}
console.log(result);
if (commit) {
Object.keys(result).map((e) => {
item.edit.setProp(e, result[e]);

View File

@ -45,7 +45,7 @@ export const generateMDForm = async (
}),
},
};
const newitem: any = {
const raw_new_item: any = {
type: "item",
name: "item",
component: {
@ -53,7 +53,28 @@ export const generateMDForm = async (
props,
},
};
generateForm(async (props: any) => {}, props, newitem, false, true);
let cur_item = (
item.edit.childs
.find((e) => e.name.includes("child"))
?.edit?.childs?.find((e) => e.name === "tab")?.component?.props as any
)?.child?.content?.childs?.[0];
if (cur_item) {
const new_item = createItem(raw_new_item) as IItem;
for (const [k, v] of Object.entries(new_item.component?.props || {})) {
if (cur_item.component) {
const prop = v as any;
if (prop.meta.type !== "content-element") {
cur_item.component.props[k] = v;
}
}
}
} else {
cur_item = raw_new_item;
}
generateForm(async (props: any) => {}, props, cur_item, false, true);
tab_detail?.edit.setProp("breadcrumb", {
mode: "raw",