feat: Add language support and descriptions in product localization files

- Added language, languageDescription, and languagePlaceholder fields to product.json for multiple locales (ja-JP, ko-KR, no-NO, pl-PL, pt-BR, ro-RO, ru-RU, th-TH, tr-TR, uk-UA, vi-VN, zh-HK).
- Removed group-related fields from product.json for cleaner structure.
- Updated API calls in user services to include language parameter for subscription retrieval.
- Enhanced type definitions for subscription requests to accommodate language parameter.
This commit is contained in:
web 2025-09-04 01:26:50 -07:00
parent 1ab9b39e8a
commit fd48856019
25 changed files with 120 additions and 679 deletions

View File

@ -35,8 +35,10 @@
"discountPercent": "Procento slevy",
"discount_price": "Cena po slevě",
"duration": "Doba trvání (měsíce)",
"groupId": "Skupina předplatného",
"inventory": "Limit předplatného",
"language": "Jazyk",
"languageDescription": "Nechte prázdné pro výchozí bez jazykového omezení",
"languagePlaceholder": "Identifikátor jazyka pro předplatné, např. en-US, zh-CN",
"monthlyReset": "Měsíční Reset",
"name": "Název",
"noLimit": "Bez omezení",
@ -54,39 +56,14 @@
"resetCycle": "Resetovací Cyklus",
"resetOn1st": "Reset 1. dne",
"selectResetCycle": "Vyberte prosím resetovací cyklus",
"selectSubscribeGroup": "Vyberte prosím skupinu předplatného",
"selectUnitTime": "Vyberte jednotku času",
"speedLimit": "Omezení rychlosti ",
"traffic": "Přenos dat",
"unitPrice": "Jednotková cena",
"unitTime": "Jednotka času"
},
"group": {
"actions": "Akce",
"cancel": "Zrušit",
"confirm": "Potvrdit",
"confirmDelete": "Opravdu chcete smazat?",
"create": "Vytvořit",
"createSubscribeGroup": "Vytvořit novou skupinu odběrů",
"createSuccess": "Úspěšně vytvořeno",
"delete": "Smazat",
"deleteSuccess": "Úspěšně smazáno",
"deleteWarning": "Po smazání nelze data obnovit, prosím postupujte opatrně.",
"description": "Popis",
"edit": "Upravit",
"editSubscribeGroup": "Upravit skupinu odběrů",
"form": {
"cancel": "Zrušit",
"confirm": "Potvrdit",
"description": "Popis",
"name": "Název"
},
"name": "Název",
"title": "Seznam skupin odběrů",
"updateSuccess": "Úspěšně aktualizováno",
"updatedAt": "Čas aktualizace"
},
"inventory": "Limit předplatného",
"language": "Jazyk",
"name": "název",
"quota": "Limit na nákup/čas",
"replacement": "Obnovení ceny/krát",
@ -94,11 +71,6 @@
"show": "Zobrazit",
"sold": "Počet předplatných",
"subscribe": "Předplatit",
"subscribeGroup": "Přihlásit se ke skupině",
"tabs": {
"subscribe": "Předplatit",
"subscribeGroup": "Skupina předplatných"
},
"traffic": "provoz",
"unitPrice": "Jednotková cena",
"updateSuccess": "Aktualizace byla úspěšná"

View File

@ -35,8 +35,10 @@
"discountPercent": "Rabattprozentsatz",
"discount_price": "Rabattpreis",
"duration": "Dauer (Monate)",
"groupId": "Abonnementgruppe",
"inventory": "Abonnementslimit",
"language": "Sprache",
"languageDescription": "Feld leer lassen für Standard ohne Sprachbeschränkung",
"languagePlaceholder": "Sprachbezeichner für das Abonnement, z.B. de-DE, zh-CN",
"monthlyReset": "Monatliches Zurücksetzen",
"name": "Name",
"noLimit": "Keine Begrenzung",
@ -54,39 +56,14 @@
"resetCycle": "Zurücksetzungszyklus",
"resetOn1st": "Zurücksetzen am 1.",
"selectResetCycle": "Bitte wählen Sie einen Zurücksetzungszyklus",
"selectSubscribeGroup": "Bitte Abonnementgruppe auswählen",
"selectUnitTime": "Bitte wählen Sie eine Zeiteinheit",
"speedLimit": "Geschwindigkeitsbegrenzung ",
"traffic": "Datenvolumen",
"unitPrice": "Einheitspreis",
"unitTime": "Zeiteinheit"
},
"group": {
"actions": "Aktionen",
"cancel": "Abbrechen",
"confirm": "Bestätigen",
"confirmDelete": "Löschen bestätigen?",
"create": "Erstellen",
"createSubscribeGroup": "Neue Abonnementgruppe erstellen",
"createSuccess": "Erstellung erfolgreich",
"delete": "Löschen",
"deleteSuccess": "Erfolgreich gelöscht",
"deleteWarning": "Nach dem Löschen können die Daten nicht wiederhergestellt werden, bitte vorsichtig vorgehen.",
"description": "Beschreibung",
"edit": "Bearbeiten",
"editSubscribeGroup": "Abonnementgruppe bearbeiten",
"form": {
"cancel": "Abbrechen",
"confirm": "Bestätigen",
"description": "Beschreibung",
"name": "Name"
},
"name": "Name",
"title": "Liste der Abonnementgruppen",
"updateSuccess": "Erfolgreich aktualisiert",
"updatedAt": "Aktualisierungszeit"
},
"inventory": "Abonnementslimit",
"language": "Sprache",
"name": "Name",
"quota": "Kaufbeschränkung/pro Einkauf",
"replacement": "Preis pro Zurücksetzung",
@ -94,11 +71,6 @@
"show": "Anzeigen",
"sold": "Abonnentenzahl",
"subscribe": "Abonnieren",
"subscribeGroup": "Gruppe abonnieren",
"tabs": {
"subscribe": "Abonnieren",
"subscribeGroup": "Abonnieren Gruppe"
},
"traffic": "Verkehr",
"unitPrice": "Stückpreis",
"updateSuccess": "Aktualisierung erfolgreich"

View File

