mirror of
https://github.com/mauriceboe/TREK.git
synced 2026-10-18 21:16:47 +00:00
4e478722c3
Rebuilds the /collections page from the functional placeholder into the dashboard's glass visual language (light + dark): - A colour-washed hero per list: eyebrow + member avatars, big title, and stat chips (All / Idea / Want / Visited) that double as the status filter. - A sticky glass list rail (owned + shared + invites) with a mobile drawer. - Gradient/photo cover place cards modelled on the trip cards, via a new rectangular PlaceCover (photoService-backed, gradient fallback) + a shared gradients util. List and map views restyled to match. - Status pill rendered as a role=button span so it survives the .trek-dash button reset and can nest inside the card; the share member-count badge is now owner-only. - New hero eyebrow strings across all locales.
113 lines
5.9 KiB
TypeScript
113 lines
5.9 KiB
TypeScript
import type { TranslationStrings } from '../types';
|
|
|
|
const collection: TranslationStrings = {
|
|
'collections.hero.mine': 'Bộ sưu tập của tôi',
|
|
'collections.hero.shared': 'Được chia sẻ với bạn',
|
|
'collections.hero.all': 'Thư viện của bạn',
|
|
'collections.title': 'Bộ sưu tập',
|
|
'collections.subtitle': 'Những địa điểm bạn đã lưu, sắp xếp thành danh sách',
|
|
|
|
'collections.newList': 'Danh sách mới',
|
|
'collections.create': 'Tạo',
|
|
'collections.editList': 'Đổi tên',
|
|
'collections.listMenu': 'Tùy chọn danh sách',
|
|
'collections.deleteList': 'Xóa danh sách',
|
|
'collections.deleteListConfirm': 'Thao tác này xóa vĩnh viễn danh sách và tất cả địa điểm đã lưu trong đó. Không thể hoàn tác.',
|
|
'collections.listName': 'Tên danh sách',
|
|
'collections.listNamePlaceholder': 'vd. Tokyo 2025',
|
|
'collections.listColor': 'Màu',
|
|
'collections.allSaved': 'Tất cả đã lưu',
|
|
'collections.shared': 'Được chia sẻ',
|
|
|
|
'collections.empty.title': 'Chưa có địa điểm nào',
|
|
'collections.empty.text': 'Lưu địa điểm từ bất kỳ chuyến đi nào để xây dựng danh sách này.',
|
|
'collections.empty.noMatchTitle': 'Không có kết quả',
|
|
'collections.empty.noMatchText': 'Không có địa điểm đã lưu nào khớp với bộ lọc hoặc tìm kiếm của bạn.',
|
|
'collections.empty.firstTitle': 'Bắt đầu bộ sưu tập đầu tiên của bạn',
|
|
'collections.empty.firstText': 'Tạo một danh sách để lưu những địa điểm bạn muốn ghi nhớ qua các chuyến đi.',
|
|
|
|
'collections.view.grid': 'Lưới',
|
|
'collections.view.list': 'Danh sách',
|
|
'collections.view.map': 'Bản đồ',
|
|
|
|
'collections.status.idea': 'Ý tưởng',
|
|
'collections.status.want': 'Muốn đến',
|
|
'collections.status.visited': 'Đã đến',
|
|
'collections.status.filterAll': 'Tất cả',
|
|
'collections.status.cycleHint': 'chạm để thay đổi',
|
|
|
|
'collections.copyToTrip': 'Sao chép vào chuyến đi',
|
|
'collections.copyToTripTitle': 'Sao chép vào chuyến đi',
|
|
'collections.copyN': 'Sao chép {count} vào chuyến đi',
|
|
'collections.copyToTripSearch': 'Tìm chuyến đi',
|
|
'collections.copyToTripConfirm': 'Sao chép',
|
|
'collections.noTrips': 'Chưa có chuyến đi nào',
|
|
'collections.alreadyInTrip': 'Đã có trong chuyến đi này',
|
|
'collections.copied': 'Đã sao chép vào chuyến đi',
|
|
'collections.copiedCount': 'Đã sao chép {count} địa điểm',
|
|
'collections.skippedDuplicates': 'Đã bỏ qua {count} mục trùng lặp',
|
|
'collections.copyNothing': 'Không có gì để sao chép',
|
|
'collections.removeFromList': 'Xóa khỏi danh sách',
|
|
'collections.removeFromListConfirm': 'Xóa địa điểm này khỏi danh sách?',
|
|
'collections.removeFromCollection': 'Xóa khỏi Bộ sưu tập',
|
|
|
|
'collections.saved': 'Đã lưu vào {name}',
|
|
'collections.savedUndo': 'Hoàn tác',
|
|
'collections.viewInCollection': 'Xem',
|
|
'collections.duplicateWarning': 'Địa điểm này đã có trong danh sách',
|
|
|
|
'collections.search': 'Tìm địa điểm',
|
|
'collections.selectMode': 'Chọn',
|
|
'collections.selectedCount': 'Đã chọn {count}',
|
|
|
|
'collections.pickList': 'Lưu vào danh sách',
|
|
'collections.pickListPlaceholder': 'Chọn một danh sách',
|
|
'collections.addedToList': 'Đã thêm vào {name}',
|
|
'collections.removedFromList': 'Đã xóa khỏi {name}',
|
|
'collections.inLists': 'Trong danh sách của bạn',
|
|
'collections.otherLists': 'Thêm vào danh sách',
|
|
'collections.noListsYet': 'Tạo một danh sách trước để lưu địa điểm.',
|
|
'collections.removedFromAll': 'Đã xóa khỏi bộ sưu tập',
|
|
'collections.picker.title': 'Địa điểm đã lưu',
|
|
'collections.picker.search': 'Tìm trong địa điểm đã lưu của bạn',
|
|
'collections.picker.empty': 'Không có địa điểm đã lưu nào để thêm',
|
|
'collections.picker.hint': 'Chọn một địa điểm từ bộ sưu tập của bạn',
|
|
'collections.picker.use': 'Dùng',
|
|
|
|
'collections.share.title': 'Chia sẻ danh sách',
|
|
'collections.share.titleNamed': 'Chia sẻ “{name}”',
|
|
'collections.share.button': 'Chia sẻ',
|
|
'collections.share.members': 'Thành viên',
|
|
'collections.share.owner': 'Chủ sở hữu',
|
|
'collections.share.you': 'bạn',
|
|
'collections.share.pending': 'lời mời đang chờ',
|
|
'collections.share.accepted': 'đã chấp nhận',
|
|
'collections.share.invite': 'Mời ai đó',
|
|
'collections.share.inviteUser': 'Chọn người dùng',
|
|
'collections.share.sendInvite': 'Gửi lời mời',
|
|
'collections.share.inviteHint': 'Người được mời có thể xem và chỉnh sửa danh sách này.',
|
|
'collections.share.noUsers': 'Không có người dùng nào để mời.',
|
|
'collections.share.memberHint': 'Chỉ chủ sở hữu danh sách mới có thể mời hoặc xóa người.',
|
|
'collections.share.cancel': 'Hủy',
|
|
'collections.share.leave': 'Rời khỏi danh sách',
|
|
'collections.share.leaveConfirm': 'Rời khỏi danh sách được chia sẻ này? Bạn sẽ mất quyền truy cập cho đến khi được mời lại.',
|
|
'collections.share.left': 'Bạn đã rời khỏi danh sách',
|
|
'collections.share.remove': 'Xóa',
|
|
|
|
'collections.invites.title': 'Lời mời',
|
|
'collections.invites.from': 'từ',
|
|
'collections.invites.accept': 'Chấp nhận',
|
|
'collections.invites.decline': 'Từ chối',
|
|
'collections.invites.received': 'Bạn có một lời mời danh sách mới',
|
|
'collections.invite.sent': 'Đã gửi lời mời',
|
|
'collections.invite.error': 'Không thể gửi lời mời',
|
|
'collections.invite.accepted': 'Đã chấp nhận lời mời',
|
|
'collections.invite.declined': 'Đã từ chối lời mời',
|
|
|
|
'collections.widget.title': 'Bộ sưu tập',
|
|
'collections.widget.empty': 'Chưa có địa điểm đã lưu',
|
|
'collections.widget.savedCount': 'Đã lưu {count}',
|
|
};
|
|
|
|
export default collection;
|