feat: load plugin frontends at runtime and remove plugin ids from the shell

This commit is contained in:
LukeGus committed 2026-09-22 20:15:52 -05:00
1 parent 49f0286a14
commit e88d5a52e3
721 files changed
+54265 -44416

No files matched your search

+171 -1
View File
@@ -1 +1,171 @@
{}
{
"permissions": {
"view": {
"title": "View automations",
"description": "See the automations and their history."
},
"create": {
"title": "Create automations",
"description": "Add new automations."
},
"edit": {
"title": "Edit automations",
"description": "Change existing automations."
},
"delete": {
"title": "Delete automations",
"description": "Remove automations."
},
"run": {
"title": "Run automations",
"description": "Trigger an automation by hand."
}
},
"newUi": {
"sidebar": {
"automations": {
"title": "Automations",
"tabAutomations": "Automations",
"tabRuns": "Runs",
"tabChannels": "Channels",
"createAutomation": "New Automation",
"backToAutomations": "Back to Automations",
"createTitle": "New Automation",
"editTitle": "Edit Automation",
"empty": "No automations yet. Create one to react to a metric, a schedule, or an event.",
"emptyRuns": "No runs yet.",
"emptyChannels": "No channels yet. Add one to send notifications somewhere.",
"noChannelsHint": "No channels set up yet. Add one in the Channels tab.",
"addChannel": "Add Channel",
"testChannel": "Test",
"channelTestSent": "Test notification sent",
"channelTestFailed": "Test notification failed",
"channelDeleted": "Channel deleted",
"deleteChannelConfirm": "Delete this channel? Automations using it will stop notifying.",
"nameLabel": "Name",
"namePlaceholder": "e.g., Clean up /data when it fills",
"nameRequired": "Name is required",
"descriptionLabel": "Description",
"descriptionPlaceholder": "Optional description",
"enabledLabel": "Enabled",
"concurrencyLabel": "If it is already running",
"concurrencyHint": "What to do when this is triggered again before the last run has finished.",
"concurrency": {
"skip": "Skip the new run",
"queue": "Wait and run after",
"allow": "Run both at once"
},
"save": "Save",
"created": "Automation created",
"updated": "Automation saved",
"deleted": "Automation deleted",
"deleteConfirm": "Delete this automation? Its run history is deleted too.",
"runNow": "Run now",
"testRun": "Test run",
"testRunHint": "Runs every step but does not touch anything outside Termix.",
"runStarted": "Run started",
"runFinished": "Run finished: {{status}}",
"trigger": "Trigger",
"steps": "Steps",
"addStep": "Add step",
"removeStep": "Remove step",
"moveUp": "Move up",
"moveDown": "Move down",
"noSteps": "No steps yet. Add one to say what should happen.",
"webhookTokenTitle": "Webhook URL",
"webhookTokenDescription": "This is shown once. Save it now, it cannot be retrieved later.",
"copy": "Copy",
"copied": "Copied",
"viewJson": "JSON",
"viewBuilder": "Builder",
"viewGraph": "Graph",
"lastRun": "Last run",
"never": "Never",
"duration": "{{seconds}}s",
"stepOutput": "Output",
"stepError": "Error",
"dryRunBadge": "Test run",
"hostSelector": {
"trigger": "Triggering host",
"host": "Specific host",
"fleet": "Fleet",
"all": "All hosts"
},
"triggerKinds": {
"metric_threshold": "Metric threshold",
"host_status": "Host goes up or down",
"health_check": "Health check changes",
"schedule": "On a schedule",
"docker_event": "Container event",
"internal_event": "Termix event",
"webhook": "Incoming webhook"
},
"stepTypes": {
"notify": "Send a notification",
"http": "Call a URL",
"run_snippet": "Run a snippet",
"run_command": "Run a command",
"docker": "Control a container",
"tunnel": "Control a tunnel",
"wol": "Wake a host",
"wait": "Wait",
"set_var": "Set a variable",
"if": "If / otherwise",
"run_automation": "Run another automation",
"stop": "Stop"
},
"statuses": {
"running": "Running",
"success": "Success",
"failed": "Failed",
"timeout": "Timed out",
"skipped": "Skipped",
"cancelled": "Cancelled"
},
"fields": {
"host": "Host",
"metric": "Metric",
"mount": "Mount point",
"operator": "Is",
"value": "Value",
"forSeconds": "Sustained for (seconds)",
"cooldown": "Cooldown (minutes)",
"cron": "Cron expression",
"intervalSeconds": "Every (seconds)",
"timezone": "Time zone",
"timezoneServer": "Server time",
"timezoneHint": "Cron times are read in this zone. Does not apply to interval schedules.",
"container": "Container",
"command": "Command",
"url": "URL",
"method": "Method",
"body": "Body",
"channels": "Channels",
"title": "Title",
"message": "Message",
"snippet": "Snippet",
"seconds": "Seconds",
"conditionLeftPlaceholder": "Value to check",
"conditionRightPlaceholder": "Compare against",
"variableName": "Variable name",
"variableValue": "Value",
"elevated": "Run with sudo",
"onError": "If this fails",
"allowPrivateNetwork": "Allow local network addresses",
"allowPrivateNetworkHint": "Needed for a self-hosted service on your LAN. Off by default to prevent requests to internal addresses."
},
"onError": {
"stop": "Stop the run",
"continue": "Carry on"
}
}
}
},
"nav": {
"automations": "Automations"
},
"onboarding": {
"feature_automations": "Automations",
"feature_automations_desc": "Run steps automatically when something happens, and get notified."
}
}
@@ -0,0 +1,149 @@
{
"newUi": {
"sidebar": {
"automations": {
"title": "Outomatisasies",
"tabAutomations": "Outomatisasies",
"tabRuns": "Loopbane",
"tabChannels": "Kanale",
"createAutomation": "Nuwe Outomatisering",
"backToAutomations": "Terug na Outomatisasies",
"createTitle": "Nuwe Outomatisering",
"editTitle": "Wysig Outomatisering",
"empty": "Geen outomatisasies nog nie. Skep een om op 'n maatstaf, 'n skedule of 'n gebeurtenis te reageer.",
"emptyRuns": "Geen lopies nog nie.",
"emptyChannels": "Geen kanale nog nie. Voeg een by om kennisgewings êrens heen te stuur.",
"noChannelsHint": "Geen kanale nog opgestel nie. Voeg een by in die Kanale-oortjie.",
"addChannel": "Voeg kanaal by",
"testChannel": "Toets",
"channelTestSent": "Toetskennisgewing gestuur",
"channelTestFailed": "Toetskennisgewing het misluk",
"channelDeleted": "Kanaal uitgevee",
"deleteChannelConfirm": "Vee hierdie kanaal uit? Outomatiserings wat dit gebruik, sal ophou om kennisgewings te stuur.",
"nameLabel": "Naam",
"namePlaceholder": "bv. Maak /data skoon wanneer dit vol is",
"nameRequired": "Naam word vereis",
"descriptionLabel": "Beskrywing",
"descriptionPlaceholder": "Opsionele beskrywing",
"enabledLabel": "Geaktiveer",
"concurrencyLabel": "As dit reeds aan die gang is",
"concurrencyHint": "Wat om te doen wanneer dit weer geaktiveer word voordat die laaste lopie klaar is.",
"concurrency": {
"skip": "Slaan die nuwe lopie oor",
"queue": "Wag en hardloop agterna",
"allow": "Begin albei gelyktydig"
},
"save": "Stoor",
"created": "Outomatisering geskep",
"updated": "Outomatisering gestoor",
"deleted": "Outomatisering uitgevee",
"deleteConfirm": "Vee hierdie outomatisering uit? Die loopgeskiedenis daarvan word ook uitgevee.",
"runNow": "Hardloop nou",
"testRun": "Toetslopie",
"testRunHint": "Loop elke stap, maar raak niks buite Termix aan nie.",
"runStarted": "Loop het begin",
"runFinished": "Loop voltooi: {{status}}",
"trigger": "Sneller",
"steps": "Stappe",
"addStep": "Voeg stap by",
"removeStep": "Verwyder stap",
"moveUp": "Beweeg op",
"moveDown": "Beweeg af",
"noSteps": "Geen stappe nog nie. Voeg een by om te sê wat moet gebeur.",
"webhookTokenTitle": "Webhook-URL",
"webhookTokenDescription": "Dit word een keer gewys. Stoor dit nou, dit kan nie later herwin word nie.",
"copy": "Kopieer",
"copied": "Gekopieer",
"viewJson": "JSON",
"viewBuilder": "Bouer",
"viewGraph": "Grafiek",
"lastRun": "Laaste lopie",
"never": "Nooit",
"duration": "{{seconds}}s",
"stepOutput": "Uitset",
"stepError": "Fout",
"dryRunBadge": "Toetslopie",
"hostSelector": {
"trigger": "Aanvallende gasheer",
"host": "Spesifieke gasheer",
"fleet": "Vloot",
"all": "Alle gashere"
},
"triggerKinds": {
"metric_threshold": "Metrieke drempel",
"host_status": "Gasheer gaan op of af",
"health_check": "Veranderinge in gesondheidstoetse",
"schedule": "Op 'n skedule",
"docker_event": "Houergebeurtenis",
"internal_event": "Termix-geleentheid",
"webhook": "Inkomende webhook"
},
"stepTypes": {
"notify": "Stuur 'n kennisgewing",
"http": "Roep 'n URL op",
"run_snippet": "Voer 'n brokkie uit",
"run_command": "Voer 'n opdrag uit",
"docker": "Beheer 'n houer",
"tunnel": "Beheer 'n tonnel",
"wol": "Maak 'n gasheer wakker",
"wait": "Wag",
"set_var": "Stel 'n veranderlike",
"if": "Indien / andersins",
"run_automation": "Begin nog 'n outomatisering",
"stop": "Stop"
},
"statuses": {
"running": "Hardloop",
"success": "Sukses",
"failed": "Misluk",
"timeout": "Tyd verstryk",
"skipped": "Oorgeslaan",
"cancelled": "Gekanselleer"
},
"fields": {
"host": "Gasheer",
"metric": "Metrieke",
"mount": "Monteerpunt",
"operator": "Is",
"value": "Waarde",
"forSeconds": "Aangehou vir (sekondes)",
"cooldown": "Afkoeltyd (minute)",
"cron": "Cron-uitdrukking",
"intervalSeconds": "Elke (sekondes)",
"timezone": "Tydsone",
"timezoneServer": "Bedienertyd",
"timezoneHint": "Cron-tye word in hierdie sone gelees. Geld nie vir intervalskedules nie.",
"container": "Houer",
"command": "Bevel",
"url": "URL",
"method": "Metode",
"body": "Liggaam",
"channels": "Kanale",
"title": "Titel",
"message": "Boodskap",
"snippet": "Brokkie",
"seconds": "Sekondes",
"conditionLeftPlaceholder": "Waarde om na te gaan",
"conditionRightPlaceholder": "Vergelyk teen",
"variableName": "Veranderlike naam",
"variableValue": "Waarde",
"elevated": "Begin met sudo",
"onError": "As dit misluk",
"allowPrivateNetwork": "Laat plaaslike netwerkadresse toe",
"allowPrivateNetworkHint": "Nodig vir 'n selfgehoste diens op jou LAN. Standaard afgeskakel om versoeke na interne adresse te voorkom."
},
"onError": {
"stop": "Stop die hardloop",
"continue": "Gaan voort"
}
}
}
},
"nav": {
"automations": "Outomatisasies"
},
"onboarding": {
"feature_automations": "Outomatisasies",
"feature_automations_desc": "Voer stappe outomaties uit wanneer iets gebeur, en word in kennis gestel."
}
}
@@ -0,0 +1,149 @@
{
"newUi": {
"sidebar": {
"automations": {
"title": "الأتمتة",
"tabAutomations": "الأتمتة",
"tabRuns": "يركض",
"tabChannels": "القنوات",
"createAutomation": "الأتمتة الجديدة",
"backToAutomations": "العودة إلى الأتمتة",
"createTitle": "الأتمتة الجديدة",
"editTitle": "أتمتة التحرير",
"empty": "لا توجد عمليات أتمتة حتى الآن. أنشئ واحدة للتفاعل مع مقياس أو جدول زمني أو حدث.",
"emptyRuns": "لم يتم تسجيل أي نقاط حتى الآن.",
"emptyChannels": "لا توجد قنوات حتى الآن. أضف قناة لإرسال الإشعارات إلى مكان ما.",
"noChannelsHint": "لم يتم إعداد أي قنوات بعد. أضف قناة في تبويب القنوات.",
"addChannel": "إضافة قناة",
"testChannel": "امتحان",
"channelTestSent": "تم إرسال إشعار الاختبار",
"channelTestFailed": "فشل إشعار الاختبار",
"channelDeleted": "تم حذف القناة",
"deleteChannelConfirm": "هل تريد حذف هذه القناة؟ ستتوقف عمليات التشغيل الآلي التي تستخدمها عن إرسال الإشعارات.",
"nameLabel": "اسم",
"namePlaceholder": "مثال: تنظيف /data عند امتلائها",
"nameRequired": "الاسم مطلوب",
"descriptionLabel": "وصف",
"descriptionPlaceholder": "وصف اختياري",
"enabledLabel": "مُفعّل",
"concurrencyLabel": "إذا كان قيد التشغيل بالفعل",
"concurrencyHint": "ماذا نفعل عندما يتم تشغيل هذا مرة أخرى قبل انتهاء التشغيل الأخير؟",
"concurrency": {
"skip": "تخطَّ الجولة الجديدة",
"queue": "انتظر واركض خلفه",
"allow": "قم بتشغيل كليهما في وقت واحد"
},
"save": "يحفظ",
"created": "تم إنشاء الأتمتة",
"updated": "تم حفظ الأتمتة",
"deleted": "تم حذف الأتمتة",
"deleteConfirm": "هل تريد حذف هذه العملية الآلية؟ سيتم حذف سجل تشغيلها أيضاً.",
"runNow": "انطلق الآن",
"testRun": "تشغيل تجريبي",
"testRunHint": "يقوم بتنفيذ كل خطوة ولكنه لا يلمس أي شيء خارج Termix.",
"runStarted": "بدأ الجري",
"runFinished": "انتهت العملية: {{status}}",
"trigger": "مشغل",
"steps": "خطوات",
"addStep": "خطوات إضافية",
"removeStep": "خطوة الإزالة",
"moveUp": "انتقل إلى مستوى أعلى",
"moveDown": "انزل لأسفل",
"noSteps": "لم تُتخذ أي خطوات بعد. أضف خطوة واحدة لتوضيح ما ينبغي أن يحدث.",
"webhookTokenTitle": "رابط الويب هوك",
"webhookTokenDescription": "هذا يظهر مرة واحدة فقط. احفظه الآن، فلن تتمكن من استعادته لاحقاً.",
"copy": "ينسخ",
"copied": "تم النسخ",
"viewJson": "JSON",
"viewBuilder": "باني",
"viewGraph": "الرسم البياني",
"lastRun": "الجولة الأخيرة",
"never": "أبداً",
"duration": "{{seconds}}s",
"stepOutput": "الناتج",
"stepError": "خطأ",
"dryRunBadge": "تشغيل تجريبي",
"hostSelector": {
"trigger": "تشغيل المضيف",
"host": "مضيف محدد",
"fleet": "أسطول",
"all": "جميع المضيفين"
},
"triggerKinds": {
"metric_threshold": "العتبة المترية",
"host_status": "يرتفع أو ينخفض مستوى المضيف",
"health_check": "تغييرات في الفحص الصحي",
"schedule": "وفقًا لجدول زمني",
"docker_event": "حدث الحاوية",
"internal_event": "حدث تيرميكس",
"webhook": "رابط الويب الوارد"
},
"stepTypes": {
"notify": "إرسال إشعار",
"http": "استدعاء عنوان URL",
"run_snippet": "قم بتشغيل جزء من التعليمات البرمجية",
"run_command": "نفّذ أمرًا",
"docker": "التحكم في حاوية",
"tunnel": "التحكم في نفق",
"wol": "أيقظ مضيفًا",
"wait": "انتظر",
"set_var": "قم بتعيين متغير",
"if": "إذا / خلاف ذلك",
"run_automation": "قم بتشغيل عملية أتمتة أخرى",
"stop": "قف"
},
"statuses": {
"running": "جري",
"success": "نجاح",
"failed": "فشل",
"timeout": "انتهت مهلة الاتصال",
"skipped": "تم التخطي",
"cancelled": "تم الإلغاء"
},
"fields": {
"host": "يستضيف",
"metric": "متري",
"mount": "نقطة التثبيت",
"operator": "يكون",
"value": "قيمة",
"forSeconds": "استمر لمدة (ثوانٍ)",
"cooldown": "فترة التهدئة (بالدقائق)",
"cron": "تعبير كرون",
"intervalSeconds": "كل (ثانية)",
"timezone": "المنطقة الزمنية",
"timezoneServer": "وقت الخادم",
"timezoneHint": "تُقرأ أوقات Cron في هذه المنطقة. لا ينطبق ذلك على الجداول الزمنية الفاصلة.",
"container": "حاوية",
"command": "يأمر",
"url": "عنوان URL",
"method": "طريقة",
"body": "جسم",
"channels": "القنوات",
"title": "عنوان",
"message": "رسالة",
"snippet": "مقتطف",
"seconds": "ثوانٍ",
"conditionLeftPlaceholder": "قيمة يجب التحقق منها",
"conditionRightPlaceholder": "قارن بـ",
"variableName": "اسم المتغير",
"variableValue": "قيمة",
"elevated": "قم بتشغيل الأمر sudo",
"onError": "إذا فشل هذا",
"allowPrivateNetwork": "السماح بعناوين الشبكة المحلية",
"allowPrivateNetworkHint": "هذا الخيار ضروري لخدمة مُستضافة ذاتيًا على شبكتك المحلية. وهو مُعطّل افتراضيًا لمنع الطلبات إلى العناوين الداخلية."
},
"onError": {
"stop": "أوقف الجري",
"continue": "حمل"
}
}
}
},
"nav": {
"automations": "الأتمتة"
},
"onboarding": {
"feature_automations": "الأتمتة",
"feature_automations_desc": "قم بتشغيل الخطوات تلقائيًا عند حدوث شيء ما، واحصل على إشعار بذلك."
}
}
@@ -0,0 +1,149 @@
{
"newUi": {
"sidebar": {
"automations": {
"title": "Автоматизации",
"tabAutomations": "Автоматизации",
"tabRuns": "Бягания",
"tabChannels": "Канали",
"createAutomation": "Нова автоматизация",
"backToAutomations": "Обратно към Автоматизации",
"createTitle": "Нова автоматизация",
"editTitle": "Редактиране на автоматизация",
"empty": "Все още няма автоматизации. Създайте такава, която да реагира на показател, график или събитие.",
"emptyRuns": "Все още няма бягания.",
"emptyChannels": "Все още няма канали. Добавете такъв, за да изпращате известия някъде.",
"noChannelsHint": "Все още няма настроени канали. Добавете такъв в раздела „Канали“.",
"addChannel": "Добавяне на канал",
"testChannel": "Тест",
"channelTestSent": "Тестово известие е изпратено",
"channelTestFailed": "Тестовото известие не беше успешно",
"channelDeleted": "Каналът е изтрит",
"deleteChannelConfirm": "Да се изтрие ли този канал? Автоматизациите, които го използват, ще спрат да получават известия.",
"nameLabel": "Име",
"namePlaceholder": "напр. Почистване на /данни, когато се запълни",
"nameRequired": "Името е задължително",
"descriptionLabel": "Описание",
"descriptionPlaceholder": "Незадължително описание",
"enabledLabel": "Активирано",
"concurrencyLabel": "Ако вече работи",
"concurrencyHint": "Какво да направите, когато това се задейства отново, преди да е завършило последното изпълнение.",
"concurrency": {
"skip": "Пропуснете новото бягане",
"queue": "Изчакай и бягай след това",
"allow": "Изпълнете и двете едновременно"
},
"save": "Запазване",
"created": "Автоматизация, създадена",
"updated": "Автоматизацията е запазена",
"deleted": "Автоматизацията е изтрита",
"deleteConfirm": "Да се изтрие ли тази автоматизация? Историята на нейните изпълнения също ще бъде изтрита.",
"runNow": "Бягай сега",
"testRun": "Тестов пробег",
"testRunHint": "Изпълнява всяка стъпка, но не докосва нищо извън Termix.",
"runStarted": "Бягането започна",
"runFinished": "Изпълнението е завършено: {{status}}",
"trigger": "Спусък",
"steps": "Стъпки",
"addStep": "Добавяне на стъпка",
"removeStep": "Премахване на стъпка",
"moveUp": "Премести нагоре",
"moveDown": "Премести надолу",
"noSteps": "Все още няма стъпки. Добавете една, за да кажете какво трябва да се случи.",
"webhookTokenTitle": "URL адрес на уебкукичката",
"webhookTokenDescription": "Това се показва веднъж. Запазете го сега, не може да бъде извлечено по-късно.",
"copy": "Копиране",
"copied": "Копирано",
"viewJson": "JSON",
"viewBuilder": "Строител",
"viewGraph": "Графика",
"lastRun": "Последно бягане",
"never": "Никога",
"duration": "{{seconds}}с",
"stepOutput": "Изход",
"stepError": "Грешка",
"dryRunBadge": "Тестов пробег",
"hostSelector": {
"trigger": "Задействащ хост",
"host": "Специфичен хост",
"fleet": "Флот",
"all": "Всички хостове"
},
"triggerKinds": {
"metric_threshold": "Праг на показателя",
"host_status": "Домакинът се изкачва или слиза",
"health_check": "Промени в проверката на състоянието",
"schedule": "По график",
"docker_event": "Събитие в контейнера",
"internal_event": "Събитие Termix",
"webhook": "Входящ уеб кукичка"
},
"stepTypes": {
"notify": "Изпращане на известие",
"http": "Извикване на URL адрес",
"run_snippet": "Изпълнете фрагмент",
"run_command": "Изпълнете команда",
"docker": "Контрол на контейнер",
"tunnel": "Контрол на тунел",
"wol": "Събудете домакин",
"wait": "Чакай",
"set_var": "Задаване на променлива",
"if": "Ако / в противен случай",
"run_automation": "Изпълнете друга автоматизация",
"stop": "Спри"
},
"statuses": {
"running": "Бягане",
"success": "Успех",
"failed": "Неуспешно",
"timeout": "Времето за изчакване изтече",
"skipped": "Пропуснато",
"cancelled": "Отменено"
},
"fields": {
"host": "Домакин",
"metric": "Метричен",
"mount": "Точка на монтиране",
"operator": "Е",
"value": "Стойност",
"forSeconds": "Задържа се за (секунди)",
"cooldown": "Охлаждане (минути)",
"cron": "Cron израз",
"intervalSeconds": "Всеки (секунди)",
"timezone": "Часова зона",
"timezoneServer": "Време на сървъра",
"timezoneHint": "Cron времената се отчитат в тази зона. Не се отнася за интервални графици.",
"container": "Контейнер",
"command": "Команда",
"url": "URL адрес",
"method": "Метод",
"body": "Тяло",
"channels": "Канали",
"title": "Заглавие",
"message": "Съобщение",
"snippet": "Фрагмент",
"seconds": "Секунди",
"conditionLeftPlaceholder": "Стойност за проверка",
"conditionRightPlaceholder": "Сравнете с",
"variableName": "Име на променлива",
"variableValue": "Стойност",
"elevated": "Стартирай със sudo",
"onError": "Ако това не успее",
"allowPrivateNetwork": "Разрешаване на локални мрежови адреси",
"allowPrivateNetworkHint": "Необходимо за самостоятелно хоствана услуга във вашата локална мрежа. Изключено по подразбиране, за да се предотвратят заявки към вътрешни адреси."
},
"onError": {
"stop": "Спрете бягането",
"continue": "Продължавай"
}
}
}
},
"nav": {
"automations": "Автоматизации"
},
"onboarding": {
"feature_automations": "Автоматизации",
"feature_automations_desc": "Изпълнявайте стъпките автоматично, когато нещо се случи, и получавайте известия."
}
}
@@ -0,0 +1,149 @@
{
"newUi": {
"sidebar": {
"automations": {
"title": "অটোমেশন",
"tabAutomations": "অটোমেশন",
"tabRuns": "রান",
"tabChannels": "চ্যানেল",
"createAutomation": "নতুন অটোমেশন",
"backToAutomations": "অটোমেশনে ফিরে যান",
"createTitle": "নতুন অটোমেশন",
"editTitle": "সম্পাদনা অটোমেশন",
"empty": "এখনো কোনো অটোমেশন নেই। কোনো মেট্রিক, শিডিউল বা ইভেন্টের প্রতিক্রিয়ায় একটি তৈরি করুন।",
"emptyRuns": "এখনো কোনো রান হয়নি।",
"emptyChannels": "এখনো কোনো চ্যানেল নেই। নোটিফিকেশন পাঠানোর জন্য একটি চ্যানেল যোগ করুন।",
"noChannelsHint": "এখনো কোনো চ্যানেল সেট আপ করা হয়নি। চ্যানেল ট্যাবে একটি চ্যানেল যোগ করুন।",
"addChannel": "চ্যানেল যোগ করুন",
"testChannel": "পরীক্ষা",
"channelTestSent": "পরীক্ষার বিজ্ঞপ্তি পাঠানো হয়েছে",
"channelTestFailed": "পরীক্ষার বিজ্ঞপ্তি ব্যর্থ হয়েছে",
"channelDeleted": "চ্যানেল মুছে ফেলা হয়েছে",
"deleteChannelConfirm": "এই চ্যানেলটি মুছে ফেললে? এটি ব্যবহার করা অটোমেশনগুলো নোটিফিকেশন পাঠানো বন্ধ করে দেবে।",
"nameLabel": "নাম",
"namePlaceholder": "যেমন, /data পূর্ণ হয়ে গেলে তা পরিষ্কার করুন।",
"nameRequired": "নাম আবশ্যক",
"descriptionLabel": "বর্ণনা",
"descriptionPlaceholder": "ঐচ্ছিক বিবরণ",
"enabledLabel": "সক্ষম করা হয়েছে",
"concurrencyLabel": "যদি এটি ইতিমধ্যে চালু থাকে",
"concurrencyHint": "শেষ রান শেষ হওয়ার আগেই এটি আবার চালু হলে কী করতে হবে।",
"concurrency": {
"skip": "নতুন রানটি এড়িয়ে যান।",
"queue": "অপেক্ষা করো এবং পিছনে দৌড়াও",
"allow": "একসাথে দুটোই চালান"
},
"save": "সংরক্ষণ করুন",
"created": "অটোমেশন তৈরি করা হয়েছে",
"updated": "অটোমেশন সংরক্ষিত",
"deleted": "অটোমেশন মুছে ফেলা হয়েছে",
"deleteConfirm": "এই অটোমেশনটি ডিলিট করলে, এর রান হিস্ট্রিও ডিলিট হয়ে যাবে।",
"runNow": "এখনই দৌড়ান",
"testRun": "পরীক্ষামূলক চালনা",
"testRunHint": "প্রতিটি ধাপ চলে কিন্তু টার্মিক্সের বাইরের কোনো কিছু স্পর্শ করে না।",
"runStarted": "দৌড় শুরু হলো",
"runFinished": "দৌড় শেষ: {{status}}",
"trigger": "ট্রিগার",
"steps": "পদক্ষেপ",
"addStep": "ধাপ যোগ করুন",
"removeStep": "ধাপটি সরান",
"moveUp": "উপরে উঠুন",
"moveDown": "নিচে নামুন",
"noSteps": "এখনো কোনো ধাপ যোগ করা হয়নি। কী হওয়া উচিত তা জানাতে একটি ধাপ যোগ করুন।",
"webhookTokenTitle": "ওয়েবহুক ইউআরএল",
"webhookTokenDescription": "এটি একবারই দেখানো হবে। এখনই সংরক্ষণ করুন, পরে আর পুনরুদ্ধার করা যাবে না।",
"copy": "অনুলিপি",
"copied": "অনুলিপি করা হয়েছে",
"viewJson": "JSON",
"viewBuilder": "নির্মাতা",
"viewGraph": "গ্রাফ",
"lastRun": "শেষ দৌড়",
"never": "কখনো না",
"duration": "{{seconds}}s",
"stepOutput": "আউটপুট",
"stepError": "ত্রুটি",
"dryRunBadge": "পরীক্ষামূলক চালনা",
"hostSelector": {
"trigger": "ট্রিগারিং হোস্ট",
"host": "নির্দিষ্ট হোস্ট",
"fleet": "ফ্লিট",
"all": "সকল হোস্ট"
},
"triggerKinds": {
"metric_threshold": "মেট্রিক থ্রেশহোল্ড",
"host_status": "হোস্ট উপরে বা নিচে যায়",
"health_check": "স্বাস্থ্য পরীক্ষার পরিবর্তন",
"schedule": "একটি সময়সূচী অনুযায়ী",
"docker_event": "কন্টেইনার ইভেন্ট",
"internal_event": "টারমিক্স ইভেন্ট",
"webhook": "ইনকামিং ওয়েবহুক"
},
"stepTypes": {
"notify": "একটি বিজ্ঞপ্তি পাঠান",
"http": "একটি URL কল করুন",
"run_snippet": "একটি স্নিপেট চালান",
"run_command": "একটি কমান্ড চালান",
"docker": "একটি কন্টেইনার নিয়ন্ত্রণ করুন",
"tunnel": "একটি টানেল নিয়ন্ত্রণ করুন",
"wol": "একজন হোস্টকে জাগান",
"wait": "অপেক্ষা করুন",
"set_var": "একটি ভেরিয়েবল সেট করুন",
"if": "যদি / অন্যথায়",
"run_automation": "আরেকটি অটোমেশন চালান",
"stop": "থামুন"
},
"statuses": {
"running": "দৌড়ানো",
"success": "সাফল্য",
"failed": "ব্যর্থ",
"timeout": "সময়সীমা শেষ",
"skipped": "বাদ দেওয়া হয়েছে",
"cancelled": "বাতিল করা হয়েছে"
},
"fields": {
"host": "হোস্ট",
"metric": "মেট্রিক",
"mount": "মাউন্ট পয়েন্ট",
"operator": "হয়",
"value": "মূল্য",
"forSeconds": "(সেকেন্ড) ধরে স্থায়ী",
"cooldown": "কুলডাউন (মিনিট)",
"cron": "ক্রোন এক্সপ্রেশন",
"intervalSeconds": "প্রতি (সেকেন্ডে)",
"timezone": "সময় অঞ্চল",
"timezoneServer": "সার্ভারের সময়",
"timezoneHint": "এই জোনে ক্রন টাইম পড়া হয়। এটি ইন্টারভাল শিডিউলের ক্ষেত্রে প্রযোজ্য নয়।",
"container": "কন্টেইনার",
"command": "আদেশ",
"url": "ইউআরএল",
"method": "পদ্ধতি",
"body": "শরীর",
"channels": "চ্যানেল",
"title": "শিরোনাম",
"message": "বার্তা",
"snippet": "স্নিপেট",
"seconds": "সেকেন্ড",
"conditionLeftPlaceholder": "যাচাই করার মান",
"conditionRightPlaceholder": "তুলনা করুন",
"variableName": "ভেরিয়েবলের নাম",
"variableValue": "মূল্য",
"elevated": "sudo দিয়ে চালান",
"onError": "যদি এটি ব্যর্থ হয়",
"allowPrivateNetwork": "স্থানীয় নেটওয়ার্ক ঠিকানাগুলির অনুমতি দিন",
"allowPrivateNetworkHint": "আপনার ল্যানে সেলফ-হোস্টেড সার্ভিসের জন্য প্রয়োজন। অভ্যন্তরীণ অ্যাড্রেসে অনুরোধ পাঠানো প্রতিরোধ করতে এটি ডিফল্টরূপে বন্ধ থাকে।"
},
"onError": {
"stop": "দৌড় থামাও",
"continue": "চালিয়ে যান"
}
}
}
},
"nav": {
"automations": "অটোমেশন"
},
"onboarding": {
"feature_automations": "অটোমেশন",
"feature_automations_desc": "কোনো ঘটনা ঘটলে স্বয়ংক্রিয়ভাবে ধাপগুলো সম্পন্ন করুন এবং বিজ্ঞপ্তি পান।"
}
}
@@ -0,0 +1,149 @@
{
"newUi": {
"sidebar": {
"automations": {
"title": "Automatitzacions",
"tabAutomations": "Automatitzacions",
"tabRuns": "Carreres",
"tabChannels": "Canals",
"createAutomation": "Nova automatització",
"backToAutomations": "Torna a Automatitzacions",
"createTitle": "Nova automatització",
"editTitle": "Edita l'automatització",
"empty": "Encara no hi ha automatitzacions. Crea'n una per reaccionar a una mètrica, una programació o un esdeveniment.",
"emptyRuns": "Encara no hi ha curses.",
"emptyChannels": "Encara no hi ha cap canal. Afegeix-ne un per enviar notificacions a algun lloc.",
"noChannelsHint": "Encara no s'ha configurat cap canal. Afegeix-ne un a la pestanya Canals.",
"addChannel": "Afegeix un canal",
"testChannel": "Prova",
"channelTestSent": "Notificació de prova enviada",
"channelTestFailed": "La notificació de prova ha fallat",
"channelDeleted": "Canal suprimit",
"deleteChannelConfirm": "Voleu suprimir aquest canal? Les automatitzacions que l'utilitzen deixaran de notificar.",
"nameLabel": "Nom",
"namePlaceholder": "p. ex., Neteja /dades quan s'ompli",
"nameRequired": "El nom és obligatori",
"descriptionLabel": "Descripció",
"descriptionPlaceholder": "Descripció opcional",
"enabledLabel": "Activat",
"concurrencyLabel": "Si ja està en funcionament",
"concurrencyHint": "Què cal fer quan això es torna a activar abans que s'hagi acabat l'última execució.",
"concurrency": {
"skip": "Omet la nova cursa",
"queue": "Espera i corre darrere",
"allow": "Executa tots dos alhora"
},
"save": "Desa",
"created": "Automatització creada",
"updated": "Automatització desada",
"deleted": "Automatització suprimida",
"deleteConfirm": "Voleu suprimir aquesta automatització? També se n'esborra l'historial d'execucions.",
"runNow": "Executa ara",
"testRun": "Prova de funcionament",
"testRunHint": "Corre cada pas però no toca res fora de Termix.",
"runStarted": "Execució iniciada",
"runFinished": "Execució acabada: {{status}}",
"trigger": "Disparador",
"steps": "Passos",
"addStep": "Afegeix un pas",
"removeStep": "Elimina el pas",
"moveUp": "Puja",
"moveDown": "Moure cap avall",
"noSteps": "Encara no hi ha cap pas. Afegeix-ne un per indicar què hauria de passar.",
"webhookTokenTitle": "URL del webhook",
"webhookTokenDescription": "Això es mostra una vegada. Desa-ho ara, no es podrà recuperar més tard.",
"copy": "Còpia",
"copied": "Copiat",
"viewJson": "JSON",
"viewBuilder": "Constructor",
"viewGraph": "Gràfic",
"lastRun": "Última cursa",
"never": "Mai",
"duration": "{{seconds}}s",
"stepOutput": "Sortida",
"stepError": "Error",
"dryRunBadge": "Prova de funcionament",
"hostSelector": {
"trigger": "Host activador",
"host": "Amfitrió específic",
"fleet": "Flota",
"all": "Tots els amfitrions"
},
"triggerKinds": {
"metric_threshold": "Llindar mètric",
"host_status": "L'amfitrió puja o baixa",
"health_check": "Canvis en la revisió de salut",
"schedule": "En un horari",
"docker_event": "Esdeveniment de contenidor",
"internal_event": "Esdeveniment de Termix",
"webhook": "Webhook entrant"
},
"stepTypes": {
"notify": "Enviar una notificació",
"http": "Crida a una URL",
"run_snippet": "Executa un fragment",
"run_command": "Executa una ordre",
"docker": "Controlar un contenidor",
"tunnel": "Controlar un túnel",
"wol": "Despertar un amfitrió",
"wait": "Espera",
"set_var": "Defineix una variable",
"if": "Si / altrament",
"run_automation": "Executa una altra automatització",
"stop": "Atura"
},
"statuses": {
"running": "Córrer",
"success": "Èxit",
"failed": "Fallat",
"timeout": "Temps d'espera esgotat",
"skipped": "Omès",
"cancelled": "Cancel·lat"
},
"fields": {
"host": "Amfitrió",
"metric": "Mètrica",
"mount": "Punt de muntatge",
"operator": "És",
"value": "Valor",
"forSeconds": "Sostingut durant (segons)",
"cooldown": "Refredament (minuts)",
"cron": "Expressió cron",
"intervalSeconds": "Cada (segons)",
"timezone": "Zona horària",
"timezoneServer": "Hora del servidor",
"timezoneHint": "Els temps cron es llegeixen en aquesta zona. No s'aplica a les programacions per intervals.",
"container": "Contenidor",
"command": "Comandament",
"url": "URL",
"method": "Mètode",
"body": "Cos",
"channels": "Canals",
"title": "Títol",
"message": "Missatge",
"snippet": "Fragment",
"seconds": "Segons",
"conditionLeftPlaceholder": "Valor a comprovar",
"conditionRightPlaceholder": "Comparar amb",
"variableName": "Nom de la variable",
"variableValue": "Valor",
"elevated": "Executar amb sudo",
"onError": "Si això falla",
"allowPrivateNetwork": "Permetre adreces de xarxa locals",
"allowPrivateNetworkHint": "Necessari per a un servei autoallotjat a la vostra LAN. Desactivat per defecte per evitar sol·licituds a adreces internes."
},
"onError": {
"stop": "Atura la cursa",
"continue": "Continua"
}
}
}
},
"nav": {
"automations": "Automatitzacions"
},
"onboarding": {
"feature_automations": "Automatitzacions",
"feature_automations_desc": "Executa els passos automàticament quan passi alguna cosa i rep notificacions."
}
}
@@ -0,0 +1,149 @@
{
"newUi": {
"sidebar": {
"automations": {
"title": "Automatizace",
"tabAutomations": "Automatizace",
"tabRuns": "Běhy",
"tabChannels": "Kanály",
"createAutomation": "Nová automatizace",
"backToAutomations": "Zpět k automatizaci",
"createTitle": "Nová automatizace",
"editTitle": "Upravit automatizaci",
"empty": "Zatím žádné automatizace. Vytvořte si automatizaci, která bude reagovat na metriku, plán nebo událost.",
"emptyRuns": "Zatím žádné běhy.",
"emptyChannels": "Zatím žádné kanály. Přidejte jeden, abyste někam mohli odesílat oznámení.",
"noChannelsHint": "Zatím nejsou nastaveny žádné kanály. Přidejte jeden na kartě Kanály.",
"addChannel": "Přidat kanál",
"testChannel": "Test",
"channelTestSent": "Testovací oznámení odesláno",
"channelTestFailed": "Testovací oznámení selhalo",
"channelDeleted": "Kanál smazán",
"deleteChannelConfirm": "Smazat tento kanál? Automatizace, které ho používají, přestanou zasílat upozornění.",
"nameLabel": "Jméno",
"namePlaceholder": "např. Vyčistit /data, když se zaplní",
"nameRequired": "Jméno je povinné",
"descriptionLabel": "Popis",
"descriptionPlaceholder": "Volitelný popis",
"enabledLabel": "Povoleno",
"concurrencyLabel": "Pokud již běží",
"concurrencyHint": "Co dělat, když se to spustí znovu před dokončením posledního běhu.",
"concurrency": {
"skip": "Přeskočit nový běh",
"queue": "Čekej a běž za ním",
"allow": "Spustit obojí najednou"
},
"save": "Uložit",
"created": "Automatizace vytvořena",
"updated": "Automatizace uložena",
"deleted": "Automatizace smazána",
"deleteConfirm": "Smazat tuto automatizaci? Její historie spuštění bude také smazána.",
"runNow": "Běhej hned",
"testRun": "Zkušební provoz",
"testRunHint": "Provádí každý krok, ale nedotýká se ničeho mimo Termix.",
"runStarted": "Běh byl zahájen",
"runFinished": "Běh dokončen: {{status}}",
"trigger": "Spoušť",
"steps": "Kroky",
"addStep": "Přidat krok",
"removeStep": "Odebrat krok",
"moveUp": "Posunout nahoru",
"moveDown": "Přesunout dolů",
"noSteps": "Zatím žádné kroky. Přidejte jeden, který popisuje, co by se mělo stát.",
"webhookTokenTitle": "URL webhooku",
"webhookTokenDescription": "Toto se zobrazí jednou. Uložte si to nyní, později to nelze načíst.",
"copy": "Kopie",
"copied": "Zkopírováno",
"viewJson": "JSON",
"viewBuilder": "Stavitel",
"viewGraph": "Graf",
"lastRun": "Poslední běh",
"never": "Nikdy",
"duration": "{{seconds}}s",
"stepOutput": "Výstup",
"stepError": "Chyba",
"dryRunBadge": "Zkušební provoz",
"hostSelector": {
"trigger": "Spouštěcí hostitel",
"host": "Specifický hostitel",
"fleet": "Loďstvo",
"all": "Všichni hostitelé"
},
"triggerKinds": {
"metric_threshold": "Prahová hodnota metriky",
"host_status": "Hostitel jde nahoru nebo dolů",
"health_check": "Změny v kontrolách stavu",
"schedule": "Podle plánu",
"docker_event": "Událost kontejneru",
"internal_event": "Událost Termix",
"webhook": "Příchozí webhook"
},
"stepTypes": {
"notify": "Odeslat oznámení",
"http": "Zavolat URL",
"run_snippet": "Spustit úryvek",
"run_command": "Spusťte příkaz",
"docker": "Ovládání kontejneru",
"tunnel": "Ovládejte tunel",
"wol": "Probuďte hostitele",
"wait": "Počkejte",
"set_var": "Nastavení proměnné",
"if": "Pokud / jinak",
"run_automation": "Spusťte další automatizaci",
"stop": "Zastávka"
},
"statuses": {
"running": "Běh",
"success": "Úspěch",
"failed": "Selhalo",
"timeout": "Časový limit vypršel",
"skipped": "Přeskočeno",
"cancelled": "Zrušeno"
},
"fields": {
"host": "Hostitel",
"metric": "Metrický",
"mount": "Bod připojení",
"operator": "Je",
"value": "Hodnota",
"forSeconds": "Trvalé po dobu (sekund)",
"cooldown": "Doba ochlazování (minuty)",
"cron": "Cron výraz",
"intervalSeconds": "Každých (sekund)",
"timezone": "Časové pásmo",
"timezoneServer": "Čas serveru",
"timezoneHint": "V této zóně se odečítají časy Cron. Nevztahuje se na intervalové plány.",
"container": "Kontejner",
"command": "Příkaz",
"url": "URL",
"method": "Metoda",
"body": "Tělo",
"channels": "Kanály",
"title": "Titul",
"message": "Zpráva",
"snippet": "Úryvek",
"seconds": "Sekundy",
"conditionLeftPlaceholder": "Hodnota ke kontrole",
"conditionRightPlaceholder": "Porovnat s",
"variableName": "Název proměnné",
"variableValue": "Hodnota",
"elevated": "Spusťte pomocí sudo",
"onError": "Pokud se to nepodaří",
"allowPrivateNetwork": "Povolit lokální síťové adresy",
"allowPrivateNetworkHint": "Vyžadováno pro službu hostovanou na vašem lokálním serveru (LAN). Ve výchozím nastavení vypnuto, aby se zabránilo požadavkům na interní adresy."
},
"onError": {
"stop": "Zastav běh",
"continue": "Pokračovat"
}
}
}
},
"nav": {
"automations": "Automatizace"
},
"onboarding": {
"feature_automations": "Automatizace",
"feature_automations_desc": "Automaticky spouštět kroky, když se něco stane, a dostávat upozornění."
}
}
@@ -0,0 +1,149 @@
{
"newUi": {
"sidebar": {
"automations": {
"title": "Automatiseringer",
"tabAutomations": "Automatiseringer",
"tabRuns": "Løber",
"tabChannels": "Kanaler",
"createAutomation": "Ny automatisering",
"backToAutomations": "Tilbage til Automatiseringer",
"createTitle": "Ny automatisering",
"editTitle": "Rediger automatisering",
"empty": "Ingen automatiseringer endnu. Opret en for at reagere på en metric, en tidsplan eller en begivenhed.",
"emptyRuns": "Ingen løb endnu.",
"emptyChannels": "Ingen kanaler endnu. Tilføj en for at sende notifikationer et sted hen.",
"noChannelsHint": "Ingen kanaler er konfigureret endnu. Tilføj en i fanen Kanaler.",
"addChannel": "Tilføj kanal",
"testChannel": "Prøve",
"channelTestSent": "Testnotifikation sendt",
"channelTestFailed": "Testnotifikation mislykkedes",
"channelDeleted": "Kanal slettet",
"deleteChannelConfirm": "Vil du slette denne kanal? Automatiseringer, der bruger den, vil stoppe med at sende dig notifikationer.",
"nameLabel": "Navn",
"namePlaceholder": "f.eks. Ryd op i /data når den fyldes op",
"nameRequired": "Navn er påkrævet",
"descriptionLabel": "Beskrivelse",
"descriptionPlaceholder": "Valgfri beskrivelse",
"enabledLabel": "Aktiveret",
"concurrencyLabel": "Hvis den allerede kører",
"concurrencyHint": "Hvad skal man gøre, når dette udløses igen, før den sidste kørsel er færdig.",
"concurrency": {
"skip": "Spring den nye kørsel over",
"queue": "Vent og løb efter",
"allow": "Kør begge på én gang"
},
"save": "Spare",
"created": "Automatisering skabt",
"updated": "Automatisering gemt",
"deleted": "Automatisering slettet",
"deleteConfirm": "Vil du slette denne automatisering? Dens kørselshistorik slettes også.",
"runNow": "Løb nu",
"testRun": "Testkørsel",
"testRunHint": "Kører hvert trin, men rører ikke noget uden for Termix.",
"runStarted": "Løbet startede",
"runFinished": "Kørsel færdig: {{status}}",
"trigger": "Udløser",
"steps": "Trin",
"addStep": "Tilføj trin",
"removeStep": "Fjern trin",
"moveUp": "Flyt op",
"moveDown": "Flyt ned",
"noSteps": "Ingen trin endnu. Tilføj et trin for at angive, hvad der skal ske.",
"webhookTokenTitle": "Webhook-URL",
"webhookTokenDescription": "Dette vises én gang. Gem det nu, det kan ikke hentes senere.",
"copy": "Kopi",
"copied": "Kopieret",
"viewJson": "JSON",
"viewBuilder": "Byggefirma",
"viewGraph": "Kurve",
"lastRun": "Sidste løb",
"never": "Aldrig",
"duration": "{{seconds}}s",
"stepOutput": "Produktion",
"stepError": "Fejl",
"dryRunBadge": "Testkørsel",
"hostSelector": {
"trigger": "Udløsende vært",
"host": "Specifik vært",
"fleet": "Flåde",
"all": "Alle værter"
},
"triggerKinds": {
"metric_threshold": "Metrisk tærskel",
"host_status": "Værten går op eller ned",
"health_check": "Ændringer i sundhedstjek",
"schedule": "På en tidsplan",
"docker_event": "Containerhændelse",
"internal_event": "Termix-begivenhed",
"webhook": "Indgående webhook"
},
"stepTypes": {
"notify": "Send en notifikation",
"http": "Kald en URL",
"run_snippet": "Kør et uddrag",
"run_command": "Kør en kommando",
"docker": "Styr en container",
"tunnel": "Kontroller en tunnel",
"wol": "Væk en vært",
"wait": "Vente",
"set_var": "Angiv en variabel",
"if": "Hvis / ellers",
"run_automation": "Kør en anden automatisering",
"stop": "Stop"
},
"statuses": {
"running": "Løb",
"success": "Succes",
"failed": "Mislykkedes",
"timeout": "Timeout",
"skipped": "Springet over",
"cancelled": "Annulleret"
},
"fields": {
"host": "Vært",
"metric": "Metrisk",
"mount": "Monteringspunkt",
"operator": "Er",
"value": "Værdi",
"forSeconds": "Vedvarende i (sekunder)",
"cooldown": "Nedkølingstid (minutter)",
"cron": "Cron-udtryk",
"intervalSeconds": "Hvert (sekund)",
"timezone": "Tidszone",
"timezoneServer": "Servertid",
"timezoneHint": "Cron-tider aflæses i denne zone. Gælder ikke for intervalplaner.",
"container": "Beholder",
"command": "Kommando",
"url": "URL",
"method": "Metode",
"body": "Legeme",
"channels": "Kanaler",
"title": "Titel",
"message": "Besked",
"snippet": "Uddrag",
"seconds": "Sekunder",
"conditionLeftPlaceholder": "Værdi at kontrollere",
"conditionRightPlaceholder": "Sammenlign med",
"variableName": "Variabelnavn",
"variableValue": "Værdi",
"elevated": "Kør med sudo",
"onError": "Hvis dette mislykkes",
"allowPrivateNetwork": "Tillad lokale netværksadresser",
"allowPrivateNetworkHint": "Nødvendig for en selvhostet tjeneste på dit LAN. Deaktiveret som standard for at forhindre anmodninger til interne adresser."
},
"onError": {
"stop": "Stop løbet",
"continue": "Fortsæt"
}
}
}
},
"nav": {
"automations": "Automatiseringer"
},
"onboarding": {
"feature_automations": "Automatiseringer",
"feature_automations_desc": "Kør trin automatisk, når der sker noget, og få besked."
}
}
@@ -0,0 +1,149 @@
{
"newUi": {
"sidebar": {
"automations": {
"title": "Automatisierungen",
"tabAutomations": "Automatisierungen",
"tabRuns": "Läufe",
"tabChannels": "Kanäle",
"createAutomation": "Neue Automatisierung",
"backToAutomations": "Zurück zu Automatisierungen",
"createTitle": "Neue Automatisierung",
"editTitle": "Automatisierung bearbeiten",
"empty": "Noch keine Automatisierungen. Erstellen Sie eine, um auf eine Kennzahl, einen Zeitplan oder ein Ereignis zu reagieren.",
"emptyRuns": "Bisher keine Läufe.",
"emptyChannels": "Noch keine Kanäle. Fügen Sie einen hinzu, um Benachrichtigungen an einen bestimmten Ort zu senden.",
"noChannelsHint": "Es sind noch keine Kanäle eingerichtet. Fügen Sie einen im Tab „Kanäle“ hinzu.",
"addChannel": "Kanal hinzufügen",
"testChannel": "Prüfen",
"channelTestSent": "Testbenachrichtigung gesendet",
"channelTestFailed": "Testbenachrichtigung fehlgeschlagen",
"channelDeleted": "Kanal gelöscht",
"deleteChannelConfirm": "Diesen Kanal löschen? Automatisierungen, die diesen Kanal verwenden, werden keine Benachrichtigungen mehr senden.",
"nameLabel": "Name",
"namePlaceholder": "z.B. das Verzeichnis /data leeren, wenn es voll ist",
"nameRequired": "Name erforderlich",
"descriptionLabel": "Beschreibung",
"descriptionPlaceholder": "Optionale Beschreibung",
"enabledLabel": "Ermöglicht",
"concurrencyLabel": "Wenn es bereits läuft",
"concurrencyHint": "Was ist zu tun, wenn dies erneut ausgelöst wird, bevor der letzte Durchlauf abgeschlossen ist?",
"concurrency": {
"skip": "Den neuen Lauf überspringen.",
"queue": "Warten und dann hinterherlaufen",
"allow": "Führe beide gleichzeitig aus"
},
"save": "Speichern",
"created": "Automatisierung erstellt",
"updated": "Automatisierung gerettet",
"deleted": "Automatisierung gelöscht",
"deleteConfirm": "Wenn Sie diese Automatisierung löschen, wird auch ihr Ausführungsverlauf gelöscht.",
"runNow": "Jetzt laufen",
"testRun": "Probelauf",
"testRunHint": "Führt jeden Schritt aus, greift aber auf nichts außerhalb von Termix ein.",
"runStarted": "Lauf gestartet",
"runFinished": "Lauf beendet: {{status}}",
"trigger": "Auslösen",
"steps": "Schritte",
"addStep": "Schritt hinzufügen",
"removeStep": "Schritt entfernen",
"moveUp": "Aufsteigen",
"moveDown": "Nach unten schieben",
"noSteps": "Noch keine Schritte. Füge einen hinzu, um zu beschreiben, was passieren soll.",
"webhookTokenTitle": "Webhook-URL",
"webhookTokenDescription": "Dies wird nur einmal angezeigt. Speichern Sie es jetzt, es kann später nicht mehr abgerufen werden.",
"copy": "Kopie",
"copied": "Kopiert",
"viewJson": "JSON",
"viewBuilder": "Bauherr",
"viewGraph": "Graph",
"lastRun": "Letzter Lauf",
"never": "Niemals",
"duration": "{{seconds}}s",
"stepOutput": "Ausgabe",
"stepError": "Fehler",
"dryRunBadge": "Probelauf",
"hostSelector": {
"trigger": "Auslösender Host",
"host": "Spezifischer Wirt",
"fleet": "Flotte",
"all": "Alle Gastgeber"
},
"triggerKinds": {
"metric_threshold": "Metrischer Schwellenwert",
"host_status": "Der Host steigt oder fällt ab",
"health_check": "Änderungen bei Gesundheitschecks",
"schedule": "Nach einem Zeitplan",
"docker_event": "Container-Ereignis",
"internal_event": "Termix-Ereignis",
"webhook": "Eingehender Webhook"
},
"stepTypes": {
"notify": "Sende eine Benachrichtigung",
"http": "URL aufrufen",
"run_snippet": "Führe einen Codeausschnitt aus",
"run_command": "Führe einen Befehl aus",
"docker": "Einen Container steuern",
"tunnel": "Einen Tunnel steuern",
"wol": "Wecken Sie einen Gastgeber",
"wait": "Warten",
"set_var": "Eine Variable setzen",
"if": "Falls / andernfalls",
"run_automation": "Führe eine weitere Automatisierung aus",
"stop": "Stoppen"
},
"statuses": {
"running": "Läuft",
"success": "Erfolg",
"failed": "Fehlgeschlagen",
"timeout": "Zeitüberschreitung",
"skipped": "Übersprungen",
"cancelled": "Abgesagt"
},
"fields": {
"host": "Gastgeber",
"metric": "Metrisch",
"mount": "Montagepunkt",
"operator": "Ist",
"value": "Wert",
"forSeconds": "Anhaltend für (Sekunden)",
"cooldown": "Abkühlzeit (Minuten)",
"cron": "Cron-Ausdruck",
"intervalSeconds": "Alle (Sekunden)",
"timezone": "Zeitzone",
"timezoneServer": "Serverzeit",
"timezoneHint": "In dieser Zone werden Cron-Zeiten gelesen. Gilt nicht für Intervallpläne.",
"container": "Container",
"command": "Befehl",
"url": "URL",
"method": "Verfahren",
"body": "Körper",
"channels": "Kanäle",
"title": "Titel",
"message": "Nachricht",
"snippet": "Ausschnitt",
"seconds": "Sekunden",
"conditionLeftPlaceholder": "Zu prüfender Wert",
"conditionRightPlaceholder": "Vergleiche mit",
"variableName": "Variablenname",
"variableValue": "Wert",
"elevated": "Mit sudo ausführen",
"onError": "Wenn das fehlschlägt",
"allowPrivateNetwork": "Lokale Netzwerkadressen zulassen",
"allowPrivateNetworkHint": "Wird für einen selbstgehosteten Dienst in Ihrem LAN benötigt. Standardmäßig deaktiviert, um Anfragen an interne Adressen zu verhindern."
},
"onError": {
"stop": "Stoppt die Flucht!",
"continue": "Weiter geht's"
}
}
}
},
"nav": {
"automations": "Automatisierungen"
},
"onboarding": {
"feature_automations": "Automatisierungen",
"feature_automations_desc": "Schritte automatisch ausführen, wenn etwas passiert, und Benachrichtigungen erhalten."
}
}
@@ -0,0 +1,149 @@
{
"newUi": {
"sidebar": {
"automations": {
"title": "Αυτοματισμοί",
"tabAutomations": "Αυτοματισμοί",
"tabRuns": "Τρεξίματα",
"tabChannels": "Κανάλια",
"createAutomation": "Νέος Αυτοματισμός",
"backToAutomations": "Επιστροφή στους Αυτοματισμούς",
"createTitle": "Νέος Αυτοματισμός",
"editTitle": "Επεξεργασία αυτοματισμού",
"empty": "Δεν υπάρχουν ακόμη αυτοματοποιήσεις. Δημιουργήστε μία για να αντιδράτε σε μια μέτρηση, ένα πρόγραμμα ή ένα συμβάν.",
"emptyRuns": "Δεν υπάρχουν τρεξίματα ακόμα.",
"emptyChannels": "Δεν υπάρχουν ακόμη κανάλια. Προσθέστε ένα για να στέλνετε ειδοποιήσεις κάπου.",
"noChannelsHint": "Δεν έχουν ρυθμιστεί ακόμη κανάλια. Προσθέστε ένα στην καρτέλα Κανάλια.",
"addChannel": "Προσθήκη καναλιού",
"testChannel": "Δοκιμή",
"channelTestSent": "Αποστολή ειδοποίησης δοκιμής",
"channelTestFailed": "Η ειδοποίηση δοκιμής απέτυχε.",
"channelDeleted": "Το κανάλι διαγράφηκε",
"deleteChannelConfirm": "Διαγραφή αυτού του καναλιού; Οι αυτοματοποιήσεις που το χρησιμοποιούν θα σταματήσουν να ειδοποιούν.",
"nameLabel": "Ονομα",
"namePlaceholder": "π.χ., Καθαρισμός /data όταν γεμίσει",
"nameRequired": "Απαιτείται όνομα",
"descriptionLabel": "Περιγραφή",
"descriptionPlaceholder": "Προαιρετική περιγραφή",
"enabledLabel": "Ενεργοποιημένο",
"concurrencyLabel": "Εάν ήδη εκτελείται",
"concurrencyHint": "Τι πρέπει να κάνετε όταν αυτό ενεργοποιηθεί ξανά πριν ολοκληρωθεί η τελευταία εκτέλεση.",
"concurrency": {
"skip": "Παράλειψη της νέας διαδρομής",
"queue": "Περίμενε και τρέχα πίσω",
"allow": "Εκτελέστε και τα δύο ταυτόχρονα"
},
"save": "Εκτός",
"created": "Αυτοματοποίηση που δημιουργήθηκε",
"updated": "Ο αυτοματισμός αποθηκεύτηκε",
"deleted": "Ο αυτοματισμός διαγράφηκε.",
"deleteConfirm": "Διαγραφή αυτού του αυτοματισμού; Το ιστορικό εκτέλεσής του διαγράφεται επίσης.",
"runNow": "Εκτέλεση τώρα",
"testRun": "Δοκιμαστική εκτέλεση",
"testRunHint": "Εκτελεί κάθε βήμα αλλά δεν αγγίζει τίποτα εκτός του Termix.",
"runStarted": "Η εκτέλεση ξεκίνησε",
"runFinished": "Η εκτέλεση ολοκληρώθηκε: {{status}}",
"trigger": "Σκανδάλη",
"steps": "Βήματα",
"addStep": "Προσθήκη βήματος",
"removeStep": "Αφαίρεση βήματος",
"moveUp": "Μετακίνηση προς τα πάνω",
"moveDown": "Μετακίνηση προς τα κάτω",
"noSteps": "Δεν υπάρχουν ακόμη βήματα. Προσθέστε ένα για να πείτε τι πρέπει να συμβεί.",
"webhookTokenTitle": "URL ιστού",
"webhookTokenDescription": "Αυτό εμφανίζεται μία φορά. Αποθηκεύστε το τώρα, δεν μπορεί να ανακτηθεί αργότερα.",
"copy": "Αντίγραφο",
"copied": "Αντιγράφηκε",
"viewJson": "JSON",
"viewBuilder": "Οικοδόμος",
"viewGraph": "Γραφική παράσταση",
"lastRun": "Τελευταία εκτέλεση",
"never": "Ποτέ",
"duration": "{{seconds}}s",
"stepOutput": "Παραγωγή",
"stepError": "Σφάλμα",
"dryRunBadge": "Δοκιμαστική εκτέλεση",
"hostSelector": {
"trigger": "Ενεργοποίηση κεντρικού υπολογιστή",
"host": "Συγκεκριμένος κεντρικός υπολογιστής",
"fleet": "Στόλος",
"all": "Όλοι οι οικοδεσπότες"
},
"triggerKinds": {
"metric_threshold": "Μετρικό όριο",
"host_status": "Ο κεντρικός υπολογιστής ανεβαίνει ή κατεβαίνει",
"health_check": "Αλλαγές στον έλεγχο υγείας",
"schedule": "Σε πρόγραμμα",
"docker_event": "Συμβάν κοντέινερ",
"internal_event": "Συμβάν Termix",
"webhook": "Εισερχόμενο webhook"
},
"stepTypes": {
"notify": "Αποστολή ειδοποίησης",
"http": "Κλήση μιας διεύθυνσης URL",
"run_snippet": "Εκτέλεση ενός αποσπάσματος",
"run_command": "Εκτέλεση εντολής",
"docker": "Έλεγχος ενός κοντέινερ",
"tunnel": "Έλεγχος μιας σήραγγας",
"wol": "Ξυπνήστε έναν οικοδεσπότη",
"wait": "Περιμένετε",
"set_var": "Ορισμός μεταβλητής",
"if": "Εάν / διαφορετικά",
"run_automation": "Εκτελέστε έναν άλλο αυτοματισμό",
"stop": "Στάση"
},
"statuses": {
"running": "Τρέξιμο",
"success": "Επιτυχία",
"failed": "Αποτυχημένος",
"timeout": "Λήξη χρονικού ορίου",
"skipped": "Παραλήφθηκε",
"cancelled": "Ακυρώθηκε"
},
"fields": {
"host": "Πλήθος",
"metric": "Μετρικός",
"mount": "Σημείο προσάρτησης",
"operator": "Είναι",
"value": "Αξία",
"forSeconds": "Διαρκεί για (δευτερόλεπτα)",
"cooldown": "Χρόνος αναμονής (λεπτά)",
"cron": "Έκφραση Cron",
"intervalSeconds": "Κάθε (δευτερόλεπτα)",
"timezone": "Ζώνη ώρας",
"timezoneServer": "Ώρα διακομιστή",
"timezoneHint": "Οι χρόνοι Cron διαβάζονται σε αυτήν τη ζώνη. Δεν ισχύει για τα χρονοδιαγράμματα διαστημάτων.",
"container": "Δοχείο",
"command": "Εντολή",
"url": "URL",
"method": "Μέθοδος",
"body": "Σώμα",
"channels": "Κανάλια",
"title": "Τίτλος",
"message": "Μήνυμα",
"snippet": "Απόσπασμα",
"seconds": "Δευτερόλεπτα",
"conditionLeftPlaceholder": "Τιμή προς έλεγχο",
"conditionRightPlaceholder": "Σύγκριση με",
"variableName": "Όνομα μεταβλητής",
"variableValue": "Αξία",
"elevated": "Εκτέλεση με sudo",
"onError": "Εάν αυτό αποτύχει",
"allowPrivateNetwork": "Επιτρέψτε τις τοπικές διευθύνσεις δικτύου",
"allowPrivateNetworkHint": "Απαιτείται για μια αυτο-φιλοξενούμενη υπηρεσία στο LAN σας. Απενεργοποιημένο από προεπιλογή για την αποτροπή αιτημάτων σε εσωτερικές διευθύνσεις."
},
"onError": {
"stop": "Σταμάτα το τρέξιμο",
"continue": "Συνεχίζω"
}
}
}
},
"nav": {
"automations": "Αυτοματισμοί"
},
"onboarding": {
"feature_automations": "Αυτοματισμοί",
"feature_automations_desc": "Εκτελέστε αυτόματα βήματα όταν συμβεί κάτι και λάβετε ειδοποίηση."
}
}
@@ -0,0 +1,149 @@
{
"newUi": {
"sidebar": {
"automations": {
"title": "Automatizaciones",
"tabAutomations": "Automatizaciones",
"tabRuns": "Corre",
"tabChannels": "Canales",
"createAutomation": "Nueva automatización",
"backToAutomations": "Volver a Automatizaciones",
"createTitle": "Nueva automatización",
"editTitle": "Automatización de edición",
"empty": "Aún no hay automatizaciones. Crea una para que reaccione a una métrica, una programación o un evento.",
"emptyRuns": "Aún no hay carreras.",
"emptyChannels": "Aún no hay canales. Añade uno para enviar notificaciones a algún lugar.",
"noChannelsHint": "Aún no hay canales configurados. Añade uno en la pestaña Canales.",
"addChannel": "Agregar canal",
"testChannel": "Prueba",
"channelTestSent": "Notificación de prueba enviada",
"channelTestFailed": "Falló la notificación de prueba",
"channelDeleted": "Canal eliminado",
"deleteChannelConfirm": "¿Eliminar este canal? Las automatizaciones que lo utilicen dejarán de enviar notificaciones.",
"nameLabel": "Nombre",
"namePlaceholder": "Por ejemplo, limpiar /data cuando se llena",
"nameRequired": "Se requiere el nombre",
"descriptionLabel": "Descripción",
"descriptionPlaceholder": "Descripción opcional",
"enabledLabel": "Activado",
"concurrencyLabel": "Si ya está en funcionamiento",
"concurrencyHint": "Qué hacer si esto se activa de nuevo antes de que finalice la última ejecución.",
"concurrency": {
"skip": "Saltarse la nueva carrera",
"queue": "Espera y corre tras",
"allow": "Ejecuta ambos a la vez"
},
"save": "Ahorrar",
"created": "Automatización creada",
"updated": "Automatización guardada",
"deleted": "Automatización eliminada",
"deleteConfirm": "¿Eliminar esta automatización? Su historial de ejecución también se eliminará.",
"runNow": "Corre ahora",
"testRun": "Ejecución de prueba",
"testRunHint": "Ejecuta todos los pasos, pero no toca nada fuera de Termix.",
"runStarted": "La carrera ha comenzado.",
"runFinished": "Ejecución finalizada: {{status}}",
"trigger": "Desencadenar",
"steps": "Pasos",
"addStep": "Agregar paso",
"removeStep": "Eliminar paso",
"moveUp": "Subir",
"moveDown": "Baja",
"noSteps": "Aún no hay pasos a seguir. Añade uno para indicar qué debería suceder.",
"webhookTokenTitle": "URL del webhook",
"webhookTokenDescription": "Esto se muestra una sola vez. Guárdalo ahora, no se podrá recuperar más tarde.",
"copy": "Copiar",
"copied": "Copiado",
"viewJson": "JSON",
"viewBuilder": "Constructor",
"viewGraph": "Gráfico",
"lastRun": "Última carrera",
"never": "Nunca",
"duration": "{{seconds}}s",
"stepOutput": "Producción",
"stepError": "Error",
"dryRunBadge": "Ejecución de prueba",
"hostSelector": {
"trigger": "Host desencadenante",
"host": "Anfitrión específico",
"fleet": "Flota",
"all": "Todos los anfitriones"
},
"triggerKinds": {
"metric_threshold": "Umbral métrico",
"host_status": "El host sube o baja",
"health_check": "Cambios en los chequeos médicos",
"schedule": "Según un horario",
"docker_event": "Evento de contenedor",
"internal_event": "Evento Termix",
"webhook": "Webhook entrante"
},
"stepTypes": {
"notify": "Enviar una notificación",
"http": "Llamar a una URL",
"run_snippet": "Ejecutar un fragmento",
"run_command": "Ejecutar un comando",
"docker": "Controlar un contenedor",
"tunnel": "Controlar un túnel",
"wol": "Despierta a un anfitrión",
"wait": "Esperar",
"set_var": "Establecer una variable",
"if": "Si / de lo contrario",
"run_automation": "Ejecuta otra automatización",
"stop": "Detener"
},
"statuses": {
"running": "Correr",
"success": "Éxito",
"failed": "Fallido",
"timeout": "Tiempo de espera agotado",
"skipped": "Saltado",
"cancelled": "Cancelado"
},
"fields": {
"host": "Anfitrión",
"metric": "Métrico",
"mount": "Punto de montaje",
"operator": "Es",
"value": "Valor",
"forSeconds": "Mantenido durante (segundos)",
"cooldown": "Tiempo de enfriamiento (minutos)",
"cron": "Expresión cron",
"intervalSeconds": "Cada (segundos)",
"timezone": "Huso horario",
"timezoneServer": "Hora del servidor",
"timezoneHint": "En esta zona se leen las horas cron. No se aplica a los horarios de intervalo.",
"container": "Recipiente",
"command": "Dominio",
"url": "URL",
"method": "Método",
"body": "Cuerpo",
"channels": "Canales",
"title": "Título",
"message": "Mensaje",
"snippet": "Retazo",
"seconds": "Artículos de segunda clase",
"conditionLeftPlaceholder": "Valor a comprobar",
"conditionRightPlaceholder": "Comparar con",
"variableName": "nombre de la variable",
"variableValue": "Valor",
"elevated": "Ejecutar con sudo",
"onError": "Si esto falla",
"allowPrivateNetwork": "Permitir direcciones de red local",
"allowPrivateNetworkHint": "Necesario para un servicio autohospedado en su LAN. Desactivado por defecto para evitar solicitudes a direcciones internas."
},
"onError": {
"stop": "Detengan la carrera",
"continue": "Continuar"
}
}
}
},
"nav": {
"automations": "Automatizaciones"
},
"onboarding": {
"feature_automations": "Automatizaciones",
"feature_automations_desc": "Ejecuta pasos automáticamente cuando ocurra algo y recibe notificaciones."
}
}
@@ -0,0 +1,149 @@
{
"newUi": {
"sidebar": {
"automations": {
"title": "Automaatiot",
"tabAutomations": "Automaatiot",
"tabRuns": "Juoksut",
"tabChannels": "Kanavat",
"createAutomation": "Uusi automaatio",
"backToAutomations": "Takaisin automaatioihin",
"createTitle": "Uusi automaatio",
"editTitle": "Muokkaa automatisointia",
"empty": "Ei vielä automaatioita. Luo sellainen reagoimaan mittariin, aikatauluun tai tapahtumaan.",
"emptyRuns": "Ei vielä juoksuja.",
"emptyChannels": "Ei kanavia vielä. Lisää yksi lähettääksesi ilmoituksia jonnekin.",
"noChannelsHint": "Kanavia ei ole vielä määritetty. Lisää yksi Kanavat-välilehdellä.",
"addChannel": "Lisää kanava",
"testChannel": "Testata",
"channelTestSent": "Testi-ilmoitus lähetetty",
"channelTestFailed": "Testi-ilmoitus epäonnistui",
"channelDeleted": "Kanava poistettu",
"deleteChannelConfirm": "Poistetaanko tämä kanava? Sitä käyttävät automaatiot lakkaavat lähettämästä ilmoituksia.",
"nameLabel": "Nimi",
"namePlaceholder": "esim. Siivoa /data, kun se täyttyy",
"nameRequired": "Nimi on pakollinen",
"descriptionLabel": "Kuvaus",
"descriptionPlaceholder": "Valinnainen kuvaus",
"enabledLabel": "Käytössä",
"concurrencyLabel": "Jos se on jo käynnissä",
"concurrencyHint": "Mitä tehdä, kun tämä laukeaa uudelleen ennen viimeisen ajon päättymistä.",
"concurrency": {
"skip": "Ohita uusi juoksu",
"queue": "Odota ja juokse perässä",
"allow": "Suorita molemmat yhtä aikaa"
},
"save": "Tallentaa",
"created": "Automaatio luotu",
"updated": "Automaatio tallennettu",
"deleted": "Automaatio poistettu",
"deleteConfirm": "Poistetaanko tämä automaatio? Myös sen suoritushistoria poistetaan.",
"runNow": "Juokse nyt",
"testRun": "Koeajo",
"testRunHint": "Juoksee jokaisen askeleen, mutta ei koske mihinkään Termixin ulkopuolella.",
"runStarted": "Juoksu aloitettu",
"runFinished": "Suoritus päättynyt: {{status}}",
"trigger": "Laukaista",
"steps": "Askeleet",
"addStep": "Lisää vaihe",
"removeStep": "Poista vaihe",
"moveUp": "Siirry ylös",
"moveDown": "Siirrä alas",
"noSteps": "Ei vielä vaiheita. Lisää yksi, joka kertoo, mitä pitäisi tapahtua.",
"webhookTokenTitle": "Webhookin URL-osoite",
"webhookTokenDescription": "Tämä näytetään kerran. Tallenna se nyt, sitä ei voi palauttaa myöhemmin.",
"copy": "Kopioida",
"copied": "Kopioitu",
"viewJson": "JSON",
"viewBuilder": "Rakentaja",
"viewGraph": "Kaavio",
"lastRun": "Viimeisin juoksu",
"never": "Ei koskaan",
"duration": "{{seconds}}s",
"stepOutput": "Lähtö",
"stepError": "Virhe",
"dryRunBadge": "Koeajo",
"hostSelector": {
"trigger": "Käynnistävä isäntä",
"host": "Tietty isäntä",
"fleet": "Laivasto",
"all": "Kaikki isännät"
},
"triggerKinds": {
"metric_threshold": "Metrinen kynnysarvo",
"host_status": "Isäntä nousee tai laskee",
"health_check": "Terveystarkastusten muutokset",
"schedule": "Aikataulussa",
"docker_event": "Säiliötapahtuma",
"internal_event": "Termix-tapahtuma",
"webhook": "Saapuva webhook"
},
"stepTypes": {
"notify": "Lähetä ilmoitus",
"http": "Soita URL-osoitteeseen",
"run_snippet": "Suorita koodinpätkä",
"run_command": "Suorita komento",
"docker": "Säiliön hallinta",
"tunnel": "Hallitse tunnelia",
"wol": "Herätä isäntä",
"wait": "Odota",
"set_var": "Aseta muuttuja",
"if": "Jos / muuten",
"run_automation": "Suorita toinen automaatio",
"stop": "Stop"
},
"statuses": {
"running": "Juoksu",
"success": "Menestys",
"failed": "Epäonnistui",
"timeout": "Aikakatkaisu",
"skipped": "Ohitettu",
"cancelled": "Peruutettu"
},
"fields": {
"host": "Isäntä",
"metric": "Metrinen",
"mount": "Kiinnityskohta",
"operator": "On",
"value": "Arvo",
"forSeconds": "Jatkuu (sekuntia)",
"cooldown": "Jäähdyttelyaika (minuuttia)",
"cron": "Cron-lauseke",
"intervalSeconds": "Joka (sekunti)",
"timezone": "Aikavyöhyke",
"timezoneServer": "Palvelimen aika",
"timezoneHint": "Cron-ajat luetaan tällä alueella. Ei koske intervalliaikatauluja.",
"container": "Kontti",
"command": "Komento",
"url": "URL-osoite",
"method": "Menetelmä",
"body": "Keho",
"channels": "Kanavat",
"title": "Otsikko",
"message": "Viesti",
"snippet": "Katkelma",
"seconds": "Sekuntia",
"conditionLeftPlaceholder": "Tarkistettava arvo",
"conditionRightPlaceholder": "Vertaa",
"variableName": "Muuttujan nimi",
"variableValue": "Arvo",
"elevated": "Suorita sudon avulla",
"onError": "Jos tämä epäonnistuu",
"allowPrivateNetwork": "Salli paikallisverkko-osoitteet",
"allowPrivateNetworkHint": "Tarvitaan lähiverkossasi itse isännöidylle palvelulle. Oletusarvoisesti pois päältä estääkseen pyynnöt sisäisiin osoitteisiin."
},
"onError": {
"stop": "Pysäytä juoksu",
"continue": "Jatkaa"
}
}
}
},
"nav": {
"automations": "Automaatiot"
},
"onboarding": {
"feature_automations": "Automaatiot",
"feature_automations_desc": "Suorita vaiheet automaattisesti, kun jotain tapahtuu, ja saat ilmoituksen."
}
}
@@ -0,0 +1,149 @@
{
"newUi": {
"sidebar": {
"automations": {
"title": "Automatisations",
"tabAutomations": "Automatisations",
"tabRuns": "Courses",
"tabChannels": "Chaînes",
"createAutomation": "Nouvelle automatisation",
"backToAutomations": "Retour aux automatisations",
"createTitle": "Nouvelle automatisation",
"editTitle": "Automatisation de la modification",
"empty": "Aucune automatisation pour le moment. Créez-en une pour qu'elle réagisse à une mesure, une planification ou un événement.",
"emptyRuns": "Pas encore de runs.",
"emptyChannels": "Aucun canal pour le moment. Ajoutez-en un pour envoyer des notifications.",
"noChannelsHint": "Aucune chaîne n'est encore configurée. Ajoutez-en une dans l'onglet Chaînes.",
"addChannel": "Ajouter une chaîne",
"testChannel": "Test",
"channelTestSent": "Notification de test envoyée",
"channelTestFailed": "La notification de test a échoué",
"channelDeleted": "Chaîne supprimée",
"deleteChannelConfirm": "Supprimer ce canal ? Les automatisations qui l'utilisent cesseront d'envoyer des notifications.",
"nameLabel": "Nom",
"namePlaceholder": "Par exemple, nettoyer le répertoire /data lorsqu'il est plein.",
"nameRequired": "Le nom est requis.",
"descriptionLabel": "Description",
"descriptionPlaceholder": "Description facultative",
"enabledLabel": "Activé",
"concurrencyLabel": "S'il est déjà en cours d'exécution",
"concurrencyHint": "Que faire si ce problème se reproduit avant la fin de la dernière exécution ?",
"concurrency": {
"skip": "Évitez la nouvelle course",
"queue": "Attendez et courez après",
"allow": "Exécutez les deux simultanément."
},
"save": "Sauvegarder",
"created": "L'automatisation a créé",
"updated": "L'automatisation a permis de sauver",
"deleted": "Automatisation supprimée",
"deleteConfirm": "Supprimer cette automatisation ? Son historique d'exécution est également supprimé.",
"runNow": "Courez maintenant",
"testRun": "Essai",
"testRunHint": "Exécute chaque étape mais ne touche à rien en dehors de Termix.",
"runStarted": "La course a commencé",
"runFinished": "Course terminée : {{status}}",
"trigger": "Déclenchement",
"steps": "Mesures",
"addStep": "Ajouter une étape",
"removeStep": "Supprimer l'étape",
"moveUp": "Monter en gamme",
"moveDown": "Descendre",
"noSteps": "Aucune étape pour l'instant. Ajoutez-en une pour décrire ce qui doit se passer.",
"webhookTokenTitle": "URL du webhook",
"webhookTokenDescription": "Ceci ne s'affiche qu'une seule fois. Enregistrez-le maintenant, il ne pourra pas être récupéré ultérieurement.",
"copy": "Copie",
"copied": "Copié",
"viewJson": "JSON",
"viewBuilder": "Constructeur",
"viewGraph": "Graphique",
"lastRun": "Dernière course",
"never": "Jamais",
"duration": "{{seconds}}s",
"stepOutput": "Sortir",
"stepError": "Erreur",
"dryRunBadge": "Essai",
"hostSelector": {
"trigger": "Hôte déclencheur",
"host": "hôte spécifique",
"fleet": "Flotte",
"all": "Tous les hôtes"
},
"triggerKinds": {
"metric_threshold": "Seuil métrique",
"host_status": "L'hôte monte ou descend",
"health_check": "changements au bilan de santé",
"schedule": "Selon un horaire",
"docker_event": "événement conteneur",
"internal_event": "Événement Termix",
"webhook": "Webhook entrant"
},
"stepTypes": {
"notify": "Envoyer une notification",
"http": "Appeler une URL",
"run_snippet": "Exécuter un extrait de code",
"run_command": "Exécuter une commande",
"docker": "Contrôler un conteneur",
"tunnel": "Contrôler un tunnel",
"wol": "Réveillez un hôte",
"wait": "Attendez",
"set_var": "Définir une variable",
"if": "Si / sinon",
"run_automation": "Exécutez une autre automatisation",
"stop": "Arrêt"
},
"statuses": {
"running": "En cours d'exécution",
"success": "Succès",
"failed": "Échoué",
"timeout": "Délai d'attente dépassé",
"skipped": "Omission",
"cancelled": "Annulé"
},
"fields": {
"host": "Hôte",
"metric": "Métrique",
"mount": "Point de montage",
"operator": "Est",
"value": "Valeur",
"forSeconds": "Maintenu pendant (secondes)",
"cooldown": "Temps de récupération (minutes)",
"cron": "Expression de Cron",
"intervalSeconds": "Toutes les (secondes)",
"timezone": "Fuseau horaire",
"timezoneServer": "Heure du serveur",
"timezoneHint": "Les heures des tâches cron sont lues dans cette zone. Ceci ne s'applique pas aux planifications par intervalles.",
"container": "Récipient",
"command": "Commande",
"url": "URL",
"method": "Méthode",
"body": "Corps",
"channels": "Chaînes",
"title": "Titre",
"message": "Message",
"snippet": "Fragment",
"seconds": "Secondes",
"conditionLeftPlaceholder": "Valeur à vérifier",
"conditionRightPlaceholder": "Comparer à",
"variableName": "Nom de la variable",
"variableValue": "Valeur",
"elevated": "Exécuter avec sudo",
"onError": "Si cela échoue",
"allowPrivateNetwork": "Autoriser les adresses réseau locales",
"allowPrivateNetworkHint": "Nécessaire pour un service auto-hébergé sur votre réseau local. Désactivé par défaut pour empêcher les requêtes vers des adresses internes."
},
"onError": {
"stop": "Arrêtez la course",
"continue": "Continuer"
}
}
}
},
"nav": {
"automations": "Automatisations"
},
"onboarding": {
"feature_automations": "Automatisations",
"feature_automations_desc": "Exécutez des actions automatiquement lorsqu'un événement se produit et recevez une notification."
}
}
@@ -0,0 +1,149 @@
{
"newUi": {
"sidebar": {
"automations": {
"title": "אוטומציות",
"tabAutomations": "אוטומציות",
"tabRuns": "ריצות",
"tabChannels": "ערוצים",
"createAutomation": "אוטומציה חדשה",
"backToAutomations": "חזרה לאוטומציות",
"createTitle": "אוטומציה חדשה",
"editTitle": "עריכה אוטומציה",
"empty": "אין עדיין אוטומציות. צור אחת שתגיב למדד, לוח זמנים או אירוע.",
"emptyRuns": "עדיין אין ריצות.",
"emptyChannels": "אין עדיין ערוצים. הוסף ערוצים כדי לשלוח התראות לאנשהו.",
"noChannelsHint": "עדיין לא הוגדרו ערוצים. הוסף אחד בכרטיסייה ערוצים.",
"addChannel": "הוסף ערוץ",
"testChannel": "מִבְחָן",
"channelTestSent": "הודעת בדיקה נשלחה",
"channelTestFailed": "הודעת הבדיקה נכשלה",
"channelDeleted": "הערוץ נמחק",
"deleteChannelConfirm": "למחוק את הערוץ הזה? אוטומציות המשתמשות בו יפסיקו לשלוח התראות.",
"nameLabel": "שֵׁם",
"namePlaceholder": "לדוגמה, ניקוי /נתונים כאשר הוא מתמלא",
"nameRequired": "שם נדרש",
"descriptionLabel": "תֵאוּר",
"descriptionPlaceholder": "תיאור אופציונלי",
"enabledLabel": "מופעל",
"concurrencyLabel": "אם זה כבר פועל",
"concurrencyHint": "מה לעשות כאשר זה מופעל שוב לפני שהריצה האחרונה הסתיימה.",
"concurrency": {
"skip": "דלג על הריצה החדשה",
"queue": "חכו ורצנו אחרי",
"allow": "הפעל את שניהם בו זמנית"
},
"save": "לְהַצִיל",
"created": "אוטומציה נוצרה",
"updated": "אוטומציה נשמרה",
"deleted": "אוטומציה נמחקה",
"deleteConfirm": "למחוק את האוטומציה הזו? גם היסטוריית הריצות שלה נמחקת.",
"runNow": "רוץ עכשיו",
"testRun": "ריצת מבחן",
"testRunHint": "רץ כל שלב אבל לא נוגע בשום דבר מחוץ לטרמיקס.",
"runStarted": "הריצה התחילה",
"runFinished": "ריצה הסתיימה: {{status}}",
"trigger": "לְהַפְעִיל",
"steps": "צעדים",
"addStep": "הוסף שלב",
"removeStep": "הסר שלב",
"moveUp": "הזז למעלה",
"moveDown": "הזז למטה",
"noSteps": "אין עדיין שלבים. הוסף שלבים כדי לומר מה אמור לקרות.",
"webhookTokenTitle": "כתובת אתר של Webhook",
"webhookTokenDescription": "זה מוצג פעם אחת. שמור את זה עכשיו, לא ניתן לאחזר את זה מאוחר יותר.",
"copy": "לְהַעְתִיק",
"copied": "מוּעֲתָק",
"viewJson": "JSON",
"viewBuilder": "בּוֹנֶה",
"viewGraph": "גרָף",
"lastRun": "ריצה אחרונה",
"never": "לְעוֹלָם לֹא",
"duration": "{{seconds}}ים",
"stepOutput": "תְפוּקָה",
"stepError": "שְׁגִיאָה",
"dryRunBadge": "ריצת מבחן",
"hostSelector": {
"trigger": "מארח מפעיל",
"host": "מארח ספציפי",
"fleet": "צִי",
"all": "כל המארחים"
},
"triggerKinds": {
"metric_threshold": "סף מטרי",
"host_status": "המארח עולה או יורד",
"health_check": "שינויים בבדיקת הבריאות",
"schedule": "על פי לוח זמנים",
"docker_event": "אירוע מיכל",
"internal_event": "אירוע טרמיקס",
"webhook": "וובהוק נכנס"
},
"stepTypes": {
"notify": "שלח הודעה",
"http": "קריאה לכתובת URL",
"run_snippet": "הפעלת קטע קוד",
"run_command": "הפעל פקודה",
"docker": "שליטה על מכולה",
"tunnel": "שליטה במנהרה",
"wol": "להעיר מארח",
"wait": "לַחֲכוֹת",
"set_var": "הגדר משתנה",
"if": "אם / אחרת",
"run_automation": "הפעל אוטומציה נוספת",
"stop": "לְהַפְסִיק"
},
"statuses": {
"running": "רִיצָה",
"success": "הַצלָחָה",
"failed": "נִכשָׁל",
"timeout": "תם הזמן",
"skipped": "דילג",
"cancelled": "בּוּטלָה"
},
"fields": {
"host": "מְאָרֵחַ",
"metric": "מֶטרִי",
"mount": "נקודת הרכבה",
"operator": "האם",
"value": "עֵרֶך",
"forSeconds": "נמשך (שניות)",
"cooldown": "זמן קירור (דקות)",
"cron": "ביטוי קרון",
"intervalSeconds": "כל (שניות)",
"timezone": "אזור זמן",
"timezoneServer": "זמן שרת",
"timezoneHint": "זמני Cron נקראים באזור זה. לא חל על לוחות זמנים של מרווחים.",
"container": "מְכוֹלָה",
"command": "פְּקוּדָה",
"url": "כתובת אתר",
"method": "שִׁיטָה",
"body": "גוּף",
"channels": "ערוצים",
"title": "כּוֹתֶרֶת",
"message": "הוֹדָעָה",
"snippet": "קטע",
"seconds": "שניות",
"conditionLeftPlaceholder": "ערך לבדיקה",
"conditionRightPlaceholder": "השווה מול",
"variableName": "שם משתנה",
"variableValue": "עֵרֶך",
"elevated": "רוץ עם סודו",
"onError": "אם זה ייכשל",
"allowPrivateNetwork": "אפשר כתובות רשת מקומיות",
"allowPrivateNetworkHint": "נדרש עבור שירות אירוח עצמי ברשת הרשת המקומית שלך. כבוי כברירת מחדל כדי למנוע בקשות לכתובות פנימיות."
},
"onError": {
"stop": "עצור את הריצה",
"continue": "לְהַמשִׁיך"
}
}
}
},
"nav": {
"automations": "אוטומציות"
},
"onboarding": {
"feature_automations": "אוטומציות",
"feature_automations_desc": "הפעל שלבים באופן אוטומטי כאשר משהו קורה, וקבל הודעה."
}
}
@@ -0,0 +1,149 @@
{
"newUi": {
"sidebar": {
"automations": {
"title": "स्वचालन",
"tabAutomations": "स्वचालन",
"tabRuns": "दौड़ें",
"tabChannels": "चैनल",
"createAutomation": "नया स्वचालन",
"backToAutomations": "स्वचालन पर वापस जाएँ",
"createTitle": "नया स्वचालन",
"editTitle": "संपादन स्वचालन",
"empty": "अभी तक कोई ऑटोमेशन नहीं है। किसी मेट्रिक, शेड्यूल या इवेंट के आधार पर प्रतिक्रिया देने के लिए एक ऑटोमेशन बनाएं।",
"emptyRuns": "अभी तक कोई रन नहीं बना है।",
"emptyChannels": "अभी तक कोई चैनल नहीं है। सूचनाएं भेजने के लिए एक चैनल जोड़ें।",
"noChannelsHint": "अभी तक कोई चैनल सेट अप नहीं किया गया है। चैनल टैब में एक चैनल जोड़ें।",
"addChannel": "चैनल जोड़ें",
"testChannel": "परीक्षा",
"channelTestSent": "परीक्षण अधिसूचना भेजी गई",
"channelTestFailed": "टेस्ट नोटिफिकेशन विफल रहा",
"channelDeleted": "चैनल हटा दिया गया",
"deleteChannelConfirm": "क्या इस चैनल को हटा दें? इसका उपयोग करने वाले ऑटोमेशन नोटिफिकेशन भेजना बंद कर देंगे।",
"nameLabel": "नाम",
"namePlaceholder": "उदाहरण के लिए, जब /data भर जाए तो उसे साफ़ कर दें।",
"nameRequired": "नाम आवश्यक है",
"descriptionLabel": "विवरण",
"descriptionPlaceholder": "वैकल्पिक विवरण",
"enabledLabel": "सक्रिय",
"concurrencyLabel": "यदि यह पहले से चल रहा है",
"concurrencyHint": "पिछली बार रन पूरा होने से पहले ही अगर यह समस्या दोबारा उत्पन्न हो जाए तो क्या करें।",
"concurrency": {
"skip": "नए रन को छोड़ दें",
"queue": "प्रतीक्षा करो और उसके पीछे दौड़ो",
"allow": "दोनों को एक साथ चलाएं"
},
"save": "बचाना",
"created": "स्वचालन द्वारा निर्मित",
"updated": "स्वचालन ने बचत की",
"deleted": "स्वचालित रूप से हटा दिया गया",
"deleteConfirm": "इस ऑटोमेशन को डिलीट करने पर, इसका रन हिस्ट्री भी डिलीट हो जाएगा।",
"runNow": "अब दौड़े",
"testRun": "परीक्षण के लिए चलाना",
"testRunHint": "यह हर चरण में दौड़ता है लेकिन टर्मिक्स के बाहर किसी भी चीज को नहीं छूता है।",
"runStarted": "दौड़ शुरू हो गई",
"runFinished": "रन समाप्त: {{status}}",
"trigger": "चालू कर देना",
"steps": "चरण",
"addStep": "चरण जोड़ें",
"removeStep": "चरण हटाएँ",
"moveUp": "बढ़ाना",
"moveDown": "नीचे की ओर",
"noSteps": "अभी तक कोई चरण निर्धारित नहीं हैं। कृपया एक चरण जोड़कर बताएं कि आगे क्या होना चाहिए।",
"webhookTokenTitle": "वेबहुक यूआरएल",
"webhookTokenDescription": "यह केवल एक बार दिखाया जाएगा। इसे अभी सहेज लें, बाद में इसे पुनः प्राप्त नहीं किया जा सकेगा।",
"copy": "प्रतिलिपि",
"copied": "कॉपी किया गया",
"viewJson": "जेएन",
"viewBuilder": "निर्माता",
"viewGraph": "ग्राफ़",
"lastRun": "आखरी बार",
"never": "कभी नहीं",
"duration": "{{seconds}}s",
"stepOutput": "उत्पादन",
"stepError": "गलती",
"dryRunBadge": "परीक्षण के लिए चलाना",
"hostSelector": {
"trigger": "ट्रिगरिंग होस्ट",
"host": "विशिष्ट मेज़बान",
"fleet": "बेड़ा",
"all": "सभी मेजबान"
},
"triggerKinds": {
"metric_threshold": "मीट्रिक सीमा",
"host_status": "होस्ट ऊपर या नीचे जाता है",
"health_check": "स्वास्थ्य जांच में बदलाव",
"schedule": "एक निर्धारित कार्यक्रम के अनुसार",
"docker_event": "कंटेनर घटना",
"internal_event": "टर्मिक्स घटना",
"webhook": "इनकमिंग वेबहुक"
},
"stepTypes": {
"notify": "सूचना भेजें",
"http": "किसी URL को कॉल करें",
"run_snippet": "एक स्निपेट चलाएँ",
"run_command": "एक कमांड चलाएँ",
"docker": "एक कंटेनर को नियंत्रित करें",
"tunnel": "एक सुरंग को नियंत्रित करें",
"wol": "किसी मेजबान को जगाओ",
"wait": "इंतज़ार",
"set_var": "एक चर सेट करें",
"if": "यदि / अन्यथा",
"run_automation": "एक और ऑटोमेशन चलाएँ",
"stop": "रुकना"
},
"statuses": {
"running": "दौड़ना",
"success": "सफलता",
"failed": "असफल",
"timeout": "समय समााप्त",
"skipped": "छोड़ा गया",
"cancelled": "रद्द कर दिया गया"
},
"fields": {
"host": "मेज़बान",
"metric": "मीट्रिक",
"mount": "माउंट पॉइंट",
"operator": "है",
"value": "कीमत",
"forSeconds": "(सेकंड) तक कायम रहा",
"cooldown": "कूलडाउन (मिनटों में)",
"cron": "क्रोन अभिव्यक्ति",
"intervalSeconds": "हर (सेकंड)",
"timezone": "समय क्षेत्र",
"timezoneServer": "सर्वर समय",
"timezoneHint": "इस ज़ोन में क्रॉन टाइम पढ़े जाते हैं। यह इंटरवल शेड्यूल पर लागू नहीं होता है।",
"container": "पात्र",
"command": "आज्ञा",
"url": "यूआरएल",
"method": "तरीका",
"body": "शरीर",
"channels": "चैनल",
"title": "शीर्षक",
"message": "संदेश",
"snippet": "टुकड़ा",
"seconds": "सेकंड",
"conditionLeftPlaceholder": "जाँच करने के लिए मान",
"conditionRightPlaceholder": "तुलना करें",
"variableName": "चर का नाम",
"variableValue": "कीमत",
"elevated": "sudo के साथ चलाएँ",
"onError": "यदि यह विफल हो जाता है",
"allowPrivateNetwork": "स्थानीय नेटवर्क पतों की अनुमति दें",
"allowPrivateNetworkHint": "आपके लोकल एरिया नेटवर्क (LAN) पर सेल्फ-होस्टेड सेवा के लिए आवश्यक। आंतरिक पतों पर अनुरोधों को रोकने के लिए डिफ़ॉल्ट रूप से बंद।"
},
"onError": {
"stop": "दौड़ रोको",
"continue": "जारी रखो"
}
}
}
},
"nav": {
"automations": "स्वचालन"
},
"onboarding": {
"feature_automations": "स्वचालन",
"feature_automations_desc": "कुछ घटित होने पर चरणों को स्वचालित रूप से चलाएं और सूचना प्राप्त करें।"
}
}
@@ -0,0 +1,149 @@
{
"newUi": {
"sidebar": {
"automations": {
"title": "Automatizálások",
"tabAutomations": "Automatizálások",
"tabRuns": "Futások",
"tabChannels": "Csatornák",
"createAutomation": "Új automatizálás",
"backToAutomations": "Vissza az automatizálásokhoz",
"createTitle": "Új automatizálás",
"editTitle": "Szerkesztési automatizálás",
"empty": "Még nincsenek automatizálások. Hozz létre egyet, amely egy mérőszámra, ütemezésre vagy eseményre reagál.",
"emptyRuns": "Még nincsenek futások.",
"emptyChannels": "Még nincsenek csatornák. Adj hozzá egyet, hogy értesítéseket küldhess valahova.",
"noChannelsHint": "Még nincsenek beállítva csatornák. Adjon hozzá egyet a Csatornák fülön.",
"addChannel": "Csatorna hozzáadása",
"testChannel": "Teszt",
"channelTestSent": "Tesztértesítés elküldve",
"channelTestFailed": "Tesztértesítés sikertelen",
"channelDeleted": "Csatorna törölve",
"deleteChannelConfirm": "Törlöd ezt a csatornát? Az azt használó automatizálások nem fognak értesítéseket küldeni.",
"nameLabel": "Név",
"namePlaceholder": "pl. /data törlése, amikor megtelik",
"nameRequired": "Név megadása kötelező",
"descriptionLabel": "Leírás",
"descriptionPlaceholder": "Opcionális leírás",
"enabledLabel": "Engedélyezve",
"concurrencyLabel": "Ha már fut",
"concurrencyHint": "Mi a teendő, ha ez ismét aktiválódik, mielőtt az utolsó futtatás befejeződött?",
"concurrency": {
"skip": "Kihagyja az új futást",
"queue": "Várj és fuss utána",
"allow": "Futtassa mindkettőt egyszerre"
},
"save": "Megtakarítás",
"created": "Automatizálás létrehozva",
"updated": "Automatizálás mentve",
"deleted": "Automatizálás törölve",
"deleteConfirm": "Törli ezt az automatizálást? A futási előzményei is törlődnek.",
"runNow": "Futtatás most",
"testRun": "Próbaüzem",
"testRunHint": "Minden lépést lefuttat, de a Termixen kívül semmihez sem ér hozzá.",
"runStarted": "Futtatás elkezdve",
"runFinished": "Futtatás befejezve: {{status}}",
"trigger": "Trigger",
"steps": "Lépések",
"addStep": "Lépés hozzáadása",
"removeStep": "Lépés eltávolítása",
"moveUp": "Feljebb mozgatás",
"moveDown": "Lejjebb mozgatás",
"noSteps": "Még nincsenek lépések. Írj be egyet, ami leírja, hogy minek kellene történnie.",
"webhookTokenTitle": "Webhook URL-címe",
"webhookTokenDescription": "Ez egyszer jelenik meg. Mentsd el most, később nem lesz elérhető.",
"copy": "Másolat",
"copied": "Másolva",
"viewJson": "JSON",
"viewBuilder": "Építész",
"viewGraph": "Grafikon",
"lastRun": "Utolsó futás",
"never": "Soha",
"duration": "{{seconds}}s",
"stepOutput": "Kimenet",
"stepError": "Hiba",
"dryRunBadge": "Próbaüzem",
"hostSelector": {
"trigger": "Kiváltó gazdagép",
"host": "Adott gazdagép",
"fleet": "Flotta",
"all": "Minden házigazda"
},
"triggerKinds": {
"metric_threshold": "Metrikus küszöbérték",
"host_status": "A host fel- vagy lekapcsolódik",
"health_check": "Egészségügyi ellenőrzés változásai",
"schedule": "Ütemterv szerint",
"docker_event": "Konténeresemény",
"internal_event": "Termix esemény",
"webhook": "Bejövő webhook"
},
"stepTypes": {
"notify": "Értesítés küldése",
"http": "URL hívása",
"run_snippet": "Kódrészlet futtatása",
"run_command": "Parancs futtatása",
"docker": "Egy konténer vezérlése",
"tunnel": "Irányíts egy alagutat",
"wol": "Ébresszen fel egy házigazdát",
"wait": "Várjon",
"set_var": "Változó beállítása",
"if": "Ha / egyébként",
"run_automation": "Futtasson egy másik automatizálást",
"stop": "Stop"
},
"statuses": {
"running": "Futás",
"success": "Siker",
"failed": "Sikertelen",
"timeout": "Időtúllépés történt",
"skipped": "Kihagyva",
"cancelled": "Lemondva"
},
"fields": {
"host": "Házigazda",
"metric": "Metrika",
"mount": "Csatlakozási pont",
"operator": "Van",
"value": "Érték",
"forSeconds": "Fenntartott (másodperc)",
"cooldown": "Lehűlési idő (perc)",
"cron": "Cron kifejezés",
"intervalSeconds": "Minden (másodperc)",
"timezone": "Időzóna",
"timezoneServer": "Szerveridő",
"timezoneHint": "A Cron idők leolvasása ebben a zónában történik. Nem vonatkozik az intervallumos ütemtervekre.",
"container": "Tartály",
"command": "Parancs",
"url": "URL-cím",
"method": "Módszer",
"body": "Test",
"channels": "Csatornák",
"title": "Cím",
"message": "Üzenet",
"snippet": "Töredék",
"seconds": "Másodperc",
"conditionLeftPlaceholder": "Ellenőrizendő érték",
"conditionRightPlaceholder": "Összevet",
"variableName": "Változó neve",
"variableValue": "Érték",
"elevated": "Futtassa a sudo paranccsal",
"onError": "Ha ez nem sikerül",
"allowPrivateNetwork": "Helyi hálózati címek engedélyezése",
"allowPrivateNetworkHint": "Szükséges egy saját tárhelyen futó szolgáltatáshoz a helyi hálózaton. Alapértelmezés szerint ki van kapcsolva, hogy megakadályozza a belső címekre irányuló kéréseket."
},
"onError": {
"stop": "Állítsd meg a futást",
"continue": "Folytat"
}
}
}
},
"nav": {
"automations": "Automatizálások"
},
"onboarding": {
"feature_automations": "Automatizálások",
"feature_automations_desc": "Automatikusan futtassa a lépéseket, amikor valami történik, és kapjon értesítést."
}
}
@@ -0,0 +1,149 @@
{
"newUi": {
"sidebar": {
"automations": {
"title": "Otomatisasi",
"tabAutomations": "Otomatisasi",
"tabRuns": "Lari",
"tabChannels": "Saluran",
"createAutomation": "Otomatisasi Baru",
"backToAutomations": "Kembali ke Otomatisasi",
"createTitle": "Otomatisasi Baru",
"editTitle": "Edit Otomatisasi",
"empty": "Belum ada otomatisasi. Buat satu untuk bereaksi terhadap metrik, jadwal, atau peristiwa.",
"emptyRuns": "Belum ada percobaan lari.",
"emptyChannels": "Belum ada saluran. Tambahkan satu untuk mengirim notifikasi ke suatu tempat.",
"noChannelsHint": "Belum ada saluran yang dibuat. Tambahkan satu di tab Saluran.",
"addChannel": "Tambahkan Saluran",
"testChannel": "Tes",
"channelTestSent": "Notifikasi pengujian telah dikirim.",
"channelTestFailed": "Notifikasi pengujian gagal",
"channelDeleted": "Saluran dihapus",
"deleteChannelConfirm": "Hapus saluran ini? Otomatisasi yang menggunakannya akan berhenti memberi notifikasi.",
"nameLabel": "Nama",
"namePlaceholder": "misalnya, Bersihkan /data saat sudah penuh",
"nameRequired": "Nama wajib diisi.",
"descriptionLabel": "Keterangan",
"descriptionPlaceholder": "Deskripsi opsional",
"enabledLabel": "Diaktifkan",
"concurrencyLabel": "Jika sudah berjalan",
"concurrencyHint": "Apa yang harus dilakukan jika ini terpicu lagi sebelum proses terakhir selesai.",
"concurrency": {
"skip": "Lewati lari baru",
"queue": "Tunggu dan lari setelahnya",
"allow": "Jalankan keduanya sekaligus"
},
"save": "Menyimpan",
"created": "Otomatisasi dibuat",
"updated": "Otomatisasi tersimpan",
"deleted": "Otomatisasi dihapus",
"deleteConfirm": "Hapus otomatisasi ini? Riwayat eksekusinya juga akan terhapus.",
"runNow": "Lari sekarang",
"testRun": "Uji coba",
"testRunHint": "Berjalan di setiap langkah tetapi tidak menyentuh apa pun di luar Termix.",
"runStarted": "Lari dimulai",
"runFinished": "Eksekusi selesai: {{status}}",
"trigger": "Pemicu",
"steps": "Tangga",
"addStep": "Tambahkan langkah",
"removeStep": "Hapus langkah",
"moveUp": "Naikkan",
"moveDown": "Turun ke bawah",
"noSteps": "Belum ada langkah. Tambahkan satu langkah untuk menjelaskan apa yang seharusnya terjadi.",
"webhookTokenTitle": "URL Webhook",
"webhookTokenDescription": "Ini hanya ditampilkan sekali. Simpan sekarang, karena tidak dapat diambil kembali nanti.",
"copy": "Menyalin",
"copied": "Disalin",
"viewJson": "JSON",
"viewBuilder": "Pembangun",
"viewGraph": "Grafik",
"lastRun": "Lari terakhir",
"never": "Tidak pernah",
"duration": "{{seconds}}s",
"stepOutput": "Keluaran",
"stepError": "Kesalahan",
"dryRunBadge": "Uji coba",
"hostSelector": {
"trigger": "Host pemicu",
"host": "Host spesifik",
"fleet": "Armada",
"all": "Semua tuan rumah"
},
"triggerKinds": {
"metric_threshold": "Ambang batas metrik",
"host_status": "Pembawa acara naik atau turun",
"health_check": "Perubahan pemeriksaan kesehatan",
"schedule": "Sesuai jadwal",
"docker_event": "Acara kontainer",
"internal_event": "Acara Termix",
"webhook": "Webhook masuk"
},
"stepTypes": {
"notify": "Kirim pemberitahuan",
"http": "Memanggil URL",
"run_snippet": "Jalankan cuplikan kode",
"run_command": "Jalankan perintah",
"docker": "Mengendalikan sebuah kontainer",
"tunnel": "Mengendalikan terowongan",
"wol": "Bangunkan tuan rumah",
"wait": "Tunggu",
"set_var": "Tetapkan sebuah variabel",
"if": "Jika/sebaliknya",
"run_automation": "Jalankan otomatisasi lainnya",
"stop": "Berhenti"
},
"statuses": {
"running": "Berlari",
"success": "Kesuksesan",
"failed": "Gagal",
"timeout": "Waktu habis",
"skipped": "Dilewati",
"cancelled": "Dibatalkan"
},
"fields": {
"host": "Tuan rumah",
"metric": "Metrik",
"mount": "Titik pemasangan",
"operator": "Adalah",
"value": "Nilai",
"forSeconds": "Berlangsung selama (detik)",
"cooldown": "Waktu pendinginan (menit)",
"cron": "Ekspresi Cron",
"intervalSeconds": "Setiap (detik)",
"timezone": "Zona waktu",
"timezoneServer": "Waktu server",
"timezoneHint": "Waktu Cron dibaca di zona ini. Tidak berlaku untuk jadwal interval.",
"container": "Wadah",
"command": "Memerintah",
"url": "URL",
"method": "Metode",
"body": "Tubuh",
"channels": "Saluran",
"title": "Judul",
"message": "Pesan",
"snippet": "Potongan",
"seconds": "Detik",
"conditionLeftPlaceholder": "Nilai yang perlu diperiksa",
"conditionRightPlaceholder": "Bandingkan dengan",
"variableName": "Nama variabel",
"variableValue": "Nilai",
"elevated": "Jalankan dengan sudo",
"onError": "Jika ini gagal",
"allowPrivateNetwork": "Izinkan alamat jaringan lokal",
"allowPrivateNetworkHint": "Diperlukan untuk layanan yang dihosting sendiri di LAN Anda. Secara default dinonaktifkan untuk mencegah permintaan ke alamat internal."
},
"onError": {
"stop": "Hentikan larinya",
"continue": "Melanjutkan"
}
}
}
},
"nav": {
"automations": "Otomatisasi"
},
"onboarding": {
"feature_automations": "Otomatisasi",
"feature_automations_desc": "Jalankan langkah-langkah secara otomatis saat sesuatu terjadi, dan dapatkan notifikasi."
}
}
@@ -0,0 +1,149 @@
{
"newUi": {
"sidebar": {
"automations": {
"title": "Automazioni",
"tabAutomations": "Automazioni",
"tabRuns": "Corse",
"tabChannels": "Canali",
"createAutomation": "Nuova automazione",
"backToAutomations": "Torna alle automazioni",
"createTitle": "Nuova automazione",
"editTitle": "Automazione di modifica",
"empty": "Nessuna automazione ancora disponibile. Creane una per reagire a una metrica, a una pianificazione o a un evento.",
"emptyRuns": "Nessuna corsa ancora.",
"emptyChannels": "Nessun canale ancora. Aggiungine uno per inviare notifiche da qualche parte.",
"noChannelsHint": "Nessun canale configurato al momento. Aggiungine uno nella scheda Canali.",
"addChannel": "Aggiungi canale",
"testChannel": "Test",
"channelTestSent": "Notifica di test inviata",
"channelTestFailed": "Notifica di prova non riuscita",
"channelDeleted": "Canale eliminato",
"deleteChannelConfirm": "Eliminare questo canale? Le automazioni che lo utilizzano smetteranno di inviare notifiche.",
"nameLabel": "Nome",
"namePlaceholder": "Ad esempio, pulire /data quando è pieno",
"nameRequired": "Il nome è obbligatorio",
"descriptionLabel": "Descrizione",
"descriptionPlaceholder": "Descrizione facoltativa",
"enabledLabel": "Abilitato",
"concurrencyLabel": "Se è già in esecuzione",
"concurrencyHint": "Cosa fare se questo problema si ripresenta prima che l'ultima esecuzione sia terminata.",
"concurrency": {
"skip": "Salta la nuova corsa",
"queue": "Aspetta e corri dopo",
"allow": "Eseguili entrambi contemporaneamente"
},
"save": "Salva",
"created": "Automazione creata",
"updated": "Automazione salvata",
"deleted": "Automazione eliminata",
"deleteConfirm": "Eliminare questa automazione? Anche la sua cronologia di esecuzione verrà eliminata.",
"runNow": "Corri adesso",
"testRun": "Esecuzione del test",
"testRunHint": "Esegue ogni passaggio ma non tocca nulla al di fuori di Termix.",
"runStarted": "Corsa iniziata",
"runFinished": "Corsa terminata: {{status}}",
"trigger": "Grilletto",
"steps": "Passaggi",
"addStep": "Aggiungi passaggio",
"removeStep": "Rimuovere il passaggio",
"moveUp": "Spostarsi verso l'alto",
"moveDown": "Scendendo",
"noSteps": "Nessun passaggio ancora. Aggiungine uno per specificare cosa dovrebbe succedere.",
"webhookTokenTitle": "URL del webhook",
"webhookTokenDescription": "Questa immagine viene visualizzata una sola volta. Salvala ora, non sarà possibile recuperarla in seguito.",
"copy": "Copia",
"copied": "Copiato",
"viewJson": "JSON",
"viewBuilder": "Costruttore",
"viewGraph": "Grafico",
"lastRun": "Prima corsa",
"never": "Mai",
"duration": "{{seconds}}s",
"stepOutput": "Produzione",
"stepError": "Errore",
"dryRunBadge": "Esecuzione del test",
"hostSelector": {
"trigger": "Host che ha attivato l'evento",
"host": "Ospite specifico",
"fleet": "Flotta",
"all": "Tutti gli host"
},
"triggerKinds": {
"metric_threshold": "Soglia metrica",
"host_status": "L'host sale o scende",
"health_check": "modifiche al controllo sanitario",
"schedule": "Secondo un programma",
"docker_event": "evento contenitore",
"internal_event": "Evento Termix",
"webhook": "Webhook in entrata"
},
"stepTypes": {
"notify": "Invia una notifica",
"http": "Chiamare un medico",
"run_snippet": "Esegui uno snippet",
"run_command": "Eseguire un comando",
"docker": "Controllare un contenitore",
"tunnel": "Controllare un tunnel",
"wol": "Svegliare un ospite",
"wait": "Aspettare",
"set_var": "Imposta una variabile",
"if": "Se / altrimenti",
"run_automation": "Esegui un'altra automazione",
"stop": "Fermare"
},
"statuses": {
"running": "Corsa",
"success": "Successo",
"failed": "Fallito",
"timeout": "Tempo scaduto",
"skipped": "Saltato",
"cancelled": "Annullato"
},
"fields": {
"host": "Ospite",
"metric": "metrico",
"mount": "Punto di appoggio",
"operator": "È",
"value": "Valore",
"forSeconds": "Sostenuto per (secondi)",
"cooldown": "Tempo di raffreddamento (minuti)",
"cron": "espressione Cron",
"intervalSeconds": "Ogni (secondi)",
"timezone": "Fuso orario",
"timezoneServer": "Ora del server",
"timezoneHint": "In questa zona vengono letti i tempi di Cron. Non si applica alle programmazioni a intervalli.",
"container": "Contenitore",
"command": "Comando",
"url": "URL",
"method": "Metodo",
"body": "Corpo",
"channels": "Canali",
"title": "Titolo",
"message": "Messaggio",
"snippet": "Frammento",
"seconds": "secondi",
"conditionLeftPlaceholder": "Valore da controllare",
"conditionRightPlaceholder": "Confronta con",
"variableName": "Nome variabile",
"variableValue": "Valore",
"elevated": "Esegui con sudo",
"onError": "Se questo non funziona",
"allowPrivateNetwork": "Consenti indirizzi di rete locale",
"allowPrivateNetworkHint": "Necessario per un servizio self-hosted sulla tua LAN. Disattivato per impostazione predefinita per impedire richieste a indirizzi interni."
},
"onError": {
"stop": "Ferma la corsa",
"continue": "Proseguire"
}
}
}
},
"nav": {
"automations": "Automazioni"
},
"onboarding": {
"feature_automations": "Automazioni",
"feature_automations_desc": "Esegui automaticamente i passaggi quando si verifica un evento e ricevi una notifica."
}
}
@@ -0,0 +1,149 @@
{
"newUi": {
"sidebar": {
"automations": {
"title": "自動化",
"tabAutomations": "自動化",
"tabRuns": "走る",
"tabChannels": "チャンネル",
"createAutomation": "新しい自動化",
"backToAutomations": "自動化に戻る",
"createTitle": "新しい自動化",
"editTitle": "編集自動化",
"empty": "自動化はまだ設定されていません。指標、スケジュール、またはイベントに応じて自動化を設定してください。",
"emptyRuns": "まだ得点はありません。",
"emptyChannels": "まだチャンネルがありません。通知を送信するチャンネルを追加してください。",
"noChannelsHint": "チャンネルがまだ設定されていません。チャンネルタブで追加してください。",
"addChannel": "チャンネルを追加",
"testChannel": "テスト",
"channelTestSent": "テスト通知が送信されました",
"channelTestFailed": "テスト通知が失敗しました",
"channelDeleted": "チャンネルが削除されました",
"deleteChannelConfirm": "このチャンネルを削除しますか?このチャンネルを使用している自動化機能は通知を停止します。",
"nameLabel": "名前",
"namePlaceholder": "例:/data がいっぱいになったらクリーンアップする",
"nameRequired": "名前は必須です",
"descriptionLabel": "説明",
"descriptionPlaceholder": "オプションの説明",
"enabledLabel": "有効",
"concurrencyLabel": "既に実行中の場合",
"concurrencyHint": "前回の実行が終了する前に、これが再び発生した場合の対処法。",
"concurrency": {
"skip": "新しいランをスキップ",
"queue": "待ってから追いかける",
"allow": "両方を同時に実行する"
},
"save": "保存",
"created": "自動化が作成しました",
"updated": "自動化が保存されました",
"deleted": "自動化が削除されました",
"deleteConfirm": "この自動化を削除すると、実行履歴も削除されます。",
"runNow": "今すぐ実行",
"testRun": "試運転",
"testRunHint": "すべてのステップを実行しますが、Termix以外のものには一切触れません。",
"runStarted": "ランニング開始",
"runFinished": "実行完了: {{status}}",
"trigger": "トリガー",
"steps": "手順",
"addStep": "ステップを追加する",
"removeStep": "削除手順",
"moveUp": "上へ進む",
"moveDown": "下へ移動",
"noSteps": "まだ手順がありません。何が起こるべきかを記述する手順を追加してください。",
"webhookTokenTitle": "Webhook URL",
"webhookTokenDescription": "これは一度しか表示されません。今すぐ保存してください。後で取り出すことはできません。",
"copy": "コピー",
"copied": "コピーしました",
"viewJson": "JSON",
"viewBuilder": "ビルダー",
"viewGraph": "グラフ",
"lastRun": "最後の走行",
"never": "一度もない",
"duration": "{{seconds}}s",
"stepOutput": "出力",
"stepError": "エラー",
"dryRunBadge": "試運転",
"hostSelector": {
"trigger": "トリガーホスト",
"host": "特定の宿主",
"fleet": "艦隊",
"all": "すべてのホスト"
},
"triggerKinds": {
"metric_threshold": "メトリックしきい値",
"host_status": "ホストが起動または停止する",
"health_check": "健康チェックの変更点",
"schedule": "スケジュール通りに",
"docker_event": "コンテナイベント",
"internal_event": "ターミックスイベント",
"webhook": "受信ウェブフック"
},
"stepTypes": {
"notify": "通知を送信する",
"http": "URLを呼び出す",
"run_snippet": "スニペットを実行する",
"run_command": "コマンドを実行する",
"docker": "コンテナを制御する",
"tunnel": "トンネルを制御する",
"wol": "ホストを起こす",
"wait": "待って",
"set_var": "変数を設定する",
"if": "もし/そうでなければ",
"run_automation": "別の自動化を実行する",
"stop": "停止"
},
"statuses": {
"running": "ランニング",
"success": "成功",
"failed": "失敗した",
"timeout": "タイムアウト",
"skipped": "スキップしました",
"cancelled": "キャンセル"
},
"fields": {
"host": "ホスト",
"metric": "メトリック",
"mount": "取り付けポイント",
"operator": "は",
"value": "価値",
"forSeconds": "(秒)の間持続",
"cooldown": "クールダウン時間(分)",
"cron": "Cron発現",
"intervalSeconds": "(秒)ごとに",
"timezone": "タイムゾーン",
"timezoneServer": "サーバー時間",
"timezoneHint": "このゾーンでは、cronの実行時間が読み取られます。インターバルスケジュールには適用されません。",
"container": "容器",
"command": "指示",
"url": "URL",
"method": "方法",
"body": "体",
"channels": "チャンネル",
"title": "タイトル",
"message": "メッセージ",
"snippet": "抜粋",
"seconds": "秒",
"conditionLeftPlaceholder": "チェックすべき値",
"conditionRightPlaceholder": "比較対象",
"variableName": "変数名",
"variableValue": "価値",
"elevated": "sudo を付けて実行",
"onError": "これが失敗した場合",
"allowPrivateNetwork": "ローカルネットワークアドレスを許可する",
"allowPrivateNetworkHint": "LAN上でセルフホスト型サービスを実行する場合に必要です。内部アドレスへのリクエストを防ぐため、デフォルトでは無効になっています。"
},
"onError": {
"stop": "走るのをやめろ",
"continue": "続ける"
}
}
}
},
"nav": {
"automations": "自動化"
},
"onboarding": {
"feature_automations": "自動化",
"feature_automations_desc": "何かが発生した際に自動的に手順を実行し、通知を受け取ります。"
}
}
@@ -0,0 +1,149 @@
{
"newUi": {
"sidebar": {
"automations": {
"title": "자동화",
"tabAutomations": "자동화",
"tabRuns": "실행",
"tabChannels": "채널",
"createAutomation": "새로운 자동화",
"backToAutomations": "자동화 목록으로 돌아가기",
"createTitle": "새로운 자동화",
"editTitle": "편집 자동화",
"empty": "아직 자동화가 설정되어 있지 않습니다. 지표, 일정 또는 이벤트에 반응하는 자동화를 생성하세요.",
"emptyRuns": "아직 실행된 적이 없습니다.",
"emptyChannels": "아직 채널이 없습니다. 알림을 보낼 채널을 추가하세요.",
"noChannelsHint": "아직 채널이 설정되지 않았습니다. 채널 탭에서 채널을 추가하세요.",
"addChannel": "채널 추가",
"testChannel": "시험",
"channelTestSent": "테스트 알림이 전송되었습니다.",
"channelTestFailed": "테스트 알림 실패",
"channelDeleted": "채널이 삭제되었습니다",
"deleteChannelConfirm": "이 채널을 삭제하시겠습니까? 그러면 해당 채널을 사용하는 자동화 기능이 더 이상 알림을 보내지 않게 됩니다.",
"nameLabel": "이름",
"namePlaceholder": "예: /data 폴더가 가득 차면 정리합니다.",
"nameRequired": "이름은 필수 입력 사항입니다.",
"descriptionLabel": "설명",
"descriptionPlaceholder": "선택적 설명",
"enabledLabel": "활성화됨",
"concurrencyLabel": "이미 실행 중인 경우",
"concurrencyHint": "마지막 실행이 완료되기 전에 이 문제가 다시 발생할 경우 어떻게 해야 할까요?",
"concurrency": {
"skip": "새로운 실행을 건너뛰세요",
"queue": "기다렸다가 실행하세요",
"allow": "두 가지를 동시에 실행하세요"
},
"save": "구하다",
"created": "자동화 생성됨",
"updated": "자동화 저장됨",
"deleted": "자동화 삭제됨",
"deleteConfirm": "이 자동화를 삭제하시겠습니까? 실행 기록도 함께 삭제됩니다.",
"runNow": "지금 실행하세요",
"testRun": "테스트 실행",
"testRunHint": "모든 단계를 실행하지만 Termix 외부의 어떤 것도 건드리지 않습니다.",
"runStarted": "실행 시작됨",
"runFinished": "실행 완료: {{status}}",
"trigger": "방아쇠",
"steps": "단계",
"addStep": "단계 추가",
"removeStep": "제거 단계",
"moveUp": "위로 이동",
"moveDown": "아래로 이동",
"noSteps": "아직 단계가 없습니다. 어떤 일이 일어나야 하는지 설명하는 단계를 추가하세요.",
"webhookTokenTitle": "웹훅 URL",
"webhookTokenDescription": "이 내용은 한 번만 표시됩니다. 지금 저장하세요. 나중에 불러올 수 없습니다.",
"copy": "복사",
"copied": "복사됨",
"viewJson": "JSON",
"viewBuilder": "건축업자",
"viewGraph": "그래프",
"lastRun": "마지막 실행",
"never": "절대",
"duration": "{{seconds}}s",
"stepOutput": "산출",
"stepError": "오류",
"dryRunBadge": "테스트 실행",
"hostSelector": {
"trigger": "트리거링 호스트",
"host": "특정 호스트",
"fleet": "함대",
"all": "모든 호스트"
},
"triggerKinds": {
"metric_threshold": "측정 임계값",
"host_status": "호스트가 올라가거나 내려갑니다.",
"health_check": "건강 검진 변경 사항",
"schedule": "정해진 일정에 따라",
"docker_event": "컨테이너 이벤트",
"internal_event": "터믹스 이벤트",
"webhook": "수신 웹훅"
},
"stepTypes": {
"notify": "알림 보내기",
"http": "URL을 호출합니다",
"run_snippet": "코드 조각을 실행하세요",
"run_command": "명령어를 실행하세요",
"docker": "컨테이너를 제어하세요",
"tunnel": "터널을 제어하세요",
"wol": "호스트를 깨우세요",
"wait": "기다리다",
"set_var": "변수를 설정하세요",
"if": "만약 / 그렇지 않다면",
"run_automation": "다른 자동화를 실행합니다",
"stop": "멈추다"
},
"statuses": {
"running": "달리기",
"success": "성공",
"failed": "실패한",
"timeout": "시간 초과됨",
"skipped": "건너뛰었습니다",
"cancelled": "취소"
},
"fields": {
"host": "주인",
"metric": "미터법",
"mount": "마운트 포인트",
"operator": "~이다",
"value": "값",
"forSeconds": "(초) 동안 지속됨",
"cooldown": "재사용 대기 시간(분)",
"cron": "크론 발현",
"intervalSeconds": "매 (초)",
"timezone": "시간대",
"timezoneServer": "서버 시간",
"timezoneHint": "크론 시간은 이 영역에서 읽습니다. 간격 스케줄에는 적용되지 않습니다.",
"container": "컨테이너",
"command": "명령",
"url": "URL",
"method": "방법",
"body": "몸",
"channels": "채널",
"title": "제목",
"message": "메시지",
"snippet": "단편",
"seconds": "초",
"conditionLeftPlaceholder": "확인할 값",
"conditionRightPlaceholder": "~와 비교하세요",
"variableName": "변수 이름",
"variableValue": "값",
"elevated": "sudo를 사용하여 실행하세요",
"onError": "이것이 실패하면",
"allowPrivateNetwork": "로컬 네트워크 주소를 허용합니다",
"allowPrivateNetworkHint": "LAN에서 자체 호스팅 서비스를 운영하는 데 필요합니다. 내부 주소로의 요청을 방지하기 위해 기본적으로 비활성화되어 있습니다."
},
"onError": {
"stop": "달리기를 멈춰라",
"continue": "계속하세요"
}
}
}
},
"nav": {
"automations": "자동화"
},
"onboarding": {
"feature_automations": "자동화",
"feature_automations_desc": "어떤 상황이 발생하면 자동으로 단계를 실행하고 알림을 받으세요."
}
}
@@ -0,0 +1,149 @@
{
"newUi": {
"sidebar": {
"automations": {
"title": "Automatiseringen",
"tabAutomations": "Automatiseringen",
"tabRuns": "Loopt",
"tabChannels": "Kanalen",
"createAutomation": "Nieuwe automatisering",
"backToAutomations": "Terug naar automatiseringen",
"createTitle": "Nieuwe automatisering",
"editTitle": "Automatisering bewerken",
"empty": "Nog geen automatiseringen. Maak er een aan die reageert op een meetwaarde, een planning of een gebeurtenis.",
"emptyRuns": "Nog geen runs.",
"emptyChannels": "Nog geen kanalen. Voeg er een toe om meldingen ergens naartoe te sturen.",
"noChannelsHint": "Er zijn nog geen kanalen ingesteld. Voeg er een toe via het tabblad Kanalen.",
"addChannel": "Kanaal toevoegen",
"testChannel": "Test",
"channelTestSent": "Testmelding verzonden",
"channelTestFailed": "Testmelding mislukt",
"channelDeleted": "Kanaal verwijderd",
"deleteChannelConfirm": "Als u dit kanaal wilt verwijderen, zullen automatiseringsprocessen die ervan gebruikmaken geen meldingen meer versturen.",
"nameLabel": "Naam",
"namePlaceholder": "Bijvoorbeeld: maak /data leeg wanneer het vol is.",
"nameRequired": "Naam is verplicht",
"descriptionLabel": "Beschrijving",
"descriptionPlaceholder": "Optionele beschrijving",
"enabledLabel": "Ingeschakeld",
"concurrencyLabel": "Als het al draait",
"concurrencyHint": "Wat te doen als dit opnieuw wordt geactiveerd voordat de laatste run is voltooid?",
"concurrency": {
"skip": "Sla de nieuwe run over",
"queue": "Wacht en ren erachteraan.",
"allow": "Voer ze allebei tegelijk uit."
},
"save": "Redden",
"created": "Automatisering gecreëerd",
"updated": "Automatisering opgeslagen",
"deleted": "Automatisering verwijderd",
"deleteConfirm": "Als je deze automatisering verwijdert, wordt ook de uitvoeringsgeschiedenis ervan verwijderd.",
"runNow": "Ren nu",
"testRun": "Testrun",
"testRunHint": "Voert elke stap uit, maar raakt niets buiten Termix aan.",
"runStarted": "De run is gestart.",
"runFinished": "Run voltooid: {{status}}",
"trigger": "Trekker",
"steps": "Stappen",
"addStep": "Voeg stap toe",
"removeStep": "Verwijder stap",
"moveUp": "Omhoog gaan",
"moveDown": "Ga naar beneden",
"noSteps": "Nog geen stappen. Voeg er een toe om aan te geven wat er moet gebeuren.",
"webhookTokenTitle": "Webhook-URL",
"webhookTokenDescription": "Dit wordt eenmalig weergegeven. Sla het nu op, het kan later niet meer worden opgevraagd.",
"copy": "Kopiëren",
"copied": "Gekopieerd",
"viewJson": "JSON",
"viewBuilder": "Bouwer",
"viewGraph": "Grafiek",
"lastRun": "Laatste run",
"never": "Nooit",
"duration": "{{seconds}}s",
"stepOutput": "Uitvoer",
"stepError": "Fout",
"dryRunBadge": "Testrun",
"hostSelector": {
"trigger": "Activerende host",
"host": "Specifieke gastheer",
"fleet": "Vloot",
"all": "Alle hosts"
},
"triggerKinds": {
"metric_threshold": "Metrische drempelwaarde",
"host_status": "De host gaat omhoog of omlaag.",
"health_check": "Wijzigingen in de gezondheidscontrole",
"schedule": "Volgens een schema",
"docker_event": "Container-gebeurtenis",
"internal_event": "Termix-evenement",
"webhook": "Inkomende webhook"
},
"stepTypes": {
"notify": "Een melding verzenden",
"http": "Roep een URL aan",
"run_snippet": "Voer een codefragment uit",
"run_command": "Voer een commando uit",
"docker": "Een container besturen",
"tunnel": "Beheer een tunnel",
"wol": "Maak een gastheer wakker",
"wait": "Wachten",
"set_var": "Een variabele instellen",
"if": "Indien / anders",
"run_automation": "Voer nog een automatisering uit",
"stop": "Stop"
},
"statuses": {
"running": "Rennen",
"success": "Succes",
"failed": "Mislukt",
"timeout": "De tijd is verlopen.",
"skipped": "Overgeslagen",
"cancelled": "Geannuleerd"
},
"fields": {
"host": "Gastheer",
"metric": "Metrisch",
"mount": "Bergpunt",
"operator": "Is",
"value": "Waarde",
"forSeconds": "Aangehouden gedurende (seconden)",
"cooldown": "Afkoeltijd (minuten)",
"cron": "Cron-expressie",
"intervalSeconds": "Elke (seconden)",
"timezone": "Tijdzone",
"timezoneServer": "Servertijd",
"timezoneHint": "In deze zone worden de cron-tijden gelezen. Dit geldt niet voor intervalschema's.",
"container": "Container",
"command": "Commando",
"url": "URL",
"method": "Methode",
"body": "Lichaam",
"channels": "Kanalen",
"title": "Titel",
"message": "Bericht",
"snippet": "Fragment",
"seconds": "Seconden",
"conditionLeftPlaceholder": "Waarde om te controleren",
"conditionRightPlaceholder": "Vergelijk met",
"variableName": "Variabelenaam",
"variableValue": "Waarde",
"elevated": "Uitvoeren met sudo",
"onError": "Als dit mislukt",
"allowPrivateNetwork": "Sta lokale netwerkadressen toe.",
"allowPrivateNetworkHint": "Nodig voor een zelfgehoste service op uw LAN. Standaard uitgeschakeld om verzoeken naar interne adressen te voorkomen."
},
"onError": {
"stop": "Stop de loop",
"continue": "Ga zo door"
}
}
}
},
"nav": {
"automations": "Automatiseringen"
},
"onboarding": {
"feature_automations": "Automatiseringen",
"feature_automations_desc": "Voer stappen automatisch uit wanneer er iets gebeurt en ontvang meldingen."
}
}
@@ -0,0 +1,149 @@
{
"newUi": {
"sidebar": {
"automations": {
"title": "Automatiseringer",
"tabAutomations": "Automatiseringer",
"tabRuns": "Løper",
"tabChannels": "Kanaler",
"createAutomation": "Ny automatisering",
"backToAutomations": "Tilbake til automatiseringer",
"createTitle": "Ny automatisering",
"editTitle": "Rediger automatisering",
"empty": "Ingen automatiseringer ennå. Opprett en for å reagere på en beregning, en tidsplan eller en hendelse.",
"emptyRuns": "Ingen løp ennå.",
"emptyChannels": "Ingen kanaler ennå. Legg til en for å sende varsler et sted.",
"noChannelsHint": "Ingen kanaler er konfigurert ennå. Legg til en i Kanaler-fanen.",
"addChannel": "Legg til kanal",
"testChannel": "Test",
"channelTestSent": "Testvarsel sendt",
"channelTestFailed": "Testvarsel mislyktes",
"channelDeleted": "Kanalen slettet",
"deleteChannelConfirm": "Vil du slette denne kanalen? Automatiseringer som bruker den, vil slutte å varsle.",
"nameLabel": "Navn",
"namePlaceholder": "f.eks. Rydd opp i /data når den fylles",
"nameRequired": "Navn er obligatorisk",
"descriptionLabel": "Beskrivelse",
"descriptionPlaceholder": "Valgfri beskrivelse",
"enabledLabel": "Aktivert",
"concurrencyLabel": "Hvis den allerede kjører",
"concurrencyHint": "Hva skal man gjøre når dette utløses igjen før siste kjøring er ferdig?",
"concurrency": {
"skip": "Hopp over den nye kjøringen",
"queue": "Vent og løp etter",
"allow": "Kjør begge samtidig"
},
"save": "Spare",
"created": "Automatisering opprettet",
"updated": "Automatisering lagret",
"deleted": "Automatisering slettet",
"deleteConfirm": "Vil du slette denne automatiseringen? Kjørehistorikken slettes også.",
"runNow": "Løp nå",
"testRun": "Testkjøring",
"testRunHint": "Kjører hvert trinn, men berører ikke noe utenfor Termix.",
"runStarted": "Løpet startet",
"runFinished": "Kjøring fullført: {{status}}",
"trigger": "Avtrekker",
"steps": "Trinn",
"addStep": "Legg til trinn",
"removeStep": "Fjern trinn",
"moveUp": "Flytt opp",
"moveDown": "Flytt ned",
"noSteps": "Ingen trinn ennå. Legg til ett for å si hva som skal skje.",
"webhookTokenTitle": "Webhook-URL",
"webhookTokenDescription": "Dette vises én gang. Lagre det nå, det kan ikke hentes frem senere.",
"copy": "Kopiere",
"copied": "Kopiert",
"viewJson": "JSON",
"viewBuilder": "Bygger",
"viewGraph": "Kurve",
"lastRun": "Siste løp",
"never": "Aldri",
"duration": "{{seconds}}s",
"stepOutput": "Produksjon",
"stepError": "Feil",
"dryRunBadge": "Testkjøring",
"hostSelector": {
"trigger": "Utløsende vert",
"host": "Spesifikk vert",
"fleet": "Flåte",
"all": "Alle verter"
},
"triggerKinds": {
"metric_threshold": "Metrisk terskel",
"host_status": "Verten går opp eller ned",
"health_check": "Endringer i helsesjekken",
"schedule": "På en tidsplan",
"docker_event": "Containerhendelse",
"internal_event": "Termix-arrangementet",
"webhook": "Innkommende webhook"
},
"stepTypes": {
"notify": "Send et varsel",
"http": "Kall en URL",
"run_snippet": "Kjør et utdrag",
"run_command": "Kjør en kommando",
"docker": "Kontroller en container",
"tunnel": "Kontroller en tunnel",
"wol": "Vekk en vert",
"wait": "Vente",
"set_var": "Angi en variabel",
"if": "Hvis / ellers",
"run_automation": "Kjør en annen automatisering",
"stop": "Stoppe"
},
"statuses": {
"running": "Løping",
"success": "Suksess",
"failed": "Mislyktes",
"timeout": "Tidsavbrutt",
"skipped": "Hoppet over",
"cancelled": "Avlyst"
},
"fields": {
"host": "Vert",
"metric": "Metrisk",
"mount": "Monteringspunkt",
"operator": "Er",
"value": "Verdi",
"forSeconds": "Vedvarende i (sekunder)",
"cooldown": "Nedkjølingstid (minutter)",
"cron": "Cron-uttrykk",
"intervalSeconds": "Hvert (sekund)",
"timezone": "Tidssone",
"timezoneServer": "Servertid",
"timezoneHint": "Cron-tider leses i denne sonen. Gjelder ikke for intervallplaner.",
"container": "Container",
"command": "Kommando",
"url": "URL-adresse",
"method": "Metode",
"body": "Kropp",
"channels": "Kanaler",
"title": "Tittel",
"message": "Beskjed",
"snippet": "Utdrag",
"seconds": "Sekunder",
"conditionLeftPlaceholder": "Verdi å sjekke",
"conditionRightPlaceholder": "Sammenlign mot",
"variableName": "Variabelnavn",
"variableValue": "Verdi",
"elevated": "Kjør med sudo",
"onError": "Hvis dette mislykkes",
"allowPrivateNetwork": "Tillat lokale nettverksadresser",
"allowPrivateNetworkHint": "Nødvendig for en selvhostet tjeneste på LAN-et ditt. Av som standard for å forhindre forespørsler til interne adresser."
},
"onError": {
"stop": "Stopp løpet",
"continue": "Fortsett"
}
}
}
},
"nav": {
"automations": "Automatiseringer"
},
"onboarding": {
"feature_automations": "Automatiseringer",
"feature_automations_desc": "Kjør trinnene automatisk når noe skjer, og bli varslet."
}
}
@@ -0,0 +1,149 @@
{
"newUi": {
"sidebar": {
"automations": {
"title": "Automatyzacje",
"tabAutomations": "Automatyzacje",
"tabRuns": "Uruchomienia",
"tabChannels": "Kanały",
"createAutomation": "Nowa automatyzacja",
"backToAutomations": "Powrót do automatyzacji",
"createTitle": "Nowa automatyzacja",
"editTitle": "Edytuj automatyzację",
"empty": "Brak jeszcze automatyzacji. Utwórz automatyzację, która będzie reagować na metrykę, harmonogram lub zdarzenie.",
"emptyRuns": "Brak uruchomień.",
"emptyChannels": "Brak kanałów. Dodaj jeden, aby wysyłać powiadomienia.",
"noChannelsHint": "Nie skonfigurowano jeszcze żadnych kanałów. Dodaj jeden w zakładce Kanały.",
"addChannel": "Dodaj kanał",
"testChannel": "Test",
"channelTestSent": "Wysłano powiadomienie testowe",
"channelTestFailed": "Powiadomienie testowe nie powiodło się",
"channelDeleted": "Kanał usunięty",
"deleteChannelConfirm": "Usunąć ten kanał? Automatyzacje z niego korzystające przestaną wysyłać powiadomienia.",
"nameLabel": "Nazwa",
"namePlaceholder": "np. Wyczyść /data, gdy się zapełni",
"nameRequired": "Nazwa jest wymagana",
"descriptionLabel": "Opis",
"descriptionPlaceholder": "Opis opcjonalny",
"enabledLabel": "Włączona",
"concurrencyLabel": "Jeśli już działa",
"concurrencyHint": "Co zrobić, gdy zostanie wyzwolona ponownie przed zakończeniem poprzedniego uruchomienia.",
"concurrency": {
"skip": "Pomiń nowe uruchomienie",
"queue": "Poczekaj i uruchom po zakończeniu",
"allow": "Uruchom oba naraz"
},
"save": "Zapisz",
"created": "Utworzono automatyzację",
"updated": "Zapisano automatyzację",
"deleted": "Usunięto automatyzację",
"deleteConfirm": "Usunąć tę automatyzację? Jej historia uruchomień również zostanie usunięta.",
"runNow": "Uruchom teraz",
"testRun": "Uruchomienie próbne",
"testRunHint": "Wykonuje każdy krok, ale nie zmienia niczego poza Termixem.",
"runStarted": "Uruchomiono",
"runFinished": "Zakończono: {{status}}",
"trigger": "Wyzwalacz",
"steps": "Kroki",
"addStep": "Dodaj krok",
"removeStep": "Usuń krok",
"moveUp": "W górę",
"moveDown": "W dół",
"noSteps": "Brak kroków. Dodaj jeden, aby określić, co powinno się stać.",
"webhookTokenTitle": "Adres URL webhooka",
"webhookTokenDescription": "Pokazywany tylko raz. Zapisz go teraz, później nie da się go odzyskać.",
"copy": "Kopiuj",
"copied": "Skopiowano",
"viewJson": "JSON",
"viewBuilder": "Kreator",
"viewGraph": "Graf",
"lastRun": "Ostatnie uruchomienie",
"never": "Nigdy",
"duration": "{{seconds}}s",
"stepOutput": "Wyjście",
"stepError": "Błąd",
"dryRunBadge": "Uruchomienie próbne",
"hostSelector": {
"trigger": "Host wyzwalający",
"host": "Konkretny host",
"fleet": "Flota",
"all": "Wszystkie hosty"
},
"triggerKinds": {
"metric_threshold": "Próg metryki",
"host_status": "Host wstaje lub pada",
"health_check": "Zmiana kontroli stanu",
"schedule": "Zgodnie z harmonogramem",
"docker_event": "Zdarzenie kontenera",
"internal_event": "Zdarzenie Termixa",
"webhook": "Przychodzący webhook"
},
"stepTypes": {
"notify": "Wyślij powiadomienie",
"http": "Wywołaj adres URL",
"run_snippet": "Uruchom snippet",
"run_command": "Uruchom polecenie",
"docker": "Kontroluj kontener",
"tunnel": "Kontroluj tunel",
"wol": "Obudź host",
"wait": "Czekaj",
"set_var": "Ustaw zmienną",
"if": "Jeśli / w przeciwnym razie",
"run_automation": "Uruchom inną automatyzację",
"stop": "Zatrzymaj"
},
"statuses": {
"running": "Działa",
"success": "Powodzenie",
"failed": "Niepowodzenie",
"timeout": "Przekroczono limit czasu",
"skipped": "Pominięto",
"cancelled": "Anulowano"
},
"fields": {
"host": "Host",
"metric": "Metryka",
"mount": "Punkt montowania",
"operator": "Jest",
"value": "Wartość",
"forSeconds": "Utrzymywany przez (sekundy)",
"cooldown": "Czas wyciszenia (minuty)",
"cron": "Wyrażenie cron",
"intervalSeconds": "Co (sekundy)",
"timezone": "Strefa czasowa",
"timezoneServer": "Czas serwera",
"timezoneHint": "Czasy cron są odczytywane w tej strefie. Nie dotyczy harmonogramów interwałowych.",
"container": "Kontener",
"command": "Polecenie",
"url": "Adres URL",
"method": "Metoda",
"body": "Treść",
"channels": "Kanały",
"title": "Tytuł",
"message": "Wiadomość",
"snippet": "Snippet",
"seconds": "Sekundy",
"conditionLeftPlaceholder": "Wartość do sprawdzenia",
"conditionRightPlaceholder": "Porównaj z",
"variableName": "Nazwa zmiennej",
"variableValue": "Wartość",
"elevated": "Uruchom z sudo",
"onError": "Jeśli to się nie powiedzie",
"allowPrivateNetwork": "Zezwalaj na lokalne adresy sieciowe",
"allowPrivateNetworkHint": "Wymagane dla własnej usługi w sieci LAN. Domyślnie wyłączone, aby zapobiec żądaniom do adresów wewnętrznych."
},
"onError": {
"stop": "Zatrzymaj uruchomienie",
"continue": "Kontynuuj"
}
}
}
},
"nav": {
"automations": "Automatyzacje"
},
"onboarding": {
"feature_automations": "Automatyzacje",
"feature_automations_desc": "Uruchamiaj kroki automatycznie, gdy coś się wydarzy, i otrzymuj powiadomienia."
}
}
@@ -0,0 +1,149 @@
{
"newUi": {
"sidebar": {
"automations": {
"title": "Automações",
"tabAutomations": "Automações",
"tabRuns": "Corridas",
"tabChannels": "Canais",
"createAutomation": "Nova Automação",
"backToAutomations": "Voltar para Automações",
"createTitle": "Nova Automação",
"editTitle": "Editar Automação",
"empty": "Ainda não há automações. Crie uma para reagir a uma métrica, a um agendamento ou a um evento.",
"emptyRuns": "Ainda não houve nenhuma corrida.",
"emptyChannels": "Ainda não há canais. Adicione um para enviar notificações para algum lugar.",
"noChannelsHint": "Nenhum canal configurado ainda. Adicione um na aba Canais.",
"addChannel": "Adicionar canal",
"testChannel": "Teste",
"channelTestSent": "Notificação de teste enviada",
"channelTestFailed": "Falha na notificação de teste",
"channelDeleted": "Canal excluído",
"deleteChannelConfirm": "Excluir este canal? As automações que o utilizam deixarão de enviar notificações.",
"nameLabel": "Nome",
"namePlaceholder": "Por exemplo, limpe a pasta /data quando ela estiver cheia.",
"nameRequired": "O nome é obrigatório.",
"descriptionLabel": "Descrição",
"descriptionPlaceholder": "Descrição opcional",
"enabledLabel": "Habilitado",
"concurrencyLabel": "Se já estiver em execução",
"concurrencyHint": "O que fazer quando isso for acionado novamente antes da última execução terminar?",
"concurrency": {
"skip": "Pule a nova corrida",
"queue": "Espere e corra atrás.",
"allow": "Execute ambos simultaneamente"
},
"save": "Salvar",
"created": "Automação criada",
"updated": "Automação economizou",
"deleted": "Automação excluída",
"deleteConfirm": "Excluir esta automação? O histórico de execução dela também será excluído.",
"runNow": "Corra agora",
"testRun": "Teste de execução",
"testRunHint": "Executa cada etapa, mas não toca em nada fora do Termix.",
"runStarted": "A corrida começou.",
"runFinished": "Execução concluída: {{status}}",
"trigger": "Acionar",
"steps": "Passos",
"addStep": "Adicionar etapa",
"removeStep": "Remover etapa",
"moveUp": "Suba",
"moveDown": "Desça",
"noSteps": "Ainda não há etapas. Adicione uma para descrever o que deve acontecer.",
"webhookTokenTitle": "URL do Webhook",
"webhookTokenDescription": "Esta mensagem será exibida apenas uma vez. Salve-a agora, pois não poderá ser recuperada posteriormente.",
"copy": "Cópia",
"copied": "Copiado",
"viewJson": "JSON",
"viewBuilder": "Construtor",
"viewGraph": "Gráfico",
"lastRun": "Última corrida",
"never": "Nunca",
"duration": "{{seconds}}s",
"stepOutput": "Saída",
"stepError": "Erro",
"dryRunBadge": "Teste de execução",
"hostSelector": {
"trigger": "Host que desencadeia o ataque",
"host": "hospedeiro específico",
"fleet": "Frota",
"all": "Todos os anfitriões"
},
"triggerKinds": {
"metric_threshold": "Limiar métrico",
"host_status": "O host sobe ou desce.",
"health_check": "Alterações na verificação de saúde",
"schedule": "De acordo com um cronograma",
"docker_event": "Evento de contêiner",
"internal_event": "Evento Termix",
"webhook": "Webhook de entrada"
},
"stepTypes": {
"notify": "Enviar notificação",
"http": "Chamar um URL",
"run_snippet": "Executar um trecho de código",
"run_command": "Executar um comando",
"docker": "Controle um contêiner",
"tunnel": "Controle um túnel",
"wol": "Acorde um anfitrião",
"wait": "Espere",
"set_var": "Defina uma variável",
"if": "Se/caso contrário",
"run_automation": "Execute outra automação",
"stop": "Parar"
},
"statuses": {
"running": "Correndo",
"success": "Sucesso",
"failed": "Fracassado",
"timeout": "Tempo limite excedido",
"skipped": "Ignorado",
"cancelled": "Cancelado"
},
"fields": {
"host": "Hospedar",
"metric": "Métrica",
"mount": "Ponto de montagem",
"operator": "É",
"value": "Valor",
"forSeconds": "Sustentado por (segundos)",
"cooldown": "Tempo de resfriamento (minutos)",
"cron": "Expressão de Cron",
"intervalSeconds": "A cada (segundos)",
"timezone": "Fuso horário",
"timezoneServer": "Hora do servidor",
"timezoneHint": "Os horários cron são lidos nesta zona. Não se aplica a agendamentos por intervalo.",
"container": "Recipiente",
"command": "Comando",
"url": "URL",
"method": "Método",
"body": "Corpo",
"channels": "Canais",
"title": "Título",
"message": "Mensagem",
"snippet": "Trecho",
"seconds": "Segundos",
"conditionLeftPlaceholder": "Valor a verificar",
"conditionRightPlaceholder": "Compare com",
"variableName": "Nome da variável",
"variableValue": "Valor",
"elevated": "Executar com sudo",
"onError": "Se isso falhar",
"allowPrivateNetwork": "Permitir endereços de rede local",
"allowPrivateNetworkHint": "Necessário para um serviço autohospedado em sua rede local (LAN). Desativado por padrão para evitar solicitações a endereços internos."
},
"onError": {
"stop": "Pare a corrida",
"continue": "Continuar"
}
}
}
},
"nav": {
"automations": "Automações"
},
"onboarding": {
"feature_automations": "Automações",
"feature_automations_desc": "Execute etapas automaticamente quando algo acontecer e receba notificações."
}
}
@@ -0,0 +1,149 @@
{
"newUi": {
"sidebar": {
"automations": {
"title": "Automações",
"tabAutomations": "Automações",
"tabRuns": "Corridas",
"tabChannels": "Canais",
"createAutomation": "Nova Automação",
"backToAutomations": "Voltar para Automações",
"createTitle": "Nova Automação",
"editTitle": "Editar Automação",
"empty": "Ainda não há automatizações. Crie uma para reagir a uma métrica, a um agendamento ou a um evento.",
"emptyRuns": "Ainda não houve qualquer corrida.",
"emptyChannels": "Ainda não há canais. Adicione um para enviar notificações para algum lugar.",
"noChannelsHint": "Nenhum canal configurado ainda. Adicione um no separador Canais.",
"addChannel": "Adicionar canal",
"testChannel": "Teste",
"channelTestSent": "Notificação de teste enviada",
"channelTestFailed": "Falha na notificação de teste",
"channelDeleted": "Canal excluído",
"deleteChannelConfirm": "Apagar este canal? As automatizações que o utilizam deixarão de enviar notificações.",
"nameLabel": "Nome",
"namePlaceholder": "Por exemplo, limpe a pasta /data quando esta estiver cheia.",
"nameRequired": "O nome é obrigatório.",
"descriptionLabel": "Descrição",
"descriptionPlaceholder": "Descrição opcional",
"enabledLabel": "Habilitado",
"concurrencyLabel": "Se já estiver em execução",
"concurrencyHint": "O que fazer quando este for novamente acionado antes da última execução terminar?",
"concurrency": {
"skip": "Salte a nova corrida",
"queue": "Espere e corra atrás.",
"allow": "Execute ambos em simultâneo"
},
"save": "Guardar",
"created": "Automação criada",
"updated": "A automação economizou",
"deleted": "Automação excluída",
"deleteConfirm": "Apagar esta automação? O histórico de execução da mesma também será eliminado.",
"runNow": "Corra agora",
"testRun": "Teste de execução",
"testRunHint": "Executa cada passo, mas não toca em nada fora do Termix.",
"runStarted": "A corrida começou.",
"runFinished": "Execução concluída: {{status}}",
"trigger": "Gatilho",
"steps": "Passos",
"addStep": "Adicionar etapa",
"removeStep": "Remover etapa",
"moveUp": "Suba",
"moveDown": "Desça",
"noSteps": "Ainda não há etapas. Adicione uma para descrever o que deve acontecer.",
"webhookTokenTitle": "URL do Webhook",
"webhookTokenDescription": "Esta mensagem será apresentada apenas uma vez. Guarde-a agora, pois não poderá ser recuperada posteriormente.",
"copy": "Cópia",
"copied": "Copiado",
"viewJson": "JSON",
"viewBuilder": "Construtor",
"viewGraph": "Gráfico",
"lastRun": "Última corrida",
"never": "Nunca",
"duration": "{{seconds}}s",
"stepOutput": "Saída",
"stepError": "Erro",
"dryRunBadge": "Teste de execução",
"hostSelector": {
"trigger": "Host que desencadeia o ataque",
"host": "hospedeiro específico",
"fleet": "Frota",
"all": "Todos os anfitriões"
},
"triggerKinds": {
"metric_threshold": "Limiar métrico",
"host_status": "O host sobe ou desce.",
"health_check": "Alterações na verificação de saúde",
"schedule": "De acordo com um cronograma",
"docker_event": "Evento de contentor",
"internal_event": "Evento Termix",
"webhook": "Webhook de entrada"
},
"stepTypes": {
"notify": "Enviar notificação",
"http": "Chamar um URL",
"run_snippet": "Executar um excerto de código",
"run_command": "Executar um comando",
"docker": "Controle um contentor",
"tunnel": "Controle um túnel",
"wol": "Acorde um anfitrião",
"wait": "Espera",
"set_var": "Defina uma variável",
"if": "Se/caso contrário",
"run_automation": "Execute outra automatização",
"stop": "Parar"
},
"statuses": {
"running": "Corrida",
"success": "Sucesso",
"failed": "Falhou",
"timeout": "Tempo limite excedido",
"skipped": "Ignorado",
"cancelled": "Cancelado"
},
"fields": {
"host": "Anfitrião",
"metric": "Métrica",
"mount": "Ponto de montagem",
"operator": "É",
"value": "Valor",
"forSeconds": "Sustentado por (segundos)",
"cooldown": "Tempo de arrefecimento (minutos)",
"cron": "Expressão de Cron",
"intervalSeconds": "A cada (segundos)",
"timezone": "Fuso horário",
"timezoneServer": "Hora do servidor",
"timezoneHint": "Os tempos cron são lidos nesta zona. Não se aplica a agendamentos por intervalo.",
"container": "Recipiente",
"command": "Comando",
"url": "URL",
"method": "Método",
"body": "Corpo",
"channels": "Canais",
"title": "Título",
"message": "Mensagem",
"snippet": "Trecho",
"seconds": "Segundos",
"conditionLeftPlaceholder": "Valor a verificar",
"conditionRightPlaceholder": "Compare com",
"variableName": "Nome da variável",
"variableValue": "Valor",
"elevated": "Executar com sudo",
"onError": "Se isso falhar",
"allowPrivateNetwork": "Permitir endereços de rede local",
"allowPrivateNetworkHint": "Necessário para um serviço auto-hospedado na sua rede local (LAN). Desativado por defeito para evitar pedidos a endereços internos."
},
"onError": {
"stop": "Pare a corrida",
"continue": "Continuar"
}
}
}
},
"nav": {
"automations": "Automações"
},
"onboarding": {
"feature_automations": "Automações",
"feature_automations_desc": "Execute automaticamente os passos quando algo acontece e receba notificações."
}
}
@@ -0,0 +1,149 @@
{
"newUi": {
"sidebar": {
"automations": {
"title": "Automatizări",
"tabAutomations": "Automatizări",
"tabRuns": "Aleargă",
"tabChannels": "Canale",
"createAutomation": "Automatizare nouă",
"backToAutomations": "Înapoi la Automatizări",
"createTitle": "Automatizare nouă",
"editTitle": "Editare automatizare",
"empty": "Încă nu există automatizări. Creați una pentru a reacționa la o metrică, un program sau un eveniment.",
"emptyRuns": "Nicio alergare încă.",
"emptyChannels": "Încă nu există canale. Adaugă unul pentru a trimite notificări undeva.",
"noChannelsHint": "Încă nu a fost configurat niciun canal. Adăugați unul în fila Canale.",
"addChannel": "Adăugați canal",
"testChannel": "Test",
"channelTestSent": "Notificare de testare trimisă",
"channelTestFailed": "Notificarea de testare a eșuat",
"channelDeleted": "Canalul a fost șters",
"deleteChannelConfirm": "Ștergeți acest canal? Automatizările care îl folosesc vor înceta să mai trimită notificări.",
"nameLabel": "Nume",
"namePlaceholder": "De exemplu, curățați /data când se umple",
"nameRequired": "Numele este obligatoriu",
"descriptionLabel": "Descriere",
"descriptionPlaceholder": "Descriere opțională",
"enabledLabel": "Activat",
"concurrencyLabel": "Dacă deja rulează",
"concurrencyHint": "Ce trebuie făcut când acest lucru este declanșat din nou înainte de finalizarea ultimei rulări.",
"concurrency": {
"skip": "Sari peste noua cursă",
"queue": "Așteaptă și aleargă după",
"allow": "Rulați ambele simultan"
},
"save": "Salva",
"created": "Automatizare creată",
"updated": "Automatizare salvată",
"deleted": "Automatizare ștearsă",
"deleteConfirm": "Ștergeți această automatizare? Și istoricul execuțiilor sale este șters.",
"runNow": "Aleargă acum",
"testRun": "Test de funcționare",
"testRunHint": "Aleargă la fiecare pas, dar nu atinge nimic din afara Termixului.",
"runStarted": "Cursa a început",
"runFinished": "Execuția s-a încheiat: {{status}}",
"trigger": "Declanșator",
"steps": "Pași",
"addStep": "Adăugați un pas",
"removeStep": "Eliminați pasul",
"moveUp": "Mută în sus",
"moveDown": "Mută în jos",
"noSteps": "Încă nu există pași. Adăugați unul pentru a specifica ce ar trebui să se întâmple.",
"webhookTokenTitle": "URL-ul webhook-ului",
"webhookTokenDescription": "Aceasta se afișează o singură dată. Salvați-o acum, nu poate fi recuperată ulterior.",
"copy": "Copie",
"copied": "Copiat",
"viewJson": "JSON",
"viewBuilder": "Constructor",
"viewGraph": "Grafic",
"lastRun": "Ultima alergare",
"never": "Nu",
"duration": "{{seconds}}s",
"stepOutput": "Ieșire",
"stepError": "Eroare",
"dryRunBadge": "Test de funcționare",
"hostSelector": {
"trigger": "Gazdă declanșatoare",
"host": "Gazdă specifică",
"fleet": "Flotă",
"all": "Toate gazdele"
},
"triggerKinds": {
"metric_threshold": "Pragul metric",
"host_status": "Gazda se activează sau se deconectează",
"health_check": "Modificări la verificarea stării de sănătate",
"schedule": "Pe un program",
"docker_event": "Eveniment container",
"internal_event": "Evenimentul Termix",
"webhook": "Webhook de intrare"
},
"stepTypes": {
"notify": "Trimiteți o notificare",
"http": "Apelați o adresă URL",
"run_snippet": "Executați un fragment",
"run_command": "Executați o comandă",
"docker": "Controlează un container",
"tunnel": "Controlează un tunel",
"wol": "Trezește o gazdă",
"wait": "Așteaptă",
"set_var": "Setați o variabilă",
"if": "Dacă / altfel",
"run_automation": "Rulați o altă automatizare",
"stop": "Stop"
},
"statuses": {
"running": "Funcţionare",
"success": "Succes",
"failed": "Eșuat",
"timeout": "Expirat",
"skipped": "Omis",
"cancelled": "Anulat"
},
"fields": {
"host": "Gazdă",
"metric": "Metric",
"mount": "Punct de montare",
"operator": "Este",
"value": "Valoare",
"forSeconds": "Menținut timp de (secunde)",
"cooldown": "Timp de răcire (minute)",
"cron": "Expresie Cron",
"intervalSeconds": "La fiecare (secunde)",
"timezone": "Fus orar",
"timezoneServer": "Ora serverului",
"timezoneHint": "Timpii cron sunt citiți în această zonă. Nu se aplică programărilor cu intervale.",
"container": "Container",
"command": "Comanda",
"url": "URL-ul",
"method": "Metodă",
"body": "Corp",
"channels": "Canale",
"title": "Titlu",
"message": "Mesaj",
"snippet": "Fragment",
"seconds": "Secunde",
"conditionLeftPlaceholder": "Valoare de verificat",
"conditionRightPlaceholder": "Comparați cu",
"variableName": "Nume variabilă",
"variableValue": "Valoare",
"elevated": "Execută cu sudo",
"onError": "Dacă acest lucru eșuează",
"allowPrivateNetwork": "Permiteți adrese de rețea locală",
"allowPrivateNetworkHint": "Necesar pentru un serviciu auto-găzduit în rețeaua locală. Dezactivat în mod implicit pentru a preveni solicitările către adrese interne."
},
"onError": {
"stop": "Oprește alergarea",
"continue": "Continuă"
}
}
}
},
"nav": {
"automations": "Automatizări"
},
"onboarding": {
"feature_automations": "Automatizări",
"feature_automations_desc": "Execută pașii automat când se întâmplă ceva și primește notificări."
}
}
@@ -0,0 +1,149 @@
{
"newUi": {
"sidebar": {
"automations": {
"title": "Автоматизация",
"tabAutomations": "Автоматизация",
"tabRuns": "Беги",
"tabChannels": "Каналы",
"createAutomation": "Новая автоматизация",
"backToAutomations": "Назад к автоматизации",
"createTitle": "Новая автоматизация",
"editTitle": "Редактировать автоматизацию",
"empty": "Автоматизации пока нет. Создайте автоматизацию, которая будет реагировать на показатель, расписание или событие.",
"emptyRuns": "Пока ни одного заезда.",
"emptyChannels": "Каналов пока нет. Добавьте канал, чтобы отправлять уведомления куда-нибудь.",
"noChannelsHint": "Каналы пока не созданы. Добавьте его на вкладке «Каналы».",
"addChannel": "Добавить канал",
"testChannel": "Тест",
"channelTestSent": "Уведомление о тестировании отправлено.",
"channelTestFailed": "Тестовое уведомление не удалось.",
"channelDeleted": "Канал удален",
"deleteChannelConfirm": "Удалить этот канал? Тогда автоматизация, использующая его, перестанет отправлять уведомления.",
"nameLabel": "Имя",
"namePlaceholder": "Например, очищать каталог /data, когда он заполняется.",
"nameRequired": "Имя обязательно для указания.",
"descriptionLabel": "Описание",
"descriptionPlaceholder": "Дополнительное описание",
"enabledLabel": "Включено",
"concurrencyLabel": "Если он уже запущен",
"concurrencyHint": "Что делать, если это снова произойдет до завершения последнего запуска?",
"concurrency": {
"skip": "Пропустите новый запуск",
"queue": "Подожди и беги после",
"allow": "Запустите оба одновременно."
},
"save": "Сохранять",
"created": "Создана автоматизация",
"updated": "Автоматизация спасла",
"deleted": "Автоматизация удалена",
"deleteConfirm": "Удалить эту автоматизацию? История её выполнения также будет удалена.",
"runNow": "Запустите сейчас",
"testRun": "Тестовый запуск",
"testRunHint": "Программа выполняет каждый этап, но не затрагивает ничего за пределами Termix.",
"runStarted": "Запуск начался",
"runFinished": "Выполнение завершено: {{status}}",
"trigger": "Курок",
"steps": "Шаги",
"addStep": "Добавить шаг",
"removeStep": "Удалить шаг",
"moveUp": "Поднимитесь выше",
"moveDown": "Спуститесь вниз",
"noSteps": "Шагов пока нет. Добавьте один, чтобы указать, что должно произойти.",
"webhookTokenTitle": "URL веб-перехватчика",
"webhookTokenDescription": "Эта информация отображается только один раз. Сохраните её сейчас, позже восстановить её будет невозможно.",
"copy": "Копия",
"copied": "Скопировано",
"viewJson": "JSON",
"viewBuilder": "Строитель",
"viewGraph": "График",
"lastRun": "Последний забег",
"never": "Никогда",
"duration": "{{seconds}}с",
"stepOutput": "Выход",
"stepError": "Ошибка",
"dryRunBadge": "Тестовый запуск",
"hostSelector": {
"trigger": "Запуск хоста",
"host": "Конкретный хост",
"fleet": "Флот",
"all": "Все хосты"
},
"triggerKinds": {
"metric_threshold": "Пороговое значение метрики",
"host_status": "Хост переходит в режим повышения или понижения.",
"health_check": "Изменения в результатах медицинского осмотра",
"schedule": "По расписанию",
"docker_event": "Событие контейнера",
"internal_event": "Мероприятие Termix",
"webhook": "Входящий веб-хук"
},
"stepTypes": {
"notify": "Отправить уведомление",
"http": "Вызов URL-адреса",
"run_snippet": "Запустить фрагмент кода",
"run_command": "Выполните команду",
"docker": "Управлять контейнером",
"tunnel": "Контролировать туннель",
"wol": "Разбудить хозяина",
"wait": "Ждать",
"set_var": "Задайте переменную",
"if": "Если / в противном случае",
"run_automation": "Запустите еще одну автоматизацию",
"stop": "Останавливаться"
},
"statuses": {
"running": "Бег",
"success": "Успех",
"failed": "Неуспешный",
"timeout": "Время истекло",
"skipped": "Пропущено",
"cancelled": "Отменено"
},
"fields": {
"host": "Хозяин",
"metric": "Метрика",
"mount": "Маунт-Пойнт",
"operator": "Является",
"value": "Ценить",
"forSeconds": "Длительность (секунды)",
"cooldown": "Время восстановления (минуты)",
"cron": "Выражение Cron",
"intervalSeconds": "Каждые (секунды)",
"timezone": "Часовой пояс",
"timezoneServer": "Время сервера",
"timezoneHint": "В этой зоне считываются временные параметры Cron. Это не относится к интервальным расписаниям.",
"container": "Контейнер",
"command": "Командование",
"url": "URL",
"method": "Метод",
"body": "Тело",
"channels": "Каналы",
"title": "Заголовок",
"message": "Сообщение",
"snippet": "Фрагмент",
"seconds": "Секунды",
"conditionLeftPlaceholder": "Значение для проверки",
"conditionRightPlaceholder": "Сравните с",
"variableName": "Имя переменной",
"variableValue": "Ценить",
"elevated": "Запустить с правами суперпользователя (sudo)",
"onError": "Если это не поможет",
"allowPrivateNetwork": "Разрешить использование локальных сетевых адресов",
"allowPrivateNetworkHint": "Необходим для самостоятельного размещения сервиса в вашей локальной сети. По умолчанию отключен, чтобы предотвратить запросы к внутренним адресам."
},
"onError": {
"stop": "Остановить бег",
"continue": "Продолжать"
}
}
}
},
"nav": {
"automations": "Автоматизация"
},
"onboarding": {
"feature_automations": "Автоматизация",
"feature_automations_desc": "Запускайте шаги автоматически при возникновении событий и получайте уведомления."
}
}
@@ -0,0 +1,149 @@
{
"newUi": {
"sidebar": {
"automations": {
"title": "Аутоматизације",
"tabAutomations": "Аутоматизације",
"tabRuns": "Трчања",
"tabChannels": "Канали",
"createAutomation": "Нова аутоматизација",
"backToAutomations": "Назад на аутоматизацију",
"createTitle": "Нова аутоматизација",
"editTitle": "Уреди аутоматизацију",
"empty": "Још увек нема аутоматизација. Направите једну да бисте реаговали на метрику, распоред или догађај.",
"emptyRuns": "Још нема трчања.",
"emptyChannels": "Још нема канала. Додајте један да бисте слали обавештења негде.",
"noChannelsHint": "Још увек нема подешених канала. Додајте један на картици Канали.",
"addChannel": "Додај канал",
"testChannel": "Тест",
"channelTestSent": "Обавештење о тестирању је послато",
"channelTestFailed": "Обавештење о тестирању није успело",
"channelDeleted": "Канал је обрисан",
"deleteChannelConfirm": "Да ли желите да обришете овај канал? Аутоматизације које га користе ће престати да шаљу обавештења.",
"nameLabel": "Име",
"namePlaceholder": "нпр. Очисти /подаци када се попуне",
"nameRequired": "Име је обавезно",
"descriptionLabel": "Опис",
"descriptionPlaceholder": "Опциони опис",
"enabledLabel": "Омогућено",
"concurrencyLabel": "Ако већ ради",
"concurrencyHint": "Шта урадити када се ово поново покрене пре него што се заврши последње покретање.",
"concurrency": {
"skip": "Прескочи нову вожњу",
"queue": "Чекај и трчи за њим",
"allow": "Покрени оба одједном"
},
"save": "Сачувај",
"created": "Аутоматизација је креирана",
"updated": "Аутоматизација је сачувана",
"deleted": "Аутоматизација је обрисана",
"deleteConfirm": "Да ли желите да обришете ову аутоматизацију? Њена историја покретања је такође обрисана.",
"runNow": "Трчи сада",
"testRun": "Тестирање",
"testRunHint": "Покреће сваки корак, али не додирује ништа изван Термикса.",
"runStarted": "Трчање је започето",
"runFinished": "Трка завршена: {{status}}",
"trigger": "Окидач",
"steps": "Кораци",
"addStep": "Додај корак",
"removeStep": "Уклони корак",
"moveUp": "Помери горе",
"moveDown": "Помери надоле",
"noSteps": "Још нема корака. Додајте један да бисте рекли шта треба да се деси.",
"webhookTokenTitle": "URL вебхука",
"webhookTokenDescription": "Ово се приказује једном. Сачувајте то сада, не можете то касније преузети.",
"copy": "Копија",
"copied": "Копирано",
"viewJson": "JSON",
"viewBuilder": "Градитељ",
"viewGraph": "График",
"lastRun": "Последње трчање",
"never": "Никад",
"duration": "{{seconds}}с",
"stepOutput": "Излаз",
"stepError": "Грешка",
"dryRunBadge": "Тестирање",
"hostSelector": {
"trigger": "Покретач хоста",
"host": "Одређени домаћин",
"fleet": "Флота",
"all": "Сви домаћини"
},
"triggerKinds": {
"metric_threshold": "Праг метрике",
"host_status": "Домаћин иде горе или доле",
"health_check": "Промене у провери исправности",
"schedule": "По распореду",
"docker_event": "Догађај контејнера",
"internal_event": "Термикс догађај",
"webhook": "Долазни вебхук"
},
"stepTypes": {
"notify": "Пошаљи обавештење",
"http": "Позовите URL",
"run_snippet": "Покрени исечак",
"run_command": "Покрените команду",
"docker": "Контролишите контејнер",
"tunnel": "Контролишите тунел",
"wol": "Пробудите домаћина",
"wait": "Чекај",
"set_var": "Поставите променљиву",
"if": "Ако / иначе",
"run_automation": "Покрените још једну аутоматизацију",
"stop": "Заустави"
},
"statuses": {
"running": "Трчање",
"success": "Успех",
"failed": "Неуспешно",
"timeout": "Временско ограничење је истекло",
"skipped": "Прескочено",
"cancelled": "Отказано"
},
"fields": {
"host": "Домаћин",
"metric": "Метрика",
"mount": "Тачка монтирања",
"operator": "Је",
"value": "Вредност",
"forSeconds": "Задржано (секунде)",
"cooldown": "Хлађење (минути)",
"cron": "Cron израз",
"intervalSeconds": "Сваких (секунде)",
"timezone": "Временска зона",
"timezoneServer": "Време сервера",
"timezoneHint": "Cron времена се очитавају у овој зони. Не односи се на интервалне распореде.",
"container": "Контејнер",
"command": "Команда",
"url": "URL",
"method": "Метод",
"body": "Тело",
"channels": "Канали",
"title": "Наслов",
"message": "Порука",
"snippet": "Исечак",
"seconds": "Секунде",
"conditionLeftPlaceholder": "Вредност за проверу",
"conditionRightPlaceholder": "Упореди са",
"variableName": "Назив променљиве",
"variableValue": "Вредност",
"elevated": "Покрени са sudo-ом",
"onError": "Ако ово не успе",
"allowPrivateNetwork": "Дозволи локалне мрежне адресе",
"allowPrivateNetworkHint": "Потребно за самостално хостовану услугу на вашој локалној мрежи. Подразумевано искључено да би се спречили захтеви ка интерним адресама."
},
"onError": {
"stop": "Заустави трчање",
"continue": "Настави"
}
}
}
},
"nav": {
"automations": "Аутоматизације"
},
"onboarding": {
"feature_automations": "Аутоматизације",
"feature_automations_desc": "Аутоматски покрените кораке када се нешто деси и добијте обавештења."
}
}
@@ -0,0 +1,149 @@
{
"newUi": {
"sidebar": {
"automations": {
"title": "Automatiseringar",
"tabAutomations": "Automatiseringar",
"tabRuns": "Löpningar",
"tabChannels": "Kanaler",
"createAutomation": "Ny automatisering",
"backToAutomations": "Tillbaka till Automatiseringar",
"createTitle": "Ny automatisering",
"editTitle": "Redigera automatisering",
"empty": "Inga automatiseringar ännu. Skapa en för att reagera på ett mätvärde, ett schema eller en händelse.",
"emptyRuns": "Inga löpningar än.",
"emptyChannels": "Inga kanaler ännu. Lägg till en för att skicka aviseringar någonstans.",
"noChannelsHint": "Inga kanaler är konfigurerade än. Lägg till en på fliken Kanaler.",
"addChannel": "Lägg till kanal",
"testChannel": "Testa",
"channelTestSent": "Testmeddelande skickat",
"channelTestFailed": "Testmeddelandet misslyckades",
"channelDeleted": "Kanalen raderad",
"deleteChannelConfirm": "Vill du ta bort den här kanalen? Automatiseringar som använder den kommer att sluta skicka aviseringar.",
"nameLabel": "Namn",
"namePlaceholder": "t.ex. Rensa upp /data när den fylls",
"nameRequired": "Namn krävs",
"descriptionLabel": "Beskrivning",
"descriptionPlaceholder": "Valfri beskrivning",
"enabledLabel": "Aktiverad",
"concurrencyLabel": "Om den redan är igång",
"concurrencyHint": "Vad man ska göra när detta utlöses igen innan den sista körningen är klar.",
"concurrency": {
"skip": "Hoppa över den nya körningen",
"queue": "Vänta och spring efter",
"allow": "Kör båda samtidigt"
},
"save": "Spara",
"created": "Automatisering skapad",
"updated": "Automatisering sparad",
"deleted": "Automatisering borttagen",
"deleteConfirm": "Vill du ta bort den här automatiseringen? Dess körhistorik raderas också.",
"runNow": "Kör nu",
"testRun": "Testkörning",
"testRunHint": "Kör varje steg men rör ingenting utanför Termix.",
"runStarted": "Löpningen har startat",
"runFinished": "Körning avslutad: {{status}}",
"trigger": "Utlösare",
"steps": "Steg",
"addStep": "Lägg till steg",
"removeStep": "Ta bort steg",
"moveUp": "Flytta upp",
"moveDown": "Flytta nedåt",
"noSteps": "Inga steg ännu. Lägg till ett för att ange vad som ska hända.",
"webhookTokenTitle": "Webhook-URL",
"webhookTokenDescription": "Detta visas en gång. Spara det nu, det kan inte hämtas senare.",
"copy": "Kopiera",
"copied": "Kopierad",
"viewJson": "JSON",
"viewBuilder": "Byggmästare",
"viewGraph": "Graf",
"lastRun": "Sista körningen",
"never": "Aldrig",
"duration": "{{seconds}}s",
"stepOutput": "Produktion",
"stepError": "Fel",
"dryRunBadge": "Testkörning",
"hostSelector": {
"trigger": "Utlösande värd",
"host": "Specifik värd",
"fleet": "Flotta",
"all": "Alla värdar"
},
"triggerKinds": {
"metric_threshold": "Metrisk tröskelvärde",
"host_status": "Värden går upp eller ner",
"health_check": "Ändringar i hälsokontrollen",
"schedule": "Enligt ett schema",
"docker_event": "Containerhändelse",
"internal_event": "Termix-evenemang",
"webhook": "Inkommande webhook"
},
"stepTypes": {
"notify": "Skicka en avisering",
"http": "Anropa en URL",
"run_snippet": "Kör ett utdrag",
"run_command": "Kör ett kommando",
"docker": "Styr en container",
"tunnel": "Kontrollera en tunnel",
"wol": "Väck en värd",
"wait": "Vänta",
"set_var": "Ställ in en variabel",
"if": "Om / annars",
"run_automation": "Kör en annan automatisering",
"stop": "Stopp"
},
"statuses": {
"running": "Spring",
"success": "Framgång",
"failed": "Misslyckades",
"timeout": "Timeout",
"skipped": "Hoppade över",
"cancelled": "Avbruten"
},
"fields": {
"host": "Värd",
"metric": "Metrisk",
"mount": "Monteringspunkt",
"operator": "Är",
"value": "Värde",
"forSeconds": "Uthållen i (sekunder)",
"cooldown": "Nedkylningstid (minuter)",
"cron": "Cron-uttryck",
"intervalSeconds": "Varje (sekund)",
"timezone": "Tidszon",
"timezoneServer": "Servertid",
"timezoneHint": "Cron-tider läses i denna zon. Gäller inte för intervallscheman.",
"container": "Behållare",
"command": "Kommando",
"url": "URL",
"method": "Metod",
"body": "Kropp",
"channels": "Kanaler",
"title": "Titel",
"message": "Meddelande",
"snippet": "Utdrag",
"seconds": "Sekunder",
"conditionLeftPlaceholder": "Värde att kontrollera",
"conditionRightPlaceholder": "Jämför mot",
"variableName": "Variabelnamn",
"variableValue": "Värde",
"elevated": "Kör med sudo",
"onError": "Om detta misslyckas",
"allowPrivateNetwork": "Tillåt lokala nätverksadresser",
"allowPrivateNetworkHint": "Behövs för en självhostad tjänst på ditt lokala nätverk. Avstängt som standard för att förhindra förfrågningar till interna adresser."
},
"onError": {
"stop": "Stoppa löpningen",
"continue": "Fortsätta"
}
}
}
},
"nav": {
"automations": "Automatiseringar"
},
"onboarding": {
"feature_automations": "Automatiseringar",
"feature_automations_desc": "Kör steg automatiskt när något händer och få aviseringar."
}
}
@@ -0,0 +1,149 @@
{
"newUi": {
"sidebar": {
"automations": {
"title": "ระบบอัตโนมัติ",
"tabAutomations": "ระบบอัตโนมัติ",
"tabRuns": "วิ่ง",
"tabChannels": "ช่องต่างๆ",
"createAutomation": "ระบบอัตโนมัติใหม่",
"backToAutomations": "กลับสู่ระบบอัตโนมัติ",
"createTitle": "ระบบอัตโนมัติใหม่",
"editTitle": "แก้ไขอัตโนมัติ",
"empty": "ยังไม่มีระบบอัตโนมัติใดๆ สร้างระบบอัตโนมัติเพื่อตอบสนองต่อตัวชี้วัด กำหนดการ หรือเหตุการณ์ต่างๆ",
"emptyRuns": "ยังไม่มีการทดลองใดๆ เกิดขึ้น",
"emptyChannels": "ยังไม่มีช่องทางการแจ้งเตือน เพิ่มช่องทางเพื่อส่งการแจ้งเตือนไปยังที่ใดที่หนึ่ง",
"noChannelsHint": "ยังไม่ได้ตั้งค่าช่องใดๆ เพิ่มช่องในแท็บช่องได้เลย",
"addChannel": "เพิ่มช่องทาง",
"testChannel": "ทดสอบ",
"channelTestSent": "ส่งการแจ้งเตือนการทดสอบแล้ว",
"channelTestFailed": "การแจ้งเตือนการทดสอบล้มเหลว",
"channelDeleted": "ช่องถูกลบแล้ว",
"deleteChannelConfirm": "ลบช่องทางนี้? ระบบอัตโนมัติที่ใช้ช่องทางนี้จะหยุดแจ้งเตือน",
"nameLabel": "ชื่อ",
"namePlaceholder": "เช่น ล้างข้อมูลใน /data เมื่อเต็ม",
"nameRequired": "ต้องระบุชื่อ",
"descriptionLabel": "คำอธิบาย",
"descriptionPlaceholder": "คำอธิบายเพิ่มเติม (ไม่บังคับ)",
"enabledLabel": "เปิดใช้งาน",
"concurrencyLabel": "หากกำลังทำงานอยู่แล้ว",
"concurrencyHint": "ควรทำอย่างไรเมื่อเหตุการณ์นี้เกิดขึ้นอีกครั้งก่อนที่การทำงานครั้งสุดท้ายจะเสร็จสิ้น",
"concurrency": {
"skip": "ข้ามการวิ่งรอบใหม่ไป",
"queue": "รอและวิ่งตาม",
"allow": "เรียกใช้ทั้งสองอย่างพร้อมกัน"
},
"save": "บันทึก",
"created": "ระบบอัตโนมัติสร้างขึ้น",
"updated": "ระบบอัตโนมัติได้รับการบันทึกแล้ว",
"deleted": "ระบบอัตโนมัติลบแล้ว",
"deleteConfirm": "ลบระบบอัตโนมัตินี้แล้วใช่ไหม? ประวัติการทำงานของมันก็จะถูกลบไปด้วย",
"runNow": "วิ่งเลยตอนนี้",
"testRun": "การทดสอบการทำงาน",
"testRunHint": "ทำงานทุกขั้นตอน แต่ไม่แตะต้องสิ่งใดนอกเหนือจาก Termix",
"runStarted": "การวิ่งเริ่มต้นขึ้นแล้ว",
"runFinished": "การทำงานเสร็จสิ้น: {{status}}",
"trigger": "สิ่งกระตุ้น",
"steps": "ขั้นตอน",
"addStep": "เพิ่มขั้นตอน",
"removeStep": "ลบขั้นตอน",
"moveUp": "เลื่อนขึ้น",
"moveDown": "เลื่อนลง",
"noSteps": "ยังไม่มีขั้นตอนใดๆ เพิ่มขั้นตอนเพื่ออธิบายว่าควรเกิดอะไรขึ้น",
"webhookTokenTitle": "URL ของเว็บฮุค",
"webhookTokenDescription": "แสดงเพียงครั้งเดียว บันทึกตอนนี้ ไม่สามารถเรียกดูซ้ำได้ในภายหลัง",
"copy": "สำเนา",
"copied": "คัดลอกแล้ว",
"viewJson": "เจซอน",
"viewBuilder": "ผู้สร้าง",
"viewGraph": "กราฟ",
"lastRun": "การวิ่งครั้งสุดท้าย",
"never": "ไม่เคย",
"duration": "{{seconds}}s",
"stepOutput": "เอาต์พุต",
"stepError": "ข้อผิดพลาด",
"dryRunBadge": "การทดสอบการทำงาน",
"hostSelector": {
"trigger": "โฮสต์ทริกเกอร์",
"host": "โฮสต์เฉพาะ",
"fleet": "กองเรือ",
"all": "โฮสต์ทั้งหมด"
},
"triggerKinds": {
"metric_threshold": "เกณฑ์เมตริก",
"host_status": "โฮสต์ขึ้นหรือลง",
"health_check": "การเปลี่ยนแปลงการตรวจสุขภาพ",
"schedule": "ตามกำหนดเวลา",
"docker_event": "เหตุการณ์คอนเทนเนอร์",
"internal_event": "กิจกรรมเทอร์มิกซ์",
"webhook": "เว็บฮุคขาเข้า"
},
"stepTypes": {
"notify": "ส่งการแจ้งเตือน",
"http": "เรียกใช้ URL",
"run_snippet": "เรียกใช้โค้ดตัวอย่าง",
"run_command": "เรียกใช้คำสั่ง",
"docker": "ควบคุมตู้คอนเทนเนอร์",
"tunnel": "ควบคุมอุโมงค์",
"wol": "ปลุกโฮสต์",
"wait": "รอ",
"set_var": "ตั้งค่าตัวแปร",
"if": "ถ้า / มิฉะนั้น",
"run_automation": "เรียกใช้ระบบอัตโนมัติอีกครั้ง",
"stop": "หยุด"
},
"statuses": {
"running": "วิ่ง",
"success": "ความสำเร็จ",
"failed": "ล้มเหลว",
"timeout": "หมดเวลา",
"skipped": "ข้ามไป",
"cancelled": "ยกเลิก"
},
"fields": {
"host": "เจ้าภาพ",
"metric": "เมตริก",
"mount": "จุดยึด",
"operator": "เป็น",
"value": "ค่า",
"forSeconds": "ต่อเนื่องเป็นเวลา (วินาที)",
"cooldown": "ระยะเวลาคูลดาวน์ (นาที)",
"cron": "การแสดงออกของ Cron",
"intervalSeconds": "ทุกๆ (วินาที)",
"timezone": "เขตเวลา",
"timezoneServer": "เวลาเซิร์ฟเวอร์",
"timezoneHint": "เวลาของ Cron จะอ่านได้ในโซนนี้ ไม่สามารถใช้ได้กับตารางเวลาแบบช่วงเวลา",
"container": "คอนเทนเนอร์",
"command": "สั่งการ",
"url": "URL",
"method": "วิธี",
"body": "ร่างกาย",
"channels": "ช่องต่างๆ",
"title": "ชื่อ",
"message": "ข้อความ",
"snippet": "ส่วนหนึ่ง",
"seconds": "วินาที",
"conditionLeftPlaceholder": "ค่าที่ต้องตรวจสอบ",
"conditionRightPlaceholder": "เปรียบเทียบกับ",
"variableName": "ชื่อตัวแปร",
"variableValue": "ค่า",
"elevated": "เรียกใช้ด้วยคำสั่ง sudo",
"onError": "หากวิธีนี้ล้มเหลว",
"allowPrivateNetwork": "อนุญาตให้ใช้ที่อยู่เครือข่ายท้องถิ่น",
"allowPrivateNetworkHint": "จำเป็นสำหรับบริการที่โฮสต์เองบนเครือข่าย LAN ของคุณ โดยค่าเริ่มต้นจะปิดใช้งานเพื่อป้องกันการร้องขอไปยังที่อยู่ภายใน"
},
"onError": {
"stop": "หยุดการวิ่ง",
"continue": "ดำเนินการต่อไป"
}
}
}
},
"nav": {
"automations": "ระบบอัตโนมัติ"
},
"onboarding": {
"feature_automations": "ระบบอัตโนมัติ",
"feature_automations_desc": "ดำเนินการตามขั้นตอนโดยอัตโนมัติเมื่อเกิดเหตุการณ์ใดๆ และรับการแจ้งเตือน"
}
}
@@ -0,0 +1,149 @@
{
"newUi": {
"sidebar": {
"automations": {
"title": "Otomasyonlar",
"tabAutomations": "Otomasyonlar",
"tabRuns": "Koşular",
"tabChannels": "Kanallar",
"createAutomation": "Yeni Otomasyon",
"backToAutomations": "Otomasyonlara geri dön",
"createTitle": "Yeni Otomasyon",
"editTitle": "Düzenleme Otomasyonu",
"empty": "Henüz otomasyon yok. Bir ölçüme, bir programa veya bir olaya tepki verecek bir otomasyon oluşturun.",
"emptyRuns": "Henüz hiçbir deneme yapılmadı.",
"emptyChannels": "Henüz kanal yok. Bildirim göndermek için bir kanal ekleyin.",
"noChannelsHint": "Henüz hiçbir kanal ayarlanmadı. Kanallar sekmesinden bir kanal ekleyin.",
"addChannel": "Kanal Ekle",
"testChannel": "Test",
"channelTestSent": "Test bildirimi gönderildi",
"channelTestFailed": "Test bildirimi başarısız oldu.",
"channelDeleted": "Kanal silindi",
"deleteChannelConfirm": "Bu kanalı silmek ister misiniz? Bu kanalı kullanan otomasyonlar bildirim göndermeyi durduracaktır.",
"nameLabel": "İsim",
"namePlaceholder": "Örneğin, /data klasörü dolduğunda temizle.",
"nameRequired": "İsim zorunludur.",
"descriptionLabel": "Tanım",
"descriptionPlaceholder": "İsteğe bağlı açıklama",
"enabledLabel": "Etkinleştirilmiş",
"concurrencyLabel": "Eğer zaten çalışıyorsa",
"concurrencyHint": "Son çalıştırma tamamlanmadan önce bu durum tekrar tetiklendiğinde ne yapılmalı?",
"concurrency": {
"skip": "Yeni sürümü atla",
"queue": "Bekle ve sonra koş",
"allow": "İkisini birden çalıştırın"
},
"save": "Kaydetmek",
"created": "Otomasyon oluşturuldu",
"updated": "Otomasyon kaydedildi",
"deleted": "Otomasyon silindi",
"deleteConfirm": "Bu otomasyonu silerseniz, çalıştırma geçmişi de silinir.",
"runNow": "Şimdi çalıştır",
"testRun": "Test çalıştırması",
"testRunHint": "Her adımı çalıştırır ancak Termix dışındaki hiçbir şeye dokunmaz.",
"runStarted": "Koşu başladı",
"runFinished": "Çalıştırma tamamlandı: {{status}}",
"trigger": "Tetiklemek",
"steps": "Adımlar",
"addStep": "Adım ekle",
"removeStep": "Adımı kaldır",
"moveUp": "Yukarı çık",
"moveDown": "Aşağıya doğru hareket edin",
"noSteps": "Henüz hiçbir adım yok. Ne olması gerektiğini belirtmek için bir adım ekleyin.",
"webhookTokenTitle": "Webhook URL",
"webhookTokenDescription": "Bu yalnızca bir kez gösterilecektir. Şimdi kaydedin, daha sonra geri alınamaz.",
"copy": "Kopyala",
"copied": "Kopyalandı",
"viewJson": "JSON",
"viewBuilder": "İnşaatçı",
"viewGraph": "Grafik",
"lastRun": "Son koşu",
"never": "Asla",
"duration": "{{seconds}}s",
"stepOutput": "Çıktı",
"stepError": "Hata",
"dryRunBadge": "Test çalıştırması",
"hostSelector": {
"trigger": "Tetikleyici sunucu",
"host": "Belirli ev sahibi",
"fleet": "Filo",
"all": "Tüm ev sahipleri"
},
"triggerKinds": {
"metric_threshold": "Metrik eşik",
"host_status": "Sunucu yukarı veya aşağı hareket eder.",
"health_check": "Sağlık kontrolü değişiklikleri",
"schedule": "Bir programa göre",
"docker_event": "Konteyner olayı",
"internal_event": "Termix etkinliği",
"webhook": "Gelen web kancası"
},
"stepTypes": {
"notify": "Bildirim gönder",
"http": "Bir URL'yi çağırın",
"run_snippet": "Bir kod parçası çalıştırın.",
"run_command": "Bir komut çalıştır",
"docker": "Bir konteyneri kontrol edin.",
"tunnel": "Bir tüneli kontrol edin.",
"wol": "Bir ev sahibini uyandırın",
"wait": "Beklemek",
"set_var": "Bir değişken tanımlayın",
"if": "Eğer / aksi takdirde",
"run_automation": "Başka bir otomasyon çalıştırın",
"stop": "Durmak"
},
"statuses": {
"running": "Koşma",
"success": "Başarı",
"failed": "Arızalı",
"timeout": "Süre doldu",
"skipped": "Atlandı",
"cancelled": "İptal edildi"
},
"fields": {
"host": "Ev sahibi",
"metric": "Metrik",
"mount": "Montaj noktası",
"operator": "O",
"value": "Değer",
"forSeconds": "(Saniye) süreyle sürdürüldü",
"cooldown": "Soğuma süresi (dakika)",
"cron": "Cron ifadesi",
"intervalSeconds": "Her (saniye)",
"timezone": "Saat dilimi",
"timezoneServer": "Sunucu zamanı",
"timezoneHint": "Cron zamanlama ayarları bu bölgede okunur. Aralıklı zamanlamalar için geçerli değildir.",
"container": "Konteyner",
"command": "Emretmek",
"url": "URL",
"method": "Yöntem",
"body": "Vücut",
"channels": "Kanallar",
"title": "Başlık",
"message": "Mesaj",
"snippet": "Alıntı",
"seconds": "Saniyeler",
"conditionLeftPlaceholder": "Kontrol edilecek değer",
"conditionRightPlaceholder": "Karşılaştırın",
"variableName": "Değişken adı",
"variableValue": "Değer",
"elevated": "sudo ile çalıştır",
"onError": "Eğer bu başarısız olursa",
"allowPrivateNetwork": "Yerel ağ adreslerine izin verin.",
"allowPrivateNetworkHint": "Yerel ağınızda kendi sunucunuzda barındırdığınız bir hizmet için gereklidir. Dahili adreslere yapılan istekleri engellemek için varsayılan olarak kapalıdır."
},
"onError": {
"stop": "Koşuyu durdurun",
"continue": "Devam edin"
}
}
}
},
"nav": {
"automations": "Otomasyonlar"
},
"onboarding": {
"feature_automations": "Otomasyonlar",
"feature_automations_desc": "Bir şey olduğunda adımları otomatik olarak çalıştırın ve bildirim alın."
}
}
@@ -0,0 +1,149 @@
{
"newUi": {
"sidebar": {
"automations": {
"title": "Автоматизація",
"tabAutomations": "Автоматизація",
"tabRuns": "Пробіжки",
"tabChannels": "Канали",
"createAutomation": "Нова автоматизація",
"backToAutomations": "Назад до автоматизації",
"createTitle": "Нова автоматизація",
"editTitle": "Редагувати автоматизацію",
"empty": "Автоматизації поки що немає. Створіть її, щоб реагувати на метрику, розклад або подію.",
"emptyRuns": "Поки що жодних пробіжок.",
"emptyChannels": "Поки що немає каналів. Додайте один, щоб надсилати сповіщення кудись.",
"noChannelsHint": "Канали ще не налаштовано. Додайте його на вкладці «Канали».",
"addChannel": "Додати канал",
"testChannel": "Тест",
"channelTestSent": "Тестове сповіщення надіслано",
"channelTestFailed": "Не вдалося виконати тестове сповіщення",
"channelDeleted": "Канал видалено",
"deleteChannelConfirm": "Видалити цей канал? Автоматизації, що його використовують, перестануть надсилати сповіщення.",
"nameLabel": "Ім'я",
"namePlaceholder": "наприклад, Очищати /дані, коли вони заповнюються",
"nameRequired": "Ім'я обов'язкове",
"descriptionLabel": "Опис",
"descriptionPlaceholder": "Додатковий опис",
"enabledLabel": "Увімкнено",
"concurrencyLabel": "Якщо воно вже працює",
"concurrencyHint": "Що робити, якщо це спрацьовує знову до завершення останнього запуску.",
"concurrency": {
"skip": "Пропустити новий пробіг",
"queue": "Чекай і біжіть за ним",
"allow": "Запустіть обидва одночасно"
},
"save": "Зберегти",
"created": "Автоматизація створена",
"updated": "Автоматизація збережена",
"deleted": "Автоматизацію видалено",
"deleteConfirm": "Видалити цю автоматизацію? Історія її запуску також видаляється.",
"runNow": "Біжи зараз",
"testRun": "Тестовий запуск",
"testRunHint": "Виконує кожен крок, але не торкається нічого поза Termix.",
"runStarted": "Біг розпочато",
"runFinished": "Виконання завершено: {{status}}",
"trigger": "Тригер",
"steps": "Кроки",
"addStep": "Додати крок",
"removeStep": "Видалити крок",
"moveUp": "Перемістити вгору",
"moveDown": "Перемістити вниз",
"noSteps": "Кроків поки що немає. Додайте один, щоб пояснити, що має статися.",
"webhookTokenTitle": "URL-адреса вебхука",
"webhookTokenDescription": "Це відображається один раз. Збережіть це зараз, пізніше це неможливо буде отримати.",
"copy": "Копіювати",
"copied": "Скопійовано",
"viewJson": "JSON",
"viewBuilder": "Будівельник",
"viewGraph": "Графік",
"lastRun": "Останній запуск",
"never": "Ніколи",
"duration": "{{seconds}}с",
"stepOutput": "Вихід",
"stepError": "Помилка",
"dryRunBadge": "Тестовий запуск",
"hostSelector": {
"trigger": "Хост-тригер",
"host": "Конкретний хост",
"fleet": "Флот",
"all": "Усі хости"
},
"triggerKinds": {
"metric_threshold": "Поріг показника",
"host_status": "Хост піднімається або опускається",
"health_check": "Зміни в перевірці стану здоров'я",
"schedule": "За розкладом",
"docker_event": "Подія контейнера",
"internal_event": "Подія Termix",
"webhook": "Вхідний вебхук"
},
"stepTypes": {
"notify": "Надіслати сповіщення",
"http": "Виклик URL-адреси",
"run_snippet": "Виконати фрагмент коду",
"run_command": "Виконайте команду",
"docker": "Керування контейнером",
"tunnel": "Контролюйте тунель",
"wol": "Розбудити господаря",
"wait": "Зачекайте",
"set_var": "Встановити змінну",
"if": "Якщо / інакше",
"run_automation": "Запустіть ще одну автоматизацію",
"stop": "СТІЙ"
},
"statuses": {
"running": "Біг",
"success": "Успіх",
"failed": "Не вдалося",
"timeout": "Час очікування минув",
"skipped": "Пропущено",
"cancelled": "Скасовано"
},
"fields": {
"host": "Хост",
"metric": "Метрика",
"mount": "Точка монтування",
"operator": "Є",
"value": "Значення",
"forSeconds": "Триває протягом (секунд)",
"cooldown": "Охолодження (хвилини)",
"cron": "Cron-вираз",
"intervalSeconds": "Кожні (секунди)",
"timezone": "Часовий пояс",
"timezoneServer": "Час сервера",
"timezoneHint": "Час Cron зчитується в цій зоні. Не стосується інтервальних розкладів.",
"container": "Контейнер",
"command": "Команда",
"url": "URL-адреса",
"method": "Метод",
"body": "Тіло",
"channels": "Канали",
"title": "Назва",
"message": "Повідомлення",
"snippet": "Фрагмент",
"seconds": "Секунди",
"conditionLeftPlaceholder": "Значення для перевірки",
"conditionRightPlaceholder": "Порівняйте з",
"variableName": "Ім'я змінної",
"variableValue": "Значення",
"elevated": "Запустити за допомогою sudo",
"onError": "Якщо це не вдасться",
"allowPrivateNetwork": "Дозволити адреси локальної мережі",
"allowPrivateNetworkHint": "Потрібно для самостійно розміщеної служби у вашій локальній мережі. Вимкнено за замовчуванням, щоб запобігти запитам до внутрішніх адрес."
},
"onError": {
"stop": "Зупинити біг",
"continue": "Продовжуйте"
}
}
}
},
"nav": {
"automations": "Автоматизація"
},
"onboarding": {
"feature_automations": "Автоматизація",
"feature_automations_desc": "Автоматично виконувати кроки, коли щось відбувається, та отримувати сповіщення."
}
}
@@ -0,0 +1,149 @@
{
"newUi": {
"sidebar": {
"automations": {
"title": "Tự động hóa",
"tabAutomations": "Tự động hóa",
"tabRuns": "Chạy",
"tabChannels": "Kênh",
"createAutomation": "Tự động hóa mới",
"backToAutomations": "Quay lại phần Tự động hóa",
"createTitle": "Tự động hóa mới",
"editTitle": "Tự động chỉnh sửa",
"empty": "Hiện chưa có tính năng tự động hóa nào. Hãy tạo một tính năng để phản ứng với một chỉ số, lịch trình hoặc sự kiện nào đó.",
"emptyRuns": "Chưa có lượt chạy nào.",
"emptyChannels": "Chưa có kênh nào. Thêm một kênh để gửi thông báo đến đâu đó.",
"noChannelsHint": "Chưa có kênh nào được thiết lập. Thêm một kênh trong tab Kênh.",
"addChannel": "Thêm kênh",
"testChannel": "Bài kiểm tra",
"channelTestSent": "Thông báo kiểm tra đã được gửi",
"channelTestFailed": "Thông báo kiểm tra thất bại",
"channelDeleted": "Kênh đã bị xóa",
"deleteChannelConfirm": "Xóa kênh này? Các tự động hóa sử dụng kênh này sẽ ngừng gửi thông báo.",
"nameLabel": "Tên",
"namePlaceholder": "Ví dụ: Dọn dẹp thư mục /data khi nó đầy.",
"nameRequired": "Tên là bắt buộc",
"descriptionLabel": "Sự miêu tả",
"descriptionPlaceholder": "Mô tả tùy chọn",
"enabledLabel": "Đã bật",
"concurrencyLabel": "Nếu nó đang chạy",
"concurrencyHint": "Phải làm gì khi sự cố này xảy ra lần nữa trước khi quá trình chạy cuối cùng hoàn tất?",
"concurrency": {
"skip": "Bỏ qua lần chạy mới",
"queue": "Chờ đợi và chạy theo",
"allow": "Chạy cả hai cùng một lúc"
},
"save": "Cứu",
"created": "Tự động hóa được tạo",
"updated": "Tự động hóa đã được lưu",
"deleted": "Tự động hóa đã bị xóa",
"deleteConfirm": "Xóa tự động hóa này? Lịch sử chạy của nó cũng bị xóa.",
"runNow": "Chạy ngay",
"testRun": "Chạy thử nghiệm",
"testRunHint": "Nó chạy theo từng bước nhưng không chạm vào bất cứ thứ gì bên ngoài Termix.",
"runStarted": "Chạy bắt đầu",
"runFinished": "Quá trình chạy đã hoàn tất: {{status}}",
"trigger": "Cò súng",
"steps": "Các bước",
"addStep": "Thêm bước",
"removeStep": "Xóa bước",
"moveUp": "Tiến lên",
"moveDown": "Di chuyển xuống",
"noSteps": "Chưa có bước nào. Hãy thêm một bước để mô tả những gì cần xảy ra.",
"webhookTokenTitle": "URL Webhook",
"webhookTokenDescription": "Thông tin này chỉ hiển thị một lần. Hãy lưu lại ngay, bạn sẽ không thể khôi phục lại sau này.",
"copy": "Sao chép",
"copied": "Đã sao chép",
"viewJson": "JSON",
"viewBuilder": "Nhà xây dựng",
"viewGraph": "Đồ thị",
"lastRun": "Lần chạy cuối",
"never": "Không bao giờ",
"duration": "{{seconds}}s",
"stepOutput": "Đầu ra",
"stepError": "Lỗi",
"dryRunBadge": "Chạy thử nghiệm",
"hostSelector": {
"trigger": "Máy chủ kích hoạt",
"host": "Máy chủ cụ thể",
"fleet": "Hạm đội",
"all": "Tất cả người chủ trì"
},
"triggerKinds": {
"metric_threshold": "Ngưỡng số liệu",
"host_status": "Máy chủ tăng hoặc giảm",
"health_check": "Thay đổi trong kiểm tra sức khỏe",
"schedule": "Theo lịch trình",
"docker_event": "Sự kiện container",
"internal_event": "Sự kiện Termix",
"webhook": "Webhook đến"
},
"stepTypes": {
"notify": "Gửi thông báo",
"http": "Gọi một URL",
"run_snippet": "Chạy một đoạn mã",
"run_command": "Chạy một lệnh",
"docker": "Kiểm soát một container",
"tunnel": "Kiểm soát đường hầm",
"wol": "Đánh thức một chủ nhà",
"wait": "Chờ đợi",
"set_var": "Đặt một biến",
"if": "Nếu/ngược lại",
"run_automation": "Chạy một quy trình tự động hóa khác",
"stop": "Dừng lại"
},
"statuses": {
"running": "Đang chạy",
"success": "Thành công",
"failed": "Thất bại",
"timeout": "Hết thời gian",
"skipped": "Bỏ qua",
"cancelled": "Đã hủy"
},
"fields": {
"host": "Chủ nhà",
"metric": "Số liệu",
"mount": "Điểm gắn kết",
"operator": "Là",
"value": "Giá trị",
"forSeconds": "Duy trì trong (giây)",
"cooldown": "Thời gian hồi chiêu (phút)",
"cron": "Biểu thức Cron",
"intervalSeconds": "Mỗi (giây)",
"timezone": "Múi giờ",
"timezoneServer": "Thời gian máy chủ",
"timezoneHint": "Thời gian Cron được đọc trong vùng này. Không áp dụng cho lịch trình theo khoảng thời gian.",
"container": "Thùng chứa",
"command": "Yêu cầu",
"url": "URL",
"method": "Phương pháp",
"body": "Thân hình",
"channels": "Kênh",
"title": "Tiêu đề",
"message": "Tin nhắn",
"snippet": "Đoạn trích",
"seconds": "Giây",
"conditionLeftPlaceholder": "Giá trị cần kiểm tra",
"conditionRightPlaceholder": "So sánh với",
"variableName": "Tên biến",
"variableValue": "Giá trị",
"elevated": "Chạy với quyền sudo",
"onError": "Nếu điều này thất bại",
"allowPrivateNetwork": "Cho phép địa chỉ mạng cục bộ",
"allowPrivateNetworkHint": "Cần thiết cho dịch vụ tự lưu trữ trên mạng LAN của bạn. Mặc định là tắt để ngăn chặn các yêu cầu đến các địa chỉ nội bộ."
},
"onError": {
"stop": "Dừng cuộc chạy",
"continue": "Tiếp tục"
}
}
}
},
"nav": {
"automations": "Tự động hóa"
},
"onboarding": {
"feature_automations": "Tự động hóa",
"feature_automations_desc": "Thực hiện các bước tự động khi có sự kiện xảy ra và nhận thông báo."
}
}
@@ -0,0 +1,149 @@
{
"newUi": {
"sidebar": {
"automations": {
"title": "自动化",
"tabAutomations": "自动化",
"tabRuns": "运行记录",
"tabChannels": "频道",
"createAutomation": "新自动化",
"backToAutomations": "返回自动化页面",
"createTitle": "新自动化",
"editTitle": "编辑自动化",
"empty": "尚未设置任何自动化流程。请创建一个自动化流程,使其能够根据指标、日程安排或事件做出反应。",
"emptyRuns": "暂无运行记录。",
"emptyChannels": "暂无频道。添加一个频道以便向某个地方发送通知。",
"noChannelsHint": "尚未设置任何频道。请在“频道”标签页中添加频道。",
"addChannel": "添加频道",
"testChannel": "测试",
"channelTestSent": "已发送测试通知",
"channelTestFailed": "测试通知失败",
"channelDeleted": "频道已删除",
"deleteChannelConfirm": "删除此频道?使用该频道的自动化功能将停止通知。",
"nameLabel": "名称",
"namePlaceholder": "例如,当 /data 目录填满时进行清理。",
"nameRequired": "名称为必填项",
"descriptionLabel": "描述",
"descriptionPlaceholder": "可选描述",
"enabledLabel": "已启用",
"concurrencyLabel": "如果它已经在运行",
"concurrencyHint": "如果在上次运行结束前再次触发此问题,该怎么办?",
"concurrency": {
"skip": "跳过新一轮",
"queue": "稍等会再运行",
"allow": "同时运行这两个程序"
},
"save": "保存",
"created": "自动化已创建",
"updated": "自动化已保存",
"deleted": "自动化已删除",
"deleteConfirm": "删除此自动化流程?其运行历史记录也会被删除。",
"runNow": "立即运行",
"testRun": "测试运行",
"testRunHint": "执行所有步骤,但不触及 Termix 之外的任何内容。",
"runStarted": "运行已启动",
"runFinished": "运行结束: {{status}}",
"trigger": "触发器",
"steps": "步骤",
"addStep": "添加步骤",
"removeStep": "移除步骤",
"moveUp": "向上",
"moveDown": "向下",
"noSteps": "暂无步骤。请添加步骤说明应该发生什么。",
"webhookTokenTitle": "Webhook URL",
"webhookTokenDescription": "此信息仅显示一次。请立即保存,之后将无法调取。",
"copy": "复制",
"copied": "已复制",
"viewJson": "JSON",
"viewBuilder": "构建器",
"viewGraph": "图形",
"lastRun": "上次运行",
"never": "绝不",
"duration": "{{seconds}}s",
"stepOutput": "输出",
"stepError": "错误",
"dryRunBadge": "测试运行",
"hostSelector": {
"trigger": "触发主机",
"host": "特定主机",
"fleet": "舰队",
"all": "所有主机"
},
"triggerKinds": {
"metric_threshold": "指标阈值",
"host_status": "主机上线或离线",
"health_check": "健康检查变化",
"schedule": "按计划",
"docker_event": "容器事件",
"internal_event": "Termix 事件",
"webhook": "传入的 webhook"
},
"stepTypes": {
"notify": "发送通知",
"http": "调用 URL",
"run_snippet": "运行一段代码片段",
"run_command": "运行命令",
"docker": "控制容器",
"tunnel": "控制隧道",
"wol": "唤醒主机",
"wait": "等待",
"set_var": "设置变量",
"if": "如果/否则",
"run_automation": "运行另一个自动化程序",
"stop": "停止"
},
"statuses": {
"running": "运行中",
"success": "成功",
"failed": "失败",
"timeout": "超时",
"skipped": "跳过",
"cancelled": "已取消"
},
"fields": {
"host": "主机",
"metric": "指标",
"mount": "挂载点",
"operator": "是",
"value": "值",
"forSeconds": "持续(秒)",
"cooldown": "冷却时间(分钟)",
"cron": "Cron 表达式",
"intervalSeconds": "每隔(秒)",
"timezone": "时区",
"timezoneServer": "服务器时间",
"timezoneHint": "此区域读取 cron 任务的时间。不适用于间隔任务。",
"container": "容器",
"command": "命令",
"url": "URL",
"method": "方法",
"body": "请求体",
"channels": "频道",
"title": "标题",
"message": "消息",
"snippet": "片段",
"seconds": "秒",
"conditionLeftPlaceholder": "待检查的值",
"conditionRightPlaceholder": "与……比较",
"variableName": "变量名",
"variableValue": "值",
"elevated": "使用 sudo 运行",
"onError": "如果失败",
"allowPrivateNetwork": "允许本地网络地址",
"allowPrivateNetworkHint": "在局域网内运行自托管服务时需要此功能。默认情况下处于关闭状态,以防止向内部地址发送请求。"
},
"onError": {
"stop": "停止运行",
"continue": "继续"
}
}
}
},
"nav": {
"automations": "自动化"
},
"onboarding": {
"feature_automations": "自动化",
"feature_automations_desc": "触发特定事件时自动执行任务,并接收通知。"
}
}
@@ -0,0 +1,149 @@
{
"newUi": {
"sidebar": {
"automations": {
"title": "自動化",
"tabAutomations": "自動化",
"tabRuns": "跑",
"tabChannels": "頻道",
"createAutomation": "新自動化",
"backToAutomations": "返回自動化頁面",
"createTitle": "新自動化",
"editTitle": "編輯自動化",
"empty": "尚未設定任何自動化流程。請建立一個自動化流程,使其能夠根據指標、日程安排或事件做出反應。",
"emptyRuns": "目前還沒有人運行。",
"emptyChannels": "暫無頻道。新增一個頻道以便向某個地方發送通知。",
"noChannelsHint": "尚未設定任何頻道。請在「頻道」標籤中新增頻道。",
"addChannel": "新增頻道",
"testChannel": "測試",
"channelTestSent": "已發送測試通知",
"channelTestFailed": "測試通知失敗",
"channelDeleted": "頻道已刪除",
"deleteChannelConfirm": "刪除此頻道?使用該頻道的自動化功能將停止通知。",
"nameLabel": "姓名",
"namePlaceholder": "例如,當 /data 目錄填滿時進行清理。",
"nameRequired": "姓名(必填)",
"descriptionLabel": "描述",
"descriptionPlaceholder": "選用描述",
"enabledLabel": "已啟用",
"concurrencyLabel": "如果它已經在運行",
"concurrencyHint": "如果在上次運行結束前再次觸發此問題,該怎麼辦?",
"concurrency": {
"skip": "跳過新一輪",
"queue": "等待並追趕",
"allow": "同時運行這兩個程序"
},
"save": "節省",
"created": "自動化創建",
"updated": "自動化保存",
"deleted": "自動化刪除",
"deleteConfirm": "刪除此自動化流程?其運行歷史記錄也會被刪除。",
"runNow": "立即運行",
"testRun": "測試運行",
"testRunHint": "執行所有步驟,但不觸及 Termix 以外的任何內容。",
"runStarted": "運行已啟動",
"runFinished": "運轉結束: {{status}}",
"trigger": "扳機",
"steps": "步驟",
"addStep": "新增步驟",
"removeStep": "移除步驟",
"moveUp": "向上",
"moveDown": "向下",
"noSteps": "暫無步驟。請加入步驟說明應該發生什麼。",
"webhookTokenTitle": "Webhook URL",
"webhookTokenDescription": "此資訊僅顯示一次。請立即儲存,之後將無法調取。",
"copy": "複製",
"copied": "已複製",
"viewJson": "JSON",
"viewBuilder": "建造者",
"viewGraph": "圖形",
"lastRun": "最後一次運行",
"never": "絕不",
"duration": "{{seconds}}s",
"stepOutput": "輸出",
"stepError": "錯誤",
"dryRunBadge": "測試運行",
"hostSelector": {
"trigger": "觸發主機",
"host": "特定主機",
"fleet": "艦隊",
"all": "所有主持人"
},
"triggerKinds": {
"metric_threshold": "指標閾值",
"host_status": "主機升溫或降溫",
"health_check": "健康檢查變化",
"schedule": "按計劃",
"docker_event": "容器事件",
"internal_event": "Termix 活動",
"webhook": "傳入的 webhook"
},
"stepTypes": {
"notify": "發送通知",
"http": "呼叫 URL",
"run_snippet": "運行一段程式碼片段",
"run_command": "運行命令",
"docker": "控制容器",
"tunnel": "控制隧道",
"wol": "喚醒主機",
"wait": "等待",
"set_var": "設定變數",
"if": "如果/否則",
"run_automation": "執行另一個自動化流程",
"stop": "停止"
},
"statuses": {
"running": "跑步",
"success": "成功",
"failed": "失敗的",
"timeout": "超時",
"skipped": "跳過",
"cancelled": "取消"
},
"fields": {
"host": "主持人",
"metric": "指標",
"mount": "登山點",
"operator": "是",
"value": "價值",
"forSeconds": "持續(秒)",
"cooldown": "冷卻時間(分鐘)",
"cron": "複製表達式",
"intervalSeconds": "每隔(秒)",
"timezone": "時區",
"timezoneServer": "伺服器時間",
"timezoneHint": "此區域讀取 cron 任務的時間。不適用於間隔任務。",
"container": "容器",
"command": "命令",
"url": "URL",
"method": "方法",
"body": "身體",
"channels": "頻道",
"title": "標題",
"message": "訊息",
"snippet": "片段",
"seconds": "秒",
"conditionLeftPlaceholder": "待檢查的數值",
"conditionRightPlaceholder": "與…比較",
"variableName": "變數名",
"variableValue": "價值",
"elevated": "使用 sudo 運行",
"onError": "如果失敗",
"allowPrivateNetwork": "允許本地網路位址",
"allowPrivateNetworkHint": "在區域網路內執行自託管服務時需要此功能。預設為關閉狀態,以防止向內部位址發送請求。"
},
"onError": {
"stop": "停止奔跑",
"continue": "繼續"
}
}
}
},
"nav": {
"automations": "自動化"
},
"onboarding": {
"feature_automations": "自動化",
"feature_automations_desc": "當發生某些事情時,自動運行步驟並接收通知。"
}
}
+8
View File
@@ -27,6 +27,14 @@
"ui:surface"
],
"contributes": {
"tabs": [
{
"id": "automations",
"titleKey": "nav.automations",
"icon": "Workflow",
"openFrom": ["rail"]
}
],
"permissions": [
{
"name": "view",
@@ -1,6 +1,6 @@
import { getErrorMessage } from "@/lib/error-message.js";
import { useCallback, useEffect, useState } from "react";
import { useTranslation } from "react-i18next";
import { useTranslation } from "@termix/plugin-sdk/frontend";
import { toast } from "sonner";
import {
ArrowLeft,
@@ -35,7 +35,8 @@ import {
import { NotificationChannelDialog } from "@/sidebar/NotificationChannelDialog";
import { getSnippets } from "@/api/snippets-api";
import { getSSHHosts } from "@/api/ssh-host-management-api";
import { listFleets } from "@/api/fleets-api";
import { invokeAction } from "@termix/plugin-sdk/frontend";
import {
AutomationEditor,
emptyDraft,
@@ -70,6 +71,14 @@ function timeAgo(iso: string | null): string {
return `${Math.floor(hr / 24)}d ago`;
}
/** Fleets from the fleets plugin, or none when it is not running. */
async function listFleets(): Promise<{ id: number; name: string }[]> {
const result = await invokeAction("fleets.list");
return Array.isArray(result)
? (result as { id: number; name: string }[])
: [];
}
export function AutomationsPanel({
active = true,
onEditingChange,
@@ -1,6 +1,6 @@
import { getErrorMessage } from "@/lib/error-message.js";
import { useState } from "react";
import { useTranslation } from "react-i18next";
import { useTranslation } from "@termix/plugin-sdk/frontend";
import { Plus } from "lucide-react";
import { Button } from "@/components/button";
import { Input } from "@/components/input";
@@ -1,4 +1,4 @@
import { useTranslation } from "react-i18next";
import { useTranslation } from "@termix/plugin-sdk/frontend";
import { Label } from "@/components/label";
import {
Select,
@@ -1,4 +1,4 @@
import { useTranslation } from "react-i18next";
import { useTranslation } from "@termix/plugin-sdk/frontend";
import { ChevronDown, ChevronUp, Trash2 } from "lucide-react";
import { Button } from "@/components/button";
import { Input } from "@/components/input";
@@ -1,4 +1,4 @@
import { useTranslation } from "react-i18next";
import { useTranslation } from "@termix/plugin-sdk/frontend";
import { Input } from "@/components/input";
import { Label } from "@/components/label";
import {
@@ -1,36 +0,0 @@
/**
* Frontend half of the automations plugin.
*
* AutomationsPanel is a left-sidebar railView panel (opened from the rail,
* not a Tab), the same shape as FleetsPanel/HostsPanel/AiPanel. None of those
* go through registerRailItem/registerTabComponent either -- per
* src/ui/shell/pluginLoader.ts's own comment, a rail-view panel like this is
* rendered directly by AppShell.tsx rather than registered at runtime, the
* same way ai's AiPanel is. AutomationsPanel is reached today through a
* direct relative import in AppShell.tsx
* (../../plugins/automations/frontend/AutomationsPanel) and in
* src/ui/shell/tabUtils.tsx (for its promotable/dockable tab surface), not
* through register() below.
*
* register()/unregister() still follow the same shape every other plugin's
* frontend entry does, so this is ready the moment a real frontend plugin
* loader exists -- see plugins/ssh-terminal/frontend/index.mjs and
* src/ui/tests/sidebar/plugin-extension-seam.test.tsx, which says outright
* "there is no plugin loader yet".
*/
export const id = "automations";
export const railViewId = "automations";
export async function register({ registerRailItem, icons }) {
registerRailItem?.({
id: railViewId,
icon: icons.Workflow,
labelKey: "nav.automations",
separatorAfter: true,
});
}
export async function unregister({ unregisterRailItem }) {
unregisterRailItem?.(railViewId);
}
@@ -0,0 +1,51 @@
import { Workflow } from "lucide-react";
import type {
PanelProps,
TabProps,
TermixApp,
} from "@termix/plugin-sdk/frontend";
import { AutomationsPanel } from "./AutomationsPanel";
import { listAutomations } from "./automations-api";
const VIEW_ID = "automations";
function Panel({ active, setEditing }: PanelProps) {
return (
<div className="flex-1 min-h-0 overflow-y-auto">
<AutomationsPanel active={active} onEditingChange={setEditing} />
</div>
);
}
function AutomationsTab({ isVisible }: TabProps) {
return <AutomationsPanel active={isVisible} />;
}
export function activate(app: TermixApp): void {
app.registerRailItem({
id: VIEW_ID,
icon: Workflow,
titleKey: "nav.automations",
promotable: true,
after: "macros",
order: 30,
});
app.registerPanel(VIEW_ID, Panel);
app.registerTab(VIEW_ID, AutomationsTab, {
icon: Workflow,
titleKey: "nav.automations",
singleton: true,
hostless: true,
panelFrame: true,
});
// The assistant's @-mentions list automations through this.
app.registerAction("automations.list", () => listAutomations());
app.registerSlotContribution("onboarding.features", {
actionId: "automations.feature",
titleKey: "onboarding.feature_automations",
descriptionKey: "onboarding.feature_automations_desc",
icon: Workflow,
});
}
@@ -0,0 +1,53 @@
import { afterEach, describe, expect, it } from "vitest";
import {
renderWithApp,
type RenderedPluginApp,
} from "@termix/plugin-sdk/testing";
import type { PluginManifest } from "@termix/plugin-sdk/manifest";
import * as plugin from "../../src/frontend/index";
import manifestJson from "../../manifest.json";
import locales from "../../locales/en.json";
const manifest = manifestJson as unknown as PluginManifest;
const declared = (views?: Array<{ id: string }>) =>
(views ?? []).map((view) => view.id).sort();
let rendered: RenderedPluginApp | null = null;
afterEach(async () => {
await rendered?.deactivate();
rendered = null;
});
describe(`${manifest.id} activate`, () => {
it("activates and registers only views its manifest declares", async () => {
rendered = await renderWithApp(plugin, { manifest, locales });
const contributes = manifest.contributes as unknown as Record<
string,
Array<{ id: string }> | undefined
>;
const tabs = declared(contributes.tabs);
// A rail panel may reuse one of the plugin's tab ids.
const panels = [...declared(contributes.panels), ...tabs];
const cards = declared(contributes.dashboardCards);
for (const id of rendered.registered.tabs()) expect(tabs).toContain(id);
for (const id of rendered.registered.panels()) expect(panels).toContain(id);
for (const id of rendered.registered.dashboardCards()) {
expect(cards).toContain(id);
}
});
it("removes everything it registered on deactivate", async () => {
const app = await renderWithApp(plugin, { manifest, locales });
await app.deactivate();
expect(app.registered.tabs()).toEqual([]);
expect(app.registered.panels()).toEqual([]);
expect(app.registered.railItems()).toEqual([]);
expect(app.registered.hostActions()).toEqual([]);
expect(app.registered.hostEditorSections()).toEqual([]);
expect(app.registered.dashboardCards()).toEqual([]);
expect(app.registered.settingsComponents()).toEqual([]);
expect(app.registered.actions()).toEqual([]);
});
});