@ -35,8 +35,10 @@
"discountPercent": "Porcentaje de descuento",
"discount_price": "Precio con descuento",
"duration": "Duración (meses)",
"groupId": "Grupo de Suscripción",
"inventory": "Límite de suscripción",
"language": "Idioma",
"languageDescription": "Dejar vacío para el predeterminado sin restricción de idioma",
"languagePlaceholder": "Identificador de idioma para la suscripción, por ejemplo, es-ES, zh-CN",
"monthlyReset": "Reinicio Mensual",
"name": "Nombre",
"noLimit": "Sin límite",
@ -54,39 +56,14 @@
"resetCycle": "Ciclo de Reinicio",
"resetOn1st": "Reiniciar el día 1",
"selectResetCycle": "Por favor, seleccione un ciclo de reinicio",
"selectSubscribeGroup": "Por favor, seleccione un grupo de suscripción",
"selectUnitTime": "Por favor, seleccione la unidad de tiempo",
"speedLimit": "Límite de velocidad ",
"traffic": "Tráfico",
"unitPrice": "Precio unitario",
"unitTime": "Unidad de tiempo"
},
"group": {
"actions": "Acciones",
"cancel": "Cancelar",
"confirm": "Confirmar",
"confirmDelete": "¿Confirmar eliminación?",
"create": "Crear",
"createSubscribeGroup": "Crear nuevo grupo de suscripción",
"createSuccess": "Creación exitosa",
"delete": "Eliminar",
"deleteSuccess": "Eliminación exitosa",
"deleteWarning": "Los datos no se pueden recuperar después de la eliminación, por favor opere con precaución.",
"description": "Descripción",
"edit": "Editar",
"editSubscribeGroup": "Editar grupo de suscripción",
"form": {
"cancel": "Cancelar",
"confirm": "Confirmar",
"description": "Descripción",
"name": "Nombre"
},
"name": "Nombre",
"title": "Lista de grupos de suscripción",
"updateSuccess": "Actualización exitosa",
"updatedAt": "Fecha de actualización"
},
"inventory": "Límite de suscripción",
"language": "Idioma",
"name": "Nombre",
"quota": "Límite de compra/vez",
"replacement": "Restablecer precio/vez",
@ -94,11 +71,6 @@
"show": "Mostrar",
"sold": "Conteo de Suscripciones",
"subscribe": "Suscribirse",
"subscribeGroup": "Suscribirse al grupo",
"tabs": {
"subscribe": "Suscribirse",
"subscribeGroup": "Grupo de suscripción"
},
"traffic": "tráfico",
"unitPrice": "Precio Unitario",
"updateSuccess": "Actualización exitosa"

View File

@ -35,8 +35,10 @@
"discountPercent": "Porcentaje de descuento",
"discount_price": "Precio con descuento",
"duration": "Duración (meses)",
"groupId": "Grupo de Suscripción",
"inventory": "Límite de Suscripción",
"language": "Idioma",
"languageDescription": "Dejar vacío para el predeterminado sin restricción de idioma",
"languagePlaceholder": "Identificador de idioma para la suscripción, por ejemplo, es-MX, zh-CN",
"monthlyReset": "Reinicio Mensual",
"name": "Nombre",
"noLimit": "Sin límite",
@ -54,39 +56,14 @@
"resetCycle": "Ciclo de Reinicio",
"resetOn1st": "Reiniciar el día 1",
"selectResetCycle": "Por favor, seleccione un ciclo de reinicio",
"selectSubscribeGroup": "Por favor seleccione un grupo de suscripción",
"selectUnitTime": "Por favor seleccione la unidad de tiempo",
"speedLimit": "Límite de velocidad ",
"traffic": "Tráfico",
"unitPrice": "Precio unitario",
"unitTime": "Unidad de tiempo"
},
"group": {
"actions": "Acciones",
"cancel": "Cancelar",
"confirm": "Confirmar",
"confirmDelete": "¿Confirmar eliminación?",
"create": "Crear",
"createSubscribeGroup": "Crear nuevo grupo de suscripción",
"createSuccess": "Creación exitosa",
"delete": "Eliminar",
"deleteSuccess": "Eliminación exitosa",
"deleteWarning": "Los datos no se pueden recuperar después de la eliminación, por favor opere con precaución.",
"description": "Descripción",
"edit": "Editar",
"editSubscribeGroup": "Editar grupo de suscripción",
"form": {
"cancel": "Cancelar",
"confirm": "Confirmar",
"description": "Descripción",
"name": "Nombre"
},
"name": "Nombre",
"title": "Lista de grupos de suscripción",
"updateSuccess": "Actualización exitosa",
"updatedAt": "Fecha de actualización"
},
"inventory": "Límite de Suscripción",
"language": "Idioma",
"name": "Nombre",
"quota": "Límite de compra/vez",
"replacement": "Restablecer precio/vez",
@ -94,11 +71,6 @@
"show": "Mostrar",
"sold": "Conteo de Suscripciones",
"subscribe": "Suscribirse",
"subscribeGroup": "Suscribirse al grupo",
"tabs": {
"subscribe": "Suscribirse",
"subscribeGroup": "Grupo de suscripción"
},
"traffic": "tráfico",
"unitPrice": "Precio Unitario",
"updateSuccess": "Actualización exitosa"

View File

@ -35,8 +35,10 @@
"discountPercent": "درصد تخفیف",
"discount_price": "قیمت تخفیف",
"duration": "مدت زمان (ماه‌ها)",
"groupId": "گروه اشتراک",
"inventory": "محدودیت اشتراک",
"language": "زبان",
"languageDescription": "برای پیش‌فرض بدون محدودیت زبانی خالی بگذارید",
"languagePlaceholder": "شناسایی زبان برای اشتراک، به عنوان مثال، en-US، zh-CN",
"monthlyReset": "بازنشانی ماهانه",
"name": "نام",
"noLimit": "بدون محدودیت",
@ -54,39 +56,14 @@
"resetCycle": "چرخه بازنشانی",
"resetOn1st": "بازنشانی در روز اول",
"selectResetCycle": "لطفاً یک چرخه بازنشانی انتخاب کنید",
"selectSubscribeGroup": "گروه اشتراک را انتخاب کنید",
"selectUnitTime": "لطفاً واحد زمان را انتخاب کنید",
"speedLimit": "محدودیت سرعت (مگابیت بر ثانیه)",
"traffic": "ترافیک",
"unitPrice": "قیمت واحد",
"unitTime": "واحد زمان"
},
"group": {
"actions": "اقدامات",
"cancel": "لغو",
"confirm": "تأیید",
"confirmDelete": "آیا مطمئن هستید که می‌خواهید حذف کنید؟",
"create": "ایجاد",
"createSubscribeGroup": "ایجاد گروه اشتراک",
"createSuccess": "ایجاد با موفقیت انجام شد",
"delete": "حذف",
"deleteSuccess": "حذف با موفقیت انجام شد",
"deleteWarning": "پس از حذف، داده‌ها قابل بازیابی نیستند. لطفاً با احتیاط ادامه دهید.",
"description": "توضیحات",
"edit": "ویرایش",
"editSubscribeGroup": "ویرایش گروه اشتراک",
"form": {
"cancel": "لغو",
"confirm": "تأیید",
"description": "توضیحات",
"name": "نام"
},
"name": "نام",
"title": "فهرست گروه‌های اشتراک",
"updateSuccess": "به‌روزرسانی با موفقیت انجام شد",
"updatedAt": "به‌روزرسانی در"
},
"inventory": "محدودیت اشتراک",
"language": "زبان",
"name": "نام",
"quota": "محدودیت خرید/زمان",
"replacement": "تنظیم مجدد قیمت/زمان",
@ -94,11 +71,6 @@
"show": "نمایش",
"sold": "تعداد اشتراک",
"subscribe": "اشتراک",
"subscribeGroup": "گروه اشتراک",
"tabs": {
"subscribe": "اشتراک",
"subscribeGroup": "گروه اشتراک"
},
"traffic": "ترافیک",
"unitPrice": "قیمت واحد",
"updateSuccess": "به‌روزرسانی با موفقیت انجام شد"

View File

