I am getting error at line 19 where I applied transform on _item_fetcher and pipe it to _item_output: 'PublishSubject' is not a subtype of type 'Stream' of 'stream'. _repository.fetch_Items() returns a Future, ItemModel is custom made class. _repository.fetch_Top_Ids() returns List.
import 'package:rxdart/rxdart.dart';
import 'package:flutter/material.dart';
import 'ItemModel.dart';
import 'Repository.dart';
class StoriesBloc{
final _repository = Repository();
final _top_ids = PublishSubject();
final _item_output = BehaviorSubject();
final _item_fetcher = PublishSubject();
Stream get top_ids => _top_ids.stream;
Stream get items => _item_output.stream;
get fetch_Item => _item_fetcher.sink.add;
StoriesBloc(){
_item_fetcher.stream.transform(_item_outputTransformer()).pipe(_item_output);
}
fethTopIds() async{
final ids = await _repository.fetch_Top_Ids();
_top_ids.sink.add(ids);
}
_item_outputTransformer(){
print('sdfgsfgsfhddvcsfc');
return ScanStreamTransformer(
(Map cache, int id, index){
print("\n\n\n\n $index \n\n\n\n");
cache[id] = _repository.fetch_Items(id);
return cache;
},
{},
);
}
dispose(){
_top_ids.close();
_item_output.close();
_item_fetcher.close();
}
}