Quick block state map fix

This commit is contained in:
Misode
2020-12-20 05:23:54 +01:00
parent ab21717716
commit 483ea9a234
+4 -2
View File
@@ -16,11 +16,13 @@ export const customValidation: Hook<[any, Errors], void> = walk<[Errors]>({
const block = relativePath(path, config.validation.params.id).get()
const errors = path.getModel().errors
const requiredProps = BlockStateRegistry[block].properties ?? {}
const requiredProps = (BlockStateRegistry[block] ?? {}).properties ?? {}
const existingKeys = Object.keys(value ?? {})
Object.keys(requiredProps).forEach(p => {
if (!existingKeys.includes(p)) {
errors.add(path, 'error.block_state.missing_property', p)
if (path.last() === 'Properties') {
errors.add(path, 'error.block_state.missing_property', p)
}
} else if (!requiredProps[p].includes(value[p])) {
errors.add(path.push(p), 'error.invalid_enum_option', value[p])
}