@ -35,8 +35,10 @@
"discountPercent": "Alennusprosentti",
"discount_price": "Alennettu hinta",
"duration": "Kesto (kuukautta)",
"groupId": "Tilausryhmä",
"inventory": "Tilausraja",
"language": "Kieli",
"languageDescription": "Jätä tyhjäksi oletusarvoa varten ilman kielirajoituksia",
"languagePlaceholder": "Kielitunnus tilaukselle, esim. fi-FI, sv-SE",
"monthlyReset": "Kuukausittainen Nollaus",
"name": "Nimi",
"noLimit": "Ei rajoitusta",
@ -54,39 +56,14 @@
"resetCycle": "Nollausjakso",
"resetOn1st": "Nollaus 1. päivänä",
"selectResetCycle": "Valitse nollausjakso",
"selectSubscribeGroup": "Valitse tilausryhmä",
"selectUnitTime": "Valitse aikayksikkö",
"speedLimit": "Nopeusrajoitus ",
"traffic": "Liikenne",
"unitPrice": "Yksikköhinta",
"unitTime": "Aikayksikkö"
},
"group": {
"actions": "Toiminnot",
"cancel": "Peruuta",
"confirm": "Vahvista",
"confirmDelete": "Haluatko varmasti poistaa?",
"create": "Luo",
"createSubscribeGroup": "Luo uusi tilausryhmä",
"createSuccess": "Luonti onnistui",
"delete": "Poista",
"deleteSuccess": "Poisto onnistui",
"deleteWarning": "Poiston jälkeen tietoja ei voi palauttaa, ole varovainen.",
"description": "Kuvaus",
"edit": "Muokkaa",
"editSubscribeGroup": "Muokkaa tilausryhmää",
"form": {
"cancel": "Peruuta",
"confirm": "Vahvista",
"description": "Kuvaus",
"name": "Nimi"
},
"name": "Nimi",
"title": "Tilausryhmien lista",
"updateSuccess": "Päivitys onnistui",
"updatedAt": "Päivitetty"
},
"inventory": "Tilausraja",
"language": "Kieli",
"name": "Nimi",
"quota": "Ostorajoitus/kerta",
"replacement": "Nollaa hinta/kerta",
@ -94,11 +71,6 @@
"show": "Näytä",
"sold": "Tilausmäärä",
"subscribe": "Tilaa",
"subscribeGroup": "Tilaa ryhmä",
"tabs": {
"subscribe": "Tilaa",
"subscribeGroup": "Tilaa ryhmä"
},
"traffic": "liikenne",
"unitPrice": "Yksikköhinta",
"updateSuccess": "Päivitys onnistui"

View File

@ -35,8 +35,10 @@
"discountPercent": "Pourcentage de remise",
"discount_price": "Prix remisé",
"duration": "Durée (mois)",
"groupId": "Groupe d'abonnement",
"inventory": "Limite d'abonnement",
"language": "Langue",
"languageDescription": "Laissez vide pour le défaut sans restriction de langue",
"languagePlaceholder": "Identifiant de langue pour l'abonnement, par exemple, fr-FR, zh-CN",
"monthlyReset": "Réinitialisation Mensuelle",
"name": "Nom",
"noLimit": "Illimité",
@ -54,39 +56,14 @@
"resetCycle": "Cycle de Réinitialisation",
"resetOn1st": "Réinitialisation le 1er",
"selectResetCycle": "Veuillez sélectionner un cycle de réinitialisation",
"selectSubscribeGroup": "Veuillez sélectionner un groupe d'abonnement",
"selectUnitTime": "Veuillez sélectionner l'unité de temps",
"speedLimit": "Limite de vitesse ",
"traffic": "Trafic",
"unitPrice": "Prix unitaire",
"unitTime": "Unité de temps"
},
"group": {
"actions": "Actions",
"cancel": "Annuler",
"confirm": "Confirmer",
"confirmDelete": "Êtes-vous sûr de vouloir supprimer ?",
"create": "Créer",
"createSubscribeGroup": "Créer un groupe d'abonnement",
"createSuccess": "Création réussie",
"delete": "Supprimer",
"deleteSuccess": "Suppression réussie",
"deleteWarning": "Les données ne peuvent pas être récupérées après suppression, veuillez procéder avec prudence.",
"description": "Description",
"edit": "Éditer",
"editSubscribeGroup": "Éditer le groupe d'abonnement",
"form": {
"cancel": "Annuler",
"confirm": "Confirmer",
"description": "Description",
"name": "Nom"
},
"name": "Nom",
"title": "Liste des groupes d'abonnement",
"updateSuccess": "Mise à jour réussie",
"updatedAt": "Date de mise à jour"
},
"inventory": "Limite d'abonnement",
"language": "Langue",
"name": "Nom",
"quota": "Limite d'achat/par fois",
"replacement": "Réinitialiser le prix/par fois",
@ -94,11 +71,6 @@
"show": "Afficher",
"sold": "Nombre d'abonnements",
"subscribe": "S'abonner",
"subscribeGroup": "S'abonner au groupe",
"tabs": {
"subscribe": "S'abonner",
"subscribeGroup": "Groupe d'abonnement"
},
"traffic": "trafic",
"unitPrice": "Prix unitaire",
"updateSuccess": "Mise à jour réussie"

View File

@ -35,8 +35,10 @@
"discountPercent": "छूट प्रतिशत",
"discount_price": "छूट मूल्य",
"duration": "अवधि (महीने)",
"groupId": "सदस्यता समूह",
"inventory": "सदस्यता सीमा",
"language": "भाषा",
"languageDescription": "डिफ़ॉल्ट के लिए भाषा प्रतिबंध के बिना खाली छोड़ें",
"languagePlaceholder": "सदस्यता के लिए भाषा पहचानकर्ता, जैसे, en-US, zh-CN",
"monthlyReset": "मासिक रीसेट",
"name": "नाम",
"noLimit": "कोई सीमा नहीं",
@ -54,39 +56,14 @@
"resetCycle": "रीसेट चक्र",
"resetOn1st": "1 तारीख को रीसेट",
"selectResetCycle": "कृपया एक रीसेट चक्र चुनें",
"selectSubscribeGroup": "कृपया सदस्यता समूह चुनें",
"selectUnitTime": "कृपया इकाई समय चुनें",
"speedLimit": "गति सीमा ",
"traffic": "ट्रैफिक",
"unitPrice": "इकाई मूल्य",
"unitTime": "इकाई समय"
},
"group": {
"actions": "क्रियाएँ",
"cancel": "रद्द करें",
"confirm": "पुष्टि करें",
"confirmDelete": "क्या आप वाकई हटाना चाहते हैं?",
"create": "बनाएँ",
"createSubscribeGroup": "नई सदस्यता समूह बनाएं",
"createSuccess": "सफलतापूर्वक बनाया गया",
"delete": "हटाएँ",
"deleteSuccess": "सफलतापूर्वक हटाया गया",
"deleteWarning": "हटाने के बाद डेटा पुनः प्राप्त नहीं किया जा सकता, कृपया सावधानीपूर्वक कार्य करें।",
"description": "विवरण",
"edit": "संपादित करें",
"editSubscribeGroup": "सदस्यता समूह संपादित करें",
"form": {
"cancel": "रद्द करें",
"confirm": "पुष्टि करें",
"description": "विवरण",
"name": "नाम"
},
"name": "नाम",
"title": "सदस्यता समूह सूची",
"updateSuccess": "सफलतापूर्वक अपडेट किया गया",
"updatedAt": "अपडेट का समय"
},
"inventory": "सदस्यता सीमा",
"language": "भाषा",
"name": "नाम",
"quota": "प्रति खरीद सीमा",
"replacement": "मूल्य/प्रति बार रीसेट करें",
@ -94,11 +71,6 @@
"show": "दिखाएं",
"sold": "सदस्यता गणना",
"subscribe": "सदस्यता लें",
"subscribeGroup": "सदस्यता समूह",
"tabs": {
"subscribe": "सदस्यता लें",
"subscribeGroup": "समूह सदस्यता"
},
"traffic": "ट्रैफिक",
"unitPrice": "इकाई मूल्य",
"updateSuccess": "अपडेट सफल"

