feat: profile and subs
This commit is contained in:
@@ -56,12 +56,26 @@ class Booster {
|
||||
priceToman = (j['price_toman'] ?? 0) as int;
|
||||
}
|
||||
|
||||
class VIPPackage {
|
||||
final String id;
|
||||
final String title;
|
||||
final int months;
|
||||
final int priceToman;
|
||||
|
||||
VIPPackage.fromJson(Map<String, dynamic> j)
|
||||
: id = j['id'] as String,
|
||||
title = j['title'] as String,
|
||||
months = (j['months'] ?? 1) as int,
|
||||
priceToman = (j['price_toman'] ?? 0) as int;
|
||||
}
|
||||
|
||||
/// دادهی کامل فروشگاه: کاتالوگ + کارتهای متعلق به کاربر + کارت انتخابی.
|
||||
class ShopData {
|
||||
final List<CoinPackage> coinPackages;
|
||||
final List<TicketPackage> ticketPackages;
|
||||
final List<CardSkin> cardSkins;
|
||||
final List<Booster> boosters;
|
||||
final List<VIPPackage> vipPackages;
|
||||
final List<String> ownedCards;
|
||||
final String selectedCard;
|
||||
|
||||
@@ -70,6 +84,7 @@ class ShopData {
|
||||
required this.ticketPackages,
|
||||
required this.cardSkins,
|
||||
required this.boosters,
|
||||
required this.vipPackages,
|
||||
required this.ownedCards,
|
||||
required this.selectedCard,
|
||||
});
|
||||
@@ -85,6 +100,7 @@ class ShopData {
|
||||
ticketPackages: parse('ticket_packages', TicketPackage.fromJson),
|
||||
cardSkins: parse('card_skins', CardSkin.fromJson),
|
||||
boosters: parse('boosters', Booster.fromJson),
|
||||
vipPackages: parse('vip_packages', VIPPackage.fromJson),
|
||||
ownedCards: ((j['owned_cards'] as List?) ?? []).map((e) => e as String).toList(),
|
||||
selectedCard: (j['selected_card'] ?? 'simple') as String,
|
||||
);
|
||||
|
||||
Reference in New Issue
Block a user