Files
TREK/shared/src/i18n/th/packing.ts
T
Maurice 5c312a8497 feat(packing): print, PDF and Markdown/CSV export of packing lists
The packing list bar gets an export menu next to the import button, both
now icon only. The menu prints the open view as a TREK styled page (trip,
dates, packed count, one card per category, bags), which the browser can
also save as a PDF, and downloads it as a Markdown checklist or as a CSV
in the exact format the import reads, bags included, so a list works as a
personal template without admin rights.

The import now also reads Markdown checklists: headings become
categories, "- [x]" marks an item packed, a "3x" prefix sets the
quantity and a "(200 g)" suffix the weight. The phone action sheet
offers the same exports through the shared usePackingExport hook.

The help center gets an export guide with new pictures, the import guide
and the wiki page describe the Markdown format, in all 27 languages.

Addresses discussions #1420 and #875.
2026-09-25 11:31:23 +02:00

96 lines
7.7 KiB
TypeScript
Raw Blame History

This file contains invisible Unicode characters
This file contains invisible Unicode characters that are indistinguishable to humans but may be processed differently by a computer. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
import type { TranslationStrings } from '../types';
const packing: TranslationStrings = {
'packing.actions': "การดำเนินการ",
'packing.editDone': "เสร็จแล้ว",
'packing.personalEmptyHint': "รายการส่วนตัวของคุณว่างเปล่า — คัดลอกรายการที่ใช้ร่วมกันหรือเพิ่มรายการของคุณเอง",
'packing.assignMembers': "มอบหมายให้สมาชิก",
'packing.categoryOptions': "ตัวเลือกรายการ",
'packing.editItem': "แก้ไขรายการ",
'packing.itemName': "ชื่อ",
'packing.itemQuantity': "ปริมาณ",
'packing.itemWeight': "น้ำหนัก (กรัม)",
'packing.title': "รายการจัดกระเป๋า",
'packing.empty': "รายการจัดกระเป๋าว่างเปล่า",
'packing.import': "นำเข้า",
'packing.importTitle': "นำเข้ารายการจัดกระเป๋า",
'packing.importHint':
"หนึ่งรายการต่อบรรทัด รูปแบบ: หมวดหมู่ ชื่อ น้ำหนักเป็นกรัม (ไม่จำเป็น) กระเป๋า (ไม่จำเป็น) เลือก/ไม่เลือก (ไม่จำเป็น)",
'packing.importPlaceholder':
"สุขอนามัย, แปรงสีฟัน\nเสื้อผ้า เสื้อยืด 200\nเอกสาร, หนังสือเดินทาง, , กระเป๋าถือขึ้นเครื่อง\nเครื่องใช้ไฟฟ้า ที่ชาร์จ 50 กระเป๋าเดินทาง ตรวจเช็คแล้ว",
'packing.importCsv': "โหลด CSV/TXT/MD",
'packing.export': 'ส่งออก',
'packing.exportPrint': 'พิมพ์หรือบันทึกเป็น PDF',
'packing.exportMarkdown': 'รายการตรวจสอบ Markdown (.md)',
'packing.exportCsv': 'CSV สำหรับนำเข้า (.csv)',
'packing.printItems': 'รายการ',
'packing.printPacked': 'จัดแล้ว',
'packing.importHintMarkdown':
'ใช้รายการ Markdown ได้เช่นกัน: หัวข้อจะเป็นหมวดหมู่ "- [ ]" และ "- [x]" จะกลายเป็นรายการ และ "3x" หน้าชื่อจะกำหนดจำนวน',
'packing.importAction': "นำเข้า {count}",
'packing.importSuccess': "{count} รายการที่นำเข้า",
'packing.importError': "การนำเข้าล้มเหลว",
'packing.importEmpty': "ไม่มีรายการที่จะนำเข้า",
'packing.progress': "จัดแล้ว {packed} จาก {total} รายการ ({percent}%)",
'packing.clearChecked': "ลบ {count} ที่เลือกไว้",
'packing.clearCheckedShort': "ลบ {count}",
'packing.allPacked': "จัดครบแล้ว!",
'packing.addPlaceholder': "เพิ่มรายการใหม่...",
'packing.categoryPlaceholder': "รายการ...",
'packing.filterAll': "ทั้งหมด",
'packing.filterOpen': "ยังไม่ได้จัด",
'packing.filterDone': "เสร็จแล้ว",
'packing.emptyTitle': "รายการจัดกระเป๋าว่างเปล่า",
'packing.emptyFiltered': "ไม่มีรายการที่ตรงกับตัวกรองนี้",
'packing.menuRename': "เปลี่ยนชื่อ",
'packing.menuCheckAll': "ทำเครื่องหมายทั้งหมดว่าจัดแล้ว",
'packing.menuUncheckAll': "ยกเลิกการเลือกทั้งหมด",
'packing.menuDeleteCat': "ลบรายการ",
'packing.noMembers': "ไม่มีสมาชิกทริป",
'packing.addItem': "เพิ่มรายการ",
'packing.addItemPlaceholder': "ชื่อรายการ...",
'packing.addCategory': "เพิ่มหมวดหมู่",
'packing.newCategoryPlaceholder': "ชื่อหมวดหมู่ (เช่น เสื้อผ้า)",
'packing.applyTemplate': "ใช้เทมเพลต",
'packing.template': "แม่แบบ",
'packing.templateApplied': "เพิ่มรายการจากเทมเพลตแล้ว {count} รายการ",
'packing.templateError': "ไม่สามารถใช้เทมเพลตได้",
'packing.saveAsTemplate': "บันทึกเป็นเทมเพลต",
'packing.templateName': "ชื่อเทมเพลต",
'packing.templateSaved': "บันทึกรายการจัดกระเป๋าเป็นเทมเพลตแล้ว",
'packing.bags': "กระเป๋า",
'packing.noBag': "ยังไม่ได้มอบหมาย",
'packing.totalWeight': "น้ำหนักรวม",
'packing.quantity': "จำนวน",
'packing.bagName': "ชื่อกระเป๋า...",
'packing.addBag': "เพิ่มกระเป๋า",
'packing.changeCategory': "ย้ายไปที่รายการ",
'packing.makePrivate': "ทำให้เป็นส่วนตัว",
'packing.makePublic': "ทำให้แชร์ได้",
'packing.privateHint': "ส่วนตัว — ปรากฏให้คุณเท่านั้น",
'packing.viewCommon': "แชร์แล้ว",
'packing.viewPersonal': "รายการของฉัน",
'packing.share': "การแชร์",
'packing.tierCommonHint': "อยู่ในรายการส่วนกลางที่ทุกคนมองเห็นได้",
'packing.tierPersonal': "ส่วนตัว",
'packing.tierPersonalHint': "ส่วนตัว — มีเพียงคุณเท่านั้นที่สามารถเห็นได้",
'packing.tierShared': "แชร์กับ...",
'packing.noOneToShare': "ทริปนี้ยังไม่มีใครเลย",
'packing.takenCareOf': "โดย {name}",
'packing.sharedWithCount': "แชร์กับ {count}",
'packing.broughtBy': "{name} จะนำมา",
'packing.alsoBring': "ฉันก็สามารถนำสิ่งนั้นมาได้เช่นกัน",
'packing.alsoBringingStop': "ฉันไม่เอามันมา",
'packing.cloneToMine': "คัดลอกไปยังรายการของฉัน",
'packing.confirm.clearChecked': "คุณแน่ใจหรือไม่ว่าต้องการลบรายการที่เลือก {count} ออก",
'packing.confirm.deleteCat': "คุณแน่ใจหรือไม่ว่าต้องการลบรายการ \"{name}\" ที่มี {count} รายการ",
'packing.defaultCategory': "อื่นๆ",
'packing.toast.saveError': "บันทึกไม่สำเร็จ",
'packing.toast.deleteError': "ลบไม่สำเร็จ",
'packing.toast.renameError': "เปลี่ยนชื่อไม่สำเร็จ",
'packing.toast.addError': "เพิ่มไม่สำเร็จ",
'packing.bagLimit': "จำกัดน้ำหนัก",
'packing.setBagLimit': "กำหนดขีดจำกัด",
};
export default packing;