View File

@ -35,8 +35,10 @@
"discountPercent": "Kedvezmény százalék",
"discount_price": "Kedvezményes ár",
"duration": "Időtartam (hónap)",
"groupId": "Előfizetési csoport",
"inventory": "Előfizetési korlát",
"language": "Nyelv",
"languageDescription": "Hagyja üresen az alapértelmezett nyelvi korlátozás nélkül",
"languagePlaceholder": "A feliratkozás nyelvi azonosítója, pl. en-US, zh-CN",
"monthlyReset": "Havi Visszaállítás",
"name": "Név",
"noLimit": "Korlátlan",
@ -54,39 +56,14 @@
"resetCycle": "Visszaállítási Ciklus",
"resetOn1st": "Visszaállítás 1-jén",
"selectResetCycle": "Kérjük, válasszon visszaállítási ciklust",
"selectSubscribeGroup": "Kérjük, válassza ki az előfizetési csoportot",
"selectUnitTime": "Kérjük, válassza ki az időegységet",
"speedLimit": "Sebességkorlát ",
"traffic": "Forgalom",
"unitPrice": "Egységár",
"unitTime": "Időegység"
},
"group": {
"actions": "Műveletek",
"cancel": "Mégse",
"confirm": "Megerősít",
"confirmDelete": "Biztosan törölni szeretné?",
"create": "Létrehozás",
"createSubscribeGroup": "Új előfizetési csoport létrehozása",
"createSuccess": "Sikeres létrehozás",
"delete": "Törlés",
"deleteSuccess": "Sikeres törlés",
"deleteWarning": "A törlés után az adatok nem állíthatók vissza, kérjük, legyen óvatos.",
"description": "Leírás",
"edit": "Szerkesztés",
"editSubscribeGroup": "Előfizetési csoport szerkesztése",
"form": {
"cancel": "Mégse",
"confirm": "Megerősít",
"description": "Leírás",
"name": "Név"
},
"name": "Név",
"title": "Előfizetési csoportok listája",
"updateSuccess": "Sikeres frissítés",
"updatedAt": "Frissítés ideje"
},
"inventory": "Előfizetési korlát",
"language": "Nyelv",
"name": "Név",
"quota": "Vásárlási korlát/alkalom",
"replacement": "Ár visszaállítása/alkalom",
@ -94,11 +71,6 @@
"show": "Megjelenítés",
"sold": "Előfizetések száma",
"subscribe": "Feliratkozás",
"subscribeGroup": "Feliratkozási csoport",
"tabs": {
"subscribe": "Feliratkozás",
"subscribeGroup": "Feliratkozási csoport"
},
"traffic": "forgalom",
"unitPrice": "Egységár",
"updateSuccess": "Sikeres frissítés"

View File

@ -35,8 +35,10 @@
"discountPercent": "割引率",
"discount_price": "割引価格",
"duration": "期間(月)",
"groupId": "サブスクリプショングループ",
"inventory": "サブスクリプション制限",
"language": "言語",
"languageDescription": "言語制限なしのデフォルトの場合は空白のままにしてください",
"languagePlaceholder": "サブスクリプションの言語識別子en-US、zh-CN",
"monthlyReset": "毎月リセット",
"name": "名称",
"noLimit": "無制限",
@ -54,39 +56,14 @@
"resetCycle": "リセットサイクル",
"resetOn1st": "1日にリセット",
"selectResetCycle": "リセットサイクルを選択してください",
"selectSubscribeGroup": "サブスクリプショングループを選択してください",
"selectUnitTime": "単位時間を選択してください",
"speedLimit": "速度制限",
"traffic": "トラフィック",
"unitPrice": "単価",
"unitTime": "単位時間"
},
"group": {
"actions": "操作",
"cancel": "キャンセル",
"confirm": "確認",
"confirmDelete": "削除してもよろしいですか?",
"create": "作成",
"createSubscribeGroup": "新しい購読グループを作成",
"createSuccess": "作成成功",
"delete": "削除",
"deleteSuccess": "削除成功",
"deleteWarning": "削除後はデータを復元できませんので、慎重に操作してください。",
"description": "説明",
"edit": "編集",
"editSubscribeGroup": "購読グループを編集",
"form": {
"cancel": "キャンセル",
"confirm": "確認",
"description": "説明",
"name": "名前"
},
"name": "名前",
"title": "購読グループ一覧",
"updateSuccess": "更新成功",
"updatedAt": "更新日時"
},
"inventory": "サブスクリプションの制限",
"language": "言語",
"name": "名前",
"quota": "購入制限/回",
"replacement": "リセット価格/回",
@ -94,11 +71,6 @@
"show": "表示",
"sold": "サブスクリプション数",
"subscribe": "購読",
"subscribeGroup": "グループを購読する",
"tabs": {
"subscribe": "購読",
"subscribeGroup": "購読グループ"
},
"traffic": "トラフィック",
"unitPrice": "単価",
"updateSuccess": "更新が成功しました"

View File

@ -35,8 +35,10 @@
"discountPercent": "할인율",
"discount_price": "할인가",
"duration": "기간 (개월)",
"groupId": "구독 그룹",
"inventory": "구독 한도",
"language": "언어",
"languageDescription": "언어 제한 없이 기본값으로 두려면 비워 두세요",
"languagePlaceholder": "구독을 위한 언어 식별자, 예: en-US, zh-CN",
"monthlyReset": "월별 초기화",
"name": "이름",
"noLimit": "무제한",
@ -54,39 +56,14 @@
"resetCycle": "초기화 주기",
"resetOn1st": "매월 1일 초기화",
"selectResetCycle": "초기화 주기를 선택하세요",
"selectSubscribeGroup": "구독 그룹을 선택하세요",
"selectUnitTime": "단위 시간을 선택하세요",
"speedLimit": "속도 제한 ",
"traffic": "트래픽",
"unitPrice": "단가",
"unitTime": "단위 시간"
},
"group": {
"actions": "작업",
"cancel": "취소",
"confirm": "확인",
"confirmDelete": "삭제하시겠습니까?",
"create": "생성",
"createSubscribeGroup": "새 구독 그룹 생성",
"createSuccess": "생성 성공",
"delete": "삭제",
"deleteSuccess": "삭제 성공",
"deleteWarning": "삭제 후 데이터는 복구할 수 없습니다. 신중하게 진행하세요.",
"description": "설명",
"edit": "편집",
"editSubscribeGroup": "구독 그룹 편집",
"form": {
"cancel": "취소",
"confirm": "확인",
"description": "설명",
"name": "이름"
},
"name": "이름",
"title": "구독 그룹 목록",
"updateSuccess": "업데이트 성공",
"updatedAt": "업데이트 시간"
},
"inventory": "구독 한도",
"language": "언어",
"name": "이름",
"quota": "구매 제한/회",
"replacement": "가격 재설정/회",
@ -94,11 +71,6 @@
"show": "표시",
"sold": "구독 수",
"subscribe": "구독",
"subscribeGroup": "구독 그룹",
"tabs": {
"subscribe": "구독",
"subscribeGroup": "구독 그룹"
},
"traffic": "트래픽",
"unitPrice": "단가",
"updateSuccess": "업데이트 성공"

