feat(app): 接入金币充值与会员商品下单
This commit is contained in:
1 parent
ec2db6842e
commit
730e38622f
21 files changed
+1325
-1
No files matched your search
@@ -516,4 +516,28 @@
|
||||
"rankingEmptyTitle": "No ranked stories yet",
|
||||
"rankingEmptyBody": "Titles appear here as soon as they are published.",
|
||||
"rankingTopPick": "TOP PICK"
|
||||
, "rechargeTitle": "Top Up Coins",
|
||||
"vipTitle": "VIP Membership",
|
||||
"buy": "Buy",
|
||||
"bonusCoin": "+{bonus} bonus",
|
||||
"@bonusCoin": { "placeholders": { "bonus": { "type": "int" } } },
|
||||
"vipDuration": "{days}-day VIP",
|
||||
"@vipDuration": { "placeholders": { "days": { "type": "int" } } },
|
||||
"noCoinPacks": "No coin packs available right now.",
|
||||
"noVipPlans": "No VIP plans available right now.",
|
||||
"productsLoadFailed": "Could not load products.",
|
||||
"orderCreated": "Order {orderNo} created.",
|
||||
"@orderCreated": { "placeholders": { "orderNo": { "type": "String" } } },
|
||||
"paymentPending": "Waiting for payment.",
|
||||
"orderCreateFailed": "Could not create the order.",
|
||||
"playbackQuality": "Quality",
|
||||
"qualityAuto": "Auto",
|
||||
"qualityAutoHint": "HLS adjusts the bitrate automatically for your connection.",
|
||||
"searchFailed": "Search failed. Please try again.",
|
||||
"languageFilter": "Language",
|
||||
"languageChinese": "Chinese",
|
||||
"languageIndonesian": "Indonesian",
|
||||
"languageEnglish": "English",
|
||||
"searchResultCount": "{count} results",
|
||||
"@searchResultCount": { "placeholders": { "count": { "type": "int" } } }
|
||||
}
|
||||
@@ -514,4 +514,28 @@
|
||||
"rankingEmptyTitle": "Belum ada peringkat",
|
||||
"rankingEmptyBody": "Judul muncul di sini setelah diterbitkan.",
|
||||
"rankingTopPick": "PILIHAN UTAMA"
|
||||
, "rechargeTitle": "Isi Ulang Koin",
|
||||
"vipTitle": "Keanggotaan VIP",
|
||||
"buy": "Beli",
|
||||
"bonusCoin": "+{bonus} bonus",
|
||||
"@bonusCoin": { "placeholders": { "bonus": { "type": "int" } } },
|
||||
"vipDuration": "VIP {days} hari",
|
||||
"@vipDuration": { "placeholders": { "days": { "type": "int" } } },
|
||||
"noCoinPacks": "Belum ada paket koin.",
|
||||
"noVipPlans": "Belum ada paket VIP.",
|
||||
"productsLoadFailed": "Gagal memuat produk.",
|
||||
"orderCreated": "Pesanan {orderNo} dibuat.",
|
||||
"@orderCreated": { "placeholders": { "orderNo": { "type": "String" } } },
|
||||
"paymentPending": "Menunggu pembayaran.",
|
||||
"orderCreateFailed": "Gagal membuat pesanan.",
|
||||
"playbackQuality": "Kualitas",
|
||||
"qualityAuto": "Otomatis",
|
||||
"qualityAutoHint": "HLS menyesuaikan bitrate secara otomatis dengan koneksi Anda.",
|
||||
"searchFailed": "Pencarian gagal. Coba lagi.",
|
||||
"languageFilter": "Bahasa",
|
||||
"languageChinese": "Mandarin",
|
||||
"languageIndonesian": "Indonesia",
|
||||
"languageEnglish": "Inggris",
|
||||
"searchResultCount": "{count} hasil",
|
||||
"@searchResultCount": { "placeholders": { "count": { "type": "int" } } }
|
||||
}
|
||||
@@ -2343,6 +2343,126 @@ abstract class AppLocalizations {
|
||||
/// In en, this message translates to:
|
||||
/// **'TOP PICK'**
|
||||
String get rankingTopPick;
|
||||
|
||||
/// No description provided for @rechargeTitle.
|
||||
///
|
||||
/// In en, this message translates to:
|
||||
/// **'Top Up Coins'**
|
||||
String get rechargeTitle;
|
||||
|
||||
/// No description provided for @vipTitle.
|
||||
///
|
||||
/// In en, this message translates to:
|
||||
/// **'VIP Membership'**
|
||||
String get vipTitle;
|
||||
|
||||
/// No description provided for @buy.
|
||||
///
|
||||
/// In en, this message translates to:
|
||||
/// **'Buy'**
|
||||
String get buy;
|
||||
|
||||
/// No description provided for @bonusCoin.
|
||||
///
|
||||
/// In en, this message translates to:
|
||||
/// **'+{bonus} bonus'**
|
||||
String bonusCoin(int bonus);
|
||||
|
||||
/// No description provided for @vipDuration.
|
||||
///
|
||||
/// In en, this message translates to:
|
||||
/// **'{days}-day VIP'**
|
||||
String vipDuration(int days);
|
||||
|
||||
/// No description provided for @noCoinPacks.
|
||||
///
|
||||
/// In en, this message translates to:
|
||||
/// **'No coin packs available right now.'**
|
||||
String get noCoinPacks;
|
||||
|
||||
/// No description provided for @noVipPlans.
|
||||
///
|
||||
/// In en, this message translates to:
|
||||
/// **'No VIP plans available right now.'**
|
||||
String get noVipPlans;
|
||||
|
||||
/// No description provided for @productsLoadFailed.
|
||||
///
|
||||
/// In en, this message translates to:
|
||||
/// **'Could not load products.'**
|
||||
String get productsLoadFailed;
|
||||
|
||||
/// No description provided for @orderCreated.
|
||||
///
|
||||
/// In en, this message translates to:
|
||||
/// **'Order {orderNo} created.'**
|
||||
String orderCreated(String orderNo);
|
||||
|
||||
/// No description provided for @paymentPending.
|
||||
///
|
||||
/// In en, this message translates to:
|
||||
/// **'Waiting for payment.'**
|
||||
String get paymentPending;
|
||||
|
||||
/// No description provided for @orderCreateFailed.
|
||||
///
|
||||
/// In en, this message translates to:
|
||||
/// **'Could not create the order.'**
|
||||
String get orderCreateFailed;
|
||||
|
||||
/// No description provided for @playbackQuality.
|
||||
///
|
||||
/// In en, this message translates to:
|
||||
/// **'Quality'**
|
||||
String get playbackQuality;
|
||||
|
||||
/// No description provided for @qualityAuto.
|
||||
///
|
||||
/// In en, this message translates to:
|
||||
/// **'Auto'**
|
||||
String get qualityAuto;
|
||||
|
||||
/// No description provided for @qualityAutoHint.
|
||||
///
|
||||
/// In en, this message translates to:
|
||||
/// **'HLS adjusts the bitrate automatically for your connection.'**
|
||||
String get qualityAutoHint;
|
||||
|
||||
/// No description provided for @searchFailed.
|
||||
///
|
||||
/// In en, this message translates to:
|
||||
/// **'Search failed. Please try again.'**
|
||||
String get searchFailed;
|
||||
|
||||
/// No description provided for @languageFilter.
|
||||
///
|
||||
/// In en, this message translates to:
|
||||
/// **'Language'**
|
||||
String get languageFilter;
|
||||
|
||||
/// No description provided for @languageChinese.
|
||||
///
|
||||
/// In en, this message translates to:
|
||||
/// **'Chinese'**
|
||||
String get languageChinese;
|
||||
|
||||
/// No description provided for @languageIndonesian.
|
||||
///
|
||||
/// In en, this message translates to:
|
||||
/// **'Indonesian'**
|
||||
String get languageIndonesian;
|
||||
|
||||
/// No description provided for @languageEnglish.
|
||||
///
|
||||
/// In en, this message translates to:
|
||||
/// **'English'**
|
||||
String get languageEnglish;
|
||||
|
||||
/// No description provided for @searchResultCount.
|
||||
///
|
||||
/// In en, this message translates to:
|
||||
/// **'{count} results'**
|
||||
String searchResultCount(int count);
|
||||
}
|
||||
|
||||
class _AppLocalizationsDelegate
|
||||
|
||||
@@ -1199,4 +1199,73 @@ class AppLocalizationsEn extends AppLocalizations {
|
||||
|
||||
@override
|
||||
String get rankingTopPick => 'TOP PICK';
|
||||
|
||||
@override
|
||||
String get rechargeTitle => 'Top Up Coins';
|
||||
|
||||
@override
|
||||
String get vipTitle => 'VIP Membership';
|
||||
|
||||
@override
|
||||
String get buy => 'Buy';
|
||||
|
||||
@override
|
||||
String bonusCoin(int bonus) {
|
||||
return '+$bonus bonus';
|
||||
}
|
||||
|
||||
@override
|
||||
String vipDuration(int days) {
|
||||
return '$days-day VIP';
|
||||
}
|
||||
|
||||
@override
|
||||
String get noCoinPacks => 'No coin packs available right now.';
|
||||
|
||||
@override
|
||||
String get noVipPlans => 'No VIP plans available right now.';
|
||||
|
||||
@override
|
||||
String get productsLoadFailed => 'Could not load products.';
|
||||
|
||||
@override
|
||||
String orderCreated(String orderNo) {
|
||||
return 'Order $orderNo created.';
|
||||
}
|
||||
|
||||
@override
|
||||
String get paymentPending => 'Waiting for payment.';
|
||||
|
||||
@override
|
||||
String get orderCreateFailed => 'Could not create the order.';
|
||||
|
||||
@override
|
||||
String get playbackQuality => 'Quality';
|
||||
|
||||
@override
|
||||
String get qualityAuto => 'Auto';
|
||||
|
||||
@override
|
||||
String get qualityAutoHint =>
|
||||
'HLS adjusts the bitrate automatically for your connection.';
|
||||
|
||||
@override
|
||||
String get searchFailed => 'Search failed. Please try again.';
|
||||
|
||||
@override
|
||||
String get languageFilter => 'Language';
|
||||
|
||||
@override
|
||||
String get languageChinese => 'Chinese';
|
||||
|
||||
@override
|
||||
String get languageIndonesian => 'Indonesian';
|
||||
|
||||
@override
|
||||
String get languageEnglish => 'English';
|
||||
|
||||
@override
|
||||
String searchResultCount(int count) {
|
||||
return '$count results';
|
||||
}
|
||||
}
|
||||
@@ -1197,4 +1197,73 @@ class AppLocalizationsId extends AppLocalizations {
|
||||
|
||||
@override
|
||||
String get rankingTopPick => 'PILIHAN UTAMA';
|
||||
|
||||
@override
|
||||
String get rechargeTitle => 'Isi Ulang Koin';
|
||||
|
||||
@override
|
||||
String get vipTitle => 'Keanggotaan VIP';
|
||||
|
||||
@override
|
||||
String get buy => 'Beli';
|
||||
|
||||
@override
|
||||
String bonusCoin(int bonus) {
|
||||
return '+$bonus bonus';
|
||||
}
|
||||
|
||||
@override
|
||||
String vipDuration(int days) {
|
||||
return 'VIP $days hari';
|
||||
}
|
||||
|
||||
@override
|
||||
String get noCoinPacks => 'Belum ada paket koin.';
|
||||
|
||||
@override
|
||||
String get noVipPlans => 'Belum ada paket VIP.';
|
||||
|
||||
@override
|
||||
String get productsLoadFailed => 'Gagal memuat produk.';
|
||||
|
||||
@override
|
||||
String orderCreated(String orderNo) {
|
||||
return 'Pesanan $orderNo dibuat.';
|
||||
}
|
||||
|
||||
@override
|
||||
String get paymentPending => 'Menunggu pembayaran.';
|
||||
|
||||
@override
|
||||
String get orderCreateFailed => 'Gagal membuat pesanan.';
|
||||
|
||||
@override
|
||||
String get playbackQuality => 'Kualitas';
|
||||
|
||||
@override
|
||||
String get qualityAuto => 'Otomatis';
|
||||
|
||||
@override
|
||||
String get qualityAutoHint =>
|
||||
'HLS menyesuaikan bitrate secara otomatis dengan koneksi Anda.';
|
||||
|
||||
@override
|
||||
String get searchFailed => 'Pencarian gagal. Coba lagi.';
|
||||
|
||||
@override
|
||||
String get languageFilter => 'Bahasa';
|
||||
|
||||
@override
|
||||
String get languageChinese => 'Mandarin';
|
||||
|
||||
@override
|
||||
String get languageIndonesian => 'Indonesia';
|
||||
|
||||
@override
|
||||
String get languageEnglish => 'Inggris';
|
||||
|
||||
@override
|
||||
String searchResultCount(int count) {
|
||||
return '$count hasil';
|
||||
}
|
||||
}
|
||||
@@ -1176,4 +1176,72 @@ class AppLocalizationsZh extends AppLocalizations {
|
||||
|
||||
@override
|
||||
String get rankingTopPick => '今日榜首';
|
||||
|
||||
@override
|
||||
String get rechargeTitle => '充值金币';
|
||||
|
||||
@override
|
||||
String get vipTitle => 'VIP 会员';
|
||||
|
||||
@override
|
||||
String get buy => '购买';
|
||||
|
||||
@override
|
||||
String bonusCoin(int bonus) {
|
||||
return '赠 $bonus';
|
||||
}
|
||||
|
||||
@override
|
||||
String vipDuration(int days) {
|
||||
return '$days 天会员';
|
||||
}
|
||||
|
||||
@override
|
||||
String get noCoinPacks => '暂无可购金币包。';
|
||||
|
||||
@override
|
||||
String get noVipPlans => '暂无可开通会员。';
|
||||
|
||||
@override
|
||||
String get productsLoadFailed => '商品加载失败。';
|
||||
|
||||
@override
|
||||
String orderCreated(String orderNo) {
|
||||
return '订单 $orderNo 已创建。';
|
||||
}
|
||||
|
||||
@override
|
||||
String get paymentPending => '等待支付。';
|
||||
|
||||
@override
|
||||
String get orderCreateFailed => '订单创建失败。';
|
||||
|
||||
@override
|
||||
String get playbackQuality => '清晰度';
|
||||
|
||||
@override
|
||||
String get qualityAuto => '自动';
|
||||
|
||||
@override
|
||||
String get qualityAutoHint => 'HLS 会根据当前网络自动切换码率。';
|
||||
|
||||
@override
|
||||
String get searchFailed => '搜索失败,请重试。';
|
||||
|
||||
@override
|
||||
String get languageFilter => '语言';
|
||||
|
||||
@override
|
||||
String get languageChinese => '中文';
|
||||
|
||||
@override
|
||||
String get languageIndonesian => '印尼语';
|
||||
|
||||
@override
|
||||
String get languageEnglish => '英语';
|
||||
|
||||
@override
|
||||
String searchResultCount(int count) {
|
||||
return '$count 个结果';
|
||||
}
|
||||
}
|
||||
@@ -476,4 +476,28 @@
|
||||
"rankingEmptyTitle": "暂无榜单内容",
|
||||
"rankingEmptyBody": "新剧上线后会自动进入榜单。",
|
||||
"rankingTopPick": "今日榜首"
|
||||
, "rechargeTitle": "充值金币",
|
||||
"vipTitle": "VIP 会员",
|
||||
"buy": "购买",
|
||||
"bonusCoin": "赠 {bonus}",
|
||||
"@bonusCoin": { "placeholders": { "bonus": { "type": "int" } } },
|
||||
"vipDuration": "{days} 天会员",
|
||||
"@vipDuration": { "placeholders": { "days": { "type": "int" } } },
|
||||
"noCoinPacks": "暂无可购金币包。",
|
||||
"noVipPlans": "暂无可开通会员。",
|
||||
"productsLoadFailed": "商品加载失败。",
|
||||
"orderCreated": "订单 {orderNo} 已创建。",
|
||||
"@orderCreated": { "placeholders": { "orderNo": { "type": "String" } } },
|
||||
"paymentPending": "等待支付。",
|
||||
"orderCreateFailed": "订单创建失败。",
|
||||
"playbackQuality": "清晰度",
|
||||
"qualityAuto": "自动",
|
||||
"qualityAutoHint": "HLS 会根据当前网络自动切换码率。",
|
||||
"searchFailed": "搜索失败,请重试。",
|
||||
"languageFilter": "语言",
|
||||
"languageChinese": "中文",
|
||||
"languageIndonesian": "印尼语",
|
||||
"languageEnglish": "英语",
|
||||
"searchResultCount": "{count} 个结果",
|
||||
"@searchResultCount": { "placeholders": { "count": { "type": "int" } } }
|
||||
}
|
||||
Reference in new issue
Block a user