@opencode/ui 0.0.0-dev-20088 → 0.0.0-dev-20092
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 +11 -2
- package/dist/i18n/ar.d.ts +97 -0
- package/dist/i18n/bg.d.ts +57 -0
- package/dist/i18n/br.d.ts +67 -0
- package/dist/i18n/bs.d.ts +67 -0
- package/dist/i18n/da.d.ts +57 -0
- package/dist/i18n/de.d.ts +57 -0
- package/dist/i18n/en.d.ts +6 -0
- package/dist/i18n/es.d.ts +67 -0
- package/dist/i18n/fr.d.ts +67 -0
- package/dist/i18n/he.d.ts +67 -0
- package/dist/i18n/ja.d.ts +57 -0
- package/dist/i18n/km.d.ts +57 -0
- package/dist/i18n/ko.d.ts +57 -0
- package/dist/i18n/lo.d.ts +57 -0
- package/dist/i18n/mk.d.ts +57 -0
- package/dist/i18n/mn.d.ts +57 -0
- package/dist/i18n/my.d.ts +57 -0
- package/dist/i18n/pl.d.ts +77 -0
- package/dist/i18n/ru.d.ts +77 -0
- package/dist/i18n/sr.d.ts +71 -4
- package/dist/i18n/tg.d.ts +57 -0
- package/dist/i18n/th.d.ts +57 -0
- package/dist/i18n/tr.d.ts +57 -0
- package/dist/i18n/zh.d.ts +57 -0
- package/dist/i18n/zht.d.ts +57 -0
- package/package.json +1 -1
- package/src/context/i18n.tsx +49 -5
- package/src/i18n/am.ts +57 -0
- package/src/i18n/ar.ts +98 -0
- package/src/i18n/az.ts +57 -0
- package/src/i18n/bg.ts +57 -0
- package/src/i18n/bn.ts +61 -0
- package/src/i18n/br.ts +69 -0
- package/src/i18n/bs.ts +67 -0
- package/src/i18n/ca.ts +67 -0
- package/src/i18n/cs.ts +77 -0
- package/src/i18n/da.ts +58 -0
- package/src/i18n/de.ts +58 -0
- package/src/i18n/dv.ts +64 -0
- package/src/i18n/dz.ts +59 -0
- package/src/i18n/el.ts +57 -0
- package/src/i18n/en.ts +6 -0
- package/src/i18n/es.ts +68 -0
- package/src/i18n/et.ts +57 -0
- package/src/i18n/fa.ts +59 -0
- package/src/i18n/fi.ts +58 -0
- package/src/i18n/fo.ts +57 -0
- package/src/i18n/fr.ts +68 -0
- package/src/i18n/he.ts +68 -0
- package/src/i18n/hi.ts +61 -0
- package/src/i18n/hr.ts +67 -0
- package/src/i18n/hu.ts +57 -0
- package/src/i18n/hy.ts +58 -0
- package/src/i18n/id.ts +58 -0
- package/src/i18n/is.ts +58 -0
- package/src/i18n/it.ts +69 -0
- package/src/i18n/ja.ts +58 -0
- package/src/i18n/ka.ts +58 -0
- package/src/i18n/km.ts +61 -3
- package/src/i18n/ko.ts +58 -0
- package/src/i18n/lo.ts +58 -0
- package/src/i18n/lt.ts +77 -0
- package/src/i18n/lv.ts +67 -0
- package/src/i18n/mk.ts +57 -0
- package/src/i18n/mn.ts +57 -0
- package/src/i18n/ms.ts +58 -0
- package/src/i18n/my.ts +58 -0
- package/src/i18n/ne.ts +61 -0
- package/src/i18n/nl.ts +58 -0
- package/src/i18n/no.ts +58 -0
- package/src/i18n/pa.ts +63 -0
- package/src/i18n/pl.ts +77 -0
- package/src/i18n/ro.ts +68 -0
- package/src/i18n/ru.ts +77 -0
- package/src/i18n/si.ts +61 -0
- package/src/i18n/sk.ts +85 -8
- package/src/i18n/sl.ts +85 -8
- package/src/i18n/sq.ts +57 -0
- package/src/i18n/sr.ts +71 -4
- package/src/i18n/sv.ts +58 -0
- package/src/i18n/tg.ts +58 -0
- package/src/i18n/th.ts +58 -0
- package/src/i18n/tk.ts +57 -0
- package/src/i18n/tr.ts +57 -0
- package/src/i18n/uk.ts +85 -8
- package/src/i18n/ur.ts +64 -0
- package/src/i18n/uz.ts +59 -2
- package/src/i18n/vi.ts +59 -1
- package/src/i18n/zh.ts +58 -0
- package/src/i18n/zht.ts +58 -0
package/dist/i18n/zht.d.ts
CHANGED
|
@@ -108,6 +108,8 @@ export declare const dict: {
|
|
|
108
108
|
"ui.promptInput.commands": string;
|
|
109
109
|
"ui.promptInput.dropFiles": string;
|
|
110
110
|
"ui.promptInput.removeAttachment": string;
|
|
111
|
+
"ui.promptInput.cancelUpload": string;
|
|
112
|
+
"ui.promptInput.uploading": string;
|
|
111
113
|
"ui.promptInput.label": string;
|
|
112
114
|
"ui.promptInput.placeholder.shell": string;
|
|
113
115
|
"ui.promptInput.placeholder.normal": string;
|
|
@@ -190,4 +192,59 @@ export declare const dict: {
|
|
|
190
192
|
"ui.toolErrorCard.copyError": string;
|
|
191
193
|
"ui.message.duration.seconds": string;
|
|
192
194
|
"ui.message.duration.minutesSeconds": string;
|
|
195
|
+
"ui.messagePart.context.match.one": string;
|
|
196
|
+
"ui.messagePart.context.match.other": string;
|
|
197
|
+
"ui.tool.execute": string;
|
|
198
|
+
"ui.tool.loadedFile": string;
|
|
199
|
+
"ui.tool.loadedSkill": string;
|
|
200
|
+
"ui.tool.shell.writingCommand": string;
|
|
201
|
+
"ui.tool.agent.delegating": string;
|
|
202
|
+
"ui.common.moreCount.one": string;
|
|
203
|
+
"ui.common.moreCount.other": string;
|
|
204
|
+
"ui.sessionTimeline.notice.model": string;
|
|
205
|
+
"ui.sessionTimeline.notice.movedTo": string;
|
|
206
|
+
"ui.sessionTimeline.notice.movedTooltip": string;
|
|
207
|
+
"ui.sessionTimeline.notice.failed": string;
|
|
208
|
+
"ui.sessionTimeline.notice.cancelled": string;
|
|
209
|
+
"ui.sessionTimeline.notice.finished": string;
|
|
210
|
+
"ui.sessionTimeline.notice.instructionsUpdated": string;
|
|
211
|
+
"ui.sessionTimeline.notice.restart": string;
|
|
212
|
+
"ui.promptInput.placeholder.followUp": string;
|
|
213
|
+
"ui.promptInput.steer": string;
|
|
214
|
+
"ui.promptInput.queue": string;
|
|
215
|
+
"ui.promptInput.steerHint": string;
|
|
216
|
+
"ui.tool.loadedSkills.one": string;
|
|
217
|
+
"ui.tool.loadedSkills.other": string;
|
|
218
|
+
"ui.tool.shell.exit": string;
|
|
219
|
+
"ui.tool.shell.timeout": string;
|
|
220
|
+
"ui.tool.shell.cancelled": string;
|
|
221
|
+
"ui.message.thought": string;
|
|
222
|
+
"ui.sessionTimeline.notice.modelSwitched": string;
|
|
223
|
+
"ui.sessionTurn.retry.attemptLabel": string;
|
|
224
|
+
"ui.sessionTurn.retry.attemptRetrying": string;
|
|
225
|
+
"ui.messagePart.context.notice.one": string;
|
|
226
|
+
"ui.messagePart.context.notice.other": string;
|
|
227
|
+
"ui.messagePart.context.thought.one": string;
|
|
228
|
+
"ui.messagePart.context.thought.other": string;
|
|
229
|
+
"ui.promptInput.dropFiles.image": string;
|
|
230
|
+
"ui.promptInput.dropFiles.pdf": string;
|
|
231
|
+
"ui.promptInput.dropFiles.imagePdf": string;
|
|
232
|
+
"ui.promptInput.exitShell": string;
|
|
233
|
+
"ui.sessionTimeline.notice.agentChanged": string;
|
|
234
|
+
"ui.sessionTurn.retry.attemptWaiting.one": string;
|
|
235
|
+
"ui.sessionTurn.retry.attemptWaiting.other": string;
|
|
236
|
+
"ui.sessionTurn.retry.attemptRetryingNow": string;
|
|
237
|
+
"ui.messagePart.compaction.started": string;
|
|
238
|
+
"ui.messagePart.compaction.running": string;
|
|
239
|
+
"ui.messagePart.compaction.failed": string;
|
|
240
|
+
"ui.messagePart.compaction.cancelled": string;
|
|
241
|
+
"ui.messagePart.compaction.interrupted": string;
|
|
242
|
+
"ui.messagePart.providerCompaction": string;
|
|
243
|
+
"ui.messagePart.compaction.usage": string;
|
|
244
|
+
"ui.messagePart.context.updates": string;
|
|
245
|
+
"ui.messagePart.tools.used.one": string;
|
|
246
|
+
"ui.messagePart.tools.used.other": string;
|
|
247
|
+
"ui.tool.browser": string;
|
|
248
|
+
"ui.common.fileCount.one": string;
|
|
249
|
+
"ui.common.fileCount.other": string;
|
|
193
250
|
};
|
package/package.json
CHANGED
package/src/context/i18n.tsx
CHANGED
|
@@ -9,11 +9,12 @@ export type UiPluralCategory = PluralCategory
|
|
|
9
9
|
export type UiI18nPluralLookupKey = PluralLookupKey
|
|
10
10
|
export type UiI18nLocaleKey = LocaleKey
|
|
11
11
|
type UiTranslationKey<Value extends string> = Value extends UiI18nPluralLookupKey ? never : Value
|
|
12
|
+
export type UiI18nOrdinaryKey = UiTranslationKey<UiI18nKey>
|
|
12
13
|
|
|
13
14
|
export type UiI18nParams = Record<string, string | number | boolean>
|
|
14
15
|
export type UiTranslate = <Value extends string>(key: UiTranslationKey<Value>, params?: UiI18nParams) => string
|
|
15
16
|
|
|
16
|
-
export type
|
|
17
|
+
export type UiI18nSource = {
|
|
17
18
|
locale: Accessor<string>
|
|
18
19
|
layoutLocale?: Accessor<string>
|
|
19
20
|
t: UiTranslate
|
|
@@ -21,6 +22,13 @@ export type UiI18n = {
|
|
|
21
22
|
pluralForm?: (key: UiI18nPluralKey, category: UiPluralCategory, params?: UiI18nParams) => string
|
|
22
23
|
}
|
|
23
24
|
|
|
25
|
+
export type UiI18n = UiI18nSource & {
|
|
26
|
+
/** Preserve runtime-generated English copy while using the keyed dictionary for every other locale. */
|
|
27
|
+
tDynamic: (key: UiI18nOrdinaryKey, source: string, params?: UiI18nParams) => string
|
|
28
|
+
list: (items: readonly string[]) => string
|
|
29
|
+
listSeparator: (index: number, count: number) => string
|
|
30
|
+
}
|
|
31
|
+
|
|
24
32
|
const rules = new Map<string, Intl.PluralRules>()
|
|
25
33
|
|
|
26
34
|
export function pluralCategory(locale: string, count: number): UiPluralCategory {
|
|
@@ -36,6 +44,21 @@ export function pluralKey(key: UiI18nPluralKey, category: UiPluralCategory) {
|
|
|
36
44
|
return `${key}.${category}` as UiI18nPluralLookupKey
|
|
37
45
|
}
|
|
38
46
|
|
|
47
|
+
export function localizedListSeparator(locale: string, index: number, count: number) {
|
|
48
|
+
if (index <= 0 || index >= count) return ""
|
|
49
|
+
const parts = new Intl.ListFormat(locale, { style: "long", type: "conjunction" }).formatToParts(
|
|
50
|
+
Array.from({ length: count }, (_, item) => String(item)),
|
|
51
|
+
)
|
|
52
|
+
const current = parts.findIndex((part) => part.type === "element" && part.value === String(index))
|
|
53
|
+
const previous = parts.findLastIndex(
|
|
54
|
+
(part, partIndex) => partIndex < current && part.type === "element" && part.value === String(index - 1),
|
|
55
|
+
)
|
|
56
|
+
return parts
|
|
57
|
+
.slice(previous + 1, current)
|
|
58
|
+
.map((part) => part.value)
|
|
59
|
+
.join("")
|
|
60
|
+
}
|
|
61
|
+
|
|
39
62
|
function resolveTemplate(text: string, params?: UiI18nParams) {
|
|
40
63
|
if (!params) return text
|
|
41
64
|
return text.replace(/{{\s*([^}]+?)\s*}}/g, (_, rawKey) => {
|
|
@@ -45,7 +68,26 @@ function resolveTemplate(text: string, params?: UiI18nParams) {
|
|
|
45
68
|
})
|
|
46
69
|
}
|
|
47
70
|
|
|
48
|
-
|
|
71
|
+
export function createUiI18n(source: UiI18nSource): UiI18n {
|
|
72
|
+
return {
|
|
73
|
+
...source,
|
|
74
|
+
tDynamic: (key, value, params) =>
|
|
75
|
+
source.locale().toLowerCase().split("-")[0] === "en" ? resolveTemplate(value, params) : source.t(key, params),
|
|
76
|
+
// English tool labels intentionally use comma-only lists; the animated count labels use the same punctuation.
|
|
77
|
+
list: (items) =>
|
|
78
|
+
source.locale().toLowerCase().split("-")[0] === "en"
|
|
79
|
+
? items.join(", ")
|
|
80
|
+
: new Intl.ListFormat(source.locale(), { style: "long", type: "conjunction" }).format(items),
|
|
81
|
+
listSeparator: (index, count) =>
|
|
82
|
+
source.locale().toLowerCase().split("-")[0] === "en"
|
|
83
|
+
? index > 0 && index < count
|
|
84
|
+
? ","
|
|
85
|
+
: ""
|
|
86
|
+
: localizedListSeparator(source.locale(), index, count),
|
|
87
|
+
}
|
|
88
|
+
}
|
|
89
|
+
|
|
90
|
+
const fallbackSource: UiI18nSource = {
|
|
49
91
|
locale: () => "en",
|
|
50
92
|
t: (key, params) => {
|
|
51
93
|
const value = en[key as UiI18nKey] ?? String(key)
|
|
@@ -59,13 +101,15 @@ const fallback: UiI18n = {
|
|
|
59
101
|
return resolveTemplate(value, params)
|
|
60
102
|
},
|
|
61
103
|
}
|
|
104
|
+
const fallback = createUiI18n(fallbackSource)
|
|
62
105
|
|
|
63
106
|
const Context = createContext<UiI18n>(fallback)
|
|
64
107
|
|
|
65
|
-
function UiI18nProvider(props: ParentProps<{ value:
|
|
108
|
+
function UiI18nProvider(props: ParentProps<{ value: UiI18nSource }>) {
|
|
109
|
+
const value = createUiI18n(props.value)
|
|
66
110
|
return (
|
|
67
|
-
<I18nProvider locale={(
|
|
68
|
-
<Context.Provider value={
|
|
111
|
+
<I18nProvider locale={(value.layoutLocale ?? value.locale)()}>
|
|
112
|
+
<Context.Provider value={value}>{props.children}</Context.Provider>
|
|
69
113
|
</I18nProvider>
|
|
70
114
|
)
|
|
71
115
|
}
|
package/src/i18n/am.ts
CHANGED
|
@@ -191,4 +191,61 @@ export const dict: Record<string, string> = {
|
|
|
191
191
|
"ui.question.multiHint": "የሚመለከተውን ሁሉንም መልሶች ይምረጡ",
|
|
192
192
|
"ui.question.singleHint": "አንድ መልስ ምረጥ",
|
|
193
193
|
"ui.question.custom.placeholder": "መልስዎን ይተይቡ…",
|
|
194
|
+
"ui.messagePart.context.match.one": "({{count}} ተዛማጅ)",
|
|
195
|
+
"ui.messagePart.context.match.other": "({{count}} ተዛማጆች)",
|
|
196
|
+
"ui.tool.execute": "አስፈጽም",
|
|
197
|
+
"ui.tool.loadedFile": "{{path}} ተጭኗል",
|
|
198
|
+
"ui.tool.loadedSkill": "የ{{name}} ክህሎት ተጭኗል",
|
|
199
|
+
"ui.tool.shell.writingCommand": "ትዕዛዝ በመጻፍ ላይ...",
|
|
200
|
+
"ui.tool.agent.delegating": "ለወኪል በማስተላለፍ ላይ...",
|
|
201
|
+
"ui.common.moreCount.one": "+{{count}} ተጨማሪ",
|
|
202
|
+
"ui.common.moreCount.other": "+{{count}} ተጨማሪ",
|
|
203
|
+
"ui.sessionTimeline.notice.model": "ሞዴል",
|
|
204
|
+
"ui.sessionTimeline.notice.movedTo": "ተንቀሳቅሷል ወደ",
|
|
205
|
+
"ui.sessionTimeline.notice.movedTooltip": "የክፍለ ጊዜው የሥራ ማውጫ ተቀይሯል",
|
|
206
|
+
"ui.sessionTimeline.notice.failed": "{{actor}} አልተሳካም",
|
|
207
|
+
"ui.sessionTimeline.notice.cancelled": "{{actor}} ተሰርዟል",
|
|
208
|
+
"ui.sessionTimeline.notice.finished": "{{actor}} ጨርሷል",
|
|
209
|
+
"ui.sessionTimeline.notice.instructionsUpdated": "መመሪያዎች ተዘምነዋል",
|
|
210
|
+
"ui.sessionTimeline.notice.restart": "ከዳግም ማስጀመር በኋላ በመቀጠል ላይ",
|
|
211
|
+
"ui.promptInput.placeholder.followUp": "ተከታይ መልዕክት ያክሉ፣ {{slash}} ለትዕዛዞች፣ {{at}} ለአውድ...",
|
|
212
|
+
"ui.promptInput.steer": "አቅጣጫ ስጥ",
|
|
213
|
+
"ui.promptInput.queue": "ወረፋ",
|
|
214
|
+
"ui.promptInput.steerHint": "ሳያቋርጡ ይላኩ",
|
|
215
|
+
"ui.tool.loadedSkills.one": "የ{{name}} ክህሎት ተጭኗል",
|
|
216
|
+
"ui.tool.loadedSkills.other": "የ{{name}} ክህሎቶች ተጭነዋል",
|
|
217
|
+
"ui.tool.shell.exit": "ትዕዛዙ በኮድ {{code}} ወጥቷል",
|
|
218
|
+
"ui.tool.shell.timeout": "የትዕዛዙ ጊዜ አልፏል",
|
|
219
|
+
"ui.tool.shell.cancelled": "ትዕዛዙ ተሰርዟል",
|
|
220
|
+
"ui.message.thought": "ሐሳብ",
|
|
221
|
+
"ui.sessionTimeline.notice.modelSwitched": "ወደ {{model}} ተቀይሯል",
|
|
222
|
+
"ui.sessionTurn.retry.attemptLabel": "ሙከራ {{attempt}}",
|
|
223
|
+
"ui.sessionTurn.retry.attemptRetrying": "ሙከራ {{attempt}} - {{line}}",
|
|
224
|
+
"ui.messagePart.context.notice.one": "{{count}} ማሳወቂያ",
|
|
225
|
+
"ui.messagePart.context.notice.other": "{{count}} ማሳወቂያዎች",
|
|
226
|
+
"ui.messagePart.context.thought.one": "ሐሳብ",
|
|
227
|
+
"ui.messagePart.context.thought.other": "ሐሳቦች",
|
|
228
|
+
"ui.promptInput.dropFiles.image": "ምስሎችን ወይም ፋይሎችን ለማከል ጣል",
|
|
229
|
+
"ui.promptInput.dropFiles.pdf": "PDF-ዎችን ወይም ፋይሎችን ለማከል ጣል",
|
|
230
|
+
"ui.promptInput.dropFiles.imagePdf": "ምስሎችን፣ PDF-ዎችን ወይም ፋይሎችን ለማከል ጣል",
|
|
231
|
+
"ui.promptInput.exitShell": "ውጣ",
|
|
232
|
+
"ui.sessionTimeline.notice.agentChanged": "ወኪሉ ተቀይሯል",
|
|
233
|
+
"ui.sessionTurn.retry.attemptWaiting.one": "ሙከራ {{attempt}} - በ{{count}} ሰከንድ ውስጥ እንደገና ይሞከራል",
|
|
234
|
+
"ui.sessionTurn.retry.attemptWaiting.other": "ሙከራ {{attempt}} - በ{{count}} ሰከንዶች ውስጥ እንደገና ይሞከራል",
|
|
235
|
+
"ui.sessionTurn.retry.attemptRetryingNow": "ሙከራ {{attempt}} - እንደገና በመሞከር ላይ",
|
|
236
|
+
"ui.messagePart.compaction.started": "ክፍለ ጊዜ መጨናነቅ ተጀመረ",
|
|
237
|
+
"ui.messagePart.compaction.running": "መጠቅለል",
|
|
238
|
+
"ui.messagePart.compaction.failed": "ክፍለ ጊዜ መጨናነቅ አልተሳካም",
|
|
239
|
+
"ui.messagePart.compaction.cancelled": "ክፍለ ጊዜ መጨናነቅ ተሰርዟል።",
|
|
240
|
+
"ui.messagePart.compaction.interrupted": "ክፍለ ጊዜ መጨናነቅ ተቋርጧል",
|
|
241
|
+
"ui.messagePart.providerCompaction": "ክፍለ ጊዜ በአቅራቢው የታመቀ",
|
|
242
|
+
"ui.messagePart.compaction.usage": "{{input}} ውስጥ · {{output}} ወጥቷል",
|
|
243
|
+
"ui.messagePart.tools.used.one": "ጥቅም ላይ የዋለ {{count}} {{tools}}",
|
|
244
|
+
"ui.messagePart.tools.used.other": "ጥቅም ላይ የዋለ {{count}} {{tools}}",
|
|
245
|
+
"ui.tool.browser": "አሳሽ",
|
|
246
|
+
"ui.common.fileCount.one": "{{count}} ፋይል",
|
|
247
|
+
"ui.common.fileCount.other": "{{count}} ፋይሎች",
|
|
248
|
+
"ui.messagePart.context.updates": "ዝማኔዎች",
|
|
249
|
+
"ui.promptInput.cancelUpload": "ስቀላን ሰርዝ",
|
|
250
|
+
"ui.promptInput.uploading": "{{percent}}%",
|
|
194
251
|
}
|
package/src/i18n/ar.ts
CHANGED
|
@@ -228,4 +228,102 @@ export const dict = {
|
|
|
228
228
|
"ui.toolErrorCard.copyError": "نسخ الخطأ",
|
|
229
229
|
"ui.message.duration.seconds": "{{count}}ث",
|
|
230
230
|
"ui.message.duration.minutesSeconds": "{{minutes}}د {{seconds}}ث",
|
|
231
|
+
"ui.messagePart.context.match.zero": "(عدد التطابقات: {{count}})",
|
|
232
|
+
"ui.messagePart.context.match.one": "({{count}} تطابق)",
|
|
233
|
+
"ui.messagePart.context.match.two": "(عدد التطابقات: {{count}})",
|
|
234
|
+
"ui.messagePart.context.match.few": "({{count}} تطابقات)",
|
|
235
|
+
"ui.messagePart.context.match.many": "({{count}} تطابقًا)",
|
|
236
|
+
"ui.messagePart.context.match.other": "(التطابقات: {{count}})",
|
|
237
|
+
"ui.tool.execute": "تنفيذ",
|
|
238
|
+
"ui.tool.loadedFile": "تم تحميل \u2068{{path}}\u2069",
|
|
239
|
+
"ui.tool.loadedSkill": "تم تحميل المهارة \u2068{{name}}\u2069",
|
|
240
|
+
"ui.tool.shell.writingCommand": "جارٍ كتابة الأمر...",
|
|
241
|
+
"ui.tool.agent.delegating": "جارٍ تفويض الوكيل...",
|
|
242
|
+
"ui.common.moreCount.zero": "+{{count}} أخرى",
|
|
243
|
+
"ui.common.moreCount.one": "+{{count}} آخر",
|
|
244
|
+
"ui.common.moreCount.two": "+{{count}} آخران",
|
|
245
|
+
"ui.common.moreCount.few": "+{{count}} أخرى",
|
|
246
|
+
"ui.common.moreCount.many": "+{{count}} أخرى",
|
|
247
|
+
"ui.common.moreCount.other": "+{{count}} أخرى",
|
|
248
|
+
"ui.sessionTimeline.notice.model": "النموذج",
|
|
249
|
+
"ui.sessionTimeline.notice.movedTo": "نُقلت إلى",
|
|
250
|
+
"ui.sessionTimeline.notice.movedTooltip": "تغيّر دليل عمل الجلسة",
|
|
251
|
+
"ui.sessionTimeline.notice.failed": "فشل تشغيل \u2068{{actor}}\u2069",
|
|
252
|
+
"ui.sessionTimeline.notice.cancelled": "أُلغي تشغيل \u2068{{actor}}\u2069",
|
|
253
|
+
"ui.sessionTimeline.notice.finished": "انتهى تشغيل \u2068{{actor}}\u2069",
|
|
254
|
+
"ui.sessionTimeline.notice.instructionsUpdated": "تم تحديث التعليمات",
|
|
255
|
+
"ui.sessionTimeline.notice.restart": "المتابعة بعد إعادة التشغيل",
|
|
256
|
+
"ui.promptInput.placeholder.followUp": "أضف متابعة، \u2068{{slash}}\u2069 للأوامر، و\u2068{{at}}\u2069 للسياق...",
|
|
257
|
+
"ui.promptInput.steer": "توجيه",
|
|
258
|
+
"ui.promptInput.queue": "وضع في قائمة الانتظار",
|
|
259
|
+
"ui.promptInput.steerHint": "إرسال دون مقاطعة",
|
|
260
|
+
"ui.tool.loadedSkills.zero": "لم يتم تحميل أي مهارات من \u2068{{name}}\u2069",
|
|
261
|
+
"ui.tool.loadedSkills.one": "تم تحميل المهارة \u2068{{name}}\u2069",
|
|
262
|
+
"ui.tool.loadedSkills.two": "تم تحميل مهارتَي \u2068{{name}}\u2069",
|
|
263
|
+
"ui.tool.loadedSkills.few": "تم تحميل مهارات \u2068{{name}}\u2069",
|
|
264
|
+
"ui.tool.loadedSkills.many": "تم تحميل مهارات \u2068{{name}}\u2069",
|
|
265
|
+
"ui.tool.loadedSkills.other": "تم تحميل مهارات \u2068{{name}}\u2069",
|
|
266
|
+
"ui.tool.shell.exit": "خرج الأمر بالرمز {{code}}",
|
|
267
|
+
"ui.tool.shell.timeout": "انتهت مهلة الأمر",
|
|
268
|
+
"ui.tool.shell.cancelled": "أُلغي الأمر",
|
|
269
|
+
"ui.message.thought": "فكرة",
|
|
270
|
+
"ui.sessionTimeline.notice.modelSwitched": "تم التبديل إلى \u2068{{model}}\u2069",
|
|
271
|
+
"ui.common.file.zero": "ملفات",
|
|
272
|
+
"ui.common.file.two": "ملفان",
|
|
273
|
+
"ui.common.file.few": "ملفات",
|
|
274
|
+
"ui.common.file.many": "ملفًا",
|
|
275
|
+
"ui.common.fileCount.zero": "\u2068{{count}}\u2069 ملف",
|
|
276
|
+
"ui.common.fileCount.one": "\u2068{{count}}\u2069 ملف",
|
|
277
|
+
"ui.common.fileCount.two": "\u2068{{count}}\u2069 ملفان",
|
|
278
|
+
"ui.common.fileCount.few": "\u2068{{count}}\u2069 ملفات",
|
|
279
|
+
"ui.common.fileCount.many": "\u2068{{count}}\u2069 ملفًا",
|
|
280
|
+
"ui.common.fileCount.other": "\u2068{{count}}\u2069 ملف",
|
|
281
|
+
"ui.common.question.zero": "أسئلة",
|
|
282
|
+
"ui.common.question.two": "سؤالان",
|
|
283
|
+
"ui.common.question.few": "أسئلة",
|
|
284
|
+
"ui.common.question.many": "سؤالًا",
|
|
285
|
+
"ui.sessionTurn.retry.attemptLabel": "المحاولة {{attempt}}",
|
|
286
|
+
"ui.sessionTurn.retry.attemptRetrying": "المحاولة {{attempt}} - \u2068{{line}}\u2069",
|
|
287
|
+
"ui.messagePart.context.notice.zero": "{{count}} إشعار",
|
|
288
|
+
"ui.messagePart.context.notice.one": "{{count}} إشعار",
|
|
289
|
+
"ui.messagePart.context.notice.two": "{{count}} إشعاران",
|
|
290
|
+
"ui.messagePart.context.notice.few": "{{count}} إشعارات",
|
|
291
|
+
"ui.messagePart.context.notice.many": "{{count}} إشعارًا",
|
|
292
|
+
"ui.messagePart.context.notice.other": "{{count}} إشعار",
|
|
293
|
+
"ui.messagePart.context.thought.zero": "أفكار",
|
|
294
|
+
"ui.messagePart.context.thought.one": "فكرة",
|
|
295
|
+
"ui.messagePart.context.thought.two": "فكرتان",
|
|
296
|
+
"ui.messagePart.context.thought.few": "أفكار",
|
|
297
|
+
"ui.messagePart.context.thought.many": "فكرة",
|
|
298
|
+
"ui.messagePart.context.thought.other": "فكرة",
|
|
299
|
+
"ui.promptInput.dropFiles.image": "أفلت الصور أو الملفات لإضافتها",
|
|
300
|
+
"ui.promptInput.dropFiles.pdf": "أفلت ملفات \u2068PDF\u2069 أو الملفات لإضافتها",
|
|
301
|
+
"ui.promptInput.dropFiles.imagePdf": "أفلت الصور أو ملفات \u2068PDF\u2069 أو الملفات لإضافتها",
|
|
302
|
+
"ui.promptInput.exitShell": "خروج",
|
|
303
|
+
"ui.sessionTimeline.notice.agentChanged": "تم تغيير الوكيل",
|
|
304
|
+
"ui.sessionTurn.retry.attemptWaiting.zero": "المحاولة {{attempt}} - إعادة المحاولة بعد {{count}} ث",
|
|
305
|
+
"ui.sessionTurn.retry.attemptWaiting.one": "المحاولة {{attempt}} - إعادة المحاولة بعد {{count}} ث",
|
|
306
|
+
"ui.sessionTurn.retry.attemptWaiting.two": "المحاولة {{attempt}} - إعادة المحاولة بعد {{count}} ث",
|
|
307
|
+
"ui.sessionTurn.retry.attemptWaiting.few": "المحاولة {{attempt}} - إعادة المحاولة بعد {{count}} ث",
|
|
308
|
+
"ui.sessionTurn.retry.attemptWaiting.many": "المحاولة {{attempt}} - إعادة المحاولة بعد {{count}} ث",
|
|
309
|
+
"ui.sessionTurn.retry.attemptWaiting.other": "المحاولة {{attempt}} - إعادة المحاولة بعد {{count}} ث",
|
|
310
|
+
"ui.sessionTurn.retry.attemptRetryingNow": "المحاولة {{attempt}} - جارٍ إعادة المحاولة",
|
|
311
|
+
"ui.messagePart.compaction.started": "بدأ ضغط الجلسة",
|
|
312
|
+
"ui.messagePart.compaction.running": "جارٍ الضغط",
|
|
313
|
+
"ui.messagePart.compaction.failed": "فشل ضغط الجلسة",
|
|
314
|
+
"ui.messagePart.compaction.cancelled": "أُلغي ضغط الجلسة",
|
|
315
|
+
"ui.messagePart.compaction.interrupted": "قوطع ضغط الجلسة",
|
|
316
|
+
"ui.messagePart.providerCompaction": "ضغط موفر الخدمة الجلسة",
|
|
317
|
+
"ui.messagePart.compaction.usage": "{{input}} إدخال · {{output}} إخراج",
|
|
318
|
+
"ui.messagePart.tools.used.one": "استُخدمت {{count}} أداة: \u2068{{tools}}\u2069",
|
|
319
|
+
"ui.messagePart.tools.used.other": "استُخدمت {{count}} أداة: \u2068{{tools}}\u2069",
|
|
320
|
+
"ui.tool.browser": "المتصفح",
|
|
321
|
+
"ui.messagePart.tools.used.zero": "لم تُستخدم أي أداة من أصل \u2068{{count}}\u2069: \u2068{{tools}}\u2069",
|
|
322
|
+
"ui.messagePart.tools.used.two": "استُخدمت {{count}} أداتان: \u2068{{tools}}\u2069",
|
|
323
|
+
"ui.messagePart.tools.used.few": "استُخدمت \u2068{{count}}\u2069 أدوات: \u2068{{tools}}\u2069",
|
|
324
|
+
"ui.messagePart.tools.used.many": "استُخدمت {{count}} أداة: \u2068{{tools}}\u2069",
|
|
325
|
+
|
|
326
|
+
"ui.messagePart.context.updates": "التحديثات",
|
|
327
|
+
"ui.promptInput.cancelUpload": "إلغاء الرفع",
|
|
328
|
+
"ui.promptInput.uploading": "\u2068{{percent}}\u2069%",
|
|
231
329
|
}
|
package/src/i18n/az.ts
CHANGED
|
@@ -192,4 +192,61 @@ export const dict: Record<string, string> = {
|
|
|
192
192
|
"ui.question.multiHint": "Uyğun gələn bütün cavabları seçin",
|
|
193
193
|
"ui.question.singleHint": "Bir cavab seçin",
|
|
194
194
|
"ui.question.custom.placeholder": "Cavabınızı yazın…",
|
|
195
|
+
"ui.messagePart.context.match.one": "({{count}} uyğunluq)",
|
|
196
|
+
"ui.messagePart.context.match.other": "({{count}} uyğunluq)",
|
|
197
|
+
"ui.tool.execute": "İcra et",
|
|
198
|
+
"ui.tool.loadedFile": "{{path}} yükləndi",
|
|
199
|
+
"ui.tool.loadedSkill": "{{name}} bacarığı yükləndi",
|
|
200
|
+
"ui.tool.shell.writingCommand": "Əmr yazılır...",
|
|
201
|
+
"ui.tool.agent.delegating": "Agentə həvalə edilir...",
|
|
202
|
+
"ui.common.moreCount.one": "+{{count}} əlavə",
|
|
203
|
+
"ui.common.moreCount.other": "+{{count}} əlavə",
|
|
204
|
+
"ui.sessionTimeline.notice.model": "Model",
|
|
205
|
+
"ui.sessionTimeline.notice.movedTo": "Köçürüldü",
|
|
206
|
+
"ui.sessionTimeline.notice.movedTooltip": "Sessiyanın iş qovluğu dəyişdirildi",
|
|
207
|
+
"ui.sessionTimeline.notice.failed": "{{actor}} uğursuz oldu",
|
|
208
|
+
"ui.sessionTimeline.notice.cancelled": "{{actor}} ləğv edildi",
|
|
209
|
+
"ui.sessionTimeline.notice.finished": "{{actor}} tamamlandı",
|
|
210
|
+
"ui.sessionTimeline.notice.instructionsUpdated": "Təlimatlar yeniləndi",
|
|
211
|
+
"ui.sessionTimeline.notice.restart": "Yenidən başladıldıqdan sonra davam edir",
|
|
212
|
+
"ui.promptInput.placeholder.followUp": "Davam mesajı əlavə edin, əmrlər üçün {{slash}}, kontekst üçün {{at}}...",
|
|
213
|
+
"ui.promptInput.steer": "İstiqamətləndir",
|
|
214
|
+
"ui.promptInput.queue": "Növbə",
|
|
215
|
+
"ui.promptInput.steerHint": "Dayandırmadan göndər",
|
|
216
|
+
"ui.tool.loadedSkills.one": "{{name}} bacarığı yükləndi",
|
|
217
|
+
"ui.tool.loadedSkills.other": "{{name}} bacarıqları yükləndi",
|
|
218
|
+
"ui.tool.shell.exit": "Əmr {{code}} kodu ilə başa çatdı",
|
|
219
|
+
"ui.tool.shell.timeout": "Əmrin vaxtı bitdi",
|
|
220
|
+
"ui.tool.shell.cancelled": "Əmr ləğv edildi",
|
|
221
|
+
"ui.message.thought": "Düşüncə",
|
|
222
|
+
"ui.sessionTimeline.notice.modelSwitched": "{{model}} modelinə keçildi",
|
|
223
|
+
"ui.sessionTurn.retry.attemptLabel": "Cəhd {{attempt}}",
|
|
224
|
+
"ui.sessionTurn.retry.attemptRetrying": "Cəhd {{attempt}} - {{line}}",
|
|
225
|
+
"ui.messagePart.context.notice.one": "{{count}} bildiriş",
|
|
226
|
+
"ui.messagePart.context.notice.other": "{{count}} bildiriş",
|
|
227
|
+
"ui.messagePart.context.thought.one": "fikir",
|
|
228
|
+
"ui.messagePart.context.thought.other": "fikir",
|
|
229
|
+
"ui.promptInput.dropFiles.image": "Şəkillər və ya fayllar əlavə etmək üçün buraya atın",
|
|
230
|
+
"ui.promptInput.dropFiles.pdf": "PDF-lər və ya fayllar əlavə etmək üçün buraya atın",
|
|
231
|
+
"ui.promptInput.dropFiles.imagePdf": "Şəkillər, PDF-lər və ya fayllar əlavə etmək üçün buraya atın",
|
|
232
|
+
"ui.promptInput.exitShell": "Çıx",
|
|
233
|
+
"ui.sessionTimeline.notice.agentChanged": "Agent dəyişdirildi",
|
|
234
|
+
"ui.sessionTurn.retry.attemptWaiting.one": "Cəhd {{attempt}} - {{count}} saniyə sonra yenidən cəhd edilir",
|
|
235
|
+
"ui.sessionTurn.retry.attemptWaiting.other": "Cəhd {{attempt}} - {{count}} saniyə sonra yenidən cəhd edilir",
|
|
236
|
+
"ui.sessionTurn.retry.attemptRetryingNow": "Cəhd {{attempt}} - yenidən cəhd edilir",
|
|
237
|
+
"ui.messagePart.compaction.started": "Sessiya sıxışdırılması başladı",
|
|
238
|
+
"ui.messagePart.compaction.running": "Sıxışdırılır",
|
|
239
|
+
"ui.messagePart.compaction.failed": "Sessiya sıxışdırılması uğursuz oldu",
|
|
240
|
+
"ui.messagePart.compaction.cancelled": "Sessiya sıxışdırılması ləğv edildi",
|
|
241
|
+
"ui.messagePart.compaction.interrupted": "Sessiya sıxışdırılması dayandırıldı",
|
|
242
|
+
"ui.messagePart.providerCompaction": "Sessiya təminatçı tərəfindən sıxışdırıldı",
|
|
243
|
+
"ui.messagePart.compaction.usage": "{{input}} daxil · {{output}} çıxış",
|
|
244
|
+
"ui.messagePart.tools.used.one": "{{count}} {{tools}} istifadə edildi",
|
|
245
|
+
"ui.messagePart.tools.used.other": "{{count}} {{tools}} istifadə edildi",
|
|
246
|
+
"ui.tool.browser": "Brauzer",
|
|
247
|
+
"ui.common.fileCount.one": "{{count}} fayl",
|
|
248
|
+
"ui.common.fileCount.other": "{{count}} fayl",
|
|
249
|
+
"ui.messagePart.context.updates": "Yeniləmələr",
|
|
250
|
+
"ui.promptInput.cancelUpload": "Yükləməni ləğv et",
|
|
251
|
+
"ui.promptInput.uploading": "{{percent}}%",
|
|
195
252
|
}
|
package/src/i18n/bg.ts
CHANGED
|
@@ -192,4 +192,61 @@ export const dict = {
|
|
|
192
192
|
"ui.question.multiHint": "Изберете всички приложими отговори",
|
|
193
193
|
"ui.question.singleHint": "Изберете един отговор",
|
|
194
194
|
"ui.question.custom.placeholder": "Въведете вашия отговор…",
|
|
195
|
+
"ui.messagePart.context.match.one": "({{count}} съвпадение)",
|
|
196
|
+
"ui.messagePart.context.match.other": "({{count}} съвпадения)",
|
|
197
|
+
"ui.tool.execute": "Изпълни",
|
|
198
|
+
"ui.tool.loadedFile": "Зареден файл {{path}}",
|
|
199
|
+
"ui.tool.loadedSkill": "Заредено умение {{name}}",
|
|
200
|
+
"ui.tool.shell.writingCommand": "Командата се записва...",
|
|
201
|
+
"ui.tool.agent.delegating": "Задачата се възлага на агент...",
|
|
202
|
+
"ui.common.moreCount.one": "+още {{count}}",
|
|
203
|
+
"ui.common.moreCount.other": "+още {{count}}",
|
|
204
|
+
"ui.sessionTimeline.notice.model": "Модел",
|
|
205
|
+
"ui.sessionTimeline.notice.movedTo": "Преместено в",
|
|
206
|
+
"ui.sessionTimeline.notice.movedTooltip": "Работната директория на сесията е променена",
|
|
207
|
+
"ui.sessionTimeline.notice.failed": "{{actor}} завърши неуспешно",
|
|
208
|
+
"ui.sessionTimeline.notice.cancelled": "{{actor}} е отменен",
|
|
209
|
+
"ui.sessionTimeline.notice.finished": "{{actor}} завърши",
|
|
210
|
+
"ui.sessionTimeline.notice.instructionsUpdated": "Инструкциите са актуализирани",
|
|
211
|
+
"ui.sessionTimeline.notice.restart": "Продължаване след рестартиране",
|
|
212
|
+
"ui.promptInput.placeholder.followUp": "Добавете последваща заявка, {{slash}} за команди, {{at}} за контекст...",
|
|
213
|
+
"ui.promptInput.steer": "Насочи",
|
|
214
|
+
"ui.promptInput.queue": "Постави на опашка",
|
|
215
|
+
"ui.promptInput.steerHint": "Изпращане без прекъсване",
|
|
216
|
+
"ui.tool.loadedSkills.one": "Заредено умение {{name}}",
|
|
217
|
+
"ui.tool.loadedSkills.other": "Заредени умения {{name}}",
|
|
218
|
+
"ui.tool.shell.exit": "Командата завърши с код {{code}}",
|
|
219
|
+
"ui.tool.shell.timeout": "Времето за изпълнение на командата изтече",
|
|
220
|
+
"ui.tool.shell.cancelled": "Командата е отменена",
|
|
221
|
+
"ui.message.thought": "Мисъл",
|
|
222
|
+
"ui.sessionTimeline.notice.modelSwitched": "Превключено към {{model}}",
|
|
223
|
+
"ui.sessionTurn.retry.attemptLabel": "Опит {{attempt}}",
|
|
224
|
+
"ui.sessionTurn.retry.attemptRetrying": "Опит {{attempt}} - {{line}}",
|
|
225
|
+
"ui.messagePart.context.notice.one": "{{count}} известие",
|
|
226
|
+
"ui.messagePart.context.notice.other": "{{count}} известия",
|
|
227
|
+
"ui.messagePart.context.thought.one": "Мисъл",
|
|
228
|
+
"ui.messagePart.context.thought.other": "Мисли",
|
|
229
|
+
"ui.promptInput.dropFiles.image": "Пуснете изображения или файлове за добавяне",
|
|
230
|
+
"ui.promptInput.dropFiles.pdf": "Пуснете PDF файлове или други файлове за добавяне",
|
|
231
|
+
"ui.promptInput.dropFiles.imagePdf": "Пуснете изображения, PDF файлове или други файлове за добавяне",
|
|
232
|
+
"ui.promptInput.exitShell": "Изход",
|
|
233
|
+
"ui.sessionTimeline.notice.agentChanged": "Агентът е сменен",
|
|
234
|
+
"ui.sessionTurn.retry.attemptRetryingNow": "Опит {{attempt}} — повторен опит",
|
|
235
|
+
"ui.sessionTurn.retry.attemptWaiting.one": "Опит {{attempt}} — нов опит след {{count}} секунда",
|
|
236
|
+
"ui.sessionTurn.retry.attemptWaiting.other": "Опит {{attempt}} — нов опит след {{count}} секунди",
|
|
237
|
+
"ui.messagePart.compaction.started": "Уплътняването на сесията започна",
|
|
238
|
+
"ui.messagePart.compaction.running": "Уплътняване",
|
|
239
|
+
"ui.messagePart.compaction.failed": "Уплътняването на сесията е неуспешно",
|
|
240
|
+
"ui.messagePart.compaction.cancelled": "Уплътняването на сесията е отменено",
|
|
241
|
+
"ui.messagePart.compaction.interrupted": "Уплътняването на сесията е прекъснато",
|
|
242
|
+
"ui.messagePart.providerCompaction": "Сесията е уплътнена от доставчика",
|
|
243
|
+
"ui.messagePart.compaction.usage": "{{input}} входящи · {{output}} изходящи",
|
|
244
|
+
"ui.messagePart.tools.used.one": "Използван е {{count}} {{tools}}",
|
|
245
|
+
"ui.messagePart.tools.used.other": "Използвани са {{count}} {{tools}}",
|
|
246
|
+
"ui.tool.browser": "Браузър",
|
|
247
|
+
"ui.common.fileCount.one": "{{count}} файл",
|
|
248
|
+
"ui.common.fileCount.other": "{{count}} файла",
|
|
249
|
+
"ui.messagePart.context.updates": "Актуализации",
|
|
250
|
+
"ui.promptInput.cancelUpload": "Отказ от качването",
|
|
251
|
+
"ui.promptInput.uploading": "{{percent}}%",
|
|
195
252
|
}
|
package/src/i18n/bn.ts
CHANGED
|
@@ -194,4 +194,65 @@ export const dict: Record<string, string> = {
|
|
|
194
194
|
"ui.question.multiHint": "প্রযোজ্য সমস্ত উত্তর নির্বাচন করুন",
|
|
195
195
|
"ui.question.singleHint": "একটি উত্তর নির্বাচন করুন",
|
|
196
196
|
"ui.question.custom.placeholder": "আপনার উত্তর টাইপ করুন…",
|
|
197
|
+
"ui.messagePart.context.match.one": "({{count}}টি মিল)",
|
|
198
|
+
"ui.messagePart.context.match.other": "({{count}}টি মিল)",
|
|
199
|
+
"ui.tool.execute": "চালান",
|
|
200
|
+
"ui.tool.loadedFile": "{{path}} লোড হয়েছে",
|
|
201
|
+
"ui.tool.loadedSkill": "{{name}} দক্ষতা লোড হয়েছে",
|
|
202
|
+
"ui.tool.shell.writingCommand": "কমান্ড লেখা হচ্ছে...",
|
|
203
|
+
"ui.tool.agent.delegating": "এজেন্টকে কাজ অর্পণ করা হচ্ছে...",
|
|
204
|
+
"ui.common.moreCount.one": "+আরও {{count}}টি",
|
|
205
|
+
"ui.common.moreCount.other": "+আরও {{count}}টি",
|
|
206
|
+
"ui.sessionTimeline.notice.model": "মডেল",
|
|
207
|
+
"ui.sessionTimeline.notice.movedTo": "সরানো হয়েছে",
|
|
208
|
+
"ui.sessionTimeline.notice.movedTooltip": "সেশনের কার্যকরী ডিরেক্টরি পরিবর্তিত হয়েছে",
|
|
209
|
+
"ui.sessionTimeline.notice.failed": "{{actor}} ব্যর্থ হয়েছে",
|
|
210
|
+
"ui.sessionTimeline.notice.cancelled": "{{actor}} বাতিল হয়েছে",
|
|
211
|
+
"ui.sessionTimeline.notice.finished": "{{actor}} শেষ করেছে",
|
|
212
|
+
"ui.sessionTimeline.notice.instructionsUpdated": "নির্দেশনা আপডেট হয়েছে",
|
|
213
|
+
"ui.sessionTimeline.notice.restart": "পুনরায় চালুর পরে চালিয়ে যাওয়া হচ্ছে",
|
|
214
|
+
"ui.promptInput.placeholder.followUp": "ফলো-আপ যোগ করুন, কমান্ডের জন্য {{slash}}, প্রসঙ্গের জন্য {{at}}...",
|
|
215
|
+
"ui.promptInput.steer": "দিকনির্দেশ দিন",
|
|
216
|
+
"ui.promptInput.queue": "সারিতে রাখুন",
|
|
217
|
+
"ui.promptInput.steerHint": "বাধা না দিয়ে পাঠান",
|
|
218
|
+
"ui.tool.loadedSkills.one": "{{name}} দক্ষতা লোড করা হয়েছে",
|
|
219
|
+
"ui.tool.loadedSkills.other": "{{name}} দক্ষতাগুলি লোড করা হয়েছে",
|
|
220
|
+
"ui.tool.shell.exit": "কমান্ড {{code}} কোড দিয়ে শেষ হয়েছে",
|
|
221
|
+
"ui.tool.shell.timeout": "কমান্ডের সময়সীমা শেষ হয়েছে",
|
|
222
|
+
"ui.tool.shell.cancelled": "কমান্ড বাতিল করা হয়েছে",
|
|
223
|
+
"ui.message.thought": "চিন্তা",
|
|
224
|
+
"ui.sessionTimeline.notice.modelSwitched": "{{model}}-এ পরিবর্তন করা হয়েছে",
|
|
225
|
+
|
|
226
|
+
"ui.sessionTurn.retry.attemptLabel": "প্রচেষ্টা {{attempt}}",
|
|
227
|
+
"ui.sessionTurn.retry.attemptRetrying": "প্রচেষ্টা {{attempt}} - {{line}}",
|
|
228
|
+
"ui.messagePart.context.notice.one": "{{count}}টি বিজ্ঞপ্তি",
|
|
229
|
+
"ui.messagePart.context.notice.other": "{{count}}টি বিজ্ঞপ্তি",
|
|
230
|
+
"ui.promptInput.dropFiles.image": "যোগ করতে ছবি বা ফাইল ছাড়ুন",
|
|
231
|
+
"ui.promptInput.dropFiles.pdf": "যোগ করতে PDF বা ফাইল ছাড়ুন",
|
|
232
|
+
"ui.promptInput.dropFiles.imagePdf": "যোগ করতে ছবি, PDF বা ফাইল ছাড়ুন",
|
|
233
|
+
"ui.promptInput.exitShell": "প্রস্থান করুন",
|
|
234
|
+
"ui.sessionTimeline.notice.agentChanged": "এজেন্ট পরিবর্তিত হয়েছে",
|
|
235
|
+
|
|
236
|
+
"ui.sessionTurn.retry.attemptRetryingNow": "প্রচেষ্টা {{attempt}} - আবার চেষ্টা করা হচ্ছে",
|
|
237
|
+
|
|
238
|
+
"ui.sessionTurn.retry.attemptWaiting.one": "প্রচেষ্টা {{attempt}} - {{count}} সেকেন্ড পরে আবার চেষ্টা করা হচ্ছে",
|
|
239
|
+
"ui.sessionTurn.retry.attemptWaiting.other": "প্রচেষ্টা {{attempt}} - {{count}} সেকেন্ড পরে আবার চেষ্টা করা হচ্ছে",
|
|
240
|
+
"ui.messagePart.compaction.started": "সেশন সংকোচন শুরু হয়েছে",
|
|
241
|
+
"ui.messagePart.compaction.running": "সংকোচন করা হচ্ছে",
|
|
242
|
+
"ui.messagePart.compaction.failed": "সেশন সংকোচন ব্যর্থ হয়েছে",
|
|
243
|
+
"ui.messagePart.compaction.cancelled": "সেশন সংকোচন বাতিল হয়েছে",
|
|
244
|
+
"ui.messagePart.compaction.interrupted": "সেশন সংকোচন বাধাগ্রস্ত হয়েছে",
|
|
245
|
+
"ui.messagePart.providerCompaction": "প্রদানকারী সেশনটি সংকুচিত করেছে",
|
|
246
|
+
"ui.messagePart.compaction.usage": "{{input}} ইন · {{output}} আউট",
|
|
247
|
+
"ui.messagePart.context.thought.one": "চিন্তা",
|
|
248
|
+
"ui.messagePart.context.thought.other": "চিন্তাভাবনা",
|
|
249
|
+
"ui.messagePart.tools.used.one": "{{count}}টি {{tools}} ব্যবহার করা হয়েছে",
|
|
250
|
+
"ui.messagePart.tools.used.other": "{{count}}টি {{tools}} ব্যবহার করা হয়েছে",
|
|
251
|
+
"ui.tool.browser": "ব্রাউজার",
|
|
252
|
+
"ui.common.fileCount.one": "{{count}}টি ফাইল",
|
|
253
|
+
"ui.common.fileCount.other": "{{count}}টি ফাইল",
|
|
254
|
+
|
|
255
|
+
"ui.messagePart.context.updates": "আপডেট",
|
|
256
|
+
"ui.promptInput.cancelUpload": "আপলোড বাতিল করুন",
|
|
257
|
+
"ui.promptInput.uploading": "{{percent}}%",
|
|
197
258
|
}
|
package/src/i18n/br.ts
CHANGED
|
@@ -1,4 +1,48 @@
|
|
|
1
1
|
export const dict = {
|
|
2
|
+
"ui.common.fileCount.one": "{{count}} arquivo",
|
|
3
|
+
"ui.common.fileCount.other": "{{count}} arquivos",
|
|
4
|
+
"ui.common.fileCount.many": "{{count}} arquivos",
|
|
5
|
+
"ui.messagePart.compaction.started": "Compactação da sessão iniciada",
|
|
6
|
+
"ui.messagePart.compaction.running": "Compactação",
|
|
7
|
+
"ui.messagePart.compaction.failed": "Falha na compactação da sessão",
|
|
8
|
+
"ui.messagePart.compaction.cancelled": "Compactação de sessão cancelada",
|
|
9
|
+
"ui.messagePart.compaction.interrupted": "Compactação da sessão interrompida",
|
|
10
|
+
"ui.messagePart.providerCompaction": "Sessão compactada pelo provedor",
|
|
11
|
+
"ui.messagePart.compaction.usage": "Entrada {{input}} · Saída {{output}}",
|
|
12
|
+
"ui.messagePart.tools.used.one": "Usou {{count}} {{tools}}",
|
|
13
|
+
"ui.messagePart.tools.used.other": "Usou {{count}} {{tools}}",
|
|
14
|
+
"ui.tool.browser": "Navegador",
|
|
15
|
+
"ui.messagePart.context.thought.one": "Pensamento",
|
|
16
|
+
"ui.messagePart.context.thought.other": "Pensamentos",
|
|
17
|
+
"ui.messagePart.context.thought.many": "Pensamentos",
|
|
18
|
+
"ui.messagePart.tools.used.many": "Usou {{count}} {{tools}}",
|
|
19
|
+
"ui.sessionTurn.retry.attemptWaiting.one": "A tentativa {{attempt}} será repetida em {{count}} segundo",
|
|
20
|
+
"ui.sessionTurn.retry.attemptWaiting.many": "A tentativa {{attempt}} será repetida em {{count}} segundos",
|
|
21
|
+
"ui.sessionTurn.retry.attemptWaiting.other": "A tentativa {{attempt}} será repetida em {{count}} segundos",
|
|
22
|
+
"ui.sessionTurn.retry.attemptRetryingNow": "Tentativa {{attempt}} — tentando novamente",
|
|
23
|
+
"ui.sessionTurn.retry.attemptLabel": "Tentativa {{attempt}}",
|
|
24
|
+
"ui.sessionTurn.retry.attemptRetrying": "Tentativa {{attempt}} - {{line}}",
|
|
25
|
+
"ui.messagePart.context.notice.one": "{{count}} aviso",
|
|
26
|
+
"ui.messagePart.context.notice.other": "{{count}} avisos",
|
|
27
|
+
"ui.promptInput.dropFiles.image": "Solte imagens ou arquivos para adicionar",
|
|
28
|
+
"ui.promptInput.dropFiles.pdf": "Solte PDFs ou arquivos para adicionar",
|
|
29
|
+
"ui.promptInput.dropFiles.imagePdf": "Solte imagens, PDFs ou arquivos para adicionar",
|
|
30
|
+
"ui.promptInput.exitShell": "Sair",
|
|
31
|
+
"ui.sessionTimeline.notice.agentChanged": "Agente alterado",
|
|
32
|
+
"ui.messagePart.context.notice.many": "{{count}} avisos",
|
|
33
|
+
"ui.promptInput.placeholder.followUp":
|
|
34
|
+
"Adicione uma mensagem de acompanhamento, {{slash}} para comandos, {{at}} para contexto…",
|
|
35
|
+
"ui.promptInput.steer": "Orientar",
|
|
36
|
+
"ui.promptInput.queue": "Fila",
|
|
37
|
+
"ui.promptInput.steerHint": "Enviar sem interromper",
|
|
38
|
+
"ui.tool.loadedSkills.one": "Skill {{name}} carregada",
|
|
39
|
+
"ui.tool.loadedSkills.many": "Skills {{name}} carregadas",
|
|
40
|
+
"ui.tool.loadedSkills.other": "Skills {{name}} carregadas",
|
|
41
|
+
"ui.tool.shell.exit": "Comando encerrado com o código {{code}}",
|
|
42
|
+
"ui.tool.shell.timeout": "O tempo limite do comando foi excedido",
|
|
43
|
+
"ui.tool.shell.cancelled": "Comando cancelado",
|
|
44
|
+
"ui.message.thought": "Raciocínio",
|
|
45
|
+
"ui.sessionTimeline.notice.modelSwitched": "Modelo alterado para {{model}}",
|
|
2
46
|
"ui.sessionReview.title": "Alterações da sessão",
|
|
3
47
|
"ui.sessionReview.title.git": "Alterações do Git",
|
|
4
48
|
"ui.sessionReview.title.branch": "Alterações da branch",
|
|
@@ -161,8 +205,10 @@ export const dict = {
|
|
|
161
205
|
"ui.tool.agent.default": "Agente",
|
|
162
206
|
|
|
163
207
|
"ui.common.file.one": "arquivo",
|
|
208
|
+
"ui.common.file.many": "arquivos",
|
|
164
209
|
"ui.common.file.other": "arquivos",
|
|
165
210
|
"ui.common.question.one": "pergunta",
|
|
211
|
+
"ui.common.question.many": "perguntas",
|
|
166
212
|
"ui.common.question.other": "perguntas",
|
|
167
213
|
|
|
168
214
|
"ui.common.add": "Adicionar",
|
|
@@ -216,4 +262,27 @@ export const dict = {
|
|
|
216
262
|
"ui.toolErrorCard.copyError": "Copiar erro",
|
|
217
263
|
"ui.message.duration.seconds": "{{count}}s",
|
|
218
264
|
"ui.message.duration.minutesSeconds": "{{minutes}}m {{seconds}}s",
|
|
265
|
+
|
|
266
|
+
"ui.messagePart.context.match.one": "(correspondência {{count}})",
|
|
267
|
+
"ui.messagePart.context.match.other": "(correspondências {{count}})",
|
|
268
|
+
"ui.tool.execute": "Executar",
|
|
269
|
+
"ui.messagePart.context.match.many": "({{count}} correspondências)",
|
|
270
|
+
"ui.tool.loadedFile": "Arquivo {{path}} carregado",
|
|
271
|
+
"ui.tool.loadedSkill": "Habilidade {{name}} carregada",
|
|
272
|
+
"ui.tool.shell.writingCommand": "Escrevendo comando...",
|
|
273
|
+
"ui.tool.agent.delegating": "Delegando para o agente...",
|
|
274
|
+
"ui.common.moreCount.one": "+ mais {{count}}",
|
|
275
|
+
"ui.common.moreCount.other": "+ mais {{count}}",
|
|
276
|
+
"ui.common.moreCount.many": "+ mais {{count}}",
|
|
277
|
+
"ui.sessionTimeline.notice.model": "Modelo",
|
|
278
|
+
"ui.sessionTimeline.notice.movedTo": "Movida para",
|
|
279
|
+
"ui.sessionTimeline.notice.movedTooltip": "O diretório de trabalho da sessão foi alterado",
|
|
280
|
+
"ui.sessionTimeline.notice.failed": "{{actor}} falhou",
|
|
281
|
+
"ui.sessionTimeline.notice.cancelled": "{{actor}} cancelado",
|
|
282
|
+
"ui.sessionTimeline.notice.finished": "{{actor}} finalizado",
|
|
283
|
+
"ui.sessionTimeline.notice.instructionsUpdated": "Instruções atualizadas",
|
|
284
|
+
"ui.sessionTimeline.notice.restart": "Continuando após a reinicialização",
|
|
285
|
+
"ui.messagePart.context.updates": "Atualizações",
|
|
286
|
+
"ui.promptInput.cancelUpload": "Cancelar envio",
|
|
287
|
+
"ui.promptInput.uploading": "{{percent}}%",
|
|
219
288
|
}
|