View File

@ -35,8 +35,10 @@
"discountPercent": "Rabattprosent",
"discount_price": "Rabattert pris",
"duration": "Varighet (måneder)",
"groupId": "Abonnementsgruppe",
"inventory": "Abonnementsgrense",
"language": "Språk",
"languageDescription": "La stå tom for standard uten språkbegrensning",
"languagePlaceholder": "Språkidentifikator for abonnementet, f.eks. en-US, zh-CN",
"monthlyReset": "Månedlig Tilbakestilling",
"name": "Navn",
"noLimit": "Ubegrenset",
@ -54,39 +56,14 @@
"resetCycle": "Tilbakestill Syklus",
"resetOn1st": "Tilbakestill den 1.",
"selectResetCycle": "Vennligst velg en tilbakestillingssyklus",
"selectSubscribeGroup": "Vennligst velg abonnementsgruppe",
"selectUnitTime": "Vennligst velg enhetstid",
"speedLimit": "Hastighetsbegrensning ",
"traffic": "Trafikk",
"unitPrice": "Enhetspris",
"unitTime": "Enhetstid"
},
"group": {
"actions": "Handlinger",
"cancel": "Avbryt",
"confirm": "Bekreft",
"confirmDelete": "Er du sikker på at du vil slette?",
"create": "Opprett",
"createSubscribeGroup": "Opprett ny abonnementsgruppe",
"createSuccess": "Opprettelse vellykket",
"delete": "Slett",
"deleteSuccess": "Sletting vellykket",
"deleteWarning": "Data kan ikke gjenopprettes etter sletting, vær forsiktig.",
"description": "Beskrivelse",
"edit": "Rediger",
"editSubscribeGroup": "Rediger abonnementsgruppe",
"form": {
"cancel": "Avbryt",
"confirm": "Bekreft",
"description": "Beskrivelse",
"name": "Navn"
},
"name": "Navn",
"title": "Liste over abonnementsgrupper",
"updateSuccess": "Oppdatering vellykket",
"updatedAt": "Oppdatert"
},
"inventory": "Abonnementsgrense",
"language": "Språk",
"name": "Navn",
"quota": "Kjøpsgrense/gang",
"replacement": "Tilbakestill pris/gang",
@ -94,11 +71,6 @@
"show": "Vis",
"sold": "Abonnementsantall",
"subscribe": "Abonner",
"subscribeGroup": "Abonner på gruppe",
"tabs": {
"subscribe": "Abonner",
"subscribeGroup": "Abonner gruppe"
},
"traffic": "trafikk",
"unitPrice": "Enhetspris",
"updateSuccess": "Oppdatering vellykket"

View File

@ -35,8 +35,10 @@
"discountPercent": "Procent zniżki",
"discount_price": "Cena po zniżce",
"duration": "Czas trwania (miesiące)",
"groupId": "Grupa subskrypcyjna",
"inventory": "Limit subskrypcji",
"language": "Język",
"languageDescription": "Pozostaw puste dla domyślnego bez ograniczeń językowych",
"languagePlaceholder": "Identyfikator języka dla subskrypcji, np. en-US, zh-CN",
"monthlyReset": "Miesięczny Reset",
"name": "Nazwa",
"noLimit": "Bez ograniczeń",
@ -54,39 +56,14 @@
"resetCycle": "Cykl Resetowania",
"resetOn1st": "Reset 1-go",
"selectResetCycle": "Proszę wybrać cykl resetowania",
"selectSubscribeGroup": "Wybierz grupę subskrypcji",
"selectUnitTime": "Proszę wybrać jednostkę czasu",
"speedLimit": "Limit prędkości ",
"traffic": "Ruch",
"unitPrice": "Cena jednostkowa",
"unitTime": "Jednostka czasu"
},
"group": {
"actions": "Działania",
"cancel": "Anuluj",
"confirm": "Potwierdź",
"confirmDelete": "Czy na pewno chcesz usunąć?",
"create": "Utwórz",
"createSubscribeGroup": "Utwórz nową grupę subskrypcji",
"createSuccess": "Utworzono pomyślnie",
"delete": "Usuń",
"deleteSuccess": "Usunięto pomyślnie",
"deleteWarning": "Po usunięciu danych nie można ich odzyskać, proszę postępować ostrożnie.",
"description": "Opis",
"edit": "Edytuj",
"editSubscribeGroup": "Edytuj grupę subskrypcji",
"form": {
"cancel": "Anuluj",
"confirm": "Potwierdź",
"description": "Opis",
"name": "Nazwa"
},
"name": "Nazwa",
"title": "Lista grup subskrypcji",
"updateSuccess": "Zaktualizowano pomyślnie",
"updatedAt": "Czas aktualizacji"
},
"inventory": "Limit subskrypcji",
"language": "Język",
"name": "Nazwa",
"quota": "Limit zakupu/raz",
"replacement": "Zresetuj cenę/raz",
@ -94,11 +71,6 @@
"show": "Pokaż",
"sold": "Liczba subskrypcji",
"subscribe": "Subskrybuj",
"subscribeGroup": "Subskrybuj grupę",
"tabs": {
"subscribe": "Subskrybuj",
"subscribeGroup": "Grupa subskrypcji"
},
"traffic": "ruch",
"unitPrice": "Cena jednostkowa",
"updateSuccess": "Aktualizacja zakończona pomyślnie"

View File

@ -35,8 +35,10 @@
"discountPercent": "Percentual de desconto",
"discount_price": "Preço com desconto",
"duration": "Duração (meses)",
"groupId": "Grupo de Assinatura",
"inventory": "Limite de Assinatura",
"language": "Idioma",
"languageDescription": "Deixe em branco para padrão sem restrição de idioma",
"languagePlaceholder": "Identificador de idioma para a assinatura, ex: pt-BR, zh-CN",
"monthlyReset": "Reinicialização Mensal",
"name": "Nome",
"noLimit": "Sem limite",
@ -54,39 +56,14 @@
"resetCycle": "Ciclo de Reinicialização",
"resetOn1st": "Reiniciar no dia 1",
"selectResetCycle": "Por favor, selecione um ciclo de reinicialização",
"selectSubscribeGroup": "Por favor, selecione o grupo de assinatura",
"selectUnitTime": "Por favor, selecione a unidade de tempo",
"speedLimit": "Limite de velocidade ",
"traffic": "Tráfego",
"unitPrice": "Preço unitário",
"unitTime": "Unidade de tempo"
},
"group": {
"actions": "Ações",
"cancel": "Cancelar",
"confirm": "Confirmar",
"confirmDelete": "Tem certeza de que deseja excluir?",
"create": "Criar",
"createSubscribeGroup": "Criar Novo Grupo de Assinatura",
"createSuccess": "Criado com sucesso",
"delete": "Excluir",
"deleteSuccess": "Excluído com sucesso",
"deleteWarning": "Os dados não poderão ser recuperados após a exclusão, por favor, proceda com cautela.",
"description": "Descrição",
"edit": "Editar",
"editSubscribeGroup": "Editar Grupo de Assinatura",
"form": {
"cancel": "Cancelar",
"confirm": "Confirmar",
"description": "Descrição",
"name": "Nome"
},
"name": "Nome",
"title": "Lista de Grupos de Assinatura",
"updateSuccess": "Atualizado com sucesso",
"updatedAt": "Atualizado em"
},
"inventory": "Limite de Assinatura",
"language": "Idioma",
"name": "nome",
"quota": "Limite de compra/vez",
"replacement": "Redefinir preço/vez",
@ -94,11 +71,6 @@
"show": "Exibir",
"sold": "Contagem de Assinaturas",
"subscribe": "Inscrever-se",
"subscribeGroup": "Inscrever-se no grupo",
"tabs": {
"subscribe": "Inscrever-se",
"subscribeGroup": "Grupo de Inscrição"
},
"traffic": "tráfego",
"unitPrice": "Preço Unitário",
"updateSuccess": "Atualização bem-sucedida"

