diff --git a/lib/src/scripting_api/data_schema_value.dart b/lib/src/scripting_api/data_schema_value.dart index 066de23c..04e1a6bd 100644 --- a/lib/src/scripting_api/data_schema_value.dart +++ b/lib/src/scripting_api/data_schema_value.dart @@ -218,4 +218,20 @@ final class ObjectValue extends DataSchemaValue> { return ObjectValue._fromValue(result); } + + @override + int get hashCode { + final entryList = value.entries.map((entry) => (entry.key, entry.value)); + + return Object.hashAll(entryList); + } + + @override + bool operator ==(Object other) { + if (other is! ObjectValue) { + return false; + } + + return const DeepCollectionEquality().equals(value, other.value); + } }