deserialize method
Deserializes the given value from a DogNativeCodec native value.
Implementation
@override
LogicalKeyboardKey deserialize(value, DogEngine engine) {
var map = readAsMap(value, engine);
var keyId = map.read<int>("id");
var keyLabel = map.read<String>("label");
var resolved = LogicalKeyboardKey.findKeyByKeyId(keyId);
if (resolved != null && resolved.keyLabel == keyLabel) {
return resolved;
}
throw DogSerializerException(message: "Invalid logical key value", converter: this);
}