Дописал код для работы с yaml и pub файлами в vscode-versionlens, что сильно упростит…
Исправил ошибку синхронизации экрана плейлиста и проигрывания музыки(Like, DisLike)
Неработающий код:
var forUpdate = state.songs.firstWhere((c) => c.id == songData.id, orElse: () => null);if (forUpdate != null) { forUpdate = songData;}
Форкнул репозиторий и исследовал проблему сравнения. Проблема оказалась не в библотеке, а в особенностях языка Dart. Дописал документацию и сделал тест: https://github.com/felangel/equatable/pull/11.
Нашел очень странное и понятное поведение в Dart. Я исплользую https://javiercbk.github.io/json_to_dart/ для кодогенерации при работе с Json и https://github.com/felangel/equatable как часть BLoC и для сравнения объектов и получаю в результате всегда true
true