import 'dart:async'; import 'package:mnemo_cards_common/mnemo_cards_common.dart'; import 'package:rxdart/rxdart.dart'; class PreviewPackHolder { final StreamController _streamController = StreamController.broadcast(); PreviewPackState? _state; PreviewPackHolder(); void setPreviewPacks(List packs) { _state = PreviewPackState(packs); _streamController.add(_state); } void clear() { _state = null; _streamController.add(_state); } PreviewPackState? get state => _state; Stream get asStream => _streamController.stream.startWith(_state); } class PreviewPackState { final List previewPacks; PreviewPackState(this.previewPacks); }