// app_providers.dart — 语言 / 主题 / 套餐视角等基础状态(Riverpod)
import 'package:flutter/material.dart';
import 'package:flutter_riverpod/flutter_riverpod.dart';

import '../l10n/app_text.dart';
import '../l10n/strings_en.dart';
import '../l10n/strings_zh.dart';
import 'account_providers.dart';

/// 当前语言(单显)。设置/账户页段控切换。
final localeProvider = StateProvider<AppLang>((ref) => AppLang.zh);

/// 由语言派生的文案资源——UI 一律通过它取文案,不写死字面量。
final appTextProvider = Provider<AppText>((ref) {
  final lang = ref.watch(localeProvider);
  return lang == AppLang.zh ? const StringsZh() : const StringsEn();
});

/// 主题模式。默认跟随系统;设置页可显式切深色。
final themeModeProvider = StateProvider<ThemeMode>((ref) => ThemeMode.system);

/// 是否免费档——派生自真实账户(meProvider.plan == 'free')。
/// 免费版才显示额度卡与免费横幅;加载中默认按免费处理。
final isFreePlanProvider = Provider<bool>((ref) {
  final me = ref.watch(meProvider).valueOrNull;
  return me?.isFree ?? true;
});
