fix(editor): Prune values that are not in the schema in the ResourceMapper component (#8478)

This commit is contained in:
Elias Meire 2024-02-02 11:28:12 +01:00 committed by GitHub
parent c419c8592f
commit 612771e032
No known key found for this signature in database
GPG key ID: B5690EEEBB952194

View file

@ -430,15 +430,17 @@ function emitValueChanged(): void {
}
function pruneParamValues(): void {
if (!state.paramValue.value) {
const { value, schema } = state.paramValue;
if (!value) {
return;
}
const valueKeys = Object.keys(state.paramValue.value);
valueKeys.forEach((key) => {
if (state.paramValue.value && state.paramValue.value[key] === null) {
delete state.paramValue.value[key];
const schemaKeys = new Set(schema.map((s) => s.id));
for (const key of Object.keys(value)) {
if (value[key] === null || !schemaKeys.has(key)) {
delete value[key];
}
});
}
}
defineExpose({