import 'package:flutter/foundation.dart'; import 'persisted_setting.dart'; enum BubbleStyle { mobile, desktop } class AppBubbleShape { static const prefKey = 'app_bubble_shape'; static final _setting = PersistedEnum( prefKey: prefKey, defaultValue: BubbleStyle.mobile, encode: (value) => value.name, decode: _parse, ); static ValueNotifier get current => _setting.current; static Future load() => _setting.load(); static Future save(BubbleStyle style) => _setting.save(style); static BubbleStyle _parse(String? val) => enumFromName(BubbleStyle.values, val, BubbleStyle.mobile); static String label(BubbleStyle style) { switch (style) { case BubbleStyle.mobile: return 'TG Mobile'; case BubbleStyle.desktop: return 'TG Desktop'; } } }