View File

@ -35,8 +35,10 @@
"discountPercent": "Procent reducere",
"discount_price": "Preț redus",
"duration": "Durată (luni)",
"groupId": "Grup de Abonament",
"inventory": "Limit de Abonament",
"language": "Limba",
"languageDescription": "Lăsați gol pentru implicit fără restricții de limbă",
"languagePlaceholder": "Identificator de limbă pentru abonament, de exemplu, en-US, zh-CN",
"monthlyReset": "Resetare Lunară",
"name": "Nume",
"noLimit": "Fără limită",
@ -54,39 +56,14 @@
"resetCycle": "Ciclu de Resetare",
"resetOn1st": "Resetare pe 1",
"selectResetCycle": "Vă rugăm să selectați un ciclu de resetare",
"selectSubscribeGroup": "Vă rugăm să selectați grupul de abonament",
"selectUnitTime": "Vă rugăm să selectați unitatea de timp",
"speedLimit": "Limită de viteză ",
"traffic": "Trafic",
"unitPrice": "Preț unitar",
"unitTime": "Unitate de timp"
},
"group": {
"actions": "Acțiuni",
"cancel": "Anulează",
"confirm": "Confirmă",
"confirmDelete": "Sigur doriți să ștergeți?",
"create": "Creează",
"createSubscribeGroup": "Creează un grup de abonamente",
"createSuccess": "Creat cu succes",
"delete": "Șterge",
"deleteSuccess": "Șters cu succes",
"deleteWarning": "După ștergere, datele nu pot fi recuperate, vă rugăm să acționați cu prudență.",
"description": "Descriere",
"edit": "Editează",
"editSubscribeGroup": "Editează grupul de abonamente",
"form": {
"cancel": "Anulează",
"confirm": "Confirmă",
"description": "Descriere",
"name": "Nume"
},
"name": "Nume",
"title": "Lista grupurilor de abonamente",
"updateSuccess": "Actualizat cu succes",
"updatedAt": "Data actualizării"
},
"inventory": "Limită de abonament",
"language": "Limba",
"name": "Nume",
"quota": "Limită de achiziție/pe tranzacție",
"replacement": "Resetare preț/pe utilizare",
@ -94,11 +71,6 @@
"show": "Afișare",
"sold": "Număr de abonamente",
"subscribe": "Abonare",
"subscribeGroup": "Abonare grup",
"tabs": {
"subscribe": "Abonare",
"subscribeGroup": "Grup de abonare"
},
"traffic": "trafic",
"unitPrice": "Preț unitar",
"updateSuccess": "Actualizare reușită"

View File

@ -35,8 +35,10 @@
"discountPercent": "Процент скидки",
"discount_price": "Цена со скидкой",
"duration": "Продолжительность (месяцы)",
"groupId": "Группа подписки",
"inventory": "Лимит подписки",
"language": "Язык",
"languageDescription": "Оставьте пустым для использования по умолчанию без языковых ограничений",
"languagePlaceholder": "Идентификатор языка для подписки, например, en-US, zh-CN",
"monthlyReset": "Ежемесячный Сброс",
"name": "Название",
"noLimit": "Без ограничений",
@ -54,39 +56,14 @@
"resetCycle": "Цикл Сброса",
"resetOn1st": "Сброс 1-го числа",
"selectResetCycle": "Пожалуйста, выберите цикл сброса",
"selectSubscribeGroup": "Пожалуйста, выберите группу подписки",
"selectUnitTime": "Пожалуйста, выберите единицу времени",
"speedLimit": "Ограничение скорости",
"traffic": "Трафик",
"unitPrice": "Цена за единицу",
"unitTime": "Единица времени"
},
"group": {
"actions": "Действия",
"cancel": "Отмена",
"confirm": "Подтвердить",
"confirmDelete": "Вы уверены, что хотите удалить?",
"create": "Создать",
"createSubscribeGroup": "Создать новую группу подписок",
"createSuccess": "Успешно создано",
"delete": "Удалить",
"deleteSuccess": "Успешно удалено",
"deleteWarning": "После удаления данные не могут быть восстановлены, пожалуйста, будьте осторожны.",
"description": "Описание",
"edit": "Редактировать",
"editSubscribeGroup": "Редактировать группу подписок",
"form": {
"cancel": "Отмена",
"confirm": "Подтвердить",
"description": "Описание",
"name": "Название"
},
"name": "Название",
"title": "Список групп подписок",
"updateSuccess": "Успешно обновлено",
"updatedAt": "Время обновления"
},
"inventory": "Лимит подписки",
"language": "Язык",
"name": "название",
"quota": "Лимит/раз",
"replacement": "Сбросить цену/раз",
@ -94,11 +71,6 @@
"show": "Показать",
"sold": "Количество подписок",
"subscribe": "Подписаться",
"subscribeGroup": "Подписаться на группу",
"tabs": {
"subscribe": "Подписаться",
"subscribeGroup": "Группа подписок"
},
"traffic": "трафик",
"unitPrice": "Цена за единицу",
"updateSuccess": "Обновление успешно"

View File

