mirror of
https://github.com/mauriceboe/TREK.git
synced 2026-10-18 21:16:47 +00:00
7ce31756a3
Settings > General > Language & region gets "Week starts on" (Monday, Sunday or Saturday), and Admin > User Defaults a default for everyone who has not picked one. Monday stays the built-in value, so nothing changes for anyone who leaves it alone. Both calendar implementations follow it: CustomDatePicker, used by trip dates, bookings, costs, to-dos and the admin school holidays on desktop and phone, and the journey date picker, whose weekday headers were hardcoded English and now speak the app language. The grid math and the header row live in one helper (utils/calendarWeek.ts). The day names on the options come from Intl, so only the label and a hint needed translating. Vacay keeps its own per-plan week start. The value is validated like the other regional settings: VALID_VALUES for admin defaults, the display-settings MCP tool, and the managed key list. Addresses discussion #2029.
591 lines
65 KiB
TypeScript
591 lines
65 KiB
TypeScript
import type { TranslationStrings } from '../types';
|
|
|
|
const settings: TranslationStrings = {
|
|
'settings.title': "การตั้งค่า",
|
|
'settings.subtitle': "กำหนดการตั้งค่าส่วนบุคคลของคุณ",
|
|
'settings.tabs.display': "ทั่วไป",
|
|
'settings.tabs.map': "แผนที่",
|
|
'settings.tabs.notifications': "การแจ้งเตือน",
|
|
'settings.tabs.integrations': "การเชื่อมต่อ",
|
|
'settings.plugins.oauth.connected': "เชื่อมต่อแล้ว",
|
|
'settings.plugins.oauth.notConnected': "ไม่ได้เชื่อมต่อ",
|
|
'settings.plugins.oauth.connect': "เชื่อมต่อ",
|
|
'settings.plugins.oauth.disconnect': "ตัดการเชื่อมต่อ",
|
|
'settings.tabs.plugins': "ปลั๊กอิน",
|
|
'settings.plugins.title': "การตั้งค่าปลั๊กอิน",
|
|
'settings.plugins.subtitle': "การตั้งค่าส่วนบุคคลของคุณสำหรับปลั๊กอินที่คุณใช้ (คีย์ API, การตั้งค่า)",
|
|
'settings.plugins.empty': "ไม่มีปลั๊กอินที่ใช้งานอยู่",
|
|
'settings.plugins.saved': "บันทึกการตั้งค่าแล้ว",
|
|
'settings.plugins.requiredMissing': "จำเป็นต้องมี \"{field}\"",
|
|
'settings.pluginActivity.title': "กิจกรรมปลั๊กอิน",
|
|
'settings.pluginActivity.description': "ทุกการกระทำที่ปลั๊กอินทำในนามของคุณ สิ่งใหม่ล่าสุดมาก่อน",
|
|
'settings.pluginActivity.empty': "ยังไม่มีกิจกรรมปลั๊กอิน",
|
|
'settings.pluginActivity.refresh': "รีเฟรช",
|
|
'settings.pluginActivity.columns.plugin': "ปลั๊กอิน",
|
|
'settings.pluginActivity.columns.action': "การดำเนินการ",
|
|
'settings.pluginActivity.columns.resource': "ทรัพยากร",
|
|
'settings.pluginActivity.columns.when': "เมื่อ",
|
|
'settings.pluginActivity.columns.status': "ผลลัพธ์",
|
|
'settings.tabs.account': "บัญชี",
|
|
'settings.tabs.offline': "ออฟไลน์",
|
|
'settings.tabs.about': "เกี่ยวกับ",
|
|
'settings.map': "แผนที่",
|
|
'settings.mapTemplate': "แม่แบบแผนที่",
|
|
'settings.mapTemplatePlaceholder.select': "เลือกเทมเพลต...",
|
|
'settings.mapDefaultHint': "เว้นว่างไว้สำหรับ OpenStreetMap (ค่าเริ่มต้น)",
|
|
'settings.mapHint': "เทมเพลต URL สำหรับชิ้นส่วนแผนที่",
|
|
'settings.mapProvider': "ผู้ให้บริการแผนที่",
|
|
'settings.mapProviderHint': "ส่งผลต่อ Trip Planner และแผนที่การเดินทาง Atlas ใช้ Leaflet เสมอ",
|
|
'settings.mapLeafletSubtitle': "คลาสสิก 2D, ไทล์แรสเตอร์ใด ๆ",
|
|
'settings.mapMapboxSubtitle': "ไทล์เวกเตอร์ สิ่งปลูกสร้าง 3 มิติ และภูมิประเทศ",
|
|
'settings.mapMapLibreSubtitle': "ไทล์เวกเตอร์ OpenFreeMap ไม่มีโทเค็น",
|
|
'settings.mapExperimental': "การทดลอง",
|
|
'settings.mapMapboxToken': "โทเค็นการเข้าถึง Mapbox",
|
|
'settings.mapMapboxTokenHint': "โทเค็นสาธารณะ (pk.*) จาก",
|
|
'settings.mapMapboxTokenLink': "mapbox.com → โทเค็นการเข้าถึง",
|
|
'settings.mapCartoKey': "คีย์ CARTO API",
|
|
'settings.mapCartoKeyHint': "แผนที่ฐาน CARTO จะแสดงลายน้ำโดยไม่มีคีย์ ฟรี ไม่ต้องใช้บัญชี จาก",
|
|
'settings.mapCartoKeyLink': "คีย์ API แผนที่ฐาน carto.com",
|
|
'settings.mapCartoKeyMissing':
|
|
"เทมเพลตนี้เป็นแผนที่ฐาน CARTO หากไม่มีคีย์ CARTO จะประทับตรา \"API KEY REQUIRED\" ลงบนทุกไทล์ จนกว่าคุณจะป้อน TREK จะแสดงแผนที่ฐานเริ่มต้นแทน",
|
|
'settings.mapStyle': "รูปแบบแผนที่",
|
|
'settings.mapStylePlaceholder': "เลือกสไตล์ Mapbox",
|
|
'settings.mapStyleHint': "ที่ตั้งไว้ล่วงหน้าหรือ mapbox://styles/USER/ID URL ของคุณเอง",
|
|
'settings.mapOpenFreeMapStylePlaceholder': "เลือกสไตล์ OpenFreeMap",
|
|
'settings.mapOpenFreeMapStyleHint': "เลือกสไตล์ที่ตั้งไว้ล่วงหน้าหรือระบุ URL สไตล์ของ OpenFreeMap สไตล์ OpenFreeMap ใช้งานได้โดยไม่ต้องใช้โทเค็น",
|
|
'settings.map3dBuildings': "สิ่งปลูกสร้าง 3 มิติและภูมิประเทศ",
|
|
'settings.map3dHint': "Pitch + การอัดขึ้นรูปอาคาร 3 มิติจริง — ใช้ได้กับทุกสไตล์ รวมถึงดาวเทียมด้วย",
|
|
'settings.mapHighQuality': "โหมดคุณภาพสูง",
|
|
'settings.mapHighQualityHint': "การลดรอยหยัก + การฉายภาพลูกโลกเพื่อขอบที่คมชัดยิ่งขึ้นและมุมมองโลกที่สมจริง",
|
|
'settings.mapHighQualityWarning': "อาจส่งผลกระทบต่อประสิทธิภาพการทำงานของอุปกรณ์ระดับล่าง",
|
|
'settings.mapTipLabel': "เคล็ดลับ:",
|
|
'settings.mapTip':
|
|
"คลิกขวาค้างแล้วลากเพื่อหมุนหรือเอียงแผนที่ คลิกกลางเพื่อเพิ่มสถานที่ (คลิกขวาสงวนไว้สำหรับการหมุน)",
|
|
'settings.saveMap': "บันทึกแผนที่",
|
|
'settings.apiKeys': "คีย์ API",
|
|
'settings.mapsKey': "คีย์ Google Maps API",
|
|
'settings.mapsKeyHint': "สำหรับการค้นหาสถานที่ ต้องใช้ Places API (ใหม่) รับที่ console.cloud.google.com",
|
|
'settings.weatherKey': "คีย์ API ของ OpenWeatherMap",
|
|
'settings.weatherKeyHint': "สำหรับข้อมูลสภาพอากาศ ฟรีที่ openweathermap.org/api",
|
|
'settings.keyPlaceholder': "ป้อนคีย์...",
|
|
'settings.configured': "กำหนดค่าแล้ว",
|
|
'settings.saveKeys': "บันทึกคีย์",
|
|
'settings.display': "จอแสดงผล",
|
|
'settings.colorMode': "โหมดสี",
|
|
'settings.light': "สว่าง",
|
|
'settings.dark': "มืด",
|
|
'settings.auto': "อัตโนมัติ",
|
|
'settings.language': "ภาษา",
|
|
'settings.temperature': "หน่วยอุณหภูมิ",
|
|
'settings.distance': "หน่วยระยะทาง",
|
|
'settings.timeFormat': "รูปแบบเวลา",
|
|
'settings.weekStart': "สัปดาห์เริ่มต้นในวัน",
|
|
'settings.weekStartHint': 'วันแรกของสัปดาห์ในตัวเลือกวันที่ทั้งหมด Vacay มีการตั้งค่าของตัวเอง',
|
|
'settings.bookingLabels': "ป้ายกำกับเส้นทางการจอง",
|
|
'settings.bookingLabelsHint': "แสดงชื่อสถานี/สนามบินบนแผนที่ เมื่อปิด จะแสดงเฉพาะไอคอนเท่านั้น",
|
|
'settings.mapPoiPill': "สำรวจสถานที่บนแผนที่",
|
|
'settings.mapPoiPillHint':
|
|
"แสดงแถบหมวดหมู่บนแผนที่การเดินทางเพื่อค้นหาร้านอาหาร โรงแรม และอื่นๆ ในบริเวณใกล้เคียงจาก OpenStreetMap",
|
|
'settings.blurBookingCodes': "รหัสการจองเบลอ",
|
|
'settings.aiAlwaysRetry': "ลองนำเข้าการจองอีกครั้งด้วย AI เสมอ",
|
|
'settings.aiAlwaysRetryHint': "เมื่อตัวแยกวิเคราะห์มาตรฐานไม่สามารถอ่านไฟล์ได้ ให้ลองอีกครั้งโดยอัตโนมัติด้วย AI",
|
|
'settings.optimizeFromAccommodation': "เพิ่มประสิทธิภาพเส้นทางจากที่พัก",
|
|
'settings.optimizeFromAccommodationHint':
|
|
"เมื่อเพิ่มประสิทธิภาพของวัน ให้เริ่มต้นเส้นทางที่โรงแรมที่คุณตื่นนอนและสิ้นสุดที่โรงแรมที่คุณเช็คอินในเย็นวันนั้น",
|
|
'settings.notifications': "การแจ้งเตือน",
|
|
'settings.notifyTripInvite': "คำเชิญการเดินทาง",
|
|
'settings.notifyBookingChange': "การเปลี่ยนแปลงการจอง",
|
|
'settings.notifyTripReminder': "การแจ้งเตือนการเดินทาง",
|
|
'settings.notifyTodoDue': "สิ่งที่ต้องทำจะครบกำหนดเร็วๆ นี้",
|
|
'settings.notifyVacayInvite': "คำเชิญรวมปฏิทินวันลา",
|
|
'settings.notifyVacayShare': "การแชร์ปฏิทินวันหยุด",
|
|
'settings.notifyPhotosShared': "รูปภาพที่แชร์ (อิมมิช)",
|
|
'settings.notifyCollabMessage': "ข้อความแชท (ร่วมกัน)",
|
|
'settings.notifyPackingTagged': "รายการจัดกระเป๋า: มีการมอบหมายรายการให้คุณ",
|
|
'settings.notifyWebhook': "การแจ้งเตือนของเว็บฮุค",
|
|
'settings.notifyVersionAvailable': "มีเวอร์ชันใหม่แล้ว",
|
|
'settings.notificationPreferences.email': "อีเมล",
|
|
'settings.notificationPreferences.webhook': "เว็บฮุค",
|
|
'settings.notificationPreferences.inapp': "ในแอป",
|
|
'settings.notificationPreferences.notConfigured': "ยังไม่ได้กำหนดค่า — ตั้งค่าในการตั้งค่าปลั๊กอิน",
|
|
'settings.plugins.actions': "การดำเนินการ",
|
|
'settings.plugins.actions.confirm': "ดำเนินการนี้หรือไม่?",
|
|
'settings.notificationPreferences.sendTest': "ส่งแบบทดสอบ",
|
|
'settings.notificationPreferences.configure': "กำหนดค่า",
|
|
'settings.notificationPreferences.testSuccess': "ส่งการแจ้งเตือนการทดสอบแล้ว",
|
|
'settings.notificationPreferences.testFailed': "การทดสอบล้มเหลว",
|
|
'settings.notificationPreferences.pluginConfigured': "กำหนดค่าแล้ว จัดการข้อมูลประจำตัวในหน้าการตั้งค่าปลั๊กอิน",
|
|
'settings.notificationPreferences.ntfy': "เอ็นทีฟี่",
|
|
'settings.notificationPreferences.noChannels':
|
|
"ไม่มีการกำหนดค่าช่องทางการแจ้งเตือน ขอให้ผู้ดูแลระบบตั้งค่าการแจ้งเตือนทางอีเมลหรือเว็บฮุค",
|
|
'settings.webhookUrl.label': "URL ของเว็บฮุค",
|
|
'settings.webhookUrl.placeholder': "https://discord.com/api/webhooks/...",
|
|
'settings.webhookUrl.hint': "ป้อน Discord, Slack หรือ URL เว็บฮุคที่กำหนดเองเพื่อรับการแจ้งเตือน",
|
|
'settings.webhookUrl.saved': "บันทึก URL ของ Webhook แล้ว",
|
|
'settings.webhookUrl.test': "ทดสอบ",
|
|
'settings.webhookUrl.testSuccess': "ส่งเว็บฮุคทดสอบเรียบร้อยแล้ว",
|
|
'settings.webhookUrl.testFailed': "การทดสอบเว็บฮุคล้มเหลว",
|
|
'settings.ntfyUrl.topicLabel': "หัวข้อ NTF",
|
|
'settings.ntfyUrl.topicPlaceholder': "การแจ้งเตือนช่วงระยะการเดินทางของฉัน",
|
|
'settings.ntfyUrl.serverLabel': "URL เซิร์ฟเวอร์ Ntfy (ไม่บังคับ)",
|
|
'settings.ntfyUrl.serverPlaceholder': "https://ntfy.sh",
|
|
'settings.ntfyUrl.hint':
|
|
"ป้อนหัวข้อ ntfy ของคุณเพื่อรับการแจ้งเตือนแบบพุช ปล่อยให้เซิร์ฟเวอร์ว่างไว้เพื่อใช้ค่าเริ่มต้นที่ผู้ดูแลระบบของคุณกำหนดไว้",
|
|
'settings.ntfyUrl.tokenLabel': "โทเค็นการเข้าถึง (ไม่จำเป็น)",
|
|
'settings.ntfyUrl.tokenHint': "จำเป็นสำหรับหัวข้อที่มีการป้องกันด้วยรหัสผ่าน",
|
|
'settings.ntfyUrl.saved': "บันทึกการตั้งค่า Ntfy แล้ว",
|
|
'settings.ntfyUrl.test': "ทดสอบ",
|
|
'settings.ntfyUrl.testSuccess': "ทดสอบการส่งการแจ้งเตือน ntfy สำเร็จ",
|
|
'settings.ntfyUrl.testFailed': "ทดสอบการแจ้งเตือน ntfy ล้มเหลว",
|
|
'settings.ntfyUrl.tokenCleared': "ล้างโทเค็นการเข้าถึงแล้ว",
|
|
'settings.notificationsDisabled':
|
|
"ไม่ได้กำหนดค่าการแจ้งเตือน ขอให้ผู้ดูแลระบบเปิดใช้งานการแจ้งเตือนทางอีเมลหรือเว็บฮุค",
|
|
'settings.notificationsActive': "ช่องที่ใช้งานอยู่",
|
|
'settings.notificationsManagedByAdmin': "กิจกรรมการแจ้งเตือนได้รับการกำหนดค่าโดยผู้ดูแลระบบของคุณ",
|
|
'settings.on': "เปิด",
|
|
'settings.off': "ปิด",
|
|
'settings.mcp.title': "การกำหนดค่า MCP",
|
|
'settings.mcp.endpoint': "จุดสิ้นสุด MCP",
|
|
'settings.mcp.clientConfig': "การกำหนดค่าไคลเอ็นต์",
|
|
'settings.mcp.clientConfigHint':
|
|
"แทนที่ <your_token> ด้วยโทเค็น API จากรายการด้านล่าง อาจจำเป็นต้องปรับเส้นทางไปยัง npx สำหรับระบบของคุณ (เช่น C:\\PROGRA~1\\nodejs\\npx.cmd บน Windows)",
|
|
'settings.mcp.clientConfigHintOAuth':
|
|
"แทนที่ <your_client_id> และ <your_client_secret> ด้วยข้อมูลรับรองที่แสดงในไคลเอ็นต์ OAuth 2.1 ที่คุณสร้างด้านบน mcp-remote จะเปิดเบราว์เซอร์ของคุณเพื่อทำการอนุญาตให้เสร็จสิ้นในครั้งแรกที่คุณเชื่อมต่อ อาจจำเป็นต้องปรับเส้นทางไปยัง npx สำหรับระบบของคุณ (เช่น C:\\PROGRA~1\\nodejs\\npx.cmd บน Windows)",
|
|
'settings.mcp.copy': "คัดลอก",
|
|
'settings.mcp.copied': "คัดลอก!",
|
|
'settings.mcp.apiTokens': "โทเค็น API",
|
|
'settings.mcp.createToken': "สร้างโทเค็นใหม่",
|
|
'settings.mcp.noTokens': "ยังไม่มีโทเค็น สร้างหนึ่งรายการเพื่อเชื่อมต่อไคลเอนต์ MCP",
|
|
'settings.mcp.tokenCreatedAt': "สร้างแล้ว",
|
|
'settings.mcp.tokenUsedAt': "ใช้แล้ว",
|
|
'settings.mcp.deleteTokenTitle': "ลบโทเค็น",
|
|
'settings.mcp.deleteTokenMessage':
|
|
"โทเค็นนี้จะหยุดทำงานทันที ไคลเอ็นต์ MCP ใดๆ ที่ใช้งานอยู่จะสูญเสียสิทธิ์ในการเข้าถึง",
|
|
'settings.mcp.modal.createTitle': "สร้างโทเค็น API",
|
|
'settings.mcp.modal.tokenName': "ชื่อโทเค็น",
|
|
'settings.mcp.modal.tokenNamePlaceholder': "เช่น Claude Desktop แล็ปท็อปสำหรับทำงาน",
|
|
'settings.mcp.modal.creating': "กำลังสร้าง...",
|
|
'settings.mcp.modal.create': "สร้างโทเค็น",
|
|
'settings.mcp.modal.createdTitle': "สร้างโทเค็นแล้ว",
|
|
'settings.mcp.modal.createdWarning':
|
|
"โทเค็นนี้จะแสดงเพียงครั้งเดียวเท่านั้น คัดลอกและจัดเก็บทันที — ไม่สามารถกู้คืนได้",
|
|
'settings.mcp.modal.done': "เสร็จแล้ว",
|
|
'settings.mcp.toast.created': "สร้างโทเค็นแล้ว",
|
|
'settings.mcp.toast.createError': "ไม่สามารถสร้างโทเค็นได้",
|
|
'settings.mcp.toast.deleted': "ลบโทเค็นแล้ว",
|
|
'settings.mcp.toast.deleteError': "ลบโทเค็นไม่สำเร็จ",
|
|
'settings.mcp.apiTokensDeprecated':
|
|
"โทเค็น API เลิกใช้งานแล้วและจะถูกลบออกในรุ่นต่อๆ ไป โปรดใช้ไคลเอนต์ OAuth 2.1 แทน",
|
|
'settings.oauth.clients': "ลูกค้า OAuth 2.1",
|
|
'settings.oauth.clientsHint':
|
|
"ลงทะเบียนไคลเอ็นต์ OAuth 2.1 เพื่อให้แอปพลิเคชัน MCP บุคคลที่สาม (Claude Web, Cursor ฯลฯ) เชื่อมต่อได้โดยไม่ต้องใช้โทเค็นแบบคงที่",
|
|
'settings.oauth.createClient': "ไคลเอ็นต์ใหม่",
|
|
'settings.oauth.noClients': "ไม่มีไคลเอ็นต์ OAuth ที่ลงทะเบียน",
|
|
'settings.oauth.clientId': "รหัสไคลเอ็นต์",
|
|
'settings.oauth.clientSecret': "รหัสลับไคลเอ็นต์",
|
|
'settings.oauth.deleteClient': "ลบไคลเอ็นต์",
|
|
'settings.oauth.deleteClientMessage':
|
|
"ไคลเอ็นต์นี้และเซสชันที่ใช้งานอยู่ทั้งหมดจะถูกลบออกอย่างถาวร แอปพลิเคชันใด ๆ ที่ใช้งานอยู่จะสูญเสียสิทธิ์การเข้าถึงทันที",
|
|
'settings.oauth.rotateSecret': "หมุนความลับ",
|
|
'settings.oauth.rotateSecretMessage':
|
|
"ข้อมูลลับไคลเอ็นต์ใหม่จะถูกสร้างขึ้น และเซสชันที่มีอยู่ทั้งหมดจะใช้ไม่ได้ทันที อัปเดตแอปพลิเคชันของคุณก่อนที่จะปิดกล่องโต้ตอบนี้",
|
|
'settings.oauth.rotateSecretConfirm': "หมุน",
|
|
'settings.oauth.rotateSecretConfirming': "กำลังหมุน...",
|
|
'settings.oauth.rotateSecretDoneTitle': "สร้างความลับใหม่แล้ว",
|
|
'settings.oauth.rotateSecretDoneWarning':
|
|
"ความลับนี้จะปรากฏเพียงครั้งเดียวเท่านั้น คัดลอกทันทีและอัปเดตแอปพลิเคชันของคุณ — เซสชันก่อนหน้านี้ทั้งหมดไม่ถูกต้อง",
|
|
'settings.oauth.activeSessions': "เซสชัน OAuth ที่ใช้งานอยู่",
|
|
'settings.oauth.sessionScopes': "ขอบเขต",
|
|
'settings.oauth.sessionExpires': "หมดอายุ",
|
|
'settings.oauth.revoke': "เพิกถอน",
|
|
'settings.oauth.revokeSession': "เพิกถอนเซสชัน",
|
|
'settings.oauth.revokeSessionMessage': "การดำเนินการนี้จะเพิกถอนการเข้าถึงสำหรับเซสชัน OAuth นี้ทันที",
|
|
'settings.oauth.modal.createTitle': "ลงทะเบียนไคลเอ็นต์ OAuth",
|
|
'settings.oauth.modal.presets': "การตั้งค่าล่วงหน้าอย่างรวดเร็ว",
|
|
'settings.oauth.modal.clientName': "ชื่อแอปพลิเคชัน",
|
|
'settings.oauth.modal.clientNamePlaceholder': "เช่น Claude Web แอป MCP ของฉัน",
|
|
'settings.oauth.modal.redirectUris': "เปลี่ยนเส้นทาง URI",
|
|
'settings.oauth.modal.redirectUrisPlaceholder': "https://your-app.com/callback\nhttps://your-app.com/auth",
|
|
'settings.oauth.modal.redirectUrisHint':
|
|
"หนึ่ง URI ต่อบรรทัด HTTPS, Loopback HTTP หรือรูปแบบแอปส่วนตัว (myapp://) ตรงกันทุกประการ ยกเว้นพอร์ตของ URI แบบย้อนกลับ",
|
|
'settings.oauth.modal.scopes': "ขอบเขตที่อนุญาต",
|
|
'settings.oauth.modal.scopesHint':
|
|
"list_trips และ get_trip_summary พร้อมใช้งานเสมอ โดยไม่จำเป็นต้องมีขอบเขต พวกเขาปล่อยให้ AI ค้นหารหัสการเดินทางที่จำเป็นเพื่อใช้เครื่องมืออื่น",
|
|
'settings.oauth.modal.selectAll': "เลือกทั้งหมด",
|
|
'settings.oauth.modal.deselectAll': "ยกเลิกการเลือกทั้งหมด",
|
|
'settings.oauth.modal.creating': "กำลังลงทะเบียน...",
|
|
'settings.oauth.modal.create': "ลงทะเบียนไคลเอ็นต์",
|
|
'settings.oauth.modal.createdTitle': "ลงทะเบียนไคลเอ็นต์แล้ว",
|
|
'settings.oauth.modal.createdWarning': "รหัสลับไคลเอ็นต์จะแสดงเพียงครั้งเดียว คัดลอกทันที — ไม่สามารถกู้คืนได้",
|
|
'settings.oauth.toast.createError': "ลงทะเบียนไคลเอ็นต์ OAuth ไม่สำเร็จ",
|
|
'settings.oauth.toast.deleted': "ลบไคลเอ็นต์ OAuth แล้ว",
|
|
'settings.oauth.toast.deleteError': "ลบไคลเอ็นต์ OAuth ไม่สำเร็จ",
|
|
'settings.oauth.toast.revoked': "เซสชันถูกเพิกถอน",
|
|
'settings.oauth.toast.revokeError': "ไม่สามารถเพิกถอนเซสชันได้",
|
|
'settings.oauth.toast.rotateError': "ไม่สามารถหมุนเวียนรหัสลับไคลเอ็นต์",
|
|
'settings.oauth.modal.machineClient': "ไคลเอนต์เครื่อง (ไม่มีการเข้าสู่ระบบเบราว์เซอร์)",
|
|
'settings.oauth.modal.machineClientHint':
|
|
"ใช้ client_credentials grant — ไม่จำเป็นต้องใช้ URI การเปลี่ยนเส้นทาง โทเค็นจะออกโดยตรงผ่าน client_id + client_secret และทำหน้าที่เป็นคุณภายในขอบเขตที่เลือก",
|
|
'settings.oauth.modal.machineClientUsage':
|
|
"รับโทเค็น: POST /oauth/token พร้อมด้วย grant_type=client_credentials, client_id และ client_secret ไม่มีเบราว์เซอร์ ไม่มีโทเค็นการรีเฟรช",
|
|
'settings.oauth.badge.machine': "เครื่อง",
|
|
'settings.account': "บัญชี",
|
|
'settings.about': "เกี่ยวกับ",
|
|
'settings.about.reportBug': "รายงานข้อผิดพลาด",
|
|
'settings.about.reportBugHint': "พบปัญหา? แจ้งให้เราทราบ",
|
|
'settings.about.featureRequest': "คำขอคุณลักษณะ",
|
|
'settings.about.featureRequestHint': "ขอแนะนำฟีเจอร์ใหม่",
|
|
'settings.about.wikiHint': "เอกสารและคำแนะนำ",
|
|
'settings.about.descriptionManaged':
|
|
"TREK ช่วยคุณจัดทริปตั้งแต่ไอเดียแรกไปจนถึงความทรงจำสุดท้าย การวางแผนวัน งบประมาณ รายการสิ่งของที่ต้องเตรียมไป รูปภาพ และอื่นๆ อีกมากมาย รวมอยู่ในที่เดียว",
|
|
'settings.about.sourceTitle': "ซอร์สโค้ด",
|
|
'settings.about.sourceHint': "TREK เป็นโอเพ่นซอร์ส ได้รับใบอนุญาต AGPL-3.0",
|
|
'settings.about.supporters.badge': "ผู้สนับสนุนรายเดือน",
|
|
'settings.about.supporters.title': "เพื่อนร่วมเดินทางสำหรับ TREK",
|
|
'settings.about.supporters.subtitle':
|
|
"ขณะที่คุณกำลังวางแผนเส้นทางต่อไป คนเหล่านี้กำลังช่วยวางแผนอนาคตของ TREK การสนับสนุนรายเดือนของพวกเขามุ่งตรงไปสู่การพัฒนาและการใช้งานจริง — ดังนั้น TREK ยังคงเป็น Open Source",
|
|
'settings.about.supporters.since': "ผู้สนับสนุนตั้งแต่ {date}",
|
|
'settings.about.supporters.tierEmpty': "เป็นคนแรก",
|
|
'settings.about.supporter.tier.noReturnTicket': "ไม่มีตั๋วไปกลับ",
|
|
'settings.about.supporter.tier.lostLuggageVip': "กระเป๋าเดินทาง VIP หาย",
|
|
'settings.about.supporter.tier.businessClassDreamer': "นักฝันชั้นธุรกิจ",
|
|
'settings.about.supporter.tier.budgetTraveller': "นักเดินทางราคาประหยัด",
|
|
'settings.about.supporter.tier.hostelBunkmate': "โฮสเทล บังค์เมท",
|
|
'settings.about.description':
|
|
"TREK เป็นผู้วางแผนการเดินทางที่โฮสต์เองซึ่งช่วยคุณจัดการเดินทางตั้งแต่แนวคิดแรกไปจนถึงความทรงจำสุดท้าย การวางแผนวัน งบประมาณ รายการสิ่งของที่ต้องเตรียมไป รูปภาพ และอื่นๆ อีกมากมาย ทั้งหมดในที่เดียวบนเซิร์ฟเวอร์ของคุณเอง",
|
|
'settings.about.madeWith': "ทำด้วย",
|
|
'settings.about.madeBy': "โดยมอริซและชุมชนโอเพ่นซอร์สที่กำลังเติบโต",
|
|
'settings.username': "ชื่อผู้ใช้",
|
|
'settings.email': "อีเมล",
|
|
'settings.role': "บทบาท",
|
|
'settings.roleAdmin': "ผู้ดูแลระบบ",
|
|
'settings.oidcLinked': "เชื่อมโยงกับ",
|
|
'settings.changePassword': "เปลี่ยนรหัสผ่าน",
|
|
'settings.currentPassword': "รหัสผ่านปัจจุบัน",
|
|
'settings.currentPasswordRequired': "ต้องใช้รหัสผ่านปัจจุบัน",
|
|
'settings.newPassword': "รหัสผ่านใหม่",
|
|
'settings.confirmPassword': "ยืนยันรหัสผ่านใหม่",
|
|
'settings.updatePassword': "อัปเดตรหัสผ่าน",
|
|
'settings.passwordRequired': "กรุณากรอกรหัสผ่านปัจจุบันและรหัสผ่านใหม่",
|
|
'settings.passwordTooShort': "รหัสผ่านต้องมีอย่างน้อย 8 ตัวอักษร",
|
|
'settings.passwordMismatch': "รหัสผ่านไม่ตรงกัน",
|
|
'settings.passwordWeak': "รหัสผ่านจะต้องมีตัวพิมพ์ใหญ่ ตัวพิมพ์เล็ก ตัวเลข และอักขระพิเศษ",
|
|
'settings.passwordChanged': "เปลี่ยนรหัสผ่านเรียบร้อยแล้ว",
|
|
'settings.mustChangePassword':
|
|
"คุณต้องเปลี่ยนรหัสผ่านก่อนจึงจะสามารถดำเนินการต่อได้ กรุณาตั้งรหัสผ่านใหม่ด้านล่าง",
|
|
'settings.deleteAccount': "ลบบัญชี",
|
|
'settings.deleteAccountTitle': "ลบบัญชีของคุณ?",
|
|
'settings.deleteAccountWarning':
|
|
"บัญชีของคุณ การเดินทาง สถานที่ และไฟล์ทั้งหมดของคุณจะถูกลบอย่างถาวร การดำเนินการนี้ไม่สามารถยกเลิกได้",
|
|
'settings.deleteAccountConfirm': "ลบอย่างถาวร",
|
|
'settings.deleteBlockedTitle': "ไม่สามารถลบได้",
|
|
'settings.deleteBlockedMessage':
|
|
"คุณเป็นผู้ดูแลระบบเพียงคนเดียว เลื่อนระดับผู้ใช้รายอื่นเป็นผู้ดูแลระบบก่อนที่จะลบบัญชีของคุณ",
|
|
'settings.roleUser': "ผู้ใช้",
|
|
'settings.saveProfile': "บันทึกโปรไฟล์",
|
|
'settings.toast.mapSaved': "บันทึกการตั้งค่าแผนที่แล้ว",
|
|
'settings.toast.keysSaved': "บันทึกคีย์ API แล้ว",
|
|
'settings.toast.displaySaved': "บันทึกการตั้งค่าการแสดงผลแล้ว",
|
|
'settings.toast.profileSaved': "บันทึกโปรไฟล์แล้ว",
|
|
'settings.uploadAvatar': "อัปโหลดรูปโปรไฟล์",
|
|
'settings.removeAvatar': "ลบรูปโปรไฟล์",
|
|
'settings.avatarUploaded': "อัปเดตรูปโปรไฟล์แล้ว",
|
|
'settings.avatarRemoved': "ลบรูปโปรไฟล์แล้ว",
|
|
'settings.avatarError': "การอัปโหลดล้มเหลว",
|
|
'settings.avatarRemoveError': "การลบล้มเหลว",
|
|
'settings.mfa.title': "การรับรองความถูกต้องด้วยสองปัจจัย (2FA)",
|
|
'settings.mfa.description':
|
|
"เพิ่มขั้นตอนที่ 2 เมื่อคุณลงชื่อเข้าใช้ด้วยอีเมลและรหัสผ่าน ใช้แอปตรวจสอบความถูกต้อง (Google Authenticator, Authy ฯลฯ)",
|
|
'settings.mfa.requiredByPolicy':
|
|
"ผู้ดูแลระบบของคุณต้องการการรับรองความถูกต้องด้วยสองปัจจัย ตั้งค่าแอปตรวจสอบสิทธิ์ด้านล่างก่อนดำเนินการต่อ",
|
|
'settings.mfa.backupTitle': "รหัสสำรอง",
|
|
'settings.mfa.backupDescription': "ใช้รหัสสำรองแบบครั้งเดียวเหล่านี้หากคุณไม่สามารถเข้าถึงแอปตรวจสอบสิทธิ์ของคุณได้",
|
|
'settings.mfa.backupWarning': "บันทึกรหัสเหล่านี้ทันที แต่ละรหัสสามารถใช้ได้เพียงครั้งเดียวเท่านั้น",
|
|
'settings.mfa.backupCopy': "คัดลอกรหัส",
|
|
'settings.mfa.backupDownload': "ดาวน์โหลด TXT",
|
|
'settings.mfa.backupPrint': "พิมพ์ / PDF",
|
|
'settings.mfa.backupCopied': "คัดลอกรหัสสำรองแล้ว",
|
|
'settings.mfa.enabled': "2FA ถูกเปิดใช้งานในบัญชีของคุณ",
|
|
'settings.mfa.disabled': "ไม่ได้เปิดใช้งาน 2FA",
|
|
'settings.mfa.setup': "ตั้งค่าเครื่องยืนยันตัวตน",
|
|
'settings.mfa.scanQr': "สแกนโค้ด QR นี้ด้วยแอปของคุณ หรือป้อนข้อมูลลับด้วยตนเอง",
|
|
'settings.mfa.secretLabel': "รหัสลับ (ป้อนด้วยตนเอง)",
|
|
'settings.mfa.codePlaceholder': "รหัส 6 หลัก",
|
|
'settings.mfa.enable': "เปิดใช้งาน 2FA",
|
|
'settings.mfa.cancelSetup': "ยกเลิก",
|
|
'settings.mfa.disableTitle': "ปิดการใช้งาน 2FA",
|
|
'settings.mfa.disableHint': "ป้อนรหัสผ่านบัญชีของคุณและรหัสปัจจุบันจากตัวตรวจสอบสิทธิ์ของคุณ",
|
|
'settings.mfa.disable': "ปิดการใช้งาน 2FA",
|
|
'settings.mfa.toastEnabled': "เปิดใช้งานการรับรองความถูกต้องด้วยสองปัจจัย",
|
|
'settings.mfa.toastDisabled': "การรับรองความถูกต้องด้วยสองปัจจัยถูกปิดใช้งาน",
|
|
'settings.mfa.demoBlocked': "ไม่สามารถใช้ได้ในโหมดสาธิต",
|
|
'settings.currency': "แสดงสกุลเงิน",
|
|
'settings.currencyHint':
|
|
"จำนวนเงินในต้นทุนจะแสดงแปลงเป็นสกุลเงินนี้เพื่อแสดงเท่านั้น — จำนวนเงินเดิมไม่มีการเปลี่ยนแปลง",
|
|
'settings.currencyTrip': "สกุลเงินการเดินทาง",
|
|
'settings.passkey.title': "พาสคีย์",
|
|
'settings.passkey.description':
|
|
"ลงชื่อเข้าใช้เร็วขึ้นและป้องกันฟิชชิ่งด้วยรหัสผ่าน ไม่ว่าจะเป็นลายนิ้วมือ ใบหน้า PIN หรือคีย์ฮาร์ดแวร์ รหัสผ่านของคุณยังคงเป็นข้อมูลสำรอง",
|
|
'settings.passkey.notConfigured':
|
|
"รหัสผ่านถูกเปิดใช้งานแต่ยังไม่ได้กำหนดค่าอย่างสมบูรณ์บนเซิร์ฟเวอร์นี้ ขอให้ผู้ดูแลระบบของคุณตั้งค่าโดเมน WebAuthn",
|
|
'settings.passkey.add': "เพิ่มรหัสผ่าน",
|
|
'settings.passkey.addTitle': "เพิ่มรหัสผ่าน",
|
|
'settings.passkey.passwordPrompt': "ยืนยันรหัสผ่านปัจจุบันของคุณ จากนั้นปฏิบัติตามคำแนะนำของอุปกรณ์",
|
|
'settings.passkey.passwordRequired': "รหัสผ่านปัจจุบันของคุณเป็นสิ่งจำเป็น",
|
|
'settings.passkey.namePlaceholder': "ชื่อ (ไม่บังคับ เช่น \"iPhone\")",
|
|
'settings.passkey.addedToast': "เพิ่มรหัสผ่านแล้ว",
|
|
'settings.passkey.added': "เพิ่มแล้ว",
|
|
'settings.passkey.addError': "ไม่สามารถเพิ่มรหัสผ่าน",
|
|
'settings.passkey.cancelled': "การตั้งค่าพาสคีย์ถูกยกเลิก",
|
|
'settings.passkey.deleted': "นำรหัสผ่านออกแล้ว",
|
|
'settings.passkey.deleteConfirm': "นำรหัสผ่านนี้ออกใช่ไหม ยืนยันด้วยรหัสผ่านของคุณ",
|
|
'settings.passkey.rename': "เปลี่ยนชื่อ",
|
|
'settings.passkey.defaultName': "พาสคีย์",
|
|
'settings.passkey.synced': "ซิงค์แล้ว",
|
|
'settings.passkey.deviceBound': "อุปกรณ์นี้",
|
|
'settings.passkey.lastUsed': "ใช้ครั้งสุดท้าย",
|
|
'settings.passkey.neverUsed': "ไม่เคยใช้",
|
|
'settings.airtrail.title': "แอร์เทรล",
|
|
'settings.airtrail.hint':
|
|
"เชื่อมต่ออินสแตนซ์ AirTrail ของคุณเพื่อนำเข้าและซิงค์เที่ยวบิน สร้างคีย์ API ใน AirTrail ภายใต้การตั้งค่า → ความปลอดภัย",
|
|
'settings.airtrail.url': "URL ของอินสแตนซ์",
|
|
'settings.airtrail.apiKey': "คีย์เอพีไอ",
|
|
'settings.airtrail.apiKeyPlaceholder': "คีย์ API ของผู้ถือ",
|
|
'settings.airtrail.apiKeyHint': "สร้างใน AirTrail ภายใต้การตั้งค่า → ความปลอดภัย จัดเก็บแบบเข้ารหัส",
|
|
'settings.airtrail.allowInsecureTls': "อนุญาตใบรับรองที่ลงนามด้วยตนเอง",
|
|
'settings.airtrail.allowInsecureTlsHint': "เปิดใช้งานสำหรับอินสแตนซ์ที่เชื่อถือได้บนเครือข่ายของคุณเองเท่านั้น",
|
|
'settings.airtrail.writeBack': "เขียนการเปลี่ยนแปลงกลับไปที่ AirTrail",
|
|
'settings.airtrail.writeBackHint':
|
|
"ปิดโดยค่าเริ่มต้น: AirTrail คือแหล่งที่มาของความจริง และ TREK จะอ่านจากข้อมูลนั้นเท่านั้น เปิดเพื่อส่งการแก้ไขที่ทำใน TREK กลับไปยัง AirTrail",
|
|
'settings.airtrail.connected': "เชื่อมต่อแล้ว",
|
|
'settings.airtrail.notConnected': "ไม่ได้เชื่อมต่อ",
|
|
'settings.airtrail.toast.saved': "บันทึกการเชื่อมต่อ AirTrail แล้ว",
|
|
'settings.airtrail.toast.saveError': "ไม่สามารถบันทึกการเชื่อมต่อได้",
|
|
'settings.airtrail.test.button': "ทดสอบการเชื่อมต่อ",
|
|
'settings.airtrail.test.success': "เชื่อมต่อแล้ว — พบ {count} เที่ยวบิน",
|
|
'settings.airtrail.test.failed': "การเชื่อมต่อล้มเหลว",
|
|
'settings.aiParsing.title': "การแยกวิเคราะห์ AI",
|
|
'settings.aiParsing.hint':
|
|
"เลือกโมเดล AI ที่ใช้แยกรายละเอียดการจองจากไฟล์ที่อัปโหลด การตั้งค่านี้มีผลเฉพาะเมื่อผู้ดูแลระบบไม่ได้กำหนดโมเดลสำหรับทั้งอินสแตนซ์",
|
|
'settings.aiParsing.provider': "ผู้ให้บริการ",
|
|
'settings.aiParsing.providerLocal': "ท้องถิ่น (โอลามะ)",
|
|
'settings.aiParsing.providerOpenai': "OpenAI",
|
|
'settings.aiParsing.providerAnthropic': "มานุษยวิทยา",
|
|
'settings.aiParsing.localAdminOnly':
|
|
"ตำแหน่งข้อมูลภายใน (Ollama) ได้รับการตั้งค่าครั้งเดียวสำหรับอินสแตนซ์ทั้งหมดในการตั้งค่าผู้ดูแลระบบ คุณยังคงสามารถใช้คีย์ OpenAI หรือ Anthropic ของคุณเองได้ที่นี่",
|
|
'settings.aiParsing.model': "รุ่น",
|
|
'settings.aiParsing.baseUrl': "URL ฐาน",
|
|
'settings.aiParsing.baseUrlHint': "ตำแหน่งที่โมเดลทำงาน — เซิร์ฟเวอร์ Ollama ในเครื่องหรือจุดสิ้นสุดที่เข้ากันได้กับ OpenAI",
|
|
'settings.aiParsing.apiKey': "คีย์เอพีไอ",
|
|
'settings.aiParsing.apiKeyHint': "จัดเก็บแบบเข้ารหัส เว้นว่างไว้เพื่อเก็บคีย์ปัจจุบันไว้",
|
|
'settings.aiParsing.multimodal': "ส่งเอกสารเป็นรูปภาพ",
|
|
'settings.aiParsing.multimodalHint': "สำหรับรุ่นที่มองเห็นได้ — ส่ง PDF ต้นฉบับแทนข้อความที่แยกออกมา",
|
|
'settings.aiParsing.toast.saved': "บันทึกการตั้งค่า AI แล้ว",
|
|
'settings.aiParsing.toast.saveError': "ไม่สามารถบันทึกการตั้งค่า AI",
|
|
'settings.tabs.appearance': "ลักษณะที่ปรากฏ",
|
|
'settings.appearance.theme': "ธีม",
|
|
'settings.appearance.scheme': "โทนสี",
|
|
'settings.appearance.scheme.default': "ค่าเริ่มต้น",
|
|
'settings.appearance.scheme.highContrast': "คอนทราสต์สูง",
|
|
'settings.appearance.scheme.indigo': "สีคราม",
|
|
'settings.appearance.scheme.teal': "นกเป็ดน้ำ",
|
|
'settings.appearance.scheme.rose': "โรส",
|
|
'settings.appearance.scheme.amber': "อำพัน",
|
|
'settings.appearance.scheme.violet': "สีม่วง",
|
|
'settings.appearance.scheme.custom': "กำหนดเอง",
|
|
'settings.appearance.customAccent': "สำเนียงที่กำหนดเอง",
|
|
'settings.appearance.contrastOk': "ความคมชัดที่ดี",
|
|
'settings.appearance.contrastLow': "คอนทราสต์ต่ำ",
|
|
'settings.appearance.readability': "ความสามารถในการอ่าน",
|
|
'settings.appearance.transparency': "ความโปร่งใส",
|
|
'settings.appearance.transparencyHint':
|
|
"พื้นผิวโปร่งแสงเหมือนแก้ว ปิดเพื่อให้ได้พื้นหลังทึบและมีคอนทราสต์สูง",
|
|
'settings.appearance.reduceMotion': "ลดการเคลื่อนไหว",
|
|
'settings.appearance.reduceMotionHint': "ลดภาพเคลื่อนไหวและการเปลี่ยนภาพให้เหลือน้อยที่สุด",
|
|
'settings.appearance.density': "ความหนาแน่น",
|
|
'settings.appearance.comfortable': "สะดวกสบาย",
|
|
'settings.appearance.compact': "กะทัดรัด",
|
|
'settings.appearance.textSize': "ขนาดข้อความ",
|
|
'settings.appearance.advancedTextSizes': "ขนาดข้อความขั้นสูง",
|
|
'settings.appearance.hideAdvanced': "ซ่อนขั้นสูง",
|
|
'settings.appearance.tier.title': "ชื่อเรื่อง",
|
|
'settings.appearance.tier.subtitle': "คำบรรยาย",
|
|
'settings.appearance.tier.body': "ร่างกาย",
|
|
'settings.appearance.tier.caption': "คำบรรยายภาพ",
|
|
'settings.appearance.dashboardWidgets': "วิดเจ็ตแดชบอร์ด",
|
|
'settings.appearance.dashboardWidgetsHint': "แสดงหรือซ่อนวิดเจ็ตแดชบอร์ดอย่างเป็นอิสระบนเดสก์ท็อปและอุปกรณ์เคลื่อนที่",
|
|
'settings.appearance.desktop': "เดสก์ท็อป",
|
|
'settings.appearance.mobile': "มือถือ",
|
|
'settings.appearance.widget.sidebar': "แถบด้านข้างขวา",
|
|
'settings.appearance.widget.currency': "สกุลเงิน",
|
|
'settings.appearance.widget.collections': "คอลเลกชัน",
|
|
'settings.appearance.widget.timezones': "เขตเวลา",
|
|
'settings.appearance.widget.upcomingReservations': "การจองที่จะเกิดขึ้น",
|
|
'settings.appearance.widget.atlas': "แอตลาส/ประเทศ",
|
|
'settings.appearance.widget.tripsTotal': "ทริปทั้งหมด",
|
|
'settings.appearance.widget.daysTraveled': "วันเดินทาง",
|
|
'settings.appearance.widget.distanceFlown': "ระยะทางที่บิน",
|
|
'settings.appearance.reset': "รีเซ็ตเป็นค่าเริ่มต้น",
|
|
'settings.appearance.group.belowHero': "ข้างล่างพระเอก.",
|
|
'settings.appearance.group.bottomOfPage': "ด้านล่างของหน้า",
|
|
'settings.appearance.sidebarHint': "คอลัมน์ขวาทั้งหมด ปิดและแผงหน้าปัดตรงกลาง",
|
|
'settings.appearance.densityHint':
|
|
"ขนาดกะทัดรัดทำให้ระยะห่างและช่องว่างภายในกระชับขึ้นเพื่อเค้าโครงที่หนาแน่นยิ่งขึ้นซึ่งพอดีกับหน้าจอมากขึ้น",
|
|
'settings.appearance.textSizeAll': "ทุกอย่าง",
|
|
'settings.appearance.perSize': "ปรับขนาดแต่ละขนาดแยกกัน",
|
|
'settings.appearance.size.large': "ใหญ่",
|
|
'settings.appearance.size.medium': "ปานกลาง",
|
|
'settings.appearance.size.normal': "ปกติ",
|
|
'settings.appearance.size.small': "เล็ก",
|
|
'settings.appearance.preview.large': "หัวเรื่องใหญ่",
|
|
'settings.appearance.preview.medium': "คำบรรยายปานกลาง",
|
|
'settings.appearance.preview.normal': "ข้อความเนื้อหาปกติ",
|
|
'settings.appearance.preview.small': "คำบรรยาย/ที่อยู่เล็กๆ",
|
|
'settings.appearance.example.large': "หัวเรื่อง, ตัวเลขใหญ่",
|
|
'settings.appearance.example.medium': "หัวข้อย่อย",
|
|
'settings.appearance.example.normal': "ชื่อสถานที่ คำอธิบาย",
|
|
'settings.appearance.example.small': "ที่อยู่, ป้ายกำกับ",
|
|
'settings.appearance.experimental': "การทดลอง",
|
|
'settings.appearance.mobileNav': "แถบนำทางด้านล่าง",
|
|
'settings.appearance.mobileNav.hint':
|
|
"เลือกรายการที่จะปรากฏในแถบและรายการใดอยู่ใต้ \"เพิ่มเติม\" แดชบอร์ดจะอยู่อันดับแรกเสมอ",
|
|
'settings.appearance.mobileNav.inBar': "ในบาร์",
|
|
'settings.appearance.mobileNav.underMore': "ภายใต้ “เพิ่มเติม”",
|
|
'settings.appearance.mobileNav.moreEmpty': "ยังไม่มีอะไรที่นี่ ทุกอย่างลงตัวพอดีในบาร์",
|
|
'settings.appearance.mobileNav.pinned': "ปักหมุดแล้ว",
|
|
'settings.appearance.mobileNav.toMore': "ย้ายไปใต้ \"เพิ่มเติม\"",
|
|
'settings.appearance.mobileNav.toBar': "ย้ายไปที่บาร์",
|
|
'settings.appearance.dashOrder': "ลำดับแดชบอร์ด",
|
|
'settings.appearance.dashOrder.hint':
|
|
"จัดลำดับรายการการเดินทางและวิดเจ็ตใหม่บนแดชบอร์ดโทรศัพท์ของคุณ ทริปเด่นจะอยู่ด้านบนเสมอ",
|
|
'settings.appearance.dashOrder.trips': "ทริป",
|
|
'settings.appearance.dashOrder.hidden': "ซ่อนเร้น",
|
|
'settings.general.languageRegion': "ภาษาและภูมิภาค",
|
|
'settings.general.travelMap': "การเดินทางและแผนที่",
|
|
'settings.general.startup': "การเริ่มต้น",
|
|
'settings.startPage': "หน้าเริ่มต้น",
|
|
'settings.startPageDashboard': "แดชบอร์ด",
|
|
'settings.startPageActiveTrip': "การเดินทางที่ใช้งานอยู่",
|
|
'settings.startPageHint':
|
|
"TREK เปิดตรงในทริปที่กำลังวิ่งวันนี้หรือทริปถัดไปที่กำลังจะมาถึง นั่นคือการเดินทางเดียวกันกับคุณสมบัติแดชบอร์ด",
|
|
'settings.startTripTab': "แท็บเริ่มต้น",
|
|
'settings.startTripTabHint':
|
|
"แท็บการเดินทางจะเปิดขึ้น หากเป็นของส่วนเสริมที่คุณปิดไป มุมมองแผนจะเปิดขึ้นแทน",
|
|
|
|
// ── Offline (#1135) ────────────────────────────────────────────────────────
|
|
'settings.offline.cache.title': "แคชออฟไลน์",
|
|
'settings.offline.mode.title': "โหมดออฟไลน์",
|
|
'settings.offline.mode.force': "บังคับโหมดออฟไลน์",
|
|
'settings.offline.mode.forceHint':
|
|
"ทำงานจากข้อมูลแคชเท่านั้นและจัดคิวการเปลี่ยนแปลงของคุณ ปิดเพื่อเชื่อมต่อและซิงค์อีกครั้ง",
|
|
'settings.offline.mode.active': "โหมดออฟไลน์เปิดอยู่ — การเปลี่ยนแปลงของคุณอยู่ในคิวและจะซิงค์เมื่อคุณปิด",
|
|
'settings.offline.prepare.title': "เตรียมความพร้อมสำหรับออฟไลน์",
|
|
'settings.offline.prepare.hint':
|
|
"ดาวน์โหลดทุกสิ่งที่คุณต้องการ - ข้อมูลการเดินทาง เอกสาร และไทล์แผนที่ - ก่อนที่คุณจะขาดการเชื่อมต่อ",
|
|
'settings.offline.prepare.button': "ดาวน์โหลดเพื่อใช้แบบออฟไลน์",
|
|
'settings.offline.prepare.running': "กำลังดาวน์โหลด...",
|
|
'settings.offline.prepare.done': "พร้อมสำหรับการใช้งานแบบออฟไลน์",
|
|
'settings.offline.prepare.phase.trips': "ข้อมูลการเดินทาง",
|
|
'settings.offline.prepare.phase.files': "เอกสาร",
|
|
'settings.offline.prepare.phase.tiles': "ไทล์แผนที่",
|
|
'settings.offline.resync': "ซิงค์ใหม่ทันที",
|
|
'settings.offline.resyncing': "กำลังซิงค์...",
|
|
'settings.offline.storage.title': "สิ่งที่จะจัดเก็บแบบออฟไลน์",
|
|
'settings.offline.storage.tiles': "จัดเก็บแผ่นแผนที่แบบออฟไลน์",
|
|
'settings.offline.storage.tilesHint':
|
|
"ไทล์แผนที่ใช้พื้นที่เก็บข้อมูลมากที่สุด ปิดตัวเลือกนี้เพื่อเก็บเฉพาะข้อมูลการเดินทางและเอกสารแบบออฟไลน์",
|
|
'settings.offline.storage.tripsTitle': "ทริป",
|
|
'settings.offline.storage.tripOn': "เก็บไว้แบบออฟไลน์",
|
|
'settings.offline.storage.tripOff': "ไม่ได้เก็บไว้",
|
|
'settings.offline.storage.tripFinished': "เสร็จแล้ว เก็บไว้เฉพาะเมื่อคุณเปิดเครื่องเท่านั้น",
|
|
'settings.offline.notice.stored': "จัดเก็บ {count} ทริปไว้ในอุปกรณ์นี้",
|
|
'settings.offline.notice.nothing': "ไม่มีอะไรจะเก็บ เปิดการเดินทางที่คุณต้องการเก็บไว้",
|
|
'settings.offline.notice.busy': "การซิงค์กำลังทำงานอยู่ โปรดลองอีกครั้งในอีกสักครู่",
|
|
'settings.offline.notice.offline': "ไม่มีการเชื่อมต่อ เชื่อมต่อเพื่อจัดเก็บการเดินทางเพื่อการใช้งานแบบออฟไลน์",
|
|
'settings.offline.notice.signedOut': "เซสชั่นของคุณสิ้นสุดลงแล้ว ลงชื่อเข้าใช้อีกครั้งเพื่อซิงค์",
|
|
'settings.offline.notice.failed': "การดาวน์โหลดไม่เสร็จสิ้น ตรวจสอบการเชื่อมต่อของคุณแล้วลองอีกครั้ง",
|
|
'settings.offline.notice.loadFailed': "ไม่สามารถอ่านที่เก็บข้อมูลออฟไลน์ของอุปกรณ์นี้ได้ การล้างแคชมักจะช่วยแก้ไขได้",
|
|
'settings.offline.clear': "ล้างแคช",
|
|
'settings.offline.clearConfirm': "ล้างข้อมูลการเดินทางแบบออฟไลน์ทั้งหมดไหม คุณสามารถซิงค์ใหม่ได้ตลอดเวลาขณะออนไลน์",
|
|
'settings.offline.stats.trips': "ทริปที่แคชไว้",
|
|
'settings.offline.stats.pending': "รอดำเนินการเปลี่ยนแปลง",
|
|
'settings.offline.stats.failed': "การเปลี่ยนแปลงล้มเหลว",
|
|
'settings.offline.stats.conflicts': "ข้อขัดแย้ง",
|
|
'settings.offline.empty': "ยังไม่มีแคชการเดินทาง เชื่อมต่ออินเทอร์เน็ตเพื่อซิงค์",
|
|
'settings.offline.loading': "กำลังโหลด...",
|
|
'settings.offline.conflicts.title': "ข้อขัดแย้งในการซิงค์",
|
|
'settings.offline.conflicts.hint':
|
|
"การเปลี่ยนแปลงที่คุณทำขัดแย้งแบบออฟไลน์กับการเปลี่ยนแปลงที่ใหม่กว่าบนเซิร์ฟเวอร์ เลือกเวอร์ชันที่จะเก็บไว้",
|
|
'settings.offline.conflicts.keepMine': "เก็บของฉันไว้",
|
|
'settings.offline.conflicts.keepServer': "เก็บไว้ของพวกเขา",
|
|
'settings.offline.conflicts.mine': "รุ่นของคุณ",
|
|
'settings.offline.conflicts.server': "เวอร์ชันเซิร์ฟเวอร์",
|
|
'settings.offline.conflicts.item': "เปลี่ยนเป็น “{name}”",
|
|
'settings.offline.conflicts.strategyTitle': "เมื่อมีความขัดแย้งเกิดขึ้น",
|
|
'settings.offline.conflicts.strategy.ask': "ถามผมทุกครั้ง.",
|
|
'settings.offline.conflicts.strategy.mine': "คงเวอร์ชันของฉันไว้เสมอ",
|
|
'settings.offline.conflicts.strategy.server': "คงเวอร์ชันเซิร์ฟเวอร์ไว้เสมอ",
|
|
'settings.offline.banner.offline': "ออฟไลน์",
|
|
'settings.offline.banner.forced': "โหมดออฟไลน์",
|
|
'settings.offline.banner.queued': "ออฟไลน์ · {count} อยู่ในคิว",
|
|
'settings.offline.banner.syncing': "กำลังซิงค์ {count}...",
|
|
'settings.offline.banner.failed': "ไม่สามารถซิงค์: {count}",
|
|
'settings.offline.banner.conflicts': "ข้อขัดแย้ง: {count}",
|
|
'settings.alwaysShowRoutes': "แสดงเส้นทางการจองเสมอ",
|
|
'settings.alwaysShowRoutesHint':
|
|
"วาดเส้นทางโดยอัตโนมัติสำหรับทุกเที่ยวบิน รถไฟ และการจองอื่นๆ บนแผนที่ โดยไม่จำเป็นต้องเปิดเส้นทางต่อรายการ",
|
|
|
|
// Public API keys (Settings -> Integrations)
|
|
'settings.apiKeys.title': "คีย์ API",
|
|
'settings.apiKeys.description': "คีย์สำหรับ API สาธารณะ เพื่อให้ซอฟต์แวร์อื่นสามารถอ่านการเดินทางของคุณได้ อ่านอย่างเดียว: คีย์ไม่สามารถเปลี่ยนแปลงหรือลบสิ่งใดๆ ได้",
|
|
'settings.apiKeys.create': "สร้างคีย์",
|
|
'settings.apiKeys.empty': "ยังไม่มีกุญแจ.. สร้างซอฟต์แวร์หนึ่งเพื่อเชื่อมต่อกับซอฟต์แวร์อื่น",
|
|
'settings.apiKeys.createdAt': "สร้างขึ้น",
|
|
'settings.apiKeys.usedAt': "ใช้ครั้งสุดท้าย",
|
|
'settings.apiKeys.deleteTitle': "ลบคีย์",
|
|
'settings.apiKeys.deleteMessage': "สิ่งใดก็ตามที่ใช้คีย์นี้จะหยุดทำงานทันที สิ่งนี้ไม่สามารถยกเลิกได้",
|
|
'settings.apiKeys.deleted': "ลบคีย์แล้ว",
|
|
'settings.apiKeys.deleteFailed': "ไม่สามารถลบคีย์ได้",
|
|
'settings.apiKeys.createFailed': "ไม่สามารถสร้างคีย์ได้",
|
|
'settings.apiKeys.copy': "คัดลอก",
|
|
'settings.apiKeys.docsHint': "ส่งคีย์เป็น \"Authorization: Bearer ...\" หรือ \"X-API-Key: ...\" ไปที่ /api/v1",
|
|
'settings.apiKeys.modal.createTitle': "สร้างคีย์ API",
|
|
'settings.apiKeys.modal.name': "ชื่อ",
|
|
'settings.apiKeys.modal.namePlaceholder': "เช่น ดาวาริช",
|
|
'settings.apiKeys.modal.nameHint': "สำหรับคุณเท่านั้น ดังนั้นคุณจะจำกุญแจได้ในภายหลัง",
|
|
'settings.apiKeys.modal.creating': "กำลังสร้าง...",
|
|
'settings.apiKeys.modal.create': "สร้าง",
|
|
'settings.apiKeys.modal.createdTitle': "สร้างคีย์ API แล้ว",
|
|
'settings.apiKeys.modal.createdWarning': "คัดลอกคีย์ทันที จะแสดงเพียงครั้งเดียวและไม่สามารถเรียกคืนได้ในภายหลัง",
|
|
'settings.apiKeys.modal.done': "เสร็จแล้ว",
|
|
'settings.routingBase': "เครื่องมือคำนวณเส้นทางของคุณเอง",
|
|
'settings.routingBaseHint': "อินสแตนซ์ OSRM ของคุณเอง หากเว้นว่างจะใช้เซิร์ฟเวอร์สาธารณะ ซึ่งรองรับราวหนึ่งคำขอต่อวินาที — เพียงพอสำหรับหนึ่งวันแต่ค่อนข้างจำกัดสำหรับโรดทริป มีผลหลังรีสตาร์ตเซิร์ฟเวอร์",
|
|
'settings.valhallaBase': "อินสแตนซ์ Valhalla ของคุณเอง",
|
|
'settings.valhallaBaseHint': "โดยค่าเริ่มต้น TREK ใช้ FOSSGIS Valhalla สาธารณะเพื่อหลีกเลี่ยงถนนเก็บค่าผ่านทาง ทางด่วน และเรือเฟอร์รี่ ป้อน URL Valhalla ของคุณเองที่นี่เพื่อใช้แทน หากตั้งค่าเฉพาะอินสแตนซ์เส้นทางแบบกำหนดเอง จะไม่ใช้ Valhalla สาธารณะ หลังป้อน URL แบบกำหนดเอง ให้รีสตาร์ตเซิร์ฟเวอร์และโหลดหน้านี้ใหม่",
|
|
'settings.notifyCollectionInvite': "คำเชิญเข้าคอลเลกชัน",
|
|
'settings.notifySynologySessionCleared': "ล้างเซสชัน Synology แล้ว",
|
|
'settings.notifyPluginNotification': "การแจ้งเตือนจากปลั๊กอิน",
|
|
'settings.notifyReplicaFailure': "การทำสำเนาที่เก็บข้อมูลล้มเหลว",
|
|
'settings.apiScopes.title': "สิ่งที่คีย์นี้อ่านได้",
|
|
'settings.apiScopes.hint': "เปิดทุกอย่างไว้สำหรับคีย์ที่ควรเห็นข้อมูลทั้งหมด สิ่งที่คุณปิดจะถูกปฏิเสธสำหรับคีย์นี้ ไม่ใช่เพียงไม่แสดงในคำตอบ",
|
|
'settings.apiScopes.all': "ทุกอย่าง",
|
|
'settings.apiScopes.noneSelected': "เลือกอย่างน้อยหนึ่งส่วน มิฉะนั้นคีย์จะอ่านข้อมูลไม่ได้เลย",
|
|
'settings.apiScopes.limited': "{count} จาก {total}",
|
|
'settings.apiScopes.trips': "ทริป",
|
|
'settings.apiScopes.days': "วัน",
|
|
'settings.apiScopes.places': "สถานที่",
|
|
'settings.apiScopes.notes': "บันทึกรายวัน",
|
|
'settings.apiScopes.reservations': "การจอง",
|
|
'settings.apiScopes.accommodations': "ที่พัก",
|
|
'settings.apiScopes.travellers': "ผู้ร่วมทริป",
|
|
'settings.apiScopes.bucket-list': "รายการสถานที่อยากไป",
|
|
'settings.apiScopes.stats': "ยอดรวม",
|
|
'settings.apiKeys.endpoint': "ปลายทาง",
|
|
'settings.apiKeys.neverUsed': "ไม่เคยใช้",
|
|
'settings.apiKeys.loadFailed': "ไม่สามารถโหลดคีย์ของคุณได้ โหลดหน้านี้ใหม่เพื่อลองอีกครั้ง",
|
|
'settings.apiKeys.limitReached': "คุณมีคีย์ {max} อัน ซึ่งเป็นจำนวนสูงสุดที่บัญชีหนึ่งมีได้ ลบคีย์ที่ไม่ได้ใช้ออกเพื่อสร้างคีย์ใหม่",
|
|
'settings.apiKeys.copyFailed': "ไม่สามารถคัดลอกได้ เลือกข้อความและคัดลอกด้วยตนเอง",
|
|
};
|
|
|
|
export default settings;
|