feat(locales): Add multiple languages

This commit is contained in:
web@ppanel 2024-12-18 23:12:53 +07:00
parent a20834a9ac
commit b243ab9006
610 changed files with 23247 additions and 9 deletions

View File

@ -9,7 +9,30 @@
"entryLocale": "en-US",
"outputLocales": ["zh-CN"]
},
"modelName": "gpt-3.5-turbo",
"modelName": "gpt-4o",
"output": "./locales",
"outputLocales": ["en-US", "zh-CN"]
"outputLocales": [
"en-US",
"cs-CZ",
"de-DE",
"es-ES",
"es-MX",
"fi-FI",
"fr-FR",
"hi-IN",
"hu-HU",
"ja-JP",
"ko-KR",
"no-NO",
"pl-PL",
"pt-BR",
"ro-RO",
"ru-RU",
"th-TH",
"tr-TR",
"uk-UA",
"vi-VN",
"zh-CN",
"zh-TW"
]
}

View File

@ -12,6 +12,7 @@ import { unstable_noStore as noStore } from 'next/cache';
import { cookies } from 'next/headers';
import NextTopLoader from 'nextjs-toploader';
import React from 'react';
import rtlDetect from 'rtl-detect';
export async function generateMetadata(): Promise<Metadata> {
noStore();
@ -81,7 +82,7 @@ export default async function RootLayout({ children }: { children: React.ReactNo
}
return (
<html suppressHydrationWarning lang={locale}>
<html suppressHydrationWarning lang={locale} dir={rtlDetect.getLangDir(locale)}>
<head>
<PublicEnvScript />
</head>

View File

@ -1,6 +1,29 @@
import { env } from 'next-runtime-env';
export const locales = ['en-US', 'zh-CN'];
export const locales = [
'en-US',
'cs-CZ',
'de-DE',
'es-ES',
'es-MX',
'fi-FI',
'fr-FR',
'hi-IN',
'hu-HU',
'ja-JP',
'ko-KR',
'no-NO',
'pl-PL',
'pt-BR',
'ro-RO',
'ru-RU',
'th-TH',
'tr-TR',
'uk-UA',
'vi-VN',
'zh-CN',
'zh-TW',
];
export const NEXT_PUBLIC_DEFAULT_LANGUAGE = env('NEXT_PUBLIC_DEFAULT_LANGUAGE') || locales[0];

View File

@ -0,0 +1,30 @@
{
"actions": "akce",
"announcementList": "Seznam oznámení",
"cancel": "Zrušit",
"confirm": "Potvrdit",
"confirmDelete": "Opravdu chcete smazat?",
"content": "Obsah",
"create": "Vytvořit",
"createAnnouncement": "Vytvořit oznámení",
"createSuccess": "Vytvoření úspěšné",
"delete": "smazat",
"deleteDescription": "Jakmile je odstraněno, data nelze obnovit. Prosím, postupujte opatrně.",
"deleteSuccess": "Úspěšně odstraněno",
"edit": "Upravit",
"editAnnouncement": "Upravit oznámení",
"enable": "Povolit",
"form": {
"cancel": "Zrušit",
"confirm": "Potvrdit",
"content": "Obsah",
"contentPlaceholder": "Zadejte obsah oznámení (podporuje Markdown)",
"title": "Název",
"titlePlaceholder": "Zadejte"
},
"hide": "skrýt",
"show": "Zobrazit",
"title": "Titul",
"updateSuccess": "Aktualizace byla úspěšná",
"updatedAt": "Aktualizováno"
}

View File

@ -0,0 +1,39 @@
{
"check": {
"checking": "Ověřování...",
"continue": "Pokračovat",
"description": "Zadejte svůj e-mail pro pokračování v přihlášení nebo registraci.",
"email": "Zadejte platnou e-mailovou adresu.",
"title": "Přihlášení/Registrace",
"whitelist": "Doména e-mailu není na povoleném seznamu."
},
"login": {
"description": "Zadejte prosím své přihlašovací údaje pro přihlášení.",
"forgotPassword": "Zapomněli jste heslo?",
"success": "Přihlášení bylo úspěšné!",
"switchAccount": "Registrace/Přepnout účet",
"title": "Přihlášení"
},
"logout": "Odhlásit se",
"orWithEmail": "nebo pomocí e-mailu",
"register": {
"description": "Vytvořte si nový účet, vyplňte své údaje pro registraci.",
"existingAccount": "Již máte účet?",
"get": "Získat",
"invite": "Pozvánkový kód",
"message": "#### Vážený uživateli,\n\nDěkujeme za váš zájem a podporu. V důsledku úpravy provozní strategie jsme uzavřeli registraci nových uživatelů. Během této doby nebude používání stávajících účtů nijak ovlivněno.\n\nSnažíme se vám poskytnout lepší služby a zážitky, a proto během uzavření registrace provedeme komplexní optimalizaci systému a aktualizaci funkcí. V budoucnu vás přivítáme s kvalitnějším obsahem a službami.\n\nSledujte naše webové stránky a sociální média pro nejnovější aktualizace a oznámení. Děkujeme za vaše pochopení a podporu.\n\nPokud máte jakékoli dotazy nebo potřebujete pomoc, neváhejte kontaktovat náš zákaznický servis.\n\n**Ještě jednou děkujeme za vaši podporu a pochopení.**",
"passwordMismatch": "Hesla se neshodují",
"success": "Registrace úspěšná, automaticky přihlášeno!",
"switchToLogin": "Přihlásit se/Obnovit e-mail",
"title": "Registrace"
},
"reset": {
"description": "Zadejte svou e-mailovou adresu pro obnovení hesla.",
"existingAccount": "Máte již účet?",
"get": "Získat",
"success": "Obnovení hesla bylo úspěšné, automaticky přepnuto na přihlášení!",
"switchToLogin": "Přihlášení/Registrace",
"title": "Obnovení hesla"
},
"tos": "Podmínky služby"
}

View File

@ -0,0 +1,60 @@
{
"billing": {
"description": "Sponzorství pomáhá PPanelu pokračovat v vydávání aktualizací!",
"title": "Sponzoři"
},
"empty": [
"Představte si, že je to tady plné úžasného obsahu! Zatím si to musíte jen představovat…",
"Tato oblast záhadně zmizela, pracujeme na jejím návratu!",
"Ach, nic se nestalo… můžete sem něco přidat sami!",
"Je to jako na koncertě, kde na pódiu nikdo není… co kdybyste šli vystoupit?",
"Našli jste prázdnou zemi zaslíbenou! Nechcete si postavit dům?",
"Zatím je tu prázdno, ale kreativita začíná právě tady!",
"Nic tu není… ale nebojte se, je to jen začátek!",
"Tady bylo připraveno velké překvapení, ale to se vytratilo!",
"Zatím tu nic není, jako když je skříňka s občerstvením prázdná.",
"Tato prázdná plocha čeká na svého hlavního hrdinu!"
],
"request": {
"10001": "Dotaz zatím nebyl úspěšný, zkuste to prosím později nebo zkontrolujte své podmínky.",
"10002": "Aktualizace nebyla úspěšná, zkuste to prosím později.",
"10003": "Vložení nelze momentálně dokončit, zkuste to prosím později.",
"10004": "Odstranění nebylo možné dokončit, zkuste to prosím později.",
"20001": "Tyto uživatelské informace již existují, zkuste to prosím s jinými informacemi.",
"20002": "Uživatel nebyl nalezen, zkontrolujte prosím informace a zkuste to znovu.",
"20003": "Zadané heslo je nesprávné, zadejte ho prosím znovu.",
"20004": "Tento uživatel byl deaktivován, pokud máte dotazy, kontaktujte zákaznický servis.",
"20005": "Nedostatečný zůstatek, prosím dobijte a zkuste to znovu.",
"20006": "Funkce registrace není momentálně dostupná, zkuste to prosím později.",
"30001": "Tento uzel již existuje, nepřidávejte ho znovu.",
"30002": "Příslušný uzel nebyl nalezen, zkontrolujte a zkuste to znovu.",
"30003": "Skupina již existuje, zkuste použít jiný název.",
"30004": "Skupina nebyla nalezena, zkontrolujte informace a zkuste to znovu.",
"30005": "Ve skupině jsou stále nějaké položky, vyprázdněte ji a zkuste to znovu.",
"400": "Parametry žádosti nejsou správné, zkontrolujte je a odešlete znovu.",
"40002": "Platný token nebyl nalezen, přihlaste se prosím a zkuste to znovu.",
"40003": "Aktuální token je neplatný, získejte nový a zkuste to znovu.",
"40004": "Token vypršel, přihlaste se prosím znovu.",
"40005": "Nemáte oprávnění k přístupu, pokud máte dotazy, kontaktujte správce.",
"401": "Žádáte příliš často, zkuste to prosím později.",
"500": "Server narazil na nějaké problémy, zkuste to prosím později.",
"50001": "Informace o kupónu nebyly nalezeny, zkontrolujte a zkuste to znovu.",
"50002": "Tento kupón již byl použit, nelze ho použít znovu.",
"60001": "Předplatné vypršelo, obnovte ho prosím a použijte znovu.",
"60002": "Toto předplatné nelze momentálně použít, zkuste to prosím později.",
"70001": "Ověřovací kód je nesprávný, zadejte ho prosím znovu.",
"80001": "Úkol nebyl úspěšně přidán do fronty, zkuste to prosím později.",
"90001": "Vypněte prosím režim DEBUG a zkuste to znovu.",
"undefined": "Došlo k chybě systému, zkuste to prosím později."
},
"table": {
"actions": "Akce",
"asc": "Vzestupně",
"desc": "Sestupně",
"hide": "Skrýt",
"pageInfo": "Strana {current} z {total}",
"rowsPerPage": "Řádků na stránku",
"selectedItems": "Vybráno {total} řádků"
},
"unlimited": "neomezený"
}

View File

@ -0,0 +1,50 @@
{
"actions": "akce",
"amount": "Částka",
"cancel": "Zrušit",
"code": "kód",
"confirm": "Potvrdit",
"confirmDelete": "Opravdu chcete smazat?",
"count": "Počet",
"couponList": "Seznam kupónů",
"create": "Vytvořit",
"createCoupon": "Vytvořit kupón",
"createSuccess": "Vytvoření úspěšné",
"delete": "smazat",
"deleteSuccess": "Úspěšně odstraněno",
"deleteWarning": "Jakmile je odstraněno, data nelze obnovit. Prosím, postupujte opatrně.",
"discount": "sleva",
"edit": "Upravit",
"editCoupon": "Upravit kupón",
"enable": "Povolit",
"form": {
"amountDiscount": "Sleva na částku",
"cancel": "Zrušit",
"confirm": "Potvrdit",
"count": "Maximální počet použití",
"countPlaceholder": "Maximální počet použití (ponechte prázdné pro neomezeně)",
"customCouponCode": "Vlastní kód kupónu",
"customCouponCodePlaceholder": "Vlastní kód kupónu (ponechte prázdné pro automatické generování)",
"enterCouponName": "Zadejte název kupónu",
"enterValue": "Zadejte hodnotu",
"expireTime": "Doba platnosti",
"name": "Název",
"percentageDiscount": "Procentuální sleva",
"selectServer": "Vyberte předplatné",
"selectTime": "Vyberte čas",
"specifiedServer": "Určené předplatné",
"startTime": "Čas začátku",
"type": "Typ kupónu",
"userLimit": "Maximální počet použití na uživatele",
"userLimitPlaceholder": "Maximální počet použití na uživatele (ponechte prázdné pro neomezeně)"
},
"name": "Název",
"percentage": "procento",
"remainingTimes": "Zbývající",
"subscribe": "Předplatit",
"type": "Typ",
"unlimited": "neomezený",
"updateSuccess": "Aktualizace byla úspěšná",
"usedTimes": "Použití",
"validityPeriod": "Doba platnosti"
}

View File

@ -0,0 +1,29 @@
{
"DocumentList": "Seznam dokumentů",
"actions": "Akce",
"cancel": "Zrušit",
"confirm": "Potvrdit",
"confirmDelete": "Opravdu chcete smazat?",
"create": "Vytvořit",
"createDocument": "Vytvořit dokument",
"createSuccess": "Vytvoření úspěšné",
"delete": "smazat",
"deleteDescription": "Jakmile je odstraněno, data nelze obnovit. Prosím, postupujte opatrně.",
"deleteSuccess": "Úspěšně odstraněno",
"edit": "Upravit",
"editDocument": "Upravit dokument",
"form": {
"cancel": "Zrušit",
"confirm": "Potvrdit",
"content": "Obsah",
"tags": "Kategorie",
"tagsPlaceholder": "Pro zadání více kategorií použijte klávesu Enter nebo čárku (,).",
"title": "Název",
"titlePlaceholder": "Prosím zadejte"
},
"show": "Zobrazit",
"tags": "Kategorie",
"title": "Titul",
"updateSuccess": "Aktualizace byla úspěšná",
"updatedAt": "Aktualizováno"
}

View File

@ -0,0 +1,29 @@
{
"email": "e-mail",
"month": "Tento měsíc",
"monthDownloadTraffic": "Měsíční objem stažených dat",
"monthUploadTraffic": "Tento měsíc nahraný provoz",
"newPurchase": "Nový nákup",
"nodeTraffic": "Provoz uzlu",
"nodes": "uzly",
"offlineNodeCount": "Počet offline uzlů",
"onlineIPCount": "Počet online IP",
"onlineNodeCount": "Počet online uzlů",
"pendingTickets": "Čekající lístky",
"register": "Registrovat se",
"repurchase": "opětovný nákup",
"revenueTitle": "Statistika příjmů",
"selectTypePlaceholder": "Vyberte typ",
"statisticsTitle": "Statistiky",
"today": "Dnes",
"todayDownloadTraffic": "Dnešní stahovací provoz",
"todayUploadTraffic": "Dnešní nahraný provoz",
"total": "Celkem",
"totalIncome": "Celkový příjem",
"trafficRank": "Pořadí návštěvnosti",
"type": "Typ",
"userTitle": "Statistiky uživatele",
"userTraffic": "Uživatelský provoz",
"users": "uživatelé",
"yesterday": "včera"
}

View File

@ -0,0 +1,24 @@
{
"cs-CZ": "čeština",
"de-DE": "němčina",
"en-US": "angličtina",
"es-ES": "španělština",
"es-MX": "španělština (Mexiko)",
"fi-FI": "finština",
"fr-FR": "Francouzština",
"hi-IN": "hindština",
"hu-HU": "maďarština",
"ja-JP": "Japonština",
"ko-KR": "Korejština",
"no-NO": "norština",
"pl-PL": "polština",
"pt-BR": "portugalština (Brazílie)",
"ro-RO": "rumunština",
"ru-RU": "ruština",
"th-TH": "thajština",
"tr-TR": "turečtina",
"uk-UA": "Ukrajinština",
"vi-VN": "Vietnamština",
"zh-CN": "čeština (CS)",
"zh-TW": "čínština (tradiční)"
}

View File

@ -0,0 +1,18 @@
{
"Announcement Management": "Správa oznámení",
"Coupon Management": "Správa kupónů",
"Dashboard": "Přístrojová deska",
"Document Management": "Správa dokumentů",
"Finance": "Finance",
"Order Management": "Správa objednávek",
"Payment Config": "Konfigurace platby",
"Server": "Server",
"Server Management": "Správa serveru",
"Settings": "Nastavení",
"Subscribe Management": "Správa předplatného",
"System Config": "Systémová konfigurace",
"System Tool": "Systémový nástroj",
"Ticket Management": "Správa lístků",
"User": "Uživatel",
"User Management": "Správa uživatelů"
}

View File

@ -0,0 +1,37 @@
{
"amount": "Částka",
"couponDiscount": "Sleva na kupón",
"discount": "Sleva",
"failed": "selhání",
"feeAmount": "Poplatek",
"method": "Platební metoda",
"methods": {
"alipay_f2f": "Alipay (tváří v tvář)",
"balance": "Zůstatek",
"epay": "Epay",
"stripe_alipay": "Stripe (Alipay)",
"stripe_wechat_pay": "Stripe (WeChat)"
},
"orderNumber": "Číslo objednávky",
"status": {
"0": "Stav",
"1": "Čeká na platbu",
"2": "Zaplaceno",
"3": "Zrušeno",
"4": "Uzavřeno",
"5": "Dokončeno"
},
"subscribe": "Předplatit",
"subscribePrice": "Cena předplatného",
"total": "Celkem",
"tradeNo": "Číslo transakce",
"type": {
"0": "Typ",
"1": "Nový nákup",
"2": "Obnovení",
"3": "Resetování dat",
"4": "Dobití"
},
"updateTime": "Aktualizace času",
"user": "uživatel"
}

View File

@ -0,0 +1,44 @@
{
"aliPay": "Platba Alipay",
"alipayf2f": {
"appId": "ID aplikace Alipay",
"invoiceName": "Název vlastního produktu",
"invoiceNameDescription": "Bude zobrazeno na faktuře Alipay",
"privateKey": "Soukromý klíč Alipay",
"publicKey": "Veřejný klíč Alipay",
"sandbox": "Režim sandbox",
"sandboxDescription": "Povolte režim sandbox pro testování plateb"
},
"enable": "Povolit",
"enableDescription": "Povolit tento způsob platby",
"epay": {
"key": "KLÍČ",
"pid": "PID",
"url": "URL"
},
"feeMode": "Způsob účtování",
"feeModeDescription": "Způsob účtování dodatečných poplatků",
"feeModeItems": ["Bez poplatku", "Procento", "Pevná částka", "Obojí výše uvedené"],
"feePercent": "Procentuální poplatek (volitelně)",
"feePercentDescription": "Přidání poplatku k částce objednávky",
"fixedFee": "Pevný poplatek (volitelný)",
"fixedFeeDescription": "Přidání pevného poplatku k částce objednávky",
"iconUrl": "URL ikony (volitelné)",
"iconUrlDescription": "Používá se pro zobrazení na frontendu",
"inputPlaceholder": "Prosím zadejte",
"key": "KLÍČ",
"notifyUrl": "Vlastní oznámení URL (volitelné)",
"notifyUrlDescription": "Oznámení brány budou odeslána na tuto doménu",
"payForRecommendations": "Zaplatit za doporučení",
"pid": "PID",
"saveSuccess": "Uložení bylo úspěšné",
"showName": "Zobrazit název",
"showNameDescription": "Používá se pro zobrazení na frontendu",
"stripe": {
"publicKey": "VEŘEJNÝ KLÍČ",
"secretKey": "TAJNÝ KLÍČ",
"webhookSecret": "PODPIS WEBHOOK KLÍČE"
},
"url": "URL",
"wechatPay": "WeChat Pay"
}

View File

@ -0,0 +1,122 @@
{
"group": {
"actions": "Akce",
"cancel": "Zrušit",
"confirm": "Potvrdit",
"confirmDelete": "Opravdu chcete smazat?",
"create": "Vytvořit",
"createNodeGroup": "Vytvořit skupinu uzlů",
"createdSuccessfully": "Úspěšně vytvořeno",
"delete": "Smazat",
"deleteWarning": "Po smazání nebude možné data obnovit, prosím, buďte opatrní.",
"deletedSuccessfully": "Úspěšně smazáno",
"description": "Popis",
"edit": "Upravit",
"editNodeGroup": "Upravit skupinu uzlů",
"form": {
"cancel": "Zrušit",
"confirm": "Potvrdit",
"description": "Popis",
"name": "Název"
},
"name": "Název",
"title": "Seznam skupin uzlů",
"updatedAt": "Aktualizováno"
},
"node": {
"abnormal": "Abnormální",
"actions": "Akce",
"address": "Adresa",
"all": "Vše",
"cancel": "Zrušit",
"confirm": "Potvrdit",
"confirmDelete": "Opravdu chcete smazat?",
"create": "Vytvořit",
"createNode": "Vytvořit uzel",
"createSuccess": "Úspěšně vytvořeno",
"delete": "Smazat",
"deleteSuccess": "Úspěšně smazáno",
"deleteWarning": "Po smazání nebude možné data obnovit. Prosím, buďte opatrní.",
"disk": "Disk",
"edit": "Upravit",
"editNode": "Upravit uzel",
"enable": "Povolit",
"form": {
"allowInsecure": "Povolit nezabezpečené",
"cancel": "Zrušit",
"confirm": "Potvrdit",
"edit": "Upravit",
"editSecurity": "Upravit nastavení zabezpečení",
"enableRelay": "Povolit přenos",
"enableTLS": "Povolit TLS",
"encryptionMethod": "Metoda šifrování",
"flow": "Algoritmus řízení toku",
"hopInterval": "Interval skoků",
"hopPorts": "Porty skoků",
"hopPortsPlaceholder": "Více portů oddělených čárkou",
"name": "Název",
"nodeGroupId": "ID skupiny uzlů",
"obfsPassword": "Heslo pro zmatení",
"obfsPasswordPlaceholder": "Nechte prázdné, pokud nechcete zmást",
"path": "Cesta",
"pleaseSelect": "Prosím vyberte",
"port": "Port služby",
"protocol": "Protokol",
"relayHost": "Adresa přenosu",
"relayPort": "Port přenosu",
"remarks": "Poznámky",
"security": "Zabezpečení",
"securityConfig": "Nastavení zabezpečení",
"security_config": {
"fingerprint": "FingerPrint",
"privateKey": "Soukromý klíč",
"privateKeyPlaceholder": "Nechte prázdné pro automatické generování",
"publicKey": "Veřejný klíč",
"publicKeyPlaceholder": "Nechte prázdné pro automatické generování",
"serverAddress": "Adresa serveru",
"serverAddressPlaceholder": "Cílová adresa REALITY, výchozí je SNI",
"serverName": "Název serveru (SNI)",
"serverNamePlaceholder": "REALITY je povinné, musí být shodné s backendem",
"serverPort": "Port serveru",
"serverPortPlaceholder": "Cílový port REALITY, výchozí 443",
"shortId": "ShortId",
"shortIdPlaceholder": "Nechte prázdné pro automatické generování",
"sni": "Indikace názvu serveru (SNI)"
},
"selectEncryptionMethod": "Vyberte metodu šifrování",
"selectNodeGroup": "Vyberte skupinu uzlů",
"selectProtocol": "Vyberte protokol",
"serverAddr": "Adresa serveru",
"serverName": "Název služby",
"speedLimit": "Omezení rychlosti",
"speedLimitPlaceholder": "Bez omezení",
"trafficRatio": "Poměr provozu",
"transport": "Přenosový protokol",
"transportConfig": "Nastavení přenosového protokolu",
"transportHost": "Adresa přenosové služby",
"transportPath": "Cesta přenosu",
"transportServerName": "Název přenosové služby"
},
"lastUpdated": "Poslední aktualizace",
"memory": "Paměť",
"name": "Název",
"node": "Uzel",
"nodeGroup": "Skupina uzlů",
"normal": "Normální",
"onlineCount": "Počet online",
"onlineUsers": "Online uživatelé",
"rate": "Rychlost",
"relay": "Přenos",
"serverAddr": "Adresa serveru",
"speedLimit": "Omezení rychlosti",
"status": "Stav",
"trafficRatio": "Poměr provozu",
"type": "Typ",
"updateSuccess": "Úspěšně aktualizováno",
"updatedAt": "Čas aktualizace"
},
"tabs": {
"node": "Uzlu",
"nodeGroup": "Skupina uzlů"
}
}

View File

@ -0,0 +1,79 @@
{
"actions": "akce",
"cancel": "Zrušit",
"confirm": "Potvrdit",
"confirmDelete": "Opravdu chcete smazat?",
"create": "Vytvořit",
"createSubscribe": "Vytvořit odběr",
"createSuccess": "Vytvoření úspěšné",
"delete": "smazat",
"deleteSuccess": "Úspěšně odstraněno",
"deleteWarning": "Po odstranění nelze data obnovit, prosím, postupujte opatrně.",
"deviceLimit": "Počet zařízení/ks",
"edit": "Upravit",
"editSubscribe": "Upravit odběr",
"form": {
"cancel": "Zrušit",
"confirm": "Potvrdit",
"description": "Popis",
"deviceLimit": "Omezení zařízení",
"discount": "Sleva",
"discountDescription": "Nastavit slevu na základě jednotkové ceny",
"discountMonths": "Měsíce",
"discountPercent": "Procento slevy",
"discount_price": "Cena po slevě",
"duration": "Doba trvání (měsíce)",
"inventory": "Sklad",
"name": "Název",
"noLimit": "Bez omezení",
"quota": "Limit nákupu",
"replacement": "Cena za reset (za každý)",
"selectSubscribeGroup": "Vyberte prosím skupinu předplatného",
"server": "Server",
"serverGroup": "Skupina serverů",
"speedLimit": "Omezení rychlosti (Mbps)",
"subscribeGroup": "Skupina předplatného",
"traffic": "Přenos dat",
"unit_price": "Cena za měsíc"
},
"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": "inventář",
"name": "název",
"quota": "Limit na nákup/čas",
"replacement": "Obnovení ceny/krát",
"sell": "Prodej",
"show": "Zobrazit na hlavní stránce",
"subscribe": "Předplatit",
"subscribeGroup": "Přihlásit se ke skupině",
"tabs": {
"subscribe": "Předplatit",
"subscribeGroup": "Skupina předplatných"
},
"traffic": "provoz",
"unitPrice": "Cena/měsíc",
"updateSuccess": "Aktualizace byla úspěšná"
}

View File

@ -0,0 +1,156 @@
{
"currency": {
"accessKey": "Klíč",
"accessKeyDescription": "https://exchangerate.host poskytuje zdarma klíč k API směnných kurzů",
"currencySymbol": "Symbol měny",
"currencySymbolDescription": "Pouze pro zobrazení, po změně se změní všechny měnové jednotky v systému",
"currencyUnit": "Měnová jednotka",
"currencyUnitDescription": "Pouze pro zobrazení, po změně se změní všechny měnové jednotky v systému",
"saveSuccess": "Úspěšně uloženo"
},
"email": {
"expiration_email_template": "Šablona oznámení o vypršení platnosti",
"expiration_email_templateDescription": "Proměnné {after}.názevProměnné{before} v šabloně budou nahrazeny skutečnými daty, ujistěte se, že tyto proměnné zachováte.",
"inputPlaceholder": "Zadejte obsah...",
"maintenance_email_template": "Šablona oznámení o údržbě",
"maintenance_email_templateDescription": "Proměnné {after}.názevProměnné{before} v šabloně budou nahrazeny skutečnými daty, ujistěte se, že tyto proměnné zachováte.",
"saveSuccess": "Konfigurace byla úspěšně uložena.",
"sendFailure": "Odeslání testovacího e-mailu selhalo, zkontrolujte konfiguraci.",
"sendSuccess": "Testovací e-mail byl úspěšně odeslán.",
"sendTestEmail": "Odeslat testovací e-mail",
"sendTestEmailDescription": "Odešlete testovací e-mail pro ověření správnosti konfigurace.",
"senderAddress": "Adresa odesílatele",
"senderAddressDescription": "Výchozí e-mailová adresa použitá k odesílání e-mailů.",
"smtpAccount": "Účet SMTP",
"smtpAccountDescription": "E-mailový účet pro ověření identity.",
"smtpEncryptionMethod": "Metoda šifrování SMTP",
"smtpEncryptionMethodDescription": "Vyberte, zda povolit šifrování SSL/TLS.",
"smtpPassword": "Heslo SMTP",
"smtpPasswordDescription": "Heslo k účtu SMTP.",
"smtpServerAddress": "Adresa serveru SMTP",
"smtpServerAddressDescription": "Zadejte adresu serveru pro odesílání e-mailů.",
"smtpServerPort": "Port serveru SMTP",
"smtpServerPortDescription": "Zadejte číslo portu pro připojení k serveru SMTP.",
"verify_email_template": "Šablona ověřovacího e-mailu",
"verify_email_templateDescription": "Proměnné {after}.názevProměnné{before} v šabloně budou nahrazeny skutečnými daty, ujistěte se, že tyto proměnné zachováte."
},
"invite": {
"commissionFirstTimeOnly": "Provize pouze při prvním nákupu",
"commissionFirstTimeOnlyDescription": "Po aktivaci se provize generuje pouze při první platbě pozvaného uživatele. Můžete konfigurovat jednotlivé uživatele ve správě uživatelů.",
"enableForcedInvite": "Povolit povinné pozvání",
"enableForcedInviteDescription": "Po aktivaci se mohou registrovat pouze pozvaní uživatelé.",
"inputPlaceholder": "Prosím zadejte",
"inviteCommissionPercentage": "Procento provize za pozvání",
"inviteCommissionPercentageDescription": "Výchozí globální procento rozdělení provize, můžete konfigurovat jednotlivé procento ve správě uživatelů.",
"saveSuccess": "Úspěšně uloženo"
},
"node": {
"communicationKey": "Komunikační klíč",
"communicationKeyDescription": "Klíč pro komunikaci uzlu, aby se zajistilo, že data nebudou zachycena jinými osobami",
"inputPlaceholder": "Prosím zadejte",
"nodePullInterval": "Interval stahování uzlu",
"nodePullIntervalDescription": "Frekvence, s jakou uzel získává data z panelu (v sekundách)",
"nodePushInterval": "Interval odesílání uzlu",
"nodePushIntervalDescription": "Frekvence, s jakou uzel odesílá data do panelu",
"saveSuccess": "Úspěšně uloženo"
},
"register": {
"emailSuffixWhitelist": "Seznam povolených přípon e-mailů",
"emailSuffixWhitelistDescription": "Po aktivaci se mohou registrovat pouze e-maily s příponami uvedenými v seznamu",
"emailVerification": "Ověření e-mailu",
"emailVerificationDescription": "Po aktivaci budou uživatelé muset ověřit svůj e-mail",
"ipRegistrationLimit": "Omezení registrace podle IP",
"ipRegistrationLimitDescription": "Po aktivaci budou IP adresy, které splňují pravidla, omezeny v registraci. Upozorňujeme, že kvůli CDN nebo front-end proxy může dojít k problémům s určením IP adresy",
"penaltyTime": "Doba trestu (minuty)",
"penaltyTimeDescription": "Uživatelé musí počkat, až uplyne doba trestu, než se budou moci znovu registrovat",
"registrationLimitCount": "Počet omezení registrace",
"registrationLimitCountDescription": "Po dosažení limitu registrace se aktivuje trest",
"saveSuccess": "Úspěšně uloženo",
"stopNewUserRegistration": "Zastavit registraci nových uživatelů",
"stopNewUserRegistrationDescription": "Po aktivaci se nikdo nebude moci registrovat",
"trialRegistration": "Zkušební registrace",
"trialRegistrationDescription": "Aktivujte zkušební registraci, nejprve upravte zkušební balíček a dobu trvání",
"whitelistSuffixes": "Povolené přípony",
"whitelistSuffixesDescription": "Používá se pro ověření e-mailu při registraci, jedna přípona na řádek",
"whitelistSuffixesPlaceholder": "Zadejte přípony e-mailů, jednu na řádek"
},
"site": {
"logo": "LOGO",
"logoDescription": "Používá se k zobrazení místa, kde je potřeba zobrazit LOGO",
"logoPlaceholder": "Zadejte URL adresu LOGA, nekončete '/'",
"saveSuccess": "Uložení bylo úspěšné",
"siteDesc": "Popis webu",
"siteDescDescription": "Používá se k zobrazení místa, kde je potřeba zobrazit popis webu",
"siteDescPlaceholder": "Zadejte popis webu",
"siteDomain": "Doména webu",
"siteDomainDescription": "Aktuální adresa domény webu, například pro použití v e-mailech",
"siteDomainPlaceholder": "Zadejte adresu domény, pro více domén použijte jeden řádek pro každou",
"siteName": "Název webu",
"siteNameDescription": "Používá se k zobrazení místa, kde je potřeba zobrazit název webu",
"siteNamePlaceholder": "Zadejte název webu"
},
"subscription": {
"add": "Přidat",
"app": "Aplikace",
"appDescription": "Nastavte adresu pro stažení aplikace a pravidla importu, nezapomeňte po úpravách uložit",
"appDownloadURL": "Adresa pro stažení aplikace",
"appIcon": "Ikona aplikace",
"appName": "Název aplikace",
"delete": "Smazat",
"reset": "Resetovat",
"save": "Uložit",
"saveSuccess": "Úspěšně uloženo",
"singleSubscriptionMode": "Režim jednorázového předplatného",
"singleSubscriptionModeDescription": "Po aktivaci se všechny uživatelské balíčky převedou na zůstatek",
"subscriptionDomain": "Doména předplatného",
"subscriptionDomainDescription": "Používá se pro předplatné, pokud je prázdné, použije se doména webu",
"subscriptionDomainPlaceholder": "Zadejte doménu předplatného, pro více domén použijte jeden řádek pro každou",
"subscriptionPath": "Cesta předplatného",
"subscriptionPathDescription": "Používá se pro předplatné, po úpravě je nutné restartovat systém pro zajištění nejlepšího výkonu",
"subscriptionPathPlaceholder": "Zadejte",
"subscriptionProtocol": "Protokol předplatného",
"wildcardResolution": "Řešení zástupných znaků",
"wildcardResolutionDescription": "Používá se pro předplatné"
},
"tabs": {
"currency": "Měna",
"email": "E-mail",
"invite": "Pozvat",
"node": "Uzlový bod",
"register": "Registrace",
"site": "Stránka",
"subscription": "Předplatné",
"telegram": "Telegram",
"tos": "Podmínky služby",
"verify": "Ověřit"
},
"telegram": {
"botToken": "Token robota",
"botTokenDescription": "Zadejte token poskytnutý Botfatherem",
"enableBotNotifications": "Povolit oznámení robota",
"enableBotNotificationsDescription": "Po povolení bude robot posílat základní oznámení správcům a uživatelům propojeným s Telegramem",
"groupURL": "URL skupiny",
"groupURLDescription": "Po vyplnění se zobrazí na uživatelské straně nebo tam, kde je potřeba",
"inputPlaceholderBotToken": "0000000000:xxxxxxxxx_xxxxxxxxxxxxxxx",
"inputPlaceholderGroupURL": "https://t.me/xxxxxx",
"saveSuccess": "Úspěšně uloženo"
},
"tos": {
"saveSuccess": "Uložení bylo úspěšné",
"title": "Podmínky služby"
},
"verify": {
"inputPlaceholder": "Prosím zadejte",
"loginVerificationCode": "Ověřovací kód pro přihlášení",
"loginVerificationCodeDescription": "Ověření člověka při přihlášení",
"registrationVerificationCode": "Ověřovací kód pro registraci",
"registrationVerificationCodeDescription": "Ověření člověka při registraci",
"resetPasswordVerificationCode": "Ověřovací kód pro resetování hesla",
"resetPasswordVerificationCodeDescription": "Ověření člověka při resetování hesla",
"saveSuccess": "Úspěšně uloženo",
"turnstileSecret": "Turnstile tajný klíč",
"turnstileSecretDescription": "Turnstile tajný klíč poskytovaný Cloudflare",
"turnstileSiteKey": "Turnstile klíč webu",
"turnstileSiteKeyDescription": "Turnstile klíč webu poskytovaný Cloudflare"
}
}

View File

@ -0,0 +1,19 @@
{
"actions": "akce",
"cancel": "Zrušit",
"check": "Zkontrolovat",
"close": "zavřít",
"closeSuccess": "Úspěšně zavřeno",
"closeWarning": "Jakmile je uzavřeno, nebude možné s tímto pracovním příkazem manipulovat. Prosím, postupujte opatrně.",
"confirm": "Potvrdit",
"confirmClose": "Opravdu chcete zavřít?",
"createdAt": "Datum vytvoření",
"inputPlaceholder": "Zadejte svůj dotaz, odpovíme co nejdříve.",
"open": "Otevřít",
"reply": "odpověď",
"status": ["Stav", "Čeká na sledování", "Čeká na odpověď", "Zpracováno", "Uzavřeno"],
"ticketList": "Seznam tiketů",
"title": "Titul",
"updatedAt": "Aktualizováno",
"user": "uživatel"
}

View File

@ -0,0 +1,26 @@
{
"caller": "Volající",
"cancel": "Zrušit",
"confirmReboot": "Potvrdit restart",
"confirmSystemReboot": "Potvrdit restart systému",
"confirmSystemUpgrade": "Potvrdit aktualizaci systému",
"confirmUpgrade": "Potvrdit aktualizaci",
"currentVersion": "Aktuální verze systému:",
"errors": "Chyby",
"ip": "IP",
"lastUpdated": "Poslední aktualizace:",
"none": "Žádný",
"query": "Dotaz",
"rebootDescription": "Opravdu chcete restartovat systém? Tato akce způsobí krátké přerušení služby.",
"rebooting": "Systém se restartuje...",
"refreshLogs": "Obnovit protokoly",
"request": "Žádost",
"status": "Stav",
"systemLogs": "Systémové protokoly",
"systemReboot": "Restart systému",
"systemServices": "Systémové služby",
"systemUpgrade": "Aktualizace systému",
"upgradeDescription": "Jste si jisti, že chcete provést aktualizaci systému? Tato operace může trvat několik minut a během ní může být systém neodpovídající.",
"userAgent": "Uživatelský agent",
"viewLogsAndManage": "Zobrazit systémové protokoly, provádět aktualizace systému a restartovat operace"
}

View File

@ -0,0 +1,38 @@
{
"actions": "akce",
"balance": "Zůstatek",
"cancel": "zrušit",
"confirm": "Potvrdit",
"confirmDelete": "Opravdu chcete smazat?",
"create": "Vytvořit",
"createSuccess": "Vytvoření úspěšné",
"createUser": "Vytvořit uživatele",
"createdAt": "Datum registrace",
"delete": "smazat",
"deleteDescription": "Po odstranění nelze data obnovit, prosím, postupujte opatrně.",
"deleteSuccess": "Úspěšně odstraněno",
"edit": "Upravit",
"editUser": "Upravit uživatele",
"email": "e-mail",
"enable": "Povolit",
"form": {
"balance": "Zůstatek",
"balancePlaceholder": "Zůstatek",
"cancel": "Zrušit",
"confirm": "Potvrdit",
"invalidEmailFormat": "Neplatný formát e-mailu",
"inviteCode": "Pozvánkový kód",
"inviteCodePlaceholder": "Zadejte pozvánkový kód (ponechte prázdné pro automatické generování)",
"manager": "Správce",
"password": "Heslo",
"passwordPlaceholder": "Zadejte nové heslo (může zůstat prázdné)",
"refererId": "ID doporučitele",
"refererIdPlaceholder": "Zadejte ID doporučitele",
"userEmail": "E-mail uživatele",
"userEmailPlaceholder": "Zadejte e-mail uživatele"
},
"referer": "Doporučitel",
"updateSuccess": "Aktualizace byla úspěšná",
"userList": "Seznam uživatelů",
"userName": "Uživatelský e-mail"
}

View File

@ -0,0 +1,30 @@
{
"actions": "Aktionen",
"announcementList": "Ankündigungsliste",
"cancel": "Abbrechen",
"confirm": "Bestätigen",
"confirmDelete": "Sind Sie sicher, dass Sie löschen möchten?",
"content": "Inhalt",
"create": "Erstellen",
"createAnnouncement": "Ankündigung erstellen",
"createSuccess": "Erstellung erfolgreich",
"delete": "Löschen",
"deleteDescription": "Sobald gelöscht, können die Daten nicht wiederhergestellt werden. Bitte gehen Sie vorsichtig vor.",
"deleteSuccess": "Erfolgreich gelöscht",
"edit": "Bearbeiten",
"editAnnouncement": "Ankündigung bearbeiten",
"enable": "Aktivieren",
"form": {
"cancel": "Abbrechen",
"confirm": "Bestätigen",
"content": "Inhalt",
"contentPlaceholder": "Bitte geben Sie den Ankündigungsinhalt ein (Markdown unterstützt)",
"title": "Titel",
"titlePlaceholder": "Bitte eingeben"
},
"hide": "Verbergen",
"show": "Anzeigen",
"title": "Titel",
"updateSuccess": "Aktualisierung erfolgreich",
"updatedAt": "Aktualisierungszeitpunkt"
}

View File

@ -0,0 +1,39 @@
{
"check": {
"checking": "Wird überprüft...",
"continue": "Fortfahren",
"description": "Bitte geben Sie Ihre E-Mail-Adresse ein, um sich anzumelden oder zu registrieren.",
"email": "Bitte geben Sie eine gültige E-Mail-Adresse ein.",
"title": "Anmelden/Registrieren",
"whitelist": "Die E-Mail-Domain befindet sich nicht auf der zugelassenen Whitelist."
},
"login": {
"description": "Bitte geben Sie Ihre Kontoinformationen ein, um sich anzumelden.",
"forgotPassword": "Passwort vergessen?",
"success": "Erfolgreich eingeloggt!",
"switchAccount": "Registrieren/Konto wechseln",
"title": "Anmeldung"
},
"logout": "Abmelden",
"orWithEmail": "oder mit E-Mail",
"register": {
"description": "Erstellen Sie ein neues Konto, indem Sie Ihre Informationen ausfüllen, um sich zu registrieren.",
"existingAccount": "Bereits ein Konto?",
"get": "Erhalten",
"invite": "Einladungscode",
"message": "#### Sehr geehrter Nutzer,\n\nVielen Dank für Ihr Interesse und Ihre Unterstützung. Aufgrund einer Anpassung unserer Betriebsstrategie haben wir die Registrierung für neue Nutzer geschlossen. Während dieser Zeit wird die Nutzung für bestehende Nutzer nicht beeinträchtigt.\n\nWir sind bestrebt, Ihnen einen besseren Service und ein besseres Erlebnis zu bieten, und werden daher während der Schließung der Registrierung umfassende Systemoptimierungen und Funktionsupgrades durchführen. In Zukunft werden wir Sie mit hochwertigeren Inhalten und Dienstleistungen willkommen heißen.\n\nBitte folgen Sie unserer Website und unseren Social-Media-Plattformen, um die neuesten Updates und Benachrichtigungen zu erhalten. Vielen Dank für Ihr Verständnis und Ihre Unterstützung.\n\nBei Fragen oder wenn Sie Hilfe benötigen, kontaktieren Sie bitte jederzeit unser Kundenserviceteam.\n\n**Nochmals vielen Dank für Ihre Unterstützung und Ihr Verständnis.**",
"passwordMismatch": "Die eingegebenen Passwörter stimmen nicht überein",
"success": "Registrierung erfolgreich, Sie sind automatisch eingeloggt!",
"switchToLogin": "Anmelden/E-Mail zurücksetzen",
"title": "Registrieren"
},
"reset": {
"description": "Bitte geben Sie Ihre E-Mail-Adresse ein, um das Passwort zurückzusetzen.",
"existingAccount": "Bereits ein Konto?",
"get": "Erhalten",
"success": "Passwort erfolgreich zurückgesetzt, automatisch zum Login gewechselt!",
"switchToLogin": "Anmelden/Registrieren",
"title": "Passwort zurücksetzen"
},
"tos": "Nutzungsbedingungen"
}

View File

@ -0,0 +1,60 @@
{
"billing": {
"description": "Sponsoring hilft PPanel, weiterhin Updates zu veröffentlichen!",
"title": "Sponsoren"
},
"empty": [
"Stellen Sie sich vor, dieser Bereich wäre voller spannender Inhalte! Im Moment müssen Sie sich das noch vorstellen…",
"Dieser Bereich ist auf mysteriöse Weise verschwunden, wir versuchen, ihn zurückzuholen!",
"Oh je, nichts ist passiert… vielleicht möchten Sie etwas hinzufügen!",
"Das ist, als ob man auf einem Konzert feststellt, dass die Bühne leer ist… wollen Sie auftreten?",
"Sie haben ein leeres Paradies gefunden! Möchten Sie ein Haus bauen?",
"Hier ist momentan nichts, aber Kreativität beginnt genau hier!",
"Nichts ist da… aber keine Sorge, das ist nur der Anfang!",
"Hier war eine große Überraschung geplant, aber sie ist entwischt!",
"Im Moment ist hier nichts, wie ein leerer Snackschrank.",
"Dieser leere Raum wartet darauf, dass der Hauptdarsteller auftritt!"
],
"request": {
"10001": "Die Abfrage war vorübergehend nicht erfolgreich, bitte versuchen Sie es später erneut oder überprüfen Sie Ihre Bedingungen.",
"10002": "Die Aktualisierung war nicht erfolgreich, bitte versuchen Sie es später erneut.",
"10003": "Der Einfügevorgang kann derzeit nicht abgeschlossen werden, bitte versuchen Sie es später erneut.",
"10004": "Der Löschvorgang konnte nicht abgeschlossen werden, bitte versuchen Sie es später erneut.",
"20001": "Diese Benutzerinformationen existieren bereits, bitte ändern Sie die Informationen und versuchen Sie es erneut.",
"20002": "Der Benutzer wurde nicht gefunden, bitte überprüfen Sie die Informationen und versuchen Sie es erneut.",
"20003": "Das eingegebene Passwort ist nicht korrekt, bitte erneut eingeben.",
"20004": "Dieser Benutzer wurde deaktiviert, bei Fragen wenden Sie sich bitte an den Kundenservice.",
"20005": "Unzureichendes Guthaben, bitte aufladen und erneut versuchen.",
"20006": "Die Registrierungsfunktion ist derzeit nicht verfügbar, bitte versuchen Sie es später erneut.",
"30001": "Dieser Knoten existiert bereits, bitte nicht erneut hinzufügen.",
"30002": "Kein relevanter Knoten gefunden, bitte überprüfen und erneut versuchen.",
"30003": "Die Gruppe existiert bereits, bitte versuchen Sie einen anderen Namen zu verwenden.",
"30004": "Die Gruppe wurde nicht gefunden, bitte überprüfen Sie die Informationen und versuchen Sie es erneut.",
"30005": "Die Gruppe enthält noch Inhalte, bitte leeren Sie sie und versuchen Sie es erneut.",
"400": "Die Anforderungsparameter sind nicht korrekt, bitte überprüfen und erneut einreichen.",
"40002": "Kein gültiges Token gefunden, bitte zuerst einloggen und erneut versuchen.",
"40003": "Das aktuelle Token ist ungültig, bitte erneut abrufen und versuchen.",
"40004": "Das Token ist abgelaufen, bitte erneut einloggen.",
"40005": "Sie haben derzeit keine Zugriffsberechtigung, bei Fragen wenden Sie sich bitte an den Administrator.",
"401": "Anfrage zu häufig, bitte versuchen Sie es später erneut.",
"500": "Der Server hat ein Problem festgestellt, bitte versuchen Sie es später erneut.",
"50001": "Die entsprechenden Gutscheininformationen konnten nicht gefunden werden, bitte überprüfen und erneut versuchen.",
"50002": "Dieser Gutschein wurde bereits verwendet und kann nicht erneut verwendet werden.",
"60001": "Das Abonnement ist abgelaufen, bitte erneuern und dann verwenden.",
"60002": "Das Abonnement kann derzeit nicht verwendet werden, bitte versuchen Sie es später erneut.",
"70001": "Der Bestätigungscode ist falsch, bitte erneut eingeben.",
"80001": "Die Aufgabe wurde nicht erfolgreich in die Warteschlange aufgenommen, bitte versuchen Sie es später erneut.",
"90001": "Bitte deaktivieren Sie den DEBUG-Modus und versuchen Sie es erneut.",
"undefined": "Es ist ein Systemfehler aufgetreten, bitte versuchen Sie es später erneut."
},
"table": {
"actions": "Aktionen",
"asc": "Aufsteigend",
"desc": "Absteigend",
"hide": "Verbergen",
"pageInfo": "Seite {current} von {total}",
"rowsPerPage": "Zeilen pro Seite",
"selectedItems": "{total} Zeilen ausgewählt"
},
"unlimited": "Unbegrenzt"
}

View File

@ -0,0 +1,50 @@
{
"actions": "Aktionen",
"amount": "Betrag",
"cancel": "Abbrechen",
"code": "Code",
"confirm": "Bestätigen",
"confirmDelete": "Sind Sie sicher, dass Sie löschen möchten?",
"count": "Anzahl",
"couponList": "Gutscheinliste",
"create": "Erstellen",
"createCoupon": "Gutschein erstellen",
"createSuccess": "Erstellung erfolgreich",
"delete": "Löschen",
"deleteSuccess": "Erfolgreich gelöscht",
"deleteWarning": "Sobald gelöscht, können die Daten nicht wiederhergestellt werden. Bitte vorsichtig vorgehen.",
"discount": "Rabatt",
"edit": "Bearbeiten",
"editCoupon": "Gutschein bearbeiten",
"enable": "Aktivieren",
"form": {
"amountDiscount": "Betragsrabatt",
"cancel": "Abbrechen",
"confirm": "Bestätigen",
"count": "Maximale Nutzungsanzahl",
"countPlaceholder": "Maximale Nutzungsanzahl (leer lassen für unbegrenzt)",
"customCouponCode": "Benutzerdefinierter Gutscheincode",
"customCouponCodePlaceholder": "Benutzerdefinierter Gutscheincode (leer lassen für automatische Generierung)",
"enterCouponName": "Bitte geben Sie den Gutscheinnamen ein",
"enterValue": "Bitte geben Sie den Wert ein",
"expireTime": "Ablaufzeit",
"name": "Name",
"percentageDiscount": "Prozentrabatt",
"selectServer": "Bitte wählen Sie ein Abonnement",
"selectTime": "Zeit auswählen",
"specifiedServer": "Spezifisches Abonnement",
"startTime": "Startzeit",
"type": "Gutscheintyp",
"userLimit": "Maximale Nutzungsanzahl pro Benutzer",
"userLimitPlaceholder": "Maximale Nutzungsanzahl pro Benutzer (leer lassen für unbegrenzt)"
},
"name": "Name",
"percentage": "Prozentsatz",
"remainingTimes": "Verbleibend",
"subscribe": "Abonnieren",
"type": "Typ",
"unlimited": "unbegrenzt",
"updateSuccess": "Aktualisierung erfolgreich",
"usedTimes": "Verwendungsanzahl",
"validityPeriod": "Gültigkeitsdauer"
}

View File

@ -0,0 +1,29 @@
{
"DocumentList": "Dokumentenliste",
"actions": "Aktionen",
"cancel": "Abbrechen",
"confirm": "Bestätigen",
"confirmDelete": "Sind Sie sicher, dass Sie löschen möchten?",
"create": "Erstellen",
"createDocument": "Dokument erstellen",
"createSuccess": "Erstellung erfolgreich",
"delete": "Löschen",
"deleteDescription": "Sobald gelöscht, können die Daten nicht wiederhergestellt werden. Bitte gehen Sie vorsichtig vor.",
"deleteSuccess": "Erfolgreich gelöscht",
"edit": "Bearbeiten",
"editDocument": "Dokument bearbeiten",
"form": {
"cancel": "Abbrechen",
"confirm": "Bestätigen",
"content": "Inhalt",
"tags": "Kategorien",
"tagsPlaceholder": "Bitte mit der Eingabetaste oder Komma (,) trennen, um mehrere Kategorien einzugeben",
"title": "Titel",
"titlePlaceholder": "Bitte eingeben"
},
"show": "Anzeigen",
"tags": "Kategorien",
"title": "Titel",
"updateSuccess": "Aktualisierung erfolgreich",
"updatedAt": "Aktualisierungszeit"
}

View File

@ -0,0 +1,29 @@
{
"email": "E-Mail",
"month": "Diesen Monat",
"monthDownloadTraffic": "Monatlicher Download-Traffic",
"monthUploadTraffic": "Diesen Monat hochgeladener Datenverkehr",
"newPurchase": "Neukauf",
"nodeTraffic": "Knotenverkehr",
"nodes": "Knoten",
"offlineNodeCount": "Anzahl der Offline-Knoten",
"onlineIPCount": "Online-IP-Anzahl",
"onlineNodeCount": "Anzahl der Online-Knoten",
"pendingTickets": "Ausstehende Tickets",
"register": "Registrieren",
"repurchase": "Wiederkauf",
"revenueTitle": "Einnahmenstatistik",
"selectTypePlaceholder": "Typ auswählen",
"statisticsTitle": "Statistik",
"today": "Heute",
"todayDownloadTraffic": "Heutiger Download-Traffic",
"todayUploadTraffic": "Heutiger Upload-Verkehr",
"total": "Gesamt",
"totalIncome": "Gesamteinkommen",
"trafficRank": "Verkehrsrangliste",
"type": "Typ",
"userTitle": "Nutzerstatistik",
"userTraffic": "Benutzerverkehr",
"users": "Benutzer",
"yesterday": "Gestern"
}

View File

@ -0,0 +1,24 @@
{
"cs-CZ": "Tschechisch",
"de-DE": "Deutsch",
"en-US": "Englisch",
"es-ES": "Spanisch",
"es-MX": "Spanisch (Mexiko)",
"fi-FI": "Finnisch",
"fr-FR": "Französisch",
"hi-IN": "Hindi",
"hu-HU": "Ungarisch",
"ja-JP": "Japanisch",
"ko-KR": "Koreanisch",
"no-NO": "Norwegisch",
"pl-PL": "Polnisch",
"pt-BR": "Portugiesisch (Brasilien)",
"ro-RO": "Rumänisch",
"ru-RU": "Russisch",
"th-TH": "Thailändisch",
"tr-TR": "Türkisch",
"uk-UA": "Ukrainisch",
"vi-VN": "Vietnamesisch",
"zh-CN": "Chinesisch (vereinfacht)",
"zh-TW": "Chinesisch (Traditionell)"
}

View File

@ -0,0 +1,18 @@
{
"Announcement Management": "Ankündigungsverwaltung",
"Coupon Management": "Gutscheinverwaltung",
"Dashboard": "Armaturenbrett",
"Document Management": "Dokumentenverwaltung",
"Finance": "Finanzen",
"Order Management": "Bestellverwaltung",
"Payment Config": "Zahlungskonfiguration",
"Server": "Dienst",
"Server Management": "Serververwaltung",
"Settings": "Einstellungen",
"Subscribe Management": "Abonnementverwaltung",
"System Config": "Systemkonfiguration",
"System Tool": "Systemwerkzeug",
"Ticket Management": "Ticketverwaltung",
"User": "Benutzer",
"User Management": "Benutzerverwaltung"
}

View File

@ -0,0 +1,37 @@
{
"amount": "Betrag",
"couponDiscount": "Gutscheinrabatt",
"discount": "Rabattbetrag",
"failed": "Fehlgeschlagen",
"feeAmount": "Gebühr",
"method": "Zahlungsmethode",
"methods": {
"alipay_f2f": "Alipay (Face-to-Face)",
"balance": "Guthaben",
"epay": "E-Pay",
"stripe_alipay": "Stripe (Alipay)",
"stripe_wechat_pay": "Stripe (WeChat)"
},
"orderNumber": "Bestellnummer",
"status": {
"0": "Status",
"1": "Ausstehende Zahlung",
"2": "Bezahlt",
"3": "Storniert",
"4": "Geschlossen",
"5": "Abgeschlossen"
},
"subscribe": "Abonnieren",
"subscribePrice": "Abonnementspreis",
"total": "Gesamt",
"tradeNo": "Handelsnummer",
"type": {
"0": "Typ",
"1": "Neukauf",
"2": "Verlängerung",
"3": "Datenvolumen zurücksetzen",
"4": "Aufladen"
},
"updateTime": "Aktualisierungszeit",
"user": "Benutzer"
}

View File

@ -0,0 +1,44 @@
{
"aliPay": "Alipay-Zahlung",
"alipayf2f": {
"appId": "Alipay Anwendungs-ID",
"invoiceName": "Benutzerdefinierter Produktname",
"invoiceNameDescription": "Wird in der Alipay-Rechnung angezeigt",
"privateKey": "Alipay Privatschlüssel",
"publicKey": "Alipay Öffentlicher Schlüssel",
"sandbox": "Sandbox-Modus",
"sandboxDescription": "Aktivieren Sie den Sandbox-Modus, um Zahlungen zu testen"
},
"enable": "Aktivieren",
"enableDescription": "Diese Zahlungsmethode aktivieren",
"epay": {
"key": "SCHLÜSSEL",
"pid": "PID",
"url": "URL"
},
"feeMode": "Gebührenmodus",
"feeModeDescription": "Gebührenmodus für zusätzliche Gebühren",
"feeModeItems": ["Keine Gebühr", "Prozentsatz", "Fester Betrag", "Beides"],
"feePercent": "Prozentgebühr (optional)",
"feePercentDescription": "Gebühren werden zusätzlich zum Bestellbetrag hinzugefügt",
"fixedFee": "Feste Gebühr (optional)",
"fixedFeeDescription": "Feste Gebühr zusätzlich zum Bestellbetrag hinzufügen",
"iconUrl": "Symbol-URL (optional)",
"iconUrlDescription": "Zur Anzeige im Frontend verwendet",
"inputPlaceholder": "Bitte eingeben",
"key": "SCHLÜSSEL",
"notifyUrl": "Benutzerdefinierte Benachrichtigungs-URL (optional)",
"notifyUrlDescription": "Gateway-Benachrichtigungen werden an diese Domain gesendet",
"payForRecommendations": "Für Empfehlungen bezahlen",
"pid": "PID",
"saveSuccess": "Erfolgreich gespeichert",
"showName": "Anzeigename",
"showNameDescription": "Zur Anzeige im Frontend verwendet",
"stripe": {
"publicKey": "ÖFFENTLICHER SCHLÜSSEL",
"secretKey": "GEHEIMER SCHLÜSSEL",
"webhookSecret": "WEBHOOK-SCHLÜSSEL-SIGNATUR"
},
"url": "URL",
"wechatPay": "WeChat Pay"
}

View File

@ -0,0 +1,122 @@
{
"group": {
"actions": "Aktionen",
"cancel": "Abbrechen",
"confirm": "Bestätigen",
"confirmDelete": "Möchten Sie wirklich löschen?",
"create": "Erstellen",
"createNodeGroup": "Knoten-Gruppe erstellen",
"createdSuccessfully": "Erfolgreich erstellt",
"delete": "Löschen",
"deleteWarning": "Nach dem Löschen können die Daten nicht wiederhergestellt werden, bitte vorsichtig vorgehen.",
"deletedSuccessfully": "Erfolgreich gelöscht",
"description": "Beschreibung",
"edit": "Bearbeiten",
"editNodeGroup": "Knoten-Gruppe bearbeiten",
"form": {
"cancel": "Abbrechen",
"confirm": "Bestätigen",
"description": "Beschreibung",
"name": "Name"
},
"name": "Name",
"title": "Liste der Knoten-Gruppen",
"updatedAt": "Aktualisierungszeit"
},
"node": {
"abnormal": "Abnormalität",
"actions": "Aktionen",
"address": "Adresse",
"all": "Alle",
"cancel": "Abbrechen",
"confirm": "Bestätigen",
"confirmDelete": "Möchten Sie wirklich löschen?",
"create": "Erstellen",
"createNode": "Knoten erstellen",
"createSuccess": "Erfolgreich erstellt",
"delete": "Löschen",
"deleteSuccess": "Erfolgreich gelöscht",
"deleteWarning": "Nach dem Löschen können die Daten nicht wiederhergestellt werden. Bitte vorsichtig vorgehen.",
"disk": "Festplatte",
"edit": "Bearbeiten",
"editNode": "Knoten bearbeiten",
"enable": "Aktivieren",
"form": {
"allowInsecure": "Unsicher zulassen",
"cancel": "Abbrechen",
"confirm": "Bestätigen",
"edit": "Bearbeiten",
"editSecurity": "Sicherheitskonfiguration bearbeiten",
"enableRelay": "Relay aktivieren",
"enableTLS": "TLS aktivieren",
"encryptionMethod": "Verschlüsselungsmethode",
"flow": "Flusskontrollalgorithmus",
"hopInterval": "Sprungintervall",
"hopPorts": "Sprungports",
"hopPortsPlaceholder": "Mehrere Ports durch Kommas trennen",
"name": "Name",
"nodeGroupId": "Knotengruppen-ID",
"obfsPassword": "Verschleierungspasswort",
"obfsPasswordPlaceholder": "Leer lassen für keine Verschleierung",
"path": "Pfad",
"pleaseSelect": "Bitte auswählen",
"port": "Serverport",
"protocol": "Protokoll",
"relayHost": "Relay-Adresse",
"relayPort": "Relay-Port",
"remarks": "Bemerkungen",
"security": "Sicherheit",
"securityConfig": "Sicherheitskonfiguration",
"security_config": {
"fingerprint": "Fingerabdruck",
"privateKey": "Privater Schlüssel",
"privateKeyPlaceholder": "Leer lassen für automatische Generierung",
"publicKey": "Öffentlicher Schlüssel",
"publicKeyPlaceholder": "Leer lassen für automatische Generierung",
"serverAddress": "Serveradresse",
"serverAddressPlaceholder": "REALITY-Zieladresse, standardmäßig SNI verwenden",
"serverName": "Servername (SNI)",
"serverNamePlaceholder": "REALITY erforderlich, mit Backend übereinstimmen",
"serverPort": "Serverport",
"serverPortPlaceholder": "REALITY-Zielport, standardmäßig 443",
"shortId": "Kurz-ID",
"shortIdPlaceholder": "Leer lassen für automatische Generierung",
"sni": "Server Name Indication (SNI)"
},
"selectEncryptionMethod": "Verschlüsselungsmethode auswählen",
"selectNodeGroup": "Knotengruppe auswählen",
"selectProtocol": "Protokoll auswählen",
"serverAddr": "Serveradresse",
"serverName": "Dienstname",
"speedLimit": "Geschwindigkeitsbegrenzung",
"speedLimitPlaceholder": "Keine Begrenzung",
"trafficRatio": "Verkehrsrate",
"transport": "Transportprotokoll",
"transportConfig": "Transportprotokollkonfiguration",
"transportHost": "Transportdienstadresse",
"transportPath": "Transportpfad",
"transportServerName": "Transportdienstname"
},
"lastUpdated": "Zuletzt aktualisiert",
"memory": "Speicher",
"name": "Name",
"node": "Knoten",
"nodeGroup": "Knotengruppe",
"normal": "Normal",
"onlineCount": "Online-Anzahl",
"onlineUsers": "Online-Benutzer",
"rate": "Rate",
"relay": "Relais",
"serverAddr": "Serveradresse",
"speedLimit": "Geschwindigkeitsbegrenzung",
"status": "Status",
"trafficRatio": "Verkehrsrate",
"type": "Typ",
"updateSuccess": "Erfolgreich aktualisiert",
"updatedAt": "Aktualisierungszeit"
},
"tabs": {
"node": "Knoten",
"nodeGroup": "Knotengruppe"
}
}

View File

@ -0,0 +1,79 @@
{
"actions": "Aktionen",
"cancel": "Abbrechen",
"confirm": "Bestätigen",
"confirmDelete": "Möchten Sie wirklich löschen?",
"create": "Erstellen",
"createSubscribe": "Neues Abonnement erstellen",
"createSuccess": "Erstellung erfolgreich",
"delete": "Löschen",
"deleteSuccess": "Erfolgreich gelöscht",
"deleteWarning": "Nach dem Löschen können die Daten nicht wiederhergestellt werden. Bitte gehen Sie vorsichtig vor.",
"deviceLimit": "Geräteanzahl/Stück",
"edit": "Bearbeiten",
"editSubscribe": "Abonnement bearbeiten",
"form": {
"cancel": "Abbrechen",
"confirm": "Bestätigen",
"description": "Beschreibung",
"deviceLimit": "Gerätebeschränkung",
"discount": "Rabatt",
"discountDescription": "Rabatt basierend auf Einzelpreis",
"discountMonths": "Monate",
"discountPercent": "Rabattprozentsatz",
"discount_price": "Rabattpreis",
"duration": "Dauer (Monate)",
"inventory": "Bestand",
"name": "Name",
"noLimit": "Keine Begrenzung",
"quota": "Kaufbeschränkung",
"replacement": "Ersatzpreis (pro Mal)",
"selectSubscribeGroup": "Bitte Abonnementgruppe auswählen",
"server": "Dienst",
"serverGroup": "Dienstgruppe",
"speedLimit": "Geschwindigkeitsbegrenzung (Mbps)",
"subscribeGroup": "Abonnementgruppe",
"traffic": "Datenvolumen",
"unit_price": "Monatspreis"
},
"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": "Inventar",
"name": "Name",
"quota": "Kaufbeschränkung/pro Einkauf",
"replacement": "Preis pro Zurücksetzung",
"sell": "Verkauf",
"show": "Startseite anzeigen",
"subscribe": "Abonnieren",
"subscribeGroup": "Gruppe abonnieren",
"tabs": {
"subscribe": "Abonnieren",
"subscribeGroup": "Abonnieren Gruppe"
},
"traffic": "Verkehr",
"unitPrice": "Preis/Monat",
"updateSuccess": "Aktualisierung erfolgreich"
}

View File

@ -0,0 +1,156 @@
{
"currency": {
"accessKey": "Zugangsschlüssel",
"accessKeyDescription": "https://exchangerate.host bietet kostenlos bereitgestellte API-Schlüssel für Wechselkurse an",
"currencySymbol": "Währungssymbol",
"currencySymbolDescription": "Nur zur Anzeige verwendet, nach der Änderung werden alle Währungseinheiten im System geändert",
"currencyUnit": "Währungseinheit",
"currencyUnitDescription": "Nur zur Anzeige verwendet, nach der Änderung werden alle Währungseinheiten im System geändert",
"saveSuccess": "Erfolgreich gespeichert"
},
"email": {
"expiration_email_template": "Ablaufbenachrichtigungsvorlage",
"expiration_email_templateDescription": "Die Variablennamen {after}.Variable{before} im Template werden durch tatsächliche Daten ersetzt. Bitte stellen Sie sicher, dass diese Variablen erhalten bleiben.",
"inputPlaceholder": "Bitte Inhalt eingeben...",
"maintenance_email_template": "Wartungsbenachrichtigungsvorlage",
"maintenance_email_templateDescription": "Die Variablennamen {after}.Variable{before} im Template werden durch tatsächliche Daten ersetzt. Bitte stellen Sie sicher, dass diese Variablen erhalten bleiben.",
"saveSuccess": "Die Konfiguration wurde erfolgreich gespeichert.",
"sendFailure": "Der Versand der Test-E-Mail ist fehlgeschlagen. Bitte überprüfen Sie die Konfiguration.",
"sendSuccess": "Die Test-E-Mail wurde erfolgreich gesendet.",
"sendTestEmail": "Test-E-Mail senden",
"sendTestEmailDescription": "Senden Sie eine Test-E-Mail, um zu überprüfen, ob die Konfiguration korrekt ist.",
"senderAddress": "Absenderadresse",
"senderAddressDescription": "Standard-E-Mail-Adresse, die zum Senden von E-Mails verwendet wird.",
"smtpAccount": "SMTP-Konto",
"smtpAccountDescription": "E-Mail-Konto zur Authentifizierung.",
"smtpEncryptionMethod": "SMTP-Verschlüsselungsmethode",
"smtpEncryptionMethodDescription": "Wählen Sie, ob SSL/TLS-Verschlüsselung aktiviert werden soll.",
"smtpPassword": "SMTP-Passwort",
"smtpPasswordDescription": "Das Passwort für das SMTP-Konto.",
"smtpServerAddress": "SMTP-Serveradresse",
"smtpServerAddressDescription": "Geben Sie die Serveradresse zum Senden von E-Mails an.",
"smtpServerPort": "SMTP-Serverport",
"smtpServerPortDescription": "Geben Sie die Portnummer für die Verbindung zum SMTP-Server an.",
"verify_email_template": "Verifizierungsmailvorlage",
"verify_email_templateDescription": "Die Variablennamen {after}.Variable{before} im Template werden durch tatsächliche Daten ersetzt. Bitte stellen Sie sicher, dass diese Variablen erhalten bleiben."
},
"invite": {
"commissionFirstTimeOnly": "Nur Provision beim ersten Kauf",
"commissionFirstTimeOnlyDescription": "Nach Aktivierung wird die Provision nur bei der ersten Zahlung des Eingeladenen generiert. Sie können in der Benutzerverwaltung einen individuellen Benutzer konfigurieren.",
"enableForcedInvite": "Erzwungene Einladung aktivieren",
"enableForcedInviteDescription": "Nach Aktivierung können sich nur eingeladene Benutzer registrieren.",
"inputPlaceholder": "Bitte eingeben",
"inviteCommissionPercentage": "Einladungsprovisionsprozentsatz",
"inviteCommissionPercentageDescription": "Standardmäßiger globaler Provisionsverteilungssatz. Sie können in der Benutzerverwaltung einen individuellen Satz konfigurieren.",
"saveSuccess": "Erfolgreich gespeichert"
},
"node": {
"communicationKey": "Kommunikationsschlüssel",
"communicationKeyDescription": "Schlüssel für die Kommunikation des Knotens, um sicherzustellen, dass Daten nicht von anderen abgefangen werden",
"inputPlaceholder": "Bitte eingeben",
"nodePullInterval": "Knotenabfrageintervall",
"nodePullIntervalDescription": "Häufigkeit, mit der der Knoten Daten vom Panel abruft (Sekunden)",
"nodePushInterval": "Knotenübertragungsintervall",
"nodePushIntervalDescription": "Häufigkeit, mit der der Knoten Daten an das Panel überträgt",
"saveSuccess": "Erfolgreich gespeichert"
},
"register": {
"emailSuffixWhitelist": "E-Mail-Suffix-Whitelist",
"emailSuffixWhitelistDescription": "Wenn aktiviert, können sich nur E-Mails mit den in der Liste enthaltenen Suffixen registrieren",
"emailVerification": "E-Mail-Verifizierung",
"emailVerificationDescription": "Wenn aktiviert, müssen Benutzer ihre E-Mail verifizieren",
"ipRegistrationLimit": "IP-Registrierungsbeschränkung",
"ipRegistrationLimitDescription": "Wenn aktiviert, werden IPs, die den Regelanforderungen entsprechen, in der Registrierung eingeschränkt. Bitte beachten Sie, dass die Bestimmung der IP aufgrund von CDN oder Frontend-Proxy zu Problemen führen kann",
"penaltyTime": "Strafzeit (Minuten)",
"penaltyTimeDescription": "Benutzer müssen die Strafzeit abwarten, bevor sie sich erneut registrieren können",
"registrationLimitCount": "Registrierungsbeschränkungsanzahl",
"registrationLimitCountDescription": "Nach Erreichen der Registrierungsbeschränkung wird die Strafe aktiviert",
"saveSuccess": "Erfolgreich gespeichert",
"stopNewUserRegistration": "Registrierung neuer Benutzer stoppen",
"stopNewUserRegistrationDescription": "Wenn aktiviert, kann sich niemand registrieren",
"trialRegistration": "Testregistrierung",
"trialRegistrationDescription": "Testregistrierung aktivieren, bitte zuerst Testpaket und -dauer ändern",
"whitelistSuffixes": "Whitelist-Suffixe",
"whitelistSuffixesDescription": "Für die E-Mail-Verifizierung bei der Registrierung, ein Suffix pro Zeile",
"whitelistSuffixesPlaceholder": "Bitte geben Sie E-Mail-Suffixe ein, eines pro Zeile"
},
"site": {
"logo": "LOGO",
"logoDescription": "Position zur Anzeige des LOGOs",
"logoPlaceholder": "Bitte geben Sie die URL-Adresse des LOGOs ein, ohne '/' am Ende",
"saveSuccess": "Erfolgreich gespeichert",
"siteDesc": "Seitenbeschreibung",
"siteDescDescription": "Position zur Anzeige der Seitenbeschreibung",
"siteDescPlaceholder": "Bitte geben Sie die Seitenbeschreibung ein",
"siteDomain": "Seitendomäne",
"siteDomainDescription": "Die aktuelle Domain-Adresse der Website, z.B. für E-Mails",
"siteDomainPlaceholder": "Bitte geben Sie die Domain-Adresse ein, bei mehreren Domains bitte eine pro Zeile",
"siteName": "Seitenname",
"siteNameDescription": "Position zur Anzeige des Seitennamens",
"siteNamePlaceholder": "Bitte geben Sie den Seitennamen ein"
},
"subscription": {
"add": "Hinzufügen",
"app": "Anwendung",
"appDescription": "Konfigurieren Sie die Download-Adresse und Importregeln der App. Vergessen Sie nicht, nach Änderungen zu speichern.",
"appDownloadURL": "App-Download-Adresse",
"appIcon": "App-Symbol",
"appName": "App-Name",
"delete": "Löschen",
"reset": "Zurücksetzen",
"save": "Speichern",
"saveSuccess": "Erfolgreich gespeichert",
"singleSubscriptionMode": "Einzelabonnement-Modus",
"singleSubscriptionModeDescription": "Wenn aktiviert, werden alle Benutzerpakete in Guthaben umgewandelt.",
"subscriptionDomain": "Abonnement-Domain",
"subscriptionDomainDescription": "Für Abonnements, leer lassen, um die Site-Domain zu verwenden",
"subscriptionDomainPlaceholder": "Bitte geben Sie die Abonnement-Domain ein, bei mehreren Domains bitte eine pro Zeile",
"subscriptionPath": "Abonnement-Pfad",
"subscriptionPathDescription": "Für Abonnements, bitte starten Sie das System nach Änderungen neu, um die beste Leistung zu gewährleisten",
"subscriptionPathPlaceholder": "Bitte eingeben",
"subscriptionProtocol": "Abonnement-Protokoll",
"wildcardResolution": "Wildcard-Auflösung",
"wildcardResolutionDescription": "Für Abonnements"
},
"tabs": {
"currency": "Währung",
"email": "E-Mail",
"invite": "Einladen",
"node": "Knoten",
"register": "Registrieren",
"site": "Seite",
"subscription": "Abonnement",
"telegram": "Telegram",
"tos": "Nutzungsbedingungen",
"verify": "Verifizieren"
},
"telegram": {
"botToken": "Bot-Token",
"botTokenDescription": "Bitte geben Sie das von Botfather bereitgestellte Token ein",
"enableBotNotifications": "Bot-Benachrichtigungen aktivieren",
"enableBotNotificationsDescription": "Nach Aktivierung sendet der Bot grundlegende Benachrichtigungen an Administratoren und Benutzer, die mit Telegram verbunden sind",
"groupURL": "Gruppen-URL",
"groupURLDescription": "Nach Eingabe wird sie auf der Benutzerseite angezeigt oder dort verwendet, wo sie benötigt wird",
"inputPlaceholderBotToken": "0000000000:xxxxxxxxx_xxxxxxxxxxxxxxx",
"inputPlaceholderGroupURL": "https://t.me/xxxxxx",
"saveSuccess": "Erfolgreich gespeichert"
},
"tos": {
"saveSuccess": "Erfolgreich gespeichert",
"title": "Nutzungsbedingungen"
},
"verify": {
"inputPlaceholder": "Bitte eingeben",
"loginVerificationCode": "Anmeldebestätigungscode",
"loginVerificationCodeDescription": "Mensch-Maschine-Verifizierung bei der Anmeldung",
"registrationVerificationCode": "Registrierungsbestätigungscode",
"registrationVerificationCodeDescription": "Mensch-Maschine-Verifizierung bei der Registrierung",
"resetPasswordVerificationCode": "Passwort-zurücksetzen-Bestätigungscode",
"resetPasswordVerificationCodeDescription": "Mensch-Maschine-Verifizierung beim Zurücksetzen des Passworts",
"saveSuccess": "Erfolgreich gespeichert",
"turnstileSecret": "Turnstile-Schlüssel",
"turnstileSecretDescription": "Von Cloudflare bereitgestellter Turnstile-Schlüssel",
"turnstileSiteKey": "Turnstile-Standortschlüssel",
"turnstileSiteKeyDescription": "Von Cloudflare bereitgestellter Turnstile-Standortschlüssel"
}
}

View File

@ -0,0 +1,19 @@
{
"actions": "Aktionen",
"cancel": "Abbrechen",
"check": "Prüfen",
"close": "Schließen",
"closeSuccess": "Erfolgreich geschlossen",
"closeWarning": "Sobald Sie schließen, kann dieses Ticket nicht mehr bearbeitet werden. Bitte gehen Sie vorsichtig vor.",
"confirm": "Bestätigen",
"confirmClose": "Möchten Sie wirklich schließen?",
"createdAt": "Erstellungszeitpunkt",
"inputPlaceholder": "Bitte geben Sie Ihre Frage ein, wir werden so schnell wie möglich antworten.",
"open": "Öffnen",
"reply": "Antwort",
"status": ["Status", "Zu folgen", "Zu beantworten", "Bearbeitet", "Geschlossen"],
"ticketList": "Ticketliste",
"title": "Titel",
"updatedAt": "Aktualisierungszeit",
"user": "Benutzer"
}

View File

@ -0,0 +1,26 @@
{
"caller": "Anrufer",
"cancel": "Abbrechen",
"confirmReboot": "Neustart bestätigen",
"confirmSystemReboot": "Systemneustart bestätigen",
"confirmSystemUpgrade": "Systemaktualisierung bestätigen",
"confirmUpgrade": "Upgrade bestätigen",
"currentVersion": "Aktuelle Systemversion:",
"errors": "Fehler",
"ip": "IP",
"lastUpdated": "Zuletzt aktualisiert:",
"none": "Keine",
"query": "Abfrage",
"rebootDescription": "Möchten Sie das System wirklich neu starten? Dieser Vorgang führt zu einer kurzen Unterbrechung des Dienstes.",
"rebooting": "System wird neu gestartet...",
"refreshLogs": "Protokolle aktualisieren",
"request": "Anfrage",
"status": "Status",
"systemLogs": "Systemprotokolle",
"systemReboot": "Systemneustart",
"systemServices": "Systemdienste",
"systemUpgrade": "Systemaktualisierung",
"upgradeDescription": "Möchten Sie das System-Upgrade wirklich durchführen? Dieser Vorgang kann einige Minuten dauern, währenddessen das System möglicherweise nicht reagiert.",
"userAgent": "Benutzeragent",
"viewLogsAndManage": "Systemprotokolle anzeigen, Systemaktualisierungen durchführen und Neustartvorgänge ausführen"
}

View File

@ -0,0 +1,38 @@
{
"actions": "Aktionen",
"balance": "Kontostand",
"cancel": "Abbrechen",
"confirm": "Bestätigen",
"confirmDelete": "Sind Sie sicher, dass Sie löschen möchten?",
"create": "Erstellen",
"createSuccess": "Erstellung erfolgreich",
"createUser": "Benutzer erstellen",
"createdAt": "Registrierungsdatum",
"delete": "Löschen",
"deleteDescription": "Nach dem Löschen können die Daten nicht wiederhergestellt werden. Bitte gehen Sie vorsichtig vor.",
"deleteSuccess": "Erfolgreich gelöscht",
"edit": "Bearbeiten",
"editUser": "Benutzer bearbeiten",
"email": "E-Mail",
"enable": "Aktivieren",
"form": {
"balance": "Kontostand",
"balancePlaceholder": "Kontostand",
"cancel": "Abbrechen",
"confirm": "Bestätigen",
"invalidEmailFormat": "Ungültiges E-Mail-Format",
"inviteCode": "Einladungscode",
"inviteCodePlaceholder": "Bitte Einladungscode eingeben (leer lassen für automatische Generierung)",
"manager": "Administrator",
"password": "Passwort",
"passwordPlaceholder": "Bitte neues Passwort eingeben (kann leer bleiben)",
"refererId": "Empfehler-ID",
"refererIdPlaceholder": "Bitte Empfehler-ID eingeben",
"userEmail": "Benutzer-E-Mail",
"userEmailPlaceholder": "Bitte Benutzer-E-Mail eingeben"
},
"referer": "Empfehler",
"updateSuccess": "Aktualisierung erfolgreich",
"userList": "Benutzerliste",
"userName": "Benutzer-E-Mail"
}

View File

@ -0,0 +1,30 @@
{
"actions": "acciones",
"announcementList": "Lista de anuncios",
"cancel": "Cancelar",
"confirm": "Confirmar",
"confirmDelete": "¿Está seguro de que desea eliminar?",
"content": "contenido",
"create": "crear",
"createAnnouncement": "Crear anuncio",
"createSuccess": "Creación exitosa",
"delete": "eliminar",
"deleteDescription": "Una vez eliminado, los datos no se podrán recuperar. Proceda con precaución.",
"deleteSuccess": "Eliminación exitosa",
"edit": "editar",
"editAnnouncement": "Editar anuncio",
"enable": "Habilitar",
"form": {
"cancel": "Cancelar",
"confirm": "Confirmar",
"content": "Contenido",
"contentPlaceholder": "Por favor, introduce el contenido del anuncio (se admite Markdown)",
"title": "Título",
"titlePlaceholder": "Por favor, introduce"
},
"hide": "Ocultar",
"show": "mostrar",
"title": "Título",
"updateSuccess": "Actualización exitosa",
"updatedAt": "Actualizado en"
}

View File

@ -0,0 +1,39 @@
{
"check": {
"checking": "Verificando...",
"continue": "Continuar",
"description": "Por favor, introduce tu correo electrónico para continuar con el inicio de sesión o registro.",
"email": "Por favor, introduce una dirección de correo electrónico válida.",
"title": "Iniciar sesión/Registrarse",
"whitelist": "El dominio del correo electrónico no está en la lista blanca permitida."
},
"login": {
"description": "Por favor, introduzca su información de cuenta para iniciar sesión.",
"forgotPassword": "¿Olvidó su contraseña?",
"success": "¡Inicio de sesión exitoso!",
"switchAccount": "Registrar/Cambiar cuenta",
"title": "Iniciar sesión"
},
"logout": "Cerrar sesión",
"orWithEmail": "o con correo electrónico",
"register": {
"description": "Crea una nueva cuenta, completa tu información para registrarte.",
"existingAccount": "¿Ya tienes una cuenta?",
"get": "Obtener",
"invite": "Código de invitación",
"message": "#### ¡Estimado usuario!\n\nGracias por su interés y apoyo. Debido a un ajuste en la estrategia de operación del sitio, hemos cerrado la función de registro para nuevos usuarios. Durante este período, el uso por parte de los usuarios existentes no se verá afectado.\n\nNos comprometemos a brindarle un mejor servicio y experiencia, por lo que realizaremos una optimización completa del sistema y una actualización de funciones durante el cierre del registro. En el futuro, le daremos la bienvenida con contenido y servicios de mayor calidad.\n\nPor favor, siga nuestro sitio web y plataformas de redes sociales para obtener las últimas actualizaciones y notificaciones. Agradecemos su comprensión y apoyo.\n\nSi tiene alguna pregunta o necesita ayuda, no dude en ponerse en contacto con nuestro equipo de atención al cliente.\n\n**Nuevamente, gracias por su apoyo y comprensión.**",
"passwordMismatch": "Las contraseñas no coinciden",
"success": "¡Registro exitoso, sesión iniciada automáticamente!",
"switchToLogin": "Iniciar sesión/restablecer correo electrónico",
"title": "Registro"
},
"reset": {
"description": "Por favor, introduzca su dirección de correo electrónico para restablecer la contraseña.",
"existingAccount": "¿Ya tienes una cuenta?",
"get": "Obtener",
"success": "¡Contraseña restablecida con éxito, se ha cambiado automáticamente a iniciar sesión!",
"switchToLogin": "Iniciar sesión/Registrarse",
"title": "Restablecer contraseña"
},
"tos": "Términos del servicio"
}

View File

@ -0,0 +1,60 @@
{
"billing": {
"description": "¡Patrocinar ayuda a que PPanel continúe lanzando actualizaciones!",
"title": "Patrocinadores"
},
"empty": [
"¡Imagina que aquí está lleno de contenido emocionante! Por ahora, solo podemos imaginarlo…",
"Esta área ha desaparecido misteriosamente, ¡estamos invocándola de vuelta!",
"Vaya, no ha pasado nada… ¡puedes añadir algo tú mismo!",
"Es como descubrir que no hay nadie en el escenario de un concierto… ¿por qué no subes a actuar?",
"¡Has encontrado un paraíso en blanco! ¿Te gustaría construir una casa?",
"Aquí no hay nada por ahora, ¡pero la creatividad comienza aquí!",
"No hay nada… pero no te preocupes, ¡esto es solo el comienzo!",
"Aquí había una gran sorpresa preparada, ¡pero se ha escapado!",
"Por ahora no hay nada, como si la despensa de snacks estuviera vacía.",
"¡Este espacio vacío está esperando a que su protagonista aparezca!"
],
"request": {
"10001": "La consulta no fue exitosa, por favor intente de nuevo más tarde o verifique sus condiciones.",
"10002": "La operación de actualización no fue exitosa, por favor intente más tarde.",
"10003": "No se puede completar la operación de inserción por el momento, por favor intente más tarde.",
"10004": "La operación de eliminación no se pudo completar, por favor intente más tarde.",
"20001": "La información del usuario ya existe, por favor cambie la información e intente de nuevo.",
"20002": "No se encontró al usuario, por favor verifique la información e intente de nuevo.",
"20003": "La contraseña que ingresó es incorrecta, por favor ingrésela nuevamente.",
"20004": "El usuario ha sido deshabilitado, si tiene alguna duda, por favor contacte al servicio al cliente.",
"20005": "Saldo insuficiente, por favor recargue e intente nuevamente.",
"20006": "La función de registro no está disponible temporalmente, por favor intente más tarde.",
"30001": "El nodo ya existe, por favor no lo agregue nuevamente.",
"30002": "No se encontró el nodo relacionado, por favor verifique e intente de nuevo.",
"30003": "El grupo ya existe, por favor intente usar otro nombre.",
"30004": "No se encontró el grupo, por favor confirme la información e intente de nuevo.",
"30005": "El grupo aún contiene contenido, por favor vacíelo e intente de nuevo.",
"400": "Los parámetros de la solicitud no son correctos, por favor verifique y envíe nuevamente.",
"40002": "No se encontró un Token válido, por favor inicie sesión e intente de nuevo.",
"40003": "El Token actual no es válido, por favor obtenga uno nuevo e intente nuevamente.",
"40004": "El Token ha expirado, por favor inicie sesión nuevamente.",
"40005": "No tiene permiso de acceso, si tiene alguna duda, por favor contacte al administrador.",
"401": "Las solicitudes son demasiado frecuentes, por favor intente más tarde.",
"500": "El servidor encontró algunos problemas, por favor intente más tarde.",
"50001": "No se puede encontrar la información del cupón correspondiente, por favor verifique e intente de nuevo.",
"50002": "El cupón ya ha sido utilizado, no se puede usar nuevamente.",
"60001": "La suscripción ha expirado, por favor renueve para continuar usándola.",
"60002": "No se puede usar la suscripción por el momento, por favor intente más tarde.",
"70001": "El código de verificación es incorrecto, por favor ingréselo nuevamente.",
"80001": "La tarea no se agregó exitosamente a la cola, por favor intente de nuevo más tarde.",
"90001": "Por favor desactive el modo DEBUG e intente nuevamente.",
"undefined": "Ocurrió un error en el sistema, por favor intente más tarde."
},
"table": {
"actions": "Acciones",
"asc": "Ascendente",
"desc": "Descendente",
"hide": "Ocultar",
"pageInfo": "Página {current} de {total}",
"rowsPerPage": "Filas por página",
"selectedItems": "{total} filas seleccionadas"
},
"unlimited": "ilimitado"
}

View File

@ -0,0 +1,50 @@
{
"actions": "acciones",
"amount": "Cantidad",
"cancel": "Cancelar",
"code": "código",
"confirm": "Confirmar",
"confirmDelete": "¿Está seguro de que desea eliminarlo?",
"count": "cantidad",
"couponList": "Lista de cupones",
"create": "Crear",
"createCoupon": "Crear cupón",
"createSuccess": "Creación exitosa",
"delete": "Eliminar",
"deleteSuccess": "Eliminación exitosa",
"deleteWarning": "Una vez eliminado, los datos no se podrán recuperar. Proceda con precaución.",
"discount": "descuento",
"edit": "editar",
"editCoupon": "Editar cupón",
"enable": "Habilitar",
"form": {
"amountDiscount": "Descuento de cantidad",
"cancel": "Cancelar",
"confirm": "Confirmar",
"count": "Número máximo de usos",
"countPlaceholder": "Número máximo de usos (dejar en blanco para ilimitado)",
"customCouponCode": "Código de cupón personalizado",
"customCouponCodePlaceholder": "Código de cupón personalizado (dejar en blanco para generar automáticamente)",
"enterCouponName": "Por favor, ingrese el nombre del cupón",
"enterValue": "Por favor, ingrese el valor",
"expireTime": "Fecha de vencimiento",
"name": "Nombre",
"percentageDiscount": "Descuento porcentual",
"selectServer": "Por favor, seleccione la suscripción",
"selectTime": "Seleccionar tiempo",
"specifiedServer": "Suscripción especificada",
"startTime": "Hora de inicio",
"type": "Tipo de cupón",
"userLimit": "Número máximo de usos por usuario",
"userLimitPlaceholder": "Número máximo de usos por usuario (dejar en blanco para ilimitado)"
},
"name": "Nombre",
"percentage": "porcentaje",
"remainingTimes": "Restante",
"subscribe": "Suscribirse",
"type": "tipo",
"unlimited": "Ilimitado",
"updateSuccess": "Actualización exitosa",
"usedTimes": "Veces utilizadas",
"validityPeriod": "Periodo de validez"
}

View File

@ -0,0 +1,29 @@
{
"DocumentList": "Lista de Documentos",
"actions": "acciones",
"cancel": "Cancelar",
"confirm": "Confirmar",
"confirmDelete": "¿Está seguro de que desea eliminar?",
"create": "Crear",
"createDocument": "Crear documento",
"createSuccess": "Creación exitosa",
"delete": "Eliminar",
"deleteDescription": "Una vez eliminado, los datos no se podrán recuperar. Proceda con precaución.",
"deleteSuccess": "Eliminación exitosa",
"edit": "editar",
"editDocument": "Editar documento",
"form": {
"cancel": "Cancelar",
"confirm": "Confirmar",
"content": "Contenido",
"tags": "Categorías",
"tagsPlaceholder": "Por favor, use la tecla Enter o una coma (,) para separar e ingresar múltiples categorías",
"title": "Título",
"titlePlaceholder": "Por favor, ingrese"
},
"show": "mostrar",
"tags": "Categorías",
"title": "Título",
"updateSuccess": "Actualización exitosa",
"updatedAt": "Actualizado en"
}

View File

@ -0,0 +1,29 @@
{
"email": "correo electrónico",
"month": "Este mes",
"monthDownloadTraffic": "Tráfico de descarga del mes",
"monthUploadTraffic": "Tráfico de subida del mes",
"newPurchase": "Nueva compra",
"nodeTraffic": "Tráfico de nodo",
"nodes": "nodos",
"offlineNodeCount": "Número de nodos fuera de línea",
"onlineIPCount": "Número de IPs en línea",
"onlineNodeCount": "Número de nodos en línea",
"pendingTickets": "Tickets pendientes",
"register": "registrar",
"repurchase": "recompra",
"revenueTitle": "Estadísticas de Ingresos",
"selectTypePlaceholder": "Seleccionar tipo",
"statisticsTitle": "Estadísticas",
"today": "hoy",
"todayDownloadTraffic": "Tráfico de descarga de hoy",
"todayUploadTraffic": "Tráfico de subida de hoy",
"total": "Total",
"totalIncome": "Ingresos totales",
"trafficRank": "Clasificación de tráfico",
"type": "tipo",
"userTitle": "Estadísticas de usuario",
"userTraffic": "Tráfico de usuarios",
"users": "usuarios",
"yesterday": "ayer"
}

View File

@ -0,0 +1,24 @@
{
"cs-CZ": "Checo",
"de-DE": "Alemán",
"en-US": "inglés",
"es-ES": "español",
"es-MX": "Español (México)",
"fi-FI": "Finlandés",
"fr-FR": "Francés",
"hi-IN": "hindi",
"hu-HU": "húngaro",
"ja-JP": "Japonés",
"ko-KR": "Coreano",
"no-NO": "Noruego",
"pl-PL": "Polaco",
"pt-BR": "portugués (Brasil)",
"ro-RO": "Rumano",
"ru-RU": "Ruso",
"th-TH": "Tailandés",
"tr-TR": "turco",
"uk-UA": "Ucraniano",
"vi-VN": "Vietnamita",
"zh-CN": "Español (España)",
"zh-TW": "chino (tradicional)"
}

View File

@ -0,0 +1,18 @@
{
"Announcement Management": "Gestión de Anuncios",
"Coupon Management": "Gestión de Cupones",
"Dashboard": "Tablero",
"Document Management": "Gestión de Documentos",
"Finance": "Finanzas",
"Order Management": "Gestión de Pedidos",
"Payment Config": "Configuración de Pago",
"Server": "Servidor",
"Server Management": "Gestión de Servidores",
"Settings": "Configuración",
"Subscribe Management": "Gestión de Suscripciones",
"System Config": "Configuración del sistema",
"System Tool": "Herramienta del sistema",
"Ticket Management": "Gestión de Tickets",
"User": "Usuario",
"User Management": "Gestión de Usuarios"
}

View File

@ -0,0 +1,37 @@
{
"amount": "Cantidad",
"couponDiscount": "Descuento de cupón",
"discount": "Monto de descuento",
"failed": "fallido",
"feeAmount": "Tarifa",
"method": "Método de pago",
"methods": {
"alipay_f2f": "Alipay (cara a cara)",
"balance": "Saldo",
"epay": "Epay",
"stripe_alipay": "Stripe (Alipay)",
"stripe_wechat_pay": "Stripe (WeChat)"
},
"orderNumber": "Número de pedido",
"status": {
"0": "Estado",
"1": "Pendiente de pago",
"2": "Pagado",
"3": "Cancelado",
"4": "Cerrado",
"5": "Completado"
},
"subscribe": "Suscribirse",
"subscribePrice": "Precio de suscripción",
"total": "Total",
"tradeNo": "Número de transacción",
"type": {
"0": "tipo",
"1": "nueva compra",
"2": "renovación",
"3": "restablecer datos",
"4": "recarga"
},
"updateTime": "Hora de actualización",
"user": "usuario"
}

View File

@ -0,0 +1,44 @@
{
"aliPay": "Pago con Alipay",
"alipayf2f": {
"appId": "ID de la aplicación de Alipay",
"invoiceName": "Nombre personalizado del producto",
"invoiceNameDescription": "Se mostrará en la factura de Alipay",
"privateKey": "Clave privada de Alipay",
"publicKey": "Clave pública de Alipay",
"sandbox": "Modo sandbox",
"sandboxDescription": "Habilitar el modo sandbox para probar el pago"
},
"enable": "Habilitar",
"enableDescription": "Habilitar este método de pago",
"epay": {
"key": "CLAVE",
"pid": "PID",
"url": "URL"
},
"feeMode": "Modo de cobro",
"feeModeDescription": "Modo de cobro de tarifas adicionales",
"feeModeItems": ["Sin tarifa", "Porcentaje", "Cantidad fija", "Ambos anteriores"],
"feePercent": "Porcentaje de tarifa (opcional)",
"feePercentDescription": "Se añade una tarifa sobre el monto del pedido",
"fixedFee": "Tarifa fija (opcional)",
"fixedFeeDescription": "Se añade una tarifa fija sobre el monto del pedido",
"iconUrl": "URL del icono (opcional)",
"iconUrlDescription": "Usado para mostrar en el frontend",
"inputPlaceholder": "Por favor, introduzca",
"key": "CLAVE",
"notifyUrl": "Dominio de notificación personalizado (opcional)",
"notifyUrlDescription": "La notificación del gateway se enviará a este dominio",
"payForRecommendations": "Pagar por recomendaciones",
"pid": "PID",
"saveSuccess": "Guardado exitosamente",
"showName": "Mostrar nombre",
"showNameDescription": "Usado para mostrar en el frontend",
"stripe": {
"publicKey": "CLAVE PÚBLICA",
"secretKey": "CLAVE SECRETA",
"webhookSecret": "FIRMA DE CLAVE WEBHOOK"
},
"url": "URL",
"wechatPay": "Pago con WeChat"
}

View File

@ -0,0 +1,122 @@
{
"group": {
"actions": "Acciones",
"cancel": "Cancelar",
"confirm": "Confirmar",
"confirmDelete": "¿Está seguro de que desea eliminar?",
"create": "Crear",
"createNodeGroup": "Crear grupo de nodos",
"createdSuccessfully": "Creado con éxito",
"delete": "Eliminar",
"deleteWarning": "Los datos no se podrán recuperar después de la eliminación, por favor opere con precaución.",
"deletedSuccessfully": "Eliminado con éxito",
"description": "Descripción",
"edit": "Editar",
"editNodeGroup": "Editar grupo de nodos",
"form": {
"cancel": "Cancelar",
"confirm": "Confirmar",
"description": "Descripción",
"name": "Nombre"
},
"name": "Nombre",
"title": "Lista de grupos de nodos",
"updatedAt": "Fecha de actualización"
},
"node": {
"abnormal": "Anormal",
"actions": "Acciones",
"address": "Dirección",
"all": "Todo",
"cancel": "Cancelar",
"confirm": "Confirmar",
"confirmDelete": "¿Está seguro de que desea eliminar?",
"create": "Crear",
"createNode": "Crear nodo",
"createSuccess": "Creación exitosa",
"delete": "Eliminar",
"deleteSuccess": "Eliminación exitosa",
"deleteWarning": "Después de eliminar, los datos no se podrán recuperar. Proceda con precaución.",
"disk": "Disco",
"edit": "Editar",
"editNode": "Editar nodo",
"enable": "Habilitar",
"form": {
"allowInsecure": "Permitir inseguro",
"cancel": "Cancelar",
"confirm": "Confirmar",
"edit": "Editar",
"editSecurity": "Editar configuración de seguridad",
"enableRelay": "Habilitar retransmisión",
"enableTLS": "Habilitar TLS",
"encryptionMethod": "Método de encriptación",
"flow": "Algoritmo de control de flujo",
"hopInterval": "Intervalo de salto",
"hopPorts": "Puertos de salto",
"hopPortsPlaceholder": "Varios puertos separados por comas",
"name": "Nombre",
"nodeGroupId": "ID del grupo de nodos",
"obfsPassword": "Contraseña de ofuscación",
"obfsPasswordPlaceholder": "Dejar en blanco para no ofuscar",
"path": "Ruta",
"pleaseSelect": "Por favor seleccione",
"port": "Puerto del servidor",
"protocol": "Protocolo",
"relayHost": "Dirección de retransmisión",
"relayPort": "Puerto de retransmisión",
"remarks": "Observaciones",
"security": "Seguridad",
"securityConfig": "Configuración de seguridad",
"security_config": {
"fingerprint": "Huella digital",
"privateKey": "Clave privada",
"privateKeyPlaceholder": "Dejar en blanco para generar automáticamente",
"publicKey": "Clave pública",
"publicKeyPlaceholder": "Dejar en blanco para generar automáticamente",
"serverAddress": "Dirección del servidor",
"serverAddressPlaceholder": "Dirección objetivo de REALITY, por defecto usa SNI",
"serverName": "Nombre del servidor (SNI)",
"serverNamePlaceholder": "Obligatorio para REALITY, debe coincidir con el backend",
"serverPort": "Puerto del servidor",
"serverPortPlaceholder": "Puerto objetivo de REALITY, por defecto 443",
"shortId": "ID corto",
"shortIdPlaceholder": "Dejar en blanco para generar automáticamente",
"sni": "Indicación de nombre del servidor (SNI)"
},
"selectEncryptionMethod": "Seleccionar método de encriptación",
"selectNodeGroup": "Seleccionar grupo de nodos",
"selectProtocol": "Seleccionar protocolo",
"serverAddr": "Dirección del servidor",
"serverName": "Nombre del servicio",
"speedLimit": "Límite de velocidad",
"speedLimitPlaceholder": "Sin límite",
"trafficRatio": "Tasa de tráfico",
"transport": "Protocolo de transporte",
"transportConfig": "Configuración del protocolo de transporte",
"transportHost": "Dirección del servicio de transporte",
"transportPath": "Ruta de transporte",
"transportServerName": "Nombre del servicio de transporte"
},
"lastUpdated": "Última actualización",
"memory": "Memoria",
"name": "Nombre",
"node": "Nodo",
"nodeGroup": "Grupo de nodos",
"normal": "Normal",
"onlineCount": "Número de usuarios en línea",
"onlineUsers": "Usuarios en línea",
"rate": "Tasa",
"relay": "Retransmisión",
"serverAddr": "Dirección del servidor",
"speedLimit": "Límite de velocidad",
"status": "Estado",
"trafficRatio": "Tasa de tráfico",
"type": "Tipo",
"updateSuccess": "Actualización exitosa",
"updatedAt": "Fecha de actualización"
},
"tabs": {
"node": "Nodo",
"nodeGroup": "Grupo de nodos"
}
}

View File

@ -0,0 +1,79 @@
{
"actions": "acciones",
"cancel": "Cancelar",
"confirm": "Confirmar",
"confirmDelete": "¿Estás seguro de que deseas eliminar?",
"create": "Crear",
"createSubscribe": "Crear suscripción",
"createSuccess": "Creación exitosa",
"delete": "eliminar",
"deleteSuccess": "Eliminación exitosa",
"deleteWarning": "Después de eliminar, los datos no se podrán recuperar. Proceda con precaución.",
"deviceLimit": "Número de dispositivos/unidad",
"edit": "editar",
"editSubscribe": "Editar suscripción",
"form": {
"cancel": "Cancelar",
"confirm": "Confirmar",
"description": "Descripción",
"deviceLimit": "Límite de dispositivos",
"discount": "Descuento",
"discountDescription": "Descuento basado en el precio unitario",
"discountMonths": "Meses",
"discountPercent": "Porcentaje de descuento",
"discount_price": "Precio con descuento",
"duration": "Duración (meses)",
"inventory": "Inventario",
"name": "Nombre",
"noLimit": "Sin límite",
"quota": "Cantidad de compra limitada",
"replacement": "Precio de reposición (cada vez)",
"selectSubscribeGroup": "Por favor, seleccione un grupo de suscripción",
"server": "Servidor",
"serverGroup": "Grupo de servidores",
"speedLimit": "Límite de velocidad (Mbps)",
"subscribeGroup": "Grupo de suscripción",
"traffic": "Tráfico",
"unit_price": "Precio mensual"
},
"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": "inventario",
"name": "Nombre",
"quota": "Límite de compra/vez",
"replacement": "Restablecer precio/vez",
"sell": "Venta",
"show": "Mostrar en la página de inicio",
"subscribe": "Suscribirse",
"subscribeGroup": "Suscribirse al grupo",
"tabs": {
"subscribe": "Suscribirse",
"subscribeGroup": "Grupo de suscripción"
},
"traffic": "tráfico",
"unitPrice": "Precio/mes",
"updateSuccess": "Actualización exitosa"
}

View File

@ -0,0 +1,156 @@
{
"currency": {
"accessKey": "Clave de acceso",
"accessKeyDescription": "Clave API de tasas de cambio proporcionada gratuitamente por https://exchangerate.host",
"currencySymbol": "Símbolo de moneda",
"currencySymbolDescription": "Solo para uso de visualización, al cambiarlo se modificarán todas las unidades monetarias en el sistema",
"currencyUnit": "Unidad monetaria",
"currencyUnitDescription": "Solo para uso de visualización, al cambiarlo se modificarán todas las unidades monetarias en el sistema",
"saveSuccess": "Guardado exitosamente"
},
"email": {
"expiration_email_template": "Plantilla de notificación de expiración",
"expiration_email_templateDescription": "Las variables {after}.nombreVariable{before} en la plantilla serán reemplazadas por datos reales, asegúrese de conservar estas variables.",
"inputPlaceholder": "Por favor, introduzca el contenido...",
"maintenance_email_template": "Plantilla de notificación de mantenimiento",
"maintenance_email_templateDescription": "Las variables {after}.nombreVariable{before} en la plantilla serán reemplazadas por datos reales, asegúrese de conservar estas variables.",
"saveSuccess": "La configuración se ha guardado con éxito.",
"sendFailure": "El envío del correo de prueba ha fallado, por favor verifique la configuración.",
"sendSuccess": "El correo de prueba se ha enviado con éxito.",
"sendTestEmail": "Enviar correo de prueba",
"sendTestEmailDescription": "Envíe un correo de prueba para verificar si la configuración es correcta.",
"senderAddress": "Dirección del remitente",
"senderAddressDescription": "Dirección de correo electrónico predeterminada utilizada para enviar correos.",
"smtpAccount": "Cuenta SMTP",
"smtpAccountDescription": "Cuenta de correo utilizada para la autenticación.",
"smtpEncryptionMethod": "Método de encriptación SMTP",
"smtpEncryptionMethodDescription": "Seleccione si desea habilitar la encriptación SSL/TLS.",
"smtpPassword": "Contraseña SMTP",
"smtpPasswordDescription": "Contraseña de la cuenta SMTP.",
"smtpServerAddress": "Dirección del servidor SMTP",
"smtpServerAddressDescription": "Especifique la dirección del servidor utilizada para enviar correos.",
"smtpServerPort": "Puerto del servidor SMTP",
"smtpServerPortDescription": "Especifique el número de puerto para conectar al servidor SMTP.",
"verify_email_template": "Plantilla de verificación de correo",
"verify_email_templateDescription": "Las variables {after}.nombreVariable{before} en la plantilla serán reemplazadas por datos reales, asegúrese de conservar estas variables."
},
"invite": {
"commissionFirstTimeOnly": "Comisión solo en la primera compra",
"commissionFirstTimeOnlyDescription": "Al habilitar, la comisión se genera solo en el primer pago del invitado. Puede configurar usuarios individuales en la gestión de usuarios.",
"enableForcedInvite": "Habilitar invitación forzada",
"enableForcedInviteDescription": "Al habilitar, solo los usuarios invitados pueden registrarse.",
"inputPlaceholder": "Por favor, ingrese",
"inviteCommissionPercentage": "Porcentaje de comisión por invitación",
"inviteCommissionPercentageDescription": "Proporción de comisión global predeterminada. Puede configurar proporciones individuales en la gestión de usuarios.",
"saveSuccess": "Guardado exitosamente"
},
"node": {
"communicationKey": "Clave de comunicación",
"communicationKeyDescription": "Clave para la comunicación del nodo, para asegurar que los datos no sean interceptados por otros",
"inputPlaceholder": "Por favor, ingrese",
"nodePullInterval": "Intervalo de extracción del nodo",
"nodePullIntervalDescription": "Frecuencia con la que el nodo obtiene datos del panel (segundos)",
"nodePushInterval": "Intervalo de envío del nodo",
"nodePushIntervalDescription": "Frecuencia con la que el nodo envía datos al panel",
"saveSuccess": "Guardado exitosamente"
},
"register": {
"emailSuffixWhitelist": "Lista blanca de sufijos de correo electrónico",
"emailSuffixWhitelistDescription": "Al habilitar, solo se podrán registrar correos electrónicos con los sufijos de la lista",
"emailVerification": "Verificación de correo electrónico",
"emailVerificationDescription": "Al habilitar, los usuarios necesitarán verificar su correo electrónico",
"ipRegistrationLimit": "Límite de registro por IP",
"ipRegistrationLimitDescription": "Al habilitar, las IP que cumplan con los requisitos de las reglas serán restringidas para registrarse. Tenga en cuenta que la determinación de IP puede causar problemas debido a CDN o proxies frontales",
"penaltyTime": "Tiempo de penalización (minutos)",
"penaltyTimeDescription": "El usuario debe esperar a que pase el tiempo de penalización para registrarse nuevamente",
"registrationLimitCount": "Conteo de límite de registro",
"registrationLimitCountDescription": "Habilitar penalización después de alcanzar el límite de registro",
"saveSuccess": "Guardado exitosamente",
"stopNewUserRegistration": "Detener registro de nuevos usuarios",
"stopNewUserRegistrationDescription": "Al habilitar, nadie podrá registrarse",
"trialRegistration": "Registro de prueba",
"trialRegistrationDescription": "Habilitar registro de prueba, por favor modifique primero el paquete de prueba y la duración",
"whitelistSuffixes": "Sufijos de lista blanca",
"whitelistSuffixesDescription": "Para la verificación de correo electrónico de registro, uno por línea",
"whitelistSuffixesPlaceholder": "Por favor, introduzca el sufijo de correo electrónico, uno por línea"
},
"site": {
"logo": "LOGO",
"logoDescription": "Se utiliza para mostrar la ubicación donde se debe mostrar el LOGO",
"logoPlaceholder": "Por favor, introduce la URL del LOGO, no termines con '/'",
"saveSuccess": "Guardado exitosamente",
"siteDesc": "Descripción del sitio",
"siteDescDescription": "Se utiliza para mostrar la ubicación donde se debe mostrar la descripción del sitio",
"siteDescPlaceholder": "Por favor, introduce la descripción del sitio",
"siteDomain": "Dominio del sitio",
"siteDomainDescription": "La dirección de dominio actual del sitio web, por ejemplo, para usar en correos electrónicos",
"siteDomainPlaceholder": "Por favor, introduce la dirección del dominio, varios dominios deben estar en líneas separadas",
"siteName": "Nombre del sitio",
"siteNameDescription": "Se utiliza para mostrar la ubicación donde se debe mostrar el nombre del sitio",
"siteNamePlaceholder": "Por favor, introduce el nombre del sitio"
},
"subscription": {
"add": "Agregar",
"app": "Aplicación",
"appDescription": "Configura la dirección de descarga de la APP y las reglas de importación, recuerda guardar después de modificar",
"appDownloadURL": "Dirección de descarga de la aplicación",
"appIcon": "Ícono de la aplicación",
"appName": "Nombre de la aplicación",
"delete": "Eliminar",
"reset": "Restablecer",
"save": "Guardar",
"saveSuccess": "Guardado exitoso",
"singleSubscriptionMode": "Modo de suscripción única",
"singleSubscriptionModeDescription": "Al activarlo, todos los planes de los usuarios se convertirán en saldo",
"subscriptionDomain": "Dominio de suscripción",
"subscriptionDomainDescription": "Usado para suscripción, si se deja en blanco se usará el dominio del sitio",
"subscriptionDomainPlaceholder": "Por favor, introduce el dominio de suscripción, varios dominios deben estar en líneas separadas",
"subscriptionPath": "Ruta de suscripción",
"subscriptionPathDescription": "Usado para suscripción, después de modificar asegúrate de reiniciar el sistema para garantizar el mejor rendimiento",
"subscriptionPathPlaceholder": "Por favor, introduce",
"subscriptionProtocol": "Protocolo de suscripción",
"wildcardResolution": "Resolución de comodines",
"wildcardResolutionDescription": "Usado para suscripción"
},
"tabs": {
"currency": "Moneda",
"email": "Correo electrónico",
"invite": "Invitar",
"node": "Nodo",
"register": "Registrar",
"site": "Sitio",
"subscription": "Suscripción",
"telegram": "Telegram",
"tos": "Términos de servicio",
"verify": "Verificar"
},
"telegram": {
"botToken": "Token del Bot",
"botTokenDescription": "Por favor, introduce el token proporcionado por Botfather",
"enableBotNotifications": "Habilitar notificaciones del bot",
"enableBotNotificationsDescription": "Una vez habilitado, el bot enviará notificaciones básicas a los administradores y usuarios vinculados a Telegram",
"groupURL": "URL del grupo",
"groupURLDescription": "Al completar, se mostrará en el lado del usuario o se usará donde sea necesario",
"inputPlaceholderBotToken": "0000000000:xxxxxxxxx_xxxxxxxxxxxxxxx",
"inputPlaceholderGroupURL": "https://t.me/xxxxxx",
"saveSuccess": "Guardado exitosamente"
},
"tos": {
"saveSuccess": "Guardado exitosamente",
"title": "Términos del servicio"
},
"verify": {
"inputPlaceholder": "Por favor ingrese",
"loginVerificationCode": "Código de verificación de inicio de sesión",
"loginVerificationCodeDescription": "Verificación humana al iniciar sesión",
"registrationVerificationCode": "Código de verificación de registro",
"registrationVerificationCodeDescription": "Verificación humana al registrarse",
"resetPasswordVerificationCode": "Código de verificación para restablecer contraseña",
"resetPasswordVerificationCodeDescription": "Verificación humana al restablecer la contraseña",
"saveSuccess": "Guardado exitosamente",
"turnstileSecret": "Clave secreta de Turnstile",
"turnstileSecretDescription": "Clave secreta de Turnstile proporcionada por Cloudflare",
"turnstileSiteKey": "Clave del sitio de Turnstile",
"turnstileSiteKeyDescription": "Clave del sitio de Turnstile proporcionada por Cloudflare"
}
}

View File

@ -0,0 +1,25 @@
{
"actions": "acciones",
"cancel": "Cancelar",
"check": "Verificar",
"close": "cerrar",
"closeSuccess": "Cierre exitoso",
"closeWarning": "Una vez cerrado, no se podrá operar en este ticket. Por favor, proceda con precaución.",
"confirm": "Confirmar",
"confirmClose": "¿Estás seguro de que deseas cerrar?",
"createdAt": "Fecha de creación",
"inputPlaceholder": "Por favor, introduzca su pregunta y le responderemos lo antes posible.",
"open": "abrir",
"reply": "respuesta",
"status": [
"Estado",
"Pendiente de seguimiento",
"Pendiente de respuesta",
"Procesado",
"Cerrado"
],
"ticketList": "Lista de tickets",
"title": "Título",
"updatedAt": "Actualizado en",
"user": "usuario"
}

View File

@ -0,0 +1,26 @@
{
"caller": "Llamante",
"cancel": "Cancelar",
"confirmReboot": "Confirmar reinicio",
"confirmSystemReboot": "Confirmar reinicio del sistema",
"confirmSystemUpgrade": "Confirmar actualización del sistema",
"confirmUpgrade": "Confirmar actualización",
"currentVersion": "Versión actual del sistema:",
"errors": "Errores",
"ip": "IP",
"lastUpdated": "Última actualización:",
"none": "Ninguno",
"query": "Consulta",
"rebootDescription": "¿Está seguro de que desea reiniciar el sistema? Esta acción provocará una breve interrupción del servicio.",
"rebooting": "Reiniciando el sistema...",
"refreshLogs": "Actualizar registros",
"request": "Solicitud",
"status": "Estado",
"systemLogs": "Registros del sistema",
"systemReboot": "Reinicio del sistema",
"systemServices": "Servicios del sistema",
"systemUpgrade": "Actualización del sistema",
"upgradeDescription": "¿Está seguro de que desea realizar la actualización del sistema? Esta operación puede tardar unos minutos, durante los cuales el sistema podría no responder.",
"userAgent": "Agente de Usuario",
"viewLogsAndManage": "Ver los registros del sistema, realizar actualizaciones del sistema y reiniciar operaciones"
}

View File

@ -0,0 +1,38 @@
{
"actions": "acciones",
"balance": "Saldo",
"cancel": "Cancelar",
"confirm": "Confirmar",
"confirmDelete": "¿Está seguro de que desea eliminar?",
"create": "Crear",
"createSuccess": "Creación exitosa",
"createUser": "Crear usuario",
"createdAt": "Fecha de registro",
"delete": "eliminar",
"deleteDescription": "Después de eliminar, los datos no se podrán recuperar. Proceda con precaución.",
"deleteSuccess": "Eliminación exitosa",
"edit": "editar",
"editUser": "Editar usuario",
"email": "correo electrónico",
"enable": "Habilitar",
"form": {
"balance": "Saldo",
"balancePlaceholder": "Saldo",
"cancel": "Cancelar",
"confirm": "Confirmar",
"invalidEmailFormat": "Formato de correo electrónico no válido",
"inviteCode": "Código de invitación",
"inviteCodePlaceholder": "Por favor, introduzca el código de invitación (déjelo en blanco para generar automáticamente)",
"manager": "Administrador",
"password": "Contraseña",
"passwordPlaceholder": "Por favor, introduzca una nueva contraseña (puede dejarlo en blanco)",
"refererId": "ID del referente",
"refererIdPlaceholder": "Por favor, introduzca el ID del referente",
"userEmail": "Correo electrónico del usuario",
"userEmailPlaceholder": "Por favor, introduzca el correo electrónico del usuario"
},
"referer": "Recomendador",
"updateSuccess": "Actualización exitosa",
"userList": "Lista de usuarios",
"userName": "Correo electrónico del usuario"
}

View File

@ -0,0 +1,30 @@
{
"actions": "acciones",
"announcementList": "Lista de anuncios",
"cancel": "Cancelar",
"confirm": "Confirmar",
"confirmDelete": "¿Está seguro de que desea eliminar?",
"content": "contenido",
"create": "Crear",
"createAnnouncement": "Crear anuncio",
"createSuccess": "Creación exitosa",
"delete": "eliminar",
"deleteDescription": "Una vez eliminado, los datos no se podrán recuperar. Proceda con precaución.",
"deleteSuccess": "Eliminación exitosa",
"edit": "editar",
"editAnnouncement": "Editar anuncio",
"enable": "Habilitar",
"form": {
"cancel": "Cancelar",
"confirm": "Confirmar",
"content": "Contenido",
"contentPlaceholder": "Por favor, ingresa el contenido del anuncio (se admite Markdown)",
"title": "Título",
"titlePlaceholder": "Por favor, ingresa"
},
"hide": "Ocultar",
"show": "Mostrar",
"title": "Título",
"updateSuccess": "Actualización exitosa",
"updatedAt": "Actualizado en"
}

View File

@ -0,0 +1,39 @@
{
"check": {
"checking": "Verificando...",
"continue": "Continuar",
"description": "Por favor, ingresa tu correo electrónico para continuar con el inicio de sesión o registro.",
"email": "Por favor, ingresa una dirección de correo electrónico válida.",
"title": "Iniciar sesión/Registrarse",
"whitelist": "El dominio del correo electrónico no está en la lista blanca permitida."
},
"login": {
"description": "Por favor, ingrese su información de cuenta para iniciar sesión.",
"forgotPassword": "¿Olvidó su contraseña?",
"success": "¡Inicio de sesión exitoso!",
"switchAccount": "Registrar/Cambiar cuenta",
"title": "Iniciar sesión"
},
"logout": "Cerrar sesión",
"orWithEmail": "o usa correo electrónico",
"register": {
"description": "Crea una nueva cuenta, completa tu información para registrarte.",
"existingAccount": "¿Ya tienes una cuenta?",
"get": "Obtener",
"invite": "Código de invitación",
"message": "#### Estimado usuario,\n\nGracias por su interés y apoyo. Debido a un ajuste en la estrategia de operación del sitio, hemos cerrado la función de registro para nuevos usuarios. Durante este período, el uso por parte de los usuarios existentes no se verá afectado.\n\nNos comprometemos a ofrecerle un mejor servicio y experiencia, por lo que realizaremos una optimización completa del sistema y una actualización de funciones durante el cierre del registro. En el futuro, le daremos la bienvenida con contenido y servicios de mayor calidad.\n\nPor favor, siga nuestro sitio web y plataformas de redes sociales para obtener las últimas actualizaciones y notificaciones. Agradecemos su comprensión y apoyo.\n\nSi tiene alguna pregunta o necesita ayuda, no dude en ponerse en contacto con nuestro equipo de atención al cliente.\n\n**Nuevamente, gracias por su apoyo y comprensión.**",
"passwordMismatch": "Las contraseñas no coinciden",
"success": "¡Registro exitoso, has iniciado sesión automáticamente!",
"switchToLogin": "Iniciar sesión/restablecer correo electrónico",
"title": "Registro"
},
"reset": {
"description": "Ingrese su dirección de correo electrónico para restablecer la contraseña.",
"existingAccount": "¿Ya tienes una cuenta?",
"get": "Obtener",
"success": "¡Contraseña restablecida con éxito, se ha cambiado automáticamente a iniciar sesión!",
"switchToLogin": "Iniciar sesión/Registrarse",
"title": "Restablecer contraseña"
},
"tos": "Términos del servicio"
}

View File

@ -0,0 +1,60 @@
{
"billing": {
"description": "¡Patrocinar ayuda a que PPanel continúe publicando actualizaciones!",
"title": "Patrocinador"
},
"empty": [
"¡Imagina que este lugar está lleno de contenido increíble! Por ahora, solo puedes imaginarlo…",
"¡Esta área ha desaparecido misteriosamente, estamos invocándola de regreso!",
"Vaya, no ha pasado nada… ¡puedes agregar algo tú mismo!",
"Es como descubrir que no hay nadie en el escenario de un concierto… ¿por qué no subes a actuar?",
"¡Has encontrado un paraíso en blanco! ¿Quieres construir una casa?",
"Aquí no hay nada por ahora, ¡pero la creatividad comienza aquí!",
"No hay nada… pero no te preocupes, ¡esto es solo el comienzo!",
"Aquí había una gran sorpresa preparada, ¡pero se ha escapado!",
"Por ahora no hay nada, como si la despensa de bocadillos estuviera vacía.",
"¡Este espacio vacío está esperando a que su protagonista aparezca!"
],
"request": {
"10001": "La consulta no fue exitosa, por favor intenta de nuevo más tarde o verifica tus condiciones.",
"10002": "La operación de actualización no fue exitosa, por favor intenta más tarde.",
"10003": "No se puede completar la operación de inserción por el momento, por favor intenta más tarde.",
"10004": "La operación de eliminación no se pudo completar, por favor intenta más tarde.",
"20001": "La información del usuario ya existe, por favor cambia la información e intenta de nuevo.",
"20002": "No se encontró al usuario, por favor verifica la información e intenta de nuevo.",
"20003": "La contraseña que ingresaste es incorrecta, por favor ingrésala de nuevo.",
"20004": "El usuario ha sido deshabilitado, si tienes dudas por favor contacta al servicio al cliente.",
"20005": "Saldo insuficiente, por favor recarga e intenta de nuevo.",
"20006": "La función de registro no está disponible por el momento, por favor intenta más tarde.",
"30001": "El nodo ya existe, por favor no lo agregues de nuevo.",
"30002": "No se encontró el nodo relacionado, por favor verifica e intenta de nuevo.",
"30003": "El grupo ya existe, por favor intenta usar otro nombre.",
"30004": "No se encontró el grupo, por favor confirma la información e intenta de nuevo.",
"30005": "El grupo aún contiene contenido, por favor vacíalo e intenta de nuevo.",
"400": "Los parámetros de la solicitud no son correctos, por favor verifica y vuelve a enviar.",
"40002": "No se encontró un Token válido, por favor inicia sesión e intenta de nuevo.",
"40003": "El Token actual no es válido, por favor obtén uno nuevo e intenta de nuevo.",
"40004": "El Token ha expirado, por favor inicia sesión de nuevo.",
"40005": "No tienes permiso de acceso, si tienes dudas por favor contacta al administrador.",
"401": "Las solicitudes son demasiado frecuentes, por favor intenta más tarde.",
"500": "El servidor encontró algunos problemas, por favor intenta más tarde.",
"50001": "No se puede encontrar la información del cupón correspondiente, por favor verifica e intenta de nuevo.",
"50002": "El cupón ya ha sido utilizado, no se puede usar de nuevo.",
"60001": "La suscripción ha expirado, por favor renueva para continuar usando.",
"60002": "No se puede usar la suscripción por el momento, por favor intenta más tarde.",
"70001": "El código de verificación es incorrecto, por favor ingrésalo de nuevo.",
"80001": "La tarea no se agregó exitosamente a la cola, por favor intenta de nuevo más tarde.",
"90001": "Por favor desactiva el modo DEBUG e intenta de nuevo.",
"undefined": "Ocurrió un error en el sistema, por favor intenta de nuevo más tarde."
},
"table": {
"actions": "Acciones",
"asc": "Ascendente",
"desc": "Descendente",
"hide": "Ocultar",
"pageInfo": "Página {current} de {total}",
"rowsPerPage": "Filas por página",
"selectedItems": "{total} filas seleccionadas"
},
"unlimited": "Ilimitado"
}

View File

@ -0,0 +1,50 @@
{
"actions": "acciones",
"amount": "Monto",
"cancel": "Cancelar",
"code": "código",
"confirm": "Confirmar",
"confirmDelete": "¿Está seguro de que desea eliminarlo?",
"count": "cantidad",
"couponList": "Lista de cupones",
"create": "Crear",
"createCoupon": "Crear cupón",
"createSuccess": "Creación exitosa",
"delete": "Eliminar",
"deleteSuccess": "Eliminación exitosa",
"deleteWarning": "Una vez eliminado, los datos no se podrán recuperar. Proceda con precaución.",
"discount": "descuento",
"edit": "editar",
"editCoupon": "Editar cupón",
"enable": "Habilitar",
"form": {
"amountDiscount": "Descuento de cantidad",
"cancel": "Cancelar",
"confirm": "Confirmar",
"count": "Número máximo de usos",
"countPlaceholder": "Número máximo de usos (dejar en blanco para ilimitado)",
"customCouponCode": "Código de cupón personalizado",
"customCouponCodePlaceholder": "Código de cupón personalizado (dejar en blanco para generar automáticamente)",
"enterCouponName": "Por favor ingrese el nombre del cupón",
"enterValue": "Por favor ingrese el valor",
"expireTime": "Fecha de vencimiento",
"name": "Nombre",
"percentageDiscount": "Descuento porcentual",
"selectServer": "Por favor seleccione la suscripción",
"selectTime": "Seleccionar tiempo",
"specifiedServer": "Suscripción especificada",
"startTime": "Hora de inicio",
"type": "Tipo de cupón",
"userLimit": "Número máximo de usos por usuario",
"userLimitPlaceholder": "Número máximo de usos por usuario (dejar en blanco para ilimitado)"
},
"name": "Nombre",
"percentage": "porcentaje",
"remainingTimes": "Restante",
"subscribe": "Suscribirse",
"type": "tipo",
"unlimited": "Ilimitado",
"updateSuccess": "Actualización exitosa",
"usedTimes": "Veces usadas",
"validityPeriod": "Periodo de validez"
}

View File

@ -0,0 +1,29 @@
{
"DocumentList": "Lista de Documentos",
"actions": "acciones",
"cancel": "Cancelar",
"confirm": "Confirmar",
"confirmDelete": "¿Está seguro de que desea eliminar?",
"create": "Crear",
"createDocument": "Crear documento",
"createSuccess": "Creación exitosa",
"delete": "Eliminar",
"deleteDescription": "Una vez eliminado, los datos no se podrán recuperar. Proceda con precaución.",
"deleteSuccess": "Eliminación exitosa",
"edit": "editar",
"editDocument": "Editar documento",
"form": {
"cancel": "Cancelar",
"confirm": "Confirmar",
"content": "Contenido",
"tags": "Categorías",
"tagsPlaceholder": "Por favor, usa la tecla Enter o una coma (,) para separar e ingresar múltiples categorías",
"title": "Título",
"titlePlaceholder": "Por favor, ingresa"
},
"show": "Mostrar",
"tags": "Categorías",
"title": "Título",
"updateSuccess": "Actualización exitosa",
"updatedAt": "Actualizado en"
}

View File

@ -0,0 +1,29 @@
{
"email": "correo electrónico",
"month": "Este mes",
"monthDownloadTraffic": "Tráfico de descarga del mes",
"monthUploadTraffic": "Tráfico de carga de este mes",
"newPurchase": "Nueva compra",
"nodeTraffic": "Tráfico de nodo",
"nodes": "nodos",
"offlineNodeCount": "Número de nodos fuera de línea",
"onlineIPCount": "Número de IPs en línea",
"onlineNodeCount": "Número de nodos en línea",
"pendingTickets": "Tickets pendientes",
"register": "Registrarse",
"repurchase": "recompra",
"revenueTitle": "Estadísticas de Ingresos",
"selectTypePlaceholder": "Seleccionar tipo",
"statisticsTitle": "Estadísticas",
"today": "hoy",
"todayDownloadTraffic": "Tráfico de descarga de hoy",
"todayUploadTraffic": "Tráfico de carga de hoy",
"total": "Total",
"totalIncome": "Ingreso total",
"trafficRank": "Clasificación de tráfico",
"type": "tipo",
"userTitle": "Estadísticas del Usuario",
"userTraffic": "Tráfico de usuarios",
"users": "usuarios",
"yesterday": "Ayer"
}

View File

@ -0,0 +1,24 @@
{
"cs-CZ": "Checo",
"de-DE": "Alemán",
"en-US": "inglés",
"es-ES": "español",
"es-MX": "Español (México)",
"fi-FI": "Finlandés",
"fr-FR": "Francés",
"hi-IN": "Hindi",
"hu-HU": "Húngaro",
"ja-JP": "Japonés",
"ko-KR": "Coreano",
"no-NO": "Noruego",
"pl-PL": "Polaco",
"pt-BR": "portugués (Brasil)",
"ro-RO": "Rumano",
"ru-RU": "Ruso",
"th-TH": "Tailandés",
"tr-TR": "turco",
"uk-UA": "Ucraniano",
"vi-VN": "Vietnamita",
"zh-CN": "español (México)",
"zh-TW": "Chino (Tradicional)"
}

View File

@ -0,0 +1,18 @@
{
"Announcement Management": "Gestión de Anuncios",
"Coupon Management": "Gestión de Cupones",
"Dashboard": "Tablero",
"Document Management": "Gestión de Documentos",
"Finance": "Finanzas",
"Order Management": "Gestión de Pedidos",
"Payment Config": "Configuración de Pago",
"Server": "Servidor",
"Server Management": "Gestión de Servidores",
"Settings": "Configuración",
"Subscribe Management": "Gestión de Suscripciones",
"System Config": "Configuración del Sistema",
"System Tool": "Herramienta del sistema",
"Ticket Management": "Gestión de Tickets",
"User": "Usuario",
"User Management": "Gestión de Usuarios"
}

View File

@ -0,0 +1,37 @@
{
"amount": "Monto",
"couponDiscount": "Descuento de cupón",
"discount": "Monto de descuento",
"failed": "fallido",
"feeAmount": "Cuota",
"method": "Método de pago",
"methods": {
"alipay_f2f": "Alipay (cara a cara)",
"balance": "Saldo",
"epay": "Epay",
"stripe_alipay": "Stripe (Alipay)",
"stripe_wechat_pay": "Stripe (WeChat)"
},
"orderNumber": "Número de pedido",
"status": {
"0": "Estado",
"1": "Pendiente de pago",
"2": "Pagado",
"3": "Cancelado",
"4": "Cerrado",
"5": "Completado"
},
"subscribe": "Suscribirse",
"subscribePrice": "Precio de suscripción",
"total": "Total",
"tradeNo": "Número de transacción",
"type": {
"0": "Tipo",
"1": "Nueva compra",
"2": "Renovación",
"3": "Restablecer datos",
"4": "Recarga"
},
"updateTime": "Hora de actualización",
"user": "usuario"
}

View File

@ -0,0 +1,44 @@
{
"aliPay": "Pago con Alipay",
"alipayf2f": {
"appId": "ID de la aplicación de Alipay",
"invoiceName": "Nombre personalizado del producto",
"invoiceNameDescription": "Se mostrará en la factura de Alipay",
"privateKey": "Clave privada de Alipay",
"publicKey": "Clave pública de Alipay",
"sandbox": "Modo sandbox",
"sandboxDescription": "Habilitar el modo sandbox para probar el pago"
},
"enable": "Habilitar",
"enableDescription": "Habilitar este método de pago",
"epay": {
"key": "CLAVE",
"pid": "PID",
"url": "URL"
},
"feeMode": "Modo de cobro",
"feeModeDescription": "Modo de cobro de tarifas adicionales",
"feeModeItems": ["Sin tarifa", "Porcentaje", "Cantidad fija", "Ambos"],
"feePercent": "Porcentaje de tarifa (opcional)",
"feePercentDescription": "Se añade una tarifa sobre el monto del pedido",
"fixedFee": "Cuota fija (opcional)",
"fixedFeeDescription": "Agregar una tarifa fija sobre el monto del pedido",
"iconUrl": "URL del ícono (opcional)",
"iconUrlDescription": "Usado para mostrar en el frontend",
"inputPlaceholder": "Por favor ingrese",
"key": "LLAVE",
"notifyUrl": "Dominio de notificación personalizado (opcional)",
"notifyUrlDescription": "La notificación del gateway se enviará a este dominio",
"payForRecommendations": "Pagar por recomendaciones",
"pid": "PID",
"saveSuccess": "Guardado exitoso",
"showName": "Mostrar nombre",
"showNameDescription": "Usado para mostrar en el frontend",
"stripe": {
"publicKey": "CLAVE PÚBLICA",
"secretKey": "CLAVE SECRETA",
"webhookSecret": "FIRMA DE SECRETO DE WEBHOOK"
},
"url": "URL",
"wechatPay": "WeChat Pay"
}

View File

@ -0,0 +1,122 @@
{
"group": {
"actions": "Acciones",
"cancel": "Cancelar",
"confirm": "Confirmar",
"confirmDelete": "¿Está seguro de que desea eliminar?",
"create": "Crear",
"createNodeGroup": "Crear grupo de nodos",
"createdSuccessfully": "Creación exitosa",
"delete": "Eliminar",
"deleteWarning": "Los datos no se podrán recuperar después de la eliminación, proceda con precaución.",
"deletedSuccessfully": "Eliminación exitosa",
"description": "Descripción",
"edit": "Editar",
"editNodeGroup": "Editar grupo de nodos",
"form": {
"cancel": "Cancelar",
"confirm": "Confirmar",
"description": "Descripción",
"name": "Nombre"
},
"name": "Nombre",
"title": "Lista de grupos de nodos",
"updatedAt": "Fecha de actualización"
},
"node": {
"abnormal": "Anormal",
"actions": "Acciones",
"address": "Dirección",
"all": "Todo",
"cancel": "Cancelar",
"confirm": "Confirmar",
"confirmDelete": "¿Estás seguro de que deseas eliminar?",
"create": "Crear",
"createNode": "Crear nodo",
"createSuccess": "Creación exitosa",
"delete": "Eliminar",
"deleteSuccess": "Eliminación exitosa",
"deleteWarning": "Después de eliminar, los datos no se podrán recuperar. Proceda con precaución.",
"disk": "Disco",
"edit": "Editar",
"editNode": "Editar nodo",
"enable": "Habilitar",
"form": {
"allowInsecure": "Permitir inseguro",
"cancel": "Cancelar",
"confirm": "Confirmar",
"edit": "Editar",
"editSecurity": "Editar configuración de seguridad",
"enableRelay": "Habilitar retransmisión",
"enableTLS": "Habilitar TLS",
"encryptionMethod": "Método de encriptación",
"flow": "Algoritmo de control de flujo",
"hopInterval": "Intervalo de salto",
"hopPorts": "Puertos de salto",
"hopPortsPlaceholder": "Varios puertos separados por comas",
"name": "Nombre",
"nodeGroupId": "ID del grupo de nodos",
"obfsPassword": "Contraseña de ofuscación",
"obfsPasswordPlaceholder": "Dejar en blanco para no ofuscar",
"path": "Ruta",
"pleaseSelect": "Por favor seleccione",
"port": "Puerto del servidor",
"protocol": "Protocolo",
"relayHost": "Dirección de retransmisión",
"relayPort": "Puerto de retransmisión",
"remarks": "Comentarios",
"security": "Seguridad",
"securityConfig": "Configuración de seguridad",
"security_config": {
"fingerprint": "Huella digital",
"privateKey": "Clave privada",
"privateKeyPlaceholder": "Dejar en blanco para generar automáticamente",
"publicKey": "Clave pública",
"publicKeyPlaceholder": "Dejar en blanco para generar automáticamente",
"serverAddress": "Dirección del servidor",
"serverAddressPlaceholder": "Dirección objetivo de REALITY, por defecto usa SNI",
"serverName": "Nombre del servidor (SNI)",
"serverNamePlaceholder": "Obligatorio para REALITY, debe coincidir con el backend",
"serverPort": "Puerto del servidor",
"serverPortPlaceholder": "Puerto objetivo de REALITY, por defecto 443",
"shortId": "ID corto",
"shortIdPlaceholder": "Dejar en blanco para generar automáticamente",
"sni": "Indicación de nombre del servidor (SNI)"
},
"selectEncryptionMethod": "Seleccionar método de encriptación",
"selectNodeGroup": "Seleccionar grupo de nodos",
"selectProtocol": "Seleccionar protocolo",
"serverAddr": "Dirección del servidor",
"serverName": "Nombre del servicio",
"speedLimit": "Límite de velocidad",
"speedLimitPlaceholder": "Sin límite",
"trafficRatio": "Tasa de tráfico",
"transport": "Protocolo de transporte",
"transportConfig": "Configuración del protocolo de transporte",
"transportHost": "Dirección del servicio de transporte",
"transportPath": "Ruta de transporte",
"transportServerName": "Nombre del servicio de transporte"
},
"lastUpdated": "Última actualización",
"memory": "Memoria",
"name": "Nombre",
"node": "Nodo",
"nodeGroup": "Grupo de nodos",
"normal": "Normal",
"onlineCount": "Número de personas en línea",
"onlineUsers": "Usuarios en línea",
"rate": "Tasa",
"relay": "Retransmisión",
"serverAddr": "Dirección del servidor",
"speedLimit": "Límite de velocidad",
"status": "Estado",
"trafficRatio": "Tasa de tráfico",
"type": "Tipo",
"updateSuccess": "Actualización exitosa",
"updatedAt": "Fecha de actualización"
},
"tabs": {
"node": "Nodo",
"nodeGroup": "Grupo de nodos"
}
}

View File

@ -0,0 +1,79 @@
{
"actions": "acciones",
"cancel": "Cancelar",
"confirm": "Confirmar",
"confirmDelete": "¿Estás seguro de que deseas eliminar?",
"create": "Crear",
"createSubscribe": "Crear suscripción",
"createSuccess": "Creación exitosa",
"delete": "Eliminar",
"deleteSuccess": "Eliminación exitosa",
"deleteWarning": "Después de eliminar, los datos no se podrán recuperar. Proceda con precaución.",
"deviceLimit": "Número de dispositivos/unidad",
"edit": "editar",
"editSubscribe": "Editar suscripción",
"form": {
"cancel": "Cancelar",
"confirm": "Confirmar",
"description": "Descripción",
"deviceLimit": "Límite de dispositivos",
"discount": "Descuento",
"discountDescription": "Descuento basado en el precio unitario",
"discountMonths": "Meses",
"discountPercent": "Porcentaje de descuento",
"discount_price": "Precio con descuento",
"duration": "Duración (meses)",
"inventory": "Inventario",
"name": "Nombre",
"noLimit": "Sin límite",
"quota": "Cantidad máxima de compra",
"replacement": "Precio de reposición (cada vez)",
"selectSubscribeGroup": "Por favor seleccione un grupo de suscripción",
"server": "Servidor",
"serverGroup": "Grupo de servidores",
"speedLimit": "Límite de velocidad (Mbps)",
"subscribeGroup": "Grupo de suscripción",
"traffic": "Tráfico",
"unit_price": "Precio mensual"
},
"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": "inventario",
"name": "Nombre",
"quota": "Límite de compra/vez",
"replacement": "Restablecer precio/vez",
"sell": "venta",
"show": "Mostrar en la página de inicio",
"subscribe": "Suscribirse",
"subscribeGroup": "Suscribirse al grupo",
"tabs": {
"subscribe": "Suscribirse",
"subscribeGroup": "Grupo de suscripción"
},
"traffic": "tráfico",
"unitPrice": "Precio/mes",
"updateSuccess": "Actualización exitosa"
}

View File

@ -0,0 +1,156 @@
{
"currency": {
"accessKey": "Clave de acceso",
"accessKeyDescription": "https://exchangerate.host proporciona una clave API gratuita para tasas de cambio",
"currencySymbol": "Símbolo de moneda",
"currencySymbolDescription": "Solo para fines de visualización, cambiarlo alterará todas las unidades monetarias en el sistema",
"currencyUnit": "Unidad monetaria",
"currencyUnitDescription": "Solo para fines de visualización, cambiarlo alterará todas las unidades monetarias en el sistema",
"saveSuccess": "Guardado exitosamente"
},
"email": {
"expiration_email_template": "Plantilla de notificación de expiración",
"expiration_email_templateDescription": "Las variables {after}.nombreVariable{before} en la plantilla serán reemplazadas por datos reales, asegúrese de conservar estas variables.",
"inputPlaceholder": "Por favor, ingrese contenido...",
"maintenance_email_template": "Plantilla de notificación de mantenimiento",
"maintenance_email_templateDescription": "Las variables {after}.nombreVariable{before} en la plantilla serán reemplazadas por datos reales, asegúrese de conservar estas variables.",
"saveSuccess": "La configuración se ha guardado exitosamente.",
"sendFailure": "El envío del correo de prueba falló, por favor verifique la configuración.",
"sendSuccess": "El correo de prueba se ha enviado exitosamente.",
"sendTestEmail": "Enviar correo de prueba",
"sendTestEmailDescription": "Envía un correo de prueba para verificar si la configuración es correcta.",
"senderAddress": "Dirección del remitente",
"senderAddressDescription": "La dirección de correo predeterminada utilizada para enviar correos.",
"smtpAccount": "Cuenta SMTP",
"smtpAccountDescription": "Cuenta de correo utilizada para la autenticación.",
"smtpEncryptionMethod": "Método de encriptación SMTP",
"smtpEncryptionMethodDescription": "Seleccione si desea habilitar la encriptación SSL/TLS.",
"smtpPassword": "Contraseña SMTP",
"smtpPasswordDescription": "La contraseña de la cuenta SMTP.",
"smtpServerAddress": "Dirección del servidor SMTP",
"smtpServerAddressDescription": "Especifique la dirección del servidor utilizada para enviar correos.",
"smtpServerPort": "Puerto del servidor SMTP",
"smtpServerPortDescription": "Especifique el número de puerto para conectar al servidor SMTP.",
"verify_email_template": "Plantilla de verificación de correo",
"verify_email_templateDescription": "Las variables {after}.nombreVariable{before} en la plantilla serán reemplazadas por datos reales, asegúrese de conservar estas variables."
},
"invite": {
"commissionFirstTimeOnly": "Comisión solo en la primera compra",
"commissionFirstTimeOnlyDescription": "Al habilitar, la comisión se genera solo en el primer pago del invitado. Puede configurar usuarios individuales en la gestión de usuarios.",
"enableForcedInvite": "Habilitar invitación forzada",
"enableForcedInviteDescription": "Al habilitar, solo los usuarios invitados pueden registrarse.",
"inputPlaceholder": "Por favor ingrese",
"inviteCommissionPercentage": "Porcentaje de comisión por invitación",
"inviteCommissionPercentageDescription": "Proporción de comisión global predeterminada. Puede configurar proporciones individuales en la gestión de usuarios.",
"saveSuccess": "Guardado exitosamente"
},
"node": {
"communicationKey": "Clave de comunicación",
"communicationKeyDescription": "Clave para la comunicación del nodo, para asegurar que los datos no sean interceptados por otros",
"inputPlaceholder": "Por favor ingrese",
"nodePullInterval": "Intervalo de extracción del nodo",
"nodePullIntervalDescription": "Frecuencia con la que el nodo obtiene datos del panel (segundos)",
"nodePushInterval": "Intervalo de envío del nodo",
"nodePushIntervalDescription": "Frecuencia con la que el nodo envía datos al panel",
"saveSuccess": "Guardado exitosamente"
},
"register": {
"emailSuffixWhitelist": "Lista blanca de sufijos de correo electrónico",
"emailSuffixWhitelistDescription": "Al habilitar, solo se podrán registrar correos electrónicos con los sufijos de la lista",
"emailVerification": "Verificación de correo electrónico",
"emailVerificationDescription": "Al habilitar, los usuarios deberán verificar su correo electrónico",
"ipRegistrationLimit": "Límite de registro por IP",
"ipRegistrationLimitDescription": "Al habilitar, las IP que cumplan con los requisitos de las reglas serán restringidas para registrarse. Tenga en cuenta que la determinación de IP puede causar problemas debido a CDN o proxies frontales",
"penaltyTime": "Tiempo de penalización (minutos)",
"penaltyTimeDescription": "El usuario debe esperar a que pase el tiempo de penalización para registrarse nuevamente",
"registrationLimitCount": "Conteo de límite de registro",
"registrationLimitCountDescription": "Habilitar penalización después de alcanzar el límite de registro",
"saveSuccess": "Guardado exitosamente",
"stopNewUserRegistration": "Detener registro de nuevos usuarios",
"stopNewUserRegistrationDescription": "Al habilitar, nadie podrá registrarse",
"trialRegistration": "Registro de prueba",
"trialRegistrationDescription": "Habilitar registro de prueba, por favor modifique primero el paquete y la duración de la prueba",
"whitelistSuffixes": "Sufijos de lista blanca",
"whitelistSuffixesDescription": "Para la verificación de correo electrónico de registro, uno por línea",
"whitelistSuffixesPlaceholder": "Por favor ingrese los sufijos de correo electrónico, uno por línea"
},
"site": {
"logo": "LOGO",
"logoDescription": "Usado para mostrar la ubicación donde se debe exhibir el LOGO",
"logoPlaceholder": "Por favor, ingresa la URL del LOGO, no termines con '/'",
"saveSuccess": "Guardado exitosamente",
"siteDesc": "Descripción del sitio",
"siteDescDescription": "Usado para mostrar la ubicación donde se debe exhibir la descripción del sitio",
"siteDescPlaceholder": "Por favor, ingresa la descripción del sitio",
"siteDomain": "Dominio del sitio",
"siteDomainDescription": "La dirección de dominio del sitio web actual, por ejemplo, para usar en correos electrónicos",
"siteDomainPlaceholder": "Por favor, ingresa la dirección del dominio, múltiples dominios deben estar en líneas separadas",
"siteName": "Nombre del sitio",
"siteNameDescription": "Usado para mostrar la ubicación donde se debe exhibir el nombre del sitio",
"siteNamePlaceholder": "Por favor, ingresa el nombre del sitio"
},
"subscription": {
"add": "Agregar",
"app": "Aplicación",
"appDescription": "Configura la dirección de descarga de la APP y las reglas de importación, recuerda guardar después de modificar",
"appDownloadURL": "Dirección de descarga de la aplicación",
"appIcon": "Ícono de la aplicación",
"appName": "Nombre de la aplicación",
"delete": "Eliminar",
"reset": "Restablecer",
"save": "Guardar",
"saveSuccess": "Guardado exitosamente",
"singleSubscriptionMode": "Modo de suscripción única",
"singleSubscriptionModeDescription": "Al activarlo, todos los planes de los usuarios se convertirán en saldo",
"subscriptionDomain": "Dominio de suscripción",
"subscriptionDomainDescription": "Usado para suscripción, si se deja en blanco se usará el dominio del sitio",
"subscriptionDomainPlaceholder": "Por favor ingresa el dominio de suscripción, múltiples dominios deben estar en líneas separadas",
"subscriptionPath": "Ruta de suscripción",
"subscriptionPathDescription": "Usado para suscripción, después de modificar asegúrate de reiniciar el sistema para garantizar el mejor rendimiento",
"subscriptionPathPlaceholder": "Por favor ingresa",
"subscriptionProtocol": "Protocolo de suscripción",
"wildcardResolution": "Resolución de comodines",
"wildcardResolutionDescription": "Usado para suscripción"
},
"tabs": {
"currency": "Moneda",
"email": "Correo electrónico",
"invite": "Invitar",
"node": "Nodo",
"register": "Registrar",
"site": "Sitio",
"subscription": "Suscripción",
"telegram": "Telegram",
"tos": "Términos del servicio",
"verify": "Verificar"
},
"telegram": {
"botToken": "Token del Bot",
"botTokenDescription": "Por favor, ingresa el token proporcionado por Botfather",
"enableBotNotifications": "Habilitar notificaciones del bot",
"enableBotNotificationsDescription": "Al habilitar, el bot enviará notificaciones básicas a los administradores y usuarios vinculados a Telegram",
"groupURL": "URL del grupo",
"groupURLDescription": "Al completar, se mostrará en el lado del usuario o se usará donde sea necesario",
"inputPlaceholderBotToken": "0000000000:xxxxxxxxx_xxxxxxxxxxxxxxx",
"inputPlaceholderGroupURL": "https://t.me/xxxxxx",
"saveSuccess": "Guardado exitosamente"
},
"tos": {
"saveSuccess": "Guardado exitoso",
"title": "Términos del servicio"
},
"verify": {
"inputPlaceholder": "Por favor ingrese",
"loginVerificationCode": "Código de verificación de inicio de sesión",
"loginVerificationCodeDescription": "Verificación humana al iniciar sesión",
"registrationVerificationCode": "Código de verificación de registro",
"registrationVerificationCodeDescription": "Verificación humana al registrarse",
"resetPasswordVerificationCode": "Código de verificación para restablecer contraseña",
"resetPasswordVerificationCodeDescription": "Verificación humana al restablecer la contraseña",
"saveSuccess": "Guardado exitosamente",
"turnstileSecret": "Clave secreta de Turnstile",
"turnstileSecretDescription": "Clave secreta de Turnstile proporcionada por Cloudflare",
"turnstileSiteKey": "Clave del sitio de Turnstile",
"turnstileSiteKeyDescription": "Clave del sitio de Turnstile proporcionada por Cloudflare"
}
}

View File

@ -0,0 +1,25 @@
{
"actions": "acciones",
"cancel": "Cancelar",
"check": "Revisar",
"close": "cerrar",
"closeSuccess": "Cierre exitoso",
"closeWarning": "Una vez cerrado, no se podrá operar esta orden de trabajo. Por favor, proceda con precaución.",
"confirm": "Confirmar",
"confirmClose": "¿Estás seguro de que deseas cerrar?",
"createdAt": "Fecha de creación",
"inputPlaceholder": "Por favor, ingrese su pregunta y le responderemos lo antes posible.",
"open": "abrir",
"reply": "respuesta",
"status": [
"Estado",
"Pendiente de seguimiento",
"Pendiente de respuesta",
"Procesado",
"Cerrado"
],
"ticketList": "Lista de tickets",
"title": "Título",
"updatedAt": "Actualizado en",
"user": "usuario"
}

View File

@ -0,0 +1,26 @@
{
"caller": "Llamador",
"cancel": "Cancelar",
"confirmReboot": "Confirmar reinicio",
"confirmSystemReboot": "Confirmar reinicio del sistema",
"confirmSystemUpgrade": "Confirmar actualización del sistema",
"confirmUpgrade": "Confirmar actualización",
"currentVersion": "Versión actual del sistema:",
"errors": "Errores",
"ip": "IP",
"lastUpdated": "Última actualización:",
"none": "Ninguno",
"query": "Consulta",
"rebootDescription": "¿Está seguro de que desea reiniciar el sistema? Esta acción provocará una breve interrupción del servicio.",
"rebooting": "Reiniciando el sistema...",
"refreshLogs": "Actualizar registros",
"request": "Solicitud",
"status": "Estado",
"systemLogs": "Registros del sistema",
"systemReboot": "Reinicio del sistema",
"systemServices": "Servicios del sistema",
"systemUpgrade": "Actualización del sistema",
"upgradeDescription": "¿Está seguro de que desea realizar la actualización del sistema? Esta operación puede tardar unos minutos, durante los cuales el sistema podría no responder.",
"userAgent": "Agente de Usuario",
"viewLogsAndManage": "Ver los registros del sistema, realizar actualizaciones del sistema y reiniciar operaciones"
}

View File

@ -0,0 +1,38 @@
{
"actions": "acciones",
"balance": "Saldo",
"cancel": "Cancelar",
"confirm": "Confirmar",
"confirmDelete": "¿Está seguro de que desea eliminar?",
"create": "Crear",
"createSuccess": "Creación exitosa",
"createUser": "Crear usuario",
"createdAt": "Fecha de registro",
"delete": "Eliminar",
"deleteDescription": "Después de eliminar, los datos no se pueden recuperar. Proceda con precaución.",
"deleteSuccess": "Eliminación exitosa",
"edit": "editar",
"editUser": "Editar usuario",
"email": "correo electrónico",
"enable": "Habilitar",
"form": {
"balance": "Saldo",
"balancePlaceholder": "Saldo",
"cancel": "Cancelar",
"confirm": "Confirmar",
"invalidEmailFormat": "Formato de correo electrónico no válido",
"inviteCode": "Código de invitación",
"inviteCodePlaceholder": "Ingrese el código de invitación (déjelo en blanco para generar automáticamente)",
"manager": "Administrador",
"password": "Contraseña",
"passwordPlaceholder": "Ingrese nueva contraseña (opcional)",
"refererId": "ID del referente",
"refererIdPlaceholder": "Ingrese ID del referente",
"userEmail": "Correo electrónico del usuario",
"userEmailPlaceholder": "Ingrese el correo electrónico del usuario"
},
"referer": "Recomendador",
"updateSuccess": "Actualización exitosa",
"userList": "Lista de usuarios",
"userName": "Correo electrónico del usuario"
}

View File

@ -0,0 +1,30 @@
{
"actions": "toiminnot",
"announcementList": "Ilmoituslista",
"cancel": "Peruuta",
"confirm": "Vahvista",
"confirmDelete": "Oletko varma, että haluat poistaa?",
"content": "Sisältö",
"create": "Luo",
"createAnnouncement": "Luo ilmoitus",
"createSuccess": "Luonti onnistui",
"delete": "poista",
"deleteDescription": "Kun tiedot on poistettu, niitä ei voi palauttaa. Ole varovainen.",
"deleteSuccess": "Poisto onnistui",
"edit": "muokkaa",
"editAnnouncement": "Muokkaa ilmoitusta",
"enable": "Ota käyttöön",
"form": {
"cancel": "Peruuta",
"confirm": "Vahvista",
"content": "Sisältö",
"contentPlaceholder": "Syötä ilmoituksen sisältö (tukee Markdownia)",
"title": "Otsikko",
"titlePlaceholder": "Syötä"
},
"hide": "piilota",
"show": "Näytä",
"title": "Otsikko",
"updateSuccess": "Päivitys onnistui",
"updatedAt": "Päivitetty"
}

View File

@ -0,0 +1,39 @@
{
"check": {
"checking": "Tarkistetaan...",
"continue": "Jatka",
"description": "Syötä sähköpostiosoitteesi jatkaaksesi kirjautumista tai rekisteröitymistä.",
"email": "Anna kelvollinen sähköpostiosoite.",
"title": "Kirjaudu/Rekisteröidy",
"whitelist": "Sähköpostin verkkotunnus ei ole sallitussa luettelossa."
},
"login": {
"description": "Ole hyvä ja syötä tilitietosi kirjautuaksesi sisään.",
"forgotPassword": "Unohditko salasanasi?",
"success": "Kirjautuminen onnistui!",
"switchAccount": "Rekisteröidy/Vaihda tiliä",
"title": "Kirjaudu sisään"
},
"logout": "Kirjaudu ulos",
"orWithEmail": "tai käytä sähköpostia",
"register": {
"description": "Luo uusi tili täyttämällä tietosi rekisteröityäksesi.",
"existingAccount": "Onko sinulla jo tili?",
"get": "Hanki",
"invite": "Kutsukoodi",
"message": "#### Arvoisa käyttäjä,\n\nKiitos mielenkiinnostasi ja tuestasi. Sivuston toimintastrategian muutosten vuoksi olemme sulkeneet uusien käyttäjien rekisteröinnin. Tänä aikana nykyisten käyttäjien käyttö ei vaikutu millään tavalla.\n\nOlemme sitoutuneet tarjoamaan sinulle parempaa palvelua ja kokemusta, joten rekisteröinnin sulkemisen aikana suoritamme kattavan järjestelmän optimoinnin ja toiminnallisuuden päivityksen. Tulevaisuudessa toivotamme sinut tervetulleeksi entistä laadukkaamman sisällön ja palvelun kera.\n\nSeuraa verkkosivustoamme ja sosiaalisen median alustoja saadaksesi uusimmat päivitykset ja ilmoitukset. Kiitos ymmärryksestäsi ja tuestasi.\n\nJos sinulla on kysyttävää tai tarvitset apua, ota yhteyttä asiakaspalvelutiimiimme.\n\n**Kiitos vielä kerran tuestasi ja ymmärryksestäsi.**",
"passwordMismatch": "Salasanat eivät täsmää",
"success": "Rekisteröinti onnistui, olet kirjautunut automaattisesti!",
"switchToLogin": "Kirjaudu/sähköpostin nollaus",
"title": "Rekisteröidy"
},
"reset": {
"description": "Anna sähköpostiosoitteesi salasanan palauttamiseksi.",
"existingAccount": "Onko sinulla jo tili?",
"get": "Hae",
"success": "Salasanan palautus onnistui, siirryttiin automaattisesti kirjautumiseen!",
"switchToLogin": "Kirjaudu/Rekisteröidy",
"title": "Palauta salasana"
},
"tos": "Käyttöehdot"
}

View File

@ -0,0 +1,60 @@
{
"billing": {
"description": "Sponsorointi auttaa PPanelia jatkamaan päivitysten julkaisua!",
"title": "Sponsori"
},
"empty": [
"Kuvittele, että täällä on täynnä upeaa sisältöä! Toistaiseksi joudut vain kuvittelemaan…",
"Tämä alue on mystisesti kadonnut, kutsumme sitä takaisin!",
"Voi ei, mitään ei tapahtunut… voit lisätä jotain itse!",
"Se on kuin konsertti, jossa lavalla ei ole ketään… haluaisitko esiintyä?",
"Olet löytänyt tyhjän paratiisin! Haluatko rakentaa talon?",
"Täällä ei ole vielä mitään, mutta luovuus alkaa tästä!",
"Ei mitään… mutta älä huoli, tämä on vasta alku!",
"Täällä oli alun perin suuri yllätys, mutta se karkasi!",
"Tällä hetkellä ei ole mitään, aivan kuin välipala-kaappi olisi tyhjennetty.",
"Tämä tyhjä tila odottaa päähenkilöään!"
],
"request": {
"10001": "Kysely ei ole vielä onnistunut, yritä myöhemmin uudelleen tai tarkista ehtosi.",
"10002": "Päivitys ei onnistunut, yritä myöhemmin uudelleen.",
"10003": "Lisäystä ei voida suorittaa tällä hetkellä, yritä myöhemmin uudelleen.",
"10004": "Poisto ei onnistunut, yritä myöhemmin uudelleen.",
"20001": "Käyttäjätiedot ovat jo olemassa, vaihda tiedot ja yritä uudelleen.",
"20002": "Käyttäjää ei löytynyt, tarkista tiedot ja yritä uudelleen.",
"20003": "Syöttämäsi salasana on virheellinen, syötä se uudelleen.",
"20004": "Käyttäjä on estetty, ota yhteyttä asiakaspalveluun, jos sinulla on kysyttävää.",
"20005": "Saldo ei riitä, lataa lisää ja yritä uudelleen.",
"20006": "Rekisteröinti ei ole tällä hetkellä käytettävissä, yritä myöhemmin uudelleen.",
"30001": "Solmu on jo olemassa, älä lisää sitä uudelleen.",
"30002": "Solmua ei löytynyt, tarkista ja yritä uudelleen.",
"30003": "Ryhmä on jo olemassa, yritä käyttää toista nimeä.",
"30004": "Ryhmä ei löytynyt, tarkista tiedot ja yritä uudelleen.",
"30005": "Ryhmässä on vielä sisältöä, tyhjennä se ja yritä uudelleen.",
"400": "Pyynnön parametrit ovat virheellisiä, tarkista ja lähetä uudelleen.",
"40002": "Voimassa olevaa tunnusta ei löytynyt, kirjaudu sisään ja yritä uudelleen.",
"40003": "Nykyinen tunnus on virheellinen, hanki uusi ja yritä uudelleen.",
"40004": "Tunnus on vanhentunut, kirjaudu uudelleen sisään.",
"40005": "Sinulla ei ole käyttöoikeutta, ota yhteyttä ylläpitäjään, jos sinulla on kysyttävää.",
"401": "Pyyntöjä on tehty liian usein, yritä myöhemmin uudelleen.",
"500": "Palvelimella on ongelmia, yritä myöhemmin uudelleen.",
"50001": "Vastaavaa kuponkitietoa ei löytynyt, tarkista ja yritä uudelleen.",
"50002": "Kuponki on jo käytetty, sitä ei voi käyttää uudelleen.",
"60001": "Tilauksesi on vanhentunut, uusi tilaus ja käytä uudelleen.",
"60002": "Tilausta ei voi käyttää tällä hetkellä, yritä myöhemmin uudelleen.",
"70001": "Vahvistuskoodi on virheellinen, syötä se uudelleen.",
"80001": "Tehtävää ei lisätty jonoon, yritä myöhemmin uudelleen.",
"90001": "Sulje DEBUG-tila ja yritä uudelleen.",
"undefined": "Järjestelmässä tapahtui virhe, yritä myöhemmin uudelleen."
},
"table": {
"actions": "Toiminnot",
"asc": "Nouseva",
"desc": "Laskeva",
"hide": "Piilota",
"pageInfo": "Sivu {current} / {total}",
"rowsPerPage": "Rivejä per sivu",
"selectedItems": "Valittu {total} riviä"
},
"unlimited": "rajoittamaton"
}

View File

@ -0,0 +1,50 @@
{
"actions": "toiminnot",
"amount": "Määrä",
"cancel": "Peruuta",
"code": "koodi",
"confirm": "Vahvista",
"confirmDelete": "Oletko varma, että haluat poistaa tämän?",
"count": "määrä",
"couponList": "Kuponkilista",
"create": "Luo",
"createCoupon": "Luo kuponki",
"createSuccess": "Luonti onnistui",
"delete": "poista",
"deleteSuccess": "Poisto onnistui",
"deleteWarning": "Kun tiedot on poistettu, niitä ei voi palauttaa. Ole varovainen.",
"discount": "alennus",
"edit": "muokkaa",
"editCoupon": "Muokkaa kuponkia",
"enable": "Ota käyttöön",
"form": {
"amountDiscount": "Summa-alennus",
"cancel": "Peruuta",
"confirm": "Vahvista",
"count": "Maksimikäyttökerrat",
"countPlaceholder": "Maksimikäyttökerrat (jätä tyhjäksi, jos ei rajoitusta)",
"customCouponCode": "Mukautettu alennuskoodi",
"customCouponCodePlaceholder": "Mukautettu alennuskoodi (jätä tyhjäksi, jos haluat automaattisen luomisen)",
"enterCouponName": "Anna alennuskupongin nimi",
"enterValue": "Anna arvo",
"expireTime": "Vanhentumisaika",
"name": "Nimi",
"percentageDiscount": "Prosenttialennus",
"selectServer": "Valitse tilaus",
"selectTime": "Valitse aika",
"specifiedServer": "Määritetty tilaus",
"startTime": "Voimaantuloaika",
"type": "Alennuskupongin tyyppi",
"userLimit": "Käyttäjän maksimikäyttökerrat",
"userLimitPlaceholder": "Käyttäjän maksimikäyttökerrat (jätä tyhjäksi, jos ei rajoitusta)"
},
"name": "Nimi",
"percentage": "prosenttiosuus",
"remainingTimes": "Jäljellä",
"subscribe": "Tilaa",
"type": "tyyppi",
"unlimited": "rajoittamaton",
"updateSuccess": "Päivitys onnistui",
"usedTimes": "Käyttökerrat",
"validityPeriod": "Voimassaoloaika"
}

View File

@ -0,0 +1,29 @@
{
"DocumentList": "Asiakirjaluettelo",
"actions": "toiminnot",
"cancel": "Peruuta",
"confirm": "Vahvista",
"confirmDelete": "Oletko varma, että haluat poistaa?",
"create": "luo",
"createDocument": "Luo asiakirja",
"createSuccess": "Luonti onnistui",
"delete": "poista",
"deleteDescription": "Kun tiedot on poistettu, niitä ei voi palauttaa. Ole varovainen.",
"deleteSuccess": "Poisto onnistui",
"edit": "muokkaa",
"editDocument": "Muokkaa asiakirjaa",
"form": {
"cancel": "Peruuta",
"confirm": "Vahvista",
"content": "Sisältö",
"tags": "Kategoriat",
"tagsPlaceholder": "Syötä useita kategorioita erottamalla ne Enterillä tai pilkulla (,)",
"title": "Otsikko",
"titlePlaceholder": "Ole hyvä ja syötä"
},
"show": "Näytä",
"tags": "Kategoriat",
"title": "Otsikko",
"updateSuccess": "Päivitys onnistui",
"updatedAt": "Päivitetty"
}

View File

@ -0,0 +1,29 @@
{
"email": "sähköposti",
"month": "Tämä kuukausi",
"monthDownloadTraffic": "Tämän kuukauden latausliikenne",
"monthUploadTraffic": "Tämän kuukauden lähetysliikenne",
"newPurchase": "Uusi osto",
"nodeTraffic": "Solmun liikenne",
"nodes": "solmut",
"offlineNodeCount": "Offline-solmujen määrä",
"onlineIPCount": "Verkossa olevien IP-osoitteiden määrä",
"onlineNodeCount": "Verkossa olevien solmujen määrä",
"pendingTickets": "Odottavat liput",
"register": "Rekisteröidy",
"repurchase": "uudelleenosto",
"revenueTitle": "Tulotilastot",
"selectTypePlaceholder": "Valitse tyyppi",
"statisticsTitle": "Tilastot",
"today": "tänään",
"todayDownloadTraffic": "Tämän päivän latausliikenne",
"todayUploadTraffic": "Tämän päivän lähetysliikenne",
"total": "Yhteensä",
"totalIncome": "Kokonaistulot",
"trafficRank": "Liikenteen sijoitus",
"type": "tyyppi",
"userTitle": "Käyttäjätilastot",
"userTraffic": "Käyttäjäliikenne",
"users": "käyttäjät",
"yesterday": "eilen"
}

View File

@ -0,0 +1,24 @@
{
"cs-CZ": "tšekki",
"de-DE": "Saksa",
"en-US": "englanti",
"es-ES": "espanja",
"es-MX": "espanja (Meksiko)",
"fi-FI": "suomi",
"fr-FR": "ranska",
"hi-IN": "hindi",
"hu-HU": "unkarinkieli",
"ja-JP": "japani",
"ko-KR": "Korea",
"no-NO": "norja",
"pl-PL": "puola",
"pt-BR": "portugali (Brasilia)",
"ro-RO": "romania",
"ru-RU": "Venäjä",
"th-TH": "thaikieli",
"tr-TR": "turkki",
"uk-UA": "ukrainaksi",
"vi-VN": "vietnamiksi",
"zh-CN": "kiina (yksinkertaistettu)",
"zh-TW": "kiina (perinteinen)"
}

View File

@ -0,0 +1,18 @@
{
"Announcement Management": "Ilmoitusten hallinta",
"Coupon Management": "Kuponkien hallinta",
"Dashboard": "Kojelauta",
"Document Management": "Asiakirjojen hallinta",
"Finance": "Rahoitus",
"Order Management": "Tilausten hallinta",
"Payment Config": "Maksukonfiguraatio",
"Server": "Palvelu",
"Server Management": "Palvelimen hallinta",
"Settings": "Asetukset",
"Subscribe Management": "Tilauksen hallinta",
"System Config": "Järjestelmän asetukset",
"System Tool": "Järjestelmätyökalu",
"Ticket Management": "Lipputoiminta",
"User": "Käyttäjä",
"User Management": "Käyttäjien hallinta"
}

View File

@ -0,0 +1,37 @@
{
"amount": "Määrä",
"couponDiscount": "Kuponkialennus",
"discount": "Alennusmäärä",
"failed": "epäonnistui",
"feeAmount": "Käsittelymaksu",
"method": "Maksutapa",
"methods": {
"alipay_f2f": "Alipay (kasvokkain)",
"balance": "Saldo",
"epay": "Helppo maksaminen",
"stripe_alipay": "Stripe (Alipay)",
"stripe_wechat_pay": "Stripe (WeChat)"
},
"orderNumber": "Tilausnumero",
"status": {
"0": "Tila",
"1": "Odottaa maksua",
"2": "Maksettu",
"3": "Peruutettu",
"4": "Suljettu",
"5": "Valmis"
},
"subscribe": "Tilaa",
"subscribePrice": "Tilauksen hinta",
"total": "Yhteensä",
"tradeNo": "Kaupan numero",
"type": {
"0": "Tyyppi",
"1": "Uusi osto",
"2": "Uusiminen",
"3": "Liikenteen nollaus",
"4": "Lataus"
},
"updateTime": "Päivitysaika",
"user": "käyttäjä"
}

View File

@ -0,0 +1,44 @@
{
"aliPay": "Alipay-maksu",
"alipayf2f": {
"appId": "Alipay-sovelluksen ID",
"invoiceName": "Mukautettu tuotteen nimi",
"invoiceNameDescription": "Näkyy Alipay-laskussa",
"privateKey": "Alipay-yksityinen avain",
"publicKey": "Alipay-julkinen avain",
"sandbox": "Hiekkalaatikkotila",
"sandboxDescription": "Ota hiekkalaatikkotila käyttöön maksujen testaamiseksi"
},
"enable": "Ota käyttöön",
"enableDescription": "Ota tämä maksutapa käyttöön",
"epay": {
"key": "AVAIN",
"pid": "PID",
"url": "URL"
},
"feeMode": "Maksutapa",
"feeModeDescription": "Lisämaksun veloitustapa",
"feeModeItems": ["Ei käsittelymaksua", "Prosenttiosuus", "Kiinteä summa", "Molemmat yllä olevat"],
"feePercent": "Prosenttiosuusmaksu (valinnainen)",
"feePercentDescription": "Lisätään maksu tilauksen summan päälle",
"fixedFee": "Kiinteä maksu (valinnainen)",
"fixedFeeDescription": "Lisää kiinteä maksu tilauksen summan päälle",
"iconUrl": "Kuvakkeen URL (valinnainen)",
"iconUrlDescription": "Käytetään etunäytössä",
"inputPlaceholder": "Kirjoita tähän",
"key": "AVAIN",
"notifyUrl": "Mukautettu ilmoitusalue (valinnainen)",
"notifyUrlDescription": "Yhdyskäytävän ilmoitus lähetetään tähän verkkotunnukseen",
"payForRecommendations": "Maksa suosituksista",
"pid": "PID",
"saveSuccess": "Tallennus onnistui",
"showName": "Näytä nimi",
"showNameDescription": "Näytetään käyttöliittymässä",
"stripe": {
"publicKey": "JULKINEN AVAIN",
"secretKey": "SALAINEN AVAIN",
"webhookSecret": "WEBHOOK-SALAINEN ALLEKIRJOITUS"
},
"url": "URL",
"wechatPay": "WeChat-maksu"
}

View File

@ -0,0 +1,122 @@
{
"group": {
"actions": "Toiminnot",
"cancel": "Peruuta",
"confirm": "Vahvista",
"confirmDelete": "Haluatko varmasti poistaa?",
"create": "Luo",
"createNodeGroup": "Luo solmuryhmä",
"createdSuccessfully": "Luotu onnistuneesti",
"delete": "Poista",
"deleteWarning": "Poiston jälkeen tietoja ei voi palauttaa, ole varovainen.",
"deletedSuccessfully": "Poistettu onnistuneesti",
"description": "Kuvaus",
"edit": "Muokkaa",
"editNodeGroup": "Muokkaa solmuryhmää",
"form": {
"cancel": "Peruuta",
"confirm": "Vahvista",
"description": "Kuvaus",
"name": "Nimi"
},
"name": "Nimi",
"title": "Solmuryhmien lista",
"updatedAt": "Päivitetty"
},
"node": {
"abnormal": "Poikkeava",
"actions": "Toiminnot",
"address": "Osoite",
"all": "Kaikki",
"cancel": "Peruuta",
"confirm": "Vahvista",
"confirmDelete": "Haluatko varmasti poistaa?",
"create": "Luo",
"createNode": "Luo solmu",
"createSuccess": "Luonti onnistui",
"delete": "Poista",
"deleteSuccess": "Poisto onnistui",
"deleteWarning": "Poiston jälkeen tietoja ei voi palauttaa. Ole varovainen.",
"disk": "Levy",
"edit": "Muokkaa",
"editNode": "Muokkaa solmua",
"enable": "Ota käyttöön",
"form": {
"allowInsecure": "Salli epävarma",
"cancel": "Peruuta",
"confirm": "Vahvista",
"edit": "Muokkaa",
"editSecurity": "Muokkaa suojausasetuksia",
"enableRelay": "Ota välitys käyttöön",
"enableTLS": "Ota TLS käyttöön",
"encryptionMethod": "Salausmenetelmä",
"flow": "Virtausalgoritmi",
"hopInterval": "Hyppyväli",
"hopPorts": "Hyppyportit",
"hopPortsPlaceholder": "Erota useat portit pilkulla",
"name": "Nimi",
"nodeGroupId": "Solmuryhmän ID",
"obfsPassword": "Hämäyssalasana",
"obfsPasswordPlaceholder": "Jätä tyhjäksi, jos ei hämäystä",
"path": "Polku",
"pleaseSelect": "Valitse",
"port": "Palvelinportti",
"protocol": "Protokolla",
"relayHost": "Välityksen osoite",
"relayPort": "Välityksen portti",
"remarks": "Huomautukset",
"security": "Turvallisuus",
"securityConfig": "Turvallisuusasetukset",
"security_config": {
"fingerprint": "Sormenjälki",
"privateKey": "Yksityinen avain",
"privateKeyPlaceholder": "Jätä tyhjäksi, jos haluat luoda automaattisesti",
"publicKey": "Julkinen avain",
"publicKeyPlaceholder": "Jätä tyhjäksi, jos haluat luoda automaattisesti",
"serverAddress": "Palvelimen osoite",
"serverAddressPlaceholder": "REALITY-kohdeosoite, oletuksena käytetään SNI:tä",
"serverName": "Palvelimen nimi (SNI)",
"serverNamePlaceholder": "REALITY vaaditaan, vastaa taustaa",
"serverPort": "Palvelimen portti",
"serverPortPlaceholder": "REALITY-kohdeportti, oletus 443",
"shortId": "Lyhyt ID",
"shortIdPlaceholder": "Jätä tyhjäksi, jos haluat luoda automaattisesti",
"sni": "Palvelimen nimen osoitus (SNI)"
},
"selectEncryptionMethod": "Valitse salausmenetelmä",
"selectNodeGroup": "Valitse solmuryhmä",
"selectProtocol": "Valitse protokolla",
"serverAddr": "Palvelimen osoite",
"serverName": "Palvelimen nimi",
"speedLimit": "Nopeusrajoitus",
"speedLimitPlaceholder": "Ei rajoitusta",
"trafficRatio": "Liikenteen nopeus",
"transport": "Siirtoprotokolla",
"transportConfig": "Siirtoprotokollan asetukset",
"transportHost": "Siirtopalvelimen osoite",
"transportPath": "Siirtopolku",
"transportServerName": "Siirtopalvelimen nimi"
},
"lastUpdated": "Viimeksi päivitetty",
"memory": "Muisti",
"name": "Nimi",
"node": "Solmu",
"nodeGroup": "Solmuryhmä",
"normal": "Normaali",
"onlineCount": "Online-käyttäjien määrä",
"onlineUsers": "Online-käyttäjät",
"rate": "Nopeus",
"relay": "Välitys",
"serverAddr": "Palvelimen osoite",
"speedLimit": "Nopeusrajoitus",
"status": "Tila",
"trafficRatio": "Liikenteen nopeus",
"type": "Tyyppi",
"updateSuccess": "Päivitys onnistui",
"updatedAt": "Päivitetty"
},
"tabs": {
"node": "Solmu",
"nodeGroup": "Solmuryhmä"
}
}

View File

@ -0,0 +1,79 @@
{
"actions": "toiminnot",
"cancel": "Peruuta",
"confirm": "Vahvista",
"confirmDelete": "Haluatko varmasti poistaa?",
"create": "Luo",
"createSubscribe": "Luo uusi tilaus",
"createSuccess": "Luonti onnistui",
"delete": "poista",
"deleteSuccess": "Poisto onnistui",
"deleteWarning": "Poiston jälkeen tietoja ei voi palauttaa, ole varovainen.",
"deviceLimit": "Laitemäärä/kpl",
"edit": "muokkaa",
"editSubscribe": "Muokkaa tilausta",
"form": {
"cancel": "Peruuta",
"confirm": "Vahvista",
"description": "Kuvaus",
"deviceLimit": "Laiterajoitus",
"discount": "Alennus",
"discountDescription": "Aseta alennus yksikköhinnan perusteella",
"discountMonths": "Kuukautta",
"discountPercent": "Alennusprosentti",
"discount_price": "Alennettu hinta",
"duration": "Kesto (kuukautta)",
"inventory": "Varasto",
"name": "Nimi",
"noLimit": "Ei rajoitusta",
"quota": "Ostorajoitus",
"replacement": "Uudelleenhinnan asetus (kerta)",
"selectSubscribeGroup": "Valitse tilausryhmä",
"server": "Palvelin",
"serverGroup": "Palvelinryhmä",
"speedLimit": "Nopeusrajoitus (Mbps)",
"subscribeGroup": "Tilausryhmä",
"traffic": "Liikenne",
"unit_price": "Kuukausihinta"
},
"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": "varasto",
"name": "Nimi",
"quota": "Ostorajoitus/kerta",
"replacement": "Nollaa hinta/kerta",
"sell": "myydä",
"show": "Etusivun näyttö",
"subscribe": "Tilaa",
"subscribeGroup": "Tilaa ryhmä",
"tabs": {
"subscribe": "Tilaa",
"subscribeGroup": "Tilaa ryhmä"
},
"traffic": "liikenne",
"unitPrice": "Hinta/kk",
"updateSuccess": "Päivitys onnistui"
}

View File

@ -0,0 +1,156 @@
{
"currency": {
"accessKey": "Avain",
"accessKeyDescription": "https://exchangerate.host tarjoaa ilmaisen valuuttakurssi-API-avaimen",
"currencySymbol": "Valuuttasymboli",
"currencySymbolDescription": "Käytetään vain näyttötarkoituksiin, muutoksen jälkeen kaikki järjestelmän valuuttayksiköt muuttuvat",
"currencyUnit": "Valuuttayksikkö",
"currencyUnitDescription": "Käytetään vain näyttötarkoituksiin, muutoksen jälkeen kaikki järjestelmän valuuttayksiköt muuttuvat",
"saveSuccess": "Tallennus onnistui"
},
"email": {
"expiration_email_template": "Vanhentumisilmoitusmalli",
"expiration_email_templateDescription": "Mallin {after}.muuttujanimi{before} korvataan todellisilla tiedoilla, varmista, että säilytät nämä muuttujat.",
"inputPlaceholder": "Syötä sisältö...",
"maintenance_email_template": "Huoltoilmoitusmalli",
"maintenance_email_templateDescription": "Mallin {after}.muuttujanimi{before} korvataan todellisilla tiedoilla, varmista, että säilytät nämä muuttujat.",
"saveSuccess": "Asetukset on tallennettu onnistuneesti.",
"sendFailure": "Testisähköpostin lähetys epäonnistui, tarkista asetukset.",
"sendSuccess": "Testisähköposti on lähetetty onnistuneesti.",
"sendTestEmail": "Lähetä testisähköposti",
"sendTestEmailDescription": "Lähetä testisähköposti varmistaaksesi, että asetukset ovat oikein.",
"senderAddress": "Lähettäjän osoite",
"senderAddressDescription": "Oletussähköpostiosoite, jota käytetään sähköpostien lähettämiseen.",
"smtpAccount": "SMTP-tili",
"smtpAccountDescription": "Sähköpostitili todennusta varten.",
"smtpEncryptionMethod": "SMTP-salausmenetelmä",
"smtpEncryptionMethodDescription": "Valitse, otetaanko SSL/TLS-salaus käyttöön.",
"smtpPassword": "SMTP-salasana",
"smtpPasswordDescription": "Tämän SMTP-tilin salasana.",
"smtpServerAddress": "SMTP-palvelimen osoite",
"smtpServerAddressDescription": "Määritä palvelimen osoite, jota käytetään sähköpostien lähettämiseen.",
"smtpServerPort": "SMTP-palvelimen portti",
"smtpServerPortDescription": "Määritä porttinumero, jota käytetään SMTP-palvelimeen yhdistämiseen.",
"verify_email_template": "Vahvistussähköpostimalli",
"verify_email_templateDescription": "Mallin {after}.muuttujanimi{before} korvataan todellisilla tiedoilla, varmista, että säilytät nämä muuttujat."
},
"invite": {
"commissionFirstTimeOnly": "Vain ensimmäisestä ostosta provisio",
"commissionFirstTimeOnlyDescription": "Kun tämä on käytössä, provisio syntyy vain, kun kutsuttu henkilö maksaa ensimmäisen kerran. Voit määrittää yksittäisen käyttäjän käyttäjähallinnassa.",
"enableForcedInvite": "Ota pakotettu kutsu käyttöön",
"enableForcedInviteDescription": "Kun tämä on käytössä, vain kutsutut käyttäjät voivat rekisteröityä.",
"inputPlaceholder": "Ole hyvä ja syötä",
"inviteCommissionPercentage": "Kutsupalkkion prosenttiosuus",
"inviteCommissionPercentageDescription": "Oletusarvoinen globaali provisiojakosuhde, voit määrittää yksittäisen suhteen käyttäjähallinnassa.",
"saveSuccess": "Tallennus onnistui"
},
"node": {
"communicationKey": "Viestintäavain",
"communicationKeyDescription": "Solmun viestinnän avain, joka varmistaa, että tiedot eivät joudu muiden sieppaamiksi",
"inputPlaceholder": "Ole hyvä ja syötä",
"nodePullInterval": "Solmun noutoväli",
"nodePullIntervalDescription": "Kuinka usein solmu hakee tietoja paneelista (sekunteina)",
"nodePushInterval": "Solmun lähetysväli",
"nodePushIntervalDescription": "Kuinka usein solmu lähettää tietoja paneeliin",
"saveSuccess": "Tallennus onnistui"
},
"register": {
"emailSuffixWhitelist": "Sähköpostin jälkiliitteen sallittu luettelo",
"emailSuffixWhitelistDescription": "Kun tämä on käytössä, vain luettelossa olevilla jälkiliitteillä varustetut sähköpostit voivat rekisteröityä",
"emailVerification": "Sähköpostivarmennus",
"emailVerificationDescription": "Kun tämä on käytössä, käyttäjien on vahvistettava sähköpostinsa",
"ipRegistrationLimit": "IP-rekisteröintirajoitus",
"ipRegistrationLimitDescription": "Kun tämä on käytössä, sääntöjen mukaisia IP-osoitteita rajoitetaan rekisteröitymästä. Huomaa, että CDN tai etuvälimuistin käyttö voi aiheuttaa ongelmia IP-määrityksessä",
"penaltyTime": "Rangaistusaika (minuuttia)",
"penaltyTimeDescription": "Käyttäjän on odotettava rangaistusajan umpeutumista ennen kuin voi rekisteröityä uudelleen",
"registrationLimitCount": "Rekisteröintirajoituksen määrä",
"registrationLimitCountDescription": "Kun rekisteröintirajoitus saavutetaan, rangaistus otetaan käyttöön",
"saveSuccess": "Tallennus onnistui",
"stopNewUserRegistration": "Lopeta uusien käyttäjien rekisteröinti",
"stopNewUserRegistrationDescription": "Kun tämä on käytössä, kukaan ei voi rekisteröityä",
"trialRegistration": "Kokeilurekisteröinti",
"trialRegistrationDescription": "Ota kokeilurekisteröinti käyttöön, muokkaa ensin kokeilupakettia ja kestoa",
"whitelistSuffixes": "Sallitut jälkiliitteet",
"whitelistSuffixesDescription": "Käytetään sähköpostin rekisteröintivarmennukseen, yksi per rivi",
"whitelistSuffixesPlaceholder": "Anna sähköpostin jälkiliite, yksi per rivi"
},
"site": {
"logo": "LOGO",
"logoDescription": "Näyttääksesi paikan, jossa LOGO tulee näkyä",
"logoPlaceholder": "Syötä LOGO:n URL-osoite, älä lopeta '/'-merkillä",
"saveSuccess": "Tallennus onnistui",
"siteDesc": "Sivuston kuvaus",
"siteDescDescription": "Näyttääksesi paikan, jossa sivuston kuvaus tulee näkyä",
"siteDescPlaceholder": "Syötä sivuston kuvaus",
"siteDomain": "Sivuston verkkotunnus",
"siteDomainDescription": "Nykyisen verkkosivuston verkkotunnuksen osoite, esimerkiksi sähköpostissa käytettäväksi",
"siteDomainPlaceholder": "Syötä verkkotunnuksen osoite, useita verkkotunnuksia varten yksi per rivi",
"siteName": "Sivuston nimi",
"siteNameDescription": "Näyttääksesi paikan, jossa sivuston nimi tulee näkyä",
"siteNamePlaceholder": "Syötä sivuston nimi"
},
"subscription": {
"add": "Lisää",
"app": "Sovellus",
"appDescription": "Määritä sovelluksen latausosoite ja tuontisäännöt, muista tallentaa muutosten jälkeen",
"appDownloadURL": "Sovelluksen latausosoite",
"appIcon": "Sovelluksen kuvake",
"appName": "Sovelluksen nimi",
"delete": "Poista",
"reset": "Nollaa",
"save": "Tallenna",
"saveSuccess": "Tallennus onnistui",
"singleSubscriptionMode": "Yksittäinen tilausmalli",
"singleSubscriptionModeDescription": "Kun tämä on käytössä, kaikkien käyttäjien paketit muunnetaan saldoksi",
"subscriptionDomain": "Tilausverkkotunnus",
"subscriptionDomainDescription": "Käytetään tilaukseen, jätä tyhjäksi käyttääksesi sivuston verkkotunnusta",
"subscriptionDomainPlaceholder": "Anna tilausverkkotunnus, useita verkkotunnuksia varten yksi per rivi",
"subscriptionPath": "Tilauspolku",
"subscriptionPathDescription": "Käytetään tilaukseen, muista käynnistää järjestelmä uudelleen muutosten jälkeen parhaan suorituskyvyn varmistamiseksi",
"subscriptionPathPlaceholder": "Anna",
"subscriptionProtocol": "Tilausprotokolla",
"wildcardResolution": "Yleismerkkien ratkaisu",
"wildcardResolutionDescription": "Käytetään tilaukseen"
},
"tabs": {
"currency": "Valuutta",
"email": "Sähköposti",
"invite": "Kutsu",
"node": "Solmu",
"register": "Rekisteröidy",
"site": "Sivusto",
"subscription": "Tilaus",
"telegram": "Telegram",
"tos": "Käyttöehdot",
"verify": "Vahvista"
},
"telegram": {
"botToken": "Botti Token",
"botTokenDescription": "Anna Botfatherin antama token",
"enableBotNotifications": "Ota käyttöön botti-ilmoitukset",
"enableBotNotificationsDescription": "Kun tämä on käytössä, botti lähettää perusilmoituksia Telegramiin liitetyille ylläpitäjille ja käyttäjille",
"groupURL": "Ryhmä URL",
"groupURLDescription": "Kun tämä on täytetty, se näytetään käyttäjäpuolella tai käytetään tarvittaessa",
"inputPlaceholderBotToken": "0000000000:xxxxxxxxx_xxxxxxxxxxxxxxx",
"inputPlaceholderGroupURL": "https://t.me/xxxxxx",
"saveSuccess": "Tallennus onnistui"
},
"tos": {
"saveSuccess": "Tallennus onnistui",
"title": "Palveluehdot"
},
"verify": {
"inputPlaceholder": "Syötä",
"loginVerificationCode": "Kirjautumiskoodi",
"loginVerificationCodeDescription": "Ihmisen ja koneen välinen tarkistus kirjautumisen yhteydessä",
"registrationVerificationCode": "Rekisteröintikoodi",
"registrationVerificationCodeDescription": "Ihmisen ja koneen välinen tarkistus rekisteröitymisen yhteydessä",
"resetPasswordVerificationCode": "Salasanan palautuskoodi",
"resetPasswordVerificationCodeDescription": "Ihmisen ja koneen välinen tarkistus salasanan palautuksen yhteydessä",
"saveSuccess": "Tallennus onnistui",
"turnstileSecret": "Turnstile-salaisuus",
"turnstileSecretDescription": "Cloudflaren tarjoama Turnstile-salaisuus",
"turnstileSiteKey": "Turnstile-sivustoavain",
"turnstileSiteKeyDescription": "Cloudflaren tarjoama Turnstile-sivustoavain"
}
}

View File

@ -0,0 +1,19 @@
{
"actions": "toiminnot",
"cancel": "Peruuta",
"check": "Tarkista",
"close": "sulje",
"closeSuccess": "Sulkeminen onnistui",
"closeWarning": "Kun suljet tämän työtilauksen, et voi enää käsitellä sitä. Olethan varovainen.",
"confirm": "Vahvista",
"confirmClose": "Haluatko varmasti sulkea?",
"createdAt": "Luontiaika",
"inputPlaceholder": "Kirjoita kysymyksesi tähän, vastaamme mahdollisimman pian.",
"open": "Avaa",
"reply": "vastaa",
"status": ["Tila", "Seurattava", "Vastattava", "Käsitelty", "Suljettu"],
"ticketList": "Tukipyyntölista",
"title": "Otsikko",
"updatedAt": "Päivitetty",
"user": "käyttäjä"
}

View File

@ -0,0 +1,26 @@
{
"caller": "Soittaja",
"cancel": "Peruuta",
"confirmReboot": "Vahvista uudelleenkäynnistys",
"confirmSystemReboot": "Vahvista järjestelmän uudelleenkäynnistys",
"confirmSystemUpgrade": "Vahvista järjestelmän päivitys",
"confirmUpgrade": "Vahvista päivitys",
"currentVersion": "Nykyinen järjestelmäversio:",
"errors": "Virheet",
"ip": "IP",
"lastUpdated": "Viimeksi päivitetty:",
"none": "Ei mitään",
"query": "Kysely",
"rebootDescription": "Oletko varma, että haluat käynnistää järjestelmän uudelleen? Tämä toimenpide aiheuttaa lyhyen palvelukatkon.",
"rebooting": "Järjestelmä käynnistyy uudelleen...",
"refreshLogs": "Päivitä lokit",
"request": "Pyyntö",
"status": "Tila",
"systemLogs": "Järjestelmän lokit",
"systemReboot": "Järjestelmän uudelleenkäynnistys",
"systemServices": "Järjestelmäpalvelut",
"systemUpgrade": "Järjestelmän päivitys",
"upgradeDescription": "Haluatko varmasti suorittaa järjestelmäpäivityksen? Tämä toimenpide voi kestää muutaman minuutin, ja sen aikana järjestelmä ei välttämättä vastaa.",
"userAgent": "Käyttäjäagentti",
"viewLogsAndManage": "Tarkastele järjestelmän lokitietoja, suorita järjestelmäpäivityksiä ja uudelleenkäynnistyksiä"
}

View File

@ -0,0 +1,38 @@
{
"actions": "toiminnot",
"balance": "Saldo",
"cancel": "Peruuta",
"confirm": "Vahvista",
"confirmDelete": "Oletko varma, että haluat poistaa?",
"create": "Luo",
"createSuccess": "Luonti onnistui",
"createUser": "Luo käyttäjä",
"createdAt": "Rekisteröitymisaika",
"delete": "poista",
"deleteDescription": "Poistamisen jälkeen tietoja ei voi palauttaa, ole varovainen.",
"deleteSuccess": "Poisto onnistui",
"edit": "muokkaa",
"editUser": "Muokkaa käyttäjää",
"email": "sähköposti",
"enable": "Ota käyttöön",
"form": {
"balance": "Saldo",
"balancePlaceholder": "Saldo",
"cancel": "Peruuta",
"confirm": "Vahvista",
"invalidEmailFormat": "Virheellinen sähköpostimuoto",
"inviteCode": "Kutsukoodi",
"inviteCodePlaceholder": "Syötä kutsukoodi (jätä tyhjäksi, jos haluat luoda automaattisesti)",
"manager": "Ylläpitäjä",
"password": "Salasana",
"passwordPlaceholder": "Syötä uusi salasana (voi jättää tyhjäksi)",
"refererId": "Suosittelijan ID",
"refererIdPlaceholder": "Syötä suosittelijan ID",
"userEmail": "Käyttäjän sähköposti",
"userEmailPlaceholder": "Syötä käyttäjän sähköposti"
},
"referer": "Suosittelija",
"updateSuccess": "Päivitys onnistui",
"userList": "Käyttäjälista",
"userName": "Käyttäjän sähköposti"
}

View File

@ -0,0 +1,30 @@
{
"actions": "actions",
"announcementList": "Liste des annonces",
"cancel": "Annuler",
"confirm": "Confirmer",
"confirmDelete": "Êtes-vous sûr de vouloir supprimer ?",
"content": "Contenu",
"create": "Créer",
"createAnnouncement": "Créer une annonce",
"createSuccess": "Création réussie",
"delete": "Supprimer",
"deleteDescription": "Une fois supprimées, les données ne pourront pas être récupérées. Veuillez procéder avec prudence.",
"deleteSuccess": "Suppression réussie",
"edit": "Éditer",
"editAnnouncement": "Modifier l'annonce",
"enable": "Activer",
"form": {
"cancel": "Annuler",
"confirm": "Confirmer",
"content": "Contenu",
"contentPlaceholder": "Veuillez entrer le contenu de l'annonce (Markdown pris en charge)",
"title": "Titre",
"titlePlaceholder": "Veuillez entrer"
},
"hide": "Masquer",
"show": "afficher",
"title": "Titre",
"updateSuccess": "Mise à jour réussie",
"updatedAt": "Mis à jour à"
}

View File

@ -0,0 +1,39 @@
{
"check": {
"checking": "Vérification en cours...",
"continue": "Continuer",
"description": "Veuillez entrer votre adresse e-mail pour continuer à vous connecter ou à vous inscrire.",
"email": "Veuillez entrer une adresse e-mail valide.",
"title": "Connexion/Inscription",
"whitelist": "Le domaine de l'e-mail n'est pas sur la liste blanche autorisée."
},
"login": {
"description": "Veuillez entrer vos informations de compte pour vous connecter.",
"forgotPassword": "Mot de passe oublié ?",
"success": "Connexion réussie !",
"switchAccount": "S'inscrire/Changer de compte",
"title": "Connexion"
},
"logout": "Se déconnecter",
"orWithEmail": "ou utiliser l'e-mail",
"register": {
"description": "Créez un nouveau compte, remplissez vos informations pour vous inscrire.",
"existingAccount": "Vous avez déjà un compte ?",
"get": "Obtenir",
"invite": "Code d'invitation",
"message": "#### Cher utilisateur,\n\nMerci pour votre intérêt et votre soutien. En raison d'un ajustement de notre stratégie opérationnelle, nous avons fermé la fonction d'inscription pour les nouveaux utilisateurs. Pendant cette période, l'utilisation par les utilisateurs existants ne sera pas affectée.\n\nNous nous engageons à vous offrir un meilleur service et une meilleure expérience, c'est pourquoi nous procéderons à une optimisation complète du système et à une mise à niveau des fonctionnalités pendant la fermeture des inscriptions. À l'avenir, nous vous accueillerons avec un contenu et des services de meilleure qualité.\n\nVeuillez suivre notre site web et nos plateformes de médias sociaux pour obtenir les dernières nouvelles et notifications. Merci pour votre compréhension et votre soutien.\n\nSi vous avez des questions ou avez besoin d'aide, n'hésitez pas à contacter notre équipe de service client.\n\n**Merci encore pour votre soutien et votre compréhension.**",
"passwordMismatch": "Les mots de passe saisis ne correspondent pas",
"success": "Inscription réussie, vous êtes maintenant connecté automatiquement !",
"switchToLogin": "Connexion/Réinitialiser l'email",
"title": "Inscription"
},
"reset": {
"description": "Veuillez entrer votre adresse e-mail pour réinitialiser votre mot de passe.",
"existingAccount": "Vous avez déjà un compte ?",
"get": "Obtenir",
"success": "Réinitialisation du mot de passe réussie, vous êtes automatiquement connecté !",
"switchToLogin": "Connexion/Inscription",
"title": "Réinitialiser le mot de passe"
},
"tos": "Conditions de service"
}

View File

@ -0,0 +1,60 @@
{
"billing": {
"description": "Soutenir aide PPanel à continuer de publier des mises à jour !",
"title": "Sponsors"
},
"empty": [
"Imaginez ici un contenu plein de merveilles ! Pour l'instant, il faut se contenter de l'imaginer…",
"Cette zone a mystérieusement disparu, nous essayons de la faire revenir !",
"Oups, rien ne s'est passé… vous pouvez y ajouter quelque chose vous-même !",
"C'est comme découvrir une scène vide lors d'un concert… pourquoi ne pas monter et performer ?",
"Vous avez trouvé une terre vierge ! Pourquoi ne pas y construire une maison ?",
"Rien ici pour l'instant, mais la créativité commence ici !",
"Il n'y a rien… mais ne vous inquiétez pas, ce n'est que le début !",
"Un grand surprise était prévue ici, mais elle s'est échappée !",
"Rien pour l'instant, comme un placard à snacks vidé.",
"Cet espace vide attend son protagoniste pour entrer en scène !"
],
"request": {
"10001": "La requête n'a pas encore abouti, veuillez réessayer plus tard ou vérifier vos critères.",
"10002": "L'opération de mise à jour a échoué, veuillez réessayer plus tard.",
"10003": "Impossible de compléter l'opération d'insertion pour le moment, veuillez réessayer plus tard.",
"10004": "L'opération de suppression n'a pas pu être complétée, veuillez réessayer plus tard.",
"20001": "Les informations de cet utilisateur existent déjà, veuillez modifier les informations et réessayer.",
"20002": "Utilisateur non trouvé, veuillez vérifier les informations et réessayer.",
"20003": "Le mot de passe que vous avez saisi est incorrect, veuillez le ressaisir.",
"20004": "Cet utilisateur a été désactivé, si vous avez des questions, veuillez contacter le service client.",
"20005": "Solde insuffisant, veuillez recharger et réessayer.",
"20006": "La fonction d'inscription est temporairement indisponible, veuillez réessayer plus tard.",
"30001": "Ce nœud existe déjà, veuillez ne pas l'ajouter à nouveau.",
"30002": "Nœud non trouvé, veuillez vérifier et réessayer.",
"30003": "Le groupe existe déjà, veuillez essayer un autre nom.",
"30004": "Groupe non trouvé, veuillez vérifier les informations et réessayer.",
"30005": "Le groupe contient encore des éléments, veuillez le vider et réessayer.",
"400": "Les paramètres de la requête sont incorrects, veuillez vérifier et soumettre à nouveau.",
"40002": "Aucun jeton valide trouvé, veuillez vous connecter et réessayer.",
"40003": "Le jeton actuel est invalide, veuillez en obtenir un nouveau et réessayer.",
"40004": "Le jeton a expiré, veuillez vous reconnecter.",
"40005": "Vous n'avez pas la permission d'accéder, si vous avez des questions, veuillez contacter l'administrateur.",
"401": "Les requêtes sont trop fréquentes, veuillez réessayer plus tard.",
"500": "Le serveur a rencontré un problème, veuillez réessayer plus tard.",
"50001": "Informations sur le coupon introuvables, veuillez vérifier et réessayer.",
"50002": "Ce coupon a déjà été utilisé, il ne peut pas être réutilisé.",
"60001": "L'abonnement a expiré, veuillez le renouveler avant de l'utiliser.",
"60002": "Impossible d'utiliser cet abonnement pour le moment, veuillez réessayer plus tard.",
"70001": "Le code de vérification est incorrect, veuillez le ressaisir.",
"80001": "La tâche n'a pas été ajoutée avec succès à la file d'attente, veuillez réessayer plus tard.",
"90001": "Veuillez désactiver le mode DEBUG et réessayer.",
"undefined": "Une erreur système est survenue, veuillez réessayer plus tard."
},
"table": {
"actions": "Actions",
"asc": "Ascendant",
"desc": "Descendant",
"hide": "Cacher",
"pageInfo": "Page {current} sur {total}",
"rowsPerPage": "Lignes par page",
"selectedItems": "{total} lignes sélectionnées"
},
"unlimited": "illimité"
}

View File

@ -0,0 +1,50 @@
{
"actions": "actions",
"amount": "Montant",
"cancel": "Annuler",
"code": "code",
"confirm": "Confirmer",
"confirmDelete": "Êtes-vous sûr de vouloir supprimer ?",
"count": "quantité",
"couponList": "Liste des coupons",
"create": "Créer",
"createCoupon": "Créer un coupon",
"createSuccess": "Création réussie",
"delete": "Supprimer",
"deleteSuccess": "Suppression réussie",
"deleteWarning": "Une fois supprimées, les données ne pourront pas être récupérées. Veuillez procéder avec prudence.",
"discount": "remise",
"edit": "Éditer",
"editCoupon": "Modifier le coupon",
"enable": "Activer",
"form": {
"amountDiscount": "Remise en montant",
"cancel": "Annuler",
"confirm": "Confirmer",
"count": "Nombre maximal d'utilisations",
"countPlaceholder": "Nombre maximal d'utilisations (laisser vide pour illimité)",
"customCouponCode": "Code promo personnalisé",
"customCouponCodePlaceholder": "Code promo personnalisé (laisser vide pour générer automatiquement)",
"enterCouponName": "Veuillez entrer le nom du coupon",
"enterValue": "Veuillez entrer la valeur",
"expireTime": "Date d'expiration",
"name": "Nom",
"percentageDiscount": "Remise en pourcentage",
"selectServer": "Veuillez sélectionner un abonnement",
"selectTime": "Sélectionner l'heure",
"specifiedServer": "Abonnement spécifié",
"startTime": "Date de début",
"type": "Type de coupon",
"userLimit": "Nombre maximal d'utilisations par utilisateur",
"userLimitPlaceholder": "Nombre maximal d'utilisations par utilisateur (laisser vide pour illimité)"
},
"name": "Nom",
"percentage": "pourcentage",
"remainingTimes": "Restant",
"subscribe": "S'abonner",
"type": "Type",
"unlimited": "illimité",
"updateSuccess": "Mise à jour réussie",
"usedTimes": "Nombre d'utilisations",
"validityPeriod": "Période de validité"
}

View File

@ -0,0 +1,29 @@
{
"DocumentList": "Liste des documents",
"actions": "Actions",
"cancel": "Annuler",
"confirm": "Confirmer",
"confirmDelete": "Êtes-vous sûr de vouloir supprimer ?",
"create": "Créer",
"createDocument": "Créer un document",
"createSuccess": "Création réussie",
"delete": "Supprimer",
"deleteDescription": "Une fois supprimées, les données ne pourront pas être récupérées. Veuillez procéder avec prudence.",
"deleteSuccess": "Suppression réussie",
"edit": "Éditer",
"editDocument": "Modifier le document",
"form": {
"cancel": "Annuler",
"confirm": "Confirmer",
"content": "Contenu",
"tags": "Catégories",
"tagsPlaceholder": "Veuillez utiliser la touche Entrée ou une virgule (,) pour séparer et entrer plusieurs catégories",
"title": "Titre",
"titlePlaceholder": "Veuillez entrer"
},
"show": "Afficher",
"tags": "Catégories",
"title": "Titre",
"updateSuccess": "Mise à jour réussie",
"updatedAt": "Mis à jour à"
}

View File

@ -0,0 +1,29 @@
{
"email": "e-mail",
"month": "Ce mois-ci",
"monthDownloadTraffic": "Trafic de téléchargement ce mois-ci",
"monthUploadTraffic": "Trafic de téléchargement ce mois-ci",
"newPurchase": "Nouvel achat",
"nodeTraffic": "Trafic du nœud",
"nodes": "nœuds",
"offlineNodeCount": "Nombre de nœuds hors ligne",
"onlineIPCount": "Nombre d'IP en ligne",
"onlineNodeCount": "Nombre de nœuds en ligne",
"pendingTickets": "Tickets en attente",
"register": "S'inscrire",
"repurchase": "Rachat",
"revenueTitle": "Statistiques des revenus",
"selectTypePlaceholder": "Sélectionner le type",
"statisticsTitle": "Statistiques",
"today": "aujourd'hui",
"todayDownloadTraffic": "Trafic de téléchargement d'aujourd'hui",
"todayUploadTraffic": "Trafic de téléchargement d'aujourd'hui",
"total": "Total",
"totalIncome": "Revenu total",
"trafficRank": "Classement du trafic",
"type": "Type",
"userTitle": "Statistiques de l'utilisateur",
"userTraffic": "Trafic utilisateur",
"users": "utilisateurs",
"yesterday": "hier"
}

View File

@ -0,0 +1,24 @@
{
"cs-CZ": "Tchèque",
"de-DE": "Allemand",
"en-US": "anglais",
"es-ES": "Espagnol",
"es-MX": "Espagnol (Mexique)",
"fi-FI": "finnois",
"fr-FR": "français",
"hi-IN": "hindi",
"hu-HU": "Hongrois",
"ja-JP": "Japonais",
"ko-KR": "coréen",
"no-NO": "Norvégien",
"pl-PL": "Polonais",
"pt-BR": "portugais (Brésil)",
"ro-RO": "Roumain",
"ru-RU": "Russe",
"th-TH": "thaïlandais",
"tr-TR": "turc",
"uk-UA": "Ukrainien",
"vi-VN": "Vietnamien",
"zh-CN": "français (France)",
"zh-TW": "chinois (traditionnel)"
}

View File

@ -0,0 +1,18 @@
{
"Announcement Management": "Gestion des annonces",
"Coupon Management": "Gestion des coupons",
"Dashboard": "Tableau de bord",
"Document Management": "Gestion des documents",
"Finance": "Finance",
"Order Management": "Gestion des commandes",
"Payment Config": "Configuration de paiement",
"Server": "Serveur",
"Server Management": "Gestion des services",
"Settings": "Paramètres",
"Subscribe Management": "Gestion des abonnements",
"System Config": "Configuration du système",
"System Tool": "Outil Système",
"Ticket Management": "Gestion des billets",
"User": "Utilisateur",
"User Management": "Gestion des utilisateurs"
}

View File

@ -0,0 +1,37 @@
{
"amount": "Montant",
"couponDiscount": "Remise de coupon",
"discount": "Montant de la remise",
"failed": "Échec",
"feeAmount": "Frais",
"method": "Méthode de paiement",
"methods": {
"alipay_f2f": "Alipay (face à face)",
"balance": "Solde",
"epay": "Epay",
"stripe_alipay": "Stripe (Alipay)",
"stripe_wechat_pay": "Stripe (WeChat)"
},
"orderNumber": "Numéro de commande",
"status": {
"0": "Statut",
"1": "En attente de paiement",
"2": "Payé",
"3": "Annulé",
"4": "Fermé",
"5": "Terminé"
},
"subscribe": "S'abonner",
"subscribePrice": "Prix d'abonnement",
"total": "Total",
"tradeNo": "Numéro de transaction",
"type": {
"0": "Type",
"1": "Nouvel achat",
"2": "Renouvellement",
"3": "Réinitialiser le trafic",
"4": "Recharger"
},
"updateTime": "Heure de mise à jour",
"user": "utilisateur"
}

View File

@ -0,0 +1,44 @@
{
"aliPay": "Paiement par Alipay",
"alipayf2f": {
"appId": "ID de l'application Alipay",
"invoiceName": "Nom personnalisé du produit",
"invoiceNameDescription": "S'affichera sur la facture Alipay",
"privateKey": "Clé privée Alipay",
"publicKey": "Clé publique Alipay",
"sandbox": "Mode bac à sable",
"sandboxDescription": "Activez le mode bac à sable pour tester le paiement"
},
"enable": "Activer",
"enableDescription": "Activer ce mode de paiement",
"epay": {
"key": "CLÉ",
"pid": "PID",
"url": "URL"
},
"feeMode": "Mode de facturation",
"feeModeDescription": "Mode de facturation des frais supplémentaires",
"feeModeItems": ["Pas de frais", "Pourcentage", "Montant fixe", "Les deux ci-dessus"],
"feePercent": "Pourcentage de frais (optionnel)",
"feePercentDescription": "Ajouter des frais au montant de la commande",
"fixedFee": "Frais fixes (optionnel)",
"fixedFeeDescription": "Ajouter des frais fixes au montant de la commande",
"iconUrl": "URL de l'icône (facultatif)",
"iconUrlDescription": "Utilisé pour l'affichage frontal",
"inputPlaceholder": "Veuillez entrer",
"key": "CLÉ",
"notifyUrl": "Domaine de notification personnalisé (facultatif)",
"notifyUrlDescription": "Les notifications de la passerelle seront envoyées à ce domaine",
"payForRecommendations": "Payer pour les recommandations",
"pid": "PID",
"saveSuccess": "Enregistrement réussi",
"showName": "Afficher le nom",
"showNameDescription": "Utilisé pour l'affichage frontal",
"stripe": {
"publicKey": "CLÉ PUBLIQUE",
"secretKey": "CLÉ SECRÈTE",
"webhookSecret": "SIGNATURE DE CLÉ WEBHOOK"
},
"url": "URL",
"wechatPay": "Paiement WeChat"
}

View File

@ -0,0 +1,122 @@
{
"group": {
"actions": "Actions",
"cancel": "Annuler",
"confirm": "Confirmer",
"confirmDelete": "Êtes-vous sûr de vouloir supprimer ?",
"create": "Créer",
"createNodeGroup": "Créer un groupe de nœuds",
"createdSuccessfully": "Création réussie",
"delete": "Supprimer",
"deleteWarning": "Les données ne pourront pas être récupérées après suppression, veuillez procéder avec prudence.",
"deletedSuccessfully": "Suppression réussie",
"description": "Description",
"edit": "Éditer",
"editNodeGroup": "Éditer le groupe de nœuds",
"form": {
"cancel": "Annuler",
"confirm": "Confirmer",
"description": "Description",
"name": "Nom"
},
"name": "Nom",
"title": "Liste des groupes de nœuds",
"updatedAt": "Mis à jour à"
},
"node": {
"abnormal": "Anormal",
"actions": "Actions",
"address": "Adresse",
"all": "Tout",
"cancel": "Annuler",
"confirm": "Confirmer",
"confirmDelete": "Êtes-vous sûr de vouloir supprimer ?",
"create": "Créer",
"createNode": "Créer un nœud",
"createSuccess": "Création réussie",
"delete": "Supprimer",
"deleteSuccess": "Suppression réussie",
"deleteWarning": "Après suppression, les données ne pourront pas être récupérées. Veuillez procéder avec prudence.",
"disk": "Disque",
"edit": "Éditer",
"editNode": "Éditer le nœud",
"enable": "Activer",
"form": {
"allowInsecure": "Autoriser l'insécurité",
"cancel": "Annuler",
"confirm": "Confirmer",
"edit": "Éditer",
"editSecurity": "Éditer la configuration de sécurité",
"enableRelay": "Activer le relais",
"enableTLS": "Activer TLS",
"encryptionMethod": "Méthode de cryptage",
"flow": "Algorithme de contrôle de flux",
"hopInterval": "Intervalle de saut",
"hopPorts": "Ports de saut",
"hopPortsPlaceholder": "Séparer plusieurs ports par des virgules",
"name": "Nom",
"nodeGroupId": "ID du groupe de nœuds",
"obfsPassword": "Mot de passe d'obfuscation",
"obfsPasswordPlaceholder": "Laisser vide pour ne pas obfusquer",
"path": "Chemin",
"pleaseSelect": "Veuillez sélectionner",
"port": "Port de service",
"protocol": "Protocole",
"relayHost": "Adresse de relais",
"relayPort": "Port de relais",
"remarks": "Remarques",
"security": "Sécurité",
"securityConfig": "Configuration de sécurité",
"security_config": {
"fingerprint": "Empreinte digitale",
"privateKey": "Clé privée",
"privateKeyPlaceholder": "Laisser vide pour générer automatiquement",
"publicKey": "Clé publique",
"publicKeyPlaceholder": "Laisser vide pour générer automatiquement",
"serverAddress": "Adresse du serveur",
"serverAddressPlaceholder": "Adresse cible REALITY, par défaut utilise SNI",
"serverName": "Nom du serveur (SNI)",
"serverNamePlaceholder": "Obligatoire pour REALITY, doit correspondre à l'arrière-plan",
"serverPort": "Port du serveur",
"serverPortPlaceholder": "Port cible REALITY, par défaut 443",
"shortId": "Identifiant court",
"shortIdPlaceholder": "Laisser vide pour générer automatiquement",
"sni": "Indication de nom de serveur (SNI)"
},
"selectEncryptionMethod": "Sélectionner la méthode de cryptage",
"selectNodeGroup": "Sélectionner le groupe de nœuds",
"selectProtocol": "Sélectionner le protocole",
"serverAddr": "Adresse du serveur",
"serverName": "Nom du service",
"speedLimit": "Limite de vitesse",
"speedLimitPlaceholder": "Illimité",
"trafficRatio": "Taux de trafic",
"transport": "Protocole de transport",
"transportConfig": "Configuration du protocole de transport",
"transportHost": "Adresse du service de transport",
"transportPath": "Chemin de transport",
"transportServerName": "Nom du service de transport"
},
"lastUpdated": "Dernière mise à jour",
"memory": "Mémoire",
"name": "Nom",
"node": "Nœud",
"nodeGroup": "Groupe de nœuds",
"normal": "Normal",
"onlineCount": "Nombre d'utilisateurs en ligne",
"onlineUsers": "Utilisateurs en ligne",
"rate": "Taux",
"relay": "Relais",
"serverAddr": "Adresse du serveur",
"speedLimit": "Limite de vitesse",
"status": "Statut",
"trafficRatio": "Taux de trafic",
"type": "Type",
"updateSuccess": "Mise à jour réussie",
"updatedAt": "Date de mise à jour"
},
"tabs": {
"node": "Nœud",
"nodeGroup": "Groupe de nœuds"
}
}

View File

@ -0,0 +1,79 @@
{
"actions": "actions",
"cancel": "Annuler",
"confirm": "Confirmer",
"confirmDelete": "Êtes-vous sûr de vouloir supprimer ?",
"create": "Créer",
"createSubscribe": "Créer un abonnement",
"createSuccess": "Création réussie",
"delete": "Supprimer",
"deleteSuccess": "Suppression réussie",
"deleteWarning": "Une fois supprimées, les données ne peuvent pas être récupérées. Veuillez procéder avec prudence.",
"deviceLimit": "Nombre d'appareils",
"edit": "Éditer",
"editSubscribe": "Modifier l'abonnement",
"form": {
"cancel": "Annuler",
"confirm": "Confirmer",
"description": "Description",
"deviceLimit": "Limite d'appareils",
"discount": "Remise",
"discountDescription": "Remise basée sur le prix unitaire",
"discountMonths": "mois",
"discountPercent": "Pourcentage de remise",
"discount_price": "Prix remisé",
"duration": "Durée (mois)",
"inventory": "Stock",
"name": "Nom",
"noLimit": "Illimité",
"quota": "Quantité d'achat limitée",
"replacement": "Prix de réinitialisation (par fois)",
"selectSubscribeGroup": "Veuillez sélectionner un groupe d'abonnement",
"server": "Serveur",
"serverGroup": "Groupe de serveurs",
"speedLimit": "Limite de vitesse (Mbps)",
"subscribeGroup": "Groupe d'abonnement",
"traffic": "Trafic",
"unit_price": "Prix mensuel unitaire"
},
"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": "inventaire",
"name": "Nom",
"quota": "Limite d'achat/par fois",
"replacement": "Réinitialiser le prix/par fois",
"sell": "Vente",
"show": "Afficher sur la page d'accueil",
"subscribe": "S'abonner",
"subscribeGroup": "S'abonner au groupe",
"tabs": {
"subscribe": "S'abonner",
"subscribeGroup": "Groupe d'abonnement"
},
"traffic": "trafic",
"unitPrice": "Prix/mois",
"updateSuccess": "Mise à jour réussie"
}

View File

@ -0,0 +1,156 @@
{
"currency": {
"accessKey": "Clé d'accès",
"accessKeyDescription": "Clé API de taux de change fournie gratuitement par https://exchangerate.host",
"currencySymbol": "Symbole monétaire",
"currencySymbolDescription": "Utilisé uniquement pour l'affichage, toute modification entraînera un changement de toutes les unités monétaires dans le système",
"currencyUnit": "Unité monétaire",
"currencyUnitDescription": "Utilisé uniquement pour l'affichage, toute modification entraînera un changement de toutes les unités monétaires dans le système",
"saveSuccess": "Enregistrement réussi"
},
"email": {
"expiration_email_template": "Modèle de notification d'expiration",
"expiration_email_templateDescription": "Les variables {after}.nomDeVariable{before} dans le modèle seront remplacées par des données réelles, veuillez vous assurer de conserver ces variables.",
"inputPlaceholder": "Veuillez entrer le contenu...",
"maintenance_email_template": "Modèle de notification de maintenance",
"maintenance_email_templateDescription": "Les variables {after}.nomDeVariable{before} dans le modèle seront remplacées par des données réelles, veuillez vous assurer de conserver ces variables.",
"saveSuccess": "La configuration a été enregistrée avec succès.",
"sendFailure": "L'envoi de l'e-mail de test a échoué, veuillez vérifier la configuration.",
"sendSuccess": "L'e-mail de test a été envoyé avec succès.",
"sendTestEmail": "Envoyer un e-mail de test",
"sendTestEmailDescription": "Envoyez un e-mail de test pour vérifier si la configuration est correcte.",
"senderAddress": "Adresse de l'expéditeur",
"senderAddressDescription": "Adresse e-mail par défaut utilisée pour envoyer des e-mails.",
"smtpAccount": "Compte SMTP",
"smtpAccountDescription": "Compte e-mail utilisé pour l'authentification.",
"smtpEncryptionMethod": "Méthode de chiffrement SMTP",
"smtpEncryptionMethodDescription": "Choisissez si vous souhaitez activer le chiffrement SSL/TLS.",
"smtpPassword": "Mot de passe SMTP",
"smtpPasswordDescription": "Mot de passe pour ce compte SMTP.",
"smtpServerAddress": "Adresse du serveur SMTP",
"smtpServerAddressDescription": "Spécifiez l'adresse du serveur utilisée pour envoyer des e-mails.",
"smtpServerPort": "Port du serveur SMTP",
"smtpServerPortDescription": "Spécifiez le numéro de port pour se connecter au serveur SMTP.",
"verify_email_template": "Modèle d'e-mail de vérification",
"verify_email_templateDescription": "Les variables {after}.nomDeVariable{before} dans le modèle seront remplacées par des données réelles, veuillez vous assurer de conserver ces variables."
},
"invite": {
"commissionFirstTimeOnly": "Commission uniquement sur le premier achat",
"commissionFirstTimeOnlyDescription": "Une fois activé, la commission est générée uniquement lors du premier paiement de l'invité. Vous pouvez configurer chaque utilisateur individuellement dans la gestion des utilisateurs.",
"enableForcedInvite": "Activer l'invitation forcée",
"enableForcedInviteDescription": "Une fois activé, seuls les utilisateurs invités peuvent s'inscrire.",
"inputPlaceholder": "Veuillez entrer",
"inviteCommissionPercentage": "Pourcentage de commission d'invitation",
"inviteCommissionPercentageDescription": "Pourcentage de commission global par défaut, vous pouvez configurer un pourcentage individuel dans la gestion des utilisateurs.",
"saveSuccess": "Enregistrement réussi"
},
"node": {
"communicationKey": "Clé de communication",
"communicationKeyDescription": "Clé pour la communication du nœud, afin de garantir que les données ne soient pas interceptées par d'autres",
"inputPlaceholder": "Veuillez entrer",
"nodePullInterval": "Intervalle de récupération du nœud",
"nodePullIntervalDescription": "Fréquence à laquelle le nœud récupère les données du panneau (en secondes)",
"nodePushInterval": "Intervalle de poussée du nœud",
"nodePushIntervalDescription": "Fréquence à laquelle le nœud pousse les données vers le panneau",
"saveSuccess": "Enregistrement réussi"
},
"register": {
"emailSuffixWhitelist": "Liste blanche des suffixes d'email",
"emailSuffixWhitelistDescription": "Une fois activé, seuls les emails avec les suffixes de la liste pourront s'inscrire",
"emailVerification": "Vérification de l'email",
"emailVerificationDescription": "Une fois activé, les utilisateurs devront vérifier leur email",
"ipRegistrationLimit": "Limite d'inscription par IP",
"ipRegistrationLimitDescription": "Une fois activé, les IP répondant aux critères seront limitées pour l'inscription. Veuillez noter que la détermination de l'IP peut poser problème en raison du CDN ou du proxy frontal",
"penaltyTime": "Temps de pénalité (minutes)",
"penaltyTimeDescription": "L'utilisateur doit attendre que le temps de pénalité soit écoulé pour s'inscrire à nouveau",
"registrationLimitCount": "Compteur de limite d'inscription",
"registrationLimitCountDescription": "Active la pénalité après avoir atteint la limite d'inscription",
"saveSuccess": "Enregistrement réussi",
"stopNewUserRegistration": "Arrêter l'inscription de nouveaux utilisateurs",
"stopNewUserRegistrationDescription": "Une fois activé, personne ne pourra s'inscrire",
"trialRegistration": "Inscription d'essai",
"trialRegistrationDescription": "Activez l'inscription d'essai, veuillez d'abord modifier le forfait et la durée d'essai",
"whitelistSuffixes": "Suffixes de la liste blanche",
"whitelistSuffixesDescription": "Utilisé pour la vérification des emails d'inscription, un par ligne",
"whitelistSuffixesPlaceholder": "Veuillez entrer les suffixes d'email, un par ligne"
},
"site": {
"logo": "LOGO",
"logoDescription": "Utilisé pour afficher l'emplacement où le LOGO doit être montré",
"logoPlaceholder": "Veuillez entrer l'URL du LOGO, ne pas terminer par '/'",
"saveSuccess": "Enregistrement réussi",
"siteDesc": "Description du site",
"siteDescDescription": "Utilisé pour afficher l'emplacement où la description du site doit être montrée",
"siteDescPlaceholder": "Veuillez entrer la description du site",
"siteDomain": "Domaine du site",
"siteDomainDescription": "L'adresse de domaine actuelle du site, par exemple pour les e-mails",
"siteDomainPlaceholder": "Veuillez entrer l'adresse du domaine, un domaine par ligne",
"siteName": "Nom du site",
"siteNameDescription": "Utilisé pour afficher l'emplacement où le nom du site doit être montré",
"siteNamePlaceholder": "Veuillez entrer le nom du site"
},
"subscription": {
"add": "Ajouter",
"app": "Application",
"appDescription": "Configurez l'adresse de téléchargement de l'application et les règles d'importation, n'oubliez pas de sauvegarder après modification",
"appDownloadURL": "Adresse de téléchargement de l'application",
"appIcon": "Icône de l'application",
"appName": "Nom de l'application",
"delete": "Supprimer",
"reset": "Réinitialiser",
"save": "Enregistrer",
"saveSuccess": "Enregistrement réussi",
"singleSubscriptionMode": "Mode d'abonnement unique",
"singleSubscriptionModeDescription": "Une fois activé, tous les forfaits des utilisateurs seront convertis en solde",
"subscriptionDomain": "Domaine d'abonnement",
"subscriptionDomainDescription": "Utilisé pour l'abonnement, laissez vide pour utiliser le domaine du site",
"subscriptionDomainPlaceholder": "Veuillez entrer le domaine d'abonnement, un domaine par ligne",
"subscriptionPath": "Chemin d'abonnement",
"subscriptionPathDescription": "Utilisé pour l'abonnement, veuillez redémarrer le système après modification pour garantir une performance optimale",
"subscriptionPathPlaceholder": "Veuillez entrer",
"subscriptionProtocol": "Protocole d'abonnement",
"wildcardResolution": "Résolution de joker",
"wildcardResolutionDescription": "Utilisé pour l'abonnement"
},
"tabs": {
"currency": "Devise",
"email": "E-mail",
"invite": "Inviter",
"node": "Nœud",
"register": "S'inscrire",
"site": "Site",
"subscription": "Abonnement",
"telegram": "Telegram",
"tos": "Conditions de service",
"verify": "Vérifier"
},
"telegram": {
"botToken": "Jeton du robot",
"botTokenDescription": "Veuillez entrer le jeton fourni par Botfather",
"enableBotNotifications": "Activer les notifications du robot",
"enableBotNotificationsDescription": "Une fois activé, le robot enverra des notifications de base aux administrateurs et utilisateurs liés à Telegram",
"groupURL": "URL du groupe",
"groupURLDescription": "Une fois rempli, il sera affiché ou utilisé là où nécessaire sur le côté utilisateur",
"inputPlaceholderBotToken": "0000000000:xxxxxxxxx_xxxxxxxxxxxxxxx",
"inputPlaceholderGroupURL": "https://t.me/xxxxxx",
"saveSuccess": "Enregistrement réussi"
},
"tos": {
"saveSuccess": "Enregistrement réussi",
"title": "Conditions de service"
},
"verify": {
"inputPlaceholder": "Veuillez entrer",
"loginVerificationCode": "Code de vérification de connexion",
"loginVerificationCodeDescription": "Vérification humaine lors de la connexion",
"registrationVerificationCode": "Code de vérification d'inscription",
"registrationVerificationCodeDescription": "Vérification humaine lors de l'inscription",
"resetPasswordVerificationCode": "Code de vérification de réinitialisation du mot de passe",
"resetPasswordVerificationCodeDescription": "Vérification humaine lors de la réinitialisation du mot de passe",
"saveSuccess": "Enregistrement réussi",
"turnstileSecret": "Clé secrète Turnstile",
"turnstileSecretDescription": "Clé secrète Turnstile fournie par Cloudflare",
"turnstileSiteKey": "Clé de site Turnstile",
"turnstileSiteKeyDescription": "Clé de site Turnstile fournie par Cloudflare"
}
}

View File

@ -0,0 +1,19 @@
{
"actions": "Actions",
"cancel": "Annuler",
"check": "Vérifier",
"close": "fermer",
"closeSuccess": "Fermeture réussie",
"closeWarning": "Une fois fermé, ce ticket ne pourra plus être modifié. Veuillez procéder avec prudence.",
"confirm": "Confirmer",
"confirmClose": "Êtes-vous sûr de vouloir fermer ?",
"createdAt": "Date de création",
"inputPlaceholder": "Veuillez entrer votre question, nous vous répondrons dès que possible.",
"open": "ouvrir",
"reply": "réponse",
"status": ["Statut", "À suivre", "En attente de réponse", "Traité", "Fermé"],
"ticketList": "Liste des tickets",
"title": "Titre",
"updatedAt": "Mis à jour à",
"user": "utilisateur"
}

View File

@ -0,0 +1,26 @@
{
"caller": "Appelant",
"cancel": "Annuler",
"confirmReboot": "Confirmer le redémarrage",
"confirmSystemReboot": "Confirmer le redémarrage du système",
"confirmSystemUpgrade": "Confirmer la mise à niveau du système",
"confirmUpgrade": "Confirmer la mise à niveau",
"currentVersion": "Version actuelle du système :",
"errors": "Erreurs",
"ip": "IP",
"lastUpdated": "Dernière mise à jour :",
"none": "Aucun",
"query": "Requête",
"rebootDescription": "Êtes-vous sûr de vouloir redémarrer le système ? Cette opération entraînera une interruption temporaire du service.",
"rebooting": "Redémarrage du système...",
"refreshLogs": "Rafraîchir les journaux",
"request": "Demande",
"status": "Statut",
"systemLogs": "Journaux système",
"systemReboot": "Redémarrage du système",
"systemServices": "Services système",
"systemUpgrade": "Mise à niveau du système",
"upgradeDescription": "Êtes-vous sûr de vouloir effectuer la mise à niveau du système ? Cette opération peut prendre quelques minutes, pendant lesquelles le système peut ne pas répondre.",
"userAgent": "Agent utilisateur",
"viewLogsAndManage": "Afficher les journaux système, effectuer des mises à niveau et redémarrer le système"
}

View File

@ -0,0 +1,38 @@
{
"actions": "actions",
"balance": "Solde",
"cancel": "Annuler",
"confirm": "Confirmer",
"confirmDelete": "Êtes-vous sûr de vouloir supprimer ?",
"create": "Créer",
"createSuccess": "Création réussie",
"createUser": "Créer un utilisateur",
"createdAt": "Date d'inscription",
"delete": "Supprimer",
"deleteDescription": "Une fois supprimées, les données ne peuvent pas être récupérées. Veuillez procéder avec prudence.",
"deleteSuccess": "Suppression réussie",
"edit": "Éditer",
"editUser": "Modifier l'utilisateur",
"email": "e-mail",
"enable": "Activer",
"form": {
"balance": "Solde",
"balancePlaceholder": "Solde",
"cancel": "Annuler",
"confirm": "Confirmer",
"invalidEmailFormat": "Format d'e-mail invalide",
"inviteCode": "Code d'invitation",
"inviteCodePlaceholder": "Veuillez entrer le code d'invitation (laissez vide pour générer automatiquement)",
"manager": "Administrateur",
"password": "Mot de passe",
"passwordPlaceholder": "Veuillez entrer un nouveau mot de passe (peut être laissé vide)",
"refererId": "ID du parrain",
"refererIdPlaceholder": "Veuillez entrer l'ID du parrain",
"userEmail": "E-mail de l'utilisateur",
"userEmailPlaceholder": "Veuillez entrer l'e-mail de l'utilisateur"
},
"referer": "Référent",
"updateSuccess": "Mise à jour réussie",
"userList": "Liste des utilisateurs",
"userName": "Adresse e-mail de l'utilisateur"
}

View File

@ -0,0 +1,30 @@
{
"actions": "क्रियाएँ",
"announcementList": "घोषणाओं की सूची",
"cancel": "रद्द करें",
"confirm": "पुष्टि करें",
"confirmDelete": "क्या आप वाकई हटाना चाहते हैं?",
"content": "सामग्री",
"create": "सृजन करें",
"createAnnouncement": "घोषणा बनाएं",
"createSuccess": "सृजन सफल",
"delete": "हटाएं",
"deleteDescription": "एक बार हटाने के बाद, डेटा को पुनः प्राप्त नहीं किया जा सकता है। कृपया सावधानीपूर्वक कार्य करें।",
"deleteSuccess": "हटाने में सफलता",
"edit": "संपादित करें",
"editAnnouncement": "घोषणा संपादित करें",
"enable": "सक्षम करें",
"form": {
"cancel": "रद्द करें",
"confirm": "पुष्टि करें",
"content": "सामग्री",
"contentPlaceholder": "कृपया घोषणा सामग्री दर्ज करें (Markdown समर्थित)",
"title": "शीर्षक",
"titlePlaceholder": "कृपया दर्ज करें"
},
"hide": "छिपाएं",
"show": "प्रदर्शित करें",
"title": "शीर्षक",
"updateSuccess": "अपडेट सफल",
"updatedAt": "अद्यतन समय"
}

Some files were not shown because too many files have changed in this diff Show More