@ -35,8 +35,10 @@
"discountPercent": "เปอร์เซ็นต์ส่วนลด",
"discount_price": "ราคาหลังหักส่วนลด",
"duration": "ระยะเวลา (เดือน)",
"groupId": "กลุ่มการสมัครสมาชิก",
"inventory": "ขีดจำกัดการสมัครสมาชิก",
"language": "ภาษา",
"languageDescription": "ปล่อยว่างไว้สำหรับค่าเริ่มต้นโดยไม่มีข้อจำกัดด้านภาษา",
"languagePlaceholder": "ตัวระบุภาษาสำหรับการสมัครสมาชิก เช่น en-US, zh-CN",
"monthlyReset": "รีเซ็ตทุกเดือน",
"name": "ชื่อ",
"noLimit": "ไม่จำกัด",
@ -54,39 +56,14 @@
"resetCycle": "รอบการรีเซ็ต",
"resetOn1st": "รีเซ็ตในวันที่ 1",
"selectResetCycle": "กรุณาเลือกรอบการรีเซ็ต",
"selectSubscribeGroup": "กรุณาเลือกกลุ่มการสมัครสมาชิก",
"selectUnitTime": "กรุณาเลือกหน่วยเวลา",
"speedLimit": "จำกัดความเร็ว ",
"traffic": "ปริมาณข้อมูล",
"unitPrice": "ราคาต่อหน่วย",
"unitTime": "หน่วยเวลา"
},
"group": {
"actions": "การดำเนินการ",
"cancel": "ยกเลิก",
"confirm": "ยืนยัน",
"confirmDelete": "ยืนยันการลบหรือไม่?",
"create": "สร้าง",
"createSubscribeGroup": "สร้างกลุ่มการสมัครใหม่",
"createSuccess": "สร้างสำเร็จ",
"delete": "ลบ",
"deleteSuccess": "ลบสำเร็จ",
"deleteWarning": "ข้อมูลจะไม่สามารถกู้คืนได้หลังจากลบ โปรดดำเนินการด้วยความระมัดระวัง",
"description": "คำอธิบาย",
"edit": "แก้ไข",
"editSubscribeGroup": "แก้ไขกลุ่มการสมัคร",
"form": {
"cancel": "ยกเลิก",
"confirm": "ยืนยัน",
"description": "คำอธิบาย",
"name": "ชื่อ"
},
"name": "ชื่อ",
"title": "รายการกลุ่มการสมัคร",
"updateSuccess": "อัปเดตสำเร็จ",
"updatedAt": "เวลาอัปเดต"
},
"inventory": "ขีดจำกัดการสมัครสมาชิก",
"language": "ภาษา",
"name": "ชื่อ",
"quota": "จำกัดการซื้อ/ครั้ง",
"replacement": "รีเซ็ตราคา/ครั้ง",
@ -94,11 +71,6 @@
"show": "แสดง",
"sold": "จำนวนการสมัครสมาชิก",
"subscribe": "สมัครสมาชิก",
"subscribeGroup": "สมัครกลุ่ม",
"tabs": {
"subscribe": "สมัครสมาชิก",
"subscribeGroup": "กลุ่มสมัครสมาชิก"
},
"traffic": "การจราจร",
"unitPrice": "ราคาต่อหน่วย",
"updateSuccess": "อัปเดตสำเร็จ"

View File

@ -35,8 +35,10 @@
"discountPercent": "İndirim Yüzdesi",
"discount_price": "İndirimli Fiyat",
"duration": "Süre (ay)",
"groupId": "Abonelik Grubu",
"inventory": "Abonelik Limiti",
"language": "Dil",
"languageDescription": "Varsayılan dil kısıtlaması olmadan boş bırakın",
"languagePlaceholder": "Abonelik için dil tanımlayıcısı, örn. en-US, zh-CN",
"monthlyReset": "Aylık Sıfırlama",
"name": "Ad",
"noLimit": "Sınırsız",
@ -54,39 +56,14 @@
"resetCycle": "Sıfırlama Döngüsü",
"resetOn1st": "1'inde Sıfırla",
"selectResetCycle": "Lütfen bir sıfırlama döngüsü seçin",
"selectSubscribeGroup": "Abonelik Grubunu Seçiniz",
"selectUnitTime": "Lütfen birim zamanı seçin",
"speedLimit": "Hız Sınırı ",
"traffic": "Trafik",
"unitPrice": "Birim fiyatı",
"unitTime": "Birim zamanı"
},
"group": {
"actions": "Eylemler",
"cancel": "İptal",
"confirm": "Onayla",
"confirmDelete": "Silmek istediğinizden emin misiniz?",
"create": "Oluştur",
"createSubscribeGroup": "Yeni Abonelik Grubu Oluştur",
"createSuccess": "Başarıyla oluşturuldu",
"delete": "Sil",
"deleteSuccess": "Başarıyla silindi",
"deleteWarning": "Sildikten sonra veriler geri alınamaz, lütfen dikkatli olun.",
"description": "Açıklama",
"edit": "Düzenle",
"editSubscribeGroup": "Abonelik Grubunu Düzenle",
"form": {
"cancel": "İptal",
"confirm": "Onayla",
"description": "Açıklama",
"name": "Ad"
},
"name": "Ad",
"title": "Abonelik Grubu Listesi",
"updateSuccess": "Başarıyla güncellendi",
"updatedAt": "Güncellenme Zamanı"
},
"inventory": "Abonelik Limiti",
"language": "Dil",
"name": "isim",
"quota": "Kota/satın alma",
"replacement": "Fiyatı sıfırla/kez",
@ -94,11 +71,6 @@
"show": "Göster",
"sold": "Abonelik Sayısı",
"subscribe": "Abone Ol",
"subscribeGroup": "Gruba Abone Ol",
"tabs": {
"subscribe": "Abone Ol",
"subscribeGroup": "Abone Grubu"
},
"traffic": "trafik",
"unitPrice": "Birim Fiyatı",
"updateSuccess": "Güncelleme başarılı"

View File

@ -35,8 +35,10 @@
"discountPercent": "Відсоток знижки",
"discount_price": "Ціна зі знижкою",
"duration": "Тривалість (місяці)",
"groupId": "Група підписки",
"inventory": "Ліміт підписки",
"language": "Мова",
"languageDescription": "Залиште порожнім для значення за замовчуванням без обмеження за мовою",
"languagePlaceholder": "Ідентифікатор мови для підписки, наприклад, en-US, zh-CN",
"monthlyReset": "Щомісячне Скидання",
"name": "Назва",
"noLimit": "Без обмежень",
@ -54,39 +56,14 @@
"resetCycle": "Цикл Скидання",
"resetOn1st": "Скидання 1-го числа",
"selectResetCycle": "Будь ласка, виберіть цикл скидання",
"selectSubscribeGroup": "Будь ласка, виберіть групу підписки",
"selectUnitTime": "Будь ласка, виберіть одиницю часу",
"speedLimit": "Обмеження швидкості",
"traffic": "Трафік",
"unitPrice": "Ціна за одиницю",
"unitTime": "Одиниця часу"
},
"group": {
"actions": "Дії",
"cancel": "Скасувати",
"confirm": "Підтвердити",
"confirmDelete": "Ви впевнені, що хочете видалити?",
"create": "Створити",
"createSubscribeGroup": "Створити нову групу підписки",
"createSuccess": "Успішно створено",
"delete": "Видалити",
"deleteSuccess": "Успішно видалено",
"deleteWarning": "Після видалення дані не можуть бути відновлені, будь ласка, будьте обережні.",
"description": "Опис",
"edit": "Редагувати",
"editSubscribeGroup": "Редагувати групу підписки",
"form": {
"cancel": "Скасувати",
"confirm": "Підтвердити",
"description": "Опис",
"name": "Назва"
},
"name": "Назва",
"title": "Список груп підписки",
"updateSuccess": "Успішно оновлено",
"updatedAt": "Час оновлення"
},
"inventory": "Ліміт підписки",
"language": "Мова",
"name": "Назва",
"quota": "Обмеження на покупку/раз",
"replacement": "Скидання ціни/раз",
@ -94,11 +71,6 @@
"show": "Показати",
"sold": "Кількість підписок",
"subscribe": "Підписатися",
"subscribeGroup": "Підписатися на групу",
"tabs": {
"subscribe": "Підписатися",
"subscribeGroup": "Група підписок"
},
"traffic": "Трафік",
"unitPrice": "Ціна за одиницю",
"updateSuccess": "Оновлення успішне"

View File

@ -35,8 +35,10 @@
"discountPercent": "Phần trăm giảm giá",
"discount_price": "Giá sau giảm",
"duration": "Thời gian (tháng)",
"groupId": "Nhóm Đăng Ký",
"inventory": "Giới Hạn Đăng Ký",
"language": "Ngôn ngữ",
"languageDescription": "Để trống cho mặc định không có hạn chế ngôn ngữ",
"languagePlaceholder": "Mã định danh ngôn ngữ cho đăng ký, ví dụ: en-US, zh-CN",
"monthlyReset": "Đặt Lại Hàng Tháng",
"name": "Tên",
"noLimit": "Không giới hạn",
@ -54,39 +56,14 @@
"resetCycle": "Chu Kỳ Đặt Lại",
"resetOn1st": "Đặt Lại vào Ngày 1",
"selectResetCycle": "Vui lòng chọn một chu kỳ đặt lại",
"selectSubscribeGroup": "Vui lòng chọn nhóm đăng ký",
"selectUnitTime": "Vui lòng chọn đơn vị thời gian",
"speedLimit": "Giới hạn tốc độ ",
"traffic": "Lưu lượng",
"unitPrice": "Đơn giá",
"unitTime": "Đơn vị thời gian"
},
"group": {
"actions": "Hành động",
"cancel": "Hủy bỏ",
"confirm": "Xác nhận",
"confirmDelete": "Bạn có chắc chắn muốn xóa không?",
"create": "Tạo mới",
"createSubscribeGroup": "Tạo nhóm đăng ký mới",
"createSuccess": "Tạo thành công",
"delete": "Xóa",
"deleteSuccess": "Xóa thành công",
"deleteWarning": "Dữ liệu không thể khôi phục sau khi xóa, hãy cẩn thận.",
"description": "Mô tả",
"edit": "Chỉnh sửa",
"editSubscribeGroup": "Chỉnh sửa nhóm đăng ký",
"form": {
"cancel": "Hủy bỏ",
"confirm": "Xác nhận",
"description": "Mô tả",
"name": "Tên"
},
"name": "Tên",
"title": "Danh sách nhóm đăng ký",
"updateSuccess": "Cập nhật thành công",
"updatedAt": "Thời gian cập nhật"
},
"inventory": "Giới Hạn Đăng Ký",
"language": "Ngôn ngữ",
"name": "Tên",
"quota": "Giới hạn mua/lần",
"replacement": "Đặt lại giá/lần",
@ -94,11 +71,6 @@
"show": "Hiển thị",
"sold": "Số lượng đăng ký",
"subscribe": "Đăng ký",
"subscribeGroup": "Nhóm đăng ký",
"tabs": {
"subscribe": "Đăng ký",
"subscribeGroup": "Nhóm đăng ký"
},
"traffic": "lưu lượng",
"unitPrice": "Đơn giá",
"updateSuccess": "Cập nhật thành công"

View File

@ -35,8 +35,10 @@
"discountPercent": "折扣比",
"discount_price": "折扣價格",
"duration": "時長(月)",
"groupId": "訂閱組別",
"inventory": "訂閱限制",
"language": "語言",
"languageDescription": "留空以使用默認的無語言限制",
"languagePlaceholder": "訂閱的語言標識符例如en-USzh-CN",
"monthlyReset": "每月重置",
"name": "名稱",
"noLimit": "無限制",
@ -54,39 +56,14 @@
"resetCycle": "重置週期",
"resetOn1st": "每月1日重置",
"selectResetCycle": "請選擇重置週期",
"selectSubscribeGroup": "請選擇訂閱組",
"selectUnitTime": "請選擇單位時間",
"speedLimit": "速度限制",
"traffic": "流量",
"unitPrice": "單價",
"unitTime": "單位時間"
},
"group": {
"actions": "操作",
"cancel": "取消",
"confirm": "確認",
"confirmDelete": "確定刪除嗎?",
"create": "建立",
"createSubscribeGroup": "新建訂閱組",
"createSuccess": "建立成功",
"delete": "刪除",
"deleteSuccess": "刪除成功",
"deleteWarning": "刪除後資料無法恢復,請謹慎操作。",
"description": "描述",
"edit": "編輯",
"editSubscribeGroup": "編輯訂閱組",
"form": {
"cancel": "取消",
"confirm": "確認",
"description": "描述",
"name": "名稱"
},
"name": "名稱",
"title": "訂閱組列表",
"updateSuccess": "更新成功",
"updatedAt": "更新時間"
},
"inventory": "訂閱限制",
"language": "語言",
"name": "名稱",
"quota": "限購/次",
"replacement": "重置價格/次",
@ -94,11 +71,6 @@
"show": "顯示",
"sold": "訂閱數量",
"subscribe": "訂閱",
"subscribeGroup": "訂閱組",
"tabs": {
"subscribe": "訂閱",
"subscribeGroup": "訂閱組"
},
"traffic": "流量",
"unitPrice": "單價",
"updateSuccess": "更新成功"

View File

@ -1,4 +1,5 @@
import { getSubscription } from '@/services/user/portal';
import { getLocale } from 'next-intl/server';
import Content from './content';
export default async function Page({
@ -9,9 +10,15 @@ export default async function Page({
}>;
}) {
const { id } = await searchParams;
const { data } = await getSubscription({
skipErrorHandler: true,
});
const locale = await getLocale();
const { data } = await getSubscription(
{
language: locale,
},
{
skipErrorHandler: true,
},
);
const subscriptionList = data.data?.list || [];
const subscription = subscriptionList.find((item) => item.id === Number(id));

View File

@ -1,11 +1,18 @@
import { getSubscription } from '@/services/user/portal';
import { getLocale } from 'next-intl/server';
import { Content } from './content';
export async function ProductShowcase() {
try {
const { data } = await getSubscription({
skipErrorHandler: true,
});
const locale = await getLocale();
const { data } = await getSubscription(
{
language: locale,
},
{
skipErrorHandler: true,
},
);
const subscriptionList = data.data?.list || [];
if (subscriptionList.length === 0) return null;

View File

@ -80,11 +80,18 @@ export async function purchase(body: API.PortalPurchaseRequest, options?: { [key
}
/** Get Subscription GET /v1/public/portal/subscribe */
export async function getSubscription(options?: { [key: string]: any }) {
export async function getSubscription(
// 叠加生成的Param类型 (非body参数swagger默认没有生成对象)
params: API.GetSubscriptionParams,
options?: { [key: string]: any },
) {
return request<API.Response & { data?: API.GetSubscriptionResponse }>(
'/v1/public/portal/subscribe',
{
method: 'GET',
params: {
...params,
},
...(options || {}),
},
);

View File

@ -290,6 +290,14 @@ declare namespace API {
total: number;
};
type GetSubscriptionParams = {
language: string;
};
type GetSubscriptionRequest = {
language: string;
};
type GetSubscriptionResponse = {
list: Subscribe[];
};