From 5a4b45aa3f357b9e3c6dca9d60fe647f6f8ffe40 Mon Sep 17 00:00:00 2001 From: DJj123dj <80536295+DJj123dj@users.noreply.github.com> Date: Thu, 14 Nov 2024 17:50:06 +0100 Subject: [PATCH] Added Thai Translation (by ModsHD) --- README.md | 4 +- languages/thai.json | 478 +++++++++++++++++++++++++++ src/core/api/defaults/language.ts | 1 + src/data/framework/languageLoader.ts | 3 +- 4 files changed, 483 insertions(+), 3 deletions(-) create mode 100644 languages/thai.json diff --git a/README.md b/README.md index 97e56e0..f239086 100644 --- a/README.md +++ b/README.md @@ -121,6 +121,7 @@ A big thanks to all our sponsors! Without them, it wouldn't be possible to creat |🇮🇩 Indonesian |erxg |🟢 Up To Date | |🇮🇹 Italian |fraden1mvp. |🟢 Up To Date | |🇩🇰 Danish |the_gamer |🟢 Up To Date | +|🇹🇭 Thai |modshd |🟢 Up To Date | |🇪🇪 Estonian |iamnotmega |🔵 Up To Date (ChatGPT) | |🇫🇮 Finnish |iamnotmega |🔵 Up To Date (ChatGPT) | |🇫🇷 French |sankedev & tostam |🟠 Temporary Outdated (beta) | @@ -128,7 +129,6 @@ A big thanks to all our sponsors! Without them, it wouldn't be possible to creat |🇷🇺 Russian |apexo & ander |🟠 Temporary Outdated (beta) | |🇹🇷 Turkish |0x15d3 |🟠 Temporary Outdated (beta) | |🇵🇱 Polish |mkevas |🟠 Temporary Outdated (beta) | -|🇹🇭 Thai |modshd |🟠 Temporary Outdated (beta) | |🇳🇴 Norwegian |noonenook |🟠 Temporary Outdated (beta) | |❓ Kurdish |raze.hama |🟠 Temporary Outdated (beta) | |❓ Persian |sasanwm |🟠 Temporary Outdated (beta) | @@ -140,7 +140,7 @@ A big thanks to all our sponsors! Without them, it wouldn't be possible to creat |🇸🇪 Swedish |iamnotmega |🟠 Temporary Outdated (beta) | |🇻🇳 Vietnamese |iamnotmega |🟠 Temporary Outdated (beta) | |🇸🇮 Slovenian |n1kkec |🔴 Outdated | -|🇬🇷 Greek |stefanos__. |🔴 Outdated | +|🇬🇷 Greek |stefanos |🔴 Outdated | ## ⭐️ Star History Please help us grow by giving a star! It would help us a lot! diff --git a/languages/thai.json b/languages/thai.json new file mode 100644 index 0000000..fa3dace --- /dev/null +++ b/languages/thai.json @@ -0,0 +1,478 @@ +{ + "_TRANSLATION":{ + "otversion":"v4.0.0", + "translators":["modshd"], + "lastedited":"13/11/2024", + "language":"Thai", + "automated":false + }, + "checker":{ + "system":{ + "typeError": "[ข้อผิดพลาด]", + "headerOpenTicket": "เปิดห้องติดต่อ", + "typeWarning": "[คำเตือน]", + "typeInfo": "[ข้อมูล]", + "headerConfigChecker": "ตัวตรวจสอบการตั้งค่า", + "headerDescription": "ตรวจสอบข้อผิดพลาดในไฟล์การตั้งค่าของคุณ", + "footerError": "บอทจะไม่เริ่มจนกว่าจะแก้ไขข้อผิดพลาดทั้งหมดใน {0}", + "footerWarning": "แนะนำให้แก้ไขข้อผิดพลาดทั้งหมดใน {0} ก่อนเริ่มใช้งาน", + "footerSupport": "สนับสนุน: {0} - เอกสาร: {1}", + "compactInformation": "ใช้ {0} เพื่อข้อมูลเพิ่มเติม", + "dataPath": "ทีอยู่", + "dataDocs": "เอกสารช่วยเหลือ", + "dataMessages": "ข้อความ" + }, + "messages":{ + "stringTooShort": "ข้อความนี้สั้นเกินไปไม่สามารถน้อยกว่า {0} ตัวอักษรได้", + "stringTooLong": "ข้อความนี้ยาวเกินไปไม่สามารถมากกว่า {0} ตัวอักษรได้", + "stringLengthInvalid": "ข้อความนี้ต้องมีความยาว {0} ตัวอักษร", + "stringStartsWith": "ข้อความนี้ต้องเริ่มต้นด้วย {0}", + "stringEndsWith": "ข้อความนี้ต้องลงท้ายด้วย {0}", + "stringContains": "ข้อความนี้ต้องประกอบด้วย {0}", + "stringChoices": "ข้อความนี้สามารถเป็นค่าใดค่าหนึ่งจากตัวเลือกต่อไปนี้: {0}", + "stringRegex": "ข้อความนี้ไม่ถูกต้อง", + + "numberTooShort": "หมายเลขนี้ไม่สามารถสั้นกว่า {0} ตัวอักษรได้", + "numberTooLong": "หมายเลขนี้ไม่สามารถยาวกว่า {0} ตัวอักษรได้", + "numberLengthInvalid": "หมายเลขนี้ต้องมีความยาว {0} ตัวอักษร", + "numberTooSmall": "หมายเลขนี้ต้องมีค่าอย่างน้อย {0}", + "numberTooLarge": "หมายเลขนี้ต้องมีค่าไม่เกิน {0}", + "numberNotEqual": "หมายเลขนี้ต้องเป็น {0}", + "numberStep": "หมายเลขนี้ต้องเป็นผลคูณของ {0}", + "numberStepOffset": "หมายเลขนี้ต้องเป็นผลคูณของ {0} โดยเริ่มจาก {1}", + "numberStartsWith": "หมายเลขนี้ต้องเริ่มต้นด้วย {0}", + "numberEndsWith": "หมายเลขนี้ต้องลงท้ายด้วย {0}", + "numberContains": "หมายเลขนี้ต้องประกอบด้วย {0}", + "numberChoices": "หมายเลขนี้สามารถเป็นค่าใดค่าหนึ่งจากตัวเลือกต่อไปนี้: {0}", + "numberFloat": "หมายเลขนี้ไม่สามารถเป็นทศนิยมได้", + "numberNegative": "หมายเลขนี้ไม่สามารถเป็นค่าลบได้", + "numberPositive": "หมายเลขนี้ไม่สามารถเป็นค่าบวกได้", + "numberZero": "หมายเลขนี้ไม่สามารถเป็นศูนย์ได้", + + "booleanTrue": "ค่าบูลีนนี้ไม่สามารถเป็น true ได้", + "booleanFalse": "ค่าบูลีนนี้ไม่สามารถเป็น false ได้", + + "arrayEmptyDisabled": "ค่าตัวแปรนี้ไม่อนุญาตให้ว่างเปล่า", + "arrayEmptyRequired": "ค่าตัวแปรนี้ต้องว่างเปล่า", + "arrayTooShort": "ค่าตัวแปรนี้ต้องมีความยาวอย่างน้อย {0}", + "arrayTooLong": "ค่าตัวแปรนี้ต้องมีความยาวไม่เกิน {0}", + "arrayLengthInvalid": "ค่าตัวแปรนี้ต้องมีความยาว {0}", + "arrayInvalidTypes": "ค่าตัวแปรนี้สามารถประกอบด้วยประเภทเหล่านี้เท่านั้น: {0}", + "arrayDouble": "ค่าตัวแปรนี้ไม่อนุญาตให้มีค่าซ้ำสองครั้ง", + + "discordInvalidId": "นี่คือรหัสไอดี {0} discord ที่ไม่ถูกต้อง", + "discordInvalidIdOptions": "นี่คือรหัสไอดี {0} discord ที่ไม่ถูกต้อง คุณสามารถใช้ตัวเลือกเหล่านี้: {1}", + "discordInvalidToken": "นี่คือโทเค็น discord ที่ไม่ถูกต้อง (จากด้านไวยากรณ์)", + "colorInvalid": "นี่คือสี hex ที่ไม่ถูกต้อง", + "emojiTooShort": "ข้อความนี้ต้องมีอีโมจิอย่างน้อย {0} ตัว", + "emojiTooLong": "ข้อความนี้ต้องมีอีโมจิไม่เกิน {0} ตัว", + "emojiCustom": "อีโมจินี้ไม่สามารถเป็นอีโมจิแบบกำหนดเองของ discord ได้", + "emojiInvalid": "นี่คือลำดับอีโมจิที่ไม่ถูกต้อง", + "urlInvalid": "URL นี้ไม่ถูกต้อง", + "urlInvalidHttp": "URL นี้สามารถใช้แค่โปรโตคอล https:// เท่านั้น", + "urlInvalidProtocol": "URL นี้สามารถใช้โปรโตคอล http:// และ https:// เท่านั้น", + "urlInvalidHostname": "URL นี้มีชื่อโฮสต์ที่ไม่ได้รับอนุญาต", + "urlInvalidExtension": "URL นี้มีนามสกุลไม่ถูกต้อง เลือกระหว่าง: {0}", + "urlInvalidPath": "URL นี้มีเส้นทางไม่ถูกต้อง", + "idNotUnique": "รหัสนี้ไม่เป็นเอกลักษณ์, ใช้รหัสอื่นแทน", + "idNonExistent": "รหัส {0} นี้ไม่มีอยู่", + + "invalidType": "คุณสมบัตินี้ต้องเป็นประเภท: {0}", + "propertyMissing": "คุณสมบัติ {0} หายไปจากอ็อบเจ็กต์นี้", + "propertyOptional": "คุณสมบัติ {0} เป็นตัวเลือกในอ็อบเจ็กต์นี้", + "objectDisabled": "อ็อบเจ็กต์นี้ถูกปิดใช้งาน, เปิดใช้งานโดยใช้ {0}", + "nullInvalid": "คุณสมบัตินี้ไม่สามารถเป็นค่า null ได้", + "switchInvalidType": "ตัวเลือกนี้ต้องเป็นประเภทใดประเภทหนึ่งจากรายการต่อไปนี้: {0}", + "objectSwitchInvalid": "อ็อบเจ็กต์นี้ต้องเป็นประเภทใดประเภทหนึ่งจากรายการต่อไปนี้: {0}", + + "invalidLanguage": "นี่คือภาษาที่ไม่ถูกต้อง", + "invalidButton": "ปุ่มนี้ต้องมีอย่างน้อย {0} หรือ {1}", + "unusedOption": "ตัวเลือก {0} ไม่ได้ใช้งานที่ไหนเลย", + "unusedQuestion": "คำถาม {0} ไม่ได้ใช้งานที่ไหนเลย", + "dropdownOption": "แผงที่เปิดใช้งานตัวเลือกแบบเลื่อนลงสามารถประกอบด้วยตัวเลือกประเภท 'ticket' เท่านั้น" + } + }, + "actions":{ + "buttons":{ + "create": "สร้างห้องติดต่อ", + "close": "ปิดห้องติดต่อ", + "delete": "ลบห้องติดต่อ", + "reopen": "เปิดห้องติดต่อใหม่อีกครั้ง", + "claim": "รับห้องติดต่อ", + "unclaim": "ยกเลิกการรับห้องติดต่อ", + "pin": "ปักหมุดห้องติดต่อ", + "unpin": "ยกเลิกการปักหมุดห้องติดต่อ", + "clear": "ลบห้องติดต่อทั้งหมด", + "helpSwitchSlash": "ดูคำสั่งแบบ Slash", + "helpSwitchText": "ดูคำสั่งแบบข้อความ", + "helpPage": "หน้า {0}", + "withReason": "ด้วยเหตุผล", + "withoutTranscript": "ไม่มีบันทึกการสนทนา" + }, + "titles":{ + "created": "สร้างห้องติดต่อแล้ว", + "close": "ปิดห้องติดต่อแล้ว", + "delete": "ลบห้องติดต่อแล้ว", + "reopen": "เปิดห้องติดต่อใหม่อีกรอบแล้ว", + "claim": "รับห้องติดต่อแล้ว", + "unclaim": "ยกเลิกการรับห้องติดต่อแล้ว", + "pin": "ปักหมุดห้องติดต่อแล้ว", + "unpin": "ยกเลิกการปักหมุดห้องติดต่อแล้ว", + "rename": "เปลี่ยนชื่อเรื่องห้องติดต่อแล้ว", + "move": "ย้ายห้องติดต่อแล้ว", + "add": "เพิ่มผู้ใช้ในห้องติดต่อแล้ว", + "remove": "ลบผู้ใช้จากห้องติดต่อแล้ว", + + "help": "คำสั่งที่สามารถใช้งานได้", + "statsReset": "รีเซ็ตสถิติ", + "blacklistAdd": "ผู้ใช้ถูกเพิ่มในบัญชีดำ", + "blacklistRemove": "ผู้ใช้ถูกถอดออกจากบัญชีดำ", + "blacklistGet": "ผู้ใช้ที่อยู่ในบัญชีดำ", + "blacklistView": "บัญชีดำปัจจุบัน", + "blacklistAddDm": "ถูกเพิ่มในบัญชีดำ", + "blacklistRemoveDm": "ถูกลบออกจากบัญชีดำ", + "clear": "ลบห้องติดต่อทั้งหมด", + "roles": "อัปเดตบทบาท", + + "autoclose": "ห้องติดต่อถูกปิดโดยอัตโนมัติ", + "autocloseEnabled": "เปิดใช้งานการปิดห้องติดต่ออัตโนมัติ", + "autocloseDisabled": "ปิดการใช้งานการปิดห้องติดต่ออัตโนมัติ", + "autodelete": "ห้องติดต่อถูกลบโดยอัตโนมัติ", + "autodeleteEnabled": "เปิดใช้งานการลบห้องติดต่ออัตโนมัติ", + "autodeleteDisabled": "ปิดการใช้งานการลบห้องติดต่ออัตโนมัติ" + }, + "descriptions":{ + "create": "ห้องติดต่อของคุณถูกสร้างแล้ว คลิกปุ่มด้านล่างเพื่อไปยังห้องติดต่อ", + "close": "ห้องติดต่อได้ถูกปิดเรียบร้อยแล้ว", + "delete": "ห้องติดต่อได้ถูกลบเรียบร้อยแล้ว", + "reopen": "ห้องติดต่อได้ถูกเปิดใหม่เรียบร้อยแล้ว", + "claim": "ห้องติดต่อได้ถูกรับเรียบร้อยแล้ว", + "unclaim": "ห้องติดต่อได้ถูกยกเลิกการรับเรียบร้อยแล้ว", + "pin": "ห้องติดต่อได้ถูกปักหมุดเรียบร้อยแล้ว", + "unpin": "ห้องติดต่อได้ถูกยกเลิกการปักหมุดเรียบร้อยแล้ว", + "rename": "ห้องติดต่อได้ถูกเปลี่ยนชื่อเป็น {0} เรียบร้อยแล้ว", + "move": "ห้องติดต่อได้ถูกย้ายไปยัง {0} เรียบร้อยแล้ว", + "add": "{0} ได้ถูกเพิ่มในห้องติดต่อเรียบร้อยแล้ว", + "remove": "{0} ได้ถูกลบออกจากห้องติดต่อเรียบร้อยแล้ว", + + "helpExplanation": "`` => สิ่งที่ต้องการ\n`[name]` => สิ่งที่เลือกใช้ได้", + "statsReset": "สถิติของบอทได้ถูกรีเซ็ตเรียบร้อยแล้ว", + "statsError": "ไม่สามารถดูสถิติห้องติดต่อได้\n{0} ไม่ใช่ห้องติดต่อ", + "blacklistAdd": "{0} ได้ถูกเพิ่มในบัญชีดำเรียบร้อยแล้ว", + "blacklistRemove": "{0} ได้ถูกถอดออกจากบัญชีดำเรียบร้อยแล้ว", + "blacklistGetSuccess": "{0} ตอนนี้อยู่ในบัญชีดำ", + "blacklistGetEmpty": "{0} ตอนนี้ยังไม่อยู่ในบัญชีดำ", + "blacklistViewEmpty": "ยังไม่มีใครถูกเพิ่มในบัญชีดำ", + "blacklistViewTip": "ใช้ \"/blacklist add\" เพื่อเพิ่มผู้ใช้ในบัญชีดำ", + "clearVerify": "คุณแน่ใจหรือไม่ว่าจะลบห้องติดต่อจำนวนมาก?\nการกระทำนี้ไม่สามารถย้อนกลับได้", + "clearReady": "{0} ห้องติดต่อได้ถูกลบเรียบร้อยแล้ว", + "rolesEmpty": "ไม่มีการอัปเดตบทบาทใดๆ", + + "autocloseLeave": "ห้องติดต่อนี้ถูกปิดอัตโนมัติเนื่องจากผู้สร้างห้องติดต่อออกจากเซิร์ฟเวอร์ไปแล้ว", + "autocloseTimeout": "ห้องติดต่อนี้ถูกปิดอัตโนมัติเนื่องจากไม่ได้รับการใช้งานเกิน `{0} ชั่วโมง`", + "autodeleteLeave": "ห้องติดต่อนี้ถูกลบอัตโนมัติเนื่องจากผู้สร้างออกจากเซิร์ฟเวอร์ไปแล้ว", + "autodeleteTimeout": "ห้องติดต่อนี้ถูกลบอัตโนมัติเนื่องจากไม่ได้รับการใช้งานเกิน `{0} วัน`", + "autocloseEnabled": "การปิดอัตโนมัติถูกเปิดใช้งานในห้องติดต่อนี้\nมันจะถูกปิดเมื่อไม่ได้ใช้งานเกิน `{0} ชั่วโมง`", + "autocloseDisabled": "การปิดอัตโนมัติถูกปิดใช้งานในห้องติดต่อนี้\nมันจะไม่ถูกปิดอัตโนมัติอีกต่อไป", + "autodeleteEnabled": "การลบอัตโนมัติถูกเปิดใช้งานในห้องติดต่อนี้\nมันจะถูกลบเมื่อไม่ได้ใช้งานเกิน `{0} วัน`", + "autodeleteDisabled": "การลบอัตโนมัติถูกปิดใช้งานในห้องติดต่อนี้\nมันจะไม่ถูกลบอัตโนมัติอีกต่อไป", + + "ticketMessageLimit": "คุณสามารถสร้างห้องติดต่อได้เพียง {0} ห้องต่อครั้ง", + "ticketMessageAutoclose": "ห้องติดต่อนี้จะถูกปิดอัตโนมัติเมื่อไม่ได้ใช้งานเกิน {0} ชั่วโมง", + "ticketMessageAutodelete": "ห้องติดต่อนี้จะถูกลบอัตโนมัติเมื่อไม่ได้ใช้งานเกิน {0} วัน", + "panelReady": "คุณสามารถดูแผงข้อมูลด้านล่าง\nข้อความนี้สามารถลบได้แล้ว" + }, + "modal":{ + "closePlaceholder": "ทำไมคุณถึงปิดห้องติดต่อนี้?", + "deletePlaceholder": "ทำไมคุณถึงลบห้องติดต่อนี้?", + "reopenPlaceholder": "ทำไมคุณถึงเปิดห้องติดต่อนี้ใหม่อีกรอบ?", + "claimPlaceholder": "ทำไมคุณถึงรับห้องติดต่อนี้?", + "unclaimPlaceholder": "ทำไมคุณถึงยกเลิกการรับห้องติดต่อนี้?", + "pinPlaceholder": "ทำไมคุณถึงปักหมุดห้องติดต่อนี้?", + "unpinPlaceholder": "ทำไมคุณถึงยกเลิกการปักหมุดห้องติดต่อนี้?" + }, + "logs":{ + "createLog": "ห้องติดต่อใหม่ถูกสร้างโดย {0}", + "closeLog": "ห้องติดต่อนี้ถูกปิดโดย {0}", + "closeDm": "ห้องติดต่อของคุณถูกปิดในเซิร์ฟเวอร์ของเรา", + "deleteLog": "ห้องติดต่อนี้ถูกลบโดย {0}", + "deleteDm": "ห้องติดต่อของคุณถูกลบในเซิร์ฟเวอร์ของเรา", + "reopenLog": "ห้องติดต่อนี้ถูกเปิดใหม่โดย {0}", + "reopenDm": "ห้องติดต่อของคุณถูกเปิดใหม่ในเซิร์ฟเวอร์ของเรา", + "claimLog": "ห้องติดต่อนี้ถูกรับโดย {0}", + "claimDm": "ห้องติดต่อของคุณถูกรับในเซิร์ฟเวอร์ของเรา", + "unclaimLog": "ห้องติดต่อนี้ถูกยกเลิกการรับโดย {0}", + "unclaimDm": "ห้องติดต่อของคุณถูกยกเลิกการรับในเซิร์ฟเวอร์ของเรา", + "pinLog": "ห้องติดต่อนี้ถูกปักหมุดโดย {0}", + "pinDm": "ห้องติดต่อของคุณถูกปักหมุดในเซิร์ฟเวอร์ของเรา", + "unpinLog": "ห้องติดต่อนี้ถูกยกเลิกการปักหมุดโดย {0}", + "unpinDm": "ห้องติดต่อของคุณถูกยกเลิกการปักหมุดในเซิร์ฟเวอร์ของเรา", + "renameLog": "ห้องติดต่อนี้ถูกเปลี่ยนชื่อเป็น {0} โดย {1}", + "renameDm": "ห้องติดต่อของคุณถูกเปลี่ยนชื่อเป็น {0} ในเซิร์ฟเวอร์ของเรา", + "moveLog": "ห้องติดต่อนี้ถูกย้ายไปที่ {0} โดย {1}", + "moveDm": "ห้องติดต่อของคุณถูกย้ายไปที่ {0} ในเซิร์ฟเวอร์ของเรา", + "addLog": "{0} ถูกเพิ่มเข้ามาในห้องติดต่อนี้โดย {1}", + "addDm": "{0} ถูกเพิ่มเข้าไปในห้องติดต่อของคุณในเซิร์ฟเวอร์ของเรา", + "removeLog": "{0} ถูกลบออกจากห้องติดต่อนี้โดย {1}", + "removeDm": "{0} ถูกลบออกจากห้องติดต่อของคุณในเซิร์ฟเวอร์ของเรา", + + "blacklistAddLog": "{0} ถูกเพิ่มในรายชื่อดำโดย {1}", + "blacklistRemoveLog": "{0} ถูกนำออกจากรายชื่อดำโดย {1}", + "blacklistAddDm": "คุณถูกเพิ่มในรายชื่อดำของเรา\nจากนี้ไปคุณจะไม่สามารถสร้างห้องติดต่อได้", + "blacklistRemoveDm": "คุณถูกนำออกจากรายชื่อดำในเซิร์ฟเวอร์ของเรา\nตอนนี้คุณสามารถสร้างห้องติดต่อได้อีกครั้ง", + "clearLog": "{0} ห้องติดต่อถูกลบโดย {1}" + } + }, + "transcripts":{ + "success":{ + "visit": "เข้าดูตัวเก็บประวัติข้อความ", + "ready": "ตัวเก็บประวัติข้อความถูกสร้างแล้ว", + "textFileDescription": "นี่คือตัวเก็บประวัติข้อความในรูปแบบข้อความของห้องติดต่อที่ถูกลบ", + "htmlProgress": "กรุณารอสักครู่ ขณะที่ตัวเก็บประวัติข้อความในรูปแบบ HTML กำลังถูกประมวลผล...", + + "createdChannel": "ตัวเก็บประวัติข้อความใหม่ {0} ถูกสร้างขึ้นในเซิร์ฟเวอร์", + "createdCreator": "ตัวเก็บประวัติข้อความใหม่ {0} ถูกสร้างขึ้นสำหรับหนึ่งในห้องติดต่อของคุณ", + "createdParticipant": "ตัวเก็บประวัติข้อความใหม่ {0} ถูกสร้างขึ้นในหนึ่งในห้องติดต่อที่คุณได้เข้าร่วม", + "createdActiveAdmin": "ตัวเก็บประวัติข้อความใหม่ {0} ถูกสร้างขึ้นในหนึ่งในห้องติดต่อที่คุณได้เข้าร่วมในฐานะผู้ดูแล", + "createdEveryAdmin": "ตัวเก็บประวัติข้อความใหม่ {0} ถูกสร้างขึ้นในหนึ่งในห้องติดต่อที่คุณเป็นผู้ดูแล", + "createdOther": "ตัวเก็บประวัติข้อความใหม่ {0} ถูกสร้างขึ้น" + }, + "errors":{ + "retry": "ลองอีกครั้ง", + "continue": "ลบโดยไม่สร้างตัวเก็บประวัติข้อความ", + "backup": "สร้างสำรองตัวเก็บประวัติข้อความ", + "error": "เกิดข้อผิดพลาดขณะพยายามสร้างตัวเก็บประวัติข้อความ\nคุณต้องการทำอย่างไรต่อไป?\n\nห้องติดต่อนี้จะไม่ถูกลบจนกว่าคุณจะคลิกปุ่มใดปุ่มหนึ่ง" + } + }, + "errors":{ + "titles":{ + "internalError": "ข้อผิดพลาดภายใน", + "optionMissing": "ขาดตัวเลือกคำสั่ง", + "optionInvalid": "ตัวเลือกคำสั่งไม่ถูกต้อง", + "unknownCommand": "คำสั่งที่ไม่รู้จัก", + "noPermissions": "ไม่มีสิทธิ์", + "unknownTicket": "ห้องติดต่อที่ไม่รู้จัก", + "deprecatedTicket": "ห้องติดต่อที่ไม่รองรับแล้ว", + "unknownOption": "ตัวเลือกที่ไม่รู้จัก", + "unknownPanel": "แผงควบคุมที่ไม่รู้จัก", + "notInGuild": "ไม่ได้อยู่ในเซิร์ฟเวอร์", + "channelRename": "ไม่สามารถเปลี่ยนชื่อช่องได้", + "busy": "ห้องติดต่อยุ่งอยู่" + }, + "descriptions":{ + "askForInfo": "ติดต่อเจ้าของบอทนี้เพื่อขอข้อมูลเพิ่มเติม", + "askForInfoResolve": "ติดต่อเจ้าของบอทนี้หากปัญหานี้ยังไม่หายหลังจากลองหลายครั้ง", + "internalError": "ไม่สามารถตอบสนองคำสั่งนี้ {0} ได้เนื่องจากเกิดข้อผิดพลาดภายใน", + "optionMissing": "ตัวเลือกที่จำเป็นขาดหายไปในคำสั่งนี้", + "optionInvalid": "ตัวเลือกในคำสั่งนี้ไม่ถูกต้อง", + "optionInvalidChoose": "เลือกระหว่าง", + "unknownCommand": "ลองดูเมนูช่วยเหลือเพื่อข้อมูลเพิ่มเติม", + "noPermissions": "คุณไม่ได้รับอนุญาตให้ใช้ {0} นี้", + "noPermissionsList": "สิทธิ์ที่ต้องการ: (อย่างใดอย่างหนึ่ง)", + "noPermissionsCooldown": "คุณไม่ได้รับอนุญาตให้ใช้ {0} นี้เพราะคุณอยู่ในระยะเวลาคูลดาวน์", + "noPermissionsBlacklist": "คุณไม่ได้รับอนุญาตให้ใช้ {0} นี้เพราะคุณถูกเพิ่มในรายชื่อดำ", + "noPermissionsLimitGlobal": "คุณไม่ได้รับอนุญาตให้สร้างห้องติดต่อเนื่องจากเซิร์ฟเวอร์ถึงขีดจำกัดจำนวนห้องติดต่อสูงสุด", + "noPermissionsLimitGlobalUser": "คุณไม่ได้รับอนุญาตให้สร้างห้องติดต่อเนื่องจากคุณถึงขีดจำกัดจำนวนห้องติดต่อสูงสุดแล้ว", + "noPermissionsLimitOption": "คุณไม่ได้รับอนุญาตให้สร้างห้องติดต่อเนื่องจากเซิร์ฟเวอร์ถึงขีดจำกัดจำนวนห้องติดต่อสูงสุดสำหรับตัวเลือกนี้", + "noPermissionsLimitOptionUser": "คุณไม่ได้รับอนุญาตให้สร้างห้องติดต่อเนื่องจากคุณถึงขีดจำกัดจำนวนห้องติดต่อสูงสุดสำหรับตัวเลือกนี้แล้ว", + "unknownTicket": "ลองใช้คำสั่งนี้อีกครั้งในห้องติดต่อที่ถูกต้อง", + "deprecatedTicket": "ช่องนี้ไม่ใช่ห้องติดต่อที่ถูกต้อง อาจเป็นห้องติดต่อจากเวอร์ชันเก่าของ Open Ticket", + "notInGuild": "คำสั่ง {0} นี้ใช้ไม่ได้ใน DM กรุณาลองใหม่ในเซิร์ฟเวอร์", + "channelRename": "เนื่องจากข้อจำกัดของ Discord การเปลี่ยนชื่อช่องไม่สามารถทำได้ในขณะนี้ ช่องจะถูกเปลี่ยนชื่อโดยอัตโนมัติในเวลา 10 นาทีหากบอทไม่ถูกรีบูต", + "channelRenameSource": "แหล่งที่มาของข้อผิดพลาดนี้คือ: {0}", + "busy": "ไม่สามารถใช้ {0} นี้ได้\nห้องติดต่อกกำลังถูกประมวลผลโดยบอท\n\nกรุณาลองใหม่ในอีกไม่กี่วินาที" + }, + "optionInvalidReasons":{ + "stringRegex": "ค่าที่ระบุไม่ตรงกับรูปแบบ", + "stringMinLength": "ค่าจะต้องมีความยาวอย่างน้อย {0} ตัวอักษร", + "stringMaxLength": "ค่าจะต้องมีความยาวไม่เกิน {0} ตัวอักษร", + "numberInvalid": "หมายเลขไม่ถูกต้อง", + "numberMin": "หมายเลขจะต้องมีค่ามากกว่าหรือเท่ากับ {0}", + "numberMax": "หมายเลขจะต้องมีค่าน้อยกว่าหรือเท่ากับ {0}", + "numberDecimal": "หมายเลขไม่สามารถเป็นทศนิยมได้", + "numberNegative": "หมายเลขไม่สามารถเป็นลบได้", + "numberPositive": "หมายเลขไม่สามารถเป็นบวกได้", + "numberZero": "หมายเลขไม่สามารถเป็นศูนย์ได้", + "channelNotFound": "ไม่สามารถหาช่องได้", + "userNotFound": "ไม่สามารถหาผู้ใช้ได้", + "roleNotFound": "ไม่สามารถหาบทบาทได้", + "memberNotFound": "ไม่สามารถหาผู้ใช้ได้", + "mentionableNotFound": "ไม่สามารถหาผู้ใช้หรือบทบาทได้", + "channelType": "ประเภทช่องไม่ถูกต้อง", + "notInGuild": "ตัวเลือกนี้ต้องให้คุณอยู่ในเซิร์ฟเวอร์" + }, + "permissions":{ + "developer": "คุณต้องเป็นนักพัฒนาของบอทนี้", + "owner": "คุณต้องเป็นเจ้าของเซิร์ฟเวอร์", + "admin": "คุณต้องเป็นผู้ดูแลเซิร์ฟเวอร์", + "moderator": "คุณต้องเป็นผู้ดูแล", + "support": "คุณต้องเป็นสมาชิกทีม", + "member": "คุณต้องเป็นสมาชิก", + "discord-administrator": "คุณต้องมีสิทธิ์ `ADMINISTRATOR`" + }, + "actionInvalid":{ + "close": "ห้องติดต่อนี้ถูกปิดแล้ว", + "reopen": "ห้องติดต่อนี้ยังไม่ถูกปิด", + "claim": "ห้องติดต่อนี้รับแล้ว", + "unclaim": "ห้องติดต่อนี้ยังไม่ได้ถูกรับ", + "pin": "ห้องติดต่อนี้ถูกปักหมุดแล้ว", + "unpin": "ห้องติดต่อนี้ยังไม่ได้ถูกปักหมุด", + "add": "ผู้ใช้นี้สามารถเข้าถึงห้องติดต่อได้แล้ว", + "remove": "ไม่สามารถลบผู้ใช้นี้ออกจากห้องติดต่อได้" + } + }, + "params":{ + "uppercase":{ + "ticket": "ห้องติดต่อ", + "tickets": "ห้องติดต่อ", + "reason": "เหตุผล", + "creator": "ผู้สร้าง", + "remaining": "เวลาที่เหลือ", + "added": "เพิ่มแล้ว", + "removed": "ลบแล้ว", + "filter": "ตัวกรอง", + "claimedBy": "รับโดย {0}", + "method": "วิธีการ", + "type": "ประเภท", + "blacklisted": "ถูกใส่ในรายชื่อดำ", + "panel": "แผงควบคุม", + "command": "คำสั่ง", + "system": "ระบบ", + "true": "จริง", + "false": "เท็จ", + "syntax": "ไวยากรณ์", + "originalName": "ชื่อเดิม", + "newName": "ชื่อใหม่", + "until": "จนถึง", + "validOptions": "ตัวเลือกที่ถูกต้อง", + "validPanels": "แผงควบคุมที่ถูกต้อง", + "autoclose": "ปิดอัตโนมัติ", + "autodelete": "ลบอัตโนมัติ", + "startupDate": "วันที่เริ่มต้น", + "version": "เวอร์ชัน", + "name": "ชื่อ", + "role": "บทบาท", + "status": "สถานะ", + "claimed": "รับแล้ว", + "pinned": "ถูกปักหมุด", + "creationDate": "วันที่สร้าง" + }, + "lowercase":{ + "text": "ข้อความ", + "html": "HTML", + "command": "คำสั่ง", + "modal": "หน้าต่าง", + "button": "ปุ่ม", + "dropdown": "ตัวเลือก", + "method": "วิธีการ" + } + }, + "commands":{ + "reason": "ระบุเหตุผลที่ไม่บังคับ ซึ่งจะปรากฏในบันทึก", + "help": "รับรายชื่อคำสั่งทั้งหมดที่มี", + "panel": "สร้างข้อความที่มีตัวเลือกหรือปุ่ม (สำหรับการสร้างห้องติดต่อ)", + "panelId": "ตัวระบุของแผงควบคุมที่คุณต้องการสร้าง", + "panelAutoUpdate": "คุณต้องการให้แผงนี้อัปเดตอัตโนมัติเมื่อมีการแก้ไขหรือไม่?", + "ticket": "สร้างห้องติดต่อทันที", + "ticketId": "ตัวระบุของห้องติดต่อที่คุณต้องการสร้าง", + "close": "ปิดห้องติดต่อ", + "delete": "ลบห้องติดต่อ", + "deleteNoTranscript": "ลบห้องติดต่อนี้โดยไม่สร้างตัวเก็บข้อความ", + "reopen": "เปิดห้องติดต่อใหม่", + "claim": "รับห้องติดต่อ", + "claimUser": "รับห้องติดต่อนี้ให้กับผู้อื่นแทนตัวคุณ", + "unclaim": "ยกเลิกการรับห้องติดต่อ", + "pin": "ปักหมุดห้องติดต่อ", + "unpin": "ยกเลิกการปักหมุดห้องติดต่อ", + "move": "ย้ายห้องติดต่อ", + "moveId": "ตัวระบุของตัวเลือกที่คุณต้องการย้ายไป", + "rename": "เปลี่ยนชื่อห้องติดต่อ", + "renameName": "ชื่อใหม่สำหรับห้องติดต่อนี้", + "add": "เพิ่มผู้ใช้ในห้องติดต่อ", + "addUser": "ผู้ใช้ที่ต้องการเพิ่ม", + "remove": "ลบผู้ใช้จากห้องติดต่อ", + "removeUser": "ผู้ใช้ที่ต้องการลบ", + "blacklist": "จัดการรายชื่อดำของห้องติดต่อ", + "blacklistView": "ดูรายชื่อของผู้ที่อยู่ในรายชื่อดำ", + "blacklistAdd": "เพิ่มผู้ใช้ในรายชื่อดำ", + "blacklistRemove": "ลบผู้ใช้จากรายชื่อดำ", + "blacklistGet": "ดึงข้อมูลจากผู้ใช้ที่อยู่ในรายชื่อดำ", + "blacklistGetUser": "ผู้ใช้ที่ต้องการดึงข้อมูล", + "stats": "ดูสถิติเกี่ยวกับบอท, สมาชิก หรือ ห้องติดต่อ", + "statsReset": "รีเซ็ตสถิติทั้งหมดของบอท (และเริ่มนับจากศูนย์)", + "statsGlobal": "ดูสถิติทั้งหมด", + "statsUser": "ดูสถิติจากผู้ใช้ในเซิร์ฟเวอร์", + "statsUserUser": "ผู้ใช้ที่ต้องการดูสถิติ", + "statsTicket": "ดูสถิติของห้องติดต่อในเซิร์ฟเวอร์", + "statsTicketTicket": "ห้องติดต่อที่ต้องการดูสถิติ", + "clear": "ลบห้องติดต่อจำนวนมากในคราวเดียว", + "clearFilter": "ตัวกรองสำหรับการลบห้องติดต่อ", + "clearFilters":{ + "all": "ทั้งหมด", + "open": "เปิด", + "close": "ปิด", + "claim": "ถูกรับ", + "unclaim": "ยังไม่ได้รับ", + "pin": "ถูกปักหมุด", + "unpin": "ยังไม่ได้ถูกปักหมุด", + "autoclose": "ปิดอัตโนมัติ" + }, + "autoclose": "จัดการการปิดอัตโนมัติในห้องติดต่อ", + "autocloseDisable": "ปิดการปิดอัตโนมัติในห้องติดต่อนี้", + "autocloseEnable": "เปิดการปิดอัตโนมัติในห้องติดต่อนี้", + "autocloseEnableTime": "จำนวนชั่วโมงที่ห้องติดต่อนี้ต้องไม่เคลื่อนไหวเพื่อปิดมัน", + "autodelete": "จัดการการลบอัตโนมัติในห้องติดต่อ", + "autodeleteDisable": "ปิดการลบอัตโนมัติในห้องติดต่อนี้", + "autodeleteEnable": "เปิดการลบอัตโนมัติในห้องติดต่อนี้", + "autodeleteEnableTime": "จำนวนวันที่ห้องติดต่อนี้ต้องไม่เคลื่อนไหวเพื่อที่จะลบมัน" + }, + "helpMenu":{ + "help": "รับรายชื่อคำสั่งทั้งหมดที่มี", + "ticket": "สร้างห้องติดต่อทันที", + "close": "ปิดห้องติดต่อ การเขียนในช่องนี้จะถูกปิด", + "delete": "ลบห้องติดต่อ จะสร้างตัวเก็บข้อมูลข้อความเมื่อเปิดใช้งาน", + "reopen": "เปิดห้องติดต่อใหม่, การเขียนในช่องนี้จะถูกเปิดใช้อีกครั้ง", + "pin": "ปักหมุดห้องติดต่อ ห้องติดต่อนี้จะย้ายไปอยู่ด้านบนและจะเพิ่มอิโมจิ '📌' ในชื่อ", + "unpin": "ยกเลิกการปักหมุดห้องติดต่อ ห้องติดต่อจะยังคงอยู่ในตำแหน่งเดิมแต่จะสูญเสียอิโมจิ '📌'", + "move": "ย้ายห้องติดต่อ การย้ายนี้จะเปลี่ยนประเภทของห้องติดต่อนี้", + "rename": "เปลี่ยนชื่อห้องติดต่อ การเปลี่ยนนี้จะเปลี่ยนชื่อช่องของห้องติดต่อนี้", + "claim": "รับห้องติดต่อ ด้วยคำสั่งนี้คุณสามารถแจ้งให้ทีมของคุณทราบว่าคุณกำลังจัดการห้องติดต่อนี้", + "unclaim": "ยกเลิกการรับห้องติดต่อ ด้วยคำสั่งนี้คุณสามารถแจ้งให้ทีมของคุณทราบว่าห้องติดต่อนี้ว่างแล้ว", + "add": "เพิ่มผู้ใช้ในห้องติดต่อ การทำเช่นนี้จะอนุญาตให้ผู้ใช้ที่ถูกเพิ่มเข้ามาสามารถอ่านและเขียนในห้องติดต่อนี้ได้", + "remove": "ลบผู้ใช้จากห้องติดต่อ การทำเช่นนี้จะลบสิทธิ์ในการอ่านและเขียนสำหรับผู้ใช้ในห้องติดต่อนี้", + "panel": "สร้างข้อความที่มีตัวเลือกหรือปุ่ม (สำหรับการสร้างห้องติดต่อ)", + "blacklistView": "ดูรายชื่อของผู้ที่อยู่ในรายชื่อดำ", + "blacklistAdd": "เพิ่มผู้ใช้ในรายชื่อดำ", + "blacklistRemove": "ลบผู้ใช้จากรายชื่อดำ", + "blacklistGet": "ดึงข้อมูลจากผู้ใช้ที่อยู่ในรายชื่อดำ", + "statsGlobal": "ดูสถิติรวม", + "statsTicket": "ดูสถิติของห้องติดต่อในเซิร์ฟเวอร์", + "statsUser": "ดูสถิติจากผู้ใช้ในเซิร์ฟเวอร์", + "statsReset": "รีเซ็ตสถิติทั้งหมดของบอท (และเริ่มนับจากศูนย์)", + "autocloseDisable": "ปิดการปิดอัตโนมัติในห้องติดต่อนี้", + "autocloseEnable": "เปิดการปิดอัตโนมัติในห้องติดต่อนี้", + "autodeleteDisable": "ปิดการลบอัตโนมัติในห้องติดต่อนี้", + "autodeleteEnable": "เปิดการลบอัตโนมัติในห้องติดต่อนี้" + }, + "stats":{ + "scopes":{ + "global": "สถิติรวม", + "system": "สถิติเกี่ยวกับระบบ", + "user": "สถิติเกี่ยวกับผู้ใช้", + "ticket": "สถิติห้องติดต่อ", + "participants": "ผู้มีส่วนร่วม" + }, + "properties":{ + "ticketsCreated": "ห้องติดต่อที่สร้าง", + "ticketsClosed": "ห้องติดต่อที่ปิด", + "ticketsDeleted": "ห้องติดต่อที่ลบ", + "ticketsReopened": "ห้องติดต่อที่เปิดใหม่", + "ticketsAutoclosed": "ห้องติดต่อที่ปิดอัตโนมัติ", + "ticketsClaimed": "ห้องติดต่อที่ถูกรับ", + "ticketsPinned": "ห้องติดต่อที่ถูกปักหมุด", + "ticketsMoved": "ห้องติดต่อที่ย้าย", + "usersBlacklisted": "ผู้ใช้ที่ถูกใส่ในรายชื่อดำ", + "transcriptsCreated": "บันทึกการสนทนาที่สร้าง" + } + } +} \ No newline at end of file diff --git a/src/core/api/defaults/language.ts b/src/core/api/defaults/language.ts index 86d7d36..db2cb24 100644 --- a/src/core/api/defaults/language.ts +++ b/src/core/api/defaults/language.ts @@ -460,6 +460,7 @@ export interface ODLanguageManagerIds_Default { "openticket:estonian":ODLanguage, "openticket:finnish":ODLanguage, "openticket:danish":ODLanguage, + "openticket:thai":ODLanguage, //ADD NEW LANGUAGES HERE!!! } diff --git a/src/data/framework/languageLoader.ts b/src/data/framework/languageLoader.ts index f25fd03..61aff52 100644 --- a/src/data/framework/languageLoader.ts +++ b/src/data/framework/languageLoader.ts @@ -18,10 +18,11 @@ export const loadAllLanguages = async () => { openticket.languages.add(new api.ODLanguage("openticket:estonian","estonian.json")) openticket.languages.add(new api.ODLanguage("openticket:finnish","finnish.json")) openticket.languages.add(new api.ODLanguage("openticket:danish","danish.json")) + openticket.languages.add(new api.ODLanguage("openticket:thai","thai.json")) //list for config checker const languageList = openticket.defaults.getDefault("languageList") - languageList.push("custom","english","dutch","portuguese","czech","german","catalan","hungarian","spanish","romanian","ukrainian","indonesian","italian","estonian","finnish","danish") + languageList.push("custom","english","dutch","portuguese","czech","german","catalan","hungarian","spanish","romanian","ukrainian","indonesian","italian","estonian","finnish","danish","thai") openticket.defaults.setDefault("languageList",languageList) /** How to add more languages?