@opencode-ai/ui 0.0.0-next-17078 → 0.0.0-next-17079
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/context/i18n.d.ts +10 -1
- package/dist/context/marked-parser.d.ts +2 -0
- package/dist/context/marked-theme-register.d.ts +1 -0
- package/dist/context/marked-theme.d.ts +2 -0
- package/dist/context/marked.d.ts +2 -9
- package/dist/i18n/am.d.ts +1 -0
- package/dist/i18n/ar.d.ts +38 -0
- package/dist/i18n/az.d.ts +1 -0
- package/dist/i18n/bg.d.ts +193 -0
- package/dist/i18n/bn.d.ts +1 -0
- package/dist/i18n/br.d.ts +26 -0
- package/dist/i18n/bs.d.ts +26 -0
- package/dist/i18n/ca.d.ts +1 -0
- package/dist/i18n/cs.d.ts +1 -0
- package/dist/i18n/da.d.ts +22 -0
- package/dist/i18n/de.d.ts +22 -0
- package/dist/i18n/dv.d.ts +1 -0
- package/dist/i18n/dz.d.ts +1 -0
- package/dist/i18n/el.d.ts +1 -0
- package/dist/i18n/es.d.ts +26 -0
- package/dist/i18n/et.d.ts +1 -0
- package/dist/i18n/fa.d.ts +1 -0
- package/dist/i18n/fi.d.ts +1 -0
- package/dist/i18n/fo.d.ts +1 -0
- package/dist/i18n/fr.d.ts +26 -0
- package/dist/i18n/hi.d.ts +1 -0
- package/dist/i18n/hr.d.ts +1 -0
- package/dist/i18n/hu.d.ts +1 -0
- package/dist/i18n/hy.d.ts +1 -0
- package/dist/i18n/id.d.ts +1 -0
- package/dist/i18n/is.d.ts +1 -0
- package/dist/i18n/it.d.ts +1 -0
- package/dist/i18n/ja.d.ts +22 -0
- package/dist/i18n/ka.d.ts +1 -0
- package/dist/i18n/km.d.ts +193 -0
- package/dist/i18n/ko.d.ts +22 -0
- package/dist/i18n/lo.d.ts +193 -0
- package/dist/i18n/lt.d.ts +1 -0
- package/dist/i18n/lv.d.ts +1 -0
- package/dist/i18n/mk.d.ts +193 -0
- package/dist/i18n/mn.d.ts +193 -0
- package/dist/i18n/ms.d.ts +1 -0
- package/dist/i18n/my.d.ts +193 -0
- package/dist/i18n/ne.d.ts +1 -0
- package/dist/i18n/nl.d.ts +1 -0
- package/dist/i18n/pa.d.ts +1 -0
- package/dist/i18n/pl.d.ts +30 -0
- package/dist/i18n/ro.d.ts +1 -0
- package/dist/i18n/ru.d.ts +30 -0
- package/dist/i18n/si.d.ts +1 -0
- package/dist/i18n/sk.d.ts +1 -0
- package/dist/i18n/sl.d.ts +1 -0
- package/dist/i18n/sq.d.ts +1 -0
- package/dist/i18n/sr.d.ts +197 -0
- package/dist/i18n/sv.d.ts +1 -0
- package/dist/i18n/tg.d.ts +193 -0
- package/dist/i18n/th.d.ts +22 -0
- package/dist/i18n/tk.d.ts +1 -0
- package/dist/i18n/tr.d.ts +22 -0
- package/dist/i18n/ur.d.ts +1 -0
- package/dist/i18n/uz.d.ts +1 -0
- package/dist/i18n/vi.d.ts +1 -0
- package/dist/i18n/zh.d.ts +22 -0
- package/dist/i18n/zht.d.ts +22 -0
- package/dist/v2/components/toast-v2.d.ts +19 -10
- package/package.json +3 -3
- package/src/components/diff-changes.css +2 -0
- package/src/components/dropdown-menu.css +2 -2
- package/src/components/icon.css +5 -0
- package/src/components/icon.tsx +12 -1
- package/src/components/provider-icons/sprite.svg +2 -27
- package/src/components/resize-handle.css +14 -2
- package/src/components/resize-handle.tsx +5 -1
- package/src/components/scroll-view.css +1 -1
- package/src/components/select.css +5 -3
- package/src/components/switch.css +4 -0
- package/src/components/tabs.css +54 -26
- package/src/components/tabs.tsx +1 -0
- package/src/components/text-field.css +2 -2
- package/src/components/toast.css +1 -1
- package/src/context/i18n.tsx +38 -2
- package/src/context/marked-parser.tsx +68 -0
- package/src/context/marked-theme-register.tsx +10 -0
- package/src/context/marked-theme.tsx +372 -0
- package/src/context/marked.tsx +20 -562
- package/src/i18n/am.ts +194 -0
- package/src/i18n/ar.ts +62 -22
- package/src/i18n/az.ts +195 -0
- package/src/i18n/bg.ts +195 -0
- package/src/i18n/bn.ts +197 -0
- package/src/i18n/br.ts +34 -6
- package/src/i18n/bs.ts +51 -23
- package/src/i18n/ca.ts +199 -0
- package/src/i18n/cs.ts +203 -0
- package/src/i18n/da.ts +36 -12
- package/src/i18n/de.ts +58 -36
- package/src/i18n/dv.ts +196 -0
- package/src/i18n/dz.ts +197 -0
- package/src/i18n/el.ts +195 -0
- package/src/i18n/en.ts +24 -0
- package/src/i18n/es.ts +45 -17
- package/src/i18n/et.ts +195 -0
- package/src/i18n/fa.ts +195 -0
- package/src/i18n/fi.ts +195 -0
- package/src/i18n/fo.ts +195 -0
- package/src/i18n/fr.ts +51 -21
- package/src/i18n/hi.ts +197 -0
- package/src/i18n/hr.ts +200 -0
- package/src/i18n/hu.ts +197 -0
- package/src/i18n/hy.ts +195 -0
- package/src/i18n/id.ts +217 -0
- package/src/i18n/is.ts +195 -0
- package/src/i18n/it.ts +200 -0
- package/src/i18n/ja.ts +29 -5
- package/src/i18n/ka.ts +195 -0
- package/src/i18n/km.ts +196 -0
- package/src/i18n/ko.ts +36 -12
- package/src/i18n/lo.ts +195 -0
- package/src/i18n/lt.ts +203 -0
- package/src/i18n/lv.ts +199 -0
- package/src/i18n/mk.ts +195 -0
- package/src/i18n/mn.ts +195 -0
- package/src/i18n/ms.ts +195 -0
- package/src/i18n/my.ts +196 -0
- package/src/i18n/ne.ts +197 -0
- package/src/i18n/nl.ts +195 -0
- package/src/i18n/no.ts +47 -23
- package/src/i18n/pa.ts +196 -0
- package/src/i18n/pl.ts +57 -24
- package/src/i18n/ro.ts +199 -0
- package/src/i18n/ru.ts +55 -23
- package/src/i18n/si.ts +195 -0
- package/src/i18n/sk.ts +203 -0
- package/src/i18n/sl.ts +204 -0
- package/src/i18n/sq.ts +195 -0
- package/src/i18n/sr.ts +200 -0
- package/src/i18n/sv.ts +195 -0
- package/src/i18n/tg.ts +195 -0
- package/src/i18n/th.ts +44 -21
- package/src/i18n/tk.ts +195 -0
- package/src/i18n/tr.ts +49 -25
- package/src/i18n/uk.ts +47 -15
- package/src/i18n/ur.ts +196 -0
- package/src/i18n/uz.ts +198 -0
- package/src/i18n/vi.ts +195 -0
- package/src/i18n/zh.ts +52 -29
- package/src/i18n/zht.ts +45 -22
- package/src/theme/themes/oc-2.json +4 -2
- package/src/v2/components/button-v2.css +2 -2
- package/src/v2/components/dialog-v2.css +2 -2
- package/src/v2/components/dialog-v2.tsx +3 -1
- package/src/v2/components/diff-changes-v2.css +2 -0
- package/src/v2/components/file-tree-v2.css +6 -2
- package/src/v2/components/inline-input-v2.tsx +3 -1
- package/src/v2/components/line-comment-v2.css +1 -1
- package/src/v2/components/line-comment-v2.tsx +6 -4
- package/src/v2/components/select-v2.css +16 -5
- package/src/v2/components/switch-v2.css +8 -0
- package/src/v2/components/tabs-v2.css +4 -6
- package/src/v2/components/tabs-v2.tsx +4 -2
- package/src/v2/components/text-input-v2.css +7 -5
- package/src/v2/components/text-input-v2.tsx +7 -1
- package/src/v2/components/toast-v2.css +132 -122
- package/src/v2/components/toast-v2.tsx +208 -73
- package/dist/context/marked-code-span.d.ts +0 -10
- package/src/context/marked-code-span.ts +0 -17
package/src/i18n/vi.ts
ADDED
|
@@ -0,0 +1,195 @@
|
|
|
1
|
+
export const dict: Record<string, string> = {
|
|
2
|
+
"ui.sessionReview.title": "Thay đổi phiên",
|
|
3
|
+
"ui.sessionReview.title.git": "Thay đổi Git",
|
|
4
|
+
"ui.sessionReview.title.branch": "Thay đổi nhánh",
|
|
5
|
+
"ui.sessionReview.title.lastTurn": "Thay đổi ở lượt cuối",
|
|
6
|
+
"ui.sessionReview.diffStyle.unified": "Hợp nhất",
|
|
7
|
+
"ui.sessionReview.diffStyle.split": "Tách ra",
|
|
8
|
+
"ui.sessionReview.expandAll": "Mở rộng tất cả",
|
|
9
|
+
"ui.sessionReview.collapseAll": "Thu gọn tất cả",
|
|
10
|
+
"ui.sessionReview.change.added": "Đã thêm",
|
|
11
|
+
"ui.sessionReview.change.removed": "Đã xóa",
|
|
12
|
+
"ui.sessionReview.change.modified": "Đã sửa đổi",
|
|
13
|
+
"ui.sessionReview.image.loading": "Đang tải...",
|
|
14
|
+
"ui.sessionReview.image.placeholder": "Hình ảnh",
|
|
15
|
+
"ui.sessionReview.largeDiff.title": "Diff quá lớn để hiển thị",
|
|
16
|
+
"ui.sessionReview.largeDiff.meta": "Giới hạn: {{limit}} dòng thay đổi. Hiện tại: {{current}} dòng thay đổi.",
|
|
17
|
+
"ui.sessionReview.largeDiff.renderAnyway": "Vẫn hiển thị",
|
|
18
|
+
"ui.sessionReviewV2.expandMode": "Mở rộng hoặc thu gọn diff",
|
|
19
|
+
"ui.sessionReviewV2.filterFiles": "Lọc tệp",
|
|
20
|
+
"ui.sessionReviewV2.toggleSidebar": "Bật/tắt cây tệp",
|
|
21
|
+
"ui.sessionReviewV2.showAllLines": "Hiển thị tất cả các dòng",
|
|
22
|
+
"ui.sessionReviewV2.hideNonDiffLines": "Ẩn các dòng không thay đổi",
|
|
23
|
+
"ui.sessionReviewV2.unifiedDiff": "Diff hợp nhất",
|
|
24
|
+
"ui.sessionReviewV2.splitDiff": "Diff chia đôi",
|
|
25
|
+
"ui.sessionReviewV2.previousFile": "Tệp trước",
|
|
26
|
+
"ui.sessionReviewV2.nextFile": "Tệp tiếp theo",
|
|
27
|
+
"ui.sessionReviewV2.diffView": "Chế độ xem diff",
|
|
28
|
+
"ui.sessionReviewV2.empty.noGit.title": "Không có thay đổi nào được theo dõi",
|
|
29
|
+
"ui.sessionReviewV2.empty.noGit.description": "Theo dõi, xem xét và hoàn tác các thay đổi trong dự án này",
|
|
30
|
+
"ui.sessionReviewV2.empty.noGit.action": "Tạo kho lưu trữ Git",
|
|
31
|
+
"ui.sessionReviewV2.empty.noGit.actionLoading": "Đang tạo kho lưu trữ Git...",
|
|
32
|
+
"ui.sessionReviewV2.empty.changes.title": "Chưa có thay đổi tệp nào",
|
|
33
|
+
"ui.sessionReviewV2.empty.changes.description": "Những thay đổi của dự án sẽ xuất hiện ở đây",
|
|
34
|
+
"ui.sessionReview.openFile": "Mở tệp",
|
|
35
|
+
"ui.sessionReview.selection.line": "dòng {{line}}",
|
|
36
|
+
"ui.sessionReview.selection.lines": "dòng {{start}}-{{end}}",
|
|
37
|
+
"ui.fileMedia.kind.image": "hình ảnh",
|
|
38
|
+
"ui.fileMedia.kind.audio": "âm thanh",
|
|
39
|
+
"ui.fileMedia.state.removed": "Đã xóa tệp {{kind}}.",
|
|
40
|
+
"ui.fileMedia.state.loading": "Đang tải {{kind}}...",
|
|
41
|
+
"ui.fileMedia.state.error": "Không thể tải {{kind}}.",
|
|
42
|
+
"ui.fileMedia.state.unavailable": "Không thể xem trước {{kind}}.",
|
|
43
|
+
"ui.fileMedia.binary.title": "Tệp nhị phân",
|
|
44
|
+
"ui.fileMedia.binary.description.path": "{{path}} là nhị phân.",
|
|
45
|
+
"ui.fileMedia.binary.description.default": "Nội dung nhị phân",
|
|
46
|
+
"ui.lineComment.label.prefix": "Bình luận về ",
|
|
47
|
+
"ui.lineComment.label.suffix": "",
|
|
48
|
+
"ui.lineComment.editorLabel.prefix": "Bình luận về ",
|
|
49
|
+
"ui.lineComment.editorLabel.suffix": "",
|
|
50
|
+
"ui.lineComment.placeholder": "Thêm nhận xét",
|
|
51
|
+
"ui.lineComment.contextPlaceholder": "Thêm ngữ cảnh cho thay đổi này",
|
|
52
|
+
"ui.lineComment.submit": "Bình luận",
|
|
53
|
+
"ui.lineComment.cancel": "Hủy",
|
|
54
|
+
"ui.sessionTurn.steps.show": "Hiển thị các bước",
|
|
55
|
+
"ui.sessionTurn.steps.hide": "Ẩn các bước",
|
|
56
|
+
"ui.sessionTurn.summary.response": "Phản hồi",
|
|
57
|
+
"ui.sessionTurn.diff.showMore": "Hiển thị thêm thay đổi ({{count}})",
|
|
58
|
+
"ui.sessionTurn.diffs.changed.one": "{{count}} tệp đã thay đổi",
|
|
59
|
+
"ui.sessionTurn.diffs.changed.other": "{{count}} tệp đã thay đổi",
|
|
60
|
+
"ui.sessionTurn.diffs.showAll": "Hiển thị tất cả",
|
|
61
|
+
"ui.sessionTurn.diffs.showLess": "Hiển thị ít hơn",
|
|
62
|
+
"ui.sessionTurn.diffs.more": "+{{count}} tệp khác",
|
|
63
|
+
"ui.sessionTurn.retry.retrying": "thử lại",
|
|
64
|
+
"ui.sessionTurn.retry.inSeconds": "sau {{seconds}} giây",
|
|
65
|
+
"ui.sessionTurn.retry.attempt": "lần thử #{{attempt}}",
|
|
66
|
+
"ui.sessionTurn.retry.attemptLine": "{{line}} - lần thử #{{attempt}}",
|
|
67
|
+
"ui.sessionTurn.retry.geminiHot": "gemini dạo này đang hot quá",
|
|
68
|
+
"ui.sessionTurn.error.freeUsageExceeded": "Đã vượt quá mức sử dụng miễn phí",
|
|
69
|
+
"ui.sessionTurn.error.addCredits": "Thêm số dư",
|
|
70
|
+
"dialog.usageExceeded.freeTier.title": "Đã đạt đến giới hạn miễn phí",
|
|
71
|
+
"dialog.usageExceeded.freeTier.description":
|
|
72
|
+
"Đăng ký OpenCode Go để có quyền truy cập đáng tin cậy vào các mô hình nguồn mở tốt nhất, bắt đầu từ $5/tháng.",
|
|
73
|
+
"dialog.usageExceeded.freeTier.actionLabel": "Đăng ký",
|
|
74
|
+
"dialog.usageExceeded.accountRateLimit.title": "Đã đạt giới hạn Go",
|
|
75
|
+
"dialog.usageExceeded.accountRateLimit.description":
|
|
76
|
+
"Đã đạt đến giới hạn sử dụng. Để tiếp tục sử dụng mô hình này ngay bây giờ, hãy cho phép sử dụng từ số dư khả dụng của bạn",
|
|
77
|
+
"dialog.usageExceeded.accountRateLimit.actionLabel": "Mở cài đặt",
|
|
78
|
+
"ui.sessionTurn.status.delegating": "Phân công công việc",
|
|
79
|
+
"ui.sessionTurn.status.planning": "Lập kế hoạch các bước tiếp theo",
|
|
80
|
+
"ui.sessionTurn.status.gatheringContext": "Khám phá",
|
|
81
|
+
"ui.sessionTurn.status.gatheredContext": "Đã khám phá",
|
|
82
|
+
"ui.sessionTurn.status.searchingCodebase": "Tìm kiếm cơ sở mã",
|
|
83
|
+
"ui.sessionTurn.status.searchingWeb": "Tìm kiếm trên web",
|
|
84
|
+
"ui.sessionTurn.status.makingEdits": "Thực hiện chỉnh sửa",
|
|
85
|
+
"ui.sessionTurn.status.runningCommands": "Đang chạy lệnh",
|
|
86
|
+
"ui.sessionTurn.status.thinking": "Đang suy nghĩ",
|
|
87
|
+
"ui.sessionTurn.status.thinkingWithTopic": "Đang suy nghĩ - {{topic}}",
|
|
88
|
+
"ui.sessionTurn.status.gatheringThoughts": "Thu thập suy nghĩ",
|
|
89
|
+
"ui.sessionTurn.status.consideringNextSteps": "Đang xem xét các bước tiếp theo",
|
|
90
|
+
"ui.messagePart.diagnostic.error": "Lỗi",
|
|
91
|
+
"ui.messagePart.title.edit": "Chỉnh sửa",
|
|
92
|
+
"ui.messagePart.title.write": "Viết",
|
|
93
|
+
"ui.messagePart.option.typeOwnAnswer": "Nhập câu trả lời của riêng bạn",
|
|
94
|
+
"ui.messagePart.review.title": "Xem lại các câu trả lời của bạn",
|
|
95
|
+
"ui.messagePart.questions.dismissed": "Đã bỏ qua câu hỏi",
|
|
96
|
+
"ui.messagePart.compaction": "Đã nén phiên",
|
|
97
|
+
"ui.messagePart.context.read.one": "{{count}} đọc",
|
|
98
|
+
"ui.messagePart.context.read.other": "{{count}} lượt đọc",
|
|
99
|
+
"ui.messagePart.context.search.one": "{{count}} tìm kiếm",
|
|
100
|
+
"ui.messagePart.context.search.other": "{{count}} tìm kiếm",
|
|
101
|
+
"ui.messagePart.context.list.one": "{{count}} danh sách",
|
|
102
|
+
"ui.messagePart.context.list.other": "{{count}} danh sách",
|
|
103
|
+
"ui.list.loading": "Đang tải",
|
|
104
|
+
"ui.list.empty": "Không có kết quả",
|
|
105
|
+
"ui.list.clearFilter": "Xóa bộ lọc",
|
|
106
|
+
"ui.list.emptyWithFilter.prefix": "Không có kết quả cho",
|
|
107
|
+
"ui.list.emptyWithFilter.suffix": "",
|
|
108
|
+
"ui.fileSearch.placeholder": "Tìm",
|
|
109
|
+
"ui.fileSearch.previousMatch": "Kết quả khớp trước",
|
|
110
|
+
"ui.fileSearch.nextMatch": "Kết quả khớp tiếp theo",
|
|
111
|
+
"ui.fileSearch.close": "Đóng tìm kiếm",
|
|
112
|
+
"ui.messageNav.newMessage": "Tin nhắn mới",
|
|
113
|
+
"ui.promptInput.noMatchingItems": "Không có mục phù hợp",
|
|
114
|
+
"ui.promptInput.commands": "Lệnh",
|
|
115
|
+
"ui.promptInput.dropFiles": "Thả tệp để đính kèm",
|
|
116
|
+
"ui.promptInput.removeAttachment": "Xóa tệp đính kèm",
|
|
117
|
+
"ui.promptInput.label": "Lời nhắc",
|
|
118
|
+
"ui.promptInput.placeholder.shell": "Nhập lệnh shell...",
|
|
119
|
+
"ui.promptInput.placeholder.normal": "Hỏi bất cứ điều gì, {{slash}} để dùng lệnh, {{at}} để thêm ngữ cảnh...",
|
|
120
|
+
"ui.promptInput.add": "Thêm hình ảnh và tệp",
|
|
121
|
+
"ui.promptInput.attachments": "Hình ảnh và tệp",
|
|
122
|
+
"ui.promptInput.context": "Ngữ cảnh",
|
|
123
|
+
"ui.promptInput.shell": "Lệnh shell",
|
|
124
|
+
"ui.promptInput.chooseAgent": "Chọn tác nhân",
|
|
125
|
+
"ui.promptInput.chooseModel": "Chọn mô hình",
|
|
126
|
+
"ui.promptInput.chooseVariant": "Chọn biến thể mô hình",
|
|
127
|
+
"ui.promptInput.send": "Gửi",
|
|
128
|
+
"ui.promptInput.stop": "Dừng",
|
|
129
|
+
"ui.tabs.close": "Đóng tab",
|
|
130
|
+
"ui.textField.copyToClipboard": "Sao chép vào bảng tạm",
|
|
131
|
+
"ui.textField.copyLink": "Sao chép liên kết",
|
|
132
|
+
"ui.textField.copied": "Đã sao chép",
|
|
133
|
+
"ui.imagePreview.alt": "Xem trước hình ảnh",
|
|
134
|
+
"ui.scrollView.ariaLabel": "Nội dung có thể cuộn",
|
|
135
|
+
"ui.tool.read": "Đọc",
|
|
136
|
+
"ui.tool.loaded": "Đã tải",
|
|
137
|
+
"ui.tool.list": "Danh sách",
|
|
138
|
+
"ui.tool.glob": "Glob",
|
|
139
|
+
"ui.tool.grep": "Grep",
|
|
140
|
+
"ui.tool.task": "Nhiệm vụ",
|
|
141
|
+
"ui.tool.webfetch": "Webfetch",
|
|
142
|
+
"ui.tool.websearch": "Tìm kiếm trên web",
|
|
143
|
+
"ui.tool.websearch.provider": "{{provider}} Tìm kiếm trên web",
|
|
144
|
+
"ui.tool.shell": "Shell",
|
|
145
|
+
"ui.tool.patch": "Bản vá",
|
|
146
|
+
"ui.tool.questions": "Câu hỏi",
|
|
147
|
+
"ui.tool.questions.numbered": "Câu hỏi {{number}}",
|
|
148
|
+
"ui.tool.agent": "Tác nhân {{type}}",
|
|
149
|
+
"ui.tool.agent.default": "Tác nhân",
|
|
150
|
+
"ui.tool.skill": "Kỹ năng",
|
|
151
|
+
"ui.basicTool.called": "Đã gọi `{{tool}}`",
|
|
152
|
+
"ui.toolErrorCard.failed": "Thất bại",
|
|
153
|
+
"ui.toolErrorCard.copyError": "Sao chép lỗi",
|
|
154
|
+
"ui.common.file.one": "tệp",
|
|
155
|
+
"ui.common.file.other": "tệp",
|
|
156
|
+
"ui.common.question.one": "câu hỏi",
|
|
157
|
+
"ui.common.question.other": "câu hỏi",
|
|
158
|
+
"ui.common.add": "Thêm",
|
|
159
|
+
"ui.common.clear": "Xóa",
|
|
160
|
+
"ui.common.file": "Tệp",
|
|
161
|
+
"ui.common.back": "Quay lại",
|
|
162
|
+
"ui.common.cancel": "Hủy",
|
|
163
|
+
"ui.common.confirm": "Xác nhận",
|
|
164
|
+
"ui.common.dismiss": "Bỏ qua",
|
|
165
|
+
"ui.common.close": "Đóng",
|
|
166
|
+
"ui.common.next": "Tiếp theo",
|
|
167
|
+
"ui.common.submit": "Gửi",
|
|
168
|
+
"ui.common.showMore": "Hiển thị thêm",
|
|
169
|
+
"ui.permission.deny": "Từ chối",
|
|
170
|
+
"ui.permission.allowAlways": "Cho phép luôn",
|
|
171
|
+
"ui.permission.allowOnce": "Cho phép một lần",
|
|
172
|
+
"ui.message.expand": "Mở rộng tin nhắn",
|
|
173
|
+
"ui.message.collapse": "Thu gọn tin nhắn",
|
|
174
|
+
"ui.message.copy": "Sao chép",
|
|
175
|
+
"ui.message.copyMessage": "Sao chép tin nhắn",
|
|
176
|
+
"ui.message.forkMessage": "Tách sang phiên mới",
|
|
177
|
+
"ui.message.revertMessage": "Hoàn nguyên tin nhắn",
|
|
178
|
+
"ui.message.copyResponse": "Sao chép phản hồi",
|
|
179
|
+
"ui.message.copied": "Đã sao chép",
|
|
180
|
+
"ui.message.duration.seconds": "{{count}}s",
|
|
181
|
+
"ui.message.duration.minutesSeconds": "{{minutes}}m {{seconds}}s",
|
|
182
|
+
"ui.message.interrupted": "Bị gián đoạn",
|
|
183
|
+
"ui.message.queued": "Đã xếp hàng",
|
|
184
|
+
"ui.message.attachment.alt": "tệp đính kèm",
|
|
185
|
+
"ui.patch.action.deleted": "Đã xóa",
|
|
186
|
+
"ui.patch.action.created": "Đã tạo",
|
|
187
|
+
"ui.patch.action.moved": "Đã di chuyển",
|
|
188
|
+
"ui.patch.action.patched": "Đã vá",
|
|
189
|
+
"ui.question.subtitle.answered": "{{count}} đã trả lời",
|
|
190
|
+
"ui.question.answer.none": "(không có câu trả lời)",
|
|
191
|
+
"ui.question.review.notAnswered": "(chưa trả lời)",
|
|
192
|
+
"ui.question.multiHint": "Chọn tất cả các câu trả lời phù hợp",
|
|
193
|
+
"ui.question.singleHint": "Chọn một câu trả lời",
|
|
194
|
+
"ui.question.custom.placeholder": "Nhập câu trả lời của bạn...",
|
|
195
|
+
}
|
package/src/i18n/zh.ts
CHANGED
|
@@ -7,8 +7,8 @@ export const dict = {
|
|
|
7
7
|
"ui.sessionReview.title.git": "Git 变更",
|
|
8
8
|
"ui.sessionReview.title.branch": "分支变更",
|
|
9
9
|
"ui.sessionReview.title.lastTurn": "上一轮变更",
|
|
10
|
-
"ui.sessionReview.diffStyle.unified": "
|
|
11
|
-
"ui.sessionReview.diffStyle.split": "
|
|
10
|
+
"ui.sessionReview.diffStyle.unified": "统一视图",
|
|
11
|
+
"ui.sessionReview.diffStyle.split": "并排视图",
|
|
12
12
|
"ui.sessionReview.openFile": "打开文件",
|
|
13
13
|
"ui.sessionReview.selection.line": "第 {{line}} 行",
|
|
14
14
|
"ui.sessionReview.selection.lines": "第 {{start}}-{{end}} 行",
|
|
@@ -26,9 +26,9 @@ export const dict = {
|
|
|
26
26
|
"ui.sessionReviewV2.filterFiles": "筛选文件",
|
|
27
27
|
"ui.sessionReviewV2.toggleSidebar": "切换文件树",
|
|
28
28
|
"ui.sessionReviewV2.showAllLines": "显示所有行",
|
|
29
|
-
"ui.sessionReviewV2.hideNonDiffLines": "
|
|
30
|
-
"ui.sessionReviewV2.unifiedDiff": "
|
|
31
|
-
"ui.sessionReviewV2.splitDiff": "
|
|
29
|
+
"ui.sessionReviewV2.hideNonDiffLines": "隐藏未更改的行",
|
|
30
|
+
"ui.sessionReviewV2.unifiedDiff": "统一格式差异",
|
|
31
|
+
"ui.sessionReviewV2.splitDiff": "并排差异",
|
|
32
32
|
"ui.sessionReviewV2.previousFile": "上一个文件",
|
|
33
33
|
"ui.sessionReviewV2.nextFile": "下一个文件",
|
|
34
34
|
"ui.sessionReviewV2.diffView": "差异视图",
|
|
@@ -48,38 +48,38 @@ export const dict = {
|
|
|
48
48
|
"ui.fileMedia.binary.description.path": "无法显示 {{path}},因为它是二进制文件。",
|
|
49
49
|
"ui.fileMedia.binary.description.default": "无法显示此文件,因为它是二进制文件。",
|
|
50
50
|
|
|
51
|
-
"ui.lineComment.label.prefix": "评论
|
|
51
|
+
"ui.lineComment.label.prefix": "评论",
|
|
52
52
|
"ui.lineComment.label.suffix": "",
|
|
53
|
-
"ui.lineComment.editorLabel.prefix": "正在评论
|
|
53
|
+
"ui.lineComment.editorLabel.prefix": "正在评论",
|
|
54
54
|
"ui.lineComment.editorLabel.suffix": "",
|
|
55
55
|
"ui.lineComment.placeholder": "添加评论",
|
|
56
|
-
"ui.lineComment.
|
|
56
|
+
"ui.lineComment.contextPlaceholder": "添加此更改的上下文",
|
|
57
|
+
"ui.lineComment.submit": "发布评论",
|
|
57
58
|
"ui.lineComment.cancel": "取消",
|
|
58
59
|
|
|
59
60
|
"ui.sessionTurn.steps.show": "显示步骤",
|
|
60
61
|
"ui.sessionTurn.steps.hide": "隐藏步骤",
|
|
61
62
|
"ui.sessionTurn.summary.response": "回复",
|
|
62
63
|
"ui.sessionTurn.diff.showMore": "显示更多更改({{count}})",
|
|
63
|
-
"ui.sessionTurn.diffs.changed.one": "
|
|
64
|
-
"ui.sessionTurn.diffs.changed.other": "
|
|
64
|
+
"ui.sessionTurn.diffs.changed.one": "{{count}} 个文件已更改",
|
|
65
|
+
"ui.sessionTurn.diffs.changed.other": "{{count}} 个文件已更改",
|
|
65
66
|
"ui.sessionTurn.diffs.showAll": "全部显示",
|
|
66
67
|
"ui.sessionTurn.diffs.showLess": "收起",
|
|
67
68
|
"ui.sessionTurn.diffs.more": "+{{count}} 个文件",
|
|
68
69
|
|
|
69
70
|
"ui.sessionTurn.retry.retrying": "重试中",
|
|
70
71
|
"ui.sessionTurn.retry.inSeconds": "{{seconds}} 秒后",
|
|
71
|
-
"ui.sessionTurn.retry.attempt": "第 {{attempt}}
|
|
72
|
-
"ui.sessionTurn.retry.attemptLine": "{{line}} - 第 {{attempt}}
|
|
73
|
-
"ui.sessionTurn.retry.geminiHot": "
|
|
72
|
+
"ui.sessionTurn.retry.attempt": "第 {{attempt}} 次尝试",
|
|
73
|
+
"ui.sessionTurn.retry.attemptLine": "{{line}} - 第 {{attempt}} 次尝试",
|
|
74
|
+
"ui.sessionTurn.retry.geminiHot": "Gemini 当前负载过高",
|
|
74
75
|
"ui.sessionTurn.error.freeUsageExceeded": "免费使用额度已用完",
|
|
75
|
-
"ui.sessionTurn.error.addCredits": "
|
|
76
|
+
"ui.sessionTurn.error.addCredits": "充值",
|
|
76
77
|
|
|
77
78
|
"dialog.usageExceeded.freeTier.title": "免费额度已用完",
|
|
78
79
|
"dialog.usageExceeded.freeTier.description": "订阅 OpenCode Go,可靠地使用最佳开源模型,每月 $5 起。",
|
|
79
80
|
"dialog.usageExceeded.freeTier.actionLabel": "订阅",
|
|
80
81
|
"dialog.usageExceeded.accountRateLimit.title": "Go 额度已用完",
|
|
81
|
-
"dialog.usageExceeded.accountRateLimit.description":
|
|
82
|
-
"使用额度已达上限。如需现在继续使用此模型,请从可用余额中启用使用",
|
|
82
|
+
"dialog.usageExceeded.accountRateLimit.description": "使用额度已达上限。如需立即继续使用此模型,请启用余额付费",
|
|
83
83
|
"dialog.usageExceeded.accountRateLimit.actionLabel": "打开设置",
|
|
84
84
|
|
|
85
85
|
"ui.sessionTurn.status.delegating": "正在委派工作",
|
|
@@ -101,13 +101,13 @@ export const dict = {
|
|
|
101
101
|
"ui.messagePart.context.read.other": "{{count}} 次读取",
|
|
102
102
|
"ui.messagePart.context.search.one": "{{count}} 次搜索",
|
|
103
103
|
"ui.messagePart.context.search.other": "{{count}} 次搜索",
|
|
104
|
-
"ui.messagePart.context.list.one": "{{count}}
|
|
105
|
-
"ui.messagePart.context.list.other": "{{count}}
|
|
104
|
+
"ui.messagePart.context.list.one": "列出 {{count}} 次",
|
|
105
|
+
"ui.messagePart.context.list.other": "列出 {{count}} 次",
|
|
106
106
|
"ui.messagePart.diagnostic.error": "错误",
|
|
107
107
|
"ui.messagePart.title.edit": "编辑",
|
|
108
108
|
"ui.messagePart.title.write": "写入",
|
|
109
109
|
"ui.messagePart.option.typeOwnAnswer": "输入自己的答案",
|
|
110
|
-
"ui.messagePart.review.title": "
|
|
110
|
+
"ui.messagePart.review.title": "检查你的回答",
|
|
111
111
|
|
|
112
112
|
"ui.list.loading": "加载中",
|
|
113
113
|
"ui.list.empty": "无结果",
|
|
@@ -117,6 +117,25 @@ export const dict = {
|
|
|
117
117
|
|
|
118
118
|
"ui.messageNav.newMessage": "新消息",
|
|
119
119
|
|
|
120
|
+
"ui.promptInput.noMatchingItems": "没有匹配项",
|
|
121
|
+
"ui.promptInput.commands": "命令",
|
|
122
|
+
"ui.promptInput.dropFiles": "拖放文件以添加附件",
|
|
123
|
+
"ui.promptInput.removeAttachment": "移除附件",
|
|
124
|
+
"ui.promptInput.label": "提示词",
|
|
125
|
+
"ui.promptInput.placeholder.shell": "输入 shell 命令...",
|
|
126
|
+
"ui.promptInput.placeholder.normal": "随便问点什么, {{slash}} 可查看命令, {{at}} 可添加上下文...",
|
|
127
|
+
"ui.promptInput.add": "添加图片和文件",
|
|
128
|
+
"ui.promptInput.attachments": "图片和文件",
|
|
129
|
+
"ui.promptInput.context": "上下文",
|
|
130
|
+
"ui.promptInput.shell": "Shell 命令",
|
|
131
|
+
"ui.promptInput.chooseAgent": "选择智能体",
|
|
132
|
+
"ui.promptInput.chooseModel": "选择模型",
|
|
133
|
+
"ui.promptInput.chooseVariant": "选择模型变体",
|
|
134
|
+
"ui.promptInput.send": "发送",
|
|
135
|
+
"ui.promptInput.stop": "停止",
|
|
136
|
+
|
|
137
|
+
"ui.tabs.close": "关闭标签页",
|
|
138
|
+
|
|
120
139
|
"ui.textField.copyToClipboard": "复制到剪贴板",
|
|
121
140
|
"ui.textField.copyLink": "复制链接",
|
|
122
141
|
"ui.textField.copied": "已复制",
|
|
@@ -126,14 +145,16 @@ export const dict = {
|
|
|
126
145
|
|
|
127
146
|
"ui.tool.read": "读取",
|
|
128
147
|
"ui.tool.loaded": "已加载",
|
|
129
|
-
"ui.tool.list": "
|
|
148
|
+
"ui.tool.list": "列出文件",
|
|
130
149
|
"ui.tool.glob": "Glob",
|
|
131
150
|
"ui.tool.grep": "Grep",
|
|
132
151
|
"ui.tool.webfetch": "Webfetch",
|
|
133
|
-
"ui.tool.websearch": "
|
|
152
|
+
"ui.tool.websearch": "网页搜索",
|
|
153
|
+
"ui.tool.websearch.provider": "{{provider}} 网页搜索",
|
|
134
154
|
"ui.tool.shell": "Shell",
|
|
135
155
|
"ui.tool.patch": "补丁",
|
|
136
156
|
"ui.tool.questions": "问题",
|
|
157
|
+
"ui.tool.questions.numbered": "问题 {{number}}",
|
|
137
158
|
"ui.tool.agent": "{{type}} 智能体",
|
|
138
159
|
"ui.tool.agent.default": "智能体",
|
|
139
160
|
|
|
@@ -143,6 +164,8 @@ export const dict = {
|
|
|
143
164
|
"ui.common.question.other": "个问题",
|
|
144
165
|
|
|
145
166
|
"ui.common.add": "添加",
|
|
167
|
+
"ui.common.clear": "清除",
|
|
168
|
+
"ui.common.file": "文件",
|
|
146
169
|
"ui.common.back": "返回",
|
|
147
170
|
"ui.common.cancel": "取消",
|
|
148
171
|
"ui.common.confirm": "确认",
|
|
@@ -160,8 +183,8 @@ export const dict = {
|
|
|
160
183
|
"ui.message.collapse": "收起消息",
|
|
161
184
|
"ui.message.copy": "复制",
|
|
162
185
|
"ui.message.copyMessage": "复制消息",
|
|
163
|
-
"ui.message.forkMessage": "
|
|
164
|
-
"ui.message.revertMessage": "
|
|
186
|
+
"ui.message.forkMessage": "从此消息创建新会话",
|
|
187
|
+
"ui.message.revertMessage": "撤销此消息",
|
|
165
188
|
"ui.message.copyResponse": "复制回复",
|
|
166
189
|
"ui.message.copied": "已复制!",
|
|
167
190
|
"ui.message.interrupted": "已中断",
|
|
@@ -173,10 +196,10 @@ export const dict = {
|
|
|
173
196
|
"ui.patch.action.moved": "已移动",
|
|
174
197
|
"ui.patch.action.patched": "已应用补丁",
|
|
175
198
|
|
|
176
|
-
"ui.question.subtitle.answered": "{{count}}
|
|
177
|
-
"ui.question.answer.none": "
|
|
178
|
-
"ui.question.review.notAnswered": "
|
|
179
|
-
"ui.question.multiHint": "
|
|
199
|
+
"ui.question.subtitle.answered": "已回答 {{count}} 个",
|
|
200
|
+
"ui.question.answer.none": "(无答案)",
|
|
201
|
+
"ui.question.review.notAnswered": "(未回答)",
|
|
202
|
+
"ui.question.multiHint": "选择所有适用的答案",
|
|
180
203
|
"ui.question.singleHint": "选择一个答案",
|
|
181
204
|
"ui.question.custom.placeholder": "输入你的答案...",
|
|
182
205
|
|
|
@@ -189,6 +212,6 @@ export const dict = {
|
|
|
189
212
|
"ui.basicTool.called": "调用了 `{{tool}}`",
|
|
190
213
|
"ui.toolErrorCard.failed": "失败",
|
|
191
214
|
"ui.toolErrorCard.copyError": "复制错误",
|
|
192
|
-
"ui.message.duration.seconds": "{{count}}秒",
|
|
193
|
-
"ui.message.duration.minutesSeconds": "{{minutes}}
|
|
215
|
+
"ui.message.duration.seconds": "{{count}} 秒",
|
|
216
|
+
"ui.message.duration.minutesSeconds": "{{minutes}} 分钟 {{seconds}} 秒",
|
|
194
217
|
} satisfies Partial<Record<Keys, string>>
|
package/src/i18n/zht.ts
CHANGED
|
@@ -7,8 +7,8 @@ export const dict = {
|
|
|
7
7
|
"ui.sessionReview.title.git": "Git 變更",
|
|
8
8
|
"ui.sessionReview.title.branch": "分支變更",
|
|
9
9
|
"ui.sessionReview.title.lastTurn": "上一輪變更",
|
|
10
|
-
"ui.sessionReview.diffStyle.unified": "
|
|
11
|
-
"ui.sessionReview.diffStyle.split": "
|
|
10
|
+
"ui.sessionReview.diffStyle.unified": "統一",
|
|
11
|
+
"ui.sessionReview.diffStyle.split": "並排",
|
|
12
12
|
"ui.sessionReview.openFile": "開啟檔案",
|
|
13
13
|
"ui.sessionReview.selection.line": "第 {{line}} 行",
|
|
14
14
|
"ui.sessionReview.selection.lines": "第 {{start}}-{{end}} 行",
|
|
@@ -19,16 +19,16 @@ export const dict = {
|
|
|
19
19
|
"ui.sessionReview.change.modified": "已修改",
|
|
20
20
|
"ui.sessionReview.image.loading": "載入中...",
|
|
21
21
|
"ui.sessionReview.image.placeholder": "圖片",
|
|
22
|
-
"ui.sessionReview.largeDiff.title": "
|
|
22
|
+
"ui.sessionReview.largeDiff.title": "差異過大,無法顯示",
|
|
23
23
|
"ui.sessionReview.largeDiff.meta": "限制:{{limit}} 行變更。目前:{{current}} 行變更。",
|
|
24
|
-
"ui.sessionReview.largeDiff.renderAnyway": "
|
|
24
|
+
"ui.sessionReview.largeDiff.renderAnyway": "仍要顯示",
|
|
25
25
|
"ui.sessionReviewV2.expandMode": "展開或收合差異",
|
|
26
26
|
"ui.sessionReviewV2.filterFiles": "篩選檔案",
|
|
27
27
|
"ui.sessionReviewV2.toggleSidebar": "切換檔案樹",
|
|
28
28
|
"ui.sessionReviewV2.showAllLines": "顯示所有行",
|
|
29
29
|
"ui.sessionReviewV2.hideNonDiffLines": "隱藏無差異的行",
|
|
30
|
-
"ui.sessionReviewV2.unifiedDiff": "
|
|
31
|
-
"ui.sessionReviewV2.splitDiff": "
|
|
30
|
+
"ui.sessionReviewV2.unifiedDiff": "統一格式差異",
|
|
31
|
+
"ui.sessionReviewV2.splitDiff": "並排差異",
|
|
32
32
|
"ui.sessionReviewV2.previousFile": "上一個檔案",
|
|
33
33
|
"ui.sessionReviewV2.nextFile": "下一個檔案",
|
|
34
34
|
"ui.sessionReviewV2.diffView": "差異檢視",
|
|
@@ -48,18 +48,19 @@ export const dict = {
|
|
|
48
48
|
"ui.fileMedia.binary.description.path": "無法顯示 {{path}},因為它是二進位檔案。",
|
|
49
49
|
"ui.fileMedia.binary.description.default": "無法顯示此檔案,因為它是二進位檔案。",
|
|
50
50
|
|
|
51
|
-
"ui.lineComment.label.prefix": "
|
|
51
|
+
"ui.lineComment.label.prefix": "留言於 ",
|
|
52
52
|
"ui.lineComment.label.suffix": "",
|
|
53
|
-
"ui.lineComment.editorLabel.prefix": "
|
|
53
|
+
"ui.lineComment.editorLabel.prefix": "正在留言於 ",
|
|
54
54
|
"ui.lineComment.editorLabel.suffix": "",
|
|
55
|
-
"ui.lineComment.placeholder": "
|
|
56
|
-
"ui.lineComment.
|
|
55
|
+
"ui.lineComment.placeholder": "新增留言",
|
|
56
|
+
"ui.lineComment.contextPlaceholder": "新增此變更的相關資訊",
|
|
57
|
+
"ui.lineComment.submit": "留言",
|
|
57
58
|
"ui.lineComment.cancel": "取消",
|
|
58
59
|
|
|
59
60
|
"ui.sessionTurn.steps.show": "顯示步驟",
|
|
60
61
|
"ui.sessionTurn.steps.hide": "隱藏步驟",
|
|
61
62
|
"ui.sessionTurn.summary.response": "回覆",
|
|
62
|
-
"ui.sessionTurn.diff.showMore": "
|
|
63
|
+
"ui.sessionTurn.diff.showMore": "顯示更多變更({{count}})",
|
|
63
64
|
"ui.sessionTurn.diffs.changed.one": "已變更檔案:{{count}} 個",
|
|
64
65
|
"ui.sessionTurn.diffs.changed.other": "已變更檔案:{{count}} 個",
|
|
65
66
|
"ui.sessionTurn.diffs.showAll": "全部顯示",
|
|
@@ -70,7 +71,7 @@ export const dict = {
|
|
|
70
71
|
"ui.sessionTurn.retry.inSeconds": "{{seconds}} 秒後",
|
|
71
72
|
"ui.sessionTurn.retry.attempt": "第 {{attempt}} 次",
|
|
72
73
|
"ui.sessionTurn.retry.attemptLine": "{{line}} - 第 {{attempt}} 次",
|
|
73
|
-
"ui.sessionTurn.retry.geminiHot": "
|
|
74
|
+
"ui.sessionTurn.retry.geminiHot": "Gemini 目前負載過高",
|
|
74
75
|
"ui.sessionTurn.error.freeUsageExceeded": "免費使用額度已用完",
|
|
75
76
|
"ui.sessionTurn.error.addCredits": "新增點數",
|
|
76
77
|
|
|
@@ -78,8 +79,7 @@ export const dict = {
|
|
|
78
79
|
"dialog.usageExceeded.freeTier.description": "訂閱 OpenCode Go,可靠地使用最佳開源模型,每月 $5 起。",
|
|
79
80
|
"dialog.usageExceeded.freeTier.actionLabel": "訂閱",
|
|
80
81
|
"dialog.usageExceeded.accountRateLimit.title": "已達 Go 額度上限",
|
|
81
|
-
"dialog.usageExceeded.accountRateLimit.description":
|
|
82
|
-
"已達使用額度上限。若要現在繼續使用此模型,請從可用餘額中啟用使用",
|
|
82
|
+
"dialog.usageExceeded.accountRateLimit.description": "已達使用額度上限。若要立即繼續使用此模型,請啟用可用餘額計費",
|
|
83
83
|
"dialog.usageExceeded.accountRateLimit.actionLabel": "開啟設定",
|
|
84
84
|
|
|
85
85
|
"ui.sessionTurn.status.delegating": "正在委派工作",
|
|
@@ -101,13 +101,13 @@ export const dict = {
|
|
|
101
101
|
"ui.messagePart.context.read.other": "{{count}} 次讀取",
|
|
102
102
|
"ui.messagePart.context.search.one": "{{count}} 次搜尋",
|
|
103
103
|
"ui.messagePart.context.search.other": "{{count}} 次搜尋",
|
|
104
|
-
"ui.messagePart.context.list.one": "{{count}}
|
|
105
|
-
"ui.messagePart.context.list.other": "{{count}}
|
|
104
|
+
"ui.messagePart.context.list.one": "列出 {{count}} 次",
|
|
105
|
+
"ui.messagePart.context.list.other": "列出 {{count}} 次",
|
|
106
106
|
"ui.messagePart.diagnostic.error": "錯誤",
|
|
107
107
|
"ui.messagePart.title.edit": "編輯",
|
|
108
108
|
"ui.messagePart.title.write": "寫入",
|
|
109
109
|
"ui.messagePart.option.typeOwnAnswer": "輸入自己的答案",
|
|
110
|
-
"ui.messagePart.review.title": "
|
|
110
|
+
"ui.messagePart.review.title": "檢閱你的答案",
|
|
111
111
|
|
|
112
112
|
"ui.list.loading": "載入中",
|
|
113
113
|
"ui.list.empty": "無結果",
|
|
@@ -117,6 +117,25 @@ export const dict = {
|
|
|
117
117
|
|
|
118
118
|
"ui.messageNav.newMessage": "新訊息",
|
|
119
119
|
|
|
120
|
+
"ui.promptInput.noMatchingItems": "沒有符合的項目",
|
|
121
|
+
"ui.promptInput.commands": "命令",
|
|
122
|
+
"ui.promptInput.dropFiles": "拖放檔案以附加",
|
|
123
|
+
"ui.promptInput.removeAttachment": "移除附件",
|
|
124
|
+
"ui.promptInput.label": "提示詞",
|
|
125
|
+
"ui.promptInput.placeholder.shell": "輸入 shell 命令...",
|
|
126
|
+
"ui.promptInput.placeholder.normal": "想問什麼都可以, {{slash}} 可使用命令, {{at}} 可加入上下文...",
|
|
127
|
+
"ui.promptInput.add": "新增圖片和檔案",
|
|
128
|
+
"ui.promptInput.attachments": "圖片和檔案",
|
|
129
|
+
"ui.promptInput.context": "上下文",
|
|
130
|
+
"ui.promptInput.shell": "shell 命令",
|
|
131
|
+
"ui.promptInput.chooseAgent": "選擇代理程式",
|
|
132
|
+
"ui.promptInput.chooseModel": "選擇模型",
|
|
133
|
+
"ui.promptInput.chooseVariant": "選擇模型變體",
|
|
134
|
+
"ui.promptInput.send": "傳送",
|
|
135
|
+
"ui.promptInput.stop": "停止",
|
|
136
|
+
|
|
137
|
+
"ui.tabs.close": "關閉分頁",
|
|
138
|
+
|
|
120
139
|
"ui.textField.copyToClipboard": "複製到剪貼簿",
|
|
121
140
|
"ui.textField.copyLink": "複製連結",
|
|
122
141
|
"ui.textField.copied": "已複製",
|
|
@@ -126,14 +145,16 @@ export const dict = {
|
|
|
126
145
|
|
|
127
146
|
"ui.tool.read": "讀取",
|
|
128
147
|
"ui.tool.loaded": "已載入",
|
|
129
|
-
"ui.tool.list": "
|
|
148
|
+
"ui.tool.list": "列出",
|
|
130
149
|
"ui.tool.glob": "Glob",
|
|
131
150
|
"ui.tool.grep": "Grep",
|
|
132
151
|
"ui.tool.webfetch": "Webfetch",
|
|
133
152
|
"ui.tool.websearch": "網頁搜尋",
|
|
153
|
+
"ui.tool.websearch.provider": "{{provider}} 網頁搜尋",
|
|
134
154
|
"ui.tool.shell": "Shell",
|
|
135
155
|
"ui.tool.patch": "修補",
|
|
136
156
|
"ui.tool.questions": "問題",
|
|
157
|
+
"ui.tool.questions.numbered": "問題 {{number}}",
|
|
137
158
|
"ui.tool.agent": "{{type}} 代理程式",
|
|
138
159
|
"ui.tool.agent.default": "代理程式",
|
|
139
160
|
|
|
@@ -143,6 +164,8 @@ export const dict = {
|
|
|
143
164
|
"ui.common.question.other": "個問題",
|
|
144
165
|
|
|
145
166
|
"ui.common.add": "新增",
|
|
167
|
+
"ui.common.clear": "清除",
|
|
168
|
+
"ui.common.file": "檔案",
|
|
146
169
|
"ui.common.back": "返回",
|
|
147
170
|
"ui.common.cancel": "取消",
|
|
148
171
|
"ui.common.confirm": "確認",
|
|
@@ -165,7 +188,7 @@ export const dict = {
|
|
|
165
188
|
"ui.message.copyResponse": "複製回覆",
|
|
166
189
|
"ui.message.copied": "已複製!",
|
|
167
190
|
"ui.message.interrupted": "已中斷",
|
|
168
|
-
"ui.message.queued": "
|
|
191
|
+
"ui.message.queued": "已加入佇列",
|
|
169
192
|
"ui.message.attachment.alt": "附件",
|
|
170
193
|
|
|
171
194
|
"ui.patch.action.deleted": "已刪除",
|
|
@@ -173,9 +196,9 @@ export const dict = {
|
|
|
173
196
|
"ui.patch.action.moved": "已移動",
|
|
174
197
|
"ui.patch.action.patched": "已套用修補",
|
|
175
198
|
|
|
176
|
-
"ui.question.subtitle.answered": "{{count}}
|
|
177
|
-
"ui.question.answer.none": "
|
|
178
|
-
"ui.question.review.notAnswered": "
|
|
199
|
+
"ui.question.subtitle.answered": "已回答 {{count}} 題",
|
|
200
|
+
"ui.question.answer.none": "(無答案)",
|
|
201
|
+
"ui.question.review.notAnswered": "(未回答)",
|
|
179
202
|
"ui.question.multiHint": "可多選",
|
|
180
203
|
"ui.question.singleHint": "選擇一個答案",
|
|
181
204
|
"ui.question.custom.placeholder": "輸入你的答案...",
|
|
@@ -41,7 +41,8 @@
|
|
|
41
41
|
"syntax-type": "var(--v2-purple-800)",
|
|
42
42
|
"syntax-constant": "#007b80",
|
|
43
43
|
"syntax-critical": "var(--v2-red-800)",
|
|
44
|
-
"syntax-diff-
|
|
44
|
+
"syntax-diff-add": "var(--v2-state-fg-success)",
|
|
45
|
+
"syntax-diff-delete": "var(--v2-state-fg-danger)",
|
|
45
46
|
"syntax-diff-unknown": "#a753ae",
|
|
46
47
|
"surface-critical-base": "#FFF2F0"
|
|
47
48
|
},
|
|
@@ -275,7 +276,8 @@
|
|
|
275
276
|
"syntax-type": "var(--v2-purple-400)",
|
|
276
277
|
"syntax-constant": "#93e9f6",
|
|
277
278
|
"syntax-critical": "var(--v2-red-400)",
|
|
278
|
-
"syntax-diff-
|
|
279
|
+
"syntax-diff-add": "var(--v2-state-fg-success)",
|
|
280
|
+
"syntax-diff-delete": "var(--v2-state-fg-danger)",
|
|
279
281
|
"syntax-diff-unknown": "#edb2f1",
|
|
280
282
|
"surface-critical-base": "#1F0603"
|
|
281
283
|
},
|
|
@@ -195,9 +195,9 @@
|
|
|
195
195
|
|
|
196
196
|
/* Loading */
|
|
197
197
|
[data-component="button-v2"][data-variant="loading"] {
|
|
198
|
-
background:
|
|
198
|
+
background: var(--v2-background-bg-layer-02);
|
|
199
199
|
color: var(--v2-text-text-base);
|
|
200
|
-
box-shadow: inset 0 0 0 0.5px
|
|
200
|
+
box-shadow: inset 0 0 0 0.5px var(--v2-border-border-muted);
|
|
201
201
|
cursor: default;
|
|
202
202
|
pointer-events: none;
|
|
203
203
|
}
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import { Dialog as Kobalte } from "@kobalte/core/dialog"
|
|
2
2
|
import { type ComponentProps, type JSXElement, type ParentProps, Show, children, splitProps } from "solid-js"
|
|
3
|
+
import { useI18n } from "../../context/i18n"
|
|
3
4
|
import "./dialog-v2.css"
|
|
4
5
|
|
|
5
6
|
export interface DialogProps extends ParentProps {
|
|
@@ -51,6 +52,7 @@ export function DialogTitleGroup(props: DialogTitleGroupProps) {
|
|
|
51
52
|
}
|
|
52
53
|
|
|
53
54
|
export function DialogHeader(props: DialogHeaderProps) {
|
|
55
|
+
const i18n = useI18n()
|
|
54
56
|
const [local] = splitProps(props, ["closeLabel", "hideClose", "children"])
|
|
55
57
|
const hideClose = () => local.hideClose === true
|
|
56
58
|
|
|
@@ -58,7 +60,7 @@ export function DialogHeader(props: DialogHeaderProps) {
|
|
|
58
60
|
<div data-slot="dialog-header" data-hide-close={hideClose() ? "" : undefined}>
|
|
59
61
|
{local.children}
|
|
60
62
|
{!hideClose() && (
|
|
61
|
-
<Kobalte.CloseButton data-slot="dialog-close-button" aria-label={local.closeLabel ?? "
|
|
63
|
+
<Kobalte.CloseButton data-slot="dialog-close-button" aria-label={local.closeLabel ?? i18n.t("ui.common.close")}>
|
|
62
64
|
<svg
|
|
63
65
|
width="16"
|
|
64
66
|
height="16"
|
|
@@ -13,13 +13,13 @@
|
|
|
13
13
|
align-items: center;
|
|
14
14
|
justify-content: flex-start;
|
|
15
15
|
gap: 6px;
|
|
16
|
-
padding-
|
|
16
|
+
padding-inline-end: 8px;
|
|
17
17
|
overflow: visible;
|
|
18
18
|
border: none;
|
|
19
19
|
border-radius: 6px;
|
|
20
20
|
background-color: transparent;
|
|
21
21
|
color: var(--v2-text-text-muted);
|
|
22
|
-
text-align:
|
|
22
|
+
text-align: start;
|
|
23
23
|
cursor: pointer;
|
|
24
24
|
scroll-margin-block: 8px;
|
|
25
25
|
transition:
|
|
@@ -87,6 +87,10 @@
|
|
|
87
87
|
transform: rotate(-90deg);
|
|
88
88
|
}
|
|
89
89
|
|
|
90
|
+
[data-component="file-tree-v2"]:dir(rtl) [data-slot="file-tree-v2-chevron"]:not([data-expanded]) svg {
|
|
91
|
+
transform: rotate(90deg);
|
|
92
|
+
}
|
|
93
|
+
|
|
90
94
|
[data-component="file-tree-v2"] [data-slot="file-tree-v2-row"][data-selected] [data-slot="file-tree-v2-chevron"] {
|
|
91
95
|
color: var(--v2-text-text-base);
|
|
92
96
|
}
|