wip fix
This commit is contained in:
parent
624758dc69
commit
742d40f1d5
|
|
@ -145,20 +145,39 @@ export const code_edit: SAction["code"]["edit"] = async function (
|
||||||
};
|
};
|
||||||
|
|
||||||
const findId = (mitem: MContent | MRoot, id: string) => {
|
const findId = (mitem: MContent | MRoot, id: string) => {
|
||||||
if ((mitem as MItem).get("id") === id) {
|
let found: null | MItem = null;
|
||||||
return mitem as MItem;
|
|
||||||
|
const m = mitem as MItem;
|
||||||
|
if (m.get("id") === id) {
|
||||||
|
return m;
|
||||||
}
|
}
|
||||||
|
|
||||||
const childs = (mitem as MItem).get("childs");
|
const childs = m.get("childs");
|
||||||
if (childs) {
|
if (childs) {
|
||||||
let found: null | MItem = null;
|
|
||||||
childs.forEach((child) => {
|
childs.forEach((child) => {
|
||||||
const f = findId(child, id);
|
const f = findId(child, id);
|
||||||
if (f) {
|
if (f) {
|
||||||
found = f;
|
found = f;
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
|
|
||||||
if (found) return found;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if (!found) {
|
||||||
|
const mprops = m.get("component")?.get("props");
|
||||||
|
if (mprops) {
|
||||||
|
mprops.forEach((mprop) => {
|
||||||
|
if (mprop.get("meta")?.get("type") === "content-element") {
|
||||||
|
const mcontent = mprop.get("content");
|
||||||
|
if (mcontent) {
|
||||||
|
const f = findId(mcontent, id);
|
||||||
|
if (f) {
|
||||||
|
found = f;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
});
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
if (found) return found;
|
||||||
};
|
};
|
||||||
|
|
|
||||||
|
|
@ -214,6 +214,7 @@ export const EDGlobal = {
|
||||||
type: "item" as "item" | "prop-master" | "prop-instance",
|
type: "item" as "item" | "prop-master" | "prop-instance",
|
||||||
prop_kind: "" as PropFieldKind,
|
prop_kind: "" as PropFieldKind,
|
||||||
prop_name: "",
|
prop_name: "",
|
||||||
|
on_close: () => {},
|
||||||
},
|
},
|
||||||
site: null as null | ((site_id: string) => void | Promise<void>),
|
site: null as null | ((site_id: string) => void | Promise<void>),
|
||||||
site_form: null as null | {
|
site_form: null as null | {
|
||||||
|
|
|
||||||
|
|
@ -189,7 +189,8 @@ export const EdScriptMonaco: FC<{}> = () => {
|
||||||
local.value = val || "";
|
local.value = val || "";
|
||||||
local.render();
|
local.render();
|
||||||
clearTimeout(scriptEdit.timeout);
|
clearTimeout(scriptEdit.timeout);
|
||||||
scriptEdit.timeout = setTimeout(async () => {
|
|
||||||
|
const applyChanges = async () => {
|
||||||
const meta = getActiveMeta(p);
|
const meta = getActiveMeta(p);
|
||||||
const type = p.ui.popup.script.mode;
|
const type = p.ui.popup.script.mode;
|
||||||
if (meta && meta.mitem) {
|
if (meta && meta.mitem) {
|
||||||
|
|
@ -232,7 +233,14 @@ export const EdScriptMonaco: FC<{}> = () => {
|
||||||
meta.item.script = scope;
|
meta.item.script = scope;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}, 1000);
|
};
|
||||||
|
|
||||||
|
p.ui.popup.script.on_close = () => {
|
||||||
|
clearTimeout(scriptEdit.timeout);
|
||||||
|
applyChanges();
|
||||||
|
p.ui.popup.script.on_close = () => {};
|
||||||
|
};
|
||||||
|
scriptEdit.timeout = setTimeout(applyChanges, 1000);
|
||||||
}}
|
}}
|
||||||
onMount={async (editor, monaco) => {
|
onMount={async (editor, monaco) => {
|
||||||
local.monaco = monaco;
|
local.monaco = monaco;
|
||||||
|
|
|
||||||
|
|
@ -26,6 +26,8 @@ export const EdPopScript = () => {
|
||||||
delete p.script.init_local_effect[active.item_id];
|
delete p.script.init_local_effect[active.item_id];
|
||||||
}
|
}
|
||||||
|
|
||||||
|
script.on_close();
|
||||||
|
|
||||||
p.render();
|
p.render();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue