@cat-factory/app 0.70.0 → 0.71.0
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/app/components/auth/LoginScreen.vue +3 -2
- package/app/components/board/AddTaskModal.vue +7 -1
- package/app/components/board/AgentFailureCard.vue +3 -0
- package/app/components/board/RecurringPipelineModal.vue +6 -1
- package/app/components/board/nodes/BlockNode.vue +10 -2
- package/app/components/board/nodes/TaskCard.vue +12 -1
- package/app/components/bootstrap/BootstrapModal.vue +3 -0
- package/app/components/common/ConfirmDialog.vue +59 -0
- package/app/components/common/EmptyState.vue +35 -0
- package/app/components/common/KeyboardShortcutsHelp.vue +48 -0
- package/app/components/documents/ContextDocumentPicker.vue +8 -4
- package/app/components/documents/DocumentSourceConnectModal.vue +4 -3
- package/app/components/focus/BlockFocusView.vue +12 -7
- package/app/components/fragments/FragmentLibraryManager.vue +10 -0
- package/app/components/github/GitHubPanel.vue +9 -0
- package/app/components/humanTest/HumanTestWindow.vue +15 -1
- package/app/components/layout/AccountDeploymentSettings.vue +4 -0
- package/app/components/layout/AccountTeamSettings.vue +8 -2
- package/app/components/layout/AiProvidersBanner.vue +3 -1
- package/app/components/layout/BoardSwitcher.vue +11 -0
- package/app/components/layout/CommandBar.vue +8 -0
- package/app/components/layout/InfraSetupBanner.vue +192 -0
- package/app/components/layout/NotificationsInbox.vue +11 -0
- package/app/components/layout/ProviderConfigBanner.vue +3 -1
- package/app/components/panels/InspectorPanel.vue +18 -20
- package/app/components/panels/StepContainerStatus.vue +37 -0
- package/app/components/panels/inspector/FrontendConfig.vue +19 -4
- package/app/components/panels/inspector/ServiceReleaseHealthConfig.vue +4 -0
- package/app/components/panels/inspector/TaskDependencies.vue +18 -4
- package/app/components/panels/inspector/TaskExecution.vue +24 -0
- package/app/components/panels/inspector/TaskRunSettings.vue +8 -1
- package/app/components/pipeline/PipelineBuilder.vue +13 -1
- package/app/components/providers/ApiKeysSection.vue +4 -0
- package/app/components/providers/PersonalSubscriptionSection.vue +9 -0
- package/app/components/providers/VendorCredentialsModal.vue +12 -3
- package/app/components/settings/CustomManifestTypeEditor.vue +3 -0
- package/app/components/settings/InfraHandlersConfigurator.vue +72 -12
- package/app/components/settings/KubernetesEngineForm.vue +41 -5
- package/app/components/settings/LocalModelEndpointsPanel.vue +11 -0
- package/app/components/settings/MergeThresholdsPanel.vue +9 -0
- package/app/components/settings/ModelConfigurationPanel.vue +9 -0
- package/app/components/settings/ObservabilityConnectionPanel.vue +7 -0
- package/app/components/settings/ProviderConnectionTab.vue +2 -0
- package/app/components/settings/UserSecretsSection.vue +11 -0
- package/app/components/slack/SlackPanel.vue +9 -0
- package/app/components/tasks/ContextIssuePicker.vue +8 -4
- package/app/components/tasks/TaskSourceConnectModal.vue +4 -3
- package/app/composables/useBlockDeletion.ts +63 -0
- package/app/composables/useConfirm.ts +63 -0
- package/app/composables/useConfirmAction.ts +96 -0
- package/app/composables/useKeyboardShortcuts.ts +76 -0
- package/app/composables/usePipelineErrorToast.ts +2 -0
- package/app/composables/useWorkspaceStream.ts +26 -6
- package/app/pages/index.vue +28 -4
- package/app/stores/agentRuns.spec.ts +74 -0
- package/app/stores/agentRuns.ts +33 -5
- package/app/stores/ui.ts +33 -1
- package/app/stores/workspace.ts +10 -2
- package/app/types/domain.ts +3 -0
- package/app/utils/pipeline.ts +22 -0
- package/i18n/locales/en.json +174 -12
- package/i18n/locales/es.json +176 -17
- package/i18n/locales/fr.json +176 -17
- package/i18n/locales/he.json +176 -17
- package/i18n/locales/ja.json +176 -17
- package/i18n/locales/pl.json +176 -17
- package/i18n/locales/tr.json +176 -17
- package/i18n/locales/uk.json +176 -17
- package/package.json +3 -2
package/i18n/locales/uk.json
CHANGED
|
@@ -15,7 +15,36 @@
|
|
|
15
15
|
"copy": "Копіювати",
|
|
16
16
|
"actionFailed": "Не вдалося виконати дію",
|
|
17
17
|
"close": "Закрити",
|
|
18
|
-
"block": "Блок"
|
|
18
|
+
"block": "Блок",
|
|
19
|
+
"delete": "Видалити",
|
|
20
|
+
"remove": "Прибрати",
|
|
21
|
+
"confirm": {
|
|
22
|
+
"defaultTitle": "Ви впевнені?",
|
|
23
|
+
"confirm": "Підтвердити",
|
|
24
|
+
"irreversible": "Цю дію не можна скасувати.",
|
|
25
|
+
"reconnectHint": "Щоб знову користуватися, доведеться під’єднати це повторно.",
|
|
26
|
+
"titles": {
|
|
27
|
+
"disconnect": "Від’єднати {name}?",
|
|
28
|
+
"remove": "Вилучити {name}?",
|
|
29
|
+
"revoke": "Відкликати {name}?",
|
|
30
|
+
"clear": "Очистити {name}?",
|
|
31
|
+
"destroy": "Знищити {name}?"
|
|
32
|
+
},
|
|
33
|
+
"reconfigureHint": "Ви зможете налаштувати це знову пізніше."
|
|
34
|
+
},
|
|
35
|
+
"copied": "Скопійовано в буфер обміну",
|
|
36
|
+
"disconnect": "Від'єднати",
|
|
37
|
+
"copyFailed": "Не вдалося скопіювати до буфера обміну",
|
|
38
|
+
"revoke": "Відкликати",
|
|
39
|
+
"clear": "Очистити",
|
|
40
|
+
"destroy": "Знищити",
|
|
41
|
+
"toast": {
|
|
42
|
+
"disconnected": "{name} від’єднано",
|
|
43
|
+
"removed": "{name} вилучено",
|
|
44
|
+
"revoked": "{name} відкликано",
|
|
45
|
+
"cleared": "{name} очищено",
|
|
46
|
+
"destroyed": "{name} знищено"
|
|
47
|
+
}
|
|
19
48
|
},
|
|
20
49
|
"nav": {
|
|
21
50
|
"menu": "Меню навігації",
|
|
@@ -235,7 +264,11 @@
|
|
|
235
264
|
"module": "Модуль: {name}",
|
|
236
265
|
"buildSteps": "Кроки збірки",
|
|
237
266
|
"reviewAndApprove": "Переглянути та затвердити",
|
|
238
|
-
"clickToViewStep": "Натисніть, щоб переглянути деталі та результат кроку"
|
|
267
|
+
"clickToViewStep": "Натисніть, щоб переглянути деталі та результат кроку",
|
|
268
|
+
"startedToast": {
|
|
269
|
+
"title": "Запуск розпочато",
|
|
270
|
+
"body": "Виконується \"{name}\"."
|
|
271
|
+
}
|
|
239
272
|
},
|
|
240
273
|
"epic": {
|
|
241
274
|
"label": "Епік",
|
|
@@ -260,7 +293,9 @@
|
|
|
260
293
|
"no_pr_to_merge": "Немає PR для злиття",
|
|
261
294
|
"github_not_connected": "GitHub не підключено",
|
|
262
295
|
"bootstrap_not_retryable": "Ініціалізацію неможливо повторити",
|
|
263
|
-
"bootstrap_reference_missing": "Еталонна архітектура зникла"
|
|
296
|
+
"bootstrap_reference_missing": "Еталонна архітектура зникла",
|
|
297
|
+
"preset_unsatisfiable": "Пресет моделі не може запустити цей конвеєр",
|
|
298
|
+
"visual_pipeline_no_frontend": "Немає фронтенду для тестування"
|
|
264
299
|
},
|
|
265
300
|
"fallbackMessage": "Ця дія суперечить поточному стану.",
|
|
266
301
|
"providersUnconfigured": {
|
|
@@ -322,6 +357,10 @@
|
|
|
322
357
|
"step2": "Відкрийте файл облікових даних, який Codex записав у ~/.codex/auth.json (у Windows %USERPROFILE%\\.codex\\auth.json).",
|
|
323
358
|
"step3": "Скопіюйте весь вміст auth.json, вставте його нижче та виберіть особистий пароль для його захисту."
|
|
324
359
|
}
|
|
360
|
+
},
|
|
361
|
+
"confirmDisconnect": {
|
|
362
|
+
"title": "Від'єднати цю підписку?",
|
|
363
|
+
"body": "Вашу підписку \"{vendor}\" буде від'єднано. Цю дію не можна скасувати."
|
|
325
364
|
}
|
|
326
365
|
},
|
|
327
366
|
"inspector": {
|
|
@@ -392,12 +431,14 @@
|
|
|
392
431
|
"serveScript": "Скрипт обслуговування",
|
|
393
432
|
"servePort": "Порт обслуговування",
|
|
394
433
|
"mockMappingsPath": "Шлях зіставлень моків",
|
|
434
|
+
"mockMappingsHint": "Кореневий каталог WireMock. Розмістіть JSON-стаби у підпапці mappings/ всередині нього (а тіла відповідей у __files/), напр. mocks/mappings/. Папка без mappings/ всередині запускає порожній мок.",
|
|
395
435
|
"envInjection": "Впровадження змінних середовища",
|
|
396
436
|
"envBuild": "Під час збірки",
|
|
397
437
|
"envRuntime": "Під час виконання",
|
|
398
|
-
"envInjectionHint": "Під час збірки впроваджує URL-адреси backend як змінні середовища збірки; Під час виконання записує їх у shim window.env.",
|
|
438
|
+
"envInjectionHint": "Під час збірки впроваджує URL-адреси backend як змінні середовища збірки; Під час виконання записує їх у shim window.env. Зверніть увагу, що ваш інструмент збірки може надавати браузеру лише змінні з префіксом (напр., VITE_), тож називайте прив'язки відповідно до його домовленості.",
|
|
399
439
|
"previewEnabled": "Увімкнути переглядний попередній перегляд",
|
|
400
440
|
"previewHint": "Підтримує запущений обслуговуваний попередній перегляд із клікабельним URL. Лише середовища Local і Node.",
|
|
441
|
+
"previewUnsupported": "Це розгортання не може розміщувати переглядний попередній перегляд. Запустіть на розгортанні Local або Node, щоб зберегти обслуговуваний попередній перегляд із клікабельним URL.",
|
|
401
442
|
"bindings": {
|
|
402
443
|
"title": "Прив'язки backend",
|
|
403
444
|
"hint": "Кожна змінна середовища, яку frontend читає для висхідного URL, і де вона розв'язується: тимчасове середовище прив'язаного сервісу або заглушка WireMock.",
|
|
@@ -419,7 +460,8 @@
|
|
|
419
460
|
"saveMonitoring": "Зберегти моніторинг",
|
|
420
461
|
"savedToast": "Моніторинг збережено",
|
|
421
462
|
"saveFailed": "Не вдалося зберегти зіставлення",
|
|
422
|
-
"clearFailed": "Не вдалося очистити зіставлення"
|
|
463
|
+
"clearFailed": "Не вдалося очистити зіставлення",
|
|
464
|
+
"configNoun": "конфігурацію стану випуску"
|
|
423
465
|
},
|
|
424
466
|
"testConfig": {
|
|
425
467
|
"title": "Тестова інфраструктура",
|
|
@@ -514,7 +556,11 @@
|
|
|
514
556
|
"merged": "Злито",
|
|
515
557
|
"notMerged": "Ще не злито",
|
|
516
558
|
"empty": "Залежностей немає. Можна запускати будь-коли.",
|
|
517
|
-
"blocked": "Заблоковано до злиття залежностей."
|
|
559
|
+
"blocked": "Заблоковано до злиття залежностей.",
|
|
560
|
+
"confirmRemove": {
|
|
561
|
+
"title": "Прибрати цю залежність?",
|
|
562
|
+
"body": "Це завдання більше не чекатиме на \"{name}\"."
|
|
563
|
+
}
|
|
518
564
|
},
|
|
519
565
|
"estimate": {
|
|
520
566
|
"title": "Оцінка",
|
|
@@ -559,7 +605,11 @@
|
|
|
559
605
|
"companionOf": "{label} (компаньйон)",
|
|
560
606
|
"merged": "Злито",
|
|
561
607
|
"open": "Відкрито",
|
|
562
|
-
"mergePr": "Злити PR"
|
|
608
|
+
"mergePr": "Злити PR",
|
|
609
|
+
"empty": {
|
|
610
|
+
"title": "Ще немає запусків",
|
|
611
|
+
"body": "Запустіть pipeline, щоб побачити тут історію запусків."
|
|
612
|
+
}
|
|
563
613
|
},
|
|
564
614
|
"structure": {
|
|
565
615
|
"module": "Модуль",
|
|
@@ -689,7 +739,9 @@
|
|
|
689
739
|
"done": "Завершення"
|
|
690
740
|
},
|
|
691
741
|
"id": "Контейнер",
|
|
692
|
-
"url": "Адреса"
|
|
742
|
+
"url": "Адреса",
|
|
743
|
+
"copyId": "Копіювати id контейнера",
|
|
744
|
+
"copyUrl": "Копіювати адресу"
|
|
693
745
|
}
|
|
694
746
|
},
|
|
695
747
|
"stepDetail": {
|
|
@@ -759,7 +811,25 @@
|
|
|
759
811
|
"viewRequirements": "Переглянути вимоги",
|
|
760
812
|
"reRun": "Перезапустити",
|
|
761
813
|
"run": "Запустити",
|
|
762
|
-
"focus": "Фокус"
|
|
814
|
+
"focus": "Фокус",
|
|
815
|
+
"confirmDelete": {
|
|
816
|
+
"task": {
|
|
817
|
+
"title": "Видалити це завдання?",
|
|
818
|
+
"body": "\"{name}\" та його історію запусків буде видалено. Цю дію не можна скасувати."
|
|
819
|
+
},
|
|
820
|
+
"module": {
|
|
821
|
+
"title": "Видалити цей модуль?",
|
|
822
|
+
"body": "\"{name}\" і весь його вміст буде видалено. Цю дію не можна скасувати."
|
|
823
|
+
},
|
|
824
|
+
"service": {
|
|
825
|
+
"title": "Видалити цей сервіс?",
|
|
826
|
+
"body": "\"{name}\" і весь його вміст буде видалено. Цю дію не можна скасувати."
|
|
827
|
+
},
|
|
828
|
+
"recurring": {
|
|
829
|
+
"title": "Видалити цей повторюваний pipeline?",
|
|
830
|
+
"body": "\"{name}\", його розклад та історію запусків буде видалено. Цю дію не можна скасувати."
|
|
831
|
+
}
|
|
832
|
+
}
|
|
763
833
|
}
|
|
764
834
|
},
|
|
765
835
|
"observability": {
|
|
@@ -1019,7 +1089,8 @@
|
|
|
1019
1089
|
"revokeInvite": "Не вдалося відкликати запрошення",
|
|
1020
1090
|
"connectEmail": "Не вдалося під'єднати відправника пошти",
|
|
1021
1091
|
"disconnectEmail": "Не вдалося від'єднати відправника пошти"
|
|
1022
|
-
}
|
|
1092
|
+
},
|
|
1093
|
+
"emailNoun": "надсилання пошти"
|
|
1023
1094
|
},
|
|
1024
1095
|
"boardSwitcher": {
|
|
1025
1096
|
"accountFallback": "Обліковий запис",
|
|
@@ -1063,6 +1134,10 @@
|
|
|
1063
1134
|
"openBoardFailed": "Не вдалося відкрити дошку",
|
|
1064
1135
|
"boardDeleted": "Дошку видалено",
|
|
1065
1136
|
"deleteBoardFailed": "Не вдалося видалити дошку"
|
|
1137
|
+
},
|
|
1138
|
+
"confirmDelete": {
|
|
1139
|
+
"title": "Видалити цю дошку?",
|
|
1140
|
+
"body": "\"{name}\" і весь його вміст буде видалено. Цю дію не можна скасувати."
|
|
1066
1141
|
}
|
|
1067
1142
|
},
|
|
1068
1143
|
"notifications": {
|
|
@@ -1084,6 +1159,10 @@
|
|
|
1084
1159
|
"human_review": "Позначити прочитаним",
|
|
1085
1160
|
"followup_pending": "Позначити прочитаним",
|
|
1086
1161
|
"markRead": "Позначити прочитаним"
|
|
1162
|
+
},
|
|
1163
|
+
"toast": {
|
|
1164
|
+
"acted": "Позначено як опрацьоване",
|
|
1165
|
+
"dismissed": "Відхилено"
|
|
1087
1166
|
}
|
|
1088
1167
|
},
|
|
1089
1168
|
"aiProvidersBanner": {
|
|
@@ -1116,6 +1195,27 @@
|
|
|
1116
1195
|
"runner-pool": "Налаштувати пул виконавців"
|
|
1117
1196
|
}
|
|
1118
1197
|
},
|
|
1198
|
+
"infraSetupBanner": {
|
|
1199
|
+
"agentExecutor": {
|
|
1200
|
+
"title": "Виконавець агентів не налаштований",
|
|
1201
|
+
"body": "Це розгортання запускає агентів у самостійно розміщеному пулі раннерів, але жоден не зареєстрований, тож жоден агент не зможе працювати, доки ви не підключите його.",
|
|
1202
|
+
"action": "Налаштувати пул раннерів"
|
|
1203
|
+
},
|
|
1204
|
+
"ephemeralEnvironments": {
|
|
1205
|
+
"title": "Тестове середовище не налаштоване",
|
|
1206
|
+
"body": "Не зареєстровано жодного постачальника ефемерних середовищ, тож тестові агенти, яким потрібне робоче середовище, не можуть працювати. Підключіть постачальника, щоб увімкнути їх.",
|
|
1207
|
+
"action": "Налаштувати середовище"
|
|
1208
|
+
},
|
|
1209
|
+
"binaryStorage": {
|
|
1210
|
+
"title": "Сховище вмісту не налаштоване",
|
|
1211
|
+
"body": "Для цього облікового запису не налаштовано жодного бекенду двійкового сховища, тож знімкам екрана інтерфейсу та еталонним зображенням немає де зберігатися, а візуальні перевірки пропускаються. Налаштуйте сховище, щоб увімкнути їх.",
|
|
1212
|
+
"action": "Налаштувати сховище"
|
|
1213
|
+
},
|
|
1214
|
+
"dismiss": {
|
|
1215
|
+
"session": "Відхилити на цю сесію",
|
|
1216
|
+
"permanent": "Мене влаштовують обмеження, більше не сповіщати"
|
|
1217
|
+
}
|
|
1218
|
+
},
|
|
1119
1219
|
"spendWarningBanner": {
|
|
1120
1220
|
"title": "Досягнуто ліміту витрат, виконання агентів призупинено",
|
|
1121
1221
|
"body": "Витрати на токени цього місяця досягли налаштованого бюджету, тому запущені конвеєри було призупинено, щоб уникнути подальших витрат. Виконання відновиться автоматично, коли бюджет оновиться наступного місяця, або щойно ліміт буде підвищено.",
|
|
@@ -1183,7 +1283,8 @@
|
|
|
1183
1283
|
"serviceFragmentDefaults": "Типові найкращі практики сервісу",
|
|
1184
1284
|
"accountSettings": "Налаштування облікового запису",
|
|
1185
1285
|
"localModels": "Мої локальні виконавці",
|
|
1186
|
-
"sandbox": "Відкрити пісочницю"
|
|
1286
|
+
"sandbox": "Відкрити пісочницю",
|
|
1287
|
+
"shortcuts": "Комбінації клавіш"
|
|
1187
1288
|
},
|
|
1188
1289
|
"keywords": {
|
|
1189
1290
|
"newPipeline": "конвеєр агенти ланцюг pipeline",
|
|
@@ -1202,7 +1303,8 @@
|
|
|
1202
1303
|
"serviceFragmentDefaults": "фрагмент найкращі практики настанова сервіс типовий обізнаний з кодом",
|
|
1203
1304
|
"accountSettings": "обліковий запис команда учасники ролі запрошення електронна пошта ключі api фрагмент найкращі практики бібліотека контекст організація особисте",
|
|
1204
1305
|
"localModels": "модель локальна виконавець ollama lm studio llamacpp vllm endpoint",
|
|
1205
|
-
"sandbox": "пісочниця prompt модель тест експеримент суддя fixture benchmark оцінка"
|
|
1306
|
+
"sandbox": "пісочниця prompt модель тест експеримент суддя fixture benchmark оцінка",
|
|
1307
|
+
"shortcuts": "комбінації клавіатура клавіші довідка"
|
|
1206
1308
|
}
|
|
1207
1309
|
},
|
|
1208
1310
|
"integrationsHub": {
|
|
@@ -1275,6 +1377,13 @@
|
|
|
1275
1377
|
"description": "Ваші виконавці моделей на власній машині (Ollama, LM Studio, vLLM…)."
|
|
1276
1378
|
}
|
|
1277
1379
|
}
|
|
1380
|
+
},
|
|
1381
|
+
"shortcuts": {
|
|
1382
|
+
"title": "Комбінації клавіш",
|
|
1383
|
+
"commandBar": "Відкрити командний рядок",
|
|
1384
|
+
"deselect": "Зняти вибір / закрити інспектор",
|
|
1385
|
+
"deleteBlock": "Видалити вибраний блок",
|
|
1386
|
+
"help": "Показати цю пам'ятку"
|
|
1278
1387
|
}
|
|
1279
1388
|
},
|
|
1280
1389
|
"settings": {
|
|
@@ -1317,6 +1426,10 @@
|
|
|
1317
1426
|
"nameRequiredTitle": "Потрібна назва",
|
|
1318
1427
|
"nameRequiredBody": "Дайте набору назву.",
|
|
1319
1428
|
"saveFailed": "Не вдалося зберегти набір"
|
|
1429
|
+
},
|
|
1430
|
+
"confirmDelete": {
|
|
1431
|
+
"title": "Видалити цей пресет моделі?",
|
|
1432
|
+
"body": "\"{name}\" буде видалено. Завдання, що його використовують, повернуться до типового пресету робочого простору."
|
|
1320
1433
|
}
|
|
1321
1434
|
},
|
|
1322
1435
|
"account": {
|
|
@@ -1536,6 +1649,10 @@
|
|
|
1536
1649
|
"saveFailed": "Не вдалося зберегти секрет",
|
|
1537
1650
|
"removed": "Секрет видалено",
|
|
1538
1651
|
"removeFailed": "Не вдалося видалити секрет"
|
|
1652
|
+
},
|
|
1653
|
+
"confirmRemove": {
|
|
1654
|
+
"title": "Прибрати цей секрет?",
|
|
1655
|
+
"body": "\"{name}\" буде видалено. Цю дію не можна скасувати."
|
|
1539
1656
|
}
|
|
1540
1657
|
},
|
|
1541
1658
|
"mergeThresholds": {
|
|
@@ -1582,7 +1699,11 @@
|
|
|
1582
1699
|
"deleteFailed": "Не вдалося видалити набір"
|
|
1583
1700
|
},
|
|
1584
1701
|
"autoMergeOnHint": "Зливати автоматично, коли в межах порогів.",
|
|
1585
|
-
"autoMergeOffHint": "Завжди надсилати PR на перевірку людиною."
|
|
1702
|
+
"autoMergeOffHint": "Завжди надсилати PR на перевірку людиною.",
|
|
1703
|
+
"confirmDelete": {
|
|
1704
|
+
"title": "Видалити цей пресет злиття?",
|
|
1705
|
+
"body": "\"{name}\" буде видалено. Завдання, що його використовують, повернуться до типового пресету робочого простору."
|
|
1706
|
+
}
|
|
1586
1707
|
},
|
|
1587
1708
|
"observabilityConnection": {
|
|
1588
1709
|
"title": "Стан після випуску",
|
|
@@ -1622,7 +1743,9 @@
|
|
|
1622
1743
|
"connected": "Спостережуваність під'єднано",
|
|
1623
1744
|
"connectFailed": "Не вдалося зберегти з'єднання",
|
|
1624
1745
|
"disconnectFailed": "Не вдалося від'єднати"
|
|
1625
|
-
}
|
|
1746
|
+
},
|
|
1747
|
+
"connectionNoun": "з’єднання спостережуваності",
|
|
1748
|
+
"incidentNoun": "постачальника інцидентів"
|
|
1626
1749
|
},
|
|
1627
1750
|
"localMode": {
|
|
1628
1751
|
"title": "Локальний режим",
|
|
@@ -1789,6 +1912,10 @@
|
|
|
1789
1912
|
"saveFailed": "Не вдалося зберегти раннер",
|
|
1790
1913
|
"removed": "Раннер видалено",
|
|
1791
1914
|
"removeFailed": "Не вдалося видалити раннер"
|
|
1915
|
+
},
|
|
1916
|
+
"confirmRemove": {
|
|
1917
|
+
"title": "Прибрати цей runner?",
|
|
1918
|
+
"body": "\"{name}\" буде видалено. Цю дію не можна скасувати."
|
|
1792
1919
|
}
|
|
1793
1920
|
},
|
|
1794
1921
|
"infrastructure": {
|
|
@@ -1823,6 +1950,9 @@
|
|
|
1823
1950
|
"apiServerUrlHelp": "Корінь kube-apiserver, напр. https://my-cluster.example:6443.",
|
|
1824
1951
|
"apiToken": "Токен ServiceAccount",
|
|
1825
1952
|
"apiTokenHelp": "Лише для запису; введіть знову, щоб змінити. Зберігається зашифрованим і ніколи не повертається.",
|
|
1953
|
+
"apiTokenHelpStored": "Токен збережено й повторно використовується для тестів. Залиште порожнім, щоб зберегти його, або введіть новий, щоб замінити.",
|
|
1954
|
+
"apiTokenPlaceholderStored": "Залиште порожнім, щоб зберегти збережений токен",
|
|
1955
|
+
"tokenSaved": "Збережено",
|
|
1826
1956
|
"urlSourceLabel": "Джерело URL середовища",
|
|
1827
1957
|
"urlIngressTemplate": "Шаблон хоста Ingress",
|
|
1828
1958
|
"urlIngressStatus": "Статус Ingress",
|
|
@@ -1875,6 +2005,9 @@
|
|
|
1875
2005
|
"handler": {
|
|
1876
2006
|
"intro": "Налаштуйте, як обробляється кожен тип провіженінгу, оголошений службою: рушій і з'єднання. Маніфести або шлях compose служби (що/де) задаються на службі.",
|
|
1877
2007
|
"activeEngine": "Рушій:",
|
|
2008
|
+
"connectionEstablished": "З'єднання встановлено",
|
|
2009
|
+
"notConnected": "З'єднання ще не налаштовано",
|
|
2010
|
+
"disconnect": "Видалити з'єднання",
|
|
1878
2011
|
"engineLabel": "Рушій",
|
|
1879
2012
|
"customHandlerTitle": "Обробник remote-custom",
|
|
1880
2013
|
"customTypeLabel": "Власний тип",
|
|
@@ -1888,7 +2021,10 @@
|
|
|
1888
2021
|
"overrideActive": "Активне",
|
|
1889
2022
|
"personalOverrideHint": "Перевизначте обробник робочого простору для цього типу провіженінгу на власній машині. Зберігається для кожного користувача.",
|
|
1890
2023
|
"removeOverride": "Видалити перевизначення",
|
|
1891
|
-
"loading": "Завантаження налаштувань інфраструктури…"
|
|
2024
|
+
"loading": "Завантаження налаштувань інфраструктури…",
|
|
2025
|
+
"kubeNoun": "обробник Kubernetes",
|
|
2026
|
+
"kubeOverrideNoun": "перевизначення Kubernetes",
|
|
2027
|
+
"customNoun": "цей обробник"
|
|
1892
2028
|
}
|
|
1893
2029
|
}
|
|
1894
2030
|
},
|
|
@@ -2012,7 +2148,8 @@
|
|
|
2012
2148
|
"step1": "Згенеруйте віртуальний ключ на своєму шлюзі LiteLLM (або використайте його головний ключ).",
|
|
2013
2149
|
"step2": "Базову URL-адресу шлюзу задає оператор вашого розгортання (LITELLM_BASE_URL), а не тут."
|
|
2014
2150
|
}
|
|
2015
|
-
}
|
|
2151
|
+
},
|
|
2152
|
+
"keyNoun": "цей ключ API"
|
|
2016
2153
|
},
|
|
2017
2154
|
"vendorCredentials": {
|
|
2018
2155
|
"title": "Постачальники LLM",
|
|
@@ -2050,6 +2187,10 @@
|
|
|
2050
2187
|
"step2": "Скопіюйте ключ API. Кроки агента виконуватимуться через Claude Code на endpoint Anthropic від DeepSeek із повним контекстом.",
|
|
2051
2188
|
"step3": "Вставте ключ нижче."
|
|
2052
2189
|
}
|
|
2190
|
+
},
|
|
2191
|
+
"confirmRemove": {
|
|
2192
|
+
"title": "Прибрати ці облікові дані?",
|
|
2193
|
+
"body": "\"{name}\" буде видалено. Цю дію не можна скасувати."
|
|
2053
2194
|
}
|
|
2054
2195
|
}
|
|
2055
2196
|
},
|
|
@@ -2146,6 +2287,10 @@
|
|
|
2146
2287
|
"createBranch": "Не вдалося створити гілку",
|
|
2147
2288
|
"openPr": "Не вдалося відкрити pull request",
|
|
2148
2289
|
"merge": "Не вдалося злити"
|
|
2290
|
+
},
|
|
2291
|
+
"confirmDisconnect": {
|
|
2292
|
+
"title": "Від'єднати GitHub?",
|
|
2293
|
+
"body": "Застосунок втратить доступ до ваших репозиторіїв до повторного під'єднання."
|
|
2149
2294
|
}
|
|
2150
2295
|
},
|
|
2151
2296
|
"addService": {
|
|
@@ -2254,6 +2399,10 @@
|
|
|
2254
2399
|
"disconnect": "Не вдалося відключити Slack",
|
|
2255
2400
|
"saveRouting": "Не вдалося зберегти маршрутизацію",
|
|
2256
2401
|
"saveMap": "Не вдалося зберегти карту учасників"
|
|
2402
|
+
},
|
|
2403
|
+
"confirmDisconnect": {
|
|
2404
|
+
"title": "Від'єднати Slack?",
|
|
2405
|
+
"body": "Сповіщення Slack припиняться до повторного під'єднання."
|
|
2257
2406
|
}
|
|
2258
2407
|
},
|
|
2259
2408
|
"documents": {
|
|
@@ -2471,6 +2620,10 @@
|
|
|
2471
2620
|
"cloned": "Клоновано \"{name}\" — триває редагування \"{copy}\"",
|
|
2472
2621
|
"cloneFailed": "Не вдалося клонувати пайплайн",
|
|
2473
2622
|
"updateFailed": "Не вдалося оновити пайплайн"
|
|
2623
|
+
},
|
|
2624
|
+
"confirmDeletePipeline": {
|
|
2625
|
+
"title": "Видалити цей pipeline?",
|
|
2626
|
+
"body": "\"{name}\" буде видалено. Цю дію не можна скасувати."
|
|
2474
2627
|
}
|
|
2475
2628
|
},
|
|
2476
2629
|
"progress": {
|
|
@@ -3031,7 +3184,9 @@
|
|
|
3031
3184
|
"completed": "завершено",
|
|
3032
3185
|
"failed": "не вдалося",
|
|
3033
3186
|
"inProgress": "у процесі"
|
|
3034
|
-
}
|
|
3187
|
+
},
|
|
3188
|
+
"envNoun": "тестове середовище",
|
|
3189
|
+
"destroyFailed": "Не вдалося знищити середовище"
|
|
3035
3190
|
},
|
|
3036
3191
|
"testing": {
|
|
3037
3192
|
"title": "Звіт про тестування",
|
|
@@ -3380,6 +3535,10 @@
|
|
|
3380
3535
|
"checkSourceFailed": "Не вдалося перевірити джерело",
|
|
3381
3536
|
"sourceUnlinked": "Джерело відв'язано",
|
|
3382
3537
|
"unlinkSourceFailed": "Не вдалося відв'язати джерело"
|
|
3538
|
+
},
|
|
3539
|
+
"confirmRemove": {
|
|
3540
|
+
"title": "Видалити цей фрагмент?",
|
|
3541
|
+
"body": "\"{name}\" буде видалено. Цю дію не можна скасувати."
|
|
3383
3542
|
}
|
|
3384
3543
|
},
|
|
3385
3544
|
"sandbox": {
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@cat-factory/app",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.71.0",
|
|
4
4
|
"description": "Reusable Nuxt layer for the Agent Architecture Board SPA (components, stores, composables, pages). Consume it from a thin deployment app via `extends: ['@cat-factory/app']` and point it at your backend with NUXT_PUBLIC_API_BASE. See deploy/frontend for an example.",
|
|
5
5
|
"repository": {
|
|
6
6
|
"type": "git",
|
|
@@ -34,7 +34,7 @@
|
|
|
34
34
|
"valibot": "^1.4.2",
|
|
35
35
|
"vue": "^3.5.39",
|
|
36
36
|
"wretch": "^3.0.9",
|
|
37
|
-
"@cat-factory/contracts": "0.
|
|
37
|
+
"@cat-factory/contracts": "0.77.0"
|
|
38
38
|
},
|
|
39
39
|
"devDependencies": {
|
|
40
40
|
"@toad-contracts/testing": "0.3.2",
|
|
@@ -54,6 +54,7 @@
|
|
|
54
54
|
"postinstall": "nuxt prepare",
|
|
55
55
|
"typecheck": "nuxt typecheck",
|
|
56
56
|
"i18n:check": "node scripts/i18n-check.mjs",
|
|
57
|
+
"i18n:parity": "node scripts/i18n-locale-parity.mjs",
|
|
57
58
|
"test": "vitest",
|
|
58
59
|
"test:run": "vitest run"
|
|
59
60
|
}
|