@opencode-ai/ui 0.0.0-dev-202609050337 → 0.0.0-dev-19145
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/actions/button/button.d.ts +10 -0
- package/dist/actions/icon-button/icon-button.d.ts +11 -0
- package/dist/actions/split-button/split-button.d.ts +5 -0
- package/dist/components/card.d.ts +1 -1
- package/dist/components/list.d.ts +1 -1
- package/dist/components/scroll-view.d.ts +3 -3
- package/dist/context/i18n.d.ts +10 -7
- package/dist/context/marked-base.d.ts +3 -0
- package/dist/context/marked-parser.d.ts +1 -2
- package/dist/{components → data-display/accordion}/accordion.d.ts +6 -6
- package/dist/{v2/components/avatar-v2.d.ts → data-display/avatar/avatar.d.ts} +1 -1
- package/dist/data-display/badge/badge.d.ts +7 -0
- package/dist/{components → data-display/diff-changes}/diff-changes.d.ts +2 -1
- package/dist/data-display/keybind/keybind.d.ts +7 -0
- package/dist/{v2/components/line-comment-v2.d.ts → data-display/line-comment/line-comment.d.ts} +9 -9
- package/dist/{v2/components/project-avatar-v2.d.ts → data-display/project-avatar/project-avatar.d.ts} +1 -1
- package/dist/feedback/loader/loader.d.ts +3 -0
- package/dist/{components → feedback/progress-circle}/progress-circle.d.ts +2 -0
- package/dist/feedback/toast/toast.d.ts +57 -0
- package/dist/{components → forms/checkbox}/checkbox.d.ts +2 -2
- package/dist/{v2/components/field-v2.d.ts → forms/field/field.d.ts} +4 -10
- package/dist/forms/radio/radio.d.ts +16 -0
- package/dist/{v2/components/select-v2.d.ts → forms/select/select.d.ts} +4 -6
- package/dist/{components → forms/switch}/switch.d.ts +4 -2
- package/dist/{v2/components/text-input-v2.d.ts → forms/text-input/text-input.d.ts} +3 -3
- package/dist/forms/textarea/textarea.d.ts +7 -0
- package/dist/hooks/use-filtered-list.d.ts +9 -0
- package/dist/i18n/ar.d.ts +0 -2
- package/dist/i18n/bg.d.ts +0 -2
- package/dist/i18n/br.d.ts +0 -2
- package/dist/i18n/bs.d.ts +0 -2
- package/dist/i18n/da.d.ts +0 -2
- package/dist/i18n/de.d.ts +0 -2
- package/dist/i18n/en.d.ts +242 -1
- package/dist/i18n/es.d.ts +0 -2
- package/dist/i18n/fr.d.ts +0 -2
- package/dist/i18n/he.d.ts +197 -0
- package/dist/i18n/ja.d.ts +0 -2
- package/dist/i18n/km.d.ts +0 -2
- package/dist/i18n/ko.d.ts +0 -2
- package/dist/i18n/lo.d.ts +0 -2
- package/dist/i18n/mk.d.ts +0 -2
- package/dist/i18n/mn.d.ts +0 -2
- package/dist/i18n/my.d.ts +0 -2
- package/dist/i18n/pl.d.ts +0 -2
- package/dist/i18n/ru.d.ts +0 -2
- package/dist/i18n/sr.d.ts +0 -2
- package/dist/i18n/tg.d.ts +0 -2
- package/dist/i18n/th.d.ts +0 -2
- package/dist/i18n/tr.d.ts +0 -2
- package/dist/i18n/zh.d.ts +0 -2
- package/dist/i18n/zht.d.ts +0 -2
- package/dist/{components/icon.d.ts → icons/icon/additional-icons.d.ts} +8 -8
- package/dist/{v2/components → icons/icon}/icon.d.ts +44 -1
- package/dist/layout/divider/divider.d.ts +5 -0
- package/dist/navigation/menu/menu.d.ts +59 -0
- package/dist/{v2/components/segmented-control-v2.d.ts → navigation/segmented-control/segmented-control.d.ts} +5 -5
- package/dist/{components → navigation/tabs}/tabs.d.ts +15 -8
- package/dist/{v2/components/dialog-v2.d.ts → overlays/dialog/dialog.d.ts} +1 -2
- package/dist/overlays/tooltip/tooltip.d.ts +15 -0
- package/dist/{components → typography/text-shimmer}/text-shimmer.d.ts +1 -0
- package/dist/typography/wordmark/wordmark.d.ts +2 -0
- package/package.json +141 -35
- package/src/{v2/components/button-v2.css → actions/button/button.css} +29 -0
- package/src/{components → actions/button}/button.tsx +19 -11
- package/src/actions/icon-button/icon-button.tsx +32 -0
- package/src/{v2/components/split-button-v2.css → actions/split-button/split-button.css} +2 -6
- package/src/{v2/components/split-button-v2.tsx → actions/split-button/split-button.tsx} +4 -4
- package/src/components/animated-number.css +29 -11
- package/src/components/animated-number.tsx +2 -2
- package/src/components/card.css +2 -23
- package/src/components/card.tsx +4 -4
- package/src/components/collapsible.tsx +2 -2
- package/src/components/dock-surface.css +2 -9
- package/src/components/image-preview.tsx +3 -2
- package/src/components/list.css +5 -5
- package/src/components/list.tsx +7 -5
- package/src/components/popover.tsx +3 -2
- package/src/components/scroll-view.tsx +5 -20
- package/src/components/sticky-accordion-header.tsx +1 -1
- package/src/components/text-field.tsx +12 -4
- package/src/context/dialog.tsx +1 -0
- package/src/context/i18n.tsx +17 -14
- package/src/context/marked-base.tsx +27 -0
- package/src/context/marked-parser.tsx +3 -13
- package/src/{components → data-display/accordion}/accordion.css +5 -31
- package/src/{components → data-display/accordion}/accordion.tsx +14 -14
- package/src/{v2/components/avatar-v2.tsx → data-display/avatar/avatar.tsx} +1 -1
- package/src/{v2/components/badge-v2.css → data-display/badge/badge.css} +19 -0
- package/src/{v2/components/badge-v2.tsx → data-display/badge/badge.tsx} +6 -4
- package/src/{components → data-display/diff-changes}/diff-changes.css +22 -19
- package/src/{v2/components/diff-changes-v2.tsx → data-display/diff-changes/diff-changes.tsx} +7 -2
- package/src/{v2/components/keybind-v2.css → data-display/keybind/keybind.css} +1 -1
- package/src/{v2/components/keybind-v2.tsx → data-display/keybind/keybind.tsx} +3 -3
- package/src/{v2/components/line-comment-v2.css → data-display/line-comment/line-comment.css} +4 -4
- package/src/{v2/components/line-comment-v2.tsx → data-display/line-comment/line-comment.tsx} +17 -15
- package/src/{v2/components/project-avatar-v2.tsx → data-display/project-avatar/project-avatar.tsx} +1 -1
- package/src/{v2/components/loader-v2.tsx → feedback/loader/loader.tsx} +2 -2
- package/src/feedback/progress-circle/progress-circle.css +28 -0
- package/src/feedback/progress-circle/progress-circle.tsx +64 -0
- package/src/{v2/components/toast-v2.tsx → feedback/toast/toast.tsx} +60 -58
- package/src/{components → forms/checkbox}/checkbox.css +1 -7
- package/src/{components → forms/checkbox}/checkbox.tsx +13 -13
- package/src/{v2/components/field-v2.css → forms/field/field.css} +1 -1
- package/src/{v2/components/field-v2.tsx → forms/field/field.tsx} +9 -11
- package/src/{v2/components/radio-v2.tsx → forms/radio/radio.tsx} +30 -20
- package/src/{v2/components/select-v2.css → forms/select/select.css} +2 -8
- package/src/{v2/components/select-v2.tsx → forms/select/select.tsx} +40 -32
- package/src/{v2/components/switch-v2.css → forms/switch/switch.css} +110 -0
- package/src/forms/switch/switch.tsx +34 -0
- package/src/{v2/components/text-input-v2.css → forms/text-input/text-input.css} +3 -3
- package/src/{v2/components/text-input-v2.tsx → forms/text-input/text-input.tsx} +4 -4
- package/src/{v2/components/textarea-v2.tsx → forms/textarea/textarea.tsx} +3 -3
- package/src/hooks/create-auto-scroll.tsx +20 -0
- package/src/i18n/am.ts +7 -9
- package/src/i18n/ar.ts +7 -9
- package/src/i18n/az.ts +7 -9
- package/src/i18n/bg.ts +7 -9
- package/src/i18n/bn.ts +7 -9
- package/src/i18n/br.ts +7 -9
- package/src/i18n/bs.ts +7 -9
- package/src/i18n/ca.ts +7 -9
- package/src/i18n/cs.ts +7 -9
- package/src/i18n/da.ts +7 -9
- package/src/i18n/de.ts +1 -3
- package/src/i18n/dv.ts +7 -9
- package/src/i18n/dz.ts +5 -7
- package/src/i18n/el.ts +7 -9
- package/src/i18n/en.ts +59 -12
- package/src/i18n/es.ts +6 -8
- package/src/i18n/et.ts +7 -9
- package/src/i18n/fa.ts +7 -9
- package/src/i18n/fi.ts +7 -9
- package/src/i18n/fo.ts +7 -9
- package/src/i18n/fr.ts +6 -8
- package/src/i18n/he.ts +199 -0
- package/src/i18n/hi.ts +7 -9
- package/src/i18n/hr.ts +7 -9
- package/src/i18n/hu.ts +7 -9
- package/src/i18n/hy.ts +7 -9
- package/src/i18n/id.ts +7 -9
- package/src/i18n/is.ts +7 -9
- package/src/i18n/it.ts +7 -9
- package/src/i18n/ja.ts +7 -9
- package/src/i18n/ka.ts +7 -9
- package/src/i18n/km.ts +7 -9
- package/src/i18n/ko.ts +7 -9
- package/src/i18n/lo.ts +7 -9
- package/src/i18n/lt.ts +7 -9
- package/src/i18n/lv.ts +7 -9
- package/src/i18n/mk.ts +7 -9
- package/src/i18n/mn.ts +7 -9
- package/src/i18n/ms.ts +7 -9
- package/src/i18n/my.ts +7 -9
- package/src/i18n/ne.ts +7 -9
- package/src/i18n/nl.ts +7 -9
- package/src/i18n/no.ts +7 -9
- package/src/i18n/pa.ts +7 -9
- package/src/i18n/pl.ts +7 -9
- package/src/i18n/ro.ts +7 -9
- package/src/i18n/ru.ts +7 -9
- package/src/i18n/si.ts +7 -9
- package/src/i18n/sk.ts +7 -9
- package/src/i18n/sl.ts +7 -9
- package/src/i18n/sq.ts +7 -9
- package/src/i18n/sr.ts +7 -9
- package/src/i18n/sv.ts +7 -9
- package/src/i18n/tg.ts +7 -9
- package/src/i18n/th.ts +7 -9
- package/src/i18n/tk.ts +7 -9
- package/src/i18n/tr.ts +7 -9
- package/src/i18n/uk.ts +7 -9
- package/src/i18n/ur.ts +7 -9
- package/src/i18n/uz.ts +7 -9
- package/src/i18n/vi.ts +7 -9
- package/src/i18n/zh.ts +7 -9
- package/src/i18n/zht.ts +7 -9
- package/src/{components/icon.tsx → icons/icon/additional-icons.ts} +8 -74
- package/src/icons/icon/icon.css +3 -0
- package/src/{v2/components → icons/icon}/icon.tsx +80 -12
- package/src/{v2/components/divider-v2.tsx → layout/divider/divider.tsx} +3 -3
- package/src/{v2/components/menu-v2.css → navigation/menu/menu.css} +124 -2
- package/src/{v2/components/menu-v2.tsx → navigation/menu/menu.tsx} +96 -32
- package/src/{v2/components/segmented-control-v2.css → navigation/segmented-control/segmented-control.css} +1 -1
- package/src/{v2/components/segmented-control-v2.tsx → navigation/segmented-control/segmented-control.tsx} +9 -8
- package/src/{v2/components/tabs-v2.css → navigation/tabs/tabs-current.css} +25 -10
- package/src/{components → navigation/tabs}/tabs.css +53 -232
- package/src/navigation/tabs/tabs.tsx +194 -0
- package/src/{v2/components/dialog-v2.css → overlays/dialog/dialog.css} +3 -0
- package/src/{v2/components/dialog-v2.tsx → overlays/dialog/dialog.tsx} +11 -13
- package/src/{v2/components/tooltip-v2.css → overlays/tooltip/tooltip.css} +26 -0
- package/src/{v2/components/tooltip-v2.tsx → overlays/tooltip/tooltip.tsx} +24 -17
- package/src/styles/base.css +5 -0
- package/src/styles/index.css +4 -20
- package/src/styles/tailwind/colors.css +1 -0
- package/src/styles/tailwind/index.css +18 -1
- package/src/styles/theme.css +2 -2
- package/src/{v2/styles → styles/tokens}/colors.css +8 -8
- package/src/{v2/styles → styles/tokens}/theme.css +20 -16
- package/src/theme/context.tsx +19 -11
- package/src/theme/themes/oc-2.json +48 -19
- package/src/theme/v2/default-primitives.ts +8 -8
- package/src/theme/v2/foreground.ts +1 -0
- package/src/theme/v2/mapping.ts +5 -1
- package/src/{components → typography/text-shimmer}/text-shimmer.css +2 -1
- package/src/{components → typography/text-shimmer}/text-shimmer.tsx +1 -0
- package/src/{v2/components/wordmark-v2.tsx → typography/wordmark/wordmark.tsx} +2 -2
- package/dist/components/avatar.d.ts +0 -9
- package/dist/components/button.d.ts +0 -9
- package/dist/components/dialog.d.ts +0 -12
- package/dist/components/dropdown-menu.d.ts +0 -80
- package/dist/components/icon-button.d.ts +0 -10
- package/dist/components/keybind.d.ts +0 -6
- package/dist/components/radio-group.d.ts +0 -16
- package/dist/components/select.d.ts +0 -21
- package/dist/components/tag.d.ts +0 -5
- package/dist/components/toast.d.ts +0 -56
- package/dist/components/tooltip.d.ts +0 -17
- package/dist/v2/components/accordion-v2.d.ts +0 -26
- package/dist/v2/components/badge-v2.d.ts +0 -6
- package/dist/v2/components/button-v2.d.ts +0 -10
- package/dist/v2/components/checkbox-v2.d.ts +0 -10
- package/dist/v2/components/diff-changes-v2.d.ts +0 -11
- package/dist/v2/components/divider-v2.d.ts +0 -5
- package/dist/v2/components/icon-button-v2.d.ts +0 -11
- package/dist/v2/components/inline-input-v2.d.ts +0 -21
- package/dist/v2/components/keybind-v2.d.ts +0 -7
- package/dist/v2/components/loader-v2.d.ts +0 -3
- package/dist/v2/components/menu-v2.d.ts +0 -52
- package/dist/v2/components/progress-circle-v2.d.ts +0 -8
- package/dist/v2/components/radio-v2.d.ts +0 -16
- package/dist/v2/components/split-button-v2.d.ts +0 -5
- package/dist/v2/components/switch-v2.d.ts +0 -7
- package/dist/v2/components/tabs-v2.d.ts +0 -34
- package/dist/v2/components/text-shimmer-v2.d.ts +0 -9
- package/dist/v2/components/textarea-v2.d.ts +0 -7
- package/dist/v2/components/toast-v2.d.ts +0 -57
- package/dist/v2/components/tooltip-v2.d.ts +0 -13
- package/dist/v2/components/wordmark-v2.d.ts +0 -2
- package/src/components/avatar.css +0 -49
- package/src/components/avatar.tsx +0 -55
- package/src/components/button.css +0 -194
- package/src/components/dialog.css +0 -181
- package/src/components/dialog.tsx +0 -72
- package/src/components/diff-changes.tsx +0 -115
- package/src/components/dropdown-menu.css +0 -135
- package/src/components/dropdown-menu.tsx +0 -308
- package/src/components/icon-button.css +0 -181
- package/src/components/icon-button.tsx +0 -29
- package/src/components/icon.css +0 -39
- package/src/components/keybind.css +0 -18
- package/src/components/keybind.tsx +0 -20
- package/src/components/progress-circle.css +0 -16
- package/src/components/progress-circle.tsx +0 -64
- package/src/components/radio-group.css +0 -187
- package/src/components/radio-group.tsx +0 -83
- package/src/components/select.css +0 -201
- package/src/components/select.tsx +0 -174
- package/src/components/switch.css +0 -136
- package/src/components/switch.tsx +0 -29
- package/src/components/tabs.tsx +0 -126
- package/src/components/tag.css +0 -37
- package/src/components/tag.tsx +0 -22
- package/src/components/toast.css +0 -236
- package/src/components/toast.tsx +0 -185
- package/src/components/tooltip.css +0 -74
- package/src/components/tooltip.tsx +0 -163
- package/src/v2/components/accordion-v2.css +0 -139
- package/src/v2/components/accordion-v2.tsx +0 -86
- package/src/v2/components/button-v2.tsx +0 -35
- package/src/v2/components/checkbox-v2.css +0 -184
- package/src/v2/components/checkbox-v2.tsx +0 -65
- package/src/v2/components/diff-changes-v2.css +0 -26
- package/src/v2/components/icon-button-v2.tsx +0 -37
- package/src/v2/components/inline-input-v2.css +0 -225
- package/src/v2/components/inline-input-v2.tsx +0 -107
- package/src/v2/components/progress-circle-v2.css +0 -13
- package/src/v2/components/progress-circle-v2.tsx +0 -52
- package/src/v2/components/switch-v2.tsx +0 -28
- package/src/v2/components/tabs-v2.tsx +0 -149
- package/src/v2/components/text-shimmer-v2.css +0 -125
- package/src/v2/components/text-shimmer-v2.tsx +0 -63
- /package/dist/{components → forms/inline-input}/inline-input.d.ts +0 -0
- /package/dist/{v2/components → navigation}/tab-state-indicator.d.ts +0 -0
- /package/src/{v2/components/icon-button-v2.css → actions/icon-button/icon-button.css} +0 -0
- /package/src/{v2/components/avatar-v2.css → data-display/avatar/avatar.css} +0 -0
- /package/src/{v2/components/project-avatar-v2.css → data-display/project-avatar/project-avatar.css} +0 -0
- /package/src/{v2/components/loader-v2.css → feedback/loader/loader.css} +0 -0
- /package/src/{v2/components/toast-v2.css → feedback/toast/toast.css} +0 -0
- /package/src/{components → forms/inline-input}/inline-input.css +0 -0
- /package/src/{components → forms/inline-input}/inline-input.tsx +0 -0
- /package/src/{v2/components/radio-v2.css → forms/radio/radio.css} +0 -0
- /package/src/{v2/components/textarea-v2.css → forms/textarea/textarea.css} +0 -0
- /package/src/{v2/components/divider-v2.css → layout/divider/divider.css} +0 -0
- /package/src/{v2/components → navigation}/tab-state-indicator.tsx +0 -0
- /package/src/{v2/components/file-tree-v2.css → styles/file-tree.css} +0 -0
- /package/src/{v2/styles/tailwind.css → styles/tokens/index.css} +0 -0
package/src/i18n/tk.ts
CHANGED
|
@@ -10,7 +10,7 @@ export const dict: Record<string, string> = {
|
|
|
10
10
|
"ui.sessionReview.change.added": "Goşuldy",
|
|
11
11
|
"ui.sessionReview.change.removed": "Aýyryldy",
|
|
12
12
|
"ui.sessionReview.change.modified": "Üýtgedildi",
|
|
13
|
-
"ui.sessionReview.image.loading": "Adingüklenýär
|
|
13
|
+
"ui.sessionReview.image.loading": "Adingüklenýär …",
|
|
14
14
|
"ui.sessionReview.image.placeholder": "Surat",
|
|
15
15
|
"ui.sessionReview.largeDiff.title": "Görkezmek üçin gaty uly tapawut",
|
|
16
16
|
"ui.sessionReview.largeDiff.meta": "Çäk: {{limit}} üýtgedilen setirler. Häzirki: {{current}} setirleri üýtgetdi.",
|
|
@@ -28,7 +28,7 @@ export const dict: Record<string, string> = {
|
|
|
28
28
|
"ui.sessionReviewV2.empty.noGit.title": "Gözegçilik edilmedi",
|
|
29
29
|
"ui.sessionReviewV2.empty.noGit.description": "Bu taslamadaky üýtgeşmeleri yzarlaň, gözden geçiriň we yzyna alyň",
|
|
30
30
|
"ui.sessionReviewV2.empty.noGit.action": "Git ammary dörediň",
|
|
31
|
-
"ui.sessionReviewV2.empty.noGit.actionLoading": "Git ammaryny döretmek
|
|
31
|
+
"ui.sessionReviewV2.empty.noGit.actionLoading": "Git ammaryny döretmek …",
|
|
32
32
|
"ui.sessionReviewV2.empty.changes.title": "Entek faýl üýtgemeýär",
|
|
33
33
|
"ui.sessionReviewV2.empty.changes.description": "Taslama üýtgeşmeleri şu ýerde peýda bolar",
|
|
34
34
|
"ui.sessionReview.openFile": "Faýl açyň",
|
|
@@ -37,7 +37,7 @@ export const dict: Record<string, string> = {
|
|
|
37
37
|
"ui.fileMedia.kind.image": "şekil",
|
|
38
38
|
"ui.fileMedia.kind.audio": "ses",
|
|
39
39
|
"ui.fileMedia.state.removed": "{{kind}} faýly aýryldy.",
|
|
40
|
-
"ui.fileMedia.state.loading": "{{kind}} ýüklenýär
|
|
40
|
+
"ui.fileMedia.state.loading": "{{kind}} ýüklenýär …",
|
|
41
41
|
"ui.fileMedia.state.error": "{{kind}} ýükläp bolmaýar.",
|
|
42
42
|
"ui.fileMedia.state.unavailable": "{{kind}} deslapky syn elýeterli däl.",
|
|
43
43
|
"ui.fileMedia.binary.title": "Ikilik faýl",
|
|
@@ -69,7 +69,7 @@ export const dict: Record<string, string> = {
|
|
|
69
69
|
"ui.sessionTurn.error.addCredits": "Karz goşuň",
|
|
70
70
|
"dialog.usageExceeded.freeTier.title": "Mugt çäk ýetdi",
|
|
71
71
|
"dialog.usageExceeded.freeTier.description":
|
|
72
|
-
"Iň oňat açyk çeşme modellerine ygtybarly girmek üçin aýda
|
|
72
|
+
"Iň oňat açyk çeşme modellerine ygtybarly girmek üçin aýda 5 $ -dan başlap, OpenCode Go-a ýazylyň.",
|
|
73
73
|
"dialog.usageExceeded.freeTier.actionLabel": "Abuna ýazylyň",
|
|
74
74
|
"dialog.usageExceeded.accountRateLimit.title": "Çäklendirildi",
|
|
75
75
|
"dialog.usageExceeded.accountRateLimit.description":
|
|
@@ -115,8 +115,8 @@ export const dict: Record<string, string> = {
|
|
|
115
115
|
"ui.promptInput.dropFiles": "Birikdirmek üçin faýllary taşlaň",
|
|
116
116
|
"ui.promptInput.removeAttachment": "Goşundyny aýyryň",
|
|
117
117
|
"ui.promptInput.label": "Prompt",
|
|
118
|
-
"ui.promptInput.placeholder.shell": "Shell buýrugyny giriziň
|
|
119
|
-
"ui.promptInput.placeholder.normal": "Islän zadyňyzy soraň, buýruklar üçin {{slash}}, kontekst üçin {{at}}
|
|
118
|
+
"ui.promptInput.placeholder.shell": "Shell buýrugyny giriziň …",
|
|
119
|
+
"ui.promptInput.placeholder.normal": "Islän zadyňyzy soraň, buýruklar üçin {{slash}}, kontekst üçin {{at}} …",
|
|
120
120
|
"ui.promptInput.add": "Suratlar we faýllar goşuň",
|
|
121
121
|
"ui.promptInput.attachments": "Suratlar we faýllar",
|
|
122
122
|
"ui.promptInput.context": "Kontekst",
|
|
@@ -143,8 +143,6 @@ export const dict: Record<string, string> = {
|
|
|
143
143
|
"ui.tool.websearch.provider": "{{provider}} Web gözlegi",
|
|
144
144
|
"ui.tool.shell": "Shell",
|
|
145
145
|
"ui.tool.patch": "Patch",
|
|
146
|
-
"ui.tool.todos": "Edilmeli işler",
|
|
147
|
-
"ui.tool.todos.read": "Edilmeli zatlary okaň",
|
|
148
146
|
"ui.tool.questions": "Soraglar",
|
|
149
147
|
"ui.tool.questions.numbered": "Soraglar {{number}}",
|
|
150
148
|
"ui.tool.agent": "{{type}} Agenti",
|
|
@@ -193,5 +191,5 @@ export const dict: Record<string, string> = {
|
|
|
193
191
|
"ui.question.review.notAnswered": "(jogap berilmedi)",
|
|
194
192
|
"ui.question.multiHint": "Appliceshli jogaplary saýlaň",
|
|
195
193
|
"ui.question.singleHint": "Bir jogap saýlaň",
|
|
196
|
-
"ui.question.custom.placeholder": "Jogabyňyzy ýazyň
|
|
194
|
+
"ui.question.custom.placeholder": "Jogabyňyzy ýazyň …",
|
|
197
195
|
}
|
package/src/i18n/tr.ts
CHANGED
|
@@ -18,7 +18,7 @@ export const dict = {
|
|
|
18
18
|
"ui.sessionReview.change.added": "Eklendi",
|
|
19
19
|
"ui.sessionReview.change.removed": "Kaldırıldı",
|
|
20
20
|
"ui.sessionReview.change.modified": "Değiştirildi",
|
|
21
|
-
"ui.sessionReview.image.loading": "Yükleniyor
|
|
21
|
+
"ui.sessionReview.image.loading": "Yükleniyor…",
|
|
22
22
|
"ui.sessionReview.image.placeholder": "Görsel",
|
|
23
23
|
"ui.sessionReview.largeDiff.title": "Fark görüntülenemeyecek kadar büyük",
|
|
24
24
|
"ui.sessionReview.largeDiff.meta": "Sınır: {{limit}} değişen satır. Mevcut: {{current}} değişen satır.",
|
|
@@ -36,14 +36,14 @@ export const dict = {
|
|
|
36
36
|
"ui.sessionReviewV2.empty.noGit.title": "İzlenen değişiklik yok",
|
|
37
37
|
"ui.sessionReviewV2.empty.noGit.description": "Bu projedeki değişiklikleri takip et, incele ve geri al",
|
|
38
38
|
"ui.sessionReviewV2.empty.noGit.action": "Git deposu oluştur",
|
|
39
|
-
"ui.sessionReviewV2.empty.noGit.actionLoading": "Git deposu oluşturuluyor
|
|
39
|
+
"ui.sessionReviewV2.empty.noGit.actionLoading": "Git deposu oluşturuluyor…",
|
|
40
40
|
"ui.sessionReviewV2.empty.changes.title": "Henüz dosya değişikliği yok",
|
|
41
41
|
"ui.sessionReviewV2.empty.changes.description": "Proje değişiklikleri burada görünecek",
|
|
42
42
|
|
|
43
43
|
"ui.fileMedia.kind.image": "görsel",
|
|
44
44
|
"ui.fileMedia.kind.audio": "ses",
|
|
45
45
|
"ui.fileMedia.state.removed": "{{kind}} dosyası kaldırıldı.",
|
|
46
|
-
"ui.fileMedia.state.loading": "{{kind}} yükleniyor
|
|
46
|
+
"ui.fileMedia.state.loading": "{{kind}} yükleniyor…",
|
|
47
47
|
"ui.fileMedia.state.error": "{{kind}} yüklenemedi.",
|
|
48
48
|
"ui.fileMedia.state.unavailable": "{{kind}} önizlemesi kullanılamıyor.",
|
|
49
49
|
"ui.fileMedia.binary.title": "İkili dosya",
|
|
@@ -79,7 +79,7 @@ export const dict = {
|
|
|
79
79
|
|
|
80
80
|
"dialog.usageExceeded.freeTier.title": "Ücretsiz sınıra ulaşıldı",
|
|
81
81
|
"dialog.usageExceeded.freeTier.description":
|
|
82
|
-
"En iyi açık kaynaklı modellere güvenilir erişim için
|
|
82
|
+
"En iyi açık kaynaklı modellere güvenilir erişim için OpenCode Go'ya abone olun. Aylık $5'ten başlar.",
|
|
83
83
|
"dialog.usageExceeded.freeTier.actionLabel": "Abone ol",
|
|
84
84
|
"dialog.usageExceeded.accountRateLimit.title": "Go sınırına ulaşıldı",
|
|
85
85
|
"dialog.usageExceeded.accountRateLimit.description":
|
|
@@ -126,8 +126,8 @@ export const dict = {
|
|
|
126
126
|
"ui.promptInput.dropFiles": "Eklemek için dosyaları bırakın",
|
|
127
127
|
"ui.promptInput.removeAttachment": "Eki kaldır",
|
|
128
128
|
"ui.promptInput.label": "İstem",
|
|
129
|
-
"ui.promptInput.placeholder.shell": "Kabuk komutu girin
|
|
130
|
-
"ui.promptInput.placeholder.normal": "Bir şey sorun, {{slash}} komutlar için, {{at}} bağlam için
|
|
129
|
+
"ui.promptInput.placeholder.shell": "Kabuk komutu girin…",
|
|
130
|
+
"ui.promptInput.placeholder.normal": "Bir şey sorun, {{slash}} komutlar için, {{at}} bağlam için…",
|
|
131
131
|
"ui.promptInput.add": "Görsel ve dosya ekle",
|
|
132
132
|
"ui.promptInput.attachments": "Görseller ve dosyalar",
|
|
133
133
|
"ui.promptInput.context": "Bağlam",
|
|
@@ -157,8 +157,6 @@ export const dict = {
|
|
|
157
157
|
"ui.tool.websearch.provider": "{{provider}} Web araması",
|
|
158
158
|
"ui.tool.shell": "Kabuk",
|
|
159
159
|
"ui.tool.patch": "Yama",
|
|
160
|
-
"ui.tool.todos": "Görevler",
|
|
161
|
-
"ui.tool.todos.read": "Görevleri oku",
|
|
162
160
|
"ui.tool.questions": "Sorular",
|
|
163
161
|
"ui.tool.questions.numbered": "Sorular {{number}}",
|
|
164
162
|
"ui.tool.agent": "{{type}} ajanı",
|
|
@@ -207,7 +205,7 @@ export const dict = {
|
|
|
207
205
|
"ui.question.review.notAnswered": "(yanıtlanmadı)",
|
|
208
206
|
"ui.question.multiHint": "Uygun olan tüm yanıtları seçin",
|
|
209
207
|
"ui.question.singleHint": "Bir yanıt seçin",
|
|
210
|
-
"ui.question.custom.placeholder": "Yanıtınızı yazın
|
|
208
|
+
"ui.question.custom.placeholder": "Yanıtınızı yazın…",
|
|
211
209
|
|
|
212
210
|
"ui.fileSearch.placeholder": "Bul",
|
|
213
211
|
"ui.fileSearch.previousMatch": "Önceki eşleşme",
|
package/src/i18n/uk.ts
CHANGED
|
@@ -10,7 +10,7 @@ export const dict: Record<string, string> = {
|
|
|
10
10
|
"ui.sessionReview.change.added": "Додано",
|
|
11
11
|
"ui.sessionReview.change.removed": "Видалено",
|
|
12
12
|
"ui.sessionReview.change.modified": "Змінено",
|
|
13
|
-
"ui.sessionReview.image.loading": "
|
|
13
|
+
"ui.sessionReview.image.loading": "Завантаження…",
|
|
14
14
|
"ui.sessionReview.image.placeholder": "Зображення",
|
|
15
15
|
"ui.sessionReview.largeDiff.title": "Завеликий diff для відображення",
|
|
16
16
|
"ui.sessionReview.largeDiff.meta": "Ліміт: {{limit}} змінених рядків. Зараз: {{current}} змінених рядків.",
|
|
@@ -28,7 +28,7 @@ export const dict: Record<string, string> = {
|
|
|
28
28
|
"ui.sessionReviewV2.empty.noGit.title": "Немає відстежуваних змін",
|
|
29
29
|
"ui.sessionReviewV2.empty.noGit.description": "Відстежуйте, переглядайте та скасовуйте зміни в цьому проєкті",
|
|
30
30
|
"ui.sessionReviewV2.empty.noGit.action": "Створити Git-репозиторій",
|
|
31
|
-
"ui.sessionReviewV2.empty.noGit.actionLoading": "Створення Git
|
|
31
|
+
"ui.sessionReviewV2.empty.noGit.actionLoading": "Створення Git-репозиторію…",
|
|
32
32
|
"ui.sessionReviewV2.empty.changes.title": "Змін у файлах ще немає",
|
|
33
33
|
"ui.sessionReviewV2.empty.changes.description": "Зміни проєкту з'являться тут",
|
|
34
34
|
|
|
@@ -39,7 +39,7 @@ export const dict: Record<string, string> = {
|
|
|
39
39
|
"ui.fileMedia.kind.image": "зображення",
|
|
40
40
|
"ui.fileMedia.kind.audio": "аудіо",
|
|
41
41
|
"ui.fileMedia.state.removed": "{{kind}} видалено",
|
|
42
|
-
"ui.fileMedia.state.loading": "Завантаження {{kind}}
|
|
42
|
+
"ui.fileMedia.state.loading": "Завантаження {{kind}}…",
|
|
43
43
|
"ui.fileMedia.state.error": "Не вдалося завантажити {{kind}}",
|
|
44
44
|
"ui.fileMedia.state.unavailable": "{{kind}} недоступне",
|
|
45
45
|
"ui.fileMedia.binary.title": "Двійковий файл",
|
|
@@ -77,7 +77,7 @@ export const dict: Record<string, string> = {
|
|
|
77
77
|
|
|
78
78
|
"dialog.usageExceeded.freeTier.title": "Безкоштовний ліміт вичерпано",
|
|
79
79
|
"dialog.usageExceeded.freeTier.description":
|
|
80
|
-
"Підпишіться на OpenCode Go
|
|
80
|
+
"Підпишіться на OpenCode Go для надійного доступу до найкращих моделей із відкритим кодом від $5 на місяць.",
|
|
81
81
|
"dialog.usageExceeded.freeTier.actionLabel": "Підписатися",
|
|
82
82
|
"dialog.usageExceeded.accountRateLimit.title": "Ліміт Go вичерпано",
|
|
83
83
|
"dialog.usageExceeded.accountRateLimit.description":
|
|
@@ -135,8 +135,8 @@ export const dict: Record<string, string> = {
|
|
|
135
135
|
"ui.promptInput.dropFiles": "Перетягніть файли, щоб прикріпити",
|
|
136
136
|
"ui.promptInput.removeAttachment": "Видалити вкладення",
|
|
137
137
|
"ui.promptInput.label": "Запит",
|
|
138
|
-
"ui.promptInput.placeholder.shell": "Введіть команду
|
|
139
|
-
"ui.promptInput.placeholder.normal": "Запитайте що завгодно, {{slash}} для команд, {{at}} для
|
|
138
|
+
"ui.promptInput.placeholder.shell": "Введіть команду оболонки…",
|
|
139
|
+
"ui.promptInput.placeholder.normal": "Запитайте що завгодно, {{slash}} для команд, {{at}} для контексту…",
|
|
140
140
|
"ui.promptInput.add": "Додати зображення та файли",
|
|
141
141
|
"ui.promptInput.attachments": "Зображення та файли",
|
|
142
142
|
"ui.promptInput.context": "Контекст",
|
|
@@ -167,8 +167,6 @@ export const dict: Record<string, string> = {
|
|
|
167
167
|
"ui.tool.websearch.provider": "{{provider}} Веб-пошук",
|
|
168
168
|
"ui.tool.shell": "Оболонка",
|
|
169
169
|
"ui.tool.patch": "Патч",
|
|
170
|
-
"ui.tool.todos": "Завдання",
|
|
171
|
-
"ui.tool.todos.read": "Читати завдання",
|
|
172
170
|
"ui.tool.questions": "Запитання",
|
|
173
171
|
"ui.tool.questions.numbered": "Запитання {{number}}",
|
|
174
172
|
"ui.tool.agent": "Агент {{type}}",
|
|
@@ -224,5 +222,5 @@ export const dict: Record<string, string> = {
|
|
|
224
222
|
"ui.question.review.notAnswered": "(не відповіли)",
|
|
225
223
|
"ui.question.multiHint": "Виберіть усі відповідні варіанти",
|
|
226
224
|
"ui.question.singleHint": "Виберіть одну відповідь",
|
|
227
|
-
"ui.question.custom.placeholder": "Введіть свою
|
|
225
|
+
"ui.question.custom.placeholder": "Введіть свою відповідь…",
|
|
228
226
|
}
|
package/src/i18n/ur.ts
CHANGED
|
@@ -10,7 +10,7 @@ export const dict: Record<string, string> = {
|
|
|
10
10
|
"ui.sessionReview.change.added": "شامل کیا گیا۔",
|
|
11
11
|
"ui.sessionReview.change.removed": "ہٹا دیا گیا۔",
|
|
12
12
|
"ui.sessionReview.change.modified": "ترمیم شدہ",
|
|
13
|
-
"ui.sessionReview.image.loading": "لوڈ ہو رہا
|
|
13
|
+
"ui.sessionReview.image.loading": "لوڈ ہو رہا ہے…",
|
|
14
14
|
"ui.sessionReview.image.placeholder": "تصویر",
|
|
15
15
|
"ui.sessionReview.largeDiff.title": "دکھانے کے لیے تبدیلیاں بہت زیادہ ہیں",
|
|
16
16
|
"ui.sessionReview.largeDiff.meta": "حد: {{limit}} تبدیل شدہ لائنیں۔ موجودہ: {{current}} تبدیل شدہ لائنیں۔",
|
|
@@ -29,7 +29,7 @@ export const dict: Record<string, string> = {
|
|
|
29
29
|
"ui.sessionReviewV2.empty.noGit.description":
|
|
30
30
|
"اس پروجیکٹ میں تبدیلیوں کو ٹریک کریں، ان کا جائزہ لیں اور ان کو کالعدم کریں۔",
|
|
31
31
|
"ui.sessionReviewV2.empty.noGit.action": "Git ریپوزٹری بنائیں",
|
|
32
|
-
"ui.sessionReviewV2.empty.noGit.actionLoading": "Git ریپوزٹری بنائی جا رہی
|
|
32
|
+
"ui.sessionReviewV2.empty.noGit.actionLoading": "Git ریپوزٹری بنائی جا رہی ہے…",
|
|
33
33
|
"ui.sessionReviewV2.empty.changes.title": "ابھی تک کوئی فائل تبدیل نہیں ہوئی ہے۔",
|
|
34
34
|
"ui.sessionReviewV2.empty.changes.description": "پروجیکٹ کی تبدیلیاں یہاں ظاہر ہوں گی۔",
|
|
35
35
|
"ui.sessionReview.openFile": "فائل کھولیں۔",
|
|
@@ -38,7 +38,7 @@ export const dict: Record<string, string> = {
|
|
|
38
38
|
"ui.fileMedia.kind.image": "تصویر",
|
|
39
39
|
"ui.fileMedia.kind.audio": "آڈیو",
|
|
40
40
|
"ui.fileMedia.state.removed": "{{kind}} کی فائل ہٹا دی گئی۔",
|
|
41
|
-
"ui.fileMedia.state.loading": "{{kind}} لوڈ ہو رہا
|
|
41
|
+
"ui.fileMedia.state.loading": "{{kind}} لوڈ ہو رہا ہے…",
|
|
42
42
|
"ui.fileMedia.state.error": "{{kind}} لوڈ کرنے سے قاصر۔",
|
|
43
43
|
"ui.fileMedia.state.unavailable": "{{kind}} پیش نظارہ دستیاب نہیں ہے۔",
|
|
44
44
|
"ui.fileMedia.binary.title": "بائنری فائل",
|
|
@@ -70,7 +70,7 @@ export const dict: Record<string, string> = {
|
|
|
70
70
|
"ui.sessionTurn.error.addCredits": "کریڈٹ شامل کریں۔",
|
|
71
71
|
"dialog.usageExceeded.freeTier.title": "مفت استعمال کی حد پوری ہو گئی",
|
|
72
72
|
"dialog.usageExceeded.freeTier.description":
|
|
73
|
-
"$
|
|
73
|
+
"$5/ماہ سے شروع ہونے والے بہترین اوپن سورس ماڈلز تک قابل اعتماد رسائی کے لیے OpenCode Go کو سبسکرائب کریں۔",
|
|
74
74
|
"dialog.usageExceeded.freeTier.actionLabel": "سبسکرائب کریں۔",
|
|
75
75
|
"dialog.usageExceeded.accountRateLimit.title": "Go حد تک پہنچ گئی۔",
|
|
76
76
|
"dialog.usageExceeded.accountRateLimit.description":
|
|
@@ -116,8 +116,8 @@ export const dict: Record<string, string> = {
|
|
|
116
116
|
"ui.promptInput.dropFiles": "منسلک کرنے کے لیے فائلیں یہاں چھوڑیں",
|
|
117
117
|
"ui.promptInput.removeAttachment": "منسلکہ ہٹائیں",
|
|
118
118
|
"ui.promptInput.label": "پرامپٹ",
|
|
119
|
-
"ui.promptInput.placeholder.shell": "شیل کمانڈ درج
|
|
120
|
-
"ui.promptInput.placeholder.normal": "کچھ بھی پوچھیں، {{slash}} کمانڈز کے لیے، {{at}} سیاق و سباق کے
|
|
119
|
+
"ui.promptInput.placeholder.shell": "شیل کمانڈ درج کریں…",
|
|
120
|
+
"ui.promptInput.placeholder.normal": "کچھ بھی پوچھیں، {{slash}} کمانڈز کے لیے، {{at}} سیاق و سباق کے لیے…",
|
|
121
121
|
"ui.promptInput.add": "تصاویر اور فائلیں شامل کریں",
|
|
122
122
|
"ui.promptInput.attachments": "تصاویر اور فائلیں",
|
|
123
123
|
"ui.promptInput.context": "سیاق و سباق",
|
|
@@ -144,8 +144,6 @@ export const dict: Record<string, string> = {
|
|
|
144
144
|
"ui.tool.websearch.provider": "{{provider}} ویب تلاش",
|
|
145
145
|
"ui.tool.shell": "شیل",
|
|
146
146
|
"ui.tool.patch": "پیچ",
|
|
147
|
-
"ui.tool.todos": "زیر التوا کام",
|
|
148
|
-
"ui.tool.todos.read": "زیر التوا کام پڑھیں",
|
|
149
147
|
"ui.tool.questions": "سوالات",
|
|
150
148
|
"ui.tool.questions.numbered": "سوالات {{number}}",
|
|
151
149
|
"ui.tool.agent": "{{type}} ایجنٹ",
|
|
@@ -194,5 +192,5 @@ export const dict: Record<string, string> = {
|
|
|
194
192
|
"ui.question.review.notAnswered": "(جواب نہیں دیا گیا)",
|
|
195
193
|
"ui.question.multiHint": "لاگو ہونے والے تمام جوابات کو منتخب کریں۔",
|
|
196
194
|
"ui.question.singleHint": "ایک جواب منتخب کریں۔",
|
|
197
|
-
"ui.question.custom.placeholder": "اپنا جواب ٹائپ
|
|
195
|
+
"ui.question.custom.placeholder": "اپنا جواب ٹائپ کریں…",
|
|
198
196
|
}
|
package/src/i18n/uz.ts
CHANGED
|
@@ -10,7 +10,7 @@ export const dict: Record<string, string> = {
|
|
|
10
10
|
"ui.sessionReview.change.added": "Qo'shilgan",
|
|
11
11
|
"ui.sessionReview.change.removed": "Oʻchirildi",
|
|
12
12
|
"ui.sessionReview.change.modified": "Oʻzgartirilgan",
|
|
13
|
-
"ui.sessionReview.image.loading": "Yuklanmoqda
|
|
13
|
+
"ui.sessionReview.image.loading": "Yuklanmoqda…",
|
|
14
14
|
"ui.sessionReview.image.placeholder": "Rasm",
|
|
15
15
|
"ui.sessionReview.largeDiff.title": "Farq koʻrsatish uchun juda katta",
|
|
16
16
|
"ui.sessionReview.largeDiff.meta":
|
|
@@ -30,7 +30,7 @@ export const dict: Record<string, string> = {
|
|
|
30
30
|
"ui.sessionReviewV2.empty.noGit.description":
|
|
31
31
|
"Ushbu loyihadagi oʻzgarishlarni kuzating, koʻrib chiqing va bekor qiling",
|
|
32
32
|
"ui.sessionReviewV2.empty.noGit.action": "Git omborini yarating",
|
|
33
|
-
"ui.sessionReviewV2.empty.noGit.actionLoading": "Git ombori yaratilmoqda
|
|
33
|
+
"ui.sessionReviewV2.empty.noGit.actionLoading": "Git ombori yaratilmoqda…",
|
|
34
34
|
"ui.sessionReviewV2.empty.changes.title": "Hozircha fayl oʻzgarmadi",
|
|
35
35
|
"ui.sessionReviewV2.empty.changes.description": "Loyiha o'zgarishlari shu yerda paydo bo'ladi",
|
|
36
36
|
"ui.sessionReview.openFile": "Faylni ochish",
|
|
@@ -39,7 +39,7 @@ export const dict: Record<string, string> = {
|
|
|
39
39
|
"ui.fileMedia.kind.image": "tasvir",
|
|
40
40
|
"ui.fileMedia.kind.audio": "audio",
|
|
41
41
|
"ui.fileMedia.state.removed": "{{kind}} fayli olib tashlandi.",
|
|
42
|
-
"ui.fileMedia.state.loading": "{{kind}} yuklanmoqda
|
|
42
|
+
"ui.fileMedia.state.loading": "{{kind}} yuklanmoqda…",
|
|
43
43
|
"ui.fileMedia.state.error": "{{kind}} yuklanmadi.",
|
|
44
44
|
"ui.fileMedia.state.unavailable": "{{kind}} oldindan koʻrish mavjud emas.",
|
|
45
45
|
"ui.fileMedia.binary.title": "Ikkilik fayl",
|
|
@@ -71,7 +71,7 @@ export const dict: Record<string, string> = {
|
|
|
71
71
|
"ui.sessionTurn.error.addCredits": "Kredit qo'shing",
|
|
72
72
|
"dialog.usageExceeded.freeTier.title": "Bepul chegaraga yetdi",
|
|
73
73
|
"dialog.usageExceeded.freeTier.description":
|
|
74
|
-
"Oyiga $
|
|
74
|
+
"Oyiga $5 dan boshlab eng yaxshi ochiq kodli modellarga ishonchli kirish uchun OpenCode Go ga obuna bo'ling.",
|
|
75
75
|
"dialog.usageExceeded.freeTier.actionLabel": "Obuna boʻling",
|
|
76
76
|
"dialog.usageExceeded.accountRateLimit.title": "Oʻtish chegarasiga yetdi",
|
|
77
77
|
"dialog.usageExceeded.accountRateLimit.description":
|
|
@@ -117,9 +117,9 @@ export const dict: Record<string, string> = {
|
|
|
117
117
|
"ui.promptInput.dropFiles": "Biriktirish uchun fayllarni qoldiring",
|
|
118
118
|
"ui.promptInput.removeAttachment": "Qo'shimchani olib tashlang",
|
|
119
119
|
"ui.promptInput.label": "Tezkor",
|
|
120
|
-
"ui.promptInput.placeholder.shell": "Shell buyrug'ini kiriting
|
|
120
|
+
"ui.promptInput.placeholder.shell": "Shell buyrug'ini kiriting…",
|
|
121
121
|
"ui.promptInput.placeholder.normal":
|
|
122
|
-
"Har qanday narsani so'rang, buyruqlar uchun {{slash}}, kontekst uchun {{at}}
|
|
122
|
+
"Har qanday narsani so'rang, buyruqlar uchun {{slash}}, kontekst uchun {{at}}…",
|
|
123
123
|
"ui.promptInput.add": "Rasmlar va fayllarni qo'shing",
|
|
124
124
|
"ui.promptInput.attachments": "Rasmlar va fayllar",
|
|
125
125
|
"ui.promptInput.context": "Kontekst",
|
|
@@ -146,8 +146,6 @@ export const dict: Record<string, string> = {
|
|
|
146
146
|
"ui.tool.websearch.provider": "{{provider}} veb-qidiruv",
|
|
147
147
|
"ui.tool.shell": "Shell",
|
|
148
148
|
"ui.tool.patch": "Yamoq",
|
|
149
|
-
"ui.tool.todos": "Vazifalar",
|
|
150
|
-
"ui.tool.todos.read": "Vazifalarni o'qing",
|
|
151
149
|
"ui.tool.questions": "Savollar",
|
|
152
150
|
"ui.tool.questions.numbered": "Savollar {{number}}",
|
|
153
151
|
"ui.tool.agent": "{{type}} agenti",
|
|
@@ -196,5 +194,5 @@ export const dict: Record<string, string> = {
|
|
|
196
194
|
"ui.question.review.notAnswered": "(javob berilmagan)",
|
|
197
195
|
"ui.question.multiHint": "Barcha tegishli javoblarni tanlang",
|
|
198
196
|
"ui.question.singleHint": "Bitta javobni tanlang",
|
|
199
|
-
"ui.question.custom.placeholder": "Javobingizni yozing
|
|
197
|
+
"ui.question.custom.placeholder": "Javobingizni yozing…",
|
|
200
198
|
}
|
package/src/i18n/vi.ts
CHANGED
|
@@ -10,7 +10,7 @@ export const dict: Record<string, string> = {
|
|
|
10
10
|
"ui.sessionReview.change.added": "Đã thêm",
|
|
11
11
|
"ui.sessionReview.change.removed": "Đã xóa",
|
|
12
12
|
"ui.sessionReview.change.modified": "Đã sửa đổi",
|
|
13
|
-
"ui.sessionReview.image.loading": "Đang tải
|
|
13
|
+
"ui.sessionReview.image.loading": "Đang tải…",
|
|
14
14
|
"ui.sessionReview.image.placeholder": "Hình ảnh",
|
|
15
15
|
"ui.sessionReview.largeDiff.title": "Diff quá lớn để hiển thị",
|
|
16
16
|
"ui.sessionReview.largeDiff.meta": "Giới hạn: {{limit}} dòng thay đổi. Hiện tại: {{current}} dòng thay đổi.",
|
|
@@ -28,7 +28,7 @@ export const dict: Record<string, string> = {
|
|
|
28
28
|
"ui.sessionReviewV2.empty.noGit.title": "Không có thay đổi nào được theo dõi",
|
|
29
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
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
|
|
31
|
+
"ui.sessionReviewV2.empty.noGit.actionLoading": "Đang tạo kho lưu trữ Git…",
|
|
32
32
|
"ui.sessionReviewV2.empty.changes.title": "Chưa có thay đổi tệp nào",
|
|
33
33
|
"ui.sessionReviewV2.empty.changes.description": "Những thay đổi của dự án sẽ xuất hiện ở đây",
|
|
34
34
|
"ui.sessionReview.openFile": "Mở tệp",
|
|
@@ -37,7 +37,7 @@ export const dict: Record<string, string> = {
|
|
|
37
37
|
"ui.fileMedia.kind.image": "hình ảnh",
|
|
38
38
|
"ui.fileMedia.kind.audio": "âm thanh",
|
|
39
39
|
"ui.fileMedia.state.removed": "Đã xóa tệp {{kind}}.",
|
|
40
|
-
"ui.fileMedia.state.loading": "Đang tải {{kind}}
|
|
40
|
+
"ui.fileMedia.state.loading": "Đang tải {{kind}}…",
|
|
41
41
|
"ui.fileMedia.state.error": "Không thể tải {{kind}}.",
|
|
42
42
|
"ui.fileMedia.state.unavailable": "Không thể xem trước {{kind}}.",
|
|
43
43
|
"ui.fileMedia.binary.title": "Tệp nhị phân",
|
|
@@ -69,7 +69,7 @@ export const dict: Record<string, string> = {
|
|
|
69
69
|
"ui.sessionTurn.error.addCredits": "Thêm số dư",
|
|
70
70
|
"dialog.usageExceeded.freeTier.title": "Đã đạt đến giới hạn miễn phí",
|
|
71
71
|
"dialog.usageExceeded.freeTier.description":
|
|
72
|
-
"Đăng ký OpenCode Go
|
|
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
73
|
"dialog.usageExceeded.freeTier.actionLabel": "Đăng ký",
|
|
74
74
|
"dialog.usageExceeded.accountRateLimit.title": "Đã đạt giới hạn Go",
|
|
75
75
|
"dialog.usageExceeded.accountRateLimit.description":
|
|
@@ -115,8 +115,8 @@ export const dict: Record<string, string> = {
|
|
|
115
115
|
"ui.promptInput.dropFiles": "Thả tệp để đính kèm",
|
|
116
116
|
"ui.promptInput.removeAttachment": "Xóa tệp đính kèm",
|
|
117
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
|
|
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
120
|
"ui.promptInput.add": "Thêm hình ảnh và tệp",
|
|
121
121
|
"ui.promptInput.attachments": "Hình ảnh và tệp",
|
|
122
122
|
"ui.promptInput.context": "Ngữ cảnh",
|
|
@@ -143,8 +143,6 @@ export const dict: Record<string, string> = {
|
|
|
143
143
|
"ui.tool.websearch.provider": "{{provider}} Tìm kiếm trên web",
|
|
144
144
|
"ui.tool.shell": "Shell",
|
|
145
145
|
"ui.tool.patch": "Bản vá",
|
|
146
|
-
"ui.tool.todos": "Việc cần làm",
|
|
147
|
-
"ui.tool.todos.read": "Đọc việc cần làm",
|
|
148
146
|
"ui.tool.questions": "Câu hỏi",
|
|
149
147
|
"ui.tool.questions.numbered": "Câu hỏi {{number}}",
|
|
150
148
|
"ui.tool.agent": "Tác nhân {{type}}",
|
|
@@ -193,5 +191,5 @@ export const dict: Record<string, string> = {
|
|
|
193
191
|
"ui.question.review.notAnswered": "(chưa trả lời)",
|
|
194
192
|
"ui.question.multiHint": "Chọn tất cả các câu trả lời phù hợp",
|
|
195
193
|
"ui.question.singleHint": "Chọn một câu trả lời",
|
|
196
|
-
"ui.question.custom.placeholder": "Nhập câu trả lời của bạn
|
|
194
|
+
"ui.question.custom.placeholder": "Nhập câu trả lời của bạn…",
|
|
197
195
|
}
|
package/src/i18n/zh.ts
CHANGED
|
@@ -17,7 +17,7 @@ export const dict = {
|
|
|
17
17
|
"ui.sessionReview.change.added": "已添加",
|
|
18
18
|
"ui.sessionReview.change.removed": "已移除",
|
|
19
19
|
"ui.sessionReview.change.modified": "已修改",
|
|
20
|
-
"ui.sessionReview.image.loading": "
|
|
20
|
+
"ui.sessionReview.image.loading": "加载中…",
|
|
21
21
|
"ui.sessionReview.image.placeholder": "图片",
|
|
22
22
|
"ui.sessionReview.largeDiff.title": "差异过大,无法渲染",
|
|
23
23
|
"ui.sessionReview.largeDiff.meta": "限制:{{limit}} 行变更。当前:{{current}} 行变更。",
|
|
@@ -35,13 +35,13 @@ export const dict = {
|
|
|
35
35
|
"ui.sessionReviewV2.empty.noGit.title": "无已跟踪的变更",
|
|
36
36
|
"ui.sessionReviewV2.empty.noGit.description": "在此项目中跟踪、审查和撤销更改",
|
|
37
37
|
"ui.sessionReviewV2.empty.noGit.action": "创建 Git 仓库",
|
|
38
|
-
"ui.sessionReviewV2.empty.noGit.actionLoading": "正在创建 Git
|
|
38
|
+
"ui.sessionReviewV2.empty.noGit.actionLoading": "正在创建 Git 仓库…",
|
|
39
39
|
"ui.sessionReviewV2.empty.changes.title": "尚无文件变更",
|
|
40
40
|
"ui.sessionReviewV2.empty.changes.description": "项目变更将显示在此处",
|
|
41
41
|
"ui.fileMedia.kind.image": "图片",
|
|
42
42
|
"ui.fileMedia.kind.audio": "音频",
|
|
43
43
|
"ui.fileMedia.state.removed": "{{kind}}已移除",
|
|
44
|
-
"ui.fileMedia.state.loading": "正在加载{{kind}}
|
|
44
|
+
"ui.fileMedia.state.loading": "正在加载{{kind}}…",
|
|
45
45
|
"ui.fileMedia.state.error": "加载{{kind}}失败",
|
|
46
46
|
"ui.fileMedia.state.unavailable": "{{kind}}不可预览",
|
|
47
47
|
"ui.fileMedia.binary.title": "二进制文件",
|
|
@@ -76,7 +76,7 @@ export const dict = {
|
|
|
76
76
|
"ui.sessionTurn.error.addCredits": "充值",
|
|
77
77
|
|
|
78
78
|
"dialog.usageExceeded.freeTier.title": "免费额度已用完",
|
|
79
|
-
"dialog.usageExceeded.freeTier.description": "
|
|
79
|
+
"dialog.usageExceeded.freeTier.description": "订阅 OpenCode Go,可靠地使用最佳开源模型,每月 $5 起。",
|
|
80
80
|
"dialog.usageExceeded.freeTier.actionLabel": "订阅",
|
|
81
81
|
"dialog.usageExceeded.accountRateLimit.title": "Go 额度已用完",
|
|
82
82
|
"dialog.usageExceeded.accountRateLimit.description": "使用额度已达上限。如需立即继续使用此模型,请启用余额付费",
|
|
@@ -122,8 +122,8 @@ export const dict = {
|
|
|
122
122
|
"ui.promptInput.dropFiles": "拖放文件以添加附件",
|
|
123
123
|
"ui.promptInput.removeAttachment": "移除附件",
|
|
124
124
|
"ui.promptInput.label": "提示词",
|
|
125
|
-
"ui.promptInput.placeholder.shell": "输入 shell
|
|
126
|
-
"ui.promptInput.placeholder.normal": "随便问点什么, {{slash}} 可查看命令, {{at}}
|
|
125
|
+
"ui.promptInput.placeholder.shell": "输入 shell 命令…",
|
|
126
|
+
"ui.promptInput.placeholder.normal": "随便问点什么, {{slash}} 可查看命令, {{at}} 可添加上下文…",
|
|
127
127
|
"ui.promptInput.add": "添加图片和文件",
|
|
128
128
|
"ui.promptInput.attachments": "图片和文件",
|
|
129
129
|
"ui.promptInput.context": "上下文",
|
|
@@ -153,8 +153,6 @@ export const dict = {
|
|
|
153
153
|
"ui.tool.websearch.provider": "{{provider}} 网页搜索",
|
|
154
154
|
"ui.tool.shell": "Shell",
|
|
155
155
|
"ui.tool.patch": "补丁",
|
|
156
|
-
"ui.tool.todos": "待办",
|
|
157
|
-
"ui.tool.todos.read": "读取待办",
|
|
158
156
|
"ui.tool.questions": "问题",
|
|
159
157
|
"ui.tool.questions.numbered": "问题 {{number}}",
|
|
160
158
|
"ui.tool.agent": "{{type}} 智能体",
|
|
@@ -203,7 +201,7 @@ export const dict = {
|
|
|
203
201
|
"ui.question.review.notAnswered": "(未回答)",
|
|
204
202
|
"ui.question.multiHint": "选择所有适用的答案",
|
|
205
203
|
"ui.question.singleHint": "选择一个答案",
|
|
206
|
-
"ui.question.custom.placeholder": "
|
|
204
|
+
"ui.question.custom.placeholder": "输入你的答案…",
|
|
207
205
|
|
|
208
206
|
"ui.fileSearch.placeholder": "查找",
|
|
209
207
|
"ui.fileSearch.previousMatch": "上一个",
|
package/src/i18n/zht.ts
CHANGED
|
@@ -17,7 +17,7 @@ export const dict = {
|
|
|
17
17
|
"ui.sessionReview.change.added": "已新增",
|
|
18
18
|
"ui.sessionReview.change.removed": "已移除",
|
|
19
19
|
"ui.sessionReview.change.modified": "已修改",
|
|
20
|
-
"ui.sessionReview.image.loading": "
|
|
20
|
+
"ui.sessionReview.image.loading": "載入中…",
|
|
21
21
|
"ui.sessionReview.image.placeholder": "圖片",
|
|
22
22
|
"ui.sessionReview.largeDiff.title": "差異過大,無法顯示",
|
|
23
23
|
"ui.sessionReview.largeDiff.meta": "限制:{{limit}} 行變更。目前:{{current}} 行變更。",
|
|
@@ -35,13 +35,13 @@ export const dict = {
|
|
|
35
35
|
"ui.sessionReviewV2.empty.noGit.title": "沒有追蹤的變更",
|
|
36
36
|
"ui.sessionReviewV2.empty.noGit.description": "追蹤、檢閱及復原此專案中的變更",
|
|
37
37
|
"ui.sessionReviewV2.empty.noGit.action": "建立 Git 儲存庫",
|
|
38
|
-
"ui.sessionReviewV2.empty.noGit.actionLoading": "正在建立 Git
|
|
38
|
+
"ui.sessionReviewV2.empty.noGit.actionLoading": "正在建立 Git 儲存庫…",
|
|
39
39
|
"ui.sessionReviewV2.empty.changes.title": "尚無檔案變更",
|
|
40
40
|
"ui.sessionReviewV2.empty.changes.description": "專案變更會顯示在這裡",
|
|
41
41
|
"ui.fileMedia.kind.image": "圖片",
|
|
42
42
|
"ui.fileMedia.kind.audio": "音訊",
|
|
43
43
|
"ui.fileMedia.state.removed": "{{kind}}已移除",
|
|
44
|
-
"ui.fileMedia.state.loading": "正在載入{{kind}}
|
|
44
|
+
"ui.fileMedia.state.loading": "正在載入{{kind}}…",
|
|
45
45
|
"ui.fileMedia.state.error": "載入{{kind}}失敗",
|
|
46
46
|
"ui.fileMedia.state.unavailable": "{{kind}}無法預覽",
|
|
47
47
|
"ui.fileMedia.binary.title": "二進位檔案",
|
|
@@ -76,7 +76,7 @@ export const dict = {
|
|
|
76
76
|
"ui.sessionTurn.error.addCredits": "新增點數",
|
|
77
77
|
|
|
78
78
|
"dialog.usageExceeded.freeTier.title": "已達免費額度上限",
|
|
79
|
-
"dialog.usageExceeded.freeTier.description": "
|
|
79
|
+
"dialog.usageExceeded.freeTier.description": "訂閱 OpenCode Go,可靠地使用最佳開源模型,每月 $5 起。",
|
|
80
80
|
"dialog.usageExceeded.freeTier.actionLabel": "訂閱",
|
|
81
81
|
"dialog.usageExceeded.accountRateLimit.title": "已達 Go 額度上限",
|
|
82
82
|
"dialog.usageExceeded.accountRateLimit.description": "已達使用額度上限。若要立即繼續使用此模型,請啟用可用餘額計費",
|
|
@@ -122,8 +122,8 @@ export const dict = {
|
|
|
122
122
|
"ui.promptInput.dropFiles": "拖放檔案以附加",
|
|
123
123
|
"ui.promptInput.removeAttachment": "移除附件",
|
|
124
124
|
"ui.promptInput.label": "提示詞",
|
|
125
|
-
"ui.promptInput.placeholder.shell": "輸入 shell
|
|
126
|
-
"ui.promptInput.placeholder.normal": "想問什麼都可以, {{slash}} 可使用命令, {{at}}
|
|
125
|
+
"ui.promptInput.placeholder.shell": "輸入 shell 命令…",
|
|
126
|
+
"ui.promptInput.placeholder.normal": "想問什麼都可以, {{slash}} 可使用命令, {{at}} 可加入上下文…",
|
|
127
127
|
"ui.promptInput.add": "新增圖片和檔案",
|
|
128
128
|
"ui.promptInput.attachments": "圖片和檔案",
|
|
129
129
|
"ui.promptInput.context": "上下文",
|
|
@@ -153,8 +153,6 @@ export const dict = {
|
|
|
153
153
|
"ui.tool.websearch.provider": "{{provider}} 網頁搜尋",
|
|
154
154
|
"ui.tool.shell": "Shell",
|
|
155
155
|
"ui.tool.patch": "修補",
|
|
156
|
-
"ui.tool.todos": "待辦",
|
|
157
|
-
"ui.tool.todos.read": "讀取待辦",
|
|
158
156
|
"ui.tool.questions": "問題",
|
|
159
157
|
"ui.tool.questions.numbered": "問題 {{number}}",
|
|
160
158
|
"ui.tool.agent": "{{type}} 代理程式",
|
|
@@ -203,7 +201,7 @@ export const dict = {
|
|
|
203
201
|
"ui.question.review.notAnswered": "(未回答)",
|
|
204
202
|
"ui.question.multiHint": "可多選",
|
|
205
203
|
"ui.question.singleHint": "選擇一個答案",
|
|
206
|
-
"ui.question.custom.placeholder": "
|
|
204
|
+
"ui.question.custom.placeholder": "輸入你的答案…",
|
|
207
205
|
|
|
208
206
|
"ui.fileSearch.placeholder": "搜尋",
|
|
209
207
|
"ui.fileSearch.previousMatch": "上一個",
|
|
@@ -1,6 +1,4 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
const icons = {
|
|
1
|
+
export const additionalIcons = {
|
|
4
2
|
"align-right": `<path d="M12.292 6.04167L16.2503 9.99998L12.292 13.9583M2.91699 9.99998H15.6253M17.0837 3.75V16.25" stroke="currentColor" stroke-linecap="square"/>`,
|
|
5
3
|
"arrow-up": `<path fill-rule="evenodd" clip-rule="evenodd" d="M9.99991 2.24121L16.0921 8.33343L15.2083 9.21731L10.6249 4.63397V17.5001H9.37492V4.63398L4.7916 9.21731L3.90771 8.33343L9.99991 2.24121Z" fill="currentColor"/>`,
|
|
6
4
|
"arrow-left": `<path d="M8.33464 4.58398L2.91797 10.0007L8.33464 15.4173M3.33464 10.0007H17.0846" stroke="currentColor" stroke-linecap="square"/>`,
|
|
@@ -10,6 +8,7 @@ const icons = {
|
|
|
10
8
|
prompt: `<path d="M14.5841 12.0807H17.9193V2.91406H5.6276V6.2474M14.5859 6.2474H2.08594V15.4141H5.0026V17.4974L8.7526 15.4141H14.5859V6.2474Z" stroke="currentColor" stroke-linecap="square"/>`,
|
|
11
9
|
brain: `<path d="M13.332 8.7487C11.4911 8.7487 9.9987 7.25631 9.9987 5.41536M6.66536 11.2487C8.50631 11.2487 9.9987 12.7411 9.9987 14.582M9.9987 2.78209L9.9987 17.0658M16.004 15.0475C17.1255 14.5876 17.9154 13.4849 17.9154 12.1978C17.9154 11.3363 17.5615 10.5575 16.9913 9.9987C17.5615 9.43991 17.9154 8.66108 17.9154 7.79962C17.9154 6.21199 16.7136 4.90504 15.1702 4.73878C14.7858 3.21216 13.4039 2.08203 11.758 2.08203C11.1171 2.08203 10.5162 2.25337 9.9987 2.55275C9.48117 2.25337 8.88032 2.08203 8.23944 2.08203C6.59353 2.08203 5.21157 3.21216 4.82722 4.73878C3.28377 4.90504 2.08203 6.21199 2.08203 7.79962C2.08203 8.66108 2.43585 9.43991 3.00609 9.9987C2.43585 10.5575 2.08203 11.3363 2.08203 12.1978C2.08203 13.4849 2.87191 14.5876 3.99339 15.0475C4.46688 16.7033 5.9917 17.9154 7.79962 17.9154C8.61335 17.9154 9.36972 17.6698 9.9987 17.2488C10.6277 17.6698 11.384 17.9154 12.1978 17.9154C14.0057 17.9154 15.5305 16.7033 16.004 15.0475Z" stroke="currentColor"/>`,
|
|
12
10
|
fork: `<path d="M2.91602 7.91406L2.91602 2.91406H7.91602M12.0827 2.91406H17.0827L17.0827 7.91406M9.99935 9.9974L9.99935 17.0807M9.99935 9.9974L3.33268 3.33073M9.99935 9.9974L16.666 3.33073" stroke="currentColor" stroke-linecap="square"/>`,
|
|
11
|
+
"workspace-isolated": `<g transform="translate(2 2)"><path d="M10.5 10.5V5.5H5.5V10.5H10.5Z" fill="currentColor"/><rect x="2.5" y="2.5" width="11" height="11" stroke="currentColor"/></g>`,
|
|
13
12
|
"bullet-list": `<path d="M9.58329 13.7497H17.0833M9.58329 6.24967H17.0833M6.24996 6.24967C6.24996 7.17015 5.50377 7.91634 4.58329 7.91634C3.66282 7.91634 2.91663 7.17015 2.91663 6.24967C2.91663 5.3292 3.66282 4.58301 4.58329 4.58301C5.50377 4.58301 6.24996 5.3292 6.24996 6.24967ZM6.24996 13.7497C6.24996 14.6701 5.50377 15.4163 4.58329 15.4163C3.66282 15.4163 2.91663 14.6701 2.91663 13.7497C2.91663 12.8292 3.66282 12.083 4.58329 12.083C5.50377 12.083 6.24996 12.8292 6.24996 13.7497Z" stroke="currentColor" stroke-linecap="square"/>`,
|
|
14
13
|
"check-small": `<path d="M6.5 11.4412L8.97059 13.5L13.5 6.5" stroke="currentColor" stroke-linecap="square"/>`,
|
|
15
14
|
"chevron-down": `<path d="M6.6665 8.33325L9.99984 11.6666L13.3332 8.33325" stroke="currentColor" stroke-linecap="square"/>`,
|
|
@@ -103,79 +102,14 @@ const icons = {
|
|
|
103
102
|
link: `<path d="M2.08334 12.0833L1.72979 11.7298L1.37624 12.0833L1.72979 12.4369L2.08334 12.0833ZM7.91668 17.9167L7.56312 18.2702L7.91668 18.6238L8.27023 18.2702L7.91668 17.9167ZM17.9167 7.91666L18.2702 8.27022L18.6238 7.91666L18.2702 7.56311L17.9167 7.91666ZM12.0833 2.08333L12.4369 1.72977L12.0833 1.37622L11.7298 1.72977L12.0833 2.08333ZM8.39646 5.06311L8.0429 5.41666L8.75001 6.12377L9.10356 5.77021L8.75001 5.41666L8.39646 5.06311ZM5.77023 9.10355L6.12378 8.74999L5.41668 8.04289L5.06312 8.39644L5.41668 8.74999L5.77023 9.10355ZM14.2298 10.8964L13.8762 11.25L14.5833 11.9571L14.9369 11.6035L14.5833 11.25L14.2298 10.8964ZM11.6036 14.9369L11.9571 14.5833L11.25 13.8762L10.8965 14.2298L11.25 14.5833L11.6036 14.9369ZM7.14646 12.1464L6.7929 12.5L7.50001 13.2071L7.85356 12.8535L7.50001 12.5L7.14646 12.1464ZM12.8536 7.85355L13.2071 7.49999L12.5 6.79289L12.1465 7.14644L12.5 7.49999L12.8536 7.85355ZM2.08334 12.0833L1.72979 12.4369L7.56312 18.2702L7.91668 17.9167L8.27023 17.5631L2.4369 11.7298L2.08334 12.0833ZM17.9167 7.91666L18.2702 7.56311L12.4369 1.72977L12.0833 2.08333L11.7298 2.43688L17.5631 8.27022L17.9167 7.91666ZM12.0833 2.08333L11.7298 1.72977L8.39646 5.06311L8.75001 5.41666L9.10356 5.77021L12.4369 2.43688L12.0833 2.08333ZM5.41668 8.74999L5.06312 8.39644L1.72979 11.7298L2.08334 12.0833L2.4369 12.4369L5.77023 9.10355L5.41668 8.74999ZM14.5833 11.25L14.9369 11.6035L18.2702 8.27022L17.9167 7.91666L17.5631 7.56311L14.2298 10.8964L14.5833 11.25ZM7.91668 17.9167L8.27023 18.2702L11.6036 14.9369L11.25 14.5833L10.8965 14.2298L7.56312 17.5631L7.91668 17.9167ZM7.50001 12.5L7.85356 12.8535L12.8536 7.85355L12.5 7.49999L12.1465 7.14644L7.14646 12.1464L7.50001 12.5Z" fill="currentColor"/>`,
|
|
104
103
|
providers: `<path d="M10.0001 4.37562V2.875M13 4.37793V2.87793M7.00014 4.37793V2.875M10 17.1279V15.6279M13 17.1279V15.6279M7 17.1279V15.6279M15.625 13.0029H17.125M15.625 7.00293H17.125M15.625 10.0029H17.125M2.875 10.0029H4.375M2.875 13.0029H4.375M2.875 7.00293H4.375M4.375 4.37793H15.625V15.6279H4.375V4.37793ZM12.6241 10.0022C12.6241 11.4519 11.4488 12.6272 9.99908 12.6272C8.54934 12.6272 7.37408 11.4519 7.37408 10.0022C7.37408 8.55245 8.54934 7.3772 9.99908 7.3772C11.4488 7.3772 12.6241 8.55245 12.6241 10.0022Z" stroke="currentColor" stroke-linecap="square"/>`,
|
|
105
104
|
models: `<path fill-rule="evenodd" clip-rule="evenodd" d="M17.5 10C12.2917 10 10 12.2917 10 17.5C10 12.2917 7.70833 10 2.5 10C7.70833 10 10 7.70833 10 2.5C10 7.70833 12.2917 10 17.5 10Z" stroke="currentColor"/>`,
|
|
105
|
+
appearance: `<path d="M2.707 14.707L14.707 2.707M2.707 9.06L9.06 2.707M2.707 3.413L3.413 2.707M8.354 14.707L14.707 8.354M14.000 14.706L14.706 14.000" stroke="currentColor" stroke-linecap="square"/>`,
|
|
106
|
+
notifications: `<path d="M15.389 7.278V9.611C15.389 10.593 15.389 11.389 15.389 11.389H11.833M6.056 11.389H2.5C2.5 11.389 2.5 10.593 2.5 9.611V4.278C2.5 3.296 2.5 2.5 2.5 2.5H9.945M6.056 11.389V13.611H8.944H11.833V11.389M6.056 11.389H11.833" stroke="currentColor"/><circle cx="14.5" cy="4.5" r="2" stroke="currentColor" fill="currentColor"/>`,
|
|
107
|
+
extensions: `<path d="M9.166 6.805V9.305M11.834 6.805V9.305M6.5 6.805V9.305M2.5 2.5V13.61H15.833V2.5H2.5Z" stroke="currentColor" stroke-linecap="square"/>`,
|
|
108
|
+
cube: `<path d="M10 2.5L16.5 6.25V13.75L10 17.5L3.5 13.75V6.25L10 2.5Z" stroke="currentColor"/><path d="M10 10L16.5 6.25M10 10V17.5M10 10L3.5 6.25" stroke="currentColor"/>`,
|
|
109
|
+
"post-skill": `<rect x="2.5" y="3.5" width="15" height="13" rx="1.5" stroke="currentColor"/><path d="M5.5 7.5H10.5M5.5 10.5H14.5" stroke="currentColor"/>`,
|
|
106
110
|
"arrow-undo-down": `<path d="M4.08333 11.0859L1.75 8.7526L4.08333 6.41927M2.33333 8.7526L12.5417 8.7526L12.5417 3.21094L7 3.21094" stroke="currentColor" stroke-width="1" stroke-linecap="square"/>`,
|
|
107
111
|
}
|
|
108
112
|
|
|
109
|
-
|
|
110
|
-
const symbol = (name: keyof typeof icons) => `opencode-icon-${name}`
|
|
111
|
-
let spriteInserted = false
|
|
112
|
-
|
|
113
|
-
function viewBox(name: keyof typeof icons) {
|
|
113
|
+
export function additionalIconViewBox(name: keyof typeof additionalIcons) {
|
|
114
114
|
return name === "magnifying-glass" || name === "arrow-undo-down" || name === "subagent" ? "0 0 16 16" : "0 0 20 20"
|
|
115
115
|
}
|
|
116
|
-
|
|
117
|
-
function ensureSprite() {
|
|
118
|
-
if (spriteInserted) return
|
|
119
|
-
if (typeof document === "undefined") return
|
|
120
|
-
if (document.getElementById(spriteID)) {
|
|
121
|
-
spriteInserted = true
|
|
122
|
-
return
|
|
123
|
-
}
|
|
124
|
-
const body = document.body as HTMLElement | null
|
|
125
|
-
if (!body) return
|
|
126
|
-
|
|
127
|
-
const svg = document.createElementNS("http://www.w3.org/2000/svg", "svg")
|
|
128
|
-
svg.id = spriteID
|
|
129
|
-
svg.setAttribute("aria-hidden", "true")
|
|
130
|
-
svg.setAttribute("width", "0")
|
|
131
|
-
svg.setAttribute("height", "0")
|
|
132
|
-
svg.style.position = "absolute"
|
|
133
|
-
svg.style.overflow = "hidden"
|
|
134
|
-
svg.innerHTML = Object.entries(icons)
|
|
135
|
-
.map(([name, path]) => {
|
|
136
|
-
const key = name as keyof typeof icons
|
|
137
|
-
return `<symbol id="${symbol(key)}" viewBox="${viewBox(key)}">${path}</symbol>`
|
|
138
|
-
})
|
|
139
|
-
.join("")
|
|
140
|
-
body.insertBefore(svg, body.firstChild)
|
|
141
|
-
spriteInserted = true
|
|
142
|
-
}
|
|
143
|
-
|
|
144
|
-
export interface IconProps extends ComponentProps<"svg"> {
|
|
145
|
-
name: keyof typeof icons
|
|
146
|
-
size?: "small" | "normal" | "medium" | "large"
|
|
147
|
-
}
|
|
148
|
-
|
|
149
|
-
export function Icon(props: IconProps) {
|
|
150
|
-
const [local, others] = splitProps(props, ["name", "size", "class", "classList"])
|
|
151
|
-
onMount(ensureSprite)
|
|
152
|
-
|
|
153
|
-
return (
|
|
154
|
-
<div
|
|
155
|
-
data-component="icon"
|
|
156
|
-
data-size={local.size || "normal"}
|
|
157
|
-
data-directional={
|
|
158
|
-
local.name === "arrow-left" ||
|
|
159
|
-
local.name === "arrow-right" ||
|
|
160
|
-
local.name === "chevron-left" ||
|
|
161
|
-
local.name === "chevron-right"
|
|
162
|
-
? true
|
|
163
|
-
: undefined
|
|
164
|
-
}
|
|
165
|
-
>
|
|
166
|
-
<svg
|
|
167
|
-
data-slot="icon-svg"
|
|
168
|
-
classList={{
|
|
169
|
-
...local.classList,
|
|
170
|
-
[local.class ?? ""]: !!local.class,
|
|
171
|
-
}}
|
|
172
|
-
fill="none"
|
|
173
|
-
viewBox={viewBox(local.name)}
|
|
174
|
-
aria-hidden="true"
|
|
175
|
-
{...others}
|
|
176
|
-
>
|
|
177
|
-
<use href={`#${symbol(local.name)}`} />
|
|
178
|
-
</svg>
|
|
179
|
-
</div>
|
|
180
|
-
)
|
|
181
|
-
}
|