diff --git a/comps/form/field/FieldInput.tsx b/comps/form/field/FieldInput.tsx index 1ff70e4..2caa645 100755 --- a/comps/form/field/FieldInput.tsx +++ b/comps/form/field/FieldInput.tsx @@ -1,6 +1,6 @@ import { createItem } from "@/gen/utils"; import get from "lodash.get"; -import { FC, useEffect } from "react"; +import { FC, isValidElement, useEffect } from "react"; import { FMLocal, FieldLocal, FieldProp } from "../typings"; import { genFieldMitem, updateFieldMItem } from "../utils/gen-mitem"; import { fieldMapping } from "./mapping"; @@ -29,62 +29,15 @@ export const FieldInput: FC<{ // return <>> const prefix = typeof field.prefix === "function" ? field.prefix() : typeof field.prefix === "string" ? field.prefix : null; const suffix = typeof field.suffix === "function" ? field.suffix() : typeof field.suffix === "string" ? field.prefix : null; - const errors = fm.error.get(field.name); + const name = typeof field.name === 'function' ? field.name() : field.name; + const errors = fm.error.get(name); const type_field = arg.type; // tipe field const sub_type_field = arg.sub_type; - // sudah gk pake children - // const childs = get( - // child, - // "props.meta.item.component.props.child.content.childs" - // ); - // let found = null as any; - - // if (childs && childs.length > 0 && field.type !== "custom") { - // for (const child of childs) { - // let mp = (fieldMapping as any)[field.type]; - // if (!mp) { - // mp = (fieldMapping as any)["text"]; - // } - // if (child.component?.id === mp.id) { - // found = child; - // if (mp.props) { - // const item = createItem({ - // component: { - // id: "--", - // props: - // typeof mp.props === "function" ? mp.props(fm, field) : mp.props, - // }, - // }); - // const props = found.component.props; - // let should_update = false; - // for (const [k, v] of Object.entries(item.component.props) as any) { - // if (props[k] && props[k].valueBuilt === v.valueBuilt) { - // continue; - // } else { - // if (field.prop && !field.prop[k]) { - // props[k] = v; - // should_update = true; - // } - // } - // } - // if (should_update) { - // updateFieldMItem(_meta, found, _sync); - // } - // } - // } - // } - // } - - // useEffect(() => { - // if (isEditor && !found && field.type !== "custom") { - // genFieldMitem({ _meta, _item, _sync, field, fm }); - // } - // }, []); return (